@alienkarma/exceljs 4.4.0-fork.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +22 -0
- package/README.md +3024 -0
- package/README_zh.md +2878 -0
- package/dist/LICENSE +22 -0
- package/dist/es5/csv/csv.js +182 -0
- package/dist/es5/csv/csv.js.map +1 -0
- package/dist/es5/csv/line-buffer.js +68 -0
- package/dist/es5/csv/line-buffer.js.map +1 -0
- package/dist/es5/csv/stream-converter.js +110 -0
- package/dist/es5/csv/stream-converter.js.map +1 -0
- package/dist/es5/doc/anchor.js +73 -0
- package/dist/es5/doc/anchor.js.map +1 -0
- package/dist/es5/doc/cell.js +960 -0
- package/dist/es5/doc/cell.js.map +1 -0
- package/dist/es5/doc/column.js +274 -0
- package/dist/es5/doc/column.js.map +1 -0
- package/dist/es5/doc/data-validations.js +18 -0
- package/dist/es5/doc/data-validations.js.map +1 -0
- package/dist/es5/doc/defined-names.js +173 -0
- package/dist/es5/doc/defined-names.js.map +1 -0
- package/dist/es5/doc/enums.js +49 -0
- package/dist/es5/doc/enums.js.map +1 -0
- package/dist/es5/doc/image.js +69 -0
- package/dist/es5/doc/image.js.map +1 -0
- package/dist/es5/doc/modelcontainer.js +16 -0
- package/dist/es5/doc/modelcontainer.js.map +1 -0
- package/dist/es5/doc/note.js +64 -0
- package/dist/es5/doc/note.js.map +1 -0
- package/dist/es5/doc/pivot-table.js +137 -0
- package/dist/es5/doc/pivot-table.js.map +1 -0
- package/dist/es5/doc/range.js +229 -0
- package/dist/es5/doc/range.js.map +1 -0
- package/dist/es5/doc/row.js +382 -0
- package/dist/es5/doc/row.js.map +1 -0
- package/dist/es5/doc/table.js +441 -0
- package/dist/es5/doc/table.js.map +1 -0
- package/dist/es5/doc/workbook.js +205 -0
- package/dist/es5/doc/workbook.js.map +1 -0
- package/dist/es5/doc/worksheet.js +918 -0
- package/dist/es5/doc/worksheet.js.map +1 -0
- package/dist/es5/exceljs.bare.js +14 -0
- package/dist/es5/exceljs.bare.js.map +1 -0
- package/dist/es5/exceljs.browser.js +36 -0
- package/dist/es5/exceljs.browser.js.map +1 -0
- package/dist/es5/exceljs.nodejs.js +15 -0
- package/dist/es5/exceljs.nodejs.js.map +1 -0
- package/dist/es5/index.js +15 -0
- package/dist/es5/stream/xlsx/hyperlink-reader.js +90 -0
- package/dist/es5/stream/xlsx/hyperlink-reader.js.map +1 -0
- package/dist/es5/stream/xlsx/sheet-comments-writer.js +94 -0
- package/dist/es5/stream/xlsx/sheet-comments-writer.js.map +1 -0
- package/dist/es5/stream/xlsx/sheet-rels-writer.js +94 -0
- package/dist/es5/stream/xlsx/sheet-rels-writer.js.map +1 -0
- package/dist/es5/stream/xlsx/workbook-reader.js +362 -0
- package/dist/es5/stream/xlsx/workbook-reader.js.map +1 -0
- package/dist/es5/stream/xlsx/workbook-writer.js +347 -0
- package/dist/es5/stream/xlsx/workbook-writer.js.map +1 -0
- package/dist/es5/stream/xlsx/worksheet-reader.js +392 -0
- package/dist/es5/stream/xlsx/worksheet-reader.js.map +1 -0
- package/dist/es5/stream/xlsx/worksheet-writer.js +652 -0
- package/dist/es5/stream/xlsx/worksheet-writer.js.map +1 -0
- package/dist/es5/utils/auto-drain.js +18 -0
- package/dist/es5/utils/auto-drain.js.map +1 -0
- package/dist/es5/utils/browser-buffer-decode.js +15 -0
- package/dist/es5/utils/browser-buffer-decode.js.map +1 -0
- package/dist/es5/utils/browser-buffer-encode.js +18 -0
- package/dist/es5/utils/browser-buffer-encode.js.map +1 -0
- package/dist/es5/utils/cell-matrix.js +149 -0
- package/dist/es5/utils/cell-matrix.js.map +1 -0
- package/dist/es5/utils/col-cache.js +258 -0
- package/dist/es5/utils/col-cache.js.map +1 -0
- package/dist/es5/utils/copy-style.js +43 -0
- package/dist/es5/utils/copy-style.js.map +1 -0
- package/dist/es5/utils/encryptor.js +58 -0
- package/dist/es5/utils/encryptor.js.map +1 -0
- package/dist/es5/utils/iterate-stream.js +46 -0
- package/dist/es5/utils/iterate-stream.js.map +1 -0
- package/dist/es5/utils/parse-sax.js +47 -0
- package/dist/es5/utils/parse-sax.js.map +1 -0
- package/dist/es5/utils/shared-formula.js +42 -0
- package/dist/es5/utils/shared-formula.js.map +1 -0
- package/dist/es5/utils/shared-strings.js +32 -0
- package/dist/es5/utils/shared-strings.js.map +1 -0
- package/dist/es5/utils/stream-base64.js +66 -0
- package/dist/es5/utils/stream-base64.js.map +1 -0
- package/dist/es5/utils/stream-buf.js +343 -0
- package/dist/es5/utils/stream-buf.js.map +1 -0
- package/dist/es5/utils/string-buf.js +73 -0
- package/dist/es5/utils/string-buf.js.map +1 -0
- package/dist/es5/utils/string-builder.js +32 -0
- package/dist/es5/utils/string-builder.js.map +1 -0
- package/dist/es5/utils/stuttered-pipe.js +61 -0
- package/dist/es5/utils/stuttered-pipe.js.map +1 -0
- package/dist/es5/utils/typed-stack.js +23 -0
- package/dist/es5/utils/typed-stack.js.map +1 -0
- package/dist/es5/utils/under-dash.js +168 -0
- package/dist/es5/utils/under-dash.js.map +1 -0
- package/dist/es5/utils/utils.js +204 -0
- package/dist/es5/utils/utils.js.map +1 -0
- package/dist/es5/utils/xml-stream.js +151 -0
- package/dist/es5/utils/xml-stream.js.map +1 -0
- package/dist/es5/utils/zip-stream.js +79 -0
- package/dist/es5/utils/zip-stream.js.map +1 -0
- package/dist/es5/xlsx/defaultnumformats.js +230 -0
- package/dist/es5/xlsx/defaultnumformats.js.map +1 -0
- package/dist/es5/xlsx/rel-type.js +21 -0
- package/dist/es5/xlsx/rel-type.js.map +1 -0
- package/dist/es5/xlsx/xform/base-xform.js +139 -0
- package/dist/es5/xlsx/xform/base-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/book/defined-name-xform.js +85 -0
- package/dist/es5/xlsx/xform/book/defined-name-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/book/sheet-xform.js +32 -0
- package/dist/es5/xlsx/xform/book/sheet-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/book/workbook-calc-properties-xform.js +24 -0
- package/dist/es5/xlsx/xform/book/workbook-calc-properties-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/book/workbook-pivot-cache-xform.js +27 -0
- package/dist/es5/xlsx/xform/book/workbook-pivot-cache-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/book/workbook-properties-xform.js +27 -0
- package/dist/es5/xlsx/xform/book/workbook-properties-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/book/workbook-view-xform.js +51 -0
- package/dist/es5/xlsx/xform/book/workbook-view-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/book/workbook-xform.js +241 -0
- package/dist/es5/xlsx/xform/book/workbook-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/comment/comment-xform.js +103 -0
- package/dist/es5/xlsx/xform/comment/comment-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/comment/comments-xform.js +76 -0
- package/dist/es5/xlsx/xform/comment/comments-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/comment/style/vml-position-xform.js +35 -0
- package/dist/es5/xlsx/xform/comment/style/vml-position-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/comment/style/vml-protection-xform.js +32 -0
- package/dist/es5/xlsx/xform/comment/style/vml-protection-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/comment/vml-anchor-xform.js +53 -0
- package/dist/es5/xlsx/xform/comment/vml-anchor-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/comment/vml-client-data-xform.js +97 -0
- package/dist/es5/xlsx/xform/comment/vml-client-data-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/comment/vml-notes-xform.js +107 -0
- package/dist/es5/xlsx/xform/comment/vml-notes-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/comment/vml-shape-xform.js +92 -0
- package/dist/es5/xlsx/xform/comment/vml-shape-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/comment/vml-textbox-xform.js +61 -0
- package/dist/es5/xlsx/xform/comment/vml-textbox-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/composite-xform.js +51 -0
- package/dist/es5/xlsx/xform/composite-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/core/app-heading-pairs-xform.js +30 -0
- package/dist/es5/xlsx/xform/core/app-heading-pairs-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/core/app-titles-of-parts-xform.js +27 -0
- package/dist/es5/xlsx/xform/core/app-titles-of-parts-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/core/app-xform.js +93 -0
- package/dist/es5/xlsx/xform/core/app-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/core/content-types-xform.js +127 -0
- package/dist/es5/xlsx/xform/core/content-types-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/core/core-xform.js +158 -0
- package/dist/es5/xlsx/xform/core/core-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/core/relationship-xform.js +23 -0
- package/dist/es5/xlsx/xform/core/relationship-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/core/relationships-xform.js +65 -0
- package/dist/es5/xlsx/xform/core/relationships-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/drawing/base-cell-anchor-xform.js +47 -0
- package/dist/es5/xlsx/xform/drawing/base-cell-anchor-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/drawing/blip-fill-xform.js +61 -0
- package/dist/es5/xlsx/xform/drawing/blip-fill-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/drawing/blip-xform.js +39 -0
- package/dist/es5/xlsx/xform/drawing/blip-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/drawing/c-nv-pic-pr-xform.js +35 -0
- package/dist/es5/xlsx/xform/drawing/c-nv-pic-pr-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/drawing/c-nv-pr-xform.js +62 -0
- package/dist/es5/xlsx/xform/drawing/c-nv-pr-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/drawing/cell-position-xform.js +82 -0
- package/dist/es5/xlsx/xform/drawing/cell-position-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/drawing/drawing-xform.js +98 -0
- package/dist/es5/xlsx/xform/drawing/drawing-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/drawing/ext-lst-xform.js +40 -0
- package/dist/es5/xlsx/xform/drawing/ext-lst-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/drawing/ext-xform.js +38 -0
- package/dist/es5/xlsx/xform/drawing/ext-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/drawing/hlink-click-xform.js +38 -0
- package/dist/es5/xlsx/xform/drawing/hlink-click-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/drawing/nv-pic-pr-xform.js +59 -0
- package/dist/es5/xlsx/xform/drawing/nv-pic-pr-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/drawing/one-cell-anchor-xform.js +63 -0
- package/dist/es5/xlsx/xform/drawing/one-cell-anchor-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/drawing/pic-xform.js +67 -0
- package/dist/es5/xlsx/xform/drawing/pic-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/drawing/sp-pr.js +30 -0
- package/dist/es5/xlsx/xform/drawing/sp-pr.js.map +1 -0
- package/dist/es5/xlsx/xform/drawing/two-cell-anchor-xform.js +62 -0
- package/dist/es5/xlsx/xform/drawing/two-cell-anchor-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/list-xform.js +91 -0
- package/dist/es5/xlsx/xform/list-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/pivot-table/cache-field.js +48 -0
- package/dist/es5/xlsx/xform/pivot-table/cache-field.js.map +1 -0
- package/dist/es5/xlsx/xform/pivot-table/pivot-cache-definition-xform.js +73 -0
- package/dist/es5/xlsx/xform/pivot-table/pivot-cache-definition-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/pivot-table/pivot-cache-records-xform.js +93 -0
- package/dist/es5/xlsx/xform/pivot-table/pivot-cache-records-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/pivot-table/pivot-table-xform.js +176 -0
- package/dist/es5/xlsx/xform/pivot-table/pivot-table-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/auto-filter-xform.js +40 -0
- package/dist/es5/xlsx/xform/sheet/auto-filter-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/cell-xform.js +450 -0
- package/dist/es5/xlsx/xform/sheet/cell-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/cf/cf-rule-xform.js +275 -0
- package/dist/es5/xlsx/xform/sheet/cf/cf-rule-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/cf/cfvo-xform.js +25 -0
- package/dist/es5/xlsx/xform/sheet/cf/cfvo-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/cf/color-scale-xform.js +38 -0
- package/dist/es5/xlsx/xform/sheet/cf/color-scale-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/cf/conditional-formatting-xform.js +45 -0
- package/dist/es5/xlsx/xform/sheet/cf/conditional-formatting-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/cf/conditional-formattings-xform.js +77 -0
- package/dist/es5/xlsx/xform/sheet/cf/conditional-formattings-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/cf/databar-xform.js +42 -0
- package/dist/es5/xlsx/xform/sheet/cf/databar-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/cf/ext-lst-ref-xform.js +71 -0
- package/dist/es5/xlsx/xform/sheet/cf/ext-lst-ref-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/cf/formula-xform.js +22 -0
- package/dist/es5/xlsx/xform/sheet/cf/formula-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/cf/icon-set-xform.js +43 -0
- package/dist/es5/xlsx/xform/sheet/cf/icon-set-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.js +28 -0
- package/dist/es5/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js +88 -0
- package/dist/es5/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.js +38 -0
- package/dist/es5/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.js +52 -0
- package/dist/es5/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.js +43 -0
- package/dist/es5/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/cf-ext/databar-ext-xform.js +75 -0
- package/dist/es5/xlsx/xform/sheet/cf-ext/databar-ext-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/cf-ext/f-ext-xform.js +22 -0
- package/dist/es5/xlsx/xform/sheet/cf-ext/f-ext-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.js +66 -0
- package/dist/es5/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/cf-ext/sqref-ext-xform.js +22 -0
- package/dist/es5/xlsx/xform/sheet/cf-ext/sqref-ext-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/col-xform.js +78 -0
- package/dist/es5/xlsx/xform/sheet/col-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/data-validations-xform.js +247 -0
- package/dist/es5/xlsx/xform/sheet/data-validations-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/dimension-xform.js +28 -0
- package/dist/es5/xlsx/xform/sheet/dimension-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/drawing-xform.js +32 -0
- package/dist/es5/xlsx/xform/sheet/drawing-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/ext-lst-xform.js +69 -0
- package/dist/es5/xlsx/xform/sheet/ext-lst-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/header-footer-xform.js +126 -0
- package/dist/es5/xlsx/xform/sheet/header-footer-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/hyperlink-xform.js +50 -0
- package/dist/es5/xlsx/xform/sheet/hyperlink-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/merge-cell-xform.js +26 -0
- package/dist/es5/xlsx/xform/sheet/merge-cell-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/merges.js +52 -0
- package/dist/es5/xlsx/xform/sheet/merges.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/outline-properties-xform.js +35 -0
- package/dist/es5/xlsx/xform/sheet/outline-properties-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/page-breaks-xform.js +24 -0
- package/dist/es5/xlsx/xform/sheet/page-breaks-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/page-margins-xform.js +46 -0
- package/dist/es5/xlsx/xform/sheet/page-margins-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/page-setup-properties-xform.js +32 -0
- package/dist/es5/xlsx/xform/sheet/page-setup-properties-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/page-setup-xform.js +99 -0
- package/dist/es5/xlsx/xform/sheet/page-setup-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/picture-xform.js +32 -0
- package/dist/es5/xlsx/xform/sheet/picture-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/print-options-xform.js +45 -0
- package/dist/es5/xlsx/xform/sheet/print-options-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/row-breaks-xform.js +37 -0
- package/dist/es5/xlsx/xform/sheet/row-breaks-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/row-xform.js +128 -0
- package/dist/es5/xlsx/xform/sheet/row-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/sheet-format-properties-xform.js +51 -0
- package/dist/es5/xlsx/xform/sheet/sheet-format-properties-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/sheet-properties-xform.js +83 -0
- package/dist/es5/xlsx/xform/sheet/sheet-properties-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/sheet-protection-xform.js +84 -0
- package/dist/es5/xlsx/xform/sheet/sheet-protection-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/sheet-view-xform.js +190 -0
- package/dist/es5/xlsx/xform/sheet/sheet-view-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/table-part-xform.js +32 -0
- package/dist/es5/xlsx/xform/sheet/table-part-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/sheet/worksheet-xform.js +522 -0
- package/dist/es5/xlsx/xform/sheet/worksheet-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/simple/boolean-xform.js +27 -0
- package/dist/es5/xlsx/xform/simple/boolean-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/simple/date-xform.js +58 -0
- package/dist/es5/xlsx/xform/simple/date-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/simple/float-xform.js +47 -0
- package/dist/es5/xlsx/xform/simple/float-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/simple/integer-xform.js +53 -0
- package/dist/es5/xlsx/xform/simple/integer-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/simple/string-xform.js +47 -0
- package/dist/es5/xlsx/xform/simple/string-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/static-xform.js +61 -0
- package/dist/es5/xlsx/xform/static-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/strings/phonetic-text-xform.js +98 -0
- package/dist/es5/xlsx/xform/strings/phonetic-text-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/strings/rich-text-xform.js +92 -0
- package/dist/es5/xlsx/xform/strings/rich-text-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/strings/shared-string-xform.js +99 -0
- package/dist/es5/xlsx/xform/strings/shared-string-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/strings/shared-strings-xform.js +114 -0
- package/dist/es5/xlsx/xform/strings/shared-strings-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/strings/text-xform.js +39 -0
- package/dist/es5/xlsx/xform/strings/text-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/style/alignment-xform.js +139 -0
- package/dist/es5/xlsx/xform/style/alignment-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/style/border-xform.js +185 -0
- package/dist/es5/xlsx/xform/style/border-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/style/color-xform.js +66 -0
- package/dist/es5/xlsx/xform/style/color-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/style/dxf-xform.js +106 -0
- package/dist/es5/xlsx/xform/style/dxf-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/style/fill-xform.js +307 -0
- package/dist/es5/xlsx/xform/style/fill-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/style/font-xform.js +175 -0
- package/dist/es5/xlsx/xform/style/font-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/style/numfmt-xform.js +58 -0
- package/dist/es5/xlsx/xform/style/numfmt-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/style/protection-xform.js +53 -0
- package/dist/es5/xlsx/xform/style/protection-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/style/style-xform.js +118 -0
- package/dist/es5/xlsx/xform/style/style-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/style/styles-xform.js +611 -0
- package/dist/es5/xlsx/xform/style/styles-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/style/underline-xform.js +46 -0
- package/dist/es5/xlsx/xform/style/underline-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/table/auto-filter-xform.js +75 -0
- package/dist/es5/xlsx/xform/table/auto-filter-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/table/custom-filter-xform.js +30 -0
- package/dist/es5/xlsx/xform/table/custom-filter-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/table/filter-column-xform.js +89 -0
- package/dist/es5/xlsx/xform/table/filter-column-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/table/filter-xform.js +28 -0
- package/dist/es5/xlsx/xform/table/filter-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/table/table-column-xform.js +42 -0
- package/dist/es5/xlsx/xform/table/table-column-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/table/table-style-info-xform.js +40 -0
- package/dist/es5/xlsx/xform/table/table-style-info-xform.js.map +1 -0
- package/dist/es5/xlsx/xform/table/table-xform.js +122 -0
- package/dist/es5/xlsx/xform/table/table-xform.js.map +1 -0
- package/dist/es5/xlsx/xlsx.js +775 -0
- package/dist/es5/xlsx/xlsx.js.map +1 -0
- package/dist/es5/xlsx/xml/theme1.js +5 -0
- package/dist/es5/xlsx/xml/theme1.js.map +1 -0
- package/dist/exceljs.bare.js +57759 -0
- package/dist/exceljs.bare.js.map +777 -0
- package/dist/exceljs.bare.min.js +45 -0
- package/dist/exceljs.bare.min.js.map +1 -0
- package/dist/exceljs.js +62398 -0
- package/dist/exceljs.js.map +1095 -0
- package/dist/exceljs.min.js +45 -0
- package/dist/exceljs.min.js.map +1 -0
- package/excel.js +13 -0
- package/index.d.ts +2040 -0
- package/index.ts +2 -0
- package/lib/csv/csv.js +191 -0
- package/lib/csv/line-buffer.js +74 -0
- package/lib/csv/stream-converter.js +135 -0
- package/lib/doc/anchor.js +91 -0
- package/lib/doc/cell.js +1124 -0
- package/lib/doc/column.js +320 -0
- package/lib/doc/data/theme1.json +234 -0
- package/lib/doc/data-validations.js +19 -0
- package/lib/doc/defined-names.js +196 -0
- package/lib/doc/enums.js +48 -0
- package/lib/doc/image.js +59 -0
- package/lib/doc/modelcontainer.js +18 -0
- package/lib/doc/note.js +65 -0
- package/lib/doc/pivot-table.js +132 -0
- package/lib/doc/range.js +257 -0
- package/lib/doc/row.js +415 -0
- package/lib/doc/table.js +465 -0
- package/lib/doc/workbook.js +224 -0
- package/lib/doc/worksheet.js +949 -0
- package/lib/exceljs.bare.js +13 -0
- package/lib/exceljs.browser.js +36 -0
- package/lib/exceljs.nodejs.js +14 -0
- package/lib/stream/xlsx/hyperlink-reader.js +83 -0
- package/lib/stream/xlsx/sheet-comments-writer.js +121 -0
- package/lib/stream/xlsx/sheet-rels-writer.js +119 -0
- package/lib/stream/xlsx/workbook-reader.js +337 -0
- package/lib/stream/xlsx/workbook-writer.js +347 -0
- package/lib/stream/xlsx/worksheet-reader.js +374 -0
- package/lib/stream/xlsx/worksheet-writer.js +717 -0
- package/lib/utils/auto-drain.js +15 -0
- package/lib/utils/browser-buffer-decode.js +14 -0
- package/lib/utils/browser-buffer-encode.js +15 -0
- package/lib/utils/cell-matrix.js +165 -0
- package/lib/utils/col-cache.js +287 -0
- package/lib/utils/copy-style.js +43 -0
- package/lib/utils/encryptor.js +55 -0
- package/lib/utils/iterate-stream.js +48 -0
- package/lib/utils/parse-sax.js +30 -0
- package/lib/utils/shared-formula.js +44 -0
- package/lib/utils/shared-strings.js +35 -0
- package/lib/utils/stream-base64.js +72 -0
- package/lib/utils/stream-buf.js +364 -0
- package/lib/utils/string-buf.js +82 -0
- package/lib/utils/string-builder.js +35 -0
- package/lib/utils/stuttered-pipe.js +67 -0
- package/lib/utils/typed-stack.js +24 -0
- package/lib/utils/under-dash.js +184 -0
- package/lib/utils/utils.js +205 -0
- package/lib/utils/xml-stream.js +169 -0
- package/lib/utils/zip-stream.js +87 -0
- package/lib/xlsx/.rels +11 -0
- package/lib/xlsx/calcChain.xml +6 -0
- package/lib/xlsx/core.xml +7 -0
- package/lib/xlsx/defaultnumformats.js +153 -0
- package/lib/xlsx/rel-type.js +20 -0
- package/lib/xlsx/styles.xml +41 -0
- package/lib/xlsx/workbook.xml +16 -0
- package/lib/xlsx/xform/base-xform.js +145 -0
- package/lib/xlsx/xform/book/defined-name-xform.js +91 -0
- package/lib/xlsx/xform/book/sheet-xform.js +34 -0
- package/lib/xlsx/xform/book/workbook-calc-properties-xform.js +26 -0
- package/lib/xlsx/xform/book/workbook-pivot-cache-xform.js +29 -0
- package/lib/xlsx/xform/book/workbook-properties-xform.js +29 -0
- package/lib/xlsx/xform/book/workbook-view-xform.js +53 -0
- package/lib/xlsx/xform/book/workbook-xform.js +259 -0
- package/lib/xlsx/xform/comment/comment-xform.js +105 -0
- package/lib/xlsx/xform/comment/comments-xform.js +82 -0
- package/lib/xlsx/xform/comment/style/vml-position-xform.js +39 -0
- package/lib/xlsx/xform/comment/style/vml-protection-xform.js +36 -0
- package/lib/xlsx/xform/comment/vml-anchor-xform.js +60 -0
- package/lib/xlsx/xform/comment/vml-client-data-xform.js +95 -0
- package/lib/xlsx/xform/comment/vml-notes-xform.js +107 -0
- package/lib/xlsx/xform/comment/vml-shape-xform.js +95 -0
- package/lib/xlsx/xform/comment/vml-textbox-xform.js +64 -0
- package/lib/xlsx/xform/composite-xform.js +56 -0
- package/lib/xlsx/xform/core/app-heading-pairs-xform.js +32 -0
- package/lib/xlsx/xform/core/app-titles-of-parts-xform.js +28 -0
- package/lib/xlsx/xform/core/app-xform.js +100 -0
- package/lib/xlsx/xform/core/content-types-xform.js +135 -0
- package/lib/xlsx/xform/core/core-xform.js +136 -0
- package/lib/xlsx/xform/core/relationship-xform.js +25 -0
- package/lib/xlsx/xform/core/relationships-xform.js +73 -0
- package/lib/xlsx/xform/drawing/base-cell-anchor-xform.js +48 -0
- package/lib/xlsx/xform/drawing/blip-fill-xform.js +71 -0
- package/lib/xlsx/xform/drawing/blip-xform.js +42 -0
- package/lib/xlsx/xform/drawing/c-nv-pic-pr-xform.js +38 -0
- package/lib/xlsx/xform/drawing/c-nv-pr-xform.js +68 -0
- package/lib/xlsx/xform/drawing/cell-position-xform.js +77 -0
- package/lib/xlsx/xform/drawing/drawing-xform.js +109 -0
- package/lib/xlsx/xform/drawing/ext-lst-xform.js +43 -0
- package/lib/xlsx/xform/drawing/ext-xform.js +44 -0
- package/lib/xlsx/xform/drawing/hlink-click-xform.js +41 -0
- package/lib/xlsx/xform/drawing/nv-pic-pr-xform.js +65 -0
- package/lib/xlsx/xform/drawing/one-cell-anchor-xform.js +63 -0
- package/lib/xlsx/xform/drawing/pic-xform.js +77 -0
- package/lib/xlsx/xform/drawing/sp-pr.js +17 -0
- package/lib/xlsx/xform/drawing/two-cell-anchor-xform.js +62 -0
- package/lib/xlsx/xform/list-xform.js +95 -0
- package/lib/xlsx/xform/pivot-table/cache-field.js +43 -0
- package/lib/xlsx/xform/pivot-table/pivot-cache-definition-xform.js +77 -0
- package/lib/xlsx/xform/pivot-table/pivot-cache-records-xform.js +103 -0
- package/lib/xlsx/xform/pivot-table/pivot-table-xform.js +189 -0
- package/lib/xlsx/xform/sheet/auto-filter-xform.js +38 -0
- package/lib/xlsx/xform/sheet/cell-xform.js +498 -0
- package/lib/xlsx/xform/sheet/cf/cf-rule-xform.js +301 -0
- package/lib/xlsx/xform/sheet/cf/cfvo-xform.js +27 -0
- package/lib/xlsx/xform/sheet/cf/color-scale-xform.js +45 -0
- package/lib/xlsx/xform/sheet/cf/conditional-formatting-xform.js +48 -0
- package/lib/xlsx/xform/sheet/cf/conditional-formattings-xform.js +92 -0
- package/lib/xlsx/xform/sheet/cf/databar-xform.js +49 -0
- package/lib/xlsx/xform/sheet/cf/ext-lst-ref-xform.js +87 -0
- package/lib/xlsx/xform/sheet/cf/formula-xform.js +25 -0
- package/lib/xlsx/xform/sheet/cf/icon-set-xform.js +47 -0
- package/lib/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.js +27 -0
- package/lib/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js +98 -0
- package/lib/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.js +43 -0
- package/lib/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.js +62 -0
- package/lib/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.js +50 -0
- package/lib/xlsx/xform/sheet/cf-ext/databar-ext-xform.js +98 -0
- package/lib/xlsx/xform/sheet/cf-ext/f-ext-xform.js +25 -0
- package/lib/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.js +73 -0
- package/lib/xlsx/xform/sheet/cf-ext/sqref-ext-xform.js +25 -0
- package/lib/xlsx/xform/sheet/col-xform.js +86 -0
- package/lib/xlsx/xform/sheet/data-validations-xform.js +257 -0
- package/lib/xlsx/xform/sheet/dimension-xform.js +29 -0
- package/lib/xlsx/xform/sheet/drawing-xform.js +33 -0
- package/lib/xlsx/xform/sheet/ext-lst-xform.js +86 -0
- package/lib/xlsx/xform/sheet/header-footer-xform.js +146 -0
- package/lib/xlsx/xform/sheet/hyperlink-xform.js +54 -0
- package/lib/xlsx/xform/sheet/merge-cell-xform.js +27 -0
- package/lib/xlsx/xform/sheet/merges.js +56 -0
- package/lib/xlsx/xform/sheet/outline-properties-xform.js +43 -0
- package/lib/xlsx/xform/sheet/page-breaks-xform.js +27 -0
- package/lib/xlsx/xform/sheet/page-margins-xform.js +49 -0
- package/lib/xlsx/xform/sheet/page-setup-properties-xform.js +35 -0
- package/lib/xlsx/xform/sheet/page-setup-xform.js +103 -0
- package/lib/xlsx/xform/sheet/picture-xform.js +33 -0
- package/lib/xlsx/xform/sheet/print-options-xform.js +49 -0
- package/lib/xlsx/xform/sheet/row-breaks-xform.js +39 -0
- package/lib/xlsx/xform/sheet/row-xform.js +142 -0
- package/lib/xlsx/xform/sheet/sheet-format-properties-xform.js +55 -0
- package/lib/xlsx/xform/sheet/sheet-properties-xform.js +90 -0
- package/lib/xlsx/xform/sheet/sheet-protection-xform.js +89 -0
- package/lib/xlsx/xform/sheet/sheet-view-xform.js +202 -0
- package/lib/xlsx/xform/sheet/table-part-xform.js +33 -0
- package/lib/xlsx/xform/sheet/worksheet-xform.js +548 -0
- package/lib/xlsx/xform/simple/boolean-xform.js +31 -0
- package/lib/xlsx/xform/simple/date-xform.js +66 -0
- package/lib/xlsx/xform/simple/float-xform.js +51 -0
- package/lib/xlsx/xform/simple/integer-xform.js +57 -0
- package/lib/xlsx/xform/simple/string-xform.js +51 -0
- package/lib/xlsx/xform/static-xform.js +64 -0
- package/lib/xlsx/xform/strings/phonetic-text-xform.js +98 -0
- package/lib/xlsx/xform/strings/rich-text-xform.js +101 -0
- package/lib/xlsx/xform/strings/shared-string-xform.js +102 -0
- package/lib/xlsx/xform/strings/shared-strings-xform.js +127 -0
- package/lib/xlsx/xform/strings/text-xform.js +44 -0
- package/lib/xlsx/xform/style/alignment-xform.js +172 -0
- package/lib/xlsx/xform/style/border-xform.js +207 -0
- package/lib/xlsx/xform/style/color-xform.js +63 -0
- package/lib/xlsx/xform/style/dxf-xform.js +111 -0
- package/lib/xlsx/xform/style/fill-xform.js +364 -0
- package/lib/xlsx/xform/style/font-xform.js +102 -0
- package/lib/xlsx/xform/style/numfmt-xform.js +63 -0
- package/lib/xlsx/xform/style/protection-xform.js +60 -0
- package/lib/xlsx/xform/style/style-xform.js +125 -0
- package/lib/xlsx/xform/style/styles-xform.js +527 -0
- package/lib/xlsx/xform/style/underline-xform.js +47 -0
- package/lib/xlsx/xform/table/auto-filter-xform.js +81 -0
- package/lib/xlsx/xform/table/custom-filter-xform.js +33 -0
- package/lib/xlsx/xform/table/filter-column-xform.js +96 -0
- package/lib/xlsx/xform/table/filter-xform.js +31 -0
- package/lib/xlsx/xform/table/table-column-xform.js +44 -0
- package/lib/xlsx/xform/table/table-style-info-xform.js +41 -0
- package/lib/xlsx/xform/table/table-xform.js +131 -0
- package/lib/xlsx/xlsx.js +774 -0
- package/lib/xlsx/xml/theme1.js +3 -0
- package/lib/xlsx/xml/theme1.xml +318 -0
- package/package.json +149 -0
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
const BaseXform = require('../base-xform');
|
|
4
|
+
class UnderlineXform extends BaseXform {
|
|
5
|
+
constructor(model) {
|
|
6
|
+
super();
|
|
7
|
+
this.model = model;
|
|
8
|
+
}
|
|
9
|
+
get tag() {
|
|
10
|
+
return 'u';
|
|
11
|
+
}
|
|
12
|
+
render(xmlStream, model) {
|
|
13
|
+
model = model || this.model;
|
|
14
|
+
if (model === true) {
|
|
15
|
+
xmlStream.leafNode('u');
|
|
16
|
+
} else {
|
|
17
|
+
const attr = UnderlineXform.Attributes[model];
|
|
18
|
+
if (attr) {
|
|
19
|
+
xmlStream.leafNode('u', attr);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
parseOpen(node) {
|
|
24
|
+
if (node.name === 'u') {
|
|
25
|
+
this.model = node.attributes.val || true;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
parseText() {}
|
|
29
|
+
parseClose() {
|
|
30
|
+
return false;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
UnderlineXform.Attributes = {
|
|
34
|
+
single: {},
|
|
35
|
+
double: {
|
|
36
|
+
val: 'double'
|
|
37
|
+
},
|
|
38
|
+
singleAccounting: {
|
|
39
|
+
val: 'singleAccounting'
|
|
40
|
+
},
|
|
41
|
+
doubleAccounting: {
|
|
42
|
+
val: 'doubleAccounting'
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
module.exports = UnderlineXform;
|
|
46
|
+
//# sourceMappingURL=underline-xform.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"underline-xform.js","names":["BaseXform","require","UnderlineXform","constructor","model","tag","render","xmlStream","leafNode","attr","Attributes","parseOpen","node","name","attributes","val","parseText","parseClose","single","double","singleAccounting","doubleAccounting","module","exports"],"sources":["../../../../../lib/xlsx/xform/style/underline-xform.js"],"sourcesContent":["const BaseXform = require('../base-xform');\r\n\r\nclass UnderlineXform extends BaseXform {\r\n constructor(model) {\r\n super();\r\n\r\n this.model = model;\r\n }\r\n\r\n get tag() {\r\n return 'u';\r\n }\r\n\r\n render(xmlStream, model) {\r\n model = model || this.model;\r\n\r\n if (model === true) {\r\n xmlStream.leafNode('u');\r\n } else {\r\n const attr = UnderlineXform.Attributes[model];\r\n if (attr) {\r\n xmlStream.leafNode('u', attr);\r\n }\r\n }\r\n }\r\n\r\n parseOpen(node) {\r\n if (node.name === 'u') {\r\n this.model = node.attributes.val || true;\r\n }\r\n }\r\n\r\n parseText() {}\r\n\r\n parseClose() {\r\n return false;\r\n }\r\n}\r\n\r\nUnderlineXform.Attributes = {\r\n single: {},\r\n double: {val: 'double'},\r\n singleAccounting: {val: 'singleAccounting'},\r\n doubleAccounting: {val: 'doubleAccounting'},\r\n};\r\n\r\nmodule.exports = UnderlineXform;\r\n"],"mappings":";;AAAA,MAAMA,SAAS,GAAGC,OAAO,CAAC,eAAe,CAAC;AAE1C,MAAMC,cAAc,SAASF,SAAS,CAAC;EACrCG,WAAWA,CAACC,KAAK,EAAE;IACjB,KAAK,CAAC,CAAC;IAEP,IAAI,CAACA,KAAK,GAAGA,KAAK;EACpB;EAEA,IAAIC,GAAGA,CAAA,EAAG;IACR,OAAO,GAAG;EACZ;EAEAC,MAAMA,CAACC,SAAS,EAAEH,KAAK,EAAE;IACvBA,KAAK,GAAGA,KAAK,IAAI,IAAI,CAACA,KAAK;IAE3B,IAAIA,KAAK,KAAK,IAAI,EAAE;MAClBG,SAAS,CAACC,QAAQ,CAAC,GAAG,CAAC;IACzB,CAAC,MAAM;MACL,MAAMC,IAAI,GAAGP,cAAc,CAACQ,UAAU,CAACN,KAAK,CAAC;MAC7C,IAAIK,IAAI,EAAE;QACRF,SAAS,CAACC,QAAQ,CAAC,GAAG,EAAEC,IAAI,CAAC;MAC/B;IACF;EACF;EAEAE,SAASA,CAACC,IAAI,EAAE;IACd,IAAIA,IAAI,CAACC,IAAI,KAAK,GAAG,EAAE;MACrB,IAAI,CAACT,KAAK,GAAGQ,IAAI,CAACE,UAAU,CAACC,GAAG,IAAI,IAAI;IAC1C;EACF;EAEAC,SAASA,CAAA,EAAG,CAAC;EAEbC,UAAUA,CAAA,EAAG;IACX,OAAO,KAAK;EACd;AACF;AAEAf,cAAc,CAACQ,UAAU,GAAG;EAC1BQ,MAAM,EAAE,CAAC,CAAC;EACVC,MAAM,EAAE;IAACJ,GAAG,EAAE;EAAQ,CAAC;EACvBK,gBAAgB,EAAE;IAACL,GAAG,EAAE;EAAkB,CAAC;EAC3CM,gBAAgB,EAAE;IAACN,GAAG,EAAE;EAAkB;AAC5C,CAAC;AAEDO,MAAM,CAACC,OAAO,GAAGrB,cAAc","ignoreList":[]}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
const BaseXform = require('../base-xform');
|
|
4
|
+
const FilterColumnXform = require('./filter-column-xform');
|
|
5
|
+
class AutoFilterXform extends BaseXform {
|
|
6
|
+
constructor() {
|
|
7
|
+
super();
|
|
8
|
+
this.map = {
|
|
9
|
+
filterColumn: new FilterColumnXform()
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
get tag() {
|
|
13
|
+
return 'autoFilter';
|
|
14
|
+
}
|
|
15
|
+
prepare(model) {
|
|
16
|
+
model.columns.forEach((column, index) => {
|
|
17
|
+
this.map.filterColumn.prepare(column, {
|
|
18
|
+
index
|
|
19
|
+
});
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
render(xmlStream, model) {
|
|
23
|
+
xmlStream.openNode(this.tag, {
|
|
24
|
+
ref: model.autoFilterRef
|
|
25
|
+
});
|
|
26
|
+
model.columns.forEach(column => {
|
|
27
|
+
this.map.filterColumn.render(xmlStream, column);
|
|
28
|
+
});
|
|
29
|
+
xmlStream.closeNode();
|
|
30
|
+
return true;
|
|
31
|
+
}
|
|
32
|
+
parseOpen(node) {
|
|
33
|
+
if (this.parser) {
|
|
34
|
+
this.parser.parseOpen(node);
|
|
35
|
+
return true;
|
|
36
|
+
}
|
|
37
|
+
switch (node.name) {
|
|
38
|
+
case this.tag:
|
|
39
|
+
this.model = {
|
|
40
|
+
autoFilterRef: node.attributes.ref,
|
|
41
|
+
columns: []
|
|
42
|
+
};
|
|
43
|
+
return true;
|
|
44
|
+
default:
|
|
45
|
+
this.parser = this.map[node.name];
|
|
46
|
+
if (this.parser) {
|
|
47
|
+
this.parseOpen(node);
|
|
48
|
+
return true;
|
|
49
|
+
}
|
|
50
|
+
throw new Error(`Unexpected xml node in parseOpen: ${JSON.stringify(node)}`);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
parseText(text) {
|
|
54
|
+
if (this.parser) {
|
|
55
|
+
this.parser.parseText(text);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
parseClose(name) {
|
|
59
|
+
if (this.parser) {
|
|
60
|
+
if (!this.parser.parseClose(name)) {
|
|
61
|
+
this.model.columns.push(this.parser.model);
|
|
62
|
+
this.parser = undefined;
|
|
63
|
+
}
|
|
64
|
+
return true;
|
|
65
|
+
}
|
|
66
|
+
switch (name) {
|
|
67
|
+
case this.tag:
|
|
68
|
+
return false;
|
|
69
|
+
default:
|
|
70
|
+
throw new Error(`Unexpected xml node in parseClose: ${name}`);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
module.exports = AutoFilterXform;
|
|
75
|
+
//# sourceMappingURL=auto-filter-xform.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auto-filter-xform.js","names":["BaseXform","require","FilterColumnXform","AutoFilterXform","constructor","map","filterColumn","tag","prepare","model","columns","forEach","column","index","render","xmlStream","openNode","ref","autoFilterRef","closeNode","parseOpen","node","parser","name","attributes","Error","JSON","stringify","parseText","text","parseClose","push","undefined","module","exports"],"sources":["../../../../../lib/xlsx/xform/table/auto-filter-xform.js"],"sourcesContent":["const BaseXform = require('../base-xform');\r\n\r\nconst FilterColumnXform = require('./filter-column-xform');\r\n\r\nclass AutoFilterXform extends BaseXform {\r\n constructor() {\r\n super();\r\n\r\n this.map = {\r\n filterColumn: new FilterColumnXform(),\r\n };\r\n }\r\n\r\n get tag() {\r\n return 'autoFilter';\r\n }\r\n\r\n prepare(model) {\r\n model.columns.forEach((column, index) => {\r\n this.map.filterColumn.prepare(column, {index});\r\n });\r\n }\r\n\r\n render(xmlStream, model) {\r\n xmlStream.openNode(this.tag, {ref: model.autoFilterRef});\r\n\r\n model.columns.forEach(column => {\r\n this.map.filterColumn.render(xmlStream, column);\r\n });\r\n\r\n xmlStream.closeNode();\r\n return true;\r\n }\r\n\r\n parseOpen(node) {\r\n if (this.parser) {\r\n this.parser.parseOpen(node);\r\n return true;\r\n }\r\n switch (node.name) {\r\n case this.tag:\r\n this.model = {\r\n autoFilterRef: node.attributes.ref,\r\n columns: [],\r\n };\r\n return true;\r\n\r\n default:\r\n this.parser = this.map[node.name];\r\n if (this.parser) {\r\n this.parseOpen(node);\r\n return true;\r\n }\r\n throw new Error(`Unexpected xml node in parseOpen: ${JSON.stringify(node)}`);\r\n }\r\n }\r\n\r\n parseText(text) {\r\n if (this.parser) {\r\n this.parser.parseText(text);\r\n }\r\n }\r\n\r\n parseClose(name) {\r\n if (this.parser) {\r\n if (!this.parser.parseClose(name)) {\r\n this.model.columns.push(this.parser.model);\r\n this.parser = undefined;\r\n }\r\n return true;\r\n }\r\n switch (name) {\r\n case this.tag:\r\n return false;\r\n default:\r\n throw new Error(`Unexpected xml node in parseClose: ${name}`);\r\n }\r\n }\r\n}\r\n\r\nmodule.exports = AutoFilterXform;\r\n"],"mappings":";;AAAA,MAAMA,SAAS,GAAGC,OAAO,CAAC,eAAe,CAAC;AAE1C,MAAMC,iBAAiB,GAAGD,OAAO,CAAC,uBAAuB,CAAC;AAE1D,MAAME,eAAe,SAASH,SAAS,CAAC;EACtCI,WAAWA,CAAA,EAAG;IACZ,KAAK,CAAC,CAAC;IAEP,IAAI,CAACC,GAAG,GAAG;MACTC,YAAY,EAAE,IAAIJ,iBAAiB,CAAC;IACtC,CAAC;EACH;EAEA,IAAIK,GAAGA,CAAA,EAAG;IACR,OAAO,YAAY;EACrB;EAEAC,OAAOA,CAACC,KAAK,EAAE;IACbA,KAAK,CAACC,OAAO,CAACC,OAAO,CAAC,CAACC,MAAM,EAAEC,KAAK,KAAK;MACvC,IAAI,CAACR,GAAG,CAACC,YAAY,CAACE,OAAO,CAACI,MAAM,EAAE;QAACC;MAAK,CAAC,CAAC;IAChD,CAAC,CAAC;EACJ;EAEAC,MAAMA,CAACC,SAAS,EAAEN,KAAK,EAAE;IACvBM,SAAS,CAACC,QAAQ,CAAC,IAAI,CAACT,GAAG,EAAE;MAACU,GAAG,EAAER,KAAK,CAACS;IAAa,CAAC,CAAC;IAExDT,KAAK,CAACC,OAAO,CAACC,OAAO,CAACC,MAAM,IAAI;MAC9B,IAAI,CAACP,GAAG,CAACC,YAAY,CAACQ,MAAM,CAACC,SAAS,EAAEH,MAAM,CAAC;IACjD,CAAC,CAAC;IAEFG,SAAS,CAACI,SAAS,CAAC,CAAC;IACrB,OAAO,IAAI;EACb;EAEAC,SAASA,CAACC,IAAI,EAAE;IACd,IAAI,IAAI,CAACC,MAAM,EAAE;MACf,IAAI,CAACA,MAAM,CAACF,SAAS,CAACC,IAAI,CAAC;MAC3B,OAAO,IAAI;IACb;IACA,QAAQA,IAAI,CAACE,IAAI;MACf,KAAK,IAAI,CAAChB,GAAG;QACX,IAAI,CAACE,KAAK,GAAG;UACXS,aAAa,EAAEG,IAAI,CAACG,UAAU,CAACP,GAAG;UAClCP,OAAO,EAAE;QACX,CAAC;QACD,OAAO,IAAI;MAEb;QACE,IAAI,CAACY,MAAM,GAAG,IAAI,CAACjB,GAAG,CAACgB,IAAI,CAACE,IAAI,CAAC;QACjC,IAAI,IAAI,CAACD,MAAM,EAAE;UACf,IAAI,CAACF,SAAS,CAACC,IAAI,CAAC;UACpB,OAAO,IAAI;QACb;QACA,MAAM,IAAII,KAAK,CAAC,qCAAqCC,IAAI,CAACC,SAAS,CAACN,IAAI,CAAC,EAAE,CAAC;IAChF;EACF;EAEAO,SAASA,CAACC,IAAI,EAAE;IACd,IAAI,IAAI,CAACP,MAAM,EAAE;MACf,IAAI,CAACA,MAAM,CAACM,SAAS,CAACC,IAAI,CAAC;IAC7B;EACF;EAEAC,UAAUA,CAACP,IAAI,EAAE;IACf,IAAI,IAAI,CAACD,MAAM,EAAE;MACf,IAAI,CAAC,IAAI,CAACA,MAAM,CAACQ,UAAU,CAACP,IAAI,CAAC,EAAE;QACjC,IAAI,CAACd,KAAK,CAACC,OAAO,CAACqB,IAAI,CAAC,IAAI,CAACT,MAAM,CAACb,KAAK,CAAC;QAC1C,IAAI,CAACa,MAAM,GAAGU,SAAS;MACzB;MACA,OAAO,IAAI;IACb;IACA,QAAQT,IAAI;MACV,KAAK,IAAI,CAAChB,GAAG;QACX,OAAO,KAAK;MACd;QACE,MAAM,IAAIkB,KAAK,CAAC,sCAAsCF,IAAI,EAAE,CAAC;IACjE;EACF;AACF;AAEAU,MAAM,CAACC,OAAO,GAAG/B,eAAe","ignoreList":[]}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
const BaseXform = require('../base-xform');
|
|
4
|
+
class CustomFilterXform extends BaseXform {
|
|
5
|
+
get tag() {
|
|
6
|
+
return 'customFilter';
|
|
7
|
+
}
|
|
8
|
+
render(xmlStream, model) {
|
|
9
|
+
xmlStream.leafNode(this.tag, {
|
|
10
|
+
val: model.val,
|
|
11
|
+
operator: model.operator
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
parseOpen(node) {
|
|
15
|
+
if (node.name === this.tag) {
|
|
16
|
+
this.model = {
|
|
17
|
+
val: node.attributes.val,
|
|
18
|
+
operator: node.attributes.operator
|
|
19
|
+
};
|
|
20
|
+
return true;
|
|
21
|
+
}
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
parseText() {}
|
|
25
|
+
parseClose() {
|
|
26
|
+
return false;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
module.exports = CustomFilterXform;
|
|
30
|
+
//# sourceMappingURL=custom-filter-xform.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"custom-filter-xform.js","names":["BaseXform","require","CustomFilterXform","tag","render","xmlStream","model","leafNode","val","operator","parseOpen","node","name","attributes","parseText","parseClose","module","exports"],"sources":["../../../../../lib/xlsx/xform/table/custom-filter-xform.js"],"sourcesContent":["const BaseXform = require('../base-xform');\r\n\r\nclass CustomFilterXform extends BaseXform {\r\n get tag() {\r\n return 'customFilter';\r\n }\r\n\r\n render(xmlStream, model) {\r\n xmlStream.leafNode(this.tag, {\r\n val: model.val,\r\n operator: model.operator,\r\n });\r\n }\r\n\r\n parseOpen(node) {\r\n if (node.name === this.tag) {\r\n this.model = {\r\n val: node.attributes.val,\r\n operator: node.attributes.operator,\r\n };\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n parseText() {}\r\n\r\n parseClose() {\r\n return false;\r\n }\r\n}\r\n\r\nmodule.exports = CustomFilterXform;\r\n"],"mappings":";;AAAA,MAAMA,SAAS,GAAGC,OAAO,CAAC,eAAe,CAAC;AAE1C,MAAMC,iBAAiB,SAASF,SAAS,CAAC;EACxC,IAAIG,GAAGA,CAAA,EAAG;IACR,OAAO,cAAc;EACvB;EAEAC,MAAMA,CAACC,SAAS,EAAEC,KAAK,EAAE;IACvBD,SAAS,CAACE,QAAQ,CAAC,IAAI,CAACJ,GAAG,EAAE;MAC3BK,GAAG,EAAEF,KAAK,CAACE,GAAG;MACdC,QAAQ,EAAEH,KAAK,CAACG;IAClB,CAAC,CAAC;EACJ;EAEAC,SAASA,CAACC,IAAI,EAAE;IACd,IAAIA,IAAI,CAACC,IAAI,KAAK,IAAI,CAACT,GAAG,EAAE;MAC1B,IAAI,CAACG,KAAK,GAAG;QACXE,GAAG,EAAEG,IAAI,CAACE,UAAU,CAACL,GAAG;QACxBC,QAAQ,EAAEE,IAAI,CAACE,UAAU,CAACJ;MAC5B,CAAC;MACD,OAAO,IAAI;IACb;IACA,OAAO,KAAK;EACd;EAEAK,SAASA,CAAA,EAAG,CAAC;EAEbC,UAAUA,CAAA,EAAG;IACX,OAAO,KAAK;EACd;AACF;AAEAC,MAAM,CAACC,OAAO,GAAGf,iBAAiB","ignoreList":[]}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
const BaseXform = require('../base-xform');
|
|
4
|
+
const ListXform = require('../list-xform');
|
|
5
|
+
const CustomFilterXform = require('./custom-filter-xform');
|
|
6
|
+
const FilterXform = require('./filter-xform');
|
|
7
|
+
class FilterColumnXform extends BaseXform {
|
|
8
|
+
constructor() {
|
|
9
|
+
super();
|
|
10
|
+
this.map = {
|
|
11
|
+
customFilters: new ListXform({
|
|
12
|
+
tag: 'customFilters',
|
|
13
|
+
count: false,
|
|
14
|
+
empty: true,
|
|
15
|
+
childXform: new CustomFilterXform()
|
|
16
|
+
}),
|
|
17
|
+
filters: new ListXform({
|
|
18
|
+
tag: 'filters',
|
|
19
|
+
count: false,
|
|
20
|
+
empty: true,
|
|
21
|
+
childXform: new FilterXform()
|
|
22
|
+
})
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
get tag() {
|
|
26
|
+
return 'filterColumn';
|
|
27
|
+
}
|
|
28
|
+
prepare(model, options) {
|
|
29
|
+
model.colId = options.index.toString();
|
|
30
|
+
}
|
|
31
|
+
render(xmlStream, model) {
|
|
32
|
+
if (model.customFilters) {
|
|
33
|
+
xmlStream.openNode(this.tag, {
|
|
34
|
+
colId: model.colId,
|
|
35
|
+
hiddenButton: model.filterButton ? '0' : '1'
|
|
36
|
+
});
|
|
37
|
+
this.map.customFilters.render(xmlStream, model.customFilters);
|
|
38
|
+
xmlStream.closeNode();
|
|
39
|
+
return true;
|
|
40
|
+
}
|
|
41
|
+
xmlStream.leafNode(this.tag, {
|
|
42
|
+
colId: model.colId,
|
|
43
|
+
hiddenButton: model.filterButton ? '0' : '1'
|
|
44
|
+
});
|
|
45
|
+
return true;
|
|
46
|
+
}
|
|
47
|
+
parseOpen(node) {
|
|
48
|
+
if (this.parser) {
|
|
49
|
+
this.parser.parseOpen(node);
|
|
50
|
+
return true;
|
|
51
|
+
}
|
|
52
|
+
const {
|
|
53
|
+
attributes
|
|
54
|
+
} = node;
|
|
55
|
+
switch (node.name) {
|
|
56
|
+
case this.tag:
|
|
57
|
+
this.model = {
|
|
58
|
+
filterButton: attributes.hiddenButton === '0'
|
|
59
|
+
};
|
|
60
|
+
return true;
|
|
61
|
+
default:
|
|
62
|
+
this.parser = this.map[node.name];
|
|
63
|
+
if (this.parser) {
|
|
64
|
+
this.parseOpen(node);
|
|
65
|
+
return true;
|
|
66
|
+
}
|
|
67
|
+
throw new Error(`Unexpected xml node in parseOpen: ${JSON.stringify(node)}`);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
parseText() {}
|
|
71
|
+
parseClose(name) {
|
|
72
|
+
if (this.parser) {
|
|
73
|
+
if (!this.parser.parseClose(name)) {
|
|
74
|
+
this.parser = undefined;
|
|
75
|
+
}
|
|
76
|
+
return true;
|
|
77
|
+
}
|
|
78
|
+
switch (name) {
|
|
79
|
+
case this.tag:
|
|
80
|
+
this.model.customFilters = this.map.customFilters.model;
|
|
81
|
+
return false;
|
|
82
|
+
default:
|
|
83
|
+
// could be some unrecognised tags
|
|
84
|
+
return true;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
module.exports = FilterColumnXform;
|
|
89
|
+
//# sourceMappingURL=filter-column-xform.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filter-column-xform.js","names":["BaseXform","require","ListXform","CustomFilterXform","FilterXform","FilterColumnXform","constructor","map","customFilters","tag","count","empty","childXform","filters","prepare","model","options","colId","index","toString","render","xmlStream","openNode","hiddenButton","filterButton","closeNode","leafNode","parseOpen","node","parser","attributes","name","Error","JSON","stringify","parseText","parseClose","undefined","module","exports"],"sources":["../../../../../lib/xlsx/xform/table/filter-column-xform.js"],"sourcesContent":["const BaseXform = require('../base-xform');\r\nconst ListXform = require('../list-xform');\r\n\r\nconst CustomFilterXform = require('./custom-filter-xform');\r\nconst FilterXform = require('./filter-xform');\r\n\r\nclass FilterColumnXform extends BaseXform {\r\n constructor() {\r\n super();\r\n\r\n this.map = {\r\n customFilters: new ListXform({\r\n tag: 'customFilters',\r\n count: false,\r\n empty: true,\r\n childXform: new CustomFilterXform(),\r\n }),\r\n filters: new ListXform({\r\n tag: 'filters',\r\n count: false,\r\n empty: true,\r\n childXform: new FilterXform(),\r\n }),\r\n };\r\n }\r\n\r\n get tag() {\r\n return 'filterColumn';\r\n }\r\n\r\n prepare(model, options) {\r\n model.colId = options.index.toString();\r\n }\r\n\r\n render(xmlStream, model) {\r\n if (model.customFilters) {\r\n xmlStream.openNode(this.tag, {\r\n colId: model.colId,\r\n hiddenButton: model.filterButton ? '0' : '1',\r\n });\r\n\r\n this.map.customFilters.render(xmlStream, model.customFilters);\r\n\r\n xmlStream.closeNode();\r\n return true;\r\n }\r\n xmlStream.leafNode(this.tag, {\r\n colId: model.colId,\r\n hiddenButton: model.filterButton ? '0' : '1',\r\n });\r\n return true;\r\n }\r\n\r\n parseOpen(node) {\r\n if (this.parser) {\r\n this.parser.parseOpen(node);\r\n return true;\r\n }\r\n const {attributes} = node;\r\n switch (node.name) {\r\n case this.tag:\r\n this.model = {\r\n filterButton: attributes.hiddenButton === '0',\r\n };\r\n return true;\r\n default:\r\n this.parser = this.map[node.name];\r\n if (this.parser) {\r\n this.parseOpen(node);\r\n return true;\r\n }\r\n throw new Error(`Unexpected xml node in parseOpen: ${JSON.stringify(node)}`);\r\n }\r\n }\r\n\r\n parseText() {}\r\n\r\n parseClose(name) {\r\n if (this.parser) {\r\n if (!this.parser.parseClose(name)) {\r\n this.parser = undefined;\r\n }\r\n return true;\r\n }\r\n switch (name) {\r\n case this.tag:\r\n this.model.customFilters = this.map.customFilters.model;\r\n return false;\r\n default:\r\n // could be some unrecognised tags\r\n return true;\r\n }\r\n }\r\n}\r\n\r\nmodule.exports = FilterColumnXform;\r\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
const BaseXform = require('../base-xform');
|
|
4
|
+
class FilterXform extends BaseXform {
|
|
5
|
+
get tag() {
|
|
6
|
+
return 'filter';
|
|
7
|
+
}
|
|
8
|
+
render(xmlStream, model) {
|
|
9
|
+
xmlStream.leafNode(this.tag, {
|
|
10
|
+
val: model.val
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
parseOpen(node) {
|
|
14
|
+
if (node.name === this.tag) {
|
|
15
|
+
this.model = {
|
|
16
|
+
val: node.attributes.val
|
|
17
|
+
};
|
|
18
|
+
return true;
|
|
19
|
+
}
|
|
20
|
+
return false;
|
|
21
|
+
}
|
|
22
|
+
parseText() {}
|
|
23
|
+
parseClose() {
|
|
24
|
+
return false;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
module.exports = FilterXform;
|
|
28
|
+
//# sourceMappingURL=filter-xform.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filter-xform.js","names":["BaseXform","require","FilterXform","tag","render","xmlStream","model","leafNode","val","parseOpen","node","name","attributes","parseText","parseClose","module","exports"],"sources":["../../../../../lib/xlsx/xform/table/filter-xform.js"],"sourcesContent":["const BaseXform = require('../base-xform');\r\n\r\nclass FilterXform extends BaseXform {\r\n get tag() {\r\n return 'filter';\r\n }\r\n\r\n render(xmlStream, model) {\r\n xmlStream.leafNode(this.tag, {\r\n val: model.val,\r\n });\r\n }\r\n\r\n parseOpen(node) {\r\n if (node.name === this.tag) {\r\n this.model = {\r\n val: node.attributes.val,\r\n };\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n parseText() {}\r\n\r\n parseClose() {\r\n return false;\r\n }\r\n}\r\n\r\nmodule.exports = FilterXform;\r\n"],"mappings":";;AAAA,MAAMA,SAAS,GAAGC,OAAO,CAAC,eAAe,CAAC;AAE1C,MAAMC,WAAW,SAASF,SAAS,CAAC;EAClC,IAAIG,GAAGA,CAAA,EAAG;IACR,OAAO,QAAQ;EACjB;EAEAC,MAAMA,CAACC,SAAS,EAAEC,KAAK,EAAE;IACvBD,SAAS,CAACE,QAAQ,CAAC,IAAI,CAACJ,GAAG,EAAE;MAC3BK,GAAG,EAAEF,KAAK,CAACE;IACb,CAAC,CAAC;EACJ;EAEAC,SAASA,CAACC,IAAI,EAAE;IACd,IAAIA,IAAI,CAACC,IAAI,KAAK,IAAI,CAACR,GAAG,EAAE;MAC1B,IAAI,CAACG,KAAK,GAAG;QACXE,GAAG,EAAEE,IAAI,CAACE,UAAU,CAACJ;MACvB,CAAC;MACD,OAAO,IAAI;IACb;IACA,OAAO,KAAK;EACd;EAEAK,SAASA,CAAA,EAAG,CAAC;EAEbC,UAAUA,CAAA,EAAG;IACX,OAAO,KAAK;EACd;AACF;AAEAC,MAAM,CAACC,OAAO,GAAGd,WAAW","ignoreList":[]}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
const BaseXform = require('../base-xform');
|
|
4
|
+
class TableColumnXform extends BaseXform {
|
|
5
|
+
get tag() {
|
|
6
|
+
return 'tableColumn';
|
|
7
|
+
}
|
|
8
|
+
prepare(model, options) {
|
|
9
|
+
model.id = options.index + 1;
|
|
10
|
+
}
|
|
11
|
+
render(xmlStream, model) {
|
|
12
|
+
xmlStream.leafNode(this.tag, {
|
|
13
|
+
id: model.id.toString(),
|
|
14
|
+
name: model.name,
|
|
15
|
+
totalsRowLabel: model.totalsRowLabel,
|
|
16
|
+
totalsRowFunction: model.totalsRowFunction,
|
|
17
|
+
dxfId: model.dxfId
|
|
18
|
+
});
|
|
19
|
+
return true;
|
|
20
|
+
}
|
|
21
|
+
parseOpen(node) {
|
|
22
|
+
if (node.name === this.tag) {
|
|
23
|
+
const {
|
|
24
|
+
attributes
|
|
25
|
+
} = node;
|
|
26
|
+
this.model = {
|
|
27
|
+
name: attributes.name,
|
|
28
|
+
totalsRowLabel: attributes.totalsRowLabel,
|
|
29
|
+
totalsRowFunction: attributes.totalsRowFunction,
|
|
30
|
+
dxfId: attributes.dxfId
|
|
31
|
+
};
|
|
32
|
+
return true;
|
|
33
|
+
}
|
|
34
|
+
return false;
|
|
35
|
+
}
|
|
36
|
+
parseText() {}
|
|
37
|
+
parseClose() {
|
|
38
|
+
return false;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
module.exports = TableColumnXform;
|
|
42
|
+
//# sourceMappingURL=table-column-xform.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"table-column-xform.js","names":["BaseXform","require","TableColumnXform","tag","prepare","model","options","id","index","render","xmlStream","leafNode","toString","name","totalsRowLabel","totalsRowFunction","dxfId","parseOpen","node","attributes","parseText","parseClose","module","exports"],"sources":["../../../../../lib/xlsx/xform/table/table-column-xform.js"],"sourcesContent":["const BaseXform = require('../base-xform');\r\n\r\nclass TableColumnXform extends BaseXform {\r\n get tag() {\r\n return 'tableColumn';\r\n }\r\n\r\n prepare(model, options) {\r\n model.id = options.index + 1;\r\n }\r\n\r\n render(xmlStream, model) {\r\n xmlStream.leafNode(this.tag, {\r\n id: model.id.toString(),\r\n name: model.name,\r\n totalsRowLabel: model.totalsRowLabel,\r\n totalsRowFunction: model.totalsRowFunction,\r\n dxfId: model.dxfId,\r\n });\r\n return true;\r\n }\r\n\r\n parseOpen(node) {\r\n if (node.name === this.tag) {\r\n const {attributes} = node;\r\n this.model = {\r\n name: attributes.name,\r\n totalsRowLabel: attributes.totalsRowLabel,\r\n totalsRowFunction: attributes.totalsRowFunction,\r\n dxfId: attributes.dxfId,\r\n };\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n parseText() {}\r\n\r\n parseClose() {\r\n return false;\r\n }\r\n}\r\n\r\nmodule.exports = TableColumnXform;\r\n"],"mappings":";;AAAA,MAAMA,SAAS,GAAGC,OAAO,CAAC,eAAe,CAAC;AAE1C,MAAMC,gBAAgB,SAASF,SAAS,CAAC;EACvC,IAAIG,GAAGA,CAAA,EAAG;IACR,OAAO,aAAa;EACtB;EAEAC,OAAOA,CAACC,KAAK,EAAEC,OAAO,EAAE;IACtBD,KAAK,CAACE,EAAE,GAAGD,OAAO,CAACE,KAAK,GAAG,CAAC;EAC9B;EAEAC,MAAMA,CAACC,SAAS,EAAEL,KAAK,EAAE;IACvBK,SAAS,CAACC,QAAQ,CAAC,IAAI,CAACR,GAAG,EAAE;MAC3BI,EAAE,EAAEF,KAAK,CAACE,EAAE,CAACK,QAAQ,CAAC,CAAC;MACvBC,IAAI,EAAER,KAAK,CAACQ,IAAI;MAChBC,cAAc,EAAET,KAAK,CAACS,cAAc;MACpCC,iBAAiB,EAAEV,KAAK,CAACU,iBAAiB;MAC1CC,KAAK,EAAEX,KAAK,CAACW;IACf,CAAC,CAAC;IACF,OAAO,IAAI;EACb;EAEAC,SAASA,CAACC,IAAI,EAAE;IACd,IAAIA,IAAI,CAACL,IAAI,KAAK,IAAI,CAACV,GAAG,EAAE;MAC1B,MAAM;QAACgB;MAAU,CAAC,GAAGD,IAAI;MACzB,IAAI,CAACb,KAAK,GAAG;QACXQ,IAAI,EAAEM,UAAU,CAACN,IAAI;QACrBC,cAAc,EAAEK,UAAU,CAACL,cAAc;QACzCC,iBAAiB,EAAEI,UAAU,CAACJ,iBAAiB;QAC/CC,KAAK,EAAEG,UAAU,CAACH;MACpB,CAAC;MACD,OAAO,IAAI;IACb;IACA,OAAO,KAAK;EACd;EAEAI,SAASA,CAAA,EAAG,CAAC;EAEbC,UAAUA,CAAA,EAAG;IACX,OAAO,KAAK;EACd;AACF;AAEAC,MAAM,CAACC,OAAO,GAAGrB,gBAAgB","ignoreList":[]}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
const BaseXform = require('../base-xform');
|
|
4
|
+
class TableStyleInfoXform extends BaseXform {
|
|
5
|
+
get tag() {
|
|
6
|
+
return 'tableStyleInfo';
|
|
7
|
+
}
|
|
8
|
+
render(xmlStream, model) {
|
|
9
|
+
xmlStream.leafNode(this.tag, {
|
|
10
|
+
name: model.theme ? model.theme : undefined,
|
|
11
|
+
showFirstColumn: model.showFirstColumn ? '1' : '0',
|
|
12
|
+
showLastColumn: model.showLastColumn ? '1' : '0',
|
|
13
|
+
showRowStripes: model.showRowStripes ? '1' : '0',
|
|
14
|
+
showColumnStripes: model.showColumnStripes ? '1' : '0'
|
|
15
|
+
});
|
|
16
|
+
return true;
|
|
17
|
+
}
|
|
18
|
+
parseOpen(node) {
|
|
19
|
+
if (node.name === this.tag) {
|
|
20
|
+
const {
|
|
21
|
+
attributes
|
|
22
|
+
} = node;
|
|
23
|
+
this.model = {
|
|
24
|
+
theme: attributes.name ? attributes.name : null,
|
|
25
|
+
showFirstColumn: attributes.showFirstColumn === '1',
|
|
26
|
+
showLastColumn: attributes.showLastColumn === '1',
|
|
27
|
+
showRowStripes: attributes.showRowStripes === '1',
|
|
28
|
+
showColumnStripes: attributes.showColumnStripes === '1'
|
|
29
|
+
};
|
|
30
|
+
return true;
|
|
31
|
+
}
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
parseText() {}
|
|
35
|
+
parseClose() {
|
|
36
|
+
return false;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
module.exports = TableStyleInfoXform;
|
|
40
|
+
//# sourceMappingURL=table-style-info-xform.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"table-style-info-xform.js","names":["BaseXform","require","TableStyleInfoXform","tag","render","xmlStream","model","leafNode","name","theme","undefined","showFirstColumn","showLastColumn","showRowStripes","showColumnStripes","parseOpen","node","attributes","parseText","parseClose","module","exports"],"sources":["../../../../../lib/xlsx/xform/table/table-style-info-xform.js"],"sourcesContent":["const BaseXform = require('../base-xform');\r\n\r\nclass TableStyleInfoXform extends BaseXform {\r\n get tag() {\r\n return 'tableStyleInfo';\r\n }\r\n\r\n render(xmlStream, model) {\r\n xmlStream.leafNode(this.tag, {\r\n name: model.theme ? model.theme : undefined,\r\n showFirstColumn: model.showFirstColumn ? '1' : '0',\r\n showLastColumn: model.showLastColumn ? '1' : '0',\r\n showRowStripes: model.showRowStripes ? '1' : '0',\r\n showColumnStripes: model.showColumnStripes ? '1' : '0',\r\n });\r\n return true;\r\n }\r\n\r\n parseOpen(node) {\r\n if (node.name === this.tag) {\r\n const {attributes} = node;\r\n this.model = {\r\n theme: attributes.name ? attributes.name : null,\r\n showFirstColumn: attributes.showFirstColumn === '1',\r\n showLastColumn: attributes.showLastColumn === '1',\r\n showRowStripes: attributes.showRowStripes === '1',\r\n showColumnStripes: attributes.showColumnStripes === '1',\r\n };\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n parseText() {}\r\n\r\n parseClose() {\r\n return false;\r\n }\r\n}\r\n\r\nmodule.exports = TableStyleInfoXform;\r\n"],"mappings":";;AAAA,MAAMA,SAAS,GAAGC,OAAO,CAAC,eAAe,CAAC;AAE1C,MAAMC,mBAAmB,SAASF,SAAS,CAAC;EAC1C,IAAIG,GAAGA,CAAA,EAAG;IACR,OAAO,gBAAgB;EACzB;EAEAC,MAAMA,CAACC,SAAS,EAAEC,KAAK,EAAE;IACvBD,SAAS,CAACE,QAAQ,CAAC,IAAI,CAACJ,GAAG,EAAE;MAC3BK,IAAI,EAAEF,KAAK,CAACG,KAAK,GAAGH,KAAK,CAACG,KAAK,GAAGC,SAAS;MAC3CC,eAAe,EAAEL,KAAK,CAACK,eAAe,GAAG,GAAG,GAAG,GAAG;MAClDC,cAAc,EAAEN,KAAK,CAACM,cAAc,GAAG,GAAG,GAAG,GAAG;MAChDC,cAAc,EAAEP,KAAK,CAACO,cAAc,GAAG,GAAG,GAAG,GAAG;MAChDC,iBAAiB,EAAER,KAAK,CAACQ,iBAAiB,GAAG,GAAG,GAAG;IACrD,CAAC,CAAC;IACF,OAAO,IAAI;EACb;EAEAC,SAASA,CAACC,IAAI,EAAE;IACd,IAAIA,IAAI,CAACR,IAAI,KAAK,IAAI,CAACL,GAAG,EAAE;MAC1B,MAAM;QAACc;MAAU,CAAC,GAAGD,IAAI;MACzB,IAAI,CAACV,KAAK,GAAG;QACXG,KAAK,EAAEQ,UAAU,CAACT,IAAI,GAAGS,UAAU,CAACT,IAAI,GAAG,IAAI;QAC/CG,eAAe,EAAEM,UAAU,CAACN,eAAe,KAAK,GAAG;QACnDC,cAAc,EAAEK,UAAU,CAACL,cAAc,KAAK,GAAG;QACjDC,cAAc,EAAEI,UAAU,CAACJ,cAAc,KAAK,GAAG;QACjDC,iBAAiB,EAAEG,UAAU,CAACH,iBAAiB,KAAK;MACtD,CAAC;MACD,OAAO,IAAI;IACb;IACA,OAAO,KAAK;EACd;EAEAI,SAASA,CAAA,EAAG,CAAC;EAEbC,UAAUA,CAAA,EAAG;IACX,OAAO,KAAK;EACd;AACF;AAEAC,MAAM,CAACC,OAAO,GAAGnB,mBAAmB","ignoreList":[]}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
const XmlStream = require('../../../utils/xml-stream');
|
|
4
|
+
const BaseXform = require('../base-xform');
|
|
5
|
+
const ListXform = require('../list-xform');
|
|
6
|
+
const AutoFilterXform = require('./auto-filter-xform');
|
|
7
|
+
const TableColumnXform = require('./table-column-xform');
|
|
8
|
+
const TableStyleInfoXform = require('./table-style-info-xform');
|
|
9
|
+
class TableXform extends BaseXform {
|
|
10
|
+
constructor() {
|
|
11
|
+
super();
|
|
12
|
+
this.map = {
|
|
13
|
+
autoFilter: new AutoFilterXform(),
|
|
14
|
+
tableColumns: new ListXform({
|
|
15
|
+
tag: 'tableColumns',
|
|
16
|
+
count: true,
|
|
17
|
+
empty: true,
|
|
18
|
+
childXform: new TableColumnXform()
|
|
19
|
+
}),
|
|
20
|
+
tableStyleInfo: new TableStyleInfoXform()
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
prepare(model, options) {
|
|
24
|
+
this.map.autoFilter.prepare(model);
|
|
25
|
+
this.map.tableColumns.prepare(model.columns, options);
|
|
26
|
+
}
|
|
27
|
+
get tag() {
|
|
28
|
+
return 'table';
|
|
29
|
+
}
|
|
30
|
+
render(xmlStream, model) {
|
|
31
|
+
xmlStream.openXml(XmlStream.StdDocAttributes);
|
|
32
|
+
xmlStream.openNode(this.tag, {
|
|
33
|
+
...TableXform.TABLE_ATTRIBUTES,
|
|
34
|
+
id: model.id,
|
|
35
|
+
name: model.name,
|
|
36
|
+
displayName: model.displayName || model.name,
|
|
37
|
+
ref: model.tableRef,
|
|
38
|
+
totalsRowCount: model.totalsRow ? '1' : undefined,
|
|
39
|
+
totalsRowShown: model.totalsRow ? undefined : '1',
|
|
40
|
+
headerRowCount: model.headerRow ? '1' : '0'
|
|
41
|
+
});
|
|
42
|
+
this.map.autoFilter.render(xmlStream, model);
|
|
43
|
+
this.map.tableColumns.render(xmlStream, model.columns);
|
|
44
|
+
this.map.tableStyleInfo.render(xmlStream, model.style);
|
|
45
|
+
xmlStream.closeNode();
|
|
46
|
+
}
|
|
47
|
+
parseOpen(node) {
|
|
48
|
+
if (this.parser) {
|
|
49
|
+
this.parser.parseOpen(node);
|
|
50
|
+
return true;
|
|
51
|
+
}
|
|
52
|
+
const {
|
|
53
|
+
name,
|
|
54
|
+
attributes
|
|
55
|
+
} = node;
|
|
56
|
+
switch (name) {
|
|
57
|
+
case this.tag:
|
|
58
|
+
this.reset();
|
|
59
|
+
this.model = {
|
|
60
|
+
name: attributes.name,
|
|
61
|
+
displayName: attributes.displayName || attributes.name,
|
|
62
|
+
tableRef: attributes.ref,
|
|
63
|
+
totalsRow: attributes.totalsRowCount === '1',
|
|
64
|
+
headerRow: attributes.headerRowCount === '1'
|
|
65
|
+
};
|
|
66
|
+
break;
|
|
67
|
+
default:
|
|
68
|
+
this.parser = this.map[node.name];
|
|
69
|
+
if (this.parser) {
|
|
70
|
+
this.parser.parseOpen(node);
|
|
71
|
+
}
|
|
72
|
+
break;
|
|
73
|
+
}
|
|
74
|
+
return true;
|
|
75
|
+
}
|
|
76
|
+
parseText(text) {
|
|
77
|
+
if (this.parser) {
|
|
78
|
+
this.parser.parseText(text);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
parseClose(name) {
|
|
82
|
+
if (this.parser) {
|
|
83
|
+
if (!this.parser.parseClose(name)) {
|
|
84
|
+
this.parser = undefined;
|
|
85
|
+
}
|
|
86
|
+
return true;
|
|
87
|
+
}
|
|
88
|
+
switch (name) {
|
|
89
|
+
case this.tag:
|
|
90
|
+
this.model.columns = this.map.tableColumns.model;
|
|
91
|
+
if (this.map.autoFilter.model) {
|
|
92
|
+
this.model.autoFilterRef = this.map.autoFilter.model.autoFilterRef;
|
|
93
|
+
this.map.autoFilter.model.columns.forEach((column, index) => {
|
|
94
|
+
this.model.columns[index].filterButton = column.filterButton;
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
this.model.style = this.map.tableStyleInfo.model;
|
|
98
|
+
return false;
|
|
99
|
+
default:
|
|
100
|
+
// could be some unrecognised tags
|
|
101
|
+
return true;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
reconcile(model, options) {
|
|
105
|
+
// fetch the dfxs from styles
|
|
106
|
+
model.columns.forEach(column => {
|
|
107
|
+
if (column.dxfId !== undefined) {
|
|
108
|
+
column.style = options.styles.getDxfStyle(column.dxfId);
|
|
109
|
+
}
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
TableXform.TABLE_ATTRIBUTES = {
|
|
114
|
+
xmlns: 'http://schemas.openxmlformats.org/spreadsheetml/2006/main',
|
|
115
|
+
'xmlns:mc': 'http://schemas.openxmlformats.org/markup-compatibility/2006',
|
|
116
|
+
'mc:Ignorable': 'xr xr3',
|
|
117
|
+
'xmlns:xr': 'http://schemas.microsoft.com/office/spreadsheetml/2014/revision',
|
|
118
|
+
'xmlns:xr3': 'http://schemas.microsoft.com/office/spreadsheetml/2016/revision3'
|
|
119
|
+
// 'xr:uid': '{00000000-000C-0000-FFFF-FFFF00000000}',
|
|
120
|
+
};
|
|
121
|
+
module.exports = TableXform;
|
|
122
|
+
//# sourceMappingURL=table-xform.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"table-xform.js","names":["XmlStream","require","BaseXform","ListXform","AutoFilterXform","TableColumnXform","TableStyleInfoXform","TableXform","constructor","map","autoFilter","tableColumns","tag","count","empty","childXform","tableStyleInfo","prepare","model","options","columns","render","xmlStream","openXml","StdDocAttributes","openNode","TABLE_ATTRIBUTES","id","name","displayName","ref","tableRef","totalsRowCount","totalsRow","undefined","totalsRowShown","headerRowCount","headerRow","style","closeNode","parseOpen","node","parser","attributes","reset","parseText","text","parseClose","autoFilterRef","forEach","column","index","filterButton","reconcile","dxfId","styles","getDxfStyle","xmlns","module","exports"],"sources":["../../../../../lib/xlsx/xform/table/table-xform.js"],"sourcesContent":["const XmlStream = require('../../../utils/xml-stream');\r\n\r\nconst BaseXform = require('../base-xform');\r\nconst ListXform = require('../list-xform');\r\n\r\nconst AutoFilterXform = require('./auto-filter-xform');\r\nconst TableColumnXform = require('./table-column-xform');\r\nconst TableStyleInfoXform = require('./table-style-info-xform');\r\n\r\nclass TableXform extends BaseXform {\r\n constructor() {\r\n super();\r\n\r\n this.map = {\r\n autoFilter: new AutoFilterXform(),\r\n tableColumns: new ListXform({\r\n tag: 'tableColumns',\r\n count: true,\r\n empty: true,\r\n childXform: new TableColumnXform(),\r\n }),\r\n tableStyleInfo: new TableStyleInfoXform(),\r\n };\r\n }\r\n\r\n prepare(model, options) {\r\n this.map.autoFilter.prepare(model);\r\n this.map.tableColumns.prepare(model.columns, options);\r\n }\r\n\r\n get tag() {\r\n return 'table';\r\n }\r\n\r\n render(xmlStream, model) {\r\n xmlStream.openXml(XmlStream.StdDocAttributes);\r\n xmlStream.openNode(this.tag, {\r\n ...TableXform.TABLE_ATTRIBUTES,\r\n id: model.id,\r\n name: model.name,\r\n displayName: model.displayName || model.name,\r\n ref: model.tableRef,\r\n totalsRowCount: model.totalsRow ? '1' : undefined,\r\n totalsRowShown: model.totalsRow ? undefined : '1',\r\n headerRowCount: model.headerRow ? '1' : '0',\r\n });\r\n\r\n this.map.autoFilter.render(xmlStream, model);\r\n this.map.tableColumns.render(xmlStream, model.columns);\r\n this.map.tableStyleInfo.render(xmlStream, model.style);\r\n\r\n xmlStream.closeNode();\r\n }\r\n\r\n parseOpen(node) {\r\n if (this.parser) {\r\n this.parser.parseOpen(node);\r\n return true;\r\n }\r\n const {name, attributes} = node;\r\n switch (name) {\r\n case this.tag:\r\n this.reset();\r\n this.model = {\r\n name: attributes.name,\r\n displayName: attributes.displayName || attributes.name,\r\n tableRef: attributes.ref,\r\n totalsRow: attributes.totalsRowCount === '1',\r\n headerRow: attributes.headerRowCount === '1',\r\n };\r\n break;\r\n default:\r\n this.parser = this.map[node.name];\r\n if (this.parser) {\r\n this.parser.parseOpen(node);\r\n }\r\n break;\r\n }\r\n return true;\r\n }\r\n\r\n parseText(text) {\r\n if (this.parser) {\r\n this.parser.parseText(text);\r\n }\r\n }\r\n\r\n parseClose(name) {\r\n if (this.parser) {\r\n if (!this.parser.parseClose(name)) {\r\n this.parser = undefined;\r\n }\r\n return true;\r\n }\r\n switch (name) {\r\n case this.tag:\r\n this.model.columns = this.map.tableColumns.model;\r\n if (this.map.autoFilter.model) {\r\n this.model.autoFilterRef = this.map.autoFilter.model.autoFilterRef;\r\n this.map.autoFilter.model.columns.forEach((column, index) => {\r\n this.model.columns[index].filterButton = column.filterButton;\r\n });\r\n }\r\n this.model.style = this.map.tableStyleInfo.model;\r\n return false;\r\n default:\r\n // could be some unrecognised tags\r\n return true;\r\n }\r\n }\r\n\r\n reconcile(model, options) {\r\n // fetch the dfxs from styles\r\n model.columns.forEach(column => {\r\n if (column.dxfId !== undefined) {\r\n column.style = options.styles.getDxfStyle(column.dxfId);\r\n }\r\n });\r\n }\r\n}\r\n\r\nTableXform.TABLE_ATTRIBUTES = {\r\n xmlns: 'http://schemas.openxmlformats.org/spreadsheetml/2006/main',\r\n 'xmlns:mc': 'http://schemas.openxmlformats.org/markup-compatibility/2006',\r\n 'mc:Ignorable': 'xr xr3',\r\n 'xmlns:xr': 'http://schemas.microsoft.com/office/spreadsheetml/2014/revision',\r\n 'xmlns:xr3': 'http://schemas.microsoft.com/office/spreadsheetml/2016/revision3',\r\n // 'xr:uid': '{00000000-000C-0000-FFFF-FFFF00000000}',\r\n};\r\n\r\nmodule.exports = TableXform;\r\n"],"mappings":"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","ignoreList":[]}
|