mirror of
https://github.com/AppFlowy-IO/AppFlowy.git
synced 2024-08-30 18:12:39 +00:00
chore: return user setting (#1438)
This commit is contained in:
parent
5b4a93ee34
commit
dd1dcba599
@ -2,6 +2,7 @@ import 'package:dartz/dartz.dart';
|
|||||||
import 'package:flowy_sdk/dispatch/dispatch.dart';
|
import 'package:flowy_sdk/dispatch/dispatch.dart';
|
||||||
import 'package:flowy_sdk/flowy_sdk.dart';
|
import 'package:flowy_sdk/flowy_sdk.dart';
|
||||||
import 'package:flowy_sdk/protobuf/flowy-error/errors.pb.dart';
|
import 'package:flowy_sdk/protobuf/flowy-error/errors.pb.dart';
|
||||||
|
import 'package:flowy_sdk/protobuf/flowy-user/user_profile.pb.dart';
|
||||||
import 'package:flowy_sdk/protobuf/flowy-user/user_setting.pb.dart';
|
import 'package:flowy_sdk/protobuf/flowy-user/user_setting.pb.dart';
|
||||||
|
|
||||||
class SettingsFFIService {
|
class SettingsFFIService {
|
||||||
@ -18,6 +19,10 @@ class SettingsFFIService {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Future<Either<UserSettingPB, FlowyError>> getUserSetting() {
|
||||||
|
return UserEventGetUserSetting().send();
|
||||||
|
}
|
||||||
|
|
||||||
Future<Either<Unit, FlowyError>> setAppearanceSetting(
|
Future<Either<Unit, FlowyError>> setAppearanceSetting(
|
||||||
AppearanceSettingsPB setting) {
|
AppearanceSettingsPB setting) {
|
||||||
return UserEventSetAppearanceSetting(setting).send();
|
return UserEventSetAppearanceSetting(setting).send();
|
||||||
|
@ -12,6 +12,12 @@ pub struct UserTokenPB {
|
|||||||
pub token: String,
|
pub token: String,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[derive(ProtoBuf, Default, Clone)]
|
||||||
|
pub struct UserSettingPB {
|
||||||
|
#[pb(index = 1)]
|
||||||
|
pub(crate) user_folder: String,
|
||||||
|
}
|
||||||
|
|
||||||
#[derive(ProtoBuf, Default, Debug, PartialEq, Eq, Clone)]
|
#[derive(ProtoBuf, Default, Debug, PartialEq, Eq, Clone)]
|
||||||
pub struct UserProfilePB {
|
pub struct UserProfilePB {
|
||||||
#[pb(index = 1)]
|
#[pb(index = 1)]
|
||||||
|
@ -19,6 +19,7 @@ pub fn create(user_session: Arc<UserSession>) -> Module {
|
|||||||
.event(UserEvent::CheckUser, check_user_handler)
|
.event(UserEvent::CheckUser, check_user_handler)
|
||||||
.event(UserEvent::SetAppearanceSetting, set_appearance_setting)
|
.event(UserEvent::SetAppearanceSetting, set_appearance_setting)
|
||||||
.event(UserEvent::GetAppearanceSetting, get_appearance_setting)
|
.event(UserEvent::GetAppearanceSetting, get_appearance_setting)
|
||||||
|
.event(UserEvent::GetUserSetting, get_user_setting)
|
||||||
}
|
}
|
||||||
|
|
||||||
pub trait UserCloudService: Send + Sync {
|
pub trait UserCloudService: Send + Sync {
|
||||||
@ -62,4 +63,7 @@ pub enum UserEvent {
|
|||||||
|
|
||||||
#[event(output = "AppearanceSettingsPB")]
|
#[event(output = "AppearanceSettingsPB")]
|
||||||
GetAppearanceSetting = 8,
|
GetAppearanceSetting = 8,
|
||||||
|
|
||||||
|
#[event(output = "UserSettingPB")]
|
||||||
|
GetUserSetting = 9,
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
use crate::entities::{
|
use crate::entities::{
|
||||||
AppearanceSettingsPB, UpdateUserProfileParams, UpdateUserProfilePayloadPB, UserProfilePB, APPEARANCE_DEFAULT_THEME,
|
AppearanceSettingsPB, UpdateUserProfileParams, UpdateUserProfilePayloadPB, UserProfilePB, UserSettingPB,
|
||||||
|
APPEARANCE_DEFAULT_THEME,
|
||||||
};
|
};
|
||||||
use crate::{errors::FlowyError, services::UserSession};
|
use crate::{errors::FlowyError, services::UserSession};
|
||||||
use flowy_database::kv::KV;
|
use flowy_database::kv::KV;
|
||||||
@ -70,3 +71,9 @@ pub async fn get_appearance_setting() -> DataResult<AppearanceSettingsPB, FlowyE
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[tracing::instrument(level = "debug", skip_all, err)]
|
||||||
|
pub async fn get_user_setting(session: AppData<Arc<UserSession>>) -> DataResult<UserSettingPB, FlowyError> {
|
||||||
|
let user_setting = session.user_setting()?;
|
||||||
|
data_result(user_setting)
|
||||||
|
}
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
use crate::entities::{
|
use crate::entities::{
|
||||||
SignInParams, SignInResponse, SignUpParams, SignUpResponse, UpdateUserProfileParams, UserProfilePB,
|
SignInParams, SignInResponse, SignUpParams, SignUpResponse, UpdateUserProfileParams, UserProfilePB, UserSettingPB,
|
||||||
};
|
};
|
||||||
use crate::{
|
use crate::{
|
||||||
dart_notification::*,
|
dart_notification::*,
|
||||||
@ -169,6 +169,13 @@ impl UserSession {
|
|||||||
Ok(format!("{}/{}", self.config.root_dir, session.user_id))
|
Ok(format!("{}/{}", self.config.root_dir, session.user_id))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub fn user_setting(&self) -> Result<UserSettingPB, FlowyError> {
|
||||||
|
let user_setting = UserSettingPB {
|
||||||
|
user_folder: self.user_dir()?,
|
||||||
|
};
|
||||||
|
Ok(user_setting)
|
||||||
|
}
|
||||||
|
|
||||||
pub fn user_id(&self) -> Result<String, FlowyError> {
|
pub fn user_id(&self) -> Result<String, FlowyError> {
|
||||||
Ok(self.get_session()?.user_id)
|
Ok(self.get_session()?.user_id)
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user