import { Icon, IconName, Skeleton } from "@noahspan/noahspan-components"; import { Card } from '@heroui/react'; import LogbookCard from "../logbookCard/LogbookCard"; import { useEffect, useReducer } from "react"; import { useLogs } from "../../hooks/logs/UseLogs"; import { LogbookEntry } from "../logbook/LogbookEntry.interface"; import { initialState, reducer } from "./reducer"; import { Alert } from '@heroui/react' const Flights = () => { const [state, dispatch] = useReducer(reducer, initialState); const { logs, logsLoading } = useLogs(); useEffect(() => { const flights: LogbookEntry[] | undefined = logs?.filter((log: LogbookEntry) => { if (log.tracks && log.tracks.length > 0) { return log; } }) if (flights && flights.length > 0) { dispatch({ type: 'SET_FLIGHTS', payload: flights}) dispatch({ type: 'SET_ALERT', payload: undefined }) } else { dispatch({ type: 'SET_ALERT', payload: { severity: 'default', message: 'No flights found' }}) } }, [logs]) return (

Flights

{!logsLoading && state.alert && (
dispatch({ type: 'SET_ALERT', payload: undefined }) } color={state.alert.severity} title={state.alert.message} />
)} {!logsLoading &&
} {logsLoading && [...Array(6)].map((_element, index) => { return (
{[...Array(4)].map((_element, index) => { return ( <>
) })}
) })}
) } export default Flights;