diff options
Diffstat (limited to 'src/services/chat_utils/chat_utils.js')
| -rw-r--r-- | src/services/chat_utils/chat_utils.js | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/services/chat_utils/chat_utils.js b/src/services/chat_utils/chat_utils.js new file mode 100644 index 00000000..ab898ced --- /dev/null +++ b/src/services/chat_utils/chat_utils.js @@ -0,0 +1,19 @@ +import { showDesktopNotification } from '../desktop_notification_utils/desktop_notification_utils.js' + +export const maybeShowChatNotification = (store, chat) => { + if (!chat.lastMessage) return + if (store.rootState.chats.currentChatId === chat.id && !document.hidden) return + + const opts = { + tag: chat.lastMessage.id, + title: chat.account.name, + icon: chat.account.profile_image_url, + body: chat.lastMessage.content + } + + if (chat.lastMessage.attachment && chat.lastMessage.attachment.type === 'image') { + opts.image = chat.lastMessage.attachment.preview_url + } + + showDesktopNotification(store.rootState, opts) +} |
