[PR #1660] [MERGED] fix(deps): update tiptap to v3.7.0 #1655

Closed
opened 2025-11-01 21:24:46 -05:00 by GiteaMirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/go-vikunja/vikunja/pull/1660
Author: @renovate[bot]
Created: 10/14/2025
Status: Merged
Merged: 10/14/2025
Merged by: @kolaente

Base: mainHead: renovate/tiptap


📝 Commits (1)

  • ffc1f8f fix(deps): update tiptap to v3.7.0

📊 Changes

2 files changed (+257 additions, -257 deletions)

View changed files

📝 frontend/package.json (+14 -14)
📝 frontend/pnpm-lock.yaml (+243 -243)

📄 Description

This PR contains the following updates:

Package Change Age Confidence
@tiptap/core (source) 3.6.7 -> 3.7.0 age confidence
@tiptap/extension-code-block-lowlight (source) 3.6.7 -> 3.7.0 age confidence
@tiptap/extension-hard-break (source) 3.6.7 -> 3.7.0 age confidence
@tiptap/extension-image (source) 3.6.7 -> 3.7.0 age confidence
@tiptap/extension-link (source) 3.6.7 -> 3.7.0 age confidence
@tiptap/extension-list (source) 3.6.7 -> 3.7.0 age confidence
@tiptap/extension-table (source) 3.6.7 -> 3.7.0 age confidence
@tiptap/extension-typography (source) 3.6.7 -> 3.7.0 age confidence
@tiptap/extension-underline (source) 3.6.7 -> 3.7.0 age confidence
@tiptap/extensions (source) 3.6.7 -> 3.7.0 age confidence
@tiptap/pm (source) 3.6.7 -> 3.7.0 age confidence
@tiptap/starter-kit (source) 3.6.7 -> 3.7.0 age confidence
@tiptap/suggestion (source) 3.6.7 -> 3.7.0 age confidence
@tiptap/vue-3 (source) 3.6.7 -> 3.7.0 age confidence

Release Notes

ueberdosis/tiptap (@​tiptap/core)

v3.7.0

Compare Source

Releases

v3.7.0

@​tiptap/core
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.
    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 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).
    new Editor({
      content: '# Hello World',
      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.

Patch Changes
  • The extension manager now provides a new property baseExtensions that contains an unflattened array of extensions
@​tiptap/markdown
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 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).
    new Editor({
      content: '# Hello World',
      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.

Patch Changes
  • Paste Handlers and onPaste plugin now respect shouldAutoLink/validate options
@​tiptap/extensions
Patch Changes
  • 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.


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/go-vikunja/vikunja/pull/1660 **Author:** [@renovate[bot]](https://github.com/apps/renovate) **Created:** 10/14/2025 **Status:** ✅ Merged **Merged:** 10/14/2025 **Merged by:** [@kolaente](https://github.com/kolaente) **Base:** `main` ← **Head:** `renovate/tiptap` --- ### 📝 Commits (1) - [`ffc1f8f`](https://github.com/go-vikunja/vikunja/commit/ffc1f8f80446fd0ede6010351e3be052875b14f1) fix(deps): update tiptap to v3.7.0 ### 📊 Changes **2 files changed** (+257 additions, -257 deletions) <details> <summary>View changed files</summary> 📝 `frontend/package.json` (+14 -14) 📝 `frontend/pnpm-lock.yaml` (+243 -243) </details> ### 📄 Description This PR contains the following updates: | Package | Change | Age | Confidence | |---|---|---|---| | [@tiptap/core](https://tiptap.dev) ([source](https://redirect.github.com/ueberdosis/tiptap/tree/HEAD/packages/core)) | [`3.6.7` -> `3.7.0`](https://renovatebot.com/diffs/npm/@tiptap%2fcore/3.6.7/3.7.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@tiptap%2fcore/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tiptap%2fcore/3.6.7/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@tiptap/extension-code-block-lowlight](https://tiptap.dev) ([source](https://redirect.github.com/ueberdosis/tiptap/tree/HEAD/packages/extension-code-block-lowlight)) | [`3.6.7` -> `3.7.0`](https://renovatebot.com/diffs/npm/@tiptap%2fextension-code-block-lowlight/3.6.7/3.7.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@tiptap%2fextension-code-block-lowlight/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tiptap%2fextension-code-block-lowlight/3.6.7/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@tiptap/extension-hard-break](https://tiptap.dev) ([source](https://redirect.github.com/ueberdosis/tiptap/tree/HEAD/packages/extension-hard-break)) | [`3.6.7` -> `3.7.0`](https://renovatebot.com/diffs/npm/@tiptap%2fextension-hard-break/3.6.7/3.7.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@tiptap%2fextension-hard-break/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tiptap%2fextension-hard-break/3.6.7/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@tiptap/extension-image](https://tiptap.dev) ([source](https://redirect.github.com/ueberdosis/tiptap/tree/HEAD/packages/extension-image)) | [`3.6.7` -> `3.7.0`](https://renovatebot.com/diffs/npm/@tiptap%2fextension-image/3.6.7/3.7.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@tiptap%2fextension-image/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tiptap%2fextension-image/3.6.7/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@tiptap/extension-link](https://tiptap.dev) ([source](https://redirect.github.com/ueberdosis/tiptap/tree/HEAD/packages/extension-link)) | [`3.6.7` -> `3.7.0`](https://renovatebot.com/diffs/npm/@tiptap%2fextension-link/3.6.7/3.7.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@tiptap%2fextension-link/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tiptap%2fextension-link/3.6.7/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@tiptap/extension-list](https://tiptap.dev) ([source](https://redirect.github.com/ueberdosis/tiptap/tree/HEAD/packages/extension-list)) | [`3.6.7` -> `3.7.0`](https://renovatebot.com/diffs/npm/@tiptap%2fextension-list/3.6.7/3.7.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@tiptap%2fextension-list/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tiptap%2fextension-list/3.6.7/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@tiptap/extension-table](https://tiptap.dev) ([source](https://redirect.github.com/ueberdosis/tiptap/tree/HEAD/packages/extension-table)) | [`3.6.7` -> `3.7.0`](https://renovatebot.com/diffs/npm/@tiptap%2fextension-table/3.6.7/3.7.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@tiptap%2fextension-table/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tiptap%2fextension-table/3.6.7/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@tiptap/extension-typography](https://tiptap.dev) ([source](https://redirect.github.com/ueberdosis/tiptap/tree/HEAD/packages/extension-typography)) | [`3.6.7` -> `3.7.0`](https://renovatebot.com/diffs/npm/@tiptap%2fextension-typography/3.6.7/3.7.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@tiptap%2fextension-typography/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tiptap%2fextension-typography/3.6.7/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@tiptap/extension-underline](https://tiptap.dev) ([source](https://redirect.github.com/ueberdosis/tiptap/tree/HEAD/packages/extension-underline)) | [`3.6.7` -> `3.7.0`](https://renovatebot.com/diffs/npm/@tiptap%2fextension-underline/3.6.7/3.7.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@tiptap%2fextension-underline/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tiptap%2fextension-underline/3.6.7/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@tiptap/extensions](https://tiptap.dev) ([source](https://redirect.github.com/ueberdosis/tiptap/tree/HEAD/packages/extension)) | [`3.6.7` -> `3.7.0`](https://renovatebot.com/diffs/npm/@tiptap%2fextensions/3.6.7/3.7.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@tiptap%2fextensions/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tiptap%2fextensions/3.6.7/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@tiptap/pm](https://tiptap.dev) ([source](https://redirect.github.com/ueberdosis/tiptap/tree/HEAD/packages/pm)) | [`3.6.7` -> `3.7.0`](https://renovatebot.com/diffs/npm/@tiptap%2fpm/3.6.7/3.7.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@tiptap%2fpm/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tiptap%2fpm/3.6.7/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@tiptap/starter-kit](https://tiptap.dev) ([source](https://redirect.github.com/ueberdosis/tiptap/tree/HEAD/packages/starter-kit)) | [`3.6.7` -> `3.7.0`](https://renovatebot.com/diffs/npm/@tiptap%2fstarter-kit/3.6.7/3.7.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@tiptap%2fstarter-kit/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tiptap%2fstarter-kit/3.6.7/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@tiptap/suggestion](https://tiptap.dev) ([source](https://redirect.github.com/ueberdosis/tiptap/tree/HEAD/packages/suggestion)) | [`3.6.7` -> `3.7.0`](https://renovatebot.com/diffs/npm/@tiptap%2fsuggestion/3.6.7/3.7.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@tiptap%2fsuggestion/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tiptap%2fsuggestion/3.6.7/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@tiptap/vue-3](https://tiptap.dev) ([source](https://redirect.github.com/ueberdosis/tiptap/tree/HEAD/packages/vue-3)) | [`3.6.7` -> `3.7.0`](https://renovatebot.com/diffs/npm/@tiptap%2fvue-3/3.6.7/3.7.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@tiptap%2fvue-3/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tiptap%2fvue-3/3.6.7/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>ueberdosis/tiptap (@&#8203;tiptap/core)</summary> ### [`v3.7.0`](https://redirect.github.com/ueberdosis/tiptap/releases/tag/v3.7.0) [Compare Source](https://redirect.github.com/ueberdosis/tiptap/compare/v3.6.7...v3.7.0) ### Releases #### v3.7.0 ##### [@&#8203;tiptap/core](https://redirect.github.com/tiptap/core) ##### 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 '@&#8203;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' }) ``` **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 - The extension manager now provides a new property `baseExtensions` that contains an unflattened array of extensions ##### [@&#8203;tiptap/markdown](https://redirect.github.com/tiptap/markdown) ##### 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' }) ``` **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). ##### [@&#8203;tiptap/extension-link](https://redirect.github.com/tiptap/extension-link) ##### Patch Changes - Paste Handlers and onPaste plugin now respect shouldAutoLink/validate options ##### [@&#8203;tiptap/extensions](https://redirect.github.com/tiptap/extensions) ##### Patch Changes - 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. </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about these updates again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/go-vikunja/vikunja). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNDMuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE0My4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=--> --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
GiteaMirror added the pull-request label 2025-11-01 21:24:46 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github-starred/vikunja#1655