@tucmc/hazel
Version:
Clubs Data Processing Framework
30 lines (29 loc) • 1.06 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.ExcelDataSource = void 0;
const exceljs_1 = __importDefault(require("exceljs"));
const DataSource_1 = require("../../util/data/DataSource");
const Workbook_1 = require("./Workbook");
class ExcelDataSource extends DataSource_1.DataSource {
async resolve() {
const workbook = new exceljs_1.default.Workbook();
const loadedWb = await workbook.xlsx.load(this.fileStream);
const book = [];
loadedWb.eachSheet((ws, _) => {
const sheet = [];
ws.eachRow((r) => {
const row = {};
r.eachCell((c, cn) => {
row[cn] = c.text;
});
sheet.push(row);
});
book.push(sheet);
});
return new Workbook_1.Workbook(book);
}
}
exports.ExcelDataSource = ExcelDataSource;