Browse Source
Merge pull request #1023 from tommedema/master Fixes #989
implemented removeEmptyTextNodes boolean, fixes #989
pull/1045/head
Artur Arseniev
8 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with
19 additions and
3 deletions
-
src/editor/config/config.js
-
src/editor/index.js
-
src/parser/model/ParserHtml.js
-
src/selector_manager/index.js
|
|
|
@ -96,6 +96,9 @@ module.exports = { |
|
|
|
// Ending tag for variable inside scripts in Components
|
|
|
|
tagVarEnd: ' ]}', |
|
|
|
|
|
|
|
// Remove empty text nodes when parsed, unless they contain a space
|
|
|
|
removeEmptyTextNodes: true, |
|
|
|
|
|
|
|
// Return JS of components inside HTML from 'editor.getHtml()'
|
|
|
|
jsInHtml: true, |
|
|
|
|
|
|
|
|
|
|
|
@ -83,6 +83,7 @@ |
|
|
|
* @param {Object} [config.domComponents={}] Components configuration, see the relative documentation |
|
|
|
* @param {Object} [config.panels={}] Panels configuration, see the relative documentation |
|
|
|
* @param {Object} [config.showDevices=true] If true render a select of available devices inside style manager panel |
|
|
|
* @param {Boolean} [config.removeEmptyTextNodes=true] If true, removes empty text nodes when parsed, unless they contain a space |
|
|
|
* @param {string} [config.defaultCommand='select-comp'] Command to execute when no other command is running |
|
|
|
* @param {Array} [config.plugins=[]] Array of plugins to execute on start |
|
|
|
* @param {Object} [config.pluginsOpts={}] Custom options for plugins |
|
|
|
|
|
|
|
@ -57,6 +57,7 @@ module.exports = config => { |
|
|
|
* @return {Array<Object>} |
|
|
|
*/ |
|
|
|
parseNode(el) { |
|
|
|
const config = (c.em && c.em.get('Config')) || {}; |
|
|
|
const result = []; |
|
|
|
const nodes = el.childNodes; |
|
|
|
|
|
|
|
@ -152,9 +153,11 @@ module.exports = config => { |
|
|
|
} |
|
|
|
|
|
|
|
// Throw away empty nodes (keep spaces)
|
|
|
|
const content = node.nodeValue; |
|
|
|
if (content != ' ' && !content.trim()) { |
|
|
|
continue; |
|
|
|
if (config.removeEmptyTextNodes !== false) { |
|
|
|
const content = node.nodeValue; |
|
|
|
if (content != ' ' && !content.trim()) { |
|
|
|
continue; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@ -73,6 +73,15 @@ module.exports = config => { |
|
|
|
* @private |
|
|
|
*/ |
|
|
|
name: 'SelectorManager', |
|
|
|
|
|
|
|
/** |
|
|
|
* Get configuration object |
|
|
|
* @return {Object} |
|
|
|
* @private |
|
|
|
*/ |
|
|
|
getConfig() { |
|
|
|
return c; |
|
|
|
}, |
|
|
|
|
|
|
|
getConfig() { |
|
|
|
return c; |
|
|
|
|