@sasjs/utils 2.52.1 → 3.0.1

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/file/csvFile.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import { Row } from '@fast-csv/format';
1
2
  /**
2
3
  * reads a CSV file and returns parsed data
3
4
  * @param csvFilePath
@@ -8,9 +9,9 @@ export declare const readCsv: (csvFilePath: string) => Promise<string[][]>;
8
9
  * creates a csv file at given path with provided data
9
10
  * @param csvFilePath location where to create file
10
11
  * @param csvData data which needs to be populated in file
11
- * @param columns an array of header for file, i.e column names
12
+ * @param headers an array of column names
12
13
  */
13
- export declare const createCsv: (csvFilePath: string, csvData: any[][], columns: string[]) => Promise<void>;
14
+ export declare const createCsv: <T extends Row[]>(csvFilePath: string, csvData: T, headers: string[]) => Promise<void>;
14
15
  /**
15
16
  * append new csv record if file exists else creates a new file
16
17
  * @param csvFilePath location where to create file
package/file/csvFile.js CHANGED
@@ -60,13 +60,10 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
60
60
  }
61
61
  return to.concat(ar || Array.prototype.slice.call(from));
62
62
  };
63
- var __importDefault = (this && this.__importDefault) || function (mod) {
64
- return (mod && mod.__esModule) ? mod : { "default": mod };
65
- };
66
63
  Object.defineProperty(exports, "__esModule", { value: true });
67
64
  exports.updateCsv = exports.createCsv = exports.readCsv = void 0;
68
65
  var file_1 = require("./file");
69
- var sync_1 = __importDefault(require("csv-stringify/lib/sync"));
66
+ var format_1 = require("@fast-csv/format");
70
67
  /**
71
68
  * reads a CSV file and returns parsed data
72
69
  * @param csvFilePath
@@ -91,19 +88,17 @@ exports.readCsv = readCsv;
91
88
  * creates a csv file at given path with provided data
92
89
  * @param csvFilePath location where to create file
93
90
  * @param csvData data which needs to be populated in file
94
- * @param columns an array of header for file, i.e column names
91
+ * @param headers an array of column names
95
92
  */
96
- var createCsv = function (csvFilePath, csvData, columns) { return __awaiter(void 0, void 0, void 0, function () {
93
+ var createCsv = function (csvFilePath, csvData, headers) { return __awaiter(void 0, void 0, void 0, function () {
97
94
  var output;
98
95
  return __generator(this, function (_a) {
99
96
  switch (_a.label) {
100
- case 0:
101
- output = (0, sync_1.default)(csvData, {
102
- header: csvData.length === 1,
103
- columns: columns
104
- });
105
- return [4 /*yield*/, (0, file_1.createFile)(csvFilePath, output)];
97
+ case 0: return [4 /*yield*/, (0, format_1.writeToString)(csvData, { headers: headers })];
106
98
  case 1:
99
+ output = _a.sent();
100
+ return [4 /*yield*/, (0, file_1.createFile)(csvFilePath, output)];
101
+ case 2:
107
102
  _a.sent();
108
103
  return [2 /*return*/];
109
104
  }
@@ -1 +1 @@
1
- {"version":3,"file":"csvFile.js","sourceRoot":"","sources":["../../src/file/csvFile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"csvFile.js","sourceRoot":"","sources":["../../src/file/csvFile.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -39,24 +39,24 @@
39
39
  "@sasjs/core": "^4.43.1",
40
40
  "@types/cli-table": "0.3.0",
41
41
  "@types/find": "0.2.1",
42
- "@types/jest": "27.4.0",
42
+ "@types/jest": "29.4.0",
43
43
  "@types/rimraf": "3.0.1",
44
44
  "@types/valid-url": "1.0.3",
45
- "babel-jest": "27.4.6",
46
- "jest": "27.4.7",
47
- "jest-extended": "1.1.0",
48
- "ts-jest": "27.1.3",
45
+ "babel-jest": "29.4.3",
46
+ "jest": "29.4.3",
47
+ "jest-extended": "3.2.4",
48
+ "ts-jest": "29.0.5",
49
49
  "ts-loader": "9.2.6",
50
50
  "ts-node": "10.9.1",
51
51
  "typescript": "4.5.4"
52
52
  },
53
53
  "dependencies": {
54
+ "@fast-csv/format": "4.3.5",
54
55
  "@types/fs-extra": "9.0.13",
55
56
  "@types/prompts": "2.0.13",
56
57
  "chalk": "4.1.1",
57
58
  "cli-table": "0.3.6",
58
59
  "consola": "2.15.0",
59
- "csv-stringify": "5.6.5",
60
60
  "find": "0.3.0",
61
61
  "fs-extra": "10.0.0",
62
62
  "jwt-decode": "3.1.2",
@@ -64,5 +64,5 @@
64
64
  "rimraf": "3.0.2",
65
65
  "valid-url": "1.0.9"
66
66
  },
67
- "version": "2.52.1"
67
+ "version": "3.0.1"
68
68
  }