@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/utils/zip-cache.ts"],
|
|
4
|
-
"mappings": "AACA,SAAS,YAAY,OAAO,YAAY;AAWxC,SAAS,2BAA2B;AACpC,SAAS,uBAAuB;AAChC,SAAS,4BAA4B;AACrC,SAAS,4BAA4B;AACrC,SAAS,qBAAqB;AAC9B,SAAS,uBAAuB;AAChC,SAAS,wBAAwB;AACjC,SAAS,yBAAyB;AAa3B,MAAM,SAAS;AAAA,EACH,SAAS,oBAAI,IAA0C;AAAA,EACvD;AAAA,EAEjB,YAAY,KAAoB;AAC9B,SAAK,OAAO,IAAI,WAAW,GAAG;AAAA,EAChC;AAAA,EAEA,MAAM,IAAI,UAAyD;AACjE,QAAI,KAAK,OAAO,IAAI,QAAQ,GAAG;AAC7B,aAAO,KAAK,OAAO,IAAI,QAAQ;AAAA,IACjC;AAEA,UAAM,WAAW,MAAM,KAAK,KAAK,IAAI,QAAQ;AAC7C,QAAI,YAAY,MAAM;AACpB,WAAK,OAAO,IAAI,UAAU,MAAS;AACnC,aAAO;AAAA,IACT;AAEA,QAAI,SAAS,SAAS,MAAM,KAAK,SAAS,SAAS,OAAO,GAAG;AAC3D,YAAM,WAAW,IAAI,YAAY,EAAE,OAAO,QAAQ;AAClD,YAAM,MAAM,KAAK,MAAM,UAAU,EAAE,gBAAgB,KAAK,CAAC;AACzD,UAAI,SAAS,SAAS,OAAO,GAAG;AAC9B,aAAK,OAAO,IAAI,UAAU,IAAI,qBAAqB,GAA+B,CAAC;AAAA,MACrF,WAAW,aAAa,uBAAuB;AAC7C,aAAK,OAAO,IAAI,UAAU,IAAI,oBAAoB,GAA8B,CAAC;AAAA,MACnF,WAAW,aAAa,mBAAmB;AACzC,aAAK,OAAO,IAAI,UAAU,IAAI,iBAAiB,GAA2B,CAAC;AAAA,MAC7E,WAAW,SAAS,WAAW,qBAAqB,KAAK,SAAS,SAAS,MAAM,GAAG;AAClF,aAAK,OAAO,IAAI,UAAU,IAAI,kBAAkB,GAA4B,CAAC;AAAA,MAC/E,WAAW,SAAS,WAAW,qBAAqB,KAAK,SAAS,SAAS,MAAM,GAAG;AAClF,aAAK,OAAO,IAAI,UAAU,IAAI,gBAAgB,GAA0B,CAAC;AAAA,MAC3E,WAAW,aAAa,wBAAwB;AAC9C,aAAK,OAAO,IAAI,UAAU,IAAI,qBAAqB,GAA+B,CAAC;AAAA,MACrF,WAAW,aAAa,iBAAiB;AACvC,aAAK,OAAO,IAAI,UAAU,IAAI,cAAc,GAAwB,CAAC;AAAA,MACvE,OAAO;AACL,aAAK,OAAO,IAAI,UAAU,IAAI,gBAAgB,GAA8B,CAAC;AAAA,MAC/E;AAAA,IACF,OAAO;AACL,WAAK,OAAO,IAAI,UAAU,QAAQ;AAAA,IACpC;AAEA,WAAO,KAAK,OAAO,IAAI,QAAQ;AAAA,EACjC;AAAA,EAEA,IAAI,UAAkB,SAAiC;AACrD,SAAK,OAAO,IAAI,UAAU,OAAO;AAAA,EACnC;AAAA,EAEA,MAAM,UAA0B;AAC9B,eAAW,YAAY,KAAK,OAAO,KAAK,GAAG;AACzC,YAAM,UAAU,KAAK,OAAO,IAAI,QAAQ;AACxC,UAAI,WAAW,KAAM;AAErB,UAAI,aAAa,SAAS;AACxB,gBAAQ,QAAQ;AAChB,aAAK,KAAK,MAAM,UAAU,IAAI,YAAY,EAAE,OAAO,KAAK,UAAU,QAAQ,IAAI,CAAC,CAAC;AAAA,MAClF,OAAO;AACL,aAAK,KAAK,MAAM,UAAU,OAAO;AAAA,MACnC;AAAA,IACF;AAEA,WAAO,KAAK,KAAK,SAAS;AAAA,EAC5B;AAAA,EAEA,MAAM,QAAuB;AAC3B,UAAM,KAAK,KAAK,MAAM;AACtB,SAAK,OAAO,MAAM;AAAA,EACpB;AACF;",
|
|
5
|
-
"names": []
|
|
6
|
-
}
|
|
1
|
+
{"version":3,"file":"zip-cache.js","sourceRoot":"","sources":["..\\..\\src\\utils\\zip-cache.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { ExcelXml, ExcelXmlContentTypeData } from "../types";
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
4
|
-
*
|
|
3
|
+
* [Content_Types].xml을 관리하는 클래스.
|
|
4
|
+
* 파일별 MIME 타입 정보를 관리한다.
|
|
5
5
|
*/
|
|
6
6
|
export declare class ExcelXmlContentType implements ExcelXml {
|
|
7
7
|
data: ExcelXmlContentTypeData;
|
|
@@ -1,57 +1,59 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
1
|
+
/**
|
|
2
|
+
* [Content_Types].xml을 관리하는 클래스.
|
|
3
|
+
* 파일별 MIME 타입 정보를 관리한다.
|
|
4
|
+
*/
|
|
5
|
+
export class ExcelXmlContentType {
|
|
6
|
+
data;
|
|
7
|
+
constructor(data) {
|
|
8
|
+
if (data == null) {
|
|
9
|
+
this.data = {
|
|
10
|
+
Types: {
|
|
11
|
+
$: {
|
|
12
|
+
xmlns: "http://schemas.openxmlformats.org/package/2006/content-types",
|
|
13
|
+
},
|
|
14
|
+
Default: [
|
|
15
|
+
{
|
|
16
|
+
$: {
|
|
17
|
+
Extension: "rels",
|
|
18
|
+
ContentType: "application/vnd.openxmlformats-package.relationships+xml",
|
|
19
|
+
},
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
$: {
|
|
23
|
+
Extension: "xml",
|
|
24
|
+
ContentType: "application/xml",
|
|
25
|
+
},
|
|
26
|
+
},
|
|
27
|
+
],
|
|
28
|
+
Override: [
|
|
29
|
+
{
|
|
30
|
+
$: {
|
|
31
|
+
PartName: "/xl/workbook.xml",
|
|
32
|
+
ContentType: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml",
|
|
33
|
+
},
|
|
34
|
+
},
|
|
35
|
+
],
|
|
36
|
+
},
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
this.data = data;
|
|
32
41
|
}
|
|
33
|
-
};
|
|
34
|
-
} else {
|
|
35
|
-
this.data = data;
|
|
36
42
|
}
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
43
|
+
add(partName, contentType) {
|
|
44
|
+
// 중복 검사
|
|
45
|
+
const exists = this.data.Types.Override.some((item) => item.$.PartName === partName);
|
|
46
|
+
if (exists) {
|
|
47
|
+
return this;
|
|
48
|
+
}
|
|
49
|
+
this.data.Types.Override.push({
|
|
50
|
+
$: {
|
|
51
|
+
PartName: partName,
|
|
52
|
+
ContentType: contentType,
|
|
53
|
+
},
|
|
54
|
+
});
|
|
55
|
+
return this;
|
|
42
56
|
}
|
|
43
|
-
|
|
44
|
-
$: {
|
|
45
|
-
PartName: partName,
|
|
46
|
-
ContentType: contentType
|
|
47
|
-
}
|
|
48
|
-
});
|
|
49
|
-
return this;
|
|
50
|
-
}
|
|
51
|
-
cleanup() {
|
|
52
|
-
}
|
|
57
|
+
cleanup() { }
|
|
53
58
|
}
|
|
54
|
-
|
|
55
|
-
ExcelXmlContentType
|
|
56
|
-
};
|
|
57
|
-
//# sourceMappingURL=excel-xml-content-type.js.map
|
|
59
|
+
//# sourceMappingURL=excel-xml-content-type.js.map
|
|
@@ -1,6 +1 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/xml/excel-xml-content-type.ts"],
|
|
4
|
-
"mappings": "AAMO,MAAM,oBAAwC;AAAA,EACnD;AAAA,EAEA,YAAY,MAAgC;AAC1C,QAAI,QAAQ,MAAM;AAChB,WAAK,OAAO;AAAA,QACV,OAAO;AAAA,UACL,GAAG;AAAA,YACD,OAAO;AAAA,UACT;AAAA,UACA,SAAS;AAAA,YACP;AAAA,cACE,GAAG;AAAA,gBACD,WAAW;AAAA,gBACX,aAAa;AAAA,cACf;AAAA,YACF;AAAA,YACA;AAAA,cACE,GAAG;AAAA,gBACD,WAAW;AAAA,gBACX,aAAa;AAAA,cACf;AAAA,YACF;AAAA,UACF;AAAA,UACA,UAAU;AAAA,YACR;AAAA,cACE,GAAG;AAAA,gBACD,UAAU;AAAA,gBACV,aACE;AAAA,cACJ;AAAA,YACF;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAAA,IACF,OAAO;AACL,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AAAA,EAEA,IAAI,UAAkB,aAA2B;AAE/C,UAAM,SAAS,KAAK,KAAK,MAAM,SAAS,KAAK,CAAC,SAAS,KAAK,EAAE,aAAa,QAAQ;AACnF,QAAI,QAAQ;AACV,aAAO;AAAA,IACT;AAEA,SAAK,KAAK,MAAM,SAAS,KAAK;AAAA,MAC5B,GAAG;AAAA,QACD,UAAU;AAAA,QACV,aAAa;AAAA,MACf;AAAA,IACF,CAAC;AAED,WAAO;AAAA,EACT;AAAA,EAEA,UAAgB;AAAA,EAAC;AACnB;",
|
|
5
|
-
"names": []
|
|
6
|
-
}
|
|
1
|
+
{"version":3,"file":"excel-xml-content-type.js","sourceRoot":"","sources":["..\\..\\src\\xml\\excel-xml-content-type.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,OAAO,mBAAmB;IAC9B,IAAI,CAA0B;IAE9B,YAAY,IAA8B;QACxC,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;YACjB,IAAI,CAAC,IAAI,GAAG;gBACV,KAAK,EAAE;oBACL,CAAC,EAAE;wBACD,KAAK,EAAE,8DAA8D;qBACtE;oBACD,OAAO,EAAE;wBACP;4BACE,CAAC,EAAE;gCACD,SAAS,EAAE,MAAM;gCACjB,WAAW,EAAE,0DAA0D;6BACxE;yBACF;wBACD;4BACE,CAAC,EAAE;gCACD,SAAS,EAAE,KAAK;gCAChB,WAAW,EAAE,iBAAiB;6BAC/B;yBACF;qBACF;oBACD,QAAQ,EAAE;wBACR;4BACE,CAAC,EAAE;gCACD,QAAQ,EAAE,kBAAkB;gCAC5B,WAAW,EACT,4EAA4E;6BAC/E;yBACF;qBACF;iBACF;aACF,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACnB,CAAC;IACH,CAAC;IAED,GAAG,CAAC,QAAgB,EAAE,WAAmB;QACvC,QAAQ;QACR,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC;QACrF,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC5B,CAAC,EAAE;gBACD,QAAQ,EAAE,QAAQ;gBAClB,WAAW,EAAE,WAAW;aACzB;SACF,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,KAAU,CAAC;CACnB"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { ExcelXml, ExcelXmlDrawingData } from "../types";
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
4
|
-
*
|
|
3
|
+
* xl/drawings/drawing*.xml 파일을 관리하는 클래스.
|
|
4
|
+
* 이미지 삽입을 위한 위치 및 참조 정보를 처리한다.
|
|
5
5
|
*/
|
|
6
6
|
export declare class ExcelXmlDrawing implements ExcelXml {
|
|
7
7
|
data: ExcelXmlDrawingData;
|
|
@@ -1,77 +1,78 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
1
|
+
/**
|
|
2
|
+
* xl/drawings/drawing*.xml 파일을 관리하는 클래스.
|
|
3
|
+
* 이미지 삽입을 위한 위치 및 참조 정보를 처리한다.
|
|
4
|
+
*/
|
|
5
|
+
export class ExcelXmlDrawing {
|
|
6
|
+
data;
|
|
7
|
+
constructor(data) {
|
|
8
|
+
if (data == null) {
|
|
9
|
+
this.data = {
|
|
10
|
+
wsDr: {
|
|
11
|
+
$: {
|
|
12
|
+
"xmlns": "http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing",
|
|
13
|
+
"xmlns:a": "http://schemas.openxmlformats.org/drawingml/2006/main",
|
|
14
|
+
"xmlns:r": "http://schemas.openxmlformats.org/officeDocument/2006/relationships",
|
|
15
|
+
},
|
|
16
|
+
twoCellAnchor: [],
|
|
17
|
+
},
|
|
18
|
+
};
|
|
13
19
|
}
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
this.data = data;
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
addPicture(opts) {
|
|
20
|
-
this.data.wsDr.twoCellAnchor = this.data.wsDr.twoCellAnchor ?? [];
|
|
21
|
-
const anchors = this.data.wsDr.twoCellAnchor;
|
|
22
|
-
const picId = anchors.length + 1;
|
|
23
|
-
const name = `Picture ${picId}`;
|
|
24
|
-
this.data.wsDr.twoCellAnchor.push({
|
|
25
|
-
from: [
|
|
26
|
-
{
|
|
27
|
-
col: [opts.from.c.toString()],
|
|
28
|
-
colOff: [opts.from.cOff != null ? opts.from.cOff.toString() : "0"],
|
|
29
|
-
row: [opts.from.r.toString()],
|
|
30
|
-
rowOff: [opts.from.rOff != null ? opts.from.rOff.toString() : "0"]
|
|
31
|
-
}
|
|
32
|
-
],
|
|
33
|
-
to: [
|
|
34
|
-
{
|
|
35
|
-
col: [opts.to.c.toString()],
|
|
36
|
-
colOff: [opts.to.cOff != null ? opts.to.cOff.toString() : "0"],
|
|
37
|
-
row: [opts.to.r.toString()],
|
|
38
|
-
rowOff: [opts.to.rOff != null ? opts.to.rOff.toString() : "0"]
|
|
20
|
+
else {
|
|
21
|
+
this.data = data;
|
|
39
22
|
}
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
],
|
|
49
|
-
blipFill: [
|
|
50
|
-
{
|
|
51
|
-
"a:blip": [{ $: { "r:embed": opts.blipRelId } }],
|
|
52
|
-
"a:stretch": [{ "a:fillRect": [] }]
|
|
53
|
-
}
|
|
54
|
-
],
|
|
55
|
-
spPr: [
|
|
56
|
-
{
|
|
57
|
-
"a:xfrm": [
|
|
23
|
+
}
|
|
24
|
+
addPicture(opts) {
|
|
25
|
+
this.data.wsDr.twoCellAnchor = this.data.wsDr.twoCellAnchor ?? [];
|
|
26
|
+
const anchors = this.data.wsDr.twoCellAnchor;
|
|
27
|
+
const picId = anchors.length + 1;
|
|
28
|
+
const name = `Picture ${picId}`;
|
|
29
|
+
this.data.wsDr.twoCellAnchor.push({
|
|
30
|
+
from: [
|
|
58
31
|
{
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
32
|
+
col: [opts.from.c.toString()],
|
|
33
|
+
colOff: [opts.from.cOff != null ? opts.from.cOff.toString() : "0"],
|
|
34
|
+
row: [opts.from.r.toString()],
|
|
35
|
+
rowOff: [opts.from.rOff != null ? opts.from.rOff.toString() : "0"],
|
|
36
|
+
},
|
|
37
|
+
],
|
|
38
|
+
to: [
|
|
39
|
+
{
|
|
40
|
+
col: [opts.to.c.toString()],
|
|
41
|
+
colOff: [opts.to.cOff != null ? opts.to.cOff.toString() : "0"],
|
|
42
|
+
row: [opts.to.r.toString()],
|
|
43
|
+
rowOff: [opts.to.rOff != null ? opts.to.rOff.toString() : "0"],
|
|
44
|
+
},
|
|
45
|
+
],
|
|
46
|
+
pic: [
|
|
47
|
+
{
|
|
48
|
+
nvPicPr: [
|
|
49
|
+
{
|
|
50
|
+
cNvPr: [{ $: { id: picId.toString(), name } }],
|
|
51
|
+
cNvPicPr: [{ "a:picLocks": [{ $: { noChangeAspect: "1" } }] }],
|
|
52
|
+
},
|
|
53
|
+
],
|
|
54
|
+
blipFill: [
|
|
55
|
+
{
|
|
56
|
+
"a:blip": [{ $: { "r:embed": opts.blipRelId } }],
|
|
57
|
+
"a:stretch": [{ "a:fillRect": [] }],
|
|
58
|
+
},
|
|
59
|
+
],
|
|
60
|
+
spPr: [
|
|
61
|
+
{
|
|
62
|
+
"a:xfrm": [
|
|
63
|
+
{
|
|
64
|
+
"a:off": [{ $: { x: "0", y: "0" } }],
|
|
65
|
+
"a:ext": [{ $: { cx: "0", cy: "0" } }],
|
|
66
|
+
},
|
|
67
|
+
],
|
|
68
|
+
"a:prstGeom": [{ "$": { prst: "rect" }, "a:avLst": [] }],
|
|
69
|
+
},
|
|
70
|
+
],
|
|
71
|
+
},
|
|
72
|
+
],
|
|
73
|
+
clientData: [{}],
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
cleanup() { }
|
|
73
77
|
}
|
|
74
|
-
|
|
75
|
-
ExcelXmlDrawing
|
|
76
|
-
};
|
|
77
|
-
//# sourceMappingURL=excel-xml-drawing.js.map
|
|
78
|
+
//# sourceMappingURL=excel-xml-drawing.js.map
|
|
@@ -1,6 +1 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/xml/excel-xml-drawing.ts"],
|
|
4
|
-
"mappings": "AAMO,MAAM,gBAAoC;AAAA,EAC/C;AAAA,EAEA,YAAY,MAA4B;AACtC,QAAI,QAAQ,MAAM;AAChB,WAAK,OAAO;AAAA,QACV,MAAM;AAAA,UACJ,GAAG;AAAA,YACD,SAAS;AAAA,YACT,WAAW;AAAA,YACX,WAAW;AAAA,UACb;AAAA,UACA,eAAe,CAAC;AAAA,QAClB;AAAA,MACF;AAAA,IACF,OAAO;AACL,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AAAA,EAEA,WAAW,MAIF;AACP,SAAK,KAAK,KAAK,gBAAgB,KAAK,KAAK,KAAK,iBAAiB,CAAC;AAEhE,UAAM,UAAU,KAAK,KAAK,KAAK;AAC/B,UAAM,QAAQ,QAAQ,SAAS;AAC/B,UAAM,OAAO,WAAW,KAAK;AAE7B,SAAK,KAAK,KAAK,cAAc,KAAK;AAAA,MAChC,MAAM;AAAA,QACJ;AAAA,UACE,KAAK,CAAC,KAAK,KAAK,EAAE,SAAS,CAAC;AAAA,UAC5B,QAAQ,CAAC,KAAK,KAAK,QAAQ,OAAO,KAAK,KAAK,KAAK,SAAS,IAAI,GAAG;AAAA,UACjE,KAAK,CAAC,KAAK,KAAK,EAAE,SAAS,CAAC;AAAA,UAC5B,QAAQ,CAAC,KAAK,KAAK,QAAQ,OAAO,KAAK,KAAK,KAAK,SAAS,IAAI,GAAG;AAAA,QACnE;AAAA,MACF;AAAA,MACA,IAAI;AAAA,QACF;AAAA,UACE,KAAK,CAAC,KAAK,GAAG,EAAE,SAAS,CAAC;AAAA,UAC1B,QAAQ,CAAC,KAAK,GAAG,QAAQ,OAAO,KAAK,GAAG,KAAK,SAAS,IAAI,GAAG;AAAA,UAC7D,KAAK,CAAC,KAAK,GAAG,EAAE,SAAS,CAAC;AAAA,UAC1B,QAAQ,CAAC,KAAK,GAAG,QAAQ,OAAO,KAAK,GAAG,KAAK,SAAS,IAAI,GAAG;AAAA,QAC/D;AAAA,MACF;AAAA,MACA,KAAK;AAAA,QACH;AAAA,UACE,SAAS;AAAA,YACP;AAAA,cACE,OAAO,CAAC,EAAE,GAAG,EAAE,IAAI,MAAM,SAAS,GAAG,KAAK,EAAE,CAAC;AAAA,cAC7C,UAAU,CAAC,EAAE,cAAc,CAAC,EAAE,GAAG,EAAE,gBAAgB,IAAI,EAAE,CAAC,EAAE,CAAC;AAAA,YAC/D;AAAA,UACF;AAAA,UACA,UAAU;AAAA,YACR;AAAA,cACE,UAAU,CAAC,EAAE,GAAG,EAAE,WAAW,KAAK,UAAU,EAAE,CAAC;AAAA,cAC/C,aAAa,CAAC,EAAE,cAAc,CAAC,EAAE,CAAC;AAAA,YACpC;AAAA,UACF;AAAA,UACA,MAAM;AAAA,YACJ;AAAA,cACE,UAAU;AAAA,gBACR;AAAA,kBACE,SAAS,CAAC,EAAE,GAAG,EAAE,GAAG,KAAK,GAAG,IAAI,EAAE,CAAC;AAAA,kBACnC,SAAS,CAAC,EAAE,GAAG,EAAE,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;AAAA,gBACvC;AAAA,cACF;AAAA,cACA,cAAc,CAAC,EAAE,KAAK,EAAE,MAAM,OAAO,GAAG,WAAW,CAAC,EAAE,CAAC;AAAA,YACzD;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAAA,MACA,YAAY,CAAC,CAAC,CAAC;AAAA,IACjB,CAAC;AAAA,EACH;AAAA,EAEA,UAAgB;AAAA,EAAC;AACnB;",
|
|
5
|
-
"names": []
|
|
6
|
-
}
|
|
1
|
+
{"version":3,"file":"excel-xml-drawing.js","sourceRoot":"","sources":["..\\..\\src\\xml\\excel-xml-drawing.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import "@simplysm/core-common";
|
|
2
2
|
import type { ExcelXml, ExcelXmlRelationshipData } from "../types";
|
|
3
3
|
/**
|
|
4
|
-
*
|
|
5
|
-
*
|
|
4
|
+
* *.rels 파일을 관리하는 클래스.
|
|
5
|
+
* 파일 간의 참조 관계를 처리한다.
|
|
6
6
|
*/
|
|
7
7
|
export declare class ExcelXmlRelationship implements ExcelXml {
|
|
8
8
|
data: ExcelXmlRelationshipData;
|
|
@@ -1,74 +1,74 @@
|
|
|
1
1
|
import "@simplysm/core-common";
|
|
2
2
|
import { num } from "@simplysm/core-common";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
3
|
+
/**
|
|
4
|
+
* *.rels 파일을 관리하는 클래스.
|
|
5
|
+
* 파일 간의 참조 관계를 처리한다.
|
|
6
|
+
*/
|
|
7
|
+
export class ExcelXmlRelationship {
|
|
8
|
+
data;
|
|
9
|
+
constructor(data) {
|
|
10
|
+
if (data == null) {
|
|
11
|
+
this.data = {
|
|
12
|
+
Relationships: {
|
|
13
|
+
$: {
|
|
14
|
+
xmlns: "http://schemas.openxmlformats.org/package/2006/relationships",
|
|
15
|
+
},
|
|
16
|
+
},
|
|
17
|
+
};
|
|
12
18
|
}
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
19
|
+
else {
|
|
20
|
+
this.data = data;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
getTargetByRelId(rId) {
|
|
24
|
+
return (this.data.Relationships.Relationship ?? []).single((rel) => this._getRelId(rel) === rId)
|
|
25
|
+
?.$.Target;
|
|
16
26
|
}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
return (_a = (this.data.Relationships.Relationship ?? []).single((rel) => this._getRelId(rel) === rId)) == null ? void 0 : _a.$.Target;
|
|
21
|
-
}
|
|
22
|
-
add(target, type) {
|
|
23
|
-
this.addAndGetId(target, type);
|
|
24
|
-
return this;
|
|
25
|
-
}
|
|
26
|
-
addAndGetId(target, type) {
|
|
27
|
-
this.data.Relationships.Relationship = this.data.Relationships.Relationship ?? [];
|
|
28
|
-
const newId = (this._lastId ?? 0) + 1;
|
|
29
|
-
this.data.Relationships.Relationship.push({
|
|
30
|
-
$: {
|
|
31
|
-
Id: `rId${newId}`,
|
|
32
|
-
Target: target,
|
|
33
|
-
Type: type
|
|
34
|
-
}
|
|
35
|
-
});
|
|
36
|
-
return newId;
|
|
37
|
-
}
|
|
38
|
-
insert(rId, target, type) {
|
|
39
|
-
this.data.Relationships.Relationship = this.data.Relationships.Relationship ?? [];
|
|
40
|
-
const shiftRels = this.data.Relationships.Relationship.filter(
|
|
41
|
-
(rel) => this._getRelId(rel) >= rId
|
|
42
|
-
);
|
|
43
|
-
for (const shiftRel of shiftRels) {
|
|
44
|
-
shiftRel.$.Id = `rId${this._getRelId(shiftRel) + 1}`;
|
|
27
|
+
add(target, type) {
|
|
28
|
+
this.addAndGetId(target, type);
|
|
29
|
+
return this;
|
|
45
30
|
}
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
31
|
+
addAndGetId(target, type) {
|
|
32
|
+
this.data.Relationships.Relationship = this.data.Relationships.Relationship ?? [];
|
|
33
|
+
const newId = (this._lastId ?? 0) + 1;
|
|
34
|
+
this.data.Relationships.Relationship.push({
|
|
35
|
+
$: {
|
|
36
|
+
Id: `rId${newId}`,
|
|
37
|
+
Target: target,
|
|
38
|
+
Type: type,
|
|
39
|
+
},
|
|
40
|
+
});
|
|
41
|
+
return newId;
|
|
42
|
+
}
|
|
43
|
+
insert(rId, target, type) {
|
|
44
|
+
this.data.Relationships.Relationship = this.data.Relationships.Relationship ?? [];
|
|
45
|
+
const shiftRels = this.data.Relationships.Relationship.filter((rel) => this._getRelId(rel) >= rId);
|
|
46
|
+
for (const shiftRel of shiftRels) {
|
|
47
|
+
shiftRel.$.Id = `rId${this._getRelId(shiftRel) + 1}`;
|
|
48
|
+
}
|
|
49
|
+
this.data.Relationships.Relationship.push({
|
|
50
|
+
$: {
|
|
51
|
+
Id: `rId${rId}`,
|
|
52
|
+
Target: target,
|
|
53
|
+
Type: type,
|
|
54
|
+
},
|
|
55
|
+
});
|
|
56
|
+
return this;
|
|
57
|
+
}
|
|
58
|
+
cleanup() { }
|
|
59
|
+
get _lastId() {
|
|
60
|
+
const rels = this.data.Relationships.Relationship;
|
|
61
|
+
if (!rels || rels.length === 0)
|
|
62
|
+
return undefined;
|
|
63
|
+
const maxRel = rels.orderByDesc((rel) => this._getRelId(rel)).first();
|
|
64
|
+
return maxRel ? this._getRelId(maxRel) : undefined;
|
|
65
|
+
}
|
|
66
|
+
_getRelId(rel) {
|
|
67
|
+
const match = /[0-9]+$/.exec(rel.$.Id);
|
|
68
|
+
if (match == null) {
|
|
69
|
+
throw new Error(`잘못된 관계 ID 형식: ${rel.$.Id}`);
|
|
70
|
+
}
|
|
71
|
+
return num.parseInt(match[0]);
|
|
67
72
|
}
|
|
68
|
-
return num.parseInt(match[0]);
|
|
69
|
-
}
|
|
70
73
|
}
|
|
71
|
-
|
|
72
|
-
ExcelXmlRelationship
|
|
73
|
-
};
|
|
74
|
-
//# sourceMappingURL=excel-xml-relationship.js.map
|
|
74
|
+
//# sourceMappingURL=excel-xml-relationship.js.map
|
|
@@ -1,6 +1 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/xml/excel-xml-relationship.ts"],
|
|
4
|
-
"mappings": "AAAA,OAAO;AACP,SAAS,WAAW;AAOb,MAAM,qBAAyC;AAAA,EACpD;AAAA,EAEA,YAAY,MAAiC;AAC3C,QAAI,QAAQ,MAAM;AAChB,WAAK,OAAO;AAAA,QACV,eAAe;AAAA,UACb,GAAG;AAAA,YACD,OAAO;AAAA,UACT;AAAA,QACF;AAAA,MACF;AAAA,IACF,OAAO;AACL,WAAK,OAAO;AAAA,IACd;AAAA,EACF;AAAA,EAEA,iBAAiB,KAAiC;AAzBpD;AA0BI,YAAQ,WAAK,KAAK,cAAc,gBAAgB,CAAC,GAAG,OAAO,CAAC,QAAQ,KAAK,UAAU,GAAG,MAAM,GAAG,MAAvF,mBACJ,EAAE;AAAA,EACR;AAAA,EAEA,IAAI,QAAgB,MAAoB;AACtC,SAAK,YAAY,QAAQ,IAAI;AAC7B,WAAO;AAAA,EACT;AAAA,EAEA,YAAY,QAAgB,MAAsB;AAChD,SAAK,KAAK,cAAc,eAAe,KAAK,KAAK,cAAc,gBAAgB,CAAC;AAEhF,UAAM,SAAS,KAAK,WAAW,KAAK;AAEpC,SAAK,KAAK,cAAc,aAAa,KAAK;AAAA,MACxC,GAAG;AAAA,QACD,IAAI,MAAM,KAAK;AAAA,QACf,QAAQ;AAAA,QACR,MAAM;AAAA,MACR;AAAA,IACF,CAAC;AAED,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,KAAa,QAAgB,MAAoB;AACtD,SAAK,KAAK,cAAc,eAAe,KAAK,KAAK,cAAc,gBAAgB,CAAC;AAEhF,UAAM,YAAY,KAAK,KAAK,cAAc,aAAa;AAAA,MACrD,CAAC,QAAQ,KAAK,UAAU,GAAG,KAAK;AAAA,IAClC;AACA,eAAW,YAAY,WAAW;AAChC,eAAS,EAAE,KAAK,MAAM,KAAK,UAAU,QAAQ,IAAI,CAAC;AAAA,IACpD;AAEA,SAAK,KAAK,cAAc,aAAa,KAAK;AAAA,MACxC,GAAG;AAAA,QACD,IAAI,MAAM,GAAG;AAAA,QACb,QAAQ;AAAA,QACR,MAAM;AAAA,MACR;AAAA,IACF,CAAC;AAED,WAAO;AAAA,EACT;AAAA,EAEA,UAAgB;AAAA,EAAC;AAAA,EAEjB,IAAY,UAA8B;AACxC,UAAM,OAAO,KAAK,KAAK,cAAc;AACrC,QAAI,CAAC,QAAQ,KAAK,WAAW,EAAG,QAAO;AACvC,UAAM,SAAS,KAAK,YAAY,CAAC,QAAQ,KAAK,UAAU,GAAG,CAAC,EAAE,MAAM;AACpE,WAAO,SAAS,KAAK,UAAU,MAAM,IAAI;AAAA,EAC3C;AAAA,EAEQ,UAAU,KAAoC;AACpD,UAAM,QAAQ,UAAU,KAAK,IAAI,EAAE,EAAE;AACrC,QAAI,SAAS,MAAM;AACjB,YAAM,IAAI,MAAM,mCAAmC,IAAI,EAAE,EAAE,EAAE;AAAA,IAC/D;AACA,WAAO,IAAI,SAAS,MAAM,CAAC,CAAC;AAAA,EAC9B;AACF;",
|
|
5
|
-
"names": []
|
|
6
|
-
}
|
|
1
|
+
{"version":3,"file":"excel-xml-relationship.js","sourceRoot":"","sources":["..\\..\\src\\xml\\excel-xml-relationship.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { ExcelXml, ExcelXmlSharedStringData } from "../types";
|
|
2
2
|
import "@simplysm/core-common";
|
|
3
3
|
/**
|
|
4
|
-
*
|
|
5
|
-
*
|
|
4
|
+
* xl/sharedStrings.xml을 관리하는 클래스.
|
|
5
|
+
* 문자열 중복을 방지하여 파일 크기를 최적화한다.
|
|
6
6
|
*/
|
|
7
7
|
export declare class ExcelXmlSharedString implements ExcelXml {
|
|
8
8
|
data: ExcelXmlSharedStringData;
|
|
@@ -1,61 +1,63 @@
|
|
|
1
1
|
import "@simplysm/core-common";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
2
|
+
/**
|
|
3
|
+
* xl/sharedStrings.xml을 관리하는 클래스.
|
|
4
|
+
* 문자열 중복을 방지하여 파일 크기를 최적화한다.
|
|
5
|
+
*/
|
|
6
|
+
export class ExcelXmlSharedString {
|
|
7
|
+
data;
|
|
8
|
+
_stringIndexesMap;
|
|
9
|
+
constructor(data) {
|
|
10
|
+
if (data === undefined) {
|
|
11
|
+
this.data = {
|
|
12
|
+
sst: {
|
|
13
|
+
$: {
|
|
14
|
+
xmlns: "http://schemas.openxmlformats.org/spreadsheetml/2006/main",
|
|
15
|
+
},
|
|
16
|
+
},
|
|
17
|
+
};
|
|
12
18
|
}
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
19
|
+
else {
|
|
20
|
+
this.data = data;
|
|
21
|
+
}
|
|
22
|
+
this._stringIndexesMap = this.data.sst.si
|
|
23
|
+
? this.data.sst.si
|
|
24
|
+
.map((tag, id) => ({ id, tag }))
|
|
25
|
+
.filter((item) => !this._getHasInnerStyleOnSiTag(item.tag))
|
|
26
|
+
.toArrayMap((item) => this._getStringFromSiTag(item.tag), (item) => item.id)
|
|
27
|
+
: new Map();
|
|
28
|
+
}
|
|
29
|
+
getIdByString(str) {
|
|
30
|
+
return this._stringIndexesMap.get(str)?.[0];
|
|
31
|
+
}
|
|
32
|
+
getStringById(id) {
|
|
33
|
+
const si = this.data.sst.si?.[id];
|
|
34
|
+
return si != null ? this._getStringFromSiTag(si) : undefined;
|
|
35
|
+
}
|
|
36
|
+
add(str) {
|
|
37
|
+
this.data.sst.si = this.data.sst.si ?? [];
|
|
38
|
+
const newLength = this.data.sst.si.push({ t: [str] });
|
|
39
|
+
const arr = this._stringIndexesMap.getOrCreate(str, []);
|
|
40
|
+
arr.push(newLength - 1);
|
|
41
|
+
return newLength - 1;
|
|
16
42
|
}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
this.data.sst.si = this.data.sst.si ?? [];
|
|
33
|
-
const newLength = this.data.sst.si.push({ t: [str] });
|
|
34
|
-
const arr = this._stringIndexesMap.getOrCreate(str, []);
|
|
35
|
-
arr.push(newLength - 1);
|
|
36
|
-
return newLength - 1;
|
|
37
|
-
}
|
|
38
|
-
cleanup() {
|
|
39
|
-
}
|
|
40
|
-
_getStringFromSiTag(si) {
|
|
41
|
-
if ("t" in si) {
|
|
42
|
-
return this._getStringFromTTag(si.t);
|
|
43
|
-
} else {
|
|
44
|
-
return si.r.map((item) => this._getStringFromTTag(item.t)).join("");
|
|
43
|
+
cleanup() { }
|
|
44
|
+
_getStringFromSiTag(si) {
|
|
45
|
+
if ("t" in si) {
|
|
46
|
+
return this._getStringFromTTag(si.t);
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
return si.r.map((item) => this._getStringFromTTag(item.t)).join("");
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
_getStringFromTTag(t) {
|
|
53
|
+
const firstItem = t[0];
|
|
54
|
+
if (typeof firstItem === "string") {
|
|
55
|
+
return firstItem;
|
|
56
|
+
}
|
|
57
|
+
return firstItem._ ?? " ";
|
|
45
58
|
}
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
const firstItem = t[0];
|
|
49
|
-
if (typeof firstItem === "string") {
|
|
50
|
-
return firstItem;
|
|
59
|
+
_getHasInnerStyleOnSiTag(si) {
|
|
60
|
+
return Object.keys(si).some((item) => item !== "t");
|
|
51
61
|
}
|
|
52
|
-
return firstItem._ ?? " ";
|
|
53
|
-
}
|
|
54
|
-
_getHasInnerStyleOnSiTag(si) {
|
|
55
|
-
return Object.keys(si).some((item) => item !== "t");
|
|
56
|
-
}
|
|
57
62
|
}
|
|
58
|
-
|
|
59
|
-
ExcelXmlSharedString
|
|
60
|
-
};
|
|
61
|
-
//# sourceMappingURL=excel-xml-shared-string.js.map
|
|
63
|
+
//# sourceMappingURL=excel-xml-shared-string.js.map
|