feat(auth): add Auth Context provider with user data refactoring
This commit is contained in:
parent
6cae1cc7f3
commit
d44b560ed1
2 changed files with 23 additions and 12 deletions
15
App.tsx
15
App.tsx
|
|
@ -4,7 +4,7 @@ import { GluestackUIProvider } from '@gluestack-ui/themed';
|
||||||
|
|
||||||
import { config } from './config/gluestack-ui.config';
|
import { config } from './config/gluestack-ui.config';
|
||||||
|
|
||||||
import { AuthContext } from '@contexts/AuthContext';
|
import { AuthContextProvider } from '@contexts/AuthContext';
|
||||||
|
|
||||||
import { Loading } from '@components/Loading';
|
import { Loading } from '@components/Loading';
|
||||||
import { Routes } from '@routes/index';
|
import { Routes } from '@routes/index';
|
||||||
|
|
@ -17,17 +17,8 @@ export default function App() {
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<GluestackUIProvider config={config}>
|
<GluestackUIProvider config={config}>
|
||||||
<AuthContext.Provider
|
<AuthContextProvider>{fontsLoaded ? <Routes /> : <Loading />}</AuthContextProvider>
|
||||||
value={{
|
|
||||||
user: {
|
|
||||||
id: '1',
|
|
||||||
name: 'John Doe',
|
|
||||||
email: 'john.doe@email.com',
|
|
||||||
avatar: 'https://i.pravatar.cc/200',
|
|
||||||
},
|
|
||||||
}}>
|
|
||||||
{fontsLoaded ? <Routes /> : <Loading />}
|
|
||||||
</AuthContext.Provider>
|
|
||||||
<StatusBar barStyle="light-content" backgroundColor="transparent" translucent />
|
<StatusBar barStyle="light-content" backgroundColor="transparent" translucent />
|
||||||
</GluestackUIProvider>
|
</GluestackUIProvider>
|
||||||
);
|
);
|
||||||
|
|
|
||||||
|
|
@ -6,4 +6,24 @@ type AuthContextData = {
|
||||||
user: UserDTO;
|
user: UserDTO;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
type AuthContextProviderProps = {
|
||||||
|
children: React.ReactNode;
|
||||||
|
};
|
||||||
|
|
||||||
export const AuthContext = createContext<AuthContextData>({} as AuthContextData);
|
export const AuthContext = createContext<AuthContextData>({} as AuthContextData);
|
||||||
|
|
||||||
|
export function AuthContextProvider({ children }: AuthContextProviderProps) {
|
||||||
|
return (
|
||||||
|
<AuthContext.Provider
|
||||||
|
value={{
|
||||||
|
user: {
|
||||||
|
id: '1',
|
||||||
|
name: 'John Doe',
|
||||||
|
email: 'john.doe@email.com',
|
||||||
|
avatar: 'https://i.pravatar.cc/200',
|
||||||
|
},
|
||||||
|
}}>
|
||||||
|
{children}
|
||||||
|
</AuthContext.Provider>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue