diff --git a/src/core/view/components/rich-text/nodes-parser.js b/src/core/view/components/rich-text/nodes-parser.js index 2e681cc00c30ea9dfee1b3e1cbc00294254d03db..d8aff85fa7e98f1f41c9186c66a408b10454469c 100644 --- a/src/core/view/components/rich-text/nodes-parser.js +++ b/src/core/view/components/rich-text/nodes-parser.js @@ -55,7 +55,7 @@ const CHARS = { 'nbsp': ' ', 'quot': '"', 'apos': "'" -} +} function decodeEntities (htmlString) { return htmlString.replace(/&(([a-zA-Z]+)|(#x{0,1}[\da-zA-Z]+));/gi, function (match, stage) { @@ -95,9 +95,11 @@ export default function parseNodes (nodes, parentNode) { if (isPlainObject(attrs)) { const tagAttrs = TAGS[tagName] || [] Object.keys(attrs).forEach(function (name) { - const value = attrs[name] + let value = attrs[name] switch (name) { case 'class': + /* eslint-disable no-fallthrough */ + Array.isArray(value) && (value = value.join(' ')) case 'style': elem.setAttribute(name, value) break