import React, { useEffect } from "react"; import { Searchbar } from 'react-native-paper'; import { StyleSheet, SafeAreaView, FlatList, Text } from 'react-native'; import API from "../API"; import ProfileCardHorizontal from "../components/ProfileCardHorizontal"; import { useSnapshot } from 'valtio'; import GlobalState from '../contexts/GlobalState.js'; import ProfileHeader from "../components/ProfileHeader"; import i18n from "../i18nMessages.js"; const Search = () => { const viewer = useSnapshot(GlobalState).me; const [searchQuery, setSearchQuery] = React.useState(''); const [profiles, setProfiles] = React.useState([]); const [queryTimer, setQueryTimer] = React.useState(0); useEffect(() => { let subscribed = true; // Igonred as we are using following //API.searchProfiles('').then((data) => { // if (subscribed && data.profiles){ // setProfiles(filteredProfiles); // } //}); return () => { subscribed = false; } }, []) const onChangeSearch = query => { setSearchQuery(query); if (queryTimer) clearTimeout(queryTimer); let timerId = setTimeout(() => { API.searchProfiles(query).then((data) => { console.log("DataChange Search view") setProfiles(data.profiles || []); }); }, 300); setQueryTimer(timerId); }; const renderProfile = (({ item }) => { return (); }); const renderFollowing = (({ item }) => { return (); }); const followers = viewer.following.slice().reverse().slice(0, 10); return ( { searchQuery.length ? item._id} /> : item} ListHeaderComponent={{i18n.t("message.recentlyFollowing")}} /> } ) } export default Search; const styles = StyleSheet.create({ container: { padding: 5, }, });