@simplysm/excel 13.0.99 → 14.0.1
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/excel-cell.d.ts +28 -28
- package/dist/excel-cell.d.ts.map +1 -1
- package/dist/excel-cell.js +273 -264
- package/dist/excel-cell.js.map +1 -6
- package/dist/excel-col.d.ts +4 -4
- package/dist/excel-col.d.ts.map +1 -1
- package/dist/excel-col.js +33 -35
- package/dist/excel-col.js.map +1 -6
- package/dist/excel-row.d.ts +3 -3
- package/dist/excel-row.d.ts.map +1 -1
- package/dist/excel-row.js +28 -30
- package/dist/excel-row.js.map +1 -6
- package/dist/excel-workbook.d.ts +23 -23
- package/dist/excel-workbook.d.ts.map +1 -1
- package/dist/excel-workbook.js +151 -125
- package/dist/excel-workbook.js.map +1 -6
- package/dist/excel-worksheet.d.ts +32 -32
- package/dist/excel-worksheet.d.ts.map +1 -1
- package/dist/excel-worksheet.js +281 -253
- package/dist/excel-worksheet.js.map +1 -6
- package/dist/excel-wrapper.d.ts +7 -7
- package/dist/excel-wrapper.d.ts.map +1 -1
- package/dist/excel-wrapper.js +190 -226
- package/dist/excel-wrapper.js.map +1 -6
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -6
- package/dist/types.d.ts +13 -13
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +3 -1
- package/dist/types.js.map +1 -6
- package/dist/utils/excel-utils.d.ts +23 -23
- package/dist/utils/excel-utils.d.ts.map +1 -1
- package/dist/utils/excel-utils.js +183 -151
- package/dist/utils/excel-utils.js.map +1 -6
- package/dist/utils/zip-cache.d.ts +6 -6
- package/dist/utils/zip-cache.js +78 -60
- package/dist/utils/zip-cache.js.map +1 -6
- package/dist/xml/excel-xml-content-type.d.ts +2 -2
- package/dist/xml/excel-xml-content-type.js +55 -53
- package/dist/xml/excel-xml-content-type.js.map +1 -6
- package/dist/xml/excel-xml-drawing.d.ts +2 -2
- package/dist/xml/excel-xml-drawing.js +74 -73
- package/dist/xml/excel-xml-drawing.js.map +1 -6
- package/dist/xml/excel-xml-relationship.d.ts +2 -2
- package/dist/xml/excel-xml-relationship.js +67 -67
- package/dist/xml/excel-xml-relationship.js.map +1 -6
- package/dist/xml/excel-xml-shared-string.d.ts +2 -2
- package/dist/xml/excel-xml-shared-string.js +57 -55
- package/dist/xml/excel-xml-shared-string.js.map +1 -6
- package/dist/xml/excel-xml-style.d.ts +2 -2
- package/dist/xml/excel-xml-style.js +311 -295
- package/dist/xml/excel-xml-style.js.map +1 -6
- package/dist/xml/excel-xml-unknown.d.ts +2 -2
- package/dist/xml/excel-xml-unknown.js +11 -10
- package/dist/xml/excel-xml-unknown.js.map +1 -6
- package/dist/xml/excel-xml-workbook.d.ts +2 -2
- package/dist/xml/excel-xml-workbook.js +87 -90
- package/dist/xml/excel-xml-workbook.js.map +1 -6
- package/dist/xml/excel-xml-worksheet.d.ts +6 -6
- package/dist/xml/excel-xml-worksheet.js +450 -393
- package/dist/xml/excel-xml-worksheet.js.map +1 -6
- package/package.json +5 -7
- package/src/excel-cell.ts +36 -36
- package/src/excel-col.ts +4 -4
- package/src/excel-row.ts +3 -3
- package/src/excel-workbook.ts +38 -38
- package/src/excel-worksheet.ts +69 -51
- package/src/excel-wrapper.ts +55 -50
- package/src/index.ts +3 -3
- package/src/types.ts +17 -17
- package/src/utils/excel-utils.ts +47 -41
- package/src/utils/zip-cache.ts +6 -6
- package/src/xml/excel-xml-content-type.ts +3 -3
- package/src/xml/excel-xml-drawing.ts +2 -2
- package/src/xml/excel-xml-relationship.ts +3 -3
- package/src/xml/excel-xml-shared-string.ts +2 -2
- package/src/xml/excel-xml-style.ts +11 -11
- package/src/xml/excel-xml-unknown.ts +2 -2
- package/src/xml/excel-xml-workbook.ts +5 -5
- package/src/xml/excel-xml-worksheet.ts +43 -43
- package/README.md +0 -119
- package/docs/core-classes.md +0 -541
- package/docs/types.md +0 -297
- package/docs/utilities.md +0 -128
- package/docs/wrapper.md +0 -100
- package/tests/excel-cell.spec.ts +0 -393
- package/tests/excel-col.spec.ts +0 -81
- package/tests/excel-row.spec.ts +0 -61
- package/tests/excel-workbook.spec.ts +0 -205
- package/tests/excel-worksheet.spec.ts +0 -469
- package/tests/excel-wrapper.spec.ts +0 -273
- package/tests/fixtures/logo.png +0 -0
- package/tests/fixtures//354/264/210/352/270/260/355/231/224.xlsx +0 -0
- package/tests/image-insert.spec.ts +0 -190
- package/tests/utils/excel-utils.spec.ts +0 -198
|
@@ -1,6 +1 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/xml/excel-xml-worksheet.ts"],
|
|
4
|
-
"mappings": "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",
|
|
5
|
-
"names": []
|
|
6
|
-
}
|
|
1
|
+
{"version":3,"file":"excel-xml-worksheet.js","sourceRoot":"","sources":["..\\..\\src\\xml\\excel-xml-worksheet.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@simplysm/excel",
|
|
3
|
-
"version": "
|
|
4
|
-
"description": "
|
|
5
|
-
"author": "
|
|
3
|
+
"version": "14.0.1",
|
|
4
|
+
"description": "심플리즘 패키지 - 엑셀 (neutral)",
|
|
5
|
+
"author": "심플리즘",
|
|
6
6
|
"license": "Apache-2.0",
|
|
7
7
|
"repository": {
|
|
8
8
|
"type": "git",
|
|
@@ -14,14 +14,12 @@
|
|
|
14
14
|
"types": "./dist/index.d.ts",
|
|
15
15
|
"files": [
|
|
16
16
|
"dist",
|
|
17
|
-
"
|
|
18
|
-
"src",
|
|
19
|
-
"tests"
|
|
17
|
+
"src"
|
|
20
18
|
],
|
|
21
19
|
"sideEffects": false,
|
|
22
20
|
"dependencies": {
|
|
23
21
|
"mime": "^4.1.0",
|
|
24
22
|
"zod": "^4.3.6",
|
|
25
|
-
"@simplysm/core-common": "
|
|
23
|
+
"@simplysm/core-common": "14.0.1"
|
|
26
24
|
}
|
|
27
25
|
}
|
package/src/excel-cell.ts
CHANGED
|
@@ -17,23 +17,23 @@ import { ExcelXmlStyle as ExcelXmlStyleClass } from "./xml/excel-xml-style";
|
|
|
17
17
|
import { ExcelUtils } from "./utils/excel-utils";
|
|
18
18
|
|
|
19
19
|
/**
|
|
20
|
-
*
|
|
21
|
-
*
|
|
20
|
+
* Excel 셀을 나타내는 클래스.
|
|
21
|
+
* 값 읽기/쓰기, 수식, 스타일, 셀 병합 기능을 제공한다.
|
|
22
22
|
*
|
|
23
23
|
* @remarks
|
|
24
|
-
* ##
|
|
24
|
+
* ## 비동기 메서드 설계
|
|
25
25
|
*
|
|
26
|
-
*
|
|
27
|
-
* -
|
|
28
|
-
* -
|
|
29
|
-
* -
|
|
30
|
-
* -
|
|
26
|
+
* `getValue()`, `setValue()` 등 모든 셀 메서드가 `async`인 이유:
|
|
27
|
+
* - 셀 타입에 필요한 XML만 선택적으로 로드함
|
|
28
|
+
* - 문자열 셀: SharedStrings.xml 로드
|
|
29
|
+
* - 숫자 셀: SharedStrings 로드하지 않음
|
|
30
|
+
* - 스타일 적용 셀: Styles.xml 로드
|
|
31
31
|
*
|
|
32
|
-
*
|
|
33
|
-
*
|
|
32
|
+
* 읽을 셀을 사전에 알 수 없으므로 동기 설계가 불가능하다.
|
|
33
|
+
* 동기 설계는 모든 XML을 미리 로드해야 하므로 대용량 파일에서 메모리 문제가 발생한다.
|
|
34
34
|
*/
|
|
35
35
|
export class ExcelCell {
|
|
36
|
-
/**
|
|
36
|
+
/** 셀 주소 (0 기반 행/열 인덱스) */
|
|
37
37
|
readonly addr: ExcelAddressPoint;
|
|
38
38
|
|
|
39
39
|
constructor(
|
|
@@ -47,7 +47,7 @@ export class ExcelCell {
|
|
|
47
47
|
|
|
48
48
|
//#region Value Methods
|
|
49
49
|
|
|
50
|
-
/**
|
|
50
|
+
/** 셀에 수식 설정 (undefined: 수식 제거) */
|
|
51
51
|
async setFormula(val: string | undefined): Promise<void> {
|
|
52
52
|
if (val === undefined) {
|
|
53
53
|
await this._deleteCell(this.addr);
|
|
@@ -59,13 +59,13 @@ export class ExcelCell {
|
|
|
59
59
|
}
|
|
60
60
|
}
|
|
61
61
|
|
|
62
|
-
/**
|
|
62
|
+
/** 셀 수식 반환 */
|
|
63
63
|
async getFormula(): Promise<string | undefined> {
|
|
64
64
|
const wsData = await this._getWsData();
|
|
65
65
|
return wsData.getCellFormula(this.addr);
|
|
66
66
|
}
|
|
67
67
|
|
|
68
|
-
/**
|
|
68
|
+
/** 셀 값 설정 (undefined: 셀 삭제) */
|
|
69
69
|
async setValue(val: ExcelValueType): Promise<void> {
|
|
70
70
|
if (val === undefined) {
|
|
71
71
|
await this._deleteCell(this.addr);
|
|
@@ -101,12 +101,12 @@ export class ExcelCell {
|
|
|
101
101
|
});
|
|
102
102
|
} else {
|
|
103
103
|
throw new Error(
|
|
104
|
-
`[${ExcelUtils.stringifyAddr(this.addr)}]
|
|
104
|
+
`[${ExcelUtils.stringifyAddr(this.addr)}] 지원하지 않는 타입: ${typeof val}`,
|
|
105
105
|
);
|
|
106
106
|
}
|
|
107
107
|
}
|
|
108
108
|
|
|
109
|
-
/**
|
|
109
|
+
/** 셀 값 반환 */
|
|
110
110
|
async getValue(): Promise<ExcelValueType> {
|
|
111
111
|
const wsData = await this._getWsData();
|
|
112
112
|
const cellVal = wsData.getCellVal(this.addr);
|
|
@@ -120,7 +120,7 @@ export class ExcelCell {
|
|
|
120
120
|
const ssId = num.parseInt(cellVal);
|
|
121
121
|
if (ssId == null) {
|
|
122
122
|
throw new Error(
|
|
123
|
-
`[${ExcelUtils.stringifyAddr(this.addr)}]
|
|
123
|
+
`[${ExcelUtils.stringifyAddr(this.addr)}] SharedString ID 파싱 실패: ${cellVal}`,
|
|
124
124
|
);
|
|
125
125
|
}
|
|
126
126
|
return ssData.getStringById(ssId);
|
|
@@ -134,10 +134,10 @@ export class ExcelCell {
|
|
|
134
134
|
return parseFloat(cellVal);
|
|
135
135
|
} else if (cellType === "e") {
|
|
136
136
|
throw new Error(
|
|
137
|
-
`[${ExcelUtils.stringifyAddr(this.addr)}]
|
|
137
|
+
`[${ExcelUtils.stringifyAddr(this.addr)}] 셀 타입 분석 실패: 셀에 에러 값이 포함되어 있음 (${cellVal})`,
|
|
138
138
|
);
|
|
139
139
|
} else {
|
|
140
|
-
// cellType === undefined:
|
|
140
|
+
// cellType === undefined: 숫자 또는 날짜/시간 타입
|
|
141
141
|
const cellStyleId = wsData.getCellStyleId(this.addr);
|
|
142
142
|
if (cellStyleId === undefined) {
|
|
143
143
|
return parseFloat(cellVal);
|
|
@@ -161,7 +161,7 @@ export class ExcelCell {
|
|
|
161
161
|
const numFmtIdNum = num.parseInt(numFmtId);
|
|
162
162
|
if (numFmtIdNum == null) {
|
|
163
163
|
throw new Error(
|
|
164
|
-
`[${ExcelUtils.stringifyAddr(this.addr)}]
|
|
164
|
+
`[${ExcelUtils.stringifyAddr(this.addr)}] numFmtId 파싱 실패: ${numFmtId}`,
|
|
165
165
|
);
|
|
166
166
|
}
|
|
167
167
|
numFmt = ExcelUtils.convertNumFmtIdToName(numFmtIdNum);
|
|
@@ -172,11 +172,11 @@ export class ExcelCell {
|
|
|
172
172
|
} else if (numFmt === "string") {
|
|
173
173
|
return cellVal;
|
|
174
174
|
} else {
|
|
175
|
-
// DateOnly, DateTime, Time
|
|
175
|
+
// DateOnly, DateTime, Time 타입
|
|
176
176
|
const dateNum = num.parseFloat(cellVal);
|
|
177
177
|
if (dateNum == null) {
|
|
178
178
|
throw new Error(
|
|
179
|
-
`[${ExcelUtils.stringifyAddr(this.addr)}]
|
|
179
|
+
`[${ExcelUtils.stringifyAddr(this.addr)}] 날짜 숫자 파싱 실패: ${cellVal}`,
|
|
180
180
|
);
|
|
181
181
|
}
|
|
182
182
|
const tick = ExcelUtils.convertNumberToTimeTick(dateNum);
|
|
@@ -196,11 +196,11 @@ export class ExcelCell {
|
|
|
196
196
|
//#region Merge Methods
|
|
197
197
|
|
|
198
198
|
/**
|
|
199
|
-
*
|
|
200
|
-
* @param r
|
|
201
|
-
* @param c
|
|
199
|
+
* 현재 셀에서 지정된 끝 좌표까지 셀 병합
|
|
200
|
+
* @param r 병합 끝 행 인덱스 (0 기반)
|
|
201
|
+
* @param c 병합 끝 열 인덱스 (0 기반)
|
|
202
202
|
* @example
|
|
203
|
-
* //
|
|
203
|
+
* // A1 셀에서 호출하여 A1:C3 범위 병합 (3행 x 3열)
|
|
204
204
|
* await ws.cell(0, 0).merge(2, 2);
|
|
205
205
|
*/
|
|
206
206
|
async merge(r: number, c: number): Promise<void> {
|
|
@@ -212,33 +212,33 @@ export class ExcelCell {
|
|
|
212
212
|
|
|
213
213
|
//#region Style Methods
|
|
214
214
|
|
|
215
|
-
/**
|
|
215
|
+
/** 셀 스타일 ID 반환 */
|
|
216
216
|
async getStyleId(): Promise<string | undefined> {
|
|
217
217
|
const wsData = await this._getWsData();
|
|
218
218
|
return wsData.getCellStyleId(this.addr);
|
|
219
219
|
}
|
|
220
220
|
|
|
221
|
-
/**
|
|
221
|
+
/** 셀 스타일 ID 설정 */
|
|
222
222
|
async setStyleId(styleId: string | undefined): Promise<void> {
|
|
223
223
|
const wsData = await this._getWsData();
|
|
224
224
|
wsData.setCellStyleId(this.addr, styleId);
|
|
225
225
|
}
|
|
226
226
|
|
|
227
227
|
/**
|
|
228
|
-
*
|
|
229
|
-
* @param opts
|
|
230
|
-
* @param opts.background
|
|
231
|
-
* @param opts.border
|
|
232
|
-
* @param opts.horizontalAlign
|
|
233
|
-
* @param opts.verticalAlign
|
|
234
|
-
* @param opts.numberFormat
|
|
228
|
+
* 셀 스타일 설정
|
|
229
|
+
* @param opts 스타일 옵션
|
|
230
|
+
* @param opts.background 배경색 (ARGB 형식, 8자리 16진수. 예: "00FF0000")
|
|
231
|
+
* @param opts.border 테두리 위치 배열 (예: ["left", "right", "top", "bottom"])
|
|
232
|
+
* @param opts.horizontalAlign 가로 정렬 ("left", "center", "right")
|
|
233
|
+
* @param opts.verticalAlign 세로 정렬 ("top", "center", "bottom")
|
|
234
|
+
* @param opts.numberFormat 숫자 형식 ("number", "DateOnly", "DateTime", "Time", "string")
|
|
235
235
|
*/
|
|
236
236
|
async setStyle(opts: ExcelStyleOptions): Promise<void> {
|
|
237
237
|
const style: ExcelStyle = {};
|
|
238
238
|
|
|
239
239
|
if (opts.background != null) {
|
|
240
240
|
if (!/^[0-9A-F]{8}$/i.test(opts.background)) {
|
|
241
|
-
throw new Error("
|
|
241
|
+
throw new Error("잘못된 색상 형식입니다. (형식: 00000000: alpha(반전)+rgb)");
|
|
242
242
|
}
|
|
243
243
|
style.background = opts.background;
|
|
244
244
|
}
|
package/src/excel-col.ts
CHANGED
|
@@ -3,7 +3,7 @@ import { ExcelCell } from "./excel-cell";
|
|
|
3
3
|
import type { ExcelXmlWorksheet } from "./xml/excel-xml-worksheet";
|
|
4
4
|
import type { ZipCache } from "./utils/zip-cache";
|
|
5
5
|
|
|
6
|
-
/**
|
|
6
|
+
/** Excel 워크시트의 열을 나타내는 클래스. 셀 접근 및 열 너비 설정 기능을 제공한다. */
|
|
7
7
|
export class ExcelCol {
|
|
8
8
|
private readonly _cellMap = new Map<number, ExcelCell>();
|
|
9
9
|
|
|
@@ -13,7 +13,7 @@ export class ExcelCol {
|
|
|
13
13
|
private readonly _c: number,
|
|
14
14
|
) {}
|
|
15
15
|
|
|
16
|
-
/**
|
|
16
|
+
/** 지정된 행 인덱스의 셀 반환 (0 기반) */
|
|
17
17
|
cell(r: number): ExcelCell {
|
|
18
18
|
return this._cellMap.getOrCreate(
|
|
19
19
|
r,
|
|
@@ -21,7 +21,7 @@ export class ExcelCol {
|
|
|
21
21
|
);
|
|
22
22
|
}
|
|
23
23
|
|
|
24
|
-
/**
|
|
24
|
+
/** 열의 모든 셀 반환 */
|
|
25
25
|
async getCells(): Promise<ExcelCell[]> {
|
|
26
26
|
const result: ExcelCell[] = [];
|
|
27
27
|
const wsData = await this._getWsData();
|
|
@@ -34,7 +34,7 @@ export class ExcelCol {
|
|
|
34
34
|
return result;
|
|
35
35
|
}
|
|
36
36
|
|
|
37
|
-
/**
|
|
37
|
+
/** 열 너비 설정 */
|
|
38
38
|
async setWidth(size: number): Promise<void> {
|
|
39
39
|
const wsData = await this._getWsData();
|
|
40
40
|
wsData.setColWidth((this._c + 1).toString(), size.toString());
|
package/src/excel-row.ts
CHANGED
|
@@ -3,7 +3,7 @@ import { ExcelCell } from "./excel-cell";
|
|
|
3
3
|
import type { ExcelXmlWorksheet } from "./xml/excel-xml-worksheet";
|
|
4
4
|
import type { ZipCache } from "./utils/zip-cache";
|
|
5
5
|
|
|
6
|
-
/**
|
|
6
|
+
/** Excel 워크시트의 행을 나타내는 클래스. 셀 접근 기능을 제공한다. */
|
|
7
7
|
export class ExcelRow {
|
|
8
8
|
private readonly _cellMap = new Map<number, ExcelCell>();
|
|
9
9
|
|
|
@@ -13,7 +13,7 @@ export class ExcelRow {
|
|
|
13
13
|
private readonly _r: number,
|
|
14
14
|
) {}
|
|
15
15
|
|
|
16
|
-
/**
|
|
16
|
+
/** 지정된 열 인덱스의 셀 반환 (0 기반) */
|
|
17
17
|
cell(c: number): ExcelCell {
|
|
18
18
|
return this._cellMap.getOrCreate(
|
|
19
19
|
c,
|
|
@@ -21,7 +21,7 @@ export class ExcelRow {
|
|
|
21
21
|
);
|
|
22
22
|
}
|
|
23
23
|
|
|
24
|
-
/**
|
|
24
|
+
/** 행의 모든 셀 반환 */
|
|
25
25
|
async getCells(): Promise<ExcelCell[]> {
|
|
26
26
|
const result: ExcelCell[] = [];
|
|
27
27
|
const wsData = await this._getWsData();
|
package/src/excel-workbook.ts
CHANGED
|
@@ -8,32 +8,32 @@ import { ExcelXmlWorkbook as ExcelXmlWorkbookClass } from "./xml/excel-xml-workb
|
|
|
8
8
|
import { ExcelXmlWorksheet as ExcelXmlWorksheetClass } from "./xml/excel-xml-worksheet";
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
|
-
* Excel
|
|
11
|
+
* Excel 워크북 처리 클래스
|
|
12
12
|
*
|
|
13
13
|
* @remarks
|
|
14
|
-
*
|
|
15
|
-
*
|
|
14
|
+
* 이 클래스는 내부적으로 ZIP 리소스를 관리한다.
|
|
15
|
+
* 사용 후 반드시 리소스를 해제해야 한다.
|
|
16
16
|
*
|
|
17
|
-
* ##
|
|
17
|
+
* ## 비동기 설계
|
|
18
18
|
*
|
|
19
|
-
*
|
|
20
|
-
* -
|
|
21
|
-
* -
|
|
22
|
-
* -
|
|
19
|
+
* 대용량 Excel 파일의 메모리 효율을 위해 Lazy Loading 아키텍처를 채택:
|
|
20
|
+
* - ZIP 내부의 XML은 접근 시점에만 읽고 파싱함
|
|
21
|
+
* - SharedStrings, Styles 등 대용량 XML은 필요할 때만 로드함
|
|
22
|
+
* - 극단적인 경우에도 메모리 효율적 (예: 1TB SharedStrings가 있는 파일에서 숫자 셀 하나만 읽기)
|
|
23
23
|
*
|
|
24
24
|
* @example
|
|
25
25
|
* ```typescript
|
|
26
|
-
* //
|
|
26
|
+
* // await using 사용 (권장)
|
|
27
27
|
* await using wb = new ExcelWorkbook(bytes);
|
|
28
28
|
* const ws = await wb.getWorksheet(0);
|
|
29
|
-
* // ...
|
|
30
|
-
* //
|
|
29
|
+
* // ... 작업 수행
|
|
30
|
+
* // 스코프 종료 시 리소스 자동 해제
|
|
31
31
|
*
|
|
32
|
-
* //
|
|
32
|
+
* // 또는 try-finally 사용
|
|
33
33
|
* const wb = new ExcelWorkbook(bytes);
|
|
34
34
|
* try {
|
|
35
35
|
* const ws = await wb.getWorksheet(0);
|
|
36
|
-
* // ...
|
|
36
|
+
* // ... 작업 수행
|
|
37
37
|
* } finally {
|
|
38
38
|
* await wb.close();
|
|
39
39
|
* }
|
|
@@ -45,7 +45,7 @@ export class ExcelWorkbook {
|
|
|
45
45
|
private _isClosed = false;
|
|
46
46
|
|
|
47
47
|
/**
|
|
48
|
-
* @param arg
|
|
48
|
+
* @param arg 기존 Excel 파일 데이터 (Blob 또는 Uint8Array). 생략하면 새 워크북을 생성한다.
|
|
49
49
|
*/
|
|
50
50
|
constructor(arg?: Blob | Bytes) {
|
|
51
51
|
if (arg != null) {
|
|
@@ -53,11 +53,11 @@ export class ExcelWorkbook {
|
|
|
53
53
|
} else {
|
|
54
54
|
this.zipCache = new ZipCache();
|
|
55
55
|
|
|
56
|
-
//
|
|
56
|
+
// 전역 ContentTypes
|
|
57
57
|
const typeXml = new ExcelXmlContentType();
|
|
58
58
|
this.zipCache.set("[Content_Types].xml", typeXml);
|
|
59
59
|
|
|
60
|
-
//
|
|
60
|
+
// 전역 Rels
|
|
61
61
|
this.zipCache.set(
|
|
62
62
|
"_rels/.rels",
|
|
63
63
|
new ExcelXmlRelationship().add(
|
|
@@ -66,11 +66,11 @@ export class ExcelWorkbook {
|
|
|
66
66
|
),
|
|
67
67
|
);
|
|
68
68
|
|
|
69
|
-
//
|
|
69
|
+
// 워크북
|
|
70
70
|
const wbXml = new ExcelXmlWorkbookClass();
|
|
71
71
|
this.zipCache.set("xl/workbook.xml", wbXml);
|
|
72
72
|
|
|
73
|
-
//
|
|
73
|
+
// 워크북 Rels
|
|
74
74
|
const wbRelXml = new ExcelXmlRelationship();
|
|
75
75
|
this.zipCache.set("xl/_rels/workbook.xml.rels", wbRelXml);
|
|
76
76
|
}
|
|
@@ -80,32 +80,32 @@ export class ExcelWorkbook {
|
|
|
80
80
|
|
|
81
81
|
private _ensureNotClosed(): void {
|
|
82
82
|
if (this._isClosed) {
|
|
83
|
-
throw new Error("ExcelWorkbook
|
|
83
|
+
throw new Error("ExcelWorkbook이 이미 닫혔습니다. close() 호출 후에는 사용할 수 없습니다.");
|
|
84
84
|
}
|
|
85
85
|
}
|
|
86
86
|
|
|
87
|
-
/**
|
|
87
|
+
/** 워크북의 모든 워크시트 이름 반환 */
|
|
88
88
|
async getWorksheetNames(): Promise<string[]> {
|
|
89
89
|
this._ensureNotClosed();
|
|
90
90
|
const wbData = (await this.zipCache.get("xl/workbook.xml")) as ExcelXmlWorkbook;
|
|
91
91
|
return wbData.sheetNames;
|
|
92
92
|
}
|
|
93
93
|
|
|
94
|
-
/**
|
|
94
|
+
/** 새 워크시트를 생성하여 반환 */
|
|
95
95
|
async addWorksheet(name: string): Promise<ExcelWorksheet> {
|
|
96
96
|
this._ensureNotClosed();
|
|
97
|
-
//
|
|
97
|
+
// 워크북
|
|
98
98
|
const wbXml = (await this.zipCache.get("xl/workbook.xml")) as ExcelXmlWorkbook;
|
|
99
99
|
const newWsRelId = wbXml.addWorksheet(name).lastWsRelId!;
|
|
100
100
|
|
|
101
|
-
// Content Types
|
|
101
|
+
// Content Types 갱신
|
|
102
102
|
const typeXml = (await this.zipCache.get("[Content_Types].xml")) as ExcelXmlContentType;
|
|
103
103
|
typeXml.add(
|
|
104
104
|
`/xl/worksheets/sheet${newWsRelId}.xml`,
|
|
105
105
|
"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml",
|
|
106
106
|
);
|
|
107
107
|
|
|
108
|
-
//
|
|
108
|
+
// 워크북 Rels 갱신
|
|
109
109
|
const wbRelXml = (await this.zipCache.get(
|
|
110
110
|
"xl/_rels/workbook.xml.rels",
|
|
111
111
|
)) as ExcelXmlRelationship;
|
|
@@ -115,7 +115,7 @@ export class ExcelWorkbook {
|
|
|
115
115
|
"http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet",
|
|
116
116
|
);
|
|
117
117
|
|
|
118
|
-
//
|
|
118
|
+
// 워크시트
|
|
119
119
|
const wsXml = new ExcelXmlWorksheetClass();
|
|
120
120
|
this.zipCache.set(`xl/worksheets/sheet${newWsRelId}.xml`, wsXml);
|
|
121
121
|
|
|
@@ -124,7 +124,7 @@ export class ExcelWorkbook {
|
|
|
124
124
|
return ws;
|
|
125
125
|
}
|
|
126
126
|
|
|
127
|
-
/**
|
|
127
|
+
/** 이름 또는 인덱스(0 기반)로 워크시트 조회 */
|
|
128
128
|
async getWorksheet(nameOrIndex: string | number): Promise<ExcelWorksheet> {
|
|
129
129
|
this._ensureNotClosed();
|
|
130
130
|
const wbData = (await this.zipCache.get("xl/workbook.xml")) as ExcelXmlWorkbook;
|
|
@@ -135,9 +135,9 @@ export class ExcelWorkbook {
|
|
|
135
135
|
|
|
136
136
|
if (wsId === undefined) {
|
|
137
137
|
if (typeof nameOrIndex === "string") {
|
|
138
|
-
throw new Error(
|
|
138
|
+
throw new Error(`이름이 '${nameOrIndex}'인 시트를 찾을 수 없습니다.`);
|
|
139
139
|
} else {
|
|
140
|
-
throw new Error(
|
|
140
|
+
throw new Error(`인덱스 '${nameOrIndex}'에 해당하는 시트를 찾을 수 없습니다.`);
|
|
141
141
|
}
|
|
142
142
|
}
|
|
143
143
|
|
|
@@ -148,13 +148,13 @@ export class ExcelWorkbook {
|
|
|
148
148
|
const relData = (await this.zipCache.get("xl/_rels/workbook.xml.rels")) as ExcelXmlRelationship;
|
|
149
149
|
const targetFilePath = relData.getTargetByRelId(wsId);
|
|
150
150
|
if (targetFilePath == null) {
|
|
151
|
-
throw new Error(
|
|
151
|
+
throw new Error(`시트 관계 정보를 찾을 수 없습니다: rId${wsId}`);
|
|
152
152
|
}
|
|
153
153
|
|
|
154
|
-
//
|
|
154
|
+
// path.basename 대신 직접 파일명 추출 (브라우저 호환성)
|
|
155
155
|
const fileName = targetFilePath.split("/").pop();
|
|
156
156
|
if (fileName == null) {
|
|
157
|
-
throw new Error(
|
|
157
|
+
throw new Error(`시트 파일명을 추출할 수 없습니다: ${targetFilePath}`);
|
|
158
158
|
}
|
|
159
159
|
|
|
160
160
|
const ws = new ExcelWorksheet(this.zipCache, wsId, fileName);
|
|
@@ -166,13 +166,13 @@ export class ExcelWorkbook {
|
|
|
166
166
|
|
|
167
167
|
//#region Export Methods
|
|
168
168
|
|
|
169
|
-
/**
|
|
169
|
+
/** 워크북을 바이트 배열로 내보내기 */
|
|
170
170
|
async toBytes(): Promise<Bytes> {
|
|
171
171
|
this._ensureNotClosed();
|
|
172
172
|
return this.zipCache.toBytes();
|
|
173
173
|
}
|
|
174
174
|
|
|
175
|
-
/**
|
|
175
|
+
/** 워크북을 Blob으로 내보내기 */
|
|
176
176
|
async toBlob(): Promise<Blob> {
|
|
177
177
|
this._ensureNotClosed();
|
|
178
178
|
const bytes = await this.zipCache.toBytes();
|
|
@@ -186,16 +186,16 @@ export class ExcelWorkbook {
|
|
|
186
186
|
//#region Lifecycle Methods
|
|
187
187
|
|
|
188
188
|
/**
|
|
189
|
-
*
|
|
189
|
+
* 워크북 리소스 해제
|
|
190
190
|
*
|
|
191
191
|
* @remarks
|
|
192
|
-
*
|
|
193
|
-
*
|
|
194
|
-
*
|
|
192
|
+
* ZIP 리더와 내부 캐시를 정리한다.
|
|
193
|
+
* 이 호출 이후에는 워크북 인스턴스를 사용할 수 없다.
|
|
194
|
+
* 이미 닫힌 워크북에 대해 호출해도 안전하다 (no-op).
|
|
195
195
|
*/
|
|
196
196
|
async close(): Promise<void> {
|
|
197
197
|
if (this._isClosed) {
|
|
198
|
-
return; //
|
|
198
|
+
return; // 이미 닫힌 경우 무시
|
|
199
199
|
}
|
|
200
200
|
this._isClosed = true;
|
|
201
201
|
this._wsMap.clear();
|