@cj-tech-master/excelts 4.0.2 → 4.0.3-canary.20260106020433.b618378

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 (183) hide show
  1. package/dist/browser/modules/excel/table.d.ts +1 -0
  2. package/dist/browser/modules/excel/table.js +12 -7
  3. package/dist/browser/modules/excel/types.d.ts +7 -0
  4. package/dist/cjs/modules/excel/table.js +12 -7
  5. package/dist/esm/modules/excel/table.js +12 -7
  6. package/dist/iife/excelts.iife.js +8 -5
  7. package/dist/iife/excelts.iife.js.map +1 -1
  8. package/dist/iife/excelts.iife.min.js +2 -2
  9. package/dist/types/index.browser.d.ts +20 -20
  10. package/dist/types/index.d.ts +23 -23
  11. package/dist/types/modules/archive/compress.browser.d.ts +1 -1
  12. package/dist/types/modules/archive/compress.d.ts +2 -2
  13. package/dist/types/modules/archive/crc32.browser.d.ts +1 -1
  14. package/dist/types/modules/archive/crc32.d.ts +1 -1
  15. package/dist/types/modules/archive/defaults.d.ts +1 -1
  16. package/dist/types/modules/archive/extract.d.ts +6 -6
  17. package/dist/types/modules/archive/index.base.d.ts +4 -4
  18. package/dist/types/modules/archive/index.browser.d.ts +5 -5
  19. package/dist/types/modules/archive/index.d.ts +5 -5
  20. package/dist/types/modules/archive/parse.base.d.ts +3 -3
  21. package/dist/types/modules/archive/parse.browser.d.ts +2 -2
  22. package/dist/types/modules/archive/parse.d.ts +3 -3
  23. package/dist/types/modules/archive/streaming-compress.browser.d.ts +2 -2
  24. package/dist/types/modules/archive/streaming-compress.d.ts +2 -2
  25. package/dist/types/modules/archive/streaming-zip.d.ts +2 -2
  26. package/dist/types/modules/archive/zip-builder.d.ts +2 -2
  27. package/dist/types/modules/archive/zip-entry-metadata.d.ts +1 -1
  28. package/dist/types/modules/archive/zip-parser.d.ts +1 -1
  29. package/dist/types/modules/csv/csv-stream.d.ts +3 -3
  30. package/dist/types/modules/csv/csv.browser.d.ts +9 -9
  31. package/dist/types/modules/csv/csv.d.ts +4 -4
  32. package/dist/types/modules/excel/anchor.d.ts +1 -1
  33. package/dist/types/modules/excel/cell.d.ts +7 -7
  34. package/dist/types/modules/excel/column.d.ts +3 -3
  35. package/dist/types/modules/excel/defined-names.d.ts +4 -4
  36. package/dist/types/modules/excel/image.d.ts +2 -2
  37. package/dist/types/modules/excel/pivot-table.d.ts +1 -1
  38. package/dist/types/modules/excel/range.d.ts +1 -1
  39. package/dist/types/modules/excel/row.d.ts +3 -3
  40. package/dist/types/modules/excel/stream/hyperlink-reader.d.ts +2 -2
  41. package/dist/types/modules/excel/stream/workbook-reader.browser.d.ts +6 -6
  42. package/dist/types/modules/excel/stream/workbook-reader.d.ts +5 -5
  43. package/dist/types/modules/excel/stream/workbook-writer.browser.d.ts +8 -8
  44. package/dist/types/modules/excel/stream/workbook-writer.d.ts +2 -2
  45. package/dist/types/modules/excel/stream/worksheet-reader.d.ts +6 -6
  46. package/dist/types/modules/excel/stream/worksheet-writer.d.ts +9 -9
  47. package/dist/types/modules/excel/table.d.ts +3 -2
  48. package/dist/types/modules/excel/types.d.ts +7 -0
  49. package/dist/types/modules/excel/utils/col-cache.d.ts +1 -1
  50. package/dist/types/modules/excel/utils/sheet-utils.d.ts +3 -3
  51. package/dist/types/modules/excel/utils/stream-buf.d.ts +2 -2
  52. package/dist/types/modules/excel/workbook.d.ts +9 -9
  53. package/dist/types/modules/excel/worksheet.d.ts +10 -10
  54. package/dist/types/modules/excel/xlsx/xform/base-xform.d.ts +1 -1
  55. package/dist/types/modules/excel/xlsx/xform/book/defined-name-xform.d.ts +1 -1
  56. package/dist/types/modules/excel/xlsx/xform/book/sheet-xform.d.ts +1 -1
  57. package/dist/types/modules/excel/xlsx/xform/book/workbook-calc-properties-xform.d.ts +1 -1
  58. package/dist/types/modules/excel/xlsx/xform/book/workbook-pivot-cache-xform.d.ts +1 -1
  59. package/dist/types/modules/excel/xlsx/xform/book/workbook-properties-xform.d.ts +1 -1
  60. package/dist/types/modules/excel/xlsx/xform/book/workbook-view-xform.d.ts +1 -1
  61. package/dist/types/modules/excel/xlsx/xform/book/workbook-xform.d.ts +2 -2
  62. package/dist/types/modules/excel/xlsx/xform/comment/comment-xform.d.ts +2 -2
  63. package/dist/types/modules/excel/xlsx/xform/comment/comments-xform.d.ts +2 -2
  64. package/dist/types/modules/excel/xlsx/xform/comment/style/vml-position-xform.d.ts +1 -1
  65. package/dist/types/modules/excel/xlsx/xform/comment/style/vml-protection-xform.d.ts +1 -1
  66. package/dist/types/modules/excel/xlsx/xform/comment/vml-anchor-xform.d.ts +1 -1
  67. package/dist/types/modules/excel/xlsx/xform/comment/vml-client-data-xform.d.ts +1 -1
  68. package/dist/types/modules/excel/xlsx/xform/comment/vml-notes-xform.d.ts +1 -1
  69. package/dist/types/modules/excel/xlsx/xform/comment/vml-shape-xform.d.ts +1 -1
  70. package/dist/types/modules/excel/xlsx/xform/comment/vml-textbox-xform.d.ts +1 -1
  71. package/dist/types/modules/excel/xlsx/xform/composite-xform.d.ts +1 -1
  72. package/dist/types/modules/excel/xlsx/xform/core/app-heading-pairs-xform.d.ts +1 -1
  73. package/dist/types/modules/excel/xlsx/xform/core/app-titles-of-parts-xform.d.ts +1 -1
  74. package/dist/types/modules/excel/xlsx/xform/core/app-xform.d.ts +1 -1
  75. package/dist/types/modules/excel/xlsx/xform/core/content-types-xform.d.ts +1 -1
  76. package/dist/types/modules/excel/xlsx/xform/core/core-xform.d.ts +1 -1
  77. package/dist/types/modules/excel/xlsx/xform/core/relationship-xform.d.ts +1 -1
  78. package/dist/types/modules/excel/xlsx/xform/core/relationships-xform.d.ts +1 -1
  79. package/dist/types/modules/excel/xlsx/xform/drawing/base-cell-anchor-xform.d.ts +1 -1
  80. package/dist/types/modules/excel/xlsx/xform/drawing/blip-fill-xform.d.ts +2 -2
  81. package/dist/types/modules/excel/xlsx/xform/drawing/blip-xform.d.ts +1 -1
  82. package/dist/types/modules/excel/xlsx/xform/drawing/c-nv-pic-pr-xform.d.ts +1 -1
  83. package/dist/types/modules/excel/xlsx/xform/drawing/c-nv-pr-xform.d.ts +1 -1
  84. package/dist/types/modules/excel/xlsx/xform/drawing/cell-position-xform.d.ts +2 -2
  85. package/dist/types/modules/excel/xlsx/xform/drawing/drawing-xform.d.ts +1 -1
  86. package/dist/types/modules/excel/xlsx/xform/drawing/ext-lst-xform.d.ts +1 -1
  87. package/dist/types/modules/excel/xlsx/xform/drawing/ext-xform.d.ts +1 -1
  88. package/dist/types/modules/excel/xlsx/xform/drawing/hlink-click-xform.d.ts +1 -1
  89. package/dist/types/modules/excel/xlsx/xform/drawing/nv-pic-pr-xform.d.ts +1 -1
  90. package/dist/types/modules/excel/xlsx/xform/drawing/one-cell-anchor-xform.d.ts +1 -1
  91. package/dist/types/modules/excel/xlsx/xform/drawing/pic-xform.d.ts +1 -1
  92. package/dist/types/modules/excel/xlsx/xform/drawing/two-cell-anchor-xform.d.ts +1 -1
  93. package/dist/types/modules/excel/xlsx/xform/list-xform.d.ts +1 -1
  94. package/dist/types/modules/excel/xlsx/xform/pivot-table/cache-field-xform.d.ts +1 -1
  95. package/dist/types/modules/excel/xlsx/xform/pivot-table/pivot-cache-definition-xform.d.ts +3 -3
  96. package/dist/types/modules/excel/xlsx/xform/pivot-table/pivot-cache-records-xform.d.ts +2 -2
  97. package/dist/types/modules/excel/xlsx/xform/pivot-table/pivot-table-xform.d.ts +1 -1
  98. package/dist/types/modules/excel/xlsx/xform/sheet/auto-filter-xform.d.ts +1 -1
  99. package/dist/types/modules/excel/xlsx/xform/sheet/cell-xform.d.ts +1 -1
  100. package/dist/types/modules/excel/xlsx/xform/sheet/cf/cf-rule-xform.d.ts +6 -6
  101. package/dist/types/modules/excel/xlsx/xform/sheet/cf/cfvo-xform.d.ts +1 -1
  102. package/dist/types/modules/excel/xlsx/xform/sheet/cf/color-scale-xform.d.ts +3 -3
  103. package/dist/types/modules/excel/xlsx/xform/sheet/cf/conditional-formatting-xform.d.ts +1 -1
  104. package/dist/types/modules/excel/xlsx/xform/sheet/cf/conditional-formattings-xform.d.ts +2 -2
  105. package/dist/types/modules/excel/xlsx/xform/sheet/cf/databar-xform.d.ts +3 -3
  106. package/dist/types/modules/excel/xlsx/xform/sheet/cf/ext-lst-ref-xform.d.ts +1 -1
  107. package/dist/types/modules/excel/xlsx/xform/sheet/cf/formula-xform.d.ts +1 -1
  108. package/dist/types/modules/excel/xlsx/xform/sheet/cf/icon-set-xform.d.ts +2 -2
  109. package/dist/types/modules/excel/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.d.ts +1 -1
  110. package/dist/types/modules/excel/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.d.ts +3 -3
  111. package/dist/types/modules/excel/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.d.ts +2 -2
  112. package/dist/types/modules/excel/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.d.ts +3 -3
  113. package/dist/types/modules/excel/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.d.ts +2 -2
  114. package/dist/types/modules/excel/xlsx/xform/sheet/cf-ext/databar-ext-xform.d.ts +3 -3
  115. package/dist/types/modules/excel/xlsx/xform/sheet/cf-ext/f-ext-xform.d.ts +1 -1
  116. package/dist/types/modules/excel/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.d.ts +3 -3
  117. package/dist/types/modules/excel/xlsx/xform/sheet/cf-ext/sqref-ext-xform.d.ts +1 -1
  118. package/dist/types/modules/excel/xlsx/xform/sheet/col-breaks-xform.d.ts +1 -1
  119. package/dist/types/modules/excel/xlsx/xform/sheet/col-xform.d.ts +1 -1
  120. package/dist/types/modules/excel/xlsx/xform/sheet/data-validations-xform.d.ts +1 -1
  121. package/dist/types/modules/excel/xlsx/xform/sheet/dimension-xform.d.ts +1 -1
  122. package/dist/types/modules/excel/xlsx/xform/sheet/drawing-xform.d.ts +1 -1
  123. package/dist/types/modules/excel/xlsx/xform/sheet/ext-lst-xform.d.ts +1 -1
  124. package/dist/types/modules/excel/xlsx/xform/sheet/header-footer-xform.d.ts +1 -1
  125. package/dist/types/modules/excel/xlsx/xform/sheet/hyperlink-xform.d.ts +1 -1
  126. package/dist/types/modules/excel/xlsx/xform/sheet/merge-cell-xform.d.ts +1 -1
  127. package/dist/types/modules/excel/xlsx/xform/sheet/outline-properties-xform.d.ts +1 -1
  128. package/dist/types/modules/excel/xlsx/xform/sheet/page-breaks-xform.d.ts +1 -1
  129. package/dist/types/modules/excel/xlsx/xform/sheet/page-margins-xform.d.ts +1 -1
  130. package/dist/types/modules/excel/xlsx/xform/sheet/page-setup-properties-xform.d.ts +1 -1
  131. package/dist/types/modules/excel/xlsx/xform/sheet/page-setup-xform.d.ts +1 -1
  132. package/dist/types/modules/excel/xlsx/xform/sheet/picture-xform.d.ts +1 -1
  133. package/dist/types/modules/excel/xlsx/xform/sheet/print-options-xform.d.ts +1 -1
  134. package/dist/types/modules/excel/xlsx/xform/sheet/row-breaks-xform.d.ts +1 -1
  135. package/dist/types/modules/excel/xlsx/xform/sheet/row-xform.d.ts +1 -1
  136. package/dist/types/modules/excel/xlsx/xform/sheet/sheet-format-properties-xform.d.ts +1 -1
  137. package/dist/types/modules/excel/xlsx/xform/sheet/sheet-properties-xform.d.ts +1 -1
  138. package/dist/types/modules/excel/xlsx/xform/sheet/sheet-protection-xform.d.ts +1 -1
  139. package/dist/types/modules/excel/xlsx/xform/sheet/sheet-view-xform.d.ts +1 -1
  140. package/dist/types/modules/excel/xlsx/xform/sheet/table-part-xform.d.ts +1 -1
  141. package/dist/types/modules/excel/xlsx/xform/sheet/worksheet-xform.d.ts +1 -1
  142. package/dist/types/modules/excel/xlsx/xform/simple/boolean-xform.d.ts +1 -1
  143. package/dist/types/modules/excel/xlsx/xform/simple/date-xform.d.ts +1 -1
  144. package/dist/types/modules/excel/xlsx/xform/simple/float-xform.d.ts +1 -1
  145. package/dist/types/modules/excel/xlsx/xform/simple/integer-xform.d.ts +1 -1
  146. package/dist/types/modules/excel/xlsx/xform/simple/string-xform.d.ts +1 -1
  147. package/dist/types/modules/excel/xlsx/xform/static-xform.d.ts +1 -1
  148. package/dist/types/modules/excel/xlsx/xform/strings/phonetic-text-xform.d.ts +1 -1
  149. package/dist/types/modules/excel/xlsx/xform/strings/rich-text-xform.d.ts +3 -3
  150. package/dist/types/modules/excel/xlsx/xform/strings/shared-string-xform.d.ts +1 -1
  151. package/dist/types/modules/excel/xlsx/xform/strings/shared-strings-xform.d.ts +2 -2
  152. package/dist/types/modules/excel/xlsx/xform/strings/text-xform.d.ts +1 -1
  153. package/dist/types/modules/excel/xlsx/xform/style/alignment-xform.d.ts +1 -1
  154. package/dist/types/modules/excel/xlsx/xform/style/border-xform.d.ts +2 -2
  155. package/dist/types/modules/excel/xlsx/xform/style/color-xform.d.ts +1 -1
  156. package/dist/types/modules/excel/xlsx/xform/style/dxf-xform.d.ts +1 -1
  157. package/dist/types/modules/excel/xlsx/xform/style/fill-xform.d.ts +2 -2
  158. package/dist/types/modules/excel/xlsx/xform/style/font-xform.d.ts +1 -1
  159. package/dist/types/modules/excel/xlsx/xform/style/numfmt-xform.d.ts +1 -1
  160. package/dist/types/modules/excel/xlsx/xform/style/protection-xform.d.ts +1 -1
  161. package/dist/types/modules/excel/xlsx/xform/style/style-xform.d.ts +3 -3
  162. package/dist/types/modules/excel/xlsx/xform/style/styles-xform.d.ts +2 -2
  163. package/dist/types/modules/excel/xlsx/xform/style/underline-xform.d.ts +1 -1
  164. package/dist/types/modules/excel/xlsx/xform/table/auto-filter-xform.d.ts +2 -2
  165. package/dist/types/modules/excel/xlsx/xform/table/custom-filter-xform.d.ts +1 -1
  166. package/dist/types/modules/excel/xlsx/xform/table/filter-column-xform.d.ts +2 -2
  167. package/dist/types/modules/excel/xlsx/xform/table/filter-xform.d.ts +1 -1
  168. package/dist/types/modules/excel/xlsx/xform/table/table-column-xform.d.ts +1 -1
  169. package/dist/types/modules/excel/xlsx/xform/table/table-style-info-xform.d.ts +1 -1
  170. package/dist/types/modules/excel/xlsx/xform/table/table-xform.d.ts +1 -1
  171. package/dist/types/modules/excel/xlsx/xlsx.browser.d.ts +3 -3
  172. package/dist/types/modules/excel/xlsx/xlsx.d.ts +1 -1
  173. package/dist/types/modules/stream/base-transform.d.ts +1 -1
  174. package/dist/types/modules/stream/buffered-stream.d.ts +1 -1
  175. package/dist/types/modules/stream/index.browser.d.ts +8 -8
  176. package/dist/types/modules/stream/index.d.ts +9 -9
  177. package/dist/types/modules/stream/pull-stream.d.ts +1 -1
  178. package/dist/types/modules/stream/streams.browser.d.ts +4 -4
  179. package/dist/types/modules/stream/streams.d.ts +3 -3
  180. package/dist/types/modules/stream/utils.d.ts +1 -1
  181. package/dist/types/utils/utils.browser.d.ts +1 -1
  182. package/dist/types/utils/utils.d.ts +1 -1
  183. package/package.json +3 -2
@@ -8,6 +8,7 @@ interface TableModel {
8
8
  rows: CellValue[][];
9
9
  headerRow?: boolean;
10
10
  totalsRow?: boolean;
11
+ qualifyImplicitStructuredReferences?: boolean;
11
12
  style?: TableStyleProperties;
12
13
  tl?: Address;
13
14
  autoFilterRef?: string;
@@ -174,13 +174,18 @@ class Table {
174
174
  data.forEach((value, j) => {
175
175
  const cell = r.getCell(col + j);
176
176
  const formula = value?.formula;
177
- cell.value =
178
- typeof formula === "string"
179
- ? {
180
- ...value,
181
- formula: formula.replace(/(^|[^A-Za-z0-9_])\[@\[?([^\[\]]+?)\]?\]/g, `$1${table.name}[[#This Row],[$2]]`)
182
- }
183
- : value;
177
+ if (typeof formula === "string") {
178
+ const shouldQualify = table.qualifyImplicitStructuredReferences === true;
179
+ cell.value = {
180
+ ...value,
181
+ formula: shouldQualify
182
+ ? formula.replace(/(^|[^A-Za-z0-9_])\[@\[?([^\[\]]+?)\]?\]/g, `$1${table.name}[[#This Row],[$2]]`)
183
+ : formula
184
+ };
185
+ }
186
+ else {
187
+ cell.value = value;
188
+ }
184
189
  assignStyle(cell, table.columns[j].style);
185
190
  });
186
191
  });
@@ -476,6 +476,13 @@ export interface TableProperties {
476
476
  ref: string;
477
477
  headerRow?: boolean;
478
478
  totalsRow?: boolean;
479
+ /**
480
+ * When true, expands implicit structured references like [@A] to
481
+ * TableName[[#This Row],[A]] when storing table row formulas.
482
+ *
483
+ * Default: false (keeps formulas as provided, e.g. [@A]).
484
+ */
485
+ qualifyImplicitStructuredReferences?: boolean;
479
486
  style?: TableStyleProperties;
480
487
  columns: TableColumnProperties[];
481
488
  rows: any[][];
@@ -177,13 +177,18 @@ class Table {
177
177
  data.forEach((value, j) => {
178
178
  const cell = r.getCell(col + j);
179
179
  const formula = value?.formula;
180
- cell.value =
181
- typeof formula === "string"
182
- ? {
183
- ...value,
184
- formula: formula.replace(/(^|[^A-Za-z0-9_])\[@\[?([^\[\]]+?)\]?\]/g, `$1${table.name}[[#This Row],[$2]]`)
185
- }
186
- : value;
180
+ if (typeof formula === "string") {
181
+ const shouldQualify = table.qualifyImplicitStructuredReferences === true;
182
+ cell.value = {
183
+ ...value,
184
+ formula: shouldQualify
185
+ ? formula.replace(/(^|[^A-Za-z0-9_])\[@\[?([^\[\]]+?)\]?\]/g, `$1${table.name}[[#This Row],[$2]]`)
186
+ : formula
187
+ };
188
+ }
189
+ else {
190
+ cell.value = value;
191
+ }
187
192
  assignStyle(cell, table.columns[j].style);
188
193
  });
189
194
  });
@@ -174,13 +174,18 @@ class Table {
174
174
  data.forEach((value, j) => {
175
175
  const cell = r.getCell(col + j);
176
176
  const formula = value?.formula;
177
- cell.value =
178
- typeof formula === "string"
179
- ? {
180
- ...value,
181
- formula: formula.replace(/(^|[^A-Za-z0-9_])\[@\[?([^\[\]]+?)\]?\]/g, `$1${table.name}[[#This Row],[$2]]`)
182
- }
183
- : value;
177
+ if (typeof formula === "string") {
178
+ const shouldQualify = table.qualifyImplicitStructuredReferences === true;
179
+ cell.value = {
180
+ ...value,
181
+ formula: shouldQualify
182
+ ? formula.replace(/(^|[^A-Za-z0-9_])\[@\[?([^\[\]]+?)\]?\]/g, `$1${table.name}[[#This Row],[$2]]`)
183
+ : formula
184
+ };
185
+ }
186
+ else {
187
+ cell.value = value;
188
+ }
184
189
  assignStyle(cell, table.columns[j].style);
185
190
  });
186
191
  });
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @cj-tech-master/excelts v4.0.2
2
+ * @cj-tech-master/excelts v4.0.3-canary.20260106020433.b618378
3
3
  * TypeScript Excel Workbook Manager - Read and Write xlsx and csv Files.
4
4
  * (c) 2026 cjnoname
5
5
  * Released under the MIT License
@@ -2396,10 +2396,13 @@ var ExcelTS = (function(exports) {
2396
2396
  data.forEach((value, j) => {
2397
2397
  const cell = r.getCell(col + j);
2398
2398
  const formula = value?.formula;
2399
- cell.value = typeof formula === "string" ? {
2400
- ...value,
2401
- formula: formula.replace(/(^|[^A-Za-z0-9_])\[@\[?([^\[\]]+?)\]?\]/g, `$1${table.name}[[#This Row],[$2]]`)
2402
- } : value;
2399
+ if (typeof formula === "string") {
2400
+ const shouldQualify = table.qualifyImplicitStructuredReferences === true;
2401
+ cell.value = {
2402
+ ...value,
2403
+ formula: shouldQualify ? formula.replace(/(^|[^A-Za-z0-9_])\[@\[?([^\[\]]+?)\]?\]/g, `$1${table.name}[[#This Row],[$2]]`) : formula
2404
+ };
2405
+ } else cell.value = value;
2403
2406
  assignStyle(cell, table.columns[j].style);
2404
2407
  });
2405
2408
  });