89 lines
2.4 KiB
JavaScript
89 lines
2.4 KiB
JavaScript
"use strict";
|
|
|
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
|
|
exports.__esModule = true;
|
|
exports.default = exports.build = exports.parseMetadata = exports.parse = void 0;
|
|
|
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
|
|
var _xlsx = _interopRequireDefault(require("xlsx"));
|
|
|
|
var _bufferFrom = _interopRequireDefault(require("buffer-from"));
|
|
|
|
var _helpers = require("./helpers");
|
|
|
|
var _workbook = _interopRequireDefault(require("./workbook"));
|
|
|
|
var parse = function parse(mixed, options) {
|
|
if (options === void 0) {
|
|
options = {};
|
|
}
|
|
|
|
var workSheet = _xlsx.default[(0, _helpers.isString)(mixed) ? 'readFile' : 'read'](mixed, options);
|
|
|
|
return Object.keys(workSheet.Sheets).map(function (name) {
|
|
var sheet = workSheet.Sheets[name];
|
|
return {
|
|
name,
|
|
data: _xlsx.default.utils.sheet_to_json(sheet, {
|
|
header: 1,
|
|
raw: options.raw !== false,
|
|
range: options.range ? options.range[name] : null
|
|
})
|
|
};
|
|
});
|
|
};
|
|
|
|
exports.parse = parse;
|
|
|
|
var parseMetadata = function parseMetadata(mixed, options) {
|
|
if (options === void 0) {
|
|
options = {};
|
|
}
|
|
|
|
var workSheet = _xlsx.default[(0, _helpers.isString)(mixed) ? 'readFile' : 'read'](mixed, options);
|
|
|
|
return Object.keys(workSheet.Sheets).map(function (name) {
|
|
var sheet = workSheet.Sheets[name];
|
|
return {
|
|
name,
|
|
data: sheet["!ref"] ? _xlsx.default.utils.decode_range(sheet["!ref"]) : null
|
|
};
|
|
});
|
|
};
|
|
|
|
exports.parseMetadata = parseMetadata;
|
|
|
|
var build = function build(worksheets, options) {
|
|
if (options === void 0) {
|
|
options = {};
|
|
}
|
|
|
|
var defaults = {
|
|
bookType: 'xlsx',
|
|
bookSST: false,
|
|
type: 'binary'
|
|
};
|
|
var workBook = new _workbook.default();
|
|
worksheets.forEach(function (worksheet) {
|
|
var sheetName = worksheet.name || 'Sheet';
|
|
var sheetOptions = worksheet.options || {};
|
|
var sheetData = (0, _helpers.buildSheetFromMatrix)(worksheet.data || [], (0, _extends2.default)({}, options, sheetOptions));
|
|
workBook.SheetNames.push(sheetName);
|
|
workBook.Sheets[sheetName] = sheetData;
|
|
});
|
|
|
|
var excelData = _xlsx.default.write(workBook, (0, _extends2.default)({}, defaults, options));
|
|
|
|
return excelData instanceof Buffer ? excelData : (0, _bufferFrom.default)(excelData, 'binary');
|
|
};
|
|
|
|
exports.build = build;
|
|
var _default = {
|
|
parse,
|
|
parseMetadata,
|
|
build
|
|
};
|
|
exports.default = _default;
|
|
//# sourceMappingURL=index.js.map
|