@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.
- package/README.md +126 -22
- package/README_zh.md +124 -22
- package/THIRD_PARTY_NOTICES.md +0 -50
- package/dist/browser/index.browser.d.ts +34 -23
- package/dist/browser/index.browser.js +22 -14
- package/dist/browser/index.d.ts +38 -25
- package/dist/browser/index.js +22 -2
- package/dist/browser/modules/archive/compression/compress.base.d.ts +127 -3
- package/dist/browser/modules/archive/compression/compress.base.js +242 -3
- package/dist/browser/modules/archive/compression/compress.browser.d.ts +85 -35
- package/dist/browser/modules/archive/compression/compress.browser.js +363 -54
- package/dist/browser/modules/archive/compression/compress.d.ts +68 -4
- package/dist/browser/modules/archive/compression/compress.js +182 -23
- package/dist/browser/modules/archive/compression/crc32.base.d.ts +9 -0
- package/dist/browser/modules/archive/compression/crc32.base.js +12 -0
- package/dist/browser/modules/archive/compression/crc32.browser.d.ts +6 -1
- package/dist/browser/modules/archive/compression/crc32.browser.js +7 -0
- package/dist/browser/modules/archive/compression/crc32.d.ts +7 -1
- package/dist/browser/modules/archive/compression/crc32.js +42 -11
- package/dist/browser/modules/archive/compression/deflate-fallback.d.ts +38 -0
- package/dist/browser/modules/archive/compression/deflate-fallback.js +219 -78
- package/dist/browser/modules/archive/compression/streaming-compress.base.d.ts +45 -1
- package/dist/browser/modules/archive/compression/streaming-compress.base.js +2 -3
- package/dist/browser/modules/archive/compression/streaming-compress.browser.d.ts +27 -7
- package/dist/browser/modules/archive/compression/streaming-compress.browser.js +225 -202
- package/dist/browser/modules/archive/compression/streaming-compress.d.ts +46 -3
- package/dist/browser/modules/archive/compression/streaming-compress.js +83 -28
- package/dist/browser/modules/archive/compression/worker-pool/index.browser.d.ts +6 -0
- package/dist/browser/modules/archive/compression/worker-pool/index.browser.js +6 -0
- package/dist/browser/modules/archive/compression/worker-pool/index.d.ts +26 -0
- package/dist/browser/modules/archive/compression/worker-pool/index.js +53 -0
- package/dist/browser/modules/archive/compression/worker-pool/pool.base.d.ts +34 -0
- package/dist/browser/modules/archive/compression/worker-pool/pool.base.js +56 -0
- package/dist/browser/modules/archive/compression/worker-pool/pool.browser.d.ts +182 -0
- package/dist/browser/modules/archive/compression/worker-pool/pool.browser.js +857 -0
- package/dist/browser/modules/archive/compression/worker-pool/types.d.ts +170 -0
- package/dist/browser/modules/archive/compression/worker-pool/types.js +7 -0
- package/dist/browser/modules/archive/compression/worker-pool/worker-script.d.ts +26 -0
- package/dist/browser/modules/archive/compression/worker-pool/worker-script.js +337 -0
- package/dist/browser/modules/archive/crypto/aes.d.ts +203 -0
- package/dist/browser/modules/archive/crypto/aes.js +394 -0
- package/dist/browser/modules/archive/crypto/index.d.ts +17 -0
- package/dist/browser/modules/archive/crypto/index.js +20 -0
- package/dist/browser/modules/archive/crypto/types.d.ts +53 -0
- package/dist/browser/modules/archive/crypto/types.js +47 -0
- package/dist/browser/modules/archive/crypto/zip-crypto.d.ts +105 -0
- package/dist/browser/modules/archive/crypto/zip-crypto.js +203 -0
- package/dist/browser/modules/archive/formats/index.d.ts +9 -0
- package/dist/browser/modules/archive/formats/index.js +28 -0
- package/dist/browser/modules/archive/formats/types.d.ts +1 -0
- package/dist/browser/modules/archive/formats/types.js +1 -0
- package/dist/browser/modules/archive/fs/archive-file.d.ts +403 -0
- package/dist/browser/modules/archive/fs/archive-file.js +2684 -0
- package/dist/browser/modules/archive/fs/index.d.ts +61 -0
- package/dist/browser/modules/archive/fs/index.js +61 -0
- package/dist/browser/modules/archive/fs/types.d.ts +517 -0
- package/dist/browser/modules/archive/fs/types.js +9 -0
- package/dist/browser/modules/archive/index.base.d.ts +13 -4
- package/dist/browser/modules/archive/index.base.js +26 -1
- package/dist/browser/modules/archive/index.browser.d.ts +5 -4
- package/dist/browser/modules/archive/index.browser.js +10 -2
- package/dist/browser/modules/archive/index.d.ts +8 -4
- package/dist/browser/modules/archive/index.js +16 -2
- package/dist/browser/modules/archive/io/archive-sink.js +4 -3
- package/dist/browser/modules/archive/io/archive-source.d.ts +31 -1
- package/dist/browser/modules/archive/io/archive-source.js +156 -10
- package/dist/browser/modules/archive/io/archive-source.node.d.ts +10 -0
- package/dist/browser/modules/archive/io/archive-source.node.js +10 -0
- package/dist/browser/modules/archive/io/random-access.d.ts +165 -0
- package/dist/browser/modules/archive/io/random-access.js +301 -0
- package/dist/browser/modules/archive/io/remote-zip-reader.d.ts +352 -0
- package/dist/browser/modules/archive/io/remote-zip-reader.js +782 -0
- package/dist/browser/modules/archive/{utils → shared}/async-queue.d.ts +3 -1
- package/dist/browser/modules/archive/{utils → shared}/async-queue.js +40 -8
- package/dist/{types/modules/archive/internal → browser/modules/archive/shared}/byte-queue.d.ts +5 -1
- package/dist/{esm/modules/archive/internal → browser/modules/archive/shared}/byte-queue.js +59 -30
- package/dist/browser/modules/archive/shared/bytes.d.ts +19 -0
- package/dist/{esm/modules/archive/utils → browser/modules/archive/shared}/bytes.js +14 -25
- package/dist/browser/modules/archive/shared/defaults.d.ts +12 -0
- package/dist/browser/modules/archive/{defaults.js → shared/defaults.js} +7 -0
- package/dist/browser/modules/archive/shared/errors.d.ts +118 -0
- package/dist/browser/modules/archive/shared/errors.js +171 -0
- package/dist/browser/modules/archive/shared/progress.d.ts +62 -0
- package/dist/browser/modules/archive/shared/progress.js +92 -0
- package/dist/browser/modules/archive/shared/text.d.ts +96 -0
- package/dist/browser/modules/archive/shared/text.js +262 -0
- package/dist/browser/modules/archive/tar/index.browser.d.ts +11 -0
- package/dist/browser/modules/archive/tar/index.browser.js +18 -0
- package/dist/browser/modules/archive/tar/index.d.ts +13 -0
- package/dist/browser/modules/archive/tar/index.js +16 -0
- package/dist/browser/modules/archive/tar/tar-archive.d.ts +234 -0
- package/dist/browser/modules/archive/tar/tar-archive.js +519 -0
- package/dist/browser/modules/archive/tar/tar-constants.d.ts +102 -0
- package/dist/browser/modules/archive/tar/tar-constants.js +59 -0
- package/dist/browser/modules/archive/tar/tar-entry-info.d.ts +55 -0
- package/dist/browser/modules/archive/tar/tar-entry-info.js +43 -0
- package/dist/browser/modules/archive/tar/tar-gzip.d.ts +64 -0
- package/dist/browser/modules/archive/tar/tar-gzip.js +119 -0
- package/dist/browser/modules/archive/tar/tar-header.d.ts +56 -0
- package/dist/browser/modules/archive/tar/tar-header.js +311 -0
- package/dist/browser/modules/archive/tar/tar-parser.d.ts +40 -0
- package/dist/browser/modules/archive/tar/tar-parser.js +366 -0
- package/dist/browser/modules/archive/unzip/extract.d.ts +15 -8
- package/dist/browser/modules/archive/unzip/extract.js +13 -3
- package/dist/browser/modules/archive/unzip/index.d.ts +28 -40
- package/dist/browser/modules/archive/unzip/index.js +3 -162
- package/dist/browser/modules/archive/unzip/parser-core.d.ts +117 -0
- package/dist/browser/modules/archive/unzip/parser-core.js +316 -0
- package/dist/browser/modules/archive/unzip/progress.d.ts +36 -0
- package/dist/browser/modules/archive/unzip/progress.js +1 -0
- package/dist/browser/modules/archive/unzip/stream.base.d.ts +25 -156
- package/dist/browser/modules/archive/unzip/stream.base.js +210 -440
- package/dist/browser/modules/archive/unzip/stream.browser.d.ts +3 -2
- package/dist/browser/modules/archive/unzip/stream.browser.js +107 -57
- package/dist/browser/modules/archive/unzip/stream.d.ts +5 -4
- package/dist/browser/modules/archive/unzip/stream.js +68 -8
- package/dist/browser/modules/archive/unzip/zip-extract-core.d.ts +90 -0
- package/dist/browser/modules/archive/unzip/zip-extract-core.js +475 -0
- package/dist/browser/modules/archive/unzip/zip-parser.d.ts +77 -7
- package/dist/browser/modules/archive/unzip/zip-parser.js +146 -242
- package/dist/browser/modules/archive/unzip/zip-reader.d.ts +103 -0
- package/dist/browser/modules/archive/unzip/zip-reader.js +435 -0
- package/dist/browser/modules/archive/zip/compressibility.d.ts +20 -0
- package/dist/browser/modules/archive/zip/compressibility.js +127 -0
- package/dist/browser/modules/archive/zip/index.d.ts +27 -42
- package/dist/browser/modules/archive/zip/index.js +5 -155
- package/dist/browser/modules/archive/zip/progress.d.ts +39 -0
- package/dist/browser/modules/archive/zip/progress.js +1 -0
- package/dist/browser/modules/archive/zip/raw-entry.d.ts +64 -0
- package/dist/browser/modules/archive/zip/raw-entry.js +9 -0
- package/dist/browser/modules/archive/zip/stream.d.ts +178 -26
- package/dist/browser/modules/archive/zip/stream.js +728 -72
- package/dist/browser/modules/archive/zip/writable-file.d.ts +97 -0
- package/dist/browser/modules/archive/zip/writable-file.js +9 -0
- package/dist/browser/modules/archive/zip/writer-core.d.ts +77 -0
- package/dist/browser/modules/archive/zip/writer-core.js +270 -0
- package/dist/browser/modules/archive/zip/zip-archive.d.ts +121 -0
- package/dist/browser/modules/archive/zip/zip-archive.js +448 -0
- package/dist/browser/modules/archive/zip/zip-bytes.d.ts +71 -4
- package/dist/browser/modules/archive/zip/zip-bytes.js +293 -116
- package/dist/browser/modules/archive/zip/zip-edit-plan.d.ts +123 -0
- package/dist/browser/modules/archive/zip/zip-edit-plan.js +183 -0
- package/dist/browser/modules/archive/zip/zip-edit-view.d.ts +155 -0
- package/dist/browser/modules/archive/zip/zip-edit-view.js +227 -0
- package/dist/browser/modules/archive/zip/zip-editor.d.ts +359 -0
- package/dist/browser/modules/archive/zip/zip-editor.js +758 -0
- package/dist/browser/modules/archive/zip/zip-entry-attributes.d.ts +10 -0
- package/dist/browser/modules/archive/zip/zip-entry-attributes.js +59 -0
- package/dist/browser/modules/archive/zip/zip-entry-metadata.d.ts +11 -2
- package/dist/browser/modules/archive/zip/zip-entry-metadata.js +29 -9
- package/dist/browser/modules/archive/zip/zip-entry-options.d.ts +47 -0
- package/dist/browser/modules/archive/zip/zip-entry-options.js +22 -0
- package/dist/browser/modules/archive/zip-spec/binary.d.ts +42 -0
- package/dist/browser/modules/archive/zip-spec/binary.js +126 -0
- package/dist/browser/modules/archive/{utils → zip-spec}/timestamps.d.ts +17 -2
- package/dist/browser/modules/archive/{utils → zip-spec}/timestamps.js +75 -15
- package/dist/browser/modules/archive/zip-spec/zip-entry-info.d.ts +47 -3
- package/dist/browser/modules/archive/zip-spec/zip-entry-info.js +6 -1
- package/dist/browser/modules/archive/zip-spec/zip-extra-fields.d.ts +90 -0
- package/dist/browser/modules/archive/zip-spec/zip-extra-fields.js +215 -0
- package/dist/browser/modules/archive/zip-spec/zip-parser-core.d.ts +147 -0
- package/dist/browser/modules/archive/zip-spec/zip-parser-core.js +361 -0
- package/dist/browser/modules/archive/zip-spec/zip-path.d.ts +15 -0
- package/dist/browser/modules/archive/zip-spec/zip-path.js +87 -0
- package/dist/browser/modules/archive/zip-spec/zip-records.d.ts +70 -0
- package/dist/browser/modules/archive/zip-spec/zip-records.js +154 -0
- package/dist/browser/modules/csv/constants.d.ts +18 -0
- package/dist/browser/modules/csv/constants.js +66 -0
- package/dist/browser/modules/csv/errors.d.ts +16 -0
- package/dist/browser/modules/csv/errors.js +22 -0
- package/dist/browser/modules/csv/format/config.d.ts +121 -0
- package/dist/browser/modules/csv/format/config.js +106 -0
- package/dist/browser/modules/csv/format/formatted-value.d.ts +82 -0
- package/dist/browser/modules/csv/format/formatted-value.js +76 -0
- package/dist/browser/modules/csv/format/formatter.d.ts +71 -0
- package/dist/browser/modules/csv/format/formatter.js +397 -0
- package/dist/browser/modules/csv/format/index.d.ts +10 -0
- package/dist/browser/modules/csv/format/index.js +12 -0
- package/dist/browser/modules/csv/index.d.ts +23 -0
- package/dist/browser/modules/csv/index.js +47 -0
- package/dist/browser/modules/csv/parse/async.d.ts +111 -0
- package/dist/browser/modules/csv/parse/async.js +288 -0
- package/dist/browser/modules/csv/parse/config.d.ts +100 -0
- package/dist/browser/modules/csv/parse/config.js +159 -0
- package/dist/browser/modules/csv/parse/helpers.d.ts +114 -0
- package/dist/browser/modules/csv/parse/helpers.js +225 -0
- package/dist/browser/modules/csv/parse/index.d.ts +16 -0
- package/dist/browser/modules/csv/parse/index.js +19 -0
- package/dist/browser/modules/csv/parse/lines.d.ts +23 -0
- package/dist/browser/modules/csv/parse/lines.js +82 -0
- package/dist/browser/modules/csv/parse/row-processor.d.ts +61 -0
- package/dist/browser/modules/csv/parse/row-processor.js +203 -0
- package/dist/browser/modules/csv/parse/scanner/index.d.ts +10 -0
- package/dist/browser/modules/csv/parse/scanner/index.js +12 -0
- package/dist/browser/modules/csv/parse/scanner/scanner.d.ts +154 -0
- package/dist/browser/modules/csv/parse/scanner/scanner.js +852 -0
- package/dist/browser/modules/csv/parse/scanner/types.d.ts +185 -0
- package/dist/browser/modules/csv/parse/scanner/types.js +25 -0
- package/dist/browser/modules/csv/parse/state.d.ts +46 -0
- package/dist/browser/modules/csv/parse/state.js +96 -0
- package/dist/browser/modules/csv/parse/sync.d.ts +59 -0
- package/dist/browser/modules/csv/parse/sync.js +429 -0
- package/dist/browser/modules/csv/stream/formatter.d.ts +55 -0
- package/dist/browser/modules/csv/stream/formatter.js +160 -0
- package/dist/browser/modules/csv/stream/index.d.ts +10 -0
- package/dist/browser/modules/csv/stream/index.js +16 -0
- package/dist/browser/modules/csv/stream/parser.d.ts +141 -0
- package/dist/browser/modules/csv/stream/parser.js +928 -0
- package/dist/browser/modules/csv/types.d.ts +438 -0
- package/dist/browser/modules/csv/types.js +67 -0
- package/dist/browser/modules/csv/utils/detect.d.ts +100 -0
- package/dist/browser/modules/csv/utils/detect.js +325 -0
- package/dist/browser/modules/csv/utils/dynamic-typing.d.ts +71 -0
- package/dist/browser/modules/csv/utils/dynamic-typing.js +297 -0
- package/dist/browser/modules/csv/utils/generate.d.ts +306 -0
- package/dist/browser/modules/csv/utils/generate.js +960 -0
- package/dist/browser/modules/csv/utils/number.d.ts +36 -0
- package/dist/browser/modules/csv/utils/number.js +49 -0
- package/dist/browser/modules/csv/utils/row.d.ts +111 -0
- package/dist/browser/modules/csv/utils/row.js +255 -0
- package/dist/browser/modules/csv/worker/index.browser.d.ts +6 -0
- package/dist/browser/modules/csv/worker/index.browser.js +5 -0
- package/dist/browser/modules/csv/worker/index.d.ts +7 -0
- package/dist/browser/modules/csv/worker/index.js +6 -0
- package/dist/browser/modules/csv/worker/pool.browser.d.ts +193 -0
- package/dist/browser/modules/csv/worker/pool.browser.js +602 -0
- package/dist/browser/modules/csv/worker/pool.d.ts +14 -0
- package/dist/browser/modules/csv/worker/pool.js +54 -0
- package/dist/browser/modules/csv/worker/types.d.ts +195 -0
- package/dist/browser/modules/csv/worker/types.js +7 -0
- package/dist/browser/modules/csv/worker/worker-script.bundle.d.ts +10 -0
- package/dist/browser/modules/csv/worker/worker-script.bundle.js +41 -0
- package/dist/browser/modules/csv/worker/worker-script.generated.d.ts +6 -0
- package/dist/browser/modules/csv/worker/worker-script.generated.js +6 -0
- package/dist/browser/modules/csv/worker/worker.entry.d.ts +11 -0
- package/dist/browser/modules/csv/worker/worker.entry.js +413 -0
- package/dist/browser/modules/excel/anchor.d.ts +1 -1
- package/dist/browser/modules/excel/cell.d.ts +7 -7
- package/dist/browser/modules/excel/cell.js +4 -3
- package/dist/browser/modules/excel/column.d.ts +3 -3
- package/dist/browser/modules/excel/defined-names.d.ts +4 -4
- package/dist/browser/modules/excel/errors.d.ts +133 -0
- package/dist/browser/modules/excel/errors.js +176 -0
- package/dist/browser/modules/excel/form-control.d.ts +1 -1
- package/dist/browser/modules/excel/image.d.ts +2 -2
- package/dist/browser/modules/excel/image.js +2 -1
- package/dist/browser/modules/excel/pivot-table.d.ts +1 -1
- package/dist/browser/modules/excel/pivot-table.js +8 -7
- package/dist/browser/modules/excel/range.d.ts +1 -1
- package/dist/browser/modules/excel/range.js +2 -1
- package/dist/browser/modules/excel/row.d.ts +3 -3
- package/dist/browser/modules/excel/row.js +2 -1
- package/dist/browser/modules/excel/stream/hyperlink-reader.d.ts +2 -2
- package/dist/browser/modules/excel/stream/hyperlink-reader.js +1 -1
- package/dist/browser/modules/excel/stream/workbook-reader.browser.d.ts +6 -5
- package/dist/browser/modules/excel/stream/workbook-reader.browser.js +14 -3
- package/dist/browser/modules/excel/stream/workbook-reader.d.ts +5 -5
- package/dist/browser/modules/excel/stream/workbook-reader.js +10 -9
- package/dist/browser/modules/excel/stream/workbook-writer.browser.d.ts +16 -14
- package/dist/browser/modules/excel/stream/workbook-writer.browser.js +13 -6
- package/dist/browser/modules/excel/stream/workbook-writer.d.ts +3 -3
- package/dist/browser/modules/excel/stream/workbook-writer.js +5 -6
- package/dist/browser/modules/excel/stream/worksheet-reader.d.ts +6 -6
- package/dist/browser/modules/excel/stream/worksheet-reader.js +8 -3
- package/dist/browser/modules/excel/stream/worksheet-writer.d.ts +5 -5
- package/dist/browser/modules/excel/stream/worksheet-writer.js +5 -4
- package/dist/browser/modules/excel/table.d.ts +4 -2
- package/dist/browser/modules/excel/table.js +52 -53
- package/dist/browser/modules/excel/types.d.ts +3 -1
- package/dist/browser/modules/excel/utils/cell-matrix.js +5 -4
- package/dist/browser/modules/excel/utils/col-cache.d.ts +1 -1
- package/dist/browser/modules/excel/utils/col-cache.js +7 -6
- package/dist/browser/modules/excel/utils/encryptor.browser.js +1 -1
- package/dist/browser/modules/excel/utils/encryptor.js +1 -1
- package/dist/browser/modules/excel/utils/ooxml-validator.js +8 -6
- package/dist/browser/modules/excel/utils/parse-sax.js +36 -27
- package/dist/browser/modules/excel/utils/sheet-utils.d.ts +8 -20
- package/dist/browser/modules/excel/utils/sheet-utils.js +1 -59
- package/dist/browser/modules/excel/utils/stream-buf.d.ts +2 -3
- package/dist/browser/modules/excel/utils/stream-buf.js +13 -20
- package/dist/browser/modules/excel/utils/xml-stream.js +3 -2
- package/dist/browser/modules/excel/workbook.browser.d.ts +327 -0
- package/dist/browser/modules/excel/workbook.browser.js +790 -0
- package/dist/browser/modules/excel/workbook.d.ts +15 -188
- package/dist/browser/modules/excel/workbook.js +39 -302
- package/dist/browser/modules/excel/worksheet.d.ts +11 -11
- package/dist/browser/modules/excel/worksheet.js +8 -7
- package/dist/browser/modules/excel/xlsx/xform/base-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/base-xform.js +0 -1
- package/dist/browser/modules/excel/xlsx/xform/book/defined-name-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/book/sheet-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/book/workbook-calc-properties-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/book/workbook-pivot-cache-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/book/workbook-properties-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/book/workbook-view-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/book/workbook-xform.d.ts +2 -2
- package/dist/browser/modules/excel/xlsx/xform/comment/comment-xform.d.ts +2 -2
- package/dist/browser/modules/excel/xlsx/xform/comment/comments-xform.d.ts +2 -2
- package/dist/browser/modules/excel/xlsx/xform/comment/style/vml-position-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/comment/style/vml-protection-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/comment/vml-anchor-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/comment/vml-client-data-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/comment/vml-notes-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/comment/vml-shape-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/comment/vml-textbox-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/composite-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/core/app-heading-pairs-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/core/app-titles-of-parts-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/core/app-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/core/content-types-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/core/core-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/core/feature-property-bag-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/core/relationship-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/core/relationships-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/core/relationships-xform.js +3 -2
- package/dist/browser/modules/excel/xlsx/xform/drawing/base-cell-anchor-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/drawing/blip-fill-xform.d.ts +2 -2
- package/dist/browser/modules/excel/xlsx/xform/drawing/blip-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/drawing/c-nv-pic-pr-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/drawing/c-nv-pr-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/drawing/cell-position-xform.d.ts +2 -2
- package/dist/browser/modules/excel/xlsx/xform/drawing/ctrl-prop-xform.d.ts +2 -2
- package/dist/browser/modules/excel/xlsx/xform/drawing/drawing-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/drawing/ext-lst-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/drawing/ext-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/drawing/hlink-click-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/drawing/nv-pic-pr-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/drawing/one-cell-anchor-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/drawing/pic-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/drawing/sp-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/drawing/two-cell-anchor-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/drawing/vml-drawing-xform.d.ts +2 -2
- package/dist/browser/modules/excel/xlsx/xform/list-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/list-xform.js +2 -1
- package/dist/browser/modules/excel/xlsx/xform/pivot-table/cache-field-xform.d.ts +2 -2
- package/dist/browser/modules/excel/xlsx/xform/pivot-table/cache-field.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/pivot-table/pivot-cache-definition-xform.d.ts +3 -3
- package/dist/browser/modules/excel/xlsx/xform/pivot-table/pivot-cache-records-xform.d.ts +3 -3
- package/dist/browser/modules/excel/xlsx/xform/pivot-table/pivot-cache-records-xform.js +2 -1
- package/dist/browser/modules/excel/xlsx/xform/pivot-table/pivot-table-xform.d.ts +3 -3
- package/dist/browser/modules/excel/xlsx/xform/sheet/auto-filter-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/cell-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/cell-xform.js +10 -4
- package/dist/browser/modules/excel/xlsx/xform/sheet/cf/cf-rule-xform.d.ts +6 -6
- package/dist/browser/modules/excel/xlsx/xform/sheet/cf/cfvo-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/cf/color-scale-xform.d.ts +3 -3
- package/dist/browser/modules/excel/xlsx/xform/sheet/cf/conditional-formatting-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/cf/conditional-formattings-xform.d.ts +2 -2
- package/dist/browser/modules/excel/xlsx/xform/sheet/cf/databar-xform.d.ts +3 -3
- package/dist/browser/modules/excel/xlsx/xform/sheet/cf/ext-lst-ref-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/cf/formula-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/cf/icon-set-xform.d.ts +2 -2
- package/dist/browser/modules/excel/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.d.ts +3 -3
- package/dist/browser/modules/excel/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.d.ts +2 -2
- package/dist/browser/modules/excel/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.d.ts +3 -3
- package/dist/browser/modules/excel/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.d.ts +2 -2
- package/dist/browser/modules/excel/xlsx/xform/sheet/cf-ext/databar-ext-xform.d.ts +3 -3
- package/dist/browser/modules/excel/xlsx/xform/sheet/cf-ext/f-ext-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.d.ts +3 -3
- package/dist/browser/modules/excel/xlsx/xform/sheet/cf-ext/sqref-ext-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/col-breaks-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/col-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/data-validations-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/dimension-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/drawing-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/ext-lst-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/header-footer-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/hyperlink-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/merge-cell-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/outline-properties-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/page-breaks-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/page-margins-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/page-setup-properties-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/page-setup-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/picture-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/print-options-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/row-breaks-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/row-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/row-xform.js +2 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/sheet-format-properties-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/sheet-properties-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/sheet-protection-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/sheet-view-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/table-part-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/sheet/worksheet-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/simple/boolean-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/simple/date-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/simple/float-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/simple/integer-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/simple/string-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/static-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/strings/phonetic-text-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/strings/rich-text-xform.d.ts +3 -3
- package/dist/browser/modules/excel/xlsx/xform/strings/shared-string-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/strings/shared-strings-xform.d.ts +2 -2
- package/dist/browser/modules/excel/xlsx/xform/strings/shared-strings-xform.js +3 -2
- package/dist/browser/modules/excel/xlsx/xform/strings/text-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/strings/text-xform.js +3 -4
- package/dist/browser/modules/excel/xlsx/xform/style/alignment-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/style/border-xform.d.ts +2 -2
- package/dist/browser/modules/excel/xlsx/xform/style/color-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/style/dxf-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/style/fill-xform.d.ts +2 -2
- package/dist/browser/modules/excel/xlsx/xform/style/font-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/style/numfmt-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/style/numfmt-xform.js +8 -2
- package/dist/browser/modules/excel/xlsx/xform/style/protection-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/style/style-xform.d.ts +3 -3
- package/dist/browser/modules/excel/xlsx/xform/style/styles-xform.d.ts +2 -2
- package/dist/browser/modules/excel/xlsx/xform/style/styles-xform.js +2 -1
- package/dist/browser/modules/excel/xlsx/xform/style/underline-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/table/auto-filter-xform.d.ts +2 -2
- package/dist/browser/modules/excel/xlsx/xform/table/auto-filter-xform.js +3 -2
- package/dist/browser/modules/excel/xlsx/xform/table/custom-filter-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/table/filter-column-xform.d.ts +2 -2
- package/dist/browser/modules/excel/xlsx/xform/table/filter-column-xform.js +2 -1
- package/dist/browser/modules/excel/xlsx/xform/table/filter-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/table/table-column-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/table/table-style-info-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xform/table/table-xform.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xlsx.browser.d.ts +4 -4
- package/dist/browser/modules/excel/xlsx/xlsx.browser.js +11 -9
- package/dist/browser/modules/excel/xlsx/xlsx.d.ts +1 -1
- package/dist/browser/modules/excel/xlsx/xlsx.js +6 -6
- package/dist/browser/modules/stream/browser/_lazy.d.ts +18 -0
- package/dist/browser/modules/stream/browser/_lazy.js +30 -0
- package/dist/browser/modules/stream/browser/chunk-buffer.d.ts +61 -0
- package/dist/browser/modules/stream/browser/chunk-buffer.js +223 -0
- package/dist/browser/modules/stream/browser/collector.d.ts +25 -0
- package/dist/browser/modules/stream/browser/collector.js +66 -0
- package/dist/browser/modules/stream/browser/compose.d.ts +19 -0
- package/dist/browser/modules/stream/browser/compose.js +231 -0
- package/dist/browser/modules/stream/browser/duplex.d.ts +296 -0
- package/dist/browser/modules/stream/browser/duplex.js +966 -0
- package/dist/browser/modules/stream/browser/factories.d.ts +80 -0
- package/dist/browser/modules/stream/browser/factories.js +212 -0
- package/dist/browser/modules/stream/browser/helpers.d.ts +13 -0
- package/dist/browser/modules/stream/browser/helpers.js +44 -0
- package/dist/browser/modules/stream/browser/microtask-context.d.ts +44 -0
- package/dist/browser/modules/stream/browser/microtask-context.js +60 -0
- package/dist/browser/modules/stream/browser/passthrough.d.ts +15 -0
- package/dist/browser/modules/stream/browser/passthrough.js +19 -0
- package/dist/browser/modules/stream/browser/pipe-manager.d.ts +38 -0
- package/dist/browser/modules/stream/browser/pipe-manager.js +158 -0
- package/dist/browser/modules/stream/browser/pipeline.d.ts +51 -0
- package/dist/browser/modules/stream/browser/pipeline.js +486 -0
- package/dist/browser/modules/stream/browser/readable.d.ts +379 -0
- package/dist/browser/modules/stream/browser/readable.js +2173 -0
- package/dist/browser/modules/stream/browser/transform.d.ts +314 -0
- package/dist/browser/modules/stream/browser/transform.js +1235 -0
- package/dist/browser/modules/stream/browser/utils.d.ts +62 -0
- package/dist/browser/modules/stream/browser/utils.js +256 -0
- package/dist/browser/modules/stream/browser/writable.d.ts +235 -0
- package/dist/browser/modules/stream/browser/writable.js +1302 -0
- package/dist/browser/modules/stream/buffered-stream.d.ts +6 -5
- package/dist/browser/modules/stream/buffered-stream.js +28 -10
- package/dist/browser/modules/stream/chunked-builder.d.ts +9 -2
- package/dist/browser/modules/stream/chunked-builder.js +16 -3
- package/dist/browser/modules/stream/common/add-abort-signal.d.ts +18 -0
- package/dist/browser/modules/stream/common/add-abort-signal.js +45 -0
- package/dist/browser/modules/stream/common/binary-chunk.d.ts +21 -0
- package/dist/browser/modules/stream/common/binary-chunk.js +150 -0
- package/dist/browser/modules/stream/common/consumers.d.ts +26 -0
- package/dist/browser/modules/stream/common/consumers.js +41 -0
- package/dist/browser/modules/stream/common/end-args.d.ts +20 -0
- package/dist/browser/modules/stream/common/end-args.js +24 -0
- package/dist/browser/modules/stream/common/finished-all.d.ts +10 -0
- package/dist/browser/modules/stream/common/finished-all.js +25 -0
- package/dist/browser/modules/stream/common/options.d.ts +18 -0
- package/dist/browser/modules/stream/common/options.js +21 -0
- package/dist/browser/modules/stream/common/type-guards.d.ts +21 -0
- package/dist/browser/modules/stream/common/type-guards.js +68 -0
- package/dist/browser/modules/stream/common/utils.d.ts +32 -0
- package/dist/browser/modules/stream/common/utils.js +63 -0
- package/dist/browser/modules/stream/errors.d.ts +40 -0
- package/dist/browser/modules/stream/errors.js +50 -0
- package/dist/browser/modules/stream/index.base.d.ts +17 -0
- package/dist/browser/modules/stream/index.base.js +15 -0
- package/dist/browser/modules/stream/index.browser.d.ts +13 -8
- package/dist/browser/modules/stream/index.browser.js +21 -5
- package/dist/browser/modules/stream/index.d.ts +11 -9
- package/dist/browser/modules/stream/index.js +17 -5
- package/dist/browser/modules/stream/internal/event-utils.d.ts +2 -8
- package/dist/browser/modules/stream/internal/evented-readable-to-async-iterable.d.ts +18 -0
- package/dist/browser/modules/stream/internal/evented-readable-to-async-iterable.js +133 -0
- package/dist/browser/modules/stream/node/collector.d.ts +30 -0
- package/dist/browser/modules/stream/node/collector.js +70 -0
- package/dist/browser/modules/stream/node/compose.d.ts +10 -0
- package/dist/browser/modules/stream/node/compose.js +210 -0
- package/dist/browser/modules/stream/node/factories.d.ts +75 -0
- package/dist/browser/modules/stream/node/factories.js +222 -0
- package/dist/browser/modules/stream/node/pipeline.d.ts +25 -0
- package/dist/browser/modules/stream/node/pipeline.js +110 -0
- package/dist/browser/modules/stream/node/utils.d.ts +63 -0
- package/dist/browser/modules/stream/node/utils.js +253 -0
- package/dist/browser/modules/stream/node/writable.d.ts +47 -0
- package/dist/browser/modules/stream/node/writable.js +119 -0
- package/dist/browser/modules/stream/pull-stream.d.ts +5 -7
- package/dist/browser/modules/stream/pull-stream.js +37 -55
- package/dist/browser/modules/stream/types.d.ts +26 -37
- package/dist/browser/modules/stream/utils.base.d.ts +60 -0
- package/dist/browser/modules/stream/utils.base.js +123 -0
- package/dist/browser/modules/stream/utils.browser.d.ts +22 -0
- package/dist/browser/modules/stream/utils.browser.js +80 -0
- package/dist/browser/modules/stream/utils.d.ts +17 -18
- package/dist/browser/modules/stream/utils.js +66 -37
- package/dist/browser/utils/binary.d.ts +108 -0
- package/dist/browser/utils/binary.js +429 -0
- package/dist/browser/utils/errors.d.ts +114 -0
- package/dist/browser/utils/errors.js +206 -0
- package/dist/browser/{modules/stream → utils}/event-emitter.d.ts +3 -1
- package/dist/{esm/modules/stream → browser/utils}/event-emitter.js +89 -58
- package/dist/browser/utils/fs.browser.d.ts +73 -0
- package/dist/browser/utils/fs.browser.js +102 -0
- package/dist/browser/utils/fs.d.ts +285 -0
- package/dist/browser/utils/fs.js +526 -0
- package/dist/browser/utils/glob.d.ts +82 -0
- package/dist/browser/utils/glob.js +244 -0
- package/dist/browser/utils/utils.base.d.ts +19 -0
- package/dist/browser/utils/utils.base.js +47 -8
- package/dist/browser/utils/utils.browser.d.ts +2 -2
- package/dist/browser/utils/utils.browser.js +3 -7
- package/dist/browser/utils/utils.d.ts +2 -2
- package/dist/browser/utils/utils.js +3 -14
- package/dist/cjs/index.js +63 -4
- package/dist/cjs/modules/archive/compression/compress.base.js +252 -2
- package/dist/cjs/modules/archive/compression/compress.browser.js +378 -50
- package/dist/cjs/modules/archive/compression/compress.js +210 -22
- package/dist/cjs/modules/archive/compression/crc32.base.js +13 -0
- package/dist/cjs/modules/archive/compression/crc32.browser.js +8 -0
- package/dist/cjs/modules/archive/compression/crc32.js +42 -10
- package/dist/cjs/modules/archive/compression/deflate-fallback.js +222 -79
- package/dist/cjs/modules/archive/compression/streaming-compress.base.js +4 -4
- package/dist/cjs/modules/archive/compression/streaming-compress.browser.js +221 -201
- package/dist/cjs/modules/archive/compression/streaming-compress.js +88 -27
- package/dist/cjs/modules/archive/compression/worker-pool/index.browser.js +17 -0
- package/dist/cjs/modules/archive/compression/worker-pool/index.js +65 -0
- package/dist/cjs/modules/archive/compression/worker-pool/pool.base.js +63 -0
- package/dist/cjs/modules/archive/compression/worker-pool/pool.browser.js +867 -0
- package/dist/cjs/modules/archive/compression/worker-pool/types.js +8 -0
- package/dist/cjs/modules/archive/compression/worker-pool/worker-script.js +342 -0
- package/dist/cjs/modules/archive/crypto/aes.js +406 -0
- package/dist/cjs/modules/archive/crypto/index.js +51 -0
- package/dist/cjs/modules/archive/crypto/types.js +53 -0
- package/dist/cjs/modules/archive/crypto/zip-crypto.js +218 -0
- package/dist/cjs/modules/archive/formats/index.js +32 -0
- package/dist/cjs/modules/archive/formats/types.js +2 -0
- package/dist/cjs/modules/archive/fs/archive-file.js +2721 -0
- package/dist/cjs/modules/archive/fs/index.js +96 -0
- package/dist/cjs/modules/archive/fs/types.js +10 -0
- package/dist/cjs/modules/archive/index.base.js +87 -1
- package/dist/cjs/modules/archive/index.browser.js +38 -1
- package/dist/cjs/modules/archive/index.js +50 -1
- package/dist/cjs/modules/archive/io/archive-sink.js +5 -4
- package/dist/cjs/modules/archive/io/archive-source.js +164 -13
- package/dist/cjs/modules/archive/io/archive-source.node.js +13 -0
- package/dist/cjs/modules/archive/io/random-access.js +308 -0
- package/dist/cjs/modules/archive/io/remote-zip-reader.js +787 -0
- package/dist/cjs/modules/archive/{utils → shared}/async-queue.js +40 -8
- package/dist/cjs/modules/archive/{internal → shared}/byte-queue.js +59 -30
- package/dist/cjs/modules/archive/{utils → shared}/bytes.js +15 -27
- package/dist/cjs/modules/archive/shared/defaults.js +16 -0
- package/dist/cjs/modules/archive/shared/errors.js +197 -0
- package/dist/cjs/modules/archive/shared/progress.js +96 -0
- package/dist/cjs/modules/archive/shared/text.js +273 -0
- package/dist/cjs/modules/archive/tar/index.browser.js +45 -0
- package/dist/cjs/modules/archive/tar/index.js +38 -0
- package/dist/cjs/modules/archive/tar/tar-archive.js +530 -0
- package/dist/cjs/modules/archive/tar/tar-constants.js +62 -0
- package/dist/cjs/modules/archive/tar/tar-entry-info.js +50 -0
- package/dist/cjs/modules/archive/tar/tar-gzip.js +127 -0
- package/dist/cjs/modules/archive/tar/tar-header.js +320 -0
- package/dist/cjs/modules/archive/tar/tar-parser.js +371 -0
- package/dist/cjs/modules/archive/unzip/extract.js +13 -3
- package/dist/cjs/modules/archive/unzip/index.js +5 -164
- package/dist/cjs/modules/archive/unzip/parser-core.js +342 -0
- package/dist/cjs/modules/archive/unzip/progress.js +2 -0
- package/dist/cjs/modules/archive/unzip/stream.base.js +224 -468
- package/dist/cjs/modules/archive/unzip/stream.browser.js +109 -59
- package/dist/cjs/modules/archive/unzip/stream.js +68 -8
- package/dist/cjs/modules/archive/unzip/zip-extract-core.js +483 -0
- package/dist/cjs/modules/archive/unzip/zip-parser.js +148 -244
- package/dist/cjs/modules/archive/unzip/zip-reader.js +441 -0
- package/dist/cjs/modules/archive/zip/compressibility.js +131 -0
- package/dist/cjs/modules/archive/zip/index.js +11 -157
- package/dist/cjs/modules/archive/zip/progress.js +2 -0
- package/dist/cjs/modules/archive/zip/raw-entry.js +12 -0
- package/dist/cjs/modules/archive/zip/stream.js +727 -70
- package/dist/cjs/modules/archive/zip/writable-file.js +10 -0
- package/dist/cjs/modules/archive/zip/writer-core.js +275 -0
- package/dist/cjs/modules/archive/zip/zip-archive.js +453 -0
- package/dist/cjs/modules/archive/zip/zip-bytes.js +291 -114
- package/dist/cjs/modules/archive/zip/zip-edit-plan.js +187 -0
- package/dist/cjs/modules/archive/zip/zip-edit-view.js +231 -0
- package/dist/cjs/modules/archive/zip/zip-editor.js +764 -0
- package/dist/cjs/modules/archive/zip/zip-entry-attributes.js +62 -0
- package/dist/cjs/modules/archive/zip/zip-entry-metadata.js +28 -8
- package/dist/cjs/modules/archive/zip/zip-entry-options.js +25 -0
- package/dist/cjs/modules/archive/zip-spec/binary.js +134 -0
- package/dist/cjs/modules/archive/{utils → zip-spec}/timestamps.js +78 -17
- package/dist/cjs/modules/archive/zip-spec/zip-entry-info.js +7 -0
- package/dist/cjs/modules/archive/zip-spec/zip-extra-fields.js +221 -0
- package/dist/cjs/modules/archive/zip-spec/zip-parser-core.js +374 -0
- package/dist/cjs/modules/archive/zip-spec/zip-path.js +91 -0
- package/dist/cjs/modules/archive/zip-spec/zip-records.js +166 -1
- package/dist/cjs/modules/csv/constants.js +70 -0
- package/dist/cjs/modules/csv/errors.js +27 -0
- package/dist/cjs/modules/csv/format/config.js +111 -0
- package/dist/cjs/modules/csv/format/formatted-value.js +81 -0
- package/dist/cjs/modules/csv/format/formatter.js +404 -0
- package/dist/cjs/modules/csv/format/index.js +18 -0
- package/dist/cjs/modules/csv/index.js +83 -0
- package/dist/cjs/modules/csv/parse/async.js +293 -0
- package/dist/cjs/modules/csv/parse/config.js +165 -0
- package/dist/cjs/modules/csv/parse/helpers.js +232 -0
- package/dist/cjs/modules/csv/parse/index.js +35 -0
- package/dist/cjs/modules/csv/parse/lines.js +85 -0
- package/dist/cjs/modules/csv/parse/row-processor.js +211 -0
- package/dist/cjs/modules/csv/parse/scanner/index.js +22 -0
- package/dist/cjs/modules/csv/parse/scanner/scanner.js +862 -0
- package/dist/cjs/modules/csv/parse/scanner/types.js +29 -0
- package/dist/cjs/modules/csv/parse/state.js +101 -0
- package/dist/cjs/modules/csv/parse/sync.js +434 -0
- package/dist/cjs/modules/csv/stream/formatter.js +165 -0
- package/dist/cjs/modules/csv/stream/index.js +23 -0
- package/dist/cjs/modules/csv/stream/parser.js +933 -0
- package/dist/cjs/modules/csv/types.js +75 -0
- package/dist/cjs/modules/csv/utils/detect.js +334 -0
- package/dist/cjs/modules/csv/utils/dynamic-typing.js +305 -0
- package/dist/cjs/modules/csv/utils/generate.js +967 -0
- package/dist/cjs/modules/csv/utils/number.js +53 -0
- package/dist/cjs/modules/csv/utils/row.js +270 -0
- package/dist/cjs/modules/csv/worker/index.browser.js +17 -0
- package/dist/cjs/modules/csv/worker/index.js +16 -0
- package/dist/cjs/modules/csv/worker/pool.browser.js +607 -0
- package/dist/cjs/modules/csv/worker/pool.js +62 -0
- package/dist/cjs/modules/csv/worker/types.js +8 -0
- package/dist/cjs/modules/csv/worker/worker-script.bundle.js +78 -0
- package/dist/cjs/modules/csv/worker/worker-script.generated.js +9 -0
- package/dist/cjs/modules/csv/worker/worker.entry.js +415 -0
- package/dist/cjs/modules/excel/cell.js +4 -3
- package/dist/cjs/modules/excel/errors.js +196 -0
- package/dist/cjs/modules/excel/image.js +2 -1
- package/dist/cjs/modules/excel/pivot-table.js +8 -7
- package/dist/cjs/modules/excel/range.js +2 -1
- package/dist/cjs/modules/excel/row.js +2 -1
- package/dist/cjs/modules/excel/stream/hyperlink-reader.js +2 -2
- package/dist/cjs/modules/excel/stream/workbook-reader.browser.js +14 -3
- package/dist/cjs/modules/excel/stream/workbook-reader.js +10 -12
- package/dist/cjs/modules/excel/stream/workbook-writer.browser.js +13 -6
- package/dist/cjs/modules/excel/stream/workbook-writer.js +5 -9
- package/dist/cjs/modules/excel/stream/worksheet-reader.js +8 -3
- package/dist/cjs/modules/excel/stream/worksheet-writer.js +5 -4
- package/dist/cjs/modules/excel/table.js +52 -53
- package/dist/cjs/modules/excel/utils/cell-matrix.js +5 -4
- package/dist/cjs/modules/excel/utils/col-cache.js +7 -6
- package/dist/cjs/modules/excel/utils/encryptor.browser.js +2 -2
- package/dist/cjs/modules/excel/utils/encryptor.js +2 -2
- package/dist/cjs/modules/excel/utils/ooxml-validator.js +8 -6
- package/dist/cjs/modules/excel/utils/parse-sax.js +36 -27
- package/dist/cjs/modules/excel/utils/sheet-utils.js +0 -59
- package/dist/cjs/modules/excel/utils/stream-buf.js +14 -21
- package/dist/cjs/modules/excel/utils/xml-stream.js +3 -2
- package/dist/cjs/modules/excel/workbook.browser.js +793 -0
- package/dist/cjs/modules/excel/workbook.js +39 -302
- package/dist/cjs/modules/excel/worksheet.js +8 -7
- package/dist/cjs/modules/excel/xlsx/xform/base-xform.js +0 -1
- package/dist/cjs/modules/excel/xlsx/xform/core/relationships-xform.js +3 -2
- package/dist/cjs/modules/excel/xlsx/xform/list-xform.js +2 -1
- package/dist/cjs/modules/excel/xlsx/xform/pivot-table/pivot-cache-records-xform.js +2 -1
- package/dist/cjs/modules/excel/xlsx/xform/sheet/cell-xform.js +9 -3
- package/dist/cjs/modules/excel/xlsx/xform/sheet/row-xform.js +2 -1
- package/dist/cjs/modules/excel/xlsx/xform/strings/shared-strings-xform.js +3 -2
- package/dist/cjs/modules/excel/xlsx/xform/strings/text-xform.js +3 -4
- package/dist/cjs/modules/excel/xlsx/xform/style/numfmt-xform.js +8 -2
- package/dist/cjs/modules/excel/xlsx/xform/style/styles-xform.js +2 -1
- package/dist/cjs/modules/excel/xlsx/xform/table/auto-filter-xform.js +3 -2
- package/dist/cjs/modules/excel/xlsx/xform/table/filter-column-xform.js +2 -1
- package/dist/cjs/modules/excel/xlsx/xlsx.browser.js +12 -10
- package/dist/cjs/modules/excel/xlsx/xlsx.js +7 -10
- package/dist/cjs/modules/stream/browser/_lazy.js +34 -0
- package/dist/cjs/modules/stream/browser/chunk-buffer.js +227 -0
- package/dist/cjs/modules/stream/browser/collector.js +71 -0
- package/dist/cjs/modules/stream/browser/compose.js +234 -0
- package/dist/cjs/modules/stream/browser/duplex.js +970 -0
- package/dist/cjs/modules/stream/browser/factories.js +229 -0
- package/dist/cjs/modules/stream/browser/helpers.js +50 -0
- package/dist/cjs/modules/stream/browser/microtask-context.js +64 -0
- package/dist/cjs/modules/stream/browser/passthrough.js +23 -0
- package/dist/cjs/modules/stream/browser/pipe-manager.js +162 -0
- package/dist/cjs/modules/stream/browser/pipeline.js +493 -0
- package/dist/cjs/modules/stream/browser/readable.js +2179 -0
- package/dist/cjs/modules/stream/browser/transform.js +1239 -0
- package/dist/cjs/modules/stream/browser/utils.js +267 -0
- package/dist/cjs/modules/stream/browser/writable.js +1307 -0
- package/dist/cjs/modules/stream/buffered-stream.js +31 -13
- package/dist/cjs/modules/stream/chunked-builder.js +17 -4
- package/dist/cjs/modules/stream/common/add-abort-signal.js +48 -0
- package/dist/cjs/modules/stream/common/binary-chunk.js +156 -0
- package/dist/cjs/modules/stream/common/consumers.js +44 -0
- package/dist/cjs/modules/stream/common/end-args.js +27 -0
- package/dist/cjs/modules/stream/common/finished-all.js +28 -0
- package/dist/cjs/modules/stream/common/options.js +25 -0
- package/dist/cjs/modules/stream/common/type-guards.js +73 -0
- package/dist/cjs/modules/stream/common/utils.js +70 -0
- package/dist/cjs/modules/stream/errors.js +58 -0
- package/dist/cjs/modules/stream/index.base.js +45 -0
- package/dist/cjs/modules/stream/index.browser.js +80 -80
- package/dist/cjs/modules/stream/index.js +76 -80
- package/dist/cjs/modules/stream/internal/evented-readable-to-async-iterable.js +136 -0
- package/dist/cjs/modules/stream/node/collector.js +75 -0
- package/dist/cjs/modules/stream/node/compose.js +213 -0
- package/dist/cjs/modules/stream/node/factories.js +240 -0
- package/dist/cjs/modules/stream/node/pipeline.js +117 -0
- package/dist/cjs/modules/stream/node/utils.js +264 -0
- package/dist/cjs/modules/stream/node/writable.js +124 -0
- package/dist/cjs/modules/stream/pull-stream.js +37 -55
- package/dist/cjs/modules/stream/utils.base.js +136 -0
- package/dist/cjs/modules/stream/utils.browser.js +93 -0
- package/dist/cjs/modules/stream/utils.js +69 -38
- package/dist/cjs/utils/binary.js +445 -0
- package/dist/cjs/utils/errors.js +220 -0
- package/dist/cjs/{modules/stream → utils}/event-emitter.js +89 -58
- package/dist/cjs/utils/fs.browser.js +139 -0
- package/dist/cjs/utils/fs.js +602 -0
- package/dist/cjs/utils/glob.js +252 -0
- package/dist/cjs/utils/utils.base.js +49 -8
- package/dist/cjs/utils/utils.browser.js +6 -8
- package/dist/cjs/utils/utils.js +6 -18
- package/dist/esm/index.browser.js +21 -13
- package/dist/esm/index.js +21 -1
- package/dist/esm/modules/archive/compression/compress.base.js +242 -3
- package/dist/esm/modules/archive/compression/compress.browser.js +363 -54
- package/dist/esm/modules/archive/compression/compress.js +182 -23
- package/dist/esm/modules/archive/compression/crc32.base.js +12 -0
- package/dist/esm/modules/archive/compression/crc32.browser.js +7 -0
- package/dist/esm/modules/archive/compression/crc32.js +42 -11
- package/dist/esm/modules/archive/compression/deflate-fallback.js +219 -78
- package/dist/esm/modules/archive/compression/streaming-compress.base.js +2 -3
- package/dist/esm/modules/archive/compression/streaming-compress.browser.js +225 -202
- package/dist/esm/modules/archive/compression/streaming-compress.js +83 -28
- package/dist/esm/modules/archive/compression/worker-pool/index.browser.js +6 -0
- package/dist/esm/modules/archive/compression/worker-pool/index.js +53 -0
- package/dist/esm/modules/archive/compression/worker-pool/pool.base.js +56 -0
- package/dist/esm/modules/archive/compression/worker-pool/pool.browser.js +857 -0
- package/dist/esm/modules/archive/compression/worker-pool/types.js +7 -0
- package/dist/esm/modules/archive/compression/worker-pool/worker-script.js +337 -0
- package/dist/esm/modules/archive/crypto/aes.js +394 -0
- package/dist/esm/modules/archive/crypto/index.js +20 -0
- package/dist/esm/modules/archive/crypto/types.js +47 -0
- package/dist/esm/modules/archive/crypto/zip-crypto.js +203 -0
- package/dist/esm/modules/archive/formats/index.js +28 -0
- package/dist/esm/modules/archive/formats/types.js +1 -0
- package/dist/esm/modules/archive/fs/archive-file.js +2684 -0
- package/dist/esm/modules/archive/fs/index.js +61 -0
- package/dist/esm/modules/archive/fs/types.js +9 -0
- package/dist/esm/modules/archive/index.base.js +26 -1
- package/dist/esm/modules/archive/index.browser.js +10 -2
- package/dist/esm/modules/archive/index.js +16 -2
- package/dist/esm/modules/archive/io/archive-sink.js +4 -3
- package/dist/esm/modules/archive/io/archive-source.js +156 -10
- package/dist/esm/modules/archive/io/archive-source.node.js +10 -0
- package/dist/esm/modules/archive/io/random-access.js +301 -0
- package/dist/esm/modules/archive/io/remote-zip-reader.js +782 -0
- package/dist/esm/modules/archive/{utils → shared}/async-queue.js +40 -8
- package/dist/{browser/modules/archive/internal → esm/modules/archive/shared}/byte-queue.js +59 -30
- package/dist/{browser/modules/archive/utils → esm/modules/archive/shared}/bytes.js +14 -25
- package/dist/esm/modules/archive/{defaults.js → shared/defaults.js} +7 -0
- package/dist/esm/modules/archive/shared/errors.js +171 -0
- package/dist/esm/modules/archive/shared/progress.js +92 -0
- package/dist/esm/modules/archive/shared/text.js +262 -0
- package/dist/esm/modules/archive/tar/index.browser.js +18 -0
- package/dist/esm/modules/archive/tar/index.js +16 -0
- package/dist/esm/modules/archive/tar/tar-archive.js +519 -0
- package/dist/esm/modules/archive/tar/tar-constants.js +59 -0
- package/dist/esm/modules/archive/tar/tar-entry-info.js +43 -0
- package/dist/esm/modules/archive/tar/tar-gzip.js +119 -0
- package/dist/esm/modules/archive/tar/tar-header.js +311 -0
- package/dist/esm/modules/archive/tar/tar-parser.js +366 -0
- package/dist/esm/modules/archive/unzip/extract.js +13 -3
- package/dist/esm/modules/archive/unzip/index.js +3 -162
- package/dist/esm/modules/archive/unzip/parser-core.js +316 -0
- package/dist/esm/modules/archive/unzip/progress.js +1 -0
- package/dist/esm/modules/archive/unzip/stream.base.js +210 -440
- package/dist/esm/modules/archive/unzip/stream.browser.js +107 -57
- package/dist/esm/modules/archive/unzip/stream.js +68 -8
- package/dist/esm/modules/archive/unzip/zip-extract-core.js +475 -0
- package/dist/esm/modules/archive/unzip/zip-parser.js +146 -242
- package/dist/esm/modules/archive/unzip/zip-reader.js +435 -0
- package/dist/esm/modules/archive/zip/compressibility.js +127 -0
- package/dist/esm/modules/archive/zip/index.js +5 -155
- package/dist/esm/modules/archive/zip/progress.js +1 -0
- package/dist/esm/modules/archive/zip/raw-entry.js +9 -0
- package/dist/esm/modules/archive/zip/stream.js +728 -72
- package/dist/esm/modules/archive/zip/writable-file.js +9 -0
- package/dist/esm/modules/archive/zip/writer-core.js +270 -0
- package/dist/esm/modules/archive/zip/zip-archive.js +448 -0
- package/dist/esm/modules/archive/zip/zip-bytes.js +293 -116
- package/dist/esm/modules/archive/zip/zip-edit-plan.js +183 -0
- package/dist/esm/modules/archive/zip/zip-edit-view.js +227 -0
- package/dist/esm/modules/archive/zip/zip-editor.js +758 -0
- package/dist/esm/modules/archive/zip/zip-entry-attributes.js +59 -0
- package/dist/esm/modules/archive/zip/zip-entry-metadata.js +29 -9
- package/dist/esm/modules/archive/zip/zip-entry-options.js +22 -0
- package/dist/esm/modules/archive/zip-spec/binary.js +126 -0
- package/dist/esm/modules/archive/{utils → zip-spec}/timestamps.js +75 -15
- package/dist/esm/modules/archive/zip-spec/zip-entry-info.js +6 -1
- package/dist/esm/modules/archive/zip-spec/zip-extra-fields.js +215 -0
- package/dist/esm/modules/archive/zip-spec/zip-parser-core.js +361 -0
- package/dist/esm/modules/archive/zip-spec/zip-path.js +87 -0
- package/dist/esm/modules/archive/zip-spec/zip-records.js +154 -0
- package/dist/esm/modules/csv/constants.js +66 -0
- package/dist/esm/modules/csv/errors.js +22 -0
- package/dist/esm/modules/csv/format/config.js +106 -0
- package/dist/esm/modules/csv/format/formatted-value.js +76 -0
- package/dist/esm/modules/csv/format/formatter.js +397 -0
- package/dist/esm/modules/csv/format/index.js +12 -0
- package/dist/esm/modules/csv/index.js +47 -0
- package/dist/esm/modules/csv/parse/async.js +288 -0
- package/dist/esm/modules/csv/parse/config.js +159 -0
- package/dist/esm/modules/csv/parse/helpers.js +225 -0
- package/dist/esm/modules/csv/parse/index.js +19 -0
- package/dist/esm/modules/csv/parse/lines.js +82 -0
- package/dist/esm/modules/csv/parse/row-processor.js +203 -0
- package/dist/esm/modules/csv/parse/scanner/index.js +12 -0
- package/dist/esm/modules/csv/parse/scanner/scanner.js +852 -0
- package/dist/esm/modules/csv/parse/scanner/types.js +25 -0
- package/dist/esm/modules/csv/parse/state.js +96 -0
- package/dist/esm/modules/csv/parse/sync.js +429 -0
- package/dist/esm/modules/csv/stream/formatter.js +160 -0
- package/dist/esm/modules/csv/stream/index.js +16 -0
- package/dist/esm/modules/csv/stream/parser.js +928 -0
- package/dist/esm/modules/csv/types.js +67 -0
- package/dist/esm/modules/csv/utils/detect.js +325 -0
- package/dist/esm/modules/csv/utils/dynamic-typing.js +297 -0
- package/dist/esm/modules/csv/utils/generate.js +960 -0
- package/dist/esm/modules/csv/utils/number.js +49 -0
- package/dist/esm/modules/csv/utils/row.js +255 -0
- package/dist/esm/modules/csv/worker/index.browser.js +5 -0
- package/dist/esm/modules/csv/worker/index.js +6 -0
- package/dist/esm/modules/csv/worker/pool.browser.js +602 -0
- package/dist/esm/modules/csv/worker/pool.js +54 -0
- package/dist/esm/modules/csv/worker/types.js +7 -0
- package/dist/esm/modules/csv/worker/worker-script.bundle.js +41 -0
- package/dist/esm/modules/csv/worker/worker-script.generated.js +6 -0
- package/dist/esm/modules/csv/worker/worker.entry.js +413 -0
- package/dist/esm/modules/excel/cell.js +4 -3
- package/dist/esm/modules/excel/errors.js +176 -0
- package/dist/esm/modules/excel/image.js +2 -1
- package/dist/esm/modules/excel/pivot-table.js +8 -7
- package/dist/esm/modules/excel/range.js +2 -1
- package/dist/esm/modules/excel/row.js +2 -1
- package/dist/esm/modules/excel/stream/hyperlink-reader.js +1 -1
- package/dist/esm/modules/excel/stream/workbook-reader.browser.js +14 -3
- package/dist/esm/modules/excel/stream/workbook-reader.js +10 -9
- package/dist/esm/modules/excel/stream/workbook-writer.browser.js +13 -6
- package/dist/esm/modules/excel/stream/workbook-writer.js +5 -6
- package/dist/esm/modules/excel/stream/worksheet-reader.js +8 -3
- package/dist/esm/modules/excel/stream/worksheet-writer.js +5 -4
- package/dist/esm/modules/excel/table.js +52 -53
- package/dist/esm/modules/excel/utils/cell-matrix.js +5 -4
- package/dist/esm/modules/excel/utils/col-cache.js +7 -6
- package/dist/esm/modules/excel/utils/encryptor.browser.js +1 -1
- package/dist/esm/modules/excel/utils/encryptor.js +1 -1
- package/dist/esm/modules/excel/utils/ooxml-validator.js +8 -6
- package/dist/esm/modules/excel/utils/parse-sax.js +36 -27
- package/dist/esm/modules/excel/utils/sheet-utils.js +0 -58
- package/dist/esm/modules/excel/utils/stream-buf.js +13 -20
- package/dist/esm/modules/excel/utils/xml-stream.js +3 -2
- package/dist/esm/modules/excel/workbook.browser.js +790 -0
- package/dist/esm/modules/excel/workbook.js +39 -302
- package/dist/esm/modules/excel/worksheet.js +8 -7
- package/dist/esm/modules/excel/xlsx/xform/base-xform.js +0 -1
- package/dist/esm/modules/excel/xlsx/xform/core/relationships-xform.js +3 -2
- package/dist/esm/modules/excel/xlsx/xform/list-xform.js +2 -1
- package/dist/esm/modules/excel/xlsx/xform/pivot-table/pivot-cache-records-xform.js +2 -1
- package/dist/esm/modules/excel/xlsx/xform/sheet/cell-xform.js +10 -4
- package/dist/esm/modules/excel/xlsx/xform/sheet/row-xform.js +2 -1
- package/dist/esm/modules/excel/xlsx/xform/strings/shared-strings-xform.js +3 -2
- package/dist/esm/modules/excel/xlsx/xform/strings/text-xform.js +3 -4
- package/dist/esm/modules/excel/xlsx/xform/style/numfmt-xform.js +8 -2
- package/dist/esm/modules/excel/xlsx/xform/style/styles-xform.js +2 -1
- package/dist/esm/modules/excel/xlsx/xform/table/auto-filter-xform.js +3 -2
- package/dist/esm/modules/excel/xlsx/xform/table/filter-column-xform.js +2 -1
- package/dist/esm/modules/excel/xlsx/xlsx.browser.js +11 -9
- package/dist/esm/modules/excel/xlsx/xlsx.js +6 -6
- package/dist/esm/modules/stream/browser/_lazy.js +30 -0
- package/dist/esm/modules/stream/browser/chunk-buffer.js +223 -0
- package/dist/esm/modules/stream/browser/collector.js +66 -0
- package/dist/esm/modules/stream/browser/compose.js +231 -0
- package/dist/esm/modules/stream/browser/duplex.js +966 -0
- package/dist/esm/modules/stream/browser/factories.js +212 -0
- package/dist/esm/modules/stream/browser/helpers.js +44 -0
- package/dist/esm/modules/stream/browser/microtask-context.js +60 -0
- package/dist/esm/modules/stream/browser/passthrough.js +19 -0
- package/dist/esm/modules/stream/browser/pipe-manager.js +158 -0
- package/dist/esm/modules/stream/browser/pipeline.js +486 -0
- package/dist/esm/modules/stream/browser/readable.js +2173 -0
- package/dist/esm/modules/stream/browser/transform.js +1235 -0
- package/dist/esm/modules/stream/browser/utils.js +256 -0
- package/dist/esm/modules/stream/browser/writable.js +1302 -0
- package/dist/esm/modules/stream/buffered-stream.js +28 -10
- package/dist/esm/modules/stream/chunked-builder.js +16 -3
- package/dist/esm/modules/stream/common/add-abort-signal.js +45 -0
- package/dist/esm/modules/stream/common/binary-chunk.js +150 -0
- package/dist/esm/modules/stream/common/consumers.js +41 -0
- package/dist/esm/modules/stream/common/end-args.js +24 -0
- package/dist/esm/modules/stream/common/finished-all.js +25 -0
- package/dist/esm/modules/stream/common/options.js +21 -0
- package/dist/esm/modules/stream/common/type-guards.js +68 -0
- package/dist/esm/modules/stream/common/utils.js +63 -0
- package/dist/esm/modules/stream/errors.js +50 -0
- package/dist/esm/modules/stream/index.base.js +15 -0
- package/dist/esm/modules/stream/index.browser.js +21 -5
- package/dist/esm/modules/stream/index.js +17 -5
- package/dist/esm/modules/stream/internal/evented-readable-to-async-iterable.js +133 -0
- package/dist/esm/modules/stream/node/collector.js +70 -0
- package/dist/esm/modules/stream/node/compose.js +210 -0
- package/dist/esm/modules/stream/node/factories.js +222 -0
- package/dist/esm/modules/stream/node/pipeline.js +110 -0
- package/dist/esm/modules/stream/node/utils.js +253 -0
- package/dist/esm/modules/stream/node/writable.js +119 -0
- package/dist/esm/modules/stream/pull-stream.js +37 -55
- package/dist/esm/modules/stream/utils.base.js +123 -0
- package/dist/esm/modules/stream/utils.browser.js +80 -0
- package/dist/esm/modules/stream/utils.js +66 -37
- package/dist/esm/utils/binary.js +429 -0
- package/dist/esm/utils/errors.js +206 -0
- package/dist/{browser/modules/stream → esm/utils}/event-emitter.js +89 -58
- package/dist/esm/utils/fs.browser.js +102 -0
- package/dist/esm/utils/fs.js +526 -0
- package/dist/esm/utils/glob.js +244 -0
- package/dist/esm/utils/utils.base.js +47 -8
- package/dist/esm/utils/utils.browser.js +3 -7
- package/dist/esm/utils/utils.js +3 -14
- package/dist/iife/THIRD_PARTY_NOTICES.md +0 -50
- package/dist/iife/excelts.iife.js +28995 -20576
- package/dist/iife/excelts.iife.js.map +1 -1
- package/dist/iife/excelts.iife.min.js +337 -36
- package/dist/types/index.browser.d.ts +14 -3
- package/dist/types/index.d.ts +16 -3
- package/dist/types/modules/archive/compression/compress.base.d.ts +127 -3
- package/dist/types/modules/archive/compression/compress.browser.d.ts +85 -35
- package/dist/types/modules/archive/compression/compress.d.ts +67 -3
- package/dist/types/modules/archive/compression/crc32.base.d.ts +9 -0
- package/dist/types/modules/archive/compression/crc32.browser.d.ts +5 -0
- package/dist/types/modules/archive/compression/crc32.d.ts +6 -0
- package/dist/types/modules/archive/compression/deflate-fallback.d.ts +38 -0
- package/dist/types/modules/archive/compression/streaming-compress.base.d.ts +45 -1
- package/dist/types/modules/archive/compression/streaming-compress.browser.d.ts +26 -6
- package/dist/types/modules/archive/compression/streaming-compress.d.ts +45 -2
- package/dist/types/modules/archive/compression/worker-pool/index.browser.d.ts +6 -0
- package/dist/types/modules/archive/compression/worker-pool/index.d.ts +26 -0
- package/dist/types/modules/archive/compression/worker-pool/pool.base.d.ts +34 -0
- package/dist/types/modules/archive/compression/worker-pool/pool.browser.d.ts +182 -0
- package/dist/types/modules/archive/compression/worker-pool/types.d.ts +170 -0
- package/dist/types/modules/archive/compression/worker-pool/worker-script.d.ts +26 -0
- package/dist/types/modules/archive/crypto/aes.d.ts +203 -0
- package/dist/types/modules/archive/crypto/index.d.ts +17 -0
- package/dist/types/modules/archive/crypto/types.d.ts +53 -0
- package/dist/types/modules/archive/crypto/zip-crypto.d.ts +105 -0
- package/dist/types/modules/archive/formats/index.d.ts +9 -0
- package/dist/types/modules/archive/formats/types.d.ts +1 -0
- package/dist/types/modules/archive/fs/archive-file.d.ts +403 -0
- package/dist/types/modules/archive/fs/index.d.ts +61 -0
- package/dist/types/modules/archive/fs/types.d.ts +517 -0
- package/dist/types/modules/archive/index.base.d.ts +10 -1
- package/dist/types/modules/archive/index.browser.d.ts +3 -2
- package/dist/types/modules/archive/index.d.ts +6 -2
- package/dist/types/modules/archive/io/archive-source.d.ts +31 -1
- package/dist/types/modules/archive/io/archive-source.node.d.ts +10 -0
- package/dist/types/modules/archive/io/random-access.d.ts +165 -0
- package/dist/types/modules/archive/io/remote-zip-reader.d.ts +352 -0
- package/dist/types/modules/archive/{utils → shared}/async-queue.d.ts +3 -1
- package/dist/{browser/modules/archive/internal → types/modules/archive/shared}/byte-queue.d.ts +5 -1
- package/dist/types/modules/archive/shared/bytes.d.ts +19 -0
- package/dist/types/modules/archive/shared/defaults.d.ts +12 -0
- package/dist/types/modules/archive/shared/errors.d.ts +118 -0
- package/dist/types/modules/archive/shared/progress.d.ts +62 -0
- package/dist/types/modules/archive/shared/text.d.ts +96 -0
- package/dist/types/modules/archive/tar/index.browser.d.ts +11 -0
- package/dist/types/modules/archive/tar/index.d.ts +13 -0
- package/dist/types/modules/archive/tar/tar-archive.d.ts +234 -0
- package/dist/types/modules/archive/tar/tar-constants.d.ts +102 -0
- package/dist/types/modules/archive/tar/tar-entry-info.d.ts +55 -0
- package/dist/types/modules/archive/tar/tar-gzip.d.ts +64 -0
- package/dist/types/modules/archive/tar/tar-header.d.ts +56 -0
- package/dist/types/modules/archive/tar/tar-parser.d.ts +40 -0
- package/dist/types/modules/archive/unzip/extract.d.ts +9 -2
- package/dist/types/modules/archive/unzip/index.d.ts +28 -40
- package/dist/types/modules/archive/unzip/parser-core.d.ts +117 -0
- package/dist/types/modules/archive/unzip/progress.d.ts +36 -0
- package/dist/types/modules/archive/unzip/stream.base.d.ts +24 -155
- package/dist/types/modules/archive/unzip/stream.browser.d.ts +2 -1
- package/dist/types/modules/archive/unzip/stream.d.ts +4 -3
- package/dist/types/modules/archive/unzip/zip-extract-core.d.ts +90 -0
- package/dist/types/modules/archive/unzip/zip-parser.d.ts +76 -6
- package/dist/types/modules/archive/unzip/zip-reader.d.ts +103 -0
- package/dist/types/modules/archive/zip/compressibility.d.ts +20 -0
- package/dist/types/modules/archive/zip/index.d.ts +27 -42
- package/dist/types/modules/archive/zip/progress.d.ts +39 -0
- package/dist/types/modules/archive/zip/raw-entry.d.ts +64 -0
- package/dist/types/modules/archive/zip/stream.d.ts +178 -26
- package/dist/types/modules/archive/zip/writable-file.d.ts +97 -0
- package/dist/types/modules/archive/zip/writer-core.d.ts +77 -0
- package/dist/types/modules/archive/zip/zip-archive.d.ts +121 -0
- package/dist/types/modules/archive/zip/zip-bytes.d.ts +70 -3
- package/dist/types/modules/archive/zip/zip-edit-plan.d.ts +123 -0
- package/dist/types/modules/archive/zip/zip-edit-view.d.ts +155 -0
- package/dist/types/modules/archive/zip/zip-editor.d.ts +359 -0
- package/dist/types/modules/archive/zip/zip-entry-attributes.d.ts +10 -0
- package/dist/types/modules/archive/zip/zip-entry-metadata.d.ts +11 -2
- package/dist/types/modules/archive/zip/zip-entry-options.d.ts +47 -0
- package/dist/types/modules/archive/zip-spec/binary.d.ts +42 -0
- package/dist/types/modules/archive/{utils → zip-spec}/timestamps.d.ts +17 -2
- package/dist/types/modules/archive/zip-spec/zip-entry-info.d.ts +47 -3
- package/dist/types/modules/archive/zip-spec/zip-extra-fields.d.ts +90 -0
- package/dist/types/modules/archive/zip-spec/zip-parser-core.d.ts +147 -0
- package/dist/types/modules/archive/zip-spec/zip-path.d.ts +15 -0
- package/dist/types/modules/archive/zip-spec/zip-records.d.ts +70 -0
- package/dist/types/modules/csv/constants.d.ts +18 -0
- package/dist/types/modules/csv/errors.d.ts +16 -0
- package/dist/types/modules/csv/format/config.d.ts +121 -0
- package/dist/types/modules/csv/format/formatted-value.d.ts +82 -0
- package/dist/types/modules/csv/format/formatter.d.ts +71 -0
- package/dist/types/modules/csv/format/index.d.ts +10 -0
- package/dist/types/modules/csv/index.d.ts +23 -0
- package/dist/types/modules/csv/parse/async.d.ts +111 -0
- package/dist/types/modules/csv/parse/config.d.ts +100 -0
- package/dist/types/modules/csv/parse/helpers.d.ts +114 -0
- package/dist/types/modules/csv/parse/index.d.ts +16 -0
- package/dist/types/modules/csv/parse/lines.d.ts +23 -0
- package/dist/types/modules/csv/parse/row-processor.d.ts +61 -0
- package/dist/types/modules/csv/parse/scanner/index.d.ts +10 -0
- package/dist/types/modules/csv/parse/scanner/scanner.d.ts +154 -0
- package/dist/types/modules/csv/parse/scanner/types.d.ts +185 -0
- package/dist/types/modules/csv/parse/state.d.ts +46 -0
- package/dist/types/modules/csv/parse/sync.d.ts +59 -0
- package/dist/types/modules/csv/stream/formatter.d.ts +55 -0
- package/dist/types/modules/csv/stream/index.d.ts +10 -0
- package/dist/types/modules/csv/stream/parser.d.ts +141 -0
- package/dist/types/modules/csv/types.d.ts +438 -0
- package/dist/types/modules/csv/utils/detect.d.ts +100 -0
- package/dist/types/modules/csv/utils/dynamic-typing.d.ts +71 -0
- package/dist/types/modules/csv/utils/generate.d.ts +306 -0
- package/dist/types/modules/csv/utils/number.d.ts +36 -0
- package/dist/types/modules/csv/utils/row.d.ts +111 -0
- package/dist/types/modules/csv/worker/index.browser.d.ts +6 -0
- package/dist/types/modules/csv/worker/index.d.ts +7 -0
- package/dist/types/modules/csv/worker/pool.browser.d.ts +193 -0
- package/dist/types/modules/csv/worker/pool.d.ts +14 -0
- package/dist/types/modules/csv/worker/types.d.ts +195 -0
- package/dist/types/modules/csv/worker/worker-script.bundle.d.ts +10 -0
- package/dist/types/modules/csv/worker/worker-script.generated.d.ts +6 -0
- package/dist/types/modules/csv/worker/worker.entry.d.ts +11 -0
- package/dist/types/modules/excel/errors.d.ts +133 -0
- package/dist/types/modules/excel/stream/hyperlink-reader.d.ts +1 -1
- package/dist/types/modules/excel/stream/workbook-reader.browser.d.ts +2 -1
- package/dist/types/modules/excel/stream/workbook-writer.browser.d.ts +10 -8
- package/dist/types/modules/excel/stream/workbook-writer.d.ts +2 -2
- package/dist/types/modules/excel/stream/worksheet-reader.d.ts +1 -1
- package/dist/types/modules/excel/table.d.ts +2 -0
- package/dist/types/modules/excel/types.d.ts +3 -1
- package/dist/types/modules/excel/utils/sheet-utils.d.ts +5 -17
- package/dist/types/modules/excel/utils/stream-buf.d.ts +1 -2
- package/dist/types/modules/excel/workbook.browser.d.ts +327 -0
- package/dist/types/modules/excel/workbook.d.ts +15 -188
- package/dist/types/modules/excel/xlsx/xlsx.browser.d.ts +1 -1
- package/dist/types/modules/stream/browser/_lazy.d.ts +18 -0
- package/dist/types/modules/stream/browser/chunk-buffer.d.ts +61 -0
- package/dist/types/modules/stream/browser/collector.d.ts +25 -0
- package/dist/types/modules/stream/browser/compose.d.ts +19 -0
- package/dist/types/modules/stream/browser/duplex.d.ts +296 -0
- package/dist/types/modules/stream/browser/factories.d.ts +80 -0
- package/dist/types/modules/stream/browser/helpers.d.ts +13 -0
- package/dist/types/modules/stream/browser/microtask-context.d.ts +44 -0
- package/dist/types/modules/stream/browser/passthrough.d.ts +15 -0
- package/dist/types/modules/stream/browser/pipe-manager.d.ts +38 -0
- package/dist/types/modules/stream/browser/pipeline.d.ts +51 -0
- package/dist/types/modules/stream/browser/readable.d.ts +379 -0
- package/dist/types/modules/stream/browser/transform.d.ts +314 -0
- package/dist/types/modules/stream/browser/utils.d.ts +62 -0
- package/dist/types/modules/stream/browser/writable.d.ts +235 -0
- package/dist/types/modules/stream/buffered-stream.d.ts +4 -3
- package/dist/types/modules/stream/chunked-builder.d.ts +9 -2
- package/dist/types/modules/stream/common/add-abort-signal.d.ts +18 -0
- package/dist/types/modules/stream/common/binary-chunk.d.ts +21 -0
- package/dist/types/modules/stream/common/consumers.d.ts +26 -0
- package/dist/types/modules/stream/common/end-args.d.ts +20 -0
- package/dist/types/modules/stream/common/finished-all.d.ts +10 -0
- package/dist/types/modules/stream/common/options.d.ts +18 -0
- package/dist/types/modules/stream/common/type-guards.d.ts +21 -0
- package/dist/types/modules/stream/common/utils.d.ts +32 -0
- package/dist/types/modules/stream/errors.d.ts +40 -0
- package/dist/types/modules/stream/index.base.d.ts +17 -0
- package/dist/types/modules/stream/index.browser.d.ts +13 -8
- package/dist/types/modules/stream/index.d.ts +10 -8
- package/dist/types/modules/stream/internal/event-utils.d.ts +2 -8
- package/dist/types/modules/stream/internal/evented-readable-to-async-iterable.d.ts +18 -0
- package/dist/types/modules/stream/node/collector.d.ts +30 -0
- package/dist/types/modules/stream/node/compose.d.ts +10 -0
- package/dist/types/modules/stream/node/factories.d.ts +75 -0
- package/dist/types/modules/stream/node/pipeline.d.ts +25 -0
- package/dist/types/modules/stream/node/utils.d.ts +63 -0
- package/dist/types/modules/stream/node/writable.d.ts +47 -0
- package/dist/types/modules/stream/pull-stream.d.ts +3 -5
- package/dist/types/modules/stream/types.d.ts +26 -37
- package/dist/types/modules/stream/utils.base.d.ts +60 -0
- package/dist/types/modules/stream/utils.browser.d.ts +22 -0
- package/dist/types/modules/stream/utils.d.ts +17 -18
- package/dist/types/utils/binary.d.ts +108 -0
- package/dist/types/utils/errors.d.ts +114 -0
- package/dist/types/{modules/stream → utils}/event-emitter.d.ts +3 -1
- package/dist/types/utils/fs.browser.d.ts +73 -0
- package/dist/types/utils/fs.d.ts +285 -0
- package/dist/types/utils/glob.d.ts +82 -0
- package/dist/types/utils/utils.base.d.ts +19 -0
- package/dist/types/utils/utils.browser.d.ts +2 -2
- package/dist/types/utils/utils.d.ts +2 -2
- package/package.json +68 -9
- package/dist/browser/modules/archive/defaults.d.ts +0 -5
- package/dist/browser/modules/archive/utils/binary.d.ts +0 -24
- package/dist/browser/modules/archive/utils/binary.js +0 -69
- package/dist/browser/modules/archive/utils/bytes.d.ts +0 -7
- package/dist/browser/modules/archive/utils/compressibility.d.ts +0 -10
- package/dist/browser/modules/archive/utils/compressibility.js +0 -57
- package/dist/browser/modules/archive/utils/parse-buffer.d.ts +0 -18
- package/dist/browser/modules/archive/utils/parse-buffer.js +0 -53
- package/dist/browser/modules/archive/utils/text.d.ts +0 -20
- package/dist/browser/modules/archive/utils/text.js +0 -33
- package/dist/browser/modules/archive/utils/zip-extra-fields.d.ts +0 -19
- package/dist/browser/modules/archive/utils/zip-extra-fields.js +0 -84
- package/dist/browser/modules/csv/csv-core.d.ts +0 -206
- package/dist/browser/modules/csv/csv-core.js +0 -726
- package/dist/browser/modules/csv/csv-number.d.ts +0 -3
- package/dist/browser/modules/csv/csv-number.js +0 -20
- package/dist/browser/modules/csv/csv-stream.d.ts +0 -121
- package/dist/browser/modules/csv/csv-stream.js +0 -703
- package/dist/browser/modules/csv/csv.browser.d.ts +0 -60
- package/dist/browser/modules/csv/csv.browser.js +0 -265
- package/dist/browser/modules/csv/csv.d.ts +0 -14
- package/dist/browser/modules/csv/csv.js +0 -29
- package/dist/browser/modules/stream/base-transform.d.ts +0 -71
- package/dist/browser/modules/stream/base-transform.js +0 -174
- package/dist/browser/modules/stream/shared.d.ts +0 -54
- package/dist/browser/modules/stream/shared.js +0 -159
- package/dist/browser/modules/stream/streams.browser.d.ts +0 -918
- package/dist/browser/modules/stream/streams.browser.js +0 -3420
- package/dist/browser/modules/stream/streams.d.ts +0 -266
- package/dist/browser/modules/stream/streams.js +0 -1012
- package/dist/cjs/modules/archive/defaults.js +0 -9
- package/dist/cjs/modules/archive/utils/binary.js +0 -75
- package/dist/cjs/modules/archive/utils/compressibility.js +0 -60
- package/dist/cjs/modules/archive/utils/parse-buffer.js +0 -57
- package/dist/cjs/modules/archive/utils/text.js +0 -39
- package/dist/cjs/modules/archive/utils/zip-extra-fields.js +0 -87
- package/dist/cjs/modules/csv/csv-core.js +0 -733
- package/dist/cjs/modules/csv/csv-number.js +0 -24
- package/dist/cjs/modules/csv/csv-stream.js +0 -711
- package/dist/cjs/modules/csv/csv.browser.js +0 -276
- package/dist/cjs/modules/csv/csv.js +0 -37
- package/dist/cjs/modules/stream/base-transform.js +0 -178
- package/dist/cjs/modules/stream/shared.js +0 -171
- package/dist/cjs/modules/stream/streams.browser.js +0 -3466
- package/dist/cjs/modules/stream/streams.js +0 -1058
- package/dist/esm/modules/archive/utils/binary.js +0 -69
- package/dist/esm/modules/archive/utils/compressibility.js +0 -57
- package/dist/esm/modules/archive/utils/parse-buffer.js +0 -53
- package/dist/esm/modules/archive/utils/text.js +0 -33
- package/dist/esm/modules/archive/utils/zip-extra-fields.js +0 -84
- package/dist/esm/modules/csv/csv-core.js +0 -726
- package/dist/esm/modules/csv/csv-number.js +0 -20
- package/dist/esm/modules/csv/csv-stream.js +0 -703
- package/dist/esm/modules/csv/csv.browser.js +0 -265
- package/dist/esm/modules/csv/csv.js +0 -29
- package/dist/esm/modules/stream/base-transform.js +0 -174
- package/dist/esm/modules/stream/shared.js +0 -159
- package/dist/esm/modules/stream/streams.browser.js +0 -3420
- package/dist/esm/modules/stream/streams.js +0 -1012
- package/dist/types/modules/archive/defaults.d.ts +0 -5
- package/dist/types/modules/archive/utils/binary.d.ts +0 -24
- package/dist/types/modules/archive/utils/bytes.d.ts +0 -7
- package/dist/types/modules/archive/utils/compressibility.d.ts +0 -10
- package/dist/types/modules/archive/utils/parse-buffer.d.ts +0 -18
- package/dist/types/modules/archive/utils/text.d.ts +0 -20
- package/dist/types/modules/archive/utils/zip-extra-fields.d.ts +0 -19
- package/dist/types/modules/csv/csv-core.d.ts +0 -206
- package/dist/types/modules/csv/csv-number.d.ts +0 -3
- package/dist/types/modules/csv/csv-stream.d.ts +0 -121
- package/dist/types/modules/csv/csv.browser.d.ts +0 -60
- package/dist/types/modules/csv/csv.d.ts +0 -14
- package/dist/types/modules/stream/base-transform.d.ts +0 -71
- package/dist/types/modules/stream/shared.d.ts +0 -54
- package/dist/types/modules/stream/streams.browser.d.ts +0 -918
- package/dist/types/modules/stream/streams.d.ts +0 -266
- /package/dist/browser/modules/archive/{utils → unzip}/pattern-scanner.d.ts +0 -0
- /package/dist/browser/modules/archive/{utils → unzip}/pattern-scanner.js +0 -0
- /package/dist/cjs/modules/archive/{utils → unzip}/pattern-scanner.js +0 -0
- /package/dist/esm/modules/archive/{utils → unzip}/pattern-scanner.js +0 -0
- /package/dist/types/modules/archive/{utils → unzip}/pattern-scanner.d.ts +0 -0
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CSV Number Utilities
|
|
3
|
+
*
|
|
4
|
+
* Functions for parsing and formatting numbers in CSV files,
|
|
5
|
+
* with support for different decimal separators (e.g., European format).
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Decimal separator type.
|
|
9
|
+
* - "." - Standard decimal point (default)
|
|
10
|
+
* - "," - European decimal comma
|
|
11
|
+
*/
|
|
12
|
+
export type DecimalSeparator = "." | ",";
|
|
13
|
+
/**
|
|
14
|
+
* Format a number for CSV output with the specified decimal separator.
|
|
15
|
+
*
|
|
16
|
+
* @param value - The number to format
|
|
17
|
+
* @param decimalSeparator - The decimal separator to use
|
|
18
|
+
* @returns Formatted string representation
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* formatNumberForCsv(3.14, ".") // "3.14"
|
|
22
|
+
* formatNumberForCsv(3.14, ",") // "3,14"
|
|
23
|
+
*/
|
|
24
|
+
export declare function formatNumberForCsv(value: number, decimalSeparator: DecimalSeparator): string;
|
|
25
|
+
/**
|
|
26
|
+
* Parse a CSV string value as a number with the specified decimal separator.
|
|
27
|
+
*
|
|
28
|
+
* @param value - The string value to parse
|
|
29
|
+
* @param decimalSeparator - The decimal separator used in the value
|
|
30
|
+
* @returns Parsed number (may be NaN if invalid)
|
|
31
|
+
*
|
|
32
|
+
* @example
|
|
33
|
+
* parseNumberFromCsv("3.14", ".") // 3.14
|
|
34
|
+
* parseNumberFromCsv("3,14", ",") // 3.14
|
|
35
|
+
*/
|
|
36
|
+
export declare function parseNumberFromCsv(value: string, decimalSeparator: DecimalSeparator): number;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CSV Number Utilities
|
|
3
|
+
*
|
|
4
|
+
* Functions for parsing and formatting numbers in CSV files,
|
|
5
|
+
* with support for different decimal separators (e.g., European format).
|
|
6
|
+
*/
|
|
7
|
+
/** Pre-compiled regex for European decimal comma format */
|
|
8
|
+
const COMMA_DECIMAL_REGEX = /^-?\d+(,\d+)?([eE][+-]?\d+)?$/;
|
|
9
|
+
/**
|
|
10
|
+
* Format a number for CSV output with the specified decimal separator.
|
|
11
|
+
*
|
|
12
|
+
* @param value - The number to format
|
|
13
|
+
* @param decimalSeparator - The decimal separator to use
|
|
14
|
+
* @returns Formatted string representation
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* formatNumberForCsv(3.14, ".") // "3.14"
|
|
18
|
+
* formatNumberForCsv(3.14, ",") // "3,14"
|
|
19
|
+
*/
|
|
20
|
+
export function formatNumberForCsv(value, decimalSeparator) {
|
|
21
|
+
if (decimalSeparator !== ",") {
|
|
22
|
+
return String(value);
|
|
23
|
+
}
|
|
24
|
+
// Replace decimal point with comma - faster than split().join()
|
|
25
|
+
return String(value).replace(".", ",");
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Parse a CSV string value as a number with the specified decimal separator.
|
|
29
|
+
*
|
|
30
|
+
* @param value - The string value to parse
|
|
31
|
+
* @param decimalSeparator - The decimal separator used in the value
|
|
32
|
+
* @returns Parsed number (may be NaN if invalid)
|
|
33
|
+
*
|
|
34
|
+
* @example
|
|
35
|
+
* parseNumberFromCsv("3.14", ".") // 3.14
|
|
36
|
+
* parseNumberFromCsv("3,14", ",") // 3.14
|
|
37
|
+
*/
|
|
38
|
+
export function parseNumberFromCsv(value, decimalSeparator) {
|
|
39
|
+
const trimmed = value.trim();
|
|
40
|
+
if (decimalSeparator !== ",") {
|
|
41
|
+
return Number(trimmed);
|
|
42
|
+
}
|
|
43
|
+
// Minimal locale support: treat a single comma as the decimal separator.
|
|
44
|
+
// Common EU CSV uses delimiter ';' and decimal ',' (e.g. 12,34).
|
|
45
|
+
if (COMMA_DECIMAL_REGEX.test(trimmed)) {
|
|
46
|
+
return Number(trimmed.replace(",", "."));
|
|
47
|
+
}
|
|
48
|
+
return Number(trimmed);
|
|
49
|
+
}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CSV Row Utilities
|
|
3
|
+
*
|
|
4
|
+
* Helper functions for working with different row formats:
|
|
5
|
+
* - RowHashArray: Array of [key, value] tuples, e.g., [["name", "John"], ["age", "30"]]
|
|
6
|
+
* - RowMap: Record<string, any> object format
|
|
7
|
+
* - RowArray: Simple string[] array format
|
|
8
|
+
*
|
|
9
|
+
* Key functions:
|
|
10
|
+
* - isRowHashArray(): Type guard for RowHashArray detection
|
|
11
|
+
* - extractRowValues(): Extract values from any row format
|
|
12
|
+
* - detectRowKeys(): Detect header keys from a row
|
|
13
|
+
* - deduplicateHeaders(): Handle duplicate column names
|
|
14
|
+
* - processColumns(): Process column configuration
|
|
15
|
+
*/
|
|
16
|
+
import type { ColumnConfig, HeaderArray, RowHashArray } from "../types.js";
|
|
17
|
+
export type { HeaderArray, RowHashArray } from "../types.js";
|
|
18
|
+
/**
|
|
19
|
+
* Check if a row is a RowHashArray (array of [key, value] tuples)
|
|
20
|
+
*/
|
|
21
|
+
export declare function isRowHashArray(row: unknown): row is RowHashArray;
|
|
22
|
+
/**
|
|
23
|
+
* Convert RowHashArray to RowMap
|
|
24
|
+
* Note: Manual loop is ~4x faster than Object.fromEntries
|
|
25
|
+
*/
|
|
26
|
+
export declare function rowHashArrayToMap<V = any>(row: RowHashArray<V>): Record<string, V>;
|
|
27
|
+
/**
|
|
28
|
+
* Convert RowHashArray to values array (preserving order)
|
|
29
|
+
*/
|
|
30
|
+
export declare function rowHashArrayToValues<V = any>(row: RowHashArray<V>): V[];
|
|
31
|
+
/**
|
|
32
|
+
* Get headers from RowHashArray
|
|
33
|
+
*/
|
|
34
|
+
export declare function rowHashArrayToHeaders(row: RowHashArray): string[];
|
|
35
|
+
/**
|
|
36
|
+
* Get value by key from RowHashArray (returns undefined if not found)
|
|
37
|
+
* More efficient than creating a full map when you need only specific values
|
|
38
|
+
*/
|
|
39
|
+
export declare function rowHashArrayGet<V = any>(row: RowHashArray<V>, key: string): V | undefined;
|
|
40
|
+
/**
|
|
41
|
+
* Map RowHashArray values according to header order
|
|
42
|
+
* Optimized: builds values array in single pass without intermediate object
|
|
43
|
+
*/
|
|
44
|
+
export declare function rowHashArrayMapByHeaders<V = any>(row: RowHashArray<V>, headers: string[]): (V | undefined)[];
|
|
45
|
+
/**
|
|
46
|
+
* Extract values from a row (array, object, or RowHashArray) in consistent order.
|
|
47
|
+
* This is the unified function for row value extraction used by both
|
|
48
|
+
* batch (formatCsv) and streaming (CsvFormatterStream) code paths.
|
|
49
|
+
*
|
|
50
|
+
* @param row - The row data (array, object, or RowHashArray)
|
|
51
|
+
* @param keys - Optional key order for object/RowHashArray rows
|
|
52
|
+
* @returns Array of values in the specified key order (or natural order if no keys)
|
|
53
|
+
*/
|
|
54
|
+
export declare function extractRowValues(row: unknown, keys: string[] | null | undefined): unknown[];
|
|
55
|
+
/**
|
|
56
|
+
* Auto-detect keys (headers) from a row based on its type.
|
|
57
|
+
* Returns empty array for arrays or primitive values.
|
|
58
|
+
*
|
|
59
|
+
* @param row - The row data to detect keys from
|
|
60
|
+
* @returns Array of string keys, or empty array if not applicable
|
|
61
|
+
*/
|
|
62
|
+
export declare function detectRowKeys(row: unknown): string[];
|
|
63
|
+
/**
|
|
64
|
+
* Deduplicate headers by appending suffix to duplicates.
|
|
65
|
+
* Example: ["A", "B", "A", "A"] → ["A", "B", "A_1", "A_2"]
|
|
66
|
+
*
|
|
67
|
+
* @param headers - Original header array
|
|
68
|
+
* @returns New array with unique header names
|
|
69
|
+
*/
|
|
70
|
+
export declare function deduplicateHeaders(headers: HeaderArray): HeaderArray;
|
|
71
|
+
export declare function deduplicateHeadersWithRenames(headers: HeaderArray): {
|
|
72
|
+
headers: HeaderArray;
|
|
73
|
+
renamedHeaders: Record<string, string> | null;
|
|
74
|
+
};
|
|
75
|
+
/**
|
|
76
|
+
* Process columns configuration to extract keys and headers.
|
|
77
|
+
* Returns null if columns is empty or undefined.
|
|
78
|
+
*
|
|
79
|
+
* This function is used by both formatCsv (batch) and CsvFormatterStream (streaming)
|
|
80
|
+
* to normalize column configuration into separate key/header arrays.
|
|
81
|
+
*
|
|
82
|
+
* @param columns - Column configuration array (string names or ColumnConfig objects)
|
|
83
|
+
* @returns Object with keys (data access) and headers (output names), or null if empty
|
|
84
|
+
*
|
|
85
|
+
* @example
|
|
86
|
+
* ```ts
|
|
87
|
+
* processColumns(['name', { key: 'age', header: 'Age (years)' }])
|
|
88
|
+
* // { keys: ['name', 'age'], headers: ['name', 'Age (years)'] }
|
|
89
|
+
* ```
|
|
90
|
+
*/
|
|
91
|
+
export declare function processColumns(columns: (string | ColumnConfig)[] | undefined): {
|
|
92
|
+
keys: string[];
|
|
93
|
+
headers: string[];
|
|
94
|
+
} | null;
|
|
95
|
+
/**
|
|
96
|
+
* Check if a row should be skipped as empty.
|
|
97
|
+
* When `shouldSkipEmpty` is "greedy", whitespace-only rows also count as empty.
|
|
98
|
+
*
|
|
99
|
+
* @param row - The row to check
|
|
100
|
+
* @param shouldSkipEmpty - true, false, or "greedy"
|
|
101
|
+
* @returns true if the row should be skipped
|
|
102
|
+
*/
|
|
103
|
+
export declare function isEmptyRow(row: string[], shouldSkipEmpty: boolean | "greedy"): boolean;
|
|
104
|
+
/**
|
|
105
|
+
* Check if all values in a row are empty strings.
|
|
106
|
+
* Used by skipRecordsWithEmptyValues option.
|
|
107
|
+
*
|
|
108
|
+
* @param row - The row to check
|
|
109
|
+
* @returns true if all fields are empty strings
|
|
110
|
+
*/
|
|
111
|
+
export declare function hasAllEmptyValues(row: string[]): boolean;
|
|
@@ -0,0 +1,255 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CSV Row Utilities
|
|
3
|
+
*
|
|
4
|
+
* Helper functions for working with different row formats:
|
|
5
|
+
* - RowHashArray: Array of [key, value] tuples, e.g., [["name", "John"], ["age", "30"]]
|
|
6
|
+
* - RowMap: Record<string, any> object format
|
|
7
|
+
* - RowArray: Simple string[] array format
|
|
8
|
+
*
|
|
9
|
+
* Key functions:
|
|
10
|
+
* - isRowHashArray(): Type guard for RowHashArray detection
|
|
11
|
+
* - extractRowValues(): Extract values from any row format
|
|
12
|
+
* - detectRowKeys(): Detect header keys from a row
|
|
13
|
+
* - deduplicateHeaders(): Handle duplicate column names
|
|
14
|
+
* - processColumns(): Process column configuration
|
|
15
|
+
*/
|
|
16
|
+
// =============================================================================
|
|
17
|
+
// RowHashArray Utilities
|
|
18
|
+
// =============================================================================
|
|
19
|
+
/**
|
|
20
|
+
* Check if a row is a RowHashArray (array of [key, value] tuples)
|
|
21
|
+
*/
|
|
22
|
+
export function isRowHashArray(row) {
|
|
23
|
+
if (!Array.isArray(row) || row.length === 0) {
|
|
24
|
+
return false;
|
|
25
|
+
}
|
|
26
|
+
// Check if first element is a 2-element array with string key
|
|
27
|
+
const first = row[0];
|
|
28
|
+
return Array.isArray(first) && first.length === 2 && typeof first[0] === "string";
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Convert RowHashArray to RowMap
|
|
32
|
+
* Note: Manual loop is ~4x faster than Object.fromEntries
|
|
33
|
+
*/
|
|
34
|
+
export function rowHashArrayToMap(row) {
|
|
35
|
+
const obj = {};
|
|
36
|
+
for (const [key, value] of row) {
|
|
37
|
+
obj[key] = value;
|
|
38
|
+
}
|
|
39
|
+
return obj;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Convert RowHashArray to values array (preserving order)
|
|
43
|
+
*/
|
|
44
|
+
export function rowHashArrayToValues(row) {
|
|
45
|
+
return row.map(([, value]) => value);
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Get headers from RowHashArray
|
|
49
|
+
*/
|
|
50
|
+
export function rowHashArrayToHeaders(row) {
|
|
51
|
+
return row.map(([key]) => key);
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Get value by key from RowHashArray (returns undefined if not found)
|
|
55
|
+
* More efficient than creating a full map when you need only specific values
|
|
56
|
+
*/
|
|
57
|
+
export function rowHashArrayGet(row, key) {
|
|
58
|
+
for (const [k, v] of row) {
|
|
59
|
+
if (k === key) {
|
|
60
|
+
return v;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
return undefined;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Map RowHashArray values according to header order
|
|
67
|
+
* Optimized: builds values array in single pass without intermediate object
|
|
68
|
+
*/
|
|
69
|
+
export function rowHashArrayMapByHeaders(row, headers) {
|
|
70
|
+
// For small headers array, linear search per header is faster than building a map
|
|
71
|
+
// For larger headers (>10), build a map once
|
|
72
|
+
if (headers.length <= 10) {
|
|
73
|
+
return headers.map(h => rowHashArrayGet(row, h));
|
|
74
|
+
}
|
|
75
|
+
const map = rowHashArrayToMap(row);
|
|
76
|
+
return headers.map(h => map[h]);
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Extract values from a row (array, object, or RowHashArray) in consistent order.
|
|
80
|
+
* This is the unified function for row value extraction used by both
|
|
81
|
+
* batch (formatCsv) and streaming (CsvFormatterStream) code paths.
|
|
82
|
+
*
|
|
83
|
+
* @param row - The row data (array, object, or RowHashArray)
|
|
84
|
+
* @param keys - Optional key order for object/RowHashArray rows
|
|
85
|
+
* @returns Array of values in the specified key order (or natural order if no keys)
|
|
86
|
+
*/
|
|
87
|
+
export function extractRowValues(row, keys) {
|
|
88
|
+
if (isRowHashArray(row)) {
|
|
89
|
+
return keys ? rowHashArrayMapByHeaders(row, keys) : rowHashArrayToValues(row);
|
|
90
|
+
}
|
|
91
|
+
if (Array.isArray(row)) {
|
|
92
|
+
return row;
|
|
93
|
+
}
|
|
94
|
+
if (row !== null && typeof row === "object") {
|
|
95
|
+
return keys ? keys.map(key => row[key]) : Object.values(row);
|
|
96
|
+
}
|
|
97
|
+
// Primitive value: wrap in array
|
|
98
|
+
return [row];
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Auto-detect keys (headers) from a row based on its type.
|
|
102
|
+
* Returns empty array for arrays or primitive values.
|
|
103
|
+
*
|
|
104
|
+
* @param row - The row data to detect keys from
|
|
105
|
+
* @returns Array of string keys, or empty array if not applicable
|
|
106
|
+
*/
|
|
107
|
+
export function detectRowKeys(row) {
|
|
108
|
+
if (isRowHashArray(row)) {
|
|
109
|
+
return rowHashArrayToHeaders(row);
|
|
110
|
+
}
|
|
111
|
+
if (!Array.isArray(row) && row !== null && typeof row === "object") {
|
|
112
|
+
return Object.keys(row);
|
|
113
|
+
}
|
|
114
|
+
return [];
|
|
115
|
+
}
|
|
116
|
+
// =============================================================================
|
|
117
|
+
// Header Utilities
|
|
118
|
+
// =============================================================================
|
|
119
|
+
/**
|
|
120
|
+
* Deduplicate headers by appending suffix to duplicates.
|
|
121
|
+
* Example: ["A", "B", "A", "A"] → ["A", "B", "A_1", "A_2"]
|
|
122
|
+
*
|
|
123
|
+
* @param headers - Original header array
|
|
124
|
+
* @returns New array with unique header names
|
|
125
|
+
*/
|
|
126
|
+
export function deduplicateHeaders(headers) {
|
|
127
|
+
return deduplicateHeadersWithRenames(headers).headers;
|
|
128
|
+
}
|
|
129
|
+
export function deduplicateHeadersWithRenames(headers) {
|
|
130
|
+
const headerCount = new Map();
|
|
131
|
+
const usedHeaders = new Set();
|
|
132
|
+
// Reserve all original header names so we don't generate a rename that
|
|
133
|
+
// collides with a header that appears later in the row.
|
|
134
|
+
const reservedHeaders = new Set();
|
|
135
|
+
const result = [];
|
|
136
|
+
const renamedHeaders = {};
|
|
137
|
+
let hasRenames = false;
|
|
138
|
+
let emptyHeaderCount = 0;
|
|
139
|
+
for (const header of headers) {
|
|
140
|
+
if (header !== null && header !== undefined && header !== "") {
|
|
141
|
+
reservedHeaders.add(header);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
for (let i = 0; i < headers.length; i++) {
|
|
145
|
+
const header = headers[i];
|
|
146
|
+
if (header === null || header === undefined) {
|
|
147
|
+
result.push(header);
|
|
148
|
+
continue;
|
|
149
|
+
}
|
|
150
|
+
// Handle empty string headers by generating placeholder names
|
|
151
|
+
if (header === "") {
|
|
152
|
+
let placeholder = `_column_${i}`;
|
|
153
|
+
// Ensure placeholder doesn't collide with existing headers
|
|
154
|
+
while (usedHeaders.has(placeholder) || reservedHeaders.has(placeholder)) {
|
|
155
|
+
placeholder = `_column_${i}_${emptyHeaderCount++}`;
|
|
156
|
+
}
|
|
157
|
+
usedHeaders.add(placeholder);
|
|
158
|
+
result.push(placeholder);
|
|
159
|
+
renamedHeaders[placeholder] = "";
|
|
160
|
+
hasRenames = true;
|
|
161
|
+
continue;
|
|
162
|
+
}
|
|
163
|
+
if (!usedHeaders.has(header)) {
|
|
164
|
+
usedHeaders.add(header);
|
|
165
|
+
headerCount.set(header, 1);
|
|
166
|
+
result.push(header);
|
|
167
|
+
continue;
|
|
168
|
+
}
|
|
169
|
+
// Duplicate: find a unique suffix, avoiding collisions with already-present headers
|
|
170
|
+
let suffix = headerCount.get(header) ?? 1;
|
|
171
|
+
let candidate = `${header}_${suffix}`;
|
|
172
|
+
while (usedHeaders.has(candidate) || reservedHeaders.has(candidate)) {
|
|
173
|
+
suffix++;
|
|
174
|
+
candidate = `${header}_${suffix}`;
|
|
175
|
+
}
|
|
176
|
+
headerCount.set(header, suffix + 1);
|
|
177
|
+
usedHeaders.add(candidate);
|
|
178
|
+
result.push(candidate);
|
|
179
|
+
renamedHeaders[candidate] = header;
|
|
180
|
+
hasRenames = true;
|
|
181
|
+
}
|
|
182
|
+
return { headers: result, renamedHeaders: hasRenames ? renamedHeaders : null };
|
|
183
|
+
}
|
|
184
|
+
// =============================================================================
|
|
185
|
+
// Column Utilities
|
|
186
|
+
// =============================================================================
|
|
187
|
+
/**
|
|
188
|
+
* Process columns configuration to extract keys and headers.
|
|
189
|
+
* Returns null if columns is empty or undefined.
|
|
190
|
+
*
|
|
191
|
+
* This function is used by both formatCsv (batch) and CsvFormatterStream (streaming)
|
|
192
|
+
* to normalize column configuration into separate key/header arrays.
|
|
193
|
+
*
|
|
194
|
+
* @param columns - Column configuration array (string names or ColumnConfig objects)
|
|
195
|
+
* @returns Object with keys (data access) and headers (output names), or null if empty
|
|
196
|
+
*
|
|
197
|
+
* @example
|
|
198
|
+
* ```ts
|
|
199
|
+
* processColumns(['name', { key: 'age', header: 'Age (years)' }])
|
|
200
|
+
* // { keys: ['name', 'age'], headers: ['name', 'Age (years)'] }
|
|
201
|
+
* ```
|
|
202
|
+
*/
|
|
203
|
+
export function processColumns(columns) {
|
|
204
|
+
if (!columns || columns.length === 0) {
|
|
205
|
+
return null;
|
|
206
|
+
}
|
|
207
|
+
const keys = columns.map(c => (typeof c === "string" ? c : c.key));
|
|
208
|
+
const headers = columns.map(c => (typeof c === "string" ? c : (c.header ?? c.key)));
|
|
209
|
+
return { keys, headers };
|
|
210
|
+
}
|
|
211
|
+
// =============================================================================
|
|
212
|
+
// Row Validation Utilities
|
|
213
|
+
// =============================================================================
|
|
214
|
+
/** Pre-compiled regex for non-whitespace detection */
|
|
215
|
+
const NON_WHITESPACE_REGEX = /\S/;
|
|
216
|
+
/**
|
|
217
|
+
* Check if a row should be skipped as empty.
|
|
218
|
+
* When `shouldSkipEmpty` is "greedy", whitespace-only rows also count as empty.
|
|
219
|
+
*
|
|
220
|
+
* @param row - The row to check
|
|
221
|
+
* @param shouldSkipEmpty - true, false, or "greedy"
|
|
222
|
+
* @returns true if the row should be skipped
|
|
223
|
+
*/
|
|
224
|
+
export function isEmptyRow(row, shouldSkipEmpty) {
|
|
225
|
+
if (!shouldSkipEmpty) {
|
|
226
|
+
return false;
|
|
227
|
+
}
|
|
228
|
+
if (shouldSkipEmpty === "greedy") {
|
|
229
|
+
// Greedy: whitespace-only fields count as empty
|
|
230
|
+
for (const field of row) {
|
|
231
|
+
if (NON_WHITESPACE_REGEX.test(field)) {
|
|
232
|
+
return false;
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
else {
|
|
237
|
+
// Non-greedy: only truly empty strings count as empty
|
|
238
|
+
for (const field of row) {
|
|
239
|
+
if (field !== "") {
|
|
240
|
+
return false;
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
return true;
|
|
245
|
+
}
|
|
246
|
+
/**
|
|
247
|
+
* Check if all values in a row are empty strings.
|
|
248
|
+
* Used by skipRecordsWithEmptyValues option.
|
|
249
|
+
*
|
|
250
|
+
* @param row - The row to check
|
|
251
|
+
* @returns true if all fields are empty strings
|
|
252
|
+
*/
|
|
253
|
+
export function hasAllEmptyValues(row) {
|
|
254
|
+
return isEmptyRow(row, true);
|
|
255
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CSV Worker Module - Browser Entry Point
|
|
3
|
+
*/
|
|
4
|
+
export { CsvWorkerPool, CsvWorkerSession, hasWorkerSupport, getDefaultWorkerPool, terminateDefaultWorkerPool, parseWithPool, formatWithPool } from "./pool.browser.js";
|
|
5
|
+
export type { CsvWorkerPoolOptions, CsvWorkerPoolStats, CsvTaskOptions, CsvTaskResult, CsvTaskPriority, SortConfig, SortOrder, FilterConfig, FilterCondition, FilterOperator, SearchConfig, GroupByConfig, AggregateConfig, AggregateFunction, PageConfig, QueryConfig, FilterResult, PageResult, GroupResult, AggregateResult, QueryResult } from "./types.js";
|
|
6
|
+
export { getWorkerBlobUrl, releaseWorkerBlobUrl } from "./worker-script.bundle.js";
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CSV Worker Module - Browser Entry Point
|
|
3
|
+
*/
|
|
4
|
+
export { CsvWorkerPool, CsvWorkerSession, hasWorkerSupport, getDefaultWorkerPool, terminateDefaultWorkerPool, parseWithPool, formatWithPool } from "./pool.browser.js";
|
|
5
|
+
export { getWorkerBlobUrl, releaseWorkerBlobUrl } from "./worker-script.bundle.js";
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CSV Worker Module - Node.js Entry Point
|
|
3
|
+
*
|
|
4
|
+
* Exports stub implementations. Web Workers are browser-only.
|
|
5
|
+
*/
|
|
6
|
+
export { CsvWorkerPool, CsvWorkerSession, hasWorkerSupport, getDefaultWorkerPool, terminateDefaultWorkerPool, parseWithPool, formatWithPool } from "./pool.js";
|
|
7
|
+
export type { CsvWorkerPoolOptions, CsvWorkerPoolStats, CsvTaskOptions, CsvTaskResult, CsvTaskPriority, SortConfig, SortOrder, FilterConfig, FilterCondition, FilterOperator, SearchConfig, GroupByConfig, AggregateConfig, AggregateFunction, PageConfig, QueryConfig, FilterResult, PageResult, GroupResult, AggregateResult, QueryResult } from "./types.js";
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CSV Worker Module - Node.js Entry Point
|
|
3
|
+
*
|
|
4
|
+
* Exports stub implementations. Web Workers are browser-only.
|
|
5
|
+
*/
|
|
6
|
+
export { CsvWorkerPool, CsvWorkerSession, hasWorkerSupport, getDefaultWorkerPool, terminateDefaultWorkerPool, parseWithPool, formatWithPool } from "./pool.browser.js";
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CSV Worker Pool - Browser Implementation
|
|
3
|
+
*
|
|
4
|
+
* High-performance worker pool for CSV operations in the browser.
|
|
5
|
+
* Offloads CPU-intensive operations to Web Workers to keep UI responsive.
|
|
6
|
+
*
|
|
7
|
+
* Features:
|
|
8
|
+
* - Parse/Format: Basic CSV operations
|
|
9
|
+
* - Session Management: Keep data in worker memory for repeated operations
|
|
10
|
+
* - Data Operations: sort, filter, search, groupBy, aggregate, pagination
|
|
11
|
+
* - Batch Query: Execute multiple operations in single round-trip
|
|
12
|
+
* - Task prioritization and cancellation
|
|
13
|
+
* - Automatic worker scaling
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```ts
|
|
17
|
+
* // Simple parsing
|
|
18
|
+
* const result = await parseWithPool(csvString, { headers: true });
|
|
19
|
+
*
|
|
20
|
+
* // Session-based operations for interactive data exploration
|
|
21
|
+
* const session = new CsvWorkerSession();
|
|
22
|
+
* await session.load(csvString, { headers: true });
|
|
23
|
+
*
|
|
24
|
+
* // Batch query - single round-trip for multiple operations
|
|
25
|
+
* const result = await session.query({
|
|
26
|
+
* sort: { column: 'age', order: 'desc' },
|
|
27
|
+
* filter: { conditions: [{ column: 'status', operator: 'eq', value: 'active' }] },
|
|
28
|
+
* page: { page: 1, pageSize: 20 }
|
|
29
|
+
* });
|
|
30
|
+
*
|
|
31
|
+
* session.dispose();
|
|
32
|
+
* ```
|
|
33
|
+
*/
|
|
34
|
+
import type { CsvWorkerPoolOptions, CsvWorkerPoolStats, CsvTaskOptions, CsvTaskResult, SortConfig, FilterConfig, SearchConfig, GroupByConfig, AggregateConfig, PageConfig, QueryConfig, FilterResult, PageResult, GroupResult, AggregateResult, QueryResult, CsvParseOptions, CsvFormatOptions, CsvParseResult } from "./types.js";
|
|
35
|
+
/** Check if Web Workers are available */
|
|
36
|
+
export declare function hasWorkerSupport(): boolean;
|
|
37
|
+
declare class CsvWorkerPool {
|
|
38
|
+
private readonly _options;
|
|
39
|
+
private readonly _workers;
|
|
40
|
+
private readonly _highQueue;
|
|
41
|
+
private readonly _normalQueue;
|
|
42
|
+
private readonly _lowQueue;
|
|
43
|
+
private readonly _pendingTasks;
|
|
44
|
+
private _nextTaskId;
|
|
45
|
+
private _nextWorkerId;
|
|
46
|
+
private _terminated;
|
|
47
|
+
private _completedTasks;
|
|
48
|
+
private _failedTasks;
|
|
49
|
+
private _workerUrl;
|
|
50
|
+
private readonly _useCustomUrl;
|
|
51
|
+
private _initPromise;
|
|
52
|
+
constructor(options?: CsvWorkerPoolOptions);
|
|
53
|
+
/**
|
|
54
|
+
* Create and initialize a worker pool.
|
|
55
|
+
* This is the recommended way to create a pool for immediate use.
|
|
56
|
+
*/
|
|
57
|
+
static create(options?: CsvWorkerPoolOptions): Promise<CsvWorkerPool>;
|
|
58
|
+
/**
|
|
59
|
+
* Ensure the pool is initialized (worker URL loaded).
|
|
60
|
+
* Called automatically before first task execution.
|
|
61
|
+
*/
|
|
62
|
+
private _ensureInitialized;
|
|
63
|
+
parse(data: string, options?: CsvParseOptions & {
|
|
64
|
+
sessionId?: string;
|
|
65
|
+
}, taskOptions?: CsvTaskOptions): Promise<CsvTaskResult<string[][] | CsvParseResult<Record<string, string>>>>;
|
|
66
|
+
format(data: any[][], options?: CsvFormatOptions, taskOptions?: CsvTaskOptions): Promise<CsvTaskResult<string>>;
|
|
67
|
+
load(sessionId: string, data: any[] | any[][], headers?: string[], taskOptions?: CsvTaskOptions): Promise<CsvTaskResult<{
|
|
68
|
+
rowCount: number;
|
|
69
|
+
headers: string[];
|
|
70
|
+
}>>;
|
|
71
|
+
getData(sessionId: string, taskOptions?: CsvTaskOptions): Promise<CsvTaskResult<{
|
|
72
|
+
data: Record<string, any>[];
|
|
73
|
+
headers: string[];
|
|
74
|
+
rowCount: number;
|
|
75
|
+
}>>;
|
|
76
|
+
clear(sessionId?: string, taskOptions?: CsvTaskOptions): Promise<CsvTaskResult<void>>;
|
|
77
|
+
sort(sessionId: string, config: SortConfig | SortConfig[], taskOptions?: CsvTaskOptions): Promise<CsvTaskResult<{
|
|
78
|
+
rowCount: number;
|
|
79
|
+
}>>;
|
|
80
|
+
filter(sessionId: string, config: FilterConfig, taskOptions?: CsvTaskOptions): Promise<FilterResult>;
|
|
81
|
+
search(sessionId: string, config: SearchConfig, taskOptions?: CsvTaskOptions): Promise<FilterResult>;
|
|
82
|
+
groupBy(sessionId: string, config: GroupByConfig, taskOptions?: CsvTaskOptions): Promise<GroupResult>;
|
|
83
|
+
aggregate(sessionId: string, config: AggregateConfig[], taskOptions?: CsvTaskOptions): Promise<AggregateResult>;
|
|
84
|
+
getPage(sessionId: string, config: PageConfig, taskOptions?: CsvTaskOptions): Promise<PageResult>;
|
|
85
|
+
query(sessionId: string, config: QueryConfig, taskOptions?: CsvTaskOptions): Promise<QueryResult>;
|
|
86
|
+
getStats(): CsvWorkerPoolStats;
|
|
87
|
+
terminate(): void;
|
|
88
|
+
/** Execute and unwrap result - for operations that return data with duration */
|
|
89
|
+
private _unwrap;
|
|
90
|
+
private _execute;
|
|
91
|
+
private _cleanupTask;
|
|
92
|
+
private get _pendingQueueSize();
|
|
93
|
+
private _enqueueTask;
|
|
94
|
+
private _dequeueTask;
|
|
95
|
+
private _processQueue;
|
|
96
|
+
private _createWorker;
|
|
97
|
+
private _assignTask;
|
|
98
|
+
private _handleWorkerMessage;
|
|
99
|
+
private _handleWorkerError;
|
|
100
|
+
private _releaseWorker;
|
|
101
|
+
private _terminateWorker;
|
|
102
|
+
private _cancelTask;
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* High-level API for interactive CSV data exploration.
|
|
106
|
+
*
|
|
107
|
+
* Keeps data in worker memory for efficient repeated operations.
|
|
108
|
+
*
|
|
109
|
+
* @example
|
|
110
|
+
* ```ts
|
|
111
|
+
* const session = await CsvWorkerSession.create();
|
|
112
|
+
*
|
|
113
|
+
* // Load data
|
|
114
|
+
* await session.load(csvString, { headers: true });
|
|
115
|
+
*
|
|
116
|
+
* // Batch query - most efficient for multiple operations
|
|
117
|
+
* const result = await session.query({
|
|
118
|
+
* sort: { column: 'age', order: 'desc' },
|
|
119
|
+
* filter: { conditions: [{ column: 'status', operator: 'eq', value: 'active' }] },
|
|
120
|
+
* page: { page: 1, pageSize: 50 }
|
|
121
|
+
* });
|
|
122
|
+
*
|
|
123
|
+
* // Or use individual operations
|
|
124
|
+
* await session.sort({ column: 'name', order: 'asc' });
|
|
125
|
+
* const filtered = await session.filter({
|
|
126
|
+
* conditions: [{ column: 'age', operator: 'gt', value: 30 }]
|
|
127
|
+
* });
|
|
128
|
+
*
|
|
129
|
+
* // Cleanup
|
|
130
|
+
* session.dispose();
|
|
131
|
+
* ```
|
|
132
|
+
*/
|
|
133
|
+
export declare class CsvWorkerSession {
|
|
134
|
+
private readonly _pool;
|
|
135
|
+
private readonly _sessionId;
|
|
136
|
+
private _disposed;
|
|
137
|
+
private _headers;
|
|
138
|
+
private _rowCount;
|
|
139
|
+
/** Use CsvWorkerSession.create() instead for lazy pool initialization */
|
|
140
|
+
constructor(pool: CsvWorkerPool);
|
|
141
|
+
/** Create a new session with optional pool */
|
|
142
|
+
static create(pool?: CsvWorkerPool): Promise<CsvWorkerSession>;
|
|
143
|
+
get sessionId(): string;
|
|
144
|
+
get headers(): string[];
|
|
145
|
+
get rowCount(): number;
|
|
146
|
+
/**
|
|
147
|
+
* Load CSV string or data into session
|
|
148
|
+
*/
|
|
149
|
+
load(csvOrData: string | any[] | any[][], options?: CsvParseOptions & {
|
|
150
|
+
headers?: string[] | boolean;
|
|
151
|
+
}): Promise<{
|
|
152
|
+
rowCount: number;
|
|
153
|
+
headers: string[];
|
|
154
|
+
}>;
|
|
155
|
+
/** Get all data */
|
|
156
|
+
getData: () => Promise<{
|
|
157
|
+
data: Record<string, any>[];
|
|
158
|
+
headers: string[];
|
|
159
|
+
rowCount: number;
|
|
160
|
+
}>;
|
|
161
|
+
/** Sort data in place */
|
|
162
|
+
sort: (config: SortConfig | SortConfig[]) => Promise<{
|
|
163
|
+
rowCount: number;
|
|
164
|
+
}>;
|
|
165
|
+
/** Filter data (resets to original data before filtering) */
|
|
166
|
+
filter: (config: FilterConfig) => Promise<FilterResult<Record<string, any>>>;
|
|
167
|
+
/** Search across columns */
|
|
168
|
+
search: (config: SearchConfig) => Promise<FilterResult<Record<string, any>>>;
|
|
169
|
+
/** Group by and aggregate */
|
|
170
|
+
groupBy: (config: GroupByConfig) => Promise<GroupResult<Record<string, any>>>;
|
|
171
|
+
/** Aggregate entire dataset */
|
|
172
|
+
aggregate: (config: AggregateConfig[]) => Promise<AggregateResult>;
|
|
173
|
+
/** Get paginated data */
|
|
174
|
+
getPage: (config: PageConfig) => Promise<PageResult<Record<string, any>>>;
|
|
175
|
+
/**
|
|
176
|
+
* Execute batch query - multiple operations in single round-trip
|
|
177
|
+
* Order of operations: sort -> filter -> search -> groupBy/aggregate -> page
|
|
178
|
+
*/
|
|
179
|
+
query: (config: QueryConfig) => Promise<QueryResult<Record<string, any>>>;
|
|
180
|
+
/** Dispose session and free worker memory */
|
|
181
|
+
dispose(): Promise<void>;
|
|
182
|
+
/** Wrap operation with disposed check */
|
|
183
|
+
private _wrap;
|
|
184
|
+
}
|
|
185
|
+
/** Get or create the default worker pool (with lazy initialization) */
|
|
186
|
+
export declare function getDefaultWorkerPool(): Promise<CsvWorkerPool>;
|
|
187
|
+
export declare function terminateDefaultWorkerPool(): void;
|
|
188
|
+
/** Parse CSV using worker pool */
|
|
189
|
+
export declare function parseWithPool(data: string, options?: CsvParseOptions, taskOptions?: CsvTaskOptions): Promise<CsvTaskResult<string[][] | CsvParseResult<Record<string, string>>>>;
|
|
190
|
+
/** Format data to CSV using worker pool */
|
|
191
|
+
export declare function formatWithPool(data: any[][], options?: CsvFormatOptions, taskOptions?: CsvTaskOptions): Promise<CsvTaskResult<string>>;
|
|
192
|
+
export { CsvWorkerPool };
|
|
193
|
+
export type { CsvWorkerPoolOptions, CsvWorkerPoolStats, CsvTaskOptions, CsvTaskResult, CsvTaskPriority, SortConfig, SortOrder, FilterConfig, FilterCondition, FilterOperator, SearchConfig, GroupByConfig, AggregateConfig, AggregateFunction, PageConfig, QueryConfig, FilterResult, PageResult, GroupResult, AggregateResult, QueryResult } from "./types.js";
|