@node-projects/excelforge 3.0.0 → 3.2.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/index.d.ts CHANGED
@@ -11,13 +11,15 @@ export { worksheetToJson, workbookToJson } from './features/JsonModule.js';
11
11
  export type { JsonExportOptions } from './features/JsonModule.js';
12
12
  export { worksheetToHtml, workbookToHtml } from './features/HtmlModule.js';
13
13
  export type { HtmlExportOptions, WorkbookHtmlExportOptions } from './features/HtmlModule.js';
14
+ export { worksheetToPdf, workbookToPdf } from './features/PdfModule.js';
15
+ export type { PdfExportOptions, PdfWorkbookOptions } from './features/PdfModule.js';
14
16
  export { FormulaEngine } from './features/FormulaEngine.js';
15
17
  export { encryptWorkbook, decryptWorkbook, isEncrypted } from './features/Encryption.js';
16
18
  export type { EncryptionOptions } from './features/Encryption.js';
17
19
  export { saveChartTemplate, applyChartTemplate, serializeChartTemplate, deserializeChartTemplate } from './features/ChartBuilder.js';
18
20
  export { signPackage, signVbaProject, signWorkbook, generateTestCertificate } from './features/Signing.js';
19
21
  export type { SigningOptions, SignResult } from './features/Signing.js';
20
- export type { CellValue, ErrorValue, Cell, RichTextRun, CellStyle, Font, Fill, PatternFill, GradientFill, GradientStop, Border, BorderSide, BorderStyle, Alignment, NumberFormat, Color, FillPattern, HorizontalAlign, VerticalAlign, MergeRange, Image, CellImage, ImageFormat, ImagePosition, Chart, ChartType, ChartSeries, ChartAxis, ChartPosition, ChartDataLabels, ChartTemplate, ChartModernStyle, ChartColorPalette, ConditionalFormat, CFType, CFColorScale, CFDataBar, CFIconSet, IconSet, Table, TableColumn, TableStyle, PivotTable, PivotDataField, PivotFunction, Sparkline, SparklineType, DataValidation, ValidationType, ValidationOperator, AutoFilter, Comment, Hyperlink, FormControl, FormControlType, FormControlAnchor, NamedRange, Connection, ConnectionType, CommandType, PowerQuery, ColumnDef, RowDef, FreezePane, SplitPane, SheetProtection, PageSetup, PageMargins, PageBreak, HeaderFooter, PrintOptions, SheetView, PaperSize, Orientation, WorkbookProperties, WorksheetOptions, Shape, ShapeType, WordArt, WordArtPreset, Theme, ThemeColor, CustomIcon, CFCustomIconSet, TableSlicer, PivotSlicer, CustomPivotStyle, PivotStyleElement, QueryTable, ExternalLink, LocaleSettings, MathEquation, MathElement, MathElementType, } from './core/types.js';
22
+ export type { CellValue, ErrorValue, Cell, RichTextRun, CellStyle, Font, Fill, PatternFill, GradientFill, GradientStop, Border, BorderSide, BorderStyle, Alignment, NumberFormat, Color, FillPattern, HorizontalAlign, VerticalAlign, MergeRange, Image, CellImage, ImageFormat, ImagePosition, Chart, ChartType, ChartSeries, ChartAxis, ChartPosition, ChartDataLabels, ChartTemplate, ChartModernStyle, ChartColorPalette, ConditionalFormat, CFType, CFColorScale, CFDataBar, CFIconSet, IconSet, Table, TableColumn, TableStyle, PivotTable, PivotDataField, PivotFunction, Sparkline, SparklineType, DataValidation, ValidationType, ValidationOperator, AutoFilter, Comment, Hyperlink, FormControl, FormControlType, FormControlAnchor, NamedRange, Connection, ConnectionType, CommandType, PowerQuery, ColumnDef, RowDef, FreezePane, SplitPane, SheetProtection, PageSetup, PageMargins, PageBreak, HeaderFooter, PrintOptions, SheetView, PaperSize, Orientation, WorkbookProperties, WorksheetOptions, CalcSettings, CalcMode, OleObject, Shape, ShapeType, WordArt, WordArtPreset, Theme, ThemeColor, CustomIcon, CFCustomIconSet, TableSlicer, PivotSlicer, CustomPivotStyle, PivotStyleElement, QueryTable, ExternalLink, LocaleSettings, MathEquation, MathElement, MathElementType, } from './core/types.js';
21
23
  export { VbaProject } from './vba/VbaProject.js';
22
- export type { VbaModule, VbaModuleType } from './vba/VbaProject.js';
24
+ export type { VbaModule, VbaModuleType, VbaFormControl } from './vba/VbaProject.js';
23
25
  export { colIndexToLetter, colLetterToIndex, cellRefToIndices, indicesToCellRef, parseRange, dateToSerial, pxToEmu, base64ToBytes, bytesToBase64, } from './utils/helpers.js';
package/dist/index.js CHANGED
@@ -8,6 +8,7 @@ export { a1ToR1C1, r1c1ToA1, formulaToR1C1, formulaFromR1C1, } from './utils/hel
8
8
  export { worksheetToCsv, csvToWorkbook } from './features/CsvModule.js';
9
9
  export { worksheetToJson, workbookToJson } from './features/JsonModule.js';
10
10
  export { worksheetToHtml, workbookToHtml } from './features/HtmlModule.js';
11
+ export { worksheetToPdf, workbookToPdf } from './features/PdfModule.js';
11
12
  export { FormulaEngine } from './features/FormulaEngine.js';
12
13
  export { encryptWorkbook, decryptWorkbook, isEncrypted } from './features/Encryption.js';
13
14
  export { saveChartTemplate, applyChartTemplate, serializeChartTemplate, deserializeChartTemplate } from './features/ChartBuilder.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AA2BA,OAAO,EAAE,QAAQ,EAAE,MAAU,oBAAoB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAS,qBAAqB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAS,iBAAiB,CAAC;AAG/C,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACnF,OAAO,EACL,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,eAAe,GACnD,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExE,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAI3E,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAI3E,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAG5D,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAIzF,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAGrI,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAiH3G,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAIjD,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,EACV,YAAY,EACZ,OAAO,EACP,aAAa,EACb,aAAa,GACd,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AA2BA,OAAO,EAAE,QAAQ,EAAE,MAAU,oBAAoB,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAS,qBAAqB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAS,iBAAiB,CAAC;AAG/C,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACnF,OAAO,EACL,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,eAAe,GACnD,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExE,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAI3E,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAI3E,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAIxE,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAG5D,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAIzF,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAGrI,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAoH3G,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAIjD,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,UAAU,EACV,YAAY,EACZ,OAAO,EACP,aAAa,EACb,aAAa,GACd,MAAM,oBAAoB,CAAC"}
@@ -1,8 +1,20 @@
1
- export type VbaModuleType = 'document' | 'standard' | 'class';
1
+ export type VbaModuleType = 'document' | 'standard' | 'class' | 'userform';
2
2
  export interface VbaModule {
3
3
  name: string;
4
4
  type: VbaModuleType;
5
5
  code: string;
6
+ designerData?: Uint8Array;
7
+ controls?: VbaFormControl[];
8
+ _formStreams?: Map<string, Uint8Array>;
9
+ }
10
+ export interface VbaFormControl {
11
+ type: 'CommandButton' | 'TextBox' | 'Label' | 'ComboBox' | 'ListBox' | 'CheckBox' | 'OptionButton' | 'Frame' | 'Image' | 'SpinButton' | 'ScrollBar' | 'ToggleButton';
12
+ name: string;
13
+ caption?: string;
14
+ left?: number;
15
+ top?: number;
16
+ width?: number;
17
+ height?: number;
6
18
  }
7
19
  export declare class VbaProject {
8
20
  modules: VbaModule[];
@@ -28,6 +28,9 @@ function moduleAttributes(m) {
28
28
  : '0{00020820-0000-0000-C000-000000000046}';
29
29
  lines.push(`Attribute VB_Base = "${baseClsid}"`, 'Attribute VB_GlobalNameSpace = False', 'Attribute VB_Creatable = False', 'Attribute VB_PredeclaredId = True', 'Attribute VB_Exposed = True', 'Attribute VB_TemplateDerived = False', 'Attribute VB_Customizable = True');
30
30
  }
31
+ else if (m.type === 'userform') {
32
+ lines.push(`Attribute VB_Base = "0{F8A47041-B2A6-11CE-8027-00AA00611080}"`, 'Attribute VB_GlobalNameSpace = False', 'Attribute VB_Creatable = False', 'Attribute VB_PredeclaredId = True', 'Attribute VB_Exposed = False', 'Attribute VB_TemplateDerived = False', 'Attribute VB_Customizable = False');
33
+ }
31
34
  else if (m.type === 'class') {
32
35
  lines.push('Attribute VB_GlobalNameSpace = False', 'Attribute VB_Creatable = False', 'Attribute VB_PredeclaredId = False', 'Attribute VB_Exposed = False');
33
36
  }
@@ -84,6 +87,21 @@ export class VbaProject {
84
87
  vbaProjectStream, dirStream, ...moduleStreams,
85
88
  projectStream, wmStream,
86
89
  ];
90
+ for (const m of allModules) {
91
+ if (m.type === 'userform') {
92
+ if (m._formStreams && m._formStreams.size > 0) {
93
+ for (const [streamName, data] of m._formStreams) {
94
+ allStreams.push({ name: streamName, data, storage: m.name });
95
+ }
96
+ }
97
+ else {
98
+ allStreams.push({ name: '\x01CompObj', data: buildCompObj(), storage: m.name });
99
+ allStreams.push({ name: '\x03VBFrame', data: enc.encode(buildVBFrameText(m)), storage: m.name });
100
+ allStreams.push({ name: 'f', data: buildFormControlBinary(m), storage: m.name });
101
+ allStreams.push({ name: 'o', data: buildOleObjectBlob(m), storage: m.name });
102
+ }
103
+ }
104
+ }
87
105
  return buildCfb(allStreams);
88
106
  }
89
107
  _buildDirStream(modules) {
@@ -118,7 +136,7 @@ export class VbaProject {
118
136
  b.push(...rec(0x0031, u32le(0)));
119
137
  b.push(...rec(0x001E, u32le(0)));
120
138
  b.push(...rec(0x002C, u16le(0xFFFF)));
121
- if (m.type === 'document') {
139
+ if (m.type === 'document' || m.type === 'userform') {
122
140
  b.push(...rec(0x0022, []));
123
141
  }
124
142
  else {
@@ -142,6 +160,10 @@ export class VbaProject {
142
160
  if (m.type === 'class') {
143
161
  lines.push(`Class=${m.name}`);
144
162
  }
163
+ else if (m.type === 'userform') {
164
+ lines.push(`Package={AC9F2F90-E877-11CE-9F68-00AA00574A4F}`);
165
+ lines.push(`BaseClass=${m.name}`);
166
+ }
145
167
  else {
146
168
  lines.push(`Module=${m.name}`);
147
169
  }
@@ -187,6 +209,7 @@ export class VbaProject {
187
209
  return vba;
188
210
  }
189
211
  const classNames = new Set();
212
+ const userFormNames = new Set();
190
213
  const projectData = streamMap.get('PROJECT');
191
214
  if (projectData) {
192
215
  const projectText = dec.decode(projectData);
@@ -194,6 +217,9 @@ export class VbaProject {
194
217
  const m = line.match(/^Class=(.+)$/);
195
218
  if (m)
196
219
  classNames.add(m[1]);
220
+ const uf = line.match(/^BaseClass=(.+)$/);
221
+ if (uf)
222
+ userFormNames.add(uf[1]);
197
223
  }
198
224
  }
199
225
  const moduleInfos = parseDirStream(dirData);
@@ -212,12 +238,28 @@ export class VbaProject {
212
238
  code = dec.decode(streamData.subarray(info.offset));
213
239
  }
214
240
  const stripped = stripAttributes(code);
215
- const type = classNames.has(info.name) ? 'class' : info.type;
216
- vba.modules.push({
241
+ const type = userFormNames.has(info.name) ? 'userform' : classNames.has(info.name) ? 'class' : info.type;
242
+ const mod = {
217
243
  name: info.name,
218
244
  type,
219
245
  code: stripped,
220
- });
246
+ };
247
+ if (type === 'userform') {
248
+ const formStreams = new Map();
249
+ for (const [key, data] of streamMap) {
250
+ if (key.startsWith(info.name + '/')) {
251
+ const streamName = key.substring(info.name.length + 1);
252
+ formStreams.set(streamName, data);
253
+ }
254
+ }
255
+ if (formStreams.size > 0)
256
+ mod._formStreams = formStreams;
257
+ const designerKey = `${info.name}/f`;
258
+ const designerData = streamMap.get(designerKey);
259
+ if (designerData)
260
+ mod.designerData = designerData;
261
+ }
262
+ vba.modules.push(mod);
221
263
  }
222
264
  vba._dirty = false;
223
265
  return vba;
@@ -278,4 +320,257 @@ function stripAttributes(code) {
278
320
  const trimmed = lines.slice(start).join('\n');
279
321
  return trimmed;
280
322
  }
323
+ const USERFORM_CLSID_STR = '{C62A69F0-16DC-11CE-9E98-00AA00574A4F}';
324
+ const CLSID_CACHE_INDEX = {
325
+ Image: 12, Frame: 14, SpinButton: 16, CommandButton: 17,
326
+ Label: 21, TextBox: 23, ListBox: 24, ComboBox: 25,
327
+ CheckBox: 26, OptionButton: 27, ToggleButton: 28, ScrollBar: 47,
328
+ };
329
+ function buildCompObj() {
330
+ return new Uint8Array([
331
+ 0x01, 0x00, 0xFE, 0xFF, 0x03, 0x0A, 0x00, 0x00,
332
+ 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00,
333
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
334
+ 0x00, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x00,
335
+ 0x4D, 0x69, 0x63, 0x72, 0x6F, 0x73, 0x6F, 0x66,
336
+ 0x74, 0x20, 0x46, 0x6F, 0x72, 0x6D, 0x73, 0x20,
337
+ 0x32, 0x2E, 0x30, 0x20, 0x46, 0x6F, 0x72, 0x6D,
338
+ 0x00, 0x10, 0x00, 0x00, 0x00,
339
+ 0x45, 0x6D, 0x62,
340
+ 0x65, 0x64, 0x64, 0x65, 0x64, 0x20, 0x4F, 0x62,
341
+ 0x6A, 0x65, 0x63, 0x74, 0x00, 0x00, 0x00, 0x00,
342
+ 0x00, 0xF4, 0x39, 0xB2, 0x71, 0x00, 0x00, 0x00,
343
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
344
+ 0x00,
345
+ ]);
346
+ }
347
+ function buildVBFrameText(m) {
348
+ const lines = [
349
+ 'VERSION 5.00',
350
+ `Begin ${USERFORM_CLSID_STR} ${m.name} `,
351
+ ` Caption = "${m.name}"`,
352
+ ' ClientHeight = 3015',
353
+ ' ClientLeft = 120',
354
+ ' ClientTop = 465',
355
+ ' ClientWidth = 4560',
356
+ ' StartUpPosition = 1 \'CenterOwner',
357
+ ' TypeInfoVer = 2',
358
+ 'End',
359
+ ];
360
+ return lines.join('\r\n') + '\r\n';
361
+ }
362
+ function buildFormControlBinary(m) {
363
+ const controls = m.controls ?? [];
364
+ const numControls = controls.length;
365
+ const oBlobs = controls.map(ctrl => buildSingleControlOBlob(ctrl));
366
+ const b = [];
367
+ b.push(0x00);
368
+ b.push(0x04);
369
+ const cbPos = b.length;
370
+ b.push(0x00, 0x00);
371
+ const PROP_fNextAvailableID = 1 << 3;
372
+ const PROP_fDisplayedSize = 1 << 10;
373
+ const PROP_fLogicalSize = 1 << 11;
374
+ const PROP_fShapeCookie = 1 << 26;
375
+ const PROP_fDrawBuffer = 1 << 27;
376
+ const propMask = PROP_fNextAvailableID | PROP_fDisplayedSize | PROP_fLogicalSize
377
+ | PROP_fShapeCookie | PROP_fDrawBuffer;
378
+ b.push(propMask & 0xFF, (propMask >> 8) & 0xFF, (propMask >> 16) & 0xFF, (propMask >> 24) & 0xFF);
379
+ b.push(...u32le(numControls + 1));
380
+ b.push(...u32le(0));
381
+ b.push(...u32le(32000));
382
+ let maxR = 200, maxB = 120;
383
+ for (const c of controls) {
384
+ const r = (c.left ?? 0) + (c.width ?? 72);
385
+ const bt = (c.top ?? 0) + (c.height ?? 24);
386
+ if (r > maxR)
387
+ maxR = r;
388
+ if (bt > maxB)
389
+ maxB = bt;
390
+ }
391
+ const formWidthHimetric = (maxR + 20) * 26;
392
+ const formHeightHimetric = (maxB + 20) * 26;
393
+ b.push(...u32le(formWidthHimetric));
394
+ b.push(...u32le(formHeightHimetric));
395
+ b.push(...u32le(0));
396
+ b.push(...u32le(0));
397
+ const cbForm = b.length - 4;
398
+ b[cbPos] = cbForm & 0xFF;
399
+ b[cbPos + 1] = (cbForm >> 8) & 0xFF;
400
+ b.push(...u16le(0));
401
+ b.push(...u32le(numControls));
402
+ const cbBytesPos = b.length;
403
+ b.push(0x00, 0x00, 0x00, 0x00);
404
+ const countedStart = b.length;
405
+ for (let i = 0; i < numControls; i++) {
406
+ b.push(0x00);
407
+ b.push(0x01);
408
+ }
409
+ while ((b.length - countedStart) % 4 !== 0)
410
+ b.push(0x00);
411
+ for (let i = 0; i < numControls; i++) {
412
+ const ctrl = controls[i];
413
+ const nameBytes = enc.encode(ctrl.name);
414
+ const cacheIdx = CLSID_CACHE_INDEX[ctrl.type] ?? CLSID_CACHE_INDEX['CommandButton'];
415
+ b.push(0x00, 0x00);
416
+ const cbSitePos = b.length;
417
+ b.push(0x00, 0x00);
418
+ const siteMask = (1 << 0) | (1 << 2) | (1 << 5) | (1 << 6) | (1 << 7) | (1 << 8);
419
+ b.push(siteMask & 0xFF, (siteMask >> 8) & 0xFF, (siteMask >> 16) & 0xFF, (siteMask >> 24) & 0xFF);
420
+ b.push(...u32le(nameBytes.length | 0x80000000));
421
+ b.push(...u32le(i + 1));
422
+ b.push(...u32le(oBlobs[i].length));
423
+ b.push(i & 0xFF, (i >> 8) & 0xFF);
424
+ b.push(cacheIdx & 0xFF, (cacheIdx >> 8) & 0xFF);
425
+ b.push(...nameBytes);
426
+ while ((b.length - countedStart) % 4 !== 0)
427
+ b.push(0x00);
428
+ const left = (ctrl.left ?? (10 + i * 80)) * 26;
429
+ const top = (ctrl.top ?? (10 + i * 30)) * 26;
430
+ b.push(...u32le(left));
431
+ b.push(...u32le(top));
432
+ const cbSite = b.length - cbSitePos - 2;
433
+ b[cbSitePos] = cbSite & 0xFF;
434
+ b[cbSitePos + 1] = (cbSite >> 8) & 0xFF;
435
+ }
436
+ const cbBytes = b.length - countedStart;
437
+ b[cbBytesPos] = cbBytes & 0xFF;
438
+ b[cbBytesPos + 1] = (cbBytes >> 8) & 0xFF;
439
+ b[cbBytesPos + 2] = (cbBytes >> 16) & 0xFF;
440
+ b[cbBytesPos + 3] = (cbBytes >> 24) & 0xFF;
441
+ return new Uint8Array(b);
442
+ }
443
+ function buildSingleControlOBlob(ctrl) {
444
+ const cacheIdx = CLSID_CACHE_INDEX[ctrl.type] ?? CLSID_CACHE_INDEX['CommandButton'];
445
+ if (cacheIdx === 17)
446
+ return buildCommandButtonOBlob(ctrl);
447
+ if (cacheIdx === 21)
448
+ return buildLabelOBlob(ctrl);
449
+ return buildMorphDataOBlob(ctrl);
450
+ }
451
+ function appendTextProps(b) {
452
+ b.push(0x00, 0x02);
453
+ const cbTPPos = b.length;
454
+ b.push(0x00, 0x00);
455
+ b.push(0x05, 0x00, 0x00, 0x00);
456
+ const fontNameBytes = enc.encode('Tahoma');
457
+ b.push(...u32le(fontNameBytes.length | 0x80000000));
458
+ b.push(0xA0, 0x00, 0x00, 0x00);
459
+ b.push(...fontNameBytes);
460
+ while (b.length % 4 !== 0)
461
+ b.push(0x00);
462
+ const cbTP = b.length - cbTPPos - 2;
463
+ b[cbTPPos] = cbTP & 0xFF;
464
+ b[cbTPPos + 1] = (cbTP >> 8) & 0xFF;
465
+ }
466
+ function buildCommandButtonOBlob(ctrl) {
467
+ const b = [];
468
+ const hasCaption = !!ctrl.caption;
469
+ b.push(0x00, 0x02);
470
+ const cbPos = b.length;
471
+ b.push(0x00, 0x00);
472
+ let mask = (1 << 5);
473
+ if (hasCaption)
474
+ mask |= (1 << 3);
475
+ b.push(mask & 0xFF, (mask >> 8) & 0xFF, (mask >> 16) & 0xFF, (mask >> 24) & 0xFF);
476
+ if (hasCaption) {
477
+ const capBytes = enc.encode(ctrl.caption);
478
+ b.push(...u32le(capBytes.length | 0x80000000));
479
+ }
480
+ if (hasCaption) {
481
+ const capBytes = enc.encode(ctrl.caption);
482
+ b.push(...capBytes);
483
+ while (b.length % 4 !== 0)
484
+ b.push(0x00);
485
+ }
486
+ const width = (ctrl.width ?? 72) * 26;
487
+ const height = (ctrl.height ?? 24) * 26;
488
+ b.push(...u32le(width));
489
+ b.push(...u32le(height));
490
+ const cb = b.length - cbPos - 2;
491
+ b[cbPos] = cb & 0xFF;
492
+ b[cbPos + 1] = (cb >> 8) & 0xFF;
493
+ appendTextProps(b);
494
+ return new Uint8Array(b);
495
+ }
496
+ function buildLabelOBlob(ctrl) {
497
+ const b = [];
498
+ const hasCaption = !!ctrl.caption;
499
+ b.push(0x00, 0x02);
500
+ const cbPos = b.length;
501
+ b.push(0x00, 0x00);
502
+ let mask = (1 << 5);
503
+ if (hasCaption)
504
+ mask |= (1 << 3);
505
+ b.push(mask & 0xFF, (mask >> 8) & 0xFF, (mask >> 16) & 0xFF, (mask >> 24) & 0xFF);
506
+ if (hasCaption) {
507
+ const capBytes = enc.encode(ctrl.caption);
508
+ b.push(...u32le(capBytes.length | 0x80000000));
509
+ }
510
+ if (hasCaption) {
511
+ const capBytes = enc.encode(ctrl.caption);
512
+ b.push(...capBytes);
513
+ while (b.length % 4 !== 0)
514
+ b.push(0x00);
515
+ }
516
+ const width = (ctrl.width ?? 80) * 26;
517
+ const height = (ctrl.height ?? 18) * 26;
518
+ b.push(...u32le(width));
519
+ b.push(...u32le(height));
520
+ const cb = b.length - cbPos - 2;
521
+ b[cbPos] = cb & 0xFF;
522
+ b[cbPos + 1] = (cb >> 8) & 0xFF;
523
+ appendTextProps(b);
524
+ return new Uint8Array(b);
525
+ }
526
+ function buildMorphDataOBlob(ctrl) {
527
+ const b = [];
528
+ const hasCaption = !!ctrl.caption;
529
+ b.push(0x00, 0x02);
530
+ const cbPos = b.length;
531
+ b.push(0x00, 0x00);
532
+ let part1 = (1 << 0) | (1 << 8);
533
+ if (hasCaption)
534
+ part1 |= (1 << 23);
535
+ part1 |= (1 << 31);
536
+ b.push(part1 & 0xFF, (part1 >> 8) & 0xFF, (part1 >> 16) & 0xFF, (part1 >>> 24) & 0xFF);
537
+ b.push(0x00, 0x00, 0x00, 0x00);
538
+ b.push(0x1B, 0x48, 0x80, 0x2C);
539
+ if (hasCaption) {
540
+ const capBytes = enc.encode(ctrl.caption);
541
+ b.push(...u32le(capBytes.length | 0x80000000));
542
+ }
543
+ const width = (ctrl.width ?? 72) * 26;
544
+ const height = (ctrl.height ?? 24) * 26;
545
+ b.push(...u32le(width));
546
+ b.push(...u32le(height));
547
+ if (hasCaption) {
548
+ const capBytes = enc.encode(ctrl.caption);
549
+ b.push(...capBytes);
550
+ while (b.length % 4 !== 0)
551
+ b.push(0x00);
552
+ }
553
+ const cb = b.length - cbPos - 2;
554
+ b[cbPos] = cb & 0xFF;
555
+ b[cbPos + 1] = (cb >> 8) & 0xFF;
556
+ appendTextProps(b);
557
+ return new Uint8Array(b);
558
+ }
559
+ function buildOleObjectBlob(m) {
560
+ const controls = m.controls ?? [];
561
+ if (controls.length === 0)
562
+ return new Uint8Array(0);
563
+ const parts = [];
564
+ for (const ctrl of controls) {
565
+ parts.push(buildSingleControlOBlob(ctrl));
566
+ }
567
+ const total = parts.reduce((s, p) => s + p.length, 0);
568
+ const result = new Uint8Array(total);
569
+ let off = 0;
570
+ for (const p of parts) {
571
+ result.set(p, off);
572
+ off += p.length;
573
+ }
574
+ return result;
575
+ }
281
576
  //# sourceMappingURL=VbaProject.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"VbaProject.js","sourceRoot":"","sources":["../../src/vba/VbaProject.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VbaProject.js","sourceRoot":"","sources":["../../src/vba/VbaProject.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@node-projects/excelforge",
3
- "version": "3.0.0",
3
+ "version": "3.2.0",
4
4
  "description": "A **complete TypeScript library** for reading and writing Excel `.xlsx` files with **zero external dependencies**. Works in browsers, Node.js, Deno, Bun, and edge runtimes.",
5
5
  "homepage": "https://github.com/node-projects/excelForge#readme",
6
6
  "bugs": {
@@ -22,7 +22,7 @@
22
22
  "bundle": "esbuild ./dist/index.js --format=esm --minify --external:fs/promises --external:zlib --platform=neutral --bundle --outfile=./dist/index-min.js"
23
23
  },
24
24
  "devDependencies": {
25
- "esbuild": "^0.27.4",
25
+ "esbuild": "^0.28.0",
26
26
  "typescript": "^6.0.2",
27
27
  "zlib": "^1.0.5"
28
28
  }