diff --git a/app/javascript/packs/sdk.js b/app/javascript/packs/sdk.js
index 053c31ae9..1917aa83e 100755
--- a/app/javascript/packs/sdk.js
+++ b/app/javascript/packs/sdk.js
@@ -4,8 +4,6 @@ import { SDK_CSS } from '../widget/assets/scss/sdk';
/* eslint-disable no-param-reassign */
const bubbleImg =
'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAUVBMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////8IN+deAAAAGnRSTlMAAwgJEBk0TVheY2R5eo+ut8jb5OXs8fX2+cjRDTIAAADsSURBVHgBldZbkoMgFIThRgQv8SKKgGf/C51UnJqaRI30/9zfe+NQUQ3TvG7bOk9DVeCmshmj/CuOTYnrdBfkUOg0zlOtl9OWVuEk4+QyZ3DIevmSt/ioTvK1VH/s5bY3YdM9SBZ/mUUyWgx+U06ycgp7D8msxSvtc4HXL9BLdj2elSEfhBJAI0QNgJEBI1BEBsQClVBVGDgwYOLAhJkDM1YOrNg4sLFAsLJgZsHEgoEFFQt0JAFGFjQsKAMJ0LFAexKgZYFyJIDxJIBNJEDNAtSJBLCeBDCOBFAPzwFA94ED+zmhwDO9358r8ANtIsMXi7qVAwAAAABJRU5ErkJggg==';
-const closeImg =
- 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAP1BMVEUAAAD///////////////////////////////////////////////////////////////////////////////9Du/pqAAAAFHRSTlMACBstLi8wMVB+mcbT2err7O3w8n+sjtQAAAEuSURBVHgBtNLdcoMgGITh1SCGH9DId//X2mnTg7hYxj0oh8w8r+MqgDnmlsIE6UwhtRxnAHge9n2KV7wvP+h4AvPbm73W+359/aJjRjQTCuTNIrJJBfKW0UwqkLeGZJ8Ff2O/T28JwZQCewuYilJgX6buavdDv188br1RIE+jc2H5yy+9VwrXXij0nsflwth7YFRw7N3Y88BcYL+z7wubO/lt6AcFwQMLF9irP8r2eF8/ei8VLrxUkDzguMDejX03WK3dsGJB9lxgrxd0T8PTRxUL5OUCealQz76KXg/or/CvI36VXgcEAAAgCMP6t16IZVDg3zPuI+0rb5g2zlsoW2lbqlvrOyw7bTuuO+8LGIs4C1mLeQuai7oL2437LRytPC1drX0tnq2+Ld+r/wDPIIIJkfdlbQAAAABJRU5ErkJggg==';
const body = document.getElementsByTagName('body')[0];
const holder = document.createElement('div');
@@ -189,11 +187,8 @@ const IFrameHelper = {
target: chatBubble,
});
- const closeIcon = createBubbleIcon({
- className: 'woot-widget-bubble woot--close woot--hide',
- src: closeImg,
- target: closeBubble,
- });
+ const closeIcon = closeBubble;
+ closeIcon.className = 'woot-widget-bubble woot--close woot--hide';
chatIcon.style.background = widgetColor;
closeIcon.style.background = widgetColor;
diff --git a/app/javascript/widget/assets/scss/sdk.js b/app/javascript/widget/assets/scss/sdk.js
index 72af3c0bd..bd9ad9054 100644
--- a/app/javascript/widget/assets/scss/sdk.js
+++ b/app/javascript/widget/assets/scss/sdk.js
@@ -1,44 +1,47 @@
-export const SDK_CSS = `
-.woot-widget-holder {
- z-index: 2147483000!important;
- position: fixed!important;
- -moz-box-shadow: 0 5px 40px rgba(0,0,0,.16)!important;
- -o-box-shadow: 0 5px 40px rgba(0,0,0,.16)!important;
- -webkit-box-shadow: 0 5px 40px rgba(0,0,0,.16)!important;
- box-shadow: 0 5px 40px rgba(0,0,0,.16)!important;
- overflow: hidden!important;
+export const SDK_CSS = ` .woot-widget-holder {
+ z-index: 2147483000 !important;
+ position: fixed !important;
+ -moz-box-shadow: 0 5px 40px rgba(0, 0, 0, .16) !important;
+ -o-box-shadow: 0 5px 40px rgba(0, 0, 0, .16) !important;
+ -webkit-box-shadow: 0 5px 40px rgba(0, 0, 0, .16) !important;
+ box-shadow: 0 5px 40px rgba(0, 0, 0, .16) !important;
+ overflow: hidden !important;
opacity: 1;
transition-property: opacity, bottom;
transition-duration: 0.5s, 0.5s;
}
-.woot-widget-holder iframe { width: 100% !important; height: 100% !important; border: 0; }
+.woot-widget-holder iframe {
+ width: 100% !important;
+ height: 100% !important;
+ border: 0;
+}
.woot-widget-bubble {
- z-index: 2147483000!important;
- -moz-box-shadow: 0 8px 24px rgba(0,0,0,.16)!important;
- -o-box-shadow: 0 8px 24px rgba(0,0,0,.16)!important;
- -webkit-box-shadow: 0 8px 24px rgba(0,0,0,.16)!important;
- box-shadow: 0 8px 24px rgba(0,0,0,.16)!important;
- -o-border-radius: 100px!important;
- -moz-border-radius: 100px!important;
- -webkit-border-radius: 100px!important;
- border-radius: 100px!important;
+ z-index: 2147483000 !important;
+ -moz-box-shadow: 0 8px 24px rgba(0, 0, 0, .16) !important;
+ -o-box-shadow: 0 8px 24px rgba(0, 0, 0, .16) !important;
+ -webkit-box-shadow: 0 8px 24px rgba(0, 0, 0, .16) !important;
+ box-shadow: 0 8px 24px rgba(0, 0, 0, .16) !important;
+ -o-border-radius: 100px !important;
+ -moz-border-radius: 100px !important;
+ -webkit-border-radius: 100px !important;
+ border-radius: 100px !important;
background: #1f93ff;
position: fixed;
cursor: pointer;
right: 20px;
bottom: 20px;
- width: 64px!important;
- height: 64px!important;
+ width: 64px !important;
+ height: 64px !important;
}
.woot-widget-bubble:hover {
background: #1f93ff;
- -moz-box-shadow: 0 8px 32px rgba(0,0,0,.4)!important;
- -o-box-shadow: 0 8px 32px rgba(0,0,0,.4)!important;
- -webkit-box-shadow: 0 8px 32px rgba(0,0,0,.4)!important;
- box-shadow: 0 8px 32px rgba(0,0,0,.4)!important;
+ -moz-box-shadow: 0 8px 32px rgba(0, 0, 0, .4) !important;
+ -o-box-shadow: 0 8px 32px rgba(0, 0, 0, .4) !important;
+ -webkit-box-shadow: 0 8px 32px rgba(0, 0, 0, .4) !important;
+ box-shadow: 0 8px 32px rgba(0, 0, 0, .4) !important;
}
.woot-widget-bubble img {
@@ -47,15 +50,29 @@ export const SDK_CSS = `
margin: 20px;
}
-.woot-widget-bubble.woot--close img {
- width: 16px;
- height: 16px;
- margin: 24px;
+.woot--close:hover {
+ opacity: 1;
}
+.woot--close:before, .woot--close:after {
+ position: absolute;
+ left: 30px;
+ top: 15px;
+ content: ' ';
+ height: 33px;
+ width: 2px;
+ background-color: white;
+}
+.woot--close:before {
+ transform: rotate(45deg);
+}
+.woot--close:after {
+ transform: rotate(-45deg);
+}
+
.woot--hide {
visibility: hidden !important;
- z-index: -1!important;
+ z-index: -1 !important;
opacity: 0;
bottom: 60px;
}
@@ -69,12 +86,17 @@ export const SDK_CSS = `
}
.woot-widget-bubble.woot--close {
- top: 0;
- right: 0;
+ top: 8px;
+ right: 8px;
box-shadow: none !important;
-moz-box-shadow: none !important;
-o-box-shadow: none !important;
-webkit-box-shadow: none !important;
+ background: transparent !important;
+ }
+
+ .woot--close:before, .woot--close:after {
+ background-color: black;
}
}
@@ -83,13 +105,13 @@ export const SDK_CSS = `
bottom: 104px;
right: 20px;
height: calc(85% - 64px - 20px);
- width: 370px!important;
- min-height: 250px!important;
- max-height: 590px!important;
- -o-border-radius: 8px!important;
- -moz-border-radius: 8px!important;
- -webkit-border-radius: 8px!important;
- border-radius: 8px!important;
+ width: 400px !important;
+ min-height: 250px !important;
+ max-height: 590px !important;
+ -o-border-radius: 8px !important;
+ -moz-border-radius: 8px !important;
+ -webkit-border-radius: 8px !important;
+ border-radius: 8px !important;
}
}
diff --git a/app/javascript/widget/components/Branding.vue b/app/javascript/widget/components/Branding.vue
index 4814690f3..ae9587fe0 100644
--- a/app/javascript/widget/components/Branding.vue
+++ b/app/javascript/widget/components/Branding.vue
@@ -16,22 +16,26 @@
.branding {
align-items: center;
- color: $color-gray;
+ color: $color-light-gray;
+ opacity: 0.9;
display: flex;
filter: grayscale(1);
- font-size: $font-size-default;
+ font-size: $font-size-small;
justify-content: center;
- padding: $space-one;
text-align: center;
text-decoration: none;
+ padding: $space-slab 0;
+ cursor: pointer;
&:hover {
filter: grayscale(0);
+ opacity: 1;
+ color: $color-gray;
}
img {
- margin-right: $space-small;
- max-width: $space-two;
+ margin-right: $space-smaller;
+ max-width: $space-slab;
}
}
diff --git a/app/javascript/widget/components/ChatFooter.vue b/app/javascript/widget/components/ChatFooter.vue
index 6d9bb4227..ec25a7d5e 100755
--- a/app/javascript/widget/components/ChatFooter.vue
+++ b/app/javascript/widget/components/ChatFooter.vue
@@ -12,8 +12,14 @@ export default {
ChatInputWrap,
},
props: {
- msg: String,
- onSendMessage: Function,
+ msg: {
+ type: String,
+ default: '',
+ },
+ onSendMessage: {
+ type: Function,
+ default: () => {},
+ },
},
};
@@ -24,11 +30,12 @@ export default {
.footer {
background: $color-white;
- box-shadow: 0 -$space-micro 3px rgba(50, 50, 93, 0.04),
- 0 -1px 2px rgba(0, 0, 0, 0.03);
box-sizing: border-box;
- padding: $space-small;
+ padding: $space-small $space-slab;
width: 100%;
+ border-radius: 7px;
+ box-shadow: 0 20px 25px -10px rgba(0, 0, 0, 0.1),
+ 0 10px 10px -10px rgba(0, 0, 0, 0.04) !important;
}
.branding {
diff --git a/app/javascript/widget/components/ChatHeaderExpanded.vue b/app/javascript/widget/components/ChatHeaderExpanded.vue
index 0b1a447e9..7178c7556 100755
--- a/app/javascript/widget/components/ChatHeaderExpanded.vue
+++ b/app/javascript/widget/components/ChatHeaderExpanded.vue
@@ -1,6 +1,10 @@
-
{{ introHeading }}
@@ -39,21 +43,35 @@ export default {
@import '~widget/assets/scss/variables.scss';
.header-expanded {
- background: $color-woot;
- padding: $space-large;
+ background: $color-white;
+ padding: $space-larger $space-medium $space-large;
width: 100%;
box-sizing: border-box;
- color: $color-white;
+ border-radius: 1.6rem;
+ box-shadow: 0 10px 15px -16px rgba(0, 0, 0, 0.1),
+ 0 4px 6px -8px rgba(0, 0, 0, 0.05) !important;
+
+ @media only screen and (min-device-width: 320px) and (max-device-width: 480px) {
+ border-radius: 0;
+ }
+
+ .logo {
+ width: 64px;
+ height: 64px;
+ }
.title {
+ color: $color-heading;
font-size: $font-size-mega;
- font-weight: $font-weight-medium;
- margin-bottom: $space-two;
+ font-weight: $font-weight-normal;
+ margin-bottom: $space-slab;
+ margin-top: $space-large;
}
.body {
- font-size: $font-size-medium;
- line-height: 1.5;
+ color: $color-body;
+ font-size: 1.8rem;
+ line-height: 1.6;
}
}
diff --git a/app/javascript/widget/components/ChatInputArea.vue b/app/javascript/widget/components/ChatInputArea.vue
index 6110c8321..167032951 100755
--- a/app/javascript/widget/components/ChatInputArea.vue
+++ b/app/javascript/widget/components/ChatInputArea.vue
@@ -1,14 +1,21 @@
-
+