Repository URL to install this package:
|
Version:
0.0.15 ▾
|
import { getTyped } from 'composition';
import { ObservableContainer } from '@skava/packages/libraries/observable-container';
import { toastMessage, responseMessage } from '@skava/packages/core/notifications';
import { errorContainer } from '@skava/packages/core/notifications';
import { deleteUserAccountBindings } from './bindings';
const isDeleted = (response) => {
const { string } = getTyped(response);
const resultMessage = string('data.deleteUserAccount.message');
return resultMessage === responseMessage.accountDeletionSuccess;
};
const { deleteUserAccountSuccess, deleteUserAccountFailure } = toastMessage;
class PrivacySectionContainer extends ObservableContainer {
constructor() {
super(...arguments);
this.deleteUserAccount = async () => {
const response = deleteUserAccountBindings();
const toastText = isDeleted(response) ? deleteUserAccountSuccess : deleteUserAccountFailure;
errorContainer.setError({
errorMessage: toastText,
});
return response;
};
}
}
PrivacySectionContainer.debugName = 'Privacy';
const privacySectionContainer = new PrivacySectionContainer();
export { privacySectionContainer, PrivacySectionContainer };
export default privacySectionContainer;
//# sourceMappingURL=container.privacy.js.map