@xapp/chat-widget 1.59.0 → 1.60.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.css +2 -2
- package/dist/index.es.js +177 -61
- package/dist/index.es.js.map +1 -1
- package/dist/index.js +177 -61
- package/dist/index.js.map +1 -1
- package/dist/xapp/ChatServer.d.ts +0 -0
- package/dist/xapp/LogChat.d.ts +0 -0
- package/dist/xapp/StentorDirectChat.d.ts +0 -0
- package/dist/xapp/StentorLocalChat.d.ts +0 -0
- package/dist/xapp/StentorRouterChat.d.ts +0 -0
- package/dist/xapp/StentorServerChat.d.ts +0 -0
- package/dist/xapp-chat-widget.js +4 -4
- package/dist/xapp-chat-widget.js.map +1 -1
- package/package.json +2 -2
package/dist/index.css
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
.chat-card-container{border-radius:10px;position:relative;overflow:hidden;color:#fff;background:#f6f6f6}.chat-card-container .chat-card-img{border-radius:0}.chat-card-container__img{min-width:220px;height:120px}.chat-card-container .chat-card-title{padding:2px 10px;color:#2e375a;font-family:RobotoMedium,serif;font-size:12px;line-height:14px;font-weight:bold}.chat-card-container .chat-card-title span{display:inline-block;white-space:pre-wrap}.chat-card-container .chat-card-sub-title{padding:2px 10px;color:#2e375a;font-family:RobotoRegular,serif;font-size:10px;line-height:14px}.chat-card-container .chat-card-sub-title span{display:inline-block;white-space:pre-wrap}.chat-card-container .action-button{display:inline-block;padding:0 10px;margin:3px;height:25px;font-size:12px;line-height:25px;border-radius:25px;background-color:var(--xapp-primary-color, #616161);color:#d5d9e7;cursor:pointer}.chat-card-container .action-button:focus-visible{outline:none;filter:invert(100%)}.xappw-chat-msg-part{display:inline-block;position:relative;word-wrap:break-word}.xappw-chat-msg-part+.xappw-chat-msg-part{margin-top:4px}.xappw-chat-msg-part+.xappw-chat-msg-part .chat-card-img{border-radius:12px 12px 12px 0}.xappw-chat-msg-part__avatar{position:absolute;bottom:0;z-index:10}.xappw-chat-msg-part ul{list-style-position:inside;padding:0;margin:0 0 8px 0}.xappw-chat-msg-part li{padding:0;margin:0}.xappw-carousel{display:flex;flex-flow:row nowrap;align-items:center;justify-content:center}.xappw-carousel__prev,.xappw-carousel__next{flex:0 0 48px;height:30px;cursor:pointer}.xappw-carousel__prev svg,.xappw-carousel__next svg{display:block;margin:auto;height:100%}.xappw-carousel-items{display:flex;position:relative;height:auto;align-items:stretch;white-space:nowrap;overflow-x:hidden;overflow-y:hidden;scroll-behavior:smooth;-ms-overflow-style:none;-moz-overflow-style:none;-webkit-overflow-scrolling:touch}@media(hover: none)and (pointer: coarse){.xappw-carousel-items{overflow-x:auto}}.xappw-carousel-items__item{display:inline-flex;flex-direction:column;padding-right:10px;flex-shrink:0}.xappw-carousel-items__item:last-child{padding-right:0}@media(max-width: 640px){.xappw-carousel-items__item{min-width:100%}}.xappw-carousel-items--one-item{margin-left:48px}.xappw-vlist{display:flex;flex-flow:column nowrap}.xappw-vlist__header{padding:16px 8px;font-family:"RobotoRegular","serif";font-weight:bold;font-size:16px}.xappw-vlist-container{display:flex;flex-flow:column nowrap;flex:0 0 auto;justify-content:flex-start;max-width:100%;position:relative;white-space:nowrap;border:solid 1px #ccc;border-radius:12px;overflow:hidden}.xappw-vlist-container .xappw-vlist-container__item{display:inline-block;border-top:solid 1px #ccc}.xappw-vlist-container .xappw-vlist-container__item:first-child{border-top:none}.xappw-multiselect{list-style:none;padding:0;margin:0}.xappw-multiselect li{padding:0;margin:0}.chat-card-img{display:block;width:100%;height:100%}.chat-card-img__content{background-position:center;background-size:cover;width:100%;height:100%}.action-button{border:1px solid #ddd;border-radius:4px;text-align:center;opacity:1;outline:none;font-size:14px;padding:8px;text-align:center}.action-button:hover{opacity:.8;cursor:pointer}.action-button:focus-visible{outline:none;filter:invert(100%)}@media screen and (max-width: 640px){.action-button{box-sizing:border-box;height:44px}}.avatar{border-radius:20px;color:#fff;background-color:#fff;background-position:center;background-size:cover;background-repeat:no-repeat;width:100%;height:100%}.avatar--agent{background-color:#fff}.avatar--visitor{background-color:var(--xapp-primary-color, #616161);display:flex;align-items:center;height:100%}.avatar--empty{background-color:rgba(0,0,0,0)}.chat-list-item{display:flex;flex-direction:column;align-items:flex-start;min-width:220px;min-height:120px;flex:1 1 auto;border:solid 1px #ccc;border-radius:12px}.chat-list-item-container{display:flex;flex-direction:column;flex:1 1 auto}.chat-list-item__img{border-radius:12px 12px 0 0;width:100%;height:120px;overflow:hidden}.chat-list-item__title{text-align:left;font-family:var(--xapp-carousel-title-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-carousel-title-font-weight, bold);font-size:var(--xapp-carousel-title-font-size, 14px);font-style:var(--xapp-carousel-title-font-style, normal);color:var(--xapp-carousel-title-text-color, #000);line-height:1.3;padding:2px}.chat-list-item__title span{display:inline-block;white-space:pre-wrap}.chat-list-item__subtitle{text-align:left;font-family:var(--xapp-carousel-subtitle-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-carousel-subtitle-font-weight, normal);font-size:var(--xapp-carousel-subtitle-font-size, 12px);font-style:var(--xapp-carousel-subtitle-font-style, italic);color:var(--xapp-carousel-subtitle-text-color, #979797);line-height:1.3;max-width:200px;padding:2px}.chat-list-item__subtitle span{display:inline-block;white-space:pre-wrap}.chat-list-item__actions{margin-top:auto}.chat-list-item .action-button{display:inline-block;padding:0 10px;margin:3px;height:25px;font-size:12px;line-height:25px;border-radius:25px;background-color:var(--xapp-carousel-action-button-color, var(--xapp-primary-color, #616161));color:#d5d9e7;cursor:pointer}.xappw-vlist-item{display:flex;flex-direction:row;flex:0 0 auto;min-width:100%;min-height:56px;padding:8px;box-sizing:border-box;cursor:pointer}.xappw-vlist-item--normal{align-items:flex-start}.xappw-vlist-item--titles{align-items:center}.xappw-vlist-item:hover{background-color:#eee}.xappw-vlist-item__description{display:flex;flex-direction:column;flex:1 1 auto;overflow:hidden}.xappw-vlist-item__side{flex:0 0 auto;display:flex;flex-direction:column}.xappw-vlist-item__img{border-radius:12px;width:40px;height:40px;overflow:hidden}.xappw-vlist-item__external-link{width:20px;margin:0 4px 4px auto;display:inline-block}.xappw-vlist-item__title{text-align:left;font-family:var(--xapp-carousel-title-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-carousel-title-font-weight, bold);font-size:var(--xapp-carousel-title-font-size, 14px);font-style:var(--xapp-carousel-title-font-style, normal);color:var(--xapp-carousel-title-text-color, #000);line-height:1.3}.xappw-vlist-item__title span{display:inline-block;white-space:pre-wrap}.xappw-vlist-item__link{font-family:var(--xapp-carousel-link-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-carousel-link-font-weight, normal);font-size:var(--xapp-carousel-link-font-size, 12px);font-style:var(--xapp-carousel-link-font-style, normal);color:var(--xapp-carousel-link-text-color, #666);line-height:1.3;overflow:hidden;text-overflow:ellipsis;max-width:100%}.xappw-vlist-item__subtitle{text-align:left;font-family:var(--xapp-carousel-subtitle-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-carousel-subtitle-font-weight, normal);font-size:var(--xapp-carousel-subtitle-font-size, 12px);font-style:var(--xapp-carousel-subtitle-font-style, italic);color:var(--xapp-carousel-subtitle-text-color, #979797);line-height:1.3}.xappw-vlist-item__subtitle span{display:inline-block;white-space:pre-wrap}.xappw-vlist-item .action-button{display:inline-block;padding:0 10px;margin:3px;height:25px;font-size:12px;line-height:25px;border-radius:25px;background-color:var(--xapp-carousel-action-button-color, var(--xapp-primary-color, #616161));color:#d5d9e7;cursor:pointer}.xappw-vlist-item .action-button:focus-visible{outline:none;filter:invert(100%)}.xappw-chat-action-item{text-decoration:none}.xappw-chat-action-item--action{cursor:pointer}.xapp-chat-button{position:fixed;bottom:0;right:0;cursor:pointer;margin-top:var(--xapp-chat-button-margin-top, var(--xapp-widget-margin-top, 16px));margin-right:var(--xapp-chat-button-margin-right, var(--xapp-widget-margin-right, 16px));margin-bottom:var(--xapp-chat-button-margin-bottom, var(--xapp-widget-margin-bottom, 16px));margin-left:var(--xapp-chat-button-margin-left, var(--xapp-widget-margin-left, 16px));display:block;opacity:1;animation:widget-show-grow .5s backwards;width:48px;height:48px;border-radius:24px;z-index:var(--xapp-widget-z-index, 1000);background-color:rgba(0,0,0,0);padding:0;border-width:0px}.xapp-chat-button.visible{animation:widget-hide-shrink .5s forwards}.xapp-chat-button:focus-visible{outline:none;box-shadow:0 0 4px 4px rgba(0,0,0,.3)}.xapp-chat-button__btn{position:absolute;width:48px;height:48px;border-radius:24px;background-color:var(--xapp-chat-button-background, var(--xapp-primary-color, #616161));box-shadow:0 0 8px 0 rgba(0,0,0,.3);bottom:0px !important;right:0px !important;top:0px !important}.xapp-chat-button__btn svg,.xapp-chat-button__btn img{display:block;margin:auto;height:100%}.xapp-chat-button__cta{position:absolute;bottom:56px;right:24px;white-space:nowrap;font-size:16px;font-family:RobotoRegular,serif}.xapp-chat-button:hover{background:rgba(0,0,0,0) !important}.cta-bubble{position:relative;border-radius:50%;background:var(--xapp-cta-background, #e1e2e1);display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box;text-align:center;max-width:192px}.cta-bubble__tail{position:absolute;left:-16px;right:-16px;top:-16px;bottom:-16px;z-index:1;color:var(--xapp-cta-background, #e1e2e1)}.cta-bubble__tail svg{width:100%;height:100%;margin:0;padding:0}.cta-bubble__content{font-family:var(--xapp-cta-font-family, 14px);font-size:var(--xapp-cta-font-size, 14px);color:var(--xapp-cta-text-color, var(--xapp-primary-color, #616161));z-index:2}.chat-chips{width:100%;overflow-x:auto;overflow-y:hidden;white-space:nowrap;box-sizing:border-box;margin:0 auto;padding:10px;scroll-behavior:smooth;-ms-overflow-style:none;-moz-overflow-style:none;-webkit-overflow-scrolling:touch}.chat-chips::-webkit-scrollbar{background-color:#fff;height:10px}.chat-chips::-webkit-scrollbar-track{background-color:#fff}.chat-chips::-webkit-scrollbar-button{display:none}.chat-chips::-webkit-scrollbar-thumb{background-color:#babac0;border-radius:10px;border:2.5px solid #fff}.chat-chip{display:inline-block;padding:0 10px;margin:3px;height:25px;font-size:12px;color:#2f385a;line-height:25px;border-radius:25px;border:thin solid #aeb3be;cursor:pointer;user-select:none}.chat-chip-link{text-decoration:underline}@media screen and (max-width: 640px){.chat-chip{min-height:44px;padding:8px}}.chat-menu{display:flex;flex-flow:column;flex-shrink:0;z-index:999;overflow-y:hidden}.chat-menu-bottom--closed{max-height:0}.chat-menu-bottom--opened{max-height:calc(var(--xapp-widget-height, 500px) - 40)}.chat-menu-left{position:absolute;top:40px;left:0;width:auto;max-width:var(--xapp-widget-width, 400px);background:var(--xapp-menu-item-background, #efefef);height:100%;overflow:hidden;-webkit-transition:left 1.5s ease-out;-moz-transition:left 1.5s ease-out;-o-transition:left 1.5s ease-out;transition:left 1.5s ease-out}.chat-menu-left--closed{left:-var(--xapp-widget-width, 400px)}.chat-menu-item{border:var(--xapp-chat-menu-item-border-width, #fff) solid var(--xapp-chat-menu-item-border-color, #fff);border-radius:var(--xapp-chat-menu-item-border-radius, 0px);opacity:1;background:var(--xapp-menu-item-background, #efefef);font-family:var(--xapp-menu-item-font-family, 14px);font-weight:var(--xapp-menu-item-font-weight, normal);font-size:var(--xapp-menu-item-font-size, 14px);font-style:var(--xapp-menu-item-font-style, normal);color:var(--xapp-menu-item-text-color, var(--xapp-primary-color, #616161));height:var(--xapp-menu-item-height, 24px);width:100%;max-width:100%;box-sizing:border-box;padding:4px 4px 4px 30px;text-align:left}.chat-menu-item:hover{opacity:.8;cursor:pointer}.chat-menu-item--subtitle{font-family:var(--xapp-menu-item-subtitle-font-family, 14px);font-weight:var(--xapp-menu-item-subtitle-font-weight, normal);font-size:var(--xapp-menu-item-subtitle-font-size, 14px);font-style:var(--xapp-menu-item-subtitle-font-style, normal);color:var(--xapp-menu-item-text-subtitle-color, var(--xapp-primary-color, #616161))}.chat-menu-item:focus-visible{outline:none;filter:invert(100%)}.chat-menu-item-static{border:var(--xapp-chat-menu-item-border-width, #fff) solid var(--xapp-chat-menu-item-border-color, #fff);border-radius:var(--xapp-chat-menu-item-border-radius, 0px);background:var(--xapp-menu-item-background, #efefef);font-family:var(--xapp-menu-item-font-family, 14px);font-weight:var(--xapp-menu-item-font-weight, normal);font-size:var(--xapp-menu-item-font-size, 14px);font-style:var(--xapp-menu-item-font-style, normal);color:var(--xapp-menu-item-text-color, var(--xapp-primary-color, #616161));height:var(--xapp-menu-item-height, 24px);display:flex;justify-content:center;text-align:center;padding:4px 4px 4px 30px}.chat-menu-item-static--body{font-family:var(--xapp-menu-item-subtitle-font-family, 14px);font-weight:var(--xapp-menu-item-subtitle-font-weight, normal);font-size:var(--xapp-menu-item-subtitle-font-size, 14px);font-style:var(--xapp-menu-item-subtitle-font-style, normal);color:var(--xapp-menu-item-text-subtitle-color, var(--xapp-primary-color, #616161))}.chat-menu-item-static-text{border:var(--xapp-chat-menu-item-border-width, #fff) solid var(--xapp-chat-menu-item-border-color, #fff);border-radius:var(--xapp-chat-menu-item-border-radius, 0px);background:var(--xapp-menu-item-background, #efefef);font-family:var(--xapp-menu-item-font-family, 14px);font-weight:var(--xapp-menu-item-font-weight, normal);font-size:var(--xapp-menu-item-font-size, 14px);font-style:var(--xapp-menu-item-font-style, normal);color:var(--xapp-menu-item-text-color, var(--xapp-primary-color, #616161));max-height:100%;max-width:auto;display:flex;justify-content:center;text-align:center;padding:4px 4px 4px 30px}.chat-menu-item-static-text--body{font-family:var(--xapp-menu-item-subtitle-font-family, 14px);font-weight:var(--xapp-menu-item-subtitle-font-weight, normal);font-size:var(--xapp-menu-item-subtitle-font-size, 14px);font-style:var(--xapp-menu-item-subtitle-font-style, normal);color:var(--xapp-menu-item-text-subtitle-color, var(--xapp-primary-color, #616161))}.status-container{display:flex;flex-flow:row nowrap;justify-content:space-between;padding-left:10px;z-index:999;line-height:40px;height:40px;flex-shrink:0;color:#fff;position:relative;width:100%;background-color:var(--xapp-header-background, var(--xapp-primary-color, #616161)) !important;border-bottom:solid var(--xapp-header-border-width, 0px) var(--xapp-header-border-color, var(--xapp-primary-color, #616161));align-items:center}.status-container__avatar{width:30px;height:30px}.status-container__avatar .avatar:not(.avatar--empty){background-color:#a4a7b6}.status-text{display:inline-flex;flex-direction:column;position:absolute;line-height:100%}.status-text-positionLeft{left:48px}.status-text-positionLeftNoAvatar{left:8px}.status-text-positionCenter{left:50%;transform:translateX(-50%);align-items:center}.status-text-title{font-family:var(--xapp-header-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-header-font-weight, normal);font-size:var(--xapp-header-font-size, 16px);font-style:var(--xapp-header-font-style, normal);color:var(--xapp-header-text-color, rgba(255, 255, 255, 0.87))}.status-text-subtitle{margin-top:2px;font-family:var(--xapp-header-subtitle-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-header-subtitle-font-weight, normal);font-size:var(--xapp-header-subtitle-font-size, 10px);font-style:var(--xapp-header-subtitle-font-style, normal);color:var(--xapp-header-subtitle-text-color, rgba(255, 255, 255, 0.5))}.xa-chat-menu-container{z-index:100}.background-header .status-container{background-color:#616161 !important}.no-avatar{left:0px !important;color:aqua !important}@media screen and (max-width: 640px){.status-container{line-height:44px;height:44px}}.cancel-button{position:absolute;margin:0px;min-width:48px;width:48px;top:0;right:0;height:100%;border:none;outline:none;display:flex;justify-content:center;align-items:center;cursor:pointer;font-size:20px;color:var(--xapp-cancel-button-color, #a3a6b4);background-color:rgba(0,0,0,0);background-image:none;transition:none}.cancel-button:hover{transition:none}.cancel-button:after{content:"⨉" !important;opacity:inherit !important}.cancel-button:focus-visible{outline:none;filter:invert(100%)}.cancel-button:hover{background-color:rgba(0,0,0,0)}.drawer-bars{display:flex;flex-direction:column;justify-content:center;align-items:center;background-color:rgba(0,0,0,0);border:none;padding:6px 0;cursor:pointer}.drawer-bar{flex:0 0 5px;border-radius:5px;background-color:var(--xapp-menu-button-color, #fff);width:25px;margin:2.5px}.drawer-bar:first-child{margin-top:0}.drawer-bar:last-child{margin-bottom:0}@media screen and (max-width: 640px){.drawer-bars{height:44px;width:44px;line-height:44px}}.minimize-button{position:absolute;margin:0px;min-width:48px;width:48px;top:0;right:48px;height:100%;border:none;outline:none;display:flex;justify-content:center;align-items:center;cursor:pointer;font-size:20px;color:var(--xapp-minimize-button-color, #a3a6b4);background-color:rgba(0,0,0,0);background-image:none;transition:none}.minimize-button:hover{transition:none}.minimize-button:after{content:"─" !important;opacity:inherit !important}.minimize-button.positionRight{right:0}.minimize-button:focus-visible{outline:none;filter:invert(100%)}.minimize-button:hover{background-color:rgba(0,0,0,0)}.refresh-button{position:absolute;margin:0px;min-width:48px;width:48px;top:0;right:48px;height:100%;border:none;outline:none;display:flex;justify-content:center;align-items:center;cursor:pointer;font-size:20px;color:var(--xapp-refresh-button-color, #a3a6b4);background-color:var(--xapp-header-background, var(--xapp-primary-color, #616161));background-image:none;transition:none}.refresh-button:hover{transition:none}.refresh-button:after{content:"⟳" !important;opacity:inherit !important}.refresh-button.positionLeft{right:96px}.refresh-button.positionRight{right:0}.refresh-button:focus-visible{outline:none;filter:invert(100%)}.chat-msg-container-wrapper{display:flex;flex-direction:column;margin-bottom:16px}.chat-msg-container-wrapper.visitor{justify-content:flex-end}.chat-msg-container-wrapper.agent{justify-content:flex-start}.chat-msg-container-wrapper.sibling{margin-bottom:8px}.chat-msg-container-wrapper.sibling .avatar{display:none}.chat-msg-timestamp{font-size:.8em}.chat-msg-timestamp.visitor{padding-right:20px;align-self:flex-end}.chat-msg-timestamp.agent{padding-left:48px;align-self:flex-start}.chat-msg-container{display:flex;flex-flow:column nowrap;flex:0 0 auto;justify-content:flex-start;max-width:100%;position:relative}.chat-msg-container.visitor{align-items:flex-end}.chat-msg-container.visitor .xappw-chat-msg-part__avatar{right:0;display:none}.chat-msg-container.agent{align-items:stretch}.chat-msg-container.agent .xappw-chat-msg-part__avatar{width:36px;height:36px;left:0}.message-sr-only{display:none}.chat-text-container p{margin:0 0 8px 0;padding:0}.chat-msg-agent-typing{margin-top:auto;padding-bottom:16px;font-family:var(--xapp-text-typing-status-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-text-typing-status-font-weight, normal);font-size:var(--xapp-text-typing-status-font-size, 14px);font-style:var(--xapp-text-typing-status-font-style, normal);color:var(--xapp-text-typing-status-text-color, #bfbfbf)}.chat-msg-agent-typing::after{display:inline-block;animation:dots steps(1, end) 1.5s infinite;content:""}@keyframes dots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}100%{content:""}}.chat-text-bubble{border-radius:10px;padding:10px;display:inline-block;word-wrap:break-word;position:relative;overflow:visible}.chat-text-bubble--mine{font-family:var(--xapp-messages-mine-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-messages-mine-font-weight, normal);font-size:var(--xapp-messages-mine-font-size, 14px);font-style:var(--xapp-messages-mine-font-style, normal);color:var(--xapp-messages-mine-text-color, #ffffff);background:var(--xapp-messages-mine-bubble-color, hsl(120, 75%, 50%));border-bottom-right-radius:0}.chat-text-bubble--mine .chat-text-bubble__tail{right:-8px;color:var(--xapp-messages-mine-bubble-color, hsl(120, 75%, 50%))}.chat-text-bubble--others{font-family:var(--xapp-messages-others-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-messages-others-font-weight, normal);font-size:var(--xapp-messages-others-font-size, 14px);font-style:var(--xapp-messages-others-font-style, normal);color:var(--xapp-messages-others-text-color, #262726);background:var(--xapp-messages-others-bubble-color, #e1e2e1);border-bottom-left-radius:0}.chat-text-bubble--others .chat-text-bubble__tail{left:-8px;color:var(--xapp-messages-others-bubble-color, #e1e2e1)}.chat-text-bubble span{white-space:pre-wrap}.chat-typing-progress .chat-text-bubble{padding:8px 10px;margin-top:4px}.chat-text-bubble__tail{position:absolute;width:8px;height:24px;bottom:0}.message-list-container{position:relative;flex-grow:1;flex-shrink:1;overflow-y:scroll;display:flex;flex-direction:column;background:var(--xapp-content-background, #fff)}.message-list-container__msgs{display:flex;flex-direction:column;flex-grow:1;flex-shrink:1;padding-top:var(--xapp-messages-padding-top, 16px);padding-right:var(--xapp-messages-padding-right, 16px);padding-bottom:var(--xapp-messages-padding-bottom, 0);padding-left:var(--xapp-messages-padding-left, 20px)}.message-list-container__chips{flex:0 0 auto;border-top:solid 1px #ccc;margin-top:auto}.message-list-container__chips--empty{flex-basis:0;border:none;overflow:hidden}.message-form .section{margin-bottom:16px}.message-form .label{display:block;margin-bottom:4px;color:var(--xapp-primary-color, #616161)}.message-form input,.message-form textarea{border:1px solid #ddd;border-radius:4px;outline-width:0;width:100%;font-size:14px;box-sizing:border-box}.message-form input{height:32px;padding:0 10px}.message-form textarea{padding:8px 10px;min-height:100px;resize:none;overflow-y:auto}.message-form__submit{width:100%;background-color:var(--xapp-primary-color, #616161);color:#fff}.message-form--shrink-enter{opacity:.01;position:relative;top:100px}.message-form--shrink-enter-active{position:relative;top:0;opacity:1;transition:opacity 500ms,top 500ms;transition-delay:500ms}.message-form--shrink-exit{opacity:.5;position:relative;top:0}.message-form--shrink-exit-active{top:-200px;opacity:.01;transition:top 500ms,opacity 500ms}.message-form--grow-enter{opacity:.5;position:relative;top:-200px}.message-form--grow-enter-active{position:relative;top:0;opacity:1;transition:opacity 500ms,top 500ms}.message-form--grow-exit{opacity:.5;position:relative;top:0;height:50px}.message-form--grow-exit-active{top:-100px;height:0;opacity:.01;transition:top 500ms,opacity 500ms,height 500ms}.message-form--sent .button-resend{width:100%;margin-top:16px;background-color:var(--xapp-primary-color, #616161);color:#fff}.card-container{padding-top:16px;position:relative}.card-container__content{color:#555;border-radius:8px;border:1px solid #ddd;padding:24px 16px 16px 16px;font-size:14px}.card-container__title{text-align:center;color:var(--xapp-primary-color, #616161);margin-bottom:8px}.card-container__icon{width:32px;height:32px;position:relative;background-color:#fff;border:1px solid #e0e0e0;border-radius:50%;box-shadow:0 2px 4px 0 rgba(0,0,0,.1);margin:-16px auto;z-index:999}.card-container__icon svg{display:block;margin:auto;height:100%}@font-face{font-family:OpenSansSemibold;font-style:normal;font-weight:600;font-display:swap;src:local("Open Sans SemiBold"),local("OpenSans-SemiBold"),url(https://fonts.gstatic.com/s/opensans/v17/mem5YaGs126MiZpBA-UNirkOUuhpKKSTjw.woff2) format("woff2")}@font-face{font-family:RobotoRegular;font-style:normal;font-weight:400;font-display:swap;src:local("Roboto"),local("Roboto-Regular"),url(https://fonts.gstatic.com/s/roboto/v20/KFOmCnqEu92Fr1Mu4mxKKTU1Kg.woff2) format("woff2")}@font-face{font-family:RobotoMedium;font-style:oblique;font-weight:500;font-display:swap;src:local("Roboto Medium"),local("Roboto-Medium"),url(https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmEU9fBBc4AMP6lQ.woff2) format("woff2")}.widget-container{background:#fff;display:flex;flex-flow:column nowrap;width:100%;height:100%;visibility:hidden;font-family:RobotoRegular,serif;box-shadow:0 5px 40px rgba(0,0,0,.16);overflow:hidden;border-radius:var(--xapp-widget-border-radius, 10px);border:var(--xapp-widget-border-width, 0px) solid var(--xapp-widget-border-color, var(--xapp-primary-color, #616161));box-sizing:border-box}.widget-container *,.widget-container *:before,.widget-container *:after{box-sizing:border-box}.widget-container--normal,.widget-container--static{position:fixed;z-index:var(--xapp-widget-z-index, 1000);right:var(--xapp-widget-margin-right, 10px);bottom:var(--xapp-widget-margin-bottom, 10px)}.widget-container--normal.visible,.widget-container--static.visible{width:min(
|
|
1
|
+
.chat-card-container{border-radius:10px;position:relative;overflow:hidden;color:#fff;background:#f6f6f6}.chat-card-container .chat-card-img{border-radius:0}.chat-card-container__img{min-width:220px;height:120px}.chat-card-container .chat-card-title{padding:2px 10px;color:#2e375a;font-family:RobotoMedium,serif;font-size:12px;line-height:14px;font-weight:bold}.chat-card-container .chat-card-title span{display:inline-block;white-space:pre-wrap}.chat-card-container .chat-card-sub-title{padding:2px 10px;color:#2e375a;font-family:RobotoRegular,serif;font-size:10px;line-height:14px}.chat-card-container .chat-card-sub-title span{display:inline-block;white-space:pre-wrap}.chat-card-container .action-button{display:inline-block;padding:0 10px;margin:3px;height:25px;font-size:12px;line-height:25px;border-radius:25px;background-color:var(--xapp-primary-color, #616161);color:#d5d9e7;cursor:pointer}.chat-card-container .action-button:focus-visible{outline:none;filter:invert(100%)}.xappw-chat-msg-part{display:inline-block;position:relative;word-wrap:break-word}.xappw-chat-msg-part+.xappw-chat-msg-part{margin-top:4px}.xappw-chat-msg-part+.xappw-chat-msg-part .chat-card-img{border-radius:12px 12px 12px 0}.xappw-chat-msg-part__avatar{position:absolute;bottom:0;z-index:10}.xappw-chat-msg-part ul{list-style-position:inside;padding:0;margin:0 0 8px 0}.xappw-chat-msg-part li{padding:0;margin:0}.xappw-carousel{display:flex;flex-flow:row nowrap;align-items:center;justify-content:center}.xappw-carousel__prev,.xappw-carousel__next{flex:0 0 48px;height:30px;cursor:pointer}.xappw-carousel__prev svg,.xappw-carousel__next svg{display:block;margin:auto;height:100%}.xappw-carousel-items{display:flex;position:relative;height:auto;align-items:stretch;white-space:nowrap;overflow-x:hidden;overflow-y:hidden;scroll-behavior:smooth;-ms-overflow-style:none;-moz-overflow-style:none;-webkit-overflow-scrolling:touch}@media(hover: none)and (pointer: coarse){.xappw-carousel-items{overflow-x:auto}}.xappw-carousel-items__item{display:inline-flex;flex-direction:column;padding-right:10px;flex-shrink:0}.xappw-carousel-items__item:last-child{padding-right:0}@media(max-width: 640px){.xappw-carousel-items__item{min-width:100%}}.xappw-carousel-items--one-item{margin-left:48px}.xappw-vlist{display:flex;flex-flow:column nowrap}.xappw-vlist__header{padding:16px 8px;font-family:"RobotoRegular","serif";font-weight:bold;font-size:16px}.xappw-vlist-container{display:flex;flex-flow:column nowrap;flex:0 0 auto;justify-content:flex-start;max-width:100%;position:relative;white-space:nowrap;border:solid 1px #ccc;border-radius:12px;overflow:hidden}.xappw-vlist-container .xappw-vlist-container__item{display:inline-block;border-top:solid 1px #ccc}.xappw-vlist-container .xappw-vlist-container__item:first-child{border-top:none}.action-button{border:1px solid #ddd;border-radius:4px;text-align:center;opacity:1;outline:none;font-size:14px;padding:8px;text-align:center}.action-button:hover{opacity:.8;cursor:pointer}.action-button:focus-visible{outline:none;filter:invert(100%)}@media screen and (max-width: 640px){.action-button{box-sizing:border-box;height:44px}}.xappw-multiselect{list-style:none;padding:0;margin:0}.xappw-multiselect li{padding:0;margin:0}.chat-card-img{display:block;width:100%;height:100%}.chat-card-img__content{background-position:center;background-size:cover;width:100%;height:100%}.avatar{border-radius:20px;color:#fff;background-color:#fff;background-position:center;background-size:cover;background-repeat:no-repeat;width:100%;height:100%}.avatar--agent{background-color:#fff}.avatar--visitor{background-color:var(--xapp-primary-color, #616161);display:flex;align-items:center;height:100%}.avatar--empty{background-color:rgba(0,0,0,0)}.chat-list-item{display:flex;flex-direction:column;align-items:flex-start;min-width:220px;min-height:120px;flex:1 1 auto;border:solid 1px #ccc;border-radius:12px}.chat-list-item-container{display:flex;flex-direction:column;flex:1 1 auto}.chat-list-item__img{border-radius:12px 12px 0 0;width:100%;height:120px;overflow:hidden}.chat-list-item__title{text-align:left;font-family:var(--xapp-carousel-title-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-carousel-title-font-weight, bold);font-size:var(--xapp-carousel-title-font-size, 14px);font-style:var(--xapp-carousel-title-font-style, normal);color:var(--xapp-carousel-title-text-color, #000);line-height:1.3;padding:2px}.chat-list-item__title span{display:inline-block;white-space:pre-wrap}.chat-list-item__subtitle{text-align:left;font-family:var(--xapp-carousel-subtitle-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-carousel-subtitle-font-weight, normal);font-size:var(--xapp-carousel-subtitle-font-size, 12px);font-style:var(--xapp-carousel-subtitle-font-style, italic);color:var(--xapp-carousel-subtitle-text-color, #979797);line-height:1.3;max-width:200px;padding:2px}.chat-list-item__subtitle span{display:inline-block;white-space:pre-wrap}.chat-list-item__actions{margin-top:auto}.chat-list-item .action-button{display:inline-block;padding:0 10px;margin:3px;height:25px;font-size:12px;line-height:25px;border-radius:25px;background-color:var(--xapp-carousel-action-button-color, var(--xapp-primary-color, #616161));color:#d5d9e7;cursor:pointer}.xappw-vlist-item{display:flex;flex-direction:row;flex:0 0 auto;min-width:100%;min-height:56px;padding:8px;box-sizing:border-box;cursor:pointer}.xappw-vlist-item--normal{align-items:flex-start}.xappw-vlist-item--titles{align-items:center}.xappw-vlist-item:hover{background-color:#eee}.xappw-vlist-item__description{display:flex;flex-direction:column;flex:1 1 auto;overflow:hidden}.xappw-vlist-item__side{flex:0 0 auto;display:flex;flex-direction:column}.xappw-vlist-item__img{border-radius:12px;width:40px;height:40px;overflow:hidden}.xappw-vlist-item__external-link{width:20px;margin:0 4px 4px auto;display:inline-block}.xappw-vlist-item__title{text-align:left;font-family:var(--xapp-carousel-title-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-carousel-title-font-weight, bold);font-size:var(--xapp-carousel-title-font-size, 14px);font-style:var(--xapp-carousel-title-font-style, normal);color:var(--xapp-carousel-title-text-color, #000);line-height:1.3}.xappw-vlist-item__title span{display:inline-block;white-space:pre-wrap}.xappw-vlist-item__link{font-family:var(--xapp-carousel-link-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-carousel-link-font-weight, normal);font-size:var(--xapp-carousel-link-font-size, 12px);font-style:var(--xapp-carousel-link-font-style, normal);color:var(--xapp-carousel-link-text-color, #666);line-height:1.3;overflow:hidden;text-overflow:ellipsis;max-width:100%}.xappw-vlist-item__subtitle{text-align:left;font-family:var(--xapp-carousel-subtitle-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-carousel-subtitle-font-weight, normal);font-size:var(--xapp-carousel-subtitle-font-size, 12px);font-style:var(--xapp-carousel-subtitle-font-style, italic);color:var(--xapp-carousel-subtitle-text-color, #979797);line-height:1.3}.xappw-vlist-item__subtitle span{display:inline-block;white-space:pre-wrap}.xappw-vlist-item .action-button{display:inline-block;padding:0 10px;margin:3px;height:25px;font-size:12px;line-height:25px;border-radius:25px;background-color:var(--xapp-carousel-action-button-color, var(--xapp-primary-color, #616161));color:#d5d9e7;cursor:pointer}.xappw-vlist-item .action-button:focus-visible{outline:none;filter:invert(100%)}.xappw-chat-action-item{text-decoration:none}.xappw-chat-action-item--action{cursor:pointer}.xapp-chat-button{position:fixed;bottom:0;right:0;cursor:pointer;margin-top:var(--xapp-chat-button-margin-top, var(--xapp-widget-margin-top, 16px));margin-right:var(--xapp-chat-button-margin-right, var(--xapp-widget-margin-right, 16px));margin-bottom:var(--xapp-chat-button-margin-bottom, var(--xapp-widget-margin-bottom, 16px));margin-left:var(--xapp-chat-button-margin-left, var(--xapp-widget-margin-left, 16px));display:block;opacity:1;animation:widget-show-grow .5s backwards;width:48px;height:48px;border-radius:24px;z-index:var(--xapp-widget-z-index, 1000);background-color:rgba(0,0,0,0);padding:0;border-width:0px}.xapp-chat-button.visible{animation:widget-hide-shrink .5s forwards}.xapp-chat-button:focus-visible{outline:none;box-shadow:0 0 4px 4px rgba(0,0,0,.3)}.xapp-chat-button__btn{position:absolute;width:48px;height:48px;border-radius:24px;background-color:var(--xapp-chat-button-background, var(--xapp-primary-color, #616161));box-shadow:0 0 8px 0 rgba(0,0,0,.3);bottom:0px !important;right:0px !important;top:0px !important}.xapp-chat-button__btn svg,.xapp-chat-button__btn img{display:block;margin:auto;height:100%}.xapp-chat-button__cta{position:absolute;bottom:56px;right:24px;white-space:nowrap;font-size:16px;font-family:RobotoRegular,serif}.xapp-chat-button:hover{background:rgba(0,0,0,0) !important}.cta-bubble{position:relative;border-radius:50%;background:var(--xapp-cta-background, #e1e2e1);display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box;text-align:center;max-width:192px}.cta-bubble__tail{position:absolute;left:-16px;right:-16px;top:-16px;bottom:-16px;z-index:1;color:var(--xapp-cta-background, #e1e2e1)}.cta-bubble__tail svg{width:100%;height:100%;margin:0;padding:0}.cta-bubble__content{font-family:var(--xapp-cta-font-family, 14px);font-size:var(--xapp-cta-font-size, 14px);color:var(--xapp-cta-text-color, var(--xapp-primary-color, #616161));z-index:2}.chat-chip{display:inline-block;padding:0 10px;margin:3px;height:25px;font-size:12px;color:#2f385a;line-height:25px;border-radius:25px;border:thin solid #aeb3be;cursor:pointer;user-select:none}.chat-chip-link{text-decoration:underline}@media screen and (max-width: 640px){.chat-chip{min-height:44px;padding:8px}}.status-container{display:flex;flex-flow:row nowrap;justify-content:space-between;padding-left:10px;z-index:999;line-height:40px;height:40px;flex-shrink:0;color:#fff;position:relative;width:100%;background-color:var(--xapp-header-background, var(--xapp-primary-color, #616161)) !important;border-bottom:solid var(--xapp-header-border-width, 0px) var(--xapp-header-border-color, var(--xapp-primary-color, #616161));align-items:center}.status-container__avatar{width:30px;height:30px}.status-container__avatar .avatar:not(.avatar--empty){background-color:#a4a7b6}.status-text{display:inline-flex;flex-direction:column;position:absolute;line-height:100%}.status-text-positionLeft{left:48px}.status-text-positionLeftNoAvatar{left:8px}.status-text-positionCenter{left:50%;transform:translateX(-50%);align-items:center}.status-text-title{font-family:var(--xapp-header-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-header-font-weight, normal);font-size:var(--xapp-header-font-size, 16px);font-style:var(--xapp-header-font-style, normal);color:var(--xapp-header-text-color, rgba(255, 255, 255, 0.87))}.status-text-subtitle{margin-top:2px;font-family:var(--xapp-header-subtitle-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-header-subtitle-font-weight, normal);font-size:var(--xapp-header-subtitle-font-size, 10px);font-style:var(--xapp-header-subtitle-font-style, normal);color:var(--xapp-header-subtitle-text-color, rgba(255, 255, 255, 0.5))}.xa-chat-menu-container{z-index:100}.background-header .status-container{background-color:#616161 !important}.no-avatar{left:0px !important;color:aqua !important}@media screen and (max-width: 640px){.status-container{line-height:44px;height:44px}}.cancel-button{position:absolute;margin:0px;min-width:48px;width:48px;top:0;right:0;height:100%;border:none;outline:none;display:flex;justify-content:center;align-items:center;cursor:pointer;font-size:20px;color:var(--xapp-cancel-button-color, #a3a6b4);background-color:rgba(0,0,0,0);background-image:none;transition:none}.cancel-button:hover{transition:none}.cancel-button:after{content:"⨉" !important;opacity:inherit !important}.cancel-button:focus-visible{outline:none;filter:invert(100%)}.cancel-button:hover{background-color:rgba(0,0,0,0)}.chat-menu{display:flex;flex-flow:column;flex-shrink:0;z-index:999;overflow-y:hidden}.chat-menu-bottom--closed{max-height:0}.chat-menu-bottom--opened{max-height:calc(var(--xapp-widget-height, 500px) - 40)}.chat-menu-left{position:absolute;top:40px;left:0;width:auto;max-width:var(--xapp-widget-width, 400px);background:var(--xapp-menu-item-background, #efefef);height:100%;overflow:hidden;-webkit-transition:left 1.5s ease-out;-moz-transition:left 1.5s ease-out;-o-transition:left 1.5s ease-out;transition:left 1.5s ease-out}.chat-menu-left--closed{left:-var(--xapp-widget-width, 400px)}.drawer-bars{display:flex;flex-direction:column;justify-content:center;align-items:center;background-color:rgba(0,0,0,0);border:none;padding:6px 0;cursor:pointer}.drawer-bar{flex:0 0 5px;border-radius:5px;background-color:var(--xapp-menu-button-color, #fff);width:25px;margin:2.5px}.drawer-bar:first-child{margin-top:0}.drawer-bar:last-child{margin-bottom:0}@media screen and (max-width: 640px){.drawer-bars{height:44px;width:44px;line-height:44px}}.minimize-button{position:absolute;margin:0px;min-width:48px;width:48px;top:0;right:48px;height:100%;border:none;outline:none;display:flex;justify-content:center;align-items:center;cursor:pointer;font-size:20px;color:var(--xapp-minimize-button-color, #a3a6b4);background-color:rgba(0,0,0,0);background-image:none;transition:none}.minimize-button:hover{transition:none}.minimize-button:after{content:"─" !important;opacity:inherit !important}.minimize-button.positionRight{right:0}.minimize-button:focus-visible{outline:none;filter:invert(100%)}.minimize-button:hover{background-color:rgba(0,0,0,0)}.refresh-button{position:absolute;margin:0px;min-width:48px;width:48px;top:0;right:48px;height:100%;border:none;outline:none;display:flex;justify-content:center;align-items:center;cursor:pointer;font-size:20px;color:var(--xapp-refresh-button-color, #a3a6b4);background-color:var(--xapp-header-background, var(--xapp-primary-color, #616161));background-image:none;transition:none}.refresh-button:hover{transition:none}.refresh-button:after{content:"⟳" !important;opacity:inherit !important}.refresh-button.positionLeft{right:96px}.refresh-button.positionRight{right:0}.refresh-button:focus-visible{outline:none;filter:invert(100%)}.chat-menu-item{border:var(--xapp-chat-menu-item-border-width, #fff) solid var(--xapp-chat-menu-item-border-color, #fff);border-radius:var(--xapp-chat-menu-item-border-radius, 0px);opacity:1;background:var(--xapp-menu-item-background, #efefef);font-family:var(--xapp-menu-item-font-family, 14px);font-weight:var(--xapp-menu-item-font-weight, normal);font-size:var(--xapp-menu-item-font-size, 14px);font-style:var(--xapp-menu-item-font-style, normal);color:var(--xapp-menu-item-text-color, var(--xapp-primary-color, #616161));height:var(--xapp-menu-item-height, 24px);width:100%;max-width:100%;box-sizing:border-box;padding:4px 4px 4px 30px;text-align:left}.chat-menu-item:hover{opacity:.8;cursor:pointer}.chat-menu-item--subtitle{font-family:var(--xapp-menu-item-subtitle-font-family, 14px);font-weight:var(--xapp-menu-item-subtitle-font-weight, normal);font-size:var(--xapp-menu-item-subtitle-font-size, 14px);font-style:var(--xapp-menu-item-subtitle-font-style, normal);color:var(--xapp-menu-item-text-subtitle-color, var(--xapp-primary-color, #616161))}.chat-menu-item:focus-visible{outline:none;filter:invert(100%)}.chat-menu-item-static{border:var(--xapp-chat-menu-item-border-width, #fff) solid var(--xapp-chat-menu-item-border-color, #fff);border-radius:var(--xapp-chat-menu-item-border-radius, 0px);background:var(--xapp-menu-item-background, #efefef);font-family:var(--xapp-menu-item-font-family, 14px);font-weight:var(--xapp-menu-item-font-weight, normal);font-size:var(--xapp-menu-item-font-size, 14px);font-style:var(--xapp-menu-item-font-style, normal);color:var(--xapp-menu-item-text-color, var(--xapp-primary-color, #616161));height:var(--xapp-menu-item-height, 24px);display:flex;justify-content:center;text-align:center;padding:4px 4px 4px 30px}.chat-menu-item-static--body{font-family:var(--xapp-menu-item-subtitle-font-family, 14px);font-weight:var(--xapp-menu-item-subtitle-font-weight, normal);font-size:var(--xapp-menu-item-subtitle-font-size, 14px);font-style:var(--xapp-menu-item-subtitle-font-style, normal);color:var(--xapp-menu-item-text-subtitle-color, var(--xapp-primary-color, #616161))}.chat-menu-item-static-text{border:var(--xapp-chat-menu-item-border-width, #fff) solid var(--xapp-chat-menu-item-border-color, #fff);border-radius:var(--xapp-chat-menu-item-border-radius, 0px);background:var(--xapp-menu-item-background, #efefef);font-family:var(--xapp-menu-item-font-family, 14px);font-weight:var(--xapp-menu-item-font-weight, normal);font-size:var(--xapp-menu-item-font-size, 14px);font-style:var(--xapp-menu-item-font-style, normal);color:var(--xapp-menu-item-text-color, var(--xapp-primary-color, #616161));max-height:100%;max-width:auto;display:flex;justify-content:center;text-align:center;padding:4px 4px 4px 30px}.chat-menu-item-static-text--body{font-family:var(--xapp-menu-item-subtitle-font-family, 14px);font-weight:var(--xapp-menu-item-subtitle-font-weight, normal);font-size:var(--xapp-menu-item-subtitle-font-size, 14px);font-style:var(--xapp-menu-item-subtitle-font-style, normal);color:var(--xapp-menu-item-text-subtitle-color, var(--xapp-primary-color, #616161))}.chat-chips{width:100%;overflow-x:auto;overflow-y:hidden;white-space:nowrap;box-sizing:border-box;margin:0 auto;padding:10px;scroll-behavior:smooth;-ms-overflow-style:none;-moz-overflow-style:none;-webkit-overflow-scrolling:touch}.chat-chips::-webkit-scrollbar{background-color:#fff;height:10px}.chat-chips::-webkit-scrollbar-track{background-color:#fff}.chat-chips::-webkit-scrollbar-button{display:none}.chat-chips::-webkit-scrollbar-thumb{background-color:#babac0;border-radius:10px;border:2.5px solid #fff}.chat-msg-container-wrapper{display:flex;flex-direction:column;margin-bottom:16px}.chat-msg-container-wrapper.visitor{justify-content:flex-end}.chat-msg-container-wrapper.agent{justify-content:flex-start}.chat-msg-container-wrapper.sibling{margin-bottom:8px}.chat-msg-container-wrapper.sibling .avatar{display:none}.chat-msg-timestamp{font-size:.8em}.chat-msg-timestamp.visitor{padding-right:20px;align-self:flex-end}.chat-msg-timestamp.agent{padding-left:48px;align-self:flex-start}.chat-msg-container{display:flex;flex-flow:column nowrap;flex:0 0 auto;justify-content:flex-start;max-width:100%;position:relative}.chat-msg-container.visitor{align-items:flex-end}.chat-msg-container.visitor .xappw-chat-msg-part__avatar{right:0;display:none}.chat-msg-container.agent{align-items:stretch}.chat-msg-container.agent .xappw-chat-msg-part__avatar{width:36px;height:36px;left:0}.message-sr-only{display:none}.chat-text-container p{margin:0 0 8px 0;padding:0}.chat-msg-agent-typing{margin-top:auto;padding-bottom:16px;font-family:var(--xapp-text-typing-status-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-text-typing-status-font-weight, normal);font-size:var(--xapp-text-typing-status-font-size, 14px);font-style:var(--xapp-text-typing-status-font-style, normal);color:var(--xapp-text-typing-status-text-color, #bfbfbf)}.chat-msg-agent-typing::after{display:inline-block;animation:dots steps(1, end) 1.5s infinite;content:""}@keyframes dots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}100%{content:""}}.chat-text-bubble{border-radius:10px;padding:10px;display:inline-block;word-wrap:break-word;position:relative;overflow:visible}.chat-text-bubble--mine{font-family:var(--xapp-messages-mine-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-messages-mine-font-weight, normal);font-size:var(--xapp-messages-mine-font-size, 14px);font-style:var(--xapp-messages-mine-font-style, normal);color:var(--xapp-messages-mine-text-color, #ffffff);background:var(--xapp-messages-mine-bubble-color, hsl(120, 75%, 50%));border-bottom-right-radius:0}.chat-text-bubble--mine .chat-text-bubble__tail{right:-8px;color:var(--xapp-messages-mine-bubble-color, hsl(120, 75%, 50%))}.chat-text-bubble--others{font-family:var(--xapp-messages-others-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-messages-others-font-weight, normal);font-size:var(--xapp-messages-others-font-size, 14px);font-style:var(--xapp-messages-others-font-style, normal);color:var(--xapp-messages-others-text-color, #262726);background:var(--xapp-messages-others-bubble-color, #e1e2e1);border-bottom-left-radius:0}.chat-text-bubble--others .chat-text-bubble__tail{left:-8px;color:var(--xapp-messages-others-bubble-color, #e1e2e1)}.chat-text-bubble span{white-space:pre-wrap}.chat-typing-progress .chat-text-bubble{padding:8px 10px;margin-top:4px}.chat-text-bubble__tail{position:absolute;width:8px;height:24px;bottom:0}.message-list-container{position:relative;flex-grow:1;flex-shrink:1;overflow-y:scroll;display:flex;flex-direction:column;background:var(--xapp-content-background, #fff)}.message-list-container__msgs{display:flex;flex-direction:column;flex-grow:1;flex-shrink:1;padding-top:var(--xapp-messages-padding-top, 16px);padding-right:var(--xapp-messages-padding-right, 16px);padding-bottom:var(--xapp-messages-padding-bottom, 0);padding-left:var(--xapp-messages-padding-left, 20px)}.message-list-container__chips{flex:0 0 auto;border-top:solid 1px #ccc;margin-top:auto}.message-list-container__chips--empty{flex-basis:0;border:none;overflow:hidden}.message-form .section{margin-bottom:16px}.message-form .label{display:block;margin-bottom:4px;color:var(--xapp-primary-color, #616161)}.message-form input,.message-form textarea{border:1px solid #ddd;border-radius:4px;outline-width:0;width:100%;font-size:14px;box-sizing:border-box}.message-form input{height:32px;padding:0 10px}.message-form textarea{padding:8px 10px;min-height:100px;resize:none;overflow-y:auto}.message-form__submit{width:100%;background-color:var(--xapp-primary-color, #616161);color:#fff}.message-form--shrink-enter{opacity:.01;position:relative;top:100px}.message-form--shrink-enter-active{position:relative;top:0;opacity:1;transition:opacity 500ms,top 500ms;transition-delay:500ms}.message-form--shrink-exit{opacity:.5;position:relative;top:0}.message-form--shrink-exit-active{top:-200px;opacity:.01;transition:top 500ms,opacity 500ms}.message-form--grow-enter{opacity:.5;position:relative;top:-200px}.message-form--grow-enter-active{position:relative;top:0;opacity:1;transition:opacity 500ms,top 500ms}.message-form--grow-exit{opacity:.5;position:relative;top:0;height:50px}.message-form--grow-exit-active{top:-100px;height:0;opacity:.01;transition:top 500ms,opacity 500ms,height 500ms}.message-form--sent .button-resend{width:100%;margin-top:16px;background-color:var(--xapp-primary-color, #616161);color:#fff}@keyframes typing-animation{0%{transform:translateY(0px)}28%{transform:translateY(-5px)}44%{transform:translateY(0px)}}.typing-indicator{height:20px;display:inline-flex;align-items:center}.typing-indicator-part:nth-child(1){animation-delay:200ms}.typing-indicator-part:nth-child(2){animation-delay:300ms}.typing-indicator-part:nth-child(3){animation-delay:400ms}.typing-indicator-part{display:inline-block;animation:typing-animation 1.5s infinite ease-in-out;border-radius:50%;width:7px;height:7px;margin:0 3px;background-color:#7a7a7a}@font-face{font-family:OpenSansSemibold;font-style:normal;font-weight:600;font-display:swap;src:local("Open Sans SemiBold"),local("OpenSans-SemiBold"),url(https://fonts.gstatic.com/s/opensans/v17/mem5YaGs126MiZpBA-UNirkOUuhpKKSTjw.woff2) format("woff2")}@font-face{font-family:RobotoRegular;font-style:normal;font-weight:400;font-display:swap;src:local("Roboto"),local("Roboto-Regular"),url(https://fonts.gstatic.com/s/roboto/v20/KFOmCnqEu92Fr1Mu4mxKKTU1Kg.woff2) format("woff2")}@font-face{font-family:RobotoMedium;font-style:oblique;font-weight:500;font-display:swap;src:local("Roboto Medium"),local("Roboto-Medium"),url(https://fonts.gstatic.com/s/roboto/v20/KFOlCnqEu92Fr1MmEU9fBBc4AMP6lQ.woff2) format("woff2")}.widget-container{background:#fff;display:flex;flex-flow:column nowrap;width:100%;height:100%;visibility:hidden;font-family:RobotoRegular,serif;box-shadow:0 5px 40px rgba(0,0,0,.16);overflow:hidden;border-radius:var(--xapp-widget-border-radius, 10px);border:var(--xapp-widget-border-width, 0px) solid var(--xapp-widget-border-color, var(--xapp-primary-color, #616161));box-sizing:border-box}.widget-container *,.widget-container *:before,.widget-container *:after{box-sizing:border-box}.widget-container--normal,.widget-container--static{position:fixed;z-index:var(--xapp-widget-z-index, 1000);right:var(--xapp-widget-margin-right, 10px);bottom:var(--xapp-widget-margin-bottom, 10px)}.widget-container--normal.visible,.widget-container--static.visible{width:min(
|
|
2
2
|
var(--xapp-widget-width, 400px),
|
|
3
3
|
100vw - var(--xapp-widget-margin-left, 10px) - var(--xapp-widget-margin-right, 10px)
|
|
4
4
|
);height:min(
|
|
5
5
|
var(--xapp-widget-height, 500px),
|
|
6
6
|
100vh - var(--xapp-widget-margin-top, 10px) - var(--xapp-widget-margin-bottom, 10px)
|
|
7
|
-
)}.widget-container--docked{width:100%;height:100%;border-radius:0}.widget-container:not(.visible){animation:widget-hide .5s backwards;width:64px;height:64px}.widget-container.visible{animation:widget-show .5s forwards}.message-svg path{fill:var(--xapp-primary-color, #616161)}.chat-msg{line-height:20px;font-size:14px;margin-left:48px;max-width:var(--xapp-messages-max-width, 240px)}.chat-msg--expand{max-width:calc(100% - 48px);width:calc(100% - 48px)}.chat-msg__fullwidth{max-width:100%;width:100%}.chat-msg--no-ava{margin-left:0}.chat-typing-progress .chat-msg{color:#30375b}.visitor .chat-text-container{padding-right:20px}.chat-media-container{border-radius:8px;border:1px solid #ddd;overflow:hidden}.chat-img{min-width:180px;min-height:120px;background-position:center;background-size:cover}.ts-msg-container{text-align:center;margin-bottom:16px}.ts-msg{font-size:12px;color:#bfbfbf}.system-msg-container{text-align:center;margin-bottom:16px}.system-msg{font-size:14px;color:#bfbfbf}.chat-rating-card{padding-bottom:16px;text-align:center}.buttons-container{display:flex;flex-flow:row nowrap;align-items:center;justify-content:center;width:100%}.buttons-container .button{flex-grow:1}.buttons-container .button:not(:last-child){margin-right:8px}.buttons-container .button-card{flex-grow:0}.buttons-container .button-card:not(:last-child){margin-right:8px}@keyframes widget-show{0%{visibility:hidden;opacity:0}1%{visibility:visible;opacity:0;transform:translateY(50%)}100%{visibility:visible;opacity:1;transform:translateY(0)}}@keyframes widget-hide{0%{transform:translateY(0)}99%{opacity:0;transform:translateY(50%)}100%{visibility:hidden;opacity:0}}@keyframes widget-show-grow{0%{visibility:hidden;opacity:0}1%{visibility:visible;opacity:0;transform:scale(0.5)}100%{visibility:visible;opacity:1;transform:scale(1)}}@keyframes widget-hide-shrink{0%{visibility:visible;opacity:1;transform:scale(1)}99%{visibility:visible;opacity:0;transform:scale(0.5)}100%{visibility:hidden;opacity:0}}.xa-spinner-container{z-index:var(--xapp-widget-z-index, 1000);position:absolute;width:100%;height:100%;display:flex;align-items:center;background:#fff;transition:visibility 500ms,opacity 500ms;visibility:hidden;opacity:0;top:0 !important;left:0 !important}.xa-spinner-container.visible{visibility:visible;opacity:1}.xa-spinner{width:40px;height:40px;margin:100px auto;background-color:var(--xapp-primary-color, #616161);border-radius:100%;-webkit-animation:sk-scaleout 1s infinite ease-in-out;animation:sk-scaleout 1s infinite ease-in-out}.xa-chevron{width:100%;height:100%;background:unset;border:unset;padding:unset}@-webkit-keyframes sk-scaleout{0%{transform:scale(0)}100%{transform:scale(1);opacity:0}}@keyframes sk-scaleout{0%{transform:scale(0)}100%{transform:scale(1);opacity:0}}@media screen and (max-width: 640px){.xa-chevron{height:44px;height:44px}}.restartModal{display:none;position:fixed;z-index:100;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:#000;background-color:rgba(0,0,0,.4);-webkit-animation-name:fadeIn;-webkit-animation-duration:.4s;animation-name:fadeIn;animation-duration:.4s}.modalContent{border-radius:20px;box-shadow:rgba(100,100,111,.2) 0px 7px 29px 0px;position:fixed;bottom:-10px;z-index:200;padding:20px;background-color:#fff;width:100%;-webkit-animation-name:slideIn;-webkit-animation-duration:.4s;animation-name:slideIn;animation-duration:.4s}.modalBody h2{color:#027db6;text-align:center;font-weight:700}.modalBody p{color:rgba(98,98,98,.6666666667)}.modalActions{margin:25px 0;justify-content:center;display:flex;gap:1em}.modalActions button{padding:10px 20px;border-radius:10px;transition:all .5s;cursor:pointer}.modalActions button:hover{opacity:.7}.modalActions .cancelBtn{color:#027db6;border:solid 1px #027db6;background:rgba(0,0,0,0)}.modalActions .restartBtn{background:#027db6;color:#fff;border:none}@-webkit-keyframes slideIn{from{bottom:-300px;opacity:0}to{bottom:-10px;opacity:1}}@keyframes slideIn{from{bottom:-300px;opacity:0}to{bottom:-10px;opacity:1}}@-webkit-keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes typing-animation{0%{transform:translateY(0px)}28%{transform:translateY(-5px)}44%{transform:translateY(0px)}}.typing-indicator{height:20px;display:inline-flex;align-items:center}.typing-indicator-part:nth-child(1){animation-delay:200ms}.typing-indicator-part:nth-child(2){animation-delay:300ms}.typing-indicator-part:nth-child(3){animation-delay:400ms}.typing-indicator-part{display:inline-block;animation:typing-animation 1.5s infinite ease-in-out;border-radius:50%;width:7px;height:7px;margin:0 3px;background-color:#7a7a7a}.chat-footer{position:relative;background-color:var(--xapp-footer-background, var(--xapp-primary-color, #616161)) !important}.chat-footer__menu-icon{border-top:solid var(--xapp-footer-border-width, 0px) var(--xapp-footer-border-color, var(--xapp-primary-color, #616161));z-index:999;padding:6px 0;flex-shrink:0;display:flex;justify-content:center}.chat-footer__menu-icon+.chat-footer__input{margin-top:-6px}.chat-footer__input{margin-top:6px;margin-bottom:6px}.xappw-chat-footer__suggestions{position:absolute;bottom:100%;left:0;right:0;overflow:hidden;z-index:100}.background-footer .chat-footer{background-color:#616161 !important}.server-offline{position:absolute;top:0;right:0;left:0;bottom:0;z-index:5000;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center}.xappw-admin-input-container{flex-shrink:0;z-index:999;padding-left:20px;padding-right:20px;padding-bottom:0;padding-top:10px}.xappw-admin-input-container:not(.visible){display:none}.xappw-admin-input-container.drag-drop-zone{outline:3px dashed gray;outline-offset:-3px}.xappw-admin-input-form{display:flex;align-items:center;overflow:hidden;line-height:48px;position:relative}.xappw-admin-input-form__buttons{display:flex;align-items:center;right:10px;z-index:2;margin-right:10px}.xappw-admin-input-form__btn{width:56px}.xappw-admin-input{width:calc(100% - 60px);min-height:32px;padding:7px 10px;line-height:normal;display:inline-block;box-sizing:border-box;font-family:var(--xapp-input-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-input-font-weight, normal);font-size:var(--xapp-input-font-size, 14px);font-style:var(--xapp-input-font-style, normal);color:var(--xapp-input-text-color, #000);outline-width:0;border:var(--xapp-input-border-width, #fff) solid var(--xapp-input-border-color, #fff);border-radius:var(--xapp-input-border-radius, 20px);background:var(--xapp-input-background, #fff);margin:auto}.xappw-admin-input input:focus::placeholder{color:rgba(0,0,0,0)}.xappw-admin-input input::-webkit-input-placeholder{font-family:var(--xapp-input-placeholder-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-input-placeholder-font-weight, normal);font-size:var(--xapp-input-placeholder-font-size, 14px);font-style:var(--xapp-input-placeholder-font-style, normal);color:var(--xapp-input-placeholder-text-color, #e1e2e1)}.xappw-admin-input input:-moz-placeholder{font-family:var(--xapp-input-placeholder-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-input-placeholder-font-weight, normal);font-size:var(--xapp-input-placeholder-font-size, 14px);font-style:var(--xapp-input-placeholder-font-style, normal);color:var(--xapp-input-placeholder-text-color, #e1e2e1)}.xappw-admin-input input::-moz-placeholder{font-family:var(--xapp-input-placeholder-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-input-placeholder-font-weight, normal);font-size:var(--xapp-input-placeholder-font-size, 14px);font-style:var(--xapp-input-placeholder-font-style, normal);color:var(--xapp-input-placeholder-text-color, #e1e2e1)}.xappw-admin-input input:-ms-input-placeholder{font-family:var(--xapp-input-placeholder-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-input-placeholder-font-weight, normal);font-size:var(--xapp-input-placeholder-font-size, 14px);font-style:var(--xapp-input-placeholder-font-style, normal);color:var(--xapp-input-placeholder-text-color, #e1e2e1)}.xappw-admin-input input::placeholder{font-family:var(--xapp-input-placeholder-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-input-placeholder-font-weight, normal);font-size:var(--xapp-input-placeholder-font-size, 14px);font-style:var(--xapp-input-placeholder-font-style, normal);color:var(--xapp-input-placeholder-text-color, #e1e2e1)}.xappw-admin-input__input{border:none;outline:none;font-size:inherit;line-height:inherit}.xappw-admin-input{z-index:1}@media screen and (max-width: 640px){.xappw-admin-input-form{height:44px}}.chat-footer__branding{text-align:end;padding-right:20px;padding-bottom:12px;font-family:var(--xapp-footer-branding-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-footer-branding-font-weight, normal);font-size:var(--xapp-footer-branding-font-size, 14px);font-style:var(--xapp-footer-branding-font-style, normal);color:var(--xapp-footer-branding-text-color, rgba(255, 255, 255, 0.87))}.xapp-search-icon-button{border:none;background:none;cursor:pointer;padding:0;display:flex;align-items:center}.xapp-search-icon-button svg{display:block;margin:auto;height:100%}.xapp-search-icon-button__content{display:flex;width:100%}.xapp-search-icon-button:focus-visible{outline:none;filter:invert(100%)}@media screen and (max-width: 640px){.xapp-search-icon-button{box-sizing:border-box;padding:12px;min-height:44px;min-width:44px}}.xappw-message-bubble{border-radius:10px;padding:10px;background:var(--xapp-bubble-background, #fff)}.xappw-rich-input__input{display:block !important;width:calc(100% - 50px) !important;height:37px;border:none !important;outline:none !important;box-sizing:border-box !important;margin:0 !important;font-size:inherit !important;line-height:inherit;color:inherit !important;background-color:inherit !important}.xappw-rich-input__input:focus{color:inherit !important}@media screen and (max-width: 640px){.xappw-rich-input__input{width:calc(100% - 90px)}}.xapp-search-rich-text{display:inline-block;max-width:100%;overflow:hidden;white-space:pre-wrap}.xappw-suggestions-group__items{display:flex;flex-direction:column;padding:2px 0}.xappw-suggestions-group__heading{margin:0 16px}.xappw-suggestions-group-heading{display:flex;align-items:center;font-size:12px;padding:2px 0;color:#061739}.xappw-suggestions-group-heading:after{content:"";border-top:solid 1px #d4d4d4;flex:1 1 auto;margin-left:8px}.xappw-suggestions-item{padding:0 0 0 24px;box-sizing:border-box;width:100%;white-space:nowrap;display:flex;align-items:center;overflow:hidden;font-size:15px;cursor:pointer;border-bottom:solid 1px rgba(0,0,0,0);color:#061739}.xappw-suggestions-item--current,.xappw-suggestions-item:hover{background-color:#3395d2;color:#fff;text-decoration:underline}@media(hover: hover){.xappw-suggestions-item--current .xappw-suggestions-item__actions,.xappw-suggestions-item:hover .xappw-suggestions-item__actions{visibility:visible;color:#fff}}.xappw-suggestions-item__texts{padding:3px 0;flex:1 1 auto;overflow:hidden}.xappw-suggestions-item__actions{flex:0 0 auto;display:flex;margin-left:8px}@media(hover: hover){.xappw-suggestions-item__actions{visibility:hidden}}.xappw-suggestions-list{display:flex;flex-direction:column}.xapp-search-rich-text-span{flex:0 1 auto;display:inline-block;max-width:100%}.xapp-search-rich-text-span:last-child{overflow:hidden;white-space:pre;text-overflow:ellipsis}.xapp-search-rich-text-bold-span{font-weight:bold}.xapp-search-rich-text-input-span{text-decoration:none;font-size:inherit;height:calc(1.5em - 2px);line-height:1em;width:8em;color:inherit}.xapp-search-rich-text-input-span--readonly{border:dashed 1px green;color:green;height:calc(1em - 2px)}.xapp-search-rich-text-normal-span{font-weight:normal}.xappw-suggestions{display:flex;flex-direction:column;font-family:RobotoRegular,serif}.xappw-suggestions__answer{background-color:#d9d9d9;padding:8px 11px;border-radius:12px}.xappw-suggestions__groups{background-color:#f3f3f3;padding:8px 0}.xappw-suggestions__use{width:28px;padding:4px;color:inherit}.xappw-suggestions__use svg{display:block;margin:auto;height:100%}.xappw-input-container{flex-shrink:0;z-index:999;padding:6px 20px}.xappw-input-container:not(.visible){display:none}.xappw-input-container.drag-drop-zone{outline:3px dashed gray;outline-offset:-3px}.xappw-input-form{display:flex;align-items:center;overflow:hidden;line-height:48px;position:relative;border-radius:var(--xapp-input-border-radius, 20px);background:var(--xapp-input-background, #fff)}.xappw-input-form__buttons{display:flex;align-items:center;position:absolute;right:10px;z-index:2}.xappw-input-form__btn{min-width:20px;width:20px;height:16px}.xappw-input{min-height:32px;padding:7px 10px;line-height:normal;display:inline-block;box-sizing:border-box;font-family:var(--xapp-input-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-input-font-weight, normal);font-size:var(--xapp-input-font-size, 14px);font-style:var(--xapp-input-font-style, normal);color:var(--xapp-input-text-color, #000);outline-width:0;flex-grow:1;border:var(--xapp-input-border-width, #fff) solid var(--xapp-input-border-color, #fff);background:rgba(0,0,0,0)}.xappw-input input:focus::placeholder{color:rgba(0,0,0,0)}.xappw-input input::-webkit-input-placeholder{font-family:var(--xapp-input-placeholder-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-input-placeholder-font-weight, normal);font-size:var(--xapp-input-placeholder-font-size, 14px);font-style:var(--xapp-input-placeholder-font-style, normal);color:var(--xapp-input-placeholder-text-color, #e1e2e1)}.xappw-input input:-moz-placeholder{font-family:var(--xapp-input-placeholder-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-input-placeholder-font-weight, normal);font-size:var(--xapp-input-placeholder-font-size, 14px);font-style:var(--xapp-input-placeholder-font-style, normal);color:var(--xapp-input-placeholder-text-color, #e1e2e1)}.xappw-input input::-moz-placeholder{font-family:var(--xapp-input-placeholder-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-input-placeholder-font-weight, normal);font-size:var(--xapp-input-placeholder-font-size, 14px);font-style:var(--xapp-input-placeholder-font-style, normal);color:var(--xapp-input-placeholder-text-color, #e1e2e1)}.xappw-input input:-ms-input-placeholder{font-family:var(--xapp-input-placeholder-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-input-placeholder-font-weight, normal);font-size:var(--xapp-input-placeholder-font-size, 14px);font-style:var(--xapp-input-placeholder-font-style, normal);color:var(--xapp-input-placeholder-text-color, #e1e2e1)}.xappw-input input::placeholder{font-family:var(--xapp-input-placeholder-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-input-placeholder-font-weight, normal);font-size:var(--xapp-input-placeholder-font-size, 14px);font-style:var(--xapp-input-placeholder-font-style, normal);color:var(--xapp-input-placeholder-text-color, #e1e2e1)}.xappw-input{z-index:1}@media screen and (max-width: 640px){.xappw-input-form{height:44px}}.xappw-send-button{color:var(--xapp-send-button-color, #505050) !important;margin:0;background:inherit !important}.xappw-custom-send-button{display:inline-flex;cursor:pointer;user-select:none;width:var(--xapp-send-button-width, 20px);border:unset;background:unset;padding:unset}.xappw-custom-send-button>img{width:100%;height:auto}@media screen and (max-width: 640px){.xappw-send-button{box-sizing:border-box !important;padding:12px !important;min-height:44px;min-width:44px;margin:0}.xappw-custom-send-button{box-sizing:border-box !important;padding:12px !important;min-height:44px;min-width:44px;margin:0}}
|
|
7
|
+
)}.widget-container--docked{width:100%;height:100%;border-radius:0}.widget-container:not(.visible){animation:widget-hide .5s backwards;width:64px;height:64px}.widget-container.visible{animation:widget-show .5s forwards}.message-svg path{fill:var(--xapp-primary-color, #616161)}.chat-msg{line-height:20px;font-size:14px;margin-left:48px;max-width:var(--xapp-messages-max-width, 240px)}.chat-msg--expand{max-width:calc(100% - 48px);width:calc(100% - 48px)}.chat-msg__fullwidth{max-width:100%;width:100%}.chat-msg--no-ava{margin-left:0}.chat-typing-progress .chat-msg{color:#30375b}.visitor .chat-text-container{padding-right:20px}.chat-media-container{border-radius:8px;border:1px solid #ddd;overflow:hidden}.chat-img{min-width:180px;min-height:120px;background-position:center;background-size:cover}.ts-msg-container{text-align:center;margin-bottom:16px}.ts-msg{font-size:12px;color:#bfbfbf}.system-msg-container{text-align:center;margin-bottom:16px}.system-msg{font-size:14px;color:#bfbfbf}.chat-rating-card{padding-bottom:16px;text-align:center}.buttons-container{display:flex;flex-flow:row nowrap;align-items:center;justify-content:center;width:100%}.buttons-container .button{flex-grow:1}.buttons-container .button:not(:last-child){margin-right:8px}.buttons-container .button-card{flex-grow:0}.buttons-container .button-card:not(:last-child){margin-right:8px}@keyframes widget-show{0%{visibility:hidden;opacity:0}1%{visibility:visible;opacity:0;transform:translateY(50%)}100%{visibility:visible;opacity:1;transform:translateY(0)}}@keyframes widget-hide{0%{transform:translateY(0)}99%{opacity:0;transform:translateY(50%)}100%{visibility:hidden;opacity:0}}@keyframes widget-show-grow{0%{visibility:hidden;opacity:0}1%{visibility:visible;opacity:0;transform:scale(0.5)}100%{visibility:visible;opacity:1;transform:scale(1)}}@keyframes widget-hide-shrink{0%{visibility:visible;opacity:1;transform:scale(1)}99%{visibility:visible;opacity:0;transform:scale(0.5)}100%{visibility:hidden;opacity:0}}.xa-spinner-container{z-index:var(--xapp-widget-z-index, 1000);position:absolute;width:100%;height:100%;display:flex;align-items:center;background:#fff;transition:visibility 500ms,opacity 500ms;visibility:hidden;opacity:0;top:0 !important;left:0 !important}.xa-spinner-container.visible{visibility:visible;opacity:1}.xa-spinner{width:40px;height:40px;margin:100px auto;background-color:var(--xapp-primary-color, #616161);border-radius:100%;-webkit-animation:sk-scaleout 1s infinite ease-in-out;animation:sk-scaleout 1s infinite ease-in-out}.xa-chevron{width:100%;height:100%;background:unset;border:unset;padding:unset}@-webkit-keyframes sk-scaleout{0%{transform:scale(0)}100%{transform:scale(1);opacity:0}}@keyframes sk-scaleout{0%{transform:scale(0)}100%{transform:scale(1);opacity:0}}@media screen and (max-width: 640px){.xa-chevron{height:44px;height:44px}}.restartModal{display:none;position:fixed;z-index:100;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:#000;background-color:rgba(0,0,0,.4);-webkit-animation-name:fadeIn;-webkit-animation-duration:.4s;animation-name:fadeIn;animation-duration:.4s}.modalContent{border-radius:20px;box-shadow:rgba(100,100,111,.2) 0px 7px 29px 0px;position:fixed;bottom:-10px;z-index:200;padding:20px;background-color:#fff;width:100%;-webkit-animation-name:slideIn;-webkit-animation-duration:.4s;animation-name:slideIn;animation-duration:.4s}.modalBody h2{color:#027db6;text-align:center;font-weight:700}.modalBody p{color:rgba(98,98,98,.6666666667)}.modalActions{margin:25px 0;justify-content:center;display:flex;gap:1em}.modalActions button{padding:10px 20px;border-radius:10px;transition:all .5s;cursor:pointer}.modalActions button:hover{opacity:.7}.modalActions .cancelBtn{color:#027db6;border:solid 1px #027db6;background:rgba(0,0,0,0)}.modalActions .restartBtn{background:#027db6;color:#fff;border:none}@-webkit-keyframes slideIn{from{bottom:-300px;opacity:0}to{bottom:-10px;opacity:1}}@keyframes slideIn{from{bottom:-300px;opacity:0}to{bottom:-10px;opacity:1}}@-webkit-keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.card-container{padding-top:16px;position:relative}.card-container__content{color:#555;border-radius:8px;border:1px solid #ddd;padding:24px 16px 16px 16px;font-size:14px}.card-container__title{text-align:center;color:var(--xapp-primary-color, #616161);margin-bottom:8px}.card-container__icon{width:32px;height:32px;position:relative;background-color:#fff;border:1px solid #e0e0e0;border-radius:50%;box-shadow:0 2px 4px 0 rgba(0,0,0,.1);margin:-16px auto;z-index:999}.card-container__icon svg{display:block;margin:auto;height:100%}.chat-footer{position:relative;background-color:var(--xapp-footer-background, var(--xapp-primary-color, #616161)) !important}.chat-footer__menu-icon{border-top:solid var(--xapp-footer-border-width, 0px) var(--xapp-footer-border-color, var(--xapp-primary-color, #616161));z-index:999;padding:6px 0;flex-shrink:0;display:flex;justify-content:center}.chat-footer__menu-icon+.chat-footer__input{margin-top:-6px}.chat-footer__input{margin-top:6px;margin-bottom:6px}.xappw-chat-footer__suggestions{position:absolute;bottom:100%;left:0;right:0;overflow:hidden;z-index:100}.background-footer .chat-footer{background-color:#616161 !important}.server-offline{position:absolute;top:0;right:0;left:0;bottom:0;z-index:5000;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center}.xappw-admin-input-container{flex-shrink:0;z-index:999;padding-left:20px;padding-right:20px;padding-bottom:0;padding-top:10px}.xappw-admin-input-container:not(.visible){display:none}.xappw-admin-input-container.drag-drop-zone{outline:3px dashed gray;outline-offset:-3px}.xappw-admin-input-form{display:flex;align-items:center;overflow:hidden;line-height:48px;position:relative}.xappw-admin-input-form__buttons{display:flex;align-items:center;right:10px;z-index:2;margin-right:10px}.xappw-admin-input-form__btn{width:56px}.xappw-admin-input{width:calc(100% - 60px);min-height:32px;padding:7px 10px;line-height:normal;display:inline-block;box-sizing:border-box;font-family:var(--xapp-input-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-input-font-weight, normal);font-size:var(--xapp-input-font-size, 14px);font-style:var(--xapp-input-font-style, normal);color:var(--xapp-input-text-color, #000);outline-width:0;border:var(--xapp-input-border-width, #fff) solid var(--xapp-input-border-color, #fff);border-radius:var(--xapp-input-border-radius, 20px);background:var(--xapp-input-background, #fff);margin:auto}.xappw-admin-input input:focus::placeholder{color:rgba(0,0,0,0)}.xappw-admin-input input::-webkit-input-placeholder{font-family:var(--xapp-input-placeholder-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-input-placeholder-font-weight, normal);font-size:var(--xapp-input-placeholder-font-size, 14px);font-style:var(--xapp-input-placeholder-font-style, normal);color:var(--xapp-input-placeholder-text-color, #e1e2e1)}.xappw-admin-input input:-moz-placeholder{font-family:var(--xapp-input-placeholder-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-input-placeholder-font-weight, normal);font-size:var(--xapp-input-placeholder-font-size, 14px);font-style:var(--xapp-input-placeholder-font-style, normal);color:var(--xapp-input-placeholder-text-color, #e1e2e1)}.xappw-admin-input input::-moz-placeholder{font-family:var(--xapp-input-placeholder-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-input-placeholder-font-weight, normal);font-size:var(--xapp-input-placeholder-font-size, 14px);font-style:var(--xapp-input-placeholder-font-style, normal);color:var(--xapp-input-placeholder-text-color, #e1e2e1)}.xappw-admin-input input:-ms-input-placeholder{font-family:var(--xapp-input-placeholder-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-input-placeholder-font-weight, normal);font-size:var(--xapp-input-placeholder-font-size, 14px);font-style:var(--xapp-input-placeholder-font-style, normal);color:var(--xapp-input-placeholder-text-color, #e1e2e1)}.xappw-admin-input input::placeholder{font-family:var(--xapp-input-placeholder-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-input-placeholder-font-weight, normal);font-size:var(--xapp-input-placeholder-font-size, 14px);font-style:var(--xapp-input-placeholder-font-style, normal);color:var(--xapp-input-placeholder-text-color, #e1e2e1)}.xappw-admin-input__input{border:none;outline:none;font-size:inherit;line-height:inherit}.xappw-admin-input{z-index:1}@media screen and (max-width: 640px){.xappw-admin-input-form{height:44px}}.chat-footer__branding{text-align:end;padding-right:20px;padding-bottom:12px;font-family:var(--xapp-footer-branding-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-footer-branding-font-weight, normal);font-size:var(--xapp-footer-branding-font-size, 14px);font-style:var(--xapp-footer-branding-font-style, normal);color:var(--xapp-footer-branding-text-color, rgba(255, 255, 255, 0.87))}.xapp-search-icon-button{border:none;background:none;cursor:pointer;padding:0;display:flex;align-items:center}.xapp-search-icon-button svg{display:block;margin:auto;height:100%}.xapp-search-icon-button__content{display:flex;width:100%}.xapp-search-icon-button:focus-visible{outline:none;filter:invert(100%)}@media screen and (max-width: 640px){.xapp-search-icon-button{box-sizing:border-box;padding:12px;min-height:44px;min-width:44px}}.xappw-message-bubble{border-radius:10px;padding:10px;background:var(--xapp-bubble-background, #fff)}.xappw-rich-input__input{display:block !important;width:calc(100% - 50px) !important;height:37px;border:none !important;outline:none !important;box-sizing:border-box !important;margin:0 !important;font-size:inherit !important;line-height:inherit;color:inherit !important;background-color:inherit !important}.xappw-rich-input__input:focus{color:inherit !important}@media screen and (max-width: 640px){.xappw-rich-input__input{width:calc(100% - 90px)}}.xapp-search-rich-text{display:inline-block;max-width:100%;overflow:hidden;white-space:pre-wrap}.xappw-suggestions-group__items{display:flex;flex-direction:column;padding:2px 0}.xappw-suggestions-group__heading{margin:0 16px}.xappw-suggestions-group-heading{display:flex;align-items:center;font-size:12px;padding:2px 0;color:#061739}.xappw-suggestions-group-heading:after{content:"";border-top:solid 1px #d4d4d4;flex:1 1 auto;margin-left:8px}.xappw-suggestions-item{padding:0 0 0 24px;box-sizing:border-box;width:100%;white-space:nowrap;display:flex;align-items:center;overflow:hidden;font-size:15px;cursor:pointer;border-bottom:solid 1px rgba(0,0,0,0);color:#061739}.xappw-suggestions-item--current,.xappw-suggestions-item:hover{background-color:#3395d2;color:#fff;text-decoration:underline}@media(hover: hover){.xappw-suggestions-item--current .xappw-suggestions-item__actions,.xappw-suggestions-item:hover .xappw-suggestions-item__actions{visibility:visible;color:#fff}}.xappw-suggestions-item__texts{padding:3px 0;flex:1 1 auto;overflow:hidden}.xappw-suggestions-item__actions{flex:0 0 auto;display:flex;margin-left:8px}@media(hover: hover){.xappw-suggestions-item__actions{visibility:hidden}}.xappw-suggestions-list{display:flex;flex-direction:column}.xapp-search-rich-text-span{flex:0 1 auto;display:inline-block;max-width:100%}.xapp-search-rich-text-span:last-child{overflow:hidden;white-space:pre;text-overflow:ellipsis}.xapp-search-rich-text-bold-span{font-weight:bold}.xapp-search-rich-text-input-span{text-decoration:none;font-size:inherit;height:calc(1.5em - 2px);line-height:1em;width:8em;color:inherit}.xapp-search-rich-text-input-span--readonly{border:dashed 1px green;color:green;height:calc(1em - 2px)}.xapp-search-rich-text-normal-span{font-weight:normal}.xappw-suggestions{display:flex;flex-direction:column;font-family:RobotoRegular,serif}.xappw-suggestions__answer{background-color:#d9d9d9;padding:8px 11px;border-radius:12px}.xappw-suggestions__groups{background-color:#f3f3f3;padding:8px 0}.xappw-suggestions__use{width:28px;padding:4px;color:inherit}.xappw-suggestions__use svg{display:block;margin:auto;height:100%}.xappw-input-container{flex-shrink:0;z-index:999;padding:6px 20px}.xappw-input-container:not(.visible){display:none}.xappw-input-container.drag-drop-zone{outline:3px dashed gray;outline-offset:-3px}.xappw-input-form{display:flex;align-items:center;overflow:hidden;line-height:48px;position:relative;border-radius:var(--xapp-input-border-radius, 20px);background:var(--xapp-input-background, #fff)}.xappw-input-form__buttons{display:flex;align-items:center;position:absolute;right:10px;z-index:2}.xappw-input-form__btn{min-width:20px;width:20px;height:16px}.xappw-input{min-height:32px;padding:7px 10px;line-height:normal;display:inline-block;box-sizing:border-box;font-family:var(--xapp-input-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-input-font-weight, normal);font-size:var(--xapp-input-font-size, 14px);font-style:var(--xapp-input-font-style, normal);color:var(--xapp-input-text-color, #000);outline-width:0;flex-grow:1;border:var(--xapp-input-border-width, #fff) solid var(--xapp-input-border-color, #fff);background:rgba(0,0,0,0)}.xappw-input input:focus::placeholder{color:rgba(0,0,0,0)}.xappw-input input::-webkit-input-placeholder{font-family:var(--xapp-input-placeholder-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-input-placeholder-font-weight, normal);font-size:var(--xapp-input-placeholder-font-size, 14px);font-style:var(--xapp-input-placeholder-font-style, normal);color:var(--xapp-input-placeholder-text-color, #e1e2e1)}.xappw-input input:-moz-placeholder{font-family:var(--xapp-input-placeholder-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-input-placeholder-font-weight, normal);font-size:var(--xapp-input-placeholder-font-size, 14px);font-style:var(--xapp-input-placeholder-font-style, normal);color:var(--xapp-input-placeholder-text-color, #e1e2e1)}.xappw-input input::-moz-placeholder{font-family:var(--xapp-input-placeholder-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-input-placeholder-font-weight, normal);font-size:var(--xapp-input-placeholder-font-size, 14px);font-style:var(--xapp-input-placeholder-font-style, normal);color:var(--xapp-input-placeholder-text-color, #e1e2e1)}.xappw-input input:-ms-input-placeholder{font-family:var(--xapp-input-placeholder-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-input-placeholder-font-weight, normal);font-size:var(--xapp-input-placeholder-font-size, 14px);font-style:var(--xapp-input-placeholder-font-style, normal);color:var(--xapp-input-placeholder-text-color, #e1e2e1)}.xappw-input input::placeholder{font-family:var(--xapp-input-placeholder-font-family, "RobotoRegular", "serif");font-weight:var(--xapp-input-placeholder-font-weight, normal);font-size:var(--xapp-input-placeholder-font-size, 14px);font-style:var(--xapp-input-placeholder-font-style, normal);color:var(--xapp-input-placeholder-text-color, #e1e2e1)}.xappw-input{z-index:1}@media screen and (max-width: 640px){.xappw-input-form{height:44px}}.xappw-send-button{color:var(--xapp-send-button-color, #505050) !important;margin:0;background:inherit !important}.xappw-custom-send-button{display:inline-flex;cursor:pointer;user-select:none;width:var(--xapp-send-button-width, 20px);border:unset;background:unset;padding:unset}.xappw-custom-send-button>img{width:100%;height:auto}@media screen and (max-width: 640px){.xappw-send-button{box-sizing:border-box !important;padding:12px !important;min-height:44px;min-width:44px;margin:0}.xappw-custom-send-button{box-sizing:border-box !important;padding:12px !important;min-height:44px;min-width:44px;margin:0}}
|
package/dist/index.es.js
CHANGED
|
@@ -695,7 +695,7 @@ var CtaBubbleContainer = function (props) {
|
|
|
695
695
|
};
|
|
696
696
|
|
|
697
697
|
var ChatButton = function (props) {
|
|
698
|
-
return (React$1.createElement("button", { className: "xapp-chat-button ".concat(props.addClass || "").trim(), onClick: props.onClick },
|
|
698
|
+
return (React$1.createElement("button", { "aria-label": "open chat", className: "xapp-chat-button ".concat(props.addClass || "").trim(), onClick: props.onClick },
|
|
699
699
|
React$1.createElement("div", { id: "xapp-widget-button", className: "xapp-chat-button__btn", style: props.borderStyle && {
|
|
700
700
|
border: 'solid',
|
|
701
701
|
borderWidth: props.borderStyle.width,
|
|
@@ -1074,6 +1074,14 @@ var LogChat = /** @class */ (function () {
|
|
|
1074
1074
|
log("CLIENT: dispose:");
|
|
1075
1075
|
this.inner.dispose();
|
|
1076
1076
|
};
|
|
1077
|
+
LogChat.prototype.sleep = function () {
|
|
1078
|
+
log("CLIENT: sleep:");
|
|
1079
|
+
this.inner.sleep();
|
|
1080
|
+
};
|
|
1081
|
+
LogChat.prototype.wakeup = function () {
|
|
1082
|
+
log("CLIENT: wakeup:");
|
|
1083
|
+
this.inner.wakeup();
|
|
1084
|
+
};
|
|
1077
1085
|
return LogChat;
|
|
1078
1086
|
}());
|
|
1079
1087
|
|
|
@@ -2199,6 +2207,10 @@ var StentorDirectChat = /** @class */ (function () {
|
|
|
2199
2207
|
};
|
|
2200
2208
|
StentorDirectChat.prototype.dispose = function () {
|
|
2201
2209
|
};
|
|
2210
|
+
StentorDirectChat.prototype.sleep = function () {
|
|
2211
|
+
};
|
|
2212
|
+
StentorDirectChat.prototype.wakeup = function () {
|
|
2213
|
+
};
|
|
2202
2214
|
StentorDirectChat.prototype.postMessage = function (message) {
|
|
2203
2215
|
var _a, _b, _c, _d, _e;
|
|
2204
2216
|
return __awaiter$1(this, void 0, void 0, function () {
|
|
@@ -2460,6 +2472,10 @@ var StentorLocalChat = /** @class */ (function () {
|
|
|
2460
2472
|
};
|
|
2461
2473
|
StentorLocalChat.prototype.bargeIn = function () {
|
|
2462
2474
|
};
|
|
2475
|
+
StentorLocalChat.prototype.sleep = function () {
|
|
2476
|
+
};
|
|
2477
|
+
StentorLocalChat.prototype.wakeup = function () {
|
|
2478
|
+
};
|
|
2463
2479
|
return StentorLocalChat;
|
|
2464
2480
|
}());
|
|
2465
2481
|
|
|
@@ -2598,9 +2614,21 @@ function requestToMessage(botRequest, now) {
|
|
|
2598
2614
|
return responseMessage;
|
|
2599
2615
|
}
|
|
2600
2616
|
|
|
2617
|
+
var ROUTER_USER = "router";
|
|
2618
|
+
var serverInfo = {
|
|
2619
|
+
deviceId: "Router",
|
|
2620
|
+
userId: ROUTER_USER,
|
|
2621
|
+
isAdmin: false,
|
|
2622
|
+
displayName: "XAPP Server",
|
|
2623
|
+
urlAttributes: {
|
|
2624
|
+
path: [],
|
|
2625
|
+
query: {}
|
|
2626
|
+
}
|
|
2627
|
+
};
|
|
2601
2628
|
var StentorRouterChat = /** @class */ (function () {
|
|
2602
2629
|
function StentorRouterChat(config, options) {
|
|
2603
2630
|
var _a, _b;
|
|
2631
|
+
this.isDisposed = false;
|
|
2604
2632
|
this._userId = "";
|
|
2605
2633
|
this._sessionId = "";
|
|
2606
2634
|
this.accessToken = "";
|
|
@@ -2613,10 +2641,10 @@ var StentorRouterChat = /** @class */ (function () {
|
|
|
2613
2641
|
// Dig out the path parameters. Put them into the attributes.
|
|
2614
2642
|
// The WS url is the barebone domain.
|
|
2615
2643
|
var url = new URL(this.config.url);
|
|
2616
|
-
|
|
2644
|
+
this.appId = url.searchParams.get("appId");
|
|
2617
2645
|
var locationUrl = new URL(window.location.href);
|
|
2618
2646
|
this.isAdmin = locationUrl.searchParams.get("isAdmin") === "true";
|
|
2619
|
-
if (appId) {
|
|
2647
|
+
if (this.appId) {
|
|
2620
2648
|
// New Path if we have the appId on the query string
|
|
2621
2649
|
this.serverUrl = this.config.url;
|
|
2622
2650
|
this.urlAttributes.path = (_a = url.pathname) === null || _a === void 0 ? void 0 : _a.split("/");
|
|
@@ -2631,11 +2659,13 @@ var StentorRouterChat = /** @class */ (function () {
|
|
|
2631
2659
|
this.urlAttributes.path = urlPath.slice(1);
|
|
2632
2660
|
}
|
|
2633
2661
|
}
|
|
2634
|
-
log("WS url: ".concat(this.serverUrl, " isAdmin: ").concat(this.isAdmin, " attributes: ").concat(JSON.stringify(this.attributes)));
|
|
2662
|
+
log("WS url: ".concat(this.serverUrl, " isAdmin: ").concat(this.isAdmin, " attributes: ").concat(JSON.stringify(this.attributes), " appId: ").concat(this.appId));
|
|
2635
2663
|
this.configurableMessages = getConfigurableMessagesConfig(options.configurableMessages);
|
|
2664
|
+
this.noOfServerErrors = 0;
|
|
2636
2665
|
}
|
|
2637
2666
|
StentorRouterChat.prototype.init = function (dispatch) {
|
|
2638
2667
|
var _this = this;
|
|
2668
|
+
var _a, _b;
|
|
2639
2669
|
this.dispatch = dispatch;
|
|
2640
2670
|
this.setAccountStatus("offline");
|
|
2641
2671
|
// Register "handlers" for the incoming events
|
|
@@ -2648,10 +2678,12 @@ var StentorRouterChat = /** @class */ (function () {
|
|
|
2648
2678
|
}
|
|
2649
2679
|
else {
|
|
2650
2680
|
// Shut down
|
|
2681
|
+
err("SERVER: something is wrong. Going offline.");
|
|
2651
2682
|
_this.dispatch(setAccountStatus("offline"));
|
|
2652
2683
|
_this.dispatch(setConnectionStatus("offline"));
|
|
2653
2684
|
}
|
|
2654
2685
|
};
|
|
2686
|
+
// Server ping (not sent peroidically - at least not for now)
|
|
2655
2687
|
this.handlers["account status"] = function (_data, _sender, ts) {
|
|
2656
2688
|
dispatch({
|
|
2657
2689
|
type: "account_status",
|
|
@@ -2662,7 +2694,7 @@ var StentorRouterChat = /** @class */ (function () {
|
|
|
2662
2694
|
});
|
|
2663
2695
|
};
|
|
2664
2696
|
this.handlers["failure"] = function (data, sender, _ts) {
|
|
2665
|
-
err("
|
|
2697
|
+
err("SERVER: something's failed: type: ".concat(data.type, " tries: ").concat(data.tries, " error: ").concat(data.error));
|
|
2666
2698
|
var _a = _this.configurableMessages[data.tries], retry = _a.retry, delay = _a.delay, text = _a.text;
|
|
2667
2699
|
_this.sendFailureMessage(retry, data.delay || delay, text, sender);
|
|
2668
2700
|
};
|
|
@@ -2752,6 +2784,7 @@ var StentorRouterChat = /** @class */ (function () {
|
|
|
2752
2784
|
});
|
|
2753
2785
|
};
|
|
2754
2786
|
this.handlers["disconnect"] = function () {
|
|
2787
|
+
err("SERVER: requested disconnect");
|
|
2755
2788
|
_this.dispatch(setAccountStatus("offline"));
|
|
2756
2789
|
_this.dispatch(setConnectionStatus("offline"));
|
|
2757
2790
|
};
|
|
@@ -2760,24 +2793,46 @@ var StentorRouterChat = /** @class */ (function () {
|
|
|
2760
2793
|
_this.dispatch(setConnectionStatus("online"));
|
|
2761
2794
|
};
|
|
2762
2795
|
this.handlers["reconnect failed"] = function (_data) {
|
|
2796
|
+
err("SERVER: says re-connect failed");
|
|
2763
2797
|
_this.dispatch(setAccountStatus("offline"));
|
|
2764
2798
|
_this.dispatch(setConnectionStatus("offline"));
|
|
2765
2799
|
};
|
|
2766
2800
|
this.handlers["reconnect error"] = function (_data) {
|
|
2801
|
+
err("SERVER: says there was an error while re-connecting");
|
|
2767
2802
|
_this.dispatch(setAccountStatus("offline"));
|
|
2768
2803
|
};
|
|
2804
|
+
// Register the router as a pseudo-agent (serverInfo) so it can send messages (like internal errors)
|
|
2805
|
+
this.dispatch({
|
|
2806
|
+
type: "chat",
|
|
2807
|
+
detail: {
|
|
2808
|
+
type: "chat.memberjoin",
|
|
2809
|
+
user: {
|
|
2810
|
+
avatarPath: (_b = (_a = this.options) === null || _a === void 0 ? void 0 : _a.bot) === null || _b === void 0 ? void 0 : _b.avatarPath,
|
|
2811
|
+
displayName: serverInfo.displayName,
|
|
2812
|
+
nick: senderToNick(serverInfo),
|
|
2813
|
+
},
|
|
2814
|
+
timestamp: new Date().getTime(),
|
|
2815
|
+
},
|
|
2816
|
+
});
|
|
2769
2817
|
// pretend we are online. The emit() will connect
|
|
2770
2818
|
this.setAccountStatus("online");
|
|
2771
2819
|
this.setConnectionStatus("online");
|
|
2772
2820
|
};
|
|
2773
2821
|
StentorRouterChat.prototype.autoReconnect = function (wsCreate) {
|
|
2774
2822
|
var _this = this;
|
|
2823
|
+
if (this.noOfServerErrors === 0) {
|
|
2824
|
+
this.setConnectionStatus("pending");
|
|
2825
|
+
}
|
|
2775
2826
|
var setActStatus = this.setAccountStatus.bind(this);
|
|
2776
2827
|
var setConnStatus = this.setConnectionStatus.bind(this);
|
|
2777
2828
|
function startReconnecting() {
|
|
2778
2829
|
var interval = setInterval(function () {
|
|
2779
|
-
log("Re-creating WS connection");
|
|
2780
2830
|
var ws = wsCreate();
|
|
2831
|
+
if (!ws) {
|
|
2832
|
+
clearInterval(interval);
|
|
2833
|
+
return;
|
|
2834
|
+
}
|
|
2835
|
+
log("Re-created WS connection");
|
|
2781
2836
|
ws.onopen = function () {
|
|
2782
2837
|
log("Re-opened WS connection");
|
|
2783
2838
|
// We are connected
|
|
@@ -2789,7 +2844,10 @@ var StentorRouterChat = /** @class */ (function () {
|
|
|
2789
2844
|
}, 3000);
|
|
2790
2845
|
}
|
|
2791
2846
|
log("Creating WS connection");
|
|
2792
|
-
wsCreate();
|
|
2847
|
+
var ws = wsCreate();
|
|
2848
|
+
if (!ws) {
|
|
2849
|
+
return;
|
|
2850
|
+
}
|
|
2793
2851
|
this.ws.onclose = startReconnecting;
|
|
2794
2852
|
this.ws.onopen = function () {
|
|
2795
2853
|
log("Opened WS connection");
|
|
@@ -2800,7 +2858,10 @@ var StentorRouterChat = /** @class */ (function () {
|
|
|
2800
2858
|
};
|
|
2801
2859
|
StentorRouterChat.prototype.wsCreate = function () {
|
|
2802
2860
|
var _this = this;
|
|
2803
|
-
this.
|
|
2861
|
+
if (this.isDisposed) {
|
|
2862
|
+
log("Stopping reconnect for disposed router connector");
|
|
2863
|
+
return undefined;
|
|
2864
|
+
}
|
|
2804
2865
|
var url = new URL(this.serverUrl);
|
|
2805
2866
|
url.searchParams.set("userId", this._userId);
|
|
2806
2867
|
url.searchParams.set("isAdmin", "".concat(this.isAdmin));
|
|
@@ -2808,8 +2869,6 @@ var StentorRouterChat = /** @class */ (function () {
|
|
|
2808
2869
|
this.ws.onerror = function (ev) {
|
|
2809
2870
|
var _a;
|
|
2810
2871
|
err("Error in WS connection. Url: ".concat(url.toString(), " Type: ").concat(!ev ? "?" : ev.type, " Ready State: ").concat((_a = _this.ws) === null || _a === void 0 ? void 0 : _a.readyState));
|
|
2811
|
-
// TODO: Experimental. Let's not set it to "pending". We may have a timing issue and miss the "online"
|
|
2812
|
-
// this.setConnectionStatus("pending");
|
|
2813
2872
|
};
|
|
2814
2873
|
this.ws.onmessage = function (me) {
|
|
2815
2874
|
log("ROUTER says: ".concat(me.data));
|
|
@@ -2825,7 +2884,8 @@ var StentorRouterChat = /** @class */ (function () {
|
|
|
2825
2884
|
return this.ws;
|
|
2826
2885
|
};
|
|
2827
2886
|
StentorRouterChat.prototype.checkConnection = function () {
|
|
2828
|
-
|
|
2887
|
+
var _a;
|
|
2888
|
+
return ((_a = this.ws) === null || _a === void 0 ? void 0 : _a.readyState) === WebSocket.OPEN;
|
|
2829
2889
|
};
|
|
2830
2890
|
StentorRouterChat.prototype.emit = function (event, data) {
|
|
2831
2891
|
return __awaiter$1(this, void 0, void 0, function () {
|
|
@@ -2852,9 +2912,11 @@ var StentorRouterChat = /** @class */ (function () {
|
|
|
2852
2912
|
log("Connection is ready in ".concat(t, " ms"));
|
|
2853
2913
|
}
|
|
2854
2914
|
_this.ws.send(payloadData);
|
|
2915
|
+
_this.noOfServerErrors = 0;
|
|
2855
2916
|
})
|
|
2856
2917
|
.catch(function (t) {
|
|
2857
|
-
err("Connection wait timed out in ".concat(t, " ms"));
|
|
2918
|
+
err("Connection wait timed out in ".concat(t, " ms (show error)"));
|
|
2919
|
+
_this.setConnectionStatus("online");
|
|
2858
2920
|
})];
|
|
2859
2921
|
case 1:
|
|
2860
2922
|
_a.sent();
|
|
@@ -2911,6 +2973,24 @@ var StentorRouterChat = /** @class */ (function () {
|
|
|
2911
2973
|
}
|
|
2912
2974
|
});
|
|
2913
2975
|
};
|
|
2976
|
+
StentorRouterChat.prototype.sendDisconnectMessage = function () {
|
|
2977
|
+
this.dispatch({
|
|
2978
|
+
type: "chat",
|
|
2979
|
+
detail: {
|
|
2980
|
+
type: "chat.msg",
|
|
2981
|
+
user: {
|
|
2982
|
+
displayName: "Server",
|
|
2983
|
+
nick: senderToNick(serverInfo),
|
|
2984
|
+
avatarPath: serverInfo.avatarPath
|
|
2985
|
+
},
|
|
2986
|
+
msg: { text: this.noOfServerErrors === 0 ?
|
|
2987
|
+
"I cannot connect to the server. Please try later." :
|
|
2988
|
+
"Nope. Still no luck. I still cannot connect to the server. Please don't give up." },
|
|
2989
|
+
timestamp: new Date().getTime(),
|
|
2990
|
+
}
|
|
2991
|
+
});
|
|
2992
|
+
this.noOfServerErrors++;
|
|
2993
|
+
};
|
|
2914
2994
|
StentorRouterChat.prototype.checkSession = function () {
|
|
2915
2995
|
return this.sessionCreated;
|
|
2916
2996
|
};
|
|
@@ -2919,18 +2999,31 @@ var StentorRouterChat = /** @class */ (function () {
|
|
|
2919
2999
|
var _this = this;
|
|
2920
3000
|
return __generator$1(this, function (_a) {
|
|
2921
3001
|
switch (_a.label) {
|
|
2922
|
-
case 0:
|
|
2923
|
-
|
|
2924
|
-
|
|
2925
|
-
log("Session creation is ready in ".concat(t, " ms"));
|
|
2926
|
-
}
|
|
2927
|
-
_this.postMessage(serviceRequest);
|
|
2928
|
-
})
|
|
2929
|
-
.catch(function (t) {
|
|
2930
|
-
err("Session creation wait timed out in ".concat(t, " ms"));
|
|
2931
|
-
})];
|
|
3002
|
+
case 0:
|
|
3003
|
+
if (!(this.checkConnection() && !this.checkSession())) return [3 /*break*/, 2];
|
|
3004
|
+
return [4 /*yield*/, this.postVisitorInfo()];
|
|
2932
3005
|
case 1:
|
|
2933
3006
|
_a.sent();
|
|
3007
|
+
_a.label = 2;
|
|
3008
|
+
case 2:
|
|
3009
|
+
if (!this.checkSession()) {
|
|
3010
|
+
this.setConnectionStatus("pending");
|
|
3011
|
+
}
|
|
3012
|
+
return [4 /*yield*/, waitFor(this.checkSession.bind(this), 500, 5000, "session creation")
|
|
3013
|
+
.then(function (t) {
|
|
3014
|
+
if (t > 0) {
|
|
3015
|
+
log("Session creation is ready in ".concat(t, " ms"));
|
|
3016
|
+
}
|
|
3017
|
+
_this.postMessage(serviceRequest);
|
|
3018
|
+
})
|
|
3019
|
+
.catch(function (t) {
|
|
3020
|
+
err("Session creation wait timed out in ".concat(t, " ms"));
|
|
3021
|
+
_this.setConnectionStatus("online"); // stop pulsing
|
|
3022
|
+
_this.sendDisconnectMessage();
|
|
3023
|
+
})];
|
|
3024
|
+
case 3:
|
|
3025
|
+
_a.sent();
|
|
3026
|
+
this.setConnectionStatus("online");
|
|
2934
3027
|
cb();
|
|
2935
3028
|
return [2 /*return*/];
|
|
2936
3029
|
}
|
|
@@ -2965,7 +3058,26 @@ var StentorRouterChat = /** @class */ (function () {
|
|
|
2965
3058
|
// mark the messages read
|
|
2966
3059
|
};
|
|
2967
3060
|
StentorRouterChat.prototype.flush = function () { };
|
|
2968
|
-
StentorRouterChat.prototype.dispose = function () {
|
|
3061
|
+
StentorRouterChat.prototype.dispose = function () {
|
|
3062
|
+
this.isDisposed = true;
|
|
3063
|
+
this.ws.close();
|
|
3064
|
+
log("Closed web socket (dispose)");
|
|
3065
|
+
};
|
|
3066
|
+
StentorRouterChat.prototype.sleep = function () {
|
|
3067
|
+
this.isDisposed = true;
|
|
3068
|
+
this.ws.close();
|
|
3069
|
+
log("Closed web socket (dispose)");
|
|
3070
|
+
};
|
|
3071
|
+
StentorRouterChat.prototype.wakeup = function () {
|
|
3072
|
+
// wait for the session setup
|
|
3073
|
+
if (!this._userId) {
|
|
3074
|
+
return;
|
|
3075
|
+
}
|
|
3076
|
+
this.isDisposed = false;
|
|
3077
|
+
// Fire up the WebSocket
|
|
3078
|
+
this.autoReconnect(this.wsCreate.bind(this));
|
|
3079
|
+
log("Waking up");
|
|
3080
|
+
};
|
|
2969
3081
|
StentorRouterChat.prototype.bargeOut = function (_cb) {
|
|
2970
3082
|
return __awaiter$1(this, void 0, void 0, function () {
|
|
2971
3083
|
return __generator$1(this, function (_a) {
|
|
@@ -6597,6 +6709,10 @@ var StentorServerChat = /** @class */ (function () {
|
|
|
6597
6709
|
var _a;
|
|
6598
6710
|
(_a = this.socket) === null || _a === void 0 ? void 0 : _a.disconnect();
|
|
6599
6711
|
};
|
|
6712
|
+
StentorServerChat.prototype.sleep = function () {
|
|
6713
|
+
};
|
|
6714
|
+
StentorServerChat.prototype.wakeup = function () {
|
|
6715
|
+
};
|
|
6600
6716
|
StentorServerChat.prototype.bargeOut = function (_cb) {
|
|
6601
6717
|
return __awaiter$1(this, void 0, void 0, function () {
|
|
6602
6718
|
return __generator$1(this, function (_a) {
|
|
@@ -30324,6 +30440,10 @@ var QueuePosition = function (props) {
|
|
|
30324
30440
|
props.position)));
|
|
30325
30441
|
};
|
|
30326
30442
|
|
|
30443
|
+
function isServerUser(user) {
|
|
30444
|
+
var _a;
|
|
30445
|
+
return (_a = user.nick) === null || _a === void 0 ? void 0 : _a.endsWith(ROUTER_USER);
|
|
30446
|
+
}
|
|
30327
30447
|
function getMessageByType(msg) {
|
|
30328
30448
|
switch (msg.type) {
|
|
30329
30449
|
case "chat.memberjoin":
|
|
@@ -30343,9 +30463,14 @@ function getMessageByType(msg) {
|
|
|
30343
30463
|
}
|
|
30344
30464
|
}
|
|
30345
30465
|
var SystemMessage = function (props) {
|
|
30346
|
-
|
|
30347
|
-
React$1.createElement("
|
|
30348
|
-
|
|
30466
|
+
if (!isServerUser(props.message.user)) {
|
|
30467
|
+
return (React$1.createElement("div", { className: "system-msg-container" },
|
|
30468
|
+
React$1.createElement("span", { className: "message-sr-only" }, "at " + props.time + " system message"),
|
|
30469
|
+
React$1.createElement("span", { className: "system-msg" }, getMessageByType(props.message))));
|
|
30470
|
+
}
|
|
30471
|
+
else {
|
|
30472
|
+
return null;
|
|
30473
|
+
}
|
|
30349
30474
|
};
|
|
30350
30475
|
function convertToSentenceCase(s) {
|
|
30351
30476
|
return s[0].toUpperCase() + s.slice(1);
|
|
@@ -30474,6 +30599,7 @@ var MessageList = function (props) {
|
|
|
30474
30599
|
}
|
|
30475
30600
|
return props.messages.map(function (message, index) {
|
|
30476
30601
|
// const next = props.messages[index + 1];
|
|
30602
|
+
var _a, _b;
|
|
30477
30603
|
// let sibling = false;
|
|
30478
30604
|
// const currentNick = message.nick;
|
|
30479
30605
|
// const prevNick = next && next.nick;
|
|
@@ -30494,9 +30620,9 @@ var MessageList = function (props) {
|
|
|
30494
30620
|
"chat.offline",
|
|
30495
30621
|
"chat.prechat"
|
|
30496
30622
|
];
|
|
30497
|
-
// show first and las TS and after at least 5 minutes gap
|
|
30623
|
+
// show first and las TS and after at least 5 minutes gap. Don't show "router user"
|
|
30498
30624
|
var showTs = false;
|
|
30499
|
-
if (tsTypes.includes(message.type)) {
|
|
30625
|
+
if (tsTypes.includes(message.type) && !((_b = (_a = message.user) === null || _a === void 0 ? void 0 : _a.nick) === null || _b === void 0 ? void 0 : _b.endsWith(ROUTER_USER))) {
|
|
30500
30626
|
if (index === 0 || index === props.messages.length - 1 || index === lastMsgIndex) {
|
|
30501
30627
|
showTs = true;
|
|
30502
30628
|
}
|
|
@@ -30855,7 +30981,7 @@ var ChatWidget = function (props) {
|
|
|
30855
30981
|
var canRefresh = (_c = (_b = props.config.header) === null || _b === void 0 ? void 0 : _b.actions) === null || _c === void 0 ? void 0 : _c.refresh;
|
|
30856
30982
|
// can't minimize in docked mode or static mode.
|
|
30857
30983
|
var canMinimize = !dockedMode && !staticMode && ((_e = (_d = props.config.header) === null || _d === void 0 ? void 0 : _d.actions) === null || _e === void 0 ? void 0 : _e.minimize);
|
|
30858
|
-
|
|
30984
|
+
log("docked: ".concat(dockedMode, " static: ").concat(staticMode, " minimimized: ").concat((_g = (_f = props.config.header) === null || _f === void 0 ? void 0 : _f.actions) === null || _g === void 0 ? void 0 : _g.minimize));
|
|
30859
30985
|
var canCancel;
|
|
30860
30986
|
// To preserve legacy behavior, cancel needs a little more checks
|
|
30861
30987
|
if (typeof ((_j = (_h = props.config.header) === null || _h === void 0 ? void 0 : _h.actions) === null || _j === void 0 ? void 0 : _j.cancel) === "boolean") {
|
|
@@ -30907,6 +31033,28 @@ var ChatWidget = function (props) {
|
|
|
30907
31033
|
}
|
|
30908
31034
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
30909
31035
|
}, []);
|
|
31036
|
+
var _5 = useState(!document.hidden), isTabVisible = _5[0], setIsTabVisible = _5[1];
|
|
31037
|
+
useEffect(function () {
|
|
31038
|
+
var handleVisibilityChange = function () {
|
|
31039
|
+
setIsTabVisible(!document.hidden);
|
|
31040
|
+
};
|
|
31041
|
+
document.addEventListener('visibilitychange', handleVisibilityChange);
|
|
31042
|
+
return function () {
|
|
31043
|
+
document.removeEventListener('visibilitychange', handleVisibilityChange);
|
|
31044
|
+
};
|
|
31045
|
+
}, []);
|
|
31046
|
+
useEffect(function () {
|
|
31047
|
+
// Too early?
|
|
31048
|
+
if (!chatServer) {
|
|
31049
|
+
return;
|
|
31050
|
+
}
|
|
31051
|
+
if (!isTabVisible) {
|
|
31052
|
+
chatServer.sleep();
|
|
31053
|
+
}
|
|
31054
|
+
else {
|
|
31055
|
+
chatServer.wakeup();
|
|
31056
|
+
}
|
|
31057
|
+
}, [chatServer, innerDispatch, isTabVisible]);
|
|
30910
31058
|
useEffect(function () {
|
|
30911
31059
|
// For reopen widget after move on same windowyar
|
|
30912
31060
|
// if (get("opened")) {
|
|
@@ -31017,38 +31165,6 @@ var ChatWidget = function (props) {
|
|
|
31017
31165
|
}
|
|
31018
31166
|
var isOffline = chatState.accountStatus === "offline" && !chatState.isChatting;
|
|
31019
31167
|
var messages = chatState && chatState.chats;
|
|
31020
|
-
if (isOffline) {
|
|
31021
|
-
messages.push({
|
|
31022
|
-
type: "chat.msg",
|
|
31023
|
-
user: {
|
|
31024
|
-
displayName: "Chat Agent",
|
|
31025
|
-
nick: "agent:offline"
|
|
31026
|
-
},
|
|
31027
|
-
timestamp: +new Date(),
|
|
31028
|
-
msg: {
|
|
31029
|
-
text: "Sorry, we are offline at the moment. Please leave us your contact information and we will get back to you soon!"
|
|
31030
|
-
}
|
|
31031
|
-
});
|
|
31032
|
-
messages.push({
|
|
31033
|
-
type: "chat.offline",
|
|
31034
|
-
user: {
|
|
31035
|
-
nick: "agent:offline"
|
|
31036
|
-
},
|
|
31037
|
-
timestamp: +new Date()
|
|
31038
|
-
});
|
|
31039
|
-
}
|
|
31040
|
-
else if (!chatState.isChatting) {
|
|
31041
|
-
messages.length = 0; // clear the list
|
|
31042
|
-
if (props.preChatFormEnabled) {
|
|
31043
|
-
messages.push({
|
|
31044
|
-
type: "chat.prechat",
|
|
31045
|
-
user: {
|
|
31046
|
-
nick: "agent:offline"
|
|
31047
|
-
},
|
|
31048
|
-
timestamp: +new Date()
|
|
31049
|
-
});
|
|
31050
|
-
}
|
|
31051
|
-
}
|
|
31052
31168
|
var config = props.config, onConnectionStatusChange = props.onConnectionStatusChange;
|
|
31053
31169
|
useGreeting(!isOffline && !props.preChatFormEnabled && visible);
|
|
31054
31170
|
var connectionStatus = chatState.connection.connectionStatus;
|