feat(wingbits): show flight route, times, and plane photo in popup (#1947)

* feat(wingbits): show flight route, times, and plane photo in popup

* chore(gen): regenerate military service stubs after WingbitsLiveFlight proto extension

* fix(wingbits): add empty schedule/photo defaults to mapEcsFlight for type safety

* chore(gen): regenerate MilitaryService OpenAPI docs after WingbitsLiveFlight extension

* fix(wingbits): address code review — sanitizeUrl for img src, DEP/ARR column labels, fmtDelayMin edge case, remove debug artifact
This commit is contained in:
Elie Habib
2026-03-20 20:50:35 +04:00
committed by GitHub
parent 6184c269d6
commit 6dbe4f17bf
9 changed files with 312 additions and 9 deletions

View File

@@ -1136,4 +1136,53 @@ components:
type: string
format: int64
description: Unix timestamp of the last position update.
depIata:
type: string
description: |-
Schedule — from ecs-api.wingbits.com/v1/flights/schedule/{callsign}
Departure airport IATA code (e.g. "FJR").
arrIata:
type: string
description: Arrival airport IATA code (e.g. "BOM").
depTimeUtc:
type: string
description: Scheduled departure time UTC (ISO 8601).
arrTimeUtc:
type: string
description: Scheduled arrival time UTC (ISO 8601).
depEstimatedUtc:
type: string
description: Estimated departure time UTC (ISO 8601).
arrEstimatedUtc:
type: string
description: Estimated arrival time UTC (ISO 8601).
depDelayedMin:
type: integer
format: int32
description: Departure delay in minutes (negative = early).
arrDelayedMin:
type: integer
format: int32
description: Arrival delay in minutes (negative = early).
flightStatus:
type: string
description: Flight status string (e.g. "en-route", "landed", "scheduled").
flightDurationMin:
type: integer
format: int32
description: Scheduled flight duration in minutes.
arrTerminal:
type: string
description: Arrival terminal (e.g. "2").
photoUrl:
type: string
description: |-
Photo — from api.planespotters.net/pub/photos/hex/{icao24}
Aircraft photo URL (large thumbnail ~497x280).
photoLink:
type: string
description: Permalink to the photo page on planespotters.net.
photoCredit:
type: string
description: Photographer credit name.
description: WingbitsLiveFlight contains real-time flight position data from the Wingbits ECS network.