in src/bll/commands/signin.ts [118:143]
private async requestTypingCredentials(fromPersistence: Credentials): Promise<Credentials> {
let serverUrl: string;
let username: string;
let password: string;
let suggestedUrl = Constants.DEFAULT_URL;
let suggestedUsername = "";
if (fromPersistence) {
suggestedUrl = fromPersistence.serverURL;
suggestedUsername = fromPersistence.user;
} else {
const targetNameSettings = this.settings.lastLogin;
const targetName: { url, username } = Utils.tryParseTargetName(targetNameSettings);
suggestedUrl = targetName ? targetName.url : suggestedUrl;
suggestedUsername = targetName ? targetName.username : suggestedUsername;
}
try {
serverUrl = await this.requestServerUrl(suggestedUrl);
username = await SignIn.requestUsername(suggestedUsername, serverUrl);
password = await SignIn.requestPassword(username);
} catch (err) {
return Promise.resolve(undefined);
}
return this.validateAndGenerateUserCredentials(serverUrl, username, password);
}