Commit Graph
12 Commits
Author SHA1 Message Date
Hamza-Ayed 429496dd3c fix(web): Add AlertTriangle import and remove hardcoded API key fallback 2026-08-21 00:09:16 +03:00
Hamza-Ayed d7119a53eb fix(security & web): Enforce strict ApiKeyGuard and fix missing Gauge import in App.tsx 2026-08-21 00:07:34 +03:00
Hamza-Ayed 9e65afae59 fix(web): Add default master API key fallback for web route calculation 2026-08-21 00:01:11 +03:00
Hamza-Ayed cb384765fb feat(security): implement dynamic tactical license gate, instant key revocation, and clean hardcoded credentials 2026-08-18 13:46:02 +03:00
Hamza-Ayed 57e3da7ea4 feat(routing): enable elevation profile and steep slope/incline warnings in routing API and frontend 2026-08-18 12:10:32 +03:00
Hamza-Ayed a0a5a09135 feat(tactical): add tactical line of sight API, elevation engine, dynamic step resolution, weather module and executive showcase 2026-08-17 19:25:39 +03:00
Hamza-Ayed 03cdc6fe9c feat: implement geometry snapping logic for manual road insertion and approved roads topology 2026-08-16 17:34:06 +03:00
Hamza-Ayed a39dfe1aaa feat: implement side-by-side synchronized map comparison tool and infrastructure scripts for connectivity and data updates 2026-07-15 14:58:48 +03:00
Hamza-Ayed c136cee04f fix(geocoding): fix query param string parsing, location field mismatch, and distance_km normalization
- controller: @Query() params arrive as strings in NestJS - now explicitly
  parseFloat() all numeric params (lat, lng, radius) before passing to service.
  Also validates against NaN before hitting PostGIS.
- controller: reverse geocode now validates and throws 400 on invalid lat/lng.
- service: searchPlaces now normalizes all results to include:
    - location: { lat, lng } nested object (frontend was crashing on place.location.lat)
    - distance_km: pre-computed string field (frontend was reading undefined distance_km)
    - latitude/longitude as actual floats (not decimal strings from DB)
- frontend (App.tsx): fixed map.flyTo() to read place.latitude/place.longitude
  instead of the non-existent place.location.lat/lng.
- frontend (App.tsx): fixed search result click handler same way.
- frontend (App.tsx): fixed distance display to compute from res.distance (meters).
- entity: added missing source column to BasePlace entity.
2026-03-29 23:30:12 +03:00
Hamza-Ayed 014848247d feat: upgrade to Intaleq Style v3 and enable Egypt routing demo (code only) 2026-03-28 21:34:21 +03:00
Hamza-Ayed 592af8ce5c stable: finalized GIS aesthetics and Syria/Jordan routing synchronization 2026-03-28 04:12:01 +03:00
Hamza-Ayed 6e6ee55d03 1 2026-03-20 02:14:50 +03:00