show(clientId, autoSignInDisabled) {
    var self = this;
    // Client ID available and googleyolo is available.
    if (this.googleyolo_ && clientId) {
      // One-Tap UI renderer.
      var render = function() {
        // UI initialized.
        self.initialized_ = true;
        return new goog.Promise((resolve, reject) => {
          self.callback_ = resolve;
          self.googleyolo_.initialize({
            'client_id': /** @type {string} */ (clientId),
            'callback': resolve,
            'auto_select': !autoSignInDisabled,
          });
          self.googleyolo_.prompt();
        });
      };
      return render();
    } else if (clientId) {
      // Try to dynamically load googleyolo dependencies.
      // If multiple calls of show are triggered successively, they would all
      // share the same loader pending promise. They would then cancel each
      // other successively due to concurrent requests. Only the last call will
      // succeed.
      var p = firebaseui.auth.GoogleYolo.Loader.getInstance()
          .load()
          .then(function() {
            // Set googleyolo to prevent reloading again for future show
            // calls.
            self.googleyolo_ = getGoogleAccountsId();
            // On success, retry to show.
            return self.show(clientId, autoSignInDisabled);
          })
          .thenCatch(function(error) {
            // On failure, resolve with null.
            return null;
          });
      // Cast from goog.Promise to native Promise.
      return goog.Promise.resolve(p);
    }
    // API not supported on older browsers.
    return goog.Promise.resolve(null);
  }
Shows the One-Tap UI if available and returns a promise that resolves with
the selected googleyolo credential.
If no credential is available, the promise will never resolve.
If flow is cancelled, promise will resolve with null.
@param {?string} clientId The One-Tap client ID if available.
@param {boolean} autoSignInDisabled Whether auto sign-in is disabled.
@return {!goog.Promise<?SmartLockCredential>} A promise that resolves when
    One-Tap sign in is resolved or cancel is called. A googleyolo
    credential is returned in the process.