From 5493ca6fb052b3ee2a52bc843037a17c6b899e75 Mon Sep 17 00:00:00 2001 From: mohammad Date: Thu, 17 Apr 2025 10:38:25 +0300 Subject: [PATCH] Refactor device filtering logic to improve code readability --- .../device_manager_bloc.dart | 22 ++++++------------- 1 file changed, 7 insertions(+), 15 deletions(-) diff --git a/lib/features/devices/bloc/device_manager_bloc/device_manager_bloc.dart b/lib/features/devices/bloc/device_manager_bloc/device_manager_bloc.dart index 818c872..4ee8f81 100644 --- a/lib/features/devices/bloc/device_manager_bloc/device_manager_bloc.dart +++ b/lib/features/devices/bloc/device_manager_bloc/device_manager_bloc.dart @@ -170,26 +170,18 @@ class DeviceManagerBloc extends Bloc { } List _getOnlyImplementedDevices(List devices) { - List implementedDevices = []; - - const allowedDevices = { - DeviceType.OneGang, - DeviceType.TwoGang, - DeviceType.ThreeGang, + const allowedDeviceTypes = { DeviceType.AC, DeviceType.DoorLock, DeviceType.Gateway, DeviceType.WallSensor, - DeviceType.CeilingSensor + DeviceType.CeilingSensor, + DeviceType.ThreeGang, + DeviceType.OneGang, }; - for (final device in devices) { - final isDeviceAllowed = allowedDevices.contains(device.productType); - if (isDeviceAllowed) { - implementedDevices.add(device); - } - return implementedDevices; - } - return implementedDevices; + return devices + .where((device) => allowedDeviceTypes.contains(device.productType)) + .toList(); } }