Change to disconnect_mailer route
This commit is contained in:
parent
c54150354a
commit
cbf8e446af
|
|
@ -87,6 +87,28 @@ class SettingsRepository {
|
||||||
return userResponse.data;
|
return userResponse.data;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Future<UserEntity> disconnectOAuthMailer(
|
||||||
|
Credentials credentials,
|
||||||
|
String password,
|
||||||
|
String idToken,
|
||||||
|
String userId,
|
||||||
|
) async {
|
||||||
|
dynamic response;
|
||||||
|
|
||||||
|
final url = credentials.url +
|
||||||
|
'/users/$userId/disconnect_mailer?include=company_user';
|
||||||
|
response = await webClient.post(
|
||||||
|
url,
|
||||||
|
credentials.token,
|
||||||
|
password: password,
|
||||||
|
);
|
||||||
|
|
||||||
|
final UserItemResponse userResponse =
|
||||||
|
serializers.deserializeWith(UserItemResponse.serializer, response);
|
||||||
|
|
||||||
|
return userResponse.data;
|
||||||
|
}
|
||||||
|
|
||||||
Future<UserEntity> connectGmailUser(
|
Future<UserEntity> connectGmailUser(
|
||||||
Credentials credentials,
|
Credentials credentials,
|
||||||
String password,
|
String password,
|
||||||
|
|
|
||||||
|
|
@ -135,7 +135,7 @@ Reducer<UserCompanyEntity> userCompanyEntityReducer = combineReducers([
|
||||||
..user.replace(action.user)
|
..user.replace(action.user)
|
||||||
..settings.replace(action.user.userCompany.settings)),
|
..settings.replace(action.user.userCompany.settings)),
|
||||||
),
|
),
|
||||||
TypedReducer<UserCompanyEntity, ConnecOAuthUserSuccess>(
|
TypedReducer<UserCompanyEntity, ConnectOAuthUserSuccess>(
|
||||||
(userCompany, action) =>
|
(userCompany, action) =>
|
||||||
userCompany.rebuild((b) => b..user.replace(action.user)),
|
userCompany.rebuild((b) => b..user.replace(action.user)),
|
||||||
),
|
),
|
||||||
|
|
|
||||||
|
|
@ -150,9 +150,9 @@ class ConnecOAuthUserRequest implements StartSaving {
|
||||||
final String accessToken;
|
final String accessToken;
|
||||||
}
|
}
|
||||||
|
|
||||||
class ConnecOAuthUserSuccess
|
class ConnectOAuthUserSuccess
|
||||||
implements StopSaving, PersistData, PersistUI, UserVerifiedPassword {
|
implements StopSaving, PersistData, PersistUI, UserVerifiedPassword {
|
||||||
ConnecOAuthUserSuccess(this.user);
|
ConnectOAuthUserSuccess(this.user);
|
||||||
|
|
||||||
final UserEntity user;
|
final UserEntity user;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -29,6 +29,7 @@ List<Middleware<AppState>> createStoreSettingsMiddleware([
|
||||||
final saveCompany = _saveCompany(repository);
|
final saveCompany = _saveCompany(repository);
|
||||||
final saveAuthUser = _saveAuthUser(repository);
|
final saveAuthUser = _saveAuthUser(repository);
|
||||||
final connectOAuthUser = _connectOAuthUser(repository);
|
final connectOAuthUser = _connectOAuthUser(repository);
|
||||||
|
final disconnectOAuthMailer = _disconnectOAuthMailer(repository);
|
||||||
final connectGmailUser = _connectGmailUser(repository);
|
final connectGmailUser = _connectGmailUser(repository);
|
||||||
final saveSettings = _saveSettings(repository);
|
final saveSettings = _saveSettings(repository);
|
||||||
final uploadLogo = _uploadLogo(repository);
|
final uploadLogo = _uploadLogo(repository);
|
||||||
|
|
@ -40,6 +41,8 @@ List<Middleware<AppState>> createStoreSettingsMiddleware([
|
||||||
TypedMiddleware<AppState, SaveCompanyRequest>(saveCompany),
|
TypedMiddleware<AppState, SaveCompanyRequest>(saveCompany),
|
||||||
TypedMiddleware<AppState, SaveAuthUserRequest>(saveAuthUser),
|
TypedMiddleware<AppState, SaveAuthUserRequest>(saveAuthUser),
|
||||||
TypedMiddleware<AppState, ConnecOAuthUserRequest>(connectOAuthUser),
|
TypedMiddleware<AppState, ConnecOAuthUserRequest>(connectOAuthUser),
|
||||||
|
TypedMiddleware<AppState, DisconnectOAuthMailerRequest>(
|
||||||
|
disconnectOAuthMailer),
|
||||||
TypedMiddleware<AppState, ConnecGmailUserRequest>(connectGmailUser),
|
TypedMiddleware<AppState, ConnecGmailUserRequest>(connectGmailUser),
|
||||||
TypedMiddleware<AppState, DisableTwoFactorRequest>(disableTwoFactor),
|
TypedMiddleware<AppState, DisableTwoFactorRequest>(disableTwoFactor),
|
||||||
TypedMiddleware<AppState, SaveUserSettingsRequest>(saveSettings),
|
TypedMiddleware<AppState, SaveUserSettingsRequest>(saveSettings),
|
||||||
|
|
@ -146,7 +149,7 @@ Middleware<AppState> _connectOAuthUser(SettingsRepository settingsRepository) {
|
||||||
action.accessToken,
|
action.accessToken,
|
||||||
)
|
)
|
||||||
.then((user) {
|
.then((user) {
|
||||||
store.dispatch(ConnecOAuthUserSuccess(user));
|
store.dispatch(ConnectOAuthUserSuccess(user));
|
||||||
if (action.completer != null) {
|
if (action.completer != null) {
|
||||||
action.completer.complete();
|
action.completer.complete();
|
||||||
}
|
}
|
||||||
|
|
@ -165,6 +168,38 @@ Middleware<AppState> _connectOAuthUser(SettingsRepository settingsRepository) {
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Middleware<AppState> _disconnectOAuthMailer(
|
||||||
|
SettingsRepository settingsRepository) {
|
||||||
|
return (Store<AppState> store, dynamic dynamicAction, NextDispatcher next) {
|
||||||
|
final action = dynamicAction as DisconnectOAuthMailerRequest;
|
||||||
|
|
||||||
|
settingsRepository
|
||||||
|
.disconnectOAuthMailer(
|
||||||
|
store.state.credentials,
|
||||||
|
action.password,
|
||||||
|
action.idToken,
|
||||||
|
action.user.id,
|
||||||
|
)
|
||||||
|
.then((user) {
|
||||||
|
store.dispatch(DisconnectOAuthMailerSuccess(user));
|
||||||
|
if (action.completer != null) {
|
||||||
|
action.completer.complete();
|
||||||
|
}
|
||||||
|
}).catchError((Object error) {
|
||||||
|
print(error);
|
||||||
|
store.dispatch(DisconnectOAuthMailerFailure(error));
|
||||||
|
if ('$error'.contains('412')) {
|
||||||
|
store.dispatch(UserUnverifiedPassword());
|
||||||
|
}
|
||||||
|
if (action.completer != null) {
|
||||||
|
action.completer.completeError(error);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
next(action);
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
Middleware<AppState> _connectGmailUser(SettingsRepository settingsRepository) {
|
Middleware<AppState> _connectGmailUser(SettingsRepository settingsRepository) {
|
||||||
return (Store<AppState> store, dynamic dynamicAction, NextDispatcher next) {
|
return (Store<AppState> store, dynamic dynamicAction, NextDispatcher next) {
|
||||||
final action = dynamicAction as ConnecGmailUserRequest;
|
final action = dynamicAction as ConnecGmailUserRequest;
|
||||||
|
|
|
||||||
|
|
@ -98,7 +98,13 @@ Reducer<SettingsUIState> settingsUIReducer = combineReducers([
|
||||||
..origUser.replace(action.user)
|
..origUser.replace(action.user)
|
||||||
..isChanged = false);
|
..isChanged = false);
|
||||||
}),
|
}),
|
||||||
TypedReducer<SettingsUIState, ConnecOAuthUserSuccess>((state, action) {
|
TypedReducer<SettingsUIState, ConnectOAuthUserSuccess>((state, action) {
|
||||||
|
return state.rebuild((b) => b
|
||||||
|
..user.replace(action.user)
|
||||||
|
..origUser.replace(action.user)
|
||||||
|
..isChanged = false);
|
||||||
|
}),
|
||||||
|
TypedReducer<SettingsUIState, DisconnectOAuthMailerSuccess>((state, action) {
|
||||||
return state.rebuild((b) => b
|
return state.rebuild((b) => b
|
||||||
..user.replace(action.user)
|
..user.replace(action.user)
|
||||||
..origUser.replace(action.user)
|
..origUser.replace(action.user)
|
||||||
|
|
|
||||||
|
|
@ -195,7 +195,7 @@ ListUIState _clearListMultiselect(
|
||||||
final usersReducer = combineReducers<UserState>([
|
final usersReducer = combineReducers<UserState>([
|
||||||
TypedReducer<UserState, SaveUserSuccess>(_updateUser),
|
TypedReducer<UserState, SaveUserSuccess>(_updateUser),
|
||||||
TypedReducer<UserState, SaveAuthUserSuccess>(_updateAuthUser),
|
TypedReducer<UserState, SaveAuthUserSuccess>(_updateAuthUser),
|
||||||
TypedReducer<UserState, ConnecOAuthUserSuccess>(_connectOAuthUser),
|
TypedReducer<UserState, ConnectOAuthUserSuccess>(_connectOAuthUser),
|
||||||
TypedReducer<UserState, ConnecGmailUserSuccess>(_connectGmailUser),
|
TypedReducer<UserState, ConnecGmailUserSuccess>(_connectGmailUser),
|
||||||
TypedReducer<UserState, AddUserSuccess>(_addUser),
|
TypedReducer<UserState, AddUserSuccess>(_addUser),
|
||||||
TypedReducer<UserState, LoadUsersSuccess>(_setLoadedUsers),
|
TypedReducer<UserState, LoadUsersSuccess>(_setLoadedUsers),
|
||||||
|
|
@ -252,7 +252,7 @@ UserState _updateAuthUser(UserState userState, SaveAuthUserSuccess action) {
|
||||||
}
|
}
|
||||||
|
|
||||||
UserState _connectOAuthUser(
|
UserState _connectOAuthUser(
|
||||||
UserState userState, ConnecOAuthUserSuccess action) {
|
UserState userState, ConnectOAuthUserSuccess action) {
|
||||||
return userState.rebuild((b) => b..map[action.user.id] = action.user);
|
return userState.rebuild((b) => b..map[action.user.id] = action.user);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue