@punks/backend-core 0.0.75 → 0.0.76
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/dist/cjs/index.js +7 -10
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/utils/xls.d.ts +2 -0
- package/dist/esm/index.js +7 -10
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/utils/xls.d.ts +2 -0
- package/dist/index.d.ts +6 -0
- package/package.json +1 -1
|
@@ -17,9 +17,11 @@ export declare enum ExcelKeyTransform {
|
|
|
17
17
|
Lower = "lower",
|
|
18
18
|
Upper = "upper"
|
|
19
19
|
}
|
|
20
|
+
export type ParsedExcelSheet = ReturnType<typeof parseExcelRaw>[number];
|
|
20
21
|
export type ExcelParseOptions = {
|
|
21
22
|
keysTransform?: ExcelKeyTransform;
|
|
22
23
|
sheetIndex?: number;
|
|
23
24
|
dateColumns?: string[];
|
|
25
|
+
sheetFilter?: (sheet: ParsedExcelSheet) => boolean;
|
|
24
26
|
};
|
|
25
27
|
export declare const excelParse: (file: string | ArrayBuffer, options?: ExcelParseOptions) => any;
|
package/dist/esm/index.js
CHANGED
|
@@ -30971,17 +30971,14 @@ const aggregateRow = (header, row, options) => {
|
|
|
30971
30971
|
return record;
|
|
30972
30972
|
};
|
|
30973
30973
|
const excelParse = (file, options) => {
|
|
30974
|
-
const sheets = parseExcelRaw(file).
|
|
30975
|
-
|
|
30976
|
-
? sheets[0]
|
|
30977
|
-
: sheets.reduce((acc, sheet, index) => {
|
|
30978
|
-
acc[sheet.name || `Sheet${index + 1}`] = sheets[index];
|
|
30974
|
+
const sheets = parseExcelRaw(file).reduce((acc, sheet) => {
|
|
30975
|
+
if (options?.sheetFilter && !options.sheetFilter(sheet))
|
|
30979
30976
|
return acc;
|
|
30980
|
-
|
|
30981
|
-
|
|
30982
|
-
|
|
30983
|
-
|
|
30984
|
-
return
|
|
30977
|
+
const [header, ...rows] = sheet.data.filter((row) => isValidRow(row));
|
|
30978
|
+
acc.push(rows.map((row) => aggregateRow(header, row, options)));
|
|
30979
|
+
return acc;
|
|
30980
|
+
}, []);
|
|
30981
|
+
return sheets.length === 1 ? sheets[0] : sheets.flat();
|
|
30985
30982
|
};
|
|
30986
30983
|
|
|
30987
30984
|
const getLevelValue = (level) => {
|