feat: add mobile css
This commit is contained in:
@@ -3,6 +3,8 @@ import { Column } from './column';
|
||||
import { LabelledValue } from './labelled-value';
|
||||
import jsPDF from 'jspdf';
|
||||
import { MARGINS } from '../constants';
|
||||
import { IContext } from './context';
|
||||
import { AbstractElement } from './abstract-element';
|
||||
|
||||
export class LabelledValues extends Row {
|
||||
public labelledValues: { label: string; value: number }[];
|
||||
@@ -13,9 +15,10 @@ export class LabelledValues extends Row {
|
||||
y: number,
|
||||
labelledValues: { label: string; value: number }[],
|
||||
nbrOfCol?: number,
|
||||
multiline = false
|
||||
multiline = false,
|
||||
context: Partial<IContext> = AbstractElement.DEFAULT_CONTEXT
|
||||
) {
|
||||
super(x, y, []);
|
||||
super(x, y, [], undefined, undefined, undefined, context);
|
||||
this.labelledValues = labelledValues;
|
||||
this.nbrOfCol = nbrOfCol ?? 3;
|
||||
if (this.nbrOfCol > 3) {
|
||||
@@ -35,7 +38,9 @@ export class LabelledValues extends Row {
|
||||
rest > 2 ? nbrPerCol + 1 : nbrPerCol,
|
||||
];
|
||||
for (let i = 0; i < this.nbrOfCol; i++) {
|
||||
this.elements[i] = new Column(0, 0, []);
|
||||
this.contextElements[i] = new Column(0, 0, [], {
|
||||
name: `${this.context.name}-column`,
|
||||
});
|
||||
}
|
||||
for (let i = 0; i < labelledValues.length; i++) {
|
||||
if (i < nbrPerCols[0]) {
|
||||
@@ -45,7 +50,7 @@ export class LabelledValues extends Row {
|
||||
} else {
|
||||
currentIndex = 2;
|
||||
}
|
||||
(<Column>this.elements[currentIndex]).elements.push(
|
||||
(<Column>this.contextElements[currentIndex]).contextElements.push(
|
||||
new LabelledValue(
|
||||
labelledValues[i].label,
|
||||
labelledValues[i].value,
|
||||
@@ -55,7 +60,7 @@ export class LabelledValues extends Row {
|
||||
);
|
||||
}
|
||||
} else {
|
||||
this.elements.push(
|
||||
this.contextElements.push(
|
||||
new Column(
|
||||
0,
|
||||
0,
|
||||
@@ -67,7 +72,10 @@ export class LabelledValues extends Row {
|
||||
widthPercent,
|
||||
multiline
|
||||
)
|
||||
)
|
||||
),
|
||||
{
|
||||
name: `${this.context.name}-column`,
|
||||
}
|
||||
)
|
||||
);
|
||||
}
|
||||
@@ -77,8 +85,8 @@ export class LabelledValues extends Row {
|
||||
public prepareRender(doc: jsPDF, maxWidth?: number): jsPDF {
|
||||
const pageWidth = doc.internal.pageSize.width;
|
||||
const rowWidth = pageWidth - this.x - MARGINS.right;
|
||||
for (const column of this.elements) {
|
||||
for (const labelledValue of (<Column>column).elements) {
|
||||
for (const column of this.pdfElements) {
|
||||
for (const labelledValue of (<Column>column).pdfElements) {
|
||||
labelledValue.maxWidth = rowWidth / this.nbrOfCol;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user