feat: v0.2.8 — reduce dataset to large_airport only; map shows the 260 biggest airports
This commit is contained in:
@@ -1,5 +1,10 @@
|
||||
# Changelog
|
||||
|
||||
## v0.2.8 — 2026-09-16 23:53
|
||||
- `data/airports_eu.csv`: reduced the dataset to only `large_airport` rows (dropped all 731 medium_airport + 54 seaplane_base) — the map now shows just the 260 biggest EU airports; `/api/airports` and the circle layer pick it up with no code changes
|
||||
- `e2e/map.spec.ts`: marker-click test repointed from ESSV Visby Airport (a medium_airport, now removed) to UKBB Boryspil International Airport — with only large_airport rows left it is the most isolated marker inside the initial zoom-4 viewport: its nearest surviving airport is Chişinău (LUKK), ~126 px away at the initial zoom (Kyiv Zhuliany, geographically closer, was a medium and got cut)
|
||||
- Verified: unit suite 12/12; `tsc --noEmit` clean; e2e suite 3/3 green against the rebuilt compose instance (`/api/airports` serves 260 features)
|
||||
|
||||
## v0.2.7 — 2026-09-16 23:39
|
||||
- `data/airports_eu.csv`: removed all 6400 `small_airport` rows from the OurAirports EU export — the map now shows only the 1045 bigger airports (260 large + 731 medium + 54 seaplane_base); `/api/airports` and the circle layer pick it up with no code changes
|
||||
- `e2e/map.spec.ts`: marker-click test repointed from EKRN Bornholm Airport (a small_airport, now removed) to ESSV Visby Airport on Gotland — its nearest remaining airport is Stockholm Skavsta across the Baltic Sea (~59 px away at the initial zoom), so its marker cannot be overlapped by a neighbouring circle
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
+9
-8
@@ -42,14 +42,15 @@ test('clicking an airport marker opens a popup with name and ICAO', async ({ pag
|
||||
{ timeout: 15_000 },
|
||||
).toBeGreaterThan(0);
|
||||
|
||||
// Project ESSV (Visby) to screen space via the dev hook, then click it.
|
||||
// Visby (Gotland) is used because its nearest remaining airport after the
|
||||
// small_airport rows were dropped is Stockholm Skavsta across the Baltic Sea,
|
||||
// ~59 px away at the initial zoom, so its marker cannot be overlapped by a
|
||||
// neighbouring circle.
|
||||
// Project UKBB (Boryspil) to screen space via the dev hook, then click it.
|
||||
// Boryspil is used because with only large_airport rows remaining it is the
|
||||
// most isolated marker inside the initial zoom-4 viewport: its nearest
|
||||
// surviving airport is Chişinău (LUKK), ~126 px away at the initial zoom
|
||||
// (Kyiv Zhuliany, geographically closer, was a medium_airport and got cut),
|
||||
// so its marker cannot be overlapped by a neighbouring circle.
|
||||
const pt = await page.evaluate(() => {
|
||||
const map = (window as any).__flightMap;
|
||||
const p = map.project([18.346201, 57.6628]);
|
||||
const p = map.project([30.894699, 50.345001]);
|
||||
const rect = map.getContainer().getBoundingClientRect();
|
||||
return { x: rect.left + p.x, y: rect.top + p.y };
|
||||
});
|
||||
@@ -57,8 +58,8 @@ test('clicking an airport marker opens a popup with name and ICAO', async ({ pag
|
||||
|
||||
const popup = page.getByTestId('airport-popup');
|
||||
await expect(popup).toBeVisible();
|
||||
await expect(popup).toContainText('Visby Airport');
|
||||
await expect(popup).toContainText('ESSV');
|
||||
await expect(popup).toContainText('Boryspil International Airport');
|
||||
await expect(popup).toContainText('UKBB');
|
||||
});
|
||||
|
||||
test('wheel zoom is clamped between min and max zoom', async ({ page }) => {
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "flight-ops",
|
||||
"version": "0.2.7",
|
||||
"version": "0.2.8",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"dev": "next dev -p 3000",
|
||||
|
||||
Reference in New Issue
Block a user