@cj-tech-master/excelts 9.2.0 → 9.2.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.
Files changed (641) hide show
  1. package/dist/browser/modules/archive/compression/compress.browser.js +3 -3
  2. package/dist/browser/modules/archive/compression/crc32.js +1 -1
  3. package/dist/browser/modules/archive/compression/streaming-compress.browser.js +6 -6
  4. package/dist/browser/modules/archive/compression/streaming-compress.js +1 -1
  5. package/dist/browser/modules/archive/compression/worker-pool/pool.browser.d.ts +1 -1
  6. package/dist/browser/modules/archive/crypto/aes.js +1 -1
  7. package/dist/browser/modules/archive/fs/archive-file.js +9 -9
  8. package/dist/browser/modules/archive/fs/types.d.ts +3 -3
  9. package/dist/browser/modules/archive/io/archive-sink.js +1 -1
  10. package/dist/browser/modules/archive/io/archive-source.js +3 -3
  11. package/dist/browser/modules/archive/shared/bytes.js +7 -3
  12. package/dist/browser/modules/archive/tar/tar-archive.d.ts +1 -1
  13. package/dist/browser/modules/archive/tar/tar-archive.js +1 -1
  14. package/dist/browser/modules/archive/tar/tar-gzip.js +2 -2
  15. package/dist/browser/modules/archive/tar/tar-header.js +2 -2
  16. package/dist/browser/modules/archive/tar/tar-parser.js +2 -2
  17. package/dist/browser/modules/archive/unzip/parser-core.js +2 -2
  18. package/dist/browser/modules/archive/unzip/progress.d.ts +2 -2
  19. package/dist/browser/modules/archive/unzip/remote-zip-reader.d.ts +2 -2
  20. package/dist/browser/modules/archive/unzip/remote-zip-reader.js +5 -5
  21. package/dist/browser/modules/archive/unzip/stream.base.d.ts +1 -1
  22. package/dist/browser/modules/archive/unzip/stream.base.js +4 -3
  23. package/dist/browser/modules/archive/unzip/stream.browser.d.ts +2 -2
  24. package/dist/browser/modules/archive/unzip/stream.browser.js +7 -7
  25. package/dist/browser/modules/archive/unzip/stream.d.ts +2 -2
  26. package/dist/browser/modules/archive/unzip/stream.js +1 -1
  27. package/dist/browser/modules/archive/unzip/zip-extract-core.js +4 -4
  28. package/dist/browser/modules/archive/unzip/zip-parser.d.ts +1 -1
  29. package/dist/browser/modules/archive/unzip/zip-reader.d.ts +4 -4
  30. package/dist/browser/modules/archive/unzip/zip-reader.js +6 -6
  31. package/dist/browser/modules/archive/zip/progress.d.ts +1 -1
  32. package/dist/browser/modules/archive/zip/stream.d.ts +3 -3
  33. package/dist/browser/modules/archive/zip/stream.js +6 -6
  34. package/dist/browser/modules/archive/zip/zip-archive.d.ts +4 -4
  35. package/dist/browser/modules/archive/zip/zip-archive.js +11 -11
  36. package/dist/browser/modules/archive/zip/zip-bytes.d.ts +1 -1
  37. package/dist/browser/modules/archive/zip/zip-bytes.js +5 -5
  38. package/dist/browser/modules/archive/zip/zip-editor.d.ts +6 -6
  39. package/dist/browser/modules/archive/zip/zip-editor.js +9 -9
  40. package/dist/browser/modules/archive/zip/zip-entry-metadata.js +1 -1
  41. package/dist/browser/modules/archive/zip/zip-entry-options.d.ts +2 -2
  42. package/dist/browser/modules/archive/zip/zip-output-pipeline.d.ts +1 -1
  43. package/dist/browser/modules/archive/zip/zip-output-pipeline.js +1 -1
  44. package/dist/browser/modules/archive/zip-spec/zip-extra-fields.js +1 -1
  45. package/dist/browser/modules/archive/zip-spec/zip-parser-core.d.ts +1 -1
  46. package/dist/browser/modules/archive/zip-spec/zip-parser-core.js +2 -2
  47. package/dist/browser/modules/csv/format/config.js +3 -3
  48. package/dist/browser/modules/csv/format/formatter.js +2 -2
  49. package/dist/browser/modules/csv/parse/async.js +7 -6
  50. package/dist/browser/modules/csv/parse/config.js +2 -2
  51. package/dist/browser/modules/csv/parse/helpers.d.ts +1 -1
  52. package/dist/browser/modules/csv/parse/helpers.js +2 -2
  53. package/dist/browser/modules/csv/parse/lines.js +25 -23
  54. package/dist/browser/modules/csv/parse/row-processor.js +2 -2
  55. package/dist/browser/modules/csv/parse/sync.d.ts +1 -1
  56. package/dist/browser/modules/csv/parse/sync.js +5 -5
  57. package/dist/browser/modules/csv/stream/parser.js +6 -6
  58. package/dist/browser/modules/csv/worker/worker-script.generated.d.ts +1 -1
  59. package/dist/browser/modules/csv/worker/worker-script.generated.js +1 -1
  60. package/dist/browser/modules/csv/worker/worker.entry.js +1 -1
  61. package/dist/browser/modules/excel/cell.d.ts +3 -3
  62. package/dist/browser/modules/excel/cell.js +4 -4
  63. package/dist/browser/modules/excel/column.d.ts +1 -1
  64. package/dist/browser/modules/excel/column.js +2 -2
  65. package/dist/browser/modules/excel/defined-names.d.ts +2 -2
  66. package/dist/browser/modules/excel/defined-names.js +14 -6
  67. package/dist/browser/modules/excel/image.js +1 -1
  68. package/dist/browser/modules/excel/pivot-table.js +2 -2
  69. package/dist/browser/modules/excel/range.js +1 -1
  70. package/dist/browser/modules/excel/row.d.ts +1 -1
  71. package/dist/browser/modules/excel/row.js +2 -2
  72. package/dist/browser/modules/excel/stream/hyperlink-reader.d.ts +1 -1
  73. package/dist/browser/modules/excel/stream/hyperlink-reader.js +2 -2
  74. package/dist/browser/modules/excel/stream/sheet-comments-writer.js +3 -3
  75. package/dist/browser/modules/excel/stream/sheet-rels-writer.js +2 -2
  76. package/dist/browser/modules/excel/stream/workbook-reader.browser.d.ts +4 -4
  77. package/dist/browser/modules/excel/stream/workbook-reader.browser.js +6 -6
  78. package/dist/browser/modules/excel/stream/workbook-reader.d.ts +2 -2
  79. package/dist/browser/modules/excel/stream/workbook-reader.js +3 -3
  80. package/dist/browser/modules/excel/stream/workbook-writer.browser.d.ts +4 -4
  81. package/dist/browser/modules/excel/stream/workbook-writer.browser.js +13 -13
  82. package/dist/browser/modules/excel/stream/workbook-writer.d.ts +1 -1
  83. package/dist/browser/modules/excel/stream/workbook-writer.js +2 -2
  84. package/dist/browser/modules/excel/stream/worksheet-reader.d.ts +2 -2
  85. package/dist/browser/modules/excel/stream/worksheet-reader.js +6 -6
  86. package/dist/browser/modules/excel/stream/worksheet-writer.d.ts +14 -4
  87. package/dist/browser/modules/excel/stream/worksheet-writer.js +49 -20
  88. package/dist/browser/modules/excel/table.js +2 -2
  89. package/dist/browser/modules/excel/utils/cell-matrix.js +1 -1
  90. package/dist/browser/modules/excel/utils/drawing-utils.js +1 -1
  91. package/dist/browser/modules/excel/utils/encryptor.browser.js +1 -1
  92. package/dist/browser/modules/excel/utils/encryptor.js +1 -1
  93. package/dist/browser/modules/excel/utils/iterate-stream.js +2 -1
  94. package/dist/browser/modules/excel/utils/stream-buf.d.ts +5 -5
  95. package/dist/browser/modules/excel/utils/stream-buf.js +2 -2
  96. package/dist/browser/modules/excel/utils/text-metrics.d.ts +1 -1
  97. package/dist/browser/modules/excel/workbook.browser.d.ts +7 -7
  98. package/dist/browser/modules/excel/workbook.browser.js +10 -10
  99. package/dist/browser/modules/excel/workbook.js +2 -2
  100. package/dist/browser/modules/excel/worksheet.d.ts +6 -6
  101. package/dist/browser/modules/excel/worksheet.js +9 -9
  102. package/dist/browser/modules/excel/xlsx/xform/base-xform.js +4 -3
  103. package/dist/browser/modules/excel/xlsx/xform/book/defined-name-xform.js +1 -1
  104. package/dist/browser/modules/excel/xlsx/xform/book/sheet-xform.d.ts +1 -1
  105. package/dist/browser/modules/excel/xlsx/xform/book/workbook-xform.js +5 -5
  106. package/dist/browser/modules/excel/xlsx/xform/comment/comment-xform.d.ts +1 -1
  107. package/dist/browser/modules/excel/xlsx/xform/comment/comment-xform.js +1 -1
  108. package/dist/browser/modules/excel/xlsx/xform/comment/comments-xform.js +1 -1
  109. package/dist/browser/modules/excel/xlsx/xform/comment/vml-client-data-xform.js +2 -2
  110. package/dist/browser/modules/excel/xlsx/xform/comment/vml-notes-xform.js +1 -1
  111. package/dist/browser/modules/excel/xlsx/xform/comment/vml-shape-xform.js +1 -1
  112. package/dist/browser/modules/excel/xlsx/xform/core/app-xform.js +2 -2
  113. package/dist/browser/modules/excel/xlsx/xform/core/content-types-xform.js +2 -2
  114. package/dist/browser/modules/excel/xlsx/xform/core/core-xform.js +2 -2
  115. package/dist/browser/modules/excel/xlsx/xform/core/relationships-xform.js +2 -2
  116. package/dist/browser/modules/excel/xlsx/xform/drawing/c-nv-pr-xform.js +1 -1
  117. package/dist/browser/modules/excel/xlsx/xform/drawing/ctrl-prop-xform.d.ts +1 -1
  118. package/dist/browser/modules/excel/xlsx/xform/drawing/ctrl-prop-xform.js +1 -1
  119. package/dist/browser/modules/excel/xlsx/xform/drawing/drawing-xform.js +2 -2
  120. package/dist/browser/modules/excel/xlsx/xform/drawing/nv-pic-pr-xform.js +1 -1
  121. package/dist/browser/modules/excel/xlsx/xform/drawing/one-cell-anchor-xform.js +1 -1
  122. package/dist/browser/modules/excel/xlsx/xform/drawing/pic-xform.js +1 -1
  123. package/dist/browser/modules/excel/xlsx/xform/drawing/two-cell-anchor-xform.js +1 -1
  124. package/dist/browser/modules/excel/xlsx/xform/drawing/vml-drawing-xform.d.ts +1 -1
  125. package/dist/browser/modules/excel/xlsx/xform/drawing/vml-drawing-xform.js +2 -2
  126. package/dist/browser/modules/excel/xlsx/xform/list-xform.js +1 -1
  127. package/dist/browser/modules/excel/xlsx/xform/pivot-table/cache-field-xform.d.ts +1 -1
  128. package/dist/browser/modules/excel/xlsx/xform/pivot-table/cache-field-xform.js +2 -2
  129. package/dist/browser/modules/excel/xlsx/xform/pivot-table/cache-field.js +1 -1
  130. package/dist/browser/modules/excel/xlsx/xform/pivot-table/pivot-cache-definition-xform.d.ts +1 -1
  131. package/dist/browser/modules/excel/xlsx/xform/pivot-table/pivot-cache-definition-xform.js +1 -1
  132. package/dist/browser/modules/excel/xlsx/xform/pivot-table/pivot-cache-records-xform.d.ts +2 -2
  133. package/dist/browser/modules/excel/xlsx/xform/pivot-table/pivot-cache-records-xform.js +5 -5
  134. package/dist/browser/modules/excel/xlsx/xform/pivot-table/pivot-table-xform.d.ts +2 -2
  135. package/dist/browser/modules/excel/xlsx/xform/pivot-table/pivot-table-xform.js +2 -2
  136. package/dist/browser/modules/excel/xlsx/xform/sheet/cell-xform.js +4 -4
  137. package/dist/browser/modules/excel/xlsx/xform/sheet/cf/cf-rule-xform.d.ts +1 -1
  138. package/dist/browser/modules/excel/xlsx/xform/sheet/cf/cf-rule-xform.js +2 -2
  139. package/dist/browser/modules/excel/xlsx/xform/sheet/cf/color-scale-xform.d.ts +1 -1
  140. package/dist/browser/modules/excel/xlsx/xform/sheet/cf/color-scale-xform.js +1 -1
  141. package/dist/browser/modules/excel/xlsx/xform/sheet/cf/databar-xform.d.ts +1 -1
  142. package/dist/browser/modules/excel/xlsx/xform/sheet/cf/databar-xform.js +1 -1
  143. package/dist/browser/modules/excel/xlsx/xform/sheet/cf/ext-lst-ref-xform.js +3 -0
  144. package/dist/browser/modules/excel/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.d.ts +5 -0
  145. package/dist/browser/modules/excel/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js +10 -3
  146. package/dist/browser/modules/excel/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.d.ts +1 -1
  147. package/dist/browser/modules/excel/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.js +1 -1
  148. package/dist/browser/modules/excel/xlsx/xform/sheet/cf-ext/databar-ext-xform.d.ts +2 -2
  149. package/dist/browser/modules/excel/xlsx/xform/sheet/cf-ext/databar-ext-xform.js +8 -5
  150. package/dist/browser/modules/excel/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.d.ts +1 -1
  151. package/dist/browser/modules/excel/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.js +1 -1
  152. package/dist/browser/modules/excel/xlsx/xform/sheet/col-breaks-xform.js +1 -1
  153. package/dist/browser/modules/excel/xlsx/xform/sheet/data-validations-xform.js +2 -2
  154. package/dist/browser/modules/excel/xlsx/xform/sheet/merges.js +1 -1
  155. package/dist/browser/modules/excel/xlsx/xform/sheet/row-breaks-xform.js +1 -1
  156. package/dist/browser/modules/excel/xlsx/xform/sheet/row-xform.js +2 -2
  157. package/dist/browser/modules/excel/xlsx/xform/sheet/sheet-properties-xform.js +2 -2
  158. package/dist/browser/modules/excel/xlsx/xform/sheet/worksheet-xform.js +19 -19
  159. package/dist/browser/modules/excel/xlsx/xform/strings/phonetic-text-xform.js +2 -2
  160. package/dist/browser/modules/excel/xlsx/xform/strings/rich-text-xform.d.ts +1 -1
  161. package/dist/browser/modules/excel/xlsx/xform/strings/rich-text-xform.js +1 -1
  162. package/dist/browser/modules/excel/xlsx/xform/strings/shared-string-xform.js +3 -3
  163. package/dist/browser/modules/excel/xlsx/xform/strings/shared-strings-xform.js +2 -2
  164. package/dist/browser/modules/excel/xlsx/xform/style/border-xform.js +1 -1
  165. package/dist/browser/modules/excel/xlsx/xform/style/font-xform.js +2 -2
  166. package/dist/browser/modules/excel/xlsx/xform/style/style-xform.js +2 -1
  167. package/dist/browser/modules/excel/xlsx/xform/style/styles-xform.js +5 -5
  168. package/dist/browser/modules/excel/xlsx/xform/table/auto-filter-xform.js +1 -1
  169. package/dist/browser/modules/excel/xlsx/xform/table/filter-column-xform.js +1 -1
  170. package/dist/browser/modules/excel/xlsx/xform/table/table-xform.js +1 -1
  171. package/dist/browser/modules/excel/xlsx/xlsx.browser.d.ts +2 -2
  172. package/dist/browser/modules/excel/xlsx/xlsx.browser.js +22 -22
  173. package/dist/browser/modules/excel/xlsx/xlsx.js +5 -4
  174. package/dist/browser/modules/pdf/builder/document-builder.js +2 -2
  175. package/dist/browser/modules/pdf/builder/form-appearance.js +1 -1
  176. package/dist/browser/modules/pdf/builder/pdf-editor.js +56 -11
  177. package/dist/browser/modules/pdf/core/digital-signature.js +15 -7
  178. package/dist/browser/modules/pdf/core/encryption.js +6 -5
  179. package/dist/browser/modules/pdf/core/pdf-kdf.browser.d.ts +10 -0
  180. package/dist/browser/modules/pdf/core/pdf-kdf.browser.js +15 -0
  181. package/dist/browser/modules/pdf/core/pdf-kdf.d.ts +12 -0
  182. package/dist/browser/modules/pdf/core/pdf-kdf.js +17 -0
  183. package/dist/browser/modules/pdf/core/pdf-writer.d.ts +1 -1
  184. package/dist/browser/modules/pdf/core/pdf-writer.js +3 -3
  185. package/dist/browser/modules/pdf/errors.d.ts +1 -2
  186. package/dist/browser/modules/pdf/errors.js +2 -2
  187. package/dist/browser/modules/pdf/font/font-embedder.d.ts +1 -1
  188. package/dist/browser/modules/pdf/font/font-embedder.js +1 -1
  189. package/dist/browser/modules/pdf/font/font-manager.d.ts +1 -1
  190. package/dist/browser/modules/pdf/font/font-manager.js +1 -1
  191. package/dist/browser/modules/pdf/pdf.js +1 -1
  192. package/dist/browser/modules/pdf/reader/content-interpreter.js +1 -1
  193. package/dist/browser/modules/pdf/reader/pdf-decrypt.js +14 -13
  194. package/dist/browser/modules/pdf/reader/pdf-document.js +2 -2
  195. package/dist/browser/modules/pdf/reader/pdf-parser.js +1 -1
  196. package/dist/browser/modules/pdf/reader/pdf-reader.d.ts +4 -4
  197. package/dist/browser/modules/pdf/reader/pdf-reader.js +8 -8
  198. package/dist/browser/modules/pdf/reader/stream-filters.js +1 -1
  199. package/dist/browser/modules/pdf/render/layout-engine.d.ts +1 -1
  200. package/dist/browser/modules/pdf/render/layout-engine.js +4 -4
  201. package/dist/browser/modules/pdf/render/page-renderer.js +1 -1
  202. package/dist/browser/modules/pdf/render/pdf-exporter.js +7 -7
  203. package/dist/browser/modules/stream/browser/collector.js +1 -1
  204. package/dist/browser/modules/stream/browser/compose.js +1 -1
  205. package/dist/browser/modules/stream/browser/duplex.js +4 -4
  206. package/dist/browser/modules/stream/browser/factories.d.ts +3 -3
  207. package/dist/browser/modules/stream/browser/factories.js +6 -6
  208. package/dist/browser/modules/stream/browser/passthrough.d.ts +0 -4
  209. package/dist/browser/modules/stream/browser/passthrough.js +0 -3
  210. package/dist/browser/modules/stream/browser/pipeline.d.ts +1 -1
  211. package/dist/browser/modules/stream/browser/pipeline.js +4 -4
  212. package/dist/browser/modules/stream/browser/readable.js +8 -8
  213. package/dist/browser/modules/stream/browser/transform.d.ts +1 -1
  214. package/dist/browser/modules/stream/browser/transform.js +8 -8
  215. package/dist/browser/modules/stream/browser/utils.js +8 -8
  216. package/dist/browser/modules/stream/browser/writable.js +3 -3
  217. package/dist/browser/modules/stream/buffered-stream.d.ts +1 -1
  218. package/dist/browser/modules/stream/buffered-stream.js +1 -1
  219. package/dist/browser/modules/stream/chunked-builder.js +1 -1
  220. package/dist/browser/modules/stream/node/collector.js +1 -1
  221. package/dist/browser/modules/stream/node/factories.d.ts +2 -2
  222. package/dist/browser/modules/stream/node/factories.js +1 -1
  223. package/dist/browser/modules/stream/node/pipeline.d.ts +1 -1
  224. package/dist/browser/modules/stream/node/utils.js +5 -5
  225. package/dist/browser/modules/stream/pull-stream.d.ts +1 -1
  226. package/dist/browser/modules/stream/pull-stream.js +1 -1
  227. package/dist/browser/modules/stream/utils.base.js +1 -1
  228. package/dist/browser/modules/xml/dom.js +3 -2
  229. package/dist/browser/modules/xml/encode.js +1 -1
  230. package/dist/browser/modules/xml/query.js +1 -1
  231. package/dist/browser/modules/xml/sax.js +5 -4
  232. package/dist/browser/modules/xml/to-object.js +3 -2
  233. package/dist/browser/utils/binary.js +7 -3
  234. package/dist/browser/utils/crypto.d.ts +9 -1
  235. package/dist/browser/utils/crypto.js +12 -4
  236. package/dist/browser/utils/datetime.js +11 -11
  237. package/dist/cjs/modules/archive/compression/compress.browser.js +9 -9
  238. package/dist/cjs/modules/archive/compression/crc32.js +1 -1
  239. package/dist/cjs/modules/archive/compression/streaming-compress.browser.js +6 -6
  240. package/dist/cjs/modules/archive/compression/streaming-compress.js +1 -1
  241. package/dist/cjs/modules/archive/crypto/aes.js +1 -1
  242. package/dist/cjs/modules/archive/fs/archive-file.js +9 -9
  243. package/dist/cjs/modules/archive/io/archive-sink.js +1 -1
  244. package/dist/cjs/modules/archive/io/archive-source.js +3 -3
  245. package/dist/cjs/modules/archive/shared/bytes.js +7 -3
  246. package/dist/cjs/modules/archive/tar/tar-archive.js +1 -1
  247. package/dist/cjs/modules/archive/tar/tar-gzip.js +2 -2
  248. package/dist/cjs/modules/archive/tar/tar-header.js +2 -2
  249. package/dist/cjs/modules/archive/tar/tar-parser.js +2 -2
  250. package/dist/cjs/modules/archive/unzip/parser-core.js +2 -2
  251. package/dist/cjs/modules/archive/unzip/remote-zip-reader.js +5 -5
  252. package/dist/cjs/modules/archive/unzip/stream.base.js +4 -3
  253. package/dist/cjs/modules/archive/unzip/stream.browser.js +7 -7
  254. package/dist/cjs/modules/archive/unzip/stream.js +1 -1
  255. package/dist/cjs/modules/archive/unzip/zip-extract-core.js +4 -4
  256. package/dist/cjs/modules/archive/unzip/zip-reader.js +6 -6
  257. package/dist/cjs/modules/archive/zip/stream.js +6 -6
  258. package/dist/cjs/modules/archive/zip/zip-archive.js +11 -11
  259. package/dist/cjs/modules/archive/zip/zip-bytes.js +4 -4
  260. package/dist/cjs/modules/archive/zip/zip-editor.js +9 -9
  261. package/dist/cjs/modules/archive/zip/zip-entry-metadata.js +1 -1
  262. package/dist/cjs/modules/archive/zip/zip-output-pipeline.js +1 -1
  263. package/dist/cjs/modules/archive/zip-spec/zip-extra-fields.js +1 -1
  264. package/dist/cjs/modules/archive/zip-spec/zip-parser-core.js +2 -2
  265. package/dist/cjs/modules/csv/format/config.js +3 -3
  266. package/dist/cjs/modules/csv/format/formatter.js +2 -2
  267. package/dist/cjs/modules/csv/parse/async.js +10 -9
  268. package/dist/cjs/modules/csv/parse/config.js +2 -2
  269. package/dist/cjs/modules/csv/parse/helpers.js +2 -2
  270. package/dist/cjs/modules/csv/parse/lines.js +25 -23
  271. package/dist/cjs/modules/csv/parse/row-processor.js +2 -2
  272. package/dist/cjs/modules/csv/parse/sync.js +5 -5
  273. package/dist/cjs/modules/csv/stream/parser.js +6 -6
  274. package/dist/cjs/modules/csv/worker/worker-script.generated.js +1 -1
  275. package/dist/cjs/modules/csv/worker/worker.entry.js +1 -1
  276. package/dist/cjs/modules/excel/cell.js +4 -4
  277. package/dist/cjs/modules/excel/column.js +2 -2
  278. package/dist/cjs/modules/excel/defined-names.js +14 -6
  279. package/dist/cjs/modules/excel/image.js +1 -1
  280. package/dist/cjs/modules/excel/pivot-table.js +2 -2
  281. package/dist/cjs/modules/excel/range.js +1 -1
  282. package/dist/cjs/modules/excel/row.js +2 -2
  283. package/dist/cjs/modules/excel/stream/hyperlink-reader.js +2 -2
  284. package/dist/cjs/modules/excel/stream/sheet-comments-writer.js +3 -3
  285. package/dist/cjs/modules/excel/stream/sheet-rels-writer.js +2 -2
  286. package/dist/cjs/modules/excel/stream/workbook-reader.browser.js +6 -6
  287. package/dist/cjs/modules/excel/stream/workbook-reader.js +3 -3
  288. package/dist/cjs/modules/excel/stream/workbook-writer.browser.js +13 -13
  289. package/dist/cjs/modules/excel/stream/workbook-writer.js +2 -2
  290. package/dist/cjs/modules/excel/stream/worksheet-reader.js +6 -6
  291. package/dist/cjs/modules/excel/stream/worksheet-writer.js +49 -20
  292. package/dist/cjs/modules/excel/table.js +2 -2
  293. package/dist/cjs/modules/excel/utils/cell-matrix.js +1 -1
  294. package/dist/cjs/modules/excel/utils/drawing-utils.js +1 -1
  295. package/dist/cjs/modules/excel/utils/encryptor.browser.js +1 -1
  296. package/dist/cjs/modules/excel/utils/encryptor.js +1 -1
  297. package/dist/cjs/modules/excel/utils/iterate-stream.js +2 -1
  298. package/dist/cjs/modules/excel/utils/stream-buf.js +2 -2
  299. package/dist/cjs/modules/excel/workbook.browser.js +13 -13
  300. package/dist/cjs/modules/excel/workbook.js +2 -2
  301. package/dist/cjs/modules/excel/worksheet.js +9 -9
  302. package/dist/cjs/modules/excel/xlsx/xform/base-xform.js +4 -3
  303. package/dist/cjs/modules/excel/xlsx/xform/book/defined-name-xform.js +1 -1
  304. package/dist/cjs/modules/excel/xlsx/xform/book/workbook-xform.js +5 -5
  305. package/dist/cjs/modules/excel/xlsx/xform/comment/comment-xform.js +1 -1
  306. package/dist/cjs/modules/excel/xlsx/xform/comment/comments-xform.js +1 -1
  307. package/dist/cjs/modules/excel/xlsx/xform/comment/vml-client-data-xform.js +2 -2
  308. package/dist/cjs/modules/excel/xlsx/xform/comment/vml-notes-xform.js +1 -1
  309. package/dist/cjs/modules/excel/xlsx/xform/comment/vml-shape-xform.js +1 -1
  310. package/dist/cjs/modules/excel/xlsx/xform/core/app-xform.js +2 -2
  311. package/dist/cjs/modules/excel/xlsx/xform/core/content-types-xform.js +2 -2
  312. package/dist/cjs/modules/excel/xlsx/xform/core/core-xform.js +2 -2
  313. package/dist/cjs/modules/excel/xlsx/xform/core/relationships-xform.js +2 -2
  314. package/dist/cjs/modules/excel/xlsx/xform/drawing/c-nv-pr-xform.js +1 -1
  315. package/dist/cjs/modules/excel/xlsx/xform/drawing/ctrl-prop-xform.js +1 -1
  316. package/dist/cjs/modules/excel/xlsx/xform/drawing/drawing-xform.js +2 -2
  317. package/dist/cjs/modules/excel/xlsx/xform/drawing/nv-pic-pr-xform.js +1 -1
  318. package/dist/cjs/modules/excel/xlsx/xform/drawing/one-cell-anchor-xform.js +1 -1
  319. package/dist/cjs/modules/excel/xlsx/xform/drawing/pic-xform.js +1 -1
  320. package/dist/cjs/modules/excel/xlsx/xform/drawing/two-cell-anchor-xform.js +1 -1
  321. package/dist/cjs/modules/excel/xlsx/xform/drawing/vml-drawing-xform.js +2 -2
  322. package/dist/cjs/modules/excel/xlsx/xform/list-xform.js +1 -1
  323. package/dist/cjs/modules/excel/xlsx/xform/pivot-table/cache-field-xform.js +2 -2
  324. package/dist/cjs/modules/excel/xlsx/xform/pivot-table/cache-field.js +1 -1
  325. package/dist/cjs/modules/excel/xlsx/xform/pivot-table/pivot-cache-definition-xform.js +1 -1
  326. package/dist/cjs/modules/excel/xlsx/xform/pivot-table/pivot-cache-records-xform.js +5 -5
  327. package/dist/cjs/modules/excel/xlsx/xform/pivot-table/pivot-table-xform.js +2 -2
  328. package/dist/cjs/modules/excel/xlsx/xform/sheet/cell-xform.js +4 -4
  329. package/dist/cjs/modules/excel/xlsx/xform/sheet/cf/cf-rule-xform.js +2 -2
  330. package/dist/cjs/modules/excel/xlsx/xform/sheet/cf/color-scale-xform.js +1 -1
  331. package/dist/cjs/modules/excel/xlsx/xform/sheet/cf/databar-xform.js +1 -1
  332. package/dist/cjs/modules/excel/xlsx/xform/sheet/cf/ext-lst-ref-xform.js +3 -0
  333. package/dist/cjs/modules/excel/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js +10 -3
  334. package/dist/cjs/modules/excel/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.js +1 -1
  335. package/dist/cjs/modules/excel/xlsx/xform/sheet/cf-ext/databar-ext-xform.js +8 -5
  336. package/dist/cjs/modules/excel/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.js +1 -1
  337. package/dist/cjs/modules/excel/xlsx/xform/sheet/col-breaks-xform.js +1 -1
  338. package/dist/cjs/modules/excel/xlsx/xform/sheet/data-validations-xform.js +2 -2
  339. package/dist/cjs/modules/excel/xlsx/xform/sheet/merges.js +1 -1
  340. package/dist/cjs/modules/excel/xlsx/xform/sheet/row-breaks-xform.js +1 -1
  341. package/dist/cjs/modules/excel/xlsx/xform/sheet/row-xform.js +2 -2
  342. package/dist/cjs/modules/excel/xlsx/xform/sheet/sheet-properties-xform.js +2 -2
  343. package/dist/cjs/modules/excel/xlsx/xform/sheet/worksheet-xform.js +19 -19
  344. package/dist/cjs/modules/excel/xlsx/xform/strings/phonetic-text-xform.js +2 -2
  345. package/dist/cjs/modules/excel/xlsx/xform/strings/rich-text-xform.js +1 -1
  346. package/dist/cjs/modules/excel/xlsx/xform/strings/shared-string-xform.js +3 -3
  347. package/dist/cjs/modules/excel/xlsx/xform/strings/shared-strings-xform.js +2 -2
  348. package/dist/cjs/modules/excel/xlsx/xform/style/border-xform.js +1 -1
  349. package/dist/cjs/modules/excel/xlsx/xform/style/font-xform.js +2 -2
  350. package/dist/cjs/modules/excel/xlsx/xform/style/style-xform.js +2 -1
  351. package/dist/cjs/modules/excel/xlsx/xform/style/styles-xform.js +5 -5
  352. package/dist/cjs/modules/excel/xlsx/xform/table/auto-filter-xform.js +1 -1
  353. package/dist/cjs/modules/excel/xlsx/xform/table/filter-column-xform.js +1 -1
  354. package/dist/cjs/modules/excel/xlsx/xform/table/table-xform.js +1 -1
  355. package/dist/cjs/modules/excel/xlsx/xlsx.browser.js +22 -22
  356. package/dist/cjs/modules/excel/xlsx/xlsx.js +5 -4
  357. package/dist/cjs/modules/pdf/builder/document-builder.js +2 -2
  358. package/dist/cjs/modules/pdf/builder/form-appearance.js +1 -1
  359. package/dist/cjs/modules/pdf/builder/pdf-editor.js +56 -11
  360. package/dist/cjs/modules/pdf/core/digital-signature.js +15 -7
  361. package/dist/cjs/modules/pdf/core/encryption.js +6 -5
  362. package/dist/cjs/modules/pdf/core/pdf-kdf.browser.js +19 -0
  363. package/dist/cjs/modules/pdf/core/pdf-kdf.js +24 -0
  364. package/dist/cjs/modules/pdf/core/pdf-writer.js +3 -3
  365. package/dist/cjs/modules/pdf/errors.js +2 -2
  366. package/dist/cjs/modules/pdf/font/font-embedder.js +1 -1
  367. package/dist/cjs/modules/pdf/font/font-manager.js +1 -1
  368. package/dist/cjs/modules/pdf/pdf.js +1 -1
  369. package/dist/cjs/modules/pdf/reader/content-interpreter.js +1 -1
  370. package/dist/cjs/modules/pdf/reader/pdf-decrypt.js +14 -13
  371. package/dist/cjs/modules/pdf/reader/pdf-document.js +2 -2
  372. package/dist/cjs/modules/pdf/reader/pdf-reader.js +8 -8
  373. package/dist/cjs/modules/pdf/reader/stream-filters.js +1 -1
  374. package/dist/cjs/modules/pdf/render/layout-engine.js +4 -4
  375. package/dist/cjs/modules/pdf/render/page-renderer.js +1 -1
  376. package/dist/cjs/modules/pdf/render/pdf-exporter.js +7 -7
  377. package/dist/cjs/modules/stream/browser/collector.js +1 -1
  378. package/dist/cjs/modules/stream/browser/compose.js +1 -1
  379. package/dist/cjs/modules/stream/browser/duplex.js +4 -4
  380. package/dist/cjs/modules/stream/browser/factories.js +9 -9
  381. package/dist/cjs/modules/stream/browser/passthrough.js +0 -3
  382. package/dist/cjs/modules/stream/browser/pipeline.js +4 -4
  383. package/dist/cjs/modules/stream/browser/readable.js +7 -7
  384. package/dist/cjs/modules/stream/browser/transform.js +8 -8
  385. package/dist/cjs/modules/stream/browser/utils.js +13 -13
  386. package/dist/cjs/modules/stream/browser/writable.js +3 -3
  387. package/dist/cjs/modules/stream/buffered-stream.js +1 -1
  388. package/dist/cjs/modules/stream/chunked-builder.js +1 -1
  389. package/dist/cjs/modules/stream/node/collector.js +1 -1
  390. package/dist/cjs/modules/stream/node/factories.js +2 -2
  391. package/dist/cjs/modules/stream/node/utils.js +15 -15
  392. package/dist/cjs/modules/stream/pull-stream.js +1 -1
  393. package/dist/cjs/modules/stream/utils.base.js +1 -1
  394. package/dist/cjs/modules/xml/dom.js +6 -5
  395. package/dist/cjs/modules/xml/encode.js +1 -1
  396. package/dist/cjs/modules/xml/query.js +1 -1
  397. package/dist/cjs/modules/xml/sax.js +7 -6
  398. package/dist/cjs/modules/xml/to-object.js +4 -3
  399. package/dist/cjs/utils/binary.js +7 -3
  400. package/dist/cjs/utils/crypto.js +12 -4
  401. package/dist/cjs/utils/datetime.js +11 -11
  402. package/dist/esm/modules/archive/compression/compress.browser.js +3 -3
  403. package/dist/esm/modules/archive/compression/crc32.js +1 -1
  404. package/dist/esm/modules/archive/compression/streaming-compress.browser.js +6 -6
  405. package/dist/esm/modules/archive/compression/streaming-compress.js +1 -1
  406. package/dist/esm/modules/archive/crypto/aes.js +1 -1
  407. package/dist/esm/modules/archive/fs/archive-file.js +9 -9
  408. package/dist/esm/modules/archive/io/archive-sink.js +1 -1
  409. package/dist/esm/modules/archive/io/archive-source.js +3 -3
  410. package/dist/esm/modules/archive/shared/bytes.js +7 -3
  411. package/dist/esm/modules/archive/tar/tar-archive.js +1 -1
  412. package/dist/esm/modules/archive/tar/tar-gzip.js +2 -2
  413. package/dist/esm/modules/archive/tar/tar-header.js +2 -2
  414. package/dist/esm/modules/archive/tar/tar-parser.js +2 -2
  415. package/dist/esm/modules/archive/unzip/parser-core.js +2 -2
  416. package/dist/esm/modules/archive/unzip/remote-zip-reader.js +5 -5
  417. package/dist/esm/modules/archive/unzip/stream.base.js +4 -3
  418. package/dist/esm/modules/archive/unzip/stream.browser.js +7 -7
  419. package/dist/esm/modules/archive/unzip/stream.js +1 -1
  420. package/dist/esm/modules/archive/unzip/zip-extract-core.js +4 -4
  421. package/dist/esm/modules/archive/unzip/zip-reader.js +6 -6
  422. package/dist/esm/modules/archive/zip/stream.js +6 -6
  423. package/dist/esm/modules/archive/zip/zip-archive.js +11 -11
  424. package/dist/esm/modules/archive/zip/zip-bytes.js +5 -5
  425. package/dist/esm/modules/archive/zip/zip-editor.js +9 -9
  426. package/dist/esm/modules/archive/zip/zip-entry-metadata.js +1 -1
  427. package/dist/esm/modules/archive/zip/zip-output-pipeline.js +1 -1
  428. package/dist/esm/modules/archive/zip-spec/zip-extra-fields.js +1 -1
  429. package/dist/esm/modules/archive/zip-spec/zip-parser-core.js +2 -2
  430. package/dist/esm/modules/csv/format/config.js +3 -3
  431. package/dist/esm/modules/csv/format/formatter.js +2 -2
  432. package/dist/esm/modules/csv/parse/async.js +7 -6
  433. package/dist/esm/modules/csv/parse/config.js +2 -2
  434. package/dist/esm/modules/csv/parse/helpers.js +2 -2
  435. package/dist/esm/modules/csv/parse/lines.js +25 -23
  436. package/dist/esm/modules/csv/parse/row-processor.js +2 -2
  437. package/dist/esm/modules/csv/parse/sync.js +5 -5
  438. package/dist/esm/modules/csv/stream/parser.js +6 -6
  439. package/dist/esm/modules/csv/worker/worker-script.generated.js +1 -1
  440. package/dist/esm/modules/csv/worker/worker.entry.js +1 -1
  441. package/dist/esm/modules/excel/cell.js +4 -4
  442. package/dist/esm/modules/excel/column.js +2 -2
  443. package/dist/esm/modules/excel/defined-names.js +14 -6
  444. package/dist/esm/modules/excel/image.js +1 -1
  445. package/dist/esm/modules/excel/pivot-table.js +2 -2
  446. package/dist/esm/modules/excel/range.js +1 -1
  447. package/dist/esm/modules/excel/row.js +2 -2
  448. package/dist/esm/modules/excel/stream/hyperlink-reader.js +2 -2
  449. package/dist/esm/modules/excel/stream/sheet-comments-writer.js +3 -3
  450. package/dist/esm/modules/excel/stream/sheet-rels-writer.js +2 -2
  451. package/dist/esm/modules/excel/stream/workbook-reader.browser.js +6 -6
  452. package/dist/esm/modules/excel/stream/workbook-reader.js +3 -3
  453. package/dist/esm/modules/excel/stream/workbook-writer.browser.js +13 -13
  454. package/dist/esm/modules/excel/stream/workbook-writer.js +2 -2
  455. package/dist/esm/modules/excel/stream/worksheet-reader.js +6 -6
  456. package/dist/esm/modules/excel/stream/worksheet-writer.js +49 -20
  457. package/dist/esm/modules/excel/table.js +2 -2
  458. package/dist/esm/modules/excel/utils/cell-matrix.js +1 -1
  459. package/dist/esm/modules/excel/utils/drawing-utils.js +1 -1
  460. package/dist/esm/modules/excel/utils/encryptor.browser.js +1 -1
  461. package/dist/esm/modules/excel/utils/encryptor.js +1 -1
  462. package/dist/esm/modules/excel/utils/iterate-stream.js +2 -1
  463. package/dist/esm/modules/excel/utils/stream-buf.js +2 -2
  464. package/dist/esm/modules/excel/workbook.browser.js +10 -10
  465. package/dist/esm/modules/excel/workbook.js +2 -2
  466. package/dist/esm/modules/excel/worksheet.js +9 -9
  467. package/dist/esm/modules/excel/xlsx/xform/base-xform.js +4 -3
  468. package/dist/esm/modules/excel/xlsx/xform/book/defined-name-xform.js +1 -1
  469. package/dist/esm/modules/excel/xlsx/xform/book/workbook-xform.js +5 -5
  470. package/dist/esm/modules/excel/xlsx/xform/comment/comment-xform.js +1 -1
  471. package/dist/esm/modules/excel/xlsx/xform/comment/comments-xform.js +1 -1
  472. package/dist/esm/modules/excel/xlsx/xform/comment/vml-client-data-xform.js +2 -2
  473. package/dist/esm/modules/excel/xlsx/xform/comment/vml-notes-xform.js +1 -1
  474. package/dist/esm/modules/excel/xlsx/xform/comment/vml-shape-xform.js +1 -1
  475. package/dist/esm/modules/excel/xlsx/xform/core/app-xform.js +2 -2
  476. package/dist/esm/modules/excel/xlsx/xform/core/content-types-xform.js +2 -2
  477. package/dist/esm/modules/excel/xlsx/xform/core/core-xform.js +2 -2
  478. package/dist/esm/modules/excel/xlsx/xform/core/relationships-xform.js +2 -2
  479. package/dist/esm/modules/excel/xlsx/xform/drawing/c-nv-pr-xform.js +1 -1
  480. package/dist/esm/modules/excel/xlsx/xform/drawing/ctrl-prop-xform.js +1 -1
  481. package/dist/esm/modules/excel/xlsx/xform/drawing/drawing-xform.js +2 -2
  482. package/dist/esm/modules/excel/xlsx/xform/drawing/nv-pic-pr-xform.js +1 -1
  483. package/dist/esm/modules/excel/xlsx/xform/drawing/one-cell-anchor-xform.js +1 -1
  484. package/dist/esm/modules/excel/xlsx/xform/drawing/pic-xform.js +1 -1
  485. package/dist/esm/modules/excel/xlsx/xform/drawing/two-cell-anchor-xform.js +1 -1
  486. package/dist/esm/modules/excel/xlsx/xform/drawing/vml-drawing-xform.js +2 -2
  487. package/dist/esm/modules/excel/xlsx/xform/list-xform.js +1 -1
  488. package/dist/esm/modules/excel/xlsx/xform/pivot-table/cache-field-xform.js +2 -2
  489. package/dist/esm/modules/excel/xlsx/xform/pivot-table/cache-field.js +1 -1
  490. package/dist/esm/modules/excel/xlsx/xform/pivot-table/pivot-cache-definition-xform.js +1 -1
  491. package/dist/esm/modules/excel/xlsx/xform/pivot-table/pivot-cache-records-xform.js +5 -5
  492. package/dist/esm/modules/excel/xlsx/xform/pivot-table/pivot-table-xform.js +2 -2
  493. package/dist/esm/modules/excel/xlsx/xform/sheet/cell-xform.js +4 -4
  494. package/dist/esm/modules/excel/xlsx/xform/sheet/cf/cf-rule-xform.js +2 -2
  495. package/dist/esm/modules/excel/xlsx/xform/sheet/cf/color-scale-xform.js +1 -1
  496. package/dist/esm/modules/excel/xlsx/xform/sheet/cf/databar-xform.js +1 -1
  497. package/dist/esm/modules/excel/xlsx/xform/sheet/cf/ext-lst-ref-xform.js +3 -0
  498. package/dist/esm/modules/excel/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js +10 -3
  499. package/dist/esm/modules/excel/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.js +1 -1
  500. package/dist/esm/modules/excel/xlsx/xform/sheet/cf-ext/databar-ext-xform.js +8 -5
  501. package/dist/esm/modules/excel/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.js +1 -1
  502. package/dist/esm/modules/excel/xlsx/xform/sheet/col-breaks-xform.js +1 -1
  503. package/dist/esm/modules/excel/xlsx/xform/sheet/data-validations-xform.js +2 -2
  504. package/dist/esm/modules/excel/xlsx/xform/sheet/merges.js +1 -1
  505. package/dist/esm/modules/excel/xlsx/xform/sheet/row-breaks-xform.js +1 -1
  506. package/dist/esm/modules/excel/xlsx/xform/sheet/row-xform.js +2 -2
  507. package/dist/esm/modules/excel/xlsx/xform/sheet/sheet-properties-xform.js +2 -2
  508. package/dist/esm/modules/excel/xlsx/xform/sheet/worksheet-xform.js +19 -19
  509. package/dist/esm/modules/excel/xlsx/xform/strings/phonetic-text-xform.js +2 -2
  510. package/dist/esm/modules/excel/xlsx/xform/strings/rich-text-xform.js +1 -1
  511. package/dist/esm/modules/excel/xlsx/xform/strings/shared-string-xform.js +3 -3
  512. package/dist/esm/modules/excel/xlsx/xform/strings/shared-strings-xform.js +2 -2
  513. package/dist/esm/modules/excel/xlsx/xform/style/border-xform.js +1 -1
  514. package/dist/esm/modules/excel/xlsx/xform/style/font-xform.js +2 -2
  515. package/dist/esm/modules/excel/xlsx/xform/style/style-xform.js +2 -1
  516. package/dist/esm/modules/excel/xlsx/xform/style/styles-xform.js +5 -5
  517. package/dist/esm/modules/excel/xlsx/xform/table/auto-filter-xform.js +1 -1
  518. package/dist/esm/modules/excel/xlsx/xform/table/filter-column-xform.js +1 -1
  519. package/dist/esm/modules/excel/xlsx/xform/table/table-xform.js +1 -1
  520. package/dist/esm/modules/excel/xlsx/xlsx.browser.js +22 -22
  521. package/dist/esm/modules/excel/xlsx/xlsx.js +5 -4
  522. package/dist/esm/modules/pdf/builder/document-builder.js +2 -2
  523. package/dist/esm/modules/pdf/builder/form-appearance.js +1 -1
  524. package/dist/esm/modules/pdf/builder/pdf-editor.js +56 -11
  525. package/dist/esm/modules/pdf/core/digital-signature.js +15 -7
  526. package/dist/esm/modules/pdf/core/encryption.js +6 -5
  527. package/dist/esm/modules/pdf/core/pdf-kdf.browser.js +15 -0
  528. package/dist/esm/modules/pdf/core/pdf-kdf.js +17 -0
  529. package/dist/esm/modules/pdf/core/pdf-writer.js +3 -3
  530. package/dist/esm/modules/pdf/errors.js +2 -2
  531. package/dist/esm/modules/pdf/font/font-embedder.js +1 -1
  532. package/dist/esm/modules/pdf/font/font-manager.js +1 -1
  533. package/dist/esm/modules/pdf/pdf.js +1 -1
  534. package/dist/esm/modules/pdf/reader/content-interpreter.js +1 -1
  535. package/dist/esm/modules/pdf/reader/pdf-decrypt.js +14 -13
  536. package/dist/esm/modules/pdf/reader/pdf-document.js +2 -2
  537. package/dist/esm/modules/pdf/reader/pdf-parser.js +1 -1
  538. package/dist/esm/modules/pdf/reader/pdf-reader.js +8 -8
  539. package/dist/esm/modules/pdf/reader/stream-filters.js +1 -1
  540. package/dist/esm/modules/pdf/render/layout-engine.js +4 -4
  541. package/dist/esm/modules/pdf/render/page-renderer.js +1 -1
  542. package/dist/esm/modules/pdf/render/pdf-exporter.js +7 -7
  543. package/dist/esm/modules/stream/browser/collector.js +1 -1
  544. package/dist/esm/modules/stream/browser/compose.js +1 -1
  545. package/dist/esm/modules/stream/browser/duplex.js +4 -4
  546. package/dist/esm/modules/stream/browser/factories.js +6 -6
  547. package/dist/esm/modules/stream/browser/passthrough.js +0 -3
  548. package/dist/esm/modules/stream/browser/pipeline.js +4 -4
  549. package/dist/esm/modules/stream/browser/readable.js +8 -8
  550. package/dist/esm/modules/stream/browser/transform.js +8 -8
  551. package/dist/esm/modules/stream/browser/utils.js +8 -8
  552. package/dist/esm/modules/stream/browser/writable.js +3 -3
  553. package/dist/esm/modules/stream/buffered-stream.js +1 -1
  554. package/dist/esm/modules/stream/chunked-builder.js +1 -1
  555. package/dist/esm/modules/stream/node/collector.js +1 -1
  556. package/dist/esm/modules/stream/node/factories.js +1 -1
  557. package/dist/esm/modules/stream/node/utils.js +5 -5
  558. package/dist/esm/modules/stream/pull-stream.js +1 -1
  559. package/dist/esm/modules/stream/utils.base.js +1 -1
  560. package/dist/esm/modules/xml/dom.js +3 -2
  561. package/dist/esm/modules/xml/encode.js +1 -1
  562. package/dist/esm/modules/xml/query.js +1 -1
  563. package/dist/esm/modules/xml/sax.js +5 -4
  564. package/dist/esm/modules/xml/to-object.js +3 -2
  565. package/dist/esm/utils/binary.js +7 -3
  566. package/dist/esm/utils/crypto.js +12 -4
  567. package/dist/esm/utils/datetime.js +11 -11
  568. package/dist/iife/excelts.iife.js +43364 -43159
  569. package/dist/iife/excelts.iife.js.map +1 -1
  570. package/dist/iife/excelts.iife.min.js +149 -149
  571. package/dist/types/modules/archive/compression/worker-pool/pool.browser.d.ts +1 -1
  572. package/dist/types/modules/archive/fs/types.d.ts +3 -3
  573. package/dist/types/modules/archive/tar/tar-archive.d.ts +1 -1
  574. package/dist/types/modules/archive/unzip/progress.d.ts +2 -2
  575. package/dist/types/modules/archive/unzip/remote-zip-reader.d.ts +2 -2
  576. package/dist/types/modules/archive/unzip/stream.base.d.ts +1 -1
  577. package/dist/types/modules/archive/unzip/stream.browser.d.ts +2 -2
  578. package/dist/types/modules/archive/unzip/stream.d.ts +2 -2
  579. package/dist/types/modules/archive/unzip/zip-parser.d.ts +1 -1
  580. package/dist/types/modules/archive/unzip/zip-reader.d.ts +4 -4
  581. package/dist/types/modules/archive/zip/progress.d.ts +1 -1
  582. package/dist/types/modules/archive/zip/stream.d.ts +3 -3
  583. package/dist/types/modules/archive/zip/zip-archive.d.ts +4 -4
  584. package/dist/types/modules/archive/zip/zip-bytes.d.ts +1 -1
  585. package/dist/types/modules/archive/zip/zip-editor.d.ts +6 -6
  586. package/dist/types/modules/archive/zip/zip-entry-options.d.ts +2 -2
  587. package/dist/types/modules/archive/zip/zip-output-pipeline.d.ts +1 -1
  588. package/dist/types/modules/archive/zip-spec/zip-parser-core.d.ts +1 -1
  589. package/dist/types/modules/csv/parse/helpers.d.ts +1 -1
  590. package/dist/types/modules/csv/parse/sync.d.ts +1 -1
  591. package/dist/types/modules/csv/worker/worker-script.generated.d.ts +1 -1
  592. package/dist/types/modules/excel/cell.d.ts +3 -3
  593. package/dist/types/modules/excel/column.d.ts +1 -1
  594. package/dist/types/modules/excel/defined-names.d.ts +2 -2
  595. package/dist/types/modules/excel/row.d.ts +1 -1
  596. package/dist/types/modules/excel/stream/hyperlink-reader.d.ts +1 -1
  597. package/dist/types/modules/excel/stream/workbook-reader.browser.d.ts +4 -4
  598. package/dist/types/modules/excel/stream/workbook-reader.d.ts +2 -2
  599. package/dist/types/modules/excel/stream/workbook-writer.browser.d.ts +4 -4
  600. package/dist/types/modules/excel/stream/workbook-writer.d.ts +1 -1
  601. package/dist/types/modules/excel/stream/worksheet-reader.d.ts +2 -2
  602. package/dist/types/modules/excel/stream/worksheet-writer.d.ts +14 -4
  603. package/dist/types/modules/excel/utils/stream-buf.d.ts +5 -5
  604. package/dist/types/modules/excel/utils/text-metrics.d.ts +1 -1
  605. package/dist/types/modules/excel/workbook.browser.d.ts +7 -7
  606. package/dist/types/modules/excel/worksheet.d.ts +6 -6
  607. package/dist/types/modules/excel/xlsx/xform/book/sheet-xform.d.ts +1 -1
  608. package/dist/types/modules/excel/xlsx/xform/comment/comment-xform.d.ts +1 -1
  609. package/dist/types/modules/excel/xlsx/xform/drawing/ctrl-prop-xform.d.ts +1 -1
  610. package/dist/types/modules/excel/xlsx/xform/drawing/vml-drawing-xform.d.ts +1 -1
  611. package/dist/types/modules/excel/xlsx/xform/pivot-table/cache-field-xform.d.ts +1 -1
  612. package/dist/types/modules/excel/xlsx/xform/pivot-table/pivot-cache-definition-xform.d.ts +1 -1
  613. package/dist/types/modules/excel/xlsx/xform/pivot-table/pivot-cache-records-xform.d.ts +2 -2
  614. package/dist/types/modules/excel/xlsx/xform/pivot-table/pivot-table-xform.d.ts +2 -2
  615. package/dist/types/modules/excel/xlsx/xform/sheet/cf/cf-rule-xform.d.ts +1 -1
  616. package/dist/types/modules/excel/xlsx/xform/sheet/cf/color-scale-xform.d.ts +1 -1
  617. package/dist/types/modules/excel/xlsx/xform/sheet/cf/databar-xform.d.ts +1 -1
  618. package/dist/types/modules/excel/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.d.ts +5 -0
  619. package/dist/types/modules/excel/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.d.ts +1 -1
  620. package/dist/types/modules/excel/xlsx/xform/sheet/cf-ext/databar-ext-xform.d.ts +2 -2
  621. package/dist/types/modules/excel/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.d.ts +1 -1
  622. package/dist/types/modules/excel/xlsx/xform/strings/rich-text-xform.d.ts +1 -1
  623. package/dist/types/modules/excel/xlsx/xlsx.browser.d.ts +2 -2
  624. package/dist/types/modules/pdf/core/pdf-kdf.browser.d.ts +10 -0
  625. package/dist/types/modules/pdf/core/pdf-kdf.d.ts +12 -0
  626. package/dist/types/modules/pdf/core/pdf-writer.d.ts +1 -1
  627. package/dist/types/modules/pdf/errors.d.ts +1 -2
  628. package/dist/types/modules/pdf/font/font-embedder.d.ts +1 -1
  629. package/dist/types/modules/pdf/font/font-manager.d.ts +1 -1
  630. package/dist/types/modules/pdf/reader/pdf-reader.d.ts +4 -4
  631. package/dist/types/modules/pdf/render/layout-engine.d.ts +1 -1
  632. package/dist/types/modules/stream/browser/factories.d.ts +3 -3
  633. package/dist/types/modules/stream/browser/passthrough.d.ts +0 -4
  634. package/dist/types/modules/stream/browser/pipeline.d.ts +1 -1
  635. package/dist/types/modules/stream/browser/transform.d.ts +1 -1
  636. package/dist/types/modules/stream/buffered-stream.d.ts +1 -1
  637. package/dist/types/modules/stream/node/factories.d.ts +2 -2
  638. package/dist/types/modules/stream/node/pipeline.d.ts +1 -1
  639. package/dist/types/modules/stream/pull-stream.d.ts +1 -1
  640. package/dist/types/utils/crypto.d.ts +9 -1
  641. package/package.json +5 -13
@@ -53,6 +53,9 @@ class ExtLstRefXform extends CompositeXform {
53
53
  return "extLst";
54
54
  }
55
55
  render(xmlStream, model) {
56
+ if (!model.x14Id) {
57
+ return;
58
+ }
56
59
  xmlStream.openNode(this.tag);
57
60
  this.map.ext.render(xmlStream, model);
58
61
  xmlStream.closeNode();
@@ -7,6 +7,11 @@ declare class CfRuleExtXform extends CompositeXform {
7
7
  constructor();
8
8
  get tag(): string;
9
9
  static isExt(rule: any): boolean;
10
+ /**
11
+ * Assign x14Id to a rule if it requires an ext section.
12
+ * Idempotent — safe to call multiple times on the same rule.
13
+ */
14
+ static prepareRule(rule: any): void;
10
15
  prepare(model: any): void;
11
16
  render(xmlStream: any, model: any): void;
12
17
  renderDataBar(xmlStream: any, model: any): void;
@@ -31,11 +31,18 @@ class CfRuleExtXform extends CompositeXform {
31
31
  }
32
32
  return false;
33
33
  }
34
- prepare(model) {
35
- if (CfRuleExtXform.isExt(model)) {
36
- model.x14Id = `{${uuidV4()}}`.toUpperCase();
34
+ /**
35
+ * Assign x14Id to a rule if it requires an ext section.
36
+ * Idempotent — safe to call multiple times on the same rule.
37
+ */
38
+ static prepareRule(rule) {
39
+ if (CfRuleExtXform.isExt(rule) && !rule.x14Id) {
40
+ rule.x14Id = `{${uuidV4()}}`.toUpperCase();
37
41
  }
38
42
  }
43
+ prepare(model) {
44
+ CfRuleExtXform.prepareRule(model);
45
+ }
39
46
  render(xmlStream, model) {
40
47
  if (!CfRuleExtXform.isExt(model)) {
41
48
  return;
@@ -1,6 +1,6 @@
1
1
  import { CompositeXform } from "../../composite-xform.js";
2
- import { SqrefExtXform } from "./sqref-ext-xform.js";
3
2
  import { CfRuleExtXform } from "./cf-rule-ext-xform.js";
3
+ import { SqrefExtXform } from "./sqref-ext-xform.js";
4
4
  declare class ConditionalFormattingExtXform extends CompositeXform {
5
5
  sqRef: SqrefExtXform;
6
6
  cfRule: CfRuleExtXform;
@@ -1,6 +1,6 @@
1
1
  import { CompositeXform } from "../../composite-xform.js";
2
- import { SqrefExtXform } from "./sqref-ext-xform.js";
3
2
  import { CfRuleExtXform } from "./cf-rule-ext-xform.js";
3
+ import { SqrefExtXform } from "./sqref-ext-xform.js";
4
4
  class ConditionalFormattingExtXform extends CompositeXform {
5
5
  constructor() {
6
6
  super();
@@ -1,6 +1,6 @@
1
1
  import { CompositeXform } from "../../composite-xform.js";
2
- import { ColorXform } from "../../style/color-xform.js";
3
2
  import { CfvoExtXform } from "./cfvo-ext-xform.js";
3
+ import { ColorXform } from "../../style/color-xform.js";
4
4
  declare class DatabarExtXform extends CompositeXform {
5
5
  cfvoXform: CfvoExtXform;
6
6
  borderColorXform: ColorXform;
@@ -8,7 +8,7 @@ declare class DatabarExtXform extends CompositeXform {
8
8
  negativeFillColorXform: ColorXform;
9
9
  axisColorXform: ColorXform;
10
10
  constructor();
11
- static isExt(rule: any): boolean;
11
+ static isExt(_rule: any): boolean;
12
12
  get tag(): string;
13
13
  render(xmlStream: any, model: any): void;
14
14
  createNewModel({ attributes }: {
@@ -1,7 +1,7 @@
1
1
  import { BaseXform } from "../../base-xform.js";
2
2
  import { CompositeXform } from "../../composite-xform.js";
3
- import { ColorXform } from "../../style/color-xform.js";
4
3
  import { CfvoExtXform } from "./cfvo-ext-xform.js";
4
+ import { ColorXform } from "../../style/color-xform.js";
5
5
  class DatabarExtXform extends CompositeXform {
6
6
  constructor() {
7
7
  super();
@@ -13,10 +13,13 @@ class DatabarExtXform extends CompositeXform {
13
13
  "x14:axisColor": (this.axisColorXform = new ColorXform("x14:axisColor"))
14
14
  };
15
15
  }
16
- static isExt(rule) {
17
- // not all databars need ext
18
- // TODO: refine this
19
- return !rule.gradient;
16
+ static isExt(_rule) {
17
+ // All data bars require an ext section for proper rendering in modern Excel
18
+ // (Excel 2010+). Without the ext section, data bars may not display or Excel
19
+ // may show a repair dialog. The ext section carries additional formatting
20
+ // attributes (minLength, maxLength, border, gradient, axis, etc.) that the
21
+ // primary <dataBar> element does not support.
22
+ return true;
20
23
  }
21
24
  get tag() {
22
25
  return "x14:dataBar";
@@ -1,6 +1,6 @@
1
1
  import { CompositeXform } from "../../composite-xform.js";
2
- import { CfvoExtXform } from "./cfvo-ext-xform.js";
3
2
  import { CfIconExtXform } from "./cf-icon-ext-xform.js";
3
+ import { CfvoExtXform } from "./cfvo-ext-xform.js";
4
4
  declare class IconSetExtXform extends CompositeXform {
5
5
  cfvoXform: CfvoExtXform;
6
6
  cfIconXform: CfIconExtXform;
@@ -1,7 +1,7 @@
1
1
  import { BaseXform } from "../../base-xform.js";
2
2
  import { CompositeXform } from "../../composite-xform.js";
3
- import { CfvoExtXform } from "./cfvo-ext-xform.js";
4
3
  import { CfIconExtXform } from "./cf-icon-ext-xform.js";
4
+ import { CfvoExtXform } from "./cfvo-ext-xform.js";
5
5
  class IconSetExtXform extends CompositeXform {
6
6
  constructor() {
7
7
  super();
@@ -1,5 +1,5 @@
1
- import { PageBreaksXform } from "./page-breaks-xform.js";
2
1
  import { ListXform } from "../list-xform.js";
2
+ import { PageBreaksXform } from "./page-breaks-xform.js";
3
3
  /**
4
4
  * Xform for column page breaks (colBreaks element in worksheet XML)
5
5
  * Used to define manual page breaks between columns when printing.
@@ -1,7 +1,7 @@
1
- import { BaseXform } from "../base-xform.js";
2
- import { parseBoolean, dateToExcel, excelToDate } from "../../../../../utils/utils.browser.js";
3
1
  import { colCache } from "../../../utils/col-cache.js";
4
2
  import { isEqual } from "../../../utils/under-dash.js";
3
+ import { BaseXform } from "../base-xform.js";
4
+ import { parseBoolean, dateToExcel, excelToDate } from "../../../../../utils/utils.browser.js";
5
5
  function assign(definedName, attributes, name, defaultValue) {
6
6
  const value = attributes[name];
7
7
  if (value !== undefined) {
@@ -1,6 +1,6 @@
1
+ import { Enums } from "../../../enums.js";
1
2
  import { Range } from "../../../range.js";
2
3
  import { colCache } from "../../../utils/col-cache.js";
3
- import { Enums } from "../../../enums.js";
4
4
  class Merges {
5
5
  constructor() {
6
6
  // optional mergeCells is array of ranges (like the xml)
@@ -1,5 +1,5 @@
1
- import { PageBreaksXform } from "./page-breaks-xform.js";
2
1
  import { ListXform } from "../list-xform.js";
2
+ import { PageBreaksXform } from "./page-breaks-xform.js";
3
3
  /**
4
4
  * Xform for row page breaks (rowBreaks element in worksheet XML)
5
5
  * Used to define manual page breaks between rows when printing.
@@ -1,8 +1,8 @@
1
+ import { MaxItemsExceededError } from "../../../errors.js";
2
+ import { colCache } from "../../../utils/col-cache.js";
1
3
  import { BaseXform } from "../base-xform.js";
2
4
  import { CellXform } from "./cell-xform.js";
3
5
  import { parseBoolean } from "../../../../../utils/utils.browser.js";
4
- import { colCache } from "../../../utils/col-cache.js";
5
- import { MaxItemsExceededError } from "../../../errors.js";
6
6
  class RowXform extends BaseXform {
7
7
  constructor(options) {
8
8
  super();
@@ -1,7 +1,7 @@
1
1
  import { BaseXform } from "../base-xform.js";
2
- import { ColorXform } from "../style/color-xform.js";
3
- import { PageSetupPropertiesXform } from "./page-setup-properties-xform.js";
4
2
  import { OutlinePropertiesXform } from "./outline-properties-xform.js";
3
+ import { PageSetupPropertiesXform } from "./page-setup-properties-xform.js";
4
+ import { ColorXform } from "../style/color-xform.js";
5
5
  class SheetPropertiesXform extends BaseXform {
6
6
  constructor() {
7
7
  super();
@@ -1,33 +1,33 @@
1
1
  import { colCache } from "../../../utils/col-cache.js";
2
- import { StdDocAttributes } from "../../../../xml/writer.js";
2
+ import { buildDrawingAnchorsAndRels, resolveMediaTarget } from "../../../utils/drawing-utils.js";
3
+ import { commentsRelTargetFromWorksheet, ctrlPropRelTargetFromWorksheet, drawingRelTargetFromWorksheet, pivotTableRelTargetFromWorksheet, tableRelTargetFromWorksheet, vmlDrawingRelTargetFromWorksheet, vmlDrawingHFRelTargetFromWorksheet } from "../../../utils/ooxml-paths.js";
3
4
  import { RelType } from "../../rel-type.js";
4
- import { Merges } from "./merges.js";
5
5
  import { BaseXform } from "../base-xform.js";
6
- import { isInternalLink, HyperlinkXform } from "./hyperlink-xform.js";
7
6
  import { ListXform } from "../list-xform.js";
8
- import { RowXform } from "./row-xform.js";
7
+ import { AutoFilterXform } from "./auto-filter-xform.js";
8
+ import { ConditionalFormattingsXform } from "./cf/conditional-formattings-xform.js";
9
+ import { ColBreaksXform } from "./col-breaks-xform.js";
9
10
  import { ColXform } from "./col-xform.js";
11
+ import { DataValidationsXform } from "./data-validations-xform.js";
10
12
  import { DimensionXform } from "./dimension-xform.js";
13
+ import { DrawingXform } from "./drawing-xform.js";
14
+ import { ExtLstXform } from "./ext-lst-xform.js";
15
+ import { HeaderFooterXform } from "./header-footer-xform.js";
16
+ import { isInternalLink, HyperlinkXform } from "./hyperlink-xform.js";
11
17
  import { MergeCellXform } from "./merge-cell-xform.js";
12
- import { DataValidationsXform } from "./data-validations-xform.js";
13
- import { SheetPropertiesXform } from "./sheet-properties-xform.js";
14
- import { SheetFormatPropertiesXform } from "./sheet-format-properties-xform.js";
15
- import { SheetViewXform } from "./sheet-view-xform.js";
16
- import { SheetProtectionXform } from "./sheet-protection-xform.js";
18
+ import { Merges } from "./merges.js";
17
19
  import { PageMarginsXform } from "./page-margins-xform.js";
18
20
  import { PageSetupXform } from "./page-setup-xform.js";
19
- import { PrintOptionsXform } from "./print-options-xform.js";
20
- import { AutoFilterXform } from "./auto-filter-xform.js";
21
21
  import { PictureXform } from "./picture-xform.js";
22
- import { DrawingXform } from "./drawing-xform.js";
23
- import { TablePartXform } from "./table-part-xform.js";
22
+ import { PrintOptionsXform } from "./print-options-xform.js";
24
23
  import { RowBreaksXform } from "./row-breaks-xform.js";
25
- import { ColBreaksXform } from "./col-breaks-xform.js";
26
- import { HeaderFooterXform } from "./header-footer-xform.js";
27
- import { ConditionalFormattingsXform } from "./cf/conditional-formattings-xform.js";
28
- import { ExtLstXform } from "./ext-lst-xform.js";
29
- import { commentsRelTargetFromWorksheet, ctrlPropRelTargetFromWorksheet, drawingRelTargetFromWorksheet, pivotTableRelTargetFromWorksheet, tableRelTargetFromWorksheet, vmlDrawingRelTargetFromWorksheet, vmlDrawingHFRelTargetFromWorksheet } from "../../../utils/ooxml-paths.js";
30
- import { buildDrawingAnchorsAndRels, resolveMediaTarget } from "../../../utils/drawing-utils.js";
24
+ import { RowXform } from "./row-xform.js";
25
+ import { SheetFormatPropertiesXform } from "./sheet-format-properties-xform.js";
26
+ import { SheetPropertiesXform } from "./sheet-properties-xform.js";
27
+ import { SheetProtectionXform } from "./sheet-protection-xform.js";
28
+ import { SheetViewXform } from "./sheet-view-xform.js";
29
+ import { TablePartXform } from "./table-part-xform.js";
30
+ import { StdDocAttributes } from "../../../../xml/writer.js";
31
31
  const mergeRule = (rule, extRule) => {
32
32
  Object.keys(extRule).forEach(key => {
33
33
  const value = rule[key];
@@ -1,6 +1,6 @@
1
- import { TextXform } from "./text-xform.js";
2
- import { RichTextXform } from "./rich-text-xform.js";
3
1
  import { BaseXform } from "../base-xform.js";
2
+ import { RichTextXform } from "./rich-text-xform.js";
3
+ import { TextXform } from "./text-xform.js";
4
4
  class PhoneticTextXform extends BaseXform {
5
5
  constructor() {
6
6
  super();
@@ -1,6 +1,6 @@
1
+ import { BaseXform } from "../base-xform.js";
1
2
  import { TextXform } from "./text-xform.js";
2
3
  import { FontXform } from "../style/font-xform.js";
3
- import { BaseXform } from "../base-xform.js";
4
4
  interface RichTextModel {
5
5
  font?: any;
6
6
  text: string;
@@ -1,6 +1,6 @@
1
+ import { BaseXform } from "../base-xform.js";
1
2
  import { TextXform } from "./text-xform.js";
2
3
  import { FontXform } from "../style/font-xform.js";
3
- import { BaseXform } from "../base-xform.js";
4
4
  class RichTextXform extends BaseXform {
5
5
  constructor(model) {
6
6
  super();
@@ -1,7 +1,7 @@
1
- import { TextXform } from "./text-xform.js";
2
- import { RichTextXform } from "./rich-text-xform.js";
3
- import { PhoneticTextXform } from "./phonetic-text-xform.js";
4
1
  import { BaseXform } from "../base-xform.js";
2
+ import { PhoneticTextXform } from "./phonetic-text-xform.js";
3
+ import { RichTextXform } from "./rich-text-xform.js";
4
+ import { TextXform } from "./text-xform.js";
5
5
  class SharedStringXform extends BaseXform {
6
6
  constructor(model) {
7
7
  super();
@@ -1,7 +1,7 @@
1
- import { StdDocAttributes } from "../../../../xml/writer.js";
1
+ import { XmlParseError } from "../../../errors.js";
2
2
  import { BaseXform } from "../base-xform.js";
3
3
  import { SharedStringXform } from "./shared-string-xform.js";
4
- import { XmlParseError } from "../../../errors.js";
4
+ import { StdDocAttributes } from "../../../../xml/writer.js";
5
5
  class SharedStringsXform extends BaseXform {
6
6
  constructor(model) {
7
7
  super();
@@ -1,6 +1,6 @@
1
1
  import { BaseXform } from "../base-xform.js";
2
- import { parseBoolean } from "../../../../../utils/utils.browser.js";
3
2
  import { ColorXform } from "./color-xform.js";
3
+ import { parseBoolean } from "../../../../../utils/utils.browser.js";
4
4
  class EdgeXform extends BaseXform {
5
5
  constructor(name) {
6
6
  super();
@@ -1,9 +1,9 @@
1
- import { ColorXform } from "./color-xform.js";
1
+ import { BaseXform } from "../base-xform.js";
2
2
  import { BooleanXform } from "../simple/boolean-xform.js";
3
3
  import { IntegerXform } from "../simple/integer-xform.js";
4
4
  import { StringXform } from "../simple/string-xform.js";
5
+ import { ColorXform } from "./color-xform.js";
5
6
  import { UnderlineXform } from "./underline-xform.js";
6
- import { BaseXform } from "../base-xform.js";
7
7
  // Font encapsulates translation from font model to xlsx
8
8
  class FontXform extends BaseXform {
9
9
  constructor(options) {
@@ -75,7 +75,7 @@ class StyleXform extends BaseXform {
75
75
  }
76
76
  // used during sax parsing of xml to build font object
77
77
  switch (node.name) {
78
- case "xf":
78
+ case "xf": {
79
79
  this.model = {
80
80
  numFmtId: parseInt(node.attributes.numFmtId, 10),
81
81
  fontId: parseInt(node.attributes.fontId, 10),
@@ -103,6 +103,7 @@ class StyleXform extends BaseXform {
103
103
  }
104
104
  }
105
105
  return true;
106
+ }
106
107
  case "alignment":
107
108
  this.parser = this.map.alignment;
108
109
  this.parser.parseOpen(node);
@@ -1,15 +1,15 @@
1
1
  import { Enums } from "../../../enums.js";
2
- import { StdDocAttributes } from "../../../../xml/writer.js";
3
2
  import { ExcelNotSupportedError } from "../../../errors.js";
4
3
  import { BaseXform } from "../base-xform.js";
5
- import { StaticXform } from "../static-xform.js";
6
4
  import { ListXform } from "../list-xform.js";
7
- import { FontXform } from "./font-xform.js";
8
- import { FillXform } from "./fill-xform.js";
5
+ import { StaticXform } from "../static-xform.js";
9
6
  import { BorderXform } from "./border-xform.js";
7
+ import { DxfXform } from "./dxf-xform.js";
8
+ import { FillXform } from "./fill-xform.js";
9
+ import { FontXform } from "./font-xform.js";
10
10
  import { NumFmtXform } from "./numfmt-xform.js";
11
11
  import { StyleXform } from "./style-xform.js";
12
- import { DxfXform } from "./dxf-xform.js";
12
+ import { StdDocAttributes } from "../../../../xml/writer.js";
13
13
  // custom numfmt ids start here
14
14
  const NUMFMT_BASE = 164;
15
15
  // =============================================================================
@@ -1,6 +1,6 @@
1
+ import { XmlParseError } from "../../../errors.js";
1
2
  import { BaseXform } from "../base-xform.js";
2
3
  import { FilterColumnXform } from "./filter-column-xform.js";
3
- import { XmlParseError } from "../../../errors.js";
4
4
  class AutoFilterXform extends BaseXform {
5
5
  constructor() {
6
6
  super();
@@ -1,8 +1,8 @@
1
+ import { XmlParseError } from "../../../errors.js";
1
2
  import { BaseXform } from "../base-xform.js";
2
3
  import { ListXform } from "../list-xform.js";
3
4
  import { CustomFilterXform } from "./custom-filter-xform.js";
4
5
  import { FilterXform } from "./filter-xform.js";
5
- import { XmlParseError } from "../../../errors.js";
6
6
  class FilterColumnXform extends BaseXform {
7
7
  constructor() {
8
8
  super();
@@ -1,9 +1,9 @@
1
- import { StdDocAttributes } from "../../../../xml/writer.js";
2
1
  import { BaseXform } from "../base-xform.js";
3
2
  import { ListXform } from "../list-xform.js";
4
3
  import { AutoFilterXform } from "./auto-filter-xform.js";
5
4
  import { TableColumnXform } from "./table-column-xform.js";
6
5
  import { TableStyleInfoXform } from "./table-style-info-xform.js";
6
+ import { StdDocAttributes } from "../../../../xml/writer.js";
7
7
  class TableXform extends BaseXform {
8
8
  constructor() {
9
9
  super();
@@ -8,10 +8,10 @@
8
8
  * - prepareModel: Prepare model for writing
9
9
  * - loadFromFiles: Load from pre-extracted ZIP data
10
10
  */
11
+ import type { ZipTimestampMode } from "../../archive/zip-spec/timestamps.js";
11
12
  import type { PivotTableSubtotal } from "../pivot-table.js";
12
- import { type IEventEmitter } from "../../stream/index.js";
13
13
  import type { Workbook } from "../workbook.js";
14
- import type { ZipTimestampMode } from "../../archive/zip-spec/timestamps.js";
14
+ import { type IEventEmitter } from "../../stream/index.js";
15
15
  type StreamListener = Parameters<IEventEmitter["on"]>[1];
16
16
  interface EmitterLike {
17
17
  on(event: string, listener: StreamListener): this;
@@ -8,36 +8,36 @@
8
8
  * - prepareModel: Prepare model for writing
9
9
  * - loadFromFiles: Load from pre-extracted ZIP data
10
10
  */
11
- import { XmlStreamWriter } from "../../xml/stream-writer.js";
11
+ import { ZipParser } from "../../archive/unzip/zip-parser.js";
12
+ import { StreamingZip, ZipDeflateFile } from "../../archive/zip/stream.js";
12
13
  import { ExcelStreamStateError, ExcelFileError, ImageError, ExcelNotSupportedError, XmlParseError } from "../errors.js";
13
- import { StylesXform } from "./xform/style/styles-xform.js";
14
- import { CoreXform } from "./xform/core/core-xform.js";
15
- import { SharedStringsXform } from "./xform/strings/shared-strings-xform.js";
16
- import { RelationshipsXform } from "./xform/core/relationships-xform.js";
17
- import { ContentTypesXform } from "./xform/core/content-types-xform.js";
18
- import { AppXform } from "./xform/core/app-xform.js";
14
+ import { filterDrawingAnchors } from "../utils/drawing-utils.js";
15
+ import { commentsPath, commentsRelTargetFromWorksheetName, ctrlPropPath, drawingPath, drawingRelsPath, OOXML_REL_TARGETS, pivotTableRelTargetFromWorksheetName, pivotCacheDefinitionRelTargetFromWorkbook, getCommentsIndexFromPath, getDrawingNameFromPath, getDrawingNameFromRelsPath, getMediaFilenameFromPath, mediaPath, getPivotCacheDefinitionNameFromPath, getPivotCacheDefinitionNameFromRelsPath, getPivotCacheRecordsNameFromPath, getPivotTableNameFromPath, getPivotTableNameFromRelsPath, pivotCacheDefinitionPath, pivotCacheDefinitionRelsPath, pivotCacheDefinitionRelTargetFromPivotTable, pivotCacheRecordsPath, pivotCacheRecordsRelTarget, pivotTablePath, pivotTableRelsPath, getTableNameFromPath, tablePath, tableRelTargetFromWorksheetName, themePath, getThemeNameFromPath, getVmlDrawingNameFromPath, getVmlDrawingHFNameFromPath, getWorksheetNoFromWorksheetPath, getWorksheetNoFromWorksheetRelsPath, isBinaryEntryPath, normalizeZipPath, OOXML_PATHS, vmlDrawingRelTargetFromWorksheetName, vmlDrawingPath, vmlDrawingHFPath, vmlDrawingHFRelsPath, worksheetPath, worksheetRelsPath, worksheetRelTarget } from "../utils/ooxml-paths.js";
16
+ import { PassthroughManager } from "../utils/passthrough-manager.js";
17
+ import { StreamBuf } from "../utils/stream-buf.js";
18
+ import { RelType } from "./rel-type.js";
19
19
  import { WorkbookXform } from "./xform/book/workbook-xform.js";
20
- import { WorkSheetXform } from "./xform/sheet/worksheet-xform.js";
20
+ import { CommentsXform } from "./xform/comment/comments-xform.js";
21
+ import { AppXform } from "./xform/core/app-xform.js";
22
+ import { ContentTypesXform } from "./xform/core/content-types-xform.js";
23
+ import { CoreXform } from "./xform/core/core-xform.js";
21
24
  import { FeaturePropertyBagXform } from "./xform/core/feature-property-bag-xform.js";
25
+ import { RelationshipsXform } from "./xform/core/relationships-xform.js";
26
+ import { CtrlPropXform } from "./xform/drawing/ctrl-prop-xform.js";
22
27
  import { DrawingXform } from "./xform/drawing/drawing-xform.js";
23
- import { TableXform } from "./xform/table/table-xform.js";
24
- import { PivotCacheRecordsXform } from "./xform/pivot-table/pivot-cache-records-xform.js";
28
+ import { VmlDrawingXform } from "./xform/drawing/vml-drawing-xform.js";
25
29
  import { PivotCacheDefinitionXform } from "./xform/pivot-table/pivot-cache-definition-xform.js";
30
+ import { PivotCacheRecordsXform } from "./xform/pivot-table/pivot-cache-records-xform.js";
26
31
  import { PivotTableXform } from "./xform/pivot-table/pivot-table-xform.js";
27
- import { CommentsXform } from "./xform/comment/comments-xform.js";
28
- import { VmlDrawingXform } from "./xform/drawing/vml-drawing-xform.js";
29
- import { CtrlPropXform } from "./xform/drawing/ctrl-prop-xform.js";
32
+ import { WorkSheetXform } from "./xform/sheet/worksheet-xform.js";
33
+ import { SharedStringsXform } from "./xform/strings/shared-strings-xform.js";
34
+ import { StylesXform } from "./xform/style/styles-xform.js";
35
+ import { TableXform } from "./xform/table/table-xform.js";
30
36
  import { theme1Xml } from "./xml/theme1.js";
31
- import { RelType } from "./rel-type.js";
32
- import { StreamBuf } from "../utils/stream-buf.js";
33
- import { bufferToString, base64ToUint8Array } from "../../../utils/utils.browser.js";
34
- import { StreamingZip, ZipDeflateFile } from "../../archive/zip/stream.js";
35
- import { ZipParser } from "../../archive/unzip/zip-parser.js";
36
37
  import { PassThrough } from "../../stream/index.browser.js";
37
38
  import { concatUint8Arrays } from "../../../utils/binary.js";
38
- import { commentsPath, commentsRelTargetFromWorksheetName, ctrlPropPath, drawingPath, drawingRelsPath, OOXML_REL_TARGETS, pivotTableRelTargetFromWorksheetName, pivotCacheDefinitionRelTargetFromWorkbook, getCommentsIndexFromPath, getDrawingNameFromPath, getDrawingNameFromRelsPath, getMediaFilenameFromPath, mediaPath, getPivotCacheDefinitionNameFromPath, getPivotCacheDefinitionNameFromRelsPath, getPivotCacheRecordsNameFromPath, getPivotTableNameFromPath, getPivotTableNameFromRelsPath, pivotCacheDefinitionPath, pivotCacheDefinitionRelsPath, pivotCacheDefinitionRelTargetFromPivotTable, pivotCacheRecordsPath, pivotCacheRecordsRelTarget, pivotTablePath, pivotTableRelsPath, getTableNameFromPath, tablePath, tableRelTargetFromWorksheetName, themePath, getThemeNameFromPath, getVmlDrawingNameFromPath, getVmlDrawingHFNameFromPath, getWorksheetNoFromWorksheetPath, getWorksheetNoFromWorksheetRelsPath, isBinaryEntryPath, normalizeZipPath, OOXML_PATHS, vmlDrawingRelTargetFromWorksheetName, vmlDrawingPath, vmlDrawingHFPath, vmlDrawingHFRelsPath, worksheetPath, worksheetRelsPath, worksheetRelTarget } from "../utils/ooxml-paths.js";
39
- import { filterDrawingAnchors } from "../utils/drawing-utils.js";
40
- import { PassthroughManager } from "../utils/passthrough-manager.js";
39
+ import { bufferToString, base64ToUint8Array } from "../../../utils/utils.browser.js";
40
+ import { XmlStreamWriter } from "../../xml/stream-writer.js";
41
41
  class StreamingZipWriterAdapter {
42
42
  constructor(options) {
43
43
  this.events = new Map();
@@ -101,7 +101,7 @@ class StreamingZipWriterAdapter {
101
101
  if (ok instanceof Promise) {
102
102
  this._pendingWrites++;
103
103
  ok.then(result => {
104
- if (result === false) {
104
+ if (!result) {
105
105
  this._needsDrain = true;
106
106
  }
107
107
  }, () => { } // write errors surface via the stream's error event
@@ -13,11 +13,12 @@
13
13
  * - writeBuffer: Write to buffer (Uint8Array)
14
14
  * - addMedia: Supports buffer, base64, and filename (via readFileAsync)
15
15
  */
16
- import { fileExists, readFileBytes, createReadStream, createWriteStream } from "../../../utils/fs.browser.js";
17
- import { XLSX as XLSXBase } from "./xlsx.browser.js";
18
- import { ExcelFileError } from "../errors.js";
19
16
  import { Parse } from "../../archive/unzip/stream.browser.js";
17
+ import { ExcelFileError } from "../errors.js";
18
+ import { XLSX as XLSXBase } from "./xlsx.browser.js";
20
19
  import { Writable, pipeline } from "../../stream/index.browser.js";
20
+ import { toError } from "../../../utils/errors.js";
21
+ import { fileExists, readFileBytes, createReadStream, createWriteStream } from "../../../utils/fs.browser.js";
21
22
  class XLSX extends XLSXBase {
22
23
  constructor(workbook) {
23
24
  super(workbook);
@@ -51,7 +52,7 @@ class XLSX extends XLSXBase {
51
52
  });
52
53
  while (!done || head < queue.length) {
53
54
  if (error) {
54
- throw error;
55
+ throw toError(error);
55
56
  }
56
57
  if (head < queue.length) {
57
58
  const entry = queue[head++];
@@ -18,14 +18,14 @@
18
18
  * const bytes = await doc.build();
19
19
  * ```
20
20
  */
21
+ import { initEncryption } from "../core/encryption.js";
22
+ import { PdfDict, pdfRef, pdfString, pdfNumber } from "../core/pdf-object.js";
21
23
  import { PdfContentStream } from "../core/pdf-stream.js";
22
24
  import { PdfWriter } from "../core/pdf-writer.js";
23
- import { PdfDict, pdfRef, pdfString, pdfNumber } from "../core/pdf-object.js";
24
25
  import { writePdfAMetadata, writePdfAOutputIntent } from "../core/pdfa.js";
25
26
  import { FontManager } from "../font/font-manager.js";
26
27
  import { parseTtf } from "../font/ttf-parser.js";
27
28
  import { wrapTextLines } from "../render/page-renderer.js";
28
- import { initEncryption } from "../core/encryption.js";
29
29
  import { writeImageXObject } from "./image-utils.js";
30
30
  // =============================================================================
31
31
  // Constants
@@ -8,8 +8,8 @@
8
8
  * @see PDF Reference 1.7, §12.5.5 — Appearance Streams
9
9
  * @see PDF Reference 1.7, §12.7.4 — Field Appearance
10
10
  */
11
- import { PdfContentStream } from "../core/pdf-stream.js";
12
11
  import { pdfNumber } from "../core/pdf-object.js";
12
+ import { PdfContentStream } from "../core/pdf-stream.js";
13
13
  // =============================================================================
14
14
  // Text Field Appearance
15
15
  // =============================================================================
@@ -22,19 +22,19 @@
22
22
  * const result = await editor.save();
23
23
  * ```
24
24
  */
25
- import { PdfDocument } from "../reader/pdf-document.js";
26
- import { PdfWriter, buildIncremental } from "../core/pdf-writer.js";
27
25
  import { PdfDict, pdfRef, pdfString, pdfHexString, pdfNumber } from "../core/pdf-object.js";
26
+ import { PdfWriter, buildIncremental } from "../core/pdf-writer.js";
27
+ import { PdfStructureError } from "../errors.js";
28
28
  import { FontManager } from "../font/font-manager.js";
29
29
  import { parseTtf } from "../font/ttf-parser.js";
30
- import { initDecryption, isEncrypted } from "../reader/pdf-decrypt.js";
31
30
  import { extractFormFields } from "../reader/form-extractor.js";
32
31
  import { extractMetadata } from "../reader/metadata-reader.js";
32
+ import { initDecryption, isEncrypted } from "../reader/pdf-decrypt.js";
33
+ import { PdfDocument } from "../reader/pdf-document.js";
33
34
  import { isPdfArray, isPdfRef, dictGetName, dictGetNumber, decodePdfStringBytes } from "../reader/pdf-parser.js";
34
35
  import { PdfPageBuilder } from "./document-builder.js";
35
- import { PdfStructureError } from "../errors.js";
36
- import { writeImageXObject, parseImageDimensions } from "./image-utils.js";
37
36
  import { generateTextFieldAppearance, buildAppearanceBBox } from "./form-appearance.js";
37
+ import { writeImageXObject, parseImageDimensions } from "./image-utils.js";
38
38
  import { parseResourceDict, mergeResourceDicts, serializeResourceDict } from "./resource-merger.js";
39
39
  // =============================================================================
40
40
  // PdfEditorPage
@@ -997,15 +997,60 @@ export class PdfEditor {
997
997
  * @internal
998
998
  */
999
999
  _remapRefsInString(str, remap) {
1000
- // Replace patterns like "N 0 R" where N is in the remap map
1001
- return str.replace(/(\d+) (\d+) R/g, (match, objNumStr, genStr) => {
1002
- const objNum = parseInt(objNumStr, 10);
1000
+ // Replace patterns like "N G R" where N is in the remap map.
1001
+ // Linear scan avoids polynomial backtracking on untrusted PDF content.
1002
+ const parts = [];
1003
+ let last = 0;
1004
+ let i = 0;
1005
+ const len = str.length;
1006
+ while (i < len) {
1007
+ // Look for a digit
1008
+ if (str.charCodeAt(i) < 0x30 || str.charCodeAt(i) > 0x39) {
1009
+ i++;
1010
+ continue;
1011
+ }
1012
+ // Parse first number (object number)
1013
+ const numStart = i;
1014
+ while (i < len && str.charCodeAt(i) >= 0x30 && str.charCodeAt(i) <= 0x39) {
1015
+ i++;
1016
+ }
1017
+ // Must be followed by " <digits> R"
1018
+ if (i >= len || str.charCodeAt(i) !== 0x20) {
1019
+ continue;
1020
+ }
1021
+ const genStart = i + 1;
1022
+ let g = genStart;
1023
+ while (g < len && str.charCodeAt(g) >= 0x30 && str.charCodeAt(g) <= 0x39) {
1024
+ g++;
1025
+ }
1026
+ if (g === genStart || g >= len || str.charCodeAt(g) !== 0x20) {
1027
+ continue;
1028
+ }
1029
+ if (g + 1 >= len || str.charCodeAt(g + 1) !== 0x52 /* 'R' */) {
1030
+ continue;
1031
+ }
1032
+ // Ensure R is not followed by another word char (boundary check)
1033
+ const afterR = g + 2;
1034
+ if (afterR < len &&
1035
+ str.charCodeAt(afterR) > 0x20 &&
1036
+ str.charCodeAt(afterR) !== 0x2f /* '/' */ &&
1037
+ str.charCodeAt(afterR) !== 0x3e /* '>' */) {
1038
+ continue;
1039
+ }
1040
+ const objNum = parseInt(str.slice(numStart, i), 10);
1003
1041
  const remapped = remap.get(objNum);
1004
1042
  if (remapped !== undefined) {
1005
- return `${remapped} ${genStr} R`;
1043
+ parts.push(str.slice(last, numStart));
1044
+ parts.push(`${remapped} ${str.slice(genStart, g)} R`);
1045
+ last = afterR;
1006
1046
  }
1007
- return match;
1008
- });
1047
+ i = afterR;
1048
+ }
1049
+ if (last === 0) {
1050
+ return str;
1051
+ }
1052
+ parts.push(str.slice(last));
1053
+ return parts.join("");
1009
1054
  }
1010
1055
  /**
1011
1056
  * Build image XObject content for incremental update.