angular / angularfire

Angular + Firebase = ❤️
https://firebaseopensource.com/projects/angular/angularfire2
MIT License
7.67k stars 2.19k forks source link

Login with Apple #3319

Open sorcamarian opened 1 year ago

sorcamarian commented 1 year ago

Hi,

The Apple login is a little different than Google, Twitter and Facebook login.

With Google Login I use this: this.angularFireAuth.signInWithPopup(new firebase.auth.GoogleAuthProvider()) For Apple login, there is no object in firebase.auth. so I had to use the example provided here: https://firebase.google.com/docs/auth/web/apple?authuser=0&hl=en#web-version-9

import { getAuth, signInWithPopup, OAuthProvider } from "firebase/auth";

const auth = getAuth();
signInWithPopup(auth, provider)
  .then((result) => {
    // The signed-in user info.
    const user = result.user;

    // Apple credential
    const credential = OAuthProvider.credentialFromResult(result);
    const accessToken = credential.accessToken;
    const idToken = credential.idToken;

    // IdP data available using getAdditionalUserInfo(result)
    // ...
  })
  .catch((error) => {
    // Handle Errors here.
    const errorCode = error.code;
    const errorMessage = error.message;
    // The email of the user's account used.
    const email = error.customData.email;
    // The credential that was used.
    const credential = OAuthProvider.credentialFromError(error);

    // ...
  });

Will you add a AngularFire way for login with Apple? There is not example at this page: https://github.com/angular/angularfire/blob/master/docs/auth/getting-started.md

google-oss-bot commented 1 year ago

This issue does not seem to follow the issue template. Make sure you provide all the required information.