add basic text style mark

This commit is contained in:
Philipp Kühn 2020-11-06 14:46:59 +01:00
parent bdb90403eb
commit d6930a6ba6
5 changed files with 108 additions and 0 deletions

View File

@ -0,0 +1,47 @@
<template>
<div v-if="editor">
<editor-content :editor="editor" />
</div>
</template>
<script>
import { Editor } from '@tiptap/core'
import { EditorContent } from '@tiptap/vue'
import Document from '@tiptap/extension-document'
import Paragraph from '@tiptap/extension-paragraph'
import Text from '@tiptap/extension-text'
import Heading from '@tiptap/extension-heading'
import TextStyle from '@tiptap/extension-text-style'
export default {
components: {
EditorContent,
},
data() {
return {
editor: null,
}
},
mounted() {
this.editor = new Editor({
extensions: [
Document(),
Paragraph(),
Text(),
Heading(),
TextStyle(),
],
content: `
<h2>Hello</h2>
<p>This is text.</p>
`,
})
},
beforeDestroy() {
this.editor.destroy()
},
}
</script>

View File

@ -0,0 +1,16 @@
# Text Style
## Installation
```bash
# With npm
npm install @tiptap/extension-text-style
# Or: With Yarn
yarn add @tiptap/extension-text-style
```
## Source code
[packages/extension-text-style/](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-text-style/)
## Usage
<demo name="Marks/TextStyle" />

View File

@ -114,6 +114,9 @@
link: /api/marks/link
- title: Strike
link: /api/marks/strike
- title: Text Style
link: /api/marks/text-style
draft: true
- title: Underline
link: /api/marks/underline
- title: Extensions

View File

@ -0,0 +1,25 @@
import { createMark } from '@tiptap/core'
const TextStyle = createMark({
name: 'textStyle',
parseHTML() {
return [
{
tag: 'span',
},
]
},
renderHTML({ attributes }) {
return ['span', attributes, 0]
},
})
export default TextStyle
declare module '@tiptap/core/src/Editor' {
interface AllExtensions {
TextStyle: typeof TextStyle,
}
}

View File

@ -0,0 +1,17 @@
{
"name": "@tiptap/extension-text-style",
"version": "1.0.0",
"source": "index.ts",
"main": "dist/tiptap-extension-text-style.js",
"umd:main": "dist/tiptap-extension-text-style.umd.js",
"module": "dist/tiptap-extension-text-style.mjs",
"unpkg": "dist/tiptap-extension-text-style.js",
"jsdelivr": "dist/tiptap-extension-text-style.js",
"files": [
"src",
"dist"
],
"peerDependencies": {
"@tiptap/core": "2.x"
}
}