UNPKG

read-excel-file

Version:

Read `.xlsx` files in a web browser or in Node.js

33 lines (32 loc) 1.38 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = unpackXlsxFile; var _unzipFromArrayBuffer = _interopRequireDefault(require("../zip/unzipFromArrayBuffer.js")); var _convertValuesFromUint8ArraysToStrings = _interopRequireDefault(require("./convertValuesFromUint8ArraysToStrings.js")); var _filterZipArchiveEntry = _interopRequireDefault(require("./filterZipArchiveEntry.js")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } /** * Unpacks `*.xlsx` file contents. * An `.xlsx` file is really just a `.zip` archive with `.xml` files inside. * @param {(Blob|ArrayBuffer)} input * @return {Promise<Record<string,string>} Resolves to an object holding `*.xlsx` file entries. */ function unpackXlsxFile(input) { return getArrayBuffer(input).then(function (arrayBuffer) { return (0, _unzipFromArrayBuffer["default"])(arrayBuffer, { filter: _filterZipArchiveEntry["default"] }); }).then(_convertValuesFromUint8ArraysToStrings["default"]); } function getArrayBuffer(input) { if (input instanceof Blob) { return input.arrayBuffer(); } if (input instanceof ArrayBuffer) { return Promise.resolve(input); } throw new TypeError('Unuspported input. Expected a `Blob` or an `ArrayBuffer`'); } //# sourceMappingURL=unpackXlsxFileUniversal.js.map