diff --git a/src/app/app.module.ts b/src/app/app.module.ts index f704bc5..6fc1879 100644 --- a/src/app/app.module.ts +++ b/src/app/app.module.ts @@ -11,6 +11,7 @@ import { MatCardModule } from '@angular/material/card'; import { MatIconModule } from '@angular/material/icon'; import { MatListModule } from '@angular/material/list'; import { MatRadioModule } from '@angular/material/radio'; +import { MatSnackBarModule } from '@angular/material/snack-bar'; import { MatToolbarModule } from '@angular/material/toolbar'; import { AppComponent } from './app.component'; @@ -29,6 +30,7 @@ const materialModules = [ MatIconModule, MatListModule, MatRadioModule, + MatSnackBarModule, MatToolbarModule ]; diff --git a/src/app/store/game/game.effects.ts b/src/app/store/game/game.effects.ts index fbf61e7..f02766c 100644 --- a/src/app/store/game/game.effects.ts +++ b/src/app/store/game/game.effects.ts @@ -1,4 +1,5 @@ import { Injectable } from '@angular/core'; +import { MatSnackBar } from '@angular/material/snack-bar'; import { Actions, createEffect, ofType } from '@ngrx/effects'; import { of } from 'rxjs'; @@ -31,12 +32,17 @@ export class GameEffects { this.actions$.pipe( ofType(GameActions.playMatchFailure), map(action => action.error), - tap(e => console.error(e)) // TODO: replace with material toast service + tap(error => { + this.matSackBar.open(error.statusText, '', { + duration: 1500 + }); + }) ), { dispatch: false } ); constructor( private readonly gameApi: GameService, + private readonly matSackBar: MatSnackBar, private readonly actions$: Actions ) { }