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 (