From ff67ee1da380d8308e85fa4b0386ea6947ec7ff1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philipp=20Ku=CC=88hn?= Date: Fri, 22 Oct 2021 09:04:09 +0200 Subject: [PATCH] =?UTF-8?q?fix:=20fix=20a=20bug=20where=20paste=20rules=20?= =?UTF-8?q?doesn=E2=80=99t=20worked=20at=20the=20start=20of=20the=20docume?= =?UTF-8?q?nt,=20see=20#1225?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/core/src/PasteRule.ts | 3 ++- packages/core/src/utilities/isNumber.ts | 3 +++ 2 files changed, 5 insertions(+), 1 deletion(-) create mode 100644 packages/core/src/utilities/isNumber.ts diff --git a/packages/core/src/PasteRule.ts b/packages/core/src/PasteRule.ts index 7d4e9c96..3a03ce7c 100644 --- a/packages/core/src/PasteRule.ts +++ b/packages/core/src/PasteRule.ts @@ -3,6 +3,7 @@ import { Editor } from './Editor' import CommandManager from './CommandManager' import createChainableState from './helpers/createChainableState' import isRegExp from './utilities/isRegExp' +import isNumber from './utilities/isNumber' import { Range, ExtendedRegExpMatchArray, @@ -177,7 +178,7 @@ export function pasteRulesPlugin(props: { editor: Editor, rules: PasteRule[] }): const from = before.content.findDiffStart(doc.content) const to = before.content.findDiffEnd(doc.content) - if (!from || !to || from === to.b) { + if (!isNumber(from) || !to || from === to.b) { return } diff --git a/packages/core/src/utilities/isNumber.ts b/packages/core/src/utilities/isNumber.ts new file mode 100644 index 00000000..952c2feb --- /dev/null +++ b/packages/core/src/utilities/isNumber.ts @@ -0,0 +1,3 @@ +export default function isNumber(value: any): value is number { + return typeof value === 'number' +}