You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Newbie dart programmer; Dart 2.12.2 with VSCode. This is mostly an FYI in case you think this is a problem.
My code is bad enough, but the formatter makes it worse imho, in particular the decision to linebreak and indent .signInWithEmailLink and the first .catchError
voidonLink(DynamicLinkEvent event) {
var link = event.data?.link?.toString();
if (link !=null&& _firebaseAuth.isSignInWithEmailLink(link)) {
var url =Uri.parse(event.data.link.queryParameters['continueUrl']);
var email = url.queryParameters['e'];
if (email !=null) {
_firebaseAuth
.signInWithEmailLink( // <== urgh!
email: email,
emailLink: link,
)
.catchError( // <== argh!
(error) {
print('Auth Error $error');
},
test: (e) => e isFirebaseAuthException,
).catchError(
() {},
);
}
}
}
It annoyed me so much I did this :)
voidonLink(DynamicLinkEvent event) {
var link = event.data?.link?.toString();
if (link !=null&& _firebaseAuth.isSignInWithEmailLink(link)) {
var url =Uri.parse(event.data.link.queryParameters['continueUrl']);
var email = url.queryParameters['e'];
if (email !=null) {
var f = _firebaseAuth.signInWithEmailLink(
email: email,
emailLink: link,
);
// [f] is a workaround for formatter ugliness
f.catchError(
(error) {
print('Auth Error $error');
},
test: (e) => e isFirebaseAuthException,
).catchError(
() {},
);
}
}
}
The text was updated successfully, but these errors were encountered:
This is mostly a consequence of the weird interaction between how trailing commas affect formatting and the formatting rules around lambdas in argument lists. If you remove the trailing commas, you get:
voidonLink(DynamicLinkEvent event) {
var link = event.data?.link?.toString();
if (link !=null&& _firebaseAuth.isSignInWithEmailLink(link)) {
var url =Uri.parse(event.data.link.queryParameters['continueUrl']);
var email = url.queryParameters['e'];
if (email !=null) {
_firebaseAuth
.signInWithEmailLink(email: email, emailLink: link)
.catchError((error) {
print('Auth Error $error');
}, test: (e) => e isFirebaseAuthException).catchError(() {});
}
}
}
I think that's a lot more reasonable. But I agree that the behavior in the presence of trailing commas is pretty bad. I'll leave this open to take a look at improving that.
Newbie dart programmer; Dart 2.12.2 with VSCode. This is mostly an FYI in case you think this is a problem.
My code is bad enough, but the formatter makes it worse imho, in particular the decision to linebreak and indent
.signInWithEmailLink
and the first.catchError
It annoyed me so much I did this :)
The text was updated successfully, but these errors were encountered: