@teselagen/file-utils 0.3.10 → 0.3.12
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/index.js +6 -2
- package/index.mjs +6 -2
- package/index.umd.js +6 -2
- package/package.json +1 -1
- package/src/file-utils.js +7 -3
package/index.js
CHANGED
|
@@ -14580,7 +14580,7 @@ const setupCsvParserOptions = /* @__PURE__ */ __name((parserOptions = {}) => {
|
|
|
14580
14580
|
}
|
|
14581
14581
|
return papaParseOpts;
|
|
14582
14582
|
}, "setupCsvParserOptions");
|
|
14583
|
-
const normalizeCsvHeaderHelper = /* @__PURE__ */ __name((h) => lodashExports.snakeCase(h
|
|
14583
|
+
const normalizeCsvHeaderHelper = /* @__PURE__ */ __name((h) => lodashExports.snakeCase(h).toUpperCase(), "normalizeCsvHeaderHelper");
|
|
14584
14584
|
function normalizeCsvHeader(header) {
|
|
14585
14585
|
if (header.startsWith("ext-") || header.startsWith("EXT-")) {
|
|
14586
14586
|
return header;
|
|
@@ -14593,7 +14593,9 @@ const parseCsvFile = /* @__PURE__ */ __name((csvFile, parserOptions = {}) => {
|
|
|
14593
14593
|
const opts = __spreadProps(__spreadValues(__spreadValues({}, defaultCsvParserOptions), setupCsvParserOptions(parserOptions)), {
|
|
14594
14594
|
complete: (results) => {
|
|
14595
14595
|
var _a;
|
|
14596
|
-
if (results && ((_a = results.data) == null ? void 0 : _a.length) && results.errors && results.errors.length === 1 && results.errors[0].code === `UndetectableDelimiter`
|
|
14596
|
+
if (results && ((_a = results.data) == null ? void 0 : _a.length) && results.errors && (results.errors.length === 1 && results.errors[0].code === `UndetectableDelimiter` || results.errors.every(
|
|
14597
|
+
(e) => e.code === `TooFewFields` || e.code === `TooManyFields`
|
|
14598
|
+
))) {
|
|
14597
14599
|
return resolve(results);
|
|
14598
14600
|
} else if (results && results.errors && results.errors.length) {
|
|
14599
14601
|
return reject("Error in csv: " + JSON.stringify(results.errors));
|
|
@@ -14690,6 +14692,8 @@ const cleanCsvExport = /* @__PURE__ */ __name((rows) => {
|
|
|
14690
14692
|
return rows;
|
|
14691
14693
|
}, "cleanCsvExport");
|
|
14692
14694
|
const filterFilesInZip = /* @__PURE__ */ __name((file, accepted) => __async(exports, null, function* () {
|
|
14695
|
+
if (!file || Array.isArray(file) && !file.length)
|
|
14696
|
+
return [];
|
|
14693
14697
|
const zipExtracted = yield extractZipFiles(file);
|
|
14694
14698
|
const acceptedFiles = [];
|
|
14695
14699
|
for (const extFile of zipExtracted) {
|
package/index.mjs
CHANGED
|
@@ -14578,7 +14578,7 @@ const setupCsvParserOptions = /* @__PURE__ */ __name((parserOptions = {}) => {
|
|
|
14578
14578
|
}
|
|
14579
14579
|
return papaParseOpts;
|
|
14580
14580
|
}, "setupCsvParserOptions");
|
|
14581
|
-
const normalizeCsvHeaderHelper = /* @__PURE__ */ __name((h) => lodashExports.snakeCase(h
|
|
14581
|
+
const normalizeCsvHeaderHelper = /* @__PURE__ */ __name((h) => lodashExports.snakeCase(h).toUpperCase(), "normalizeCsvHeaderHelper");
|
|
14582
14582
|
function normalizeCsvHeader(header) {
|
|
14583
14583
|
if (header.startsWith("ext-") || header.startsWith("EXT-")) {
|
|
14584
14584
|
return header;
|
|
@@ -14591,7 +14591,9 @@ const parseCsvFile = /* @__PURE__ */ __name((csvFile, parserOptions = {}) => {
|
|
|
14591
14591
|
const opts = __spreadProps(__spreadValues(__spreadValues({}, defaultCsvParserOptions), setupCsvParserOptions(parserOptions)), {
|
|
14592
14592
|
complete: (results) => {
|
|
14593
14593
|
var _a;
|
|
14594
|
-
if (results && ((_a = results.data) == null ? void 0 : _a.length) && results.errors && results.errors.length === 1 && results.errors[0].code === `UndetectableDelimiter`
|
|
14594
|
+
if (results && ((_a = results.data) == null ? void 0 : _a.length) && results.errors && (results.errors.length === 1 && results.errors[0].code === `UndetectableDelimiter` || results.errors.every(
|
|
14595
|
+
(e) => e.code === `TooFewFields` || e.code === `TooManyFields`
|
|
14596
|
+
))) {
|
|
14595
14597
|
return resolve(results);
|
|
14596
14598
|
} else if (results && results.errors && results.errors.length) {
|
|
14597
14599
|
return reject("Error in csv: " + JSON.stringify(results.errors));
|
|
@@ -14688,6 +14690,8 @@ const cleanCsvExport = /* @__PURE__ */ __name((rows) => {
|
|
|
14688
14690
|
return rows;
|
|
14689
14691
|
}, "cleanCsvExport");
|
|
14690
14692
|
const filterFilesInZip = /* @__PURE__ */ __name((file, accepted) => __async(void 0, null, function* () {
|
|
14693
|
+
if (!file || Array.isArray(file) && !file.length)
|
|
14694
|
+
return [];
|
|
14691
14695
|
const zipExtracted = yield extractZipFiles(file);
|
|
14692
14696
|
const acceptedFiles = [];
|
|
14693
14697
|
for (const extFile of zipExtracted) {
|
package/index.umd.js
CHANGED
|
@@ -14582,7 +14582,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
14582
14582
|
}
|
|
14583
14583
|
return papaParseOpts;
|
|
14584
14584
|
}, "setupCsvParserOptions");
|
|
14585
|
-
const normalizeCsvHeaderHelper = /* @__PURE__ */ __name((h) => lodashExports.snakeCase(h
|
|
14585
|
+
const normalizeCsvHeaderHelper = /* @__PURE__ */ __name((h) => lodashExports.snakeCase(h).toUpperCase(), "normalizeCsvHeaderHelper");
|
|
14586
14586
|
function normalizeCsvHeader(header) {
|
|
14587
14587
|
if (header.startsWith("ext-") || header.startsWith("EXT-")) {
|
|
14588
14588
|
return header;
|
|
@@ -14595,7 +14595,9 @@ var __async = (__this, __arguments, generator) => {
|
|
|
14595
14595
|
const opts = __spreadProps(__spreadValues(__spreadValues({}, defaultCsvParserOptions), setupCsvParserOptions(parserOptions)), {
|
|
14596
14596
|
complete: (results) => {
|
|
14597
14597
|
var _a;
|
|
14598
|
-
if (results && ((_a = results.data) == null ? void 0 : _a.length) && results.errors && results.errors.length === 1 && results.errors[0].code === `UndetectableDelimiter`
|
|
14598
|
+
if (results && ((_a = results.data) == null ? void 0 : _a.length) && results.errors && (results.errors.length === 1 && results.errors[0].code === `UndetectableDelimiter` || results.errors.every(
|
|
14599
|
+
(e) => e.code === `TooFewFields` || e.code === `TooManyFields`
|
|
14600
|
+
))) {
|
|
14599
14601
|
return resolve(results);
|
|
14600
14602
|
} else if (results && results.errors && results.errors.length) {
|
|
14601
14603
|
return reject("Error in csv: " + JSON.stringify(results.errors));
|
|
@@ -14692,6 +14694,8 @@ var __async = (__this, __arguments, generator) => {
|
|
|
14692
14694
|
return rows;
|
|
14693
14695
|
}, "cleanCsvExport");
|
|
14694
14696
|
const filterFilesInZip = /* @__PURE__ */ __name((file, accepted) => __async(this, null, function* () {
|
|
14697
|
+
if (!file || Array.isArray(file) && !file.length)
|
|
14698
|
+
return [];
|
|
14695
14699
|
const zipExtracted = yield extractZipFiles(file);
|
|
14696
14700
|
const acceptedFiles = [];
|
|
14697
14701
|
for (const extFile of zipExtracted) {
|
package/package.json
CHANGED
package/src/file-utils.js
CHANGED
|
@@ -126,7 +126,7 @@ export const setupCsvParserOptions = (parserOptions = {}) => {
|
|
|
126
126
|
return papaParseOpts;
|
|
127
127
|
};
|
|
128
128
|
|
|
129
|
-
const normalizeCsvHeaderHelper = h => snakeCase(h
|
|
129
|
+
const normalizeCsvHeaderHelper = h => snakeCase(h).toUpperCase();
|
|
130
130
|
|
|
131
131
|
export function normalizeCsvHeader(header) {
|
|
132
132
|
if (header.startsWith("ext-") || header.startsWith("EXT-")) {
|
|
@@ -145,8 +145,11 @@ export const parseCsvFile = (csvFile, parserOptions = {}) => {
|
|
|
145
145
|
results &&
|
|
146
146
|
results.data?.length &&
|
|
147
147
|
results.errors &&
|
|
148
|
-
results.errors.length === 1 &&
|
|
149
|
-
|
|
148
|
+
((results.errors.length === 1 &&
|
|
149
|
+
results.errors[0].code === `UndetectableDelimiter`) ||
|
|
150
|
+
results.errors.every(
|
|
151
|
+
e => e.code === `TooFewFields` || e.code === `TooManyFields`
|
|
152
|
+
))
|
|
150
153
|
) {
|
|
151
154
|
return resolve(results);
|
|
152
155
|
} else if (results && results.errors && results.errors.length) {
|
|
@@ -288,6 +291,7 @@ export const cleanCsvExport = rows => {
|
|
|
288
291
|
};
|
|
289
292
|
|
|
290
293
|
export const filterFilesInZip = async (file, accepted) => {
|
|
294
|
+
if (!file || (Array.isArray(file) && !file.length)) return [];
|
|
291
295
|
const zipExtracted = await extractZipFiles(file);
|
|
292
296
|
const acceptedFiles = [];
|
|
293
297
|
for (const extFile of zipExtracted) {
|