@sasjs/cli 3.21.3 → 3.21.5
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/build/utils/config.d.ts +1 -0
- package/build/utils/config.js +43 -4
- package/package.json +2 -2
package/build/utils/config.d.ts
CHANGED
|
@@ -66,6 +66,7 @@ export declare function getProjectRoot(): Promise<string>;
|
|
|
66
66
|
* @returns {AuthConfig} - an object containing an access token, refresh token, client ID and secret.
|
|
67
67
|
*/
|
|
68
68
|
export declare function getAuthConfig(target: Target): Promise<AuthConfig>;
|
|
69
|
+
export declare const saveTokens: (targetName: string, client: string, secret: string, access_token: string, refresh_token: string) => Promise<void>;
|
|
69
70
|
/**
|
|
70
71
|
* Gets the auth config for the specified SAS9 target.
|
|
71
72
|
* @param {Target} target - the target to get an access token for.
|
package/build/utils/config.js
CHANGED
|
@@ -75,7 +75,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
75
75
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
76
76
|
};
|
|
77
77
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
78
|
-
exports.getSASjsAndAuthConfig = exports.getSASjs = exports.getTestTearDown = exports.getTestSetUp = exports.overrideEnvVariables = exports.getAccessToken = exports.getAuthConfigSAS9 = exports.getAuthConfig = exports.getProjectRoot = exports.sanitizeAppLoc = exports.getStreamConfig = exports.getMacroFolders = exports.getBinaryFolders = exports.getProgramFolders = exports.getFolders = exports.saveToLocalConfig = exports.saveLocalConfigFile = exports.getSyncDirectories = exports.getLocalOrGlobalConfig = exports.getLocalConfig = exports.removeFromLocalConfig = exports.removeFromGlobalConfig = exports.saveToGlobalConfig = exports.saveGlobalRcFile = exports.getLocalRcFile = exports.getGlobalRcFile = exports.findTargetInConfiguration = exports.getConfiguration = void 0;
|
|
78
|
+
exports.getSASjsAndAuthConfig = exports.getSASjs = exports.getTestTearDown = exports.getTestSetUp = exports.overrideEnvVariables = exports.getAccessToken = exports.getAuthConfigSAS9 = exports.saveTokens = exports.getAuthConfig = exports.getProjectRoot = exports.sanitizeAppLoc = exports.getStreamConfig = exports.getMacroFolders = exports.getBinaryFolders = exports.getProgramFolders = exports.getFolders = exports.saveToLocalConfig = exports.saveLocalConfigFile = exports.getSyncDirectories = exports.getLocalOrGlobalConfig = exports.getLocalConfig = exports.removeFromLocalConfig = exports.removeFromGlobalConfig = exports.saveToGlobalConfig = exports.saveGlobalRcFile = exports.getLocalRcFile = exports.getGlobalRcFile = exports.findTargetInConfiguration = exports.getConfiguration = void 0;
|
|
79
79
|
var node_1 = __importDefault(require("@sasjs/adapter/node"));
|
|
80
80
|
var utils_1 = require("@sasjs/utils");
|
|
81
81
|
var auth_1 = require("./auth");
|
|
@@ -863,7 +863,7 @@ function getAuthConfig(target) {
|
|
|
863
863
|
else
|
|
864
864
|
throw new Error("Client secret was not found.\n Please make sure that the 'secret' property is set in your local .env file or in the correct target authConfig in your global ~".concat(path_1.default.sep, ".sasjsrc file."));
|
|
865
865
|
}
|
|
866
|
-
if (!(0, auth_1.isAccessTokenExpiring)(access_token)) return [3 /*break*/,
|
|
866
|
+
if (!(0, auth_1.isAccessTokenExpiring)(access_token)) return [3 /*break*/, 8];
|
|
867
867
|
sasjs = new node_1.default({
|
|
868
868
|
serverUrl: target.serverUrl,
|
|
869
869
|
httpsAgentOptions: target.httpsAgentOptions,
|
|
@@ -882,8 +882,11 @@ function getAuthConfig(target) {
|
|
|
882
882
|
case 6:
|
|
883
883
|
access_token = (tokens === null || tokens === void 0 ? void 0 : tokens.access_token) || access_token;
|
|
884
884
|
refresh_token = (tokens === null || tokens === void 0 ? void 0 : tokens.refresh_token) || refresh_token;
|
|
885
|
-
|
|
886
|
-
case 7:
|
|
885
|
+
return [4 /*yield*/, (0, exports.saveTokens)(target.name, client, secret, access_token, refresh_token || '')];
|
|
886
|
+
case 7:
|
|
887
|
+
_e.sent();
|
|
888
|
+
_e.label = 8;
|
|
889
|
+
case 8: return [2 /*return*/, {
|
|
887
890
|
access_token: access_token,
|
|
888
891
|
refresh_token: refresh_token,
|
|
889
892
|
client: client,
|
|
@@ -894,6 +897,42 @@ function getAuthConfig(target) {
|
|
|
894
897
|
});
|
|
895
898
|
}
|
|
896
899
|
exports.getAuthConfig = getAuthConfig;
|
|
900
|
+
var saveTokens = function (targetName, client, secret, access_token, refresh_token) { return __awaiter(void 0, void 0, void 0, function () {
|
|
901
|
+
var localConfig, isLocalTarget, envFileContent, envFilePath, globalConfig, target, targetJson;
|
|
902
|
+
var _a, _b, _c, _d;
|
|
903
|
+
return __generator(this, function (_e) {
|
|
904
|
+
switch (_e.label) {
|
|
905
|
+
case 0: return [4 /*yield*/, getLocalConfig()];
|
|
906
|
+
case 1:
|
|
907
|
+
localConfig = _e.sent();
|
|
908
|
+
isLocalTarget = (_a = localConfig.targets) === null || _a === void 0 ? void 0 : _a.some(function (t) { return t.name === targetName; });
|
|
909
|
+
if (!isLocalTarget) return [3 /*break*/, 3];
|
|
910
|
+
envFileContent = "CLIENT=".concat(client, "\nSECRET=").concat(secret, "\nACCESS_TOKEN=").concat(access_token, "\nREFRESH_TOKEN=").concat(refresh_token, "\n");
|
|
911
|
+
envFilePath = path_1.default.join(process.projectDir, ".env.".concat(targetName));
|
|
912
|
+
return [4 /*yield*/, (0, utils_1.createFile)(envFilePath, envFileContent)];
|
|
913
|
+
case 2:
|
|
914
|
+
_e.sent();
|
|
915
|
+
(_b = process.logger) === null || _b === void 0 ? void 0 : _b.success("Environment file saved at ".concat(envFilePath));
|
|
916
|
+
return [3 /*break*/, 6];
|
|
917
|
+
case 3: return [4 /*yield*/, getGlobalRcFile()];
|
|
918
|
+
case 4:
|
|
919
|
+
globalConfig = _e.sent();
|
|
920
|
+
target = (_c = globalConfig.targets) === null || _c === void 0 ? void 0 : _c.find(function (t) { return t.name === targetName; });
|
|
921
|
+
if (!target) {
|
|
922
|
+
throw new Error(ERROR_MESSAGE(targetName).NOT_FOUND_TARGET_NAME);
|
|
923
|
+
}
|
|
924
|
+
targetJson = target.toJson();
|
|
925
|
+
targetJson.authConfig = { client: client, secret: secret, access_token: access_token, refresh_token: refresh_token };
|
|
926
|
+
return [4 /*yield*/, saveToGlobalConfig(new utils_1.Target(targetJson), globalConfig.defaultTarget === targetName)];
|
|
927
|
+
case 5:
|
|
928
|
+
_e.sent();
|
|
929
|
+
(_d = process.logger) === null || _d === void 0 ? void 0 : _d.success("Target saved to global .sasjsrc file at ~/.sasjsrc.");
|
|
930
|
+
_e.label = 6;
|
|
931
|
+
case 6: return [2 /*return*/];
|
|
932
|
+
}
|
|
933
|
+
});
|
|
934
|
+
}); };
|
|
935
|
+
exports.saveTokens = saveTokens;
|
|
897
936
|
/**
|
|
898
937
|
* Gets the auth config for the specified SAS9 target.
|
|
899
938
|
* @param {Target} target - the target to get an access token for.
|
package/package.json
CHANGED
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
},
|
|
52
52
|
"dependencies": {
|
|
53
53
|
"@sasjs/adapter": "4.0.1",
|
|
54
|
-
"@sasjs/core": "4.
|
|
54
|
+
"@sasjs/core": "4.45.1",
|
|
55
55
|
"@sasjs/lint": "1.15.0",
|
|
56
56
|
"@sasjs/utils": "2.51.1",
|
|
57
57
|
"adm-zip": "0.5.9",
|
|
@@ -101,5 +101,5 @@
|
|
|
101
101
|
"typescript": "4.5.4",
|
|
102
102
|
"util": "0.12.4"
|
|
103
103
|
},
|
|
104
|
-
"version": "3.21.
|
|
104
|
+
"version": "3.21.5"
|
|
105
105
|
}
|