From 755e86a4c7c25f76aa88b2cddc825eb325ba43ed Mon Sep 17 00:00:00 2001 From: blackboxone Date: Wed, 8 Oct 2025 13:06:29 +0100 Subject: [PATCH] refactor: convert GPS bridge to TypeScript and remove unused dependencies --- ...bridge-service.js => gps-bridge-service.ts | 21 ++++++++++++++++--- packages/web/package.json | 2 -- 2 files changed, 18 insertions(+), 5 deletions(-) rename gps-bridge-service.js => gps-bridge-service.ts (83%) diff --git a/gps-bridge-service.js b/gps-bridge-service.ts similarity index 83% rename from gps-bridge-service.js rename to gps-bridge-service.ts index 807c3324..f3581eb7 100644 --- a/gps-bridge-service.js +++ b/gps-bridge-service.ts @@ -4,10 +4,25 @@ import http from 'http'; const execAsync = promisify(exec); -let lastPosition = null; +interface GPSCoords { + latitude: number; + longitude: number; + accuracy: number; + altitude: number | null; + altitudeAccuracy: number | null; + heading: number | null; + speed: number | null; +} + +interface GPSPosition { + coords: GPSCoords; + timestamp: number; +} + +let lastPosition: GPSPosition | null = null; let isEnabled = true; // Can be controlled via /control endpoint -async function getAndroidGPS() { +async function getAndroidGPS(): Promise { if (!isEnabled) { lastPosition = null; return null; @@ -39,7 +54,7 @@ async function getAndroidGPS() { return lastPosition; } -const server = http.createServer(async (req, res) => { +const server = http.createServer(async (req: http.IncomingMessage, res: http.ServerResponse) => { res.setHeader('Access-Control-Allow-Origin', '*'); res.setHeader('Access-Control-Allow-Methods', 'GET, OPTIONS'); res.setHeader('Access-Control-Allow-Headers', 'Content-Type'); diff --git a/packages/web/package.json b/packages/web/package.json index 5b1f7b57..128b45d5 100644 --- a/packages/web/package.json +++ b/packages/web/package.json @@ -19,7 +19,6 @@ "check": "biome check src/", "check:fix": "biome check --write src/", "dev": "vite", - "dev:web-only": "vite", "test": "vitest", "ts:check": "bun run tsc --noEmit", "preview": "vite preview", @@ -100,7 +99,6 @@ "@types/w3c-web-serial": "^1.0.8", "@vitejs/plugin-react": "^5.0.4", "autoprefixer": "^10.4.21", - "concurrently": "^8.2.2", "gzipper": "^8.2.1", "happy-dom": "^19.0.2", "simple-git-hooks": "^2.13.1",