--- import LoggedIn from '../../layouts/LoggedIn.astro'; import locationManager from '../../lib/classes/managers/LocationManager'; import User from '../../lib/classes/User'; import { getUserSpyReports } from '../../lib/db/users'; const user: User = Astro.locals.user; const allGalaxies = locationManager.galaxies; let i = 0; const galaxies = allGalaxies.map(galaxy => { return { numericId: i++, name: galaxy.name, style: { left: galaxy.coords.x, top: galaxy.coords.y, color: "white" }, sectors: galaxy.sectors.map(sector => { return { id: sector._id.toString(), name: sector.name }; }) }; }); const spyReportsDB = await getUserSpyReports(user.id); const spyReports = spyReportsDB.map(spy => { const user = locationManager.getUser(spy.victimId); const system = locationManager.getSystem(spy.systemId); return { username: user?.username ?? "Unknown", systemName: system?.data.name ?? "Unknown", sectorId: system?.data.sector._id.toString(), scannedAt: spy.scannedAt, research: spy.research, resources: spy.resources, structures: spy.structures, ships: spy.ships, defense: spy.defense, planets: system?.planets.map(planet => { const report = spy.planets.find(p => p.id.equals(planet._id)); return { id: planet._id.toString(), name: planet.name, scanned: spy.planets.find(p => p.id.equals(planet._id))?.scanned ?? false, scannedAt: report?.scannedAt ?? "Unknown", resources: report?.resources ?? [], buildings: report?.buildings ?? [], ships: report?.ships ?? [], defense: report?.defense ?? [] }; }) } }); --- Spy report from at Resources: Structures: Ships: Defense: Research: Planets: {galaxies.map(galaxy => <> {galaxy.name} >)}