@stamhoofd/excel-writer 2.80.1 → 2.82.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/XlsxColumnFilterer.d.ts.map +1 -1
- package/dist/src/XlsxColumnFilterer.js +37 -2
- package/dist/src/XlsxColumnFilterer.js.map +1 -1
- package/dist/src/XlsxTransformer.d.ts.map +1 -1
- package/dist/src/XlsxTransformer.js +46 -0
- package/dist/src/XlsxTransformer.js.map +1 -1
- package/dist/src/interfaces.d.ts +8 -0
- package/dist/src/interfaces.d.ts.map +1 -1
- package/dist/src/interfaces.js.map +1 -1
- package/dist/src/stream-writer/XlsxSheetWriter.d.ts +1 -0
- package/dist/src/stream-writer/XlsxSheetWriter.d.ts.map +1 -1
- package/dist/src/stream-writer/XlsxSheetWriter.js +15 -1
- package/dist/src/stream-writer/XlsxSheetWriter.js.map +1 -1
- package/esm/dist/src/XlsxColumnFilterer.d.ts.map +1 -1
- package/esm/dist/src/XlsxColumnFilterer.js +37 -2
- package/esm/dist/src/XlsxColumnFilterer.js.map +1 -1
- package/esm/dist/src/XlsxTransformer.d.ts.map +1 -1
- package/esm/dist/src/XlsxTransformer.js +46 -0
- package/esm/dist/src/XlsxTransformer.js.map +1 -1
- package/esm/dist/src/interfaces.d.ts +8 -0
- package/esm/dist/src/interfaces.d.ts.map +1 -1
- package/esm/dist/src/interfaces.js.map +1 -1
- package/esm/dist/src/stream-writer/XlsxSheetWriter.d.ts +1 -0
- package/esm/dist/src/stream-writer/XlsxSheetWriter.d.ts.map +1 -1
- package/esm/dist/src/stream-writer/XlsxSheetWriter.js +15 -1
- package/esm/dist/src/stream-writer/XlsxSheetWriter.js.map +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XlsxColumnFilterer.d.ts","sourceRoot":"","sources":["../../src/XlsxColumnFilterer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiC,4BAA4B,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAGrI;;;GAGG;AACH,qBAAa,kBAAkB,CAAC,CAAC;IAC7B,SAAS,EAAE,oBAAoB,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC;gBAElC,SAAS,EAAE,oBAAoB,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE;IAIzD,aAAa,CAAC,MAAM,EAAE,kBAAkB,GAAG,4BAA4B,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"XlsxColumnFilterer.d.ts","sourceRoot":"","sources":["../../src/XlsxColumnFilterer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiC,4BAA4B,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAGrI;;;GAGG;AACH,qBAAa,kBAAkB,CAAC,CAAC;IAC7B,SAAS,EAAE,oBAAoB,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC;gBAElC,SAAS,EAAE,oBAAoB,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE;IAIzD,aAAa,CAAC,MAAM,EAAE,kBAAkB,GAAG,4BAA4B,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE;CA2HxF"}
|
|
@@ -30,13 +30,14 @@ class XlsxColumnFilterer {
|
|
|
30
30
|
}
|
|
31
31
|
// Validate sheetFilter
|
|
32
32
|
const concreteColumns = [];
|
|
33
|
-
for (const { id, name } of sheetFilter.columns) {
|
|
33
|
+
for (const { id, name, category } of sheetFilter.columns) {
|
|
34
34
|
let found = false;
|
|
35
35
|
for (const column of sheet.columns) {
|
|
36
36
|
if ('id' in column) {
|
|
37
37
|
if (column.id === id) {
|
|
38
38
|
const c = { ...column };
|
|
39
39
|
c.name = name || c.name;
|
|
40
|
+
c.category = (category !== undefined ? category : c.category) ?? undefined;
|
|
40
41
|
concreteColumns.push(c);
|
|
41
42
|
found = true;
|
|
42
43
|
break;
|
|
@@ -45,13 +46,47 @@ class XlsxColumnFilterer {
|
|
|
45
46
|
else {
|
|
46
47
|
const matched = column.match(id);
|
|
47
48
|
if (matched !== undefined) {
|
|
49
|
+
if (category !== undefined) {
|
|
50
|
+
for (const m of matched) {
|
|
51
|
+
m.category = category ?? undefined;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
48
54
|
if (name) {
|
|
49
55
|
for (const m of matched) {
|
|
50
56
|
if (matched.length === 1) {
|
|
51
57
|
m.name = name || m.name;
|
|
52
58
|
}
|
|
53
59
|
else {
|
|
54
|
-
m.name
|
|
60
|
+
if (!m.name) {
|
|
61
|
+
m.name = name || m.name;
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
if (m.name === name) {
|
|
65
|
+
// ignore
|
|
66
|
+
continue;
|
|
67
|
+
}
|
|
68
|
+
if (m.category === null || m.category === undefined) {
|
|
69
|
+
if (name === m.defaultCategory) {
|
|
70
|
+
// No real added value of repating this if we can't add it cleanly
|
|
71
|
+
continue;
|
|
72
|
+
}
|
|
73
|
+
// Never create a category if it was not set
|
|
74
|
+
m.name = name + ' ' + m.name;
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
if (m.category.trim().length > 0) {
|
|
78
|
+
if (name === m.defaultCategory) {
|
|
79
|
+
// No real added value of repating this if we can't add it cleanly
|
|
80
|
+
continue;
|
|
81
|
+
}
|
|
82
|
+
m.category = m.category.trim() + (' → ' + name);
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
m.category = name;
|
|
86
|
+
}
|
|
87
|
+
m.name = m.name ?? '';
|
|
88
|
+
}
|
|
89
|
+
}
|
|
55
90
|
}
|
|
56
91
|
}
|
|
57
92
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XlsxColumnFilterer.js","sourceRoot":"","sources":["../../src/XlsxColumnFilterer.ts"],"names":[],"mappings":";;;AACA,6DAAwD;AAExD;;;GAGG;AACH,MAAa,kBAAkB;IAC3B,SAAS,CAAqC;IAE9C,YAAY,SAA6C;QACrD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC/B,CAAC;IAED,aAAa,CAAC,MAA0B;QACpC,uBAAuB;QACvB,KAAK,MAAM,EAAE,EAAE,EAAE,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YACjC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;gBACjD,MAAM,IAAI,2BAAW,CAAC;oBAClB,IAAI,EAAE,eAAe;oBACrB,OAAO,EAAE,gBAAgB,GAAG,EAAE;oBAC9B,KAAK,EAAE,oBAAoB,GAAG,EAAE,GAAG,sCAAsC;oBACzE,UAAU,EAAE,GAAG;iBAClB,CAAC,CAAC;YACP,CAAC;QACL,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YAC5C,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC,CAAC;YAE/D,IAAI,CAAC,WAAW,EAAE,CAAC;gBACf,OAAO,EAAE,CAAC;YACd,CAAC;YAED,uBAAuB;YACvB,MAAM,eAAe,GAAuC,EAAE,CAAC;YAC/D,KAAK,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"XlsxColumnFilterer.js","sourceRoot":"","sources":["../../src/XlsxColumnFilterer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XlsxTransformer.d.ts","sourceRoot":"","sources":["../../src/XlsxTransformer.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"XlsxTransformer.d.ts","sourceRoot":"","sources":["../../src/XlsxTransformer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiC,4BAA4B,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEpI;;;GAGG;AACH,qBAAa,eAAe,CAAC,CAAC;IAC1B,MAAM,EAAE,4BAA4B,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC;IACnD,MAAM,EAAE,iBAAiB,CAAC;IAC1B,QAAQ,EAAE,GAAG,CAAC,oBAAoB,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,CAAa;gBAExD,MAAM,EAAE,4BAA4B,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,iBAAiB;IAKnF,IAAI;IAmFJ,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE;CAc1B"}
|
|
@@ -28,6 +28,52 @@ class XlsxTransformer {
|
|
|
28
28
|
if (!sheetSymbol) {
|
|
29
29
|
throw new Error('Sheet not found');
|
|
30
30
|
}
|
|
31
|
+
const hasColumns = sheet.columns.find(col => !!col.category);
|
|
32
|
+
if (hasColumns) {
|
|
33
|
+
const categories = [];
|
|
34
|
+
for (const col of sheet.columns) {
|
|
35
|
+
const lastCategory = categories[categories.length - 1];
|
|
36
|
+
if (lastCategory && lastCategory.name === (col.category ?? '')) {
|
|
37
|
+
lastCategory.columns.push(col);
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
// Create new category
|
|
41
|
+
categories.push({
|
|
42
|
+
name: col.category ?? '',
|
|
43
|
+
columns: [col],
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
// Write in bold
|
|
48
|
+
await this.writer.addRow(sheetSymbol, categories.flatMap((col) => {
|
|
49
|
+
return col.columns.map((c, index) => {
|
|
50
|
+
if (index === 0) {
|
|
51
|
+
return {
|
|
52
|
+
value: col.name,
|
|
53
|
+
width: c.width,
|
|
54
|
+
style: {
|
|
55
|
+
font: {
|
|
56
|
+
bold: true,
|
|
57
|
+
},
|
|
58
|
+
},
|
|
59
|
+
merge: {
|
|
60
|
+
width: col.columns.length,
|
|
61
|
+
height: 1,
|
|
62
|
+
},
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
return {
|
|
66
|
+
value: null,
|
|
67
|
+
width: c.width,
|
|
68
|
+
style: {
|
|
69
|
+
font: {
|
|
70
|
+
bold: true,
|
|
71
|
+
},
|
|
72
|
+
},
|
|
73
|
+
};
|
|
74
|
+
});
|
|
75
|
+
}));
|
|
76
|
+
}
|
|
31
77
|
await this.writer.addRow(sheetSymbol, sheet.columns.map((col) => {
|
|
32
78
|
return {
|
|
33
79
|
value: col.name,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XlsxTransformer.js","sourceRoot":"","sources":["../../src/XlsxTransformer.ts"],"names":[],"mappings":";;;AAEA;;;GAGG;AACH,MAAa,eAAe;IACxB,MAAM,CAA6C;IACnD,MAAM,CAAoB;IAC1B,QAAQ,GAAkD,IAAI,GAAG,EAAE,CAAC;IAEpE,YAAY,MAAkD,EAAE,MAAyB;QACrF,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,IAAI;QACN,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAC9B,IAAI,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAC3C,IAAI,CAAC,WAAW,EAAE,CAAC;gBACf,WAAW,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACrD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;YAC1C,CAAC;QACL,CAAC;QACD,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAE1B,uBAAuB;QACvB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAC9B,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAC7C,IAAI,CAAC,WAAW,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;YACvC,CAAC;YAED,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gBAC5D,OAAO;oBACH,KAAK,EAAE,GAAG,CAAC,IAAI;oBACf,KAAK,EAAE,GAAG,CAAC,KAAK;oBAChB,KAAK,EAAE;wBACH,IAAI,EAAE;4BACF,IAAI,EAAE,IAAI;yBACb;qBACJ;iBACJ,CAAC;YACN,CAAC,CAAC,CAAC,CAAC;QACR,CAAC;IACL,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,IAAS;QACnB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAC9B,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAC7C,IAAI,CAAC,WAAW,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;YACvC,CAAC;YAED,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;gBACtB,KAAK,MAAM,eAAe,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC7E,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;gBACnG,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;CACJ;
|
|
1
|
+
{"version":3,"file":"XlsxTransformer.js","sourceRoot":"","sources":["../../src/XlsxTransformer.ts"],"names":[],"mappings":"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"}
|
package/dist/src/interfaces.d.ts
CHANGED
|
@@ -2,6 +2,8 @@ export type XlsxTransformerConcreteColumn<T> = {
|
|
|
2
2
|
id: string;
|
|
3
3
|
name: string;
|
|
4
4
|
width: number;
|
|
5
|
+
category?: string;
|
|
6
|
+
defaultCategory?: string;
|
|
5
7
|
getValue(object: T): CellValue;
|
|
6
8
|
};
|
|
7
9
|
export type XlsxTransformerColumn<T> = XlsxTransformerConcreteColumn<T> | {
|
|
@@ -23,6 +25,11 @@ export interface CellValue {
|
|
|
23
25
|
value: string | number | Date | null;
|
|
24
26
|
width?: number;
|
|
25
27
|
style?: CellStyleRequest;
|
|
28
|
+
merge?: MergeCells;
|
|
29
|
+
}
|
|
30
|
+
export interface MergeCells {
|
|
31
|
+
width: number;
|
|
32
|
+
height: number;
|
|
26
33
|
}
|
|
27
34
|
/**
|
|
28
35
|
* This should be implemented in a specific environment (e.g. nodejs, browser)
|
|
@@ -45,6 +52,7 @@ export type XlsxWorkbookFilter = {
|
|
|
45
52
|
columns: {
|
|
46
53
|
id: string;
|
|
47
54
|
name?: string;
|
|
55
|
+
category?: string | null;
|
|
48
56
|
}[];
|
|
49
57
|
}[];
|
|
50
58
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":"AACA,MAAM,MAAM,6BAA6B,CAAC,CAAC,IAAI;IAC3C,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,SAAS,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,qBAAqB,CAAC,CAAC,IAAI,6BAA6B,CAAC,CAAC,CAAC,GAAG;IACtE,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,CAAC,6BAA6B,CAAC,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC,CAAC;CAC3E,CAAC;AAEF,MAAM,WAAW,oBAAoB,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC;IAC1C,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;IAC7B,OAAO,EAAE,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC;CACvC;AAED,MAAM,WAAW,4BAA4B,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC;IAClD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;IAC7B,OAAO,EAAE,6BAA6B,CAAC,CAAC,CAAC,EAAE,CAAC;CAC/C;AAED,MAAM,WAAW,SAAS;IACtB,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":";;;AAmEA,IAAY,uBAoGX;AApGD,WAAY,uBAAuB;IAC/B,qEAAQ,CAAA;IACR,yEAAU,CAAA;IACV,yFAAkB,CAAA;IAClB,mHAA+B,CAAA;IAC/B,mIAAuC,CAAA;IACvC,iGAAsB,CAAA;IACtB,2FAAmB,CAAA;IACnB,iHAA8B,CAAA;IAC9B,2GAA2B,CAAA;IAE3B,iFAAc,CAAA;IACd,kGAAuB,CAAA;IACvB,kFAAe,CAAA;IACf,8EAAa,CAAA;IACb,gFAAc,CAAA;IAEd;;;OAGG;IACH,gFAAc,CAAA;IAEd;;;OAGG;IACH,gFAAc,CAAA;IAEd;;;OAGG;IACH,4FAAoB,CAAA;IAEpB;;;OAGG;IACH,wFAAkB,CAAA;IAElB;;;OAGG;IACH,8EAAa,CAAA;IAEb;;;OAGG;IACH,4FAAoB,CAAA;IAEpB;;;OAGG;IACH,sEAAS,CAAA;IAET;;;OAGG;IACH,oFAAgB,CAAA;IAEhB;;;OAGG;IACH,wFAAkB,CAAA;IAElB;;;OAGG;IACH,kGAAuB,CAAA;IAEvB;;;OAGG;IACH,4GAA4B,CAAA;IAE5B;;;OAGG;IACH,gHAA8B,CAAA;IAE9B;;;OAGG;IACH,oFAAgB,CAAA;IAEhB;;;OAGG;IACH,sEAAS,CAAA;AACb,CAAC,EApGW,uBAAuB,uCAAvB,uBAAuB,QAoGlC;AA+CD,IAAY,QAQX;AARD,WAAY,QAAQ;IAChB,yBAAa,CAAA;IACb,sBAAU,CAAA;IACV,uBAAW,CAAA;IACX,sCAA0B,CAAA;IAC1B,wBAAY,CAAA;IACZ,8BAAkB,CAAA;IAClB,2BAAe,CAAA;AACnB,CAAC,EARW,QAAQ,wBAAR,QAAQ,QAQnB"}
|
|
@@ -17,6 +17,7 @@ export declare class XlsxSheetWriter extends XlsxFileWriter {
|
|
|
17
17
|
timezone: string;
|
|
18
18
|
columns: ColumnInfo[];
|
|
19
19
|
rowCount: number;
|
|
20
|
+
mergeCells: string[];
|
|
20
21
|
writeHeader(columnCount?: number): Promise<void>;
|
|
21
22
|
writeFooter(): Promise<void>;
|
|
22
23
|
writeRow(cells: CellValue[]): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XlsxSheetWriter.d.ts","sourceRoot":"","sources":["../../../src/stream-writer/XlsxSheetWriter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,SAAS,EAAE,MAAM,eAAe,CAAC;AAEpD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AA2BtD,cAAM,UAAU;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,aAAa,CAAC,KAAK,EAAE,MAAM;CAK9B;AAED,qBAAa,eAAgB,SAAQ,cAAc;IAC/C;;OAEG;IACH,MAAM,EAAE,gBAAgB,CAAC;IACzB,cAAc,UAAS;IAEvB;;OAEG;IACH,QAAQ,SAAqB;IAE7B,OAAO,EAAE,UAAU,EAAE,CAAM;IAE3B,QAAQ,SAAK;
|
|
1
|
+
{"version":3,"file":"XlsxSheetWriter.d.ts","sourceRoot":"","sources":["../../../src/stream-writer/XlsxSheetWriter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,SAAS,EAAE,MAAM,eAAe,CAAC;AAEpD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AA2BtD,cAAM,UAAU;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,aAAa,CAAC,KAAK,EAAE,MAAM;CAK9B;AAED,qBAAa,eAAgB,SAAQ,cAAc;IAC/C;;OAEG;IACH,MAAM,EAAE,gBAAgB,CAAC;IACzB,cAAc,UAAS;IAEvB;;OAEG;IACH,QAAQ,SAAqB;IAE7B,OAAO,EAAE,UAAU,EAAE,CAAM;IAE3B,QAAQ,SAAK;IAEb,UAAU,EAAE,MAAM,EAAE,CAAM;IAEpB,WAAW,CAAC,WAAW,SAAI;IAkB3B,WAAW;IAkBX,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE;IAkC3B,aAAa,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAoD/E,KAAK;CAId"}
|
|
@@ -45,6 +45,7 @@ class XlsxSheetWriter extends XlsxFileWriter_1.XlsxFileWriter {
|
|
|
45
45
|
timezone = 'Europe/Brussels';
|
|
46
46
|
columns = [];
|
|
47
47
|
rowCount = 0;
|
|
48
|
+
mergeCells = [];
|
|
48
49
|
async writeHeader(columnCount = 0) {
|
|
49
50
|
await this.write('<?xml version="1.0" encoding="UTF-8"?>\n');
|
|
50
51
|
await this.write(`<worksheet xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main">`);
|
|
@@ -63,6 +64,13 @@ class XlsxSheetWriter extends XlsxFileWriter_1.XlsxFileWriter {
|
|
|
63
64
|
await this.writeHeader(0);
|
|
64
65
|
}
|
|
65
66
|
await this.write('</sheetData>');
|
|
67
|
+
if (this.mergeCells.length > 0) {
|
|
68
|
+
await this.write('<mergeCells count="' + this.mergeCells.length + '">');
|
|
69
|
+
for (const merge of this.mergeCells) {
|
|
70
|
+
await this.write('<mergeCell ref="' + (0, escapeXml_1.escapeXml)(merge) + '" />');
|
|
71
|
+
}
|
|
72
|
+
await this.write('</mergeCells>');
|
|
73
|
+
}
|
|
66
74
|
await this.write('</worksheet>');
|
|
67
75
|
}
|
|
68
76
|
async writeRow(cells) {
|
|
@@ -82,6 +90,12 @@ class XlsxSheetWriter extends XlsxFileWriter_1.XlsxFileWriter {
|
|
|
82
90
|
let str = `<row r="${this.rowCount}">`;
|
|
83
91
|
for (const [index, cell] of cells.entries()) {
|
|
84
92
|
str += await this.getCellString(cell, { row: this.rowCount, column: index + 1 });
|
|
93
|
+
if (cell.merge && (cell.merge.width > 1 || cell.merge.height > 1)) {
|
|
94
|
+
const start = `${numberToAlpha(index + 1).toUpperCase()}${this.rowCount}`;
|
|
95
|
+
const end = `${numberToAlpha(index + cell.merge.width).toUpperCase()}${this.rowCount + cell.merge.height - 1}`;
|
|
96
|
+
// append at the end of the file
|
|
97
|
+
this.mergeCells.push(`${start}:${end}`);
|
|
98
|
+
}
|
|
85
99
|
}
|
|
86
100
|
str += '</row>';
|
|
87
101
|
await this.write(str);
|
|
@@ -89,6 +103,7 @@ class XlsxSheetWriter extends XlsxFileWriter_1.XlsxFileWriter {
|
|
|
89
103
|
async getCellString(cell, { row, column }) {
|
|
90
104
|
let type = interfaces_1.CellType.InlineString;
|
|
91
105
|
let str = '';
|
|
106
|
+
const r = `${numberToAlpha(column).toUpperCase()}${row}`;
|
|
92
107
|
switch (typeof cell.value) {
|
|
93
108
|
case 'boolean':
|
|
94
109
|
type = interfaces_1.CellType.Boolean;
|
|
@@ -125,7 +140,6 @@ class XlsxSheetWriter extends XlsxFileWriter_1.XlsxFileWriter {
|
|
|
125
140
|
break;
|
|
126
141
|
}
|
|
127
142
|
const styleId = (await this.styles.requestCellStyleId(cell.style ?? {})).toString();
|
|
128
|
-
const r = `${numberToAlpha(column).toUpperCase()}${row}`;
|
|
129
143
|
if (type === interfaces_1.CellType.InlineString) {
|
|
130
144
|
return `<c r="${(0, escapeXml_1.escapeXml)(r)}" s="${(0, escapeXml_1.escapeXml)(styleId)}" t="${(0, escapeXml_1.escapeXml)(type)}"><is><t>${(0, escapeXml_1.escapeXml)(str)}</t></is></c>`;
|
|
131
145
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XlsxSheetWriter.js","sourceRoot":"","sources":["../../../src/stream-writer/XlsxSheetWriter.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"XlsxSheetWriter.js","sourceRoot":"","sources":["../../../src/stream-writer/XlsxSheetWriter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XlsxColumnFilterer.d.ts","sourceRoot":"","sources":["../../../src/XlsxColumnFilterer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiC,4BAA4B,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAGrI;;;GAGG;AACH,qBAAa,kBAAkB,CAAC,CAAC;IAC7B,SAAS,EAAE,oBAAoB,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC;gBAElC,SAAS,EAAE,oBAAoB,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE;IAIzD,aAAa,CAAC,MAAM,EAAE,kBAAkB,GAAG,4BAA4B,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"XlsxColumnFilterer.d.ts","sourceRoot":"","sources":["../../../src/XlsxColumnFilterer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiC,4BAA4B,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAGrI;;;GAGG;AACH,qBAAa,kBAAkB,CAAC,CAAC;IAC7B,SAAS,EAAE,oBAAoB,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC;gBAElC,SAAS,EAAE,oBAAoB,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE;IAIzD,aAAa,CAAC,MAAM,EAAE,kBAAkB,GAAG,4BAA4B,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE;CA2HxF"}
|
|
@@ -27,13 +27,14 @@ export class XlsxColumnFilterer {
|
|
|
27
27
|
}
|
|
28
28
|
// Validate sheetFilter
|
|
29
29
|
const concreteColumns = [];
|
|
30
|
-
for (const { id, name } of sheetFilter.columns) {
|
|
30
|
+
for (const { id, name, category } of sheetFilter.columns) {
|
|
31
31
|
let found = false;
|
|
32
32
|
for (const column of sheet.columns) {
|
|
33
33
|
if ('id' in column) {
|
|
34
34
|
if (column.id === id) {
|
|
35
35
|
const c = { ...column };
|
|
36
36
|
c.name = name || c.name;
|
|
37
|
+
c.category = (category !== undefined ? category : c.category) ?? undefined;
|
|
37
38
|
concreteColumns.push(c);
|
|
38
39
|
found = true;
|
|
39
40
|
break;
|
|
@@ -42,13 +43,47 @@ export class XlsxColumnFilterer {
|
|
|
42
43
|
else {
|
|
43
44
|
const matched = column.match(id);
|
|
44
45
|
if (matched !== undefined) {
|
|
46
|
+
if (category !== undefined) {
|
|
47
|
+
for (const m of matched) {
|
|
48
|
+
m.category = category ?? undefined;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
45
51
|
if (name) {
|
|
46
52
|
for (const m of matched) {
|
|
47
53
|
if (matched.length === 1) {
|
|
48
54
|
m.name = name || m.name;
|
|
49
55
|
}
|
|
50
56
|
else {
|
|
51
|
-
m.name
|
|
57
|
+
if (!m.name) {
|
|
58
|
+
m.name = name || m.name;
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
if (m.name === name) {
|
|
62
|
+
// ignore
|
|
63
|
+
continue;
|
|
64
|
+
}
|
|
65
|
+
if (m.category === null || m.category === undefined) {
|
|
66
|
+
if (name === m.defaultCategory) {
|
|
67
|
+
// No real added value of repating this if we can't add it cleanly
|
|
68
|
+
continue;
|
|
69
|
+
}
|
|
70
|
+
// Never create a category if it was not set
|
|
71
|
+
m.name = name + ' ' + m.name;
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
if (m.category.trim().length > 0) {
|
|
75
|
+
if (name === m.defaultCategory) {
|
|
76
|
+
// No real added value of repating this if we can't add it cleanly
|
|
77
|
+
continue;
|
|
78
|
+
}
|
|
79
|
+
m.category = m.category.trim() + (' → ' + name);
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
m.category = name;
|
|
83
|
+
}
|
|
84
|
+
m.name = m.name ?? '';
|
|
85
|
+
}
|
|
86
|
+
}
|
|
52
87
|
}
|
|
53
88
|
}
|
|
54
89
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XlsxColumnFilterer.js","sourceRoot":"","sources":["../../../src/XlsxColumnFilterer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAExD;;;GAGG;AACH,MAAM,OAAO,kBAAkB;IAC3B,SAAS,CAAqC;IAE9C,YAAY,SAA6C;QACrD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC/B,CAAC;IAED,aAAa,CAAC,MAA0B;QACpC,uBAAuB;QACvB,KAAK,MAAM,EAAE,EAAE,EAAE,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YACjC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;gBACjD,MAAM,IAAI,WAAW,CAAC;oBAClB,IAAI,EAAE,eAAe;oBACrB,OAAO,EAAE,gBAAgB,GAAG,EAAE;oBAC9B,KAAK,EAAE,oBAAoB,GAAG,EAAE,GAAG,sCAAsC;oBACzE,UAAU,EAAE,GAAG;iBAClB,CAAC,CAAC;YACP,CAAC;QACL,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YAC5C,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC,CAAC;YAE/D,IAAI,CAAC,WAAW,EAAE,CAAC;gBACf,OAAO,EAAE,CAAC;YACd,CAAC;YAED,uBAAuB;YACvB,MAAM,eAAe,GAAuC,EAAE,CAAC;YAC/D,KAAK,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"XlsxColumnFilterer.js","sourceRoot":"","sources":["../../../src/XlsxColumnFilterer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XlsxTransformer.d.ts","sourceRoot":"","sources":["../../../src/XlsxTransformer.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"XlsxTransformer.d.ts","sourceRoot":"","sources":["../../../src/XlsxTransformer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiC,4BAA4B,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEpI;;;GAGG;AACH,qBAAa,eAAe,CAAC,CAAC;IAC1B,MAAM,EAAE,4BAA4B,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC;IACnD,MAAM,EAAE,iBAAiB,CAAC;IAC1B,QAAQ,EAAE,GAAG,CAAC,oBAAoB,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,CAAa;gBAExD,MAAM,EAAE,4BAA4B,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,iBAAiB;IAKnF,IAAI;IAmFJ,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE;CAc1B"}
|
|
@@ -25,6 +25,52 @@ export class XlsxTransformer {
|
|
|
25
25
|
if (!sheetSymbol) {
|
|
26
26
|
throw new Error('Sheet not found');
|
|
27
27
|
}
|
|
28
|
+
const hasColumns = sheet.columns.find(col => !!col.category);
|
|
29
|
+
if (hasColumns) {
|
|
30
|
+
const categories = [];
|
|
31
|
+
for (const col of sheet.columns) {
|
|
32
|
+
const lastCategory = categories[categories.length - 1];
|
|
33
|
+
if (lastCategory && lastCategory.name === (col.category ?? '')) {
|
|
34
|
+
lastCategory.columns.push(col);
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
// Create new category
|
|
38
|
+
categories.push({
|
|
39
|
+
name: col.category ?? '',
|
|
40
|
+
columns: [col],
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
// Write in bold
|
|
45
|
+
await this.writer.addRow(sheetSymbol, categories.flatMap((col) => {
|
|
46
|
+
return col.columns.map((c, index) => {
|
|
47
|
+
if (index === 0) {
|
|
48
|
+
return {
|
|
49
|
+
value: col.name,
|
|
50
|
+
width: c.width,
|
|
51
|
+
style: {
|
|
52
|
+
font: {
|
|
53
|
+
bold: true,
|
|
54
|
+
},
|
|
55
|
+
},
|
|
56
|
+
merge: {
|
|
57
|
+
width: col.columns.length,
|
|
58
|
+
height: 1,
|
|
59
|
+
},
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
return {
|
|
63
|
+
value: null,
|
|
64
|
+
width: c.width,
|
|
65
|
+
style: {
|
|
66
|
+
font: {
|
|
67
|
+
bold: true,
|
|
68
|
+
},
|
|
69
|
+
},
|
|
70
|
+
};
|
|
71
|
+
});
|
|
72
|
+
}));
|
|
73
|
+
}
|
|
28
74
|
await this.writer.addRow(sheetSymbol, sheet.columns.map((col) => {
|
|
29
75
|
return {
|
|
30
76
|
value: col.name,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XlsxTransformer.js","sourceRoot":"","sources":["../../../src/XlsxTransformer.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,OAAO,eAAe;IACxB,MAAM,CAA6C;IACnD,MAAM,CAAoB;IAC1B,QAAQ,GAAkD,IAAI,GAAG,EAAE,CAAC;IAEpE,YAAY,MAAkD,EAAE,MAAyB;QACrF,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,IAAI;QACN,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAC9B,IAAI,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAC3C,IAAI,CAAC,WAAW,EAAE,CAAC;gBACf,WAAW,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACrD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;YAC1C,CAAC;QACL,CAAC;QACD,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAE1B,uBAAuB;QACvB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAC9B,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAC7C,IAAI,CAAC,WAAW,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;YACvC,CAAC;YAED,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gBAC5D,OAAO;oBACH,KAAK,EAAE,GAAG,CAAC,IAAI;oBACf,KAAK,EAAE,GAAG,CAAC,KAAK;oBAChB,KAAK,EAAE;wBACH,IAAI,EAAE;4BACF,IAAI,EAAE,IAAI;yBACb;qBACJ;iBACJ,CAAC;YACN,CAAC,CAAC,CAAC,CAAC;QACR,CAAC;IACL,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,IAAS;QACnB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAC9B,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAC7C,IAAI,CAAC,WAAW,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;YACvC,CAAC;YAED,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;gBACtB,KAAK,MAAM,eAAe,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC7E,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;gBACnG,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;CACJ"}
|
|
1
|
+
{"version":3,"file":"XlsxTransformer.js","sourceRoot":"","sources":["../../../src/XlsxTransformer.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,8 @@ export type XlsxTransformerConcreteColumn<T> = {
|
|
|
2
2
|
id: string;
|
|
3
3
|
name: string;
|
|
4
4
|
width: number;
|
|
5
|
+
category?: string;
|
|
6
|
+
defaultCategory?: string;
|
|
5
7
|
getValue(object: T): CellValue;
|
|
6
8
|
};
|
|
7
9
|
export type XlsxTransformerColumn<T> = XlsxTransformerConcreteColumn<T> | {
|
|
@@ -23,6 +25,11 @@ export interface CellValue {
|
|
|
23
25
|
value: string | number | Date | null;
|
|
24
26
|
width?: number;
|
|
25
27
|
style?: CellStyleRequest;
|
|
28
|
+
merge?: MergeCells;
|
|
29
|
+
}
|
|
30
|
+
export interface MergeCells {
|
|
31
|
+
width: number;
|
|
32
|
+
height: number;
|
|
26
33
|
}
|
|
27
34
|
/**
|
|
28
35
|
* This should be implemented in a specific environment (e.g. nodejs, browser)
|
|
@@ -45,6 +52,7 @@ export type XlsxWorkbookFilter = {
|
|
|
45
52
|
columns: {
|
|
46
53
|
id: string;
|
|
47
54
|
name?: string;
|
|
55
|
+
category?: string | null;
|
|
48
56
|
}[];
|
|
49
57
|
}[];
|
|
50
58
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/interfaces.ts"],"names":[],"mappings":"AACA,MAAM,MAAM,6BAA6B,CAAC,CAAC,IAAI;IAC3C,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,SAAS,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,qBAAqB,CAAC,CAAC,IAAI,6BAA6B,CAAC,CAAC,CAAC,GAAG;IACtE,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,CAAC,6BAA6B,CAAC,CAAC,CAAC,EAAE,GAAG,SAAS,CAAC,CAAC;CAC3E,CAAC;AAEF,MAAM,WAAW,oBAAoB,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC;IAC1C,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;IAC7B,OAAO,EAAE,qBAAqB,CAAC,CAAC,CAAC,EAAE,CAAC;CACvC;AAED,MAAM,WAAW,4BAA4B,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC;IAClD,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;IAC7B,OAAO,EAAE,6BAA6B,CAAC,CAAC,CAAC,EAAE,CAAC;CAC/C;AAED,MAAM,WAAW,SAAS;IACtB,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/interfaces.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../src/interfaces.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../src/interfaces.ts"],"names":[],"mappings":"AAmEA,MAAM,CAAN,IAAY,uBAoGX;AApGD,WAAY,uBAAuB;IAC/B,qEAAQ,CAAA;IACR,yEAAU,CAAA;IACV,yFAAkB,CAAA;IAClB,mHAA+B,CAAA;IAC/B,mIAAuC,CAAA;IACvC,iGAAsB,CAAA;IACtB,2FAAmB,CAAA;IACnB,iHAA8B,CAAA;IAC9B,2GAA2B,CAAA;IAE3B,iFAAc,CAAA;IACd,kGAAuB,CAAA;IACvB,kFAAe,CAAA;IACf,8EAAa,CAAA;IACb,gFAAc,CAAA;IAEd;;;OAGG;IACH,gFAAc,CAAA;IAEd;;;OAGG;IACH,gFAAc,CAAA;IAEd;;;OAGG;IACH,4FAAoB,CAAA;IAEpB;;;OAGG;IACH,wFAAkB,CAAA;IAElB;;;OAGG;IACH,8EAAa,CAAA;IAEb;;;OAGG;IACH,4FAAoB,CAAA;IAEpB;;;OAGG;IACH,sEAAS,CAAA;IAET;;;OAGG;IACH,oFAAgB,CAAA;IAEhB;;;OAGG;IACH,wFAAkB,CAAA;IAElB;;;OAGG;IACH,kGAAuB,CAAA;IAEvB;;;OAGG;IACH,4GAA4B,CAAA;IAE5B;;;OAGG;IACH,gHAA8B,CAAA;IAE9B;;;OAGG;IACH,oFAAgB,CAAA;IAEhB;;;OAGG;IACH,sEAAS,CAAA;AACb,CAAC,EApGW,uBAAuB,KAAvB,uBAAuB,QAoGlC;AA+CD,MAAM,CAAN,IAAY,QAQX;AARD,WAAY,QAAQ;IAChB,yBAAa,CAAA;IACb,sBAAU,CAAA;IACV,uBAAW,CAAA;IACX,sCAA0B,CAAA;IAC1B,wBAAY,CAAA;IACZ,8BAAkB,CAAA;IAClB,2BAAe,CAAA;AACnB,CAAC,EARW,QAAQ,KAAR,QAAQ,QAQnB"}
|
|
@@ -17,6 +17,7 @@ export declare class XlsxSheetWriter extends XlsxFileWriter {
|
|
|
17
17
|
timezone: string;
|
|
18
18
|
columns: ColumnInfo[];
|
|
19
19
|
rowCount: number;
|
|
20
|
+
mergeCells: string[];
|
|
20
21
|
writeHeader(columnCount?: number): Promise<void>;
|
|
21
22
|
writeFooter(): Promise<void>;
|
|
22
23
|
writeRow(cells: CellValue[]): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XlsxSheetWriter.d.ts","sourceRoot":"","sources":["../../../../src/stream-writer/XlsxSheetWriter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,SAAS,EAAE,MAAM,eAAe,CAAC;AAEpD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AA2BtD,cAAM,UAAU;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,aAAa,CAAC,KAAK,EAAE,MAAM;CAK9B;AAED,qBAAa,eAAgB,SAAQ,cAAc;IAC/C;;OAEG;IACH,MAAM,EAAE,gBAAgB,CAAC;IACzB,cAAc,UAAS;IAEvB;;OAEG;IACH,QAAQ,SAAqB;IAE7B,OAAO,EAAE,UAAU,EAAE,CAAM;IAE3B,QAAQ,SAAK;
|
|
1
|
+
{"version":3,"file":"XlsxSheetWriter.d.ts","sourceRoot":"","sources":["../../../../src/stream-writer/XlsxSheetWriter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,SAAS,EAAE,MAAM,eAAe,CAAC;AAEpD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AA2BtD,cAAM,UAAU;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,aAAa,CAAC,KAAK,EAAE,MAAM;CAK9B;AAED,qBAAa,eAAgB,SAAQ,cAAc;IAC/C;;OAEG;IACH,MAAM,EAAE,gBAAgB,CAAC;IACzB,cAAc,UAAS;IAEvB;;OAEG;IACH,QAAQ,SAAqB;IAE7B,OAAO,EAAE,UAAU,EAAE,CAAM;IAE3B,QAAQ,SAAK;IAEb,UAAU,EAAE,MAAM,EAAE,CAAM;IAEpB,WAAW,CAAC,WAAW,SAAI;IAkB3B,WAAW;IAkBX,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE;IAkC3B,aAAa,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAoD/E,KAAK;CAId"}
|
|
@@ -42,6 +42,7 @@ export class XlsxSheetWriter extends XlsxFileWriter {
|
|
|
42
42
|
timezone = 'Europe/Brussels';
|
|
43
43
|
columns = [];
|
|
44
44
|
rowCount = 0;
|
|
45
|
+
mergeCells = [];
|
|
45
46
|
async writeHeader(columnCount = 0) {
|
|
46
47
|
await this.write('<?xml version="1.0" encoding="UTF-8"?>\n');
|
|
47
48
|
await this.write(`<worksheet xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main">`);
|
|
@@ -60,6 +61,13 @@ export class XlsxSheetWriter extends XlsxFileWriter {
|
|
|
60
61
|
await this.writeHeader(0);
|
|
61
62
|
}
|
|
62
63
|
await this.write('</sheetData>');
|
|
64
|
+
if (this.mergeCells.length > 0) {
|
|
65
|
+
await this.write('<mergeCells count="' + this.mergeCells.length + '">');
|
|
66
|
+
for (const merge of this.mergeCells) {
|
|
67
|
+
await this.write('<mergeCell ref="' + escapeXml(merge) + '" />');
|
|
68
|
+
}
|
|
69
|
+
await this.write('</mergeCells>');
|
|
70
|
+
}
|
|
63
71
|
await this.write('</worksheet>');
|
|
64
72
|
}
|
|
65
73
|
async writeRow(cells) {
|
|
@@ -79,6 +87,12 @@ export class XlsxSheetWriter extends XlsxFileWriter {
|
|
|
79
87
|
let str = `<row r="${this.rowCount}">`;
|
|
80
88
|
for (const [index, cell] of cells.entries()) {
|
|
81
89
|
str += await this.getCellString(cell, { row: this.rowCount, column: index + 1 });
|
|
90
|
+
if (cell.merge && (cell.merge.width > 1 || cell.merge.height > 1)) {
|
|
91
|
+
const start = `${numberToAlpha(index + 1).toUpperCase()}${this.rowCount}`;
|
|
92
|
+
const end = `${numberToAlpha(index + cell.merge.width).toUpperCase()}${this.rowCount + cell.merge.height - 1}`;
|
|
93
|
+
// append at the end of the file
|
|
94
|
+
this.mergeCells.push(`${start}:${end}`);
|
|
95
|
+
}
|
|
82
96
|
}
|
|
83
97
|
str += '</row>';
|
|
84
98
|
await this.write(str);
|
|
@@ -86,6 +100,7 @@ export class XlsxSheetWriter extends XlsxFileWriter {
|
|
|
86
100
|
async getCellString(cell, { row, column }) {
|
|
87
101
|
let type = CellType.InlineString;
|
|
88
102
|
let str = '';
|
|
103
|
+
const r = `${numberToAlpha(column).toUpperCase()}${row}`;
|
|
89
104
|
switch (typeof cell.value) {
|
|
90
105
|
case 'boolean':
|
|
91
106
|
type = CellType.Boolean;
|
|
@@ -122,7 +137,6 @@ export class XlsxSheetWriter extends XlsxFileWriter {
|
|
|
122
137
|
break;
|
|
123
138
|
}
|
|
124
139
|
const styleId = (await this.styles.requestCellStyleId(cell.style ?? {})).toString();
|
|
125
|
-
const r = `${numberToAlpha(column).toUpperCase()}${row}`;
|
|
126
140
|
if (type === CellType.InlineString) {
|
|
127
141
|
return `<c r="${escapeXml(r)}" s="${escapeXml(styleId)}" t="${escapeXml(type)}"><is><t>${escapeXml(str)}</t></is></c>`;
|
|
128
142
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"XlsxSheetWriter.js","sourceRoot":"","sources":["../../../../src/stream-writer/XlsxSheetWriter.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"XlsxSheetWriter.js","sourceRoot":"","sources":["../../../../src/stream-writer/XlsxSheetWriter.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stamhoofd/excel-writer",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.82.0",
|
|
4
4
|
"main": "./dist/index.js",
|
|
5
5
|
"module": "./esm/dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -24,5 +24,5 @@
|
|
|
24
24
|
"publishConfig": {
|
|
25
25
|
"access": "public"
|
|
26
26
|
},
|
|
27
|
-
"gitHead": "
|
|
27
|
+
"gitHead": "ce2a8fa52bc4881cc00f1c5d61c737cf19f3a62e"
|
|
28
28
|
}
|