@cj-tech-master/excelts 4.2.1 → 4.2.2
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/THIRD_PARTY_NOTICES.md +0 -31
- package/dist/browser/index.browser.d.ts +1 -0
- package/dist/browser/index.browser.js +12 -0
- package/dist/{esm/modules/archive → browser/modules/archive/compression}/compress.base.js +1 -1
- package/dist/{types/modules/archive → browser/modules/archive/compression}/compress.browser.d.ts +2 -8
- package/dist/browser/modules/archive/{compress.browser.js → compression/compress.browser.js} +3 -11
- package/dist/browser/modules/archive/{compress.d.ts → compression/compress.d.ts} +2 -2
- package/dist/{esm/modules/archive → browser/modules/archive/compression}/compress.js +1 -1
- package/dist/browser/modules/archive/{crc32.browser.d.ts → compression/crc32.browser.d.ts} +1 -1
- package/dist/browser/modules/archive/{crc32.d.ts → compression/crc32.d.ts} +1 -1
- package/dist/browser/modules/archive/{crc32.js → compression/crc32.js} +1 -1
- package/dist/browser/modules/archive/{deflate-fallback.js → compression/deflate-fallback.js} +1 -1
- package/dist/browser/modules/archive/{streaming-compress.browser.d.ts → compression/streaming-compress.browser.d.ts} +2 -2
- package/dist/browser/modules/archive/{streaming-compress.browser.js → compression/streaming-compress.browser.js} +3 -3
- package/dist/browser/modules/archive/{streaming-compress.d.ts → compression/streaming-compress.d.ts} +2 -2
- package/dist/browser/modules/archive/{streaming-compress.js → compression/streaming-compress.js} +2 -2
- package/dist/browser/modules/archive/defaults.d.ts +1 -0
- package/dist/browser/modules/archive/defaults.js +6 -3
- package/dist/browser/modules/archive/index.base.d.ts +4 -4
- package/dist/browser/modules/archive/index.base.js +3 -6
- package/dist/browser/modules/archive/index.browser.d.ts +3 -4
- package/dist/browser/modules/archive/index.browser.js +3 -7
- package/dist/browser/modules/archive/index.d.ts +3 -4
- package/dist/browser/modules/archive/index.js +3 -5
- package/dist/browser/modules/archive/internal/byte-queue.d.ts +33 -0
- package/dist/browser/modules/archive/internal/byte-queue.js +407 -0
- package/dist/browser/modules/archive/io/archive-sink.d.ts +8 -0
- package/dist/browser/modules/archive/io/archive-sink.js +45 -0
- package/dist/browser/modules/archive/io/archive-source.d.ts +6 -0
- package/dist/browser/modules/archive/io/archive-source.js +100 -0
- package/dist/browser/modules/archive/{extract.d.ts → unzip/extract.d.ts} +2 -2
- package/dist/browser/modules/archive/unzip/index.d.ts +40 -0
- package/dist/browser/modules/archive/unzip/index.js +164 -0
- package/dist/browser/modules/archive/{parse.base.d.ts → unzip/stream.base.d.ts} +36 -2
- package/dist/browser/modules/archive/unzip/stream.base.js +1022 -0
- package/dist/browser/modules/archive/{parse.browser.d.ts → unzip/stream.browser.d.ts} +1 -1
- package/dist/browser/modules/archive/{parse.browser.js → unzip/stream.browser.js} +371 -110
- package/dist/browser/modules/archive/{parse.d.ts → unzip/stream.d.ts} +2 -2
- package/dist/{esm/modules/archive/parse.js → browser/modules/archive/unzip/stream.js} +6 -5
- package/dist/browser/modules/archive/{zip-parser.d.ts → unzip/zip-parser.d.ts} +1 -1
- package/dist/{esm/modules/archive → browser/modules/archive/unzip}/zip-parser.js +38 -24
- package/dist/browser/modules/archive/utils/async-queue.d.ts +7 -0
- package/dist/browser/modules/archive/utils/async-queue.js +103 -0
- package/dist/browser/modules/archive/utils/bytes.js +16 -16
- package/dist/browser/modules/archive/utils/compressibility.d.ts +10 -0
- package/dist/browser/modules/archive/utils/compressibility.js +57 -0
- package/dist/browser/modules/archive/utils/parse-buffer.js +21 -23
- package/dist/browser/modules/archive/utils/pattern-scanner.d.ts +21 -0
- package/dist/browser/modules/archive/utils/pattern-scanner.js +27 -0
- package/dist/browser/modules/archive/utils/timestamps.js +62 -1
- package/dist/browser/modules/archive/utils/zip-extra-fields.d.ts +1 -1
- package/dist/browser/modules/archive/utils/zip-extra-fields.js +26 -14
- package/dist/browser/modules/archive/zip/index.d.ts +42 -0
- package/dist/browser/modules/archive/zip/index.js +157 -0
- package/dist/browser/modules/archive/{streaming-zip.d.ts → zip/stream.d.ts} +28 -5
- package/dist/browser/modules/archive/{streaming-zip.js → zip/stream.js} +192 -48
- package/dist/browser/modules/archive/zip/zip-bytes.d.ts +73 -0
- package/dist/browser/modules/archive/zip/zip-bytes.js +239 -0
- package/dist/{esm/modules/archive → browser/modules/archive/zip}/zip-entry-metadata.js +3 -3
- package/dist/browser/modules/archive/{zip-records.d.ts → zip-spec/zip-records.d.ts} +20 -0
- package/dist/browser/modules/archive/zip-spec/zip-records.js +126 -0
- package/dist/browser/modules/excel/stream/workbook-reader.browser.js +1 -1
- package/dist/browser/modules/excel/stream/workbook-writer.browser.d.ts +1 -1
- package/dist/browser/modules/excel/stream/workbook-writer.browser.js +1 -1
- package/dist/browser/modules/excel/utils/ooxml-validator.d.ts +48 -0
- package/dist/browser/modules/excel/utils/ooxml-validator.js +469 -0
- package/dist/browser/modules/excel/worksheet.js +5 -2
- package/dist/browser/modules/excel/xlsx/xform/drawing/ctrl-prop-xform.d.ts +1 -0
- package/dist/browser/modules/excel/xlsx/xform/drawing/ctrl-prop-xform.js +13 -1
- package/dist/browser/modules/excel/xlsx/xform/drawing/sp-xform.d.ts +18 -0
- package/dist/browser/modules/excel/xlsx/xform/drawing/sp-xform.js +112 -0
- package/dist/browser/modules/excel/xlsx/xform/drawing/two-cell-anchor-xform.d.ts +6 -1
- package/dist/browser/modules/excel/xlsx/xform/drawing/two-cell-anchor-xform.js +30 -2
- package/dist/browser/modules/excel/xlsx/xform/drawing/vml-drawing-xform.js +11 -0
- package/dist/browser/modules/excel/xlsx/xform/sheet/page-setup-xform.d.ts +1 -0
- package/dist/browser/modules/excel/xlsx/xform/sheet/page-setup-xform.js +16 -2
- package/dist/browser/modules/excel/xlsx/xform/sheet/worksheet-xform.js +110 -12
- package/dist/browser/modules/excel/xlsx/xlsx.browser.js +3 -6
- package/dist/browser/modules/excel/xlsx/xlsx.js +1 -1
- package/dist/browser/modules/stream/base-transform.d.ts +3 -0
- package/dist/browser/modules/stream/base-transform.js +34 -20
- package/dist/browser/modules/stream/buffered-stream.d.ts +2 -12
- package/dist/browser/modules/stream/chunked-builder.js +4 -4
- package/dist/browser/modules/stream/index.browser.d.ts +13 -19
- package/dist/browser/modules/stream/index.browser.js +10 -22
- package/dist/browser/modules/stream/index.d.ts +18 -41
- package/dist/browser/modules/stream/index.js +15 -44
- package/dist/browser/modules/stream/internal/event-utils.d.ts +17 -0
- package/dist/browser/modules/stream/internal/event-utils.js +40 -0
- package/dist/browser/modules/stream/internal/type-guards.d.ts +9 -0
- package/dist/browser/modules/stream/internal/type-guards.js +24 -0
- package/dist/browser/modules/stream/pull-stream.d.ts +5 -6
- package/dist/browser/modules/stream/pull-stream.js +107 -43
- package/dist/browser/modules/stream/shared.d.ts +1 -1
- package/dist/browser/modules/stream/shared.js +7 -4
- package/dist/browser/modules/stream/streams.browser.d.ts +32 -44
- package/dist/browser/modules/stream/streams.browser.js +921 -836
- package/dist/browser/modules/stream/streams.d.ts +4 -20
- package/dist/browser/modules/stream/streams.js +146 -95
- package/dist/browser/modules/stream/utils.js +5 -38
- package/dist/cjs/modules/archive/{compress.base.js → compression/compress.base.js} +1 -1
- package/dist/cjs/modules/archive/{compress.browser.js → compression/compress.browser.js} +3 -11
- package/dist/cjs/modules/archive/{compress.js → compression/compress.js} +1 -1
- package/dist/cjs/modules/archive/{crc32.js → compression/crc32.js} +1 -1
- package/dist/cjs/modules/archive/{deflate-fallback.js → compression/deflate-fallback.js} +1 -1
- package/dist/cjs/modules/archive/{streaming-compress.browser.js → compression/streaming-compress.browser.js} +3 -3
- package/dist/cjs/modules/archive/{streaming-compress.js → compression/streaming-compress.js} +2 -2
- package/dist/cjs/modules/archive/defaults.js +7 -4
- package/dist/cjs/modules/archive/index.base.js +9 -19
- package/dist/cjs/modules/archive/index.browser.js +4 -10
- package/dist/cjs/modules/archive/index.js +4 -8
- package/dist/cjs/modules/archive/internal/byte-queue.js +411 -0
- package/dist/cjs/modules/archive/io/archive-sink.js +49 -0
- package/dist/cjs/modules/archive/io/archive-source.js +105 -0
- package/dist/cjs/modules/archive/unzip/index.js +170 -0
- package/dist/cjs/modules/archive/unzip/stream.base.js +1044 -0
- package/dist/cjs/modules/archive/{parse.browser.js → unzip/stream.browser.js} +372 -111
- package/dist/cjs/modules/archive/{parse.js → unzip/stream.js} +9 -8
- package/dist/cjs/modules/archive/{zip-parser.js → unzip/zip-parser.js} +47 -33
- package/dist/cjs/modules/archive/utils/async-queue.js +106 -0
- package/dist/cjs/modules/archive/utils/bytes.js +16 -16
- package/dist/cjs/modules/archive/utils/compressibility.js +60 -0
- package/dist/cjs/modules/archive/utils/parse-buffer.js +21 -23
- package/dist/cjs/modules/archive/utils/pattern-scanner.js +31 -0
- package/dist/cjs/modules/archive/utils/timestamps.js +64 -3
- package/dist/cjs/modules/archive/utils/zip-extra-fields.js +26 -14
- package/dist/cjs/modules/archive/zip/index.js +162 -0
- package/dist/cjs/modules/archive/{streaming-zip.js → zip/stream.js} +194 -50
- package/dist/cjs/modules/archive/zip/zip-bytes.js +242 -0
- package/dist/cjs/modules/archive/{zip-entry-metadata.js → zip/zip-entry-metadata.js} +5 -5
- package/dist/cjs/modules/archive/zip-spec/zip-records.js +136 -0
- package/dist/cjs/modules/excel/stream/workbook-reader.browser.js +2 -2
- package/dist/cjs/modules/excel/stream/workbook-writer.browser.js +4 -4
- package/dist/cjs/modules/excel/utils/ooxml-validator.js +475 -0
- package/dist/cjs/modules/excel/worksheet.js +5 -2
- package/dist/cjs/modules/excel/xlsx/xform/drawing/ctrl-prop-xform.js +13 -1
- package/dist/cjs/modules/excel/xlsx/xform/drawing/sp-xform.js +115 -0
- package/dist/cjs/modules/excel/xlsx/xform/drawing/two-cell-anchor-xform.js +30 -2
- package/dist/cjs/modules/excel/xlsx/xform/drawing/vml-drawing-xform.js +11 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/page-setup-xform.js +16 -2
- package/dist/cjs/modules/excel/xlsx/xform/sheet/worksheet-xform.js +110 -12
- package/dist/cjs/modules/excel/xlsx/xlsx.browser.js +6 -9
- package/dist/cjs/modules/excel/xlsx/xlsx.js +2 -2
- package/dist/cjs/modules/stream/base-transform.js +34 -20
- package/dist/cjs/modules/stream/chunked-builder.js +4 -4
- package/dist/cjs/modules/stream/index.browser.js +10 -17
- package/dist/cjs/modules/stream/index.js +15 -39
- package/dist/cjs/modules/stream/internal/event-utils.js +43 -0
- package/dist/cjs/modules/stream/internal/type-guards.js +30 -0
- package/dist/cjs/modules/stream/pull-stream.js +107 -43
- package/dist/cjs/modules/stream/shared.js +7 -4
- package/dist/cjs/modules/stream/streams.browser.js +927 -847
- package/dist/cjs/modules/stream/streams.js +156 -107
- package/dist/cjs/modules/stream/utils.js +3 -36
- package/dist/esm/index.browser.js +12 -0
- package/dist/{browser/modules/archive → esm/modules/archive/compression}/compress.base.js +1 -1
- package/dist/esm/modules/archive/{compress.browser.js → compression/compress.browser.js} +3 -11
- package/dist/{browser/modules/archive → esm/modules/archive/compression}/compress.js +1 -1
- package/dist/esm/modules/archive/{crc32.js → compression/crc32.js} +1 -1
- package/dist/esm/modules/archive/{deflate-fallback.js → compression/deflate-fallback.js} +1 -1
- package/dist/esm/modules/archive/{streaming-compress.browser.js → compression/streaming-compress.browser.js} +3 -3
- package/dist/esm/modules/archive/{streaming-compress.js → compression/streaming-compress.js} +2 -2
- package/dist/esm/modules/archive/defaults.js +6 -3
- package/dist/esm/modules/archive/index.base.js +3 -6
- package/dist/esm/modules/archive/index.browser.js +3 -7
- package/dist/esm/modules/archive/index.js +3 -5
- package/dist/esm/modules/archive/internal/byte-queue.js +407 -0
- package/dist/esm/modules/archive/io/archive-sink.js +45 -0
- package/dist/esm/modules/archive/io/archive-source.js +100 -0
- package/dist/esm/modules/archive/unzip/index.js +164 -0
- package/dist/esm/modules/archive/unzip/stream.base.js +1022 -0
- package/dist/esm/modules/archive/{parse.browser.js → unzip/stream.browser.js} +371 -110
- package/dist/{browser/modules/archive/parse.js → esm/modules/archive/unzip/stream.js} +6 -5
- package/dist/{browser/modules/archive → esm/modules/archive/unzip}/zip-parser.js +38 -24
- package/dist/esm/modules/archive/utils/async-queue.js +103 -0
- package/dist/esm/modules/archive/utils/bytes.js +16 -16
- package/dist/esm/modules/archive/utils/compressibility.js +57 -0
- package/dist/esm/modules/archive/utils/parse-buffer.js +21 -23
- package/dist/esm/modules/archive/utils/pattern-scanner.js +27 -0
- package/dist/esm/modules/archive/utils/timestamps.js +62 -1
- package/dist/esm/modules/archive/utils/zip-extra-fields.js +26 -14
- package/dist/esm/modules/archive/zip/index.js +157 -0
- package/dist/esm/modules/archive/{streaming-zip.js → zip/stream.js} +192 -48
- package/dist/esm/modules/archive/zip/zip-bytes.js +239 -0
- package/dist/{browser/modules/archive → esm/modules/archive/zip}/zip-entry-metadata.js +3 -3
- package/dist/esm/modules/archive/zip-spec/zip-records.js +126 -0
- package/dist/esm/modules/excel/stream/workbook-reader.browser.js +1 -1
- package/dist/esm/modules/excel/stream/workbook-writer.browser.js +1 -1
- package/dist/esm/modules/excel/utils/ooxml-validator.js +469 -0
- package/dist/esm/modules/excel/worksheet.js +5 -2
- package/dist/esm/modules/excel/xlsx/xform/drawing/ctrl-prop-xform.js +13 -1
- package/dist/esm/modules/excel/xlsx/xform/drawing/sp-xform.js +112 -0
- package/dist/esm/modules/excel/xlsx/xform/drawing/two-cell-anchor-xform.js +30 -2
- package/dist/esm/modules/excel/xlsx/xform/drawing/vml-drawing-xform.js +11 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/page-setup-xform.js +16 -2
- package/dist/esm/modules/excel/xlsx/xform/sheet/worksheet-xform.js +110 -12
- package/dist/esm/modules/excel/xlsx/xlsx.browser.js +3 -6
- package/dist/esm/modules/excel/xlsx/xlsx.js +1 -1
- package/dist/esm/modules/stream/base-transform.js +34 -20
- package/dist/esm/modules/stream/chunked-builder.js +4 -4
- package/dist/esm/modules/stream/index.browser.js +10 -22
- package/dist/esm/modules/stream/index.js +15 -44
- package/dist/esm/modules/stream/internal/event-utils.js +40 -0
- package/dist/esm/modules/stream/internal/type-guards.js +24 -0
- package/dist/esm/modules/stream/pull-stream.js +107 -43
- package/dist/esm/modules/stream/shared.js +7 -4
- package/dist/esm/modules/stream/streams.browser.js +921 -836
- package/dist/esm/modules/stream/streams.js +146 -95
- package/dist/esm/modules/stream/utils.js +5 -38
- package/dist/iife/THIRD_PARTY_NOTICES.md +0 -31
- package/dist/iife/excelts.iife.js +6495 -4440
- package/dist/iife/excelts.iife.js.map +1 -1
- package/dist/iife/excelts.iife.min.js +103 -31
- package/dist/types/index.browser.d.ts +1 -0
- package/dist/{browser/modules/archive → types/modules/archive/compression}/compress.browser.d.ts +2 -8
- package/dist/types/modules/archive/{streaming-compress.browser.d.ts → compression/streaming-compress.browser.d.ts} +1 -1
- package/dist/types/modules/archive/defaults.d.ts +1 -0
- package/dist/types/modules/archive/index.base.d.ts +4 -4
- package/dist/types/modules/archive/index.browser.d.ts +3 -4
- package/dist/types/modules/archive/index.d.ts +3 -4
- package/dist/types/modules/archive/internal/byte-queue.d.ts +33 -0
- package/dist/types/modules/archive/io/archive-sink.d.ts +8 -0
- package/dist/types/modules/archive/io/archive-source.d.ts +6 -0
- package/dist/types/modules/archive/unzip/index.d.ts +40 -0
- package/dist/types/modules/archive/{parse.base.d.ts → unzip/stream.base.d.ts} +38 -4
- package/dist/types/modules/archive/{parse.browser.d.ts → unzip/stream.browser.d.ts} +2 -2
- package/dist/types/modules/archive/{parse.d.ts → unzip/stream.d.ts} +3 -3
- package/dist/types/modules/archive/{zip-parser.d.ts → unzip/zip-parser.d.ts} +1 -1
- package/dist/types/modules/archive/utils/async-queue.d.ts +7 -0
- package/dist/types/modules/archive/utils/compressibility.d.ts +10 -0
- package/dist/types/modules/archive/utils/pattern-scanner.d.ts +21 -0
- package/dist/types/modules/archive/utils/zip-extra-fields.d.ts +1 -1
- package/dist/types/modules/archive/zip/index.d.ts +42 -0
- package/dist/types/modules/archive/{streaming-zip.d.ts → zip/stream.d.ts} +29 -6
- package/dist/types/modules/archive/zip/zip-bytes.d.ts +73 -0
- package/dist/types/modules/archive/{zip-entry-metadata.d.ts → zip/zip-entry-metadata.d.ts} +1 -1
- package/dist/types/modules/archive/{zip-records.d.ts → zip-spec/zip-records.d.ts} +20 -0
- package/dist/types/modules/excel/stream/workbook-writer.browser.d.ts +1 -1
- package/dist/types/modules/excel/utils/ooxml-validator.d.ts +48 -0
- package/dist/types/modules/excel/xlsx/xform/drawing/ctrl-prop-xform.d.ts +1 -0
- package/dist/types/modules/excel/xlsx/xform/drawing/sp-xform.d.ts +18 -0
- package/dist/types/modules/excel/xlsx/xform/drawing/two-cell-anchor-xform.d.ts +6 -1
- package/dist/types/modules/excel/xlsx/xform/sheet/page-setup-xform.d.ts +1 -0
- package/dist/types/modules/stream/base-transform.d.ts +3 -0
- package/dist/types/modules/stream/buffered-stream.d.ts +2 -12
- package/dist/types/modules/stream/index.browser.d.ts +13 -19
- package/dist/types/modules/stream/index.d.ts +18 -41
- package/dist/types/modules/stream/internal/event-utils.d.ts +17 -0
- package/dist/types/modules/stream/internal/type-guards.d.ts +9 -0
- package/dist/types/modules/stream/pull-stream.d.ts +5 -6
- package/dist/types/modules/stream/shared.d.ts +1 -1
- package/dist/types/modules/stream/streams.browser.d.ts +32 -44
- package/dist/types/modules/stream/streams.d.ts +4 -20
- package/package.json +14 -10
- package/dist/browser/modules/archive/byte-queue.d.ts +0 -18
- package/dist/browser/modules/archive/byte-queue.js +0 -125
- package/dist/browser/modules/archive/parse.base.js +0 -644
- package/dist/browser/modules/archive/utils/zip-extra.d.ts +0 -18
- package/dist/browser/modules/archive/utils/zip-extra.js +0 -68
- package/dist/browser/modules/archive/zip-builder.d.ts +0 -117
- package/dist/browser/modules/archive/zip-builder.js +0 -292
- package/dist/browser/modules/archive/zip-constants.d.ts +0 -18
- package/dist/browser/modules/archive/zip-constants.js +0 -23
- package/dist/browser/modules/archive/zip-records.js +0 -84
- package/dist/cjs/modules/archive/byte-queue.js +0 -129
- package/dist/cjs/modules/archive/parse.base.js +0 -666
- package/dist/cjs/modules/archive/utils/zip-extra.js +0 -74
- package/dist/cjs/modules/archive/zip-builder.js +0 -297
- package/dist/cjs/modules/archive/zip-constants.js +0 -26
- package/dist/cjs/modules/archive/zip-records.js +0 -90
- package/dist/esm/modules/archive/byte-queue.js +0 -125
- package/dist/esm/modules/archive/parse.base.js +0 -644
- package/dist/esm/modules/archive/utils/zip-extra.js +0 -68
- package/dist/esm/modules/archive/zip-builder.js +0 -292
- package/dist/esm/modules/archive/zip-constants.js +0 -23
- package/dist/esm/modules/archive/zip-records.js +0 -84
- package/dist/types/modules/archive/byte-queue.d.ts +0 -18
- package/dist/types/modules/archive/utils/zip-extra.d.ts +0 -18
- package/dist/types/modules/archive/zip-builder.d.ts +0 -117
- package/dist/types/modules/archive/zip-constants.d.ts +0 -18
- /package/dist/browser/modules/archive/{compress.base.d.ts → compression/compress.base.d.ts} +0 -0
- /package/dist/browser/modules/archive/{crc32.base.d.ts → compression/crc32.base.d.ts} +0 -0
- /package/dist/browser/modules/archive/{crc32.base.js → compression/crc32.base.js} +0 -0
- /package/dist/browser/modules/archive/{crc32.browser.js → compression/crc32.browser.js} +0 -0
- /package/dist/browser/modules/archive/{deflate-fallback.d.ts → compression/deflate-fallback.d.ts} +0 -0
- /package/dist/browser/modules/archive/{streaming-compress.base.d.ts → compression/streaming-compress.base.d.ts} +0 -0
- /package/dist/browser/modules/archive/{streaming-compress.base.js → compression/streaming-compress.base.js} +0 -0
- /package/dist/browser/modules/archive/{extract.js → unzip/extract.js} +0 -0
- /package/dist/browser/modules/archive/{zip-entry-metadata.d.ts → zip/zip-entry-metadata.d.ts} +0 -0
- /package/dist/browser/modules/archive/{zip-entry-info.d.ts → zip-spec/zip-entry-info.d.ts} +0 -0
- /package/dist/browser/modules/archive/{zip-entry-info.js → zip-spec/zip-entry-info.js} +0 -0
- /package/dist/cjs/modules/archive/{crc32.base.js → compression/crc32.base.js} +0 -0
- /package/dist/cjs/modules/archive/{crc32.browser.js → compression/crc32.browser.js} +0 -0
- /package/dist/cjs/modules/archive/{streaming-compress.base.js → compression/streaming-compress.base.js} +0 -0
- /package/dist/cjs/modules/archive/{extract.js → unzip/extract.js} +0 -0
- /package/dist/cjs/modules/archive/{zip-entry-info.js → zip-spec/zip-entry-info.js} +0 -0
- /package/dist/esm/modules/archive/{crc32.base.js → compression/crc32.base.js} +0 -0
- /package/dist/esm/modules/archive/{crc32.browser.js → compression/crc32.browser.js} +0 -0
- /package/dist/esm/modules/archive/{streaming-compress.base.js → compression/streaming-compress.base.js} +0 -0
- /package/dist/esm/modules/archive/{extract.js → unzip/extract.js} +0 -0
- /package/dist/esm/modules/archive/{zip-entry-info.js → zip-spec/zip-entry-info.js} +0 -0
- /package/dist/types/modules/archive/{compress.base.d.ts → compression/compress.base.d.ts} +0 -0
- /package/dist/types/modules/archive/{compress.d.ts → compression/compress.d.ts} +0 -0
- /package/dist/types/modules/archive/{crc32.base.d.ts → compression/crc32.base.d.ts} +0 -0
- /package/dist/types/modules/archive/{crc32.browser.d.ts → compression/crc32.browser.d.ts} +0 -0
- /package/dist/types/modules/archive/{crc32.d.ts → compression/crc32.d.ts} +0 -0
- /package/dist/types/modules/archive/{deflate-fallback.d.ts → compression/deflate-fallback.d.ts} +0 -0
- /package/dist/types/modules/archive/{streaming-compress.base.d.ts → compression/streaming-compress.base.d.ts} +0 -0
- /package/dist/types/modules/archive/{streaming-compress.d.ts → compression/streaming-compress.d.ts} +0 -0
- /package/dist/types/modules/archive/{extract.d.ts → unzip/extract.d.ts} +0 -0
- /package/dist/types/modules/archive/{zip-entry-info.d.ts → zip-spec/zip-entry-info.d.ts} +0 -0
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* @cj-tech-master/excelts v4.2.
|
|
2
|
+
* @cj-tech-master/excelts v4.2.2
|
|
3
3
|
* TypeScript Excel Workbook Manager - Read and Write xlsx and csv Files.
|
|
4
4
|
* (c) 2026 cjnoname
|
|
5
5
|
* Released under the MIT License
|
|
6
6
|
*/
|
|
7
|
-
var ExcelTS=(function(e){let t=/^[A-Z]+\d+$/,n={_dictionary:`ABCDEFGHIJKLMNOPQRSTUVWXYZ`.split(``),_l2nFill:0,_l2n:{},_n2l:[],_level(e){return e<=26?1:e<=676?2:3},_fill(e){let t,n,r,i,a,o=1;if(e>=4)throw Error(`Out of bounds. Excel supports columns from 1 to 16384`);if(this._l2nFill<1&&e>=1){for(;o<=26;)t=this._dictionary[o-1],this._n2l[o]=t,this._l2n[t]=o,o++;this._l2nFill=1}if(this._l2nFill<2&&e>=2){for(o=27;o<=702;)n=o-27,r=n%26,i=Math.floor(n/26),t=this._dictionary[i]+this._dictionary[r],this._n2l[o]=t,this._l2n[t]=o,o++;this._l2nFill=2}if(this._l2nFill<3&&e>=3){for(o=703;o<=16384;)n=o-703,r=n%26,i=Math.floor(n/26)%26,a=Math.floor(n/676),t=this._dictionary[a]+this._dictionary[i]+this._dictionary[r],this._n2l[o]=t,this._l2n[t]=o,o++;this._l2nFill=3}},l2n(e){if(this._l2n[e]||this._fill(e.length),!this._l2n[e])throw Error(`Out of bounds. Invalid column letter: ${e}`);return this._l2n[e]},n2l(e){if(e<1||e>16384)throw Error(`${e} is out of bounds. Excel supports columns from 1 to 16384`);return this._n2l[e]||this._fill(this._level(e)),this._n2l[e]},_hash:{},validateAddress(e){if(!t.test(e))throw Error(`Invalid Address: ${e}`);return!0},decodeAddress(e){let t=e.length<5&&this._hash[e];if(t)return t;let n=!1,r=``,i=0,a=!1,o=``,s=0;for(let t=0,c;t<e.length;t++)if(c=e.charCodeAt(t),!a&&c>=65&&c<=90)n=!0,r+=e[t],i=i*26+c-64;else if(c>=48&&c<=57)a=!0,o+=e[t],s=s*10+c-48;else if(a&&n&&c!==36)break;if(!n)i=void 0;else if(i>16384)throw Error(`Out of bounds. Invalid column letter: ${r}`);a||(s=void 0),e=r+o;let c={address:e,col:i,row:s,$col$row:`$${r}$${o}`};return i<=100&&s<=100&&(this._hash[e]=c,this._hash[c.$col$row]=c),c},getAddress(e,t){if(t){let n=this.n2l(t)+e;return this.decodeAddress(n)}return this.decodeAddress(e)},decode(e){let t=e.split(`:`);if(t.length===2){let e=this.decodeAddress(t[0]),n=this.decodeAddress(t[1]),r={top:Math.min(e.row,n.row),left:Math.min(e.col,n.col),bottom:Math.max(e.row,n.row),right:Math.max(e.col,n.col),tl:``,br:``,dimensions:``};return r.tl=this.n2l(r.left)+r.top,r.br=this.n2l(r.right)+r.bottom,r.dimensions=`${r.tl}:${r.br}`,r}return this.decodeAddress(e)},decodeEx(e){let t=e.match(/^(?:(?:(?:'((?:[^']|'')+?)')|([^'^ !]+?))!)?(.*)$/),n=t[1]||t[2],r=t[3],i=r.split(`:`);if(i.length>1){let e=this.decodeAddress(i[0]),t=this.decodeAddress(i[1]),r=Math.min(e.row,t.row),a=Math.min(e.col,t.col),o=Math.max(e.row,t.row),s=Math.max(e.col,t.col),c=this.n2l(a)+r,l=this.n2l(s)+o;return{top:r,left:a,bottom:o,right:s,sheetName:n,tl:{address:c,col:a,row:r,$col$row:`$${this.n2l(a)}$${r}`,sheetName:n},br:{address:l,col:s,row:o,$col$row:`$${this.n2l(s)}$${o}`,sheetName:n},dimensions:`${c}:${l}`}}if(r.indexOf(`#`)===0)return n?{sheetName:n,error:r}:{error:r};let a=this.decodeAddress(r);return n?{sheetName:n,...a}:a},encodeAddress(e,t){return n.n2l(t)+e},encode(...e){switch(e.length){case 2:return n.encodeAddress(e[0],e[1]);case 4:return`${n.encodeAddress(e[0],e[1])}:${n.encodeAddress(e[2],e[3])}`;default:throw Error(`Can only encode with 2 or 4 arguments`)}},inRange(e,t){let[n,r,,i,a]=e,[o,s]=t;return o>=n&&o<=i&&s>=r&&s<=a}};var r=class e{constructor(...e){this.model={top:0,left:0,bottom:0,right:0},this.decode(e)}setTLBR(e,t,r,i,a){if(typeof e==`string`&&typeof t==`string`){let i=n.decodeAddress(e),a=n.decodeAddress(t);this.model={top:Math.min(i.row,a.row),left:Math.min(i.col,a.col),bottom:Math.max(i.row,a.row),right:Math.max(i.col,a.col),sheetName:typeof r==`string`?r:void 0}}else typeof e==`number`&&typeof t==`number`&&typeof r==`number`&&typeof i==`number`&&(this.model={top:Math.min(e,r),left:Math.min(t,i),bottom:Math.max(e,r),right:Math.max(t,i),sheetName:a})}decode(t){switch(t.length){case 5:typeof t[0]==`number`&&typeof t[1]==`number`&&typeof t[2]==`number`&&typeof t[3]==`number`&&typeof t[4]==`string`&&this.setTLBR(t[0],t[1],t[2],t[3],t[4]);break;case 4:typeof t[0]==`number`&&typeof t[1]==`number`&&typeof t[2]==`number`&&typeof t[3]==`number`&&this.setTLBR(t[0],t[1],t[2],t[3]);break;case 3:typeof t[0]==`string`&&typeof t[1]==`string`&&typeof t[2]==`string`&&this.setTLBR(t[0],t[1],t[2]);break;case 2:typeof t[0]==`string`&&typeof t[1]==`string`&&this.setTLBR(t[0],t[1]);break;case 1:{let r=t[0];if(r instanceof e)this.model={top:r.model.top,left:r.model.left,bottom:r.model.bottom,right:r.model.right,sheetName:r.sheetName};else if(Array.isArray(r))this.decode(r);else if(typeof r==`object`&&`top`in r&&`left`in r&&`bottom`in r&&`right`in r)this.model={top:r.top,left:r.left,bottom:r.bottom,right:r.right,sheetName:r.sheetName};else if(typeof r==`string`){let e=n.decodeEx(r);`top`in e?this.model={top:e.top,left:e.left,bottom:e.bottom,right:e.right,sheetName:e.sheetName}:`row`in e&&(this.model={top:e.row,left:e.col,bottom:e.row,right:e.col,sheetName:e.sheetName})}break}case 0:this.model={top:0,left:0,bottom:0,right:0};break;default:throw Error(`Invalid number of arguments to _getDimensions() - ${t.length}`)}}get top(){return this.model.top||1}set top(e){this.model.top=e}get left(){return this.model.left||1}set left(e){this.model.left=e}get bottom(){return this.model.bottom||1}set bottom(e){this.model.bottom=e}get right(){return this.model.right||1}set right(e){this.model.right=e}get sheetName(){return this.model.sheetName}set sheetName(e){this.model.sheetName=e}get _serialisedSheetName(){let{sheetName:e}=this.model;return e?/^[a-zA-Z0-9]*$/.test(e)?`${e}!`:`'${e}'!`:``}expand(e,t,n,r){(!this.model.top||e<this.top)&&(this.top=e),(!this.model.left||t<this.left)&&(this.left=t),(!this.model.bottom||n>this.bottom)&&(this.bottom=n),(!this.model.right||r>this.right)&&(this.right=r)}expandRow(e){if(e){let{dimensions:t,number:n}=e;t&&this.expand(n,t.min,n,t.max)}}expandToAddress(e){let t=n.decodeEx(e);`row`in t&&`col`in t&&this.expand(t.row,t.col,t.row,t.col)}get tl(){return n.n2l(this.left)+this.top}get $t$l(){return`$${n.n2l(this.left)}$${this.top}`}get br(){return n.n2l(this.right)+this.bottom}get $b$r(){return`$${n.n2l(this.right)}$${this.bottom}`}get range(){return`${this._serialisedSheetName+this.tl}:${this.br}`}get $range(){return`${this._serialisedSheetName+this.$t$l}:${this.$b$r}`}get shortRange(){return this.count>1?this.range:this._serialisedSheetName+this.tl}get $shortRange(){return this.count>1?this.$range:this._serialisedSheetName+this.$t$l}get count(){return(1+this.bottom-this.top)*(1+this.right-this.left)}toString(){return this.range}intersects(e){return!(e.sheetName&&this.sheetName&&e.sheetName!==this.sheetName||e.bottom<this.top||e.top>this.bottom||e.right<this.left||e.left>this.right)}contains(e){let t=n.decodeEx(e);return`row`in t&&`col`in t?this.containsEx(t):!1}containsEx(e){return e.sheetName&&this.sheetName&&e.sheetName!==this.sheetName?!1:e.row>=this.top&&e.row<=this.bottom&&e.col>=this.left&&e.col<=this.right}forEachAddress(e){for(let t=this.left;t<=this.right;t++)for(let r=this.top;r<=this.bottom;r++)e(n.encodeAddress(r,t),r,t)}};let i=function(e){return e[e.Null=0]=`Null`,e[e.Merge=1]=`Merge`,e[e.Number=2]=`Number`,e[e.String=3]=`String`,e[e.Date=4]=`Date`,e[e.Hyperlink=5]=`Hyperlink`,e[e.Formula=6]=`Formula`,e[e.SharedString=7]=`SharedString`,e[e.RichText=8]=`RichText`,e[e.Boolean=9]=`Boolean`,e[e.Error=10]=`Error`,e[e.JSON=11]=`JSON`,e[e.Checkbox=12]=`Checkbox`,e}({}),a=function(e){return e[e.None=0]=`None`,e[e.Master=1]=`Master`,e[e.Shared=2]=`Shared`,e}({}),o=function(e){return e[e.None=0]=`None`,e[e.OfficeDocument=1]=`OfficeDocument`,e[e.Worksheet=2]=`Worksheet`,e[e.CalcChain=3]=`CalcChain`,e[e.SharedStrings=4]=`SharedStrings`,e[e.Styles=5]=`Styles`,e[e.Theme=6]=`Theme`,e[e.Hyperlink=7]=`Hyperlink`,e}({}),s=function(e){return e[e.Xlsx=1]=`Xlsx`,e}({}),c=function(e){return e[e.LeftToRight=1]=`LeftToRight`,e[e.RightToLeft=2]=`RightToLeft`,e}({}),l={NotApplicable:`#N/A`,Ref:`#REF!`,Name:`#NAME?`,DivZero:`#DIV/0!`,Null:`#NULL!`,Value:`#VALUE!`,Num:`#NUM!`},u={ValueType:i,FormulaType:a,RelationshipType:o,DocumentType:s,ReadingOrder:c,ErrorValue:l},d={'"':`"`,"&":`&`,"<":`<`,">":`>`},f=/["&<>]/g;function p(e,t){if(e===t)return!0;if(e==null||t==null)return e===t;let n=typeof e;if(n!==typeof t||n!==`object`)return!1;let r=Array.isArray(e);if(r!==Array.isArray(t))return!1;if(r){let n=e.length;if(n!==t.length)return!1;for(let r=0;r<n;r++)if(!p(e[r],t[r]))return!1;return!0}let i=Object.keys(e),a=Object.keys(t);if(i.length!==a.length)return!1;for(let n=0,r=i.length;n<r;n++){let r=i[n];if(!Object.prototype.hasOwnProperty.call(t,r)||!p(e[r],t[r]))return!1}return!0}function m(e){return e.replace(f,e=>d[e])}function h(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function g(...e){let t=e[0]||{},n=e.length;for(let r=1;r<n;r++){let n=e[r];if(n)if(Array.isArray(n))for(let e=0,r=n.length;e<r;e++){let r=n[e];if(r===void 0)continue;let i=t[e];Array.isArray(r)?t[e]=g(Array.isArray(i)?i:[],r):h(r)?t[e]=g(h(i)?i:{},r):t[e]=r}else{let e=Object.keys(n);for(let r=0,i=e.length;r<i;r++){let i=e[r];if(i===`__proto__`||i===`constructor`||i===`prototype`)continue;let a=n[i];if(a===void 0)continue;let o=t[i];Array.isArray(a)?t[i]=g(Array.isArray(o)?o:[],a):h(a)?t[i]=g(h(o)?o:{},a):t[i]=a}}}return t}var _=class e{static{this.DEFAULT_CONFIGS={note:{margins:{insetmode:`auto`,inset:[.13,.13,.25,.25]},protection:{locked:`True`,lockText:`True`},editAs:`absolute`},type:`note`}}constructor(e){this.note=e}get model(){let t=null;switch(typeof this.note){case`string`:t={type:`note`,note:{texts:[{text:this.note}]}};break;default:t={type:`note`,note:this.note};break}return g({},e.DEFAULT_CONFIGS,t)}set model(e){let{note:t}=e,{texts:n}=t;n&&n.length===1&&Object.keys(n[0]).length===1?this.note=n[0].text:this.note=t}static fromModel(t){let n=new e;return n.model=t,n}};let v=/(([a-z_\-0-9]*)!)?([a-z0-9_$]{2,})([(])?/gi,y=/^([$])?([a-z]+)([$])?([1-9][0-9]*)$/i;function ee(e,t,r){let i=n.decode(t),a=n.decode(r);return e.replace(v,(e,t,r,o,s)=>{if(s)return e;let c=y.exec(o);if(c){let r=c[1],o=c[2].toUpperCase(),s=c[3],l=c[4];if(o.length>3||o.length===3&&o>`XFD`)return e;let u=n.l2n(o),d=parseInt(l,10);return r||(u+=a.col-i.col),s||(d+=a.row-i.row),(t||``)+(r||``)+n.n2l(u)+(s||``)+d}return e})}var b=class e{static{this.Types=u.ValueType}constructor(t,r,i){if(!t||!r)throw Error(`A Cell needs a Row`);this._row=t,this._column=r,n.validateAddress(i),this._address=i,this._value=D.create(e.Types.Null,this),this.style=this._mergeStyle(t.style,r.style,{}),this._mergeCount=0}get worksheet(){return this._row.worksheet}get workbook(){return this._row.worksheet.workbook}destroy(){delete this.style,delete this._value,delete this._row,delete this._column,delete this._address}get numFmt(){return this.style.numFmt}set numFmt(e){this.style.numFmt=e}get font(){return this.style.font}set font(e){this.style.font=e}get alignment(){return this.style.alignment}set alignment(e){this.style.alignment=e}get border(){return this.style.border}set border(e){this.style.border=e}get fill(){return this.style.fill}set fill(e){this.style.fill=e}get protection(){return this.style.protection}set protection(e){this.style.protection=e}_mergeStyle(e,t,n){let r=e&&e.numFmt||t&&t.numFmt;r&&(n.numFmt=r);let i=e&&e.font||t&&t.font;i&&(n.font=i);let a=e&&e.alignment||t&&t.alignment;a&&(n.alignment=a);let o=e&&e.border||t&&t.border;o&&(n.border=o);let s=e&&e.fill||t&&t.fill;s&&(n.fill=s);let c=e&&e.protection||t&&t.protection;return c&&(n.protection=c),n}get address(){return this._address}get row(){return this._row.number}get col(){return this._column.number}get $col$row(){return`$${this._column.letter}$${this.row}`}get type(){return this._value.type}get effectiveType(){return this._value.effectiveType}toCsvString(){return this._value.toCsvString()}addMergeRef(){this._mergeCount++}releaseMergeRef(){this._mergeCount--}get isMerged(){return this._mergeCount>0||this.type===e.Types.Merge}merge(t,n){this._value.release(),this._value=D.create(e.Types.Merge,this,t),n||(this.style=t.style)}unmerge(){this.type===e.Types.Merge&&(this._value.release(),this._value=D.create(e.Types.Null,this),this.style=this._mergeStyle(this._row.style,this._column.style,{}))}isMergedTo(t){return this._value.type===e.Types.Merge?this._value.isMergedTo(t):!1}get master(){return this.type===e.Types.Merge?this._value.master:this}get isHyperlink(){return this._value.type===e.Types.Hyperlink}get hyperlink(){return this._value.hyperlink}get value(){return this._value.value}set value(t){if(this.type===e.Types.Merge){this._value.master.value=t;return}this._value.release(),this._value=D.create(D.getType(t),this,t)}get note(){if(this._comment)return this._comment.note}set note(e){this._comment=new _(e)}get comment(){return this._comment}set comment(e){e===void 0?this._comment=void 0:e instanceof _?this._comment=e:this._comment=new _(e)}get text(){return this._value.toString()}get html(){return m(this.text)}toString(){return this.text}_upgradeToHyperlink(t){this.type===e.Types.String&&(this._value=D.create(e.Types.Hyperlink,this,{text:String(this._value.value),hyperlink:t}))}get formula(){return this._value.formula}get result(){return this._value.result}get formulaType(){return this._value.formulaType}get fullAddress(){let{worksheet:e}=this._row;return{sheetName:e.name,address:this.address,row:this.row,col:this.col}}get name(){return this.names[0]}set name(e){this.names=[e]}get names(){return this.workbook.definedNames.getNamesEx(this.fullAddress)}set names(e){let{definedNames:t}=this.workbook;t.removeAllNames(this.fullAddress),e.forEach(e=>{t.addEx(this.fullAddress,e)})}addName(e){this.workbook.definedNames.addEx(this.fullAddress,e)}removeName(e){this.workbook.definedNames.removeEx(this.fullAddress,e)}removeAllNames(){this.workbook.definedNames.removeAllNames(this.fullAddress)}get _dataValidations(){return this.worksheet.dataValidations}get dataValidation(){return this._dataValidations.find(this.address)}set dataValidation(e){this._dataValidations.add(this.address,e)}get model(){let{model:e}=this._value;return e.style=this.style,this._comment&&(e.comment=this._comment.model),e}set model(e){if(this._value.release(),this._value=D.create(e.type,this),this._value.model=e,e.comment)switch(e.comment.type){case`note`:this._comment=_.fromModel(e.comment);break}e.style?this.style=e.style:this.style={}}},te=class{constructor(e){this.model={address:e.address,type:b.Types.Null}}get value(){return null}set value(e){}get type(){return b.Types.Null}get effectiveType(){return b.Types.Null}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return``}release(){}toString(){return``}},x=class{constructor(e,t){this.model={address:e.address,type:b.Types.Number,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return b.Types.Number}get effectiveType(){return b.Types.Number}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value.toString()}release(){}toString(){return this.model.value.toString()}},ne=class{constructor(e,t){this.model={address:e.address,type:b.Types.String,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return b.Types.String}get effectiveType(){return b.Types.String}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return`"${this.model.value.replace(/"/g,`""`)}"`}release(){}toString(){return this.model.value}},S=class{constructor(e,t){this.model={address:e.address,type:b.Types.String,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}toString(){return this.model.value.richText.map(e=>e.text).join(``)}get type(){return b.Types.RichText}get effectiveType(){return b.Types.RichText}get address(){return this.model.address}set address(e){this.model.address=e}get text(){return this.toString()}toCsvString(){return`"${this.text.replace(/"/g,`""`)}"`}release(){}},C=class{constructor(e,t){this.model={address:e.address,type:b.Types.Date,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return b.Types.Date}get effectiveType(){return b.Types.Date}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value.toISOString()}release(){}toString(){return this.model.value.toString()}},w=class{constructor(e,t){this.model={address:e.address,type:b.Types.Hyperlink,text:t?t.text:void 0,hyperlink:t?t.hyperlink:void 0},t&&t.tooltip&&(this.model.tooltip=t.tooltip)}get value(){return{text:this.model.text||``,hyperlink:this.model.hyperlink||``,tooltip:this.model.tooltip}}set value(e){this.model.text=e.text,this.model.hyperlink=e.hyperlink,e.tooltip&&(this.model.tooltip=e.tooltip)}get text(){return this.model.text}set text(e){this.model.text=e}get hyperlink(){return this.model.hyperlink}set hyperlink(e){this.model.hyperlink=e}get type(){return b.Types.Hyperlink}get effectiveType(){return b.Types.Hyperlink}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.hyperlink||``}release(){}toString(){return this.model.text||``}},re=class{constructor(e,t){this.model={address:e.address,type:b.Types.Merge,master:t?t.address:void 0},this._master=t,t&&t.addMergeRef()}get value(){return this._master.value}set value(e){e instanceof b?(this._master&&this._master.releaseMergeRef(),e.addMergeRef(),this._master=e):this._master.value=e}isMergedTo(e){return e===this._master}get master(){return this._master}get type(){return b.Types.Merge}get effectiveType(){return this._master.effectiveType}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return``}release(){this._master.releaseMergeRef()}toString(){return this.value.toString()}},T=class{constructor(e,t){this.cell=e,this.model={address:e.address,type:b.Types.Formula,shareType:t?t.shareType:void 0,ref:t?t.ref:void 0,formula:t?t.formula:void 0,sharedFormula:t?t.sharedFormula:void 0,result:t?t.result:void 0}}_copyModel(e){let t={};return e.formula&&(t.formula=e.formula),e.result!==void 0&&(t.result=e.result),e.ref&&(t.ref=e.ref),e.shareType&&(t.shareType=e.shareType),e.sharedFormula&&(t.sharedFormula=e.sharedFormula),t}get value(){return this._copyModel(this.model)}set value(e){e.formula&&(this.model.formula=e.formula),e.result!==void 0&&(this.model.result=e.result),e.ref&&(this.model.ref=e.ref),e.shareType&&(this.model.shareType=e.shareType),e.sharedFormula&&(this.model.sharedFormula=e.sharedFormula)}validate(e){switch(D.getType(e)){case b.Types.Null:case b.Types.String:case b.Types.Number:case b.Types.Date:break;case b.Types.Hyperlink:case b.Types.Formula:default:throw Error(`Cannot process that type of result value`)}}get dependencies(){return{ranges:this.formula.match(/([a-zA-Z0-9]+!)?[A-Z]{1,3}\d{1,4}:[A-Z]{1,3}\d{1,4}/g),cells:this.formula.replace(/([a-zA-Z0-9]+!)?[A-Z]{1,3}\d{1,4}:[A-Z]{1,3}\d{1,4}/g,``).match(/([a-zA-Z0-9]+!)?[A-Z]{1,3}\d{1,4}/g)}}get formula(){return this.model.formula||this._getTranslatedFormula()||``}set formula(e){this.model.formula=e}get formulaType(){return this.model.formula?u.FormulaType.Master:this.model.sharedFormula?u.FormulaType.Shared:u.FormulaType.None}get result(){return this.model.result}set result(e){this.model.result=e}get type(){return b.Types.Formula}get effectiveType(){let e=this.model.result;return e==null?u.ValueType.Null:e instanceof String||typeof e==`string`?u.ValueType.String:typeof e==`number`?u.ValueType.Number:e instanceof Date?u.ValueType.Date:typeof e==`object`&&`error`in e?u.ValueType.Error:u.ValueType.Null}get address(){return this.model.address}set address(e){this.model.address=e}_getTranslatedFormula(){if(!this._translatedFormula&&this.model.sharedFormula){let{worksheet:e}=this.cell,t=e.findCell(this.model.sharedFormula);this._translatedFormula=t&&ee(t.formula,t.address,this.model.address)}return this._translatedFormula}toCsvString(){return`${this.model.result||``}`}release(){}toString(){return this.model.result?this.model.result.toString():``}},ie=class{constructor(e,t){this.model={address:e.address,type:b.Types.SharedString,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return b.Types.SharedString}get effectiveType(){return b.Types.SharedString}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value.toString()}release(){}toString(){return this.model.value.toString()}},ae=class{constructor(e,t){this.model={address:e.address,type:b.Types.Boolean,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return b.Types.Boolean}get effectiveType(){return b.Types.Boolean}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value?1:0}release(){}toString(){return this.model.value.toString()}},oe=class{constructor(e,t){this.model={address:e.address,type:b.Types.Checkbox,value:t.checkbox}}get value(){return{checkbox:this.model.value}}set value(e){this.model.value=e.checkbox}get type(){return b.Types.Checkbox}get effectiveType(){return b.Types.Boolean}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value?1:0}release(){}toString(){return this.model.value.toString()}},E=class{constructor(e,t){this.model={address:e.address,type:b.Types.Error,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return b.Types.Error}get effectiveType(){return b.Types.Error}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.toString()}release(){}toString(){return this.model.value.error.toString()}},se=class{constructor(e,t){this.model={address:e.address,type:b.Types.String,value:JSON.stringify(t),rawValue:t}}get value(){return this.model.rawValue}set value(e){this.model.rawValue=e,this.model.value=JSON.stringify(e)}get type(){return b.Types.String}get effectiveType(){return b.Types.String}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value}release(){}toString(){return this.model.value}};let D={getType(e){if(e==null)return b.Types.Null;if(e instanceof String||typeof e==`string`)return b.Types.String;if(typeof e==`number`)return b.Types.Number;if(typeof e==`boolean`)return b.Types.Boolean;if(e instanceof Date)return b.Types.Date;if(typeof e==`object`){if(`checkbox`in e&&typeof e.checkbox==`boolean`)return b.Types.Checkbox;if(`text`in e&&e.text&&`hyperlink`in e&&e.hyperlink)return b.Types.Hyperlink;if(`formula`in e&&e.formula||`sharedFormula`in e&&e.sharedFormula)return b.Types.Formula;if(`richText`in e&&e.richText)return b.Types.RichText;if(`sharedString`in e&&e.sharedString)return b.Types.SharedString;if(`error`in e&&e.error)return b.Types.Error}return b.Types.JSON},types:[{t:b.Types.Null,f:te},{t:b.Types.Number,f:x},{t:b.Types.String,f:ne},{t:b.Types.Date,f:C},{t:b.Types.Hyperlink,f:w},{t:b.Types.Formula,f:T},{t:b.Types.Merge,f:re},{t:b.Types.JSON,f:se},{t:b.Types.SharedString,f:ie},{t:b.Types.RichText,f:S},{t:b.Types.Boolean,f:ae},{t:b.Types.Error,f:E},{t:b.Types.Checkbox,f:oe}].reduce((e,t)=>(e[t.t]=t.f,e),[]),create(e,t,n){let r=this.types[e];if(!r)throw Error(`Could not create Value of type ${e}`);return new r(t,n)}};var ce=class{constructor(e,t){this._worksheet=e,this._number=t,this._cells=[],this.style={},this.outlineLevel=0}get number(){return this._number}get worksheet(){return this._worksheet}commit(){this._worksheet._commitRow(this)}destroy(){delete this._worksheet,delete this._cells,delete this.style}findCell(e){return this._cells[e-1]}getCellEx(e){let t=this._cells[e.col-1];if(!t){let n=this._worksheet.getColumn(e.col);t=new b(this,n,e.address),this._cells[e.col-1]=t}return t}getCell(e){let t;if(typeof e==`string`){let r=this._worksheet.getColumnKey(e);t=r?r.number:n.l2n(e)}else t=e;return this._cells[t-1]||this.getCellEx({address:n.encodeAddress(this._number,t),row:this._number,col:t})}splice(e,t,...n){let r=e+t,i=n.length-t,a=this._cells.length,o,s,c;if(i<0)for(o=e+n.length;o<=a;o++)c=this._cells[o-1],s=this._cells[o-i-1],s?(c=this.getCell(o),c.value=s.value,c.style=s.style,c.comment=s.comment):c&&(c.value=null,c.style={},c.comment=void 0);else if(i>0)for(o=a;o>=r;o--)s=this._cells[o-1],s?(c=this.getCell(o+i),c.value=s.value,c.style=s.style,c.comment=s.comment):this._cells[o+i-1]=void 0;for(o=0;o<n.length;o++)c=this.getCell(e+o),c.value=n[o],c.style={},c.comment=void 0}eachCell(e,t){let n=null,r;if(typeof e==`function`?r=e:(n=e,r=t),n&&n.includeEmpty){let e=this._cells.length;for(let t=1;t<=e;t++)r(this.getCell(t),t)}else this._cells.forEach((e,t)=>{e&&e.type!==u.ValueType.Null&&r(e,t+1)})}addPageBreak(e,t){let n=this._worksheet,r=Math.max(0,(e||0)-1)||0,i=Math.max(0,(t||0)-1)||16838,a={id:this._number,max:i,man:1};r&&(a.min=r),n.rowBreaks.push(a)}get values(){let e=[];return this._cells.forEach(t=>{t&&t.type!==u.ValueType.Null&&(e[t.col]=t.value)}),e}set values(e){if(this._cells=[],e)if(e instanceof Array){let t=0;Object.prototype.hasOwnProperty.call(e,`0`)&&(t=1),e.forEach((e,r)=>{e!==void 0&&(this.getCellEx({address:n.encodeAddress(this._number,r+t),row:this._number,col:r+t}).value=e)})}else this._worksheet.eachColumnKey((t,r)=>{e[r]!==void 0&&(this.getCellEx({address:n.encodeAddress(this._number,t.number),row:this._number,col:t.number}).value=e[r])})}getValues(){let e=[];return this._cells.forEach(t=>{t&&t.type!==u.ValueType.Null&&(e[t.col-1]=t.value)}),e}valuesToString(e=`,`){return this.getValues().join(e)}get hasValues(){return this._cells.some(e=>e&&e.type!==u.ValueType.Null)}get cellCount(){return this._cells.length}get actualCellCount(){let e=0;return this.eachCell(()=>{e++}),e}get dimensions(){let e=0,t=0;return this._cells.forEach(n=>{n&&n.type!==u.ValueType.Null&&((!e||e>n.col)&&(e=n.col),t<n.col&&(t=n.col))}),e>0?{min:e,max:t}:null}_applyStyle(e,t){this.style[e]=t,this._cells.forEach(n=>{n&&(n.style[e]=t)})}get numFmt(){return this.style.numFmt}set numFmt(e){e!==void 0&&this._applyStyle(`numFmt`,e)}get font(){return this.style.font}set font(e){e!==void 0&&this._applyStyle(`font`,e)}get alignment(){return this.style.alignment}set alignment(e){e!==void 0&&this._applyStyle(`alignment`,e)}get protection(){return this.style.protection}set protection(e){e!==void 0&&this._applyStyle(`protection`,e)}get border(){return this.style.border}set border(e){e!==void 0&&this._applyStyle(`border`,e)}get fill(){return this.style.fill}set fill(e){e!==void 0&&this._applyStyle(`fill`,e)}get hidden(){return!!this._hidden}set hidden(e){this._hidden=e}get outlineLevel(){return this._outlineLevel||0}set outlineLevel(e){this._outlineLevel=e}get collapsed(){return!!(this._outlineLevel&&this._outlineLevel>=this._worksheet.properties.outlineLevelRow)}get model(){let e=[],t=0,n=0;return this._cells.forEach(r=>{if(r){let i=r.model;i&&((!t||t>r.col)&&(t=r.col),n<r.col&&(n=r.col),e.push(i))}}),this.height||e.length?{cells:e,number:this.number,min:t,max:n,height:this.height,style:this.style,hidden:this.hidden,outlineLevel:this.outlineLevel,collapsed:this.collapsed}:null}set model(e){if(e.number!==this._number)throw Error(`Invalid row number in model`);this._cells=[];let t;e.cells.forEach(e=>{switch(e.type){case b.Types.Merge:break;default:{let r;if(e.address)r=n.decodeAddress(e.address);else if(t){let{row:e}=t,i=t.col+1;r={row:e,col:i,address:n.encodeAddress(e,i),$col$row:`$${n.n2l(i)}$${e}`}}t=r;let i=this.getCellEx(r);i.model=e;break}}}),e.height?this.height=e.height:delete this.height,this.hidden=e.hidden,this.outlineLevel=e.outlineLevel||0,this.style=e.style&&JSON.parse(JSON.stringify(e.style))||{}}},O=class e{constructor(e,t,n){this._worksheet=e,this._number=t,n!==!1&&(this.defn=n)}get number(){return this._number}get worksheet(){return this._worksheet}get letter(){return n.n2l(this._number)}get isCustomWidth(){return this.width!==void 0&&this.width!==9}get defn(){return{header:this._header,key:this.key,width:this.width,style:this.style,hidden:this.hidden,outlineLevel:this.outlineLevel}}set defn(e){e?(this.key=e.key,this.width=e.width===void 0?9:e.width,this.outlineLevel=e.outlineLevel,e.style?this.style=e.style:this.style={},this.header=e.header,this._hidden=!!e.hidden):(delete this._header,delete this._key,delete this.width,this.style={},this.outlineLevel=0)}get headers(){return Array.isArray(this._header)?this._header:this._header===void 0?[]:[this._header]}get header(){return this._header}set header(e){e===void 0?this._header=void 0:(this._header=e,this.headers.forEach((e,t)=>{this._worksheet.getCell(t+1,this.number).value=e}))}get key(){return this._key}set key(e){(this._key&&this._worksheet.getColumnKey(this._key))===this&&this._worksheet.deleteColumnKey(this._key),this._key=e,e&&this._worksheet.setColumnKey(this._key,this)}get hidden(){return!!this._hidden}set hidden(e){this._hidden=e}get outlineLevel(){return this._outlineLevel||0}set outlineLevel(e){this._outlineLevel=e}get collapsed(){return!!(this._outlineLevel&&this._outlineLevel>=this._worksheet.properties.outlineLevelCol)}toString(){return JSON.stringify({key:this.key,width:this.width,headers:this.headers.length?this.headers:void 0})}equivalentTo(e){return this.width===e.width&&this.hidden===e.hidden&&this.outlineLevel===e.outlineLevel&&p(this.style,e.style)}equivalentToModel(e){return this.width===e.width&&this.hidden===e.hidden&&this.outlineLevel===e.outlineLevel&&p(this.style,e.style)}get isDefault(){if(this.isCustomWidth||this.hidden||this.outlineLevel)return!1;let e=this.style;return!(e&&(e.font||e.numFmt||e.alignment||e.border||e.fill||e.protection))}get headerCount(){return this.headers.length}eachCell(e,t){let n=this.number,r,i;typeof e==`function`?(r={},i=e):(r=e,i=t),this._worksheet.eachRow(r,(e,t)=>{i(e.getCell(n),t)})}get values(){let e=[];return this.eachCell((t,n)=>{t&&t.type!==u.ValueType.Null&&(e[n]=t.value)}),e}set values(e){if(!e)return;let t=this.number,n=0;Object.prototype.hasOwnProperty.call(e,`0`)&&(n=1),e.forEach((e,r)=>{this._worksheet.getCell(r+n,t).value=e})}addPageBreak(e,t){let n=this._worksheet,r=Math.max(0,(e||0)-1)||0,i=Math.max(0,(t||0)-1)||1048575,a={id:this._number,max:i,man:1};r&&(a.min=r),n.colBreaks.push(a)}get numFmt(){return this.style.numFmt}set numFmt(e){this.style.numFmt=e,this.eachCell(t=>{t.numFmt=e})}get font(){return this.style.font}set font(e){this.style.font=e,this.eachCell(t=>{t.font=e})}get alignment(){return this.style.alignment}set alignment(e){this.style.alignment=e,this.eachCell(t=>{t.alignment=e})}get protection(){return this.style.protection}set protection(e){this.style.protection=e,this.eachCell(t=>{t.protection=e})}get border(){return this.style.border}set border(e){this.style.border=e,this.eachCell(t=>{t.border=e})}get fill(){return this.style.fill}set fill(e){this.style.fill=e,this.eachCell(t=>{t.fill=e})}static toModel(e){let t=[],n=null;return e&&e.forEach((e,r)=>{e.isDefault?n&&=null:!n||!e.equivalentToModel(n)?(n={min:r+1,max:r+1,width:e.width===void 0?9:e.width,style:e.style,isCustomWidth:e.isCustomWidth,hidden:e.hidden,outlineLevel:e.outlineLevel,collapsed:e.collapsed},t.push(n)):n.max=r+1}),t.length?t:void 0}static fromModel(t,n){let r=t,i=Array.isArray(t)?t:n??[];i||=[];let a=[],o=1,s=0;for(i=i.sort(function(e,t){return e.min-t.min});s<i.length;){let t=i[s++];for(;o<t.min;)a.push(new e(r,o++));for(;o<=t.max;)a.push(new e(r,o++,t))}return a.length?a:null}};function le(e){return typeof e==`object`&&`nativeCol`in e&&`nativeRow`in e&&`nativeColOff`in e&&`nativeRowOff`in e}function ue(e){return typeof e==`object`&&`col`in e&&`row`in e}var k=class e{constructor(e,t,r=0){if(this.worksheet=e,!t)this.nativeCol=0,this.nativeColOff=0,this.nativeRow=0,this.nativeRowOff=0;else if(typeof t==`string`){let e=n.decodeAddress(t);this.nativeCol=e.col+r,this.nativeColOff=0,this.nativeRow=e.row+r,this.nativeRowOff=0}else le(t)?(this.nativeCol=t.nativeCol||0,this.nativeColOff=t.nativeColOff||0,this.nativeRow=t.nativeRow||0,this.nativeRowOff=t.nativeRowOff||0):ue(t)?(this.col=t.col+r,this.row=t.row+r):(this.nativeCol=0,this.nativeColOff=0,this.nativeRow=0,this.nativeRowOff=0)}static asInstance(t){return t==null?null:t instanceof e?t:new e(void 0,t)}get col(){return this.nativeCol+Math.min(this.colWidth-1,this.nativeColOff)/this.colWidth}set col(e){this.nativeCol=Math.floor(e),this.nativeColOff=Math.floor((e-this.nativeCol)*this.colWidth)}get row(){return this.nativeRow+Math.min(this.rowHeight-1,this.nativeRowOff)/this.rowHeight}set row(e){this.nativeRow=Math.floor(e),this.nativeRowOff=Math.floor((e-this.nativeRow)*this.rowHeight)}get colWidth(){return this.worksheet&&this.worksheet.getColumn(this.nativeCol+1)&&this.worksheet.getColumn(this.nativeCol+1).isCustomWidth?Math.floor(this.worksheet.getColumn(this.nativeCol+1).width*1e4):64e4}get rowHeight(){return this.worksheet&&this.worksheet.getRow(this.nativeRow+1)&&this.worksheet.getRow(this.nativeRow+1).height?Math.floor(this.worksheet.getRow(this.nativeRow+1).height*1e4):18e4}get model(){return{nativeCol:this.nativeCol,nativeColOff:this.nativeColOff,nativeRow:this.nativeRow,nativeRowOff:this.nativeRowOff}}set model(e){this.nativeCol=e.nativeCol,this.nativeColOff=e.nativeColOff,this.nativeRow=e.nativeRow,this.nativeRowOff=e.nativeRowOff}},de=class{constructor(e,t){this.worksheet=e,t&&(this.model=t)}get model(){switch(this.type){case`background`:return{type:this.type,imageId:this.imageId};case`image`:return{type:this.type,imageId:this.imageId,hyperlinks:this.range.hyperlinks,range:{tl:this.range.tl.model,br:this.range.br&&this.range.br.model,ext:this.range.ext,editAs:this.range.editAs}};default:throw Error(`Invalid Image Type`)}}set model({type:e,imageId:t,range:r,hyperlinks:i}){if(this.type=e,this.imageId=t,e===`image`)if(typeof r==`string`){let e=n.decode(r);`top`in e&&(this.range={tl:new k(this.worksheet,{col:e.left,row:e.top},-1),br:new k(this.worksheet,{col:e.right,row:e.bottom},0),editAs:`oneCell`})}else r&&(this.range={tl:new k(this.worksheet,r.tl,0),br:r.br?new k(this.worksheet,r.br,0):void 0,ext:r.ext,editAs:r.editAs,hyperlinks:i||(`hyperlinks`in r?r.hyperlinks:void 0)})}},fe=class{constructor(e,t,n){this.table=e,this.column=t,this.index=n}_set(e,t){this.table.cacheState(),this.column[e]=t}get name(){return this.column.name}set name(e){this._set(`name`,e)}get filterButton(){return this.column.filterButton}set filterButton(e){this.column.filterButton=e}get style(){return this.column.style}set style(e){this.column.style=e}get totalsRowLabel(){return this.column.totalsRowLabel}set totalsRowLabel(e){this._set(`totalsRowLabel`,e)}get totalsRowFunction(){return this.column.totalsRowFunction}set totalsRowFunction(e){this._set(`totalsRowFunction`,e)}get totalsRowResult(){return this.column.totalsRowResult}set totalsRowResult(e){this._set(`totalsRowResult`,e)}get totalsRowFormula(){return this.column.totalsRowFormula}set totalsRowFormula(e){this._set(`totalsRowFormula`,e)}},pe=class{constructor(e,t){if(this.worksheet=e,t){if(this.table=t,Array.isArray(t.rows)&&t.rows.length===0&&t.tableRef){let r=n.decode(t.tableRef);if(`dimensions`in r){let n=r.top+(t.headerRow===!1?0:1),i=r.bottom-(t.totalsRow===!0?1:0);if(i>=n)for(let a=n;a<=i;a++){let n=e.getRow(a),i=[];for(let e=r.left;e<=r.right;e++)i.push(n.getCell(e).value);t.rows.push(i)}}}this.validate(),this.store()}}getFormula(e){switch(e.totalsRowFunction){case`none`:return null;case`average`:return`SUBTOTAL(101,${this.table.name}[${e.name}])`;case`countNums`:return`SUBTOTAL(102,${this.table.name}[${e.name}])`;case`count`:return`SUBTOTAL(103,${this.table.name}[${e.name}])`;case`max`:return`SUBTOTAL(104,${this.table.name}[${e.name}])`;case`min`:return`SUBTOTAL(105,${this.table.name}[${e.name}])`;case`stdDev`:return`SUBTOTAL(106,${this.table.name}[${e.name}])`;case`var`:return`SUBTOTAL(107,${this.table.name}[${e.name}])`;case`sum`:return`SUBTOTAL(109,${this.table.name}[${e.name}])`;case`custom`:return e.totalsRowFormula||null;default:throw Error(`Invalid Totals Row Function: ${e.totalsRowFunction}`)}}get width(){return this.table.columns.length}get height(){return this.table.rows.length}get filterHeight(){return this.height+(this.table.headerRow?1:0)}get tableHeight(){return this.filterHeight+(this.table.totalsRow?1:0)}validate(){let{table:e}=this,t=(e,t,n)=>{e[t]===void 0&&(e[t]=n)};t(e,`headerRow`,!0),t(e,`totalsRow`,!1),t(e,`style`,{}),t(e.style,`theme`,`TableStyleMedium2`),t(e.style,`showFirstColumn`,!1),t(e.style,`showLastColumn`,!1),t(e.style,`showRowStripes`,!1),t(e.style,`showColumnStripes`,!1);let r=(e,t)=>{if(!e)throw Error(t)};r(!!e.ref,`Table must have ref`),r(!!e.columns,`Table must have column definitions`),r(!!e.rows,`Table must have row definitions`),e.tl=n.decodeAddress(e.ref);let{row:i,col:a}=e.tl;r(i>0,`Table must be on valid row`),r(a>0,`Table must be on valid col`);let{width:o,tableHeight:s}=this;e.autoFilterRef=n.encode(i,a,i,a+o-1),e.tableRef=n.encode(i,a,i+s-1,a+o-1),e.columns.forEach((e,n)=>{r(!!e.name,`Column ${n} must have a name`),n===0?t(e,`totalsRowLabel`,`Total`):(t(e,`totalsRowFunction`,`none`),e.totalsRowFormula=this.getFormula(e)||void 0)})}store(){let e=(e,t)=>{t&&Object.assign(e.style,t)},{worksheet:t,table:n}=this,{row:r,col:i}=n.tl,a=0;if(n.headerRow){let o=t.getRow(r+ a++);n.columns.forEach((t,n)=>{let{style:r,name:a}=t,s=o.getCell(i+n);s.value=a,e(s,r)})}if(n.rows.forEach(o=>{let s=t.getRow(r+ a++);o.forEach((t,r)=>{let a=s.getCell(i+r),o=t?.formula;if(typeof o==`string`){let e=n.qualifyImplicitStructuredReferences===!0;a.value={...t,formula:e?o.replace(/(^|[^A-Za-z0-9_])\[@\[?([^\[\]]+?)\]?\]/g,`$1${n.name}[[#This Row],[$2]]`):o}}else a.value=t;e(a,n.columns[r].style)})}),n.totalsRow){let o=t.getRow(r+ a++);n.columns.forEach((t,n)=>{let r=o.getCell(i+n);n===0?r.value=t.totalsRowLabel:this.getFormula(t)?r.value={formula:t.totalsRowFormula,result:t.totalsRowResult}:r.value=null,e(r,t.style)})}}load(e){let{table:t}=this,{row:n,col:r}=t.tl,i=0;if(t.headerRow){let a=e.getRow(n+ i++);t.columns.forEach((e,t)=>{let n=a.getCell(r+t);n.value=e.name})}if(t.rows.forEach(t=>{let a=e.getRow(n+ i++);t.forEach((e,t)=>{let n=a.getCell(r+t);n.value=e})}),t.totalsRow){let a=e.getRow(n+ i++);t.columns.forEach((e,t)=>{let n=a.getCell(r+t);t===0?n.value=e.totalsRowLabel:this.getFormula(e)&&(n.value={formula:e.totalsRowFormula,result:e.totalsRowResult})})}}get model(){return this.table}set model(e){this.table=e}cacheState(){this._cache||={ref:this.ref,width:this.width,tableHeight:this.tableHeight}}commit(){if(!this._cache)return;this.validate();let e=n.decodeAddress(this._cache.ref);if(this.ref!==this._cache.ref)for(let t=0;t<this._cache.tableHeight;t++){let n=this.worksheet.getRow(e.row+t);for(let t=0;t<this._cache.width;t++){let r=n.getCell(e.col+t);r.value=null}}else{for(let t=this.tableHeight;t<this._cache.tableHeight;t++){let n=this.worksheet.getRow(e.row+t);for(let t=0;t<this._cache.width;t++){let r=n.getCell(e.col+t);r.value=null}}for(let t=0;t<this.tableHeight;t++){let n=this.worksheet.getRow(e.row+t);for(let t=this.width;t<this._cache.width;t++){let r=n.getCell(e.col+t);r.value=null}}}this.store(),this._cache=void 0}addRow(e,t,n){this.cacheState(),t===void 0?this.table.rows.push(e):this.table.rows.splice(t,0,e),n?.commit!==!1&&this.commit()}removeRows(e,t=1,n){this.cacheState(),this.table.rows.splice(e,t),n?.commit!==!1&&this.commit()}getColumn(e){let t=this.table.columns[e];return new fe(this,t,e)}addColumn(e,t,n){this.cacheState(),n===void 0?(this.table.columns.push(e),this.table.rows.forEach((e,n)=>{e.push(t[n])})):(this.table.columns.splice(n,0,e),this.table.rows.forEach((e,r)=>{e.splice(n,0,t[r])}))}removeColumns(e,t=1){this.cacheState(),this.table.columns.splice(e,t),this.table.rows.forEach(n=>{n.splice(e,t)})}_assign(e,t,n){this.cacheState(),e[t]=n}get ref(){return this.table.ref}set ref(e){this._assign(this.table,`ref`,e)}get name(){return this.table.name}set name(e){this.table.name=e}get displayName(){return this.table.displayName||this.table.name}set displayName(e){this.table.displayName=e}get headerRow(){return this.table.headerRow}set headerRow(e){this._assign(this.table,`headerRow`,e)}get totalsRow(){return this.table.totalsRow}set totalsRow(e){this._assign(this.table,`totalsRow`,e)}get theme(){return this.table.style.theme}set theme(e){this.table.style.theme=e}get showFirstColumn(){return this.table.style.showFirstColumn}set showFirstColumn(e){this.table.style.showFirstColumn=e}get showLastColumn(){return this.table.style.showLastColumn}set showLastColumn(e){this.table.style.showLastColumn=e}get showRowStripes(){return this.table.style.showRowStripes}set showRowStripes(e){this.table.style.showRowStripes=e}get showColumnStripes(){return this.table.style.showColumnStripes}set showColumnStripes(e){this.table.style.showColumnStripes=e}},me=class{constructor(e){this.model=e||{}}add(e,t){return this.model[e]=t}find(e){let t=this.model[e];if(t!==void 0)return t;let r;for(let t in this.model){if(!t.startsWith(`range:`))continue;r||=n.decodeAddress(e);let i=t.slice(6),a=n.decodeEx(i);if(!a.dimensions)continue;let o=a.tl,s=a.br;if(r.row>=o.row&&r.row<=s.row&&r.col>=o.col&&r.col<=s.col)return this.model[t]}}remove(e){this.model[e]=void 0}};let he=9525,ge=12700,_e=142875,ve=28575,ye=276225,be=190500;var xe=class e{constructor(e,t,n){this.worksheet=e;let{tl:r,br:i}=this._parseRange(t),a=1025+(e.formControls?.length||0),o;n?.link&&(o=this._toAbsoluteRef(n.link)),this.model={shapeId:a,ctrlPropId:0,tl:r,br:i,link:o,checked:n?.checked?`Checked`:`Unchecked`,text:n?.text??``,noThreeD:n?.noThreeD??!0,print:n?.print??!1}}get checked(){return this.model.checked===`Checked`}set checked(e){this.model.checked=e?`Checked`:`Unchecked`}get link(){return this.model.link}set link(e){this.model.link=e?this._toAbsoluteRef(e):void 0}get text(){return this.model.text}set text(e){this.model.text=e}_toAbsoluteRef(e){if(e.includes(`$`))return e;let t=n.decodeAddress(e);return`$${n.n2l(t.col)}$${t.row}`}_parseRange(e){let t,r;if(typeof e==`string`)if(e.includes(`:`)){let i=n.decode(e);if(`top`in i)if(i.left===i.right&&i.top===i.bottom){let e=i.left-1,n=i.top-1;t={col:e,colOff:_e,row:n,rowOff:ve},r={col:e+2,colOff:ye,row:n+1,rowOff:be}}else t={col:i.left-1,colOff:_e,row:i.top-1,rowOff:ve},r={col:i.right-1,colOff:ye,row:i.bottom-1,rowOff:be};else t={col:i.col-1,colOff:_e,row:i.row-1,rowOff:ve},r={col:i.col+1,colOff:ye,row:i.row,rowOff:be}}else{let i=n.decodeAddress(e);t={col:i.col-1,colOff:_e,row:i.row-1,rowOff:ve},r={col:i.col+1,colOff:ye,row:i.row,rowOff:be}}else if(`startCol`in e)t={col:e.startCol,colOff:e.startColOff??_e,row:e.startRow,rowOff:e.startRowOff??ve},r={col:e.endCol,colOff:e.endColOff??ye,row:e.endRow,rowOff:e.endRowOff??be};else{if(typeof e.tl==`string`){let r=n.decodeAddress(e.tl);t={col:r.col-1,colOff:_e,row:r.row-1,rowOff:ve}}else t={col:e.tl.col,colOff:e.tl.colOff??_e,row:e.tl.row,rowOff:e.tl.rowOff??ve};if(e.br)if(typeof e.br==`string`){let t=n.decodeAddress(e.br);r={col:t.col-1,colOff:ye,row:t.row-1,rowOff:be}}else r={col:e.br.col,colOff:e.br.colOff??ye,row:e.br.row,rowOff:e.br.rowOff??be};else r={col:t.col+2,colOff:ye,row:t.row+1,rowOff:be}}return{tl:t,br:r}}getVmlAnchor(){return e.getVmlAnchor(this.model)}getVmlStyle(){return e.getVmlStyle(this.model)}getVmlCheckedValue(){return e.getVmlCheckedValue(this.model)}static getVmlAnchor(e){let{tl:t,br:n}=e,r=Math.round(t.colOff/he),i=Math.round(t.rowOff/he),a=Math.round(n.colOff/he),o=Math.round(n.rowOff/he);return`${t.col}, ${r}, ${t.row}, ${i}, ${n.col}, ${a}, ${n.row}, ${o}`}static getVmlStyle(e){return`position:absolute;margin-left:${Math.round(e.tl.colOff/ge)}pt;margin-top:${Math.round(e.tl.rowOff/ge)}pt;width:96pt;height:18pt;z-index:1;visibility:visible`}static getVmlCheckedValue(e){switch(e.checked){case`Checked`:return 1;case`Mixed`:return 2;default:return 0}}};function Se(){return typeof process<`u`&&!!process.versions?.node}function Ce(e){if(Se())return Buffer.from(e,`base64`);let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}function we(e,t){return 25569+e.getTime()/(24*3600*1e3)-(t?1462:0)}function Te(e,t){let n=Math.round((e-25569+(t?1462:0))*24*3600*1e3);return new Date(n)}let Ee={lt:`<`,gt:`>`,amp:`&`,quot:`"`,apos:`'`};function De(e){return e.indexOf(`&`)===-1?e:e.replace(/&(#\d+|#x[0-9A-Fa-f]+|\w+);/g,(e,t)=>{if(t[0]===`#`){let n=t[1]===`x`?parseInt(t.slice(2),16):parseInt(t.slice(1));return Number.isNaN(n)?e:String.fromCodePoint(n)}return Ee[t]||e})}let Oe=/[<>&'"\x7F\x00-\x08\x0B-\x0C\x0E-\x1F]/;function ke(e){let t=Oe.exec(e);if(!t)return e;let n=[],r=0;for(let i=t.index;i<e.length;i++){let t=e.charCodeAt(i),a=null;switch(t){case 34:a=`"`;break;case 38:a=`&`;break;case 39:a=`'`;break;case 60:a=`<`;break;case 62:a=`>`;break;case 127:a=``;break;default:if(t<=31&&(t<=8||t>=11&&t!==13)){a=``;break}continue}r!==i&&n.push(e.substring(r,i)),r=i+1,a&&n.push(a)}return r<e.length&&n.push(e.substring(r)),n.join(``)}function Ae(e){let t=typeof e==`number`?e:parseInt(e,10);return Number.isNaN(t)?0:t}function je(e){if(!e||e.indexOf(`@`)>-1)return!1;let t=e.replace(/\[[^\]]*\]/g,``);return t=t.replace(/"[^"]*"/g,``),t.match(/[ymdhMsb]+/)!==null}function A(e){return e===!0||e===`true`||e===1||e===`1`}function*Me(e,t,n=1){let r=n>0?(e,t)=>e<t:(e,t)=>e>t;for(let i=e;r(i,t);i+=n)yield i}function Ne(e){let t=Array.from(e);return t.every(e=>Number.isFinite(e))?t.sort((e,t)=>e-t):t.sort()}let Pe=new TextDecoder(`utf-8`),Fe;try{Fe=new TextDecoder(`latin1`)}catch{Fe=void 0}function Ie(e){return typeof e==`string`?e:Pe.decode(e)}function Le(e){if(Se())return Buffer.from(e).toString(`base64`);if(Fe)try{return btoa(Fe.decode(e))}catch{}let t=32768,n=[];for(let r=0;r<e.length;r+=t)n.push(String.fromCharCode.apply(null,e.subarray(r,r+t)));return btoa(n.join(``))}function Re(e){let t=new Uint8Array(e.length*2);for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);t[n*2]=r&255,t[n*2+1]=r>>8&255}return t}let ze=e=>Array.isArray(e);var j=class e{constructor(){this.__excelts_stream=!0,this._listeners=new Map,this._maxListeners=e.defaultMaxListeners}static{this.defaultMaxListeners=10}addListener(e,t){return this.on(e,t)}_listenerCount(e){return e?ze(e)?e.length:1:0}_hasListeners(e){return this._listenerCount(this._listeners.get(e))>0}on(e,t){let n=this._listeners.get(e);if(this._maxListeners>0){let t=this._listenerCount(n);t>=this._maxListeners&&console?.warn?.(`MaxListenersExceededWarning: Possible EventEmitter memory leak detected. ${t+1} ${String(e)} listeners added. Use emitter.setMaxListeners() to increase limit`)}return n?ze(n)?n.push(t):this._listeners.set(e,[n,t]):this._listeners.set(e,t),e!==`newListener`&&this._hasListeners(`newListener`)&&this.emit(`newListener`,e,t),this}prependListener(e,t){let n=this._listeners.get(e);return n?ze(n)?n.unshift(t):this._listeners.set(e,[t,n]):this._listeners.set(e,t),e!==`newListener`&&this._hasListeners(`newListener`)&&this.emit(`newListener`,e,t),this}once(e,t){let n=(...r)=>{this.off(e,n),t.apply(this,r)};return n.listener=t,this.on(e,n)}prependOnceListener(e,t){let n=(...r)=>{this.off(e,n),t.apply(this,r)};return n.listener=t,this.prependListener(e,n)}removeListener(e,t){return this.off(e,t)}off(e,t){let n=this._listeners.get(e);if(!n)return this;if(!ze(n))return(n===t||n.listener===t)&&(this._listeners.delete(e),e!==`removeListener`&&this._hasListeners(`removeListener`)&&this.emit(`removeListener`,e,t)),this;let r=n;if(r.length===0)return this._listeners.delete(e),this;let i=r.indexOf(t);if(i!==-1)r.splice(i,1);else for(let e=0,n=r.length;e<n;e++)if(r[e].listener===t){r.splice(e,1);break}return r.length===0?this._listeners.delete(e):r.length===1&&this._listeners.set(e,r[0]),e!==`removeListener`&&this._hasListeners(`removeListener`)&&this.emit(`removeListener`,e,t),this}emit(e,...t){let n=this._listeners.get(e);if(!n)return!1;if(!ze(n)){try{n.apply(this,t)}catch(t){e!==`error`&&this.emit(`error`,t)}return!0}let r=n,i=r.length;if(i===0)return!1;if(i===1){try{r[0].apply(this,t)}catch(t){e!==`error`&&this.emit(`error`,t)}return!0}if(i===2){let n=r[0],i=r[1];try{n.apply(this,t)}catch(t){e!==`error`&&this.emit(`error`,t)}try{i.apply(this,t)}catch(t){e!==`error`&&this.emit(`error`,t)}return!0}let a=r.slice();for(let n=0;n<a.length;n++)try{a[n].apply(this,t)}catch(t){e!==`error`&&this.emit(`error`,t)}return!0}removeAllListeners(e){return e===void 0?this._listeners.clear():this._listeners.delete(e),this}listenerCount(e){return this._listenerCount(this._listeners.get(e))}listeners(e){let t=this._listeners.get(e);return t?ze(t)?t.slice():[t]:[]}rawListeners(e){let t=this._listeners.get(e);return t?ze(t)?t.slice():[t]:[]}eventNames(){return[...this._listeners.keys()]}setMaxListeners(e){return this._maxListeners=e,this}getMaxListeners(){return this._maxListeners}};let Be=new TextEncoder,Ve=new TextDecoder(`utf-8`,{ignoreBOM:!0}),He=new Map;function Ue(e){if(!e||e===`utf-8`||e===`utf8`)return Ve;let t=e,n=He.get(t);return n||(n=new TextDecoder(t),He.set(t,n)),n}function We(e){return Be.encode(e)}function Ge(e){let t=e.length;if(t===0)return new Uint8Array;if(t===1)return e[0];let n=0;for(let r=0;r<t;r++)n+=e[r].length;let r=new Uint8Array(n),i=0;for(let n=0;n<t;n++){let t=e[n];r.set(t,i),i+=t.length}return r}var M=class e extends j{constructor(e){if(super(),this._reader=null,this._buffer=[],this._bufferIndex=0,this._unshiftBuffer=[],this._bufferSize=0,this._reading=!1,this._ended=!1,this._destroyed=!1,this._errored=null,this._closed=!1,this._paused=!0,this._flowing=!1,this._pipeTo=[],this._pipeListeners=new Map,this._encoding=null,this._decoder=null,this._didRead=!1,this._aborted=!1,this._pushMode=!1,this._webStreamMode=!1,this.objectMode=e?.objectMode??!1,this.readableHighWaterMark=e?.highWaterMark??16384,this.autoDestroy=e?.autoDestroy??!0,this.emitClose=e?.emitClose??!0,e?.read&&(this._read=e.read.bind(this),this._pushMode=!0),e?.stream)this._stream=e.stream,this._webStreamMode=!0;else{let e;this._stream=new ReadableStream({start:t=>{e=t},pull:async()=>{this.emit(`drain`)},cancel:e=>{this._ended=!0,this._aborted=!0,this.emitClose&&this.emit(`close`)}}),this._controller=e}}static from(t,n){let r=new e({...n,objectMode:n?.objectMode??!0});return(async()=>{try{for await(let e of t)r.push(e)||await new Promise(e=>setTimeout(e,0));r.push(null)}catch(e){r.destroy(e)}})(),r}static isDisturbed(e){return e._didRead||e._ended||e._destroyed}static fromWeb(t,n){return new e({...n,stream:t})}static toWeb(e){return e.webStream}push(e){if(this._destroyed)return!1;this._pushMode=!0;let t=this._controller;if(e===null){if(this._ended)return!1;if(this._ended=!0,t)try{t.close()}catch{}return this.emit(`end`),!1}if(this._flowing)return this.emit(`data`,e),this._flowing?(this._read&&!this._ended&&queueMicrotask(()=>{this._flowing&&!this._ended&&!this._destroyed&&this._read(this.readableHighWaterMark)}),!0):!1;{let t=this._bufferedLength()===0;return this._buffer.push(e),this.objectMode||(this._bufferSize+=this._getChunkSize(e)),t&&queueMicrotask(()=>this.emit(`readable`)),this.objectMode?this._bufferedLength()<this.readableHighWaterMark:this._bufferSize<this.readableHighWaterMark}}unshift(e){this._destroyed||(this._bufferUnshift(e),this.objectMode||(this._bufferSize+=this._getChunkSize(e)))}read(e){if(this._didRead=!0,this._bufferedLength()>0){if(this.objectMode||e===void 0){let e=this._bufferShift();return this.objectMode||(this._bufferSize-=this._getChunkSize(e)),this._applyEncoding(e)}let t=this._bufferShift();return this.objectMode||(this._bufferSize-=this._getChunkSize(t)),this._applyEncoding(t)}return null}_bufferedLength(){return this._unshiftBuffer.length+(this._buffer.length-this._bufferIndex)}_bufferPeek(){let e=this._unshiftBuffer.length;return e>0?this._unshiftBuffer[e-1]:this._bufferIndex<this._buffer.length?this._buffer[this._bufferIndex]:null}_bufferShift(){if(this._unshiftBuffer.length>0)return this._unshiftBuffer.pop();let e=this._buffer[this._bufferIndex++];return this._bufferIndex===this._buffer.length?(this._buffer.length=0,this._bufferIndex=0,e):(this._bufferIndex>1024&&this._bufferIndex*2>this._buffer.length&&(this._buffer=this._buffer.slice(this._bufferIndex),this._bufferIndex=0),e)}_bufferUnshift(e){if(this._bufferIndex===0){this._unshiftBuffer.push(e);return}this._bufferIndex--,this._buffer[this._bufferIndex]=e}_getChunkSize(e){return e instanceof Uint8Array?e.byteLength:1}setEncoding(e){return this._encoding=e,e===`utf-8`||e===`utf8`?this._decoder=Ve:this._decoder=null,this}_applyEncoding(e){return this._encoding&&e instanceof Uint8Array?(this._decoder||=Ue(this._encoding),this._decoder.decode(e)):e}wrap(e){return e.on(`data`,t=>{this.push(t)||e.pause()}),e.on(`end`,()=>this.push(null)),e.on(`error`,e=>this.destroy(e)),e.on(`close`,()=>this.destroy()),this}pause(){return this._paused=!0,this._flowing=!1,this}resume(){for(this._paused=!1,this._flowing=!0;this._bufferedLength()>0&&this._flowing;){let e=this._bufferShift();this.objectMode||(this._bufferSize-=this._getChunkSize(e)),this.emit(`data`,e)}return this._ended&&this._bufferedLength()===0?this.emit(`end`):this._read?queueMicrotask(()=>{this._flowing&&!this._ended&&!this._destroyed&&this._read(this.readableHighWaterMark)}):this._webStreamMode&&!this._pushMode&&this._startReading(),this}on(e,t){return super.on(e,t),e===`data`&&this.resume(),this}isPaused(){return this._paused}pipe(e){let t=e,n=t,r=typeof t?.write==`function`,i=typeof t?.end==`function`,a=typeof n?.on==`function`,o=typeof n?.once==`function`,s=typeof n?.off==`function`;if(!r||!i||!o&&!a||!s&&!n?.removeListener)throw Error(`Readable.pipe: invalid destination`);this._pipeTo.push(t);let c=e=>{if(!t.write(e))if(this.pause(),typeof n.once==`function`)n.once(`drain`,()=>this.resume());else{let e=()=>{typeof n.off==`function`?n.off(`drain`,e):typeof n.removeListener==`function`&&n.removeListener(`drain`,e),this.resume()};n.on(`drain`,e)}},l=()=>{t.end()},u=e=>{typeof t.destroy==`function`?t.destroy(e):n.emit?.(`error`,e)};return this._pipeListeners.set(t,{data:c,end:l,error:u}),this.on(`data`,c),this.once(`end`,l),this.once(`error`,u),this.resume(),e}unpipe(e){if(e){let t=this._pipeTo.indexOf(e);t!==-1&&this._pipeTo.splice(t,1);let n=this._pipeListeners.get(e);n&&(this.off(`data`,n.data),this.off(`end`,n.end),this.off(`error`,n.error),this._pipeListeners.delete(e))}else{for(let e of this._pipeTo){let t=this._pipeListeners.get(e);t&&(this.off(`data`,t.data),this.off(`end`,t.end),this.off(`error`,t.error),this._pipeListeners.delete(e))}this._pipeTo=[]}return this.pause(),this}destroy(e){return this._destroyed?this:(this._destroyed=!0,this._ended=!0,e&&(this._errored=e,this.emit(`error`,e)),this._reader&&this._reader.cancel().catch(()=>{}),this._closed=!0,this.emit(`close`),this)}get webStream(){return this._stream}get readable(){return!this._destroyed&&!this._ended}get readableEnded(){return this._ended}get readableLength(){return this._bufferedLength()}get destroyed(){return this._destroyed}get errored(){return this._errored}get closed(){return this._closed}get readableFlowing(){return!this._paused&&!this._ended?this._flowing:this._flowing?!0:null}get readableAborted(){return this._aborted}get readableDidRead(){return this._didRead}get readableEncoding(){return this._encoding}get readableObjectMode(){return this.objectMode}get readableBuffer(){return{length:this._bufferedLength(),head:this._bufferPeek()}}async _startReading(){if(!(this._reading||this._destroyed||!this._flowing)){this._reading=!0;try{for(this._reader||=this._stream.getReader();this._flowing&&!this._destroyed&&!this._pushMode;){let{done:e,value:t}=await this._reader.read();if(this._pushMode)break;if(e){this._ended=!0,this.emit(`end`);break}t!==void 0&&(this._flowing?this.emit(`data`,t):(this._buffer.push(t),this.objectMode||(this._bufferSize+=this._getChunkSize(t))))}}catch(e){this.emit(`error`,e)}finally{this._reading=!1}}}async*[Symbol.asyncIterator](){for(;this._bufferedLength()>0;){let e=this._bufferShift();this.objectMode||(this._bufferSize-=this._getChunkSize(e)),yield e}if(!this._ended){if(!this._webStreamMode){let e=[],t=null,n=null,r=!1,i=null,a=0,o=r=>{t?(t(r),t=null,n=null):e.push(r)},s=()=>{r=!0,t&&(t(null),t=null,n=null)},c=e=>{r=!0,i=e,n&&=(n(e),t=null,null)},l=()=>{r=!0,t&&(t(null),t=null,n=null)};this.on(`data`,o),this.on(`end`,s),this.on(`error`,c),this.on(`close`,l);try{for(this.resume();!r||a<e.length;){if(i)throw i;if(a<e.length){let t=e[a++];a>=1024&&a*2>=e.length&&(e.splice(0,a),a=0),yield t}else if(!r){let e=await new Promise((e,r)=>{t=e,n=r});e!==null&&(yield e)}}if(i)throw i}finally{this.off(`data`,o),this.off(`end`,s),this.off(`error`,c),this.off(`close`,l)}return}this._reader||=this._stream.getReader();try{for(;;){let{done:e,value:t}=await this._reader.read();if(e)break;yield t}}finally{this._reader.releaseLock()}}}iterator(e){let t=e?.destroyOnReturn??!0,n=this[Symbol.asyncIterator]();return t?{next:async()=>n.next(),return:async e=>(this.destroy(),{done:!0,value:e}),[Symbol.asyncIterator](){return this}}:n}async*map(e,t){let n=t?.signal;for await(let t of this){if(n?.aborted)throw Error(`AbortError`);yield await e(t,{signal:n})}}async*filter(e,t){let n=t?.signal;for await(let t of this){if(n?.aborted)throw Error(`AbortError`);await e(t,{signal:n})&&(yield t)}}async*flatMap(e,t){let n=t?.signal;for await(let t of this){if(n?.aborted)throw Error(`AbortError`);let r=await e(t,{signal:n});for await(let e of r)yield e}}async*take(e,t){let n=t?.signal,r=0;for await(let t of this){if(n?.aborted)throw Error(`AbortError`);if(r>=e)break;yield t,r++}}async*drop(e,t){let n=t?.signal,r=0;for await(let t of this){if(n?.aborted)throw Error(`AbortError`);r>=e&&(yield t),r++}}async reduce(e,t,n){let r=n?.signal,i=t,a=!0;for await(let t of this){if(r?.aborted)throw Error(`AbortError`);a&&i===void 0?(i=t,a=!1):i=await e(i,t,{signal:r})}if(i===void 0)throw TypeError(`Reduce of empty stream with no initial value`);return i}async every(e,t){let n=t?.signal;for await(let t of this){if(n?.aborted)throw Error(`AbortError`);if(!await e(t,{signal:n}))return!1}return!0}async some(e,t){let n=t?.signal;for await(let t of this){if(n?.aborted)throw Error(`AbortError`);if(await e(t,{signal:n}))return!0}return!1}async find(e,t){let n=t?.signal;for await(let t of this){if(n?.aborted)throw Error(`AbortError`);if(await e(t,{signal:n}))return t}}async forEach(e,t){let n=t?.signal;for await(let t of this){if(n?.aborted)throw Error(`AbortError`);await e(t,{signal:n})}}async toArray(e){let t=e?.signal,n=[];for await(let e of this){if(t?.aborted)throw Error(`AbortError`);n.push(e)}return n}async*asIndexedPairs(e){let t=e?.signal,n=0;for await(let e of this){if(t?.aborted)throw Error(`AbortError`);yield[n++,e]}}compose(t){if(typeof t==`function`){let n=t(this);return e.from(n)}return this.pipe(t),t}},N=class e extends j{constructor(e){if(super(),this._writer=null,this._ended=!1,this._finished=!1,this._destroyed=!1,this._errored=null,this._closed=!1,this._pendingWrites=0,this._writableLength=0,this._corked=0,this._corkedChunks=[],this._defaultEncoding=`utf8`,this._aborted=!1,this.objectMode=e?.objectMode??!1,this.writableHighWaterMark=e?.highWaterMark??16384,this.autoDestroy=e?.autoDestroy??!0,this.emitClose=e?.emitClose??!0,this._defaultEncoding=e?.defaultEncoding??`utf8`,e?.write&&(this._writeFunc=e.write.bind(this)),e?.final&&(this._finalFunc=e.final.bind(this)),e?.stream)this._stream=e.stream;else{let e=()=>this._writeFunc,t=()=>this._finalFunc,n=()=>this._defaultEncoding,r=e=>{this._finished=e},i=e=>{this._aborted=e},a=this.emit.bind(this),o=()=>this.emitClose,s=e=>this._write?.(e);this._stream=new WritableStream({write:async t=>{let r=e();r?await new Promise((e,i)=>{r(t,n(),t=>{t?i(t):e()})}):s(t)},close:async()=>{let e=t();e&&await new Promise((t,n)=>{e(e=>{e?n(e):t()})}),r(!0),a(`finish`),o()&&a(`close`)},abort:e=>{i(!0),a(`error`,e)}})}}setDefaultEncoding(e){return this._defaultEncoding=e,this}cork(){this._corked++}uncork(){if(this._corked>0&&this._corked--,this._corked===0){let e=this._corkedChunks;this._corkedChunks=[];for(let{chunk:t,callback:n}of e)this._doWrite(t,n)}}write(e,t,n){if(this._destroyed||this._ended)return(typeof t==`function`?t:n)?.(Error(`Cannot write after stream destroyed/ended`)),!1;let r=typeof t==`function`?t:n;if(this._corked>0){this._corkedChunks.push({chunk:e,callback:r});let t=this._getChunkSize(e);return this._writableLength+=t,this._writableLength<this.writableHighWaterMark}return this._doWrite(e,r)}_doWrite(e,t){let n=this._getChunkSize(e);return this._pendingWrites++,this._writableLength+=n,this._getWriter().write(e).then(()=>{this._pendingWrites--,this._writableLength-=n,this.emit(`drain`),t?.(null)}).catch(e=>{this._pendingWrites--,this._writableLength-=n,this.emit(`error`,e),t?.(e)}),this._writableLength<this.writableHighWaterMark}_getChunkSize(e){return this.objectMode?1:e instanceof Uint8Array?e.byteLength:typeof e==`string`?e.length:0}end(e,t,n){if(this._ended)return this;this._ended=!0;let r=typeof e==`function`?void 0:e,i=typeof e==`function`?e:typeof t==`function`?t:n;return(async()=>{try{r!==void 0&&await this._getWriter().write(r),await this._getWriter().close(),this._finished=!0,this.emit(`finish`),i&&i()}catch(e){this.emit(`error`,e)}})(),this}destroy(e){return this._destroyed?this:(this._destroyed=!0,this._ended=!0,e&&(this._errored=e,this.emit(`error`,e)),this._writer&&this._writer.abort(e).catch(()=>{}),this._closed=!0,this.emit(`close`),this)}get webStream(){return this._stream}get writable(){return!this._destroyed&&!this._ended}get writableEnded(){return this._ended}get writableFinished(){return this._finished}get writableLength(){return this._writableLength}get destroyed(){return this._destroyed}get errored(){return this._errored}get closed(){return this._closed}get writableNeedDrain(){return this._writableLength>=this.writableHighWaterMark}get writableCorked(){return this._corked}get writableAborted(){return this._aborted}get writableObjectMode(){return this.objectMode}get defaultEncoding(){return this._defaultEncoding}get writableBuffer(){return{length:this._corkedChunks.length,head:this._corkedChunks.length>0?this._corkedChunks[0].chunk:null}}_writev(e,t){let n=0,r=()=>{if(n>=e.length){t(null);return}let{chunk:i}=e[n++];this._doWrite(i,e=>{if(e){t(e);return}r()})};r()}writev(e,t){return this._destroyed||this._ended?(t?.(Error(`Cannot write after stream destroyed/ended`)),!1):(this._writev(e,t??(()=>{})),this._writableLength<this.writableHighWaterMark)}_getWriter(){return this._writer||=this._stream.getWriter(),this._writer}static fromWeb(t,n){return new e({...n,stream:t})}static toWeb(e){return e.webStream}};function Ke(e){return e instanceof N?e:e?.getWriter?new N({stream:e}):e}var qe=class e extends j{push(e){return e===null?!1:(this._transformController?this._transformController.enqueue(e):this._pushBuffer.push(e),!0)}constructor(t){super(),this._ended=!1,this._destroyed=!1,this._errored=!1,this._pushBuffer=[],this._transformController=null,this._pendingEndWrites=[],this._endPending=!1,this._dataForwardingSetup=!1,this._hasDataConsumer=!1,this._readableConsuming=!1,this._autoConsumedBuffer=[],this._autoConsumedBufferIndex=0,this._autoConsumeEnded=!1,this._autoConsumePromise=null,this._pipeDestinations=[],this.objectMode=t?.objectMode??!1;let n=t?.transform,r=t?.flush,i=e=>{this._transformController=e},a=(e,...t)=>{if(e===`error`){if(this._errored)return!1;this._errored=!0,this._writable.destroy(t[0])}return this.emit(e,...t)},o=()=>this,s=()=>n?!1:Object.getPrototypeOf(this)._transform!==e.prototype._transform,c=()=>r?!1:Object.getPrototypeOf(this)._flush!==e.prototype._flush;this._stream=new TransformStream({transform:async(e,t)=>{if(!this._errored)try{if(i(t),s())await new Promise((n,r)=>{this._transform(e,`utf8`,(e,i)=>{e?r(e):(i!==void 0&&t.enqueue(i),n())})});else if(n){let r=n.length;if(r>=3)await new Promise((r,i)=>{n.call(o(),e,`utf8`,(e,n)=>{e?i(e):(n!==void 0&&t.enqueue(n),r())})});else if(r===2)await new Promise((r,i)=>{n.call(o(),e,(e,n)=>{e?i(e):(n!==void 0&&t.enqueue(n),r())})});else{let r=n.call(o(),e);if(r&&typeof r.then==`function`){let e=await r;e!==void 0&&t.enqueue(e)}else r!==void 0&&t.enqueue(r)}}else t.enqueue(e)}catch(e){t.error(e),a(`error`,e)}finally{i(null)}},flush:async e=>{try{if(i(e),c())await new Promise((t,n)=>{this._flush((r,i)=>{r?n(r):(i!==void 0&&e.enqueue(i),t())})});else if(r)if(r.length>=1)await new Promise((t,n)=>{r.call(o(),(r,i)=>{r?n(r):(i!==void 0&&e.enqueue(i),t())})});else{let t=r.call(o());if(t&&typeof t.then==`function`){let n=await t;n!=null&&e.enqueue(n)}else t!=null&&e.enqueue(t)}}catch(t){e.error(t),a(`error`,t)}finally{i(null)}}}),this._readable=new M({stream:this._stream.readable,objectMode:this.objectMode}),this._writable=new N({stream:this._stream.writable,objectMode:this.objectMode}),this._readable.on(`end`,()=>this.emit(`end`)),this._readable.on(`error`,e=>{this._errored||(this._errored=!0,this.emit(`error`,e))}),this._writable.on(`finish`,()=>this.emit(`finish`)),this._writable.on(`drain`,()=>this.emit(`drain`)),this._writable.on(`error`,e=>{this._errored||(this._errored=!0,this.emit(`error`,e))})}on(e,t){return e===`data`&&!this._dataForwardingSetup&&(this._dataForwardingSetup=!0,this._readable.on(`data`,e=>this.emit(`data`,e))),super.on(e,t),e===`data`&&(this._hasDataConsumer=!0,this._readable.resume()),this}write(e,t,n){let r=typeof t==`function`?t:n;if(this._destroyed||this._errored){let e=Error(this._errored?`Cannot write after stream errored`:`Cannot write after stream destroyed`);return queueMicrotask(()=>this.emit(`error`,e)),r?.(e),!1}return!this._readableConsuming&&!this._hasDataConsumer&&(this._readableConsuming=!0,this._startAutoConsume()),this._endPending?(this._pendingEndWrites.push({chunk:e,callback:r}),!0):this._writable.write(e,r)}_startAutoConsume(){this._autoConsumePromise=(async()=>{try{for await(let e of this._readable){this._autoConsumedBuffer.push(e);for(let t of this._pipeDestinations)t.write(e);this.emit(`data`,e)}this._autoConsumeEnded=!0;for(let e of this._pipeDestinations)e.end();this.emit(`end`)}catch(e){this.emit(`error`,e)}})()}end(e,t,n){if(this._ended)return this;this._ended=!0,this._endPending=!0;let r=typeof e==`function`?void 0:e,i=typeof e==`function`?e:typeof t==`function`?t:n;return i&&this.once(`finish`,i),r!==void 0&&this._writable.write(r),setTimeout(()=>{for(let{chunk:e,callback:t}of this._pendingEndWrites)this._writable.write(e,t);this._pendingEndWrites=[],this._endPending=!1,this._writable.end()},0),this}read(e){return this._readable.read(e)}pipe(e){this._hasDataConsumer=!0;let t=e,n=t?._writable??t;if(this._pipeDestinations.push(n),this._readableConsuming){for(let e=0;e<this._autoConsumedBuffer.length;e++)n.write(this._autoConsumedBuffer[e]);return this._autoConsumeEnded&&n.end(),e}return this._readable.pipe(e)}unpipe(e){return this._readable.unpipe(e),this}isPaused(){return this._readable.isPaused()}resume(){return this._readable.resume(),this}pause(){return this._readable.pause(),this}destroy(e){this._destroyed||(this._destroyed=!0,this._readable.destroy(e),this._writable.destroy(e),queueMicrotask(()=>this.emit(`close`)))}get webStream(){return this._stream}get readable(){return this._readable.readable}get writable(){return this._writable.writable}get readableEnded(){return this._readable.readableEnded}get writableEnded(){return this._writable.writableEnded}get writableFinished(){return this._writable.writableFinished}get readableLength(){return this._readable.readableLength}get writableLength(){return this._writable.writableLength}get readableHighWaterMark(){return this._readable.readableHighWaterMark}get writableHighWaterMark(){return this._writable.writableHighWaterMark}get readableObjectMode(){return this._readable.readableObjectMode??this._readable.objectMode}get readableFlowing(){return this._readable.readableFlowing}get destroyed(){return this._destroyed}async*[Symbol.asyncIterator](){if(this._autoConsumePromise){for(await this._autoConsumePromise;this._autoConsumedBufferIndex<this._autoConsumedBuffer.length;)yield this._autoConsumedBuffer[this._autoConsumedBufferIndex++];this._autoConsumedBuffer.length=0,this._autoConsumedBufferIndex=0;return}yield*this._readable[Symbol.asyncIterator]()}static fromWeb(t,n){let r=new e(n);r._stream=t;let i=M.fromWeb(t.readable,{objectMode:n?.objectMode}),a=N.fromWeb(t.writable,{objectMode:n?.objectMode});return r._readable.removeAllListeners(),r._writable.removeAllListeners(),r._readable=i,r._writable=a,i.on(`data`,e=>r.emit(`data`,e)),i.on(`end`,()=>r.emit(`end`)),i.on(`error`,e=>r.emit(`error`,e)),a.on(`finish`,()=>r.emit(`finish`)),a.on(`drain`,()=>r.emit(`drain`)),a.on(`error`,e=>r.emit(`error`,e)),r}static toWeb(e){return e.webStream}_transform(e,t,n){n(null,e)}_flush(e){e()}},Je=class e extends j{static from(t){if(t instanceof e)return t;let n=(e,t)=>{let n=new N({objectMode:t.readableObjectMode,write(e,n,r){t.push(e),r()},final(e){t.push(null),e()}});e.on(`error`,e=>t.emit(`error`,e)),e.pipe(n)};if(typeof t==`object`&&t&&`readable`in t&&`writable`in t){let r=new e,i=t;return i.readable&&n(i.readable,r),i.writable?new e({objectMode:r.writableObjectMode,write(e,t,n){i.writable.write(e,t,n)},final(e){i.writable.end(e)}}):r}if(typeof t==`object`&&t&&(Symbol.asyncIterator in t||Symbol.iterator in t)){let r=M.from(t),i=new e;return n(r,i),i}if(t instanceof M){let r=new e;return n(t,r),r}if(t instanceof N)return new e({objectMode:!0,write(e,n,r){t.write(e,n,r)},final(e){t.end(e)}});throw Error(`Duplex.from: unsupported source type`)}static fromWeb(t,n){let r=new e(n);return r._readable=new M({stream:t.readable}),r._writable=new N({stream:t.writable}),r}static toWeb(e){return{readable:e._readable.webStream,writable:e._writable.webStream}}constructor(e){super(),this._dataForwardingSetup=!1,this.allowHalfOpen=e?.allowHalfOpen??!0;let t=e?.objectMode??!1;this.readableObjectMode=e?.readableObjectMode??t,this.writableObjectMode=e?.writableObjectMode??t,this._readable=new M({highWaterMark:e?.readableHighWaterMark,objectMode:this.readableObjectMode,read:e?.read?.bind(this)}),this._writable=new N({highWaterMark:e?.writableHighWaterMark,objectMode:this.writableObjectMode,write:e?.write?.bind(this),final:e?.final?.bind(this)}),this._readable.on(`end`,()=>{this.emit(`end`),this.allowHalfOpen||this._writable.end()}),this._readable.on(`error`,e=>this.emit(`error`,e)),this._writable.on(`finish`,()=>this.emit(`finish`)),this._writable.on(`drain`,()=>this.emit(`drain`)),this._writable.on(`close`,()=>{!this.allowHalfOpen&&!this._readable.destroyed&&this._readable.destroy()})}on(e,t){return e===`data`&&!this._dataForwardingSetup&&(this._dataForwardingSetup=!0,this._readable.on(`data`,e=>this.emit(`data`,e))),super.on(e,t)}push(e){return this._readable.push(e)}unshift(e){this._readable.unshift(e)}read(e){return this._readable.read(e)}write(e,t,n){let r=typeof t==`function`?t:n;return this._writable.write(e,r)}end(e,t,n){let r=typeof e==`function`?void 0:e,i=typeof e==`function`?e:typeof t==`function`?t:n;return i&&this.once(`finish`,i),r!==void 0&&this._writable.write(r),this._writable.end(),this}cork(){this._writable.cork()}uncork(){this._writable.uncork()}setEncoding(e){return this._readable.setEncoding(e),this}setDefaultEncoding(e){return this._writable.setDefaultEncoding(e),this}pipe(e){return e instanceof qe?(this._readable.pipe(e._writable),e):(this._readable.pipe(e),e)}unpipe(e){return this._readable.unpipe(e),this}pause(){return this._readable.pause(),this}resume(){return this._readable.resume(),this}isPaused(){return this._readable.isPaused()}destroy(e){return this._readable.destroy(e),this._writable.destroy(e),this}get readable(){return this._readable.readable}get writable(){return this._writable.writable}get readableEnded(){return this._readable.readableEnded}get writableEnded(){return this._writable.writableEnded}get writableFinished(){return this._writable.writableFinished}get readableLength(){return this._readable.readableLength}get writableLength(){return this._writable.writableLength}get readableHighWaterMark(){return this._readable.readableHighWaterMark}get writableHighWaterMark(){return this._writable.writableHighWaterMark}get destroyed(){return this._readable.destroyed&&this._writable.destroyed}get writableCorked(){return this._writable.writableCorked}get writableNeedDrain(){return this._writable.writableNeedDrain}[Symbol.asyncIterator](){return this._readable[Symbol.asyncIterator]()}},Ye=class extends qe{constructor(e){super({...e,transform:e=>e})}};let Xe=e=>!!e&&typeof e==`object`&&typeof e.getReader==`function`,Ze=e=>!!e&&typeof e==`object`&&typeof e.getWriter==`function`,Qe=e=>!!e&&typeof e==`object`&&!!e.readable&&!!e.writable&&Xe(e.readable)&&Ze(e.writable),$e=e=>!e||typeof e!=`object`||typeof e.pipe==`function`||typeof e.write==`function`||typeof e.end==`function`||typeof e.getReader==`function`||typeof e.getWriter==`function`?!1:Object.prototype.hasOwnProperty.call(e,`signal`)||Object.prototype.hasOwnProperty.call(e,`end`),et=e=>e instanceof M||e instanceof N||e instanceof qe||e instanceof Je?e:Qe(e)?qe.fromWeb(e):Xe(e)?M.fromWeb(e):Ze(e)?N.fromWeb(e):e;function tt(...e){let t,n={},r,i=e[e.length-1];typeof i==`function`?(r=i,t=e.slice(0,-1)):$e(i)?(n=i,t=e.slice(0,-1)):t=e;let a=new Promise((e,r)=>{if(t.length<2){r(Error(`Pipeline requires at least 2 streams`));return}let i=t.map(et),a=i[0],o=i[i.length-1],s=i.slice(1,-1),c=!1,l=[a,...s,o],u=t=>{if(!c)if(c=!0,t){for(let e of l)typeof e.destroy==`function`&&e.destroy(t);r(t)}else e()};if(n.signal){if(n.signal.aborted){u(Error(`Pipeline aborted`));return}n.signal.addEventListener(`abort`,()=>{u(Error(`Pipeline aborted`))})}let d=a;for(let e of s)d.pipe(e),d=e;n.end===!1?d.on(`data`,e=>o.write(e)):d.pipe(o),o.on(`finish`,()=>u());for(let e of l)e.on(`error`,e=>u(e))});return r&&a.then(()=>r(null)).catch(e=>r(e)),a}function nt(e,t,n){let r={},i;typeof t==`function`?i=t:t&&(r=t,i=n);let a=new Promise((t,n)=>{let i=et(e),a=!1,o=e=>{a||(a=!0,e&&!r.error?n(e):t())};if(r.signal){if(r.signal.aborted){o(Error(`Aborted`));return}r.signal.addEventListener(`abort`,()=>{o(Error(`Aborted`))})}let s=r.readable!==!1,c=r.writable!==!1;if(s&&i.readableEnded){o();return}if(c&&i.writableFinished){o();return}c&&i.on(`finish`,()=>o()),s&&i.on(`end`,()=>o()),i.on(`error`,e=>o(e)),i.on(`close`,()=>o())});return i&&a.then(()=>i(null)).catch(e=>i(e)),a}function rt(e){let t=new Uint8Array(4);return t[0]=e&255,t[1]=e>>8&255,t[2]=e>>16&255,t[3]=e>>24&255,t}let it={async hash(e,...t){let n=Ge(t),r=await crypto.subtle.digest(e,new Uint8Array(n));return new Uint8Array(r)},async convertPasswordToHash(e,t,n,r){let i=Re(e),a=Ce(n),o=await this.hash(t,a,i);for(let e=0;e<r;e++)o=await this.hash(t,o,rt(e));return Le(o)},randomBytes(e){let t=new Uint8Array(e);return crypto.getRandomValues(t),t}};function at(e){let t=e.model;if(t.headerRow===!1)throw Error(`Cannot create pivot table from a table without headers. Set headerRow: true on the table.`);if(!t.rows||t.rows.length===0)throw Error(`Cannot create pivot table from an empty table. Add data rows to the table.`);let r=t.columns.map(e=>e.name),i=new Set;for(let e of r){if(i.has(e))throw Error(`Duplicate column name "${e}" found in table. Pivot tables require unique column names.`);i.add(e)}let a=[void 0,...r],o=t.rows.map(e=>[void 0,...e]),s=t.tl,c=s.row,l=s.col,u=c+t.rows.length,d=l+r.length-1,f=n.encode(c,l,u,d);return{name:e.worksheet.name,getRow(e){if(e===1)return{values:a};let t=e-2;return t>=0&&t<o.length?{values:o[t]}:{values:[]}},getColumn(e){if(e<1||e>r.length)return{values:[]};let n=[];n[1]=r[e-1];for(let r=0;r<t.rows.length;r++)n[r+2]=t.rows[r][e-1];return{values:n}},getSheetValues(){let e=[];e[1]=a;for(let t=0;t<o.length;t++)e[t+2]=o[t];return e},dimensions:{shortRange:f}}}function ot(e){return e.sourceTable?at(e.sourceTable):e.sourceSheet}function st(e,t){if(!t.sourceSheet&&!t.sourceTable)throw Error(`Either sourceSheet or sourceTable must be provided.`);if(t.sourceSheet&&t.sourceTable)throw Error(`Cannot specify both sourceSheet and sourceTable. Choose one.`);let n=ot(t);ct(e,t,n);let{rows:r,values:i}=t,a=t.columns??[],o=lt(n,[...r,...a],i),s=o.reduce((e,t,n)=>(e[t.name]=n,e),{}),c=r.map(e=>s[e]),l=a.map(e=>s[e]),u=i.map(e=>s[e]),d=e.workbook.pivotTables.length+1;return{source:n,rows:c,columns:l,values:u,metric:t.metric??`sum`,cacheFields:o,cacheId:String(10+d-1),applyWidthHeightFormats:t.applyWidthHeightFormats??`1`,tableNumber:d}}function ct(e,t,n){if(t.metric&&t.metric!==`sum`&&t.metric!==`count`)throw Error(`Only the "sum" and "count" metrics are supported at this time.`);let r=t.columns??[],i=n.getRow(1).values.slice(1),a=new Set(i);for(let e of[...t.rows,...r,...t.values])if(!a.has(e))throw Error(`The header name "${e}" was not found in ${n.name}.`);if(!t.rows.length)throw Error(`No pivot table rows specified.`);if(t.values.length<1)throw Error(`Must have at least one value.`);if(t.values.length>1&&r.length>0)throw Error(`It is currently not possible to have multiple values when columns are specified. Please either supply an empty array for columns or a single value.`)}function lt(e,t,n){let r=e.getRow(1).values,i=new Set(t),a=new Set(n),o=t=>{let n=e.getColumn(t).values,r=new Set;for(let e=2;e<n.length;e++){let t=n[e];t!=null&&r.add(t)}return Ne(r)},s=t=>{let n=e.getColumn(t).values,r=1/0,i=-1/0,a=!1;for(let e=2;e<n.length;e++){let t=n[e];typeof t==`number`&&!isNaN(t)&&(a=!0,t<r&&(r=t),t>i&&(i=t))}return a?{minValue:r,maxValue:i}:null},c=[];for(let e of Me(1,r.length)){let t=r[e];if(i.has(t))c.push({name:t,sharedItems:o(e)});else if(a.has(t)){let n=s(e);c.push({name:t,sharedItems:null,minValue:n?.minValue,maxValue:n?.maxValue})}else c.push({name:t,sharedItems:null})}return c}let ut=(e,t)=>({...e,...t.reduce((t,n)=>(e[n]&&(t[n]={...e[n]}),t),{})}),P=(e,t,n,r=[])=>{e[n]&&(t[n]=ut(e[n],r))},dt=e=>Object.keys(e).length===0,ft=e=>{if(!e)return e;if(dt(e))return{};let t={...e};return P(e,t,`font`,[`color`]),P(e,t,`alignment`),P(e,t,`protection`),e.border&&(P(e,t,`border`),P(e.border,t.border,`top`,[`color`]),P(e.border,t.border,`left`,[`color`]),P(e.border,t.border,`bottom`,[`color`]),P(e.border,t.border,`right`,[`color`]),P(e.border,t.border,`diagonal`,[`color`])),e.fill&&(P(e,t,`fill`,[`fgColor`,`bgColor`,`center`]),e.fill.stops&&(t.fill.stops=e.fill.stops.map(e=>ut(e,[`color`])))),t};var pt=class{constructor(e){e||={},this._workbook=e.workbook,this.id=e.id||0,this.orderNo=e.orderNo||0,this.name=e.name||`sheet${this.id}`,this.state=e.state||`visible`,this._rows=[],this._columns=null,this._keys={},this._merges={},this.rowBreaks=[],this.colBreaks=[],this.properties=Object.assign({},{defaultRowHeight:15,outlineLevelCol:0,outlineLevelRow:0},e.properties),this.pageSetup=Object.assign({},{margins:{left:.7,right:.7,top:.75,bottom:.75,header:.3,footer:.3},orientation:`portrait`,horizontalDpi:4294967295,verticalDpi:4294967295,fitToPage:!!(e.pageSetup&&(e.pageSetup.fitToWidth||e.pageSetup.fitToHeight)&&!e.pageSetup.scale),pageOrder:`downThenOver`,blackAndWhite:!1,draft:!1,cellComments:`None`,errors:`displayed`,scale:100,fitToWidth:1,fitToHeight:1,paperSize:void 0,showRowColHeaders:!1,showGridLines:!1,firstPageNumber:void 0,horizontalCentered:!1,verticalCentered:!1,rowBreaks:null,colBreaks:null},e.pageSetup),this.headerFooter=Object.assign({},{differentFirst:!1,differentOddEven:!1,oddHeader:null,oddFooter:null,evenHeader:null,evenFooter:null,firstHeader:null,firstFooter:null},e.headerFooter),this.dataValidations=new me,this.views=e.views||[],this.autoFilter=e.autoFilter||null,this._media=[],this.sheetProtection=null,this.tables={},this.pivotTables=[],this.conditionalFormattings=[],this.formControls=[]}get name(){return this._name}set name(e){if(e===void 0&&(e=`sheet${this.id}`),this._name!==e){if(typeof e!=`string`)throw Error(`The name has to be a string.`);if(e===``)throw Error(`The name can't be empty.`);if(e===`History`)throw Error(`The name "History" is protected. Please use a different name.`);if(/[*?:/\\[\]]/.test(e))throw Error(`Worksheet name ${e} cannot include any of the following characters: * ? : \\ / [ ]`);if(/(^')|('$)/.test(e))throw Error(`The first or last character of worksheet name cannot be a single quotation mark: ${e}`);if(e&&e.length>31&&(e=e.substring(0,31)),this._workbook.worksheets.find(t=>t&&t.name.toLowerCase()===e.toLowerCase()))throw Error(`Worksheet name already exists: ${e}`);this._name=e}}get workbook(){return this._workbook}destroy(){this._workbook.removeWorksheetEx(this)}get dimensions(){let e=new r;return this._rows.forEach(t=>{if(t){let n=t.dimensions;n&&e.expand(t.number,n.min,t.number,n.max)}}),e}get columns(){return this._columns}set columns(e){this._headerRowCount=e.reduce((e,t)=>{let n=Array.isArray(t.header)?t.header.length:t.header?1:0;return Math.max(e,n)},0);let t=1,n=this._columns=[];e.forEach(e=>{let r=new O(this,t++,!1);n.push(r),r.defn=e})}getColumnKey(e){return this._keys[e]}setColumnKey(e,t){this._keys[e]=t}deleteColumnKey(e){delete this._keys[e]}eachColumnKey(e){Object.keys(this._keys).forEach(t=>e(this._keys[t],t))}getColumn(e){let t;if(typeof e==`string`){let r=this._keys[e];if(r)return r;t=n.l2n(e)}else t=e;if(this._columns||=[],t>this._columns.length){let e=this._columns.length+1;for(;e<=t;)this._columns.push(new O(this,e++))}return this._columns[t-1]}spliceColumns(e,t,...n){let r=this._rows.length;if(n.length>0)for(let i=0;i<r;i++){let r=n.map(e=>e[i]||null);this.getRow(i+1).splice(e,t,...r)}else this._rows.forEach(n=>{n&&n.splice(e,t)});let i=n.length-t,a=e+t,o=this._columns?this._columns.length:0;if(i<0)for(let t=e+n.length;t<=o;t++)this.getColumn(t).defn=this.getColumn(t-i).defn;else if(i>0)for(let e=o;e>=a;e--)this.getColumn(e+i).defn=this.getColumn(e).defn;for(let t=e;t<e+n.length;t++)this.getColumn(t).defn=void 0;this.workbook.definedNames.spliceColumns(this.name,e,t,n.length)}get lastColumn(){return this.getColumn(this.columnCount)}get columnCount(){let e=0;return this.eachRow(t=>{e=Math.max(e,t.cellCount)}),e}get actualColumnCount(){let e=[],t=0;return this.eachRow(n=>{n.eachCell(({col:n})=>{e[n]||(e[n]=!0,t++)})}),t}_commitRow(e){}get _lastRowNumber(){let e=this._rows,t=e.length;for(;t>0&&e[t-1]===void 0;)t--;return t}get _nextRow(){return this._lastRowNumber+1}get lastRow(){if(this._rows.length)return this._rows[this._rows.length-1]}findRow(e){return this._rows[e-1]}findRows(e,t){return this._rows.slice(e-1,e-1+t)}get rowCount(){return this._lastRowNumber}get actualRowCount(){let e=0;return this.eachRow(()=>{e++}),e}getRow(e){let t=this._rows[e-1];return t||=this._rows[e-1]=new ce(this,e),t}getRows(e,t){if(t<1)return;let n=[];for(let r=e;r<e+t;r++)n.push(this.getRow(r));return n}addRow(e,t=`n`){let n=this._nextRow,r=this.getRow(n);return r.values=e,this._setStyleOption(n,t[0]===`i`?t:`n`),r}addRows(e,t=`n`){let n=[];return e.forEach(e=>{n.push(this.addRow(e,t))}),n}insertRow(e,t,n=`n`){return this.spliceRows(e,0,t),this._setStyleOption(e,n),this.getRow(e)}insertRows(e,t,n=`n`){if(this.spliceRows(e,0,...t),n!==`n`)for(let r=0;r<t.length;r++)n[0]===`o`&&this.findRow(t.length+e+r)!==void 0?this._copyStyle(t.length+e+r,e+r,n[1]===`+`):n[0]===`i`&&this.findRow(e-1)!==void 0&&this._copyStyle(e-1,e+r,n[1]===`+`);return this.getRows(e,t.length)}_setStyleOption(e,t=`n`){t[0]===`o`&&this.findRow(e+1)!==void 0?this._copyStyle(e+1,e,t[1]===`+`):t[0]===`i`&&this.findRow(e-1)!==void 0&&this._copyStyle(e-1,e,t[1]===`+`)}_copyStyle(e,t,n=!1){let r=this.getRow(e),i=this.getRow(t);i.style=ft(r.style),r.eachCell({includeEmpty:n},(e,t)=>{i.getCell(t).style=ft(e.style)}),i.height=r.height}duplicateRow(e,t,n=!1){let r=this._rows[e-1],i=Array.from({length:t}).fill(r.values);this.spliceRows(e+1,n?0:t,...i);for(let n=0;n<t;n++){let t=this._rows[e+n];t.style=r.style,t.height=r.height,r.eachCell({includeEmpty:!0},(e,n)=>{t.getCell(n).style=e.style})}}spliceRows(e,t,...n){let r=e+t,i=n.length,a=i-t,o=this._rows.length,s,c;if(a<0)for(e===o&&(this._rows[o-1]=void 0),s=r;s<=o;s++)if(c=this._rows[s-1],c){let e=this.getRow(s+a);e.values=c.values,e.style=c.style,e.height=c.height,c.eachCell({includeEmpty:!0},(t,n)=>{e.getCell(n).style=t.style}),this._rows[s-1]=void 0}else this._rows[s+a-1]=void 0;else if(a>0)for(s=o;s>=r;s--)if(c=this._rows[s-1],c){let e=this.getRow(s+a);e.values=c.values,e.style=c.style,e.height=c.height,c.eachCell({includeEmpty:!0},(t,n)=>{if(e.getCell(n).style=t.style,t.type===u.ValueType.Merge){let e=this.getRow(t.row+i).getCell(n),r=t.master,a=this.getRow(r.row+i).getCell(r.col);e.merge(a)}})}else this._rows[s+a-1]=void 0;for(s=0;s<i;s++){let t=this.getRow(e+s);t.style={},t.values=n[s]}this.workbook.definedNames.spliceRows(this.name,e,t,i)}eachRow(e,t){let n,r;if(typeof e==`function`?r=e:(n=e,r=t),n&&n.includeEmpty){let e=this._rows.length;for(let t=1;t<=e;t++)r(this.getRow(t),t)}else this._rows.forEach(e=>{e&&e.hasValues&&r(e,e.number)})}getSheetValues(){let e=[];return this._rows.forEach(t=>{t&&(e[t.number]=t.values)}),e}findCell(e,t){let r=n.getAddress(e,t),i=this._rows[r.row-1];return i?i.findCell(r.col):void 0}getCell(e,t){let r=n.getAddress(e,t);return this.getRow(r.row).getCellEx(r)}mergeCells(...e){let t=new r(e);this._mergeCellsInternal(t)}mergeCellsWithoutStyle(...e){let t=new r(e);this._mergeCellsInternal(t,!0)}_mergeCellsInternal(e,t){Object.values(this._merges).forEach(t=>{if(t.intersects(e))throw Error(`Cannot merge already merged cells`)});let n=this.getCell(e.top,e.left);for(let r=e.top;r<=e.bottom;r++)for(let i=e.left;i<=e.right;i++)(r>e.top||i>e.left)&&this.getCell(r,i).merge(n,t);this._merges[n.address]=e}_unMergeMaster(e){let t=this._merges[e.address];if(t){for(let e=t.top;e<=t.bottom;e++)for(let n=t.left;n<=t.right;n++)this.getCell(e,n).unmerge();delete this._merges[e.address]}}get hasMerges(){return Object.values(this._merges).some(Boolean)}unMergeCells(...e){let t=new r(e);for(let e=t.top;e<=t.bottom;e++)for(let n=t.left;n<=t.right;n++){let t=this.findCell(e,n);t&&(t.type===u.ValueType.Merge?this._unMergeMaster(t.master):this._merges[t.address]&&this._unMergeMaster(t))}}fillFormula(e,t,r,i=`shared`){let{top:a,left:o,bottom:s,right:c}=n.decode(e),l=c-o+1,u=n.encodeAddress(a,o),d=i===`shared`,f;f=typeof r==`function`?r:Array.isArray(r)?Array.isArray(r[0])?(e,t)=>r[e-a][t-o]:(e,t)=>r[(e-a)*l+(t-o)]:()=>void 0;let p=!0;for(let n=a;n<=s;n++)for(let r=o;r<=c;r++)if(p){let a=this.getCell(n,r);a.value={shareType:i,formula:t,ref:e,result:f(n,r)},p=!1}else this.getCell(n,r).value=d?{sharedFormula:u,result:f(n,r)}:f(n,r)}addImage(e,t){let n={type:`image`,imageId:String(e),range:t};this._media.push(new de(this,n))}getImages(){return this._media.filter(e=>e.type===`image`)}addBackgroundImage(e){let t={type:`background`,imageId:String(e)};this._media.push(new de(this,t))}getBackgroundImageId(){let e=this._media.find(e=>e.type===`background`);return e&&e.imageId}addFormCheckbox(e,t){let n=new xe(this,e,t);return this.formControls.push(n),n}getFormCheckboxes(){return this.formControls}async protect(e,t){this.sheetProtection={sheet:!0},t&&`spinCount`in t&&(t.spinCount=Number.isFinite(t.spinCount)?Math.round(Math.max(0,t.spinCount)):1e5),e&&(this.sheetProtection.algorithmName=`SHA-512`,this.sheetProtection.saltValue=Le(it.randomBytes(16)),this.sheetProtection.spinCount=t&&`spinCount`in t?t.spinCount:1e5,this.sheetProtection.hashValue=await it.convertPasswordToHash(e,`SHA-512`,this.sheetProtection.saltValue,this.sheetProtection.spinCount)),t&&(this.sheetProtection=Object.assign(this.sheetProtection,t),!e&&`spinCount`in t&&delete this.sheetProtection.spinCount)}unprotect(){this.sheetProtection=null}addTable(e){let t=new pe(this,e);return this.tables[e.name]=t,t}getTable(e){return this.tables[e]}removeTable(e){delete this.tables[e]}getTables(){return Object.values(this.tables)}addPivotTable(e){let t=st(this,e);return this.pivotTables.push(t),this.workbook.pivotTables.push(t),t}addConditionalFormatting(e){this.conditionalFormattings.push(e)}removeConditionalFormatting(e){typeof e==`number`?this.conditionalFormattings.splice(e,1):e instanceof Function?this.conditionalFormattings=this.conditionalFormattings.filter(e):this.conditionalFormattings=[]}get model(){let e={id:this.id,name:this.name,dataValidations:this.dataValidations.model,properties:this.properties,state:this.state,pageSetup:this.pageSetup,headerFooter:this.headerFooter,rowBreaks:this.rowBreaks,colBreaks:this.colBreaks,views:this.views,autoFilter:this.autoFilter,media:this._media.map(e=>e.model),sheetProtection:this.sheetProtection,tables:Object.values(this.tables).map(e=>e.model),pivotTables:this.pivotTables,conditionalFormattings:this.conditionalFormattings,formControls:this.formControls.map(e=>e.model)};e.cols=O.toModel(this.columns||[]);let t=e.rows=[],n=e.dimensions=new r;return this._rows.forEach(e=>{let r=e&&e.model;r&&(n.expand(r.number,r.min,r.number,r.max),t.push(r))}),e.merges=[],Object.values(this._merges).forEach(t=>{e.merges.push(t.range)}),e}_parseRows(e){this._rows=[],e.rows&&e.rows.forEach(e=>{let t=new ce(this,e.number);this._rows[t.number-1]=t,t.model=e})}_parseMergeCells(e){e.mergeCells&&e.mergeCells.forEach(e=>{this.mergeCellsWithoutStyle(e)})}set model(e){this.name=e.name,this._columns=O.fromModel(this,e.cols),this._parseRows(e),this._parseMergeCells(e),this.dataValidations=new me(e.dataValidations),this.properties=e.properties,this.pageSetup=e.pageSetup,this.headerFooter=e.headerFooter,this.rowBreaks=e.rowBreaks||[],this.colBreaks=e.colBreaks||[],this.views=e.views,this.autoFilter=e.autoFilter,this._media=e.media.map(e=>new de(this,e)),this.sheetProtection=e.sheetProtection,this.tables=e.tables.reduce((e,t)=>{let n=new pe(this,t);return n.model=t,e[t.name]=n,e},{}),this.pivotTables=e.pivotTables,this.conditionalFormattings=e.conditionalFormattings,this.formControls=[]}};function mt(e){return typeof e==`number`?!0:e!==`__proto__`&&e!==`constructor`&&e!==`prototype`}function ht(e){if(typeof e!=`object`||!e)return e;if(Array.isArray(e))return e.map(e=>ht(e));let t={};for(let n of Object.keys(e))mt(n)&&(t[n]=ht(e[n]));return t}var gt=class{constructor(e){this.template=e,this.sheets={}}addCell(e){this.addCellEx(n.decodeEx(e))}getCell(e){return this.findCellEx(n.decodeEx(e),!0)}findCell(e){return this.findCellEx(n.decodeEx(e),!1)}findCellAt(e,t,n){let r=this.sheets[e],i=r&&r[t];return i&&i[n]}addCellEx(e){if(e.top!==void 0)for(let t=e.top;t<=e.bottom;t++)for(let n=e.left;n<=e.right;n++)this.getCellAt(e.sheetName,t,n);else this.findCellEx(e,!0)}getCellEx(e){return this.findCellEx(e,!0)}findCellEx(e,t){let n=this.findSheet(e,t),r=this.findSheetRow(n,e,t);return this.findRowCell(r,e,t)}getCellAt(e,t,r){if(!mt(e))throw Error(`Invalid sheet name: ${e}`);let i=this.sheets[e]||(this.sheets[e]=[]),a=i[t]||(i[t]=[]);return a[r]||(a[r]={sheetName:e,address:n.n2l(r)+t,row:t,col:r})}removeCellEx(e){let t=this.findSheet(e,!1);if(!t)return;let n=this.findSheetRow(t,e,!1);n&&delete n[e.col]}forEachInSheet(e,t){let n=this.sheets[e];n&&n.forEach((e,n)=>{e&&e.forEach((e,r)=>{e&&t(e,n,r)})})}forEach(e){Object.keys(this.sheets).forEach(t=>{this.forEachInSheet(t,e)})}map(e){let t=[];return this.forEach(n=>{t.push(e(n))}),t}findSheet(e,t){let n=e.sheetName;if(!mt(n))throw Error(`Invalid sheet name: ${n}`);if(Object.prototype.hasOwnProperty.call(this.sheets,n))return this.sheets[n];if(t)return this.sheets[n]=[]}findSheetRow(e,t,n){let{row:r}=t;if(!mt(r))throw Error(`Invalid row: ${r}`);if(e&&e[r])return e[r];if(n)return e[r]=[]}findRowCell(e,t,n){let{col:r}=t;if(!mt(r))throw Error(`Invalid column: ${r}`);if(e&&e[r])return e[r];if(n)return e[r]=this.template?{...t,...ht(this.template)}:t}spliceRows(e,t,n,r){let i=this.sheets[e];if(i){let e=[];for(let t=0;t<r;t++)e.push([]);i.splice(t,n,...e)}}spliceColumns(e,t,n,r){let i=this.sheets[e];if(i){let e=[];for(let t=0;t<r;t++)e.push(null);Object.values(i).forEach(r=>{r.splice(t,n,...e)})}}};let _t=/[$](\w+)[$](\d+)(:[$](\w+)[$](\d+))?/;var vt=class{constructor(){this.matrixMap={}}getMatrix(e){return this.matrixMap[e]||(this.matrixMap[e]=new gt)}add(e,t){let r=n.decodeEx(e);`error`in r||this.addEx(r,t)}addEx(e,t){let r=this.getMatrix(t);if(`top`in e)for(let t=e.left;t<=e.right;t++)for(let i=e.top;i<=e.bottom;i++){let a={sheetName:e.sheetName,address:n.n2l(t)+i,row:i,col:t};r.addCellEx(a)}else r.addCellEx(e)}remove(e,t){let r=n.decodeEx(e);`error`in r||this.removeEx(r,t)}removeEx(e,t){let r=this.getMatrix(t);if(`top`in e)for(let t=e.left;t<=e.right;t++)for(let i=e.top;i<=e.bottom;i++)r.removeCellEx({sheetName:e.sheetName,address:n.n2l(t)+i,row:i,col:t});else r.removeCellEx(e)}removeAllNames(e){Object.values(this.matrixMap).forEach(t=>{if(`top`in e)for(let r=e.left;r<=e.right;r++)for(let i=e.top;i<=e.bottom;i++)t.removeCellEx({sheetName:e.sheetName,address:n.n2l(r)+i,row:i,col:r});else t.removeCellEx(e)})}forEach(e){Object.entries(this.matrixMap).forEach(([t,n])=>{n.forEach(n=>{e(t,n)})})}getNames(e){let t=n.decodeEx(e);return`error`in t||`top`in t?[]:this.getNamesEx(t)}getNamesEx(e){return Object.entries(this.matrixMap).map(([t,n])=>n.findCellEx(e,!1)&&t).filter(e=>!!e)}_explore(e,t){t.mark=!1;let{sheetName:n}=t,i=new r(t.row,t.col,t.row,t.col,n),a,o,s=(t,r)=>e.findCellAt(n,t,r);function c(e,n){let r=s(e,t.col);return!r||!r.mark?!1:(i[n]=e,r.mark=!1,!0)}for(o=t.row-1;c(o,`top`);o--);for(o=t.row+1;c(o,`bottom`);o++);function l(e,t){let n=[];for(o=i.top;o<=i.bottom;o++){let t=s(o,e);if(t&&t.mark)n.push(t);else return!1}i[t]=e;for(let e=0;e<n.length;e++)n[e].mark=!1;return!0}for(a=t.col-1;l(a,`left`);a--);for(a=t.col+1;l(a,`right`);a++);return i}getRanges(e,t){return t||=this.matrixMap[e],t?(t.forEach(e=>{e.mark=!0}),{name:e,ranges:t.map(e=>e.mark&&this._explore(t,e)).filter(Boolean).map(e=>e.$shortRange)}):{name:e,ranges:[]}}normaliseMatrix(e,t){e.forEachInSheet(t,(e,t,r)=>{e&&(e.row!==t||e.col!==r)&&(e.row=t,e.col=r,e.address=n.n2l(r)+t)})}spliceRows(e,t,n,r){Object.values(this.matrixMap).forEach(i=>{i.spliceRows(e,t,n,r),this.normaliseMatrix(i,e)})}spliceColumns(e,t,n,r){Object.values(this.matrixMap).forEach(i=>{i.spliceColumns(e,t,n,r),this.normaliseMatrix(i,e)})}get model(){return Object.entries(this.matrixMap).map(([e,t])=>this.getRanges(e,t)).filter(e=>e.ranges.length)}set model(e){let t=this.matrixMap={};e.forEach(e=>{let n=t[e.name]=new gt;e.ranges.forEach(e=>{_t.test(e.split(`!`).pop()||``)&&n.addCell(e)})})}};let yt=1e4;function bt(e,t,n){e.push(` ${t}="${ke(n.toString())}"`)}function xt(e,t){if(t){let n=[];for(let e in t){if(!Object.prototype.hasOwnProperty.call(t,e))continue;let r=t[e];r!==void 0&&bt(n,e,r)}e.push(n.join(``))}}var F=class{constructor(){this._xml=[],this._chunks=[],this._stack=[],this._rollbacks=[],this.leaf=!1,this.open=!1}_consolidate(){this._rollbacks.length>0||this._xml.length>=yt&&(this._chunks.push(this._xml.join(``)),this._xml.length=0)}get tos(){return this._stack.length?this._stack[this._stack.length-1]:void 0}get cursor(){return this._chunks.length*yt+this._xml.length}openXml(e){let t=this._xml;t.push(`<?xml`),xt(t,e),t.push(`?>
|
|
8
|
-
`)}openNode(e,t){let n=this.tos,r=this._xml;n&&this.open&&r.push(`>`),this._stack.push(e),r.push(`<`),r.push(e),
|
|
7
|
+
var ExcelTS=(function(e){let t=/^[A-Z]+\d+$/,n={_dictionary:`ABCDEFGHIJKLMNOPQRSTUVWXYZ`.split(``),_l2nFill:0,_l2n:{},_n2l:[],_level(e){return e<=26?1:e<=676?2:3},_fill(e){let t,n,r,i,a,o=1;if(e>=4)throw Error(`Out of bounds. Excel supports columns from 1 to 16384`);if(this._l2nFill<1&&e>=1){for(;o<=26;)t=this._dictionary[o-1],this._n2l[o]=t,this._l2n[t]=o,o++;this._l2nFill=1}if(this._l2nFill<2&&e>=2){for(o=27;o<=702;)n=o-27,r=n%26,i=Math.floor(n/26),t=this._dictionary[i]+this._dictionary[r],this._n2l[o]=t,this._l2n[t]=o,o++;this._l2nFill=2}if(this._l2nFill<3&&e>=3){for(o=703;o<=16384;)n=o-703,r=n%26,i=Math.floor(n/26)%26,a=Math.floor(n/676),t=this._dictionary[a]+this._dictionary[i]+this._dictionary[r],this._n2l[o]=t,this._l2n[t]=o,o++;this._l2nFill=3}},l2n(e){if(this._l2n[e]||this._fill(e.length),!this._l2n[e])throw Error(`Out of bounds. Invalid column letter: ${e}`);return this._l2n[e]},n2l(e){if(e<1||e>16384)throw Error(`${e} is out of bounds. Excel supports columns from 1 to 16384`);return this._n2l[e]||this._fill(this._level(e)),this._n2l[e]},_hash:{},validateAddress(e){if(!t.test(e))throw Error(`Invalid Address: ${e}`);return!0},decodeAddress(e){let t=e.length<5&&this._hash[e];if(t)return t;let n=!1,r=``,i=0,a=!1,o=``,s=0;for(let t=0,c;t<e.length;t++)if(c=e.charCodeAt(t),!a&&c>=65&&c<=90)n=!0,r+=e[t],i=i*26+c-64;else if(c>=48&&c<=57)a=!0,o+=e[t],s=s*10+c-48;else if(a&&n&&c!==36)break;if(!n)i=void 0;else if(i>16384)throw Error(`Out of bounds. Invalid column letter: ${r}`);a||(s=void 0),e=r+o;let c={address:e,col:i,row:s,$col$row:`$${r}$${o}`};return i<=100&&s<=100&&(this._hash[e]=c,this._hash[c.$col$row]=c),c},getAddress(e,t){if(t){let n=this.n2l(t)+e;return this.decodeAddress(n)}return this.decodeAddress(e)},decode(e){let t=e.split(`:`);if(t.length===2){let e=this.decodeAddress(t[0]),n=this.decodeAddress(t[1]),r={top:Math.min(e.row,n.row),left:Math.min(e.col,n.col),bottom:Math.max(e.row,n.row),right:Math.max(e.col,n.col),tl:``,br:``,dimensions:``};return r.tl=this.n2l(r.left)+r.top,r.br=this.n2l(r.right)+r.bottom,r.dimensions=`${r.tl}:${r.br}`,r}return this.decodeAddress(e)},decodeEx(e){let t=e.match(/^(?:(?:(?:'((?:[^']|'')+?)')|([^'^ !]+?))!)?(.*)$/),n=t[1]||t[2],r=t[3],i=r.split(`:`);if(i.length>1){let e=this.decodeAddress(i[0]),t=this.decodeAddress(i[1]),r=Math.min(e.row,t.row),a=Math.min(e.col,t.col),o=Math.max(e.row,t.row),s=Math.max(e.col,t.col),c=this.n2l(a)+r,l=this.n2l(s)+o;return{top:r,left:a,bottom:o,right:s,sheetName:n,tl:{address:c,col:a,row:r,$col$row:`$${this.n2l(a)}$${r}`,sheetName:n},br:{address:l,col:s,row:o,$col$row:`$${this.n2l(s)}$${o}`,sheetName:n},dimensions:`${c}:${l}`}}if(r.indexOf(`#`)===0)return n?{sheetName:n,error:r}:{error:r};let a=this.decodeAddress(r);return n?{sheetName:n,...a}:a},encodeAddress(e,t){return n.n2l(t)+e},encode(...e){switch(e.length){case 2:return n.encodeAddress(e[0],e[1]);case 4:return`${n.encodeAddress(e[0],e[1])}:${n.encodeAddress(e[2],e[3])}`;default:throw Error(`Can only encode with 2 or 4 arguments`)}},inRange(e,t){let[n,r,,i,a]=e,[o,s]=t;return o>=n&&o<=i&&s>=r&&s<=a}};var r=class e{constructor(...e){this.model={top:0,left:0,bottom:0,right:0},this.decode(e)}setTLBR(e,t,r,i,a){if(typeof e==`string`&&typeof t==`string`){let i=n.decodeAddress(e),a=n.decodeAddress(t);this.model={top:Math.min(i.row,a.row),left:Math.min(i.col,a.col),bottom:Math.max(i.row,a.row),right:Math.max(i.col,a.col),sheetName:typeof r==`string`?r:void 0}}else typeof e==`number`&&typeof t==`number`&&typeof r==`number`&&typeof i==`number`&&(this.model={top:Math.min(e,r),left:Math.min(t,i),bottom:Math.max(e,r),right:Math.max(t,i),sheetName:a})}decode(t){switch(t.length){case 5:typeof t[0]==`number`&&typeof t[1]==`number`&&typeof t[2]==`number`&&typeof t[3]==`number`&&typeof t[4]==`string`&&this.setTLBR(t[0],t[1],t[2],t[3],t[4]);break;case 4:typeof t[0]==`number`&&typeof t[1]==`number`&&typeof t[2]==`number`&&typeof t[3]==`number`&&this.setTLBR(t[0],t[1],t[2],t[3]);break;case 3:typeof t[0]==`string`&&typeof t[1]==`string`&&typeof t[2]==`string`&&this.setTLBR(t[0],t[1],t[2]);break;case 2:typeof t[0]==`string`&&typeof t[1]==`string`&&this.setTLBR(t[0],t[1]);break;case 1:{let r=t[0];if(r instanceof e)this.model={top:r.model.top,left:r.model.left,bottom:r.model.bottom,right:r.model.right,sheetName:r.sheetName};else if(Array.isArray(r))this.decode(r);else if(typeof r==`object`&&`top`in r&&`left`in r&&`bottom`in r&&`right`in r)this.model={top:r.top,left:r.left,bottom:r.bottom,right:r.right,sheetName:r.sheetName};else if(typeof r==`string`){let e=n.decodeEx(r);`top`in e?this.model={top:e.top,left:e.left,bottom:e.bottom,right:e.right,sheetName:e.sheetName}:`row`in e&&(this.model={top:e.row,left:e.col,bottom:e.row,right:e.col,sheetName:e.sheetName})}break}case 0:this.model={top:0,left:0,bottom:0,right:0};break;default:throw Error(`Invalid number of arguments to _getDimensions() - ${t.length}`)}}get top(){return this.model.top||1}set top(e){this.model.top=e}get left(){return this.model.left||1}set left(e){this.model.left=e}get bottom(){return this.model.bottom||1}set bottom(e){this.model.bottom=e}get right(){return this.model.right||1}set right(e){this.model.right=e}get sheetName(){return this.model.sheetName}set sheetName(e){this.model.sheetName=e}get _serialisedSheetName(){let{sheetName:e}=this.model;return e?/^[a-zA-Z0-9]*$/.test(e)?`${e}!`:`'${e}'!`:``}expand(e,t,n,r){(!this.model.top||e<this.top)&&(this.top=e),(!this.model.left||t<this.left)&&(this.left=t),(!this.model.bottom||n>this.bottom)&&(this.bottom=n),(!this.model.right||r>this.right)&&(this.right=r)}expandRow(e){if(e){let{dimensions:t,number:n}=e;t&&this.expand(n,t.min,n,t.max)}}expandToAddress(e){let t=n.decodeEx(e);`row`in t&&`col`in t&&this.expand(t.row,t.col,t.row,t.col)}get tl(){return n.n2l(this.left)+this.top}get $t$l(){return`$${n.n2l(this.left)}$${this.top}`}get br(){return n.n2l(this.right)+this.bottom}get $b$r(){return`$${n.n2l(this.right)}$${this.bottom}`}get range(){return`${this._serialisedSheetName+this.tl}:${this.br}`}get $range(){return`${this._serialisedSheetName+this.$t$l}:${this.$b$r}`}get shortRange(){return this.count>1?this.range:this._serialisedSheetName+this.tl}get $shortRange(){return this.count>1?this.$range:this._serialisedSheetName+this.$t$l}get count(){return(1+this.bottom-this.top)*(1+this.right-this.left)}toString(){return this.range}intersects(e){return!(e.sheetName&&this.sheetName&&e.sheetName!==this.sheetName||e.bottom<this.top||e.top>this.bottom||e.right<this.left||e.left>this.right)}contains(e){let t=n.decodeEx(e);return`row`in t&&`col`in t?this.containsEx(t):!1}containsEx(e){return e.sheetName&&this.sheetName&&e.sheetName!==this.sheetName?!1:e.row>=this.top&&e.row<=this.bottom&&e.col>=this.left&&e.col<=this.right}forEachAddress(e){for(let t=this.left;t<=this.right;t++)for(let r=this.top;r<=this.bottom;r++)e(n.encodeAddress(r,t),r,t)}};let i=function(e){return e[e.Null=0]=`Null`,e[e.Merge=1]=`Merge`,e[e.Number=2]=`Number`,e[e.String=3]=`String`,e[e.Date=4]=`Date`,e[e.Hyperlink=5]=`Hyperlink`,e[e.Formula=6]=`Formula`,e[e.SharedString=7]=`SharedString`,e[e.RichText=8]=`RichText`,e[e.Boolean=9]=`Boolean`,e[e.Error=10]=`Error`,e[e.JSON=11]=`JSON`,e[e.Checkbox=12]=`Checkbox`,e}({}),a=function(e){return e[e.None=0]=`None`,e[e.Master=1]=`Master`,e[e.Shared=2]=`Shared`,e}({}),o=function(e){return e[e.None=0]=`None`,e[e.OfficeDocument=1]=`OfficeDocument`,e[e.Worksheet=2]=`Worksheet`,e[e.CalcChain=3]=`CalcChain`,e[e.SharedStrings=4]=`SharedStrings`,e[e.Styles=5]=`Styles`,e[e.Theme=6]=`Theme`,e[e.Hyperlink=7]=`Hyperlink`,e}({}),s=function(e){return e[e.Xlsx=1]=`Xlsx`,e}({}),c=function(e){return e[e.LeftToRight=1]=`LeftToRight`,e[e.RightToLeft=2]=`RightToLeft`,e}({}),l={NotApplicable:`#N/A`,Ref:`#REF!`,Name:`#NAME?`,DivZero:`#DIV/0!`,Null:`#NULL!`,Value:`#VALUE!`,Num:`#NUM!`},u={ValueType:i,FormulaType:a,RelationshipType:o,DocumentType:s,ReadingOrder:c,ErrorValue:l},d={'"':`"`,"&":`&`,"<":`<`,">":`>`},f=/["&<>]/g;function p(e,t){if(e===t)return!0;if(e==null||t==null)return e===t;let n=typeof e;if(n!==typeof t||n!==`object`)return!1;let r=Array.isArray(e);if(r!==Array.isArray(t))return!1;if(r){let n=e.length;if(n!==t.length)return!1;for(let r=0;r<n;r++)if(!p(e[r],t[r]))return!1;return!0}let i=Object.keys(e),a=Object.keys(t);if(i.length!==a.length)return!1;for(let n=0,r=i.length;n<r;n++){let r=i[n];if(!Object.prototype.hasOwnProperty.call(t,r)||!p(e[r],t[r]))return!1}return!0}function m(e){return e.replace(f,e=>d[e])}function h(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function g(...e){let t=e[0]||{},n=e.length;for(let r=1;r<n;r++){let n=e[r];if(n)if(Array.isArray(n))for(let e=0,r=n.length;e<r;e++){let r=n[e];if(r===void 0)continue;let i=t[e];Array.isArray(r)?t[e]=g(Array.isArray(i)?i:[],r):h(r)?t[e]=g(h(i)?i:{},r):t[e]=r}else{let e=Object.keys(n);for(let r=0,i=e.length;r<i;r++){let i=e[r];if(i===`__proto__`||i===`constructor`||i===`prototype`)continue;let a=n[i];if(a===void 0)continue;let o=t[i];Array.isArray(a)?t[i]=g(Array.isArray(o)?o:[],a):h(a)?t[i]=g(h(o)?o:{},a):t[i]=a}}}return t}var _=class e{static{this.DEFAULT_CONFIGS={note:{margins:{insetmode:`auto`,inset:[.13,.13,.25,.25]},protection:{locked:`True`,lockText:`True`},editAs:`absolute`},type:`note`}}constructor(e){this.note=e}get model(){let t=null;switch(typeof this.note){case`string`:t={type:`note`,note:{texts:[{text:this.note}]}};break;default:t={type:`note`,note:this.note};break}return g({},e.DEFAULT_CONFIGS,t)}set model(e){let{note:t}=e,{texts:n}=t;n&&n.length===1&&Object.keys(n[0]).length===1?this.note=n[0].text:this.note=t}static fromModel(t){let n=new e;return n.model=t,n}};let v=/(([a-z_\-0-9]*)!)?([a-z0-9_$]{2,})([(])?/gi,y=/^([$])?([a-z]+)([$])?([1-9][0-9]*)$/i;function ee(e,t,r){let i=n.decode(t),a=n.decode(r);return e.replace(v,(e,t,r,o,s)=>{if(s)return e;let c=y.exec(o);if(c){let r=c[1],o=c[2].toUpperCase(),s=c[3],l=c[4];if(o.length>3||o.length===3&&o>`XFD`)return e;let u=n.l2n(o),d=parseInt(l,10);return r||(u+=a.col-i.col),s||(d+=a.row-i.row),(t||``)+(r||``)+n.n2l(u)+(s||``)+d}return e})}var b=class e{static{this.Types=u.ValueType}constructor(t,r,i){if(!t||!r)throw Error(`A Cell needs a Row`);this._row=t,this._column=r,n.validateAddress(i),this._address=i,this._value=E.create(e.Types.Null,this),this.style=this._mergeStyle(t.style,r.style,{}),this._mergeCount=0}get worksheet(){return this._row.worksheet}get workbook(){return this._row.worksheet.workbook}destroy(){delete this.style,delete this._value,delete this._row,delete this._column,delete this._address}get numFmt(){return this.style.numFmt}set numFmt(e){this.style.numFmt=e}get font(){return this.style.font}set font(e){this.style.font=e}get alignment(){return this.style.alignment}set alignment(e){this.style.alignment=e}get border(){return this.style.border}set border(e){this.style.border=e}get fill(){return this.style.fill}set fill(e){this.style.fill=e}get protection(){return this.style.protection}set protection(e){this.style.protection=e}_mergeStyle(e,t,n){let r=e&&e.numFmt||t&&t.numFmt;r&&(n.numFmt=r);let i=e&&e.font||t&&t.font;i&&(n.font=i);let a=e&&e.alignment||t&&t.alignment;a&&(n.alignment=a);let o=e&&e.border||t&&t.border;o&&(n.border=o);let s=e&&e.fill||t&&t.fill;s&&(n.fill=s);let c=e&&e.protection||t&&t.protection;return c&&(n.protection=c),n}get address(){return this._address}get row(){return this._row.number}get col(){return this._column.number}get $col$row(){return`$${this._column.letter}$${this.row}`}get type(){return this._value.type}get effectiveType(){return this._value.effectiveType}toCsvString(){return this._value.toCsvString()}addMergeRef(){this._mergeCount++}releaseMergeRef(){this._mergeCount--}get isMerged(){return this._mergeCount>0||this.type===e.Types.Merge}merge(t,n){this._value.release(),this._value=E.create(e.Types.Merge,this,t),n||(this.style=t.style)}unmerge(){this.type===e.Types.Merge&&(this._value.release(),this._value=E.create(e.Types.Null,this),this.style=this._mergeStyle(this._row.style,this._column.style,{}))}isMergedTo(t){return this._value.type===e.Types.Merge?this._value.isMergedTo(t):!1}get master(){return this.type===e.Types.Merge?this._value.master:this}get isHyperlink(){return this._value.type===e.Types.Hyperlink}get hyperlink(){return this._value.hyperlink}get value(){return this._value.value}set value(t){if(this.type===e.Types.Merge){this._value.master.value=t;return}this._value.release(),this._value=E.create(E.getType(t),this,t)}get note(){if(this._comment)return this._comment.note}set note(e){this._comment=new _(e)}get comment(){return this._comment}set comment(e){e===void 0?this._comment=void 0:e instanceof _?this._comment=e:this._comment=new _(e)}get text(){return this._value.toString()}get html(){return m(this.text)}toString(){return this.text}_upgradeToHyperlink(t){this.type===e.Types.String&&(this._value=E.create(e.Types.Hyperlink,this,{text:String(this._value.value),hyperlink:t}))}get formula(){return this._value.formula}get result(){return this._value.result}get formulaType(){return this._value.formulaType}get fullAddress(){let{worksheet:e}=this._row;return{sheetName:e.name,address:this.address,row:this.row,col:this.col}}get name(){return this.names[0]}set name(e){this.names=[e]}get names(){return this.workbook.definedNames.getNamesEx(this.fullAddress)}set names(e){let{definedNames:t}=this.workbook;t.removeAllNames(this.fullAddress),e.forEach(e=>{t.addEx(this.fullAddress,e)})}addName(e){this.workbook.definedNames.addEx(this.fullAddress,e)}removeName(e){this.workbook.definedNames.removeEx(this.fullAddress,e)}removeAllNames(){this.workbook.definedNames.removeAllNames(this.fullAddress)}get _dataValidations(){return this.worksheet.dataValidations}get dataValidation(){return this._dataValidations.find(this.address)}set dataValidation(e){this._dataValidations.add(this.address,e)}get model(){let{model:e}=this._value;return e.style=this.style,this._comment&&(e.comment=this._comment.model),e}set model(e){if(this._value.release(),this._value=E.create(e.type,this),this._value.model=e,e.comment)switch(e.comment.type){case`note`:this._comment=_.fromModel(e.comment);break}e.style?this.style=e.style:this.style={}}},te=class{constructor(e){this.model={address:e.address,type:b.Types.Null}}get value(){return null}set value(e){}get type(){return b.Types.Null}get effectiveType(){return b.Types.Null}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return``}release(){}toString(){return``}},x=class{constructor(e,t){this.model={address:e.address,type:b.Types.Number,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return b.Types.Number}get effectiveType(){return b.Types.Number}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value.toString()}release(){}toString(){return this.model.value.toString()}},ne=class{constructor(e,t){this.model={address:e.address,type:b.Types.String,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return b.Types.String}get effectiveType(){return b.Types.String}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return`"${this.model.value.replace(/"/g,`""`)}"`}release(){}toString(){return this.model.value}},re=class{constructor(e,t){this.model={address:e.address,type:b.Types.String,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}toString(){return this.model.value.richText.map(e=>e.text).join(``)}get type(){return b.Types.RichText}get effectiveType(){return b.Types.RichText}get address(){return this.model.address}set address(e){this.model.address=e}get text(){return this.toString()}toCsvString(){return`"${this.text.replace(/"/g,`""`)}"`}release(){}},S=class{constructor(e,t){this.model={address:e.address,type:b.Types.Date,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return b.Types.Date}get effectiveType(){return b.Types.Date}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value.toISOString()}release(){}toString(){return this.model.value.toString()}},C=class{constructor(e,t){this.model={address:e.address,type:b.Types.Hyperlink,text:t?t.text:void 0,hyperlink:t?t.hyperlink:void 0},t&&t.tooltip&&(this.model.tooltip=t.tooltip)}get value(){return{text:this.model.text||``,hyperlink:this.model.hyperlink||``,tooltip:this.model.tooltip}}set value(e){this.model.text=e.text,this.model.hyperlink=e.hyperlink,e.tooltip&&(this.model.tooltip=e.tooltip)}get text(){return this.model.text}set text(e){this.model.text=e}get hyperlink(){return this.model.hyperlink}set hyperlink(e){this.model.hyperlink=e}get type(){return b.Types.Hyperlink}get effectiveType(){return b.Types.Hyperlink}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.hyperlink||``}release(){}toString(){return this.model.text||``}},ie=class{constructor(e,t){this.model={address:e.address,type:b.Types.Merge,master:t?t.address:void 0},this._master=t,t&&t.addMergeRef()}get value(){return this._master.value}set value(e){e instanceof b?(this._master&&this._master.releaseMergeRef(),e.addMergeRef(),this._master=e):this._master.value=e}isMergedTo(e){return e===this._master}get master(){return this._master}get type(){return b.Types.Merge}get effectiveType(){return this._master.effectiveType}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return``}release(){this._master.releaseMergeRef()}toString(){return this.value.toString()}},w=class{constructor(e,t){this.cell=e,this.model={address:e.address,type:b.Types.Formula,shareType:t?t.shareType:void 0,ref:t?t.ref:void 0,formula:t?t.formula:void 0,sharedFormula:t?t.sharedFormula:void 0,result:t?t.result:void 0}}_copyModel(e){let t={};return e.formula&&(t.formula=e.formula),e.result!==void 0&&(t.result=e.result),e.ref&&(t.ref=e.ref),e.shareType&&(t.shareType=e.shareType),e.sharedFormula&&(t.sharedFormula=e.sharedFormula),t}get value(){return this._copyModel(this.model)}set value(e){e.formula&&(this.model.formula=e.formula),e.result!==void 0&&(this.model.result=e.result),e.ref&&(this.model.ref=e.ref),e.shareType&&(this.model.shareType=e.shareType),e.sharedFormula&&(this.model.sharedFormula=e.sharedFormula)}validate(e){switch(E.getType(e)){case b.Types.Null:case b.Types.String:case b.Types.Number:case b.Types.Date:break;case b.Types.Hyperlink:case b.Types.Formula:default:throw Error(`Cannot process that type of result value`)}}get dependencies(){return{ranges:this.formula.match(/([a-zA-Z0-9]+!)?[A-Z]{1,3}\d{1,4}:[A-Z]{1,3}\d{1,4}/g),cells:this.formula.replace(/([a-zA-Z0-9]+!)?[A-Z]{1,3}\d{1,4}:[A-Z]{1,3}\d{1,4}/g,``).match(/([a-zA-Z0-9]+!)?[A-Z]{1,3}\d{1,4}/g)}}get formula(){return this.model.formula||this._getTranslatedFormula()||``}set formula(e){this.model.formula=e}get formulaType(){return this.model.formula?u.FormulaType.Master:this.model.sharedFormula?u.FormulaType.Shared:u.FormulaType.None}get result(){return this.model.result}set result(e){this.model.result=e}get type(){return b.Types.Formula}get effectiveType(){let e=this.model.result;return e==null?u.ValueType.Null:e instanceof String||typeof e==`string`?u.ValueType.String:typeof e==`number`?u.ValueType.Number:e instanceof Date?u.ValueType.Date:typeof e==`object`&&`error`in e?u.ValueType.Error:u.ValueType.Null}get address(){return this.model.address}set address(e){this.model.address=e}_getTranslatedFormula(){if(!this._translatedFormula&&this.model.sharedFormula){let{worksheet:e}=this.cell,t=e.findCell(this.model.sharedFormula);this._translatedFormula=t&&ee(t.formula,t.address,this.model.address)}return this._translatedFormula}toCsvString(){return`${this.model.result||``}`}release(){}toString(){return this.model.result?this.model.result.toString():``}},ae=class{constructor(e,t){this.model={address:e.address,type:b.Types.SharedString,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return b.Types.SharedString}get effectiveType(){return b.Types.SharedString}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value.toString()}release(){}toString(){return this.model.value.toString()}},oe=class{constructor(e,t){this.model={address:e.address,type:b.Types.Boolean,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return b.Types.Boolean}get effectiveType(){return b.Types.Boolean}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value?1:0}release(){}toString(){return this.model.value.toString()}},se=class{constructor(e,t){this.model={address:e.address,type:b.Types.Checkbox,value:t.checkbox}}get value(){return{checkbox:this.model.value}}set value(e){this.model.value=e.checkbox}get type(){return b.Types.Checkbox}get effectiveType(){return b.Types.Boolean}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value?1:0}release(){}toString(){return this.model.value.toString()}},T=class{constructor(e,t){this.model={address:e.address,type:b.Types.Error,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return b.Types.Error}get effectiveType(){return b.Types.Error}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.toString()}release(){}toString(){return this.model.value.error.toString()}},ce=class{constructor(e,t){this.model={address:e.address,type:b.Types.String,value:JSON.stringify(t),rawValue:t}}get value(){return this.model.rawValue}set value(e){this.model.rawValue=e,this.model.value=JSON.stringify(e)}get type(){return b.Types.String}get effectiveType(){return b.Types.String}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value}release(){}toString(){return this.model.value}};let E={getType(e){if(e==null)return b.Types.Null;if(e instanceof String||typeof e==`string`)return b.Types.String;if(typeof e==`number`)return b.Types.Number;if(typeof e==`boolean`)return b.Types.Boolean;if(e instanceof Date)return b.Types.Date;if(typeof e==`object`){if(`checkbox`in e&&typeof e.checkbox==`boolean`)return b.Types.Checkbox;if(`text`in e&&e.text&&`hyperlink`in e&&e.hyperlink)return b.Types.Hyperlink;if(`formula`in e&&e.formula||`sharedFormula`in e&&e.sharedFormula)return b.Types.Formula;if(`richText`in e&&e.richText)return b.Types.RichText;if(`sharedString`in e&&e.sharedString)return b.Types.SharedString;if(`error`in e&&e.error)return b.Types.Error}return b.Types.JSON},types:[{t:b.Types.Null,f:te},{t:b.Types.Number,f:x},{t:b.Types.String,f:ne},{t:b.Types.Date,f:S},{t:b.Types.Hyperlink,f:C},{t:b.Types.Formula,f:w},{t:b.Types.Merge,f:ie},{t:b.Types.JSON,f:ce},{t:b.Types.SharedString,f:ae},{t:b.Types.RichText,f:re},{t:b.Types.Boolean,f:oe},{t:b.Types.Error,f:T},{t:b.Types.Checkbox,f:se}].reduce((e,t)=>(e[t.t]=t.f,e),[]),create(e,t,n){let r=this.types[e];if(!r)throw Error(`Could not create Value of type ${e}`);return new r(t,n)}};var le=class{constructor(e,t){this._worksheet=e,this._number=t,this._cells=[],this.style={},this.outlineLevel=0}get number(){return this._number}get worksheet(){return this._worksheet}commit(){this._worksheet._commitRow(this)}destroy(){delete this._worksheet,delete this._cells,delete this.style}findCell(e){return this._cells[e-1]}getCellEx(e){let t=this._cells[e.col-1];if(!t){let n=this._worksheet.getColumn(e.col);t=new b(this,n,e.address),this._cells[e.col-1]=t}return t}getCell(e){let t;if(typeof e==`string`){let r=this._worksheet.getColumnKey(e);t=r?r.number:n.l2n(e)}else t=e;return this._cells[t-1]||this.getCellEx({address:n.encodeAddress(this._number,t),row:this._number,col:t})}splice(e,t,...n){let r=e+t,i=n.length-t,a=this._cells.length,o,s,c;if(i<0)for(o=e+n.length;o<=a;o++)c=this._cells[o-1],s=this._cells[o-i-1],s?(c=this.getCell(o),c.value=s.value,c.style=s.style,c.comment=s.comment):c&&(c.value=null,c.style={},c.comment=void 0);else if(i>0)for(o=a;o>=r;o--)s=this._cells[o-1],s?(c=this.getCell(o+i),c.value=s.value,c.style=s.style,c.comment=s.comment):this._cells[o+i-1]=void 0;for(o=0;o<n.length;o++)c=this.getCell(e+o),c.value=n[o],c.style={},c.comment=void 0}eachCell(e,t){let n=null,r;if(typeof e==`function`?r=e:(n=e,r=t),n&&n.includeEmpty){let e=this._cells.length;for(let t=1;t<=e;t++)r(this.getCell(t),t)}else this._cells.forEach((e,t)=>{e&&e.type!==u.ValueType.Null&&r(e,t+1)})}addPageBreak(e,t){let n=this._worksheet,r=Math.max(0,(e||0)-1)||0,i=Math.max(0,(t||0)-1)||16838,a={id:this._number,max:i,man:1};r&&(a.min=r),n.rowBreaks.push(a)}get values(){let e=[];return this._cells.forEach(t=>{t&&t.type!==u.ValueType.Null&&(e[t.col]=t.value)}),e}set values(e){if(this._cells=[],e)if(e instanceof Array){let t=0;Object.prototype.hasOwnProperty.call(e,`0`)&&(t=1),e.forEach((e,r)=>{e!==void 0&&(this.getCellEx({address:n.encodeAddress(this._number,r+t),row:this._number,col:r+t}).value=e)})}else this._worksheet.eachColumnKey((t,r)=>{e[r]!==void 0&&(this.getCellEx({address:n.encodeAddress(this._number,t.number),row:this._number,col:t.number}).value=e[r])})}getValues(){let e=[];return this._cells.forEach(t=>{t&&t.type!==u.ValueType.Null&&(e[t.col-1]=t.value)}),e}valuesToString(e=`,`){return this.getValues().join(e)}get hasValues(){return this._cells.some(e=>e&&e.type!==u.ValueType.Null)}get cellCount(){return this._cells.length}get actualCellCount(){let e=0;return this.eachCell(()=>{e++}),e}get dimensions(){let e=0,t=0;return this._cells.forEach(n=>{n&&n.type!==u.ValueType.Null&&((!e||e>n.col)&&(e=n.col),t<n.col&&(t=n.col))}),e>0?{min:e,max:t}:null}_applyStyle(e,t){this.style[e]=t,this._cells.forEach(n=>{n&&(n.style[e]=t)})}get numFmt(){return this.style.numFmt}set numFmt(e){e!==void 0&&this._applyStyle(`numFmt`,e)}get font(){return this.style.font}set font(e){e!==void 0&&this._applyStyle(`font`,e)}get alignment(){return this.style.alignment}set alignment(e){e!==void 0&&this._applyStyle(`alignment`,e)}get protection(){return this.style.protection}set protection(e){e!==void 0&&this._applyStyle(`protection`,e)}get border(){return this.style.border}set border(e){e!==void 0&&this._applyStyle(`border`,e)}get fill(){return this.style.fill}set fill(e){e!==void 0&&this._applyStyle(`fill`,e)}get hidden(){return!!this._hidden}set hidden(e){this._hidden=e}get outlineLevel(){return this._outlineLevel||0}set outlineLevel(e){this._outlineLevel=e}get collapsed(){return!!(this._outlineLevel&&this._outlineLevel>=this._worksheet.properties.outlineLevelRow)}get model(){let e=[],t=0,n=0;return this._cells.forEach(r=>{if(r){let i=r.model;i&&((!t||t>r.col)&&(t=r.col),n<r.col&&(n=r.col),e.push(i))}}),this.height||e.length?{cells:e,number:this.number,min:t,max:n,height:this.height,style:this.style,hidden:this.hidden,outlineLevel:this.outlineLevel,collapsed:this.collapsed}:null}set model(e){if(e.number!==this._number)throw Error(`Invalid row number in model`);this._cells=[];let t;e.cells.forEach(e=>{switch(e.type){case b.Types.Merge:break;default:{let r;if(e.address)r=n.decodeAddress(e.address);else if(t){let{row:e}=t,i=t.col+1;r={row:e,col:i,address:n.encodeAddress(e,i),$col$row:`$${n.n2l(i)}$${e}`}}t=r;let i=this.getCellEx(r);i.model=e;break}}}),e.height?this.height=e.height:delete this.height,this.hidden=e.hidden,this.outlineLevel=e.outlineLevel||0,this.style=e.style&&JSON.parse(JSON.stringify(e.style))||{}}},D=class e{constructor(e,t,n){this._worksheet=e,this._number=t,n!==!1&&(this.defn=n)}get number(){return this._number}get worksheet(){return this._worksheet}get letter(){return n.n2l(this._number)}get isCustomWidth(){return this.width!==void 0&&this.width!==9}get defn(){return{header:this._header,key:this.key,width:this.width,style:this.style,hidden:this.hidden,outlineLevel:this.outlineLevel}}set defn(e){e?(this.key=e.key,this.width=e.width===void 0?9:e.width,this.outlineLevel=e.outlineLevel,e.style?this.style=e.style:this.style={},this.header=e.header,this._hidden=!!e.hidden):(delete this._header,delete this._key,delete this.width,this.style={},this.outlineLevel=0)}get headers(){return Array.isArray(this._header)?this._header:this._header===void 0?[]:[this._header]}get header(){return this._header}set header(e){e===void 0?this._header=void 0:(this._header=e,this.headers.forEach((e,t)=>{this._worksheet.getCell(t+1,this.number).value=e}))}get key(){return this._key}set key(e){(this._key&&this._worksheet.getColumnKey(this._key))===this&&this._worksheet.deleteColumnKey(this._key),this._key=e,e&&this._worksheet.setColumnKey(this._key,this)}get hidden(){return!!this._hidden}set hidden(e){this._hidden=e}get outlineLevel(){return this._outlineLevel||0}set outlineLevel(e){this._outlineLevel=e}get collapsed(){return!!(this._outlineLevel&&this._outlineLevel>=this._worksheet.properties.outlineLevelCol)}toString(){return JSON.stringify({key:this.key,width:this.width,headers:this.headers.length?this.headers:void 0})}equivalentTo(e){return this.width===e.width&&this.hidden===e.hidden&&this.outlineLevel===e.outlineLevel&&p(this.style,e.style)}equivalentToModel(e){return this.width===e.width&&this.hidden===e.hidden&&this.outlineLevel===e.outlineLevel&&p(this.style,e.style)}get isDefault(){if(this.isCustomWidth||this.hidden||this.outlineLevel)return!1;let e=this.style;return!(e&&(e.font||e.numFmt||e.alignment||e.border||e.fill||e.protection))}get headerCount(){return this.headers.length}eachCell(e,t){let n=this.number,r,i;typeof e==`function`?(r={},i=e):(r=e,i=t),this._worksheet.eachRow(r,(e,t)=>{i(e.getCell(n),t)})}get values(){let e=[];return this.eachCell((t,n)=>{t&&t.type!==u.ValueType.Null&&(e[n]=t.value)}),e}set values(e){if(!e)return;let t=this.number,n=0;Object.prototype.hasOwnProperty.call(e,`0`)&&(n=1),e.forEach((e,r)=>{this._worksheet.getCell(r+n,t).value=e})}addPageBreak(e,t){let n=this._worksheet,r=Math.max(0,(e||0)-1)||0,i=Math.max(0,(t||0)-1)||1048575,a={id:this._number,max:i,man:1};r&&(a.min=r),n.colBreaks.push(a)}get numFmt(){return this.style.numFmt}set numFmt(e){this.style.numFmt=e,this.eachCell(t=>{t.numFmt=e})}get font(){return this.style.font}set font(e){this.style.font=e,this.eachCell(t=>{t.font=e})}get alignment(){return this.style.alignment}set alignment(e){this.style.alignment=e,this.eachCell(t=>{t.alignment=e})}get protection(){return this.style.protection}set protection(e){this.style.protection=e,this.eachCell(t=>{t.protection=e})}get border(){return this.style.border}set border(e){this.style.border=e,this.eachCell(t=>{t.border=e})}get fill(){return this.style.fill}set fill(e){this.style.fill=e,this.eachCell(t=>{t.fill=e})}static toModel(e){let t=[],n=null;return e&&e.forEach((e,r)=>{e.isDefault?n&&=null:!n||!e.equivalentToModel(n)?(n={min:r+1,max:r+1,width:e.width===void 0?9:e.width,style:e.style,isCustomWidth:e.isCustomWidth,hidden:e.hidden,outlineLevel:e.outlineLevel,collapsed:e.collapsed},t.push(n)):n.max=r+1}),t.length?t:void 0}static fromModel(t,n){let r=t,i=Array.isArray(t)?t:n??[];i||=[];let a=[],o=1,s=0;for(i=i.sort(function(e,t){return e.min-t.min});s<i.length;){let t=i[s++];for(;o<t.min;)a.push(new e(r,o++));for(;o<=t.max;)a.push(new e(r,o++,t))}return a.length?a:null}};function ue(e){return typeof e==`object`&&`nativeCol`in e&&`nativeRow`in e&&`nativeColOff`in e&&`nativeRowOff`in e}function de(e){return typeof e==`object`&&`col`in e&&`row`in e}var O=class e{constructor(e,t,r=0){if(this.worksheet=e,!t)this.nativeCol=0,this.nativeColOff=0,this.nativeRow=0,this.nativeRowOff=0;else if(typeof t==`string`){let e=n.decodeAddress(t);this.nativeCol=e.col+r,this.nativeColOff=0,this.nativeRow=e.row+r,this.nativeRowOff=0}else ue(t)?(this.nativeCol=t.nativeCol||0,this.nativeColOff=t.nativeColOff||0,this.nativeRow=t.nativeRow||0,this.nativeRowOff=t.nativeRowOff||0):de(t)?(this.col=t.col+r,this.row=t.row+r):(this.nativeCol=0,this.nativeColOff=0,this.nativeRow=0,this.nativeRowOff=0)}static asInstance(t){return t==null?null:t instanceof e?t:new e(void 0,t)}get col(){return this.nativeCol+Math.min(this.colWidth-1,this.nativeColOff)/this.colWidth}set col(e){this.nativeCol=Math.floor(e),this.nativeColOff=Math.floor((e-this.nativeCol)*this.colWidth)}get row(){return this.nativeRow+Math.min(this.rowHeight-1,this.nativeRowOff)/this.rowHeight}set row(e){this.nativeRow=Math.floor(e),this.nativeRowOff=Math.floor((e-this.nativeRow)*this.rowHeight)}get colWidth(){return this.worksheet&&this.worksheet.getColumn(this.nativeCol+1)&&this.worksheet.getColumn(this.nativeCol+1).isCustomWidth?Math.floor(this.worksheet.getColumn(this.nativeCol+1).width*1e4):64e4}get rowHeight(){return this.worksheet&&this.worksheet.getRow(this.nativeRow+1)&&this.worksheet.getRow(this.nativeRow+1).height?Math.floor(this.worksheet.getRow(this.nativeRow+1).height*1e4):18e4}get model(){return{nativeCol:this.nativeCol,nativeColOff:this.nativeColOff,nativeRow:this.nativeRow,nativeRowOff:this.nativeRowOff}}set model(e){this.nativeCol=e.nativeCol,this.nativeColOff=e.nativeColOff,this.nativeRow=e.nativeRow,this.nativeRowOff=e.nativeRowOff}},fe=class{constructor(e,t){this.worksheet=e,t&&(this.model=t)}get model(){switch(this.type){case`background`:return{type:this.type,imageId:this.imageId};case`image`:return{type:this.type,imageId:this.imageId,hyperlinks:this.range.hyperlinks,range:{tl:this.range.tl.model,br:this.range.br&&this.range.br.model,ext:this.range.ext,editAs:this.range.editAs}};default:throw Error(`Invalid Image Type`)}}set model({type:e,imageId:t,range:r,hyperlinks:i}){if(this.type=e,this.imageId=t,e===`image`)if(typeof r==`string`){let e=n.decode(r);`top`in e&&(this.range={tl:new O(this.worksheet,{col:e.left,row:e.top},-1),br:new O(this.worksheet,{col:e.right,row:e.bottom},0),editAs:`oneCell`})}else r&&(this.range={tl:new O(this.worksheet,r.tl,0),br:r.br?new O(this.worksheet,r.br,0):void 0,ext:r.ext,editAs:r.editAs,hyperlinks:i||(`hyperlinks`in r?r.hyperlinks:void 0)})}},pe=class{constructor(e,t,n){this.table=e,this.column=t,this.index=n}_set(e,t){this.table.cacheState(),this.column[e]=t}get name(){return this.column.name}set name(e){this._set(`name`,e)}get filterButton(){return this.column.filterButton}set filterButton(e){this.column.filterButton=e}get style(){return this.column.style}set style(e){this.column.style=e}get totalsRowLabel(){return this.column.totalsRowLabel}set totalsRowLabel(e){this._set(`totalsRowLabel`,e)}get totalsRowFunction(){return this.column.totalsRowFunction}set totalsRowFunction(e){this._set(`totalsRowFunction`,e)}get totalsRowResult(){return this.column.totalsRowResult}set totalsRowResult(e){this._set(`totalsRowResult`,e)}get totalsRowFormula(){return this.column.totalsRowFormula}set totalsRowFormula(e){this._set(`totalsRowFormula`,e)}},me=class{constructor(e,t){if(this.worksheet=e,t){if(this.table=t,Array.isArray(t.rows)&&t.rows.length===0&&t.tableRef){let r=n.decode(t.tableRef);if(`dimensions`in r){let n=r.top+(t.headerRow===!1?0:1),i=r.bottom-(t.totalsRow===!0?1:0);if(i>=n)for(let a=n;a<=i;a++){let n=e.getRow(a),i=[];for(let e=r.left;e<=r.right;e++)i.push(n.getCell(e).value);t.rows.push(i)}}}this.validate(),this.store()}}getFormula(e){switch(e.totalsRowFunction){case`none`:return null;case`average`:return`SUBTOTAL(101,${this.table.name}[${e.name}])`;case`countNums`:return`SUBTOTAL(102,${this.table.name}[${e.name}])`;case`count`:return`SUBTOTAL(103,${this.table.name}[${e.name}])`;case`max`:return`SUBTOTAL(104,${this.table.name}[${e.name}])`;case`min`:return`SUBTOTAL(105,${this.table.name}[${e.name}])`;case`stdDev`:return`SUBTOTAL(106,${this.table.name}[${e.name}])`;case`var`:return`SUBTOTAL(107,${this.table.name}[${e.name}])`;case`sum`:return`SUBTOTAL(109,${this.table.name}[${e.name}])`;case`custom`:return e.totalsRowFormula||null;default:throw Error(`Invalid Totals Row Function: ${e.totalsRowFunction}`)}}get width(){return this.table.columns.length}get height(){return this.table.rows.length}get filterHeight(){return this.height+(this.table.headerRow?1:0)}get tableHeight(){return this.filterHeight+(this.table.totalsRow?1:0)}validate(){let{table:e}=this,t=(e,t,n)=>{e[t]===void 0&&(e[t]=n)};t(e,`headerRow`,!0),t(e,`totalsRow`,!1),t(e,`style`,{}),t(e.style,`theme`,`TableStyleMedium2`),t(e.style,`showFirstColumn`,!1),t(e.style,`showLastColumn`,!1),t(e.style,`showRowStripes`,!1),t(e.style,`showColumnStripes`,!1);let r=(e,t)=>{if(!e)throw Error(t)};r(!!e.ref,`Table must have ref`),r(!!e.columns,`Table must have column definitions`),r(!!e.rows,`Table must have row definitions`),e.tl=n.decodeAddress(e.ref);let{row:i,col:a}=e.tl;r(i>0,`Table must be on valid row`),r(a>0,`Table must be on valid col`);let{width:o,tableHeight:s}=this;e.autoFilterRef=n.encode(i,a,i,a+o-1),e.tableRef=n.encode(i,a,i+s-1,a+o-1),e.columns.forEach((e,n)=>{r(!!e.name,`Column ${n} must have a name`),n===0?t(e,`totalsRowLabel`,`Total`):(t(e,`totalsRowFunction`,`none`),e.totalsRowFormula=this.getFormula(e)||void 0)})}store(){let e=(e,t)=>{t&&Object.assign(e.style,t)},{worksheet:t,table:n}=this,{row:r,col:i}=n.tl,a=0;if(n.headerRow){let o=t.getRow(r+ a++);n.columns.forEach((t,n)=>{let{style:r,name:a}=t,s=o.getCell(i+n);s.value=a,e(s,r)})}if(n.rows.forEach(o=>{let s=t.getRow(r+ a++);o.forEach((t,r)=>{let a=s.getCell(i+r),o=t?.formula;if(typeof o==`string`){let e=n.qualifyImplicitStructuredReferences===!0;a.value={...t,formula:e?o.replace(/(^|[^A-Za-z0-9_])\[@\[?([^\[\]]+?)\]?\]/g,`$1${n.name}[[#This Row],[$2]]`):o}}else a.value=t;e(a,n.columns[r].style)})}),n.totalsRow){let o=t.getRow(r+ a++);n.columns.forEach((t,n)=>{let r=o.getCell(i+n);n===0?r.value=t.totalsRowLabel:this.getFormula(t)?r.value={formula:t.totalsRowFormula,result:t.totalsRowResult}:r.value=null,e(r,t.style)})}}load(e){let{table:t}=this,{row:n,col:r}=t.tl,i=0;if(t.headerRow){let a=e.getRow(n+ i++);t.columns.forEach((e,t)=>{let n=a.getCell(r+t);n.value=e.name})}if(t.rows.forEach(t=>{let a=e.getRow(n+ i++);t.forEach((e,t)=>{let n=a.getCell(r+t);n.value=e})}),t.totalsRow){let a=e.getRow(n+ i++);t.columns.forEach((e,t)=>{let n=a.getCell(r+t);t===0?n.value=e.totalsRowLabel:this.getFormula(e)&&(n.value={formula:e.totalsRowFormula,result:e.totalsRowResult})})}}get model(){return this.table}set model(e){this.table=e}cacheState(){this._cache||={ref:this.ref,width:this.width,tableHeight:this.tableHeight}}commit(){if(!this._cache)return;this.validate();let e=n.decodeAddress(this._cache.ref);if(this.ref!==this._cache.ref)for(let t=0;t<this._cache.tableHeight;t++){let n=this.worksheet.getRow(e.row+t);for(let t=0;t<this._cache.width;t++){let r=n.getCell(e.col+t);r.value=null}}else{for(let t=this.tableHeight;t<this._cache.tableHeight;t++){let n=this.worksheet.getRow(e.row+t);for(let t=0;t<this._cache.width;t++){let r=n.getCell(e.col+t);r.value=null}}for(let t=0;t<this.tableHeight;t++){let n=this.worksheet.getRow(e.row+t);for(let t=this.width;t<this._cache.width;t++){let r=n.getCell(e.col+t);r.value=null}}}this.store(),this._cache=void 0}addRow(e,t,n){this.cacheState(),t===void 0?this.table.rows.push(e):this.table.rows.splice(t,0,e),n?.commit!==!1&&this.commit()}removeRows(e,t=1,n){this.cacheState(),this.table.rows.splice(e,t),n?.commit!==!1&&this.commit()}getColumn(e){let t=this.table.columns[e];return new pe(this,t,e)}addColumn(e,t,n){this.cacheState(),n===void 0?(this.table.columns.push(e),this.table.rows.forEach((e,n)=>{e.push(t[n])})):(this.table.columns.splice(n,0,e),this.table.rows.forEach((e,r)=>{e.splice(n,0,t[r])}))}removeColumns(e,t=1){this.cacheState(),this.table.columns.splice(e,t),this.table.rows.forEach(n=>{n.splice(e,t)})}_assign(e,t,n){this.cacheState(),e[t]=n}get ref(){return this.table.ref}set ref(e){this._assign(this.table,`ref`,e)}get name(){return this.table.name}set name(e){this.table.name=e}get displayName(){return this.table.displayName||this.table.name}set displayName(e){this.table.displayName=e}get headerRow(){return this.table.headerRow}set headerRow(e){this._assign(this.table,`headerRow`,e)}get totalsRow(){return this.table.totalsRow}set totalsRow(e){this._assign(this.table,`totalsRow`,e)}get theme(){return this.table.style.theme}set theme(e){this.table.style.theme=e}get showFirstColumn(){return this.table.style.showFirstColumn}set showFirstColumn(e){this.table.style.showFirstColumn=e}get showLastColumn(){return this.table.style.showLastColumn}set showLastColumn(e){this.table.style.showLastColumn=e}get showRowStripes(){return this.table.style.showRowStripes}set showRowStripes(e){this.table.style.showRowStripes=e}get showColumnStripes(){return this.table.style.showColumnStripes}set showColumnStripes(e){this.table.style.showColumnStripes=e}},he=class{constructor(e){this.model=e||{}}add(e,t){return this.model[e]=t}find(e){let t=this.model[e];if(t!==void 0)return t;let r;for(let t in this.model){if(!t.startsWith(`range:`))continue;r||=n.decodeAddress(e);let i=t.slice(6),a=n.decodeEx(i);if(!a.dimensions)continue;let o=a.tl,s=a.br;if(r.row>=o.row&&r.row<=s.row&&r.col>=o.col&&r.col<=s.col)return this.model[t]}}remove(e){this.model[e]=void 0}};let ge=9525,_e=12700,ve=142875,ye=28575,be=276225,xe=190500;var Se=class e{constructor(e,t,n){this.worksheet=e;let{tl:r,br:i}=this._parseRange(t),a=1025+(e.formControls?.length||0),o;n?.link&&(o=this._toAbsoluteRef(n.link)),this.model={shapeId:a,ctrlPropId:0,tl:r,br:i,link:o,checked:n?.checked?`Checked`:`Unchecked`,text:n?.text??``,noThreeD:n?.noThreeD??!0,print:n?.print??!1}}get checked(){return this.model.checked===`Checked`}set checked(e){this.model.checked=e?`Checked`:`Unchecked`}get link(){return this.model.link}set link(e){this.model.link=e?this._toAbsoluteRef(e):void 0}get text(){return this.model.text}set text(e){this.model.text=e}_toAbsoluteRef(e){if(e.includes(`$`))return e;let t=n.decodeAddress(e);return`$${n.n2l(t.col)}$${t.row}`}_parseRange(e){let t,r;if(typeof e==`string`)if(e.includes(`:`)){let i=n.decode(e);if(`top`in i)if(i.left===i.right&&i.top===i.bottom){let e=i.left-1,n=i.top-1;t={col:e,colOff:ve,row:n,rowOff:ye},r={col:e+2,colOff:be,row:n+1,rowOff:xe}}else t={col:i.left-1,colOff:ve,row:i.top-1,rowOff:ye},r={col:i.right-1,colOff:be,row:i.bottom-1,rowOff:xe};else t={col:i.col-1,colOff:ve,row:i.row-1,rowOff:ye},r={col:i.col+1,colOff:be,row:i.row,rowOff:xe}}else{let i=n.decodeAddress(e);t={col:i.col-1,colOff:ve,row:i.row-1,rowOff:ye},r={col:i.col+1,colOff:be,row:i.row,rowOff:xe}}else if(`startCol`in e)t={col:e.startCol,colOff:e.startColOff??ve,row:e.startRow,rowOff:e.startRowOff??ye},r={col:e.endCol,colOff:e.endColOff??be,row:e.endRow,rowOff:e.endRowOff??xe};else{if(typeof e.tl==`string`){let r=n.decodeAddress(e.tl);t={col:r.col-1,colOff:ve,row:r.row-1,rowOff:ye}}else t={col:e.tl.col,colOff:e.tl.colOff??ve,row:e.tl.row,rowOff:e.tl.rowOff??ye};if(e.br)if(typeof e.br==`string`){let t=n.decodeAddress(e.br);r={col:t.col-1,colOff:be,row:t.row-1,rowOff:xe}}else r={col:e.br.col,colOff:e.br.colOff??be,row:e.br.row,rowOff:e.br.rowOff??xe};else r={col:t.col+2,colOff:be,row:t.row+1,rowOff:xe}}return{tl:t,br:r}}getVmlAnchor(){return e.getVmlAnchor(this.model)}getVmlStyle(){return e.getVmlStyle(this.model)}getVmlCheckedValue(){return e.getVmlCheckedValue(this.model)}static getVmlAnchor(e){let{tl:t,br:n}=e,r=Math.round(t.colOff/ge),i=Math.round(t.rowOff/ge),a=Math.round(n.colOff/ge),o=Math.round(n.rowOff/ge);return`${t.col}, ${r}, ${t.row}, ${i}, ${n.col}, ${a}, ${n.row}, ${o}`}static getVmlStyle(e){return`position:absolute;margin-left:${Math.round(e.tl.colOff/_e)}pt;margin-top:${Math.round(e.tl.rowOff/_e)}pt;width:96pt;height:18pt;z-index:1;visibility:visible`}static getVmlCheckedValue(e){switch(e.checked){case`Checked`:return 1;case`Mixed`:return 2;default:return 0}}};function Ce(){return typeof process<`u`&&!!process.versions?.node}function we(e){if(Ce())return Buffer.from(e,`base64`);let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}function Te(e,t){return 25569+e.getTime()/(24*3600*1e3)-(t?1462:0)}function Ee(e,t){let n=Math.round((e-25569+(t?1462:0))*24*3600*1e3);return new Date(n)}let De={lt:`<`,gt:`>`,amp:`&`,quot:`"`,apos:`'`};function Oe(e){return e.indexOf(`&`)===-1?e:e.replace(/&(#\d+|#x[0-9A-Fa-f]+|\w+);/g,(e,t)=>{if(t[0]===`#`){let n=t[1]===`x`?parseInt(t.slice(2),16):parseInt(t.slice(1));return Number.isNaN(n)?e:String.fromCodePoint(n)}return De[t]||e})}let ke=/[<>&'"\x7F\x00-\x08\x0B-\x0C\x0E-\x1F]/;function Ae(e){let t=ke.exec(e);if(!t)return e;let n=[],r=0;for(let i=t.index;i<e.length;i++){let t=e.charCodeAt(i),a=null;switch(t){case 34:a=`"`;break;case 38:a=`&`;break;case 39:a=`'`;break;case 60:a=`<`;break;case 62:a=`>`;break;case 127:a=``;break;default:if(t<=31&&(t<=8||t>=11&&t!==13)){a=``;break}continue}r!==i&&n.push(e.substring(r,i)),r=i+1,a&&n.push(a)}return r<e.length&&n.push(e.substring(r)),n.join(``)}function je(e){let t=typeof e==`number`?e:parseInt(e,10);return Number.isNaN(t)?0:t}function Me(e){if(!e||e.indexOf(`@`)>-1)return!1;let t=e.replace(/\[[^\]]*\]/g,``);return t=t.replace(/"[^"]*"/g,``),t.match(/[ymdhMsb]+/)!==null}function k(e){return e===!0||e===`true`||e===1||e===`1`}function*Ne(e,t,n=1){let r=n>0?(e,t)=>e<t:(e,t)=>e>t;for(let i=e;r(i,t);i+=n)yield i}function Pe(e){let t=Array.from(e);return t.every(e=>Number.isFinite(e))?t.sort((e,t)=>e-t):t.sort()}let Fe=new TextDecoder(`utf-8`),Ie;try{Ie=new TextDecoder(`latin1`)}catch{Ie=void 0}function Le(e){return typeof e==`string`?e:Fe.decode(e)}function Re(e){if(Ce())return Buffer.from(e).toString(`base64`);if(Ie)try{return btoa(Ie.decode(e))}catch{}let t=32768,n=[];for(let r=0;r<e.length;r+=t)n.push(String.fromCharCode.apply(null,e.subarray(r,r+t)));return btoa(n.join(``))}function ze(e){let t=new Uint8Array(e.length*2);for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);t[n*2]=r&255,t[n*2+1]=r>>8&255}return t}let Be=e=>Array.isArray(e);var A=class e{constructor(){this.__excelts_stream=!0,this._listeners=new Map,this._maxListeners=e.defaultMaxListeners}static{this.defaultMaxListeners=10}addListener(e,t){return this.on(e,t)}_listenerCount(e){return e?Be(e)?e.length:1:0}_hasListeners(e){return this._listenerCount(this._listeners.get(e))>0}on(e,t){let n=this._listeners.get(e);if(this._maxListeners>0){let t=this._listenerCount(n);t>=this._maxListeners&&console?.warn?.(`MaxListenersExceededWarning: Possible EventEmitter memory leak detected. ${t+1} ${String(e)} listeners added. Use emitter.setMaxListeners() to increase limit`)}return n?Be(n)?n.push(t):this._listeners.set(e,[n,t]):this._listeners.set(e,t),e!==`newListener`&&this._hasListeners(`newListener`)&&this.emit(`newListener`,e,t),this}prependListener(e,t){let n=this._listeners.get(e);return n?Be(n)?n.unshift(t):this._listeners.set(e,[t,n]):this._listeners.set(e,t),e!==`newListener`&&this._hasListeners(`newListener`)&&this.emit(`newListener`,e,t),this}once(e,t){let n=(...r)=>{this.off(e,n),t.apply(this,r)};return n.listener=t,this.on(e,n)}prependOnceListener(e,t){let n=(...r)=>{this.off(e,n),t.apply(this,r)};return n.listener=t,this.prependListener(e,n)}removeListener(e,t){return this.off(e,t)}off(e,t){let n=this._listeners.get(e);if(!n)return this;if(!Be(n))return(n===t||n.listener===t)&&(this._listeners.delete(e),e!==`removeListener`&&this._hasListeners(`removeListener`)&&this.emit(`removeListener`,e,t)),this;let r=n;if(r.length===0)return this._listeners.delete(e),this;let i=r.indexOf(t);if(i!==-1)r.splice(i,1);else for(let e=0,n=r.length;e<n;e++)if(r[e].listener===t){r.splice(e,1);break}return r.length===0?this._listeners.delete(e):r.length===1&&this._listeners.set(e,r[0]),e!==`removeListener`&&this._hasListeners(`removeListener`)&&this.emit(`removeListener`,e,t),this}emit(e,...t){let n=this._listeners.get(e);if(!n)return!1;if(!Be(n)){try{n.apply(this,t)}catch(t){e!==`error`&&this.emit(`error`,t)}return!0}let r=n,i=r.length;if(i===0)return!1;if(i===1){try{r[0].apply(this,t)}catch(t){e!==`error`&&this.emit(`error`,t)}return!0}if(i===2){let n=r[0],i=r[1];try{n.apply(this,t)}catch(t){e!==`error`&&this.emit(`error`,t)}try{i.apply(this,t)}catch(t){e!==`error`&&this.emit(`error`,t)}return!0}let a=r.slice();for(let n=0;n<a.length;n++)try{a[n].apply(this,t)}catch(t){e!==`error`&&this.emit(`error`,t)}return!0}removeAllListeners(e){return e===void 0?this._listeners.clear():this._listeners.delete(e),this}listenerCount(e){return this._listenerCount(this._listeners.get(e))}listeners(e){let t=this._listeners.get(e);return t?Be(t)?t.slice():[t]:[]}rawListeners(e){let t=this._listeners.get(e);return t?Be(t)?t.slice():[t]:[]}eventNames(){return[...this._listeners.keys()]}setMaxListeners(e){return this._maxListeners=e,this}getMaxListeners(){return this._maxListeners}};let Ve=new TextEncoder,He=new TextDecoder(`utf-8`,{ignoreBOM:!0}),Ue=new Map;function We(e){if(!e||e===`utf-8`||e===`utf8`)return He;let t=e,n=Ue.get(t);return n||(n=new TextDecoder(t),Ue.set(t,n)),n}function Ge(e){return Ve.encode(e)}function Ke(e,t){let n=e.length;if(n===0)return new Uint8Array;if(n===1)return e[0];if(t===void 0){let r=0;for(let t=0;t<n;t++)r+=e[t].length;t=r}let r=new Uint8Array(t),i=0;for(let t=0;t<n;t++){let n=e[t];r.set(n,i),i+=n.length}return r}function qe(e){return!!e&&typeof e==`object`&&typeof e.getReader==`function`}function Je(e){return!!e&&typeof e==`object`&&typeof e.getWriter==`function`}function Ye(e){return!!e&&(typeof e==`object`||typeof e==`function`)&&typeof e[Symbol.asyncIterator]==`function`}function Xe(e){return!!e&&typeof e==`object`&&!!e.readable&&!!e.writable&&qe(e.readable)&&Je(e.writable)}let Ze=(e,t,n)=>{typeof e.off==`function`?e.off(t,n):typeof e.removeListener==`function`&&e.removeListener(t,n)},Qe=(e,t,n,r)=>(r?.once&&typeof e.once==`function`?e.once(t,n):e.on(t,n),()=>Ze(e,t,n)),$e=()=>{let e=[];return{add:(t,n,r)=>{e.push(Qe(t,n,r))},once:(t,n,r)=>{e.push(Qe(t,n,r,{once:!0}))},cleanup:()=>{for(let t=e.length-1;t>=0;t--)e[t]();e.length=0}}};var j=class e extends A{constructor(e){if(super(),this._reader=null,this._buffer=[],this._bufferIndex=0,this._unshiftBuffer=[],this._bufferSize=0,this._reading=!1,this._ended=!1,this._endEmitted=!1,this._destroyed=!1,this._errored=null,this._closed=!1,this._paused=!0,this._flowing=!1,this._pipeTo=[],this._pipeListeners=new Map,this._encoding=null,this._decoder=null,this._didRead=!1,this._aborted=!1,this._pushMode=!1,this._webStreamMode=!1,this.objectMode=e?.objectMode??!1,this.readableHighWaterMark=e?.highWaterMark??16384,this.autoDestroy=e?.autoDestroy??!0,this.emitClose=e?.emitClose??!0,e?.read&&(this._read=e.read.bind(this),this._pushMode=!0),e?.stream)this._stream=e.stream,this._webStreamMode=!0;else{let e;this._stream=new ReadableStream({start:t=>{e=t},pull:async()=>{this.emit(`drain`)},cancel:e=>{this._ended=!0,this._aborted=!0,this.emitClose&&this.emit(`close`)}}),this._controller=e}}static from(t,n){let r=new e({...n,objectMode:n?.objectMode??!0});return tt(r,et(t)),r}static isDisturbed(e){return e._didRead||e._ended||e._destroyed}static fromWeb(t,n){return new e({...n,stream:t})}static toWeb(e){return e.webStream}push(e){if(this._destroyed)return!1;this._pushMode=!0;let t=this._controller;if(e===null){if(this._ended)return!1;if(this._ended=!0,t)try{t.close()}catch{}return this._bufferedLength()===0&&this._emitEndOnce(),!1}if(t&&!this._webStreamMode)try{t.enqueue(e)}catch{}if(this._flowing)return this.emit(`data`,this._applyEncoding(e)),this._flowing?(this._read&&!this._ended&&queueMicrotask(()=>{this._flowing&&!this._ended&&!this._destroyed&&this._read(this.readableHighWaterMark)}),!0):!1;{let t=this._bufferedLength()===0;return this._buffer.push(e),this.objectMode||(this._bufferSize+=this._getChunkSize(e)),t&&queueMicrotask(()=>this.emit(`readable`)),this.objectMode?this._bufferedLength()<this.readableHighWaterMark:this._bufferSize<this.readableHighWaterMark}}_emitEndOnce(){this._endEmitted||(this._endEmitted=!0,this.emit(`end`))}unshift(e){this._destroyed||(this._bufferUnshift(e),this.objectMode||(this._bufferSize+=this._getChunkSize(e)))}read(e){if(this._didRead=!0,this._bufferedLength()>0){if(this.objectMode||e===void 0){let e=this._bufferShift();this.objectMode||(this._bufferSize-=this._getChunkSize(e));let t=this._applyEncoding(e);return this._ended&&this._bufferedLength()===0&&queueMicrotask(()=>this._emitEndOnce()),t}let t=this._bufferShift();this.objectMode||(this._bufferSize-=this._getChunkSize(t));let n=this._applyEncoding(t);return this._ended&&this._bufferedLength()===0&&queueMicrotask(()=>this._emitEndOnce()),n}return null}_bufferedLength(){return this._unshiftBuffer.length+(this._buffer.length-this._bufferIndex)}_bufferPeek(){let e=this._unshiftBuffer.length;return e>0?this._unshiftBuffer[e-1]:this._bufferIndex<this._buffer.length?this._buffer[this._bufferIndex]:null}_bufferShift(){if(this._unshiftBuffer.length>0)return this._unshiftBuffer.pop();let e=this._buffer[this._bufferIndex++];return this._bufferIndex===this._buffer.length?(this._buffer.length=0,this._bufferIndex=0,e):(this._bufferIndex>1024&&this._bufferIndex*2>this._buffer.length&&(this._buffer=this._buffer.slice(this._bufferIndex),this._bufferIndex=0),e)}_bufferUnshift(e){if(this._bufferIndex===0){this._unshiftBuffer.push(e);return}this._bufferIndex--,this._buffer[this._bufferIndex]=e}_getChunkSize(e){return e instanceof Uint8Array?e.byteLength:1}setEncoding(e){return this._encoding=e,e===`utf-8`||e===`utf8`?this._decoder=He:this._decoder=null,this}_applyEncoding(e){return this._encoding&&e instanceof Uint8Array?(this._decoder||=We(this._encoding),this._decoder.decode(e)):e}wrap(e){return e.on(`data`,t=>{this.push(t)||e.pause()}),e.on(`end`,()=>this.push(null)),e.on(`error`,e=>this.destroy(e)),e.on(`close`,()=>this.destroy()),this}pause(){return this._paused=!0,this._flowing=!1,this}resume(){for(this._paused=!1,this._flowing=!0;this._bufferedLength()>0&&this._flowing;){let e=this._bufferShift();this.objectMode||(this._bufferSize-=this._getChunkSize(e)),this.emit(`data`,this._applyEncoding(e))}return this._ended&&this._bufferedLength()===0?this._emitEndOnce():this._read?queueMicrotask(()=>{this._flowing&&!this._ended&&!this._destroyed&&this._read(this.readableHighWaterMark)}):this._webStreamMode&&!this._pushMode&&this._startReading(),this}on(e,t){return super.on(e,t),e===`data`&&this.resume(),this}isPaused(){return this._paused}pipe(e){let t=e,n=t,r=typeof t?.write==`function`,i=typeof t?.end==`function`,a=typeof n?.on==`function`,o=typeof n?.once==`function`,s=typeof n?.off==`function`;if(!r||!i||!o&&!a||!s&&!n?.removeListener)throw Error(`Readable.pipe: invalid destination`);this._pipeTo.push(t);let c,l=()=>{c&&=(typeof n.off==`function`?n.off(`drain`,c):typeof n.removeListener==`function`&&n.removeListener(`drain`,c),void 0)},u=e=>{if(!t.write(e)&&(this.pause(),!c)){c=()=>{l(),this.resume()},n.on(`drain`,c);let e=this._pipeListeners.get(t);e&&(e.drain=c)}},d=()=>{t.end()},f=e=>{typeof t.destroy==`function`?t.destroy(e):n.emit?.(`error`,e)};return this._pipeListeners.set(t,{data:u,end:d,error:f,eventTarget:n}),this.on(`data`,u),this.once(`end`,d),this.once(`error`,f),this.resume(),e}unpipe(e){if(e){let t=this._pipeTo.indexOf(e);t!==-1&&this._pipeTo.splice(t,1);let n=this._pipeListeners.get(e);n&&(this.off(`data`,n.data),this.off(`end`,n.end),this.off(`error`,n.error),n.drain&&(typeof n.eventTarget?.off==`function`?n.eventTarget.off(`drain`,n.drain):typeof n.eventTarget?.removeListener==`function`&&n.eventTarget.removeListener(`drain`,n.drain)),this._pipeListeners.delete(e))}else{for(let e of this._pipeTo){let t=this._pipeListeners.get(e);t&&(this.off(`data`,t.data),this.off(`end`,t.end),this.off(`error`,t.error),t.drain&&(typeof t.eventTarget?.off==`function`?t.eventTarget.off(`drain`,t.drain):typeof t.eventTarget?.removeListener==`function`&&t.eventTarget.removeListener(`drain`,t.drain)),this._pipeListeners.delete(e))}this._pipeTo=[]}return this.pause(),this}destroy(e){if(this._destroyed)return this;if(this._destroyed=!0,this._ended=!0,this.unpipe(),e&&(this._errored=e,this.emit(`error`,e)),this._reader){let e=this._reader;this._reader=null,e.cancel().catch(()=>{}).finally(()=>{try{e.releaseLock()}catch{}})}return this._closed=!0,this.emit(`close`),this}get webStream(){return this._stream}get readable(){return!this._destroyed&&!this._ended}get readableEnded(){return this._ended}get readableLength(){return this._bufferedLength()}get destroyed(){return this._destroyed}get errored(){return this._errored}get closed(){return this._closed}get readableFlowing(){return!this._paused&&!this._ended?this._flowing:this._flowing?!0:null}get readableAborted(){return this._aborted}get readableDidRead(){return this._didRead}get readableEncoding(){return this._encoding}get readableObjectMode(){return this.objectMode}get readableBuffer(){return{length:this._bufferedLength(),head:this._bufferPeek()}}async _startReading(){if(!(this._reading||this._destroyed||!this._flowing)){this._reading=!0;try{for(this._reader||=this._stream.getReader();this._flowing&&!this._destroyed&&!this._pushMode;){let{done:e,value:t}=await this._reader.read();if(this._pushMode){if(this._reader){let e=this._reader;this._reader=null;try{e.releaseLock()}catch{}}break}if(e){if(this._ended=!0,this._emitEndOnce(),this._reader){let e=this._reader;this._reader=null;try{e.releaseLock()}catch{}}break}t!==void 0&&(this._flowing?this.emit(`data`,this._applyEncoding(t)):(this._buffer.push(t),this.objectMode||(this._bufferSize+=this._getChunkSize(t))))}}catch(e){if(this.emit(`error`,e),this._reader){let e=this._reader;this._reader=null;try{e.releaseLock()}catch{}}}finally{this._reading=!1}}}async*[Symbol.asyncIterator](){for(;this._bufferedLength()>0;){let e=this._bufferShift();this.objectMode||(this._bufferSize-=this._getChunkSize(e)),yield this._applyEncoding(e)}if(this._ended)return;let e=this.readableHighWaterMark,t=Math.max(0,Math.floor(e/2)),n=e=>this.objectMode?1:e instanceof Uint8Array?e.byteLength:typeof e==`string`?e.length:1,r=[],i=0,a=0,o=null,s=null,c=!1,l=!1,u=null,d=t=>{o?(o(t),o=null,s=null):r.push(t),a+=n(t),!l&&a>=e&&(l=!0,this.pause())},f=()=>{c=!0,o&&(o(null),o=null,s=null)},p=()=>{c=!0,o&&(o(null),o=null,s=null)},m=e=>{c=!0,u=e,s&&=(s(e),o=null,null)};this.on(`data`,d),this.on(`end`,f),this.on(`error`,m),this.on(`close`,p);try{for(this.resume();;){if(u)throw u;if(i<r.length){let e=r[i++];a-=n(e),i>=1024&&i*2>=r.length&&(r.splice(0,i),i=0),l&&a<=t&&!c&&!this._destroyed&&(l=!1,this.resume()),yield e;continue}if(c)break;let e=await new Promise((e,t)=>{o=e,s=t});e!==null&&(a-=n(e),l&&a<=t&&!c&&!this._destroyed&&(l=!1,this.resume()),yield e)}if(u)throw u}finally{this.off(`data`,d),this.off(`end`,f),this.off(`error`,m),this.off(`close`,p)}}iterator(e){let t=e?.destroyOnReturn??!0,n=this[Symbol.asyncIterator]();return t?{next:async()=>n.next(),return:async e=>(this.destroy(),{done:!0,value:e}),[Symbol.asyncIterator](){return this}}:n}async*map(e,t){let n=t?.signal;for await(let t of this){if(n?.aborted)throw Error(`AbortError`);yield await e(t,{signal:n})}}async*filter(e,t){let n=t?.signal;for await(let t of this){if(n?.aborted)throw Error(`AbortError`);await e(t,{signal:n})&&(yield t)}}async*flatMap(e,t){let n=t?.signal;for await(let t of this){if(n?.aborted)throw Error(`AbortError`);let r=await e(t,{signal:n});for await(let e of r)yield e}}async*take(e,t){let n=t?.signal,r=0;for await(let t of this){if(n?.aborted)throw Error(`AbortError`);if(r>=e)break;yield t,r++}}async*drop(e,t){let n=t?.signal,r=0;for await(let t of this){if(n?.aborted)throw Error(`AbortError`);r>=e&&(yield t),r++}}async reduce(e,t,n){let r=n?.signal,i=t,a=!0;for await(let t of this){if(r?.aborted)throw Error(`AbortError`);a&&i===void 0?(i=t,a=!1):i=await e(i,t,{signal:r})}if(i===void 0)throw TypeError(`Reduce of empty stream with no initial value`);return i}async every(e,t){let n=t?.signal;for await(let t of this){if(n?.aborted)throw Error(`AbortError`);if(!await e(t,{signal:n}))return!1}return!0}async some(e,t){let n=t?.signal;for await(let t of this){if(n?.aborted)throw Error(`AbortError`);if(await e(t,{signal:n}))return!0}return!1}async find(e,t){let n=t?.signal;for await(let t of this){if(n?.aborted)throw Error(`AbortError`);if(await e(t,{signal:n}))return t}}async forEach(e,t){let n=t?.signal;for await(let t of this){if(n?.aborted)throw Error(`AbortError`);await e(t,{signal:n})}}async toArray(e){let t=e?.signal,n=[];for await(let e of this){if(t?.aborted)throw Error(`AbortError`);n.push(e)}return n}async*asIndexedPairs(e){let t=e?.signal,n=0;for await(let e of this){if(t?.aborted)throw Error(`AbortError`);yield[n++,e]}}compose(t){if(typeof t==`function`){let n=t(this);return e.from(n)}return this.pipe(t),t}};function et(e){return e&&typeof e[Symbol.asyncIterator]==`function`?e:(async function*(){for(let t of e)yield t})()}function tt(e,t){(async()=>{try{for await(let n of t)e.push(n)||await new Promise(e=>setTimeout(e,0));e.push(null)}catch(t){e.destroy(t)}})()}var M=class e extends A{constructor(e){if(super(),this._writer=null,this._ended=!1,this._finished=!1,this._destroyed=!1,this._errored=null,this._closed=!1,this._pendingWrites=0,this._writableLength=0,this._needDrain=!1,this._corked=0,this._corkedChunks=[],this._defaultEncoding=`utf8`,this._aborted=!1,this._ownsStream=!1,this.objectMode=e?.objectMode??!1,this.writableHighWaterMark=e?.highWaterMark??16384,this.autoDestroy=e?.autoDestroy??!0,this.emitClose=e?.emitClose??!0,this._defaultEncoding=e?.defaultEncoding??`utf8`,e?.write&&(this._writeFunc=e.write.bind(this)),e?.final&&(this._finalFunc=e.final.bind(this)),e?.stream)this._stream=e.stream,this._ownsStream=!1;else{this._ownsStream=!0;let e=()=>this._writeFunc,t=()=>this._finalFunc,n=()=>this._defaultEncoding,r=e=>{this._finished=e},i=e=>{this._aborted=e},a=this.emit.bind(this),o=()=>this.emitClose,s=e=>this._write?.(e);this._stream=new WritableStream({write:async t=>{let r=e();r?await new Promise((e,i)=>{r(t,n(),t=>{t?i(t):e()})}):s(t)},close:async()=>{let e=t();e&&await new Promise((t,n)=>{e(e=>{e?n(e):t()})}),r(!0),a(`finish`),o()&&a(`close`)},abort:e=>{i(!0),a(`error`,e)}})}}setDefaultEncoding(e){return this._defaultEncoding=e,this}cork(){this._corked++}uncork(){if(this._corked>0&&this._corked--,this._corked===0){let e=this._corkedChunks;this._corkedChunks=[];for(let{chunk:t,callback:n}of e)this._doWrite(t,n)}}write(e,t,n){if(this._destroyed||this._ended)return(typeof t==`function`?t:n)?.(Error(`Cannot write after stream destroyed/ended`)),!1;let r=typeof t==`function`?t:n;if(this._corked>0){this._corkedChunks.push({chunk:e,callback:r});let t=this._getChunkSize(e);return this._writableLength+=t,this._writableLength<this.writableHighWaterMark}let i=this._doWrite(e,r);return i||(this._needDrain=!0),i}_doWrite(e,t){let n=this._getChunkSize(e);return this._pendingWrites++,this._writableLength+=n,this._getWriter().write(e).then(()=>{this._pendingWrites--,this._writableLength-=n,this._needDrain&&this._writableLength<this.writableHighWaterMark&&(this._needDrain=!1,this.emit(`drain`)),t?.(null)}).catch(e=>{this._pendingWrites--,this._writableLength-=n,this._destroyed||(this._errored=e,this.emit(`error`,e)),t?.(e)}),this._writableLength<this.writableHighWaterMark}_getChunkSize(e){return this.objectMode?1:e instanceof Uint8Array?e.byteLength:typeof e==`string`?e.length:0}end(e,t,n){if(this._ended)return this;this._ended=!0;let r=typeof e==`function`?void 0:e,i=typeof e==`function`?e:typeof t==`function`?t:n;return(async()=>{try{let e=this._getWriter();if(r!==void 0&&await e.write(r),await e.close(),this._writer===e){this._writer=null;try{e.releaseLock()}catch{}}this._ownsStream||(this._finished=!0,this.emit(`finish`),this.emitClose&&this.emit(`close`)),i&&i()}catch(e){this.emit(`error`,e)}})(),this}destroy(e){if(this._destroyed)return this;if(this._destroyed=!0,this._ended=!0,e&&!this._errored&&(this._errored=e,this.emit(`error`,e)),this._writer){let t=this._writer;this._writer=null,t.abort(e).catch(()=>{}).finally(()=>{try{t.releaseLock()}catch{}})}return this._closed=!0,this.emit(`close`),this}get webStream(){return this._stream}get writable(){return!this._destroyed&&!this._ended}get writableEnded(){return this._ended}get writableFinished(){return this._finished}get writableLength(){return this._writableLength}get destroyed(){return this._destroyed}get errored(){return this._errored}get closed(){return this._closed}get writableNeedDrain(){return this._writableLength>=this.writableHighWaterMark}get writableCorked(){return this._corked}get writableAborted(){return this._aborted}get writableObjectMode(){return this.objectMode}get defaultEncoding(){return this._defaultEncoding}get writableBuffer(){return{length:this._corkedChunks.length,head:this._corkedChunks.length>0?this._corkedChunks[0].chunk:null}}_writev(e,t){let n=0,r=()=>{if(n>=e.length){t(null);return}let{chunk:i}=e[n++];this._doWrite(i,e=>{if(e){t(e);return}r()})};r()}writev(e,t){return this._destroyed||this._ended?(t?.(Error(`Cannot write after stream destroyed/ended`)),!1):(this._writev(e,t??(()=>{})),this._writableLength<this.writableHighWaterMark)}_getWriter(){return this._writer||=this._stream.getWriter(),this._writer}static fromWeb(t,n){return new e({...n,stream:t})}static toWeb(e){return e.webStream}};function nt(e){return e instanceof M?e:e?.getWriter?new M({stream:e}):e}var rt=class e extends A{push(e){return this._readable.push(e)}constructor(e){super(),this._destroyed=!1,this._ended=!1,this._errored=!1,this._dataForwardingSetup=!1,this._endTimer=null,this._webStream=null,this._sideForwardingCleanup=null,this.objectMode=e?.objectMode??!1,this._transformImpl=e?.transform,this._flushImpl=e?.flush,this._readable=new j({objectMode:this.objectMode}),this._writable=new M({objectMode:this.objectMode,write:(e,t,n)=>{this._runTransform(e).then(()=>n(null)).catch(e=>n(e))},final:e=>{this._runFlush().then(()=>{this._readable.push(null),e(null)}).catch(t=>e(t))}}),this._setupSideForwarding()}_setupSideForwarding(){this._sideForwardingCleanup&&=(this._sideForwardingCleanup(),null);let e=$e();e.once(this._readable,`end`,()=>this.emit(`end`)),e.add(this._readable,`error`,e=>this._emitErrorOnce(e)),e.once(this._writable,`finish`,()=>this.emit(`finish`)),e.add(this._writable,`drain`,()=>this.emit(`drain`)),e.add(this._writable,`error`,e=>this._emitErrorOnce(e)),this._sideForwardingCleanup=()=>e.cleanup()}_scheduleEnd(){this._destroyed||this._errored||this._writable.writableEnded||(this._endTimer&&clearTimeout(this._endTimer),this._endTimer=setTimeout(()=>{this._endTimer=null,!(this._destroyed||this._errored||this._writable.writableEnded)&&this._writable.end()},0))}_emitErrorOnce(e){if(this._errored)return;this._errored=!0;let t=e instanceof Error?e:Error(String(e));this.emit(`error`,t),this._destroyed||(this._destroyed=!0,this._readable.destroy(t),this._writable.destroy(t),queueMicrotask(()=>this.emit(`close`)))}_hasSubclassTransform(){return this._transformImpl?!1:Object.getPrototypeOf(this)._transform!==e.prototype._transform}_hasSubclassFlush(){return this._flushImpl?!1:Object.getPrototypeOf(this)._flush!==e.prototype._flush}async _runTransform(e){if(this._destroyed||this._errored)throw Error(this._errored?`Cannot write after stream errored`:`Cannot write after stream destroyed`);try{if(this._hasSubclassTransform()){await new Promise((t,n)=>{this._transform(e,`utf8`,(e,r)=>{if(e){n(e);return}r!==void 0&&this.push(r),t()})});return}let t=this._transformImpl;if(!t){this.push(e);return}let n=t.length;if(n>=3){await new Promise((n,r)=>{t.call(this,e,`utf8`,(e,t)=>{if(e){r(e);return}t!==void 0&&this.push(t),n()})});return}if(n===2){await new Promise((n,r)=>{t.call(this,e,(e,t)=>{if(e){r(e);return}t!==void 0&&this.push(t),n()})});return}let r=t.call(this,e);if(r&&typeof r.then==`function`){let e=await r;e!==void 0&&this.push(e);return}r!==void 0&&this.push(r)}catch(e){throw this._emitErrorOnce(e),e}}async _runFlush(){if(!(this._destroyed||this._errored))try{if(this._hasSubclassFlush()){await new Promise((e,t)=>{this._flush((n,r)=>{if(n){t(n);return}r!==void 0&&this.push(r),e()})});return}let e=this._flushImpl;if(!e)return;if(e.length>=1){await new Promise((t,n)=>{e.call(this,(e,r)=>{if(e){n(e);return}r!==void 0&&this.push(r),t()})});return}let t=e.call(this);if(t&&typeof t.then==`function`){let e=await t;e!=null&&this.push(e);return}t!=null&&this.push(t)}catch(e){throw this._emitErrorOnce(e),e}}on(e,t){return e===`data`&&!this._dataForwardingSetup&&(this._dataForwardingSetup=!0,this._readable.on(`data`,e=>this.emit(`data`,e))),super.on(e,t)}write(e,t,n){let r=typeof t==`function`?t:n;return this._ended&&!this._writable.writableEnded&&this._scheduleEnd(),this._writable.write(e,r)}end(e,t,n){if(this._ended)return this;this._ended=!0;let r=typeof e==`function`?void 0:e,i=typeof e==`function`?e:typeof t==`function`?t:n;return i&&this.once(`finish`,i),r!==void 0&&this._writable.write(r),this._scheduleEnd(),this}read(e){return this._readable.read(e)}pipe(e){return this._readable.pipe(e)}unpipe(e){return this._readable.unpipe(e),this}isPaused(){return this._readable.isPaused()}resume(){return this._readable.resume(),this}pause(){return this._readable.pause(),this}destroy(e){this._destroyed||(this._destroyed=!0,this._sideForwardingCleanup&&=(this._sideForwardingCleanup(),null),this._readable.destroy(e),this._writable.destroy(e),queueMicrotask(()=>this.emit(`close`)))}get webStream(){if(this._webStream)return this._webStream;let e=this[Symbol.asyncIterator]();return this._webStream={readable:new ReadableStream({pull:async t=>{let{done:n,value:r}=await e.next();if(n){t.close();return}t.enqueue(r)},cancel:e=>{this.destroy(e instanceof Error?e:Error(String(e)))}}),writable:new WritableStream({write:e=>new Promise((t,n)=>{this.write(e,e=>{e?n(e):t()})}),close:()=>new Promise(e=>{this.end(()=>e())}),abort:e=>{this.destroy(e instanceof Error?e:Error(String(e)))}})},this._webStream}get readable(){return this._readable.readable}get writable(){return this._writable.writable}get readableEnded(){return this._readable.readableEnded}get writableEnded(){return this._writable.writableEnded}get writableFinished(){return this._writable.writableFinished}get readableLength(){return this._readable.readableLength}get writableLength(){return this._writable.writableLength}get readableHighWaterMark(){return this._readable.readableHighWaterMark}get writableHighWaterMark(){return this._writable.writableHighWaterMark}get readableObjectMode(){return this._readable.readableObjectMode??this._readable.objectMode}get readableFlowing(){return this._readable.readableFlowing}get destroyed(){return this._destroyed}async*[Symbol.asyncIterator](){yield*this._readable[Symbol.asyncIterator]()}static fromWeb(t,n){let r=new e(n);r._webStream=t;let i=j.fromWeb(t.readable,{objectMode:n?.objectMode}),a=M.fromWeb(t.writable,{objectMode:n?.objectMode});return r._sideForwardingCleanup&&=(r._sideForwardingCleanup(),null),r._readable=i,r._writable=a,r._setupSideForwarding(),r}static toWeb(e){return e.webStream}_transform(e,t,n){n(null,e)}_flush(e){e()}},it=class e extends A{static from(t){if(t instanceof e)return t;let n=(e,t)=>{let n=new M({objectMode:t.readableObjectMode,write(e,n,r){t.push(e),r()},final(e){t.push(null),e()}}),r=Qe(e,`error`,e=>{t.emit(`error`,e)});Qe(e,`end`,r,{once:!0}),Qe(e,`close`,r,{once:!0}),Qe(n,`finish`,r,{once:!0}),e.pipe(n)};if(typeof t==`object`&&t&&`readable`in t&&`writable`in t){let r=t,i=new e({readableObjectMode:r.readable?.readableObjectMode,writableObjectMode:r.writable?.writableObjectMode,write:r.writable?(e,t,n)=>{r.writable.write(e,t,n)}:void 0,final:r.writable?e=>{r.writable.end(e)}:void 0});return r.readable&&n(r.readable,i),i}if(typeof t==`object`&&t&&(Symbol.asyncIterator in t||Symbol.iterator in t)){let r=j.from(t),i=new e;return n(r,i),i}if(t instanceof j){let r=new e;return n(t,r),r}if(t instanceof M)return new e({objectMode:!0,write(e,n,r){t.write(e,n,r)},final(e){t.end(e)}});throw Error(`Duplex.from: unsupported source type`)}static fromWeb(t,n){let r=new e(n),i=new j({stream:t.readable,objectMode:r.readableObjectMode}),a=new M({stream:t.writable,objectMode:r.writableObjectMode});return r._sideForwardingCleanup&&=(r._sideForwardingCleanup(),null),r._readable=i,r._writable=a,r._setupSideForwarding(),r}static toWeb(e){return{readable:e._readable.webStream,writable:e._writable.webStream}}constructor(e){super(),this._dataForwardingSetup=!1,this._sideForwardingCleanup=null,this.allowHalfOpen=e?.allowHalfOpen??!0;let t=e?.objectMode??!1;this.readableObjectMode=e?.readableObjectMode??t,this.writableObjectMode=e?.writableObjectMode??t,this._readable=new j({highWaterMark:e?.readableHighWaterMark,objectMode:this.readableObjectMode,read:e?.read?.bind(this)}),this._writable=new M({highWaterMark:e?.writableHighWaterMark,objectMode:this.writableObjectMode,write:e?.write?.bind(this),final:e?.final?.bind(this)}),this._setupSideForwarding()}_setupSideForwarding(){this._sideForwardingCleanup&&=(this._sideForwardingCleanup(),null);let e=$e();e.once(this._readable,`end`,()=>{this.emit(`end`),this.allowHalfOpen||this._writable.end()}),e.add(this._readable,`error`,e=>this.emit(`error`,e)),e.add(this._writable,`error`,e=>this.emit(`error`,e)),e.once(this._writable,`finish`,()=>this.emit(`finish`)),e.add(this._writable,`drain`,()=>this.emit(`drain`)),e.once(this._writable,`close`,()=>{!this.allowHalfOpen&&!this._readable.destroyed&&this._readable.destroy()}),this._sideForwardingCleanup=()=>e.cleanup()}on(e,t){return e===`data`&&!this._dataForwardingSetup&&(this._dataForwardingSetup=!0,this._readable.on(`data`,e=>this.emit(`data`,e))),super.on(e,t)}push(e){return this._readable.push(e)}unshift(e){this._readable.unshift(e)}read(e){return this._readable.read(e)}write(e,t,n){let r=typeof t==`function`?t:n;return this._writable.write(e,r)}end(e,t,n){let r=typeof e==`function`?void 0:e,i=typeof e==`function`?e:typeof t==`function`?t:n;return i&&this.once(`finish`,i),r!==void 0&&this._writable.write(r),this._writable.end(),this}cork(){this._writable.cork()}uncork(){this._writable.uncork()}setEncoding(e){return this._readable.setEncoding(e),this}setDefaultEncoding(e){return this._writable.setDefaultEncoding(e),this}pipe(e){return e instanceof rt?(this._readable.pipe(e._writable),e):(this._readable.pipe(e),e)}unpipe(e){return this._readable.unpipe(e),this}pause(){return this._readable.pause(),this}resume(){return this._readable.resume(),this}isPaused(){return this._readable.isPaused()}destroy(e){return this._sideForwardingCleanup&&=(this._sideForwardingCleanup(),null),this._readable.destroy(e),this._writable.destroy(e),this}get readable(){return this._readable.readable}get writable(){return this._writable.writable}get readableEnded(){return this._readable.readableEnded}get writableEnded(){return this._writable.writableEnded}get writableFinished(){return this._writable.writableFinished}get readableLength(){return this._readable.readableLength}get writableLength(){return this._writable.writableLength}get readableHighWaterMark(){return this._readable.readableHighWaterMark}get writableHighWaterMark(){return this._writable.writableHighWaterMark}get destroyed(){return this._readable.destroyed&&this._writable.destroyed}get writableCorked(){return this._writable.writableCorked}get writableNeedDrain(){return this._writable.writableNeedDrain}[Symbol.asyncIterator](){return this._readable[Symbol.asyncIterator]()}},at=class extends rt{constructor(e){super({...e,transform:e=>e})}};let ot=e=>!e||typeof e!=`object`||typeof e.pipe==`function`||typeof e.write==`function`||typeof e.end==`function`||typeof e.getReader==`function`||typeof e.getWriter==`function`?!1:Object.prototype.hasOwnProperty.call(e,`signal`)||Object.prototype.hasOwnProperty.call(e,`end`),st=e=>e instanceof j||e instanceof M||e instanceof rt||e instanceof it?e:Xe(e)?rt.fromWeb(e):qe(e)?j.fromWeb(e):Je(e)?M.fromWeb(e):e;function ct(...e){let t,n={},r,i=e[e.length-1];typeof i==`function`?(r=i,t=e.slice(0,-1)):ot(i)?(n=i,t=e.slice(0,-1)):t=e;let a=new Promise((e,r)=>{if(t.length<2){r(Error(`Pipeline requires at least 2 streams`));return}let i=t.map(st),a=i[0],o=i[i.length-1],s=i.slice(1,-1),c=!1,l=[a,...s,o],u=$e(),d,f=t=>{if(!c)if(c=!0,u.cleanup(),d&&n.signal&&n.signal.removeEventListener(`abort`,d),t){for(let e of l)typeof e.destroy==`function`&&e.destroy(t);r(t)}else e()};if(n.signal){if(n.signal.aborted){f(Error(`Pipeline aborted`));return}d=()=>f(Error(`Pipeline aborted`)),n.signal.addEventListener(`abort`,d)}let p=a;for(let e of s)p.pipe(e),p=e;if(n.end!==!1)p.pipe(o);else{let e=!1,t=!1,n=()=>{t=!1,e&&typeof p.resume==`function`&&(e=!1,p.resume())};u.add(p,`data`,r=>{!o.write(r)&&!t&&(t=!0,!e&&typeof p.pause==`function`&&(e=!0,p.pause()),u.once(o,`drain`,n))}),u.once(p,`end`,()=>f())}u.once(o,`finish`,()=>f());for(let e of l)u.once(e,`error`,e=>f(e))});return r&&a.then(()=>r(null)).catch(e=>r(e)),a}function lt(e,t,n){let r={},i;typeof t==`function`?i=t:t&&(r=t,i=n);let a=new Promise((t,n)=>{let i=st(e),a=!1,o=$e(),s,c=()=>{o.cleanup(),s&&r.signal&&r.signal.removeEventListener(`abort`,s)},l=e=>{a||(a=!0,c(),e&&!r.error?n(e):t())};if(r.signal){if(r.signal.aborted){l(Error(`Aborted`));return}s=()=>l(Error(`Aborted`)),r.signal.addEventListener(`abort`,s)}let u=r.readable!==!1,d=r.writable!==!1;if(u&&i.readableEnded){l();return}if(d&&i.writableFinished){l();return}d&&o.once(i,`finish`,()=>l()),u&&o.once(i,`end`,()=>l()),o.once(i,`error`,e=>l(e)),o.once(i,`close`,()=>l())});return i&&a.then(()=>i(null)).catch(e=>i(e)),a}function ut(e){let t=new Uint8Array(4);return t[0]=e&255,t[1]=e>>8&255,t[2]=e>>16&255,t[3]=e>>24&255,t}let dt={async hash(e,...t){let n=Ke(t),r=await crypto.subtle.digest(e,new Uint8Array(n));return new Uint8Array(r)},async convertPasswordToHash(e,t,n,r){let i=ze(e),a=we(n),o=await this.hash(t,a,i);for(let e=0;e<r;e++)o=await this.hash(t,o,ut(e));return Re(o)},randomBytes(e){let t=new Uint8Array(e);return crypto.getRandomValues(t),t}};function ft(e){let t=e.model;if(t.headerRow===!1)throw Error(`Cannot create pivot table from a table without headers. Set headerRow: true on the table.`);if(!t.rows||t.rows.length===0)throw Error(`Cannot create pivot table from an empty table. Add data rows to the table.`);let r=t.columns.map(e=>e.name),i=new Set;for(let e of r){if(i.has(e))throw Error(`Duplicate column name "${e}" found in table. Pivot tables require unique column names.`);i.add(e)}let a=[void 0,...r],o=t.rows.map(e=>[void 0,...e]),s=t.tl,c=s.row,l=s.col,u=c+t.rows.length,d=l+r.length-1,f=n.encode(c,l,u,d);return{name:e.worksheet.name,getRow(e){if(e===1)return{values:a};let t=e-2;return t>=0&&t<o.length?{values:o[t]}:{values:[]}},getColumn(e){if(e<1||e>r.length)return{values:[]};let n=[];n[1]=r[e-1];for(let r=0;r<t.rows.length;r++)n[r+2]=t.rows[r][e-1];return{values:n}},getSheetValues(){let e=[];e[1]=a;for(let t=0;t<o.length;t++)e[t+2]=o[t];return e},dimensions:{shortRange:f}}}function pt(e){return e.sourceTable?ft(e.sourceTable):e.sourceSheet}function mt(e,t){if(!t.sourceSheet&&!t.sourceTable)throw Error(`Either sourceSheet or sourceTable must be provided.`);if(t.sourceSheet&&t.sourceTable)throw Error(`Cannot specify both sourceSheet and sourceTable. Choose one.`);let n=pt(t);ht(e,t,n);let{rows:r,values:i}=t,a=t.columns??[],o=gt(n,[...r,...a],i),s=o.reduce((e,t,n)=>(e[t.name]=n,e),{}),c=r.map(e=>s[e]),l=a.map(e=>s[e]),u=i.map(e=>s[e]),d=e.workbook.pivotTables.length+1;return{source:n,rows:c,columns:l,values:u,metric:t.metric??`sum`,cacheFields:o,cacheId:String(10+d-1),applyWidthHeightFormats:t.applyWidthHeightFormats??`1`,tableNumber:d}}function ht(e,t,n){if(t.metric&&t.metric!==`sum`&&t.metric!==`count`)throw Error(`Only the "sum" and "count" metrics are supported at this time.`);let r=t.columns??[],i=n.getRow(1).values.slice(1),a=new Set(i);for(let e of[...t.rows,...r,...t.values])if(!a.has(e))throw Error(`The header name "${e}" was not found in ${n.name}.`);if(!t.rows.length)throw Error(`No pivot table rows specified.`);if(t.values.length<1)throw Error(`Must have at least one value.`);if(t.values.length>1&&r.length>0)throw Error(`It is currently not possible to have multiple values when columns are specified. Please either supply an empty array for columns or a single value.`)}function gt(e,t,n){let r=e.getRow(1).values,i=new Set(t),a=new Set(n),o=t=>{let n=e.getColumn(t).values,r=new Set;for(let e=2;e<n.length;e++){let t=n[e];t!=null&&r.add(t)}return Pe(r)},s=t=>{let n=e.getColumn(t).values,r=1/0,i=-1/0,a=!1;for(let e=2;e<n.length;e++){let t=n[e];typeof t==`number`&&!isNaN(t)&&(a=!0,t<r&&(r=t),t>i&&(i=t))}return a?{minValue:r,maxValue:i}:null},c=[];for(let e of Ne(1,r.length)){let t=r[e];if(i.has(t))c.push({name:t,sharedItems:o(e)});else if(a.has(t)){let n=s(e);c.push({name:t,sharedItems:null,minValue:n?.minValue,maxValue:n?.maxValue})}else c.push({name:t,sharedItems:null})}return c}let _t=(e,t)=>({...e,...t.reduce((t,n)=>(e[n]&&(t[n]={...e[n]}),t),{})}),N=(e,t,n,r=[])=>{e[n]&&(t[n]=_t(e[n],r))},vt=e=>Object.keys(e).length===0,yt=e=>{if(!e)return e;if(vt(e))return{};let t={...e};return N(e,t,`font`,[`color`]),N(e,t,`alignment`),N(e,t,`protection`),e.border&&(N(e,t,`border`),N(e.border,t.border,`top`,[`color`]),N(e.border,t.border,`left`,[`color`]),N(e.border,t.border,`bottom`,[`color`]),N(e.border,t.border,`right`,[`color`]),N(e.border,t.border,`diagonal`,[`color`])),e.fill&&(N(e,t,`fill`,[`fgColor`,`bgColor`,`center`]),e.fill.stops&&(t.fill.stops=e.fill.stops.map(e=>_t(e,[`color`])))),t};var bt=class{constructor(e){e||={},this._workbook=e.workbook,this.id=e.id||0,this.orderNo=e.orderNo||0,this.name=e.name||`sheet${this.id}`,this.state=e.state||`visible`,this._rows=[],this._columns=null,this._keys={},this._merges={},this.rowBreaks=[],this.colBreaks=[],this.properties=Object.assign({},{defaultRowHeight:15,outlineLevelCol:0,outlineLevelRow:0},e.properties),this.pageSetup=Object.assign({},{margins:{left:.7,right:.7,top:.75,bottom:.75,header:.3,footer:.3},orientation:`portrait`,horizontalDpi:void 0,verticalDpi:void 0,fitToPage:!!(e.pageSetup&&(e.pageSetup.fitToWidth||e.pageSetup.fitToHeight)&&!e.pageSetup.scale),pageOrder:`downThenOver`,blackAndWhite:!1,draft:!1,cellComments:`None`,errors:`displayed`,scale:100,fitToWidth:1,fitToHeight:1,paperSize:void 0,showRowColHeaders:!1,showGridLines:!1,firstPageNumber:void 0,horizontalCentered:!1,verticalCentered:!1,rowBreaks:null,colBreaks:null},e.pageSetup),this.headerFooter=Object.assign({},{differentFirst:!1,differentOddEven:!1,oddHeader:null,oddFooter:null,evenHeader:null,evenFooter:null,firstHeader:null,firstFooter:null},e.headerFooter),this.dataValidations=new he,this.views=e.views||[],this.autoFilter=e.autoFilter||null,this._media=[],this.sheetProtection=null,this.tables={},this.pivotTables=[],this.conditionalFormattings=[],this.formControls=[]}get name(){return this._name}set name(e){if(e===void 0&&(e=`sheet${this.id}`),this._name!==e){if(typeof e!=`string`)throw Error(`The name has to be a string.`);if(e===``)throw Error(`The name can't be empty.`);if(e===`History`)throw Error(`The name "History" is protected. Please use a different name.`);if(/[*?:/\\[\]]/.test(e))throw Error(`Worksheet name ${e} cannot include any of the following characters: * ? : \\ / [ ]`);if(/(^')|('$)/.test(e))throw Error(`The first or last character of worksheet name cannot be a single quotation mark: ${e}`);if(e&&e.length>31&&(e=e.substring(0,31)),this._workbook.worksheets.find(t=>t&&t.name.toLowerCase()===e.toLowerCase()))throw Error(`Worksheet name already exists: ${e}`);this._name=e}}get workbook(){return this._workbook}destroy(){this._workbook.removeWorksheetEx(this)}get dimensions(){let e=new r;return this._rows.forEach(t=>{if(t){let n=t.dimensions;n&&e.expand(t.number,n.min,t.number,n.max)}}),e}get columns(){return this._columns}set columns(e){this._headerRowCount=e.reduce((e,t)=>{let n=Array.isArray(t.header)?t.header.length:t.header?1:0;return Math.max(e,n)},0);let t=1,n=this._columns=[];e.forEach(e=>{let r=new D(this,t++,!1);n.push(r),r.defn=e})}getColumnKey(e){return this._keys[e]}setColumnKey(e,t){this._keys[e]=t}deleteColumnKey(e){delete this._keys[e]}eachColumnKey(e){Object.keys(this._keys).forEach(t=>e(this._keys[t],t))}getColumn(e){let t;if(typeof e==`string`){let r=this._keys[e];if(r)return r;t=n.l2n(e)}else t=e;if(this._columns||=[],t>this._columns.length){let e=this._columns.length+1;for(;e<=t;)this._columns.push(new D(this,e++))}return this._columns[t-1]}spliceColumns(e,t,...n){let r=this._rows.length;if(n.length>0)for(let i=0;i<r;i++){let r=n.map(e=>e[i]||null);this.getRow(i+1).splice(e,t,...r)}else this._rows.forEach(n=>{n&&n.splice(e,t)});let i=n.length-t,a=e+t,o=this._columns?this._columns.length:0;if(i<0)for(let t=e+n.length;t<=o;t++)this.getColumn(t).defn=this.getColumn(t-i).defn;else if(i>0)for(let e=o;e>=a;e--)this.getColumn(e+i).defn=this.getColumn(e).defn;for(let t=e;t<e+n.length;t++)this.getColumn(t).defn=void 0;this.workbook.definedNames.spliceColumns(this.name,e,t,n.length)}get lastColumn(){return this.getColumn(this.columnCount)}get columnCount(){let e=0;return this.eachRow(t=>{e=Math.max(e,t.cellCount)}),e}get actualColumnCount(){let e=[],t=0;return this.eachRow(n=>{n.eachCell(({col:n})=>{e[n]||(e[n]=!0,t++)})}),t}_commitRow(e){}get _lastRowNumber(){let e=this._rows,t=e.length;for(;t>0&&e[t-1]===void 0;)t--;return t}get _nextRow(){return this._lastRowNumber+1}get lastRow(){if(this._rows.length)return this._rows[this._rows.length-1]}findRow(e){return this._rows[e-1]}findRows(e,t){return this._rows.slice(e-1,e-1+t)}get rowCount(){return this._lastRowNumber}get actualRowCount(){let e=0;return this.eachRow(()=>{e++}),e}getRow(e){let t=this._rows[e-1];return t||=this._rows[e-1]=new le(this,e),t}getRows(e,t){if(t<1)return;let n=[];for(let r=e;r<e+t;r++)n.push(this.getRow(r));return n}addRow(e,t=`n`){let n=this._nextRow,r=this.getRow(n);return r.values=e,this._setStyleOption(n,t[0]===`i`?t:`n`),r}addRows(e,t=`n`){let n=[];return e.forEach(e=>{n.push(this.addRow(e,t))}),n}insertRow(e,t,n=`n`){return this.spliceRows(e,0,t),this._setStyleOption(e,n),this.getRow(e)}insertRows(e,t,n=`n`){if(this.spliceRows(e,0,...t),n!==`n`)for(let r=0;r<t.length;r++)n[0]===`o`&&this.findRow(t.length+e+r)!==void 0?this._copyStyle(t.length+e+r,e+r,n[1]===`+`):n[0]===`i`&&this.findRow(e-1)!==void 0&&this._copyStyle(e-1,e+r,n[1]===`+`);return this.getRows(e,t.length)}_setStyleOption(e,t=`n`){t[0]===`o`&&this.findRow(e+1)!==void 0?this._copyStyle(e+1,e,t[1]===`+`):t[0]===`i`&&this.findRow(e-1)!==void 0&&this._copyStyle(e-1,e,t[1]===`+`)}_copyStyle(e,t,n=!1){let r=this.getRow(e),i=this.getRow(t);i.style=yt(r.style),r.eachCell({includeEmpty:n},(e,t)=>{i.getCell(t).style=yt(e.style)}),i.height=r.height}duplicateRow(e,t,n=!1){let r=this._rows[e-1],i=Array.from({length:t}).fill(r.values);this.spliceRows(e+1,n?0:t,...i);for(let n=0;n<t;n++){let t=this._rows[e+n];t.style=r.style,t.height=r.height,r.eachCell({includeEmpty:!0},(e,n)=>{t.getCell(n).style=e.style})}}spliceRows(e,t,...n){let r=e+t,i=n.length,a=i-t,o=this._rows.length,s,c;if(a<0)for(e===o&&(this._rows[o-1]=void 0),s=r;s<=o;s++)if(c=this._rows[s-1],c){let e=this.getRow(s+a);e.values=c.values,e.style=c.style,e.height=c.height,c.eachCell({includeEmpty:!0},(t,n)=>{e.getCell(n).style=t.style}),this._rows[s-1]=void 0}else this._rows[s+a-1]=void 0;else if(a>0)for(s=o;s>=r;s--)if(c=this._rows[s-1],c){let e=this.getRow(s+a);e.values=c.values,e.style=c.style,e.height=c.height,c.eachCell({includeEmpty:!0},(t,n)=>{if(e.getCell(n).style=t.style,t.type===u.ValueType.Merge){let e=this.getRow(t.row+i).getCell(n),r=t.master,a=this.getRow(r.row+i).getCell(r.col);e.merge(a)}})}else this._rows[s+a-1]=void 0;for(s=0;s<i;s++){let t=this.getRow(e+s);t.style={},t.values=n[s]}this.workbook.definedNames.spliceRows(this.name,e,t,i)}eachRow(e,t){let n,r;if(typeof e==`function`?r=e:(n=e,r=t),n&&n.includeEmpty){let e=this._rows.length;for(let t=1;t<=e;t++)r(this.getRow(t),t)}else this._rows.forEach(e=>{e&&e.hasValues&&r(e,e.number)})}getSheetValues(){let e=[];return this._rows.forEach(t=>{t&&(e[t.number]=t.values)}),e}findCell(e,t){let r=n.getAddress(e,t),i=this._rows[r.row-1];return i?i.findCell(r.col):void 0}getCell(e,t){let r=n.getAddress(e,t);return this.getRow(r.row).getCellEx(r)}mergeCells(...e){let t=new r(e);this._mergeCellsInternal(t)}mergeCellsWithoutStyle(...e){let t=new r(e);this._mergeCellsInternal(t,!0)}_mergeCellsInternal(e,t){Object.values(this._merges).forEach(t=>{if(t.intersects(e))throw Error(`Cannot merge already merged cells`)});let n=this.getCell(e.top,e.left);for(let r=e.top;r<=e.bottom;r++)for(let i=e.left;i<=e.right;i++)(r>e.top||i>e.left)&&this.getCell(r,i).merge(n,t);this._merges[n.address]=e}_unMergeMaster(e){let t=this._merges[e.address];if(t){for(let e=t.top;e<=t.bottom;e++)for(let n=t.left;n<=t.right;n++)this.getCell(e,n).unmerge();delete this._merges[e.address]}}get hasMerges(){return Object.values(this._merges).some(Boolean)}unMergeCells(...e){let t=new r(e);for(let e=t.top;e<=t.bottom;e++)for(let n=t.left;n<=t.right;n++){let t=this.findCell(e,n);t&&(t.type===u.ValueType.Merge?this._unMergeMaster(t.master):this._merges[t.address]&&this._unMergeMaster(t))}}fillFormula(e,t,r,i=`shared`){let{top:a,left:o,bottom:s,right:c}=n.decode(e),l=c-o+1,u=n.encodeAddress(a,o),d=i===`shared`,f;f=typeof r==`function`?r:Array.isArray(r)?Array.isArray(r[0])?(e,t)=>r[e-a][t-o]:(e,t)=>r[(e-a)*l+(t-o)]:()=>void 0;let p=!0;for(let n=a;n<=s;n++)for(let r=o;r<=c;r++)if(p){let a=this.getCell(n,r);a.value={shareType:i,formula:t,ref:e,result:f(n,r)},p=!1}else this.getCell(n,r).value=d?{sharedFormula:u,result:f(n,r)}:f(n,r)}addImage(e,t){let n={type:`image`,imageId:String(e),range:t};this._media.push(new fe(this,n))}getImages(){return this._media.filter(e=>e.type===`image`)}addBackgroundImage(e){let t={type:`background`,imageId:String(e)};this._media.push(new fe(this,t))}getBackgroundImageId(){let e=this._media.find(e=>e.type===`background`);return e&&e.imageId}addFormCheckbox(e,t){let n=new Se(this,e,t);return this.formControls.push(n),n}getFormCheckboxes(){return this.formControls}async protect(e,t){this.sheetProtection={sheet:!0},t&&`spinCount`in t&&(t.spinCount=Number.isFinite(t.spinCount)?Math.round(Math.max(0,t.spinCount)):1e5),e&&(this.sheetProtection.algorithmName=`SHA-512`,this.sheetProtection.saltValue=Re(dt.randomBytes(16)),this.sheetProtection.spinCount=t&&`spinCount`in t?t.spinCount:1e5,this.sheetProtection.hashValue=await dt.convertPasswordToHash(e,`SHA-512`,this.sheetProtection.saltValue,this.sheetProtection.spinCount)),t&&(this.sheetProtection=Object.assign(this.sheetProtection,t),!e&&`spinCount`in t&&delete this.sheetProtection.spinCount)}unprotect(){this.sheetProtection=null}addTable(e){let t=new me(this,e);return this.tables[e.name]=t,t}getTable(e){return this.tables[e]}removeTable(e){delete this.tables[e]}getTables(){return Object.values(this.tables)}addPivotTable(e){let t=mt(this,e);return this.pivotTables.push(t),this.workbook.pivotTables.push(t),t}addConditionalFormatting(e){this.conditionalFormattings.push(e)}removeConditionalFormatting(e){typeof e==`number`?this.conditionalFormattings.splice(e,1):e instanceof Function?this.conditionalFormattings=this.conditionalFormattings.filter(e):this.conditionalFormattings=[]}get model(){let e={id:this.id,name:this.name,dataValidations:this.dataValidations.model,properties:this.properties,state:this.state,pageSetup:this.pageSetup,headerFooter:this.headerFooter,rowBreaks:this.rowBreaks,colBreaks:this.colBreaks,views:this.views,autoFilter:this.autoFilter,media:this._media.map(e=>e.model),sheetProtection:this.sheetProtection,tables:Object.values(this.tables).map(e=>e.model),pivotTables:this.pivotTables,conditionalFormattings:this.conditionalFormattings,formControls:this.formControls.map(e=>e.model)};e.cols=D.toModel(this.columns||[]);let t=e.rows=[],n=e.dimensions=new r;return this._rows.forEach(e=>{let r=e&&e.model;r&&(n.expand(r.number,r.min,r.number,r.max),t.push(r))}),e.merges=[],Object.values(this._merges).forEach(t=>{e.merges.push(t.range)}),e}_parseRows(e){this._rows=[],e.rows&&e.rows.forEach(e=>{let t=new le(this,e.number);this._rows[t.number-1]=t,t.model=e})}_parseMergeCells(e){e.mergeCells&&e.mergeCells.forEach(e=>{this.mergeCellsWithoutStyle(e)})}set model(e){this.name=e.name,this._columns=D.fromModel(this,e.cols),this._parseRows(e),this._parseMergeCells(e),this.dataValidations=new he(e.dataValidations),this.properties=e.properties,this.pageSetup=e.pageSetup,this.headerFooter=e.headerFooter,this.rowBreaks=e.rowBreaks||[],this.colBreaks=e.colBreaks||[],this.views=e.views,this.autoFilter=e.autoFilter,this._media=e.media.map(e=>new fe(this,e)),this.sheetProtection=e.sheetProtection,this.tables=e.tables.reduce((e,t)=>{let n=new me(this,t);return n.model=t,e[t.name]=n,e},{}),this.pivotTables=e.pivotTables,this.conditionalFormattings=e.conditionalFormattings,this.formControls=[]}};function xt(e){return typeof e==`number`?!0:e!==`__proto__`&&e!==`constructor`&&e!==`prototype`}function St(e){if(typeof e!=`object`||!e)return e;if(Array.isArray(e))return e.map(e=>St(e));let t={};for(let n of Object.keys(e))xt(n)&&(t[n]=St(e[n]));return t}var Ct=class{constructor(e){this.template=e,this.sheets={}}addCell(e){this.addCellEx(n.decodeEx(e))}getCell(e){return this.findCellEx(n.decodeEx(e),!0)}findCell(e){return this.findCellEx(n.decodeEx(e),!1)}findCellAt(e,t,n){let r=this.sheets[e],i=r&&r[t];return i&&i[n]}addCellEx(e){if(e.top!==void 0)for(let t=e.top;t<=e.bottom;t++)for(let n=e.left;n<=e.right;n++)this.getCellAt(e.sheetName,t,n);else this.findCellEx(e,!0)}getCellEx(e){return this.findCellEx(e,!0)}findCellEx(e,t){let n=this.findSheet(e,t),r=this.findSheetRow(n,e,t);return this.findRowCell(r,e,t)}getCellAt(e,t,r){if(!xt(e))throw Error(`Invalid sheet name: ${e}`);let i=this.sheets[e]||(this.sheets[e]=[]),a=i[t]||(i[t]=[]);return a[r]||(a[r]={sheetName:e,address:n.n2l(r)+t,row:t,col:r})}removeCellEx(e){let t=this.findSheet(e,!1);if(!t)return;let n=this.findSheetRow(t,e,!1);n&&delete n[e.col]}forEachInSheet(e,t){let n=this.sheets[e];n&&n.forEach((e,n)=>{e&&e.forEach((e,r)=>{e&&t(e,n,r)})})}forEach(e){Object.keys(this.sheets).forEach(t=>{this.forEachInSheet(t,e)})}map(e){let t=[];return this.forEach(n=>{t.push(e(n))}),t}findSheet(e,t){let n=e.sheetName;if(!xt(n))throw Error(`Invalid sheet name: ${n}`);if(Object.prototype.hasOwnProperty.call(this.sheets,n))return this.sheets[n];if(t)return this.sheets[n]=[]}findSheetRow(e,t,n){let{row:r}=t;if(!xt(r))throw Error(`Invalid row: ${r}`);if(e&&e[r])return e[r];if(n)return e[r]=[]}findRowCell(e,t,n){let{col:r}=t;if(!xt(r))throw Error(`Invalid column: ${r}`);if(e&&e[r])return e[r];if(n)return e[r]=this.template?{...t,...St(this.template)}:t}spliceRows(e,t,n,r){let i=this.sheets[e];if(i){let e=[];for(let t=0;t<r;t++)e.push([]);i.splice(t,n,...e)}}spliceColumns(e,t,n,r){let i=this.sheets[e];if(i){let e=[];for(let t=0;t<r;t++)e.push(null);Object.values(i).forEach(r=>{r.splice(t,n,...e)})}}};let wt=/[$](\w+)[$](\d+)(:[$](\w+)[$](\d+))?/;var Tt=class{constructor(){this.matrixMap={}}getMatrix(e){return this.matrixMap[e]||(this.matrixMap[e]=new Ct)}add(e,t){let r=n.decodeEx(e);`error`in r||this.addEx(r,t)}addEx(e,t){let r=this.getMatrix(t);if(`top`in e)for(let t=e.left;t<=e.right;t++)for(let i=e.top;i<=e.bottom;i++){let a={sheetName:e.sheetName,address:n.n2l(t)+i,row:i,col:t};r.addCellEx(a)}else r.addCellEx(e)}remove(e,t){let r=n.decodeEx(e);`error`in r||this.removeEx(r,t)}removeEx(e,t){let r=this.getMatrix(t);if(`top`in e)for(let t=e.left;t<=e.right;t++)for(let i=e.top;i<=e.bottom;i++)r.removeCellEx({sheetName:e.sheetName,address:n.n2l(t)+i,row:i,col:t});else r.removeCellEx(e)}removeAllNames(e){Object.values(this.matrixMap).forEach(t=>{if(`top`in e)for(let r=e.left;r<=e.right;r++)for(let i=e.top;i<=e.bottom;i++)t.removeCellEx({sheetName:e.sheetName,address:n.n2l(r)+i,row:i,col:r});else t.removeCellEx(e)})}forEach(e){Object.entries(this.matrixMap).forEach(([t,n])=>{n.forEach(n=>{e(t,n)})})}getNames(e){let t=n.decodeEx(e);return`error`in t||`top`in t?[]:this.getNamesEx(t)}getNamesEx(e){return Object.entries(this.matrixMap).map(([t,n])=>n.findCellEx(e,!1)&&t).filter(e=>!!e)}_explore(e,t){t.mark=!1;let{sheetName:n}=t,i=new r(t.row,t.col,t.row,t.col,n),a,o,s=(t,r)=>e.findCellAt(n,t,r);function c(e,n){let r=s(e,t.col);return!r||!r.mark?!1:(i[n]=e,r.mark=!1,!0)}for(o=t.row-1;c(o,`top`);o--);for(o=t.row+1;c(o,`bottom`);o++);function l(e,t){let n=[];for(o=i.top;o<=i.bottom;o++){let t=s(o,e);if(t&&t.mark)n.push(t);else return!1}i[t]=e;for(let e=0;e<n.length;e++)n[e].mark=!1;return!0}for(a=t.col-1;l(a,`left`);a--);for(a=t.col+1;l(a,`right`);a++);return i}getRanges(e,t){return t||=this.matrixMap[e],t?(t.forEach(e=>{e.mark=!0}),{name:e,ranges:t.map(e=>e.mark&&this._explore(t,e)).filter(Boolean).map(e=>e.$shortRange)}):{name:e,ranges:[]}}normaliseMatrix(e,t){e.forEachInSheet(t,(e,t,r)=>{e&&(e.row!==t||e.col!==r)&&(e.row=t,e.col=r,e.address=n.n2l(r)+t)})}spliceRows(e,t,n,r){Object.values(this.matrixMap).forEach(i=>{i.spliceRows(e,t,n,r),this.normaliseMatrix(i,e)})}spliceColumns(e,t,n,r){Object.values(this.matrixMap).forEach(i=>{i.spliceColumns(e,t,n,r),this.normaliseMatrix(i,e)})}get model(){return Object.entries(this.matrixMap).map(([e,t])=>this.getRanges(e,t)).filter(e=>e.ranges.length)}set model(e){let t=this.matrixMap={};e.forEach(e=>{let n=t[e.name]=new Ct;e.ranges.forEach(e=>{wt.test(e.split(`!`).pop()||``)&&n.addCell(e)})})}};let Et=1e4;function Dt(e,t,n){e.push(` ${t}="${Ae(n.toString())}"`)}function Ot(e,t){if(t){let n=[];for(let e in t){if(!Object.prototype.hasOwnProperty.call(t,e))continue;let r=t[e];r!==void 0&&Dt(n,e,r)}e.push(n.join(``))}}var P=class{constructor(){this._xml=[],this._chunks=[],this._stack=[],this._rollbacks=[],this.leaf=!1,this.open=!1}_consolidate(){this._rollbacks.length>0||this._xml.length>=Et&&(this._chunks.push(this._xml.join(``)),this._xml.length=0)}get tos(){return this._stack.length?this._stack[this._stack.length-1]:void 0}get cursor(){return this._chunks.length*Et+this._xml.length}openXml(e){let t=this._xml;t.push(`<?xml`),Ot(t,e),t.push(`?>
|
|
8
|
+
`)}openNode(e,t){let n=this.tos,r=this._xml;n&&this.open&&r.push(`>`),this._stack.push(e),r.push(`<`),r.push(e),Ot(r,t),this.leaf=!0,this.open=!0}addAttribute(e,t){if(!this.open)throw Error(`Cannot write attributes to node if it is not open`);t!==void 0&&Dt(this._xml,e,t)}addAttributes(e){if(!this.open)throw Error(`Cannot write attributes to node if it is not open`);Ot(this._xml,e)}writeText(e){let t=this._xml;this.open&&=(t.push(`>`),!1),this.leaf=!1,t.push(Ae(e.toString()))}writeXml(e){this.open&&=(this._xml.push(`>`),!1),this.leaf=!1,this._xml.push(e)}closeNode(){let e=this._stack.pop(),t=this._xml;this.leaf?t.push(`/>`):(t.push(`</`),t.push(e),t.push(`>`)),this.open=!1,this.leaf=!1,this._consolidate()}leafNode(e,t,n){this.openNode(e,t),n!==void 0&&this.writeText(n),this.closeNode()}closeAll(){for(;this._stack.length;)this.closeNode()}addRollback(){return this._rollbacks.push({xml:this._xml.length,stack:this._stack.length,leaf:this.leaf??!1,open:this.open??!1,chunksLength:this._chunks.length}),this.cursor}commit(){this._rollbacks.pop()}rollback(){let e=this._rollbacks.pop();this._xml.length>e.xml&&(this._xml.length=e.xml),this._stack.length>e.stack&&(this._stack.length=e.stack),this._chunks.length>e.chunksLength&&(this._chunks.length=e.chunksLength),this.leaf=e.leaf,this.open=e.open}get xml(){return this.closeAll(),this._chunks.length===0?this._xml.join(``):(this._xml.length>0&&this._chunks.push(this._xml.join(``)),this._chunks.join(``))}static{this.StdDocAttributes={version:`1.0`,encoding:`UTF-8`,standalone:`yes`}}};let kt=Array(128);for(let e=0;e<128;e++)kt[e]=String.fromCharCode(e);function F(e){return e<128?kt[e]:String.fromCodePoint(e)}let At=new Uint8Array(128);for(let e=97;e<=122;e++)At[e]=1;for(let e=65;e<=90;e++)At[e]=1;At[95]=1,At[58]=1;let jt=new Uint8Array(128);for(let e=97;e<=122;e++)jt[e]=1;for(let e=65;e<=90;e++)jt[e]=1;for(let e=48;e<=57;e++)jt[e]=1;jt[95]=1,jt[58]=1,jt[45]=1,jt[46]=1;function Mt(e){return e===32||e===10||e===13||e===9}function Nt(e){return e===34||e===39}function Pt(e){return e<128?At[e]===1:e>=192&&e<=214||e>=216&&e<=246||e>=248&&e<=767||e>=880&&e<=893||e>=895&&e<=8191||e===8204||e===8205||e>=8304&&e<=8591||e>=11264&&e<=12271||e>=12289&&e<=55295||e>=63744&&e<=64975||e>=65008&&e<=65533||e>=65536&&e<=983039}function Ft(e){return e<128?jt[e]===1:e===183||e>=192&&e<=214||e>=216&&e<=246||e>=248&&e<=767||e>=768&&e<=879||e>=880&&e<=893||e>=895&&e<=8191||e===8204||e===8205||e>=8255&&e<=8256||e>=8304&&e<=8591||e>=11264&&e<=12271||e>=12289&&e<=55295||e>=63744&&e<=64975||e>=65008&&e<=65533||e>=65536&&e<=983039}function It(e){return e>=32&&e<=55295||e===10||e===13||e===9||e>=57344&&e<=65533||e>=65536&&e<=1114111}let Lt={amp:`&`,gt:`>`,lt:`<`,quot:`"`,apos:`'`};var Rt=class{constructor(e){this.state=0,this.chunk=``,this.i=0,this.prevI=0,this.text=``,this.name=``,this.q=null,this.tags=[],this.tag=null,this.attribList=[],this.entity=``,this.entityReturnState=0,this.openWakaBang=``,this.sawRoot=!1,this.closedRoot=!1,this._closed=!1,this.reportedTextBeforeRoot=!1,this.reportedTextAfterRoot=!1,this.line=1,this.column=0,this.positionAtNewLine=0,this.chunkPosition=0,this.ENTITIES={...Lt},this.trackPosition=e?.position!==!1,this.fileName=e?.fileName,this.fragment=e?.fragment??!1,this._init()}get closed(){return this._closed}get position(){return this.chunkPosition+this.i}_init(){this.state=(this.fragment,0),this.text=``,this.name=``,this.q=null,this.tags=[],this.tag=null,this.attribList=[],this.entity=``,this.openWakaBang=``,this.sawRoot=this.fragment,this.closedRoot=this.fragment,this.reportedTextBeforeRoot=this.fragment,this.reportedTextAfterRoot=this.fragment,this.carriedFromPrevious=void 0,this._closed=!1,this.line=1,this.column=0,this.positionAtNewLine=0,this.chunkPosition=0,this.chunk=``,this.i=0,this.prevI=0}on(e,t){switch(e){case`text`:this.textHandler=t;break;case`opentag`:this.openTagHandler=t;break;case`closetag`:this.closeTagHandler=t;break;case`error`:this.errorHandler=t;break}}off(e){switch(e){case`text`:this.textHandler=void 0;break;case`opentag`:this.openTagHandler=void 0;break;case`closetag`:this.closeTagHandler=void 0;break;case`error`:this.errorHandler=void 0;break}}makeError(e){let t=this.fileName??``;return this.trackPosition&&(t.length>0&&(t+=`:`),t+=`${this.line}:${this.column}`),t.length>0&&(t+=`: `),Error(t+e)}fail(e){let t=this.makeError(e);if(this.errorHandler)this.errorHandler(t);else throw t;return this}write(e){if(this._closed)return this.fail(`cannot write after close`);let t=!1;e===null&&(t=!0,e=``),this.carriedFromPrevious!==void 0&&(e=this.carriedFromPrevious+e,this.carriedFromPrevious=void 0);let n=e.length;if(!t&&n>0){let t=e.charCodeAt(n-1);(t===13||t>=55296&&t<=56319)&&(this.carriedFromPrevious=e[n-1],n--,e=e.slice(0,n))}for(this.chunk=e,this.i=0;this.i<n;)this.processState();return this.chunkPosition+=n,t?this.end():this}close(){return this.write(null)}getCode(){let{chunk:e,i:t}=this;if(this.prevI=t,this.i=t+1,t>=e.length)return-1;let n=e.charCodeAt(t);if(n<10||n>13&&n<55296)return this.trackPosition&&this.column++,n;if(n>=55296&&n<=56319){let r=e.charCodeAt(t+1);if(r>=56320&&r<=57343)return this.i=t+2,this.trackPosition&&this.column++,65536+((n-55296)*1024+(r-56320))}return n===13?(e.charCodeAt(t+1)===10&&(this.i=t+2),this.trackPosition&&(this.line++,this.column=0,this.positionAtNewLine=this.position),10):(n===10&&this.trackPosition?(this.line++,this.column=0,this.positionAtNewLine=this.position):this.trackPosition&&this.column++,n)}unget(){this.i=this.prevI,this.trackPosition&&this.column--}processState(){switch(this.state){case 0:this.sText();break;case 1:this.sOpenWaka();break;case 2:this.sOpenWakaBang();break;case 3:this.sOpenTag();break;case 4:this.sOpenTagSlash();break;case 5:this.sAttrib();break;case 6:this.sAttribName();break;case 7:this.sAttribNameSawWhite();break;case 8:this.sAttribValue();break;case 9:this.sAttribValueQuoted();break;case 10:this.sAttribValueClosed();break;case 11:this.sCloseTag();break;case 12:this.sCloseTagSawWhite();break;case 13:this.sComment();break;case 14:this.sCommentEnding();break;case 15:this.sCommentEnded();break;case 16:this.sCData();break;case 17:this.sCDataEnding();break;case 18:this.sCDataEnding2();break;case 19:this.sPI();break;case 20:this.sPIEnding();break;case 21:this.sDoctype();break;case 22:this.sDoctypeQuote();break;case 23:this.sDoctypeDTD();break;case 24:this.sDoctypeDTDQuoted();break;case 25:this.sEntity();break}}sText(){this.tags.length===0?this.handleTextOutsideRoot():this.handleTextInRoot()}handleTextInRoot(){let{chunk:e}=this,{i:t}=this,n=this.textHandler;for(;;){let r=this.getCode();if(r===-1){n&&t<this.i&&(this.text+=e.slice(t,this.i));return}if(r===60){if(n){let r=e.slice(t,this.prevI);this.text.length>0?(n(this.text+r),this.text=``):r.length>0&&n(r)}this.state=1;return}if(r===38){n&&(this.text+=e.slice(t,this.prevI)),this.state=25,this.entityReturnState=0,this.entity=``;return}r===10&&(n&&(this.text+=e.slice(t,this.prevI)+`
|
|
9
9
|
`),t=this.i)}}handleTextOutsideRoot(){let{chunk:e}=this,{i:t}=this,n=this.textHandler,r=!1;for(;;){let i=this.getCode();if(i===-1){n&&t<this.i&&(this.text+=e.slice(t,this.i));break}if(i===60){if(n){let r=e.slice(t,this.prevI);this.text.length>0?(n(this.text+r),this.text=``):r.length>0&&n(r)}this.state=1;break}if(i===38){n&&(this.text+=e.slice(t,this.prevI)),this.state=25,this.entityReturnState=0,this.entity=``,r=!0;break}i===10?(n&&(this.text+=e.slice(t,this.prevI)+`
|
|
10
|
-
`),t=this.i):Tt(i)||(r=!0)}r&&(!this.sawRoot&&!this.reportedTextBeforeRoot&&(this.fail(`text data outside of root node.`),this.reportedTextBeforeRoot=!0),this.closedRoot&&!this.reportedTextAfterRoot&&(this.fail(`text data outside of root node.`),this.reportedTextAfterRoot=!0))}sOpenWaka(){let e=this.getCode();if(Dt(e)){this.state=3,this.name=I(e);return}switch(e){case 47:this.state=11,this.name=``;break;case 33:this.state=2,this.openWakaBang=``;break;case 63:this.state=19,this.text=``;break;default:this.fail(`unexpected character in tag`),this.state=0}}sOpenWakaBang(){let e=this.getCode();switch(this.openWakaBang+=I(e),this.openWakaBang){case`[CDATA[`:this.state=16,this.text=``,this.openWakaBang=``;break;case`--`:this.state=13,this.text=``,this.openWakaBang=``;break;case`DOCTYPE`:this.state=21,this.text=``,this.openWakaBang=``;break;default:this.openWakaBang.length>=7&&(this.fail(`incorrect syntax`),this.state=0)}}sOpenTag(){let e=this.getCode();if(e!==-1){if(Ot(e)){this.name+=I(e);return}this.tag={name:this.name,attributes:Object.create(null),isSelfClosing:!1},this.attribList=[],this.sawRoot=!0,e===62?this.openTag():e===47?this.state=4:(Tt(e)||this.fail(`unexpected character in tag`),this.state=5)}}sOpenTagSlash(){this.getCode()===62?this.openSelfClosingTag():(this.fail(`expected >`),this.state=5)}sAttrib(){let e=this.skipSpaces();e!==-1&&(Dt(e)?(this.name=I(e),this.state=6):e===62?this.openTag():e===47?this.state=4:this.fail(`unexpected character in attribute`))}sAttribName(){let e=this.getCode();if(e!==-1){if(Ot(e)){this.name+=I(e);return}e===61?this.state=8:Tt(e)?this.state=7:e===62?(this.fail(`attribute without value`),this.attribList.push({name:this.name,value:this.name}),this.name=``,this.openTag()):this.fail(`unexpected character in attribute name`)}}sAttribNameSawWhite(){let e=this.skipSpaces();e!==-1&&(e===61?this.state=8:(this.fail(`attribute without value`),this.name=``,this.text=``,e===62?this.openTag():Dt(e)?(this.name=I(e),this.state=6):(this.fail(`unexpected character`),this.state=5)))}sAttribValue(){let e=this.skipSpaces();e!==-1&&(Et(e)?(this.q=e,this.text=``,this.state=9):(this.fail(`unquoted attribute value`),this.state=0))}sAttribValueQuoted(){let{q:e,chunk:t}=this,{i:n}=this;for(;;){let r=this.getCode();if(r===-1){this.text+=t.slice(n,this.i);return}if(r===e){this.attribList.push({name:this.name,value:this.text+t.slice(n,this.prevI)}),this.name=``,this.text=``,this.q=null,this.state=10;return}if(r===38){this.text+=t.slice(n,this.prevI),this.state=25,this.entityReturnState=9,this.entity=``;return}if((r===10||r===9)&&(this.text+=t.slice(n,this.prevI)+` `,n=this.i),r===60){this.text+=t.slice(n,this.prevI),this.fail(`< not allowed in attribute value`);return}}}sAttribValueClosed(){let e=this.getCode();e!==-1&&(Tt(e)?this.state=5:e===62?this.openTag():e===47?this.state=4:Dt(e)?(this.fail(`no whitespace between attributes`),this.name=I(e),this.state=6):this.fail(`unexpected character after attribute`))}sCloseTag(){let e=this.getCode();e!==-1&&(Ot(e)?this.name+=I(e):e===62?this.closeTag():Tt(e)?this.state=12:this.fail(`unexpected character in close tag`))}sCloseTagSawWhite(){let e=this.skipSpaces();e!==-1&&(e===62?this.closeTag():this.fail(`unexpected character in close tag`))}sComment(){let e=this.getCode();e!==-1&&(e===45?this.state=14:this.text+=I(e))}sCommentEnding(){let e=this.getCode();e===45?this.state=15:(this.text+=`-`+I(e),this.state=13)}sCommentEnded(){let e=this.getCode();e===62?(this.text=``,this.state=0):e===45?this.text+=`-`:(this.fail(`malformed comment`),this.text+=`--`+I(e),this.state=13)}sCData(){let e=this.getCode();e!==-1&&(e===93?this.state=17:this.text+=I(e))}sCDataEnding(){let e=this.getCode();e===93?this.state=18:(this.text+=`]`+I(e),this.state=16)}sCDataEnding2(){let e=this.getCode();e===62?(this.textHandler&&this.text.length>0&&this.textHandler(this.text),this.text=``,this.state=0):e===93?this.text+=`]`:(this.text+=`]]`+I(e),this.state=16)}sPI(){let e=this.getCode();e!==-1&&(e===63?this.state=20:this.text+=I(e))}sPIEnding(){let e=this.getCode();e===62?(this.text=``,this.state=0):e===63?this.text+=`?`:(this.text+=`?`+I(e),this.state=19)}sDoctype(){let e=this.getCode();e!==-1&&(e===62?(this.text=``,this.state=0):Et(e)?(this.q=e,this.state=22):e===91?this.state=23:this.text+=I(e))}sDoctypeQuote(){let e=this.getCode();e!==-1&&(e===this.q?(this.q=null,this.state=21):this.text+=I(e))}sDoctypeDTD(){let e=this.getCode();e!==-1&&(e===93?this.state=21:Et(e)&&(this.q=e,this.state=24))}sDoctypeDTDQuoted(){let e=this.getCode();e!==-1&&e===this.q&&(this.q=null,this.state=23)}sEntity(){let e=this.getCode();if(e!==-1)if(e===59){let e=this.entity,t;e===``?(this.fail(`empty entity`),t=`&;`):t=this.parseEntity(e),this.text+=t,this.state=this.entityReturnState,this.entity=``}else Ot(e)||e===35?this.entity+=I(e):(this.fail(`invalid entity character`),this.text+=`&`+this.entity+I(e),this.state=this.entityReturnState,this.entity=``)}parseEntity(e){if(e[0]!==`#`){let t=this.ENTITIES[e];return t===void 0?(this.fail(`undefined entity: `+e),`&`+e+`;`):t}let t;return t=e[1]===`x`||e[1]===`X`?parseInt(e.slice(2),16):parseInt(e.slice(1),10),isNaN(t)||!kt(t)?(this.fail(`invalid character entity`),`&`+e+`;`):String.fromCodePoint(t)}skipSpaces(){for(;;){let e=this.getCode();if(e===-1||!Tt(e))return e}}openTag(){let e=this.tag;e.isSelfClosing=!1;for(let{name:t,value:n}of this.attribList)e.attributes[t]=n;this.attribList=[],this.openTagHandler?.(e),this.tags.push(e),this.name=``,this.state=0}openSelfClosingTag(){let e=this.tag;e.isSelfClosing=!0;for(let{name:t,value:n}of this.attribList)e.attributes[t]=n;this.attribList=[],this.openTagHandler?.(e),this.closeTagHandler?.(e),this.tags.length===0&&(this.closedRoot=!0),this.name=``,this.state=0}closeTag(){let{tags:e,name:t}=this;if(this.state=0,this.name=``,t===``){this.fail(`empty close tag`),this.text+=`</>`;return}let n=!1;for(let r=e.length-1;r>=0;r--)if(e[r].name===t){for(;e.length>r;){let t=e.pop();this.closeTagHandler?.(t),e.length>r&&this.fail(`unclosed tag: `+t.name)}n=!0;break}n||(this.fail(`unmatched close tag: `+t),this.text+=`</`+t+`>`),e.length===0&&(this.closedRoot=!0)}end(){for(this.sawRoot||this.fail(`document must contain a root element`);this.tags.length>0;){let e=this.tags.pop();this.fail(`unclosed tag: `+e.name)}return this.text.length>0&&this.textHandler&&(this.textHandler(this.text),this.text=``),this._closed=!0,this._init(),this}};async function*Mt(e){let t=new jt({xmlns:!1,position:!0}),n;t.on(`error`,e=>{n=e});let r=[];t.on(`opentag`,e=>r.push({eventType:`opentag`,value:e})),t.on(`text`,e=>r.push({eventType:`text`,value:e})),t.on(`closetag`,e=>r.push({eventType:`closetag`,value:e}));for await(let i of e){let e=Ie(i);if(t.write(e),n)throw n;yield r,r=[]}if(t.close(),n)throw n;r.length>0&&(yield r)}var L=class e{prepare(e,t){}render(e,t){}parseOpen(e){}parseText(e){}parseClose(e){return!1}reconcile(e,t){}reset(){this.model=null,this.map&&Object.values(this.map).forEach(t=>{t instanceof e?t.reset():t.xform&&t.xform.reset()})}mergeModel(e){this.model=Object.assign(this.model||{},e)}async parse(e){let t=!1,n;for await(let r of e)if(!t){for(let{eventType:e,value:i}of r)if(e===`opentag`)this.parseOpen(i);else if(e===`text`)this.parseText(i);else if(e===`closetag`&&!this.parseClose(i.name)){t=!0,n=this.model;break}}return t?n:this.model}async parseStream(e){return this.parse(Mt(e))}get xml(){return this.toXml(this.model)}toXml(e){let t=new F;return this.render(t,e),t.xml}static toAttribute(e,t,n=!1){if(e===void 0){if(n)return t}else if(n||e!==t)return e.toString()}static toStringAttribute(t,n,r=!1){return e.toAttribute(t,n,r)}static toStringValue(e,t){return e===void 0?t:e}static toBoolAttribute(e,t,n=!1){if(e===void 0){if(n)return t}else if(n||e!==t)return e?`1`:`0`}static toBoolValue(e,t){return e===void 0?t:e===`1`}static toIntAttribute(t,n,r=!1){return e.toAttribute(t,n,r)}static toIntValue(e,t){return e===void 0?t:parseInt(e,10)}static toFloatAttribute(t,n,r=!1){return e.toAttribute(t,n,r)}static toFloatValue(e,t){return e===void 0?t:parseFloat(e)}};function Nt(e,t){e.openNode(t.tag,t.$),t.c&&t.c.forEach(t=>{Nt(e,t)}),t.t&&e.writeText(t.t),e.closeNode()}var Pt=class extends L{constructor(e){super(),this._model=e}render(e){if(!this._xml){let e=new F;Nt(e,this._model),this._xml=e.xml}e.writeXml(this._xml)}parseOpen(){return!0}parseText(){}parseClose(e){switch(e){case this._model.tag:return!1;default:return!0}}},R=class extends L{constructor(e){super(),this.tag=e.tag,this.always=!!e.always,this.count=e.count,this.empty=e.empty,this.$count=e.$count||`count`,this.$=e.$,this.childXform=e.childXform,this.maxItems=e.maxItems}prepare(e,t){let{childXform:n}=this;e&&e.forEach((e,r)=>{t.index=r,n.prepare(e,t)})}render(e,t){if(this.always||t&&t.length){e.openNode(this.tag,this.$),this.count&&e.addAttribute(this.$count,t&&t.length||0);let{childXform:n}=this;(t||[]).forEach((t,r)=>{n.render(e,t,r)}),e.closeNode()}else this.empty&&e.leafNode(this.tag)}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:return this.model=[],!0;default:return this.childXform.parseOpen(e)?(this.parser=this.childXform,!0):!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser){if(!this.parser.parseClose(e)&&(this.model.push(this.parser.model),this.parser=void 0,this.maxItems&&this.model.length>this.maxItems))throw Error(`Max ${this.childXform.tag} count (${this.maxItems}) exceeded`);return!0}return!1}reconcile(e,t){if(e){let{childXform:n}=this;e.forEach(e=>{n.reconcile(e,t)})}}reset(){super.reset(),this.childXform&&this.childXform.reset()}},z=class extends L{constructor(e){super(),this.name=e||`color`}get tag(){return this.name}render(e,t){return t?(e.openNode(this.name),t.argb?e.addAttribute(`rgb`,t.argb):t.theme===void 0?t.indexed===void 0?e.addAttribute(`auto`,`1`):e.addAttribute(`indexed`,t.indexed):(e.addAttribute(`theme`,t.theme),t.tint!==void 0&&e.addAttribute(`tint`,t.tint)),e.closeNode(),!0):!1}parseOpen(e){return e.name===this.name?(e.attributes.rgb?this.model={argb:e.attributes.rgb}:e.attributes.theme?(this.model={theme:parseInt(e.attributes.theme,10)},e.attributes.tint&&(this.model.tint=parseFloat(e.attributes.tint))):e.attributes.indexed?this.model={indexed:parseInt(e.attributes.indexed,10)}:this.model=void 0,!0):!1}parseText(){}parseClose(){return!1}},Ft=class extends L{constructor(e){super(),this.tag=e.tag,this.attr=e.attr}render(e,t){t&&(e.openNode(this.tag),e.closeNode())}parseOpen(e){e.name===this.tag&&(this.model=!0)}parseText(){}parseClose(){return!1}},It=class extends L{constructor(e){super(),this.tag=e.tag,this.attr=e.attr,this.attrs=e.attrs,this.zero=e.zero,this.text=[]}render(e,t){(t||this.zero)&&(e.openNode(this.tag),this.attrs&&e.addAttributes(this.attrs),this.attr?e.addAttribute(this.attr,t):e.writeText(t),e.closeNode())}parseOpen(e){return e.name===this.tag?(this.attr?this.model=parseInt(e.attributes[this.attr],10):this.text=[],!0):!1}parseText(e){this.attr||this.text.push(e)}parseClose(){return this.attr||(this.model=parseInt(this.text.join(``)||`0`,10)),!1}},B=class extends L{constructor(e){super(),this.tag=e.tag,this.attr=e.attr,this.attrs=e.attrs,this.text=[]}render(e,t){t!==void 0&&(e.openNode(this.tag),this.attrs&&e.addAttributes(this.attrs),this.attr?e.addAttribute(this.attr,t):e.writeText(t),e.closeNode())}parseOpen(e){e.name===this.tag&&(this.attr?this.model=e.attributes[this.attr]:this.text=[])}parseText(e){this.attr||this.text.push(e)}parseClose(){return this.attr||(this.model=this.text.join(``)),!1}},Lt=class e extends L{static{this.Attributes={single:{},double:{val:`double`},singleAccounting:{val:`singleAccounting`},doubleAccounting:{val:`doubleAccounting`}}}constructor(e){super(),this.model=e}get tag(){return`u`}render(t,n){if(n||=this.model,n===!0)t.leafNode(`u`);else{let r=e.Attributes[n];r&&t.leafNode(`u`,r)}}parseOpen(e){e.name===`u`&&(this.model=e.attributes.val||!0)}parseText(){}parseClose(){return!1}},Rt=class e extends L{constructor(t){super(),this.options=t||e.OPTIONS;let n=[{tag:`b`,prop:`bold`,xform:new Ft({tag:`b`,attr:`val`})},{tag:`i`,prop:`italic`,xform:new Ft({tag:`i`,attr:`val`})},{tag:`u`,prop:`underline`,xform:new Lt},{tag:`strike`,prop:`strike`,xform:new Ft({tag:`strike`,attr:`val`})},{tag:`condense`,prop:`condense`,xform:new Ft({tag:`condense`,attr:`val`})},{tag:`extend`,prop:`extend`,xform:new Ft({tag:`extend`,attr:`val`})},{tag:`outline`,prop:`outline`,xform:new Ft({tag:`outline`,attr:`val`})},{tag:`shadow`,prop:`shadow`,xform:new Ft({tag:`shadow`,attr:`val`})},{tag:`sz`,prop:`size`,xform:new It({tag:`sz`,attr:`val`})},{tag:`color`,prop:`color`,xform:new z},{tag:this.options.fontNameTag,prop:`name`,xform:new B({tag:this.options.fontNameTag,attr:`val`})},{tag:`family`,prop:`family`,xform:new It({tag:`family`,attr:`val`})},{tag:`scheme`,prop:`scheme`,xform:new B({tag:`scheme`,attr:`val`})},{tag:`charset`,prop:`charset`,xform:new It({tag:`charset`,attr:`val`})},{tag:`vertAlign`,prop:`vertAlign`,xform:new B({tag:`vertAlign`,attr:`val`})}];this.map=Object.fromEntries(n.map(e=>[e.tag,{prop:e.prop,xform:e.xform}])),this.renderOrder=n.map(e=>e.tag)}get tag(){return this.options.tagName}render(e,t){let{map:n,renderOrder:r}=this;e.openNode(this.options.tagName),r.forEach(r=>{n[r].xform.render(e,t[n[r].prop])}),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(this.map[e.name])return this.parser=this.map[e.name].xform,this.parser.parseOpen(e);switch(e.name){case this.options.tagName:return this.model={},!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser&&!this.parser.parseClose(e)){let t=this.map[e];return this.parser.model&&(this.model[t.prop]=this.parser.model),this.parser=void 0,!0}switch(e){case this.options.tagName:return!1;default:return!0}}static{this.OPTIONS={tagName:`font`,fontNameTag:`name`}}},zt=class extends L{constructor(){super(),this.map={color:new z}}get tag(){return`stop`}render(e,t){e.openNode(`stop`),e.addAttribute(`position`,t.position),this.map.color.render(e,t.color),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`stop`:return this.model={position:parseFloat(e.attributes.position)},!0;case`color`:return this.parser=this.map.color,this.parser.parseOpen(e),!0;default:return!1}}parseText(){}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.model.color=this.parser.model,this.parser=void 0),!0):!1}},Bt=class extends L{constructor(){super(),this.map={fgColor:new z(`fgColor`),bgColor:new z(`bgColor`)}}get name(){return`pattern`}get tag(){return`patternFill`}render(e,t){e.openNode(`patternFill`),e.addAttribute(`patternType`,t.pattern),t.fgColor&&this.map.fgColor.render(e,t.fgColor),t.bgColor&&this.map.bgColor.render(e,t.bgColor),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`patternFill`:return this.model={type:`pattern`,pattern:e.attributes.patternType},!0;default:return this.parser=this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser.model&&(this.model[e]=this.parser.model),this.parser=void 0),!0):!1}},Vt=class extends L{constructor(){super(),this.map={stop:new zt}}get name(){return`gradient`}get tag(){return`gradientFill`}render(e,t){switch(e.openNode(`gradientFill`),t.gradient){case`angle`:e.addAttribute(`degree`,t.degree);break;case`path`:e.addAttribute(`type`,`path`),t.center.left&&(e.addAttribute(`left`,t.center.left),t.center.right===void 0&&e.addAttribute(`right`,t.center.left)),t.center.right&&e.addAttribute(`right`,t.center.right),t.center.top&&(e.addAttribute(`top`,t.center.top),t.center.bottom===void 0&&e.addAttribute(`bottom`,t.center.top)),t.center.bottom&&e.addAttribute(`bottom`,t.center.bottom);break;default:break}let n=this.map.stop;t.stops.forEach(t=>{n.render(e,t)}),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`gradientFill`:{let t=this.model={stops:[]};return e.attributes.degree?(t.gradient=`angle`,t.degree=parseInt(e.attributes.degree,10)):e.attributes.type===`path`&&(t.gradient=`path`,t.center={left:e.attributes.left?parseFloat(e.attributes.left):0,top:e.attributes.top?parseFloat(e.attributes.top):0},e.attributes.right!==e.attributes.left&&(t.center.right=e.attributes.right?parseFloat(e.attributes.right):0),e.attributes.bottom!==e.attributes.top&&(t.center.bottom=e.attributes.bottom?parseFloat(e.attributes.bottom):0)),!0}case`stop`:return this.parser=this.map.stop,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.model.stops.push(this.parser.model),this.parser=void 0),!0):!1}},Ht=class e extends L{constructor(){super(),this.map={patternFill:new Bt,gradientFill:new Vt}}get tag(){return`fill`}render(e,t){switch(e.addRollback(),e.openNode(`fill`),t.type){case`pattern`:this.map.patternFill.render(e,t);break;case`gradient`:this.map.gradientFill.render(e,t);break;default:e.rollback();return}e.closeNode(),e.commit()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`fill`:return this.model={},!0;default:return this.parser=this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.model=this.parser.model,this.model.type=this.parser.name,this.parser=void 0),!0):!1}validStyle(t){return e.validPatternValues[t]}static{this.validPatternValues=[`none`,`solid`,`darkVertical`,`darkGray`,`mediumGray`,`lightGray`,`gray125`,`gray0625`,`darkHorizontal`,`darkVertical`,`darkDown`,`darkUp`,`darkGrid`,`darkTrellis`,`lightHorizontal`,`lightVertical`,`lightDown`,`lightUp`,`lightGrid`,`lightTrellis`,`lightGrid`].reduce((e,t)=>(e[t]=!0,e),{})}static{this.StopXform=zt}static{this.PatternFillXform=Bt}static{this.GradientFillXform=Vt}},Ut=class e extends L{constructor(e){super(),this.name=e,this.map={color:new z}}get tag(){return this.name}render(e,t,n){let r=t&&t.color||n||this.defaultColor;e.openNode(this.name),t&&t.style&&(e.addAttribute(`style`,t.style),r&&this.map.color.render(e,r)),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.name:{let{style:t}=e.attributes;return t?this.model={style:t}:this.model=void 0,!0}case`color`:return this.parser=this.map.color,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):(e===this.name&&this.map.color.model&&(this.model||={},this.model.color=this.map.color.model),!1)}validStyle(t){return e.validStyleValues[t]}static{this.validStyleValues=[`thin`,`dashed`,`dotted`,`dashDot`,`hair`,`dashDotDot`,`slantDashDot`,`mediumDashed`,`mediumDashDotDot`,`mediumDashDot`,`medium`,`double`,`thick`].reduce((e,t)=>(e[t]=!0,e),{})}},Wt=class extends L{constructor(){super(),this.map={top:new Ut(`top`),left:new Ut(`left`),bottom:new Ut(`bottom`),right:new Ut(`right`),diagonal:new Ut(`diagonal`)}}render(e,t){let{color:n}=t;e.openNode(`border`),t.diagonal&&t.diagonal.style&&(t.diagonal.up&&e.addAttribute(`diagonalUp`,`1`),t.diagonal.down&&e.addAttribute(`diagonalDown`,`1`));let r=(r,i)=>{let a=r;a&&!a.color&&t.color&&(a={...a,color:t.color}),i.render(e,a,n)};r(t.left,this.map.left),r(t.right,this.map.right),r(t.top,this.map.top),r(t.bottom,this.map.bottom),r(t.diagonal,this.map.diagonal),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`border`:return this.reset(),this.diagonalUp=A(e.attributes.diagonalUp),this.diagonalDown=A(e.attributes.diagonalDown),!0;default:return this.parser=this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;if(e===`border`){let e=this.model={},t=(t,n,r)=>{n&&(r&&Object.assign(n,r),e[t]=n)};t(`left`,this.map.left.model),t(`right`,this.map.right.model),t(`top`,this.map.top.model),t(`bottom`,this.map.bottom.model),t(`diagonal`,this.map.diagonal.model,{up:this.diagonalUp,down:this.diagonalDown})}return!1}};let Gt={0:{f:`General`},1:{f:`0`},2:{f:`0.00`},3:{f:`#,##0`},4:{f:`#,##0.00`},9:{f:`0%`},10:{f:`0.00%`},11:{f:`0.00E+00`},12:{f:`# ?/?`},13:{f:`# ??/??`},14:{f:`mm-dd-yy`},15:{f:`d-mmm-yy`},16:{f:`d-mmm`},17:{f:`mmm-yy`},18:{f:`h:mm AM/PM`},19:{f:`h:mm:ss AM/PM`},20:{f:`h:mm`},21:{f:`h:mm:ss`},22:{f:`m/d/yy "h":mm`},27:{"zh-tw":`[$-404]e/m/d`,"zh-cn":`yyyy"年"m"月"`,"ja-jp":`[$-411]ge.m.d`,"ko-kr":`yyyy"年" mm"月" dd"日"`},28:{"zh-tw":`[$-404]e"年"m"月"d"日"`,"zh-cn":`m"月"d"日"`,"ja-jp":`[$-411]ggge"年"m"月"d"日"`,"ko-kr":`mm-dd`},29:{"zh-tw":`[$-404]e"年"m"月"d"日"`,"zh-cn":`m"月"d"日"`,"ja-jp":`[$-411]ggge"年"m"月"d"日"`,"ko-kr":`mm-dd`},30:{"zh-tw":`m/d/yy `,"zh-cn":`m-d-yy`,"ja-jp":`m/d/yy`,"ko-kr":`mm-dd-yy`},31:{"zh-tw":`yyyy"年"m"月"d"日"`,"zh-cn":`yyyy"年"m"月"d"日"`,"ja-jp":`yyyy"年"m"月"d"日"`,"ko-kr":`yyyy"년" mm"월" dd"일"`},32:{"zh-tw":`hh"時"mm"分"`,"zh-cn":`h"时"mm"分"`,"ja-jp":`h"時"mm"分"`,"ko-kr":`h"시" mm"분"`},33:{"zh-tw":`hh"時"mm"分"ss"秒"`,"zh-cn":`h"时"mm"分"ss"秒"`,"ja-jp":`h"時"mm"分"ss"秒"`,"ko-kr":`h"시" mm"분" ss"초"`},34:{"zh-tw":`上午/下午 hh"時"mm"分"`,"zh-cn":`上午/下午 h"时"mm"分"`,"ja-jp":`yyyy"年"m"月"`,"ko-kr":`yyyy-mm-dd`},35:{"zh-tw":`上午/下午 hh"時"mm"分"ss"秒"`,"zh-cn":`上午/下午 h"时"mm"分"ss"秒"`,"ja-jp":`m"月"d"日"`,"ko-kr":`yyyy-mm-dd`},36:{"zh-tw":`[$-404]e/m/d`,"zh-cn":`yyyy"年"m"月"`,"ja-jp":`[$-411]ge.m.d`,"ko-kr":`yyyy"年" mm"月" dd"日"`},37:{f:`#,##0 ;(#,##0)`},38:{f:`#,##0 ;[Red](#,##0)`},39:{f:`#,##0.00 ;(#,##0.00)`},40:{f:`#,##0.00 ;[Red](#,##0.00)`},45:{f:`mm:ss`},46:{f:`[h]:mm:ss`},47:{f:`mmss.0`},48:{f:`##0.0E+0`},49:{f:`@`},50:{"zh-tw":`[$-404]e/m/d`,"zh-cn":`yyyy"年"m"月"`,"ja-jp":`[$-411]ge.m.d`,"ko-kr":`yyyy"年" mm"月" dd"日"`},51:{"zh-tw":`[$-404]e"年"m"月"d"日"`,"zh-cn":`m"月"d"日"`,"ja-jp":`[$-411]ggge"年"m"月"d"日"`,"ko-kr":`mm-dd`},52:{"zh-tw":`上午/下午 hh"時"mm"分"`,"zh-cn":`yyyy"年"m"月"`,"ja-jp":`yyyy"年"m"月"`,"ko-kr":`yyyy-mm-dd`},53:{"zh-tw":`上午/下午 hh"時"mm"分"ss"秒"`,"zh-cn":`m"月"d"日"`,"ja-jp":`m"月"d"日"`,"ko-kr":`yyyy-mm-dd`},54:{"zh-tw":`[$-404]e"年"m"月"d"日"`,"zh-cn":`m"月"d"日"`,"ja-jp":`[$-411]ggge"年"m"月"d"日"`,"ko-kr":`mm-dd`},55:{"zh-tw":`上午/下午 hh"時"mm"分"`,"zh-cn":`上午/下午 h"时"mm"分"`,"ja-jp":`yyyy"年"m"月"`,"ko-kr":`yyyy-mm-dd`},56:{"zh-tw":`上午/下午 hh"時"mm"分"ss"秒"`,"zh-cn":`上午/下午 h"时"mm"分"ss"秒"`,"ja-jp":`m"月"d"日"`,"ko-kr":`yyyy-mm-dd`},57:{"zh-tw":`[$-404]e/m/d`,"zh-cn":`yyyy"年"m"月"`,"ja-jp":`[$-411]ge.m.d`,"ko-kr":`yyyy"年" mm"月" dd"日"`},58:{"zh-tw":`[$-404]e"年"m"月"d"日"`,"zh-cn":`m"月"d"日"`,"ja-jp":`[$-411]ggge"年"m"月"d"日"`,"ko-kr":`mm-dd`},59:{"th-th":`t0`},60:{"th-th":`t0.00`},61:{"th-th":`t#,##0`},62:{"th-th":`t#,##0.00`},67:{"th-th":`t0%`},68:{"th-th":`t0.00%`},69:{"th-th":`t# ?/?`},70:{"th-th":`t# ??/??`},81:{"th-th":`d/m/bb`}};function Kt(){let e={};return Object.entries(Gt).forEach(([t,n])=>{n.f&&(e[n.f]=parseInt(t,10))}),e}let qt=Kt();var Jt=class extends L{constructor(e,t){super(),this.id=e,this.formatCode=t}get tag(){return`numFmt`}render(e,t){e.leafNode(`numFmt`,{numFmtId:t.id,formatCode:t.formatCode})}parseOpen(e){switch(e.name){case`numFmt`:return this.model={id:parseInt(e.attributes.numFmtId,10),formatCode:e.attributes.formatCode.replace(/[\\](.)/g,`$1`)},!0;default:return!1}}parseText(){}parseClose(){return!1}static getDefaultFmtId(e){return qt[e]}static getDefaultFmtCode(e){return Gt[e]&&Gt[e].f}};let Yt={ReadingOrder:{LeftToRight:1,RightToLeft:2}},Xt={horizontalValues:[`left`,`center`,`right`,`fill`,`centerContinuous`,`distributed`,`justify`].reduce((e,t)=>(e[t]=!0,e),{}),horizontal(e){return this.horizontalValues[e]?e:void 0},verticalValues:[`top`,`middle`,`bottom`,`distributed`,`justify`].reduce((e,t)=>(e[t]=!0,e),{}),vertical(e){return e===`middle`?`center`:this.verticalValues[e]?e:void 0},wrapText(e){return e?!0:void 0},shrinkToFit(e){return e?!0:void 0},textRotation(e){switch(e){case`vertical`:return e;default:{let t=Ae(e);return t!==void 0&&t>=-90&&t<=90?t:void 0}}},indent(e){let t=Ae(e);return Math.max(0,t)},readingOrder(e){switch(e){case`ltr`:return Yt.ReadingOrder.LeftToRight;case`rtl`:return Yt.ReadingOrder.RightToLeft;default:return}}},Zt={toXml(e){let t=Xt.textRotation(e);if(t){if(t===`vertical`)return 255;let e=Math.round(t);if(e>=0&&e<=90)return e;if(e<0&&e>=-90)return 90-e}},toModel(e){let t=Ae(e);if(t!==void 0){if(t===255)return`vertical`;if(t>=0&&t<=90)return t;if(t>90&&t<=180)return 90-t}}};var Qt=class extends L{get tag(){return`alignment`}render(e,t){e.addRollback(),e.openNode(`alignment`);let n=!1;function r(t,r){r&&(e.addAttribute(t,r),n=!0)}r(`horizontal`,Xt.horizontal(t.horizontal)),r(`vertical`,Xt.vertical(t.vertical)),r(`wrapText`,Xt.wrapText(t.wrapText)?`1`:!1),r(`shrinkToFit`,Xt.shrinkToFit(t.shrinkToFit)?`1`:!1),r(`indent`,Xt.indent(t.indent)),r(`textRotation`,Zt.toXml(t.textRotation)),r(`readingOrder`,Xt.readingOrder(t.readingOrder)),e.closeNode(),n?e.commit():e.rollback()}parseOpen(e){let t={},n=!1;function r(e,r,i){e&&(t[r]=i,n=!0)}r(e.attributes.horizontal,`horizontal`,e.attributes.horizontal),r(e.attributes.vertical,`vertical`,e.attributes.vertical===`center`?`middle`:e.attributes.vertical),r(e.attributes.wrapText,`wrapText`,A(e.attributes.wrapText)),r(e.attributes.shrinkToFit,`shrinkToFit`,A(e.attributes.shrinkToFit)),r(e.attributes.indent,`indent`,parseInt(e.attributes.indent,10)),r(e.attributes.textRotation,`textRotation`,Zt.toModel(e.attributes.textRotation)),r(e.attributes.readingOrder,`readingOrder`,e.attributes.readingOrder===`2`?`rtl`:`ltr`),this.model=n?t:null}parseText(){}parseClose(){return!1}};let $t={boolean(e,t){return e===void 0?t:e}};var en=class extends L{get tag(){return`protection`}render(e,t){e.addRollback(),e.openNode(`protection`);let n=!1;function r(t,r){r!==void 0&&(e.addAttribute(t,r),n=!0)}r(`locked`,$t.boolean(t.locked,!0)?void 0:`0`),r(`hidden`,$t.boolean(t.hidden,!1)?`1`:void 0),e.closeNode(),n?e.commit():e.rollback()}parseOpen(e){let t={locked:e.attributes.locked!==`0`,hidden:e.attributes.hidden===`1`};this.model=!t.locked||t.hidden?t:null}parseText(){}parseClose(){return!1}},tn=class extends L{constructor(e){super(),this.xfId=!!(e&&e.xfId),this.map={alignment:new Qt,protection:new en}}get tag(){return`xf`}render(e,t){e.openNode(`xf`,{numFmtId:t.numFmtId||0,fontId:t.fontId||0,fillId:t.fillId||0,borderId:t.borderId||0}),this.xfId&&e.addAttribute(`xfId`,t.xfId||0),t.numFmtId&&e.addAttribute(`applyNumberFormat`,`1`),t.fontId&&e.addAttribute(`applyFont`,`1`),t.fillId&&e.addAttribute(`applyFill`,`1`),t.borderId&&e.addAttribute(`applyBorder`,`1`),t.alignment&&e.addAttribute(`applyAlignment`,`1`),t.protection&&e.addAttribute(`applyProtection`,`1`),t.alignment&&this.map.alignment.render(e,t.alignment),t.protection&&this.map.protection.render(e,t.protection),t.checkbox&&t.xfComplementIndex!==void 0&&(e.openNode(`extLst`),e.openNode(`ext`,{"xmlns:xfpb":`http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag`,uri:`{C7286773-470A-42A8-94C5-96B5CB345126}`}),e.leafNode(`xfpb:xfComplement`,{i:t.xfComplementIndex}),e.closeNode(),e.closeNode()),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`xf`:return this.model={numFmtId:parseInt(e.attributes.numFmtId,10),fontId:parseInt(e.attributes.fontId,10),fillId:parseInt(e.attributes.fillId,10),borderId:parseInt(e.attributes.borderId,10)},this.xfId&&(this.model.xfId=parseInt(e.attributes.xfId,10)),!0;case`alignment`:return this.parser=this.map.alignment,this.parser.parseOpen(e),!0;case`protection`:return this.parser=this.map.protection,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.map.protection===this.parser?this.model.protection=this.parser.model:this.model.alignment=this.parser.model,this.parser=void 0),!0):e!==`xf`}},nn=class extends L{constructor(){super(),this.map={alignment:new Qt,border:new Wt,fill:new Ht,font:new Rt,numFmt:new Jt,protection:new en}}get tag(){return`dxf`}render(e,t){if(e.openNode(this.tag),t.font&&this.map.font.render(e,t.font),t.numFmt&&t.numFmtId){let n={id:t.numFmtId,formatCode:t.numFmt};this.map.numFmt.render(e,n)}t.fill&&this.map.fill.render(e,t.fill),t.alignment&&this.map.alignment.render(e,t.alignment),t.border&&this.map.border.render(e,t.border),t.protection&&this.map.protection.render(e,t.protection),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:return this.reset(),!0;default:return this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e),!0}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e===this.tag?(this.model={alignment:this.map.alignment.model,border:this.map.border.model,fill:this.map.fill.model,font:this.map.font.model,numFmt:this.map.numFmt.model,protection:this.map.protection.model},!1):!0}},V=class e extends L{constructor(t){super(),this.map={numFmts:new R({tag:`numFmts`,count:!0,childXform:new Jt}),fonts:new R({tag:`fonts`,count:!0,childXform:new Rt,$:{"x14ac:knownFonts":1}}),fills:new R({tag:`fills`,count:!0,childXform:new Ht}),borders:new R({tag:`borders`,count:!0,childXform:new Wt}),cellStyleXfs:new R({tag:`cellStyleXfs`,count:!0,childXform:new tn}),cellXfs:new R({tag:`cellXfs`,count:!0,childXform:new tn({xfId:!0})}),dxfs:new R({tag:`dxfs`,always:!0,count:!0,childXform:new nn}),numFmt:new Jt,font:new Rt,fill:new Ht,border:new Wt,style:new tn({xfId:!0}),cellStyles:e.STATIC_XFORMS.cellStyles,tableStyles:e.STATIC_XFORMS.tableStyles,extLst:e.STATIC_XFORMS.extLst},t&&this.init()}initIndex(){this.index={style:{},numFmt:{},numFmtNextId:164,font:{},border:{},fill:{}}}init(){this.model={styles:[],numFmts:[],fonts:[],borders:[],fills:[],dxfs:[]},this.initIndex(),this._addBorder({}),this._addStyle({numFmtId:0,fontId:0,fillId:0,borderId:0,xfId:0}),this._addFill({type:`pattern`,pattern:`none`}),this._addFill({type:`pattern`,pattern:`gray125`}),this.weakMap=new WeakMap,this._hasCheckboxes=!1}render(t,n){let r=n||this.model;t.openXml(F.StdDocAttributes),t.openNode(`styleSheet`,e.STYLESHEET_ATTRIBUTES),this.index?(r.numFmts&&r.numFmts.length&&(t.openNode(`numFmts`,{count:r.numFmts.length}),r.numFmts.forEach(e=>{t.writeXml(e)}),t.closeNode()),r.fonts.length||this._addFont({size:11,color:{theme:1},name:`Calibri`,family:2,scheme:`minor`}),t.openNode(`fonts`,{count:r.fonts.length,"x14ac:knownFonts":1}),r.fonts.forEach(e=>{t.writeXml(e)}),t.closeNode(),t.openNode(`fills`,{count:r.fills.length}),r.fills.forEach(e=>{t.writeXml(e)}),t.closeNode(),t.openNode(`borders`,{count:r.borders.length}),r.borders.forEach(e=>{t.writeXml(e)}),t.closeNode(),this.map.cellStyleXfs.render(t,[{numFmtId:0,fontId:0,fillId:0,borderId:0,xfId:0}]),t.openNode(`cellXfs`,{count:r.styles.length}),r.styles.forEach(e=>{t.writeXml(e)}),t.closeNode()):(this.map.numFmts.render(t,r.numFmts),this.map.fonts.render(t,r.fonts),this.map.fills.render(t,r.fills),this.map.borders.render(t,r.borders),this.map.cellStyleXfs.render(t,[{numFmtId:0,fontId:0,fillId:0,borderId:0,xfId:0}]),this.map.cellXfs.render(t,r.styles)),e.STATIC_XFORMS.cellStyles.render(t),this.map.dxfs.render(t,r.dxfs),e.STATIC_XFORMS.tableStyles.render(t),e.STATIC_XFORMS.extLst.render(t),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`styleSheet`:return this.initIndex(),!0;default:return this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e),!0}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case`styleSheet`:{this.model={};let e=(e,t)=>{t.model&&t.model.length&&(this.model[e]=t.model)};if(e(`numFmts`,this.map.numFmts),e(`fonts`,this.map.fonts),e(`fills`,this.map.fills),e(`borders`,this.map.borders),e(`styles`,this.map.cellXfs),e(`dxfs`,this.map.dxfs),this.index={model:[],numFmt:{}},this.model.numFmts){let e=this.index.numFmt;this.model.numFmts.forEach(t=>{e[t.id]=t.formatCode})}return!1}default:return!0}}addStyleModel(e,t){if(!e)return 0;this.model.fonts.length||this._addFont({size:11,color:{theme:1},name:`Calibri`,family:2,scheme:`minor`});let n=t||u.ValueType.Number;if(n!==u.ValueType.Checkbox&&this.weakMap&&this.weakMap.has(e))return this.weakMap.get(e);let r={};if(e.numFmt)r.numFmtId=this._addNumFmtStr(e.numFmt);else switch(n){case u.ValueType.Number:r.numFmtId=this._addNumFmtStr(`General`);break;case u.ValueType.Date:r.numFmtId=this._addNumFmtStr(`mm-dd-yy`);break;default:break}e.font&&(r.fontId=this._addFont(e.font)),e.border&&(r.borderId=this._addBorder(e.border)),e.fill&&(r.fillId=this._addFill(e.fill)),e.alignment&&(r.alignment=e.alignment),e.protection&&(r.protection=e.protection),n===u.ValueType.Checkbox&&(this._hasCheckboxes=!0,r.alignment=r.alignment||{},r.checkbox=!0,r.xfComplementIndex=0);let i=this._addStyle(r);return n!==u.ValueType.Checkbox&&this.weakMap&&this.weakMap.set(e,i),i}getStyleModel(e){let t=this.model.styles[e];if(!t)return null;let n=this.index.model[e];if(n)return n;if(n=this.index.model[e]={},t.numFmtId){let e=this.index.numFmt[t.numFmtId]||Jt.getDefaultFmtCode(t.numFmtId);e&&(n.numFmt=e)}function r(e,t,r){if(r||r===0){let i=t[r];i&&(n[e]=i)}}return r(`font`,this.model.fonts,t.fontId),r(`border`,this.model.borders,t.borderId),r(`fill`,this.model.fills,t.fillId),t.alignment&&(n.alignment=t.alignment),t.protection&&(n.protection=t.protection),n}addDxfStyle(e){return e.numFmt&&(e.numFmtId=this._addNumFmtStr(e.numFmt)),this.model.dxfs.push(e),this.model.dxfs.length-1}getDxfStyle(e){return this.model.dxfs[e]}get hasCheckboxes(){return!!this._hasCheckboxes}_addStyle(e){let t=this.map.style.toXml(e),n=this.index.style[t];return n===void 0&&(n=this.index.style[t]=this.model.styles.length,this.model.styles.push(t)),n}_addNumFmtStr(e){let t=Jt.getDefaultFmtId(e);if(t!==void 0||(t=this.index.numFmt[e],t!==void 0))return t;t=this.index.numFmt[e]=164+this.model.numFmts.length;let n=this.map.numFmt.toXml({id:t,formatCode:e});return this.model.numFmts.push(n),t}_addFont(e){let t=this.map.font.toXml(e),n=this.index.font[t];return n===void 0&&(n=this.index.font[t]=this.model.fonts.length,this.model.fonts.push(t)),n}_addBorder(e){let t=this.map.border.toXml(e),n=this.index.border[t];return n===void 0&&(n=this.index.border[t]=this.model.borders.length,this.model.borders.push(t)),n}_addFill(e){let t=this.map.fill.toXml(e),n=this.index.fill[t];return n===void 0&&(n=this.index.fill[t]=this.model.fills.length,this.model.fills.push(t)),n}static{this.STYLESHEET_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`,"xmlns:mc":`http://schemas.openxmlformats.org/markup-compatibility/2006`,"mc:Ignorable":`x14ac x16r2`,"xmlns:x14ac":`http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac`,"xmlns:x16r2":`http://schemas.microsoft.com/office/spreadsheetml/2015/02/main`}}static{this.STATIC_XFORMS={cellStyles:new Pt({tag:`cellStyles`,$:{count:1},c:[{tag:`cellStyle`,$:{name:`Normal`,xfId:0,builtinId:0}}]}),dxfs:new Pt({tag:`dxfs`,$:{count:0}}),tableStyles:new Pt({tag:`tableStyles`,$:{count:0,defaultTableStyle:`TableStyleMedium2`,defaultPivotStyle:`PivotStyleLight16`}}),extLst:new Pt({tag:`extLst`,c:[{tag:`ext`,$:{uri:`{EB79DEF2-80B8-43e5-95BD-54CBDDF9020C}`,"xmlns:x14":`http://schemas.microsoft.com/office/spreadsheetml/2009/9/main`},c:[{tag:`x14:slicerStyles`,$:{defaultSlicerStyle:`SlicerStyleLight1`}}]},{tag:`ext`,$:{uri:`{9260A510-F301-46a8-8635-F512D64BE5F5}`,"xmlns:x15":`http://schemas.microsoft.com/office/spreadsheetml/2010/11/main`},c:[{tag:`x15:timelineStyles`,$:{defaultTimelineStyle:`TimeSlicerStyleLight1`}}]}]})}}};V.Mock=class extends V{constructor(){super(),this.model={styles:[{numFmtId:0,fontId:0,fillId:0,borderId:0,xfId:0}],numFmts:[],fonts:[{size:11,color:{theme:1},name:`Calibri`,family:2,scheme:`minor`}],borders:[{}],fills:[{type:`pattern`,pattern:`none`},{type:`pattern`,pattern:`gray125`}]}}parseStream(e){return e.autodrain(),Promise.resolve()}addStyleModel(e,t){switch(t){case u.ValueType.Checkbox:throw Error(`Checkbox cells require styles to be enabled (useStyles: true)`);case u.ValueType.Date:return this.dateStyleId;default:return 0}}get hasCheckboxes(){return!1}get dateStyleId(){if(!this._dateStyleId){let e={numFmtId:Jt.getDefaultFmtId(`mm-dd-yy`)};this._dateStyleId=this.model.styles.length,this.model.styles.push(e)}return this._dateStyleId}getStyleModel(){return{}}};var rn=class extends L{constructor(e){super(),this.tag=e.tag,this.attr=e.attr,this.attrs=e.attrs,this.text=[],this._format=e.format||function(e){try{return Number.isNaN(e.getTime())?``:e.toISOString()}catch{return``}},this._parse=e.parse||function(e){return new Date(e)}}render(e,t){t&&(e.openNode(this.tag),this.attrs&&e.addAttributes(this.attrs),this.attr?e.addAttribute(this.attr,this._format(t)):e.writeText(this._format(t)),e.closeNode())}parseOpen(e){e.name===this.tag&&(this.attr?this.model=this._parse(e.attributes[this.attr]):this.text=[])}parseText(e){this.attr||this.text.push(e)}parseClose(){return this.attr||(this.model=this._parse(this.text.join(``))),!1}},an=class e extends L{constructor(){super(),this.map={"dc:creator":new B({tag:`dc:creator`}),"dc:title":new B({tag:`dc:title`}),"dc:subject":new B({tag:`dc:subject`}),"dc:description":new B({tag:`dc:description`}),"dc:identifier":new B({tag:`dc:identifier`}),"dc:language":new B({tag:`dc:language`}),"cp:keywords":new B({tag:`cp:keywords`}),"cp:category":new B({tag:`cp:category`}),"cp:lastModifiedBy":new B({tag:`cp:lastModifiedBy`}),"cp:lastPrinted":new rn({tag:`cp:lastPrinted`,format:e.DateFormat}),"cp:revision":new It({tag:`cp:revision`}),"cp:version":new B({tag:`cp:version`}),"cp:contentStatus":new B({tag:`cp:contentStatus`}),"cp:contentType":new B({tag:`cp:contentType`}),"dcterms:created":new rn({tag:`dcterms:created`,attrs:e.DateAttrs,format:e.DateFormat}),"dcterms:modified":new rn({tag:`dcterms:modified`,attrs:e.DateAttrs,format:e.DateFormat})}}render(t,n){t.openXml(F.StdDocAttributes),t.openNode(`cp:coreProperties`,e.CORE_PROPERTY_ATTRIBUTES),this.map[`dc:creator`].render(t,n.creator),this.map[`dc:title`].render(t,n.title),this.map[`dc:subject`].render(t,n.subject),this.map[`dc:description`].render(t,n.description),this.map[`dc:identifier`].render(t,n.identifier),this.map[`dc:language`].render(t,n.language),this.map[`cp:keywords`].render(t,n.keywords),this.map[`cp:category`].render(t,n.category),this.map[`cp:lastModifiedBy`].render(t,n.lastModifiedBy),this.map[`cp:lastPrinted`].render(t,n.lastPrinted),this.map[`cp:revision`].render(t,n.revision),this.map[`cp:version`].render(t,n.version),this.map[`cp:contentStatus`].render(t,n.contentStatus),this.map[`cp:contentType`].render(t,n.contentType),this.map[`dcterms:created`].render(t,n.created),this.map[`dcterms:modified`].render(t,n.modified),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`cp:coreProperties`:case`coreProperties`:return!0;default:if(this.parser=this.map[e.name],this.parser)return this.parser.parseOpen(e),!0;throw Error(`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case`cp:coreProperties`:case`coreProperties`:return this.model={creator:this.map[`dc:creator`].model,title:this.map[`dc:title`].model,subject:this.map[`dc:subject`].model,description:this.map[`dc:description`].model,identifier:this.map[`dc:identifier`].model,language:this.map[`dc:language`].model,keywords:this.map[`cp:keywords`].model,category:this.map[`cp:category`].model,lastModifiedBy:this.map[`cp:lastModifiedBy`].model,lastPrinted:this.map[`cp:lastPrinted`].model,revision:this.map[`cp:revision`].model,contentStatus:this.map[`cp:contentStatus`].model,contentType:this.map[`cp:contentType`].model,created:this.map[`dcterms:created`].model,modified:this.map[`dcterms:modified`].model},!1;default:throw Error(`Unexpected xml node in parseClose: ${e}`)}}static{this.DateFormat=function(e){return e.toISOString().replace(/[.]\d{3}/,``)}}static{this.DateAttrs={"xsi:type":`dcterms:W3CDTF`}}static{this.CORE_PROPERTY_ATTRIBUTES={"xmlns:cp":`http://schemas.openxmlformats.org/package/2006/metadata/core-properties`,"xmlns:dc":`http://purl.org/dc/elements/1.1/`,"xmlns:dcterms":`http://purl.org/dc/terms/`,"xmlns:dcmitype":`http://purl.org/dc/dcmitype/`,"xmlns:xsi":`http://www.w3.org/2001/XMLSchema-instance`}}},on=class extends L{get tag(){return`t`}render(e,t){e.openNode(`t`),/^\s|\n|\s$/.test(t)&&e.addAttribute(`xml:space`,`preserve`),e.writeText(t),e.closeNode()}parseOpen(e){switch(e.name){case`t`:return this._text=[],this.model=``,!0;default:return!1}}parseText(e){this._text.push(e),this.model=this._text.join(``).replace(/_x([0-9A-F]{4})_/g,(e,t)=>String.fromCharCode(parseInt(t,16)))}parseClose(){return!1}},sn=class e extends L{constructor(e){super(),this.model=e}get tag(){return`r`}get textXform(){return this._textXform||=new on}get fontXform(){return this._fontXform||=new Rt(e.FONT_OPTIONS)}render(e,t){let n=t||this.model;e.openNode(`r`),n.font&&this.fontXform.render(e,n.font),this.textXform.render(e,n.text),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`r`:return this.model={},!0;case`t`:return this.parser=this.textXform,this.parser.parseOpen(e),!0;case`rPr`:return this.parser=this.fontXform,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){switch(e){case`r`:return!1;case`t`:return this.model.text=this.parser.model,this.parser=void 0,!0;case`rPr`:return this.model.font=this.parser.model,this.parser=void 0,!0;default:return this.parser&&this.parser.parseClose(e),!0}}static{this.FONT_OPTIONS={tagName:`rPr`,fontNameTag:`rFont`}}},cn=class extends L{constructor(){super(),this.map={r:new sn,t:new on}}get tag(){return`rPh`}render(e,t){if(e.openNode(this.tag,{sb:t.sb||0,eb:t.eb||0}),t&&Object.prototype.hasOwnProperty.call(t,`richText`)&&t.richText){let{r:n}=this.map;t.richText.forEach(t=>{n.render(e,t)})}else t&&this.map.t.render(e,t.text);e.closeNode()}parseOpen(e){let{name:t}=e;return this.parser?(this.parser.parseOpen(e),!0):t===this.tag?(this.model={sb:parseInt(e.attributes.sb,10),eb:parseInt(e.attributes.eb,10)},!0):(this.parser=this.map[t],this.parser?(this.parser.parseOpen(e),!0):!1)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser){if(!this.parser.parseClose(e)){switch(e){case`r`:{let e=this.model.richText;e||=this.model.richText=[],e.push(this.parser.model);break}case`t`:this.model.text=this.parser.model;break;default:break}this.parser=void 0}return!0}switch(e){case this.tag:return!1;default:return!0}}},ln=class extends L{constructor(e){super(),this.model=e,this.map={r:new sn,t:new on,rPh:new cn}}get tag(){return`si`}render(e,t){e.openNode(this.tag),t&&typeof t==`object`&&Object.prototype.hasOwnProperty.call(t,`richText`)&&t.richText?t.richText.length?t.richText.forEach(t=>{this.map.r.render(e,t)}):this.map.t.render(e,``):t!=null&&this.map.t.render(e,t),e.closeNode()}parseOpen(e){let{name:t}=e;return this.parser?(this.parser.parseOpen(e),!0):t===this.tag?(this.model={},!0):(this.parser=this.map[t],this.parser?(this.parser.parseOpen(e),!0):!1)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser){if(!this.parser.parseClose(e)){switch(e){case`r`:{let e=this.model.richText;e||=this.model.richText=[],e.push(this.parser.model);break}case`t`:this.model=this.parser.model;break;default:break}this.parser=void 0}return!0}switch(e){case this.tag:return!1;default:return!0}}},un=class extends L{constructor(e){super(),this.model=e||{values:[],count:0},this.hash=Object.create(null),this.rich=Object.create(null)}get sharedStringXform(){return this._sharedStringXform||=new ln}get values(){return this.model.values}get uniqueCount(){return this.model.values.length}get count(){return this.model.count}getString(e){return this.model.values[e]}add(e){return e.richText?this.addRichText(e):this.addText(e)}addText(e){let t=this.hash[e];return t===void 0&&(t=this.hash[e]=this.model.values.length,this.model.values.push(e)),this.model.count++,t}addRichText(e){let t=this.sharedStringXform.toXml(e),n=this.rich[t];return n===void 0&&(n=this.rich[t]=this.model.values.length,this.model.values.push(e)),this.model.count++,n}render(e,t){let n=t||this._values;e.openXml(F.StdDocAttributes),e.openNode(`sst`,{xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`,count:n.count,uniqueCount:n.values.length});let r=this.sharedStringXform;n.values.forEach(t=>{r.render(e,t)}),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`sst`:return!0;case`si`:return this.parser=this.sharedStringXform,this.parser.parseOpen(e),!0;default:throw Error(`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.values.push(this.parser.model),this.model.count++,this.parser=void 0),!0;switch(e){case`sst`:return!1;default:throw Error(`Unexpected xml node in parseClose: ${e}`)}}},dn=class extends L{render(e,t){e.leafNode(`Relationship`,t)}parseOpen(e){switch(e.name){case`Relationship`:return this.model=e.attributes,!0;default:return!1}}parseText(){}parseClose(){return!1}},H=class e extends L{constructor(){super(),this.map={Relationship:new dn}}render(t,n){let r=n||this._values;t.openXml(F.StdDocAttributes),t.openNode(`Relationships`,e.RELATIONSHIPS_ATTRIBUTES),r.forEach(e=>{this.map.Relationship.render(t,e)}),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`Relationships`:return this.model=[],!0;default:if(this.parser=this.map[e.name],this.parser)return this.parser.parseOpen(e),!0;throw Error(`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.push(this.parser.model),this.parser=void 0),!0;switch(e){case`Relationships`:return!1;default:throw Error(`Unexpected xml node in parseClose: ${e}`)}}static{this.RELATIONSHIPS_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/package/2006/relationships`}}};let U={contentTypes:`[Content_Types].xml`,rootRels:`_rels/.rels`,docPropsApp:`docProps/app.xml`,docPropsCore:`docProps/core.xml`,xlWorkbook:`xl/workbook.xml`,xlWorkbookRels:`xl/_rels/workbook.xml.rels`,xlSharedStrings:`xl/sharedStrings.xml`,xlStyles:`xl/styles.xml`,xlTheme1:`xl/theme/theme1.xml`,xlFeaturePropertyBag:`xl/featurePropertyBag/featurePropertyBag.xml`},fn=/^xl\/worksheets\/sheet(\d+)[.]xml$/,pn=/^xl\/worksheets\/_rels\/sheet(\d+)[.]xml[.]rels$/,mn=/^xl\/theme\/[a-zA-Z0-9]+[.]xml$/,hn=/^xl\/media\/([a-zA-Z0-9]+[.][a-zA-Z0-9]{3,4})$/,gn=/^xl\/drawings\/(drawing\d+)[.]xml$/,_n=/^xl\/drawings\/_rels\/(drawing\d+)[.]xml[.]rels$/,vn=/^xl\/drawings\/(vmlDrawing\d+)[.]vml$/,yn=/^xl\/comments(\d+)[.]xml$/,bn=/^xl\/tables\/(table\d+)[.]xml$/,xn=/^xl\/pivotTables\/(pivotTable\d+)[.]xml$/,Sn=/^xl\/pivotTables\/_rels\/(pivotTable\d+)[.]xml[.]rels$/,Cn=/^xl\/pivotCache\/(pivotCacheDefinition\d+)[.]xml$/,wn=/^xl\/pivotCache\/_rels\/(pivotCacheDefinition\d+)[.]xml[.]rels$/,Tn=/^xl\/pivotCache\/(pivotCacheRecords\d+)[.]xml$/;function En(e){return e.startsWith(`/`)?e.slice(1):e}function Dn(e){let t=fn.exec(e);if(t)return parseInt(t[1],10)}function On(e){let t=pn.exec(e);if(t)return parseInt(t[1],10)}function kn(e){return e.startsWith(`xl/media/`)}function An(e){let t=hn.exec(e);return t?t[1]:void 0}function jn(e){return mn.test(e)}function Mn(e){let t=/^xl\/theme\/([a-zA-Z0-9]+)[.]xml$/.exec(e);return t?t[1]:void 0}function Nn(e){return kn(e)||jn(e)}function Pn(e){let t=gn.exec(e);return t?t[1]:void 0}function Fn(e){let t=_n.exec(e);return t?t[1]:void 0}function In(e){let t=vn.exec(e);return t?t[1]:void 0}function Ln(e){let t=yn.exec(e);return t?t[1]:void 0}function Rn(e){let t=bn.exec(e);return t?t[1]:void 0}function zn(e){let t=xn.exec(e);return t?t[1]:void 0}function Bn(e){let t=Sn.exec(e);return t?t[1]:void 0}function Vn(e){let t=Cn.exec(e);return t?t[1]:void 0}function Hn(e){let t=wn.exec(e);return t?t[1]:void 0}function Un(e){let t=Tn.exec(e);return t?t[1]:void 0}function W(e){return e.startsWith(`/`)?e:`/${e}`}function Wn(e){return`xl/theme/${e}.xml`}function Gn(e){return`xl/media/${e}`}function Kn(e){return`xl/worksheets/sheet${e}.xml`}function qn(e){return`xl/worksheets/_rels/sheet${e}.xml.rels`}function Jn(e){return`worksheets/sheet${e}.xml`}function Yn(e){return`xl/comments${e}.xml`}function Xn(e){return`xl/${e}.xml`}function Zn(e){return`xl/drawings/vmlDrawing${e}.vml`}function Qn(e){return`xl/tables/${e}`}function $n(e){return`xl/drawings/${e}.xml`}function er(e){return`xl/drawings/_rels/${e}.xml.rels`}function tr(e){return`xl/pivotCache/pivotCacheDefinition${e}.xml`}function nr(e){return`xl/pivotCache/_rels/pivotCacheDefinition${e}.xml.rels`}function rr(e){return`xl/pivotCache/pivotCacheRecords${e}.xml`}function ir(e){return`pivotCacheRecords${e}.xml`}function ar(e){return`xl/pivotTables/pivotTable${e}.xml`}function or(e){return`xl/pivotTables/_rels/pivotTable${e}.xml.rels`}function sr(e){return`../pivotCache/pivotCacheDefinition${e}.xml`}let cr={workbookStyles:`styles.xml`,workbookSharedStrings:`sharedStrings.xml`,workbookTheme1:`theme/theme1.xml`,workbookFeaturePropertyBag:`featurePropertyBag/featurePropertyBag.xml`};function lr(e){return`pivotCache/pivotCacheDefinition${e}.xml`}function ur(e){return`../comments${e}.xml`}function dr(e){return`../drawings/vmlDrawing${e}.vml`}function fr(e){return`../drawings/${e}.xml`}function pr(e){return`../drawings/${e}.vml`}function mr(e){return`../${e}.xml`}function hr(e){return`../pivotTables/pivotTable${e}.xml`}function gr(e){return`../pivotTables/${e}.xml`}function _r(e){return`../tables/${e}`}function vr(e){return`../tables/${e}.xml`}function yr(e){return`../media/${e}`}function br(e){return`xl/ctrlProps/ctrlProp${e}.xml`}function xr(e){return`../ctrlProps/ctrlProp${e}.xml`}var Sr=class e extends L{render(t,n){t.openXml(F.StdDocAttributes),t.openNode(`Types`,e.PROPERTY_ATTRIBUTES);let r={};if((n.media||[]).forEach(e=>{if(e.type===`image`){let n=e.extension;r[n]||(r[n]=!0,t.leafNode(`Default`,{Extension:n,ContentType:`image/${n}`}))}}),t.leafNode(`Default`,{Extension:`rels`,ContentType:`application/vnd.openxmlformats-package.relationships+xml`}),t.leafNode(`Default`,{Extension:`xml`,ContentType:`application/xml`}),t.leafNode(`Override`,{PartName:W(U.xlWorkbook),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml`}),n.worksheets.forEach((e,n)=>{let r=e.fileIndex||n+1;t.leafNode(`Override`,{PartName:W(Kn(r)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml`})}),(n.pivotTables||[]).length&&(n.pivotTables||[]).forEach(e=>{let n=e.tableNumber;t.leafNode(`Override`,{PartName:W(tr(n)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheDefinition+xml`}),t.leafNode(`Override`,{PartName:W(rr(n)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheRecords+xml`}),t.leafNode(`Override`,{PartName:W(ar(n)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml`})}),t.leafNode(`Override`,{PartName:W(U.xlTheme1),ContentType:`application/vnd.openxmlformats-officedocument.theme+xml`}),t.leafNode(`Override`,{PartName:W(U.xlStyles),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml`}),n.hasCheckboxes&&t.leafNode(`Override`,{PartName:W(U.xlFeaturePropertyBag),ContentType:`application/vnd.ms-excel.featurepropertybag+xml`}),n.sharedStrings&&n.sharedStrings.count&&t.leafNode(`Override`,{PartName:W(U.xlSharedStrings),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml`}),n.tables&&n.tables.forEach(e=>{t.leafNode(`Override`,{PartName:W(Qn(e.target)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml`})}),n.drawings&&n.drawings.forEach(e=>{t.leafNode(`Override`,{PartName:W($n(e.name)),ContentType:`application/vnd.openxmlformats-officedocument.drawing+xml`})}),n.commentRefs&&(t.leafNode(`Default`,{Extension:`vml`,ContentType:`application/vnd.openxmlformats-officedocument.vmlDrawing`}),n.commentRefs.forEach(({commentName:e})=>{t.leafNode(`Override`,{PartName:W(Xn(e)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml`})})),n.formControlRefs){n.commentRefs||t.leafNode(`Default`,{Extension:`vml`,ContentType:`application/vnd.openxmlformats-officedocument.vmlDrawing`});for(let e of n.formControlRefs)t.leafNode(`Override`,{PartName:W(br(e)),ContentType:`application/vnd.ms-excel.controlproperties+xml`})}t.leafNode(`Override`,{PartName:W(U.docPropsCore),ContentType:`application/vnd.openxmlformats-package.core-properties+xml`}),t.leafNode(`Override`,{PartName:W(U.docPropsApp),ContentType:`application/vnd.openxmlformats-officedocument.extended-properties+xml`}),t.closeNode()}parseOpen(){return!1}parseText(){}parseClose(){return!1}static{this.PROPERTY_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/package/2006/content-types`}}},Cr=class extends L{render(e,t){e.openNode(`HeadingPairs`),e.openNode(`vt:vector`,{size:2,baseType:`variant`}),e.openNode(`vt:variant`),e.leafNode(`vt:lpstr`,void 0,`Worksheets`),e.closeNode(),e.openNode(`vt:variant`),e.leafNode(`vt:i4`,void 0,t.length),e.closeNode(),e.closeNode(),e.closeNode()}parseOpen(e){return e.name===`HeadingPairs`}parseText(){}parseClose(e){return e!==`HeadingPairs`}},wr=class extends L{render(e,t){e.openNode(`TitlesOfParts`),e.openNode(`vt:vector`,{size:t.length,baseType:`lpstr`}),t.forEach(t=>{e.leafNode(`vt:lpstr`,void 0,t.name)}),e.closeNode(),e.closeNode()}parseOpen(e){return e.name===`TitlesOfParts`}parseText(){}parseClose(e){return e!==`TitlesOfParts`}},Tr=class e extends L{constructor(){super(),this.map={Company:new B({tag:`Company`}),Manager:new B({tag:`Manager`}),HeadingPairs:new Cr,TitleOfParts:new wr}}render(t,n){t.openXml(F.StdDocAttributes),t.openNode(`Properties`,e.PROPERTY_ATTRIBUTES),t.leafNode(`Application`,void 0,`Microsoft Excel`),t.leafNode(`DocSecurity`,void 0,`0`),t.leafNode(`ScaleCrop`,void 0,`false`),this.map.HeadingPairs.render(t,n.worksheets),this.map.TitleOfParts.render(t,n.worksheets),this.map.Company.render(t,n.company||``),this.map.Manager.render(t,n.manager),t.leafNode(`LinksUpToDate`,void 0,`false`),t.leafNode(`SharedDoc`,void 0,`false`),t.leafNode(`HyperlinksChanged`,void 0,`false`),t.leafNode(`AppVersion`,void 0,`16.0300`),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`Properties`:return!0;default:return this.parser=this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case`Properties`:return this.model={worksheets:this.map.TitleOfParts.model,company:this.map.Company.model,manager:this.map.Manager.model},!1;default:return!0}}static{this.DateFormat=function(e){return e.toISOString().replace(/[.]\d{3,6}/,``)}}static{this.DateAttrs={"xsi:type":`dcterms:W3CDTF`}}static{this.PROPERTY_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/officeDocument/2006/extended-properties`,"xmlns:vt":`http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes`}}},Er=class extends L{constructor(){super(),this._parsedText=[]}render(e,t){e.openNode(`definedName`,{name:t.name,localSheetId:t.localSheetId}),e.writeText(t.ranges.join(`,`)),e.closeNode()}parseOpen(e){switch(e.name){case`definedName`:return this._parsedName=e.attributes.name,this._parsedLocalSheetId=e.attributes.localSheetId,this._parsedText=[],!0;default:return!1}}parseText(e){this._parsedText.push(e)}parseClose(){return this.model={name:this._parsedName,ranges:jr(this._parsedText.join(``))},this._parsedLocalSheetId!==void 0&&(this.model.localSheetId=parseInt(this._parsedLocalSheetId,10)),!1}};let Dr=/^[$]?[A-Za-z]{1,3}[$]?\d+(:[$]?[A-Za-z]{1,3}[$]?\d+)?$/,Or=/^[$]?\d+:[$]?\d+$/,kr=/^[$]?[A-Za-z]{1,3}:[$]?[A-Za-z]{1,3}$/;function Ar(e){if(e.startsWith(`{`)||e.endsWith(`}`))return!1;let t=e.split(`!`).pop()||``;if(!Dr.test(t)&&!Or.test(t)&&!kr.test(t))return!1;try{let t=n.decodeEx(e);return`row`in t&&typeof t.row==`number`||`top`in t&&typeof t.top==`number`||`left`in t&&typeof t.left==`number`}catch{return!1}}function jr(e){let t=e.trim();if(t.startsWith(`{`)&&t.endsWith(`}`))return[];let n=[],r=!1,i=``;return e.split(`,`).forEach(e=>{if(!e)return;let t=(e.match(/'/g)||[]).length;if(!t){r?i+=`${e},`:Ar(e)&&n.push(e);return}let a=t%2==0;!r&&a&&Ar(e)?n.push(e):r&&!a?(r=!1,Ar(i+e)&&n.push(i+e),i=``):(r=!0,i+=`${e},`)}),n}var Mr=class extends L{render(e,t){e.leafNode(`sheet`,{name:t.name,sheetId:t.id,state:t.state===`visible`?void 0:t.state,"r:id":t.rId})}parseOpen(e){return e.name===`sheet`?(this.model={name:De(e.attributes.name),id:parseInt(e.attributes.sheetId,10),state:e.attributes.state,rId:e.attributes[`r:id`]},!0):!1}parseText(){}parseClose(){return!1}},Nr=class extends L{render(e,t){let n={xWindow:t.x||0,yWindow:t.y||0,windowWidth:t.width||12e3,windowHeight:t.height||24e3,firstSheet:t.firstSheet,activeTab:t.activeTab};t.visibility&&t.visibility!==`visible`&&(n.visibility=t.visibility),e.leafNode(`workbookView`,n)}parseOpen(e){if(e.name===`workbookView`){let t=this.model={},n=function(e,n,r){t[e]=n===void 0?r:n},r=function(e,n,r){let i=n===void 0?r:parseInt(n,10);i!==void 0&&(t[e]=i)};return r(`x`,e.attributes.xWindow,0),r(`y`,e.attributes.yWindow,0),r(`width`,e.attributes.windowWidth,25e3),r(`height`,e.attributes.windowHeight,1e4),n(`visibility`,e.attributes.visibility,`visible`),r(`activeTab`,e.attributes.activeTab,void 0),r(`firstSheet`,e.attributes.firstSheet,void 0),!0}return!1}parseText(){}parseClose(){return!1}},Pr=class extends L{render(e,t){e.leafNode(`workbookPr`,{date1904:t.date1904?1:void 0,filterPrivacy:1})}parseOpen(e){return e.name===`workbookPr`?(this.model={date1904:e.attributes.date1904===`1`},!0):!1}parseText(){}parseClose(){return!1}},Fr=class extends L{render(e,t){e.leafNode(`calcPr`,{calcId:171027,fullCalcOnLoad:t.fullCalcOnLoad?1:void 0})}parseOpen(e){return e.name===`calcPr`?(this.model={},!0):!1}parseText(){}parseClose(){return!1}},Ir=class extends L{render(e,t){e.leafNode(`pivotCache`,{cacheId:t.cacheId,"r:id":t.rId})}parseOpen(e){return e.name===`pivotCache`?(this.model={cacheId:e.attributes.cacheId,rId:e.attributes[`r:id`]},!0):!1}parseText(){}parseClose(){return!1}},Lr=class e extends L{constructor(){super(),this.map={fileVersion:e.STATIC_XFORMS.fileVersion,workbookPr:new Pr,bookViews:new R({tag:`bookViews`,count:!1,childXform:new Nr}),sheets:new R({tag:`sheets`,count:!1,childXform:new Mr}),definedNames:new R({tag:`definedNames`,count:!1,childXform:new Er}),calcPr:new Fr,pivotCaches:new R({tag:`pivotCaches`,count:!1,childXform:new Ir})}}prepare(e){e.sheets=e.worksheets;let t=[],n=0;e.sheets.forEach(e=>{if(e.pageSetup&&e.pageSetup.printArea&&e.pageSetup.printArea.split(`&&`).forEach(r=>{let i=r.split(`:`),a={name:`_xlnm.Print_Area`,ranges:[`'${e.name}'!$${i[0]}:$${i[1]}`],localSheetId:n};t.push(a)}),e.pageSetup&&(e.pageSetup.printTitlesRow||e.pageSetup.printTitlesColumn)){let r=[];if(e.pageSetup.printTitlesColumn){let t=e.pageSetup.printTitlesColumn.split(`:`);r.push(`'${e.name}'!$${t[0]}:$${t[1]}`)}if(e.pageSetup.printTitlesRow){let t=e.pageSetup.printTitlesRow.split(`:`);r.push(`'${e.name}'!$${t[0]}:$${t[1]}`)}let i={name:`_xlnm.Print_Titles`,ranges:r,localSheetId:n};t.push(i)}n++}),t.length&&(e.definedNames=e.definedNames.concat(t)),(e.media||[]).forEach((e,t)=>{e.name=e.type+(t+1)})}render(t,n){t.openXml(F.StdDocAttributes),t.openNode(`workbook`,e.WORKBOOK_ATTRIBUTES),this.map.fileVersion.render(t),this.map.workbookPr.render(t,n.properties),this.map.bookViews.render(t,n.views),this.map.sheets.render(t,n.sheets),this.map.definedNames.render(t,n.definedNames),this.map.calcPr.render(t,n.calcProperties),this.map.pivotCaches.render(t,n.pivotTables),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`workbook`:return!0;default:return this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e),!0}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case`workbook`:return this.model={sheets:this.map.sheets.model,properties:this.map.workbookPr.model||{},views:this.map.bookViews.model,calcProperties:{}},this.map.definedNames.model&&(this.model.definedNames=this.map.definedNames.model),this.map.pivotCaches.model&&this.map.pivotCaches.model.length>0&&(this.model.pivotCaches=this.map.pivotCaches.model),!1;default:return!0}}reconcile(e){let t=(e.workbookRels||[]).reduce((e,t)=>(e[t.Id]=t,e),{}),r=[],i,a=0;(e.sheets||[]).forEach(n=>{let o=t[n.rId];o&&(i=e.worksheetHash[`xl/${o.Target.replace(/^(\s|\/xl\/)+/,``)}`],i&&(i.name=n.name,i.id=n.id,i.state=n.state,r[a++]=i))});let o=[];e.definedNames&&e.definedNames.forEach(e=>{if(e.name===`_xlnm.Print_Area`){if(i=r[e.localSheetId],i){i.pageSetup||={};let t=n.decodeEx(e.ranges[0]);i.pageSetup.printArea=i.pageSetup.printArea?`${i.pageSetup.printArea}&&${t.dimensions}`:t.dimensions}}else if(e.name===`_xlnm.Print_Titles`){if(i=r[e.localSheetId],i){i.pageSetup||={};let t=e.ranges.join(`,`),n=/\$/g,r=t.match(/\$\d+:\$\d+/);if(r&&r.length){let e=r[0];i.pageSetup.printTitlesRow=e.replace(n,``)}let a=t.match(/\$[A-Z]+:\$[A-Z]+/);if(a&&a.length){let e=a[0];i.pageSetup.printTitlesColumn=e.replace(n,``)}}}else o.push(e)}),e.definedNames=o,e.media.forEach((e,t)=>{e.index=t})}static{this.WORKBOOK_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`,"xmlns:r":`http://schemas.openxmlformats.org/officeDocument/2006/relationships`,"xmlns:mc":`http://schemas.openxmlformats.org/markup-compatibility/2006`,"mc:Ignorable":`x15`,"xmlns:x15":`http://schemas.microsoft.com/office/spreadsheetml/2010/11/main`}}static{this.STATIC_XFORMS={fileVersion:new Pt({tag:`fileVersion`,$:{appName:`xl`,lastEdited:5,lowestEdited:5,rupBuild:9303}})}}};let G={OfficeDocument:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument`,Worksheet:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet`,CalcChain:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/calcChain`,SharedStrings:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings`,Styles:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles`,Theme:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme`,Hyperlink:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink`,Image:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/image`,CoreProperties:`http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties`,ExtenderProperties:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties`,Comments:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments`,VmlDrawing:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing`,Table:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/table`,PivotCacheDefinition:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/pivotCacheDefinition`,PivotCacheRecords:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/pivotCacheRecords`,PivotTable:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/pivotTable`,FeaturePropertyBag:`http://schemas.microsoft.com/office/2022/11/relationships/FeaturePropertyBag`,CtrlProp:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/ctrlProp`};var Rr=class{constructor(){this.merges={}}add(e){if(this.merges[e.master])this.merges[e.master].expandToAddress(e.address);else{let t=`${e.master}:${e.address}`;this.merges[e.master]=new r(t)}}get mergeCells(){return Object.values(this.merges).map(e=>e.range)}reconcile(e,t){e.forEach(e=>{let r=n.decode(e);for(let e=r.top;e<=r.bottom;e++){let i=t[e-1];for(let t=r.left;t<=r.right;t++){let a=i.cells[t-1];a?a.type===u.ValueType.Merge&&(a.master=r.tl):i.cells[t]={type:u.ValueType.Null,address:n.encodeAddress(e,t)}}}})}getMasterAddress(e){let t=this.hash[e];return t&&t.tl}};function zr(e){if(e==null)return u.ValueType.Null;if(e instanceof String||typeof e==`string`)return u.ValueType.String;if(typeof e==`number`)return u.ValueType.Number;if(typeof e==`boolean`)return u.ValueType.Boolean;if(e instanceof Date)return u.ValueType.Date;if(e.text&&e.hyperlink)return u.ValueType.Hyperlink;if(e.formula)return u.ValueType.Formula;if(e.error)return u.ValueType.Error;throw Error(`I could not understand type of value`)}function Br(e){switch(e.type){case u.ValueType.Formula:return zr(e.result);default:return e.type}}var Vr=class extends L{constructor(){super(),this.richTextXform=new sn}get tag(){return`c`}prepare(e,t){let n=t.styles.addStyleModel(e.style||{},Br(e));switch(n&&(e.styleId=n),e.comment&&t.comments.push({...e.comment,ref:e.address}),e.type){case u.ValueType.String:case u.ValueType.RichText:t.sharedStrings&&(e.ssId=t.sharedStrings.add(e.value));break;case u.ValueType.Date:t.date1904&&(e.date1904=!0);break;case u.ValueType.Hyperlink:t.sharedStrings&&e.text!==void 0&&e.text!==null&&(e.ssId=t.sharedStrings.add(e.text)),t.hyperlinks.push({address:e.address,target:e.hyperlink,tooltip:e.tooltip});break;case u.ValueType.Merge:t.merges.add(e);break;case u.ValueType.Formula:if(t.date1904&&(e.date1904=!0),e.shareType===`shared`&&(e.si=t.siFormulae++),e.formula)t.formulae[e.address]=e;else if(e.sharedFormula){let n=t.formulae[e.sharedFormula];if(!n)throw Error(`Shared Formula master must exist above and or left of clone for cell ${e.address}`);n.si===void 0?(n.shareType=`shared`,n.si=t.siFormulae++,n.range=new r(n.address,e.address)):n.range&&n.range.expandToAddress(e.address),e.si=n.si}break;default:break}}renderFormula(e,t){let n=null;switch(t.shareType){case`shared`:n={t:`shared`,ref:t.ref||t.range.range,si:t.si};break;case`array`:n={t:`array`,ref:t.ref};break;default:t.si!==void 0&&(n={t:`shared`,si:t.si});break}switch(zr(t.result)){case u.ValueType.Null:e.leafNode(`f`,n,t.formula);break;case u.ValueType.String:e.addAttribute(`t`,`str`),e.leafNode(`f`,n,t.formula),e.leafNode(`v`,null,t.result);break;case u.ValueType.Number:e.leafNode(`f`,n,t.formula),e.leafNode(`v`,null,t.result);break;case u.ValueType.Boolean:e.addAttribute(`t`,`b`),e.leafNode(`f`,n,t.formula),e.leafNode(`v`,null,t.result?1:0);break;case u.ValueType.Error:e.addAttribute(`t`,`e`),e.leafNode(`f`,n,t.formula),e.leafNode(`v`,null,t.result.error);break;case u.ValueType.Date:e.leafNode(`f`,n,t.formula),e.leafNode(`v`,null,we(t.result,t.date1904));break;default:throw Error(`I could not understand type of value`)}}render(e,t){if(!(t.type===u.ValueType.Null&&!t.styleId)){switch(e.openNode(`c`),e.addAttribute(`r`,t.address),t.styleId&&e.addAttribute(`s`,t.styleId),t.type){case u.ValueType.Null:break;case u.ValueType.Number:e.leafNode(`v`,null,t.value);break;case u.ValueType.Boolean:e.addAttribute(`t`,`b`),e.leafNode(`v`,null,t.value?`1`:`0`);break;case u.ValueType.Checkbox:e.addAttribute(`t`,`b`),e.leafNode(`v`,null,t.value?`1`:`0`);break;case u.ValueType.Error:e.addAttribute(`t`,`e`),e.leafNode(`v`,null,t.value.error);break;case u.ValueType.String:case u.ValueType.RichText:t.ssId===void 0?t.value&&t.value.richText?(e.addAttribute(`t`,`inlineStr`),e.openNode(`is`),t.value.richText.forEach(t=>{this.richTextXform.render(e,t)}),e.closeNode(`is`)):(e.addAttribute(`t`,`str`),e.leafNode(`v`,null,t.value)):(e.addAttribute(`t`,`s`),e.leafNode(`v`,null,t.ssId));break;case u.ValueType.Date:e.leafNode(`v`,null,we(t.value,t.date1904));break;case u.ValueType.Hyperlink:t.ssId===void 0?(e.addAttribute(`t`,`str`),e.leafNode(`v`,null,t.text)):(e.addAttribute(`t`,`s`),e.leafNode(`v`,null,t.ssId));break;case u.ValueType.Formula:this.renderFormula(e,t);break;case u.ValueType.Merge:break;default:break}e.closeNode()}}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`c`:return this.model={address:e.attributes.r},this.t=e.attributes.t,e.attributes.s&&(this.model.styleId=parseInt(e.attributes.s,10)),!0;case`f`:return this.currentNode=`f`,this.model.si=e.attributes.si,this.model.shareType=e.attributes.t,this.model.ref=e.attributes.ref,!0;case`v`:return this.currentNode=`v`,!0;case`t`:return this.currentNode=`t`,!0;case`r`:return this.parser=this.richTextXform,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){if(this.parser){this.parser.parseText(e);return}switch(this.currentNode){case`f`:this.model.formula=this.model.formula?this.model.formula+e:e;break;case`v`:case`t`:this.model.value&&this.model.value.richText?this.model.value.richText.text=this.model.value.richText.text?this.model.value.richText.text+e:e:this.model.value=this.model.value?this.model.value+e:e;break;default:break}}parseClose(e){switch(e){case`c`:{let{model:e}=this;if(e.formula||e.shareType)e.type=u.ValueType.Formula,e.value&&=(this.t===`str`?e.result=De(e.value):this.t===`b`?e.result=parseInt(e.value,10)!==0:this.t===`e`?e.result={error:e.value}:e.result=parseFloat(e.value),void 0);else if(e.value!==void 0)switch(this.t){case`s`:e.type=u.ValueType.String,e.value=parseInt(e.value,10);break;case`str`:e.type=u.ValueType.String,e.value=De(e.value);break;case`inlineStr`:e.type=u.ValueType.String;break;case`b`:e.type=u.ValueType.Boolean,e.value=parseInt(e.value,10)!==0;break;case`e`:e.type=u.ValueType.Error,e.value={error:e.value};break;case`d`:e.type=u.ValueType.Date,e.value=new Date(e.value);break;default:e.type=u.ValueType.Number,e.value=parseFloat(e.value);break}else e.styleId?e.type=u.ValueType.Null:e.type=u.ValueType.Merge;return!1}case`f`:case`v`:case`is`:return this.currentNode=void 0,!0;case`t`:return this.parser?(this.parser.parseClose(e),!0):(this.currentNode=void 0,!0);case`r`:return this.model.value=this.model.value||{},this.model.value.richText=this.model.value.richText||[],this.model.value.richText.push(this.parser.model),this.parser=void 0,this.currentNode=void 0,!0;default:return this.parser?(this.parser.parseClose(e),!0):!1}}reconcile(e,t){let n=e.styleId&&t.styles&&t.styles.getStyleModel(e.styleId);switch(n&&(e.style=n),e.styleId!==void 0&&(e.styleId=void 0),e.type){case u.ValueType.String:typeof e.value==`number`&&t.sharedStrings&&(e.value=t.sharedStrings.getString(e.value)),e.value.richText&&(e.type=u.ValueType.RichText);break;case u.ValueType.Number:n&&je(n.numFmt)&&(e.type=u.ValueType.Date,e.value=Te(e.value,t.date1904));break;case u.ValueType.Formula:e.result!==void 0&&typeof e.result==`number`&&n&&je(n.numFmt)&&(e.result=Te(e.result,t.date1904)),e.shareType===`shared`&&(e.ref?t.formulae[e.si]=e.address:(e.sharedFormula=t.formulae[e.si],delete e.shareType),delete e.si);break;default:break}let r=t.hyperlinkMap[e.address];r&&(e.type===u.ValueType.Formula?(e.text=e.result,e.result=void 0):(e.text=e.value,e.value=void 0),e.type=u.ValueType.Hyperlink,e.hyperlink=r);let i=t.commentsMap&&t.commentsMap[e.address];i&&(e.comment=i)}},Hr=class extends L{constructor(e){super(),this.maxItems=e&&e.maxItems,this.map={c:new Vr}}get tag(){return`row`}reset(){super.reset(),this.numRowsSeen=0,this.lastCellCol=0}prepare(e,t){let n=t.styles.addStyleModel(e.style);n&&(e.styleId=n);let r=this.map.c;e.cells.forEach(e=>{r.prepare(e,t)})}render(e,t,n){if(!t)return;e.openNode(`row`),e.addAttribute(`r`,t.number),t.height&&(e.addAttribute(`ht`,t.height),e.addAttribute(`customHeight`,`1`)),t.hidden&&e.addAttribute(`hidden`,`1`),t.min>0&&t.max>0&&t.min<=t.max&&e.addAttribute(`spans`,`${t.min}:${t.max}`),t.styleId&&(e.addAttribute(`s`,t.styleId),e.addAttribute(`customFormat`,`1`)),t.outlineLevel&&e.addAttribute(`outlineLevel`,t.outlineLevel),t.collapsed&&e.addAttribute(`collapsed`,`1`);let r=this.map.c;t.cells.forEach(t=>{r.render(e,t,n)}),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===`row`){this.numRowsSeen+=1,this.lastCellCol=0;let t=e.attributes.spans?e.attributes.spans.split(`:`).map(e=>parseInt(e,10)):[void 0,void 0],n=this.model={number:e.attributes.r?parseInt(e.attributes.r,10):this.numRowsSeen,min:t[0],max:t[1],cells:[]};return e.attributes.s&&(n.styleId=parseInt(e.attributes.s,10)),A(e.attributes.hidden)&&(n.hidden=!0),A(e.attributes.bestFit)&&(n.bestFit=!0),e.attributes.ht&&(n.height=parseFloat(e.attributes.ht)),e.attributes.outlineLevel&&(n.outlineLevel=parseInt(e.attributes.outlineLevel,10)),A(e.attributes.collapsed)&&(n.collapsed=!0),!0}return this.parser=this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):!1}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser){if(!this.parser.parseClose(e)){let e=this.parser.model;if(e.address?this.lastCellCol=n.decodeAddress(e.address).col:(this.lastCellCol+=1,e.address=n.encodeAddress(this.model.number,this.lastCellCol)),this.model.cells.push(e),this.maxItems&&this.model.cells.length>this.maxItems)throw Error(`Max column count (${this.maxItems}) exceeded`);this.parser=void 0}return!0}return!1}reconcile(e,t){e.style=e.styleId?t.styles.getStyleModel(e.styleId):{},e.styleId!==void 0&&(e.styleId=void 0);let n=this.map.c;e.cells.forEach(e=>{n.reconcile(e,t)})}},Ur=class extends L{get tag(){return`col`}prepare(e,t){let n=t.styles.addStyleModel(e.style||{});n&&(e.styleId=n)}render(e,t){e.openNode(`col`),e.addAttribute(`min`,t.min),e.addAttribute(`max`,t.max),t.width&&e.addAttribute(`width`,t.width),t.styleId&&e.addAttribute(`style`,t.styleId),t.hidden&&e.addAttribute(`hidden`,`1`),t.bestFit&&e.addAttribute(`bestFit`,`1`),t.outlineLevel&&e.addAttribute(`outlineLevel`,t.outlineLevel),t.collapsed&&e.addAttribute(`collapsed`,`1`),e.addAttribute(`customWidth`,`1`),e.closeNode()}parseOpen(e){if(e.name===`col`){let t=this.model={min:parseInt(e.attributes.min||`0`,10),max:parseInt(e.attributes.max||`0`,10),width:e.attributes.width===void 0?void 0:parseFloat(e.attributes.width||`0`)};return e.attributes.style&&(t.styleId=parseInt(e.attributes.style,10)),A(e.attributes.hidden)&&(t.hidden=!0),A(e.attributes.bestFit)&&(t.bestFit=!0),e.attributes.outlineLevel&&(t.outlineLevel=parseInt(e.attributes.outlineLevel,10)),A(e.attributes.collapsed)&&(t.collapsed=!0),!0}return!1}parseText(){}parseClose(){return!1}reconcile(e,t){e.styleId&&(e.style=t.styles.getStyleModel(e.styleId))}},Wr=class extends L{get tag(){return`dimension`}render(e,t){t&&e.leafNode(`dimension`,{ref:t})}parseOpen(e){return e.name===`dimension`?(this.model=e.attributes.ref,!0):!1}parseText(){}parseClose(){return!1}},Gr=class extends L{get tag(){return`hyperlink`}render(e,t){this.isInternalLink(t)?e.leafNode(`hyperlink`,{ref:t.address,"r:id":t.rId,tooltip:t.tooltip,location:t.target}):e.leafNode(`hyperlink`,{ref:t.address,"r:id":t.rId,tooltip:t.tooltip})}parseOpen(e){return e.name===`hyperlink`?(this.model={address:e.attributes.ref,rId:e.attributes[`r:id`],tooltip:e.attributes.tooltip},e.attributes.location&&(this.model.target=e.attributes.location),!0):!1}parseText(){}parseClose(){return!1}isInternalLink(e){return!!(e.target&&/^[^!]+![a-zA-Z]+[\d]+$/.test(e.target))}},Kr=class extends L{get tag(){return`mergeCell`}render(e,t){e.leafNode(`mergeCell`,{ref:t})}parseOpen(e){return e.name===`mergeCell`?(this.model=e.attributes.ref,!0):!1}parseText(){}parseClose(){return!1}};function qr(e,t,n,r){let i=t[n];i===void 0?r!==void 0&&(e[n]=r):e[n]=i}function Jr(e,t,n,r){let i=t[n];i===void 0?r!==void 0&&(e[n]=r):e[n]=A(i)}function Yr(e){if(!e)return[];let t=[],r={};for(let[n,i]of Object.entries(e))if(i!=null)if(n.startsWith(`range:`)){let e=n.slice(6),{sqref:r,...a}=i;t.push({...a,sqref:e})}else r[n]=i;if(Object.keys(r).length===0)return t;let i=Object.entries(r).map(([e,t])=>({address:e,dataValidation:t,marked:!1})).sort((e,t)=>e.address.localeCompare(t.address)),a=Object.fromEntries(i.map(e=>[e.address,e])),o=(e,t,i)=>{for(let a=0;a<t;a++){let t=n.encodeAddress(e.row+a,i);if(!r[t]||!p(r[e.address],r[t]))return!1}return!0},s=i.map(e=>{if(!e.marked){let t=n.decodeEx(e.address);if(t.dimensions)return a[t.dimensions].marked=!0,{...e.dataValidation,sqref:e.address};let i=1,s=n.encodeAddress(t.row+i,t.col);for(;r[s]&&p(e.dataValidation,r[s]);)i++,s=n.encodeAddress(t.row+i,t.col);let c=1;for(;o(t,i,t.col+c);)c++;for(let e=0;e<i;e++)for(let r=0;r<c;r++)s=n.encodeAddress(t.row+e,t.col+r),a[s].marked=!0;if(i>1||c>1){let r=t.row+(i-1),a=t.col+(c-1);return{...e.dataValidation,sqref:`${e.address}:${n.encodeAddress(r,a)}`}}return{...e.dataValidation,sqref:e.address}}return null}).filter(Boolean);return[...t,...s]}var Xr=class extends L{get tag(){return`dataValidations`}render(e,t){let n=Yr(t);n.length&&(e.openNode(`dataValidations`,{count:n.length}),n.forEach(t=>{e.openNode(`dataValidation`),t.type!==`any`&&(e.addAttribute(`type`,t.type),t.operator&&t.type!==`list`&&t.operator!==`between`&&e.addAttribute(`operator`,t.operator),t.allowBlank&&e.addAttribute(`allowBlank`,`1`)),t.showInputMessage&&e.addAttribute(`showInputMessage`,`1`),t.promptTitle&&e.addAttribute(`promptTitle`,t.promptTitle),t.prompt&&e.addAttribute(`prompt`,t.prompt),t.showErrorMessage&&e.addAttribute(`showErrorMessage`,`1`),t.errorStyle&&e.addAttribute(`errorStyle`,t.errorStyle),t.errorTitle&&e.addAttribute(`errorTitle`,t.errorTitle),t.error&&e.addAttribute(`error`,t.error),e.addAttribute(`sqref`,t.sqref),(t.formulae||[]).forEach((n,r)=>{e.openNode(`formula${r+1}`),t.type===`date`?e.writeText(we(new Date(n))):e.writeText(n),e.closeNode()}),e.closeNode()}),e.closeNode())}parseOpen(e){switch(e.name){case`dataValidations`:return this.model={},!0;case`dataValidation`:{this._address=e.attributes.sqref;let t={type:e.attributes.type||`any`,formulae:[]};switch(e.attributes.type&&Jr(t,e.attributes,`allowBlank`),Jr(t,e.attributes,`showInputMessage`),Jr(t,e.attributes,`showErrorMessage`),t.type){case`any`:case`list`:case`custom`:break;default:qr(t,e.attributes,`operator`,`between`);break}return qr(t,e.attributes,`promptTitle`),qr(t,e.attributes,`prompt`),qr(t,e.attributes,`errorStyle`),qr(t,e.attributes,`errorTitle`),qr(t,e.attributes,`error`),this._dataValidation=t,!0}case`formula1`:case`formula2`:return this._formula=[],!0;default:return!1}}parseText(e){this._formula&&this._formula.push(e)}parseClose(e){switch(e){case`dataValidations`:return!1;case`dataValidation`:return(!this._dataValidation.formulae||!this._dataValidation.formulae.length)&&(delete this._dataValidation.formulae,delete this._dataValidation.operator),(this._address.split(/\s+/g)||[]).forEach(e=>{e.includes(`:`)?this.model[`range:${e}`]=this._dataValidation:this.model[e]=this._dataValidation}),!0;case`formula1`:case`formula2`:{let e=this._formula.join(``);switch(this._dataValidation.type){case`whole`:case`textLength`:e=parseInt(e,10);break;case`decimal`:e=parseFloat(e);break;case`date`:e=Te(parseFloat(e));break;default:break}return this._dataValidation.formulae.push(e),this._formula=void 0,!0}default:return!0}}},Zr=class extends L{get tag(){return`pageSetUpPr`}render(e,t){return t&&t.fitToPage?(e.leafNode(this.tag,{fitToPage:t.fitToPage?`1`:void 0}),!0):!1}parseOpen(e){return e.name===this.tag?(this.model={fitToPage:e.attributes.fitToPage===`1`},!0):!1}parseText(){}parseClose(){return!1}};let Qr=e=>e!==void 0;var $r=class extends L{get tag(){return`outlinePr`}render(e,t){return t&&(Qr(t.summaryBelow)||Qr(t.summaryRight))?(e.leafNode(this.tag,{summaryBelow:Qr(t.summaryBelow)?Number(t.summaryBelow):void 0,summaryRight:Qr(t.summaryRight)?Number(t.summaryRight):void 0}),!0):!1}parseOpen(e){return e.name===this.tag?(this.model={summaryBelow:Qr(e.attributes.summaryBelow)?!!Number(e.attributes.summaryBelow):void 0,summaryRight:Qr(e.attributes.summaryRight)?!!Number(e.attributes.summaryRight):void 0},!0):!1}parseText(){}parseClose(){return!1}},ei=class extends L{constructor(){super(),this.map={tabColor:new z(`tabColor`),pageSetUpPr:new Zr,outlinePr:new $r}}get tag(){return`sheetPr`}render(e,t){if(t){e.addRollback(),e.openNode(`sheetPr`);let n=!1;n=this.map.tabColor.render(e,t.tabColor)||n,n=this.map.pageSetUpPr.render(e,t.pageSetup)||n,n=this.map.outlinePr.render(e,t.outlineProperties)||n,n?(e.closeNode(),e.commit()):e.rollback()}}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):e.name===this.tag?(this.reset(),!0):this.map[e.name]?(this.parser=this.map[e.name],this.parser.parseOpen(e),!0):!1}parseText(e){return this.parser?(this.parser.parseText(e),!0):!1}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):(this.map.tabColor.model||this.map.pageSetUpPr.model||this.map.outlinePr.model?(this.model={},this.map.tabColor.model&&(this.model.tabColor=this.map.tabColor.model),this.map.pageSetUpPr.model&&(this.model.pageSetup=this.map.pageSetUpPr.model),this.map.outlinePr.model&&(this.model.outlineProperties=this.map.outlinePr.model)):this.model=null,!1)}},ti=class extends L{get tag(){return`sheetFormatPr`}render(e,t){if(t){let n={defaultRowHeight:t.defaultRowHeight,outlineLevelRow:t.outlineLevelRow||void 0,outlineLevelCol:t.outlineLevelCol||void 0,"x14ac:dyDescent":t.dyDescent||void 0};t.defaultColWidth&&(n.defaultColWidth=t.defaultColWidth),(!t.defaultRowHeight||t.defaultRowHeight!==15)&&(n.customHeight=`1`),Object.values(n).some(e=>e!==void 0)&&e.leafNode(`sheetFormatPr`,n)}}parseOpen(e){return e.name===`sheetFormatPr`?(this.model={defaultRowHeight:parseFloat(e.attributes.defaultRowHeight||`0`),dyDescent:parseFloat(e.attributes[`x14ac:dyDescent`]||`0`),outlineLevelRow:parseInt(e.attributes.outlineLevelRow||`0`,10),outlineLevelCol:parseInt(e.attributes.outlineLevelCol||`0`,10)},e.attributes.defaultColWidth&&(this.model.defaultColWidth=parseFloat(e.attributes.defaultColWidth)),!0):!1}parseText(){}parseClose(){return!1}};let ni={frozen:`frozen`,frozenSplit:`frozen`,split:`split`};var ri=class extends L{get tag(){return`sheetView`}prepare(e){switch(e.state){case`frozen`:case`split`:break;default:e.state=`normal`;break}}render(e,t){let r={};t.tabSelected&&(r.tabSelected=`1`),r.workbookViewId=t.workbookViewId||0,e.openNode(`sheetView`,r);let i=function(t,n,r){r&&e.addAttribute(t,n)};i(`rightToLeft`,`1`,t.rightToLeft===!0),i(`showRuler`,`0`,t.showRuler===!1),i(`showRowColHeaders`,`0`,t.showRowColHeaders===!1),i(`showGridLines`,`0`,t.showGridLines===!1),i(`zoomScale`,t.zoomScale,t.zoomScale),i(`zoomScaleNormal`,t.zoomScaleNormal,t.zoomScaleNormal),i(`view`,t.style,t.style);let a,o,s,c;switch(t.state){case`frozen`:o=t.xSplit||0,s=t.ySplit||0,a=t.topLeftCell||n.getAddress(s+1,o+1).address,c=t.xSplit&&t.ySplit&&`bottomRight`||t.xSplit&&`topRight`||`bottomLeft`,e.leafNode(`pane`,{xSplit:t.xSplit||void 0,ySplit:t.ySplit||void 0,topLeftCell:a,activePane:c,state:`frozen`}),e.leafNode(`selection`,{pane:c,activeCell:t.activeCell,sqref:t.activeCell});break;case`split`:t.activePane===`topLeft`&&(t.activePane=void 0),e.leafNode(`pane`,{xSplit:t.xSplit||void 0,ySplit:t.ySplit||void 0,topLeftCell:t.topLeftCell,activePane:t.activePane}),e.leafNode(`selection`,{pane:t.activePane,activeCell:t.activeCell,sqref:t.activeCell});break;case`normal`:t.activeCell&&e.leafNode(`selection`,{activeCell:t.activeCell,sqref:t.activeCell});break;default:break}e.closeNode()}parseOpen(e){switch(e.name){case`sheetView`:return this.sheetView={workbookViewId:parseInt(e.attributes.workbookViewId,10),rightToLeft:e.attributes.rightToLeft===`1`,tabSelected:e.attributes.tabSelected===`1`,showRuler:e.attributes.showRuler!==`0`,showRowColHeaders:e.attributes.showRowColHeaders!==`0`,showGridLines:e.attributes.showGridLines!==`0`,zoomScale:parseInt(e.attributes.zoomScale||`100`,10),zoomScaleNormal:parseInt(e.attributes.zoomScaleNormal||`100`,10),style:e.attributes.view},this.pane=void 0,this.selections={},!0;case`pane`:return this.pane={xSplit:parseInt(e.attributes.xSplit||`0`,10),ySplit:parseInt(e.attributes.ySplit||`0`,10),topLeftCell:e.attributes.topLeftCell,activePane:e.attributes.activePane||`topLeft`,state:e.attributes.state},!0;case`selection`:{let t=e.attributes.pane||`topLeft`;return this.selections[t]={pane:t,activeCell:e.attributes.activeCell},!0}default:return!1}}parseText(){}parseClose(e){let t,n;switch(e){case`sheetView`:return this.sheetView&&this.pane?(t=this.model={workbookViewId:this.sheetView.workbookViewId,rightToLeft:this.sheetView.rightToLeft,state:ni[this.pane.state]||`split`,xSplit:this.pane.xSplit,ySplit:this.pane.ySplit,topLeftCell:this.pane.topLeftCell,showRuler:this.sheetView.showRuler,showRowColHeaders:this.sheetView.showRowColHeaders,showGridLines:this.sheetView.showGridLines,zoomScale:this.sheetView.zoomScale,zoomScaleNormal:this.sheetView.zoomScaleNormal},this.model.state===`split`&&(t.activePane=this.pane.activePane),n=this.selections[this.pane.activePane],n&&n.activeCell&&(t.activeCell=n.activeCell),this.sheetView.style&&(t.style=this.sheetView.style)):(t=this.model={workbookViewId:this.sheetView.workbookViewId,rightToLeft:this.sheetView.rightToLeft,state:`normal`,showRuler:this.sheetView.showRuler,showRowColHeaders:this.sheetView.showRowColHeaders,showGridLines:this.sheetView.showGridLines,zoomScale:this.sheetView.zoomScale,zoomScaleNormal:this.sheetView.zoomScaleNormal},n=this.selections.topLeft,n&&n.activeCell&&(t.activeCell=n.activeCell),this.sheetView.style&&(t.style=this.sheetView.style)),!1;default:return!0}}reconcile(){}};function K(e,t){return e?t:void 0}function q(e,t){return e===t?!0:void 0}var ii=class extends L{get tag(){return`sheetProtection`}render(e,t){if(t){let n={sheet:K(t.sheet,`1`),selectLockedCells:t.selectLockedCells===!1?`1`:void 0,selectUnlockedCells:t.selectUnlockedCells===!1?`1`:void 0,formatCells:K(t.formatCells,`0`),formatColumns:K(t.formatColumns,`0`),formatRows:K(t.formatRows,`0`),insertColumns:K(t.insertColumns,`0`),insertRows:K(t.insertRows,`0`),insertHyperlinks:K(t.insertHyperlinks,`0`),deleteColumns:K(t.deleteColumns,`0`),deleteRows:K(t.deleteRows,`0`),sort:K(t.sort,`0`),autoFilter:K(t.autoFilter,`0`),pivotTables:K(t.pivotTables,`0`)};t.sheet&&(n.algorithmName=t.algorithmName,n.hashValue=t.hashValue,n.saltValue=t.saltValue,n.spinCount=t.spinCount,n.objects=K(t.objects===!1,`1`),n.scenarios=K(t.scenarios===!1,`1`)),Object.values(n).some(e=>e!==void 0)&&e.leafNode(this.tag,n)}}parseOpen(e){switch(e.name){case this.tag:return this.model={sheet:q(e.attributes.sheet,`1`),objects:e.attributes.objects===`1`?!1:void 0,scenarios:e.attributes.scenarios===`1`?!1:void 0,selectLockedCells:e.attributes.selectLockedCells===`1`?!1:void 0,selectUnlockedCells:e.attributes.selectUnlockedCells===`1`?!1:void 0,formatCells:q(e.attributes.formatCells,`0`),formatColumns:q(e.attributes.formatColumns,`0`),formatRows:q(e.attributes.formatRows,`0`),insertColumns:q(e.attributes.insertColumns,`0`),insertRows:q(e.attributes.insertRows,`0`),insertHyperlinks:q(e.attributes.insertHyperlinks,`0`),deleteColumns:q(e.attributes.deleteColumns,`0`),deleteRows:q(e.attributes.deleteRows,`0`),sort:q(e.attributes.sort,`0`),autoFilter:q(e.attributes.autoFilter,`0`),pivotTables:q(e.attributes.pivotTables,`0`)},e.attributes.algorithmName&&(this.model.algorithmName=e.attributes.algorithmName,this.model.hashValue=e.attributes.hashValue,this.model.saltValue=e.attributes.saltValue,this.model.spinCount=parseInt(e.attributes.spinCount,10)),!0;default:return!1}}parseText(){}parseClose(){return!1}},ai=class extends L{get tag(){return`pageMargins`}render(e,t){if(t){let n={left:t.left,right:t.right,top:t.top,bottom:t.bottom,header:t.header,footer:t.footer};Object.values(n).some(e=>e!==void 0)&&e.leafNode(this.tag,n)}}parseOpen(e){switch(e.name){case this.tag:return this.model={left:parseFloat(e.attributes.left||.7),right:parseFloat(e.attributes.right||.7),top:parseFloat(e.attributes.top||.75),bottom:parseFloat(e.attributes.bottom||.75),header:parseFloat(e.attributes.header||.3),footer:parseFloat(e.attributes.footer||.3)},!0;default:return!1}}parseText(){}parseClose(){return!1}};function oi(e){return e?`1`:void 0}function si(e){switch(e){case`overThenDown`:return e;default:return}}function ci(e){switch(e){case`atEnd`:case`asDisplyed`:return e;default:return}}function li(e){switch(e){case`dash`:case`blank`:case`NA`:return e;default:return}}function ui(e){return e===void 0?void 0:parseInt(e,10)}var di=class extends L{get tag(){return`pageSetup`}render(e,t){if(t){let n={paperSize:t.paperSize,orientation:t.orientation,horizontalDpi:t.horizontalDpi,verticalDpi:t.verticalDpi,pageOrder:si(t.pageOrder),blackAndWhite:oi(t.blackAndWhite),draft:oi(t.draft),cellComments:ci(t.cellComments),errors:li(t.errors),scale:t.scale===100?void 0:t.scale,fitToWidth:t.fitToWidth===1?void 0:t.fitToWidth,fitToHeight:t.fitToHeight===1?void 0:t.fitToHeight,firstPageNumber:t.firstPageNumber,useFirstPageNumber:oi(!!t.firstPageNumber),usePrinterDefaults:oi(t.usePrinterDefaults),copies:t.copies};Object.values(n).some(e=>e!==void 0)&&e.leafNode(this.tag,n)}}parseOpen(e){switch(e.name){case this.tag:return this.model={paperSize:ui(e.attributes.paperSize),orientation:e.attributes.orientation||`portrait`,horizontalDpi:parseInt(e.attributes.horizontalDpi||`4294967295`,10),verticalDpi:parseInt(e.attributes.verticalDpi||`4294967295`,10),pageOrder:e.attributes.pageOrder||`downThenOver`,blackAndWhite:e.attributes.blackAndWhite===`1`,draft:e.attributes.draft===`1`,cellComments:e.attributes.cellComments||`None`,errors:e.attributes.errors||`displayed`,scale:parseInt(e.attributes.scale||`100`,10),fitToWidth:parseInt(e.attributes.fitToWidth||`1`,10),fitToHeight:parseInt(e.attributes.fitToHeight||`1`,10),firstPageNumber:parseInt(e.attributes.firstPageNumber||`1`,10),useFirstPageNumber:e.attributes.useFirstPageNumber===`1`,usePrinterDefaults:e.attributes.usePrinterDefaults===`1`,copies:parseInt(e.attributes.copies||`1`,10)},!0;default:return!1}}parseText(){}parseClose(){return!1}};function fi(e){return e?`1`:void 0}var pi=class extends L{get tag(){return`printOptions`}render(e,t){if(t){let n={headings:fi(t.showRowColHeaders),gridLines:fi(t.showGridLines),horizontalCentered:fi(t.horizontalCentered),verticalCentered:fi(t.verticalCentered)};Object.values(n).some(e=>e!==void 0)&&e.leafNode(this.tag,n)}}parseOpen(e){switch(e.name){case this.tag:return this.model={showRowColHeaders:e.attributes.headings===`1`,showGridLines:e.attributes.gridLines===`1`,horizontalCentered:e.attributes.horizontalCentered===`1`,verticalCentered:e.attributes.verticalCentered===`1`},!0;default:return!1}}parseText(){}parseClose(){return!1}},mi=class extends L{get tag(){return`autoFilter`}render(e,t){if(t)if(typeof t==`string`)e.leafNode(`autoFilter`,{ref:t});else{let r=function(e){return typeof e==`string`?e:n.getAddress(e.row,e.column).address},i=r(t.from),a=r(t.to);i&&a&&e.leafNode(`autoFilter`,{ref:`${i}:${a}`})}}parseOpen(e){e.name===`autoFilter`&&(this.model=e.attributes.ref)}},hi=class extends L{get tag(){return`picture`}render(e,t){t&&e.leafNode(this.tag,{"r:id":t.rId})}parseOpen(e){switch(e.name){case this.tag:return this.model={rId:e.attributes[`r:id`]},!0;default:return!1}}parseText(){}parseClose(){return!1}},gi=class extends L{get tag(){return`drawing`}render(e,t){t&&e.leafNode(this.tag,{"r:id":t.rId})}parseOpen(e){switch(e.name){case this.tag:return this.model={rId:e.attributes[`r:id`]},!0;default:return!1}}parseText(){}parseClose(){return!1}},_i=class extends L{get tag(){return`tablePart`}render(e,t){t&&e.leafNode(this.tag,{"r:id":t.rId})}parseOpen(e){switch(e.name){case this.tag:return this.model={rId:e.attributes[`r:id`]},!0;default:return!1}}parseText(){}parseClose(){return!1}},vi=class extends L{get tag(){return`brk`}render(e,t){e.leafNode(`brk`,t)}parseOpen(e){if(e.name===`brk`){let{id:t,max:n,man:r,min:i}=e.attributes;return this.model={id:+t,max:+n,man:+r},i!==void 0&&(this.model.min=+i),!0}return!1}parseText(){}parseClose(){return!1}},yi=class extends R{constructor(){super({tag:`rowBreaks`,count:!0,childXform:new vi})}render(e,t){if(t&&t.length){e.openNode(this.tag,this.$),e.addAttribute(this.$count,t.length),e.addAttribute(`manualBreakCount`,t.length);let{childXform:n}=this;for(let r of t)n.render(e,r);e.closeNode()}}},bi=class extends R{constructor(){super({tag:`colBreaks`,count:!0,childXform:new vi})}render(e,t){if(t&&t.length){e.openNode(this.tag,this.$),e.addAttribute(this.$count,t.length),e.addAttribute(`manualBreakCount`,t.length);let{childXform:n}=this;for(let r of t)n.render(e,r);e.closeNode()}}},xi=class extends L{get tag(){return`headerFooter`}render(e,t){if(t){e.addRollback();let n=!1;e.openNode(`headerFooter`),t.differentFirst&&(e.addAttribute(`differentFirst`,`1`),n=!0),t.differentOddEven&&(e.addAttribute(`differentOddEven`,`1`),n=!0),t.oddHeader&&typeof t.oddHeader==`string`&&(e.leafNode(`oddHeader`,null,t.oddHeader),n=!0),t.oddFooter&&typeof t.oddFooter==`string`&&(e.leafNode(`oddFooter`,null,t.oddFooter),n=!0),t.evenHeader&&typeof t.evenHeader==`string`&&(e.leafNode(`evenHeader`,null,t.evenHeader),n=!0),t.evenFooter&&typeof t.evenFooter==`string`&&(e.leafNode(`evenFooter`,null,t.evenFooter),n=!0),t.firstHeader&&typeof t.firstHeader==`string`&&(e.leafNode(`firstHeader`,null,t.firstHeader),n=!0),t.firstFooter&&typeof t.firstFooter==`string`&&(e.leafNode(`firstFooter`,null,t.firstFooter),n=!0),n?(e.closeNode(),e.commit()):e.rollback()}}parseOpen(e){switch(e.name){case`headerFooter`:return this.model={},e.attributes.differentFirst&&(this.model.differentFirst=parseInt(e.attributes.differentFirst,0)===1),e.attributes.differentOddEven&&(this.model.differentOddEven=parseInt(e.attributes.differentOddEven,0)===1),!0;case`oddHeader`:return this.currentNode=`oddHeader`,!0;case`oddFooter`:return this.currentNode=`oddFooter`,!0;case`evenHeader`:return this.currentNode=`evenHeader`,!0;case`evenFooter`:return this.currentNode=`evenFooter`,!0;case`firstHeader`:return this.currentNode=`firstHeader`,!0;case`firstFooter`:return this.currentNode=`firstFooter`,!0;default:return!1}}parseText(e){switch(this.currentNode){case`oddHeader`:this.model.oddHeader=(this.model.oddHeader||``)+e;break;case`oddFooter`:this.model.oddFooter=(this.model.oddFooter||``)+e;break;case`evenHeader`:this.model.evenHeader=(this.model.evenHeader||``)+e;break;case`evenFooter`:this.model.evenFooter=(this.model.evenFooter||``)+e;break;case`firstHeader`:this.model.firstHeader=(this.model.firstHeader||``)+e;break;case`firstFooter`:this.model.firstFooter=(this.model.firstFooter||``)+e;break;default:break}}parseClose(){switch(this.currentNode){case`oddHeader`:case`oddFooter`:case`evenHeader`:case`evenFooter`:case`firstHeader`:case`firstFooter`:return this.currentNode=void 0,!0;default:return!1}}},J=class extends L{createNewModel(e){return{}}parseOpen(e){return this.parser=this.parser||this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):e.name===this.tag?(this.model=this.createNewModel(e),!0):!1}parseText(e){this.parser&&this.parser.parseText(e)}onParserClose(e,t){this.model[e]=t.model}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.onParserClose(e,this.parser),this.parser=void 0),!0):e!==this.tag}get tag(){return``}},Si=class extends L{get tag(){return`cfvo`}render(e,t){e.leafNode(this.tag,{type:t.type,val:t.value})}parseOpen(e){this.model={type:e.attributes.type,value:L.toFloatValue(e.attributes.val)}}parseClose(e){return e!==this.tag}},Ci=class extends J{constructor(){super(),this.map={cfvo:this.cfvoXform=new Si,color:this.colorXform=new z}}get tag(){return`dataBar`}render(e,t){e.openNode(this.tag),t.cfvo.forEach(t=>{this.cfvoXform.render(e,t)}),this.colorXform.render(e,t.color),e.closeNode()}createNewModel(){return{cfvo:[]}}onParserClose(e,t){switch(e){case`cfvo`:this.model.cfvo.push(t.model);break;case`color`:this.model.color=t.model;break}}},wi=class extends L{get tag(){return`x14:id`}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(){this.model=``}parseText(e){this.model+=e}parseClose(e){return e!==this.tag}},Ti=class extends J{constructor(){super(),this.map={"x14:id":this.idXform=new wi}}get tag(){return`ext`}render(e,t){e.openNode(this.tag,{uri:`{B025F937-C7B1-47D3-B67F-A62EFF666E3E}`,"xmlns:x14":`http://schemas.microsoft.com/office/spreadsheetml/2009/9/main`}),this.idXform.render(e,t.x14Id),e.closeNode()}createNewModel(){return{}}onParserClose(e,t){this.model.x14Id=t.model}},Ei=class extends J{constructor(){super(),this.map={ext:new Ti}}get tag(){return`extLst`}render(e,t){e.openNode(this.tag),this.map.ext.render(e,t),e.closeNode()}createNewModel(){return{}}onParserClose(e,t){Object.assign(this.model,t.model)}},Di=class extends L{get tag(){return`formula`}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(){this.model=``}parseText(e){this.model+=e}parseClose(e){return e!==this.tag}},Oi=class extends J{constructor(){super(),this.map={cfvo:this.cfvoXform=new Si,color:this.colorXform=new z}}get tag(){return`colorScale`}render(e,t){e.openNode(this.tag),t.cfvo.forEach(t=>{this.cfvoXform.render(e,t)}),t.color.forEach(t=>{this.colorXform.render(e,t)}),e.closeNode()}createNewModel(e){return{cfvo:[],color:[]}}onParserClose(e,t){this.model[e].push(t.model)}},ki=class extends J{constructor(){super(),this.map={cfvo:this.cfvoXform=new Si}}get tag(){return`iconSet`}render(e,t){e.openNode(this.tag,{iconSet:L.toStringAttribute(t.iconSet,`3TrafficLights`),reverse:L.toBoolAttribute(t.reverse,!1),showValue:L.toBoolAttribute(t.showValue,!0)}),t.cfvo.forEach(t=>{this.cfvoXform.render(e,t)}),e.closeNode()}createNewModel({attributes:e}){return{iconSet:L.toStringValue(e.iconSet,`3TrafficLights`),reverse:L.toBoolValue(e.reverse),showValue:L.toBoolValue(e.showValue),cfvo:[]}}onParserClose(e,t){this.model[e].push(t.model)}};let Ai={"3Triangles":!0,"3Stars":!0,"5Boxes":!0},ji=e=>{if(e.formulae&&e.formulae[0])return e.formulae[0];let{tl:t}=new r(e.ref);switch(e.operator){case`containsText`:return`NOT(ISERROR(SEARCH("${e.text}",${t})))`;case`containsBlanks`:return`LEN(TRIM(${t}))=0`;case`notContainsBlanks`:return`LEN(TRIM(${t}))>0`;case`containsErrors`:return`ISERROR(${t})`;case`notContainsErrors`:return`NOT(ISERROR(${t}))`;default:return}},Mi=e=>{if(e.formulae&&e.formulae[0])return e.formulae[0];let{tl:t}=new r(e.ref);switch(e.timePeriod){case`thisWeek`:return`AND(TODAY()-ROUNDDOWN(${t},0)<=WEEKDAY(TODAY())-1,ROUNDDOWN(${t},0)-TODAY()<=7-WEEKDAY(TODAY()))`;case`lastWeek`:return`AND(TODAY()-ROUNDDOWN(${t},0)>=(WEEKDAY(TODAY())),TODAY()-ROUNDDOWN(${t},0)<(WEEKDAY(TODAY())+7))`;case`nextWeek`:return`AND(ROUNDDOWN(${t},0)-TODAY()>(7-WEEKDAY(TODAY())),ROUNDDOWN(${t},0)-TODAY()<(15-WEEKDAY(TODAY())))`;case`yesterday`:return`FLOOR(${t},1)=TODAY()-1`;case`today`:return`FLOOR(${t},1)=TODAY()`;case`tomorrow`:return`FLOOR(${t},1)=TODAY()+1`;case`last7Days`:return`AND(TODAY()-FLOOR(${t},1)<=6,FLOOR(${t},1)<=TODAY())`;case`lastMonth`:return`AND(MONTH(${t})=MONTH(EDATE(TODAY(),0-1)),YEAR(${t})=YEAR(EDATE(TODAY(),0-1)))`;case`thisMonth`:return`AND(MONTH(${t})=MONTH(TODAY()),YEAR(${t})=YEAR(TODAY()))`;case`nextMonth`:return`AND(MONTH(${t})=MONTH(EDATE(TODAY(),0+1)),YEAR(${t})=YEAR(EDATE(TODAY(),0+1)))`;default:return}},Ni=e=>{let{type:t,operator:n}=e;switch(t){case`containsText`:case`containsBlanks`:case`notContainsBlanks`:case`containsErrors`:case`notContainsErrors`:return{type:`containsText`,operator:t};default:return{type:t,operator:n}}};var Pi=class e extends J{constructor(){super(),this.map={dataBar:this.databarXform=new Ci,extLst:this.extLstRefXform=new Ei,formula:this.formulaXform=new Di,colorScale:this.colorScaleXform=new Oi,iconSet:this.iconSetXform=new ki}}get tag(){return`cfRule`}static isPrimitive(e){return!(e.type===`iconSet`&&(e.custom||Ai[e.iconSet]))}render(e,t){switch(t.type){case`expression`:this.renderExpression(e,t);break;case`cellIs`:this.renderCellIs(e,t);break;case`top10`:this.renderTop10(e,t);break;case`aboveAverage`:this.renderAboveAverage(e,t);break;case`dataBar`:this.renderDataBar(e,t);break;case`colorScale`:this.renderColorScale(e,t);break;case`iconSet`:this.renderIconSet(e,t);break;case`containsText`:this.renderText(e,t);break;case`timePeriod`:this.renderTimePeriod(e,t);break}}renderExpression(e,t){e.openNode(this.tag,{type:`expression`,dxfId:t.dxfId,priority:t.priority}),this.formulaXform.render(e,t.formulae[0]),e.closeNode()}renderCellIs(e,t){e.openNode(this.tag,{type:`cellIs`,dxfId:t.dxfId,priority:t.priority,operator:t.operator}),t.formulae.forEach(t=>{this.formulaXform.render(e,t)}),e.closeNode()}renderTop10(e,t){e.leafNode(this.tag,{type:`top10`,dxfId:t.dxfId,priority:t.priority,percent:L.toBoolAttribute(t.percent,!1),bottom:L.toBoolAttribute(t.bottom,!1),rank:L.toIntValue(t.rank,10)})}renderAboveAverage(e,t){e.leafNode(this.tag,{type:`aboveAverage`,dxfId:t.dxfId,priority:t.priority,aboveAverage:L.toBoolAttribute(t.aboveAverage,!0)})}renderDataBar(e,t){e.openNode(this.tag,{type:`dataBar`,priority:t.priority}),this.databarXform.render(e,t),this.extLstRefXform.render(e,t),e.closeNode()}renderColorScale(e,t){e.openNode(this.tag,{type:`colorScale`,priority:t.priority}),this.colorScaleXform.render(e,t),e.closeNode()}renderIconSet(t,n){e.isPrimitive(n)&&(t.openNode(this.tag,{type:`iconSet`,priority:n.priority}),this.iconSetXform.render(t,n),t.closeNode())}renderText(e,t){e.openNode(this.tag,{type:t.operator,dxfId:t.dxfId,priority:t.priority,operator:L.toStringAttribute(t.operator,`containsText`)});let n=ji(t);n&&this.formulaXform.render(e,n),e.closeNode()}renderTimePeriod(e,t){e.openNode(this.tag,{type:`timePeriod`,dxfId:t.dxfId,priority:t.priority,timePeriod:t.timePeriod});let n=Mi(t);n&&this.formulaXform.render(e,n),e.closeNode()}createNewModel({attributes:e}){return{...Ni(e),dxfId:L.toIntValue(e.dxfId),priority:L.toIntValue(e.priority),timePeriod:e.timePeriod,percent:L.toBoolValue(e.percent),bottom:L.toBoolValue(e.bottom),rank:L.toIntValue(e.rank),aboveAverage:L.toBoolValue(e.aboveAverage)}}onParserClose(e,t){switch(e){case`dataBar`:case`extLst`:case`colorScale`:case`iconSet`:Object.assign(this.model,t.model);break;case`formula`:this.model.formulae=this.model.formulae||[],this.model.formulae.push(t.model);break}}},Fi=class extends J{constructor(){super(),this.map={cfRule:new Pi}}get tag(){return`conditionalFormatting`}render(e,t){t.rules.some(Pi.isPrimitive)&&(e.openNode(this.tag,{sqref:t.ref}),t.rules.forEach(n=>{Pi.isPrimitive(n)&&(n.ref=t.ref,this.map.cfRule.render(e,n))}),e.closeNode())}createNewModel({attributes:e}){return{ref:e.sqref,rules:[]}}onParserClose(e,t){this.model.rules.push(t.model)}},Ii=class extends L{constructor(){super(),this.cfXform=new Fi}get tag(){return`conditionalFormatting`}reset(){this.model=[]}prepare(e,t){let n=e.reduce((e,t)=>Math.max(e,...t.rules.map(e=>e.priority||0)),1);e.forEach(e=>{e.rules.forEach(e=>{e.priority||=n++,e.style&&(e.dxfId=t.styles.addDxfStyle(e.style))})})}render(e,t){t.forEach(t=>{this.cfXform.render(e,t)})}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`conditionalFormatting`:return this.parser=this.cfXform,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?this.parser.parseClose(e)?!0:(this.model.push(this.parser.model),this.parser=void 0,!1):!1}reconcile(e,t){e.forEach(e=>{e.rules.forEach(e=>{e.dxfId!==void 0&&(e.style=t.styles.getDxfStyle(e.dxfId),delete e.dxfId)})})}},Li=class extends L{get tag(){return`xm:f`}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(){this.model=``}parseText(e){this.model+=e}parseClose(e){return e!==this.tag}},Ri=class extends J{constructor(){super(),this.map={"xm:f":this.fExtXform=new Li}}get tag(){return`x14:cfvo`}render(e,t){e.openNode(this.tag,{type:t.type}),t.value!==void 0&&this.fExtXform.render(e,t.value),e.closeNode()}createNewModel(e){return{type:e.attributes.type}}onParserClose(e,t){switch(e){case`xm:f`:this.model.value=t.model?parseFloat(t.model):0;break}}},zi=class extends J{constructor(){super(),this.map={"x14:cfvo":this.cfvoXform=new Ri,"x14:borderColor":this.borderColorXform=new z(`x14:borderColor`),"x14:negativeBorderColor":this.negativeBorderColorXform=new z(`x14:negativeBorderColor`),"x14:negativeFillColor":this.negativeFillColorXform=new z(`x14:negativeFillColor`),"x14:axisColor":this.axisColorXform=new z(`x14:axisColor`)}}static isExt(e){return!e.gradient}get tag(){return`x14:dataBar`}render(e,t){e.openNode(this.tag,{minLength:L.toIntAttribute(t.minLength,0,!0),maxLength:L.toIntAttribute(t.maxLength,100,!0),border:L.toBoolAttribute(t.border,!1),gradient:L.toBoolAttribute(t.gradient,!0),negativeBarColorSameAsPositive:L.toBoolAttribute(t.negativeBarColorSameAsPositive,!0),negativeBarBorderColorSameAsPositive:L.toBoolAttribute(t.negativeBarBorderColorSameAsPositive,!0),axisPosition:L.toAttribute(t.axisPosition,`auto`),direction:L.toAttribute(t.direction,`leftToRight`)}),t.cfvo.forEach(t=>{this.cfvoXform.render(e,t)}),this.borderColorXform.render(e,t.borderColor),this.negativeBorderColorXform.render(e,t.negativeBorderColor),this.negativeFillColorXform.render(e,t.negativeFillColor),this.axisColorXform.render(e,t.axisColor),e.closeNode()}createNewModel({attributes:e}){return{cfvo:[],minLength:L.toIntValue(e.minLength,0),maxLength:L.toIntValue(e.maxLength,100),border:L.toBoolValue(e.border,!1),gradient:L.toBoolValue(e.gradient,!0),negativeBarColorSameAsPositive:L.toBoolValue(e.negativeBarColorSameAsPositive,!0),negativeBarBorderColorSameAsPositive:L.toBoolValue(e.negativeBarBorderColorSameAsPositive,!0),axisPosition:L.toStringValue(e.axisPosition,`auto`),direction:L.toStringValue(e.direction,`leftToRight`)}}onParserClose(e,t){let[,n]=e.split(`:`);switch(n){case`cfvo`:this.model.cfvo.push(t.model);break;default:this.model[n]=t.model;break}}},Bi=class extends L{get tag(){return`x14:cfIcon`}render(e,t){e.leafNode(this.tag,{iconSet:t.iconSet,iconId:t.iconId})}parseOpen({attributes:e}){this.model={iconSet:e.iconSet,iconId:L.toIntValue(e.iconId)}}parseClose(e){return e!==this.tag}},Vi=class extends J{constructor(){super(),this.map={"x14:cfvo":this.cfvoXform=new Ri,"x14:cfIcon":this.cfIconXform=new Bi}}get tag(){return`x14:iconSet`}render(e,t){e.openNode(this.tag,{iconSet:L.toStringAttribute(t.iconSet),reverse:L.toBoolAttribute(t.reverse,!1),showValue:L.toBoolAttribute(t.showValue,!0),custom:L.toBoolAttribute(t.icons,!1)}),t.cfvo.forEach(t=>{this.cfvoXform.render(e,t)}),t.icons&&t.icons.forEach((t,n)=>{t.iconId=n,this.cfIconXform.render(e,t)}),e.closeNode()}createNewModel({attributes:e}){return{cfvo:[],iconSet:L.toStringValue(e.iconSet,`3TrafficLights`),reverse:L.toBoolValue(e.reverse,!1),showValue:L.toBoolValue(e.showValue,!0)}}onParserClose(e,t){let[,n]=e.split(`:`);switch(n){case`cfvo`:this.model.cfvo.push(t.model);break;case`cfIcon`:this.model.icons||(this.model.icons=[]),this.model.icons.push(t.model);break;default:this.model[n]=t.model;break}}};function Y(e){return e.toString(16).padStart(2,`0`)}function Hi(e){e[6]=e[6]&15|64,e[8]=e[8]&63|128;let t=e;return Y(t[0])+Y(t[1])+Y(t[2])+Y(t[3])+`-`+Y(t[4])+Y(t[5])+`-`+Y(t[6])+Y(t[7])+`-`+Y(t[8])+Y(t[9])+`-`+Y(t[10])+Y(t[11])+Y(t[12])+Y(t[13])+Y(t[14])+Y(t[15])}function Ui(){let e=globalThis.crypto;if(e?.randomUUID)return e.randomUUID();let t=new Uint8Array(16);if(e?.getRandomValues)return e.getRandomValues(t),Hi(t);for(let e=0;e<t.length;e++)t[e]=Math.floor(Math.random()*256);return Hi(t)}let Wi={"3Triangles":!0,"3Stars":!0,"5Boxes":!0};var Gi=class e extends J{constructor(){super(),this.map={"x14:dataBar":this.databarXform=new zi,"x14:iconSet":this.iconSetXform=new Vi}}get tag(){return`x14:cfRule`}static isExt(e){return e.type===`dataBar`?zi.isExt(e):!!(e.type===`iconSet`&&(e.custom||Wi[e.iconSet]))}prepare(t){e.isExt(t)&&(t.x14Id=`{${Ui()}}`.toUpperCase())}render(t,n){if(e.isExt(n))switch(n.type){case`dataBar`:this.renderDataBar(t,n);break;case`iconSet`:this.renderIconSet(t,n);break}}renderDataBar(e,t){e.openNode(this.tag,{type:`dataBar`,id:t.x14Id}),this.databarXform.render(e,t),e.closeNode()}renderIconSet(e,t){e.openNode(this.tag,{type:`iconSet`,priority:t.priority,id:t.x14Id||`{${Ui()}}`}),this.iconSetXform.render(e,t),e.closeNode()}createNewModel({attributes:e}){return{type:e.type,x14Id:e.id,priority:L.toIntValue(e.priority)}}onParserClose(e,t){Object.assign(this.model,t.model)}},Ki=class extends L{get tag(){return`xm:sqref`}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(){this.model=``}parseText(e){this.model+=e}parseClose(e){return e!==this.tag}},qi=class extends J{constructor(){super(),this.map={"xm:sqref":this.sqRef=new Ki,"x14:cfRule":this.cfRule=new Gi}}get tag(){return`x14:conditionalFormatting`}prepare(e){e.rules.forEach(e=>{this.cfRule.prepare(e)})}render(e,t){t.rules.some(Gi.isExt)&&(e.openNode(this.tag,{"xmlns:xm":`http://schemas.microsoft.com/office/excel/2006/main`}),t.rules.filter(Gi.isExt).forEach(t=>this.cfRule.render(e,t)),this.sqRef.render(e,t.ref),e.closeNode())}createNewModel(){return{rules:[]}}onParserClose(e,t){switch(e){case`xm:sqref`:this.model.ref=t.model;break;case`x14:cfRule`:this.model.rules.push(t.model);break}}},Ji=class extends J{constructor(){super(),this.map={"x14:conditionalFormatting":this.cfXform=new qi}}get tag(){return`x14:conditionalFormattings`}hasContent(e){return e.hasExtContent===void 0&&(e.hasExtContent=e.some(e=>e.rules.some(Gi.isExt))),e.hasExtContent}prepare(e){e.forEach(e=>{this.cfXform.prepare(e)})}render(e,t){this.hasContent(t)&&(e.openNode(this.tag),t.forEach(t=>this.cfXform.render(e,t)),e.closeNode())}createNewModel(){return[]}onParserClose(e,t){this.model.push(t.model)}},Yi=class extends J{constructor(){super(),this.map={"x14:conditionalFormattings":this.conditionalFormattings=new Ji}}get tag(){return`ext`}hasContent(e){return this.conditionalFormattings.hasContent(e.conditionalFormattings)}prepare(e){this.conditionalFormattings.prepare(e.conditionalFormattings)}render(e,t){e.openNode(`ext`,{uri:`{78C0D931-6437-407d-A8EE-F0AAD7539E65}`,"xmlns:x14":`http://schemas.microsoft.com/office/spreadsheetml/2009/9/main`}),this.conditionalFormattings.render(e,t.conditionalFormattings),e.closeNode()}createNewModel(){return{}}onParserClose(e,t){this.model[e]=t.model}},Xi=class extends J{constructor(){super(),this.map={ext:this.ext=new Yi}}get tag(){return`extLst`}prepare(e,t){this.ext.prepare(e)}hasContent(e){return this.ext.hasContent(e)}render(e,t){this.hasContent(t)&&(e.openNode(`extLst`),this.ext.render(e,t),e.closeNode())}createNewModel(){return{}}onParserClose(e,t){this.model[e]=t.model}};let Zi=(e,t)=>{Object.keys(t).forEach(n=>{let r=e[n],i=t[n];r===void 0&&i!==void 0&&(e[n]=i)})},Qi=(e,t)=>{if(!t||!t.length)return e;if(!e||!e.length)return t;let n={},r={};return e.forEach(e=>{n[e.ref]=e,e.rules.forEach(e=>{let{x14Id:t}=e;t&&(r[t]=e)})}),t.forEach(t=>{t.rules.forEach(i=>{let a=r[i.x14Id];a?Zi(a,i):n[t.ref]?n[t.ref].rules.push(i):e.push({ref:t.ref,rules:[i]})})}),e};var $i=class e extends L{static{this.WORKSHEET_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`,"xmlns:r":`http://schemas.openxmlformats.org/officeDocument/2006/relationships`,"xmlns:mc":`http://schemas.openxmlformats.org/markup-compatibility/2006`,"xmlns:x14ac":`http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac`,"mc:Ignorable":`x14ac`}}constructor(e){super();let{maxRows:t,maxCols:n,ignoreNodes:r}=e||{};this.ignoreNodes=r||[],this.map={sheetPr:new ei,dimension:new Wr,sheetViews:new R({tag:`sheetViews`,count:!1,childXform:new ri}),sheetFormatPr:new ti,cols:new R({tag:`cols`,count:!1,childXform:new Ur}),sheetData:new R({tag:`sheetData`,count:!1,empty:!0,childXform:new Hr({maxItems:n}),maxItems:t}),autoFilter:new mi,mergeCells:new R({tag:`mergeCells`,count:!0,childXform:new Kr}),rowBreaks:new yi,colBreaks:new bi,hyperlinks:new R({tag:`hyperlinks`,count:!1,childXform:new Gr}),pageMargins:new ai,dataValidations:new Xr,pageSetup:new di,headerFooter:new xi,printOptions:new pi,picture:new hi,drawing:new gi,sheetProtection:new ii,tableParts:new R({tag:`tableParts`,count:!0,childXform:new _i}),conditionalFormatting:new Ii,extLst:new Xi}}prepare(e,t){t.merges=new Rr,e.hyperlinks=t.hyperlinks=[],e.comments=t.comments=[],t.formulae={},t.siFormulae=0,this.map.cols.prepare(e.cols,t),this.map.sheetData.prepare(e.rows,t),this.map.conditionalFormatting.prepare(e.conditionalFormattings,t),e.mergeCells=t.merges.mergeCells;let r=e.rels=[];function i(e){return`rId${e.length+1}`}if(e.hyperlinks.forEach(e=>{let t=i(r);e.rId=t,r.push({Id:t,Type:G.Hyperlink,Target:e.target,TargetMode:`External`})}),e.comments.length>0){let a={Id:i(r),Type:G.Comments,Target:ur(e.id)};r.push(a);let o={Id:i(r),Type:G.VmlDrawing,Target:dr(e.id)};r.push(o),e.comments.forEach(e=>{e.refAddress=n.decodeAddress(e.ref)}),t.commentRefs.push({commentName:`comments${e.id}`,vmlDrawing:`vmlDrawing${e.id}`})}let a=[],o;if(e.media.forEach(n=>{if(n.type===`background`){let a=i(r);o=t.media[n.imageId],r.push({Id:a,Type:G.Image,Target:yr(`${o.name}.${o.extension}`)}),e.background={rId:a},e.image=t.media[n.imageId]}else if(n.type===`image`){let{drawing:s}=e;o=t.media[n.imageId],s||(s=e.drawing={rId:i(r),name:`drawing${++t.drawingsCount}`,anchors:[],rels:[]},t.drawings.push(s),r.push({Id:s.rId,Type:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing`,Target:fr(s.name)}));let c=this.preImageId===n.imageId?a[n.imageId]:a[s.rels.length];c||(c=i(s.rels),a[s.rels.length]=c,s.rels.push({Id:c,Type:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/image`,Target:yr(`${o.name}.${o.extension}`)}));let l={picture:{rId:c},range:n.range};if(n.hyperlinks&&n.hyperlinks.hyperlink){let e=i(s.rels);a[s.rels.length]=e,l.picture.hyperlinks={tooltip:n.hyperlinks.tooltip,rId:e},s.rels.push({Id:e,Type:G.Hyperlink,Target:n.hyperlinks.hyperlink,TargetMode:`External`})}this.preImageId=n.imageId,s.anchors.push(l)}}),e.tables.forEach(e=>{let n=i(r);e.rId=n,r.push({Id:n,Type:G.Table,Target:_r(e.target)}),e.columns.forEach(e=>{let{style:n}=e;n&&(e.dxfId=t.styles.addDxfStyle(n))})}),(e.pivotTables||[]).forEach(e=>{r.push({Id:i(r),Type:G.PivotTable,Target:hr(e.tableNumber)})}),e.formControls&&e.formControls.length>0){e.comments.length===0&&r.push({Id:i(r),Type:G.VmlDrawing,Target:dr(e.id)});for(let n of e.formControls){let e=t.formControlRefs.length+1;n.ctrlPropId=e;let a=i(r);n.ctrlPropRelId=a,r.push({Id:a,Type:G.CtrlProp,Target:xr(e)}),t.formControlRefs.push(e)}}this.map.extLst.prepare(e,t)}render(t,n){t.openXml(F.StdDocAttributes),t.openNode(`worksheet`,e.WORKSHEET_ATTRIBUTES);let r=n.properties?{defaultRowHeight:n.properties.defaultRowHeight,dyDescent:n.properties.dyDescent,outlineLevelCol:n.properties.outlineLevelCol,outlineLevelRow:n.properties.outlineLevelRow}:void 0;n.properties&&n.properties.defaultColWidth&&(r.defaultColWidth=n.properties.defaultColWidth);let i={outlineProperties:n.properties&&n.properties.outlineProperties,tabColor:n.properties&&n.properties.tabColor,pageSetup:n.pageSetup&&n.pageSetup.fitToPage?{fitToPage:n.pageSetup.fitToPage}:void 0},a=n.pageSetup&&n.pageSetup.margins,o={showRowColHeaders:n.pageSetup&&n.pageSetup.showRowColHeaders,showGridLines:n.pageSetup&&n.pageSetup.showGridLines,horizontalCentered:n.pageSetup&&n.pageSetup.horizontalCentered,verticalCentered:n.pageSetup&&n.pageSetup.verticalCentered},s=n.sheetProtection;if(this.map.sheetPr.render(t,i),this.map.dimension.render(t,n.dimensions),this.map.sheetViews.render(t,n.views),this.map.sheetFormatPr.render(t,r),this.map.cols.render(t,n.cols),this.map.sheetData.render(t,n.rows),this.map.sheetProtection.render(t,s),this.map.autoFilter.render(t,n.autoFilter),this.map.mergeCells.render(t,n.mergeCells),this.map.conditionalFormatting.render(t,n.conditionalFormattings),this.map.dataValidations.render(t,n.dataValidations),this.map.hyperlinks.render(t,n.hyperlinks),this.map.printOptions.render(t,o),this.map.pageMargins.render(t,a),this.map.pageSetup.render(t,n.pageSetup),this.map.headerFooter.render(t,n.headerFooter),this.map.rowBreaks.render(t,n.rowBreaks),this.map.colBreaks.render(t,n.colBreaks),this.map.drawing.render(t,n.drawing),this.map.picture.render(t,n.background),this.map.tableParts.render(t,n.tables),n.formControls&&n.formControls.length>0){t.openNode(`controls`);for(let e of n.formControls)e.ctrlPropRelId&&t.leafNode(`control`,{shapeId:e.shapeId,"r:id":e.ctrlPropRelId});t.closeNode()}n.rels&&n.rels.forEach(e=>{e.Type===G.VmlDrawing&&t.leafNode(`legacyDrawing`,{"r:id":e.Id})}),this.map.extLst.render(t,n),t.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):e.name===`worksheet`?(Object.values(this.map).forEach(e=>{e.reset()}),!0):(this.map[e.name]&&!this.ignoreNodes.includes(e.name)&&(this.parser=this.map[e.name],this.parser.parseOpen(e)),!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case`worksheet`:{let e=this.map.sheetFormatPr.model||{};this.map.sheetPr.model&&this.map.sheetPr.model.tabColor&&(e.tabColor=this.map.sheetPr.model.tabColor),this.map.sheetPr.model&&this.map.sheetPr.model.outlineProperties&&(e.outlineProperties=this.map.sheetPr.model.outlineProperties);let t={fitToPage:this.map.sheetPr.model&&this.map.sheetPr.model.pageSetup&&this.map.sheetPr.model.pageSetup.fitToPage||!1,margins:this.map.pageMargins.model},n=Object.assign(t,this.map.pageSetup.model,this.map.printOptions.model),r=Qi(this.map.conditionalFormatting.model,this.map.extLst.model&&this.map.extLst.model[`x14:conditionalFormattings`]);return this.model={dimensions:this.map.dimension.model,cols:this.map.cols.model,rows:this.map.sheetData.model,mergeCells:this.map.mergeCells.model,hyperlinks:this.map.hyperlinks.model,dataValidations:this.map.dataValidations.model,properties:e,views:this.map.sheetViews.model,pageSetup:n,headerFooter:this.map.headerFooter.model,background:this.map.picture.model,drawing:this.map.drawing.model,tables:this.map.tableParts.model,conditionalFormattings:r,rowBreaks:this.map.rowBreaks.model||[],colBreaks:this.map.colBreaks.model||[]},this.map.autoFilter.model&&(this.model.autoFilter=this.map.autoFilter.model),this.map.sheetProtection.model&&(this.model.sheetProtection=this.map.sheetProtection.model),!1}default:return!0}}reconcile(e,t){let n=(e.relationships||[]).reduce((n,r)=>{if(n[r.Id]=r,r.Type===G.Comments&&(e.comments=t.comments[r.Target].comments),r.Type===G.VmlDrawing&&e.comments&&e.comments.length){let n=t.vmlDrawings[r.Target].comments;e.comments.forEach((e,t)=>{e.note=Object.assign({},e.note,n[t])})}return n},{});if(t.commentsMap=(e.comments||[]).reduce((e,t)=>(t.ref&&(e[t.ref]=t),e),{}),t.hyperlinkMap=(e.hyperlinks||[]).reduce((e,t)=>(t.rId&&(e[t.address]=n[t.rId].Target),e),{}),t.formulae={},e.rows=e.rows&&e.rows.filter(Boolean)||[],e.rows.forEach(e=>{e.cells=e.cells&&e.cells.filter(Boolean)||[]}),this.map.cols.reconcile(e.cols,t),this.map.sheetData.reconcile(e.rows,t),this.map.conditionalFormatting.reconcile(e.conditionalFormattings,t),e.media=[],e.drawing){let r=n[e.drawing.rId].Target.match(/\/drawings\/([a-zA-Z0-9]+)[.][a-zA-Z]{3,4}$/);if(r){let n=r[1];t.drawings[n].anchors.forEach(t=>{if(t.medium){let n={type:`image`,imageId:t.medium.index,range:t.range,hyperlinks:t.picture.hyperlinks};e.media.push(n)}})}}let r=e.background&&n[e.background.rId];if(r){let n=r.Target.split(`/media/`)[1],i=t.mediaIndex&&t.mediaIndex[n];i!==void 0&&e.media.push({type:`background`,imageId:i})}e.tables=(e.tables||[]).map(e=>{let r=n[e.rId];return t.tables[r.Target]}),e.pivotTables=[],(e.relationships||[]).forEach(n=>{if(n.Type===G.PivotTable&&t.pivotTables){let r=t.pivotTables[n.Target];r&&e.pivotTables.push(r)}}),delete e.relationships,delete e.hyperlinks,delete e.comments}},ea=class extends L{render(e){e.openXml({version:`1.0`,encoding:`UTF-8`,standalone:`yes`}),e.openNode(`FeaturePropertyBags`,{xmlns:`http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag`}),e.leafNode(`bag`,{type:`Checkbox`}),e.openNode(`bag`,{type:`XFControls`}),e.leafNode(`bagId`,{k:`CellControl`},`0`),e.closeNode(),e.openNode(`bag`,{type:`XFComplement`}),e.leafNode(`bagId`,{k:`XFControls`},`1`),e.closeNode(),e.openNode(`bag`,{type:`XFComplements`,extRef:`XFComplementsMapperExtRef`}),e.openNode(`a`,{k:`MappedFeaturePropertyBags`}),e.leafNode(`bagId`,{},`2`),e.closeNode(),e.closeNode(),e.closeNode()}parseOpen(){return!1}parseText(){}parseClose(){return!1}},ta=class extends L{parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset(),this.model={range:{editAs:e.attributes.editAs||`oneCell`}};break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(e){this.parser&&this.parser.parseText(e)}reconcilePicture(e,t){if(e&&e.rId){let n=t.rels[e.rId].Target.match(/.*\/media\/(.+[.][a-zA-Z]{3,4})/);if(n){let e=n[1],r=t.mediaIndex[e];return t.media[r]}}}},na=class extends L{constructor(e){super(),this.tag=e.tag,this.map={"xdr:col":new It({tag:`xdr:col`,zero:!0}),"xdr:colOff":new It({tag:`xdr:colOff`,zero:!0}),"xdr:row":new It({tag:`xdr:row`,zero:!0}),"xdr:rowOff":new It({tag:`xdr:rowOff`,zero:!0})},this.model={nativeCol:0,nativeColOff:0,nativeRow:0,nativeRowOff:0}}render(e,t){e.openNode(this.tag),this.map[`xdr:col`].render(e,t.nativeCol),this.map[`xdr:colOff`].render(e,t.nativeColOff),this.map[`xdr:row`].render(e,t.nativeRow),this.map[`xdr:rowOff`].render(e,t.nativeRowOff),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset();break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model={nativeCol:this.map[`xdr:col`].model,nativeColOff:this.map[`xdr:colOff`].model,nativeRow:this.map[`xdr:row`].model,nativeRowOff:this.map[`xdr:rowOff`].model},!1;default:return!0}}},ra=class extends L{constructor(){super(),this.model={rId:``}}get tag(){return`a:blip`}render(e,t){e.leafNode(this.tag,{"xmlns:r":`http://schemas.openxmlformats.org/officeDocument/2006/relationships`,"r:embed":t.rId,cstate:`print`})}parseOpen(e){switch(e.name){case this.tag:return this.model={rId:e.attributes[`r:embed`]},!0;default:return!0}}parseText(){}parseClose(e){switch(e){case this.tag:return!1;default:return!0}}},ia=class extends L{constructor(){super(),this.map={"a:blip":new ra}}get tag(){return`xdr:blipFill`}render(e,t){e.openNode(this.tag),this.map[`a:blip`].render(e,t),e.openNode(`a:stretch`),e.leafNode(`a:fillRect`),e.closeNode(),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset();break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(){}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model=this.map[`a:blip`].model,!1;default:return!0}}},aa=class extends L{constructor(){super(),this.model={}}get tag(){return`a:hlinkClick`}render(e,t){t.hyperlinks&&t.hyperlinks.rId&&e.leafNode(this.tag,{"xmlns:r":`http://schemas.openxmlformats.org/officeDocument/2006/relationships`,"r:id":t.hyperlinks.rId,tooltip:t.hyperlinks.tooltip})}parseOpen(e){switch(e.name){case this.tag:return this.model={hyperlinks:{rId:e.attributes[`r:id`],tooltip:e.attributes.tooltip}},!0;default:return!0}}parseText(){}parseClose(){return!1}},oa=class extends L{get tag(){return`a:extLst`}render(e){e.openNode(this.tag),e.openNode(`a:ext`,{uri:`{FF2B5EF4-FFF2-40B4-BE49-F238E27FC236}`}),e.leafNode(`a16:creationId`,{"xmlns:a16":`http://schemas.microsoft.com/office/drawing/2014/main`,id:`{00000000-0008-0000-0000-000002000000}`}),e.closeNode(),e.closeNode()}parseOpen(e){switch(e.name){case this.tag:return!0;default:return!0}}parseText(){}parseClose(e){switch(e){case this.tag:return!1;default:return!0}}},sa=class extends L{constructor(){super(),this.map={"a:hlinkClick":new aa,"a:extLst":new oa}}get tag(){return`xdr:cNvPr`}render(e,t){e.openNode(this.tag,{id:t.index,name:`Picture ${t.index}`}),this.map[`a:hlinkClick`].render(e,t),this.map[`a:extLst`].render(e,t),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset();break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(){}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model=this.map[`a:hlinkClick`].model,!1;default:return!0}}},ca=class extends L{get tag(){return`xdr:cNvPicPr`}render(e){e.openNode(this.tag),e.leafNode(`a:picLocks`,{noChangeAspect:`1`}),e.closeNode()}parseOpen(e){switch(e.name){case this.tag:return!0;default:return!0}}parseText(){}parseClose(e){switch(e){case this.tag:return!1;default:return!0}}},la=class extends L{constructor(){super(),this.map={"xdr:cNvPr":new sa,"xdr:cNvPicPr":new ca}}get tag(){return`xdr:nvPicPr`}render(e,t){e.openNode(this.tag),this.map[`xdr:cNvPr`].render(e,t),this.map[`xdr:cNvPicPr`].render(e,t),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset();break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(){}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model=this.map[`xdr:cNvPr`].model,!1;default:return!0}}};let ua={tag:`xdr:spPr`,c:[{tag:`a:xfrm`,c:[{tag:`a:off`,$:{x:`0`,y:`0`}},{tag:`a:ext`,$:{cx:`0`,cy:`0`}}]},{tag:`a:prstGeom`,$:{prst:`rect`},c:[{tag:`a:avLst`}]}]};var da=class extends L{constructor(){super(),this.map={"xdr:nvPicPr":new la,"xdr:blipFill":new ia,"xdr:spPr":new Pt(ua)}}get tag(){return`xdr:pic`}prepare(e,t){e.index=t.index+1}render(e,t){e.openNode(this.tag),this.map[`xdr:nvPicPr`].render(e,t),this.map[`xdr:blipFill`].render(e,t),this.map[`xdr:spPr`].render(e,t),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset();break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(){}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.mergeModel(this.parser.model),this.parser=void 0),!0;switch(e){case this.tag:return!1;default:return!0}}},fa=class extends ta{constructor(){super(),this.map={"xdr:from":new na({tag:`xdr:from`}),"xdr:to":new na({tag:`xdr:to`}),"xdr:pic":new da,"xdr:clientData":new Pt({tag:`xdr:clientData`})}}get tag(){return`xdr:twoCellAnchor`}prepare(e,t){this.map[`xdr:pic`].prepare(e.picture,t)}render(e,t){e.openNode(this.tag,{editAs:t.range.editAs||`oneCell`}),this.map[`xdr:from`].render(e,t.range.tl),this.map[`xdr:to`].render(e,t.range.br),this.map[`xdr:pic`].render(e,t.picture),this.map[`xdr:clientData`].render(e,{}),e.closeNode()}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model.range.tl=this.map[`xdr:from`].model,this.model.range.br=this.map[`xdr:to`].model,this.model.picture=this.map[`xdr:pic`].model,!1;default:return!0}}reconcile(e,t){e.medium=this.reconcilePicture(e.picture,t)}};let pa=9525;var ma=class extends L{constructor(e){super(),this.tag=e.tag,this.map={},this.model={width:0,height:0}}render(e,t){e.openNode(this.tag);let n=Math.floor(t.width*pa),r=Math.floor(t.height*pa);e.addAttribute(`cx`,n),e.addAttribute(`cy`,r),e.closeNode()}parseOpen(e){return e.name===this.tag?(this.model={width:parseInt(e.attributes.cx||`0`,10)/pa,height:parseInt(e.attributes.cy||`0`,10)/pa},!0):!1}parseText(e){}parseClose(e){return!1}},ha=class extends ta{constructor(){super(),this.map={"xdr:from":new na({tag:`xdr:from`}),"xdr:ext":new ma({tag:`xdr:ext`}),"xdr:pic":new da,"xdr:clientData":new Pt({tag:`xdr:clientData`})}}get tag(){return`xdr:oneCellAnchor`}prepare(e,t){this.map[`xdr:pic`].prepare(e.picture,t)}render(e,t){e.openNode(this.tag,{editAs:t.range.editAs||`oneCell`}),this.map[`xdr:from`].render(e,t.range.tl),this.map[`xdr:ext`].render(e,t.range.ext),this.map[`xdr:pic`].render(e,t.picture),this.map[`xdr:clientData`].render(e,{}),e.closeNode()}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model.range.tl=this.map[`xdr:from`].model,this.model.range.ext=this.map[`xdr:ext`].model,this.model.picture=this.map[`xdr:pic`].model,!1;default:return!0}}reconcile(e,t){e.medium=this.reconcilePicture(e.picture,t)}};function ga(e){return(typeof e.range==`string`?n.decode(e.range):e.range).br?`xdr:twoCellAnchor`:`xdr:oneCellAnchor`}var _a=class e extends L{constructor(){super(),this.map={"xdr:twoCellAnchor":new fa,"xdr:oneCellAnchor":new ha},this.model={anchors:[]}}prepare(e){e.anchors.forEach((e,t)=>{e.anchorType=ga(e),this.map[e.anchorType].prepare(e,{index:t})})}get tag(){return`xdr:wsDr`}render(t,n){let r=n||this.model;t.openXml(F.StdDocAttributes),t.openNode(this.tag,e.DRAWING_ATTRIBUTES),r.anchors.forEach(e=>{this.map[e.anchorType].render(t,e)}),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset(),this.model={anchors:[]};break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.anchors.push(this.parser.model),this.parser=void 0),!0;switch(e){case this.tag:return!1;default:return!0}}reconcile(e,t){e.anchors.forEach(e=>{e.br?this.map[`xdr:twoCellAnchor`].reconcile(e,t):this.map[`xdr:oneCellAnchor`].reconcile(e,t)})}static{this.DRAWING_ATTRIBUTES={"xmlns:xdr":`http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing`,"xmlns:a":`http://schemas.openxmlformats.org/drawingml/2006/main`}}},va=class extends L{constructor(){super(),this.model={val:``}}get tag(){return`customFilter`}render(e,t){e.leafNode(this.tag,{val:t.val,operator:t.operator})}parseOpen(e){return e.name===this.tag?(this.model={val:e.attributes.val,operator:e.attributes.operator},!0):!1}parseText(){}parseClose(){return!1}},ya=class extends L{constructor(){super(),this.model={val:``}}get tag(){return`filter`}render(e,t){e.leafNode(this.tag,{val:t.val})}parseOpen(e){return e.name===this.tag?(this.model={val:e.attributes.val},!0):!1}parseText(){}parseClose(){return!1}},ba=class extends L{constructor(){super(),this.map={customFilters:new R({tag:`customFilters`,count:!1,empty:!0,childXform:new va}),filters:new R({tag:`filters`,count:!1,empty:!0,childXform:new ya})},this.model={filterButton:!1}}get tag(){return`filterColumn`}prepare(e,t){e.colId=t.index.toString()}render(e,t){if(t.customFilters){e.openNode(this.tag,{colId:t.colId,hiddenButton:t.filterButton?`0`:`1`}),this.map.customFilters.render(e,t.customFilters),e.closeNode();return}e.leafNode(this.tag,{colId:t.colId,hiddenButton:t.filterButton?`0`:`1`})}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;let{attributes:t}=e;switch(e.name){case this.tag:return this.model={filterButton:t.hiddenButton===`0`},!0;case`dynamicFilter`:return!0;default:if(this.parser=this.map[e.name],this.parser)return this.parseOpen(e),!0;throw Error(`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}}parseText(){}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model.customFilters=this.map.customFilters.model,!1;default:return!0}}},xa=class extends L{constructor(){super(),this.map={filterColumn:new ba},this.model={autoFilterRef:``,columns:[]}}get tag(){return`autoFilter`}prepare(e){e.columns.forEach((e,t)=>{this.map.filterColumn.prepare(e,{index:t})})}render(e,t){e.openNode(this.tag,{ref:t.autoFilterRef}),t.columns.forEach(t=>{this.map.filterColumn.render(e,t)}),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:return this.model={autoFilterRef:e.attributes.ref,columns:[]},!0;default:if(this.parser=this.map[e.name],this.parser)return this.parseOpen(e),!0;throw Error(`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.columns.push(this.parser.model),this.parser=void 0),!0;switch(e){case this.tag:return!1;default:throw Error(`Unexpected xml node in parseClose: ${e}`)}}},Sa=class extends L{constructor(){super(),this.model={name:``}}get tag(){return`tableColumn`}prepare(e,t){e.id=t.index+1}render(e,t){e.leafNode(this.tag,{id:t.id.toString(),name:t.name,totalsRowLabel:t.totalsRowLabel,totalsRowFunction:t.totalsRowFunction===`none`?void 0:t.totalsRowFunction,dxfId:t.dxfId})}parseOpen(e){if(e.name===this.tag){let{attributes:t}=e;return this.model={name:t.name,totalsRowLabel:t.totalsRowLabel,totalsRowFunction:t.totalsRowFunction,dxfId:t.dxfId},!0}return!1}parseText(){}parseClose(){return!1}},Ca=class extends L{constructor(){super(),this.model={theme:null,showFirstColumn:!1,showLastColumn:!1,showRowStripes:!1,showColumnStripes:!1}}get tag(){return`tableStyleInfo`}render(e,t){e.leafNode(this.tag,{name:t.theme?t.theme:void 0,showFirstColumn:t.showFirstColumn?`1`:`0`,showLastColumn:t.showLastColumn?`1`:`0`,showRowStripes:t.showRowStripes?`1`:`0`,showColumnStripes:t.showColumnStripes?`1`:`0`})}parseOpen(e){if(e.name===this.tag){let{attributes:t}=e;return this.model={theme:t.name?t.name:null,showFirstColumn:t.showFirstColumn===`1`,showLastColumn:t.showLastColumn===`1`,showRowStripes:t.showRowStripes===`1`,showColumnStripes:t.showColumnStripes===`1`},!0}return!1}parseText(){}parseClose(){return!1}},wa=class e extends L{constructor(){super(),this.map={autoFilter:new xa,tableColumns:new R({tag:`tableColumns`,count:!0,empty:!0,childXform:new Sa}),tableStyleInfo:new Ca},this.model={id:0,name:``,tableRef:``,columns:[]}}prepare(e,t){this.map.autoFilter.prepare(e),this.map.tableColumns.prepare(e.columns,t)}get tag(){return`table`}render(t,n){t.openXml(F.StdDocAttributes),t.openNode(this.tag,{...e.TABLE_ATTRIBUTES,id:n.id,name:n.name,displayName:n.displayName||n.name,ref:n.tableRef,totalsRowCount:n.totalsRow?`1`:void 0,headerRowCount:n.headerRow?void 0:`0`}),this.map.autoFilter.render(t,n),this.map.tableColumns.render(t,n.columns),this.map.tableStyleInfo.render(t,n.style),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;let{name:t,attributes:n}=e;switch(t){case this.tag:this.reset(),this.model={name:n.name,displayName:n.displayName||n.name,tableRef:n.ref,totalsRow:n.totalsRowCount===`1`,headerRow:n.headerRowCount!==`0`};break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model.columns=this.map.tableColumns.model,this.map.autoFilter.model&&(this.model.autoFilterRef=this.map.autoFilter.model.autoFilterRef,this.map.autoFilter.model.columns.forEach((e,t)=>{this.model.columns[t].filterButton=e.filterButton})),this.model.style=this.map.tableStyleInfo.model,!1;default:return!0}}reconcile(e,t){e.tableRef&&!e.ref&&(e.ref=e.tableRef),e.rows||=[],e.columns.forEach(e=>{e.dxfId!==void 0&&(e.style=t.styles.getDxfStyle(e.dxfId))})}static{this.TABLE_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`}}},Ta=class e extends L{constructor(){super(),this.map={},this.model=null,this.currentRecord=null}prepare(e){}get tag(){return`pivotCacheRecords`}reset(){this.model=null,this.currentRecord=null}render(e,t){t.isLoaded||!(`source`in t)?this.renderLoaded(e,t):this.renderNew(e,t)}renderNew(t,n){let{source:r,cacheFields:i}=n,a=r.getSheetValues().slice(2);t.openXml(F.StdDocAttributes),t.openNode(this.tag,{...e.PIVOT_CACHE_RECORDS_ATTRIBUTES,count:a.length}),t.writeXml(this.renderTableNew(a,i)),t.closeNode()}renderLoaded(t,n){t.openXml(F.StdDocAttributes),t.openNode(this.tag,{...e.PIVOT_CACHE_RECORDS_ATTRIBUTES,count:n.count});for(let e of n.records){t.writeXml(`
|
|
10
|
+
`),t=this.i):Mt(i)||(r=!0)}r&&(!this.sawRoot&&!this.reportedTextBeforeRoot&&(this.fail(`text data outside of root node.`),this.reportedTextBeforeRoot=!0),this.closedRoot&&!this.reportedTextAfterRoot&&(this.fail(`text data outside of root node.`),this.reportedTextAfterRoot=!0))}sOpenWaka(){let e=this.getCode();if(Pt(e)){this.state=3,this.name=F(e);return}switch(e){case 47:this.state=11,this.name=``;break;case 33:this.state=2,this.openWakaBang=``;break;case 63:this.state=19,this.text=``;break;default:this.fail(`unexpected character in tag`),this.state=0}}sOpenWakaBang(){let e=this.getCode();switch(this.openWakaBang+=F(e),this.openWakaBang){case`[CDATA[`:this.state=16,this.text=``,this.openWakaBang=``;break;case`--`:this.state=13,this.text=``,this.openWakaBang=``;break;case`DOCTYPE`:this.state=21,this.text=``,this.openWakaBang=``;break;default:this.openWakaBang.length>=7&&(this.fail(`incorrect syntax`),this.state=0)}}sOpenTag(){let e=this.getCode();if(e!==-1){if(Ft(e)){this.name+=F(e);return}this.tag={name:this.name,attributes:Object.create(null),isSelfClosing:!1},this.attribList=[],this.sawRoot=!0,e===62?this.openTag():e===47?this.state=4:(Mt(e)||this.fail(`unexpected character in tag`),this.state=5)}}sOpenTagSlash(){this.getCode()===62?this.openSelfClosingTag():(this.fail(`expected >`),this.state=5)}sAttrib(){let e=this.skipSpaces();e!==-1&&(Pt(e)?(this.name=F(e),this.state=6):e===62?this.openTag():e===47?this.state=4:this.fail(`unexpected character in attribute`))}sAttribName(){let e=this.getCode();if(e!==-1){if(Ft(e)){this.name+=F(e);return}e===61?this.state=8:Mt(e)?this.state=7:e===62?(this.fail(`attribute without value`),this.attribList.push({name:this.name,value:this.name}),this.name=``,this.openTag()):this.fail(`unexpected character in attribute name`)}}sAttribNameSawWhite(){let e=this.skipSpaces();e!==-1&&(e===61?this.state=8:(this.fail(`attribute without value`),this.name=``,this.text=``,e===62?this.openTag():Pt(e)?(this.name=F(e),this.state=6):(this.fail(`unexpected character`),this.state=5)))}sAttribValue(){let e=this.skipSpaces();e!==-1&&(Nt(e)?(this.q=e,this.text=``,this.state=9):(this.fail(`unquoted attribute value`),this.state=0))}sAttribValueQuoted(){let{q:e,chunk:t}=this,{i:n}=this;for(;;){let r=this.getCode();if(r===-1){this.text+=t.slice(n,this.i);return}if(r===e){this.attribList.push({name:this.name,value:this.text+t.slice(n,this.prevI)}),this.name=``,this.text=``,this.q=null,this.state=10;return}if(r===38){this.text+=t.slice(n,this.prevI),this.state=25,this.entityReturnState=9,this.entity=``;return}if((r===10||r===9)&&(this.text+=t.slice(n,this.prevI)+` `,n=this.i),r===60){this.text+=t.slice(n,this.prevI),this.fail(`< not allowed in attribute value`);return}}}sAttribValueClosed(){let e=this.getCode();e!==-1&&(Mt(e)?this.state=5:e===62?this.openTag():e===47?this.state=4:Pt(e)?(this.fail(`no whitespace between attributes`),this.name=F(e),this.state=6):this.fail(`unexpected character after attribute`))}sCloseTag(){let e=this.getCode();e!==-1&&(Ft(e)?this.name+=F(e):e===62?this.closeTag():Mt(e)?this.state=12:this.fail(`unexpected character in close tag`))}sCloseTagSawWhite(){let e=this.skipSpaces();e!==-1&&(e===62?this.closeTag():this.fail(`unexpected character in close tag`))}sComment(){let e=this.getCode();e!==-1&&(e===45?this.state=14:this.text+=F(e))}sCommentEnding(){let e=this.getCode();e===45?this.state=15:(this.text+=`-`+F(e),this.state=13)}sCommentEnded(){let e=this.getCode();e===62?(this.text=``,this.state=0):e===45?this.text+=`-`:(this.fail(`malformed comment`),this.text+=`--`+F(e),this.state=13)}sCData(){let e=this.getCode();e!==-1&&(e===93?this.state=17:this.text+=F(e))}sCDataEnding(){let e=this.getCode();e===93?this.state=18:(this.text+=`]`+F(e),this.state=16)}sCDataEnding2(){let e=this.getCode();e===62?(this.textHandler&&this.text.length>0&&this.textHandler(this.text),this.text=``,this.state=0):e===93?this.text+=`]`:(this.text+=`]]`+F(e),this.state=16)}sPI(){let e=this.getCode();e!==-1&&(e===63?this.state=20:this.text+=F(e))}sPIEnding(){let e=this.getCode();e===62?(this.text=``,this.state=0):e===63?this.text+=`?`:(this.text+=`?`+F(e),this.state=19)}sDoctype(){let e=this.getCode();e!==-1&&(e===62?(this.text=``,this.state=0):Nt(e)?(this.q=e,this.state=22):e===91?this.state=23:this.text+=F(e))}sDoctypeQuote(){let e=this.getCode();e!==-1&&(e===this.q?(this.q=null,this.state=21):this.text+=F(e))}sDoctypeDTD(){let e=this.getCode();e!==-1&&(e===93?this.state=21:Nt(e)&&(this.q=e,this.state=24))}sDoctypeDTDQuoted(){let e=this.getCode();e!==-1&&e===this.q&&(this.q=null,this.state=23)}sEntity(){let e=this.getCode();if(e!==-1)if(e===59){let e=this.entity,t;e===``?(this.fail(`empty entity`),t=`&;`):t=this.parseEntity(e),this.text+=t,this.state=this.entityReturnState,this.entity=``}else Ft(e)||e===35?this.entity+=F(e):(this.fail(`invalid entity character`),this.text+=`&`+this.entity+F(e),this.state=this.entityReturnState,this.entity=``)}parseEntity(e){if(e[0]!==`#`){let t=this.ENTITIES[e];return t===void 0?(this.fail(`undefined entity: `+e),`&`+e+`;`):t}let t;return t=e[1]===`x`||e[1]===`X`?parseInt(e.slice(2),16):parseInt(e.slice(1),10),isNaN(t)||!It(t)?(this.fail(`invalid character entity`),`&`+e+`;`):String.fromCodePoint(t)}skipSpaces(){for(;;){let e=this.getCode();if(e===-1||!Mt(e))return e}}openTag(){let e=this.tag;e.isSelfClosing=!1;for(let{name:t,value:n}of this.attribList)e.attributes[t]=n;this.attribList=[],this.openTagHandler?.(e),this.tags.push(e),this.name=``,this.state=0}openSelfClosingTag(){let e=this.tag;e.isSelfClosing=!0;for(let{name:t,value:n}of this.attribList)e.attributes[t]=n;this.attribList=[],this.openTagHandler?.(e),this.closeTagHandler?.(e),this.tags.length===0&&(this.closedRoot=!0),this.name=``,this.state=0}closeTag(){let{tags:e,name:t}=this;if(this.state=0,this.name=``,t===``){this.fail(`empty close tag`),this.text+=`</>`;return}let n=!1;for(let r=e.length-1;r>=0;r--)if(e[r].name===t){for(;e.length>r;){let t=e.pop();this.closeTagHandler?.(t),e.length>r&&this.fail(`unclosed tag: `+t.name)}n=!0;break}n||(this.fail(`unmatched close tag: `+t),this.text+=`</`+t+`>`),e.length===0&&(this.closedRoot=!0)}end(){for(this.sawRoot||this.fail(`document must contain a root element`);this.tags.length>0;){let e=this.tags.pop();this.fail(`unclosed tag: `+e.name)}return this.text.length>0&&this.textHandler&&(this.textHandler(this.text),this.text=``),this._closed=!0,this._init(),this}};async function*zt(e){let t=new Rt({xmlns:!1,position:!0}),n;t.on(`error`,e=>{n=e});let r=[];t.on(`opentag`,e=>r.push({eventType:`opentag`,value:e})),t.on(`text`,e=>r.push({eventType:`text`,value:e})),t.on(`closetag`,e=>r.push({eventType:`closetag`,value:e}));for await(let i of e){let e=Le(i);if(t.write(e),n)throw n;yield r,r=[]}if(t.close(),n)throw n;r.length>0&&(yield r)}var I=class e{prepare(e,t){}render(e,t){}parseOpen(e){}parseText(e){}parseClose(e){return!1}reconcile(e,t){}reset(){this.model=null,this.map&&Object.values(this.map).forEach(t=>{t instanceof e?t.reset():t.xform&&t.xform.reset()})}mergeModel(e){this.model=Object.assign(this.model||{},e)}async parse(e){let t=!1,n;for await(let r of e)if(!t){for(let{eventType:e,value:i}of r)if(e===`opentag`)this.parseOpen(i);else if(e===`text`)this.parseText(i);else if(e===`closetag`&&!this.parseClose(i.name)){t=!0,n=this.model;break}}return t?n:this.model}async parseStream(e){return this.parse(zt(e))}get xml(){return this.toXml(this.model)}toXml(e){let t=new P;return this.render(t,e),t.xml}static toAttribute(e,t,n=!1){if(e===void 0){if(n)return t}else if(n||e!==t)return e.toString()}static toStringAttribute(t,n,r=!1){return e.toAttribute(t,n,r)}static toStringValue(e,t){return e===void 0?t:e}static toBoolAttribute(e,t,n=!1){if(e===void 0){if(n)return t}else if(n||e!==t)return e?`1`:`0`}static toBoolValue(e,t){return e===void 0?t:e===`1`}static toIntAttribute(t,n,r=!1){return e.toAttribute(t,n,r)}static toIntValue(e,t){return e===void 0?t:parseInt(e,10)}static toFloatAttribute(t,n,r=!1){return e.toAttribute(t,n,r)}static toFloatValue(e,t){return e===void 0?t:parseFloat(e)}};function Bt(e,t){e.openNode(t.tag,t.$),t.c&&t.c.forEach(t=>{Bt(e,t)}),t.t&&e.writeText(t.t),e.closeNode()}var Vt=class extends I{constructor(e){super(),this._model=e}render(e){if(!this._xml){let e=new P;Bt(e,this._model),this._xml=e.xml}e.writeXml(this._xml)}parseOpen(){return!0}parseText(){}parseClose(e){switch(e){case this._model.tag:return!1;default:return!0}}},L=class extends I{constructor(e){super(),this.tag=e.tag,this.always=!!e.always,this.count=e.count,this.empty=e.empty,this.$count=e.$count||`count`,this.$=e.$,this.childXform=e.childXform,this.maxItems=e.maxItems}prepare(e,t){let{childXform:n}=this;e&&e.forEach((e,r)=>{t.index=r,n.prepare(e,t)})}render(e,t){if(this.always||t&&t.length){e.openNode(this.tag,this.$),this.count&&e.addAttribute(this.$count,t&&t.length||0);let{childXform:n}=this;(t||[]).forEach((t,r)=>{n.render(e,t,r)}),e.closeNode()}else this.empty&&e.leafNode(this.tag)}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:return this.model=[],!0;default:return this.childXform.parseOpen(e)?(this.parser=this.childXform,!0):!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser){if(!this.parser.parseClose(e)&&(this.model.push(this.parser.model),this.parser=void 0,this.maxItems&&this.model.length>this.maxItems))throw Error(`Max ${this.childXform.tag} count (${this.maxItems}) exceeded`);return!0}return!1}reconcile(e,t){if(e){let{childXform:n}=this;e.forEach(e=>{n.reconcile(e,t)})}}reset(){super.reset(),this.childXform&&this.childXform.reset()}},R=class extends I{constructor(e){super(),this.name=e||`color`}get tag(){return this.name}render(e,t){return t?(e.openNode(this.name),t.argb?e.addAttribute(`rgb`,t.argb):t.theme===void 0?t.indexed===void 0?e.addAttribute(`auto`,`1`):e.addAttribute(`indexed`,t.indexed):(e.addAttribute(`theme`,t.theme),t.tint!==void 0&&e.addAttribute(`tint`,t.tint)),e.closeNode(),!0):!1}parseOpen(e){return e.name===this.name?(e.attributes.rgb?this.model={argb:e.attributes.rgb}:e.attributes.theme?(this.model={theme:parseInt(e.attributes.theme,10)},e.attributes.tint&&(this.model.tint=parseFloat(e.attributes.tint))):e.attributes.indexed?this.model={indexed:parseInt(e.attributes.indexed,10)}:this.model=void 0,!0):!1}parseText(){}parseClose(){return!1}},Ht=class extends I{constructor(e){super(),this.tag=e.tag,this.attr=e.attr}render(e,t){t&&(e.openNode(this.tag),e.closeNode())}parseOpen(e){e.name===this.tag&&(this.model=!0)}parseText(){}parseClose(){return!1}},Ut=class extends I{constructor(e){super(),this.tag=e.tag,this.attr=e.attr,this.attrs=e.attrs,this.zero=e.zero,this.text=[]}render(e,t){(t||this.zero)&&(e.openNode(this.tag),this.attrs&&e.addAttributes(this.attrs),this.attr?e.addAttribute(this.attr,t):e.writeText(t),e.closeNode())}parseOpen(e){return e.name===this.tag?(this.attr?this.model=parseInt(e.attributes[this.attr],10):this.text=[],!0):!1}parseText(e){this.attr||this.text.push(e)}parseClose(){return this.attr||(this.model=parseInt(this.text.join(``)||`0`,10)),!1}},z=class extends I{constructor(e){super(),this.tag=e.tag,this.attr=e.attr,this.attrs=e.attrs,this.text=[]}render(e,t){t!==void 0&&(e.openNode(this.tag),this.attrs&&e.addAttributes(this.attrs),this.attr?e.addAttribute(this.attr,t):e.writeText(t),e.closeNode())}parseOpen(e){e.name===this.tag&&(this.attr?this.model=e.attributes[this.attr]:this.text=[])}parseText(e){this.attr||this.text.push(e)}parseClose(){return this.attr||(this.model=this.text.join(``)),!1}},Wt=class e extends I{static{this.Attributes={single:{},double:{val:`double`},singleAccounting:{val:`singleAccounting`},doubleAccounting:{val:`doubleAccounting`}}}constructor(e){super(),this.model=e}get tag(){return`u`}render(t,n){if(n||=this.model,n===!0)t.leafNode(`u`);else{let r=e.Attributes[n];r&&t.leafNode(`u`,r)}}parseOpen(e){e.name===`u`&&(this.model=e.attributes.val||!0)}parseText(){}parseClose(){return!1}},Gt=class e extends I{constructor(t){super(),this.options=t||e.OPTIONS;let n=[{tag:`b`,prop:`bold`,xform:new Ht({tag:`b`,attr:`val`})},{tag:`i`,prop:`italic`,xform:new Ht({tag:`i`,attr:`val`})},{tag:`u`,prop:`underline`,xform:new Wt},{tag:`strike`,prop:`strike`,xform:new Ht({tag:`strike`,attr:`val`})},{tag:`condense`,prop:`condense`,xform:new Ht({tag:`condense`,attr:`val`})},{tag:`extend`,prop:`extend`,xform:new Ht({tag:`extend`,attr:`val`})},{tag:`outline`,prop:`outline`,xform:new Ht({tag:`outline`,attr:`val`})},{tag:`shadow`,prop:`shadow`,xform:new Ht({tag:`shadow`,attr:`val`})},{tag:`sz`,prop:`size`,xform:new Ut({tag:`sz`,attr:`val`})},{tag:`color`,prop:`color`,xform:new R},{tag:this.options.fontNameTag,prop:`name`,xform:new z({tag:this.options.fontNameTag,attr:`val`})},{tag:`family`,prop:`family`,xform:new Ut({tag:`family`,attr:`val`})},{tag:`scheme`,prop:`scheme`,xform:new z({tag:`scheme`,attr:`val`})},{tag:`charset`,prop:`charset`,xform:new Ut({tag:`charset`,attr:`val`})},{tag:`vertAlign`,prop:`vertAlign`,xform:new z({tag:`vertAlign`,attr:`val`})}];this.map=Object.fromEntries(n.map(e=>[e.tag,{prop:e.prop,xform:e.xform}])),this.renderOrder=n.map(e=>e.tag)}get tag(){return this.options.tagName}render(e,t){let{map:n,renderOrder:r}=this;e.openNode(this.options.tagName),r.forEach(r=>{n[r].xform.render(e,t[n[r].prop])}),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(this.map[e.name])return this.parser=this.map[e.name].xform,this.parser.parseOpen(e);switch(e.name){case this.options.tagName:return this.model={},!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser&&!this.parser.parseClose(e)){let t=this.map[e];return this.parser.model&&(this.model[t.prop]=this.parser.model),this.parser=void 0,!0}switch(e){case this.options.tagName:return!1;default:return!0}}static{this.OPTIONS={tagName:`font`,fontNameTag:`name`}}},Kt=class extends I{constructor(){super(),this.map={color:new R}}get tag(){return`stop`}render(e,t){e.openNode(`stop`),e.addAttribute(`position`,t.position),this.map.color.render(e,t.color),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`stop`:return this.model={position:parseFloat(e.attributes.position)},!0;case`color`:return this.parser=this.map.color,this.parser.parseOpen(e),!0;default:return!1}}parseText(){}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.model.color=this.parser.model,this.parser=void 0),!0):!1}},qt=class extends I{constructor(){super(),this.map={fgColor:new R(`fgColor`),bgColor:new R(`bgColor`)}}get name(){return`pattern`}get tag(){return`patternFill`}render(e,t){e.openNode(`patternFill`),e.addAttribute(`patternType`,t.pattern),t.fgColor&&this.map.fgColor.render(e,t.fgColor),t.bgColor&&this.map.bgColor.render(e,t.bgColor),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`patternFill`:return this.model={type:`pattern`,pattern:e.attributes.patternType},!0;default:return this.parser=this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser.model&&(this.model[e]=this.parser.model),this.parser=void 0),!0):!1}},Jt=class extends I{constructor(){super(),this.map={stop:new Kt}}get name(){return`gradient`}get tag(){return`gradientFill`}render(e,t){switch(e.openNode(`gradientFill`),t.gradient){case`angle`:e.addAttribute(`degree`,t.degree);break;case`path`:e.addAttribute(`type`,`path`),t.center.left&&(e.addAttribute(`left`,t.center.left),t.center.right===void 0&&e.addAttribute(`right`,t.center.left)),t.center.right&&e.addAttribute(`right`,t.center.right),t.center.top&&(e.addAttribute(`top`,t.center.top),t.center.bottom===void 0&&e.addAttribute(`bottom`,t.center.top)),t.center.bottom&&e.addAttribute(`bottom`,t.center.bottom);break;default:break}let n=this.map.stop;t.stops.forEach(t=>{n.render(e,t)}),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`gradientFill`:{let t=this.model={stops:[]};return e.attributes.degree?(t.gradient=`angle`,t.degree=parseInt(e.attributes.degree,10)):e.attributes.type===`path`&&(t.gradient=`path`,t.center={left:e.attributes.left?parseFloat(e.attributes.left):0,top:e.attributes.top?parseFloat(e.attributes.top):0},e.attributes.right!==e.attributes.left&&(t.center.right=e.attributes.right?parseFloat(e.attributes.right):0),e.attributes.bottom!==e.attributes.top&&(t.center.bottom=e.attributes.bottom?parseFloat(e.attributes.bottom):0)),!0}case`stop`:return this.parser=this.map.stop,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.model.stops.push(this.parser.model),this.parser=void 0),!0):!1}},Yt=class e extends I{constructor(){super(),this.map={patternFill:new qt,gradientFill:new Jt}}get tag(){return`fill`}render(e,t){switch(e.addRollback(),e.openNode(`fill`),t.type){case`pattern`:this.map.patternFill.render(e,t);break;case`gradient`:this.map.gradientFill.render(e,t);break;default:e.rollback();return}e.closeNode(),e.commit()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`fill`:return this.model={},!0;default:return this.parser=this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.model=this.parser.model,this.model.type=this.parser.name,this.parser=void 0),!0):!1}validStyle(t){return e.validPatternValues[t]}static{this.validPatternValues=[`none`,`solid`,`darkVertical`,`darkGray`,`mediumGray`,`lightGray`,`gray125`,`gray0625`,`darkHorizontal`,`darkVertical`,`darkDown`,`darkUp`,`darkGrid`,`darkTrellis`,`lightHorizontal`,`lightVertical`,`lightDown`,`lightUp`,`lightGrid`,`lightTrellis`,`lightGrid`].reduce((e,t)=>(e[t]=!0,e),{})}static{this.StopXform=Kt}static{this.PatternFillXform=qt}static{this.GradientFillXform=Jt}},Xt=class e extends I{constructor(e){super(),this.name=e,this.map={color:new R}}get tag(){return this.name}render(e,t,n){let r=t&&t.color||n||this.defaultColor;e.openNode(this.name),t&&t.style&&(e.addAttribute(`style`,t.style),r&&this.map.color.render(e,r)),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.name:{let{style:t}=e.attributes;return t?this.model={style:t}:this.model=void 0,!0}case`color`:return this.parser=this.map.color,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):(e===this.name&&this.map.color.model&&(this.model||={},this.model.color=this.map.color.model),!1)}validStyle(t){return e.validStyleValues[t]}static{this.validStyleValues=[`thin`,`dashed`,`dotted`,`dashDot`,`hair`,`dashDotDot`,`slantDashDot`,`mediumDashed`,`mediumDashDotDot`,`mediumDashDot`,`medium`,`double`,`thick`].reduce((e,t)=>(e[t]=!0,e),{})}},Zt=class extends I{constructor(){super(),this.map={top:new Xt(`top`),left:new Xt(`left`),bottom:new Xt(`bottom`),right:new Xt(`right`),diagonal:new Xt(`diagonal`)}}render(e,t){let{color:n}=t;e.openNode(`border`),t.diagonal&&t.diagonal.style&&(t.diagonal.up&&e.addAttribute(`diagonalUp`,`1`),t.diagonal.down&&e.addAttribute(`diagonalDown`,`1`));let r=(r,i)=>{let a=r;a&&!a.color&&t.color&&(a={...a,color:t.color}),i.render(e,a,n)};r(t.left,this.map.left),r(t.right,this.map.right),r(t.top,this.map.top),r(t.bottom,this.map.bottom),r(t.diagonal,this.map.diagonal),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`border`:return this.reset(),this.diagonalUp=k(e.attributes.diagonalUp),this.diagonalDown=k(e.attributes.diagonalDown),!0;default:return this.parser=this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;if(e===`border`){let e=this.model={},t=(t,n,r)=>{n&&(r&&Object.assign(n,r),e[t]=n)};t(`left`,this.map.left.model),t(`right`,this.map.right.model),t(`top`,this.map.top.model),t(`bottom`,this.map.bottom.model),t(`diagonal`,this.map.diagonal.model,{up:this.diagonalUp,down:this.diagonalDown})}return!1}};let Qt={0:{f:`General`},1:{f:`0`},2:{f:`0.00`},3:{f:`#,##0`},4:{f:`#,##0.00`},9:{f:`0%`},10:{f:`0.00%`},11:{f:`0.00E+00`},12:{f:`# ?/?`},13:{f:`# ??/??`},14:{f:`mm-dd-yy`},15:{f:`d-mmm-yy`},16:{f:`d-mmm`},17:{f:`mmm-yy`},18:{f:`h:mm AM/PM`},19:{f:`h:mm:ss AM/PM`},20:{f:`h:mm`},21:{f:`h:mm:ss`},22:{f:`m/d/yy "h":mm`},27:{"zh-tw":`[$-404]e/m/d`,"zh-cn":`yyyy"年"m"月"`,"ja-jp":`[$-411]ge.m.d`,"ko-kr":`yyyy"年" mm"月" dd"日"`},28:{"zh-tw":`[$-404]e"年"m"月"d"日"`,"zh-cn":`m"月"d"日"`,"ja-jp":`[$-411]ggge"年"m"月"d"日"`,"ko-kr":`mm-dd`},29:{"zh-tw":`[$-404]e"年"m"月"d"日"`,"zh-cn":`m"月"d"日"`,"ja-jp":`[$-411]ggge"年"m"月"d"日"`,"ko-kr":`mm-dd`},30:{"zh-tw":`m/d/yy `,"zh-cn":`m-d-yy`,"ja-jp":`m/d/yy`,"ko-kr":`mm-dd-yy`},31:{"zh-tw":`yyyy"年"m"月"d"日"`,"zh-cn":`yyyy"年"m"月"d"日"`,"ja-jp":`yyyy"年"m"月"d"日"`,"ko-kr":`yyyy"년" mm"월" dd"일"`},32:{"zh-tw":`hh"時"mm"分"`,"zh-cn":`h"时"mm"分"`,"ja-jp":`h"時"mm"分"`,"ko-kr":`h"시" mm"분"`},33:{"zh-tw":`hh"時"mm"分"ss"秒"`,"zh-cn":`h"时"mm"分"ss"秒"`,"ja-jp":`h"時"mm"分"ss"秒"`,"ko-kr":`h"시" mm"분" ss"초"`},34:{"zh-tw":`上午/下午 hh"時"mm"分"`,"zh-cn":`上午/下午 h"时"mm"分"`,"ja-jp":`yyyy"年"m"月"`,"ko-kr":`yyyy-mm-dd`},35:{"zh-tw":`上午/下午 hh"時"mm"分"ss"秒"`,"zh-cn":`上午/下午 h"时"mm"分"ss"秒"`,"ja-jp":`m"月"d"日"`,"ko-kr":`yyyy-mm-dd`},36:{"zh-tw":`[$-404]e/m/d`,"zh-cn":`yyyy"年"m"月"`,"ja-jp":`[$-411]ge.m.d`,"ko-kr":`yyyy"年" mm"月" dd"日"`},37:{f:`#,##0 ;(#,##0)`},38:{f:`#,##0 ;[Red](#,##0)`},39:{f:`#,##0.00 ;(#,##0.00)`},40:{f:`#,##0.00 ;[Red](#,##0.00)`},45:{f:`mm:ss`},46:{f:`[h]:mm:ss`},47:{f:`mmss.0`},48:{f:`##0.0E+0`},49:{f:`@`},50:{"zh-tw":`[$-404]e/m/d`,"zh-cn":`yyyy"年"m"月"`,"ja-jp":`[$-411]ge.m.d`,"ko-kr":`yyyy"年" mm"月" dd"日"`},51:{"zh-tw":`[$-404]e"年"m"月"d"日"`,"zh-cn":`m"月"d"日"`,"ja-jp":`[$-411]ggge"年"m"月"d"日"`,"ko-kr":`mm-dd`},52:{"zh-tw":`上午/下午 hh"時"mm"分"`,"zh-cn":`yyyy"年"m"月"`,"ja-jp":`yyyy"年"m"月"`,"ko-kr":`yyyy-mm-dd`},53:{"zh-tw":`上午/下午 hh"時"mm"分"ss"秒"`,"zh-cn":`m"月"d"日"`,"ja-jp":`m"月"d"日"`,"ko-kr":`yyyy-mm-dd`},54:{"zh-tw":`[$-404]e"年"m"月"d"日"`,"zh-cn":`m"月"d"日"`,"ja-jp":`[$-411]ggge"年"m"月"d"日"`,"ko-kr":`mm-dd`},55:{"zh-tw":`上午/下午 hh"時"mm"分"`,"zh-cn":`上午/下午 h"时"mm"分"`,"ja-jp":`yyyy"年"m"月"`,"ko-kr":`yyyy-mm-dd`},56:{"zh-tw":`上午/下午 hh"時"mm"分"ss"秒"`,"zh-cn":`上午/下午 h"时"mm"分"ss"秒"`,"ja-jp":`m"月"d"日"`,"ko-kr":`yyyy-mm-dd`},57:{"zh-tw":`[$-404]e/m/d`,"zh-cn":`yyyy"年"m"月"`,"ja-jp":`[$-411]ge.m.d`,"ko-kr":`yyyy"年" mm"月" dd"日"`},58:{"zh-tw":`[$-404]e"年"m"月"d"日"`,"zh-cn":`m"月"d"日"`,"ja-jp":`[$-411]ggge"年"m"月"d"日"`,"ko-kr":`mm-dd`},59:{"th-th":`t0`},60:{"th-th":`t0.00`},61:{"th-th":`t#,##0`},62:{"th-th":`t#,##0.00`},67:{"th-th":`t0%`},68:{"th-th":`t0.00%`},69:{"th-th":`t# ?/?`},70:{"th-th":`t# ??/??`},81:{"th-th":`d/m/bb`}};function $t(){let e={};return Object.entries(Qt).forEach(([t,n])=>{n.f&&(e[n.f]=parseInt(t,10))}),e}let en=$t();var tn=class extends I{constructor(e,t){super(),this.id=e,this.formatCode=t}get tag(){return`numFmt`}render(e,t){e.leafNode(`numFmt`,{numFmtId:t.id,formatCode:t.formatCode})}parseOpen(e){switch(e.name){case`numFmt`:return this.model={id:parseInt(e.attributes.numFmtId,10),formatCode:e.attributes.formatCode.replace(/[\\](.)/g,`$1`)},!0;default:return!1}}parseText(){}parseClose(){return!1}static getDefaultFmtId(e){return en[e]}static getDefaultFmtCode(e){return Qt[e]&&Qt[e].f}};let nn={ReadingOrder:{LeftToRight:1,RightToLeft:2}},rn={horizontalValues:[`left`,`center`,`right`,`fill`,`centerContinuous`,`distributed`,`justify`].reduce((e,t)=>(e[t]=!0,e),{}),horizontal(e){return this.horizontalValues[e]?e:void 0},verticalValues:[`top`,`middle`,`bottom`,`distributed`,`justify`].reduce((e,t)=>(e[t]=!0,e),{}),vertical(e){return e===`middle`?`center`:this.verticalValues[e]?e:void 0},wrapText(e){return e?!0:void 0},shrinkToFit(e){return e?!0:void 0},textRotation(e){switch(e){case`vertical`:return e;default:{let t=je(e);return t!==void 0&&t>=-90&&t<=90?t:void 0}}},indent(e){let t=je(e);return Math.max(0,t)},readingOrder(e){switch(e){case`ltr`:return nn.ReadingOrder.LeftToRight;case`rtl`:return nn.ReadingOrder.RightToLeft;default:return}}},an={toXml(e){let t=rn.textRotation(e);if(t){if(t===`vertical`)return 255;let e=Math.round(t);if(e>=0&&e<=90)return e;if(e<0&&e>=-90)return 90-e}},toModel(e){let t=je(e);if(t!==void 0){if(t===255)return`vertical`;if(t>=0&&t<=90)return t;if(t>90&&t<=180)return 90-t}}};var on=class extends I{get tag(){return`alignment`}render(e,t){e.addRollback(),e.openNode(`alignment`);let n=!1;function r(t,r){r&&(e.addAttribute(t,r),n=!0)}r(`horizontal`,rn.horizontal(t.horizontal)),r(`vertical`,rn.vertical(t.vertical)),r(`wrapText`,rn.wrapText(t.wrapText)?`1`:!1),r(`shrinkToFit`,rn.shrinkToFit(t.shrinkToFit)?`1`:!1),r(`indent`,rn.indent(t.indent)),r(`textRotation`,an.toXml(t.textRotation)),r(`readingOrder`,rn.readingOrder(t.readingOrder)),e.closeNode(),n?e.commit():e.rollback()}parseOpen(e){let t={},n=!1;function r(e,r,i){e&&(t[r]=i,n=!0)}r(e.attributes.horizontal,`horizontal`,e.attributes.horizontal),r(e.attributes.vertical,`vertical`,e.attributes.vertical===`center`?`middle`:e.attributes.vertical),r(e.attributes.wrapText,`wrapText`,k(e.attributes.wrapText)),r(e.attributes.shrinkToFit,`shrinkToFit`,k(e.attributes.shrinkToFit)),r(e.attributes.indent,`indent`,parseInt(e.attributes.indent,10)),r(e.attributes.textRotation,`textRotation`,an.toModel(e.attributes.textRotation)),r(e.attributes.readingOrder,`readingOrder`,e.attributes.readingOrder===`2`?`rtl`:`ltr`),this.model=n?t:null}parseText(){}parseClose(){return!1}};let sn={boolean(e,t){return e===void 0?t:e}};var cn=class extends I{get tag(){return`protection`}render(e,t){e.addRollback(),e.openNode(`protection`);let n=!1;function r(t,r){r!==void 0&&(e.addAttribute(t,r),n=!0)}r(`locked`,sn.boolean(t.locked,!0)?void 0:`0`),r(`hidden`,sn.boolean(t.hidden,!1)?`1`:void 0),e.closeNode(),n?e.commit():e.rollback()}parseOpen(e){let t={locked:e.attributes.locked!==`0`,hidden:e.attributes.hidden===`1`};this.model=!t.locked||t.hidden?t:null}parseText(){}parseClose(){return!1}},ln=class extends I{constructor(e){super(),this.xfId=!!(e&&e.xfId),this.map={alignment:new on,protection:new cn}}get tag(){return`xf`}render(e,t){e.openNode(`xf`,{numFmtId:t.numFmtId||0,fontId:t.fontId||0,fillId:t.fillId||0,borderId:t.borderId||0}),this.xfId&&e.addAttribute(`xfId`,t.xfId||0),t.numFmtId&&e.addAttribute(`applyNumberFormat`,`1`),t.fontId&&e.addAttribute(`applyFont`,`1`),t.fillId&&e.addAttribute(`applyFill`,`1`),t.borderId&&e.addAttribute(`applyBorder`,`1`),t.alignment&&e.addAttribute(`applyAlignment`,`1`),t.protection&&e.addAttribute(`applyProtection`,`1`),t.alignment&&this.map.alignment.render(e,t.alignment),t.protection&&this.map.protection.render(e,t.protection),t.checkbox&&t.xfComplementIndex!==void 0&&(e.openNode(`extLst`),e.openNode(`ext`,{"xmlns:xfpb":`http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag`,uri:`{C7286773-470A-42A8-94C5-96B5CB345126}`}),e.leafNode(`xfpb:xfComplement`,{i:t.xfComplementIndex}),e.closeNode(),e.closeNode()),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`xf`:return this.model={numFmtId:parseInt(e.attributes.numFmtId,10),fontId:parseInt(e.attributes.fontId,10),fillId:parseInt(e.attributes.fillId,10),borderId:parseInt(e.attributes.borderId,10)},this.xfId&&(this.model.xfId=parseInt(e.attributes.xfId,10)),!0;case`alignment`:return this.parser=this.map.alignment,this.parser.parseOpen(e),!0;case`protection`:return this.parser=this.map.protection,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.map.protection===this.parser?this.model.protection=this.parser.model:this.model.alignment=this.parser.model,this.parser=void 0),!0):e!==`xf`}},un=class extends I{constructor(){super(),this.map={alignment:new on,border:new Zt,fill:new Yt,font:new Gt,numFmt:new tn,protection:new cn}}get tag(){return`dxf`}render(e,t){if(e.openNode(this.tag),t.font&&this.map.font.render(e,t.font),t.numFmt&&t.numFmtId){let n={id:t.numFmtId,formatCode:t.numFmt};this.map.numFmt.render(e,n)}t.fill&&this.map.fill.render(e,t.fill),t.alignment&&this.map.alignment.render(e,t.alignment),t.border&&this.map.border.render(e,t.border),t.protection&&this.map.protection.render(e,t.protection),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:return this.reset(),!0;default:return this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e),!0}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e===this.tag?(this.model={alignment:this.map.alignment.model,border:this.map.border.model,fill:this.map.fill.model,font:this.map.font.model,numFmt:this.map.numFmt.model,protection:this.map.protection.model},!1):!0}},B=class e extends I{constructor(t){super(),this.map={numFmts:new L({tag:`numFmts`,count:!0,childXform:new tn}),fonts:new L({tag:`fonts`,count:!0,childXform:new Gt,$:{"x14ac:knownFonts":1}}),fills:new L({tag:`fills`,count:!0,childXform:new Yt}),borders:new L({tag:`borders`,count:!0,childXform:new Zt}),cellStyleXfs:new L({tag:`cellStyleXfs`,count:!0,childXform:new ln}),cellXfs:new L({tag:`cellXfs`,count:!0,childXform:new ln({xfId:!0})}),dxfs:new L({tag:`dxfs`,always:!0,count:!0,childXform:new un}),numFmt:new tn,font:new Gt,fill:new Yt,border:new Zt,style:new ln({xfId:!0}),cellStyles:e.STATIC_XFORMS.cellStyles,tableStyles:e.STATIC_XFORMS.tableStyles,extLst:e.STATIC_XFORMS.extLst},t&&this.init()}initIndex(){this.index={style:{},numFmt:{},numFmtNextId:164,font:{},border:{},fill:{}}}init(){this.model={styles:[],numFmts:[],fonts:[],borders:[],fills:[],dxfs:[]},this.initIndex(),this._addBorder({}),this._addStyle({numFmtId:0,fontId:0,fillId:0,borderId:0,xfId:0}),this._addFill({type:`pattern`,pattern:`none`}),this._addFill({type:`pattern`,pattern:`gray125`}),this.weakMap=new WeakMap,this._hasCheckboxes=!1}render(t,n){let r=n||this.model;t.openXml(P.StdDocAttributes),t.openNode(`styleSheet`,e.STYLESHEET_ATTRIBUTES),this.index?(r.numFmts&&r.numFmts.length&&(t.openNode(`numFmts`,{count:r.numFmts.length}),r.numFmts.forEach(e=>{t.writeXml(e)}),t.closeNode()),r.fonts.length||this._addFont({size:11,color:{theme:1},name:`Calibri`,family:2,scheme:`minor`}),t.openNode(`fonts`,{count:r.fonts.length,"x14ac:knownFonts":1}),r.fonts.forEach(e=>{t.writeXml(e)}),t.closeNode(),t.openNode(`fills`,{count:r.fills.length}),r.fills.forEach(e=>{t.writeXml(e)}),t.closeNode(),t.openNode(`borders`,{count:r.borders.length}),r.borders.forEach(e=>{t.writeXml(e)}),t.closeNode(),this.map.cellStyleXfs.render(t,[{numFmtId:0,fontId:0,fillId:0,borderId:0,xfId:0}]),t.openNode(`cellXfs`,{count:r.styles.length}),r.styles.forEach(e=>{t.writeXml(e)}),t.closeNode()):(this.map.numFmts.render(t,r.numFmts),this.map.fonts.render(t,r.fonts),this.map.fills.render(t,r.fills),this.map.borders.render(t,r.borders),this.map.cellStyleXfs.render(t,[{numFmtId:0,fontId:0,fillId:0,borderId:0,xfId:0}]),this.map.cellXfs.render(t,r.styles)),e.STATIC_XFORMS.cellStyles.render(t),this.map.dxfs.render(t,r.dxfs),e.STATIC_XFORMS.tableStyles.render(t),e.STATIC_XFORMS.extLst.render(t),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`styleSheet`:return this.initIndex(),!0;default:return this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e),!0}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case`styleSheet`:{this.model={};let e=(e,t)=>{t.model&&t.model.length&&(this.model[e]=t.model)};if(e(`numFmts`,this.map.numFmts),e(`fonts`,this.map.fonts),e(`fills`,this.map.fills),e(`borders`,this.map.borders),e(`styles`,this.map.cellXfs),e(`dxfs`,this.map.dxfs),this.index={model:[],numFmt:{}},this.model.numFmts){let e=this.index.numFmt;this.model.numFmts.forEach(t=>{e[t.id]=t.formatCode})}return!1}default:return!0}}addStyleModel(e,t){if(!e)return 0;this.model.fonts.length||this._addFont({size:11,color:{theme:1},name:`Calibri`,family:2,scheme:`minor`});let n=t||u.ValueType.Number;if(n!==u.ValueType.Checkbox&&this.weakMap&&this.weakMap.has(e))return this.weakMap.get(e);let r={};if(e.numFmt)r.numFmtId=this._addNumFmtStr(e.numFmt);else switch(n){case u.ValueType.Number:r.numFmtId=this._addNumFmtStr(`General`);break;case u.ValueType.Date:r.numFmtId=this._addNumFmtStr(`mm-dd-yy`);break;default:break}e.font&&(r.fontId=this._addFont(e.font)),e.border&&(r.borderId=this._addBorder(e.border)),e.fill&&(r.fillId=this._addFill(e.fill)),e.alignment&&(r.alignment=e.alignment),e.protection&&(r.protection=e.protection),n===u.ValueType.Checkbox&&(this._hasCheckboxes=!0,r.alignment=r.alignment||{},r.checkbox=!0,r.xfComplementIndex=0);let i=this._addStyle(r);return n!==u.ValueType.Checkbox&&this.weakMap&&this.weakMap.set(e,i),i}getStyleModel(e){let t=this.model.styles[e];if(!t)return null;let n=this.index.model[e];if(n)return n;if(n=this.index.model[e]={},t.numFmtId){let e=this.index.numFmt[t.numFmtId]||tn.getDefaultFmtCode(t.numFmtId);e&&(n.numFmt=e)}function r(e,t,r){if(r||r===0){let i=t[r];i&&(n[e]=i)}}return r(`font`,this.model.fonts,t.fontId),r(`border`,this.model.borders,t.borderId),r(`fill`,this.model.fills,t.fillId),t.alignment&&(n.alignment=t.alignment),t.protection&&(n.protection=t.protection),n}addDxfStyle(e){return e.numFmt&&(e.numFmtId=this._addNumFmtStr(e.numFmt)),this.model.dxfs.push(e),this.model.dxfs.length-1}getDxfStyle(e){return this.model.dxfs[e]}get hasCheckboxes(){return!!this._hasCheckboxes}_addStyle(e){let t=this.map.style.toXml(e),n=this.index.style[t];return n===void 0&&(n=this.index.style[t]=this.model.styles.length,this.model.styles.push(t)),n}_addNumFmtStr(e){let t=tn.getDefaultFmtId(e);if(t!==void 0||(t=this.index.numFmt[e],t!==void 0))return t;t=this.index.numFmt[e]=164+this.model.numFmts.length;let n=this.map.numFmt.toXml({id:t,formatCode:e});return this.model.numFmts.push(n),t}_addFont(e){let t=this.map.font.toXml(e),n=this.index.font[t];return n===void 0&&(n=this.index.font[t]=this.model.fonts.length,this.model.fonts.push(t)),n}_addBorder(e){let t=this.map.border.toXml(e),n=this.index.border[t];return n===void 0&&(n=this.index.border[t]=this.model.borders.length,this.model.borders.push(t)),n}_addFill(e){let t=this.map.fill.toXml(e),n=this.index.fill[t];return n===void 0&&(n=this.index.fill[t]=this.model.fills.length,this.model.fills.push(t)),n}static{this.STYLESHEET_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`,"xmlns:mc":`http://schemas.openxmlformats.org/markup-compatibility/2006`,"mc:Ignorable":`x14ac x16r2`,"xmlns:x14ac":`http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac`,"xmlns:x16r2":`http://schemas.microsoft.com/office/spreadsheetml/2015/02/main`}}static{this.STATIC_XFORMS={cellStyles:new Vt({tag:`cellStyles`,$:{count:1},c:[{tag:`cellStyle`,$:{name:`Normal`,xfId:0,builtinId:0}}]}),dxfs:new Vt({tag:`dxfs`,$:{count:0}}),tableStyles:new Vt({tag:`tableStyles`,$:{count:0,defaultTableStyle:`TableStyleMedium2`,defaultPivotStyle:`PivotStyleLight16`}}),extLst:new Vt({tag:`extLst`,c:[{tag:`ext`,$:{uri:`{EB79DEF2-80B8-43e5-95BD-54CBDDF9020C}`,"xmlns:x14":`http://schemas.microsoft.com/office/spreadsheetml/2009/9/main`},c:[{tag:`x14:slicerStyles`,$:{defaultSlicerStyle:`SlicerStyleLight1`}}]},{tag:`ext`,$:{uri:`{9260A510-F301-46a8-8635-F512D64BE5F5}`,"xmlns:x15":`http://schemas.microsoft.com/office/spreadsheetml/2010/11/main`},c:[{tag:`x15:timelineStyles`,$:{defaultTimelineStyle:`TimeSlicerStyleLight1`}}]}]})}}};B.Mock=class extends B{constructor(){super(),this.model={styles:[{numFmtId:0,fontId:0,fillId:0,borderId:0,xfId:0}],numFmts:[],fonts:[{size:11,color:{theme:1},name:`Calibri`,family:2,scheme:`minor`}],borders:[{}],fills:[{type:`pattern`,pattern:`none`},{type:`pattern`,pattern:`gray125`}]}}parseStream(e){return e.autodrain(),Promise.resolve()}addStyleModel(e,t){switch(t){case u.ValueType.Checkbox:throw Error(`Checkbox cells require styles to be enabled (useStyles: true)`);case u.ValueType.Date:return this.dateStyleId;default:return 0}}get hasCheckboxes(){return!1}get dateStyleId(){if(!this._dateStyleId){let e={numFmtId:tn.getDefaultFmtId(`mm-dd-yy`)};this._dateStyleId=this.model.styles.length,this.model.styles.push(e)}return this._dateStyleId}getStyleModel(){return{}}};var dn=class extends I{constructor(e){super(),this.tag=e.tag,this.attr=e.attr,this.attrs=e.attrs,this.text=[],this._format=e.format||function(e){try{return Number.isNaN(e.getTime())?``:e.toISOString()}catch{return``}},this._parse=e.parse||function(e){return new Date(e)}}render(e,t){t&&(e.openNode(this.tag),this.attrs&&e.addAttributes(this.attrs),this.attr?e.addAttribute(this.attr,this._format(t)):e.writeText(this._format(t)),e.closeNode())}parseOpen(e){e.name===this.tag&&(this.attr?this.model=this._parse(e.attributes[this.attr]):this.text=[])}parseText(e){this.attr||this.text.push(e)}parseClose(){return this.attr||(this.model=this._parse(this.text.join(``))),!1}},fn=class e extends I{constructor(){super(),this.map={"dc:creator":new z({tag:`dc:creator`}),"dc:title":new z({tag:`dc:title`}),"dc:subject":new z({tag:`dc:subject`}),"dc:description":new z({tag:`dc:description`}),"dc:identifier":new z({tag:`dc:identifier`}),"dc:language":new z({tag:`dc:language`}),"cp:keywords":new z({tag:`cp:keywords`}),"cp:category":new z({tag:`cp:category`}),"cp:lastModifiedBy":new z({tag:`cp:lastModifiedBy`}),"cp:lastPrinted":new dn({tag:`cp:lastPrinted`,format:e.DateFormat}),"cp:revision":new Ut({tag:`cp:revision`}),"cp:version":new z({tag:`cp:version`}),"cp:contentStatus":new z({tag:`cp:contentStatus`}),"cp:contentType":new z({tag:`cp:contentType`}),"dcterms:created":new dn({tag:`dcterms:created`,attrs:e.DateAttrs,format:e.DateFormat}),"dcterms:modified":new dn({tag:`dcterms:modified`,attrs:e.DateAttrs,format:e.DateFormat})}}render(t,n){t.openXml(P.StdDocAttributes),t.openNode(`cp:coreProperties`,e.CORE_PROPERTY_ATTRIBUTES),this.map[`dc:creator`].render(t,n.creator),this.map[`dc:title`].render(t,n.title),this.map[`dc:subject`].render(t,n.subject),this.map[`dc:description`].render(t,n.description),this.map[`dc:identifier`].render(t,n.identifier),this.map[`dc:language`].render(t,n.language),this.map[`cp:keywords`].render(t,n.keywords),this.map[`cp:category`].render(t,n.category),this.map[`cp:lastModifiedBy`].render(t,n.lastModifiedBy),this.map[`cp:lastPrinted`].render(t,n.lastPrinted),this.map[`cp:revision`].render(t,n.revision),this.map[`cp:version`].render(t,n.version),this.map[`cp:contentStatus`].render(t,n.contentStatus),this.map[`cp:contentType`].render(t,n.contentType),this.map[`dcterms:created`].render(t,n.created),this.map[`dcterms:modified`].render(t,n.modified),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`cp:coreProperties`:case`coreProperties`:return!0;default:if(this.parser=this.map[e.name],this.parser)return this.parser.parseOpen(e),!0;throw Error(`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case`cp:coreProperties`:case`coreProperties`:return this.model={creator:this.map[`dc:creator`].model,title:this.map[`dc:title`].model,subject:this.map[`dc:subject`].model,description:this.map[`dc:description`].model,identifier:this.map[`dc:identifier`].model,language:this.map[`dc:language`].model,keywords:this.map[`cp:keywords`].model,category:this.map[`cp:category`].model,lastModifiedBy:this.map[`cp:lastModifiedBy`].model,lastPrinted:this.map[`cp:lastPrinted`].model,revision:this.map[`cp:revision`].model,contentStatus:this.map[`cp:contentStatus`].model,contentType:this.map[`cp:contentType`].model,created:this.map[`dcterms:created`].model,modified:this.map[`dcterms:modified`].model},!1;default:throw Error(`Unexpected xml node in parseClose: ${e}`)}}static{this.DateFormat=function(e){return e.toISOString().replace(/[.]\d{3}/,``)}}static{this.DateAttrs={"xsi:type":`dcterms:W3CDTF`}}static{this.CORE_PROPERTY_ATTRIBUTES={"xmlns:cp":`http://schemas.openxmlformats.org/package/2006/metadata/core-properties`,"xmlns:dc":`http://purl.org/dc/elements/1.1/`,"xmlns:dcterms":`http://purl.org/dc/terms/`,"xmlns:dcmitype":`http://purl.org/dc/dcmitype/`,"xmlns:xsi":`http://www.w3.org/2001/XMLSchema-instance`}}},pn=class extends I{get tag(){return`t`}render(e,t){e.openNode(`t`),/^\s|\n|\s$/.test(t)&&e.addAttribute(`xml:space`,`preserve`),e.writeText(t),e.closeNode()}parseOpen(e){switch(e.name){case`t`:return this._text=[],this.model=``,!0;default:return!1}}parseText(e){this._text.push(e),this.model=this._text.join(``).replace(/_x([0-9A-F]{4})_/g,(e,t)=>String.fromCharCode(parseInt(t,16)))}parseClose(){return!1}},mn=class e extends I{constructor(e){super(),this.model=e}get tag(){return`r`}get textXform(){return this._textXform||=new pn}get fontXform(){return this._fontXform||=new Gt(e.FONT_OPTIONS)}render(e,t){let n=t||this.model;e.openNode(`r`),n.font&&this.fontXform.render(e,n.font),this.textXform.render(e,n.text),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`r`:return this.model={},!0;case`t`:return this.parser=this.textXform,this.parser.parseOpen(e),!0;case`rPr`:return this.parser=this.fontXform,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){switch(e){case`r`:return!1;case`t`:return this.model.text=this.parser.model,this.parser=void 0,!0;case`rPr`:return this.model.font=this.parser.model,this.parser=void 0,!0;default:return this.parser&&this.parser.parseClose(e),!0}}static{this.FONT_OPTIONS={tagName:`rPr`,fontNameTag:`rFont`}}},hn=class extends I{constructor(){super(),this.map={r:new mn,t:new pn}}get tag(){return`rPh`}render(e,t){if(e.openNode(this.tag,{sb:t.sb||0,eb:t.eb||0}),t&&Object.prototype.hasOwnProperty.call(t,`richText`)&&t.richText){let{r:n}=this.map;t.richText.forEach(t=>{n.render(e,t)})}else t&&this.map.t.render(e,t.text);e.closeNode()}parseOpen(e){let{name:t}=e;return this.parser?(this.parser.parseOpen(e),!0):t===this.tag?(this.model={sb:parseInt(e.attributes.sb,10),eb:parseInt(e.attributes.eb,10)},!0):(this.parser=this.map[t],this.parser?(this.parser.parseOpen(e),!0):!1)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser){if(!this.parser.parseClose(e)){switch(e){case`r`:{let e=this.model.richText;e||=this.model.richText=[],e.push(this.parser.model);break}case`t`:this.model.text=this.parser.model;break;default:break}this.parser=void 0}return!0}switch(e){case this.tag:return!1;default:return!0}}},gn=class extends I{constructor(e){super(),this.model=e,this.map={r:new mn,t:new pn,rPh:new hn}}get tag(){return`si`}render(e,t){e.openNode(this.tag),t&&typeof t==`object`&&Object.prototype.hasOwnProperty.call(t,`richText`)&&t.richText?t.richText.length?t.richText.forEach(t=>{this.map.r.render(e,t)}):this.map.t.render(e,``):t!=null&&this.map.t.render(e,t),e.closeNode()}parseOpen(e){let{name:t}=e;return this.parser?(this.parser.parseOpen(e),!0):t===this.tag?(this.model={},!0):(this.parser=this.map[t],this.parser?(this.parser.parseOpen(e),!0):!1)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser){if(!this.parser.parseClose(e)){switch(e){case`r`:{let e=this.model.richText;e||=this.model.richText=[],e.push(this.parser.model);break}case`t`:this.model=this.parser.model;break;default:break}this.parser=void 0}return!0}switch(e){case this.tag:return!1;default:return!0}}},_n=class extends I{constructor(e){super(),this.model=e||{values:[],count:0},this.hash=Object.create(null),this.rich=Object.create(null)}get sharedStringXform(){return this._sharedStringXform||=new gn}get values(){return this.model.values}get uniqueCount(){return this.model.values.length}get count(){return this.model.count}getString(e){return this.model.values[e]}add(e){return e.richText?this.addRichText(e):this.addText(e)}addText(e){let t=this.hash[e];return t===void 0&&(t=this.hash[e]=this.model.values.length,this.model.values.push(e)),this.model.count++,t}addRichText(e){let t=this.sharedStringXform.toXml(e),n=this.rich[t];return n===void 0&&(n=this.rich[t]=this.model.values.length,this.model.values.push(e)),this.model.count++,n}render(e,t){let n=t||this._values;e.openXml(P.StdDocAttributes),e.openNode(`sst`,{xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`,count:n.count,uniqueCount:n.values.length});let r=this.sharedStringXform;n.values.forEach(t=>{r.render(e,t)}),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`sst`:return!0;case`si`:return this.parser=this.sharedStringXform,this.parser.parseOpen(e),!0;default:throw Error(`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.values.push(this.parser.model),this.model.count++,this.parser=void 0),!0;switch(e){case`sst`:return!1;default:throw Error(`Unexpected xml node in parseClose: ${e}`)}}},vn=class extends I{render(e,t){e.leafNode(`Relationship`,t)}parseOpen(e){switch(e.name){case`Relationship`:return this.model=e.attributes,!0;default:return!1}}parseText(){}parseClose(){return!1}},V=class e extends I{constructor(){super(),this.map={Relationship:new vn}}render(t,n){let r=n||this._values;t.openXml(P.StdDocAttributes),t.openNode(`Relationships`,e.RELATIONSHIPS_ATTRIBUTES),r.forEach(e=>{this.map.Relationship.render(t,e)}),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`Relationships`:return this.model=[],!0;default:if(this.parser=this.map[e.name],this.parser)return this.parser.parseOpen(e),!0;throw Error(`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.push(this.parser.model),this.parser=void 0),!0;switch(e){case`Relationships`:return!1;default:throw Error(`Unexpected xml node in parseClose: ${e}`)}}static{this.RELATIONSHIPS_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/package/2006/relationships`}}};let H={contentTypes:`[Content_Types].xml`,rootRels:`_rels/.rels`,docPropsApp:`docProps/app.xml`,docPropsCore:`docProps/core.xml`,xlWorkbook:`xl/workbook.xml`,xlWorkbookRels:`xl/_rels/workbook.xml.rels`,xlSharedStrings:`xl/sharedStrings.xml`,xlStyles:`xl/styles.xml`,xlTheme1:`xl/theme/theme1.xml`,xlFeaturePropertyBag:`xl/featurePropertyBag/featurePropertyBag.xml`},yn=/^xl\/worksheets\/sheet(\d+)[.]xml$/,bn=/^xl\/worksheets\/_rels\/sheet(\d+)[.]xml[.]rels$/,xn=/^xl\/theme\/[a-zA-Z0-9]+[.]xml$/,Sn=/^xl\/media\/([a-zA-Z0-9]+[.][a-zA-Z0-9]{3,4})$/,Cn=/^xl\/drawings\/(drawing\d+)[.]xml$/,wn=/^xl\/drawings\/_rels\/(drawing\d+)[.]xml[.]rels$/,Tn=/^xl\/drawings\/(vmlDrawing\d+)[.]vml$/,En=/^xl\/comments(\d+)[.]xml$/,Dn=/^xl\/tables\/(table\d+)[.]xml$/,On=/^xl\/pivotTables\/(pivotTable\d+)[.]xml$/,kn=/^xl\/pivotTables\/_rels\/(pivotTable\d+)[.]xml[.]rels$/,An=/^xl\/pivotCache\/(pivotCacheDefinition\d+)[.]xml$/,jn=/^xl\/pivotCache\/_rels\/(pivotCacheDefinition\d+)[.]xml[.]rels$/,Mn=/^xl\/pivotCache\/(pivotCacheRecords\d+)[.]xml$/;function Nn(e){return e.startsWith(`/`)?e.slice(1):e}function Pn(e){let t=yn.exec(e);if(t)return parseInt(t[1],10)}function Fn(e){let t=bn.exec(e);if(t)return parseInt(t[1],10)}function In(e){return e.startsWith(`xl/media/`)}function Ln(e){let t=Sn.exec(e);return t?t[1]:void 0}function Rn(e){return xn.test(e)}function zn(e){let t=/^xl\/theme\/([a-zA-Z0-9]+)[.]xml$/.exec(e);return t?t[1]:void 0}function Bn(e){return In(e)||Rn(e)}function Vn(e){let t=Cn.exec(e);return t?t[1]:void 0}function Hn(e){let t=wn.exec(e);return t?t[1]:void 0}function Un(e){let t=Tn.exec(e);return t?t[1]:void 0}function Wn(e){let t=En.exec(e);return t?t[1]:void 0}function Gn(e){let t=Dn.exec(e);return t?t[1]:void 0}function Kn(e){let t=On.exec(e);return t?t[1]:void 0}function qn(e){let t=kn.exec(e);return t?t[1]:void 0}function Jn(e){let t=An.exec(e);return t?t[1]:void 0}function Yn(e){let t=jn.exec(e);return t?t[1]:void 0}function Xn(e){let t=Mn.exec(e);return t?t[1]:void 0}function U(e){return e.startsWith(`/`)?e:`/${e}`}function Zn(e){return`xl/theme/${e}.xml`}function Qn(e){return`xl/media/${e}`}function $n(e){return`xl/worksheets/sheet${e}.xml`}function er(e){return`xl/worksheets/_rels/sheet${e}.xml.rels`}function tr(e){return`worksheets/sheet${e}.xml`}function nr(e){return`xl/comments${e}.xml`}function rr(e){return`xl/${e}.xml`}function ir(e){return`xl/drawings/vmlDrawing${e}.vml`}function ar(e){return`xl/tables/${e}`}function or(e){return`xl/drawings/${e}.xml`}function sr(e){return`xl/drawings/_rels/${e}.xml.rels`}function cr(e){return`xl/pivotCache/pivotCacheDefinition${e}.xml`}function lr(e){return`xl/pivotCache/_rels/pivotCacheDefinition${e}.xml.rels`}function ur(e){return`xl/pivotCache/pivotCacheRecords${e}.xml`}function dr(e){return`pivotCacheRecords${e}.xml`}function fr(e){return`xl/pivotTables/pivotTable${e}.xml`}function pr(e){return`xl/pivotTables/_rels/pivotTable${e}.xml.rels`}function mr(e){return`../pivotCache/pivotCacheDefinition${e}.xml`}let hr={workbookStyles:`styles.xml`,workbookSharedStrings:`sharedStrings.xml`,workbookTheme1:`theme/theme1.xml`,workbookFeaturePropertyBag:`featurePropertyBag/featurePropertyBag.xml`};function gr(e){return`pivotCache/pivotCacheDefinition${e}.xml`}function _r(e){return`../comments${e}.xml`}function vr(e){return`../drawings/vmlDrawing${e}.vml`}function yr(e){return`../drawings/${e}.xml`}function br(e){return`../drawings/${e}.vml`}function xr(e){return`../${e}.xml`}function Sr(e){return`../pivotTables/pivotTable${e}.xml`}function Cr(e){return`../pivotTables/${e}.xml`}function wr(e){return`../tables/${e}`}function Tr(e){return`../tables/${e}.xml`}function Er(e){return`../media/${e}`}function Dr(e){return`xl/ctrlProps/ctrlProp${e}.xml`}function Or(e){return`../ctrlProps/ctrlProp${e}.xml`}var kr=class e extends I{render(t,n){t.openXml(P.StdDocAttributes),t.openNode(`Types`,e.PROPERTY_ATTRIBUTES);let r={};if((n.media||[]).forEach(e=>{if(e.type===`image`){let n=e.extension;r[n]||(r[n]=!0,t.leafNode(`Default`,{Extension:n,ContentType:`image/${n}`}))}}),t.leafNode(`Default`,{Extension:`rels`,ContentType:`application/vnd.openxmlformats-package.relationships+xml`}),t.leafNode(`Default`,{Extension:`xml`,ContentType:`application/xml`}),t.leafNode(`Override`,{PartName:U(H.xlWorkbook),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml`}),n.worksheets.forEach((e,n)=>{let r=e.fileIndex||n+1;t.leafNode(`Override`,{PartName:U($n(r)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml`})}),(n.pivotTables||[]).length&&(n.pivotTables||[]).forEach(e=>{let n=e.tableNumber;t.leafNode(`Override`,{PartName:U(cr(n)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheDefinition+xml`}),t.leafNode(`Override`,{PartName:U(ur(n)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheRecords+xml`}),t.leafNode(`Override`,{PartName:U(fr(n)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml`})}),t.leafNode(`Override`,{PartName:U(H.xlTheme1),ContentType:`application/vnd.openxmlformats-officedocument.theme+xml`}),t.leafNode(`Override`,{PartName:U(H.xlStyles),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml`}),n.hasCheckboxes&&t.leafNode(`Override`,{PartName:U(H.xlFeaturePropertyBag),ContentType:`application/vnd.ms-excel.featurepropertybag+xml`}),n.sharedStrings&&n.sharedStrings.count&&t.leafNode(`Override`,{PartName:U(H.xlSharedStrings),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml`}),n.tables&&n.tables.forEach(e=>{t.leafNode(`Override`,{PartName:U(ar(e.target)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml`})}),n.drawings&&n.drawings.forEach(e=>{t.leafNode(`Override`,{PartName:U(or(e.name)),ContentType:`application/vnd.openxmlformats-officedocument.drawing+xml`})}),n.commentRefs&&(t.leafNode(`Default`,{Extension:`vml`,ContentType:`application/vnd.openxmlformats-officedocument.vmlDrawing`}),n.commentRefs.forEach(({commentName:e})=>{t.leafNode(`Override`,{PartName:U(rr(e)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml`})})),n.formControlRefs){n.commentRefs||t.leafNode(`Default`,{Extension:`vml`,ContentType:`application/vnd.openxmlformats-officedocument.vmlDrawing`});for(let e of n.formControlRefs)t.leafNode(`Override`,{PartName:U(Dr(e)),ContentType:`application/vnd.ms-excel.controlproperties+xml`})}t.leafNode(`Override`,{PartName:U(H.docPropsCore),ContentType:`application/vnd.openxmlformats-package.core-properties+xml`}),t.leafNode(`Override`,{PartName:U(H.docPropsApp),ContentType:`application/vnd.openxmlformats-officedocument.extended-properties+xml`}),t.closeNode()}parseOpen(){return!1}parseText(){}parseClose(){return!1}static{this.PROPERTY_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/package/2006/content-types`}}},Ar=class extends I{render(e,t){e.openNode(`HeadingPairs`),e.openNode(`vt:vector`,{size:2,baseType:`variant`}),e.openNode(`vt:variant`),e.leafNode(`vt:lpstr`,void 0,`Worksheets`),e.closeNode(),e.openNode(`vt:variant`),e.leafNode(`vt:i4`,void 0,t.length),e.closeNode(),e.closeNode(),e.closeNode()}parseOpen(e){return e.name===`HeadingPairs`}parseText(){}parseClose(e){return e!==`HeadingPairs`}},jr=class extends I{render(e,t){e.openNode(`TitlesOfParts`),e.openNode(`vt:vector`,{size:t.length,baseType:`lpstr`}),t.forEach(t=>{e.leafNode(`vt:lpstr`,void 0,t.name)}),e.closeNode(),e.closeNode()}parseOpen(e){return e.name===`TitlesOfParts`}parseText(){}parseClose(e){return e!==`TitlesOfParts`}},Mr=class e extends I{constructor(){super(),this.map={Company:new z({tag:`Company`}),Manager:new z({tag:`Manager`}),HeadingPairs:new Ar,TitleOfParts:new jr}}render(t,n){t.openXml(P.StdDocAttributes),t.openNode(`Properties`,e.PROPERTY_ATTRIBUTES),t.leafNode(`Application`,void 0,`Microsoft Excel`),t.leafNode(`DocSecurity`,void 0,`0`),t.leafNode(`ScaleCrop`,void 0,`false`),this.map.HeadingPairs.render(t,n.worksheets),this.map.TitleOfParts.render(t,n.worksheets),this.map.Company.render(t,n.company||``),this.map.Manager.render(t,n.manager),t.leafNode(`LinksUpToDate`,void 0,`false`),t.leafNode(`SharedDoc`,void 0,`false`),t.leafNode(`HyperlinksChanged`,void 0,`false`),t.leafNode(`AppVersion`,void 0,`16.0300`),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`Properties`:return!0;default:return this.parser=this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case`Properties`:return this.model={worksheets:this.map.TitleOfParts.model,company:this.map.Company.model,manager:this.map.Manager.model},!1;default:return!0}}static{this.DateFormat=function(e){return e.toISOString().replace(/[.]\d{3,6}/,``)}}static{this.DateAttrs={"xsi:type":`dcterms:W3CDTF`}}static{this.PROPERTY_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/officeDocument/2006/extended-properties`,"xmlns:vt":`http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes`}}},Nr=class extends I{constructor(){super(),this._parsedText=[]}render(e,t){e.openNode(`definedName`,{name:t.name,localSheetId:t.localSheetId}),e.writeText(t.ranges.join(`,`)),e.closeNode()}parseOpen(e){switch(e.name){case`definedName`:return this._parsedName=e.attributes.name,this._parsedLocalSheetId=e.attributes.localSheetId,this._parsedText=[],!0;default:return!1}}parseText(e){this._parsedText.push(e)}parseClose(){return this.model={name:this._parsedName,ranges:Rr(this._parsedText.join(``))},this._parsedLocalSheetId!==void 0&&(this.model.localSheetId=parseInt(this._parsedLocalSheetId,10)),!1}};let Pr=/^[$]?[A-Za-z]{1,3}[$]?\d+(:[$]?[A-Za-z]{1,3}[$]?\d+)?$/,Fr=/^[$]?\d+:[$]?\d+$/,Ir=/^[$]?[A-Za-z]{1,3}:[$]?[A-Za-z]{1,3}$/;function Lr(e){if(e.startsWith(`{`)||e.endsWith(`}`))return!1;let t=e.split(`!`).pop()||``;if(!Pr.test(t)&&!Fr.test(t)&&!Ir.test(t))return!1;try{let t=n.decodeEx(e);return`row`in t&&typeof t.row==`number`||`top`in t&&typeof t.top==`number`||`left`in t&&typeof t.left==`number`}catch{return!1}}function Rr(e){let t=e.trim();if(t.startsWith(`{`)&&t.endsWith(`}`))return[];let n=[],r=!1,i=``;return e.split(`,`).forEach(e=>{if(!e)return;let t=(e.match(/'/g)||[]).length;if(!t){r?i+=`${e},`:Lr(e)&&n.push(e);return}let a=t%2==0;!r&&a&&Lr(e)?n.push(e):r&&!a?(r=!1,Lr(i+e)&&n.push(i+e),i=``):(r=!0,i+=`${e},`)}),n}var zr=class extends I{render(e,t){e.leafNode(`sheet`,{name:t.name,sheetId:t.id,state:t.state===`visible`?void 0:t.state,"r:id":t.rId})}parseOpen(e){return e.name===`sheet`?(this.model={name:Oe(e.attributes.name),id:parseInt(e.attributes.sheetId,10),state:e.attributes.state,rId:e.attributes[`r:id`]},!0):!1}parseText(){}parseClose(){return!1}},Br=class extends I{render(e,t){let n={xWindow:t.x||0,yWindow:t.y||0,windowWidth:t.width||12e3,windowHeight:t.height||24e3,firstSheet:t.firstSheet,activeTab:t.activeTab};t.visibility&&t.visibility!==`visible`&&(n.visibility=t.visibility),e.leafNode(`workbookView`,n)}parseOpen(e){if(e.name===`workbookView`){let t=this.model={},n=function(e,n,r){t[e]=n===void 0?r:n},r=function(e,n,r){let i=n===void 0?r:parseInt(n,10);i!==void 0&&(t[e]=i)};return r(`x`,e.attributes.xWindow,0),r(`y`,e.attributes.yWindow,0),r(`width`,e.attributes.windowWidth,25e3),r(`height`,e.attributes.windowHeight,1e4),n(`visibility`,e.attributes.visibility,`visible`),r(`activeTab`,e.attributes.activeTab,void 0),r(`firstSheet`,e.attributes.firstSheet,void 0),!0}return!1}parseText(){}parseClose(){return!1}},Vr=class extends I{render(e,t){e.leafNode(`workbookPr`,{date1904:t.date1904?1:void 0,filterPrivacy:1})}parseOpen(e){return e.name===`workbookPr`?(this.model={date1904:e.attributes.date1904===`1`},!0):!1}parseText(){}parseClose(){return!1}},Hr=class extends I{render(e,t){e.leafNode(`calcPr`,{calcId:171027,fullCalcOnLoad:t.fullCalcOnLoad?1:void 0})}parseOpen(e){return e.name===`calcPr`?(this.model={},!0):!1}parseText(){}parseClose(){return!1}},Ur=class extends I{render(e,t){e.leafNode(`pivotCache`,{cacheId:t.cacheId,"r:id":t.rId})}parseOpen(e){return e.name===`pivotCache`?(this.model={cacheId:e.attributes.cacheId,rId:e.attributes[`r:id`]},!0):!1}parseText(){}parseClose(){return!1}},Wr=class e extends I{constructor(){super(),this.map={fileVersion:e.STATIC_XFORMS.fileVersion,workbookPr:new Vr,bookViews:new L({tag:`bookViews`,count:!1,childXform:new Br}),sheets:new L({tag:`sheets`,count:!1,childXform:new zr}),definedNames:new L({tag:`definedNames`,count:!1,childXform:new Nr}),calcPr:new Hr,pivotCaches:new L({tag:`pivotCaches`,count:!1,childXform:new Ur})}}prepare(e){e.sheets=e.worksheets;let t=[],n=0;e.sheets.forEach(e=>{if(e.pageSetup&&e.pageSetup.printArea&&e.pageSetup.printArea.split(`&&`).forEach(r=>{let i=r.split(`:`),a={name:`_xlnm.Print_Area`,ranges:[`'${e.name}'!$${i[0]}:$${i[1]}`],localSheetId:n};t.push(a)}),e.pageSetup&&(e.pageSetup.printTitlesRow||e.pageSetup.printTitlesColumn)){let r=[];if(e.pageSetup.printTitlesColumn){let t=e.pageSetup.printTitlesColumn.split(`:`);r.push(`'${e.name}'!$${t[0]}:$${t[1]}`)}if(e.pageSetup.printTitlesRow){let t=e.pageSetup.printTitlesRow.split(`:`);r.push(`'${e.name}'!$${t[0]}:$${t[1]}`)}let i={name:`_xlnm.Print_Titles`,ranges:r,localSheetId:n};t.push(i)}n++}),t.length&&(e.definedNames=e.definedNames.concat(t)),(e.media||[]).forEach((e,t)=>{e.name=e.type+(t+1)})}render(t,n){t.openXml(P.StdDocAttributes),t.openNode(`workbook`,e.WORKBOOK_ATTRIBUTES),this.map.fileVersion.render(t),this.map.workbookPr.render(t,n.properties),this.map.bookViews.render(t,n.views),this.map.sheets.render(t,n.sheets),this.map.definedNames.render(t,n.definedNames),this.map.calcPr.render(t,n.calcProperties),this.map.pivotCaches.render(t,n.pivotTables),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`workbook`:return!0;default:return this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e),!0}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case`workbook`:return this.model={sheets:this.map.sheets.model,properties:this.map.workbookPr.model||{},views:this.map.bookViews.model,calcProperties:{}},this.map.definedNames.model&&(this.model.definedNames=this.map.definedNames.model),this.map.pivotCaches.model&&this.map.pivotCaches.model.length>0&&(this.model.pivotCaches=this.map.pivotCaches.model),!1;default:return!0}}reconcile(e){let t=(e.workbookRels||[]).reduce((e,t)=>(e[t.Id]=t,e),{}),r=[],i,a=0;(e.sheets||[]).forEach(n=>{let o=t[n.rId];o&&(i=e.worksheetHash[`xl/${o.Target.replace(/^(\s|\/xl\/)+/,``)}`],i&&(i.name=n.name,i.id=n.id,i.state=n.state,r[a++]=i))});let o=[];e.definedNames&&e.definedNames.forEach(e=>{if(e.name===`_xlnm.Print_Area`){if(i=r[e.localSheetId],i){i.pageSetup||={};let t=n.decodeEx(e.ranges[0]);i.pageSetup.printArea=i.pageSetup.printArea?`${i.pageSetup.printArea}&&${t.dimensions}`:t.dimensions}}else if(e.name===`_xlnm.Print_Titles`){if(i=r[e.localSheetId],i){i.pageSetup||={};let t=e.ranges.join(`,`),n=/\$/g,r=t.match(/\$\d+:\$\d+/);if(r&&r.length){let e=r[0];i.pageSetup.printTitlesRow=e.replace(n,``)}let a=t.match(/\$[A-Z]+:\$[A-Z]+/);if(a&&a.length){let e=a[0];i.pageSetup.printTitlesColumn=e.replace(n,``)}}}else o.push(e)}),e.definedNames=o,e.media.forEach((e,t)=>{e.index=t})}static{this.WORKBOOK_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`,"xmlns:r":`http://schemas.openxmlformats.org/officeDocument/2006/relationships`,"xmlns:mc":`http://schemas.openxmlformats.org/markup-compatibility/2006`,"mc:Ignorable":`x15`,"xmlns:x15":`http://schemas.microsoft.com/office/spreadsheetml/2010/11/main`}}static{this.STATIC_XFORMS={fileVersion:new Vt({tag:`fileVersion`,$:{appName:`xl`,lastEdited:5,lowestEdited:5,rupBuild:9303}})}}};let W={OfficeDocument:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument`,Worksheet:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet`,CalcChain:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/calcChain`,SharedStrings:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings`,Styles:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles`,Theme:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme`,Hyperlink:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink`,Image:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/image`,CoreProperties:`http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties`,ExtenderProperties:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties`,Comments:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments`,VmlDrawing:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing`,Table:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/table`,PivotCacheDefinition:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/pivotCacheDefinition`,PivotCacheRecords:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/pivotCacheRecords`,PivotTable:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/pivotTable`,FeaturePropertyBag:`http://schemas.microsoft.com/office/2022/11/relationships/FeaturePropertyBag`,CtrlProp:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/ctrlProp`};var Gr=class{constructor(){this.merges={}}add(e){if(this.merges[e.master])this.merges[e.master].expandToAddress(e.address);else{let t=`${e.master}:${e.address}`;this.merges[e.master]=new r(t)}}get mergeCells(){return Object.values(this.merges).map(e=>e.range)}reconcile(e,t){e.forEach(e=>{let r=n.decode(e);for(let e=r.top;e<=r.bottom;e++){let i=t[e-1];for(let t=r.left;t<=r.right;t++){let a=i.cells[t-1];a?a.type===u.ValueType.Merge&&(a.master=r.tl):i.cells[t]={type:u.ValueType.Null,address:n.encodeAddress(e,t)}}}})}getMasterAddress(e){let t=this.hash[e];return t&&t.tl}};function Kr(e){if(e==null)return u.ValueType.Null;if(e instanceof String||typeof e==`string`)return u.ValueType.String;if(typeof e==`number`)return u.ValueType.Number;if(typeof e==`boolean`)return u.ValueType.Boolean;if(e instanceof Date)return u.ValueType.Date;if(e.text&&e.hyperlink)return u.ValueType.Hyperlink;if(e.formula)return u.ValueType.Formula;if(e.error)return u.ValueType.Error;throw Error(`I could not understand type of value`)}function qr(e){switch(e.type){case u.ValueType.Formula:return Kr(e.result);default:return e.type}}var Jr=class extends I{constructor(){super(),this.richTextXform=new mn}get tag(){return`c`}prepare(e,t){let n=t.styles.addStyleModel(e.style||{},qr(e));switch(n&&(e.styleId=n),e.comment&&t.comments.push({...e.comment,ref:e.address}),e.type){case u.ValueType.String:case u.ValueType.RichText:t.sharedStrings&&(e.ssId=t.sharedStrings.add(e.value));break;case u.ValueType.Date:t.date1904&&(e.date1904=!0);break;case u.ValueType.Hyperlink:t.sharedStrings&&e.text!==void 0&&e.text!==null&&(e.ssId=t.sharedStrings.add(e.text)),t.hyperlinks.push({address:e.address,target:e.hyperlink,tooltip:e.tooltip});break;case u.ValueType.Merge:t.merges.add(e);break;case u.ValueType.Formula:if(t.date1904&&(e.date1904=!0),e.shareType===`shared`&&(e.si=t.siFormulae++),e.formula)t.formulae[e.address]=e;else if(e.sharedFormula){let n=t.formulae[e.sharedFormula];if(!n)throw Error(`Shared Formula master must exist above and or left of clone for cell ${e.address}`);n.si===void 0?(n.shareType=`shared`,n.si=t.siFormulae++,n.range=new r(n.address,e.address)):n.range&&n.range.expandToAddress(e.address),e.si=n.si}break;default:break}}renderFormula(e,t){let n=null;switch(t.shareType){case`shared`:n={t:`shared`,ref:t.ref||t.range.range,si:t.si};break;case`array`:n={t:`array`,ref:t.ref};break;default:t.si!==void 0&&(n={t:`shared`,si:t.si});break}switch(Kr(t.result)){case u.ValueType.Null:e.leafNode(`f`,n,t.formula);break;case u.ValueType.String:e.addAttribute(`t`,`str`),e.leafNode(`f`,n,t.formula),e.leafNode(`v`,null,t.result);break;case u.ValueType.Number:e.leafNode(`f`,n,t.formula),e.leafNode(`v`,null,t.result);break;case u.ValueType.Boolean:e.addAttribute(`t`,`b`),e.leafNode(`f`,n,t.formula),e.leafNode(`v`,null,t.result?1:0);break;case u.ValueType.Error:e.addAttribute(`t`,`e`),e.leafNode(`f`,n,t.formula),e.leafNode(`v`,null,t.result.error);break;case u.ValueType.Date:e.leafNode(`f`,n,t.formula),e.leafNode(`v`,null,Te(t.result,t.date1904));break;default:throw Error(`I could not understand type of value`)}}render(e,t){if(!(t.type===u.ValueType.Null&&!t.styleId)){switch(e.openNode(`c`),e.addAttribute(`r`,t.address),t.styleId&&e.addAttribute(`s`,t.styleId),t.type){case u.ValueType.Null:break;case u.ValueType.Number:e.leafNode(`v`,null,t.value);break;case u.ValueType.Boolean:e.addAttribute(`t`,`b`),e.leafNode(`v`,null,t.value?`1`:`0`);break;case u.ValueType.Checkbox:e.addAttribute(`t`,`b`),e.leafNode(`v`,null,t.value?`1`:`0`);break;case u.ValueType.Error:e.addAttribute(`t`,`e`),e.leafNode(`v`,null,t.value.error);break;case u.ValueType.String:case u.ValueType.RichText:t.ssId===void 0?t.value&&t.value.richText?(e.addAttribute(`t`,`inlineStr`),e.openNode(`is`),t.value.richText.forEach(t=>{this.richTextXform.render(e,t)}),e.closeNode(`is`)):(e.addAttribute(`t`,`str`),e.leafNode(`v`,null,t.value)):(e.addAttribute(`t`,`s`),e.leafNode(`v`,null,t.ssId));break;case u.ValueType.Date:e.leafNode(`v`,null,Te(t.value,t.date1904));break;case u.ValueType.Hyperlink:t.ssId===void 0?(e.addAttribute(`t`,`str`),e.leafNode(`v`,null,t.text)):(e.addAttribute(`t`,`s`),e.leafNode(`v`,null,t.ssId));break;case u.ValueType.Formula:this.renderFormula(e,t);break;case u.ValueType.Merge:break;default:break}e.closeNode()}}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`c`:return this.model={address:e.attributes.r},this.t=e.attributes.t,e.attributes.s&&(this.model.styleId=parseInt(e.attributes.s,10)),!0;case`f`:return this.currentNode=`f`,this.model.si=e.attributes.si,this.model.shareType=e.attributes.t,this.model.ref=e.attributes.ref,!0;case`v`:return this.currentNode=`v`,!0;case`t`:return this.currentNode=`t`,!0;case`r`:return this.parser=this.richTextXform,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){if(this.parser){this.parser.parseText(e);return}switch(this.currentNode){case`f`:this.model.formula=this.model.formula?this.model.formula+e:e;break;case`v`:case`t`:this.model.value&&this.model.value.richText?this.model.value.richText.text=this.model.value.richText.text?this.model.value.richText.text+e:e:this.model.value=this.model.value?this.model.value+e:e;break;default:break}}parseClose(e){switch(e){case`c`:{let{model:e}=this;if(e.formula||e.shareType)e.type=u.ValueType.Formula,e.value&&=(this.t===`str`?e.result=Oe(e.value):this.t===`b`?e.result=parseInt(e.value,10)!==0:this.t===`e`?e.result={error:e.value}:e.result=parseFloat(e.value),void 0);else if(e.value!==void 0)switch(this.t){case`s`:e.type=u.ValueType.String,e.value=parseInt(e.value,10);break;case`str`:e.type=u.ValueType.String,e.value=Oe(e.value);break;case`inlineStr`:e.type=u.ValueType.String;break;case`b`:e.type=u.ValueType.Boolean,e.value=parseInt(e.value,10)!==0;break;case`e`:e.type=u.ValueType.Error,e.value={error:e.value};break;case`d`:e.type=u.ValueType.Date,e.value=new Date(e.value);break;default:e.type=u.ValueType.Number,e.value=parseFloat(e.value);break}else e.styleId?e.type=u.ValueType.Null:e.type=u.ValueType.Merge;return!1}case`f`:case`v`:case`is`:return this.currentNode=void 0,!0;case`t`:return this.parser?(this.parser.parseClose(e),!0):(this.currentNode=void 0,!0);case`r`:return this.model.value=this.model.value||{},this.model.value.richText=this.model.value.richText||[],this.model.value.richText.push(this.parser.model),this.parser=void 0,this.currentNode=void 0,!0;default:return this.parser?(this.parser.parseClose(e),!0):!1}}reconcile(e,t){let n=e.styleId&&t.styles&&t.styles.getStyleModel(e.styleId);switch(n&&(e.style=n),e.styleId!==void 0&&(e.styleId=void 0),e.type){case u.ValueType.String:typeof e.value==`number`&&t.sharedStrings&&(e.value=t.sharedStrings.getString(e.value)),e.value.richText&&(e.type=u.ValueType.RichText);break;case u.ValueType.Number:n&&Me(n.numFmt)&&(e.type=u.ValueType.Date,e.value=Ee(e.value,t.date1904));break;case u.ValueType.Formula:e.result!==void 0&&typeof e.result==`number`&&n&&Me(n.numFmt)&&(e.result=Ee(e.result,t.date1904)),e.shareType===`shared`&&(e.ref?t.formulae[e.si]=e.address:(e.sharedFormula=t.formulae[e.si],delete e.shareType),delete e.si);break;default:break}let r=t.hyperlinkMap[e.address];r&&(e.type===u.ValueType.Formula?(e.text=e.result,e.result=void 0):(e.text=e.value,e.value=void 0),e.type=u.ValueType.Hyperlink,e.hyperlink=r);let i=t.commentsMap&&t.commentsMap[e.address];i&&(e.comment=i)}},Yr=class extends I{constructor(e){super(),this.maxItems=e&&e.maxItems,this.map={c:new Jr}}get tag(){return`row`}reset(){super.reset(),this.numRowsSeen=0,this.lastCellCol=0}prepare(e,t){let n=t.styles.addStyleModel(e.style);n&&(e.styleId=n);let r=this.map.c;e.cells.forEach(e=>{r.prepare(e,t)})}render(e,t,n){if(!t)return;e.openNode(`row`),e.addAttribute(`r`,t.number),t.height&&(e.addAttribute(`ht`,t.height),e.addAttribute(`customHeight`,`1`)),t.hidden&&e.addAttribute(`hidden`,`1`),t.min>0&&t.max>0&&t.min<=t.max&&e.addAttribute(`spans`,`${t.min}:${t.max}`),t.styleId&&(e.addAttribute(`s`,t.styleId),e.addAttribute(`customFormat`,`1`)),t.outlineLevel&&e.addAttribute(`outlineLevel`,t.outlineLevel),t.collapsed&&e.addAttribute(`collapsed`,`1`);let r=this.map.c;t.cells.forEach(t=>{r.render(e,t,n)}),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===`row`){this.numRowsSeen+=1,this.lastCellCol=0;let t=e.attributes.spans?e.attributes.spans.split(`:`).map(e=>parseInt(e,10)):[void 0,void 0],n=this.model={number:e.attributes.r?parseInt(e.attributes.r,10):this.numRowsSeen,min:t[0],max:t[1],cells:[]};return e.attributes.s&&(n.styleId=parseInt(e.attributes.s,10)),k(e.attributes.hidden)&&(n.hidden=!0),k(e.attributes.bestFit)&&(n.bestFit=!0),e.attributes.ht&&(n.height=parseFloat(e.attributes.ht)),e.attributes.outlineLevel&&(n.outlineLevel=parseInt(e.attributes.outlineLevel,10)),k(e.attributes.collapsed)&&(n.collapsed=!0),!0}return this.parser=this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):!1}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser){if(!this.parser.parseClose(e)){let e=this.parser.model;if(e.address?this.lastCellCol=n.decodeAddress(e.address).col:(this.lastCellCol+=1,e.address=n.encodeAddress(this.model.number,this.lastCellCol)),this.model.cells.push(e),this.maxItems&&this.model.cells.length>this.maxItems)throw Error(`Max column count (${this.maxItems}) exceeded`);this.parser=void 0}return!0}return!1}reconcile(e,t){e.style=e.styleId?t.styles.getStyleModel(e.styleId):{},e.styleId!==void 0&&(e.styleId=void 0);let n=this.map.c;e.cells.forEach(e=>{n.reconcile(e,t)})}},Xr=class extends I{get tag(){return`col`}prepare(e,t){let n=t.styles.addStyleModel(e.style||{});n&&(e.styleId=n)}render(e,t){e.openNode(`col`),e.addAttribute(`min`,t.min),e.addAttribute(`max`,t.max),t.width&&e.addAttribute(`width`,t.width),t.styleId&&e.addAttribute(`style`,t.styleId),t.hidden&&e.addAttribute(`hidden`,`1`),t.bestFit&&e.addAttribute(`bestFit`,`1`),t.outlineLevel&&e.addAttribute(`outlineLevel`,t.outlineLevel),t.collapsed&&e.addAttribute(`collapsed`,`1`),e.addAttribute(`customWidth`,`1`),e.closeNode()}parseOpen(e){if(e.name===`col`){let t=this.model={min:parseInt(e.attributes.min||`0`,10),max:parseInt(e.attributes.max||`0`,10),width:e.attributes.width===void 0?void 0:parseFloat(e.attributes.width||`0`)};return e.attributes.style&&(t.styleId=parseInt(e.attributes.style,10)),k(e.attributes.hidden)&&(t.hidden=!0),k(e.attributes.bestFit)&&(t.bestFit=!0),e.attributes.outlineLevel&&(t.outlineLevel=parseInt(e.attributes.outlineLevel,10)),k(e.attributes.collapsed)&&(t.collapsed=!0),!0}return!1}parseText(){}parseClose(){return!1}reconcile(e,t){e.styleId&&(e.style=t.styles.getStyleModel(e.styleId))}},Zr=class extends I{get tag(){return`dimension`}render(e,t){t&&e.leafNode(`dimension`,{ref:t})}parseOpen(e){return e.name===`dimension`?(this.model=e.attributes.ref,!0):!1}parseText(){}parseClose(){return!1}},Qr=class extends I{get tag(){return`hyperlink`}render(e,t){this.isInternalLink(t)?e.leafNode(`hyperlink`,{ref:t.address,"r:id":t.rId,tooltip:t.tooltip,location:t.target}):e.leafNode(`hyperlink`,{ref:t.address,"r:id":t.rId,tooltip:t.tooltip})}parseOpen(e){return e.name===`hyperlink`?(this.model={address:e.attributes.ref,rId:e.attributes[`r:id`],tooltip:e.attributes.tooltip},e.attributes.location&&(this.model.target=e.attributes.location),!0):!1}parseText(){}parseClose(){return!1}isInternalLink(e){return!!(e.target&&/^[^!]+![a-zA-Z]+[\d]+$/.test(e.target))}},$r=class extends I{get tag(){return`mergeCell`}render(e,t){e.leafNode(`mergeCell`,{ref:t})}parseOpen(e){return e.name===`mergeCell`?(this.model=e.attributes.ref,!0):!1}parseText(){}parseClose(){return!1}};function ei(e,t,n,r){let i=t[n];i===void 0?r!==void 0&&(e[n]=r):e[n]=i}function ti(e,t,n,r){let i=t[n];i===void 0?r!==void 0&&(e[n]=r):e[n]=k(i)}function ni(e){if(!e)return[];let t=[],r={};for(let[n,i]of Object.entries(e))if(i!=null)if(n.startsWith(`range:`)){let e=n.slice(6),{sqref:r,...a}=i;t.push({...a,sqref:e})}else r[n]=i;if(Object.keys(r).length===0)return t;let i=Object.entries(r).map(([e,t])=>({address:e,dataValidation:t,marked:!1})).sort((e,t)=>e.address.localeCompare(t.address)),a=Object.fromEntries(i.map(e=>[e.address,e])),o=(e,t,i)=>{for(let a=0;a<t;a++){let t=n.encodeAddress(e.row+a,i);if(!r[t]||!p(r[e.address],r[t]))return!1}return!0},s=i.map(e=>{if(!e.marked){let t=n.decodeEx(e.address);if(t.dimensions)return a[t.dimensions].marked=!0,{...e.dataValidation,sqref:e.address};let i=1,s=n.encodeAddress(t.row+i,t.col);for(;r[s]&&p(e.dataValidation,r[s]);)i++,s=n.encodeAddress(t.row+i,t.col);let c=1;for(;o(t,i,t.col+c);)c++;for(let e=0;e<i;e++)for(let r=0;r<c;r++)s=n.encodeAddress(t.row+e,t.col+r),a[s].marked=!0;if(i>1||c>1){let r=t.row+(i-1),a=t.col+(c-1);return{...e.dataValidation,sqref:`${e.address}:${n.encodeAddress(r,a)}`}}return{...e.dataValidation,sqref:e.address}}return null}).filter(Boolean);return[...t,...s]}var ri=class extends I{get tag(){return`dataValidations`}render(e,t){let n=ni(t);n.length&&(e.openNode(`dataValidations`,{count:n.length}),n.forEach(t=>{e.openNode(`dataValidation`),t.type!==`any`&&(e.addAttribute(`type`,t.type),t.operator&&t.type!==`list`&&t.operator!==`between`&&e.addAttribute(`operator`,t.operator),t.allowBlank&&e.addAttribute(`allowBlank`,`1`)),t.showInputMessage&&e.addAttribute(`showInputMessage`,`1`),t.promptTitle&&e.addAttribute(`promptTitle`,t.promptTitle),t.prompt&&e.addAttribute(`prompt`,t.prompt),t.showErrorMessage&&e.addAttribute(`showErrorMessage`,`1`),t.errorStyle&&e.addAttribute(`errorStyle`,t.errorStyle),t.errorTitle&&e.addAttribute(`errorTitle`,t.errorTitle),t.error&&e.addAttribute(`error`,t.error),e.addAttribute(`sqref`,t.sqref),(t.formulae||[]).forEach((n,r)=>{e.openNode(`formula${r+1}`),t.type===`date`?e.writeText(Te(new Date(n))):e.writeText(n),e.closeNode()}),e.closeNode()}),e.closeNode())}parseOpen(e){switch(e.name){case`dataValidations`:return this.model={},!0;case`dataValidation`:{this._address=e.attributes.sqref;let t={type:e.attributes.type||`any`,formulae:[]};switch(e.attributes.type&&ti(t,e.attributes,`allowBlank`),ti(t,e.attributes,`showInputMessage`),ti(t,e.attributes,`showErrorMessage`),t.type){case`any`:case`list`:case`custom`:break;default:ei(t,e.attributes,`operator`,`between`);break}return ei(t,e.attributes,`promptTitle`),ei(t,e.attributes,`prompt`),ei(t,e.attributes,`errorStyle`),ei(t,e.attributes,`errorTitle`),ei(t,e.attributes,`error`),this._dataValidation=t,!0}case`formula1`:case`formula2`:return this._formula=[],!0;default:return!1}}parseText(e){this._formula&&this._formula.push(e)}parseClose(e){switch(e){case`dataValidations`:return!1;case`dataValidation`:return(!this._dataValidation.formulae||!this._dataValidation.formulae.length)&&(delete this._dataValidation.formulae,delete this._dataValidation.operator),(this._address.split(/\s+/g)||[]).forEach(e=>{e.includes(`:`)?this.model[`range:${e}`]=this._dataValidation:this.model[e]=this._dataValidation}),!0;case`formula1`:case`formula2`:{let e=this._formula.join(``);switch(this._dataValidation.type){case`whole`:case`textLength`:e=parseInt(e,10);break;case`decimal`:e=parseFloat(e);break;case`date`:e=Ee(parseFloat(e));break;default:break}return this._dataValidation.formulae.push(e),this._formula=void 0,!0}default:return!0}}},ii=class extends I{get tag(){return`pageSetUpPr`}render(e,t){return t&&t.fitToPage?(e.leafNode(this.tag,{fitToPage:t.fitToPage?`1`:void 0}),!0):!1}parseOpen(e){return e.name===this.tag?(this.model={fitToPage:e.attributes.fitToPage===`1`},!0):!1}parseText(){}parseClose(){return!1}};let ai=e=>e!==void 0;var oi=class extends I{get tag(){return`outlinePr`}render(e,t){return t&&(ai(t.summaryBelow)||ai(t.summaryRight))?(e.leafNode(this.tag,{summaryBelow:ai(t.summaryBelow)?Number(t.summaryBelow):void 0,summaryRight:ai(t.summaryRight)?Number(t.summaryRight):void 0}),!0):!1}parseOpen(e){return e.name===this.tag?(this.model={summaryBelow:ai(e.attributes.summaryBelow)?!!Number(e.attributes.summaryBelow):void 0,summaryRight:ai(e.attributes.summaryRight)?!!Number(e.attributes.summaryRight):void 0},!0):!1}parseText(){}parseClose(){return!1}},si=class extends I{constructor(){super(),this.map={tabColor:new R(`tabColor`),pageSetUpPr:new ii,outlinePr:new oi}}get tag(){return`sheetPr`}render(e,t){if(t){e.addRollback(),e.openNode(`sheetPr`);let n=!1;n=this.map.tabColor.render(e,t.tabColor)||n,n=this.map.pageSetUpPr.render(e,t.pageSetup)||n,n=this.map.outlinePr.render(e,t.outlineProperties)||n,n?(e.closeNode(),e.commit()):e.rollback()}}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):e.name===this.tag?(this.reset(),!0):this.map[e.name]?(this.parser=this.map[e.name],this.parser.parseOpen(e),!0):!1}parseText(e){return this.parser?(this.parser.parseText(e),!0):!1}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):(this.map.tabColor.model||this.map.pageSetUpPr.model||this.map.outlinePr.model?(this.model={},this.map.tabColor.model&&(this.model.tabColor=this.map.tabColor.model),this.map.pageSetUpPr.model&&(this.model.pageSetup=this.map.pageSetUpPr.model),this.map.outlinePr.model&&(this.model.outlineProperties=this.map.outlinePr.model)):this.model=null,!1)}},ci=class extends I{get tag(){return`sheetFormatPr`}render(e,t){if(t){let n={defaultRowHeight:t.defaultRowHeight,outlineLevelRow:t.outlineLevelRow||void 0,outlineLevelCol:t.outlineLevelCol||void 0,"x14ac:dyDescent":t.dyDescent||void 0};t.defaultColWidth&&(n.defaultColWidth=t.defaultColWidth),(!t.defaultRowHeight||t.defaultRowHeight!==15)&&(n.customHeight=`1`),Object.values(n).some(e=>e!==void 0)&&e.leafNode(`sheetFormatPr`,n)}}parseOpen(e){return e.name===`sheetFormatPr`?(this.model={defaultRowHeight:parseFloat(e.attributes.defaultRowHeight||`0`),dyDescent:parseFloat(e.attributes[`x14ac:dyDescent`]||`0`),outlineLevelRow:parseInt(e.attributes.outlineLevelRow||`0`,10),outlineLevelCol:parseInt(e.attributes.outlineLevelCol||`0`,10)},e.attributes.defaultColWidth&&(this.model.defaultColWidth=parseFloat(e.attributes.defaultColWidth)),!0):!1}parseText(){}parseClose(){return!1}};let li={frozen:`frozen`,frozenSplit:`frozen`,split:`split`};var ui=class extends I{get tag(){return`sheetView`}prepare(e){switch(e.state){case`frozen`:case`split`:break;default:e.state=`normal`;break}}render(e,t){let r={};t.tabSelected&&(r.tabSelected=`1`),r.workbookViewId=t.workbookViewId||0,e.openNode(`sheetView`,r);let i=function(t,n,r){r&&e.addAttribute(t,n)};i(`rightToLeft`,`1`,t.rightToLeft===!0),i(`showRuler`,`0`,t.showRuler===!1),i(`showRowColHeaders`,`0`,t.showRowColHeaders===!1),i(`showGridLines`,`0`,t.showGridLines===!1),i(`zoomScale`,t.zoomScale,t.zoomScale),i(`zoomScaleNormal`,t.zoomScaleNormal,t.zoomScaleNormal),i(`view`,t.style,t.style);let a,o,s,c;switch(t.state){case`frozen`:o=t.xSplit||0,s=t.ySplit||0,a=t.topLeftCell||n.getAddress(s+1,o+1).address,c=t.xSplit&&t.ySplit&&`bottomRight`||t.xSplit&&`topRight`||`bottomLeft`,e.leafNode(`pane`,{xSplit:t.xSplit||void 0,ySplit:t.ySplit||void 0,topLeftCell:a,activePane:c,state:`frozen`}),e.leafNode(`selection`,{pane:c,activeCell:t.activeCell,sqref:t.activeCell});break;case`split`:t.activePane===`topLeft`&&(t.activePane=void 0),e.leafNode(`pane`,{xSplit:t.xSplit||void 0,ySplit:t.ySplit||void 0,topLeftCell:t.topLeftCell,activePane:t.activePane}),e.leafNode(`selection`,{pane:t.activePane,activeCell:t.activeCell,sqref:t.activeCell});break;case`normal`:t.activeCell&&e.leafNode(`selection`,{activeCell:t.activeCell,sqref:t.activeCell});break;default:break}e.closeNode()}parseOpen(e){switch(e.name){case`sheetView`:return this.sheetView={workbookViewId:parseInt(e.attributes.workbookViewId,10),rightToLeft:e.attributes.rightToLeft===`1`,tabSelected:e.attributes.tabSelected===`1`,showRuler:e.attributes.showRuler!==`0`,showRowColHeaders:e.attributes.showRowColHeaders!==`0`,showGridLines:e.attributes.showGridLines!==`0`,zoomScale:parseInt(e.attributes.zoomScale||`100`,10),zoomScaleNormal:parseInt(e.attributes.zoomScaleNormal||`100`,10),style:e.attributes.view},this.pane=void 0,this.selections={},!0;case`pane`:return this.pane={xSplit:parseInt(e.attributes.xSplit||`0`,10),ySplit:parseInt(e.attributes.ySplit||`0`,10),topLeftCell:e.attributes.topLeftCell,activePane:e.attributes.activePane||`topLeft`,state:e.attributes.state},!0;case`selection`:{let t=e.attributes.pane||`topLeft`;return this.selections[t]={pane:t,activeCell:e.attributes.activeCell},!0}default:return!1}}parseText(){}parseClose(e){let t,n;switch(e){case`sheetView`:return this.sheetView&&this.pane?(t=this.model={workbookViewId:this.sheetView.workbookViewId,rightToLeft:this.sheetView.rightToLeft,state:li[this.pane.state]||`split`,xSplit:this.pane.xSplit,ySplit:this.pane.ySplit,topLeftCell:this.pane.topLeftCell,showRuler:this.sheetView.showRuler,showRowColHeaders:this.sheetView.showRowColHeaders,showGridLines:this.sheetView.showGridLines,zoomScale:this.sheetView.zoomScale,zoomScaleNormal:this.sheetView.zoomScaleNormal},this.model.state===`split`&&(t.activePane=this.pane.activePane),n=this.selections[this.pane.activePane],n&&n.activeCell&&(t.activeCell=n.activeCell),this.sheetView.style&&(t.style=this.sheetView.style)):(t=this.model={workbookViewId:this.sheetView.workbookViewId,rightToLeft:this.sheetView.rightToLeft,state:`normal`,showRuler:this.sheetView.showRuler,showRowColHeaders:this.sheetView.showRowColHeaders,showGridLines:this.sheetView.showGridLines,zoomScale:this.sheetView.zoomScale,zoomScaleNormal:this.sheetView.zoomScaleNormal},n=this.selections.topLeft,n&&n.activeCell&&(t.activeCell=n.activeCell),this.sheetView.style&&(t.style=this.sheetView.style)),!1;default:return!0}}reconcile(){}};function G(e,t){return e?t:void 0}function K(e,t){return e===t?!0:void 0}var di=class extends I{get tag(){return`sheetProtection`}render(e,t){if(t){let n={sheet:G(t.sheet,`1`),selectLockedCells:t.selectLockedCells===!1?`1`:void 0,selectUnlockedCells:t.selectUnlockedCells===!1?`1`:void 0,formatCells:G(t.formatCells,`0`),formatColumns:G(t.formatColumns,`0`),formatRows:G(t.formatRows,`0`),insertColumns:G(t.insertColumns,`0`),insertRows:G(t.insertRows,`0`),insertHyperlinks:G(t.insertHyperlinks,`0`),deleteColumns:G(t.deleteColumns,`0`),deleteRows:G(t.deleteRows,`0`),sort:G(t.sort,`0`),autoFilter:G(t.autoFilter,`0`),pivotTables:G(t.pivotTables,`0`)};t.sheet&&(n.algorithmName=t.algorithmName,n.hashValue=t.hashValue,n.saltValue=t.saltValue,n.spinCount=t.spinCount,n.objects=G(t.objects===!1,`1`),n.scenarios=G(t.scenarios===!1,`1`)),Object.values(n).some(e=>e!==void 0)&&e.leafNode(this.tag,n)}}parseOpen(e){switch(e.name){case this.tag:return this.model={sheet:K(e.attributes.sheet,`1`),objects:e.attributes.objects===`1`?!1:void 0,scenarios:e.attributes.scenarios===`1`?!1:void 0,selectLockedCells:e.attributes.selectLockedCells===`1`?!1:void 0,selectUnlockedCells:e.attributes.selectUnlockedCells===`1`?!1:void 0,formatCells:K(e.attributes.formatCells,`0`),formatColumns:K(e.attributes.formatColumns,`0`),formatRows:K(e.attributes.formatRows,`0`),insertColumns:K(e.attributes.insertColumns,`0`),insertRows:K(e.attributes.insertRows,`0`),insertHyperlinks:K(e.attributes.insertHyperlinks,`0`),deleteColumns:K(e.attributes.deleteColumns,`0`),deleteRows:K(e.attributes.deleteRows,`0`),sort:K(e.attributes.sort,`0`),autoFilter:K(e.attributes.autoFilter,`0`),pivotTables:K(e.attributes.pivotTables,`0`)},e.attributes.algorithmName&&(this.model.algorithmName=e.attributes.algorithmName,this.model.hashValue=e.attributes.hashValue,this.model.saltValue=e.attributes.saltValue,this.model.spinCount=parseInt(e.attributes.spinCount,10)),!0;default:return!1}}parseText(){}parseClose(){return!1}},fi=class extends I{get tag(){return`pageMargins`}render(e,t){if(t){let n={left:t.left,right:t.right,top:t.top,bottom:t.bottom,header:t.header,footer:t.footer};Object.values(n).some(e=>e!==void 0)&&e.leafNode(this.tag,n)}}parseOpen(e){switch(e.name){case this.tag:return this.model={left:parseFloat(e.attributes.left||.7),right:parseFloat(e.attributes.right||.7),top:parseFloat(e.attributes.top||.75),bottom:parseFloat(e.attributes.bottom||.75),header:parseFloat(e.attributes.header||.3),footer:parseFloat(e.attributes.footer||.3)},!0;default:return!1}}parseText(){}parseClose(){return!1}};function pi(e){return e?`1`:void 0}function mi(e){switch(e){case`overThenDown`:return e;default:return}}function hi(e){switch(e){case`atEnd`:case`asDisplyed`:return e;default:return}}function gi(e){switch(e){case`dash`:case`blank`:case`NA`:return e;default:return}}function _i(e){return e===void 0?void 0:parseInt(e,10)}var vi=class extends I{get tag(){return`pageSetup`}_dpiToXml(e){if(e!==void 0&&Number.isFinite(e)&&e!==4294967295)return e}render(e,t){if(t){let n={paperSize:t.paperSize,orientation:t.orientation,horizontalDpi:this._dpiToXml(t.horizontalDpi),verticalDpi:this._dpiToXml(t.verticalDpi),pageOrder:mi(t.pageOrder),blackAndWhite:pi(t.blackAndWhite),draft:pi(t.draft),cellComments:hi(t.cellComments),errors:gi(t.errors),scale:t.scale===100?void 0:t.scale,fitToWidth:t.fitToWidth===1?void 0:t.fitToWidth,fitToHeight:t.fitToHeight===1?void 0:t.fitToHeight,firstPageNumber:t.firstPageNumber,useFirstPageNumber:pi(!!t.firstPageNumber),usePrinterDefaults:pi(t.usePrinterDefaults),copies:t.copies};Object.values(n).some(e=>e!==void 0)&&e.leafNode(this.tag,n)}}parseOpen(e){switch(e.name){case this.tag:return this.model={paperSize:_i(e.attributes.paperSize),orientation:e.attributes.orientation||`portrait`,horizontalDpi:parseInt(e.attributes.horizontalDpi||`4294967295`,10),verticalDpi:parseInt(e.attributes.verticalDpi||`4294967295`,10),pageOrder:e.attributes.pageOrder||`downThenOver`,blackAndWhite:e.attributes.blackAndWhite===`1`,draft:e.attributes.draft===`1`,cellComments:e.attributes.cellComments||`None`,errors:e.attributes.errors||`displayed`,scale:parseInt(e.attributes.scale||`100`,10),fitToWidth:parseInt(e.attributes.fitToWidth||`1`,10),fitToHeight:parseInt(e.attributes.fitToHeight||`1`,10),firstPageNumber:parseInt(e.attributes.firstPageNumber||`1`,10),useFirstPageNumber:e.attributes.useFirstPageNumber===`1`,usePrinterDefaults:e.attributes.usePrinterDefaults===`1`,copies:parseInt(e.attributes.copies||`1`,10)},!0;default:return!1}}parseText(){}parseClose(){return!1}};function yi(e){return e?`1`:void 0}var bi=class extends I{get tag(){return`printOptions`}render(e,t){if(t){let n={headings:yi(t.showRowColHeaders),gridLines:yi(t.showGridLines),horizontalCentered:yi(t.horizontalCentered),verticalCentered:yi(t.verticalCentered)};Object.values(n).some(e=>e!==void 0)&&e.leafNode(this.tag,n)}}parseOpen(e){switch(e.name){case this.tag:return this.model={showRowColHeaders:e.attributes.headings===`1`,showGridLines:e.attributes.gridLines===`1`,horizontalCentered:e.attributes.horizontalCentered===`1`,verticalCentered:e.attributes.verticalCentered===`1`},!0;default:return!1}}parseText(){}parseClose(){return!1}},xi=class extends I{get tag(){return`autoFilter`}render(e,t){if(t)if(typeof t==`string`)e.leafNode(`autoFilter`,{ref:t});else{let r=function(e){return typeof e==`string`?e:n.getAddress(e.row,e.column).address},i=r(t.from),a=r(t.to);i&&a&&e.leafNode(`autoFilter`,{ref:`${i}:${a}`})}}parseOpen(e){e.name===`autoFilter`&&(this.model=e.attributes.ref)}},Si=class extends I{get tag(){return`picture`}render(e,t){t&&e.leafNode(this.tag,{"r:id":t.rId})}parseOpen(e){switch(e.name){case this.tag:return this.model={rId:e.attributes[`r:id`]},!0;default:return!1}}parseText(){}parseClose(){return!1}},Ci=class extends I{get tag(){return`drawing`}render(e,t){t&&e.leafNode(this.tag,{"r:id":t.rId})}parseOpen(e){switch(e.name){case this.tag:return this.model={rId:e.attributes[`r:id`]},!0;default:return!1}}parseText(){}parseClose(){return!1}},wi=class extends I{get tag(){return`tablePart`}render(e,t){t&&e.leafNode(this.tag,{"r:id":t.rId})}parseOpen(e){switch(e.name){case this.tag:return this.model={rId:e.attributes[`r:id`]},!0;default:return!1}}parseText(){}parseClose(){return!1}},Ti=class extends I{get tag(){return`brk`}render(e,t){e.leafNode(`brk`,t)}parseOpen(e){if(e.name===`brk`){let{id:t,max:n,man:r,min:i}=e.attributes;return this.model={id:+t,max:+n,man:+r},i!==void 0&&(this.model.min=+i),!0}return!1}parseText(){}parseClose(){return!1}},Ei=class extends L{constructor(){super({tag:`rowBreaks`,count:!0,childXform:new Ti})}render(e,t){if(t&&t.length){e.openNode(this.tag,this.$),e.addAttribute(this.$count,t.length),e.addAttribute(`manualBreakCount`,t.length);let{childXform:n}=this;for(let r of t)n.render(e,r);e.closeNode()}}},Di=class extends L{constructor(){super({tag:`colBreaks`,count:!0,childXform:new Ti})}render(e,t){if(t&&t.length){e.openNode(this.tag,this.$),e.addAttribute(this.$count,t.length),e.addAttribute(`manualBreakCount`,t.length);let{childXform:n}=this;for(let r of t)n.render(e,r);e.closeNode()}}},Oi=class extends I{get tag(){return`headerFooter`}render(e,t){if(t){e.addRollback();let n=!1;e.openNode(`headerFooter`),t.differentFirst&&(e.addAttribute(`differentFirst`,`1`),n=!0),t.differentOddEven&&(e.addAttribute(`differentOddEven`,`1`),n=!0),t.oddHeader&&typeof t.oddHeader==`string`&&(e.leafNode(`oddHeader`,null,t.oddHeader),n=!0),t.oddFooter&&typeof t.oddFooter==`string`&&(e.leafNode(`oddFooter`,null,t.oddFooter),n=!0),t.evenHeader&&typeof t.evenHeader==`string`&&(e.leafNode(`evenHeader`,null,t.evenHeader),n=!0),t.evenFooter&&typeof t.evenFooter==`string`&&(e.leafNode(`evenFooter`,null,t.evenFooter),n=!0),t.firstHeader&&typeof t.firstHeader==`string`&&(e.leafNode(`firstHeader`,null,t.firstHeader),n=!0),t.firstFooter&&typeof t.firstFooter==`string`&&(e.leafNode(`firstFooter`,null,t.firstFooter),n=!0),n?(e.closeNode(),e.commit()):e.rollback()}}parseOpen(e){switch(e.name){case`headerFooter`:return this.model={},e.attributes.differentFirst&&(this.model.differentFirst=parseInt(e.attributes.differentFirst,0)===1),e.attributes.differentOddEven&&(this.model.differentOddEven=parseInt(e.attributes.differentOddEven,0)===1),!0;case`oddHeader`:return this.currentNode=`oddHeader`,!0;case`oddFooter`:return this.currentNode=`oddFooter`,!0;case`evenHeader`:return this.currentNode=`evenHeader`,!0;case`evenFooter`:return this.currentNode=`evenFooter`,!0;case`firstHeader`:return this.currentNode=`firstHeader`,!0;case`firstFooter`:return this.currentNode=`firstFooter`,!0;default:return!1}}parseText(e){switch(this.currentNode){case`oddHeader`:this.model.oddHeader=(this.model.oddHeader||``)+e;break;case`oddFooter`:this.model.oddFooter=(this.model.oddFooter||``)+e;break;case`evenHeader`:this.model.evenHeader=(this.model.evenHeader||``)+e;break;case`evenFooter`:this.model.evenFooter=(this.model.evenFooter||``)+e;break;case`firstHeader`:this.model.firstHeader=(this.model.firstHeader||``)+e;break;case`firstFooter`:this.model.firstFooter=(this.model.firstFooter||``)+e;break;default:break}}parseClose(){switch(this.currentNode){case`oddHeader`:case`oddFooter`:case`evenHeader`:case`evenFooter`:case`firstHeader`:case`firstFooter`:return this.currentNode=void 0,!0;default:return!1}}},q=class extends I{createNewModel(e){return{}}parseOpen(e){return this.parser=this.parser||this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):e.name===this.tag?(this.model=this.createNewModel(e),!0):!1}parseText(e){this.parser&&this.parser.parseText(e)}onParserClose(e,t){this.model[e]=t.model}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.onParserClose(e,this.parser),this.parser=void 0),!0):e!==this.tag}get tag(){return``}},ki=class extends I{get tag(){return`cfvo`}render(e,t){e.leafNode(this.tag,{type:t.type,val:t.value})}parseOpen(e){this.model={type:e.attributes.type,value:I.toFloatValue(e.attributes.val)}}parseClose(e){return e!==this.tag}},Ai=class extends q{constructor(){super(),this.map={cfvo:this.cfvoXform=new ki,color:this.colorXform=new R}}get tag(){return`dataBar`}render(e,t){e.openNode(this.tag),t.cfvo.forEach(t=>{this.cfvoXform.render(e,t)}),this.colorXform.render(e,t.color),e.closeNode()}createNewModel(){return{cfvo:[]}}onParserClose(e,t){switch(e){case`cfvo`:this.model.cfvo.push(t.model);break;case`color`:this.model.color=t.model;break}}},ji=class extends I{get tag(){return`x14:id`}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(){this.model=``}parseText(e){this.model+=e}parseClose(e){return e!==this.tag}},Mi=class extends q{constructor(){super(),this.map={"x14:id":this.idXform=new ji}}get tag(){return`ext`}render(e,t){e.openNode(this.tag,{uri:`{B025F937-C7B1-47D3-B67F-A62EFF666E3E}`,"xmlns:x14":`http://schemas.microsoft.com/office/spreadsheetml/2009/9/main`}),this.idXform.render(e,t.x14Id),e.closeNode()}createNewModel(){return{}}onParserClose(e,t){this.model.x14Id=t.model}},Ni=class extends q{constructor(){super(),this.map={ext:new Mi}}get tag(){return`extLst`}render(e,t){e.openNode(this.tag),this.map.ext.render(e,t),e.closeNode()}createNewModel(){return{}}onParserClose(e,t){Object.assign(this.model,t.model)}},Pi=class extends I{get tag(){return`formula`}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(){this.model=``}parseText(e){this.model+=e}parseClose(e){return e!==this.tag}},Fi=class extends q{constructor(){super(),this.map={cfvo:this.cfvoXform=new ki,color:this.colorXform=new R}}get tag(){return`colorScale`}render(e,t){e.openNode(this.tag),t.cfvo.forEach(t=>{this.cfvoXform.render(e,t)}),t.color.forEach(t=>{this.colorXform.render(e,t)}),e.closeNode()}createNewModel(e){return{cfvo:[],color:[]}}onParserClose(e,t){this.model[e].push(t.model)}},Ii=class extends q{constructor(){super(),this.map={cfvo:this.cfvoXform=new ki}}get tag(){return`iconSet`}render(e,t){e.openNode(this.tag,{iconSet:I.toStringAttribute(t.iconSet,`3TrafficLights`),reverse:I.toBoolAttribute(t.reverse,!1),showValue:I.toBoolAttribute(t.showValue,!0)}),t.cfvo.forEach(t=>{this.cfvoXform.render(e,t)}),e.closeNode()}createNewModel({attributes:e}){return{iconSet:I.toStringValue(e.iconSet,`3TrafficLights`),reverse:I.toBoolValue(e.reverse),showValue:I.toBoolValue(e.showValue),cfvo:[]}}onParserClose(e,t){this.model[e].push(t.model)}};let Li={"3Triangles":!0,"3Stars":!0,"5Boxes":!0},Ri=e=>{if(e.formulae&&e.formulae[0])return e.formulae[0];let{tl:t}=new r(e.ref);switch(e.operator){case`containsText`:return`NOT(ISERROR(SEARCH("${e.text}",${t})))`;case`containsBlanks`:return`LEN(TRIM(${t}))=0`;case`notContainsBlanks`:return`LEN(TRIM(${t}))>0`;case`containsErrors`:return`ISERROR(${t})`;case`notContainsErrors`:return`NOT(ISERROR(${t}))`;default:return}},zi=e=>{if(e.formulae&&e.formulae[0])return e.formulae[0];let{tl:t}=new r(e.ref);switch(e.timePeriod){case`thisWeek`:return`AND(TODAY()-ROUNDDOWN(${t},0)<=WEEKDAY(TODAY())-1,ROUNDDOWN(${t},0)-TODAY()<=7-WEEKDAY(TODAY()))`;case`lastWeek`:return`AND(TODAY()-ROUNDDOWN(${t},0)>=(WEEKDAY(TODAY())),TODAY()-ROUNDDOWN(${t},0)<(WEEKDAY(TODAY())+7))`;case`nextWeek`:return`AND(ROUNDDOWN(${t},0)-TODAY()>(7-WEEKDAY(TODAY())),ROUNDDOWN(${t},0)-TODAY()<(15-WEEKDAY(TODAY())))`;case`yesterday`:return`FLOOR(${t},1)=TODAY()-1`;case`today`:return`FLOOR(${t},1)=TODAY()`;case`tomorrow`:return`FLOOR(${t},1)=TODAY()+1`;case`last7Days`:return`AND(TODAY()-FLOOR(${t},1)<=6,FLOOR(${t},1)<=TODAY())`;case`lastMonth`:return`AND(MONTH(${t})=MONTH(EDATE(TODAY(),0-1)),YEAR(${t})=YEAR(EDATE(TODAY(),0-1)))`;case`thisMonth`:return`AND(MONTH(${t})=MONTH(TODAY()),YEAR(${t})=YEAR(TODAY()))`;case`nextMonth`:return`AND(MONTH(${t})=MONTH(EDATE(TODAY(),0+1)),YEAR(${t})=YEAR(EDATE(TODAY(),0+1)))`;default:return}},Bi=e=>{let{type:t,operator:n}=e;switch(t){case`containsText`:case`containsBlanks`:case`notContainsBlanks`:case`containsErrors`:case`notContainsErrors`:return{type:`containsText`,operator:t};default:return{type:t,operator:n}}};var Vi=class e extends q{constructor(){super(),this.map={dataBar:this.databarXform=new Ai,extLst:this.extLstRefXform=new Ni,formula:this.formulaXform=new Pi,colorScale:this.colorScaleXform=new Fi,iconSet:this.iconSetXform=new Ii}}get tag(){return`cfRule`}static isPrimitive(e){return!(e.type===`iconSet`&&(e.custom||Li[e.iconSet]))}render(e,t){switch(t.type){case`expression`:this.renderExpression(e,t);break;case`cellIs`:this.renderCellIs(e,t);break;case`top10`:this.renderTop10(e,t);break;case`aboveAverage`:this.renderAboveAverage(e,t);break;case`dataBar`:this.renderDataBar(e,t);break;case`colorScale`:this.renderColorScale(e,t);break;case`iconSet`:this.renderIconSet(e,t);break;case`containsText`:this.renderText(e,t);break;case`timePeriod`:this.renderTimePeriod(e,t);break}}renderExpression(e,t){e.openNode(this.tag,{type:`expression`,dxfId:t.dxfId,priority:t.priority}),this.formulaXform.render(e,t.formulae[0]),e.closeNode()}renderCellIs(e,t){e.openNode(this.tag,{type:`cellIs`,dxfId:t.dxfId,priority:t.priority,operator:t.operator}),t.formulae.forEach(t=>{this.formulaXform.render(e,t)}),e.closeNode()}renderTop10(e,t){e.leafNode(this.tag,{type:`top10`,dxfId:t.dxfId,priority:t.priority,percent:I.toBoolAttribute(t.percent,!1),bottom:I.toBoolAttribute(t.bottom,!1),rank:I.toIntValue(t.rank,10)})}renderAboveAverage(e,t){e.leafNode(this.tag,{type:`aboveAverage`,dxfId:t.dxfId,priority:t.priority,aboveAverage:I.toBoolAttribute(t.aboveAverage,!0)})}renderDataBar(e,t){e.openNode(this.tag,{type:`dataBar`,priority:t.priority}),this.databarXform.render(e,t),this.extLstRefXform.render(e,t),e.closeNode()}renderColorScale(e,t){e.openNode(this.tag,{type:`colorScale`,priority:t.priority}),this.colorScaleXform.render(e,t),e.closeNode()}renderIconSet(t,n){e.isPrimitive(n)&&(t.openNode(this.tag,{type:`iconSet`,priority:n.priority}),this.iconSetXform.render(t,n),t.closeNode())}renderText(e,t){e.openNode(this.tag,{type:t.operator,dxfId:t.dxfId,priority:t.priority,operator:I.toStringAttribute(t.operator,`containsText`)});let n=Ri(t);n&&this.formulaXform.render(e,n),e.closeNode()}renderTimePeriod(e,t){e.openNode(this.tag,{type:`timePeriod`,dxfId:t.dxfId,priority:t.priority,timePeriod:t.timePeriod});let n=zi(t);n&&this.formulaXform.render(e,n),e.closeNode()}createNewModel({attributes:e}){return{...Bi(e),dxfId:I.toIntValue(e.dxfId),priority:I.toIntValue(e.priority),timePeriod:e.timePeriod,percent:I.toBoolValue(e.percent),bottom:I.toBoolValue(e.bottom),rank:I.toIntValue(e.rank),aboveAverage:I.toBoolValue(e.aboveAverage)}}onParserClose(e,t){switch(e){case`dataBar`:case`extLst`:case`colorScale`:case`iconSet`:Object.assign(this.model,t.model);break;case`formula`:this.model.formulae=this.model.formulae||[],this.model.formulae.push(t.model);break}}},Hi=class extends q{constructor(){super(),this.map={cfRule:new Vi}}get tag(){return`conditionalFormatting`}render(e,t){t.rules.some(Vi.isPrimitive)&&(e.openNode(this.tag,{sqref:t.ref}),t.rules.forEach(n=>{Vi.isPrimitive(n)&&(n.ref=t.ref,this.map.cfRule.render(e,n))}),e.closeNode())}createNewModel({attributes:e}){return{ref:e.sqref,rules:[]}}onParserClose(e,t){this.model.rules.push(t.model)}},Ui=class extends I{constructor(){super(),this.cfXform=new Hi}get tag(){return`conditionalFormatting`}reset(){this.model=[]}prepare(e,t){let n=e.reduce((e,t)=>Math.max(e,...t.rules.map(e=>e.priority||0)),1);e.forEach(e=>{e.rules.forEach(e=>{e.priority||=n++,e.style&&(e.dxfId=t.styles.addDxfStyle(e.style))})})}render(e,t){t.forEach(t=>{this.cfXform.render(e,t)})}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`conditionalFormatting`:return this.parser=this.cfXform,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?this.parser.parseClose(e)?!0:(this.model.push(this.parser.model),this.parser=void 0,!1):!1}reconcile(e,t){e.forEach(e=>{e.rules.forEach(e=>{e.dxfId!==void 0&&(e.style=t.styles.getDxfStyle(e.dxfId),delete e.dxfId)})})}},Wi=class extends I{get tag(){return`xm:f`}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(){this.model=``}parseText(e){this.model+=e}parseClose(e){return e!==this.tag}},Gi=class extends q{constructor(){super(),this.map={"xm:f":this.fExtXform=new Wi}}get tag(){return`x14:cfvo`}render(e,t){e.openNode(this.tag,{type:t.type}),t.value!==void 0&&this.fExtXform.render(e,t.value),e.closeNode()}createNewModel(e){return{type:e.attributes.type}}onParserClose(e,t){switch(e){case`xm:f`:this.model.value=t.model?parseFloat(t.model):0;break}}},Ki=class extends q{constructor(){super(),this.map={"x14:cfvo":this.cfvoXform=new Gi,"x14:borderColor":this.borderColorXform=new R(`x14:borderColor`),"x14:negativeBorderColor":this.negativeBorderColorXform=new R(`x14:negativeBorderColor`),"x14:negativeFillColor":this.negativeFillColorXform=new R(`x14:negativeFillColor`),"x14:axisColor":this.axisColorXform=new R(`x14:axisColor`)}}static isExt(e){return!e.gradient}get tag(){return`x14:dataBar`}render(e,t){e.openNode(this.tag,{minLength:I.toIntAttribute(t.minLength,0,!0),maxLength:I.toIntAttribute(t.maxLength,100,!0),border:I.toBoolAttribute(t.border,!1),gradient:I.toBoolAttribute(t.gradient,!0),negativeBarColorSameAsPositive:I.toBoolAttribute(t.negativeBarColorSameAsPositive,!0),negativeBarBorderColorSameAsPositive:I.toBoolAttribute(t.negativeBarBorderColorSameAsPositive,!0),axisPosition:I.toAttribute(t.axisPosition,`auto`),direction:I.toAttribute(t.direction,`leftToRight`)}),t.cfvo.forEach(t=>{this.cfvoXform.render(e,t)}),this.borderColorXform.render(e,t.borderColor),this.negativeBorderColorXform.render(e,t.negativeBorderColor),this.negativeFillColorXform.render(e,t.negativeFillColor),this.axisColorXform.render(e,t.axisColor),e.closeNode()}createNewModel({attributes:e}){return{cfvo:[],minLength:I.toIntValue(e.minLength,0),maxLength:I.toIntValue(e.maxLength,100),border:I.toBoolValue(e.border,!1),gradient:I.toBoolValue(e.gradient,!0),negativeBarColorSameAsPositive:I.toBoolValue(e.negativeBarColorSameAsPositive,!0),negativeBarBorderColorSameAsPositive:I.toBoolValue(e.negativeBarBorderColorSameAsPositive,!0),axisPosition:I.toStringValue(e.axisPosition,`auto`),direction:I.toStringValue(e.direction,`leftToRight`)}}onParserClose(e,t){let[,n]=e.split(`:`);switch(n){case`cfvo`:this.model.cfvo.push(t.model);break;default:this.model[n]=t.model;break}}},qi=class extends I{get tag(){return`x14:cfIcon`}render(e,t){e.leafNode(this.tag,{iconSet:t.iconSet,iconId:t.iconId})}parseOpen({attributes:e}){this.model={iconSet:e.iconSet,iconId:I.toIntValue(e.iconId)}}parseClose(e){return e!==this.tag}},Ji=class extends q{constructor(){super(),this.map={"x14:cfvo":this.cfvoXform=new Gi,"x14:cfIcon":this.cfIconXform=new qi}}get tag(){return`x14:iconSet`}render(e,t){e.openNode(this.tag,{iconSet:I.toStringAttribute(t.iconSet),reverse:I.toBoolAttribute(t.reverse,!1),showValue:I.toBoolAttribute(t.showValue,!0),custom:I.toBoolAttribute(t.icons,!1)}),t.cfvo.forEach(t=>{this.cfvoXform.render(e,t)}),t.icons&&t.icons.forEach((t,n)=>{t.iconId=n,this.cfIconXform.render(e,t)}),e.closeNode()}createNewModel({attributes:e}){return{cfvo:[],iconSet:I.toStringValue(e.iconSet,`3TrafficLights`),reverse:I.toBoolValue(e.reverse,!1),showValue:I.toBoolValue(e.showValue,!0)}}onParserClose(e,t){let[,n]=e.split(`:`);switch(n){case`cfvo`:this.model.cfvo.push(t.model);break;case`cfIcon`:this.model.icons||(this.model.icons=[]),this.model.icons.push(t.model);break;default:this.model[n]=t.model;break}}};function J(e){return e.toString(16).padStart(2,`0`)}function Yi(e){e[6]=e[6]&15|64,e[8]=e[8]&63|128;let t=e;return J(t[0])+J(t[1])+J(t[2])+J(t[3])+`-`+J(t[4])+J(t[5])+`-`+J(t[6])+J(t[7])+`-`+J(t[8])+J(t[9])+`-`+J(t[10])+J(t[11])+J(t[12])+J(t[13])+J(t[14])+J(t[15])}function Xi(){let e=globalThis.crypto;if(e?.randomUUID)return e.randomUUID();let t=new Uint8Array(16);if(e?.getRandomValues)return e.getRandomValues(t),Yi(t);for(let e=0;e<t.length;e++)t[e]=Math.floor(Math.random()*256);return Yi(t)}let Zi={"3Triangles":!0,"3Stars":!0,"5Boxes":!0};var Qi=class e extends q{constructor(){super(),this.map={"x14:dataBar":this.databarXform=new Ki,"x14:iconSet":this.iconSetXform=new Ji}}get tag(){return`x14:cfRule`}static isExt(e){return e.type===`dataBar`?Ki.isExt(e):!!(e.type===`iconSet`&&(e.custom||Zi[e.iconSet]))}prepare(t){e.isExt(t)&&(t.x14Id=`{${Xi()}}`.toUpperCase())}render(t,n){if(e.isExt(n))switch(n.type){case`dataBar`:this.renderDataBar(t,n);break;case`iconSet`:this.renderIconSet(t,n);break}}renderDataBar(e,t){e.openNode(this.tag,{type:`dataBar`,id:t.x14Id}),this.databarXform.render(e,t),e.closeNode()}renderIconSet(e,t){e.openNode(this.tag,{type:`iconSet`,priority:t.priority,id:t.x14Id||`{${Xi()}}`}),this.iconSetXform.render(e,t),e.closeNode()}createNewModel({attributes:e}){return{type:e.type,x14Id:e.id,priority:I.toIntValue(e.priority)}}onParserClose(e,t){Object.assign(this.model,t.model)}},$i=class extends I{get tag(){return`xm:sqref`}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(){this.model=``}parseText(e){this.model+=e}parseClose(e){return e!==this.tag}},ea=class extends q{constructor(){super(),this.map={"xm:sqref":this.sqRef=new $i,"x14:cfRule":this.cfRule=new Qi}}get tag(){return`x14:conditionalFormatting`}prepare(e){e.rules.forEach(e=>{this.cfRule.prepare(e)})}render(e,t){t.rules.some(Qi.isExt)&&(e.openNode(this.tag,{"xmlns:xm":`http://schemas.microsoft.com/office/excel/2006/main`}),t.rules.filter(Qi.isExt).forEach(t=>this.cfRule.render(e,t)),this.sqRef.render(e,t.ref),e.closeNode())}createNewModel(){return{rules:[]}}onParserClose(e,t){switch(e){case`xm:sqref`:this.model.ref=t.model;break;case`x14:cfRule`:this.model.rules.push(t.model);break}}},ta=class extends q{constructor(){super(),this.map={"x14:conditionalFormatting":this.cfXform=new ea}}get tag(){return`x14:conditionalFormattings`}hasContent(e){return e.hasExtContent===void 0&&(e.hasExtContent=e.some(e=>e.rules.some(Qi.isExt))),e.hasExtContent}prepare(e){e.forEach(e=>{this.cfXform.prepare(e)})}render(e,t){this.hasContent(t)&&(e.openNode(this.tag),t.forEach(t=>this.cfXform.render(e,t)),e.closeNode())}createNewModel(){return[]}onParserClose(e,t){this.model.push(t.model)}},na=class extends q{constructor(){super(),this.map={"x14:conditionalFormattings":this.conditionalFormattings=new ta}}get tag(){return`ext`}hasContent(e){return this.conditionalFormattings.hasContent(e.conditionalFormattings)}prepare(e){this.conditionalFormattings.prepare(e.conditionalFormattings)}render(e,t){e.openNode(`ext`,{uri:`{78C0D931-6437-407d-A8EE-F0AAD7539E65}`,"xmlns:x14":`http://schemas.microsoft.com/office/spreadsheetml/2009/9/main`}),this.conditionalFormattings.render(e,t.conditionalFormattings),e.closeNode()}createNewModel(){return{}}onParserClose(e,t){this.model[e]=t.model}},ra=class extends q{constructor(){super(),this.map={ext:this.ext=new na}}get tag(){return`extLst`}prepare(e,t){this.ext.prepare(e)}hasContent(e){return this.ext.hasContent(e)}render(e,t){this.hasContent(t)&&(e.openNode(`extLst`),this.ext.render(e,t),e.closeNode())}createNewModel(){return{}}onParserClose(e,t){this.model[e]=t.model}};let ia=(e,t)=>{Object.keys(t).forEach(n=>{let r=e[n],i=t[n];r===void 0&&i!==void 0&&(e[n]=i)})},aa=(e,t)=>{if(!t||!t.length)return e;if(!e||!e.length)return t;let n={},r={};return e.forEach(e=>{n[e.ref]=e,e.rules.forEach(e=>{let{x14Id:t}=e;t&&(r[t]=e)})}),t.forEach(t=>{t.rules.forEach(i=>{let a=r[i.x14Id];a?ia(a,i):n[t.ref]?n[t.ref].rules.push(i):e.push({ref:t.ref,rules:[i]})})}),e};var oa=class e extends I{static{this.WORKSHEET_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`,"xmlns:r":`http://schemas.openxmlformats.org/officeDocument/2006/relationships`,"xmlns:mc":`http://schemas.openxmlformats.org/markup-compatibility/2006`,"xmlns:x14ac":`http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac`,"mc:Ignorable":`x14ac`}}constructor(e){super();let{maxRows:t,maxCols:n,ignoreNodes:r}=e||{};this.ignoreNodes=r||[],this.map={sheetPr:new si,dimension:new Zr,sheetViews:new L({tag:`sheetViews`,count:!1,childXform:new ui}),sheetFormatPr:new ci,cols:new L({tag:`cols`,count:!1,childXform:new Xr}),sheetData:new L({tag:`sheetData`,count:!1,empty:!0,childXform:new Yr({maxItems:n}),maxItems:t}),autoFilter:new xi,mergeCells:new L({tag:`mergeCells`,count:!0,childXform:new $r}),rowBreaks:new Ei,colBreaks:new Di,hyperlinks:new L({tag:`hyperlinks`,count:!1,childXform:new Qr}),pageMargins:new fi,dataValidations:new ri,pageSetup:new vi,headerFooter:new Oi,printOptions:new bi,picture:new Si,drawing:new Ci,sheetProtection:new di,tableParts:new L({tag:`tableParts`,count:!0,childXform:new wi}),conditionalFormatting:new Ui,extLst:new ra}}prepare(e,t){t.merges=new Gr,e.hyperlinks=t.hyperlinks=[],e.comments=t.comments=[],e.formControls&&e.formControls.length>0&&(!e.views||e.views.length===0)&&(e.views=[{workbookViewId:0}]),t.formulae={},t.siFormulae=0,this.map.cols.prepare(e.cols,t),this.map.sheetData.prepare(e.rows,t),this.map.conditionalFormatting.prepare(e.conditionalFormattings,t),e.mergeCells=t.merges.mergeCells;let r=e.rels=[];function i(e){return`rId${e.length+1}`}if(e.hyperlinks.forEach(e=>{let t=i(r);e.rId=t,r.push({Id:t,Type:W.Hyperlink,Target:e.target,TargetMode:`External`})}),e.comments.length>0){let a={Id:i(r),Type:W.Comments,Target:_r(e.id)};r.push(a);let o={Id:i(r),Type:W.VmlDrawing,Target:vr(e.id)};r.push(o),e.comments.forEach(e=>{e.refAddress=n.decodeAddress(e.ref)}),t.commentRefs.push({commentName:`comments${e.id}`,vmlDrawing:`vmlDrawing${e.id}`})}let a=[],o;if(e.media.forEach(n=>{if(n.type===`background`){let a=i(r);o=t.media[n.imageId],r.push({Id:a,Type:W.Image,Target:Er(`${o.name}.${o.extension}`)}),e.background={rId:a},e.image=t.media[n.imageId]}else if(n.type===`image`){let{drawing:s}=e;o=t.media[n.imageId],s||(s=e.drawing={rId:i(r),name:`drawing${++t.drawingsCount}`,anchors:[],rels:[]},t.drawings.push(s),r.push({Id:s.rId,Type:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing`,Target:yr(s.name)}));let c=this.preImageId===n.imageId?a[n.imageId]:a[s.rels.length];c||(c=i(s.rels),a[s.rels.length]=c,s.rels.push({Id:c,Type:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/image`,Target:Er(`${o.name}.${o.extension}`)}));let l={picture:{rId:c},range:n.range};if(n.hyperlinks&&n.hyperlinks.hyperlink){let e=i(s.rels);a[s.rels.length]=e,l.picture.hyperlinks={tooltip:n.hyperlinks.tooltip,rId:e},s.rels.push({Id:e,Type:W.Hyperlink,Target:n.hyperlinks.hyperlink,TargetMode:`External`})}this.preImageId=n.imageId,s.anchors.push(l)}}),e.tables.forEach(e=>{let n=i(r);e.rId=n,r.push({Id:n,Type:W.Table,Target:wr(e.target)}),e.columns.forEach(e=>{let{style:n}=e;n&&(e.dxfId=t.styles.addDxfStyle(n))})}),(e.pivotTables||[]).forEach(e=>{r.push({Id:i(r),Type:W.PivotTable,Target:Sr(e.tableNumber)})}),e.formControls&&e.formControls.length>0){let{drawing:n}=e;n||(n=e.drawing={rId:i(r),name:`drawing${++t.drawingsCount}`,anchors:[],rels:[]},t.drawings.push(n),r.push({Id:n.rId,Type:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing`,Target:yr(n.name)})),e.comments.length===0&&r.push({Id:i(r),Type:W.VmlDrawing,Target:vr(e.id)});let a=e=>({nativeCol:e.col,nativeColOff:e.colOff,nativeRow:e.row,nativeRowOff:e.rowOff});for(let o of e.formControls){let e=t.formControlRefs.length+1;o.ctrlPropId=e;let s=i(r);o.ctrlPropRelId=s,r.push({Id:s,Type:W.CtrlProp,Target:Or(e)}),t.formControlRefs.push(e);let c=`Check Box ${Math.max(1,o.shapeId-1024)}`;n.anchors.push({range:{editAs:`absolute`,tl:a(o.tl),br:a(o.br)},alternateContent:{requires:`a14`},shape:{cNvPrId:o.shapeId,name:o.name||c,hidden:!0,spid:`_x0000_s${o.shapeId}`,text:o.text}})}}this.map.extLst.prepare(e,t)}render(t,n){t.openXml(P.StdDocAttributes);let r={...e.WORKSHEET_ATTRIBUTES};n.formControls&&n.formControls.length>0&&(r[`xmlns:x14`]=`http://schemas.microsoft.com/office/spreadsheetml/2009/9/main`,r[`xmlns:xdr`]=`http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing`,r[`mc:Ignorable`]=`${r[`mc:Ignorable`]} x14`),t.openNode(`worksheet`,r);let i=n.properties?{defaultRowHeight:n.properties.defaultRowHeight,dyDescent:n.properties.dyDescent,outlineLevelCol:n.properties.outlineLevelCol,outlineLevelRow:n.properties.outlineLevelRow}:void 0;n.properties&&n.properties.defaultColWidth&&(i.defaultColWidth=n.properties.defaultColWidth);let a={outlineProperties:n.properties&&n.properties.outlineProperties,tabColor:n.properties&&n.properties.tabColor,pageSetup:n.pageSetup&&n.pageSetup.fitToPage?{fitToPage:n.pageSetup.fitToPage}:void 0},o=n.pageSetup&&n.pageSetup.margins,s={showRowColHeaders:n.pageSetup&&n.pageSetup.showRowColHeaders,showGridLines:n.pageSetup&&n.pageSetup.showGridLines,horizontalCentered:n.pageSetup&&n.pageSetup.horizontalCentered,verticalCentered:n.pageSetup&&n.pageSetup.verticalCentered},c=n.sheetProtection;if(this.map.sheetPr.render(t,a),this.map.dimension.render(t,n.dimensions),this.map.sheetViews.render(t,n.views),this.map.sheetFormatPr.render(t,i),this.map.cols.render(t,n.cols),this.map.sheetData.render(t,n.rows),this.map.sheetProtection.render(t,c),this.map.autoFilter.render(t,n.autoFilter),this.map.mergeCells.render(t,n.mergeCells),this.map.conditionalFormatting.render(t,n.conditionalFormattings),this.map.dataValidations.render(t,n.dataValidations),this.map.hyperlinks.render(t,n.hyperlinks),this.map.printOptions.render(t,s),this.map.pageMargins.render(t,o),this.map.pageSetup.render(t,n.pageSetup),this.map.headerFooter.render(t,n.headerFooter),this.map.rowBreaks.render(t,n.rowBreaks),this.map.colBreaks.render(t,n.colBreaks),this.map.drawing.render(t,n.drawing),this.map.picture.render(t,n.background),n.rels&&n.rels.forEach(e=>{e.Type===W.VmlDrawing&&t.leafNode(`legacyDrawing`,{"r:id":e.Id})}),n.formControls&&n.formControls.length>0){t.openNode(`mc:AlternateContent`),t.openNode(`mc:Choice`,{Requires:`x14`}),t.openNode(`controls`);for(let e of n.formControls){if(!e.ctrlPropRelId)continue;let n=`Check Box ${Math.max(1,e.shapeId-1024)}`;t.openNode(`mc:AlternateContent`),t.openNode(`mc:Choice`,{Requires:`x14`}),t.openNode(`control`,{shapeId:e.shapeId,"r:id":e.ctrlPropRelId,name:e.name||n}),t.openNode(`controlPr`,{locked:0,defaultSize:0,print:e.print?1:0,autoFill:0,autoLine:0,autoPict:0}),t.openNode(`anchor`),t.openNode(`from`),t.leafNode(`xdr:col`,void 0,e.tl.col),t.leafNode(`xdr:colOff`,void 0,e.tl.colOff),t.leafNode(`xdr:row`,void 0,e.tl.row),t.leafNode(`xdr:rowOff`,void 0,e.tl.rowOff),t.closeNode(),t.openNode(`to`),t.leafNode(`xdr:col`,void 0,e.br.col),t.leafNode(`xdr:colOff`,void 0,e.br.colOff),t.leafNode(`xdr:row`,void 0,e.br.row),t.leafNode(`xdr:rowOff`,void 0,e.br.rowOff),t.closeNode(),t.closeNode(),t.closeNode(),t.closeNode(),t.closeNode(),t.leafNode(`mc:Fallback`),t.closeNode()}t.closeNode(),t.closeNode(),t.leafNode(`mc:Fallback`),t.closeNode()}this.map.tableParts.render(t,n.tables),this.map.extLst.render(t,n),t.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):e.name===`worksheet`?(Object.values(this.map).forEach(e=>{e.reset()}),!0):(this.map[e.name]&&!this.ignoreNodes.includes(e.name)&&(this.parser=this.map[e.name],this.parser.parseOpen(e)),!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case`worksheet`:{let e=this.map.sheetFormatPr.model||{};this.map.sheetPr.model&&this.map.sheetPr.model.tabColor&&(e.tabColor=this.map.sheetPr.model.tabColor),this.map.sheetPr.model&&this.map.sheetPr.model.outlineProperties&&(e.outlineProperties=this.map.sheetPr.model.outlineProperties);let t={fitToPage:this.map.sheetPr.model&&this.map.sheetPr.model.pageSetup&&this.map.sheetPr.model.pageSetup.fitToPage||!1,margins:this.map.pageMargins.model},n=Object.assign(t,this.map.pageSetup.model,this.map.printOptions.model),r=aa(this.map.conditionalFormatting.model,this.map.extLst.model&&this.map.extLst.model[`x14:conditionalFormattings`]);return this.model={dimensions:this.map.dimension.model,cols:this.map.cols.model,rows:this.map.sheetData.model,mergeCells:this.map.mergeCells.model,hyperlinks:this.map.hyperlinks.model,dataValidations:this.map.dataValidations.model,properties:e,views:this.map.sheetViews.model,pageSetup:n,headerFooter:this.map.headerFooter.model,background:this.map.picture.model,drawing:this.map.drawing.model,tables:this.map.tableParts.model,conditionalFormattings:r,rowBreaks:this.map.rowBreaks.model||[],colBreaks:this.map.colBreaks.model||[]},this.map.autoFilter.model&&(this.model.autoFilter=this.map.autoFilter.model),this.map.sheetProtection.model&&(this.model.sheetProtection=this.map.sheetProtection.model),!1}default:return!0}}reconcile(e,t){let n=(e.relationships||[]).reduce((n,r)=>{if(n[r.Id]=r,r.Type===W.Comments&&(e.comments=t.comments[r.Target].comments),r.Type===W.VmlDrawing&&e.comments&&e.comments.length){let n=t.vmlDrawings[r.Target].comments;e.comments.forEach((e,t)=>{e.note=Object.assign({},e.note,n[t])})}return n},{});if(t.commentsMap=(e.comments||[]).reduce((e,t)=>(t.ref&&(e[t.ref]=t),e),{}),t.hyperlinkMap=(e.hyperlinks||[]).reduce((e,t)=>(t.rId&&(e[t.address]=n[t.rId].Target),e),{}),t.formulae={},e.rows=e.rows&&e.rows.filter(Boolean)||[],e.rows.forEach(e=>{e.cells=e.cells&&e.cells.filter(Boolean)||[]}),this.map.cols.reconcile(e.cols,t),this.map.sheetData.reconcile(e.rows,t),this.map.conditionalFormatting.reconcile(e.conditionalFormattings,t),e.media=[],e.drawing){let r=n[e.drawing.rId].Target.match(/\/drawings\/([a-zA-Z0-9]+)[.][a-zA-Z]{3,4}$/);if(r){let n=r[1];t.drawings[n].anchors.forEach(t=>{if(t.medium){let n={type:`image`,imageId:t.medium.index,range:t.range,hyperlinks:t.picture.hyperlinks};e.media.push(n)}})}}let r=e.background&&n[e.background.rId];if(r){let n=r.Target.split(`/media/`)[1],i=t.mediaIndex&&t.mediaIndex[n];i!==void 0&&e.media.push({type:`background`,imageId:i})}e.tables=(e.tables||[]).map(e=>{let r=n[e.rId];return t.tables[r.Target]}),e.pivotTables=[],(e.relationships||[]).forEach(n=>{if(n.Type===W.PivotTable&&t.pivotTables){let r=t.pivotTables[n.Target];r&&e.pivotTables.push(r)}}),delete e.relationships,delete e.hyperlinks,delete e.comments}},sa=class extends I{render(e){e.openXml({version:`1.0`,encoding:`UTF-8`,standalone:`yes`}),e.openNode(`FeaturePropertyBags`,{xmlns:`http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag`}),e.leafNode(`bag`,{type:`Checkbox`}),e.openNode(`bag`,{type:`XFControls`}),e.leafNode(`bagId`,{k:`CellControl`},`0`),e.closeNode(),e.openNode(`bag`,{type:`XFComplement`}),e.leafNode(`bagId`,{k:`XFControls`},`1`),e.closeNode(),e.openNode(`bag`,{type:`XFComplements`,extRef:`XFComplementsMapperExtRef`}),e.openNode(`a`,{k:`MappedFeaturePropertyBags`}),e.leafNode(`bagId`,{},`2`),e.closeNode(),e.closeNode(),e.closeNode()}parseOpen(){return!1}parseText(){}parseClose(){return!1}},ca=class extends I{parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset(),this.model={range:{editAs:e.attributes.editAs||`oneCell`}};break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(e){this.parser&&this.parser.parseText(e)}reconcilePicture(e,t){if(e&&e.rId){let n=t.rels[e.rId].Target.match(/.*\/media\/(.+[.][a-zA-Z]{3,4})/);if(n){let e=n[1],r=t.mediaIndex[e];return t.media[r]}}}},la=class extends I{constructor(e){super(),this.tag=e.tag,this.map={"xdr:col":new Ut({tag:`xdr:col`,zero:!0}),"xdr:colOff":new Ut({tag:`xdr:colOff`,zero:!0}),"xdr:row":new Ut({tag:`xdr:row`,zero:!0}),"xdr:rowOff":new Ut({tag:`xdr:rowOff`,zero:!0})},this.model={nativeCol:0,nativeColOff:0,nativeRow:0,nativeRowOff:0}}render(e,t){e.openNode(this.tag),this.map[`xdr:col`].render(e,t.nativeCol),this.map[`xdr:colOff`].render(e,t.nativeColOff),this.map[`xdr:row`].render(e,t.nativeRow),this.map[`xdr:rowOff`].render(e,t.nativeRowOff),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset();break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model={nativeCol:this.map[`xdr:col`].model,nativeColOff:this.map[`xdr:colOff`].model,nativeRow:this.map[`xdr:row`].model,nativeRowOff:this.map[`xdr:rowOff`].model},!1;default:return!0}}},ua=class extends I{constructor(){super(),this.model={rId:``}}get tag(){return`a:blip`}render(e,t){e.leafNode(this.tag,{"xmlns:r":`http://schemas.openxmlformats.org/officeDocument/2006/relationships`,"r:embed":t.rId,cstate:`print`})}parseOpen(e){switch(e.name){case this.tag:return this.model={rId:e.attributes[`r:embed`]},!0;default:return!0}}parseText(){}parseClose(e){switch(e){case this.tag:return!1;default:return!0}}},da=class extends I{constructor(){super(),this.map={"a:blip":new ua}}get tag(){return`xdr:blipFill`}render(e,t){e.openNode(this.tag),this.map[`a:blip`].render(e,t),e.openNode(`a:stretch`),e.leafNode(`a:fillRect`),e.closeNode(),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset();break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(){}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model=this.map[`a:blip`].model,!1;default:return!0}}},fa=class extends I{constructor(){super(),this.model={}}get tag(){return`a:hlinkClick`}render(e,t){t.hyperlinks&&t.hyperlinks.rId&&e.leafNode(this.tag,{"xmlns:r":`http://schemas.openxmlformats.org/officeDocument/2006/relationships`,"r:id":t.hyperlinks.rId,tooltip:t.hyperlinks.tooltip})}parseOpen(e){switch(e.name){case this.tag:return this.model={hyperlinks:{rId:e.attributes[`r:id`],tooltip:e.attributes.tooltip}},!0;default:return!0}}parseText(){}parseClose(){return!1}},pa=class extends I{get tag(){return`a:extLst`}render(e){e.openNode(this.tag),e.openNode(`a:ext`,{uri:`{FF2B5EF4-FFF2-40B4-BE49-F238E27FC236}`}),e.leafNode(`a16:creationId`,{"xmlns:a16":`http://schemas.microsoft.com/office/drawing/2014/main`,id:`{00000000-0008-0000-0000-000002000000}`}),e.closeNode(),e.closeNode()}parseOpen(e){switch(e.name){case this.tag:return!0;default:return!0}}parseText(){}parseClose(e){switch(e){case this.tag:return!1;default:return!0}}},ma=class extends I{constructor(){super(),this.map={"a:hlinkClick":new fa,"a:extLst":new pa}}get tag(){return`xdr:cNvPr`}render(e,t){e.openNode(this.tag,{id:t.index,name:`Picture ${t.index}`}),this.map[`a:hlinkClick`].render(e,t),this.map[`a:extLst`].render(e,t),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset();break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(){}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model=this.map[`a:hlinkClick`].model,!1;default:return!0}}},ha=class extends I{get tag(){return`xdr:cNvPicPr`}render(e){e.openNode(this.tag),e.leafNode(`a:picLocks`,{noChangeAspect:`1`}),e.closeNode()}parseOpen(e){switch(e.name){case this.tag:return!0;default:return!0}}parseText(){}parseClose(e){switch(e){case this.tag:return!1;default:return!0}}},ga=class extends I{constructor(){super(),this.map={"xdr:cNvPr":new ma,"xdr:cNvPicPr":new ha}}get tag(){return`xdr:nvPicPr`}render(e,t){e.openNode(this.tag),this.map[`xdr:cNvPr`].render(e,t),this.map[`xdr:cNvPicPr`].render(e,t),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset();break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(){}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model=this.map[`xdr:cNvPr`].model,!1;default:return!0}}};let _a={tag:`xdr:spPr`,c:[{tag:`a:xfrm`,c:[{tag:`a:off`,$:{x:`0`,y:`0`}},{tag:`a:ext`,$:{cx:`0`,cy:`0`}}]},{tag:`a:prstGeom`,$:{prst:`rect`},c:[{tag:`a:avLst`}]}]};var va=class extends I{constructor(){super(),this.map={"xdr:nvPicPr":new ga,"xdr:blipFill":new da,"xdr:spPr":new Vt(_a)}}get tag(){return`xdr:pic`}prepare(e,t){e.index=t.index+1}render(e,t){e.openNode(this.tag),this.map[`xdr:nvPicPr`].render(e,t),this.map[`xdr:blipFill`].render(e,t),this.map[`xdr:spPr`].render(e,t),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset();break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(){}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.mergeModel(this.parser.model),this.parser=void 0),!0;switch(e){case this.tag:return!1;default:return!0}}},ya=class extends I{get tag(){return`xdr:sp`}render(e,t){t&&(e.openNode(this.tag,{macro:``,textlink:``}),e.openNode(`xdr:nvSpPr`),e.openNode(`xdr:cNvPr`,{id:t.cNvPrId,name:t.name,hidden:t.hidden?`1`:void 0}),e.openNode(`a:extLst`),e.openNode(`a:ext`,{uri:`{63B3BB69-23CF-44E3-9099-C40C66FF867C}`}),e.leafNode(`a14:compatExt`,{spid:t.spid,"xmlns:a14":`http://schemas.microsoft.com/office/drawing/2010/main`},void 0),e.closeNode(),e.closeNode(),e.closeNode(),e.leafNode(`xdr:cNvSpPr`),e.closeNode(),e.openNode(`xdr:spPr`,{bwMode:`auto`}),e.openNode(`a:xfrm`),e.leafNode(`a:off`,{x:0,y:0}),e.leafNode(`a:ext`,{cx:0,cy:0}),e.closeNode(),e.openNode(`a:prstGeom`,{prst:`rect`}),e.leafNode(`a:avLst`),e.closeNode(),e.leafNode(`a:noFill`),e.openNode(`a:ln`),e.leafNode(`a:noFill`),e.closeNode(),e.openNode(`a:extLst`),e.openNode(`a:ext`,{uri:`{909E8E84-426E-40DD-AFC4-6F175D3DCCD1}`}),e.openNode(`a14:hiddenFill`,{"xmlns:a14":`http://schemas.microsoft.com/office/drawing/2010/main`}),e.openNode(`a:solidFill`),e.leafNode(`a:srgbClr`,{val:`F0F0F0`}),e.closeNode(),e.closeNode(),e.closeNode(),e.openNode(`a:ext`,{uri:`{91240B29-F687-4F45-9708-019B960494DF}`}),e.openNode(`a14:hiddenLine`,{w:9525,"xmlns:a14":`http://schemas.microsoft.com/office/drawing/2010/main`}),e.openNode(`a:solidFill`),e.leafNode(`a:srgbClr`,{val:`000000`}),e.closeNode(),e.leafNode(`a:miter`,{lim:8e5}),e.leafNode(`a:headEnd`),e.leafNode(`a:tailEnd`),e.closeNode(),e.closeNode(),e.closeNode(),e.closeNode(),e.openNode(`xdr:txBody`),e.leafNode(`a:bodyPr`,{vertOverflow:`clip`,wrap:`square`,lIns:18288,tIns:18288,rIns:0,bIns:18288,anchor:`ctr`,upright:1}),e.leafNode(`a:lstStyle`),e.openNode(`a:p`),e.openNode(`a:pPr`,{algn:`l`,rtl:0}),e.leafNode(`a:defRPr`,{sz:1e3}),e.closeNode(),e.openNode(`a:r`),e.openNode(`a:rPr`,{lang:`en-US`,sz:800,b:0,i:0,u:`none`,strike:`noStrike`,baseline:0}),e.openNode(`a:solidFill`),e.leafNode(`a:srgbClr`,{val:`000000`}),e.closeNode(),e.leafNode(`a:latin`,{typeface:`Tahoma`,pitchFamily:2,charset:0}),e.leafNode(`a:ea`,{typeface:`Tahoma`,pitchFamily:2,charset:0}),e.leafNode(`a:cs`,{typeface:`Tahoma`,pitchFamily:2,charset:0}),e.closeNode(),e.openNode(`a:t`),e.writeText(t.text??``),e.closeNode(),e.closeNode(),e.closeNode(),e.closeNode(),e.closeNode())}},ba=class extends ca{constructor(){super(),this.map={"xdr:from":new la({tag:`xdr:from`}),"xdr:to":new la({tag:`xdr:to`}),"xdr:pic":new va,"xdr:sp":new ya,"xdr:clientData":new Vt({tag:`xdr:clientData`})}}get tag(){return`xdr:twoCellAnchor`}prepare(e,t){e.picture&&this.map[`xdr:pic`].prepare(e.picture,t)}render(e,t){let n=!!t.alternateContent;n&&(e.openNode(`mc:AlternateContent`,{"xmlns:mc":`http://schemas.openxmlformats.org/markup-compatibility/2006`}),e.openNode(`mc:Choice`,{Requires:t.alternateContent?.requires,...t.alternateContent?.requires===`a14`?{"xmlns:a14":`http://schemas.microsoft.com/office/drawing/2010/main`}:{}})),e.openNode(this.tag,{editAs:t.range.editAs||`oneCell`}),this.map[`xdr:from`].render(e,t.range.tl),this.map[`xdr:to`].render(e,t.range.br),t.picture?this.map[`xdr:pic`].render(e,t.picture):t.shape&&this.map[`xdr:sp`].render(e,t.shape),this.map[`xdr:clientData`].render(e,{}),e.closeNode(),n&&(e.closeNode(),e.leafNode(`mc:Fallback`),e.closeNode())}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model.range.tl=this.map[`xdr:from`].model,this.model.range.br=this.map[`xdr:to`].model,this.model.picture=this.map[`xdr:pic`].model,!1;default:return!0}}reconcile(e,t){e.medium=this.reconcilePicture(e.picture,t)}};let xa=9525;var Sa=class extends I{constructor(e){super(),this.tag=e.tag,this.map={},this.model={width:0,height:0}}render(e,t){e.openNode(this.tag);let n=Math.floor(t.width*xa),r=Math.floor(t.height*xa);e.addAttribute(`cx`,n),e.addAttribute(`cy`,r),e.closeNode()}parseOpen(e){return e.name===this.tag?(this.model={width:parseInt(e.attributes.cx||`0`,10)/xa,height:parseInt(e.attributes.cy||`0`,10)/xa},!0):!1}parseText(e){}parseClose(e){return!1}},Ca=class extends ca{constructor(){super(),this.map={"xdr:from":new la({tag:`xdr:from`}),"xdr:ext":new Sa({tag:`xdr:ext`}),"xdr:pic":new va,"xdr:clientData":new Vt({tag:`xdr:clientData`})}}get tag(){return`xdr:oneCellAnchor`}prepare(e,t){this.map[`xdr:pic`].prepare(e.picture,t)}render(e,t){e.openNode(this.tag,{editAs:t.range.editAs||`oneCell`}),this.map[`xdr:from`].render(e,t.range.tl),this.map[`xdr:ext`].render(e,t.range.ext),this.map[`xdr:pic`].render(e,t.picture),this.map[`xdr:clientData`].render(e,{}),e.closeNode()}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model.range.tl=this.map[`xdr:from`].model,this.model.range.ext=this.map[`xdr:ext`].model,this.model.picture=this.map[`xdr:pic`].model,!1;default:return!0}}reconcile(e,t){e.medium=this.reconcilePicture(e.picture,t)}};function wa(e){return(typeof e.range==`string`?n.decode(e.range):e.range).br?`xdr:twoCellAnchor`:`xdr:oneCellAnchor`}var Ta=class e extends I{constructor(){super(),this.map={"xdr:twoCellAnchor":new ba,"xdr:oneCellAnchor":new Ca},this.model={anchors:[]}}prepare(e){e.anchors.forEach((e,t)=>{e.anchorType=wa(e),this.map[e.anchorType].prepare(e,{index:t})})}get tag(){return`xdr:wsDr`}render(t,n){let r=n||this.model;t.openXml(P.StdDocAttributes),t.openNode(this.tag,e.DRAWING_ATTRIBUTES),r.anchors.forEach(e=>{this.map[e.anchorType].render(t,e)}),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset(),this.model={anchors:[]};break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.anchors.push(this.parser.model),this.parser=void 0),!0;switch(e){case this.tag:return!1;default:return!0}}reconcile(e,t){e.anchors.forEach(e=>{e.br?this.map[`xdr:twoCellAnchor`].reconcile(e,t):this.map[`xdr:oneCellAnchor`].reconcile(e,t)})}static{this.DRAWING_ATTRIBUTES={"xmlns:xdr":`http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing`,"xmlns:a":`http://schemas.openxmlformats.org/drawingml/2006/main`}}},Ea=class extends I{constructor(){super(),this.model={val:``}}get tag(){return`customFilter`}render(e,t){e.leafNode(this.tag,{val:t.val,operator:t.operator})}parseOpen(e){return e.name===this.tag?(this.model={val:e.attributes.val,operator:e.attributes.operator},!0):!1}parseText(){}parseClose(){return!1}},Da=class extends I{constructor(){super(),this.model={val:``}}get tag(){return`filter`}render(e,t){e.leafNode(this.tag,{val:t.val})}parseOpen(e){return e.name===this.tag?(this.model={val:e.attributes.val},!0):!1}parseText(){}parseClose(){return!1}},Oa=class extends I{constructor(){super(),this.map={customFilters:new L({tag:`customFilters`,count:!1,empty:!0,childXform:new Ea}),filters:new L({tag:`filters`,count:!1,empty:!0,childXform:new Da})},this.model={filterButton:!1}}get tag(){return`filterColumn`}prepare(e,t){e.colId=t.index.toString()}render(e,t){if(t.customFilters){e.openNode(this.tag,{colId:t.colId,hiddenButton:t.filterButton?`0`:`1`}),this.map.customFilters.render(e,t.customFilters),e.closeNode();return}e.leafNode(this.tag,{colId:t.colId,hiddenButton:t.filterButton?`0`:`1`})}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;let{attributes:t}=e;switch(e.name){case this.tag:return this.model={filterButton:t.hiddenButton===`0`},!0;case`dynamicFilter`:return!0;default:if(this.parser=this.map[e.name],this.parser)return this.parseOpen(e),!0;throw Error(`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}}parseText(){}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model.customFilters=this.map.customFilters.model,!1;default:return!0}}},ka=class extends I{constructor(){super(),this.map={filterColumn:new Oa},this.model={autoFilterRef:``,columns:[]}}get tag(){return`autoFilter`}prepare(e){e.columns.forEach((e,t)=>{this.map.filterColumn.prepare(e,{index:t})})}render(e,t){e.openNode(this.tag,{ref:t.autoFilterRef}),t.columns.forEach(t=>{this.map.filterColumn.render(e,t)}),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:return this.model={autoFilterRef:e.attributes.ref,columns:[]},!0;default:if(this.parser=this.map[e.name],this.parser)return this.parseOpen(e),!0;throw Error(`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.columns.push(this.parser.model),this.parser=void 0),!0;switch(e){case this.tag:return!1;default:throw Error(`Unexpected xml node in parseClose: ${e}`)}}},Aa=class extends I{constructor(){super(),this.model={name:``}}get tag(){return`tableColumn`}prepare(e,t){e.id=t.index+1}render(e,t){e.leafNode(this.tag,{id:t.id.toString(),name:t.name,totalsRowLabel:t.totalsRowLabel,totalsRowFunction:t.totalsRowFunction===`none`?void 0:t.totalsRowFunction,dxfId:t.dxfId})}parseOpen(e){if(e.name===this.tag){let{attributes:t}=e;return this.model={name:t.name,totalsRowLabel:t.totalsRowLabel,totalsRowFunction:t.totalsRowFunction,dxfId:t.dxfId},!0}return!1}parseText(){}parseClose(){return!1}},ja=class extends I{constructor(){super(),this.model={theme:null,showFirstColumn:!1,showLastColumn:!1,showRowStripes:!1,showColumnStripes:!1}}get tag(){return`tableStyleInfo`}render(e,t){e.leafNode(this.tag,{name:t.theme?t.theme:void 0,showFirstColumn:t.showFirstColumn?`1`:`0`,showLastColumn:t.showLastColumn?`1`:`0`,showRowStripes:t.showRowStripes?`1`:`0`,showColumnStripes:t.showColumnStripes?`1`:`0`})}parseOpen(e){if(e.name===this.tag){let{attributes:t}=e;return this.model={theme:t.name?t.name:null,showFirstColumn:t.showFirstColumn===`1`,showLastColumn:t.showLastColumn===`1`,showRowStripes:t.showRowStripes===`1`,showColumnStripes:t.showColumnStripes===`1`},!0}return!1}parseText(){}parseClose(){return!1}},Ma=class e extends I{constructor(){super(),this.map={autoFilter:new ka,tableColumns:new L({tag:`tableColumns`,count:!0,empty:!0,childXform:new Aa}),tableStyleInfo:new ja},this.model={id:0,name:``,tableRef:``,columns:[]}}prepare(e,t){this.map.autoFilter.prepare(e),this.map.tableColumns.prepare(e.columns,t)}get tag(){return`table`}render(t,n){t.openXml(P.StdDocAttributes),t.openNode(this.tag,{...e.TABLE_ATTRIBUTES,id:n.id,name:n.name,displayName:n.displayName||n.name,ref:n.tableRef,totalsRowCount:n.totalsRow?`1`:void 0,headerRowCount:n.headerRow?void 0:`0`}),this.map.autoFilter.render(t,n),this.map.tableColumns.render(t,n.columns),this.map.tableStyleInfo.render(t,n.style),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;let{name:t,attributes:n}=e;switch(t){case this.tag:this.reset(),this.model={name:n.name,displayName:n.displayName||n.name,tableRef:n.ref,totalsRow:n.totalsRowCount===`1`,headerRow:n.headerRowCount!==`0`};break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model.columns=this.map.tableColumns.model,this.map.autoFilter.model&&(this.model.autoFilterRef=this.map.autoFilter.model.autoFilterRef,this.map.autoFilter.model.columns.forEach((e,t)=>{this.model.columns[t].filterButton=e.filterButton})),this.model.style=this.map.tableStyleInfo.model,!1;default:return!0}}reconcile(e,t){e.tableRef&&!e.ref&&(e.ref=e.tableRef),e.rows||=[],e.columns.forEach(e=>{e.dxfId!==void 0&&(e.style=t.styles.getDxfStyle(e.dxfId))})}static{this.TABLE_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`}}},Na=class e extends I{constructor(){super(),this.map={},this.model=null,this.currentRecord=null}prepare(e){}get tag(){return`pivotCacheRecords`}reset(){this.model=null,this.currentRecord=null}render(e,t){t.isLoaded||!(`source`in t)?this.renderLoaded(e,t):this.renderNew(e,t)}renderNew(t,n){let{source:r,cacheFields:i}=n,a=r.getSheetValues().slice(2);t.openXml(P.StdDocAttributes),t.openNode(this.tag,{...e.PIVOT_CACHE_RECORDS_ATTRIBUTES,count:a.length}),t.writeXml(this.renderTableNew(a,i)),t.closeNode()}renderLoaded(t,n){t.openXml(P.StdDocAttributes),t.openNode(this.tag,{...e.PIVOT_CACHE_RECORDS_ATTRIBUTES,count:n.count});for(let e of n.records){t.writeXml(`
|
|
11
11
|
<r>`);for(let n of e)t.writeXml(`
|
|
12
12
|
`),t.writeXml(this.renderRecordValue(n));t.writeXml(`
|
|
13
|
-
</r>`)}t.closeNode()}renderRecordValue(e){switch(e.type){case`x`:return`<x v="${e.value}" />`;case`n`:return`<n v="${e.value}" />`;case`s`:return`<s v="${
|
|
13
|
+
</r>`)}t.closeNode()}renderRecordValue(e){switch(e.type){case`x`:return`<x v="${e.value}" />`;case`n`:return`<n v="${e.value}" />`;case`s`:return`<s v="${Ae(String(e.value))}" />`;case`b`:return`<b v="${e.value?`1`:`0`}" />`;case`m`:return`<m />`;case`d`:return`<d v="${e.value.toISOString()}" />`;case`e`:return`<e v="${e.value}" />`;default:return`<m />`}}renderTableNew(e,t){let n=[];for(let r of e){let e=r.slice(1);n.push(`
|
|
14
14
|
<r>`);for(let r=0;r<e.length;r++)n.push(`
|
|
15
15
|
`),n.push(this.renderCellNew(e[r],t[r].sharedItems));n.push(`
|
|
16
|
-
</r>`)}return n.join(``)}renderCellNew(e,t){if(e==null)return`<m />`;if(t===null)return Number.isFinite(e)?`<n v="${e}" />`:`<s v="${
|
|
16
|
+
</r>`)}return n.join(``)}renderCellNew(e,t){if(e==null)return`<m />`;if(t===null)return Number.isFinite(e)?`<n v="${e}" />`:`<s v="${Ae(String(e))}" />`;let n=t.indexOf(e);if(n<0)throw Error(`${JSON.stringify(e)} not in sharedItems ${JSON.stringify(t)}`);return`<x v="${n}" />`}parseOpen(e){let{name:t,attributes:n}=e;switch(t){case this.tag:this.reset(),this.model={records:[],count:parseInt(n.count||`0`,10),isLoaded:!0};break;case`r`:this.currentRecord=[];break;case`x`:this.currentRecord&&this.currentRecord.push({type:`x`,value:parseInt(n.v||`0`,10)});break;case`n`:this.currentRecord&&this.currentRecord.push({type:`n`,value:parseFloat(n.v||`0`)});break;case`s`:this.currentRecord&&this.currentRecord.push({type:`s`,value:Oe(n.v||``)});break;case`b`:this.currentRecord&&this.currentRecord.push({type:`b`,value:n.v===`1`});break;case`m`:this.currentRecord&&this.currentRecord.push({type:`m`});break;case`d`:this.currentRecord&&this.currentRecord.push({type:`d`,value:new Date(n.v||``)});break;case`e`:this.currentRecord&&this.currentRecord.push({type:`e`,value:n.v||``});break}return!0}parseText(e){}parseClose(e){switch(e){case this.tag:return!1;case`r`:this.model&&this.currentRecord&&(this.model.records.push(this.currentRecord),this.currentRecord=null);break}return!0}reconcile(e,t){}static{this.PIVOT_CACHE_RECORDS_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`,"xmlns:r":`http://schemas.openxmlformats.org/officeDocument/2006/relationships`,"xmlns:mc":`http://schemas.openxmlformats.org/markup-compatibility/2006`,"mc:Ignorable":`xr`,"xmlns:xr":`http://schemas.microsoft.com/office/spreadsheetml/2014/revision`}}},Pa=class{constructor({name:e,sharedItems:t,minValue:n,maxValue:r}){this.name=e,this.sharedItems=t,this.minValue=n,this.maxValue=r}render(){let e=Ae(this.name);if(this.sharedItems===null)return this.minValue===void 0||this.maxValue===void 0?`<cacheField name="${e}" numFmtId="0">
|
|
17
17
|
<sharedItems />
|
|
18
18
|
</cacheField>`:`<cacheField name="${e}" numFmtId="0">
|
|
19
19
|
<sharedItems containsSemiMixedTypes="0" containsString="0" containsNumber="1" containsInteger="1" minValue="${this.minValue}" maxValue="${this.maxValue}" />
|
|
@@ -23,14 +23,14 @@ var ExcelTS=(function(e){let t=/^[A-Z]+\d+$/,n={_dictionary:`ABCDEFGHIJKLMNOPQRS
|
|
|
23
23
|
</sharedItems>
|
|
24
24
|
</cacheField>`}return`<cacheField name="${e}" numFmtId="0">
|
|
25
25
|
<sharedItems count="${this.sharedItems.length}">
|
|
26
|
-
${this.sharedItems.map(e=>`<s v="${
|
|
26
|
+
${this.sharedItems.map(e=>`<s v="${Ae(String(e))}" />`).join(``)}
|
|
27
27
|
</sharedItems>
|
|
28
|
-
</cacheField>`}},
|
|
29
|
-
`)),t.closeNode(),t.closeNode()}renderLoaded(t,n){let{cacheFields:r,sourceRef:i,sourceSheet:a,recordCount:o}=n;t.openXml(
|
|
30
|
-
`)),t.closeNode(),t.closeNode()}parseOpen(e){let{name:t,attributes:n}=e;if(this.currentCacheField)return this.currentCacheField.parseOpen(e),!0;switch(t){case this.tag:this.reset(),this.model={cacheFields:[],rId:n[`r:id`],refreshOnLoad:n.refreshOnLoad,createdVersion:n.createdVersion,refreshedVersion:n.refreshedVersion,minRefreshableVersion:n.minRefreshableVersion,recordCount:n.recordCount?parseInt(n.recordCount,10):void 0,isLoaded:!0};break;case`cacheSource`:this.inCacheSource=!0;break;case`worksheetSource`:this.inCacheSource&&this.model&&(this.model.sourceRef=n.ref,this.model.sourceSheet=n.sheet);break;case`cacheFields`:this.inCacheFields=!0;break;case`cacheField`:this.inCacheFields&&(this.currentCacheField=new
|
|
28
|
+
</cacheField>`}},Fa=class extends I{constructor(){super(),this.model=null,this.inSharedItems=!1}get tag(){return`cacheField`}reset(){this.model=null,this.inSharedItems=!1}parseOpen(e){let{name:t,attributes:n}=e;switch(t){case`cacheField`:this.model={name:Oe(n.name||``),sharedItems:null};break;case`sharedItems`:this.inSharedItems=!0,this.model&&(this.model.containsNumber=n.containsNumber===`1`,this.model.containsInteger=n.containsInteger===`1`,n.minValue!==void 0&&(this.model.minValue=parseFloat(n.minValue)),n.maxValue!==void 0&&(this.model.maxValue=parseFloat(n.maxValue)),parseInt(n.count||`0`,10)>0?this.model.sharedItems=[]:this.model.sharedItems=null);break;case`s`:if(this.inSharedItems&&this.model?.sharedItems!==null){let e=Oe(n.v||``);this.model.sharedItems.push(e)}break;case`n`:if(this.inSharedItems&&this.model?.sharedItems!==null){let e=parseFloat(n.v||`0`);this.model.sharedItems.push(e)}break;case`b`:if(this.inSharedItems&&this.model?.sharedItems!==null){let e=n.v===`1`;this.model.sharedItems.push(e)}break;case`e`:if(this.inSharedItems&&this.model?.sharedItems!==null){let e=`#${n.v||`ERROR!`}`;this.model.sharedItems.push(e)}break;case`m`:this.inSharedItems&&this.model?.sharedItems!==null&&this.model.sharedItems.push(null);break;case`d`:if(this.inSharedItems&&this.model?.sharedItems!==null){let e=new Date(n.v||``);this.model.sharedItems.push(e)}break}return!0}parseText(e){}parseClose(e){switch(e){case`cacheField`:return!1;case`sharedItems`:this.inSharedItems=!1;break}return!0}},Ia=class e extends I{constructor(){super(),this.map={},this.model=null,this.currentCacheField=null,this.inCacheFields=!1,this.inCacheSource=!1}prepare(e){}get tag(){return`pivotCacheDefinition`}reset(){this.model=null,this.currentCacheField=null,this.inCacheFields=!1,this.inCacheSource=!1}render(e,t){t.isLoaded||!(`source`in t)?this.renderLoaded(e,t):this.renderNew(e,t)}renderNew(t,n){let{source:r,cacheFields:i}=n,a=r.getSheetValues().slice(2).length;t.openXml(P.StdDocAttributes),t.openNode(this.tag,{...e.PIVOT_CACHE_DEFINITION_ATTRIBUTES,"r:id":`rId1`,refreshOnLoad:`1`,createdVersion:`8`,refreshedVersion:`8`,minRefreshableVersion:`3`,recordCount:a}),t.openNode(`cacheSource`,{type:`worksheet`}),t.leafNode(`worksheetSource`,{ref:r.dimensions.shortRange,sheet:r.name}),t.closeNode(),t.openNode(`cacheFields`,{count:i.length}),t.writeXml(i.map(e=>new Pa(e).render()).join(`
|
|
29
|
+
`)),t.closeNode(),t.closeNode()}renderLoaded(t,n){let{cacheFields:r,sourceRef:i,sourceSheet:a,recordCount:o}=n;t.openXml(P.StdDocAttributes),t.openNode(this.tag,{...e.PIVOT_CACHE_DEFINITION_ATTRIBUTES,"r:id":n.rId||`rId1`,refreshOnLoad:n.refreshOnLoad||`1`,createdVersion:n.createdVersion||`8`,refreshedVersion:n.refreshedVersion||`8`,minRefreshableVersion:n.minRefreshableVersion||`3`,recordCount:o||r.length+1}),t.openNode(`cacheSource`,{type:`worksheet`}),t.leafNode(`worksheetSource`,{ref:i,sheet:a}),t.closeNode(),t.openNode(`cacheFields`,{count:r.length}),t.writeXml(r.map(e=>new Pa(e).render()).join(`
|
|
30
|
+
`)),t.closeNode(),t.closeNode()}parseOpen(e){let{name:t,attributes:n}=e;if(this.currentCacheField)return this.currentCacheField.parseOpen(e),!0;switch(t){case this.tag:this.reset(),this.model={cacheFields:[],rId:n[`r:id`],refreshOnLoad:n.refreshOnLoad,createdVersion:n.createdVersion,refreshedVersion:n.refreshedVersion,minRefreshableVersion:n.minRefreshableVersion,recordCount:n.recordCount?parseInt(n.recordCount,10):void 0,isLoaded:!0};break;case`cacheSource`:this.inCacheSource=!0;break;case`worksheetSource`:this.inCacheSource&&this.model&&(this.model.sourceRef=n.ref,this.model.sourceSheet=n.sheet);break;case`cacheFields`:this.inCacheFields=!0;break;case`cacheField`:this.inCacheFields&&(this.currentCacheField=new Fa,this.currentCacheField.parseOpen(e));break}return!0}parseText(e){this.currentCacheField&&this.currentCacheField.parseText(e)}parseClose(e){if(this.currentCacheField)return this.currentCacheField.parseClose(e)||(this.model&&this.currentCacheField.model&&this.model.cacheFields.push(this.currentCacheField.model),this.currentCacheField=null),!0;switch(e){case this.tag:return!1;case`cacheSource`:this.inCacheSource=!1;break;case`cacheFields`:this.inCacheFields=!1;break}return!0}reconcile(e,t){}static{this.PIVOT_CACHE_DEFINITION_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`,"xmlns:r":`http://schemas.openxmlformats.org/officeDocument/2006/relationships`}}},La=class e extends I{constructor(){super(),this.map={},this.model=null,this.inPivotFields=!1,this.inRowFields=!1,this.inColFields=!1,this.inDataFields=!1,this.inRowItems=!1,this.inColItems=!1,this.inLocation=!1,this.currentPivotField=null,this.inItems=!1,this.inPivotTableStyleInfo=!1}prepare(e){}get tag(){return`pivotTableDefinition`}reset(){this.model=null,this.inPivotFields=!1,this.inRowFields=!1,this.inColFields=!1,this.inDataFields=!1,this.inRowItems=!1,this.inColItems=!1,this.inLocation=!1,this.currentPivotField=null,this.inItems=!1,this.inPivotTableStyleInfo=!1}render(e,t){t.isLoaded?this.renderLoaded(e,t):this.renderNew(e,t)}renderNew(t,n){let{rows:r,columns:i,values:a,cacheFields:o,cacheId:s,applyWidthHeightFormats:c}=n,l=Ra(r,o),u=za(i,o,a.length),d=r.length>0&&o[r[0]]?.sharedItems?.length||0,f=i.length>0&&o[i[0]]?.sharedItems?.length||0,p=4+d+1,m=1+f+1,h=`A3:${String.fromCharCode(64+m)}${p}`;t.openXml(P.StdDocAttributes),t.openNode(this.tag,{...e.PIVOT_TABLE_ATTRIBUTES,name:`PivotTable2`,cacheId:s,applyNumberFormats:`0`,applyBorderFormats:`0`,applyFontFormats:`0`,applyPatternFormats:`0`,applyAlignmentFormats:`0`,applyWidthHeightFormats:c,dataCaption:`Values`,updatedVersion:`8`,minRefreshableVersion:`3`,useAutoFormatting:`1`,itemPrintTitles:`1`,createdVersion:`8`,indent:`0`,compact:`0`,compactData:`0`,multipleFieldFilters:`0`}),t.writeXml(`
|
|
31
31
|
<location ref="${h}" firstHeaderRow="1" firstDataRow="2" firstDataCol="1" />
|
|
32
32
|
<pivotFields count="${o.length}">
|
|
33
|
-
${
|
|
33
|
+
${Va(n)}
|
|
34
34
|
</pivotFields>
|
|
35
35
|
<rowFields count="${r.length}">
|
|
36
36
|
${r.map(e=>`<field x="${e}" />`).join(`
|
|
@@ -47,7 +47,7 @@ var ExcelTS=(function(e){let t=/^[A-Z]+\d+$/,n={_dictionary:`ABCDEFGHIJKLMNOPQRS
|
|
|
47
47
|
${u.xml}
|
|
48
48
|
</colItems>
|
|
49
49
|
<dataFields count="${a.length}">
|
|
50
|
-
${
|
|
50
|
+
${Ba(o,a,n.metric)}
|
|
51
51
|
</dataFields>
|
|
52
52
|
<pivotTableStyleInfo
|
|
53
53
|
name="PivotStyleLight16"
|
|
@@ -77,7 +77,7 @@ var ExcelTS=(function(e){let t=/^[A-Z]+\d+$/,n={_dictionary:`ABCDEFGHIJKLMNOPQRS
|
|
|
77
77
|
/>
|
|
78
78
|
</ext>
|
|
79
79
|
</extLst>
|
|
80
|
-
`),t.closeNode()}renderLoaded(t,n){if(t.openXml(
|
|
80
|
+
`),t.closeNode()}renderLoaded(t,n){if(t.openXml(P.StdDocAttributes),t.openNode(this.tag,{...e.PIVOT_TABLE_ATTRIBUTES,name:n.name||`PivotTable1`,cacheId:n.cacheId,applyNumberFormats:n.applyNumberFormats||`0`,applyBorderFormats:n.applyBorderFormats||`0`,applyFontFormats:n.applyFontFormats||`0`,applyPatternFormats:n.applyPatternFormats||`0`,applyAlignmentFormats:n.applyAlignmentFormats||`0`,applyWidthHeightFormats:n.applyWidthHeightFormats||`0`,dataCaption:n.dataCaption||`Values`,updatedVersion:n.updatedVersion||`8`,minRefreshableVersion:n.minRefreshableVersion||`3`,useAutoFormatting:n.useAutoFormatting?`1`:`0`,itemPrintTitles:n.itemPrintTitles?`1`:`0`,createdVersion:n.createdVersion||`8`,indent:n.indent===void 0?`0`:String(n.indent),compact:n.compact?`1`:`0`,compactData:n.compactData?`1`:`0`,multipleFieldFilters:n.multipleFieldFilters?`1`:`0`}),n.location&&t.leafNode(`location`,{ref:n.location.ref,firstHeaderRow:n.location.firstHeaderRow,firstDataRow:n.location.firstDataRow,firstDataCol:n.location.firstDataCol}),n.pivotFields.length>0){t.openNode(`pivotFields`,{count:n.pivotFields.length});for(let e of n.pivotFields)this.renderPivotFieldLoaded(t,e);t.closeNode()}if(n.rowFields.length>0){t.openNode(`rowFields`,{count:n.rowFields.length});for(let e of n.rowFields)t.leafNode(`field`,{x:e});t.closeNode()}t.writeXml(`
|
|
81
81
|
<rowItems count="1">
|
|
82
82
|
<i t="grand"><x /></i>
|
|
83
83
|
</rowItems>`);let r=n.colFields.length===0?1:n.colFields.length;if(t.openNode(`colFields`,{count:r}),n.colFields.length===0)t.leafNode(`field`,{x:-2});else for(let e of n.colFields)t.leafNode(`field`,{x:e});if(t.closeNode(),t.writeXml(`
|
|
@@ -104,15 +104,15 @@ var ExcelTS=(function(e){let t=/^[A-Z]+\d+$/,n={_dictionary:`ABCDEFGHIJKLMNOPQRS
|
|
|
104
104
|
/>
|
|
105
105
|
</ext>
|
|
106
106
|
</extLst>
|
|
107
|
-
`),t.closeNode()}renderPivotFieldLoaded(e,t){let n={compact:t.compact?`1`:`0`,outline:t.outline?`1`:`0`,showAll:t.showAll?`1`:`0`,defaultSubtotal:t.defaultSubtotal?`1`:`0`};if(t.axis&&(n.axis=t.axis),t.dataField&&(n.dataField=`1`),t.items&&t.items.length>0){e.openNode(`pivotField`,n),e.openNode(`items`,{count:t.items.length+1});for(let n of t.items)e.leafNode(`item`,{x:n});e.writeXml(`<item t="default" />`),e.closeNode(),e.closeNode()}else e.leafNode(`pivotField`,n)}parseOpen(e){let{name:t,attributes:n}=e;switch(t){case this.tag:this.reset(),this.model={name:n.name,cacheId:parseInt(n.cacheId||`0`,10),uid:n[`xr:uid`],pivotFields:[],rowFields:[],colFields:[],dataFields:[],applyNumberFormats:n.applyNumberFormats,applyBorderFormats:n.applyBorderFormats,applyFontFormats:n.applyFontFormats,applyPatternFormats:n.applyPatternFormats,applyAlignmentFormats:n.applyAlignmentFormats,applyWidthHeightFormats:n.applyWidthHeightFormats,dataCaption:n.dataCaption,updatedVersion:n.updatedVersion,minRefreshableVersion:n.minRefreshableVersion,createdVersion:n.createdVersion,useAutoFormatting:n.useAutoFormatting===`1`,itemPrintTitles:n.itemPrintTitles===`1`,indent:n.indent?parseInt(n.indent,10):0,compact:n.compact===`1`,compactData:n.compactData===`1`,multipleFieldFilters:n.multipleFieldFilters===`1`,isLoaded:!0};break;case`location`:this.model&&(this.model.location={ref:n.ref,firstHeaderRow:n.firstHeaderRow?parseInt(n.firstHeaderRow,10):void 0,firstDataRow:n.firstDataRow?parseInt(n.firstDataRow,10):void 0,firstDataCol:n.firstDataCol?parseInt(n.firstDataCol,10):void 0});break;case`pivotFields`:this.inPivotFields=!0;break;case`pivotField`:this.inPivotFields&&(this.currentPivotField={axis:n.axis,dataField:n.dataField===`1`,items:[],compact:n.compact===`1`,outline:n.outline===`1`,showAll:n.showAll===`1`,defaultSubtotal:n.defaultSubtotal===`1`});break;case`items`:this.currentPivotField&&(this.inItems=!0);break;case`item`:this.inItems&&this.currentPivotField&&n.x!==void 0&&this.currentPivotField.items.push(parseInt(n.x,10));break;case`rowFields`:this.inRowFields=!0;break;case`colFields`:this.inColFields=!0;break;case`dataFields`:this.inDataFields=!0;break;case`rowItems`:this.inRowItems=!0;break;case`colItems`:this.inColItems=!0;break;case`field`:if(this.model){let e=parseInt(n.x||`0`,10);this.inRowFields?this.model.rowFields.push(e):this.inColFields&&this.model.colFields.push(e)}break;case`dataField`:this.inDataFields&&this.model&&this.model.dataFields.push({name:
|
|
108
|
-
`)}}function
|
|
107
|
+
`),t.closeNode()}renderPivotFieldLoaded(e,t){let n={compact:t.compact?`1`:`0`,outline:t.outline?`1`:`0`,showAll:t.showAll?`1`:`0`,defaultSubtotal:t.defaultSubtotal?`1`:`0`};if(t.axis&&(n.axis=t.axis),t.dataField&&(n.dataField=`1`),t.items&&t.items.length>0){e.openNode(`pivotField`,n),e.openNode(`items`,{count:t.items.length+1});for(let n of t.items)e.leafNode(`item`,{x:n});e.writeXml(`<item t="default" />`),e.closeNode(),e.closeNode()}else e.leafNode(`pivotField`,n)}parseOpen(e){let{name:t,attributes:n}=e;switch(t){case this.tag:this.reset(),this.model={name:n.name,cacheId:parseInt(n.cacheId||`0`,10),uid:n[`xr:uid`],pivotFields:[],rowFields:[],colFields:[],dataFields:[],applyNumberFormats:n.applyNumberFormats,applyBorderFormats:n.applyBorderFormats,applyFontFormats:n.applyFontFormats,applyPatternFormats:n.applyPatternFormats,applyAlignmentFormats:n.applyAlignmentFormats,applyWidthHeightFormats:n.applyWidthHeightFormats,dataCaption:n.dataCaption,updatedVersion:n.updatedVersion,minRefreshableVersion:n.minRefreshableVersion,createdVersion:n.createdVersion,useAutoFormatting:n.useAutoFormatting===`1`,itemPrintTitles:n.itemPrintTitles===`1`,indent:n.indent?parseInt(n.indent,10):0,compact:n.compact===`1`,compactData:n.compactData===`1`,multipleFieldFilters:n.multipleFieldFilters===`1`,isLoaded:!0};break;case`location`:this.model&&(this.model.location={ref:n.ref,firstHeaderRow:n.firstHeaderRow?parseInt(n.firstHeaderRow,10):void 0,firstDataRow:n.firstDataRow?parseInt(n.firstDataRow,10):void 0,firstDataCol:n.firstDataCol?parseInt(n.firstDataCol,10):void 0});break;case`pivotFields`:this.inPivotFields=!0;break;case`pivotField`:this.inPivotFields&&(this.currentPivotField={axis:n.axis,dataField:n.dataField===`1`,items:[],compact:n.compact===`1`,outline:n.outline===`1`,showAll:n.showAll===`1`,defaultSubtotal:n.defaultSubtotal===`1`});break;case`items`:this.currentPivotField&&(this.inItems=!0);break;case`item`:this.inItems&&this.currentPivotField&&n.x!==void 0&&this.currentPivotField.items.push(parseInt(n.x,10));break;case`rowFields`:this.inRowFields=!0;break;case`colFields`:this.inColFields=!0;break;case`dataFields`:this.inDataFields=!0;break;case`rowItems`:this.inRowItems=!0;break;case`colItems`:this.inColItems=!0;break;case`field`:if(this.model){let e=parseInt(n.x||`0`,10);this.inRowFields?this.model.rowFields.push(e):this.inColFields&&this.model.colFields.push(e)}break;case`dataField`:this.inDataFields&&this.model&&this.model.dataFields.push({name:Oe(n.name||``),fld:parseInt(n.fld||`0`,10),baseField:n.baseField?parseInt(n.baseField,10):0,baseItem:n.baseItem?parseInt(n.baseItem,10):0,subtotal:n.subtotal});break;case`pivotTableStyleInfo`:this.model&&(this.model.styleName=n.name);break}return!0}parseText(e){}parseClose(e){switch(e){case this.tag:return!1;case`pivotFields`:this.inPivotFields=!1;break;case`pivotField`:this.currentPivotField&&this.model&&(this.model.pivotFields.push(this.currentPivotField),this.currentPivotField=null);break;case`items`:this.inItems=!1;break;case`rowFields`:this.inRowFields=!1;break;case`colFields`:this.inColFields=!1;break;case`dataFields`:this.inDataFields=!1;break;case`rowItems`:this.inRowItems=!1;break;case`colItems`:this.inColItems=!1;break}return!0}reconcile(e,t){}static{this.PIVOT_TABLE_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`}}};function Ra(e,t){if(e.length===0)return{count:1,xml:`<i t="grand"><x /></i>`};let n=(t[e[0]]?.sharedItems||[]).length,r=[];for(let e=0;e<n;e++)e===0?r.push(`<i><x /></i>`):r.push(`<i><x v="${e}" /></i>`);return r.push(`<i t="grand"><x /></i>`),{count:r.length,xml:r.join(`
|
|
108
|
+
`)}}function za(e,t,n){if(e.length===0){if(n>1){let e=[];for(let t=0;t<n;t++)t===0?e.push(`<i><x /></i>`):e.push(`<i><x v="${t}" /></i>`);return e.push(`<i t="grand"><x /></i>`),{count:e.length,xml:e.join(`
|
|
109
109
|
`)}}return{count:1,xml:`<i t="grand"><x /></i>`}}let r=(t[e[0]]?.sharedItems||[]).length,i=[];for(let e=0;e<r;e++)e===0?i.push(`<i><x /></i>`):i.push(`<i><x v="${e}" /></i>`);return i.push(`<i t="grand"><x /></i>`),{count:i.length,xml:i.join(`
|
|
110
|
-
`)}}function
|
|
111
|
-
name="${r} of ${
|
|
110
|
+
`)}}function Ba(e,t,n){let r=n===`count`?`Count`:`Sum`,i=n===`count`?` subtotal="count"`:``;return t.map(t=>`<dataField
|
|
111
|
+
name="${r} of ${Ae(e[t].name)}"
|
|
112
112
|
fld="${t}"
|
|
113
113
|
baseField="0"
|
|
114
114
|
baseItem="0"${i}
|
|
115
|
-
/>`).join(``)}function
|
|
115
|
+
/>`).join(``)}function Va(e){let t=new Set(e.rows),n=new Set(e.columns),r=new Set(e.values);return e.cacheFields.map((e,i)=>Ha(t.has(i),n.has(i),r.has(i),e.sharedItems)).join(``)}function Ha(e,t,n,r){if(e||t){let t=e?`axisRow`:`axisCol`,i=`compact="0" outline="0" showAll="0"`;n&&(i=`dataField="1" ${i}`);let a=[...r.map((e,t)=>`<item x="${t}" />`),`<item t="default" />`].join(`
|
|
116
116
|
`);return`
|
|
117
117
|
<pivotField axis="${t}" ${i}>
|
|
118
118
|
<items count="${r.length+1}">
|
|
@@ -124,25 +124,97 @@ var ExcelTS=(function(e){let t=/^[A-Z]+\d+$/,n={_dictionary:`ABCDEFGHIJKLMNOPQRS
|
|
|
124
124
|
${n?`dataField="1"`:``}
|
|
125
125
|
compact="0" outline="0" showAll="0" defaultSubtotal="0"
|
|
126
126
|
/>
|
|
127
|
-
`}var Fa=class extends L{constructor(e){super(),this.model=e||{type:`note`,note:{texts:[]},ref:``}}get tag(){return`r`}get richTextXform(){return this._richTextXform||=new sn,this._richTextXform}render(e,t){let n=t||this.model;e.openNode(`comment`,{ref:n.ref,authorId:0}),e.openNode(`text`),n&&n.note&&n.note.texts&&n.note.texts.forEach(t=>{this.richTextXform.render(e,t)}),e.closeNode(),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`comment`:return this.model={type:`note`,note:{texts:[]},...e.attributes},!0;case`r`:return this.parser=this.richTextXform,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){switch(e){case`comment`:return!1;case`r`:return this.model.note.texts.push(this.parser.model),this.parser=void 0,!0;default:return this.parser&&this.parser.parseClose(e),!0}}},Ia=class e extends L{constructor(){super(),this.map={comment:new Fa},this.model={comments:[]}}render(t,n){let r=n||this.model;t.openXml(F.StdDocAttributes),t.openNode(`comments`,e.COMMENTS_ATTRIBUTES),t.openNode(`authors`),t.leafNode(`author`,null,`Author`),t.closeNode(),t.openNode(`commentList`),r.comments.forEach(e=>{this.map.comment.render(t,e)}),t.closeNode(),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`commentList`:return this.model={comments:[]},!0;case`comment`:return this.parser=this.map.comment,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){switch(e){case`commentList`:return!1;case`comment`:return this.model.comments.push(this.parser.model),this.parser=void 0,!0;default:return this.parser&&this.parser.parseClose(e),!0}}static{this.COMMENTS_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`}}},La=class extends L{constructor(){super(),this.model={}}get tag(){return`v:textbox`}conversionUnit(e,t,n){return`${(parseFloat(e.toString())*t).toFixed(2)}${n}`}reverseConversionUnit(e){return(e||``).split(`,`).map(e=>Number(parseFloat(this.conversionUnit(parseFloat(e),.1,``)).toFixed(2)))}render(e,t){let n={style:`mso-direction-alt:auto`};if(t&&t.note){let{inset:e}=t.note&&t.note.margins||{};Array.isArray(e)&&(e=e.map(e=>this.conversionUnit(e,10,`mm`)).join(`,`)),e&&(n.inset=e)}e.openNode(`v:textbox`,n),e.leafNode(`div`,{style:`text-align:left`}),e.closeNode()}parseOpen(e){switch(e.name){case this.tag:return this.model={inset:this.reverseConversionUnit(e.attributes.inset)},!0;default:return!0}}parseText(){}parseClose(e){switch(e){case this.tag:return!1;default:return!0}}},Ra=class extends L{constructor(){super(),this.text=``}get tag(){return`x:Anchor`}getAnchorRect(e){let t=Math.floor(e.left),n=Math.floor((e.left-t)*68),r=Math.floor(e.top),i=Math.floor((e.top-r)*18),a=Math.floor(e.right),o=Math.floor((e.right-a)*68),s=Math.floor(e.bottom);return[t,n,r,i,a,o,s,Math.floor((e.bottom-s)*18)]}getDefaultRect(e){let t=e.col,n=Math.max(e.row-2,0);return[t,6,n,14,t+2,2,n+4,16]}render(e,t){let n=t.anchor?this.getAnchorRect(t.anchor):this.getDefaultRect(t.refAddress);e.leafNode(`x:Anchor`,null,n.join(`, `))}parseOpen(e){switch(e.name){case this.tag:return this.text=``,!0;default:return!1}}parseText(e){this.text=e}parseClose(){return!1}},za=class extends L{constructor(e){super(),this._model=e||{},this.text=``}get tag(){return this._model&&this._model.tag||``}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(e){switch(e.name){case this.tag:return this.text=``,!0;default:return!1}}parseText(e){this.text=e}parseClose(){return!1}},Ba=class extends L{constructor(e){super(),this._model=e||{},this.model={}}get tag(){return this._model&&this._model.tag||``}render(e,t,n){(n&&t===n[2]||n&&this.tag===`x:SizeWithCells`&&t===n[1])&&e.leafNode(this.tag)}parseOpen(e){switch(e.name){case this.tag:return this.model={},this.model[this.tag]=!0,!0;default:return!1}}parseText(){}parseClose(){return!1}};let Va=[`twoCells`,`oneCells`,`absolute`];var Ha=class extends L{constructor(){super(),this.map={"x:Anchor":new Ra,"x:Locked":new za({tag:`x:Locked`}),"x:LockText":new za({tag:`x:LockText`}),"x:SizeWithCells":new Ba({tag:`x:SizeWithCells`}),"x:MoveWithCells":new Ba({tag:`x:MoveWithCells`})},this.model={anchor:[],protection:{},editAs:``}}get tag(){return`x:ClientData`}render(e,t){let{protection:n,editAs:r}=t.note;e.openNode(this.tag,{ObjectType:`Note`}),this.map[`x:MoveWithCells`].render(e,r,Va),this.map[`x:SizeWithCells`].render(e,r,Va),this.map[`x:Anchor`].render(e,t),this.map[`x:Locked`].render(e,n.locked),e.leafNode(`x:AutoFill`,null,`False`),this.map[`x:LockText`].render(e,n.lockText),e.leafNode(`x:Row`,null,t.refAddress.row-1),e.leafNode(`x:Column`,null,t.refAddress.col-1),e.closeNode()}parseOpen(e){switch(e.name){case this.tag:this.reset(),this.model={anchor:[],protection:{},editAs:``};break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.normalizeModel(),!1;default:return!0}}normalizeModel(){let e=Object.assign({},this.map[`x:MoveWithCells`].model,this.map[`x:SizeWithCells`].model),t=Object.keys(e).length;this.model.editAs=Va[t],this.model.anchor=this.map[`x:Anchor`].text,this.model.protection.locked=this.map[`x:Locked`].text,this.model.protection.lockText=this.map[`x:LockText`].text}},Ua=class e extends L{constructor(){super(),this.map={"v:textbox":new La,"x:ClientData":new Ha}}get tag(){return`v:shape`}render(t,n,r){t.openNode(`v:shape`,e.V_SHAPE_ATTRIBUTES(n,r||0)),t.leafNode(`v:fill`,{color2:`infoBackground [80]`}),t.leafNode(`v:shadow`,{color:`none [81]`,obscured:`t`}),t.leafNode(`v:path`,{"o:connecttype":`none`}),this.map[`v:textbox`].render(t,n),this.map[`x:ClientData`].render(t,n),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset(),this.model={margins:{insetmode:e.attributes[`o:insetmode`]},anchor:``,editAs:``,protection:{}};break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model.margins.inset=this.map[`v:textbox`].model&&this.map[`v:textbox`].model.inset,this.model.protection=this.map[`x:ClientData`].model&&this.map[`x:ClientData`].model.protection,this.model.anchor=this.map[`x:ClientData`].model&&this.map[`x:ClientData`].model.anchor,this.model.editAs=this.map[`x:ClientData`].model&&this.map[`x:ClientData`].model.editAs,!1;default:return!0}}static{this.V_SHAPE_ATTRIBUTES=(e,t)=>({id:`_x0000_s${1025+t}`,type:`#_x0000_t202`,style:`position:absolute; margin-left:105.3pt;margin-top:10.5pt;width:97.8pt;height:59.1pt;z-index:1;visibility:hidden`,fillcolor:`infoBackground [80]`,strokecolor:`none [81]`,"o:insetmode":e.note.margins&&e.note.margins.insetmode})}},Wa=class e extends L{constructor(){super(),this.map={"v:shape":new Ua},this.model={comments:[],formControls:[]}}get tag(){return`xml`}render(t,n){let r=n||this.model,i=r.comments&&r.comments.length>0,a=r.formControls&&r.formControls.length>0;if(t.openXml(F.StdDocAttributes),t.openNode(this.tag,e.DRAWING_ATTRIBUTES),t.openNode(`o:shapelayout`,{"v:ext":`edit`}),t.leafNode(`o:idmap`,{"v:ext":`edit`,data:1}),t.closeNode(),i&&(t.openNode(`v:shapetype`,{id:`_x0000_t202`,coordsize:`21600,21600`,"o:spt":202,path:`m,l,21600r21600,l21600,xe`}),t.leafNode(`v:stroke`,{joinstyle:`miter`}),t.leafNode(`v:path`,{gradientshapeok:`t`,"o:connecttype":`rect`}),t.closeNode()),a&&(t.openNode(`v:shapetype`,{id:`_x0000_t201`,coordsize:`21600,21600`,"o:spt":`201`,path:`m,l,21600r21600,l21600,xe`}),t.leafNode(`v:stroke`,{joinstyle:`miter`}),t.leafNode(`v:path`,{shadowok:`f`,"o:extrusionok":`f`,strokeok:`f`,fillok:`f`,"o:connecttype":`rect`}),t.leafNode(`o:lock`,{"v:ext":`edit`,shapetype:`t`}),t.closeNode()),i){let e=r.comments;for(let n=0;n<e.length;n++)this.map[`v:shape`].render(t,e[n],n)}if(a)for(let e of r.formControls)this._renderCheckboxShape(t,e);t.closeNode()}_renderCheckboxShape(e,t){let n={id:`_x0000_s${t.shapeId}`,type:`#_x0000_t201`,style:xe.getVmlStyle(t),"o:insetmode":`auto`,fillcolor:`buttonFace [67]`,strokecolor:`windowText [64]`,"o:preferrelative":`t`,filled:`f`,stroked:`f`};e.openNode(`v:shape`,n),e.leafNode(`v:fill`,{"o:detectmouseclick":`t`}),e.leafNode(`o:lock`,{"v:ext":`edit`,text:`t`}),t.text&&(e.openNode(`v:textbox`,{style:`mso-direction-alt:auto`,"o:singleclick":`t`}),e.openNode(`div`,{style:`text-align:left`}),e.openNode(`font`,{face:`Tahoma`,size:`160`,color:`auto`}),e.writeText(t.text),e.closeNode(),e.closeNode(),e.closeNode()),e.openNode(`x:ClientData`,{ObjectType:`Checkbox`}),e.openNode(`x:Anchor`),e.writeText(xe.getVmlAnchor(t)),e.closeNode(),e.leafNode(`x:PrintObject`,void 0,t.print?`True`:`False`),e.leafNode(`x:AutoFill`,void 0,`False`),e.leafNode(`x:AutoLine`,void 0,`False`),e.leafNode(`x:TextVAlign`,void 0,`Center`),t.link&&e.leafNode(`x:FmlaLink`,void 0,t.link),t.noThreeD&&e.leafNode(`x:NoThreeD`),e.leafNode(`x:Checked`,void 0,String(xe.getVmlCheckedValue(t))),e.closeNode(),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset(),this.model={comments:[],formControls:[]};break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.comments.push(this.parser.model),this.parser=void 0),!0;switch(e){case this.tag:return!1;default:return!0}}static{this.DRAWING_ATTRIBUTES={"xmlns:v":`urn:schemas-microsoft-com:vml`,"xmlns:o":`urn:schemas-microsoft-com:office:office`,"xmlns:x":`urn:schemas-microsoft-com:office:excel`}}},Ga=class extends L{get tag(){return`formControlPr`}render(e,t){let n=t||this.model,r={xmlns:`http://schemas.microsoft.com/office/spreadsheetml/2009/9/main`,objectType:`CheckBox`,checked:n.checked,lockText:`1`};n.link&&(r.fmlaLink=n.link),n.noThreeD&&(r.noThreeD=`1`),e.openXml({version:`1.0`,encoding:`UTF-8`,standalone:`yes`}),e.leafNode(this.tag,r)}toXml(e){let t=new F;return this.render(t,e),t.xml}parseOpen(){return!0}parseText(){}parseClose(){return!1}};let Ka=`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
128
|
-
<a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office Theme"> <a:themeElements> <a:clrScheme name="Office"> <a:dk1> <a:sysClr val="windowText" lastClr="000000"/> </a:dk1> <a:lt1> <a:sysClr val="window" lastClr="FFFFFF"/> </a:lt1> <a:dk2> <a:srgbClr val="1F497D"/> </a:dk2> <a:lt2> <a:srgbClr val="EEECE1"/> </a:lt2> <a:accent1> <a:srgbClr val="4F81BD"/> </a:accent1> <a:accent2> <a:srgbClr val="C0504D"/> </a:accent2> <a:accent3> <a:srgbClr val="9BBB59"/> </a:accent3> <a:accent4> <a:srgbClr val="8064A2"/> </a:accent4> <a:accent5> <a:srgbClr val="4BACC6"/> </a:accent5> <a:accent6> <a:srgbClr val="F79646"/> </a:accent6> <a:hlink> <a:srgbClr val="0000FF"/> </a:hlink> <a:folHlink> <a:srgbClr val="800080"/> </a:folHlink> </a:clrScheme> <a:fontScheme name="Office"> <a:majorFont> <a:latin typeface="Cambria"/> <a:ea typeface=""/> <a:cs typeface=""/> <a:font script="Jpan" typeface="MS Pゴシック"/> <a:font script="Hang" typeface="맑은 고딕"/> <a:font script="Hans" typeface="宋体"/> <a:font script="Hant" typeface="新細明體"/> <a:font script="Arab" typeface="Times New Roman"/> <a:font script="Hebr" typeface="Times New Roman"/> <a:font script="Thai" typeface="Tahoma"/> <a:font script="Ethi" typeface="Nyala"/> <a:font script="Beng" typeface="Vrinda"/> <a:font script="Gujr" typeface="Shruti"/> <a:font script="Khmr" typeface="MoolBoran"/> <a:font script="Knda" typeface="Tunga"/> <a:font script="Guru" typeface="Raavi"/> <a:font script="Cans" typeface="Euphemia"/> <a:font script="Cher" typeface="Plantagenet Cherokee"/> <a:font script="Yiii" typeface="Microsoft Yi Baiti"/> <a:font script="Tibt" typeface="Microsoft Himalaya"/> <a:font script="Thaa" typeface="MV Boli"/> <a:font script="Deva" typeface="Mangal"/> <a:font script="Telu" typeface="Gautami"/> <a:font script="Taml" typeface="Latha"/> <a:font script="Syrc" typeface="Estrangelo Edessa"/> <a:font script="Orya" typeface="Kalinga"/> <a:font script="Mlym" typeface="Kartika"/> <a:font script="Laoo" typeface="DokChampa"/> <a:font script="Sinh" typeface="Iskoola Pota"/> <a:font script="Mong" typeface="Mongolian Baiti"/> <a:font script="Viet" typeface="Times New Roman"/> <a:font script="Uigh" typeface="Microsoft Uighur"/> <a:font script="Geor" typeface="Sylfaen"/> </a:majorFont> <a:minorFont> <a:latin typeface="Calibri"/> <a:ea typeface=""/> <a:cs typeface=""/> <a:font script="Jpan" typeface="MS Pゴシック"/> <a:font script="Hang" typeface="맑은 고딕"/> <a:font script="Hans" typeface="宋体"/> <a:font script="Hant" typeface="新細明體"/> <a:font script="Arab" typeface="Arial"/> <a:font script="Hebr" typeface="Arial"/> <a:font script="Thai" typeface="Tahoma"/> <a:font script="Ethi" typeface="Nyala"/> <a:font script="Beng" typeface="Vrinda"/> <a:font script="Gujr" typeface="Shruti"/> <a:font script="Khmr" typeface="DaunPenh"/> <a:font script="Knda" typeface="Tunga"/> <a:font script="Guru" typeface="Raavi"/> <a:font script="Cans" typeface="Euphemia"/> <a:font script="Cher" typeface="Plantagenet Cherokee"/> <a:font script="Yiii" typeface="Microsoft Yi Baiti"/> <a:font script="Tibt" typeface="Microsoft Himalaya"/> <a:font script="Thaa" typeface="MV Boli"/> <a:font script="Deva" typeface="Mangal"/> <a:font script="Telu" typeface="Gautami"/> <a:font script="Taml" typeface="Latha"/> <a:font script="Syrc" typeface="Estrangelo Edessa"/> <a:font script="Orya" typeface="Kalinga"/> <a:font script="Mlym" typeface="Kartika"/> <a:font script="Laoo" typeface="DokChampa"/> <a:font script="Sinh" typeface="Iskoola Pota"/> <a:font script="Mong" typeface="Mongolian Baiti"/> <a:font script="Viet" typeface="Arial"/> <a:font script="Uigh" typeface="Microsoft Uighur"/> <a:font script="Geor" typeface="Sylfaen"/> </a:minorFont> </a:fontScheme> <a:fmtScheme name="Office"> <a:fillStyleLst> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="50000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="35000"> <a:schemeClr val="phClr"> <a:tint val="37000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:tint val="15000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:lin ang="16200000" scaled="1"/> </a:gradFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="100000"/> <a:shade val="100000"/> <a:satMod val="130000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:tint val="50000"/> <a:shade val="100000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:lin ang="16200000" scaled="0"/> </a:gradFill> </a:fillStyleLst> <a:lnStyleLst> <a:ln w="9525" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"> <a:shade val="95000"/> <a:satMod val="105000"/> </a:schemeClr> </a:solidFill> <a:prstDash val="solid"/> </a:ln> <a:ln w="25400" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:prstDash val="solid"/> </a:ln> <a:ln w="38100" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:prstDash val="solid"/> </a:ln> </a:lnStyleLst> <a:effectStyleLst> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="20000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="38000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> </a:effectStyle> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="35000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> </a:effectStyle> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="35000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> <a:scene3d> <a:camera prst="orthographicFront"> <a:rot lat="0" lon="0" rev="0"/> </a:camera> <a:lightRig rig="threePt" dir="t"> <a:rot lat="0" lon="0" rev="1200000"/> </a:lightRig> </a:scene3d> <a:sp3d> <a:bevelT w="63500" h="25400"/> </a:sp3d> </a:effectStyle> </a:effectStyleLst> <a:bgFillStyleLst> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="40000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> <a:gs pos="40000"> <a:schemeClr val="phClr"> <a:tint val="45000"/> <a:shade val="99000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:shade val="20000"/> <a:satMod val="255000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:path path="circle"> <a:fillToRect l="50000" t="-80000" r="50000" b="180000"/> </a:path> </a:gradFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="80000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:shade val="30000"/> <a:satMod val="200000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:path path="circle"> <a:fillToRect l="50000" t="50000" r="50000" b="50000"/> </a:path> </a:gradFill> </a:bgFillStyleLst> </a:fmtScheme> </a:themeElements> <a:objectDefaults> <a:spDef> <a:spPr/> <a:bodyPr/> <a:lstStyle/> <a:style> <a:lnRef idx="1"> <a:schemeClr val="accent1"/> </a:lnRef> <a:fillRef idx="3"> <a:schemeClr val="accent1"/> </a:fillRef> <a:effectRef idx="2"> <a:schemeClr val="accent1"/> </a:effectRef> <a:fontRef idx="minor"> <a:schemeClr val="lt1"/> </a:fontRef> </a:style> </a:spDef> <a:lnDef> <a:spPr/> <a:bodyPr/> <a:lstStyle/> <a:style> <a:lnRef idx="2"> <a:schemeClr val="accent1"/> </a:lnRef> <a:fillRef idx="0"> <a:schemeClr val="accent1"/> </a:fillRef> <a:effectRef idx="1"> <a:schemeClr val="accent1"/> </a:effectRef> <a:fontRef idx="minor"> <a:schemeClr val="tx1"/> </a:fontRef> </a:style> </a:lnDef> </a:objectDefaults> <a:extraClrSchemeLst/> </a:theme>`,qa=new TextEncoder;var Ja=class{constructor(e){this._buf=new Uint8Array(e&&e.size||16384),this._inPos=0,this._buffer=void 0}get length(){return this._inPos}get capacity(){return this._buf.length}get buffer(){return this._buf}toBuffer(){return this._buffer||=this._buf.slice(0,this._inPos),this._buffer}reset(e){e||=0,this._buffer=void 0,this._inPos=e}_grow(e){let t=this._buf.length*2;for(;t<e;)t*=2;let n=new Uint8Array(t);n.set(this._buf),this._buf=n}addText(e){this._buffer=void 0;let t=qa.encode(e),n=this._inPos+t.length;n>this._buf.length-4&&this._grow(n),this._buf.set(t,this._inPos),this._inPos+=t.length}addStringBuf(e){e.length&&(this._buffer=void 0,this.length+e.length>this.capacity&&this._grow(this.length+e.length),this._buf.set(e._buf.subarray(0,e.length),this._inPos),this._inPos+=e.length)}},Ya=class{constructor(e){this._data=e}get length(){return this.toBuffer().length}copy(e,t,n,r){let i=this.toBuffer(),a=Math.min(r,i.length-n);return e.set(i.subarray(n,n+a),t),a}toBuffer(){return this._buffer||=new TextEncoder().encode(this._data),this._buffer}},Xa=class{constructor(e){this._data=e}get length(){return this._data.length}copy(e,t,n,r){let i=this.toBuffer(),a=Math.min(r,i.length-n);return e.set(i.subarray(n,n+a),t),a}toBuffer(){return this._data.toBuffer()}},Za=class{constructor(e){this._data=e}get length(){return this._data.length}copy(e,t,n,r){let i=Math.min(r,this._data.length-n);return e.set(this._data.subarray(n,n+i),t),i}toBuffer(){return this._data}},Qa=class{constructor(e){this.size=e,this.buffer=new Uint8Array(e),this.iRead=0,this.iWrite=0}toBuffer(){return this.iRead===0&&this.iWrite===this.size?this.buffer:this.buffer.slice(this.iRead,this.iWrite)}get length(){return this.iWrite-this.iRead}get eod(){return this.iRead===this.iWrite}get full(){return this.iWrite===this.size}read(e){if(e===0)return null;if(e===void 0||e>=this.length){let e=this.toBuffer();return this.iRead=this.iWrite,e}let t=this.buffer.slice(this.iRead,this.iRead+e);return this.iRead+=e,t}write(e,t,n){let r=Math.min(n,this.size-this.iWrite);return e.copy(this.buffer,this.iWrite,t,t+r),this.iWrite+=r,r}},$a=class extends j{constructor(e){super(),this._writableStream=null,this._writableStreamWriter=null,this._asyncWriteQueue=Promise.resolve(),this.bufSize=e?.bufSize||1024*1024,this.buffers=[],this.batch=e?.batch||!1,this.corked=!1,this.paused=!1,this.encoding=null,this.pipes=[],this._ended=!1}get writable(){return!this._ended}toBuffer(){switch(this.buffers.length){case 0:return null;case 1:return this.buffers[0].toBuffer();default:{let e=this.buffers.reduce((e,t)=>e+t.length,0),t=new Uint8Array(e),n=0;for(let e of this.buffers){let r=e.toBuffer();t.set(r,n),n+=r.length}return t}}}_getWritableBuffer(){if(this.buffers.length){let e=this.buffers[this.buffers.length-1];if(!e.full)return e}let e=new Qa(this.bufSize);return this.buffers.push(e),e}async _pipeChunk(e){let t=this.pipes.map(t=>new Promise(n=>{t.write(e.toBuffer(),()=>n())}));await Promise.all(t)}_writeToBuffers(e){let t=0,n=e.length;for(;t<n;){let r=this._getWritableBuffer();t+=r.write(e,t,n-t)}}async write(e,t,n){typeof t==`function`&&(n=t),n||=()=>{};let r;if(e instanceof Ja||e&&e.constructor?.name===`StringBuf`)r=new Xa(e);else if(e instanceof Uint8Array)r=new Za(e);else if(ArrayBuffer.isView(e))r=new Za(new Uint8Array(e.buffer,e.byteOffset,e.byteLength));else if(e instanceof ArrayBuffer)r=new Za(new Uint8Array(e));else if(typeof e==`string`)r=new Ya(e);else throw Error(`Chunk must be one of type String, Uint8Array, ArrayBuffer or StringBuf.`);if(this.pipes.length)if(this.batch)for(this._writeToBuffers(r);!this.corked&&this.buffers.length>1;){let e=this.buffers.shift();await this._pipeChunk(new Za(e.toBuffer()))}else this.corked?(this._writeToBuffers(r),queueMicrotask(()=>n())):(await this._pipeChunk(r),n());else{let e=r.toBuffer();this.paused||this.emit(`data`,e),this._writableStreamWriter&&(this._asyncWriteQueue=this._asyncWriteQueue.then(()=>this._writableStreamWriter.write(e))),this._writeToBuffers(r),this.emit(`readable`)}return!0}cork(){this.corked=!0}_flush(){this.pipes.length&&(async()=>{for(;this.buffers.length;){let e=this.buffers.shift();await this._pipeChunk(new Za(e.toBuffer()))}})().catch(e=>this.emit(`error`,e))}uncork(){this.corked=!1,this._flush()}end(e,t,n){let r=e=>{if(e){n?.(e);return}this._ended=!0,this._flush(),this.pipes.forEach(e=>{typeof e.end==`function`&&e.end()}),this._writableStreamWriter?this._asyncWriteQueue.then(()=>this._writableStreamWriter.close()).then(()=>{this.emit(`finish`)}).catch(e=>{this.emit(`error`,e)}):this.emit(`finish`)};e?this.write(e,t,r):r()}read(e){if(e){let t=[],n=e;for(;n&&this.buffers.length&&!this.buffers[0].eod;){let e=this.buffers[0],r=e.read(n);r&&(n-=r.length,t.push(r)),e.eod&&e.full&&this.buffers.shift()}return eo(t)}let t=this.buffers.map(e=>e.toBuffer()).filter(Boolean);return this.buffers=[],eo(t)}readString(e){let t=e||this.encoding||`utf-8`,n=this.read();return typeof Buffer<`u`&&n instanceof Buffer?n.toString(t):new TextDecoder(t).decode(n)}setEncoding(e){this.encoding=e}pause(){this.paused=!0}resume(){this.paused=!1}isPaused(){return this.paused}pipe(e){return this.pipes.push(e),!this.paused&&this.buffers.length&&this.end(),e}pipeTo(e){this._writableStream=e,this._writableStreamWriter=e.getWriter()}unpipe(e){this.pipes=this.pipes.filter(t=>t!==e)}unshift(){throw Error(`Not Implemented`)}wrap(){throw Error(`Not Implemented`)}push(e){return e!==null&&this.write(e),!0}};function eo(e){if(typeof Buffer<`u`&&typeof Buffer.concat==`function`)return Buffer.concat(e);if(e.length===0)return new Uint8Array;if(e.length===1)return e[0];let t=e.reduce((e,t)=>e+t.length,0),n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}let to=null;function no(){if(to)return to;let e=new Uint32Array(256);for(let t=0;t<256;t++){let n=t;for(let e=0;e<8;e++)n=n&1?3988292384^n>>>1:n>>>1;e[t]=n}return to=e,e}function ro(e,t){let n=no();for(let r=0;r<t.length;r++)e=n[(e^t[r])&255]^e>>>8;return e}function io(e){return(e^4294967295)>>>0}function ao(e){let t=0;for(let n=0;n<e.length;n++)t+=e[n].length;return t}function oo(e){let t=e.length;if(t===0)return new Uint8Array;if(t===1)return e[0];let n=ao(e),r=new Uint8Array(n),i=0;for(let n=0;n<t;n++){let t=e[n];r.set(t,i),i+=t.length}return r}function so(e,t,n=0){let r=e.length,i=t.length;if(i===0)return 0;if(i>r)return-1;let a=n|0;if(a<0&&(a=0),a>r-i)return-1;if(i===1){let n=t[0];for(let t=a;t<r;t++)if(e[t]===n)return t;return-1}if(i===2){let n=t[0],i=t[1];for(let t=a;t<=r-2;t++)if(e[t]===n&&e[t+1]===i)return t;return-1}if(i===3){let n=t[0],i=t[1],o=t[2];for(let t=a;t<=r-3;t++)if(e[t]===n&&e[t+1]===i&&e[t+2]===o)return t;return-1}if(i===4){let n=t[0],i=t[1],o=t[2],s=t[3];for(let t=a;t<=r-4;t++)if(e[t]===n&&e[t+1]===i&&e[t+2]===o&&e[t+3]===s)return t;return-1}outer:for(let n=a;n<=r-i;n++){for(let r=0;r<i;r++)if(e[n+r]!==t[r])continue outer;return n}return-1}let co=new Uint8Array(288);for(let e=0;e<=143;e++)co[e]=8;for(let e=144;e<=255;e++)co[e]=9;for(let e=256;e<=279;e++)co[e]=7;for(let e=280;e<=287;e++)co[e]=8;let lo=new Uint8Array(32).fill(5),uo=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258],fo=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],po=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],mo=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],ho=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function go(e,t){let n=new Uint16Array(16);for(let r=0;r<t;r++)e[r]>0&&n[e[r]]++;let r=new Uint16Array(16),i=0;for(let e=1;e<=15;e++)i=i+n[e-1]<<1,r[e]=i;let a={};for(let n=0;n<t;n++){let t=e[n];if(t===0)continue;i=r[t]++;let o=a;for(let e=t-1;e>=0;e--)i>>e&1?(o.right||={},o=o.right):(o.left||={},o=o.left);o.symbol=n}return a}var _o=class{constructor(e){this.data=e,this.pos=0,this.bitBuf=0,this.bitCount=0}readBits(e){for(;this.bitCount<e;){if(this.pos>=this.data.length)throw Error(`Unexpected end of DEFLATE data`);this.bitBuf|=this.data[this.pos++]<<this.bitCount,this.bitCount+=8}let t=this.bitBuf&(1<<e)-1;return this.bitBuf>>=e,this.bitCount-=e,t}decodeSymbol(e){let t=e;for(;t.symbol===void 0;)if(t=this.readBits(1)===0?t.left:t.right,!t)throw Error(`Invalid Huffman code`);return t.symbol}alignToByte(){this.bitBuf=0,this.bitCount=0}readByte(){if(this.pos>=this.data.length)throw Error(`Unexpected end of data`);return this.data[this.pos++]}readUint16(){return this.readByte()|this.readByte()<<8}};function vo(e){let t=new _o(e),n=[],r=!1;for(;!r;){r=t.readBits(1)===1;let e=t.readBits(2);if(e===0){t.alignToByte();let e=t.readUint16();if((e^t.readUint16())!==65535)throw Error(`Invalid stored block length`);for(let r=0;r<e;r++)n.push(t.readByte())}else if(e===1||e===2){let r,i;if(e===1)r=go(co,288),i=go(lo,32);else{let e=t.readBits(5)+257,n=t.readBits(5)+1,a=t.readBits(4)+4,o=new Uint8Array(19);for(let e=0;e<a;e++)o[ho[e]]=t.readBits(3);let s=go(o,19),c=new Uint8Array(e+n),l=0;for(;l<e+n;){let e=t.decodeSymbol(s);if(e<16)c[l++]=e;else if(e===16){let e=t.readBits(2)+3,n=c[l-1];for(let t=0;t<e;t++)c[l++]=n}else if(e===17){let e=t.readBits(3)+3;for(let t=0;t<e;t++)c[l++]=0}else if(e===18){let e=t.readBits(7)+11;for(let t=0;t<e;t++)c[l++]=0}}r=go(c.subarray(0,e),e),i=go(c.subarray(e),n)}for(;;){let e=t.decodeSymbol(r);if(e<256)n.push(e);else if(e===256)break;else{let r=e-257,a=uo[r]+t.readBits(fo[r]),o=t.decodeSymbol(i),s=po[o]+t.readBits(mo[o]),c=n.length-s;for(let e=0;e<a;e++)n.push(n[c+e])}}}else throw Error(`Invalid DEFLATE block type: `+e)}return new Uint8Array(n)}function yo(e){let t=65535,n=Math.ceil(e.length/t)||1,r=n*5+e.length,i=new Uint8Array(r),a=0,o=0;for(let r=0;r<n;r++){let s=r===n-1,c=Math.min(t,e.length-o);i[a++]=s?1:0,i[a++]=c&255,i[a++]=c>>8&255,i[a++]=~c&255,i[a++]=~c>>8&255,i.set(e.subarray(o,o+c),a),a+=c,o+=c}return i.subarray(0,a)}function bo(e){if(e.length===0)return new Uint8Array([3,0]);if(e.length<100)return yo(e);let t=new xo;t.writeBits(1,1),t.writeBits(1,2);let n=new Map,r=0;for(;r<e.length;){let i=0,a=0;if(r+2<e.length){let t=e[r]<<16|e[r+1]<<8|e[r+2],o=n.get(t);if(o!==void 0&&r-o<=32768){let t=r-o,n=0,s=Math.min(258,e.length-r);for(;n<s&&e[o+n]===e[r+n];)n++;n>=3&&(i=n,a=t)}n.set(t,r)}i>=3?(To(t,i),Eo(t,a),r+=i):(wo(t,e[r]),r++)}return wo(t,256),t.finish()}var xo=class{constructor(){this.chunks=[],this.buffer=[],this.bitBuf=0,this.bitCount=0}writeBits(e,t){for(this.bitBuf|=e<<this.bitCount,this.bitCount+=t;this.bitCount>=8;)this.buffer.push(this.bitBuf&255),this.bitBuf>>=8,this.bitCount-=8,this.buffer.length>=65536&&(this.chunks.push(new Uint8Array(this.buffer)),this.buffer=[])}writeBitsReverse(e,t){let n=0;for(let r=0;r<t;r++)n=n<<1|e>>r&1;this.writeBits(n,t)}finish(){return this.bitCount>0&&this.buffer.push(this.bitBuf&255),this.chunks.length===0?new Uint8Array(this.buffer):(this.chunks.push(new Uint8Array(this.buffer)),oo(this.chunks))}};let So=[],Co=[];for(let e=0;e<=287;e++){let t,n;e<=143?(t=48+e,n=8):e<=255?(t=400+(e-144),n=9):e<=279?(t=e-256,n=7):(t=192+(e-280),n=8),So[e]=[t,n],Co[e]=n}function wo(e,t){let[n,r]=So[t];e.writeBitsReverse(n,r)}function To(e,t){let n,r,i;if(t<=10)n=257+t-3,r=0,i=0;else if(t<=18){let e=t-11;n=265+Math.floor(e/2),r=1,i=e%2}else if(t<=34){let e=t-19;n=269+Math.floor(e/4),r=2,i=e%4}else if(t<=66){let e=t-35;n=273+Math.floor(e/8),r=3,i=e%8}else if(t<=130){let e=t-67;n=277+Math.floor(e/16),r=4,i=e%16}else if(t<=257){let e=t-131;n=281+Math.floor(e/32),r=5,i=e%32}else n=285,r=0,i=0;wo(e,n),r>0&&e.writeBits(i,r)}function Eo(e,t){let n=[[1,0,0],[2,1,0],[3,2,0],[4,3,0],[6,4,1],[8,5,1],[12,6,2],[16,7,2],[24,8,3],[32,9,3],[48,10,4],[64,11,4],[96,12,5],[128,13,5],[192,14,6],[256,15,6],[384,16,7],[512,17,7],[768,18,8],[1024,19,8],[1536,20,9],[2048,21,9],[3072,22,10],[4096,23,10],[6144,24,11],[8192,25,11],[12288,26,12],[16384,27,12],[24576,28,13],[32768,29,13]],r=0,i=0,a=1;for(let[e,o,s]of n){if(t<=e){r=o,i=s;break}a=e+1}let o=t-a;e.writeBitsReverse(r,5),i>0&&e.writeBits(o,i)}var Do=class e{static{this.EMPTY=new Uint8Array}constructor(e){this._start=0,this._end=0,this._cachedView=null,this._cachedBuf=null,this._cachedStart=0,this._cachedEnd=0,this._buf=new Uint8Array,e&&e.length>0&&this.reset(e)}get length(){return this._end-this._start}isEmpty(){return this.length===0}view(){if(this._start===this._end)return e.EMPTY;if(this._cachedView&&this._cachedBuf===this._buf&&this._cachedStart===this._start&&this._cachedEnd===this._end)return this._cachedView;let t=this._buf.subarray(this._start,this._end);return this._cachedView=t,this._cachedBuf=this._buf,this._cachedStart=this._start,this._cachedEnd=this._end,t}reset(t){if(this._cachedView=null,this._cachedBuf=null,!t||t.length===0){this._buf=e.EMPTY,this._start=0,this._end=0;return}let n=new Uint8Array(t.length);n.set(t),this._buf=n,this._start=0,this._end=n.length}append(e){if(e.length===0)return;this._cachedView=null,this._cachedBuf=null;let t=this.length;if(this._end+e.length<=this._buf.length){this._buf.set(e,this._end),this._end+=e.length;return}let n=t+e.length,r=this._buf.length===0?n:Math.max(this._buf.length*2,n),i=new Uint8Array(r);t>0&&i.set(this._buf.subarray(this._start,this._end),0),i.set(e,t),this._buf=i,this._start=0,this._end=n}read(t){if(t<=0)return new Uint8Array;if(t>this.length)throw RangeError(`ByteQueue: read beyond available data`);let n=this._buf.subarray(this._start,this._start+t);return this._start+=t,this._cachedView=null,this._cachedBuf=null,this._start===this._end&&(this._buf=e.EMPTY,this._start=0,this._end=0),n}discard(t){if(!(t<=0)){if(t>=this.length){this._buf=e.EMPTY,this._start=0,this._end=0,this._cachedView=null,this._cachedBuf=null;return}this._start+=t,this._cachedView=null,this._cachedBuf=null,this._start===this._end&&(this._buf=e.EMPTY,this._start=0,this._end=0)}}};function Oo(){try{return typeof CompressionStream>`u`?!1:(new CompressionStream(`deflate-raw`),!0)}catch{return!1}}function ko(){try{return typeof DecompressionStream>`u`?!1:(new DecompressionStream(`deflate-raw`),!0)}catch{return!1}}let Ao=null,jo=null;function Mo(){return typeof CompressionStream>`u`?!1:(Ao===null&&(Ao=Oo()),Ao)}function No(){return typeof DecompressionStream>`u`?!1:(jo===null&&(jo=ko()),jo)}function Po(){return Mo()&&No()}async function Fo(e){let t=new Do;for(;;){let{done:n,value:r}=await e.read();if(n)break;t.append(r)}return t.read(t.length)}async function Io(e,t){let n=t.writable.getWriter(),r=t.readable.getReader();try{let t=Fo(r);return await n.write(e),await n.close(),await t}finally{try{n.releaseLock()}catch{}try{r.releaseLock()}catch{}}}async function Lo(e){return Io(e,new DecompressionStream(`deflate-raw`))}function Ro(e){return e instanceof Error?e:Error(String(e))}function zo(){return Po()}var Bo=class extends j{constructor(e,t){super(),this.ended=!1,this.writer=e,this.reader=t,this.readPromise=this._startReading()}async _startReading(){try{for(;;){let{value:e,done:t}=await this.reader.read();if(t)break;e&&this.emit(`data`,e)}this.emit(`end`)}catch(e){this.emit(`error`,Ro(e))}}write(e,t){if(this.ended){let e=Error(`write after end`);return t?t(e):this.emit(`error`,e),!1}return this.writer.write(e).then(()=>{t&&t()}).catch(e=>{let n=Ro(e);t?t(n):this.emit(`error`,n)}),!0}end(e){if(this.ended){e&&e();return}this.ended=!0,this.writer.close().then(()=>this.readPromise).then(()=>{e&&e()}).catch(t=>{let n=Ro(t);e?e(n):this.emit(`error`,n)})}destroy(e){this.ended=!0,e&&this.emit(`error`,e);try{this.reader.cancel(e)}catch{}try{this.writer.abort(e)}catch{}}},Vo=class extends j{constructor(e){super();let t=new CompressionStream(`deflate-raw`);this.codec=new Bo(t.writable.getWriter(),t.readable.getReader()),this.codec.on(`data`,e=>this.emit(`data`,e)),this.codec.on(`end`,()=>this.emit(`end`)),this.codec.on(`error`,e=>this.emit(`error`,e))}write(e,t){return this.codec.write(e,t)}end(e){this.codec.end(e)}destroy(e){this.codec.destroy(e)}},Ho=class extends j{constructor(e){super(),this.codec=new Uo(bo),this.codec.on(`data`,e=>this.emit(`data`,e)),this.codec.on(`end`,()=>this.emit(`end`)),this.codec.on(`error`,e=>this.emit(`error`,e))}write(e,t){return this.codec.write(e,t)}end(e){this.codec.end(e)}destroy(e){this.codec.destroy(e)}},Uo=class extends j{constructor(e){super(),this.process=e,this.chunks=[],this.ended=!1}write(e,t){if(this.ended){let e=Error(`write after end`);return t?t(e):this.emit(`error`,e),!1}return this.chunks.push(e),t&&queueMicrotask(()=>t()),!0}end(e){if(this.ended){e&&e();return}this.ended=!0;try{let t=oo(this.chunks),n=this.process(t);this.emit(`data`,n),this.emit(`end`),e&&e()}catch(t){let n=Ro(t);this.emit(`error`,n),e&&e(n)}}destroy(e){this.ended=!0,e&&this.emit(`error`,e)}};function Wo(e={}){let t=e.level??6;return zo()?new Vo(t):new Ho(t)}let Go=new TextEncoder,Ko=new TextDecoder(`utf-8`);function qo(e){return Go.encode(e)}function Jo(e){return Ko.decode(e)}function Yo(e){let t=``,n=32768;for(let r=0;r<e.length;r+=n){let i=e.subarray(r,r+n);t+=String.fromCharCode(...i)}return t}let Xo=21589;function Zo(e){return!Number.isFinite(e)||e<=0?0:e>=4294967295?4294967295:e>>>0}function Qo(e){return Zo(Math.floor(e.getTime()/1e3))}function $o(e){let t=Zo(e),n=new Uint8Array(9),r=new DataView(n.buffer);return r.setUint16(0,Xo,!0),r.setUint16(2,5,!0),n[4]=1,r.setUint32(5,t,!0),n}function es(e){return $o(Qo(e))}function ts(e){let t=new DataView(e.buffer,e.byteOffset,e.byteLength),n=0;for(;n+4<=e.length;){let r=t.getUint16(n,!0),i=t.getUint16(n+2,!0),a=n+4,o=a+i;if(o>e.length)break;if(r===Xo&&i>=1&&e[a]&1&&i>=5)return t.getUint32(a+1,!0)>>>0;n=o}}function ns(e){return[(e.getHours()&31)<<11|(e.getMinutes()&63)<<5|e.getSeconds()>>1&31,(e.getFullYear()-1980&127)<<9|(e.getMonth()+1&15)<<5|e.getDate()&31]}function rs(e,t){let n=e&31,r=e>>5&15,i=(e>>9&127)+1980,a=t?(t&31)*2:0,o=t?t>>5&63:0,s=t?t>>11:0;return new Date(Date.UTC(i,r-1,n,s,o,a))}function is(e,t,n){return n===void 0?rs(e,t):new Date(n*1e3)}function as(e,t){return t===`dos+utc`?es(e):new Uint8Array}function os(e){let[t,n]=ns(e);return{dosTime:t,dosDate:n}}let ss=67324752,cs=33639248,ls=101010256,us=134695760,ds=101075792,fs=117853008,ps=2048;function ms(e){return e?8:0}function hs(e){return e?ps|8:ps}function gs(e){let t=qo(e.name),n=qo(e.comment??``),{dosTime:r,dosDate:i}=os(e.modTime);return{nameBytes:t,commentBytes:n,dosTime:r,dosDate:i,extraField:as(e.modTime,e.timestamps),compressionMethod:ms(e.deflate),flags:hs(e.useDataDescriptor)}}function _s(e){let t=e.versionNeeded??20,n=new Uint8Array(30+e.fileName.length+e.extraField.length),r=new DataView(n.buffer);return r.setUint32(0,ss,!0),r.setUint16(4,t,!0),r.setUint16(6,e.flags,!0),r.setUint16(8,e.compressionMethod,!0),r.setUint16(10,e.dosTime,!0),r.setUint16(12,e.dosDate,!0),r.setUint32(14,e.crc32,!0),r.setUint32(18,e.compressedSize,!0),r.setUint32(22,e.uncompressedSize,!0),r.setUint16(26,e.fileName.length,!0),r.setUint16(28,e.extraField.length,!0),n.set(e.fileName,30),e.extraField.length>0&&n.set(e.extraField,30+e.fileName.length),n}function vs(e){let t=e.versionMadeBy??20,n=e.versionNeeded??20,r=e.externalAttributes??0,i=new Uint8Array(46+e.fileName.length+e.extraField.length+e.comment.length),a=new DataView(i.buffer);return a.setUint32(0,cs,!0),a.setUint16(4,t,!0),a.setUint16(6,n,!0),a.setUint16(8,e.flags,!0),a.setUint16(10,e.compressionMethod,!0),a.setUint16(12,e.dosTime,!0),a.setUint16(14,e.dosDate,!0),a.setUint32(16,e.crc32,!0),a.setUint32(20,e.compressedSize,!0),a.setUint32(24,e.uncompressedSize,!0),a.setUint16(28,e.fileName.length,!0),a.setUint16(30,e.extraField.length,!0),a.setUint16(32,e.comment.length,!0),a.setUint16(34,0,!0),a.setUint16(36,0,!0),a.setUint32(38,r,!0),a.setUint32(42,e.localHeaderOffset,!0),i.set(e.fileName,46),e.extraField.length>0&&i.set(e.extraField,46+e.fileName.length),e.comment.length>0&&i.set(e.comment,46+e.fileName.length+e.extraField.length),i}function ys(e){let t=new Uint8Array(22+e.comment.length),n=new DataView(t.buffer);return n.setUint32(0,ls,!0),n.setUint16(4,0,!0),n.setUint16(6,0,!0),n.setUint16(8,e.entryCount,!0),n.setUint16(10,e.entryCount,!0),n.setUint32(12,e.centralDirSize,!0),n.setUint32(16,e.centralDirOffset,!0),n.setUint16(20,e.comment.length,!0),e.comment.length>0&&t.set(e.comment,22),t}function bs(e,t,n){let r=new Uint8Array(16),i=new DataView(r.buffer);return i.setUint32(0,us,!0),i.setUint32(4,e,!0),i.setUint32(8,t,!0),i.setUint32(12,n,!0),r}var xs=class{constructor(e,t){this._deflate=null,this._crc=4294967295,this._uncompressedSize=0,this._compressedSize=0,this._finalized=!1,this._headerEmitted=!1,this._ondata=null,this._centralDirEntryInfo=null,this._pendingEnd=!1,this._emittedDataDescriptor=!1,this._completeResolve=null,this._completeReject=null,this._completePromise=null,this._completeError=null,this._dataQueue=[],this._finalQueued=!1,this.name=e;let n=t?.modTime??new Date;this._modTime=n,this.level=t?.level??6;let r=gs({name:e,comment:``,modTime:n,timestamps:t?.timestamps??`dos+utc`,useDataDescriptor:!0,deflate:this.level>0});this.nameBytes=r.nameBytes,this.dosTime=r.dosTime,this.dosDate=r.dosDate,this.extraField=r.extraField,this._flags=r.flags,this._compressionMethod=r.compressionMethod,this.level>0&&(this._deflate=Wo({level:this.level}),this._deflate.on(`error`,e=>{this._rejectComplete(e)}),this._deflate.on(`data`,e=>{this._compressedSize+=e.length,this._enqueueData(e,!1)}),this._deflate.on(`end`,()=>{this._pendingEnd&&!this._emittedDataDescriptor&&(this._emittedDataDescriptor=!0,this._emitDataDescriptor())})),this._localHeader=this._buildLocalHeader()}_buildLocalHeader(){return _s({fileName:this.nameBytes,extraField:this.extraField,flags:this._flags,compressionMethod:this._compressionMethod,dosTime:this.dosTime,dosDate:this.dosDate,crc32:0,compressedSize:0,uncompressedSize:0,versionNeeded:20})}_enqueueData(e,t){this._ondata?this._ondata(e,t):(this._dataQueue.push(e),t&&(this._finalQueued=!0))}_flushQueue(){if(!this._ondata)return;let e=this._dataQueue.length,t=this._finalQueued?e-1:-1;for(let n=0;n<e;n++)this._ondata(this._dataQueue[n],n===t);this._dataQueue=[],this._finalQueued=!1}get ondata(){return this._ondata??void 0}set ondata(e){this._ondata=e,this._flushQueue()}_resolveComplete(){this._completeResolve&&this._completeResolve()}_rejectComplete(e){this._completeError=e,this._completeReject&&this._completeReject(e)}_ensureCompletePromise(){return this._completeError?Promise.reject(this._completeError):this._emittedDataDescriptor?Promise.resolve():(this._completePromise||=new Promise((e,t)=>{this._completeResolve=e,this._completeReject=t}),this._completePromise)}_tapCallback(e,t){t&&e.then(()=>t()).catch(e=>t(e))}_emitHeaderIfNeeded(){this._headerEmitted||=(this._emitHeader(),!0)}_writeData(e){return e.length===0?Promise.resolve():(this._crc=ro(this._crc,e),this._uncompressedSize+=e.length,this._deflate?new Promise((t,n)=>{this._deflate.write(e,e=>{e?n(e):t()})}):(this._compressedSize+=e.length,this._enqueueData(e,!1),Promise.resolve()))}_endDeflateAndWait(){return new Promise((e,t)=>{let n=this._deflate,r=e=>{a(),t(e)},i=()=>{a(),e()},a=()=>{n.off(`error`,r),n.off(`end`,i)};n.once(`error`,r),n.once(`end`,i),n.end()})}_finalizeAfterWrite(e){this._finalized=!0,this._pendingEnd=!0;let t=this._ensureCompletePromise();return this._deflate?e.then(()=>this._endDeflateAndWait()).then(()=>t):(this._emittedDataDescriptor=!0,this._emitDataDescriptor(),t)}push(e,t=!1,n){if(this._finalized){let e=Promise.reject(Error(`Cannot push to finalized ZipDeflateFile`));return this._tapCallback(e,n),e}this._emitHeaderIfNeeded();let r=this._writeData(e),i=t?this._finalizeAfterWrite(r):r;return this._tapCallback(i,n),i}_emitHeader(){this._enqueueData(this._localHeader,!1)}_emitDataDescriptor(){let e=io(this._crc),t=bs(e,this._compressedSize,this._uncompressedSize);this._centralDirEntryInfo={name:this.nameBytes,extraField:this.extraField,flags:this._flags,crc:e,compressedSize:this._compressedSize,uncompressedSize:this._uncompressedSize,compressionMethod:this._compressionMethod,dosTime:this.dosTime,dosDate:this.dosDate,offset:-1},this._enqueueData(t,!0),this._resolveComplete()}complete(){return this._ensureCompletePromise()}getEntryInfo(){if(!this._centralDirEntryInfo)return null;let e=this.name;return{path:e,isDirectory:e.endsWith(`/`)||e.endsWith(`\\`),compressedSize:this._centralDirEntryInfo.compressedSize,uncompressedSize:this._centralDirEntryInfo.uncompressedSize,compressionMethod:this._centralDirEntryInfo.compressionMethod,crc32:this._centralDirEntryInfo.crc,lastModified:this._modTime,localHeaderOffset:this._centralDirEntryInfo.offset,comment:``,externalAttributes:0,isEncrypted:!1}}getCentralDirectoryEntryInfo(){return this._centralDirEntryInfo}isComplete(){return this._emittedDataDescriptor&&this._centralDirEntryInfo!==null}},Ss=class{constructor(e){this.entries=[],this.currentOffset=0,this.ended=!1,this.endPending=!1,this.fileQueue=[],this.fileQueueIndex=0,this.activeFile=null,this.callback=e}add(e){if(this.ended)throw Error(`Cannot add files after calling end()`);this.fileQueue.push(e),this.activeFile||this._processNextFile()}_processNextFile(){if(this.fileQueueIndex>=this.fileQueue.length){this.activeFile=null,this.fileQueue=[],this.fileQueueIndex=0,this.endPending&&this._finalize();return}let e=this.fileQueue[this.fileQueueIndex++];this.activeFile=e;let t=this.currentOffset;e.ondata=(n,r)=>{if(this.currentOffset+=n.length,this.callback(null,n,!1),r){let n=e.getCentralDirectoryEntryInfo();n&&(n.offset=t,this.entries.push(n)),this._processNextFile()}}}_finalize(){if(this.ended)return;this.ended=!0;let e=this.currentOffset,t=0,n=new Uint8Array;for(let e of this.entries){let r=vs({fileName:e.name,extraField:e.extraField,comment:n,flags:e.flags,compressionMethod:e.compressionMethod,dosTime:e.dosTime,dosDate:e.dosDate,crc32:e.crc,compressedSize:e.compressedSize,uncompressedSize:e.uncompressedSize,localHeaderOffset:e.offset,versionMadeBy:20,versionNeeded:20});t+=r.length,this.callback(null,r,!1)}let r=ys({entryCount:this.entries.length,centralDirSize:t,centralDirOffset:e,comment:n});this.callback(null,r,!0)}end(){this.endPending||this.ended||(this.endPending=!0,this.activeFile||this._finalize())}};async function Cs(e,t={}){return No()?Lo(e):vo(e)}function ws(e){return vo(e)}function Ts(e){let t=new Uint8Array(4);return new DataView(t.buffer).setUint32(0,e>>>0,!0),t}function Es(e,t){return new DataView(e.buffer,e.byteOffset,e.byteLength).getUint32(t,!0)}var Ds=class{constructor(e,t=0){this.data=e,this.view=new DataView(e.buffer,e.byteOffset,e.byteLength),this.offset=t}get position(){return this.offset}set position(e){this.offset=e}get remaining(){return this.data.length-this.offset}readUint8(){let e=this.view.getUint8(this.offset);return this.offset+=1,e}readUint16(){let e=this.view.getUint16(this.offset,!0);return this.offset+=2,e}readUint32(){let e=this.view.getUint32(this.offset,!0);return this.offset+=4,e}readBigUint64(){let e=this.view.getBigUint64(this.offset,!0);return this.offset+=8,e}readBytes(e){let t=this.data.subarray(this.offset,this.offset+e);return this.offset+=e,t}readString(e,t=!0){let n=this.readBytes(e);return t?Jo(n):Yo(n)}skip(e){this.offset+=e}slice(e,t){return this.data.subarray(e,t)}peekUint32(e){return this.view.getUint32(e,!0)}};function Os(e,t){let n=e.getUint32(t,!0);return e.getUint32(t+4,!0)*4294967296+n}function ks(e,t){let n={};if(e.length<4)return n;let r=new DataView(e.buffer,e.byteOffset,e.byteLength),i=0;for(;i+4<=e.length;){let a=r.getUint16(i,!0),o=r.getUint16(i+2,!0),s=i+4,c=s+o;if(c>e.length)break;if(a===1){let e=s;t.uncompressedSize===4294967295&&e+8<=c&&(n.uncompressedSize=Os(r,e),e+=8),t.compressedSize===4294967295&&e+8<=c&&(n.compressedSize=Os(r,e),e+=8),t.offsetToLocalFileHeader===4294967295&&e+8<=c&&(n.offsetToLocalFileHeader=Os(r,e))}else if(a===21589&&o>=1)if(e[s]&1&&o>=5)n.mtimeUnixSeconds=r.getUint32(s+1,!0)>>>0;else{let t=ts(e.subarray(i,c));t!==void 0&&(n.mtimeUnixSeconds=t)}i=c}return t.compressedSize===4294967295&&(t.compressedSize=n.compressedSize),t.uncompressedSize===4294967295&&(t.uncompressedSize=n.uncompressedSize),t.offsetToLocalFileHeader===4294967295&&(t.offsetToLocalFileHeader=n.offsetToLocalFileHeader),n}function As(e){let t=Math.max(0,e.length-65557),n=new DataView(e.buffer,e.byteOffset,e.byteLength);for(let r=e.length-22;r>=t;r--)if(n.getUint32(r,!0)===ls)return r;return-1}function js(e,t){let n=t-20;return n<0?-1:new DataView(e.buffer,e.byteOffset,e.byteLength).getUint32(n,!0)===fs?n:-1}function Ms(e,t={}){let{decodeStrings:n=!0}=t,r=[],i=As(e);if(i===-1)throw Error(`Invalid ZIP file: End of Central Directory not found`);let a=new Ds(e,i);a.skip(4),a.skip(2),a.skip(2),a.skip(2);let o=a.readUint16();a.skip(4);let s=a.readUint32(),c=js(e,i);if(c!==-1){let t=new Ds(e,c);t.skip(4),t.skip(4);let n=new Ds(e,Number(t.readBigUint64()));if(n.readUint32()===ds){n.skip(8),n.skip(2),n.skip(2),n.skip(4),n.skip(4);let e=Number(n.readBigUint64());n.skip(8);let t=Number(n.readBigUint64());o===65535&&(o=e),s===4294967295&&(s=t)}}let l=new Ds(e,s);for(let e=0;e<o;e++){if(l.readUint32()!==cs)throw Error(`Invalid Central Directory header signature at entry ${e}`);l.skip(2),l.skip(2);let t=l.readUint16(),i=l.readUint16(),a=l.readUint16(),o=l.readUint16(),s=l.readUint32(),c=l.readUint32(),u=l.readUint32(),d=l.readUint16(),f=l.readUint16(),p=l.readUint16();l.skip(2),l.skip(2);let m=l.readUint32(),h=l.readUint32(),g=(t&2048)!=0,_=n&&g,v=l.readString(d,_),y=l.readBytes(f),ee=l.readString(p,_),b={compressedSize:c,uncompressedSize:u,offsetToLocalFileHeader:h},te=f>0?ks(y,b):{};c=b.compressedSize,u=b.uncompressedSize,h=b.offsetToLocalFileHeader??h;let x=v.endsWith(`/`)||(m&16)!=0,ne=(t&1)!=0,S=te.mtimeUnixSeconds,C=is(o,a,S);r.push({path:v,isDirectory:x,compressedSize:c,uncompressedSize:u,compressionMethod:i,crc32:s,lastModified:C,localHeaderOffset:h,comment:ee,externalAttributes:m,isEncrypted:ne})}return r}async function Ns(e,t){if(t.isDirectory)return new Uint8Array;if(t.isEncrypted)throw Error(`File "${t.path}" is encrypted and cannot be extracted`);let n=Fs(e,t);if(t.compressionMethod===0)return n;if(t.compressionMethod===8)return Cs(n);throw Error(`Unsupported compression method: ${t.compressionMethod}`)}function Ps(e,t){if(t.isDirectory)return new Uint8Array;if(t.isEncrypted)throw Error(`File "${t.path}" is encrypted and cannot be extracted`);let n=Fs(e,t);if(t.compressionMethod===0)return n;if(t.compressionMethod===8)return ws(n);throw Error(`Unsupported compression method: ${t.compressionMethod}`)}function Fs(e,t){let n=new Ds(e,t.localHeaderOffset);if(n.readUint32()!==ss)throw Error(`Invalid local file header signature for "${t.path}"`);n.skip(2),n.skip(2),n.skip(2),n.skip(2),n.skip(2),n.skip(4),n.skip(4),n.skip(4);let r=n.readUint16(),i=n.readUint16();return n.skip(r),n.skip(i),n.readBytes(t.compressedSize)}var Is=class{constructor(e,t={}){this.data=e instanceof ArrayBuffer?new Uint8Array(e):e,this.entries=Ms(this.data,t),this.entryMap=new Map(this.entries.map(e=>[e.path,e]))}getEntries(){return this.entries}getEntry(e){return this.entryMap.get(e)}hasEntry(e){return this.entryMap.has(e)}listFiles(){return this.entries.map(e=>e.path)}async extract(e){let t=this.entryMap.get(e);return t?Ns(this.data,t):null}extractSync(e){let t=this.entryMap.get(e);return t?Ps(this.data,t):null}async extractAll(){let e=new Map;for(let t of this.entries){let n=await Ns(this.data,t);e.set(t.path,n)}return e}extractAllSync(){let e={};for(let t of this.entries)e[t.path]=Ps(this.data,t);return e}async forEach(e){for(let t of this.entries){let n=null;if(await e(t,()=>(n||=Ns(this.data,t),n))===!1)break}}};function Ls(e,t,n){let r=new DataView(e.buffer,e.byteOffset,e.byteLength);switch(n){case 1:return r.getUint8(t);case 2:return r.getUint16(t,!0);case 4:return r.getUint32(t,!0);case 8:{let e=r.getUint32(t,!0);return r.getUint32(t+4,!0)*4294967296+e}default:throw Error(`Unsupported UInt LE size!`)}}function Rs(e,t){let n={},r=0;for(let[i,a]of t)e.length>=r+a?n[i]=Ls(e,r,a):n[i]=null,r+=a;return n}function zs(e,t){return Rs(e,t)}let Bs=[[`version`,4],[`pubKeyLength`,4],[`signatureLength`,4]],Vs=[[`versionsNeededToExtract`,2],[`flags`,2],[`compressionMethod`,2],[`lastModifiedTime`,2],[`lastModifiedDate`,2],[`crc32`,4],[`compressedSize`,4],[`uncompressedSize`,4],[`fileNameLength`,2],[`extraFieldLength`,2]],Hs=[[`dataDescriptorSignature`,4],[`crc32`,4],[`compressedSize`,4],[`uncompressedSize`,4]],Us=[[`versionMadeBy`,2],[`versionsNeededToExtract`,2],[`flags`,2],[`compressionMethod`,2],[`lastModifiedTime`,2],[`lastModifiedDate`,2],[`crc32`,4],[`compressedSize`,4],[`uncompressedSize`,4],[`fileNameLength`,2],[`extraFieldLength`,2],[`fileCommentLength`,2],[`diskNumber`,2],[`internalFileAttributes`,2],[`externalFileAttributes`,4],[`offsetToLocalFileHeader`,4]],Ws=[[`diskNumber`,2],[`diskStart`,2],[`numberOfRecordsOnDisk`,2],[`numberOfRecords`,2],[`sizeOfCentralDirectory`,4],[`offsetToStartOfCentralDirectory`,4],[`commentLength`,2]],Gs=new TextDecoder;new TextEncoder;function Ks(e){return Gs.decode(e)}function qs(e){return((e||0)&2048)!=0}function Js(e){if(e.length===0)return!1;let t=e.charCodeAt(e.length-1);return t===47||t===92}function Ys(e,t){return t===0&&Js(e)?`Directory`:`File`}function Xs(e,t,n){return{path:e,pathBuffer:t,flags:{isUnicode:qs(n)}}}function Zs(e,t){let n=e.lastModifiedDate||0,r=e.lastModifiedTime||0,i=rs(n,r),a=t.mtimeUnixSeconds;return a===void 0?i:is(n,r,a)}let Qs=ks;function $s(e){return((e||0)&8)!=0}function ec(e,t){return!$s(e)||(t||0)>0}function tc(e){let t=e.pipe(new qe({transform(e,t,n){n()}}));return t.promise=()=>new Promise((e,n)=>{t.on(`finish`,e),t.on(`error`,n)}),t}function nc(e){return new Promise((t,n)=>{let r=[],i=new qe({transform(e,t,n){r.push(e),n()}});i.on(`finish`,()=>{t(r.length===1?r[0]:Ge(r))}),i.on(`error`,n),e.on(`error`,n).pipe(i)})}async function rc(e){let t=zs(await e(12),Bs),n=t.pubKeyLength||0,r=await e(n+(t.signatureLength||0));return t.publicKey=r.subarray(0,n),t.signature=r.subarray(n),t}async function ic(e){let t=zs(await e(26),Vs);return{vars:t,fileNameBuffer:await e(t.fileNameLength||0),extraFieldData:await e(t.extraFieldLength||0)}}async function ac(e){return zs(await e(16),Hs)}async function oc(e){let t=zs(await e(42),Us);await e(t.fileNameLength||0),await e(t.extraFieldLength||0),await e(t.fileCommentLength||0)}async function sc(e){await e(zs(await e(18),Ws).commentLength||0)}function cc(e){switch(e){case ss:case cs:case ls:case ds:case fs:return!0;default:return!1}}function lc(e,t){return(e[t]|0|(e[t+1]|0)<<8|(e[t+2]|0)<<16|(e[t+3]|0)<<24)>>>0}function uc(e,t,n){if(t.length!==4)return so(e,t,n);let r=t[0],i=t[1],a=t[2],o=t[3],s=e.length,c=n|0;if(c<0&&(c=0),c>s-4)return-1;for(let t=c;t<=s-4;t++)if(e[t]===r&&e[t+1]===i&&e[t+2]===a&&e[t+3]===o)return t;return-1}function dc(e){return e||{foundIndex:-1,nextSearchFrom:0}}function fc(e,t,n,r=0,i){let a=dc(i),o=r|0;o<0&&(o=0),o>e.length&&(o=e.length);let s=t.length|0,c=s>0?s-1:0;for(;o<e.length;){let r=uc(e,t,o);if(r===-1)return a.foundIndex=-1,a.nextSearchFrom=Math.max(o,Math.max(0,e.length-c)),a;let i=r,s=i+16;if(s+4<=e.length){let t=lc(e,s),r=lc(e,i+8),c=n+i>>>0;if(cc(t)&&r===c)return a.foundIndex=i,a.nextSearchFrom=i,a;o=i+1;continue}return a.foundIndex=-1,a.nextSearchFrom=i,a}return a.foundIndex=-1,a.nextSearchFrom=Math.max(o,Math.max(0,e.length-c)),a}function pc(e){let{source:t,dataDescriptorSignature:n}=e,r=e.keepTailBytes??20,i=e.errorMessage??`FILE_ENDED: Data descriptor not found`,a=new Ye,o=!1,s=0,c=0,l={foundIndex:-1,nextSearchFrom:0},u,d=()=>{u&&=(u(),void 0)},f=()=>{if(!o){for(;t.getLength()>0;){let e=t.getView();fc(e,n,s,c,l);let i=l.foundIndex;if(c=l.nextSearchFrom,i!==-1){i>0&&(a.write(t.read(i)),s+=i,c=Math.max(0,c-i)),o=!0,t.maybeReleaseWriteCallback?.(),d(),a.end();return}let u=Math.max(0,e.length-r);if(u>0){a.write(t.read(u)),s+=u,c=Math.max(0,c-u),t.getLength()<=r&&t.maybeReleaseWriteCallback?.();return}break}!o&&t.isFinished()&&(o=!0,d(),a.destroy(Error(i)))}};return u=t.onDataAvailable(f),queueMicrotask(f),a}let mc=Ts(ls);async function hc(e,t,n,r,i,a){let o=e.thresholdBytes??5242880;for(;;){let s=await t.pull(4);if(s.length===0){n.emitClose();return}let c=Es(s,0);if(c===875721283){i.crxHeader=await rc(async e=>t.pull(e)),n.emitCrxHeader(i.crxHeader);continue}if(c===ss){await gc(e,t,n,r,i,o,a);continue}if(c===cs){i.reachedCD=!0,await oc(async e=>t.pull(e));continue}if(c===ls){await sc(async e=>t.pull(e)),t.setDone(),n.emitClose();return}if(i.reachedCD){await t.pullUntil(mc,!0),await sc(async e=>t.pull(e)),t.setDone(),n.emitClose();return}n.emitError(Error(`invalid signature: 0x`+c.toString(16))),n.emitClose();return}}async function gc(e,t,n,r,i,a,o){let{vars:s,fileNameBuffer:c,extraFieldData:l}=await ic(async e=>t.pull(e)),u=s;i.crxHeader&&(u.crxHeader=i.crxHeader);let d=Ks(c),f=new Ye,p=!1;f.autodrain=function(){return p=!0,f.__autodraining=!0,tc(f)},f.buffer=function(){return nc(f)},f.path=d,f.props=Xs(d,c,u.flags),f.type=Ys(d,u.uncompressedSize||0),e.verbose&&(f.type===`Directory`?console.log(` creating:`,d):f.type===`File`&&(u.compressionMethod===0?console.log(` extracting:`,d):console.log(` inflating:`,d)));let m=Qs(l,u);u.lastModifiedDateTime=Zs(u,m),f.vars=u,f.extraFields=m,f.__autodraining=p;let h=ec(u.flags,u.compressedSize);h&&(f.size=u.uncompressedSize||0),e.forceStream?n.pushEntry(f):(n.emitEntry(f),n.pushEntryIfPiped(f)),e.verbose&&console.log({filename:d,vars:u,extraFields:f.extraFields});let g=!$s(u.flags),_=u.compressedSize||0,v=u.uncompressedSize||0;if(g&&h&&o&&u.compressionMethod!==0&&!p&&_<=a&&v<=a){let e=o(await t.pull(_));f.end(e),await nt(f,{readable:!1});return}let y=u.compressionMethod&&!p?r():new Ye;if(h){await tt(t.stream(u.compressedSize||0),y,f);return}await tt(t.streamUntilDataDescriptor(),y,f),f.size=(await ac(async e=>t.pull(e))).uncompressedSize||0}var _c=class extends Je{constructor(){super({write:(e,t,n)=>{this._doWrite(e,n)},final:e=>{this._closeWriter(()=>{e()})}}),this.reading=!1,this.writeClosed=!1,this._junkError=!1,this._bytesIn=0,this._bytesOut=0,this._readingDone=!1,this._pendingWrites=0,this._writeFinishedPromise=null,this._resolveWriteFinished=null,this.decompressionStream=new DecompressionStream(`deflate-raw`),this.writer=this.decompressionStream.writable.getWriter(),this.reader=this.decompressionStream.readable.getReader(),this._readingDonePromise=new Promise(e=>{this._resolveReadingDone=e}),this._startReading()}_doWrite(e,t){if(this._junkError){t&&t();return}this._bytesIn+=e.length,this._pendingWrites++,this.writer.write(e).then(()=>{this._pendingWrites--,this._pendingWrites===0&&this._resolveWriteFinished&&this._resolveWriteFinished(),t&&t()}).catch(e=>{this._pendingWrites--,this._pendingWrites===0&&this._resolveWriteFinished&&this._resolveWriteFinished();let n=e instanceof Error?e.message:String(e);n.includes(`Junk`)||n.includes(`junk`)?(this._junkError=!0,t&&t()):t?t(e):this.emit(`error`,e)})}async _startReading(){if(!this.reading){this.reading=!0;try{for(;;){let{done:e,value:t}=await this.reader.read();if(e)break;this._bytesOut+=t.length,this.push(t)}}catch(e){let t=e instanceof Error?e.message:String(e);t.includes(`Junk`)||t.includes(`junk`)?this._junkError=!0:this.emit(`error`,e)}finally{this._readingDone=!0,this._resolveReadingDone(),this.push(null)}}}write(e,t,n){let r;return r=typeof t==`function`?t:n,this._doWrite(e,r),!0}end(e,t,n){let r,i;return typeof e==`function`?i=e:e!==void 0&&(r=e,i=typeof t==`function`?t:n),r?this.write(r,()=>{this._closeWriter(i)}):this._closeWriter(i),this}_closeWriter(e){if(this.writeClosed){this._readingDonePromise.then(()=>{e&&e()});return}this.writeClosed=!0,(this._pendingWrites>0?new Promise(e=>{this._writeFinishedPromise=new Promise(e=>{this._resolveWriteFinished=e}),this._writeFinishedPromise.then(e)}):Promise.resolve()).then(()=>this.writer.close()).catch(()=>{}).finally(()=>{this._readingDonePromise.then(()=>{e&&e(),this.emit(`finish`)})})}destroy(e){return this.writeClosed||this.writer.abort(e||void 0).catch(()=>{}),this.reader.cancel(e||void 0).catch(()=>{}),super.destroy(e)}},vc=class extends Je{constructor(){super({write:(e,t,n)=>{if(this._finished){n(Error(`write after end`));return}this.chunks.push(e),n()},final:e=>{this._decompress(e)}}),this.chunks=[],this._finished=!1}_decompress(e){try{let t=vo(Ge(this.chunks));this.push(t),this.push(null),this._finished=!0,e()}catch(t){e(t instanceof Error?t:Error(String(t)))}}destroy(e){return this._finished=!0,this.chunks=[],super.destroy(e)}};function yc(){return No()?new _c:new vc}let bc=Ts(us);function xc(e){return class extends Je{constructor(t={}){super({objectMode:!0,write:(e,t,n)=>{this._handleWrite(e),n()},final:e=>{this.finished=!0,this._wakeUp(),this.emit(`data-available`),this.emit(`chunk`,!1),this._parsingDone.then(()=>e()).catch(e)}}),this._buffer=new Do,this.finished=!1,this._driverState={},this._parsingDone=Promise.resolve(),this._opts=t;let n={pull:e=>this.pull(e),pullUntil:(e,t)=>this.pullUntil(e,t),stream:e=>this.stream(e),streamUntilDataDescriptor:()=>this._streamUntilDataDescriptor(),setDone:()=>{this.push(null)}},r={emitEntry:e=>{this.emit(`entry`,e)},pushEntry:e=>{this.push(e)},pushEntryIfPiped:e=>{},emitCrxHeader:e=>{this.crxHeader=e,this.emit(`crx-header`,e)},emitError:e=>{this.__emittedError=e,this.emit(`error`,e)},emitClose:()=>{this.emit(`close`)}};queueMicrotask(()=>{this._parsingDone=hc(this._opts,n,r,()=>e(),this._driverState),this._parsingDone.catch(e=>{(!this.__emittedError||this.__emittedError!==e)&&(this.__emittedError=e,this.emit(`error`,e)),this.emit(`close`)})})}_handleWrite(e){this._buffer.append(e),this._wakeUp(),this.emit(`data-available`),this.emit(`chunk`)}get buffer(){return this._buffer.view()}set buffer(e){this._buffer.reset(e)}_maybeReleaseWriteCallback(){if(typeof this.cb==`function`){let e=this.cb;this.cb=void 0,e()}}_wakeUp(){if(this._pendingResolve){let e=this._pendingResolve;this._pendingResolve=void 0,e()}}_waitForData(){return new Promise(e=>{this._pendingResolve=e})}async _pullInternal(e){if(e===0)return new Uint8Array;for(;this._buffer.length<e;){if(this.finished){if(this._buffer.length>0)return this._buffer.read(this._buffer.length);throw Error(`FILE_ENDED`)}await this._waitForData()}return this._buffer.read(e)}async _pullUntilInternal(e,t=!1){let n=[],r=0,i=Math.max(0,e.length-1);for(;;){let a=this._buffer.view(),o=so(a,e,r);if(o!==-1){this.match=o;let r=o+(t?e.length:0);return r>0&&n.push(this._buffer.read(r)),Ge(n)}if(r=Math.max(r,Math.max(0,a.length-i)),this.finished)throw Error(`FILE_ENDED`);let s=Math.max(0,this._buffer.length-e.length);s>0&&(n.push(this._buffer.read(s)),r=Math.max(0,r-s)),await this._waitForData()}}_streamFixedLength(e){let t=new Ye,n=e,r=!1,i=()=>{if(!r){for(;n>0&&this._buffer.length>0;){let e=Math.min(n,this._buffer.length),r=this._buffer.read(e);n-=e,t.write(r)}n===0?(r=!0,this.removeListener(`data-available`,i),this._maybeReleaseWriteCallback(),t.end()):this.finished&&(r=!0,this.removeListener(`data-available`,i),t.destroy(Error(`FILE_ENDED`)))}};return this.on(`data-available`,i),queueMicrotask(()=>i()),t}_streamUntilPattern(e,t=!1){let n=new Ye,r=!1,i=0,a=Math.max(0,e.length-1),o=()=>{if(r)return;let s=this._buffer.view(),c=so(s,e,i);if(c!==-1){this.match=c;let i=t?c+e.length:c;i>0&&n.write(this._buffer.read(i)),r=!0,this.removeListener(`data-available`,o),this._maybeReleaseWriteCallback(),n.end();return}if(i=Math.max(i,Math.max(0,s.length-a)),this.finished){r=!0,this.removeListener(`data-available`,o),this._maybeReleaseWriteCallback(),n.destroy(Error(`FILE_ENDED`));return}let l=Math.max(0,this._buffer.length-e.length);l>0&&(n.write(this._buffer.read(l)),i=Math.max(0,i-l),this._maybeReleaseWriteCallback())};return this.on(`data-available`,o),queueMicrotask(()=>o()),n}stream(e,t){return typeof e==`number`?this._streamFixedLength(e):this._streamUntilPattern(e,t??!1)}pull(e,t){if(e===0)return Promise.resolve(new Uint8Array);if(typeof e==`number`){if(this.finished&&this._buffer.length<e)return Promise.reject(Error(`FILE_ENDED`));if(this._buffer.length>=e){let t=this._buffer.read(e);return this._buffer.length===0&&this._maybeReleaseWriteCallback(),Promise.resolve(t)}return this._pullInternal(e)}return this.finished?Promise.reject(Error(`FILE_ENDED`)):this._pullUntilInternal(e,t??!1)}pullUntil(e,t){return this.pull(e,t)}_streamUntilDataDescriptor(){return pc({source:{getView:()=>this._buffer.view(),getLength:()=>this._buffer.length,read:e=>this._buffer.read(e),isFinished:()=>this.finished,onDataAvailable:e=>(this.on(`data-available`,e),()=>this.removeListener(`data-available`,e))},dataDescriptorSignature:bc})}promise(){return new Promise((e,t)=>{this.on(`finish`,e),this.on(`end`,e),this.on(`error`,t)})}}}let Sc=xc(yc);var Cc=class extends Sc{};function wc(e){return new Cc(e)}var Tc=class e{static{this.textEncoder=new TextEncoder}constructor(e){this.events=new Map,this.pipedStream=null,this.finalized=!1,this.level=e?.level??6,this.modTime=e?.modTime,this.timestamps=e?.timestamps,this.zip=new Ss((e,t,n)=>{if(e){this._emit(`error`,e);return}t&&t.length>0&&(this._emit(`data`,t),this.pipedStream&&this.pipedStream.write(t)),n&&(this.pipedStream&&this.pipedStream.end(),this._emit(`finish`))})}_emit(e,...t){let n=this.events.get(e);if(n)for(let e of n)e(...t)}on(e,t){let n=this.events.get(e)||new Set;return n.add(t),this.events.set(e,n),this}once(e,t){let n=(...r)=>{this.off(e,n),t(...r)};return this.on(e,n)}off(e,t){let n=this.events.get(e);return n?(n.delete(t),n.size===0&&this.events.delete(e),this):this}pipe(e){this.pipedStream=e}append(t,n){if(this.finalized)throw Error(`Cannot append after finalize`);let r;r=n.base64?Ce(typeof t==`string`?t:String(t)):typeof t==`string`?e.textEncoder.encode(t):t instanceof Uint8Array?t:ArrayBuffer.isView(t)?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t instanceof ArrayBuffer?new Uint8Array(t):t;let i=new xs(n.name,{level:this.level,modTime:this.modTime,timestamps:this.timestamps});this.zip.add(i);let a=i.push(r,!0);a&&typeof a.catch==`function`&&a.catch(e=>this._emit(`error`,e))}finalize(){this.finalized||(this.finalized=!0,this.zip.end())}},Ec=class e{static{this.RelType=G}constructor(e){this.workbook=e}createBinaryStream(e){let t=new Ye;return t.end(e),t}createTextStream(e){let t=new Ye;return t.end(e),t}createStreamBuf(){return new $a}bufferToString(e){return Ie(e)}createZipWriter(e){return new Tc(e)}async writeToZip(e,t){let{model:n}=this.workbook;this.prepareModel(n,t),await this.addContentTypes(e,n),await this.addOfficeRels(e,n),await this.addWorkbookRels(e,n),await this.addWorksheets(e,n),await this.addSharedStrings(e,n),this.addDrawings(e,n),this.addTables(e,n),this.addPivotTables(e,n),await Promise.all([this.addThemes(e,n),this.addStyles(e,n)]),await this.addFeaturePropertyBag(e,n),await this.addMedia(e,n),await Promise.all([this.addApp(e,n),this.addCore(e,n)]),await this.addWorkbook(e,n)}async read(e,t){let n=[];return await new Promise((t,r)=>{let i=e=>{n.push(e)},a=()=>{e.off(`data`,i),e.off(`end`,a),e.off(`error`,o),t()},o=t=>{e.off(`data`,i),e.off(`end`,a),e.off(`error`,o),r(t)};e.on(`data`,i),e.on(`end`,a),e.on(`error`,o)}),this.loadBuffer(Ge(n),t)}async write(e,t){t||={},t.zip=t.zip||{},t.zip.modTime??=this.workbook.modified??this.workbook.created;let n=this.createZipWriter(t.zip);return n.pipe(e),await this.writeToZip(n,t),this._finalize(n)}async load(e,t){let n,r=typeof Buffer<`u`?Buffer.isBuffer(e):!1;if(!e||typeof e==`object`&&!r&&!(e instanceof Uint8Array)&&!(e instanceof ArrayBuffer))throw Error(`Can't read the data of 'the loaded zip file'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?`);return n=t&&t.base64?Ce(e.toString()):e instanceof ArrayBuffer?new Uint8Array(e):e instanceof Uint8Array?e:new Uint8Array(e),this.loadBuffer(n,t)}async loadBuffer(e,t){let n=await new Is(e).extractAll(),r={};for(let[e,t]of n)r[e]=t;return this.loadFromFiles(r,t)}async loadFromZipEntries(e,t){let n={worksheets:[],worksheetHash:{},worksheetRels:[],themes:{},media:[],mediaIndex:{},drawings:{},drawingRels:{},comments:{},tables:{},vmlDrawings:{},pivotTables:{},pivotTableRels:{},pivotCacheDefinitions:{},pivotCacheDefinitionRels:{},pivotCacheRecords:{}};for await(let r of e){let e=!1,i=async()=>{e||(e=!0,await r.drain())};if(r.type===`Directory`){await i();continue}let a=En(r.name),o=r.stream;try{let e=Dn(a);if(e!==void 0){await this._processWorksheetEntry(o,n,e,t,a);continue}switch(a){case U.rootRels:n.globalRels=await this.parseRels(o);break;case U.xlWorkbook:{let e=await this.parseWorkbook(o);n.sheets=e.sheets,n.definedNames=e.definedNames,n.views=e.views,n.properties=e.properties,n.calcProperties=e.calcProperties,n.pivotCaches=e.pivotCaches;break}case U.xlSharedStrings:n.sharedStrings=new un,await n.sharedStrings.parseStream(o);break;case U.xlWorkbookRels:n.workbookRels=await this.parseRels(o);break;case U.docPropsApp:{let e=await new Tr().parseStream(o);n.company=e.company,n.manager=e.manager;break}case U.docPropsCore:{let e=await new an().parseStream(o);Object.assign(n,e);break}case U.xlStyles:n.styles=new V,await n.styles.parseStream(o);break;default:await this._processDefaultEntry(o,n,a)||await i();break}}finally{try{await i()}catch{}}}return this.reconcile(n,t),this.workbook.model=n,this.workbook}async writeBuffer(e){e||={},e.zip=e.zip||{},e.zip.modTime??=this.workbook.modified??this.workbook.created;let t=this.createZipWriter(e.zip),n=this.createStreamBuf();return t.pipe(n),await this.writeToZip(t,e),await this._finalize(t),n.read()||new Uint8Array}async addMedia(e,t){await Promise.all(t.media.map(async t=>{if(t.type!==`image`)throw Error(`Unsupported media`);let n=Gn(`${t.name??`undefined`}.${t.extension}`);if(t.filename){if(this.readFileAsync){let r=await this.readFileAsync(t.filename);return e.append(r,{name:n})}throw Error(`Loading images from filename is not supported in this environment`)}if(t.buffer)return e.append(t.buffer,{name:n});if(t.base64){let r=t.base64.substring(t.base64.indexOf(`,`)+1);return e.append(r,{name:n,base64:!0})}throw Error(`Unsupported media`)}))}parseRels(e){return new H().parseStream(e)}parseWorkbook(e){return new Lr().parseStream(e)}parseSharedStrings(e){return new un().parseStream(e)}reconcile(e,t){let n=new Lr,r=new $i(t),i=new _a,a=new wa;n.reconcile(e);let o={media:e.media,mediaIndex:e.mediaIndex};Object.keys(e.drawings).forEach(t=>{let n=e.drawings[t],r=e.drawingRels[t];r&&(o.rels=r.reduce((e,t)=>(e[t.Id]=t,e),{}),(n.anchors||[]).forEach(e=>{let t=e.picture&&e.picture.hyperlinks;t&&o.rels[t.rId]&&(t.hyperlink=o.rels[t.rId].Target,delete t.rId)}),i.reconcile(n,o))});let s={styles:e.styles};Object.values(e.tables).forEach(e=>{a.reconcile(e,s)}),this._reconcilePivotTables(e);let c={styles:e.styles,sharedStrings:e.sharedStrings,media:e.media,mediaIndex:e.mediaIndex,date1904:e.properties&&e.properties.date1904,drawings:e.drawings,comments:e.comments,tables:e.tables,vmlDrawings:e.vmlDrawings,pivotTables:e.pivotTablesIndexed};e.worksheets.forEach(t=>{t.relationships=e.worksheetRels[t.sheetNo],r.reconcile(t,c)}),delete e.worksheetHash,delete e.worksheetRels,delete e.globalRels,delete e.sharedStrings,delete e.workbookRels,delete e.sheetDefs,delete e.styles,delete e.mediaIndex,delete e.drawings,delete e.drawingRels,delete e.vmlDrawings,delete e.pivotTableRels,delete e.pivotCacheDefinitionRels}_reconcilePivotTables(e){let t=e.pivotTables||{};if(typeof t!=`object`||Object.keys(t).length===0){e.pivotTables=[],e.pivotTablesIndexed={};return}let n=this._buildDefinitionToCacheIdMap(e),r=new Map;Object.entries(e.pivotCacheDefinitions||{}).forEach(([t,i])=>{let a=n.get(t);if(a!==void 0){let n=t.replace(`Definition`,`Records`);r.set(a,{definition:i,records:e.pivotCacheRecords?.[n],definitionName:t})}});let i=[],a={};Object.entries(t).forEach(([e,t])=>{let n=t,o=this._extractTableNumber(e),s=r.get(n.cacheId),c={...n,tableNumber:o,cacheDefinition:s?.definition,cacheRecords:s?.records,cacheFields:s?.definition?.cacheFields||[],rows:n.rowFields.filter(e=>e>=0),columns:n.colFields.filter(e=>e>=0&&e!==-2),values:n.dataFields.map(e=>e.fld),metric:this._determineMetric(n.dataFields),applyWidthHeightFormats:n.applyWidthHeightFormats||`0`};i.push(c),a[gr(e)]=c}),i.sort((e,t)=>e.tableNumber-t.tableNumber),e.pivotTables=i,e.pivotTablesIndexed=a,e.loadedPivotTables=i}_extractTableNumber(e){let t=e.match(/pivotTable(\d+)/);return t?parseInt(t[1],10):1}_buildCacheIdMap(e){let t=new Map,n=e.pivotCaches||[];for(let e of n)e.cacheId&&e.rId&&t.set(e.rId,parseInt(e.cacheId,10));return t}_buildDefinitionToCacheIdMap(t){let n=new Map,r=this._buildCacheIdMap(t),i=t.workbookRels||[];for(let t of i)if(t.Type===e.RelType.PivotCacheDefinition&&t.Target){let e=t.Target.match(/pivotCacheDefinition(\d+)\.xml/);if(e){let i=`pivotCacheDefinition${e[1]}`,a=r.get(t.Id);a!==void 0&&n.set(i,a)}}return n}_determineMetric(e){return e.length>0&&e[0].subtotal===`count`?`count`:`sum`}async _processWorksheetEntry(e,t,n,r,i){let a=await new $i(r).parseStream(e);if(!a)throw Error(`Failed to parse worksheet ${i}`);a.sheetNo=n,t.worksheetHash[i]=a,t.worksheets.push(a)}async _processCommentEntry(e,t,n){let r=await new Ia().parseStream(e);t.comments[mr(n)]=r}async _processTableEntry(e,t,n){let r=await new wa().parseStream(e);t.tables[vr(n)]=r}async _processWorksheetRelsEntry(e,t,n){let r=await new H().parseStream(e);t.worksheetRels[n]=r}async _processMediaEntry(e,t,n){let r=n.lastIndexOf(`.`);if(r>=1){let i=n.substr(r+1),a=n.substr(0,r);await new Promise((r,o)=>{let s=this.createStreamBuf(),c=()=>{e.off(`error`,u),s.off(`error`,u),s.off(`finish`,l)},l=()=>{c(),t.mediaIndex[n]=t.media.length,t.mediaIndex[a]=t.media.length;let e={type:`image`,name:a,extension:i,buffer:s.read()};t.media.push(e),r()},u=e=>{c(),o(e)};s.once(`finish`,l),e.on(`error`,u),s.on(`error`,u),e.pipe(s)})}}async _processDrawingEntry(e,t,n){let r=await new _a().parseStream(e);t.drawings[n]=r}async _processDrawingRelsEntry(e,t,n){let r=await new H().parseStream(e);t.drawingRels[n]=r}async _processVmlDrawingEntry(e,t,n){let r=await new Wa().parseStream(e);t.vmlDrawings[pr(n)]=r}async _processThemeEntry(e,t,n){await new Promise((r,i)=>{let a=this.createStreamBuf(),o=()=>{e.off(`error`,c),a.off(`error`,c),a.off(`finish`,s)},s=()=>{o();let e=a.read();t.themes[n]=e?typeof e==`string`?e:this.bufferToString(e):``,r()},c=e=>{o(),i(e)};a.once(`finish`,s),e.on(`error`,c),a.on(`error`,c),e.pipe(a)})}async _processPivotTableEntry(e,t,n){let r=await new ka().parseStream(e);r&&(t.pivotTables[n]=r)}async _processPivotTableRelsEntry(e,t,n){let r=await new H().parseStream(e);t.pivotTableRels[n]=r}async _processPivotCacheDefinitionEntry(e,t,n){let r=await new Oa().parseStream(e);r&&(t.pivotCacheDefinitions[n]=r)}async _processPivotCacheDefinitionRelsEntry(e,t,n){let r=await new H().parseStream(e);t.pivotCacheDefinitionRels[n]=r}async _processPivotCacheRecordsEntry(e,t,n){let r=await new Ta().parseStream(e);r&&(t.pivotCacheRecords[n]=r)}async loadFromFiles(e,t){let n={worksheets:[],worksheetHash:{},worksheetRels:[],themes:{},media:[],mediaIndex:{},drawings:{},drawingRels:{},comments:{},tables:{},vmlDrawings:{},pivotTables:{},pivotTableRels:{},pivotCacheDefinitions:{},pivotCacheDefinitionRels:{},pivotCacheRecords:{}},r=Object.keys(e).map(t=>({name:t,dir:t.endsWith(`/`),data:e[t]}));for(let e of r)if(!e.dir){let r=En(e.name),i=Nn(r)?this.createBinaryStream(e.data):this.createTextStream(this.bufferToString(e.data)),a=Dn(r);if(a!==void 0)await this._processWorksheetEntry(i,n,a,t,r);else switch(r){case U.rootRels:n.globalRels=await this.parseRels(i);break;case U.xlWorkbook:{let e=await this.parseWorkbook(i);n.sheets=e.sheets,n.definedNames=e.definedNames,n.views=e.views,n.properties=e.properties,n.calcProperties=e.calcProperties,n.pivotCaches=e.pivotCaches;break}case U.xlSharedStrings:n.sharedStrings=new un,await n.sharedStrings.parseStream(i);break;case U.xlWorkbookRels:n.workbookRels=await this.parseRels(i);break;case U.docPropsApp:{let e=await new Tr().parseStream(i);n.company=e.company,n.manager=e.manager;break}case U.docPropsCore:{let e=await new an().parseStream(i);Object.assign(n,e);break}case U.xlStyles:n.styles=new V,await n.styles.parseStream(i);break;default:await this._processDefaultEntry(i,n,r)}}return this.reconcile(n,t),this.workbook.model=n,this.workbook}async _processDefaultEntry(e,t,n){let r=On(n);if(r!==void 0){let n=r;return await this._processWorksheetRelsEntry(e,t,n),!0}let i=An(n);if(i)return await this._processMediaEntry(e,t,i),!0;let a=Pn(n);if(a)return await this._processDrawingEntry(e,t,a),!0;let o=Fn(n);if(o)return await this._processDrawingRelsEntry(e,t,o),!0;let s=In(n);if(s)return await this._processVmlDrawingEntry(e,t,s),!0;let c=Ln(n);if(c)return await this._processCommentEntry(e,t,`comments${c}`),!0;let l=Rn(n);if(l)return await this._processTableEntry(e,t,l),!0;let u=Mn(n);if(u)return await this._processThemeEntry(e,t,u),!0;let d=zn(n);if(d)return await this._processPivotTableEntry(e,t,d),!0;let f=Bn(n);if(f)return await this._processPivotTableRelsEntry(e,t,f),!0;let p=Vn(n);if(p)return await this._processPivotCacheDefinitionEntry(e,t,p),!0;let m=Hn(n);if(m)return await this._processPivotCacheDefinitionRelsEntry(e,t,m),!0;let h=Un(n);return h?(await this._processPivotCacheRecordsEntry(e,t,h),!0):!1}async addContentTypes(e,t){let n=new Sr().toXml(t);e.append(n,{name:U.contentTypes})}async addApp(e,t){let n=new Tr().toXml(t);e.append(n,{name:U.docPropsApp})}async addCore(e,t){let n=new an;e.append(n.toXml(t),{name:U.docPropsCore})}async addThemes(e,t){let n=t.themes||{theme1:Ka};Object.keys(n).forEach(t=>{let r=n[t];e.append(r,{name:Wn(t)})})}async addOfficeRels(t,n){let r=new H().toXml([{Id:`rId1`,Type:e.RelType.OfficeDocument,Target:U.xlWorkbook},{Id:`rId2`,Type:e.RelType.CoreProperties,Target:U.docPropsCore},{Id:`rId3`,Type:e.RelType.ExtenderProperties,Target:U.docPropsApp}]);t.append(r,{name:U.rootRels})}async addWorkbookRels(t,n){let r=1,i=[{Id:`rId${r++}`,Type:e.RelType.Styles,Target:cr.workbookStyles},{Id:`rId${r++}`,Type:e.RelType.Theme,Target:cr.workbookTheme1}];n.sharedStrings.count&&i.push({Id:`rId${r++}`,Type:e.RelType.SharedStrings,Target:cr.workbookSharedStrings}),n.hasCheckboxes&&i.push({Id:`rId${r++}`,Type:e.RelType.FeaturePropertyBag,Target:cr.workbookFeaturePropertyBag}),(n.pivotTables||[]).forEach(t=>{t.rId=`rId${r++}`,i.push({Id:t.rId,Type:e.RelType.PivotCacheDefinition,Target:lr(t.tableNumber)})}),n.worksheets.forEach((t,n)=>{t.rId=`rId${r++}`,t.fileIndex=n+1,i.push({Id:t.rId,Type:e.RelType.Worksheet,Target:`worksheets/sheet${t.fileIndex}.xml`})});let a=new H().toXml(i);t.append(a,{name:U.xlWorkbookRels})}async addFeaturePropertyBag(e,t){if(!t.hasCheckboxes)return;let n=new ea;e.append(n.toXml({}),{name:U.xlFeaturePropertyBag})}async addSharedStrings(e,t){t.sharedStrings&&t.sharedStrings.count&&e.append(t.sharedStrings.xml,{name:U.xlSharedStrings})}async addStyles(e,t){let{xml:n}=t.styles;n&&e.append(n,{name:U.xlStyles})}async addWorkbook(e,t){let n=new Lr;e.append(n.toXml(t),{name:U.xlWorkbook})}async addWorksheets(e,t){let n=new $i,r=new H,i=new Ia,a=new Wa,o=new Ga;t.worksheets.forEach((t,s)=>{let c=t.fileIndex||s+1,l=new F;n.render(l,t),e.append(l.xml,{name:Kn(c)}),t.rels&&t.rels.length&&(l=new F,r.render(l,t.rels),e.append(l.xml,{name:qn(c)})),t.comments.length>0&&(l=new F,i.render(l,t),e.append(l.xml,{name:Yn(c)}));let u=t.comments.length>0,d=t.formControls&&t.formControls.length>0;(u||d)&&(l=new F,a.render(l,{comments:u?t.comments:[],formControls:d?t.formControls:[]}),e.append(l.xml,{name:Zn(c)})),d&&t.formControls.forEach(t=>{let n=o.toXml(t);e.append(n,{name:br(t.ctrlPropId)})})})}addDrawings(e,t){let n=new _a,r=new H;t.worksheets.forEach(t=>{let{drawing:i}=t;if(i){n.prepare(i);let t=n.toXml(i);e.append(t,{name:$n(i.name)}),t=r.toXml(i.rels),e.append(t,{name:er(i.name)})}})}addTables(e,t){let n=new wa;t.worksheets.forEach(t=>{let{tables:r}=t;r.forEach(t=>{n.prepare(t,{});let r=n.toXml(t);e.append(r,{name:Qn(t.target)})})})}addPivotTables(t,n){if(!n.pivotTables.length)return;let r=new Ta,i=new Oa,a=new ka,o=new H;n.pivotTables.forEach(n=>{let s=n.tableNumber;if(n.isLoaded){if(n.cacheDefinition){let e=i.toXml(n.cacheDefinition);t.append(e,{name:tr(s)})}if(n.cacheRecords){let e=r.toXml(n.cacheRecords);t.append(e,{name:rr(s)})}}else{let e=r.toXml(n);t.append(e,{name:rr(s)}),e=i.toXml(n),t.append(e,{name:tr(s)})}let c=o.toXml([{Id:`rId1`,Type:e.RelType.PivotCacheRecords,Target:ir(s)}]);t.append(c,{name:nr(s)}),c=a.toXml(n),t.append(c,{name:ar(s)}),c=o.toXml([{Id:`rId1`,Type:e.RelType.PivotCacheDefinition,Target:sr(s)}]),t.append(c,{name:or(s)})})}_finalize(e){return new Promise((t,n)=>{e.on(`finish`,()=>{t(this)}),e.on(`error`,n),e.finalize()})}prepareModel(e,t){e.creator=e.creator||`ExcelTS`,e.lastModifiedBy=e.lastModifiedBy||`ExcelTS`,e.created=e.created||new Date,e.modified=e.modified||new Date,e.useSharedStrings=t.useSharedStrings===void 0?!0:t.useSharedStrings,e.useStyles=t.useStyles===void 0?!0:t.useStyles,e.sharedStrings=new un,e.styles=e.useStyles?new V(!0):new V.Mock;let n=new Lr,r=new $i;n.prepare(e);let i={sharedStrings:e.sharedStrings,styles:e.styles,date1904:e.properties.date1904,drawingsCount:0,media:e.media};i.drawings=e.drawings=[],i.commentRefs=e.commentRefs=[],i.formControlRefs=e.formControlRefs=[];let a=0;e.tables=[],e.worksheets.forEach(t=>{t.tables.forEach(t=>{a++,t.target=`table${a}.xml`,t.id=a,e.tables.push(t)}),r.prepare(t,i)}),e.hasCheckboxes=e.styles.hasCheckboxes}};let X=Array.from({length:60},(e,t)=>t<10?`0${t}`:`${t}`),Z=(e,t)=>(e.charCodeAt(t)-48)*10+e.charCodeAt(t+1)-48|0,Dc=(e,t)=>(e.charCodeAt(t)-48)*1e3+(e.charCodeAt(t+1)-48)*100+(e.charCodeAt(t+2)-48)*10+e.charCodeAt(t+3)-48|0,Oc=[0,31,29,31,30,31,30,31,31,30,31,30,31];function kc(e,t,n){if(t<1||t>12||n<1||n>Oc[t])return null;let r=new Date(e,t-1,n);return r.getMonth()===t-1?r:null}function Ac(e,t,n,r,i,a){return t<1||t>12||n<1||n>Oc[t]||r>23||i>59||a>59?null:new Date(e,t-1,n,r,i,a)}function jc(e){return e.charCodeAt(4)!==45||e.charCodeAt(7)!==45?null:kc(Dc(e,0),Z(e,5),Z(e,8))}function Mc(e){return e.charCodeAt(4)!==45||e.charCodeAt(7)!==45||e.charCodeAt(10)!==84||e.charCodeAt(13)!==58||e.charCodeAt(16)!==58?null:Ac(Dc(e,0),Z(e,5),Z(e,8),Z(e,11),Z(e,14),Z(e,17))}function Nc(e){return e.charCodeAt(4)!==45||e.charCodeAt(7)!==45||e.charCodeAt(10)!==32||e.charCodeAt(13)!==58||e.charCodeAt(16)!==58?null:Ac(Dc(e,0),Z(e,5),Z(e,8),Z(e,11),Z(e,14),Z(e,17))}function Pc(e){if(e.charCodeAt(19)!==90)return null;let t=new Date(e);return isNaN(t.getTime())?null:t}function Fc(e){if(e.charCodeAt(19)!==46||e.charCodeAt(23)!==90)return null;let t=new Date(e);return isNaN(t.getTime())?null:t}function Ic(e){let t=e.charCodeAt(19);if(t!==43&&t!==45)return null;let n=new Date(e);return isNaN(n.getTime())?null:n}function Lc(e){if(e.charCodeAt(19)!==46)return null;let t=e.charCodeAt(23);if(t!==43&&t!==45)return null;let n=new Date(e);return isNaN(n.getTime())?null:n}function Rc(e){let t=e.charCodeAt(2);return t!==45&&t!==47||e.charCodeAt(5)!==t?null:kc(Dc(e,6),Z(e,0),Z(e,3))}function zc(e){let t=e.charCodeAt(2);return t!==45&&t!==47||e.charCodeAt(5)!==t?null:kc(Dc(e,6),Z(e,3),Z(e,0))}function Bc(e){let t=e.charCodeAt(2);return t!==45&&t!==47||e.charCodeAt(5)!==t||e.charCodeAt(10)!==32||e.charCodeAt(13)!==58||e.charCodeAt(16)!==58?null:Ac(Dc(e,6),Z(e,0),Z(e,3),Z(e,11),Z(e,14),Z(e,17))}function Vc(e){let t=e.charCodeAt(2);return t!==45&&t!==47||e.charCodeAt(5)!==t||e.charCodeAt(10)!==32||e.charCodeAt(13)!==58||e.charCodeAt(16)!==58?null:Ac(Dc(e,6),Z(e,3),Z(e,0),Z(e,11),Z(e,14),Z(e,17))}let Hc={"YYYY-MM-DD":jc,"YYYY-MM-DD[T]HH:mm:ss":Mc,"YYYY-MM-DD HH:mm:ss":Nc,"YYYY-MM-DD[T]HH:mm:ssZ":e=>e.length===20?Pc(e):e.length===25?Ic(e):null,"YYYY-MM-DD[T]HH:mm:ss.SSSZ":e=>e.length===24?Fc(e):e.length===29?Lc(e):null,"MM-DD-YYYY":Rc,"MM-DD-YYYY HH:mm:ss":Bc,"MM/DD/YYYY HH:mm:ss":Bc,"DD-MM-YYYY":zc,"DD-MM-YYYY HH:mm:ss":Vc,"DD/MM/YYYY HH:mm:ss":Vc},Uc=[[10,[jc]],[19,[Mc,Nc]],[20,[Pc]],[24,[Fc]],[25,[Ic]],[29,[Lc]]];var Wc=class e{constructor(e){this.parse=e=>{if(!e)return null;let t=e.trim();if(!t)return null;if(this.single)return this.fn0(t);for(let e=0,n=this.fns.length;e<n;e++){let n=this.fns[e](t);if(n)return n}return null},this.fns=e,this.single=e.length===1,this.fn0=e[0]}static create(t){return new e(t.map(e=>Hc[e]).filter(Boolean))}static iso(){let t=[];for(let[,e]of Uc)t.push(...e);return new e(t)}parseAll(e){let t=e.length,n=Array(t),r=this.parse;for(let i=0;i<t;i++)n[i]=r(e[i]);return n}parseValid(e){let t=[],n=this.parse;for(let r=0,i=e.length;r<i;r++){let i=n(e[r]);i&&t.push(i)}return t}};function Gc(e){let t=-e.getTimezoneOffset(),n=t>=0?`+`:`-`,r=Math.abs(t)/60|0,i=Math.abs(t)%60;return`${n}${X[r]}:${X[i]}`}var Kc=class e{constructor(e){this.format=e=>this.fn(e),this.fn=e}static iso(t=!1){return t?new e(e=>{if(!(e instanceof Date))return``;let t=e.getTime();if(t!==t)return``;let n=e.getUTCFullYear(),r=e.getUTCMonth()+1,i=e.getUTCDate(),a=e.getUTCHours(),o=e.getUTCMinutes(),s=e.getUTCSeconds(),c=e.getUTCMilliseconds();return`${n}-${X[r]}-${X[i]}T${X[a]}:${X[o]}:${X[s]}.${c<10?`00`+c:c<100?`0`+c:c}Z`}):new e(e=>{if(!(e instanceof Date))return``;let t=e.getTime();if(t!==t)return``;let n=e.getFullYear(),r=e.getMonth()+1,i=e.getDate(),a=e.getHours(),o=e.getMinutes(),s=e.getSeconds(),c=e.getMilliseconds();return`${n}-${X[r]}-${X[i]}T${X[a]}:${X[o]}:${X[s]}.${c<10?`00`+c:c<100?`0`+c:c}${Gc(e)}`})}static create(t,n){let r=n?.utc??!1;if(t===`YYYY-MM-DD`)return r?new e(e=>{if(!(e instanceof Date))return``;let t=e.getTime();return t===t?`${e.getUTCFullYear()}-${X[e.getUTCMonth()+1]}-${X[e.getUTCDate()]}`:``}):new e(e=>{if(!(e instanceof Date))return``;let t=e.getTime();return t===t?`${e.getFullYear()}-${X[e.getMonth()+1]}-${X[e.getDate()]}`:``});if(t===`YYYY-MM-DD HH:mm:ss`)return r?new e(e=>{if(!(e instanceof Date))return``;let t=e.getTime();return t===t?`${e.getUTCFullYear()}-${X[e.getUTCMonth()+1]}-${X[e.getUTCDate()]} ${X[e.getUTCHours()]}:${X[e.getUTCMinutes()]}:${X[e.getUTCSeconds()]}`:``}):new e(e=>{if(!(e instanceof Date))return``;let t=e.getTime();return t===t?`${e.getFullYear()}-${X[e.getMonth()+1]}-${X[e.getDate()]} ${X[e.getHours()]}:${X[e.getMinutes()]}:${X[e.getSeconds()]}`:``});if(t===`MM-DD-YYYY`||t===`MM/DD/YYYY`){let n=t.charAt(2);return r?new e(e=>{if(!(e instanceof Date))return``;let t=e.getTime();return t===t?`${X[e.getUTCMonth()+1]}${n}${X[e.getUTCDate()]}${n}${e.getUTCFullYear()}`:``}):new e(e=>{if(!(e instanceof Date))return``;let t=e.getTime();return t===t?`${X[e.getMonth()+1]}${n}${X[e.getDate()]}${n}${e.getFullYear()}`:``})}if(t===`DD-MM-YYYY`||t===`DD/MM/YYYY`){let n=t.charAt(2);return r?new e(e=>{if(!(e instanceof Date))return``;let t=e.getTime();return t===t?`${X[e.getUTCDate()]}${n}${X[e.getUTCMonth()+1]}${n}${e.getUTCFullYear()}`:``}):new e(e=>{if(!(e instanceof Date))return``;let t=e.getTime();return t===t?`${X[e.getDate()]}${n}${X[e.getMonth()+1]}${n}${e.getFullYear()}`:``})}return e.createGeneric(t,r)}static createGeneric(t,n){let r=[],i=t.replace(/\[([^\]]*)\]/g,(e,t)=>(r.push(t),`\x00${r.length-1}\x00`)),a=i.includes(`YYYY`),o=i.includes(`SSS`),s=i.includes(`MM`),c=i.includes(`DD`),l=i.includes(`HH`),u=i.includes(`mm`),d=i.includes(`ss`),f=i.includes(`Z`);return new e(e=>{if(!(e instanceof Date))return``;let t=e.getTime();if(t!==t)return``;let p=i;if(a&&(p=p.replace(/YYYY/g,String(n?e.getUTCFullYear():e.getFullYear()))),o){let t=n?e.getUTCMilliseconds():e.getMilliseconds();p=p.replace(/SSS/g,t<10?`00${t}`:t<100?`0${t}`:String(t))}return s&&(p=p.replace(/MM/g,X[n?e.getUTCMonth()+1:e.getMonth()+1])),c&&(p=p.replace(/DD/g,X[n?e.getUTCDate():e.getDate()])),l&&(p=p.replace(/HH/g,X[n?e.getUTCHours():e.getHours()])),u&&(p=p.replace(/mm/g,X[n?e.getUTCMinutes():e.getMinutes()])),d&&(p=p.replace(/ss/g,X[n?e.getUTCSeconds():e.getSeconds()])),f&&(p=p.replace(/Z/g,n?`Z`:Gc(e))),r.length&&(p=p.replace(/\x00(\d+)\x00/g,(e,t)=>r[+t])),p})}formatAll(e){let t=e.length,n=Array(t),r=this.fn;for(let i=0;i<t;i++)n[i]=r(e[i]);return n}};function qc(e,t){return t===`,`?String(e).split(`.`).join(`,`):String(e)}function Jc(e,t){if(t!==`,`)return Number(e);let n=e.trim();return/^-?\d+(,\d+)?([eE][+-]?\d+)?$/.test(n)?Number(n.replace(`,`,`.`)):Number(e)}function Yc(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function Xc(e){return e.length===1}function Zc(e){return e.length===1}function Qc(e){let t=new Set,n=[];for(let r of e)r!=null&&(t.has(r)&&n.push(r),t.add(r));if(n.length>0)throw Error(`Duplicate headers found ${JSON.stringify(n)}`)}function $c(e,t={}){let{delimiter:n=`,`,quote:r=`"`,escape:i=`"`,skipEmptyLines:a=!1,ignoreEmpty:o=!1,trim:s=!1,ltrim:c=!1,rtrim:l=!1,headers:u=!1,renameHeaders:d=!1,comment:f,maxRows:p,skipLines:m=0,skipRows:h=0,strictColumnHandling:g=!1,discardUnmappedColumns:_=!1,transform:v,validate:y}=t,ee=a||o,b=r!==null&&r!==!1,te=b?String(r):``,x=i!==null&&i!==!1?String(i):``,ne=[],S=[],C=[],w=``,re=!1,T=0,ie=0,ae=0,oe=0,E=null,se=0,D=!1,ce=!1;u===!0?D=!0:Array.isArray(u)?(E=u,se=u.filter(e=>e!=null).length,Qc(u),D=!0,d||(ce=!0)):typeof u==`function`&&(D=!0);let O=s||c&&l?e=>e.trim():c?e=>e.trimStart():l?e=>e.trimEnd():e=>e,le=e=>{if(D&&!ce){if(typeof u==`function`){let t=u(e);Qc(t),E=t}else Array.isArray(u)||(Qc(e),E=e);return se=E.filter(e=>e!=null).length,ce=!0,!1}if(oe<h)return oe++,!1;if(E&&E.length>0){let t=se,n=e.length;if(n>t){if(g&&!_)return S.push({row:e,reason:`Column header mismatch expected: ${t} columns got: ${n}`}),!1;e.length=E.length}else if(n<t){if(g)return S.push({row:e,reason:`Column header mismatch expected: ${t} columns got: ${n}`}),!1;for(;e.length<E.length;)e.push(``)}}return!0},ue=e.length;for(;T<ue;){let t=e[T];if(re&&b)x&&t===x&&e[T+1]===te?(w+=te,T+=2):t===te?(re=!1,T++):t===`\r`?(e[T+1]===`
|
|
129
|
-
`||(
|
|
130
|
-
`),
|
|
131
|
-
`||t===`\r`){if(t===`\r`&&e[
|
|
132
|
-
`&&
|
|
133
|
-
`,alwaysQuote:o=!1,quoteColumns:s=!1,quoteHeaders:c=!1,headers:l,writeHeaders:u,writeBOM:d=!1,includeEndRowDelimiter:f=!1,alwaysWriteHeaders:p=!1,transform:m,decimalSeparator:h=`.`}=t,g=u??!0,_=r!==!1&&r!==null,v=_?String(r):``,y=i!==void 0&&i!==!1&&i!==null?String(i):v,ee=_?RegExp(`[${
|
|
127
|
+
`}var Ua=class extends I{constructor(e){super(),this.model=e||{type:`note`,note:{texts:[]},ref:``}}get tag(){return`r`}get richTextXform(){return this._richTextXform||=new mn,this._richTextXform}render(e,t){let n=t||this.model;e.openNode(`comment`,{ref:n.ref,authorId:0}),e.openNode(`text`),n&&n.note&&n.note.texts&&n.note.texts.forEach(t=>{this.richTextXform.render(e,t)}),e.closeNode(),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`comment`:return this.model={type:`note`,note:{texts:[]},...e.attributes},!0;case`r`:return this.parser=this.richTextXform,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){switch(e){case`comment`:return!1;case`r`:return this.model.note.texts.push(this.parser.model),this.parser=void 0,!0;default:return this.parser&&this.parser.parseClose(e),!0}}},Wa=class e extends I{constructor(){super(),this.map={comment:new Ua},this.model={comments:[]}}render(t,n){let r=n||this.model;t.openXml(P.StdDocAttributes),t.openNode(`comments`,e.COMMENTS_ATTRIBUTES),t.openNode(`authors`),t.leafNode(`author`,null,`Author`),t.closeNode(),t.openNode(`commentList`),r.comments.forEach(e=>{this.map.comment.render(t,e)}),t.closeNode(),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`commentList`:return this.model={comments:[]},!0;case`comment`:return this.parser=this.map.comment,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){switch(e){case`commentList`:return!1;case`comment`:return this.model.comments.push(this.parser.model),this.parser=void 0,!0;default:return this.parser&&this.parser.parseClose(e),!0}}static{this.COMMENTS_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`}}},Ga=class extends I{constructor(){super(),this.model={}}get tag(){return`v:textbox`}conversionUnit(e,t,n){return`${(parseFloat(e.toString())*t).toFixed(2)}${n}`}reverseConversionUnit(e){return(e||``).split(`,`).map(e=>Number(parseFloat(this.conversionUnit(parseFloat(e),.1,``)).toFixed(2)))}render(e,t){let n={style:`mso-direction-alt:auto`};if(t&&t.note){let{inset:e}=t.note&&t.note.margins||{};Array.isArray(e)&&(e=e.map(e=>this.conversionUnit(e,10,`mm`)).join(`,`)),e&&(n.inset=e)}e.openNode(`v:textbox`,n),e.leafNode(`div`,{style:`text-align:left`}),e.closeNode()}parseOpen(e){switch(e.name){case this.tag:return this.model={inset:this.reverseConversionUnit(e.attributes.inset)},!0;default:return!0}}parseText(){}parseClose(e){switch(e){case this.tag:return!1;default:return!0}}},Ka=class extends I{constructor(){super(),this.text=``}get tag(){return`x:Anchor`}getAnchorRect(e){let t=Math.floor(e.left),n=Math.floor((e.left-t)*68),r=Math.floor(e.top),i=Math.floor((e.top-r)*18),a=Math.floor(e.right),o=Math.floor((e.right-a)*68),s=Math.floor(e.bottom);return[t,n,r,i,a,o,s,Math.floor((e.bottom-s)*18)]}getDefaultRect(e){let t=e.col,n=Math.max(e.row-2,0);return[t,6,n,14,t+2,2,n+4,16]}render(e,t){let n=t.anchor?this.getAnchorRect(t.anchor):this.getDefaultRect(t.refAddress);e.leafNode(`x:Anchor`,null,n.join(`, `))}parseOpen(e){switch(e.name){case this.tag:return this.text=``,!0;default:return!1}}parseText(e){this.text=e}parseClose(){return!1}},qa=class extends I{constructor(e){super(),this._model=e||{},this.text=``}get tag(){return this._model&&this._model.tag||``}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(e){switch(e.name){case this.tag:return this.text=``,!0;default:return!1}}parseText(e){this.text=e}parseClose(){return!1}},Ja=class extends I{constructor(e){super(),this._model=e||{},this.model={}}get tag(){return this._model&&this._model.tag||``}render(e,t,n){(n&&t===n[2]||n&&this.tag===`x:SizeWithCells`&&t===n[1])&&e.leafNode(this.tag)}parseOpen(e){switch(e.name){case this.tag:return this.model={},this.model[this.tag]=!0,!0;default:return!1}}parseText(){}parseClose(){return!1}};let Ya=[`twoCells`,`oneCells`,`absolute`];var Xa=class extends I{constructor(){super(),this.map={"x:Anchor":new Ka,"x:Locked":new qa({tag:`x:Locked`}),"x:LockText":new qa({tag:`x:LockText`}),"x:SizeWithCells":new Ja({tag:`x:SizeWithCells`}),"x:MoveWithCells":new Ja({tag:`x:MoveWithCells`})},this.model={anchor:[],protection:{},editAs:``}}get tag(){return`x:ClientData`}render(e,t){let{protection:n,editAs:r}=t.note;e.openNode(this.tag,{ObjectType:`Note`}),this.map[`x:MoveWithCells`].render(e,r,Ya),this.map[`x:SizeWithCells`].render(e,r,Ya),this.map[`x:Anchor`].render(e,t),this.map[`x:Locked`].render(e,n.locked),e.leafNode(`x:AutoFill`,null,`False`),this.map[`x:LockText`].render(e,n.lockText),e.leafNode(`x:Row`,null,t.refAddress.row-1),e.leafNode(`x:Column`,null,t.refAddress.col-1),e.closeNode()}parseOpen(e){switch(e.name){case this.tag:this.reset(),this.model={anchor:[],protection:{},editAs:``};break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.normalizeModel(),!1;default:return!0}}normalizeModel(){let e=Object.assign({},this.map[`x:MoveWithCells`].model,this.map[`x:SizeWithCells`].model),t=Object.keys(e).length;this.model.editAs=Ya[t],this.model.anchor=this.map[`x:Anchor`].text,this.model.protection.locked=this.map[`x:Locked`].text,this.model.protection.lockText=this.map[`x:LockText`].text}},Za=class e extends I{constructor(){super(),this.map={"v:textbox":new Ga,"x:ClientData":new Xa}}get tag(){return`v:shape`}render(t,n,r){t.openNode(`v:shape`,e.V_SHAPE_ATTRIBUTES(n,r||0)),t.leafNode(`v:fill`,{color2:`infoBackground [80]`}),t.leafNode(`v:shadow`,{color:`none [81]`,obscured:`t`}),t.leafNode(`v:path`,{"o:connecttype":`none`}),this.map[`v:textbox`].render(t,n),this.map[`x:ClientData`].render(t,n),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset(),this.model={margins:{insetmode:e.attributes[`o:insetmode`]},anchor:``,editAs:``,protection:{}};break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model.margins.inset=this.map[`v:textbox`].model&&this.map[`v:textbox`].model.inset,this.model.protection=this.map[`x:ClientData`].model&&this.map[`x:ClientData`].model.protection,this.model.anchor=this.map[`x:ClientData`].model&&this.map[`x:ClientData`].model.anchor,this.model.editAs=this.map[`x:ClientData`].model&&this.map[`x:ClientData`].model.editAs,!1;default:return!0}}static{this.V_SHAPE_ATTRIBUTES=(e,t)=>({id:`_x0000_s${1025+t}`,type:`#_x0000_t202`,style:`position:absolute; margin-left:105.3pt;margin-top:10.5pt;width:97.8pt;height:59.1pt;z-index:1;visibility:hidden`,fillcolor:`infoBackground [80]`,strokecolor:`none [81]`,"o:insetmode":e.note.margins&&e.note.margins.insetmode})}},Qa=class e extends I{constructor(){super(),this.map={"v:shape":new Za},this.model={comments:[],formControls:[]}}get tag(){return`xml`}render(t,n){let r=n||this.model,i=r.comments&&r.comments.length>0,a=r.formControls&&r.formControls.length>0;if(t.openXml(P.StdDocAttributes),t.openNode(this.tag,e.DRAWING_ATTRIBUTES),t.openNode(`o:shapelayout`,{"v:ext":`edit`}),t.leafNode(`o:idmap`,{"v:ext":`edit`,data:1}),t.closeNode(),i&&(t.openNode(`v:shapetype`,{id:`_x0000_t202`,coordsize:`21600,21600`,"o:spt":202,path:`m,l,21600r21600,l21600,xe`}),t.leafNode(`v:stroke`,{joinstyle:`miter`}),t.leafNode(`v:path`,{gradientshapeok:`t`,"o:connecttype":`rect`}),t.closeNode()),a&&(t.openNode(`v:shapetype`,{id:`_x0000_t201`,coordsize:`21600,21600`,"o:spt":`201`,path:`m,l,21600r21600,l21600,xe`}),t.leafNode(`v:stroke`,{joinstyle:`miter`}),t.leafNode(`v:path`,{shadowok:`f`,"o:extrusionok":`f`,strokeok:`f`,fillok:`f`,"o:connecttype":`rect`}),t.leafNode(`o:lock`,{"v:ext":`edit`,shapetype:`t`}),t.closeNode()),i){let e=r.comments;for(let n=0;n<e.length;n++)this.map[`v:shape`].render(t,e[n],n)}if(a)for(let e of r.formControls)this._renderCheckboxShape(t,e);t.closeNode()}_renderCheckboxShape(e,t){let n={id:`_x0000_s${t.shapeId}`,type:`#_x0000_t201`,style:Se.getVmlStyle(t),"o:insetmode":`auto`,fillcolor:`buttonFace [67]`,strokecolor:`windowText [64]`,"o:preferrelative":`t`,filled:`f`,stroked:`f`};e.openNode(`v:shape`,n),e.leafNode(`v:fill`,{"o:detectmouseclick":`t`}),e.leafNode(`o:lock`,{"v:ext":`edit`,text:`t`}),t.text&&(e.openNode(`v:textbox`,{style:`mso-direction-alt:auto`,"o:singleclick":`t`}),e.openNode(`div`,{style:`text-align:left`}),e.openNode(`font`,{face:`Tahoma`,size:`160`,color:`auto`}),e.writeText(t.text),e.closeNode(),e.closeNode(),e.closeNode()),e.openNode(`x:ClientData`,{ObjectType:`Checkbox`}),e.leafNode(`x:MoveWithCells`),e.leafNode(`x:SizeWithCells`),e.openNode(`x:Anchor`),e.writeText(Se.getVmlAnchor(t)),e.closeNode(),e.leafNode(`x:Locked`,void 0,`False`),e.leafNode(`x:LockText`,void 0,`True`),e.leafNode(`x:PrintObject`,void 0,t.print?`True`:`False`),e.leafNode(`x:AutoFill`,void 0,`False`),e.leafNode(`x:AutoLine`,void 0,`False`),e.leafNode(`x:TextHAlign`,void 0,`Left`),e.leafNode(`x:TextVAlign`,void 0,`Center`),t.link&&e.leafNode(`x:FmlaLink`,void 0,t.link),t.noThreeD&&e.leafNode(`x:NoThreeD`),e.leafNode(`x:Checked`,void 0,String(Se.getVmlCheckedValue(t))),e.leafNode(`x:Row`,void 0,String(t.tl.row)),e.leafNode(`x:Column`,void 0,String(t.tl.col)),e.closeNode(),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset(),this.model={comments:[],formControls:[]};break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.comments.push(this.parser.model),this.parser=void 0),!0;switch(e){case this.tag:return!1;default:return!0}}static{this.DRAWING_ATTRIBUTES={"xmlns:v":`urn:schemas-microsoft-com:vml`,"xmlns:o":`urn:schemas-microsoft-com:office:office`,"xmlns:x":`urn:schemas-microsoft-com:office:excel`}}},$a=class extends I{_checkedToXmlValue(e){switch(e){case`Checked`:return`1`;case`Mixed`:return`2`;case`Unchecked`:default:return`0`}}get tag(){return`formControlPr`}render(e,t){let n=t||this.model,r={xmlns:`http://schemas.microsoft.com/office/spreadsheetml/2009/9/main`,objectType:`CheckBox`,checked:this._checkedToXmlValue(n.checked),lockText:`1`};n.link&&(r.fmlaLink=n.link),n.noThreeD&&(r.noThreeD=`1`),e.openXml({version:`1.0`,encoding:`UTF-8`,standalone:`yes`}),e.leafNode(this.tag,r)}toXml(e){let t=new P;return this.render(t,e),t.xml}parseOpen(){return!0}parseText(){}parseClose(){return!1}};let eo=`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
128
|
+
<a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office Theme"> <a:themeElements> <a:clrScheme name="Office"> <a:dk1> <a:sysClr val="windowText" lastClr="000000"/> </a:dk1> <a:lt1> <a:sysClr val="window" lastClr="FFFFFF"/> </a:lt1> <a:dk2> <a:srgbClr val="1F497D"/> </a:dk2> <a:lt2> <a:srgbClr val="EEECE1"/> </a:lt2> <a:accent1> <a:srgbClr val="4F81BD"/> </a:accent1> <a:accent2> <a:srgbClr val="C0504D"/> </a:accent2> <a:accent3> <a:srgbClr val="9BBB59"/> </a:accent3> <a:accent4> <a:srgbClr val="8064A2"/> </a:accent4> <a:accent5> <a:srgbClr val="4BACC6"/> </a:accent5> <a:accent6> <a:srgbClr val="F79646"/> </a:accent6> <a:hlink> <a:srgbClr val="0000FF"/> </a:hlink> <a:folHlink> <a:srgbClr val="800080"/> </a:folHlink> </a:clrScheme> <a:fontScheme name="Office"> <a:majorFont> <a:latin typeface="Cambria"/> <a:ea typeface=""/> <a:cs typeface=""/> <a:font script="Jpan" typeface="MS Pゴシック"/> <a:font script="Hang" typeface="맑은 고딕"/> <a:font script="Hans" typeface="宋体"/> <a:font script="Hant" typeface="新細明體"/> <a:font script="Arab" typeface="Times New Roman"/> <a:font script="Hebr" typeface="Times New Roman"/> <a:font script="Thai" typeface="Tahoma"/> <a:font script="Ethi" typeface="Nyala"/> <a:font script="Beng" typeface="Vrinda"/> <a:font script="Gujr" typeface="Shruti"/> <a:font script="Khmr" typeface="MoolBoran"/> <a:font script="Knda" typeface="Tunga"/> <a:font script="Guru" typeface="Raavi"/> <a:font script="Cans" typeface="Euphemia"/> <a:font script="Cher" typeface="Plantagenet Cherokee"/> <a:font script="Yiii" typeface="Microsoft Yi Baiti"/> <a:font script="Tibt" typeface="Microsoft Himalaya"/> <a:font script="Thaa" typeface="MV Boli"/> <a:font script="Deva" typeface="Mangal"/> <a:font script="Telu" typeface="Gautami"/> <a:font script="Taml" typeface="Latha"/> <a:font script="Syrc" typeface="Estrangelo Edessa"/> <a:font script="Orya" typeface="Kalinga"/> <a:font script="Mlym" typeface="Kartika"/> <a:font script="Laoo" typeface="DokChampa"/> <a:font script="Sinh" typeface="Iskoola Pota"/> <a:font script="Mong" typeface="Mongolian Baiti"/> <a:font script="Viet" typeface="Times New Roman"/> <a:font script="Uigh" typeface="Microsoft Uighur"/> <a:font script="Geor" typeface="Sylfaen"/> </a:majorFont> <a:minorFont> <a:latin typeface="Calibri"/> <a:ea typeface=""/> <a:cs typeface=""/> <a:font script="Jpan" typeface="MS Pゴシック"/> <a:font script="Hang" typeface="맑은 고딕"/> <a:font script="Hans" typeface="宋体"/> <a:font script="Hant" typeface="新細明體"/> <a:font script="Arab" typeface="Arial"/> <a:font script="Hebr" typeface="Arial"/> <a:font script="Thai" typeface="Tahoma"/> <a:font script="Ethi" typeface="Nyala"/> <a:font script="Beng" typeface="Vrinda"/> <a:font script="Gujr" typeface="Shruti"/> <a:font script="Khmr" typeface="DaunPenh"/> <a:font script="Knda" typeface="Tunga"/> <a:font script="Guru" typeface="Raavi"/> <a:font script="Cans" typeface="Euphemia"/> <a:font script="Cher" typeface="Plantagenet Cherokee"/> <a:font script="Yiii" typeface="Microsoft Yi Baiti"/> <a:font script="Tibt" typeface="Microsoft Himalaya"/> <a:font script="Thaa" typeface="MV Boli"/> <a:font script="Deva" typeface="Mangal"/> <a:font script="Telu" typeface="Gautami"/> <a:font script="Taml" typeface="Latha"/> <a:font script="Syrc" typeface="Estrangelo Edessa"/> <a:font script="Orya" typeface="Kalinga"/> <a:font script="Mlym" typeface="Kartika"/> <a:font script="Laoo" typeface="DokChampa"/> <a:font script="Sinh" typeface="Iskoola Pota"/> <a:font script="Mong" typeface="Mongolian Baiti"/> <a:font script="Viet" typeface="Arial"/> <a:font script="Uigh" typeface="Microsoft Uighur"/> <a:font script="Geor" typeface="Sylfaen"/> </a:minorFont> </a:fontScheme> <a:fmtScheme name="Office"> <a:fillStyleLst> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="50000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="35000"> <a:schemeClr val="phClr"> <a:tint val="37000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:tint val="15000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:lin ang="16200000" scaled="1"/> </a:gradFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="100000"/> <a:shade val="100000"/> <a:satMod val="130000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:tint val="50000"/> <a:shade val="100000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:lin ang="16200000" scaled="0"/> </a:gradFill> </a:fillStyleLst> <a:lnStyleLst> <a:ln w="9525" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"> <a:shade val="95000"/> <a:satMod val="105000"/> </a:schemeClr> </a:solidFill> <a:prstDash val="solid"/> </a:ln> <a:ln w="25400" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:prstDash val="solid"/> </a:ln> <a:ln w="38100" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:prstDash val="solid"/> </a:ln> </a:lnStyleLst> <a:effectStyleLst> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="20000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="38000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> </a:effectStyle> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="35000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> </a:effectStyle> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="35000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> <a:scene3d> <a:camera prst="orthographicFront"> <a:rot lat="0" lon="0" rev="0"/> </a:camera> <a:lightRig rig="threePt" dir="t"> <a:rot lat="0" lon="0" rev="1200000"/> </a:lightRig> </a:scene3d> <a:sp3d> <a:bevelT w="63500" h="25400"/> </a:sp3d> </a:effectStyle> </a:effectStyleLst> <a:bgFillStyleLst> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="40000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> <a:gs pos="40000"> <a:schemeClr val="phClr"> <a:tint val="45000"/> <a:shade val="99000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:shade val="20000"/> <a:satMod val="255000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:path path="circle"> <a:fillToRect l="50000" t="-80000" r="50000" b="180000"/> </a:path> </a:gradFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="80000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:shade val="30000"/> <a:satMod val="200000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:path path="circle"> <a:fillToRect l="50000" t="50000" r="50000" b="50000"/> </a:path> </a:gradFill> </a:bgFillStyleLst> </a:fmtScheme> </a:themeElements> <a:objectDefaults> <a:spDef> <a:spPr/> <a:bodyPr/> <a:lstStyle/> <a:style> <a:lnRef idx="1"> <a:schemeClr val="accent1"/> </a:lnRef> <a:fillRef idx="3"> <a:schemeClr val="accent1"/> </a:fillRef> <a:effectRef idx="2"> <a:schemeClr val="accent1"/> </a:effectRef> <a:fontRef idx="minor"> <a:schemeClr val="lt1"/> </a:fontRef> </a:style> </a:spDef> <a:lnDef> <a:spPr/> <a:bodyPr/> <a:lstStyle/> <a:style> <a:lnRef idx="2"> <a:schemeClr val="accent1"/> </a:lnRef> <a:fillRef idx="0"> <a:schemeClr val="accent1"/> </a:fillRef> <a:effectRef idx="1"> <a:schemeClr val="accent1"/> </a:effectRef> <a:fontRef idx="minor"> <a:schemeClr val="tx1"/> </a:fontRef> </a:style> </a:lnDef> </a:objectDefaults> <a:extraClrSchemeLst/> </a:theme>`,to=new TextEncoder;var no=class{constructor(e){this._buf=new Uint8Array(e&&e.size||16384),this._inPos=0,this._buffer=void 0}get length(){return this._inPos}get capacity(){return this._buf.length}get buffer(){return this._buf}toBuffer(){return this._buffer||=this._buf.slice(0,this._inPos),this._buffer}reset(e){e||=0,this._buffer=void 0,this._inPos=e}_grow(e){let t=this._buf.length*2;for(;t<e;)t*=2;let n=new Uint8Array(t);n.set(this._buf),this._buf=n}addText(e){this._buffer=void 0;let t=to.encode(e),n=this._inPos+t.length;n>this._buf.length-4&&this._grow(n),this._buf.set(t,this._inPos),this._inPos+=t.length}addStringBuf(e){e.length&&(this._buffer=void 0,this.length+e.length>this.capacity&&this._grow(this.length+e.length),this._buf.set(e._buf.subarray(0,e.length),this._inPos),this._inPos+=e.length)}},ro=class{constructor(e){this._data=e}get length(){return this.toBuffer().length}copy(e,t,n,r){let i=this.toBuffer(),a=Math.min(r,i.length-n);return e.set(i.subarray(n,n+a),t),a}toBuffer(){return this._buffer||=new TextEncoder().encode(this._data),this._buffer}},io=class{constructor(e){this._data=e}get length(){return this._data.length}copy(e,t,n,r){let i=this.toBuffer(),a=Math.min(r,i.length-n);return e.set(i.subarray(n,n+a),t),a}toBuffer(){return this._data.toBuffer()}},ao=class{constructor(e){this._data=e}get length(){return this._data.length}copy(e,t,n,r){let i=Math.min(r,this._data.length-n);return e.set(this._data.subarray(n,n+i),t),i}toBuffer(){return this._data}},oo=class{constructor(e){this.size=e,this.buffer=new Uint8Array(e),this.iRead=0,this.iWrite=0}toBuffer(){return this.iRead===0&&this.iWrite===this.size?this.buffer:this.buffer.slice(this.iRead,this.iWrite)}get length(){return this.iWrite-this.iRead}get eod(){return this.iRead===this.iWrite}get full(){return this.iWrite===this.size}read(e){if(e===0)return null;if(e===void 0||e>=this.length){let e=this.toBuffer();return this.iRead=this.iWrite,e}let t=this.buffer.slice(this.iRead,this.iRead+e);return this.iRead+=e,t}write(e,t,n){let r=Math.min(n,this.size-this.iWrite);return e.copy(this.buffer,this.iWrite,t,t+r),this.iWrite+=r,r}},so=class extends A{constructor(e){super(),this._writableStream=null,this._writableStreamWriter=null,this._asyncWriteQueue=Promise.resolve(),this.bufSize=e?.bufSize||1024*1024,this.buffers=[],this.batch=e?.batch||!1,this.corked=!1,this.paused=!1,this.encoding=null,this.pipes=[],this._ended=!1}get writable(){return!this._ended}toBuffer(){switch(this.buffers.length){case 0:return null;case 1:return this.buffers[0].toBuffer();default:{let e=this.buffers.reduce((e,t)=>e+t.length,0),t=new Uint8Array(e),n=0;for(let e of this.buffers){let r=e.toBuffer();t.set(r,n),n+=r.length}return t}}}_getWritableBuffer(){if(this.buffers.length){let e=this.buffers[this.buffers.length-1];if(!e.full)return e}let e=new oo(this.bufSize);return this.buffers.push(e),e}async _pipeChunk(e){let t=this.pipes.map(t=>new Promise(n=>{t.write(e.toBuffer(),()=>n())}));await Promise.all(t)}_writeToBuffers(e){let t=0,n=e.length;for(;t<n;){let r=this._getWritableBuffer();t+=r.write(e,t,n-t)}}async write(e,t,n){typeof t==`function`&&(n=t),n||=()=>{};let r;if(e instanceof no||e&&e.constructor?.name===`StringBuf`)r=new io(e);else if(e instanceof Uint8Array)r=new ao(e);else if(ArrayBuffer.isView(e))r=new ao(new Uint8Array(e.buffer,e.byteOffset,e.byteLength));else if(e instanceof ArrayBuffer)r=new ao(new Uint8Array(e));else if(typeof e==`string`)r=new ro(e);else throw Error(`Chunk must be one of type String, Uint8Array, ArrayBuffer or StringBuf.`);if(this.pipes.length)if(this.batch)for(this._writeToBuffers(r);!this.corked&&this.buffers.length>1;){let e=this.buffers.shift();await this._pipeChunk(new ao(e.toBuffer()))}else this.corked?(this._writeToBuffers(r),queueMicrotask(()=>n())):(await this._pipeChunk(r),n());else{let e=r.toBuffer();this.paused||this.emit(`data`,e),this._writableStreamWriter&&(this._asyncWriteQueue=this._asyncWriteQueue.then(()=>this._writableStreamWriter.write(e))),this._writeToBuffers(r),this.emit(`readable`)}return!0}cork(){this.corked=!0}_flush(){this.pipes.length&&(async()=>{for(;this.buffers.length;){let e=this.buffers.shift();await this._pipeChunk(new ao(e.toBuffer()))}})().catch(e=>this.emit(`error`,e))}uncork(){this.corked=!1,this._flush()}end(e,t,n){let r=e=>{if(e){n?.(e);return}this._ended=!0,this._flush(),this.pipes.forEach(e=>{typeof e.end==`function`&&e.end()}),this._writableStreamWriter?this._asyncWriteQueue.then(()=>this._writableStreamWriter.close()).then(()=>{this.emit(`finish`)}).catch(e=>{this.emit(`error`,e)}):this.emit(`finish`)};e?this.write(e,t,r):r()}read(e){if(e){let t=[],n=e;for(;n&&this.buffers.length&&!this.buffers[0].eod;){let e=this.buffers[0],r=e.read(n);r&&(n-=r.length,t.push(r)),e.eod&&e.full&&this.buffers.shift()}return co(t)}let t=this.buffers.map(e=>e.toBuffer()).filter(Boolean);return this.buffers=[],co(t)}readString(e){let t=e||this.encoding||`utf-8`,n=this.read();return typeof Buffer<`u`&&n instanceof Buffer?n.toString(t):new TextDecoder(t).decode(n)}setEncoding(e){this.encoding=e}pause(){this.paused=!0}resume(){this.paused=!1}isPaused(){return this.paused}pipe(e){return this.pipes.push(e),!this.paused&&this.buffers.length&&this.end(),e}pipeTo(e){this._writableStream=e,this._writableStreamWriter=e.getWriter()}unpipe(e){this.pipes=this.pipes.filter(t=>t!==e)}unshift(){throw Error(`Not Implemented`)}wrap(){throw Error(`Not Implemented`)}push(e){return e!==null&&this.write(e),!0}};function co(e){if(typeof Buffer<`u`&&typeof Buffer.concat==`function`)return Buffer.concat(e);if(e.length===0)return new Uint8Array;if(e.length===1)return e[0];let t=e.reduce((e,t)=>e+t.length,0),n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}let lo=null;function uo(){if(lo)return lo;let e=new Uint32Array(256);for(let t=0;t<256;t++){let n=t;for(let e=0;e<8;e++)n=n&1?3988292384^n>>>1:n>>>1;e[t]=n}return lo=e,e}function fo(e,t){let n=uo();for(let r=0;r<t.length;r++)e=n[(e^t[r])&255]^e>>>8;return e}function po(e){return(e^4294967295)>>>0}function mo(e){return po(fo(4294967295,e))}function ho(e){let t=0;for(let n=0;n<e.length;n++)t+=e[n].length;return t}function go(e){let t=e.length;if(t===0)return new Uint8Array;if(t===1)return e[0];let n=ho(e),r=new Uint8Array(n),i=0;for(let n=0;n<t;n++){let t=e[n];r.set(t,i),i+=t.length}return r}function _o(e,t,n=0){let r=e.length,i=t.length;if(i===0)return 0;if(i>r)return-1;let a=n|0;if(a<0&&(a=0),a>r-i)return-1;if(i===1)return e.indexOf(t[0],a);if(i===2){let n=t[0],i=t[1],o=r-2,s=e.indexOf(n,a);for(;s!==-1&&s<=o;){if(e[s+1]===i)return s;s=e.indexOf(n,s+1)}return-1}if(i===3){let n=t[0],i=t[1],o=t[2],s=r-3,c=e.indexOf(n,a);for(;c!==-1&&c<=s;){if(e[c+1]===i&&e[c+2]===o)return c;c=e.indexOf(n,c+1)}return-1}if(i===4){let n=t[0],i=t[1],o=t[2],s=t[3],c=r-4,l=e.indexOf(n,a);for(;l!==-1&&l<=c;){if(e[l+1]===i&&e[l+2]===o&&e[l+3]===s)return l;l=e.indexOf(n,l+1)}return-1}outer:for(let n=a;n<=r-i;n++){for(let r=0;r<i;r++)if(e[n+r]!==t[r])continue outer;return n}return-1}let vo=new Uint8Array(288);for(let e=0;e<=143;e++)vo[e]=8;for(let e=144;e<=255;e++)vo[e]=9;for(let e=256;e<=279;e++)vo[e]=7;for(let e=280;e<=287;e++)vo[e]=8;let yo=new Uint8Array(32).fill(5),bo=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258],xo=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],So=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],Co=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],wo=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function To(e,t){let n=new Uint16Array(16);for(let r=0;r<t;r++)e[r]>0&&n[e[r]]++;let r=new Uint16Array(16),i=0;for(let e=1;e<=15;e++)i=i+n[e-1]<<1,r[e]=i;let a={};for(let n=0;n<t;n++){let t=e[n];if(t===0)continue;i=r[t]++;let o=a;for(let e=t-1;e>=0;e--)i>>e&1?(o.right||={},o=o.right):(o.left||={},o=o.left);o.symbol=n}return a}var Eo=class{constructor(e){this.data=e,this.pos=0,this.bitBuf=0,this.bitCount=0}readBits(e){for(;this.bitCount<e;){if(this.pos>=this.data.length)throw Error(`Unexpected end of DEFLATE data`);this.bitBuf|=this.data[this.pos++]<<this.bitCount,this.bitCount+=8}let t=this.bitBuf&(1<<e)-1;return this.bitBuf>>=e,this.bitCount-=e,t}decodeSymbol(e){let t=e;for(;t.symbol===void 0;)if(t=this.readBits(1)===0?t.left:t.right,!t)throw Error(`Invalid Huffman code`);return t.symbol}alignToByte(){this.bitBuf=0,this.bitCount=0}readByte(){if(this.pos>=this.data.length)throw Error(`Unexpected end of data`);return this.data[this.pos++]}readUint16(){return this.readByte()|this.readByte()<<8}};function Do(e){let t=new Eo(e),n=[],r=!1;for(;!r;){r=t.readBits(1)===1;let e=t.readBits(2);if(e===0){t.alignToByte();let e=t.readUint16();if((e^t.readUint16())!==65535)throw Error(`Invalid stored block length`);for(let r=0;r<e;r++)n.push(t.readByte())}else if(e===1||e===2){let r,i;if(e===1)r=To(vo,288),i=To(yo,32);else{let e=t.readBits(5)+257,n=t.readBits(5)+1,a=t.readBits(4)+4,o=new Uint8Array(19);for(let e=0;e<a;e++)o[wo[e]]=t.readBits(3);let s=To(o,19),c=new Uint8Array(e+n),l=0;for(;l<e+n;){let e=t.decodeSymbol(s);if(e<16)c[l++]=e;else if(e===16){let e=t.readBits(2)+3,n=c[l-1];for(let t=0;t<e;t++)c[l++]=n}else if(e===17){let e=t.readBits(3)+3;for(let t=0;t<e;t++)c[l++]=0}else if(e===18){let e=t.readBits(7)+11;for(let t=0;t<e;t++)c[l++]=0}}r=To(c.subarray(0,e),e),i=To(c.subarray(e),n)}for(;;){let e=t.decodeSymbol(r);if(e<256)n.push(e);else if(e===256)break;else{let r=e-257,a=bo[r]+t.readBits(xo[r]),o=t.decodeSymbol(i),s=So[o]+t.readBits(Co[o]),c=n.length-s;for(let e=0;e<a;e++)n.push(n[c+e])}}}else throw Error(`Invalid DEFLATE block type: `+e)}return new Uint8Array(n)}function Oo(e){let t=65535,n=Math.ceil(e.length/t)||1,r=n*5+e.length,i=new Uint8Array(r),a=0,o=0;for(let r=0;r<n;r++){let s=r===n-1,c=Math.min(t,e.length-o);i[a++]=s?1:0,i[a++]=c&255,i[a++]=c>>8&255,i[a++]=~c&255,i[a++]=~c>>8&255,i.set(e.subarray(o,o+c),a),a+=c,o+=c}return i.subarray(0,a)}function ko(e){if(e.length===0)return new Uint8Array([3,0]);if(e.length<100)return Oo(e);let t=new Ao;t.writeBits(1,1),t.writeBits(1,2);let n=new Map,r=0;for(;r<e.length;){let i=0,a=0;if(r+2<e.length){let t=e[r]<<16|e[r+1]<<8|e[r+2],o=n.get(t);if(o!==void 0&&r-o<=32768){let t=r-o,n=0,s=Math.min(258,e.length-r);for(;n<s&&e[o+n]===e[r+n];)n++;n>=3&&(i=n,a=t)}n.set(t,r)}i>=3?(Po(t,i),Fo(t,a),r+=i):(No(t,e[r]),r++)}return No(t,256),t.finish()}var Ao=class{constructor(){this.chunks=[],this.buffer=[],this.bitBuf=0,this.bitCount=0}writeBits(e,t){for(this.bitBuf|=e<<this.bitCount,this.bitCount+=t;this.bitCount>=8;)this.buffer.push(this.bitBuf&255),this.bitBuf>>=8,this.bitCount-=8,this.buffer.length>=65536&&(this.chunks.push(new Uint8Array(this.buffer)),this.buffer=[])}writeBitsReverse(e,t){let n=0;for(let r=0;r<t;r++)n=n<<1|e>>r&1;this.writeBits(n,t)}finish(){return this.bitCount>0&&this.buffer.push(this.bitBuf&255),this.chunks.length===0?new Uint8Array(this.buffer):(this.chunks.push(new Uint8Array(this.buffer)),go(this.chunks))}};let jo=[],Mo=[];for(let e=0;e<=287;e++){let t,n;e<=143?(t=48+e,n=8):e<=255?(t=400+(e-144),n=9):e<=279?(t=e-256,n=7):(t=192+(e-280),n=8),jo[e]=[t,n],Mo[e]=n}function No(e,t){let[n,r]=jo[t];e.writeBitsReverse(n,r)}function Po(e,t){let n,r,i;if(t<=10)n=257+t-3,r=0,i=0;else if(t<=18){let e=t-11;n=265+Math.floor(e/2),r=1,i=e%2}else if(t<=34){let e=t-19;n=269+Math.floor(e/4),r=2,i=e%4}else if(t<=66){let e=t-35;n=273+Math.floor(e/8),r=3,i=e%8}else if(t<=130){let e=t-67;n=277+Math.floor(e/16),r=4,i=e%16}else if(t<=257){let e=t-131;n=281+Math.floor(e/32),r=5,i=e%32}else n=285,r=0,i=0;No(e,n),r>0&&e.writeBits(i,r)}function Fo(e,t){let n=[[1,0,0],[2,1,0],[3,2,0],[4,3,0],[6,4,1],[8,5,1],[12,6,2],[16,7,2],[24,8,3],[32,9,3],[48,10,4],[64,11,4],[96,12,5],[128,13,5],[192,14,6],[256,15,6],[384,16,7],[512,17,7],[768,18,8],[1024,19,8],[1536,20,9],[2048,21,9],[3072,22,10],[4096,23,10],[6144,24,11],[8192,25,11],[12288,26,12],[16384,27,12],[24576,28,13],[32768,29,13]],r=0,i=0,a=1;for(let[e,o,s]of n){if(t<=e){r=o,i=s;break}a=e+1}let o=t-a;e.writeBitsReverse(r,5),i>0&&e.writeBits(o,i)}var Io=class e{static{this.EMPTY=new Uint8Array}constructor(e){this._chunks=[],this._headOffset=0,this._length=0,this._cachedView=null,this._cachedLength=0,e&&e.length>0&&this.reset(e)}get length(){return this._length}isEmpty(){return this.length===0}view(){if(this._length===0)return e.EMPTY;if(this._chunks.length===1)return this._chunks[0].subarray(this._headOffset,this._headOffset+this._length);if(this._cachedView&&this._cachedLength===this._length)return this._cachedView;let t=new Uint8Array(this._length),n=0;for(let e=0;e<this._chunks.length;e++){let r=this._chunks[e],i=e===0?this._headOffset:0,a=e===this._chunks.length-1?i+(this._length-n):r.length;if(t.set(r.subarray(i,a),n),n+=a-i,n>=t.length)break}return this._cachedView=t,this._cachedLength=this._length,t}reset(e){if(this._cachedView=null,this._cachedLength=0,this._chunks=[],this._headOffset=0,this._length=0,!e||e.length===0)return;let t=new Uint8Array(e.length);t.set(e),this._chunks=[t],this._headOffset=0,this._length=t.length}append(e){e.length!==0&&(this._cachedView=null,this._cachedLength=0,this._chunks.push(e),this._length+=e.length)}read(e){if(e<=0)return new Uint8Array;if(e>this._length)throw RangeError(`ByteQueue: read beyond available data`);if(this._cachedView=null,this._cachedLength=0,this._chunks.length===1){let t=this._chunks[0],n=this._headOffset,r=n+e,i=t.subarray(n,r);return this._headOffset=r,this._length-=e,this._length===0?(this._chunks=[],this._headOffset=0):this._headOffset>=t.length&&(this._chunks.shift(),this._headOffset=0),i}let t=new Uint8Array(e),n=0,r=e;for(;r>0;){let e=this._chunks[0],i=this._headOffset,a=e.length-i,o=Math.min(a,r);t.set(e.subarray(i,i+o),n),n+=o,r-=o,this._headOffset+=o,this._length-=o,this._headOffset>=e.length&&(this._chunks.shift(),this._headOffset=0)}return this._length===0&&(this._chunks=[],this._headOffset=0),t}peekChunks(e){if(e<=0)return[];if(e>this._length)throw RangeError(`ByteQueue: peek beyond available data`);if(this._chunks.length===1){let t=this._chunks[0],n=this._headOffset;return[t.subarray(n,n+e)]}let t=[],n=e;for(let e=0;e<this._chunks.length&&n>0;e++){let r=this._chunks[e],i=e===0?this._headOffset:0,a=r.length-i;if(a<=0)continue;let o=Math.min(a,n);t.push(r.subarray(i,i+o)),n-=o}return t}discard(e){if(e<=0)return;if(e>=this._length){this._chunks=[],this._headOffset=0,this._length=0,this._cachedView=null,this._cachedLength=0;return}this._cachedView=null,this._cachedLength=0;let t=e;for(;t>0;){let e=this._chunks[0],n=this._headOffset,r=e.length-n,i=Math.min(r,t);this._headOffset+=i,this._length-=i,t-=i,this._headOffset>=e.length&&(this._chunks.shift(),this._headOffset=0)}this._length===0&&(this._chunks=[],this._headOffset=0)}indexOfPattern(e,t=0){let n=e.length;if(n===0)return 0;let r=this._length;if(n>r)return-1;let i=t|0;if(i<0&&(i=0),i>r-n)return-1;if(this._chunks.length===1){let t=this._chunks[0],a=this._headOffset,o=t.subarray(a,a+r);return n===1?o.indexOf(e[0],i):_o(o,e,i)}if(n>4)return _o(this.view(),e,i);let a=e[0],o=n>=2?e[1]:0,s=n>=3?e[2]:0,c=n>=4?e[3]:0,l=this._chunks,u=(e,t)=>{let n=e,r=t;for(;n<l.length;){let e=l[n];if(r<e.length)return e[r]|0;r-=e.length,n++}return null},d=0;for(let e=0;e<l.length;e++){let t=l[e],f=e===0?this._headOffset:0,p=t.length-f;if(p<=0)continue;let m=d,h=m+p,g=i<=m?f:i>=h?t.length:f+(i-m);if(g>t.length-1){d+=p;continue}let _=t.length-1,v=t.indexOf(a,g);for(;v!==-1&&v<=_;){let i=m+(v-f);if(i>r-n)return-1;if(n===1)return i;if(v+n<=t.length){if(t[v+1]!==o){v=t.indexOf(a,v+1);continue}if(n===2)return i;if(t[v+2]!==s){v=t.indexOf(a,v+1);continue}if(n===3)return i;if(t[v+3]!==c){v=t.indexOf(a,v+1);continue}return i}let l=u(e,v+1);if(l===null||l!==o){v=t.indexOf(a,v+1);continue}if(n===2)return i;let d=u(e,v+2);if(d===null||d!==s){v=t.indexOf(a,v+1);continue}if(n===3)return i;let p=u(e,v+3);if(p===null||p!==c){v=t.indexOf(a,v+1);continue}return i}d+=p}return-1}peekUint32LE(e){let t=e|0;if(t<0||t+4>this._length)return null;let n=this._chunks,r=t;for(let e=0;e<n.length;e++){let t=n[e],i=e===0?this._headOffset:0,a=t.length-i;if(r<a){let a=i+r;if(a+4<=t.length){let e=t[a]|0,n=t[a+1]|0,r=t[a+2]|0,i=t[a+3]|0;return(e|n<<8|r<<16|i<<24)>>>0}let o=t[a]|0,s=0,c=0,l=0,u=e,d=a+1;for(let e=1;e<4;e++)for(;u<n.length;){let t=n[u];if(d<t.length){let n=t[d]|0;e===1?s=n:e===2?c=n:l=n,d++;break}u++,d=0}return(o|s<<8|c<<16|l<<24)>>>0}r-=a}return null}peekByte(e){let t=e|0;if(t<0||t>=this._length)throw RangeError(`ByteQueue: peek beyond available data`);let n=t;for(let e=0;e<this._chunks.length;e++){let t=this._chunks[e],r=e===0?this._headOffset:0,i=t.length-r;if(n<i)return t[r+n]|0;n-=i}throw RangeError(`ByteQueue: peek beyond available data`)}};function Lo(){return typeof CompressionStream<`u`}function Ro(){try{return typeof CompressionStream>`u`?!1:(new CompressionStream(`deflate-raw`),!0)}catch{return!1}}function zo(){try{return typeof DecompressionStream>`u`?!1:(new DecompressionStream(`deflate-raw`),!0)}catch{return!1}}let Bo=null,Vo=null;function Ho(){return typeof CompressionStream>`u`?!1:(Bo===null&&(Bo=Ro()),Bo)}function Uo(){return typeof DecompressionStream>`u`?!1:(Vo===null&&(Vo=zo()),Vo)}function Wo(){return Ho()&&Uo()}async function Go(e){let t=new Io;for(;;){let{done:n,value:r}=await e.read();if(n)break;t.append(r)}return t.read(t.length)}async function Ko(e,t){let n=t.writable.getWriter(),r=t.readable.getReader();try{let t=Go(r);return await n.write(e),await n.close(),await t}finally{try{n.releaseLock()}catch{}try{r.releaseLock()}catch{}}}async function qo(e){return Ko(e,new CompressionStream(`deflate-raw`))}async function Jo(e){return Ko(e,new DecompressionStream(`deflate-raw`))}function Yo(e){return e instanceof Error?e:Error(String(e))}function Xo(){return!0}function Zo(){return Wo()}var Qo=class extends A{constructor(e,t){super(),this.ended=!1,this.writer=e,this.reader=t,this.readPromise=this._startReading()}async _startReading(){try{for(;;){let{value:e,done:t}=await this.reader.read();if(t)break;e&&this.emit(`data`,e)}this.emit(`end`)}catch(e){this.emit(`error`,Yo(e))}}write(e,t){if(this.ended){let e=Error(`write after end`);return t?t(e):this.emit(`error`,e),!1}return this.writer.write(e).then(()=>{t&&t()}).catch(e=>{let n=Yo(e);t?t(n):this.emit(`error`,n)}),!0}end(e){if(this.ended){e&&e();return}this.ended=!0,this.writer.close().then(()=>this.readPromise).then(()=>{e&&e()}).catch(t=>{let n=Yo(t);e?e(n):this.emit(`error`,n)})}destroy(e){this.ended=!0,e&&this.emit(`error`,e);try{this.reader.cancel(e)}catch{}try{this.writer.abort(e)}catch{}}},$o=class extends A{constructor(e){super();let t=new CompressionStream(`deflate-raw`);this.codec=new Qo(t.writable.getWriter(),t.readable.getReader()),this.codec.on(`data`,e=>this.emit(`data`,e)),this.codec.on(`end`,()=>this.emit(`end`)),this.codec.on(`error`,e=>this.emit(`error`,e))}write(e,t){return this.codec.write(e,t)}end(e){this.codec.end(e)}destroy(e){this.codec.destroy(e)}},es=class extends A{constructor(e){super(),this.codec=new ts(ko),this.codec.on(`data`,e=>this.emit(`data`,e)),this.codec.on(`end`,()=>this.emit(`end`)),this.codec.on(`error`,e=>this.emit(`error`,e))}write(e,t){return this.codec.write(e,t)}end(e){this.codec.end(e)}destroy(e){this.codec.destroy(e)}},ts=class extends A{constructor(e){super(),this.process=e,this.chunks=[],this.ended=!1}write(e,t){if(this.ended){let e=Error(`write after end`);return t?t(e):this.emit(`error`,e),!1}return this.chunks.push(e),t&&queueMicrotask(()=>t()),!0}end(e){if(this.ended){e&&e();return}this.ended=!0;try{let t=go(this.chunks),n=this.process(t);this.emit(`data`,n),this.emit(`end`),e&&e()}catch(t){let n=Yo(t);this.emit(`error`,n),e&&e(n)}}destroy(e){this.ended=!0,e&&this.emit(`error`,e)}};function ns(e={}){let t=e.level??6;return Zo()?new $o(t):new es(t)}var rs=class extends A{constructor(){super();let e=new DecompressionStream(`deflate-raw`);this.codec=new Qo(e.writable.getWriter(),e.readable.getReader()),this.codec.on(`data`,e=>this.emit(`data`,e)),this.codec.on(`end`,()=>this.emit(`end`)),this.codec.on(`error`,e=>this.emit(`error`,e))}write(e,t){return this.codec.write(e,t)}end(e){this.codec.end(e)}destroy(e){this.codec.destroy(e)}},is=class extends A{constructor(){super(),this.codec=new ts(Do),this.codec.on(`data`,e=>this.emit(`data`,e)),this.codec.on(`end`,()=>this.emit(`end`)),this.codec.on(`error`,e=>this.emit(`error`,e))}write(e,t){return this.codec.write(e,t)}end(e){this.codec.end(e)}destroy(e){this.codec.destroy(e)}};function as(){return Zo()?new rs:new is}let os=new TextEncoder,ss=new TextDecoder(`utf-8`);function cs(e){return os.encode(e)}function ls(e){return ss.decode(e)}function us(e){let t=``,n=32768;for(let r=0;r<e.length;r+=n){let i=e.subarray(r,r+n);t+=String.fromCharCode(...i)}return t}function ds(e){return!Number.isFinite(e)||e<=0?0:e>=4294967295?4294967295:e>>>0}function fs(e){return ds(Math.floor(e.getTime()/1e3))}function ps(e){let t=ds(e),n=new Uint8Array(9),r=new DataView(n.buffer);return r.setUint16(0,21589,!0),r.setUint16(2,5,!0),n[4]=1,r.setUint32(5,t,!0),n}function ms(e){return ps(fs(e))}function hs(e){return[(e.getHours()&31)<<11|(e.getMinutes()&63)<<5|e.getSeconds()>>1&31,(e.getFullYear()-1980&127)<<9|(e.getMonth()+1&15)<<5|e.getDate()&31]}function gs(e,t){let n=e&31,r=e>>5&15,i=(e>>9&127)+1980,a=t?(t&31)*2:0,o=t?t>>5&63:0,s=t?t>>11:0;return new Date(Date.UTC(i,r-1,n,s,o,a))}function _s(e,t,n){return n===void 0?gs(e,t):new Date(n*1e3)}function vs(e,t){return t===`dos+utc`?ms(e):new Uint8Array}function ys(e){let[t,n]=hs(e);return{dosTime:t,dosDate:n}}let bs=67324752,xs=33639248,Ss=101010256,Cs=134695760,ws=101075792,Ts=2048;function Es(e,t,n,r){let i=r.versionNeeded??20;return t.setUint32(n+0,bs,!0),t.setUint16(n+4,i,!0),t.setUint16(n+6,r.flags,!0),t.setUint16(n+8,r.compressionMethod,!0),t.setUint16(n+10,r.dosTime,!0),t.setUint16(n+12,r.dosDate,!0),t.setUint32(n+14,r.crc32,!0),t.setUint32(n+18,r.compressedSize,!0),t.setUint32(n+22,r.uncompressedSize,!0),t.setUint16(n+26,r.fileName.length,!0),t.setUint16(n+28,r.extraField.length,!0),e.set(r.fileName,n+30),r.extraField.length>0&&e.set(r.extraField,n+30+r.fileName.length),30+r.fileName.length+r.extraField.length}function Ds(e){let t=new Uint8Array(30+e.fileName.length+e.extraField.length);return Es(t,new DataView(t.buffer,t.byteOffset,t.byteLength),0,e),t}function Os(e,t,n,r){let i=r.versionMadeBy??20,a=r.versionNeeded??20,o=r.externalAttributes??0;return t.setUint32(n+0,xs,!0),t.setUint16(n+4,i,!0),t.setUint16(n+6,a,!0),t.setUint16(n+8,r.flags,!0),t.setUint16(n+10,r.compressionMethod,!0),t.setUint16(n+12,r.dosTime,!0),t.setUint16(n+14,r.dosDate,!0),t.setUint32(n+16,r.crc32,!0),t.setUint32(n+20,r.compressedSize,!0),t.setUint32(n+24,r.uncompressedSize,!0),t.setUint16(n+28,r.fileName.length,!0),t.setUint16(n+30,r.extraField.length,!0),t.setUint16(n+32,r.comment.length,!0),t.setUint16(n+34,0,!0),t.setUint16(n+36,0,!0),t.setUint32(n+38,o,!0),t.setUint32(n+42,r.localHeaderOffset,!0),e.set(r.fileName,n+46),r.extraField.length>0&&e.set(r.extraField,n+46+r.fileName.length),r.comment.length>0&&e.set(r.comment,n+46+r.fileName.length+r.extraField.length),46+r.fileName.length+r.extraField.length+r.comment.length}function ks(e){let t=new Uint8Array(46+e.fileName.length+e.extraField.length+e.comment.length);return Os(t,new DataView(t.buffer,t.byteOffset,t.byteLength),0,e),t}function As(e,t,n,r){return t.setUint32(n+0,Ss,!0),t.setUint16(n+4,0,!0),t.setUint16(n+6,0,!0),t.setUint16(n+8,r.entryCount,!0),t.setUint16(n+10,r.entryCount,!0),t.setUint32(n+12,r.centralDirSize,!0),t.setUint32(n+16,r.centralDirOffset,!0),t.setUint16(n+20,r.comment.length,!0),r.comment.length>0&&e.set(r.comment,n+22),22+r.comment.length}function js(e){let t=new Uint8Array(22+e.comment.length);return As(t,new DataView(t.buffer,t.byteOffset,t.byteLength),0,e),t}function Ms(e,t,n){let r=new Uint8Array(16),i=new DataView(r.buffer);return i.setUint32(0,Cs,!0),i.setUint32(4,e,!0),i.setUint32(8,t,!0),i.setUint32(12,n,!0),r}function Ns(e){return e?8:0}function Ps(e){return e?Ts|8:Ts}function Fs(e){let t=cs(e.name),n=cs(e.comment??``),{dosTime:r,dosDate:i}=ys(e.modTime);return{nameBytes:t,commentBytes:n,dosTime:r,dosDate:i,extraField:vs(e.modTime,e.timestamps),compressionMethod:Ns(e.deflate),flags:Ps(e.useDataDescriptor)}}function Is(e){return Math.log(e)/Math.LN2}function Ls(e){let t=new Uint32Array(256);for(let n=0;n<e.length;n++)t[e[n]]+=1;let n=0,r=e.length;for(let e=0;e<256;e++){let i=t[e];if(i===0)continue;let a=i/r;n-=a*Is(a)}return n}function Rs(e,t={}){let n=t.sampleBytes??65536,r=t.minDecisionBytes??16384,i=Math.min(e.length,n);if(i<r)return!1;let a=e.subarray(0,i),o=new Uint8Array(256),s=0;for(let e=0;e<a.length;e++){let t=a[e];if(o[t]===0&&(o[t]=1,s+=1,s>=200))break}return s<200?!1:Ls(a)>=7.95}var zs=class{constructor(e,t){this._deflate=null,this._crc=4294967295,this._uncompressedSize=0,this._compressedSize=0,this._finalized=!1,this._headerEmitted=!1,this._ondata=null,this._onerror=null,this._centralDirEntryInfo=null,this._pendingEnd=!1,this._emittedDataDescriptor=!1,this._localHeader=null,this._deflateWanted=null,this._pendingChunks=[],this._sampleLen=0,this._completeResolve=null,this._completeReject=null,this._completePromise=null,this._completeError=null,this._dataQueue=[],this._finalQueued=!1,this._pushChain=Promise.resolve(),this.name=e;let n=t?.modTime??new Date;this._modTime=n,this.level=t?.level??6,this._smartStore=t?.smartStore??!0,this._sampleBuffer=this._smartStore?new Uint8Array(64*1024):new Uint8Array;let r=Fs({name:e,comment:t?.comment??``,modTime:n,timestamps:t?.timestamps??`dos`,useDataDescriptor:!0,deflate:!1});if(this.nameBytes=r.nameBytes,this.commentBytes=r.commentBytes,this.dosTime=r.dosTime,this.dosDate=r.dosDate,this.extraField=r.extraField,this._flags=r.flags,this._compressionMethod=r.compressionMethod,!this._smartStore){let e=this.level>0;this._deflateWanted=e,this._compressionMethod=this._buildCompressionMethod(e),e&&this._initDeflateStream();return}this.level===0&&(this._deflateWanted=!1,this._compressionMethod=this._buildCompressionMethod(!1))}_buildCompressionMethod(e){return Ns(e)}_initDeflateStream(){this._deflate||(this._deflate=ns({level:this.level}),this._deflate.on(`error`,e=>{this._rejectComplete(e)}),this._deflate.on(`data`,e=>{this._compressedSize+=e.length,this._enqueueData(e,!1)}),this._deflate.on(`end`,()=>{this._pendingEnd&&!this._emittedDataDescriptor&&(this._emittedDataDescriptor=!0,this._emitDataDescriptor())}))}_buildLocalHeader(){return Ds({fileName:this.nameBytes,extraField:this.extraField,flags:this._flags,compressionMethod:this._compressionMethod,dosTime:this.dosTime,dosDate:this.dosDate,crc32:0,compressedSize:0,uncompressedSize:0,versionNeeded:20})}_accumulateSample(e){if(this._deflateWanted!==null||this._sampleLen>=this._sampleBuffer.length)return;let t=Math.min(this._sampleBuffer.length-this._sampleLen,e.length);t<=0||(this._sampleBuffer.set(e.subarray(0,t),this._sampleLen),this._sampleLen+=t)}_shouldDecide(e){return this._deflateWanted===null?e||this._sampleLen>=16*1024:!1}_decideCompressionIfNeeded(e){if(this._deflateWanted===null){if(e&&this._sampleLen===0){this._deflateWanted=!1,this._compressionMethod=this._buildCompressionMethod(!1),this._localHeader=null;return}this._deflateWanted=!Rs(this._sampleBuffer.subarray(0,this._sampleLen)),this._compressionMethod=this._buildCompressionMethod(this._deflateWanted),this._localHeader=null,this._deflateWanted&&this._initDeflateStream()}}_emitHeaderIfNeeded(){this._headerEmitted||=(this._emitHeader(),!0)}async _flushPendingChunks(){if(this._pendingChunks.length!==0){for(let e of this._pendingChunks)await this._writeData(e);this._pendingChunks=[]}}_enqueueData(e,t){this._ondata?this._ondata(e,t):(this._dataQueue.push(e),t&&(this._finalQueued=!0))}_flushQueue(){if(!this._ondata)return;let e=this._dataQueue.length,t=this._finalQueued?e-1:-1;for(let n=0;n<e;n++)this._ondata(this._dataQueue[n],n===t);this._dataQueue=[],this._finalQueued=!1}get ondata(){return this._ondata??void 0}set ondata(e){this._ondata=e,this._flushQueue()}get onerror(){return this._onerror??void 0}set onerror(e){this._onerror=e,this._completeError&&e(this._completeError)}_resolveComplete(){this._completeResolve&&this._completeResolve()}_rejectComplete(e){this._completeError||(this._completeError=e,this._onerror&&this._onerror(e),this._completeReject&&this._completeReject(e))}_ensureCompletePromise(){return this._completeError?Promise.reject(this._completeError):this._emittedDataDescriptor?Promise.resolve():(this._completePromise||=new Promise((e,t)=>{this._completeResolve=e,this._completeReject=t}),this._completePromise)}_tapCallback(e,t){t&&e.then(()=>t()).catch(e=>t(e))}_writeData(e){return e.length===0?Promise.resolve():(this._crc=fo(this._crc,e),this._uncompressedSize+=e.length,this._deflate?new Promise((t,n)=>{this._deflate.write(e,e=>{e?n(e):t()})}):(this._compressedSize+=e.length,this._enqueueData(e,!1),Promise.resolve()))}_endDeflateAndWait(){return new Promise((e,t)=>{let n=this._deflate,r=e=>{a(),t(e)},i=()=>{a(),e()},a=()=>{n.off(`error`,r),n.off(`end`,i)};n.once(`error`,r),n.once(`end`,i),n.end()})}_finalizeAfterWrite(e){this._finalized=!0,this._pendingEnd=!0;let t=this._ensureCompletePromise();return this._deflate?e.then(()=>this._endDeflateAndWait()).then(()=>t):(this._emittedDataDescriptor=!0,this._emitDataDescriptor(),t)}_pushUnchained(e,t,n){if(this._finalized){let e=Promise.reject(Error(`Cannot push to finalized ZipDeflateFile`));return this._tapCallback(e,n),e}if(this._deflateWanted===null){if(this._accumulateSample(e),!this._shouldDecide(t)){e.length>0&&this._pendingChunks.push(e);let t=Promise.resolve();return this._tapCallback(t,n),t}this._decideCompressionIfNeeded(t),this._emitHeaderIfNeeded();let r=this._pendingChunks.length>0,i=this._flushPendingChunks(),a=i;e.length>0&&(a=r?i.then(()=>this._writeData(e)):this._writeData(e));let o=t?this._finalizeAfterWrite(a):a;return this._tapCallback(o,n),o}this._emitHeaderIfNeeded();let r=this._writeData(e),i=t?this._finalizeAfterWrite(r):r;return this._tapCallback(i,n),i}push(e,t=!1,n){let r=this._pushChain=this._pushChain.then(()=>this._pushUnchained(e,t,n));return r.catch(()=>{}),r}_emitHeader(){this._localHeader||=this._buildLocalHeader(),this._enqueueData(this._localHeader,!1)}_emitDataDescriptor(){let e=po(this._crc),t=Ms(e,this._compressedSize,this._uncompressedSize);this._centralDirEntryInfo={name:this.nameBytes,extraField:this.extraField,comment:this.commentBytes,flags:this._flags,crc:e,compressedSize:this._compressedSize,uncompressedSize:this._uncompressedSize,compressionMethod:this._compressionMethod,dosTime:this.dosTime,dosDate:this.dosDate,offset:-1},this._enqueueData(t,!0),this._resolveComplete()}complete(){return this._ensureCompletePromise()}getEntryInfo(){if(!this._centralDirEntryInfo)return null;let e=this.name;return{path:e,isDirectory:e.endsWith(`/`)||e.endsWith(`\\`),compressedSize:this._centralDirEntryInfo.compressedSize,uncompressedSize:this._centralDirEntryInfo.uncompressedSize,compressionMethod:this._centralDirEntryInfo.compressionMethod,crc32:this._centralDirEntryInfo.crc,lastModified:this._modTime,localHeaderOffset:this._centralDirEntryInfo.offset,comment:ls(this._centralDirEntryInfo.comment),externalAttributes:0,isEncrypted:!1}}getCentralDirectoryEntryInfo(){return this._centralDirEntryInfo}isComplete(){return this._emittedDataDescriptor&&this._centralDirEntryInfo!==null}},Bs=class{constructor(e,t){this.entries=[],this.currentOffset=0,this.ended=!1,this.endPending=!1,this.fileQueue=[],this.fileQueueIndex=0,this.activeFile=null,this.callback=e,this.zipComment=t?.comment?cs(t.comment):new Uint8Array}add(e){if(this.ended)throw Error(`Cannot add files after calling end() `);this.fileQueue.push(e),this.activeFile||this._processNextFile()}_processNextFile(){if(this.fileQueueIndex>=this.fileQueue.length){this.activeFile=null,this.fileQueue=[],this.fileQueueIndex=0,this.endPending&&this._finalize();return}let e=this.fileQueue[this.fileQueueIndex++];this.activeFile=e;let t=this.currentOffset,n=new Uint8Array;e.onerror=e=>{this.ended||(this.ended=!0,this.callback(e,n,!0))},e.ondata=(n,r)=>{if(!this.ended&&(this.currentOffset+=n.length,this.callback(null,n,!1),r)){let n=e.getCentralDirectoryEntryInfo();n&&(n.offset=t,this.entries.push(n)),this._processNextFile()}}}_finalize(){if(this.ended)return;this.ended=!0;let e=this.currentOffset,t=0,n=new Uint8Array;for(let e of this.entries){let r=ks({fileName:e.name,extraField:e.extraField,comment:e.comment??n,flags:e.flags,compressionMethod:e.compressionMethod,dosTime:e.dosTime,dosDate:e.dosDate,crc32:e.crc,compressedSize:e.compressedSize,uncompressedSize:e.uncompressedSize,localHeaderOffset:e.offset,versionMadeBy:20,versionNeeded:20});t+=r.length,this.callback(null,r,!1)}let r=js({entryCount:this.entries.length,centralDirSize:t,centralDirOffset:e,comment:this.zipComment});this.callback(null,r,!0)}end(){this.endPending||this.ended||(this.endPending=!0,this.activeFile||this._finalize())}};async function Vs(e,t={}){return(t.level??6)===0?e:Ho()?qo(e):ko(e)}function Hs(e,t={}){return(t.level??6)===0?e:ko(e)}async function Us(e,t={}){return Uo()?Jo(e):Do(e)}function Ws(e){return Do(e)}function Gs(e){let t=new Uint8Array(4);return new DataView(t.buffer).setUint32(0,e>>>0,!0),t}function Ks(e,t){return new DataView(e.buffer,e.byteOffset,e.byteLength).getUint32(t,!0)}var qs=class{constructor(e,t=0){this.data=e,this.view=new DataView(e.buffer,e.byteOffset,e.byteLength),this.offset=t}get position(){return this.offset}set position(e){this.offset=e}get remaining(){return this.data.length-this.offset}readUint8(){let e=this.view.getUint8(this.offset);return this.offset+=1,e}readUint16(){let e=this.view.getUint16(this.offset,!0);return this.offset+=2,e}readUint32(){let e=this.view.getUint32(this.offset,!0);return this.offset+=4,e}readBigUint64(){let e=this.view.getBigUint64(this.offset,!0);return this.offset+=8,e}readBytes(e){let t=this.data.subarray(this.offset,this.offset+e);return this.offset+=e,t}readString(e,t=!0){let n=this.readBytes(e);return t?ls(n):us(n)}skip(e){this.offset+=e}slice(e,t){return this.data.subarray(e,t)}peekUint32(e){return this.view.getUint32(e,!0)}};function Js(e){let t=new DataView(e.buffer,e.byteOffset,e.byteLength),n=0;for(;n+4<=e.length;){let r=t.getUint16(n,!0),i=t.getUint16(n+2,!0),a=n+4,o=a+i;if(o>e.length)break;if(r===21589&&i>=1&&e[a]&1&&i>=5)return t.getUint32(a+1,!0)>>>0;n=o}}function Ys(e,t){let n=e.getUint32(t,!0);return e.getUint32(t+4,!0)*4294967296+n}function Xs(e,t){let n={};if(e.length<4)return n;let r=new DataView(e.buffer,e.byteOffset,e.byteLength),i=0;for(;i+4<=e.length;){let a=r.getUint16(i,!0),o=r.getUint16(i+2,!0),s=i+4,c=s+o;if(c>e.length)break;if(a===1){let e=s;t.uncompressedSize===4294967295&&e+8<=c&&(n.uncompressedSize=Ys(r,e),e+=8),t.compressedSize===4294967295&&e+8<=c&&(n.compressedSize=Ys(r,e),e+=8),t.offsetToLocalFileHeader===4294967295&&e+8<=c&&(n.offsetToLocalFileHeader=Ys(r,e))}else if(a===21589){let t=Js(e.subarray(i,c));t!==void 0&&(n.mtimeUnixSeconds=t)}i=c}return t.compressedSize===4294967295&&(t.compressedSize=n.compressedSize),t.uncompressedSize===4294967295&&(t.uncompressedSize=n.uncompressedSize),t.offsetToLocalFileHeader===4294967295&&(t.offsetToLocalFileHeader=n.offsetToLocalFileHeader),n}function Zs(e){let t=Math.max(0,e.length-65557);for(let n=e.length-22;n>=t;n--)if(e[n]===80&&e[n+1]===75&&e[n+2]===5&&e[n+3]===6)return n;return-1}function Qs(e,t){let n=t-20;return n<0?-1:e[n]===80&&e[n+1]===75&&e[n+2]===6&&e[n+3]===7?n:-1}function $s(e,t={}){let{decodeStrings:n=!0}=t,r=[],i=Zs(e);if(i===-1)throw Error(`Invalid ZIP file: End of Central Directory not found`);let a=new qs(e,i);a.skip(4),a.skip(2),a.skip(2),a.skip(2);let o=a.readUint16();a.skip(4);let s=a.readUint32(),c=Qs(e,i);if(c!==-1){let t=new qs(e,c);t.skip(4),t.skip(4);let n=new qs(e,Number(t.readBigUint64()));if(n.readUint32()===ws){n.skip(8),n.skip(2),n.skip(2),n.skip(4),n.skip(4);let e=Number(n.readBigUint64());n.skip(8);let t=Number(n.readBigUint64());o===65535&&(o=e),s===4294967295&&(s=t)}}o>0&&(r=Array(o));let l=new qs(e,s);for(let e=0;e<o;e++){if(l.readUint32()!==xs)throw Error(`Invalid Central Directory header signature at entry ${e}`);l.skip(2),l.skip(2);let t=l.readUint16(),i=l.readUint16(),a=l.readUint16(),o=l.readUint16(),s=l.readUint32(),c=l.readUint32(),u=l.readUint32(),d=l.readUint16(),f=l.readUint16(),p=l.readUint16();l.skip(2),l.skip(2);let m=l.readUint32(),h=l.readUint32(),g=(t&2048)!=0,_=n&&g,v=d>0?l.readString(d,_):``,y={};if(f>0){let e=l.readBytes(f),t={compressedSize:c,uncompressedSize:u,offsetToLocalFileHeader:h};y=Xs(e,t),c=t.compressedSize,u=t.uncompressedSize,h=t.offsetToLocalFileHeader??h}let ee=p>0?l.readString(p,_):``,b=v.endsWith(`/`)||(m&16)!=0,te=(t&1)!=0,x=y.mtimeUnixSeconds,ne=_s(o,a,x);r[e]={path:v,isDirectory:b,compressedSize:c,uncompressedSize:u,compressionMethod:i,crc32:s,lastModified:ne,localHeaderOffset:h,comment:ee,externalAttributes:m,isEncrypted:te}}return r}async function ec(e,t){if(t.isDirectory)return new Uint8Array;if(t.isEncrypted)throw Error(`File "${t.path}" is encrypted and cannot be extracted`);let n=nc(e,t);if(t.compressionMethod===0)return n;if(t.compressionMethod===8)return Us(n);throw Error(`Unsupported compression method: ${t.compressionMethod}`)}function tc(e,t){if(t.isDirectory)return new Uint8Array;if(t.isEncrypted)throw Error(`File "${t.path}" is encrypted and cannot be extracted`);let n=nc(e,t);if(t.compressionMethod===0)return n;if(t.compressionMethod===8)return Ws(n);throw Error(`Unsupported compression method: ${t.compressionMethod}`)}function nc(e,t){let n=new qs(e,t.localHeaderOffset);if(n.readUint32()!==bs)throw Error(`Invalid local file header signature for "${t.path}"`);n.skip(2),n.skip(2),n.skip(2),n.skip(2),n.skip(2),n.skip(4),n.skip(4),n.skip(4);let r=n.readUint16(),i=n.readUint16();return n.skip(r),n.skip(i),n.readBytes(t.compressedSize)}var rc=class{constructor(e,t={}){this.data=e instanceof ArrayBuffer?new Uint8Array(e):e,this.entries=$s(this.data,t),this.entryMap=new Map(this.entries.map(e=>[e.path,e]))}getEntries(){return this.entries}getEntry(e){return this.entryMap.get(e)}hasEntry(e){return this.entryMap.has(e)}listFiles(){return this.entries.map(e=>e.path)}async extract(e){let t=this.entryMap.get(e);return t?ec(this.data,t):null}extractSync(e){let t=this.entryMap.get(e);return t?tc(this.data,t):null}async extractAll(){let e=new Map;for(let t of this.entries){let n=await ec(this.data,t);e.set(t.path,n)}return e}extractAllSync(){let e={};for(let t of this.entries)e[t.path]=tc(this.data,t);return e}async forEach(e){for(let t of this.entries){let n=null;if(await e(t,()=>(n||=ec(this.data,t),n))===!1)break}}},ic=class e{static{this.textEncoder=new TextEncoder}constructor(e){this.events=new Map,this.pipedStream=null,this.finalized=!1,this.level=e?.level??6,this.modTime=e?.modTime,this.timestamps=e?.timestamps,this.zip=new Bs((e,t,n)=>{if(e){this._emit(`error`,e);return}t&&t.length>0&&(this._emit(`data`,t),this.pipedStream&&this.pipedStream.write(t)),n&&(this.pipedStream&&this.pipedStream.end(),this._emit(`finish`))})}_emit(e,...t){let n=this.events.get(e);if(n)for(let e of n)e(...t)}on(e,t){let n=this.events.get(e)||new Set;return n.add(t),this.events.set(e,n),this}once(e,t){let n=(...r)=>{this.off(e,n),t(...r)};return this.on(e,n)}off(e,t){let n=this.events.get(e);return n?(n.delete(t),n.size===0&&this.events.delete(e),this):this}pipe(e){this.pipedStream=e}append(t,n){if(this.finalized)throw Error(`Cannot append after finalize`);let r;r=n.base64?we(typeof t==`string`?t:String(t)):typeof t==`string`?e.textEncoder.encode(t):t instanceof Uint8Array?t:ArrayBuffer.isView(t)?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t instanceof ArrayBuffer?new Uint8Array(t):t;let i=new zs(n.name,{level:this.level,modTime:this.modTime,timestamps:this.timestamps});this.zip.add(i),i.push(r,!0)}finalize(){this.finalized||(this.finalized=!0,this.zip.end())}},ac=class e{static{this.RelType=W}constructor(e){this.workbook=e}createBinaryStream(e){let t=new at;return t.end(e),t}createTextStream(e){let t=new at;return t.end(e),t}createStreamBuf(){return new so}bufferToString(e){return Le(e)}createZipWriter(e){return new ic(e)}async writeToZip(e,t){let{model:n}=this.workbook;this.prepareModel(n,t),await this.addContentTypes(e,n),await this.addOfficeRels(e,n),await this.addWorkbookRels(e,n),await this.addWorksheets(e,n),await this.addSharedStrings(e,n),this.addDrawings(e,n),this.addTables(e,n),this.addPivotTables(e,n),await Promise.all([this.addThemes(e,n),this.addStyles(e,n)]),await this.addFeaturePropertyBag(e,n),await this.addMedia(e,n),await Promise.all([this.addApp(e,n),this.addCore(e,n)]),await this.addWorkbook(e,n)}async read(e,t){let n=[];return await new Promise((t,r)=>{let i=e=>{n.push(e)},a=()=>{e.off(`data`,i),e.off(`end`,a),e.off(`error`,o),t()},o=t=>{e.off(`data`,i),e.off(`end`,a),e.off(`error`,o),r(t)};e.on(`data`,i),e.on(`end`,a),e.on(`error`,o)}),this.loadBuffer(Ke(n),t)}async write(e,t){t||={},t.zip=t.zip||{},t.zip.modTime??=this.workbook.modified??this.workbook.created;let n=this.createZipWriter(t.zip);return n.pipe(e),await this.writeToZip(n,t),this._finalize(n)}async load(e,t){let n,r=typeof Buffer<`u`?Buffer.isBuffer(e):!1;if(!e||typeof e==`object`&&!r&&!(e instanceof Uint8Array)&&!(e instanceof ArrayBuffer))throw Error(`Can't read the data of 'the loaded zip file'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?`);return n=t&&t.base64?we(e.toString()):e instanceof ArrayBuffer?new Uint8Array(e):e instanceof Uint8Array?e:new Uint8Array(e),this.loadBuffer(n,t)}async loadBuffer(e,t){let n=await new rc(e).extractAll(),r={};for(let[e,t]of n)r[e]=t;return this.loadFromFiles(r,t)}async loadFromZipEntries(e,t){let n={worksheets:[],worksheetHash:{},worksheetRels:[],themes:{},media:[],mediaIndex:{},drawings:{},drawingRels:{},comments:{},tables:{},vmlDrawings:{},pivotTables:{},pivotTableRels:{},pivotCacheDefinitions:{},pivotCacheDefinitionRels:{},pivotCacheRecords:{}};for await(let r of e){let e=!1,i=async()=>{e||(e=!0,await r.drain())};if(r.type===`Directory`){await i();continue}let a=Nn(r.name),o=r.stream;try{let e=Pn(a);if(e!==void 0){await this._processWorksheetEntry(o,n,e,t,a);continue}switch(a){case H.rootRels:n.globalRels=await this.parseRels(o);break;case H.xlWorkbook:{let e=await this.parseWorkbook(o);n.sheets=e.sheets,n.definedNames=e.definedNames,n.views=e.views,n.properties=e.properties,n.calcProperties=e.calcProperties,n.pivotCaches=e.pivotCaches;break}case H.xlSharedStrings:n.sharedStrings=new _n,await n.sharedStrings.parseStream(o);break;case H.xlWorkbookRels:n.workbookRels=await this.parseRels(o);break;case H.docPropsApp:{let e=await new Mr().parseStream(o);n.company=e.company,n.manager=e.manager;break}case H.docPropsCore:{let e=await new fn().parseStream(o);Object.assign(n,e);break}case H.xlStyles:n.styles=new B,await n.styles.parseStream(o);break;default:await this._processDefaultEntry(o,n,a)||await i();break}}finally{try{await i()}catch{}}}return this.reconcile(n,t),this.workbook.model=n,this.workbook}async writeBuffer(e){e||={},e.zip=e.zip||{},e.zip.modTime??=this.workbook.modified??this.workbook.created;let t=this.createZipWriter(e.zip),n=this.createStreamBuf();return t.pipe(n),await this.writeToZip(t,e),await this._finalize(t),n.read()||new Uint8Array}async addMedia(e,t){await Promise.all(t.media.map(async t=>{if(t.type!==`image`)throw Error(`Unsupported media`);let n=Qn(`${t.name??`undefined`}.${t.extension}`);if(t.filename){if(this.readFileAsync){let r=await this.readFileAsync(t.filename);return e.append(r,{name:n})}throw Error(`Loading images from filename is not supported in this environment`)}if(t.buffer)return e.append(t.buffer,{name:n});if(t.base64){let r=t.base64.substring(t.base64.indexOf(`,`)+1);return e.append(r,{name:n,base64:!0})}throw Error(`Unsupported media`)}))}parseRels(e){return new V().parseStream(e)}parseWorkbook(e){return new Wr().parseStream(e)}parseSharedStrings(e){return new _n().parseStream(e)}reconcile(e,t){let n=new Wr,r=new oa(t),i=new Ta,a=new Ma;n.reconcile(e);let o={media:e.media,mediaIndex:e.mediaIndex};Object.keys(e.drawings).forEach(t=>{let n=e.drawings[t],r=e.drawingRels[t];r&&(o.rels=r.reduce((e,t)=>(e[t.Id]=t,e),{}),(n.anchors||[]).forEach(e=>{let t=e.picture&&e.picture.hyperlinks;t&&o.rels[t.rId]&&(t.hyperlink=o.rels[t.rId].Target,delete t.rId)}),i.reconcile(n,o))});let s={styles:e.styles};Object.values(e.tables).forEach(e=>{a.reconcile(e,s)}),this._reconcilePivotTables(e);let c={styles:e.styles,sharedStrings:e.sharedStrings,media:e.media,mediaIndex:e.mediaIndex,date1904:e.properties&&e.properties.date1904,drawings:e.drawings,comments:e.comments,tables:e.tables,vmlDrawings:e.vmlDrawings,pivotTables:e.pivotTablesIndexed};e.worksheets.forEach(t=>{t.relationships=e.worksheetRels[t.sheetNo],r.reconcile(t,c)}),delete e.worksheetHash,delete e.worksheetRels,delete e.globalRels,delete e.sharedStrings,delete e.workbookRels,delete e.sheetDefs,delete e.styles,delete e.mediaIndex,delete e.drawings,delete e.drawingRels,delete e.vmlDrawings,delete e.pivotTableRels,delete e.pivotCacheDefinitionRels}_reconcilePivotTables(e){let t=e.pivotTables||{};if(typeof t!=`object`||Object.keys(t).length===0){e.pivotTables=[],e.pivotTablesIndexed={};return}let n=this._buildDefinitionToCacheIdMap(e),r=new Map;Object.entries(e.pivotCacheDefinitions||{}).forEach(([t,i])=>{let a=n.get(t);if(a!==void 0){let n=t.replace(`Definition`,`Records`);r.set(a,{definition:i,records:e.pivotCacheRecords?.[n],definitionName:t})}});let i=[],a={};Object.entries(t).forEach(([e,t])=>{let n=t,o=this._extractTableNumber(e),s=r.get(n.cacheId),c={...n,tableNumber:o,cacheDefinition:s?.definition,cacheRecords:s?.records,cacheFields:s?.definition?.cacheFields||[],rows:n.rowFields.filter(e=>e>=0),columns:n.colFields.filter(e=>e>=0&&e!==-2),values:n.dataFields.map(e=>e.fld),metric:this._determineMetric(n.dataFields),applyWidthHeightFormats:n.applyWidthHeightFormats||`0`};i.push(c),a[Cr(e)]=c}),i.sort((e,t)=>e.tableNumber-t.tableNumber),e.pivotTables=i,e.pivotTablesIndexed=a,e.loadedPivotTables=i}_extractTableNumber(e){let t=e.match(/pivotTable(\d+)/);return t?parseInt(t[1],10):1}_buildCacheIdMap(e){let t=new Map,n=e.pivotCaches||[];for(let e of n)e.cacheId&&e.rId&&t.set(e.rId,parseInt(e.cacheId,10));return t}_buildDefinitionToCacheIdMap(t){let n=new Map,r=this._buildCacheIdMap(t),i=t.workbookRels||[];for(let t of i)if(t.Type===e.RelType.PivotCacheDefinition&&t.Target){let e=t.Target.match(/pivotCacheDefinition(\d+)\.xml/);if(e){let i=`pivotCacheDefinition${e[1]}`,a=r.get(t.Id);a!==void 0&&n.set(i,a)}}return n}_determineMetric(e){return e.length>0&&e[0].subtotal===`count`?`count`:`sum`}async _processWorksheetEntry(e,t,n,r,i){let a=await new oa(r).parseStream(e);if(!a)throw Error(`Failed to parse worksheet ${i}`);a.sheetNo=n,t.worksheetHash[i]=a,t.worksheets.push(a)}async _processCommentEntry(e,t,n){let r=await new Wa().parseStream(e);t.comments[xr(n)]=r}async _processTableEntry(e,t,n){let r=await new Ma().parseStream(e);t.tables[Tr(n)]=r}async _processWorksheetRelsEntry(e,t,n){let r=await new V().parseStream(e);t.worksheetRels[n]=r}async _processMediaEntry(e,t,n){let r=n.lastIndexOf(`.`);if(r>=1){let i=n.substr(r+1),a=n.substr(0,r);await new Promise((r,o)=>{let s=this.createStreamBuf(),c=()=>{e.off(`error`,u),s.off(`error`,u),s.off(`finish`,l)},l=()=>{c(),t.mediaIndex[n]=t.media.length,t.mediaIndex[a]=t.media.length;let e={type:`image`,name:a,extension:i,buffer:s.read()};t.media.push(e),r()},u=e=>{c(),o(e)};s.once(`finish`,l),e.on(`error`,u),s.on(`error`,u),e.pipe(s)})}}async _processDrawingEntry(e,t,n){let r=await new Ta().parseStream(e);t.drawings[n]=r}async _processDrawingRelsEntry(e,t,n){let r=await new V().parseStream(e);t.drawingRels[n]=r}async _processVmlDrawingEntry(e,t,n){let r=await new Qa().parseStream(e);t.vmlDrawings[br(n)]=r}async _processThemeEntry(e,t,n){await new Promise((r,i)=>{let a=this.createStreamBuf(),o=()=>{e.off(`error`,c),a.off(`error`,c),a.off(`finish`,s)},s=()=>{o();let e=a.read();t.themes[n]=e?typeof e==`string`?e:this.bufferToString(e):``,r()},c=e=>{o(),i(e)};a.once(`finish`,s),e.on(`error`,c),a.on(`error`,c),e.pipe(a)})}async _processPivotTableEntry(e,t,n){let r=await new La().parseStream(e);r&&(t.pivotTables[n]=r)}async _processPivotTableRelsEntry(e,t,n){let r=await new V().parseStream(e);t.pivotTableRels[n]=r}async _processPivotCacheDefinitionEntry(e,t,n){let r=await new Ia().parseStream(e);r&&(t.pivotCacheDefinitions[n]=r)}async _processPivotCacheDefinitionRelsEntry(e,t,n){let r=await new V().parseStream(e);t.pivotCacheDefinitionRels[n]=r}async _processPivotCacheRecordsEntry(e,t,n){let r=await new Na().parseStream(e);r&&(t.pivotCacheRecords[n]=r)}async loadFromFiles(e,t){let n={worksheets:[],worksheetHash:{},worksheetRels:[],themes:{},media:[],mediaIndex:{},drawings:{},drawingRels:{},comments:{},tables:{},vmlDrawings:{},pivotTables:{},pivotTableRels:{},pivotCacheDefinitions:{},pivotCacheDefinitionRels:{},pivotCacheRecords:{}},r=Object.keys(e).map(t=>({name:t,dir:t.endsWith(`/`),data:e[t]}));for(let e of r)if(!e.dir){let r=Nn(e.name),i=Bn(r)?this.createBinaryStream(e.data):this.createTextStream(this.bufferToString(e.data)),a=Pn(r);if(a!==void 0)await this._processWorksheetEntry(i,n,a,t,r);else switch(r){case H.rootRels:n.globalRels=await this.parseRels(i);break;case H.xlWorkbook:{let e=await this.parseWorkbook(i);n.sheets=e.sheets,n.definedNames=e.definedNames,n.views=e.views,n.properties=e.properties,n.calcProperties=e.calcProperties,n.pivotCaches=e.pivotCaches;break}case H.xlSharedStrings:n.sharedStrings=new _n,await n.sharedStrings.parseStream(i);break;case H.xlWorkbookRels:n.workbookRels=await this.parseRels(i);break;case H.docPropsApp:{let e=await new Mr().parseStream(i);n.company=e.company,n.manager=e.manager;break}case H.docPropsCore:{let e=await new fn().parseStream(i);Object.assign(n,e);break}case H.xlStyles:n.styles=new B,await n.styles.parseStream(i);break;default:await this._processDefaultEntry(i,n,r)}}return this.reconcile(n,t),this.workbook.model=n,this.workbook}async _processDefaultEntry(e,t,n){let r=Fn(n);if(r!==void 0){let n=r;return await this._processWorksheetRelsEntry(e,t,n),!0}let i=Ln(n);if(i)return await this._processMediaEntry(e,t,i),!0;let a=Vn(n);if(a)return await this._processDrawingEntry(e,t,a),!0;let o=Hn(n);if(o)return await this._processDrawingRelsEntry(e,t,o),!0;let s=Un(n);if(s)return await this._processVmlDrawingEntry(e,t,s),!0;let c=Wn(n);if(c)return await this._processCommentEntry(e,t,`comments${c}`),!0;let l=Gn(n);if(l)return await this._processTableEntry(e,t,l),!0;let u=zn(n);if(u)return await this._processThemeEntry(e,t,u),!0;let d=Kn(n);if(d)return await this._processPivotTableEntry(e,t,d),!0;let f=qn(n);if(f)return await this._processPivotTableRelsEntry(e,t,f),!0;let p=Jn(n);if(p)return await this._processPivotCacheDefinitionEntry(e,t,p),!0;let m=Yn(n);if(m)return await this._processPivotCacheDefinitionRelsEntry(e,t,m),!0;let h=Xn(n);return h?(await this._processPivotCacheRecordsEntry(e,t,h),!0):!1}async addContentTypes(e,t){let n=new kr().toXml(t);e.append(n,{name:H.contentTypes})}async addApp(e,t){let n=new Mr().toXml(t);e.append(n,{name:H.docPropsApp})}async addCore(e,t){let n=new fn;e.append(n.toXml(t),{name:H.docPropsCore})}async addThemes(e,t){let n=t.themes||{theme1:eo};Object.keys(n).forEach(t=>{let r=n[t];e.append(r,{name:Zn(t)})})}async addOfficeRels(t,n){let r=new V().toXml([{Id:`rId1`,Type:e.RelType.OfficeDocument,Target:H.xlWorkbook},{Id:`rId2`,Type:e.RelType.CoreProperties,Target:H.docPropsCore},{Id:`rId3`,Type:e.RelType.ExtenderProperties,Target:H.docPropsApp}]);t.append(r,{name:H.rootRels})}async addWorkbookRels(t,n){let r=1,i=[{Id:`rId${r++}`,Type:e.RelType.Styles,Target:hr.workbookStyles},{Id:`rId${r++}`,Type:e.RelType.Theme,Target:hr.workbookTheme1}];n.sharedStrings.count&&i.push({Id:`rId${r++}`,Type:e.RelType.SharedStrings,Target:hr.workbookSharedStrings}),n.hasCheckboxes&&i.push({Id:`rId${r++}`,Type:e.RelType.FeaturePropertyBag,Target:hr.workbookFeaturePropertyBag}),(n.pivotTables||[]).forEach(t=>{t.rId=`rId${r++}`,i.push({Id:t.rId,Type:e.RelType.PivotCacheDefinition,Target:gr(t.tableNumber)})}),n.worksheets.forEach((t,n)=>{t.rId=`rId${r++}`,t.fileIndex=n+1,i.push({Id:t.rId,Type:e.RelType.Worksheet,Target:`worksheets/sheet${t.fileIndex}.xml`})});let a=new V().toXml(i);t.append(a,{name:H.xlWorkbookRels})}async addFeaturePropertyBag(e,t){if(!t.hasCheckboxes)return;let n=new sa;e.append(n.toXml({}),{name:H.xlFeaturePropertyBag})}async addSharedStrings(e,t){t.sharedStrings&&t.sharedStrings.count&&e.append(t.sharedStrings.xml,{name:H.xlSharedStrings})}async addStyles(e,t){let{xml:n}=t.styles;n&&e.append(n,{name:H.xlStyles})}async addWorkbook(e,t){let n=new Wr;e.append(n.toXml(t),{name:H.xlWorkbook})}async addWorksheets(e,t){let n=new oa,r=new V,i=new Wa,a=new Qa,o=new $a;t.worksheets.forEach((t,s)=>{let c=t.fileIndex||s+1,l=new P;n.render(l,t),e.append(l.xml,{name:$n(c)}),t.rels&&t.rels.length&&(l=new P,r.render(l,t.rels),e.append(l.xml,{name:er(c)})),t.comments.length>0&&(l=new P,i.render(l,t),e.append(l.xml,{name:nr(c)}));let u=t.comments.length>0,d=t.formControls&&t.formControls.length>0;(u||d)&&(l=new P,a.render(l,{comments:u?t.comments:[],formControls:d?t.formControls:[]}),e.append(l.xml,{name:ir(c)})),d&&t.formControls.forEach(t=>{let n=o.toXml(t);e.append(n,{name:Dr(t.ctrlPropId)})})})}addDrawings(e,t){let n=new Ta,r=new V;t.worksheets.forEach(t=>{let{drawing:i}=t;if(i){n.prepare(i);let t=n.toXml(i);e.append(t,{name:or(i.name)}),t=r.toXml(i.rels),e.append(t,{name:sr(i.name)})}})}addTables(e,t){let n=new Ma;t.worksheets.forEach(t=>{let{tables:r}=t;r.forEach(t=>{n.prepare(t,{});let r=n.toXml(t);e.append(r,{name:ar(t.target)})})})}addPivotTables(t,n){if(!n.pivotTables.length)return;let r=new Na,i=new Ia,a=new La,o=new V;n.pivotTables.forEach(n=>{let s=n.tableNumber;if(n.isLoaded){if(n.cacheDefinition){let e=i.toXml(n.cacheDefinition);t.append(e,{name:cr(s)})}if(n.cacheRecords){let e=r.toXml(n.cacheRecords);t.append(e,{name:ur(s)})}}else{let e=r.toXml(n);t.append(e,{name:ur(s)}),e=i.toXml(n),t.append(e,{name:cr(s)})}let c=o.toXml([{Id:`rId1`,Type:e.RelType.PivotCacheRecords,Target:dr(s)}]);t.append(c,{name:lr(s)}),c=a.toXml(n),t.append(c,{name:fr(s)}),c=o.toXml([{Id:`rId1`,Type:e.RelType.PivotCacheDefinition,Target:mr(s)}]),t.append(c,{name:pr(s)})})}_finalize(e){return new Promise((t,n)=>{e.on(`finish`,()=>{t(this)}),e.on(`error`,n),e.finalize()})}prepareModel(e,t){e.creator=e.creator||`ExcelTS`,e.lastModifiedBy=e.lastModifiedBy||`ExcelTS`,e.created=e.created||new Date,e.modified=e.modified||new Date,e.useSharedStrings=t.useSharedStrings===void 0?!0:t.useSharedStrings,e.useStyles=t.useStyles===void 0?!0:t.useStyles,e.sharedStrings=new _n,e.styles=e.useStyles?new B(!0):new B.Mock;let n=new Wr,r=new oa;n.prepare(e);let i={sharedStrings:e.sharedStrings,styles:e.styles,date1904:e.properties.date1904,drawingsCount:0,media:e.media};i.drawings=e.drawings=[],i.commentRefs=e.commentRefs=[],i.formControlRefs=e.formControlRefs=[];let a=0;e.tables=[],e.worksheets.forEach(t=>{t.tables.forEach(t=>{a++,t.target=`table${a}.xml`,t.id=a,e.tables.push(t)}),r.prepare(t,i)}),e.hasCheckboxes=e.styles.hasCheckboxes}};let Y=Array.from({length:60},(e,t)=>t<10?`0${t}`:`${t}`),X=(e,t)=>(e.charCodeAt(t)-48)*10+e.charCodeAt(t+1)-48|0,oc=(e,t)=>(e.charCodeAt(t)-48)*1e3+(e.charCodeAt(t+1)-48)*100+(e.charCodeAt(t+2)-48)*10+e.charCodeAt(t+3)-48|0,sc=[0,31,29,31,30,31,30,31,31,30,31,30,31];function cc(e,t,n){if(t<1||t>12||n<1||n>sc[t])return null;let r=new Date(e,t-1,n);return r.getMonth()===t-1?r:null}function lc(e,t,n,r,i,a){return t<1||t>12||n<1||n>sc[t]||r>23||i>59||a>59?null:new Date(e,t-1,n,r,i,a)}function uc(e){return e.charCodeAt(4)!==45||e.charCodeAt(7)!==45?null:cc(oc(e,0),X(e,5),X(e,8))}function dc(e){return e.charCodeAt(4)!==45||e.charCodeAt(7)!==45||e.charCodeAt(10)!==84||e.charCodeAt(13)!==58||e.charCodeAt(16)!==58?null:lc(oc(e,0),X(e,5),X(e,8),X(e,11),X(e,14),X(e,17))}function fc(e){return e.charCodeAt(4)!==45||e.charCodeAt(7)!==45||e.charCodeAt(10)!==32||e.charCodeAt(13)!==58||e.charCodeAt(16)!==58?null:lc(oc(e,0),X(e,5),X(e,8),X(e,11),X(e,14),X(e,17))}function pc(e){if(e.charCodeAt(19)!==90)return null;let t=new Date(e);return isNaN(t.getTime())?null:t}function mc(e){if(e.charCodeAt(19)!==46||e.charCodeAt(23)!==90)return null;let t=new Date(e);return isNaN(t.getTime())?null:t}function hc(e){let t=e.charCodeAt(19);if(t!==43&&t!==45)return null;let n=new Date(e);return isNaN(n.getTime())?null:n}function gc(e){if(e.charCodeAt(19)!==46)return null;let t=e.charCodeAt(23);if(t!==43&&t!==45)return null;let n=new Date(e);return isNaN(n.getTime())?null:n}function _c(e){let t=e.charCodeAt(2);return t!==45&&t!==47||e.charCodeAt(5)!==t?null:cc(oc(e,6),X(e,0),X(e,3))}function vc(e){let t=e.charCodeAt(2);return t!==45&&t!==47||e.charCodeAt(5)!==t?null:cc(oc(e,6),X(e,3),X(e,0))}function yc(e){let t=e.charCodeAt(2);return t!==45&&t!==47||e.charCodeAt(5)!==t||e.charCodeAt(10)!==32||e.charCodeAt(13)!==58||e.charCodeAt(16)!==58?null:lc(oc(e,6),X(e,0),X(e,3),X(e,11),X(e,14),X(e,17))}function bc(e){let t=e.charCodeAt(2);return t!==45&&t!==47||e.charCodeAt(5)!==t||e.charCodeAt(10)!==32||e.charCodeAt(13)!==58||e.charCodeAt(16)!==58?null:lc(oc(e,6),X(e,3),X(e,0),X(e,11),X(e,14),X(e,17))}let xc={"YYYY-MM-DD":uc,"YYYY-MM-DD[T]HH:mm:ss":dc,"YYYY-MM-DD HH:mm:ss":fc,"YYYY-MM-DD[T]HH:mm:ssZ":e=>e.length===20?pc(e):e.length===25?hc(e):null,"YYYY-MM-DD[T]HH:mm:ss.SSSZ":e=>e.length===24?mc(e):e.length===29?gc(e):null,"MM-DD-YYYY":_c,"MM-DD-YYYY HH:mm:ss":yc,"MM/DD/YYYY HH:mm:ss":yc,"DD-MM-YYYY":vc,"DD-MM-YYYY HH:mm:ss":bc,"DD/MM/YYYY HH:mm:ss":bc},Sc=[[10,[uc]],[19,[dc,fc]],[20,[pc]],[24,[mc]],[25,[hc]],[29,[gc]]];var Cc=class e{constructor(e){this.parse=e=>{if(!e)return null;let t=e.trim();if(!t)return null;if(this.single)return this.fn0(t);for(let e=0,n=this.fns.length;e<n;e++){let n=this.fns[e](t);if(n)return n}return null},this.fns=e,this.single=e.length===1,this.fn0=e[0]}static create(t){return new e(t.map(e=>xc[e]).filter(Boolean))}static iso(){let t=[];for(let[,e]of Sc)t.push(...e);return new e(t)}parseAll(e){let t=e.length,n=Array(t),r=this.parse;for(let i=0;i<t;i++)n[i]=r(e[i]);return n}parseValid(e){let t=[],n=this.parse;for(let r=0,i=e.length;r<i;r++){let i=n(e[r]);i&&t.push(i)}return t}};function wc(e){let t=-e.getTimezoneOffset(),n=t>=0?`+`:`-`,r=Math.abs(t)/60|0,i=Math.abs(t)%60;return`${n}${Y[r]}:${Y[i]}`}var Tc=class e{constructor(e){this.format=e=>this.fn(e),this.fn=e}static iso(t=!1){return t?new e(e=>{if(!(e instanceof Date))return``;let t=e.getTime();if(t!==t)return``;let n=e.getUTCFullYear(),r=e.getUTCMonth()+1,i=e.getUTCDate(),a=e.getUTCHours(),o=e.getUTCMinutes(),s=e.getUTCSeconds(),c=e.getUTCMilliseconds();return`${n}-${Y[r]}-${Y[i]}T${Y[a]}:${Y[o]}:${Y[s]}.${c<10?`00`+c:c<100?`0`+c:c}Z`}):new e(e=>{if(!(e instanceof Date))return``;let t=e.getTime();if(t!==t)return``;let n=e.getFullYear(),r=e.getMonth()+1,i=e.getDate(),a=e.getHours(),o=e.getMinutes(),s=e.getSeconds(),c=e.getMilliseconds();return`${n}-${Y[r]}-${Y[i]}T${Y[a]}:${Y[o]}:${Y[s]}.${c<10?`00`+c:c<100?`0`+c:c}${wc(e)}`})}static create(t,n){let r=n?.utc??!1;if(t===`YYYY-MM-DD`)return r?new e(e=>{if(!(e instanceof Date))return``;let t=e.getTime();return t===t?`${e.getUTCFullYear()}-${Y[e.getUTCMonth()+1]}-${Y[e.getUTCDate()]}`:``}):new e(e=>{if(!(e instanceof Date))return``;let t=e.getTime();return t===t?`${e.getFullYear()}-${Y[e.getMonth()+1]}-${Y[e.getDate()]}`:``});if(t===`YYYY-MM-DD HH:mm:ss`)return r?new e(e=>{if(!(e instanceof Date))return``;let t=e.getTime();return t===t?`${e.getUTCFullYear()}-${Y[e.getUTCMonth()+1]}-${Y[e.getUTCDate()]} ${Y[e.getUTCHours()]}:${Y[e.getUTCMinutes()]}:${Y[e.getUTCSeconds()]}`:``}):new e(e=>{if(!(e instanceof Date))return``;let t=e.getTime();return t===t?`${e.getFullYear()}-${Y[e.getMonth()+1]}-${Y[e.getDate()]} ${Y[e.getHours()]}:${Y[e.getMinutes()]}:${Y[e.getSeconds()]}`:``});if(t===`MM-DD-YYYY`||t===`MM/DD/YYYY`){let n=t.charAt(2);return r?new e(e=>{if(!(e instanceof Date))return``;let t=e.getTime();return t===t?`${Y[e.getUTCMonth()+1]}${n}${Y[e.getUTCDate()]}${n}${e.getUTCFullYear()}`:``}):new e(e=>{if(!(e instanceof Date))return``;let t=e.getTime();return t===t?`${Y[e.getMonth()+1]}${n}${Y[e.getDate()]}${n}${e.getFullYear()}`:``})}if(t===`DD-MM-YYYY`||t===`DD/MM/YYYY`){let n=t.charAt(2);return r?new e(e=>{if(!(e instanceof Date))return``;let t=e.getTime();return t===t?`${Y[e.getUTCDate()]}${n}${Y[e.getUTCMonth()+1]}${n}${e.getUTCFullYear()}`:``}):new e(e=>{if(!(e instanceof Date))return``;let t=e.getTime();return t===t?`${Y[e.getDate()]}${n}${Y[e.getMonth()+1]}${n}${e.getFullYear()}`:``})}return e.createGeneric(t,r)}static createGeneric(t,n){let r=[],i=t.replace(/\[([^\]]*)\]/g,(e,t)=>(r.push(t),`\x00${r.length-1}\x00`)),a=i.includes(`YYYY`),o=i.includes(`SSS`),s=i.includes(`MM`),c=i.includes(`DD`),l=i.includes(`HH`),u=i.includes(`mm`),d=i.includes(`ss`),f=i.includes(`Z`);return new e(e=>{if(!(e instanceof Date))return``;let t=e.getTime();if(t!==t)return``;let p=i;if(a&&(p=p.replace(/YYYY/g,String(n?e.getUTCFullYear():e.getFullYear()))),o){let t=n?e.getUTCMilliseconds():e.getMilliseconds();p=p.replace(/SSS/g,t<10?`00${t}`:t<100?`0${t}`:String(t))}return s&&(p=p.replace(/MM/g,Y[n?e.getUTCMonth()+1:e.getMonth()+1])),c&&(p=p.replace(/DD/g,Y[n?e.getUTCDate():e.getDate()])),l&&(p=p.replace(/HH/g,Y[n?e.getUTCHours():e.getHours()])),u&&(p=p.replace(/mm/g,Y[n?e.getUTCMinutes():e.getMinutes()])),d&&(p=p.replace(/ss/g,Y[n?e.getUTCSeconds():e.getSeconds()])),f&&(p=p.replace(/Z/g,n?`Z`:wc(e))),r.length&&(p=p.replace(/\x00(\d+)\x00/g,(e,t)=>r[+t])),p})}formatAll(e){let t=e.length,n=Array(t),r=this.fn;for(let i=0;i<t;i++)n[i]=r(e[i]);return n}};function Ec(e,t){return t===`,`?String(e).split(`.`).join(`,`):String(e)}function Dc(e,t){if(t!==`,`)return Number(e);let n=e.trim();return/^-?\d+(,\d+)?([eE][+-]?\d+)?$/.test(n)?Number(n.replace(`,`,`.`)):Number(e)}function Oc(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function kc(e){return e.length===1}function Ac(e){return e.length===1}function jc(e){let t=new Set,n=[];for(let r of e)r!=null&&(t.has(r)&&n.push(r),t.add(r));if(n.length>0)throw Error(`Duplicate headers found ${JSON.stringify(n)}`)}function Mc(e,t={}){let{delimiter:n=`,`,quote:r=`"`,escape:i=`"`,skipEmptyLines:a=!1,ignoreEmpty:o=!1,trim:s=!1,ltrim:c=!1,rtrim:l=!1,headers:u=!1,renameHeaders:d=!1,comment:f,maxRows:p,skipLines:m=0,skipRows:h=0,strictColumnHandling:g=!1,discardUnmappedColumns:_=!1,transform:v,validate:y}=t,ee=a||o,b=r!==null&&r!==!1,te=b?String(r):``,x=i!==null&&i!==!1?String(i):``,ne=[],re=[],S=[],C=``,ie=!1,w=0,ae=0,oe=0,se=0,T=null,ce=0,E=!1,le=!1;u===!0?E=!0:Array.isArray(u)?(T=u,ce=u.filter(e=>e!=null).length,jc(u),E=!0,d||(le=!0)):typeof u==`function`&&(E=!0);let D=s||c&&l?e=>e.trim():c?e=>e.trimStart():l?e=>e.trimEnd():e=>e,ue=e=>{if(E&&!le){if(typeof u==`function`){let t=u(e);jc(t),T=t}else Array.isArray(u)||(jc(e),T=e);return ce=T.filter(e=>e!=null).length,le=!0,!1}if(se<h)return se++,!1;if(T&&T.length>0){let t=ce,n=e.length;if(n>t){if(g&&!_)return re.push({row:e,reason:`Column header mismatch expected: ${t} columns got: ${n}`}),!1;e.length=T.length}else if(n<t){if(g)return re.push({row:e,reason:`Column header mismatch expected: ${t} columns got: ${n}`}),!1;for(;e.length<T.length;)e.push(``)}}return!0},de=e.length;for(;w<de;){let t=e[w];if(ie&&b)x&&t===x&&e[w+1]===te?(C+=te,w+=2):t===te?(ie=!1,w++):t===`\r`?(e[w+1]===`
|
|
129
|
+
`||(C+=`
|
|
130
|
+
`),w++):(C+=t,w++);else if(b&&t===te&&C===``)ie=!0,w++;else if(t===n)S.push(D(C)),C=``,w++;else if(t===`
|
|
131
|
+
`||t===`\r`){if(t===`\r`&&e[w+1]===`
|
|
132
|
+
`&&w++,S.push(D(C)),C=``,ae++,ae<=m){S=[],w++;continue}if(f&&S[0]?.startsWith(f)){S=[],w++;continue}let n=S.length===1&&S[0]===``;if(ee&&n){S=[],w++;continue}if(ue(S)&&(ne.push(S),oe++),S=[],w++,p!==void 0&&oe>=p)break}else C+=t,w++}if((C!==``||S.length>0)&&(S.push(D(C)),ae>=m&&!(f&&S[0]?.startsWith(f)))){let e=S.length===1&&S[0]===``;ee&&e||p!==void 0&&oe>=p||ue(S)&&ne.push(S)}if(E&&T){let e=ne.map(e=>{let t={};return T.forEach((n,r)=>{n!=null&&(t[n]=e[r]??``)}),t});if(v&&(e=e.map(e=>v(e)).filter(e=>e!=null)),y){let t=[];for(let n of e){let e=y(n);typeof e==`boolean`?e?t.push(n):re.push({row:Object.values(n),reason:`Validation failed`}):e.isValid?t.push(n):re.push({row:Object.values(n),reason:e.reason||`Validation failed`})}e=t}return(g||y)&&re.length>0?{headers:T.filter(e=>e!=null),rows:e,invalidRows:re}:{headers:T.filter(e=>e!=null),rows:e}}let O=ne;if(v&&(O=O.map(e=>v(e)).filter(e=>e!=null)),y){let e=[],t=[];for(let n of O){let r=y(n);typeof r==`boolean`?r?e.push(n):t.push({row:n,reason:`Validation failed`}):r.isValid?e.push(n):t.push({row:n,reason:r.reason||`Validation failed`})}if(O=e,t.length>0)return{rows:O,invalidRows:t}}return O}function Nc(e,t={}){let{delimiter:n=`,`,quote:r=`"`,escape:i,rowDelimiter:a=`
|
|
133
|
+
`,alwaysQuote:o=!1,quoteColumns:s=!1,quoteHeaders:c=!1,headers:l,writeHeaders:u,writeBOM:d=!1,includeEndRowDelimiter:f=!1,alwaysWriteHeaders:p=!1,transform:m,decimalSeparator:h=`.`}=t,g=u??!0,_=r!==!1&&r!==null,v=_?String(r):``,y=i!==void 0&&i!==!1&&i!==null?String(i):v,ee=_?RegExp(`[${Oc(n)}${Oc(v)}\r\n]`):null,b=_?new RegExp(Oc(v),`g`):null,te=y+v,x=[],ne=(e,t,n=!1)=>{let r=n?c:s;return typeof r==`boolean`?r:Array.isArray(r)?r[e]===!0:typeof r==`object`&&t?r[t]===!0:!1},re=(e,t,n,r=!1)=>{if(e==null)return``;let i=typeof e==`number`?Ec(e,h):String(e);return _&&(o||ne(t,n,r)||ee.test(i))?v+i.replace(b,te)+v:i},S=(e,t,r=!1)=>e.map((e,n)=>re(e,n,t?.[n],r)).join(n),C=null,ie=e=>m&&m.length===1?m(e):e;if(e.length>0&&!Array.isArray(e[0])){let t=e;C=l===!0?Object.keys(t[0]):Array.isArray(l)?l:null,C&&g&&x.push(S(C,C,!0));for(let e of t){let t=ie(e);if(t==null)continue;let n=C?C.map(e=>t[e]):Object.values(t);x.push(S(n,C??void 0))}}else if(e.length>0){let t=e;Array.isArray(l)&&(C=l,g&&x.push(S(l,l,!0)));for(let e of t){let t=ie(e);t!=null&&x.push(S(t,C??void 0))}}else p&&Array.isArray(l)&&g&&x.push(S(l,l,!0));let w=x.join(a);return w.length>0&&f&&(w+=a),d&&(w=``+w),w}var Pc=class extends rt{constructor(e={}){super({objectMode:e.objectMode!==!1}),this.buffer=``,this.currentRow=[],this.currentField=``,this.currentFieldParts=null,this.currentFieldLength=0,this.inQuotes=!1,this.lineNumber=0,this.rowCount=0,this.skippedDataRows=0,this.headerRow=null,this.headersEmitted=!1,this._rowTransform=null,this._rowValidator=null,this.options=e,this.decoder=new TextDecoder;let t=e.quote??`"`;this.quoteEnabled=t!==null&&t!==!1,this.quote=this.quoteEnabled?String(t):``;let n=e.escape??`"`;this.escape=n!==null&&n!==!1?String(n):this.quote,this.delimiter=e.delimiter??`,`;let{trim:r=!1,ltrim:i=!1,rtrim:a=!1}=e;this.trimField=r||i&&a?e=>e.trim():i?e=>e.trimStart():a?e=>e.trimEnd():e=>e}transform(e){if(typeof e!=`function`)throw TypeError(`The transform should be a function`);return kc(e)?this._rowTransform=(t,n)=>{try{n(null,e(t))}catch(e){n(e)}}:this._rowTransform=e,this}validate(e){if(typeof e!=`function`)throw TypeError(`The validate should be a function`);return Ac(e)?this._rowValidator=(t,n)=>{try{n(null,e(t))}catch(e){n(e)}}:this._rowValidator=e,this}_transform(e,t,n){try{let t=typeof e==`string`?e:this.decoder.decode(e,{stream:!0});this.buffer+=t,this.processBuffer(n)}catch(e){n(e)}}_flush(e){try{let t=this.decoder.decode();if(t&&(this.buffer+=t),this.buffer){this.processBuffer(t=>{if(t){e(t);return}this.flushCurrentRow(e)});return}this.flushCurrentRow(e)}catch(t){e(t)}}flushCurrentRow(e){if(this.currentFieldLength!==0||this.currentRow.length>0){this.currentRow.push(this.trimField(this.takeCurrentField())),this.emitRow(e);return}e()}appendToField(e){if(e.length===0)return;let t=this.currentFieldLength+e.length;if(!this.currentFieldParts&&t<=1024){this.currentField+=e,this.currentFieldLength=t;return}if(!this.currentFieldParts){this.currentFieldParts=this.currentFieldLength===0?[e]:[this.currentField,e],this.currentField=``,this.currentFieldLength=t;return}this.currentFieldParts.push(e),this.currentFieldLength=t}takeCurrentField(){if(this.currentFieldLength===0)return``;let e=this.currentFieldParts?this.currentFieldParts.join(``):this.currentField;return this.currentField=``,this.currentFieldParts=null,this.currentFieldLength=0,e}processBuffer(e){let{skipEmptyLines:t=!1,ignoreEmpty:n=!1,headers:r=!1,renameHeaders:i=!1,comment:a,maxRows:o,skipLines:s=0,skipRows:c=0,strictColumnHandling:l=!1,discardUnmappedColumns:u=!1}=this.options,d=t||n,f=0,p=this.buffer.length,m=[];for(;f<p;){let t=this.buffer[f];if(this.inQuotes&&this.quoteEnabled)if(this.escape&&t===this.escape&&this.buffer[f+1]===this.quote)this.appendToField(this.quote),f+=2;else if(t===this.quote)this.inQuotes=!1,f++;else if(f===p-1){this.buffer=this.buffer.slice(f),this.processPendingRows(m,e);return}else t===`\r`?(this.buffer[f+1]===`
|
|
134
134
|
`||this.appendToField(`
|
|
135
135
|
`),f++):(this.appendToField(t),f++);else if(this.quoteEnabled&&t===this.quote&&this.currentFieldLength===0)this.inQuotes=!0,f++;else if(t===this.delimiter)this.currentRow.push(this.trimField(this.takeCurrentField())),f++;else if(t===`
|
|
136
136
|
`||t===`\r`){if(t===`\r`&&this.buffer[f+1]===`
|
|
137
|
-
`&&f++,this.currentRow.push(this.trimField(this.takeCurrentField())),this.lineNumber++,this.lineNumber<=s){this.currentRow=[],f++;continue}if(a&&this.currentRow[0]?.startsWith(a)){this.currentRow=[],f++;continue}let n=this.currentRow.length===1&&this.currentRow[0]===``;if(d&&n){this.currentRow=[],f++;continue}if((r===!0||typeof r==`function`||Array.isArray(r)&&i)&&this.headerRow===null){typeof r==`function`?this.headerRow=r(this.currentRow).filter(e=>e!=null):Array.isArray(r)&&i?this.headerRow=r.filter(e=>e!=null):this.headerRow=this.currentRow,this.headersEmitted||(this.headersEmitted=!0,this.emit(`headers`,this.headerRow)),this.currentRow=[],f++;continue}if(Array.isArray(r)&&!i&&this.headerRow===null&&(this.headerRow=r.filter(e=>e!=null),this.headersEmitted||(this.headersEmitted=!0,this.emit(`headers`,this.headerRow))),this.skippedDataRows<c){this.skippedDataRows++,this.currentRow=[],f++;continue}if(this.headerRow&&this.headerRow.length>0){let e=this.headerRow.length,t=this.currentRow.length;if(t>e)if(l&&!u){this.emit(`data-invalid`,this.currentRow,`Column mismatch: expected ${e}, got ${t}`),this.currentRow=[],f++;continue}else this.currentRow.length=e;else if(t<e){if(l){this.emit(`data-invalid`,this.currentRow,`Column mismatch: expected ${e}, got ${t}`),this.currentRow=[],f++;continue}for(;this.currentRow.length<e;)this.currentRow.push(``)}}if(this.rowCount++,o!==void 0&&this.rowCount>o){this.buffer=``,this.processPendingRows(m,e);return}let p=this.currentRow;this.currentRow=[],m.push(this.buildRow(p)),f++}else this.appendToField(t),f++}this.buffer=``,this.processPendingRows(m,e)}buildRow(e){if(this.options.headers&&this.headerRow){let t={};for(let n=0;n<this.headerRow.length;n++){let r=this.headerRow[n];t[r]=e[n]??``}return t}return e}processPendingRows(e,t){if(e.length===0){t();return}let n=0,r=()=>{if(n>=e.length){t();return}let i=e[n];n++,this.transformAndValidateRow(i,(e,i)=>{if(e){t(e);return}i&&i.isValid&&i.row!==null?this.options.objectMode===!1?this.push(JSON.stringify(i.row)):this.push(i.row):i&&!i.isValid&&this.emit(`data-invalid`,i.row,i.reason),n%1e3==0?setTimeout(r,0):r()})};r()}transformAndValidateRow(e,t){this._rowTransform?this._rowTransform(e,(e,n)=>{if(e){t(e);return}if(n==null){t(null,{row:null,isValid:!0});return}this.validateRow(n,t)}):this.validateRow(e,t)}validateRow(e,t){this._rowValidator?this._rowValidator(e,(n,r,i)=>{if(n){t(n);return}t(null,{row:e,isValid:r??!1,reason:i})}):t(null,{row:e,isValid:!0})}emitRow(e){let t=this.buildRow(this.currentRow);this.transformAndValidateRow(t,(t,n)=>{if(t){e&&e(t);return}n&&n.isValid&&n.row!==null?this.options.objectMode===!1?this.push(JSON.stringify(n.row)):this.push(n.row):n&&!n.isValid&&this.emit(`data-invalid`,n.row,n.reason),e&&e()})}},
|
|
138
|
-
`,this.alwaysQuote=e.alwaysQuote??!1,this.decimalSeparator=e.decimalSeparator??`.`,this.shouldWriteHeaders=e.writeHeaders??!0,this.quoteEnabled&&(this.escapeQuoteRegex=new RegExp(
|
|
139
|
-
`)){let e=n.replace(this.escapeQuoteRegex,this.escapedQuote);return this.quote+e+this.quote}return n}};function
|
|
137
|
+
`&&f++,this.currentRow.push(this.trimField(this.takeCurrentField())),this.lineNumber++,this.lineNumber<=s){this.currentRow=[],f++;continue}if(a&&this.currentRow[0]?.startsWith(a)){this.currentRow=[],f++;continue}let n=this.currentRow.length===1&&this.currentRow[0]===``;if(d&&n){this.currentRow=[],f++;continue}if((r===!0||typeof r==`function`||Array.isArray(r)&&i)&&this.headerRow===null){typeof r==`function`?this.headerRow=r(this.currentRow).filter(e=>e!=null):Array.isArray(r)&&i?this.headerRow=r.filter(e=>e!=null):this.headerRow=this.currentRow,this.headersEmitted||(this.headersEmitted=!0,this.emit(`headers`,this.headerRow)),this.currentRow=[],f++;continue}if(Array.isArray(r)&&!i&&this.headerRow===null&&(this.headerRow=r.filter(e=>e!=null),this.headersEmitted||(this.headersEmitted=!0,this.emit(`headers`,this.headerRow))),this.skippedDataRows<c){this.skippedDataRows++,this.currentRow=[],f++;continue}if(this.headerRow&&this.headerRow.length>0){let e=this.headerRow.length,t=this.currentRow.length;if(t>e)if(l&&!u){this.emit(`data-invalid`,this.currentRow,`Column mismatch: expected ${e}, got ${t}`),this.currentRow=[],f++;continue}else this.currentRow.length=e;else if(t<e){if(l){this.emit(`data-invalid`,this.currentRow,`Column mismatch: expected ${e}, got ${t}`),this.currentRow=[],f++;continue}for(;this.currentRow.length<e;)this.currentRow.push(``)}}if(this.rowCount++,o!==void 0&&this.rowCount>o){this.buffer=``,this.processPendingRows(m,e);return}let p=this.currentRow;this.currentRow=[],m.push(this.buildRow(p)),f++}else this.appendToField(t),f++}this.buffer=``,this.processPendingRows(m,e)}buildRow(e){if(this.options.headers&&this.headerRow){let t={};for(let n=0;n<this.headerRow.length;n++){let r=this.headerRow[n];t[r]=e[n]??``}return t}return e}processPendingRows(e,t){if(e.length===0){t();return}let n=0,r=()=>{if(n>=e.length){t();return}let i=e[n];n++,this.transformAndValidateRow(i,(e,i)=>{if(e){t(e);return}i&&i.isValid&&i.row!==null?this.options.objectMode===!1?this.push(JSON.stringify(i.row)):this.push(i.row):i&&!i.isValid&&this.emit(`data-invalid`,i.row,i.reason),n%1e3==0?setTimeout(r,0):r()})};r()}transformAndValidateRow(e,t){this._rowTransform?this._rowTransform(e,(e,n)=>{if(e){t(e);return}if(n==null){t(null,{row:null,isValid:!0});return}this.validateRow(n,t)}):this.validateRow(e,t)}validateRow(e,t){this._rowValidator?this._rowValidator(e,(n,r,i)=>{if(n){t(n);return}t(null,{row:e,isValid:r??!1,reason:i})}):t(null,{row:e,isValid:!0})}emitRow(e){let t=this.buildRow(this.currentRow);this.transformAndValidateRow(t,(t,n)=>{if(t){e&&e(t);return}n&&n.isValid&&n.row!==null?this.options.objectMode===!1?this.push(JSON.stringify(n.row)):this.push(n.row):n&&!n.isValid&&this.emit(`data-invalid`,n.row,n.reason),e&&e()})}},Fc=class extends rt{constructor(e={}){super({objectMode:e.objectMode!==!1,writableObjectMode:e.objectMode!==!1}),this.headerWritten=!1,this.headers=null,this.rowCount=0,this._rowTransform=null,this.escapeQuoteRegex=null,this.escapedQuote=``,this.options=e;let t=e.quote??`"`;this.quoteEnabled=t!==null&&t!==!1,this.quote=this.quoteEnabled?String(t):``;let n=e.escape;this.escape=n!=null&&n!==!1?String(n):this.quote,this.delimiter=e.delimiter??`,`,this.rowDelimiter=e.rowDelimiter??`
|
|
138
|
+
`,this.alwaysQuote=e.alwaysQuote??!1,this.decimalSeparator=e.decimalSeparator??`.`,this.shouldWriteHeaders=e.writeHeaders??!0,this.quoteEnabled&&(this.escapeQuoteRegex=new RegExp(Ic(this.quote),`g`),this.escapedQuote=this.escape+this.quote),Array.isArray(e.headers)&&(this.headers=e.headers),e.transform&&this.transform(e.transform)}transform(e){if(typeof e!=`function`)throw TypeError(`The transform should be a function`);return kc(e)?this._rowTransform=(t,n)=>{try{n(null,e(t))}catch(e){n(e)}}:this._rowTransform=e,this}_transform(e,t,n){try{!this.headerWritten&&this.options.writeBOM&&this.push(``),!this.headerWritten&&this.headers&&this.shouldWriteHeaders?(this.push(this.formatRow(this.headers,!0)),this.headerWritten=!0):!this.headerWritten&&this.options.headers===!0&&!Array.isArray(e)&&this.shouldWriteHeaders?(this.headers=Object.keys(e),this.push(this.formatRow(this.headers,!0)),this.headerWritten=!0):this.headerWritten||=(this.options.headers===!0&&!Array.isArray(e)&&(this.headers=Object.keys(e)),!0),this._rowTransform?this._rowTransform(e,(e,t)=>{if(e){n(e);return}if(t==null){n();return}this.formatAndPush(t),n()}):(this.formatAndPush(e),n())}catch(e){n(e)}}_flush(e){!this.headerWritten&&this.options.alwaysWriteHeaders&&this.headers&&this.shouldWriteHeaders&&(this.options.writeBOM&&this.push(``),this.push(this.formatRow(this.headers,!0)),this.headerWritten=!0),this.options.includeEndRowDelimiter&&this.rowCount>0&&this.push(this.rowDelimiter),e()}formatAndPush(e){let t;t=Array.isArray(e)?e:typeof e==`object`&&e?this.headers?this.headers.map(t=>e[t]):Object.values(e):[e],this.push(this.formatRow(t,!1))}formatRow(e,t=!1){let{quoteColumns:n,quoteHeaders:r}=this.options,i=t?r:n,a=e.map((e,t)=>{let n=this.headers?.[t],r=this.shouldQuoteField(t,n,i);return this.formatField(e,r)}).join(this.delimiter);return this.rowCount===0?(this.rowCount++,a):(this.rowCount++,this.rowDelimiter+a)}shouldQuoteField(e,t,n){return n===!0?!0:n===!1||n===void 0?!1:Array.isArray(n)?n[e]===!0:typeof n==`object`&&t?n[t]===!0:!1}formatField(e,t=!1){if(e==null)return``;let n=typeof e==`number`?Ec(e,this.decimalSeparator):String(e);if(!this.quoteEnabled)return n;if(this.alwaysQuote||t||n.includes(this.delimiter)||n.includes(this.quote)||n.includes(`\r`)||n.includes(`
|
|
139
|
+
`)){let e=n.replace(this.escapeQuoteRegex,this.escapedQuote);return this.quote+e+this.quote}return n}};function Ic(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}let Lc=[`YYYY-MM-DD[T]HH:mm:ssZ`,`YYYY-MM-DD[T]HH:mm:ss`,`MM-DD-YYYY`,`YYYY-MM-DD`],Rc={true:!0,false:!1,"#N/A":{error:`#N/A`},"#REF!":{error:`#REF!`},"#NAME?":{error:`#NAME?`},"#DIV/0!":{error:`#DIV/0!`},"#NULL!":{error:`#NULL!`},"#VALUE!":{error:`#VALUE!`},"#NUM!":{error:`#NUM!`}};function zc(e,t){let n=Cc.create(e),r=t?.decimalSeparator??`.`;return function(e){if(e===``)return null;if(typeof e==`string`){let t=Dc(e,r);if(!Number.isNaN(t)&&t!==1/0)return t}else{let t=Number(e);if(!Number.isNaN(t)&&t!==1/0)return t}let t=n.parse(e);if(t)return t;let i=Rc[e];return i===void 0?e:i}}function Bc(e,t){let n=e?Tc.create(e,{utc:t}):Tc.iso(t);return function(e){if(e){if(e.text||e.hyperlink)return e.hyperlink||e.text||``;if(e.formula||e.result)return e.result||``;if(e instanceof Date)return n.format(e);if(e.error)return e.error;if(typeof e==`object`)return JSON.stringify(e)}return e}}var Vc=class{constructor(e){this.workbook=e}load(e,t){let n;n=typeof e==`string`?e:e instanceof ArrayBuffer||e instanceof Uint8Array?new TextDecoder().decode(e):String(e);let r=this.workbook.addWorksheet(t?.sheetName),i=t?.dateFormats??Lc,a=t?.map||zc(i,{decimalSeparator:t?.valueMapperOptions?.decimalSeparator??t?.parserOptions?.decimalSeparator}),o=Mc(n,t?.parserOptions);for(let e of o)r.addRow(e.map(a));return r}writeString(e){let t=this.workbook.getWorksheet(e?.sheetName||e?.sheetId);if(!t)return``;let{dateFormat:n,dateUTC:r}=e||{},i=e?.map||Bc(n,r),a=e?.includeEmptyRows!==!1,o=[],s=1;return t.eachRow((e,t)=>{if(a)for(;s++<t-1;)o.push([]);let{values:n}=e;n.shift(),o.push(n.map(i)),s=t}),Nc(o,e?.formatterOptions)}async writeBuffer(e){return new TextEncoder().encode(this.writeString(e))}async read(e,t){let n=this.workbook.addWorksheet(t?.sheetName),r=t?.dateFormats??Lc,i=t?.map||zc(r,{decimalSeparator:t?.valueMapperOptions?.decimalSeparator??t?.parserOptions?.decimalSeparator}),a=new Pc(t?.parserOptions);return new Promise((t,r)=>{a.on(`data`,e=>n.addRow(e.map(i))),ct(e,a).then(()=>t(n)).catch(r)})}async write(e,t){let n=this.workbook.getWorksheet(t?.sheetName||t?.sheetId);if(!n){e.end();return}let{dateFormat:r,dateUTC:i}=t||{},a=t?.map||Bc(r,i),o=t?.includeEmptyRows!==!1,s=new Fc({...t?.formatterOptions}),c=ct(s,e),l=1;n.eachRow((e,t)=>{if(o)for(;l++<t-1;)s.write([]);let{values:n}=e;n.shift(),s.write(n.map(a)),l=t}),s.end(),await c}createReadStream(e){let t=this.workbook.getWorksheet(e?.sheetName||e?.sheetId),{dateFormat:n,dateUTC:r}=e||{},i=e?.map||Bc(n,r),a=e?.includeEmptyRows!==!1,o=new Fc({...e?.formatterOptions});return t?setTimeout(()=>{let e=1;t.eachRow((t,n)=>{if(a)for(;e++<n-1;)o.write([]);let{values:r}=t;r.shift(),o.write(r.map(i)),e=n}),o.end()},0):setTimeout(()=>o.end(),0),o}createWriteStream(e){let t=this.workbook.addWorksheet(e?.sheetName),n=e?.dateFormats??Lc,r=e?.map||zc(n,{decimalSeparator:e?.valueMapperOptions?.decimalSeparator??e?.parserOptions?.decimalSeparator}),i=new Pc(e?.parserOptions);return i.on(`data`,e=>t.addRow(e.map(r))),i}async readFile(e,t){throw Error(`csv.readFile() is not available in browser.
|
|
140
140
|
Use csv.load(csvString) or csv.read(stream) instead.
|
|
141
141
|
Example: const response = await fetch('/data.csv');
|
|
142
142
|
workbook.csv.load(await response.text());`)}async writeFile(e,t){throw Error(`csv.writeFile() is not available in browser.
|
|
143
143
|
Use csv.writeBuffer() and trigger a download instead.
|
|
144
144
|
Example: const buffer = await workbook.csv.writeBuffer();
|
|
145
|
-
download(new Blob([buffer]), 'output.csv');`)}},
|
|
146
|
-
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">`)}_writeRelationship(e){this.count||this._writeOpen();let t=`rId${++this.count}`;return e.TargetMode?this.stream.write(`<Relationship Id="${t}" Type="${e.Type}" Target="${ke(e.Target)}" TargetMode="${e.TargetMode}"/>`):this.stream.write(`<Relationship Id="${t}" Type="${e.Type}" Target="${e.Target}"/>`),t}_writeClose(){this.stream.write(`</Relationships>`)}},fl=class{constructor(e,t,n){this.id=n.id,this.count=0,this._worksheet=e,this._workbook=n.workbook,this._sheetRelsWriter=t}get commentsStream(){return this._commentsStream||=this._workbook._openStream(Yn(this.id)),this._commentsStream}get vmlStream(){return this._vmlStream||=this._workbook._openStream(Zn(this.id)),this._vmlStream}_addRelationships(){let e={Type:G.Comments,Target:ur(this.id)};this._sheetRelsWriter.addRelationship(e);let t={Type:G.VmlDrawing,Target:dr(this.id)};this.vmlRelId=this._sheetRelsWriter.addRelationship(t)}_addCommentRefs(){this._workbook.commentRefs.push({commentName:`comments${this.id}`,vmlDrawing:`vmlDrawing${this.id}`})}_writeOpen(){this.commentsStream.write(`<?xml version="1.0" encoding="UTF-8" standalone="yes"?><comments xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main"><authors><author>Author</author></authors><commentList>`),this.vmlStream.write(`<?xml version="1.0" encoding="UTF-8"?><xml xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:x="urn:schemas-microsoft-com:office:excel"><o:shapelayout v:ext="edit"><o:idmap v:ext="edit" data="1" /></o:shapelayout><v:shapetype id="_x0000_t202" coordsize="21600,21600" o:spt="202" path="m,l,21600r21600,l21600,xe"><v:stroke joinstyle="miter" /><v:path gradientshapeok="t" o:connecttype="rect" /></v:shapetype>`)}_writeComment(e,t){let n=new Fa,r=new F;n.render(r,e),this.commentsStream.write(r.xml);let i=new Ua,a=new F;i.render(a,e,t),this.vmlStream.write(a.xml)}_writeClose(){this.commentsStream.write(`</commentList></comments>`),this.vmlStream.write(`</xml>`)}addComments(e){e&&e.length&&(this.startedData||=(this._worksheet.comments=[],this._writeOpen(),this._addRelationships(),this._addCommentRefs(),!0),e.forEach(e=>{e.refAddress=n.decodeAddress(e.ref)}),e.forEach(e=>{this._writeComment(e,this.count),this.count+=1}))}commit(){this.count&&(this._writeClose(),this.commentsStream.end(),this.vmlStream.end())}};let Q=new Ja,$={dataValidations:new Xr,sheetProperties:new ei,sheetFormatProperties:new ti,columns:new R({tag:`cols`,count:!1,childXform:new Ur}),row:new Hr,hyperlinks:new R({tag:`hyperlinks`,count:!1,childXform:new Gr}),sheetViews:new R({tag:`sheetViews`,count:!1,childXform:new ri}),sheetProtection:new ii,pageMargins:new ai,pageSeteup:new di,autoFilter:new mi,picture:new hi,conditionalFormattings:new Ii,headerFooter:new xi,rowBreaks:new yi,colBreaks:new bi};var pl=class{constructor(e){this.id=e.id,this.name=e.name||`Sheet${this.id}`,this.state=e.state||`visible`,this._rows=[],this._columns=null,this._keys={},this._merges=[],this._merges.add=function(){},this._sheetRelsWriter=new dl(e),this._sheetCommentsWriter=new fl(this,this._sheetRelsWriter,e),this._dimensions=new r,this._rowZero=1,this._rowOffset=0,this.committed=!1,this.dataValidations=new me,this._formulae={},this._siFormulae=0,this.conditionalFormatting=[],this.rowBreaks=[],this.colBreaks=[],this.properties=Object.assign({},{defaultRowHeight:15,outlineLevelCol:0,outlineLevelRow:0},e.properties),this.headerFooter=Object.assign({},{differentFirst:!1,differentOddEven:!1,oddHeader:null,oddFooter:null,evenHeader:null,evenFooter:null,firstHeader:null,firstFooter:null},e.headerFooter),this.pageSetup=Object.assign({},{margins:{left:.7,right:.7,top:.75,bottom:.75,header:.3,footer:.3},orientation:`portrait`,horizontalDpi:4294967295,verticalDpi:4294967295,fitToPage:!!(e.pageSetup&&(e.pageSetup.fitToWidth||e.pageSetup.fitToHeight)&&!e.pageSetup.scale),pageOrder:`downThenOver`,blackAndWhite:!1,draft:!1,cellComments:`None`,errors:`displayed`,scale:100,fitToWidth:1,fitToHeight:1,paperSize:void 0,showRowColHeaders:!1,showGridLines:!1,horizontalCentered:!1,verticalCentered:!1,rowBreaks:null,colBreaks:null},e.pageSetup),this.useSharedStrings=e.useSharedStrings||!1,this._workbook=e.workbook,this.hasComments=!1,this._views=e.views||[],this.autoFilter=e.autoFilter||null,this._media=[],this.sheetProtection=null,this._writeOpenWorksheet(),this.startedData=!1}get workbook(){return this._workbook}get stream(){return this._stream||=this._workbook._openStream(Kn(this.id)),this._stream}destroy(){throw Error(`Invalid Operation: destroy`)}commit(){if(!this.committed){for(let e=this._rowOffset;e<this._rows.length;e++){let t=this._rows[e];t&&this._writeRow(t)}this._rows=null,this.startedData||this._writeOpenSheetData(),this._writeCloseSheetData(),this._writeSheetProtection(),this._writeAutoFilter(),this._writeMergeCells(),this._writeHyperlinks(),this._writeConditionalFormatting(),this._writeDataValidations(),this._writePageMargins(),this._writePageSetup(),this._writeBackground(),this._writeHeaderFooter(),this._writeRowBreaks(),this._writeColBreaks(),this._writeLegacyData(),this._writeCloseWorksheet(),this.stream.end(),this._sheetCommentsWriter.commit(),this._sheetRelsWriter.commit(),this.committed=!0}}get dimensions(){return this._dimensions}get views(){return this._views}get columns(){return this._columns}set columns(e){this._headerRowCount=e.reduce((e,t)=>{let n=t.header&&1||t.headers&&t.headers.length||0;return Math.max(e,n)},0);let t=1,n=this._columns=[];e.forEach(e=>{let r=new O(this,t++,!1);n.push(r),r.defn=e})}getColumnKey(e){return this._keys[e]}setColumnKey(e,t){this._keys[e]=t}deleteColumnKey(e){delete this._keys[e]}eachColumnKey(e){Object.keys(this._keys).forEach(t=>e(this._keys[t],t))}getColumn(e){if(typeof e==`string`){let t=this._keys[e];if(t)return t;e=n.l2n(e)}if(this._columns||=[],e>this._columns.length){let t=this._columns.length+1;for(;t<=e;)this._columns.push(new O(this,t++))}return this._columns[e-1]}get _nextRow(){return this._rowZero+(this._rows.length-this._rowOffset)}eachRow(e,t){let n,r;if(typeof e==`function`?(n=e,r=void 0):(n=t,r=e),r&&r.includeEmpty){let e=this._nextRow;for(let t=this._rowZero;t<e;t++)n(this.getRow(t),t)}else this._rows.forEach(e=>{e.hasValues&&n(e,e.number)})}_commitRow(e){let t=!1,n=this._rows;for(;this._rowOffset<n.length&&!t;){let r=n[this._rowOffset];n[this._rowOffset]=void 0,this._rowOffset++,this._rowZero++,r&&(this._writeRow(r),t=r.number===e.number,this._rowZero=r.number+1),this._rowOffset>1024&&this._rowOffset>n.length>>1&&(n.splice(0,this._rowOffset),this._rowOffset=0)}}get lastRow(){let e=this._rows;for(let t=e.length-1;t>=this._rowOffset;t--){let n=e[t];if(n)return n}}findRow(e){let t=e-this._rowZero+this._rowOffset;return this._rows[t]}getRow(e){let t=e-this._rowZero+this._rowOffset;if(t<this._rowOffset)throw Error(`Out of bounds: this row has been committed`);let n=this._rows[t];return n||(this._rows[t]=n=new ce(this,e)),n}addRow(e){let t=new ce(this,this._nextRow);return this._rows[t.number-this._rowZero+this._rowOffset]=t,t.values=e,t}findCell(e,t){let r=n.getAddress(e,t),i=this.findRow(r.row);return i?i.findCell(r.column):void 0}getCell(e,t){let r=n.getAddress(e,t);return this.getRow(r.row).getCellEx(r)}mergeCells(...e){let t=new r(e);this._merges.forEach(e=>{if(e.intersects(t))throw Error(`Cannot merge already merged cells`)});let n=this.getCell(t.top,t.left);for(let e=t.top;e<=t.bottom;e++)for(let r=t.left;r<=t.right;r++)(e>t.top||r>t.left)&&this.getCell(e,r).merge(n);this._merges.push(t)}addConditionalFormatting(e){this.conditionalFormatting.push(e)}removeConditionalFormatting(e){typeof e==`number`?this.conditionalFormatting.splice(e,1):e instanceof Function?this.conditionalFormatting=this.conditionalFormatting.filter(e):this.conditionalFormatting=[]}addBackgroundImage(e){this._background={imageId:e}}getBackgroundImageId(){return this._background&&this._background.imageId}async protect(e,t){this.sheetProtection={sheet:!0},t&&`spinCount`in t&&(t.spinCount=Number.isFinite(t.spinCount)?Math.round(Math.max(0,t.spinCount)):1e5),e&&(this.sheetProtection.algorithmName=`SHA-512`,this.sheetProtection.saltValue=Le(it.randomBytes(16)),this.sheetProtection.spinCount=t&&`spinCount`in t?t.spinCount:1e5,this.sheetProtection.hashValue=await it.convertPasswordToHash(e,`SHA-512`,this.sheetProtection.saltValue,this.sheetProtection.spinCount)),t&&(this.sheetProtection=Object.assign(this.sheetProtection,t),!e&&`spinCount`in t&&delete this.sheetProtection.spinCount)}unprotect(){this.sheetProtection=null}_write(e){Q.reset(),Q.addText(e),this.stream.write(Q)}_writeSheetProperties(e,t,n){let r={outlineProperties:t&&t.outlineProperties,tabColor:t&&t.tabColor,pageSetup:n&&n.fitToPage?{fitToPage:n.fitToPage}:void 0};e.addText($.sheetProperties.toXml(r))}_writeSheetFormatProperties(e,t){let n=t?{defaultRowHeight:t.defaultRowHeight,dyDescent:t.dyDescent,outlineLevelCol:t.outlineLevelCol,outlineLevelRow:t.outlineLevelRow}:void 0;t&&t.defaultColWidth&&(n.defaultColWidth=t.defaultColWidth),e.addText($.sheetFormatProperties.toXml(n))}_writeOpenWorksheet(){Q.reset(),Q.addText(`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>`),Q.addText(`<worksheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="x14ac" xmlns:x14ac="http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac">`),this._writeSheetProperties(Q,this.properties,this.pageSetup),Q.addText($.sheetViews.toXml(this.views)),this._writeSheetFormatProperties(Q,this.properties),this.stream.write(Q)}_writeColumns(){let e=O.toModel(this.columns);e&&($.columns.prepare(e,{styles:this._workbook.styles}),this.stream.write($.columns.toXml(e)))}_writeOpenSheetData(){this._write(`<sheetData>`)}_writeRow(e){if(this.startedData||=(this._writeColumns(),this._writeOpenSheetData(),!0),e.hasValues||e.height){let{model:t}=e,n={styles:this._workbook.styles,sharedStrings:this.useSharedStrings?this._workbook.sharedStrings:void 0,hyperlinks:this._sheetRelsWriter.hyperlinksProxy,merges:this._merges,formulae:this._formulae,siFormulae:this._siFormulae,comments:[]};$.row.prepare(t,n),this.stream.write($.row.toXml(t)),n.comments.length&&(this.hasComments=!0,this._sheetCommentsWriter.addComments(n.comments))}}_writeCloseSheetData(){this._write(`</sheetData>`)}_writeMergeCells(){this._merges.length&&(Q.reset(),Q.addText(`<mergeCells count="${this._merges.length}">`),this._merges.forEach(e=>{Q.addText(`<mergeCell ref="${e}"/>`)}),Q.addText(`</mergeCells>`),this.stream.write(Q))}_writeHyperlinks(){this.stream.write($.hyperlinks.toXml(this._sheetRelsWriter._hyperlinks))}_writeConditionalFormatting(){let e={styles:this._workbook.styles};$.conditionalFormattings.prepare(this.conditionalFormatting,e),this.stream.write($.conditionalFormattings.toXml(this.conditionalFormatting))}_writeRowBreaks(){this.stream.write($.rowBreaks.toXml(this.rowBreaks))}_writeColBreaks(){this.stream.write($.colBreaks.toXml(this.colBreaks))}_writeDataValidations(){this.stream.write($.dataValidations.toXml(this.dataValidations.model))}_writeSheetProtection(){this.stream.write($.sheetProtection.toXml(this.sheetProtection))}_writePageMargins(){this.stream.write($.pageMargins.toXml(this.pageSetup.margins))}_writePageSetup(){this.stream.write($.pageSeteup.toXml(this.pageSetup))}_writeHeaderFooter(){this.stream.write($.headerFooter.toXml(this.headerFooter))}_writeAutoFilter(){this.stream.write($.autoFilter.toXml(this.autoFilter))}_writeBackground(){if(this._background){if(this._background.imageId!==void 0){let e=this._workbook.getImage(this._background.imageId),t=this._sheetRelsWriter.addMedia({Target:yr(e.name),Type:G.Image});this._background={...this._background,rId:t}}this.stream.write($.picture.toXml({rId:this._background.rId}))}}_writeLegacyData(){this.hasComments&&(Q.reset(),Q.addText(`<legacyDrawing r:id="${this._sheetCommentsWriter.vmlRelId}"/>`),this.stream.write(Q))}_writeDimensions(){}_writeCloseWorksheet(){this._write(`</worksheet>`)}};let ml=new Uint8Array,hl=new TextDecoder;var gl=class{constructor(e,t){this.WorksheetWriterClass=t,this.created=e.created||new Date,this.modified=e.modified||this.created,this.creator=e.creator||`ExcelTS`,this.lastModifiedBy=e.lastModifiedBy||`ExcelTS`,this.lastPrinted=e.lastPrinted,this.useSharedStrings=e.useSharedStrings||!1,this.sharedStrings=new ll,this.styles=e.useStyles?new V(!0):new V.Mock(!0),this._definedNames=new vt,this._worksheets=[],this.views=[],this.zipOptions=e.zip;let n=e.zip?.zlib?.level??e.zip?.compressionOptions?.level??1;this.compressionLevel=Math.max(0,Math.min(9,n)),this.media=[],this.commentRefs=[],this._trueStreaming=e.trueStreaming??!1,this.zip=new Ss((e,t,n)=>{e?this.stream.emit(`error`,e):(this.stream.write(t),n&&this.stream.end())}),this.stream=this._createOutputStream(e),this.promise=Promise.all([this.addThemes(),this.addOfficeRels()])}_createOutputStream(e){return e.stream?Ke(e.stream):new $a}get definedNames(){return this._definedNames}_openStream(e){let t=new $a({bufSize:this._trueStreaming?4096:65536,batch:!this._trueStreaming}),n=new xs(e,{level:this.compressionLevel});this.zip.add(n);let r=e=>n.push(e);return t.on(`data`,r),t.once(`finish`,()=>{t.removeListener(`data`,r),n.push(ml,!0),t.emit(`zipped`)}),t}_addFile(e,t,n){let r=new xs(t,{level:this.compressionLevel});this.zip.add(r);let i;i=n?Ce(typeof e==`string`?e:hl.decode(e)):typeof e==`string`?We(e):e,r.push(i,!0)}_commitWorksheets(){let e=this._worksheets.map(e=>e.committed?Promise.resolve():new Promise(t=>{e.stream.once(`zipped`,()=>t()),e.commit()}));return e.length?Promise.all(e).then(()=>{}):Promise.resolve()}async commit(){await this.promise,await this._commitWorksheets(),await this.addMedia(),await Promise.all([this.addContentTypes(),this.addApp(),this.addCore(),this.addSharedStrings(),this.addStyles(),this.addFeaturePropertyBag(),this.addWorkbookRels()]),await this.addWorkbook(),await this._finalize()}get nextId(){for(let e=1;e<this._worksheets.length;e++)if(!this._worksheets[e])return e;return this._worksheets.length||1}addImage(e){let t=this.media.length,n={...e,type:`image`,name:`image${t}.${e.extension}`};return this.media.push(n),t}getImage(e){return this.media[e]}addWorksheet(e,t){let n=t||{},r=n.useSharedStrings===void 0?this.useSharedStrings:n.useSharedStrings;n.tabColor&&(console.trace(`tabColor option has moved to { properties: tabColor: {...} }`),n.properties={tabColor:n.tabColor,...n.properties});let i=this.nextId;e||=`sheet${i}`;let a=new this.WorksheetWriterClass({id:i,name:e,workbook:this,useSharedStrings:r,properties:n.properties,state:n.state,pageSetup:n.pageSetup,views:n.views,autoFilter:n.autoFilter,headerFooter:n.headerFooter});return this._worksheets[i]=a,a}getWorksheet(e){if(e===void 0)return this._worksheets.find(()=>!0);if(typeof e==`number`)return this._worksheets[e];if(typeof e==`string`)return this._worksheets.find(t=>t?.name===e)}addStyles(){return new Promise(e=>{this._addFile(this.styles.xml,U.xlStyles),e()})}addThemes(){return new Promise(e=>{this._addFile(Ka,U.xlTheme1),e()})}addOfficeRels(){return new Promise(e=>{let t=new H().toXml([{Id:`rId1`,Type:G.OfficeDocument,Target:U.xlWorkbook},{Id:`rId2`,Type:G.CoreProperties,Target:U.docPropsCore},{Id:`rId3`,Type:G.ExtenderProperties,Target:U.docPropsApp}]);this._addFile(t,U.rootRels),e()})}addContentTypes(){return new Promise(e=>{let t={worksheets:this._worksheets.filter(Boolean),sharedStrings:this.sharedStrings,commentRefs:this.commentRefs,media:this.media,hasCheckboxes:this.styles.hasCheckboxes},n=new Sr;this._addFile(n.toXml(t),U.contentTypes),e()})}addMedia(){return Promise.all(this.media.map(async e=>{if(e.type===`image`){let t=Gn(e.name);if(e.buffer){this._addFile(e.buffer,t);return}if(e.base64){let n=e.base64.substring(e.base64.indexOf(`,`)+1);this._addFile(n,t,!0);return}if(e.filename)throw Error(`Loading images from filename is not supported in browser. Use buffer or base64.`)}throw Error(`Unsupported media`)}))}addApp(){return new Promise(e=>{let t=new Tr;this._addFile(t.toXml({worksheets:this._worksheets.filter(Boolean)}),U.docPropsApp),e()})}addCore(){return new Promise(e=>{let t=new an;this._addFile(t.toXml(this),U.docPropsCore),e()})}addSharedStrings(){return this.sharedStrings.count?new Promise(e=>{let t=new un;this._addFile(t.toXml(this.sharedStrings),U.xlSharedStrings),e()}):Promise.resolve()}addFeaturePropertyBag(){if(this.styles.hasCheckboxes){let e=new ea;this._addFile(e.toXml({}),U.xlFeaturePropertyBag)}return Promise.resolve()}addWorkbookRels(){let e=1,t=[{Id:`rId${e++}`,Type:G.Styles,Target:cr.workbookStyles},{Id:`rId${e++}`,Type:G.Theme,Target:cr.workbookTheme1}];return this.sharedStrings.count&&t.push({Id:`rId${e++}`,Type:G.SharedStrings,Target:cr.workbookSharedStrings}),this.styles.hasCheckboxes&&t.push({Id:`rId${e++}`,Type:G.FeaturePropertyBag,Target:cr.workbookFeaturePropertyBag}),this._worksheets.forEach(n=>{n&&(n.rId=`rId${e++}`,t.push({Id:n.rId,Type:G.Worksheet,Target:Jn(n.id)}))}),new Promise(e=>{let n=new H;this._addFile(n.toXml(t),U.xlWorkbookRels),e()})}addWorkbook(){let e={worksheets:this._worksheets.filter(Boolean),definedNames:this._definedNames.model,views:this.views,properties:{},calcProperties:{}};return new Promise(t=>{let n=new Lr;n.prepare(e),this._addFile(n.toXml(e),U.xlWorkbook),t()})}_finalize(){return new Promise((e,t)=>{let n=e=>{this.stream.removeListener(`finish`,r),t(e)},r=()=>{this.stream.removeListener(`error`,n),e(this)};this.stream.once(`error`,n),this.stream.once(`finish`,r),this.zip.end()})}},_l=class extends gl{constructor(e={}){super(e,pl)}};async function*vl(e){let t=[],n=null,r=e=>{t.push(e),n&&=(n(),null)};e.on(`data`,r);let i=!1,a=()=>{i=!0,n&&=(n(),null)};e.on(`end`,a);let o=!1,s=e=>{o=e,n&&=(n(),null)};e.on(`error`,s);try{for(;!i||t.length>0;)if(t.length===0?(e.resume(),await new Promise(e=>{n=e})):(e.pause(),yield t.shift()),o)throw o}finally{e.removeListener(`data`,r),e.removeListener(`end`,a),e.removeListener(`error`,s)}}var yl=class extends j{constructor({workbook:e,id:t,iterator:n,options:i}){super(),this.workbook=e,this.id=t,this.sheetNo=typeof t==`number`?t:parseInt(String(t),10),this.iterator=n,this.options=i||{},this.name=`Sheet${this.id}`,this._columns=null,this._keys=Object.create(null),this._dimensions=new r}destroy(){throw Error(`Invalid Operation: destroy`)}get dimensions(){return this._dimensions}get columns(){return this._columns}getColumn(e){if(typeof e==`string`){let t=this._keys[e];if(t)return t;e=n.l2n(e)}if(this._columns||=[],e>this._columns.length){let t=this._columns.length+1;for(;t<=e;)this._columns.push(new O(this,t++))}return this._columns[e-1]}getColumnKey(e){return this._keys[e]}setColumnKey(e,t){this._keys[e]=t}deleteColumnKey(e){delete this._keys[e]}eachColumnKey(e){let t=this._keys;for(let n in t)e(t[n],n)}async read(){try{for await(let e of this.parse())for(let t=0;t<e.length;t++){let n=e[t];this.emit(n.eventType,n.value)}this.emit(`finished`)}catch(e){this.emit(`error`,e)}}async*[Symbol.asyncIterator](){for await(let e of this.parse())for(let t=0;t<e.length;t++){let n=e[t];n.eventType===`row`&&(yield n.value)}}async*parse(){let{iterator:e,options:t}=this,r=!1,i=!1,a=null;switch(t.worksheets){case`emit`:r=!0;break;case`prep`:break;default:break}switch(t.hyperlinks){case`emit`:i=!0;break;case`cache`:this.hyperlinks=a=Object.create(null);break;default:break}if(!r&&!i&&!a)return;let o=i||a!==null,{sharedStrings:s,styles:c,properties:l}=this.workbook,u=!1,d=!1,f=!1,p=null,m=null,h=null,g=null;for await(let t of Mt(e)){let e=null;for(let _=0;_<t.length;_++){let v=t[_],y=v.eventType,ee=v.value;if(y===`opentag`){let t=ee;if(r)switch(t.name){case`cols`:u=!0,p=[];break;case`sheetData`:d=!0;break;case`col`:u&&p.push({min:parseInt(t.attributes.min,10),max:parseInt(t.attributes.max,10),width:parseFloat(t.attributes.width),styleId:parseInt(t.attributes.style||`0`,10)});break;case`row`:if(d){let e=parseInt(t.attributes.r,10);if(m=new ce(this,e),t.attributes.ht&&(m.height=parseFloat(t.attributes.ht)),t.attributes.s){let e=parseInt(t.attributes.s,10),n=c.getStyleModel(e);n&&(m.style=n)}}break;case`c`:if(m){let e=t.attributes.s;h={ref:t.attributes.r,s:e?parseInt(e,10):0,t:t.attributes.t}}break;case`f`:h&&(g=h.f={text:``});break;case`v`:h&&(g=h.v={text:``});break;case`is`:case`t`:h&&(g=h.v={text:``});break;case`mergeCell`:break;default:break}if(o)switch(t.name){case`hyperlinks`:f=!0;break;case`hyperlink`:if(f){let n={ref:t.attributes.ref,rId:t.attributes[`r:id`]};i?(e||=[]).push({eventType:`hyperlink`,value:n}):a[n.ref]=n}break;default:break}}else if(y===`text`)r&&g&&(g.text+=ee);else if(y===`closetag`){let t=ee;if(r)switch(t.name){case`cols`:u=!1,this._columns=O.fromModel(p);break;case`sheetData`:d=!1;break;case`row`:m&&(this._dimensions.expandRow(m),(e||=[]).push({eventType:`row`,value:m})),m=null;break;case`c`:if(m&&h){let e=n.decodeAddress(h.ref),t=m.getCell(e.col);if(h.s){let e=c.getStyleModel(h.s);e&&(t.style=e)}if(h.f){let e={formula:h.f.text};h.v&&(h.t===`str`?e.result=De(h.v.text):e.result=parseFloat(h.v.text)),t.value=e}else if(h.v)switch(h.t){case`s`:{let e=parseInt(h.v.text,10);s?t.value=s[e]:t.value={sharedString:e};break}case`inlineStr`:case`str`:t.value=De(h.v.text);break;case`e`:t.value={error:h.v.text};break;case`b`:t.value=parseInt(h.v.text,10)!==0;break;default:{let e=typeof t.numFmt==`string`?t.numFmt:t.numFmt?.formatCode;e&&je(e)?t.value=Te(parseFloat(h.v.text),l?.model?.date1904):t.value=parseFloat(h.v.text);break}}if(a){let e=a[h.ref];e&&(t.text=t.value,t.value=void 0,t.hyperlink=e)}h=null,g=null}break;default:break}if(o)switch(t.name){case`hyperlinks`:f=!1;break;default:break}}}e&&e.length>0&&(yield e)}}},bl=class extends j{constructor({workbook:e,id:t,iterator:n,options:r}){super(),this._hyperlinkCount=0,this.workbook=e,this.id=t,this.iterator=n,this.options=r}get count(){return this.hyperlinks?this._hyperlinkCount:0}each(e){let t=this.hyperlinks;if(t)for(let n in t)e(t[n],n)}async read(){let{iterator:e}=this,t=this.options.hyperlinks,n=t===`emit`,r=t===`cache`,i=null;if(r&&(this._hyperlinkCount=0,this.hyperlinks=i=Object.create(null)),!n&&!r){this.emit(`finished`);return}try{for await(let t of Mt(e))for(let{eventType:e,value:r}of t){if(e!==`opentag`)continue;let t=r;if(t.name!==`Relationship`)continue;let a=t.attributes;if(a.Type!==G.Hyperlink)continue;let o={type:u.RelationshipType.Hyperlink,rId:a.Id,target:a.Target,targetMode:a.TargetMode};if(n){this.emit(`hyperlink`,o);continue}let s=o.rId;i&&i[s]===void 0&&(this._hyperlinkCount+=1),i[s]=o}this.emit(`finished`)}catch(e){this.emit(`error`,e)}}},xl=class extends j{getHyperlinkReader(e){return this._hyperlinkReadersBySheetNo?.[String(e)]}getHyperlink(e,t){return this.getHyperlinkReader(e)?.hyperlinks?.[t]}getHyperlinkTarget(e,t){return this.getHyperlink(e,t)?.target}constructor(e,t,n,r){super(),this.input=e,this.WorksheetReaderClass=n,this.HyperlinkReaderClass=r,this.options={worksheets:`emit`,sharedStrings:`cache`,hyperlinks:`ignore`,styles:`ignore`,entries:`ignore`,...t},this.styles=new V,this.styles.init()}_getStream(e){if(e instanceof M)return e;if(e&&typeof e==`object`&&typeof e.getReader==`function`){let t=M.fromWeb;if(typeof t==`function`)return t(e);try{return new M({stream:e})}catch{throw Error(`Could not recognise input: ReadableStream`)}}let t=e;if(t instanceof ArrayBuffer&&(t=new Uint8Array(t)),t instanceof Uint8Array)return M.from([t]);throw Error(`Could not recognise input: ${e}`)}_cleanupWaitingWorksheets(e){for(let t of e)t&&typeof t.cleanup==`function`&&t.cleanup()}_createWorksheetReader(e){return new this.WorksheetReaderClass({workbook:this,id:e.id,iterator:e.iterator,options:e.options})}_createHyperlinkReader(e){return new this.HyperlinkReaderClass({workbook:this,id:e.id,iterator:e.iterator,options:e.options})}async read(e,t){try{for await(let{eventType:n,value:r}of this.parse(e,t))switch(n){case`shared-strings`:this.emit(n,r);break;case`worksheet`:this.emit(n,r),await r.read();break;case`hyperlinks`:this.emit(n,r);break}this.emit(`end`),this.emit(`finished`)}catch(e){this.emit(`error`,e)}}async*[Symbol.asyncIterator](){for await(let{eventType:e,value:t}of this.parse())e===`worksheet`&&(yield t)}async*parse(e,t){t&&(this.options=t);let n=this.stream=this._getStream(e||this.input),r=[];try{for await(let e of this._parseEntries(n))if(e.eventType===`waiting-worksheet`){let t=await this._storeWaitingWorksheet(e.sheetNo,e.entry);r.push(t)}else yield e;yield*this._processWaitingWorksheets(r)}catch(e){throw this._cleanupWaitingWorksheets(r),e}}_emitEntry(e){this.options.entries===`emit`&&this.emit(`entry`,e)}async _parseRels(e){this.workbookRels=await new H().parseStream(vl(e)),this._workbookRelIdByTarget=Object.create(null);for(let e of this.workbookRels||[])e?.Target&&e?.Id&&(this._workbookRelIdByTarget[e.Target]=e.Id)}async _parseWorkbook(e){this._emitEntry({type:`workbook`});let t=new Lr;this.model=await t.parseStream(vl(e)),this.properties=t.map?.workbookPr,this._sheetByRelId=Object.create(null);for(let e of this.model?.sheets||[])this._sheetByRelId[e.rId]=e}async*_parseSharedStrings(e){switch(this._emitEntry({type:`shared-strings`}),this.options.sharedStrings){case`cache`:this.sharedStrings=[];break;case`emit`:break;default:return}let t=null,n=[],r=0,i=null,a=!1;for await(let o of Mt(vl(e)))for(let{eventType:e,value:s}of o)if(e===`opentag`){let e=s;switch(e.name){case`b`:i||={},i.bold=!0;break;case`charset`:i||={},i.charset=parseInt(e.attributes.charset,10);break;case`color`:i||={},i.color={},e.attributes.rgb&&(i.color.argb=e.attributes.rgb),e.attributes.val&&(i.color.argb=e.attributes.val),e.attributes.theme&&(i.color.theme=e.attributes.theme);break;case`family`:i||={},i.family=parseInt(e.attributes.val,10);break;case`i`:i||={},i.italic=!0;break;case`outline`:i||={},i.outline=!0;break;case`rFont`:i||={},i.name=e.attributes.val;break;case`r`:a=!0;break;case`si`:i=null,n=[],t=null,a=!1;break;case`sz`:i||={},i.size=parseInt(e.attributes.val,10);break;case`strike`:i||={},i.strike=!0;break;case`t`:t=null;break;case`u`:i||={},i.underline=!0;break;case`vertAlign`:i||={},i.vertAlign=e.attributes.val;break}}else if(e===`text`)t=t?t+s:s;else if(e===`closetag`)switch(s.name){case`r`:a&&(n.push({font:i,text:t}),i=null,t=null);break;case`si`:this.options.sharedStrings===`cache`?this.sharedStrings.push(n.length?{richText:n}:t||``):this.options.sharedStrings===`emit`&&(yield{index:r++,text:n.length?{richText:n}:t||``}),n=[],i=null,t=null,a=!1;break}}async _parseStyles(e){this._emitEntry({type:`styles`}),this.options.styles===`cache`&&(this.styles=new V,await this.styles.parseStream(vl(e)))}*_parseWorksheet(e,t){this._emitEntry({type:`worksheet`,id:t});let n=parseInt(t,10),r=this._createWorksheetReader({id:n,iterator:e,options:this.options});r.sheetNo=n;let i=this._workbookRelIdByTarget?.[Jn(t)],a=i?this._sheetByRelId?.[i]:void 0;a&&(r.id=a.id,r.name=a.name,r.state=a.state),this.options.worksheets===`emit`&&(yield{eventType:`worksheet`,value:r})}async*_parseHyperlinks(e,t){this._emitEntry({type:`hyperlinks`,id:t});let n=this._createHyperlinkReader({id:parseInt(t,10),iterator:e,options:this.options});if(this.options.hyperlinks===`cache`){this._hyperlinkReadersBySheetNo||=Object.create(null),this._hyperlinkReadersBySheetNo[t]=n;let e=n.read;typeof e==`function`&&await e.call(n);return}this.options.hyperlinks===`emit`&&(yield{eventType:`hyperlinks`,value:n})}async*_parseEntries(e){let t=wc({forceStream:!0});e.on(`error`,e=>t.emit(`error`,e)),e.pipe(t);for await(let e of vl(t)){let t,n=En(e.path);switch(n){case U.rootRels:break;case U.xlWorkbookRels:await this._parseRels(e);break;case U.xlWorkbook:await this._parseWorkbook(e);break;case U.xlSharedStrings:for await(let t of this._parseSharedStrings(e))yield{eventType:`shared-strings`,value:t};break;case U.xlStyles:await this._parseStyles(e);break;default:if(t=Dn(n)?.toString(),t)if(this.workbookRels&&(this.options.sharedStrings!==`cache`||this.sharedStrings)){yield*this._parseWorksheet(vl(e),t);continue}else{yield{eventType:`waiting-worksheet`,sheetNo:t,entry:e};continue}if(t=On(n)?.toString(),t){yield*this._parseHyperlinks(vl(e),t);continue}break}e.autodrain()}}},Sl=class extends xl{constructor(e,t={}){super(e,t,yl,bl)}async _storeWaitingWorksheet(e,t){let n=[],r=new TextEncoder;for await(let e of vl(t))e instanceof Uint8Array?n.push(e):typeof e==`string`&&n.push(r.encode(e));return{sheetNo:e,data:n}}async*_processWaitingWorksheets(e){for(let t of e){let e=(async function*(){for(let e of t.data)yield e})();yield*this._parseWorksheet(e,t.sheetNo)}}},Cl=class{static{this.Writer=_l}static{this.Reader=Sl}constructor(){this.category=``,this.company=``,this.created=new Date,this.description=``,this.keywords=``,this.manager=``,this.modified=this.created,this.properties={},this.calcProperties={},this._worksheets=[],this.subject=``,this.title=``,this.views=[],this.media=[],this.pivotTables=[],this._definedNames=new vt}get xlsx(){return this._xlsx||=new Ec(this),this._xlsx}get csv(){return this._csv||=new cl(this),this._csv}static createStreamWriter(e){return new _l(e)}static createStreamReader(e,t){return new Sl(e,t)}get nextId(){for(let e=1;e<this._worksheets.length;e++)if(!this._worksheets[e])return e;return this._worksheets.length||1}addWorksheet(e,t){let n=this.nextId,r=this._worksheets.reduce((e,t)=>(t&&t.orderNo)>e?t.orderNo:e,0),i=new pt({...t,id:n,name:e,orderNo:r+1,workbook:this});return this._worksheets[n]=i,i}removeWorksheetEx(e){delete this._worksheets[e.id]}removeWorksheet(e){let t=this.getWorksheet(e);t&&t.destroy()}getWorksheet(e){if(e===void 0)return this._worksheets.find(Boolean);if(typeof e==`number`)return this._worksheets[e];if(typeof e==`string`)return this._worksheets.find(t=>t&&t.name===e)}get worksheets(){return this._worksheets.slice(1).sort((e,t)=>e.orderNo-t.orderNo).filter(Boolean)}eachSheet(e){this.worksheets.forEach(t=>{e(t,t.id)})}get definedNames(){return this._definedNames}clearThemes(){this._themes=void 0}addImage(e){let t=this.media.length;return this.media.push({...e,type:`image`}),t}getImage(e){return this.media[Number(e)]}get model(){return{creator:this.creator||`Unknown`,lastModifiedBy:this.lastModifiedBy||`Unknown`,lastPrinted:this.lastPrinted,created:this.created,modified:this.modified,properties:this.properties,worksheets:this.worksheets.map(e=>e.model),sheets:this.worksheets.map(e=>e.model).filter(Boolean),definedNames:this._definedNames.model,views:this.views,company:this.company,manager:this.manager,title:this.title,subject:this.subject,keywords:this.keywords,category:this.category,description:this.description,language:this.language,revision:this.revision,contentStatus:this.contentStatus,themes:this._themes,media:this.media,pivotTables:this.pivotTables,calcProperties:this.calcProperties}}set model(e){this.creator=e.creator,this.lastModifiedBy=e.lastModifiedBy,this.lastPrinted=e.lastPrinted,this.created=e.created,this.modified=e.modified,this.company=e.company,this.manager=e.manager,this.title=e.title,this.subject=e.subject,this.keywords=e.keywords,this.category=e.category,this.description=e.description,this.language=e.language,this.revision=e.revision,this.contentStatus=e.contentStatus,this.properties=e.properties,this.calcProperties=e.calcProperties,this._worksheets=[],e.worksheets.forEach(t=>{let{id:n,name:r,state:i}=t,a=e.sheets&&e.sheets.findIndex(e=>e.id===n),o=this._worksheets[n]=new pt({id:n,name:r,orderNo:a===-1?void 0:a,state:i,workbook:this});o.model=t}),this._definedNames.model=e.definedNames,this.views=e.views,this._themes=e.themes,this.media=e.media||[],this.pivotTables=e.pivotTables||e.loadedPivotTables||[]}};let wl=function(e){return e[e.Legal=5]=`Legal`,e[e.Executive=7]=`Executive`,e[e.A4=9]=`A4`,e[e.A5=11]=`A5`,e[e.B5=13]=`B5`,e[e.Envelope_10=20]=`Envelope_10`,e[e.Envelope_DL=27]=`Envelope_DL`,e[e.Envelope_C5=28]=`Envelope_C5`,e[e.Envelope_B5=34]=`Envelope_B5`,e[e.Envelope_Monarch=37]=`Envelope_Monarch`,e[e.Double_Japan_Postcard_Rotated=82]=`Double_Japan_Postcard_Rotated`,e[e.K16_197x273_mm=119]=`K16_197x273_mm`,e}({});function Tl(e,t){let n=Math.round(e).toString();for(;n.length<t;)n=`0`+n;return n}function El(e){if(e.length<=3)return e;let t=e.length%3,n=e.substring(0,t);for(let r=t;r<e.length;r+=3)n+=(n.length>0?`,`:``)+e.substring(r,r+3);return n}function Dl(e,t){let n=10**t;return Math.round(e*n)/n}function Ol(e){let t=e.replace(/_./g,` `);return t=t.replace(/\*./g,``),t}function kl(e){return/^General$/i.test(e.trim())}function Al(e){let t=e.replace(/\[[^\]]*\]/g,``);return/[ymdhs]/i.test(t)&&!/^[#0.,E%$\s()\-+]+$/i.test(t)}let jl=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],Ml=[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],Nl=[`J`,`F`,`M`,`A`,`M`,`J`,`J`,`A`,`S`,`O`,`N`,`D`],Pl=[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],Fl=[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`];function Il(e,t){let n=Math.round(e*86400)%86400,r=Math.floor(n/3600),i=Math.floor(n%3600/60),a=n%60,o=Te(e,!1),s=o.getUTCFullYear(),c=o.getUTCMonth(),l=o.getUTCDate(),u=o.getUTCDay(),d=e*86400-Math.floor(e*86400),f=/AM\/PM|A\/P/i.test(t),p=r>=12,m=r%12||12,h=t.replace(/\[(Red|Green|Blue|Yellow|Magenta|Cyan|White|Black|Color\d+)\]/gi,``);h=Ol(h);let g=h.match(/ss\.(0+)/i),_=``;if(g){let e=g[1].length;_=Math.round(d*10**e).toString().padStart(e,`0`),h=h.replace(/ss\.0+/gi,`\0SF\0`)}h=h.replace(/yyyy/gi,`\0Y4\0`),h=h.replace(/yy/gi,`\0Y2\0`),h=h.replace(/mmmmm/gi,`\0MN5\0`),h=h.replace(/mmmm/gi,`\0MN4\0`),h=h.replace(/mmm/gi,`\0MN3\0`),h=h.replace(/dddd/gi,`\0DN4\0`),h=h.replace(/ddd/gi,`\0DN3\0`),h=h.replace(/dd/gi,`\0D2\0`),h=h.replace(/\bd\b/gi,`\0D1\0`),h=h.replace(/hh/gi,`\0H2\0`),h=h.replace(/\bh\b/gi,`\0H1\0`),h=h.replace(/ss/gi,`\0S2\0`),h=h.replace(/\bs\b/gi,`\0S1\0`),h=/\x00H[12]\x00.*mm|mm.*\x00S[12]\x00/i.test(h)?h.replace(/mm/gi,`\0MI2\0`):h.replace(/mm/gi,`\0M2\0`),h=h.replace(/\bm\b/gi,`\0M1\0`),h=h.replace(/AM\/PM/gi,`\0AMPM\0`),h=h.replace(/A\/P/gi,`\0AP\0`);let v=f?m:r;return h=h.replace(/\x00Y4\x00/g,s.toString()).replace(/\x00Y2\x00/g,(s%100).toString().padStart(2,`0`)).replace(/\x00MN5\x00/g,Nl[c]).replace(/\x00MN4\x00/g,Ml[c]).replace(/\x00MN3\x00/g,jl[c]).replace(/\x00M2\x00/g,(c+1).toString().padStart(2,`0`)).replace(/\x00M1\x00/g,(c+1).toString()).replace(/\x00DN4\x00/g,Fl[u]).replace(/\x00DN3\x00/g,Pl[u]).replace(/\x00D2\x00/g,l.toString().padStart(2,`0`)).replace(/\x00D1\x00/g,l.toString()).replace(/\x00H2\x00/g,v.toString().padStart(2,`0`)).replace(/\x00H1\x00/g,v.toString()).replace(/\x00MI2\x00/g,i.toString().padStart(2,`0`)).replace(/\x00S2\x00/g,a.toString().padStart(2,`0`)).replace(/\x00S1\x00/g,a.toString()).replace(/\x00SF\x00/g,a.toString().padStart(2,`0`)+`.`+_).replace(/\x00AMPM\x00/g,p?`PM`:`AM`).replace(/\x00AP\x00/g,p?`P`:`A`),h=h.replace(/\\/g,``),h}function Ll(e){return typeof e==`boolean`?e?`TRUE`:`FALSE`:typeof e==`string`?e:Number.isInteger(e)?e.toString():e.toPrecision(11).replace(/\.?0+$/,``).replace(/\.?0+e/,`e`)}function Rl(e,t){let n=(t.match(/%/g)||[]).length;return Ul(e*100**n,t.replace(/%/g,``)||`0`)+`%`.repeat(n)}function zl(e,t){let n=e<0?`-`:``,r=Math.abs(e);if(r===0){let e=t.match(/\.([0#]+)E/i),n=e?e[1].length:2;return`0.`+`0`.repeat(n)+`E+00`}let i=t.match(/\.([0#]+)E/i),a=i?i[1].length:2,o=t.includes(`E+`),s=Math.floor(Math.log10(r)),c=Dl(r/10**s,a).toFixed(a),l=s>=0?o?`+`:``:`-`,u=Tl(Math.abs(s),2);return n+c+`E`+l+u}function Bl(e,t){let n=e<0?-1:1,r=Math.abs(e),i=Math.floor(r);if(r-=i,r<1e-10)return[n*i,0,1];let a=0,o=1,s=1,c=0,l=Math.floor(r),u=l,d=1;for(;c<t&&(l=Math.floor(r),u=l*o+a,d=l*c+s,!(r-l<1e-10));)r=1/(r-l),a=o,o=u,s=c,c=d;return d>t&&(d=c,u=o),[n*i,n*u,d]}function Vl(e,t){let n=e<0?`-`:``,r=Math.abs(e),i=t.match(/\?+\s*\/\s*(\d+)/);if(i){let e=parseInt(i[1],10),a=Math.floor(r),o=r-a,s=Math.round(o*e);return t.includes(`#`)||t.includes(`0`)?s===0?n+a.toString():n+(a>0?a+` `:``)+s+`/`+e:n+(a*e+s)+`/`+e}let a=t.match(/\/\s*(\?+)/),[o,s,c]=Bl(r,10**(a?a[1].length:2)-1);return t.includes(`#`)&&o!==0?s===0?n+Math.abs(o).toString():n+Math.abs(o)+` `+Math.abs(s)+`/`+c:s===0?o===0?`0`:n+Math.abs(o).toString():n+(Math.abs(o)*c+Math.abs(s))+`/`+c}function Hl(e,t){let n=Math.round(e*86400),r=Math.floor(n/60),i=Math.floor(r/60),a=n%60,o=r%60,s=i,c=t;return/\[h+\]/i.test(c)&&(c=c.replace(/\[h+\]/gi,s.toString())),/\[m+\]/i.test(c)&&(c=c.replace(/\[m+\]/gi,r.toString())),/\[s+\]/i.test(c)&&(c=c.replace(/\[s+\]/gi,n.toString())),c=c.replace(/mm/gi,o.toString().padStart(2,`0`)),c=c.replace(/ss/gi,a.toString().padStart(2,`0`)),c}function Ul(e,t){let n=Math.abs(e),r=e<0?`-`:``,i=0,a=t;for(;a.endsWith(`,`);)i++,a=a.slice(0,-1);let o=n/1e3**i,s=a.indexOf(`.`),c=a,l=``;s!==-1&&(c=a.substring(0,s),l=a.substring(s+1));let u=l.replace(/[^0#?]/g,``).length,[d,f=``]=Dl(o,u).toString().split(`.`),p=/[0#?][^0#?,.\s][0#?]/.test(c),m;if(p){let e=c.replace(/[^0#?]/g,``).length,t=d;t.length<e&&(t=`0`.repeat(e-t.length)+t),m=``;let n=t.length-e;for(let e=0;e<c.length;e++){let r=c[e];r===`0`||r===`#`||r===`?`?n<t.length&&(m+=t[n],n++):r!==`,`&&(m+=r)}}else{m=d,c.includes(`,`)&&(m=El(d));let e=(c.match(/0/g)||[]).length;m.length<e&&(m=`0`.repeat(e-m.length)+m)}let h=``;return u>0&&(h=`.`+(f+`0`.repeat(u)).substring(0,u)),r+m+h}function Wl(e){let t=``,n=0;for(;n<e.length;)if(e[n]===`"`){for(n++;n<e.length&&e[n]!==`"`;)t+=e[n],n++;n++}else e[n]===`\\`&&n+1<e.length?(n++,t+=e[n],n++):(t+=e[n],n++);return t}function Gl(e,t){let n=t.match(/\[(=|>|<|>=|<=|<>)(-?\d+(?:\.\d*)?)\]/);if(!n)return!1;let r=n[1],i=parseFloat(n[2]);switch(r){case`=`:return e===i;case`>`:return e>i;case`<`:return e<i;case`>=`:return e>=i;case`<=`:return e<=i;case`<>`:return e!==i;default:return!1}}function Kl(e,t){if(typeof t==`string`){let n=Jl(e);return n.length>=4&&n[3]?Wl(n[3]).replace(/@/g,t):t}if(typeof t==`boolean`)return t?`TRUE`:`FALSE`;let n=Jl(e),r=/\[(=|>|<|>=|<=|<>)-?\d+(?:\.\d*)?\]/;if((n[0]&&r.test(n[0])||n[1]&&r.test(n[1]))&&n.length>=2){for(let e=0;e<Math.min(n.length,2);e++){let r=n[e].match(/\[(=|>|<|>=|<=|<>)-?\d+(?:\.\d*)?\]/);if(r&&Gl(t,r[0]))return n[e]}return n[n.length>2?2:1]}return n.length===1?n[0]:n.length===2?t>=0?n[0]:n[1]:t>0?n[0]:t<0?n[1]:n[2]||n[0]}function ql(e,t){let n=Jl(e);return n.length>=2&&n[1]===t}function Jl(e){let t=[],n=``,r=!1,i=!1;for(let a=0;a<e.length;a++){let o=e[a];o===`"`&&!i?(r=!r,n+=o):o===`[`&&!r?(i=!0,n+=o):o===`]`&&!r?(i=!1,n+=o):o===`;`&&!r&&!i?(t.push(n),n=``):n+=o}return t.push(n),t}function Yl(e,t){if(t==null)return``;if(kl(e))return Ll(t);if(typeof t==`string`)return Kl(e,t);if(typeof t==`boolean`)return t?`TRUE`:`FALSE`;let n=t,r=Kl(e,n);n<0&&ql(e,r)&&(n=Math.abs(n));let i=r.replace(/\[(Red|Green|Blue|Yellow|Magenta|Cyan|White|Black|Color\d+)\]/gi,``);if(i=i.replace(/\[(>|<|>=|<=|=|<>)-?\d+(\.\d+)?\]/g,``),i=i.replace(/\[\$[^\]]*\]/g,``),i=Ol(i),i=Wl(i),/\[[hms]+\]/i.test(i))return Hl(n,i);if(Al(i))return Il(n,i);if(i.includes(`%`))return Rl(n,i);if(/E[+-]?/i.test(i))return zl(n,i);if(/\?+\s*\/\s*[\d?]+/.test(i))return Vl(n,i);if(i.includes(`(`)&&i.includes(`)`)&&n<0){let e=i.replace(/\(|\)/g,``);return`(`+Ul(-n,e)+`)`}if(i===`@`)return n.toString();let a=``,o=``,s=i.match(/^([^#0?.,]+)/);s&&(a=s[1],i=i.substring(s[0].length));let c=i.match(/([^#0?.,]+)$/);c&&!c[1].includes(`%`)&&(o=c[1],i=i.substring(0,i.length-c[0].length));let l=Ul(n,i);return a+l+o}function Xl(e){let t=e.replace(/"[^"]*"/g,``);if(/\[[hms]\]/i.test(t))return!1;let n=t.replace(/\[[^\]]*\]/g,``),r=/[hs]/i.test(n)||/AM\/PM|A\/P/i.test(n);return/[yd]/i.test(n)||/m/i.test(n)&&!r?!1:r}function Zl(e){let t=e.replace(/"[^"]*"/g,``);if(/\[[hms]\]/i.test(t))return!1;let n=t.replace(/\[[^\]]*\]/g,``);return!!(/[yd]/i.test(n)||/m/i.test(n)&&!(/[hs]/i.test(n)||/AM\/PM|A\/P/i.test(n)))}function Ql(e,t,n){if(e instanceof Date){let r=we(e);return Xl(t)?(r%=1,r<0&&(r+=1),Yl(t,r)):Yl(n&&Zl(t)?n:t,r)}return Yl(t,e)}function $l(e,t){let n=e.value,r=e.numFmt,i=typeof r==`string`?r:r?.formatCode??`General`;if(n==null)return``;if(n instanceof Date||typeof n==`number`||typeof n==`boolean`||typeof n==`string`)return Ql(n,i,t);if(typeof n==`object`&&`formula`in n){let e=n.result;if(e==null)return``;if(e instanceof Date||typeof e==`number`||typeof e==`boolean`||typeof e==`string`)return Ql(e,i,t)}return e.text}function eu(e){return n.l2n(e.toUpperCase())-1}function tu(e){return n.n2l(e+1)}function nu(e){return parseInt(e,10)-1}function ru(e){return String(e+1)}function iu(e){let t=n.decodeAddress(e.toUpperCase());return{c:t.col-1,r:t.row-1}}function au(e){return n.encodeAddress(e.r+1,e.c+1)}function ou(e){let t=e.indexOf(`:`);if(t===-1){let t=iu(e);return{s:t,e:{...t}}}return{s:iu(e.slice(0,t)),e:iu(e.slice(t+1))}}function su(e,t){if(t===void 0){let t=e;return su(t.s,t.e)}let n=au(e),r=au(t);return n===r?n:`${n}:${r}`}function cu(e,t){let n=t||{},r=new Cl().addWorksheet(`Sheet1`);if(e.length===0)return r;let i=new Set;e.forEach(e=>Object.keys(e).forEach(e=>i.add(e)));let a=n.header?[...n.header]:[...i];n.header&&i.forEach(e=>{a.includes(e)||a.push(e)});let o=1;n.skipHeader||(a.forEach((e,t)=>{r.getCell(o,t+1).value=e}),o++);for(let t of e)a.forEach((e,i)=>{let a=t[e];a===null&&n.nullError?r.getCell(o,i+1).value={error:`#NULL!`}:a!=null&&(r.getCell(o,i+1).value=a)}),o++;return r}function lu(e,t,n){let r=n||{};if(t.length===0)return e;let i=1,a=1;if(r.origin!==void 0)if(typeof r.origin==`string`){let e=iu(r.origin);i=e.r+1,a=e.c+1}else typeof r.origin==`number`?i=r.origin===-1?e.rowCount+1:r.origin+1:(i=r.origin.r+1,a=r.origin.c+1);let o=new Set;t.forEach(e=>Object.keys(e).forEach(e=>o.add(e)));let s=r.header?[...r.header]:[...o];r.header&&o.forEach(e=>{s.includes(e)||s.push(e)});let c=i;r.skipHeader||(s.forEach((t,n)=>{e.getCell(c,a+n).value=t}),c++);for(let n of t)s.forEach((t,i)=>{let o=n[t];o===null&&r.nullError?e.getCell(c,a+i).value={error:`#NULL!`}:o!=null&&(e.getCell(c,a+i).value=o)}),c++;return e}function uu(e,t){let n=t||{},r=1,i=e.rowCount,a=1,o=e.columnCount;if(n.range!==void 0){if(typeof n.range==`number`)r=n.range+1;else if(typeof n.range==`string`){let e=ou(n.range);r=e.s.r+1,i=e.e.r+1,a=e.s.c+1,o=e.e.c+1}}if(i<r||o<a)return[];let s=n.header;if(s===1){let t=[],s=n.blankrows!==!1;for(let c=r;c<=i;c++){let r=[],i=!0;for(let t=a;t<=o;t++){let o=e.getCell(c,t),s=n.raw===!1?$l(o,n.dateFormat).trim():o.value;s!=null&&s!==``?(r[t-a]=s,i=!1):n.defval===void 0?r[t-a]=null:r[t-a]=n.defval}(!i||s)&&t.push(r)}return t}if(s===`A`){let t=[],s=n.blankrows===!0;for(let c=r;c<=i;c++){let r={},i=!0;for(let t=a;t<=o;t++){let a=e.getCell(c,t),o=n.raw===!1?$l(a,n.dateFormat).trim():a.value,s=tu(t-1);o!=null&&o!==``?(r[s]=o,i=!1):n.defval!==void 0&&(r[s]=n.defval)}(!i||s)&&t.push(r)}return t}if(Array.isArray(s)){let t=[],c=n.blankrows===!0;for(let l=r;l<=i;l++){let r={},i=!0;for(let t=a;t<=o;t++){let o=t-a,c=s[o]??`__EMPTY_${o}`,u=e.getCell(l,t),d=n.raw===!1?$l(u,n.dateFormat).trim():u.value;d!=null&&d!==``?(r[c]=d,i=!1):n.defval!==void 0&&(r[c]=n.defval)}(!i||c)&&t.push(r)}return t}let c=[],l={};for(let t=a;t<=o;t++){let n=e.getCell(r,t).value,i=n==null?`__EMPTY_${t-a}`:String(n);l[i]===void 0?l[i]=0:(l[i]++,i=`${i}_${l[i]}`),c.push(i)}let u=[],d=r+1,f=n.blankrows===!0;for(let t=d;t<=i;t++){let r={},i=!0;for(let s=a;s<=o;s++){let o=e.getCell(t,s),l=n.raw===!1?$l(o,n.dateFormat).trim():o.value,u=c[s-a];l!=null&&l!==``?(r[u]=l,i=!1):n.defval!==void 0&&(r[u]=n.defval)}(!i||f)&&u.push(r)}return u}function du(e,t){let n=t||{},r=n.FS??`,`,i=n.RS??`
|
|
145
|
+
download(new Blob([buffer]), 'output.csv');`)}},Hc=class{constructor(){this._values=[],this._totalRefs=0,this._hash=Object.create(null)}get count(){return this._values.length}get values(){return this._values}get totalRefs(){return this._totalRefs}getString(e){return this._values[e]}add(e){let t=this._hash[e];return t===void 0&&(t=this._hash[e]=this._values.length,this._values.push(e)),this._totalRefs++,t}},Uc=class{constructor(e){this.writer=e}push(e){this.writer.addHyperlink(e)}},Wc=class{constructor(e){this.id=e.id,this.count=0,this._hyperlinks=[],this._workbook=e.workbook}get stream(){return this._stream||=this._workbook._openStream(er(this.id)),this._stream}get length(){return this._hyperlinks.length}each(e){return this._hyperlinks.forEach(e)}get hyperlinksProxy(){return this._hyperlinksProxy||=new Uc(this)}addHyperlink(e){let t={Target:e.target,Type:W.Hyperlink,TargetMode:`External`},n=this._writeRelationship(t);this._hyperlinks.push({rId:n,address:e.address})}addMedia(e){return this._writeRelationship(e)}addRelationship(e){return this._writeRelationship(e)}commit(){this.count&&(this._writeClose(),this.stream.end())}_writeOpen(){this.stream.write(`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
146
|
+
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">`)}_writeRelationship(e){this.count||this._writeOpen();let t=`rId${++this.count}`;return e.TargetMode?this.stream.write(`<Relationship Id="${t}" Type="${e.Type}" Target="${Ae(e.Target)}" TargetMode="${e.TargetMode}"/>`):this.stream.write(`<Relationship Id="${t}" Type="${e.Type}" Target="${e.Target}"/>`),t}_writeClose(){this.stream.write(`</Relationships>`)}},Gc=class{constructor(e,t,n){this.id=n.id,this.count=0,this._worksheet=e,this._workbook=n.workbook,this._sheetRelsWriter=t}get commentsStream(){return this._commentsStream||=this._workbook._openStream(nr(this.id)),this._commentsStream}get vmlStream(){return this._vmlStream||=this._workbook._openStream(ir(this.id)),this._vmlStream}_addRelationships(){let e={Type:W.Comments,Target:_r(this.id)};this._sheetRelsWriter.addRelationship(e);let t={Type:W.VmlDrawing,Target:vr(this.id)};this.vmlRelId=this._sheetRelsWriter.addRelationship(t)}_addCommentRefs(){this._workbook.commentRefs.push({commentName:`comments${this.id}`,vmlDrawing:`vmlDrawing${this.id}`})}_writeOpen(){this.commentsStream.write(`<?xml version="1.0" encoding="UTF-8" standalone="yes"?><comments xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main"><authors><author>Author</author></authors><commentList>`),this.vmlStream.write(`<?xml version="1.0" encoding="UTF-8"?><xml xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:x="urn:schemas-microsoft-com:office:excel"><o:shapelayout v:ext="edit"><o:idmap v:ext="edit" data="1" /></o:shapelayout><v:shapetype id="_x0000_t202" coordsize="21600,21600" o:spt="202" path="m,l,21600r21600,l21600,xe"><v:stroke joinstyle="miter" /><v:path gradientshapeok="t" o:connecttype="rect" /></v:shapetype>`)}_writeComment(e,t){let n=new Ua,r=new P;n.render(r,e),this.commentsStream.write(r.xml);let i=new Za,a=new P;i.render(a,e,t),this.vmlStream.write(a.xml)}_writeClose(){this.commentsStream.write(`</commentList></comments>`),this.vmlStream.write(`</xml>`)}addComments(e){e&&e.length&&(this.startedData||=(this._worksheet.comments=[],this._writeOpen(),this._addRelationships(),this._addCommentRefs(),!0),e.forEach(e=>{e.refAddress=n.decodeAddress(e.ref)}),e.forEach(e=>{this._writeComment(e,this.count),this.count+=1}))}commit(){this.count&&(this._writeClose(),this.commentsStream.end(),this.vmlStream.end())}};let Z=new no,Q={dataValidations:new ri,sheetProperties:new si,sheetFormatProperties:new ci,columns:new L({tag:`cols`,count:!1,childXform:new Xr}),row:new Yr,hyperlinks:new L({tag:`hyperlinks`,count:!1,childXform:new Qr}),sheetViews:new L({tag:`sheetViews`,count:!1,childXform:new ui}),sheetProtection:new di,pageMargins:new fi,pageSeteup:new vi,autoFilter:new xi,picture:new Si,conditionalFormattings:new Ui,headerFooter:new Oi,rowBreaks:new Ei,colBreaks:new Di};var Kc=class{constructor(e){this.id=e.id,this.name=e.name||`Sheet${this.id}`,this.state=e.state||`visible`,this._rows=[],this._columns=null,this._keys={},this._merges=[],this._merges.add=function(){},this._sheetRelsWriter=new Wc(e),this._sheetCommentsWriter=new Gc(this,this._sheetRelsWriter,e),this._dimensions=new r,this._rowZero=1,this._rowOffset=0,this.committed=!1,this.dataValidations=new he,this._formulae={},this._siFormulae=0,this.conditionalFormatting=[],this.rowBreaks=[],this.colBreaks=[],this.properties=Object.assign({},{defaultRowHeight:15,outlineLevelCol:0,outlineLevelRow:0},e.properties),this.headerFooter=Object.assign({},{differentFirst:!1,differentOddEven:!1,oddHeader:null,oddFooter:null,evenHeader:null,evenFooter:null,firstHeader:null,firstFooter:null},e.headerFooter),this.pageSetup=Object.assign({},{margins:{left:.7,right:.7,top:.75,bottom:.75,header:.3,footer:.3},orientation:`portrait`,horizontalDpi:4294967295,verticalDpi:4294967295,fitToPage:!!(e.pageSetup&&(e.pageSetup.fitToWidth||e.pageSetup.fitToHeight)&&!e.pageSetup.scale),pageOrder:`downThenOver`,blackAndWhite:!1,draft:!1,cellComments:`None`,errors:`displayed`,scale:100,fitToWidth:1,fitToHeight:1,paperSize:void 0,showRowColHeaders:!1,showGridLines:!1,horizontalCentered:!1,verticalCentered:!1,rowBreaks:null,colBreaks:null},e.pageSetup),this.useSharedStrings=e.useSharedStrings||!1,this._workbook=e.workbook,this.hasComments=!1,this._views=e.views||[],this.autoFilter=e.autoFilter||null,this._media=[],this.sheetProtection=null,this._writeOpenWorksheet(),this.startedData=!1}get workbook(){return this._workbook}get stream(){return this._stream||=this._workbook._openStream($n(this.id)),this._stream}destroy(){throw Error(`Invalid Operation: destroy`)}commit(){if(!this.committed){for(let e=this._rowOffset;e<this._rows.length;e++){let t=this._rows[e];t&&this._writeRow(t)}this._rows=null,this.startedData||this._writeOpenSheetData(),this._writeCloseSheetData(),this._writeSheetProtection(),this._writeAutoFilter(),this._writeMergeCells(),this._writeHyperlinks(),this._writeConditionalFormatting(),this._writeDataValidations(),this._writePageMargins(),this._writePageSetup(),this._writeBackground(),this._writeHeaderFooter(),this._writeRowBreaks(),this._writeColBreaks(),this._writeLegacyData(),this._writeCloseWorksheet(),this.stream.end(),this._sheetCommentsWriter.commit(),this._sheetRelsWriter.commit(),this.committed=!0}}get dimensions(){return this._dimensions}get views(){return this._views}get columns(){return this._columns}set columns(e){this._headerRowCount=e.reduce((e,t)=>{let n=t.header&&1||t.headers&&t.headers.length||0;return Math.max(e,n)},0);let t=1,n=this._columns=[];e.forEach(e=>{let r=new D(this,t++,!1);n.push(r),r.defn=e})}getColumnKey(e){return this._keys[e]}setColumnKey(e,t){this._keys[e]=t}deleteColumnKey(e){delete this._keys[e]}eachColumnKey(e){Object.keys(this._keys).forEach(t=>e(this._keys[t],t))}getColumn(e){if(typeof e==`string`){let t=this._keys[e];if(t)return t;e=n.l2n(e)}if(this._columns||=[],e>this._columns.length){let t=this._columns.length+1;for(;t<=e;)this._columns.push(new D(this,t++))}return this._columns[e-1]}get _nextRow(){return this._rowZero+(this._rows.length-this._rowOffset)}eachRow(e,t){let n,r;if(typeof e==`function`?(n=e,r=void 0):(n=t,r=e),r&&r.includeEmpty){let e=this._nextRow;for(let t=this._rowZero;t<e;t++)n(this.getRow(t),t)}else this._rows.forEach(e=>{e.hasValues&&n(e,e.number)})}_commitRow(e){let t=!1,n=this._rows;for(;this._rowOffset<n.length&&!t;){let r=n[this._rowOffset];n[this._rowOffset]=void 0,this._rowOffset++,this._rowZero++,r&&(this._writeRow(r),t=r.number===e.number,this._rowZero=r.number+1),this._rowOffset>1024&&this._rowOffset>n.length>>1&&(n.splice(0,this._rowOffset),this._rowOffset=0)}}get lastRow(){let e=this._rows;for(let t=e.length-1;t>=this._rowOffset;t--){let n=e[t];if(n)return n}}findRow(e){let t=e-this._rowZero+this._rowOffset;return this._rows[t]}getRow(e){let t=e-this._rowZero+this._rowOffset;if(t<this._rowOffset)throw Error(`Out of bounds: this row has been committed`);let n=this._rows[t];return n||(this._rows[t]=n=new le(this,e)),n}addRow(e){let t=new le(this,this._nextRow);return this._rows[t.number-this._rowZero+this._rowOffset]=t,t.values=e,t}findCell(e,t){let r=n.getAddress(e,t),i=this.findRow(r.row);return i?i.findCell(r.column):void 0}getCell(e,t){let r=n.getAddress(e,t);return this.getRow(r.row).getCellEx(r)}mergeCells(...e){let t=new r(e);this._merges.forEach(e=>{if(e.intersects(t))throw Error(`Cannot merge already merged cells`)});let n=this.getCell(t.top,t.left);for(let e=t.top;e<=t.bottom;e++)for(let r=t.left;r<=t.right;r++)(e>t.top||r>t.left)&&this.getCell(e,r).merge(n);this._merges.push(t)}addConditionalFormatting(e){this.conditionalFormatting.push(e)}removeConditionalFormatting(e){typeof e==`number`?this.conditionalFormatting.splice(e,1):e instanceof Function?this.conditionalFormatting=this.conditionalFormatting.filter(e):this.conditionalFormatting=[]}addBackgroundImage(e){this._background={imageId:e}}getBackgroundImageId(){return this._background&&this._background.imageId}async protect(e,t){this.sheetProtection={sheet:!0},t&&`spinCount`in t&&(t.spinCount=Number.isFinite(t.spinCount)?Math.round(Math.max(0,t.spinCount)):1e5),e&&(this.sheetProtection.algorithmName=`SHA-512`,this.sheetProtection.saltValue=Re(dt.randomBytes(16)),this.sheetProtection.spinCount=t&&`spinCount`in t?t.spinCount:1e5,this.sheetProtection.hashValue=await dt.convertPasswordToHash(e,`SHA-512`,this.sheetProtection.saltValue,this.sheetProtection.spinCount)),t&&(this.sheetProtection=Object.assign(this.sheetProtection,t),!e&&`spinCount`in t&&delete this.sheetProtection.spinCount)}unprotect(){this.sheetProtection=null}_write(e){Z.reset(),Z.addText(e),this.stream.write(Z)}_writeSheetProperties(e,t,n){let r={outlineProperties:t&&t.outlineProperties,tabColor:t&&t.tabColor,pageSetup:n&&n.fitToPage?{fitToPage:n.fitToPage}:void 0};e.addText(Q.sheetProperties.toXml(r))}_writeSheetFormatProperties(e,t){let n=t?{defaultRowHeight:t.defaultRowHeight,dyDescent:t.dyDescent,outlineLevelCol:t.outlineLevelCol,outlineLevelRow:t.outlineLevelRow}:void 0;t&&t.defaultColWidth&&(n.defaultColWidth=t.defaultColWidth),e.addText(Q.sheetFormatProperties.toXml(n))}_writeOpenWorksheet(){Z.reset(),Z.addText(`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>`),Z.addText(`<worksheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="x14ac" xmlns:x14ac="http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac">`),this._writeSheetProperties(Z,this.properties,this.pageSetup),Z.addText(Q.sheetViews.toXml(this.views)),this._writeSheetFormatProperties(Z,this.properties),this.stream.write(Z)}_writeColumns(){let e=D.toModel(this.columns);e&&(Q.columns.prepare(e,{styles:this._workbook.styles}),this.stream.write(Q.columns.toXml(e)))}_writeOpenSheetData(){this._write(`<sheetData>`)}_writeRow(e){if(this.startedData||=(this._writeColumns(),this._writeOpenSheetData(),!0),e.hasValues||e.height){let{model:t}=e,n={styles:this._workbook.styles,sharedStrings:this.useSharedStrings?this._workbook.sharedStrings:void 0,hyperlinks:this._sheetRelsWriter.hyperlinksProxy,merges:this._merges,formulae:this._formulae,siFormulae:this._siFormulae,comments:[]};Q.row.prepare(t,n),this.stream.write(Q.row.toXml(t)),n.comments.length&&(this.hasComments=!0,this._sheetCommentsWriter.addComments(n.comments))}}_writeCloseSheetData(){this._write(`</sheetData>`)}_writeMergeCells(){this._merges.length&&(Z.reset(),Z.addText(`<mergeCells count="${this._merges.length}">`),this._merges.forEach(e=>{Z.addText(`<mergeCell ref="${e}"/>`)}),Z.addText(`</mergeCells>`),this.stream.write(Z))}_writeHyperlinks(){this.stream.write(Q.hyperlinks.toXml(this._sheetRelsWriter._hyperlinks))}_writeConditionalFormatting(){let e={styles:this._workbook.styles};Q.conditionalFormattings.prepare(this.conditionalFormatting,e),this.stream.write(Q.conditionalFormattings.toXml(this.conditionalFormatting))}_writeRowBreaks(){this.stream.write(Q.rowBreaks.toXml(this.rowBreaks))}_writeColBreaks(){this.stream.write(Q.colBreaks.toXml(this.colBreaks))}_writeDataValidations(){this.stream.write(Q.dataValidations.toXml(this.dataValidations.model))}_writeSheetProtection(){this.stream.write(Q.sheetProtection.toXml(this.sheetProtection))}_writePageMargins(){this.stream.write(Q.pageMargins.toXml(this.pageSetup.margins))}_writePageSetup(){this.stream.write(Q.pageSeteup.toXml(this.pageSetup))}_writeHeaderFooter(){this.stream.write(Q.headerFooter.toXml(this.headerFooter))}_writeAutoFilter(){this.stream.write(Q.autoFilter.toXml(this.autoFilter))}_writeBackground(){if(this._background){if(this._background.imageId!==void 0){let e=this._workbook.getImage(this._background.imageId),t=this._sheetRelsWriter.addMedia({Target:Er(e.name),Type:W.Image});this._background={...this._background,rId:t}}this.stream.write(Q.picture.toXml({rId:this._background.rId}))}}_writeLegacyData(){this.hasComments&&(Z.reset(),Z.addText(`<legacyDrawing r:id="${this._sheetCommentsWriter.vmlRelId}"/>`),this.stream.write(Z))}_writeDimensions(){}_writeCloseWorksheet(){this._write(`</worksheet>`)}};let qc=new Uint8Array,Jc=new TextDecoder;var Yc=class{constructor(e,t){this.WorksheetWriterClass=t,this.created=e.created||new Date,this.modified=e.modified||this.created,this.creator=e.creator||`ExcelTS`,this.lastModifiedBy=e.lastModifiedBy||`ExcelTS`,this.lastPrinted=e.lastPrinted,this.useSharedStrings=e.useSharedStrings||!1,this.sharedStrings=new Hc,this.styles=e.useStyles?new B(!0):new B.Mock(!0),this._definedNames=new Tt,this._worksheets=[],this.views=[],this.zipOptions=e.zip;let n=e.zip?.zlib?.level??e.zip?.compressionOptions?.level??1;this.compressionLevel=Math.max(0,Math.min(9,n)),this.media=[],this.commentRefs=[],this._trueStreaming=e.trueStreaming??!1,this.zip=new Bs((e,t,n)=>{e?this.stream.emit(`error`,e):(this.stream.write(t),n&&this.stream.end())}),this.stream=this._createOutputStream(e),this.promise=Promise.all([this.addThemes(),this.addOfficeRels()])}_createOutputStream(e){return e.stream?nt(e.stream):new so}get definedNames(){return this._definedNames}_openStream(e){let t=new so({bufSize:this._trueStreaming?4096:65536,batch:!this._trueStreaming}),n=new zs(e,{level:this.compressionLevel});this.zip.add(n);let r=e=>n.push(e);return t.on(`data`,r),t.once(`finish`,()=>{t.removeListener(`data`,r),n.push(qc,!0),t.emit(`zipped`)}),t}_addFile(e,t,n){let r=new zs(t,{level:this.compressionLevel});this.zip.add(r);let i;i=n?we(typeof e==`string`?e:Jc.decode(e)):typeof e==`string`?Ge(e):e,r.push(i,!0)}_commitWorksheets(){let e=this._worksheets.map(e=>e.committed?Promise.resolve():new Promise(t=>{e.stream.once(`zipped`,()=>t()),e.commit()}));return e.length?Promise.all(e).then(()=>{}):Promise.resolve()}async commit(){await this.promise,await this._commitWorksheets(),await this.addMedia(),await Promise.all([this.addContentTypes(),this.addApp(),this.addCore(),this.addSharedStrings(),this.addStyles(),this.addFeaturePropertyBag(),this.addWorkbookRels()]),await this.addWorkbook(),await this._finalize()}get nextId(){for(let e=1;e<this._worksheets.length;e++)if(!this._worksheets[e])return e;return this._worksheets.length||1}addImage(e){let t=this.media.length,n={...e,type:`image`,name:`image${t}.${e.extension}`};return this.media.push(n),t}getImage(e){return this.media[e]}addWorksheet(e,t){let n=t||{},r=n.useSharedStrings===void 0?this.useSharedStrings:n.useSharedStrings;n.tabColor&&(console.trace(`tabColor option has moved to { properties: tabColor: {...} }`),n.properties={tabColor:n.tabColor,...n.properties});let i=this.nextId;e||=`sheet${i}`;let a=new this.WorksheetWriterClass({id:i,name:e,workbook:this,useSharedStrings:r,properties:n.properties,state:n.state,pageSetup:n.pageSetup,views:n.views,autoFilter:n.autoFilter,headerFooter:n.headerFooter});return this._worksheets[i]=a,a}getWorksheet(e){if(e===void 0)return this._worksheets.find(()=>!0);if(typeof e==`number`)return this._worksheets[e];if(typeof e==`string`)return this._worksheets.find(t=>t?.name===e)}addStyles(){return new Promise(e=>{this._addFile(this.styles.xml,H.xlStyles),e()})}addThemes(){return new Promise(e=>{this._addFile(eo,H.xlTheme1),e()})}addOfficeRels(){return new Promise(e=>{let t=new V().toXml([{Id:`rId1`,Type:W.OfficeDocument,Target:H.xlWorkbook},{Id:`rId2`,Type:W.CoreProperties,Target:H.docPropsCore},{Id:`rId3`,Type:W.ExtenderProperties,Target:H.docPropsApp}]);this._addFile(t,H.rootRels),e()})}addContentTypes(){return new Promise(e=>{let t={worksheets:this._worksheets.filter(Boolean),sharedStrings:this.sharedStrings,commentRefs:this.commentRefs,media:this.media,hasCheckboxes:this.styles.hasCheckboxes},n=new kr;this._addFile(n.toXml(t),H.contentTypes),e()})}addMedia(){return Promise.all(this.media.map(async e=>{if(e.type===`image`){let t=Qn(e.name);if(e.buffer){this._addFile(e.buffer,t);return}if(e.base64){let n=e.base64.substring(e.base64.indexOf(`,`)+1);this._addFile(n,t,!0);return}if(e.filename)throw Error(`Loading images from filename is not supported in browser. Use buffer or base64.`)}throw Error(`Unsupported media`)}))}addApp(){return new Promise(e=>{let t=new Mr;this._addFile(t.toXml({worksheets:this._worksheets.filter(Boolean)}),H.docPropsApp),e()})}addCore(){return new Promise(e=>{let t=new fn;this._addFile(t.toXml(this),H.docPropsCore),e()})}addSharedStrings(){return this.sharedStrings.count?new Promise(e=>{let t=new _n;this._addFile(t.toXml(this.sharedStrings),H.xlSharedStrings),e()}):Promise.resolve()}addFeaturePropertyBag(){if(this.styles.hasCheckboxes){let e=new sa;this._addFile(e.toXml({}),H.xlFeaturePropertyBag)}return Promise.resolve()}addWorkbookRels(){let e=1,t=[{Id:`rId${e++}`,Type:W.Styles,Target:hr.workbookStyles},{Id:`rId${e++}`,Type:W.Theme,Target:hr.workbookTheme1}];return this.sharedStrings.count&&t.push({Id:`rId${e++}`,Type:W.SharedStrings,Target:hr.workbookSharedStrings}),this.styles.hasCheckboxes&&t.push({Id:`rId${e++}`,Type:W.FeaturePropertyBag,Target:hr.workbookFeaturePropertyBag}),this._worksheets.forEach(n=>{n&&(n.rId=`rId${e++}`,t.push({Id:n.rId,Type:W.Worksheet,Target:tr(n.id)}))}),new Promise(e=>{let n=new V;this._addFile(n.toXml(t),H.xlWorkbookRels),e()})}addWorkbook(){let e={worksheets:this._worksheets.filter(Boolean),definedNames:this._definedNames.model,views:this.views,properties:{},calcProperties:{}};return new Promise(t=>{let n=new Wr;n.prepare(e),this._addFile(n.toXml(e),H.xlWorkbook),t()})}_finalize(){return new Promise((e,t)=>{let n=e=>{this.stream.removeListener(`finish`,r),t(e)},r=()=>{this.stream.removeListener(`error`,n),e(this)};this.stream.once(`error`,n),this.stream.once(`finish`,r),this.zip.end()})}},Xc=class extends Yc{constructor(e={}){super(e,Kc)}};function Zc(e,t){let n={},r=new DataView(e.buffer,e.byteOffset,e.byteLength),i=0;for(let[a,o]of t){if(e.length>=i+o)switch(o){case 1:n[a]=r.getUint8(i);break;case 2:n[a]=r.getUint16(i,!0);break;case 4:n[a]=r.getUint32(i,!0);break;case 8:{let e=r.getUint32(i,!0);n[a]=r.getUint32(i+4,!0)*4294967296+e;break}default:throw Error(`Unsupported UInt LE size!`)}else n[a]=null;i+=o}return n}function Qc(e,t){return Zc(e,t)}var $c=class{constructor(e){this.searchFrom=0,this.pattern=e,this.overlap=Math.max(0,e.length-1)}find(e){return e.indexOfPattern(this.pattern,this.searchFrom)}onConsume(e){e>0&&(this.searchFrom=Math.max(0,this.searchFrom-e))}onNoMatch(e){this.searchFrom=Math.max(this.searchFrom,Math.max(0,e-this.overlap))}};let el=Gs(Cs),tl=256*1024,nl=[[`version`,4],[`pubKeyLength`,4],[`signatureLength`,4]],rl=[[`versionsNeededToExtract`,2],[`flags`,2],[`compressionMethod`,2],[`lastModifiedTime`,2],[`lastModifiedDate`,2],[`crc32`,4],[`compressedSize`,4],[`uncompressedSize`,4],[`fileNameLength`,2],[`extraFieldLength`,2]],il=[[`dataDescriptorSignature`,4],[`crc32`,4],[`compressedSize`,4],[`uncompressedSize`,4]],al=[[`versionMadeBy`,2],[`versionsNeededToExtract`,2],[`flags`,2],[`compressionMethod`,2],[`lastModifiedTime`,2],[`lastModifiedDate`,2],[`crc32`,4],[`compressedSize`,4],[`uncompressedSize`,4],[`fileNameLength`,2],[`extraFieldLength`,2],[`fileCommentLength`,2],[`diskNumber`,2],[`internalFileAttributes`,2],[`externalFileAttributes`,4],[`offsetToLocalFileHeader`,4]],ol=[[`diskNumber`,2],[`diskStart`,2],[`numberOfRecordsOnDisk`,2],[`numberOfRecords`,2],[`sizeOfCentralDirectory`,4],[`offsetToStartOfCentralDirectory`,4],[`commentLength`,2]],sl=new TextDecoder;new TextEncoder;function cl(e){return sl.decode(e)}function ll(e){return((e||0)&2048)!=0}function ul(e){if(e.length===0)return!1;let t=e.charCodeAt(e.length-1);return t===47||t===92}function dl(e,t){return t===0&&ul(e)?`Directory`:`File`}function fl(e,t,n){return{path:e,pathBuffer:t,flags:{isUnicode:ll(n)}}}function pl(e,t){let n=e.lastModifiedDate||0,r=e.lastModifiedTime||0,i=gs(n,r),a=t.mtimeUnixSeconds;return a===void 0?i:_s(n,r,a)}let ml=Xs;function hl(e){return((e||0)&8)!=0}function gl(e,t){return!hl(e)||(t||0)>0}function _l(e){let t=e.pipe(new rt({transform(e,t,n){n()}}));return t.promise=()=>new Promise((e,n)=>{t.on(`finish`,e),t.on(`error`,n)}),t}function vl(e){return new Promise((t,n)=>{let r=[],i=new rt({transform(e,t,n){r.push(e),n()}});i.on(`finish`,()=>{t(r.length===1?r[0]:Ke(r))}),i.on(`error`,n),e.on(`error`,n).pipe(i)})}async function yl(e){let t=await e(12),n=t.length>=12?El(t):Qc(t,nl),r=n.pubKeyLength||0,i=await e(r+(n.signatureLength||0));return n.publicKey=i.subarray(0,r),n.signature=i.subarray(r),n}async function bl(e){let t=await e(26),n=t.length>=26?Dl(t):Qc(t,rl);return{vars:n,fileNameBuffer:await e(n.fileNameLength||0),extraFieldData:await e(n.extraFieldLength||0)}}async function xl(e){let t=await e(16);return t.length>=16?Ol(t):Qc(t,il)}async function Sl(e){let t=Qc(await e(42),al);await e(t.fileNameLength||0),await e(t.extraFieldLength||0),await e(t.fileCommentLength||0)}async function Cl(e){await e(Qc(await e(18),ol).commentLength||0)}function wl(e){switch(e){case bs:case xs:case Ss:case ws:case 117853008:return!0;default:return!1}}function $(e,t){return(e[t]|0|(e[t+1]|0)<<8|(e[t+2]|0)<<16|(e[t+3]|0)<<24)>>>0}function Tl(e,t){return(e[t]|(e[t+1]|0)<<8)>>>0}function El(e){return{version:$(e,0),pubKeyLength:$(e,4),signatureLength:$(e,8)}}function Dl(e){return{versionsNeededToExtract:Tl(e,0),flags:Tl(e,2),compressionMethod:Tl(e,4),lastModifiedTime:Tl(e,6),lastModifiedDate:Tl(e,8),crc32:$(e,10),compressedSize:$(e,14),uncompressedSize:$(e,18),fileNameLength:Tl(e,22),extraFieldLength:Tl(e,24)}}function Ol(e){return{dataDescriptorSignature:$(e,0),crc32:$(e,4),compressedSize:$(e,8),uncompressedSize:$(e,12)}}function kl(e){let{source:t,dataDescriptorSignature:n}=e,r=e.keepTailBytes??20,i=e.errorMessage??`FILE_ENDED: Data descriptor not found`,a=new at({highWaterMark:tl}),o=!1,s=!1,c=0,l=new $c(n),u,d=()=>{u&&=(u(),void 0)},f=()=>{if(o||s)return;let e=t.getLength();for(e===0&&t.maybeReleaseWriteCallback?.();e>0;){for(;;){let n=l.find(t);if(n===-1)break;let r=n+16;if(r+4<=e){let i=t.peekUint32LE(r),u=t.peekUint32LE(n+8),p=c+n>>>0;if(i!==null&&u!==null&&wl(i)&&u===p){if(n>0)if(t.peekChunks&&t.discard){let r=t.peekChunks(n),i=0;for(let e of r){let t=a.write(e);if(i+=e.length,!t){s=!0,a.once(`drain`,()=>{s=!1,f()});break}}if(i>0&&(t.discard(i),c+=i,e-=i,l.onConsume(i)),s)return}else{let r=a.write(t.read(n));if(c+=n,e-=n,l.onConsume(n),!r){s=!0,a.once(`drain`,()=>{s=!1,f()});return}}o=!0,t.maybeReleaseWriteCallback?.(),d(),a.end();return}l.searchFrom=n+1;continue}l.searchFrom=n;break}l.onNoMatch(e);let n=Math.max(0,e-r);if(n>0){if(t.peekChunks&&t.discard){let i=t.peekChunks(n),o=0;for(let e of i){let t=a.write(e);if(o+=e.length,!t){s=!0,a.once(`drain`,()=>{s=!1,f()});break}}o>0&&(t.discard(o),c+=o,e-=o,l.onConsume(o)),e<=r&&t.maybeReleaseWriteCallback?.();return}let i=a.write(t.read(n));c+=n,e-=n,l.onConsume(n),e<=r&&t.maybeReleaseWriteCallback?.(),i||(s=!0,a.once(`drain`,()=>{s=!1,f()}));return}t.maybeReleaseWriteCallback?.();break}!o&&t.isFinished()&&(o=!0,d(),a.destroy(Error(i)))};return u=t.onDataAvailable(f),queueMicrotask(f),a}let Al=Gs(Ss);async function jl(e,t,n,r,i,a){let o=e.thresholdBytes??5242880;for(;;){let s=await t.pull(4);if(s.length===0){n.emitClose();return}let c=Ks(s,0);if(c===875721283){i.crxHeader=await yl(async e=>t.pull(e)),n.emitCrxHeader(i.crxHeader);continue}if(c===bs){await Nl(e,t,n,r,i,o,a);continue}if(c===xs){i.reachedCD=!0,await Sl(async e=>t.pull(e));continue}if(c===Ss){await Cl(async e=>t.pull(e)),t.setDone(),n.emitClose();return}if(i.reachedCD){await t.pullUntil(Al,!0),await Cl(async e=>t.pull(e)),t.setDone(),n.emitClose();return}n.emitError(Error(`invalid signature: 0x`+c.toString(16))),n.emitClose();return}}async function Ml(e,t,n,r){let i=r,a=null,o=e=>{a=e};t.once(`error`,o),n.once(`error`,o);let s=!1,c=async()=>{await new Promise(e=>{let r=t,i=()=>{try{r?.removeListener?.(`drain`,a)}catch{}try{n.removeListener(`__autodrain`,o)}catch{}try{n.removeListener(`close`,s)}catch{}},a=()=>{i(),e()},o=()=>{i(),e()},s=()=>{i(),e()};typeof r?.once==`function`&&r.once(`drain`,a),n.once(`__autodrain`,o),n.once(`close`,s)})},l=async()=>{if(!s){s=!0;try{let e=t;typeof e.unpipe==`function`&&e.unpipe(n)}catch{}try{!n.writableEnded&&!n.destroyed&&n.end()}catch{}try{let e=t;typeof e.destroy==`function`&&e.destroy()}catch{}}};try{for(t.pipe(n);i>0;){if(a)throw a;!s&&(n.__autodraining||n.destroyed)&&await l();let r=Math.min(262144,i),o=await e.pull(r);if(o.length!==r)throw Error(`FILE_ENDED`);i-=o.length,s||t.write(o)||await c()}s||t.end(),await lt(n,{readable:!1})}finally{t.removeListener(`error`,o),n.removeListener(`error`,o)}}async function Nl(e,t,n,r,i,a,o){let{vars:s,fileNameBuffer:c,extraFieldData:l}=await bl(async e=>t.pull(e)),u=s;i.crxHeader&&(u.crxHeader=i.crxHeader);let d=cl(c),f=new at({highWaterMark:tl}),p=!1;f.autodrain=function(){return p=!0,f.__autodraining=!0,f.emit(`__autodrain`),_l(f)},f.buffer=function(){return vl(f)},f.path=d,f.props=fl(d,c,u.flags),f.type=dl(d,u.uncompressedSize||0),e.verbose&&(f.type===`Directory`?console.log(` creating:`,d):f.type===`File`&&(u.compressionMethod===0?console.log(` extracting:`,d):console.log(` inflating:`,d)));let m=ml(l,u);u.lastModifiedDateTime=pl(u,m),f.vars=u,f.extraFields=m,f.__autodraining=p;let h=gl(u.flags,u.compressedSize);h&&(f.size=u.uncompressedSize||0),e.forceStream?n.pushEntry(f):(n.emitEntry(f),n.pushEntryIfPiped(f)),e.verbose&&console.log({filename:d,vars:u,extraFields:f.extraFields});let g=!hl(u.flags),_=u.compressedSize||0,v=u.uncompressedSize||0;if(g&&h&&o&&u.compressionMethod!==0&&!p&&_<=a&&v<=a){let e=o(await t.pull(_));f.end(e),await lt(f,{readable:!1});return}let y=u.compressionMethod&&!p?r():new at({highWaterMark:tl});if(h){await Ml(t,y,f,u.compressedSize||0);return}await ct(t.streamUntilDataDescriptor(),y,f),f.size=(await xl(async e=>t.pull(e))).uncompressedSize||0}let Pl=256*1024;var Fl=class extends it{constructor(){super({writableHighWaterMark:512*1024,readableHighWaterMark:512*1024,write:(e,t,n)=>{this._doWrite(e,n)},final:e=>{this._closeWriter(()=>{e()})}}),this.reading=!1,this.writeClosed=!1,this._junkError=!1,this._bytesIn=0,this._bytesOut=0,this._readingDone=!1,this._pendingWrites=0,this._writeFinishedPromise=null,this._resolveWriteFinished=null,this.decompressionStream=new DecompressionStream(`deflate-raw`),this.writer=this.decompressionStream.writable.getWriter(),this.reader=this.decompressionStream.readable.getReader(),this._readingDonePromise=new Promise(e=>{this._resolveReadingDone=e}),this._startReading()}_doWrite(e,t){if(this._junkError){t&&t();return}this._bytesIn+=e.length,this._pendingWrites++,this.writer.write(e).then(()=>{this._pendingWrites--,this._pendingWrites===0&&this._resolveWriteFinished&&this._resolveWriteFinished(),t&&t()}).catch(e=>{this._pendingWrites--,this._pendingWrites===0&&this._resolveWriteFinished&&this._resolveWriteFinished();let n=e instanceof Error?e.message:String(e);n.includes(`Junk`)||n.includes(`junk`)?(this._junkError=!0,t&&t()):t?t(e):this.emit(`error`,e)})}async _startReading(){if(!this.reading){this.reading=!0;try{for(;;){let{done:e,value:t}=await this.reader.read();if(e)break;this._bytesOut+=t.length,this.push(t)}}catch(e){let t=e instanceof Error?e.message:String(e);t.includes(`Junk`)||t.includes(`junk`)?this._junkError=!0:this.emit(`error`,e)}finally{this._readingDone=!0,this._resolveReadingDone(),this.push(null)}}}_closeWriter(e){if(this.writeClosed){this._readingDonePromise.then(()=>{e&&e()});return}this.writeClosed=!0,(this._pendingWrites>0?new Promise(e=>{this._writeFinishedPromise=new Promise(e=>{this._resolveWriteFinished=e}),this._writeFinishedPromise.then(e)}):Promise.resolve()).then(()=>this.writer.close()).catch(()=>{}).finally(()=>{this._readingDonePromise.then(()=>{e&&e()})})}destroy(e){return this.writeClosed||this.writer.abort(e||void 0).catch(()=>{}),this.reader.cancel(e||void 0).catch(()=>{}),super.destroy(e)}};let Il=null;function Ll(e){if(typeof e==`string`&&e.length>0)return e;if(Il)return Il;let t=new Blob([`
|
|
147
|
+
let ds;
|
|
148
|
+
let writer;
|
|
149
|
+
let reader;
|
|
150
|
+
let junkError = false;
|
|
151
|
+
let pendingWrites = 0;
|
|
152
|
+
|
|
153
|
+
function isJunkErrorMessage(msg) {
|
|
154
|
+
return typeof msg === 'string' && (msg.includes('Junk') || msg.includes('junk'));
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
async function ensureStarted() {
|
|
158
|
+
if (ds) return;
|
|
159
|
+
ds = new DecompressionStream('deflate-raw');
|
|
160
|
+
writer = ds.writable.getWriter();
|
|
161
|
+
reader = ds.readable.getReader();
|
|
162
|
+
|
|
163
|
+
(async () => {
|
|
164
|
+
try {
|
|
165
|
+
while (true) {
|
|
166
|
+
const r = await reader.read();
|
|
167
|
+
if (r.done) break;
|
|
168
|
+
const chunk = r.value;
|
|
169
|
+
postMessage({ t: 'data', chunk }, [chunk.buffer]);
|
|
170
|
+
}
|
|
171
|
+
postMessage({ t: 'end' });
|
|
172
|
+
} catch (e) {
|
|
173
|
+
const msg = e && e.message ? e.message : String(e);
|
|
174
|
+
if (isJunkErrorMessage(msg)) {
|
|
175
|
+
junkError = true;
|
|
176
|
+
postMessage({ t: 'end' });
|
|
177
|
+
} else {
|
|
178
|
+
postMessage({ t: 'error', message: msg });
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
})();
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
onmessage = async (ev) => {
|
|
185
|
+
const msg = ev.data;
|
|
186
|
+
try {
|
|
187
|
+
await ensureStarted();
|
|
188
|
+
if (msg.t === 'write') {
|
|
189
|
+
if (junkError) {
|
|
190
|
+
postMessage({ t: 'ack', id: msg.id });
|
|
191
|
+
return;
|
|
192
|
+
}
|
|
193
|
+
pendingWrites++;
|
|
194
|
+
await writer.write(msg.chunk);
|
|
195
|
+
pendingWrites--;
|
|
196
|
+
postMessage({ t: 'ack', id: msg.id });
|
|
197
|
+
return;
|
|
198
|
+
}
|
|
199
|
+
if (msg.t === 'close') {
|
|
200
|
+
// Wait for in-flight writes to finish (best-effort).
|
|
201
|
+
while (pendingWrites > 0) {
|
|
202
|
+
await new Promise(r => setTimeout(r, 0));
|
|
203
|
+
}
|
|
204
|
+
try { await writer.close(); } catch (_) {}
|
|
205
|
+
postMessage({ t: 'closed' });
|
|
206
|
+
return;
|
|
207
|
+
}
|
|
208
|
+
if (msg.t === 'abort') {
|
|
209
|
+
try { await writer.abort(); } catch (_) {}
|
|
210
|
+
postMessage({ t: 'aborted' });
|
|
211
|
+
return;
|
|
212
|
+
}
|
|
213
|
+
} catch (e) {
|
|
214
|
+
const m = e && e.message ? e.message : String(e);
|
|
215
|
+
postMessage({ t: 'error', message: m, id: msg && msg.id });
|
|
216
|
+
}
|
|
217
|
+
};
|
|
218
|
+
`],{type:`text/javascript`});return Il=URL.createObjectURL(t),Il}var Rl=class extends it{constructor(e){super({write:(e,t,n)=>{this._doWrite(e,n)},final:e=>{this._doClose(e)}}),this._nextId=1,this._pendingAcks=new Map,this._closed=!1,this._junkError=!1,this._terminated=!1;let t=Ll(e);this.worker=new Worker(t),this.worker.onmessage=e=>{let t=e.data;if(!(!t||typeof t.t!=`string`)){if(t.t===`data`){let e=t.chunk;this.push(e);return}if(t.t===`end`){this.push(null),this._terminateWorker();return}if(t.t===`aborted`){this._terminateWorker();return}if(t.t===`ack`){let e=t.id,n=this._pendingAcks.get(e);n&&(this._pendingAcks.delete(e),n());return}if(t.t===`error`){let e=typeof t.message==`string`?t.message:`Worker inflate error`;if(e.includes(`Junk`)||e.includes(`junk`)){this._junkError=!0,this.push(null),this._terminateWorker();for(let e of this._pendingAcks.values())e();this._pendingAcks.clear();return}let n=Error(e);for(let e of this._pendingAcks.values())e(n);this._pendingAcks.clear(),this.emit(`error`,n),this._terminateWorker();return}}},this.worker.onerror=e=>{let t=Error(e.message||`Worker error`);for(let e of this._pendingAcks.values())e(t);this._pendingAcks.clear(),this.emit(`error`,t),this._terminateWorker()}}_terminateWorker(){if(!this._terminated){this._terminated=!0;try{this.worker.terminate()}catch{}}}_doWrite(e,t){if(this._closed||this._junkError){t();return}let n=this._nextId++;this._pendingAcks.set(n,t);let r=e.byteOffset===0&&e.byteLength===e.buffer.byteLength?e:e.slice();this.worker.postMessage({t:`write`,id:n,chunk:r},[r.buffer])}_doClose(e){if(this._closed){e();return}this._closed=!0,this.worker.postMessage({t:`close`}),e()}destroy(e){if(!this._closed){this._closed=!0;try{this.worker.postMessage({t:`abort`})}catch{}}return this._terminateWorker(),super.destroy(e)}},zl=class extends it{constructor(){super({write:(e,t,n)=>{if(this._finished){n(Error(`write after end`));return}this.chunks.push(e),n()},final:e=>{this._decompress(e)}}),this.chunks=[],this._finished=!1}_decompress(e){try{let t=Do(Ke(this.chunks));this.push(t),this.push(null),this._finished=!0,e()}catch(t){e(t instanceof Error?t:Error(String(t)))}}destroy(e){return this._finished=!0,this.chunks=[],super.destroy(e)}};function Bl(){return Uo()?new Fl:new zl}let Vl=el;function Hl(e){return class extends it{constructor(t={}){super({objectMode:!0,write:(e,t,n)=>{this._handleWrite(e,n)},final:e=>{this.finished=!0,this._maybeReleaseWriteCallback(),this._wakeUp(),this.emit(`data-available`),this.emit(`chunk`,!1),this._parsingDone.then(()=>e()).catch(e)}}),this._buffer=new Io,this.finished=!1,this._driverState={},this._parsingDone=Promise.resolve(),this._opts=t;let n=Math.max(64*1024,t.inputHighWaterMarkBytes??2*1024*1024),r=Math.max(32*1024,t.inputLowWaterMarkBytes??Math.floor(n/4));this._inputHighWaterMarkBytes=n,this._inputLowWaterMarkBytes=Math.min(r,n);let i={pull:e=>this.pull(e),pullUntil:(e,t)=>this.pullUntil(e,t),stream:e=>this.stream(e),streamUntilDataDescriptor:()=>this._streamUntilDataDescriptor(),setDone:()=>{this.push(null)}},a={emitEntry:e=>{this.emit(`entry`,e)},pushEntry:e=>{this.push(e)},pushEntryIfPiped:e=>{},emitCrxHeader:e=>{this.crxHeader=e,this.emit(`crx-header`,e)},emitError:e=>{if(this.__emittedError=e,this._writeCb){let t=this._writeCb;this._writeCb=void 0,t(e)}this.emit(`error`,e)},emitClose:()=>{this.emit(`close`)}};queueMicrotask(()=>{this._parsingDone=jl(this._opts,i,a,()=>{if(this._opts.useWorkerInflate&&typeof Worker<`u`&&Uo())try{return new Rl(this._opts.workerInflateUrl)}catch{return e()}return e()},this._driverState),this._parsingDone.catch(e=>{(!this.__emittedError||this.__emittedError!==e)&&(this.__emittedError=e,this.emit(`error`,e)),this.emit(`close`)})})}_handleWrite(e,t){this._buffer.append(e),this._buffer.length>=this._inputHighWaterMarkBytes?this._writeCb=t:t(),this._wakeUp(),this.emit(`data-available`),this.emit(`chunk`)}get buffer(){return this._buffer.view()}set buffer(e){this._buffer.reset(e)}_wakeUp(){if(this._pendingResolve){let e=this._pendingResolve;this._pendingResolve=void 0,e()}}_maybeReleaseWriteCallback(){if(!this._writeCb||this._buffer.length>this._inputLowWaterMarkBytes)return;let e=this._writeCb;this._writeCb=void 0,e()}_waitForData(){return new Promise(e=>{this._pendingResolve=e})}async _pullInternal(e){if(e===0)return new Uint8Array;for(;this._buffer.length<e;){if(this.finished){if(this._buffer.length>0){let e=this._buffer.read(this._buffer.length);return this._maybeReleaseWriteCallback(),e}throw Error(`FILE_ENDED`)}await this._waitForData()}let t=this._buffer.read(e);return this._maybeReleaseWriteCallback(),t}async _pullUntilInternal(e,t=!1){let n=[],r=new $c(e);for(;;){let i=this._buffer.length,a=r.find(this._buffer);if(a!==-1){this.match=a;let r=a+(t?e.length:0);return r>0&&(n.push(this._buffer.read(r)),this._maybeReleaseWriteCallback()),n.length===1?n[0]:Ke(n)}if(r.onNoMatch(i),this.finished)throw Error(`FILE_ENDED`);let o=Math.max(0,this._buffer.length-e.length);o>0&&(n.push(this._buffer.read(o)),r.onConsume(o),this._maybeReleaseWriteCallback()),await this._waitForData()}}_streamFixedLength(e){let t=new at({highWaterMark:Pl}),n=e,r=!1,i=!1,a=()=>{if(!r&&!i){for(;n>0&&this._buffer.length>0;){let e=Math.min(n,this._buffer.length),r=this._buffer.read(e);n-=e;let o=t.write(r);if(this._maybeReleaseWriteCallback(),!o){i=!0,t.once(`drain`,()=>{i=!1,a()});return}}n===0?(r=!0,this.removeListener(`data-available`,a),t.end()):this.finished&&(r=!0,this.removeListener(`data-available`,a),t.destroy(Error(`FILE_ENDED`)))}};return this.on(`data-available`,a),queueMicrotask(()=>a()),t}_streamUntilPattern(e,t=!1){let n=new at({highWaterMark:Pl}),r=!1,i=e.length,a=new $c(e),o=!1,s=()=>{if(!(r||o))for(;!(this._buffer.length<=0);){let e=this._buffer.length,c=a.find(this._buffer);if(c!==-1){this.match=c;let e=t?c+i:c;if(e>0){let t=n.write(this._buffer.read(e));if(a.onConsume(e),this._maybeReleaseWriteCallback(),!t){o=!0,n.once(`drain`,()=>{o=!1,s()});return}}r=!0,this.removeListener(`data-available`,s),n.end();return}if(a.onNoMatch(e),this.finished){r=!0,this.removeListener(`data-available`,s),n.destroy(Error(`FILE_ENDED`));return}let l=e-i;if(l<=0){this._buffer.length<=i&&this._maybeReleaseWriteCallback();break}let u=n.write(this._buffer.read(l));if(a.onConsume(l),this._maybeReleaseWriteCallback(),!u){o=!0,n.once(`drain`,()=>{o=!1,s()});return}}};return this.on(`data-available`,s),queueMicrotask(()=>s()),n}stream(e,t){return typeof e==`number`?this._streamFixedLength(e):this._streamUntilPattern(e,t??!1)}pull(e,t){return e===0?Promise.resolve(new Uint8Array):typeof e==`number`?this.finished&&this._buffer.length<e?Promise.reject(Error(`FILE_ENDED`)):this._buffer.length>=e?Promise.resolve(this._buffer.read(e)):this._pullInternal(e):this.finished?Promise.reject(Error(`FILE_ENDED`)):this._pullUntilInternal(e,t??!1)}pullUntil(e,t){return this.pull(e,t)}_streamUntilDataDescriptor(){return kl({source:{getLength:()=>this._buffer.length,read:e=>this._buffer.read(e),peekChunks:e=>this._buffer.peekChunks(e),discard:e=>this._buffer.discard(e),indexOfPattern:(e,t)=>this._buffer.indexOfPattern(e,t),peekUint32LE:e=>this._buffer.peekUint32LE(e),isFinished:()=>this.finished,onDataAvailable:e=>(this.on(`data-available`,e),()=>this.removeListener(`data-available`,e)),maybeReleaseWriteCallback:()=>this._maybeReleaseWriteCallback()},dataDescriptorSignature:Vl})}promise(){return new Promise((e,t)=>{this.on(`finish`,e),this.on(`end`,e),this.on(`error`,t)})}}}let Ul=Hl(Bl);var Wl=class extends Ul{};function Gl(e){return new Wl(e)}async function*Kl(e){let t=[],n=null,r=e=>{t.push(e),n&&=(n(),null)};e.on(`data`,r);let i=!1,a=()=>{i=!0,n&&=(n(),null)};e.on(`end`,a);let o=!1,s=e=>{o=e,n&&=(n(),null)};e.on(`error`,s);try{for(;!i||t.length>0;)if(t.length===0?(e.resume(),await new Promise(e=>{n=e})):(e.pause(),yield t.shift()),o)throw o}finally{e.removeListener(`data`,r),e.removeListener(`end`,a),e.removeListener(`error`,s)}}var ql=class extends A{constructor({workbook:e,id:t,iterator:n,options:i}){super(),this.workbook=e,this.id=t,this.sheetNo=typeof t==`number`?t:parseInt(String(t),10),this.iterator=n,this.options=i||{},this.name=`Sheet${this.id}`,this._columns=null,this._keys=Object.create(null),this._dimensions=new r}destroy(){throw Error(`Invalid Operation: destroy`)}get dimensions(){return this._dimensions}get columns(){return this._columns}getColumn(e){if(typeof e==`string`){let t=this._keys[e];if(t)return t;e=n.l2n(e)}if(this._columns||=[],e>this._columns.length){let t=this._columns.length+1;for(;t<=e;)this._columns.push(new D(this,t++))}return this._columns[e-1]}getColumnKey(e){return this._keys[e]}setColumnKey(e,t){this._keys[e]=t}deleteColumnKey(e){delete this._keys[e]}eachColumnKey(e){let t=this._keys;for(let n in t)e(t[n],n)}async read(){try{for await(let e of this.parse())for(let t=0;t<e.length;t++){let n=e[t];this.emit(n.eventType,n.value)}this.emit(`finished`)}catch(e){this.emit(`error`,e)}}async*[Symbol.asyncIterator](){for await(let e of this.parse())for(let t=0;t<e.length;t++){let n=e[t];n.eventType===`row`&&(yield n.value)}}async*parse(){let{iterator:e,options:t}=this,r=!1,i=!1,a=null;switch(t.worksheets){case`emit`:r=!0;break;case`prep`:break;default:break}switch(t.hyperlinks){case`emit`:i=!0;break;case`cache`:this.hyperlinks=a=Object.create(null);break;default:break}if(!r&&!i&&!a)return;let o=i||a!==null,{sharedStrings:s,styles:c,properties:l}=this.workbook,u=!1,d=!1,f=!1,p=null,m=null,h=null,g=null;for await(let t of zt(e)){let e=null;for(let _=0;_<t.length;_++){let v=t[_],y=v.eventType,ee=v.value;if(y===`opentag`){let t=ee;if(r)switch(t.name){case`cols`:u=!0,p=[];break;case`sheetData`:d=!0;break;case`col`:u&&p.push({min:parseInt(t.attributes.min,10),max:parseInt(t.attributes.max,10),width:parseFloat(t.attributes.width),styleId:parseInt(t.attributes.style||`0`,10)});break;case`row`:if(d){let e=parseInt(t.attributes.r,10);if(m=new le(this,e),t.attributes.ht&&(m.height=parseFloat(t.attributes.ht)),t.attributes.s){let e=parseInt(t.attributes.s,10),n=c.getStyleModel(e);n&&(m.style=n)}}break;case`c`:if(m){let e=t.attributes.s;h={ref:t.attributes.r,s:e?parseInt(e,10):0,t:t.attributes.t}}break;case`f`:h&&(g=h.f={text:``});break;case`v`:h&&(g=h.v={text:``});break;case`is`:case`t`:h&&(g=h.v={text:``});break;case`mergeCell`:break;default:break}if(o)switch(t.name){case`hyperlinks`:f=!0;break;case`hyperlink`:if(f){let n={ref:t.attributes.ref,rId:t.attributes[`r:id`]};i?(e||=[]).push({eventType:`hyperlink`,value:n}):a[n.ref]=n}break;default:break}}else if(y===`text`)r&&g&&(g.text+=ee);else if(y===`closetag`){let t=ee;if(r)switch(t.name){case`cols`:u=!1,this._columns=D.fromModel(p);break;case`sheetData`:d=!1;break;case`row`:m&&(this._dimensions.expandRow(m),(e||=[]).push({eventType:`row`,value:m})),m=null;break;case`c`:if(m&&h){let e=n.decodeAddress(h.ref),t=m.getCell(e.col);if(h.s){let e=c.getStyleModel(h.s);e&&(t.style=e)}if(h.f){let e={formula:h.f.text};h.v&&(h.t===`str`?e.result=Oe(h.v.text):e.result=parseFloat(h.v.text)),t.value=e}else if(h.v)switch(h.t){case`s`:{let e=parseInt(h.v.text,10);s?t.value=s[e]:t.value={sharedString:e};break}case`inlineStr`:case`str`:t.value=Oe(h.v.text);break;case`e`:t.value={error:h.v.text};break;case`b`:t.value=parseInt(h.v.text,10)!==0;break;default:{let e=typeof t.numFmt==`string`?t.numFmt:t.numFmt?.formatCode;e&&Me(e)?t.value=Ee(parseFloat(h.v.text),l?.model?.date1904):t.value=parseFloat(h.v.text);break}}if(a){let e=a[h.ref];e&&(t.text=t.value,t.value=void 0,t.hyperlink=e)}h=null,g=null}break;default:break}if(o)switch(t.name){case`hyperlinks`:f=!1;break;default:break}}}e&&e.length>0&&(yield e)}}},Jl=class extends A{constructor({workbook:e,id:t,iterator:n,options:r}){super(),this._hyperlinkCount=0,this.workbook=e,this.id=t,this.iterator=n,this.options=r}get count(){return this.hyperlinks?this._hyperlinkCount:0}each(e){let t=this.hyperlinks;if(t)for(let n in t)e(t[n],n)}async read(){let{iterator:e}=this,t=this.options.hyperlinks,n=t===`emit`,r=t===`cache`,i=null;if(r&&(this._hyperlinkCount=0,this.hyperlinks=i=Object.create(null)),!n&&!r){this.emit(`finished`);return}try{for await(let t of zt(e))for(let{eventType:e,value:r}of t){if(e!==`opentag`)continue;let t=r;if(t.name!==`Relationship`)continue;let a=t.attributes;if(a.Type!==W.Hyperlink)continue;let o={type:u.RelationshipType.Hyperlink,rId:a.Id,target:a.Target,targetMode:a.TargetMode};if(n){this.emit(`hyperlink`,o);continue}let s=o.rId;i&&i[s]===void 0&&(this._hyperlinkCount+=1),i[s]=o}this.emit(`finished`)}catch(e){this.emit(`error`,e)}}},Yl=class extends A{getHyperlinkReader(e){return this._hyperlinkReadersBySheetNo?.[String(e)]}getHyperlink(e,t){return this.getHyperlinkReader(e)?.hyperlinks?.[t]}getHyperlinkTarget(e,t){return this.getHyperlink(e,t)?.target}constructor(e,t,n,r){super(),this.input=e,this.WorksheetReaderClass=n,this.HyperlinkReaderClass=r,this.options={worksheets:`emit`,sharedStrings:`cache`,hyperlinks:`ignore`,styles:`ignore`,entries:`ignore`,...t},this.styles=new B,this.styles.init()}_getStream(e){if(e instanceof j)return e;if(e&&typeof e==`object`&&typeof e.getReader==`function`){let t=j.fromWeb;if(typeof t==`function`)return t(e);try{return new j({stream:e})}catch{throw Error(`Could not recognise input: ReadableStream`)}}let t=e;if(t instanceof ArrayBuffer&&(t=new Uint8Array(t)),t instanceof Uint8Array)return j.from([t]);throw Error(`Could not recognise input: ${e}`)}_cleanupWaitingWorksheets(e){for(let t of e)t&&typeof t.cleanup==`function`&&t.cleanup()}_createWorksheetReader(e){return new this.WorksheetReaderClass({workbook:this,id:e.id,iterator:e.iterator,options:e.options})}_createHyperlinkReader(e){return new this.HyperlinkReaderClass({workbook:this,id:e.id,iterator:e.iterator,options:e.options})}async read(e,t){try{for await(let{eventType:n,value:r}of this.parse(e,t))switch(n){case`shared-strings`:this.emit(n,r);break;case`worksheet`:this.emit(n,r),await r.read();break;case`hyperlinks`:this.emit(n,r);break}this.emit(`end`),this.emit(`finished`)}catch(e){this.emit(`error`,e)}}async*[Symbol.asyncIterator](){for await(let{eventType:e,value:t}of this.parse())e===`worksheet`&&(yield t)}async*parse(e,t){t&&(this.options=t);let n=this.stream=this._getStream(e||this.input),r=[];try{for await(let e of this._parseEntries(n))if(e.eventType===`waiting-worksheet`){let t=await this._storeWaitingWorksheet(e.sheetNo,e.entry);r.push(t)}else yield e;yield*this._processWaitingWorksheets(r)}catch(e){throw this._cleanupWaitingWorksheets(r),e}}_emitEntry(e){this.options.entries===`emit`&&this.emit(`entry`,e)}async _parseRels(e){this.workbookRels=await new V().parseStream(Kl(e)),this._workbookRelIdByTarget=Object.create(null);for(let e of this.workbookRels||[])e?.Target&&e?.Id&&(this._workbookRelIdByTarget[e.Target]=e.Id)}async _parseWorkbook(e){this._emitEntry({type:`workbook`});let t=new Wr;this.model=await t.parseStream(Kl(e)),this.properties=t.map?.workbookPr,this._sheetByRelId=Object.create(null);for(let e of this.model?.sheets||[])this._sheetByRelId[e.rId]=e}async*_parseSharedStrings(e){switch(this._emitEntry({type:`shared-strings`}),this.options.sharedStrings){case`cache`:this.sharedStrings=[];break;case`emit`:break;default:return}let t=null,n=[],r=0,i=null,a=!1;for await(let o of zt(Kl(e)))for(let{eventType:e,value:s}of o)if(e===`opentag`){let e=s;switch(e.name){case`b`:i||={},i.bold=!0;break;case`charset`:i||={},i.charset=parseInt(e.attributes.charset,10);break;case`color`:i||={},i.color={},e.attributes.rgb&&(i.color.argb=e.attributes.rgb),e.attributes.val&&(i.color.argb=e.attributes.val),e.attributes.theme&&(i.color.theme=e.attributes.theme);break;case`family`:i||={},i.family=parseInt(e.attributes.val,10);break;case`i`:i||={},i.italic=!0;break;case`outline`:i||={},i.outline=!0;break;case`rFont`:i||={},i.name=e.attributes.val;break;case`r`:a=!0;break;case`si`:i=null,n=[],t=null,a=!1;break;case`sz`:i||={},i.size=parseInt(e.attributes.val,10);break;case`strike`:i||={},i.strike=!0;break;case`t`:t=null;break;case`u`:i||={},i.underline=!0;break;case`vertAlign`:i||={},i.vertAlign=e.attributes.val;break}}else if(e===`text`)t=t?t+s:s;else if(e===`closetag`)switch(s.name){case`r`:a&&(n.push({font:i,text:t}),i=null,t=null);break;case`si`:this.options.sharedStrings===`cache`?this.sharedStrings.push(n.length?{richText:n}:t||``):this.options.sharedStrings===`emit`&&(yield{index:r++,text:n.length?{richText:n}:t||``}),n=[],i=null,t=null,a=!1;break}}async _parseStyles(e){this._emitEntry({type:`styles`}),this.options.styles===`cache`&&(this.styles=new B,await this.styles.parseStream(Kl(e)))}*_parseWorksheet(e,t){this._emitEntry({type:`worksheet`,id:t});let n=parseInt(t,10),r=this._createWorksheetReader({id:n,iterator:e,options:this.options});r.sheetNo=n;let i=this._workbookRelIdByTarget?.[tr(t)],a=i?this._sheetByRelId?.[i]:void 0;a&&(r.id=a.id,r.name=a.name,r.state=a.state),this.options.worksheets===`emit`&&(yield{eventType:`worksheet`,value:r})}async*_parseHyperlinks(e,t){this._emitEntry({type:`hyperlinks`,id:t});let n=this._createHyperlinkReader({id:parseInt(t,10),iterator:e,options:this.options});if(this.options.hyperlinks===`cache`){this._hyperlinkReadersBySheetNo||=Object.create(null),this._hyperlinkReadersBySheetNo[t]=n;let e=n.read;typeof e==`function`&&await e.call(n);return}this.options.hyperlinks===`emit`&&(yield{eventType:`hyperlinks`,value:n})}async*_parseEntries(e){let t=Gl({forceStream:!0});e.on(`error`,e=>t.emit(`error`,e)),e.pipe(t);for await(let e of Kl(t)){let t,n=Nn(e.path);switch(n){case H.rootRels:break;case H.xlWorkbookRels:await this._parseRels(e);break;case H.xlWorkbook:await this._parseWorkbook(e);break;case H.xlSharedStrings:for await(let t of this._parseSharedStrings(e))yield{eventType:`shared-strings`,value:t};break;case H.xlStyles:await this._parseStyles(e);break;default:if(t=Pn(n)?.toString(),t)if(this.workbookRels&&(this.options.sharedStrings!==`cache`||this.sharedStrings)){yield*this._parseWorksheet(Kl(e),t);continue}else{yield{eventType:`waiting-worksheet`,sheetNo:t,entry:e};continue}if(t=Fn(n)?.toString(),t){yield*this._parseHyperlinks(Kl(e),t);continue}break}e.autodrain()}}},Xl=class extends Yl{constructor(e,t={}){super(e,t,ql,Jl)}async _storeWaitingWorksheet(e,t){let n=[],r=new TextEncoder;for await(let e of Kl(t))e instanceof Uint8Array?n.push(e):typeof e==`string`&&n.push(r.encode(e));return{sheetNo:e,data:n}}async*_processWaitingWorksheets(e){for(let t of e){let e=(async function*(){for(let e of t.data)yield e})();yield*this._parseWorksheet(e,t.sheetNo)}}},Zl=class{static{this.Writer=Xc}static{this.Reader=Xl}constructor(){this.category=``,this.company=``,this.created=new Date,this.description=``,this.keywords=``,this.manager=``,this.modified=this.created,this.properties={},this.calcProperties={},this._worksheets=[],this.subject=``,this.title=``,this.views=[],this.media=[],this.pivotTables=[],this._definedNames=new Tt}get xlsx(){return this._xlsx||=new ac(this),this._xlsx}get csv(){return this._csv||=new Vc(this),this._csv}static createStreamWriter(e){return new Xc(e)}static createStreamReader(e,t){return new Xl(e,t)}get nextId(){for(let e=1;e<this._worksheets.length;e++)if(!this._worksheets[e])return e;return this._worksheets.length||1}addWorksheet(e,t){let n=this.nextId,r=this._worksheets.reduce((e,t)=>(t&&t.orderNo)>e?t.orderNo:e,0),i=new bt({...t,id:n,name:e,orderNo:r+1,workbook:this});return this._worksheets[n]=i,i}removeWorksheetEx(e){delete this._worksheets[e.id]}removeWorksheet(e){let t=this.getWorksheet(e);t&&t.destroy()}getWorksheet(e){if(e===void 0)return this._worksheets.find(Boolean);if(typeof e==`number`)return this._worksheets[e];if(typeof e==`string`)return this._worksheets.find(t=>t&&t.name===e)}get worksheets(){return this._worksheets.slice(1).sort((e,t)=>e.orderNo-t.orderNo).filter(Boolean)}eachSheet(e){this.worksheets.forEach(t=>{e(t,t.id)})}get definedNames(){return this._definedNames}clearThemes(){this._themes=void 0}addImage(e){let t=this.media.length;return this.media.push({...e,type:`image`}),t}getImage(e){return this.media[Number(e)]}get model(){return{creator:this.creator||`Unknown`,lastModifiedBy:this.lastModifiedBy||`Unknown`,lastPrinted:this.lastPrinted,created:this.created,modified:this.modified,properties:this.properties,worksheets:this.worksheets.map(e=>e.model),sheets:this.worksheets.map(e=>e.model).filter(Boolean),definedNames:this._definedNames.model,views:this.views,company:this.company,manager:this.manager,title:this.title,subject:this.subject,keywords:this.keywords,category:this.category,description:this.description,language:this.language,revision:this.revision,contentStatus:this.contentStatus,themes:this._themes,media:this.media,pivotTables:this.pivotTables,calcProperties:this.calcProperties}}set model(e){this.creator=e.creator,this.lastModifiedBy=e.lastModifiedBy,this.lastPrinted=e.lastPrinted,this.created=e.created,this.modified=e.modified,this.company=e.company,this.manager=e.manager,this.title=e.title,this.subject=e.subject,this.keywords=e.keywords,this.category=e.category,this.description=e.description,this.language=e.language,this.revision=e.revision,this.contentStatus=e.contentStatus,this.properties=e.properties,this.calcProperties=e.calcProperties,this._worksheets=[],e.worksheets.forEach(t=>{let{id:n,name:r,state:i}=t,a=e.sheets&&e.sheets.findIndex(e=>e.id===n),o=this._worksheets[n]=new bt({id:n,name:r,orderNo:a===-1?void 0:a,state:i,workbook:this});o.model=t}),this._definedNames.model=e.definedNames,this.views=e.views,this._themes=e.themes,this.media=e.media||[],this.pivotTables=e.pivotTables||e.loadedPivotTables||[]}};let Ql=function(e){return e[e.Legal=5]=`Legal`,e[e.Executive=7]=`Executive`,e[e.A4=9]=`A4`,e[e.A5=11]=`A5`,e[e.B5=13]=`B5`,e[e.Envelope_10=20]=`Envelope_10`,e[e.Envelope_DL=27]=`Envelope_DL`,e[e.Envelope_C5=28]=`Envelope_C5`,e[e.Envelope_B5=34]=`Envelope_B5`,e[e.Envelope_Monarch=37]=`Envelope_Monarch`,e[e.Double_Japan_Postcard_Rotated=82]=`Double_Japan_Postcard_Rotated`,e[e.K16_197x273_mm=119]=`K16_197x273_mm`,e}({});function $l(e,t){let n=Math.round(e).toString();for(;n.length<t;)n=`0`+n;return n}function eu(e){if(e.length<=3)return e;let t=e.length%3,n=e.substring(0,t);for(let r=t;r<e.length;r+=3)n+=(n.length>0?`,`:``)+e.substring(r,r+3);return n}function tu(e,t){let n=10**t;return Math.round(e*n)/n}function nu(e){let t=e.replace(/_./g,` `);return t=t.replace(/\*./g,``),t}function ru(e){return/^General$/i.test(e.trim())}function iu(e){let t=e.replace(/\[[^\]]*\]/g,``);return/[ymdhs]/i.test(t)&&!/^[#0.,E%$\s()\-+]+$/i.test(t)}let au=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],ou=[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],su=[`J`,`F`,`M`,`A`,`M`,`J`,`J`,`A`,`S`,`O`,`N`,`D`],cu=[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],lu=[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`];function uu(e,t){let n=Math.round(e*86400)%86400,r=Math.floor(n/3600),i=Math.floor(n%3600/60),a=n%60,o=Ee(e,!1),s=o.getUTCFullYear(),c=o.getUTCMonth(),l=o.getUTCDate(),u=o.getUTCDay(),d=e*86400-Math.floor(e*86400),f=/AM\/PM|A\/P/i.test(t),p=r>=12,m=r%12||12,h=t.replace(/\[(Red|Green|Blue|Yellow|Magenta|Cyan|White|Black|Color\d+)\]/gi,``);h=nu(h);let g=h.match(/ss\.(0+)/i),_=``;if(g){let e=g[1].length;_=Math.round(d*10**e).toString().padStart(e,`0`),h=h.replace(/ss\.0+/gi,`\0SF\0`)}h=h.replace(/yyyy/gi,`\0Y4\0`),h=h.replace(/yy/gi,`\0Y2\0`),h=h.replace(/mmmmm/gi,`\0MN5\0`),h=h.replace(/mmmm/gi,`\0MN4\0`),h=h.replace(/mmm/gi,`\0MN3\0`),h=h.replace(/dddd/gi,`\0DN4\0`),h=h.replace(/ddd/gi,`\0DN3\0`),h=h.replace(/dd/gi,`\0D2\0`),h=h.replace(/\bd\b/gi,`\0D1\0`),h=h.replace(/hh/gi,`\0H2\0`),h=h.replace(/\bh\b/gi,`\0H1\0`),h=h.replace(/ss/gi,`\0S2\0`),h=h.replace(/\bs\b/gi,`\0S1\0`),h=/\x00H[12]\x00.*mm|mm.*\x00S[12]\x00/i.test(h)?h.replace(/mm/gi,`\0MI2\0`):h.replace(/mm/gi,`\0M2\0`),h=h.replace(/\bm\b/gi,`\0M1\0`),h=h.replace(/AM\/PM/gi,`\0AMPM\0`),h=h.replace(/A\/P/gi,`\0AP\0`);let v=f?m:r;return h=h.replace(/\x00Y4\x00/g,s.toString()).replace(/\x00Y2\x00/g,(s%100).toString().padStart(2,`0`)).replace(/\x00MN5\x00/g,su[c]).replace(/\x00MN4\x00/g,ou[c]).replace(/\x00MN3\x00/g,au[c]).replace(/\x00M2\x00/g,(c+1).toString().padStart(2,`0`)).replace(/\x00M1\x00/g,(c+1).toString()).replace(/\x00DN4\x00/g,lu[u]).replace(/\x00DN3\x00/g,cu[u]).replace(/\x00D2\x00/g,l.toString().padStart(2,`0`)).replace(/\x00D1\x00/g,l.toString()).replace(/\x00H2\x00/g,v.toString().padStart(2,`0`)).replace(/\x00H1\x00/g,v.toString()).replace(/\x00MI2\x00/g,i.toString().padStart(2,`0`)).replace(/\x00S2\x00/g,a.toString().padStart(2,`0`)).replace(/\x00S1\x00/g,a.toString()).replace(/\x00SF\x00/g,a.toString().padStart(2,`0`)+`.`+_).replace(/\x00AMPM\x00/g,p?`PM`:`AM`).replace(/\x00AP\x00/g,p?`P`:`A`),h=h.replace(/\\/g,``),h}function du(e){return typeof e==`boolean`?e?`TRUE`:`FALSE`:typeof e==`string`?e:Number.isInteger(e)?e.toString():e.toPrecision(11).replace(/\.?0+$/,``).replace(/\.?0+e/,`e`)}function fu(e,t){let n=(t.match(/%/g)||[]).length;return _u(e*100**n,t.replace(/%/g,``)||`0`)+`%`.repeat(n)}function pu(e,t){let n=e<0?`-`:``,r=Math.abs(e);if(r===0){let e=t.match(/\.([0#]+)E/i),n=e?e[1].length:2;return`0.`+`0`.repeat(n)+`E+00`}let i=t.match(/\.([0#]+)E/i),a=i?i[1].length:2,o=t.includes(`E+`),s=Math.floor(Math.log10(r)),c=tu(r/10**s,a).toFixed(a),l=s>=0?o?`+`:``:`-`,u=$l(Math.abs(s),2);return n+c+`E`+l+u}function mu(e,t){let n=e<0?-1:1,r=Math.abs(e),i=Math.floor(r);if(r-=i,r<1e-10)return[n*i,0,1];let a=0,o=1,s=1,c=0,l=Math.floor(r),u=l,d=1;for(;c<t&&(l=Math.floor(r),u=l*o+a,d=l*c+s,!(r-l<1e-10));)r=1/(r-l),a=o,o=u,s=c,c=d;return d>t&&(d=c,u=o),[n*i,n*u,d]}function hu(e,t){let n=e<0?`-`:``,r=Math.abs(e),i=t.match(/\?+\s*\/\s*(\d+)/);if(i){let e=parseInt(i[1],10),a=Math.floor(r),o=r-a,s=Math.round(o*e);return t.includes(`#`)||t.includes(`0`)?s===0?n+a.toString():n+(a>0?a+` `:``)+s+`/`+e:n+(a*e+s)+`/`+e}let a=t.match(/\/\s*(\?+)/),[o,s,c]=mu(r,10**(a?a[1].length:2)-1);return t.includes(`#`)&&o!==0?s===0?n+Math.abs(o).toString():n+Math.abs(o)+` `+Math.abs(s)+`/`+c:s===0?o===0?`0`:n+Math.abs(o).toString():n+(Math.abs(o)*c+Math.abs(s))+`/`+c}function gu(e,t){let n=Math.round(e*86400),r=Math.floor(n/60),i=Math.floor(r/60),a=n%60,o=r%60,s=i,c=t;return/\[h+\]/i.test(c)&&(c=c.replace(/\[h+\]/gi,s.toString())),/\[m+\]/i.test(c)&&(c=c.replace(/\[m+\]/gi,r.toString())),/\[s+\]/i.test(c)&&(c=c.replace(/\[s+\]/gi,n.toString())),c=c.replace(/mm/gi,o.toString().padStart(2,`0`)),c=c.replace(/ss/gi,a.toString().padStart(2,`0`)),c}function _u(e,t){let n=Math.abs(e),r=e<0?`-`:``,i=0,a=t;for(;a.endsWith(`,`);)i++,a=a.slice(0,-1);let o=n/1e3**i,s=a.indexOf(`.`),c=a,l=``;s!==-1&&(c=a.substring(0,s),l=a.substring(s+1));let u=l.replace(/[^0#?]/g,``).length,[d,f=``]=tu(o,u).toString().split(`.`),p=/[0#?][^0#?,.\s][0#?]/.test(c),m;if(p){let e=c.replace(/[^0#?]/g,``).length,t=d;t.length<e&&(t=`0`.repeat(e-t.length)+t),m=``;let n=t.length-e;for(let e=0;e<c.length;e++){let r=c[e];r===`0`||r===`#`||r===`?`?n<t.length&&(m+=t[n],n++):r!==`,`&&(m+=r)}}else{m=d,c.includes(`,`)&&(m=eu(d));let e=(c.match(/0/g)||[]).length;m.length<e&&(m=`0`.repeat(e-m.length)+m)}let h=``;return u>0&&(h=`.`+(f+`0`.repeat(u)).substring(0,u)),r+m+h}function vu(e){let t=``,n=0;for(;n<e.length;)if(e[n]===`"`){for(n++;n<e.length&&e[n]!==`"`;)t+=e[n],n++;n++}else e[n]===`\\`&&n+1<e.length?(n++,t+=e[n],n++):(t+=e[n],n++);return t}function yu(e,t){let n=t.match(/\[(=|>|<|>=|<=|<>)(-?\d+(?:\.\d*)?)\]/);if(!n)return!1;let r=n[1],i=parseFloat(n[2]);switch(r){case`=`:return e===i;case`>`:return e>i;case`<`:return e<i;case`>=`:return e>=i;case`<=`:return e<=i;case`<>`:return e!==i;default:return!1}}function bu(e,t){if(typeof t==`string`){let n=Su(e);return n.length>=4&&n[3]?vu(n[3]).replace(/@/g,t):t}if(typeof t==`boolean`)return t?`TRUE`:`FALSE`;let n=Su(e),r=/\[(=|>|<|>=|<=|<>)-?\d+(?:\.\d*)?\]/;if((n[0]&&r.test(n[0])||n[1]&&r.test(n[1]))&&n.length>=2){for(let e=0;e<Math.min(n.length,2);e++){let r=n[e].match(/\[(=|>|<|>=|<=|<>)-?\d+(?:\.\d*)?\]/);if(r&&yu(t,r[0]))return n[e]}return n[n.length>2?2:1]}return n.length===1?n[0]:n.length===2?t>=0?n[0]:n[1]:t>0?n[0]:t<0?n[1]:n[2]||n[0]}function xu(e,t){let n=Su(e);return n.length>=2&&n[1]===t}function Su(e){let t=[],n=``,r=!1,i=!1;for(let a=0;a<e.length;a++){let o=e[a];o===`"`&&!i?(r=!r,n+=o):o===`[`&&!r?(i=!0,n+=o):o===`]`&&!r?(i=!1,n+=o):o===`;`&&!r&&!i?(t.push(n),n=``):n+=o}return t.push(n),t}function Cu(e,t){if(t==null)return``;if(ru(e))return du(t);if(typeof t==`string`)return bu(e,t);if(typeof t==`boolean`)return t?`TRUE`:`FALSE`;let n=t,r=bu(e,n);n<0&&xu(e,r)&&(n=Math.abs(n));let i=r.replace(/\[(Red|Green|Blue|Yellow|Magenta|Cyan|White|Black|Color\d+)\]/gi,``);if(i=i.replace(/\[(>|<|>=|<=|=|<>)-?\d+(\.\d+)?\]/g,``),i=i.replace(/\[\$[^\]]*\]/g,``),i=nu(i),i=vu(i),/\[[hms]+\]/i.test(i))return gu(n,i);if(iu(i))return uu(n,i);if(i.includes(`%`))return fu(n,i);if(/E[+-]?/i.test(i))return pu(n,i);if(/\?+\s*\/\s*[\d?]+/.test(i))return hu(n,i);if(i.includes(`(`)&&i.includes(`)`)&&n<0){let e=i.replace(/\(|\)/g,``);return`(`+_u(-n,e)+`)`}if(i===`@`)return n.toString();let a=``,o=``,s=i.match(/^([^#0?.,]+)/);s&&(a=s[1],i=i.substring(s[0].length));let c=i.match(/([^#0?.,]+)$/);c&&!c[1].includes(`%`)&&(o=c[1],i=i.substring(0,i.length-c[0].length));let l=_u(n,i);return a+l+o}function wu(e){let t=e.replace(/"[^"]*"/g,``);if(/\[[hms]\]/i.test(t))return!1;let n=t.replace(/\[[^\]]*\]/g,``),r=/[hs]/i.test(n)||/AM\/PM|A\/P/i.test(n);return/[yd]/i.test(n)||/m/i.test(n)&&!r?!1:r}function Tu(e){let t=e.replace(/"[^"]*"/g,``);if(/\[[hms]\]/i.test(t))return!1;let n=t.replace(/\[[^\]]*\]/g,``);return!!(/[yd]/i.test(n)||/m/i.test(n)&&!(/[hs]/i.test(n)||/AM\/PM|A\/P/i.test(n)))}function Eu(e,t,n){if(e instanceof Date){let r=Te(e);return wu(t)?(r%=1,r<0&&(r+=1),Cu(t,r)):Cu(n&&Tu(t)?n:t,r)}return Cu(t,e)}function Du(e,t){let n=e.value,r=e.numFmt,i=typeof r==`string`?r:r?.formatCode??`General`;if(n==null)return``;if(n instanceof Date||typeof n==`number`||typeof n==`boolean`||typeof n==`string`)return Eu(n,i,t);if(typeof n==`object`&&`formula`in n){let e=n.result;if(e==null)return``;if(e instanceof Date||typeof e==`number`||typeof e==`boolean`||typeof e==`string`)return Eu(e,i,t)}return e.text}function Ou(e){return n.l2n(e.toUpperCase())-1}function ku(e){return n.n2l(e+1)}function Au(e){return parseInt(e,10)-1}function ju(e){return String(e+1)}function Mu(e){let t=n.decodeAddress(e.toUpperCase());return{c:t.col-1,r:t.row-1}}function Nu(e){return n.encodeAddress(e.r+1,e.c+1)}function Pu(e){let t=e.indexOf(`:`);if(t===-1){let t=Mu(e);return{s:t,e:{...t}}}return{s:Mu(e.slice(0,t)),e:Mu(e.slice(t+1))}}function Fu(e,t){if(t===void 0){let t=e;return Fu(t.s,t.e)}let n=Nu(e),r=Nu(t);return n===r?n:`${n}:${r}`}function Iu(e,t){let n=t||{},r=new Zl().addWorksheet(`Sheet1`);if(e.length===0)return r;let i=new Set;e.forEach(e=>Object.keys(e).forEach(e=>i.add(e)));let a=n.header?[...n.header]:[...i];n.header&&i.forEach(e=>{a.includes(e)||a.push(e)});let o=1;n.skipHeader||(a.forEach((e,t)=>{r.getCell(o,t+1).value=e}),o++);for(let t of e)a.forEach((e,i)=>{let a=t[e];a===null&&n.nullError?r.getCell(o,i+1).value={error:`#NULL!`}:a!=null&&(r.getCell(o,i+1).value=a)}),o++;return r}function Lu(e,t,n){let r=n||{};if(t.length===0)return e;let i=1,a=1;if(r.origin!==void 0)if(typeof r.origin==`string`){let e=Mu(r.origin);i=e.r+1,a=e.c+1}else typeof r.origin==`number`?i=r.origin===-1?e.rowCount+1:r.origin+1:(i=r.origin.r+1,a=r.origin.c+1);let o=new Set;t.forEach(e=>Object.keys(e).forEach(e=>o.add(e)));let s=r.header?[...r.header]:[...o];r.header&&o.forEach(e=>{s.includes(e)||s.push(e)});let c=i;r.skipHeader||(s.forEach((t,n)=>{e.getCell(c,a+n).value=t}),c++);for(let n of t)s.forEach((t,i)=>{let o=n[t];o===null&&r.nullError?e.getCell(c,a+i).value={error:`#NULL!`}:o!=null&&(e.getCell(c,a+i).value=o)}),c++;return e}function Ru(e,t){let n=t||{},r=1,i=e.rowCount,a=1,o=e.columnCount;if(n.range!==void 0){if(typeof n.range==`number`)r=n.range+1;else if(typeof n.range==`string`){let e=Pu(n.range);r=e.s.r+1,i=e.e.r+1,a=e.s.c+1,o=e.e.c+1}}if(i<r||o<a)return[];let s=n.header;if(s===1){let t=[],s=n.blankrows!==!1;for(let c=r;c<=i;c++){let r=[],i=!0;for(let t=a;t<=o;t++){let o=e.getCell(c,t),s=n.raw===!1?Du(o,n.dateFormat).trim():o.value;s!=null&&s!==``?(r[t-a]=s,i=!1):n.defval===void 0?r[t-a]=null:r[t-a]=n.defval}(!i||s)&&t.push(r)}return t}if(s===`A`){let t=[],s=n.blankrows===!0;for(let c=r;c<=i;c++){let r={},i=!0;for(let t=a;t<=o;t++){let a=e.getCell(c,t),o=n.raw===!1?Du(a,n.dateFormat).trim():a.value,s=ku(t-1);o!=null&&o!==``?(r[s]=o,i=!1):n.defval!==void 0&&(r[s]=n.defval)}(!i||s)&&t.push(r)}return t}if(Array.isArray(s)){let t=[],c=n.blankrows===!0;for(let l=r;l<=i;l++){let r={},i=!0;for(let t=a;t<=o;t++){let o=t-a,c=s[o]??`__EMPTY_${o}`,u=e.getCell(l,t),d=n.raw===!1?Du(u,n.dateFormat).trim():u.value;d!=null&&d!==``?(r[c]=d,i=!1):n.defval!==void 0&&(r[c]=n.defval)}(!i||c)&&t.push(r)}return t}let c=[],l={};for(let t=a;t<=o;t++){let n=e.getCell(r,t).value,i=n==null?`__EMPTY_${t-a}`:String(n);l[i]===void 0?l[i]=0:(l[i]++,i=`${i}_${l[i]}`),c.push(i)}let u=[],d=r+1,f=n.blankrows===!0;for(let t=d;t<=i;t++){let r={},i=!0;for(let s=a;s<=o;s++){let o=e.getCell(t,s),l=n.raw===!1?Du(o,n.dateFormat).trim():o.value,u=c[s-a];l!=null&&l!==``?(r[u]=l,i=!1):n.defval!==void 0&&(r[u]=n.defval)}(!i||f)&&u.push(r)}return u}function zu(e,t){let n=t||{},r=n.FS??`,`,i=n.RS??`
|
|
147
219
|
`,a=[];return e.eachRow({includeEmpty:n.blankrows!==!1},(t,i)=>{let o=[],s=!0;for(t.eachCell({includeEmpty:!0},(e,t)=>{let i=``;e.value!=null&&(i=e.value instanceof Date?e.value.toISOString():typeof e.value==`object`?`result`in e.value?String(e.value.result??``):`text`in e.value?String(e.value.text??``):`richText`in e.value?e.value.richText.map(e=>e.text).join(``):String(e.value):String(e.value),s=!1),(n.forceQuotes||i.includes(r)||i.includes(`"`)||i.includes(`
|
|
148
|
-
`)||i.includes(`\r`))&&(i=`"${i.replace(/"/g,`""`)}"`),o.push(i)});o.length<e.columnCount;)o.push(``);(!s||n.blankrows!==!1)&&a.push(o.join(r))}),a.join(i)}function fu(){return new Cl}function pu(e,t,n){let r=e.addWorksheet(n);t.eachRow({includeEmpty:!0},(e,t)=>{e.eachCell({includeEmpty:!0},(e,n)=>{let i=r.getCell(t,n);i.value=e.value,e.style&&(i.style=e.style)})}),t.columns?.forEach((e,t)=>{e&&r.columns[t]&&e.width&&(r.getColumn(t+1).width=e.width)})}function mu(e,t){let n=new Cl().addWorksheet(`Sheet1`);if(e.length===0)return n;let r=1,i=1;if(t?.origin!==void 0)if(typeof t.origin==`string`){let e=iu(t.origin);r=e.r+1,i=e.c+1}else typeof t.origin==`number`?r=t.origin+1:(r=t.origin.r+1,i=t.origin.c+1);return e.forEach((e,t)=>{e&&e.forEach((e,a)=>{e!=null&&(n.getCell(r+t,i+a).value=e)})}),n}function hu(e,t,n){if(t.length===0)return e;let r=1,i=1;if(n?.origin!==void 0)if(typeof n.origin==`string`){let e=iu(n.origin);r=e.r+1,i=e.c+1}else typeof n.origin==`number`?r=n.origin===-1?e.rowCount+1:n.origin+1:(r=n.origin.r+1,i=n.origin.c+1);return t.forEach((t,n)=>{t&&t.forEach((t,a)=>{t!=null&&(e.getCell(r+n,i+a).value=t)})}),e}function gu(e){let t=[];return e.eachRow({includeEmpty:!0},(e,n)=>{let r=[];e.eachCell({includeEmpty:!0},(e,t)=>{r[t-1]=e.value}),t[n-1]=r}),t}return e.Anchor=k,e.Cell=b,e.Column=O,e.CsvFormatterStream=nl,e.CsvParserStream=tl,e.DataValidations=me,e.DocumentType=s,e.Enums=u,e.ErrorValue=l,e.FormCheckbox=xe,e.FormulaType=a,e.Image=de,e.PaperSize=wl,e.Range=r,e.ReadingOrder=c,e.RelationshipType=o,e.Row=ce,e.Table=pe,e.ValueType=i,e.Workbook=Cl,e.WorkbookReader=Sl,e.WorkbookWriter=_l,e.Worksheet=pt,e.WorksheetReader=yl,e.WorksheetWriter=pl,e.aoaToSheet=mu,e.bookAppendSheet=pu,e.bookNew=fu,e.decodeCell=iu,e.decodeCol=eu,e.decodeRange=ou,e.decodeRow=nu,e.encodeCell=au,e.encodeCol=tu,e.encodeRange=su,e.encodeRow=ru,e.jsonToSheet=cu,e.sheetAddAoa=hu,e.sheetAddJson=lu,e.sheetToAoa=gu,e.sheetToCsv=du,e.sheetToJson=uu,e})({});
|
|
220
|
+
`)||i.includes(`\r`))&&(i=`"${i.replace(/"/g,`""`)}"`),o.push(i)});o.length<e.columnCount;)o.push(``);(!s||n.blankrows!==!1)&&a.push(o.join(r))}),a.join(i)}function Bu(){return new Zl}function Vu(e,t,n){let r=e.addWorksheet(n);t.eachRow({includeEmpty:!0},(e,t)=>{e.eachCell({includeEmpty:!0},(e,n)=>{let i=r.getCell(t,n);i.value=e.value,e.style&&(i.style=e.style)})}),t.columns?.forEach((e,t)=>{e&&r.columns[t]&&e.width&&(r.getColumn(t+1).width=e.width)})}function Hu(e,t){let n=new Zl().addWorksheet(`Sheet1`);if(e.length===0)return n;let r=1,i=1;if(t?.origin!==void 0)if(typeof t.origin==`string`){let e=Mu(t.origin);r=e.r+1,i=e.c+1}else typeof t.origin==`number`?r=t.origin+1:(r=t.origin.r+1,i=t.origin.c+1);return e.forEach((e,t)=>{e&&e.forEach((e,a)=>{e!=null&&(n.getCell(r+t,i+a).value=e)})}),n}function Uu(e,t,n){if(t.length===0)return e;let r=1,i=1;if(n?.origin!==void 0)if(typeof n.origin==`string`){let e=Mu(n.origin);r=e.r+1,i=e.c+1}else typeof n.origin==`number`?r=n.origin===-1?e.rowCount+1:n.origin+1:(r=n.origin.r+1,i=n.origin.c+1);return t.forEach((t,n)=>{t&&t.forEach((t,a)=>{t!=null&&(e.getCell(r+n,i+a).value=t)})}),e}function Wu(e){let t=[];return e.eachRow({includeEmpty:!0},(e,n)=>{let r=[];e.eachCell({includeEmpty:!0},(e,t)=>{r[t-1]=e.value}),t[n-1]=r}),t}let Gu=new Date(1980,0,1,0,0,0);function Ku(e){return e?cs(e):new Uint8Array}function qu(e,t){return e>0&&t.length>0}async function Ju(e,t,n,r){if(!qu(t,e.data))return{compressedData:e.data,deflate:!1};if(!r)return{compressedData:await Vs(e.data,n),deflate:!0};if(Rs(e.data))return{compressedData:e.data,deflate:!1};let i=await Vs(e.data,n);return i.length>=e.data.length?{compressedData:e.data,deflate:!1}:{compressedData:i,deflate:!0}}function Yu(e,t,n,r){if(!qu(t,e.data))return{compressedData:e.data,deflate:!1};if(!r)return{compressedData:Hs(e.data,n),deflate:!0};if(Rs(e.data))return{compressedData:e.data,deflate:!1};let i=Hs(e.data,n);return i.length>=e.data.length?{compressedData:e.data,deflate:!1}:{compressedData:i,deflate:!0}}function Xu(e){return 30+e.name.length+e.extraField.length+e.compressedData.length}function Zu(e){return 46+e.name.length+e.extraField.length+e.comment.length}function Qu(e,t,n,r,i){let a=e.modTime??n.defaultModTime,o=Fs({name:e.name,comment:e.comment,modTime:a,timestamps:n.timestamps,useDataDescriptor:!1,deflate:i});return{name:o.nameBytes,uncompressedSize:e.data.length,compressedData:r,crc:mo(e.data),compressionMethod:Ns(i),modTime:o.dosTime,modDate:o.dosDate,extraField:o.extraField,comment:o.commentBytes,offset:t}}function $u(e,t,n,r,i,a){let o=Qu(t,i,a,n,r);return e.push(o),{processedEntry:o,nextOffset:i+Xu(o)}}function ed(e,t){let n=0,r=0;for(let t of e)n+=Xu(t),r+=Zu(t);let i=n,a=n+r+22+t.length,o=new Uint8Array(a),s=new DataView(o.buffer,o.byteOffset,o.byteLength),c=0;for(let t of e)c+=Es(o,s,c,{fileName:t.name,extraField:t.extraField,flags:Ts,compressionMethod:t.compressionMethod,dosTime:t.modTime,dosDate:t.modDate,crc32:t.crc,compressedSize:t.compressedData.length,uncompressedSize:t.uncompressedSize}),o.set(t.compressedData,c),c+=t.compressedData.length;for(let t of e)c+=Os(o,s,c,{fileName:t.name,extraField:t.extraField,comment:t.comment,flags:Ts,compressionMethod:t.compressionMethod,dosTime:t.modTime,dosDate:t.modDate,crc32:t.crc,compressedSize:t.compressedData.length,uncompressedSize:t.uncompressedSize,localHeaderOffset:t.offset});return As(o,s,c,{entryCount:e.length,centralDirSize:r,centralDirOffset:i,comment:t}),o}async function td(e,t={}){let n=t.reproducible??!1,r=t.level??6,i=t.smartStore??!0,a=t.concurrency??4,o=t.timestamps??`dos`,s=Ku(t.comment),c={level:r,timestamps:o,defaultModTime:t.modTime??(n?Gu:new Date)},l=t.thresholdBytes,u=Math.max(1,Math.floor(a)),d=Array(e.length);if(e.length>0){let t=0,n=Math.min(u,e.length),a=Array.from({length:n},async()=>{for(;;){let n=t++;if(n>=e.length)return;let a=e[n],o=a.level??r,{compressedData:s,deflate:u}=await Ju(a,o,{level:o,thresholdBytes:l},i);d[n]=Qu(a,0,c,s,u)}});await Promise.all(a)}let f=0;for(let e=0;e<d.length;e++){let t=d[e];t.offset=f,f+=Xu(t)}return ed(d,s)}function nd(e,t={}){let n=t.reproducible??!1,r=t.level??6,i=t.smartStore??!0,a=t.timestamps??`dos`,o=Ku(t.comment),s={level:r,timestamps:a,defaultModTime:t.modTime??(n?Gu:new Date)},c=t.thresholdBytes,l=[],u=0;for(let t of e){let e=t.level??r,{compressedData:n,deflate:a}=Yu(t,e,{level:e,thresholdBytes:c},i);u=$u(l,t,n,a,u,s).nextOffset}return ed(l,o)}function rd(e,t,n){typeof e.off==`function`?e.off(t,n):typeof e.removeListener==`function`&&e.removeListener(t,n)}function id(e,t){return new Promise((n,r)=>{let i=e=>{o(),r(e instanceof Error?e:Error(String(e)))},a=()=>{o(),n()},o=()=>{rd(e,`error`,i),rd(e,t,a)};if(typeof e.once==`function`){e.once(`error`,i),e.once(t,a);return}e.on?.(`error`,i),e.on?.(t,a)})}async function ad(e,t){if(Je(t)){let n=t.getWriter();try{for await(let t of e)await n.write(t);await n.close()}finally{try{n.releaseLock()}catch{}}return}for await(let n of e)t.write(n)===!1&&typeof t.once==`function`&&await id(t,`drain`);typeof t.end==`function`&&t.end(),typeof t.once==`function`&&await Promise.race([id(t,`finish`),id(t,`close`)])}async function od(e){let t=[],n=0;for await(let r of e)t.push(r),n+=r.length;return Ke(t,n)}function sd(e){if(!e)return null;if(e instanceof Uint8Array)return e.length?e:null;if(typeof e==`string`){let t=cs(e);return t.length?t:null}return e instanceof ArrayBuffer?e.byteLength?new Uint8Array(e):null:ArrayBuffer.isView(e)?e.byteLength?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):null:typeof e.length==`number`&&e.length?e:null}function cd(e){return e instanceof Uint8Array?e:typeof e==`string`?cs(e):new Uint8Array(e)}async function ld(e){if(e instanceof Uint8Array)return e;if(typeof e==`string`)return cs(e);if(e instanceof ArrayBuffer)return new Uint8Array(e);let t=await e.arrayBuffer();return new Uint8Array(t)}async function*ud(e){if(e instanceof Uint8Array){yield e;return}if(typeof e==`string`){yield cs(e);return}if(e instanceof ArrayBuffer){yield new Uint8Array(e);return}if(typeof Blob<`u`&&e instanceof Blob){yield await ld(e);return}if(qe(e)){let t=e.getReader();try{for(;;){let{done:e,value:n}=await t.read();if(e)return;let r=sd(n);r&&(yield r)}}finally{try{t.releaseLock()}catch{}}}if(Ye(e)){for await(let t of e){let e=sd(t);e&&(yield e)}return}throw Error(`Unsupported archive source`)}function dd(){let e=[],t=0,n=[],r=0,i=!1,a=null,o=()=>{t>1024&&t*2>e.length&&(e.splice(0,t),t=0),r>1024&&r*2>n.length&&(n.splice(0,r),r=0)},s=()=>{for(;r<n.length;){let e=n[r];if(n[r]=void 0,r++,e)return o(),e}o()},c=()=>{for(;t<e.length;){let n=e[t];if(e[t]=void 0,t++,n!==void 0)return o(),n}o()};return{push:t=>{if(i||a)return;let n=s();n?n.resolve({value:t,done:!1}):e.push(t)},fail:e=>{if(!(i||a))for(a=e;;){let t=s();if(!t)break;t.reject(e)}},close:()=>{if(!(i||a))for(i=!0;;){let e=s();if(!e)break;e.resolve({value:void 0,done:!0})}},iterable:{[Symbol.asyncIterator](){return{next(){if(a)return Promise.reject(a);let e=c();return e===void 0?i?Promise.resolve({value:void 0,done:!0}):new Promise((e,t)=>n.push({resolve:e,reject:t})):Promise.resolve({value:e,done:!1})}}}}}}let fd=new Date(1980,0,1,0,0,0);var pd=class{constructor(e={}){this._entries=[],this._sealed=!1;let t=e.reproducible??!1;this._options={level:e.level??6,timestamps:e.timestamps??`dos`,comment:e.comment,modTime:e.modTime??(t?fd:new Date),smartStore:e.smartStore??!0}}add(e,t,n){if(this._sealed)throw Error(`Cannot add entries after output has started`);if(!e)throw Error(`Entry name is required`);return this._entries.push({name:e,source:t,options:n}),this}stream(){this._sealed=!0;let e=dd(),t=new Bs((t,n,r)=>{if(t){e.fail(t);return}n.length&&e.push(n),r&&e.close()},{comment:this._options.comment});return(async()=>{try{for(let e of this._entries){let n=e.options?.level??this._options.level,r=new zs(e.name,{level:n,modTime:e.options?.modTime??this._options.modTime,timestamps:this._options.timestamps,comment:e.options?.comment,smartStore:this._options.smartStore});if(t.add(r),e.source instanceof Uint8Array||e.source instanceof ArrayBuffer||typeof e.source==`string`||typeof Blob<`u`&&e.source instanceof Blob){let t=await ld(e.source);await r.push(t,!0)}else{for await(let t of ud(e.source))await r.push(t,!1);await r.push(new Uint8Array,!0)}await r.complete()}t.end()}catch(t){e.fail(t instanceof Error?t:Error(String(t)))}})(),e.iterable}async bytes(){this._sealed=!0;let e=this._entries.every(e=>e.source instanceof Uint8Array||e.source instanceof ArrayBuffer||typeof e.source==`string`||typeof Blob<`u`&&e.source instanceof Blob),t=this._entries.some(e=>typeof Blob<`u`&&e.source instanceof Blob);return e?t?td(await Promise.all(this._entries.map(async e=>({name:e.name,data:await ld(e.source),level:e.options?.level,modTime:e.options?.modTime,comment:e.options?.comment}))),{level:this._options.level,timestamps:this._options.timestamps,modTime:this._options.modTime,comment:this._options.comment,smartStore:this._options.smartStore}):nd(this._entries.map(e=>({name:e.name,data:cd(e.source),level:e.options?.level,modTime:e.options?.modTime,comment:e.options?.comment})),{level:this._options.level,timestamps:this._options.timestamps,modTime:this._options.modTime,comment:this._options.comment,smartStore:this._options.smartStore}):od(this.stream())}bytesSync(){return this._sealed=!0,nd(this._entries.map(e=>{if(!(e.source instanceof Uint8Array)&&!(e.source instanceof ArrayBuffer)&&typeof e.source!=`string`)throw Error(`bytesSync() only supports Uint8Array/ArrayBuffer/string sources`);return{name:e.name,data:cd(e.source),modTime:e.options?.modTime,comment:e.options?.comment}}),{level:this._options.level,timestamps:this._options.timestamps,modTime:this._options.modTime,comment:this._options.comment,smartStore:this._options.smartStore})}async pipeTo(e){await ad(this.stream(),e)}};function md(e){return new pd(e)}let hd=new Map;function gd(e){let t=e??`utf-8`,n=hd.get(t);if(n)return n;let r=new TextDecoder(t);return hd.set(t,r),r}var _d=class{constructor(e){e.kind===`buffer`?(this._parser=e.parser,this._info=e.info,this.path=e.info.path,this.isDirectory=e.info.isDirectory):(this._parseEntry=e.entry,this.path=e.entry.path,this.isDirectory=e.entry.type===`Directory`)}async bytes(){if(this._parser&&this._info)return await this._parser.extract(this._info.path)??new Uint8Array;if(this._parseEntry){let e=await this._parseEntry.buffer();return typeof Buffer<`u`&&e instanceof Buffer?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}return new Uint8Array}async*stream(){if(this._parser&&this._info){let e=await this.bytes();e.length&&(yield e);return}if(this._parseEntry)for await(let e of this._parseEntry)yield e}async pipeTo(e){await ad(this.stream(),e)}async text(e){let t=await this.bytes();return gd(e).decode(t)}discard(){this._parseEntry&&this._parseEntry.autodrain()}},vd=class{constructor(e,t={}){this._bufferParser=null,this._source=e,this._options=t}async _ensureBufferParser(){if(this._bufferParser)return this._bufferParser;if(this._source instanceof Uint8Array||this._source instanceof ArrayBuffer||typeof this._source==`string`||typeof Blob<`u`&&this._source instanceof Blob)return this._bufferParser=new rc(await ld(this._source),{decodeStrings:this._options.decodeStrings}),this._bufferParser;throw Error(`This ZIP source is streaming; random access is not available`)}async get(e){let t=await this._ensureBufferParser(),n=t.getEntry(e);return n?new _d({kind:`buffer`,parser:t,info:n}):null}async*entries(){if(this._source instanceof Uint8Array||this._source instanceof ArrayBuffer||typeof this._source==`string`||typeof Blob<`u`&&this._source instanceof Blob){let e=await this._ensureBufferParser();for(let t of e.getEntries())yield new _d({kind:`buffer`,parser:e,info:t});return}let e=Gl({...this._options.parse??{},forceStream:!0}),t=(async()=>{try{for await(let t of ud(this._source))await new Promise((n,r)=>{e.write(t,e=>{e?r(e):n()})});e.end(),await e.promise()}catch(t){throw e.destroy(t instanceof Error?t:Error(String(t))),t}})();try{for await(let t of e)yield new _d({kind:`stream`,entry:t});await t}finally{await t.catch(()=>{})}}async bytes(e){let t=await this.get(e);return t?t.bytes():null}async close(){}};function yd(e,t){return new vd(e,t)}return e.Anchor=O,e.Cell=b,e.Column=D,e.CsvFormatterStream=Fc,e.CsvParserStream=Pc,e.DataValidations=he,e.DocumentType=s,e.Enums=u,e.ErrorValue=l,e.FormCheckbox=Se,e.FormulaType=a,e.Image=fe,e.PaperSize=Ql,e.Range=r,e.ReadingOrder=c,e.RelationshipType=o,e.Row=le,e.Table=me,e.UnzipEntry=_d,e.ValueType=i,e.Workbook=Zl,e.WorkbookReader=Xl,e.WorkbookWriter=Xc,e.Worksheet=bt,e.WorksheetReader=ql,e.WorksheetWriter=Kc,e.ZipArchive=pd,e.ZipReader=vd,e.aoaToSheet=Hu,e.bookAppendSheet=Vu,e.bookNew=Bu,e.compress=Vs,e.compressSync=Hs,e.crc32=mo,e.crc32Finalize=po,e.crc32Update=fo,e.createDeflateStream=ns,e.createInflateStream=as,e.decodeCell=Mu,e.decodeCol=Ou,e.decodeRange=Pu,e.decodeRow=Au,e.decompress=Us,e.decompressSync=Ws,e.encodeCell=Nu,e.encodeCol=ku,e.encodeRange=Fu,e.encodeRow=ju,e.hasCompressionStream=Lo,e.hasDeflateRaw=Xo,e.jsonToSheet=Iu,e.sheetAddAoa=Uu,e.sheetAddJson=Lu,e.sheetToAoa=Wu,e.sheetToCsv=zu,e.sheetToJson=Ru,e.unzip=yd,e.zip=md,e})({});
|