@simplysm/excel 14.0.100 → 14.0.102
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/biff/biff-model-factory.d.ts +32 -0
- package/dist/biff/biff-model-factory.d.ts.map +1 -0
- package/dist/biff/biff-model-factory.js +88 -0
- package/dist/biff/biff-model-factory.js.map +1 -0
- package/dist/biff/biff-ptg.d.ts +14 -0
- package/dist/biff/biff-ptg.d.ts.map +1 -0
- package/dist/biff/biff-ptg.js +277 -0
- package/dist/biff/biff-ptg.js.map +1 -0
- package/dist/biff/biff-records.d.ts +163 -0
- package/dist/biff/biff-records.d.ts.map +1 -0
- package/dist/biff/biff-records.js +579 -0
- package/dist/biff/biff-records.js.map +1 -0
- package/dist/biff/biff-shared-string-model.d.ts +13 -0
- package/dist/biff/biff-shared-string-model.d.ts.map +1 -0
- package/dist/biff/biff-shared-string-model.js +41 -0
- package/dist/biff/biff-shared-string-model.js.map +1 -0
- package/dist/biff/biff-style-model.d.ts +39 -0
- package/dist/biff/biff-style-model.d.ts.map +1 -0
- package/dist/biff/biff-style-model.js +182 -0
- package/dist/biff/biff-style-model.js.map +1 -0
- package/dist/biff/biff-workbook-model.d.ts +17 -0
- package/dist/biff/biff-workbook-model.d.ts.map +1 -0
- package/dist/biff/biff-workbook-model.js +64 -0
- package/dist/biff/biff-workbook-model.js.map +1 -0
- package/dist/biff/biff-worksheet-model.d.ts +69 -0
- package/dist/biff/biff-worksheet-model.d.ts.map +1 -0
- package/dist/biff/biff-worksheet-model.js +495 -0
- package/dist/biff/biff-worksheet-model.js.map +1 -0
- package/dist/biff/biff12-codec.d.ts +149 -0
- package/dist/biff/biff12-codec.d.ts.map +1 -0
- package/dist/biff/biff12-codec.js +262 -0
- package/dist/biff/biff12-codec.js.map +1 -0
- package/dist/excel-cell.d.ts +0 -6
- package/dist/excel-cell.d.ts.map +1 -1
- package/dist/excel-cell.js +2 -24
- package/dist/excel-cell.js.map +1 -1
- package/dist/excel-col.js.map +1 -1
- package/dist/excel-row.js.map +1 -1
- package/dist/excel-workbook.d.ts +4 -21
- package/dist/excel-workbook.d.ts.map +1 -1
- package/dist/excel-workbook.js +16 -49
- package/dist/excel-workbook.js.map +1 -1
- package/dist/excel-worksheet.d.ts +0 -11
- package/dist/excel-worksheet.d.ts.map +1 -1
- package/dist/excel-worksheet.js +9 -46
- package/dist/excel-worksheet.js.map +1 -1
- package/dist/excel-wrapper.d.ts +0 -10
- package/dist/excel-wrapper.d.ts.map +1 -1
- package/dist/excel-wrapper.js +0 -10
- package/dist/excel-wrapper.js.map +1 -1
- package/dist/models/excel-format.d.ts +3 -0
- package/dist/models/excel-format.d.ts.map +1 -0
- package/dist/models/excel-format.js +2 -0
- package/dist/models/excel-format.js.map +1 -0
- package/dist/models/excel-model-factory.d.ts +33 -0
- package/dist/models/excel-model-factory.d.ts.map +1 -0
- package/dist/models/excel-model-factory.js +2 -0
- package/dist/models/excel-model-factory.js.map +1 -0
- package/dist/models/excel-model.d.ts +12 -0
- package/dist/models/excel-model.d.ts.map +1 -0
- package/dist/models/excel-model.js +2 -0
- package/dist/models/excel-model.js.map +1 -0
- package/dist/models/i-content-type-model.d.ts +7 -0
- package/dist/models/i-content-type-model.d.ts.map +1 -0
- package/dist/models/i-content-type-model.js +2 -0
- package/dist/models/i-content-type-model.js.map +1 -0
- package/dist/models/i-drawing-model.d.ts +23 -0
- package/dist/models/i-drawing-model.d.ts.map +1 -0
- package/dist/models/i-drawing-model.js +2 -0
- package/dist/models/i-drawing-model.js.map +1 -0
- package/dist/models/i-relationship-model.d.ts +16 -0
- package/dist/models/i-relationship-model.d.ts.map +1 -0
- package/dist/models/i-relationship-model.js +2 -0
- package/dist/models/i-relationship-model.js.map +1 -0
- package/dist/models/i-shared-string-model.d.ts +9 -0
- package/dist/models/i-shared-string-model.d.ts.map +1 -0
- package/dist/models/i-shared-string-model.js +2 -0
- package/dist/models/i-shared-string-model.js.map +1 -0
- package/dist/models/i-style-model.d.ts +18 -0
- package/dist/models/i-style-model.d.ts.map +1 -0
- package/dist/models/i-style-model.js +2 -0
- package/dist/models/i-style-model.js.map +1 -0
- package/dist/models/i-workbook-model.d.ts +17 -0
- package/dist/models/i-workbook-model.d.ts.map +1 -0
- package/dist/models/i-workbook-model.js +2 -0
- package/dist/models/i-workbook-model.js.map +1 -0
- package/dist/models/i-worksheet-model.d.ts +39 -0
- package/dist/models/i-worksheet-model.d.ts.map +1 -0
- package/dist/models/i-worksheet-model.js +2 -0
- package/dist/models/i-worksheet-model.js.map +1 -0
- package/dist/models/shared/excel-cf-spec.d.ts +13 -0
- package/dist/models/shared/excel-cf-spec.d.ts.map +1 -0
- package/dist/models/shared/excel-cf-spec.js +2 -0
- package/dist/models/shared/excel-cf-spec.js.map +1 -0
- package/dist/models/shared/excel-style.d.ts +24 -0
- package/dist/models/shared/excel-style.d.ts.map +1 -0
- package/dist/models/shared/excel-style.js +38 -0
- package/dist/models/shared/excel-style.js.map +1 -0
- package/dist/types.d.ts +0 -13
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/utils/excel-style-data.d.ts +3 -5
- package/dist/utils/excel-style-data.d.ts.map +1 -1
- package/dist/utils/excel-style-data.js +2 -16
- package/dist/utils/excel-style-data.js.map +1 -1
- package/dist/utils/zip-cache.d.ts +46 -9
- package/dist/utils/zip-cache.d.ts.map +1 -1
- package/dist/utils/zip-cache.js +138 -52
- package/dist/utils/zip-cache.js.map +1 -1
- package/dist/xml/excel-xml-content-type.d.ts +8 -4
- package/dist/xml/excel-xml-content-type.d.ts.map +1 -1
- package/dist/xml/excel-xml-content-type.js +13 -6
- package/dist/xml/excel-xml-content-type.js.map +1 -1
- package/dist/xml/excel-xml-drawing.d.ts +8 -4
- package/dist/xml/excel-xml-drawing.d.ts.map +1 -1
- package/dist/xml/excel-xml-drawing.js +14 -7
- package/dist/xml/excel-xml-drawing.js.map +1 -1
- package/dist/xml/excel-xml-relationship.d.ts +12 -4
- package/dist/xml/excel-xml-relationship.d.ts.map +1 -1
- package/dist/xml/excel-xml-relationship.js +22 -12
- package/dist/xml/excel-xml-relationship.js.map +1 -1
- package/dist/xml/excel-xml-shared-string.d.ts +8 -4
- package/dist/xml/excel-xml-shared-string.d.ts.map +1 -1
- package/dist/xml/excel-xml-shared-string.js +16 -9
- package/dist/xml/excel-xml-shared-string.js.map +1 -1
- package/dist/xml/excel-xml-style.d.ts +11 -22
- package/dist/xml/excel-xml-style.d.ts.map +1 -1
- package/dist/xml/excel-xml-style.js +66 -92
- package/dist/xml/excel-xml-style.js.map +1 -1
- package/dist/xml/excel-xml-unknown.d.ts +6 -5
- package/dist/xml/excel-xml-unknown.d.ts.map +1 -1
- package/dist/xml/excel-xml-unknown.js +7 -4
- package/dist/xml/excel-xml-unknown.js.map +1 -1
- package/dist/xml/excel-xml-workbook.d.ts +9 -4
- package/dist/xml/excel-xml-workbook.d.ts.map +1 -1
- package/dist/xml/excel-xml-workbook.js +28 -20
- package/dist/xml/excel-xml-workbook.js.map +1 -1
- package/dist/xml/excel-xml-worksheet.d.ts +12 -7
- package/dist/xml/excel-xml-worksheet.d.ts.map +1 -1
- package/dist/xml/excel-xml-worksheet.js +65 -50
- package/dist/xml/excel-xml-worksheet.js.map +1 -1
- package/dist/xml/xml-model-factory.d.ts +25 -0
- package/dist/xml/xml-model-factory.d.ts.map +1 -0
- package/dist/xml/xml-model-factory.js +66 -0
- package/dist/xml/xml-model-factory.js.map +1 -0
- package/package.json +2 -2
- package/src/biff/biff-model-factory.ts +101 -0
- package/src/biff/biff-ptg.ts +289 -0
- package/src/biff/biff-records.ts +686 -0
- package/src/biff/biff-shared-string-model.ts +52 -0
- package/src/biff/biff-style-model.ts +219 -0
- package/src/biff/biff-workbook-model.ts +83 -0
- package/src/biff/biff-worksheet-model.ts +545 -0
- package/src/biff/biff12-codec.ts +286 -0
- package/src/excel-cell.ts +12 -46
- package/src/excel-col.ts +3 -3
- package/src/excel-row.ts +3 -3
- package/src/excel-workbook.ts +26 -69
- package/src/excel-worksheet.ts +36 -107
- package/src/excel-wrapper.ts +0 -10
- package/src/models/excel-format.ts +2 -0
- package/src/models/excel-model-factory.ts +33 -0
- package/src/models/excel-model.ts +12 -0
- package/src/models/i-content-type-model.ts +7 -0
- package/src/models/i-drawing-model.ts +13 -0
- package/src/models/i-relationship-model.ts +13 -0
- package/src/models/i-shared-string-model.ts +9 -0
- package/src/models/i-style-model.ts +18 -0
- package/src/models/i-workbook-model.ts +17 -0
- package/src/models/i-worksheet-model.ts +40 -0
- package/src/models/shared/excel-cf-spec.ts +24 -0
- package/src/models/shared/excel-style.ts +65 -0
- package/src/types.ts +0 -13
- package/src/utils/excel-style-data.ts +4 -25
- package/src/utils/zip-cache.ts +189 -58
- package/src/xml/excel-xml-content-type.ts +18 -8
- package/src/xml/excel-xml-drawing.ts +19 -9
- package/src/xml/excel-xml-relationship.ts +28 -14
- package/src/xml/excel-xml-shared-string.ts +20 -11
- package/src/xml/excel-xml-style.ts +74 -116
- package/src/xml/excel-xml-unknown.ts +8 -4
- package/src/xml/excel-xml-workbook.ts +34 -22
- package/src/xml/excel-xml-worksheet.ts +73 -53
- package/src/xml/xml-model-factory.ts +83 -0
|
@@ -1,17 +1,22 @@
|
|
|
1
1
|
import "@simplysm/core-common";
|
|
2
|
-
import type {
|
|
2
|
+
import type { Bytes } from "@simplysm/core-common";
|
|
3
|
+
import type { IWorkbookModel } from "../models/i-workbook-model";
|
|
4
|
+
import type { ExcelXmlWorkbookData } from "../types";
|
|
3
5
|
/**
|
|
4
6
|
* xl/workbook.xml을 관리하는 클래스.
|
|
5
7
|
* 워크시트 목록 및 관계 ID를 처리한다.
|
|
6
8
|
*/
|
|
7
|
-
export declare class ExcelXmlWorkbook implements
|
|
8
|
-
|
|
9
|
+
export declare class ExcelXmlWorkbook implements IWorkbookModel {
|
|
10
|
+
private readonly _data;
|
|
9
11
|
constructor(data?: ExcelXmlWorkbookData);
|
|
12
|
+
/** @internal 테스트·디버그용 내부 트리 접근. 상위 레이어는 인터페이스만 사용. */
|
|
13
|
+
get data(): ExcelXmlWorkbookData;
|
|
10
14
|
get lastWsRelId(): number | undefined;
|
|
11
15
|
get lastSheetId(): number | undefined;
|
|
12
16
|
get sheetNames(): string[];
|
|
13
17
|
addWorksheet(name: string): this;
|
|
14
|
-
|
|
18
|
+
serialize(): Bytes;
|
|
19
|
+
private _cleanup;
|
|
15
20
|
initializeView(): void;
|
|
16
21
|
getWsRelIdByName(name: string): number | undefined;
|
|
17
22
|
getWsRelIdByIndex(index: number): number | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"excel-xml-workbook.d.ts","sourceRoot":"","sources":["../../src/xml/excel-xml-workbook.ts"],"names":[],"mappings":"AAAA,OAAO,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"excel-xml-workbook.d.ts","sourceRoot":"","sources":["../../src/xml/excel-xml-workbook.ts"],"names":[],"mappings":"AAAA,OAAO,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAEnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAErD;;;GAGG;AACH,qBAAa,gBAAiB,YAAW,cAAc;IACrD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAuB;gBAEjC,IAAI,CAAC,EAAE,oBAAoB;IAevC,sDAAsD;IACtD,IAAI,IAAI,IAAI,oBAAoB,CAE/B;IAED,IAAI,WAAW,IAAI,MAAM,GAAG,SAAS,CAKpC;IAED,IAAI,WAAW,IAAI,MAAM,GAAG,SAAS,CAKpC;IAED,IAAI,UAAU,IAAI,MAAM,EAAE,CAEzB;IAED,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAkBhC,SAAS,IAAI,KAAK;IAKlB,OAAO,CAAC,QAAQ;IAwBhB,cAAc,IAAI,IAAI;IAItB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAQlD,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAIpD,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAIpD,oBAAoB,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IASvD,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,gBAAgB;CAIzB"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import "@simplysm/core-common";
|
|
2
|
-
import { num } from "@simplysm/core-common";
|
|
2
|
+
import { num, xml as xmlU } from "@simplysm/core-common";
|
|
3
3
|
/**
|
|
4
4
|
* xl/workbook.xml을 관리하는 클래스.
|
|
5
5
|
* 워크시트 목록 및 관계 ID를 처리한다.
|
|
6
6
|
*/
|
|
7
7
|
export class ExcelXmlWorkbook {
|
|
8
|
-
|
|
8
|
+
_data;
|
|
9
9
|
constructor(data) {
|
|
10
10
|
if (data == null) {
|
|
11
|
-
this.
|
|
11
|
+
this._data = {
|
|
12
12
|
workbook: {
|
|
13
13
|
$: {
|
|
14
14
|
"xmlns": "http://schemas.openxmlformats.org/spreadsheetml/2006/main",
|
|
@@ -18,32 +18,36 @@ export class ExcelXmlWorkbook {
|
|
|
18
18
|
};
|
|
19
19
|
}
|
|
20
20
|
else {
|
|
21
|
-
this.
|
|
21
|
+
this._data = data;
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
|
+
/** @internal 테스트·디버그용 내부 트리 접근. 상위 레이어는 인터페이스만 사용. */
|
|
25
|
+
get data() {
|
|
26
|
+
return this._data;
|
|
27
|
+
}
|
|
24
28
|
get lastWsRelId() {
|
|
25
|
-
const sheets = this.
|
|
29
|
+
const sheets = this._data.workbook.sheets?.[0].sheet;
|
|
26
30
|
if (!sheets || sheets.length === 0)
|
|
27
31
|
return undefined;
|
|
28
32
|
const maxSheet = sheets.orderByDesc((sheet) => num.parseInt(sheet.$["r:id"])).first();
|
|
29
33
|
return maxSheet ? num.parseInt(maxSheet.$["r:id"]) : undefined;
|
|
30
34
|
}
|
|
31
35
|
get lastSheetId() {
|
|
32
|
-
const sheets = this.
|
|
36
|
+
const sheets = this._data.workbook.sheets?.[0].sheet;
|
|
33
37
|
if (!sheets || sheets.length === 0)
|
|
34
38
|
return undefined;
|
|
35
39
|
const maxSheet = sheets.orderByDesc((sheet) => num.parseInt(sheet.$.sheetId)).first();
|
|
36
40
|
return maxSheet ? num.parseInt(maxSheet.$.sheetId) : undefined;
|
|
37
41
|
}
|
|
38
42
|
get sheetNames() {
|
|
39
|
-
return this.
|
|
43
|
+
return this._data.workbook.sheets?.[0].sheet.map((item) => item.$.name) ?? [];
|
|
40
44
|
}
|
|
41
45
|
addWorksheet(name) {
|
|
42
46
|
const replacedName = this._getReplacedName(name);
|
|
43
47
|
const newWsRelId = (this.lastWsRelId ?? 0) + 1;
|
|
44
48
|
const newSheetId = (this.lastSheetId ?? 0) + 1;
|
|
45
|
-
this.
|
|
46
|
-
this.
|
|
49
|
+
this._data.workbook.sheets = this._data.workbook.sheets ?? [{ sheet: [] }];
|
|
50
|
+
this._data.workbook.sheets[0].sheet.push({
|
|
47
51
|
$: {
|
|
48
52
|
"name": replacedName,
|
|
49
53
|
"sheetId": newSheetId.toString(),
|
|
@@ -52,34 +56,38 @@ export class ExcelXmlWorkbook {
|
|
|
52
56
|
});
|
|
53
57
|
return this;
|
|
54
58
|
}
|
|
55
|
-
|
|
59
|
+
serialize() {
|
|
60
|
+
this._cleanup();
|
|
61
|
+
return new TextEncoder().encode(xmlU.stringify(this._data));
|
|
62
|
+
}
|
|
63
|
+
_cleanup() {
|
|
56
64
|
const result = {};
|
|
57
65
|
// 정렬 순서 ("sheets" 기준, 나머지는 원래 위치 유지)
|
|
58
|
-
const workbookRec = this.
|
|
66
|
+
const workbookRec = this._data.workbook;
|
|
59
67
|
const resultRec = result;
|
|
60
|
-
for (const key of Object.keys(this.
|
|
68
|
+
for (const key of Object.keys(this._data.workbook)) {
|
|
61
69
|
if (key === "bookViews")
|
|
62
70
|
continue;
|
|
63
71
|
if (key === "sheets") {
|
|
64
|
-
if (this.
|
|
65
|
-
result.bookViews = this.
|
|
72
|
+
if (this._data.workbook.bookViews != null) {
|
|
73
|
+
result.bookViews = this._data.workbook.bookViews;
|
|
66
74
|
}
|
|
67
|
-
result.sheets = this.
|
|
75
|
+
result.sheets = this._data.workbook.sheets;
|
|
68
76
|
}
|
|
69
77
|
else {
|
|
70
78
|
resultRec[key] = workbookRec[key];
|
|
71
79
|
}
|
|
72
80
|
}
|
|
73
|
-
this.
|
|
81
|
+
this._data.workbook = result;
|
|
74
82
|
}
|
|
75
83
|
initializeView() {
|
|
76
|
-
this.
|
|
84
|
+
this._data.workbook.bookViews = this._data.workbook.bookViews ?? [{ workbookView: [{}] }];
|
|
77
85
|
}
|
|
78
86
|
getWsRelIdByName(name) {
|
|
79
|
-
return num.parseInt((this.
|
|
87
|
+
return num.parseInt((this._data.workbook.sheets?.[0].sheet ?? []).single((item) => item.$.name === name)?.$["r:id"]);
|
|
80
88
|
}
|
|
81
89
|
getWsRelIdByIndex(index) {
|
|
82
|
-
return num.parseInt(this.
|
|
90
|
+
return num.parseInt(this._data.workbook.sheets?.[0].sheet[index]?.$["r:id"]);
|
|
83
91
|
}
|
|
84
92
|
getWorksheetNameById(id) {
|
|
85
93
|
return this._getSheetDataById(id)?.$.name;
|
|
@@ -93,7 +101,7 @@ export class ExcelXmlWorkbook {
|
|
|
93
101
|
sheetData.$.name = replacedName;
|
|
94
102
|
}
|
|
95
103
|
_getSheetDataById(id) {
|
|
96
|
-
return (this.
|
|
104
|
+
return (this._data.workbook.sheets?.[0].sheet ?? []).single((item) => num.parseInt(item.$["r:id"]) === id);
|
|
97
105
|
}
|
|
98
106
|
_getReplacedName(name) {
|
|
99
107
|
//-- 잘못된 시트 이름 문자 제거. 전부 제거되어 빈 문자열이 되면 "Sheet" 사용.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"excel-xml-workbook.js","sourceRoot":"","sources":["../../src/xml/excel-xml-workbook.ts"],"names":[],"mappings":"AAAA,OAAO,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"excel-xml-workbook.js","sourceRoot":"","sources":["../../src/xml/excel-xml-workbook.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,18 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { Bytes } from "@simplysm/core-common";
|
|
2
|
+
import type { ExcelAddressRangePoint, ExcelCellType, ExcelXmlWorksheetData } from "../types";
|
|
3
|
+
import type { ICfRuleSpec } from "../models/shared/excel-cf-spec";
|
|
4
|
+
import type { IWorksheetModel } from "../models/i-worksheet-model";
|
|
2
5
|
import "@simplysm/core-common";
|
|
3
6
|
/**
|
|
4
7
|
* xl/worksheets/sheet*.xml 파일을 관리하는 클래스.
|
|
5
8
|
* 셀 데이터, 병합, 열 너비, 행 높이 등을 처리한다.
|
|
6
9
|
*/
|
|
7
|
-
export declare class ExcelXmlWorksheet implements
|
|
8
|
-
|
|
10
|
+
export declare class ExcelXmlWorksheet implements IWorksheetModel {
|
|
11
|
+
private readonly _data;
|
|
9
12
|
private readonly _dataMap;
|
|
10
13
|
constructor(data?: ExcelXmlWorksheetData);
|
|
14
|
+
/** @internal 테스트·디버그용 내부 트리 접근. 상위 레이어는 인터페이스만 사용. */
|
|
15
|
+
get data(): ExcelXmlWorksheetData;
|
|
11
16
|
get range(): ExcelAddressRangePoint;
|
|
12
17
|
setCellType(addr: {
|
|
13
18
|
r: number;
|
|
@@ -75,9 +80,7 @@ export declare class ExcelXmlWorksheet implements ExcelXml {
|
|
|
75
80
|
*/
|
|
76
81
|
addConditionalFormatting(sqref: string, rules: {
|
|
77
82
|
dxfId: string;
|
|
78
|
-
cfRule:
|
|
79
|
-
formula: string[];
|
|
80
|
-
};
|
|
83
|
+
cfRule: ICfRuleSpec;
|
|
81
84
|
}[]): void;
|
|
82
85
|
shiftMergeCells(fromRow: number, delta: number): void;
|
|
83
86
|
/**
|
|
@@ -107,7 +110,9 @@ export declare class ExcelXmlWorksheet implements ExcelXml {
|
|
|
107
110
|
r: number;
|
|
108
111
|
c: number;
|
|
109
112
|
}): void;
|
|
110
|
-
|
|
113
|
+
setDrawingRelId(relId: string): void;
|
|
114
|
+
serialize(): Bytes;
|
|
115
|
+
private _cleanup;
|
|
111
116
|
private _getCellData;
|
|
112
117
|
private _getOrCreateCellData;
|
|
113
118
|
private _getOrCreateRowInfo;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"excel-xml-worksheet.d.ts","sourceRoot":"","sources":["../../src/xml/excel-xml-worksheet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EAEtB,aAAa,
|
|
1
|
+
{"version":3,"file":"excel-xml-worksheet.d.ts","sourceRoot":"","sources":["../../src/xml/excel-xml-worksheet.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { ExcelUtils } from "../utils/excel-utils.js";
|
|
2
|
-
import { num, obj } from "@simplysm/core-common";
|
|
2
|
+
import { num, obj, xml as xmlU } from "@simplysm/core-common";
|
|
3
3
|
import "@simplysm/core-common";
|
|
4
4
|
/**
|
|
5
5
|
* xl/worksheets/sheet*.xml 파일을 관리하는 클래스.
|
|
6
6
|
* 셀 데이터, 병합, 열 너비, 행 높이 등을 처리한다.
|
|
7
7
|
*/
|
|
8
8
|
export class ExcelXmlWorksheet {
|
|
9
|
-
|
|
9
|
+
_data;
|
|
10
10
|
_dataMap;
|
|
11
11
|
constructor(data) {
|
|
12
12
|
if (data == null) {
|
|
13
|
-
this.
|
|
13
|
+
this._data = {
|
|
14
14
|
worksheet: {
|
|
15
15
|
$: {
|
|
16
16
|
xmlns: "http://schemas.openxmlformats.org/spreadsheetml/2006/main",
|
|
@@ -27,13 +27,17 @@ export class ExcelXmlWorksheet {
|
|
|
27
27
|
};
|
|
28
28
|
}
|
|
29
29
|
else {
|
|
30
|
-
this.
|
|
30
|
+
this._data = data;
|
|
31
31
|
}
|
|
32
|
-
this._dataMap = (this.
|
|
32
|
+
this._dataMap = (this._data.worksheet.sheetData[0].row ?? []).toMap((row) => ExcelUtils.parseRowAddr(row.$.r), (row) => ({
|
|
33
33
|
data: row,
|
|
34
34
|
cellMap: (row.c ?? []).toMap((cell) => ExcelUtils.parseColAddr(cell.$.r), (cell) => cell),
|
|
35
35
|
}));
|
|
36
36
|
}
|
|
37
|
+
/** @internal 테스트·디버그용 내부 트리 접근. 상위 레이어는 인터페이스만 사용. */
|
|
38
|
+
get data() {
|
|
39
|
+
return this._data;
|
|
40
|
+
}
|
|
37
41
|
get range() {
|
|
38
42
|
let maxRow = 0;
|
|
39
43
|
let maxCol = 0;
|
|
@@ -122,7 +126,7 @@ export class ExcelXmlWorksheet {
|
|
|
122
126
|
}
|
|
123
127
|
}
|
|
124
128
|
setMergeCells(startAddr, endAddr) {
|
|
125
|
-
const mergeCells = (this.
|
|
129
|
+
const mergeCells = (this._data.worksheet.mergeCells = this._data.worksheet.mergeCells ?? [
|
|
126
130
|
{
|
|
127
131
|
$: { count: "0" },
|
|
128
132
|
mergeCell: [],
|
|
@@ -153,16 +157,16 @@ export class ExcelXmlWorksheet {
|
|
|
153
157
|
}
|
|
154
158
|
}
|
|
155
159
|
getMergeCells() {
|
|
156
|
-
const mergeCells = this.
|
|
160
|
+
const mergeCells = this._data.worksheet.mergeCells;
|
|
157
161
|
if (mergeCells == null)
|
|
158
162
|
return [];
|
|
159
163
|
return mergeCells[0].mergeCell.map((item) => ExcelUtils.parseRangeAddr(item.$.ref));
|
|
160
164
|
}
|
|
161
165
|
removeMergeCells(fromAddr, toAddr) {
|
|
162
|
-
if (this.
|
|
166
|
+
if (this._data.worksheet.mergeCells == null)
|
|
163
167
|
return;
|
|
164
168
|
const range = { s: fromAddr, e: toAddr };
|
|
165
|
-
const filteredMergeCells = this.
|
|
169
|
+
const filteredMergeCells = this._data.worksheet.mergeCells[0].mergeCell.filter((item) => {
|
|
166
170
|
const rangeAddr = ExcelUtils.parseRangeAddr(item.$.ref);
|
|
167
171
|
return !(rangeAddr.s.r >= range.s.r &&
|
|
168
172
|
rangeAddr.e.r <= range.e.r &&
|
|
@@ -170,11 +174,11 @@ export class ExcelXmlWorksheet {
|
|
|
170
174
|
rangeAddr.e.c <= range.e.c);
|
|
171
175
|
});
|
|
172
176
|
if (filteredMergeCells.length === 0) {
|
|
173
|
-
delete this.
|
|
177
|
+
delete this._data.worksheet.mergeCells;
|
|
174
178
|
}
|
|
175
179
|
else {
|
|
176
|
-
this.
|
|
177
|
-
this.
|
|
180
|
+
this._data.worksheet.mergeCells[0].mergeCell = filteredMergeCells;
|
|
181
|
+
this._data.worksheet.mergeCells[0].$.count = filteredMergeCells.length.toString();
|
|
178
182
|
}
|
|
179
183
|
}
|
|
180
184
|
/**
|
|
@@ -182,8 +186,8 @@ export class ExcelXmlWorksheet {
|
|
|
182
186
|
* priority 는 시트 전역 카운터(기존 cfRule 의 최대 priority + 1)부터 호출 내 rules 순서대로 부여.
|
|
183
187
|
*/
|
|
184
188
|
addConditionalFormatting(sqref, rules) {
|
|
185
|
-
const cfList = (this.
|
|
186
|
-
this.
|
|
189
|
+
const cfList = (this._data.worksheet.conditionalFormatting =
|
|
190
|
+
this._data.worksheet.conditionalFormatting ?? []);
|
|
187
191
|
let nextPriority = 1;
|
|
188
192
|
for (const block of cfList) {
|
|
189
193
|
for (const rule of block.cfRule) {
|
|
@@ -209,7 +213,7 @@ export class ExcelXmlWorksheet {
|
|
|
209
213
|
});
|
|
210
214
|
}
|
|
211
215
|
shiftMergeCells(fromRow, delta) {
|
|
212
|
-
const mergeCells = this.
|
|
216
|
+
const mergeCells = this._data.worksheet.mergeCells;
|
|
213
217
|
if (mergeCells == null)
|
|
214
218
|
return;
|
|
215
219
|
for (const mergeCell of mergeCells[0].mergeCell) {
|
|
@@ -237,7 +241,7 @@ export class ExcelXmlWorksheet {
|
|
|
237
241
|
if (colIndexNumber == null) {
|
|
238
242
|
throw new Error(`잘못된 열 인덱스: ${colIndex}`);
|
|
239
243
|
}
|
|
240
|
-
const cols = this.
|
|
244
|
+
const cols = this._data.worksheet.cols?.[0];
|
|
241
245
|
// 대상 열을 포함하는 기존 범위 찾기
|
|
242
246
|
const col = cols
|
|
243
247
|
? cols.col.single((item) => (num.parseInt(item.$.min) ?? 0) <= colIndexNumber &&
|
|
@@ -297,8 +301,8 @@ export class ExcelXmlWorksheet {
|
|
|
297
301
|
}
|
|
298
302
|
else {
|
|
299
303
|
// 기존 범위 없음: 새 범위 생성
|
|
300
|
-
this.
|
|
301
|
-
this.
|
|
304
|
+
this._data.worksheet.cols = this._data.worksheet.cols ?? [{ col: [] }];
|
|
305
|
+
this._data.worksheet.cols[0].col.push({
|
|
302
306
|
$: {
|
|
303
307
|
min: colIndex,
|
|
304
308
|
max: colIndex,
|
|
@@ -310,20 +314,20 @@ export class ExcelXmlWorksheet {
|
|
|
310
314
|
}
|
|
311
315
|
}
|
|
312
316
|
setTabColor(rgb) {
|
|
313
|
-
this.
|
|
314
|
-
this.
|
|
317
|
+
this._data.worksheet.sheetPr = this._data.worksheet.sheetPr ?? [{}];
|
|
318
|
+
this._data.worksheet.sheetPr[0].tabColor = [{ $: { rgb } }];
|
|
315
319
|
}
|
|
316
320
|
setZoom(percent) {
|
|
317
|
-
this.
|
|
321
|
+
this._data.worksheet.sheetViews = this._data.worksheet.sheetViews ?? [
|
|
318
322
|
{ sheetView: [{ $: { workbookViewId: "0" } }] },
|
|
319
323
|
];
|
|
320
|
-
this.
|
|
324
|
+
this._data.worksheet.sheetViews[0].sheetView[0].$.zoomScale = percent.toString();
|
|
321
325
|
}
|
|
322
326
|
freezeAt(point) {
|
|
323
|
-
this.
|
|
327
|
+
this._data.worksheet.sheetViews = this._data.worksheet.sheetViews ?? [
|
|
324
328
|
{ sheetView: [{ $: { workbookViewId: "0" } }] },
|
|
325
329
|
];
|
|
326
|
-
this.
|
|
330
|
+
this._data.worksheet.sheetViews[0].sheetView[0].pane = [
|
|
327
331
|
{
|
|
328
332
|
$: {
|
|
329
333
|
...(point.c != null
|
|
@@ -347,7 +351,7 @@ export class ExcelXmlWorksheet {
|
|
|
347
351
|
];
|
|
348
352
|
}
|
|
349
353
|
setAutoFilter(range) {
|
|
350
|
-
this.
|
|
354
|
+
this._data.worksheet.autoFilter = [
|
|
351
355
|
{ $: { ref: ExcelUtils.stringifyRangeAddr(range) } },
|
|
352
356
|
];
|
|
353
357
|
}
|
|
@@ -405,10 +409,21 @@ export class ExcelXmlWorksheet {
|
|
|
405
409
|
this.deleteCell(targetAddr);
|
|
406
410
|
}
|
|
407
411
|
}
|
|
408
|
-
|
|
412
|
+
setDrawingRelId(relId) {
|
|
413
|
+
this._data.worksheet.$["xmlns:r"] =
|
|
414
|
+
this._data.worksheet.$["xmlns:r"] ??
|
|
415
|
+
"http://schemas.openxmlformats.org/officeDocument/2006/relationships";
|
|
416
|
+
this._data.worksheet.drawing = this._data.worksheet.drawing ?? [];
|
|
417
|
+
this._data.worksheet.drawing.push({ $: { "r:id": relId } });
|
|
418
|
+
}
|
|
419
|
+
serialize() {
|
|
420
|
+
this._cleanup();
|
|
421
|
+
return new TextEncoder().encode(xmlU.stringify(this._data));
|
|
422
|
+
}
|
|
423
|
+
_cleanup() {
|
|
409
424
|
const result = {};
|
|
410
425
|
// 정렬 순서 ("sheetData" 기준, 나머지는 원래 위치 유지)
|
|
411
|
-
for (const key of Object.keys(this.
|
|
426
|
+
for (const key of Object.keys(this._data.worksheet)) {
|
|
412
427
|
if (key === "mergeCells")
|
|
413
428
|
continue;
|
|
414
429
|
if (key === "cols")
|
|
@@ -427,32 +442,32 @@ export class ExcelXmlWorksheet {
|
|
|
427
442
|
continue;
|
|
428
443
|
if (key === "sheetData") {
|
|
429
444
|
// OOXML CT_Worksheet 자식 순서: sheetPr → dimension → sheetViews → sheetFormatPr → cols → sheetData → autoFilter → mergeCells → conditionalFormatting
|
|
430
|
-
if (this.
|
|
431
|
-
result.sheetPr = this.
|
|
445
|
+
if (this._data.worksheet.sheetPr != null) {
|
|
446
|
+
result.sheetPr = this._data.worksheet.sheetPr;
|
|
432
447
|
}
|
|
433
|
-
result.dimension = this.
|
|
434
|
-
if (this.
|
|
435
|
-
result.sheetViews = this.
|
|
448
|
+
result.dimension = this._data.worksheet.dimension ?? [{ $: { ref: "A1" } }];
|
|
449
|
+
if (this._data.worksheet.sheetViews != null) {
|
|
450
|
+
result.sheetViews = this._data.worksheet.sheetViews;
|
|
436
451
|
}
|
|
437
|
-
if (this.
|
|
438
|
-
result.sheetFormatPr = this.
|
|
452
|
+
if (this._data.worksheet.sheetFormatPr != null) {
|
|
453
|
+
result.sheetFormatPr = this._data.worksheet.sheetFormatPr;
|
|
439
454
|
}
|
|
440
|
-
if (this.
|
|
441
|
-
result.cols = this.
|
|
455
|
+
if (this._data.worksheet.cols != null) {
|
|
456
|
+
result.cols = this._data.worksheet.cols;
|
|
442
457
|
}
|
|
443
|
-
result.sheetData = this.
|
|
444
|
-
if (this.
|
|
445
|
-
result.autoFilter = this.
|
|
458
|
+
result.sheetData = this._data.worksheet.sheetData;
|
|
459
|
+
if (this._data.worksheet.autoFilter != null) {
|
|
460
|
+
result.autoFilter = this._data.worksheet.autoFilter;
|
|
446
461
|
}
|
|
447
|
-
if (this.
|
|
448
|
-
result.mergeCells = this.
|
|
462
|
+
if (this._data.worksheet.mergeCells != null) {
|
|
463
|
+
result.mergeCells = this._data.worksheet.mergeCells;
|
|
449
464
|
}
|
|
450
|
-
if (this.
|
|
451
|
-
result.conditionalFormatting = this.
|
|
465
|
+
if (this._data.worksheet.conditionalFormatting != null) {
|
|
466
|
+
result.conditionalFormatting = this._data.worksheet.conditionalFormatting;
|
|
452
467
|
}
|
|
453
468
|
}
|
|
454
469
|
else {
|
|
455
|
-
const worksheetRec = this.
|
|
470
|
+
const worksheetRec = this._data.worksheet;
|
|
456
471
|
const resultRec = result;
|
|
457
472
|
resultRec[key] = worksheetRec[key];
|
|
458
473
|
}
|
|
@@ -470,7 +485,7 @@ export class ExcelXmlWorksheet {
|
|
|
470
485
|
// dimension 값 적용
|
|
471
486
|
const dimension = (result.dimension ??= [{ $: { ref: "A1" } }]);
|
|
472
487
|
dimension[0].$.ref = ExcelUtils.stringifyRangeAddr(this.range);
|
|
473
|
-
this.
|
|
488
|
+
this._data.worksheet = result;
|
|
474
489
|
}
|
|
475
490
|
_getCellData(addr) {
|
|
476
491
|
return this._dataMap.get(addr.r)?.cellMap.get(addr.c);
|
|
@@ -498,8 +513,8 @@ export class ExcelXmlWorksheet {
|
|
|
498
513
|
_replaceRowData(r, rowData) {
|
|
499
514
|
this._deleteRow(r);
|
|
500
515
|
// 시트에 쓰기
|
|
501
|
-
this.
|
|
502
|
-
this.
|
|
516
|
+
this._data.worksheet.sheetData[0].row = this._data.worksheet.sheetData[0].row ?? [];
|
|
517
|
+
this._data.worksheet.sheetData[0].row.push(rowData);
|
|
503
518
|
// 캐시에 쓰기
|
|
504
519
|
const rowInfo = {
|
|
505
520
|
data: rowData,
|
|
@@ -521,7 +536,7 @@ export class ExcelXmlWorksheet {
|
|
|
521
536
|
_deleteRow(r) {
|
|
522
537
|
const targetRowInfo = this._dataMap.get(r);
|
|
523
538
|
if (targetRowInfo != null) {
|
|
524
|
-
const rows = this.
|
|
539
|
+
const rows = this._data.worksheet.sheetData[0].row;
|
|
525
540
|
if (rows) {
|
|
526
541
|
const rowIndex = rows.indexOf(targetRowInfo.data);
|
|
527
542
|
if (rowIndex !== -1)
|
|
@@ -530,8 +545,8 @@ export class ExcelXmlWorksheet {
|
|
|
530
545
|
}
|
|
531
546
|
this._dataMap.delete(r);
|
|
532
547
|
// 행이 남아있지 않으면 XML에서 행 섹션 삭제
|
|
533
|
-
if (this.
|
|
534
|
-
delete this.
|
|
548
|
+
if (this._data.worksheet.sheetData[0].row?.length === 0) {
|
|
549
|
+
delete this._data.worksheet.sheetData[0].row;
|
|
535
550
|
}
|
|
536
551
|
}
|
|
537
552
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"excel-xml-worksheet.js","sourceRoot":"","sources":["../../src/xml/excel-xml-worksheet.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"excel-xml-worksheet.js","sourceRoot":"","sources":["../../src/xml/excel-xml-worksheet.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { Bytes } from "@simplysm/core-common";
|
|
2
|
+
import type { ExcelFormat } from "../models/excel-format";
|
|
3
|
+
import type { IExcelModel } from "../models/excel-model";
|
|
4
|
+
import type { IExcelModelFactory } from "../models/excel-model-factory";
|
|
5
|
+
import type { IContentTypeModel } from "../models/i-content-type-model";
|
|
6
|
+
import type { IDrawingModel } from "../models/i-drawing-model";
|
|
7
|
+
import type { IRelationshipModel } from "../models/i-relationship-model";
|
|
8
|
+
import type { ISharedStringModel } from "../models/i-shared-string-model";
|
|
9
|
+
import type { IStyleModel } from "../models/i-style-model";
|
|
10
|
+
import type { IWorkbookModel } from "../models/i-workbook-model";
|
|
11
|
+
import type { IWorksheetModel } from "../models/i-worksheet-model";
|
|
12
|
+
/** xlsx(OOXML XML) 포맷의 파트 모델 팩토리. */
|
|
13
|
+
export declare class XmlModelFactory implements IExcelModelFactory {
|
|
14
|
+
readonly format: ExcelFormat;
|
|
15
|
+
isModelPart(filePath: string): boolean;
|
|
16
|
+
createWorkbook(): IWorkbookModel;
|
|
17
|
+
createWorksheet(): IWorksheetModel;
|
|
18
|
+
createStyle(): IStyleModel;
|
|
19
|
+
createSharedString(): ISharedStringModel;
|
|
20
|
+
createContentType(): IContentTypeModel;
|
|
21
|
+
createRelationship(): IRelationshipModel;
|
|
22
|
+
createDrawing(): IDrawingModel;
|
|
23
|
+
parse(filePath: string, bytes: Bytes): IExcelModel;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=xml-model-factory.d.ts.map
|