@rowsncolumns/toolkit 24.5.17 → 24.5.19

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.
Files changed (53) hide show
  1. package/dist/cjs/excel-parser/defined-names.d.ts +18 -0
  2. package/dist/cjs/excel-parser/defined-names.d.ts.map +1 -0
  3. package/dist/cjs/excel-parser/defined-names.js +59 -0
  4. package/dist/cjs/excel-parser/interface.d.ts +7 -1
  5. package/dist/cjs/excel-parser/interface.d.ts.map +1 -1
  6. package/dist/cjs/excel-parser/plugins/xlsb/function-table.d.ts +17 -0
  7. package/dist/cjs/excel-parser/plugins/xlsb/function-table.d.ts.map +1 -0
  8. package/dist/cjs/excel-parser/plugins/xlsb/function-table.js +988 -0
  9. package/dist/cjs/excel-parser/plugins/xlsb/index.d.ts +45 -3
  10. package/dist/cjs/excel-parser/plugins/xlsb/index.d.ts.map +1 -1
  11. package/dist/cjs/excel-parser/plugins/xlsb/index.js +406 -374
  12. package/dist/cjs/excel-parser/plugins/xlsb/rgce-parser.d.ts +43 -9
  13. package/dist/cjs/excel-parser/plugins/xlsb/rgce-parser.d.ts.map +1 -1
  14. package/dist/cjs/excel-parser/plugins/xlsb/rgce-parser.js +422 -478
  15. package/dist/cjs/excel-parser/plugins/xlsx/index.d.ts.map +1 -1
  16. package/dist/cjs/excel-parser/plugins/xlsx/index.js +147 -191
  17. package/dist/cjs/excel-parser/types.d.ts +17 -0
  18. package/dist/cjs/excel-parser/types.d.ts.map +1 -1
  19. package/dist/cjs/excel-parser/workbook.d.ts +1 -0
  20. package/dist/cjs/excel-parser/workbook.d.ts.map +1 -1
  21. package/dist/cjs/excel-parser/workbook.js +4 -0
  22. package/dist/cjs/exporter/ods/ods-export.d.ts.map +1 -1
  23. package/dist/cjs/exporter/ods/ods-export.js +6 -3
  24. package/dist/cjs/exporter/xlsx/xlsx-export.d.ts.map +1 -1
  25. package/dist/cjs/exporter/xlsx/xlsx-export.js +47 -23
  26. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  27. package/dist/esm/excel-parser/defined-names.d.ts +18 -0
  28. package/dist/esm/excel-parser/defined-names.d.ts.map +1 -0
  29. package/dist/esm/excel-parser/defined-names.js +67 -0
  30. package/dist/esm/excel-parser/interface.d.ts +7 -1
  31. package/dist/esm/excel-parser/interface.d.ts.map +1 -1
  32. package/dist/esm/excel-parser/plugins/xlsb/function-table.d.ts +17 -0
  33. package/dist/esm/excel-parser/plugins/xlsb/function-table.d.ts.map +1 -0
  34. package/dist/esm/excel-parser/plugins/xlsb/function-table.js +988 -0
  35. package/dist/esm/excel-parser/plugins/xlsb/index.d.ts +45 -3
  36. package/dist/esm/excel-parser/plugins/xlsb/index.d.ts.map +1 -1
  37. package/dist/esm/excel-parser/plugins/xlsb/index.js +266 -205
  38. package/dist/esm/excel-parser/plugins/xlsb/rgce-parser.d.ts +43 -9
  39. package/dist/esm/excel-parser/plugins/xlsb/rgce-parser.d.ts.map +1 -1
  40. package/dist/esm/excel-parser/plugins/xlsb/rgce-parser.js +405 -472
  41. package/dist/esm/excel-parser/plugins/xlsx/index.d.ts.map +1 -1
  42. package/dist/esm/excel-parser/plugins/xlsx/index.js +9 -58
  43. package/dist/esm/excel-parser/types.d.ts +17 -0
  44. package/dist/esm/excel-parser/types.d.ts.map +1 -1
  45. package/dist/esm/excel-parser/workbook.d.ts +1 -0
  46. package/dist/esm/excel-parser/workbook.d.ts.map +1 -1
  47. package/dist/esm/excel-parser/workbook.js +3 -0
  48. package/dist/esm/exporter/ods/ods-export.d.ts.map +1 -1
  49. package/dist/esm/exporter/ods/ods-export.js +6 -3
  50. package/dist/esm/exporter/xlsx/xlsx-export.d.ts.map +1 -1
  51. package/dist/esm/exporter/xlsx/xlsx-export.js +28 -6
  52. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
  53. package/package.json +2 -2
@@ -0,0 +1,18 @@
1
+ import type { NamedRange } from "@rowsncolumns/spreadsheet";
2
+ /**
3
+ * The named ranges one defined name becomes, whatever file it came from: a
4
+ * range per selection when its expression references known sheets, otherwise
5
+ * the expression as the name's value.
6
+ *
7
+ * `expression` is spelled the way OOXML stores a defined name, without the
8
+ * leading `=`; an empty one yields nothing.
9
+ */
10
+ export declare const namedRangesForDefinedName: ({ name, expression, hidden, scopeSheetId, sheetIdBySheetName, }: {
11
+ name: string;
12
+ expression: string;
13
+ hidden: boolean;
14
+ /** The sheet a sheet-local name is scoped to; absent for a workbook name. */
15
+ scopeSheetId?: number;
16
+ sheetIdBySheetName: Record<string, number>;
17
+ }) => NamedRange[];
18
+ //# sourceMappingURL=defined-names.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defined-names.d.ts","sourceRoot":"","sources":["../../../excel-parser/defined-names.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAU5D;;;;;;;GAOG;AACH,eAAO,MAAM,yBAAyB,GAAI,iEAMvC;IACD,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,6EAA6E;IAC7E,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC5C,KAAG,UAAU,EA2Db,CAAC"}
@@ -0,0 +1,59 @@
1
+ import { __assign, __values } from "tslib";
2
+ import { checkIfStringIsReference, generateSelectionsFromFormula, isAFormula, isBareFormulaExpression, isNil, uuid, } from "@rowsncolumns/utils";
3
+ /**
4
+ * The named ranges one defined name becomes, whatever file it came from: a
5
+ * range per selection when its expression references known sheets, otherwise
6
+ * the expression as the name's value.
7
+ *
8
+ * `expression` is spelled the way OOXML stores a defined name, without the
9
+ * leading `=`; an empty one yields nothing.
10
+ */
11
+ export var namedRangesForDefinedName = function (_a) {
12
+ var e_1, _b;
13
+ var name = _a.name, expression = _a.expression, hidden = _a.hidden, scopeSheetId = _a.scopeSheetId, sheetIdBySheetName = _a.sheetIdBySheetName;
14
+ if (!expression)
15
+ return [];
16
+ var scope = isNil(scopeSheetId) ? {} : { scopeSheetId: scopeSheetId };
17
+ var isBrokenRef = expression.includes("#REF!");
18
+ var isRef = !isBrokenRef && checkIfStringIsReference(expression);
19
+ if (!isRef) {
20
+ // Broken ref, formula, or non-reference value. Defined-name expressions
21
+ // are stored WITHOUT the leading "=", so formula-shaped expressions
22
+ // (e.g. `OFFSET(...)`) get the "=" prefix the calculator expects; static
23
+ // literals and broken refs are preserved verbatim.
24
+ return [
25
+ __assign(__assign({ name: name, namedRangeId: uuid(), value: isAFormula(expression) || isBareFormulaExpression(expression)
26
+ ? "=".concat(expression)
27
+ : expression }, (hidden ? { hidden: true } : {})), scope),
28
+ ];
29
+ }
30
+ // Cater to string, number, formula and boolean values as named range
31
+ var namedRanges = [];
32
+ try {
33
+ for (var _c = __values(generateSelectionsFromFormula(expression)), _d = _c.next(); !_d.done; _d = _c.next()) {
34
+ var selection = _d.value;
35
+ var sheetId = selection.sheetName
36
+ ? sheetIdBySheetName[selection.sheetName]
37
+ : undefined;
38
+ if (!isNil(sheetId)) {
39
+ namedRanges.push(__assign(__assign({ namedRangeId: uuid(), name: name, range: __assign(__assign({}, selection.range), { sheetId: sheetId }) }, (hidden ? { hidden: true } : {})), scope));
40
+ }
41
+ }
42
+ }
43
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
44
+ finally {
45
+ try {
46
+ if (_d && !_d.done && (_b = _c.return)) _b.call(_c);
47
+ }
48
+ finally { if (e_1) throw e_1.error; }
49
+ }
50
+ if (namedRanges.length > 0)
51
+ return namedRanges;
52
+ // Reference parsed but no selection bound to a known sheet — most commonly
53
+ // an external-workbook reference like `'[1]Revenue'!$A$17` where the `[1]`
54
+ // indexes a linked workbook we can't resolve. Preserve the original
55
+ // expression as value-only so the name survives the round-trip.
56
+ return [
57
+ __assign(__assign({ name: name, namedRangeId: uuid(), value: isAFormula(expression) ? "=".concat(expression) : expression }, (hidden ? { hidden: true } : {})), scope),
58
+ ];
59
+ };
@@ -1,6 +1,6 @@
1
1
  import type { ConditionalFormatRule, DataValidationRuleRecord, EmbeddedChart, NamedRange, ProtectedRange, Sheet, Slicer, SpreadsheetTheme, TableView, CustomTableStyle, WorkbookProtection } from "@rowsncolumns/spreadsheet";
2
2
  import type { CommentThread, IterativeCalculationOptions, NamedCellStyle, TextFormat, TextFormatRun } from "@rowsncolumns/common-types";
3
- import type { EmbeddedObjectWithPosition, ExternalLink, ProcessSheetDataForSheetOptions, ProcessSheetDataResult, SheetCatalogEntry, WorkbookProperties } from "./types";
3
+ import type { EmbeddedObjectWithPosition, ExternalLink, FormulaDecodeStats, ProcessSheetDataForSheetOptions, ProcessSheetDataResult, SheetCatalogEntry, WorkbookProperties } from "./types";
4
4
  export interface IWorkbookPlugin {
5
5
  /**
6
6
  * Load the file buffer
@@ -153,6 +153,12 @@ export interface IWorkbookPlugin {
153
153
  * Get named ranges
154
154
  */
155
155
  getNamedRanges(): NamedRange[];
156
+ /**
157
+ * How the cells' formulas decoded, for formats that store them as tokens
158
+ * (XLSB): counted over the sheets processed so far. Optional — the other
159
+ * formats store formula text; the workbook wrapper resolves to `undefined`.
160
+ */
161
+ getFormulaDecodeStats?(): FormulaDecodeStats | undefined;
156
162
  /**
157
163
  * Allow-edit protected ranges (`<protectedRanges>` in XLSX), for one sheet or —
158
164
  * when `sheetId` is omitted — the whole workbook, in the `ProtectedRange[]`
@@ -1 +1 @@
1
- {"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../../excel-parser/interface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../../excel-parser/interface.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * The built-in function table of a BIFF12 formula ([MS-XLSB] 2.5.97.10, the
3
+ * [MS-XLS] 2.5.198.17 Ftab): a `PtgFunc`/`PtgFuncVar` token names its function
4
+ * by index into it. Index 255 is a user-defined or add-in function, whose name
5
+ * is the call's first argument.
6
+ *
7
+ * `FTAB_FIXED_ARGC[i]` is the argument count of a fixed-arity function, the only
8
+ * kind a `PtgFunc` may name; `-1` marks a variable-arity one, which only appears
9
+ * as `PtgFuncVar` (it carries its own count).
10
+ *
11
+ * Ported from calamine 0.30 (`src/utils.rs` FTAB / FTAB_ARGC), MIT License,
12
+ * Copyright (c) 2016 Johann Tuffe. An empty name is an index the table leaves
13
+ * unassigned.
14
+ */
15
+ export declare const FTAB: readonly string[];
16
+ export declare const FTAB_FIXED_ARGC: readonly number[];
17
+ //# sourceMappingURL=function-table.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"function-table.d.ts","sourceRoot":"","sources":["../../../../../excel-parser/plugins/xlsb/function-table.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,IAAI,EAAE,SAAS,MAAM,EAsejC,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,SAAS,MAAM,EAse5C,CAAC"}