import { useCallback, useEffect, useState } from 'react'; import LoadFileForm from './LoadFileForm'; import { fetchConfig, loadTransactions } from '../../services/api.service'; import { useStore } from '../../store/AppStore'; export default function LoadFilePage() { const { dispatch } = useStore(); const [profiles, setProfiles] = useState([]); const [servers, setServers] = useState([]); const [defaultProfile, setDefaultProfile] = useState(undefined); const [defaultServer, setDefaultServer] = useState(undefined); const loadConfig = useCallback(async () => { const config = await fetchConfig(); setProfiles(config.profiles); setServers(config.servers); setDefaultProfile(config.defaultProfile); setDefaultServer(config.defaultServer); dispatch({ type: 'UPDATE_CONFIG', payload: config }); }, [setProfiles, setServers, setDefaultProfile, setDefaultServer]); useEffect(() => { loadConfig(); }, [loadConfig]); const handleSubmit = useCallback(async (csvFile: File, profile: string, server: string) => { const data = await loadTransactions(csvFile, profile, server); dispatch({ type: 'UPDATE_DATA', payload: { profile, server, ...data } }); dispatch({ type: 'MOVE_STEP', payload: { offset: 1 } }); }, []); return (

Import Transactions

); }