@cj-tech-master/excelts 1.6.3 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +139 -24
- package/README_zh.md +140 -26
- package/dist/browser/excelts.esm.js +18468 -0
- package/dist/browser/excelts.esm.js.map +1 -0
- package/dist/browser/excelts.esm.min.js +125 -0
- package/dist/browser/excelts.iife.js +13107 -47146
- package/dist/browser/excelts.iife.js.map +1 -1
- package/dist/browser/excelts.iife.min.js +24 -106
- package/dist/cjs/csv/csv-core.js +701 -0
- package/dist/cjs/csv/csv-stream.js +646 -0
- package/dist/cjs/csv/csv.base.js +137 -0
- package/dist/cjs/csv/csv.browser.js +68 -0
- package/dist/cjs/csv/csv.js +218 -162
- package/dist/cjs/doc/anchor.js +2 -2
- package/dist/cjs/doc/cell.js +22 -22
- package/dist/cjs/doc/column.js +28 -7
- package/dist/cjs/doc/data-validations.js +3 -3
- package/dist/cjs/doc/defined-names.js +13 -13
- package/dist/cjs/doc/image.js +7 -7
- package/dist/cjs/doc/modelcontainer.js +2 -2
- package/dist/cjs/doc/note.js +2 -2
- package/dist/cjs/doc/pivot-table.js +5 -5
- package/dist/cjs/doc/range.js +11 -11
- package/dist/cjs/doc/row.js +16 -16
- package/dist/cjs/doc/table.js +5 -5
- package/dist/cjs/doc/workbook.base.js +211 -0
- package/dist/cjs/doc/workbook.browser.js +62 -0
- package/dist/cjs/doc/workbook.js +68 -179
- package/dist/cjs/doc/worksheet.js +45 -41
- package/dist/cjs/index.js +49 -32
- package/dist/cjs/stream/xlsx/hyperlink-reader.js +6 -6
- package/dist/cjs/stream/xlsx/sheet-comments-writer.js +12 -12
- package/dist/cjs/stream/xlsx/sheet-rels-writer.js +4 -4
- package/dist/cjs/stream/xlsx/workbook-reader.js +22 -22
- package/dist/cjs/stream/xlsx/workbook-writer.js +38 -38
- package/dist/cjs/stream/xlsx/worksheet-reader.js +17 -17
- package/dist/cjs/stream/xlsx/worksheet-writer.js +67 -60
- package/dist/cjs/utils/browser-buffer.js +75 -0
- package/dist/cjs/utils/cell-format.js +2 -2
- package/dist/cjs/utils/cell-matrix.js +5 -5
- package/dist/cjs/utils/datetime.js +648 -0
- package/dist/cjs/utils/encryptor.browser.js +240 -0
- package/dist/cjs/utils/parse-sax.js +1191 -13
- package/dist/cjs/utils/shared-formula.js +5 -5
- package/dist/cjs/utils/sheet-utils.js +13 -13
- package/dist/cjs/utils/stream-buf.browser.js +355 -0
- package/dist/cjs/utils/stream-buf.js +5 -5
- package/dist/cjs/utils/unzip/extract.js +11 -11
- package/dist/cjs/utils/unzip/index.js +21 -21
- package/dist/cjs/utils/unzip/parse-extra-field.js +3 -3
- package/dist/cjs/utils/unzip/parse.js +16 -16
- package/dist/cjs/utils/unzip/zip-parser.js +14 -3
- package/dist/cjs/utils/utils.base.js +161 -0
- package/dist/cjs/utils/utils.browser.js +89 -0
- package/dist/cjs/utils/utils.js +46 -154
- package/dist/cjs/utils/xml-stream.js +3 -3
- package/dist/cjs/utils/zip/compress.base.js +88 -0
- package/dist/cjs/utils/zip/compress.browser.js +127 -0
- package/dist/cjs/utils/zip/compress.js +18 -198
- package/dist/cjs/utils/zip/crc32.browser.js +88 -0
- package/dist/cjs/utils/zip/deflate-fallback.js +575 -0
- package/dist/cjs/utils/zip/index.js +17 -17
- package/dist/cjs/utils/zip/streaming-zip.js +264 -0
- package/dist/cjs/utils/zip/zip-builder.js +10 -10
- package/dist/cjs/utils/zip-stream.browser.js +135 -0
- package/dist/cjs/utils/zip-stream.js +4 -4
- package/dist/cjs/xlsx/xform/base-xform.js +4 -4
- package/dist/cjs/xlsx/xform/book/defined-name-xform.js +4 -4
- package/dist/cjs/xlsx/xform/book/sheet-xform.js +4 -4
- package/dist/cjs/xlsx/xform/book/workbook-calc-properties-xform.js +2 -2
- package/dist/cjs/xlsx/xform/book/workbook-pivot-cache-xform.js +2 -2
- package/dist/cjs/xlsx/xform/book/workbook-properties-xform.js +2 -2
- package/dist/cjs/xlsx/xform/book/workbook-view-xform.js +2 -2
- package/dist/cjs/xlsx/xform/book/workbook-xform.js +24 -24
- package/dist/cjs/xlsx/xform/comment/comment-xform.js +4 -4
- package/dist/cjs/xlsx/xform/comment/comments-xform.js +6 -6
- package/dist/cjs/xlsx/xform/comment/style/vml-position-xform.js +2 -2
- package/dist/cjs/xlsx/xform/comment/style/vml-protection-xform.js +2 -2
- package/dist/cjs/xlsx/xform/comment/vml-anchor-xform.js +2 -2
- package/dist/cjs/xlsx/xform/comment/vml-client-data-xform.js +10 -10
- package/dist/cjs/xlsx/xform/comment/vml-notes-xform.js +6 -6
- package/dist/cjs/xlsx/xform/comment/vml-shape-xform.js +6 -6
- package/dist/cjs/xlsx/xform/comment/vml-textbox-xform.js +2 -2
- package/dist/cjs/xlsx/xform/composite-xform.js +2 -2
- package/dist/cjs/xlsx/xform/core/app-heading-pairs-xform.js +2 -2
- package/dist/cjs/xlsx/xform/core/app-titles-of-parts-xform.js +2 -2
- package/dist/cjs/xlsx/xform/core/app-xform.js +11 -11
- package/dist/cjs/xlsx/xform/core/content-types-xform.js +4 -4
- package/dist/cjs/xlsx/xform/core/core-xform.js +23 -23
- package/dist/cjs/xlsx/xform/core/relationship-xform.js +2 -2
- package/dist/cjs/xlsx/xform/core/relationships-xform.js +6 -6
- package/dist/cjs/xlsx/xform/drawing/base-cell-anchor-xform.js +2 -2
- package/dist/cjs/xlsx/xform/drawing/blip-fill-xform.js +4 -4
- package/dist/cjs/xlsx/xform/drawing/blip-xform.js +2 -2
- package/dist/cjs/xlsx/xform/drawing/c-nv-pic-pr-xform.js +2 -2
- package/dist/cjs/xlsx/xform/drawing/c-nv-pr-xform.js +6 -6
- package/dist/cjs/xlsx/xform/drawing/cell-position-xform.js +7 -7
- package/dist/cjs/xlsx/xform/drawing/drawing-xform.js +10 -10
- package/dist/cjs/xlsx/xform/drawing/ext-lst-xform.js +2 -2
- package/dist/cjs/xlsx/xform/drawing/ext-xform.js +2 -2
- package/dist/cjs/xlsx/xform/drawing/hlink-click-xform.js +2 -2
- package/dist/cjs/xlsx/xform/drawing/nv-pic-pr-xform.js +6 -6
- package/dist/cjs/xlsx/xform/drawing/one-cell-anchor-xform.js +10 -10
- package/dist/cjs/xlsx/xform/drawing/pic-xform.js +9 -9
- package/dist/cjs/xlsx/xform/drawing/two-cell-anchor-xform.js +9 -9
- package/dist/cjs/xlsx/xform/list-xform.js +2 -2
- package/dist/cjs/xlsx/xform/pivot-table/cache-field-xform.js +5 -5
- package/dist/cjs/xlsx/xform/pivot-table/cache-field.js +3 -3
- package/dist/cjs/xlsx/xform/pivot-table/pivot-cache-definition-xform.js +10 -10
- package/dist/cjs/xlsx/xform/pivot-table/pivot-cache-records-xform.js +9 -9
- package/dist/cjs/xlsx/xform/pivot-table/pivot-table-xform.js +10 -11
- package/dist/cjs/xlsx/xform/sheet/auto-filter-xform.js +4 -4
- package/dist/cjs/xlsx/xform/sheet/cell-xform.js +65 -65
- package/dist/cjs/xlsx/xform/sheet/cf/cf-rule-xform.js +27 -27
- package/dist/cjs/xlsx/xform/sheet/cf/cfvo-xform.js +3 -3
- package/dist/cjs/xlsx/xform/sheet/cf/color-scale-xform.js +6 -6
- package/dist/cjs/xlsx/xform/sheet/cf/conditional-formatting-xform.js +6 -6
- package/dist/cjs/xlsx/xform/sheet/cf/conditional-formattings-xform.js +4 -4
- package/dist/cjs/xlsx/xform/sheet/cf/databar-xform.js +6 -6
- package/dist/cjs/xlsx/xform/sheet/cf/ext-lst-ref-xform.js +5 -5
- package/dist/cjs/xlsx/xform/sheet/cf/formula-xform.js +2 -2
- package/dist/cjs/xlsx/xform/sheet/cf/icon-set-xform.js +11 -11
- package/dist/cjs/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.js +3 -3
- package/dist/cjs/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js +11 -12
- package/dist/cjs/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.js +4 -4
- package/dist/cjs/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.js +8 -8
- package/dist/cjs/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.js +6 -6
- package/dist/cjs/xlsx/xform/sheet/cf-ext/databar-ext-xform.js +26 -26
- package/dist/cjs/xlsx/xform/sheet/cf-ext/f-ext-xform.js +2 -2
- package/dist/cjs/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.js +14 -14
- package/dist/cjs/xlsx/xform/sheet/cf-ext/sqref-ext-xform.js +2 -2
- package/dist/cjs/xlsx/xform/sheet/col-breaks-xform.js +38 -0
- package/dist/cjs/xlsx/xform/sheet/col-xform.js +6 -6
- package/dist/cjs/xlsx/xform/sheet/data-validations-xform.js +18 -18
- package/dist/cjs/xlsx/xform/sheet/dimension-xform.js +2 -2
- package/dist/cjs/xlsx/xform/sheet/drawing-xform.js +2 -2
- package/dist/cjs/xlsx/xform/sheet/ext-lst-xform.js +5 -5
- package/dist/cjs/xlsx/xform/sheet/header-footer-xform.js +2 -2
- package/dist/cjs/xlsx/xform/sheet/hyperlink-xform.js +2 -2
- package/dist/cjs/xlsx/xform/sheet/merge-cell-xform.js +2 -2
- package/dist/cjs/xlsx/xform/sheet/merges.js +8 -8
- package/dist/cjs/xlsx/xform/sheet/outline-properties-xform.js +2 -2
- package/dist/cjs/xlsx/xform/sheet/page-breaks-xform.js +15 -3
- package/dist/cjs/xlsx/xform/sheet/page-margins-xform.js +2 -2
- package/dist/cjs/xlsx/xform/sheet/page-setup-properties-xform.js +2 -2
- package/dist/cjs/xlsx/xform/sheet/page-setup-xform.js +2 -2
- package/dist/cjs/xlsx/xform/sheet/picture-xform.js +2 -2
- package/dist/cjs/xlsx/xform/sheet/print-options-xform.js +2 -2
- package/dist/cjs/xlsx/xform/sheet/row-breaks-xform.js +15 -17
- package/dist/cjs/xlsx/xform/sheet/row-xform.js +11 -11
- package/dist/cjs/xlsx/xform/sheet/sheet-format-properties-xform.js +2 -2
- package/dist/cjs/xlsx/xform/sheet/sheet-properties-xform.js +8 -8
- package/dist/cjs/xlsx/xform/sheet/sheet-protection-xform.js +2 -2
- package/dist/cjs/xlsx/xform/sheet/sheet-view-xform.js +4 -4
- package/dist/cjs/xlsx/xform/sheet/table-part-xform.js +2 -2
- package/dist/cjs/xlsx/xform/sheet/worksheet-xform.js +75 -70
- package/dist/cjs/xlsx/xform/simple/boolean-xform.js +2 -2
- package/dist/cjs/xlsx/xform/simple/date-xform.js +2 -2
- package/dist/cjs/xlsx/xform/simple/float-xform.js +2 -2
- package/dist/cjs/xlsx/xform/simple/integer-xform.js +2 -2
- package/dist/cjs/xlsx/xform/simple/string-xform.js +2 -2
- package/dist/cjs/xlsx/xform/static-xform.js +4 -4
- package/dist/cjs/xlsx/xform/strings/phonetic-text-xform.js +6 -6
- package/dist/cjs/xlsx/xform/strings/rich-text-xform.js +6 -6
- package/dist/cjs/xlsx/xform/strings/shared-string-xform.js +8 -8
- package/dist/cjs/xlsx/xform/strings/shared-strings-xform.js +6 -6
- package/dist/cjs/xlsx/xform/strings/text-xform.js +2 -2
- package/dist/cjs/xlsx/xform/style/alignment-xform.js +8 -8
- package/dist/cjs/xlsx/xform/style/border-xform.js +8 -8
- package/dist/cjs/xlsx/xform/style/color-xform.js +2 -2
- package/dist/cjs/xlsx/xform/style/dxf-xform.js +14 -14
- package/dist/cjs/xlsx/xform/style/fill-xform.js +9 -9
- package/dist/cjs/xlsx/xform/style/font-xform.js +22 -22
- package/dist/cjs/xlsx/xform/style/numfmt-xform.js +5 -5
- package/dist/cjs/xlsx/xform/style/protection-xform.js +2 -2
- package/dist/cjs/xlsx/xform/style/style-xform.js +6 -6
- package/dist/cjs/xlsx/xform/style/styles-xform.js +39 -39
- package/dist/cjs/xlsx/xform/style/underline-xform.js +2 -2
- package/dist/cjs/xlsx/xform/table/auto-filter-xform.js +4 -4
- package/dist/cjs/xlsx/xform/table/custom-filter-xform.js +2 -2
- package/dist/cjs/xlsx/xform/table/filter-column-xform.js +9 -9
- package/dist/cjs/xlsx/xform/table/filter-xform.js +2 -2
- package/dist/cjs/xlsx/xform/table/table-column-xform.js +2 -2
- package/dist/cjs/xlsx/xform/table/table-style-info-xform.js +2 -2
- package/dist/cjs/xlsx/xform/table/table-xform.js +12 -12
- package/dist/cjs/xlsx/xlsx.base.js +742 -0
- package/dist/cjs/xlsx/xlsx.browser.js +162 -0
- package/dist/cjs/xlsx/xlsx.js +118 -892
- package/dist/esm/csv/csv-core.js +694 -0
- package/dist/esm/csv/csv-stream.js +638 -0
- package/dist/esm/csv/csv.base.js +127 -0
- package/dist/esm/csv/csv.browser.js +65 -0
- package/dist/esm/csv/csv.js +181 -159
- package/dist/esm/doc/column.js +21 -0
- package/dist/esm/doc/workbook.base.js +207 -0
- package/dist/esm/doc/workbook.browser.js +59 -0
- package/dist/esm/doc/workbook.js +64 -175
- package/dist/esm/doc/worksheet.js +4 -0
- package/dist/esm/index.browser.js +33 -1
- package/dist/esm/index.js +23 -8
- package/dist/esm/local.js +0 -1
- package/dist/esm/stream/xlsx/workbook-writer.js +1 -1
- package/dist/esm/stream/xlsx/worksheet-writer.js +8 -1
- package/dist/esm/utils/browser-buffer.js +67 -0
- package/dist/esm/utils/datetime.js +639 -0
- package/dist/esm/utils/encryptor.browser.js +237 -0
- package/dist/esm/utils/parse-sax.js +1188 -12
- package/dist/esm/utils/stream-buf.browser.js +352 -0
- package/dist/esm/utils/unzip/zip-parser.js +11 -0
- package/dist/esm/utils/utils.base.js +142 -0
- package/dist/esm/utils/utils.browser.js +68 -0
- package/dist/esm/utils/utils.js +15 -123
- package/dist/esm/utils/zip/compress.base.js +83 -0
- package/dist/esm/utils/zip/compress.browser.js +121 -0
- package/dist/esm/utils/zip/compress.js +16 -164
- package/dist/esm/utils/zip/crc32.browser.js +82 -0
- package/dist/esm/utils/zip/deflate-fallback.js +570 -0
- package/dist/esm/utils/zip/streaming-zip.js +259 -0
- package/dist/esm/utils/zip-stream.browser.js +132 -0
- package/dist/esm/xlsx/xform/pivot-table/pivot-table-xform.js +2 -3
- package/dist/esm/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js +2 -3
- package/dist/esm/xlsx/xform/sheet/col-breaks-xform.js +35 -0
- package/dist/esm/xlsx/xform/sheet/page-breaks-xform.js +13 -1
- package/dist/esm/xlsx/xform/sheet/row-breaks-xform.js +11 -13
- package/dist/esm/xlsx/xform/sheet/worksheet-xform.js +7 -2
- package/dist/esm/xlsx/xlsx.base.js +739 -0
- package/dist/esm/xlsx/xlsx.browser.js +159 -0
- package/dist/esm/xlsx/xlsx.js +114 -888
- package/dist/types/csv/csv-core.d.ts +207 -0
- package/dist/types/csv/csv-stream.d.ts +114 -0
- package/dist/types/csv/csv.base.d.ts +62 -0
- package/dist/types/csv/csv.browser.d.ts +33 -0
- package/dist/types/csv/csv.d.ts +97 -71
- package/dist/types/doc/anchor.d.ts +1 -1
- package/dist/types/doc/cell.d.ts +7 -7
- package/dist/types/doc/column.d.ts +9 -3
- package/dist/types/doc/defined-names.d.ts +4 -4
- package/dist/types/doc/image.d.ts +2 -2
- package/dist/types/doc/modelcontainer.d.ts +1 -1
- package/dist/types/doc/pivot-table.d.ts +1 -1
- package/dist/types/doc/range.d.ts +1 -1
- package/dist/types/doc/row.d.ts +3 -3
- package/dist/types/doc/table.d.ts +2 -2
- package/dist/types/doc/workbook.base.d.ts +111 -0
- package/dist/types/doc/workbook.browser.d.ts +38 -0
- package/dist/types/doc/workbook.d.ts +62 -92
- package/dist/types/doc/worksheet.d.ts +12 -10
- package/dist/types/index.browser.d.ts +19 -5
- package/dist/types/index.d.ts +24 -23
- package/dist/types/local.d.ts +0 -1
- package/dist/types/stream/xlsx/hyperlink-reader.d.ts +1 -1
- package/dist/types/stream/xlsx/workbook-reader.d.ts +4 -4
- package/dist/types/stream/xlsx/workbook-writer.d.ts +7 -7
- package/dist/types/stream/xlsx/worksheet-reader.d.ts +5 -5
- package/dist/types/stream/xlsx/worksheet-writer.d.ts +11 -9
- package/dist/types/types.d.ts +6 -0
- package/dist/types/utils/browser-buffer.d.ts +28 -0
- package/dist/types/utils/col-cache.d.ts +1 -1
- package/dist/types/utils/datetime.d.ts +85 -0
- package/dist/types/utils/encryptor.browser.d.ts +28 -0
- package/dist/types/utils/parse-sax.d.ts +108 -1
- package/dist/types/utils/sheet-utils.d.ts +3 -3
- package/dist/types/utils/stream-buf.browser.d.ts +41 -0
- package/dist/types/utils/unzip/extract.d.ts +6 -6
- package/dist/types/utils/unzip/index.d.ts +8 -8
- package/dist/types/utils/unzip/parse.d.ts +3 -3
- package/dist/types/utils/unzip/zip-parser.d.ts +5 -0
- package/dist/types/utils/utils.base.d.ts +29 -0
- package/dist/types/utils/utils.browser.d.ts +29 -0
- package/dist/types/utils/utils.d.ts +6 -25
- package/dist/types/utils/zip/compress.base.d.ts +45 -0
- package/dist/types/utils/zip/compress.browser.d.ts +63 -0
- package/dist/types/utils/zip/compress.d.ts +13 -45
- package/dist/types/utils/zip/crc32.browser.d.ts +52 -0
- package/dist/types/utils/zip/deflate-fallback.d.ts +39 -0
- package/dist/types/utils/zip/index.d.ts +5 -5
- package/dist/types/utils/zip/streaming-zip.d.ts +96 -0
- package/dist/types/utils/zip/zip-builder.d.ts +1 -1
- package/dist/types/utils/zip-stream.browser.d.ts +39 -0
- package/dist/types/xlsx/xform/base-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/book/defined-name-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/book/sheet-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/book/workbook-calc-properties-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/book/workbook-pivot-cache-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/book/workbook-properties-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/book/workbook-view-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/book/workbook-xform.d.ts +2 -2
- package/dist/types/xlsx/xform/comment/comment-xform.d.ts +2 -2
- package/dist/types/xlsx/xform/comment/comments-xform.d.ts +2 -2
- package/dist/types/xlsx/xform/comment/style/vml-position-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/comment/style/vml-protection-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/comment/vml-anchor-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/comment/vml-client-data-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/comment/vml-notes-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/comment/vml-shape-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/comment/vml-textbox-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/composite-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/core/app-heading-pairs-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/core/app-titles-of-parts-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/core/app-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/core/content-types-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/core/core-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/core/relationship-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/core/relationships-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/drawing/base-cell-anchor-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/drawing/blip-fill-xform.d.ts +2 -2
- package/dist/types/xlsx/xform/drawing/blip-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/drawing/c-nv-pic-pr-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/drawing/c-nv-pr-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/drawing/cell-position-xform.d.ts +2 -2
- package/dist/types/xlsx/xform/drawing/drawing-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/drawing/ext-lst-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/drawing/ext-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/drawing/hlink-click-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/drawing/nv-pic-pr-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/drawing/one-cell-anchor-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/drawing/pic-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/drawing/two-cell-anchor-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/list-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/pivot-table/cache-field-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/pivot-table/pivot-cache-definition-xform.d.ts +3 -3
- package/dist/types/xlsx/xform/pivot-table/pivot-cache-records-xform.d.ts +2 -2
- package/dist/types/xlsx/xform/pivot-table/pivot-table-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/auto-filter-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/cell-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/cf/cf-rule-xform.d.ts +6 -6
- package/dist/types/xlsx/xform/sheet/cf/cfvo-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/cf/color-scale-xform.d.ts +3 -3
- package/dist/types/xlsx/xform/sheet/cf/conditional-formatting-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/cf/conditional-formattings-xform.d.ts +2 -2
- package/dist/types/xlsx/xform/sheet/cf/databar-xform.d.ts +3 -3
- package/dist/types/xlsx/xform/sheet/cf/ext-lst-ref-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/cf/formula-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/cf/icon-set-xform.d.ts +2 -2
- package/dist/types/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.d.ts +3 -3
- package/dist/types/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.d.ts +2 -2
- package/dist/types/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.d.ts +3 -3
- package/dist/types/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.d.ts +2 -2
- package/dist/types/xlsx/xform/sheet/cf-ext/databar-ext-xform.d.ts +3 -3
- package/dist/types/xlsx/xform/sheet/cf-ext/f-ext-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.d.ts +3 -3
- package/dist/types/xlsx/xform/sheet/cf-ext/sqref-ext-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/col-breaks-xform.d.ts +16 -0
- package/dist/types/xlsx/xform/sheet/col-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/data-validations-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/dimension-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/drawing-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/ext-lst-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/header-footer-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/hyperlink-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/merge-cell-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/outline-properties-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/page-breaks-xform.d.ts +5 -1
- package/dist/types/xlsx/xform/sheet/page-margins-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/page-setup-properties-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/page-setup-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/picture-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/print-options-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/row-breaks-xform.d.ts +5 -1
- package/dist/types/xlsx/xform/sheet/row-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/sheet-format-properties-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/sheet-properties-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/sheet-protection-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/sheet-view-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/table-part-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/sheet/worksheet-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/simple/boolean-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/simple/date-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/simple/float-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/simple/integer-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/simple/string-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/static-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/strings/phonetic-text-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/strings/rich-text-xform.d.ts +3 -3
- package/dist/types/xlsx/xform/strings/shared-string-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/strings/shared-strings-xform.d.ts +2 -2
- package/dist/types/xlsx/xform/strings/text-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/style/alignment-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/style/border-xform.d.ts +2 -2
- package/dist/types/xlsx/xform/style/color-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/style/dxf-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/style/fill-xform.d.ts +2 -2
- package/dist/types/xlsx/xform/style/font-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/style/numfmt-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/style/protection-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/style/style-xform.d.ts +3 -3
- package/dist/types/xlsx/xform/style/styles-xform.d.ts +2 -2
- package/dist/types/xlsx/xform/style/underline-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/table/auto-filter-xform.d.ts +2 -2
- package/dist/types/xlsx/xform/table/custom-filter-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/table/filter-column-xform.d.ts +2 -2
- package/dist/types/xlsx/xform/table/filter-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/table/table-column-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/table/table-style-info-xform.d.ts +1 -1
- package/dist/types/xlsx/xform/table/table-xform.d.ts +1 -1
- package/dist/types/xlsx/xlsx.base.d.ts +134 -0
- package/dist/types/xlsx/xlsx.browser.d.ts +31 -0
- package/dist/types/xlsx/xlsx.d.ts +20 -80
- package/package.json +16 -39
|
@@ -1,33 +1,34 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.WorkSheetXform = void 0;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
const
|
|
7
|
-
const
|
|
8
|
-
const
|
|
9
|
-
const
|
|
10
|
-
const
|
|
11
|
-
const
|
|
12
|
-
const
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
const
|
|
16
|
-
const
|
|
17
|
-
const
|
|
18
|
-
const
|
|
19
|
-
const
|
|
20
|
-
const
|
|
21
|
-
const
|
|
22
|
-
const
|
|
23
|
-
const
|
|
24
|
-
const
|
|
25
|
-
const
|
|
26
|
-
const
|
|
27
|
-
const
|
|
28
|
-
const
|
|
29
|
-
const
|
|
30
|
-
const
|
|
4
|
+
const col_cache_1 = require("../../../utils/col-cache");
|
|
5
|
+
const xml_stream_1 = require("../../../utils/xml-stream");
|
|
6
|
+
const rel_type_1 = require("../../rel-type");
|
|
7
|
+
const merges_1 = require("./merges");
|
|
8
|
+
const base_xform_1 = require("../base-xform");
|
|
9
|
+
const list_xform_1 = require("../list-xform");
|
|
10
|
+
const row_xform_1 = require("./row-xform");
|
|
11
|
+
const col_xform_1 = require("./col-xform");
|
|
12
|
+
const dimension_xform_1 = require("./dimension-xform");
|
|
13
|
+
const hyperlink_xform_1 = require("./hyperlink-xform");
|
|
14
|
+
const merge_cell_xform_1 = require("./merge-cell-xform");
|
|
15
|
+
const data_validations_xform_1 = require("./data-validations-xform");
|
|
16
|
+
const sheet_properties_xform_1 = require("./sheet-properties-xform");
|
|
17
|
+
const sheet_format_properties_xform_1 = require("./sheet-format-properties-xform");
|
|
18
|
+
const sheet_view_xform_1 = require("./sheet-view-xform");
|
|
19
|
+
const sheet_protection_xform_1 = require("./sheet-protection-xform");
|
|
20
|
+
const page_margins_xform_1 = require("./page-margins-xform");
|
|
21
|
+
const page_setup_xform_1 = require("./page-setup-xform");
|
|
22
|
+
const print_options_xform_1 = require("./print-options-xform");
|
|
23
|
+
const auto_filter_xform_1 = require("./auto-filter-xform");
|
|
24
|
+
const picture_xform_1 = require("./picture-xform");
|
|
25
|
+
const drawing_xform_1 = require("./drawing-xform");
|
|
26
|
+
const table_part_xform_1 = require("./table-part-xform");
|
|
27
|
+
const row_breaks_xform_1 = require("./row-breaks-xform");
|
|
28
|
+
const col_breaks_xform_1 = require("./col-breaks-xform");
|
|
29
|
+
const header_footer_xform_1 = require("./header-footer-xform");
|
|
30
|
+
const conditional_formattings_xform_1 = require("./cf/conditional-formattings-xform");
|
|
31
|
+
const ext_lst_xform_1 = require("./ext-lst-xform");
|
|
31
32
|
const mergeRule = (rule, extRule) => {
|
|
32
33
|
Object.keys(extRule).forEach(key => {
|
|
33
34
|
const value = rule[key];
|
|
@@ -82,59 +83,60 @@ const mergeConditionalFormattings = (model, extModel) => {
|
|
|
82
83
|
// need to cope with rules in extModel that don't exist in model
|
|
83
84
|
return model;
|
|
84
85
|
};
|
|
85
|
-
class WorkSheetXform extends
|
|
86
|
+
class WorkSheetXform extends base_xform_1.BaseXform {
|
|
86
87
|
constructor(options) {
|
|
87
88
|
super();
|
|
88
89
|
const { maxRows, maxCols, ignoreNodes } = options || {};
|
|
89
90
|
this.ignoreNodes = ignoreNodes || [];
|
|
90
91
|
this.map = {
|
|
91
|
-
sheetPr: new
|
|
92
|
-
dimension: new
|
|
93
|
-
sheetViews: new
|
|
92
|
+
sheetPr: new sheet_properties_xform_1.SheetPropertiesXform(),
|
|
93
|
+
dimension: new dimension_xform_1.DimensionXform(),
|
|
94
|
+
sheetViews: new list_xform_1.ListXform({
|
|
94
95
|
tag: "sheetViews",
|
|
95
96
|
count: false,
|
|
96
|
-
childXform: new
|
|
97
|
+
childXform: new sheet_view_xform_1.SheetViewXform()
|
|
97
98
|
}),
|
|
98
|
-
sheetFormatPr: new
|
|
99
|
-
cols: new
|
|
100
|
-
sheetData: new
|
|
99
|
+
sheetFormatPr: new sheet_format_properties_xform_1.SheetFormatPropertiesXform(),
|
|
100
|
+
cols: new list_xform_1.ListXform({ tag: "cols", count: false, childXform: new col_xform_1.ColXform() }),
|
|
101
|
+
sheetData: new list_xform_1.ListXform({
|
|
101
102
|
tag: "sheetData",
|
|
102
103
|
count: false,
|
|
103
104
|
empty: true,
|
|
104
|
-
childXform: new
|
|
105
|
+
childXform: new row_xform_1.RowXform({ maxItems: maxCols }),
|
|
105
106
|
maxItems: maxRows
|
|
106
107
|
}),
|
|
107
|
-
autoFilter: new
|
|
108
|
-
mergeCells: new
|
|
108
|
+
autoFilter: new auto_filter_xform_1.AutoFilterXform(),
|
|
109
|
+
mergeCells: new list_xform_1.ListXform({
|
|
109
110
|
tag: "mergeCells",
|
|
110
111
|
count: true,
|
|
111
|
-
childXform: new
|
|
112
|
+
childXform: new merge_cell_xform_1.MergeCellXform()
|
|
112
113
|
}),
|
|
113
|
-
rowBreaks: new
|
|
114
|
-
|
|
114
|
+
rowBreaks: new row_breaks_xform_1.RowBreaksXform(),
|
|
115
|
+
colBreaks: new col_breaks_xform_1.ColBreaksXform(),
|
|
116
|
+
hyperlinks: new list_xform_1.ListXform({
|
|
115
117
|
tag: "hyperlinks",
|
|
116
118
|
count: false,
|
|
117
|
-
childXform: new
|
|
119
|
+
childXform: new hyperlink_xform_1.HyperlinkXform()
|
|
118
120
|
}),
|
|
119
|
-
pageMargins: new
|
|
120
|
-
dataValidations: new
|
|
121
|
-
pageSetup: new
|
|
122
|
-
headerFooter: new
|
|
123
|
-
printOptions: new
|
|
124
|
-
picture: new
|
|
125
|
-
drawing: new
|
|
126
|
-
sheetProtection: new
|
|
127
|
-
tableParts: new
|
|
121
|
+
pageMargins: new page_margins_xform_1.PageMarginsXform(),
|
|
122
|
+
dataValidations: new data_validations_xform_1.DataValidationsXform(),
|
|
123
|
+
pageSetup: new page_setup_xform_1.PageSetupXform(),
|
|
124
|
+
headerFooter: new header_footer_xform_1.HeaderFooterXform(),
|
|
125
|
+
printOptions: new print_options_xform_1.PrintOptionsXform(),
|
|
126
|
+
picture: new picture_xform_1.PictureXform(),
|
|
127
|
+
drawing: new drawing_xform_1.DrawingXform(),
|
|
128
|
+
sheetProtection: new sheet_protection_xform_1.SheetProtectionXform(),
|
|
129
|
+
tableParts: new list_xform_1.ListXform({
|
|
128
130
|
tag: "tableParts",
|
|
129
131
|
count: true,
|
|
130
|
-
childXform: new
|
|
132
|
+
childXform: new table_part_xform_1.TablePartXform()
|
|
131
133
|
}),
|
|
132
|
-
conditionalFormatting: new
|
|
133
|
-
extLst: new
|
|
134
|
+
conditionalFormatting: new conditional_formattings_xform_1.ConditionalFormattingsXform(),
|
|
135
|
+
extLst: new ext_lst_xform_1.ExtLstXform()
|
|
134
136
|
};
|
|
135
137
|
}
|
|
136
138
|
prepare(model, options) {
|
|
137
|
-
options.merges = new
|
|
139
|
+
options.merges = new merges_1.Merges();
|
|
138
140
|
model.hyperlinks = options.hyperlinks = [];
|
|
139
141
|
model.comments = options.comments = [];
|
|
140
142
|
options.formulae = {};
|
|
@@ -153,7 +155,7 @@ class WorkSheetXform extends base_xform_js_1.BaseXform {
|
|
|
153
155
|
hyperlink.rId = rId;
|
|
154
156
|
rels.push({
|
|
155
157
|
Id: rId,
|
|
156
|
-
Type:
|
|
158
|
+
Type: rel_type_1.RelType.Hyperlink,
|
|
157
159
|
Target: hyperlink.target,
|
|
158
160
|
TargetMode: "External"
|
|
159
161
|
});
|
|
@@ -162,18 +164,18 @@ class WorkSheetXform extends base_xform_js_1.BaseXform {
|
|
|
162
164
|
if (model.comments.length > 0) {
|
|
163
165
|
const comment = {
|
|
164
166
|
Id: nextRid(rels),
|
|
165
|
-
Type:
|
|
167
|
+
Type: rel_type_1.RelType.Comments,
|
|
166
168
|
Target: `../comments${model.id}.xml`
|
|
167
169
|
};
|
|
168
170
|
rels.push(comment);
|
|
169
171
|
const vmlDrawing = {
|
|
170
172
|
Id: nextRid(rels),
|
|
171
|
-
Type:
|
|
173
|
+
Type: rel_type_1.RelType.VmlDrawing,
|
|
172
174
|
Target: `../drawings/vmlDrawing${model.id}.vml`
|
|
173
175
|
};
|
|
174
176
|
rels.push(vmlDrawing);
|
|
175
177
|
model.comments.forEach(item => {
|
|
176
|
-
item.refAddress =
|
|
178
|
+
item.refAddress = col_cache_1.colCache.decodeAddress(item.ref);
|
|
177
179
|
});
|
|
178
180
|
options.commentRefs.push({
|
|
179
181
|
commentName: `comments${model.id}`,
|
|
@@ -188,7 +190,7 @@ class WorkSheetXform extends base_xform_js_1.BaseXform {
|
|
|
188
190
|
bookImage = options.media[medium.imageId];
|
|
189
191
|
rels.push({
|
|
190
192
|
Id: rId,
|
|
191
|
-
Type:
|
|
193
|
+
Type: rel_type_1.RelType.Image,
|
|
192
194
|
Target: `../media/${bookImage.name}.${bookImage.extension}`
|
|
193
195
|
});
|
|
194
196
|
model.background = {
|
|
@@ -240,7 +242,7 @@ class WorkSheetXform extends base_xform_js_1.BaseXform {
|
|
|
240
242
|
};
|
|
241
243
|
drawing.rels.push({
|
|
242
244
|
Id: rIdHyperLink,
|
|
243
|
-
Type:
|
|
245
|
+
Type: rel_type_1.RelType.Hyperlink,
|
|
244
246
|
Target: medium.hyperlinks.hyperlink,
|
|
245
247
|
TargetMode: "External"
|
|
246
248
|
});
|
|
@@ -256,7 +258,7 @@ class WorkSheetXform extends base_xform_js_1.BaseXform {
|
|
|
256
258
|
table.rId = rId;
|
|
257
259
|
rels.push({
|
|
258
260
|
Id: rId,
|
|
259
|
-
Type:
|
|
261
|
+
Type: rel_type_1.RelType.Table,
|
|
260
262
|
Target: `../tables/${table.target}`
|
|
261
263
|
});
|
|
262
264
|
// dynamic styles
|
|
@@ -271,7 +273,7 @@ class WorkSheetXform extends base_xform_js_1.BaseXform {
|
|
|
271
273
|
(model.pivotTables || []).forEach((pivotTable) => {
|
|
272
274
|
rels.push({
|
|
273
275
|
Id: nextRid(rels),
|
|
274
|
-
Type:
|
|
276
|
+
Type: rel_type_1.RelType.PivotTable,
|
|
275
277
|
Target: `../pivotTables/pivotTable${pivotTable.tableNumber}.xml`
|
|
276
278
|
});
|
|
277
279
|
});
|
|
@@ -279,7 +281,7 @@ class WorkSheetXform extends base_xform_js_1.BaseXform {
|
|
|
279
281
|
this.map.extLst.prepare(model, options);
|
|
280
282
|
}
|
|
281
283
|
render(xmlStream, model) {
|
|
282
|
-
xmlStream.openXml(
|
|
284
|
+
xmlStream.openXml(xml_stream_1.XmlStream.StdDocAttributes);
|
|
283
285
|
xmlStream.openNode("worksheet", WorkSheetXform.WORKSHEET_ATTRIBUTES);
|
|
284
286
|
const sheetFormatPropertiesModel = model.properties
|
|
285
287
|
? {
|
|
@@ -327,14 +329,15 @@ class WorkSheetXform extends base_xform_js_1.BaseXform {
|
|
|
327
329
|
this.map.pageSetup.render(xmlStream, model.pageSetup);
|
|
328
330
|
this.map.headerFooter.render(xmlStream, model.headerFooter);
|
|
329
331
|
this.map.rowBreaks.render(xmlStream, model.rowBreaks);
|
|
330
|
-
this.map.
|
|
332
|
+
this.map.colBreaks.render(xmlStream, model.colBreaks);
|
|
333
|
+
this.map.drawing.render(xmlStream, model.drawing); // Note: must be after rowBreaks/colBreaks
|
|
331
334
|
this.map.picture.render(xmlStream, model.background); // Note: must be after drawing
|
|
332
335
|
this.map.tableParts.render(xmlStream, model.tables);
|
|
333
336
|
this.map.extLst.render(xmlStream, model);
|
|
334
337
|
if (model.rels) {
|
|
335
338
|
// add a <legacyDrawing /> node for each comment
|
|
336
339
|
model.rels.forEach(rel => {
|
|
337
|
-
if (rel.Type ===
|
|
340
|
+
if (rel.Type === rel_type_1.RelType.VmlDrawing) {
|
|
338
341
|
xmlStream.leafNode("legacyDrawing", { "r:id": rel.Id });
|
|
339
342
|
}
|
|
340
343
|
});
|
|
@@ -402,7 +405,9 @@ class WorkSheetXform extends base_xform_js_1.BaseXform {
|
|
|
402
405
|
background: this.map.picture.model,
|
|
403
406
|
drawing: this.map.drawing.model,
|
|
404
407
|
tables: this.map.tableParts.model,
|
|
405
|
-
conditionalFormattings
|
|
408
|
+
conditionalFormattings,
|
|
409
|
+
rowBreaks: this.map.rowBreaks.model || [],
|
|
410
|
+
colBreaks: this.map.colBreaks.model || []
|
|
406
411
|
};
|
|
407
412
|
if (this.map.autoFilter.model) {
|
|
408
413
|
this.model.autoFilter = this.map.autoFilter.model;
|
|
@@ -422,10 +427,10 @@ class WorkSheetXform extends base_xform_js_1.BaseXform {
|
|
|
422
427
|
// options.merges.reconcile(model.mergeCells, model.rows);
|
|
423
428
|
const rels = (model.relationships || []).reduce((h, rel) => {
|
|
424
429
|
h[rel.Id] = rel;
|
|
425
|
-
if (rel.Type ===
|
|
430
|
+
if (rel.Type === rel_type_1.RelType.Comments) {
|
|
426
431
|
model.comments = options.comments[rel.Target].comments;
|
|
427
432
|
}
|
|
428
|
-
if (rel.Type ===
|
|
433
|
+
if (rel.Type === rel_type_1.RelType.VmlDrawing && model.comments && model.comments.length) {
|
|
429
434
|
const vmlComment = options.vmlDrawings[rel.Target].comments;
|
|
430
435
|
model.comments.forEach((comment, index) => {
|
|
431
436
|
comment.note = Object.assign({}, comment.note, vmlComment[index]);
|
|
@@ -493,7 +498,7 @@ class WorkSheetXform extends base_xform_js_1.BaseXform {
|
|
|
493
498
|
// This is needed so that when writing, the worksheet knows which pivot tables it contains
|
|
494
499
|
model.pivotTables = [];
|
|
495
500
|
(model.relationships || []).forEach(rel => {
|
|
496
|
-
if (rel.Type ===
|
|
501
|
+
if (rel.Type === rel_type_1.RelType.PivotTable && options.pivotTables) {
|
|
497
502
|
const pivotTable = options.pivotTables[rel.Target];
|
|
498
503
|
if (pivotTable) {
|
|
499
504
|
model.pivotTables.push(pivotTable);
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.BooleanXform = void 0;
|
|
4
|
-
const
|
|
5
|
-
class BooleanXform extends
|
|
4
|
+
const base_xform_1 = require("../base-xform");
|
|
5
|
+
class BooleanXform extends base_xform_1.BaseXform {
|
|
6
6
|
constructor(options) {
|
|
7
7
|
super();
|
|
8
8
|
this.tag = options.tag;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.DateXform = void 0;
|
|
4
|
-
const
|
|
5
|
-
class DateXform extends
|
|
4
|
+
const base_xform_1 = require("../base-xform");
|
|
5
|
+
class DateXform extends base_xform_1.BaseXform {
|
|
6
6
|
constructor(options) {
|
|
7
7
|
super();
|
|
8
8
|
this.tag = options.tag;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.FloatXform = void 0;
|
|
4
|
-
const
|
|
5
|
-
class FloatXform extends
|
|
4
|
+
const base_xform_1 = require("../base-xform");
|
|
5
|
+
class FloatXform extends base_xform_1.BaseXform {
|
|
6
6
|
constructor(options) {
|
|
7
7
|
super();
|
|
8
8
|
this.tag = options.tag;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.IntegerXform = void 0;
|
|
4
|
-
const
|
|
5
|
-
class IntegerXform extends
|
|
4
|
+
const base_xform_1 = require("../base-xform");
|
|
5
|
+
class IntegerXform extends base_xform_1.BaseXform {
|
|
6
6
|
constructor(options) {
|
|
7
7
|
super();
|
|
8
8
|
this.tag = options.tag;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.StringXform = void 0;
|
|
4
|
-
const
|
|
5
|
-
class StringXform extends
|
|
4
|
+
const base_xform_1 = require("../base-xform");
|
|
5
|
+
class StringXform extends base_xform_1.BaseXform {
|
|
6
6
|
constructor(options) {
|
|
7
7
|
super();
|
|
8
8
|
this.tag = options.tag;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.StaticXform = void 0;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
4
|
+
const base_xform_1 = require("./base-xform");
|
|
5
|
+
const xml_stream_1 = require("../../utils/xml-stream");
|
|
6
6
|
// const model = {
|
|
7
7
|
// tag: 'name',
|
|
8
8
|
// $: {attr: 'value'},
|
|
@@ -23,7 +23,7 @@ function build(xmlStream, model) {
|
|
|
23
23
|
}
|
|
24
24
|
xmlStream.closeNode();
|
|
25
25
|
}
|
|
26
|
-
class StaticXform extends
|
|
26
|
+
class StaticXform extends base_xform_1.BaseXform {
|
|
27
27
|
constructor(model) {
|
|
28
28
|
super();
|
|
29
29
|
// This class is an optimisation for static (unimportant and unchanging) xml
|
|
@@ -36,7 +36,7 @@ class StaticXform extends base_xform_js_1.BaseXform {
|
|
|
36
36
|
}
|
|
37
37
|
render(xmlStream) {
|
|
38
38
|
if (!this._xml) {
|
|
39
|
-
const stream = new
|
|
39
|
+
const stream = new xml_stream_1.XmlStream();
|
|
40
40
|
build(stream, this._model);
|
|
41
41
|
this._xml = stream.xml;
|
|
42
42
|
}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.PhoneticTextXform = void 0;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
const
|
|
7
|
-
class PhoneticTextXform extends
|
|
4
|
+
const text_xform_1 = require("./text-xform");
|
|
5
|
+
const rich_text_xform_1 = require("./rich-text-xform");
|
|
6
|
+
const base_xform_1 = require("../base-xform");
|
|
7
|
+
class PhoneticTextXform extends base_xform_1.BaseXform {
|
|
8
8
|
constructor() {
|
|
9
9
|
super();
|
|
10
10
|
this.map = {
|
|
11
|
-
r: new
|
|
12
|
-
t: new
|
|
11
|
+
r: new rich_text_xform_1.RichTextXform(),
|
|
12
|
+
t: new text_xform_1.TextXform()
|
|
13
13
|
};
|
|
14
14
|
}
|
|
15
15
|
get tag() {
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.RichTextXform = void 0;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
const
|
|
7
|
-
class RichTextXform extends
|
|
4
|
+
const text_xform_1 = require("./text-xform");
|
|
5
|
+
const font_xform_1 = require("../style/font-xform");
|
|
6
|
+
const base_xform_1 = require("../base-xform");
|
|
7
|
+
class RichTextXform extends base_xform_1.BaseXform {
|
|
8
8
|
constructor(model) {
|
|
9
9
|
super();
|
|
10
10
|
this.model = model;
|
|
@@ -13,10 +13,10 @@ class RichTextXform extends base_xform_js_1.BaseXform {
|
|
|
13
13
|
return "r";
|
|
14
14
|
}
|
|
15
15
|
get textXform() {
|
|
16
|
-
return this._textXform || (this._textXform = new
|
|
16
|
+
return this._textXform || (this._textXform = new text_xform_1.TextXform());
|
|
17
17
|
}
|
|
18
18
|
get fontXform() {
|
|
19
|
-
return this._fontXform || (this._fontXform = new
|
|
19
|
+
return this._fontXform || (this._fontXform = new font_xform_1.FontXform(RichTextXform.FONT_OPTIONS));
|
|
20
20
|
}
|
|
21
21
|
render(xmlStream, model) {
|
|
22
22
|
const renderModel = model || this.model;
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.SharedStringXform = void 0;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
const
|
|
7
|
-
const
|
|
8
|
-
class SharedStringXform extends
|
|
4
|
+
const text_xform_1 = require("./text-xform");
|
|
5
|
+
const rich_text_xform_1 = require("./rich-text-xform");
|
|
6
|
+
const phonetic_text_xform_1 = require("./phonetic-text-xform");
|
|
7
|
+
const base_xform_1 = require("../base-xform");
|
|
8
|
+
class SharedStringXform extends base_xform_1.BaseXform {
|
|
9
9
|
constructor(model) {
|
|
10
10
|
super();
|
|
11
11
|
this.model = model;
|
|
12
12
|
this.map = {
|
|
13
|
-
r: new
|
|
14
|
-
t: new
|
|
15
|
-
rPh: new
|
|
13
|
+
r: new rich_text_xform_1.RichTextXform(),
|
|
14
|
+
t: new text_xform_1.TextXform(),
|
|
15
|
+
rPh: new phonetic_text_xform_1.PhoneticTextXform()
|
|
16
16
|
};
|
|
17
17
|
}
|
|
18
18
|
get tag() {
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.SharedStringsXform = void 0;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
const
|
|
7
|
-
class SharedStringsXform extends
|
|
4
|
+
const xml_stream_1 = require("../../../utils/xml-stream");
|
|
5
|
+
const base_xform_1 = require("../base-xform");
|
|
6
|
+
const shared_string_xform_1 = require("./shared-string-xform");
|
|
7
|
+
class SharedStringsXform extends base_xform_1.BaseXform {
|
|
8
8
|
constructor(model) {
|
|
9
9
|
super();
|
|
10
10
|
this.model = model || {
|
|
@@ -15,7 +15,7 @@ class SharedStringsXform extends base_xform_js_1.BaseXform {
|
|
|
15
15
|
this.rich = Object.create(null);
|
|
16
16
|
}
|
|
17
17
|
get sharedStringXform() {
|
|
18
|
-
return this._sharedStringXform || (this._sharedStringXform = new
|
|
18
|
+
return this._sharedStringXform || (this._sharedStringXform = new shared_string_xform_1.SharedStringXform());
|
|
19
19
|
}
|
|
20
20
|
get values() {
|
|
21
21
|
return this.model.values;
|
|
@@ -59,7 +59,7 @@ class SharedStringsXform extends base_xform_js_1.BaseXform {
|
|
|
59
59
|
// </sst>
|
|
60
60
|
render(xmlStream, model) {
|
|
61
61
|
const renderModel = model || this._values;
|
|
62
|
-
xmlStream.openXml(
|
|
62
|
+
xmlStream.openXml(xml_stream_1.XmlStream.StdDocAttributes);
|
|
63
63
|
xmlStream.openNode("sst", {
|
|
64
64
|
xmlns: "http://schemas.openxmlformats.org/spreadsheetml/2006/main",
|
|
65
65
|
count: renderModel.count,
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.TextXform = void 0;
|
|
4
|
-
const
|
|
4
|
+
const base_xform_1 = require("../base-xform");
|
|
5
5
|
// <t xml:space="preserve"> is </t>
|
|
6
|
-
class TextXform extends
|
|
6
|
+
class TextXform extends base_xform_1.BaseXform {
|
|
7
7
|
get tag() {
|
|
8
8
|
return "t";
|
|
9
9
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.AlignmentXform = void 0;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
4
|
+
const base_xform_1 = require("../base-xform");
|
|
5
|
+
const utils_1 = require("../../../utils/utils");
|
|
6
6
|
const Enums = {
|
|
7
7
|
ReadingOrder: {
|
|
8
8
|
LeftToRight: 1,
|
|
@@ -46,13 +46,13 @@ const validation = {
|
|
|
46
46
|
case "vertical":
|
|
47
47
|
return value;
|
|
48
48
|
default: {
|
|
49
|
-
const numValue = (0,
|
|
49
|
+
const numValue = (0, utils_1.validInt)(value);
|
|
50
50
|
return numValue !== undefined && numValue >= -90 && numValue <= 90 ? numValue : undefined;
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
53
|
},
|
|
54
54
|
indent(value) {
|
|
55
|
-
const numValue = (0,
|
|
55
|
+
const numValue = (0, utils_1.validInt)(value);
|
|
56
56
|
return Math.max(0, numValue);
|
|
57
57
|
},
|
|
58
58
|
readingOrder(value) {
|
|
@@ -84,7 +84,7 @@ const textRotationXform = {
|
|
|
84
84
|
return undefined;
|
|
85
85
|
},
|
|
86
86
|
toModel(textRotation) {
|
|
87
|
-
const tr = (0,
|
|
87
|
+
const tr = (0, utils_1.validInt)(textRotation);
|
|
88
88
|
if (tr !== undefined) {
|
|
89
89
|
if (tr === 255) {
|
|
90
90
|
return "vertical";
|
|
@@ -100,7 +100,7 @@ const textRotationXform = {
|
|
|
100
100
|
}
|
|
101
101
|
};
|
|
102
102
|
// Alignment encapsulates translation from style.alignment model to/from xlsx
|
|
103
|
-
class AlignmentXform extends
|
|
103
|
+
class AlignmentXform extends base_xform_1.BaseXform {
|
|
104
104
|
get tag() {
|
|
105
105
|
return "alignment";
|
|
106
106
|
}
|
|
@@ -140,8 +140,8 @@ class AlignmentXform extends base_xform_js_1.BaseXform {
|
|
|
140
140
|
}
|
|
141
141
|
add(node.attributes.horizontal, "horizontal", node.attributes.horizontal);
|
|
142
142
|
add(node.attributes.vertical, "vertical", node.attributes.vertical === "center" ? "middle" : node.attributes.vertical);
|
|
143
|
-
add(node.attributes.wrapText, "wrapText", (0,
|
|
144
|
-
add(node.attributes.shrinkToFit, "shrinkToFit", (0,
|
|
143
|
+
add(node.attributes.wrapText, "wrapText", (0, utils_1.parseBoolean)(node.attributes.wrapText));
|
|
144
|
+
add(node.attributes.shrinkToFit, "shrinkToFit", (0, utils_1.parseBoolean)(node.attributes.shrinkToFit));
|
|
145
145
|
add(node.attributes.indent, "indent", parseInt(node.attributes.indent, 10));
|
|
146
146
|
add(node.attributes.textRotation, "textRotation", textRotationXform.toModel(node.attributes.textRotation));
|
|
147
147
|
add(node.attributes.readingOrder, "readingOrder", node.attributes.readingOrder === "2" ? "rtl" : "ltr");
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.BorderXform = void 0;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
const
|
|
7
|
-
class EdgeXform extends
|
|
4
|
+
const base_xform_1 = require("../base-xform");
|
|
5
|
+
const utils_1 = require("../../../utils/utils");
|
|
6
|
+
const color_xform_1 = require("./color-xform");
|
|
7
|
+
class EdgeXform extends base_xform_1.BaseXform {
|
|
8
8
|
constructor(name) {
|
|
9
9
|
super();
|
|
10
10
|
this.name = name;
|
|
11
11
|
this.map = {
|
|
12
|
-
color: new
|
|
12
|
+
color: new color_xform_1.ColorXform()
|
|
13
13
|
};
|
|
14
14
|
}
|
|
15
15
|
get tag() {
|
|
@@ -97,7 +97,7 @@ EdgeXform.validStyleValues = [
|
|
|
97
97
|
return p;
|
|
98
98
|
}, {});
|
|
99
99
|
// Border encapsulates translation from border model to/from xlsx
|
|
100
|
-
class BorderXform extends
|
|
100
|
+
class BorderXform extends base_xform_1.BaseXform {
|
|
101
101
|
constructor() {
|
|
102
102
|
super();
|
|
103
103
|
this.map = {
|
|
@@ -145,8 +145,8 @@ class BorderXform extends base_xform_js_1.BaseXform {
|
|
|
145
145
|
switch (node.name) {
|
|
146
146
|
case "border":
|
|
147
147
|
this.reset();
|
|
148
|
-
this.diagonalUp = (0,
|
|
149
|
-
this.diagonalDown = (0,
|
|
148
|
+
this.diagonalUp = (0, utils_1.parseBoolean)(node.attributes.diagonalUp);
|
|
149
|
+
this.diagonalDown = (0, utils_1.parseBoolean)(node.attributes.diagonalDown);
|
|
150
150
|
return true;
|
|
151
151
|
default:
|
|
152
152
|
this.parser = this.map[node.name];
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ColorXform = void 0;
|
|
4
|
-
const
|
|
4
|
+
const base_xform_1 = require("../base-xform");
|
|
5
5
|
// Color encapsulates translation from color model to/from xlsx
|
|
6
|
-
class ColorXform extends
|
|
6
|
+
class ColorXform extends base_xform_1.BaseXform {
|
|
7
7
|
constructor(name) {
|
|
8
8
|
super();
|
|
9
9
|
// this.name controls the xm node name
|
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.DxfXform = void 0;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
const
|
|
7
|
-
const
|
|
8
|
-
const
|
|
9
|
-
const
|
|
10
|
-
const
|
|
4
|
+
const base_xform_1 = require("../base-xform");
|
|
5
|
+
const alignment_xform_1 = require("./alignment-xform");
|
|
6
|
+
const border_xform_1 = require("./border-xform");
|
|
7
|
+
const fill_xform_1 = require("./fill-xform");
|
|
8
|
+
const font_xform_1 = require("./font-xform");
|
|
9
|
+
const numfmt_xform_1 = require("./numfmt-xform");
|
|
10
|
+
const protection_xform_1 = require("./protection-xform");
|
|
11
11
|
// Style assists translation from style model to/from xlsx
|
|
12
|
-
class DxfXform extends
|
|
12
|
+
class DxfXform extends base_xform_1.BaseXform {
|
|
13
13
|
constructor() {
|
|
14
14
|
super();
|
|
15
15
|
this.map = {
|
|
16
|
-
alignment: new
|
|
17
|
-
border: new
|
|
18
|
-
fill: new
|
|
19
|
-
font: new
|
|
20
|
-
numFmt: new
|
|
21
|
-
protection: new
|
|
16
|
+
alignment: new alignment_xform_1.AlignmentXform(),
|
|
17
|
+
border: new border_xform_1.BorderXform(),
|
|
18
|
+
fill: new fill_xform_1.FillXform(),
|
|
19
|
+
font: new font_xform_1.FontXform(),
|
|
20
|
+
numFmt: new numfmt_xform_1.NumFmtXform(),
|
|
21
|
+
protection: new protection_xform_1.ProtectionXform()
|
|
22
22
|
};
|
|
23
23
|
}
|
|
24
24
|
get tag() {
|