import React, {useContext, useEffect, useState} from 'react'; import {useColorScheme} from 'react-native'; import {LineChart} from 'react-native-gifted-charts'; import {Button, Dialog, Portal} from 'react-native-paper'; import {DatabaseContext} from './App'; import Best from './best'; export default function ViewBest({ best, setBest, }: { best?: Best; setBest: (best?: Best) => void; }) { const [data, setData] = useState< {value: number; label: string; labelComponent: any}[] >([]); const [labels, setLabels] = useState([]); const db = useContext(DatabaseContext); const dark = useColorScheme() === 'dark'; const selectBest = ` SELECT max(weight) AS weight, STRFTIME('%Y-%m-%d', created) as created FROM sets WHERE name = ? GROUP BY name, STRFTIME('%Y-%m-%d', created) `; const refresh = async () => { const [result] = await db.executeSql(selectBest, [best?.name]); if (result.rows.length === 0) return; console.log('ViewBest.refresh', result.rows.raw()); setData( result.rows.raw().map(row => ({ value: row.weight, label: row.created, labelComponent: () => null, })), ); }; useEffect(() => { refresh(); }, [best]); return ( setBest(undefined)}> {best?.name} ); }