getRedirectResult() always returns null (AF7+FB9)
- Dominant language
- TypeScript
- Stars
- 7.8k
- Forks
- 2.2k
- Avg merge
- 22h 28m
- Merged PRs (30d)
- 6
Description
### Version info
**Angular: 13.1.2**
**Firebase: 9.6.3**
**AngularFire: 7.2.0 / 7.3.0**
### How to reproduce these conditions
on my ngInit():
```javascript
getRedirectResult().then(result => { console.log(result)})
```
### Debug output
i always get null.
i tried using the /compat/auth, i get
```javascript
{result : { credentials: null, user: null }}
```
### Expected behavior
results should contain credentials and user.
### Actual behavior
no results at all.
Works properly in AF 6.1.4 + FB 8.2.1. Encountered after upgrade.
onAuthStageChanged() works; it detects the user correctly. Problem is, There is a subscription to auth,state already running on a different module (which i am prohibited to modify). Subscribing to onAuthStageChanged() creates some sort of pseudo-deadlock (sometimes it resolves, sometimes it doesnt).
My temp workaround is to use signInWithPopup() but that disables mobile compatibility.
Tips on overcoming this are highly appreciated. Thank you
Contributor guide
Research direction
Start with the getRedirectResult() call shown in the reproduction and compare its behavior across AngularFire 7.2.0/7.3.0 with Firebase 9.6.3 versus AngularFire 6.1.4 with Firebase 8.2.1. Check the /compat/auth result and the interaction with the existing auth state subscription; done means redirect sign-in returns credentials and a user without relying on signInWithPopup().
Written by the indexing model from the issue text.
Assessment
- Tech stack
- angular, firebase, typescript
- Domain
- authentication, frontend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100