makeStyleMapper.js 768 B

12345678910111213141516171819202122232425262728293031323334
  1. var zrUtil = require("zrender/lib/core/util");
  2. // TODO Parse shadow style
  3. // TODO Only shallow path support
  4. function _default(properties) {
  5. // Normalize
  6. for (var i = 0; i < properties.length; i++) {
  7. if (!properties[i][1]) {
  8. properties[i][1] = properties[i][0];
  9. }
  10. }
  11. return function (model, excludes, includes) {
  12. var style = {};
  13. for (var i = 0; i < properties.length; i++) {
  14. var propName = properties[i][1];
  15. if (excludes && zrUtil.indexOf(excludes, propName) >= 0 || includes && zrUtil.indexOf(includes, propName) < 0) {
  16. continue;
  17. }
  18. var val = model.getShallow(propName);
  19. if (val != null) {
  20. style[properties[i][0]] = val;
  21. }
  22. }
  23. return style;
  24. };
  25. }
  26. module.exports = _default;