in vscode/qodana/src/core/handler/index.ts [20:41]
async projectIdNotSet(projectId: string): Promise<boolean> {
let projectIdInSettings = vscode.workspace.getConfiguration().get<string>(CONF_PROJ_ID);
return new Promise<boolean>((resolve) => {
if (projectId && !projectIdInSettings) {
vscode.window.showErrorMessage(idNotSet(projectId), ID_SET, ID_CANCEL).then(async (value) => {
if (value === ID_SET) {
await vscode.workspace.getConfiguration().update(CONF_PROJ_ID, projectId, vscode.ConfigurationTarget.Workspace);
}
resolve(value === ID_SET);
});
} else if (projectId && projectIdInSettings !== projectId) {
vscode.window.showErrorMessage(idNotEqual(projectId), ID_SET, ID_CANCEL).then(async (value) => {
if (value === ID_SET) {
await vscode.workspace.getConfiguration().update(CONF_PROJ_ID, projectId, vscode.ConfigurationTarget.Workspace);
}
resolve(value === ID_SET);
});
} else {
resolve(true);
}
});
}