@disruptive-learning/cfdi-to-pdf
Version:
Librería para crear un pdf basado en un XML CFDI o Retenciones
128 lines (127 loc) • 3.38 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
class AbstractPdfMakerBuilder {
_primaryColor = '#359136';
_bgGrayColor = '#f8f8f8';
_defaultPageMargins = [20, 30, 20, 30];
setPrimaryColor(color) {
this._primaryColor = color;
}
setBgGrayColor(color) {
this._bgGrayColor = color;
}
defaultStyle() {
return {
font: 'Helvetica',
fontSize: 9,
lineHeight: 1.4,
color: '#000000',
};
}
defaultDictionaryStyles() {
return {
header: {
fontSize: 14,
bold: true,
color: '#000000',
margin: [0, 0, 0, 8],
},
subHeader: {
fontSize: 11,
bold: true,
color: '#000000',
margin: [0, 0, 0, 6],
},
tableSubtitleHeader: {
fontSize: 9,
bold: true,
color: '#000000',
margin: [0, 0, 0, 4],
},
tableHeader: {
fontSize: 8,
bold: true,
color: '#000000',
margin: [0, 4, 0, 4],
},
tableSmall: {
fontSize: 8,
color: '#000000',
},
tableSat: {
fontSize: 7,
color: '#000000',
},
tableSatSub: {
fontSize: 7,
bold: true,
color: '#000000',
},
};
}
layouts() {
const defaultLayout = {
defaultBorder: false,
hLineWidth(i, _node) {
if (i === 1) {
return 1;
}
return 1;
},
hLineColor(_i, _node) {
return '#e0e0e0';
},
vLineWidth(_i, _node) {
return 0;
},
paddingTop(_i) {
return 4;
},
paddingBottom(_i) {
return 4;
},
paddingLeft(_i) {
return 4;
},
paddingRight(_i) {
return 4;
},
};
return {
tableLayout: {
...defaultLayout,
hLineColor: () => this._primaryColor,
},
conceptosLayout: {
...defaultLayout,
hLineWidth(_i, _node) {
return 1;
},
hLineColor: () => this._primaryColor,
paddingBottom(_i) {
return 4;
},
},
stampLayout: {
...defaultLayout,
hLineWidth(_i, _node) {
return 1;
},
hLineColor: () => this._primaryColor,
paddingTop(_i) {
return 4;
},
paddingBottom(_i) {
return 4;
},
paddingLeft(_i) {
return 0;
},
paddingRight(_i) {
return 0;
},
},
};
}
}
exports.default = AbstractPdfMakerBuilder;