From 98580b2149eca32e17404a94ff4ff53bd433a087 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Philipp=20Ku=CC=88hn?= Date: Fri, 23 Oct 2020 23:41:54 +0200 Subject: [PATCH] fix some bugs --- docs/src/demos/Extensions/TextAlign/index.vue | 2 +- packages/core/src/utils/getSchema.ts | 9 ++++++++- packages/extension-text-align/index.ts | 2 +- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/docs/src/demos/Extensions/TextAlign/index.vue b/docs/src/demos/Extensions/TextAlign/index.vue index 2c0b5e77..58af3f46 100644 --- a/docs/src/demos/Extensions/TextAlign/index.vue +++ b/docs/src/demos/Extensions/TextAlign/index.vue @@ -43,7 +43,7 @@ export default { TextAlign(), ], content: ` -

Heading

+

Heading

first paragraph

second paragraph

`, diff --git a/packages/core/src/utils/getSchema.ts b/packages/core/src/utils/getSchema.ts index a892d470..2320d807 100644 --- a/packages/core/src/utils/getSchema.ts +++ b/packages/core/src/utils/getSchema.ts @@ -25,7 +25,14 @@ function injectExtensionAttributes(parseRule: ParseRule, extensionAttributes: Ex return { ...parseRule, getAttrs: node => { - const oldAttributes = parseRule.getAttrs ? parseRule.getAttrs(node) : {} + const oldAttributes = parseRule.getAttrs + ? parseRule.getAttrs(node) + : parseRule.attrs + + if (oldAttributes === false) { + return false + } + const newAttributes = extensionAttributes .filter(item => item.attribute.rendered) .reduce((items, item) => ({ diff --git a/packages/extension-text-align/index.ts b/packages/extension-text-align/index.ts index 40a05e4f..9f44f272 100644 --- a/packages/extension-text-align/index.ts +++ b/packages/extension-text-align/index.ts @@ -22,7 +22,7 @@ const TextAlign = createExtension({ style: `text-align: ${attributes.textAlign}`, }), parseHTML: node => ({ - textAlign: node.style.textAlign, + textAlign: node.style.textAlign || 'left', }), }, },