import React, { useState, useMemo, useEffect } from 'react'; import { useApi } from './useApi'; import './App.css'; const Cluster = () => { return (
cluster
); }; type Identity = { lastName: string, middleName: string, firstName: string, descriptors: number[], id: number displayName: string, }; interface IdentitiesProps { identities: Identity[] }; const Identities = ({ identities } : IdentitiesProps) => { const identitiesJSX = useMemo(() => identities.map((identity) => { const idPath = String(identity.id % 100).padStart(2, '0'); return ({identity.id.toString()}); } ), [ identities ]); return (
{ identitiesJSX }
); }; const App = () => { const [identities, setIdentities] = useState([]); const { loading, data } = useApi( '../api/v1/faces' ); useEffect(() => { if (data && data.length) { setIdentities(data as Identity[]); } }, [data]); return (
{ loading &&
Loading...
} { !loading && <> }
); } export default App;