import 'road_alert_models.dart'; import 'road_alert_provider_interface.dart'; import 'swarm_road_alert_service.dart'; class SwarmRoadAlertProvider implements RoadAlertProvider { final SwarmRoadAlertService _service; SwarmRoadAlertProvider(this._service); @override String get id => 'swarm_alerts'; @override String get name => 'MotorSignal Rider Swarm'; @override Set get supportedCategories => const { RoadAlertCategory.police, RoadAlertCategory.hazard, RoadAlertCategory.accident, RoadAlertCategory.speedCamera, RoadAlertCategory.roadClosure, RoadAlertCategory.construction, RoadAlertCategory.traffic, RoadAlertCategory.other, }; @override Future testConnection(String apiKey) async { return RoadAlertProviderStatus.connected; } @override Future> getAlerts({ required double latitude, required double longitude, required double radiusMeters, String? apiKey, }) async { return _service.getAlertsNear( latitude: latitude, longitude: longitude, radiusMeters: radiusMeters, ); } }