@contrail/cli 1.0.67 → 1.0.69
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/.eslintrc.js +53 -53
- package/.vscode/settings.json +5 -5
- package/README.md +5 -5
- package/bin/init +3 -3
- package/lib/api/apps.d.ts +13 -13
- package/lib/api/apps.js +85 -85
- package/lib/api/event-workflow-action-definition.d.ts +1 -1
- package/lib/api/event-workflow-action-definition.js +7 -7
- package/lib/api/event-workflow-template-definition.d.ts +6 -6
- package/lib/api/event-workflow-template-definition.js +20 -20
- package/lib/api/event-workflow-templates.d.ts +7 -7
- package/lib/api/event-workflow-templates.js +25 -25
- package/lib/apps/create-app/create.d.ts +1 -1
- package/lib/apps/create-app/create.js +60 -59
- package/lib/apps/create-app/setup-template.d.ts +1 -1
- package/lib/apps/create-app/setup-template.js +34 -34
- package/lib/apps/deploy-app/actions-deployer.d.ts +11 -11
- package/lib/apps/deploy-app/actions-deployer.js +114 -114
- package/lib/apps/deploy-app/app-deployer.d.ts +8 -8
- package/lib/apps/deploy-app/app-deployer.js +93 -93
- package/lib/apps/deploy-app/app-template-parsers.d.ts +7 -7
- package/lib/apps/deploy-app/app-template-parsers.js +38 -38
- package/lib/apps/deploy-app/deploy.d.ts +2 -2
- package/lib/apps/deploy-app/deploy.js +58 -58
- package/lib/apps/install-app/app-installer.d.ts +2 -2
- package/lib/apps/install-app/app-installer.js +120 -120
- package/lib/apps/upgrade-app/app-upgrader.d.ts +3 -3
- package/lib/apps/upgrade-app/app-upgrader.js +126 -126
- package/lib/auth/auth.d.ts +9 -9
- package/lib/auth/auth.js +2 -2
- package/lib/auth/login.d.ts +2 -2
- package/lib/auth/login.js +141 -141
- package/lib/cli.d.ts +5 -5
- package/lib/cli.js +524 -481
- package/lib/colors/color-loader.d.ts +2 -2
- package/lib/colors/color-loader.js +96 -96
- package/lib/common.d.ts +1 -1
- package/lib/common.js +5 -5
- package/lib/config/config.d.ts +6 -6
- package/lib/config/config.js +70 -70
- package/lib/config/configCommands.d.ts +3 -3
- package/lib/config/configCommands.js +34 -34
- package/lib/interfaces.d.ts +191 -191
- package/lib/interfaces.js +25 -25
- package/lib/loader-process/loader-process.d.ts +2 -2
- package/lib/loader-process/loader-process.js +120 -120
- package/lib/projects/interfaces.d.ts +77 -77
- package/lib/projects/interfaces.js +23 -23
- package/lib/projects/project-exporter.d.ts +2 -2
- package/lib/projects/project-exporter.js +187 -187
- package/lib/projects/project-uploader.d.ts +1 -1
- package/lib/projects/project-uploader.js +105 -105
- package/lib/types/allUploader.d.ts +1 -1
- package/lib/types/allUploader.js +24 -24
- package/lib/types/csv-parser.d.ts +1 -1
- package/lib/types/csv-parser.js +51 -51
- package/lib/types/interfaces.d.ts +55 -55
- package/lib/types/interfaces.js +1 -1
- package/lib/types/option-set-hierarchy-exporter.d.ts +1 -1
- package/lib/types/option-set-hierarchy-exporter.js +113 -113
- package/lib/types/option-set-hierarchy-parser.d.ts +2 -2
- package/lib/types/option-set-hierarchy-parser.js +140 -140
- package/lib/types/option-set-hierarchy-uploader.d.ts +1 -1
- package/lib/types/option-set-hierarchy-uploader.js +113 -113
- package/lib/types/option-set-merger.d.ts +1 -1
- package/lib/types/option-set-merger.js +105 -102
- package/lib/types/option-set-parser.d.ts +3 -1
- package/lib/types/option-set-parser.js +140 -50
- package/lib/types/option-set-uploader.d.ts +1 -1
- package/lib/types/option-set-uploader.js +98 -98
- package/lib/types/parse-types.d.ts +4 -4
- package/lib/types/parse-types.js +189 -189
- package/lib/types/rule-set-uploader.d.ts +1 -1
- package/lib/types/rule-set-uploader.js +172 -172
- package/lib/types/type-property-policy-uploader.d.ts +1 -1
- package/lib/types/type-property-policy-uploader.js +178 -178
- package/lib/types/types-extractor.d.ts +27 -27
- package/lib/types/types-extractor.js +318 -318
- package/lib/types/types-properties-merger.d.ts +1 -1
- package/lib/types/types-properties-merger.js +75 -75
- package/lib/types/types-uploader.d.ts +1 -1
- package/lib/types/types-uploader.js +239 -239
- package/lib/types/usage-info-uploader.d.ts +1 -1
- package/lib/types/usage-info-uploader.js +132 -132
- package/lib/users/user-exporter.d.ts +1 -0
- package/lib/users/user-exporter.js +41 -0
- package/lib/users/user-uploader.d.ts +1 -0
- package/lib/users/user-uploader.js +45 -0
- package/lib/workflow-template-definitions/workflow-template-definition-commands.d.ts +2 -2
- package/lib/workflow-template-definitions/workflow-template-definition-commands.js +10 -10
- package/lib/workflow-template-definitions/workflow-template-definition-deployer.d.ts +12 -12
- package/lib/workflow-template-definitions/workflow-template-definition-deployer.js +151 -151
- package/lib/workflow-templates/local-workflow-template-deployer.d.ts +11 -11
- package/lib/workflow-templates/local-workflow-template-deployer.js +102 -102
- package/lib/workflow-templates/workflow-template-commands.d.ts +4 -4
- package/lib/workflow-templates/workflow-template-commands.js +51 -51
- package/lib/workflow-templates/workflow-template-deployer.d.ts +4 -4
- package/lib/workflow-templates/workflow-template-deployer.js +26 -26
- package/package.json +72 -72
- package/publish.bat +5 -0
- package/publish.sh +4 -4
- package/src/api/apps.ts +96 -96
- package/src/api/event-workflow-action-definition.ts +7 -7
- package/src/api/event-workflow-template-definition.ts +22 -22
- package/src/api/event-workflow-templates.ts +28 -28
- package/src/apps/create-app/create.ts +74 -73
- package/src/apps/create-app/setup-template.ts +37 -37
- package/src/apps/deploy-app/actions-deployer.ts +140 -140
- package/src/apps/deploy-app/app-deployer.ts +105 -105
- package/src/apps/deploy-app/app-template-parsers.ts +43 -43
- package/src/apps/deploy-app/deploy.ts +65 -65
- package/src/apps/install-app/app-installer.ts +125 -125
- package/src/apps/upgrade-app/app-upgrader.ts +131 -131
- package/src/auth/auth.ts +9 -9
- package/src/auth/login.ts +155 -155
- package/src/cli.ts +540 -496
- package/src/colors/color-loader.ts +112 -112
- package/src/colors/colors.csv +866 -866
- package/src/common.ts +4 -4
- package/src/config/config.ts +74 -74
- package/src/config/configCommands.ts +37 -37
- package/src/interfaces.ts +200 -200
- package/src/loader-process/loader-process.ts +151 -151
- package/src/projects/interfaces.ts +72 -72
- package/src/projects/project-exporter.ts +224 -224
- package/src/projects/project-uploader.ts +130 -130
- package/src/types/allUploader.ts +28 -28
- package/src/types/csv-parser.ts +58 -58
- package/src/types/interfaces.ts +58 -58
- package/src/types/option-set-hierarchy-exporter.ts +124 -124
- package/src/types/option-set-hierarchy-parser.ts +168 -168
- package/src/types/option-set-hierarchy-uploader.ts +121 -121
- package/src/types/option-set-merger.ts +123 -122
- package/src/types/option-set-parser.ts +165 -59
- package/src/types/option-set-uploader.ts +107 -107
- package/src/types/parse-types.ts +226 -226
- package/src/types/rule-set-uploader.ts +186 -186
- package/src/types/type-property-policy-uploader.ts +191 -191
- package/src/types/types-extractor.ts +368 -368
- package/src/types/types-properties-merger.ts +89 -89
- package/src/types/types-uploader.ts +271 -271
- package/src/types/usage-info-uploader.ts +138 -138
- package/src/users/user-exporter.ts +52 -0
- package/src/users/user-uploader.ts +58 -0
- package/src/workflow-template-definitions/workflow-template-definition-commands.ts +12 -12
- package/src/workflow-template-definitions/workflow-template-definition-deployer.ts +184 -184
- package/src/workflow-templates/local-workflow-template-deployer.ts +125 -125
- package/src/workflow-templates/workflow-template-commands.ts +59 -59
- package/src/workflow-templates/workflow-template-deployer.ts +29 -29
- package/templates/docker_deploy.bat +1 -0
- package/templates/javascript/actions/example/action.js +37 -37
- package/templates/javascript/app.yml +52 -52
- package/templates/javascript/package.json +23 -23
- package/templates/typescript/Dockerfile +15 -14
- package/templates/typescript/README.md +10 -10
- package/templates/typescript/app.yml +50 -54
- package/templates/typescript/package-lock.json +14 -14
- package/templates/typescript/package.json +54 -52
- package/templates/typescript/src/actions/logItem.ts +26 -0
- package/templates/typescript/src/framework/action-dispatcher.ts +86 -0
- package/templates/typescript/src/framework/app-config.ts +27 -0
- package/templates/typescript/src/framework/handler.ts +11 -0
- package/templates/typescript/src/framework/index.ts +3 -0
- package/templates/typescript/src/framework/interfaces.ts +32 -0
- package/templates/typescript/src/framework/logger.ts +21 -0
- package/templates/typescript/{actions → src/framework}/mock-server.ts +7 -0
- package/templates/typescript/tsconfig.json +28 -27
- package/tsconfig.json +31 -30
- package/templates/typescript/actions/handler.ts +0 -62
- package/templates/typescript/actions/utils/logger.ts +0 -15
package/src/auth/login.ts
CHANGED
|
@@ -1,155 +1,155 @@
|
|
|
1
|
-
const AmazonCognitoIdentity = require('amazon-cognito-identity-js');
|
|
2
|
-
import inquirer from 'inquirer';
|
|
3
|
-
import { Request, setConfig as setSdkConfig } from '@contrail/sdk';
|
|
4
|
-
import { Auth, AuthContext } from './auth';
|
|
5
|
-
import { getConfig, storeConfig } from '../config/config';
|
|
6
|
-
|
|
7
|
-
const CONFIGURATION = {
|
|
8
|
-
userPoolId: 'us-east-1_qIaNZdUfm',
|
|
9
|
-
clientId: process.env.CONTRAIL_COGNITO_CLIENT_ID || '7knkt34gfacbgd0ghnuspefdfg',
|
|
10
|
-
};
|
|
11
|
-
|
|
12
|
-
export async function authUser(): Promise<AuthContext> {
|
|
13
|
-
console.debug('authorizing user');
|
|
14
|
-
const config = await getConfig();
|
|
15
|
-
if (
|
|
16
|
-
config &&
|
|
17
|
-
config.apiUserToken &&
|
|
18
|
-
config.apiGateway &&
|
|
19
|
-
config.orgSlug
|
|
20
|
-
) {
|
|
21
|
-
console.debug('populating auth config from fs config');
|
|
22
|
-
Auth.config = {
|
|
23
|
-
apiUserToken: config.apiUserToken,
|
|
24
|
-
apiGateway: config.apiGateway,
|
|
25
|
-
orgSlug: config.orgSlug,
|
|
26
|
-
};
|
|
27
|
-
setSdkConfig(Auth.config);
|
|
28
|
-
try {
|
|
29
|
-
return await refreshCurrentUserOrg();
|
|
30
|
-
} catch (e) {
|
|
31
|
-
console.log('Token expired. Requesting auth credentials...');
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
}
|
|
35
|
-
const questions = [];
|
|
36
|
-
if (!process.env.CONTRAIL_CLI_EMAIL) {
|
|
37
|
-
questions.push({
|
|
38
|
-
type: 'input',
|
|
39
|
-
name: 'email',
|
|
40
|
-
validate: (val) => !!val,
|
|
41
|
-
message: 'Email',
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
if (!process.env.CONTRAIL_CLI_PASSWORD) {
|
|
45
|
-
questions.push({
|
|
46
|
-
type: 'password',
|
|
47
|
-
name: 'password',
|
|
48
|
-
validate: (val) => !!val,
|
|
49
|
-
message: 'Password',
|
|
50
|
-
});
|
|
51
|
-
}
|
|
52
|
-
if (!process.env.CONTRAIL_CLI_ORGSLUG) {
|
|
53
|
-
questions.push({
|
|
54
|
-
type: 'input',
|
|
55
|
-
name: 'orgSlug',
|
|
56
|
-
validate: (val) => !!val,
|
|
57
|
-
message: 'Org (slug)',
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
const answers = await inquirer.prompt(questions);
|
|
62
|
-
const params = {
|
|
63
|
-
email: process.env.CONTRAIL_CLI_EMAIL || answers.email,
|
|
64
|
-
password: process.env.CONTRAIL_CLI_PASSWORD || answers.password,
|
|
65
|
-
orgSlug: process.env.CONTRAIL_CLI_ORGSLUG || answers.orgSlug,
|
|
66
|
-
};
|
|
67
|
-
if (!params.email || !params.password) {
|
|
68
|
-
throw new Error('Email and Password required');
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
const poolData = {
|
|
72
|
-
UserPoolId: CONFIGURATION.userPoolId,
|
|
73
|
-
ClientId: CONFIGURATION.clientId,
|
|
74
|
-
};
|
|
75
|
-
|
|
76
|
-
const userPool = new AmazonCognitoIdentity.CognitoUserPool(poolData);
|
|
77
|
-
const authData = {
|
|
78
|
-
Username: params.email,
|
|
79
|
-
Password: params.password,
|
|
80
|
-
};
|
|
81
|
-
|
|
82
|
-
const authDetails = new AmazonCognitoIdentity.AuthenticationDetails(authData);
|
|
83
|
-
const userData = {
|
|
84
|
-
Username: params.email,
|
|
85
|
-
Pool: userPool,
|
|
86
|
-
};
|
|
87
|
-
|
|
88
|
-
const cognitoUser = new AmazonCognitoIdentity.CognitoUser(userData);
|
|
89
|
-
|
|
90
|
-
return new Promise((resolve, reject) => {
|
|
91
|
-
cognitoUser.authenticateUser(authDetails, {
|
|
92
|
-
onSuccess: async (result) => {
|
|
93
|
-
const user = result;
|
|
94
|
-
const config = await setAuthContext(user, params);
|
|
95
|
-
|
|
96
|
-
resolve(config);
|
|
97
|
-
},
|
|
98
|
-
onFailure: (err) => {
|
|
99
|
-
reject(err);
|
|
100
|
-
},
|
|
101
|
-
});
|
|
102
|
-
});
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
async function setAuthContext(user, params): Promise<AuthContext> {
|
|
106
|
-
const config = await getConfig();
|
|
107
|
-
let apiGateway;
|
|
108
|
-
console.log(config.environments);
|
|
109
|
-
if(config.environments) {
|
|
110
|
-
const questions = [];
|
|
111
|
-
questions.push({
|
|
112
|
-
type: 'list',
|
|
113
|
-
name: 'environment',
|
|
114
|
-
message: 'Which environment would you like to use?',
|
|
115
|
-
choices: Object.keys(config.environments),
|
|
116
|
-
default: Object.keys(config.environments)[0],
|
|
117
|
-
});
|
|
118
|
-
const answers = await inquirer.prompt(questions);
|
|
119
|
-
apiGateway = config.environments[answers.environment];
|
|
120
|
-
} else {
|
|
121
|
-
apiGateway = 'https://api.vibeiq.com/prod/api';
|
|
122
|
-
}
|
|
123
|
-
|
|
124
|
-
// Set Auth Config
|
|
125
|
-
Auth.config = {
|
|
126
|
-
apiUserToken: user.idToken.jwtToken,
|
|
127
|
-
apiGateway,
|
|
128
|
-
orgSlug: params.orgSlug,
|
|
129
|
-
};
|
|
130
|
-
// SET SDK CONFIG
|
|
131
|
-
setSdkConfig(Auth.config);
|
|
132
|
-
|
|
133
|
-
return refreshCurrentUserOrg();
|
|
134
|
-
}
|
|
135
|
-
|
|
136
|
-
async function refreshCurrentUserOrg() {
|
|
137
|
-
console.debug('refreshing current user org');
|
|
138
|
-
const currentUser = await Request.request('/users/current', {
|
|
139
|
-
method: 'GET',
|
|
140
|
-
headers: {
|
|
141
|
-
Accept: 'application/json',
|
|
142
|
-
'Content-Type': 'application/json',
|
|
143
|
-
},
|
|
144
|
-
});
|
|
145
|
-
if (!currentUser) {
|
|
146
|
-
throw Error('Could not get current user');
|
|
147
|
-
}
|
|
148
|
-
const org = currentUser.orgs.find(o => o.orgSlug === Auth.config.orgSlug);
|
|
149
|
-
if (org) {
|
|
150
|
-
Auth.config.orgId = org.orgId || org.id;
|
|
151
|
-
}
|
|
152
|
-
// cache config in the fs
|
|
153
|
-
storeConfig(Object.assign({}, Auth.config));
|
|
154
|
-
return Object.assign({}, Auth.config);
|
|
155
|
-
}
|
|
1
|
+
const AmazonCognitoIdentity = require('amazon-cognito-identity-js');
|
|
2
|
+
import inquirer from 'inquirer';
|
|
3
|
+
import { Request, setConfig as setSdkConfig } from '@contrail/sdk';
|
|
4
|
+
import { Auth, AuthContext } from './auth';
|
|
5
|
+
import { getConfig, storeConfig } from '../config/config';
|
|
6
|
+
|
|
7
|
+
const CONFIGURATION = {
|
|
8
|
+
userPoolId: 'us-east-1_qIaNZdUfm',
|
|
9
|
+
clientId: process.env.CONTRAIL_COGNITO_CLIENT_ID || '7knkt34gfacbgd0ghnuspefdfg',
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
export async function authUser(): Promise<AuthContext> {
|
|
13
|
+
console.debug('authorizing user');
|
|
14
|
+
const config = await getConfig();
|
|
15
|
+
if (
|
|
16
|
+
config &&
|
|
17
|
+
config.apiUserToken &&
|
|
18
|
+
config.apiGateway &&
|
|
19
|
+
config.orgSlug
|
|
20
|
+
) {
|
|
21
|
+
console.debug('populating auth config from fs config');
|
|
22
|
+
Auth.config = {
|
|
23
|
+
apiUserToken: config.apiUserToken,
|
|
24
|
+
apiGateway: config.apiGateway,
|
|
25
|
+
orgSlug: config.orgSlug,
|
|
26
|
+
};
|
|
27
|
+
setSdkConfig(Auth.config);
|
|
28
|
+
try {
|
|
29
|
+
return await refreshCurrentUserOrg();
|
|
30
|
+
} catch (e) {
|
|
31
|
+
console.log('Token expired. Requesting auth credentials...');
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
}
|
|
35
|
+
const questions = [];
|
|
36
|
+
if (!process.env.CONTRAIL_CLI_EMAIL) {
|
|
37
|
+
questions.push({
|
|
38
|
+
type: 'input',
|
|
39
|
+
name: 'email',
|
|
40
|
+
validate: (val) => !!val,
|
|
41
|
+
message: 'Email',
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
if (!process.env.CONTRAIL_CLI_PASSWORD) {
|
|
45
|
+
questions.push({
|
|
46
|
+
type: 'password',
|
|
47
|
+
name: 'password',
|
|
48
|
+
validate: (val) => !!val,
|
|
49
|
+
message: 'Password',
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
if (!process.env.CONTRAIL_CLI_ORGSLUG) {
|
|
53
|
+
questions.push({
|
|
54
|
+
type: 'input',
|
|
55
|
+
name: 'orgSlug',
|
|
56
|
+
validate: (val) => !!val,
|
|
57
|
+
message: 'Org (slug)',
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
const answers = await inquirer.prompt(questions);
|
|
62
|
+
const params = {
|
|
63
|
+
email: process.env.CONTRAIL_CLI_EMAIL || answers.email,
|
|
64
|
+
password: process.env.CONTRAIL_CLI_PASSWORD || answers.password,
|
|
65
|
+
orgSlug: process.env.CONTRAIL_CLI_ORGSLUG || answers.orgSlug,
|
|
66
|
+
};
|
|
67
|
+
if (!params.email || !params.password) {
|
|
68
|
+
throw new Error('Email and Password required');
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
const poolData = {
|
|
72
|
+
UserPoolId: CONFIGURATION.userPoolId,
|
|
73
|
+
ClientId: CONFIGURATION.clientId,
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
const userPool = new AmazonCognitoIdentity.CognitoUserPool(poolData);
|
|
77
|
+
const authData = {
|
|
78
|
+
Username: params.email,
|
|
79
|
+
Password: params.password,
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
const authDetails = new AmazonCognitoIdentity.AuthenticationDetails(authData);
|
|
83
|
+
const userData = {
|
|
84
|
+
Username: params.email,
|
|
85
|
+
Pool: userPool,
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
const cognitoUser = new AmazonCognitoIdentity.CognitoUser(userData);
|
|
89
|
+
|
|
90
|
+
return new Promise((resolve, reject) => {
|
|
91
|
+
cognitoUser.authenticateUser(authDetails, {
|
|
92
|
+
onSuccess: async (result) => {
|
|
93
|
+
const user = result;
|
|
94
|
+
const config = await setAuthContext(user, params);
|
|
95
|
+
|
|
96
|
+
resolve(config);
|
|
97
|
+
},
|
|
98
|
+
onFailure: (err) => {
|
|
99
|
+
reject(err);
|
|
100
|
+
},
|
|
101
|
+
});
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
async function setAuthContext(user, params): Promise<AuthContext> {
|
|
106
|
+
const config = await getConfig();
|
|
107
|
+
let apiGateway;
|
|
108
|
+
console.log(config.environments);
|
|
109
|
+
if(config.environments) {
|
|
110
|
+
const questions = [];
|
|
111
|
+
questions.push({
|
|
112
|
+
type: 'list',
|
|
113
|
+
name: 'environment',
|
|
114
|
+
message: 'Which environment would you like to use?',
|
|
115
|
+
choices: Object.keys(config.environments),
|
|
116
|
+
default: Object.keys(config.environments)[0],
|
|
117
|
+
});
|
|
118
|
+
const answers = await inquirer.prompt(questions);
|
|
119
|
+
apiGateway = config.environments[answers.environment];
|
|
120
|
+
} else {
|
|
121
|
+
apiGateway = 'https://api.vibeiq.com/prod/api';
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
// Set Auth Config
|
|
125
|
+
Auth.config = {
|
|
126
|
+
apiUserToken: user.idToken.jwtToken,
|
|
127
|
+
apiGateway,
|
|
128
|
+
orgSlug: params.orgSlug,
|
|
129
|
+
};
|
|
130
|
+
// SET SDK CONFIG
|
|
131
|
+
setSdkConfig(Auth.config);
|
|
132
|
+
|
|
133
|
+
return refreshCurrentUserOrg();
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
async function refreshCurrentUserOrg() {
|
|
137
|
+
console.debug('refreshing current user org');
|
|
138
|
+
const currentUser = await Request.request('/users/current', {
|
|
139
|
+
method: 'GET',
|
|
140
|
+
headers: {
|
|
141
|
+
Accept: 'application/json',
|
|
142
|
+
'Content-Type': 'application/json',
|
|
143
|
+
},
|
|
144
|
+
});
|
|
145
|
+
if (!currentUser) {
|
|
146
|
+
throw Error('Could not get current user');
|
|
147
|
+
}
|
|
148
|
+
const org = currentUser.orgs.find(o => o.orgSlug === Auth.config.orgSlug);
|
|
149
|
+
if (org) {
|
|
150
|
+
Auth.config.orgId = org.orgId || org.id;
|
|
151
|
+
}
|
|
152
|
+
// cache config in the fs
|
|
153
|
+
storeConfig(Object.assign({}, Auth.config));
|
|
154
|
+
return Object.assign({}, Auth.config);
|
|
155
|
+
}
|