use dart:js and latest oauth2 libs