@cj-tech-master/excelts 1.6.2-canary.20251224015244.0b06ae9 → 1.6.3-canary.20251224124621.73c5d94

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 (376) hide show
  1. package/README.md +31 -18
  2. package/README_zh.md +31 -19
  3. package/dist/browser/excelts.esm.js +19115 -0
  4. package/dist/browser/excelts.esm.js.map +1 -0
  5. package/dist/browser/excelts.esm.min.js +127 -0
  6. package/dist/browser/excelts.iife.js +13576 -46968
  7. package/dist/browser/excelts.iife.js.map +1 -1
  8. package/dist/browser/excelts.iife.min.js +25 -105
  9. package/dist/cjs/csv/csv-core.js +701 -0
  10. package/dist/cjs/csv/csv-stream.js +646 -0
  11. package/dist/cjs/csv/csv.base.js +154 -0
  12. package/dist/cjs/csv/csv.browser.js +68 -0
  13. package/dist/cjs/csv/csv.js +226 -162
  14. package/dist/cjs/doc/anchor.js +2 -2
  15. package/dist/cjs/doc/cell.js +22 -22
  16. package/dist/cjs/doc/column.js +7 -7
  17. package/dist/cjs/doc/data-validations.js +3 -3
  18. package/dist/cjs/doc/defined-names.js +13 -13
  19. package/dist/cjs/doc/image.js +7 -7
  20. package/dist/cjs/doc/modelcontainer.js +2 -2
  21. package/dist/cjs/doc/note.js +2 -2
  22. package/dist/cjs/doc/pivot-table.js +5 -5
  23. package/dist/cjs/doc/range.js +11 -11
  24. package/dist/cjs/doc/row.js +16 -16
  25. package/dist/cjs/doc/table.js +5 -5
  26. package/dist/cjs/doc/workbook.base.js +211 -0
  27. package/dist/cjs/doc/workbook.browser.js +62 -0
  28. package/dist/cjs/doc/workbook.js +68 -179
  29. package/dist/cjs/doc/worksheet.js +41 -41
  30. package/dist/cjs/index.js +49 -32
  31. package/dist/cjs/stream/xlsx/hyperlink-reader.js +6 -6
  32. package/dist/cjs/stream/xlsx/sheet-comments-writer.js +12 -12
  33. package/dist/cjs/stream/xlsx/sheet-rels-writer.js +4 -4
  34. package/dist/cjs/stream/xlsx/workbook-reader.js +22 -22
  35. package/dist/cjs/stream/xlsx/workbook-writer.js +34 -34
  36. package/dist/cjs/stream/xlsx/worksheet-reader.js +17 -17
  37. package/dist/cjs/stream/xlsx/worksheet-writer.js +60 -60
  38. package/dist/cjs/utils/browser-buffer.js +75 -0
  39. package/dist/cjs/utils/cell-format.js +2 -2
  40. package/dist/cjs/utils/cell-matrix.js +5 -5
  41. package/dist/cjs/utils/encryptor.browser.js +240 -0
  42. package/dist/cjs/utils/parse-sax.js +2 -2
  43. package/dist/cjs/utils/shared-formula.js +5 -5
  44. package/dist/cjs/utils/sheet-utils.js +13 -13
  45. package/dist/cjs/utils/stream-buf.browser.js +355 -0
  46. package/dist/cjs/utils/stream-buf.js +5 -5
  47. package/dist/cjs/utils/unzip/extract.js +11 -11
  48. package/dist/cjs/utils/unzip/index.js +21 -21
  49. package/dist/cjs/utils/unzip/parse-extra-field.js +3 -3
  50. package/dist/cjs/utils/unzip/parse.js +16 -16
  51. package/dist/cjs/utils/unzip/zip-parser.js +3 -3
  52. package/dist/cjs/utils/utils.base.js +161 -0
  53. package/dist/cjs/utils/utils.browser.js +89 -0
  54. package/dist/cjs/utils/utils.js +46 -154
  55. package/dist/cjs/utils/xml-stream.js +3 -3
  56. package/dist/cjs/utils/zip/compress.base.js +85 -0
  57. package/dist/cjs/utils/zip/compress.browser.js +83 -0
  58. package/dist/cjs/utils/zip/compress.js +18 -198
  59. package/dist/cjs/utils/zip/crc32.browser.js +88 -0
  60. package/dist/cjs/utils/zip/index.js +17 -17
  61. package/dist/cjs/utils/zip/zip-builder.js +10 -10
  62. package/dist/cjs/utils/zip-stream.browser.js +135 -0
  63. package/dist/cjs/utils/zip-stream.js +4 -4
  64. package/dist/cjs/xlsx/xform/base-xform.js +4 -4
  65. package/dist/cjs/xlsx/xform/book/defined-name-xform.js +4 -4
  66. package/dist/cjs/xlsx/xform/book/sheet-xform.js +4 -4
  67. package/dist/cjs/xlsx/xform/book/workbook-calc-properties-xform.js +2 -2
  68. package/dist/cjs/xlsx/xform/book/workbook-pivot-cache-xform.js +2 -2
  69. package/dist/cjs/xlsx/xform/book/workbook-properties-xform.js +2 -2
  70. package/dist/cjs/xlsx/xform/book/workbook-view-xform.js +2 -2
  71. package/dist/cjs/xlsx/xform/book/workbook-xform.js +24 -24
  72. package/dist/cjs/xlsx/xform/comment/comment-xform.js +4 -4
  73. package/dist/cjs/xlsx/xform/comment/comments-xform.js +6 -6
  74. package/dist/cjs/xlsx/xform/comment/style/vml-position-xform.js +2 -2
  75. package/dist/cjs/xlsx/xform/comment/style/vml-protection-xform.js +2 -2
  76. package/dist/cjs/xlsx/xform/comment/vml-anchor-xform.js +2 -2
  77. package/dist/cjs/xlsx/xform/comment/vml-client-data-xform.js +10 -10
  78. package/dist/cjs/xlsx/xform/comment/vml-notes-xform.js +6 -6
  79. package/dist/cjs/xlsx/xform/comment/vml-shape-xform.js +6 -6
  80. package/dist/cjs/xlsx/xform/comment/vml-textbox-xform.js +2 -2
  81. package/dist/cjs/xlsx/xform/composite-xform.js +2 -2
  82. package/dist/cjs/xlsx/xform/core/app-heading-pairs-xform.js +2 -2
  83. package/dist/cjs/xlsx/xform/core/app-titles-of-parts-xform.js +2 -2
  84. package/dist/cjs/xlsx/xform/core/app-xform.js +11 -11
  85. package/dist/cjs/xlsx/xform/core/content-types-xform.js +4 -4
  86. package/dist/cjs/xlsx/xform/core/core-xform.js +23 -23
  87. package/dist/cjs/xlsx/xform/core/relationship-xform.js +2 -2
  88. package/dist/cjs/xlsx/xform/core/relationships-xform.js +6 -6
  89. package/dist/cjs/xlsx/xform/drawing/base-cell-anchor-xform.js +2 -2
  90. package/dist/cjs/xlsx/xform/drawing/blip-fill-xform.js +4 -4
  91. package/dist/cjs/xlsx/xform/drawing/blip-xform.js +2 -2
  92. package/dist/cjs/xlsx/xform/drawing/c-nv-pic-pr-xform.js +2 -2
  93. package/dist/cjs/xlsx/xform/drawing/c-nv-pr-xform.js +6 -6
  94. package/dist/cjs/xlsx/xform/drawing/cell-position-xform.js +7 -7
  95. package/dist/cjs/xlsx/xform/drawing/drawing-xform.js +10 -10
  96. package/dist/cjs/xlsx/xform/drawing/ext-lst-xform.js +2 -2
  97. package/dist/cjs/xlsx/xform/drawing/ext-xform.js +2 -2
  98. package/dist/cjs/xlsx/xform/drawing/hlink-click-xform.js +2 -2
  99. package/dist/cjs/xlsx/xform/drawing/nv-pic-pr-xform.js +6 -6
  100. package/dist/cjs/xlsx/xform/drawing/one-cell-anchor-xform.js +10 -10
  101. package/dist/cjs/xlsx/xform/drawing/pic-xform.js +9 -9
  102. package/dist/cjs/xlsx/xform/drawing/two-cell-anchor-xform.js +9 -9
  103. package/dist/cjs/xlsx/xform/list-xform.js +2 -2
  104. package/dist/cjs/xlsx/xform/pivot-table/cache-field-xform.js +5 -5
  105. package/dist/cjs/xlsx/xform/pivot-table/cache-field.js +3 -3
  106. package/dist/cjs/xlsx/xform/pivot-table/pivot-cache-definition-xform.js +10 -10
  107. package/dist/cjs/xlsx/xform/pivot-table/pivot-cache-records-xform.js +9 -9
  108. package/dist/cjs/xlsx/xform/pivot-table/pivot-table-xform.js +10 -11
  109. package/dist/cjs/xlsx/xform/sheet/auto-filter-xform.js +4 -4
  110. package/dist/cjs/xlsx/xform/sheet/cell-xform.js +65 -65
  111. package/dist/cjs/xlsx/xform/sheet/cf/cf-rule-xform.js +27 -27
  112. package/dist/cjs/xlsx/xform/sheet/cf/cfvo-xform.js +3 -3
  113. package/dist/cjs/xlsx/xform/sheet/cf/color-scale-xform.js +6 -6
  114. package/dist/cjs/xlsx/xform/sheet/cf/conditional-formatting-xform.js +6 -6
  115. package/dist/cjs/xlsx/xform/sheet/cf/conditional-formattings-xform.js +4 -4
  116. package/dist/cjs/xlsx/xform/sheet/cf/databar-xform.js +6 -6
  117. package/dist/cjs/xlsx/xform/sheet/cf/ext-lst-ref-xform.js +5 -5
  118. package/dist/cjs/xlsx/xform/sheet/cf/formula-xform.js +2 -2
  119. package/dist/cjs/xlsx/xform/sheet/cf/icon-set-xform.js +11 -11
  120. package/dist/cjs/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.js +3 -3
  121. package/dist/cjs/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js +11 -12
  122. package/dist/cjs/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.js +4 -4
  123. package/dist/cjs/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.js +8 -8
  124. package/dist/cjs/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.js +6 -6
  125. package/dist/cjs/xlsx/xform/sheet/cf-ext/databar-ext-xform.js +26 -26
  126. package/dist/cjs/xlsx/xform/sheet/cf-ext/f-ext-xform.js +2 -2
  127. package/dist/cjs/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.js +14 -14
  128. package/dist/cjs/xlsx/xform/sheet/cf-ext/sqref-ext-xform.js +2 -2
  129. package/dist/cjs/xlsx/xform/sheet/col-xform.js +6 -6
  130. package/dist/cjs/xlsx/xform/sheet/data-validations-xform.js +18 -18
  131. package/dist/cjs/xlsx/xform/sheet/dimension-xform.js +2 -2
  132. package/dist/cjs/xlsx/xform/sheet/drawing-xform.js +2 -2
  133. package/dist/cjs/xlsx/xform/sheet/ext-lst-xform.js +5 -5
  134. package/dist/cjs/xlsx/xform/sheet/header-footer-xform.js +2 -2
  135. package/dist/cjs/xlsx/xform/sheet/hyperlink-xform.js +2 -2
  136. package/dist/cjs/xlsx/xform/sheet/merge-cell-xform.js +2 -2
  137. package/dist/cjs/xlsx/xform/sheet/merges.js +8 -8
  138. package/dist/cjs/xlsx/xform/sheet/outline-properties-xform.js +2 -2
  139. package/dist/cjs/xlsx/xform/sheet/page-breaks-xform.js +2 -2
  140. package/dist/cjs/xlsx/xform/sheet/page-margins-xform.js +2 -2
  141. package/dist/cjs/xlsx/xform/sheet/page-setup-properties-xform.js +2 -2
  142. package/dist/cjs/xlsx/xform/sheet/page-setup-xform.js +2 -2
  143. package/dist/cjs/xlsx/xform/sheet/picture-xform.js +2 -2
  144. package/dist/cjs/xlsx/xform/sheet/print-options-xform.js +2 -2
  145. package/dist/cjs/xlsx/xform/sheet/row-breaks-xform.js +4 -4
  146. package/dist/cjs/xlsx/xform/sheet/row-xform.js +11 -11
  147. package/dist/cjs/xlsx/xform/sheet/sheet-format-properties-xform.js +2 -2
  148. package/dist/cjs/xlsx/xform/sheet/sheet-properties-xform.js +8 -8
  149. package/dist/cjs/xlsx/xform/sheet/sheet-protection-xform.js +2 -2
  150. package/dist/cjs/xlsx/xform/sheet/sheet-view-xform.js +4 -4
  151. package/dist/cjs/xlsx/xform/sheet/table-part-xform.js +2 -2
  152. package/dist/cjs/xlsx/xform/sheet/worksheet-xform.js +68 -68
  153. package/dist/cjs/xlsx/xform/simple/boolean-xform.js +2 -2
  154. package/dist/cjs/xlsx/xform/simple/date-xform.js +2 -2
  155. package/dist/cjs/xlsx/xform/simple/float-xform.js +2 -2
  156. package/dist/cjs/xlsx/xform/simple/integer-xform.js +2 -2
  157. package/dist/cjs/xlsx/xform/simple/string-xform.js +2 -2
  158. package/dist/cjs/xlsx/xform/static-xform.js +4 -4
  159. package/dist/cjs/xlsx/xform/strings/phonetic-text-xform.js +6 -6
  160. package/dist/cjs/xlsx/xform/strings/rich-text-xform.js +6 -6
  161. package/dist/cjs/xlsx/xform/strings/shared-string-xform.js +8 -8
  162. package/dist/cjs/xlsx/xform/strings/shared-strings-xform.js +6 -6
  163. package/dist/cjs/xlsx/xform/strings/text-xform.js +2 -2
  164. package/dist/cjs/xlsx/xform/style/alignment-xform.js +8 -8
  165. package/dist/cjs/xlsx/xform/style/border-xform.js +8 -8
  166. package/dist/cjs/xlsx/xform/style/color-xform.js +2 -2
  167. package/dist/cjs/xlsx/xform/style/dxf-xform.js +14 -14
  168. package/dist/cjs/xlsx/xform/style/fill-xform.js +9 -9
  169. package/dist/cjs/xlsx/xform/style/font-xform.js +22 -22
  170. package/dist/cjs/xlsx/xform/style/numfmt-xform.js +5 -5
  171. package/dist/cjs/xlsx/xform/style/protection-xform.js +2 -2
  172. package/dist/cjs/xlsx/xform/style/style-xform.js +6 -6
  173. package/dist/cjs/xlsx/xform/style/styles-xform.js +39 -39
  174. package/dist/cjs/xlsx/xform/style/underline-xform.js +2 -2
  175. package/dist/cjs/xlsx/xform/table/auto-filter-xform.js +4 -4
  176. package/dist/cjs/xlsx/xform/table/custom-filter-xform.js +2 -2
  177. package/dist/cjs/xlsx/xform/table/filter-column-xform.js +9 -9
  178. package/dist/cjs/xlsx/xform/table/filter-xform.js +2 -2
  179. package/dist/cjs/xlsx/xform/table/table-column-xform.js +2 -2
  180. package/dist/cjs/xlsx/xform/table/table-style-info-xform.js +2 -2
  181. package/dist/cjs/xlsx/xform/table/table-xform.js +12 -12
  182. package/dist/cjs/xlsx/xlsx.base.js +742 -0
  183. package/dist/cjs/xlsx/xlsx.browser.js +205 -0
  184. package/dist/cjs/xlsx/xlsx.js +91 -833
  185. package/dist/esm/csv/csv-core.js +694 -0
  186. package/dist/esm/csv/csv-stream.js +638 -0
  187. package/dist/esm/csv/csv.base.js +141 -0
  188. package/dist/esm/csv/csv.browser.js +65 -0
  189. package/dist/esm/csv/csv.js +189 -159
  190. package/dist/esm/doc/workbook.base.js +207 -0
  191. package/dist/esm/doc/workbook.browser.js +59 -0
  192. package/dist/esm/doc/workbook.js +64 -175
  193. package/dist/esm/index.browser.js +33 -1
  194. package/dist/esm/index.js +23 -8
  195. package/dist/esm/local.js +0 -1
  196. package/dist/esm/utils/browser-buffer.js +67 -0
  197. package/dist/esm/utils/encryptor.browser.js +237 -0
  198. package/dist/esm/utils/stream-buf.browser.js +352 -0
  199. package/dist/esm/utils/utils.base.js +142 -0
  200. package/dist/esm/utils/utils.browser.js +68 -0
  201. package/dist/esm/utils/utils.js +15 -123
  202. package/dist/esm/utils/zip/compress.base.js +80 -0
  203. package/dist/esm/utils/zip/compress.browser.js +76 -0
  204. package/dist/esm/utils/zip/compress.js +16 -164
  205. package/dist/esm/utils/zip/crc32.browser.js +82 -0
  206. package/dist/esm/utils/zip-stream.browser.js +132 -0
  207. package/dist/esm/xlsx/xform/pivot-table/pivot-table-xform.js +2 -3
  208. package/dist/esm/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js +2 -3
  209. package/dist/esm/xlsx/xlsx.base.js +739 -0
  210. package/dist/esm/xlsx/xlsx.browser.js +202 -0
  211. package/dist/esm/xlsx/xlsx.js +87 -829
  212. package/dist/types/csv/csv-core.d.ts +207 -0
  213. package/dist/types/csv/csv-stream.d.ts +114 -0
  214. package/dist/types/csv/csv.base.d.ts +61 -0
  215. package/dist/types/csv/csv.browser.d.ts +33 -0
  216. package/dist/types/csv/csv.d.ts +97 -71
  217. package/dist/types/doc/anchor.d.ts +1 -1
  218. package/dist/types/doc/cell.d.ts +7 -7
  219. package/dist/types/doc/column.d.ts +3 -3
  220. package/dist/types/doc/defined-names.d.ts +4 -4
  221. package/dist/types/doc/image.d.ts +2 -2
  222. package/dist/types/doc/modelcontainer.d.ts +1 -1
  223. package/dist/types/doc/pivot-table.d.ts +1 -1
  224. package/dist/types/doc/range.d.ts +1 -1
  225. package/dist/types/doc/row.d.ts +3 -3
  226. package/dist/types/doc/table.d.ts +2 -2
  227. package/dist/types/doc/workbook.base.d.ts +111 -0
  228. package/dist/types/doc/workbook.browser.d.ts +38 -0
  229. package/dist/types/doc/workbook.d.ts +62 -92
  230. package/dist/types/doc/worksheet.d.ts +10 -10
  231. package/dist/types/index.browser.d.ts +19 -5
  232. package/dist/types/index.d.ts +24 -23
  233. package/dist/types/local.d.ts +0 -1
  234. package/dist/types/stream/xlsx/hyperlink-reader.d.ts +1 -1
  235. package/dist/types/stream/xlsx/workbook-reader.d.ts +4 -4
  236. package/dist/types/stream/xlsx/workbook-writer.d.ts +6 -6
  237. package/dist/types/stream/xlsx/worksheet-reader.d.ts +5 -5
  238. package/dist/types/stream/xlsx/worksheet-writer.d.ts +9 -9
  239. package/dist/types/utils/browser-buffer.d.ts +28 -0
  240. package/dist/types/utils/col-cache.d.ts +1 -1
  241. package/dist/types/utils/encryptor.browser.d.ts +28 -0
  242. package/dist/types/utils/sheet-utils.d.ts +3 -3
  243. package/dist/types/utils/stream-buf.browser.d.ts +41 -0
  244. package/dist/types/utils/unzip/extract.d.ts +6 -6
  245. package/dist/types/utils/unzip/index.d.ts +8 -8
  246. package/dist/types/utils/unzip/parse.d.ts +3 -3
  247. package/dist/types/utils/utils.base.d.ts +29 -0
  248. package/dist/types/utils/utils.browser.d.ts +29 -0
  249. package/dist/types/utils/utils.d.ts +6 -25
  250. package/dist/types/utils/zip/compress.base.d.ts +42 -0
  251. package/dist/types/utils/zip/compress.browser.d.ts +54 -0
  252. package/dist/types/utils/zip/compress.d.ts +13 -45
  253. package/dist/types/utils/zip/crc32.browser.d.ts +52 -0
  254. package/dist/types/utils/zip/index.d.ts +5 -5
  255. package/dist/types/utils/zip/zip-builder.d.ts +1 -1
  256. package/dist/types/utils/zip-stream.browser.d.ts +39 -0
  257. package/dist/types/xlsx/xform/base-xform.d.ts +1 -1
  258. package/dist/types/xlsx/xform/book/defined-name-xform.d.ts +1 -1
  259. package/dist/types/xlsx/xform/book/sheet-xform.d.ts +1 -1
  260. package/dist/types/xlsx/xform/book/workbook-calc-properties-xform.d.ts +1 -1
  261. package/dist/types/xlsx/xform/book/workbook-pivot-cache-xform.d.ts +1 -1
  262. package/dist/types/xlsx/xform/book/workbook-properties-xform.d.ts +1 -1
  263. package/dist/types/xlsx/xform/book/workbook-view-xform.d.ts +1 -1
  264. package/dist/types/xlsx/xform/book/workbook-xform.d.ts +2 -2
  265. package/dist/types/xlsx/xform/comment/comment-xform.d.ts +2 -2
  266. package/dist/types/xlsx/xform/comment/comments-xform.d.ts +2 -2
  267. package/dist/types/xlsx/xform/comment/style/vml-position-xform.d.ts +1 -1
  268. package/dist/types/xlsx/xform/comment/style/vml-protection-xform.d.ts +1 -1
  269. package/dist/types/xlsx/xform/comment/vml-anchor-xform.d.ts +1 -1
  270. package/dist/types/xlsx/xform/comment/vml-client-data-xform.d.ts +1 -1
  271. package/dist/types/xlsx/xform/comment/vml-notes-xform.d.ts +1 -1
  272. package/dist/types/xlsx/xform/comment/vml-shape-xform.d.ts +1 -1
  273. package/dist/types/xlsx/xform/comment/vml-textbox-xform.d.ts +1 -1
  274. package/dist/types/xlsx/xform/composite-xform.d.ts +1 -1
  275. package/dist/types/xlsx/xform/core/app-heading-pairs-xform.d.ts +1 -1
  276. package/dist/types/xlsx/xform/core/app-titles-of-parts-xform.d.ts +1 -1
  277. package/dist/types/xlsx/xform/core/app-xform.d.ts +1 -1
  278. package/dist/types/xlsx/xform/core/content-types-xform.d.ts +1 -1
  279. package/dist/types/xlsx/xform/core/core-xform.d.ts +1 -1
  280. package/dist/types/xlsx/xform/core/relationship-xform.d.ts +1 -1
  281. package/dist/types/xlsx/xform/core/relationships-xform.d.ts +1 -1
  282. package/dist/types/xlsx/xform/drawing/base-cell-anchor-xform.d.ts +1 -1
  283. package/dist/types/xlsx/xform/drawing/blip-fill-xform.d.ts +2 -2
  284. package/dist/types/xlsx/xform/drawing/blip-xform.d.ts +1 -1
  285. package/dist/types/xlsx/xform/drawing/c-nv-pic-pr-xform.d.ts +1 -1
  286. package/dist/types/xlsx/xform/drawing/c-nv-pr-xform.d.ts +1 -1
  287. package/dist/types/xlsx/xform/drawing/cell-position-xform.d.ts +2 -2
  288. package/dist/types/xlsx/xform/drawing/drawing-xform.d.ts +1 -1
  289. package/dist/types/xlsx/xform/drawing/ext-lst-xform.d.ts +1 -1
  290. package/dist/types/xlsx/xform/drawing/ext-xform.d.ts +1 -1
  291. package/dist/types/xlsx/xform/drawing/hlink-click-xform.d.ts +1 -1
  292. package/dist/types/xlsx/xform/drawing/nv-pic-pr-xform.d.ts +1 -1
  293. package/dist/types/xlsx/xform/drawing/one-cell-anchor-xform.d.ts +1 -1
  294. package/dist/types/xlsx/xform/drawing/pic-xform.d.ts +1 -1
  295. package/dist/types/xlsx/xform/drawing/two-cell-anchor-xform.d.ts +1 -1
  296. package/dist/types/xlsx/xform/list-xform.d.ts +1 -1
  297. package/dist/types/xlsx/xform/pivot-table/cache-field-xform.d.ts +1 -1
  298. package/dist/types/xlsx/xform/pivot-table/pivot-cache-definition-xform.d.ts +3 -3
  299. package/dist/types/xlsx/xform/pivot-table/pivot-cache-records-xform.d.ts +2 -2
  300. package/dist/types/xlsx/xform/pivot-table/pivot-table-xform.d.ts +1 -1
  301. package/dist/types/xlsx/xform/sheet/auto-filter-xform.d.ts +1 -1
  302. package/dist/types/xlsx/xform/sheet/cell-xform.d.ts +1 -1
  303. package/dist/types/xlsx/xform/sheet/cf/cf-rule-xform.d.ts +6 -6
  304. package/dist/types/xlsx/xform/sheet/cf/cfvo-xform.d.ts +1 -1
  305. package/dist/types/xlsx/xform/sheet/cf/color-scale-xform.d.ts +3 -3
  306. package/dist/types/xlsx/xform/sheet/cf/conditional-formatting-xform.d.ts +1 -1
  307. package/dist/types/xlsx/xform/sheet/cf/conditional-formattings-xform.d.ts +2 -2
  308. package/dist/types/xlsx/xform/sheet/cf/databar-xform.d.ts +3 -3
  309. package/dist/types/xlsx/xform/sheet/cf/ext-lst-ref-xform.d.ts +1 -1
  310. package/dist/types/xlsx/xform/sheet/cf/formula-xform.d.ts +1 -1
  311. package/dist/types/xlsx/xform/sheet/cf/icon-set-xform.d.ts +2 -2
  312. package/dist/types/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.d.ts +1 -1
  313. package/dist/types/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.d.ts +3 -3
  314. package/dist/types/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.d.ts +2 -2
  315. package/dist/types/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.d.ts +3 -3
  316. package/dist/types/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.d.ts +2 -2
  317. package/dist/types/xlsx/xform/sheet/cf-ext/databar-ext-xform.d.ts +3 -3
  318. package/dist/types/xlsx/xform/sheet/cf-ext/f-ext-xform.d.ts +1 -1
  319. package/dist/types/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.d.ts +3 -3
  320. package/dist/types/xlsx/xform/sheet/cf-ext/sqref-ext-xform.d.ts +1 -1
  321. package/dist/types/xlsx/xform/sheet/col-xform.d.ts +1 -1
  322. package/dist/types/xlsx/xform/sheet/data-validations-xform.d.ts +1 -1
  323. package/dist/types/xlsx/xform/sheet/dimension-xform.d.ts +1 -1
  324. package/dist/types/xlsx/xform/sheet/drawing-xform.d.ts +1 -1
  325. package/dist/types/xlsx/xform/sheet/ext-lst-xform.d.ts +1 -1
  326. package/dist/types/xlsx/xform/sheet/header-footer-xform.d.ts +1 -1
  327. package/dist/types/xlsx/xform/sheet/hyperlink-xform.d.ts +1 -1
  328. package/dist/types/xlsx/xform/sheet/merge-cell-xform.d.ts +1 -1
  329. package/dist/types/xlsx/xform/sheet/outline-properties-xform.d.ts +1 -1
  330. package/dist/types/xlsx/xform/sheet/page-breaks-xform.d.ts +1 -1
  331. package/dist/types/xlsx/xform/sheet/page-margins-xform.d.ts +1 -1
  332. package/dist/types/xlsx/xform/sheet/page-setup-properties-xform.d.ts +1 -1
  333. package/dist/types/xlsx/xform/sheet/page-setup-xform.d.ts +1 -1
  334. package/dist/types/xlsx/xform/sheet/picture-xform.d.ts +1 -1
  335. package/dist/types/xlsx/xform/sheet/print-options-xform.d.ts +1 -1
  336. package/dist/types/xlsx/xform/sheet/row-breaks-xform.d.ts +1 -1
  337. package/dist/types/xlsx/xform/sheet/row-xform.d.ts +1 -1
  338. package/dist/types/xlsx/xform/sheet/sheet-format-properties-xform.d.ts +1 -1
  339. package/dist/types/xlsx/xform/sheet/sheet-properties-xform.d.ts +1 -1
  340. package/dist/types/xlsx/xform/sheet/sheet-protection-xform.d.ts +1 -1
  341. package/dist/types/xlsx/xform/sheet/sheet-view-xform.d.ts +1 -1
  342. package/dist/types/xlsx/xform/sheet/table-part-xform.d.ts +1 -1
  343. package/dist/types/xlsx/xform/sheet/worksheet-xform.d.ts +1 -1
  344. package/dist/types/xlsx/xform/simple/boolean-xform.d.ts +1 -1
  345. package/dist/types/xlsx/xform/simple/date-xform.d.ts +1 -1
  346. package/dist/types/xlsx/xform/simple/float-xform.d.ts +1 -1
  347. package/dist/types/xlsx/xform/simple/integer-xform.d.ts +1 -1
  348. package/dist/types/xlsx/xform/simple/string-xform.d.ts +1 -1
  349. package/dist/types/xlsx/xform/static-xform.d.ts +1 -1
  350. package/dist/types/xlsx/xform/strings/phonetic-text-xform.d.ts +1 -1
  351. package/dist/types/xlsx/xform/strings/rich-text-xform.d.ts +3 -3
  352. package/dist/types/xlsx/xform/strings/shared-string-xform.d.ts +1 -1
  353. package/dist/types/xlsx/xform/strings/shared-strings-xform.d.ts +2 -2
  354. package/dist/types/xlsx/xform/strings/text-xform.d.ts +1 -1
  355. package/dist/types/xlsx/xform/style/alignment-xform.d.ts +1 -1
  356. package/dist/types/xlsx/xform/style/border-xform.d.ts +2 -2
  357. package/dist/types/xlsx/xform/style/color-xform.d.ts +1 -1
  358. package/dist/types/xlsx/xform/style/dxf-xform.d.ts +1 -1
  359. package/dist/types/xlsx/xform/style/fill-xform.d.ts +2 -2
  360. package/dist/types/xlsx/xform/style/font-xform.d.ts +1 -1
  361. package/dist/types/xlsx/xform/style/numfmt-xform.d.ts +1 -1
  362. package/dist/types/xlsx/xform/style/protection-xform.d.ts +1 -1
  363. package/dist/types/xlsx/xform/style/style-xform.d.ts +3 -3
  364. package/dist/types/xlsx/xform/style/styles-xform.d.ts +2 -2
  365. package/dist/types/xlsx/xform/style/underline-xform.d.ts +1 -1
  366. package/dist/types/xlsx/xform/table/auto-filter-xform.d.ts +2 -2
  367. package/dist/types/xlsx/xform/table/custom-filter-xform.d.ts +1 -1
  368. package/dist/types/xlsx/xform/table/filter-column-xform.d.ts +2 -2
  369. package/dist/types/xlsx/xform/table/filter-xform.d.ts +1 -1
  370. package/dist/types/xlsx/xform/table/table-column-xform.d.ts +1 -1
  371. package/dist/types/xlsx/xform/table/table-style-info-xform.d.ts +1 -1
  372. package/dist/types/xlsx/xform/table/table-xform.d.ts +1 -1
  373. package/dist/types/xlsx/xlsx.base.d.ts +134 -0
  374. package/dist/types/xlsx/xlsx.browser.d.ts +31 -0
  375. package/dist/types/xlsx/xlsx.d.ts +20 -80
  376. package/package.json +13 -15
@@ -0,0 +1,355 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StreamBuf = void 0;
4
+ const string_buf_1 = require("./string-buf");
5
+ // =============================================================================
6
+ // Data chunks - encapsulating incoming data
7
+ class StringChunk {
8
+ constructor(data, encoding) {
9
+ this._data = data;
10
+ this._encoding = encoding;
11
+ }
12
+ get length() {
13
+ return this.toBuffer().length;
14
+ }
15
+ copy(target, targetOffset, offset, length) {
16
+ const buf = this.toBuffer();
17
+ const bytesToCopy = Math.min(length, buf.length - offset);
18
+ target.set(buf.subarray(offset, offset + bytesToCopy), targetOffset);
19
+ return bytesToCopy;
20
+ }
21
+ toBuffer() {
22
+ if (!this._buffer) {
23
+ this._buffer = new TextEncoder().encode(this._data);
24
+ }
25
+ return this._buffer;
26
+ }
27
+ }
28
+ class StringBufChunk {
29
+ constructor(data) {
30
+ this._data = data;
31
+ }
32
+ get length() {
33
+ return this._data.length;
34
+ }
35
+ copy(target, targetOffset, offset, length) {
36
+ const buf = this.toBuffer();
37
+ const bytesToCopy = Math.min(length, buf.length - offset);
38
+ target.set(buf.subarray(offset, offset + bytesToCopy), targetOffset);
39
+ return bytesToCopy;
40
+ }
41
+ toBuffer() {
42
+ return this._data.toBuffer();
43
+ }
44
+ }
45
+ class BufferChunk {
46
+ constructor(data) {
47
+ this._data = data;
48
+ }
49
+ get length() {
50
+ return this._data.length;
51
+ }
52
+ copy(target, targetOffset, offset, length) {
53
+ const bytesToCopy = Math.min(length, this._data.length - offset);
54
+ target.set(this._data.subarray(offset, offset + bytesToCopy), targetOffset);
55
+ }
56
+ toBuffer() {
57
+ return this._data;
58
+ }
59
+ }
60
+ // =============================================================================
61
+ // ReadWriteBuf - a single buffer supporting simple read-write
62
+ class ReadWriteBuf {
63
+ constructor(size) {
64
+ this.size = size;
65
+ this.buffer = new Uint8Array(size);
66
+ this.iRead = 0;
67
+ this.iWrite = 0;
68
+ }
69
+ toBuffer() {
70
+ if (this.iRead === 0 && this.iWrite === this.size) {
71
+ return this.buffer;
72
+ }
73
+ return this.buffer.slice(this.iRead, this.iWrite);
74
+ }
75
+ get length() {
76
+ return this.iWrite - this.iRead;
77
+ }
78
+ get eod() {
79
+ return this.iRead === this.iWrite;
80
+ }
81
+ get full() {
82
+ return this.iWrite === this.size;
83
+ }
84
+ read(size) {
85
+ if (size === 0) {
86
+ return null;
87
+ }
88
+ if (size === undefined || size >= this.length) {
89
+ const buf = this.toBuffer();
90
+ this.iRead = this.iWrite;
91
+ return buf;
92
+ }
93
+ const buf = this.buffer.slice(this.iRead, this.iRead + size);
94
+ this.iRead += size;
95
+ return buf;
96
+ }
97
+ write(chunk, offset, length) {
98
+ const size = Math.min(length, this.size - this.iWrite);
99
+ chunk.copy(this.buffer, this.iWrite, offset, offset + size);
100
+ this.iWrite += size;
101
+ return size;
102
+ }
103
+ }
104
+ // =============================================================================
105
+ // StreamBuf - Browser version without Node.js stream dependency
106
+ // A simple buffer manager that mimics stream behavior for xlsx writing
107
+ class StreamBuf {
108
+ constructor(options) {
109
+ options = options || {};
110
+ this.bufSize = options.bufSize || 1024 * 1024;
111
+ this.buffers = [];
112
+ this.batch = options.batch || false;
113
+ this.corked = false;
114
+ this.paused = false;
115
+ this.encoding = null;
116
+ this.pipes = [];
117
+ this.events = new Map();
118
+ }
119
+ // Event emitter methods
120
+ on(event, callback) {
121
+ const callbacks = this.events.get(event) || [];
122
+ callbacks.push(callback);
123
+ this.events.set(event, callbacks);
124
+ return this;
125
+ }
126
+ once(event, callback) {
127
+ const onceCallback = (...args) => {
128
+ this.off(event, onceCallback);
129
+ callback(...args);
130
+ };
131
+ return this.on(event, onceCallback);
132
+ }
133
+ off(event, callback) {
134
+ const callbacks = this.events.get(event) || [];
135
+ const index = callbacks.indexOf(callback);
136
+ if (index !== -1) {
137
+ callbacks.splice(index, 1);
138
+ }
139
+ return this;
140
+ }
141
+ emit(event, ...args) {
142
+ const callbacks = this.events.get(event) || [];
143
+ callbacks.forEach(cb => cb(...args));
144
+ return callbacks.length > 0;
145
+ }
146
+ removeListener(event, callback) {
147
+ return this.off(event, callback);
148
+ }
149
+ toBuffer() {
150
+ switch (this.buffers.length) {
151
+ case 0:
152
+ return null;
153
+ case 1:
154
+ return this.buffers[0].toBuffer();
155
+ default: {
156
+ const totalLength = this.buffers.reduce((acc, buf) => acc + buf.length, 0);
157
+ const result = new Uint8Array(totalLength);
158
+ let offset = 0;
159
+ for (const rwBuf of this.buffers) {
160
+ const buf = rwBuf.toBuffer();
161
+ result.set(buf, offset);
162
+ offset += buf.length;
163
+ }
164
+ return result;
165
+ }
166
+ }
167
+ }
168
+ _getWritableBuffer() {
169
+ if (this.buffers.length) {
170
+ const last = this.buffers[this.buffers.length - 1];
171
+ if (!last.full) {
172
+ return last;
173
+ }
174
+ }
175
+ const buf = new ReadWriteBuf(this.bufSize);
176
+ this.buffers.push(buf);
177
+ return buf;
178
+ }
179
+ async _pipe(chunk) {
180
+ const write = (pipe) => {
181
+ return new Promise(resolve => {
182
+ pipe.write(chunk.toBuffer(), () => {
183
+ resolve();
184
+ });
185
+ });
186
+ };
187
+ await Promise.all(this.pipes.map(write));
188
+ }
189
+ _writeToBuffers(chunk) {
190
+ let inPos = 0;
191
+ const inLen = chunk.length;
192
+ while (inPos < inLen) {
193
+ const buffer = this._getWritableBuffer();
194
+ inPos += buffer.write(chunk, inPos, inLen - inPos);
195
+ }
196
+ }
197
+ async write(data, encoding, callback) {
198
+ const nop = () => { };
199
+ if (encoding instanceof Function) {
200
+ callback = encoding;
201
+ encoding = "utf8";
202
+ }
203
+ callback = callback || nop;
204
+ let chunk;
205
+ if (data instanceof string_buf_1.StringBuf || (data && data.constructor?.name === "StringBuf")) {
206
+ chunk = new StringBufChunk(data);
207
+ }
208
+ else if (data instanceof Uint8Array) {
209
+ chunk = new BufferChunk(data);
210
+ }
211
+ else if (ArrayBuffer.isView(data)) {
212
+ chunk = new BufferChunk(new Uint8Array(data.buffer, data.byteOffset, data.byteLength));
213
+ }
214
+ else if (data instanceof ArrayBuffer) {
215
+ chunk = new BufferChunk(new Uint8Array(data));
216
+ }
217
+ else if (typeof data === "string" || data instanceof String) {
218
+ chunk = new StringChunk(String(data), encoding);
219
+ }
220
+ else {
221
+ throw new Error("Chunk must be one of type String, Uint8Array, ArrayBuffer or StringBuf.");
222
+ }
223
+ if (this.pipes.length) {
224
+ if (this.batch) {
225
+ this._writeToBuffers(chunk);
226
+ while (!this.corked && this.buffers.length > 1) {
227
+ await this._pipe(new BufferChunk(this.buffers.shift().toBuffer()));
228
+ }
229
+ }
230
+ else if (!this.corked) {
231
+ await this._pipe(chunk);
232
+ callback();
233
+ }
234
+ else {
235
+ this._writeToBuffers(chunk);
236
+ queueMicrotask(() => callback());
237
+ }
238
+ }
239
+ else {
240
+ if (!this.paused) {
241
+ this.emit("data", chunk.toBuffer());
242
+ }
243
+ this._writeToBuffers(chunk);
244
+ this.emit("readable");
245
+ }
246
+ return true;
247
+ }
248
+ cork() {
249
+ this.corked = true;
250
+ }
251
+ _flush() {
252
+ if (this.pipes.length) {
253
+ while (this.buffers.length) {
254
+ this._pipe(new BufferChunk(this.buffers.shift().toBuffer()));
255
+ }
256
+ }
257
+ }
258
+ uncork() {
259
+ this.corked = false;
260
+ this._flush();
261
+ }
262
+ end(chunk, encoding, callback) {
263
+ const writeComplete = (error) => {
264
+ if (error) {
265
+ callback?.(error);
266
+ }
267
+ else {
268
+ this._flush();
269
+ this.pipes.forEach((pipe) => {
270
+ pipe.end();
271
+ });
272
+ this.emit("finish");
273
+ }
274
+ };
275
+ if (chunk) {
276
+ this.write(chunk, encoding, writeComplete);
277
+ }
278
+ else {
279
+ writeComplete();
280
+ }
281
+ }
282
+ read(size) {
283
+ let buffers;
284
+ if (size) {
285
+ buffers = [];
286
+ while (size && this.buffers.length && !this.buffers[0].eod) {
287
+ const first = this.buffers[0];
288
+ const buffer = first.read(size);
289
+ if (buffer) {
290
+ size -= buffer.length;
291
+ buffers.push(buffer);
292
+ }
293
+ if (first.eod && first.full) {
294
+ this.buffers.shift();
295
+ }
296
+ }
297
+ return concatUint8Arrays(buffers);
298
+ }
299
+ buffers = this.buffers.map(buf => buf.toBuffer()).filter(Boolean);
300
+ this.buffers = [];
301
+ return concatUint8Arrays(buffers);
302
+ }
303
+ setEncoding(encoding) {
304
+ this.encoding = encoding;
305
+ }
306
+ pause() {
307
+ this.paused = true;
308
+ }
309
+ resume() {
310
+ this.paused = false;
311
+ }
312
+ isPaused() {
313
+ return this.paused;
314
+ }
315
+ pipe(destination) {
316
+ this.pipes.push(destination);
317
+ if (!this.paused && this.buffers.length) {
318
+ this.end();
319
+ }
320
+ return destination;
321
+ }
322
+ unpipe(destination) {
323
+ this.pipes = this.pipes.filter((pipe) => pipe !== destination);
324
+ }
325
+ unshift() {
326
+ throw new Error("Not Implemented");
327
+ }
328
+ wrap() {
329
+ throw new Error("Not Implemented");
330
+ }
331
+ push(chunk) {
332
+ if (chunk !== null) {
333
+ this.write(chunk);
334
+ }
335
+ return true;
336
+ }
337
+ }
338
+ exports.StreamBuf = StreamBuf;
339
+ // Helper function to concatenate Uint8Arrays
340
+ function concatUint8Arrays(arrays) {
341
+ if (arrays.length === 0) {
342
+ return new Uint8Array(0);
343
+ }
344
+ if (arrays.length === 1) {
345
+ return arrays[0];
346
+ }
347
+ const totalLength = arrays.reduce((acc, arr) => acc + arr.length, 0);
348
+ const result = new Uint8Array(totalLength);
349
+ let offset = 0;
350
+ for (const arr of arrays) {
351
+ result.set(arr, offset);
352
+ offset += arr.length;
353
+ }
354
+ return result;
355
+ }
@@ -2,8 +2,8 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.StreamBuf = void 0;
4
4
  const stream_1 = require("stream");
5
- const utils_js_1 = require("./utils");
6
- const string_buf_js_1 = require("./string-buf");
5
+ const utils_1 = require("./utils");
6
+ const string_buf_1 = require("./string-buf");
7
7
  // =============================================================================
8
8
  // data chunks - encapsulating incoming data
9
9
  class StringChunk {
@@ -142,7 +142,7 @@ const StreamBuf = function (options) {
142
142
  this.encoding = null;
143
143
  };
144
144
  exports.StreamBuf = StreamBuf;
145
- (0, utils_js_1.inherits)(StreamBuf, stream_1.Duplex, {
145
+ (0, utils_1.inherits)(StreamBuf, stream_1.Duplex, {
146
146
  toBuffer() {
147
147
  switch (this.buffers.length) {
148
148
  case 0:
@@ -195,11 +195,11 @@ exports.StreamBuf = StreamBuf;
195
195
  callback = encoding;
196
196
  encoding = "utf8";
197
197
  }
198
- callback = callback || utils_js_1.nop;
198
+ callback = callback || utils_1.nop;
199
199
  // encapsulate data into a chunk
200
200
  let chunk;
201
201
  // Use constructor name check for better ES6 module compatibility
202
- if (data instanceof string_buf_js_1.StringBuf || (data && data.constructor?.name === "StringBuf")) {
202
+ if (data instanceof string_buf_1.StringBuf || (data && data.constructor?.name === "StringBuf")) {
203
203
  chunk = new StringBufChunk(data);
204
204
  }
205
205
  else if (Buffer.isBuffer(data)) {
@@ -10,7 +10,7 @@ exports.extractAll = extractAll;
10
10
  exports.extractFile = extractFile;
11
11
  exports.listFiles = listFiles;
12
12
  exports.forEachEntry = forEachEntry;
13
- const zip_parser_js_1 = require("./zip-parser");
13
+ const zip_parser_1 = require("./zip-parser");
14
14
  /**
15
15
  * Extract all files from a ZIP buffer
16
16
  *
@@ -19,7 +19,7 @@ const zip_parser_js_1 = require("./zip-parser");
19
19
  *
20
20
  * @example
21
21
  * ```ts
22
- * import { extractAll } from "./utils/unzip/extract.js";
22
+ * import { extractAll } from "./utils/unzip/extract";
23
23
  *
24
24
  * const zipData = fs.readFileSync("archive.zip");
25
25
  * const files = await extractAll(zipData);
@@ -31,7 +31,7 @@ const zip_parser_js_1 = require("./zip-parser");
31
31
  */
32
32
  async function extractAll(zipData) {
33
33
  const files = new Map();
34
- const parser = new zip_parser_js_1.ZipParser(zipData);
34
+ const parser = new zip_parser_1.ZipParser(zipData);
35
35
  for (const entry of parser.getEntries()) {
36
36
  const data = await parser.extract(entry.path);
37
37
  files.set(entry.path, {
@@ -52,7 +52,7 @@ async function extractAll(zipData) {
52
52
  *
53
53
  * @example
54
54
  * ```ts
55
- * import { extractFile } from "./utils/unzip/extract.js";
55
+ * import { extractFile } from "./utils/unzip/extract";
56
56
  *
57
57
  * const zipData = fs.readFileSync("archive.zip");
58
58
  * const content = await extractFile(zipData, "readme.txt");
@@ -62,7 +62,7 @@ async function extractAll(zipData) {
62
62
  * ```
63
63
  */
64
64
  async function extractFile(zipData, filePath) {
65
- const parser = new zip_parser_js_1.ZipParser(zipData);
65
+ const parser = new zip_parser_1.ZipParser(zipData);
66
66
  return parser.extract(filePath);
67
67
  }
68
68
  /**
@@ -73,7 +73,7 @@ async function extractFile(zipData, filePath) {
73
73
  *
74
74
  * @example
75
75
  * ```ts
76
- * import { listFiles } from "./utils/unzip/extract.js";
76
+ * import { listFiles } from "./utils/unzip/extract";
77
77
  *
78
78
  * const zipData = fs.readFileSync("archive.zip");
79
79
  * const paths = await listFiles(zipData);
@@ -81,7 +81,7 @@ async function extractFile(zipData, filePath) {
81
81
  * ```
82
82
  */
83
83
  async function listFiles(zipData) {
84
- const parser = new zip_parser_js_1.ZipParser(zipData);
84
+ const parser = new zip_parser_1.ZipParser(zipData);
85
85
  return parser.listFiles();
86
86
  }
87
87
  /**
@@ -92,7 +92,7 @@ async function listFiles(zipData) {
92
92
  *
93
93
  * @example
94
94
  * ```ts
95
- * import { forEachEntry } from "./utils/unzip/extract.js";
95
+ * import { forEachEntry } from "./utils/unzip/extract";
96
96
  *
97
97
  * await forEachEntry(zipData, async (path, getData) => {
98
98
  * if (path.endsWith(".xml")) {
@@ -104,11 +104,11 @@ async function listFiles(zipData) {
104
104
  * ```
105
105
  */
106
106
  async function forEachEntry(zipData, callback) {
107
- const parser = new zip_parser_js_1.ZipParser(zipData);
107
+ const parser = new zip_parser_1.ZipParser(zipData);
108
108
  await parser.forEach(async (entry, getData) => {
109
109
  return callback(entry.path, getData, entry);
110
110
  });
111
111
  }
112
112
  // Re-export ZipParser for advanced usage
113
- var zip_parser_js_2 = require("./zip-parser");
114
- Object.defineProperty(exports, "ZipParser", { enumerable: true, get: function () { return zip_parser_js_2.ZipParser; } });
113
+ var zip_parser_2 = require("./zip-parser");
114
+ Object.defineProperty(exports, "ZipParser", { enumerable: true, get: function () { return zip_parser_2.ZipParser; } });
@@ -21,25 +21,25 @@
21
21
  Object.defineProperty(exports, "__esModule", { value: true });
22
22
  exports.ZipParser = exports.forEachEntry = exports.listFiles = exports.extractFile = exports.extractAll = exports.parseExtraField = exports.parseDateTime = exports.parseBuffer = exports.bufferStream = exports.NoopStream = exports.PullStream = exports.createParse = exports.Parse = void 0;
23
23
  // Stream-based API (Node.js only - requires stream module)
24
- var parse_js_1 = require("./parse");
25
- Object.defineProperty(exports, "Parse", { enumerable: true, get: function () { return parse_js_1.Parse; } });
26
- Object.defineProperty(exports, "createParse", { enumerable: true, get: function () { return parse_js_1.createParse; } });
27
- var pull_stream_js_1 = require("./pull-stream");
28
- Object.defineProperty(exports, "PullStream", { enumerable: true, get: function () { return pull_stream_js_1.PullStream; } });
29
- var noop_stream_js_1 = require("./noop-stream");
30
- Object.defineProperty(exports, "NoopStream", { enumerable: true, get: function () { return noop_stream_js_1.NoopStream; } });
31
- var buffer_stream_js_1 = require("./buffer-stream");
32
- Object.defineProperty(exports, "bufferStream", { enumerable: true, get: function () { return buffer_stream_js_1.bufferStream; } });
33
- var parse_buffer_js_1 = require("./parse-buffer");
34
- Object.defineProperty(exports, "parseBuffer", { enumerable: true, get: function () { return parse_buffer_js_1.parse; } });
35
- var parse_datetime_js_1 = require("./parse-datetime");
36
- Object.defineProperty(exports, "parseDateTime", { enumerable: true, get: function () { return parse_datetime_js_1.parseDateTime; } });
37
- var parse_extra_field_js_1 = require("./parse-extra-field");
38
- Object.defineProperty(exports, "parseExtraField", { enumerable: true, get: function () { return parse_extra_field_js_1.parseExtraField; } });
24
+ var parse_1 = require("./parse");
25
+ Object.defineProperty(exports, "Parse", { enumerable: true, get: function () { return parse_1.Parse; } });
26
+ Object.defineProperty(exports, "createParse", { enumerable: true, get: function () { return parse_1.createParse; } });
27
+ var pull_stream_1 = require("./pull-stream");
28
+ Object.defineProperty(exports, "PullStream", { enumerable: true, get: function () { return pull_stream_1.PullStream; } });
29
+ var noop_stream_1 = require("./noop-stream");
30
+ Object.defineProperty(exports, "NoopStream", { enumerable: true, get: function () { return noop_stream_1.NoopStream; } });
31
+ var buffer_stream_1 = require("./buffer-stream");
32
+ Object.defineProperty(exports, "bufferStream", { enumerable: true, get: function () { return buffer_stream_1.bufferStream; } });
33
+ var parse_buffer_1 = require("./parse-buffer");
34
+ Object.defineProperty(exports, "parseBuffer", { enumerable: true, get: function () { return parse_buffer_1.parse; } });
35
+ var parse_datetime_1 = require("./parse-datetime");
36
+ Object.defineProperty(exports, "parseDateTime", { enumerable: true, get: function () { return parse_datetime_1.parseDateTime; } });
37
+ var parse_extra_field_1 = require("./parse-extra-field");
38
+ Object.defineProperty(exports, "parseExtraField", { enumerable: true, get: function () { return parse_extra_field_1.parseExtraField; } });
39
39
  // Buffer-based API (Browser + Node.js - cross-platform)
40
- var extract_js_1 = require("./extract");
41
- Object.defineProperty(exports, "extractAll", { enumerable: true, get: function () { return extract_js_1.extractAll; } });
42
- Object.defineProperty(exports, "extractFile", { enumerable: true, get: function () { return extract_js_1.extractFile; } });
43
- Object.defineProperty(exports, "listFiles", { enumerable: true, get: function () { return extract_js_1.listFiles; } });
44
- Object.defineProperty(exports, "forEachEntry", { enumerable: true, get: function () { return extract_js_1.forEachEntry; } });
45
- Object.defineProperty(exports, "ZipParser", { enumerable: true, get: function () { return extract_js_1.ZipParser; } });
40
+ var extract_1 = require("./extract");
41
+ Object.defineProperty(exports, "extractAll", { enumerable: true, get: function () { return extract_1.extractAll; } });
42
+ Object.defineProperty(exports, "extractFile", { enumerable: true, get: function () { return extract_1.extractFile; } });
43
+ Object.defineProperty(exports, "listFiles", { enumerable: true, get: function () { return extract_1.listFiles; } });
44
+ Object.defineProperty(exports, "forEachEntry", { enumerable: true, get: function () { return extract_1.forEachEntry; } });
45
+ Object.defineProperty(exports, "ZipParser", { enumerable: true, get: function () { return extract_1.ZipParser; } });
@@ -8,12 +8,12 @@
8
8
  */
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
10
  exports.parseExtraField = parseExtraField;
11
- const parse_buffer_js_1 = require("./parse-buffer");
11
+ const parse_buffer_1 = require("./parse-buffer");
12
12
  function parseExtraField(extraField, vars) {
13
13
  let extra;
14
14
  // Find the ZIP64 header, if present.
15
15
  while (!extra && extraField && extraField.length) {
16
- const candidateExtra = (0, parse_buffer_js_1.parse)(extraField, [
16
+ const candidateExtra = (0, parse_buffer_1.parse)(extraField, [
17
17
  ["signature", 2],
18
18
  ["partSize", 2]
19
19
  ]);
@@ -30,7 +30,7 @@ function parseExtraField(extraField, vars) {
30
30
  fieldsToExpect.push(["offsetToLocalFileHeader", 8]);
31
31
  }
32
32
  // slice off the 4 bytes for signature and partSize
33
- extra = (0, parse_buffer_js_1.parse)(extraField.slice(4), fieldsToExpect);
33
+ extra = (0, parse_buffer_1.parse)(extraField.slice(4), fieldsToExpect);
34
34
  }
35
35
  else {
36
36
  // Advance the buffer to the next part.
@@ -14,12 +14,12 @@ exports.Parse = void 0;
14
14
  exports.createParse = createParse;
15
15
  const zlib_1 = __importDefault(require("zlib"));
16
16
  const stream_1 = require("stream");
17
- const pull_stream_js_1 = require("./pull-stream");
18
- const noop_stream_js_1 = require("./noop-stream");
19
- const buffer_stream_js_1 = require("./buffer-stream");
20
- const parse_extra_field_js_1 = require("./parse-extra-field");
21
- const parse_datetime_js_1 = require("./parse-datetime");
22
- const parse_buffer_js_1 = require("./parse-buffer");
17
+ const pull_stream_1 = require("./pull-stream");
18
+ const noop_stream_1 = require("./noop-stream");
19
+ const buffer_stream_1 = require("./buffer-stream");
20
+ const parse_extra_field_1 = require("./parse-extra-field");
21
+ const parse_datetime_1 = require("./parse-datetime");
22
+ const parse_buffer_1 = require("./parse-buffer");
23
23
  // Check if native zlib is available (Node.js environment)
24
24
  // In browser with polyfill, createInflateRaw may not exist or may not work properly
25
25
  const hasNativeZlib = typeof zlib_1.default?.createInflateRaw === "function" &&
@@ -103,7 +103,7 @@ function createInflateRaw() {
103
103
  }
104
104
  const endDirectorySignature = Buffer.alloc(4);
105
105
  endDirectorySignature.writeUInt32LE(0x06054b50, 0);
106
- class Parse extends pull_stream_js_1.PullStream {
106
+ class Parse extends pull_stream_1.PullStream {
107
107
  constructor(opts = {}) {
108
108
  super();
109
109
  this._opts = opts;
@@ -163,7 +163,7 @@ class Parse extends pull_stream_js_1.PullStream {
163
163
  }
164
164
  async _readCrxHeader() {
165
165
  const data = await this.pull(12);
166
- this.crxHeader = (0, parse_buffer_js_1.parse)(data, [
166
+ this.crxHeader = (0, parse_buffer_1.parse)(data, [
167
167
  ["version", 4],
168
168
  ["pubKeyLength", 4],
169
169
  ["signatureLength", 4]
@@ -176,7 +176,7 @@ class Parse extends pull_stream_js_1.PullStream {
176
176
  }
177
177
  async _readFile() {
178
178
  const data = await this.pull(26);
179
- const vars = (0, parse_buffer_js_1.parse)(data, [
179
+ const vars = (0, parse_buffer_1.parse)(data, [
180
180
  ["versionsNeededToExtract", 2],
181
181
  ["flags", 2],
182
182
  ["compressionMethod", 2],
@@ -188,7 +188,7 @@ class Parse extends pull_stream_js_1.PullStream {
188
188
  ["fileNameLength", 2],
189
189
  ["extraFieldLength", 2]
190
190
  ]);
191
- vars.lastModifiedDateTime = (0, parse_datetime_js_1.parseDateTime)(vars.lastModifiedDate || 0, vars.lastModifiedTime || 0);
191
+ vars.lastModifiedDateTime = (0, parse_datetime_1.parseDateTime)(vars.lastModifiedDate || 0, vars.lastModifiedTime || 0);
192
192
  if (this.crxHeader) {
193
193
  vars.crxHeader = this.crxHeader;
194
194
  }
@@ -198,7 +198,7 @@ class Parse extends pull_stream_js_1.PullStream {
198
198
  let __autodraining = false;
199
199
  entry.autodrain = function () {
200
200
  __autodraining = true;
201
- const draining = entry.pipe(new noop_stream_js_1.NoopStream());
201
+ const draining = entry.pipe(new noop_stream_1.NoopStream());
202
202
  draining.promise = function () {
203
203
  return new Promise((resolve, reject) => {
204
204
  draining.on("finish", resolve);
@@ -208,7 +208,7 @@ class Parse extends pull_stream_js_1.PullStream {
208
208
  return draining;
209
209
  };
210
210
  entry.buffer = function () {
211
- return (0, buffer_stream_js_1.bufferStream)(entry);
211
+ return (0, buffer_stream_1.bufferStream)(entry);
212
212
  };
213
213
  entry.path = fileName;
214
214
  entry.props = {
@@ -233,7 +233,7 @@ class Parse extends pull_stream_js_1.PullStream {
233
233
  }
234
234
  }
235
235
  const extraFieldData = await this.pull(vars.extraFieldLength || 0);
236
- const extra = (0, parse_extra_field_js_1.parseExtraField)(extraFieldData, vars);
236
+ const extra = (0, parse_extra_field_1.parseExtraField)(extraFieldData, vars);
237
237
  entry.vars = vars;
238
238
  entry.extra = extra;
239
239
  if (this._opts.forceStream) {
@@ -278,7 +278,7 @@ class Parse extends pull_stream_js_1.PullStream {
278
278
  }
279
279
  async _processDataDescriptor(entry) {
280
280
  const data = await this.pull(16);
281
- const vars = (0, parse_buffer_js_1.parse)(data, [
281
+ const vars = (0, parse_buffer_1.parse)(data, [
282
282
  ["dataDescriptorSignature", 4],
283
283
  ["crc32", 4],
284
284
  ["compressedSize", 4],
@@ -289,7 +289,7 @@ class Parse extends pull_stream_js_1.PullStream {
289
289
  }
290
290
  async _readCentralDirectoryFileHeader() {
291
291
  const data = await this.pull(42);
292
- const vars = (0, parse_buffer_js_1.parse)(data, [
292
+ const vars = (0, parse_buffer_1.parse)(data, [
293
293
  ["versionMadeBy", 2],
294
294
  ["versionsNeededToExtract", 2],
295
295
  ["flags", 2],
@@ -314,7 +314,7 @@ class Parse extends pull_stream_js_1.PullStream {
314
314
  }
315
315
  async _readEndOfCentralDirectoryRecord() {
316
316
  const data = await this.pull(18);
317
- const vars = (0, parse_buffer_js_1.parse)(data, [
317
+ const vars = (0, parse_buffer_1.parse)(data, [
318
318
  ["diskNumber", 2],
319
319
  ["diskStart", 2],
320
320
  ["numberOfRecordsOnDisk", 2],
@@ -9,7 +9,7 @@ exports.ZipParser = void 0;
9
9
  exports.parseZipEntries = parseZipEntries;
10
10
  exports.extractEntryData = extractEntryData;
11
11
  exports.extractEntryDataSync = extractEntryDataSync;
12
- const compress_js_1 = require("../zip/compress");
12
+ const compress_1 = require("../zip/compress");
13
13
  // ZIP file signatures
14
14
  const LOCAL_FILE_HEADER_SIG = 0x04034b50;
15
15
  const CENTRAL_DIR_HEADER_SIG = 0x02014b50;
@@ -322,7 +322,7 @@ async function extractEntryData(data, entry) {
322
322
  return compressedData;
323
323
  }
324
324
  else if (entry.compressionMethod === COMPRESSION_DEFLATE) {
325
- return (0, compress_js_1.decompress)(compressedData);
325
+ return (0, compress_1.decompress)(compressedData);
326
326
  }
327
327
  else {
328
328
  throw new Error(`Unsupported compression method: ${entry.compressionMethod}`);
@@ -363,7 +363,7 @@ function extractEntryDataSync(data, entry) {
363
363
  return compressedData;
364
364
  }
365
365
  else if (entry.compressionMethod === COMPRESSION_DEFLATE) {
366
- return (0, compress_js_1.decompressSync)(compressedData);
366
+ return (0, compress_1.decompressSync)(compressedData);
367
367
  }
368
368
  else {
369
369
  throw new Error(`Unsupported compression method: ${entry.compressionMethod}`);