diff --git a/packages/core/src/utils/getRenderedAttributes.ts b/packages/core/src/utils/getRenderedAttributes.ts index db559c26..e7ffd6ee 100644 --- a/packages/core/src/utils/getRenderedAttributes.ts +++ b/packages/core/src/utils/getRenderedAttributes.ts @@ -3,9 +3,10 @@ import { ExtensionAttribute } from '../types' export default function getRenderedAttributes(node: Node, attributes: ExtensionAttribute[]) { return attributes - .map(attribute => { + .filter(item => item.attribute.rendered) + .map(item => { // TODO: fallback if renderHTML doesn’t exist - return attribute.attribute.renderHTML(node.attrs) + return item.attribute.renderHTML(node.attrs) }) .reduce((accumulator, value) => { // TODO: add support for "class" merge diff --git a/packages/extension-paragraph/index.ts b/packages/extension-paragraph/index.ts index 63c6a87e..efa65eba 100644 --- a/packages/extension-paragraph/index.ts +++ b/packages/extension-paragraph/index.ts @@ -69,6 +69,7 @@ export default createNode({ return { id: { default: '123', + rendered: true, renderHTML: attributes => ({ class: `foo-${attributes.id}`, id: 'foo' }), }, }