From 5c7e70ba826ae92c78f11f94bdddca86311d01d2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philipp=20Ku=CC=88hn?= Date: Thu, 10 Sep 2020 11:22:41 +0200 Subject: [PATCH 1/2] add underline extension --- packages/extension-underline/index.ts | 35 +++++++++++++++++++++++ packages/extension-underline/package.json | 17 +++++++++++ 2 files changed, 52 insertions(+) create mode 100644 packages/extension-underline/index.ts create mode 100644 packages/extension-underline/package.json diff --git a/packages/extension-underline/index.ts b/packages/extension-underline/index.ts new file mode 100644 index 00000000..5943c2b6 --- /dev/null +++ b/packages/extension-underline/index.ts @@ -0,0 +1,35 @@ +import { Mark } from '@tiptap/core' + +declare module '@tiptap/core/src/Editor' { + interface Editor { + underline(): Editor, + } +} + +export const inputRegex = /(?:^|\s)((?:~)((?:[^~]+))(?:~))$/gm +export const pasteRegex = /(?:^|\s)((?:~)((?:[^~]+))(?:~))/gm + +export default new Mark() + .name('underline') + .schema(() => ({ + parseDOM: [ + { + tag: 'u', + }, + { + style: 'text-decoration', + getAttrs: node => node === 'underline' ? {} : false, + }, + ], + toDOM: () => ['u', 0], + })) + .commands(({ editor, name }) => ({ + underline: next => () => { + editor.toggleMark(name) + next() + }, + })) + .keys(({ editor }) => ({ + 'Mod-u': () => editor.underline() + })) + .create() diff --git a/packages/extension-underline/package.json b/packages/extension-underline/package.json new file mode 100644 index 00000000..b39a9aa2 --- /dev/null +++ b/packages/extension-underline/package.json @@ -0,0 +1,17 @@ +{ + "name": "@tiptap/extension-underline", + "version": "1.0.0", + "source": "index.ts", + "main": "dist/tiptap-extension-underline.js", + "umd:main": "dist/tiptap-extension-underline.umd.js", + "module": "dist/tiptap-extension-underline.mjs", + "unpkg": "dist/tiptap-extension-underline.js", + "jsdelivr": "dist/tiptap-extension-underline.js", + "files": [ + "src", + "dist" + ], + "peerDependencies": { + "@tiptap/core": "2.x" + } +} From 5e4b747ff1858a763f902f3aab6fa758eb7d8b2f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philipp=20Ku=CC=88hn?= Date: Thu, 10 Sep 2020 11:22:58 +0200 Subject: [PATCH 2/2] remove unused code --- packages/extension-underline/index.ts | 3 --- 1 file changed, 3 deletions(-) diff --git a/packages/extension-underline/index.ts b/packages/extension-underline/index.ts index 5943c2b6..abb950fa 100644 --- a/packages/extension-underline/index.ts +++ b/packages/extension-underline/index.ts @@ -6,9 +6,6 @@ declare module '@tiptap/core/src/Editor' { } } -export const inputRegex = /(?:^|\s)((?:~)((?:[^~]+))(?:~))$/gm -export const pasteRegex = /(?:^|\s)((?:~)((?:[^~]+))(?:~))/gm - export default new Mark() .name('underline') .schema(() => ({