import 'package:get/get.dart'; import 'package:injectable/injectable.dart'; import 'package:keyboard/data/api/request/keyboard_list_request.dart'; import '../../di/get_it.dart'; import '../../utils/http_handler.dart'; import '../api/atmob_api.dart'; import '../api/response/keyboard_list_response.dart'; import '../bean/keyboard_info.dart'; @lazySingleton class KeyboardRepository { final tag = "KeyboardRepository"; final AtmobApi atmobApi; final RxList _keyboardInfoList = RxList(); RxList get keyboardInfoList => _keyboardInfoList; KeyboardRepository(this.atmobApi) { print('$tag....init'); refreshKeyboardList(); } Future refreshKeyboardList() async { return getKeyboardList().then((response) { _keyboardInfoList.value = response.keyboardInfos; }); } Future getKeyboardList({String? type}) { return atmobApi .getKeyboardList(KeyboardListRequest(type: type)) .then(HttpHandler.handle(true)); } static KeyboardRepository getInstance() => getIt.get(); }