Browse Source

Add getComponentRules to CssComposer

pull/3487/head
Artur Arseniev 5 years ago
parent
commit
95e828096e
  1. 17
      src/css_composer/index.js

17
src/css_composer/index.js

@ -27,7 +27,7 @@
* @module CssComposer
*/
import { isArray } from 'underscore';
import { isArray, isUndefined } from 'underscore';
import defaults from './config/config';
import CssRule from './model/CssRule';
import CssRules from './model/CssRules';
@ -457,6 +457,21 @@ export default () => {
return selector && this.get(selector, state, media);
},
getComponentRules(cmp, opts = {}) {
let { state, mediaText, current } = opts;
if (current) {
state = em.get('state') || '';
mediaText = em.getCurrentMedia();
}
const id = cmp.getId();
const rules = this.getAll().filter(r => {
if (!isUndefined(state) && r.get('state') !== state) return;
if (!isUndefined(mediaText) && r.get('mediaText') !== mediaText) return;
return r.getSelectorsString() === `#${id}`;
});
return rules;
},
/**
* Render the block of CSS rules
* @return {HTMLElement}

Loading…
Cancel
Save