import {
Pressable,
ScrollView,
StyleSheet,
TouchableOpacity,
} from "react-native";
import { useTranslation } from "react-i18next";
import SemiCircleProgress from "../../components/home/SemiCircleProgress";
import { Text, View } from "@/components/Themed";
import { useNavigation } from "expo-router";
import { useLayoutEffect, useState } from "react";
import { StatusBar } from "expo-status-bar";
import Profile from "../../components/home/Profile";
import CustomerCareIcon from "../../assets/icons/customer-care.svg";
import ServiceReminderCard from "@/components/home/ServiceReminderCard";
import MetricCard from "@/components/home/MetricCard";
import PaymentDueCard from "@/components/home/PaymentDueCard";
import MapView, { Marker } from "react-native-maps";
import BatteryWarrantyCard from "@/components/home/BatteryWarrantyCars";
import CustomerSupportModal from "@/components/home/CustomerSupportModal";
import { useSelector } from "react-redux";
import { RootState } from "@/store";
import LocationOff from "@/assets/icons/location_off.svg";
import { Linking } from "react-native";
export default function HomeScreen() {
const { t } = useTranslation();
const navigation = useNavigation();
const [isSupportModalVisible, setIsSupportModalVisible] = useState(false);
const { SoC, SoH, chargingState, lat, lon, loading, error } = useSelector(
(state: RootState) => state.telemetry
);
useLayoutEffect(() => {
navigation.setOptions({
headerTitle: () => (
Yatri - NBX 600
DL253C3602
),
headerRight: () => (
setIsSupportModalVisible(true)}
>
),
});
}, [navigation]);
const openInGoogleMaps = () => {
const url = `https://www.google.com/maps/search/?api=1&query=${lat},${lon}`;
Linking.openURL(url).catch((err) =>
console.error("Failed to open Google Maps:", err)
);
};
return (
{
alert("le is number pe bhej de 8685846459");
}}
/>
{loading ? (
Fetching Location...
) : lat && lon ? (
<>
alert(JSON.stringify(e.nativeEvent.coordinate))
}
title={"Test Marker"}
description={"This is a description of the marker"}
image={require("../../assets/icons/marker.png")}
/>
View Vehicle Location
>
) : (
Error fetching location
)}
setIsSupportModalVisible(false)}
/>
);
}
const mapStyle = [
{ elementType: "geometry", stylers: [{ color: "#242f3e" }] },
{ elementType: "labels.text.fill", stylers: [{ color: "#746855" }] },
{ elementType: "labels.text.stroke", stylers: [{ color: "#242f3e" }] },
{
featureType: "administrative.locality",
elementType: "labels.text.fill",
stylers: [{ color: "#d59563" }],
},
{
featureType: "poi",
elementType: "labels.text.fill",
stylers: [{ color: "#d59563" }],
},
{
featureType: "poi.park",
elementType: "geometry",
stylers: [{ color: "#263c3f" }],
},
{
featureType: "poi.park",
elementType: "labels.text.fill",
stylers: [{ color: "#6b9a76" }],
},
{
featureType: "road",
elementType: "geometry",
stylers: [{ color: "#38414e" }],
},
{
featureType: "road",
elementType: "geometry.stroke",
stylers: [{ color: "#212a37" }],
},
{
featureType: "road",
elementType: "labels.text.fill",
stylers: [{ color: "#9ca5b3" }],
},
{
featureType: "road.highway",
elementType: "geometry",
stylers: [{ color: "#746855" }],
},
{
featureType: "road.highway",
elementType: "geometry.stroke",
stylers: [{ color: "#1f2835" }],
},
{
featureType: "road.highway",
elementType: "labels.text.fill",
stylers: [{ color: "#f3d19c" }],
},
{
featureType: "transit",
elementType: "geometry",
stylers: [{ color: "#2f3948" }],
},
{
featureType: "transit.station",
elementType: "labels.text.fill",
stylers: [{ color: "#d59563" }],
},
{
featureType: "water",
elementType: "geometry",
stylers: [{ color: "#17263c" }],
},
{
featureType: "water",
elementType: "labels.text.fill",
stylers: [{ color: "#515c6d" }],
},
{
featureType: "water",
elementType: "labels.text.stroke",
stylers: [{ color: "#17263c" }],
},
];
const styles = StyleSheet.create({
errorText: {
color: "#565F70",
fontWeight: "400",
fontSize: 16,
textAlign: "center",
},
errorContainer: {
height: 255,
justifyContent: "center",
alignItems: "center",
backgroundColor: "#FCFCFC",
gap: 8,
},
viewLocationText: {
color: "#388E3C",
fontWeight: "600",
fontSize: 16,
textAlign: "center",
marginTop: 8,
},
map: {
padding: 12,
borderRadius: 10,
overflow: "hidden",
backgroundColor: "#fff",
},
mapContainer: {
height: 255,
},
mapStyle: {
width: "100%",
height: "100%",
borderRadius: 10,
},
metrics: {
flexDirection: "row",
justifyContent: "space-between",
backgroundColor: "#F3F5F8",
},
container: {
padding: 16,
gap: 16,
paddingBottom: 110,
},
iconContainer: {
backgroundColor: "#fff",
},
headerTitleContainer: {
flexDirection: "column",
backgroundColor: "#fff",
},
title: {
fontSize: 14,
color: "#6B7280",
fontWeight: "500",
},
subtitle: {
fontSize: 18,
color: "#111827",
fontWeight: "700",
},
rightContainer: {
flexDirection: "row",
alignItems: "center",
paddingRight: 16,
gap: 8,
backgroundColor: "#fff",
},
badge: {
backgroundColor: "#FEE2E2",
borderRadius: 20,
width: 30,
height: 30,
justifyContent: "center",
alignItems: "center",
},
badgeText: {
color: "#DC2626",
fontWeight: "700",
},
});