magiclabs / magic-js

Magic browser/React Native JavaScript SDK is your entry-point to integrating passwordless authentication inside your application.
https://magic.link/docs/api-reference/client-side-sdks/web
Apache License 2.0
460 stars 85 forks source link

Decouple expo web browser from RN ext oauth #313

Closed ice-ares closed 2 years ago

ice-ares commented 2 years ago

✨ Feature Request

The oauth RN implementation requires expo-web-browser, which requires expo.

We need to be able to use it on projects that don’t use expo.

💻 Examples

https://reactnative.dev/docs/linking#openurl Could be used

Ethella commented 2 years ago

Hey @victor-oancea-leftclick-io. I've taken a closer look at all the possible solutions including the one you suggested.

However, with bare RN, I couldn't find a good library that supports both SFAuthsession in iOS and CustomTab in Android, which are the two key components for OAuth2 integrations in our mobile infra to ensure security.

So, to unblock you I would suggest you give it a try to initialize expo modules by npx install-expo-modules@latest to enable the expo library. For more context, you may check. https://docs.expo.dev/bare/installing-expo-modules/

Let me know if it helps 😄

rcorrie commented 1 year ago

@Ethella have you looked into https://github.com/proyecto26/react-native-inappbrowser ?

rcorrie commented 1 year ago

@ice-ares feel free to try my PR

magiclabsFE commented 1 year ago

:rocket: Issue was released in @magic-ext/algorand@8.1.0, @magic-ext/avalanche@8.1.0, @magic-ext/bitcoin@8.1.0, @magic-ext/conflux@6.1.0, @magic-ext/connect@6.1.0, @magic-ext/cosmos@8.1.0, @magic-ext/ed25519@4.1.0, @magic-ext/flow@8.1.0, @magic-ext/harmony@8.1.0, @magic-ext/icon@8.1.0, @magic-ext/near@8.1.0, @magic-ext/oauth@7.1.0, @magic-ext/polkadot@8.1.0, @magic-ext/react-native-bare-oauth@7.1.0, @magic-ext/react-native-expo-oauth@7.1.0, @magic-ext/solana@9.1.0, @magic-ext/taquito@5.1.0, @magic-ext/terra@5.1.0, @magic-ext/tezos@8.1.0, @magic-ext/webauthn@7.1.0, @magic-ext/zilliqa@8.1.0, @magic-sdk/commons@9.1.0, @magic-sdk/pnp@7.1.0, @magic-sdk/provider@13.1.0, @magic-sdk/react-native-bare@13.1.0, @magic-sdk/react-native-expo@13.1.0, @magic-sdk/types@11.1.0, magic-sdk@13.1.0 :rocket: