Skip to content

Commit 001a70d

Browse files
committed
#67 remove imports and added delete activity failed
1 parent 833aaf5 commit 001a70d

File tree

3 files changed

+22
-5
lines changed

3 files changed

+22
-5
lines changed

src/app/modules/activities-management/store/activity-management.actions.ts

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ export enum ActivityManagementActionTypes {
1111
CREATE_ACTIVITY_FAIL = '[ActivityManagement] CREATE_ACTIVITY_FAIL',
1212
DELETE_ACTIVITY = '[ActivityManagement] Delete Activity',
1313
DELETE_ACTIVITY_SUCCESS = '[ActivityManagement] Delete Activity Success',
14+
DELETE_ACTIVITY_FAIL = '[ActivityManagement] Delete Activity Fail',
1415
}
1516

1617
export class LoadActivities implements Action {
@@ -59,6 +60,12 @@ export class DeleteActivitySuccess implements Action {
5960
constructor(public activityId: string) {}
6061
}
6162

63+
export class DeleteActivityFail implements Action {
64+
public readonly type = ActivityManagementActionTypes.DELETE_ACTIVITY_FAIL;
65+
66+
constructor(public error: string) {}
67+
}
68+
6269
export type ActivityManagementActions =
6370
| LoadActivities
6471
| LoadActivitiesSuccess
@@ -67,4 +74,5 @@ export type ActivityManagementActions =
6774
| CreateActivitySuccess
6875
| CreateActivityFail
6976
| DeleteActivity
70-
| DeleteActivitySuccess;
77+
| DeleteActivitySuccess
78+
| DeleteActivityFail;

src/app/modules/activities-management/store/activity-management.effects.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ import { catchError, map, mergeMap } from 'rxjs/operators';
77
import * as actions from './activity-management.actions';
88
import { Activity } from './../../shared/models/activity.model';
99
import { ActivityService } from './../services/activity.service';
10-
import { ActivityManagementActionTypes, DeleteActivitySuccess } from './activity-management.actions';
1110

1211
@Injectable()
1312
export class ActivityEffects {
@@ -42,13 +41,14 @@ export class ActivityEffects {
4241

4342
@Effect()
4443
deleteActivity$: Observable<Action> = this.actions$.pipe(
45-
ofType(ActivityManagementActionTypes.DELETE_ACTIVITY),
44+
ofType(actions.ActivityManagementActionTypes.DELETE_ACTIVITY),
4645
map((action: actions.DeleteActivity) => action.activityId),
4746
mergeMap((activityId) =>
4847
this.activityService.deleteActivity(activityId).pipe(
4948
map(() => {
50-
return new DeleteActivitySuccess(activityId);
51-
})
49+
return new actions.DeleteActivitySuccess(activityId);
50+
}),
51+
catchError((error) => of(new actions.DeleteActivityFail(error)))
5252
)
5353
)
5454
);

src/app/modules/activities-management/store/activity-management.reducers.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@ export function activityManagementReducer(state: ActivityState = initialState, a
5959
case ActivityManagementActionTypes.DELETE_ACTIVITY: {
6060
return {
6161
...state,
62+
isLoading: true,
6263
message: 'Activity removed successfully!',
6364
};
6465
}
@@ -71,6 +72,14 @@ export function activityManagementReducer(state: ActivityState = initialState, a
7172
message: 'Activity removed successfully!',
7273
};
7374
}
75+
76+
case ActivityManagementActionTypes.DELETE_ACTIVITY_FAIL: {
77+
return {
78+
data: [],
79+
isLoading: false,
80+
message: 'Something went wrong creating activities!',
81+
};
82+
}
7483
default:
7584
return state;
7685
}

0 commit comments

Comments
 (0)