@sasjs/cli 4.6.0 → 4.8.0

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.
@@ -0,0 +1,250 @@
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 (g && (g = 0, op[0] && (_ = 0)), _) 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 snippets_1 = require("../snippets");
43
+ var utils_1 = require("@sasjs/utils");
44
+ var path_1 = __importDefault(require("path"));
45
+ var utils_2 = require("../../../utils");
46
+ describe('sasjs snippets', function () {
47
+ var testMacroFolder1 = 'testMacros';
48
+ var testMacroFolder2 = 'testMacros2';
49
+ var emptyMacroFolder = 'empty';
50
+ var customOutputFilePath = 'snippets.json';
51
+ var defaultFileName = 'sasjs-macro-snippets.json';
52
+ var defaultOutputFilePath = path_1.default.join(__dirname, 'sasjsresults', defaultFileName);
53
+ var customOutputFolder = 'snippets';
54
+ var customOutputFolderWithDefaultFileName = path_1.default.join(__dirname, customOutputFolder, defaultFileName);
55
+ var buildDestinationResultsFolder = path_1.default.join(__dirname, 'sasjsresults');
56
+ beforeAll(function () { return __awaiter(void 0, void 0, void 0, function () {
57
+ return __generator(this, function (_a) {
58
+ switch (_a.label) {
59
+ case 0: return [4 /*yield*/, (0, utils_2.setConstants)(false)];
60
+ case 1:
61
+ _a.sent();
62
+ process.projectDir = __dirname;
63
+ process.sasjsConstants.buildDestinationResultsFolder =
64
+ buildDestinationResultsFolder;
65
+ process.sasjsConstants.buildSourceFolder = __dirname;
66
+ return [2 /*return*/];
67
+ }
68
+ });
69
+ }); });
70
+ afterAll(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, utils_1.deleteFolder)(path_1.default.join(__dirname, customOutputFolder))];
74
+ case 1:
75
+ _a.sent();
76
+ return [4 /*yield*/, (0, utils_1.deleteFile)(path_1.default.join(__dirname, customOutputFilePath))];
77
+ case 2:
78
+ _a.sent();
79
+ return [4 /*yield*/, (0, utils_1.deleteFolder)(buildDestinationResultsFolder)];
80
+ case 3:
81
+ _a.sent();
82
+ return [2 /*return*/];
83
+ }
84
+ });
85
+ }); });
86
+ it('should generate snippets', function () { return __awaiter(void 0, void 0, void 0, function () {
87
+ var target, config, macroFolders, outputFilePath, expectedSnippets, generatedSnippets, _a, _b;
88
+ return __generator(this, function (_c) {
89
+ switch (_c.label) {
90
+ case 0:
91
+ target = new utils_1.Target({
92
+ name: 'test',
93
+ appLoc: '/Public/test/',
94
+ serverType: utils_1.ServerType.SasViya,
95
+ macroFolders: [testMacroFolder1]
96
+ });
97
+ config = {
98
+ macroFolders: [testMacroFolder2],
99
+ targets: [target]
100
+ };
101
+ process.sasjsConfig = config;
102
+ return [4 /*yield*/, (0, utils_2.getMacroFolders)(target)];
103
+ case 1:
104
+ macroFolders = _c.sent();
105
+ return [4 /*yield*/, (0, snippets_1.generateSnippets)(macroFolders, customOutputFilePath)];
106
+ case 2:
107
+ _c.sent();
108
+ outputFilePath = path_1.default.join(__dirname, customOutputFilePath);
109
+ return [4 /*yield*/, expect((0, utils_1.fileExists)(outputFilePath)).resolves.toEqual(true)];
110
+ case 3:
111
+ _c.sent();
112
+ expectedSnippets = {
113
+ macro2: {
114
+ prefix: '%macro2',
115
+ body: '%macro2($1)',
116
+ description: [
117
+ 'Macro 2',
118
+ '\r',
119
+ 'Params:',
120
+ '-msg The message to be printed'
121
+ ]
122
+ },
123
+ badMacro: {
124
+ prefix: '%badMacro',
125
+ body: '%badMacro($1)',
126
+ description: []
127
+ },
128
+ example: {
129
+ prefix: '%example',
130
+ body: '%example($1)',
131
+ description: [
132
+ 'An example macro',
133
+ '\r',
134
+ 'Params:',
135
+ '-msg The message to be printed'
136
+ ]
137
+ },
138
+ subMacro: {
139
+ prefix: '%subMacro',
140
+ body: '%subMacro($1)',
141
+ description: [
142
+ 'A sub macro',
143
+ '\r',
144
+ 'Params:',
145
+ '-msg The message to be printed'
146
+ ]
147
+ },
148
+ subSubMacro: {
149
+ prefix: '%subSubMacro',
150
+ body: '%subSubMacro($1)',
151
+ description: [
152
+ 'A sub sub macro',
153
+ '\r',
154
+ 'Params:',
155
+ '-msg The message to be printed'
156
+ ]
157
+ }
158
+ };
159
+ _b = (_a = JSON).parse;
160
+ return [4 /*yield*/, (0, utils_1.readFile)(outputFilePath)];
161
+ case 4:
162
+ generatedSnippets = _b.apply(_a, [_c.sent()]);
163
+ expect(generatedSnippets).toEqual(expectedSnippets);
164
+ return [2 /*return*/];
165
+ }
166
+ });
167
+ }); });
168
+ it('should generate snippets with default file name', function () { return __awaiter(void 0, void 0, void 0, function () {
169
+ var targetWithoutMacroFolders, config, macroFolders;
170
+ return __generator(this, function (_a) {
171
+ switch (_a.label) {
172
+ case 0:
173
+ targetWithoutMacroFolders = new utils_1.Target({
174
+ name: 'test',
175
+ appLoc: '/Public/test/',
176
+ serverType: utils_1.ServerType.SasViya
177
+ });
178
+ config = {
179
+ macroFolders: [testMacroFolder2],
180
+ targets: [targetWithoutMacroFolders]
181
+ };
182
+ process.sasjsConfig = config;
183
+ return [4 /*yield*/, (0, utils_2.getMacroFolders)(targetWithoutMacroFolders)];
184
+ case 1:
185
+ macroFolders = _a.sent();
186
+ return [4 /*yield*/, (0, snippets_1.generateSnippets)(macroFolders)];
187
+ case 2:
188
+ _a.sent();
189
+ return [4 /*yield*/, expect((0, utils_1.fileExists)(defaultOutputFilePath)).resolves.toEqual(true)];
190
+ case 3:
191
+ _a.sent();
192
+ return [2 /*return*/];
193
+ }
194
+ });
195
+ }); });
196
+ it('should generate snippets with custom folder and default file name', function () { return __awaiter(void 0, void 0, void 0, function () {
197
+ var config, macroFolders;
198
+ return __generator(this, function (_a) {
199
+ switch (_a.label) {
200
+ case 0:
201
+ config = { macroFolders: [testMacroFolder2] };
202
+ process.sasjsConfig = config;
203
+ return [4 /*yield*/, (0, utils_2.getMacroFolders)()];
204
+ case 1:
205
+ macroFolders = _a.sent();
206
+ return [4 /*yield*/, (0, snippets_1.generateSnippets)(macroFolders, customOutputFolder)];
207
+ case 2:
208
+ _a.sent();
209
+ return [4 /*yield*/, expect((0, utils_1.fileExists)(customOutputFolderWithDefaultFileName)).resolves.toEqual(true)];
210
+ case 3:
211
+ _a.sent();
212
+ return [2 /*return*/];
213
+ }
214
+ });
215
+ }); });
216
+ it('should return an error if macroFolders array was not provided', function () { return __awaiter(void 0, void 0, void 0, function () {
217
+ var config, macroFolders;
218
+ return __generator(this, function (_a) {
219
+ switch (_a.label) {
220
+ case 0:
221
+ config = {};
222
+ process.sasjsConfig = config;
223
+ return [4 /*yield*/, (0, utils_2.getMacroFolders)()];
224
+ case 1:
225
+ macroFolders = _a.sent();
226
+ return [4 /*yield*/, expect((0, snippets_1.generateSnippets)(macroFolders)).rejects.toEqual('"macroFolders" array was not found in sasjs/sasjsconfig.json.')];
227
+ case 2:
228
+ _a.sent();
229
+ return [2 /*return*/];
230
+ }
231
+ });
232
+ }); });
233
+ it('should return an error if macros were not found', function () { return __awaiter(void 0, void 0, void 0, function () {
234
+ var config, macroFolders;
235
+ return __generator(this, function (_a) {
236
+ switch (_a.label) {
237
+ case 0:
238
+ config = { macroFolders: [emptyMacroFolder] };
239
+ process.sasjsConfig = config;
240
+ return [4 /*yield*/, (0, utils_2.getMacroFolders)()];
241
+ case 1:
242
+ macroFolders = _a.sent();
243
+ return [4 /*yield*/, expect((0, snippets_1.generateSnippets)(macroFolders)).rejects.toEqual('No VS Code snippets has been found.')];
244
+ case 2:
245
+ _a.sent();
246
+ return [2 /*return*/];
247
+ }
248
+ });
249
+ }); });
250
+ });
@@ -0,0 +1,195 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
26
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
27
+ return new (P || (P = Promise))(function (resolve, reject) {
28
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
29
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
30
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
31
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
32
+ });
33
+ };
34
+ var __generator = (this && this.__generator) || function (thisArg, body) {
35
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
36
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
37
+ function verb(n) { return function (v) { return step([n, v]); }; }
38
+ function step(op) {
39
+ if (f) throw new TypeError("Generator is already executing.");
40
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
41
+ 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;
42
+ if (y = 0, t) op = [op[0] & 2, t.value];
43
+ switch (op[0]) {
44
+ case 0: case 1: t = op; break;
45
+ case 4: _.label++; return { value: op[1], done: false };
46
+ case 5: _.label++; y = op[1]; op = [0]; continue;
47
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
48
+ default:
49
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
50
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
51
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
52
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
53
+ if (t[2]) _.ops.pop();
54
+ _.trys.pop(); continue;
55
+ }
56
+ op = body.call(thisArg, _);
57
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
58
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
59
+ }
60
+ };
61
+ var __read = (this && this.__read) || function (o, n) {
62
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
63
+ if (!m) return o;
64
+ var i = m.call(o), r, ar = [], e;
65
+ try {
66
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
67
+ }
68
+ catch (error) { e = { error: error }; }
69
+ finally {
70
+ try {
71
+ if (r && !r.done && (m = i["return"])) m.call(i);
72
+ }
73
+ finally { if (e) throw e.error; }
74
+ }
75
+ return ar;
76
+ };
77
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
78
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
79
+ if (ar || !(i in from)) {
80
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
81
+ ar[i] = from[i];
82
+ }
83
+ }
84
+ return to.concat(ar || Array.prototype.slice.call(from));
85
+ };
86
+ Object.defineProperty(exports, "__esModule", { value: true });
87
+ var snippetsCommand_1 = require("../snippetsCommand");
88
+ var snippetsModule = __importStar(require("../snippets"));
89
+ var command_1 = require("../../../types/command");
90
+ var utils_1 = require("@sasjs/utils");
91
+ var configUtils = __importStar(require("../../../utils/config"));
92
+ var setConstantsUtils = __importStar(require("../../../utils/setConstants"));
93
+ var logger_1 = require("@sasjs/utils/logger");
94
+ var utils_2 = require("../../../utils");
95
+ var target = new utils_1.Target({
96
+ name: 'test',
97
+ appLoc: '/Public/test/',
98
+ serverType: utils_1.ServerType.SasViya,
99
+ contextName: 'test context'
100
+ });
101
+ var config = {};
102
+ describe('SnippetsCommand', function () {
103
+ var defaultArgs = ['node', 'sasjs'];
104
+ var commandName = 'snippets';
105
+ beforeAll(function () { return __awaiter(void 0, void 0, void 0, function () {
106
+ return __generator(this, function (_a) {
107
+ switch (_a.label) {
108
+ case 0: return [4 /*yield*/, (0, utils_2.setConstants)(false)];
109
+ case 1:
110
+ _a.sent();
111
+ return [2 /*return*/];
112
+ }
113
+ });
114
+ }); });
115
+ beforeEach(function () {
116
+ setupMocks();
117
+ });
118
+ it('should parse sasjs snippets command without flags', function () {
119
+ var args = __spreadArray(__spreadArray([], __read(defaultArgs), false), [commandName], false);
120
+ var command = new snippetsCommand_1.SnippetsCommand(args);
121
+ expect(command.name).toEqual(commandName);
122
+ });
123
+ it('should call snippets handler when executed', function () { return __awaiter(void 0, void 0, void 0, function () {
124
+ var args, command, returnCode;
125
+ return __generator(this, function (_a) {
126
+ switch (_a.label) {
127
+ case 0:
128
+ args = __spreadArray(__spreadArray([], __read(defaultArgs), false), [commandName], false);
129
+ command = new snippetsCommand_1.SnippetsCommand(args);
130
+ return [4 /*yield*/, command.execute()];
131
+ case 1:
132
+ returnCode = _a.sent();
133
+ expect(returnCode).toEqual(command_1.ReturnCode.Success);
134
+ return [2 /*return*/];
135
+ }
136
+ });
137
+ }); });
138
+ it('should parse a sasjs snippets command with a target', function () { return __awaiter(void 0, void 0, void 0, function () {
139
+ var args, command, targetInfo;
140
+ return __generator(this, function (_a) {
141
+ switch (_a.label) {
142
+ case 0:
143
+ args = __spreadArray(__spreadArray([], __read(defaultArgs), false), [commandName, '-t', 'test'], false);
144
+ command = new snippetsCommand_1.SnippetsCommand(args);
145
+ return [4 /*yield*/, command.getTargetInfo()];
146
+ case 1:
147
+ targetInfo = _a.sent();
148
+ expect(command.name).toEqual(commandName);
149
+ expect(command.subCommand).toEqual('');
150
+ expect(targetInfo.target).toEqual(target);
151
+ return [2 /*return*/];
152
+ }
153
+ });
154
+ }); });
155
+ it('should return with the error code when execution fails', function () { return __awaiter(void 0, void 0, void 0, function () {
156
+ var args, command, returnCode;
157
+ return __generator(this, function (_a) {
158
+ switch (_a.label) {
159
+ case 0:
160
+ args = __spreadArray(__spreadArray([], __read(defaultArgs), false), [commandName], false);
161
+ jest
162
+ .spyOn(snippetsModule, 'generateSnippets')
163
+ .mockImplementation(function () { return Promise.reject(); });
164
+ command = new snippetsCommand_1.SnippetsCommand(args);
165
+ return [4 /*yield*/, command.execute()];
166
+ case 1:
167
+ returnCode = _a.sent();
168
+ expect(returnCode).toEqual(command_1.ReturnCode.InternalError);
169
+ expect(process.logger.error).toHaveBeenCalled();
170
+ return [2 /*return*/];
171
+ }
172
+ });
173
+ }); });
174
+ });
175
+ var setupMocks = function () {
176
+ jest.resetAllMocks();
177
+ jest
178
+ .spyOn(snippetsModule, 'generateSnippets')
179
+ .mockImplementation(function () { return Promise.resolve(''); });
180
+ jest
181
+ .spyOn(configUtils, 'findTargetInConfiguration')
182
+ .mockImplementation(function () { return Promise.resolve({ target: target, isLocal: true }); });
183
+ jest
184
+ .spyOn(configUtils, 'getLocalConfig')
185
+ .mockImplementation(function () { return Promise.resolve(config); });
186
+ jest
187
+ .spyOn(configUtils, 'findTargetInConfiguration')
188
+ .mockImplementation(function () { return Promise.resolve({ target: target, isLocal: true }); });
189
+ jest
190
+ .spyOn(setConstantsUtils, 'setConstants')
191
+ .mockImplementation(function () { return Promise.resolve(); });
192
+ process.logger = new logger_1.Logger(logger_1.LogLevel.Off);
193
+ jest.spyOn(process.logger, 'success');
194
+ jest.spyOn(process.logger, 'error');
195
+ };
@@ -24,6 +24,7 @@ var jobCommand_1 = require("../../commands/job/jobCommand");
24
24
  var lintCommand_1 = require("../../commands/lint/lintCommand");
25
25
  var flowCommand_1 = require("../../commands/flow/flowCommand");
26
26
  var fsCommand_1 = require("../../commands/fs/fsCommand");
27
+ var snippetsCommand_1 = require("../../commands/snippets/snippetsCommand");
27
28
  exports.commandFactory = new Map([
28
29
  ['add', function (args) { return new addCommand_1.AddCommand(args); }],
29
30
  ['build', function (args) { return new buildCommand_1.BuildCommand(args); }],
@@ -48,6 +49,7 @@ exports.commandFactory = new Map([
48
49
  ['request', function (args) { return new requestCommand_1.RequestCommand(args); }],
49
50
  ['run', function (args) { return new runCommand_1.RunCommand(args); }],
50
51
  ['servicepack', function (args) { return new servicePackCommand_1.ServicePackCommand(args); }],
52
+ ['snippets', function (args) { return new snippetsCommand_1.SnippetsCommand(args); }],
51
53
  ['version', function (args) { return new versionCommand_1.VersionCommand(args); }],
52
54
  ['test', function (args) { return new testCommand_1.TestCommand(args); }],
53
55
  ['web', function (args) { return new webCommand_1.WebCommand(args); }]
@@ -114,6 +114,6 @@ export declare function getSASjsAndAuthConfig(target: Target): Promise<{
114
114
  authConfig?: undefined;
115
115
  } | {
116
116
  sasjs: SASjs;
117
- authConfig: AuthConfig;
117
+ authConfig: AuthConfig | undefined;
118
118
  authConfigSas9?: undefined;
119
119
  }>;
@@ -1150,11 +1150,19 @@ exports.getTestTearDown = getTestTearDown;
1150
1150
  function getSASjs(target) {
1151
1151
  var _a = process.env, VERBOSE = _a.VERBOSE, LOG_LEVEL = _a.LOG_LEVEL;
1152
1152
  var verbose = false;
1153
- // verbose mode should be enabled if VERBOSE environment variable present and is equal to 'on'(case insensitive)
1153
+ // verbose mode should be enabled if VERBOSE environment variable present and
1154
+ // is equal to 'on'(case insensitive)
1154
1155
  if (typeof VERBOSE === 'string' && /on/i.test(VERBOSE)) {
1155
1156
  verbose = true;
1156
1157
  }
1157
- // verbose mode should be enabled if LOG_LEVEL environment variable present and is equal to 'trace'(case insensitive)
1158
+ // verbose mode should be enabled in 'bleached' mode(without extra colors)
1159
+ // if VERBOSE environment variable present and is equal to
1160
+ // 'bleached'(case insensitive)
1161
+ if (typeof VERBOSE === 'string' && /bleached/i.test(VERBOSE)) {
1162
+ verbose = 'bleached';
1163
+ }
1164
+ // verbose mode should be enabled if LOG_LEVEL environment variable present
1165
+ // and is equal to 'trace'(case insensitive)
1158
1166
  else if (typeof LOG_LEVEL === 'string' && /trace/i.test(LOG_LEVEL)) {
1159
1167
  verbose = true;
1160
1168
  }
@@ -1178,23 +1186,48 @@ exports.getSASjs = getSASjs;
1178
1186
  */
1179
1187
  function getSASjsAndAuthConfig(target) {
1180
1188
  return __awaiter(this, void 0, void 0, function () {
1181
- var sasjs;
1182
- var _a;
1183
- return __generator(this, function (_b) {
1184
- switch (_b.label) {
1189
+ var sasjs, _a, _b;
1190
+ var _c, _d;
1191
+ return __generator(this, function (_e) {
1192
+ switch (_e.label) {
1185
1193
  case 0:
1186
1194
  sasjs = getSASjs(target);
1187
- if (target.serverType === utils_1.ServerType.Sas9)
1188
- return [2 /*return*/, {
1189
- sasjs: sasjs,
1190
- authConfigSas9: getAuthConfigSAS9(target)
1191
- }];
1192
- _a = {
1195
+ _a = target.serverType;
1196
+ switch (_a) {
1197
+ case utils_1.ServerType.SasViya: return [3 /*break*/, 1];
1198
+ case utils_1.ServerType.Sas9: return [3 /*break*/, 3];
1199
+ case utils_1.ServerType.Sasjs: return [3 /*break*/, 4];
1200
+ }
1201
+ return [3 /*break*/, 9];
1202
+ case 1:
1203
+ _c = {
1204
+ sasjs: sasjs
1205
+ };
1206
+ return [4 /*yield*/, getAuthConfig(target)];
1207
+ case 2: return [2 /*return*/, (_c.authConfig = _e.sent(),
1208
+ _c)];
1209
+ case 3: return [2 /*return*/, {
1210
+ sasjs: sasjs,
1211
+ authConfigSas9: getAuthConfigSAS9(target)
1212
+ }];
1213
+ case 4:
1214
+ _d = {
1193
1215
  sasjs: sasjs
1194
1216
  };
1217
+ return [4 /*yield*/, (0, utils_2.isSasJsServerInServerMode)(target)];
1218
+ case 5:
1219
+ if (!(_e.sent())) return [3 /*break*/, 7];
1195
1220
  return [4 /*yield*/, getAuthConfig(target)];
1196
- case 1: return [2 /*return*/, (_a.authConfig = _b.sent(),
1197
- _a)];
1221
+ case 6:
1222
+ _b = _e.sent();
1223
+ return [3 /*break*/, 8];
1224
+ case 7:
1225
+ _b = undefined; // @sasjs/server doesn't have authentication in desktop mode
1226
+ _e.label = 8;
1227
+ case 8: return [2 /*return*/, (_d.authConfig = _b // @sasjs/server doesn't have authentication in desktop mode
1228
+ ,
1229
+ _d)];
1230
+ case 9: return [2 /*return*/];
1198
1231
  }
1199
1232
  });
1200
1233
  });
package/package.json CHANGED
@@ -21,7 +21,7 @@
21
21
  "lint": "npx prettier --check \"{src,test}/**/*.{ts,tsx,js,jsx,html,css,sass,less,yml,md,graphql}\"",
22
22
  "preinstall": "npm run nodeVersionMessage",
23
23
  "prepare": "git rev-parse --git-dir && git config core.hooksPath ./.git-hooks || true",
24
- "doc": "npx compodoc -p tsconfig.doc.json --coverageTest 15 --coverageTestThresholdFail"
24
+ "doc": "npx compodoc -p tsconfig.doc.json --coverageTest 16 --coverageTestThresholdFail"
25
25
  },
26
26
  "testServerTypes": "sasjs",
27
27
  "release": {
@@ -51,10 +51,10 @@
51
51
  "access": "public"
52
52
  },
53
53
  "dependencies": {
54
- "@sasjs/adapter": "4.8.0",
54
+ "@sasjs/adapter": "4.9.0",
55
55
  "@sasjs/core": "4.46.3",
56
56
  "@sasjs/lint": "2.3.1",
57
- "@sasjs/utils": "3.3.0",
57
+ "@sasjs/utils": "3.4.0",
58
58
  "adm-zip": "0.5.9",
59
59
  "chalk": "4.1.2",
60
60
  "dotenv": "16.0.3",
@@ -104,5 +104,5 @@
104
104
  "typescript": "4.9.5",
105
105
  "util": "0.12.4"
106
106
  },
107
- "version": "4.6.0"
107
+ "version": "4.8.0"
108
108
  }