diff --git a/package.json b/package.json index 095422c..9901352 100644 --- a/package.json +++ b/package.json @@ -14,17 +14,17 @@ "vite": "^6.4" }, "dependencies": { - "@tiptap/core": "^2.3.0", - "@tiptap/extension-highlight": "^2.3.0", - "@tiptap/extension-image": "^2.3.0", - "@tiptap/extension-link": "^2.3.0", - "@tiptap/extension-subscript": "^2.3.0", - "@tiptap/extension-superscript": "^2.3.0", - "@tiptap/extension-text-align": "^2.3.0", - "@tiptap/extension-typography": "^2.3.0", - "@tiptap/extension-underline": "^2.3.0", - "@tiptap/pm": "^2.3.0", - "@tiptap/starter-kit": "^2.3.0", + "@tiptap/core": "^3.10.7", + "@tiptap/extension-highlight": "^3.10.7", + "@tiptap/extension-image": "^3.10.7", + "@tiptap/extension-link": "^3.10.7", + "@tiptap/extension-subscript": "^3.10.7", + "@tiptap/extension-superscript": "^3.10.7", + "@tiptap/extension-text-align": "^3.10.7", + "@tiptap/extension-typography": "^3.10.7", + "@tiptap/extension-underline": "^3.10.7", + "@tiptap/pm": "^3.10.7", + "@tiptap/starter-kit": "^3.10.7", "tailwindcss": "^4.1.17" } } diff --git a/resources/js/editor/TipTap.js b/resources/js/editor/TipTap.js index 4e89a8f..90dd57d 100644 --- a/resources/js/editor/TipTap.js +++ b/resources/js/editor/TipTap.js @@ -1,6 +1,7 @@ import Link from "@tiptap/extension-link"; import {Editor} from "@tiptap/core"; import StarterKit from "@tiptap/starter-kit"; +import Underline from "@tiptap/extension-underline"; import Highlight from "@tiptap/extension-highlight"; import TextAlign from "@tiptap/extension-text-align"; import Typography from "@tiptap/extension-typography"; @@ -49,12 +50,16 @@ document.addEventListener('alpine:init', () => { editor = new Editor({ element: this.$refs.element, extensions: [ - StarterKit, + StarterKit.configure({ + link: false, + underline: false, + }), Highlight, CustomLink.configure({ rel: 'noopener noreferrer', openOnClick: 'whenNotEditable', }), + Underline, TextAlign.configure({ types: ['heading', 'paragraph', 'small', 'extraSmall'], }), @@ -65,6 +70,11 @@ document.addEventListener('alpine:init', () => { ExtraSmall, Box ], + editorProps: { + attributes: { + class: 'tiptap content', + }, + }, content: content, onCreate({/* editor */}) { _this.updatedAt = Date.now() @@ -141,6 +151,9 @@ document.addEventListener('alpine:init', () => { unsetAllMarks() { editor.chain().focus().unsetAllMarks().run() }, + clearNodes() { + editor.chain().focus().clearNodes().run() + }, clearNotes() { editor.chain().focus().clearNodes().run() },