exceljs
Version:
Excel Workbook Manager - Read and Write xlsx and csv Files.
50 lines (39 loc) • 999 B
JavaScript
const CompositeXform = require('../../composite-xform');
const ColorXform = require('../../style/color-xform');
const CfvoXform = require('./cfvo-xform');
class DatabarXform extends CompositeXform {
constructor() {
super();
this.map = {
cfvo: (this.cfvoXform = new CfvoXform()),
color: (this.colorXform = new ColorXform()),
};
}
get tag() {
return 'dataBar';
}
render(xmlStream, model) {
xmlStream.openNode(this.tag);
model.cfvo.forEach(cfvo => {
this.cfvoXform.render(xmlStream, cfvo);
});
this.colorXform.render(xmlStream, model.color);
xmlStream.closeNode();
}
createNewModel() {
return {
cfvo: [],
};
}
onParserClose(name, parser) {
switch (name) {
case 'cfvo':
this.model.cfvo.push(parser.model);
break;
case 'color':
this.model.color = parser.model;
break;
}
}
}
module.exports = DatabarXform;