@punks/backend-core 0.0.19 → 0.0.21

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 CHANGED
@@ -220,14 +220,22 @@ const splitRows = (data) => {
220
220
  }
221
221
  return data;
222
222
  };
223
- const csvParseRaw = (data, separator) => {
223
+ const csvParse = (data, separator = DEFAULT_DELIMITER) => {
224
224
  const rows = splitRows(data);
225
225
  const records = [];
226
- for (const row of rows) {
227
- const record = row.split(separator);
228
- if (record.length > 0) {
229
- records.push(record);
226
+ if (rows.length === 0) {
227
+ return records;
228
+ }
229
+ const headers = rows[0].split(separator);
230
+ for (let i = 1; i < rows.length; i++) {
231
+ const values = rows[i].split(separator);
232
+ const record = {};
233
+ for (let j = 0; j < headers.length; j++) {
234
+ const header = headers[j];
235
+ const value = values[j];
236
+ record[header] = value;
230
237
  }
238
+ records.push(record);
231
239
  }
232
240
  return records;
233
241
  };
@@ -28341,7 +28349,7 @@ exports.byFieldDesc = byFieldDesc;
28341
28349
  exports.camelToKebabCase = camelToKebabCase;
28342
28350
  exports.camelToSnakeCase = camelToSnakeCase;
28343
28351
  exports.csvBuild = csvBuild;
28344
- exports.csvParseRaw = csvParseRaw;
28352
+ exports.csvParse = csvParse;
28345
28353
  exports.distinct = distinct;
28346
28354
  exports.distinctElements = distinctElements;
28347
28355
  exports.ensureDirectory = ensureDirectory;