import React, { useState } from "react"; const LuasPopup = ({ item, objectTitle, luasLine }) => { const [luasInfo, setLuasInfo] = useState(""); const fetchLuasData = async () => { try { const response = await fetch(`https://3fzg2hdskc.execute-api.us-east-1.amazonaws.com/return_luas_data?luasStopCode=${item.luasStopCode}`); const data = await response.json(); if (!data.stopInfo || !data.stopInfo.direction) { setLuasInfo("No tram data available"); return; } const tramInfo = data.stopInfo.direction.map(direction => { // Ensure 'tram' is an array, if it's not, convert it into an array const trams = Array.isArray(direction.tram) ? direction.tram : [direction.tram]; // const tramDetails = trams.map(tram => // `Destination: ${tram["@destination"]}, Arrival: ${tram["@dueMins"]} mins` // ).join("
"); let tramDetails = ""; trams.forEach(tram => { if (tram["@dueMins"] === "DUE") { tramDetails += `
Destination: ${tram["@destination"]}; Arrival: DUE NOW.`; } else if (tram["@dueMins"] === "1") { tramDetails += `
Destination: ${tram["@destination"]}; Arrival: 1 minute.`; } else if (tram["@destination"] == "No trams forecast") { tramDetails += "
No trams forecast"; } else { tramDetails += `
Destination: ${tram["@destination"]}; Arrival: ${tram["@dueMins"]} minutes.`; } }); return `${direction["@name"]}: ${tramDetails}`; }).join("

"); setLuasInfo(tramInfo); } catch (error) { setLuasInfo("Failed to fetch Luas data"); } }; return (

{objectTitle}

); }; export default LuasPopup;