@kingstinct/react-native-healthkit
Version:
React Native bindings for HealthKit
19 lines (18 loc) • 615 B
JavaScript
import { useCallback, useEffect, useState } from 'react';
import getMostRecentWorkout from '../utils/getMostRecentWorkout';
import useSubscribeToChanges from './useSubscribeToChanges';
/**
* @returns the most recent workout sample.
*/
export function useMostRecentWorkout() {
const [workout, setWorkout] = useState();
const update = useCallback(async () => {
setWorkout(await getMostRecentWorkout());
}, []);
useEffect(() => {
void update();
}, [update]);
useSubscribeToChanges('HKWorkoutTypeIdentifier', update);
return workout;
}
export default useMostRecentWorkout;