@sasjs/cli 3.6.0 → 3.6.4
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/README.md +0 -3
- package/build/cli.js +4 -4
- package/build/cli.spec.js +6 -6
- package/build/commands/add/addCommand.js +2 -2
- package/build/commands/add/addCredential.js +27 -27
- package/build/commands/add/addTarget.js +10 -10
- package/build/commands/add/internal/input.js +30 -30
- package/build/commands/add/internal/saveConfig.js +2 -2
- package/build/commands/add/spec/addCommand.spec.js +24 -20
- package/build/commands/add/spec/addCredential.spec.js +14 -14
- package/build/commands/add/spec/addTarget.spec.js +22 -22
- package/build/commands/build/build.js +81 -77
- package/build/commands/build/buildCommand.js +3 -3
- package/build/commands/build/compileBuildCommand.js +4 -4
- package/build/commands/build/internal/config.js +8 -8
- package/build/commands/build/internal/getLaunchPageCode.js +2 -2
- package/build/commands/build/spec/build.spec.js +10 -10
- package/build/commands/build/spec/buildCommand.spec.js +16 -12
- package/build/commands/build/spec/cb.spec.server.js +18 -18
- package/build/commands/build/spec/compileBuildCommand.spec.js +17 -13
- package/build/commands/compile/compile.js +61 -61
- package/build/commands/compile/compileCommand.js +10 -10
- package/build/commands/compile/compileSingleFile.js +17 -17
- package/build/commands/compile/internal/checkCompileStatus.js +11 -11
- package/build/commands/compile/internal/compareFolders.js +11 -11
- package/build/commands/compile/internal/compileJobFile.js +3 -3
- package/build/commands/compile/internal/compileServiceFile.js +14 -14
- package/build/commands/compile/internal/compileTestFile.js +41 -37
- package/build/commands/compile/internal/getAllJobFolders.js +13 -9
- package/build/commands/compile/internal/getAllServiceFolders.js +13 -9
- package/build/commands/compile/internal/getServerType.js +1 -1
- package/build/commands/compile/internal/identifySasFile.js +2 -2
- package/build/commands/compile/internal/loadDependencies.js +5 -5
- package/build/commands/compile/internal/spec/compileTestFile.spec.js +40 -40
- package/build/commands/compile/spec/compareFolders.spec.js +27 -27
- package/build/commands/compile/spec/compile.spec.js +93 -93
- package/build/commands/compile/spec/compileCommand.spec.js +37 -33
- package/build/commands/compile/spec/compileJobFile.spec.js +12 -22
- package/build/commands/compile/spec/compileServiceFile.spec.js +12 -22
- package/build/commands/compile/spec/copyFilesToBuildFolder.spec.js +7 -7
- package/build/commands/compile/spec/loadDependencies.spec.js +31 -162
- package/build/commands/context/contextCommand.js +16 -16
- package/build/commands/context/create.js +1 -1
- package/build/commands/context/delete.js +2 -2
- package/build/commands/context/edit.js +1 -1
- package/build/commands/context/export.js +5 -5
- package/build/commands/context/internal/validateConfigPath.js +1 -1
- package/build/commands/context/list.js +4 -4
- package/build/commands/context/spec/contextCommand.spec.js +80 -76
- package/build/commands/context/spec/create.spec.js +3 -3
- package/build/commands/context/spec/delete.spec.js +3 -3
- package/build/commands/context/spec/edit.spec.js +3 -3
- package/build/commands/context/spec/export.spec.js +8 -8
- package/build/commands/context/spec/list.spec.js +5 -5
- package/build/commands/create/create.js +12 -12
- package/build/commands/create/createCommand.js +2 -2
- package/build/commands/create/internal/createReadme.js +2 -2
- package/build/commands/create/spec/create.spec.js +39 -39
- package/build/commands/create/spec/createCommand.spec.js +14 -10
- package/build/commands/db/db.js +22 -22
- package/build/commands/db/dbCommand.js +1 -1
- package/build/commands/db/spec/db.spec.js +8 -8
- package/build/commands/db/spec/dbCommand.spec.js +11 -7
- package/build/commands/deploy/compileBuildDeployCommand.js +6 -6
- package/build/commands/deploy/deploy.js +39 -39
- package/build/commands/deploy/deployCommand.js +2 -2
- package/build/commands/deploy/internal/getDeployScripts.js +14 -10
- package/build/commands/deploy/spec/cbd.spec.js +14 -14
- package/build/commands/deploy/spec/cbd.spec.server.js +40 -40
- package/build/commands/deploy/spec/compileBuildDeployCommand.spec.js +18 -14
- package/build/commands/deploy/spec/deployCommand.spec.js +15 -11
- package/build/commands/deploy/spec/getDeployScripts.spec.js +8 -8
- package/build/commands/deploy/spec/utils.js +17 -17
- package/build/commands/docs/docsCommand.js +7 -7
- package/build/commands/docs/generateDocs.js +33 -29
- package/build/commands/docs/generateDot.js +12 -8
- package/build/commands/docs/initDocs.js +1 -1
- package/build/commands/docs/internal/createDotFiles.js +6 -6
- package/build/commands/docs/internal/getDotFileContent.js +17 -17
- package/build/commands/docs/internal/getFileInputs.js +1 -1
- package/build/commands/docs/internal/getFileOutputs.js +1 -1
- package/build/commands/docs/internal/getFoldersForDocs.js +4 -4
- package/build/commands/docs/internal/populateNodeDictionary.js +1 -1
- package/build/commands/docs/spec/docsCommand.spec.js +25 -21
- package/build/commands/docs/spec/generateDocs.spec.js +60 -60
- package/build/commands/docs/spec/generateDot.spec.js +23 -23
- package/build/commands/docs/spec/getDocConfig.spec.js +2 -2
- package/build/commands/docs/spec/initDocs.spec.js +7 -7
- package/build/commands/flow/execute.js +8 -8
- package/build/commands/flow/flowCommand.js +5 -5
- package/build/commands/flow/internal/checkPredecessorDeadlock.js +11 -7
- package/build/commands/flow/internal/executeFlow.js +23 -23
- package/build/commands/flow/internal/failAllSuccessors.js +1 -1
- package/build/commands/flow/internal/generateFileName.js +2 -2
- package/build/commands/flow/internal/normalizeFilePath.js +1 -1
- package/build/commands/flow/internal/parseJobDetails.js +3 -3
- package/build/commands/flow/internal/printError.js +1 -1
- package/build/commands/flow/internal/saveLog.js +8 -8
- package/build/commands/flow/internal/saveToCsv.js +2 -2
- package/build/commands/flow/internal/spec/allFlowsCompleted.spec.js +4 -4
- package/build/commands/flow/internal/spec/checkPredecessorDeadlock.spec.js +4 -4
- package/build/commands/flow/internal/spec/executeFlow.spec.js +10 -10
- package/build/commands/flow/internal/spec/failAllSuccessors.spec.js +1 -1
- package/build/commands/flow/internal/spec/saveToCsv.spec.js +16 -16
- package/build/commands/flow/internal/spec/validateParams.spec.js +33 -33
- package/build/commands/flow/internal/validateParams.js +17 -17
- package/build/commands/flow/spec/flow.spec.js +1 -1
- package/build/commands/flow/spec/flow.spec.server.js +60 -60
- package/build/commands/flow/spec/flowCommand.spec.js +16 -12
- package/build/commands/folder/create.js +2 -2
- package/build/commands/folder/delete.js +2 -2
- package/build/commands/folder/folderCommand.js +11 -11
- package/build/commands/folder/move.js +2 -2
- package/build/commands/folder/spec/folder.spec.server.js +35 -35
- package/build/commands/folder/spec/folderCommand.spec.js +23 -19
- package/build/commands/help/help.js +46 -46
- package/build/commands/help/helpCommand.js +1 -1
- package/build/commands/help/spec/help.spec.js +8 -8
- package/build/commands/help/spec/helpCommand.spec.js +11 -7
- package/build/commands/init/init.js +7 -7
- package/build/commands/init/initCommand.js +1 -1
- package/build/commands/init/spec/init.spec.server.js +17 -17
- package/build/commands/init/spec/initCommand.spec.js +11 -7
- package/build/commands/job/internal/execute/sasjs.js +1 -1
- package/build/commands/job/internal/execute/viya.js +35 -35
- package/build/commands/job/internal/utils.js +6 -6
- package/build/commands/job/jobCommand.js +6 -6
- package/build/commands/job/spec/execute.spec.js +6 -6
- package/build/commands/job/spec/getContextName.spec.js +2 -2
- package/build/commands/job/spec/job.spec.server.js +53 -53
- package/build/commands/job/spec/jobCommand.spec.js +17 -13
- package/build/commands/lint/initLint.js +2 -2
- package/build/commands/lint/lintCommand.js +10 -10
- package/build/commands/lint/processLint.js +5 -5
- package/build/commands/lint/spec/lintCommand.spec.js +19 -15
- package/build/commands/request/request.js +16 -16
- package/build/commands/request/requestCommand.js +5 -5
- package/build/commands/request/spec/request.spec.server.js +210 -178
- package/build/commands/request/spec/requestCommand.spec.js +17 -13
- package/build/commands/run/run.js +23 -23
- package/build/commands/run/runCommand.js +2 -2
- package/build/commands/run/spec/run.spec.server.js +51 -51
- package/build/commands/run/spec/runCommand.spec.js +10 -6
- package/build/commands/servicepack/deploy.js +6 -6
- package/build/commands/servicepack/servicePackCommand.js +3 -3
- package/build/commands/servicepack/spec/servicepack.spec.server.js +6 -6
- package/build/commands/servicepack/spec/servicepackCommand.spec.js +10 -6
- package/build/commands/shared/createConfigFile.js +2 -2
- package/build/commands/shared/createFileStructure.js +6 -6
- package/build/commands/shared/createLintConfigFile.js +1 -1
- package/build/commands/shared/deployToSasViyaWithServicePack.js +4 -4
- package/build/commands/shared/fetchLogFileContent.js +10 -6
- package/build/commands/testing/internal/saveOutput.js +39 -35
- package/build/commands/testing/spec/testCommand.spec.js +17 -13
- package/build/commands/testing/spec/testing.spec.server.js +38 -38
- package/build/commands/testing/test.js +45 -41
- package/build/commands/testing/testCommand.js +2 -2
- package/build/commands/version/spec/version.spec.js +1 -1
- package/build/commands/version/spec/versionCommand.spec.js +11 -7
- package/build/commands/version/version.js +3 -3
- package/build/commands/version/versionCommand.js +2 -2
- package/build/commands/web/internal/createAssetServices.js +28 -24
- package/build/commands/web/internal/getWebServiceContent.js +6 -6
- package/build/commands/web/internal/sasjsout.d.ts +1 -1
- package/build/commands/web/internal/sasjsout.js +1 -1
- package/build/commands/web/internal/spec/updateLinkTag.spec.js +2 -2
- package/build/commands/web/internal/spec/updateScriptTag.spec.js +10 -10
- package/build/commands/web/internal/updateAllTags.js +19 -15
- package/build/commands/web/internal/updateLinkTag.js +2 -2
- package/build/commands/web/internal/updateScriptTag.js +6 -6
- package/build/commands/web/spec/web.spec.js +23 -23
- package/build/commands/web/spec/webCommand.spec.js +16 -12
- package/build/commands/web/web.js +25 -25
- package/build/commands/web/webCommand.js +3 -3
- package/build/types/command/commandBase.js +19 -15
- package/build/types/command/parse.js +1 -1
- package/build/types/command/spec/commandBase.spec.js +16 -12
- package/build/types/command/targetCommand.js +4 -4
- package/build/types/command/unalias.js +9 -5
- package/build/utils/auth.js +7 -7
- package/build/utils/config.js +53 -49
- package/build/utils/displayResult.js +4 -4
- package/build/utils/file.js +11 -11
- package/build/utils/fileStructures/builtFiles.js +2 -2
- package/build/utils/fileStructures/builtFilesCustom1.js +2 -2
- package/build/utils/getLogFilePath.js +2 -3
- package/build/utils/loadEnvVariables.js +3 -3
- package/build/utils/prefixAppLoc.js +1 -1
- package/build/utils/saveLog.js +7 -7
- package/build/utils/setConstants.js +4 -4
- package/build/utils/setProjectDir.js +2 -2
- package/build/utils/spec/config.spec.js +80 -80
- package/build/utils/spec/displayResult.spec.js +7 -7
- package/build/utils/spec/file.spec.js +15 -15
- package/build/utils/spec/removeComments.spec.js +11 -11
- package/build/utils/spec/setConstants.spec.js +3 -3
- package/build/utils/spec/utils.spec.js +55 -55
- package/build/utils/test.js +59 -59
- package/build/utils/utils.js +47 -43
- package/package.json +11 -11
package/build/utils/test.js
CHANGED
|
@@ -70,12 +70,12 @@ var createTestApp = function (parentFolder, appName) { return __awaiter(void 0,
|
|
|
70
70
|
switch (_a.label) {
|
|
71
71
|
case 0:
|
|
72
72
|
process.projectDir = parentFolder;
|
|
73
|
-
return [4 /*yield*/, create_1.create(appName, '')];
|
|
73
|
+
return [4 /*yield*/, (0, create_1.create)(appName, '')];
|
|
74
74
|
case 1:
|
|
75
75
|
_a.sent();
|
|
76
76
|
process.projectDir = path_1.default.join(parentFolder, appName);
|
|
77
77
|
process.currentDir = process.projectDir;
|
|
78
|
-
return [4 /*yield*/, setConstants_1.setConstants()];
|
|
78
|
+
return [4 /*yield*/, (0, setConstants_1.setConstants)()];
|
|
79
79
|
case 2:
|
|
80
80
|
_a.sent();
|
|
81
81
|
return [2 /*return*/];
|
|
@@ -88,15 +88,15 @@ var createTestJobsApp = function (parentFolder, appName) { return __awaiter(void
|
|
|
88
88
|
switch (_a.label) {
|
|
89
89
|
case 0:
|
|
90
90
|
process.projectDir = parentFolder;
|
|
91
|
-
return [4 /*yield*/, create_1.create(appName, 'jobs')];
|
|
91
|
+
return [4 /*yield*/, (0, create_1.create)(appName, 'jobs')];
|
|
92
92
|
case 1:
|
|
93
93
|
_a.sent();
|
|
94
94
|
process.projectDir = path_1.default.join(parentFolder, appName);
|
|
95
95
|
process.currentDir = process.projectDir;
|
|
96
|
-
return [4 /*yield*/, setConstants_1.setConstants()];
|
|
96
|
+
return [4 /*yield*/, (0, setConstants_1.setConstants)()];
|
|
97
97
|
case 2:
|
|
98
98
|
_a.sent();
|
|
99
|
-
return [4 /*yield*/, exports.updateTarget({ serverUrl: 'https://example.com' }, 'viya')];
|
|
99
|
+
return [4 /*yield*/, (0, exports.updateTarget)({ serverUrl: 'https://example.com' }, 'viya')];
|
|
100
100
|
case 3:
|
|
101
101
|
_a.sent();
|
|
102
102
|
return [2 /*return*/];
|
|
@@ -109,12 +109,12 @@ var createTestMinimalApp = function (parentFolder, appName) { return __awaiter(v
|
|
|
109
109
|
switch (_a.label) {
|
|
110
110
|
case 0:
|
|
111
111
|
process.projectDir = parentFolder;
|
|
112
|
-
return [4 /*yield*/, create_1.create(appName, 'minimal')];
|
|
112
|
+
return [4 /*yield*/, (0, create_1.create)(appName, 'minimal')];
|
|
113
113
|
case 1:
|
|
114
114
|
_a.sent();
|
|
115
115
|
process.projectDir = path_1.default.join(parentFolder, appName);
|
|
116
116
|
process.currentDir = process.projectDir;
|
|
117
|
-
return [4 /*yield*/, setConstants_1.setConstants()];
|
|
117
|
+
return [4 /*yield*/, (0, setConstants_1.setConstants)()];
|
|
118
118
|
case 2:
|
|
119
119
|
_a.sent();
|
|
120
120
|
return [2 /*return*/];
|
|
@@ -125,7 +125,7 @@ exports.createTestMinimalApp = createTestMinimalApp;
|
|
|
125
125
|
var removeTestApp = function (parentFolder, appName) { return __awaiter(void 0, void 0, void 0, function () {
|
|
126
126
|
return __generator(this, function (_a) {
|
|
127
127
|
switch (_a.label) {
|
|
128
|
-
case 0: return [4 /*yield*/, utils_1.deleteFolder(path_1.default.join(parentFolder, appName))];
|
|
128
|
+
case 0: return [4 /*yield*/, (0, utils_1.deleteFolder)(path_1.default.join(parentFolder, appName))];
|
|
129
129
|
case 1:
|
|
130
130
|
_a.sent();
|
|
131
131
|
process.projectDir = '';
|
|
@@ -152,7 +152,7 @@ var removeTestServerFolder = function (folderPath, target) { return __awaiter(vo
|
|
|
152
152
|
serverType: target.serverType
|
|
153
153
|
});
|
|
154
154
|
accessToken = process.env.ACCESS_TOKEN;
|
|
155
|
-
return [4 /*yield*/, delete_1.deleteFolder(folderPath, sasjs, accessToken)];
|
|
155
|
+
return [4 /*yield*/, (0, delete_1.deleteFolder)(folderPath, sasjs, accessToken)];
|
|
156
156
|
case 1:
|
|
157
157
|
_a.sent();
|
|
158
158
|
return [2 /*return*/];
|
|
@@ -198,7 +198,7 @@ var generateTestTarget = function (targetName, appLoc, serviceConfig, serverType
|
|
|
198
198
|
testTearDown: path_1.default.join('tests', 'sub', 'testteardown.sas')
|
|
199
199
|
},
|
|
200
200
|
buildConfig: {
|
|
201
|
-
buildOutputFileName: targetName
|
|
201
|
+
buildOutputFileName: "".concat(targetName, ".sas")
|
|
202
202
|
},
|
|
203
203
|
deployConfig: {
|
|
204
204
|
deployServicePack: true
|
|
@@ -220,8 +220,8 @@ var createTestGlobalTarget = function (targetName, appLoc, serviceConfig, server
|
|
|
220
220
|
return __generator(this, function (_a) {
|
|
221
221
|
switch (_a.label) {
|
|
222
222
|
case 0:
|
|
223
|
-
target = exports.generateTestTarget(targetName, appLoc, serviceConfig, serverType);
|
|
224
|
-
return [4 /*yield*/, config_1.saveToGlobalConfig(target, false)];
|
|
223
|
+
target = (0, exports.generateTestTarget)(targetName, appLoc, serviceConfig, serverType);
|
|
224
|
+
return [4 /*yield*/, (0, config_1.saveToGlobalConfig)(target, false)];
|
|
225
225
|
case 1:
|
|
226
226
|
_a.sent();
|
|
227
227
|
return [2 /*return*/, target];
|
|
@@ -247,20 +247,20 @@ var verifyStep = function (step, buildFileName, customFiles) {
|
|
|
247
247
|
: compiledFilesCustom1_1.compiledFilesCustom1
|
|
248
248
|
: step === 'build'
|
|
249
249
|
? customFiles === 'no'
|
|
250
|
-
? builtFiles_1.builtFiles(buildFileName)
|
|
251
|
-
: builtFilesCustom1_1.builtFilesCustom1(buildFileName)
|
|
250
|
+
? (0, builtFiles_1.builtFiles)(buildFileName)
|
|
251
|
+
: (0, builtFilesCustom1_1.builtFilesCustom1)(buildFileName)
|
|
252
252
|
: compiledFiles_1.compiledFiles;
|
|
253
|
-
return [4 /*yield*/, expect(exports.verifyFolder(fileStructure)).resolves.toEqual(true)];
|
|
253
|
+
return [4 /*yield*/, expect((0, exports.verifyFolder)(fileStructure)).resolves.toEqual(true)];
|
|
254
254
|
case 1:
|
|
255
255
|
_c.sent();
|
|
256
256
|
if (!(step === 'build')) return [3 /*break*/, 4];
|
|
257
|
-
buildJsonFilePath = path_1.default.join(process.projectDir, 'sasjsbuild', buildFileName
|
|
257
|
+
buildJsonFilePath = path_1.default.join(process.projectDir, 'sasjsbuild', "".concat(buildFileName, ".json"));
|
|
258
258
|
_b = (_a = JSON).parse;
|
|
259
|
-
return [4 /*yield*/, utils_1.readFile(buildJsonFilePath)];
|
|
259
|
+
return [4 /*yield*/, (0, utils_1.readFile)(buildJsonFilePath)];
|
|
260
260
|
case 2:
|
|
261
261
|
buildJson = _b.apply(_a, [_c.sent()]);
|
|
262
|
-
buildSasFilePath = path_1.default.join(process.projectDir, 'sasjsbuild', buildFileName
|
|
263
|
-
return [4 /*yield*/, utils_1.readFile(buildSasFilePath)];
|
|
262
|
+
buildSasFilePath = path_1.default.join(process.projectDir, 'sasjsbuild', "".concat(buildFileName, ".sas"));
|
|
263
|
+
return [4 /*yield*/, (0, utils_1.readFile)(buildSasFilePath)];
|
|
264
264
|
case 3:
|
|
265
265
|
buildSas = _c.sent();
|
|
266
266
|
expect(verifyBuildJson(fileStructure.subFolders, buildJson.members, buildSas)).toEqual(true);
|
|
@@ -291,7 +291,7 @@ var verifyBuildJson = function (folders, buildJson, buildSas) {
|
|
|
291
291
|
return buildMember.name === file.fileName.replace(/.sas$/, '');
|
|
292
292
|
});
|
|
293
293
|
expect(fileFound).toBeTruthy();
|
|
294
|
-
expect(buildSas).toEqual(expect.stringContaining("%let service="
|
|
294
|
+
expect(buildSas).toEqual(expect.stringContaining("%let service=".concat(fileFound.name, ";")));
|
|
295
295
|
});
|
|
296
296
|
expect(verifyBuildJson(folder.subFolders, folderFound.members, buildSas)).toEqual(true);
|
|
297
297
|
});
|
|
@@ -302,13 +302,13 @@ var verifyFolder = function (folder, parentFolderName) {
|
|
|
302
302
|
return __awaiter(void 0, void 0, void 0, function () {
|
|
303
303
|
return __generator(this, function (_a) {
|
|
304
304
|
switch (_a.label) {
|
|
305
|
-
case 0: return [4 /*yield*/, expect(utils_1.folderExists(path_1.default.join(process.projectDir, parentFolderName, folder.folderName))).resolves.toEqual(true)];
|
|
305
|
+
case 0: return [4 /*yield*/, expect((0, utils_1.folderExists)(path_1.default.join(process.projectDir, parentFolderName, folder.folderName))).resolves.toEqual(true)];
|
|
306
306
|
case 1:
|
|
307
307
|
_a.sent();
|
|
308
|
-
return [4 /*yield*/, utils_1.asyncForEach(folder.files, function (file) { return __awaiter(void 0, void 0, void 0, function () {
|
|
308
|
+
return [4 /*yield*/, (0, utils_1.asyncForEach)(folder.files, function (file) { return __awaiter(void 0, void 0, void 0, function () {
|
|
309
309
|
return __generator(this, function (_a) {
|
|
310
310
|
switch (_a.label) {
|
|
311
|
-
case 0: return [4 /*yield*/, expect(utils_1.fileExists(path_1.default.join(process.projectDir, parentFolderName, folder.folderName, file.fileName))).resolves.toEqual(true)];
|
|
311
|
+
case 0: return [4 /*yield*/, expect((0, utils_1.fileExists)(path_1.default.join(process.projectDir, parentFolderName, folder.folderName, file.fileName))).resolves.toEqual(true)];
|
|
312
312
|
case 1:
|
|
313
313
|
_a.sent();
|
|
314
314
|
return [2 /*return*/];
|
|
@@ -317,10 +317,10 @@ var verifyFolder = function (folder, parentFolderName) {
|
|
|
317
317
|
}); })];
|
|
318
318
|
case 2:
|
|
319
319
|
_a.sent();
|
|
320
|
-
return [4 /*yield*/, utils_1.asyncForEach(folder.subFolders, function (subFolder) { return __awaiter(void 0, void 0, void 0, function () {
|
|
320
|
+
return [4 /*yield*/, (0, utils_1.asyncForEach)(folder.subFolders, function (subFolder) { return __awaiter(void 0, void 0, void 0, function () {
|
|
321
321
|
return __generator(this, function (_a) {
|
|
322
322
|
switch (_a.label) {
|
|
323
|
-
case 0: return [4 /*yield*/, exports.verifyFolder(subFolder, path_1.default.join(parentFolderName, folder.folderName))];
|
|
323
|
+
case 0: return [4 /*yield*/, (0, exports.verifyFolder)(subFolder, path_1.default.join(parentFolderName, folder.folderName))];
|
|
324
324
|
case 1:
|
|
325
325
|
_a.sent();
|
|
326
326
|
return [2 /*return*/];
|
|
@@ -343,10 +343,10 @@ var verifyPackageJsonContent = function (parentFolderName) {
|
|
|
343
343
|
switch (_a.label) {
|
|
344
344
|
case 0:
|
|
345
345
|
packageJsonPath = path_1.default.join(process.projectDir, parentFolderName, 'package.json');
|
|
346
|
-
return [4 /*yield*/, expect(utils_1.fileExists(packageJsonPath)).resolves.toEqual(true)];
|
|
346
|
+
return [4 /*yield*/, expect((0, utils_1.fileExists)(packageJsonPath)).resolves.toEqual(true)];
|
|
347
347
|
case 1:
|
|
348
348
|
_a.sent();
|
|
349
|
-
return [4 /*yield*/, utils_1.readFile(packageJsonPath)];
|
|
349
|
+
return [4 /*yield*/, (0, utils_1.readFile)(packageJsonPath)];
|
|
350
350
|
case 2:
|
|
351
351
|
packageJsonContent = _a.sent();
|
|
352
352
|
packageJson = JSON.parse(packageJsonContent);
|
|
@@ -367,19 +367,19 @@ var removeAllTargetsFromConfigs = function () { return __awaiter(void 0, void 0,
|
|
|
367
367
|
case 0:
|
|
368
368
|
buildSourceFolder = process.sasjsConstants.buildSourceFolder;
|
|
369
369
|
configPath = path_1.default.join(buildSourceFolder, 'sasjs', 'sasjsconfig.json');
|
|
370
|
-
return [4 /*yield*/, config_1.getConfiguration(configPath)];
|
|
370
|
+
return [4 /*yield*/, (0, config_1.getConfiguration)(configPath)];
|
|
371
371
|
case 1:
|
|
372
372
|
config = _b.sent();
|
|
373
373
|
config.targets = [];
|
|
374
|
-
return [4 /*yield*/, utils_1.createFile(configPath, JSON.stringify(config, null, 2))];
|
|
374
|
+
return [4 /*yield*/, (0, utils_1.createFile)(configPath, JSON.stringify(config, null, 2))];
|
|
375
375
|
case 2:
|
|
376
376
|
_b.sent();
|
|
377
|
-
return [4 /*yield*/, config_1.getGlobalRcFile()];
|
|
377
|
+
return [4 /*yield*/, (0, config_1.getGlobalRcFile)()];
|
|
378
378
|
case 3:
|
|
379
379
|
globalConfig = _b.sent();
|
|
380
380
|
if (!((_a = globalConfig === null || globalConfig === void 0 ? void 0 : globalConfig.targets) === null || _a === void 0 ? void 0 : _a.length)) return [3 /*break*/, 5];
|
|
381
381
|
globalConfig.targets = [];
|
|
382
|
-
return [4 /*yield*/, config_1.saveGlobalRcFile(JSON.stringify(globalConfig, null, 2))];
|
|
382
|
+
return [4 /*yield*/, (0, config_1.saveGlobalRcFile)(JSON.stringify(globalConfig, null, 2))];
|
|
383
383
|
case 4:
|
|
384
384
|
_b.sent();
|
|
385
385
|
_b.label = 5;
|
|
@@ -396,11 +396,11 @@ var updateTarget = function (targetJson, targetName, isLocal) {
|
|
|
396
396
|
switch (_c.label) {
|
|
397
397
|
case 0:
|
|
398
398
|
if (!isLocal) return [3 /*break*/, 2];
|
|
399
|
-
return [4 /*yield*/, config_1.getLocalConfig()];
|
|
399
|
+
return [4 /*yield*/, (0, config_1.getLocalConfig)()];
|
|
400
400
|
case 1:
|
|
401
401
|
_a = _c.sent();
|
|
402
402
|
return [3 /*break*/, 4];
|
|
403
|
-
case 2: return [4 /*yield*/, config_1.getGlobalRcFile()];
|
|
403
|
+
case 2: return [4 /*yield*/, (0, config_1.getGlobalRcFile)()];
|
|
404
404
|
case 3:
|
|
405
405
|
_a = _c.sent();
|
|
406
406
|
_c.label = 4;
|
|
@@ -411,19 +411,19 @@ var updateTarget = function (targetJson, targetName, isLocal) {
|
|
|
411
411
|
if (!(targetIndex >= 0)) return [3 /*break*/, 9];
|
|
412
412
|
config.targets.splice(targetIndex, 1, __assign(__assign({}, config.targets[targetIndex]), targetJson));
|
|
413
413
|
if (!isLocal) return [3 /*break*/, 6];
|
|
414
|
-
return [4 /*yield*/, config_1.saveLocalConfigFile(JSON.stringify(config, null, 2))];
|
|
414
|
+
return [4 /*yield*/, (0, config_1.saveLocalConfigFile)(JSON.stringify(config, null, 2))];
|
|
415
415
|
case 5:
|
|
416
416
|
_b = _c.sent();
|
|
417
417
|
return [3 /*break*/, 8];
|
|
418
|
-
case 6: return [4 /*yield*/, config_1.saveGlobalRcFile(JSON.stringify(config, null, 2))];
|
|
418
|
+
case 6: return [4 /*yield*/, (0, config_1.saveGlobalRcFile)(JSON.stringify(config, null, 2))];
|
|
419
419
|
case 7:
|
|
420
420
|
_b = _c.sent();
|
|
421
421
|
_c.label = 8;
|
|
422
422
|
case 8:
|
|
423
423
|
_b;
|
|
424
424
|
return [2 /*return*/, new types_1.Target(config.targets[targetIndex])];
|
|
425
|
-
case 9: throw "Unable to find Target: "
|
|
426
|
-
case 10: throw "Unable to find Target: "
|
|
425
|
+
case 9: throw "Unable to find Target: ".concat(targetName);
|
|
426
|
+
case 10: throw "Unable to find Target: ".concat(targetName);
|
|
427
427
|
}
|
|
428
428
|
});
|
|
429
429
|
});
|
|
@@ -437,11 +437,11 @@ var updateConfig = function (config, isLocal) {
|
|
|
437
437
|
switch (_c.label) {
|
|
438
438
|
case 0:
|
|
439
439
|
if (!isLocal) return [3 /*break*/, 2];
|
|
440
|
-
return [4 /*yield*/, config_1.getLocalConfig()];
|
|
440
|
+
return [4 /*yield*/, (0, config_1.getLocalConfig)()];
|
|
441
441
|
case 1:
|
|
442
442
|
_a = _c.sent();
|
|
443
443
|
return [3 /*break*/, 4];
|
|
444
|
-
case 2: return [4 /*yield*/, config_1.getGlobalRcFile()];
|
|
444
|
+
case 2: return [4 /*yield*/, (0, config_1.getGlobalRcFile)()];
|
|
445
445
|
case 3:
|
|
446
446
|
_a = _c.sent();
|
|
447
447
|
_c.label = 4;
|
|
@@ -449,11 +449,11 @@ var updateConfig = function (config, isLocal) {
|
|
|
449
449
|
currentConfig = _a;
|
|
450
450
|
updatedConfig = __assign(__assign({}, currentConfig), config);
|
|
451
451
|
if (!isLocal) return [3 /*break*/, 6];
|
|
452
|
-
return [4 /*yield*/, config_1.saveLocalConfigFile(JSON.stringify(updatedConfig, null, 2))];
|
|
452
|
+
return [4 /*yield*/, (0, config_1.saveLocalConfigFile)(JSON.stringify(updatedConfig, null, 2))];
|
|
453
453
|
case 5:
|
|
454
454
|
_b = _c.sent();
|
|
455
455
|
return [3 /*break*/, 8];
|
|
456
|
-
case 6: return [4 /*yield*/, config_1.saveGlobalRcFile(JSON.stringify(updatedConfig, null, 2))];
|
|
456
|
+
case 6: return [4 /*yield*/, (0, config_1.saveGlobalRcFile)(JSON.stringify(updatedConfig, null, 2))];
|
|
457
457
|
case 7:
|
|
458
458
|
_b = _c.sent();
|
|
459
459
|
_c.label = 8;
|
|
@@ -482,42 +482,42 @@ var verifyDocs = function (docsFolder, target, macroCore) {
|
|
|
482
482
|
yetAnotherMacroSource = path_1.default.join(docsFolder, 'yetanothermacro_8sas_source.html');
|
|
483
483
|
macroCoreFile = path_1.default.join(docsFolder, 'mf__existds_8sas.html');
|
|
484
484
|
macroCoreFileSource = path_1.default.join(docsFolder, 'mf__existds_8sas_source.html');
|
|
485
|
-
return [4 /*yield*/, expect(utils_1.folderExists(docsFolder)).resolves.toEqual(true)];
|
|
485
|
+
return [4 /*yield*/, expect((0, utils_1.folderExists)(docsFolder)).resolves.toEqual(true)];
|
|
486
486
|
case 1:
|
|
487
487
|
_a.sent();
|
|
488
|
-
return [4 /*yield*/, expect(utils_1.fileExists(indexHTML)).resolves.toEqual(true)];
|
|
488
|
+
return [4 /*yield*/, expect((0, utils_1.fileExists)(indexHTML)).resolves.toEqual(true)];
|
|
489
489
|
case 2:
|
|
490
490
|
_a.sent();
|
|
491
|
-
return [4 /*yield*/, expect(utils_1.fileExists(appInitHTML)).resolves.toEqual(true)];
|
|
491
|
+
return [4 /*yield*/, expect((0, utils_1.fileExists)(appInitHTML)).resolves.toEqual(true)];
|
|
492
492
|
case 3:
|
|
493
493
|
_a.sent();
|
|
494
494
|
expectSas9Files = target === 'sas9';
|
|
495
495
|
expectViyaFiles = target === 'viya';
|
|
496
|
-
return [4 /*yield*/, expect(utils_1.fileExists(sas9MacrosExampleMacro)).resolves.toEqual(expectSas9Files)];
|
|
496
|
+
return [4 /*yield*/, expect((0, utils_1.fileExists)(sas9MacrosExampleMacro)).resolves.toEqual(expectSas9Files)];
|
|
497
497
|
case 4:
|
|
498
498
|
_a.sent();
|
|
499
|
-
return [4 /*yield*/, expect(utils_1.fileExists(sas9ServicesAdminDostuff)).resolves.toEqual(expectSas9Files)];
|
|
499
|
+
return [4 /*yield*/, expect((0, utils_1.fileExists)(sas9ServicesAdminDostuff)).resolves.toEqual(expectSas9Files)];
|
|
500
500
|
case 5:
|
|
501
501
|
_a.sent();
|
|
502
|
-
return [4 /*yield*/, expect(utils_1.fileExists(viyaMacrosExampleMacro)).resolves.toEqual(expectViyaFiles)];
|
|
502
|
+
return [4 /*yield*/, expect((0, utils_1.fileExists)(viyaMacrosExampleMacro)).resolves.toEqual(expectViyaFiles)];
|
|
503
503
|
case 6:
|
|
504
504
|
_a.sent();
|
|
505
|
-
return [4 /*yield*/, expect(utils_1.fileExists(viyaServicesAdminDostuff)).resolves.toEqual(expectViyaFiles)];
|
|
505
|
+
return [4 /*yield*/, expect((0, utils_1.fileExists)(viyaServicesAdminDostuff)).resolves.toEqual(expectViyaFiles)];
|
|
506
506
|
case 7:
|
|
507
507
|
_a.sent();
|
|
508
|
-
return [4 /*yield*/, expect(utils_1.fileExists(yetAnotherMacro)).resolves.toEqual(true)];
|
|
508
|
+
return [4 /*yield*/, expect((0, utils_1.fileExists)(yetAnotherMacro)).resolves.toEqual(true)];
|
|
509
509
|
case 8:
|
|
510
510
|
_a.sent();
|
|
511
|
-
return [4 /*yield*/, expect(utils_1.fileExists(yetAnotherMacroSource)).resolves.toEqual(true)];
|
|
511
|
+
return [4 /*yield*/, expect((0, utils_1.fileExists)(yetAnotherMacroSource)).resolves.toEqual(true)];
|
|
512
512
|
case 9:
|
|
513
513
|
_a.sent();
|
|
514
|
-
return [4 /*yield*/, expect(utils_1.fileExists(macroCoreFile)).resolves.toEqual(macroCore)];
|
|
514
|
+
return [4 /*yield*/, expect((0, utils_1.fileExists)(macroCoreFile)).resolves.toEqual(macroCore)];
|
|
515
515
|
case 10:
|
|
516
516
|
_a.sent();
|
|
517
|
-
return [4 /*yield*/, expect(utils_1.fileExists(macroCoreFileSource)).resolves.toEqual(macroCore)];
|
|
517
|
+
return [4 /*yield*/, expect((0, utils_1.fileExists)(macroCoreFileSource)).resolves.toEqual(macroCore)];
|
|
518
518
|
case 11:
|
|
519
519
|
_a.sent();
|
|
520
|
-
return [4 /*yield*/, utils_1.readFile(indexHTML)];
|
|
520
|
+
return [4 /*yield*/, (0, utils_1.readFile)(indexHTML)];
|
|
521
521
|
case 12:
|
|
522
522
|
indexHTMLContent = _a.sent();
|
|
523
523
|
expect(indexHTMLContent).toEqual(expect.stringMatching(/Contributing/));
|
|
@@ -535,13 +535,13 @@ var verifyDotFiles = function (docsFolder) { return __awaiter(void 0, void 0, vo
|
|
|
535
535
|
case 0:
|
|
536
536
|
dotCodeFile = path_1.default.join(docsFolder, 'data_lineage.dot');
|
|
537
537
|
dotGraphFile = path_1.default.join(docsFolder, 'data_lineage.svg');
|
|
538
|
-
return [4 /*yield*/, expect(utils_1.folderExists(docsFolder)).resolves.toEqual(true)];
|
|
538
|
+
return [4 /*yield*/, expect((0, utils_1.folderExists)(docsFolder)).resolves.toEqual(true)];
|
|
539
539
|
case 1:
|
|
540
540
|
_a.sent();
|
|
541
|
-
return [4 /*yield*/, expect(utils_1.fileExists(dotCodeFile)).resolves.toEqual(true)];
|
|
541
|
+
return [4 /*yield*/, expect((0, utils_1.fileExists)(dotCodeFile)).resolves.toEqual(true)];
|
|
542
542
|
case 2:
|
|
543
543
|
_a.sent();
|
|
544
|
-
return [4 /*yield*/, expect(utils_1.fileExists(dotGraphFile)).resolves.toEqual(true)];
|
|
544
|
+
return [4 /*yield*/, expect((0, utils_1.fileExists)(dotGraphFile)).resolves.toEqual(true)];
|
|
545
545
|
case 3:
|
|
546
546
|
_a.sent();
|
|
547
547
|
return [2 /*return*/];
|
|
@@ -556,10 +556,10 @@ var verifyDotFilesNotGenerated = function (docsFolder) { return __awaiter(void 0
|
|
|
556
556
|
case 0:
|
|
557
557
|
dotCodeFile = path_1.default.join(docsFolder, 'data_lineage.dot');
|
|
558
558
|
dotGraphFile = path_1.default.join(docsFolder, 'data_lineage.svg');
|
|
559
|
-
return [4 /*yield*/, expect(utils_1.fileExists(dotCodeFile)).resolves.toEqual(false)];
|
|
559
|
+
return [4 /*yield*/, expect((0, utils_1.fileExists)(dotCodeFile)).resolves.toEqual(false)];
|
|
560
560
|
case 1:
|
|
561
561
|
_a.sent();
|
|
562
|
-
return [4 /*yield*/, expect(utils_1.fileExists(dotGraphFile)).resolves.toEqual(false)];
|
|
562
|
+
return [4 /*yield*/, expect((0, utils_1.fileExists)(dotGraphFile)).resolves.toEqual(false)];
|
|
563
563
|
case 2:
|
|
564
564
|
_a.sent();
|
|
565
565
|
return [2 /*return*/];
|
|
@@ -620,7 +620,7 @@ var verifyCompile = function (compiledContent, macrosToTest, checkInit, checkTer
|
|
|
620
620
|
}
|
|
621
621
|
}
|
|
622
622
|
macrosToTest.forEach(function (macro) {
|
|
623
|
-
var re = new RegExp("%macro "
|
|
623
|
+
var re = new RegExp("%macro ".concat(macro));
|
|
624
624
|
expect(re.test(compiledContent)).toEqual(true);
|
|
625
625
|
});
|
|
626
626
|
return [2 /*return*/];
|
package/build/utils/utils.js
CHANGED
|
@@ -62,10 +62,14 @@ var __read = (this && this.__read) || function (o, n) {
|
|
|
62
62
|
}
|
|
63
63
|
return ar;
|
|
64
64
|
};
|
|
65
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from) {
|
|
66
|
-
for (var i = 0,
|
|
67
|
-
|
|
68
|
-
|
|
65
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
66
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
67
|
+
if (ar || !(i in from)) {
|
|
68
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
69
|
+
ar[i] = from[i];
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
69
73
|
};
|
|
70
74
|
var __values = (this && this.__values) || function(o) {
|
|
71
75
|
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
@@ -95,7 +99,7 @@ function inExistingProject(folderPath) {
|
|
|
95
99
|
var packageJsonExists;
|
|
96
100
|
return __generator(this, function (_a) {
|
|
97
101
|
switch (_a.label) {
|
|
98
|
-
case 0: return [4 /*yield*/, utils_1.fileExists(path_1.default.join(process.projectDir, folderPath, 'package.json'))];
|
|
102
|
+
case 0: return [4 /*yield*/, (0, utils_1.fileExists)(path_1.default.join(process.projectDir, folderPath, 'package.json'))];
|
|
99
103
|
case 1:
|
|
100
104
|
packageJsonExists = _a.sent();
|
|
101
105
|
return [2 /*return*/, packageJsonExists];
|
|
@@ -115,7 +119,7 @@ function diff(a, b) {
|
|
|
115
119
|
? !JSON.stringify(a).includes(JSON.stringify(item))
|
|
116
120
|
: !a.includes(item);
|
|
117
121
|
});
|
|
118
|
-
return __spreadArray(__spreadArray([], __read(notInA)), __read(notInB));
|
|
122
|
+
return __spreadArray(__spreadArray([], __read(notInA), false), __read(notInB), false);
|
|
119
123
|
}
|
|
120
124
|
exports.diff = diff;
|
|
121
125
|
function createReactApp(folderPath) {
|
|
@@ -167,14 +171,14 @@ function createTemplateApp(folderPath, template) {
|
|
|
167
171
|
return [2 /*return*/, new Promise(function (resolve, reject) { return __awaiter(_this, void 0, void 0, function () {
|
|
168
172
|
var _a, stdout, stderr, code;
|
|
169
173
|
return __generator(this, function (_b) {
|
|
170
|
-
_a = shelljs_1.default.exec("git ls-remote https://username:password@github.com/sasjs/template_"
|
|
174
|
+
_a = shelljs_1.default.exec("git ls-remote https://username:password@github.com/sasjs/template_".concat(template, ".git"), { silent: true }), stdout = _a.stdout, stderr = _a.stderr, code = _a.code;
|
|
171
175
|
if (stderr.includes('Repository not found') || code) {
|
|
172
|
-
return [2 /*return*/, reject(new Error("Template \""
|
|
176
|
+
return [2 /*return*/, reject(new Error("Template \"".concat(template, "\" is not a SASjs template")))];
|
|
173
177
|
}
|
|
174
178
|
if (!stdout) {
|
|
175
|
-
return [2 /*return*/, reject(new Error("Unable to fetch template \""
|
|
179
|
+
return [2 /*return*/, reject(new Error("Unable to fetch template \"".concat(template, "\"")))];
|
|
176
180
|
}
|
|
177
|
-
createApp(folderPath, "https://github.com/sasjs/template_"
|
|
181
|
+
createApp(folderPath, "https://github.com/sasjs/template_".concat(template, ".git"));
|
|
178
182
|
return [2 /*return*/, resolve()];
|
|
179
183
|
});
|
|
180
184
|
}); })];
|
|
@@ -184,16 +188,16 @@ function createTemplateApp(folderPath, template) {
|
|
|
184
188
|
exports.createTemplateApp = createTemplateApp;
|
|
185
189
|
function createApp(folderPath, repoUrl, installDependencies) {
|
|
186
190
|
if (installDependencies === void 0) { installDependencies = true; }
|
|
187
|
-
var spinner = ora_1.default("Creating SASjs project in "
|
|
191
|
+
var spinner = (0, ora_1.default)("Creating SASjs project in ".concat(folderPath, "."));
|
|
188
192
|
spinner.start();
|
|
189
193
|
var gitBranch = repoUrl.includes('template_sasonly') ? 'master' : 'main';
|
|
190
|
-
shelljs_1.default.exec("cd \""
|
|
194
|
+
shelljs_1.default.exec("cd \"".concat(folderPath, "\" && git clone --depth 1 -b ").concat(gitBranch, " ").concat(repoUrl, " ."), { silent: true });
|
|
191
195
|
shelljs_1.default.rm('-rf', path_1.default.join(folderPath, '.git'));
|
|
192
196
|
spinner.stop();
|
|
193
197
|
if (installDependencies) {
|
|
194
198
|
spinner.text = 'Installing dependencies...';
|
|
195
199
|
spinner.start();
|
|
196
|
-
shelljs_1.default.exec("cd \""
|
|
200
|
+
shelljs_1.default.exec("cd \"".concat(folderPath, "\" && npm install"), {
|
|
197
201
|
silent: true
|
|
198
202
|
});
|
|
199
203
|
spinner.stop();
|
|
@@ -214,8 +218,8 @@ function setupNpmProject(folderName) {
|
|
|
214
218
|
case 1:
|
|
215
219
|
isExistingProject = _d.sent();
|
|
216
220
|
if (!isExistingProject) {
|
|
217
|
-
(_a = process.logger) === null || _a === void 0 ? void 0 : _a.info("Initialising NPM project in "
|
|
218
|
-
shelljs_1.default.exec("cd \""
|
|
221
|
+
(_a = process.logger) === null || _a === void 0 ? void 0 : _a.info("Initialising NPM project in ".concat(folderPath));
|
|
222
|
+
shelljs_1.default.exec("cd \"".concat(folderPath, "\" && npm init --yes"), {
|
|
219
223
|
silent: true
|
|
220
224
|
});
|
|
221
225
|
}
|
|
@@ -223,7 +227,7 @@ function setupNpmProject(folderName) {
|
|
|
223
227
|
(_b = process.logger) === null || _b === void 0 ? void 0 : _b.success('Existing NPM project detected.');
|
|
224
228
|
}
|
|
225
229
|
(_c = process.logger) === null || _c === void 0 ? void 0 : _c.info('Installing @sasjs/core');
|
|
226
|
-
shelljs_1.default.exec("cd \""
|
|
230
|
+
shelljs_1.default.exec("cd \"".concat(folderPath, "\" && npm i @sasjs/core --save"), {
|
|
227
231
|
silent: true
|
|
228
232
|
});
|
|
229
233
|
return [2 /*return*/, resolve()];
|
|
@@ -242,45 +246,45 @@ function setupGitIgnore(folderName) {
|
|
|
242
246
|
switch (_c.label) {
|
|
243
247
|
case 0:
|
|
244
248
|
gitIgnoreFilePath = path_1.default.join(process.projectDir, folderName, '.gitignore');
|
|
245
|
-
return [4 /*yield*/, utils_1.fileExists(gitIgnoreFilePath)];
|
|
249
|
+
return [4 /*yield*/, (0, utils_1.fileExists)(gitIgnoreFilePath)];
|
|
246
250
|
case 1:
|
|
247
251
|
gitIgnoreExists = _c.sent();
|
|
248
252
|
if (!gitIgnoreExists) return [3 /*break*/, 5];
|
|
249
|
-
return [4 /*yield*/, utils_1.readFile(gitIgnoreFilePath)];
|
|
253
|
+
return [4 /*yield*/, (0, utils_1.readFile)(gitIgnoreFilePath)];
|
|
250
254
|
case 2:
|
|
251
255
|
gitIgnoreContent = _c.sent();
|
|
252
256
|
newgitIgnoreContent = gitIgnoreContent;
|
|
253
257
|
regExpSasjsBuild = new RegExp("^sasjsbuild/", 'gm');
|
|
254
258
|
newgitIgnoreContent = newgitIgnoreContent.match(regExpSasjsBuild)
|
|
255
259
|
? newgitIgnoreContent
|
|
256
|
-
: (newgitIgnoreContent ? newgitIgnoreContent + '\n' : ''
|
|
260
|
+
: "".concat(newgitIgnoreContent ? newgitIgnoreContent + '\n' : '', "sasjsbuild/\n");
|
|
257
261
|
regExpSasjsResults = new RegExp("^sasjsresults/", 'gm');
|
|
258
262
|
newgitIgnoreContent = newgitIgnoreContent.match(regExpSasjsResults)
|
|
259
263
|
? newgitIgnoreContent
|
|
260
|
-
: (newgitIgnoreContent ? newgitIgnoreContent + '\n' : ''
|
|
264
|
+
: "".concat(newgitIgnoreContent ? newgitIgnoreContent + '\n' : '', "sasjsresults/\n");
|
|
261
265
|
regExpNodeModules = new RegExp("^node_modules/", 'gm');
|
|
262
266
|
newgitIgnoreContent = newgitIgnoreContent.match(regExpNodeModules)
|
|
263
267
|
? newgitIgnoreContent
|
|
264
|
-
: newgitIgnoreContent + '\n'
|
|
268
|
+
: "".concat(newgitIgnoreContent + '\n', "node_modules/\n");
|
|
265
269
|
if (!(gitIgnoreContent !== newgitIgnoreContent)) return [3 /*break*/, 4];
|
|
266
|
-
return [4 /*yield*/, utils_1.createFile(gitIgnoreFilePath, newgitIgnoreContent)];
|
|
270
|
+
return [4 /*yield*/, (0, utils_1.createFile)(gitIgnoreFilePath, newgitIgnoreContent)];
|
|
267
271
|
case 3:
|
|
268
272
|
_c.sent();
|
|
269
273
|
(_a = process.logger) === null || _a === void 0 ? void 0 : _a.success('Existing .gitignore has been updated.');
|
|
270
274
|
_c.label = 4;
|
|
271
275
|
case 4: return [3 /*break*/, 7];
|
|
272
|
-
case 5: return [4 /*yield*/, utils_1.createFile(gitIgnoreFilePath, 'node_modules/\nsasjsbuild/\nsasjsresults/\n.env*\n')];
|
|
276
|
+
case 5: return [4 /*yield*/, (0, utils_1.createFile)(gitIgnoreFilePath, 'node_modules/\nsasjsbuild/\nsasjsresults/\n.env*\n')];
|
|
273
277
|
case 6:
|
|
274
278
|
_c.sent();
|
|
275
279
|
(_b = process.logger) === null || _b === void 0 ? void 0 : _b.success('.gitignore file has been created.');
|
|
276
280
|
_c.label = 7;
|
|
277
281
|
case 7:
|
|
278
282
|
folderPath = path_1.default.join(process.projectDir, folderName);
|
|
279
|
-
return [4 /*yield*/, utils_1.folderExists(path_1.default.join(folderPath, '.git'))];
|
|
283
|
+
return [4 /*yield*/, (0, utils_1.folderExists)(path_1.default.join(folderPath, '.git'))];
|
|
280
284
|
case 8:
|
|
281
285
|
gitDirectoryExists = _c.sent();
|
|
282
286
|
if (!gitDirectoryExists) {
|
|
283
|
-
shelljs_1.default.exec("cd "
|
|
287
|
+
shelljs_1.default.exec("cd ".concat(folderName, " && git init"), {
|
|
284
288
|
silent: true
|
|
285
289
|
});
|
|
286
290
|
}
|
|
@@ -299,14 +303,14 @@ function setupGhooks(folderName) {
|
|
|
299
303
|
case 0:
|
|
300
304
|
folderPath = path_1.default.join(process.projectDir, folderName);
|
|
301
305
|
(_a = process.logger) === null || _a === void 0 ? void 0 : _a.info('Installing ghooks');
|
|
302
|
-
shelljs_1.default.exec("cd \""
|
|
306
|
+
shelljs_1.default.exec("cd \"".concat(folderPath, "\" && npm i ghooks --save-dev"), {
|
|
303
307
|
silent: true
|
|
304
308
|
});
|
|
305
309
|
_b.label = 1;
|
|
306
310
|
case 1:
|
|
307
311
|
_b.trys.push([1, 4, , 5]);
|
|
308
312
|
packageJsonPath = path_1.default.join(folderPath, 'package.json');
|
|
309
|
-
return [4 /*yield*/, utils_1.readFile(packageJsonPath)];
|
|
313
|
+
return [4 /*yield*/, (0, utils_1.readFile)(packageJsonPath)];
|
|
310
314
|
case 2:
|
|
311
315
|
packageJsonContent = _b.sent();
|
|
312
316
|
packageJson = JSON.parse(packageJsonContent);
|
|
@@ -323,7 +327,7 @@ function setupGhooks(folderName) {
|
|
|
323
327
|
}
|
|
324
328
|
if (!/sasjs lint/.test(packageJson.config.ghooks['pre-commit']))
|
|
325
329
|
packageJson.config.ghooks['pre-commit'] += preCommitCmd;
|
|
326
|
-
return [4 /*yield*/, utils_1.createFile(packageJsonPath, JSON.stringify(packageJson, null, 2))];
|
|
330
|
+
return [4 /*yield*/, (0, utils_1.createFile)(packageJsonPath, JSON.stringify(packageJson, null, 2))];
|
|
327
331
|
case 3:
|
|
328
332
|
_b.sent();
|
|
329
333
|
return [3 /*break*/, 5];
|
|
@@ -345,7 +349,7 @@ function setupDoxygen(folderPath) {
|
|
|
345
349
|
doxyFilesPath = '../doxy';
|
|
346
350
|
doxyFolderPathSource = path_1.default.join(__dirname, doxyFilesPath);
|
|
347
351
|
doxyFolderPath = path_1.default.join(process.projectDir, folderPath, 'sasjs', 'doxy');
|
|
348
|
-
return [4 /*yield*/, utils_1.copy(doxyFolderPathSource, doxyFolderPath)];
|
|
352
|
+
return [4 /*yield*/, (0, utils_1.copy)(doxyFolderPathSource, doxyFolderPath)];
|
|
349
353
|
case 1:
|
|
350
354
|
_a.sent();
|
|
351
355
|
return [2 /*return*/];
|
|
@@ -410,15 +414,15 @@ function executeShellScript(filePath, logFilePath) {
|
|
|
410
414
|
return __generator(this, function (_b) {
|
|
411
415
|
switch (_b.label) {
|
|
412
416
|
case 0:
|
|
413
|
-
shellCommand = exports.isWindows() ? ""
|
|
417
|
+
shellCommand = (0, exports.isWindows)() ? "sh ".concat(filePath) : "bash ".concat(filePath);
|
|
414
418
|
result = shelljs_1.default.exec(shellCommand, { silent: true });
|
|
415
419
|
if (!result.code) return [3 /*break*/, 1];
|
|
416
|
-
(_a = process.logger) === null || _a === void 0 ? void 0 : _a.error("Error: "
|
|
420
|
+
(_a = process.logger) === null || _a === void 0 ? void 0 : _a.error("Error: ".concat(result.stderr));
|
|
417
421
|
reject(result.code);
|
|
418
422
|
throw new Error('Error executing shell script: Code ' + result.code);
|
|
419
423
|
case 1:
|
|
420
424
|
if (!logFilePath) return [3 /*break*/, 3];
|
|
421
|
-
return [4 /*yield*/, utils_1.createFile(logFilePath, result.stdout)];
|
|
425
|
+
return [4 /*yield*/, (0, utils_1.createFile)(logFilePath, result.stdout)];
|
|
422
426
|
case 2:
|
|
423
427
|
_b.sent();
|
|
424
428
|
_b.label = 3;
|
|
@@ -443,7 +447,7 @@ function parseLogLines(logJson) {
|
|
|
443
447
|
try {
|
|
444
448
|
for (var _b = __values(logJson.items), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
445
449
|
var item = _c.value;
|
|
446
|
-
logLines += item.line
|
|
450
|
+
logLines += "".concat(item.line, "\n");
|
|
447
451
|
}
|
|
448
452
|
}
|
|
449
453
|
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
@@ -471,7 +475,7 @@ var millisecondsToDdHhMmSs = function (milliseconds) {
|
|
|
471
475
|
var hours = Math.floor(milliseconds / 1000 / 60 / 60) % 24;
|
|
472
476
|
var minutes = Math.floor(milliseconds / 1000 / 60) % 60;
|
|
473
477
|
var seconds = Math.floor(milliseconds / 1000) % 60;
|
|
474
|
-
return days
|
|
478
|
+
return "".concat(days, " day(s); ").concat(hours, " hour(s); ").concat(minutes, " minute(s); ").concat(seconds, " second(s)");
|
|
475
479
|
};
|
|
476
480
|
exports.millisecondsToDdHhMmSs = millisecondsToDdHhMmSs;
|
|
477
481
|
function checkNodeVersion() {
|
|
@@ -489,10 +493,10 @@ function getAdapterInstance(target) {
|
|
|
489
493
|
throw new Error('Unable to create SASjs adapter instance: Invalid target.');
|
|
490
494
|
}
|
|
491
495
|
if (!target.serverUrl) {
|
|
492
|
-
throw new Error("Unable to create SASjs adapter instance: Target "
|
|
496
|
+
throw new Error("Unable to create SASjs adapter instance: Target ".concat(target.name, " is missing a `serverUrl`."));
|
|
493
497
|
}
|
|
494
498
|
if (!target.serverType) {
|
|
495
|
-
throw new Error("Unable to create SASjs adapter instance: Target "
|
|
499
|
+
throw new Error("Unable to create SASjs adapter instance: Target ".concat(target.name, " is missing a `serverType`."));
|
|
496
500
|
}
|
|
497
501
|
var sasjs = new node_1.default({
|
|
498
502
|
serverUrl: target.serverUrl,
|
|
@@ -508,19 +512,19 @@ exports.getAdapterInstance = getAdapterInstance;
|
|
|
508
512
|
function displaySasjsRunnerError(username) {
|
|
509
513
|
var _a;
|
|
510
514
|
var sasjsRunnerCode = "\nfilename mc url \"https://raw.githubusercontent.com/sasjs/core/main/all.sas\";\n%inc mc;\nfilename ft15f001 temp;\nparmcards4;\n%macro sasjs_runner();\n%if %symexist(_webin_fileref) %then %do;\n%inc &_webin_fileref;\n%end;\n%mend sasjs_runner;\n%sasjs_runner()\n;;;;\n%mm_createwebservice(path=/User Folders/&sysuserid/My Folder/sasjs,name=runner)\n";
|
|
511
|
-
var message = "The SASjs runner was not found in your user folder at /User Folders/"
|
|
512
|
-
displayResult_1.displayError(message, 'An error occurred while executing the request.');
|
|
513
|
-
(_a = process.logger) === null || _a === void 0 ? void 0 : _a.info("Please deploy the SASjs runner by running the code below and try again:\n"
|
|
515
|
+
var message = "The SASjs runner was not found in your user folder at /User Folders/".concat(username, "/My Folder/sasjs/runner.");
|
|
516
|
+
(0, displayResult_1.displayError)(message, 'An error occurred while executing the request.');
|
|
517
|
+
(_a = process.logger) === null || _a === void 0 ? void 0 : _a.info("Please deploy the SASjs runner by running the code below and try again:\n".concat(sasjsRunnerCode));
|
|
514
518
|
}
|
|
515
519
|
exports.displaySasjsRunnerError = displaySasjsRunnerError;
|
|
516
520
|
var loadEnvVariables = function (fileName) { return __awaiter(void 0, void 0, void 0, function () {
|
|
517
521
|
var envFileExistsInCurrentPath, envFileExistsInParentPath, envFilePath;
|
|
518
522
|
return __generator(this, function (_a) {
|
|
519
523
|
switch (_a.label) {
|
|
520
|
-
case 0: return [4 /*yield*/, utils_1.fileExists(path_1.default.join(process.cwd(), fileName))];
|
|
524
|
+
case 0: return [4 /*yield*/, (0, utils_1.fileExists)(path_1.default.join(process.cwd(), fileName))];
|
|
521
525
|
case 1:
|
|
522
526
|
envFileExistsInCurrentPath = _a.sent();
|
|
523
|
-
return [4 /*yield*/, utils_1.fileExists(path_1.default.join(process.cwd(), '..', fileName))];
|
|
527
|
+
return [4 /*yield*/, (0, utils_1.fileExists)(path_1.default.join(process.cwd(), '..', fileName))];
|
|
524
528
|
case 2:
|
|
525
529
|
envFileExistsInParentPath = _a.sent();
|
|
526
530
|
envFilePath = envFileExistsInCurrentPath
|
|
@@ -547,7 +551,7 @@ function prefixAppLoc(appLoc, path) {
|
|
|
547
551
|
path = path.join(' ');
|
|
548
552
|
return path
|
|
549
553
|
.split(' ')
|
|
550
|
-
.map(function (p) { return (/^\//.test(p) ? p : appLoc
|
|
554
|
+
.map(function (p) { return (/^\//.test(p) ? p : "".concat(appLoc, "/").concat(p)); })
|
|
551
555
|
.join(' ');
|
|
552
556
|
}
|
|
553
557
|
exports.prefixAppLoc = prefixAppLoc;
|
|
@@ -555,7 +559,7 @@ var isWindows = function () { return process.platform === 'win32'; };
|
|
|
555
559
|
exports.isWindows = isWindows;
|
|
556
560
|
var terminateProcess = function (status) {
|
|
557
561
|
var _a;
|
|
558
|
-
(_a = process.logger) === null || _a === void 0 ? void 0 : _a.info("Process will be terminated with the status code "
|
|
562
|
+
(_a = process.logger) === null || _a === void 0 ? void 0 : _a.info("Process will be terminated with the status code ".concat(status, "."));
|
|
559
563
|
process.exit(status);
|
|
560
564
|
};
|
|
561
565
|
exports.terminateProcess = terminateProcess;
|