From 8dee8fd3c81af8d1eaff52c1b6d9da1b6e2ba612 Mon Sep 17 00:00:00 2001 From: Artur Arseniev Date: Wed, 11 Sep 2019 23:34:52 +0200 Subject: [PATCH] Fix errors in IE11. Closes #2247 --- src/dom_components/model/Component.js | 3 ++- src/dom_components/view/ComponentView.js | 14 ++++++++------ src/domain_abstract/model/Styleable.js | 3 ++- 3 files changed, 12 insertions(+), 8 deletions(-) diff --git a/src/dom_components/model/Component.js b/src/dom_components/model/Component.js index 1bef1863d..a809ee0ab 100644 --- a/src/dom_components/model/Component.js +++ b/src/dom_components/model/Component.js @@ -406,8 +406,9 @@ const Component = Backbone.Model.extend(Styleable).extend( const { opt } = this; if (em && em.getConfig('avoidInlineStyle') && !opt.temporary) { + const style = this.get('style') || {}; prop = isString(prop) ? this.parseStyle(prop) : prop; - prop = { ...prop, ...this.get('style') }; + prop = { ...prop, ...style }; const state = this.get('state'); const cc = em.get('CssComposer'); const propOrig = this.getStyle(); diff --git a/src/dom_components/view/ComponentView.js b/src/dom_components/view/ComponentView.js index 8d9a67c9c..5a417ca7f 100644 --- a/src/dom_components/view/ComponentView.js +++ b/src/dom_components/view/ComponentView.js @@ -276,12 +276,14 @@ export default Backbone.View.extend({ const defaultAttr = { 'data-gjs-type': type || 'default', - ...(draggableComponents && { draggable: true }), - ...(highlightable && { 'data-highlightable': 1 }), - ...(textable && { - contenteditable: 'false', - 'data-gjs-textable': 'true' - }) + ...(draggableComponents ? { draggable: true } : {}), + ...(highlightable ? { 'data-highlightable': 1 } : {}), + ...(textable + ? { + contenteditable: 'false', + 'data-gjs-textable': 'true' + } + : {}) }; // Remove all current attributes diff --git a/src/domain_abstract/model/Styleable.js b/src/domain_abstract/model/Styleable.js index 201598348..7bea455e4 100644 --- a/src/domain_abstract/model/Styleable.js +++ b/src/domain_abstract/model/Styleable.js @@ -22,7 +22,8 @@ export default { * @return {Object} */ getStyle() { - return { ...this.get('style') }; + const style = this.get('style') || {}; + return { ...style }; }, /**