mrasterisco / rxfireauth Goto Github PK
View Code? Open in Web Editor NEWA Rx-wrapper around the Firebase Authentication SDK for iOS
License: MIT License
A Rx-wrapper around the Firebase Authentication SDK for iOS
License: MIT License
Is your feature request related to a problem? Please describe.
As Firebase is working to add support to SwiftPM, we should do the same.
Describe the solution you'd like
It should be possible to include this library as a SwiftPM dependency.
Additional context
Here's additional information on Firebase support for SwiftPM.
Describe the bug
When using a login handler, the implementation of UserManagerType
stores the handler in the loginHandler
property. This property is not cleared once the login operation has ended, hence the referenced handler will be retained until UserManager
is released.
Expected behavior
The implementation of UserManagerType
should promptly release the handler (which may potentially be a large object) when is no longer needed.
Environment:
Is your feature request related to a problem? Please describe.
When signing-in with OAuth providers that either don't support or don't provide an SDK, we rely on AppAuth
to do the work, but we implemented the ExternalUserAgent
to open the system browser.
Describe the solution you'd like
We should display an embedded view to improve the user experience and align to other apps.
Additional context
At the moment, the only OAuth provider we support is Google: you can see this behavior happening when you import the library via Swift Package Manager on iOS.
Is your feature request related to a problem? Please describe.
It would be great to have support for changing or adding the user password.
Describe the solution you'd like
A new function to change the user password and, perhaps, one to define if the user currently has a password or not.
Is your feature request related to a problem? Please describe.
When using Sign in with Apple and allowMigration
set to nil
, if the Apple ID is a registered user, we get the usual migrationRequired
error. That is fine to handle this case, but there's no way to continue the authentication without restarting the procedure from scratch; this result in the Sign in with Apple dialog appearing twice.
Describe the solution you'd like
We should be able to continue the authentication procedure after having asked the user what they'd like to do with their existing data. I'm seeing something like:
func signIn(with credentials: <someCredentialHolder>, updateUserDisplayName: Bool, allowMigration: Bool) -> Single<LoginDescriptor>
When the migrationRequired
error is thrown, the caller receives an instance of someCredentialHolder
and it is responsible of passing it back to the UserManager
in order to proceed with the authentication.
Additional context
This, in addition to solving this issue, would allow us to support more providers without actually implementing them into the library, but that would mean exposing a generic structure to store credentials (something that Firebase already does).
Describe the bug
Passing true
to the resetToAnonymous parameter of the logout function throws an error.
Expected behavior
The system should be able to logout and then create a new anonymous user immediately after.
Environment:
Is your feature request related to a problem? Please describe.
The Firebase SDK that is used in this library is quite old.
Describe the solution you'd like
Update the Firebase SDK to the latest available version.
Is your feature request related to a problem? Please describe.
It would be great to have a method to delete the currently logged-in account.
Describe the solution you'd like
A new function to call that deletes the current account.
Is your feature request related to a problem? Please describe.
As Firebase supports macOS, we should add support too.
Describe the solution you'd like
The library should be able to build and work on macOS.
Additional context
Firebase has a community supported version that works on macOS.
Describe the bug
Some of the functions of UserManagerType want a UserData instance, but its initializer is internal.
Expected behavior
The intializer must be public.
Environment:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.