@sasjs/cli 3.17.0 → 3.18.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.
Files changed (39) hide show
  1. package/build/commands/build/build.js +42 -40
  2. package/build/commands/build/spec/build.spec.js +51 -0
  3. package/build/commands/build/spec/{cb.spec.server.d.ts → cb.spec.server.viya.d.ts} +0 -0
  4. package/build/commands/build/spec/{cb.spec.server.js → cb.spec.server.viya.js} +1 -1
  5. package/build/commands/compile/internal/compileFile.js +6 -3
  6. package/build/commands/compile/internal/loadDependencies.js +29 -21
  7. package/build/commands/compile/internal/spec/compileTestFile.spec.js +1 -1
  8. package/build/commands/deploy/spec/cbd.spec.js +24 -19
  9. package/build/commands/deploy/spec/{cbd.spec.server.d.ts → cbd.spec.server.viya.d.ts} +0 -0
  10. package/build/commands/deploy/spec/cbd.spec.server.viya.js +334 -0
  11. package/build/commands/flow/spec/{flow.spec.server.d.ts → flow.spec.server.viya.d.ts} +0 -0
  12. package/build/commands/flow/spec/{flow.spec.server.js → flow.spec.server.viya.js} +39 -55
  13. package/build/commands/folder/spec/{folder.spec.server.d.ts → folder.spec.server.viya.d.ts} +0 -0
  14. package/build/commands/folder/spec/{folder.spec.server.js → folder.spec.server.viya.js} +17 -23
  15. package/build/commands/init/spec/{init.spec.server.d.ts → init.spec.d.ts} +0 -0
  16. package/build/commands/init/spec/{init.spec.server.js → init.spec.js} +0 -0
  17. package/build/commands/job/spec/{job.spec.server.d.ts → job.spec.server.viya.d.ts} +0 -0
  18. package/build/commands/job/spec/{job.spec.server.js → job.spec.server.viya.js} +45 -56
  19. package/build/commands/request/request.js +3 -2
  20. package/build/commands/request/spec/{request.spec.server.d.ts → request.spec.server.sas9.d.ts} +0 -0
  21. package/build/commands/request/spec/request.spec.server.sas9.js +283 -0
  22. package/build/commands/{run/spec/run.spec.server.d.ts → request/spec/request.spec.server.viya.d.ts} +0 -0
  23. package/build/commands/request/spec/request.spec.server.viya.js +460 -0
  24. package/build/commands/request/spec/utils.d.ts +23 -0
  25. package/build/commands/request/spec/utils.js +87 -0
  26. package/build/commands/{servicepack/spec/servicepack.spec.server.d.ts → run/spec/run.spec.server.sas9.d.ts} +0 -0
  27. package/build/commands/run/spec/run.spec.server.sas9.js +115 -0
  28. package/build/commands/run/spec/run.spec.server.viya.d.ts +1 -0
  29. package/build/commands/run/spec/{run.spec.server.js → run.spec.server.viya.js} +32 -101
  30. package/build/commands/servicepack/spec/servicepack.spec.server.viya.d.ts +1 -0
  31. package/build/commands/servicepack/spec/{servicepack.spec.server.js → servicepack.spec.server.viya.js} +1 -1
  32. package/build/utils/test.js +4 -2
  33. package/build/utils/utils.d.ts +0 -6
  34. package/build/utils/utils.js +2 -35
  35. package/package.json +6 -5
  36. package/build/commands/deploy/spec/cbd.spec.server.js +0 -331
  37. package/build/commands/request/spec/request.spec.server.js +0 -709
  38. package/build/utils/spec/removeComments.spec.d.ts +0 -1
  39. package/build/utils/spec/removeComments.spec.js +0 -47
@@ -0,0 +1,115 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ var __importDefault = (this && this.__importDefault) || function (mod) {
39
+ return (mod && mod.__esModule) ? mod : { "default": mod };
40
+ };
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ var path_1 = __importDefault(require("path"));
43
+ var __1 = require("../..");
44
+ var utils_1 = require("@sasjs/utils");
45
+ var test_1 = require("../../../utils/test");
46
+ describe('sasjs run with SAS9', function () {
47
+ var target;
48
+ beforeEach(function () { return __awaiter(void 0, void 0, void 0, function () {
49
+ var appName;
50
+ return __generator(this, function (_a) {
51
+ switch (_a.label) {
52
+ case 0:
53
+ appName = 'cli-tests-run-sas9-' + (0, utils_1.generateTimestamp)();
54
+ return [4 /*yield*/, (0, test_1.createTestApp)(__dirname, appName)];
55
+ case 1:
56
+ _a.sent();
57
+ target = (0, test_1.generateTestTarget)(appName, "/Public/app/cli-tests/".concat(appName), {
58
+ serviceFolders: ['sasjs/testServices'],
59
+ initProgram: '',
60
+ termProgram: '',
61
+ macroVars: {}
62
+ }, utils_1.ServerType.Sas9);
63
+ return [4 /*yield*/, (0, utils_1.copy)(path_1.default.join(__dirname, 'testServices'), path_1.default.join(process.projectDir, 'sasjs', 'testServices'))];
64
+ case 2:
65
+ _a.sent();
66
+ return [2 /*return*/];
67
+ }
68
+ });
69
+ }); });
70
+ afterEach(function () { return __awaiter(void 0, void 0, void 0, function () {
71
+ return __generator(this, function (_a) {
72
+ switch (_a.label) {
73
+ case 0: return [4 /*yield*/, (0, test_1.removeTestServerFolder)(target.appLoc, target)];
74
+ case 1:
75
+ _a.sent();
76
+ return [4 /*yield*/, (0, test_1.removeTestApp)(__dirname, target.name)];
77
+ case 2:
78
+ _a.sent();
79
+ return [2 /*return*/];
80
+ }
81
+ });
82
+ }); });
83
+ it('should run a file when a relative path is provided', function () { return __awaiter(void 0, void 0, void 0, function () {
84
+ var logParts, result;
85
+ return __generator(this, function (_a) {
86
+ switch (_a.label) {
87
+ case 0:
88
+ logParts = ['data;', 'do x=1 to 100;', 'output;', 'end;', 'run;'];
89
+ return [4 /*yield*/, (0, __1.runSasCode)(target, 'sasjs/testServices/logJob.sas')];
90
+ case 1:
91
+ result = _a.sent();
92
+ logParts.forEach(function (logPart) {
93
+ expect(result.log.includes(logPart)).toBeTruthy();
94
+ });
95
+ return [2 /*return*/];
96
+ }
97
+ });
98
+ }); });
99
+ it('should run a file when an absolute path is provided', function () { return __awaiter(void 0, void 0, void 0, function () {
100
+ var logParts, result;
101
+ return __generator(this, function (_a) {
102
+ switch (_a.label) {
103
+ case 0:
104
+ logParts = ['data;', 'do x=1 to 100;', 'output;', 'end;', 'run;'];
105
+ return [4 /*yield*/, (0, __1.runSasCode)(target, "".concat(process.projectDir, "/sasjs/testServices/logJob.sas"))];
106
+ case 1:
107
+ result = _a.sent();
108
+ logParts.forEach(function (logPart) {
109
+ expect(result.log.includes(logPart)).toBeTruthy();
110
+ });
111
+ return [2 /*return*/];
112
+ }
113
+ });
114
+ }); });
115
+ });
@@ -0,0 +1 @@
1
+ export {};
@@ -46,7 +46,7 @@ var utils_1 = require("@sasjs/utils");
46
46
  var test_1 = require("../../../utils/test");
47
47
  var build_1 = require("../../build/build");
48
48
  var utils_2 = require("../../../utils");
49
- describe('sasjs run', function () {
49
+ describe('sasjs run with Viya', function () {
50
50
  var target;
51
51
  describe('runSasCode within project', function () {
52
52
  beforeEach(function () { return __awaiter(void 0, void 0, void 0, function () {
@@ -198,70 +198,6 @@ describe('sasjs run', function () {
198
198
  });
199
199
  }); });
200
200
  });
201
- describe('runSasCode within vanilla js project', function () {
202
- var appName;
203
- beforeEach(function () { return __awaiter(void 0, void 0, void 0, function () {
204
- return __generator(this, function (_a) {
205
- switch (_a.label) {
206
- case 0:
207
- dotenv_1.default.config();
208
- appName = 'cli-tests-run-' + (0, utils_1.generateTimestamp)();
209
- return [4 /*yield*/, (0, test_1.createTestMinimalApp)(__dirname, appName)];
210
- case 1:
211
- _a.sent();
212
- return [4 /*yield*/, (0, test_1.updateTarget)({
213
- appLoc: "/Public/app/cli-tests/".concat(appName),
214
- streamConfig: {
215
- assetPaths: [],
216
- streamWeb: true,
217
- streamWebFolder: 'webv',
218
- webSourcePath: 'src',
219
- streamServiceName: 'clickme'
220
- },
221
- authConfig: {
222
- client: process.env.CLIENT,
223
- secret: process.env.SECRET,
224
- access_token: process.env.ACCESS_TOKEN,
225
- refresh_token: process.env.REFRESH_TOKEN
226
- }
227
- }, 'viya')];
228
- case 2:
229
- target = _a.sent();
230
- return [2 /*return*/];
231
- }
232
- });
233
- }); });
234
- afterEach(function () { return __awaiter(void 0, void 0, void 0, function () {
235
- return __generator(this, function (_a) {
236
- switch (_a.label) {
237
- case 0: return [4 /*yield*/, (0, test_1.removeTestServerFolder)(target.appLoc, target)];
238
- case 1:
239
- _a.sent();
240
- return [4 /*yield*/, (0, test_1.removeTestApp)(__dirname, appName)];
241
- case 2:
242
- _a.sent();
243
- return [2 /*return*/];
244
- }
245
- });
246
- }); });
247
- it('should get the log having launch code message', function () { return __awaiter(void 0, void 0, void 0, function () {
248
- var logPart, result;
249
- return __generator(this, function (_a) {
250
- switch (_a.label) {
251
- case 0:
252
- logPart = "SASjs Streaming App Created! Check it out here:\n \n \n \n \n sas.analytium.co.uk/SASJobExecution?_FILE=".concat(target.appLoc, "/services/clickme.html&_debug=2\n");
253
- return [4 /*yield*/, (0, build_1.build)(target)];
254
- case 1:
255
- _a.sent();
256
- return [4 /*yield*/, (0, __1.runSasCode)(target, 'sasjsbuild/myviyadeploy.sas')];
257
- case 2:
258
- result = _a.sent();
259
- expect(result.log.includes(logPart)).toBeTruthy();
260
- return [2 /*return*/];
261
- }
262
- });
263
- }); });
264
- });
265
201
  describe('runSasCode outside project', function () {
266
202
  var sharedAppName;
267
203
  var homedir = require('os').homedir();
@@ -395,25 +331,35 @@ describe('sasjs run', function () {
395
331
  });
396
332
  }); });
397
333
  });
398
- describe('sasjs run with SAS9', function () {
334
+ describe('runSasCode within vanilla js project', function () {
335
+ var appName;
399
336
  beforeEach(function () { return __awaiter(void 0, void 0, void 0, function () {
400
- var appName;
401
337
  return __generator(this, function (_a) {
402
338
  switch (_a.label) {
403
339
  case 0:
404
- appName = 'cli-tests-run-sas9-' + (0, utils_1.generateTimestamp)();
405
- return [4 /*yield*/, (0, test_1.createTestApp)(__dirname, appName)];
340
+ dotenv_1.default.config();
341
+ appName = 'cli-tests-run-' + (0, utils_1.generateTimestamp)();
342
+ return [4 /*yield*/, (0, test_1.createTestMinimalApp)(__dirname, appName)];
406
343
  case 1:
407
344
  _a.sent();
408
- target = (0, test_1.generateTestTarget)(appName, "/Public/app/cli-tests/".concat(appName), {
409
- serviceFolders: ['sasjs/testServices'],
410
- initProgram: '',
411
- termProgram: '',
412
- macroVars: {}
413
- }, utils_1.ServerType.Sas9);
414
- return [4 /*yield*/, (0, utils_1.copy)(path_1.default.join(__dirname, 'testServices'), path_1.default.join(process.projectDir, 'sasjs', 'testServices'))];
345
+ return [4 /*yield*/, (0, test_1.updateTarget)({
346
+ appLoc: "/Public/app/cli-tests/".concat(appName),
347
+ streamConfig: {
348
+ assetPaths: [],
349
+ streamWeb: true,
350
+ streamWebFolder: 'webv',
351
+ webSourcePath: 'src',
352
+ streamServiceName: 'clickme'
353
+ },
354
+ authConfig: {
355
+ client: process.env.CLIENT,
356
+ secret: process.env.SECRET,
357
+ access_token: process.env.ACCESS_TOKEN,
358
+ refresh_token: process.env.REFRESH_TOKEN
359
+ }
360
+ }, 'viya')];
415
361
  case 2:
416
- _a.sent();
362
+ target = _a.sent();
417
363
  return [2 /*return*/];
418
364
  }
419
365
  });
@@ -424,41 +370,26 @@ describe('sasjs run', function () {
424
370
  case 0: return [4 /*yield*/, (0, test_1.removeTestServerFolder)(target.appLoc, target)];
425
371
  case 1:
426
372
  _a.sent();
427
- return [4 /*yield*/, (0, test_1.removeTestApp)(__dirname, target.name)];
373
+ return [4 /*yield*/, (0, test_1.removeTestApp)(__dirname, appName)];
428
374
  case 2:
429
375
  _a.sent();
430
376
  return [2 /*return*/];
431
377
  }
432
378
  });
433
379
  }); });
434
- it('should run a file when a relative path is provided', function () { return __awaiter(void 0, void 0, void 0, function () {
435
- var logParts, result;
436
- return __generator(this, function (_a) {
437
- switch (_a.label) {
438
- case 0:
439
- logParts = ['data;', 'do x=1 to 100;', 'output;', 'end;', 'run;'];
440
- return [4 /*yield*/, (0, __1.runSasCode)(target, 'sasjs/testServices/logJob.sas')];
441
- case 1:
442
- result = _a.sent();
443
- logParts.forEach(function (logPart) {
444
- expect(result.log.includes(logPart)).toBeTruthy();
445
- });
446
- return [2 /*return*/];
447
- }
448
- });
449
- }); });
450
- it('should run a file when an absolute path is provided', function () { return __awaiter(void 0, void 0, void 0, function () {
451
- var logParts, result;
380
+ it('should get the log having launch code message', function () { return __awaiter(void 0, void 0, void 0, function () {
381
+ var logPart, result;
452
382
  return __generator(this, function (_a) {
453
383
  switch (_a.label) {
454
384
  case 0:
455
- logParts = ['data;', 'do x=1 to 100;', 'output;', 'end;', 'run;'];
456
- return [4 /*yield*/, (0, __1.runSasCode)(target, "".concat(process.projectDir, "/sasjs/testServices/logJob.sas"))];
385
+ logPart = "SASjs Streaming App Created! Check it out here:\n \n \n \n \n sas.analytium.co.uk/SASJobExecution?_FILE=".concat(target.appLoc, "/services/clickme.html&_debug=2\n");
386
+ return [4 /*yield*/, (0, build_1.build)(target)];
457
387
  case 1:
388
+ _a.sent();
389
+ return [4 /*yield*/, (0, __1.runSasCode)(target, 'sasjsbuild/myviyadeploy.sas')];
390
+ case 2:
458
391
  result = _a.sent();
459
- logParts.forEach(function (logPart) {
460
- expect(result.log.includes(logPart)).toBeTruthy();
461
- });
392
+ expect(result.log.includes(logPart)).toBeTruthy();
462
393
  return [2 /*return*/];
463
394
  }
464
395
  });
@@ -45,7 +45,7 @@ var utils_1 = require("@sasjs/utils");
45
45
  var utils_2 = require("../../../utils");
46
46
  var deploy_1 = require("../deploy");
47
47
  var test_1 = require("../../../utils/test");
48
- describe('sasjs servicepack', function () {
48
+ describe('sasjs servicepack with Viya', function () {
49
49
  var target;
50
50
  beforeAll(function () { return __awaiter(void 0, void 0, void 0, function () {
51
51
  var targetName;
@@ -151,9 +151,11 @@ var removeTestServerFolder = function (folderPath, target) { return __awaiter(vo
151
151
  appLoc: target.appLoc,
152
152
  serverType: target.serverType
153
153
  });
154
- accessToken = process.env.ACCESS_TOKEN;
155
- return [4 /*yield*/, (0, delete_1.deleteFolder)(folderPath, sasjs, accessToken)];
154
+ return [4 /*yield*/, (0, config_1.getAccessToken)(target)];
156
155
  case 1:
156
+ accessToken = _a.sent();
157
+ return [4 /*yield*/, (0, delete_1.deleteFolder)(folderPath, sasjs, accessToken)];
158
+ case 2:
157
159
  _a.sent();
158
160
  return [2 /*return*/];
159
161
  }
@@ -9,12 +9,6 @@ export declare function createTemplateApp(folderPath: string, template: string):
9
9
  export declare function setupNpmProject(folderName: string): Promise<void>;
10
10
  export declare function setupGitIgnore(folderName: string): Promise<void>;
11
11
  export declare function setupDoxygen(folderPath: string): Promise<void>;
12
- /**
13
- * Removes comments from a given block of text.
14
- * Preserves single line block comments and inline comments.
15
- * @param {string} text - the text to remove comments from.
16
- */
17
- export declare function removeComments(text: string): string;
18
12
  export declare function getUniqServicesObj(services: string[]): any;
19
13
  export declare function executeShellScript(filePath: string, logFilePath: string): Promise<unknown>;
20
14
  /**
@@ -86,7 +86,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
86
86
  return (mod && mod.__esModule) ? mod : { "default": mod };
87
87
  };
88
88
  Object.defineProperty(exports, "__esModule", { value: true });
89
- exports.isSasJsServerInServerMode = exports.getNodeModulePath = exports.isSASjsProject = exports.terminateProcess = exports.prefixAppLoc = exports.loadEnvVariables = exports.displaySasjsRunnerError = exports.getAdapterInstance = exports.checkNodeVersion = exports.millisecondsToDdHhMmSs = exports.arrToObj = exports.parseLogLines = exports.executeShellScript = exports.getUniqServicesObj = exports.removeComments = exports.setupDoxygen = exports.setupGitIgnore = exports.setupNpmProject = exports.createTemplateApp = exports.createMinimalApp = exports.createAngularApp = exports.createReactApp = exports.diff = exports.inExistingProject = void 0;
89
+ exports.isSasJsServerInServerMode = exports.getNodeModulePath = exports.isSASjsProject = exports.terminateProcess = exports.prefixAppLoc = exports.loadEnvVariables = exports.displaySasjsRunnerError = exports.getAdapterInstance = exports.checkNodeVersion = exports.millisecondsToDdHhMmSs = exports.arrToObj = exports.parseLogLines = exports.executeShellScript = exports.getUniqServicesObj = exports.setupDoxygen = exports.setupGitIgnore = exports.setupNpmProject = exports.createTemplateApp = exports.createMinimalApp = exports.createAngularApp = exports.createReactApp = exports.diff = exports.inExistingProject = void 0;
90
90
  var shelljs_1 = __importDefault(require("shelljs"));
91
91
  var path_1 = __importDefault(require("path"));
92
92
  var ora_1 = __importDefault(require("ora"));
@@ -374,39 +374,6 @@ function setupDoxygen(folderPath) {
374
374
  });
375
375
  }
376
376
  exports.setupDoxygen = setupDoxygen;
377
- /**
378
- * Removes comments from a given block of text.
379
- * Preserves single line block comments and inline comments.
380
- * @param {string} text - the text to remove comments from.
381
- */
382
- function removeComments(text) {
383
- if (!text)
384
- return '';
385
- var lines = text
386
- .replace(/\r\n/g, '\n')
387
- .split('\n')
388
- .map(function (l) { return l.trimEnd(); });
389
- var linesWithoutComment = [];
390
- var inCommentBlock = false;
391
- lines.forEach(function (line) {
392
- if (line.includes('/*') && line.includes('*/')) {
393
- linesWithoutComment.push(line);
394
- }
395
- else {
396
- if (line.startsWith('/*') && !line.endsWith('*/')) {
397
- inCommentBlock = true;
398
- }
399
- if (!inCommentBlock) {
400
- linesWithoutComment.push(line);
401
- }
402
- if (line.endsWith('*/') && !line.includes('/*') && inCommentBlock) {
403
- inCommentBlock = false;
404
- }
405
- }
406
- });
407
- return linesWithoutComment.filter(function (l) { return !!l.trim(); }).join('\n');
408
- }
409
- exports.removeComments = removeComments;
410
377
  function getUniqServicesObj(services) {
411
378
  var returnObj = {};
412
379
  if (!services)
@@ -430,7 +397,7 @@ function executeShellScript(filePath, logFilePath) {
430
397
  return __generator(this, function (_b) {
431
398
  switch (_b.label) {
432
399
  case 0:
433
- shellCommand = (0, utils_1.isWindows)() ? "sh ".concat(filePath) : "bash ".concat(filePath);
400
+ shellCommand = (0, utils_1.isWindows)() ? "".concat(filePath) : "bash ".concat(filePath);
434
401
  result = shelljs_1.default.exec(shellCommand, { silent: true });
435
402
  if (!result.code) return [3 /*break*/, 1];
436
403
  (_a = process.logger) === null || _a === void 0 ? void 0 : _a.error("Error: ".concat(result.stderr));
package/package.json CHANGED
@@ -20,6 +20,7 @@
20
20
  "preinstall": "npm run checkNodeVersion -s",
21
21
  "prepare": "git rev-parse --git-dir && git config core.hooksPath ./.git-hooks || true"
22
22
  },
23
+ "testServerTypes": "viya,sas9,sasjs",
23
24
  "release": {
24
25
  "branches": [
25
26
  "main"
@@ -47,9 +48,9 @@
47
48
  "access": "public"
48
49
  },
49
50
  "dependencies": {
50
- "@sasjs/adapter": "3.10.8",
51
- "@sasjs/core": "4.32.2",
52
- "@sasjs/lint": "1.11.2",
51
+ "@sasjs/adapter": "3.10.11",
52
+ "@sasjs/core": "4.35.3",
53
+ "@sasjs/lint": "1.12.0",
53
54
  "@sasjs/utils": "2.47.0",
54
55
  "adm-zip": "0.5.9",
55
56
  "chalk": "4.1.2",
@@ -88,7 +89,7 @@
88
89
  "jest": "27.4.7",
89
90
  "jest-cli": "27.4.7",
90
91
  "jest-extended": "1.1.0",
91
- "nodemon": "2.0.15",
92
+ "nodemon": "2.0.19",
92
93
  "prettier": "2.6.2",
93
94
  "ts-jest": "27.1.2",
94
95
  "ts-node": "10.4.0",
@@ -96,5 +97,5 @@
96
97
  "typescript": "4.5.4",
97
98
  "util": "0.12.4"
98
99
  },
99
- "version": "3.17.0"
100
+ "version": "3.18.1"
100
101
  }