Merge branch 'main' of github.com:ueberdosis/tiptap-next into main

This commit is contained in:
Hans Pagel
2020-11-06 16:25:54 +01:00
13 changed files with 278 additions and 4 deletions

View File

@@ -0,0 +1,5 @@
context('/api/marks/text-style', () => {
before(() => {
cy.visit('/api/marks/text-style')
})
})

View File

@@ -0,0 +1,81 @@
<template>
<div v-if="editor">
<button
@click="editor.chain().focus().fontFamily('Inter').run()"
:class="{ 'is-active': editor.isActive('textStyle', { fontFamily: 'Inter' }) }"
>
Inter
</button>
<button
@click="editor.chain().focus().fontFamily('Comic Sans MS, Comic Sans').run()"
:class="{ 'is-active': editor.isActive('textStyle', { fontFamily: 'Comic Sans MS, Comic Sans' }) }"
>
Comic Sans
</button>
<button
@click="editor.chain().focus().fontFamily('serif').run()"
:class="{ 'is-active': editor.isActive('textStyle', { fontFamily: 'serif' }) }"
>
serif
</button>
<button
@click="editor.chain().focus().fontFamily('monospace').run()"
:class="{ 'is-active': editor.isActive('textStyle', { fontFamily: 'monospace' }) }"
>
monospace
</button>
<button
@click="editor.chain().focus().fontFamily('cursive').run()"
:class="{ 'is-active': editor.isActive('textStyle', { fontFamily: 'cursive' }) }"
>
cursive
</button>
<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 TextStyle from '@tiptap/extension-text-style'
import FontFamily from '@tiptap/extension-font-family'
export default {
components: {
EditorContent,
},
data() {
return {
editor: null,
}
},
mounted() {
this.editor = new Editor({
extensions: [
Document(),
Paragraph(),
Text(),
TextStyle(),
FontFamily(),
],
content: `
<p><span style="font-family: Inter">Inter</span></p>
<p><span style="font-family: Comic Sans MS, Comic Sans">Comic Sans</span></p>
<p><span style="font-family: serif">serif</span></p>
<p><span style="font-family: monospace">monospace</span></p>
<p><span style="font-family: cursive">cursive</span></p>
`,
})
},
beforeDestroy() {
this.editor.destroy()
},
}
</script>

View File

@@ -0,0 +1,26 @@
# FontFamily
This extension enables you to set the font family in the editor.
## Installation
::: warning Use with TextStyle
This extension requires the [`TextStyle`](/api/marks/text-style) mark.
:::
```bash
# with npm
npm install @tiptap/extension-text-style @tiptap/extension-font-family
# with Yarn
yarn add @tiptap/extension-text-style @tiptap/extension-font-family
```
## Settings
| Option | Type | Default | Description |
| ------ | ----- | ------------- | --------------------------------------------------------------------- |
| types | array | ['textStyle'] | A list of marks where the font family attribute should be applied to. |
## Source code
[packages/extension-font-family/](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-font-family/)
## Usage
<demo name="Extensions/FontFamily" highlight="" />

View File

@@ -0,0 +1,17 @@
# Text Style
This mark renders a `<span>` HTML tag and enables you to add a list of styling related attributes, for example font-family, font-size, or font-color. The extension doesnt add any styling attribute by default, but other extensions use it as the foundation, for example [`FontFamily`](/api/extensions/font-family).
## Installation
```bash
# with npm
npm install @tiptap/extension-text-style
# 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

@@ -5,7 +5,7 @@ Type <code>*&nbsp;</code>, <code>-&nbsp;</code> or <code>+&nbsp;</code> at the b
## Installation
::: warning Use with ListItem
This extension requires the [`ListItem`](/api/nodes/list-item) extension.
This extension requires the [`ListItem`](/api/nodes/list-item) node.
:::
```bash

View File

@@ -3,7 +3,7 @@ The ListItem extension adds support for the `<li>` HTML tag. Its used for bul
## Installation
::: warning Use with BulletList and/or OrderedList
This extension requires the [`BulletList`](/api/nodes/bullet-list) or [`OrderedList`](/api/nodes/ordered-list) extension.
This extension requires the [`BulletList`](/api/nodes/bullet-list) or [`OrderedList`](/api/nodes/ordered-list) node.
:::
```bash

View File

@@ -5,7 +5,7 @@ Type <code>1.&nbsp;</code> (or any other number followed by a dot) at the beginn
## Installation
::: warning Use with ListItem
This extension requires the [`ListItem`](/api/nodes/list-item) extension.
This extension requires the [`ListItem`](/api/nodes/list-item) node.
:::
```bash

View File

@@ -5,7 +5,7 @@ This extension doesnt require any JavaScript framework, its based on plain
## Installation
::: warning Use with TaskList
This extension requires the [`TaskList`](/api/nodes/task-list) extension.
This extension requires the [`TaskList`](/api/nodes/task-list) node.
:::
```bash

View File

@@ -112,6 +112,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
@@ -127,6 +130,9 @@
link: /api/extensions/dropcursor
- title: Focus
link: /api/extensions/focus
- title: FontFamily
link: /api/extensions/font-family
draft: true
- title: Gapcursor
link: /api/extensions/gapcursor
- title: History