import { useContext, useState, useEffect } from 'react';
import { ActivityIndicator, Alert, FlatList, ScrollView, View, TextInput, TouchableOpacity, Text } from 'react-native';
import { styles } from './Registry.styled';
import { useRegistry } from './useRegistry.hook';
import { RegistryItem } from './registryItem/RegistryItem';
import { ProfileContext } from 'context/ProfileContext';
import Colors from 'constants/Colors';
import Ionicons from 'react-native-vector-icons/AntDesign';
export function RegistryHeader({ search, setSearch, handle, setHandle, server, setServer }) {
return (
{ !search && (
setSearch(true)}>
)}
{ search && (
)}
);
}
export function RegistryBody({ search, handle, server, openContact }) {
const { state, actions } = useRegistry(search, handle, server);
return (
{ state.searching && (
)}
{ !state.searching && state.accounts.length === 0 && (
No Contacts Found
)}
{ !state.searching && state.accounts.length !== 0 && (
}
keyExtractor={item => item.guid}
/>
)}
);
}
export function Registry({ closeRegistry, openContact }) {
const [search, setSearch] = useState(false);
const [handle, setHandle] = useState();
const [server, setServer] = useState();
const profile = useContext(ProfileContext);
useEffect(() => {
setSearch(false);
setHandle(null);
setServer(profile.state.identity?.node);
}, [profile.state]);
return (
);
}