@rowsncolumns/toolkit 24.4.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.md +100 -0
- package/Readme.md +27 -0
- package/dist/cjs/autofilter-condition.d.ts +43 -0
- package/dist/cjs/autofilter-condition.d.ts.map +1 -0
- package/dist/cjs/autofilter-condition.js +155 -0
- package/dist/cjs/csv-export.d.ts +49 -0
- package/dist/cjs/csv-export.d.ts.map +1 -0
- package/dist/cjs/csv-export.js +142 -0
- package/dist/cjs/csv-import-worker.d.ts +16 -0
- package/dist/cjs/csv-import-worker.d.ts.map +1 -0
- package/dist/cjs/csv-import-worker.js +60 -0
- package/dist/cjs/csv-import.d.ts +38 -0
- package/dist/cjs/csv-import.d.ts.map +1 -0
- package/dist/cjs/csv-import.js +166 -0
- package/dist/cjs/csv-parser/helpers.d.ts +14 -0
- package/dist/cjs/csv-parser/helpers.d.ts.map +1 -0
- package/dist/cjs/csv-parser/helpers.js +145 -0
- package/dist/cjs/csv-parser/types.d.ts +66 -0
- package/dist/cjs/csv-parser/types.d.ts.map +1 -0
- package/dist/cjs/csv-parser/types.js +14 -0
- package/dist/cjs/csv-parser/worker.d.ts +2 -0
- package/dist/cjs/csv-parser/worker.d.ts.map +1 -0
- package/dist/cjs/csv-parser/worker.js +200 -0
- package/dist/cjs/excel-export.d.ts +11 -0
- package/dist/cjs/excel-export.d.ts.map +1 -0
- package/dist/cjs/excel-export.js +22 -0
- package/dist/cjs/excel-import-session.d.ts +51 -0
- package/dist/cjs/excel-import-session.d.ts.map +1 -0
- package/dist/cjs/excel-import-session.js +307 -0
- package/dist/cjs/excel-import-worker.d.ts +7 -0
- package/dist/cjs/excel-import-worker.d.ts.map +1 -0
- package/dist/cjs/excel-import-worker.js +119 -0
- package/dist/cjs/excel-parser/builtin-numfmts.d.ts +24 -0
- package/dist/cjs/excel-parser/builtin-numfmts.d.ts.map +1 -0
- package/dist/cjs/excel-parser/builtin-numfmts.js +63 -0
- package/dist/cjs/excel-parser/cfb-decryptor.d.ts +53 -0
- package/dist/cjs/excel-parser/cfb-decryptor.d.ts.map +1 -0
- package/dist/cjs/excel-parser/cfb-decryptor.js +553 -0
- package/dist/cjs/excel-parser/cfb-encryptor.d.ts +23 -0
- package/dist/cjs/excel-parser/cfb-encryptor.d.ts.map +1 -0
- package/dist/cjs/excel-parser/cfb-encryptor.js +200 -0
- package/dist/cjs/excel-parser/dv-cell-stamp.d.ts +29 -0
- package/dist/cjs/excel-parser/dv-cell-stamp.d.ts.map +1 -0
- package/dist/cjs/excel-parser/dv-cell-stamp.js +239 -0
- package/dist/cjs/excel-parser/helpers.d.ts +28 -0
- package/dist/cjs/excel-parser/helpers.d.ts.map +1 -0
- package/dist/cjs/excel-parser/helpers.js +188 -0
- package/dist/cjs/excel-parser/interface.d.ts +179 -0
- package/dist/cjs/excel-parser/interface.d.ts.map +1 -0
- package/dist/cjs/excel-parser/interface.js +1 -0
- package/dist/cjs/excel-parser/plugins/base/index.d.ts +31 -0
- package/dist/cjs/excel-parser/plugins/base/index.d.ts.map +1 -0
- package/dist/cjs/excel-parser/plugins/base/index.js +101 -0
- package/dist/cjs/excel-parser/plugins/ods/conditional-formatting.d.ts +16 -0
- package/dist/cjs/excel-parser/plugins/ods/conditional-formatting.d.ts.map +1 -0
- package/dist/cjs/excel-parser/plugins/ods/conditional-formatting.js +488 -0
- package/dist/cjs/excel-parser/plugins/ods/data-validations.d.ts +15 -0
- package/dist/cjs/excel-parser/plugins/ods/data-validations.d.ts.map +1 -0
- package/dist/cjs/excel-parser/plugins/ods/data-validations.js +353 -0
- package/dist/cjs/excel-parser/plugins/ods/formula.d.ts +8 -0
- package/dist/cjs/excel-parser/plugins/ods/formula.d.ts.map +1 -0
- package/dist/cjs/excel-parser/plugins/ods/formula.js +82 -0
- package/dist/cjs/excel-parser/plugins/ods/index.d.ts +122 -0
- package/dist/cjs/excel-parser/plugins/ods/index.d.ts.map +1 -0
- package/dist/cjs/excel-parser/plugins/ods/index.js +3642 -0
- package/dist/cjs/excel-parser/plugins/ods/sparklines.d.ts +25 -0
- package/dist/cjs/excel-parser/plugins/ods/sparklines.d.ts.map +1 -0
- package/dist/cjs/excel-parser/plugins/ods/sparklines.js +221 -0
- package/dist/cjs/excel-parser/plugins/ods/styles.d.ts +60 -0
- package/dist/cjs/excel-parser/plugins/ods/styles.d.ts.map +1 -0
- package/dist/cjs/excel-parser/plugins/ods/styles.js +808 -0
- package/dist/cjs/excel-parser/plugins/ods/types.d.ts +7 -0
- package/dist/cjs/excel-parser/plugins/ods/types.d.ts.map +1 -0
- package/dist/cjs/excel-parser/plugins/ods/types.js +1 -0
- package/dist/cjs/excel-parser/plugins/xls/index.d.ts +5 -0
- package/dist/cjs/excel-parser/plugins/xls/index.d.ts.map +1 -0
- package/dist/cjs/excel-parser/plugins/xls/index.js +19 -0
- package/dist/cjs/excel-parser/plugins/xlsb/biff-record-reader.d.ts +13 -0
- package/dist/cjs/excel-parser/plugins/xlsb/biff-record-reader.d.ts.map +1 -0
- package/dist/cjs/excel-parser/plugins/xlsb/biff-record-reader.js +49 -0
- package/dist/cjs/excel-parser/plugins/xlsb/index.d.ts +117 -0
- package/dist/cjs/excel-parser/plugins/xlsb/index.d.ts.map +1 -0
- package/dist/cjs/excel-parser/plugins/xlsb/index.js +2972 -0
- package/dist/cjs/excel-parser/plugins/xlsb/rgce-parser.d.ts +18 -0
- package/dist/cjs/excel-parser/plugins/xlsb/rgce-parser.d.ts.map +1 -0
- package/dist/cjs/excel-parser/plugins/xlsb/rgce-parser.js +527 -0
- package/dist/cjs/excel-parser/plugins/xlsm/index.d.ts +5 -0
- package/dist/cjs/excel-parser/plugins/xlsm/index.d.ts.map +1 -0
- package/dist/cjs/excel-parser/plugins/xlsm/index.js +10 -0
- package/dist/cjs/excel-parser/plugins/xlsx/charts.d.ts +60 -0
- package/dist/cjs/excel-parser/plugins/xlsx/charts.d.ts.map +1 -0
- package/dist/cjs/excel-parser/plugins/xlsx/charts.js +2178 -0
- package/dist/cjs/excel-parser/plugins/xlsx/conditional-formatting.d.ts +18 -0
- package/dist/cjs/excel-parser/plugins/xlsx/conditional-formatting.d.ts.map +1 -0
- package/dist/cjs/excel-parser/plugins/xlsx/conditional-formatting.js +620 -0
- package/dist/cjs/excel-parser/plugins/xlsx/data-validations.d.ts +4 -0
- package/dist/cjs/excel-parser/plugins/xlsx/data-validations.d.ts.map +1 -0
- package/dist/cjs/excel-parser/plugins/xlsx/data-validations.js +515 -0
- package/dist/cjs/excel-parser/plugins/xlsx/drawing.d.ts +39 -0
- package/dist/cjs/excel-parser/plugins/xlsx/drawing.d.ts.map +1 -0
- package/dist/cjs/excel-parser/plugins/xlsx/drawing.js +941 -0
- package/dist/cjs/excel-parser/plugins/xlsx/index.d.ts +320 -0
- package/dist/cjs/excel-parser/plugins/xlsx/index.d.ts.map +1 -0
- package/dist/cjs/excel-parser/plugins/xlsx/index.js +6056 -0
- package/dist/cjs/excel-parser/plugins/xlsx/numfmt.d.ts +2 -0
- package/dist/cjs/excel-parser/plugins/xlsx/numfmt.d.ts.map +1 -0
- package/dist/cjs/excel-parser/plugins/xlsx/numfmt.js +3 -0
- package/dist/cjs/excel-parser/plugins/xlsx/pivots.d.ts +40 -0
- package/dist/cjs/excel-parser/plugins/xlsx/pivots.d.ts.map +1 -0
- package/dist/cjs/excel-parser/plugins/xlsx/pivots.js +342 -0
- package/dist/cjs/excel-parser/plugins/xlsx/relationships.d.ts +8 -0
- package/dist/cjs/excel-parser/plugins/xlsx/relationships.d.ts.map +1 -0
- package/dist/cjs/excel-parser/plugins/xlsx/relationships.js +26 -0
- package/dist/cjs/excel-parser/plugins/xlsx/sheet-views.d.ts +26 -0
- package/dist/cjs/excel-parser/plugins/xlsx/sheet-views.d.ts.map +1 -0
- package/dist/cjs/excel-parser/plugins/xlsx/sheet-views.js +59 -0
- package/dist/cjs/excel-parser/plugins/xlsx/styles.d.ts +44 -0
- package/dist/cjs/excel-parser/plugins/xlsx/styles.d.ts.map +1 -0
- package/dist/cjs/excel-parser/plugins/xlsx/styles.js +1377 -0
- package/dist/cjs/excel-parser/plugins/xlsx/theme.d.ts +50 -0
- package/dist/cjs/excel-parser/plugins/xlsx/theme.d.ts.map +1 -0
- package/dist/cjs/excel-parser/plugins/xlsx/theme.js +150 -0
- package/dist/cjs/excel-parser/plugins/xlsx/threaded-comments.d.ts +47 -0
- package/dist/cjs/excel-parser/plugins/xlsx/threaded-comments.d.ts.map +1 -0
- package/dist/cjs/excel-parser/plugins/xlsx/threaded-comments.js +141 -0
- package/dist/cjs/excel-parser/plugins/xlsx/value-type-detection.d.ts +44 -0
- package/dist/cjs/excel-parser/plugins/xlsx/value-type-detection.d.ts.map +1 -0
- package/dist/cjs/excel-parser/plugins/xlsx/value-type-detection.js +407 -0
- package/dist/cjs/excel-parser/registry.d.ts +5 -0
- package/dist/cjs/excel-parser/registry.d.ts.map +1 -0
- package/dist/cjs/excel-parser/registry.js +21 -0
- package/dist/cjs/excel-parser/style-registry.d.ts +51 -0
- package/dist/cjs/excel-parser/style-registry.d.ts.map +1 -0
- package/dist/cjs/excel-parser/style-registry.js +175 -0
- package/dist/cjs/excel-parser/theme-default.d.ts +3 -0
- package/dist/cjs/excel-parser/theme-default.d.ts.map +1 -0
- package/dist/cjs/excel-parser/theme-default.js +19 -0
- package/dist/cjs/excel-parser/types.d.ts +365 -0
- package/dist/cjs/excel-parser/types.d.ts.map +1 -0
- package/dist/cjs/excel-parser/types.js +59 -0
- package/dist/cjs/excel-parser/utils.d.ts +6 -0
- package/dist/cjs/excel-parser/utils.d.ts.map +1 -0
- package/dist/cjs/excel-parser/utils.js +30 -0
- package/dist/cjs/excel-parser/workbook.d.ts +51 -0
- package/dist/cjs/excel-parser/workbook.d.ts.map +1 -0
- package/dist/cjs/excel-parser/workbook.js +317 -0
- package/dist/cjs/excel-parser/worker.d.ts +2 -0
- package/dist/cjs/excel-parser/worker.d.ts.map +1 -0
- package/dist/cjs/excel-parser/worker.js +1149 -0
- package/dist/cjs/excel-parser/zip-parser-streaming.d.ts +13 -0
- package/dist/cjs/excel-parser/zip-parser-streaming.d.ts.map +1 -0
- package/dist/cjs/excel-parser/zip-parser-streaming.js +200 -0
- package/dist/cjs/excel-parser/zip-parser.d.ts +11 -0
- package/dist/cjs/excel-parser/zip-parser.d.ts.map +1 -0
- package/dist/cjs/excel-parser/zip-parser.js +49 -0
- package/dist/cjs/exporter/invalid-data-validation.d.ts +19 -0
- package/dist/cjs/exporter/invalid-data-validation.d.ts.map +1 -0
- package/dist/cjs/exporter/invalid-data-validation.js +39 -0
- package/dist/cjs/exporter/ods/ods-export.d.ts +26 -0
- package/dist/cjs/exporter/ods/ods-export.d.ts.map +1 -0
- package/dist/cjs/exporter/ods/ods-export.js +3714 -0
- package/dist/cjs/exporter/ods/sparkline-builder.d.ts +33 -0
- package/dist/cjs/exporter/ods/sparkline-builder.d.ts.map +1 -0
- package/dist/cjs/exporter/ods/sparkline-builder.js +221 -0
- package/dist/cjs/exporter/xlsx/chart-builder.d.ts +3 -0
- package/dist/cjs/exporter/xlsx/chart-builder.d.ts.map +1 -0
- package/dist/cjs/exporter/xlsx/chart-builder.js +1901 -0
- package/dist/cjs/exporter/xlsx/chart-templates.d.ts +1781 -0
- package/dist/cjs/exporter/xlsx/chart-templates.d.ts.map +1 -0
- package/dist/cjs/exporter/xlsx/chart-templates.js +1798 -0
- package/dist/cjs/exporter/xlsx/future-functions.d.ts +10 -0
- package/dist/cjs/exporter/xlsx/future-functions.d.ts.map +1 -0
- package/dist/cjs/exporter/xlsx/future-functions.js +264 -0
- package/dist/cjs/exporter/xlsx/pivot-builder.d.ts +58 -0
- package/dist/cjs/exporter/xlsx/pivot-builder.d.ts.map +1 -0
- package/dist/cjs/exporter/xlsx/pivot-builder.js +277 -0
- package/dist/cjs/exporter/xlsx/power-query-builder.d.ts +26 -0
- package/dist/cjs/exporter/xlsx/power-query-builder.d.ts.map +1 -0
- package/dist/cjs/exporter/xlsx/power-query-builder.js +306 -0
- package/dist/cjs/exporter/xlsx/slicer-builder.d.ts +11 -0
- package/dist/cjs/exporter/xlsx/slicer-builder.d.ts.map +1 -0
- package/dist/cjs/exporter/xlsx/slicer-builder.js +87 -0
- package/dist/cjs/exporter/xlsx/sparkline-builder.d.ts +61 -0
- package/dist/cjs/exporter/xlsx/sparkline-builder.d.ts.map +1 -0
- package/dist/cjs/exporter/xlsx/sparkline-builder.js +489 -0
- package/dist/cjs/exporter/xlsx/style-builder.d.ts +93 -0
- package/dist/cjs/exporter/xlsx/style-builder.d.ts.map +1 -0
- package/dist/cjs/exporter/xlsx/style-builder.js +813 -0
- package/dist/cjs/exporter/xlsx/threaded-comments-builder.d.ts +58 -0
- package/dist/cjs/exporter/xlsx/threaded-comments-builder.d.ts.map +1 -0
- package/dist/cjs/exporter/xlsx/threaded-comments-builder.js +189 -0
- package/dist/cjs/exporter/xlsx/xlsx-export.d.ts +121 -0
- package/dist/cjs/exporter/xlsx/xlsx-export.d.ts.map +1 -0
- package/dist/cjs/exporter/xlsx/xlsx-export.js +4596 -0
- package/dist/cjs/helpers/theme-xml-generator.d.ts +8 -0
- package/dist/cjs/helpers/theme-xml-generator.d.ts.map +1 -0
- package/dist/cjs/helpers/theme-xml-generator.js +33 -0
- package/dist/cjs/helpers.d.ts +34 -0
- package/dist/cjs/helpers.d.ts.map +1 -0
- package/dist/cjs/helpers.js +189 -0
- package/dist/cjs/index.d.ts +16 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +15 -0
- package/dist/cjs/indexed-colors.d.ts +2 -0
- package/dist/cjs/indexed-colors.d.ts.map +1 -0
- package/dist/cjs/indexed-colors.js +75 -0
- package/dist/cjs/ods-export.d.ts +24 -0
- package/dist/cjs/ods-export.d.ts.map +1 -0
- package/dist/cjs/ods-export.js +23 -0
- package/dist/cjs/parse.d.ts +24 -0
- package/dist/cjs/parse.d.ts.map +1 -0
- package/dist/cjs/parse.js +68 -0
- package/dist/cjs/power-query.d.ts +41 -0
- package/dist/cjs/power-query.d.ts.map +1 -0
- package/dist/cjs/power-query.js +22 -0
- package/dist/cjs/server.d.ts +9 -0
- package/dist/cjs/server.d.ts.map +1 -0
- package/dist/cjs/server.js +8 -0
- package/dist/cjs/theme1.d.ts +3 -0
- package/dist/cjs/theme1.d.ts.map +1 -0
- package/dist/cjs/theme1.js +2 -0
- package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -0
- package/dist/cjs/types.d.ts +14 -0
- package/dist/cjs/types.d.ts.map +1 -0
- package/dist/cjs/types.js +14 -0
- package/dist/cjs/vitest.config.d.ts +3 -0
- package/dist/cjs/vitest.config.d.ts.map +1 -0
- package/dist/cjs/vitest.config.js +16 -0
- package/dist/esm/autofilter-condition.d.ts +43 -0
- package/dist/esm/autofilter-condition.d.ts.map +1 -0
- package/dist/esm/autofilter-condition.js +145 -0
- package/dist/esm/csv-export.d.ts +49 -0
- package/dist/esm/csv-export.d.ts.map +1 -0
- package/dist/esm/csv-export.js +126 -0
- package/dist/esm/csv-import-worker.d.ts +16 -0
- package/dist/esm/csv-import-worker.d.ts.map +1 -0
- package/dist/esm/csv-import-worker.js +60 -0
- package/dist/esm/csv-import.d.ts +38 -0
- package/dist/esm/csv-import.d.ts.map +1 -0
- package/dist/esm/csv-import.js +132 -0
- package/dist/esm/csv-parser/helpers.d.ts +14 -0
- package/dist/esm/csv-parser/helpers.d.ts.map +1 -0
- package/dist/esm/csv-parser/helpers.js +0 -0
- package/dist/esm/csv-parser/types.d.ts +66 -0
- package/dist/esm/csv-parser/types.d.ts.map +1 -0
- package/dist/esm/csv-parser/types.js +14 -0
- package/dist/esm/csv-parser/worker.d.ts +2 -0
- package/dist/esm/csv-parser/worker.d.ts.map +1 -0
- package/dist/esm/csv-parser/worker.js +154 -0
- package/dist/esm/excel-export.d.ts +11 -0
- package/dist/esm/excel-export.d.ts.map +1 -0
- package/dist/esm/excel-export.js +13 -0
- package/dist/esm/excel-import-session.d.ts +51 -0
- package/dist/esm/excel-import-session.d.ts.map +1 -0
- package/dist/esm/excel-import-session.js +255 -0
- package/dist/esm/excel-import-worker.d.ts +7 -0
- package/dist/esm/excel-import-worker.d.ts.map +1 -0
- package/dist/esm/excel-import-worker.js +116 -0
- package/dist/esm/excel-parser/builtin-numfmts.d.ts +24 -0
- package/dist/esm/excel-parser/builtin-numfmts.d.ts.map +1 -0
- package/dist/esm/excel-parser/builtin-numfmts.js +59 -0
- package/dist/esm/excel-parser/cfb-decryptor.d.ts +53 -0
- package/dist/esm/excel-parser/cfb-decryptor.d.ts.map +1 -0
- package/dist/esm/excel-parser/cfb-decryptor.js +493 -0
- package/dist/esm/excel-parser/cfb-encryptor.d.ts +23 -0
- package/dist/esm/excel-parser/cfb-encryptor.d.ts.map +1 -0
- package/dist/esm/excel-parser/cfb-encryptor.js +181 -0
- package/dist/esm/excel-parser/dv-cell-stamp.d.ts +29 -0
- package/dist/esm/excel-parser/dv-cell-stamp.d.ts.map +1 -0
- package/dist/esm/excel-parser/dv-cell-stamp.js +155 -0
- package/dist/esm/excel-parser/helpers.d.ts +28 -0
- package/dist/esm/excel-parser/helpers.d.ts.map +1 -0
- package/dist/esm/excel-parser/helpers.js +160 -0
- package/dist/esm/excel-parser/interface.d.ts +179 -0
- package/dist/esm/excel-parser/interface.d.ts.map +1 -0
- package/dist/esm/excel-parser/interface.js +1 -0
- package/dist/esm/excel-parser/plugins/base/index.d.ts +31 -0
- package/dist/esm/excel-parser/plugins/base/index.d.ts.map +1 -0
- package/dist/esm/excel-parser/plugins/base/index.js +64 -0
- package/dist/esm/excel-parser/plugins/ods/conditional-formatting.d.ts +16 -0
- package/dist/esm/excel-parser/plugins/ods/conditional-formatting.d.ts.map +1 -0
- package/dist/esm/excel-parser/plugins/ods/conditional-formatting.js +405 -0
- package/dist/esm/excel-parser/plugins/ods/data-validations.d.ts +15 -0
- package/dist/esm/excel-parser/plugins/ods/data-validations.d.ts.map +1 -0
- package/dist/esm/excel-parser/plugins/ods/data-validations.js +331 -0
- package/dist/esm/excel-parser/plugins/ods/formula.d.ts +8 -0
- package/dist/esm/excel-parser/plugins/ods/formula.d.ts.map +1 -0
- package/dist/esm/excel-parser/plugins/ods/formula.js +82 -0
- package/dist/esm/excel-parser/plugins/ods/index.d.ts +122 -0
- package/dist/esm/excel-parser/plugins/ods/index.d.ts.map +1 -0
- package/dist/esm/excel-parser/plugins/ods/index.js +2896 -0
- package/dist/esm/excel-parser/plugins/ods/sparklines.d.ts +25 -0
- package/dist/esm/excel-parser/plugins/ods/sparklines.d.ts.map +1 -0
- package/dist/esm/excel-parser/plugins/ods/sparklines.js +188 -0
- package/dist/esm/excel-parser/plugins/ods/styles.d.ts +60 -0
- package/dist/esm/excel-parser/plugins/ods/styles.d.ts.map +1 -0
- package/dist/esm/excel-parser/plugins/ods/styles.js +732 -0
- package/dist/esm/excel-parser/plugins/ods/types.d.ts +7 -0
- package/dist/esm/excel-parser/plugins/ods/types.d.ts.map +1 -0
- package/dist/esm/excel-parser/plugins/ods/types.js +1 -0
- package/dist/esm/excel-parser/plugins/xls/index.d.ts +5 -0
- package/dist/esm/excel-parser/plugins/xls/index.d.ts.map +1 -0
- package/dist/esm/excel-parser/plugins/xls/index.js +7 -0
- package/dist/esm/excel-parser/plugins/xlsb/biff-record-reader.d.ts +13 -0
- package/dist/esm/excel-parser/plugins/xlsb/biff-record-reader.d.ts.map +1 -0
- package/dist/esm/excel-parser/plugins/xlsb/biff-record-reader.js +48 -0
- package/dist/esm/excel-parser/plugins/xlsb/index.d.ts +117 -0
- package/dist/esm/excel-parser/plugins/xlsb/index.d.ts.map +1 -0
- package/dist/esm/excel-parser/plugins/xlsb/index.js +2339 -0
- package/dist/esm/excel-parser/plugins/xlsb/rgce-parser.d.ts +18 -0
- package/dist/esm/excel-parser/plugins/xlsb/rgce-parser.d.ts.map +1 -0
- package/dist/esm/excel-parser/plugins/xlsb/rgce-parser.js +522 -0
- package/dist/esm/excel-parser/plugins/xlsm/index.d.ts +5 -0
- package/dist/esm/excel-parser/plugins/xlsm/index.d.ts.map +1 -0
- package/dist/esm/excel-parser/plugins/xlsm/index.js +6 -0
- package/dist/esm/excel-parser/plugins/xlsx/charts.d.ts +60 -0
- package/dist/esm/excel-parser/plugins/xlsx/charts.d.ts.map +1 -0
- package/dist/esm/excel-parser/plugins/xlsx/charts.js +2036 -0
- package/dist/esm/excel-parser/plugins/xlsx/conditional-formatting.d.ts +18 -0
- package/dist/esm/excel-parser/plugins/xlsx/conditional-formatting.d.ts.map +1 -0
- package/dist/esm/excel-parser/plugins/xlsx/conditional-formatting.js +621 -0
- package/dist/esm/excel-parser/plugins/xlsx/data-validations.d.ts +4 -0
- package/dist/esm/excel-parser/plugins/xlsx/data-validations.d.ts.map +1 -0
- package/dist/esm/excel-parser/plugins/xlsx/data-validations.js +493 -0
- package/dist/esm/excel-parser/plugins/xlsx/drawing.d.ts +39 -0
- package/dist/esm/excel-parser/plugins/xlsx/drawing.d.ts.map +1 -0
- package/dist/esm/excel-parser/plugins/xlsx/drawing.js +905 -0
- package/dist/esm/excel-parser/plugins/xlsx/index.d.ts +320 -0
- package/dist/esm/excel-parser/plugins/xlsx/index.d.ts.map +1 -0
- package/dist/esm/excel-parser/plugins/xlsx/index.js +4654 -0
- package/dist/esm/excel-parser/plugins/xlsx/numfmt.d.ts +2 -0
- package/dist/esm/excel-parser/plugins/xlsx/numfmt.d.ts.map +1 -0
- package/dist/esm/excel-parser/plugins/xlsx/numfmt.js +3 -0
- package/dist/esm/excel-parser/plugins/xlsx/pivots.d.ts +40 -0
- package/dist/esm/excel-parser/plugins/xlsx/pivots.d.ts.map +1 -0
- package/dist/esm/excel-parser/plugins/xlsx/pivots.js +254 -0
- package/dist/esm/excel-parser/plugins/xlsx/relationships.d.ts +8 -0
- package/dist/esm/excel-parser/plugins/xlsx/relationships.d.ts.map +1 -0
- package/dist/esm/excel-parser/plugins/xlsx/relationships.js +13 -0
- package/dist/esm/excel-parser/plugins/xlsx/sheet-views.d.ts +26 -0
- package/dist/esm/excel-parser/plugins/xlsx/sheet-views.d.ts.map +1 -0
- package/dist/esm/excel-parser/plugins/xlsx/sheet-views.js +64 -0
- package/dist/esm/excel-parser/plugins/xlsx/styles.d.ts +44 -0
- package/dist/esm/excel-parser/plugins/xlsx/styles.d.ts.map +1 -0
- package/dist/esm/excel-parser/plugins/xlsx/styles.js +1365 -0
- package/dist/esm/excel-parser/plugins/xlsx/theme.d.ts +50 -0
- package/dist/esm/excel-parser/plugins/xlsx/theme.d.ts.map +1 -0
- package/dist/esm/excel-parser/plugins/xlsx/theme.js +127 -0
- package/dist/esm/excel-parser/plugins/xlsx/threaded-comments.d.ts +47 -0
- package/dist/esm/excel-parser/plugins/xlsx/threaded-comments.d.ts.map +1 -0
- package/dist/esm/excel-parser/plugins/xlsx/threaded-comments.js +103 -0
- package/dist/esm/excel-parser/plugins/xlsx/value-type-detection.d.ts +44 -0
- package/dist/esm/excel-parser/plugins/xlsx/value-type-detection.d.ts.map +1 -0
- package/dist/esm/excel-parser/plugins/xlsx/value-type-detection.js +399 -0
- package/dist/esm/excel-parser/registry.d.ts +5 -0
- package/dist/esm/excel-parser/registry.d.ts.map +1 -0
- package/dist/esm/excel-parser/registry.js +20 -0
- package/dist/esm/excel-parser/style-registry.d.ts +51 -0
- package/dist/esm/excel-parser/style-registry.d.ts.map +1 -0
- package/dist/esm/excel-parser/style-registry.js +163 -0
- package/dist/esm/excel-parser/theme-default.d.ts +3 -0
- package/dist/esm/excel-parser/theme-default.d.ts.map +1 -0
- package/dist/esm/excel-parser/theme-default.js +19 -0
- package/dist/esm/excel-parser/types.d.ts +365 -0
- package/dist/esm/excel-parser/types.d.ts.map +1 -0
- package/dist/esm/excel-parser/types.js +59 -0
- package/dist/esm/excel-parser/utils.d.ts +6 -0
- package/dist/esm/excel-parser/utils.d.ts.map +1 -0
- package/dist/esm/excel-parser/utils.js +25 -0
- package/dist/esm/excel-parser/workbook.d.ts +51 -0
- package/dist/esm/excel-parser/workbook.d.ts.map +1 -0
- package/dist/esm/excel-parser/workbook.js +192 -0
- package/dist/esm/excel-parser/worker.d.ts +2 -0
- package/dist/esm/excel-parser/worker.d.ts.map +1 -0
- package/dist/esm/excel-parser/worker.js +862 -0
- package/dist/esm/excel-parser/zip-parser-streaming.d.ts +13 -0
- package/dist/esm/excel-parser/zip-parser-streaming.d.ts.map +1 -0
- package/dist/esm/excel-parser/zip-parser-streaming.js +119 -0
- package/dist/esm/excel-parser/zip-parser.d.ts +11 -0
- package/dist/esm/excel-parser/zip-parser.d.ts.map +1 -0
- package/dist/esm/excel-parser/zip-parser.js +43 -0
- package/dist/esm/exporter/invalid-data-validation.d.ts +19 -0
- package/dist/esm/exporter/invalid-data-validation.d.ts.map +1 -0
- package/dist/esm/exporter/invalid-data-validation.js +37 -0
- package/dist/esm/exporter/ods/ods-export.d.ts +26 -0
- package/dist/esm/exporter/ods/ods-export.d.ts.map +1 -0
- package/dist/esm/exporter/ods/ods-export.js +3238 -0
- package/dist/esm/exporter/ods/sparkline-builder.d.ts +33 -0
- package/dist/esm/exporter/ods/sparkline-builder.d.ts.map +1 -0
- package/dist/esm/exporter/ods/sparkline-builder.js +165 -0
- package/dist/esm/exporter/xlsx/chart-builder.d.ts +3 -0
- package/dist/esm/exporter/xlsx/chart-builder.d.ts.map +1 -0
- package/dist/esm/exporter/xlsx/chart-builder.js +1805 -0
- package/dist/esm/exporter/xlsx/chart-templates.d.ts +1781 -0
- package/dist/esm/exporter/xlsx/chart-templates.d.ts.map +1 -0
- package/dist/esm/exporter/xlsx/chart-templates.js +1798 -0
- package/dist/esm/exporter/xlsx/future-functions.d.ts +10 -0
- package/dist/esm/exporter/xlsx/future-functions.d.ts.map +1 -0
- package/dist/esm/exporter/xlsx/future-functions.js +264 -0
- package/dist/esm/exporter/xlsx/pivot-builder.d.ts +58 -0
- package/dist/esm/exporter/xlsx/pivot-builder.d.ts.map +1 -0
- package/dist/esm/exporter/xlsx/pivot-builder.js +230 -0
- package/dist/esm/exporter/xlsx/power-query-builder.d.ts +26 -0
- package/dist/esm/exporter/xlsx/power-query-builder.d.ts.map +1 -0
- package/dist/esm/exporter/xlsx/power-query-builder.js +257 -0
- package/dist/esm/exporter/xlsx/slicer-builder.d.ts +11 -0
- package/dist/esm/exporter/xlsx/slicer-builder.d.ts.map +1 -0
- package/dist/esm/exporter/xlsx/slicer-builder.js +84 -0
- package/dist/esm/exporter/xlsx/sparkline-builder.d.ts +61 -0
- package/dist/esm/exporter/xlsx/sparkline-builder.d.ts.map +1 -0
- package/dist/esm/exporter/xlsx/sparkline-builder.js +437 -0
- package/dist/esm/exporter/xlsx/style-builder.d.ts +93 -0
- package/dist/esm/exporter/xlsx/style-builder.d.ts.map +1 -0
- package/dist/esm/exporter/xlsx/style-builder.js +795 -0
- package/dist/esm/exporter/xlsx/threaded-comments-builder.d.ts +58 -0
- package/dist/esm/exporter/xlsx/threaded-comments-builder.d.ts.map +1 -0
- package/dist/esm/exporter/xlsx/threaded-comments-builder.js +175 -0
- package/dist/esm/exporter/xlsx/xlsx-export.d.ts +121 -0
- package/dist/esm/exporter/xlsx/xlsx-export.d.ts.map +1 -0
- package/dist/esm/exporter/xlsx/xlsx-export.js +4062 -0
- package/dist/esm/helpers/theme-xml-generator.d.ts +8 -0
- package/dist/esm/helpers/theme-xml-generator.d.ts.map +1 -0
- package/dist/esm/helpers/theme-xml-generator.js +33 -0
- package/dist/esm/helpers.d.ts +34 -0
- package/dist/esm/helpers.d.ts.map +1 -0
- package/dist/esm/helpers.js +182 -0
- package/dist/esm/index.d.ts +16 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +15 -0
- package/dist/esm/indexed-colors.d.ts +2 -0
- package/dist/esm/indexed-colors.d.ts.map +1 -0
- package/dist/esm/indexed-colors.js +75 -0
- package/dist/esm/ods-export.d.ts +24 -0
- package/dist/esm/ods-export.d.ts.map +1 -0
- package/dist/esm/ods-export.js +12 -0
- package/dist/esm/parse.d.ts +24 -0
- package/dist/esm/parse.d.ts.map +1 -0
- package/dist/esm/parse.js +55 -0
- package/dist/esm/power-query.d.ts +41 -0
- package/dist/esm/power-query.d.ts.map +1 -0
- package/dist/esm/power-query.js +19 -0
- package/dist/esm/server.d.ts +9 -0
- package/dist/esm/server.d.ts.map +1 -0
- package/dist/esm/server.js +8 -0
- package/dist/esm/theme1.d.ts +3 -0
- package/dist/esm/theme1.d.ts.map +1 -0
- package/dist/esm/theme1.js +2 -0
- package/dist/esm/tsconfig.esm.tsbuildinfo +1 -0
- package/dist/esm/types.d.ts +14 -0
- package/dist/esm/types.d.ts.map +1 -0
- package/dist/esm/types.js +14 -0
- package/dist/esm/vitest.config.d.ts +3 -0
- package/dist/esm/vitest.config.d.ts.map +1 -0
- package/dist/esm/vitest.config.js +16 -0
- package/package.json +62 -0
- package/xlsx.d.ts +52 -0
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { SpreadsheetTheme } from "@rowsncolumns/spreadsheet";
|
|
2
|
+
/**
|
|
3
|
+
* Generates Excel theme XML from SpreadsheetTheme
|
|
4
|
+
* @param theme - The spreadsheet theme object
|
|
5
|
+
* @returns XML string for Excel theme
|
|
6
|
+
*/
|
|
7
|
+
export declare function generateThemeXml(theme: SpreadsheetTheme): string;
|
|
8
|
+
//# sourceMappingURL=theme-xml-generator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"theme-xml-generator.d.ts","sourceRoot":"","sources":["../../../helpers/theme-xml-generator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAWlE;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,gBAAgB,GAAG,MAAM,CAqBhE"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Converts a hex color to RGB format without the # prefix
|
|
3
|
+
* @param hexColor - Hex color string (e.g., "#5B9BD5")
|
|
4
|
+
* @returns RGB color string without # (e.g., "5B9BD5")
|
|
5
|
+
*/
|
|
6
|
+
function hexToRgb(hexColor) {
|
|
7
|
+
return hexColor.replace("#", "").toUpperCase();
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Generates Excel theme XML from SpreadsheetTheme
|
|
11
|
+
* @param theme - The spreadsheet theme object
|
|
12
|
+
* @returns XML string for Excel theme
|
|
13
|
+
*/
|
|
14
|
+
export function generateThemeXml(theme) {
|
|
15
|
+
var name = theme.name, primaryFontFamily = theme.primaryFontFamily, themeColors = theme.themeColors;
|
|
16
|
+
// Heading (major) typeface. Themes imported before headingFontFamily
|
|
17
|
+
// existed carry only primaryFontFamily — write it to both slots, the
|
|
18
|
+
// prior behavior.
|
|
19
|
+
var headingFontFamily = theme.headingFontFamily || primaryFontFamily;
|
|
20
|
+
// Map theme colors to Excel color scheme elements
|
|
21
|
+
var text1 = hexToRgb(themeColors.text1 || "#000000");
|
|
22
|
+
var background1 = hexToRgb(themeColors.background1 || "#FFFFFF");
|
|
23
|
+
var text2 = hexToRgb(themeColors.text2 || "#44546A");
|
|
24
|
+
var background2 = hexToRgb(themeColors.background2 || "#E7E6E6");
|
|
25
|
+
var accent1 = hexToRgb(themeColors.accent1 || "#5B9BD5");
|
|
26
|
+
var accent2 = hexToRgb(themeColors.accent2 || "#ED7D31");
|
|
27
|
+
var accent3 = hexToRgb(themeColors.accent3 || "#A5A5A5");
|
|
28
|
+
var accent4 = hexToRgb(themeColors.accent4 || "#FFC000");
|
|
29
|
+
var accent5 = hexToRgb(themeColors.accent5 || "#4472C4");
|
|
30
|
+
var accent6 = hexToRgb(themeColors.accent6 || "#70AD47");
|
|
31
|
+
var hyperlink = hexToRgb(themeColors.hyperlink || "#0563C1");
|
|
32
|
+
return "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?><a:theme xmlns:a=\"http://schemas.openxmlformats.org/drawingml/2006/main\" xmlns:r=\"http://schemas.openxmlformats.org/officeDocument/2006/relationships\" name=\"".concat(name, "\"><a:themeElements><a:clrScheme name=\"").concat(name, "\"><a:dk1><a:srgbClr val=\"").concat(text1, "\"/></a:dk1><a:lt1><a:srgbClr val=\"").concat(background1, "\"/></a:lt1><a:dk2><a:srgbClr val=\"").concat(text2, "\"/></a:dk2><a:lt2><a:srgbClr val=\"").concat(background2, "\"/></a:lt2><a:accent1><a:srgbClr val=\"").concat(accent1, "\"/></a:accent1><a:accent2><a:srgbClr val=\"").concat(accent2, "\"/></a:accent2><a:accent3><a:srgbClr val=\"").concat(accent3, "\"/></a:accent3><a:accent4><a:srgbClr val=\"").concat(accent4, "\"/></a:accent4><a:accent5><a:srgbClr val=\"").concat(accent5, "\"/></a:accent5><a:accent6><a:srgbClr val=\"").concat(accent6, "\"/></a:accent6><a:hlink><a:srgbClr val=\"").concat(hyperlink, "\"/></a:hlink><a:folHlink><a:srgbClr val=\"").concat(hyperlink, "\"/></a:folHlink></a:clrScheme><a:fontScheme name=\"").concat(name, "\"><a:majorFont><a:latin typeface=\"").concat(headingFontFamily, "\"/><a:ea typeface=\"").concat(headingFontFamily, "\"/><a:cs typeface=\"").concat(headingFontFamily, "\"/></a:majorFont><a:minorFont><a:latin typeface=\"").concat(primaryFontFamily, "\"/><a:ea typeface=\"").concat(primaryFontFamily, "\"/><a:cs typeface=\"").concat(primaryFontFamily, "\"/></a:minorFont></a:fontScheme><a:fmtScheme name=\"").concat(name, "\"><a:fillStyleLst><a:solidFill><a:schemeClr val=\"phClr\"/></a:solidFill><a:gradFill rotWithShape=\"1\"><a:gsLst><a:gs pos=\"0\"><a:schemeClr val=\"phClr\"><a:lumMod val=\"110000\"/><a:satMod val=\"105000\"/><a:tint val=\"67000\"/></a:schemeClr></a:gs><a:gs pos=\"50000\"><a:schemeClr val=\"phClr\"><a:lumMod val=\"105000\"/><a:satMod val=\"103000\"/><a:tint val=\"73000\"/></a:schemeClr></a:gs><a:gs pos=\"100000\"><a:schemeClr val=\"phClr\"><a:lumMod val=\"105000\"/><a:satMod val=\"109000\"/><a:tint val=\"81000\"/></a:schemeClr></a:gs></a:gsLst><a:lin ang=\"5400000\" scaled=\"0\"/></a:gradFill><a:gradFill rotWithShape=\"1\"><a:gsLst><a:gs pos=\"0\"><a:schemeClr val=\"phClr\"><a:satMod val=\"103000\"/><a:lumMod val=\"102000\"/><a:tint val=\"94000\"/></a:schemeClr></a:gs><a:gs pos=\"50000\"><a:schemeClr val=\"phClr\"><a:satMod val=\"110000\"/><a:lumMod val=\"100000\"/><a:shade val=\"100000\"/></a:schemeClr></a:gs><a:gs pos=\"100000\"><a:schemeClr val=\"phClr\"><a:lumMod val=\"99000\"/><a:satMod val=\"120000\"/><a:shade val=\"78000\"/></a:schemeClr></a:gs></a:gsLst><a:lin ang=\"5400000\" scaled=\"0\"/></a:gradFill></a:fillStyleLst><a:lnStyleLst><a:ln w=\"6350\" cap=\"flat\" cmpd=\"sng\" algn=\"ctr\"><a:solidFill><a:schemeClr val=\"phClr\"/></a:solidFill><a:prstDash val=\"solid\"/><a:miter lim=\"800000\"/></a:ln><a:ln w=\"12700\" cap=\"flat\" cmpd=\"sng\" algn=\"ctr\"><a:solidFill><a:schemeClr val=\"phClr\"/></a:solidFill><a:prstDash val=\"solid\"/><a:miter lim=\"800000\"/></a:ln><a:ln w=\"19050\" cap=\"flat\" cmpd=\"sng\" algn=\"ctr\"><a:solidFill><a:schemeClr val=\"phClr\"/></a:solidFill><a:prstDash val=\"solid\"/><a:miter lim=\"800000\"/></a:ln></a:lnStyleLst><a:effectStyleLst><a:effectStyle><a:effectLst/></a:effectStyle><a:effectStyle><a:effectLst/></a:effectStyle><a:effectStyle><a:effectLst><a:outerShdw blurRad=\"57150\" dist=\"19050\" dir=\"5400000\" algn=\"ctr\" rotWithShape=\"0\"><a:srgbClr val=\"000000\"><a:alpha val=\"63000\"/></a:srgbClr></a:outerShdw></a:effectLst></a:effectStyle></a:effectStyleLst><a:bgFillStyleLst><a:solidFill><a:schemeClr val=\"phClr\"/></a:solidFill><a:solidFill><a:schemeClr val=\"phClr\"><a:tint val=\"95000\"/><a:satMod val=\"170000\"/></a:schemeClr></a:solidFill><a:gradFill rotWithShape=\"1\"><a:gsLst><a:gs pos=\"0\"><a:schemeClr val=\"phClr\"><a:tint val=\"93000\"/><a:satMod val=\"150000\"/><a:shade val=\"98000\"/><a:lumMod val=\"102000\"/></a:schemeClr></a:gs><a:gs pos=\"50000\"><a:schemeClr val=\"phClr\"><a:tint val=\"98000\"/><a:satMod val=\"130000\"/><a:shade val=\"90000\"/><a:lumMod val=\"103000\"/></a:schemeClr></a:gs><a:gs pos=\"100000\"><a:schemeClr val=\"phClr\"><a:shade val=\"63000\"/><a:satMod val=\"120000\"/></a:schemeClr></a:gs></a:gsLst><a:lin ang=\"5400000\" scaled=\"0\"/></a:gradFill></a:bgFillStyleLst></a:fmtScheme></a:themeElements></a:theme>");
|
|
33
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { CellInterface, GridRange } from "@rowsncolumns/common-types";
|
|
2
|
+
export declare const formulaToRelativeReference: (formula: string | undefined, sourceCell: CellInterface, destinationCell: CellInterface, options?: {
|
|
3
|
+
exclusionRange?: GridRange;
|
|
4
|
+
ignoreCircular?: boolean;
|
|
5
|
+
}) => string | undefined;
|
|
6
|
+
export declare const imageUrlToBase64: (imageUrl: string) => Promise<string | undefined>;
|
|
7
|
+
export declare const createDownloadableFile: (filename: string, urlOrBlob: Blob | string) => string | Blob | undefined;
|
|
8
|
+
export declare const toArrayBuffer: (data: ArrayBuffer | Uint8Array) => ArrayBuffer;
|
|
9
|
+
export declare const charsToPixel: (chars: number) => number;
|
|
10
|
+
export declare const pixelToCharacters: (px: number) => number;
|
|
11
|
+
export declare const columnCharsToPixel: (chars: number) => number;
|
|
12
|
+
export declare const columnPixelToChars: (pixel: number) => number;
|
|
13
|
+
/**
|
|
14
|
+
* Get range from address reference with minimal processing
|
|
15
|
+
*/
|
|
16
|
+
export declare function getRangeFromAddressRef(addressRef: string | undefined): {
|
|
17
|
+
startRowIndex: number;
|
|
18
|
+
startColumnIndex: number;
|
|
19
|
+
endRowIndex: number;
|
|
20
|
+
endColumnIndex: number;
|
|
21
|
+
} | undefined;
|
|
22
|
+
/**
|
|
23
|
+
* Checks if a File object is an Excel file
|
|
24
|
+
* @param file - The File object to check
|
|
25
|
+
* @returns boolean - true if the file is an Excel file, false otherwise
|
|
26
|
+
*/
|
|
27
|
+
export declare function isExcelFile(file: File): boolean;
|
|
28
|
+
/**
|
|
29
|
+
* Checks if a File object is a CSV file
|
|
30
|
+
* @param file - The File object to check
|
|
31
|
+
* @returns boolean - true if the file is a CSV file, false otherwise
|
|
32
|
+
*/
|
|
33
|
+
export declare function isCSVFile(file: File): boolean;
|
|
34
|
+
//# sourceMappingURL=helpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AA+B3E,eAAO,MAAM,0BAA0B,GACrC,SAAS,MAAM,GAAG,SAAS,EAC3B,YAAY,aAAa,EACzB,iBAAiB,aAAa,EAC9B,UAAU;IACR,cAAc,CAAC,EAAE,SAAS,CAAC;IAC3B,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,KACA,MAAM,GAAG,SA8BX,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAC3B,UAAU,MAAM,KACf,OAAO,CAAC,MAAM,GAAG,SAAS,CAiB5B,CAAC;AAEF,eAAO,MAAM,sBAAsB,GACjC,UAAU,MAAM,EAChB,WAAW,IAAI,GAAG,MAAM,8BAazB,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,MAAM,WAAW,GAAG,UAAU,KAAG,WAO9D,CAAC;AAIF,eAAO,MAAM,YAAY,GAAI,OAAO,MAAM,WAAiC,CAAC;AAC5E,eAAO,MAAM,iBAAiB,GAAI,IAAI,MAAM,WAA+B,CAAC;AAoB5E,eAAO,MAAM,kBAAkB,GAAI,OAAO,MAAM,WACrB,CAAC;AAE5B,eAAO,MAAM,kBAAkB,GAAI,OAAO,MAAM,WAClB,CAAC;AAE/B;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS;;;;;cAwBpE;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAsB/C;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAe7C"}
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
import { __awaiter, __generator, __read } from "tslib";
|
|
2
|
+
import { addressToCell, canUseDOM } from "@rowsncolumns/utils";
|
|
3
|
+
// ---- Formula helpers ----
|
|
4
|
+
import { alpha2number, number2Alpha } from "@rowsncolumns/utils";
|
|
5
|
+
var CELL_ADDR_RE = /(?:'[^']+'!?|[^'!\s]+!?)?(\$?[A-Z]+\$?\d+)(?::(\$?[A-Z]+\$?\d+))?/g;
|
|
6
|
+
var parseAddr = function (addr) {
|
|
7
|
+
var m = /^(\$?)([A-Z]+)(\$?)(\d+)$/.exec(addr);
|
|
8
|
+
if (!m)
|
|
9
|
+
return null;
|
|
10
|
+
var _a = __read(m, 5), absCol = _a[1], colAlpha = _a[2], absRow = _a[3], rowStr = _a[4];
|
|
11
|
+
return {
|
|
12
|
+
col: alpha2number(colAlpha),
|
|
13
|
+
row: parseInt(rowStr, 10),
|
|
14
|
+
absCol: absCol === "$",
|
|
15
|
+
absRow: absRow === "$",
|
|
16
|
+
};
|
|
17
|
+
};
|
|
18
|
+
var formatAddr = function (row, col, absCol, absRow) {
|
|
19
|
+
var colAlpha = number2Alpha(Math.max(0, col - 1));
|
|
20
|
+
var rowNum = Math.max(1, row);
|
|
21
|
+
return "".concat(absCol ? "$" : "").concat(colAlpha).concat(absRow ? "$" : "").concat(rowNum);
|
|
22
|
+
};
|
|
23
|
+
export var formulaToRelativeReference = function (formula, sourceCell, destinationCell, options) {
|
|
24
|
+
if (!formula)
|
|
25
|
+
return formula;
|
|
26
|
+
if (sourceCell.rowIndex === destinationCell.rowIndex &&
|
|
27
|
+
sourceCell.columnIndex === destinationCell.columnIndex) {
|
|
28
|
+
return formula;
|
|
29
|
+
}
|
|
30
|
+
var dRow = destinationCell.rowIndex - sourceCell.rowIndex;
|
|
31
|
+
var dCol = destinationCell.columnIndex - sourceCell.columnIndex;
|
|
32
|
+
return formula.replace(CELL_ADDR_RE, function (match, left, right) {
|
|
33
|
+
// Only adjust the A1 parts, keep any sheet prefixes as-is
|
|
34
|
+
var adjustOne = function (addr) {
|
|
35
|
+
var p = parseAddr(addr);
|
|
36
|
+
if (!p)
|
|
37
|
+
return addr;
|
|
38
|
+
var newRow = p.absRow ? p.row : p.row + dRow;
|
|
39
|
+
var newCol = p.absCol ? p.col : p.col + dCol;
|
|
40
|
+
return formatAddr(newRow, newCol, p.absCol, p.absRow);
|
|
41
|
+
};
|
|
42
|
+
if (right) {
|
|
43
|
+
// Range A1:B2
|
|
44
|
+
var leftAdjusted = adjustOne(left);
|
|
45
|
+
var rightAdjusted = adjustOne(right);
|
|
46
|
+
return match.replace(left, leftAdjusted).replace(right, rightAdjusted);
|
|
47
|
+
}
|
|
48
|
+
var singleAdjusted = adjustOne(left);
|
|
49
|
+
return match.replace(left, singleAdjusted);
|
|
50
|
+
});
|
|
51
|
+
};
|
|
52
|
+
export var imageUrlToBase64 = function (imageUrl) { return __awaiter(void 0, void 0, void 0, function () {
|
|
53
|
+
return __generator(this, function (_a) {
|
|
54
|
+
return [2 /*return*/, new Promise(function (resolve, reject) {
|
|
55
|
+
var xhr = new XMLHttpRequest();
|
|
56
|
+
xhr.onload = function () {
|
|
57
|
+
var reader = new FileReader();
|
|
58
|
+
reader.onloadend = function () {
|
|
59
|
+
resolve(reader.result);
|
|
60
|
+
};
|
|
61
|
+
reader.readAsDataURL(xhr.response);
|
|
62
|
+
};
|
|
63
|
+
xhr.onerror = function () {
|
|
64
|
+
reject();
|
|
65
|
+
};
|
|
66
|
+
xhr.open("GET", imageUrl);
|
|
67
|
+
xhr.responseType = "blob";
|
|
68
|
+
xhr.send();
|
|
69
|
+
})];
|
|
70
|
+
});
|
|
71
|
+
}); };
|
|
72
|
+
export var createDownloadableFile = function (filename, urlOrBlob) {
|
|
73
|
+
if (!canUseDOM) {
|
|
74
|
+
return urlOrBlob;
|
|
75
|
+
}
|
|
76
|
+
var url = urlOrBlob instanceof Blob
|
|
77
|
+
? window.URL.createObjectURL(urlOrBlob)
|
|
78
|
+
: urlOrBlob;
|
|
79
|
+
var anchor = document.createElement("a");
|
|
80
|
+
anchor.href = url;
|
|
81
|
+
anchor.download = filename;
|
|
82
|
+
anchor.dispatchEvent(new MouseEvent("click"));
|
|
83
|
+
};
|
|
84
|
+
export var toArrayBuffer = function (data) {
|
|
85
|
+
if (data instanceof Uint8Array) {
|
|
86
|
+
var bytes = new Uint8Array(data.byteLength);
|
|
87
|
+
bytes.set(data);
|
|
88
|
+
return bytes.buffer;
|
|
89
|
+
}
|
|
90
|
+
return data;
|
|
91
|
+
};
|
|
92
|
+
// 10 = 65 pixels
|
|
93
|
+
export var charsToPixel = function (chars) { return Math.ceil((96 / 72) * chars); };
|
|
94
|
+
export var pixelToCharacters = function (px) { return Math.floor((72 / 96) * px); };
|
|
95
|
+
// 33.25 (excels) = 265 (google sheets)
|
|
96
|
+
// export const dimensionToPixel = (chWidth: number) =>
|
|
97
|
+
// Math.ceil((265 / 33.25) * chWidth);
|
|
98
|
+
// export const pixelToDimension = (chWidth: number) =>
|
|
99
|
+
// Math.ceil((33.25 / 265) * chWidth);
|
|
100
|
+
// // const dimensionToPixel = (chWidth: number) => (72 / 30) * chWidth;
|
|
101
|
+
// Excel column-width / pixel conversion. Excel's rendered column box
|
|
102
|
+
// includes a 5-pixel padding around the MDW (max-digit-width, 7 px for
|
|
103
|
+
// Calibri 11), so the default width 8.43 renders at 64 px (8.43 × 7 + 5).
|
|
104
|
+
// We keep the +5 padding form so a round-trip pixels → width → pixels is
|
|
105
|
+
// an identity for the values Excel itself produces.
|
|
106
|
+
//
|
|
107
|
+
// pixels = floor(widthChars × 7 + 5)
|
|
108
|
+
// widthChars = (pixels − 5) / 7
|
|
109
|
+
//
|
|
110
|
+
// The "pure" ECMA-376 §18.3.1.13 formula omits the 5px padding and gives
|
|
111
|
+
// 59 for default-width columns instead of Excel's actual 64.
|
|
112
|
+
export var columnCharsToPixel = function (chars) {
|
|
113
|
+
return Math.floor(chars * 7 + 5);
|
|
114
|
+
};
|
|
115
|
+
export var columnPixelToChars = function (pixel) {
|
|
116
|
+
return Math.max(0, (pixel - 5) / 7);
|
|
117
|
+
};
|
|
118
|
+
/**
|
|
119
|
+
* Get range from address reference with minimal processing
|
|
120
|
+
*/
|
|
121
|
+
export function getRangeFromAddressRef(addressRef) {
|
|
122
|
+
if (!addressRef)
|
|
123
|
+
return undefined;
|
|
124
|
+
try {
|
|
125
|
+
var cleanAddress = addressRef.replace(/\$/gi, "");
|
|
126
|
+
var _a = __read(cleanAddress.split(":"), 2), from = _a[0], to = _a[1];
|
|
127
|
+
var topBound = addressToCell(from);
|
|
128
|
+
if (!topBound)
|
|
129
|
+
return undefined;
|
|
130
|
+
// If no "to" part exists (single cell), use the same cell for both start and end
|
|
131
|
+
var bottomBound = to ? addressToCell(to) : topBound;
|
|
132
|
+
if (!bottomBound)
|
|
133
|
+
return undefined;
|
|
134
|
+
return {
|
|
135
|
+
startRowIndex: topBound.rowIndex,
|
|
136
|
+
startColumnIndex: topBound.columnIndex,
|
|
137
|
+
endRowIndex: bottomBound.rowIndex,
|
|
138
|
+
endColumnIndex: bottomBound.columnIndex,
|
|
139
|
+
};
|
|
140
|
+
}
|
|
141
|
+
catch (err) {
|
|
142
|
+
console.warn("Error parsing address reference:", err);
|
|
143
|
+
return undefined;
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Checks if a File object is an Excel file
|
|
148
|
+
* @param file - The File object to check
|
|
149
|
+
* @returns boolean - true if the file is an Excel file, false otherwise
|
|
150
|
+
*/
|
|
151
|
+
export function isExcelFile(file) {
|
|
152
|
+
var excelMimeTypes = [
|
|
153
|
+
"application/vnd.ms-excel", // .xls
|
|
154
|
+
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", // .xlsx
|
|
155
|
+
"application/vnd.ms-excel.sheet.binary.macroenabled.12", // .xlsb
|
|
156
|
+
"application/vnd.ms-excel.sheet.macroenabled.12", // .xlsm
|
|
157
|
+
"application/vnd.ms-excel.template.macroenabled.12", // .xltm
|
|
158
|
+
"application/vnd.openxmlformats-officedocument.spreadsheetml.template", // .xltx
|
|
159
|
+
"application/vnd.oasis.opendocument.spreadsheet", // ods
|
|
160
|
+
];
|
|
161
|
+
var excelExtensions = [".xls", ".xlsx", ".xlsb", ".xlsm", ".xltx", ".xltm"];
|
|
162
|
+
var fileType = file.type.toLowerCase();
|
|
163
|
+
// Check MIME type first
|
|
164
|
+
if (excelMimeTypes.includes(fileType)) {
|
|
165
|
+
return true;
|
|
166
|
+
}
|
|
167
|
+
// Fallback to file extension check (in case MIME type is not set correctly)
|
|
168
|
+
var fileName = file.name.toLowerCase();
|
|
169
|
+
return excelExtensions.some(function (ext) { return fileName.endsWith(ext); });
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* Checks if a File object is a CSV file
|
|
173
|
+
* @param file - The File object to check
|
|
174
|
+
* @returns boolean - true if the file is a CSV file, false otherwise
|
|
175
|
+
*/
|
|
176
|
+
export function isCSVFile(file) {
|
|
177
|
+
var csvMimeTypes = [
|
|
178
|
+
"text/csv",
|
|
179
|
+
"application/csv",
|
|
180
|
+
"text/comma-separated-values",
|
|
181
|
+
];
|
|
182
|
+
// Check MIME type first
|
|
183
|
+
if (csvMimeTypes.includes(file.type)) {
|
|
184
|
+
return true;
|
|
185
|
+
}
|
|
186
|
+
// Fallback to file extension check
|
|
187
|
+
var fileName = file.name.toLowerCase();
|
|
188
|
+
return fileName.endsWith(".csv");
|
|
189
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export { createRowDataFromCSVFile, createRowDataFromCSVString, createCellDataArrayFromCSVString, parseCSV, } from "./csv-import";
|
|
2
|
+
export { createCSVFromSheetData, exportToCSV } from "./csv-export";
|
|
3
|
+
export { createRowDataFromFile, readImageFileAsDataUri, getImageDimensionsFromUrl, SUPPORTED_FILE_TYPES, } from "./parse";
|
|
4
|
+
export { exportToExcel } from "./excel-export";
|
|
5
|
+
export { createExcelFile } from "./exporter/xlsx/xlsx-export";
|
|
6
|
+
export { createODSFile, exportToODS } from "./ods-export";
|
|
7
|
+
export { createDownloadableFile, isCSVFile, isExcelFile } from "./helpers";
|
|
8
|
+
export { createExcelImportWorker } from "./excel-import-worker";
|
|
9
|
+
export { createExcelImportSession, type ExcelImportSession, type ExcelSessionLoadSheetOptions, type ExcelSessionOpenResult, type ExcelSessionOpenSuccess, type ExcelSessionPasswordRequired, type ExcelSessionSheetChunk, type ExcelSessionSheetComplete, } from "./excel-import-session";
|
|
10
|
+
export { createCSVImportWorker } from "./csv-import-worker";
|
|
11
|
+
export { RequestType, ResponseType, type WorkerRequest, type WorkerResponse, type ExternalLink, type SheetCatalogEntry, } from "./excel-parser/types";
|
|
12
|
+
export { CsvRequestType, CsvResponseType, type CsvWorkerRequest, type CsvWorkerResponse, } from "./csv-parser/types";
|
|
13
|
+
export { readExcelFile } from "./excel-parser/helpers";
|
|
14
|
+
export { WorkBook } from "./excel-parser/workbook";
|
|
15
|
+
export { hasPowerQueryParts, type PowerQueryCustomXmlItem, type PowerQueryParts, type PowerQueryTable, type PowerQueryTableColumn, } from "./power-query";
|
|
16
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,0BAA0B,EAC1B,gCAAgC,EAChC,QAAQ,GACT,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,sBAAsB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACnE,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,yBAAyB,EACzB,oBAAoB,GACrB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAC3E,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EACL,wBAAwB,EACxB,KAAK,kBAAkB,EACvB,KAAK,4BAA4B,EACjC,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,EAC5B,KAAK,4BAA4B,EACjC,KAAK,sBAAsB,EAC3B,KAAK,yBAAyB,GAC/B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EACL,WAAW,EACX,YAAY,EACZ,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,iBAAiB,GACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,cAAc,EACd,eAAe,EACf,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,GACvB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EACL,kBAAkB,EAClB,KAAK,uBAAuB,EAC5B,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,qBAAqB,GAC3B,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export { createRowDataFromCSVFile, createRowDataFromCSVString, createCellDataArrayFromCSVString, parseCSV, } from "./csv-import";
|
|
2
|
+
export { createCSVFromSheetData, exportToCSV } from "./csv-export";
|
|
3
|
+
export { createRowDataFromFile, readImageFileAsDataUri, getImageDimensionsFromUrl, SUPPORTED_FILE_TYPES, } from "./parse";
|
|
4
|
+
export { exportToExcel } from "./excel-export";
|
|
5
|
+
export { createExcelFile } from "./exporter/xlsx/xlsx-export";
|
|
6
|
+
export { createODSFile, exportToODS } from "./ods-export";
|
|
7
|
+
export { createDownloadableFile, isCSVFile, isExcelFile } from "./helpers";
|
|
8
|
+
export { createExcelImportWorker } from "./excel-import-worker";
|
|
9
|
+
export { createExcelImportSession, } from "./excel-import-session";
|
|
10
|
+
export { createCSVImportWorker } from "./csv-import-worker";
|
|
11
|
+
export { RequestType, ResponseType, } from "./excel-parser/types";
|
|
12
|
+
export { CsvRequestType, CsvResponseType, } from "./csv-parser/types";
|
|
13
|
+
export { readExcelFile } from "./excel-parser/helpers";
|
|
14
|
+
export { WorkBook } from "./excel-parser/workbook";
|
|
15
|
+
export { hasPowerQueryParts, } from "./power-query";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"indexed-colors.d.ts","sourceRoot":"","sources":["../../indexed-colors.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,aAAa,mBAyExB,CAAC"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
// Excel indexed colors mapping used for legacy color references
|
|
2
|
+
export var IndexedColors = Object.freeze([
|
|
3
|
+
// 0-7
|
|
4
|
+
"#000000",
|
|
5
|
+
"#FFFFFF",
|
|
6
|
+
"#FF0000",
|
|
7
|
+
"#00FF00",
|
|
8
|
+
"#0000FF",
|
|
9
|
+
"#FFFF00",
|
|
10
|
+
"#FF00FF",
|
|
11
|
+
"#00FFFF",
|
|
12
|
+
// 8-15
|
|
13
|
+
"#000000",
|
|
14
|
+
"#FFFFFF",
|
|
15
|
+
"#FF0000",
|
|
16
|
+
"#00FF00",
|
|
17
|
+
"#0000FF",
|
|
18
|
+
"#FFFF00",
|
|
19
|
+
"#FF00FF",
|
|
20
|
+
"#00FFFF",
|
|
21
|
+
// 16-23
|
|
22
|
+
"#800000",
|
|
23
|
+
"#008000",
|
|
24
|
+
"#000080",
|
|
25
|
+
"#808000",
|
|
26
|
+
"#800080",
|
|
27
|
+
"#008080",
|
|
28
|
+
"#C0C0C0",
|
|
29
|
+
"#808080",
|
|
30
|
+
// 24-31
|
|
31
|
+
"#9999FF",
|
|
32
|
+
"#993366",
|
|
33
|
+
"#FFFFCC",
|
|
34
|
+
"#CCFFFF",
|
|
35
|
+
"#660066",
|
|
36
|
+
"#FF8080",
|
|
37
|
+
"#0066CC",
|
|
38
|
+
"#CCCCFF",
|
|
39
|
+
// 32-39
|
|
40
|
+
"#000080",
|
|
41
|
+
"#FF00FF",
|
|
42
|
+
"#FFFF00",
|
|
43
|
+
"#00FFFF",
|
|
44
|
+
"#800080",
|
|
45
|
+
"#800000",
|
|
46
|
+
"#008080",
|
|
47
|
+
"#0000FF",
|
|
48
|
+
// 40-47
|
|
49
|
+
"#00CCFF",
|
|
50
|
+
"#CCFFFF",
|
|
51
|
+
"#CCFFCC",
|
|
52
|
+
"#FFFF99",
|
|
53
|
+
"#99CCFF",
|
|
54
|
+
"#FF99CC",
|
|
55
|
+
"#CC99FF",
|
|
56
|
+
"#FFCC99",
|
|
57
|
+
// 48-55
|
|
58
|
+
"#3366FF",
|
|
59
|
+
"#33CCCC",
|
|
60
|
+
"#99CC00",
|
|
61
|
+
"#FFCC00",
|
|
62
|
+
"#FF9900",
|
|
63
|
+
"#FF6600",
|
|
64
|
+
"#666699",
|
|
65
|
+
"#969696",
|
|
66
|
+
// 56-63
|
|
67
|
+
"#003366",
|
|
68
|
+
"#339966",
|
|
69
|
+
"#003300",
|
|
70
|
+
"#333300",
|
|
71
|
+
"#993300",
|
|
72
|
+
"#993366",
|
|
73
|
+
"#333399",
|
|
74
|
+
"#333333",
|
|
75
|
+
]);
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { CellData, ConditionalFormatRule, DataValidationRuleRecord, EmbeddedChart, EmbeddedObject, NamedRange, Sheet, SpreadsheetTheme, TableView } from "@rowsncolumns/spreadsheet";
|
|
2
|
+
import type { Citation, IterativeCalculationOptions } from "@rowsncolumns/common-types";
|
|
3
|
+
import type { CellXfs, SharedStrings } from "@rowsncolumns/spreadsheet-state";
|
|
4
|
+
import { type SheetData } from "@rowsncolumns/common-types";
|
|
5
|
+
export type ExportOdsProps<S extends Sheet, T extends CellData, C extends Citation> = {
|
|
6
|
+
sheets: S[];
|
|
7
|
+
sheetData: SheetData<T>;
|
|
8
|
+
sharedStrings?: SharedStrings;
|
|
9
|
+
tables?: TableView[];
|
|
10
|
+
conditionalFormats?: ConditionalFormatRule[];
|
|
11
|
+
dataValidations?: DataValidationRuleRecord[];
|
|
12
|
+
cellXfs?: CellXfs | null;
|
|
13
|
+
theme?: SpreadsheetTheme;
|
|
14
|
+
embeds?: EmbeddedObject[];
|
|
15
|
+
charts?: EmbeddedChart[];
|
|
16
|
+
namedRanges?: NamedRange[];
|
|
17
|
+
iterativeCalculationOptions?: IterativeCalculationOptions;
|
|
18
|
+
citations?: Citation[];
|
|
19
|
+
};
|
|
20
|
+
export declare const createODSFile: <S extends Sheet, T extends CellData, C extends Citation>(props: ExportOdsProps<S, T, C>) => Promise<ArrayBuffer>;
|
|
21
|
+
export declare const exportToODS: <S extends Sheet, T extends CellData, C extends Citation>({ filename, ...rest }: ExportOdsProps<S, T, C> & {
|
|
22
|
+
filename: string;
|
|
23
|
+
}) => Promise<string | Blob | undefined>;
|
|
24
|
+
//# sourceMappingURL=ods-export.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ods-export.d.ts","sourceRoot":"","sources":["../../ods-export.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,QAAQ,EACR,qBAAqB,EACrB,wBAAwB,EACxB,aAAa,EACb,cAAc,EACd,UAAU,EACV,KAAK,EACL,gBAAgB,EAChB,SAAS,EACV,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EACV,QAAQ,EACR,2BAA2B,EAC5B,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAK5D,MAAM,MAAM,cAAc,CACxB,CAAC,SAAS,KAAK,EACf,CAAC,SAAS,QAAQ,EAClB,CAAC,SAAS,QAAQ,IAChB;IACF,MAAM,EAAE,CAAC,EAAE,CAAC;IACZ,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;IACxB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC;IACrB,kBAAkB,CAAC,EAAE,qBAAqB,EAAE,CAAC;IAC7C,eAAe,CAAC,EAAE,wBAAwB,EAAE,CAAC;IAC7C,OAAO,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACzB,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,MAAM,CAAC,EAAE,cAAc,EAAE,CAAC;IAC1B,MAAM,CAAC,EAAE,aAAa,EAAE,CAAC;IACzB,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;IAC3B,2BAA2B,CAAC,EAAE,2BAA2B,CAAC;IAC1D,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;CACxB,CAAC;AAEF,eAAO,MAAM,aAAa,GACxB,CAAC,SAAS,KAAK,EACf,CAAC,SAAS,QAAQ,EAClB,CAAC,SAAS,QAAQ,EAElB,OAAO,cAAc,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,yBAG/B,CAAC;AAEF,eAAO,MAAM,WAAW,GACtB,CAAC,SAAS,KAAK,EACf,CAAC,SAAS,QAAQ,EAClB,CAAC,SAAS,QAAQ,EAClB,uBAGC,cAAc,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,uCAMhD,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { __awaiter, __generator, __rest } from "tslib";
|
|
2
|
+
import { createODSFile as createOdsExport } from "./exporter/ods/ods-export";
|
|
3
|
+
import { createDownloadableFile, toArrayBuffer } from "./helpers";
|
|
4
|
+
export var createODSFile = function (props) { return __awaiter(void 0, void 0, void 0, function () {
|
|
5
|
+
return __generator(this, function (_a) {
|
|
6
|
+
return [2 /*return*/, createOdsExport(props)];
|
|
7
|
+
});
|
|
8
|
+
}); };
|
|
9
|
+
export var exportToODS = function (_a) { return __awaiter(void 0, void 0, void 0, function () {
|
|
10
|
+
var buffer, blob;
|
|
11
|
+
var filename = _a.filename, rest = __rest(_a, ["filename"]);
|
|
12
|
+
return __generator(this, function (_b) {
|
|
13
|
+
switch (_b.label) {
|
|
14
|
+
case 0: return [4 /*yield*/, createOdsExport(rest)];
|
|
15
|
+
case 1:
|
|
16
|
+
buffer = _b.sent();
|
|
17
|
+
blob = new Blob([toArrayBuffer(buffer)], {
|
|
18
|
+
type: "application/vnd.oasis.opendocument.spreadsheet",
|
|
19
|
+
});
|
|
20
|
+
return [2 /*return*/, createDownloadableFile("".concat(filename, ".ods"), blob)];
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
}); };
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { CellData } from "@rowsncolumns/spreadsheet";
|
|
2
|
+
export declare enum SUPPORTED_FILE_TYPES {
|
|
3
|
+
CSV = "text/csv",
|
|
4
|
+
CSV_TAB_SEPARATED = "text/tab-separated-values",
|
|
5
|
+
XLS = "application/vnd.ms-excel",
|
|
6
|
+
EXCEL = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
|
|
7
|
+
XLSB = "application/vnd.ms-excel.sheet.binary.macroenabled.12",
|
|
8
|
+
XLSM = "application/vnd.ms-excel.sheet.macroenabled.12",
|
|
9
|
+
ODS = "application/vnd.oasis.opendocument.spreadsheet"
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Parse CSV file object
|
|
13
|
+
* @param file
|
|
14
|
+
* @returns
|
|
15
|
+
*/
|
|
16
|
+
export declare const createRowDataFromFile: <T extends CellData>(file: File, locale: string) => Promise<import("@rowsncolumns/common-types").RowData<T>[]>;
|
|
17
|
+
/**
|
|
18
|
+
* Read file as data URI
|
|
19
|
+
* @param file
|
|
20
|
+
* @returns
|
|
21
|
+
*/
|
|
22
|
+
export declare const readImageFileAsDataUri: (file: File) => Promise<[uri: string, width: number, height: number]>;
|
|
23
|
+
export declare const getImageDimensionsFromUrl: (url: string) => Promise<[width: number, height: number] | undefined>;
|
|
24
|
+
//# sourceMappingURL=parse.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../parse.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAI1D,oBAAY,oBAAoB;IAC9B,GAAG,aAAa;IAChB,iBAAiB,8BAA8B;IAC/C,GAAG,6BAA6B;IAChC,KAAK,sEAAsE;IAC3E,IAAI,0DAA0D;IAC9D,IAAI,mDAAmD;IACvD,GAAG,mDAAmD;CACvD;AAED;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,GAAU,CAAC,SAAS,QAAQ,EAC5D,MAAM,IAAI,EACV,QAAQ,MAAM,+DAWf,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,GAAU,MAAM,IAAI,0DAmBtD,CAAC;AAEF,eAAO,MAAM,yBAAyB,GACpC,KAAK,MAAM,KACV,OAAO,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAQrD,CAAC"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { __awaiter, __generator } from "tslib";
|
|
2
|
+
import { createRowDataFromCSVFile } from "./csv-import";
|
|
3
|
+
export var SUPPORTED_FILE_TYPES;
|
|
4
|
+
(function (SUPPORTED_FILE_TYPES) {
|
|
5
|
+
SUPPORTED_FILE_TYPES["CSV"] = "text/csv";
|
|
6
|
+
SUPPORTED_FILE_TYPES["CSV_TAB_SEPARATED"] = "text/tab-separated-values";
|
|
7
|
+
SUPPORTED_FILE_TYPES["XLS"] = "application/vnd.ms-excel";
|
|
8
|
+
SUPPORTED_FILE_TYPES["EXCEL"] = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
|
|
9
|
+
SUPPORTED_FILE_TYPES["XLSB"] = "application/vnd.ms-excel.sheet.binary.macroenabled.12";
|
|
10
|
+
SUPPORTED_FILE_TYPES["XLSM"] = "application/vnd.ms-excel.sheet.macroenabled.12";
|
|
11
|
+
SUPPORTED_FILE_TYPES["ODS"] = "application/vnd.oasis.opendocument.spreadsheet";
|
|
12
|
+
})(SUPPORTED_FILE_TYPES || (SUPPORTED_FILE_TYPES = {}));
|
|
13
|
+
/**
|
|
14
|
+
* Parse CSV file object
|
|
15
|
+
* @param file
|
|
16
|
+
* @returns
|
|
17
|
+
*/
|
|
18
|
+
export var createRowDataFromFile = function (file, locale) { return __awaiter(void 0, void 0, void 0, function () {
|
|
19
|
+
var type;
|
|
20
|
+
return __generator(this, function (_a) {
|
|
21
|
+
type = file.type;
|
|
22
|
+
switch (type) {
|
|
23
|
+
case SUPPORTED_FILE_TYPES.CSV:
|
|
24
|
+
case SUPPORTED_FILE_TYPES.CSV_TAB_SEPARATED:
|
|
25
|
+
return [2 /*return*/, createRowDataFromCSVFile(file, true, locale)];
|
|
26
|
+
default:
|
|
27
|
+
throw "File type is not support";
|
|
28
|
+
}
|
|
29
|
+
return [2 /*return*/];
|
|
30
|
+
});
|
|
31
|
+
}); };
|
|
32
|
+
/**
|
|
33
|
+
* Read file as data URI
|
|
34
|
+
* @param file
|
|
35
|
+
* @returns
|
|
36
|
+
*/
|
|
37
|
+
export var readImageFileAsDataUri = function (file) { return __awaiter(void 0, void 0, void 0, function () {
|
|
38
|
+
var resolver, sheetPromise, reader;
|
|
39
|
+
return __generator(this, function (_a) {
|
|
40
|
+
sheetPromise = new Promise(function (resolve) { return (resolver = resolve); });
|
|
41
|
+
reader = new FileReader();
|
|
42
|
+
reader.onload = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
43
|
+
var image;
|
|
44
|
+
return __generator(this, function (_a) {
|
|
45
|
+
image = new Image();
|
|
46
|
+
image.onload = function () {
|
|
47
|
+
resolver([reader.result, image.width, image.height]);
|
|
48
|
+
};
|
|
49
|
+
image.src = reader.result;
|
|
50
|
+
return [2 /*return*/];
|
|
51
|
+
});
|
|
52
|
+
}); };
|
|
53
|
+
/* Start reading the file */
|
|
54
|
+
reader.readAsDataURL(file);
|
|
55
|
+
return [2 /*return*/, sheetPromise];
|
|
56
|
+
});
|
|
57
|
+
}); };
|
|
58
|
+
export var getImageDimensionsFromUrl = function (url) { return __awaiter(void 0, void 0, void 0, function () {
|
|
59
|
+
return __generator(this, function (_a) {
|
|
60
|
+
return [2 /*return*/, new Promise(function (resolve, reject) {
|
|
61
|
+
var img = new Image();
|
|
62
|
+
img.onload = function () { return resolve([img.naturalWidth, img.naturalHeight]); };
|
|
63
|
+
img.onerror = function (err) { return reject(err); };
|
|
64
|
+
img.crossOrigin = "anonymous";
|
|
65
|
+
img.src = url;
|
|
66
|
+
})];
|
|
67
|
+
});
|
|
68
|
+
}); };
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Power Query preservation envelope — the workbook's Get & Transform machinery, preserved as
|
|
3
|
+
* verbatim part XML so a round-tripped file keeps its queries. The JS mirror of the Rust engine's
|
|
4
|
+
* `LoadDocument.powerQuery` wire shape (`rnc-import`'s `queries` module / `rnc-export`'s
|
|
5
|
+
* `inject_power_query`), so an envelope read by either importer can be re-emitted by either
|
|
6
|
+
* exporter.
|
|
7
|
+
*
|
|
8
|
+
* Excel persists Power Query across three part families, none of which the engine evaluates:
|
|
9
|
+
* - `customXml/item{N}.xml` — the `<DataMashup>` blob ([MS-QDEFF]: the M source for every query +
|
|
10
|
+
* its load metadata), paired with `customXml/itemProps{N}.xml`, related from `xl/workbook.xml`.
|
|
11
|
+
* - `xl/connections.xml` — one `<connection>` per loaded query (`Provider=Microsoft.Mashup.OleDb.1`).
|
|
12
|
+
* - `xl/queryTables/queryTable{N}.xml` — binds a connection to the ListObject it fills; related FROM
|
|
13
|
+
* the table part, whose `<tableColumn>`s carry `queryTableFieldId`s.
|
|
14
|
+
*/
|
|
15
|
+
/** A preserved DataMashup `customXml` item + its `itemProps` part (verbatim XML). */
|
|
16
|
+
export type PowerQueryCustomXmlItem = {
|
|
17
|
+
itemXml: string;
|
|
18
|
+
propsXml?: string;
|
|
19
|
+
};
|
|
20
|
+
/** One `<tableColumn>` of the original query table (original `id` + `queryTableFieldId`). */
|
|
21
|
+
export type PowerQueryTableColumn = {
|
|
22
|
+
name: string;
|
|
23
|
+
/** The original `<tableColumn id=…>` — the queryTable part's `tableColumnId`s reference these. */
|
|
24
|
+
id: string;
|
|
25
|
+
queryTableFieldId?: string;
|
|
26
|
+
};
|
|
27
|
+
/** A preserved `queryTable` part plus its original table linkage (title match key + column ids). */
|
|
28
|
+
export type PowerQueryTable = {
|
|
29
|
+
tableTitle: string;
|
|
30
|
+
partXml: string;
|
|
31
|
+
columns: PowerQueryTableColumn[];
|
|
32
|
+
};
|
|
33
|
+
/** The whole preservation envelope. Every field optional — absent families were absent on import. */
|
|
34
|
+
export type PowerQueryParts = {
|
|
35
|
+
customXmlParts?: PowerQueryCustomXmlItem[];
|
|
36
|
+
connectionsXml?: string;
|
|
37
|
+
queryTables?: PowerQueryTable[];
|
|
38
|
+
};
|
|
39
|
+
/** Whether the envelope carries anything worth emitting. */
|
|
40
|
+
export declare const hasPowerQueryParts: (parts: PowerQueryParts | undefined | null) => parts is PowerQueryParts;
|
|
41
|
+
//# sourceMappingURL=power-query.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"power-query.d.ts","sourceRoot":"","sources":["../../power-query.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,qFAAqF;AACrF,MAAM,MAAM,uBAAuB,GAAG;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,6FAA6F;AAC7F,MAAM,MAAM,qBAAqB,GAAG;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,kGAAkG;IAClG,EAAE,EAAE,MAAM,CAAC;IACX,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,oGAAoG;AACpG,MAAM,MAAM,eAAe,GAAG;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,qBAAqB,EAAE,CAAC;CAClC,CAAC;AAEF,qGAAqG;AACrG,MAAM,MAAM,eAAe,GAAG;IAC5B,cAAc,CAAC,EAAE,uBAAuB,EAAE,CAAC;IAC3C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,eAAe,EAAE,CAAC;CACjC,CAAC;AAEF,4DAA4D;AAC5D,eAAO,MAAM,kBAAkB,GAC7B,OAAO,eAAe,GAAG,SAAS,GAAG,IAAI,KACxC,KAAK,IAAI,eAMT,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Power Query preservation envelope — the workbook's Get & Transform machinery, preserved as
|
|
3
|
+
* verbatim part XML so a round-tripped file keeps its queries. The JS mirror of the Rust engine's
|
|
4
|
+
* `LoadDocument.powerQuery` wire shape (`rnc-import`'s `queries` module / `rnc-export`'s
|
|
5
|
+
* `inject_power_query`), so an envelope read by either importer can be re-emitted by either
|
|
6
|
+
* exporter.
|
|
7
|
+
*
|
|
8
|
+
* Excel persists Power Query across three part families, none of which the engine evaluates:
|
|
9
|
+
* - `customXml/item{N}.xml` — the `<DataMashup>` blob ([MS-QDEFF]: the M source for every query +
|
|
10
|
+
* its load metadata), paired with `customXml/itemProps{N}.xml`, related from `xl/workbook.xml`.
|
|
11
|
+
* - `xl/connections.xml` — one `<connection>` per loaded query (`Provider=Microsoft.Mashup.OleDb.1`).
|
|
12
|
+
* - `xl/queryTables/queryTable{N}.xml` — binds a connection to the ListObject it fills; related FROM
|
|
13
|
+
* the table part, whose `<tableColumn>`s carry `queryTableFieldId`s.
|
|
14
|
+
*/
|
|
15
|
+
/** Whether the envelope carries anything worth emitting. */
|
|
16
|
+
export var hasPowerQueryParts = function (parts) {
|
|
17
|
+
var _a, _b, _c, _d;
|
|
18
|
+
return Boolean(parts &&
|
|
19
|
+
(((_b = (_a = parts.customXmlParts) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0) > 0 ||
|
|
20
|
+
parts.connectionsXml ||
|
|
21
|
+
((_d = (_c = parts.queryTables) === null || _c === void 0 ? void 0 : _c.length) !== null && _d !== void 0 ? _d : 0) > 0));
|
|
22
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export { detectValueTypeAndPattern } from "./excel-parser/plugins/xlsx/value-type-detection";
|
|
2
|
+
export { WorkBook } from "./excel-parser/workbook";
|
|
3
|
+
export { readExcelFile } from "./excel-parser/helpers";
|
|
4
|
+
export { buildCellData } from "./csv-parser/helpers";
|
|
5
|
+
export { RequestType, ResponseType, type WorkerRequest, type WorkerResponse, } from "./excel-parser/types";
|
|
6
|
+
export { createCSVFromSheetData } from "./csv-export";
|
|
7
|
+
export { createODSFile } from "./ods-export";
|
|
8
|
+
export { createExcelFile } from "./exporter/xlsx/xlsx-export";
|
|
9
|
+
//# sourceMappingURL=server.d.ts.map
|