@cj-tech-master/excelts 0.1.0-canary.20251025023400.dff1908
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 +232 -0
- package/README_zh.md +233 -0
- package/dist/LICENSE +22 -0
- package/dist/browser/excelts.iife.js +44568 -0
- package/dist/browser/excelts.iife.js.map +1 -0
- package/dist/browser/excelts.iife.min.js +112 -0
- package/dist/cjs/csv/csv.js +193 -0
- package/dist/cjs/doc/anchor.js +86 -0
- package/dist/cjs/doc/cell.js +917 -0
- package/dist/cjs/doc/column.js +277 -0
- package/dist/cjs/doc/data-validations.js +18 -0
- package/dist/cjs/doc/defined-names.js +171 -0
- package/dist/cjs/doc/enums.js +61 -0
- package/dist/cjs/doc/image.js +60 -0
- package/dist/cjs/doc/modelcontainer.js +16 -0
- package/dist/cjs/doc/note.js +64 -0
- package/dist/cjs/doc/pivot-table.js +110 -0
- package/dist/cjs/doc/range.js +247 -0
- package/dist/cjs/doc/row.js +375 -0
- package/dist/cjs/doc/table.js +410 -0
- package/dist/cjs/doc/workbook.js +181 -0
- package/dist/cjs/doc/worksheet.js +820 -0
- package/dist/cjs/index.js +51 -0
- package/dist/cjs/local.js +1 -0
- package/dist/cjs/package.json +3 -0
- package/dist/cjs/stream/xlsx/hyperlink-reader.js +82 -0
- package/dist/cjs/stream/xlsx/sheet-comments-writer.js +103 -0
- package/dist/cjs/stream/xlsx/sheet-rels-writer.js +93 -0
- package/dist/cjs/stream/xlsx/workbook-reader.js +356 -0
- package/dist/cjs/stream/xlsx/workbook-writer.js +368 -0
- package/dist/cjs/stream/xlsx/worksheet-reader.js +347 -0
- package/dist/cjs/stream/xlsx/worksheet-writer.js +593 -0
- package/dist/cjs/types.js +25 -0
- package/dist/cjs/utils/browser-buffer-decode.js +13 -0
- package/dist/cjs/utils/browser-buffer-encode.js +13 -0
- package/dist/cjs/utils/browser.js +6 -0
- package/dist/cjs/utils/cell-matrix.js +148 -0
- package/dist/cjs/utils/col-cache.js +281 -0
- package/dist/cjs/utils/copy-style.js +46 -0
- package/dist/cjs/utils/encryptor.js +55 -0
- package/dist/cjs/utils/iterate-stream.js +57 -0
- package/dist/cjs/utils/parse-sax.js +31 -0
- package/dist/cjs/utils/shared-formula.js +38 -0
- package/dist/cjs/utils/shared-strings.js +32 -0
- package/dist/cjs/utils/stream-buf.js +336 -0
- package/dist/cjs/utils/string-buf.js +68 -0
- package/dist/cjs/utils/under-dash.js +180 -0
- package/dist/cjs/utils/utils.js +234 -0
- package/dist/cjs/utils/xml-stream.js +149 -0
- package/dist/cjs/utils/zip-stream.js +122 -0
- package/dist/cjs/xlsx/defaultnumformats.js +152 -0
- package/dist/cjs/xlsx/rel-type.js +22 -0
- package/dist/cjs/xlsx/xform/base-xform.js +126 -0
- package/dist/cjs/xlsx/xform/book/defined-name-xform.js +93 -0
- package/dist/cjs/xlsx/xform/book/sheet-xform.js +32 -0
- package/dist/cjs/xlsx/xform/book/workbook-calc-properties-xform.js +24 -0
- package/dist/cjs/xlsx/xform/book/workbook-pivot-cache-xform.js +27 -0
- package/dist/cjs/xlsx/xform/book/workbook-properties-xform.js +27 -0
- package/dist/cjs/xlsx/xform/book/workbook-view-xform.js +49 -0
- package/dist/cjs/xlsx/xform/book/workbook-xform.js +234 -0
- package/dist/cjs/xlsx/xform/comment/comment-xform.js +79 -0
- package/dist/cjs/xlsx/xform/comment/comments-xform.js +75 -0
- package/dist/cjs/xlsx/xform/comment/style/vml-position-xform.js +37 -0
- package/dist/cjs/xlsx/xform/comment/style/vml-protection-xform.js +33 -0
- package/dist/cjs/xlsx/xform/comment/vml-anchor-xform.js +58 -0
- package/dist/cjs/xlsx/xform/comment/vml-client-data-xform.js +85 -0
- package/dist/cjs/xlsx/xform/comment/vml-notes-xform.js +99 -0
- package/dist/cjs/xlsx/xform/comment/vml-shape-xform.js +86 -0
- package/dist/cjs/xlsx/xform/comment/vml-textbox-xform.js +63 -0
- package/dist/cjs/xlsx/xform/composite-xform.js +51 -0
- package/dist/cjs/xlsx/xform/core/app-heading-pairs-xform.js +27 -0
- package/dist/cjs/xlsx/xform/core/app-titles-of-parts-xform.js +24 -0
- package/dist/cjs/xlsx/xform/core/app-xform.js +86 -0
- package/dist/cjs/xlsx/xform/core/content-types-xform.js +120 -0
- package/dist/cjs/xlsx/xform/core/core-xform.js +127 -0
- package/dist/cjs/xlsx/xform/core/relationship-xform.js +23 -0
- package/dist/cjs/xlsx/xform/core/relationships-xform.js +65 -0
- package/dist/cjs/xlsx/xform/drawing/base-cell-anchor-xform.js +47 -0
- package/dist/cjs/xlsx/xform/drawing/blip-fill-xform.js +60 -0
- package/dist/cjs/xlsx/xform/drawing/blip-xform.js +43 -0
- package/dist/cjs/xlsx/xform/drawing/c-nv-pic-pr-xform.js +35 -0
- package/dist/cjs/xlsx/xform/drawing/c-nv-pr-xform.js +62 -0
- package/dist/cjs/xlsx/xform/drawing/cell-position-xform.js +71 -0
- package/dist/cjs/xlsx/xform/drawing/drawing-xform.js +99 -0
- package/dist/cjs/xlsx/xform/drawing/ext-lst-xform.js +40 -0
- package/dist/cjs/xlsx/xform/drawing/ext-xform.js +37 -0
- package/dist/cjs/xlsx/xform/drawing/hlink-click-xform.js +42 -0
- package/dist/cjs/xlsx/xform/drawing/nv-pic-pr-xform.js +59 -0
- package/dist/cjs/xlsx/xform/drawing/one-cell-anchor-xform.js +55 -0
- package/dist/cjs/xlsx/xform/drawing/pic-xform.js +67 -0
- package/dist/cjs/xlsx/xform/drawing/sp-pr.js +20 -0
- package/dist/cjs/xlsx/xform/drawing/two-cell-anchor-xform.js +54 -0
- package/dist/cjs/xlsx/xform/list-xform.js +86 -0
- package/dist/cjs/xlsx/xform/pivot-table/cache-field.js +42 -0
- package/dist/cjs/xlsx/xform/pivot-table/pivot-cache-definition-xform.js +67 -0
- package/dist/cjs/xlsx/xform/pivot-table/pivot-cache-records-xform.js +89 -0
- package/dist/cjs/xlsx/xform/pivot-table/pivot-table-xform.js +171 -0
- package/dist/cjs/xlsx/xform/sheet/auto-filter-xform.js +37 -0
- package/dist/cjs/xlsx/xform/sheet/cell-xform.js +452 -0
- package/dist/cjs/xlsx/xform/sheet/cf/cf-rule-xform.js +262 -0
- package/dist/cjs/xlsx/xform/sheet/cf/cfvo-xform.js +25 -0
- package/dist/cjs/xlsx/xform/sheet/cf/color-scale-xform.js +38 -0
- package/dist/cjs/xlsx/xform/sheet/cf/conditional-formatting-xform.js +40 -0
- package/dist/cjs/xlsx/xform/sheet/cf/conditional-formattings-xform.js +77 -0
- package/dist/cjs/xlsx/xform/sheet/cf/databar-xform.js +42 -0
- package/dist/cjs/xlsx/xform/sheet/cf/ext-lst-ref-xform.js +70 -0
- package/dist/cjs/xlsx/xform/sheet/cf/formula-xform.js +22 -0
- package/dist/cjs/xlsx/xform/sheet/cf/icon-set-xform.js +40 -0
- package/dist/cjs/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.js +25 -0
- package/dist/cjs/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js +83 -0
- package/dist/cjs/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.js +38 -0
- package/dist/cjs/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.js +51 -0
- package/dist/cjs/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.js +43 -0
- package/dist/cjs/xlsx/xform/sheet/cf-ext/databar-ext-xform.js +72 -0
- package/dist/cjs/xlsx/xform/sheet/cf-ext/f-ext-xform.js +22 -0
- package/dist/cjs/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.js +63 -0
- package/dist/cjs/xlsx/xform/sheet/cf-ext/sqref-ext-xform.js +22 -0
- package/dist/cjs/xlsx/xform/sheet/col-xform.js +78 -0
- package/dist/cjs/xlsx/xform/sheet/data-validations-xform.js +246 -0
- package/dist/cjs/xlsx/xform/sheet/dimension-xform.js +26 -0
- package/dist/cjs/xlsx/xform/sheet/drawing-xform.js +30 -0
- package/dist/cjs/xlsx/xform/sheet/ext-lst-xform.js +69 -0
- package/dist/cjs/xlsx/xform/sheet/header-footer-xform.js +127 -0
- package/dist/cjs/xlsx/xform/sheet/hyperlink-xform.js +50 -0
- package/dist/cjs/xlsx/xform/sheet/merge-cell-xform.js +24 -0
- package/dist/cjs/xlsx/xform/sheet/merges.js +53 -0
- package/dist/cjs/xlsx/xform/sheet/outline-properties-xform.js +39 -0
- package/dist/cjs/xlsx/xform/sheet/page-breaks-xform.js +24 -0
- package/dist/cjs/xlsx/xform/sheet/page-margins-xform.js +45 -0
- package/dist/cjs/xlsx/xform/sheet/page-setup-properties-xform.js +32 -0
- package/dist/cjs/xlsx/xform/sheet/page-setup-xform.js +98 -0
- package/dist/cjs/xlsx/xform/sheet/picture-xform.js +30 -0
- package/dist/cjs/xlsx/xform/sheet/print-options-xform.js +44 -0
- package/dist/cjs/xlsx/xform/sheet/row-breaks-xform.js +34 -0
- package/dist/cjs/xlsx/xform/sheet/row-xform.js +133 -0
- package/dist/cjs/xlsx/xform/sheet/sheet-format-properties-xform.js +49 -0
- package/dist/cjs/xlsx/xform/sheet/sheet-properties-xform.js +85 -0
- package/dist/cjs/xlsx/xform/sheet/sheet-protection-xform.js +83 -0
- package/dist/cjs/xlsx/xform/sheet/sheet-view-xform.js +192 -0
- package/dist/cjs/xlsx/xform/sheet/table-part-xform.js +30 -0
- package/dist/cjs/xlsx/xform/sheet/worksheet-xform.js +504 -0
- package/dist/cjs/xlsx/xform/simple/boolean-xform.js +27 -0
- package/dist/cjs/xlsx/xform/simple/date-xform.js +68 -0
- package/dist/cjs/xlsx/xform/simple/float-xform.js +50 -0
- package/dist/cjs/xlsx/xform/simple/integer-xform.js +55 -0
- package/dist/cjs/xlsx/xform/simple/string-xform.js +50 -0
- package/dist/cjs/xlsx/xform/static-xform.js +58 -0
- package/dist/cjs/xlsx/xform/strings/phonetic-text-xform.js +89 -0
- package/dist/cjs/xlsx/xform/strings/rich-text-xform.js +80 -0
- package/dist/cjs/xlsx/xform/strings/shared-string-xform.js +93 -0
- package/dist/cjs/xlsx/xform/strings/shared-strings-xform.js +112 -0
- package/dist/cjs/xlsx/xform/strings/text-xform.js +39 -0
- package/dist/cjs/xlsx/xform/style/alignment-xform.js +155 -0
- package/dist/cjs/xlsx/xform/style/border-xform.js +191 -0
- package/dist/cjs/xlsx/xform/style/color-xform.js +64 -0
- package/dist/cjs/xlsx/xform/style/dxf-xform.js +95 -0
- package/dist/cjs/xlsx/xform/style/fill-xform.js +315 -0
- package/dist/cjs/xlsx/xform/style/font-xform.js +90 -0
- package/dist/cjs/xlsx/xform/style/numfmt-xform.js +53 -0
- package/dist/cjs/xlsx/xform/style/protection-xform.js +52 -0
- package/dist/cjs/xlsx/xform/style/style-xform.js +111 -0
- package/dist/cjs/xlsx/xform/style/styles-xform.js +487 -0
- package/dist/cjs/xlsx/xform/style/underline-xform.js +41 -0
- package/dist/cjs/xlsx/xform/table/auto-filter-xform.js +71 -0
- package/dist/cjs/xlsx/xform/table/custom-filter-xform.js +34 -0
- package/dist/cjs/xlsx/xform/table/filter-column-xform.js +87 -0
- package/dist/cjs/xlsx/xform/table/filter-xform.js +32 -0
- package/dist/cjs/xlsx/xform/table/table-column-xform.js +43 -0
- package/dist/cjs/xlsx/xform/table/table-style-info-xform.js +47 -0
- package/dist/cjs/xlsx/xform/table/table-xform.js +133 -0
- package/dist/cjs/xlsx/xlsx.js +772 -0
- package/dist/cjs/xlsx/xml/theme1.js +4 -0
- package/dist/esm/csv/csv.js +187 -0
- package/dist/esm/doc/anchor.js +83 -0
- package/dist/esm/doc/cell.js +914 -0
- package/dist/esm/doc/column.js +274 -0
- package/dist/esm/doc/data-validations.js +15 -0
- package/dist/esm/doc/defined-names.js +168 -0
- package/dist/esm/doc/enums.js +58 -0
- package/dist/esm/doc/image.js +57 -0
- package/dist/esm/doc/modelcontainer.js +13 -0
- package/dist/esm/doc/note.js +61 -0
- package/dist/esm/doc/pivot-table.js +108 -0
- package/dist/esm/doc/range.js +244 -0
- package/dist/esm/doc/row.js +372 -0
- package/dist/esm/doc/table.js +407 -0
- package/dist/esm/doc/workbook.js +178 -0
- package/dist/esm/doc/worksheet.js +817 -0
- package/dist/esm/index.browser.js +3 -0
- package/dist/esm/index.js +20 -0
- package/dist/esm/local.js +1 -0
- package/dist/esm/stream/xlsx/hyperlink-reader.js +79 -0
- package/dist/esm/stream/xlsx/sheet-comments-writer.js +100 -0
- package/dist/esm/stream/xlsx/sheet-rels-writer.js +90 -0
- package/dist/esm/stream/xlsx/workbook-reader.js +349 -0
- package/dist/esm/stream/xlsx/workbook-writer.js +362 -0
- package/dist/esm/stream/xlsx/worksheet-reader.js +344 -0
- package/dist/esm/stream/xlsx/worksheet-writer.js +590 -0
- package/dist/esm/types.js +22 -0
- package/dist/esm/utils/browser-buffer-decode.js +11 -0
- package/dist/esm/utils/browser-buffer-encode.js +11 -0
- package/dist/esm/utils/browser.js +3 -0
- package/dist/esm/utils/cell-matrix.js +145 -0
- package/dist/esm/utils/col-cache.js +278 -0
- package/dist/esm/utils/copy-style.js +43 -0
- package/dist/esm/utils/encryptor.js +49 -0
- package/dist/esm/utils/iterate-stream.js +55 -0
- package/dist/esm/utils/parse-sax.js +29 -0
- package/dist/esm/utils/shared-formula.js +36 -0
- package/dist/esm/utils/shared-strings.js +29 -0
- package/dist/esm/utils/stream-buf.js +333 -0
- package/dist/esm/utils/string-buf.js +65 -0
- package/dist/esm/utils/under-dash.js +171 -0
- package/dist/esm/utils/utils.js +210 -0
- package/dist/esm/utils/xml-stream.js +146 -0
- package/dist/esm/utils/zip-stream.js +117 -0
- package/dist/esm/xlsx/defaultnumformats.js +149 -0
- package/dist/esm/xlsx/rel-type.js +19 -0
- package/dist/esm/xlsx/xform/base-xform.js +123 -0
- package/dist/esm/xlsx/xform/book/defined-name-xform.js +90 -0
- package/dist/esm/xlsx/xform/book/sheet-xform.js +29 -0
- package/dist/esm/xlsx/xform/book/workbook-calc-properties-xform.js +21 -0
- package/dist/esm/xlsx/xform/book/workbook-pivot-cache-xform.js +24 -0
- package/dist/esm/xlsx/xform/book/workbook-properties-xform.js +24 -0
- package/dist/esm/xlsx/xform/book/workbook-view-xform.js +46 -0
- package/dist/esm/xlsx/xform/book/workbook-xform.js +231 -0
- package/dist/esm/xlsx/xform/comment/comment-xform.js +76 -0
- package/dist/esm/xlsx/xform/comment/comments-xform.js +72 -0
- package/dist/esm/xlsx/xform/comment/style/vml-position-xform.js +34 -0
- package/dist/esm/xlsx/xform/comment/style/vml-protection-xform.js +30 -0
- package/dist/esm/xlsx/xform/comment/vml-anchor-xform.js +55 -0
- package/dist/esm/xlsx/xform/comment/vml-client-data-xform.js +82 -0
- package/dist/esm/xlsx/xform/comment/vml-notes-xform.js +96 -0
- package/dist/esm/xlsx/xform/comment/vml-shape-xform.js +83 -0
- package/dist/esm/xlsx/xform/comment/vml-textbox-xform.js +60 -0
- package/dist/esm/xlsx/xform/composite-xform.js +48 -0
- package/dist/esm/xlsx/xform/core/app-heading-pairs-xform.js +24 -0
- package/dist/esm/xlsx/xform/core/app-titles-of-parts-xform.js +21 -0
- package/dist/esm/xlsx/xform/core/app-xform.js +83 -0
- package/dist/esm/xlsx/xform/core/content-types-xform.js +117 -0
- package/dist/esm/xlsx/xform/core/core-xform.js +124 -0
- package/dist/esm/xlsx/xform/core/relationship-xform.js +20 -0
- package/dist/esm/xlsx/xform/core/relationships-xform.js +62 -0
- package/dist/esm/xlsx/xform/drawing/base-cell-anchor-xform.js +44 -0
- package/dist/esm/xlsx/xform/drawing/blip-fill-xform.js +57 -0
- package/dist/esm/xlsx/xform/drawing/blip-xform.js +40 -0
- package/dist/esm/xlsx/xform/drawing/c-nv-pic-pr-xform.js +32 -0
- package/dist/esm/xlsx/xform/drawing/c-nv-pr-xform.js +59 -0
- package/dist/esm/xlsx/xform/drawing/cell-position-xform.js +68 -0
- package/dist/esm/xlsx/xform/drawing/drawing-xform.js +96 -0
- package/dist/esm/xlsx/xform/drawing/ext-lst-xform.js +37 -0
- package/dist/esm/xlsx/xform/drawing/ext-xform.js +34 -0
- package/dist/esm/xlsx/xform/drawing/hlink-click-xform.js +39 -0
- package/dist/esm/xlsx/xform/drawing/nv-pic-pr-xform.js +56 -0
- package/dist/esm/xlsx/xform/drawing/one-cell-anchor-xform.js +52 -0
- package/dist/esm/xlsx/xform/drawing/pic-xform.js +64 -0
- package/dist/esm/xlsx/xform/drawing/sp-pr.js +17 -0
- package/dist/esm/xlsx/xform/drawing/two-cell-anchor-xform.js +51 -0
- package/dist/esm/xlsx/xform/list-xform.js +83 -0
- package/dist/esm/xlsx/xform/pivot-table/cache-field.js +39 -0
- package/dist/esm/xlsx/xform/pivot-table/pivot-cache-definition-xform.js +64 -0
- package/dist/esm/xlsx/xform/pivot-table/pivot-cache-records-xform.js +86 -0
- package/dist/esm/xlsx/xform/pivot-table/pivot-table-xform.js +168 -0
- package/dist/esm/xlsx/xform/sheet/auto-filter-xform.js +34 -0
- package/dist/esm/xlsx/xform/sheet/cell-xform.js +449 -0
- package/dist/esm/xlsx/xform/sheet/cf/cf-rule-xform.js +259 -0
- package/dist/esm/xlsx/xform/sheet/cf/cfvo-xform.js +22 -0
- package/dist/esm/xlsx/xform/sheet/cf/color-scale-xform.js +35 -0
- package/dist/esm/xlsx/xform/sheet/cf/conditional-formatting-xform.js +37 -0
- package/dist/esm/xlsx/xform/sheet/cf/conditional-formattings-xform.js +74 -0
- package/dist/esm/xlsx/xform/sheet/cf/databar-xform.js +39 -0
- package/dist/esm/xlsx/xform/sheet/cf/ext-lst-ref-xform.js +67 -0
- package/dist/esm/xlsx/xform/sheet/cf/formula-xform.js +19 -0
- package/dist/esm/xlsx/xform/sheet/cf/icon-set-xform.js +37 -0
- package/dist/esm/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.js +22 -0
- package/dist/esm/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.js +80 -0
- package/dist/esm/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.js +35 -0
- package/dist/esm/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.js +48 -0
- package/dist/esm/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.js +40 -0
- package/dist/esm/xlsx/xform/sheet/cf-ext/databar-ext-xform.js +69 -0
- package/dist/esm/xlsx/xform/sheet/cf-ext/f-ext-xform.js +19 -0
- package/dist/esm/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.js +60 -0
- package/dist/esm/xlsx/xform/sheet/cf-ext/sqref-ext-xform.js +19 -0
- package/dist/esm/xlsx/xform/sheet/col-xform.js +75 -0
- package/dist/esm/xlsx/xform/sheet/data-validations-xform.js +243 -0
- package/dist/esm/xlsx/xform/sheet/dimension-xform.js +23 -0
- package/dist/esm/xlsx/xform/sheet/drawing-xform.js +27 -0
- package/dist/esm/xlsx/xform/sheet/ext-lst-xform.js +66 -0
- package/dist/esm/xlsx/xform/sheet/header-footer-xform.js +124 -0
- package/dist/esm/xlsx/xform/sheet/hyperlink-xform.js +47 -0
- package/dist/esm/xlsx/xform/sheet/merge-cell-xform.js +21 -0
- package/dist/esm/xlsx/xform/sheet/merges.js +50 -0
- package/dist/esm/xlsx/xform/sheet/outline-properties-xform.js +36 -0
- package/dist/esm/xlsx/xform/sheet/page-breaks-xform.js +21 -0
- package/dist/esm/xlsx/xform/sheet/page-margins-xform.js +42 -0
- package/dist/esm/xlsx/xform/sheet/page-setup-properties-xform.js +29 -0
- package/dist/esm/xlsx/xform/sheet/page-setup-xform.js +95 -0
- package/dist/esm/xlsx/xform/sheet/picture-xform.js +27 -0
- package/dist/esm/xlsx/xform/sheet/print-options-xform.js +41 -0
- package/dist/esm/xlsx/xform/sheet/row-breaks-xform.js +31 -0
- package/dist/esm/xlsx/xform/sheet/row-xform.js +130 -0
- package/dist/esm/xlsx/xform/sheet/sheet-format-properties-xform.js +46 -0
- package/dist/esm/xlsx/xform/sheet/sheet-properties-xform.js +82 -0
- package/dist/esm/xlsx/xform/sheet/sheet-protection-xform.js +80 -0
- package/dist/esm/xlsx/xform/sheet/sheet-view-xform.js +189 -0
- package/dist/esm/xlsx/xform/sheet/table-part-xform.js +27 -0
- package/dist/esm/xlsx/xform/sheet/worksheet-xform.js +501 -0
- package/dist/esm/xlsx/xform/simple/boolean-xform.js +24 -0
- package/dist/esm/xlsx/xform/simple/date-xform.js +65 -0
- package/dist/esm/xlsx/xform/simple/float-xform.js +47 -0
- package/dist/esm/xlsx/xform/simple/integer-xform.js +52 -0
- package/dist/esm/xlsx/xform/simple/string-xform.js +47 -0
- package/dist/esm/xlsx/xform/static-xform.js +55 -0
- package/dist/esm/xlsx/xform/strings/phonetic-text-xform.js +86 -0
- package/dist/esm/xlsx/xform/strings/rich-text-xform.js +77 -0
- package/dist/esm/xlsx/xform/strings/shared-string-xform.js +90 -0
- package/dist/esm/xlsx/xform/strings/shared-strings-xform.js +109 -0
- package/dist/esm/xlsx/xform/strings/text-xform.js +36 -0
- package/dist/esm/xlsx/xform/style/alignment-xform.js +152 -0
- package/dist/esm/xlsx/xform/style/border-xform.js +188 -0
- package/dist/esm/xlsx/xform/style/color-xform.js +61 -0
- package/dist/esm/xlsx/xform/style/dxf-xform.js +92 -0
- package/dist/esm/xlsx/xform/style/fill-xform.js +312 -0
- package/dist/esm/xlsx/xform/style/font-xform.js +87 -0
- package/dist/esm/xlsx/xform/style/numfmt-xform.js +50 -0
- package/dist/esm/xlsx/xform/style/protection-xform.js +49 -0
- package/dist/esm/xlsx/xform/style/style-xform.js +108 -0
- package/dist/esm/xlsx/xform/style/styles-xform.js +484 -0
- package/dist/esm/xlsx/xform/style/underline-xform.js +38 -0
- package/dist/esm/xlsx/xform/table/auto-filter-xform.js +68 -0
- package/dist/esm/xlsx/xform/table/custom-filter-xform.js +31 -0
- package/dist/esm/xlsx/xform/table/filter-column-xform.js +84 -0
- package/dist/esm/xlsx/xform/table/filter-xform.js +29 -0
- package/dist/esm/xlsx/xform/table/table-column-xform.js +40 -0
- package/dist/esm/xlsx/xform/table/table-style-info-xform.js +44 -0
- package/dist/esm/xlsx/xform/table/table-xform.js +130 -0
- package/dist/esm/xlsx/xlsx.js +766 -0
- package/dist/esm/xlsx/xml/theme1.js +1 -0
- package/dist/types/csv/csv.d.ts +79 -0
- package/dist/types/doc/anchor.d.ts +26 -0
- package/dist/types/doc/cell.d.ts +94 -0
- package/dist/types/doc/column.d.ts +68 -0
- package/dist/types/doc/data-validations.d.ts +11 -0
- package/dist/types/doc/defined-names.d.ts +34 -0
- package/dist/types/doc/enums.d.ts +62 -0
- package/dist/types/doc/image.d.ts +47 -0
- package/dist/types/doc/modelcontainer.d.ts +8 -0
- package/dist/types/doc/note.d.ts +29 -0
- package/dist/types/doc/pivot-table.d.ts +22 -0
- package/dist/types/doc/range.d.ts +51 -0
- package/dist/types/doc/row.d.ts +75 -0
- package/dist/types/doc/table.d.ts +96 -0
- package/dist/types/doc/workbook.d.ts +87 -0
- package/dist/types/doc/worksheet.d.ts +180 -0
- package/dist/types/index.browser.d.ts +4 -0
- package/dist/types/index.d.ts +18 -0
- package/dist/types/local.d.ts +0 -0
- package/dist/types/stream/xlsx/hyperlink-reader.d.ts +27 -0
- package/dist/types/stream/xlsx/sheet-comments-writer.d.ts +26 -0
- package/dist/types/stream/xlsx/sheet-rels-writer.d.ts +45 -0
- package/dist/types/stream/xlsx/workbook-reader.d.ts +50 -0
- package/dist/types/stream/xlsx/workbook-writer.d.ts +55 -0
- package/dist/types/stream/xlsx/worksheet-reader.d.ts +39 -0
- package/dist/types/stream/xlsx/worksheet-writer.d.ts +103 -0
- package/dist/types/types.d.ts +464 -0
- package/dist/types/utils/browser-buffer-decode.d.ts +2 -0
- package/dist/types/utils/browser-buffer-encode.d.ts +2 -0
- package/dist/types/utils/browser.d.ts +1 -0
- package/dist/types/utils/cell-matrix.d.ts +37 -0
- package/dist/types/utils/col-cache.d.ts +33 -0
- package/dist/types/utils/copy-style.d.ts +5 -0
- package/dist/types/utils/encryptor.d.ts +23 -0
- package/dist/types/utils/iterate-stream.d.ts +10 -0
- package/dist/types/utils/parse-sax.d.ts +6 -0
- package/dist/types/utils/shared-formula.d.ts +2 -0
- package/dist/types/utils/shared-strings.d.ts +12 -0
- package/dist/types/utils/stream-buf.d.ts +2 -0
- package/dist/types/utils/string-buf.d.ts +20 -0
- package/dist/types/utils/under-dash.d.ts +7 -0
- package/dist/types/utils/utils.d.ts +45 -0
- package/dist/types/utils/xml-stream.d.ts +32 -0
- package/dist/types/utils/zip-stream.d.ts +35 -0
- package/dist/types/xlsx/defaultnumformats.d.ts +12 -0
- package/dist/types/xlsx/rel-type.d.ts +19 -0
- package/dist/types/xlsx/xform/base-xform.d.ts +33 -0
- package/dist/types/xlsx/xform/book/defined-name-xform.d.ts +17 -0
- package/dist/types/xlsx/xform/book/sheet-xform.d.ts +14 -0
- package/dist/types/xlsx/xform/book/workbook-calc-properties-xform.d.ts +11 -0
- package/dist/types/xlsx/xform/book/workbook-pivot-cache-xform.d.ts +12 -0
- package/dist/types/xlsx/xform/book/workbook-properties-xform.d.ts +11 -0
- package/dist/types/xlsx/xform/book/workbook-view-xform.d.ts +17 -0
- package/dist/types/xlsx/xform/book/workbook-xform.d.ts +23 -0
- package/dist/types/xlsx/xform/comment/comment-xform.d.ts +28 -0
- package/dist/types/xlsx/xform/comment/comments-xform.d.ts +21 -0
- package/dist/types/xlsx/xform/comment/style/vml-position-xform.d.ts +16 -0
- package/dist/types/xlsx/xform/comment/style/vml-protection-xform.d.ts +14 -0
- package/dist/types/xlsx/xform/comment/vml-anchor-xform.d.ts +27 -0
- package/dist/types/xlsx/xform/comment/vml-client-data-xform.d.ts +35 -0
- package/dist/types/xlsx/xform/comment/vml-notes-xform.d.ts +24 -0
- package/dist/types/xlsx/xform/comment/vml-shape-xform.d.ts +25 -0
- package/dist/types/xlsx/xform/comment/vml-textbox-xform.d.ts +23 -0
- package/dist/types/xlsx/xform/composite-xform.d.ts +11 -0
- package/dist/types/xlsx/xform/core/app-heading-pairs-xform.d.ts +8 -0
- package/dist/types/xlsx/xform/core/app-titles-of-parts-xform.d.ts +8 -0
- package/dist/types/xlsx/xform/core/app-xform.d.ts +26 -0
- package/dist/types/xlsx/xform/core/content-types-xform.d.ts +11 -0
- package/dist/types/xlsx/xform/core/core-xform.d.ts +42 -0
- package/dist/types/xlsx/xform/core/relationship-xform.d.ts +14 -0
- package/dist/types/xlsx/xform/core/relationships-xform.d.ts +14 -0
- package/dist/types/xlsx/xform/drawing/base-cell-anchor-xform.d.ts +13 -0
- package/dist/types/xlsx/xform/drawing/blip-fill-xform.d.ts +16 -0
- package/dist/types/xlsx/xform/drawing/blip-xform.d.ts +14 -0
- package/dist/types/xlsx/xform/drawing/c-nv-pic-pr-xform.d.ts +9 -0
- package/dist/types/xlsx/xform/drawing/c-nv-pr-xform.d.ts +18 -0
- package/dist/types/xlsx/xform/drawing/cell-position-xform.d.ts +24 -0
- package/dist/types/xlsx/xform/drawing/drawing-xform.d.ts +24 -0
- package/dist/types/xlsx/xform/drawing/ext-lst-xform.d.ts +9 -0
- package/dist/types/xlsx/xform/drawing/ext-xform.d.ts +20 -0
- package/dist/types/xlsx/xform/drawing/hlink-click-xform.d.ts +11 -0
- package/dist/types/xlsx/xform/drawing/nv-pic-pr-xform.d.ts +15 -0
- package/dist/types/xlsx/xform/drawing/one-cell-anchor-xform.d.ts +20 -0
- package/dist/types/xlsx/xform/drawing/pic-xform.d.ts +22 -0
- package/dist/types/xlsx/xform/drawing/sp-pr.d.ts +32 -0
- package/dist/types/xlsx/xform/drawing/two-cell-anchor-xform.d.ts +20 -0
- package/dist/types/xlsx/xform/list-xform.d.ts +31 -0
- package/dist/types/xlsx/xform/pivot-table/cache-field.d.ts +11 -0
- package/dist/types/xlsx/xform/pivot-table/pivot-cache-definition-xform.d.ts +26 -0
- package/dist/types/xlsx/xform/pivot-table/pivot-cache-records-xform.d.ts +26 -0
- package/dist/types/xlsx/xform/pivot-table/pivot-table-xform.d.ts +29 -0
- package/dist/types/xlsx/xform/sheet/auto-filter-xform.d.ts +8 -0
- package/dist/types/xlsx/xform/sheet/cell-xform.d.ts +17 -0
- package/dist/types/xlsx/xform/sheet/cf/cf-rule-xform.d.ts +41 -0
- package/dist/types/xlsx/xform/sheet/cf/cfvo-xform.d.ts +8 -0
- package/dist/types/xlsx/xform/sheet/cf/color-scale-xform.d.ts +13 -0
- package/dist/types/xlsx/xform/sheet/cf/conditional-formatting-xform.d.ts +9 -0
- package/dist/types/xlsx/xform/sheet/cf/conditional-formattings-xform.d.ts +16 -0
- package/dist/types/xlsx/xform/sheet/cf/databar-xform.d.ts +13 -0
- package/dist/types/xlsx/xform/sheet/cf/ext-lst-ref-xform.d.ts +9 -0
- package/dist/types/xlsx/xform/sheet/cf/formula-xform.d.ts +9 -0
- package/dist/types/xlsx/xform/sheet/cf/icon-set-xform.d.ts +11 -0
- package/dist/types/xlsx/xform/sheet/cf-ext/cf-icon-ext-xform.d.ts +10 -0
- package/dist/types/xlsx/xform/sheet/cf-ext/cf-rule-ext-xform.d.ts +23 -0
- package/dist/types/xlsx/xform/sheet/cf-ext/cfvo-ext-xform.d.ts +13 -0
- package/dist/types/xlsx/xform/sheet/cf-ext/conditional-formatting-ext-xform.d.ts +16 -0
- package/dist/types/xlsx/xform/sheet/cf-ext/conditional-formattings-ext-xform.d.ts +13 -0
- package/dist/types/xlsx/xform/sheet/cf-ext/databar-ext-xform.d.ts +29 -0
- package/dist/types/xlsx/xform/sheet/cf-ext/f-ext-xform.d.ts +9 -0
- package/dist/types/xlsx/xform/sheet/cf-ext/icon-set-ext-xform.d.ts +20 -0
- package/dist/types/xlsx/xform/sheet/cf-ext/sqref-ext-xform.d.ts +9 -0
- package/dist/types/xlsx/xform/sheet/col-xform.d.ts +22 -0
- package/dist/types/xlsx/xform/sheet/data-validations-xform.d.ts +12 -0
- package/dist/types/xlsx/xform/sheet/dimension-xform.d.ts +10 -0
- package/dist/types/xlsx/xform/sheet/drawing-xform.d.ts +12 -0
- package/dist/types/xlsx/xform/sheet/ext-lst-xform.d.ts +16 -0
- package/dist/types/xlsx/xform/sheet/header-footer-xform.d.ts +20 -0
- package/dist/types/xlsx/xform/sheet/hyperlink-xform.d.ts +16 -0
- package/dist/types/xlsx/xform/sheet/merge-cell-xform.d.ts +9 -0
- package/dist/types/xlsx/xform/sheet/merges.d.ts +14 -0
- package/dist/types/xlsx/xform/sheet/outline-properties-xform.d.ts +13 -0
- package/dist/types/xlsx/xform/sheet/page-breaks-xform.d.ts +10 -0
- package/dist/types/xlsx/xform/sheet/page-margins-xform.d.ts +17 -0
- package/dist/types/xlsx/xform/sheet/page-setup-properties-xform.d.ts +12 -0
- package/dist/types/xlsx/xform/sheet/page-setup-xform.d.ts +27 -0
- package/dist/types/xlsx/xform/sheet/picture-xform.d.ts +12 -0
- package/dist/types/xlsx/xform/sheet/print-options-xform.d.ts +15 -0
- package/dist/types/xlsx/xform/sheet/row-breaks-xform.d.ts +6 -0
- package/dist/types/xlsx/xform/sheet/row-xform.d.ts +35 -0
- package/dist/types/xlsx/xform/sheet/sheet-format-properties-xform.d.ts +16 -0
- package/dist/types/xlsx/xform/sheet/sheet-properties-xform.d.ts +19 -0
- package/dist/types/xlsx/xform/sheet/sheet-protection-xform.d.ts +31 -0
- package/dist/types/xlsx/xform/sheet/sheet-view-xform.d.ts +32 -0
- package/dist/types/xlsx/xform/sheet/table-part-xform.d.ts +12 -0
- package/dist/types/xlsx/xform/sheet/worksheet-xform.d.ts +21 -0
- package/dist/types/xlsx/xform/simple/boolean-xform.d.ts +15 -0
- package/dist/types/xlsx/xform/simple/date-xform.d.ts +22 -0
- package/dist/types/xlsx/xform/simple/float-xform.d.ts +18 -0
- package/dist/types/xlsx/xform/simple/integer-xform.d.ts +20 -0
- package/dist/types/xlsx/xform/simple/string-xform.d.ts +18 -0
- package/dist/types/xlsx/xform/static-xform.d.ts +17 -0
- package/dist/types/xlsx/xform/strings/phonetic-text-xform.d.ts +20 -0
- package/dist/types/xlsx/xform/strings/rich-text-xform.d.ts +25 -0
- package/dist/types/xlsx/xform/strings/shared-string-xform.d.ts +17 -0
- package/dist/types/xlsx/xform/strings/shared-strings-xform.d.ts +27 -0
- package/dist/types/xlsx/xform/strings/text-xform.d.ts +10 -0
- package/dist/types/xlsx/xform/style/alignment-xform.d.ts +18 -0
- package/dist/types/xlsx/xform/style/border-xform.d.ts +49 -0
- package/dist/types/xlsx/xform/style/color-xform.d.ts +17 -0
- package/dist/types/xlsx/xform/style/dxf-xform.d.ts +23 -0
- package/dist/types/xlsx/xform/style/fill-xform.d.ts +85 -0
- package/dist/types/xlsx/xform/style/font-xform.d.ts +34 -0
- package/dist/types/xlsx/xform/style/numfmt-xform.d.ts +18 -0
- package/dist/types/xlsx/xform/style/protection-xform.d.ts +13 -0
- package/dist/types/xlsx/xform/style/style-xform.d.ts +30 -0
- package/dist/types/xlsx/xform/style/styles-xform.d.ts +46 -0
- package/dist/types/xlsx/xform/style/underline-xform.d.ts +14 -0
- package/dist/types/xlsx/xform/table/auto-filter-xform.d.ts +21 -0
- package/dist/types/xlsx/xform/table/custom-filter-xform.d.ts +15 -0
- package/dist/types/xlsx/xform/table/filter-column-xform.d.ts +24 -0
- package/dist/types/xlsx/xform/table/filter-xform.d.ts +14 -0
- package/dist/types/xlsx/xform/table/table-column-xform.d.ts +21 -0
- package/dist/types/xlsx/xform/table/table-style-info-xform.d.ts +18 -0
- package/dist/types/xlsx/xform/table/table-xform.d.ts +37 -0
- package/dist/types/xlsx/xlsx.d.ts +59 -0
- package/dist/types/xlsx/xml/theme1.d.ts +1 -0
- package/package.json +159 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
The MIT License (MIT)
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2014-2019 Guyon Roche
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
22
|
+
|
package/README.md
ADDED
|
@@ -0,0 +1,232 @@
|
|
|
1
|
+
# ExcelTS
|
|
2
|
+
|
|
3
|
+
[](https://github.com/cjnoname/excelts/actions/workflows/ci.yml)
|
|
4
|
+
|
|
5
|
+
Modern TypeScript Excel Workbook Manager - Read, manipulate and write spreadsheet data and styles to XLSX and JSON.
|
|
6
|
+
|
|
7
|
+
## About This Project
|
|
8
|
+
|
|
9
|
+
ExcelTS is a modernized fork of [ExcelJS](https://github.com/exceljs/exceljs) with:
|
|
10
|
+
|
|
11
|
+
- ✅ **Full TypeScript Support** - Complete type definitions and modern TypeScript patterns
|
|
12
|
+
- ✅ **Updated Dependencies** - All dependencies upgraded to latest stable versions
|
|
13
|
+
- ✅ **Modern Build System** - Using Rolldown for faster builds
|
|
14
|
+
- ✅ **Enhanced Testing** - Migrated to Vitest with browser testing support
|
|
15
|
+
- ✅ **ESM First** - Native ES Module support with CommonJS compatibility
|
|
16
|
+
- ✅ **Node 20+** - Optimized for modern Node.js versions
|
|
17
|
+
- ✅ **Named Exports** - All exports are named for better tree-shaking
|
|
18
|
+
|
|
19
|
+
## Translations
|
|
20
|
+
|
|
21
|
+
- [中文文档](README_zh.md)
|
|
22
|
+
|
|
23
|
+
## Installation
|
|
24
|
+
|
|
25
|
+
````bash
|
|
26
|
+
npm install @cj-tech-master/excelts
|
|
27
|
+
|
|
28
|
+
## Quick Start
|
|
29
|
+
|
|
30
|
+
### Creating a Workbook
|
|
31
|
+
|
|
32
|
+
```javascript
|
|
33
|
+
import { Workbook } from "@cj-tech-master/excelts";
|
|
34
|
+
|
|
35
|
+
const workbook = new Workbook();
|
|
36
|
+
const sheet = workbook.addWorksheet("My Sheet");
|
|
37
|
+
|
|
38
|
+
// Add data
|
|
39
|
+
sheet.addRow(["Name", "Age", "Email"]);
|
|
40
|
+
sheet.addRow(["John Doe", 30, "john@example.com"]);
|
|
41
|
+
sheet.addRow(["Jane Smith", 25, "jane@example.com"]);
|
|
42
|
+
|
|
43
|
+
// Save to file
|
|
44
|
+
await workbook.xlsx.writeFile("output.xlsx");
|
|
45
|
+
````
|
|
46
|
+
|
|
47
|
+
### Reading a Workbook
|
|
48
|
+
|
|
49
|
+
```javascript
|
|
50
|
+
import { Workbook } from "@cj-tech-master/excelts";
|
|
51
|
+
|
|
52
|
+
const workbook = new Workbook();
|
|
53
|
+
await workbook.xlsx.readFile("input.xlsx");
|
|
54
|
+
|
|
55
|
+
const worksheet = workbook.getWorksheet(1);
|
|
56
|
+
worksheet.eachRow((row, rowNumber) => {
|
|
57
|
+
console.log("Row " + rowNumber + " = " + JSON.stringify(row.values));
|
|
58
|
+
});
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
### Styling Cells
|
|
62
|
+
|
|
63
|
+
```javascript
|
|
64
|
+
// Set cell value and style
|
|
65
|
+
const cell = worksheet.getCell("A1");
|
|
66
|
+
cell.value = "Hello";
|
|
67
|
+
cell.font = {
|
|
68
|
+
name: "Arial",
|
|
69
|
+
size: 16,
|
|
70
|
+
bold: true,
|
|
71
|
+
color: { argb: "FFFF0000" }
|
|
72
|
+
};
|
|
73
|
+
cell.fill = {
|
|
74
|
+
type: "pattern",
|
|
75
|
+
pattern: "solid",
|
|
76
|
+
fgColor: { argb: "FFFFFF00" }
|
|
77
|
+
};
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
## Features
|
|
81
|
+
|
|
82
|
+
- **Excel Operations**
|
|
83
|
+
- Create, read, and modify XLSX files
|
|
84
|
+
- Multiple worksheet support
|
|
85
|
+
- Cell styling (fonts, colors, borders, fills)
|
|
86
|
+
- Cell merging and formatting
|
|
87
|
+
- Row and column properties
|
|
88
|
+
- Freeze panes and split views
|
|
89
|
+
|
|
90
|
+
- **Data Handling**
|
|
91
|
+
- Rich text support
|
|
92
|
+
- Formulas and calculated values
|
|
93
|
+
- Data validation
|
|
94
|
+
- Conditional formatting
|
|
95
|
+
- Images and charts
|
|
96
|
+
- Hyperlinks
|
|
97
|
+
- Pivot tables
|
|
98
|
+
|
|
99
|
+
- **Advanced Features**
|
|
100
|
+
- Streaming for large files
|
|
101
|
+
- CSV import/export
|
|
102
|
+
- Tables with auto-filters
|
|
103
|
+
- Page setup and printing options
|
|
104
|
+
- Data protection
|
|
105
|
+
- Comments and notes
|
|
106
|
+
|
|
107
|
+
## Browser Support
|
|
108
|
+
|
|
109
|
+
ExcelTS supports both Node.js and browser environments:
|
|
110
|
+
|
|
111
|
+
```javascript
|
|
112
|
+
// Browser usage
|
|
113
|
+
import { Workbook } from "@cj-tech-master/excelts/browser";
|
|
114
|
+
|
|
115
|
+
const workbook = new Workbook();
|
|
116
|
+
// ... use workbook API
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
## Requirements
|
|
120
|
+
|
|
121
|
+
### Node.js
|
|
122
|
+
|
|
123
|
+
- **Node.js >= 18.0.0** (ES2020 native support)
|
|
124
|
+
- Recommended: Node.js >= 20.0.0 for best performance
|
|
125
|
+
|
|
126
|
+
### Browsers (No Polyfills Required)
|
|
127
|
+
|
|
128
|
+
- **Chrome >= 85** (August 2020)
|
|
129
|
+
- **Edge >= 85** (August 2020)
|
|
130
|
+
- **Firefox >= 79** (July 2020)
|
|
131
|
+
- **Safari >= 14** (September 2020)
|
|
132
|
+
- **Opera >= 71** (September 2020)
|
|
133
|
+
|
|
134
|
+
All ES2020 features (optional chaining `?.`, nullish coalescing `??`, Promise.allSettled, etc.) are natively supported in these versions.
|
|
135
|
+
|
|
136
|
+
## Maintainer
|
|
137
|
+
|
|
138
|
+
This project is actively maintained by [CJ (@cjnoname)](https://github.com/cjnoname).
|
|
139
|
+
|
|
140
|
+
### Maintenance Status
|
|
141
|
+
|
|
142
|
+
**Active Maintenance** - This project is actively maintained with a focus on:
|
|
143
|
+
|
|
144
|
+
- 🔒 **Security Updates** - Timely security patches and dependency updates
|
|
145
|
+
- 🐛 **Bug Fixes** - Critical bug fixes and stability improvements
|
|
146
|
+
- 📦 **Dependency Management** - Keeping dependencies up-to-date and secure
|
|
147
|
+
- 🔍 **Code Review** - Reviewing and merging community contributions
|
|
148
|
+
|
|
149
|
+
### Contributing
|
|
150
|
+
|
|
151
|
+
While I may not have the bandwidth to develop new features regularly, **community contributions are highly valued and encouraged!**
|
|
152
|
+
|
|
153
|
+
- 💡 **Pull Requests Welcome** - I will review and merge quality PRs promptly
|
|
154
|
+
- 🚀 **Feature Proposals** - Open an issue to discuss new features before implementing
|
|
155
|
+
- 🐛 **Bug Reports** - Please report bugs with reproducible examples
|
|
156
|
+
- 📖 **Documentation** - Improvements to documentation are always appreciated
|
|
157
|
+
|
|
158
|
+
## API Documentation
|
|
159
|
+
|
|
160
|
+
For detailed API documentation, please refer to the comprehensive documentation sections:
|
|
161
|
+
|
|
162
|
+
- Workbook Management
|
|
163
|
+
- Worksheets
|
|
164
|
+
- Cells and Values
|
|
165
|
+
- Styling
|
|
166
|
+
- Formulas
|
|
167
|
+
- Data Validation
|
|
168
|
+
- Conditional Formatting
|
|
169
|
+
- File I/O
|
|
170
|
+
|
|
171
|
+
The API remains largely compatible with the original ExcelJS.
|
|
172
|
+
|
|
173
|
+
## Contributing Guidelines
|
|
174
|
+
|
|
175
|
+
Contributions are welcome! Please feel free to submit a Pull Request.
|
|
176
|
+
|
|
177
|
+
### Before Submitting a PR
|
|
178
|
+
|
|
179
|
+
1. **Bug Fixes**: Add a unit-test or integration-test (in the `src/__test__` folder) that reproduces the issue
|
|
180
|
+
2. **New Features**: Open an issue first to discuss the feature and implementation approach
|
|
181
|
+
3. **Documentation**: Update relevant documentation and type definitions
|
|
182
|
+
4. **Code Style**: Follow the existing code style and pass all linters (`npm run lint`)
|
|
183
|
+
5. **Tests**: Ensure all tests pass (`npm test`) and add tests for new functionality
|
|
184
|
+
|
|
185
|
+
### Important Notes
|
|
186
|
+
|
|
187
|
+
- **Version Numbers**: Please do not modify package version in PRs. Versions are managed through releases.
|
|
188
|
+
- **License**: All contributions will be included under the project's MIT license
|
|
189
|
+
- **Commit Messages**: Write clear, descriptive commit messages
|
|
190
|
+
|
|
191
|
+
### Getting Help
|
|
192
|
+
|
|
193
|
+
If you need help or have questions:
|
|
194
|
+
|
|
195
|
+
- 📖 Check existing [issues](https://github.com/cjnoname/excelts/issues) and [documentation](https://github.com/cjnoname/excelts)
|
|
196
|
+
- 💬 Open a [new issue](https://github.com/cjnoname/excelts/issues/new) for discussion
|
|
197
|
+
- 🐛 Use issue templates for bug reports
|
|
198
|
+
|
|
199
|
+
## License
|
|
200
|
+
|
|
201
|
+
MIT License
|
|
202
|
+
|
|
203
|
+
Based on [ExcelJS](https://github.com/exceljs/exceljs) by [Guyon Roche](https://github.com/guyonroche)
|
|
204
|
+
|
|
205
|
+
## Credits
|
|
206
|
+
|
|
207
|
+
This project is a fork of ExcelJS with modernization improvements. All credit for the original implementation goes to:
|
|
208
|
+
|
|
209
|
+
- **Guyon Roche** - Original author of ExcelJS
|
|
210
|
+
- All [ExcelJS contributors](https://github.com/exceljs/exceljs/graphs/contributors)
|
|
211
|
+
|
|
212
|
+
## Links
|
|
213
|
+
|
|
214
|
+
- [GitHub Repository](https://github.com/cjnoname/exceljs)
|
|
215
|
+
- [Original ExcelJS](https://github.com/exceljs/exceljs)
|
|
216
|
+
- [Issue Tracker](https://github.com/cjnoname/exceljs/issues)
|
|
217
|
+
|
|
218
|
+
## Changelog
|
|
219
|
+
|
|
220
|
+
### 0.1.0 (2025-10-24)
|
|
221
|
+
|
|
222
|
+
- Initial release of ExcelTS
|
|
223
|
+
- Full TypeScript rewrite with strict typing
|
|
224
|
+
- All default exports converted to named exports
|
|
225
|
+
- Updated all dependencies to latest versions
|
|
226
|
+
- Migrated to Vitest for testing
|
|
227
|
+
- Switched to Rolldown for bundling
|
|
228
|
+
- Modern ES Module support
|
|
229
|
+
- Node 20+ support
|
|
230
|
+
- Enhanced type safety with proper access modifiers
|
|
231
|
+
- Browser testing support
|
|
232
|
+
- Performance optimizations
|
package/README_zh.md
ADDED
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
# ExcelTS
|
|
2
|
+
|
|
3
|
+
[](https://github.com/cjnoname/excelts/actions/workflows/ci.yml)
|
|
4
|
+
|
|
5
|
+
现代化的 TypeScript Excel 工作簿管理器 - 读取、操作和写入电子表格数据和样式到 XLSX 和 JSON。
|
|
6
|
+
|
|
7
|
+
## 关于本项目
|
|
8
|
+
|
|
9
|
+
ExcelTS 是 [ExcelJS](https://github.com/exceljs/exceljs) 的现代化版本,具有以下特性:
|
|
10
|
+
|
|
11
|
+
- ✅ **完整的 TypeScript 支持** - 完整的类型定义和现代 TypeScript 模式
|
|
12
|
+
- ✅ **升级的依赖** - 所有依赖项升级到最新稳定版本
|
|
13
|
+
- ✅ **现代构建系统** - 使用 Rolldown 进行更快的构建
|
|
14
|
+
- ✅ **增强的测试** - 迁移到 Vitest 并支持浏览器测试
|
|
15
|
+
- ✅ **ESM 优先** - 原生 ES Module 支持,兼容 CommonJS
|
|
16
|
+
- ✅ **Node 20+** - 针对现代 Node.js 版本优化
|
|
17
|
+
- ✅ **命名导出** - 所有导出都是命名导出,更好的 tree-shaking
|
|
18
|
+
|
|
19
|
+
## 翻译
|
|
20
|
+
|
|
21
|
+
- [English Documentation](README.md)
|
|
22
|
+
|
|
23
|
+
## 安装
|
|
24
|
+
|
|
25
|
+
````bash
|
|
26
|
+
npm install @cj-tech-master/excelts
|
|
27
|
+
|
|
28
|
+
## 快速开始
|
|
29
|
+
|
|
30
|
+
### 创建工作簿
|
|
31
|
+
|
|
32
|
+
```javascript
|
|
33
|
+
import { Workbook } from "@cj-tech-master/excelts";
|
|
34
|
+
|
|
35
|
+
const workbook = new Workbook();
|
|
36
|
+
const sheet = workbook.addWorksheet("我的工作表");
|
|
37
|
+
|
|
38
|
+
// 添加数据
|
|
39
|
+
sheet.addRow(["姓名", "年龄", "邮箱"]);
|
|
40
|
+
sheet.addRow(["张三", 30, "zhang@example.com"]);
|
|
41
|
+
sheet.addRow(["李四", 25, "li@example.com"]);
|
|
42
|
+
|
|
43
|
+
// 保存文件
|
|
44
|
+
await workbook.xlsx.writeFile("output.xlsx");
|
|
45
|
+
````
|
|
46
|
+
|
|
47
|
+
### 读取工作簿
|
|
48
|
+
|
|
49
|
+
```javascript
|
|
50
|
+
import { Workbook } from "@cj-tech-master/excelts";
|
|
51
|
+
|
|
52
|
+
const workbook = new Workbook();
|
|
53
|
+
await workbook.xlsx.readFile("input.xlsx");
|
|
54
|
+
|
|
55
|
+
const worksheet = workbook.getWorksheet(1);
|
|
56
|
+
worksheet.eachRow((row, rowNumber) => {
|
|
57
|
+
console.log("第 " + rowNumber + " 行 = " + JSON.stringify(row.values));
|
|
58
|
+
});
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
### 单元格样式
|
|
62
|
+
|
|
63
|
+
```javascript
|
|
64
|
+
// 设置单元格值和样式
|
|
65
|
+
const cell = worksheet.getCell("A1");
|
|
66
|
+
cell.value = "你好";
|
|
67
|
+
cell.font = {
|
|
68
|
+
name: "Arial",
|
|
69
|
+
size: 16,
|
|
70
|
+
bold: true,
|
|
71
|
+
color: { argb: "FFFF0000" }
|
|
72
|
+
};
|
|
73
|
+
cell.fill = {
|
|
74
|
+
type: "pattern",
|
|
75
|
+
pattern: "solid",
|
|
76
|
+
fgColor: { argb: "FFFFFF00" }
|
|
77
|
+
};
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
## 功能特性
|
|
81
|
+
|
|
82
|
+
- **Excel 操作**
|
|
83
|
+
- 创建、读取和修改 XLSX 文件
|
|
84
|
+
- 多工作表支持
|
|
85
|
+
- 单元格样式(字体、颜色、边框、填充)
|
|
86
|
+
- 单元格合并和格式化
|
|
87
|
+
- 行和列属性
|
|
88
|
+
- 冻结窗格和拆分视图
|
|
89
|
+
|
|
90
|
+
- **数据处理**
|
|
91
|
+
- 富文本支持
|
|
92
|
+
- 公式和计算值
|
|
93
|
+
- 数据验证
|
|
94
|
+
- 条件格式
|
|
95
|
+
- 图片和图表
|
|
96
|
+
- 超链接
|
|
97
|
+
- 数据透视表
|
|
98
|
+
|
|
99
|
+
- **高级功能**
|
|
100
|
+
- 大文件流式处理
|
|
101
|
+
- CSV 导入/导出
|
|
102
|
+
- 带自动筛选的表格
|
|
103
|
+
- 页面设置和打印选项
|
|
104
|
+
- 数据保护
|
|
105
|
+
- 注释和批注
|
|
106
|
+
|
|
107
|
+
## 浏览器支持
|
|
108
|
+
|
|
109
|
+
ExcelTS 同时支持 Node.js 和浏览器环境:
|
|
110
|
+
|
|
111
|
+
````javascript
|
|
112
|
+
```javascript
|
|
113
|
+
// 浏览器使用
|
|
114
|
+
import { Workbook } from "@cj-tech-master/excelts/browser";
|
|
115
|
+
|
|
116
|
+
const workbook = new Workbook();
|
|
117
|
+
// ... 使用 workbook API
|
|
118
|
+
````
|
|
119
|
+
|
|
120
|
+
## 系统要求
|
|
121
|
+
|
|
122
|
+
### Node.js
|
|
123
|
+
|
|
124
|
+
- **Node.js >= 18.0.0**(原生支持 ES2020)
|
|
125
|
+
- 推荐:Node.js >= 20.0.0 以获得最佳性能
|
|
126
|
+
|
|
127
|
+
### 浏览器(无需 Polyfills)
|
|
128
|
+
|
|
129
|
+
- **Chrome >= 85**(2020年8月)
|
|
130
|
+
- **Edge >= 85**(2020年8月)
|
|
131
|
+
- **Firefox >= 79**(2020年7月)
|
|
132
|
+
- **Safari >= 14**(2020年9月)
|
|
133
|
+
- **Opera >= 71**(2020年9月)
|
|
134
|
+
|
|
135
|
+
所有 ES2020 特性(可选链 `?.`、空值合并 `??`、Promise.allSettled 等)在这些版本中都原生支持。
|
|
136
|
+
|
|
137
|
+
## 维护者
|
|
138
|
+
|
|
139
|
+
本项目由 [CJ (@cjnoname)](https://github.com/cjnoname) 积极维护。
|
|
140
|
+
|
|
141
|
+
### 维护状态
|
|
142
|
+
|
|
143
|
+
**积极维护中** - 本项目处于积极维护状态,重点关注:
|
|
144
|
+
|
|
145
|
+
- 🔒 **安全更新** - 及时的安全补丁和依赖项更新
|
|
146
|
+
- 🐛 **Bug 修复** - 关键 Bug 修复和稳定性改进
|
|
147
|
+
- 📦 **依赖管理** - 保持依赖项最新且安全
|
|
148
|
+
- 🔍 **代码审查** - 审查和合并社区贡献
|
|
149
|
+
|
|
150
|
+
### 贡献
|
|
151
|
+
|
|
152
|
+
虽然我可能没有足够的时间定期开发新功能,但**非常重视和欢迎社区贡献!**
|
|
153
|
+
|
|
154
|
+
- 💡 **欢迎 Pull Request** - 我会及时审查并合并高质量的 PR
|
|
155
|
+
- 🚀 **功能提议** - 在实现前请先开 issue 讨论新功能
|
|
156
|
+
- 🐛 **Bug 报告** - 请提供可重现的示例报告 Bug
|
|
157
|
+
- 📖 **文档改进** - 始终欢迎文档改进
|
|
158
|
+
|
|
159
|
+
## API 文档
|
|
160
|
+
|
|
161
|
+
详细的 API 文档,请参考以下综合文档部分:
|
|
162
|
+
|
|
163
|
+
- 工作簿管理
|
|
164
|
+
- 工作表
|
|
165
|
+
- 单元格和值
|
|
166
|
+
- 样式
|
|
167
|
+
- 公式
|
|
168
|
+
- 数据验证
|
|
169
|
+
- 条件格式
|
|
170
|
+
- 文件输入输出
|
|
171
|
+
|
|
172
|
+
API 与原始 ExcelJS 保持高度兼容。
|
|
173
|
+
|
|
174
|
+
## 贡献指南
|
|
175
|
+
|
|
176
|
+
欢迎贡献!请随时提交 Pull Request。
|
|
177
|
+
|
|
178
|
+
### 提交 PR 前
|
|
179
|
+
|
|
180
|
+
1. **Bug 修复**:在 `src/__test__` 文件夹中添加能重现问题的单元测试或集成测试
|
|
181
|
+
2. **新功能**:先开 issue 讨论功能和实现方案
|
|
182
|
+
3. **文档**:更新相关文档和类型定义
|
|
183
|
+
4. **代码风格**:遵循现有代码风格并通过所有代码检查(`npm run lint`)
|
|
184
|
+
5. **测试**:确保所有测试通过(`npm test`)并为新功能添加测试
|
|
185
|
+
|
|
186
|
+
### 重要说明
|
|
187
|
+
|
|
188
|
+
- **版本号**:请不要在 PR 中修改 package 版本。版本通过发布管理。
|
|
189
|
+
- **许可证**:所有贡献都将包含在项目的 MIT 许可证下
|
|
190
|
+
- **提交信息**:编写清晰、描述性的提交信息
|
|
191
|
+
|
|
192
|
+
### 获取帮助
|
|
193
|
+
|
|
194
|
+
如果需要帮助或有疑问:
|
|
195
|
+
|
|
196
|
+
- 📖 查看现有的 [issues](https://github.com/cjnoname/excelts/issues) 和[文档](https://github.com/cjnoname/excelts)
|
|
197
|
+
- 💬 开一个[新 issue](https://github.com/cjnoname/excelts/issues/new) 讨论
|
|
198
|
+
- 🐛 使用 issue 模板报告 Bug
|
|
199
|
+
|
|
200
|
+
## 许可证
|
|
201
|
+
|
|
202
|
+
MIT License
|
|
203
|
+
|
|
204
|
+
基于 [ExcelJS](https://github.com/exceljs/exceljs) 由 [Guyon Roche](https://github.com/guyonroche) 创建
|
|
205
|
+
|
|
206
|
+
## 致谢
|
|
207
|
+
|
|
208
|
+
本项目是 ExcelJS 的现代化分支。原始实现的所有功劳归于:
|
|
209
|
+
|
|
210
|
+
- **Guyon Roche** - ExcelJS 原作者
|
|
211
|
+
- 所有 [ExcelJS 贡献者](https://github.com/exceljs/exceljs/graphs/contributors)
|
|
212
|
+
|
|
213
|
+
## 链接
|
|
214
|
+
|
|
215
|
+
- [GitHub 仓库](https://github.com/cjnoname/exceljs)
|
|
216
|
+
- [原始 ExcelJS](https://github.com/exceljs/exceljs)
|
|
217
|
+
- [问题跟踪](https://github.com/cjnoname/exceljs/issues)
|
|
218
|
+
|
|
219
|
+
## 更新日志
|
|
220
|
+
|
|
221
|
+
### 0.1.0 (2025-10-24)
|
|
222
|
+
|
|
223
|
+
- ExcelTS 首次发布
|
|
224
|
+
- 完整的 TypeScript 重写,严格类型检查
|
|
225
|
+
- 所有默认导出转换为命名导出
|
|
226
|
+
- 所有依赖项更新到最新版本
|
|
227
|
+
- 迁移到 Vitest 进行测试
|
|
228
|
+
- 切换到 Rolldown 进行打包
|
|
229
|
+
- 现代 ES Module 支持
|
|
230
|
+
- Node 20+ 支持
|
|
231
|
+
- 使用适当的访问修饰符增强类型安全
|
|
232
|
+
- 浏览器测试支持
|
|
233
|
+
- 性能优化
|
package/dist/LICENSE
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
The MIT License (MIT)
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2014-2019 Guyon Roche
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
22
|
+
|