Remove all loading logic

SQLite is so fast the spinners only mislead the user into thinking
these operations take long. They are practically instant.
This commit is contained in:
Brandon Presley 2022-09-04 16:30:02 +12:00
parent 259d36d67f
commit e483187338
4 changed files with 1 additions and 32 deletions

View File

@ -13,7 +13,6 @@ import Set from './set';
export default function BestList() { export default function BestList() {
const [bests, setBests] = useState<Set[]>([]); const [bests, setBests] = useState<Set[]>([]);
const [search, setSearch] = useState(''); const [search, setSearch] = useState('');
const [refreshing, setRefresing] = useState(false);
const navigation = useNavigation<NavigationProp<BestPageParams>>(); const navigation = useNavigation<NavigationProp<BestPageParams>>();
const refresh = useCallback(async () => { const refresh = useCallback(async () => {
@ -56,12 +55,6 @@ export default function BestList() {
description="Once sets have been added, this will highlight your personal bests." description="Once sets have been added, this will highlight your personal bests."
/> />
} }
refreshing={refreshing}
onRefresh={async () => {
setRefresing(true);
await refresh();
setRefresing(false);
}}
renderItem={renderItem} renderItem={renderItem}
data={bests} data={bests}
/> />

View File

@ -16,7 +16,6 @@ import {PlanPageParams} from './PlanPage';
export default function PlanList() { export default function PlanList() {
const [search, setSearch] = useState(''); const [search, setSearch] = useState('');
const [plans, setPlans] = useState<Plan[]>([]); const [plans, setPlans] = useState<Plan[]>([]);
const [refreshing, setRefresing] = useState(false);
const navigation = useNavigation<NavigationProp<PlanPageParams>>(); const navigation = useNavigation<NavigationProp<PlanPageParams>>();
const refresh = useCallback(async () => { const refresh = useCallback(async () => {
@ -51,11 +50,6 @@ export default function PlanList() {
data={plans} data={plans}
renderItem={renderItem} renderItem={renderItem}
keyExtractor={set => set.id?.toString() || ''} keyExtractor={set => set.id?.toString() || ''}
refreshing={refreshing}
onRefresh={() => {
setRefresing(true);
refresh().finally(() => setRefresing(false));
}}
ListEmptyComponent={ ListEmptyComponent={
<List.Item <List.Item
title="No plans yet" title="No plans yet"

View File

@ -28,7 +28,6 @@ export default function SetList() {
const [workouts, setWorkouts] = useState<string[]>([]); const [workouts, setWorkouts] = useState<string[]>([]);
const [offset, setOffset] = useState(0); const [offset, setOffset] = useState(0);
const [search, setSearch] = useState(''); const [search, setSearch] = useState('');
const [refreshing, setRefreshing] = useState(false);
const [end, setEnd] = useState(false); const [end, setEnd] = useState(false);
const [dates, setDates] = useState(false); const [dates, setDates] = useState(false);
const [images, setImages] = useState(true); const [images, setImages] = useState(true);
@ -42,11 +41,6 @@ export default function SetList() {
setEnd(false); setEnd(false);
}, [search]); }, [search]);
const refreshLoader = useCallback(async () => {
setRefreshing(true);
refresh().finally(() => setRefreshing(false));
}, [setRefreshing, refresh]);
useEffect(() => { useEffect(() => {
refresh(); refresh();
}, [search, refresh]); }, [search, refresh]);
@ -105,7 +99,6 @@ export default function SetList() {
const next = useCallback(async () => { const next = useCallback(async () => {
if (end) return; if (end) return;
setRefreshing(true);
const newOffset = offset + limit; const newOffset = offset + limit;
console.log(`${SetList.name}.next:`, { console.log(`${SetList.name}.next:`, {
offset, offset,
@ -147,8 +140,6 @@ export default function SetList() {
renderItem={renderItem} renderItem={renderItem}
keyExtractor={s => s.id!.toString()} keyExtractor={s => s.id!.toString()}
onEndReached={next} onEndReached={next}
refreshing={refreshing}
onRefresh={refreshLoader}
/> />
<MassiveFab onPress={onAdd} /> <MassiveFab onPress={onAdd} />
</View> </View>

View File

@ -19,7 +19,6 @@ export default function WorkoutList() {
const [workouts, setWorkouts] = useState<Workout[]>(); const [workouts, setWorkouts] = useState<Workout[]>();
const [offset, setOffset] = useState(0); const [offset, setOffset] = useState(0);
const [search, setSearch] = useState(''); const [search, setSearch] = useState('');
const [refreshing, setRefreshing] = useState(false);
const [end, setEnd] = useState(false); const [end, setEnd] = useState(false);
const navigation = useNavigation<NavigationProp<WorkoutsPageParams>>(); const navigation = useNavigation<NavigationProp<WorkoutsPageParams>>();
@ -34,11 +33,6 @@ export default function WorkoutList() {
setEnd(false); setEnd(false);
}, [search]); }, [search]);
const refreshLoader = useCallback(async () => {
setRefreshing(true);
refresh().finally(() => setRefreshing(false));
}, [setRefreshing, refresh]);
useEffect(() => { useEffect(() => {
refresh(); refresh();
}, [search, refresh]); }, [search, refresh]);
@ -58,7 +52,6 @@ export default function WorkoutList() {
const next = useCallback(async () => { const next = useCallback(async () => {
if (end) return; if (end) return;
setRefreshing(true);
const newOffset = offset + limit; const newOffset = offset + limit;
console.log(`${SetList.name}.next:`, { console.log(`${SetList.name}.next:`, {
offset, offset,
@ -70,7 +63,7 @@ export default function WorkoutList() {
search: `%${search}%`, search: `%${search}%`,
limit, limit,
offset: newOffset, offset: newOffset,
}).finally(() => setRefreshing(false)); });
if (newWorkouts.length === 0) return setEnd(true); if (newWorkouts.length === 0) return setEnd(true);
if (!workouts) return; if (!workouts) return;
setWorkouts([...workouts, ...newWorkouts]); setWorkouts([...workouts, ...newWorkouts]);
@ -99,8 +92,6 @@ export default function WorkoutList() {
renderItem={renderItem} renderItem={renderItem}
keyExtractor={w => w.name} keyExtractor={w => w.name}
onEndReached={next} onEndReached={next}
refreshing={refreshing}
onRefresh={refreshLoader}
/> />
<MassiveFab onPress={onAdd} /> <MassiveFab onPress={onAdd} />
</View> </View>