( flash: FlashMessageArg )
| 29 | }; |
| 30 | |
| 31 | export const createFlashMessage = ( |
| 32 | flash: FlashMessageArg |
| 33 | ): ReducerPayload<FlashActionTypes.CreateFlashMessage> => { |
| 34 | // Nightmode theme has special tones |
| 35 | if (flash.variables?.theme) { |
| 36 | void playTone(flash.variables.theme as LocalStorageThemes); |
| 37 | } else if (flash.message !== FlashMessages.None) { |
| 38 | void playTone(flash.message); |
| 39 | } |
| 40 | return { |
| 41 | type: FlashActionTypes.CreateFlashMessage, |
| 42 | payload: { ...flash, id: nanoid() } |
| 43 | }; |
| 44 | }; |
| 45 | |
| 46 | export const removeFlashMessage = |
| 47 | (): ReducerPayload<FlashActionTypes.RemoveFlashMessage> => ({ |
no test coverage detected