@cj-tech-master/excelts 5.1.18 → 6.0.0-beta.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 (1201) hide show
  1. package/README.md +126 -22
  2. package/README_zh.md +124 -22
  3. package/THIRD_PARTY_NOTICES.md +0 -50
  4. package/dist/browser/index.browser.d.ts +34 -23
  5. package/dist/browser/index.browser.js +22 -14
  6. package/dist/browser/index.d.ts +38 -25
  7. package/dist/browser/index.js +22 -2
  8. package/dist/browser/modules/archive/compression/compress.base.d.ts +127 -3
  9. package/dist/browser/modules/archive/compression/compress.base.js +242 -3
  10. package/dist/browser/modules/archive/compression/compress.browser.d.ts +85 -35
  11. package/dist/browser/modules/archive/compression/compress.browser.js +363 -54
  12. package/dist/browser/modules/archive/compression/compress.d.ts +68 -4
  13. package/dist/browser/modules/archive/compression/compress.js +182 -23
  14. package/dist/browser/modules/archive/compression/crc32.base.d.ts +9 -0
  15. package/dist/browser/modules/archive/compression/crc32.base.js +12 -0
  16. package/dist/browser/modules/archive/compression/crc32.browser.d.ts +6 -1
  17. package/dist/browser/modules/archive/compression/crc32.browser.js +7 -0
  18. package/dist/browser/modules/archive/compression/crc32.d.ts +7 -1
  19. package/dist/browser/modules/archive/compression/crc32.js +42 -11
  20. package/dist/browser/modules/archive/compression/deflate-fallback.d.ts +38 -0
  21. package/dist/browser/modules/archive/compression/deflate-fallback.js +219 -78
  22. package/dist/browser/modules/archive/compression/streaming-compress.base.d.ts +45 -1
  23. package/dist/browser/modules/archive/compression/streaming-compress.base.js +2 -3
  24. package/dist/browser/modules/archive/compression/streaming-compress.browser.d.ts +27 -7
  25. package/dist/browser/modules/archive/compression/streaming-compress.browser.js +225 -202
  26. package/dist/browser/modules/archive/compression/streaming-compress.d.ts +46 -3
  27. package/dist/browser/modules/archive/compression/streaming-compress.js +83 -28
  28. package/dist/browser/modules/archive/compression/worker-pool/index.browser.d.ts +6 -0
  29. package/dist/browser/modules/archive/compression/worker-pool/index.browser.js +6 -0
  30. package/dist/browser/modules/archive/compression/worker-pool/index.d.ts +26 -0
  31. package/dist/browser/modules/archive/compression/worker-pool/index.js +53 -0
  32. package/dist/browser/modules/archive/compression/worker-pool/pool.base.d.ts +34 -0
  33. package/dist/browser/modules/archive/compression/worker-pool/pool.base.js +56 -0
  34. package/dist/browser/modules/archive/compression/worker-pool/pool.browser.d.ts +182 -0
  35. package/dist/browser/modules/archive/compression/worker-pool/pool.browser.js +857 -0
  36. package/dist/browser/modules/archive/compression/worker-pool/types.d.ts +170 -0
  37. package/dist/browser/modules/archive/compression/worker-pool/types.js +7 -0
  38. package/dist/browser/modules/archive/compression/worker-pool/worker-script.d.ts +26 -0
  39. package/dist/browser/modules/archive/compression/worker-pool/worker-script.js +337 -0
  40. package/dist/browser/modules/archive/crypto/aes.d.ts +203 -0
  41. package/dist/browser/modules/archive/crypto/aes.js +394 -0
  42. package/dist/browser/modules/archive/crypto/index.d.ts +17 -0
  43. package/dist/browser/modules/archive/crypto/index.js +20 -0
  44. package/dist/browser/modules/archive/crypto/types.d.ts +53 -0
  45. package/dist/browser/modules/archive/crypto/types.js +47 -0
  46. package/dist/browser/modules/archive/crypto/zip-crypto.d.ts +105 -0
  47. package/dist/browser/modules/archive/crypto/zip-crypto.js +203 -0
  48. package/dist/browser/modules/archive/formats/index.d.ts +9 -0
  49. package/dist/browser/modules/archive/formats/index.js +28 -0
  50. package/dist/browser/modules/archive/formats/types.d.ts +1 -0
  51. package/dist/browser/modules/archive/formats/types.js +1 -0
  52. package/dist/browser/modules/archive/fs/archive-file.d.ts +403 -0
  53. package/dist/browser/modules/archive/fs/archive-file.js +2684 -0
  54. package/dist/browser/modules/archive/fs/index.d.ts +61 -0
  55. package/dist/browser/modules/archive/fs/index.js +61 -0
  56. package/dist/browser/modules/archive/fs/types.d.ts +517 -0
  57. package/dist/browser/modules/archive/fs/types.js +9 -0
  58. package/dist/browser/modules/archive/index.base.d.ts +13 -4
  59. package/dist/browser/modules/archive/index.base.js +26 -1
  60. package/dist/browser/modules/archive/index.browser.d.ts +5 -4
  61. package/dist/browser/modules/archive/index.browser.js +10 -2
  62. package/dist/browser/modules/archive/index.d.ts +8 -4
  63. package/dist/browser/modules/archive/index.js +16 -2
  64. package/dist/browser/modules/archive/io/archive-sink.js +4 -3
  65. package/dist/browser/modules/archive/io/archive-source.d.ts +31 -1
  66. package/dist/browser/modules/archive/io/archive-source.js +156 -10
  67. package/dist/browser/modules/archive/io/archive-source.node.d.ts +10 -0
  68. package/dist/browser/modules/archive/io/archive-source.node.js +10 -0
  69. package/dist/browser/modules/archive/io/random-access.d.ts +165 -0
  70. package/dist/browser/modules/archive/io/random-access.js +301 -0
  71. package/dist/browser/modules/archive/io/remote-zip-reader.d.ts +352 -0
  72. package/dist/browser/modules/archive/io/remote-zip-reader.js +782 -0
  73. package/dist/browser/modules/archive/{utils → shared}/async-queue.d.ts +3 -1
  74. package/dist/browser/modules/archive/{utils → shared}/async-queue.js +40 -8
  75. package/dist/{types/modules/archive/internal → browser/modules/archive/shared}/byte-queue.d.ts +5 -1
  76. package/dist/{esm/modules/archive/internal → browser/modules/archive/shared}/byte-queue.js +59 -30
  77. package/dist/browser/modules/archive/shared/bytes.d.ts +19 -0
  78. package/dist/{esm/modules/archive/utils → browser/modules/archive/shared}/bytes.js +14 -25
  79. package/dist/browser/modules/archive/shared/defaults.d.ts +12 -0
  80. package/dist/browser/modules/archive/{defaults.js → shared/defaults.js} +7 -0
  81. package/dist/browser/modules/archive/shared/errors.d.ts +118 -0
  82. package/dist/browser/modules/archive/shared/errors.js +171 -0
  83. package/dist/browser/modules/archive/shared/progress.d.ts +62 -0
  84. package/dist/browser/modules/archive/shared/progress.js +92 -0
  85. package/dist/browser/modules/archive/shared/text.d.ts +96 -0
  86. package/dist/browser/modules/archive/shared/text.js +262 -0
  87. package/dist/browser/modules/archive/tar/index.browser.d.ts +11 -0
  88. package/dist/browser/modules/archive/tar/index.browser.js +18 -0
  89. package/dist/browser/modules/archive/tar/index.d.ts +13 -0
  90. package/dist/browser/modules/archive/tar/index.js +16 -0
  91. package/dist/browser/modules/archive/tar/tar-archive.d.ts +234 -0
  92. package/dist/browser/modules/archive/tar/tar-archive.js +519 -0
  93. package/dist/browser/modules/archive/tar/tar-constants.d.ts +102 -0
  94. package/dist/browser/modules/archive/tar/tar-constants.js +59 -0
  95. package/dist/browser/modules/archive/tar/tar-entry-info.d.ts +55 -0
  96. package/dist/browser/modules/archive/tar/tar-entry-info.js +43 -0
  97. package/dist/browser/modules/archive/tar/tar-gzip.d.ts +64 -0
  98. package/dist/browser/modules/archive/tar/tar-gzip.js +119 -0
  99. package/dist/browser/modules/archive/tar/tar-header.d.ts +56 -0
  100. package/dist/browser/modules/archive/tar/tar-header.js +311 -0
  101. package/dist/browser/modules/archive/tar/tar-parser.d.ts +40 -0
  102. package/dist/browser/modules/archive/tar/tar-parser.js +366 -0
  103. package/dist/browser/modules/archive/unzip/extract.d.ts +15 -8
  104. package/dist/browser/modules/archive/unzip/extract.js +13 -3
  105. package/dist/browser/modules/archive/unzip/index.d.ts +28 -40
  106. package/dist/browser/modules/archive/unzip/index.js +3 -162
  107. package/dist/browser/modules/archive/unzip/parser-core.d.ts +117 -0
  108. package/dist/browser/modules/archive/unzip/parser-core.js +316 -0
  109. package/dist/browser/modules/archive/unzip/progress.d.ts +36 -0
  110. package/dist/browser/modules/archive/unzip/progress.js +1 -0
  111. package/dist/browser/modules/archive/unzip/stream.base.d.ts +25 -156
  112. package/dist/browser/modules/archive/unzip/stream.base.js +210 -440
  113. package/dist/browser/modules/archive/unzip/stream.browser.d.ts +3 -2
  114. package/dist/browser/modules/archive/unzip/stream.browser.js +107 -57
  115. package/dist/browser/modules/archive/unzip/stream.d.ts +5 -4
  116. package/dist/browser/modules/archive/unzip/stream.js +68 -8
  117. package/dist/browser/modules/archive/unzip/zip-extract-core.d.ts +90 -0
  118. package/dist/browser/modules/archive/unzip/zip-extract-core.js +475 -0
  119. package/dist/browser/modules/archive/unzip/zip-parser.d.ts +77 -7
  120. package/dist/browser/modules/archive/unzip/zip-parser.js +146 -242
  121. package/dist/browser/modules/archive/unzip/zip-reader.d.ts +103 -0
  122. package/dist/browser/modules/archive/unzip/zip-reader.js +435 -0
  123. package/dist/browser/modules/archive/zip/compressibility.d.ts +20 -0
  124. package/dist/browser/modules/archive/zip/compressibility.js +127 -0
  125. package/dist/browser/modules/archive/zip/index.d.ts +27 -42
  126. package/dist/browser/modules/archive/zip/index.js +5 -155
  127. package/dist/browser/modules/archive/zip/progress.d.ts +39 -0
  128. package/dist/browser/modules/archive/zip/progress.js +1 -0
  129. package/dist/browser/modules/archive/zip/raw-entry.d.ts +64 -0
  130. package/dist/browser/modules/archive/zip/raw-entry.js +9 -0
  131. package/dist/browser/modules/archive/zip/stream.d.ts +178 -26
  132. package/dist/browser/modules/archive/zip/stream.js +728 -72
  133. package/dist/browser/modules/archive/zip/writable-file.d.ts +97 -0
  134. package/dist/browser/modules/archive/zip/writable-file.js +9 -0
  135. package/dist/browser/modules/archive/zip/writer-core.d.ts +77 -0
  136. package/dist/browser/modules/archive/zip/writer-core.js +270 -0
  137. package/dist/browser/modules/archive/zip/zip-archive.d.ts +121 -0
  138. package/dist/browser/modules/archive/zip/zip-archive.js +448 -0
  139. package/dist/browser/modules/archive/zip/zip-bytes.d.ts +71 -4
  140. package/dist/browser/modules/archive/zip/zip-bytes.js +293 -116
  141. package/dist/browser/modules/archive/zip/zip-edit-plan.d.ts +123 -0
  142. package/dist/browser/modules/archive/zip/zip-edit-plan.js +183 -0
  143. package/dist/browser/modules/archive/zip/zip-edit-view.d.ts +155 -0
  144. package/dist/browser/modules/archive/zip/zip-edit-view.js +227 -0
  145. package/dist/browser/modules/archive/zip/zip-editor.d.ts +359 -0
  146. package/dist/browser/modules/archive/zip/zip-editor.js +758 -0
  147. package/dist/browser/modules/archive/zip/zip-entry-attributes.d.ts +10 -0
  148. package/dist/browser/modules/archive/zip/zip-entry-attributes.js +59 -0
  149. package/dist/browser/modules/archive/zip/zip-entry-metadata.d.ts +11 -2
  150. package/dist/browser/modules/archive/zip/zip-entry-metadata.js +29 -9
  151. package/dist/browser/modules/archive/zip/zip-entry-options.d.ts +47 -0
  152. package/dist/browser/modules/archive/zip/zip-entry-options.js +22 -0
  153. package/dist/browser/modules/archive/zip-spec/binary.d.ts +42 -0
  154. package/dist/browser/modules/archive/zip-spec/binary.js +126 -0
  155. package/dist/browser/modules/archive/{utils → zip-spec}/timestamps.d.ts +17 -2
  156. package/dist/browser/modules/archive/{utils → zip-spec}/timestamps.js +75 -15
  157. package/dist/browser/modules/archive/zip-spec/zip-entry-info.d.ts +47 -3
  158. package/dist/browser/modules/archive/zip-spec/zip-entry-info.js +6 -1
  159. package/dist/browser/modules/archive/zip-spec/zip-extra-fields.d.ts +90 -0
  160. package/dist/browser/modules/archive/zip-spec/zip-extra-fields.js +215 -0
  161. package/dist/browser/modules/archive/zip-spec/zip-parser-core.d.ts +147 -0
  162. package/dist/browser/modules/archive/zip-spec/zip-parser-core.js +361 -0
  163. package/dist/browser/modules/archive/zip-spec/zip-path.d.ts +15 -0
  164. package/dist/browser/modules/archive/zip-spec/zip-path.js +87 -0
  165. package/dist/browser/modules/archive/zip-spec/zip-records.d.ts +70 -0
  166. package/dist/browser/modules/archive/zip-spec/zip-records.js +154 -0
  167. package/dist/browser/modules/csv/constants.d.ts +18 -0
  168. package/dist/browser/modules/csv/constants.js +66 -0
  169. package/dist/browser/modules/csv/errors.d.ts +16 -0
  170. package/dist/browser/modules/csv/errors.js +22 -0
  171. package/dist/browser/modules/csv/format/config.d.ts +121 -0
  172. package/dist/browser/modules/csv/format/config.js +106 -0
  173. package/dist/browser/modules/csv/format/formatted-value.d.ts +82 -0
  174. package/dist/browser/modules/csv/format/formatted-value.js +76 -0
  175. package/dist/browser/modules/csv/format/formatter.d.ts +71 -0
  176. package/dist/browser/modules/csv/format/formatter.js +397 -0
  177. package/dist/browser/modules/csv/format/index.d.ts +10 -0
  178. package/dist/browser/modules/csv/format/index.js +12 -0
  179. package/dist/browser/modules/csv/index.d.ts +23 -0
  180. package/dist/browser/modules/csv/index.js +47 -0
  181. package/dist/browser/modules/csv/parse/async.d.ts +111 -0
  182. package/dist/browser/modules/csv/parse/async.js +288 -0
  183. package/dist/browser/modules/csv/parse/config.d.ts +100 -0
  184. package/dist/browser/modules/csv/parse/config.js +159 -0
  185. package/dist/browser/modules/csv/parse/helpers.d.ts +114 -0
  186. package/dist/browser/modules/csv/parse/helpers.js +225 -0
  187. package/dist/browser/modules/csv/parse/index.d.ts +16 -0
  188. package/dist/browser/modules/csv/parse/index.js +19 -0
  189. package/dist/browser/modules/csv/parse/lines.d.ts +23 -0
  190. package/dist/browser/modules/csv/parse/lines.js +82 -0
  191. package/dist/browser/modules/csv/parse/row-processor.d.ts +61 -0
  192. package/dist/browser/modules/csv/parse/row-processor.js +203 -0
  193. package/dist/browser/modules/csv/parse/scanner/index.d.ts +10 -0
  194. package/dist/browser/modules/csv/parse/scanner/index.js +12 -0
  195. package/dist/browser/modules/csv/parse/scanner/scanner.d.ts +154 -0
  196. package/dist/browser/modules/csv/parse/scanner/scanner.js +852 -0
  197. package/dist/browser/modules/csv/parse/scanner/types.d.ts +185 -0
  198. package/dist/browser/modules/csv/parse/scanner/types.js +25 -0
  199. package/dist/browser/modules/csv/parse/state.d.ts +46 -0
  200. package/dist/browser/modules/csv/parse/state.js +96 -0
  201. package/dist/browser/modules/csv/parse/sync.d.ts +59 -0
  202. package/dist/browser/modules/csv/parse/sync.js +429 -0
  203. package/dist/browser/modules/csv/stream/formatter.d.ts +55 -0
  204. package/dist/browser/modules/csv/stream/formatter.js +160 -0
  205. package/dist/browser/modules/csv/stream/index.d.ts +10 -0
  206. package/dist/browser/modules/csv/stream/index.js +16 -0
  207. package/dist/browser/modules/csv/stream/parser.d.ts +141 -0
  208. package/dist/browser/modules/csv/stream/parser.js +928 -0
  209. package/dist/browser/modules/csv/types.d.ts +438 -0
  210. package/dist/browser/modules/csv/types.js +67 -0
  211. package/dist/browser/modules/csv/utils/detect.d.ts +100 -0
  212. package/dist/browser/modules/csv/utils/detect.js +325 -0
  213. package/dist/browser/modules/csv/utils/dynamic-typing.d.ts +71 -0
  214. package/dist/browser/modules/csv/utils/dynamic-typing.js +297 -0
  215. package/dist/browser/modules/csv/utils/generate.d.ts +306 -0
  216. package/dist/browser/modules/csv/utils/generate.js +960 -0
  217. package/dist/browser/modules/csv/utils/number.d.ts +36 -0
  218. package/dist/browser/modules/csv/utils/number.js +49 -0
  219. package/dist/browser/modules/csv/utils/row.d.ts +111 -0
  220. package/dist/browser/modules/csv/utils/row.js +255 -0
  221. package/dist/browser/modules/csv/worker/index.browser.d.ts +6 -0
  222. package/dist/browser/modules/csv/worker/index.browser.js +5 -0
  223. package/dist/browser/modules/csv/worker/index.d.ts +7 -0
  224. package/dist/browser/modules/csv/worker/index.js +6 -0
  225. package/dist/browser/modules/csv/worker/pool.browser.d.ts +193 -0
  226. package/dist/browser/modules/csv/worker/pool.browser.js +602 -0
  227. package/dist/browser/modules/csv/worker/pool.d.ts +14 -0
  228. package/dist/browser/modules/csv/worker/pool.js +54 -0
  229. package/dist/browser/modules/csv/worker/types.d.ts +195 -0
  230. package/dist/browser/modules/csv/worker/types.js +7 -0
  231. package/dist/browser/modules/csv/worker/worker-script.bundle.d.ts +10 -0
  232. package/dist/browser/modules/csv/worker/worker-script.bundle.js +41 -0
  233. package/dist/browser/modules/csv/worker/worker-script.generated.d.ts +6 -0
  234. package/dist/browser/modules/csv/worker/worker-script.generated.js +6 -0
  235. package/dist/browser/modules/csv/worker/worker.entry.d.ts +11 -0
  236. package/dist/browser/modules/csv/worker/worker.entry.js +413 -0
  237. package/dist/browser/modules/excel/anchor.d.ts +1 -1
  238. package/dist/browser/modules/excel/cell.d.ts +7 -7
  239. package/dist/browser/modules/excel/cell.js +4 -3
  240. package/dist/browser/modules/excel/column.d.ts +3 -3
  241. package/dist/browser/modules/excel/defined-names.d.ts +4 -4
  242. package/dist/browser/modules/excel/errors.d.ts +133 -0
  243. package/dist/browser/modules/excel/errors.js +176 -0
  244. package/dist/browser/modules/excel/form-control.d.ts +1 -1
  245. package/dist/browser/modules/excel/image.d.ts +2 -2
  246. package/dist/browser/modules/excel/image.js +2 -1
  247. package/dist/browser/modules/excel/pivot-table.d.ts +1 -1
  248. package/dist/browser/modules/excel/pivot-table.js +8 -7
  249. package/dist/browser/modules/excel/range.d.ts +1 -1
  250. package/dist/browser/modules/excel/range.js +2 -1
  251. package/dist/browser/modules/excel/row.d.ts +3 -3
  252. package/dist/browser/modules/excel/row.js +2 -1
  253. package/dist/browser/modules/excel/stream/hyperlink-reader.d.ts +2 -2
  254. package/dist/browser/modules/excel/stream/hyperlink-reader.js +1 -1
  255. package/dist/browser/modules/excel/stream/workbook-reader.browser.d.ts +6 -5
  256. package/dist/browser/modules/excel/stream/workbook-reader.browser.js +14 -3
  257. package/dist/browser/modules/excel/stream/workbook-reader.d.ts +5 -5
  258. package/dist/browser/modules/excel/stream/workbook-reader.js +10 -9
  259. package/dist/browser/modules/excel/stream/workbook-writer.browser.d.ts +16 -14
  260. package/dist/browser/modules/excel/stream/workbook-writer.browser.js +13 -6
  261. package/dist/browser/modules/excel/stream/workbook-writer.d.ts +3 -3
  262. package/dist/browser/modules/excel/stream/workbook-writer.js +5 -6
  263. package/dist/browser/modules/excel/stream/worksheet-reader.d.ts +6 -6
  264. package/dist/browser/modules/excel/stream/worksheet-reader.js +8 -3
  265. package/dist/browser/modules/excel/stream/worksheet-writer.d.ts +5 -5
  266. package/dist/browser/modules/excel/stream/worksheet-writer.js +5 -4
  267. package/dist/browser/modules/excel/table.d.ts +4 -2
  268. package/dist/browser/modules/excel/table.js +52 -53
  269. package/dist/browser/modules/excel/types.d.ts +3 -1
  270. package/dist/browser/modules/excel/utils/cell-matrix.js +5 -4
  271. package/dist/browser/modules/excel/utils/col-cache.d.ts +1 -1
  272. package/dist/browser/modules/excel/utils/col-cache.js +7 -6
  273. package/dist/browser/modules/excel/utils/encryptor.browser.js +1 -1
  274. package/dist/browser/modules/excel/utils/encryptor.js +1 -1
  275. package/dist/browser/modules/excel/utils/ooxml-validator.js +8 -6
  276. package/dist/browser/modules/excel/utils/parse-sax.js +36 -27
  277. package/dist/browser/modules/excel/utils/sheet-utils.d.ts +8 -20
  278. package/dist/browser/modules/excel/utils/sheet-utils.js +1 -59
  279. package/dist/browser/modules/excel/utils/stream-buf.d.ts +2 -3
  280. package/dist/browser/modules/excel/utils/stream-buf.js +13 -20
  281. package/dist/browser/modules/excel/utils/xml-stream.js +3 -2
  282. package/dist/browser/modules/excel/workbook.browser.d.ts +327 -0
  283. package/dist/browser/modules/excel/workbook.browser.js +790 -0
  284. package/dist/browser/modules/excel/workbook.d.ts +15 -188
  285. package/dist/browser/modules/excel/workbook.js +39 -302
  286. package/dist/browser/modules/excel/worksheet.d.ts +11 -11
  287. package/dist/browser/modules/excel/worksheet.js +8 -7
  288. package/dist/browser/modules/excel/xlsx/xform/base-xform.d.ts +1 -1
  289. package/dist/browser/modules/excel/xlsx/xform/base-xform.js +0 -1
  290. package/dist/browser/modules/excel/xlsx/xform/book/defined-name-xform.d.ts +1 -1
  291. package/dist/browser/modules/excel/xlsx/xform/book/sheet-xform.d.ts +1 -1
  292. package/dist/browser/modules/excel/xlsx/xform/book/workbook-calc-properties-xform.d.ts +1 -1
  293. package/dist/browser/modules/excel/xlsx/xform/book/workbook-pivot-cache-xform.d.ts +1 -1
  294. package/dist/browser/modules/excel/xlsx/xform/book/workbook-properties-xform.d.ts +1 -1
  295. package/dist/browser/modules/excel/xlsx/xform/book/workbook-view-xform.d.ts +1 -1
  296. package/dist/browser/modules/excel/xlsx/xform/book/workbook-xform.d.ts +2 -2
  297. package/dist/browser/modules/excel/xlsx/xform/comment/comment-xform.d.ts +2 -2
  298. package/dist/browser/modules/excel/xlsx/xform/comment/comments-xform.d.ts +2 -2
  299. package/dist/browser/modules/excel/xlsx/xform/comment/style/vml-position-xform.d.ts +1 -1
  300. package/dist/browser/modules/excel/xlsx/xform/comment/style/vml-protection-xform.d.ts +1 -1
  301. package/dist/browser/modules/excel/xlsx/xform/comment/vml-anchor-xform.d.ts +1 -1
  302. package/dist/browser/modules/excel/xlsx/xform/comment/vml-client-data-xform.d.ts +1 -1
  303. package/dist/browser/modules/excel/xlsx/xform/comment/vml-notes-xform.d.ts +1 -1
  304. package/dist/browser/modules/excel/xlsx/xform/comment/vml-shape-xform.d.ts +1 -1
  305. package/dist/browser/modules/excel/xlsx/xform/comment/vml-textbox-xform.d.ts +1 -1
  306. package/dist/browser/modules/excel/xlsx/xform/composite-xform.d.ts +1 -1
  307. package/dist/browser/modules/excel/xlsx/xform/core/app-heading-pairs-xform.d.ts +1 -1
  308. package/dist/browser/modules/excel/xlsx/xform/core/app-titles-of-parts-xform.d.ts +1 -1
  309. package/dist/browser/modules/excel/xlsx/xform/core/app-xform.d.ts +1 -1
  310. package/dist/browser/modules/excel/xlsx/xform/core/content-types-xform.d.ts +1 -1
  311. package/dist/browser/modules/excel/xlsx/xform/core/core-xform.d.ts +1 -1
  312. package/dist/browser/modules/excel/xlsx/xform/core/feature-property-bag-xform.d.ts +1 -1
  313. package/dist/browser/modules/excel/xlsx/xform/core/relationship-xform.d.ts +1 -1
  314. package/dist/browser/modules/excel/xlsx/xform/core/relationships-xform.d.ts +1 -1
  315. package/dist/browser/modules/excel/xlsx/xform/core/relationships-xform.js +3 -2
  316. package/dist/browser/modules/excel/xlsx/xform/drawing/base-cell-anchor-xform.d.ts +1 -1
  317. package/dist/browser/modules/excel/xlsx/xform/drawing/blip-fill-xform.d.ts +2 -2
  318. package/dist/browser/modules/excel/xlsx/xform/drawing/blip-xform.d.ts +1 -1
  319. package/dist/browser/modules/excel/xlsx/xform/drawing/c-nv-pic-pr-xform.d.ts +1 -1
  320. package/dist/browser/modules/excel/xlsx/xform/drawing/c-nv-pr-xform.d.ts +1 -1
  321. package/dist/browser/modules/excel/xlsx/xform/drawing/cell-position-xform.d.ts +2 -2
  322. package/dist/browser/modules/excel/xlsx/xform/drawing/ctrl-prop-xform.d.ts +2 -2
  323. package/dist/browser/modules/excel/xlsx/xform/drawing/drawing-xform.d.ts +1 -1
  324. package/dist/browser/modules/excel/xlsx/xform/drawing/ext-lst-xform.d.ts +1 -1
  325. package/dist/browser/modules/excel/xlsx/xform/drawing/ext-xform.d.ts +1 -1
  326. package/dist/browser/modules/excel/xlsx/xform/drawing/hlink-click-xform.d.ts +1 -1
  327. package/dist/browser/modules/excel/xlsx/xform/drawing/nv-pic-pr-xform.d.ts +1 -1
  328. package/dist/browser/modules/excel/xlsx/xform/drawing/one-cell-anchor-xform.d.ts +1 -1
  329. package/dist/browser/modules/excel/xlsx/xform/drawing/pic-xform.d.ts +1 -1
  330. package/dist/browser/modules/excel/xlsx/xform/drawing/sp-xform.d.ts +1 -1
  331. package/dist/browser/modules/excel/xlsx/xform/drawing/two-cell-anchor-xform.d.ts +1 -1
  332. package/dist/browser/modules/excel/xlsx/xform/drawing/vml-drawing-xform.d.ts +2 -2
  333. package/dist/browser/modules/excel/xlsx/xform/list-xform.d.ts +1 -1
  334. package/dist/browser/modules/excel/xlsx/xform/list-xform.js +2 -1
  335. package/dist/browser/modules/excel/xlsx/xform/pivot-table/cache-field-xform.d.ts +2 -2
  336. package/dist/browser/modules/excel/xlsx/xform/pivot-table/cache-field.d.ts +1 -1
  337. package/dist/browser/modules/excel/xlsx/xform/pivot-table/pivot-cache-definition-xform.d.ts +3 -3
  338. package/dist/browser/modules/excel/xlsx/xform/pivot-table/pivot-cache-records-xform.d.ts +3 -3
  339. package/dist/browser/modules/excel/xlsx/xform/pivot-table/pivot-cache-records-xform.js +2 -1
  340. package/dist/browser/modules/excel/xlsx/xform/pivot-table/pivot-table-xform.d.ts +3 -3
  341. package/dist/browser/modules/excel/xlsx/xform/sheet/auto-filter-xform.d.ts +1 -1
  342. package/dist/browser/modules/excel/xlsx/xform/sheet/cell-xform.d.ts +1 -1
  343. package/dist/browser/modules/excel/xlsx/xform/sheet/cell-xform.js +10 -4
  344. package/dist/browser/modules/excel/xlsx/xform/sheet/cf/cf-rule-xform.d.ts +6 -6
  345. package/dist/browser/modules/excel/xlsx/xform/sheet/cf/cfvo-xform.d.ts +1 -1
  346. package/dist/browser/modules/excel/xlsx/xform/sheet/cf/color-scale-xform.d.ts +3 -3
  347. package/dist/browser/modules/excel/xlsx/xform/sheet/cf/conditional-formatting-xform.d.ts +1 -1
  348. package/dist/browser/modules/excel/xlsx/xform/sheet/cf/conditional-formattings-xform.d.ts +2 -2
  349. package/dist/browser/modules/excel/xlsx/xform/sheet/cf/databar-xform.d.ts +3 -3
  350. package/dist/browser/modules/excel/xlsx/xform/sheet/cf/ext-lst-ref-xform.d.ts +1 -1
  351. package/dist/browser/modules/excel/xlsx/xform/sheet/cf/formula-xform.d.ts +1 -1
  352. package/dist/browser/modules/excel/xlsx/xform/sheet/cf/icon-set-xform.d.ts +2 -2
  353. package/dist/browser/modules/excel/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.d.ts +1 -1
  354. package/dist/browser/modules/excel/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.d.ts +3 -3
  355. package/dist/browser/modules/excel/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.d.ts +2 -2
  356. package/dist/browser/modules/excel/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.d.ts +3 -3
  357. package/dist/browser/modules/excel/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.d.ts +2 -2
  358. package/dist/browser/modules/excel/xlsx/xform/sheet/cf-ext/databar-ext-xform.d.ts +3 -3
  359. package/dist/browser/modules/excel/xlsx/xform/sheet/cf-ext/f-ext-xform.d.ts +1 -1
  360. package/dist/browser/modules/excel/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.d.ts +3 -3
  361. package/dist/browser/modules/excel/xlsx/xform/sheet/cf-ext/sqref-ext-xform.d.ts +1 -1
  362. package/dist/browser/modules/excel/xlsx/xform/sheet/col-breaks-xform.d.ts +1 -1
  363. package/dist/browser/modules/excel/xlsx/xform/sheet/col-xform.d.ts +1 -1
  364. package/dist/browser/modules/excel/xlsx/xform/sheet/data-validations-xform.d.ts +1 -1
  365. package/dist/browser/modules/excel/xlsx/xform/sheet/dimension-xform.d.ts +1 -1
  366. package/dist/browser/modules/excel/xlsx/xform/sheet/drawing-xform.d.ts +1 -1
  367. package/dist/browser/modules/excel/xlsx/xform/sheet/ext-lst-xform.d.ts +1 -1
  368. package/dist/browser/modules/excel/xlsx/xform/sheet/header-footer-xform.d.ts +1 -1
  369. package/dist/browser/modules/excel/xlsx/xform/sheet/hyperlink-xform.d.ts +1 -1
  370. package/dist/browser/modules/excel/xlsx/xform/sheet/merge-cell-xform.d.ts +1 -1
  371. package/dist/browser/modules/excel/xlsx/xform/sheet/outline-properties-xform.d.ts +1 -1
  372. package/dist/browser/modules/excel/xlsx/xform/sheet/page-breaks-xform.d.ts +1 -1
  373. package/dist/browser/modules/excel/xlsx/xform/sheet/page-margins-xform.d.ts +1 -1
  374. package/dist/browser/modules/excel/xlsx/xform/sheet/page-setup-properties-xform.d.ts +1 -1
  375. package/dist/browser/modules/excel/xlsx/xform/sheet/page-setup-xform.d.ts +1 -1
  376. package/dist/browser/modules/excel/xlsx/xform/sheet/picture-xform.d.ts +1 -1
  377. package/dist/browser/modules/excel/xlsx/xform/sheet/print-options-xform.d.ts +1 -1
  378. package/dist/browser/modules/excel/xlsx/xform/sheet/row-breaks-xform.d.ts +1 -1
  379. package/dist/browser/modules/excel/xlsx/xform/sheet/row-xform.d.ts +1 -1
  380. package/dist/browser/modules/excel/xlsx/xform/sheet/row-xform.js +2 -1
  381. package/dist/browser/modules/excel/xlsx/xform/sheet/sheet-format-properties-xform.d.ts +1 -1
  382. package/dist/browser/modules/excel/xlsx/xform/sheet/sheet-properties-xform.d.ts +1 -1
  383. package/dist/browser/modules/excel/xlsx/xform/sheet/sheet-protection-xform.d.ts +1 -1
  384. package/dist/browser/modules/excel/xlsx/xform/sheet/sheet-view-xform.d.ts +1 -1
  385. package/dist/browser/modules/excel/xlsx/xform/sheet/table-part-xform.d.ts +1 -1
  386. package/dist/browser/modules/excel/xlsx/xform/sheet/worksheet-xform.d.ts +1 -1
  387. package/dist/browser/modules/excel/xlsx/xform/simple/boolean-xform.d.ts +1 -1
  388. package/dist/browser/modules/excel/xlsx/xform/simple/date-xform.d.ts +1 -1
  389. package/dist/browser/modules/excel/xlsx/xform/simple/float-xform.d.ts +1 -1
  390. package/dist/browser/modules/excel/xlsx/xform/simple/integer-xform.d.ts +1 -1
  391. package/dist/browser/modules/excel/xlsx/xform/simple/string-xform.d.ts +1 -1
  392. package/dist/browser/modules/excel/xlsx/xform/static-xform.d.ts +1 -1
  393. package/dist/browser/modules/excel/xlsx/xform/strings/phonetic-text-xform.d.ts +1 -1
  394. package/dist/browser/modules/excel/xlsx/xform/strings/rich-text-xform.d.ts +3 -3
  395. package/dist/browser/modules/excel/xlsx/xform/strings/shared-string-xform.d.ts +1 -1
  396. package/dist/browser/modules/excel/xlsx/xform/strings/shared-strings-xform.d.ts +2 -2
  397. package/dist/browser/modules/excel/xlsx/xform/strings/shared-strings-xform.js +3 -2
  398. package/dist/browser/modules/excel/xlsx/xform/strings/text-xform.d.ts +1 -1
  399. package/dist/browser/modules/excel/xlsx/xform/strings/text-xform.js +3 -4
  400. package/dist/browser/modules/excel/xlsx/xform/style/alignment-xform.d.ts +1 -1
  401. package/dist/browser/modules/excel/xlsx/xform/style/border-xform.d.ts +2 -2
  402. package/dist/browser/modules/excel/xlsx/xform/style/color-xform.d.ts +1 -1
  403. package/dist/browser/modules/excel/xlsx/xform/style/dxf-xform.d.ts +1 -1
  404. package/dist/browser/modules/excel/xlsx/xform/style/fill-xform.d.ts +2 -2
  405. package/dist/browser/modules/excel/xlsx/xform/style/font-xform.d.ts +1 -1
  406. package/dist/browser/modules/excel/xlsx/xform/style/numfmt-xform.d.ts +1 -1
  407. package/dist/browser/modules/excel/xlsx/xform/style/numfmt-xform.js +8 -2
  408. package/dist/browser/modules/excel/xlsx/xform/style/protection-xform.d.ts +1 -1
  409. package/dist/browser/modules/excel/xlsx/xform/style/style-xform.d.ts +3 -3
  410. package/dist/browser/modules/excel/xlsx/xform/style/styles-xform.d.ts +2 -2
  411. package/dist/browser/modules/excel/xlsx/xform/style/styles-xform.js +2 -1
  412. package/dist/browser/modules/excel/xlsx/xform/style/underline-xform.d.ts +1 -1
  413. package/dist/browser/modules/excel/xlsx/xform/table/auto-filter-xform.d.ts +2 -2
  414. package/dist/browser/modules/excel/xlsx/xform/table/auto-filter-xform.js +3 -2
  415. package/dist/browser/modules/excel/xlsx/xform/table/custom-filter-xform.d.ts +1 -1
  416. package/dist/browser/modules/excel/xlsx/xform/table/filter-column-xform.d.ts +2 -2
  417. package/dist/browser/modules/excel/xlsx/xform/table/filter-column-xform.js +2 -1
  418. package/dist/browser/modules/excel/xlsx/xform/table/filter-xform.d.ts +1 -1
  419. package/dist/browser/modules/excel/xlsx/xform/table/table-column-xform.d.ts +1 -1
  420. package/dist/browser/modules/excel/xlsx/xform/table/table-style-info-xform.d.ts +1 -1
  421. package/dist/browser/modules/excel/xlsx/xform/table/table-xform.d.ts +1 -1
  422. package/dist/browser/modules/excel/xlsx/xlsx.browser.d.ts +4 -4
  423. package/dist/browser/modules/excel/xlsx/xlsx.browser.js +11 -9
  424. package/dist/browser/modules/excel/xlsx/xlsx.d.ts +1 -1
  425. package/dist/browser/modules/excel/xlsx/xlsx.js +6 -6
  426. package/dist/browser/modules/stream/browser/_lazy.d.ts +18 -0
  427. package/dist/browser/modules/stream/browser/_lazy.js +30 -0
  428. package/dist/browser/modules/stream/browser/chunk-buffer.d.ts +61 -0
  429. package/dist/browser/modules/stream/browser/chunk-buffer.js +223 -0
  430. package/dist/browser/modules/stream/browser/collector.d.ts +25 -0
  431. package/dist/browser/modules/stream/browser/collector.js +66 -0
  432. package/dist/browser/modules/stream/browser/compose.d.ts +19 -0
  433. package/dist/browser/modules/stream/browser/compose.js +231 -0
  434. package/dist/browser/modules/stream/browser/duplex.d.ts +296 -0
  435. package/dist/browser/modules/stream/browser/duplex.js +966 -0
  436. package/dist/browser/modules/stream/browser/factories.d.ts +80 -0
  437. package/dist/browser/modules/stream/browser/factories.js +212 -0
  438. package/dist/browser/modules/stream/browser/helpers.d.ts +13 -0
  439. package/dist/browser/modules/stream/browser/helpers.js +44 -0
  440. package/dist/browser/modules/stream/browser/microtask-context.d.ts +44 -0
  441. package/dist/browser/modules/stream/browser/microtask-context.js +60 -0
  442. package/dist/browser/modules/stream/browser/passthrough.d.ts +15 -0
  443. package/dist/browser/modules/stream/browser/passthrough.js +19 -0
  444. package/dist/browser/modules/stream/browser/pipe-manager.d.ts +38 -0
  445. package/dist/browser/modules/stream/browser/pipe-manager.js +158 -0
  446. package/dist/browser/modules/stream/browser/pipeline.d.ts +51 -0
  447. package/dist/browser/modules/stream/browser/pipeline.js +486 -0
  448. package/dist/browser/modules/stream/browser/readable.d.ts +379 -0
  449. package/dist/browser/modules/stream/browser/readable.js +2173 -0
  450. package/dist/browser/modules/stream/browser/transform.d.ts +314 -0
  451. package/dist/browser/modules/stream/browser/transform.js +1235 -0
  452. package/dist/browser/modules/stream/browser/utils.d.ts +62 -0
  453. package/dist/browser/modules/stream/browser/utils.js +256 -0
  454. package/dist/browser/modules/stream/browser/writable.d.ts +235 -0
  455. package/dist/browser/modules/stream/browser/writable.js +1302 -0
  456. package/dist/browser/modules/stream/buffered-stream.d.ts +6 -5
  457. package/dist/browser/modules/stream/buffered-stream.js +28 -10
  458. package/dist/browser/modules/stream/chunked-builder.d.ts +9 -2
  459. package/dist/browser/modules/stream/chunked-builder.js +16 -3
  460. package/dist/browser/modules/stream/common/add-abort-signal.d.ts +18 -0
  461. package/dist/browser/modules/stream/common/add-abort-signal.js +45 -0
  462. package/dist/browser/modules/stream/common/binary-chunk.d.ts +21 -0
  463. package/dist/browser/modules/stream/common/binary-chunk.js +150 -0
  464. package/dist/browser/modules/stream/common/consumers.d.ts +26 -0
  465. package/dist/browser/modules/stream/common/consumers.js +41 -0
  466. package/dist/browser/modules/stream/common/end-args.d.ts +20 -0
  467. package/dist/browser/modules/stream/common/end-args.js +24 -0
  468. package/dist/browser/modules/stream/common/finished-all.d.ts +10 -0
  469. package/dist/browser/modules/stream/common/finished-all.js +25 -0
  470. package/dist/browser/modules/stream/common/options.d.ts +18 -0
  471. package/dist/browser/modules/stream/common/options.js +21 -0
  472. package/dist/browser/modules/stream/common/type-guards.d.ts +21 -0
  473. package/dist/browser/modules/stream/common/type-guards.js +68 -0
  474. package/dist/browser/modules/stream/common/utils.d.ts +32 -0
  475. package/dist/browser/modules/stream/common/utils.js +63 -0
  476. package/dist/browser/modules/stream/errors.d.ts +40 -0
  477. package/dist/browser/modules/stream/errors.js +50 -0
  478. package/dist/browser/modules/stream/index.base.d.ts +17 -0
  479. package/dist/browser/modules/stream/index.base.js +15 -0
  480. package/dist/browser/modules/stream/index.browser.d.ts +13 -8
  481. package/dist/browser/modules/stream/index.browser.js +21 -5
  482. package/dist/browser/modules/stream/index.d.ts +11 -9
  483. package/dist/browser/modules/stream/index.js +17 -5
  484. package/dist/browser/modules/stream/internal/event-utils.d.ts +2 -8
  485. package/dist/browser/modules/stream/internal/evented-readable-to-async-iterable.d.ts +18 -0
  486. package/dist/browser/modules/stream/internal/evented-readable-to-async-iterable.js +133 -0
  487. package/dist/browser/modules/stream/node/collector.d.ts +30 -0
  488. package/dist/browser/modules/stream/node/collector.js +70 -0
  489. package/dist/browser/modules/stream/node/compose.d.ts +10 -0
  490. package/dist/browser/modules/stream/node/compose.js +210 -0
  491. package/dist/browser/modules/stream/node/factories.d.ts +75 -0
  492. package/dist/browser/modules/stream/node/factories.js +222 -0
  493. package/dist/browser/modules/stream/node/pipeline.d.ts +25 -0
  494. package/dist/browser/modules/stream/node/pipeline.js +110 -0
  495. package/dist/browser/modules/stream/node/utils.d.ts +63 -0
  496. package/dist/browser/modules/stream/node/utils.js +253 -0
  497. package/dist/browser/modules/stream/node/writable.d.ts +47 -0
  498. package/dist/browser/modules/stream/node/writable.js +119 -0
  499. package/dist/browser/modules/stream/pull-stream.d.ts +5 -7
  500. package/dist/browser/modules/stream/pull-stream.js +37 -55
  501. package/dist/browser/modules/stream/types.d.ts +26 -37
  502. package/dist/browser/modules/stream/utils.base.d.ts +60 -0
  503. package/dist/browser/modules/stream/utils.base.js +123 -0
  504. package/dist/browser/modules/stream/utils.browser.d.ts +22 -0
  505. package/dist/browser/modules/stream/utils.browser.js +80 -0
  506. package/dist/browser/modules/stream/utils.d.ts +17 -18
  507. package/dist/browser/modules/stream/utils.js +66 -37
  508. package/dist/browser/utils/binary.d.ts +108 -0
  509. package/dist/browser/utils/binary.js +429 -0
  510. package/dist/browser/utils/errors.d.ts +114 -0
  511. package/dist/browser/utils/errors.js +206 -0
  512. package/dist/browser/{modules/stream → utils}/event-emitter.d.ts +3 -1
  513. package/dist/{esm/modules/stream → browser/utils}/event-emitter.js +89 -58
  514. package/dist/browser/utils/fs.browser.d.ts +73 -0
  515. package/dist/browser/utils/fs.browser.js +102 -0
  516. package/dist/browser/utils/fs.d.ts +285 -0
  517. package/dist/browser/utils/fs.js +526 -0
  518. package/dist/browser/utils/glob.d.ts +82 -0
  519. package/dist/browser/utils/glob.js +244 -0
  520. package/dist/browser/utils/utils.base.d.ts +19 -0
  521. package/dist/browser/utils/utils.base.js +47 -8
  522. package/dist/browser/utils/utils.browser.d.ts +2 -2
  523. package/dist/browser/utils/utils.browser.js +3 -7
  524. package/dist/browser/utils/utils.d.ts +2 -2
  525. package/dist/browser/utils/utils.js +3 -14
  526. package/dist/cjs/index.js +63 -4
  527. package/dist/cjs/modules/archive/compression/compress.base.js +252 -2
  528. package/dist/cjs/modules/archive/compression/compress.browser.js +378 -50
  529. package/dist/cjs/modules/archive/compression/compress.js +210 -22
  530. package/dist/cjs/modules/archive/compression/crc32.base.js +13 -0
  531. package/dist/cjs/modules/archive/compression/crc32.browser.js +8 -0
  532. package/dist/cjs/modules/archive/compression/crc32.js +42 -10
  533. package/dist/cjs/modules/archive/compression/deflate-fallback.js +222 -79
  534. package/dist/cjs/modules/archive/compression/streaming-compress.base.js +4 -4
  535. package/dist/cjs/modules/archive/compression/streaming-compress.browser.js +221 -201
  536. package/dist/cjs/modules/archive/compression/streaming-compress.js +88 -27
  537. package/dist/cjs/modules/archive/compression/worker-pool/index.browser.js +17 -0
  538. package/dist/cjs/modules/archive/compression/worker-pool/index.js +65 -0
  539. package/dist/cjs/modules/archive/compression/worker-pool/pool.base.js +63 -0
  540. package/dist/cjs/modules/archive/compression/worker-pool/pool.browser.js +867 -0
  541. package/dist/cjs/modules/archive/compression/worker-pool/types.js +8 -0
  542. package/dist/cjs/modules/archive/compression/worker-pool/worker-script.js +342 -0
  543. package/dist/cjs/modules/archive/crypto/aes.js +406 -0
  544. package/dist/cjs/modules/archive/crypto/index.js +51 -0
  545. package/dist/cjs/modules/archive/crypto/types.js +53 -0
  546. package/dist/cjs/modules/archive/crypto/zip-crypto.js +218 -0
  547. package/dist/cjs/modules/archive/formats/index.js +32 -0
  548. package/dist/cjs/modules/archive/formats/types.js +2 -0
  549. package/dist/cjs/modules/archive/fs/archive-file.js +2721 -0
  550. package/dist/cjs/modules/archive/fs/index.js +96 -0
  551. package/dist/cjs/modules/archive/fs/types.js +10 -0
  552. package/dist/cjs/modules/archive/index.base.js +87 -1
  553. package/dist/cjs/modules/archive/index.browser.js +38 -1
  554. package/dist/cjs/modules/archive/index.js +50 -1
  555. package/dist/cjs/modules/archive/io/archive-sink.js +5 -4
  556. package/dist/cjs/modules/archive/io/archive-source.js +164 -13
  557. package/dist/cjs/modules/archive/io/archive-source.node.js +13 -0
  558. package/dist/cjs/modules/archive/io/random-access.js +308 -0
  559. package/dist/cjs/modules/archive/io/remote-zip-reader.js +787 -0
  560. package/dist/cjs/modules/archive/{utils → shared}/async-queue.js +40 -8
  561. package/dist/cjs/modules/archive/{internal → shared}/byte-queue.js +59 -30
  562. package/dist/cjs/modules/archive/{utils → shared}/bytes.js +15 -27
  563. package/dist/cjs/modules/archive/shared/defaults.js +16 -0
  564. package/dist/cjs/modules/archive/shared/errors.js +197 -0
  565. package/dist/cjs/modules/archive/shared/progress.js +96 -0
  566. package/dist/cjs/modules/archive/shared/text.js +273 -0
  567. package/dist/cjs/modules/archive/tar/index.browser.js +45 -0
  568. package/dist/cjs/modules/archive/tar/index.js +38 -0
  569. package/dist/cjs/modules/archive/tar/tar-archive.js +530 -0
  570. package/dist/cjs/modules/archive/tar/tar-constants.js +62 -0
  571. package/dist/cjs/modules/archive/tar/tar-entry-info.js +50 -0
  572. package/dist/cjs/modules/archive/tar/tar-gzip.js +127 -0
  573. package/dist/cjs/modules/archive/tar/tar-header.js +320 -0
  574. package/dist/cjs/modules/archive/tar/tar-parser.js +371 -0
  575. package/dist/cjs/modules/archive/unzip/extract.js +13 -3
  576. package/dist/cjs/modules/archive/unzip/index.js +5 -164
  577. package/dist/cjs/modules/archive/unzip/parser-core.js +342 -0
  578. package/dist/cjs/modules/archive/unzip/progress.js +2 -0
  579. package/dist/cjs/modules/archive/unzip/stream.base.js +224 -468
  580. package/dist/cjs/modules/archive/unzip/stream.browser.js +109 -59
  581. package/dist/cjs/modules/archive/unzip/stream.js +68 -8
  582. package/dist/cjs/modules/archive/unzip/zip-extract-core.js +483 -0
  583. package/dist/cjs/modules/archive/unzip/zip-parser.js +148 -244
  584. package/dist/cjs/modules/archive/unzip/zip-reader.js +441 -0
  585. package/dist/cjs/modules/archive/zip/compressibility.js +131 -0
  586. package/dist/cjs/modules/archive/zip/index.js +11 -157
  587. package/dist/cjs/modules/archive/zip/progress.js +2 -0
  588. package/dist/cjs/modules/archive/zip/raw-entry.js +12 -0
  589. package/dist/cjs/modules/archive/zip/stream.js +727 -70
  590. package/dist/cjs/modules/archive/zip/writable-file.js +10 -0
  591. package/dist/cjs/modules/archive/zip/writer-core.js +275 -0
  592. package/dist/cjs/modules/archive/zip/zip-archive.js +453 -0
  593. package/dist/cjs/modules/archive/zip/zip-bytes.js +291 -114
  594. package/dist/cjs/modules/archive/zip/zip-edit-plan.js +187 -0
  595. package/dist/cjs/modules/archive/zip/zip-edit-view.js +231 -0
  596. package/dist/cjs/modules/archive/zip/zip-editor.js +764 -0
  597. package/dist/cjs/modules/archive/zip/zip-entry-attributes.js +62 -0
  598. package/dist/cjs/modules/archive/zip/zip-entry-metadata.js +28 -8
  599. package/dist/cjs/modules/archive/zip/zip-entry-options.js +25 -0
  600. package/dist/cjs/modules/archive/zip-spec/binary.js +134 -0
  601. package/dist/cjs/modules/archive/{utils → zip-spec}/timestamps.js +78 -17
  602. package/dist/cjs/modules/archive/zip-spec/zip-entry-info.js +7 -0
  603. package/dist/cjs/modules/archive/zip-spec/zip-extra-fields.js +221 -0
  604. package/dist/cjs/modules/archive/zip-spec/zip-parser-core.js +374 -0
  605. package/dist/cjs/modules/archive/zip-spec/zip-path.js +91 -0
  606. package/dist/cjs/modules/archive/zip-spec/zip-records.js +166 -1
  607. package/dist/cjs/modules/csv/constants.js +70 -0
  608. package/dist/cjs/modules/csv/errors.js +27 -0
  609. package/dist/cjs/modules/csv/format/config.js +111 -0
  610. package/dist/cjs/modules/csv/format/formatted-value.js +81 -0
  611. package/dist/cjs/modules/csv/format/formatter.js +404 -0
  612. package/dist/cjs/modules/csv/format/index.js +18 -0
  613. package/dist/cjs/modules/csv/index.js +83 -0
  614. package/dist/cjs/modules/csv/parse/async.js +293 -0
  615. package/dist/cjs/modules/csv/parse/config.js +165 -0
  616. package/dist/cjs/modules/csv/parse/helpers.js +232 -0
  617. package/dist/cjs/modules/csv/parse/index.js +35 -0
  618. package/dist/cjs/modules/csv/parse/lines.js +85 -0
  619. package/dist/cjs/modules/csv/parse/row-processor.js +211 -0
  620. package/dist/cjs/modules/csv/parse/scanner/index.js +22 -0
  621. package/dist/cjs/modules/csv/parse/scanner/scanner.js +862 -0
  622. package/dist/cjs/modules/csv/parse/scanner/types.js +29 -0
  623. package/dist/cjs/modules/csv/parse/state.js +101 -0
  624. package/dist/cjs/modules/csv/parse/sync.js +434 -0
  625. package/dist/cjs/modules/csv/stream/formatter.js +165 -0
  626. package/dist/cjs/modules/csv/stream/index.js +23 -0
  627. package/dist/cjs/modules/csv/stream/parser.js +933 -0
  628. package/dist/cjs/modules/csv/types.js +75 -0
  629. package/dist/cjs/modules/csv/utils/detect.js +334 -0
  630. package/dist/cjs/modules/csv/utils/dynamic-typing.js +305 -0
  631. package/dist/cjs/modules/csv/utils/generate.js +967 -0
  632. package/dist/cjs/modules/csv/utils/number.js +53 -0
  633. package/dist/cjs/modules/csv/utils/row.js +270 -0
  634. package/dist/cjs/modules/csv/worker/index.browser.js +17 -0
  635. package/dist/cjs/modules/csv/worker/index.js +16 -0
  636. package/dist/cjs/modules/csv/worker/pool.browser.js +607 -0
  637. package/dist/cjs/modules/csv/worker/pool.js +62 -0
  638. package/dist/cjs/modules/csv/worker/types.js +8 -0
  639. package/dist/cjs/modules/csv/worker/worker-script.bundle.js +78 -0
  640. package/dist/cjs/modules/csv/worker/worker-script.generated.js +9 -0
  641. package/dist/cjs/modules/csv/worker/worker.entry.js +415 -0
  642. package/dist/cjs/modules/excel/cell.js +4 -3
  643. package/dist/cjs/modules/excel/errors.js +196 -0
  644. package/dist/cjs/modules/excel/image.js +2 -1
  645. package/dist/cjs/modules/excel/pivot-table.js +8 -7
  646. package/dist/cjs/modules/excel/range.js +2 -1
  647. package/dist/cjs/modules/excel/row.js +2 -1
  648. package/dist/cjs/modules/excel/stream/hyperlink-reader.js +2 -2
  649. package/dist/cjs/modules/excel/stream/workbook-reader.browser.js +14 -3
  650. package/dist/cjs/modules/excel/stream/workbook-reader.js +10 -12
  651. package/dist/cjs/modules/excel/stream/workbook-writer.browser.js +13 -6
  652. package/dist/cjs/modules/excel/stream/workbook-writer.js +5 -9
  653. package/dist/cjs/modules/excel/stream/worksheet-reader.js +8 -3
  654. package/dist/cjs/modules/excel/stream/worksheet-writer.js +5 -4
  655. package/dist/cjs/modules/excel/table.js +52 -53
  656. package/dist/cjs/modules/excel/utils/cell-matrix.js +5 -4
  657. package/dist/cjs/modules/excel/utils/col-cache.js +7 -6
  658. package/dist/cjs/modules/excel/utils/encryptor.browser.js +2 -2
  659. package/dist/cjs/modules/excel/utils/encryptor.js +2 -2
  660. package/dist/cjs/modules/excel/utils/ooxml-validator.js +8 -6
  661. package/dist/cjs/modules/excel/utils/parse-sax.js +36 -27
  662. package/dist/cjs/modules/excel/utils/sheet-utils.js +0 -59
  663. package/dist/cjs/modules/excel/utils/stream-buf.js +14 -21
  664. package/dist/cjs/modules/excel/utils/xml-stream.js +3 -2
  665. package/dist/cjs/modules/excel/workbook.browser.js +793 -0
  666. package/dist/cjs/modules/excel/workbook.js +39 -302
  667. package/dist/cjs/modules/excel/worksheet.js +8 -7
  668. package/dist/cjs/modules/excel/xlsx/xform/base-xform.js +0 -1
  669. package/dist/cjs/modules/excel/xlsx/xform/core/relationships-xform.js +3 -2
  670. package/dist/cjs/modules/excel/xlsx/xform/list-xform.js +2 -1
  671. package/dist/cjs/modules/excel/xlsx/xform/pivot-table/pivot-cache-records-xform.js +2 -1
  672. package/dist/cjs/modules/excel/xlsx/xform/sheet/cell-xform.js +9 -3
  673. package/dist/cjs/modules/excel/xlsx/xform/sheet/row-xform.js +2 -1
  674. package/dist/cjs/modules/excel/xlsx/xform/strings/shared-strings-xform.js +3 -2
  675. package/dist/cjs/modules/excel/xlsx/xform/strings/text-xform.js +3 -4
  676. package/dist/cjs/modules/excel/xlsx/xform/style/numfmt-xform.js +8 -2
  677. package/dist/cjs/modules/excel/xlsx/xform/style/styles-xform.js +2 -1
  678. package/dist/cjs/modules/excel/xlsx/xform/table/auto-filter-xform.js +3 -2
  679. package/dist/cjs/modules/excel/xlsx/xform/table/filter-column-xform.js +2 -1
  680. package/dist/cjs/modules/excel/xlsx/xlsx.browser.js +12 -10
  681. package/dist/cjs/modules/excel/xlsx/xlsx.js +7 -10
  682. package/dist/cjs/modules/stream/browser/_lazy.js +34 -0
  683. package/dist/cjs/modules/stream/browser/chunk-buffer.js +227 -0
  684. package/dist/cjs/modules/stream/browser/collector.js +71 -0
  685. package/dist/cjs/modules/stream/browser/compose.js +234 -0
  686. package/dist/cjs/modules/stream/browser/duplex.js +970 -0
  687. package/dist/cjs/modules/stream/browser/factories.js +229 -0
  688. package/dist/cjs/modules/stream/browser/helpers.js +50 -0
  689. package/dist/cjs/modules/stream/browser/microtask-context.js +64 -0
  690. package/dist/cjs/modules/stream/browser/passthrough.js +23 -0
  691. package/dist/cjs/modules/stream/browser/pipe-manager.js +162 -0
  692. package/dist/cjs/modules/stream/browser/pipeline.js +493 -0
  693. package/dist/cjs/modules/stream/browser/readable.js +2179 -0
  694. package/dist/cjs/modules/stream/browser/transform.js +1239 -0
  695. package/dist/cjs/modules/stream/browser/utils.js +267 -0
  696. package/dist/cjs/modules/stream/browser/writable.js +1307 -0
  697. package/dist/cjs/modules/stream/buffered-stream.js +31 -13
  698. package/dist/cjs/modules/stream/chunked-builder.js +17 -4
  699. package/dist/cjs/modules/stream/common/add-abort-signal.js +48 -0
  700. package/dist/cjs/modules/stream/common/binary-chunk.js +156 -0
  701. package/dist/cjs/modules/stream/common/consumers.js +44 -0
  702. package/dist/cjs/modules/stream/common/end-args.js +27 -0
  703. package/dist/cjs/modules/stream/common/finished-all.js +28 -0
  704. package/dist/cjs/modules/stream/common/options.js +25 -0
  705. package/dist/cjs/modules/stream/common/type-guards.js +73 -0
  706. package/dist/cjs/modules/stream/common/utils.js +70 -0
  707. package/dist/cjs/modules/stream/errors.js +58 -0
  708. package/dist/cjs/modules/stream/index.base.js +45 -0
  709. package/dist/cjs/modules/stream/index.browser.js +80 -80
  710. package/dist/cjs/modules/stream/index.js +76 -80
  711. package/dist/cjs/modules/stream/internal/evented-readable-to-async-iterable.js +136 -0
  712. package/dist/cjs/modules/stream/node/collector.js +75 -0
  713. package/dist/cjs/modules/stream/node/compose.js +213 -0
  714. package/dist/cjs/modules/stream/node/factories.js +240 -0
  715. package/dist/cjs/modules/stream/node/pipeline.js +117 -0
  716. package/dist/cjs/modules/stream/node/utils.js +264 -0
  717. package/dist/cjs/modules/stream/node/writable.js +124 -0
  718. package/dist/cjs/modules/stream/pull-stream.js +37 -55
  719. package/dist/cjs/modules/stream/utils.base.js +136 -0
  720. package/dist/cjs/modules/stream/utils.browser.js +93 -0
  721. package/dist/cjs/modules/stream/utils.js +69 -38
  722. package/dist/cjs/utils/binary.js +445 -0
  723. package/dist/cjs/utils/errors.js +220 -0
  724. package/dist/cjs/{modules/stream → utils}/event-emitter.js +89 -58
  725. package/dist/cjs/utils/fs.browser.js +139 -0
  726. package/dist/cjs/utils/fs.js +602 -0
  727. package/dist/cjs/utils/glob.js +252 -0
  728. package/dist/cjs/utils/utils.base.js +49 -8
  729. package/dist/cjs/utils/utils.browser.js +6 -8
  730. package/dist/cjs/utils/utils.js +6 -18
  731. package/dist/esm/index.browser.js +21 -13
  732. package/dist/esm/index.js +21 -1
  733. package/dist/esm/modules/archive/compression/compress.base.js +242 -3
  734. package/dist/esm/modules/archive/compression/compress.browser.js +363 -54
  735. package/dist/esm/modules/archive/compression/compress.js +182 -23
  736. package/dist/esm/modules/archive/compression/crc32.base.js +12 -0
  737. package/dist/esm/modules/archive/compression/crc32.browser.js +7 -0
  738. package/dist/esm/modules/archive/compression/crc32.js +42 -11
  739. package/dist/esm/modules/archive/compression/deflate-fallback.js +219 -78
  740. package/dist/esm/modules/archive/compression/streaming-compress.base.js +2 -3
  741. package/dist/esm/modules/archive/compression/streaming-compress.browser.js +225 -202
  742. package/dist/esm/modules/archive/compression/streaming-compress.js +83 -28
  743. package/dist/esm/modules/archive/compression/worker-pool/index.browser.js +6 -0
  744. package/dist/esm/modules/archive/compression/worker-pool/index.js +53 -0
  745. package/dist/esm/modules/archive/compression/worker-pool/pool.base.js +56 -0
  746. package/dist/esm/modules/archive/compression/worker-pool/pool.browser.js +857 -0
  747. package/dist/esm/modules/archive/compression/worker-pool/types.js +7 -0
  748. package/dist/esm/modules/archive/compression/worker-pool/worker-script.js +337 -0
  749. package/dist/esm/modules/archive/crypto/aes.js +394 -0
  750. package/dist/esm/modules/archive/crypto/index.js +20 -0
  751. package/dist/esm/modules/archive/crypto/types.js +47 -0
  752. package/dist/esm/modules/archive/crypto/zip-crypto.js +203 -0
  753. package/dist/esm/modules/archive/formats/index.js +28 -0
  754. package/dist/esm/modules/archive/formats/types.js +1 -0
  755. package/dist/esm/modules/archive/fs/archive-file.js +2684 -0
  756. package/dist/esm/modules/archive/fs/index.js +61 -0
  757. package/dist/esm/modules/archive/fs/types.js +9 -0
  758. package/dist/esm/modules/archive/index.base.js +26 -1
  759. package/dist/esm/modules/archive/index.browser.js +10 -2
  760. package/dist/esm/modules/archive/index.js +16 -2
  761. package/dist/esm/modules/archive/io/archive-sink.js +4 -3
  762. package/dist/esm/modules/archive/io/archive-source.js +156 -10
  763. package/dist/esm/modules/archive/io/archive-source.node.js +10 -0
  764. package/dist/esm/modules/archive/io/random-access.js +301 -0
  765. package/dist/esm/modules/archive/io/remote-zip-reader.js +782 -0
  766. package/dist/esm/modules/archive/{utils → shared}/async-queue.js +40 -8
  767. package/dist/{browser/modules/archive/internal → esm/modules/archive/shared}/byte-queue.js +59 -30
  768. package/dist/{browser/modules/archive/utils → esm/modules/archive/shared}/bytes.js +14 -25
  769. package/dist/esm/modules/archive/{defaults.js → shared/defaults.js} +7 -0
  770. package/dist/esm/modules/archive/shared/errors.js +171 -0
  771. package/dist/esm/modules/archive/shared/progress.js +92 -0
  772. package/dist/esm/modules/archive/shared/text.js +262 -0
  773. package/dist/esm/modules/archive/tar/index.browser.js +18 -0
  774. package/dist/esm/modules/archive/tar/index.js +16 -0
  775. package/dist/esm/modules/archive/tar/tar-archive.js +519 -0
  776. package/dist/esm/modules/archive/tar/tar-constants.js +59 -0
  777. package/dist/esm/modules/archive/tar/tar-entry-info.js +43 -0
  778. package/dist/esm/modules/archive/tar/tar-gzip.js +119 -0
  779. package/dist/esm/modules/archive/tar/tar-header.js +311 -0
  780. package/dist/esm/modules/archive/tar/tar-parser.js +366 -0
  781. package/dist/esm/modules/archive/unzip/extract.js +13 -3
  782. package/dist/esm/modules/archive/unzip/index.js +3 -162
  783. package/dist/esm/modules/archive/unzip/parser-core.js +316 -0
  784. package/dist/esm/modules/archive/unzip/progress.js +1 -0
  785. package/dist/esm/modules/archive/unzip/stream.base.js +210 -440
  786. package/dist/esm/modules/archive/unzip/stream.browser.js +107 -57
  787. package/dist/esm/modules/archive/unzip/stream.js +68 -8
  788. package/dist/esm/modules/archive/unzip/zip-extract-core.js +475 -0
  789. package/dist/esm/modules/archive/unzip/zip-parser.js +146 -242
  790. package/dist/esm/modules/archive/unzip/zip-reader.js +435 -0
  791. package/dist/esm/modules/archive/zip/compressibility.js +127 -0
  792. package/dist/esm/modules/archive/zip/index.js +5 -155
  793. package/dist/esm/modules/archive/zip/progress.js +1 -0
  794. package/dist/esm/modules/archive/zip/raw-entry.js +9 -0
  795. package/dist/esm/modules/archive/zip/stream.js +728 -72
  796. package/dist/esm/modules/archive/zip/writable-file.js +9 -0
  797. package/dist/esm/modules/archive/zip/writer-core.js +270 -0
  798. package/dist/esm/modules/archive/zip/zip-archive.js +448 -0
  799. package/dist/esm/modules/archive/zip/zip-bytes.js +293 -116
  800. package/dist/esm/modules/archive/zip/zip-edit-plan.js +183 -0
  801. package/dist/esm/modules/archive/zip/zip-edit-view.js +227 -0
  802. package/dist/esm/modules/archive/zip/zip-editor.js +758 -0
  803. package/dist/esm/modules/archive/zip/zip-entry-attributes.js +59 -0
  804. package/dist/esm/modules/archive/zip/zip-entry-metadata.js +29 -9
  805. package/dist/esm/modules/archive/zip/zip-entry-options.js +22 -0
  806. package/dist/esm/modules/archive/zip-spec/binary.js +126 -0
  807. package/dist/esm/modules/archive/{utils → zip-spec}/timestamps.js +75 -15
  808. package/dist/esm/modules/archive/zip-spec/zip-entry-info.js +6 -1
  809. package/dist/esm/modules/archive/zip-spec/zip-extra-fields.js +215 -0
  810. package/dist/esm/modules/archive/zip-spec/zip-parser-core.js +361 -0
  811. package/dist/esm/modules/archive/zip-spec/zip-path.js +87 -0
  812. package/dist/esm/modules/archive/zip-spec/zip-records.js +154 -0
  813. package/dist/esm/modules/csv/constants.js +66 -0
  814. package/dist/esm/modules/csv/errors.js +22 -0
  815. package/dist/esm/modules/csv/format/config.js +106 -0
  816. package/dist/esm/modules/csv/format/formatted-value.js +76 -0
  817. package/dist/esm/modules/csv/format/formatter.js +397 -0
  818. package/dist/esm/modules/csv/format/index.js +12 -0
  819. package/dist/esm/modules/csv/index.js +47 -0
  820. package/dist/esm/modules/csv/parse/async.js +288 -0
  821. package/dist/esm/modules/csv/parse/config.js +159 -0
  822. package/dist/esm/modules/csv/parse/helpers.js +225 -0
  823. package/dist/esm/modules/csv/parse/index.js +19 -0
  824. package/dist/esm/modules/csv/parse/lines.js +82 -0
  825. package/dist/esm/modules/csv/parse/row-processor.js +203 -0
  826. package/dist/esm/modules/csv/parse/scanner/index.js +12 -0
  827. package/dist/esm/modules/csv/parse/scanner/scanner.js +852 -0
  828. package/dist/esm/modules/csv/parse/scanner/types.js +25 -0
  829. package/dist/esm/modules/csv/parse/state.js +96 -0
  830. package/dist/esm/modules/csv/parse/sync.js +429 -0
  831. package/dist/esm/modules/csv/stream/formatter.js +160 -0
  832. package/dist/esm/modules/csv/stream/index.js +16 -0
  833. package/dist/esm/modules/csv/stream/parser.js +928 -0
  834. package/dist/esm/modules/csv/types.js +67 -0
  835. package/dist/esm/modules/csv/utils/detect.js +325 -0
  836. package/dist/esm/modules/csv/utils/dynamic-typing.js +297 -0
  837. package/dist/esm/modules/csv/utils/generate.js +960 -0
  838. package/dist/esm/modules/csv/utils/number.js +49 -0
  839. package/dist/esm/modules/csv/utils/row.js +255 -0
  840. package/dist/esm/modules/csv/worker/index.browser.js +5 -0
  841. package/dist/esm/modules/csv/worker/index.js +6 -0
  842. package/dist/esm/modules/csv/worker/pool.browser.js +602 -0
  843. package/dist/esm/modules/csv/worker/pool.js +54 -0
  844. package/dist/esm/modules/csv/worker/types.js +7 -0
  845. package/dist/esm/modules/csv/worker/worker-script.bundle.js +41 -0
  846. package/dist/esm/modules/csv/worker/worker-script.generated.js +6 -0
  847. package/dist/esm/modules/csv/worker/worker.entry.js +413 -0
  848. package/dist/esm/modules/excel/cell.js +4 -3
  849. package/dist/esm/modules/excel/errors.js +176 -0
  850. package/dist/esm/modules/excel/image.js +2 -1
  851. package/dist/esm/modules/excel/pivot-table.js +8 -7
  852. package/dist/esm/modules/excel/range.js +2 -1
  853. package/dist/esm/modules/excel/row.js +2 -1
  854. package/dist/esm/modules/excel/stream/hyperlink-reader.js +1 -1
  855. package/dist/esm/modules/excel/stream/workbook-reader.browser.js +14 -3
  856. package/dist/esm/modules/excel/stream/workbook-reader.js +10 -9
  857. package/dist/esm/modules/excel/stream/workbook-writer.browser.js +13 -6
  858. package/dist/esm/modules/excel/stream/workbook-writer.js +5 -6
  859. package/dist/esm/modules/excel/stream/worksheet-reader.js +8 -3
  860. package/dist/esm/modules/excel/stream/worksheet-writer.js +5 -4
  861. package/dist/esm/modules/excel/table.js +52 -53
  862. package/dist/esm/modules/excel/utils/cell-matrix.js +5 -4
  863. package/dist/esm/modules/excel/utils/col-cache.js +7 -6
  864. package/dist/esm/modules/excel/utils/encryptor.browser.js +1 -1
  865. package/dist/esm/modules/excel/utils/encryptor.js +1 -1
  866. package/dist/esm/modules/excel/utils/ooxml-validator.js +8 -6
  867. package/dist/esm/modules/excel/utils/parse-sax.js +36 -27
  868. package/dist/esm/modules/excel/utils/sheet-utils.js +0 -58
  869. package/dist/esm/modules/excel/utils/stream-buf.js +13 -20
  870. package/dist/esm/modules/excel/utils/xml-stream.js +3 -2
  871. package/dist/esm/modules/excel/workbook.browser.js +790 -0
  872. package/dist/esm/modules/excel/workbook.js +39 -302
  873. package/dist/esm/modules/excel/worksheet.js +8 -7
  874. package/dist/esm/modules/excel/xlsx/xform/base-xform.js +0 -1
  875. package/dist/esm/modules/excel/xlsx/xform/core/relationships-xform.js +3 -2
  876. package/dist/esm/modules/excel/xlsx/xform/list-xform.js +2 -1
  877. package/dist/esm/modules/excel/xlsx/xform/pivot-table/pivot-cache-records-xform.js +2 -1
  878. package/dist/esm/modules/excel/xlsx/xform/sheet/cell-xform.js +10 -4
  879. package/dist/esm/modules/excel/xlsx/xform/sheet/row-xform.js +2 -1
  880. package/dist/esm/modules/excel/xlsx/xform/strings/shared-strings-xform.js +3 -2
  881. package/dist/esm/modules/excel/xlsx/xform/strings/text-xform.js +3 -4
  882. package/dist/esm/modules/excel/xlsx/xform/style/numfmt-xform.js +8 -2
  883. package/dist/esm/modules/excel/xlsx/xform/style/styles-xform.js +2 -1
  884. package/dist/esm/modules/excel/xlsx/xform/table/auto-filter-xform.js +3 -2
  885. package/dist/esm/modules/excel/xlsx/xform/table/filter-column-xform.js +2 -1
  886. package/dist/esm/modules/excel/xlsx/xlsx.browser.js +11 -9
  887. package/dist/esm/modules/excel/xlsx/xlsx.js +6 -6
  888. package/dist/esm/modules/stream/browser/_lazy.js +30 -0
  889. package/dist/esm/modules/stream/browser/chunk-buffer.js +223 -0
  890. package/dist/esm/modules/stream/browser/collector.js +66 -0
  891. package/dist/esm/modules/stream/browser/compose.js +231 -0
  892. package/dist/esm/modules/stream/browser/duplex.js +966 -0
  893. package/dist/esm/modules/stream/browser/factories.js +212 -0
  894. package/dist/esm/modules/stream/browser/helpers.js +44 -0
  895. package/dist/esm/modules/stream/browser/microtask-context.js +60 -0
  896. package/dist/esm/modules/stream/browser/passthrough.js +19 -0
  897. package/dist/esm/modules/stream/browser/pipe-manager.js +158 -0
  898. package/dist/esm/modules/stream/browser/pipeline.js +486 -0
  899. package/dist/esm/modules/stream/browser/readable.js +2173 -0
  900. package/dist/esm/modules/stream/browser/transform.js +1235 -0
  901. package/dist/esm/modules/stream/browser/utils.js +256 -0
  902. package/dist/esm/modules/stream/browser/writable.js +1302 -0
  903. package/dist/esm/modules/stream/buffered-stream.js +28 -10
  904. package/dist/esm/modules/stream/chunked-builder.js +16 -3
  905. package/dist/esm/modules/stream/common/add-abort-signal.js +45 -0
  906. package/dist/esm/modules/stream/common/binary-chunk.js +150 -0
  907. package/dist/esm/modules/stream/common/consumers.js +41 -0
  908. package/dist/esm/modules/stream/common/end-args.js +24 -0
  909. package/dist/esm/modules/stream/common/finished-all.js +25 -0
  910. package/dist/esm/modules/stream/common/options.js +21 -0
  911. package/dist/esm/modules/stream/common/type-guards.js +68 -0
  912. package/dist/esm/modules/stream/common/utils.js +63 -0
  913. package/dist/esm/modules/stream/errors.js +50 -0
  914. package/dist/esm/modules/stream/index.base.js +15 -0
  915. package/dist/esm/modules/stream/index.browser.js +21 -5
  916. package/dist/esm/modules/stream/index.js +17 -5
  917. package/dist/esm/modules/stream/internal/evented-readable-to-async-iterable.js +133 -0
  918. package/dist/esm/modules/stream/node/collector.js +70 -0
  919. package/dist/esm/modules/stream/node/compose.js +210 -0
  920. package/dist/esm/modules/stream/node/factories.js +222 -0
  921. package/dist/esm/modules/stream/node/pipeline.js +110 -0
  922. package/dist/esm/modules/stream/node/utils.js +253 -0
  923. package/dist/esm/modules/stream/node/writable.js +119 -0
  924. package/dist/esm/modules/stream/pull-stream.js +37 -55
  925. package/dist/esm/modules/stream/utils.base.js +123 -0
  926. package/dist/esm/modules/stream/utils.browser.js +80 -0
  927. package/dist/esm/modules/stream/utils.js +66 -37
  928. package/dist/esm/utils/binary.js +429 -0
  929. package/dist/esm/utils/errors.js +206 -0
  930. package/dist/{browser/modules/stream → esm/utils}/event-emitter.js +89 -58
  931. package/dist/esm/utils/fs.browser.js +102 -0
  932. package/dist/esm/utils/fs.js +526 -0
  933. package/dist/esm/utils/glob.js +244 -0
  934. package/dist/esm/utils/utils.base.js +47 -8
  935. package/dist/esm/utils/utils.browser.js +3 -7
  936. package/dist/esm/utils/utils.js +3 -14
  937. package/dist/iife/THIRD_PARTY_NOTICES.md +0 -50
  938. package/dist/iife/excelts.iife.js +28995 -20576
  939. package/dist/iife/excelts.iife.js.map +1 -1
  940. package/dist/iife/excelts.iife.min.js +337 -36
  941. package/dist/types/index.browser.d.ts +14 -3
  942. package/dist/types/index.d.ts +16 -3
  943. package/dist/types/modules/archive/compression/compress.base.d.ts +127 -3
  944. package/dist/types/modules/archive/compression/compress.browser.d.ts +85 -35
  945. package/dist/types/modules/archive/compression/compress.d.ts +67 -3
  946. package/dist/types/modules/archive/compression/crc32.base.d.ts +9 -0
  947. package/dist/types/modules/archive/compression/crc32.browser.d.ts +5 -0
  948. package/dist/types/modules/archive/compression/crc32.d.ts +6 -0
  949. package/dist/types/modules/archive/compression/deflate-fallback.d.ts +38 -0
  950. package/dist/types/modules/archive/compression/streaming-compress.base.d.ts +45 -1
  951. package/dist/types/modules/archive/compression/streaming-compress.browser.d.ts +26 -6
  952. package/dist/types/modules/archive/compression/streaming-compress.d.ts +45 -2
  953. package/dist/types/modules/archive/compression/worker-pool/index.browser.d.ts +6 -0
  954. package/dist/types/modules/archive/compression/worker-pool/index.d.ts +26 -0
  955. package/dist/types/modules/archive/compression/worker-pool/pool.base.d.ts +34 -0
  956. package/dist/types/modules/archive/compression/worker-pool/pool.browser.d.ts +182 -0
  957. package/dist/types/modules/archive/compression/worker-pool/types.d.ts +170 -0
  958. package/dist/types/modules/archive/compression/worker-pool/worker-script.d.ts +26 -0
  959. package/dist/types/modules/archive/crypto/aes.d.ts +203 -0
  960. package/dist/types/modules/archive/crypto/index.d.ts +17 -0
  961. package/dist/types/modules/archive/crypto/types.d.ts +53 -0
  962. package/dist/types/modules/archive/crypto/zip-crypto.d.ts +105 -0
  963. package/dist/types/modules/archive/formats/index.d.ts +9 -0
  964. package/dist/types/modules/archive/formats/types.d.ts +1 -0
  965. package/dist/types/modules/archive/fs/archive-file.d.ts +403 -0
  966. package/dist/types/modules/archive/fs/index.d.ts +61 -0
  967. package/dist/types/modules/archive/fs/types.d.ts +517 -0
  968. package/dist/types/modules/archive/index.base.d.ts +10 -1
  969. package/dist/types/modules/archive/index.browser.d.ts +3 -2
  970. package/dist/types/modules/archive/index.d.ts +6 -2
  971. package/dist/types/modules/archive/io/archive-source.d.ts +31 -1
  972. package/dist/types/modules/archive/io/archive-source.node.d.ts +10 -0
  973. package/dist/types/modules/archive/io/random-access.d.ts +165 -0
  974. package/dist/types/modules/archive/io/remote-zip-reader.d.ts +352 -0
  975. package/dist/types/modules/archive/{utils → shared}/async-queue.d.ts +3 -1
  976. package/dist/{browser/modules/archive/internal → types/modules/archive/shared}/byte-queue.d.ts +5 -1
  977. package/dist/types/modules/archive/shared/bytes.d.ts +19 -0
  978. package/dist/types/modules/archive/shared/defaults.d.ts +12 -0
  979. package/dist/types/modules/archive/shared/errors.d.ts +118 -0
  980. package/dist/types/modules/archive/shared/progress.d.ts +62 -0
  981. package/dist/types/modules/archive/shared/text.d.ts +96 -0
  982. package/dist/types/modules/archive/tar/index.browser.d.ts +11 -0
  983. package/dist/types/modules/archive/tar/index.d.ts +13 -0
  984. package/dist/types/modules/archive/tar/tar-archive.d.ts +234 -0
  985. package/dist/types/modules/archive/tar/tar-constants.d.ts +102 -0
  986. package/dist/types/modules/archive/tar/tar-entry-info.d.ts +55 -0
  987. package/dist/types/modules/archive/tar/tar-gzip.d.ts +64 -0
  988. package/dist/types/modules/archive/tar/tar-header.d.ts +56 -0
  989. package/dist/types/modules/archive/tar/tar-parser.d.ts +40 -0
  990. package/dist/types/modules/archive/unzip/extract.d.ts +9 -2
  991. package/dist/types/modules/archive/unzip/index.d.ts +28 -40
  992. package/dist/types/modules/archive/unzip/parser-core.d.ts +117 -0
  993. package/dist/types/modules/archive/unzip/progress.d.ts +36 -0
  994. package/dist/types/modules/archive/unzip/stream.base.d.ts +24 -155
  995. package/dist/types/modules/archive/unzip/stream.browser.d.ts +2 -1
  996. package/dist/types/modules/archive/unzip/stream.d.ts +4 -3
  997. package/dist/types/modules/archive/unzip/zip-extract-core.d.ts +90 -0
  998. package/dist/types/modules/archive/unzip/zip-parser.d.ts +76 -6
  999. package/dist/types/modules/archive/unzip/zip-reader.d.ts +103 -0
  1000. package/dist/types/modules/archive/zip/compressibility.d.ts +20 -0
  1001. package/dist/types/modules/archive/zip/index.d.ts +27 -42
  1002. package/dist/types/modules/archive/zip/progress.d.ts +39 -0
  1003. package/dist/types/modules/archive/zip/raw-entry.d.ts +64 -0
  1004. package/dist/types/modules/archive/zip/stream.d.ts +178 -26
  1005. package/dist/types/modules/archive/zip/writable-file.d.ts +97 -0
  1006. package/dist/types/modules/archive/zip/writer-core.d.ts +77 -0
  1007. package/dist/types/modules/archive/zip/zip-archive.d.ts +121 -0
  1008. package/dist/types/modules/archive/zip/zip-bytes.d.ts +70 -3
  1009. package/dist/types/modules/archive/zip/zip-edit-plan.d.ts +123 -0
  1010. package/dist/types/modules/archive/zip/zip-edit-view.d.ts +155 -0
  1011. package/dist/types/modules/archive/zip/zip-editor.d.ts +359 -0
  1012. package/dist/types/modules/archive/zip/zip-entry-attributes.d.ts +10 -0
  1013. package/dist/types/modules/archive/zip/zip-entry-metadata.d.ts +11 -2
  1014. package/dist/types/modules/archive/zip/zip-entry-options.d.ts +47 -0
  1015. package/dist/types/modules/archive/zip-spec/binary.d.ts +42 -0
  1016. package/dist/types/modules/archive/{utils → zip-spec}/timestamps.d.ts +17 -2
  1017. package/dist/types/modules/archive/zip-spec/zip-entry-info.d.ts +47 -3
  1018. package/dist/types/modules/archive/zip-spec/zip-extra-fields.d.ts +90 -0
  1019. package/dist/types/modules/archive/zip-spec/zip-parser-core.d.ts +147 -0
  1020. package/dist/types/modules/archive/zip-spec/zip-path.d.ts +15 -0
  1021. package/dist/types/modules/archive/zip-spec/zip-records.d.ts +70 -0
  1022. package/dist/types/modules/csv/constants.d.ts +18 -0
  1023. package/dist/types/modules/csv/errors.d.ts +16 -0
  1024. package/dist/types/modules/csv/format/config.d.ts +121 -0
  1025. package/dist/types/modules/csv/format/formatted-value.d.ts +82 -0
  1026. package/dist/types/modules/csv/format/formatter.d.ts +71 -0
  1027. package/dist/types/modules/csv/format/index.d.ts +10 -0
  1028. package/dist/types/modules/csv/index.d.ts +23 -0
  1029. package/dist/types/modules/csv/parse/async.d.ts +111 -0
  1030. package/dist/types/modules/csv/parse/config.d.ts +100 -0
  1031. package/dist/types/modules/csv/parse/helpers.d.ts +114 -0
  1032. package/dist/types/modules/csv/parse/index.d.ts +16 -0
  1033. package/dist/types/modules/csv/parse/lines.d.ts +23 -0
  1034. package/dist/types/modules/csv/parse/row-processor.d.ts +61 -0
  1035. package/dist/types/modules/csv/parse/scanner/index.d.ts +10 -0
  1036. package/dist/types/modules/csv/parse/scanner/scanner.d.ts +154 -0
  1037. package/dist/types/modules/csv/parse/scanner/types.d.ts +185 -0
  1038. package/dist/types/modules/csv/parse/state.d.ts +46 -0
  1039. package/dist/types/modules/csv/parse/sync.d.ts +59 -0
  1040. package/dist/types/modules/csv/stream/formatter.d.ts +55 -0
  1041. package/dist/types/modules/csv/stream/index.d.ts +10 -0
  1042. package/dist/types/modules/csv/stream/parser.d.ts +141 -0
  1043. package/dist/types/modules/csv/types.d.ts +438 -0
  1044. package/dist/types/modules/csv/utils/detect.d.ts +100 -0
  1045. package/dist/types/modules/csv/utils/dynamic-typing.d.ts +71 -0
  1046. package/dist/types/modules/csv/utils/generate.d.ts +306 -0
  1047. package/dist/types/modules/csv/utils/number.d.ts +36 -0
  1048. package/dist/types/modules/csv/utils/row.d.ts +111 -0
  1049. package/dist/types/modules/csv/worker/index.browser.d.ts +6 -0
  1050. package/dist/types/modules/csv/worker/index.d.ts +7 -0
  1051. package/dist/types/modules/csv/worker/pool.browser.d.ts +193 -0
  1052. package/dist/types/modules/csv/worker/pool.d.ts +14 -0
  1053. package/dist/types/modules/csv/worker/types.d.ts +195 -0
  1054. package/dist/types/modules/csv/worker/worker-script.bundle.d.ts +10 -0
  1055. package/dist/types/modules/csv/worker/worker-script.generated.d.ts +6 -0
  1056. package/dist/types/modules/csv/worker/worker.entry.d.ts +11 -0
  1057. package/dist/types/modules/excel/errors.d.ts +133 -0
  1058. package/dist/types/modules/excel/stream/hyperlink-reader.d.ts +1 -1
  1059. package/dist/types/modules/excel/stream/workbook-reader.browser.d.ts +2 -1
  1060. package/dist/types/modules/excel/stream/workbook-writer.browser.d.ts +10 -8
  1061. package/dist/types/modules/excel/stream/workbook-writer.d.ts +2 -2
  1062. package/dist/types/modules/excel/stream/worksheet-reader.d.ts +1 -1
  1063. package/dist/types/modules/excel/table.d.ts +2 -0
  1064. package/dist/types/modules/excel/types.d.ts +3 -1
  1065. package/dist/types/modules/excel/utils/sheet-utils.d.ts +5 -17
  1066. package/dist/types/modules/excel/utils/stream-buf.d.ts +1 -2
  1067. package/dist/types/modules/excel/workbook.browser.d.ts +327 -0
  1068. package/dist/types/modules/excel/workbook.d.ts +15 -188
  1069. package/dist/types/modules/excel/xlsx/xlsx.browser.d.ts +1 -1
  1070. package/dist/types/modules/stream/browser/_lazy.d.ts +18 -0
  1071. package/dist/types/modules/stream/browser/chunk-buffer.d.ts +61 -0
  1072. package/dist/types/modules/stream/browser/collector.d.ts +25 -0
  1073. package/dist/types/modules/stream/browser/compose.d.ts +19 -0
  1074. package/dist/types/modules/stream/browser/duplex.d.ts +296 -0
  1075. package/dist/types/modules/stream/browser/factories.d.ts +80 -0
  1076. package/dist/types/modules/stream/browser/helpers.d.ts +13 -0
  1077. package/dist/types/modules/stream/browser/microtask-context.d.ts +44 -0
  1078. package/dist/types/modules/stream/browser/passthrough.d.ts +15 -0
  1079. package/dist/types/modules/stream/browser/pipe-manager.d.ts +38 -0
  1080. package/dist/types/modules/stream/browser/pipeline.d.ts +51 -0
  1081. package/dist/types/modules/stream/browser/readable.d.ts +379 -0
  1082. package/dist/types/modules/stream/browser/transform.d.ts +314 -0
  1083. package/dist/types/modules/stream/browser/utils.d.ts +62 -0
  1084. package/dist/types/modules/stream/browser/writable.d.ts +235 -0
  1085. package/dist/types/modules/stream/buffered-stream.d.ts +4 -3
  1086. package/dist/types/modules/stream/chunked-builder.d.ts +9 -2
  1087. package/dist/types/modules/stream/common/add-abort-signal.d.ts +18 -0
  1088. package/dist/types/modules/stream/common/binary-chunk.d.ts +21 -0
  1089. package/dist/types/modules/stream/common/consumers.d.ts +26 -0
  1090. package/dist/types/modules/stream/common/end-args.d.ts +20 -0
  1091. package/dist/types/modules/stream/common/finished-all.d.ts +10 -0
  1092. package/dist/types/modules/stream/common/options.d.ts +18 -0
  1093. package/dist/types/modules/stream/common/type-guards.d.ts +21 -0
  1094. package/dist/types/modules/stream/common/utils.d.ts +32 -0
  1095. package/dist/types/modules/stream/errors.d.ts +40 -0
  1096. package/dist/types/modules/stream/index.base.d.ts +17 -0
  1097. package/dist/types/modules/stream/index.browser.d.ts +13 -8
  1098. package/dist/types/modules/stream/index.d.ts +10 -8
  1099. package/dist/types/modules/stream/internal/event-utils.d.ts +2 -8
  1100. package/dist/types/modules/stream/internal/evented-readable-to-async-iterable.d.ts +18 -0
  1101. package/dist/types/modules/stream/node/collector.d.ts +30 -0
  1102. package/dist/types/modules/stream/node/compose.d.ts +10 -0
  1103. package/dist/types/modules/stream/node/factories.d.ts +75 -0
  1104. package/dist/types/modules/stream/node/pipeline.d.ts +25 -0
  1105. package/dist/types/modules/stream/node/utils.d.ts +63 -0
  1106. package/dist/types/modules/stream/node/writable.d.ts +47 -0
  1107. package/dist/types/modules/stream/pull-stream.d.ts +3 -5
  1108. package/dist/types/modules/stream/types.d.ts +26 -37
  1109. package/dist/types/modules/stream/utils.base.d.ts +60 -0
  1110. package/dist/types/modules/stream/utils.browser.d.ts +22 -0
  1111. package/dist/types/modules/stream/utils.d.ts +17 -18
  1112. package/dist/types/utils/binary.d.ts +108 -0
  1113. package/dist/types/utils/errors.d.ts +114 -0
  1114. package/dist/types/{modules/stream → utils}/event-emitter.d.ts +3 -1
  1115. package/dist/types/utils/fs.browser.d.ts +73 -0
  1116. package/dist/types/utils/fs.d.ts +285 -0
  1117. package/dist/types/utils/glob.d.ts +82 -0
  1118. package/dist/types/utils/utils.base.d.ts +19 -0
  1119. package/dist/types/utils/utils.browser.d.ts +2 -2
  1120. package/dist/types/utils/utils.d.ts +2 -2
  1121. package/package.json +68 -9
  1122. package/dist/browser/modules/archive/defaults.d.ts +0 -5
  1123. package/dist/browser/modules/archive/utils/binary.d.ts +0 -24
  1124. package/dist/browser/modules/archive/utils/binary.js +0 -69
  1125. package/dist/browser/modules/archive/utils/bytes.d.ts +0 -7
  1126. package/dist/browser/modules/archive/utils/compressibility.d.ts +0 -10
  1127. package/dist/browser/modules/archive/utils/compressibility.js +0 -57
  1128. package/dist/browser/modules/archive/utils/parse-buffer.d.ts +0 -18
  1129. package/dist/browser/modules/archive/utils/parse-buffer.js +0 -53
  1130. package/dist/browser/modules/archive/utils/text.d.ts +0 -20
  1131. package/dist/browser/modules/archive/utils/text.js +0 -33
  1132. package/dist/browser/modules/archive/utils/zip-extra-fields.d.ts +0 -19
  1133. package/dist/browser/modules/archive/utils/zip-extra-fields.js +0 -84
  1134. package/dist/browser/modules/csv/csv-core.d.ts +0 -206
  1135. package/dist/browser/modules/csv/csv-core.js +0 -726
  1136. package/dist/browser/modules/csv/csv-number.d.ts +0 -3
  1137. package/dist/browser/modules/csv/csv-number.js +0 -20
  1138. package/dist/browser/modules/csv/csv-stream.d.ts +0 -121
  1139. package/dist/browser/modules/csv/csv-stream.js +0 -703
  1140. package/dist/browser/modules/csv/csv.browser.d.ts +0 -60
  1141. package/dist/browser/modules/csv/csv.browser.js +0 -265
  1142. package/dist/browser/modules/csv/csv.d.ts +0 -14
  1143. package/dist/browser/modules/csv/csv.js +0 -29
  1144. package/dist/browser/modules/stream/base-transform.d.ts +0 -71
  1145. package/dist/browser/modules/stream/base-transform.js +0 -174
  1146. package/dist/browser/modules/stream/shared.d.ts +0 -54
  1147. package/dist/browser/modules/stream/shared.js +0 -159
  1148. package/dist/browser/modules/stream/streams.browser.d.ts +0 -918
  1149. package/dist/browser/modules/stream/streams.browser.js +0 -3420
  1150. package/dist/browser/modules/stream/streams.d.ts +0 -266
  1151. package/dist/browser/modules/stream/streams.js +0 -1012
  1152. package/dist/cjs/modules/archive/defaults.js +0 -9
  1153. package/dist/cjs/modules/archive/utils/binary.js +0 -75
  1154. package/dist/cjs/modules/archive/utils/compressibility.js +0 -60
  1155. package/dist/cjs/modules/archive/utils/parse-buffer.js +0 -57
  1156. package/dist/cjs/modules/archive/utils/text.js +0 -39
  1157. package/dist/cjs/modules/archive/utils/zip-extra-fields.js +0 -87
  1158. package/dist/cjs/modules/csv/csv-core.js +0 -733
  1159. package/dist/cjs/modules/csv/csv-number.js +0 -24
  1160. package/dist/cjs/modules/csv/csv-stream.js +0 -711
  1161. package/dist/cjs/modules/csv/csv.browser.js +0 -276
  1162. package/dist/cjs/modules/csv/csv.js +0 -37
  1163. package/dist/cjs/modules/stream/base-transform.js +0 -178
  1164. package/dist/cjs/modules/stream/shared.js +0 -171
  1165. package/dist/cjs/modules/stream/streams.browser.js +0 -3466
  1166. package/dist/cjs/modules/stream/streams.js +0 -1058
  1167. package/dist/esm/modules/archive/utils/binary.js +0 -69
  1168. package/dist/esm/modules/archive/utils/compressibility.js +0 -57
  1169. package/dist/esm/modules/archive/utils/parse-buffer.js +0 -53
  1170. package/dist/esm/modules/archive/utils/text.js +0 -33
  1171. package/dist/esm/modules/archive/utils/zip-extra-fields.js +0 -84
  1172. package/dist/esm/modules/csv/csv-core.js +0 -726
  1173. package/dist/esm/modules/csv/csv-number.js +0 -20
  1174. package/dist/esm/modules/csv/csv-stream.js +0 -703
  1175. package/dist/esm/modules/csv/csv.browser.js +0 -265
  1176. package/dist/esm/modules/csv/csv.js +0 -29
  1177. package/dist/esm/modules/stream/base-transform.js +0 -174
  1178. package/dist/esm/modules/stream/shared.js +0 -159
  1179. package/dist/esm/modules/stream/streams.browser.js +0 -3420
  1180. package/dist/esm/modules/stream/streams.js +0 -1012
  1181. package/dist/types/modules/archive/defaults.d.ts +0 -5
  1182. package/dist/types/modules/archive/utils/binary.d.ts +0 -24
  1183. package/dist/types/modules/archive/utils/bytes.d.ts +0 -7
  1184. package/dist/types/modules/archive/utils/compressibility.d.ts +0 -10
  1185. package/dist/types/modules/archive/utils/parse-buffer.d.ts +0 -18
  1186. package/dist/types/modules/archive/utils/text.d.ts +0 -20
  1187. package/dist/types/modules/archive/utils/zip-extra-fields.d.ts +0 -19
  1188. package/dist/types/modules/csv/csv-core.d.ts +0 -206
  1189. package/dist/types/modules/csv/csv-number.d.ts +0 -3
  1190. package/dist/types/modules/csv/csv-stream.d.ts +0 -121
  1191. package/dist/types/modules/csv/csv.browser.d.ts +0 -60
  1192. package/dist/types/modules/csv/csv.d.ts +0 -14
  1193. package/dist/types/modules/stream/base-transform.d.ts +0 -71
  1194. package/dist/types/modules/stream/shared.d.ts +0 -54
  1195. package/dist/types/modules/stream/streams.browser.d.ts +0 -918
  1196. package/dist/types/modules/stream/streams.d.ts +0 -266
  1197. /package/dist/browser/modules/archive/{utils → unzip}/pattern-scanner.d.ts +0 -0
  1198. /package/dist/browser/modules/archive/{utils → unzip}/pattern-scanner.js +0 -0
  1199. /package/dist/cjs/modules/archive/{utils → unzip}/pattern-scanner.js +0 -0
  1200. /package/dist/esm/modules/archive/{utils → unzip}/pattern-scanner.js +0 -0
  1201. /package/dist/types/modules/archive/{utils → unzip}/pattern-scanner.d.ts +0 -0
@@ -0,0 +1,966 @@
1
+ /**
2
+ * Browser Stream - Duplex
3
+ */
4
+ import { StreamTypeError } from "../errors.js";
5
+ import { EventEmitter } from "../../../utils/event-emitter.js";
6
+ import { createAbortError } from "../../../utils/errors.js";
7
+ import { parseEndArgs } from "../common/end-args.js";
8
+ import { Readable } from "./readable.js";
9
+ import { Writable } from "./writable.js";
10
+ import { addEmitterListener, createListenerRegistry } from "./helpers.js";
11
+ import { deferTask, inDeferredContext } from "./microtask-context.js";
12
+ // =============================================================================
13
+ // Duplex Stream
14
+ // =============================================================================
15
+ /**
16
+ * A duplex stream that combines readable and writable
17
+ */
18
+ export class Duplex extends EventEmitter {
19
+ /**
20
+ * Allow duck-typed instanceof checks.
21
+ * Browser Duplex composes Readable + Writable, so we use Symbol.hasInstance
22
+ * to check for key Duplex-like methods/properties (both readable and writable).
23
+ * This makes `transform instanceof Duplex` return true.
24
+ */
25
+ static [Symbol.hasInstance](instance) {
26
+ if (instance == null || typeof instance !== "object") {
27
+ return false;
28
+ }
29
+ // Fast path: actual Duplex prototype
30
+ if (Object.prototype.isPrototypeOf.call(Duplex.prototype, instance)) {
31
+ return true;
32
+ }
33
+ // Duck-type: must have both Readable and Writable characteristics + stream brand
34
+ return (instance.__excelts_stream === true &&
35
+ typeof instance.read === "function" &&
36
+ typeof instance.pipe === "function" &&
37
+ typeof instance.write === "function" &&
38
+ typeof instance.end === "function" &&
39
+ typeof instance.on === "function" &&
40
+ "readableFlowing" in instance &&
41
+ "writableFinished" in instance);
42
+ }
43
+ /**
44
+ * Check if a stream has been disturbed (data read or piped).
45
+ * Delegates to Readable.isDisturbed, checking internal _readable for Duplex/Transform.
46
+ */
47
+ static isDisturbed(stream) {
48
+ if (stream && stream._readable instanceof Readable) {
49
+ return Readable.isDisturbed(stream._readable);
50
+ }
51
+ return Readable.isDisturbed(stream);
52
+ }
53
+ /**
54
+ * Create a Duplex stream from various sources
55
+ */
56
+ static from(source) {
57
+ // If it's already a Duplex, return as-is
58
+ if (source instanceof Duplex) {
59
+ return source;
60
+ }
61
+ const forwardReadableToDuplex = (readable, duplex) => {
62
+ const sink = new Writable({
63
+ objectMode: duplex.readableObjectMode,
64
+ write(chunk, _encoding, callback) {
65
+ duplex.push(chunk);
66
+ callback();
67
+ },
68
+ final(callback) {
69
+ duplex.push(null);
70
+ callback();
71
+ }
72
+ });
73
+ const onError = (err) => {
74
+ duplex.emit("error", err);
75
+ };
76
+ const cleanupError = addEmitterListener(readable, "error", onError);
77
+ addEmitterListener(readable, "end", cleanupError, { once: true });
78
+ addEmitterListener(readable, "close", cleanupError, { once: true });
79
+ addEmitterListener(sink, "finish", cleanupError, { once: true });
80
+ readable.pipe(sink);
81
+ };
82
+ // Promise source — resolve and recursively call from()
83
+ if (source instanceof Promise) {
84
+ const duplex = new Duplex({ objectMode: true });
85
+ source
86
+ .then(value => {
87
+ const inner = Duplex.from(value);
88
+ forwardReadableToDuplex(inner, duplex);
89
+ })
90
+ .catch(err => {
91
+ duplex.destroy(err instanceof Error ? err : new Error(String(err)));
92
+ });
93
+ return duplex;
94
+ }
95
+ // String source — wrap as a single-chunk readable
96
+ if (typeof source === "string") {
97
+ const readable = Readable.from([source]);
98
+ const duplex = new Duplex({ objectMode: true });
99
+ forwardReadableToDuplex(readable, duplex);
100
+ return duplex;
101
+ }
102
+ // Blob source — convert to ReadableStream then to Readable
103
+ if (typeof Blob !== "undefined" && source instanceof Blob) {
104
+ const readable = Readable.fromWeb(source.stream());
105
+ const duplex = new Duplex();
106
+ forwardReadableToDuplex(readable, duplex);
107
+ return duplex;
108
+ }
109
+ // If it has readable and/or writable properties
110
+ if (typeof source === "object" &&
111
+ source !== null &&
112
+ "readable" in source &&
113
+ "writable" in source) {
114
+ const pair = source;
115
+ // Create one duplex that can bridge both sides.
116
+ // (Previous behavior returned a new writable-only Duplex and dropped the readable side.)
117
+ const duplex = new Duplex({
118
+ readableObjectMode: pair.readable?.readableObjectMode,
119
+ writableObjectMode: pair.writable?.writableObjectMode,
120
+ write: pair.writable
121
+ ? (chunk, encoding, callback) => {
122
+ pair.writable.write(chunk, encoding, callback);
123
+ }
124
+ : undefined,
125
+ final: pair.writable
126
+ ? callback => {
127
+ pair.writable.end(callback);
128
+ }
129
+ : undefined,
130
+ destroy: (error, callback) => {
131
+ // Propagate destroy to the original source streams so they are cleaned
132
+ // up when the wrapping Duplex is destroyed. Node.js does this too.
133
+ if (pair.readable && !pair.readable.destroyed) {
134
+ pair.readable.destroy(error ?? undefined);
135
+ }
136
+ if (pair.writable && !pair.writable.destroyed) {
137
+ pair.writable.destroy(error ?? undefined);
138
+ }
139
+ callback(error);
140
+ }
141
+ });
142
+ if (pair.readable) {
143
+ forwardReadableToDuplex(pair.readable, duplex);
144
+ }
145
+ return duplex;
146
+ }
147
+ // Web ReadableStream — wrap as readable-only Duplex (matches Node.js Duplex.from(ReadableStream))
148
+ if (typeof source === "object" &&
149
+ source !== null &&
150
+ typeof source.getReader === "function" &&
151
+ typeof source.cancel === "function") {
152
+ const readable = Readable.fromWeb(source);
153
+ const duplex = new Duplex({
154
+ objectMode: readable.readableObjectMode
155
+ });
156
+ forwardReadableToDuplex(readable, duplex);
157
+ return duplex;
158
+ }
159
+ // Web WritableStream — wrap as writable-only Duplex (matches Node.js Duplex.from(WritableStream))
160
+ if (typeof source === "object" &&
161
+ source !== null &&
162
+ typeof source.getWriter === "function" &&
163
+ typeof source.close === "function") {
164
+ const writable = Writable.fromWeb(source);
165
+ return new Duplex({
166
+ objectMode: writable.writableObjectMode,
167
+ write(chunk, encoding, callback) {
168
+ writable.write(chunk, encoding, callback);
169
+ },
170
+ final(callback) {
171
+ writable.end(callback);
172
+ },
173
+ destroy(error, callback) {
174
+ if (!writable.destroyed) {
175
+ writable.destroy(error ?? undefined);
176
+ }
177
+ callback(error);
178
+ }
179
+ });
180
+ }
181
+ // If it's an iterable
182
+ if (typeof source === "object" &&
183
+ source !== null &&
184
+ (Symbol.asyncIterator in source || Symbol.iterator in source)) {
185
+ const readable = Readable.from(source);
186
+ const duplex = new Duplex({
187
+ objectMode: readable.readableObjectMode
188
+ });
189
+ forwardReadableToDuplex(readable, duplex);
190
+ return duplex;
191
+ }
192
+ // If it's a Readable
193
+ if (source instanceof Readable) {
194
+ const duplex = new Duplex({
195
+ objectMode: source.readableObjectMode
196
+ });
197
+ forwardReadableToDuplex(source, duplex);
198
+ return duplex;
199
+ }
200
+ // If it's a Writable
201
+ if (source instanceof Writable) {
202
+ return new Duplex({
203
+ objectMode: source.writableObjectMode,
204
+ write(chunk, encoding, callback) {
205
+ source.write(chunk, encoding, callback);
206
+ },
207
+ final(callback) {
208
+ source.end(callback);
209
+ }
210
+ });
211
+ }
212
+ throw new StreamTypeError("Duplex-compatible source", typeof source);
213
+ }
214
+ /**
215
+ * Create a Duplex from a Web ReadableWritablePair
216
+ */
217
+ static fromWeb(pair, options) {
218
+ const duplex = new Duplex(options);
219
+ const newReadable = new Readable({
220
+ stream: pair.readable,
221
+ objectMode: duplex.readableObjectMode
222
+ });
223
+ const newWritable = new Writable({
224
+ stream: pair.writable,
225
+ objectMode: duplex.writableObjectMode
226
+ });
227
+ if (duplex._sideForwardingCleanup) {
228
+ duplex._sideForwardingCleanup();
229
+ duplex._sideForwardingCleanup = null;
230
+ }
231
+ duplex._readable = newReadable;
232
+ duplex._writable = newWritable;
233
+ // Re-wire event forwarding (data forwarding remains lazy via Duplex.on)
234
+ duplex._setupSideForwarding();
235
+ return duplex;
236
+ }
237
+ /**
238
+ * Convert a Node.js Duplex to Web ReadableWritablePair
239
+ */
240
+ static toWeb(duplex) {
241
+ return {
242
+ readable: Readable.toWeb(duplex._readable),
243
+ writable: Writable.toWeb(duplex._writable)
244
+ };
245
+ }
246
+ /**
247
+ * Detect a subclass-defined implementation hook (e.g. _read/_write/_writev/_final).
248
+ *
249
+ * Node.js allows implementing Duplex by subclassing and defining _read/_write on the
250
+ * subclass prototype. Since the browser Duplex composes internal Readable/Writable
251
+ * instances, we must explicitly forward these prototype hooks.
252
+ */
253
+ _getSubclassHook(name) {
254
+ let proto = Object.getPrototypeOf(this);
255
+ while (proto && proto !== Duplex.prototype && proto !== Object.prototype) {
256
+ if (Object.prototype.hasOwnProperty.call(proto, name)) {
257
+ const fn = this[name];
258
+ if (typeof fn === "function") {
259
+ return fn.bind(this);
260
+ }
261
+ return undefined;
262
+ }
263
+ proto = Object.getPrototypeOf(proto);
264
+ }
265
+ return undefined;
266
+ }
267
+ constructor(options) {
268
+ super();
269
+ // Track if we've already set up data forwarding
270
+ this._dataForwardingSetup = false;
271
+ this._destroyed = false;
272
+ this._errored = null;
273
+ this._closed = false;
274
+ this._sideForwardingCleanup = null;
275
+ this._constructed = true;
276
+ this.__excelts_stream = true;
277
+ this.allowHalfOpen = options?.allowHalfOpen ?? true;
278
+ this._emitClose = options?.emitClose ?? true;
279
+ this._autoDestroy = options?.autoDestroy ?? true;
280
+ // Support shorthand objectMode option
281
+ const objectMode = options?.objectMode ?? false;
282
+ const readableObjMode = options?.readableObjectMode ?? objectMode;
283
+ const writableObjMode = options?.writableObjectMode ?? objectMode;
284
+ // HWM: if highWaterMark is explicitly provided it overrides per-side (matching Node)
285
+ const hasGeneralHwm = options != null && Object.prototype.hasOwnProperty.call(options, "highWaterMark");
286
+ const readableHwm = hasGeneralHwm ? options.highWaterMark : options?.readableHighWaterMark;
287
+ const writableHwm = hasGeneralHwm ? options.highWaterMark : options?.writableHighWaterMark;
288
+ // Store user-provided destroy function
289
+ if (options?.destroy) {
290
+ this._destroy = options.destroy.bind(this);
291
+ }
292
+ // Store user-provided construct function
293
+ if (options?.construct) {
294
+ this._constructFunc = options.construct.bind(this);
295
+ }
296
+ // When Duplex has a construct hook, propagate delay to child streams
297
+ // so that reads/writes are queued until the Duplex-level construct fires.
298
+ let readableConstructCb;
299
+ let writableConstructCb;
300
+ const hasConstruct = this._hasConstructHook();
301
+ const readHook = options?.read ? options.read.bind(this) : this._getSubclassHook("_read");
302
+ // Prefer constructor options over subclass hooks (matches Node's behavior where
303
+ // options.{read,write,final,writev} override prototype hooks).
304
+ const writeHook = options?.write
305
+ ? options.write.bind(this)
306
+ : this._getSubclassHook("_write");
307
+ const writevHook = options?.writev
308
+ ? options.writev.bind(this)
309
+ : this._getSubclassHook("_writev");
310
+ const finalHook = options?.final
311
+ ? options.final.bind(this)
312
+ : this._getSubclassHook("_final");
313
+ this._readable = new Readable({
314
+ highWaterMark: readableHwm,
315
+ objectMode: readableObjMode,
316
+ read: readHook,
317
+ encoding: options?.encoding,
318
+ // Suppress child-level close/error — Duplex itself is the authority
319
+ emitClose: false,
320
+ autoDestroy: false,
321
+ // Propagate construct delay to child readable
322
+ construct: hasConstruct
323
+ ? cb => {
324
+ readableConstructCb = cb;
325
+ }
326
+ : undefined
327
+ });
328
+ this._writable = new Writable({
329
+ highWaterMark: writableHwm,
330
+ objectMode: writableObjMode,
331
+ write: writeHook,
332
+ writev: writevHook,
333
+ final: finalHook,
334
+ decodeStrings: options?.decodeStrings,
335
+ defaultEncoding: options?.defaultEncoding,
336
+ // Suppress child-level close/error — Duplex itself is the authority
337
+ emitClose: false,
338
+ autoDestroy: false,
339
+ // Propagate construct delay to child writable
340
+ construct: hasConstruct
341
+ ? cb => {
342
+ writableConstructCb = cb;
343
+ }
344
+ : undefined
345
+ });
346
+ // Prevent unhandled error throws on child streams.
347
+ // Errors are forwarded to the Duplex via _setupSideForwarding; these
348
+ // noop listeners act as safety nets after forwarding cleanup.
349
+ const noop = () => { };
350
+ this._readable.on("error", noop);
351
+ this._writable.on("error", noop);
352
+ this._setupSideForwarding();
353
+ // signal option — destroy the Duplex when signal aborts (matching Node)
354
+ if (options?.signal) {
355
+ this._setupAbortSignal(options.signal);
356
+ }
357
+ // R5-1: _construct hook — if provided, delay reads/writes until constructed
358
+ if (hasConstruct) {
359
+ this._constructed = false;
360
+ deferTask(() => {
361
+ const fn = this._constructFunc ?? this._construct.bind(this);
362
+ fn(err => {
363
+ if (err) {
364
+ readableConstructCb?.(err);
365
+ writableConstructCb?.(err);
366
+ this.destroy(err);
367
+ return;
368
+ }
369
+ this._constructed = true;
370
+ // Unblock child streams by firing their construct callbacks
371
+ readableConstructCb?.();
372
+ writableConstructCb?.();
373
+ });
374
+ });
375
+ }
376
+ }
377
+ _setupAbortSignal(signal) {
378
+ if (signal.aborted) {
379
+ this.destroy(createAbortError(signal.reason));
380
+ return;
381
+ }
382
+ const onAbort = () => {
383
+ this.destroy(createAbortError(signal.reason));
384
+ };
385
+ const cleanup = () => {
386
+ signal.removeEventListener("abort", onAbort);
387
+ };
388
+ signal.addEventListener("abort", onAbort, { once: true });
389
+ this.once("close", cleanup);
390
+ }
391
+ _setupSideForwarding() {
392
+ if (this._sideForwardingCleanup) {
393
+ this._sideForwardingCleanup();
394
+ this._sideForwardingCleanup = null;
395
+ }
396
+ // Ensure the pipe source identity is always the outer Duplex,
397
+ // including after fromWeb() replaces the internal _readable.
398
+ this._readable._pipes?.setSource(this);
399
+ const registry = createListenerRegistry();
400
+ // Deduplicate error forwarding: when destroy(err) tears down both sides,
401
+ // both _readable and _writable emit "error". Node.js Duplex only emits
402
+ // one "error" event, so we guard against duplicate forwarding.
403
+ let errorForwarded = false;
404
+ const forwardError = (err) => {
405
+ if (errorForwarded) {
406
+ return;
407
+ }
408
+ errorForwarded = true;
409
+ this.emit("error", err);
410
+ };
411
+ // Auto-destroy: when both sides finish, destroy the Duplex (matching Node.js).
412
+ let readableEnded = false;
413
+ let writableFinished = false;
414
+ const maybeAutoDestroy = () => {
415
+ if (this._autoDestroy && readableEnded && writableFinished && !this._destroyed) {
416
+ this.destroy();
417
+ }
418
+ };
419
+ // Forward non-data events (data forwarding is lazy to avoid premature flowing)
420
+ registry.once(this._readable, "end", () => {
421
+ this.emit("end");
422
+ readableEnded = true;
423
+ if (!this.allowHalfOpen) {
424
+ this._writable.end();
425
+ }
426
+ maybeAutoDestroy();
427
+ });
428
+ registry.add(this._readable, "error", forwardError);
429
+ // Use EventEmitter.prototype.on directly to register "readable" forwarding,
430
+ // bypassing Readable's on() override which sets readableFlowing = false.
431
+ const readableForwarder = () => {
432
+ this.emit("readable");
433
+ };
434
+ EventEmitter.prototype.on.call(this._readable, "readable", readableForwarder);
435
+ registry.add(this._readable, "pause", () => this.emit("pause"));
436
+ registry.add(this._readable, "resume", () => this.emit("resume"));
437
+ registry.add(this._writable, "error", forwardError);
438
+ registry.once(this._writable, "prefinish", () => this.emit("prefinish"));
439
+ registry.once(this._writable, "finish", () => {
440
+ this.emit("finish");
441
+ writableFinished = true;
442
+ maybeAutoDestroy();
443
+ });
444
+ registry.add(this._writable, "drain", () => this.emit("drain"));
445
+ // Forward "pipe"/"unpipe" from the internal writable so that
446
+ // source.pipe(duplex) triggers "pipe" on the Duplex itself.
447
+ registry.add(this._writable, "pipe", source => this.emit("pipe", source));
448
+ registry.add(this._writable, "unpipe", source => this.emit("unpipe", source));
449
+ // Node.js: when allowHalfOpen is false and the writable side finishes,
450
+ // gracefully end the readable side with push(null) — NOT destroy().
451
+ // The check is dynamic (inside the handler) so runtime changes to
452
+ // allowHalfOpen are respected, matching Node.js behaviour.
453
+ registry.once(this._writable, "finish", () => {
454
+ if (!this.allowHalfOpen && !this._readable.readableEnded) {
455
+ this._readable.push(null);
456
+ }
457
+ });
458
+ // Node.js parity: when the internal _readable is destroyed independently
459
+ // (e.g. by a higher-order method like map/filter/forEach that uses the
460
+ // async iterator and calls _readable.destroy() on error or early exit),
461
+ // propagate the destruction to the outer Duplex. Without this, only the
462
+ // readable side would be torn down, leaving the writable side open — a
463
+ // resource leak that doesn't happen in Node.js where Duplex IS the
464
+ // Readable (same object, so destroy() hits both sides).
465
+ const origReadableDestroy = this._readable.destroy.bind(this._readable);
466
+ this._readable.destroy = (err) => {
467
+ const result = origReadableDestroy(err);
468
+ if (!this._destroyed) {
469
+ this.destroy(err);
470
+ }
471
+ return result;
472
+ };
473
+ this._sideForwardingCleanup = () => {
474
+ registry.cleanup();
475
+ this._readable.off("readable", readableForwarder);
476
+ // Restore original destroy to avoid leaking the closure after cleanup.
477
+ this._readable.destroy = origReadableDestroy;
478
+ };
479
+ }
480
+ /**
481
+ * Override on() to set up data forwarding lazily
482
+ */
483
+ on(event, listener) {
484
+ // Register the listener FIRST so that when _readable.on("data") triggers
485
+ // resume() and synchronously drains buffered data, the forwarding handler
486
+ // can find the listener already in place on this Duplex.
487
+ super.on(event, listener);
488
+ // Set up data forwarding when first external data listener is added
489
+ if (event === "data" && !this._dataForwardingSetup) {
490
+ this._dataForwardingSetup = true;
491
+ this._readable.on("data", chunk => this.emit("data", chunk));
492
+ }
493
+ else if (event === "readable") {
494
+ // Node.js: adding a 'readable' listener sets readableFlowing to false
495
+ this._readable._setReadableFlowing(false);
496
+ }
497
+ return this;
498
+ }
499
+ /**
500
+ * Push data to readable side
501
+ */
502
+ push(chunk, encoding) {
503
+ return this._readable.push(chunk, encoding);
504
+ }
505
+ /**
506
+ * Put a chunk back at the front of the buffer (readable side)
507
+ */
508
+ unshift(chunk, encoding) {
509
+ this._readable.unshift(chunk, encoding);
510
+ }
511
+ /**
512
+ * Read from readable side
513
+ */
514
+ read(size) {
515
+ return this._readable.read(size);
516
+ }
517
+ write(chunk, encodingOrCallback, callback) {
518
+ const encoding = typeof encodingOrCallback === "string" ? encodingOrCallback : undefined;
519
+ const cb = typeof encodingOrCallback === "function" ? encodingOrCallback : callback;
520
+ return encoding !== undefined
521
+ ? this._writable.write(chunk, encoding, cb)
522
+ : this._writable.write(chunk, cb);
523
+ }
524
+ end(chunkOrCallback, encodingOrCallback, callback) {
525
+ const { chunk, encoding, cb } = parseEndArgs(chunkOrCallback, encodingOrCallback, callback);
526
+ // Repeated end() protection (matches Node.js Writable.end() behavior)
527
+ if (this._writable.writableEnded) {
528
+ // If a chunk was provided, this is a write-after-end error.
529
+ if (chunk !== undefined) {
530
+ this.write(chunk, encoding, err => {
531
+ cb?.(err ?? null);
532
+ });
533
+ return this;
534
+ }
535
+ // If we've already finished, callback receives ERR_STREAM_ALREADY_FINISHED.
536
+ if (this.writableFinished && cb) {
537
+ const err = new Error("Cannot call end after a stream was finished");
538
+ err.code = "ERR_STREAM_ALREADY_FINISHED";
539
+ deferTask(() => cb(err));
540
+ }
541
+ else if (cb) {
542
+ // Redundant end() is a no-op; callback called with no error.
543
+ deferTask(() => cb(null));
544
+ }
545
+ return this;
546
+ }
547
+ if (cb) {
548
+ // Node.js fires the end() callback on 'finish', but also on 'close'
549
+ // (which is emitted after destroy). This ensures the callback fires
550
+ // even when the stream is destroyed before finishing.
551
+ let called = false;
552
+ const onceCb = () => {
553
+ if (!called) {
554
+ called = true;
555
+ cb();
556
+ }
557
+ };
558
+ this.once("finish", onceCb);
559
+ this.once("close", onceCb);
560
+ }
561
+ if (chunk !== undefined) {
562
+ // Propagate write errors through destroy (matching Node.js)
563
+ const onWriteError = (err) => {
564
+ if (err && !this.destroyed) {
565
+ this.destroy(err);
566
+ }
567
+ };
568
+ if (encoding !== undefined) {
569
+ this._writable.write(chunk, encoding, onWriteError);
570
+ }
571
+ else {
572
+ this._writable.write(chunk, onWriteError);
573
+ }
574
+ }
575
+ this._writable.end();
576
+ return this;
577
+ }
578
+ /**
579
+ * Cork the writable side
580
+ */
581
+ cork() {
582
+ this._writable.cork();
583
+ }
584
+ /**
585
+ * Uncork the writable side
586
+ */
587
+ uncork() {
588
+ this._writable.uncork();
589
+ }
590
+ /**
591
+ * Set encoding for readable side
592
+ */
593
+ setEncoding(encoding) {
594
+ this._readable.setEncoding(encoding);
595
+ return this;
596
+ }
597
+ /**
598
+ * Set default encoding for writable side
599
+ */
600
+ setDefaultEncoding(encoding) {
601
+ this._writable.setDefaultEncoding(encoding);
602
+ return this;
603
+ }
604
+ /**
605
+ * Pipe readable side to destination.
606
+ * Accepts any writable-like object (duck-typed, matching Node.js behavior).
607
+ */
608
+ pipe(destination, options) {
609
+ this._readable.pipe(destination, options);
610
+ return destination;
611
+ }
612
+ /**
613
+ * Unpipe from destination
614
+ */
615
+ unpipe(destination) {
616
+ this._readable.unpipe(destination);
617
+ return this;
618
+ }
619
+ /**
620
+ * Pause the readable side
621
+ */
622
+ pause() {
623
+ this._readable.pause();
624
+ return this;
625
+ }
626
+ /**
627
+ * Resume the readable side
628
+ */
629
+ resume() {
630
+ this._readable.resume();
631
+ return this;
632
+ }
633
+ /**
634
+ * Check if paused
635
+ */
636
+ isPaused() {
637
+ return this._readable.isPaused();
638
+ }
639
+ /**
640
+ * Destroy both sides
641
+ */
642
+ destroy(error) {
643
+ if (this._destroyed) {
644
+ return this;
645
+ }
646
+ this._destroyed = true;
647
+ if (this._sideForwardingCleanup) {
648
+ this._sideForwardingCleanup();
649
+ this._sideForwardingCleanup = null;
650
+ }
651
+ const afterDestroy = (finalError) => {
652
+ // Node.js: _destroy's callback determines whether an error is emitted.
653
+ // cb(null)/cb()/cb(undefined) all suppress the original error.
654
+ // Only cb(new Error(...)) replaces and emits the error.
655
+ const err = finalError || null;
656
+ if (err) {
657
+ this._errored = err;
658
+ }
659
+ this._closed = true;
660
+ // Destroy internal streams without their own error/close emission — the
661
+ // Duplex itself is the authority for those events.
662
+ this._readable.destroy();
663
+ this._writable.destroy();
664
+ const doEmit = () => {
665
+ if (err) {
666
+ this.emit("error", err);
667
+ }
668
+ if (this._emitClose) {
669
+ this.emit("close");
670
+ }
671
+ };
672
+ if (inDeferredContext() &&
673
+ !this._hasDestroyHook() &&
674
+ this.readableEnded &&
675
+ this.writableFinished) {
676
+ doEmit();
677
+ }
678
+ else {
679
+ deferTask(doEmit);
680
+ }
681
+ };
682
+ if (this._hasDestroyHook()) {
683
+ try {
684
+ this._destroy(error ?? null, afterDestroy);
685
+ }
686
+ catch (err) {
687
+ afterDestroy(err instanceof Error ? err : new Error(String(err)));
688
+ }
689
+ }
690
+ else {
691
+ afterDestroy(error);
692
+ }
693
+ return this;
694
+ }
695
+ /**
696
+ * Override in subclass to customise destroy behaviour.
697
+ * Call `callback(err)` when cleanup is complete.
698
+ */
699
+ _destroy(error, callback) {
700
+ callback(error);
701
+ }
702
+ /**
703
+ * Reverse the effects of destroy() so the stream can potentially be reused.
704
+ * Matches Node.js _undestroy() which resets destroyed and closed flags.
705
+ */
706
+ _undestroy() {
707
+ this._readable._undestroy();
708
+ this._writable._undestroy();
709
+ this._destroyed = false;
710
+ this._closed = false;
711
+ this._errored = null;
712
+ this._setupSideForwarding();
713
+ }
714
+ /** Check if _destroy has been overridden by a subclass or constructor option. */
715
+ _hasDestroyHook() {
716
+ return (Object.prototype.hasOwnProperty.call(this, "_destroy") ||
717
+ Object.getPrototypeOf(this)._destroy !== Duplex.prototype._destroy);
718
+ }
719
+ /**
720
+ * Check if a subclass defines _construct on its own prototype.
721
+ * Node.js does NOT have _construct on any stream prototype — it only exists
722
+ * when provided via constructor options or defined by a subclass.
723
+ */
724
+ _hasConstructHook() {
725
+ if (this._constructFunc) {
726
+ return true;
727
+ }
728
+ let proto = Object.getPrototypeOf(this);
729
+ while (proto && proto !== Duplex.prototype && proto !== Object.prototype) {
730
+ if (Object.prototype.hasOwnProperty.call(proto, "_construct")) {
731
+ return true;
732
+ }
733
+ proto = Object.getPrototypeOf(proto);
734
+ }
735
+ return false;
736
+ }
737
+ /**
738
+ * Synchronous dispose — destroys the stream.
739
+ * Matches Node.js Symbol.dispose support (v20+, experimental).
740
+ */
741
+ [Symbol.dispose]() {
742
+ if (!this._destroyed) {
743
+ this.destroy();
744
+ }
745
+ }
746
+ /**
747
+ * Async dispose support (using await).
748
+ * Destroys the stream and resolves after the 'close' event.
749
+ */
750
+ async [Symbol.asyncDispose]() {
751
+ // Match Node.js behavior:
752
+ // 1. If not yet destroyed, destroy the stream (always resolves)
753
+ // 2. If already destroyed by someone else, reject with "Premature close"
754
+ // unless the stream ended gracefully (writableFinished)
755
+ const selfInitiated = !this._destroyed;
756
+ if (selfInitiated) {
757
+ this.destroy();
758
+ }
759
+ return new Promise((resolve, reject) => {
760
+ const settle = () => {
761
+ if (selfInitiated || this.writableFinished) {
762
+ resolve();
763
+ }
764
+ else {
765
+ reject(new Error("Premature close"));
766
+ }
767
+ };
768
+ if (this._closed) {
769
+ settle();
770
+ }
771
+ else {
772
+ this.once("close", settle);
773
+ }
774
+ });
775
+ }
776
+ get readable() {
777
+ return this._readable.readable;
778
+ }
779
+ set readable(val) {
780
+ this._readable.readable = val;
781
+ }
782
+ get writable() {
783
+ return this._writable.writable;
784
+ }
785
+ set writable(val) {
786
+ this._writable.writable = val;
787
+ }
788
+ get readableEnded() {
789
+ return this._readable.readableEnded;
790
+ }
791
+ get writableEnded() {
792
+ return this._writable.writableEnded;
793
+ }
794
+ get writableFinished() {
795
+ return this._writable.writableFinished;
796
+ }
797
+ get readableLength() {
798
+ return this._readable.readableLength;
799
+ }
800
+ get writableLength() {
801
+ return this._writable.writableLength;
802
+ }
803
+ get readableHighWaterMark() {
804
+ return this._readable.readableHighWaterMark;
805
+ }
806
+ get writableHighWaterMark() {
807
+ return this._writable.writableHighWaterMark;
808
+ }
809
+ get destroyed() {
810
+ return this._destroyed;
811
+ }
812
+ set destroyed(val) {
813
+ this._destroyed = val;
814
+ // Propagate to internal streams so their state stays consistent with
815
+ // the Duplex — matches Node.js where Duplex/Readable/Writable share
816
+ // a single destroyed flag via the prototype chain.
817
+ this._readable.destroyed = val;
818
+ this._writable.destroyed = val;
819
+ }
820
+ get writableCorked() {
821
+ return this._writable.writableCorked;
822
+ }
823
+ get writableNeedDrain() {
824
+ return this._writable.writableNeedDrain;
825
+ }
826
+ get readableObjectMode() {
827
+ return this._readable.readableObjectMode;
828
+ }
829
+ get writableObjectMode() {
830
+ return this._writable.writableObjectMode;
831
+ }
832
+ get readableFlowing() {
833
+ return this._readable.readableFlowing;
834
+ }
835
+ get readableAborted() {
836
+ return this._readable.readableAborted;
837
+ }
838
+ get readableDidRead() {
839
+ return this._readable.readableDidRead;
840
+ }
841
+ get readableEncoding() {
842
+ return this._readable.readableEncoding;
843
+ }
844
+ get errored() {
845
+ return this._errored ?? this._readable.errored ?? this._writable.errored;
846
+ }
847
+ get closed() {
848
+ return this._closed;
849
+ }
850
+ get readableBuffer() {
851
+ return this._readable.readableBuffer;
852
+ }
853
+ get writableBuffer() {
854
+ return this._writable.writableBuffer;
855
+ }
856
+ /**
857
+ * Wrap a legacy stream
858
+ */
859
+ wrap(stream) {
860
+ this._readable.wrap(stream);
861
+ return this;
862
+ }
863
+ /**
864
+ * Create an async iterator with options.
865
+ *
866
+ * Node.js parity: when `destroyOnReturn` is true (the default) and the
867
+ * iterator exits early (break/return), the entire Duplex is destroyed —
868
+ * not just the readable side. The inner `_readable`'s iterator would only
869
+ * destroy `_readable` (which has `autoDestroy: false`, `emitClose: false`),
870
+ * leaving the writable side open. We wrap the iterator so that `return()`
871
+ * propagates destruction to the outer Duplex.
872
+ */
873
+ iterator(options) {
874
+ const destroyOnReturn = options?.destroyOnReturn !== false;
875
+ if (!destroyOnReturn) {
876
+ // No destruction needed on return — delegate directly.
877
+ return this._readable.iterator(options);
878
+ }
879
+ return this._wrapAsyncIterator(this._readable[Symbol.asyncIterator]());
880
+ }
881
+ /**
882
+ * Async iterator support.
883
+ * Wraps the inner readable's iterator so that early exit destroys the
884
+ * entire Duplex (both readable and writable sides), matching Node.js.
885
+ */
886
+ [Symbol.asyncIterator]() {
887
+ return this._wrapAsyncIterator(this._readable[Symbol.asyncIterator]());
888
+ }
889
+ /**
890
+ * Wrap an inner readable iterator so that return()/throw() destroy the
891
+ * outer Duplex, not just the inner readable.
892
+ */
893
+ _wrapAsyncIterator(inner) {
894
+ // oxlint-disable-next-line no-this-alias -- needed for object literal method closures
895
+ const duplex = this;
896
+ return {
897
+ next() {
898
+ return inner.next();
899
+ },
900
+ async return() {
901
+ const result = await inner.return?.();
902
+ if (!duplex.destroyed) {
903
+ duplex.destroy();
904
+ }
905
+ return result ?? { value: undefined, done: true };
906
+ },
907
+ async throw(err) {
908
+ const result = await inner.throw?.(err);
909
+ if (!duplex.destroyed) {
910
+ duplex.destroy(err instanceof Error ? err : undefined);
911
+ }
912
+ return result ?? { value: undefined, done: true };
913
+ },
914
+ [Symbol.asyncIterator]() {
915
+ return this;
916
+ }
917
+ };
918
+ }
919
+ // =============================================================================
920
+ // Functional / Higher-order Methods (forwarded to readable side)
921
+ // =============================================================================
922
+ map(fn, options) {
923
+ return this._readable.map(fn, options);
924
+ }
925
+ filter(fn, options) {
926
+ return this._readable.filter(fn, options);
927
+ }
928
+ async forEach(fn, options) {
929
+ return this._readable.forEach(fn, options);
930
+ }
931
+ async toArray(options) {
932
+ return this._readable.toArray(options);
933
+ }
934
+ async some(fn, options) {
935
+ return this._readable.some(fn, options);
936
+ }
937
+ async find(fn, options) {
938
+ return this._readable.find(fn, options);
939
+ }
940
+ async every(fn, options) {
941
+ return this._readable.every(fn, options);
942
+ }
943
+ flatMap(fn, options) {
944
+ return this._readable.flatMap(fn, options);
945
+ }
946
+ drop(limit, options) {
947
+ return this._readable.drop(limit, options);
948
+ }
949
+ take(limit, options) {
950
+ return this._readable.take(limit, options);
951
+ }
952
+ async reduce(fn, initial, options) {
953
+ if (arguments.length >= 2) {
954
+ return this._readable.reduce(fn, initial, options);
955
+ }
956
+ return this._readable.reduce(fn);
957
+ }
958
+ compose(stream, options) {
959
+ return this._readable.compose(stream, options);
960
+ }
961
+ }
962
+ // Node.js: `Duplex.prototype.addListener === Duplex.prototype.on` (same function).
963
+ // Duplex overrides `on` from EventEmitter, so we must re-alias `addListener`.
964
+ Duplex.prototype.addListener = Duplex.prototype.on;
965
+ // Node.js: Duplex.prototype._writev === null (copied from Writable).
966
+ Duplex.prototype._writev = null;