signIn method
Interactive sign-in. extraParams carries deferred-login one-time-token /
login-hint params when redeeming an app-handoff carrier.
Implementation
Future<Result<SessionTokens>> signIn({
Map<String, String> extraParams = const <String, String>{},
}) async {
_status = SessionStatus.authenticating;
_problem = null;
notifyListeners();
try {
final SessionTokens issued = await _provider.signIn(
extraParams: extraParams,
);
_validateLifetime(issued);
_tokens = issued;
_status = SessionStatus.authenticated;
notifyListeners();
return Ok<SessionTokens>(issued);
} on Object catch (error) {
return _fail(
type: 'urn:diene:problem:auth',
title: 'Sign-in failed',
detail: error.toString(),
);
}
}