@cj-tech-master/excelts 3.0.1 → 3.1.0-canary.20260102041828.82ed571
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/LICENSE +2 -1
- package/README.md +100 -22
- package/README_zh.md +100 -22
- package/THIRD_PARTY_NOTICES.md +112 -0
- package/dist/LICENSE +2 -1
- package/dist/browser/excelts.esm.js +18802 -12770
- package/dist/browser/excelts.esm.js.map +1 -1
- package/dist/browser/excelts.esm.min.js +39 -25
- package/dist/browser/excelts.iife.js +18791 -12754
- package/dist/browser/excelts.iife.js.map +1 -1
- package/dist/browser/excelts.iife.min.js +39 -25
- package/dist/cjs/index.js +19 -21
- package/dist/cjs/modules/archive/byte-queue.js +129 -0
- package/dist/cjs/modules/archive/compress.base.js +186 -0
- package/dist/cjs/modules/archive/compress.browser.js +98 -0
- package/dist/cjs/modules/archive/compress.js +127 -0
- package/dist/cjs/modules/archive/crc32.base.js +56 -0
- package/dist/cjs/modules/archive/crc32.browser.js +39 -0
- package/dist/cjs/modules/archive/crc32.js +128 -0
- package/dist/cjs/modules/archive/defaults.js +6 -0
- package/dist/cjs/modules/archive/deflate-fallback.js +569 -0
- package/dist/cjs/modules/archive/extract.js +114 -0
- package/dist/cjs/modules/archive/index.base.js +28 -0
- package/dist/cjs/modules/archive/index.browser.js +47 -0
- package/dist/cjs/modules/archive/index.js +45 -0
- package/dist/cjs/modules/archive/parse.base.js +632 -0
- package/dist/cjs/modules/archive/parse.browser.js +570 -0
- package/dist/cjs/modules/archive/parse.js +103 -0
- package/dist/cjs/modules/archive/streaming-compress.base.js +12 -0
- package/dist/cjs/modules/archive/streaming-compress.browser.js +301 -0
- package/dist/cjs/modules/archive/streaming-compress.js +73 -0
- package/dist/cjs/modules/archive/streaming-zip.js +411 -0
- package/dist/cjs/modules/archive/utils/binary.js +75 -0
- package/dist/cjs/modules/archive/utils/bytes.js +106 -0
- package/dist/cjs/modules/archive/utils/parse-buffer.js +59 -0
- package/dist/cjs/modules/archive/utils/text.js +39 -0
- package/dist/cjs/modules/archive/utils/timestamps.js +56 -0
- package/dist/cjs/modules/archive/utils/zip-extra-fields.js +75 -0
- package/dist/cjs/modules/archive/utils/zip-extra.js +74 -0
- package/dist/cjs/modules/archive/zip-builder.js +297 -0
- package/dist/cjs/modules/archive/zip-constants.js +26 -0
- package/dist/cjs/modules/archive/zip-entry-info.js +7 -0
- package/dist/cjs/modules/archive/zip-entry-metadata.js +29 -0
- package/dist/cjs/modules/archive/zip-parser.js +336 -0
- package/dist/cjs/modules/archive/zip-records.js +90 -0
- package/dist/cjs/modules/csv/csv-core.js +730 -0
- package/dist/cjs/modules/csv/csv-number.js +24 -0
- package/dist/cjs/modules/csv/csv-stream.js +711 -0
- package/dist/cjs/modules/csv/csv.browser.js +276 -0
- package/dist/cjs/modules/csv/csv.js +37 -0
- package/dist/cjs/modules/excel/anchor.js +100 -0
- package/dist/cjs/modules/excel/cell.js +949 -0
- package/dist/cjs/modules/excel/column.js +361 -0
- package/dist/cjs/modules/excel/data-validations.js +46 -0
- package/dist/cjs/modules/excel/defined-names.js +217 -0
- package/dist/cjs/modules/excel/image.js +63 -0
- package/dist/cjs/modules/excel/note.js +64 -0
- package/dist/cjs/modules/excel/pivot-table.js +239 -0
- package/dist/cjs/modules/excel/range.js +283 -0
- package/dist/cjs/modules/excel/row.js +444 -0
- package/dist/cjs/modules/excel/stream/hyperlink-reader.js +87 -0
- package/dist/cjs/modules/excel/stream/sheet-comments-writer.js +104 -0
- package/dist/cjs/modules/excel/stream/sheet-rels-writer.js +94 -0
- package/dist/cjs/modules/excel/stream/workbook-reader.browser.js +447 -0
- package/dist/cjs/modules/excel/stream/workbook-reader.js +57 -0
- package/dist/cjs/modules/excel/stream/workbook-writer.browser.js +360 -0
- package/dist/cjs/modules/excel/stream/workbook-writer.js +58 -0
- package/dist/cjs/modules/excel/stream/worksheet-reader.js +370 -0
- package/dist/cjs/modules/excel/stream/worksheet-writer.js +616 -0
- package/dist/cjs/modules/excel/table.js +408 -0
- package/dist/cjs/modules/excel/utils/cell-format.js +819 -0
- package/dist/cjs/modules/excel/utils/cell-matrix.js +183 -0
- package/dist/cjs/modules/excel/utils/encryptor.browser.js +49 -0
- package/dist/cjs/modules/excel/utils/encryptor.js +41 -0
- package/dist/cjs/modules/excel/utils/ooxml-paths.js +260 -0
- package/dist/cjs/modules/excel/utils/parse-sax.js +1210 -0
- package/dist/cjs/modules/excel/utils/shared-formula.js +38 -0
- package/dist/cjs/modules/excel/utils/sheet-utils.js +693 -0
- package/dist/cjs/modules/excel/utils/stream-buf.js +456 -0
- package/dist/cjs/modules/excel/utils/string-buf.js +78 -0
- package/dist/cjs/modules/excel/utils/under-dash.js +175 -0
- package/dist/cjs/modules/excel/utils/xml-stream.js +182 -0
- package/dist/cjs/modules/excel/workbook.js +317 -0
- package/dist/cjs/modules/excel/worksheet.js +927 -0
- package/dist/cjs/modules/excel/xlsx/xform/base-xform.js +138 -0
- package/dist/cjs/modules/excel/xlsx/xform/book/defined-name-xform.js +127 -0
- package/dist/cjs/modules/excel/xlsx/xform/book/sheet-xform.js +33 -0
- package/dist/cjs/modules/excel/xlsx/xform/book/workbook-calc-properties-xform.js +24 -0
- package/dist/cjs/modules/excel/xlsx/xform/book/workbook-pivot-cache-xform.js +27 -0
- package/dist/cjs/modules/excel/xlsx/xform/book/workbook-properties-xform.js +27 -0
- package/dist/cjs/modules/excel/xlsx/xform/book/workbook-view-xform.js +49 -0
- package/dist/cjs/modules/excel/xlsx/xform/book/workbook-xform.js +237 -0
- package/dist/cjs/modules/excel/xlsx/xform/comment/comment-xform.js +79 -0
- package/dist/cjs/modules/excel/xlsx/xform/comment/comments-xform.js +75 -0
- package/dist/cjs/modules/excel/xlsx/xform/comment/style/vml-position-xform.js +37 -0
- package/dist/cjs/modules/excel/xlsx/xform/comment/style/vml-protection-xform.js +33 -0
- package/dist/cjs/modules/excel/xlsx/xform/comment/vml-anchor-xform.js +58 -0
- package/dist/cjs/modules/excel/xlsx/xform/comment/vml-client-data-xform.js +85 -0
- package/dist/cjs/modules/excel/xlsx/xform/comment/vml-notes-xform.js +99 -0
- package/dist/cjs/modules/excel/xlsx/xform/comment/vml-shape-xform.js +86 -0
- package/dist/cjs/modules/excel/xlsx/xform/comment/vml-textbox-xform.js +63 -0
- package/dist/cjs/modules/excel/xlsx/xform/composite-xform.js +51 -0
- package/dist/cjs/modules/excel/xlsx/xform/core/app-heading-pairs-xform.js +27 -0
- package/dist/cjs/modules/excel/xlsx/xform/core/app-titles-of-parts-xform.js +24 -0
- package/dist/cjs/modules/excel/xlsx/xform/core/app-xform.js +86 -0
- package/dist/cjs/modules/excel/xlsx/xform/core/content-types-xform.js +125 -0
- package/dist/cjs/modules/excel/xlsx/xform/core/core-xform.js +127 -0
- package/dist/cjs/modules/excel/xlsx/xform/core/relationship-xform.js +23 -0
- package/dist/cjs/modules/excel/xlsx/xform/core/relationships-xform.js +65 -0
- package/dist/cjs/modules/excel/xlsx/xform/drawing/base-cell-anchor-xform.js +47 -0
- package/dist/cjs/modules/excel/xlsx/xform/drawing/blip-fill-xform.js +60 -0
- package/dist/cjs/modules/excel/xlsx/xform/drawing/blip-xform.js +43 -0
- package/dist/cjs/modules/excel/xlsx/xform/drawing/c-nv-pic-pr-xform.js +35 -0
- package/dist/cjs/modules/excel/xlsx/xform/drawing/c-nv-pr-xform.js +62 -0
- package/dist/cjs/modules/excel/xlsx/xform/drawing/cell-position-xform.js +71 -0
- package/dist/cjs/modules/excel/xlsx/xform/drawing/drawing-xform.js +99 -0
- package/dist/cjs/modules/excel/xlsx/xform/drawing/ext-lst-xform.js +40 -0
- package/dist/cjs/modules/excel/xlsx/xform/drawing/ext-xform.js +37 -0
- package/dist/cjs/modules/excel/xlsx/xform/drawing/hlink-click-xform.js +42 -0
- package/dist/cjs/modules/excel/xlsx/xform/drawing/nv-pic-pr-xform.js +59 -0
- package/dist/cjs/modules/excel/xlsx/xform/drawing/one-cell-anchor-xform.js +55 -0
- package/dist/cjs/modules/excel/xlsx/xform/drawing/pic-xform.js +67 -0
- package/dist/cjs/modules/excel/xlsx/xform/drawing/two-cell-anchor-xform.js +54 -0
- package/dist/cjs/modules/excel/xlsx/xform/list-xform.js +92 -0
- package/dist/cjs/modules/excel/xlsx/xform/pivot-table/cache-field-xform.js +131 -0
- package/dist/cjs/modules/excel/xlsx/xform/pivot-table/cache-field.js +81 -0
- package/dist/cjs/modules/excel/xlsx/xform/pivot-table/pivot-cache-definition-xform.js +182 -0
- package/dist/cjs/modules/excel/xlsx/xform/pivot-table/pivot-cache-records-xform.js +237 -0
- package/dist/cjs/modules/excel/xlsx/xform/pivot-table/pivot-table-xform.js +627 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/auto-filter-xform.js +37 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/cell-xform.js +463 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/cf/cf-rule-xform.js +262 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/cf/cfvo-xform.js +25 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/cf/color-scale-xform.js +38 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/cf/conditional-formatting-xform.js +40 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/cf/conditional-formattings-xform.js +77 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/cf/databar-xform.js +42 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/cf/ext-lst-ref-xform.js +70 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/cf/formula-xform.js +22 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/cf/icon-set-xform.js +40 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.js +25 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js +83 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.js +38 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.js +51 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.js +43 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/cf-ext/databar-ext-xform.js +72 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/cf-ext/f-ext-xform.js +22 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.js +63 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/cf-ext/sqref-ext-xform.js +22 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/col-breaks-xform.js +38 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/col-xform.js +78 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/data-validations-xform.js +272 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/dimension-xform.js +26 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/drawing-xform.js +30 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/ext-lst-xform.js +69 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/header-footer-xform.js +127 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/hyperlink-xform.js +50 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/merge-cell-xform.js +24 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/merges.js +53 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/outline-properties-xform.js +39 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/page-breaks-xform.js +36 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/page-margins-xform.js +45 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/page-setup-properties-xform.js +32 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/page-setup-xform.js +99 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/picture-xform.js +30 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/print-options-xform.js +44 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/row-breaks-xform.js +32 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/row-xform.js +155 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/sheet-format-properties-xform.js +52 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/sheet-properties-xform.js +85 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/sheet-protection-xform.js +83 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/sheet-view-xform.js +196 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/table-part-xform.js +30 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/worksheet-xform.js +521 -0
- package/dist/cjs/modules/excel/xlsx/xform/simple/boolean-xform.js +27 -0
- package/dist/cjs/modules/excel/xlsx/xform/simple/date-xform.js +68 -0
- package/dist/cjs/modules/excel/xlsx/xform/simple/float-xform.js +50 -0
- package/dist/cjs/modules/excel/xlsx/xform/simple/integer-xform.js +55 -0
- package/dist/cjs/modules/excel/xlsx/xform/simple/string-xform.js +50 -0
- package/dist/cjs/modules/excel/xlsx/xform/static-xform.js +58 -0
- package/dist/cjs/modules/excel/xlsx/xform/strings/phonetic-text-xform.js +89 -0
- package/dist/cjs/modules/excel/xlsx/xform/strings/rich-text-xform.js +80 -0
- package/dist/cjs/modules/excel/xlsx/xform/strings/shared-string-xform.js +93 -0
- package/dist/cjs/modules/excel/xlsx/xform/strings/shared-strings-xform.js +112 -0
- package/dist/cjs/modules/excel/xlsx/xform/strings/text-xform.js +39 -0
- package/dist/cjs/modules/excel/xlsx/xform/style/alignment-xform.js +155 -0
- package/dist/cjs/modules/excel/xlsx/xform/style/border-xform.js +191 -0
- package/dist/cjs/modules/excel/xlsx/xform/style/color-xform.js +64 -0
- package/dist/cjs/modules/excel/xlsx/xform/style/dxf-xform.js +95 -0
- package/dist/cjs/modules/excel/xlsx/xform/style/fill-xform.js +315 -0
- package/dist/cjs/modules/excel/xlsx/xform/style/font-xform.js +103 -0
- package/dist/cjs/modules/excel/xlsx/xform/style/numfmt-xform.js +53 -0
- package/dist/cjs/modules/excel/xlsx/xform/style/protection-xform.js +52 -0
- package/dist/cjs/modules/excel/xlsx/xform/style/style-xform.js +111 -0
- package/dist/cjs/modules/excel/xlsx/xform/style/styles-xform.js +487 -0
- package/dist/cjs/modules/excel/xlsx/xform/style/underline-xform.js +41 -0
- package/dist/cjs/modules/excel/xlsx/xform/table/auto-filter-xform.js +73 -0
- package/dist/cjs/modules/excel/xlsx/xform/table/custom-filter-xform.js +34 -0
- package/dist/cjs/modules/excel/xlsx/xform/table/filter-column-xform.js +90 -0
- package/dist/cjs/modules/excel/xlsx/xform/table/filter-xform.js +32 -0
- package/dist/cjs/modules/excel/xlsx/xform/table/table-column-xform.js +44 -0
- package/dist/cjs/modules/excel/xlsx/xform/table/table-style-info-xform.js +47 -0
- package/dist/cjs/modules/excel/xlsx/xform/table/table-xform.js +129 -0
- package/dist/cjs/modules/excel/xlsx/xlsx.browser.js +1155 -0
- package/dist/cjs/modules/excel/xlsx/xlsx.js +245 -0
- package/dist/cjs/modules/stream/base-transform.js +164 -0
- package/dist/cjs/modules/stream/buffered-stream.js +283 -0
- package/dist/cjs/modules/stream/chunked-builder.js +170 -0
- package/dist/cjs/modules/stream/event-emitter.js +243 -0
- package/dist/cjs/modules/stream/index.browser.js +97 -0
- package/dist/cjs/modules/stream/index.js +124 -0
- package/dist/cjs/modules/stream/pull-stream.js +208 -0
- package/dist/cjs/modules/stream/shared.js +168 -0
- package/dist/cjs/modules/stream/streams.browser.js +3318 -0
- package/dist/cjs/modules/stream/streams.js +988 -0
- package/dist/cjs/modules/stream/types.js +8 -0
- package/dist/cjs/modules/stream/utils.js +96 -0
- package/dist/cjs/utils/browser.js +55 -0
- package/dist/cjs/utils/env.js +22 -0
- package/dist/cjs/utils/utils.base.js +139 -2
- package/dist/cjs/utils/utils.browser.js +6 -59
- package/dist/cjs/utils/utils.js +13 -89
- package/dist/cjs/utils/uuid.js +58 -0
- package/dist/esm/index.browser.js +26 -17
- package/dist/esm/index.js +18 -19
- package/dist/esm/modules/archive/byte-queue.js +125 -0
- package/dist/esm/modules/archive/compress.base.js +173 -0
- package/dist/esm/modules/archive/compress.browser.js +93 -0
- package/dist/esm/modules/archive/compress.js +86 -0
- package/dist/esm/modules/archive/crc32.base.js +51 -0
- package/dist/esm/modules/archive/crc32.browser.js +32 -0
- package/dist/esm/modules/archive/crc32.js +97 -0
- package/dist/esm/modules/archive/defaults.js +3 -0
- package/dist/esm/modules/archive/deflate-fallback.js +564 -0
- package/dist/esm/modules/archive/extract.js +106 -0
- package/dist/esm/modules/archive/index.base.js +13 -0
- package/dist/esm/modules/archive/index.browser.js +17 -0
- package/dist/esm/modules/archive/index.js +15 -0
- package/dist/esm/modules/archive/parse.base.js +610 -0
- package/dist/esm/modules/archive/parse.browser.js +564 -0
- package/dist/esm/modules/archive/parse.js +94 -0
- package/dist/esm/modules/archive/streaming-compress.base.js +9 -0
- package/dist/esm/modules/archive/streaming-compress.browser.js +296 -0
- package/dist/esm/modules/archive/streaming-compress.js +68 -0
- package/dist/esm/modules/archive/streaming-zip.js +407 -0
- package/dist/esm/modules/archive/utils/binary.js +69 -0
- package/dist/esm/modules/archive/utils/bytes.js +101 -0
- package/dist/esm/modules/archive/utils/parse-buffer.js +55 -0
- package/dist/esm/modules/archive/utils/text.js +33 -0
- package/dist/esm/modules/archive/utils/timestamps.js +48 -0
- package/dist/esm/modules/archive/utils/zip-extra-fields.js +72 -0
- package/dist/esm/modules/archive/utils/zip-extra.js +68 -0
- package/dist/esm/modules/archive/zip-builder.js +292 -0
- package/dist/esm/modules/archive/zip-constants.js +23 -0
- package/dist/esm/modules/archive/zip-entry-info.js +6 -0
- package/dist/esm/modules/archive/zip-entry-metadata.js +24 -0
- package/dist/esm/modules/archive/zip-parser.js +332 -0
- package/dist/esm/modules/archive/zip-records.js +84 -0
- package/dist/esm/modules/csv/csv-core.js +723 -0
- package/dist/esm/modules/csv/csv-number.js +20 -0
- package/dist/esm/modules/csv/csv-stream.js +703 -0
- package/dist/esm/modules/csv/csv.browser.js +265 -0
- package/dist/esm/modules/csv/csv.js +29 -0
- package/dist/esm/modules/excel/anchor.js +97 -0
- package/dist/esm/modules/excel/cell.js +946 -0
- package/dist/esm/modules/excel/column.js +358 -0
- package/dist/esm/modules/excel/data-validations.js +43 -0
- package/dist/esm/modules/excel/defined-names.js +214 -0
- package/dist/esm/modules/excel/image.js +60 -0
- package/dist/esm/modules/excel/note.js +61 -0
- package/dist/esm/modules/excel/pivot-table.js +237 -0
- package/dist/esm/modules/excel/range.js +280 -0
- package/dist/esm/modules/excel/row.js +441 -0
- package/dist/esm/modules/excel/stream/hyperlink-reader.js +84 -0
- package/dist/esm/modules/excel/stream/sheet-comments-writer.js +101 -0
- package/dist/esm/modules/excel/stream/sheet-rels-writer.js +91 -0
- package/dist/esm/modules/excel/stream/workbook-reader.browser.js +443 -0
- package/dist/esm/modules/excel/stream/workbook-reader.js +50 -0
- package/dist/esm/modules/excel/stream/workbook-writer.browser.js +356 -0
- package/dist/esm/modules/excel/stream/workbook-writer.js +52 -0
- package/dist/esm/modules/excel/stream/worksheet-reader.js +367 -0
- package/dist/esm/modules/excel/stream/worksheet-writer.js +613 -0
- package/dist/esm/modules/excel/table.js +405 -0
- package/dist/esm/modules/excel/utils/cell-format.js +814 -0
- package/dist/esm/modules/excel/utils/cell-matrix.js +180 -0
- package/dist/esm/modules/excel/utils/encryptor.browser.js +46 -0
- package/dist/esm/modules/excel/utils/encryptor.js +35 -0
- package/dist/esm/modules/excel/utils/ooxml-paths.js +209 -0
- package/dist/esm/modules/excel/utils/parse-sax.js +1206 -0
- package/dist/esm/modules/excel/utils/shared-formula.js +36 -0
- package/dist/esm/modules/excel/utils/sheet-utils.js +674 -0
- package/dist/esm/modules/excel/utils/stream-buf.js +453 -0
- package/dist/esm/modules/excel/utils/string-buf.js +75 -0
- package/dist/esm/modules/excel/utils/under-dash.js +166 -0
- package/dist/esm/modules/excel/utils/xml-stream.js +179 -0
- package/dist/esm/modules/excel/workbook.js +314 -0
- package/dist/esm/modules/excel/worksheet.js +924 -0
- package/dist/esm/modules/excel/xlsx/xform/base-xform.js +135 -0
- package/dist/esm/modules/excel/xlsx/xform/book/defined-name-xform.js +124 -0
- package/dist/esm/modules/excel/xlsx/xform/book/sheet-xform.js +30 -0
- package/dist/esm/modules/excel/xlsx/xform/book/workbook-calc-properties-xform.js +21 -0
- package/dist/esm/modules/excel/xlsx/xform/book/workbook-pivot-cache-xform.js +24 -0
- package/dist/esm/modules/excel/xlsx/xform/book/workbook-properties-xform.js +24 -0
- package/dist/esm/modules/excel/xlsx/xform/book/workbook-view-xform.js +46 -0
- package/dist/esm/modules/excel/xlsx/xform/book/workbook-xform.js +234 -0
- package/dist/esm/modules/excel/xlsx/xform/comment/comment-xform.js +76 -0
- package/dist/esm/modules/excel/xlsx/xform/comment/comments-xform.js +72 -0
- package/dist/esm/modules/excel/xlsx/xform/comment/style/vml-position-xform.js +34 -0
- package/dist/esm/modules/excel/xlsx/xform/comment/style/vml-protection-xform.js +30 -0
- package/dist/esm/modules/excel/xlsx/xform/comment/vml-anchor-xform.js +55 -0
- package/dist/esm/modules/excel/xlsx/xform/comment/vml-client-data-xform.js +82 -0
- package/dist/esm/modules/excel/xlsx/xform/comment/vml-notes-xform.js +96 -0
- package/dist/esm/modules/excel/xlsx/xform/comment/vml-shape-xform.js +83 -0
- package/dist/esm/modules/excel/xlsx/xform/comment/vml-textbox-xform.js +60 -0
- package/dist/esm/modules/excel/xlsx/xform/composite-xform.js +48 -0
- package/dist/esm/modules/excel/xlsx/xform/core/app-heading-pairs-xform.js +24 -0
- package/dist/esm/modules/excel/xlsx/xform/core/app-titles-of-parts-xform.js +21 -0
- package/dist/esm/modules/excel/xlsx/xform/core/app-xform.js +83 -0
- package/dist/esm/modules/excel/xlsx/xform/core/content-types-xform.js +122 -0
- package/dist/esm/modules/excel/xlsx/xform/core/core-xform.js +124 -0
- package/dist/esm/modules/excel/xlsx/xform/core/relationship-xform.js +20 -0
- package/dist/esm/modules/excel/xlsx/xform/core/relationships-xform.js +62 -0
- package/dist/esm/modules/excel/xlsx/xform/drawing/base-cell-anchor-xform.js +44 -0
- package/dist/esm/modules/excel/xlsx/xform/drawing/blip-fill-xform.js +57 -0
- package/dist/esm/modules/excel/xlsx/xform/drawing/blip-xform.js +40 -0
- package/dist/esm/modules/excel/xlsx/xform/drawing/c-nv-pic-pr-xform.js +32 -0
- package/dist/esm/modules/excel/xlsx/xform/drawing/c-nv-pr-xform.js +59 -0
- package/dist/esm/modules/excel/xlsx/xform/drawing/cell-position-xform.js +68 -0
- package/dist/esm/modules/excel/xlsx/xform/drawing/drawing-xform.js +96 -0
- package/dist/esm/modules/excel/xlsx/xform/drawing/ext-lst-xform.js +37 -0
- package/dist/esm/modules/excel/xlsx/xform/drawing/ext-xform.js +34 -0
- package/dist/esm/modules/excel/xlsx/xform/drawing/hlink-click-xform.js +39 -0
- package/dist/esm/modules/excel/xlsx/xform/drawing/nv-pic-pr-xform.js +56 -0
- package/dist/esm/modules/excel/xlsx/xform/drawing/one-cell-anchor-xform.js +52 -0
- package/dist/esm/modules/excel/xlsx/xform/drawing/pic-xform.js +64 -0
- package/dist/esm/modules/excel/xlsx/xform/drawing/two-cell-anchor-xform.js +51 -0
- package/dist/esm/modules/excel/xlsx/xform/list-xform.js +89 -0
- package/dist/esm/modules/excel/xlsx/xform/pivot-table/cache-field-xform.js +128 -0
- package/dist/esm/modules/excel/xlsx/xform/pivot-table/cache-field.js +78 -0
- package/dist/esm/modules/excel/xlsx/xform/pivot-table/pivot-cache-definition-xform.js +179 -0
- package/dist/esm/modules/excel/xlsx/xform/pivot-table/pivot-cache-records-xform.js +234 -0
- package/dist/esm/modules/excel/xlsx/xform/pivot-table/pivot-table-xform.js +624 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/auto-filter-xform.js +34 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/cell-xform.js +460 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/cf/cf-rule-xform.js +259 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/cf/cfvo-xform.js +22 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/cf/color-scale-xform.js +35 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/cf/conditional-formatting-xform.js +37 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/cf/conditional-formattings-xform.js +74 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/cf/databar-xform.js +39 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/cf/ext-lst-ref-xform.js +67 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/cf/formula-xform.js +19 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/cf/icon-set-xform.js +37 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.js +22 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js +80 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.js +35 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.js +48 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.js +40 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/cf-ext/databar-ext-xform.js +69 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/cf-ext/f-ext-xform.js +19 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.js +60 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/cf-ext/sqref-ext-xform.js +19 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/col-breaks-xform.js +35 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/col-xform.js +75 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/data-validations-xform.js +269 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/dimension-xform.js +23 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/drawing-xform.js +27 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/ext-lst-xform.js +66 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/header-footer-xform.js +124 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/hyperlink-xform.js +47 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/merge-cell-xform.js +21 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/merges.js +50 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/outline-properties-xform.js +36 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/page-breaks-xform.js +33 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/page-margins-xform.js +42 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/page-setup-properties-xform.js +29 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/page-setup-xform.js +96 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/picture-xform.js +27 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/print-options-xform.js +41 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/row-breaks-xform.js +29 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/row-xform.js +152 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/sheet-format-properties-xform.js +49 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/sheet-properties-xform.js +82 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/sheet-protection-xform.js +80 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/sheet-view-xform.js +193 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/table-part-xform.js +27 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/worksheet-xform.js +518 -0
- package/dist/esm/modules/excel/xlsx/xform/simple/boolean-xform.js +24 -0
- package/dist/esm/modules/excel/xlsx/xform/simple/date-xform.js +65 -0
- package/dist/esm/modules/excel/xlsx/xform/simple/float-xform.js +47 -0
- package/dist/esm/modules/excel/xlsx/xform/simple/integer-xform.js +52 -0
- package/dist/esm/modules/excel/xlsx/xform/simple/string-xform.js +47 -0
- package/dist/esm/modules/excel/xlsx/xform/static-xform.js +55 -0
- package/dist/esm/modules/excel/xlsx/xform/strings/phonetic-text-xform.js +86 -0
- package/dist/esm/modules/excel/xlsx/xform/strings/rich-text-xform.js +77 -0
- package/dist/esm/modules/excel/xlsx/xform/strings/shared-string-xform.js +90 -0
- package/dist/esm/modules/excel/xlsx/xform/strings/shared-strings-xform.js +109 -0
- package/dist/esm/modules/excel/xlsx/xform/strings/text-xform.js +36 -0
- package/dist/esm/modules/excel/xlsx/xform/style/alignment-xform.js +152 -0
- package/dist/esm/modules/excel/xlsx/xform/style/border-xform.js +188 -0
- package/dist/esm/modules/excel/xlsx/xform/style/color-xform.js +61 -0
- package/dist/esm/modules/excel/xlsx/xform/style/dxf-xform.js +92 -0
- package/dist/esm/modules/excel/xlsx/xform/style/fill-xform.js +312 -0
- package/dist/esm/modules/excel/xlsx/xform/style/font-xform.js +100 -0
- package/dist/esm/modules/excel/xlsx/xform/style/numfmt-xform.js +50 -0
- package/dist/esm/modules/excel/xlsx/xform/style/protection-xform.js +49 -0
- package/dist/esm/modules/excel/xlsx/xform/style/style-xform.js +108 -0
- package/dist/esm/modules/excel/xlsx/xform/style/styles-xform.js +484 -0
- package/dist/esm/modules/excel/xlsx/xform/style/underline-xform.js +38 -0
- package/dist/esm/modules/excel/xlsx/xform/table/auto-filter-xform.js +70 -0
- package/dist/esm/modules/excel/xlsx/xform/table/custom-filter-xform.js +31 -0
- package/dist/esm/modules/excel/xlsx/xform/table/filter-column-xform.js +87 -0
- package/dist/esm/modules/excel/xlsx/xform/table/filter-xform.js +29 -0
- package/dist/esm/modules/excel/xlsx/xform/table/table-column-xform.js +41 -0
- package/dist/esm/modules/excel/xlsx/xform/table/table-style-info-xform.js +44 -0
- package/dist/esm/modules/excel/xlsx/xform/table/table-xform.js +126 -0
- package/dist/esm/modules/excel/xlsx/xlsx.browser.js +1152 -0
- package/dist/esm/modules/excel/xlsx/xlsx.js +239 -0
- package/dist/esm/modules/stream/base-transform.js +160 -0
- package/dist/esm/modules/stream/buffered-stream.js +277 -0
- package/dist/esm/modules/stream/chunked-builder.js +165 -0
- package/dist/esm/modules/stream/event-emitter.js +239 -0
- package/dist/esm/modules/stream/index.browser.js +25 -0
- package/dist/esm/modules/stream/index.js +52 -0
- package/dist/esm/modules/stream/pull-stream.js +204 -0
- package/dist/esm/modules/stream/shared.js +156 -0
- package/dist/esm/modules/stream/streams.browser.js +3267 -0
- package/dist/esm/modules/stream/streams.js +940 -0
- package/dist/esm/modules/stream/types.js +7 -0
- package/dist/esm/modules/stream/utils.js +85 -0
- package/dist/esm/utils/browser.js +49 -0
- package/dist/esm/utils/env.js +18 -0
- package/dist/esm/utils/utils.base.js +135 -2
- package/dist/esm/utils/utils.browser.js +1 -57
- package/dist/esm/utils/utils.js +8 -87
- package/dist/esm/utils/uuid.js +55 -0
- package/dist/types/index.browser.d.ts +21 -15
- package/dist/types/index.d.ts +23 -24
- package/dist/types/modules/archive/byte-queue.d.ts +18 -0
- package/dist/types/modules/archive/compress.base.d.ts +98 -0
- package/dist/types/modules/archive/compress.browser.d.ts +57 -0
- package/dist/types/modules/archive/compress.d.ts +44 -0
- package/dist/types/modules/archive/crc32.base.d.ts +25 -0
- package/dist/types/modules/archive/crc32.browser.d.ts +30 -0
- package/dist/types/modules/archive/crc32.d.ts +59 -0
- package/dist/types/modules/archive/defaults.d.ts +4 -0
- package/dist/types/modules/archive/extract.d.ts +94 -0
- package/dist/types/modules/archive/index.base.d.ts +11 -0
- package/dist/types/modules/archive/index.browser.d.ts +11 -0
- package/dist/types/modules/archive/index.d.ts +11 -0
- package/dist/types/modules/archive/parse.base.d.ts +198 -0
- package/dist/types/modules/archive/parse.browser.d.ts +22 -0
- package/dist/types/modules/archive/parse.d.ts +16 -0
- package/dist/types/modules/archive/streaming-compress.base.d.ts +36 -0
- package/dist/types/modules/archive/streaming-compress.browser.d.ts +26 -0
- package/dist/types/modules/archive/streaming-compress.d.ts +22 -0
- package/dist/types/modules/archive/streaming-zip.d.ts +120 -0
- package/dist/types/modules/archive/utils/binary.d.ts +24 -0
- package/dist/types/modules/archive/utils/bytes.d.ts +7 -0
- package/dist/types/modules/archive/utils/parse-buffer.d.ts +18 -0
- package/dist/types/modules/archive/utils/text.d.ts +20 -0
- package/dist/types/modules/archive/utils/timestamps.d.ts +28 -0
- package/dist/types/modules/archive/utils/zip-extra-fields.d.ts +19 -0
- package/dist/types/modules/archive/utils/zip-extra.d.ts +18 -0
- package/dist/types/modules/archive/zip-builder.d.ts +117 -0
- package/dist/types/modules/archive/zip-constants.d.ts +18 -0
- package/dist/types/modules/archive/zip-entry-info.d.ts +29 -0
- package/dist/types/modules/archive/zip-entry-metadata.d.ts +23 -0
- package/dist/types/modules/archive/zip-parser.d.ts +62 -0
- package/dist/types/modules/archive/zip-records.d.ts +43 -0
- package/dist/types/modules/csv/csv-core.d.ts +215 -0
- package/dist/types/modules/csv/csv-number.d.ts +3 -0
- package/dist/types/modules/csv/csv-stream.d.ts +121 -0
- package/dist/types/modules/csv/csv.browser.d.ts +60 -0
- package/dist/types/modules/csv/csv.d.ts +14 -0
- package/dist/types/modules/excel/anchor.d.ts +33 -0
- package/dist/types/modules/excel/cell.d.ts +138 -0
- package/dist/types/modules/excel/column.d.ts +122 -0
- package/dist/types/modules/excel/defined-names.d.ts +37 -0
- package/dist/types/modules/excel/image.d.ts +64 -0
- package/dist/types/modules/excel/pivot-table.d.ts +152 -0
- package/dist/types/modules/excel/range.d.ts +62 -0
- package/dist/types/modules/excel/row.d.ts +127 -0
- package/dist/types/modules/excel/stream/hyperlink-reader.d.ts +33 -0
- package/dist/types/modules/excel/stream/workbook-reader.browser.d.ts +169 -0
- package/dist/types/modules/excel/stream/workbook-reader.d.ts +24 -0
- package/dist/types/modules/excel/stream/workbook-writer.browser.d.ts +147 -0
- package/dist/types/modules/excel/stream/workbook-writer.d.ts +31 -0
- package/dist/types/modules/excel/stream/worksheet-reader.d.ts +61 -0
- package/dist/types/modules/excel/stream/worksheet-writer.d.ts +140 -0
- package/dist/types/modules/excel/table.d.ts +81 -0
- package/dist/types/modules/excel/utils/col-cache.d.ts +36 -0
- package/dist/types/modules/excel/utils/encryptor.browser.d.ts +19 -0
- package/dist/types/modules/excel/utils/encryptor.d.ts +9 -0
- package/dist/types/modules/excel/utils/iterate-stream.d.ts +14 -0
- package/dist/types/modules/excel/utils/ooxml-paths.d.ts +64 -0
- package/dist/types/modules/excel/utils/sheet-utils.d.ts +190 -0
- package/dist/types/modules/excel/utils/stream-buf.d.ts +126 -0
- package/dist/types/modules/excel/utils/string-buf.d.ts +29 -0
- package/dist/types/modules/excel/workbook.d.ts +195 -0
- package/dist/types/modules/excel/worksheet.d.ts +333 -0
- package/dist/types/modules/excel/xlsx/xform/base-xform.d.ts +33 -0
- package/dist/types/modules/excel/xlsx/xform/book/defined-name-xform.d.ts +17 -0
- package/dist/types/modules/excel/xlsx/xform/book/sheet-xform.d.ts +14 -0
- package/dist/types/modules/excel/xlsx/xform/book/workbook-calc-properties-xform.d.ts +11 -0
- package/dist/types/modules/excel/xlsx/xform/book/workbook-pivot-cache-xform.d.ts +12 -0
- package/dist/types/modules/excel/xlsx/xform/book/workbook-properties-xform.d.ts +11 -0
- package/dist/types/modules/excel/xlsx/xform/book/workbook-view-xform.d.ts +17 -0
- package/dist/types/modules/excel/xlsx/xform/book/workbook-xform.d.ts +23 -0
- package/dist/types/modules/excel/xlsx/xform/comment/comment-xform.d.ts +28 -0
- package/dist/types/modules/excel/xlsx/xform/comment/comments-xform.d.ts +21 -0
- package/dist/types/modules/excel/xlsx/xform/comment/style/vml-position-xform.d.ts +16 -0
- package/dist/types/modules/excel/xlsx/xform/comment/style/vml-protection-xform.d.ts +14 -0
- package/dist/types/modules/excel/xlsx/xform/comment/vml-anchor-xform.d.ts +27 -0
- package/dist/types/modules/excel/xlsx/xform/comment/vml-client-data-xform.d.ts +35 -0
- package/dist/types/modules/excel/xlsx/xform/comment/vml-notes-xform.d.ts +24 -0
- package/dist/types/modules/excel/xlsx/xform/comment/vml-shape-xform.d.ts +25 -0
- package/dist/types/modules/excel/xlsx/xform/comment/vml-textbox-xform.d.ts +23 -0
- package/dist/types/modules/excel/xlsx/xform/composite-xform.d.ts +11 -0
- package/dist/types/modules/excel/xlsx/xform/core/app-heading-pairs-xform.d.ts +8 -0
- package/dist/types/modules/excel/xlsx/xform/core/app-titles-of-parts-xform.d.ts +8 -0
- package/dist/types/modules/excel/xlsx/xform/core/app-xform.d.ts +26 -0
- package/dist/types/modules/excel/xlsx/xform/core/content-types-xform.d.ts +11 -0
- package/dist/types/modules/excel/xlsx/xform/core/core-xform.d.ts +42 -0
- package/dist/types/modules/excel/xlsx/xform/core/relationship-xform.d.ts +14 -0
- package/dist/types/modules/excel/xlsx/xform/core/relationships-xform.d.ts +14 -0
- package/dist/types/modules/excel/xlsx/xform/drawing/base-cell-anchor-xform.d.ts +13 -0
- package/dist/types/modules/excel/xlsx/xform/drawing/blip-fill-xform.d.ts +16 -0
- package/dist/types/modules/excel/xlsx/xform/drawing/blip-xform.d.ts +14 -0
- package/dist/types/modules/excel/xlsx/xform/drawing/c-nv-pic-pr-xform.d.ts +9 -0
- package/dist/types/modules/excel/xlsx/xform/drawing/c-nv-pr-xform.d.ts +18 -0
- package/dist/types/modules/excel/xlsx/xform/drawing/cell-position-xform.d.ts +24 -0
- package/dist/types/modules/excel/xlsx/xform/drawing/drawing-xform.d.ts +24 -0
- package/dist/types/modules/excel/xlsx/xform/drawing/ext-lst-xform.d.ts +9 -0
- package/dist/types/modules/excel/xlsx/xform/drawing/ext-xform.d.ts +20 -0
- package/dist/types/modules/excel/xlsx/xform/drawing/hlink-click-xform.d.ts +11 -0
- package/dist/types/modules/excel/xlsx/xform/drawing/nv-pic-pr-xform.d.ts +15 -0
- package/dist/types/modules/excel/xlsx/xform/drawing/one-cell-anchor-xform.d.ts +20 -0
- package/dist/types/modules/excel/xlsx/xform/drawing/pic-xform.d.ts +22 -0
- package/dist/types/modules/excel/xlsx/xform/drawing/two-cell-anchor-xform.d.ts +20 -0
- package/dist/types/modules/excel/xlsx/xform/list-xform.d.ts +32 -0
- package/dist/types/modules/excel/xlsx/xform/pivot-table/cache-field-xform.d.ts +42 -0
- package/dist/types/modules/excel/xlsx/xform/pivot-table/pivot-cache-definition-xform.d.ts +60 -0
- package/dist/types/modules/excel/xlsx/xform/pivot-table/pivot-cache-records-xform.d.ts +73 -0
- package/dist/types/modules/excel/xlsx/xform/pivot-table/pivot-table-xform.d.ts +119 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/auto-filter-xform.d.ts +8 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/cell-xform.d.ts +17 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/cf/cf-rule-xform.d.ts +41 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/cf/cfvo-xform.d.ts +8 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/cf/color-scale-xform.d.ts +13 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/cf/conditional-formatting-xform.d.ts +9 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/cf/conditional-formattings-xform.d.ts +16 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/cf/databar-xform.d.ts +13 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/cf/ext-lst-ref-xform.d.ts +9 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/cf/formula-xform.d.ts +9 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/cf/icon-set-xform.d.ts +11 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.d.ts +10 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.d.ts +23 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.d.ts +13 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.d.ts +16 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.d.ts +13 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/cf-ext/databar-ext-xform.d.ts +29 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/cf-ext/f-ext-xform.d.ts +9 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.d.ts +20 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/cf-ext/sqref-ext-xform.d.ts +9 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/col-breaks-xform.d.ts +16 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/col-xform.d.ts +22 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/data-validations-xform.d.ts +12 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/dimension-xform.d.ts +10 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/drawing-xform.d.ts +12 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/ext-lst-xform.d.ts +16 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/header-footer-xform.d.ts +20 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/hyperlink-xform.d.ts +16 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/merge-cell-xform.d.ts +9 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/outline-properties-xform.d.ts +13 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/page-breaks-xform.d.ts +14 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/page-margins-xform.d.ts +17 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/page-setup-properties-xform.d.ts +12 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/page-setup-xform.d.ts +27 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/picture-xform.d.ts +12 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/print-options-xform.d.ts +15 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/row-breaks-xform.d.ts +10 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/row-xform.d.ts +37 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/sheet-format-properties-xform.d.ts +16 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/sheet-properties-xform.d.ts +19 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/sheet-protection-xform.d.ts +31 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/sheet-view-xform.d.ts +32 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/table-part-xform.d.ts +12 -0
- package/dist/types/modules/excel/xlsx/xform/sheet/worksheet-xform.d.ts +21 -0
- package/dist/types/modules/excel/xlsx/xform/simple/boolean-xform.d.ts +15 -0
- package/dist/types/modules/excel/xlsx/xform/simple/date-xform.d.ts +22 -0
- package/dist/types/modules/excel/xlsx/xform/simple/float-xform.d.ts +18 -0
- package/dist/types/modules/excel/xlsx/xform/simple/integer-xform.d.ts +20 -0
- package/dist/types/modules/excel/xlsx/xform/simple/string-xform.d.ts +18 -0
- package/dist/types/modules/excel/xlsx/xform/static-xform.d.ts +17 -0
- package/dist/types/modules/excel/xlsx/xform/strings/phonetic-text-xform.d.ts +20 -0
- package/dist/types/modules/excel/xlsx/xform/strings/rich-text-xform.d.ts +25 -0
- package/dist/types/modules/excel/xlsx/xform/strings/shared-string-xform.d.ts +17 -0
- package/dist/types/modules/excel/xlsx/xform/strings/shared-strings-xform.d.ts +27 -0
- package/dist/types/modules/excel/xlsx/xform/strings/text-xform.d.ts +10 -0
- package/dist/types/modules/excel/xlsx/xform/style/alignment-xform.d.ts +18 -0
- package/dist/types/modules/excel/xlsx/xform/style/border-xform.d.ts +49 -0
- package/dist/types/modules/excel/xlsx/xform/style/color-xform.d.ts +17 -0
- package/dist/types/modules/excel/xlsx/xform/style/dxf-xform.d.ts +23 -0
- package/dist/types/modules/excel/xlsx/xform/style/fill-xform.d.ts +85 -0
- package/dist/types/modules/excel/xlsx/xform/style/font-xform.d.ts +35 -0
- package/dist/types/modules/excel/xlsx/xform/style/numfmt-xform.d.ts +18 -0
- package/dist/types/modules/excel/xlsx/xform/style/protection-xform.d.ts +13 -0
- package/dist/types/modules/excel/xlsx/xform/style/style-xform.d.ts +30 -0
- package/dist/types/modules/excel/xlsx/xform/style/styles-xform.d.ts +46 -0
- package/dist/types/modules/excel/xlsx/xform/style/underline-xform.d.ts +14 -0
- package/dist/types/modules/excel/xlsx/xform/table/auto-filter-xform.d.ts +21 -0
- package/dist/types/modules/excel/xlsx/xform/table/custom-filter-xform.d.ts +15 -0
- package/dist/types/modules/excel/xlsx/xform/table/filter-column-xform.d.ts +24 -0
- package/dist/types/modules/excel/xlsx/xform/table/filter-xform.d.ts +14 -0
- package/dist/types/modules/excel/xlsx/xform/table/table-column-xform.d.ts +21 -0
- package/dist/types/modules/excel/xlsx/xform/table/table-style-info-xform.d.ts +18 -0
- package/dist/types/modules/excel/xlsx/xform/table/table-xform.d.ts +33 -0
- package/dist/types/modules/excel/xlsx/xlsx.browser.d.ts +208 -0
- package/dist/types/modules/excel/xlsx/xlsx.d.ts +24 -0
- package/dist/types/modules/stream/base-transform.d.ts +68 -0
- package/dist/types/modules/stream/buffered-stream.d.ts +94 -0
- package/dist/types/modules/stream/chunked-builder.d.ts +97 -0
- package/dist/types/modules/stream/event-emitter.d.ts +30 -0
- package/dist/types/modules/stream/index.browser.d.ts +22 -0
- package/dist/types/modules/stream/index.d.ts +49 -0
- package/dist/types/modules/stream/pull-stream.d.ts +67 -0
- package/dist/types/modules/stream/shared.d.ts +54 -0
- package/dist/types/modules/stream/streams.browser.d.ts +936 -0
- package/dist/types/modules/stream/streams.d.ts +282 -0
- package/dist/types/modules/stream/types.d.ts +238 -0
- package/dist/types/modules/stream/utils.d.ts +24 -0
- package/dist/types/utils/browser.d.ts +9 -0
- package/dist/types/utils/env.d.ts +14 -0
- package/dist/types/utils/utils.base.d.ts +21 -1
- package/dist/types/utils/utils.browser.d.ts +1 -24
- package/dist/types/utils/utils.d.ts +1 -24
- package/dist/types/utils/uuid.d.ts +11 -0
- package/package.json +16 -22
- package/dist/cjs/csv/csv-core.js +0 -701
- package/dist/cjs/csv/csv-stream.js +0 -646
- package/dist/cjs/csv/csv.base.js +0 -137
- package/dist/cjs/csv/csv.browser.js +0 -68
- package/dist/cjs/csv/csv.js +0 -249
- package/dist/cjs/doc/anchor.js +0 -100
- package/dist/cjs/doc/cell.js +0 -949
- package/dist/cjs/doc/column.js +0 -354
- package/dist/cjs/doc/data-validations.js +0 -46
- package/dist/cjs/doc/defined-names.js +0 -217
- package/dist/cjs/doc/image.js +0 -63
- package/dist/cjs/doc/modelcontainer.js +0 -16
- package/dist/cjs/doc/note.js +0 -64
- package/dist/cjs/doc/pivot-table.js +0 -239
- package/dist/cjs/doc/range.js +0 -283
- package/dist/cjs/doc/row.js +0 -421
- package/dist/cjs/doc/table.js +0 -408
- package/dist/cjs/doc/workbook.base.js +0 -211
- package/dist/cjs/doc/workbook.browser.js +0 -62
- package/dist/cjs/doc/workbook.js +0 -96
- package/dist/cjs/doc/worksheet.js +0 -931
- package/dist/cjs/local.js +0 -1
- package/dist/cjs/stream/xlsx/hyperlink-reader.js +0 -82
- package/dist/cjs/stream/xlsx/sheet-comments-writer.js +0 -103
- package/dist/cjs/stream/xlsx/sheet-rels-writer.js +0 -93
- package/dist/cjs/stream/xlsx/workbook-reader.js +0 -359
- package/dist/cjs/stream/xlsx/workbook-writer.js +0 -387
- package/dist/cjs/stream/xlsx/worksheet-reader.js +0 -351
- package/dist/cjs/stream/xlsx/worksheet-writer.js +0 -605
- package/dist/cjs/utils/browser-buffer.js +0 -75
- package/dist/cjs/utils/cell-format.js +0 -819
- package/dist/cjs/utils/cell-matrix.js +0 -183
- package/dist/cjs/utils/encryptor.browser.js +0 -240
- package/dist/cjs/utils/encryptor.js +0 -55
- package/dist/cjs/utils/parse-sax.js +0 -1209
- package/dist/cjs/utils/shared-formula.js +0 -38
- package/dist/cjs/utils/sheet-utils.js +0 -727
- package/dist/cjs/utils/stream-buf.browser.js +0 -355
- package/dist/cjs/utils/stream-buf.js +0 -347
- package/dist/cjs/utils/string-buf.js +0 -68
- package/dist/cjs/utils/under-dash.js +0 -180
- package/dist/cjs/utils/unzip/buffer-stream.js +0 -27
- package/dist/cjs/utils/unzip/extract.js +0 -114
- package/dist/cjs/utils/unzip/index.js +0 -45
- package/dist/cjs/utils/unzip/noop-stream.js +0 -20
- package/dist/cjs/utils/unzip/parse-buffer.js +0 -60
- package/dist/cjs/utils/unzip/parse-datetime.js +0 -23
- package/dist/cjs/utils/unzip/parse-extra-field.js +0 -52
- package/dist/cjs/utils/unzip/parse.js +0 -340
- package/dist/cjs/utils/unzip/pull-stream.js +0 -145
- package/dist/cjs/utils/unzip/zip-parser.js +0 -466
- package/dist/cjs/utils/xml-stream.js +0 -171
- package/dist/cjs/utils/zip/compress.base.js +0 -88
- package/dist/cjs/utils/zip/compress.browser.js +0 -127
- package/dist/cjs/utils/zip/compress.js +0 -81
- package/dist/cjs/utils/zip/crc32.browser.js +0 -88
- package/dist/cjs/utils/zip/crc32.js +0 -154
- package/dist/cjs/utils/zip/deflate-fallback.js +0 -575
- package/dist/cjs/utils/zip/index.js +0 -70
- package/dist/cjs/utils/zip/streaming-zip.js +0 -264
- package/dist/cjs/utils/zip/zip-builder.js +0 -378
- package/dist/cjs/utils/zip-stream.browser.js +0 -135
- package/dist/cjs/utils/zip-stream.js +0 -114
- package/dist/cjs/xlsx/xform/base-xform.js +0 -126
- package/dist/cjs/xlsx/xform/book/defined-name-xform.js +0 -127
- package/dist/cjs/xlsx/xform/book/sheet-xform.js +0 -33
- package/dist/cjs/xlsx/xform/book/workbook-calc-properties-xform.js +0 -24
- package/dist/cjs/xlsx/xform/book/workbook-pivot-cache-xform.js +0 -27
- package/dist/cjs/xlsx/xform/book/workbook-properties-xform.js +0 -27
- package/dist/cjs/xlsx/xform/book/workbook-view-xform.js +0 -49
- package/dist/cjs/xlsx/xform/book/workbook-xform.js +0 -237
- package/dist/cjs/xlsx/xform/comment/comment-xform.js +0 -79
- package/dist/cjs/xlsx/xform/comment/comments-xform.js +0 -75
- package/dist/cjs/xlsx/xform/comment/style/vml-position-xform.js +0 -37
- package/dist/cjs/xlsx/xform/comment/style/vml-protection-xform.js +0 -33
- package/dist/cjs/xlsx/xform/comment/vml-anchor-xform.js +0 -58
- package/dist/cjs/xlsx/xform/comment/vml-client-data-xform.js +0 -85
- package/dist/cjs/xlsx/xform/comment/vml-notes-xform.js +0 -99
- package/dist/cjs/xlsx/xform/comment/vml-shape-xform.js +0 -86
- package/dist/cjs/xlsx/xform/comment/vml-textbox-xform.js +0 -63
- package/dist/cjs/xlsx/xform/composite-xform.js +0 -51
- package/dist/cjs/xlsx/xform/core/app-heading-pairs-xform.js +0 -27
- package/dist/cjs/xlsx/xform/core/app-titles-of-parts-xform.js +0 -24
- package/dist/cjs/xlsx/xform/core/app-xform.js +0 -86
- package/dist/cjs/xlsx/xform/core/content-types-xform.js +0 -131
- package/dist/cjs/xlsx/xform/core/core-xform.js +0 -127
- package/dist/cjs/xlsx/xform/core/relationship-xform.js +0 -23
- package/dist/cjs/xlsx/xform/core/relationships-xform.js +0 -65
- package/dist/cjs/xlsx/xform/drawing/base-cell-anchor-xform.js +0 -47
- package/dist/cjs/xlsx/xform/drawing/blip-fill-xform.js +0 -60
- package/dist/cjs/xlsx/xform/drawing/blip-xform.js +0 -43
- package/dist/cjs/xlsx/xform/drawing/c-nv-pic-pr-xform.js +0 -35
- package/dist/cjs/xlsx/xform/drawing/c-nv-pr-xform.js +0 -62
- package/dist/cjs/xlsx/xform/drawing/cell-position-xform.js +0 -71
- package/dist/cjs/xlsx/xform/drawing/drawing-xform.js +0 -99
- package/dist/cjs/xlsx/xform/drawing/ext-lst-xform.js +0 -40
- package/dist/cjs/xlsx/xform/drawing/ext-xform.js +0 -37
- package/dist/cjs/xlsx/xform/drawing/hlink-click-xform.js +0 -42
- package/dist/cjs/xlsx/xform/drawing/nv-pic-pr-xform.js +0 -59
- package/dist/cjs/xlsx/xform/drawing/one-cell-anchor-xform.js +0 -55
- package/dist/cjs/xlsx/xform/drawing/pic-xform.js +0 -67
- package/dist/cjs/xlsx/xform/drawing/two-cell-anchor-xform.js +0 -54
- package/dist/cjs/xlsx/xform/list-xform.js +0 -92
- package/dist/cjs/xlsx/xform/pivot-table/cache-field-xform.js +0 -131
- package/dist/cjs/xlsx/xform/pivot-table/cache-field.js +0 -81
- package/dist/cjs/xlsx/xform/pivot-table/pivot-cache-definition-xform.js +0 -182
- package/dist/cjs/xlsx/xform/pivot-table/pivot-cache-records-xform.js +0 -237
- package/dist/cjs/xlsx/xform/pivot-table/pivot-table-xform.js +0 -627
- package/dist/cjs/xlsx/xform/sheet/auto-filter-xform.js +0 -37
- package/dist/cjs/xlsx/xform/sheet/cell-xform.js +0 -463
- package/dist/cjs/xlsx/xform/sheet/cf/cf-rule-xform.js +0 -262
- package/dist/cjs/xlsx/xform/sheet/cf/cfvo-xform.js +0 -25
- package/dist/cjs/xlsx/xform/sheet/cf/color-scale-xform.js +0 -38
- package/dist/cjs/xlsx/xform/sheet/cf/conditional-formatting-xform.js +0 -40
- package/dist/cjs/xlsx/xform/sheet/cf/conditional-formattings-xform.js +0 -77
- package/dist/cjs/xlsx/xform/sheet/cf/databar-xform.js +0 -42
- package/dist/cjs/xlsx/xform/sheet/cf/ext-lst-ref-xform.js +0 -70
- package/dist/cjs/xlsx/xform/sheet/cf/formula-xform.js +0 -22
- package/dist/cjs/xlsx/xform/sheet/cf/icon-set-xform.js +0 -40
- package/dist/cjs/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.js +0 -25
- package/dist/cjs/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js +0 -82
- package/dist/cjs/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.js +0 -38
- package/dist/cjs/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.js +0 -51
- package/dist/cjs/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.js +0 -43
- package/dist/cjs/xlsx/xform/sheet/cf-ext/databar-ext-xform.js +0 -72
- package/dist/cjs/xlsx/xform/sheet/cf-ext/f-ext-xform.js +0 -22
- package/dist/cjs/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.js +0 -63
- package/dist/cjs/xlsx/xform/sheet/cf-ext/sqref-ext-xform.js +0 -22
- package/dist/cjs/xlsx/xform/sheet/col-breaks-xform.js +0 -38
- package/dist/cjs/xlsx/xform/sheet/col-xform.js +0 -78
- package/dist/cjs/xlsx/xform/sheet/data-validations-xform.js +0 -285
- package/dist/cjs/xlsx/xform/sheet/dimension-xform.js +0 -26
- package/dist/cjs/xlsx/xform/sheet/drawing-xform.js +0 -30
- package/dist/cjs/xlsx/xform/sheet/ext-lst-xform.js +0 -69
- package/dist/cjs/xlsx/xform/sheet/header-footer-xform.js +0 -127
- package/dist/cjs/xlsx/xform/sheet/hyperlink-xform.js +0 -50
- package/dist/cjs/xlsx/xform/sheet/merge-cell-xform.js +0 -24
- package/dist/cjs/xlsx/xform/sheet/merges.js +0 -53
- package/dist/cjs/xlsx/xform/sheet/outline-properties-xform.js +0 -39
- package/dist/cjs/xlsx/xform/sheet/page-breaks-xform.js +0 -36
- package/dist/cjs/xlsx/xform/sheet/page-margins-xform.js +0 -45
- package/dist/cjs/xlsx/xform/sheet/page-setup-properties-xform.js +0 -32
- package/dist/cjs/xlsx/xform/sheet/page-setup-xform.js +0 -99
- package/dist/cjs/xlsx/xform/sheet/picture-xform.js +0 -30
- package/dist/cjs/xlsx/xform/sheet/print-options-xform.js +0 -44
- package/dist/cjs/xlsx/xform/sheet/row-breaks-xform.js +0 -32
- package/dist/cjs/xlsx/xform/sheet/row-xform.js +0 -155
- package/dist/cjs/xlsx/xform/sheet/sheet-format-properties-xform.js +0 -52
- package/dist/cjs/xlsx/xform/sheet/sheet-properties-xform.js +0 -85
- package/dist/cjs/xlsx/xform/sheet/sheet-protection-xform.js +0 -83
- package/dist/cjs/xlsx/xform/sheet/sheet-view-xform.js +0 -196
- package/dist/cjs/xlsx/xform/sheet/table-part-xform.js +0 -30
- package/dist/cjs/xlsx/xform/sheet/worksheet-xform.js +0 -520
- package/dist/cjs/xlsx/xform/simple/boolean-xform.js +0 -27
- package/dist/cjs/xlsx/xform/simple/date-xform.js +0 -68
- package/dist/cjs/xlsx/xform/simple/float-xform.js +0 -50
- package/dist/cjs/xlsx/xform/simple/integer-xform.js +0 -55
- package/dist/cjs/xlsx/xform/simple/string-xform.js +0 -50
- package/dist/cjs/xlsx/xform/static-xform.js +0 -58
- package/dist/cjs/xlsx/xform/strings/phonetic-text-xform.js +0 -89
- package/dist/cjs/xlsx/xform/strings/rich-text-xform.js +0 -80
- package/dist/cjs/xlsx/xform/strings/shared-string-xform.js +0 -93
- package/dist/cjs/xlsx/xform/strings/shared-strings-xform.js +0 -112
- package/dist/cjs/xlsx/xform/strings/text-xform.js +0 -39
- package/dist/cjs/xlsx/xform/style/alignment-xform.js +0 -155
- package/dist/cjs/xlsx/xform/style/border-xform.js +0 -191
- package/dist/cjs/xlsx/xform/style/color-xform.js +0 -64
- package/dist/cjs/xlsx/xform/style/dxf-xform.js +0 -95
- package/dist/cjs/xlsx/xform/style/fill-xform.js +0 -315
- package/dist/cjs/xlsx/xform/style/font-xform.js +0 -103
- package/dist/cjs/xlsx/xform/style/numfmt-xform.js +0 -53
- package/dist/cjs/xlsx/xform/style/protection-xform.js +0 -52
- package/dist/cjs/xlsx/xform/style/style-xform.js +0 -111
- package/dist/cjs/xlsx/xform/style/styles-xform.js +0 -487
- package/dist/cjs/xlsx/xform/style/underline-xform.js +0 -41
- package/dist/cjs/xlsx/xform/table/auto-filter-xform.js +0 -73
- package/dist/cjs/xlsx/xform/table/custom-filter-xform.js +0 -34
- package/dist/cjs/xlsx/xform/table/filter-column-xform.js +0 -91
- package/dist/cjs/xlsx/xform/table/filter-xform.js +0 -32
- package/dist/cjs/xlsx/xform/table/table-column-xform.js +0 -44
- package/dist/cjs/xlsx/xform/table/table-style-info-xform.js +0 -47
- package/dist/cjs/xlsx/xform/table/table-xform.js +0 -129
- package/dist/cjs/xlsx/xlsx.base.js +0 -742
- package/dist/cjs/xlsx/xlsx.browser.js +0 -162
- package/dist/cjs/xlsx/xlsx.js +0 -220
- package/dist/esm/csv/csv-core.js +0 -694
- package/dist/esm/csv/csv-stream.js +0 -638
- package/dist/esm/csv/csv.base.js +0 -127
- package/dist/esm/csv/csv.browser.js +0 -65
- package/dist/esm/csv/csv.js +0 -209
- package/dist/esm/doc/anchor.js +0 -97
- package/dist/esm/doc/cell.js +0 -946
- package/dist/esm/doc/column.js +0 -351
- package/dist/esm/doc/data-validations.js +0 -43
- package/dist/esm/doc/defined-names.js +0 -214
- package/dist/esm/doc/image.js +0 -60
- package/dist/esm/doc/modelcontainer.js +0 -13
- package/dist/esm/doc/note.js +0 -61
- package/dist/esm/doc/pivot-table.js +0 -237
- package/dist/esm/doc/range.js +0 -280
- package/dist/esm/doc/row.js +0 -418
- package/dist/esm/doc/table.js +0 -405
- package/dist/esm/doc/workbook.base.js +0 -207
- package/dist/esm/doc/workbook.browser.js +0 -59
- package/dist/esm/doc/workbook.js +0 -93
- package/dist/esm/doc/worksheet.js +0 -928
- package/dist/esm/local.js +0 -1
- package/dist/esm/stream/xlsx/hyperlink-reader.js +0 -79
- package/dist/esm/stream/xlsx/sheet-comments-writer.js +0 -100
- package/dist/esm/stream/xlsx/sheet-rels-writer.js +0 -90
- package/dist/esm/stream/xlsx/workbook-reader.js +0 -352
- package/dist/esm/stream/xlsx/workbook-writer.js +0 -381
- package/dist/esm/stream/xlsx/worksheet-reader.js +0 -348
- package/dist/esm/stream/xlsx/worksheet-writer.js +0 -602
- package/dist/esm/utils/browser-buffer.js +0 -67
- package/dist/esm/utils/cell-format.js +0 -814
- package/dist/esm/utils/cell-matrix.js +0 -180
- package/dist/esm/utils/encryptor.browser.js +0 -237
- package/dist/esm/utils/encryptor.js +0 -49
- package/dist/esm/utils/parse-sax.js +0 -1205
- package/dist/esm/utils/shared-formula.js +0 -36
- package/dist/esm/utils/sheet-utils.js +0 -707
- package/dist/esm/utils/stream-buf.browser.js +0 -352
- package/dist/esm/utils/stream-buf.js +0 -344
- package/dist/esm/utils/string-buf.js +0 -65
- package/dist/esm/utils/under-dash.js +0 -171
- package/dist/esm/utils/unzip/buffer-stream.js +0 -24
- package/dist/esm/utils/unzip/extract.js +0 -106
- package/dist/esm/utils/unzip/index.js +0 -29
- package/dist/esm/utils/unzip/noop-stream.js +0 -16
- package/dist/esm/utils/unzip/parse-buffer.js +0 -57
- package/dist/esm/utils/unzip/parse-datetime.js +0 -20
- package/dist/esm/utils/unzip/parse-extra-field.js +0 -49
- package/dist/esm/utils/unzip/parse.js +0 -332
- package/dist/esm/utils/unzip/pull-stream.js +0 -141
- package/dist/esm/utils/unzip/zip-parser.js +0 -459
- package/dist/esm/utils/xml-stream.js +0 -168
- package/dist/esm/utils/zip/compress.base.js +0 -83
- package/dist/esm/utils/zip/compress.browser.js +0 -121
- package/dist/esm/utils/zip/compress.js +0 -72
- package/dist/esm/utils/zip/crc32.browser.js +0 -82
- package/dist/esm/utils/zip/crc32.js +0 -116
- package/dist/esm/utils/zip/deflate-fallback.js +0 -570
- package/dist/esm/utils/zip/index.js +0 -55
- package/dist/esm/utils/zip/streaming-zip.js +0 -259
- package/dist/esm/utils/zip/zip-builder.js +0 -372
- package/dist/esm/utils/zip-stream.browser.js +0 -132
- package/dist/esm/utils/zip-stream.js +0 -109
- package/dist/esm/xlsx/xform/base-xform.js +0 -123
- package/dist/esm/xlsx/xform/book/defined-name-xform.js +0 -124
- package/dist/esm/xlsx/xform/book/sheet-xform.js +0 -30
- package/dist/esm/xlsx/xform/book/workbook-calc-properties-xform.js +0 -21
- package/dist/esm/xlsx/xform/book/workbook-pivot-cache-xform.js +0 -24
- package/dist/esm/xlsx/xform/book/workbook-properties-xform.js +0 -24
- package/dist/esm/xlsx/xform/book/workbook-view-xform.js +0 -46
- package/dist/esm/xlsx/xform/book/workbook-xform.js +0 -234
- package/dist/esm/xlsx/xform/comment/comment-xform.js +0 -76
- package/dist/esm/xlsx/xform/comment/comments-xform.js +0 -72
- package/dist/esm/xlsx/xform/comment/style/vml-position-xform.js +0 -34
- package/dist/esm/xlsx/xform/comment/style/vml-protection-xform.js +0 -30
- package/dist/esm/xlsx/xform/comment/vml-anchor-xform.js +0 -55
- package/dist/esm/xlsx/xform/comment/vml-client-data-xform.js +0 -82
- package/dist/esm/xlsx/xform/comment/vml-notes-xform.js +0 -96
- package/dist/esm/xlsx/xform/comment/vml-shape-xform.js +0 -83
- package/dist/esm/xlsx/xform/comment/vml-textbox-xform.js +0 -60
- package/dist/esm/xlsx/xform/composite-xform.js +0 -48
- package/dist/esm/xlsx/xform/core/app-heading-pairs-xform.js +0 -24
- package/dist/esm/xlsx/xform/core/app-titles-of-parts-xform.js +0 -21
- package/dist/esm/xlsx/xform/core/app-xform.js +0 -83
- package/dist/esm/xlsx/xform/core/content-types-xform.js +0 -128
- package/dist/esm/xlsx/xform/core/core-xform.js +0 -124
- package/dist/esm/xlsx/xform/core/relationship-xform.js +0 -20
- package/dist/esm/xlsx/xform/core/relationships-xform.js +0 -62
- package/dist/esm/xlsx/xform/drawing/base-cell-anchor-xform.js +0 -44
- package/dist/esm/xlsx/xform/drawing/blip-fill-xform.js +0 -57
- package/dist/esm/xlsx/xform/drawing/blip-xform.js +0 -40
- package/dist/esm/xlsx/xform/drawing/c-nv-pic-pr-xform.js +0 -32
- package/dist/esm/xlsx/xform/drawing/c-nv-pr-xform.js +0 -59
- package/dist/esm/xlsx/xform/drawing/cell-position-xform.js +0 -68
- package/dist/esm/xlsx/xform/drawing/drawing-xform.js +0 -96
- package/dist/esm/xlsx/xform/drawing/ext-lst-xform.js +0 -37
- package/dist/esm/xlsx/xform/drawing/ext-xform.js +0 -34
- package/dist/esm/xlsx/xform/drawing/hlink-click-xform.js +0 -39
- package/dist/esm/xlsx/xform/drawing/nv-pic-pr-xform.js +0 -56
- package/dist/esm/xlsx/xform/drawing/one-cell-anchor-xform.js +0 -52
- package/dist/esm/xlsx/xform/drawing/pic-xform.js +0 -64
- package/dist/esm/xlsx/xform/drawing/two-cell-anchor-xform.js +0 -51
- package/dist/esm/xlsx/xform/list-xform.js +0 -89
- package/dist/esm/xlsx/xform/pivot-table/cache-field-xform.js +0 -128
- package/dist/esm/xlsx/xform/pivot-table/cache-field.js +0 -78
- package/dist/esm/xlsx/xform/pivot-table/pivot-cache-definition-xform.js +0 -179
- package/dist/esm/xlsx/xform/pivot-table/pivot-cache-records-xform.js +0 -234
- package/dist/esm/xlsx/xform/pivot-table/pivot-table-xform.js +0 -624
- package/dist/esm/xlsx/xform/sheet/auto-filter-xform.js +0 -34
- package/dist/esm/xlsx/xform/sheet/cell-xform.js +0 -460
- package/dist/esm/xlsx/xform/sheet/cf/cf-rule-xform.js +0 -259
- package/dist/esm/xlsx/xform/sheet/cf/cfvo-xform.js +0 -22
- package/dist/esm/xlsx/xform/sheet/cf/color-scale-xform.js +0 -35
- package/dist/esm/xlsx/xform/sheet/cf/conditional-formatting-xform.js +0 -37
- package/dist/esm/xlsx/xform/sheet/cf/conditional-formattings-xform.js +0 -74
- package/dist/esm/xlsx/xform/sheet/cf/databar-xform.js +0 -39
- package/dist/esm/xlsx/xform/sheet/cf/ext-lst-ref-xform.js +0 -67
- package/dist/esm/xlsx/xform/sheet/cf/formula-xform.js +0 -19
- package/dist/esm/xlsx/xform/sheet/cf/icon-set-xform.js +0 -37
- package/dist/esm/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.js +0 -22
- package/dist/esm/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js +0 -79
- package/dist/esm/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.js +0 -35
- package/dist/esm/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.js +0 -48
- package/dist/esm/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.js +0 -40
- package/dist/esm/xlsx/xform/sheet/cf-ext/databar-ext-xform.js +0 -69
- package/dist/esm/xlsx/xform/sheet/cf-ext/f-ext-xform.js +0 -19
- package/dist/esm/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.js +0 -60
- package/dist/esm/xlsx/xform/sheet/cf-ext/sqref-ext-xform.js +0 -19
- package/dist/esm/xlsx/xform/sheet/col-breaks-xform.js +0 -35
- package/dist/esm/xlsx/xform/sheet/col-xform.js +0 -75
- package/dist/esm/xlsx/xform/sheet/data-validations-xform.js +0 -282
- package/dist/esm/xlsx/xform/sheet/dimension-xform.js +0 -23
- package/dist/esm/xlsx/xform/sheet/drawing-xform.js +0 -27
- package/dist/esm/xlsx/xform/sheet/ext-lst-xform.js +0 -66
- package/dist/esm/xlsx/xform/sheet/header-footer-xform.js +0 -124
- package/dist/esm/xlsx/xform/sheet/hyperlink-xform.js +0 -47
- package/dist/esm/xlsx/xform/sheet/merge-cell-xform.js +0 -21
- package/dist/esm/xlsx/xform/sheet/merges.js +0 -50
- package/dist/esm/xlsx/xform/sheet/outline-properties-xform.js +0 -36
- package/dist/esm/xlsx/xform/sheet/page-breaks-xform.js +0 -33
- package/dist/esm/xlsx/xform/sheet/page-margins-xform.js +0 -42
- package/dist/esm/xlsx/xform/sheet/page-setup-properties-xform.js +0 -29
- package/dist/esm/xlsx/xform/sheet/page-setup-xform.js +0 -96
- package/dist/esm/xlsx/xform/sheet/picture-xform.js +0 -27
- package/dist/esm/xlsx/xform/sheet/print-options-xform.js +0 -41
- package/dist/esm/xlsx/xform/sheet/row-breaks-xform.js +0 -29
- package/dist/esm/xlsx/xform/sheet/row-xform.js +0 -152
- package/dist/esm/xlsx/xform/sheet/sheet-format-properties-xform.js +0 -49
- package/dist/esm/xlsx/xform/sheet/sheet-properties-xform.js +0 -82
- package/dist/esm/xlsx/xform/sheet/sheet-protection-xform.js +0 -80
- package/dist/esm/xlsx/xform/sheet/sheet-view-xform.js +0 -193
- package/dist/esm/xlsx/xform/sheet/table-part-xform.js +0 -27
- package/dist/esm/xlsx/xform/sheet/worksheet-xform.js +0 -517
- package/dist/esm/xlsx/xform/simple/boolean-xform.js +0 -24
- package/dist/esm/xlsx/xform/simple/date-xform.js +0 -65
- package/dist/esm/xlsx/xform/simple/float-xform.js +0 -47
- package/dist/esm/xlsx/xform/simple/integer-xform.js +0 -52
- package/dist/esm/xlsx/xform/simple/string-xform.js +0 -47
- package/dist/esm/xlsx/xform/static-xform.js +0 -55
- package/dist/esm/xlsx/xform/strings/phonetic-text-xform.js +0 -86
- package/dist/esm/xlsx/xform/strings/rich-text-xform.js +0 -77
- package/dist/esm/xlsx/xform/strings/shared-string-xform.js +0 -90
- package/dist/esm/xlsx/xform/strings/shared-strings-xform.js +0 -109
- package/dist/esm/xlsx/xform/strings/text-xform.js +0 -36
- package/dist/esm/xlsx/xform/style/alignment-xform.js +0 -152
- package/dist/esm/xlsx/xform/style/border-xform.js +0 -188
- package/dist/esm/xlsx/xform/style/color-xform.js +0 -61
- package/dist/esm/xlsx/xform/style/dxf-xform.js +0 -92
- package/dist/esm/xlsx/xform/style/fill-xform.js +0 -312
- package/dist/esm/xlsx/xform/style/font-xform.js +0 -100
- package/dist/esm/xlsx/xform/style/numfmt-xform.js +0 -50
- package/dist/esm/xlsx/xform/style/protection-xform.js +0 -49
- package/dist/esm/xlsx/xform/style/style-xform.js +0 -108
- package/dist/esm/xlsx/xform/style/styles-xform.js +0 -484
- package/dist/esm/xlsx/xform/style/underline-xform.js +0 -38
- package/dist/esm/xlsx/xform/table/auto-filter-xform.js +0 -70
- package/dist/esm/xlsx/xform/table/custom-filter-xform.js +0 -31
- package/dist/esm/xlsx/xform/table/filter-column-xform.js +0 -88
- package/dist/esm/xlsx/xform/table/filter-xform.js +0 -29
- package/dist/esm/xlsx/xform/table/table-column-xform.js +0 -41
- package/dist/esm/xlsx/xform/table/table-style-info-xform.js +0 -44
- package/dist/esm/xlsx/xform/table/table-xform.js +0 -126
- package/dist/esm/xlsx/xlsx.base.js +0 -739
- package/dist/esm/xlsx/xlsx.browser.js +0 -159
- package/dist/esm/xlsx/xlsx.js +0 -214
- package/dist/types/csv/csv-core.d.ts +0 -201
- package/dist/types/csv/csv-stream.d.ts +0 -114
- package/dist/types/csv/csv.base.d.ts +0 -62
- package/dist/types/csv/csv.browser.d.ts +0 -33
- package/dist/types/csv/csv.d.ts +0 -105
- package/dist/types/doc/anchor.d.ts +0 -33
- package/dist/types/doc/cell.d.ts +0 -139
- package/dist/types/doc/column.d.ts +0 -121
- package/dist/types/doc/defined-names.d.ts +0 -37
- package/dist/types/doc/image.d.ts +0 -64
- package/dist/types/doc/modelcontainer.d.ts +0 -8
- package/dist/types/doc/pivot-table.d.ts +0 -152
- package/dist/types/doc/range.d.ts +0 -62
- package/dist/types/doc/row.d.ts +0 -114
- package/dist/types/doc/table.d.ts +0 -81
- package/dist/types/doc/workbook.base.d.ts +0 -111
- package/dist/types/doc/workbook.browser.d.ts +0 -38
- package/dist/types/doc/workbook.d.ts +0 -79
- package/dist/types/doc/worksheet.d.ts +0 -333
- package/dist/types/local.d.ts +0 -0
- package/dist/types/stream/xlsx/hyperlink-reader.d.ts +0 -27
- package/dist/types/stream/xlsx/workbook-reader.d.ts +0 -139
- package/dist/types/stream/xlsx/workbook-writer.d.ts +0 -139
- package/dist/types/stream/xlsx/worksheet-reader.d.ts +0 -55
- package/dist/types/stream/xlsx/worksheet-writer.d.ts +0 -139
- package/dist/types/utils/browser-buffer.d.ts +0 -28
- package/dist/types/utils/col-cache.d.ts +0 -36
- package/dist/types/utils/encryptor.browser.d.ts +0 -28
- package/dist/types/utils/encryptor.d.ts +0 -23
- package/dist/types/utils/iterate-stream.d.ts +0 -10
- package/dist/types/utils/sheet-utils.d.ts +0 -209
- package/dist/types/utils/stream-buf.browser.d.ts +0 -41
- package/dist/types/utils/stream-buf.d.ts +0 -2
- package/dist/types/utils/string-buf.d.ts +0 -20
- package/dist/types/utils/unzip/buffer-stream.d.ts +0 -9
- package/dist/types/utils/unzip/extract.d.ts +0 -94
- package/dist/types/utils/unzip/index.d.ts +0 -27
- package/dist/types/utils/unzip/noop-stream.d.ts +0 -13
- package/dist/types/utils/unzip/parse-buffer.d.ts +0 -24
- package/dist/types/utils/unzip/parse-datetime.d.ts +0 -12
- package/dist/types/utils/unzip/parse-extra-field.d.ts +0 -18
- package/dist/types/utils/unzip/parse.d.ts +0 -70
- package/dist/types/utils/unzip/pull-stream.d.ts +0 -24
- package/dist/types/utils/unzip/zip-parser.d.ts +0 -97
- package/dist/types/utils/zip/compress.base.d.ts +0 -45
- package/dist/types/utils/zip/compress.browser.d.ts +0 -63
- package/dist/types/utils/zip/compress.d.ts +0 -51
- package/dist/types/utils/zip/crc32.browser.d.ts +0 -52
- package/dist/types/utils/zip/crc32.d.ts +0 -55
- package/dist/types/utils/zip/index.d.ts +0 -52
- package/dist/types/utils/zip/streaming-zip.d.ts +0 -96
- package/dist/types/utils/zip/zip-builder.d.ts +0 -110
- package/dist/types/utils/zip-stream.browser.d.ts +0 -39
- package/dist/types/utils/zip-stream.d.ts +0 -33
- package/dist/types/xlsx/xform/base-xform.d.ts +0 -33
- package/dist/types/xlsx/xform/book/defined-name-xform.d.ts +0 -17
- package/dist/types/xlsx/xform/book/sheet-xform.d.ts +0 -14
- package/dist/types/xlsx/xform/book/workbook-calc-properties-xform.d.ts +0 -11
- package/dist/types/xlsx/xform/book/workbook-pivot-cache-xform.d.ts +0 -12
- package/dist/types/xlsx/xform/book/workbook-properties-xform.d.ts +0 -11
- package/dist/types/xlsx/xform/book/workbook-view-xform.d.ts +0 -17
- package/dist/types/xlsx/xform/book/workbook-xform.d.ts +0 -23
- package/dist/types/xlsx/xform/comment/comment-xform.d.ts +0 -28
- package/dist/types/xlsx/xform/comment/comments-xform.d.ts +0 -21
- package/dist/types/xlsx/xform/comment/style/vml-position-xform.d.ts +0 -16
- package/dist/types/xlsx/xform/comment/style/vml-protection-xform.d.ts +0 -14
- package/dist/types/xlsx/xform/comment/vml-anchor-xform.d.ts +0 -27
- package/dist/types/xlsx/xform/comment/vml-client-data-xform.d.ts +0 -35
- package/dist/types/xlsx/xform/comment/vml-notes-xform.d.ts +0 -24
- package/dist/types/xlsx/xform/comment/vml-shape-xform.d.ts +0 -25
- package/dist/types/xlsx/xform/comment/vml-textbox-xform.d.ts +0 -23
- package/dist/types/xlsx/xform/composite-xform.d.ts +0 -11
- package/dist/types/xlsx/xform/core/app-heading-pairs-xform.d.ts +0 -8
- package/dist/types/xlsx/xform/core/app-titles-of-parts-xform.d.ts +0 -8
- package/dist/types/xlsx/xform/core/app-xform.d.ts +0 -26
- package/dist/types/xlsx/xform/core/content-types-xform.d.ts +0 -11
- package/dist/types/xlsx/xform/core/core-xform.d.ts +0 -42
- package/dist/types/xlsx/xform/core/relationship-xform.d.ts +0 -14
- package/dist/types/xlsx/xform/core/relationships-xform.d.ts +0 -14
- package/dist/types/xlsx/xform/drawing/base-cell-anchor-xform.d.ts +0 -13
- package/dist/types/xlsx/xform/drawing/blip-fill-xform.d.ts +0 -16
- package/dist/types/xlsx/xform/drawing/blip-xform.d.ts +0 -14
- package/dist/types/xlsx/xform/drawing/c-nv-pic-pr-xform.d.ts +0 -9
- package/dist/types/xlsx/xform/drawing/c-nv-pr-xform.d.ts +0 -18
- package/dist/types/xlsx/xform/drawing/cell-position-xform.d.ts +0 -24
- package/dist/types/xlsx/xform/drawing/drawing-xform.d.ts +0 -24
- package/dist/types/xlsx/xform/drawing/ext-lst-xform.d.ts +0 -9
- package/dist/types/xlsx/xform/drawing/ext-xform.d.ts +0 -20
- package/dist/types/xlsx/xform/drawing/hlink-click-xform.d.ts +0 -11
- package/dist/types/xlsx/xform/drawing/nv-pic-pr-xform.d.ts +0 -15
- package/dist/types/xlsx/xform/drawing/one-cell-anchor-xform.d.ts +0 -20
- package/dist/types/xlsx/xform/drawing/pic-xform.d.ts +0 -22
- package/dist/types/xlsx/xform/drawing/two-cell-anchor-xform.d.ts +0 -20
- package/dist/types/xlsx/xform/list-xform.d.ts +0 -32
- package/dist/types/xlsx/xform/pivot-table/cache-field-xform.d.ts +0 -42
- package/dist/types/xlsx/xform/pivot-table/pivot-cache-definition-xform.d.ts +0 -60
- package/dist/types/xlsx/xform/pivot-table/pivot-cache-records-xform.d.ts +0 -73
- package/dist/types/xlsx/xform/pivot-table/pivot-table-xform.d.ts +0 -119
- package/dist/types/xlsx/xform/sheet/auto-filter-xform.d.ts +0 -8
- package/dist/types/xlsx/xform/sheet/cell-xform.d.ts +0 -17
- package/dist/types/xlsx/xform/sheet/cf/cf-rule-xform.d.ts +0 -41
- package/dist/types/xlsx/xform/sheet/cf/cfvo-xform.d.ts +0 -8
- package/dist/types/xlsx/xform/sheet/cf/color-scale-xform.d.ts +0 -13
- package/dist/types/xlsx/xform/sheet/cf/conditional-formatting-xform.d.ts +0 -9
- package/dist/types/xlsx/xform/sheet/cf/conditional-formattings-xform.d.ts +0 -16
- package/dist/types/xlsx/xform/sheet/cf/databar-xform.d.ts +0 -13
- package/dist/types/xlsx/xform/sheet/cf/ext-lst-ref-xform.d.ts +0 -9
- package/dist/types/xlsx/xform/sheet/cf/formula-xform.d.ts +0 -9
- package/dist/types/xlsx/xform/sheet/cf/icon-set-xform.d.ts +0 -11
- package/dist/types/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.d.ts +0 -10
- package/dist/types/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.d.ts +0 -23
- package/dist/types/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.d.ts +0 -13
- package/dist/types/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.d.ts +0 -16
- package/dist/types/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.d.ts +0 -13
- package/dist/types/xlsx/xform/sheet/cf-ext/databar-ext-xform.d.ts +0 -29
- package/dist/types/xlsx/xform/sheet/cf-ext/f-ext-xform.d.ts +0 -9
- package/dist/types/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.d.ts +0 -20
- package/dist/types/xlsx/xform/sheet/cf-ext/sqref-ext-xform.d.ts +0 -9
- package/dist/types/xlsx/xform/sheet/col-breaks-xform.d.ts +0 -16
- package/dist/types/xlsx/xform/sheet/col-xform.d.ts +0 -22
- package/dist/types/xlsx/xform/sheet/data-validations-xform.d.ts +0 -12
- package/dist/types/xlsx/xform/sheet/dimension-xform.d.ts +0 -10
- package/dist/types/xlsx/xform/sheet/drawing-xform.d.ts +0 -12
- package/dist/types/xlsx/xform/sheet/ext-lst-xform.d.ts +0 -16
- package/dist/types/xlsx/xform/sheet/header-footer-xform.d.ts +0 -20
- package/dist/types/xlsx/xform/sheet/hyperlink-xform.d.ts +0 -16
- package/dist/types/xlsx/xform/sheet/merge-cell-xform.d.ts +0 -9
- package/dist/types/xlsx/xform/sheet/outline-properties-xform.d.ts +0 -13
- package/dist/types/xlsx/xform/sheet/page-breaks-xform.d.ts +0 -14
- package/dist/types/xlsx/xform/sheet/page-margins-xform.d.ts +0 -17
- package/dist/types/xlsx/xform/sheet/page-setup-properties-xform.d.ts +0 -12
- package/dist/types/xlsx/xform/sheet/page-setup-xform.d.ts +0 -27
- package/dist/types/xlsx/xform/sheet/picture-xform.d.ts +0 -12
- package/dist/types/xlsx/xform/sheet/print-options-xform.d.ts +0 -15
- package/dist/types/xlsx/xform/sheet/row-breaks-xform.d.ts +0 -10
- package/dist/types/xlsx/xform/sheet/row-xform.d.ts +0 -37
- package/dist/types/xlsx/xform/sheet/sheet-format-properties-xform.d.ts +0 -16
- package/dist/types/xlsx/xform/sheet/sheet-properties-xform.d.ts +0 -19
- package/dist/types/xlsx/xform/sheet/sheet-protection-xform.d.ts +0 -31
- package/dist/types/xlsx/xform/sheet/sheet-view-xform.d.ts +0 -32
- package/dist/types/xlsx/xform/sheet/table-part-xform.d.ts +0 -12
- package/dist/types/xlsx/xform/sheet/worksheet-xform.d.ts +0 -21
- package/dist/types/xlsx/xform/simple/boolean-xform.d.ts +0 -15
- package/dist/types/xlsx/xform/simple/date-xform.d.ts +0 -22
- package/dist/types/xlsx/xform/simple/float-xform.d.ts +0 -18
- package/dist/types/xlsx/xform/simple/integer-xform.d.ts +0 -20
- package/dist/types/xlsx/xform/simple/string-xform.d.ts +0 -18
- package/dist/types/xlsx/xform/static-xform.d.ts +0 -17
- package/dist/types/xlsx/xform/strings/phonetic-text-xform.d.ts +0 -20
- package/dist/types/xlsx/xform/strings/rich-text-xform.d.ts +0 -25
- package/dist/types/xlsx/xform/strings/shared-string-xform.d.ts +0 -17
- package/dist/types/xlsx/xform/strings/shared-strings-xform.d.ts +0 -27
- package/dist/types/xlsx/xform/strings/text-xform.d.ts +0 -10
- package/dist/types/xlsx/xform/style/alignment-xform.d.ts +0 -18
- package/dist/types/xlsx/xform/style/border-xform.d.ts +0 -49
- package/dist/types/xlsx/xform/style/color-xform.d.ts +0 -17
- package/dist/types/xlsx/xform/style/dxf-xform.d.ts +0 -23
- package/dist/types/xlsx/xform/style/fill-xform.d.ts +0 -85
- package/dist/types/xlsx/xform/style/font-xform.d.ts +0 -35
- package/dist/types/xlsx/xform/style/numfmt-xform.d.ts +0 -18
- package/dist/types/xlsx/xform/style/protection-xform.d.ts +0 -13
- package/dist/types/xlsx/xform/style/style-xform.d.ts +0 -30
- package/dist/types/xlsx/xform/style/styles-xform.d.ts +0 -46
- package/dist/types/xlsx/xform/style/underline-xform.d.ts +0 -14
- package/dist/types/xlsx/xform/table/auto-filter-xform.d.ts +0 -21
- package/dist/types/xlsx/xform/table/custom-filter-xform.d.ts +0 -15
- package/dist/types/xlsx/xform/table/filter-column-xform.d.ts +0 -24
- package/dist/types/xlsx/xform/table/filter-xform.d.ts +0 -14
- package/dist/types/xlsx/xform/table/table-column-xform.d.ts +0 -21
- package/dist/types/xlsx/xform/table/table-style-info-xform.d.ts +0 -18
- package/dist/types/xlsx/xform/table/table-xform.d.ts +0 -33
- package/dist/types/xlsx/xlsx.base.d.ts +0 -134
- package/dist/types/xlsx/xlsx.browser.d.ts +0 -31
- package/dist/types/xlsx/xlsx.d.ts +0 -26
- /package/dist/cjs/{doc → modules/excel}/enums.js +0 -0
- /package/dist/cjs/{types.js → modules/excel/types.js} +0 -0
- /package/dist/cjs/{utils → modules/excel/utils}/col-cache.js +0 -0
- /package/dist/cjs/{utils → modules/excel/utils}/copy-style.js +0 -0
- /package/dist/cjs/{utils → modules/excel/utils}/iterate-stream.js +0 -0
- /package/dist/cjs/{utils → modules/excel/utils}/shared-strings.js +0 -0
- /package/dist/cjs/{xlsx → modules/excel/xlsx}/defaultnumformats.js +0 -0
- /package/dist/cjs/{xlsx → modules/excel/xlsx}/rel-type.js +0 -0
- /package/dist/cjs/{xlsx → modules/excel/xlsx}/xform/drawing/sp-pr.js +0 -0
- /package/dist/cjs/{xlsx → modules/excel/xlsx}/xml/theme1.js +0 -0
- /package/dist/esm/{doc → modules/excel}/enums.js +0 -0
- /package/dist/esm/{types.js → modules/excel/types.js} +0 -0
- /package/dist/esm/{utils → modules/excel/utils}/col-cache.js +0 -0
- /package/dist/esm/{utils → modules/excel/utils}/copy-style.js +0 -0
- /package/dist/esm/{utils → modules/excel/utils}/iterate-stream.js +0 -0
- /package/dist/esm/{utils → modules/excel/utils}/shared-strings.js +0 -0
- /package/dist/esm/{xlsx → modules/excel/xlsx}/defaultnumformats.js +0 -0
- /package/dist/esm/{xlsx → modules/excel/xlsx}/rel-type.js +0 -0
- /package/dist/esm/{xlsx → modules/excel/xlsx}/xform/drawing/sp-pr.js +0 -0
- /package/dist/esm/{xlsx → modules/excel/xlsx}/xml/theme1.js +0 -0
- /package/dist/types/{utils/zip → modules/archive}/deflate-fallback.d.ts +0 -0
- /package/dist/types/{doc → modules/excel}/data-validations.d.ts +0 -0
- /package/dist/types/{doc → modules/excel}/enums.d.ts +0 -0
- /package/dist/types/{doc → modules/excel}/note.d.ts +0 -0
- /package/dist/types/{stream/xlsx → modules/excel/stream}/sheet-comments-writer.d.ts +0 -0
- /package/dist/types/{stream/xlsx → modules/excel/stream}/sheet-rels-writer.d.ts +0 -0
- /package/dist/types/{types.d.ts → modules/excel/types.d.ts} +0 -0
- /package/dist/types/{utils → modules/excel/utils}/cell-format.d.ts +0 -0
- /package/dist/types/{utils → modules/excel/utils}/cell-matrix.d.ts +0 -0
- /package/dist/types/{utils → modules/excel/utils}/copy-style.d.ts +0 -0
- /package/dist/types/{utils → modules/excel/utils}/parse-sax.d.ts +0 -0
- /package/dist/types/{utils → modules/excel/utils}/shared-formula.d.ts +0 -0
- /package/dist/types/{utils → modules/excel/utils}/shared-strings.d.ts +0 -0
- /package/dist/types/{utils → modules/excel/utils}/under-dash.d.ts +0 -0
- /package/dist/types/{utils → modules/excel/utils}/xml-stream.d.ts +0 -0
- /package/dist/types/{xlsx → modules/excel/xlsx}/defaultnumformats.d.ts +0 -0
- /package/dist/types/{xlsx → modules/excel/xlsx}/rel-type.d.ts +0 -0
- /package/dist/types/{xlsx → modules/excel/xlsx}/xform/drawing/sp-pr.d.ts +0 -0
- /package/dist/types/{xlsx → modules/excel/xlsx}/xform/pivot-table/cache-field.d.ts +0 -0
- /package/dist/types/{xlsx → modules/excel/xlsx}/xform/sheet/merges.d.ts +0 -0
- /package/dist/types/{xlsx → modules/excel/xlsx}/xml/theme1.d.ts +0 -0
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* @cj-tech-master/excelts v3.0.
|
|
2
|
+
* @cj-tech-master/excelts v3.1.0-canary.20260102041828.82ed571
|
|
3
3
|
* TypeScript Excel Workbook Manager - Read and Write xlsx and csv Files.
|
|
4
|
-
* (c)
|
|
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}({}),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},{toString:d}=Object.prototype,f=/["&<>]/;function p(e,t){let n=typeof e,r=typeof t,i=Array.isArray(e),a=Array.isArray(t),o;if(n!==r)return!1;switch(typeof e){case`object`:if(i||a)return i&&a?e.length===t.length&&e.every((e,n)=>{let r=t[n];return p(e,r)}):!1;if(e===null||t===null)return e===t;if(o=Object.keys(e),Object.keys(t).length!==o.length)return!1;for(let e of o)if(!Object.prototype.hasOwnProperty.call(t,e))return!1;return o.every(n=>{let r=e[n],i=t[n];return p(r,i)});default:return e===t}}function m(e){let t=f.exec(e);if(!t)return e;let n=``,r=``,i=0,a=t.index;for(;a<e.length;a++){switch(e.charAt(a)){case`"`:r=`"`;break;case`&`:r=`&`;break;case`<`:r=`<`;break;case`>`:r=`>`;break;default:continue}i!==a&&(n+=e.substring(i,a)),i=a+1,n+=r}return i===a?n:n+e.substring(i,a)}function h(e){return d.call(e)===`[object Undefined]`}function g(e){return d.call(e)===`[object Object]`}function _(...e){let t=e[0]||{},{length:n}=e,r,i,a;function o(e,n){r=t[n],a=Array.isArray(e),g(e)||a?(a?(a=!1,i=r&&Array.isArray(r)?r:[]):i=r&&g(r)?r:{},t[n]=_(i,e)):h(e)||(t[n]=e)}for(let t=0;t<n;t++){let n=e[t];n&&(Array.isArray(n)?n.forEach((e,t)=>o(e,t)):Object.entries(n).forEach(([e,t])=>{e===`__proto__`||e===`constructor`||e===`prototype`||o(t,e)}))}return t}var v=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 _({},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 y=/(([a-z_\-0-9]*)!)?([a-z0-9_$]{2,})([(])?/gi,ee=/^([$])?([a-z]+)([$])?([1-9][0-9]*)$/i;function te(e,t,r){let i=n.decode(t),a=n.decode(r);return e.replace(y,(e,t,r,o,s)=>{if(s)return e;let c=ee.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=O.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=O.create(e.Types.Merge,this,t),n||(this.style=t.style)}unmerge(){this.type===e.Types.Merge&&(this._value.release(),this._value=O.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=O.create(O.getType(t),this,t)}get note(){if(this._comment)return this._comment.note}set note(e){this._comment=new v(e)}get comment(){return this._comment}set comment(e){e===void 0?this._comment=void 0:e instanceof v?this._comment=e:this._comment=new v(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=O.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=O.create(e.type,this),this._value.model=e,e.comment)switch(e.comment.type){case`note`:this._comment=v.fromModel(e.comment);break}e.style?this.style=e.style:this.style={}}},x=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``}},S=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()}},C=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}},w=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(){}},T=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()}},ne=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||``}},E=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()}},re=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(O.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&&te(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()}},D=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()}},oe=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 O={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(`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:x},{t:b.Types.Number,f:S},{t:b.Types.String,f:C},{t:b.Types.Date,f:T},{t:b.Types.Hyperlink,f:ne},{t:b.Types.Formula,f:re},{t:b.Types.Merge,f:E},{t:b.Types.JSON,f:oe},{t:b.Types.SharedString,f:ie},{t:b.Types.RichText,f:w},{t:b.Types.Boolean,f:ae},{t:b.Types.Error,f:D}].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 se=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])})}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))||{}}},k=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){n||=[];let r=[],i=1,a=0;for(n=n.sort(function(e,t){return e.min-t.min});a<n.length;){let o=n[a++];for(;i<o.min;)r.push(new e(t,i++));for(;i<=o.max;)r.push(new e(t,i++,o))}return r.length?r:null}};function A(e){return typeof e==`object`&&`nativeCol`in e&&`nativeRow`in e&&`nativeColOff`in e&&`nativeRowOff`in e}function ce(e){return typeof e==`object`&&`col`in e&&`row`in e}var le=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 A(t)?(this.nativeCol=t.nativeCol||0,this.nativeColOff=t.nativeColOff||0,this.nativeRow=t.nativeRow||0,this.nativeRowOff=t.nativeRowOff||0):ce(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}},ue=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 le(this.worksheet,{col:e.left,row:e.top},-1),br:new le(this.worksheet,{col:e.right,row:e.bottom},0),editAs:`oneCell`})}else r&&(this.range={tl:new le(this.worksheet,r.tl,0),br:r.br?new le(this.worksheet,r.br,0):void 0,ext:r.ext,editAs:r.editAs,hyperlinks:i||(`hyperlinks`in r?r.hyperlinks:void 0)})}},de=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)}},fe=class{constructor(e,t){this.worksheet=e,t&&(this.table=t,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,filterHeight:s,tableHeight:c}=this;e.autoFilterRef=n.encode(i,a,i+s-1,a+o-1),e.tableRef=n.encode(i,a,i+c-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);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()}addRow(e,t){this.cacheState(),t===void 0?this.table.rows.push(e):this.table.rows.splice(t,0,e)}removeRows(e,t=1){this.cacheState(),this.table.rows.splice(e,t)}getColumn(e){let t=this.table.columns[e];return new de(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}},pe=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=Object.keys(this.model).filter(e=>e.startsWith(`range:`));if(r.length===0)return;let i=n.decodeAddress(e);for(let e of r){let t=e.slice(6),r=n.decodeEx(t);if(r.dimensions){let t=r.tl,n=r.br;if(i.row>=t.row&&i.row<=n.row&&i.col>=t.col&&i.col<=n.col)return this.model[e]}}}remove(e){this.model[e]=void 0}};function me(e){let t=``;for(let n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return btoa(t)}function he(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}var ge=class e extends Uint8Array{toString(e){return e===`base64`?me(this):new TextDecoder().decode(this)}static from(t){let n=new e(t.length);return n.set(t),n}};function _e(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}function ve(...e){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}function ye(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 be=new BigUint64Array([4794697086780616226n,8158064640168781261n,13096744586834688815n,16840607885511220148n,4131703408338449720n,6480981068601479193n,10538285296894168987n,12329834152419229976n,15566598209576043074n,1334009975649890238n,2608012711638119052n,6128411473006802146n,8268148722764581231n,9286055187155687089n,11230858885718282805n,13951009754708518548n,16472876342353939154n,17275323862435702243n,1135362057144423861n,2597628984639134821n,3308224258029322869n,5365058923640841347n,6679025012923562964n,8573033837759648693n,10970295158949994411n,12119686244451234320n,12683024718118986047n,13788192230050041572n,14330467153632333762n,15395433587784984357n,489312712824947311n,1452737877330783856n,2861767655752347644n,3322285676063803686n,5560940570517711597n,5996557281743188959n,7280758554555802590n,8532644243296465576n,9350256976987008742n,10552545826968843579n,11727347734174303076n,12113106623233404929n,14000437183269869457n,14369950271660146224n,15101387698204529176n,15463397548674623760n,17586052441742319658n,1182934255886127544n,1847814050463011016n,2177327727835720531n,2830643537854262169n,3796741975233480872n,4115178125766777443n,5681478168544905931n,6601373596472566643n,7507060721942968483n,8399075790359081724n,8693463985226723168n,9568029438360202098n,10144078919501101548n,10430055236837252648n,11840083180663258601n,13761210420658862357n,14299343276471374635n,14566680578165727644n,15097957966210449927n,16922976911328602910n,17689382322260857208n,500013540394364858n,748580250866718886n,1242879168328830382n,1977374033974150939n,2944078676154940804n,3659926193048069267n,4368137639120453308n,4836135668995329356n,5532061633213252278n,6448918945643986474n,6902733635092675308n,7801388544844847127n]),xe=new BigUint64Array([7640891576956012808n,13503953896175478587n,4354685564936845355n,11912009170470909681n,5840696475078001361n,11170449401992604703n,2270897969802886507n,6620516959819538809n]);function j(e,t){return(e>>BigInt(t)|e<<BigInt(64-t))&18446744073709551615n}function Se(e){let t=e.length,n=BigInt(t*8),r=(128-(t+17)%128)%128,i=t+1+r+16,a=new Uint8Array(i);a.set(e),a[t]=128;let o=new DataView(a.buffer);o.setBigUint64(i-16,0n,!1),o.setBigUint64(i-8,n,!1);let s=new BigUint64Array(xe),c=new BigUint64Array(80);for(let e=0;e<i;e+=128){let t=new DataView(a.buffer,e,128);for(let e=0;e<16;e++)c[e]=t.getBigUint64(e*8,!1);for(let e=16;e<80;e++){let t=j(c[e-15],1)^j(c[e-15],8)^c[e-15]>>7n,n=j(c[e-2],19)^j(c[e-2],61)^c[e-2]>>6n;c[e]=c[e-16]+t+c[e-7]+n&18446744073709551615n}let n=s[0],r=s[1],i=s[2],o=s[3],l=s[4],u=s[5],d=s[6],f=s[7];for(let e=0;e<80;e++){let t=j(l,14)^j(l,18)^j(l,41),a=l&u^~l&d,s=f+t+a+be[e]+c[e]&18446744073709551615n,p=(j(n,28)^j(n,34)^j(n,39))+(n&r^n&i^r&i)&18446744073709551615n;f=d,d=u,u=l,l=o+s&18446744073709551615n,o=i,i=r,r=n,n=s+p&18446744073709551615n}s[0]=s[0]+n&18446744073709551615n,s[1]=s[1]+r&18446744073709551615n,s[2]=s[2]+i&18446744073709551615n,s[3]=s[3]+o&18446744073709551615n,s[4]=s[4]+l&18446744073709551615n,s[5]=s[5]+u&18446744073709551615n,s[6]=s[6]+d&18446744073709551615n,s[7]=s[7]+f&18446744073709551615n}let l=new Uint8Array(64),u=new DataView(l.buffer);for(let e=0;e<8;e++)u.setBigUint64(e*8,s[e],!1);return l}let Ce={hash(e,...t){let n=ve(...t);if(e.toLowerCase().replace(`-`,``)===`sha512`)return Se(n);throw Error(`Hash algorithm '${e}' not supported in browser sync mode!`)},convertPasswordToHash(e,t,n,r){if(t.toLowerCase().replace(`-`,``)!==`sha512`)throw Error(`Hash algorithm '${t}' not supported in browser!`);let i=_e(e),a=he(n),o=this.hash(t,a,i);for(let e=0;e<r;e++){let n=ye(e);o=this.hash(t,o,n)}return me(o)},randomBytes(e){let t=new ge(e);return crypto.getRandomValues(t),t}};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.replace(/&(#\d+|#x[0-9A-Fa-f]+|\w+);/g,(e,t)=>{if(t[0]===`#`){let e=t[1]===`x`?parseInt(t.slice(2),16):parseInt(t.slice(1));return String.fromCodePoint(e)}return Ee[t]||e})}function Oe(e){let t=typeof e==`number`?e:parseInt(e,10);return Number.isNaN(t)?0:t}function ke(e){if(!e||e.indexOf(`@`)>-1)return!1;let t=e.replace(/\[[^\]]*]/g,``);return t=t.replace(/"[^"]*"/g,``),t.match(/[ymdhMsb]+/)!==null}function M(e){return e===!0||e===`true`||e===1||e===`1`}function*Ae(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 je(e){let t=Array.from(e);return t.every(e=>Number.isFinite(e))?t.sort((e,t)=>e-t):t.sort()}let Me=new TextDecoder(`utf-8`);function Ne(e){return typeof e==`string`?e:Me.decode(e)}let Pe={"<":`<`,">":`>`,"&":`&`,'"':`"`,"'":`'`};function N(e){let t=e.replace(/[<>&"']/g,e=>Pe[e]||e);return t=t.replace(/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F\uFFFE\uFFFF]/g,e=>`&#x${e.charCodeAt(0).toString(16).toUpperCase()};`),t=t.replace(/[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?<![\uD800-\uDBFF])[\uDC00-\uDFFF]/g,()=>`�`),t}function Fe(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 Ie(e){return e.sourceTable?Fe(e.sourceTable):e.sourceSheet}function Le(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=Ie(t);Re(e,t,n);let{rows:r,values:i}=t,a=t.columns??[],o=ze(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 Re(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 ze(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 je(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 Ae(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 Be=(e,t)=>({...e,...t.reduce((t,n)=>(e[n]&&(t[n]={...e[n]}),t),{})}),P=(e,t,n,r=[])=>{e[n]&&(t[n]=Be(e[n],r))},Ve=e=>Object.keys(e).length===0,He=e=>{if(!e)return e;if(Ve(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=>Be(e,[`color`])))),t};var Ue=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 pe,this.views=e.views||[],this.autoFilter=e.autoFilter||null,this._media=[],this.sheetProtection=null,this.tables={},this.pivotTables=[],this.conditionalFormattings=[]}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 k(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 k(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 se(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=He(r.style),r.eachCell({includeEmpty:n},(e,t)=>{i.getCell(t).style=He(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 ue(this,n))}getImages(){return this._media.filter(e=>e.type===`image`)}addBackgroundImage(e){let t={type:`background`,imageId:String(e)};this._media.push(new ue(this,t))}getBackgroundImageId(){let e=this._media.find(e=>e.type===`background`);return e&&e.imageId}protect(e,t){return new Promise(n=>{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=Ce.randomBytes(16).toString(`base64`),this.sheetProtection.spinCount=t&&`spinCount`in t?t.spinCount:1e5,this.sheetProtection.hashValue=Ce.convertPasswordToHash(e,`SHA512`,this.sheetProtection.saltValue,this.sheetProtection.spinCount)),t&&(this.sheetProtection=Object.assign(this.sheetProtection,t),!e&&`spinCount`in t&&delete this.sheetProtection.spinCount),n()})}unprotect(){this.sheetProtection=null}addTable(e){let t=new fe(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=Le(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};e.cols=k.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 se(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=k.fromModel(this,e.cols),this._parseRows(e),this._parseMergeCells(e),this.dataValidations=new pe(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 ue(this,e)),this.sheetProtection=e.sheetProtection,this.tables=e.tables.reduce((e,t)=>{let n=new fe(this,t);return n.model=t,e[t.name]=n,e},{}),this.pivotTables=e.pivotTables,this.conditionalFormattings=e.conditionalFormattings}};function We(e){return typeof e==`number`?!0:e!==`__proto__`&&e!==`constructor`&&e!==`prototype`}function Ge(e){if(typeof e!=`object`||!e)return e;if(Array.isArray(e))return e.map(e=>Ge(e));let t={};for(let n of Object.keys(e))We(n)&&(t[n]=Ge(e[n]));return t}var Ke=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(!We(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(!We(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(!We(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(!We(r))throw Error(`Invalid column: ${r}`);if(e&&e[r])return e[r];if(n)return e[r]=this.template?{...t,...Ge(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 qe=/[$](\w+)[$](\d+)(:[$](\w+)[$](\d+))?/;var Je=class{constructor(){this.matrixMap={}}getMatrix(e){return this.matrixMap[e]||(this.matrixMap[e]=new Ke)}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 Ke;e.ranges.forEach(e=>{qe.test(e.split(`!`).pop()||``)&&n.addCell(e)})})}},Ye=class{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 Je}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 Ue({...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 Ue({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||[]}};async function Xe(e){let t=new CompressionStream(`deflate-raw`),n=t.writable.getWriter(),r=t.readable.getReader();n.write(new Uint8Array(e.buffer,e.byteOffset,e.byteLength)),n.close();let i=[],a=0;for(;;){let{done:e,value:t}=await r.read();if(e)break;i.push(t),a+=t.length}let o=new Uint8Array(a),s=0;for(let e of i)o.set(e,s),s+=e.length;return o}async function Ze(e){let t=new DecompressionStream(`deflate-raw`),n=t.writable.getWriter(),r=t.readable.getReader();n.write(new Uint8Array(e.buffer,e.byteOffset,e.byteLength)),n.close();let i=[],a=0;for(;;){let{done:e,value:t}=await r.read();if(e)break;i.push(t),a+=t.length}let o=new Uint8Array(a),s=0;for(let e of i)o.set(e,s),s+=e.length;return o}let Qe=new Uint8Array(288);for(let e=0;e<=143;e++)Qe[e]=8;for(let e=144;e<=255;e++)Qe[e]=9;for(let e=256;e<=279;e++)Qe[e]=7;for(let e=280;e<=287;e++)Qe[e]=8;let $e=new Uint8Array(32).fill(5),et=[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],tt=[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],nt=[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],rt=[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],it=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function at(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 ot=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 st(e){let t=new ot(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=at(Qe,288),i=at($e,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[it[e]]=t.readBits(3);let s=at(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=at(c.subarray(0,e),e),i=at(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=et[r]+t.readBits(tt[r]),o=t.decodeSymbol(i),s=nt[o]+t.readBits(rt[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 ct(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 lt(e){if(e.length===0)return new Uint8Array([3,0]);if(e.length<100)return ct(e);let t=new ut;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?(mt(t,i),ht(t,a),r+=i):(pt(t,e[r]),r++)}return pt(t,256),t.finish()}var ut=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(){if(this.bitCount>0&&this.buffer.push(this.bitBuf&255),this.chunks.length===0)return new Uint8Array(this.buffer);this.chunks.push(new Uint8Array(this.buffer));let e=this.chunks.reduce((e,t)=>e+t.length,0),t=new Uint8Array(e),n=0;for(let e of this.chunks)t.set(e,n),n+=e.length;return t}};let dt=[],ft=[];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),dt[e]=[t,n],ft[e]=n}function pt(e,t){let[n,r]=dt[t];e.writeBitsReverse(n,r)}function mt(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;pt(e,n),r>0&&e.writeBits(i,r)}function ht(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)}function gt(){if(typeof CompressionStream>`u`)return!1;try{return new CompressionStream(`deflate-raw`),!0}catch{return!1}}let _t=null;function vt(){return typeof CompressionStream>`u`?!1:(_t===null&&(_t=gt()),_t)}async function yt(e,t={}){return(t.level??6)===0?ct(e):vt()?Xe(e):lt(e)}function bt(e,t={}){return(t.level??6)===0?ct(e):lt(e)}async function xt(e){return vt()?Ze(e):st(e)}function St(e){return st(e)}let Ct=67324752;function wt(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 Tt(e,t,n,r){let i=new DataView(e.buffer,e.byteOffset,e.byteLength),a=0;for(;a+4<=e.length;){let e=i.getUint16(a,!0),o=i.getUint16(a+2,!0);if(e===1){let e=a+4;n===4294967295&&e+8<=a+4+o&&(n=Number(i.getBigUint64(e,!0)),e+=8),t===4294967295&&e+8<=a+4+o&&(t=Number(i.getBigUint64(e,!0)),e+=8),r===4294967295&&e+8<=a+4+o&&(r=Number(i.getBigUint64(e,!0)));break}a+=4+o}return{compressedSize:t,uncompressedSize:n,localHeaderOffset:r}}var Et=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?new TextDecoder(`utf-8`).decode(n):String.fromCharCode(...n)}skip(e){this.offset+=e}slice(e,t){return this.data.subarray(e,t)}peekUint32(e){return this.view.getUint32(e,!0)}};function Dt(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)===101010256)return r;return-1}function Ot(e,t){let n=t-20;return n<0?-1:new DataView(e.buffer,e.byteOffset,e.byteLength).getUint32(n,!0)===117853008?n:-1}function kt(e,t={}){let{decodeStrings:n=!0}=t,r=[],i=Dt(e);if(i===-1)throw Error(`Invalid ZIP file: End of Central Directory not found`);let a=new Et(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=Ot(e,i);if(c!==-1){let t=new Et(e,c);t.skip(4),t.skip(4);let n=new Et(e,Number(t.readBigUint64()));if(n.readUint32()===101075792){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 Et(e,s);for(let e=0;e<o;e++){if(l.readUint32()!==33639248)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,_);if(f>0){let e=Tt(y,c,u,h);c=e.compressedSize,u=e.uncompressedSize,h=e.localHeaderOffset}let te=v.endsWith(`/`)||(m&16)!=0,b=(t&1)!=0;r.push({path:v,isDirectory:te,compressedSize:c,uncompressedSize:u,compressionMethod:i,crc32:s,lastModified:wt(o,a),localHeaderOffset:h,comment:ee,externalAttributes:m,isEncrypted:b})}return r}async function At(e,t){if(t.isDirectory)return new Uint8Array;if(t.isEncrypted)throw Error(`File "${t.path}" is encrypted and cannot be extracted`);let n=new Et(e,t.localHeaderOffset);if(n.readUint32()!==Ct)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();n.skip(r),n.skip(i);let a=n.readBytes(t.compressedSize);if(t.compressionMethod===0)return a;if(t.compressionMethod===8)return xt(a);throw Error(`Unsupported compression method: ${t.compressionMethod}`)}function jt(e,t){if(t.isDirectory)return new Uint8Array;if(t.isEncrypted)throw Error(`File "${t.path}" is encrypted and cannot be extracted`);let n=new Et(e,t.localHeaderOffset);if(n.readUint32()!==Ct)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();n.skip(r),n.skip(i);let a=n.readBytes(t.compressedSize);if(t.compressionMethod===0)return a;if(t.compressionMethod===8)return St(a);throw Error(`Unsupported compression method: ${t.compressionMethod}`)}var Mt=class{constructor(e,t={}){this.data=e instanceof ArrayBuffer?new Uint8Array(e):e,this.entries=kt(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?At(this.data,t):null}extractSync(e){let t=this.entryMap.get(e);return t?jt(this.data,t):null}async extractAll(){let e=new Map;for(let t of this.entries){let n=await At(this.data,t);e.set(t.path,n)}return e}extractAllSync(){let e={};for(let t of this.entries)e[t.path]=jt(this.data,t);return e}async forEach(e){for(let t of this.entries){let n=null;if(await e(t,()=>(n||=At(this.data,t),n))===!1)break}}};let Nt=(()=>{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 e})();function Pt(e){let t=4294967295;for(let n=0;n<e.length;n++)t=Nt[(t^e[n])&255]^t>>>8;return(t^4294967295)>>>0}function Ft(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]}let It=new TextEncoder;function Lt(e){return It.encode(e)}function Rt(e){let t=new Uint8Array(30+e.name.length),n=new DataView(t.buffer);return n.setUint32(0,67324752,!0),n.setUint16(4,20,!0),n.setUint16(6,2048,!0),n.setUint16(8,e.compressionMethod,!0),n.setUint16(10,e.modTime,!0),n.setUint16(12,e.modDate,!0),n.setUint32(14,e.crc,!0),n.setUint32(18,e.compressedData.length,!0),n.setUint32(22,e.data.length,!0),n.setUint16(26,e.name.length,!0),n.setUint16(28,0,!0),t.set(e.name,30),t}function zt(e){let t=new Uint8Array(46+e.name.length+e.comment.length),n=new DataView(t.buffer);return n.setUint32(0,33639248,!0),n.setUint16(4,20,!0),n.setUint16(6,20,!0),n.setUint16(8,2048,!0),n.setUint16(10,e.compressionMethod,!0),n.setUint16(12,e.modTime,!0),n.setUint16(14,e.modDate,!0),n.setUint32(16,e.crc,!0),n.setUint32(20,e.compressedData.length,!0),n.setUint32(24,e.data.length,!0),n.setUint16(28,e.name.length,!0),n.setUint16(30,0,!0),n.setUint16(32,e.comment.length,!0),n.setUint16(34,0,!0),n.setUint16(36,0,!0),n.setUint32(38,0,!0),n.setUint32(42,e.offset,!0),t.set(e.name,46),e.comment.length>0&&t.set(e.comment,46+e.name.length),t}function Bt(e,t,n,r){let i=new Uint8Array(22+r.length),a=new DataView(i.buffer);return a.setUint32(0,101010256,!0),a.setUint16(4,0,!0),a.setUint16(6,0,!0),a.setUint16(8,e,!0),a.setUint16(10,e,!0),a.setUint32(12,t,!0),a.setUint32(16,n,!0),a.setUint16(20,r.length,!0),r.length>0&&i.set(r,22),i}var Vt=class{constructor(e={}){this.entries=[],this.currentOffset=0,this.finalized=!1,this.level=e.level??6,this.zipComment=Lt(e.comment??``)}async addFile(e){if(this.finalized)throw Error(`Cannot add files after finalizing`);let t=Lt(e.name),n=Lt(e.comment??``),[r,i]=Ft(e.modTime??new Date),a=this.level>0&&e.data.length>0,o=a?await yt(e.data,{level:this.level}):e.data,s={name:t,data:e.data,compressedData:o,crc:Pt(e.data),compressionMethod:a?8:0,modTime:r,modDate:i,comment:n,offset:this.currentOffset};return this.entries.push(s),this.currentOffset+=30+t.length+o.length,[Rt(s),o]}addFileSync(e){if(this.finalized)throw Error(`Cannot add files after finalizing`);let t=Lt(e.name),n=Lt(e.comment??``),[r,i]=Ft(e.modTime??new Date),a=this.level>0&&e.data.length>0,o=a?bt(e.data,{level:this.level}):e.data,s={name:t,data:e.data,compressedData:o,crc:Pt(e.data),compressionMethod:a?8:0,modTime:r,modDate:i,comment:n,offset:this.currentOffset};return this.entries.push(s),this.currentOffset+=30+t.length+o.length,[Rt(s),o]}finalize(){if(this.finalized)throw Error(`ZIP already finalized`);this.finalized=!0;let e=[];for(let t of this.entries)e.push(zt(t));let t=e.reduce((e,t)=>e+t.length,0);return e.push(Bt(this.entries.length,t,this.currentOffset,this.zipComment)),e}get entryCount(){return this.entries.length}get dataSize(){return this.currentOffset}},Ht=class{constructor(e){this._buf=Buffer.alloc(e&&e.size||16384),this._encoding=e&&e.encoding||`utf8`,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._buffer=Buffer.alloc(this.length),this._buf.copy(this._buffer,0,0,this.length)),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=Buffer.alloc(t);this._buf.copy(n,0),this._buf=n}addText(e){this._buffer=void 0;let t=this._inPos+this._buf.write(e,this._inPos,this._encoding);for(;t>=this._buf.length-4;)this._grow(this._inPos+e.length),t=this._inPos+this._buf.write(e,this._inPos,this._encoding);this._inPos=t}addStringBuf(e){e.length&&(this._buffer=void 0,this.length+e.length>this.capacity&&this._grow(this.length+e.length),e._buf.copy(this._buf,this._inPos,0,e.length),this._inPos+=e.length)}},Ut=class{constructor(e,t){this._data=e,this._encoding=t}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}},Wt=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()}},Gt=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);e.set(this._data.subarray(n,n+i),t)}toBuffer(){return this._data}},Kt=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}},qt=class{constructor(e){e||={},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.events=new Map}on(e,t){let n=this.events.get(e)||[];return n.push(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)||[],r=n.indexOf(t);return r!==-1&&n.splice(r,1),this}emit(e,...t){let n=this.events.get(e)||[];return n.forEach(e=>e(...t)),n.length>0}removeListener(e,t){return this.off(e,t)}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 Kt(this.bufSize);return this.buffers.push(e),e}async _pipe(e){await Promise.all(this.pipes.map(t=>new Promise(n=>{t.write(e.toBuffer(),()=>{n()})})))}_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){t instanceof Function&&(n=t,t=`utf8`),n||=()=>{};let r;if(e instanceof Ht||e&&e.constructor?.name===`StringBuf`)r=new Wt(e);else if(e instanceof Uint8Array)r=new Gt(e);else if(ArrayBuffer.isView(e))r=new Gt(new Uint8Array(e.buffer,e.byteOffset,e.byteLength));else if(e instanceof ArrayBuffer)r=new Gt(new Uint8Array(e));else if(typeof e==`string`||e instanceof String)r=new Ut(String(e),t);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;)await this._pipe(new Gt(this.buffers.shift().toBuffer()));else this.corked?(this._writeToBuffers(r),queueMicrotask(()=>n())):(await this._pipe(r),n());else this.paused||this.emit(`data`,r.toBuffer()),this._writeToBuffers(r),this.emit(`readable`);return!0}cork(){this.corked=!0}_flush(){if(this.pipes.length)for(;this.buffers.length;)this._pipe(new Gt(this.buffers.shift().toBuffer()))}uncork(){this.corked=!1,this._flush()}end(e,t,n){let r=e=>{e?n?.(e):(this._flush(),this.pipes.forEach(e=>{e.end()}),this.emit(`finish`))};e?this.write(e,t,r):r()}read(e){let t;if(e){for(t=[];e&&this.buffers.length&&!this.buffers[0].eod;){let n=this.buffers[0],r=n.read(e);r&&(e-=r.length,t.push(r)),n.eod&&n.full&&this.buffers.shift()}return Jt(t)}return t=this.buffers.map(e=>e.toBuffer()).filter(Boolean),this.buffers=[],Jt(t)}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}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 Jt(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}function Yt(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}var Xt=class{constructor(e){this.finalized=!1,this.pendingWrites=[],this.events=new Map;let t=e?.compression===`STORE`?0:Math.max(0,Math.min(9,e?.compressionOptions?.level??1));this.stream=new qt,this.zipBuilder=new Vt({level:t})}on(e,t){let n=this.events.get(e)||[];return n.push(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)||[],r=n.indexOf(t);return r!==-1&&n.splice(r,1),this}emit(e,...t){let n=this.events.get(e)||[];return n.forEach(e=>e(...t)),n.length>0}removeListener(e,t){return this.off(e,t)}append(e,t){let n;n=Object.prototype.hasOwnProperty.call(t,`base64`)&&t.base64?Yt(typeof e==`string`?e:String(e)):typeof e==`string`?new TextEncoder().encode(e):e instanceof Uint8Array?e:ArrayBuffer.isView(e)?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e instanceof ArrayBuffer?new Uint8Array(e):e;let r=this.zipBuilder.addFile({name:t.name,data:n}).then(e=>{for(let t of e)this.stream.write(new Uint8Array(t))});this.pendingWrites.push(r)}push(e){return this.stream.push(e)}async finalize(){if(this.finalized)return;this.finalized=!0,await Promise.all(this.pendingWrites);let e=this.zipBuilder.finalize();for(let t of e)this.stream.write(new Uint8Array(t));this.stream.end(),this.emit(`finish`)}read(e){return this.stream.read(e)}setEncoding(e){return this.stream.setEncoding(e)}pause(){return this.stream.pause()}resume(){return this.stream.resume()}isPaused(){return this.stream.isPaused()}pipe(e){return this.stream.pipe(e)}unpipe(e){return this.stream.unpipe(e)}unshift(){return this.stream.unshift()}wrap(){return this.stream.wrap()}};let Zt=1e4;function Qt(e,t,n){e.push(` ${t}="${N(n.toString())}"`)}function $t(e,t){if(t){let n=[];Object.entries(t).forEach(([e,t])=>{t!==void 0&&Qt(n,e,t)}),e.push(n.join(``))}}var F=class{constructor(){this._xml=[],this._chunks=[],this._stack=[],this._rollbacks=[]}_consolidate(){this._xml.length>=Zt&&(this._chunks.push(this._xml.join(``)),this._xml=[])}get tos(){return this._stack.length?this._stack[this._stack.length-1]:void 0}get cursor(){return this._chunks.length*Zt+this._xml.length}openXml(e){let t=this._xml;t.push(`<?xml`),$t(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}({}),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.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()}},T=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(`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:T},{t:b.Types.SharedString,f:ae},{t:b.Types.RichText,f:re},{t:b.Types.Boolean,f:oe},{t:b.Types.Error,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 D=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 ce(e){return typeof e==`object`&&`nativeCol`in e&&`nativeRow`in e&&`nativeColOff`in e&&`nativeRowOff`in e}function le(e){return typeof e==`object`&&`col`in e&&`row`in e}var ue=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 ce(t)?(this.nativeCol=t.nativeCol||0,this.nativeColOff=t.nativeColOff||0,this.nativeRow=t.nativeRow||0,this.nativeRowOff=t.nativeRowOff||0):le(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}},k=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 ue(this.worksheet,{col:e.left,row:e.top},-1),br:new ue(this.worksheet,{col:e.right,row:e.bottom},0),editAs:`oneCell`})}else r&&(this.range={tl:new ue(this.worksheet,r.tl,0),br:r.br?new ue(this.worksheet,r.br,0):void 0,ext:r.ext,editAs:r.editAs,hyperlinks:i||(`hyperlinks`in r?r.hyperlinks:void 0)})}},de=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)}},fe=class{constructor(e,t){this.worksheet=e,t&&(this.table=t,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,filterHeight:s,tableHeight:c}=this;e.autoFilterRef=n.encode(i,a,i+s-1,a+o-1),e.tableRef=n.encode(i,a,i+c-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);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()}addRow(e,t){this.cacheState(),t===void 0?this.table.rows.push(e):this.table.rows.splice(t,0,e)}removeRows(e,t=1){this.cacheState(),this.table.rows.splice(e,t)}getColumn(e){let t=this.table.columns[e];return new de(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}},pe=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}};function me(){return typeof process<`u`&&!!process.versions?.node}function he(e){if(me())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 ge(e,t){return 25569+e.getTime()/(24*3600*1e3)-(t?1462:0)}function _e(e,t){let n=Math.round((e-25569+(t?1462:0))*24*3600*1e3);return new Date(n)}let ve={lt:`<`,gt:`>`,amp:`&`,quot:`"`,apos:`'`};function ye(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 ve[t]||e})}let be=/[<>&'"\x7F\x00-\x08\x0B-\x0C\x0E-\x1F]/;function xe(e){let t=be.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 Se(e){let t=typeof e==`number`?e:parseInt(e,10);return Number.isNaN(t)?0:t}function Ce(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*we(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 Te(e){let t=Array.from(e);return t.every(e=>Number.isFinite(e))?t.sort((e,t)=>e-t):t.sort()}let Ee=new TextDecoder(`utf-8`),De;try{De=new TextDecoder(`latin1`)}catch{De=void 0}function Oe(e){return typeof e==`string`?e:Ee.decode(e)}function ke(e){if(me())return Buffer.from(e).toString(`base64`);if(De)try{return btoa(De.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 Ae(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 je=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?je(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?je(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?je(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(!je(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(!je(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?je(t)?t.slice():[t]:[]}rawListeners(e){let t=this._listeners.get(e);return t?je(t)?t.slice():[t]:[]}eventNames(){return[...this._listeners.keys()]}setMaxListeners(e){return this._maxListeners=e,this}getMaxListeners(){return this._maxListeners}};let Me=new TextEncoder,Ne=new TextDecoder(`utf-8`,{ignoreBOM:!0}),Pe=new Map;function Fe(e){if(!e||e===`utf-8`||e===`utf8`)return Ne;let t=e,n=Pe.get(t);return n||(n=new TextDecoder(t),Pe.set(t,n)),n}function Ie(e){return Me.encode(e)}function Le(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=Ne:this._decoder=null,this}_applyEncoding(e){return this._encoding&&e instanceof Uint8Array?(this._decoder||=Fe(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?._writable??t,r=typeof n?.write==`function`,i=typeof n?.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`);let c=n;this._pipeTo.push(c);let l=e=>{if(!c.write(e))if(this.pause(),typeof c.once==`function`)c.once(`drain`,()=>this.resume());else{let e=()=>{typeof c.off==`function`?c.off(`drain`,e):typeof c.removeListener==`function`&&c.removeListener(`drain`,e),this.resume()};c.on(`drain`,e)}},u=()=>{c.end()},d=e=>{typeof c.destroy==`function`?c.destroy(e):c.emit?.(`error`,e)};return this._pipeListeners.set(c,{data:l,end:u,error:d}),this.on(`data`,l),this.once(`end`,u),this.once(`error`,d),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 Re(e){return e instanceof N?e:e?.getWriter?new N({stream:e}):e}var ze=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.objectMode=t?.objectMode??!1;let n=t?.transform,r=t?.flush,i=n&&n.length>=3,a=r&&r.length>=1,o=e=>{this._transformController=e},s=(e,...t)=>{if(e===`error`){if(this._errored)return!1;this._errored=!0,this._writable.destroy(t[0])}return this.emit(e,...t)},c=()=>this,l=()=>n?!1:Object.getPrototypeOf(this)._transform!==e.prototype._transform,u=()=>r?!1:Object.getPrototypeOf(this)._flush!==e.prototype._flush;this._stream=new TransformStream({transform:async(e,t)=>{if(!this._errored)try{if(o(t),l())await new Promise((n,r)=>{this._transform(e,`utf8`,(e,i)=>{e?r(e):(i!==void 0&&t.enqueue(i),n())})});else if(n)if(i)await new Promise((r,i)=>{n.call(c(),e,`utf8`,(e,n)=>{e?i(e):(n!==void 0&&t.enqueue(n),r())})});else{let r=await n(e);r!==void 0&&t.enqueue(r)}else t.enqueue(e)}catch(e){t.error(e),s(`error`,e)}finally{o(null)}},flush:async e=>{try{if(o(e),u())await new Promise((t,n)=>{this._flush((r,i)=>{r?n(r):(i!==void 0&&e.enqueue(i),t())})});else if(r)if(a)await new Promise((t,n)=>{r.call(c(),(r,i)=>{r?n(r):(i!==void 0&&e.enqueue(i),t())})});else{let t=await r();t!=null&&e.enqueue(t)}}catch(t){e.error(t),s(`error`,t)}finally{o(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),this.emit(`data`,e);this._autoConsumeEnded=!0,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){return this._hasDataConsumer=!0,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()}},Be=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 ze?(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]()}},Ve=class extends ze{constructor(e){super({...e,transform:e=>e})}};let He=e=>!!e&&typeof e==`object`&&typeof e.getReader==`function`,Ue=e=>!!e&&typeof e==`object`&&typeof e.getWriter==`function`,We=e=>!!e&&typeof e==`object`&&!!e.readable&&!!e.writable&&He(e.readable)&&Ue(e.writable),Ge=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`),Ke=e=>e instanceof M||e instanceof N||e instanceof ze||e instanceof Be?e:We(e)?ze.fromWeb(e):He(e)?M.fromWeb(e):Ue(e)?N.fromWeb(e):e;function qe(...e){let t,n={},r,i=e[e.length-1];typeof i==`function`?(r=i,t=e.slice(0,-1)):Ge(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(Ke),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 Je(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 Ye={async hash(e,...t){let n=Le(t),r=await crypto.subtle.digest(e,new Uint8Array(n));return new Uint8Array(r)},async convertPasswordToHash(e,t,n,r){let i=Ae(e),a=he(n),o=await this.hash(t,a,i);for(let e=0;e<r;e++)o=await this.hash(t,o,Je(e));return ke(o)},randomBytes(e){let t=new Uint8Array(e);return crypto.getRandomValues(t),t}};function Xe(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 Ze(e){return e.sourceTable?Xe(e.sourceTable):e.sourceSheet}function Qe(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=Ze(t);$e(e,t,n);let{rows:r,values:i}=t,a=t.columns??[],o=et(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 $e(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 et(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 Te(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 we(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 tt=(e,t)=>({...e,...t.reduce((t,n)=>(e[n]&&(t[n]={...e[n]}),t),{})}),P=(e,t,n,r=[])=>{e[n]&&(t[n]=tt(e[n],r))},nt=e=>Object.keys(e).length===0,rt=e=>{if(!e)return e;if(nt(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=>tt(e,[`color`])))),t};var it=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 pe,this.views=e.views||[],this.autoFilter=e.autoFilter||null,this._media=[],this.sheetProtection=null,this.tables={},this.pivotTables=[],this.conditionalFormattings=[]}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 D(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=rt(r.style),r.eachCell({includeEmpty:n},(e,t)=>{i.getCell(t).style=rt(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 k(this,n))}getImages(){return this._media.filter(e=>e.type===`image`)}addBackgroundImage(e){let t={type:`background`,imageId:String(e)};this._media.push(new k(this,t))}getBackgroundImageId(){let e=this._media.find(e=>e.type===`background`);return e&&e.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=ke(Ye.randomBytes(16)),this.sheetProtection.spinCount=t&&`spinCount`in t?t.spinCount:1e5,this.sheetProtection.hashValue=await Ye.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 fe(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=Qe(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};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 D(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 pe(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 k(this,e)),this.sheetProtection=e.sheetProtection,this.tables=e.tables.reduce((e,t)=>{let n=new fe(this,t);return n.model=t,e[t.name]=n,e},{}),this.pivotTables=e.pivotTables,this.conditionalFormattings=e.conditionalFormattings}};function at(e){return typeof e==`number`?!0:e!==`__proto__`&&e!==`constructor`&&e!==`prototype`}function ot(e){if(typeof e!=`object`||!e)return e;if(Array.isArray(e))return e.map(e=>ot(e));let t={};for(let n of Object.keys(e))at(n)&&(t[n]=ot(e[n]));return t}var st=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(!at(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(!at(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(!at(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(!at(r))throw Error(`Invalid column: ${r}`);if(e&&e[r])return e[r];if(n)return e[r]=this.template?{...t,...ot(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 ct=/[$](\w+)[$](\d+)(:[$](\w+)[$](\d+))?/;var lt=class{constructor(){this.matrixMap={}}getMatrix(e){return this.matrixMap[e]||(this.matrixMap[e]=new st)}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 st;e.ranges.forEach(e=>{ct.test(e.split(`!`).pop()||``)&&n.addCell(e)})})}};let ut=1e4;function dt(e,t,n){e.push(` ${t}="${xe(n.toString())}"`)}function ft(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 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>=ut&&(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*ut+this._xml.length}openXml(e){let t=this._xml;t.push(`<?xml`),ft(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),ft(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`);ft(this._xml,e)}writeText(e){let t=this._xml;this.open&&=(t.push(`>`),!1),this.leaf=!1,t.push(xe(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 pt=Array(128);for(let e=0;e<128;e++)pt[e]=String.fromCharCode(e);function I(e){return e<128?pt[e]:String.fromCodePoint(e)}let mt=new Uint8Array(128);for(let e=97;e<=122;e++)mt[e]=1;for(let e=65;e<=90;e++)mt[e]=1;mt[95]=1,mt[58]=1;let ht=new Uint8Array(128);for(let e=97;e<=122;e++)ht[e]=1;for(let e=65;e<=90;e++)ht[e]=1;for(let e=48;e<=57;e++)ht[e]=1;ht[95]=1,ht[58]=1,ht[45]=1,ht[46]=1;function gt(e){return e===32||e===10||e===13||e===9}function _t(e){return e===34||e===39}function vt(e){return e<128?mt[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 yt(e){return e<128?ht[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 bt(e){return e>=32&&e<=55295||e===10||e===13||e===9||e>=57344&&e<=65533||e>=65536&&e<=1114111}let xt={amp:`&`,gt:`>`,lt:`<`,quot:`"`,apos:`'`};var St=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={...xt},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):nn(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(an(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(on(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:(nn(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&&(an(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(on(e)){this.name+=I(e);return}e===61?this.state=8:nn(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():an(e)?(this.name=I(e),this.state=6):(this.fail(`unexpected character`),this.state=5)))}sAttribValue(){let e=this.skipSpaces();e!==-1&&(rn(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&&(nn(e)?this.state=5:e===62?this.openTag():e===47?this.state=4:an(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&&(on(e)?this.name+=I(e):e===62?this.closeTag():nn(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):rn(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:rn(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 on(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)||!sn(t)?(this.fail(`invalid character entity`),`&`+e+`;`):String.fromCodePoint(t)}skipSpaces(){for(;;){let e=this.getCode();if(e===-1||!nn(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*un(e){let t=new ln({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){if(t.write(Ne(i)),n)throw n;yield r,r=[]}if(t.close(),n)throw n;r.length>0&&(yield r)}var R=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){for await(let t of e)for(let{eventType:e,value:n}of t)if(e===`opentag`)this.parseOpen(n);else if(e===`text`)this.parseText(n);else if(e===`closetag`&&!this.parseClose(n.name))return this.model;return this.model}async parseStream(e){return this.parse(un(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 dn(e,t){e.openNode(t.tag,t.$),t.c&&t.c.forEach(t=>{dn(e,t)}),t.t&&e.writeText(t.t),e.closeNode()}var z=class extends R{constructor(e){super(),this._model=e}render(e){if(!this._xml){let e=new F;dn(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}}},B=class extends R{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()}},V=class extends R{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}},H=class extends R{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}},U=class extends R{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}},W=class extends R{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}},fn=class e extends R{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}},pn=class e extends R{constructor(t){super(),this.options=t||e.OPTIONS;let n=[{tag:`b`,prop:`bold`,xform:new H({tag:`b`,attr:`val`})},{tag:`i`,prop:`italic`,xform:new H({tag:`i`,attr:`val`})},{tag:`u`,prop:`underline`,xform:new fn},{tag:`strike`,prop:`strike`,xform:new H({tag:`strike`,attr:`val`})},{tag:`condense`,prop:`condense`,xform:new H({tag:`condense`,attr:`val`})},{tag:`extend`,prop:`extend`,xform:new H({tag:`extend`,attr:`val`})},{tag:`outline`,prop:`outline`,xform:new H({tag:`outline`,attr:`val`})},{tag:`shadow`,prop:`shadow`,xform:new H({tag:`shadow`,attr:`val`})},{tag:`sz`,prop:`size`,xform:new U({tag:`sz`,attr:`val`})},{tag:`color`,prop:`color`,xform:new V},{tag:this.options.fontNameTag,prop:`name`,xform:new W({tag:this.options.fontNameTag,attr:`val`})},{tag:`family`,prop:`family`,xform:new U({tag:`family`,attr:`val`})},{tag:`scheme`,prop:`scheme`,xform:new W({tag:`scheme`,attr:`val`})},{tag:`charset`,prop:`charset`,xform:new U({tag:`charset`,attr:`val`})},{tag:`vertAlign`,prop:`vertAlign`,xform:new W({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`}}},mn=class extends R{constructor(){super(),this.map={color:new V}}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}},hn=class extends R{constructor(){super(),this.map={fgColor:new V(`fgColor`),bgColor:new V(`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}},gn=class extends R{constructor(){super(),this.map={stop:new mn}}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}},_n=class e extends R{constructor(){super(),this.map={patternFill:new hn,gradientFill:new gn}}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=mn}static{this.PatternFillXform=hn}static{this.GradientFillXform=gn}},vn=class e extends R{constructor(e){super(),this.name=e,this.map={color:new V}}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),{})}},yn=class extends R{constructor(){super(),this.map={top:new vn(`top`),left:new vn(`left`),bottom:new vn(`bottom`),right:new vn(`right`),diagonal:new vn(`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=M(e.attributes.diagonalUp),this.diagonalDown=M(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 bn={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 xn(){let e={};return Object.entries(bn).forEach(([t,n])=>{n.f&&(e[n.f]=parseInt(t,10))}),e}let Sn=xn();var Cn=class extends R{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 Sn[e]}static getDefaultFmtCode(e){return bn[e]&&bn[e].f}};let wn={ReadingOrder:{LeftToRight:1,RightToLeft:2}},G={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=Oe(e);return t!==void 0&&t>=-90&&t<=90?t:void 0}}},indent(e){let t=Oe(e);return Math.max(0,t)},readingOrder(e){switch(e){case`ltr`:return wn.ReadingOrder.LeftToRight;case`rtl`:return wn.ReadingOrder.RightToLeft;default:return}}},Tn={toXml(e){let t=G.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=Oe(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 En=class extends R{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`,G.horizontal(t.horizontal)),r(`vertical`,G.vertical(t.vertical)),r(`wrapText`,G.wrapText(t.wrapText)?`1`:!1),r(`shrinkToFit`,G.shrinkToFit(t.shrinkToFit)?`1`:!1),r(`indent`,G.indent(t.indent)),r(`textRotation`,Tn.toXml(t.textRotation)),r(`readingOrder`,G.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`,M(e.attributes.wrapText)),r(e.attributes.shrinkToFit,`shrinkToFit`,M(e.attributes.shrinkToFit)),r(e.attributes.indent,`indent`,parseInt(e.attributes.indent,10)),r(e.attributes.textRotation,`textRotation`,Tn.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 Dn={boolean(e,t){return e===void 0?t:e}};var On=class extends R{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`,Dn.boolean(t.locked,!0)?void 0:`0`),r(`hidden`,Dn.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}},kn=class extends R{constructor(e){super(),this.xfId=!!(e&&e.xfId),this.map={alignment:new En,protection:new On}}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),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`}},An=class extends R{constructor(){super(),this.map={alignment:new En,border:new yn,fill:new _n,font:new pn,numFmt:new Cn,protection:new On}}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}},jn=class e extends R{constructor(t){super(),this.map={numFmts:new B({tag:`numFmts`,count:!0,childXform:new Cn}),fonts:new B({tag:`fonts`,count:!0,childXform:new pn,$:{"x14ac:knownFonts":1}}),fills:new B({tag:`fills`,count:!0,childXform:new _n}),borders:new B({tag:`borders`,count:!0,childXform:new yn}),cellStyleXfs:new B({tag:`cellStyleXfs`,count:!0,childXform:new kn}),cellXfs:new B({tag:`cellXfs`,count:!0,childXform:new kn({xfId:!0})}),dxfs:new B({tag:`dxfs`,always:!0,count:!0,childXform:new An}),numFmt:new Cn,font:new pn,fill:new _n,border:new yn,style:new kn({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}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;if(this.model.fonts.length||this._addFont({size:11,color:{theme:1},name:`Calibri`,family:2,scheme:`minor`}),this.weakMap&&this.weakMap.has(e))return this.weakMap.get(e);let n={},r=t||u.ValueType.Number;if(e.numFmt)n.numFmtId=this._addNumFmtStr(e.numFmt);else switch(r){case u.ValueType.Number:n.numFmtId=this._addNumFmtStr(`General`);break;case u.ValueType.Date:n.numFmtId=this._addNumFmtStr(`mm-dd-yy`);break;default:break}e.font&&(n.fontId=this._addFont(e.font)),e.border&&(n.borderId=this._addBorder(e.border)),e.fill&&(n.fillId=this._addFill(e.fill)),e.alignment&&(n.alignment=e.alignment),e.protection&&(n.protection=e.protection);let i=this._addStyle(n);return 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]||Cn.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]}_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=Cn.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 z({tag:`cellStyles`,$:{count:1},c:[{tag:`cellStyle`,$:{name:`Normal`,xfId:0,builtinId:0}}]}),dxfs:new z({tag:`dxfs`,$:{count:0}}),tableStyles:new z({tag:`tableStyles`,$:{count:0,defaultTableStyle:`TableStyleMedium2`,defaultPivotStyle:`PivotStyleLight16`}}),extLst:new z({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`}}]}]})}}};jn.Mock=class extends jn{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.Date:return this.dateStyleId;default:return 0}}get dateStyleId(){if(!this._dateStyleId){let e={numFmtId:Cn.getDefaultFmtId(`mm-dd-yy`)};this._dateStyleId=this.model.styles.length,this.model.styles.push(e)}return this._dateStyleId}getStyleModel(){return{}}};var Mn=class extends R{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}},Nn=class e extends R{constructor(){super(),this.map={"dc:creator":new W({tag:`dc:creator`}),"dc:title":new W({tag:`dc:title`}),"dc:subject":new W({tag:`dc:subject`}),"dc:description":new W({tag:`dc:description`}),"dc:identifier":new W({tag:`dc:identifier`}),"dc:language":new W({tag:`dc:language`}),"cp:keywords":new W({tag:`cp:keywords`}),"cp:category":new W({tag:`cp:category`}),"cp:lastModifiedBy":new W({tag:`cp:lastModifiedBy`}),"cp:lastPrinted":new Mn({tag:`cp:lastPrinted`,format:e.DateFormat}),"cp:revision":new U({tag:`cp:revision`}),"cp:version":new W({tag:`cp:version`}),"cp:contentStatus":new W({tag:`cp:contentStatus`}),"cp:contentType":new W({tag:`cp:contentType`}),"dcterms:created":new Mn({tag:`dcterms:created`,attrs:e.DateAttrs,format:e.DateFormat}),"dcterms:modified":new Mn({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`}}},Pn=class extends R{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}},Fn=class e extends R{constructor(e){super(),this.model=e}get tag(){return`r`}get textXform(){return this._textXform||=new Pn}get fontXform(){return this._fontXform||=new pn(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`}}},In=class extends R{constructor(){super(),this.map={r:new Fn,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}}},Ln=class extends R{constructor(e){super(),this.model=e,this.map={r:new Fn,t:new Pn,rPh:new In}}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}}},Rn=class extends R{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}`)}}},zn=class extends R{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}},K=class e extends R{constructor(){super(),this.map={Relationship:new zn}}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`}}},Bn=class e extends R{render(t,n){t.openXml(F.StdDocAttributes),t.openNode(`Types`,e.PROPERTY_ATTRIBUTES);let r={};(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:`/xl/workbook.xml`,ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml`}),n.worksheets.forEach((e,n)=>{let r=`/xl/worksheets/sheet${e.fileIndex||n+1}.xml`;t.leafNode(`Override`,{PartName:r,ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml`})}),(n.pivotTables||[]).length&&(n.pivotTables||[]).forEach(e=>{let n=e.tableNumber;t.leafNode(`Override`,{PartName:`/xl/pivotCache/pivotCacheDefinition${n}.xml`,ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheDefinition+xml`}),t.leafNode(`Override`,{PartName:`/xl/pivotCache/pivotCacheRecords${n}.xml`,ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheRecords+xml`})}),t.leafNode(`Override`,{PartName:`/xl/theme/theme1.xml`,ContentType:`application/vnd.openxmlformats-officedocument.theme+xml`}),t.leafNode(`Override`,{PartName:`/xl/styles.xml`,ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml`}),n.sharedStrings&&n.sharedStrings.count&&t.leafNode(`Override`,{PartName:`/xl/sharedStrings.xml`,ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml`}),n.tables&&n.tables.forEach(e=>{t.leafNode(`Override`,{PartName:`/xl/tables/${e.target}`,ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml`})}),(n.pivotTables||[]).length&&(n.pivotTables||[]).forEach(e=>{let n=e.tableNumber;t.leafNode(`Override`,{PartName:`/xl/pivotTables/pivotTable${n}.xml`,ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml`})}),n.drawings&&n.drawings.forEach(e=>{t.leafNode(`Override`,{PartName:`/xl/drawings/${e.name}.xml`,ContentType:`application/vnd.openxmlformats-officedocument.drawing+xml`})}),n.commentRefs&&n.commentRefs.length&&(t.leafNode(`Default`,{Extension:`vml`,ContentType:`application/vnd.openxmlformats-officedocument.vmlDrawing`}),n.commentRefs.forEach(({commentName:e})=>{t.leafNode(`Override`,{PartName:`/xl/${e}.xml`,ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml`})})),t.leafNode(`Override`,{PartName:`/docProps/core.xml`,ContentType:`application/vnd.openxmlformats-package.core-properties+xml`}),t.leafNode(`Override`,{PartName:`/docProps/app.xml`,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`}}},Vn=class extends R{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`}},Hn=class extends R{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`}},Un=class e extends R{constructor(){super(),this.map={Company:new W({tag:`Company`}),Manager:new W({tag:`Manager`}),HeadingPairs:new Vn,TitleOfParts:new Hn}}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`}}},Wn=class extends R{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:Yn(this._parsedText.join(``))},this._parsedLocalSheetId!==void 0&&(this.model.localSheetId=parseInt(this._parsedLocalSheetId,10)),!1}};let Gn=/^[$]?[A-Za-z]{1,3}[$]?\d+(:[$]?[A-Za-z]{1,3}[$]?\d+)?$/,Kn=/^[$]?\d+:[$]?\d+$/,qn=/^[$]?[A-Za-z]{1,3}:[$]?[A-Za-z]{1,3}$/;function Jn(e){if(e.startsWith(`{`)||e.endsWith(`}`))return!1;let t=e.split(`!`).pop()||``;if(!Gn.test(t)&&!Kn.test(t)&&!qn.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 Yn(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},`:Jn(e)&&n.push(e);return}let a=t%2==0;!r&&a&&Jn(e)?n.push(e):r&&!a?(r=!1,Jn(i+e)&&n.push(i+e),i=``):(r=!0,i+=`${e},`)}),n}var Xn=class extends R{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}},Zn=class extends R{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}},Qn=class extends R{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}},$n=class extends R{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}},er=class extends R{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}},tr=class e extends R{constructor(){super(),this.map={fileVersion:e.STATIC_XFORMS.fileVersion,workbookPr:new Qn,bookViews:new B({tag:`bookViews`,count:!1,childXform:new Zn}),sheets:new B({tag:`sheets`,count:!1,childXform:new Xn}),definedNames:new B({tag:`definedNames`,count:!1,childXform:new Wn}),calcPr:new $n,pivotCaches:new B({tag:`pivotCaches`,count:!1,childXform:new er})}}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 z({tag:`fileVersion`,$:{appName:`xl`,lastEdited:5,lowestEdited:5,rupBuild:9303}})}}};let q={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`};var nr=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 rr(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 ir(e){switch(e.type){case u.ValueType.Formula:return rr(e.result);default:return e.type}}var ar=class extends R{constructor(){super(),this.richTextXform=new Fn}get tag(){return`c`}prepare(e,t){let n=t.styles.addStyleModel(e.style||{},ir(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(rr(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.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&&ke(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&&ke(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)}},or=class extends R{constructor(e){super(),this.maxItems=e&&e.maxItems,this.map={c:new ar}}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)),M(e.attributes.hidden)&&(n.hidden=!0),M(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)),M(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)})}},sr=class extends R{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)),M(e.attributes.hidden)&&(t.hidden=!0),M(e.attributes.bestFit)&&(t.bestFit=!0),e.attributes.outlineLevel&&(t.outlineLevel=parseInt(e.attributes.outlineLevel,10)),M(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))}},cr=class extends R{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}},lr=class extends R{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))}},ur=class extends R{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 dr(e,t,n,r){let i=t[n];i===void 0?r!==void 0&&(e[n]=r):e[n]=i}function fr(e,t,n,r){let i=t[n];i===void 0?r!==void 0&&(e[n]=r):e[n]=M(i)}function pr(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 mr=class extends R{get tag(){return`dataValidations`}render(e,t){let n=pr(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&&fr(t,e.attributes,`allowBlank`),fr(t,e.attributes,`showInputMessage`),fr(t,e.attributes,`showErrorMessage`),t.type){case`any`:case`list`:case`custom`:break;default:dr(t,e.attributes,`operator`,`between`);break}return dr(t,e.attributes,`promptTitle`),dr(t,e.attributes,`prompt`),dr(t,e.attributes,`errorStyle`),dr(t,e.attributes,`errorTitle`),dr(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=>{if(e.includes(`:`)){let t=new r(e);(t.bottom-t.top+1)*(t.right-t.left+1)<=1e3?t.forEachAddress(e=>{this.model[e]=this._dataValidation}):this.model[`range:${e}`]=this._dataValidation}else 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}}},hr=class extends R{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 gr=e=>e!==void 0;var _r=class extends R{get tag(){return`outlinePr`}render(e,t){return t&&(gr(t.summaryBelow)||gr(t.summaryRight))?(e.leafNode(this.tag,{summaryBelow:gr(t.summaryBelow)?Number(t.summaryBelow):void 0,summaryRight:gr(t.summaryRight)?Number(t.summaryRight):void 0}),!0):!1}parseOpen(e){return e.name===this.tag?(this.model={summaryBelow:gr(e.attributes.summaryBelow)?!!Number(e.attributes.summaryBelow):void 0,summaryRight:gr(e.attributes.summaryRight)?!!Number(e.attributes.summaryRight):void 0},!0):!1}parseText(){}parseClose(){return!1}},vr=class extends R{constructor(){super(),this.map={tabColor:new V(`tabColor`),pageSetUpPr:new hr,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)}},yr=class extends R{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 br={frozen:`frozen`,frozenSplit:`frozen`,split:`split`};var xr=class extends R{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:br[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 J(e,t){return e?t:void 0}function Y(e,t){return e===t?!0:void 0}var Sr=class extends R{get tag(){return`sheetProtection`}render(e,t){if(t){let n={sheet:J(t.sheet,`1`),selectLockedCells:t.selectLockedCells===!1?`1`:void 0,selectUnlockedCells:t.selectUnlockedCells===!1?`1`:void 0,formatCells:J(t.formatCells,`0`),formatColumns:J(t.formatColumns,`0`),formatRows:J(t.formatRows,`0`),insertColumns:J(t.insertColumns,`0`),insertRows:J(t.insertRows,`0`),insertHyperlinks:J(t.insertHyperlinks,`0`),deleteColumns:J(t.deleteColumns,`0`),deleteRows:J(t.deleteRows,`0`),sort:J(t.sort,`0`),autoFilter:J(t.autoFilter,`0`),pivotTables:J(t.pivotTables,`0`)};t.sheet&&(n.algorithmName=t.algorithmName,n.hashValue=t.hashValue,n.saltValue=t.saltValue,n.spinCount=t.spinCount,n.objects=J(t.objects===!1,`1`),n.scenarios=J(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:Y(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:Y(e.attributes.formatCells,`0`),formatColumns:Y(e.attributes.formatColumns,`0`),formatRows:Y(e.attributes.formatRows,`0`),insertColumns:Y(e.attributes.insertColumns,`0`),insertRows:Y(e.attributes.insertRows,`0`),insertHyperlinks:Y(e.attributes.insertHyperlinks,`0`),deleteColumns:Y(e.attributes.deleteColumns,`0`),deleteRows:Y(e.attributes.deleteRows,`0`),sort:Y(e.attributes.sort,`0`),autoFilter:Y(e.attributes.autoFilter,`0`),pivotTables:Y(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}},Cr=class extends R{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 wr(e){return e?`1`:void 0}function Tr(e){switch(e){case`overThenDown`:return e;default:return}}function Er(e){switch(e){case`atEnd`:case`asDisplyed`:return e;default:return}}function Dr(e){switch(e){case`dash`:case`blank`:case`NA`:return e;default:return}}function Or(e){return e===void 0?void 0:parseInt(e,10)}var kr=class extends R{get tag(){return`pageSetup`}render(e,t){if(t){let n={paperSize:t.paperSize,orientation:t.orientation,horizontalDpi:t.horizontalDpi,verticalDpi:t.verticalDpi,pageOrder:Tr(t.pageOrder),blackAndWhite:wr(t.blackAndWhite),draft:wr(t.draft),cellComments:Er(t.cellComments),errors:Dr(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:wr(!!t.firstPageNumber),usePrinterDefaults:wr(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:Or(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 Ar(e){return e?`1`:void 0}var jr=class extends R{get tag(){return`printOptions`}render(e,t){if(t){let n={headings:Ar(t.showRowColHeaders),gridLines:Ar(t.showGridLines),horizontalCentered:Ar(t.horizontalCentered),verticalCentered:Ar(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}},Mr=class extends R{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)}},Nr=class extends R{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}},Pr=class extends R{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}},Fr=class extends R{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}},Ir=class extends R{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}},Lr=class extends B{constructor(){super({tag:`rowBreaks`,count:!0,childXform:new Ir})}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()}}},Rr=class extends B{constructor(){super({tag:`colBreaks`,count:!0,childXform:new Ir})}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()}}},zr=class extends R{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}}},X=class extends R{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``}},Br=class extends R{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:R.toFloatValue(e.attributes.val)}}parseClose(e){return e!==this.tag}},Vr=class extends X{constructor(){super(),this.map={cfvo:this.cfvoXform=new Br,color:this.colorXform=new V}}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}}},Hr=class extends R{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}},Ur=class extends X{constructor(){super(),this.map={"x14:id":this.idXform=new Hr}}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}},Wr=class extends X{constructor(){super(),this.map={ext:new Ur}}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)}},Gr=class extends R{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}},Kr=class extends X{constructor(){super(),this.map={cfvo:this.cfvoXform=new Br,color:this.colorXform=new V}}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)}},qr=class extends X{constructor(){super(),this.map={cfvo:this.cfvoXform=new Br}}get tag(){return`iconSet`}render(e,t){e.openNode(this.tag,{iconSet:R.toStringAttribute(t.iconSet,`3TrafficLights`),reverse:R.toBoolAttribute(t.reverse,!1),showValue:R.toBoolAttribute(t.showValue,!0)}),t.cfvo.forEach(t=>{this.cfvoXform.render(e,t)}),e.closeNode()}createNewModel({attributes:e}){return{iconSet:R.toStringValue(e.iconSet,`3TrafficLights`),reverse:R.toBoolValue(e.reverse),showValue:R.toBoolValue(e.showValue),cfvo:[]}}onParserClose(e,t){this.model[e].push(t.model)}};let Jr={"3Triangles":!0,"3Stars":!0,"5Boxes":!0},Yr=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}},Xr=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}},Zr=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 Qr=class e extends X{constructor(){super(),this.map={dataBar:this.databarXform=new Vr,extLst:this.extLstRefXform=new Wr,formula:this.formulaXform=new Gr,colorScale:this.colorScaleXform=new Kr,iconSet:this.iconSetXform=new qr}}get tag(){return`cfRule`}static isPrimitive(e){return!(e.type===`iconSet`&&(e.custom||Jr[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:R.toBoolAttribute(t.percent,!1),bottom:R.toBoolAttribute(t.bottom,!1),rank:R.toIntValue(t.rank,10)})}renderAboveAverage(e,t){e.leafNode(this.tag,{type:`aboveAverage`,dxfId:t.dxfId,priority:t.priority,aboveAverage:R.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:R.toStringAttribute(t.operator,`containsText`)});let n=Yr(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=Xr(t);n&&this.formulaXform.render(e,n),e.closeNode()}createNewModel({attributes:e}){return{...Zr(e),dxfId:R.toIntValue(e.dxfId),priority:R.toIntValue(e.priority),timePeriod:e.timePeriod,percent:R.toBoolValue(e.percent),bottom:R.toBoolValue(e.bottom),rank:R.toIntValue(e.rank),aboveAverage:R.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}}},$r=class extends X{constructor(){super(),this.map={cfRule:new Qr}}get tag(){return`conditionalFormatting`}render(e,t){t.rules.some(Qr.isPrimitive)&&(e.openNode(this.tag,{sqref:t.ref}),t.rules.forEach(n=>{Qr.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)}},ei=class extends R{constructor(){super(),this.cfXform=new $r}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)})})}},ti=class extends R{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}},ni=class extends X{constructor(){super(),this.map={"xm:f":this.fExtXform=new ti}}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}}},ri=class extends X{constructor(){super(),this.map={"x14:cfvo":this.cfvoXform=new ni,"x14:borderColor":this.borderColorXform=new V(`x14:borderColor`),"x14:negativeBorderColor":this.negativeBorderColorXform=new V(`x14:negativeBorderColor`),"x14:negativeFillColor":this.negativeFillColorXform=new V(`x14:negativeFillColor`),"x14:axisColor":this.axisColorXform=new V(`x14:axisColor`)}}static isExt(e){return!e.gradient}get tag(){return`x14:dataBar`}render(e,t){e.openNode(this.tag,{minLength:R.toIntAttribute(t.minLength,0,!0),maxLength:R.toIntAttribute(t.maxLength,100,!0),border:R.toBoolAttribute(t.border,!1),gradient:R.toBoolAttribute(t.gradient,!0),negativeBarColorSameAsPositive:R.toBoolAttribute(t.negativeBarColorSameAsPositive,!0),negativeBarBorderColorSameAsPositive:R.toBoolAttribute(t.negativeBarBorderColorSameAsPositive,!0),axisPosition:R.toAttribute(t.axisPosition,`auto`),direction:R.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:R.toIntValue(e.minLength,0),maxLength:R.toIntValue(e.maxLength,100),border:R.toBoolValue(e.border,!1),gradient:R.toBoolValue(e.gradient,!0),negativeBarColorSameAsPositive:R.toBoolValue(e.negativeBarColorSameAsPositive,!0),negativeBarBorderColorSameAsPositive:R.toBoolValue(e.negativeBarBorderColorSameAsPositive,!0),axisPosition:R.toStringValue(e.axisPosition,`auto`),direction:R.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}}},ii=class extends R{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:R.toIntValue(e.iconId)}}parseClose(e){return e!==this.tag}},ai=class extends X{constructor(){super(),this.map={"x14:cfvo":this.cfvoXform=new ni,"x14:cfIcon":this.cfIconXform=new ii}}get tag(){return`x14:iconSet`}render(e,t){e.openNode(this.tag,{iconSet:R.toStringAttribute(t.iconSet),reverse:R.toBoolAttribute(t.reverse,!1),showValue:R.toBoolAttribute(t.showValue,!0),custom:R.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:R.toStringValue(e.iconSet,`3TrafficLights`),reverse:R.toBoolValue(e.reverse,!1),showValue:R.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}}};let oi={"3Triangles":!0,"3Stars":!0,"5Boxes":!0};var si=class e extends X{constructor(){super(),this.map={"x14:dataBar":this.databarXform=new ri,"x14:iconSet":this.iconSetXform=new ai}}get tag(){return`x14:cfRule`}static isExt(e){return e.type===`dataBar`?ri.isExt(e):!!(e.type===`iconSet`&&(e.custom||oi[e.iconSet]))}prepare(t){e.isExt(t)&&(t.x14Id=`{${crypto.randomUUID()}}`.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||`{${crypto.randomUUID()}}`}),this.iconSetXform.render(e,t),e.closeNode()}createNewModel({attributes:e}){return{type:e.type,x14Id:e.id,priority:R.toIntValue(e.priority)}}onParserClose(e,t){Object.assign(this.model,t.model)}},ci=class extends R{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}},li=class extends X{constructor(){super(),this.map={"xm:sqref":this.sqRef=new ci,"x14:cfRule":this.cfRule=new si}}get tag(){return`x14:conditionalFormatting`}prepare(e){e.rules.forEach(e=>{this.cfRule.prepare(e)})}render(e,t){t.rules.some(si.isExt)&&(e.openNode(this.tag,{"xmlns:xm":`http://schemas.microsoft.com/office/excel/2006/main`}),t.rules.filter(si.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}}},ui=class extends X{constructor(){super(),this.map={"x14:conditionalFormatting":this.cfXform=new li}}get tag(){return`x14:conditionalFormattings`}hasContent(e){return e.hasExtContent===void 0&&(e.hasExtContent=e.some(e=>e.rules.some(si.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)}},di=class extends X{constructor(){super(),this.map={"x14:conditionalFormattings":this.conditionalFormattings=new ui}}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}},fi=class extends X{constructor(){super(),this.map={ext:this.ext=new di}}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 pi=(e,t)=>{Object.keys(t).forEach(n=>{let r=e[n],i=t[n];r===void 0&&i!==void 0&&(e[n]=i)})},mi=(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?pi(a,i):n[t.ref]?n[t.ref].rules.push(i):e.push({ref:t.ref,rules:[i]})})}),e};var hi=class e extends R{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 vr,dimension:new cr,sheetViews:new B({tag:`sheetViews`,count:!1,childXform:new xr}),sheetFormatPr:new yr,cols:new B({tag:`cols`,count:!1,childXform:new sr}),sheetData:new B({tag:`sheetData`,count:!1,empty:!0,childXform:new or({maxItems:n}),maxItems:t}),autoFilter:new Mr,mergeCells:new B({tag:`mergeCells`,count:!0,childXform:new ur}),rowBreaks:new Lr,colBreaks:new Rr,hyperlinks:new B({tag:`hyperlinks`,count:!1,childXform:new lr}),pageMargins:new Cr,dataValidations:new mr,pageSetup:new kr,headerFooter:new zr,printOptions:new jr,picture:new Nr,drawing:new Pr,sheetProtection:new Sr,tableParts:new B({tag:`tableParts`,count:!0,childXform:new Fr}),conditionalFormatting:new ei,extLst:new fi}}prepare(e,t){t.merges=new nr,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:q.Hyperlink,Target:e.target,TargetMode:`External`})}),e.comments.length>0){let a={Id:i(r),Type:q.Comments,Target:`../comments${e.id}.xml`};r.push(a);let o={Id:i(r),Type:q.VmlDrawing,Target:`../drawings/vmlDrawing${e.id}.vml`};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;e.media.forEach(n=>{if(n.type===`background`){let a=i(r);o=t.media[n.imageId],r.push({Id:a,Type:q.Image,Target:`../media/${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:`../drawings/${s.name}.xml`}));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:`../media/${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:q.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:q.Table,Target:`../tables/${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:q.PivotTable,Target:`../pivotTables/pivotTable${e.tableNumber}.xml`})}),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;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),this.map.extLst.render(t,n),n.rels&&n.rels.forEach(e=>{e.Type===q.VmlDrawing&&t.leafNode(`legacyDrawing`,{"r:id":e.Id})}),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=mi(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===q.Comments&&(e.comments=t.comments[r.Target].comments),r.Type===q.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===q.PivotTable&&t.pivotTables){let r=t.pivotTables[n.Target];r&&e.pivotTables.push(r)}}),delete e.relationships,delete e.hyperlinks,delete e.comments}},gi=class extends R{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]}}}},_i=class extends R{constructor(e){super(),this.tag=e.tag,this.map={"xdr:col":new U({tag:`xdr:col`,zero:!0}),"xdr:colOff":new U({tag:`xdr:colOff`,zero:!0}),"xdr:row":new U({tag:`xdr:row`,zero:!0}),"xdr:rowOff":new U({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}}},vi=class extends R{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}}},yi=class extends R{constructor(){super(),this.map={"a:blip":new vi}}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}}},bi=class extends R{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}},xi=class extends R{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}}},Si=class extends R{constructor(){super(),this.map={"a:hlinkClick":new bi,"a:extLst":new xi}}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}}},Ci=class extends R{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}}},wi=class extends R{constructor(){super(),this.map={"xdr:cNvPr":new Si,"xdr:cNvPicPr":new Ci}}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 Ti={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 Ei=class extends R{constructor(){super(),this.map={"xdr:nvPicPr":new wi,"xdr:blipFill":new yi,"xdr:spPr":new z(Ti)}}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}}},Di=class extends gi{constructor(){super(),this.map={"xdr:from":new _i({tag:`xdr:from`}),"xdr:to":new _i({tag:`xdr:to`}),"xdr:pic":new Ei,"xdr:clientData":new z({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 Oi=9525;var ki=class extends R{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*Oi),r=Math.floor(t.height*Oi);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)/Oi,height:parseInt(e.attributes.cy||`0`,10)/Oi},!0):!1}parseText(e){}parseClose(e){return!1}},Ai=class extends gi{constructor(){super(),this.map={"xdr:from":new _i({tag:`xdr:from`}),"xdr:ext":new ki({tag:`xdr:ext`}),"xdr:pic":new Ei,"xdr:clientData":new z({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 ji(e){return(typeof e.range==`string`?n.decode(e.range):e.range).br?`xdr:twoCellAnchor`:`xdr:oneCellAnchor`}var Mi=class e extends R{constructor(){super(),this.map={"xdr:twoCellAnchor":new Di,"xdr:oneCellAnchor":new Ai},this.model={anchors:[]}}prepare(e){e.anchors.forEach((e,t)=>{e.anchorType=ji(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`}}},Ni=class extends R{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}},Pi=class extends R{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}},Fi=class extends R{constructor(){super(),this.map={customFilters:new B({tag:`customFilters`,count:!1,empty:!0,childXform:new Ni}),filters:new B({tag:`filters`,count:!1,empty:!0,childXform:new Pi})},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}}},Ii=class extends R{constructor(){super(),this.map={filterColumn:new Fi},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}`)}}},Li=class extends R{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}},Ri=class extends R{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}},zi=class e extends R{constructor(){super(),this.map={autoFilter:new Ii,tableColumns:new B({tag:`tableColumns`,count:!0,empty:!0,childXform:new Li}),tableStyleInfo:new Ri},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`}}},Bi=class e extends R{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):gt(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(vt(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(yt(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:(gt(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&&(vt(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(yt(e)){this.name+=I(e);return}e===61?this.state=8:gt(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():vt(e)?(this.name=I(e),this.state=6):(this.fail(`unexpected character`),this.state=5)))}sAttribValue(){let e=this.skipSpaces();e!==-1&&(_t(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&&(gt(e)?this.state=5:e===62?this.openTag():e===47?this.state=4:vt(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&&(yt(e)?this.name+=I(e):e===62?this.closeTag():gt(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):_t(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:_t(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 yt(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)||!bt(t)?(this.fail(`invalid character entity`),`&`+e+`;`):String.fromCodePoint(t)}skipSpaces(){for(;;){let e=this.getCode();if(e===-1||!gt(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*Ct(e){let t=new St({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=Oe(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(Ct(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 wt(e,t){e.openNode(t.tag,t.$),t.c&&t.c.forEach(t=>{wt(e,t)}),t.t&&e.writeText(t.t),e.closeNode()}var Tt=class extends L{constructor(e){super(),this._model=e}render(e){if(!this._xml){let e=new F;wt(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}},Et=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}},Dt=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}},Ot=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}},kt=class e extends L{constructor(t){super(),this.options=t||e.OPTIONS;let n=[{tag:`b`,prop:`bold`,xform:new Et({tag:`b`,attr:`val`})},{tag:`i`,prop:`italic`,xform:new Et({tag:`i`,attr:`val`})},{tag:`u`,prop:`underline`,xform:new Ot},{tag:`strike`,prop:`strike`,xform:new Et({tag:`strike`,attr:`val`})},{tag:`condense`,prop:`condense`,xform:new Et({tag:`condense`,attr:`val`})},{tag:`extend`,prop:`extend`,xform:new Et({tag:`extend`,attr:`val`})},{tag:`outline`,prop:`outline`,xform:new Et({tag:`outline`,attr:`val`})},{tag:`shadow`,prop:`shadow`,xform:new Et({tag:`shadow`,attr:`val`})},{tag:`sz`,prop:`size`,xform:new Dt({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 Dt({tag:`family`,attr:`val`})},{tag:`scheme`,prop:`scheme`,xform:new B({tag:`scheme`,attr:`val`})},{tag:`charset`,prop:`charset`,xform:new Dt({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`}}},At=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}},jt=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}},Mt=class extends L{constructor(){super(),this.map={stop:new At}}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}},Nt=class e extends L{constructor(){super(),this.map={patternFill:new jt,gradientFill:new Mt}}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=At}static{this.PatternFillXform=jt}static{this.GradientFillXform=Mt}},Pt=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),{})}},Ft=class extends L{constructor(){super(),this.map={top:new Pt(`top`),left:new Pt(`left`),bottom:new Pt(`bottom`),right:new Pt(`right`),diagonal:new Pt(`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 It={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 Lt(){let e={};return Object.entries(It).forEach(([t,n])=>{n.f&&(e[n.f]=parseInt(t,10))}),e}let Rt=Lt();var zt=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 Rt[e]}static getDefaultFmtCode(e){return It[e]&&It[e].f}};let Bt={ReadingOrder:{LeftToRight:1,RightToLeft:2}},Vt={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=Se(e);return t!==void 0&&t>=-90&&t<=90?t:void 0}}},indent(e){let t=Se(e);return Math.max(0,t)},readingOrder(e){switch(e){case`ltr`:return Bt.ReadingOrder.LeftToRight;case`rtl`:return Bt.ReadingOrder.RightToLeft;default:return}}},Ht={toXml(e){let t=Vt.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=Se(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 Ut=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`,Vt.horizontal(t.horizontal)),r(`vertical`,Vt.vertical(t.vertical)),r(`wrapText`,Vt.wrapText(t.wrapText)?`1`:!1),r(`shrinkToFit`,Vt.shrinkToFit(t.shrinkToFit)?`1`:!1),r(`indent`,Vt.indent(t.indent)),r(`textRotation`,Ht.toXml(t.textRotation)),r(`readingOrder`,Vt.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`,Ht.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 Wt={boolean(e,t){return e===void 0?t:e}};var Gt=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`,Wt.boolean(t.locked,!0)?void 0:`0`),r(`hidden`,Wt.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}},Kt=class extends L{constructor(e){super(),this.xfId=!!(e&&e.xfId),this.map={alignment:new Ut,protection:new Gt}}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),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`}},qt=class extends L{constructor(){super(),this.map={alignment:new Ut,border:new Ft,fill:new Nt,font:new kt,numFmt:new zt,protection:new Gt}}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 zt}),fonts:new R({tag:`fonts`,count:!0,childXform:new kt,$:{"x14ac:knownFonts":1}}),fills:new R({tag:`fills`,count:!0,childXform:new Nt}),borders:new R({tag:`borders`,count:!0,childXform:new Ft}),cellStyleXfs:new R({tag:`cellStyleXfs`,count:!0,childXform:new Kt}),cellXfs:new R({tag:`cellXfs`,count:!0,childXform:new Kt({xfId:!0})}),dxfs:new R({tag:`dxfs`,always:!0,count:!0,childXform:new qt}),numFmt:new zt,font:new kt,fill:new Nt,border:new Ft,style:new Kt({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}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;if(this.model.fonts.length||this._addFont({size:11,color:{theme:1},name:`Calibri`,family:2,scheme:`minor`}),this.weakMap&&this.weakMap.has(e))return this.weakMap.get(e);let n={},r=t||u.ValueType.Number;if(e.numFmt)n.numFmtId=this._addNumFmtStr(e.numFmt);else switch(r){case u.ValueType.Number:n.numFmtId=this._addNumFmtStr(`General`);break;case u.ValueType.Date:n.numFmtId=this._addNumFmtStr(`mm-dd-yy`);break;default:break}e.font&&(n.fontId=this._addFont(e.font)),e.border&&(n.borderId=this._addBorder(e.border)),e.fill&&(n.fillId=this._addFill(e.fill)),e.alignment&&(n.alignment=e.alignment),e.protection&&(n.protection=e.protection);let i=this._addStyle(n);return 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]||zt.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]}_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=zt.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 Tt({tag:`cellStyles`,$:{count:1},c:[{tag:`cellStyle`,$:{name:`Normal`,xfId:0,builtinId:0}}]}),dxfs:new Tt({tag:`dxfs`,$:{count:0}}),tableStyles:new Tt({tag:`tableStyles`,$:{count:0,defaultTableStyle:`TableStyleMedium2`,defaultPivotStyle:`PivotStyleLight16`}}),extLst:new Tt({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.Date:return this.dateStyleId;default:return 0}}get dateStyleId(){if(!this._dateStyleId){let e={numFmtId:zt.getDefaultFmtId(`mm-dd-yy`)};this._dateStyleId=this.model.styles.length,this.model.styles.push(e)}return this._dateStyleId}getStyleModel(){return{}}};var Jt=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}},Yt=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 Jt({tag:`cp:lastPrinted`,format:e.DateFormat}),"cp:revision":new Dt({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 Jt({tag:`dcterms:created`,attrs:e.DateAttrs,format:e.DateFormat}),"dcterms:modified":new Jt({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`}}},Xt=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}},Zt=class e extends L{constructor(e){super(),this.model=e}get tag(){return`r`}get textXform(){return this._textXform||=new Xt}get fontXform(){return this._fontXform||=new kt(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`}}},Qt=class extends L{constructor(){super(),this.map={r:new Zt,t:new Xt}}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}}},$t=class extends L{constructor(e){super(),this.model=e,this.map={r:new Zt,t:new Xt,rPh:new Qt}}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}}},en=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 $t}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}`)}}},tn=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 tn}}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`},nn=/^xl\/worksheets\/sheet(\d+)[.]xml$/,rn=/^xl\/worksheets\/_rels\/sheet(\d+)[.]xml[.]rels$/,an=/^xl\/theme\/[a-zA-Z0-9]+[.]xml$/,on=/^xl\/media\/([a-zA-Z0-9]+[.][a-zA-Z0-9]{3,4})$/,sn=/^xl\/drawings\/(drawing\d+)[.]xml$/,cn=/^xl\/drawings\/_rels\/(drawing\d+)[.]xml[.]rels$/,ln=/^xl\/drawings\/(vmlDrawing\d+)[.]vml$/,un=/^xl\/comments(\d+)[.]xml$/,dn=/^xl\/tables\/(table\d+)[.]xml$/,fn=/^xl\/pivotTables\/(pivotTable\d+)[.]xml$/,pn=/^xl\/pivotTables\/_rels\/(pivotTable\d+)[.]xml[.]rels$/,mn=/^xl\/pivotCache\/(pivotCacheDefinition\d+)[.]xml$/,hn=/^xl\/pivotCache\/_rels\/(pivotCacheDefinition\d+)[.]xml[.]rels$/,gn=/^xl\/pivotCache\/(pivotCacheRecords\d+)[.]xml$/;function _n(e){return e.startsWith(`/`)?e.slice(1):e}function vn(e){let t=nn.exec(e);if(t)return parseInt(t[1],10)}function yn(e){let t=rn.exec(e);if(t)return parseInt(t[1],10)}function bn(e){return e.startsWith(`xl/media/`)}function xn(e){let t=on.exec(e);return t?t[1]:void 0}function Sn(e){return an.test(e)}function Cn(e){let t=/^xl\/theme\/([a-zA-Z0-9]+)[.]xml$/.exec(e);return t?t[1]:void 0}function wn(e){return bn(e)||Sn(e)}function Tn(e){let t=sn.exec(e);return t?t[1]:void 0}function En(e){let t=cn.exec(e);return t?t[1]:void 0}function Dn(e){let t=ln.exec(e);return t?t[1]:void 0}function On(e){let t=un.exec(e);return t?t[1]:void 0}function kn(e){let t=dn.exec(e);return t?t[1]:void 0}function An(e){let t=fn.exec(e);return t?t[1]:void 0}function jn(e){let t=pn.exec(e);return t?t[1]:void 0}function Mn(e){let t=mn.exec(e);return t?t[1]:void 0}function Nn(e){let t=hn.exec(e);return t?t[1]:void 0}function Pn(e){let t=gn.exec(e);return t?t[1]:void 0}function W(e){return e.startsWith(`/`)?e:`/${e}`}function Fn(e){return`xl/theme/${e}.xml`}function In(e){return`xl/media/${e}`}function Ln(e){return`xl/worksheets/sheet${e}.xml`}function Rn(e){return`xl/worksheets/_rels/sheet${e}.xml.rels`}function zn(e){return`worksheets/sheet${e}.xml`}function Bn(e){return`xl/comments${e}.xml`}function Vn(e){return`xl/${e}.xml`}function Hn(e){return`xl/drawings/vmlDrawing${e}.vml`}function Un(e){return`xl/tables/${e}`}function Wn(e){return`xl/drawings/${e}.xml`}function Gn(e){return`xl/drawings/_rels/${e}.xml.rels`}function Kn(e){return`xl/pivotCache/pivotCacheDefinition${e}.xml`}function qn(e){return`xl/pivotCache/_rels/pivotCacheDefinition${e}.xml.rels`}function Jn(e){return`xl/pivotCache/pivotCacheRecords${e}.xml`}function Yn(e){return`pivotCacheRecords${e}.xml`}function Xn(e){return`xl/pivotTables/pivotTable${e}.xml`}function Zn(e){return`xl/pivotTables/_rels/pivotTable${e}.xml.rels`}function Qn(e){return`../pivotCache/pivotCacheDefinition${e}.xml`}let $n={workbookStyles:`styles.xml`,workbookSharedStrings:`sharedStrings.xml`,workbookTheme1:`theme/theme1.xml`};function er(e){return`pivotCache/pivotCacheDefinition${e}.xml`}function tr(e){return`../comments${e}.xml`}function nr(e){return`../drawings/vmlDrawing${e}.vml`}function rr(e){return`../drawings/${e}.xml`}function ir(e){return`../drawings/${e}.vml`}function ar(e){return`../${e}.xml`}function or(e){return`../pivotTables/pivotTable${e}.xml`}function sr(e){return`../pivotTables/${e}.xml`}function cr(e){return`../tables/${e}`}function lr(e){return`../tables/${e}.xml`}function ur(e){return`../media/${e}`}var dr=class e extends L{render(t,n){t.openXml(F.StdDocAttributes),t.openNode(`Types`,e.PROPERTY_ATTRIBUTES);let r={};(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(Ln(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(Kn(n)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheDefinition+xml`}),t.leafNode(`Override`,{PartName:W(Jn(n)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheRecords+xml`}),t.leafNode(`Override`,{PartName:W(Xn(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.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(Un(e.target)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml`})}),n.drawings&&n.drawings.forEach(e=>{t.leafNode(`Override`,{PartName:W(Wn(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(Vn(e)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.comments+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`}}},fr=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`}},pr=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`}},mr=class e extends L{constructor(){super(),this.map={Company:new B({tag:`Company`}),Manager:new B({tag:`Manager`}),HeadingPairs:new fr,TitleOfParts:new pr}}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`}}},hr=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:br(this._parsedText.join(``))},this._parsedLocalSheetId!==void 0&&(this.model.localSheetId=parseInt(this._parsedLocalSheetId,10)),!1}};let gr=/^[$]?[A-Za-z]{1,3}[$]?\d+(:[$]?[A-Za-z]{1,3}[$]?\d+)?$/,_r=/^[$]?\d+:[$]?\d+$/,vr=/^[$]?[A-Za-z]{1,3}:[$]?[A-Za-z]{1,3}$/;function yr(e){if(e.startsWith(`{`)||e.endsWith(`}`))return!1;let t=e.split(`!`).pop()||``;if(!gr.test(t)&&!_r.test(t)&&!vr.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 br(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},`:yr(e)&&n.push(e);return}let a=t%2==0;!r&&a&&yr(e)?n.push(e):r&&!a?(r=!1,yr(i+e)&&n.push(i+e),i=``):(r=!0,i+=`${e},`)}),n}var xr=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:ye(e.attributes.name),id:parseInt(e.attributes.sheetId,10),state:e.attributes.state,rId:e.attributes[`r:id`]},!0):!1}parseText(){}parseClose(){return!1}},Sr=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}},Cr=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}},wr=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}},Tr=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}},Er=class e extends L{constructor(){super(),this.map={fileVersion:e.STATIC_XFORMS.fileVersion,workbookPr:new Cr,bookViews:new R({tag:`bookViews`,count:!1,childXform:new Sr}),sheets:new R({tag:`sheets`,count:!1,childXform:new xr}),definedNames:new R({tag:`definedNames`,count:!1,childXform:new hr}),calcPr:new wr,pivotCaches:new R({tag:`pivotCaches`,count:!1,childXform:new Tr})}}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 Tt({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`};var Dr=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 Or(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 kr(e){switch(e.type){case u.ValueType.Formula:return Or(e.result);default:return e.type}}var Ar=class extends L{constructor(){super(),this.richTextXform=new Zt}get tag(){return`c`}prepare(e,t){let n=t.styles.addStyleModel(e.style||{},kr(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(Or(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,ge(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.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,ge(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=ye(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=ye(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&&Ce(n.numFmt)&&(e.type=u.ValueType.Date,e.value=_e(e.value,t.date1904));break;case u.ValueType.Formula:e.result!==void 0&&typeof e.result==`number`&&n&&Ce(n.numFmt)&&(e.result=_e(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)}},jr=class extends L{constructor(e){super(),this.maxItems=e&&e.maxItems,this.map={c:new Ar}}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)})}},Mr=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))}},Nr=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}},Pr=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))}},Fr=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 Ir(e,t,n,r){let i=t[n];i===void 0?r!==void 0&&(e[n]=r):e[n]=i}function Lr(e,t,n,r){let i=t[n];i===void 0?r!==void 0&&(e[n]=r):e[n]=A(i)}function Rr(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 zr=class extends L{get tag(){return`dataValidations`}render(e,t){let n=Rr(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(ge(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&&Lr(t,e.attributes,`allowBlank`),Lr(t,e.attributes,`showInputMessage`),Lr(t,e.attributes,`showErrorMessage`),t.type){case`any`:case`list`:case`custom`:break;default:Ir(t,e.attributes,`operator`,`between`);break}return Ir(t,e.attributes,`promptTitle`),Ir(t,e.attributes,`prompt`),Ir(t,e.attributes,`errorStyle`),Ir(t,e.attributes,`errorTitle`),Ir(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=_e(parseFloat(e));break;default:break}return this._dataValidation.formulae.push(e),this._formula=void 0,!0}default:return!0}}},Br=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 Vr=e=>e!==void 0;var Hr=class extends L{get tag(){return`outlinePr`}render(e,t){return t&&(Vr(t.summaryBelow)||Vr(t.summaryRight))?(e.leafNode(this.tag,{summaryBelow:Vr(t.summaryBelow)?Number(t.summaryBelow):void 0,summaryRight:Vr(t.summaryRight)?Number(t.summaryRight):void 0}),!0):!1}parseOpen(e){return e.name===this.tag?(this.model={summaryBelow:Vr(e.attributes.summaryBelow)?!!Number(e.attributes.summaryBelow):void 0,summaryRight:Vr(e.attributes.summaryRight)?!!Number(e.attributes.summaryRight):void 0},!0):!1}parseText(){}parseClose(){return!1}},Ur=class extends L{constructor(){super(),this.map={tabColor:new z(`tabColor`),pageSetUpPr:new Br,outlinePr:new Hr}}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)}},Wr=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 Gr={frozen:`frozen`,frozenSplit:`frozen`,split:`split`};var Kr=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:Gr[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 qr=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}},Jr=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 Yr(e){return e?`1`:void 0}function Xr(e){switch(e){case`overThenDown`:return e;default:return}}function Zr(e){switch(e){case`atEnd`:case`asDisplyed`:return e;default:return}}function Qr(e){switch(e){case`dash`:case`blank`:case`NA`:return e;default:return}}function $r(e){return e===void 0?void 0:parseInt(e,10)}var ei=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:Xr(t.pageOrder),blackAndWhite:Yr(t.blackAndWhite),draft:Yr(t.draft),cellComments:Zr(t.cellComments),errors:Qr(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:Yr(!!t.firstPageNumber),usePrinterDefaults:Yr(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:$r(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 ti(e){return e?`1`:void 0}var ni=class extends L{get tag(){return`printOptions`}render(e,t){if(t){let n={headings:ti(t.showRowColHeaders),gridLines:ti(t.showGridLines),horizontalCentered:ti(t.horizontalCentered),verticalCentered:ti(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}},ri=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)}},ii=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}},ai=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}},oi=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}},si=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}},ci=class extends R{constructor(){super({tag:`rowBreaks`,count:!0,childXform:new si})}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()}}},li=class extends R{constructor(){super({tag:`colBreaks`,count:!0,childXform:new si})}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()}}},ui=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``}},di=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}},fi=class extends J{constructor(){super(),this.map={cfvo:this.cfvoXform=new di,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}}},pi=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}},mi=class extends J{constructor(){super(),this.map={"x14:id":this.idXform=new pi}}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}},hi=class extends J{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)}},gi=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}},_i=class extends J{constructor(){super(),this.map={cfvo:this.cfvoXform=new di,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)}},vi=class extends J{constructor(){super(),this.map={cfvo:this.cfvoXform=new di}}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 yi={"3Triangles":!0,"3Stars":!0,"5Boxes":!0},bi=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}},xi=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}},Si=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 Ci=class e extends J{constructor(){super(),this.map={dataBar:this.databarXform=new fi,extLst:this.extLstRefXform=new hi,formula:this.formulaXform=new gi,colorScale:this.colorScaleXform=new _i,iconSet:this.iconSetXform=new vi}}get tag(){return`cfRule`}static isPrimitive(e){return!(e.type===`iconSet`&&(e.custom||yi[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=bi(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=xi(t);n&&this.formulaXform.render(e,n),e.closeNode()}createNewModel({attributes:e}){return{...Si(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}}},wi=class extends J{constructor(){super(),this.map={cfRule:new Ci}}get tag(){return`conditionalFormatting`}render(e,t){t.rules.some(Ci.isPrimitive)&&(e.openNode(this.tag,{sqref:t.ref}),t.rules.forEach(n=>{Ci.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)}},Ti=class extends L{constructor(){super(),this.cfXform=new wi}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)})})}},Ei=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}},Di=class extends J{constructor(){super(),this.map={"xm:f":this.fExtXform=new Ei}}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}}},Oi=class extends J{constructor(){super(),this.map={"x14:cfvo":this.cfvoXform=new Di,"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}}},ki=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}},Ai=class extends J{constructor(){super(),this.map={"x14:cfvo":this.cfvoXform=new Di,"x14:cfIcon":this.cfIconXform=new ki}}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 ji(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 Mi(){let e=globalThis.crypto;if(e?.randomUUID)return e.randomUUID();let t=new Uint8Array(16);if(e?.getRandomValues)return e.getRandomValues(t),ji(t);for(let e=0;e<t.length;e++)t[e]=Math.floor(Math.random()*256);return ji(t)}let Ni={"3Triangles":!0,"3Stars":!0,"5Boxes":!0};var Pi=class e extends J{constructor(){super(),this.map={"x14:dataBar":this.databarXform=new Oi,"x14:iconSet":this.iconSetXform=new Ai}}get tag(){return`x14:cfRule`}static isExt(e){return e.type===`dataBar`?Oi.isExt(e):!!(e.type===`iconSet`&&(e.custom||Ni[e.iconSet]))}prepare(t){e.isExt(t)&&(t.x14Id=`{${Mi()}}`.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||`{${Mi()}}`}),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)}},Fi=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}},Ii=class extends J{constructor(){super(),this.map={"xm:sqref":this.sqRef=new Fi,"x14:cfRule":this.cfRule=new Pi}}get tag(){return`x14:conditionalFormatting`}prepare(e){e.rules.forEach(e=>{this.cfRule.prepare(e)})}render(e,t){t.rules.some(Pi.isExt)&&(e.openNode(this.tag,{"xmlns:xm":`http://schemas.microsoft.com/office/excel/2006/main`}),t.rules.filter(Pi.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}}},Li=class extends J{constructor(){super(),this.map={"x14:conditionalFormatting":this.cfXform=new Ii}}get tag(){return`x14:conditionalFormattings`}hasContent(e){return e.hasExtContent===void 0&&(e.hasExtContent=e.some(e=>e.rules.some(Pi.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)}},Ri=class extends J{constructor(){super(),this.map={"x14:conditionalFormattings":this.conditionalFormattings=new Li}}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}},zi=class extends J{constructor(){super(),this.map={ext:this.ext=new Ri}}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 Bi=(e,t)=>{Object.keys(t).forEach(n=>{let r=e[n],i=t[n];r===void 0&&i!==void 0&&(e[n]=i)})},Vi=(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?Bi(a,i):n[t.ref]?n[t.ref].rules.push(i):e.push({ref:t.ref,rules:[i]})})}),e};var Hi=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 Ur,dimension:new Nr,sheetViews:new R({tag:`sheetViews`,count:!1,childXform:new Kr}),sheetFormatPr:new Wr,cols:new R({tag:`cols`,count:!1,childXform:new Mr}),sheetData:new R({tag:`sheetData`,count:!1,empty:!0,childXform:new jr({maxItems:n}),maxItems:t}),autoFilter:new ri,mergeCells:new R({tag:`mergeCells`,count:!0,childXform:new Fr}),rowBreaks:new ci,colBreaks:new li,hyperlinks:new R({tag:`hyperlinks`,count:!1,childXform:new Pr}),pageMargins:new Jr,dataValidations:new zr,pageSetup:new ei,headerFooter:new ui,printOptions:new ni,picture:new ii,drawing:new ai,sheetProtection:new qr,tableParts:new R({tag:`tableParts`,count:!0,childXform:new oi}),conditionalFormatting:new Ti,extLst:new zi}}prepare(e,t){t.merges=new Dr,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:tr(e.id)};r.push(a);let o={Id:i(r),Type:G.VmlDrawing,Target:nr(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;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:ur(`${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:rr(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:ur(`${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:cr(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:or(e.tableNumber)})}),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;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),this.map.extLst.render(t,n),n.rels&&n.rels.forEach(e=>{e.Type===G.VmlDrawing&&t.leafNode(`legacyDrawing`,{"r:id":e.Id})}),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=Vi(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}},Ui=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]}}}},Wi=class extends L{constructor(e){super(),this.tag=e.tag,this.map={"xdr:col":new Dt({tag:`xdr:col`,zero:!0}),"xdr:colOff":new Dt({tag:`xdr:colOff`,zero:!0}),"xdr:row":new Dt({tag:`xdr:row`,zero:!0}),"xdr:rowOff":new Dt({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}}},Gi=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}}},Ki=class extends L{constructor(){super(),this.map={"a:blip":new Gi}}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}}},qi=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}},Ji=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}}},Yi=class extends L{constructor(){super(),this.map={"a:hlinkClick":new qi,"a:extLst":new Ji}}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}}},Xi=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}}},Zi=class extends L{constructor(){super(),this.map={"xdr:cNvPr":new Yi,"xdr:cNvPicPr":new Xi}}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 Qi={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 $i=class extends L{constructor(){super(),this.map={"xdr:nvPicPr":new Zi,"xdr:blipFill":new Ki,"xdr:spPr":new Tt(Qi)}}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}}},ea=class extends Ui{constructor(){super(),this.map={"xdr:from":new Wi({tag:`xdr:from`}),"xdr:to":new Wi({tag:`xdr:to`}),"xdr:pic":new $i,"xdr:clientData":new Tt({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 ta=9525;var na=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*ta),r=Math.floor(t.height*ta);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)/ta,height:parseInt(e.attributes.cy||`0`,10)/ta},!0):!1}parseText(e){}parseClose(e){return!1}},ra=class extends Ui{constructor(){super(),this.map={"xdr:from":new Wi({tag:`xdr:from`}),"xdr:ext":new na({tag:`xdr:ext`}),"xdr:pic":new $i,"xdr:clientData":new Tt({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 ia(e){return(typeof e.range==`string`?n.decode(e.range):e.range).br?`xdr:twoCellAnchor`:`xdr:oneCellAnchor`}var aa=class e extends L{constructor(){super(),this.map={"xdr:twoCellAnchor":new ea,"xdr:oneCellAnchor":new ra},this.model={anchors:[]}}prepare(e){e.anchors.forEach((e,t)=>{e.anchorType=ia(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`}}},oa=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}},sa=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}},ca=class extends L{constructor(){super(),this.map={customFilters:new R({tag:`customFilters`,count:!1,empty:!0,childXform:new oa}),filters:new R({tag:`filters`,count:!1,empty:!0,childXform:new sa})},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}}},la=class extends L{constructor(){super(),this.map={filterColumn:new ca},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}`)}}},ua=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}},da=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}},fa=class e extends L{constructor(){super(),this.map={autoFilter:new la,tableColumns:new R({tag:`tableColumns`,count:!0,empty:!0,childXform:new ua}),tableStyleInfo:new da},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`}}},pa=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(`
|
|
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="${xe(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="${xe(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:ye(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`}}},ma=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=xe(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="${xe(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(F.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
|
|
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>`}},ha=class extends L{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:ye(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=ye(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}},ga=class e extends L{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(F.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 ma(e).render()).join(`
|
|
29
|
+
`)),t.closeNode(),t.closeNode()}renderLoaded(t,n){let{cacheFields:r,sourceRef:i,sourceSheet:a,recordCount:o}=n;t.openXml(F.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 ma(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 ha,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`}}},_a=class e extends L{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=va(r,o),u=ya(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(F.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
|
+
${xa(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"
|
|
@@ -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:ye(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 va(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 ya(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 ${xe(e[t].name)}"
|
|
112
112
|
fld="${t}"
|
|
113
113
|
baseField="0"
|
|
114
114
|
baseItem="0"${i}
|
|
115
|
-
/>`).join(``)}function
|
|
115
|
+
/>`).join(``)}function xa(e){let t=new Set(e.rows),n=new Set(e.columns),r=new Set(e.values);return e.cacheFields.map((e,i)=>Sa(t.has(i),n.has(i),r.has(i),e.sharedItems)).join(``)}function Sa(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,11 +124,25 @@ 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 Xi=class extends R{constructor(e){super(),this.model=e||{type:`note`,note:{texts:[]},ref:``}}get tag(){return`r`}get richTextXform(){return this._richTextXform||=new Fn,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}}},Zi=class e extends R{constructor(){super(),this.map={comment:new Xi},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`}}},Qi=class extends R{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}}},$i=class extends R{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}},ea=class extends R{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}},ta=class extends R{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 na=[`twoCells`,`oneCells`,`absolute`];var ra=class extends R{constructor(){super(),this.map={"x:Anchor":new $i,"x:Locked":new ea({tag:`x:Locked`}),"x:LockText":new ea({tag:`x:LockText`}),"x:SizeWithCells":new ta({tag:`x:SizeWithCells`}),"x:MoveWithCells":new ta({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,na),this.map[`x:SizeWithCells`].render(e,r,na),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=na[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}},ia=class e extends R{constructor(){super(),this.map={"v:textbox":new Qi,"x:ClientData":new ra}}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})}},aa=class e extends R{constructor(){super(),this.map={"v:shape":new ia},this.model={comments:[]}}get tag(){return`xml`}render(t,n){let r=n||this.model;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(),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(),r.comments.forEach((e,n)=>{this.map[`v:shape`].render(t,e,n)}),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset(),this.model={comments:[]};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}}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:v":`urn:schemas-microsoft-com:vml`,"xmlns:o":`urn:schemas-microsoft-com:office:office`,"xmlns:x":`urn:schemas-microsoft-com:office:excel`}}},oa=class e{static{this.RelType=q}constructor(e){this.workbook=e}parseRels(e){return new K().parseStream(e)}parseWorkbook(e){return new tr().parseStream(e)}parseSharedStrings(e){return new Rn().parseStream(e)}reconcile(e,t){let n=new tr,r=new hi(t),i=new Mi,a=new zi;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[`../pivotTables/${e}.xml`]=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 hi(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 Zi().parseStream(e);t.comments[`../${n}.xml`]=r}async _processTableEntry(e,t,n){let r=await new zi().parseStream(e);t.tables[`../tables/${n}.xml`]=r}async _processWorksheetRelsEntry(e,t,n){let r=await new K().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.removeListener(`error`,u),s.removeListener(`error`,u),s.removeListener(`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.toBuffer?s.toBuffer():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 Mi().parseStream(e);t.drawings[n]=r}async _processDrawingRelsEntry(e,t,n){let r=await new K().parseStream(e);t.drawingRels[n]=r}async _processVmlDrawingEntry(e,t,n){let r=await new aa().parseStream(e);t.vmlDrawings[`../drawings/${n}.vml`]=r}async _processThemeEntry(e,t,n){await new Promise((r,i)=>{let a=this.createStreamBuf(),o=()=>{e.removeListener(`error`,c),a.removeListener(`error`,c),a.removeListener(`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 Wi().parseStream(e);r&&(t.pivotTables[n]=r)}async _processPivotTableRelsEntry(e,t,n){let r=await new K().parseStream(e);t.pivotTableRels[n]=r}async _processPivotCacheDefinitionEntry(e,t,n){let r=await new Ui().parseStream(e);r&&(t.pivotCacheDefinitions[n]=r)}async _processPivotCacheDefinitionRelsEntry(e,t,n){let r=await new K().parseStream(e);t.pivotCacheDefinitionRels[n]=r}async _processPivotCacheRecordsEntry(e,t,n){let r=await new Bi().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=e.name;r[0]===`/`&&(r=r.substr(1));let i=r.match(/xl\/media\//)||r.match(/xl\/theme\/([a-zA-Z0-9]+)[.]xml/)?this.createBinaryStream(e.data):this.createTextStream(this.bufferToString(e.data)),a=r.match(/xl\/worksheets\/sheet(\d+)[.]xml/);if(a){let e=parseInt(a[1],10);await this._processWorksheetEntry(i,n,e,t,r)}else switch(r){case`_rels/.rels`:n.globalRels=await this.parseRels(i);break;case`xl/workbook.xml`:{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`xl/sharedStrings.xml`:n.sharedStrings=new Rn,await n.sharedStrings.parseStream(i);break;case`xl/_rels/workbook.xml.rels`:n.workbookRels=await this.parseRels(i);break;case`docProps/app.xml`:{let e=await new Un().parseStream(i);n.company=e.company,n.manager=e.manager;break}case`docProps/core.xml`:{let e=await new Nn().parseStream(i);Object.assign(n,e);break}case`xl/styles.xml`:n.styles=new jn,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;if(r=n.match(/xl\/worksheets\/_rels\/sheet(\d+)[.]xml[.]rels/),r){let n=parseInt(r[1],10);await this._processWorksheetRelsEntry(e,t,n);return}if(r=n.match(/xl\/media\/([a-zA-Z0-9]+[.][a-zA-Z0-9]{3,4})$/),r){await this._processMediaEntry(e,t,r[1]);return}if(r=n.match(/xl\/drawings\/(drawing\d+)[.]xml/),r){await this._processDrawingEntry(e,t,r[1]);return}if(r=n.match(/xl\/drawings\/_rels\/(drawing\d+)[.]xml[.]rels/),r){await this._processDrawingRelsEntry(e,t,r[1]);return}if(r=n.match(/xl\/drawings\/(vmlDrawing\d+)[.]vml/),r){await this._processVmlDrawingEntry(e,t,r[1]);return}if(r=n.match(/xl\/comments(\d+)[.]xml/),r){await this._processCommentEntry(e,t,`comments${r[1]}`);return}if(r=n.match(/xl\/tables\/(table\d+)[.]xml/),r){await this._processTableEntry(e,t,r[1]);return}if(r=n.match(/xl\/theme\/([a-zA-Z0-9]+)[.]xml/),r){await this._processThemeEntry(e,t,r[1]);return}if(r=n.match(/xl\/pivotTables\/(pivotTable\d+)[.]xml/),r){await this._processPivotTableEntry(e,t,r[1]);return}if(r=n.match(/xl\/pivotTables\/_rels\/(pivotTable\d+)[.]xml[.]rels/),r){await this._processPivotTableRelsEntry(e,t,r[1]);return}if(r=n.match(/xl\/pivotCache\/(pivotCacheDefinition\d+)[.]xml/),r){await this._processPivotCacheDefinitionEntry(e,t,r[1]);return}if(r=n.match(/xl\/pivotCache\/_rels\/(pivotCacheDefinition\d+)[.]xml[.]rels/),r){await this._processPivotCacheDefinitionRelsEntry(e,t,r[1]);return}if(r=n.match(/xl\/pivotCache\/(pivotCacheRecords\d+)[.]xml/),r){await this._processPivotCacheRecordsEntry(e,t,r[1]);return}}async addContentTypes(e,t){let n=new Bn().toXml(t);e.append(n,{name:`[Content_Types].xml`})}async addApp(e,t){let n=new Un().toXml(t);e.append(n,{name:`docProps/app.xml`})}async addCore(e,t){let n=new Nn;e.append(n.toXml(t),{name:`docProps/core.xml`})}async addThemes(e,t){let n=t.themes||{theme1:`<?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>`};Object.keys(n).forEach(t=>{let r=n[t],i=`xl/theme/${t}.xml`;e.append(r,{name:i})})}async addOfficeRels(t,n){let r=new K().toXml([{Id:`rId1`,Type:e.RelType.OfficeDocument,Target:`xl/workbook.xml`},{Id:`rId2`,Type:e.RelType.CoreProperties,Target:`docProps/core.xml`},{Id:`rId3`,Type:e.RelType.ExtenderProperties,Target:`docProps/app.xml`}]);t.append(r,{name:`_rels/.rels`})}async addWorkbookRels(t,n){let r=1,i=[{Id:`rId${r++}`,Type:e.RelType.Styles,Target:`styles.xml`},{Id:`rId${r++}`,Type:e.RelType.Theme,Target:`theme/theme1.xml`}];n.sharedStrings.count&&i.push({Id:`rId${r++}`,Type:e.RelType.SharedStrings,Target:`sharedStrings.xml`}),(n.pivotTables||[]).forEach(t=>{t.rId=`rId${r++}`,i.push({Id:t.rId,Type:e.RelType.PivotCacheDefinition,Target:`pivotCache/pivotCacheDefinition${t.tableNumber}.xml`})}),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 K().toXml(i);t.append(a,{name:`xl/_rels/workbook.xml.rels`})}async addSharedStrings(e,t){t.sharedStrings&&t.sharedStrings.count&&e.append(t.sharedStrings.xml,{name:`xl/sharedStrings.xml`})}async addStyles(e,t){let{xml:n}=t.styles;n&&e.append(n,{name:`xl/styles.xml`})}async addWorkbook(e,t){let n=new tr;e.append(n.toXml(t),{name:`xl/workbook.xml`})}async addWorksheets(e,t){let n=new hi,r=new K,i=new Zi,a=new aa;t.worksheets.forEach((t,o)=>{let s=t.fileIndex||o+1,c=new F;n.render(c,t),e.append(c.xml,{name:`xl/worksheets/sheet${s}.xml`}),t.rels&&t.rels.length&&(c=new F,r.render(c,t.rels),e.append(c.xml,{name:`xl/worksheets/_rels/sheet${s}.xml.rels`})),t.comments.length>0&&(c=new F,i.render(c,t),e.append(c.xml,{name:`xl/comments${s}.xml`}),c=new F,a.render(c,t),e.append(c.xml,{name:`xl/drawings/vmlDrawing${s}.vml`}))})}addDrawings(e,t){let n=new Mi,r=new K;t.worksheets.forEach(t=>{let{drawing:i}=t;if(i){n.prepare(i);let t=n.toXml(i);e.append(t,{name:`xl/drawings/${i.name}.xml`}),t=r.toXml(i.rels),e.append(t,{name:`xl/drawings/_rels/${i.name}.xml.rels`})}})}addTables(e,t){let n=new zi;t.worksheets.forEach(t=>{let{tables:r}=t;r.forEach(t=>{n.prepare(t,{});let r=n.toXml(t);e.append(r,{name:`xl/tables/${t.target}`})})})}addPivotTables(t,n){if(!n.pivotTables.length)return;let r=new Bi,i=new Ui,a=new Wi,o=new K;n.pivotTables.forEach(n=>{let s=n.tableNumber;if(n.isLoaded){if(n.cacheDefinition){let e=i.toXml(n.cacheDefinition);t.append(e,{name:`xl/pivotCache/pivotCacheDefinition${s}.xml`})}if(n.cacheRecords){let e=r.toXml(n.cacheRecords);t.append(e,{name:`xl/pivotCache/pivotCacheRecords${s}.xml`})}}else{let e=r.toXml(n);t.append(e,{name:`xl/pivotCache/pivotCacheRecords${s}.xml`}),e=i.toXml(n),t.append(e,{name:`xl/pivotCache/pivotCacheDefinition${s}.xml`})}let c=o.toXml([{Id:`rId1`,Type:e.RelType.PivotCacheRecords,Target:`pivotCacheRecords${s}.xml`}]);t.append(c,{name:`xl/pivotCache/_rels/pivotCacheDefinition${s}.xml.rels`}),c=a.toXml(n),t.append(c,{name:`xl/pivotTables/pivotTable${s}.xml`}),c=o.toXml([{Id:`rId1`,Type:e.RelType.PivotCacheDefinition,Target:`../pivotCache/pivotCacheDefinition${s}.xml`}]),t.append(c,{name:`xl/pivotTables/_rels/pivotTable${s}.xml.rels`})})}_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 Rn,e.styles=e.useStyles?new jn(!0):new jn.Mock;let n=new tr,r=new hi;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=[];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)})}},sa=class{constructor(e){this.listeners=new Map,this.ended=!1,this.data=e}async*[Symbol.asyncIterator](){yield this.data}on(e,t){let n=this.listeners.get(e)||[];return n.push(t),this.listeners.set(e,n),this.ended||(this.ended=!0,queueMicrotask(()=>{this.emit(`data`,this.data),this.emit(`end`)})),this}removeListener(e,t){let n=this.listeners.get(e)||[],r=n.indexOf(t);return r!==-1&&n.splice(r,1),this}emit(e,...t){(this.listeners.get(e)||[]).forEach(e=>e(...t))}pipe(e){return e.write(this.data instanceof Uint8Array?this.data:new TextEncoder().encode(this.data)),e.end(),e}},ca=class extends oa{createStreamBuf(){return new qt}createBinaryStream(e){return new sa(e)}createTextStream(e){return new sa(e)}bufferToString(e){return Ne(e)}async load(e,t){let n;if(!e||typeof e==`object`&&!(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) ?`);n=t&&t.base64?he(e.toString()):e instanceof ArrayBuffer?new Uint8Array(e):e instanceof Uint8Array?e:new Uint8Array(e);let r=await new Mt(n).extractAll(),i={};for(let[e,t]of r)i[e]=t;return this.loadFromFiles(i,t)}async writeBuffer(e){e||={};let{model:t}=this.workbook,n=new Xt(e.zip),r=new qt;return n.pipe(r),this.prepareModel(t,e),await this.addContentTypes(n,t),await this.addOfficeRels(n,t),await this.addWorkbookRels(n,t),await this.addWorksheets(n,t),await this.addSharedStrings(n,t),this.addDrawings(n,t),this.addTables(n,t),this.addPivotTables(n,t),await Promise.all([this.addThemes(n,t),this.addStyles(n,t)]),await this.addMedia(n,t),await Promise.all([this.addApp(n,t),this.addCore(n,t)]),await this.addWorkbook(n,t),await this._finalize(n),ge.from(r.read())}async addMedia(e,t){await Promise.all(t.media.map(async t=>{if(t.type===`image`){let n=`xl/media/${t.name}.${t.extension}`;if(t.buffer)return e.append(t.buffer,{name:n});if(t.base64){let r=t.base64,i=r.substring(r.indexOf(`,`)+1);return e.append(i,{name:n,base64:!0})}throw Error(`Loading images from filename is not supported in browser`)}throw Error(`Unsupported media`)}))}};let Z=Array.from({length:60},(e,t)=>t<10?`0${t}`:`${t}`),Q=(e,t)=>(e.charCodeAt(t)-48)*10+e.charCodeAt(t+1)-48|0,la=(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,ua=[0,31,29,31,30,31,30,31,31,30,31,30,31];function da(e,t,n){if(t<1||t>12||n<1||n>ua[t])return null;let r=new Date(e,t-1,n);return r.getMonth()===t-1?r:null}function fa(e,t,n,r,i,a){return t<1||t>12||n<1||n>ua[t]||r>23||i>59||a>59?null:new Date(e,t-1,n,r,i,a)}function pa(e){return e.charCodeAt(4)!==45||e.charCodeAt(7)!==45?null:da(la(e,0),Q(e,5),Q(e,8))}function ma(e){return e.charCodeAt(4)!==45||e.charCodeAt(7)!==45||e.charCodeAt(10)!==84||e.charCodeAt(13)!==58||e.charCodeAt(16)!==58?null:fa(la(e,0),Q(e,5),Q(e,8),Q(e,11),Q(e,14),Q(e,17))}function ha(e){return e.charCodeAt(4)!==45||e.charCodeAt(7)!==45||e.charCodeAt(10)!==32||e.charCodeAt(13)!==58||e.charCodeAt(16)!==58?null:fa(la(e,0),Q(e,5),Q(e,8),Q(e,11),Q(e,14),Q(e,17))}function ga(e){if(e.charCodeAt(19)!==90)return null;let t=new Date(e);return isNaN(t.getTime())?null:t}function _a(e){if(e.charCodeAt(19)!==46||e.charCodeAt(23)!==90)return null;let t=new Date(e);return isNaN(t.getTime())?null:t}function va(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 ya(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 ba(e){let t=e.charCodeAt(2);return t!==45&&t!==47||e.charCodeAt(5)!==t?null:da(la(e,6),Q(e,0),Q(e,3))}function xa(e){let t=e.charCodeAt(2);return t!==45&&t!==47||e.charCodeAt(5)!==t?null:da(la(e,6),Q(e,3),Q(e,0))}function Sa(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:fa(la(e,6),Q(e,0),Q(e,3),Q(e,11),Q(e,14),Q(e,17))}function Ca(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:fa(la(e,6),Q(e,3),Q(e,0),Q(e,11),Q(e,14),Q(e,17))}let wa={"YYYY-MM-DD":pa,"YYYY-MM-DD[T]HH:mm:ss":ma,"YYYY-MM-DD HH:mm:ss":ha,"YYYY-MM-DD[T]HH:mm:ssZ":e=>e.length===20?ga(e):e.length===25?va(e):null,"YYYY-MM-DD[T]HH:mm:ss.SSSZ":e=>e.length===24?_a(e):e.length===29?ya(e):null,"MM-DD-YYYY":ba,"MM-DD-YYYY HH:mm:ss":Sa,"MM/DD/YYYY HH:mm:ss":Sa,"DD-MM-YYYY":xa,"DD-MM-YYYY HH:mm:ss":Ca,"DD/MM/YYYY HH:mm:ss":Ca},Ta=[[10,[pa]],[19,[ma,ha]],[20,[ga]],[24,[_a]],[25,[va]],[29,[ya]]];var Ea=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=>wa[e]).filter(Boolean))}static iso(){let t=[];for(let[,e]of Ta)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 Da(e){let t=-e.getTimezoneOffset(),n=t>=0?`+`:`-`,r=Math.abs(t)/60|0,i=Math.abs(t)%60;return`${n}${Z[r]}:${Z[i]}`}var Oa=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}-${Z[r]}-${Z[i]}T${Z[a]}:${Z[o]}:${Z[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}-${Z[r]}-${Z[i]}T${Z[a]}:${Z[o]}:${Z[s]}.${c<10?`00`+c:c<100?`0`+c:c}${Da(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()}-${Z[e.getUTCMonth()+1]}-${Z[e.getUTCDate()]}`:``}):new e(e=>{if(!(e instanceof Date))return``;let t=e.getTime();return t===t?`${e.getFullYear()}-${Z[e.getMonth()+1]}-${Z[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()}-${Z[e.getUTCMonth()+1]}-${Z[e.getUTCDate()]} ${Z[e.getUTCHours()]}:${Z[e.getUTCMinutes()]}:${Z[e.getUTCSeconds()]}`:``}):new e(e=>{if(!(e instanceof Date))return``;let t=e.getTime();return t===t?`${e.getFullYear()}-${Z[e.getMonth()+1]}-${Z[e.getDate()]} ${Z[e.getHours()]}:${Z[e.getMinutes()]}:${Z[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?`${Z[e.getUTCMonth()+1]}${n}${Z[e.getUTCDate()]}${n}${e.getUTCFullYear()}`:``}):new e(e=>{if(!(e instanceof Date))return``;let t=e.getTime();return t===t?`${Z[e.getMonth()+1]}${n}${Z[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?`${Z[e.getUTCDate()]}${n}${Z[e.getUTCMonth()+1]}${n}${e.getUTCFullYear()}`:``}):new e(e=>{if(!(e instanceof Date))return``;let t=e.getTime();return t===t?`${Z[e.getDate()]}${n}${Z[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,Z[n?e.getUTCMonth()+1:e.getMonth()+1])),c&&(p=p.replace(/DD/g,Z[n?e.getUTCDate():e.getDate()])),l&&(p=p.replace(/HH/g,Z[n?e.getUTCHours():e.getHours()])),u&&(p=p.replace(/mm/g,Z[n?e.getUTCMinutes():e.getMinutes()])),d&&(p=p.replace(/ss/g,Z[n?e.getUTCSeconds():e.getSeconds()])),f&&(p=p.replace(/Z/g,n?`Z`:Da(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 ka(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function Aa(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 ja(e,t,n,r){if(t)return e.trim();let i=e;return n&&(i=i.trimStart()),r&&(i=i.trimEnd()),i}function Ma(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,te=r!==null&&r!==!1,b=te?String(r):``,x=i!==null&&i!==!1?String(i):``,S=[],C=[],w=[],T=``,ne=!1,E=0,re=0,ie=0,ae=0,D=null,oe=0,O=!1,se=!1;u===!0?O=!0:Array.isArray(u)?(D=u,oe=u.filter(e=>e!=null).length,Aa(u),O=!0,d||(se=!0)):typeof u==`function`&&(O=!0),e=e.replace(/\r\n/g,`
|
|
129
|
-
|
|
130
|
-
`)
|
|
131
|
-
`){if(
|
|
132
|
-
`,alwaysQuote:o=!1,quoteColumns:s=!1,quoteHeaders:c=!1,headers:l,writeHeaders:u,writeBOM:d=!1,includeEndRowDelimiter:f=!1,alwaysWriteHeaders:p=!1,transform:m}=t,h=u??!0,g=r!==!1&&r!==null,_=g?String(r):``,v=i!==void 0&&i!==!1&&i!==null?String(i):_,y=[],ee=(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},te=(e,t,r,i=!1)=>{if(e==null)return``;let a=String(e);if(!g)return a;let s=o||ee(t,r,i),c=RegExp(`[${ka(n)}${ka(_)}\r\n]`);return s||c.test(a)?_+a.replace(new RegExp(ka(_),`g`),v+_)+_:a},b=(e,t,r=!1)=>e.map((e,n)=>te(e,n,t?.[n],r)).join(n),x=null,S=e=>m&&m.length===1?m(e):e;if(e.length>0&&!Array.isArray(e[0])){let t=e;x=l===!0?Object.keys(t[0]):Array.isArray(l)?l:null,x&&h&&y.push(b(x,x,!0));for(let e of t){let t=S(e);if(t==null)continue;let n=x?x.map(e=>t[e]):Object.values(t);y.push(b(n,x??void 0))}}else if(e.length>0){let t=e;Array.isArray(l)&&(x=l,h&&y.push(b(l,l,!0)));for(let e of t){let t=S(e);t!=null&&y.push(b(t,x??void 0))}}else p&&Array.isArray(l)&&h&&y.push(b(l,l,!0));let C=y.join(a);return C.length>0&&f&&(C+=a),d&&(C=``+C),C}let Pa={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 Fa(e){let t=Ea.create(e);return function(e){if(e===``)return null;let n=Number(e);if(!Number.isNaN(n)&&n!==1/0)return n;let r=t.parse(e);if(r)return r;let i=Pa[e];return i===void 0?e:i}}function Ia(e,t){let n=e?Oa.create(e,{utc:t}):Oa.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}}function La(e,t,n={}){let r=t.addWorksheet(n.sheetName),i=n.dateFormats||[`YYYY-MM-DD[T]HH:mm:ssZ`,`YYYY-MM-DD[T]HH:mm:ss`,`YYYY-MM-DD`],a=n.map||Fa(i),o=Ma(e,n.parserOptions);for(let e of o)r.addRow(e.map(a));return r}function Ra(e,t={}){if(!e)return``;let{dateFormat:n,dateUTC:r}=t,i=t.map||Ia(n,r),a=t.includeEmptyRows!==!1,o=[],s=1;return e.eachRow((e,t)=>{if(a)for(;s++<t-1;)o.push([]);let{values:n}=e;n.shift(),o.push(n.map(i)),s=t}),Na(o,t.formatterOptions)}var za=class{constructor(e){this.workbook=e}load(e,t){let n;if(typeof e==`string`)n=e;else if(e instanceof ArrayBuffer)n=new TextDecoder(`utf-8`).decode(e);else if(e instanceof Uint8Array)n=new TextDecoder(`utf-8`).decode(e);else throw Error(`Invalid data type. Expected string, ArrayBuffer, or Uint8Array.`);return La(n,this.workbook,t)}writeString(e){return Ra(this.workbook.getWorksheet(e?.sheetName||e?.sheetId),e)}writeBuffer(e){let t=this.writeString(e);return new TextEncoder().encode(t)}async readFile(e,t){throw Error(`CSV.readFile() is not available in browser. Use CSV.load() with string or ArrayBuffer instead.`)}async read(e,t){throw Error(`CSV.read() stream is not available in browser. Use CSV.load() with string or ArrayBuffer instead.`)}async writeFile(e,t){throw Error(`CSV.writeFile() is not available in browser. Use CSV.writeString() or CSV.writeBuffer() and handle download manually.`)}write(e,t){throw Error(`CSV.write() stream is not available in browser. Use CSV.writeString() or CSV.writeBuffer() instead.`)}},Ba=class extends Ye{get xlsx(){return this._xlsx||=new ca(this),this._xlsx}get csv(){return this._csv||=new za(this),this._csv}static createStreamWriter(e){throw Error("Streaming workbook writer is not available in browser. Use `new Workbook()` with `xlsx.writeBuffer()` instead, or import from 'excelts' (Node.js) for streaming support.")}static createStreamReader(e,t){throw Error("Streaming workbook reader is not available in browser. Use `new Workbook()` with `xlsx.load()` instead, or import from 'excelts' (Node.js) for streaming support.")}};let Va=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 Ha(e,t){let n=Math.round(e).toString();for(;n.length<t;)n=`0`+n;return n}function Ua(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 Wa(e,t){let n=10**t;return Math.round(e*n)/n}function Ga(e){let t=e.replace(/_./g,` `);return t=t.replace(/\*./g,``),t}function Ka(e){return/^General$/i.test(e.trim())}function qa(e){let t=e.replace(/\[[^\]]*\]/g,``);return/[ymdhs]/i.test(t)&&!/^[#0.,E%$\s()\-+]+$/i.test(t)}let Ja=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],Ya=[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],Xa=[`J`,`F`,`M`,`A`,`M`,`J`,`J`,`A`,`S`,`O`,`N`,`D`],Za=[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],Qa=[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`];function $a(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=Ga(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,Xa[c]).replace(/\x00MN4\x00/g,Ya[c]).replace(/\x00MN3\x00/g,Ja[c]).replace(/\x00M2\x00/g,(c+1).toString().padStart(2,`0`)).replace(/\x00M1\x00/g,(c+1).toString()).replace(/\x00DN4\x00/g,Qa[u]).replace(/\x00DN3\x00/g,Za[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 eo(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 to(e,t){let n=(t.match(/%/g)||[]).length;return oo(e*100**n,t.replace(/%/g,``)||`0`)+`%`.repeat(n)}function no(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=Wa(r/10**s,a).toFixed(a),l=s>=0?o?`+`:``:`-`,u=Ha(Math.abs(s),2);return n+c+`E`+l+u}function ro(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 io(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]=ro(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 ao(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 oo(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=``]=Wa(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=Ua(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 so(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 co(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 lo(e,t){if(typeof t==`string`){let n=fo(e);return n.length>=4&&n[3]?so(n[3]).replace(/@/g,t):t}if(typeof t==`boolean`)return t?`TRUE`:`FALSE`;let n=fo(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&&co(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 uo(e,t){let n=fo(e);return n.length>=2&&n[1]===t}function fo(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 po(e,t){if(t==null)return``;if(Ka(e))return eo(t);if(typeof t==`string`)return lo(e,t);if(typeof t==`boolean`)return t?`TRUE`:`FALSE`;let n=t,r=lo(e,n);n<0&&uo(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=Ga(i),i=so(i),/\[[hms]+\]/i.test(i))return ao(n,i);if(qa(i))return $a(n,i);if(i.includes(`%`))return to(n,i);if(/E[+-]?/i.test(i))return no(n,i);if(/\?+\s*\/\s*[\d?]+/.test(i))return io(n,i);if(i.includes(`(`)&&i.includes(`)`)&&n<0){let e=i.replace(/\(|\)/g,``);return`(`+oo(-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=oo(n,i);return a+l+o}function mo(e){return e.getTime()/(24*3600*1e3)+25569}function ho(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 go(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 _o(e,t,n){if(e instanceof Date){let r=mo(e);return ho(t)?(r%=1,r<0&&(r+=1),po(t,r)):po(n&&go(t)?n:t,r)}return po(t,e)}function vo(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 _o(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 _o(e,i,t)}return e.text}function yo(e){return n.l2n(e.toUpperCase())-1}function bo(e){return n.n2l(e+1)}function xo(e){return parseInt(e,10)-1}function So(e){return String(e+1)}function $(e){let t=n.decodeAddress(e.toUpperCase());return{c:t.col-1,r:t.row-1}}function Co(e){return n.encodeAddress(e.r+1,e.c+1)}function wo(e){let t=e.indexOf(`:`);if(t===-1){let t=$(e);return{s:t,e:{...t}}}return{s:$(e.slice(0,t)),e:$(e.slice(t+1))}}function To(e,t){if(t===void 0){let t=e;return To(t.s,t.e)}let n=Co(e),r=Co(t);return n===r?n:`${n}:${r}`}function Eo(e,t){let n=t||{},r=new Ba().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 Do(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=$(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 Oo(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=wo(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?vo(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?vo(a,n.dateFormat).trim():a.value,s=bo(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?vo(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?vo(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 ko(e,t){let n=t||{},r=n.FS??`,`,i=n.RS??`
|
|
127
|
+
`}var Ca=class extends L{constructor(e){super(),this.model=e||{type:`note`,note:{texts:[]},ref:``}}get tag(){return`r`}get richTextXform(){return this._richTextXform||=new Zt,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 L{constructor(){super(),this.map={comment:new Ca},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`}}},Ta=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}}},Ea=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}},Da=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}},Oa=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 ka=[`twoCells`,`oneCells`,`absolute`];var Aa=class extends L{constructor(){super(),this.map={"x:Anchor":new Ea,"x:Locked":new Da({tag:`x:Locked`}),"x:LockText":new Da({tag:`x:LockText`}),"x:SizeWithCells":new Oa({tag:`x:SizeWithCells`}),"x:MoveWithCells":new Oa({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,ka),this.map[`x:SizeWithCells`].render(e,r,ka),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=ka[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}},ja=class e extends L{constructor(){super(),this.map={"v:textbox":new Ta,"x:ClientData":new Aa}}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})}},Ma=class e extends L{constructor(){super(),this.map={"v:shape":new ja},this.model={comments:[]}}get tag(){return`xml`}render(t,n){let r=n||this.model;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(),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(),r.comments.forEach((e,n)=>{this.map[`v:shape`].render(t,e,n)}),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset(),this.model={comments:[]};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}}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:v":`urn:schemas-microsoft-com:vml`,"xmlns:o":`urn:schemas-microsoft-com:office:office`,"xmlns:x":`urn:schemas-microsoft-com:office:excel`}}};let Na=`<?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>`,Pa=new TextEncoder;var Fa=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=Pa.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)}},Ia=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}},La=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()}},Ra=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}},za=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}},Ba=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 za(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,t=`utf8`),n||=()=>{};let r;if(e instanceof Fa||e&&e.constructor?.name===`StringBuf`)r=new La(e);else if(e instanceof Uint8Array)r=new Ra(e);else if(ArrayBuffer.isView(e))r=new Ra(new Uint8Array(e.buffer,e.byteOffset,e.byteLength));else if(e instanceof ArrayBuffer)r=new Ra(new Uint8Array(e));else if(typeof e==`string`)r=new Ia(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 Ra(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 Ra(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 Va(t)}let t=this.buffers.map(e=>e.toBuffer()).filter(Boolean);return this.buffers=[],Va(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 Va(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 Ha=null;function Ua(){if(Ha)return Ha;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 Ha=e,e}function Wa(e,t){let n=Ua();for(let r=0;r<t.length;r++)e=n[(e^t[r])&255]^e>>>8;return e}function Ga(e){return(e^4294967295)>>>0}function Ka(e){let t=0;for(let n=0;n<e.length;n++)t+=e[n].length;return t}function qa(e){let t=e.length;if(t===0)return new Uint8Array;if(t===1)return e[0];let n=Ka(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 Ja(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 Ya=new Uint8Array(288);for(let e=0;e<=143;e++)Ya[e]=8;for(let e=144;e<=255;e++)Ya[e]=9;for(let e=256;e<=279;e++)Ya[e]=7;for(let e=280;e<=287;e++)Ya[e]=8;let Xa=new Uint8Array(32).fill(5),Za=[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],Qa=[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],$a=[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],eo=[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],to=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15];function no(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 ro=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 io(e){let t=new ro(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=no(Ya,288),i=no(Xa,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[to[e]]=t.readBits(3);let s=no(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=no(c.subarray(0,e),e),i=no(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=Za[r]+t.readBits(Qa[r]),o=t.decodeSymbol(i),s=$a[o]+t.readBits(eo[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 ao(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 oo(e){if(e.length===0)return new Uint8Array([3,0]);if(e.length<100)return ao(e);let t=new so;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?(fo(t,i),po(t,a),r+=i):(uo(t,e[r]),r++)}return uo(t,256),t.finish()}var so=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)),qa(this.chunks))}};let co=[],lo=[];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),co[e]=[t,n],lo[e]=n}function uo(e,t){let[n,r]=co[t];e.writeBitsReverse(n,r)}function fo(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;uo(e,n),r>0&&e.writeBits(i,r)}function po(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 mo=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 ho(e){let t=e.thresholdBytes;return typeof t!=`number`||!Number.isFinite(t)||t<0?8388608:t}function go(){try{return typeof CompressionStream>`u`?!1:(new CompressionStream(`deflate-raw`),!0)}catch{return!1}}function _o(){try{return typeof DecompressionStream>`u`?!1:(new DecompressionStream(`deflate-raw`),!0)}catch{return!1}}let vo=null,yo=null;function bo(){return typeof CompressionStream>`u`?!1:(vo===null&&(vo=go()),vo)}function xo(){return typeof DecompressionStream>`u`?!1:(yo===null&&(yo=_o()),yo)}function So(){return bo()&&xo()}async function Co(e){let t=new mo;for(;;){let{done:n,value:r}=await e.read();if(n)break;t.append(r)}return t.read(t.length)}async function wo(e,t){let n=t.writable.getWriter(),r=t.readable.getReader();try{let t=Co(r);return await n.write(e),await n.close(),await t}finally{try{n.releaseLock()}catch{}try{r.releaseLock()}catch{}}}async function To(e){return wo(e,new DecompressionStream(`deflate-raw`))}function Eo(e){return e instanceof Error?e:Error(String(e))}function Do(){return So()}var Oo=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`,Eo(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=Eo(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=Eo(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{}}},ko=class extends j{constructor(e){super();let t=new CompressionStream(`deflate-raw`);this.codec=new Oo(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)}},Ao=class extends j{constructor(e){super(),this.codec=new jo(oo),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)}},jo=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=qa(this.chunks),n=this.process(t);this.emit(`data`,n),this.emit(`end`),e&&e()}catch(t){let n=Eo(t);this.emit(`error`,n),e&&e(n)}}destroy(e){this.ended=!0,e&&this.emit(`error`,e)}};function Mo(e={}){let t=e.level??6;return Do()?new ko(t):new Ao(t)}let No=new TextEncoder,Po=new TextDecoder(`utf-8`);function Fo(e){return No.encode(e)}function Io(e){return Po.decode(e)}function Lo(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 Ro=21589;function zo(e){return!Number.isFinite(e)||e<=0?0:e>=4294967295?4294967295:e>>>0}function Bo(e){return zo(Math.floor(e.getTime()/1e3))}function Vo(e){let t=zo(e),n=new Uint8Array(9),r=new DataView(n.buffer);return r.setUint16(0,Ro,!0),r.setUint16(2,5,!0),n[4]=1,r.setUint32(5,t,!0),n}function Ho(e){return Vo(Bo(e))}function Uo(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===Ro&&i>=1&&e[a]&1&&i>=5)return t.getUint32(a+1,!0)>>>0;n=o}}function Wo(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 Go(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 Ko(e,t,n){return n===void 0?Go(e,t):new Date(n*1e3)}function qo(e,t){return t===`dos+utc`?Ho(e):new Uint8Array}function Jo(e){let[t,n]=Wo(e);return{dosTime:t,dosDate:n}}let Yo=67324752,Xo=33639248,Zo=101010256,Qo=134695760,$o=101075792,es=117853008,ts=2048;function ns(e){return e?8:0}function rs(e){return e?ts|8:ts}function is(e){let t=Fo(e.name),n=Fo(e.comment??``),{dosTime:r,dosDate:i}=Jo(e.modTime);return{nameBytes:t,commentBytes:n,dosTime:r,dosDate:i,extraField:qo(e.modTime,e.timestamps),compressionMethod:ns(e.deflate),flags:rs(e.useDataDescriptor)}}function as(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,Yo,!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 os(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,Xo,!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 ss(e){let t=new Uint8Array(22+e.comment.length),n=new DataView(t.buffer);return n.setUint32(0,Zo,!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 cs(e,t,n){let r=new Uint8Array(16),i=new DataView(r.buffer);return i.setUint32(0,Qo,!0),i.setUint32(4,e,!0),i.setUint32(8,t,!0),i.setUint32(12,n,!0),r}var ls=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=is({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=Mo({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 as({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=Wa(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=Ga(this._crc),t=cs(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}},us=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=os({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=ss({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 ds(e,t={}){let n=ho(t);return xo()&&e.byteLength>n?To(e):io(e)}function fs(e){return io(e)}function ps(e){let t=new Uint8Array(4);return new DataView(t.buffer).setUint32(0,e>>>0,!0),t}function ms(e,t){return new DataView(e.buffer,e.byteOffset,e.byteLength).getUint32(t,!0)}var hs=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?Io(n):Lo(n)}skip(e){this.offset+=e}slice(e,t){return this.data.subarray(e,t)}peekUint32(e){return this.view.getUint32(e,!0)}};function gs(e,t){let n=e.getUint32(t,!0);return e.getUint32(t+4,!0)*4294967296+n}function _s(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=gs(r,e),e+=8),t.compressedSize===4294967295&&e+8<=c&&(n.compressedSize=gs(r,e),e+=8),t.offsetToLocalFileHeader===4294967295&&e+8<=c&&(n.offsetToLocalFileHeader=gs(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=Uo(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 vs(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)===Zo)return r;return-1}function ys(e,t){let n=t-20;return n<0?-1:new DataView(e.buffer,e.byteOffset,e.byteLength).getUint32(n,!0)===es?n:-1}function bs(e,t={}){let{decodeStrings:n=!0}=t,r=[],i=vs(e);if(i===-1)throw Error(`Invalid ZIP file: End of Central Directory not found`);let a=new hs(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=ys(e,i);if(c!==-1){let t=new hs(e,c);t.skip(4),t.skip(4);let n=new hs(e,Number(t.readBigUint64()));if(n.readUint32()===$o){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 hs(e,s);for(let e=0;e<o;e++){if(l.readUint32()!==Xo)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?_s(y,b):{};c=b.compressedSize,u=b.uncompressedSize,h=b.offsetToLocalFileHeader??h;let x=v.endsWith(`/`)||(m&16)!=0,ne=(t&1)!=0,re=te.mtimeUnixSeconds,S=Ko(o,a,re);r.push({path:v,isDirectory:x,compressedSize:c,uncompressedSize:u,compressionMethod:i,crc32:s,lastModified:S,localHeaderOffset:h,comment:ee,externalAttributes:m,isEncrypted:ne})}return r}async function xs(e,t){if(t.isDirectory)return new Uint8Array;if(t.isEncrypted)throw Error(`File "${t.path}" is encrypted and cannot be extracted`);let n=Cs(e,t);if(t.compressionMethod===0)return n;if(t.compressionMethod===8)return ds(n);throw Error(`Unsupported compression method: ${t.compressionMethod}`)}function Ss(e,t){if(t.isDirectory)return new Uint8Array;if(t.isEncrypted)throw Error(`File "${t.path}" is encrypted and cannot be extracted`);let n=Cs(e,t);if(t.compressionMethod===0)return n;if(t.compressionMethod===8)return fs(n);throw Error(`Unsupported compression method: ${t.compressionMethod}`)}function Cs(e,t){let n=new hs(e,t.localHeaderOffset);if(n.readUint32()!==Yo)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 ws=class{constructor(e,t={}){this.data=e instanceof ArrayBuffer?new Uint8Array(e):e,this.entries=bs(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?xs(this.data,t):null}extractSync(e){let t=this.entryMap.get(e);return t?Ss(this.data,t):null}async extractAll(){let e=new Map;for(let t of this.entries){let n=await xs(this.data,t);e.set(t.path,n)}return e}extractAllSync(){let e={};for(let t of this.entries)e[t.path]=Ss(this.data,t);return e}async forEach(e){for(let t of this.entries){let n=null;if(await e(t,()=>(n||=xs(this.data,t),n))===!1)break}}};function Ts(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 Es(e,t){let n={},r=0;for(let[i,a]of t)e.length>=r+a?n[i]=Ts(e,r,a):n[i]=null,r+=a;return n}function Ds(e,t){return Es(e,t)}let Os=[[`version`,4],[`pubKeyLength`,4],[`signatureLength`,4]],ks=[[`versionsNeededToExtract`,2],[`flags`,2],[`compressionMethod`,2],[`lastModifiedTime`,2],[`lastModifiedDate`,2],[`crc32`,4],[`compressedSize`,4],[`uncompressedSize`,4],[`fileNameLength`,2],[`extraFieldLength`,2]],As=[[`dataDescriptorSignature`,4],[`crc32`,4],[`compressedSize`,4],[`uncompressedSize`,4]],js=[[`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]],Ms=[[`diskNumber`,2],[`diskStart`,2],[`numberOfRecordsOnDisk`,2],[`numberOfRecords`,2],[`sizeOfCentralDirectory`,4],[`offsetToStartOfCentralDirectory`,4],[`commentLength`,2]],Ns=new TextDecoder;new TextEncoder;function Ps(e){return Ns.decode(e)}function Fs(e){return((e||0)&2048)!=0}function Is(e){if(e.length===0)return!1;let t=e.charCodeAt(e.length-1);return t===47||t===92}function Ls(e,t){return t===0&&Is(e)?`Directory`:`File`}function Rs(e,t,n){return{path:e,pathBuffer:t,flags:{isUnicode:Fs(n)}}}function zs(e,t){let n=e.lastModifiedDate||0,r=e.lastModifiedTime||0,i=Go(n,r),a=t.mtimeUnixSeconds;return a===void 0?i:Ko(n,r,a)}let Bs=_s;function Vs(e){return((e||0)&8)!=0}function Hs(e,t){return!Vs(e)||(t||0)>0}function Us(e){let t=e.pipe(new ze({transform(e,t,n){n()}}));return t.promise=()=>new Promise((e,n)=>{t.on(`finish`,e),t.on(`error`,n)}),t}function Ws(e){return new Promise((t,n)=>{let r=[],i=new ze({transform(e,t,n){r.push(e),n()}});i.on(`finish`,()=>{t(r.length===1?r[0]:Le(r))}),i.on(`error`,n),e.on(`error`,n).pipe(i)})}async function Gs(e){let t=Ds(await e(12),Os),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 Ks(e){let t=Ds(await e(26),ks);return{vars:t,fileNameBuffer:await e(t.fileNameLength||0),extraFieldData:await e(t.extraFieldLength||0)}}async function qs(e){return Ds(await e(16),As)}async function Js(e){let t=Ds(await e(42),js);await e(t.fileNameLength||0),await e(t.extraFieldLength||0),await e(t.fileCommentLength||0)}async function Ys(e){await e(Ds(await e(18),Ms).commentLength||0)}function Xs(e){switch(e){case Yo:case Xo:case Zo:case $o:case es:return!0;default:return!1}}function Zs(e,t){return(e[t]|0|(e[t+1]|0)<<8|(e[t+2]|0)<<16|(e[t+3]|0)<<24)>>>0}function Qs(e,t,n){if(t.length!==4)return Ja(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 $s(e){return e||{foundIndex:-1,nextSearchFrom:0}}function ec(e,t,n,r=0,i){let a=$s(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=Qs(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=Zs(e,s),r=Zs(e,i+8),c=n+i>>>0;if(Xs(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 tc(e){let{source:t,dataDescriptorSignature:n}=e,r=e.keepTailBytes??20,i=e.errorMessage??`FILE_ENDED: Data descriptor not found`,a=new Ve,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();ec(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 nc=ps(Zo);async function rc(e,t,n,r,i){for(;;){let a=await t.pull(4);if(a.length===0){n.emitClose();return}let o=ms(a,0);if(o===875721283){i.crxHeader=await Gs(async e=>t.pull(e)),n.emitCrxHeader(i.crxHeader);continue}if(o===Yo){await ic(e,t,n,r,i);continue}if(o===Xo){i.reachedCD=!0,await Js(async e=>t.pull(e));continue}if(o===Zo){await Ys(async e=>t.pull(e)),t.setDone(),n.emitClose();return}if(i.reachedCD){await t.pullUntil(nc,!0),await Ys(async e=>t.pull(e)),t.setDone(),n.emitClose();return}n.emitError(Error(`invalid signature: 0x`+o.toString(16))),n.emitClose();return}}async function ic(e,t,n,r,i){let{vars:a,fileNameBuffer:o,extraFieldData:s}=await Ks(async e=>t.pull(e)),c=a;i.crxHeader&&(c.crxHeader=i.crxHeader);let l=Ps(o),u=new Ve,d=!1;u.autodrain=function(){return d=!0,u.__autodraining=!0,Us(u)},u.buffer=function(){return Ws(u)},u.path=l,u.props=Rs(l,o,c.flags),u.type=Ls(l,c.uncompressedSize||0),e.verbose&&(u.type===`Directory`?console.log(` creating:`,l):u.type===`File`&&(c.compressionMethod===0?console.log(` extracting:`,l):console.log(` inflating:`,l)));let f=Bs(s,c);c.lastModifiedDateTime=zs(c,f),u.vars=c,u.extraFields=f,u.__autodraining=d;let p=Hs(c.flags,c.compressedSize);p&&(u.size=c.uncompressedSize||0),e.forceStream?n.pushEntry(u):(n.emitEntry(u),n.pushEntryIfPiped(u)),e.verbose&&console.log({filename:l,vars:c,extraFields:u.extraFields});let m=c.compressionMethod&&!d?r():new Ve;if(p){await qe(t.stream(c.compressedSize||0),m,u);return}await qe(t.streamUntilDataDescriptor(),m,u),u.size=(await qs(async e=>t.pull(e))).uncompressedSize||0}var ac=class extends Be{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)}},oc=class extends Be{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=io(Le(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 sc(){return xo()?new ac:new oc}let cc=ps(Qo);function lc(e){return class extends Be{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 mo,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=rc(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=Ja(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)),Le(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 Ve,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 Ve,r=!1,i=0,a=Math.max(0,e.length-1),o=()=>{if(r)return;let s=this._buffer.view(),c=Ja(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 tc({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:cc})}promise(){return new Promise((e,t)=>{this.on(`finish`,e),this.on(`end`,e),this.on(`error`,t)})}}}let uc=lc(sc);var dc=class extends uc{};function fc(e){return new dc(e)}var pc=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 us((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?he(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 ls(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())}},mc=class e{static{this.RelType=G}constructor(e){this.workbook=e}createBinaryStream(e){let t=new Ve;return t.end(e),t}createTextStream(e){let t=new Ve;return t.end(e),t}createStreamBuf(){return new Ba}bufferToString(e){return Oe(e)}createZipWriter(e){return new pc(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.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(Le(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?he(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 ws(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=_n(r.name),o=r.stream;try{let e=vn(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 en,await n.sharedStrings.parseStream(o);break;case U.xlWorkbookRels:n.workbookRels=await this.parseRels(o);break;case U.docPropsApp:{let e=await new mr().parseStream(o);n.company=e.company,n.manager=e.manager;break}case U.docPropsCore:{let e=await new Yt().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=In(`${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 Er().parseStream(e)}parseSharedStrings(e){return new en().parseStream(e)}reconcile(e,t){let n=new Er,r=new Hi(t),i=new aa,a=new fa;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[sr(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 Hi(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[ar(n)]=r}async _processTableEntry(e,t,n){let r=await new fa().parseStream(e);t.tables[lr(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 aa().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 Ma().parseStream(e);t.vmlDrawings[ir(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 _a().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 ga().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 pa().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=_n(e.name),i=wn(r)?this.createBinaryStream(e.data):this.createTextStream(this.bufferToString(e.data)),a=vn(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 en,await n.sharedStrings.parseStream(i);break;case U.xlWorkbookRels:n.workbookRels=await this.parseRels(i);break;case U.docPropsApp:{let e=await new mr().parseStream(i);n.company=e.company,n.manager=e.manager;break}case U.docPropsCore:{let e=await new Yt().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=yn(n);if(r!==void 0){let n=r;return await this._processWorksheetRelsEntry(e,t,n),!0}let i=xn(n);if(i)return await this._processMediaEntry(e,t,i),!0;let a=Tn(n);if(a)return await this._processDrawingEntry(e,t,a),!0;let o=En(n);if(o)return await this._processDrawingRelsEntry(e,t,o),!0;let s=Dn(n);if(s)return await this._processVmlDrawingEntry(e,t,s),!0;let c=On(n);if(c)return await this._processCommentEntry(e,t,`comments${c}`),!0;let l=kn(n);if(l)return await this._processTableEntry(e,t,l),!0;let u=Cn(n);if(u)return await this._processThemeEntry(e,t,u),!0;let d=An(n);if(d)return await this._processPivotTableEntry(e,t,d),!0;let f=jn(n);if(f)return await this._processPivotTableRelsEntry(e,t,f),!0;let p=Mn(n);if(p)return await this._processPivotCacheDefinitionEntry(e,t,p),!0;let m=Nn(n);if(m)return await this._processPivotCacheDefinitionRelsEntry(e,t,m),!0;let h=Pn(n);return h?(await this._processPivotCacheRecordsEntry(e,t,h),!0):!1}async addContentTypes(e,t){let n=new dr().toXml(t);e.append(n,{name:U.contentTypes})}async addApp(e,t){let n=new mr().toXml(t);e.append(n,{name:U.docPropsApp})}async addCore(e,t){let n=new Yt;e.append(n.toXml(t),{name:U.docPropsCore})}async addThemes(e,t){let n=t.themes||{theme1:Na};Object.keys(n).forEach(t=>{let r=n[t];e.append(r,{name:Fn(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:$n.workbookStyles},{Id:`rId${r++}`,Type:e.RelType.Theme,Target:$n.workbookTheme1}];n.sharedStrings.count&&i.push({Id:`rId${r++}`,Type:e.RelType.SharedStrings,Target:$n.workbookSharedStrings}),(n.pivotTables||[]).forEach(t=>{t.rId=`rId${r++}`,i.push({Id:t.rId,Type:e.RelType.PivotCacheDefinition,Target:er(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 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 Er;e.append(n.toXml(t),{name:U.xlWorkbook})}async addWorksheets(e,t){let n=new Hi,r=new H,i=new wa,a=new Ma;t.worksheets.forEach((t,o)=>{let s=t.fileIndex||o+1,c=new F;n.render(c,t),e.append(c.xml,{name:Ln(s)}),t.rels&&t.rels.length&&(c=new F,r.render(c,t.rels),e.append(c.xml,{name:Rn(s)})),t.comments.length>0&&(c=new F,i.render(c,t),e.append(c.xml,{name:Bn(s)}),c=new F,a.render(c,t),e.append(c.xml,{name:Hn(s)}))})}addDrawings(e,t){let n=new aa,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:Wn(i.name)}),t=r.toXml(i.rels),e.append(t,{name:Gn(i.name)})}})}addTables(e,t){let n=new fa;t.worksheets.forEach(t=>{let{tables:r}=t;r.forEach(t=>{n.prepare(t,{});let r=n.toXml(t);e.append(r,{name:Un(t.target)})})})}addPivotTables(t,n){if(!n.pivotTables.length)return;let r=new pa,i=new ga,a=new _a,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:Kn(s)})}if(n.cacheRecords){let e=r.toXml(n.cacheRecords);t.append(e,{name:Jn(s)})}}else{let e=r.toXml(n);t.append(e,{name:Jn(s)}),e=i.toXml(n),t.append(e,{name:Kn(s)})}let c=o.toXml([{Id:`rId1`,Type:e.RelType.PivotCacheRecords,Target:Yn(s)}]);t.append(c,{name:qn(s)}),c=a.toXml(n),t.append(c,{name:Xn(s)}),c=o.toXml([{Id:`rId1`,Type:e.RelType.PivotCacheDefinition,Target:Qn(s)}]),t.append(c,{name:Zn(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 en,e.styles=e.useStyles?new V(!0):new V.Mock;let n=new Er,r=new Hi;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=[];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)})}};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,hc=(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,gc=[0,31,29,31,30,31,30,31,31,30,31,30,31];function _c(e,t,n){if(t<1||t>12||n<1||n>gc[t])return null;let r=new Date(e,t-1,n);return r.getMonth()===t-1?r:null}function vc(e,t,n,r,i,a){return t<1||t>12||n<1||n>gc[t]||r>23||i>59||a>59?null:new Date(e,t-1,n,r,i,a)}function yc(e){return e.charCodeAt(4)!==45||e.charCodeAt(7)!==45?null:_c(hc(e,0),Z(e,5),Z(e,8))}function bc(e){return e.charCodeAt(4)!==45||e.charCodeAt(7)!==45||e.charCodeAt(10)!==84||e.charCodeAt(13)!==58||e.charCodeAt(16)!==58?null:vc(hc(e,0),Z(e,5),Z(e,8),Z(e,11),Z(e,14),Z(e,17))}function xc(e){return e.charCodeAt(4)!==45||e.charCodeAt(7)!==45||e.charCodeAt(10)!==32||e.charCodeAt(13)!==58||e.charCodeAt(16)!==58?null:vc(hc(e,0),Z(e,5),Z(e,8),Z(e,11),Z(e,14),Z(e,17))}function Sc(e){if(e.charCodeAt(19)!==90)return null;let t=new Date(e);return isNaN(t.getTime())?null:t}function Cc(e){if(e.charCodeAt(19)!==46||e.charCodeAt(23)!==90)return null;let t=new Date(e);return isNaN(t.getTime())?null:t}function wc(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 Tc(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 Ec(e){let t=e.charCodeAt(2);return t!==45&&t!==47||e.charCodeAt(5)!==t?null:_c(hc(e,6),Z(e,0),Z(e,3))}function Dc(e){let t=e.charCodeAt(2);return t!==45&&t!==47||e.charCodeAt(5)!==t?null:_c(hc(e,6),Z(e,3),Z(e,0))}function Oc(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:vc(hc(e,6),Z(e,0),Z(e,3),Z(e,11),Z(e,14),Z(e,17))}function kc(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:vc(hc(e,6),Z(e,3),Z(e,0),Z(e,11),Z(e,14),Z(e,17))}let Ac={"YYYY-MM-DD":yc,"YYYY-MM-DD[T]HH:mm:ss":bc,"YYYY-MM-DD HH:mm:ss":xc,"YYYY-MM-DD[T]HH:mm:ssZ":e=>e.length===20?Sc(e):e.length===25?wc(e):null,"YYYY-MM-DD[T]HH:mm:ss.SSSZ":e=>e.length===24?Cc(e):e.length===29?Tc(e):null,"MM-DD-YYYY":Ec,"MM-DD-YYYY HH:mm:ss":Oc,"MM/DD/YYYY HH:mm:ss":Oc,"DD-MM-YYYY":Dc,"DD-MM-YYYY HH:mm:ss":kc,"DD/MM/YYYY HH:mm:ss":kc},jc=[[10,[yc]],[19,[bc,xc]],[20,[Sc]],[24,[Cc]],[25,[wc]],[29,[Tc]]];var Mc=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=>Ac[e]).filter(Boolean))}static iso(){let t=[];for(let[,e]of jc)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 Nc(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 Pc=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}${Nc(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`:Nc(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 Fc(e,t){return t===`,`?String(e).split(`.`).join(`,`):String(e)}function Ic(e,t){if(t!==`,`)return Number(e);let n=e.trim();return/^-?\d+(,\d+)?([eE][+-]?\d+)?$/.test(n)?Number(n.replace(`,`,`.`)):Number(e)}function Lc(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function Rc(e){return e.length===1}function zc(e){return e.length===1}function Bc(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 Vc(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,E=0,D=!1,O=!1;u===!0?D=!0:Array.isArray(u)?(T=u,E=u.filter(e=>e!=null).length,Bc(u),D=!0,d||(O=!0)):typeof u==`function`&&(D=!0);let ce=s||c&&l?e=>e.trim():c?e=>e.trimStart():l?e=>e.trimEnd():e=>e,le=e=>{if(D&&!O){if(typeof u==`function`){let t=u(e);Bc(t),T=t}else Array.isArray(u)||(Bc(e),T=e);return E=T.filter(e=>e!=null).length,O=!0,!1}if(se<h)return se++,!1;if(T&&T.length>0){let t=E,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},ue=e.length;for(;w<ue;){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(ce(C)),C=``,w++;else if(t===`
|
|
131
|
+
`||t===`\r`){if(t===`\r`&&e[w+1]===`
|
|
132
|
+
`&&w++,S.push(ce(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(le(S)&&(ne.push(S),oe++),S=[],w++,p!==void 0&&oe>=p)break}else C+=t,w++}if((C!==``||S.length>0)&&(S.push(ce(C)),ae>=m&&!(f&&S[0]?.startsWith(f)))){let e=S.length===1&&S[0]===``;ee&&e||p!==void 0&&oe>=p||le(S)&&ne.push(S)}if(D&&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 k=ne;if(v&&(k=k.map(e=>v(e)).filter(e=>e!=null)),y){let e=[],t=[];for(let n of k){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(k=e,t.length>0)return{rows:k,invalidRows:t}}return k}function Hc(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(`[${Lc(n)}${Lc(v)}\r\n]`):null,b=_?new RegExp(Lc(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`?Fc(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 Uc=class extends ze{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 Rc(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 zc(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
|
+
`||this.appendToField(`
|
|
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
|
+
`||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()})}},Wc=class extends ze{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(Gc(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 Rc(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`?Fc(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 Gc(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}let Kc=[`YYYY-MM-DD[T]HH:mm:ssZ`,`YYYY-MM-DD[T]HH:mm:ss`,`MM-DD-YYYY`,`YYYY-MM-DD`],qc={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 Jc(e,t){let n=Mc.create(e),r=t?.decimalSeparator??`.`;return function(e){if(e===``)return null;if(typeof e==`string`){let t=Ic(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=qc[e];return i===void 0?e:i}}function Yc(e,t){let n=e?Pc.create(e,{utc:t}):Pc.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 Xc=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??Kc,a=t?.map||Jc(i,{decimalSeparator:t?.valueMapperOptions?.decimalSeparator??t?.parserOptions?.decimalSeparator}),o=Vc(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||Yc(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}),Hc(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??Kc,i=t?.map||Jc(r,{decimalSeparator:t?.valueMapperOptions?.decimalSeparator??t?.parserOptions?.decimalSeparator}),a=new Uc(t?.parserOptions);return new Promise((t,r)=>{a.on(`data`,e=>n.addRow(e.map(i))),qe(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||Yc(r,i),o=t?.includeEmptyRows!==!1,s=new Wc({...t?.formatterOptions}),c=qe(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||Yc(n,r),a=e?.includeEmptyRows!==!1,o=new Wc({...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??Kc,r=e?.map||Jc(n,{decimalSeparator:e?.valueMapperOptions?.decimalSeparator??e?.parserOptions?.decimalSeparator}),i=new Uc(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
|
+
Use csv.load(csvString) or csv.read(stream) instead.
|
|
141
|
+
Example: const response = await fetch('/data.csv');
|
|
142
|
+
workbook.csv.load(await response.text());`)}async writeFile(e,t){throw Error(`csv.writeFile() is not available in browser.
|
|
143
|
+
Use csv.writeBuffer() and trigger a download instead.
|
|
144
|
+
Example: const buffer = await workbook.csv.writeBuffer();
|
|
145
|
+
download(new Blob([buffer]), 'output.csv');`)}},Zc=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}},Qc=class{constructor(e){this.writer=e}push(e){this.writer.addHyperlink(e)}},$c=class{constructor(e){this.id=e.id,this.count=0,this._hyperlinks=[],this._workbook=e.workbook}get stream(){return this._stream||=this._workbook._openStream(Rn(this.id)),this._stream}get length(){return this._hyperlinks.length}each(e){return this._hyperlinks.forEach(e)}get hyperlinksProxy(){return this._hyperlinksProxy||=new Qc(this)}addHyperlink(e){let t={Target:e.target,Type:G.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="${xe(e.Target)}" TargetMode="${e.TargetMode}"/>`):this.stream.write(`<Relationship Id="${t}" Type="${e.Type}" Target="${e.Target}"/>`),t}_writeClose(){this.stream.write(`</Relationships>`)}},el=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(Bn(this.id)),this._commentsStream}get vmlStream(){return this._vmlStream||=this._workbook._openStream(Hn(this.id)),this._vmlStream}_addRelationships(){let e={Type:G.Comments,Target:tr(this.id)};this._sheetRelsWriter.addRelationship(e);let t={Type:G.VmlDrawing,Target:nr(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 Ca,r=new F;n.render(r,e),this.commentsStream.write(r.xml);let i=new ja,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 Fa,$={dataValidations:new zr,sheetProperties:new Ur,sheetFormatProperties:new Wr,columns:new R({tag:`cols`,count:!1,childXform:new Mr}),row:new jr,hyperlinks:new R({tag:`hyperlinks`,count:!1,childXform:new Pr}),sheetViews:new R({tag:`sheetViews`,count:!1,childXform:new Kr}),sheetProtection:new qr,pageMargins:new Jr,pageSeteup:new ei,autoFilter:new ri,picture:new ii,conditionalFormattings:new Ti,headerFooter:new ui,rowBreaks:new ci,colBreaks:new li};var tl=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 $c(e),this._sheetCommentsWriter=new el(this,this._sheetRelsWriter,e),this._dimensions=new r,this._rowZero=1,this._rowOffset=0,this.committed=!1,this.dataValidations=new pe,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(Ln(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 D(this,e)),n}addRow(e){let t=new D(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=ke(Ye.randomBytes(16)),this.sheetProtection.spinCount=t&&`spinCount`in t?t.spinCount:1e5,this.sheetProtection.hashValue=await Ye.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:ur(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 nl=new Uint8Array,rl=new TextDecoder;var il=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 Zc,this.styles=e.useStyles?new V(!0):new V.Mock(!0),this._definedNames=new lt,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 us((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?Re(e.stream):new Ba}get definedNames(){return this._definedNames}_openStream(e){let t=new Ba({bufSize:this._trueStreaming?4096:65536,batch:!this._trueStreaming}),n=new ls(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(nl,!0),t.emit(`zipped`)}),t}_addFile(e,t,n){let r=new ls(t,{level:this.compressionLevel});this.zip.add(r);let i;i=n?he(typeof e==`string`?e:rl.decode(e)):typeof e==`string`?Ie(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.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(Na,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},n=new dr;this._addFile(n.toXml(t),U.contentTypes),e()})}addMedia(){return Promise.all(this.media.map(async e=>{if(e.type===`image`){let t=In(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)}),U.docPropsApp),e()})}addCore(){return new Promise(e=>{let t=new Yt;this._addFile(t.toXml(this),U.docPropsCore),e()})}addSharedStrings(){return this.sharedStrings.count?new Promise(e=>{let t=new en;this._addFile(t.toXml(this.sharedStrings),U.xlSharedStrings),e()}):Promise.resolve()}addWorkbookRels(){let e=1,t=[{Id:`rId${e++}`,Type:G.Styles,Target:$n.workbookStyles},{Id:`rId${e++}`,Type:G.Theme,Target:$n.workbookTheme1}];return this.sharedStrings.count&&t.push({Id:`rId${e++}`,Type:G.SharedStrings,Target:$n.workbookSharedStrings}),this._worksheets.forEach(n=>{n&&(n.rId=`rId${e++}`,t.push({Id:n.rId,Type:G.Worksheet,Target:zn(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 Er;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()})}},al=class extends il{constructor(e={}){super(e,tl)}};async function*ol(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 sl=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 Ct(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 D(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=ye(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=ye(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&&Ce(e)?t.value=_e(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)}}},cl=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 Ct(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)}}},ll=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(ol(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 Er;this.model=await t.parseStream(ol(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 Ct(ol(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(ol(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?.[zn(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=fc({forceStream:!0});e.on(`error`,e=>t.emit(`error`,e)),e.pipe(t);for await(let e of ol(t)){let t,n=_n(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=vn(n)?.toString(),t)if(this.workbookRels&&(this.options.sharedStrings!==`cache`||this.sharedStrings)){yield*this._parseWorksheet(ol(e),t);continue}else{yield{eventType:`waiting-worksheet`,sheetNo:t,entry:e};continue}if(t=yn(n)?.toString(),t){yield*this._parseHyperlinks(ol(e),t);continue}break}e.autodrain()}}},ul=class extends ll{constructor(e,t={}){super(e,t,sl,cl)}async _storeWaitingWorksheet(e,t){let n=[],r=new TextEncoder;for await(let e of ol(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)}}},dl=class{static{this.Writer=al}static{this.Reader=ul}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 lt}get xlsx(){return this._xlsx||=new mc(this),this._xlsx}get csv(){return this._csv||=new Xc(this),this._csv}static createStreamWriter(e){return new al(e)}static createStreamReader(e,t){return new ul(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 it({...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 it({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 fl=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 pl(e,t){let n=Math.round(e).toString();for(;n.length<t;)n=`0`+n;return n}function ml(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 hl(e,t){let n=10**t;return Math.round(e*n)/n}function gl(e){let t=e.replace(/_./g,` `);return t=t.replace(/\*./g,``),t}function _l(e){return/^General$/i.test(e.trim())}function vl(e){let t=e.replace(/\[[^\]]*\]/g,``);return/[ymdhs]/i.test(t)&&!/^[#0.,E%$\s()\-+]+$/i.test(t)}let yl=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],bl=[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],xl=[`J`,`F`,`M`,`A`,`M`,`J`,`J`,`A`,`S`,`O`,`N`,`D`],Sl=[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],Cl=[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`];function wl(e,t){let n=Math.round(e*86400)%86400,r=Math.floor(n/3600),i=Math.floor(n%3600/60),a=n%60,o=_e(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=gl(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,xl[c]).replace(/\x00MN4\x00/g,bl[c]).replace(/\x00MN3\x00/g,yl[c]).replace(/\x00M2\x00/g,(c+1).toString().padStart(2,`0`)).replace(/\x00M1\x00/g,(c+1).toString()).replace(/\x00DN4\x00/g,Cl[u]).replace(/\x00DN3\x00/g,Sl[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 Tl(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 El(e,t){let n=(t.match(/%/g)||[]).length;return jl(e*100**n,t.replace(/%/g,``)||`0`)+`%`.repeat(n)}function Dl(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=hl(r/10**s,a).toFixed(a),l=s>=0?o?`+`:``:`-`,u=pl(Math.abs(s),2);return n+c+`E`+l+u}function Ol(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 kl(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]=Ol(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 Al(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 jl(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=``]=hl(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=ml(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 Ml(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 Nl(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 Pl(e,t){if(typeof t==`string`){let n=Il(e);return n.length>=4&&n[3]?Ml(n[3]).replace(/@/g,t):t}if(typeof t==`boolean`)return t?`TRUE`:`FALSE`;let n=Il(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&&Nl(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 Fl(e,t){let n=Il(e);return n.length>=2&&n[1]===t}function Il(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 Ll(e,t){if(t==null)return``;if(_l(e))return Tl(t);if(typeof t==`string`)return Pl(e,t);if(typeof t==`boolean`)return t?`TRUE`:`FALSE`;let n=t,r=Pl(e,n);n<0&&Fl(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=gl(i),i=Ml(i),/\[[hms]+\]/i.test(i))return Al(n,i);if(vl(i))return wl(n,i);if(i.includes(`%`))return El(n,i);if(/E[+-]?/i.test(i))return Dl(n,i);if(/\?+\s*\/\s*[\d?]+/.test(i))return kl(n,i);if(i.includes(`(`)&&i.includes(`)`)&&n<0){let e=i.replace(/\(|\)/g,``);return`(`+jl(-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=jl(n,i);return a+l+o}function Rl(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 Bl(e,t,n){if(e instanceof Date){let r=ge(e);return Rl(t)?(r%=1,r<0&&(r+=1),Ll(t,r)):Ll(n&&zl(t)?n:t,r)}return Ll(t,e)}function Vl(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 Bl(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 Bl(e,i,t)}return e.text}function Hl(e){return n.l2n(e.toUpperCase())-1}function Ul(e){return n.n2l(e+1)}function Wl(e){return parseInt(e,10)-1}function Gl(e){return String(e+1)}function Kl(e){let t=n.decodeAddress(e.toUpperCase());return{c:t.col-1,r:t.row-1}}function ql(e){return n.encodeAddress(e.r+1,e.c+1)}function Jl(e){let t=e.indexOf(`:`);if(t===-1){let t=Kl(e);return{s:t,e:{...t}}}return{s:Kl(e.slice(0,t)),e:Kl(e.slice(t+1))}}function Yl(e,t){if(t===void 0){let t=e;return Yl(t.s,t.e)}let n=ql(e),r=ql(t);return n===r?n:`${n}:${r}`}function Xl(e,t){let n=t||{},r=new dl().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 Zl(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=Kl(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 Ql(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=Jl(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?Vl(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?Vl(a,n.dateFormat).trim():a.value,s=Ul(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?Vl(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?Vl(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 $l(e,t){let n=t||{},r=n.FS??`,`,i=n.RS??`
|
|
133
147
|
`,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(`
|
|
134
|
-
`)||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
|
|
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 eu(){return new dl}function tu(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 nu(e,t){let n=new dl().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=Kl(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 ru(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=Kl(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 iu(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=ue,e.Cell=b,e.Column=O,e.CsvFormatterStream=Wc,e.CsvParserStream=Uc,e.DataValidations=pe,e.DocumentType=s,e.Enums=u,e.ErrorValue=l,e.FormulaType=a,e.Image=k,e.PaperSize=fl,e.Range=r,e.ReadingOrder=c,e.RelationshipType=o,e.Row=D,e.Table=fe,e.ValueType=i,e.Workbook=dl,e.WorkbookReader=ul,e.WorkbookWriter=al,e.Worksheet=it,e.WorksheetReader=sl,e.WorksheetWriter=tl,e.aoaToSheet=nu,e.bookAppendSheet=tu,e.bookNew=eu,e.decodeCell=Kl,e.decodeCol=Hl,e.decodeRange=Jl,e.decodeRow=Wl,e.encodeCell=ql,e.encodeCol=Ul,e.encodeRange=Yl,e.encodeRow=Gl,e.jsonToSheet=Xl,e.sheetAddAoa=ru,e.sheetAddJson=Zl,e.sheetToAoa=iu,e.sheetToCsv=$l,e.sheetToJson=Ql,e})({});
|