Compare commits

...

2 commits

Author SHA1 Message Date
9afd06fe0f fix: add loading to history screen 2024-11-11 17:57:08 +00:00
8f3f487080 feat: redo api call 2024-11-11 17:48:59 +00:00
2 changed files with 34 additions and 18 deletions

View file

@ -10,6 +10,7 @@ import { HistoryByDayDTO } from '@dtos/HistoryByDayDTO';
import { HistoryCard } from '@components/HistoryCard';
import { ScreenHeader } from '@components/ScreenHeader';
import { ToastMessage } from '@components/ToastMessage';
import { Loading } from '@components/Loading';
export function History() {
const [isLoading, setIsLoading] = useState(true);
@ -47,24 +48,28 @@ export function History() {
<VStack flex={1}>
<ScreenHeader title="Histórico" />
<SectionList
sections={exercises}
keyExtractor={(item) => item.id}
renderItem={({ item }) => <HistoryCard data={item} />}
renderSectionHeader={({ section }) => (
<Heading color="$gray200" fontSize="$md" mt="$10" mb="$3">
{section.title}
</Heading>
)}
style={{ paddingHorizontal: 32 }}
contentContainerStyle={exercises.length === 0 && { flex: 1, justifyContent: 'center' }}
ListEmptyComponent={() => (
<Text color="$gray100" textAlign="center">
Não exercícios registrados ainda.{'\n'}Vamos fazer exercícios hoje?
</Text>
)}
showsVerticalScrollIndicator={false}
/>
{isLoading ? (
<Loading />
) : (
<SectionList
sections={exercises}
keyExtractor={(item) => item.id}
renderItem={({ item }) => <HistoryCard data={item} />}
renderSectionHeader={({ section }) => (
<Heading color="$gray200" fontSize="$md" mt="$10" mb="$3">
{section.title}
</Heading>
)}
style={{ paddingHorizontal: 32 }}
contentContainerStyle={exercises.length === 0 && { flex: 1, justifyContent: 'center' }}
ListEmptyComponent={() => (
<Text color="$gray100" textAlign="center">
Não exercícios registrados ainda.{'\n'}Vamos fazer exercícios hoje?
</Text>
)}
showsVerticalScrollIndicator={false}
/>
)}
</VStack>
);
}

View file

@ -69,6 +69,17 @@ api.registerInterceptTokenManager = (signOut: SignOut) => {
try {
const { data } = api.post('/sessions/refresh_token', { refresh_token });
await storageAuthTokenSave({ token: data.token, refresh_token: data.refresh_token });
if (originalRequestConfig.data) {
originalRequestConfig.data = JSON.parse(JSON.stringify(originalRequestConfig.data));
}
originalRequestConfig.headers.Authorization = `Bearer ${data.token}`;
api.defaults.headers.common.Authorization = `Bearer ${data.token}`;
failedQueue.forEach((request) => request.onSuccess(data.token));
resolve(api(originalRequestConfig));
} catch (error: any) {
failedQueue.forEach((request) => request.onFailure(error));
signOut();