From 1d1eab8139461fabc58ed379b36ec35d8514dc3a Mon Sep 17 00:00:00 2001 From: doodlewind <7312949+doodlewind@users.noreply.github.com> Date: Mon, 10 Feb 2025 07:24:26 +0000 Subject: [PATCH] fix(editor): workaround empty text in insertText (#10049) `sentry-5a32bef4f2724b5f8e6f31791cb20feb` --- blocksuite/framework/inline/src/services/text.ts | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/blocksuite/framework/inline/src/services/text.ts b/blocksuite/framework/inline/src/services/text.ts index 657d2754f..63ff2cdeb 100644 --- a/blocksuite/framework/inline/src/services/text.ts +++ b/blocksuite/framework/inline/src/services/text.ts @@ -1,5 +1,3 @@ -import { BlockSuiteError, ErrorCode } from '@blocksuite/global/exceptions'; - import type { InlineEditor } from '../inline-editor.js'; import type { DeltaInsert, InlineRange } from '../types.js'; import type { BaseTextAttributes } from '../utils/base-attributes.js'; @@ -70,19 +68,14 @@ export class InlineTextService { ): void => { if (this.editor.isReadonly) return; + if (!text || !text.length) return; + if (this.editor.attributeService.marks) { attributes = { ...attributes, ...this.editor.attributeService.marks }; } const normalizedAttributes = this.editor.attributeService.normalizeAttributes(attributes); - if (!text || !text.length) { - throw new BlockSuiteError( - ErrorCode.InlineEditorError, - 'text must not be empty' - ); - } - this.transact(() => { this.yText.delete(inlineRange.index, inlineRange.length); this.yText.insert(inlineRange.index, text, normalizedAttributes);