@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,50 +1,50 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.CellXform = void 0;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
const
|
|
7
|
-
const
|
|
8
|
-
const
|
|
4
|
+
const utils_1 = require("../../../utils/utils");
|
|
5
|
+
const base_xform_1 = require("../base-xform");
|
|
6
|
+
const range_1 = require("../../../doc/range");
|
|
7
|
+
const enums_1 = require("../../../doc/enums");
|
|
8
|
+
const rich_text_xform_1 = require("../strings/rich-text-xform");
|
|
9
9
|
function getValueType(v) {
|
|
10
10
|
if (v === null || v === undefined) {
|
|
11
|
-
return
|
|
11
|
+
return enums_1.Enums.ValueType.Null;
|
|
12
12
|
}
|
|
13
13
|
if (v instanceof String || typeof v === "string") {
|
|
14
|
-
return
|
|
14
|
+
return enums_1.Enums.ValueType.String;
|
|
15
15
|
}
|
|
16
16
|
if (typeof v === "number") {
|
|
17
|
-
return
|
|
17
|
+
return enums_1.Enums.ValueType.Number;
|
|
18
18
|
}
|
|
19
19
|
if (typeof v === "boolean") {
|
|
20
|
-
return
|
|
20
|
+
return enums_1.Enums.ValueType.Boolean;
|
|
21
21
|
}
|
|
22
22
|
if (v instanceof Date) {
|
|
23
|
-
return
|
|
23
|
+
return enums_1.Enums.ValueType.Date;
|
|
24
24
|
}
|
|
25
25
|
if (v.text && v.hyperlink) {
|
|
26
|
-
return
|
|
26
|
+
return enums_1.Enums.ValueType.Hyperlink;
|
|
27
27
|
}
|
|
28
28
|
if (v.formula) {
|
|
29
|
-
return
|
|
29
|
+
return enums_1.Enums.ValueType.Formula;
|
|
30
30
|
}
|
|
31
31
|
if (v.error) {
|
|
32
|
-
return
|
|
32
|
+
return enums_1.Enums.ValueType.Error;
|
|
33
33
|
}
|
|
34
34
|
throw new Error("I could not understand type of value");
|
|
35
35
|
}
|
|
36
36
|
function getEffectiveCellType(cell) {
|
|
37
37
|
switch (cell.type) {
|
|
38
|
-
case
|
|
38
|
+
case enums_1.Enums.ValueType.Formula:
|
|
39
39
|
return getValueType(cell.result);
|
|
40
40
|
default:
|
|
41
41
|
return cell.type;
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
|
-
class CellXform extends
|
|
44
|
+
class CellXform extends base_xform_1.BaseXform {
|
|
45
45
|
constructor() {
|
|
46
46
|
super();
|
|
47
|
-
this.richTextXform = new
|
|
47
|
+
this.richTextXform = new rich_text_xform_1.RichTextXform();
|
|
48
48
|
}
|
|
49
49
|
get tag() {
|
|
50
50
|
return "c";
|
|
@@ -58,18 +58,18 @@ class CellXform extends base_xform_js_1.BaseXform {
|
|
|
58
58
|
options.comments.push({ ...model.comment, ref: model.address });
|
|
59
59
|
}
|
|
60
60
|
switch (model.type) {
|
|
61
|
-
case
|
|
62
|
-
case
|
|
61
|
+
case enums_1.Enums.ValueType.String:
|
|
62
|
+
case enums_1.Enums.ValueType.RichText:
|
|
63
63
|
if (options.sharedStrings) {
|
|
64
64
|
model.ssId = options.sharedStrings.add(model.value);
|
|
65
65
|
}
|
|
66
66
|
break;
|
|
67
|
-
case
|
|
67
|
+
case enums_1.Enums.ValueType.Date:
|
|
68
68
|
if (options.date1904) {
|
|
69
69
|
model.date1904 = true;
|
|
70
70
|
}
|
|
71
71
|
break;
|
|
72
|
-
case
|
|
72
|
+
case enums_1.Enums.ValueType.Hyperlink:
|
|
73
73
|
if (options.sharedStrings && model.text !== undefined && model.text !== null) {
|
|
74
74
|
model.ssId = options.sharedStrings.add(model.text);
|
|
75
75
|
}
|
|
@@ -79,10 +79,10 @@ class CellXform extends base_xform_js_1.BaseXform {
|
|
|
79
79
|
tooltip: model.tooltip
|
|
80
80
|
});
|
|
81
81
|
break;
|
|
82
|
-
case
|
|
82
|
+
case enums_1.Enums.ValueType.Merge:
|
|
83
83
|
options.merges.add(model);
|
|
84
84
|
break;
|
|
85
|
-
case
|
|
85
|
+
case enums_1.Enums.ValueType.Formula:
|
|
86
86
|
if (options.date1904) {
|
|
87
87
|
// in case valueType is date
|
|
88
88
|
model.date1904 = true;
|
|
@@ -101,7 +101,7 @@ class CellXform extends base_xform_js_1.BaseXform {
|
|
|
101
101
|
if (master.si === undefined) {
|
|
102
102
|
master.shareType = "shared";
|
|
103
103
|
master.si = options.siFormulae++;
|
|
104
|
-
master.range = new
|
|
104
|
+
master.range = new range_1.Range(master.address, model.address);
|
|
105
105
|
}
|
|
106
106
|
else if (master.range) {
|
|
107
107
|
master.range.expandToAddress(model.address);
|
|
@@ -139,32 +139,32 @@ class CellXform extends base_xform_js_1.BaseXform {
|
|
|
139
139
|
break;
|
|
140
140
|
}
|
|
141
141
|
switch (getValueType(model.result)) {
|
|
142
|
-
case
|
|
142
|
+
case enums_1.Enums.ValueType.Null: // ?
|
|
143
143
|
xmlStream.leafNode("f", attrs, model.formula);
|
|
144
144
|
break;
|
|
145
|
-
case
|
|
145
|
+
case enums_1.Enums.ValueType.String:
|
|
146
146
|
// oddly, formula results don't ever use shared strings
|
|
147
147
|
xmlStream.addAttribute("t", "str");
|
|
148
148
|
xmlStream.leafNode("f", attrs, model.formula);
|
|
149
149
|
xmlStream.leafNode("v", null, model.result);
|
|
150
150
|
break;
|
|
151
|
-
case
|
|
151
|
+
case enums_1.Enums.ValueType.Number:
|
|
152
152
|
xmlStream.leafNode("f", attrs, model.formula);
|
|
153
153
|
xmlStream.leafNode("v", null, model.result);
|
|
154
154
|
break;
|
|
155
|
-
case
|
|
155
|
+
case enums_1.Enums.ValueType.Boolean:
|
|
156
156
|
xmlStream.addAttribute("t", "b");
|
|
157
157
|
xmlStream.leafNode("f", attrs, model.formula);
|
|
158
158
|
xmlStream.leafNode("v", null, model.result ? 1 : 0);
|
|
159
159
|
break;
|
|
160
|
-
case
|
|
160
|
+
case enums_1.Enums.ValueType.Error:
|
|
161
161
|
xmlStream.addAttribute("t", "e");
|
|
162
162
|
xmlStream.leafNode("f", attrs, model.formula);
|
|
163
163
|
xmlStream.leafNode("v", null, model.result.error);
|
|
164
164
|
break;
|
|
165
|
-
case
|
|
165
|
+
case enums_1.Enums.ValueType.Date:
|
|
166
166
|
xmlStream.leafNode("f", attrs, model.formula);
|
|
167
|
-
xmlStream.leafNode("v", null, (0,
|
|
167
|
+
xmlStream.leafNode("v", null, (0, utils_1.dateToExcel)(model.result, model.date1904));
|
|
168
168
|
break;
|
|
169
169
|
// case Enums.ValueType.Hyperlink: // ??
|
|
170
170
|
// case Enums.ValueType.Formula:
|
|
@@ -173,7 +173,7 @@ class CellXform extends base_xform_js_1.BaseXform {
|
|
|
173
173
|
}
|
|
174
174
|
}
|
|
175
175
|
render(xmlStream, model) {
|
|
176
|
-
if (model.type ===
|
|
176
|
+
if (model.type === enums_1.Enums.ValueType.Null && !model.styleId) {
|
|
177
177
|
// if null and no style, exit
|
|
178
178
|
return;
|
|
179
179
|
}
|
|
@@ -183,21 +183,21 @@ class CellXform extends base_xform_js_1.BaseXform {
|
|
|
183
183
|
xmlStream.addAttribute("s", model.styleId);
|
|
184
184
|
}
|
|
185
185
|
switch (model.type) {
|
|
186
|
-
case
|
|
186
|
+
case enums_1.Enums.ValueType.Null:
|
|
187
187
|
break;
|
|
188
|
-
case
|
|
188
|
+
case enums_1.Enums.ValueType.Number:
|
|
189
189
|
xmlStream.leafNode("v", null, model.value);
|
|
190
190
|
break;
|
|
191
|
-
case
|
|
191
|
+
case enums_1.Enums.ValueType.Boolean:
|
|
192
192
|
xmlStream.addAttribute("t", "b");
|
|
193
193
|
xmlStream.leafNode("v", null, model.value ? "1" : "0");
|
|
194
194
|
break;
|
|
195
|
-
case
|
|
195
|
+
case enums_1.Enums.ValueType.Error:
|
|
196
196
|
xmlStream.addAttribute("t", "e");
|
|
197
197
|
xmlStream.leafNode("v", null, model.value.error);
|
|
198
198
|
break;
|
|
199
|
-
case
|
|
200
|
-
case
|
|
199
|
+
case enums_1.Enums.ValueType.String:
|
|
200
|
+
case enums_1.Enums.ValueType.RichText:
|
|
201
201
|
if (model.ssId !== undefined) {
|
|
202
202
|
xmlStream.addAttribute("t", "s");
|
|
203
203
|
xmlStream.leafNode("v", null, model.ssId);
|
|
@@ -215,10 +215,10 @@ class CellXform extends base_xform_js_1.BaseXform {
|
|
|
215
215
|
xmlStream.leafNode("v", null, model.value);
|
|
216
216
|
}
|
|
217
217
|
break;
|
|
218
|
-
case
|
|
219
|
-
xmlStream.leafNode("v", null, (0,
|
|
218
|
+
case enums_1.Enums.ValueType.Date:
|
|
219
|
+
xmlStream.leafNode("v", null, (0, utils_1.dateToExcel)(model.value, model.date1904));
|
|
220
220
|
break;
|
|
221
|
-
case
|
|
221
|
+
case enums_1.Enums.ValueType.Hyperlink:
|
|
222
222
|
if (model.ssId !== undefined) {
|
|
223
223
|
xmlStream.addAttribute("t", "s");
|
|
224
224
|
xmlStream.leafNode("v", null, model.ssId);
|
|
@@ -228,10 +228,10 @@ class CellXform extends base_xform_js_1.BaseXform {
|
|
|
228
228
|
xmlStream.leafNode("v", null, model.text);
|
|
229
229
|
}
|
|
230
230
|
break;
|
|
231
|
-
case
|
|
231
|
+
case enums_1.Enums.ValueType.Formula:
|
|
232
232
|
this.renderFormula(xmlStream, model);
|
|
233
233
|
break;
|
|
234
|
-
case
|
|
234
|
+
case enums_1.Enums.ValueType.Merge:
|
|
235
235
|
// nothing to add
|
|
236
236
|
break;
|
|
237
237
|
default:
|
|
@@ -305,10 +305,10 @@ class CellXform extends base_xform_js_1.BaseXform {
|
|
|
305
305
|
const { model } = this;
|
|
306
306
|
// first guess on cell type
|
|
307
307
|
if (model.formula || model.shareType) {
|
|
308
|
-
model.type =
|
|
308
|
+
model.type = enums_1.Enums.ValueType.Formula;
|
|
309
309
|
if (model.value) {
|
|
310
310
|
if (this.t === "str") {
|
|
311
|
-
model.result = (0,
|
|
311
|
+
model.result = (0, utils_1.xmlDecode)(model.value);
|
|
312
312
|
}
|
|
313
313
|
else if (this.t === "b") {
|
|
314
314
|
model.result = parseInt(model.value, 10) !== 0;
|
|
@@ -325,41 +325,41 @@ class CellXform extends base_xform_js_1.BaseXform {
|
|
|
325
325
|
else if (model.value !== undefined) {
|
|
326
326
|
switch (this.t) {
|
|
327
327
|
case "s":
|
|
328
|
-
model.type =
|
|
328
|
+
model.type = enums_1.Enums.ValueType.String;
|
|
329
329
|
model.value = parseInt(model.value, 10);
|
|
330
330
|
break;
|
|
331
331
|
case "str":
|
|
332
|
-
model.type =
|
|
333
|
-
model.value = (0,
|
|
332
|
+
model.type = enums_1.Enums.ValueType.String;
|
|
333
|
+
model.value = (0, utils_1.xmlDecode)(model.value);
|
|
334
334
|
break;
|
|
335
335
|
case "inlineStr":
|
|
336
|
-
model.type =
|
|
336
|
+
model.type = enums_1.Enums.ValueType.String;
|
|
337
337
|
break;
|
|
338
338
|
case "b":
|
|
339
|
-
model.type =
|
|
339
|
+
model.type = enums_1.Enums.ValueType.Boolean;
|
|
340
340
|
model.value = parseInt(model.value, 10) !== 0;
|
|
341
341
|
break;
|
|
342
342
|
case "e":
|
|
343
|
-
model.type =
|
|
343
|
+
model.type = enums_1.Enums.ValueType.Error;
|
|
344
344
|
model.value = { error: model.value };
|
|
345
345
|
break;
|
|
346
346
|
case "d":
|
|
347
347
|
// Strict OpenXML format stores dates as ISO strings with t="d"
|
|
348
348
|
// See: https://www.loc.gov/preservation/digital/formats/fdd/fdd000401.shtml
|
|
349
|
-
model.type =
|
|
349
|
+
model.type = enums_1.Enums.ValueType.Date;
|
|
350
350
|
model.value = new Date(model.value);
|
|
351
351
|
break;
|
|
352
352
|
default:
|
|
353
|
-
model.type =
|
|
353
|
+
model.type = enums_1.Enums.ValueType.Number;
|
|
354
354
|
model.value = parseFloat(model.value);
|
|
355
355
|
break;
|
|
356
356
|
}
|
|
357
357
|
}
|
|
358
358
|
else if (model.styleId) {
|
|
359
|
-
model.type =
|
|
359
|
+
model.type = enums_1.Enums.ValueType.Null;
|
|
360
360
|
}
|
|
361
361
|
else {
|
|
362
|
-
model.type =
|
|
362
|
+
model.type = enums_1.Enums.ValueType.Merge;
|
|
363
363
|
}
|
|
364
364
|
return false;
|
|
365
365
|
}
|
|
@@ -399,30 +399,30 @@ class CellXform extends base_xform_js_1.BaseXform {
|
|
|
399
399
|
model.styleId = undefined;
|
|
400
400
|
}
|
|
401
401
|
switch (model.type) {
|
|
402
|
-
case
|
|
402
|
+
case enums_1.Enums.ValueType.String:
|
|
403
403
|
if (typeof model.value === "number") {
|
|
404
404
|
if (options.sharedStrings) {
|
|
405
405
|
model.value = options.sharedStrings.getString(model.value);
|
|
406
406
|
}
|
|
407
407
|
}
|
|
408
408
|
if (model.value.richText) {
|
|
409
|
-
model.type =
|
|
409
|
+
model.type = enums_1.Enums.ValueType.RichText;
|
|
410
410
|
}
|
|
411
411
|
break;
|
|
412
|
-
case
|
|
413
|
-
if (style && (0,
|
|
414
|
-
model.type =
|
|
415
|
-
model.value = (0,
|
|
412
|
+
case enums_1.Enums.ValueType.Number:
|
|
413
|
+
if (style && (0, utils_1.isDateFmt)(style.numFmt)) {
|
|
414
|
+
model.type = enums_1.Enums.ValueType.Date;
|
|
415
|
+
model.value = (0, utils_1.excelToDate)(model.value, options.date1904);
|
|
416
416
|
}
|
|
417
417
|
break;
|
|
418
|
-
case
|
|
418
|
+
case enums_1.Enums.ValueType.Formula:
|
|
419
419
|
// Only convert formula result to date if the result is a number
|
|
420
420
|
// String results (t="str") should not be converted even if the cell has a date format
|
|
421
421
|
if (model.result !== undefined &&
|
|
422
422
|
typeof model.result === "number" &&
|
|
423
423
|
style &&
|
|
424
|
-
(0,
|
|
425
|
-
model.result = (0,
|
|
424
|
+
(0, utils_1.isDateFmt)(style.numFmt)) {
|
|
425
|
+
model.result = (0, utils_1.excelToDate)(model.result, options.date1904);
|
|
426
426
|
}
|
|
427
427
|
if (model.shareType === "shared") {
|
|
428
428
|
if (model.ref) {
|
|
@@ -443,7 +443,7 @@ class CellXform extends base_xform_js_1.BaseXform {
|
|
|
443
443
|
// look for hyperlink
|
|
444
444
|
const hyperlink = options.hyperlinkMap[model.address];
|
|
445
445
|
if (hyperlink) {
|
|
446
|
-
if (model.type ===
|
|
446
|
+
if (model.type === enums_1.Enums.ValueType.Formula) {
|
|
447
447
|
model.text = model.result;
|
|
448
448
|
model.result = undefined;
|
|
449
449
|
}
|
|
@@ -451,7 +451,7 @@ class CellXform extends base_xform_js_1.BaseXform {
|
|
|
451
451
|
model.text = model.value;
|
|
452
452
|
model.value = undefined;
|
|
453
453
|
}
|
|
454
|
-
model.type =
|
|
454
|
+
model.type = enums_1.Enums.ValueType.Hyperlink;
|
|
455
455
|
model.hyperlink = hyperlink;
|
|
456
456
|
}
|
|
457
457
|
const comment = options.commentsMap && options.commentsMap[model.address];
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.CfRuleXform = void 0;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
const
|
|
7
|
-
const
|
|
8
|
-
const
|
|
9
|
-
const
|
|
10
|
-
const
|
|
11
|
-
const
|
|
4
|
+
const base_xform_1 = require("../../base-xform");
|
|
5
|
+
const composite_xform_1 = require("../../composite-xform");
|
|
6
|
+
const range_1 = require("../../../../doc/range");
|
|
7
|
+
const databar_xform_1 = require("./databar-xform");
|
|
8
|
+
const ext_lst_ref_xform_1 = require("./ext-lst-ref-xform");
|
|
9
|
+
const formula_xform_1 = require("./formula-xform");
|
|
10
|
+
const color_scale_xform_1 = require("./color-scale-xform");
|
|
11
|
+
const icon_set_xform_1 = require("./icon-set-xform");
|
|
12
12
|
const extIcons = {
|
|
13
13
|
"3Triangles": true,
|
|
14
14
|
"3Stars": true,
|
|
@@ -18,7 +18,7 @@ const getTextFormula = model => {
|
|
|
18
18
|
if (model.formulae && model.formulae[0]) {
|
|
19
19
|
return model.formulae[0];
|
|
20
20
|
}
|
|
21
|
-
const range = new
|
|
21
|
+
const range = new range_1.Range(model.ref);
|
|
22
22
|
const { tl } = range;
|
|
23
23
|
switch (model.operator) {
|
|
24
24
|
case "containsText":
|
|
@@ -39,7 +39,7 @@ const getTimePeriodFormula = model => {
|
|
|
39
39
|
if (model.formulae && model.formulae[0]) {
|
|
40
40
|
return model.formulae[0];
|
|
41
41
|
}
|
|
42
|
-
const range = new
|
|
42
|
+
const range = new range_1.Range(model.ref);
|
|
43
43
|
const { tl } = range;
|
|
44
44
|
switch (model.timePeriod) {
|
|
45
45
|
case "thisWeek":
|
|
@@ -82,15 +82,15 @@ const opType = attributes => {
|
|
|
82
82
|
return { type, operator };
|
|
83
83
|
}
|
|
84
84
|
};
|
|
85
|
-
class CfRuleXform extends
|
|
85
|
+
class CfRuleXform extends composite_xform_1.CompositeXform {
|
|
86
86
|
constructor() {
|
|
87
87
|
super();
|
|
88
88
|
this.map = {
|
|
89
|
-
dataBar: (this.databarXform = new
|
|
90
|
-
extLst: (this.extLstRefXform = new
|
|
91
|
-
formula: (this.formulaXform = new
|
|
92
|
-
colorScale: (this.colorScaleXform = new
|
|
93
|
-
iconSet: (this.iconSetXform = new
|
|
89
|
+
dataBar: (this.databarXform = new databar_xform_1.DatabarXform()),
|
|
90
|
+
extLst: (this.extLstRefXform = new ext_lst_ref_xform_1.ExtLstRefXform()),
|
|
91
|
+
formula: (this.formulaXform = new formula_xform_1.FormulaXform()),
|
|
92
|
+
colorScale: (this.colorScaleXform = new color_scale_xform_1.ColorScaleXform()),
|
|
93
|
+
iconSet: (this.iconSetXform = new icon_set_xform_1.IconSetXform())
|
|
94
94
|
};
|
|
95
95
|
}
|
|
96
96
|
get tag() {
|
|
@@ -162,9 +162,9 @@ class CfRuleXform extends composite_xform_js_1.CompositeXform {
|
|
|
162
162
|
type: "top10",
|
|
163
163
|
dxfId: model.dxfId,
|
|
164
164
|
priority: model.priority,
|
|
165
|
-
percent:
|
|
166
|
-
bottom:
|
|
167
|
-
rank:
|
|
165
|
+
percent: base_xform_1.BaseXform.toBoolAttribute(model.percent, false),
|
|
166
|
+
bottom: base_xform_1.BaseXform.toBoolAttribute(model.bottom, false),
|
|
167
|
+
rank: base_xform_1.BaseXform.toIntValue(model.rank, 10)
|
|
168
168
|
});
|
|
169
169
|
}
|
|
170
170
|
renderAboveAverage(xmlStream, model) {
|
|
@@ -172,7 +172,7 @@ class CfRuleXform extends composite_xform_js_1.CompositeXform {
|
|
|
172
172
|
type: "aboveAverage",
|
|
173
173
|
dxfId: model.dxfId,
|
|
174
174
|
priority: model.priority,
|
|
175
|
-
aboveAverage:
|
|
175
|
+
aboveAverage: base_xform_1.BaseXform.toBoolAttribute(model.aboveAverage, true)
|
|
176
176
|
});
|
|
177
177
|
}
|
|
178
178
|
renderDataBar(xmlStream, model) {
|
|
@@ -209,7 +209,7 @@ class CfRuleXform extends composite_xform_js_1.CompositeXform {
|
|
|
209
209
|
type: model.operator,
|
|
210
210
|
dxfId: model.dxfId,
|
|
211
211
|
priority: model.priority,
|
|
212
|
-
operator:
|
|
212
|
+
operator: base_xform_1.BaseXform.toStringAttribute(model.operator, "containsText")
|
|
213
213
|
});
|
|
214
214
|
const formula = getTextFormula(model);
|
|
215
215
|
if (formula) {
|
|
@@ -233,13 +233,13 @@ class CfRuleXform extends composite_xform_js_1.CompositeXform {
|
|
|
233
233
|
createNewModel({ attributes }) {
|
|
234
234
|
return {
|
|
235
235
|
...opType(attributes),
|
|
236
|
-
dxfId:
|
|
237
|
-
priority:
|
|
236
|
+
dxfId: base_xform_1.BaseXform.toIntValue(attributes.dxfId),
|
|
237
|
+
priority: base_xform_1.BaseXform.toIntValue(attributes.priority),
|
|
238
238
|
timePeriod: attributes.timePeriod,
|
|
239
|
-
percent:
|
|
240
|
-
bottom:
|
|
241
|
-
rank:
|
|
242
|
-
aboveAverage:
|
|
239
|
+
percent: base_xform_1.BaseXform.toBoolValue(attributes.percent),
|
|
240
|
+
bottom: base_xform_1.BaseXform.toBoolValue(attributes.bottom),
|
|
241
|
+
rank: base_xform_1.BaseXform.toIntValue(attributes.rank),
|
|
242
|
+
aboveAverage: base_xform_1.BaseXform.toBoolValue(attributes.aboveAverage)
|
|
243
243
|
};
|
|
244
244
|
}
|
|
245
245
|
onParserClose(name, parser) {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.CfvoXform = void 0;
|
|
4
|
-
const
|
|
5
|
-
class CfvoXform extends
|
|
4
|
+
const base_xform_1 = require("../../base-xform");
|
|
5
|
+
class CfvoXform extends base_xform_1.BaseXform {
|
|
6
6
|
get tag() {
|
|
7
7
|
return "cfvo";
|
|
8
8
|
}
|
|
@@ -15,7 +15,7 @@ class CfvoXform extends base_xform_js_1.BaseXform {
|
|
|
15
15
|
parseOpen(node) {
|
|
16
16
|
this.model = {
|
|
17
17
|
type: node.attributes.type,
|
|
18
|
-
value:
|
|
18
|
+
value: base_xform_1.BaseXform.toFloatValue(node.attributes.val)
|
|
19
19
|
};
|
|
20
20
|
}
|
|
21
21
|
parseClose(name) {
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ColorScaleXform = void 0;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
const
|
|
7
|
-
class ColorScaleXform extends
|
|
4
|
+
const composite_xform_1 = require("../../composite-xform");
|
|
5
|
+
const color_xform_1 = require("../../style/color-xform");
|
|
6
|
+
const cfvo_xform_1 = require("./cfvo-xform");
|
|
7
|
+
class ColorScaleXform extends composite_xform_1.CompositeXform {
|
|
8
8
|
constructor() {
|
|
9
9
|
super();
|
|
10
10
|
this.map = {
|
|
11
|
-
cfvo: (this.cfvoXform = new
|
|
12
|
-
color: (this.colorXform = new
|
|
11
|
+
cfvo: (this.cfvoXform = new cfvo_xform_1.CfvoXform()),
|
|
12
|
+
color: (this.colorXform = new color_xform_1.ColorXform())
|
|
13
13
|
};
|
|
14
14
|
}
|
|
15
15
|
get tag() {
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ConditionalFormattingXform = void 0;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
class ConditionalFormattingXform extends
|
|
4
|
+
const composite_xform_1 = require("../../composite-xform");
|
|
5
|
+
const cf_rule_xform_1 = require("./cf-rule-xform");
|
|
6
|
+
class ConditionalFormattingXform extends composite_xform_1.CompositeXform {
|
|
7
7
|
constructor() {
|
|
8
8
|
super();
|
|
9
9
|
this.map = {
|
|
10
|
-
cfRule: new
|
|
10
|
+
cfRule: new cf_rule_xform_1.CfRuleXform()
|
|
11
11
|
};
|
|
12
12
|
}
|
|
13
13
|
get tag() {
|
|
@@ -15,12 +15,12 @@ class ConditionalFormattingXform extends composite_xform_js_1.CompositeXform {
|
|
|
15
15
|
}
|
|
16
16
|
render(xmlStream, model) {
|
|
17
17
|
// if there are no primitive rules, exit now
|
|
18
|
-
if (!model.rules.some(
|
|
18
|
+
if (!model.rules.some(cf_rule_xform_1.CfRuleXform.isPrimitive)) {
|
|
19
19
|
return;
|
|
20
20
|
}
|
|
21
21
|
xmlStream.openNode(this.tag, { sqref: model.ref });
|
|
22
22
|
model.rules.forEach((rule) => {
|
|
23
|
-
if (
|
|
23
|
+
if (cf_rule_xform_1.CfRuleXform.isPrimitive(rule)) {
|
|
24
24
|
rule.ref = model.ref;
|
|
25
25
|
this.map.cfRule.render(xmlStream, rule);
|
|
26
26
|
}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ConditionalFormattingsXform = void 0;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
class ConditionalFormattingsXform extends
|
|
4
|
+
const base_xform_1 = require("../../base-xform");
|
|
5
|
+
const conditional_formatting_xform_1 = require("./conditional-formatting-xform");
|
|
6
|
+
class ConditionalFormattingsXform extends base_xform_1.BaseXform {
|
|
7
7
|
constructor() {
|
|
8
8
|
super();
|
|
9
|
-
this.cfXform = new
|
|
9
|
+
this.cfXform = new conditional_formatting_xform_1.ConditionalFormattingXform();
|
|
10
10
|
}
|
|
11
11
|
get tag() {
|
|
12
12
|
return "conditionalFormatting";
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.DatabarXform = void 0;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
const
|
|
7
|
-
class DatabarXform extends
|
|
4
|
+
const composite_xform_1 = require("../../composite-xform");
|
|
5
|
+
const color_xform_1 = require("../../style/color-xform");
|
|
6
|
+
const cfvo_xform_1 = require("./cfvo-xform");
|
|
7
|
+
class DatabarXform extends composite_xform_1.CompositeXform {
|
|
8
8
|
constructor() {
|
|
9
9
|
super();
|
|
10
10
|
this.map = {
|
|
11
|
-
cfvo: (this.cfvoXform = new
|
|
12
|
-
color: (this.colorXform = new
|
|
11
|
+
cfvo: (this.cfvoXform = new cfvo_xform_1.CfvoXform()),
|
|
12
|
+
color: (this.colorXform = new color_xform_1.ColorXform())
|
|
13
13
|
};
|
|
14
14
|
}
|
|
15
15
|
get tag() {
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ExtLstRefXform = void 0;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
class X14IdXform extends
|
|
4
|
+
const base_xform_1 = require("../../base-xform");
|
|
5
|
+
const composite_xform_1 = require("../../composite-xform");
|
|
6
|
+
class X14IdXform extends base_xform_1.BaseXform {
|
|
7
7
|
get tag() {
|
|
8
8
|
return "x14:id";
|
|
9
9
|
}
|
|
@@ -20,7 +20,7 @@ class X14IdXform extends base_xform_js_1.BaseXform {
|
|
|
20
20
|
return name !== this.tag;
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
|
-
class ExtXform extends
|
|
23
|
+
class ExtXform extends composite_xform_1.CompositeXform {
|
|
24
24
|
constructor() {
|
|
25
25
|
super();
|
|
26
26
|
this.map = {
|
|
@@ -45,7 +45,7 @@ class ExtXform extends composite_xform_js_1.CompositeXform {
|
|
|
45
45
|
this.model.x14Id = parser.model;
|
|
46
46
|
}
|
|
47
47
|
}
|
|
48
|
-
class ExtLstRefXform extends
|
|
48
|
+
class ExtLstRefXform extends composite_xform_1.CompositeXform {
|
|
49
49
|
constructor() {
|
|
50
50
|
super();
|
|
51
51
|
this.map = {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.FormulaXform = void 0;
|
|
4
|
-
const
|
|
5
|
-
class FormulaXform extends
|
|
4
|
+
const base_xform_1 = require("../../base-xform");
|
|
5
|
+
class FormulaXform extends base_xform_1.BaseXform {
|
|
6
6
|
get tag() {
|
|
7
7
|
return "formula";
|
|
8
8
|
}
|