import 'package:core/services/environment.service.dart'; import 'package:core/services/service.base.dart'; import 'package:core/utils/index.dart'; import 'package:platforms/modes/state.dart'; import 'package:platforms/modes/menu.dto.dart'; import 'package:platforms/proxy/favorite.menu.service.dart'; class FavoriteMenuStateService extends ServiceBase { FavoriteMenuStateService(super.injector); final InternalStore _state = InternalStore(state: FavoriteMenuState()); EnvironmentService get _environmentService => resolve(); FavoriteMenuService get _favoriteMenuService => resolve(); @override void onInit() { super.onInit(); refreshState(); } Future refreshState() async { var environment = _environmentService.getEnvironment(); var framework = environment.application.framework ?? 'flutter'; var result = await _favoriteMenuService.getMyFavoriteMenuList(framework); _state.patch((state) => state.menus = result.items); } List getFavoriteMenus() { return _state.state.menus; } Stream> getFavoriteMenus$() { return _state.sliceState((state) => state.menus); } }