user_settings_service.dart 1018 B

12345678910111213141516171819202122232425262728293031
  1. import 'package:dartz/dartz.dart';
  2. import 'package:appflowy_backend/dispatch/dispatch.dart';
  3. import 'package:appflowy_backend/appflowy_backend.dart';
  4. import 'package:appflowy_backend/protobuf/flowy-error/errors.pb.dart';
  5. import 'package:appflowy_backend/protobuf/flowy-user/user_profile.pb.dart';
  6. import 'package:appflowy_backend/protobuf/flowy-user/user_setting.pb.dart';
  7. class UserSettingsBackendService {
  8. Future<AppearanceSettingsPB> getAppearanceSetting() async {
  9. final result = await UserEventGetAppearanceSetting().send();
  10. return result.fold(
  11. (AppearanceSettingsPB setting) {
  12. return setting;
  13. },
  14. (error) {
  15. throw FlowySDKException(ExceptionType.AppearanceSettingsIsEmpty);
  16. },
  17. );
  18. }
  19. Future<Either<UserSettingPB, FlowyError>> getUserSetting() {
  20. return UserEventGetUserSetting().send();
  21. }
  22. Future<Either<Unit, FlowyError>> setAppearanceSetting(
  23. AppearanceSettingsPB setting,
  24. ) {
  25. return UserEventSetAppearanceSetting(setting).send();
  26. }
  27. }