import { View, Text, ScrollView, RefreshControl } from "react-native";
import { useRouter } from "expo-router";
import { useState, useCallback } from "react";
import { useQuery } from "convex/react";
import { api } from "../../../convex/_generated/api";
import { useAuth } from "../../_layout";
import { useTheme } from "../../../components/theme";
import { ChatListItem } from "../../../components/chat-list-item";
import { Button } from "../../../components/ui/button";
import { Loading } from "../../../components/ui/loading";
export default function ChatScreen() {
const theme = useTheme();
const router = useRouter();
const { token, userId, isAuthenticated } = useAuth();
const [refreshing, setRefreshing] = useState(false);
const chats = useQuery(
api.chats.listByUser,
isAuthenticated && token ? { token } : "skip"
);
const onRefresh = useCallback(() => {
setRefreshing(true);
setTimeout(() => setRefreshing(false), 800);
}, []);
if (!isAuthenticated) {
return (
}
contentContainerStyle={{ padding: theme.spacing.lg }}
>
{"\uD83D\uDCAC"}
Чатови
Најавете се за да ги видите вашите разговори.
);
}
if (chats === undefined) {
return (
);
}
if (chats.length === 0) {
return (
}
contentContainerStyle={{ padding: theme.spacing.lg }}
>
{"\uD83D\uDCAC"}
Немате разговори
Започнете разговор со мајстор или клиент.
);
}
return (
}
style={{ backgroundColor: theme.colors.background }}
>
{chats.map((chat) => (
))}
);
}