import React, { useState } from "react";
import { dimensions, screen_width } from "../config/dimensions";
import {
View,
StyleSheet,
Text,
Button,
TouchableOpacity,
ScrollView,
} from "react-native";
import SelfClosingModal from "./SelfClosingModal";
import colors from "../config/colors";
import { FontAwesome5 } from "@expo/vector-icons";
import { MaterialIcons } from "@expo/vector-icons";
import { MaterialCommunityIcons } from "@expo/vector-icons";
import { Shadow } from "react-native-shadow-2";
import assets from "../config/assets";
function DataMenuHeader({ setShowModal }) {
return (
DADOS
setShowModal(null)}
>
);
}
function DataOriginSelector({ dataOriginToShow, setDataOriginToShow }) {
const bgToUse = (selected) =>
dataOriginToShow == selected ? colors.secondary : colors.gray;
return (
setDataOriginToShow("oficial")}
>
OFICIAL
setDataOriginToShow("citzen")}
>
CIDADÃO
);
}
// FIXME: Change icon values in the future
const dataOptions = {
oficial: [
{
name: "Área de suscetibilidade",
code: "susceptibilityAreas",
source: "CPRM",
icon: assets.floodZones.FloodZonesIcon,
},
{
name: "Pluviômetro automático",
code: "automaticPluviometer",
source: "Cemaden",
icon: assets.floodZones.FloodZonesIcon,
},
],
citzen: [
{
name: "Risco de inundação",
code: "floodRisk",
source: null,
icon: assets.floodZones.FloodZonesIcon,
},
{
name: "Pluviômetro artesanal",
code: "pluviometer",
source: null,
icon: assets.floodZones.FloodZonesIcon,
},
{
name: "Intensidade de chuva",
code: "rain",
source: null,
icon: assets.floodZones.FloodZonesIcon,
},
{
name: "Área de alagamento",
code: "floodZones",
source: null,
icon: assets.floodZones.FloodZonesIcon,
},
{
name: "Água do rio",
code: "riverFlood",
source: null,
icon: assets.floodZones.FloodZonesIcon,
},
],
};
function Border() {
return (
);
}
function ListDataOptions(dataOptionsToShow, dataOriginToShow, setDataOptionsToShow, option) {
const item = dataOptionsToShow[dataOriginToShow][option.code];
const dataOptionObject = {...dataOptionsToShow, [dataOriginToShow]: {...dataOptionsToShow[dataOriginToShow], [option.code]: !item}};
return (
{option.name}
{option.source && (
Fonte: {option.source}
)}
{setDataOptionsToShow(dataOptionObject)}}
>
{item ? "ADICIONAR" : "REMOVER"}
);
}
function DataOriginOptions({ dataOriginToShow, dataOptionsToShow, setDataOptionsToShow }) {
return (
{dataOptions[dataOriginToShow].map((option) =>
ListDataOptions(dataOptionsToShow, dataOriginToShow, setDataOptionsToShow, option)
)}
);
}
function DataMenuBody({ setShowModal }) {
const [dataOriginToShow, setDataOriginToShow] = useState("oficial");
const [dataOptionsToShow, setDataOptionsToShow] = useState({
oficial: {
automaticPluviometer: false,
susceptibilityAreas: false,
},
citzen: {
floodRisk: false,
pluviometer: true,
rain: false,
floodZones: true,
riverFlood: true,
},
});
console.log(dataOptionsToShow)
return (
);
}
export default function MapDataMenu(props) {
const [showModal, setShowModal] = useState(null);
return (
);
}
const styles = StyleSheet.create({
choicesBtn: {
width: "50%",
backgroundColor: colors.secondary,
height: "100%",
justifyContent: "center",
paddingHorizontal: 12,
alignItems: "center",
justifyContent: "flex-start",
flexDirection: "row",
},
itensText: {
color: colors.black,
fontWeight: "500",
fontSize: 16,
},
text: {
color: colors.white,
alignSelf: "center",
fontWeight: "500",
fontSize: 16,
},
topBarIcon: {
alignSelf: "center",
},
});