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

This commit is contained in:
Hans Pagel
2020-09-10 11:53:08 +02:00
5 changed files with 71 additions and 3 deletions

View File

@@ -19,7 +19,7 @@ You dont have to use it, but we prepared a `@tiptap/vue-starter-kit` which in
| [BulletList](/api/extensions/bullet-list) | | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-bullet-list/) | | [BulletList](/api/extensions/bullet-list) | | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-bullet-list/) |
| [Code](/api/extensions/code) | Yes | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-code/) | | [Code](/api/extensions/code) | Yes | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-code/) |
| [Document](/api/extensions/document) | Yes | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-document/) | | [Document](/api/extensions/document) | Yes | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-document/) |
| [HardBreak](/api/extensions/hard-break) | | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-hard-break/) | | [HardBreak](/api/extensions/hard-break) | Yes | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-hard-break/) |
| [Heading](/api/extensions/heading) | Yes | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-heading/) | | [Heading](/api/extensions/heading) | Yes | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-heading/) |
| [History](/api/extensions/history) | Yes | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-history/) | | [History](/api/extensions/history) | Yes | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-history/) |
| [HorizontalRule](/api/extensions/horizontal-rule) | | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-horizontal-rule/) | | [HorizontalRule](/api/extensions/horizontal-rule) | | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-horizontal-rule/) |
@@ -27,9 +27,9 @@ You dont have to use it, but we prepared a `@tiptap/vue-starter-kit` which in
| [Link](/api/extensions/link) | | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-link/) | | [Link](/api/extensions/link) | | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-link/) |
| [OrderedList](/api/extensions/ordered-list) | | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-ordered-list/) | | [OrderedList](/api/extensions/ordered-list) | | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-ordered-list/) |
| [Paragraph](/api/extensions/paragraph) | Yes | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-paragraph/) | | [Paragraph](/api/extensions/paragraph) | Yes | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-paragraph/) |
| [Strike](/api/extensions/strike) | | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-strike/) | | [Strike](/api/extensions/strike) | Yes | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-strike/) |
| [Text](/api/extensions/text) | Yes | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-text/) | | [Text](/api/extensions/text) | Yes | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-text/) |
| [Underline](/api/extensions/underline) | | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-underline/) | | [Underline](/api/extensions/underline) | Yes | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-underline/) |
<!-- | [CodeBlock](/api/extensions/code-block) | Yes | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-code-block/) --> <!-- | [CodeBlock](/api/extensions/code-block) | Yes | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packages/extension-code-block/) -->
<!-- | [CodeBlockHighlight](/api/extensions/code-block-highlight) | | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packagescode-block-highlight/extension-/) --> <!-- | [CodeBlockHighlight](/api/extensions/code-block-highlight) | | [GitHub](https://github.com/ueberdosis/tiptap-next/blob/main/packagescode-block-highlight/extension-/) -->

View File

@@ -0,0 +1,38 @@
import { Node } from '@tiptap/core'
import { chainCommands, exitCode } from 'prosemirror-commands'
declare module '@tiptap/core/src/Editor' {
interface Editor {
hardBreak(): Editor,
}
}
export default new Node()
.name('hardBreak')
.schema(() => ({
inline: true,
group: 'inline',
selectable: false,
parseDOM: [
{ tag: 'br' },
],
toDOM: () => ['br'],
}))
.commands(({ editor, type }) => ({
hardBreak: next => () => {
const { state, view } = editor
const { dispatch } = view
chainCommands(exitCode, () => {
dispatch(state.tr.replaceSelectionWith(type.create()).scrollIntoView())
return true
})(state, dispatch, view)
next()
},
}))
.keys(({ editor }) => ({
'Mod-Enter': () => editor.hardBreak(),
'Shift-Enter': () => editor.hardBreak(),
}))
.create()

View File

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

View File

@@ -7,6 +7,9 @@ import Italic from '@tiptap/extension-italic'
import Code from '@tiptap/extension-code' import Code from '@tiptap/extension-code'
import CodeBlock from '@tiptap/extension-codeblock' import CodeBlock from '@tiptap/extension-codeblock'
import Heading from '@tiptap/extension-heading' import Heading from '@tiptap/extension-heading'
import HardBreak from '@tiptap/extension-hard-break'
import Strike from '@tiptap/extension-strike'
import Underline from '@tiptap/extension-underline'
export default function defaultExtensions() { export default function defaultExtensions() {
return [ return [
@@ -19,5 +22,8 @@ export default function defaultExtensions() {
Code(), Code(),
CodeBlock(), CodeBlock(),
Heading(), Heading(),
HardBreak(),
Strike(),
Underline(),
] ]
} }

View File

@@ -9,6 +9,9 @@ import Italic from '@tiptap/extension-italic'
import Code from '@tiptap/extension-code' import Code from '@tiptap/extension-code'
import CodeBlock from '@tiptap/extension-codeblock' import CodeBlock from '@tiptap/extension-codeblock'
import Heading from '@tiptap/extension-heading' import Heading from '@tiptap/extension-heading'
import HardBreak from '@tiptap/extension-hard-break'
import Strike from '@tiptap/extension-strike'
import Underline from '@tiptap/extension-underline'
export function defaultExtensions() { export function defaultExtensions() {
return [ return [
@@ -21,5 +24,8 @@ export function defaultExtensions() {
Code(), Code(),
CodeBlock(), CodeBlock(),
Heading(), Heading(),
HardBreak(),
Strike(),
Underline(),
] ]
} }