import 'dart:async'; import 'dart:convert'; import 'device_model.dart'; import '../../product/base/bloc/base_bloc.dart'; import '../../product/services/api_services.dart'; import '../../product/utils/device_utils.dart'; class DevicesManagerBloc extends BlocBase { APIServices apiServices = APIServices(); final userRole = StreamController.broadcast(); StreamSink get sinkUserRole => userRole.sink; Stream get streamUserRole => userRole.stream; final allDevices = StreamController>.broadcast(); StreamSink> get sinkAllDevices => allDevices.sink; Stream> get streamAllDevices => allDevices.stream; @override void dispose() {} void getDevice() async { String body = await apiServices.getOwnerDevices(); if (body != "") { final data = jsonDecode(body); List items = data['items']; List originalDevices = Device.fromJsonDynamicList(items); List devices = DeviceUtils.instance.sortDeviceByState(originalDevices); sinkAllDevices.add(devices); } } }