Browse Source

Fix `getModelToStyle` in StyleManager

pull/663/head
Artur Arseniev 8 years ago
parent
commit
58da6b128e
  1. 2
      package.json
  2. 18
      src/style_manager/index.js

2
package.json

@ -1,7 +1,7 @@
{
"name": "grapesjs",
"description": "Free and Open Source Web Builder Framework",
"version": "0.12.53",
"version": "0.12.54",
"author": "Artur Arseniev",
"license": "BSD-3-Clause",
"homepage": "http://grapesjs.com",

18
src/style_manager/index.js

@ -268,22 +268,18 @@ module.exports = () => {
if (em) {
const config = em.getConfig();
const cssC = em.get('CssComposer');
const avoidInline = config.avoidInlineStyle;
const state = !config.devicePreviewMode ? model.get('state') : '';
const valid = classes.getStyleable();
const hasClasses = valid.length;
const opts = { state };
// If true the model will be always a rule
if (avoidInline) {
const rule = cssC.getIdRule(id, opts);
return rule ? rule : cssC.setIdRule(id, {}, opts);
} else if (classes && classes.length) {
if (hasClasses) {
const deviceW = em.getCurrentMedia();
const valid = classes.getStyleable();
const CssRule = cssC.get(valid, state, deviceW);
if (CssRule && valid.length) {
return CssRule;
}
if (CssRule) return CssRule;
} else if (config.avoidInlineStyle) {
const rule = cssC.getIdRule(id, opts);
return rule ? rule : cssC.setIdRule(id, {}, opts);
}
}

Loading…
Cancel
Save