Fix Supabase OAuth flow and various UI updates
This commit is contained in:
25
App.tsx
25
App.tsx
@@ -1,11 +1,34 @@
|
||||
import { StatusBar } from 'expo-status-bar';
|
||||
import React from 'react';
|
||||
import React, { useEffect } from 'react';
|
||||
import { NavigationContainer } from '@react-navigation/native';
|
||||
import { SafeAreaProvider } from 'react-native-safe-area-context';
|
||||
import AppNavigator from './src/navigation/AppNavigator';
|
||||
import { AuthProvider } from './src/contexts/AuthContext';
|
||||
import * as Linking from 'expo-linking';
|
||||
import * as QueryParams from 'expo-auth-session/build/QueryParams';
|
||||
import { supabase } from './src/services/supabase';
|
||||
|
||||
export default function App() {
|
||||
useEffect(() => {
|
||||
const catchTokenOnLoad = async () => {
|
||||
const url = await Linking.getInitialURL();
|
||||
if (!url) return;
|
||||
|
||||
// Supabase sends tokens after a '#' which Expo might ignore, replace it with '?'
|
||||
const cleanUrl = url.replace('#', '?');
|
||||
const { params, errorCode } = QueryParams.getQueryParams(cleanUrl);
|
||||
|
||||
if (params?.access_token) {
|
||||
console.log('🔥 TOKEN APANHADO NO ARRANQUE!');
|
||||
await supabase.auth.setSession({
|
||||
access_token: params.access_token,
|
||||
refresh_token: params.refresh_token || '',
|
||||
});
|
||||
}
|
||||
};
|
||||
catchTokenOnLoad();
|
||||
}, []);
|
||||
|
||||
return (
|
||||
<SafeAreaProvider>
|
||||
<AuthProvider>
|
||||
|
||||
Reference in New Issue
Block a user