tle2文件转czml文件
This commit is contained in:
59
node_modules/node-xlsx/lib/index.js
generated
vendored
Normal file
59
node_modules/node-xlsx/lib/index.js
generated
vendored
Normal file
@@ -0,0 +1,59 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.build = exports.parseMetadata = exports.parse = void 0;
|
||||
const xlsx_1 = require("xlsx");
|
||||
const helpers_1 = require("./helpers");
|
||||
const workbook_1 = require("./workbook");
|
||||
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
||||
const parse = (mixed, options = {}) => {
|
||||
const { dateNF, header = 1, range, blankrows, defval, raw = true, rawNumbers, ...otherOptions } = options;
|
||||
const workBook = (0, helpers_1.isString)(mixed)
|
||||
? (0, xlsx_1.readFile)(mixed, { dateNF, raw, ...otherOptions })
|
||||
: (0, xlsx_1.read)(mixed, { dateNF, raw, ...otherOptions });
|
||||
return Object.keys(workBook.Sheets).map((name) => {
|
||||
const sheet = workBook.Sheets[name];
|
||||
return {
|
||||
name,
|
||||
data: xlsx_1.utils.sheet_to_json(sheet, {
|
||||
dateNF,
|
||||
header,
|
||||
range: typeof range === 'function' ? range(sheet) : range,
|
||||
blankrows,
|
||||
defval,
|
||||
raw,
|
||||
rawNumbers,
|
||||
}),
|
||||
};
|
||||
});
|
||||
};
|
||||
exports.parse = parse;
|
||||
const parseMetadata = (mixed, options = {}) => {
|
||||
const workBook = (0, helpers_1.isString)(mixed) ? (0, xlsx_1.readFile)(mixed, options) : (0, xlsx_1.read)(mixed, options);
|
||||
return Object.keys(workBook.Sheets).map((name) => {
|
||||
const sheet = workBook.Sheets[name];
|
||||
return { name, data: sheet['!ref'] ? xlsx_1.utils.decode_range(sheet['!ref']) : null };
|
||||
});
|
||||
};
|
||||
exports.parseMetadata = parseMetadata;
|
||||
const build = (worksheets, { parseOptions = {}, writeOptions = {}, sheetOptions = {}, ...otherOptions } = {}) => {
|
||||
const { bookType = 'xlsx', bookSST = false, type = 'buffer', ...otherWriteOptions } = writeOptions;
|
||||
const legacyOptions = Object.keys(otherOptions).filter((key) => {
|
||||
if (['!cols', '!rows', '!merges', '!protect', '!autofilter'].includes(key)) {
|
||||
console.debug(`Deprecated options['${key}'], please use options.sheetOptions['${key}'] instead.`);
|
||||
return true;
|
||||
}
|
||||
console.debug(`Unknown options['${key}'], please use options.parseOptions / options.writeOptions`);
|
||||
return false;
|
||||
});
|
||||
const workBook = worksheets.reduce((soFar, { name, data, options = {} }, index) => {
|
||||
const sheetName = name || `Sheet_${index}`;
|
||||
const sheetData = xlsx_1.utils.aoa_to_sheet(data, parseOptions);
|
||||
soFar.SheetNames.push(sheetName);
|
||||
soFar.Sheets[sheetName] = sheetData;
|
||||
Object.assign(soFar.Sheets[sheetName], legacyOptions, sheetOptions, options);
|
||||
return soFar;
|
||||
}, new workbook_1.WorkBook());
|
||||
return (0, xlsx_1.write)(workBook, { bookType, bookSST, type, ...otherWriteOptions });
|
||||
};
|
||||
exports.build = build;
|
||||
exports.default = { parse: exports.parse, parseMetadata: exports.parseMetadata, build: exports.build };
|
||||
Reference in New Issue
Block a user