Enhancement: Show unread marker on widget bubble (#3390)

* add unread marker

* add removeClass in IFramehelper

* Update app/javascript/sdk/sdk.js

* Update app/javascript/sdk/sdk.js

Co-authored-by: Nithin David Thomas <1277421+nithindavid@users.noreply.github.com>
This commit is contained in:
Sanju
2021-11-25 20:25:14 +05:30
committed by GitHub
parent b0370ce44d
commit 2c3c1888f1
3 changed files with 38 additions and 0 deletions

View File

@@ -3,6 +3,7 @@ import {
wootOn,
addClass,
loadCSS,
removeClass,
onLocationChangeListener,
} from './DOMHelpers';
import {
@@ -197,6 +198,18 @@ export const IFrameHelper = {
removeUnreadClass();
},
handleNotificationDot: event => {
const bubbleElement = document.querySelector('.woot-widget-bubble');
if (
event.unreadMessageCount > 0 &&
!bubbleElement.classList.contains('unread-notification')
) {
addClass(bubbleElement, 'unread-notification');
} else if (event.unreadMessageCount === 0) {
removeClass(bubbleElement, 'unread-notification');
}
},
closeChat: () => {
onBubbleClick({ toggleValue: false });
},

View File

@@ -37,6 +37,19 @@ export const SDK_CSS = `.woot-widget-holder {
user-select: none;
}
.woot-widget-bubble.unread-notification::after {
content: '';
position: absolute;
width: 12px;
height: 12px;
background: #ff4040;
border-radius: 100%;
top: 0px;
right: 0px;
border: 2px solid #ffffff;
transition: background 0.2s ease;
}
.woot-widget-bubble.woot-widget--expanded {
bottom: 24px;
display: flex;