@office-open/xlsx 0.6.6 → 0.6.8

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/README.md CHANGED
@@ -67,29 +67,29 @@ DEFLATE = compressed (default), STORE = no compression.
67
67
 
68
68
  **Create + toBuffer (end-to-end)**
69
69
 
70
- | Scenario | DEFLATE sync | STORE sync | DEFLATE async | STORE async | hucre |
71
- | ---------------- | -----------: | -----------: | ------------: | -----------: | ---------: |
72
- | Simple (3 rows) | 547 ops/s | 13,823 ops/s | 558 ops/s | 14,536 ops/s | 926 ops/s |
73
- | Styled rows (20) | 645 ops/s | 11,275 ops/s | 644 ops/s | 11,576 ops/s | 960 ops/s |
74
- | Table (10×5) | 707 ops/s | 12,369 ops/s | 734 ops/s | 11,447 ops/s | 1045 ops/s |
70
+ | Scenario | DEFLATE sync | STORE sync | DEFLATE async | STORE async | hucre |
71
+ | ---------------- | -----------: | -----------: | ------------: | -----------: | --------: |
72
+ | Simple (3 rows) | 457 ops/s | 10,016 ops/s | 500 ops/s | 11,637 ops/s | 689 ops/s |
73
+ | Styled rows (20) | 472 ops/s | 10,504 ops/s | 627 ops/s | 9,479 ops/s | 862 ops/s |
74
+ | Table (10×5) | 675 ops/s | 10,518 ops/s | 681 ops/s | 10,241 ops/s | 877 ops/s |
75
75
 
76
76
  **Large Files — Create + toBuffer**
77
77
 
78
78
  | Scenario | DEFLATE sync | STORE sync | DEFLATE async | STORE async | hucre |
79
79
  | -------------------- | -----------: | ----------: | ------------: | ----------: | ----------: |
80
- | 2000 rows | 50.2 ops/s | 211.1 ops/s | 20.6 ops/s | 207.5 ops/s | 85.0 ops/s |
81
- | 200×10 table | 167.4 ops/s | 623.0 ops/s | 190.7 ops/s | 772.3 ops/s | 253.2 ops/s |
82
- | 20 sheets × 100 rows | 87.2 ops/s | 196.4 ops/s | 93.7 ops/s | 248.6 ops/s | 87.7 ops/s |
80
+ | 2000 rows | 47.3 ops/s | 164.9 ops/s | 19.0 ops/s | 162.9 ops/s | 82.8 ops/s |
81
+ | 200×10 table | 148.2 ops/s | 510.5 ops/s | 160.7 ops/s | 691.7 ops/s | 226.4 ops/s |
82
+ | 20 sheets × 100 rows | 81.3 ops/s | 179.5 ops/s | 87.8 ops/s | 223.5 ops/s | 79.9 ops/s |
83
83
 
84
84
  **Large Data — 100,000 rows × 20 columns (2M cells)**
85
85
 
86
86
  | Method | Speed | Speedup |
87
87
  | ------------- | ----------: | --------: |
88
- | DEFLATE sync | 0.274 ops/s | 0.73x |
89
- | STORE sync | 0.558 ops/s | **1.48x** |
90
- | DEFLATE async | 0.281 ops/s | 0.75x |
91
- | STORE async | 0.694 ops/s | **1.85x** |
92
- | hucre | 0.376 ops/s | |
88
+ | DEFLATE sync | 0.250 ops/s | 0.68x |
89
+ | STORE sync | 0.516 ops/s | **1.40x** |
90
+ | DEFLATE async | 0.270 ops/s | 0.73x |
91
+ | STORE async | 0.664 ops/s | **1.80x** |
92
+ | hucre | 0.369 ops/s | |
93
93
 
94
94
  ## License
95
95
 
@@ -1,5 +1,5 @@
1
1
  import * as _$_office_open_core0 from "@office-open/core";
2
- import { AppProperties, BaseXmlComponent, ChartCollection, ChartSpaceOptions, Context, IXmlableObject, IgnoreIfEmptyXmlComponent, OutputByType, OutputByType as OutputByType$1, OutputType, OutputType as OutputType$1, ParsedArchive, Relationships } from "@office-open/core";
2
+ import { AppProperties, BaseXmlComponent, ChartCollection, ChartSpaceOptions, Context, IgnoreIfEmptyXmlComponent, OutputByType, OutputByType as OutputByType$1, OutputType, OutputType as OutputType$1, ParsedArchive, Relationships } from "@office-open/core";
3
3
  import { Element } from "@office-open/xml";
4
4
  import { DataType } from "undio";
5
5
  import { Buffer } from "\u0000polyfill-node.buffer";
@@ -14,7 +14,8 @@ declare class ContentTypes extends BaseXmlComponent {
14
14
  addTheme(index?: number): void;
15
15
  addChart(index: number): void;
16
16
  addDrawing(index: number): void;
17
- prepForXml(_context: Context): IXmlableObject;
17
+ addImageType(extension: "png" | "jpeg"): void;
18
+ toXml(_context: Context): string;
18
19
  }
19
20
  //#endregion
20
21
  //#region src/file/core-properties.d.ts
@@ -30,7 +31,7 @@ interface CorePropertiesOptions {
30
31
  declare class CoreProperties extends BaseXmlComponent {
31
32
  private readonly options;
32
33
  constructor(options: CorePropertiesOptions);
33
- prepForXml(_context: Context): IXmlableObject;
34
+ toXml(_context: Context): string;
34
35
  }
35
36
  //#endregion
36
37
  //#region src/file/media/media.d.ts
@@ -55,7 +56,6 @@ declare class SharedStrings extends BaseXmlComponent {
55
56
  register(s: string): number;
56
57
  get count(): number;
57
58
  toXml(_context: Context): string;
58
- prepForXml(_context: Context): IXmlableObject;
59
59
  }
60
60
  //#endregion
61
61
  //#region src/file/styles.d.ts
@@ -120,21 +120,12 @@ declare class Styles extends BaseXmlComponent {
120
120
  private fontXmlStr;
121
121
  private borderXmlStr;
122
122
  private alignmentXmlStr;
123
- prepForXml(_context: Context): IXmlableObject;
124
- private buildFonts;
125
- private fontXml;
126
- private buildFills;
127
- private buildBorders;
128
- private borderXml;
129
- private buildCellXfs;
130
- private alignmentXml;
131
123
  }
132
124
  //#endregion
133
125
  //#region src/file/theme.d.ts
134
126
  declare class DefaultTheme extends BaseXmlComponent {
135
127
  constructor();
136
128
  toXml(_context: Context): string;
137
- prepForXml(_context: Context): IXmlableObject;
138
129
  }
139
130
  //#endregion
140
131
  //#region src/file/workbook.d.ts
@@ -147,7 +138,7 @@ interface SheetDefinition {
147
138
  declare class WorkbookXml extends BaseXmlComponent {
148
139
  private readonly sheets;
149
140
  constructor(sheets: readonly SheetDefinition[]);
150
- prepForXml(_context: Context): IXmlableObject;
141
+ toXml(_context: Context): string;
151
142
  }
152
143
  //#endregion
153
144
  //#region src/file/worksheet.d.ts
@@ -169,6 +160,19 @@ interface CellOptions {
169
160
  readonly reference?: string;
170
161
  readonly styleIndex?: number;
171
162
  readonly style?: StyleOptions;
163
+ readonly formula?: FormulaOptions;
164
+ }
165
+ declare const FormulaType: {
166
+ readonly NORMAL: "normal";
167
+ readonly ARRAY: "array";
168
+ readonly SHARED: "shared";
169
+ };
170
+ type FormulaType = (typeof FormulaType)[keyof typeof FormulaType];
171
+ interface FormulaOptions {
172
+ readonly formula: string;
173
+ readonly type?: FormulaType;
174
+ readonly reference?: string;
175
+ readonly sharedIndex?: number;
172
176
  }
173
177
  interface MergeCellOptions {
174
178
  readonly from: {
@@ -248,12 +252,11 @@ declare class Worksheet extends IgnoreIfEmptyXmlComponent {
248
252
  constructor(options: WorksheetOptions);
249
253
  get imageOptions(): readonly WorksheetImageOptions[];
250
254
  get charts(): readonly WorksheetChartOptions[];
251
- prepForXml(context: Context): IXmlableObject | undefined;
252
255
  toXml(context: Context): string;
256
+ private buildFormulaString;
253
257
  private buildCellString;
254
258
  private defaultCellRef;
255
259
  private columnToLetter;
256
- private buildCell;
257
260
  private dateToSerialNumber;
258
261
  }
259
262
  //#endregion
@@ -345,5 +348,5 @@ declare const patchWorkbook: <T extends PatchDocumentOutputType = PatchDocumentO
345
348
  placeholderDelimiters
346
349
  }: PatchWorkbookOptions<T>) => Promise<OutputByType$1[T]>;
347
350
  //#endregion
348
- export { type AlignmentOptions, type BorderOptions, type BorderSideOptions, type CellOptions, type CellPatch, type ColumnOptions, type ConditionalFormatOptions, type CorePropertiesOptions, type DataValidationOptions, File, File as Workbook, type FillOptions, type FontOptions, type FreezePaneOptions, type IPatch, type InputDataType, type MergeCellOptions, type OutputByType, type OutputType, Packer, type PatchDocumentOutputType, PatchType, type PatchWorkbookOptions, type RowOptions, SharedStrings, type StyleOptions, Styles, type WorkbookOptions, type WorksheetChartOptions, type WorksheetOptions, type XlsxDocument, type XlsxPartRefs, columnToLetter, dateToSerialNumber, letterToColumn, parseWorkbook, parseXlsx, patchWorkbook };
349
- //# sourceMappingURL=index.d.ts.map
351
+ export { type AlignmentOptions, type BorderOptions, type BorderSideOptions, type CellOptions, type CellPatch, type ColumnOptions, type ConditionalFormatOptions, type CorePropertiesOptions, type DataValidationOptions, File, File as Workbook, type FillOptions, type FontOptions, type FormulaOptions, type FreezePaneOptions, type IPatch, type InputDataType, type MergeCellOptions, type OutputByType, type OutputType, Packer, type PatchDocumentOutputType, PatchType, type PatchWorkbookOptions, type RowOptions, SharedStrings, type StyleOptions, Styles, type WorkbookOptions, type WorksheetChartOptions, type WorksheetOptions, type XlsxDocument, type XlsxPartRefs, columnToLetter, dateToSerialNumber, letterToColumn, parseWorkbook, parseXlsx, patchWorkbook };
352
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/file/content-types.ts","../src/file/core-properties.ts","../src/file/media/media.ts","../src/file/shared-strings.ts","../src/file/styles.ts","../src/file/theme.ts","../src/file/workbook.ts","../src/file/worksheet.ts","../src/file/file.ts","../src/export/packer/packer.ts","../src/util/index.ts","../src/parse.ts","../src/patcher.ts"],"mappings":"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"}