@seamly/web-ui 20.2.0-alpha.1 → 20.2.0-alpha.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.
@@ -1 +1 @@
1
- @-webkit-keyframes cvco-loader{0%,75%,to{transform:scaleY(.45);border-radius:50% 50%}37.5%{transform:scaleY(1);border-radius:2.5px}}@keyframes cvco-loader{0%,75%,to{transform:scaleY(.45);border-radius:50% 50%}37.5%{transform:scaleY(1);border-radius:2.5px}}@-webkit-keyframes cvco-fadeIn{0%{opacity:0}to{opacity:1}}@keyframes cvco-fadeIn{0%{opacity:0}to{opacity:1}}@-webkit-keyframes cvco-blink{0%,to{opacity:0}50%{opacity:1}}@keyframes cvco-blink{0%,to{opacity:0}50%{opacity:1}}.cvco-app--deprecated{max-width:96vw;max-height:calc(85vh - 4vw);box-sizing:border-box;display:flex;position:fixed;z-index:1;right:2vw;bottom:2vw;flex-direction:column;width:375px;height:720px;overflow:hidden;transition:height .75s ease-in-out,width .75s ease-in-out;border:1px solid #a3b4bf;border-radius:10px;outline:0;background-color:#fff;box-shadow:0 0 20px 0 rgba(0,0,0,.1);color:#3d4166;font-family:arial,helvetica,sans-serif;font-size:16px}@media(min-width:641px){.cvco-app--deprecated{max-height:calc(100vh - 4vw)}@supports(-webkit-overflow-scrolling:touch){.cvco-app--deprecated{max-height:calc(90vh - 4vw)}}}@media(min-width:1025px){.cvco-app--deprecated{right:20px;bottom:20px;max-height:calc(100vh - 40px)}@supports(-webkit-overflow-scrolling:touch){.cvco-app--deprecated{max-height:calc(90vh - 40px)}}}.cvco-app--deprecated *,.cvco-app--deprecated :after,.cvco-app--deprecated :before{box-sizing:border-box}.cvco-app--layout-inline.cvco-app--deprecated{position:relative;right:auto;bottom:auto;width:auto;height:100vh;min-height:480px;max-height:640px;transition:height .3s ease-in-out,width .3s ease-in-out;background-color:transparent;background-color:initial;box-shadow:none}@media(min-width:641px){.cvco-app--layout-inline.cvco-app--deprecated{display:block;border:0}}.cvco-app--collapsed.cvco-app--deprecated{width:195px;height:54px;border:0;background:none;box-shadow:none}.cvco-app--collapsed.cvco-app--started.cvco-app--deprecated{width:375px}.cvco-app-wrapper{display:flex;position:relative;z-index:1;flex:1 1 100%;flex-direction:column;width:100%;transition:width .3s ease-in-out,margin-right .3s ease-in-out,border-radius .3s ease-in-out;background-color:#fff}@media(min-width:641px){.cvco-app--layout-inline.cvco-app--deprecated .cvco-app-wrapper{width:50%;height:100%;margin-right:50%;border:1px solid #a3b4bf;border-top-left-radius:10px;border-bottom-left-radius:10px}.cvco-app--layout-inline.cvco-app--deprecated .cvco-app-wrapper:last-child{width:100%;margin-right:0;border-radius:10px}}@media(min-width:1025px){.cvco-app--layout-inline.cvco-app--deprecated .cvco-app-wrapper,.cvco-app--layout-inline.cvco-app--deprecated .cvco-app-wrapper:last-child{width:67%;margin-right:33%}}.cvco-chat__header{display:flex;position:relative;flex:0 0 auto;flex-direction:row;justify-content:flex-end;height:54px;padding:10px;border-bottom:1px solid #dee3e5;border-top-left-radius:10px;border-top-right-radius:10px}.cvco-app--collapsed.cvco-app--deprecated .cvco-chat__header{border-bottom:0;border-bottom-left-radius:10px;border-bottom-right-radius:10px;background-color:#4a48c1;color:#fff}.cvco-toggle-button{display:none;position:absolute;z-index:1;flex-direction:column;justify-content:center;width:100%;height:54px;margin:0;padding:10px 10px 10px 52px;border:0;background:none;background-color:transparent;color:#fff;font-size:12px}.cvco-app--collapsed.cvco-app--deprecated .cvco-toggle-button{display:flex}.cvco-toggle-button__title{margin:0;font-size:12px}.cvco-toggle-button__subtitle{margin:0;font-size:12px;font-weight:700}.cvco-toggle-button__button{position:absolute;z-index:1;top:0;left:0;width:100%;height:100%;margin:0;padding:0;border:0;background:none}.cvco-toggle-button__button:focus{outline:1px solid #fff;outline-offset:-5px}.cvco-chat__container{display:flex;position:relative;flex:1 1 auto;flex-direction:column;max-height:100%}.cvco-chat__body{display:flex;position:relative;flex-grow:4;padding:0;overflow-y:auto;border-bottom:1px solid #dee3e5}.cvco-app--collapsed.cvco-app--deprecated .cvco-chat__body{display:none}.cvco-app--layout-window.cvco-app--deprecated .cvco-chat__body{overscroll-behavior:contain;-ms-scroll-chaining:none}.cvco-chat__entry{position:relative;flex:0 0 auto;padding:10px}.cvco-app--collapsed.cvco-app--deprecated .cvco-chat__entry,.cvco-chat__entry .cvco-entry__body--hidden{display:none}.cvco-entry__body{display:flex;align-items:center}.cvco-app--deprecated p{margin:0}.cvco-app--deprecated img{max-width:100%}.cvco-app--deprecated h1,.cvco-app--deprecated h2,.cvco-app--deprecated h3,.cvco-app--deprecated h4,.cvco-app--deprecated h5,.cvco-app--deprecated h6{font-size:1rem;font-weight:400}.cvco-app--deprecated .cvco-input__checkbox{margin-right:10px}.cvco-app--deprecated .cvco-input__checkbox[aria-disabled=true]{opacity:.5}.cvco-app--deprecated .cvco-label{display:block;margin-bottom:5px;color:#4a48c1;font-size:14px;font-weight:700}.cvco-app--deprecated .cvco-input__checkbox[aria-disabled=true]+.cvco-label{opacity:.5}.cvco-app--deprecated .cvco-input__select{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:100%;padding:10px;transition:padding .3s ease-in-out;border:1px solid #dee3e5;border-radius:5px;background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiI+PHBhdGggZmlsbD0iIzRBNDhDMSIgZD0iTTIuOTk4IDYuNTAzYS45OTkuOTk5IDAgMDExLjY4Ny0uNzI3TDcuMjcgOC4yMjJjLjM5NC4zNzMgMS4wNi4zNzMgMS40NTQgMGwyLjU4Ni0yLjQ0NmEuOTk5Ljk5OSAwIDExMS4zNzQgMS40NTRsLTIuNTg2IDIuNDQ2Yy0xLjE1OSAxLjA5Ni0zLjA0MyAxLjA5Ni00LjIwMyAwTDMuMzEgNy4yMjlhLjk5NC45OTQgMCAwMS0uMzEyLS43MjZ6Ii8+PC9zdmc+");background-repeat:no-repeat;background-position:right 10px top 50%;background-size:15px auto;color:#3d4166;font-size:12px;resize:none}@supports(-webkit-overflow-scrolling:touch){.cvco-app--deprecated .cvco-input__select{font-size:16px}}.cvco-app--deprecated .cvco-input__select:hover{border:1px solid #4a48c1}.cvco-app--deprecated .cvco-input__select[aria-disabled=true],.cvco-app--deprecated .cvco-input__select[aria-disabled=true]:hover{border:1px solid #a3b4bf;background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiI+PHBhdGggZmlsbD0iI2EzYjRiZiIgZD0iTTIuOTk4IDYuNTAzYS45OTkuOTk5IDAgMDExLjY4Ny0uNzI3TDcuMjcgOC4yMjJjLjM5NC4zNzMgMS4wNi4zNzMgMS40NTQgMGwyLjU4Ni0yLjQ0NmEuOTk5Ljk5OSAwIDExMS4zNzQgMS40NTRsLTIuNTg2IDIuNDQ2Yy0xLjE1OSAxLjA5Ni0zLjA0MyAxLjA5Ni00LjIwMyAwTDMuMzEgNy4yMjlhLjk5NC45OTQgMCAwMS0uMzEyLS43MjZ6Ii8+PC9zdmc+");color:#a3b4bf}.cvco-app--deprecated .cvco-header-controls{flex-direction:row;justify-content:space-around}.cvco-app--deprecated .cvco-header-controls>button{display:inline-block;width:32px;height:32px;padding:0;overflow:hidden;vertical-align:top}.cvco-app--deprecated .cvco-header-controls .cvco-icon{width:32px;height:32px}.cvco-app--deprecated.cvco-app--collapsed .cvco-header-controls{display:none}.cvco-app--deprecated .cvco-agent-info{display:flex;flex-direction:row;flex-grow:4;align-items:center;padding:2px 0}.cvco-app--deprecated .cvco-agent-info__graphic{position:relative;flex:0 0 auto;width:32px;height:32px;margin-right:10px}.cvco-app--deprecated .cvco-agent-info__graphic .cvco-avatar,.cvco-app--deprecated .cvco-agent-info__graphic .cvco-icon{display:block;width:100%;height:100%;overflow:hidden;border-radius:5px}.cvco-app--deprecated.cvco-app--collapsed .cvco-agent-info__graphic .topbubble{fill:#fff}.cvco-app--deprecated .cvco-agent-info__body{flex:1 1 auto}.cvco-app--deprecated.cvco-app--collapsed .cvco-agent-info__body{display:none}.cvco-app--deprecated .cvco-agent-info__heading{margin:0;font-size:12px}.cvco-app--deprecated .cvco-agent-info__text{margin:0;font-size:12px;font-weight:700}.cvco-app--deprecated .cvco-avatar{display:block;position:relative;flex-shrink:0;width:32px;height:32px;overflow:hidden;border-radius:5px}.cvco-app--deprecated .cvco-avatar>.cvco-icon,.cvco-app--deprecated .cvco-avatar__graphic{display:block}.cvco-app--deprecated .cvco-conversation__message+.cvco-avatar{align-self:flex-end;margin-left:10px}.cvco-app--deprecated .cvco-avatar--bg-white{background-color:#fff}.cvco-app--deprecated .cvco-avatar--arrow-right{margin-right:5px;overflow:visible}.cvco-app--deprecated .cvco-avatar--arrow-right:after{content:"";display:inline-block;position:absolute;top:50%;right:-6.666px;width:0;height:0;transform:translateY(-50%);border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:8px solid #003a5d}.cvco-app--deprecated .cvco-button{display:inline-block;margin:0;padding:0;border:0;background:none;text-align:left;cursor:pointer}.cvco-app--deprecated .cvco-button span{color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit}.cvco-app--deprecated .cvco-button--primary{min-height:30px;padding:5px 15px;border-radius:15px;border-color:#fff;background-color:#4a48c1;color:#fff;font-weight:700}.cvco-app--deprecated .cvco-button--secondary{padding:10px;color:#4a48c1;font-weight:700}.cvco-app--deprecated .cvco-button--tertiary{padding:2px 5px;border-radius:10px;background-color:transparent;background-color:initial;color:#fff;font-size:12px;font-weight:700}.cvco-app--deprecated .cvco-button[aria-disabled=true]{color:#5e727b;cursor:auto}.cvco-app--deprecated .cvco-button--choose-again{display:flex;align-items:center;margin:5px 0 10px;padding:0}.cvco-app--deprecated .cvco-button--choose-again:last-child{margin-bottom:0}.cvco-app--deprecated .cvco-button--choose-again .cvco-icon{display:flex;flex:0 0 8px;align-items:center;justify-content:center;width:8px;height:8px;margin:3px 5px;transform-origin:50% 50%;transition:transform .3s ease-in-out}.cvco-app--deprecated .cvco-button--choose-again[aria-expanded=true] .cvco-icon{transform:rotate(180deg)}.cvco-app--deprecated .cvco-button--choose-again .cvco-icon svg{display:block;width:100%}.cvco-app--deprecated .cvco-button__state{display:inline-block;margin:-3px -3px -3px 3px;padding:3px 5px;border-radius:5px;background-color:#eff3f6;color:inherit}.cvco-app--deprecated .cvco-choice-prompt{display:flex;flex-direction:column;padding:0}.cvco-app--deprecated .cvco-choice-prompt__item{display:block;width:100%;margin-top:5px;margin-left:0}.cvco-app--deprecated .cvco-choice-prompt__item:first-child{margin-top:0}.cvco-app--deprecated .cvco-choice-prompt__item .cvco-button{display:block;width:100%;white-space:normal}.cvco-app--deprecated .cvco-choice-prompt__item--secondary .cvco-button{background-color:transparent;background-color:initial;color:#4a48c1}.cvco-app--deprecated .cvco-conversation__container{display:flex;position:absolute;top:0;right:0;bottom:0;left:0;flex:1 1 100%;flex-direction:column;justify-content:space-between;height:100%;max-height:100%}.cvco-app--deprecated .cvco-conversation{list-style:none;width:100%;margin:auto 0 0;padding:20px 20px 0}.cvco-app--deprecated .cvco-conversation:after{content:"";display:block;flex:0 0 100%;width:100%;height:20px}.cvco-app--deprecated .cvco-app--layout-inline .cvco-conversation{position:relative}.cvco-app--deprecated .cvco-conversation__item{width:100%;min-height:0;margin-top:10px}.cvco-app--deprecated .cvco-conversation__item--new-participant{margin-top:20px}.cvco-app--deprecated .cvco-divider{display:flex;position:relative;justify-content:center;margin:20px -20px 0;padding:65px 30px 0;overflow:hidden;background:linear-gradient(180deg,#fff,#eff3f6);background-repeat:no-repeat;background-size:100% 40px;font-family:arial,helvetica,sans-serif;font-size:12px;line-height:1.5}.cvco-app--deprecated .cvco-divider:before{content:"";position:absolute;top:0;left:50%;width:100%;height:40px;transform:translateX(-50%);background:radial-gradient(110px at 50%,at 300%,rgba(74,72,193,.5) 0,hsla(0,0%,100%,0) 99.99%,rgba(74,72,193,0) 100%);background:radial-gradient(110px at 50% 300%,rgba(74,72,193,.5) 0,hsla(0,0%,100%,0) 99.99%,rgba(74,72,193,0) 100%);background-repeat:no-repeat}.cvco-app--deprecated .cvco-divider--type-time-indicator{padding-top:60px;padding-bottom:20px}.cvco-app--deprecated .cvco-divider--type-time-indicator:before{display:none}.cvco-app--deprecated .cvco-conversation__item:first-child .cvco-divider{margin-top:0;padding-bottom:10px}.cvco-app--deprecated .cvco-divider__graphic{position:absolute;top:40px;left:50%;width:32px;height:32px;transform:translate(-50%,-60%);border-radius:5px;background:#fff}.cvco-app--deprecated .cvco-divider__graphic .cvco-avatar,.cvco-app--deprecated .cvco-divider__graphic .cvco-icon,.cvco-app--deprecated .cvco-divider__graphic .cvco-icon svg{width:100%;height:100%}.cvco-app--deprecated .cvco-divider__time{text-align:center}.cvco-app--deprecated .cvco-divider__time span{display:block}.cvco-app--deprecated .cvco-divider__time span:first-of-type{font-weight:700}.cvco-app--deprecated .cvco-divider--type-newtranslation{text-align:center}.cvco-app--deprecated .cvco-divider--type-newtranslation .cvco-divider__body{max-width:80%}.cvco-app--deprecated .cvco-divider--type-newtranslation .cvco-divider__title{font-weight:700}.cvco-app--deprecated .cvco-divider .cvco-button{padding:0;font-size:inherit}.cvco-app--deprecated .cvco-loader{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;height:20px;padding:2.5px 5px;-webkit-animation:cvco-fadeIn .3s linear;animation:cvco-fadeIn .3s linear}.cvco-app--deprecated .cvco-loader__part{display:inline-block;width:6.666px;height:100%;margin-right:5px;transform:scaleY(.45);-webkit-animation-name:cvco-loader;animation-name:cvco-loader;-webkit-animation-duration:.6s;animation-duration:.6s;-webkit-animation-timing-function:ease;animation-timing-function:ease;-webkit-animation-delay:.12s;animation-delay:.12s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-direction:normal;animation-direction:normal;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;border-radius:50% 50%;background-color:currentColor}.cvco-app--deprecated .cvco-loader__part.cvco-one{-webkit-animation-delay:.12s;animation-delay:.12s}.cvco-app--deprecated .cvco-loader__part.cvco-two{-webkit-animation-delay:.24s;animation-delay:.24s}.cvco-app--deprecated .cvco-loader__part.cvco-three{-webkit-animation-delay:.36s;animation-delay:.36s}.cvco-app--deprecated .cvco-loader__part.cvco-four{margin-right:0;-webkit-animation-delay:.48s;animation-delay:.48s}.cvco-app--deprecated .cvco-loader--white .cvco-loader__part{background-color:#fff}.cvco-app--deprecated .cvco-loader--grey .cvco-loader__part{background-color:#dee3e5}.cvco-app--deprecated .cvco-message{display:flex;flex-direction:row;flex-wrap:wrap;width:80%;font-family:arial,helvetica,sans-serif;font-size:12px;line-height:1.5}.cvco-app--deprecated .cvco-message+.cvco-message,.cvco-app--deprecated .cvco-message+div>.cvco-message{margin-top:10px}.cvco-app--deprecated .cvco-message__author{display:none;flex-direction:row;align-items:center;justify-content:flex-start;width:100%;margin-bottom:.3rem;padding:0 10px;font-weight:700}.cvco-app--deprecated .cvco-message__avatar{width:16px;height:16px;margin:0 .5em 0 0}.cvco-app--deprecated .cvco-message__avatar .cvco-avatar{display:block;width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.cvco-app--deprecated .cvco-conversation__item--new-participant .cvco-message__author,.cvco-app--deprecated .cvco-divider--type-time-indicator+.cvco-message--source-agent .cvco-message__author,.cvco-app--deprecated .cvco-divider--type-time-indicator+.cvco-message--source-user .cvco-message__author{display:flex}.cvco-app--deprecated .cvco-message__body{display:block;position:relative;max-width:100%;margin-bottom:5px;padding:10px 15px;border-radius:10px;background-color:#eff3f6;color:#3d4166}.cvco-app--deprecated .cvco-message__body .cvco-icon svg path{fill:#3d4166}.cvco-app--deprecated .cvco-message__body:last-child{margin-bottom:0}.cvco-app--deprecated .cvco-message__info,.cvco-app--deprecated .cvco-message__translation-info{width:100%}.cvco-app--deprecated .cvco-message__translation-label{margin-right:5px;font-size:12px}.cvco-app--deprecated .cvco-button.cvco-message__translation-toggle{padding:0;font-size:inherit}.cvco-app--deprecated .cvco-conversation__item--source-info{margin-top:20px;margin-bottom:20px}.cvco-app--deprecated .cvco-conversation__item--source-info:last-child{margin-bottom:0}.cvco-app--deprecated .cvco-conversation__item--source-info .cvco-message{width:90%;max-width:90%;margin:0 auto}.cvco-app--deprecated .cvco-conversation__item--source-info .cvco-message:after{content:"";display:block;width:20px;height:0;margin:0 auto;border-top:2px solid #4a48c1}.cvco-app--deprecated .cvco-conversation__item--source-info .cvco-message__body{flex:0 0 100%;width:100%;padding:0 15px 10px;border-radius:0;background-color:transparent;background-color:initial;text-align:center}.cvco-app--deprecated .cvco-message--source-user{justify-content:flex-end;margin-left:auto}.cvco-app--deprecated .cvco-message--source-user .cvco-message__author{justify-content:flex-end}.cvco-app--deprecated .cvco-message--source-user .cvco-message__body{background-color:#223182;color:#fff}.cvco-app--deprecated .cvco-message--source-user .cvco-message__body .cvco-icon svg path{fill:#fff}.cvco-app--deprecated .cvco-message--source-user .cvco-message__avatar{order:2;margin:0 0 0 .5em}.cvco-app--deprecated .cvco-message--source-user .cvco-message__author-name{order:1}.cvco-app--deprecated .cvco-message--source-user .cvco-message__info,.cvco-app--deprecated .cvco-message--source-user .cvco-message__translation-info{text-align:right}.cvco-app--deprecated .cvco-message--type-text .cvco-message__body ol:only-child,.cvco-app--deprecated .cvco-message--type-text .cvco-message__body p:only-child,.cvco-app--deprecated .cvco-message--type-text .cvco-message__body ul:only-child{margin:0}.cvco-app--deprecated .cvco-message--type-text .cvco-message__body ol:last-child,.cvco-app--deprecated .cvco-message--type-text .cvco-message__body p:last-child,.cvco-app--deprecated .cvco-message--type-text .cvco-message__body ul:last-child{margin-bottom:0}.cvco-app--deprecated .cvco-message--type-text .cvco-message__body ol,.cvco-app--deprecated .cvco-message--type-text .cvco-message__body p,.cvco-app--deprecated .cvco-message--type-text .cvco-message__body ul{margin:0 0 1em}.cvco-app--deprecated .cvco-message--type-text .cvco-message__body ol,.cvco-app--deprecated .cvco-message--type-text .cvco-message__body ul{padding-left:1.5em}.cvco-app--deprecated .cvco-message--type-text .cvco-message__body a{color:#4a48c1;word-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.cvco-app--deprecated .cvco-message--type-text .cvco-message__body a:hover{text-decoration:none}.cvco-app--deprecated .cvco-message--type-text.cvco-message--source-user .cvco-message__body a{color:#fff}.cvco-app--deprecated .cvco-message--type-loading .cvco-message__body{align-self:flex-start}.cvco-app--deprecated .cvco-message--type-loading.cvco-message--source-user .cvco-message__body{align-self:flex-end}.cvco-app--deprecated .cvco-message--type-choice-prompt .cvco-message__body{width:100%}.cvco-app--deprecated .cvco-message--type-choice-prompt:not(.cvco-message--type-choice-prompt-selected) .cvco-message__body{padding:0;background:none}.cvco-app--deprecated .cvco-message--type-choice-prompt-selected .cvco-message__choice-indicator{content:"";position:absolute;top:10px;right:0;width:1.5em;height:1.5em;padding:4px;transform:translate(48%,-4px);border-radius:50%;background:#fff;box-shadow:0 4px 4px rgba(0,0,0,.25)}.cvco-app--deprecated .cvco-message--type-choice-prompt-selected .cvco-message__choice-indicator>svg{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cvco-app--deprecated .cvco-message--type-image .cvco-message__body{padding:0}.cvco-app--deprecated .cvco-message--type-image .cvco-message__body img{display:block;width:100%;height:auto;overflow:hidden;border-radius:10px}.cvco-app--deprecated .cvco-message--type-video .cvco-message__body{width:100%;padding:0 0 66%;background-color:#000}.cvco-app--deprecated .cvco-message--type-video .cvco-message__body iframe{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;border:0;border-radius:10px}.cvco-app--deprecated .cvco-message--type-upload .cvco-download{display:flex;align-items:center;width:100%;text-decoration:line-through;word-break:break-all}.cvco-app--deprecated .cvco-message--type-upload .cvco-download-link{color:inherit;text-decoration:underline}.cvco-app--deprecated .cvco-message--type-upload .cvco-download-link:hover{text-decoration:none}.cvco-app--deprecated .cvco-message--type-upload .cvco-icon{flex:0 0 16px;width:16px;height:16px;margin-right:10px}.cvco-app--deprecated .cvco-message--type-upload .cvco-icon svg{width:100%;height:100%}.cvco-app--deprecated .cvco-message--deleted .cvco-file-download{text-decoration:line-through}.cvco-app--deprecated .cvco-message .cvco-message__info{margin-top:4px;color:#6a7f8c;font-size:12px;line-height:1.35}.cvco-app--deprecated .cvco-message--type-cta .cvco-message__body{display:flex;flex-direction:column;width:100%;padding:10px 15px 15px;background-color:#223182}.cvco-app--deprecated .cvco-message--type-cta .cvco-cta__content{margin-bottom:10px;color:#fff;font-size:14px;line-height:1.5}.cvco-app--deprecated .cvco-message--type-cta .cvco-cta__content p{color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit}.cvco-app--deprecated .cvco-message--type-cta .cvco-button{margin-bottom:10px;line-height:2;text-decoration:none}.cvco-app--deprecated .cvco-message--type-cta .cvco-button:last-child{margin-bottom:0}.cvco-app--deprecated .cvco-message--type-card .cvco-message__body{display:flex;flex-direction:column;width:100%;padding:0}.cvco-app--deprecated .cvco-message--type-carousel .cvco-message__body{display:block;padding:0}.cvco-app--deprecated .cvco-message-count{display:flex;position:absolute;top:-8px;right:-8px;align-items:center;justify-content:center;width:20px;height:20px;transform:scale(1);transition:transform .3s cubic-bezier(.175,.885,.32,1.275) .5s;border-radius:50% 50%;background-color:#db1639;color:#fff;font-size:12px;font-weight:700;line-height:1}.cvco-app--deprecated .cvco-message-count.cvco-message-count__empty,.cvco-app--deprecated .cvco-message-count__hide{transform:scale(0);transition:transform .3s linear 0s}.cvco-app--deprecated .cvco-icon{display:inline-block;line-height:1}.cvco-app--deprecated .cvco-entry-form{display:flex;flex:1 1 100%;width:100%;height:100%}.cvco-app--deprecated .cvco-input--text__container{display:flex;position:relative;flex:1 1 100%;height:100%;margin-right:5px}.cvco-app--deprecated .cvco-input__text{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex-grow:4;height:100%;margin-right:5px;padding:10px;transition:padding .3s ease-in-out;border:1px solid transparent;border-radius:5px;color:#3d4166;font-size:12px;resize:none}@supports(-webkit-overflow-scrolling:touch){.cvco-app--deprecated .cvco-input__text{font-size:16px}}.cvco-app--deprecated .cvco-input__text::-webkit-input-placeholder{overflow:visible;color:#a3b4bf;line-height:20px}.cvco-app--deprecated .cvco-input__text::-moz-placeholder{overflow:visible;color:#a3b4bf;line-height:20px}.cvco-app--deprecated .cvco-input__text:-ms-input-placeholder{overflow:visible;color:#a3b4bf;line-height:20px}.cvco-app--deprecated .cvco-input__text:-moz-placeholder{overflow:visible;color:#a3b4bf;line-height:20px}.cvco-app--deprecated .cvco-input--text__container .cvco-input__text{width:100%;margin-right:0}.cvco-app--deprecated .cvco-character-exceeded .cvco-input__text,.cvco-app--deprecated .cvco-character-warning .cvco-input__text{padding-right:40px}.cvco-app--deprecated .cvco-character-exceeded .cvco-input__text{border:1px solid #db1639}.cvco-app--deprecated .cvco-input__submit{display:flex;align-items:center;justify-content:center;padding:0}.cvco-app--deprecated .cvco-input__submit[aria-disabled=true]{opacity:.5;cursor:auto}.cvco-app--deprecated .cvco-input__submit .cvco-icon{width:32px;height:32px}.cvco-app--deprecated .cvco-faqs{display:none;width:100%;height:0;min-height:0;transition:height .3s ease-in-out,min-height .3s ease-in-out,transform .3s ease-in-out;background-color:#eff3f6}.cvco-app--deprecated.cvco-app--layout-window .cvco-faqs{overscroll-behavior:contain;-ms-scroll-chaining:none}@media(min-width:641px){.cvco-app--deprecated.cvco-app--layout-inline .cvco-faqs{position:absolute;top:0;left:50%;flex-direction:column;width:50%;height:480px;min-height:480px;max-height:100%;transform:translateX(-100%);border:1px solid #a3b4bf;border-left:0;border-top-right-radius:10px;border-bottom-right-radius:10px}}@media(min-width:1025px){.cvco-app--deprecated.cvco-app--layout-inline .cvco-faqs{left:67%;width:33%}}.cvco-app--deprecated .cvco-faqs.cvco-transition--visible{display:block}@media(min-width:641px){.cvco-app--deprecated.cvco-app--layout-inline .cvco-faqs.cvco-transition--visible{display:flex}}.cvco-app--deprecated.cvco-app--collapsed .cvco-faqs,.cvco-app--deprecated.cvco-app--collapsed .cvco-faqs.cvco-transition--visible{display:none}.cvco-app--deprecated .cvco-faqs.cvco-transition--in{height:30%;max-height:240px;overflow-y:auto}@media(min-width:641px){.cvco-app--deprecated.cvco-app--layout-inline .cvco-faqs.cvco-transition--in{height:480px;min-height:480px;max-height:100%;overflow-y:visible;overflow-y:initial;transform:translateX(0)}}.cvco-app--deprecated .cvco-faqs__heading{flex:0 0 auto;margin:0;padding:20px 20px 10px;transition:opacity .3s ease-in-out;opacity:0;color:#003a5d;font-size:14px;font-weight:700}.cvco-app--deprecated .cvco-faqs__heading:last-child{padding-bottom:20px}.cvco-app--deprecated .cvco-faqs.cvco-transition--in .cvco-faqs__heading{transition:opacity .3s ease-in-out .2s;opacity:1}.cvco-app--deprecated .cvco-faqs__list{margin:0;list-style:none;display:block;width:100%;height:auto;padding:0 20px;transition:opacity .3s ease-in-out;opacity:0}.cvco-app--deprecated .cvco-faqs__list:after{content:"";display:block;flex:0 0 20px;width:100%;height:20px}.cvco-app--deprecated .cvco-faqs.cvco-transition--in .cvco-faqs__list{transition:opacity .3s ease-in-out .2s;opacity:1}@media(min-width:641px){.cvco-app--deprecated.cvco-app--layout-inline .cvco-faqs__list{flex:1 1 100%;height:100%;max-height:100%;overflow-y:auto}}.cvco-app--deprecated .cvco-faqs__item{display:block;width:100%;margin-bottom:5px}.cvco-app--deprecated .cvco-faqs__item:last-child{margin-bottom:0}.cvco-app--deprecated .cvco-faqs__item .cvco-button.cvco-button--secondary{position:relative;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;padding:0 0 0 15px;border:0;border-radius:5px;background:transparent none repeat 0 0/auto auto padding-box border-box scroll;background:initial;font-size:12px;text-align:left;text-decoration:none;text-decoration:initial;white-space:normal}.cvco-app--deprecated .cvco-faqs__item .cvco-button.cvco-button--secondary:hover{color:#223182;text-decoration:underline}.cvco-app--deprecated .cvco-faqs__item .cvco-button.cvco-button--secondary .cvco-icon{position:absolute;left:0;width:8px;height:8px;transition:transform .3s ease-in-out}.cvco-app--deprecated .cvco-faqs__item .cvco-button.cvco-button--secondary:hover .cvco-icon{transform:translateX(5px)}.cvco-app--deprecated .cvco-faqs__item .cvco-button.cvco-button--secondary:hover .cvco-icon svg path{fill:#223182}.cvco-app--deprecated.cvco-app--layout-window .cvco-faqs__list{overscroll-behavior:contain;-ms-scroll-chaining:none}.cvco-app--deprecated .cvco-interrupt{display:flex;position:absolute;top:0;right:0;bottom:0;left:0;background:#fff}.cvco-app--deprecated .cvco-interrupt__body{display:flex;flex:1 1 auto;flex-direction:column;align-items:center;justify-content:center;margin:10px;padding:40px;border:1px solid #dee3e5;border-radius:10px}.cvco-app--deprecated .cvco-interrupt__title{font-size:16px;font-weight:700}.cvco-app--deprecated .cvco-interrupt__message{margin-bottom:40px;font-size:16px}.cvco-app--deprecated .cvco-interrupt__actions{margin-top:auto}.cvco-app--deprecated .cvco-skip-link{position:absolute;z-index:100;top:10px;left:50%;padding:10px 20px;transform:translate(-50%,-5px) scale(0);transform-origin:50% 0;transition:transform .3s ease-in-out,opacity .3s ease-in-out;border:1px solid #fff;border-radius:20px;opacity:0;background:#4a48c1;color:#fff;font-size:12px}.cvco-app--deprecated .cvco-skip-link:focus{transform:translate(-50%) scale(1);opacity:1}.cvco-app--deprecated .cvco-svg-graphic{display:inline-block;position:relative}.cvco-app--deprecated .cvco-svg-graphic__path-fill-primary{fill:#003a5d}.cvco-app--deprecated .cvco-svg-graphic__path-fill-secondary{fill:#223182}.cvco-app--deprecated .cvco-svg-graphic__path-fill-tertiary{fill:#4a48c1}.cvco-app--deprecated .cvco-svg-graphic__path-fill-white{fill:#fff}.cvco-app--deprecated .cvco-svg-graphic__path-fill-black{fill:#000}.cvco-app--deprecated .cvco-svg-graphic__path-fill-highlight{fill:#ffc700}.cvco-app--deprecated .cvco-svg-graphic__path-fill-positive{fill:#00875e}.cvco-app--deprecated .cvco-svg-graphic__path-fill-negative{fill:#db1639}.cvco-app--deprecated .cvco-disclaimer{display:block;flex:0 0 auto;width:100%;height:auto;padding:10px 20px;background-color:#eff3f6}.cvco-app--deprecated.cvco-app--collapsed .cvco-disclaimer{display:none}.cvco-app--deprecated .cvco-disclaimer__title{margin:0 0 5px;padding-right:20px;font-size:12px;font-weight:700;line-height:1}.cvco-app--deprecated .cvco-disclaimer__message{font-size:12px;line-height:1.25}.cvco-app--deprecated .cvco-idle{display:flex;flex-direction:column;align-items:center;justify-content:space-between;max-height:none;padding:10px}.cvco-app--deprecated .cvco-idle__title{margin-top:0;margin-bottom:5px;font-size:16px;font-weight:700;text-align:center}.cvco-app--deprecated .cvco-idle__title:last-child{margin-bottom:0}.cvco-app--deprecated .cvco-idle__count-container{display:block;width:100%;height:2.75em;margin-bottom:10px;font-size:12px}.cvco-app--deprecated .cvco-idle__count-text,.cvco-app--deprecated .cvco-idle__count-timer{display:block;width:100%;font-size:inherit;text-align:center;white-space:nowrap}.cvco-app--deprecated .cvco-idle__options{display:flex;flex-wrap:wrap;justify-content:center;width:100%;margin:0;padding:0;list-style-type:none}.cvco-app--deprecated .cvco-idle__options .cvco-button{margin:5px 5px 0;text-align:center;white-space:normal}.cvco-app--deprecated .cvco-prompt{display:flex;flex-direction:column;align-items:center;justify-content:space-between;max-height:none;padding:10px}.cvco-app--deprecated .cvco-prompt__title{margin-top:0;margin-bottom:5px;font-size:16px;font-weight:700;text-align:center}.cvco-app--deprecated .cvco-prompt__title:last-child{margin-bottom:0}.cvco-app--deprecated .cvco-prompt__options{display:flex;flex-wrap:wrap;justify-content:center;width:100%;margin:0;padding:0;list-style-type:none}.cvco-app--deprecated .cvco-prompt__options .cvco-button{margin:5px 5px 0;text-align:center;white-space:normal}.cvco-app--deprecated .cvco-chat__options{display:flex;position:relative;align-items:center;justify-content:flex-end;padding:5px;border-top:1px solid #dee3e5}.cvco-app--deprecated .cvco-chat__options-item--left{margin-right:auto}.cvco-app--deprecated.cvco-app--collapsed .cvco-chat__options{display:none}.cvco-app--deprecated .cvco-chat__options__button{display:flex;align-items:center;justify-content:flex-end;padding:5px 10px;border-radius:15px}.cvco-app--deprecated.cvco-app--collapsed .cvco-chat__options-button{display:none}.cvco-app--deprecated .cvco-chat__options__button .cvco-icon{flex:0 0 15px;width:15px;height:15px;margin-right:5px}.cvco-app--deprecated .cvco-chat__options__button .cvco-icon svg{width:100%;height:100%}.cvco-app--deprecated .cvco-chat__options__button[aria-disabled=true] .cvco-icon path{fill:currentColor}.cvco-app--deprecated .cvco-options__menu{display:none;position:absolute;right:10px;bottom:calc(100% + 10px);max-width:300px;max-height:400px;margin:0;padding:10px;transform:scaleY(0) translateY(100px);transform-origin:100% 100%;transition:transform .2s ease-in-out,opacity .2s ease;border:1px solid #dee3e5;border-radius:5px;opacity:0;background-color:#fff;box-shadow:0 0 20px 0 rgba(0,0,0,.1);list-style:none}.cvco-app--deprecated .cvco-options__menu.cvco-transition--visible{display:block}.cvco-app--deprecated .cvco-options__menu.cvco-transition--in{transform:scaleY(1) translateY(0);opacity:1}.cvco-app--deprecated .cvco-options__menu__item{margin-bottom:5px;transition:opacity .1s ease .1s;opacity:0}.cvco-app--deprecated .cvco-options__menu__item:last-child{margin-bottom:0}.cvco-app--deprecated .cvco-options__menu.cvco-transition--in .cvco-options__menu__item{opacity:1}.cvco-app--deprecated .cvco-options__menu .cvco-button{display:flex;align-items:center;width:100%;min-width:200px;border-radius:5px}.cvco-app--deprecated .cvco-options__menu .cvco-button:hover{background-color:#223182;color:#fff}.cvco-app--deprecated .cvco-options__menu .cvco-button[aria-disabled=true]:hover{background-color:transparent;background-color:initial;color:#5e727b}.cvco-app--deprecated .cvco-options{display:none;position:absolute;right:10px;bottom:calc(100% + 10px);flex-direction:column;width:calc(100% - 20px);max-width:300px;margin:0;padding:0;transform:scaleY(0) translateY(100px);transform-origin:100% 100%;transition:transform .2s ease-in-out,opacity .2s ease;border:1px solid #dee3e5;border-radius:5px;opacity:0;background-color:#fff;box-shadow:0 0 20px 0 rgba(0,0,0,.1);list-style:none}.cvco-app--deprecated .cvco-options--left{right:auto;left:10px}.cvco-app--deprecated .cvco-options--right{right:10px}.cvco-app--deprecated .cvco-options__dialog.cvco-transition--visible .cvco-options{display:flex}.cvco-app--deprecated .cvco-options__dialog.cvco-transition--in .cvco-options{transform:scaleY(1) translateY(0);opacity:1}.cvco-app--deprecated .cvco-options__body{display:flex;flex-direction:column;max-height:300px;transition:opacity .1s ease .1s;opacity:0}.cvco-app--deprecated .cvco-options__dialog.cvco-transition--in .cvco-options__body{opacity:1}.cvco-app--deprecated .cvco-options__title{display:flex;flex:0 0 auto;align-items:center;width:calc(100% - 42px);margin:0;padding:20px 20px 10px;color:#223182;font-size:16px;font-weight:700}.cvco-app--deprecated .cvco-options__close{position:absolute;top:10px;right:10px;width:32px;height:32px;font-size:0}.cvco-app--deprecated .cvco-options__close .cvco-icon{display:flex;align-items:center;justify-content:center}.cvco-app--deprecated .cvco-options__body form{display:flex;flex:1 1 auto;flex-direction:column;width:100%}.cvco-app--deprecated .cvco-options__wrapper{display:flex;flex:1 1 auto;flex-wrap:wrap;align-items:flex-start;width:100%;padding:0 20px;overflow:auto}.cvco-app--deprecated .cvco-options__wrapper:last-child:after{content:"";display:block;flex:0 0 100%;width:100%;height:20px}.cvco-app--deprecated .cvco-options__body div{width:100%}.cvco-app--deprecated .cvco-options__wrapper h3{margin:0;color:#223182;font-size:14px;font-weight:700}.cvco-app--deprecated .cvco-options__description{display:block;width:100%;margin-bottom:10px;font-size:14px}.cvco-app--deprecated .cvco-transcript__input{width:100%;padding:10px;transition:padding .3s ease-in-out;border:1px solid #dee3e5;border-radius:5px;font-size:12px}.cvco-app--deprecated .cvco-transcript__input:focus{border:1px solid #dee3e5}@supports(-webkit-overflow-scrolling:touch){.cvco-app--deprecated .cvco-transcript__input{font-size:16px}}.cvco-app--deprecated .cvco-transcript__input::-webkit-input-placeholder{overflow:visible;color:#a3b4bf;line-height:20px}.cvco-app--deprecated .cvco-transcript__input::-moz-placeholder{overflow:visible;color:#a3b4bf;line-height:20px}.cvco-app--deprecated .cvco-transcript__input:-ms-input-placeholder{overflow:visible;color:#a3b4bf;line-height:20px}.cvco-app--deprecated .cvco-transcript__input:-moz-placeholder{overflow:visible;color:#a3b4bf;line-height:20px}.cvco-app--deprecated .cvco-options__active-language{color:#3d4166;font-size:14px}.cvco-app--deprecated .cvco-options__actions{display:flex;flex:0 0 auto;justify-content:flex-end;width:100%;margin-top:10px;padding:0}.cvco-app--deprecated .cvco-options__actions .cvco-button{width:100%;margin-right:10px}.cvco-app--deprecated .cvco-options__actions .cvco-button:last-child{margin-right:0}.cvco-app--deprecated .cvco-chat-status{display:flex;align-items:center;justify-content:space-between;padding:10px;border-bottom:1px solid #dee3e5;background-color:#fff}.cvco-app--deprecated.cvco-app--collapsed .cvco-chat-status{display:none}.cvco-app--deprecated .cvco-chat-status__title{display:flex;align-items:center;margin:0 10px 0 0;color:#3d4166;font-size:12px;font-weight:700;line-height:1}.cvco-app--deprecated .cvco-chat-status--cobrowsing .cvco-chat-status__title:before{content:"";display:block;flex:0 0 10px;width:10px;height:10px;margin-right:5px;-webkit-animation-name:cvco-blink;animation-name:cvco-blink;-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-direction:normal;animation-direction:normal;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;border-radius:50% 50%;background-color:#4a48c1}.cvco-app--deprecated .cvco-chat-status .cvco-button--tertiary{color:#4a48c1}.cvco-app--deprecated .cvco-upload-toggle-wrapper{width:0;height:100%;overflow:visible;transition:width .3s ease-in-out}.cvco-app--deprecated .cvco-upload-toggle-wrapper.cvco-transition--in{width:42px}.cvco-app--deprecated .cvco-upload-toggle{display:flex;flex:0 0 32px;flex-direction:column;align-items:center;justify-content:center;width:32px;height:32px;padding:0;transform:translateX(-100%);transition:transform .3s ease-in-out,opacity .3s ease-in-out;opacity:0;color:transparent;font-size:0;line-height:1;text-align:center}.cvco-app--deprecated .cvco-upload-toggle-wrapper.cvco-transition--in .cvco-upload-toggle{transform:translateX(0);opacity:1}.cvco-app--deprecated .cvco-upload-toggle .cvco-icon{flex:0 0 100%;width:100%;height:100%}.cvco-app--deprecated .cvco-upload-toggle .cvco-icon svg{width:100%;height:100%}.cvco-app--deprecated .cvco-upload{width:100%;padding:10px 10px 0}.cvco-app--deprecated .cvco-input--file{display:block}.cvco-app--deprecated .cvco-upload__container{width:100%;margin-bottom:10px}.cvco-app--deprecated .cvco-upload__visible-label--text{display:block;width:100%;font-size:16px;font-weight:700}.cvco-app--deprecated .cvco-upload__content-hint{display:block;width:100%;margin-bottom:10px;padding-right:20px;font-size:12px}.cvco-app--deprecated .cvco-file-upload{width:100%;max-width:100%;border:1px solid #4a48c1;border-radius:5px}.cvco-app--deprecated .cvco-file-upload:hover{background-color:rgba(74,72,193,.1)}.cvco-app--deprecated .cvco-file-upload.cvco-focus-within{outline:1px dotted #212121;outline:5px auto -webkit-focus-ring-color}.cvco-app--deprecated .cvco-upload__input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}.cvco-app--deprecated .cvco-upload__label{display:flex;align-items:center;justify-content:flex-start;width:100%;padding:10px;text-align:left}.cvco-app--deprecated .cvco-upload__label .cvco-icon{flex:0 0 32px;width:32px;height:32px;margin-right:10px}.cvco-app--deprecated .cvco-upload__label--text{display:block;flex:1 1 100%;max-width:100%;color:#4a48c1;font-size:14px;font-weight:700}.cvco-app--deprecated .cvco-upload__output{display:block;flex:1 1 100%;max-width:100%;font-size:12px;word-break:break-all}.cvco-app--deprecated .cvco-upload .cvco-button--primary{text-align:center}.cvco-app--deprecated .cvco-upload__button-container{display:flex;flex:0 0 100%;justify-content:flex-end}.cvco-app--deprecated .cvco-upload__cancel{margin-right:5px;padding:10px}.cvco-app--deprecated .cvco-upload__cancel:last-child{margin-right:0}.cvco-app--deprecated .cvco-progress__text{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:5px}.cvco-app--deprecated .cvco-progress__text--file-name{max-width:calc(100% - 40px);padding-right:20px;overflow:hidden;font-size:14px;font-weight:700;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.cvco-app--deprecated .cvco-progress__text--percentage{color:#6a7f8c;font-size:14px;line-height:1}.cvco-app--deprecated .cvco-progress .cvco-error{margin-top:10px}.cvco-app--deprecated .cvco-progress .cvco-error:empty{display:none}.cvco-app--deprecated .cvco-progress__bar{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;border:1px solid #003a5d;border-radius:5px;background:#fff}.cvco-app--deprecated .cvco-progress__bar::-webkit-progress-bar{border-radius:5px;background:#fff;box-shadow:inset 0 2.5px 2.5px 0 rgba(0,0,0,.22)}.cvco-app--deprecated .cvco-progress__bar::-webkit-progress-value{background-color:#4a48c1}.cvco-app--deprecated .cvco-progress__bar::-moz-progress-bar{background-color:#4a48c1}.cvco-app--deprecated .cvco-error{display:block;width:100%;margin:0 0 5px}.cvco-app--deprecated .cvco-error:empty{display:none;margin:0}.cvco-app--deprecated .cvco-error .cvco-icon{flex:0 0 16px;width:16px;height:16px;margin-right:5px}.cvco-app--deprecated .cvco-error .cvco-error__message{display:flex;align-items:flex-start;width:100%;padding:5px 10px;border-radius:5px;background-color:rgba(219,22,57,.1);color:#ad001f;font-size:12px;font-weight:700}.cvco-app--deprecated .cvco-notification{display:block;width:100%;margin:0 0 10px;padding:5px 10px;border-radius:5px;background-color:rgba(74,72,193,.1);color:#223182;font-size:12px;font-weight:700}.cvco-app--deprecated .cvco-notification:last-child{margin:0}.cvco-app--deprecated .cvco-character-count{display:flex;position:absolute;top:0;right:0;align-items:center;justify-content:right;height:100%;padding:0 10px;transform:translateX(100%);transition:transform .3s ease-in-out,opacity .2s ease .2s;opacity:0;font-size:12px;font-weight:700;line-height:1;text-align:right;pointer-events:none}.cvco-app--deprecated .cvco-character-count span{color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;text-align:right}.cvco-app--deprecated .cvco-character-exceeded .cvco-character-count,.cvco-app--deprecated .cvco-character-warning .cvco-character-count{transform:translateX(0);opacity:1}.cvco-app--deprecated .cvco-character-exceeded .cvco-character-count span{color:#db1639}.cvco-app--deprecated .cvco-card__wrapper{display:flex;flex-direction:column;height:100%}.cvco-app--deprecated .cvco-card__image{flex:0 0 auto;width:100%;height:160px;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;overflow:hidden;border-top-left-radius:10px;border-top-right-radius:10px}.cvco-app--deprecated .cvco-card__content{display:flex;flex:1 1 auto;flex-wrap:wrap;padding:10px 15px 15px}.cvco-app--deprecated .cvco-card__title{display:block;flex:0 0 100%;width:100%;margin:0 0 5px;padding:0;font-size:16px;font-weight:700}.cvco-app--deprecated .cvco-card__title:last-child{margin-bottom:0}.cvco-app--deprecated .cvco-card__description{display:block;width:100%;margin-bottom:20px}.cvco-app--deprecated .cvco-card__description:last-child{margin-bottom:0}.cvco-app--deprecated .cvco-card__content .cvco-button{display:block;align-self:flex-end;width:100%}.cvco-app--deprecated .cvco-carousel{position:relative}.cvco-app--deprecated .cvco-carousel__slides-wrapper{display:block;width:100%;overflow:hidden}.cvco-app--deprecated .cvco-carousel__slides{display:flex;position:relative;flex-direction:row;padding:0;transition:left .3s ease-in-out;list-style:none}.cvco-app--deprecated .cvco-carousel__slide{display:block;width:100%;padding:0;list-style:none}.cvco-app--deprecated .cvco-carousel-item{display:flex;flex-direction:column;width:100%;height:100%}.cvco-app--deprecated .cvco-carousel-item .cvco-button{display:block;width:100%}.cvco-app--deprecated .cvco-carousel-controls{display:flex;position:relative;justify-content:space-between;width:100%;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;padding:0;border-top:1px solid #dee3e5}.cvco-app--deprecated .cvco-carousel-controls .cvco-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background-color:transparent;background-color:initial;color:transparent;font-size:0}.cvco-app--deprecated .cvco-carousel-controls .cvco-button--previous{left:0}.cvco-app--deprecated .cvco-carousel-controls .cvco-button--next{right:0}.cvco-app--deprecated .cvco-carousel__controls .cvco-button .cvco-icon{display:block;width:16px;height:16px;padding:0;border:0}.cvco-app--deprecated .cvco-carousel__controls .cvco-button .cvco-icon svg{fill:#003a5d}.cvco-app--deprecated .cvco-carousel__pagination{display:flex;position:relative;align-items:center;justify-content:center;padding:0 10px}.cvco-app--deprecated .cvco-carousel-pagination{width:100%;margin:0 auto;padding:0}.cvco-app--deprecated .cvco-carousel-pagination,.cvco-app--deprecated .cvco-carousel-pagination__wrapper{display:flex;position:relative;flex-direction:row;justify-content:center}.cvco-app--deprecated .cvco-carousel-pagination__item{display:block;width:10px;height:10px;margin-right:10px;list-style:none}.cvco-app--deprecated .cvco-carousel-pagination__item:last-child{margin-right:0}.cvco-app--deprecated .cvco-carousel-pagination__button{display:block;width:100%;height:100%;padding:0;border:0;border-radius:10px;background:#a3b4bf}.cvco-app--deprecated .cvco-is-active .cvco-carousel-pagination__button{background-color:#003a5d}.cvco-app--deprecated .cvco-collapse-button{display:block;position:absolute;z-index:1;top:20px;right:20px;width:32px;height:32px;padding:0;border:0;border-radius:50% 50%;background-color:#fff;box-shadow:0 5px 30px rgba(53,75,90,.15),0 3px 10px rgba(53,75,90,.2)}.cvco-app--deprecated .cvco-visually-hidden,.cvco-app__live-container .cvco-visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}.cvco-modal{display:block;display:flex;position:fixed;z-index:99;top:0;left:0;align-items:center;justify-content:center;width:100%;height:100%;max-height:100%;padding:20px;background-color:hsla(0,0%,100%,.8)}.cvco-modal,.cvco-modal *,.cvco-modal :after,.cvco-modal :before{box-sizing:border-box}.cvco-modal__float{max-width:80rem;padding:5px;border:1px solid #dee3e5;border-radius:10px;outline:0;background-color:#fff;box-shadow:0 0 20px 0 rgba(0,0,0,.1)}.cvco-modal__float,.cvco-modal__inner{position:relative;width:100%;height:100%}.cvco-modal__inner{display:flex;align-items:center;justify-content:center;padding:10px;border-radius:5px;background-color:#eff3f6}.cvco-modal__image{display:block;flex:0 0 auto;width:auto;max-width:calc(95vw - 40px);max-height:calc(95vh - 40px);border:1px solid #dee3e5}.cvco-modal__close{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;position:absolute;top:20px;right:-10px;align-items:center;padding:10px 20px;transition:background-color .3s ease-in-out;border:1px solid #dee3e5;border-radius:20px;background-color:#fff;box-shadow:0 4px 6.666px 0 rgba(0,0,0,.1);color:#4a48c1;font-size:14px;font-weight:700}.cvco-modal__close .cvco-icon{width:16px;height:16px;margin-right:5px}.cvco-modal__close .cvco-icon svg{width:inherit;height:inherit}.cvco-modal__close .cvco-icon svg path{transition:fill .3s ease-in-out;fill:#4a48c1}.cvco-modal__close:hover{transition:color .3s ease-in-out;background-color:#4a48c1;color:#fff}.cvco-modal__close:hover svg path{fill:#fff}.cvco-modal__enlarge{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;position:absolute;right:20px;bottom:20px;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:0;border-radius:20px;background:hsla(0,0%,100%,.4);color:transparent;font-size:0}.cvco-modal__enlarge svg path{fill:#4a48c1}.cvco-modal__enlarge:hover{background-color:#4a48c1}.cvco-modal__enlarge:hover .cvco-icon svg path{fill:#fff}
1
+ @-webkit-keyframes cvco-loader{0%,75%,to{transform:scaleY(.45);border-radius:50% 50%}37.5%{transform:scaleY(1);border-radius:2.5px}}@keyframes cvco-loader{0%,75%,to{transform:scaleY(.45);border-radius:50% 50%}37.5%{transform:scaleY(1);border-radius:2.5px}}@-webkit-keyframes cvco-fadeIn{0%{opacity:0}to{opacity:1}}@keyframes cvco-fadeIn{0%{opacity:0}to{opacity:1}}@-webkit-keyframes cvco-blink{0%,to{opacity:0}50%{opacity:1}}@keyframes cvco-blink{0%,to{opacity:0}50%{opacity:1}}.cvco-app--deprecated{max-width:96vw;max-height:calc(85vh - 4vw);box-sizing:border-box;display:flex;position:fixed;z-index:1;right:2vw;bottom:2vw;flex-direction:column;width:375px;height:720px;overflow:hidden;transition:height .75s ease-in-out,width .75s ease-in-out;border:1px solid #a3b4bf;border-radius:10px;outline:0;background-color:#fff;box-shadow:0 0 20px 0 rgba(0,0,0,.1);color:#3d4166;font-family:arial,helvetica,sans-serif;font-size:16px}@media(min-width:641px){.cvco-app--deprecated{max-height:calc(100vh - 4vw)}@supports(-webkit-overflow-scrolling:touch){.cvco-app--deprecated{max-height:calc(90vh - 4vw)}}}@media(min-width:1025px){.cvco-app--deprecated{right:20px;bottom:20px;max-height:calc(100vh - 40px)}@supports(-webkit-overflow-scrolling:touch){.cvco-app--deprecated{max-height:calc(90vh - 40px)}}}.cvco-app--deprecated *,.cvco-app--deprecated :after,.cvco-app--deprecated :before{box-sizing:border-box}.cvco-app--layout-inline.cvco-app--deprecated{position:relative;right:auto;bottom:auto;width:auto;height:100vh;min-height:480px;max-height:640px;transition:height .3s ease-in-out,width .3s ease-in-out;background-color:transparent;background-color:initial;box-shadow:none}@media(min-width:641px){.cvco-app--layout-inline.cvco-app--deprecated{display:block;border:0}}.cvco-app--collapsed.cvco-app--deprecated{width:195px;height:54px;border:0;background:none;box-shadow:none}.cvco-app--collapsed.cvco-app--started.cvco-app--deprecated{width:375px}.cvco-app-wrapper{display:flex;position:relative;z-index:1;flex:1 1 100%;flex-direction:column;width:100%;transition:width .3s ease-in-out,margin-right .3s ease-in-out,border-radius .3s ease-in-out;background-color:#fff}@media(min-width:641px){.cvco-app--layout-inline.cvco-app--deprecated .cvco-app-wrapper{width:50%;height:100%;margin-right:50%;border:1px solid #a3b4bf;border-top-left-radius:10px;border-bottom-left-radius:10px}.cvco-app--layout-inline.cvco-app--deprecated .cvco-app-wrapper:last-child{width:100%;margin-right:0;border-radius:10px}}@media(min-width:1025px){.cvco-app--layout-inline.cvco-app--deprecated .cvco-app-wrapper,.cvco-app--layout-inline.cvco-app--deprecated .cvco-app-wrapper:last-child{width:67%;margin-right:33%}}.cvco-chat__header{display:flex;position:relative;flex:0 0 auto;flex-direction:row;justify-content:flex-end;height:54px;padding:10px;border-bottom:1px solid #dee3e5;border-top-left-radius:10px;border-top-right-radius:10px}.cvco-app--collapsed.cvco-app--deprecated .cvco-chat__header{border-bottom:0;border-bottom-left-radius:10px;border-bottom-right-radius:10px;background-color:#4a48c1;color:#fff}.cvco-toggle-button{display:none;position:absolute;z-index:1;flex-direction:column;justify-content:center;width:100%;height:54px;margin:0;padding:10px 10px 10px 52px;border:0;background:none;background-color:transparent;color:#fff;font-size:12px}.cvco-app--collapsed.cvco-app--deprecated .cvco-toggle-button{display:flex}.cvco-toggle-button__title{margin:0;font-size:12px}.cvco-toggle-button__subtitle{margin:0;font-size:12px;font-weight:700}.cvco-toggle-button__button{position:absolute;z-index:1;top:0;left:0;width:100%;height:100%;margin:0;padding:0;border:0;background:none}.cvco-toggle-button__button:focus{outline:1px solid #fff;outline-offset:-5px}.cvco-chat__container{display:flex;position:relative;flex:1 1 auto;flex-direction:column;max-height:100%}.cvco-chat__body{display:flex;position:relative;flex-grow:4;padding:0;overflow-y:auto;border-bottom:1px solid #dee3e5}.cvco-app--collapsed.cvco-app--deprecated .cvco-chat__body{display:none}.cvco-app--layout-window.cvco-app--deprecated .cvco-chat__body{overscroll-behavior:contain;-ms-scroll-chaining:none}.cvco-chat__entry{position:relative;flex:0 0 auto;padding:10px}.cvco-app--collapsed.cvco-app--deprecated .cvco-chat__entry,.cvco-chat__entry .cvco-entry__body--hidden{display:none}.cvco-entry__body{display:flex;align-items:center}.cvco-app--deprecated p{margin:0}.cvco-app--deprecated img{max-width:100%}.cvco-app--deprecated h1,.cvco-app--deprecated h2,.cvco-app--deprecated h3,.cvco-app--deprecated h4,.cvco-app--deprecated h5,.cvco-app--deprecated h6{font-size:1rem;font-weight:400}.cvco-app--deprecated .cvco-input__checkbox{margin-right:10px}.cvco-app--deprecated .cvco-input__checkbox[aria-disabled=true]{opacity:.5}.cvco-app--deprecated .cvco-label{display:block;margin-bottom:5px;color:#4a48c1;font-size:14px;font-weight:700}.cvco-app--deprecated .cvco-input__checkbox[aria-disabled=true]+.cvco-label{opacity:.5}.cvco-app--deprecated .cvco-input__select{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:100%;padding:10px;transition:padding .3s ease-in-out;border:1px solid #dee3e5;border-radius:5px;background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiI+PHBhdGggZmlsbD0iIzRBNDhDMSIgZD0iTTIuOTk4IDYuNTAzYS45OTkuOTk5IDAgMDExLjY4Ny0uNzI3TDcuMjcgOC4yMjJjLjM5NC4zNzMgMS4wNi4zNzMgMS40NTQgMGwyLjU4Ni0yLjQ0NmEuOTk5Ljk5OSAwIDExMS4zNzQgMS40NTRsLTIuNTg2IDIuNDQ2Yy0xLjE1OSAxLjA5Ni0zLjA0MyAxLjA5Ni00LjIwMyAwTDMuMzEgNy4yMjlhLjk5NC45OTQgMCAwMS0uMzEyLS43MjZ6Ii8+PC9zdmc+");background-repeat:no-repeat;background-position:right 10px top 50%;background-size:15px auto;color:#3d4166;font-size:12px;resize:none}@supports(-webkit-overflow-scrolling:touch){.cvco-app--deprecated .cvco-input__select{font-size:16px}}.cvco-app--deprecated .cvco-input__select:hover{border:1px solid #4a48c1}.cvco-app--deprecated .cvco-input__select[aria-disabled=true],.cvco-app--deprecated .cvco-input__select[aria-disabled=true]:hover{border:1px solid #a3b4bf;background-image:url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiI+PHBhdGggZmlsbD0iI2EzYjRiZiIgZD0iTTIuOTk4IDYuNTAzYS45OTkuOTk5IDAgMDExLjY4Ny0uNzI3TDcuMjcgOC4yMjJjLjM5NC4zNzMgMS4wNi4zNzMgMS40NTQgMGwyLjU4Ni0yLjQ0NmEuOTk5Ljk5OSAwIDExMS4zNzQgMS40NTRsLTIuNTg2IDIuNDQ2Yy0xLjE1OSAxLjA5Ni0zLjA0MyAxLjA5Ni00LjIwMyAwTDMuMzEgNy4yMjlhLjk5NC45OTQgMCAwMS0uMzEyLS43MjZ6Ii8+PC9zdmc+");color:#a3b4bf}.cvco-app--deprecated .cvco-header-controls{flex-direction:row;justify-content:space-around}.cvco-app--deprecated .cvco-header-controls>button{display:inline-block;width:32px;height:32px;padding:0;overflow:hidden;vertical-align:top}.cvco-app--deprecated .cvco-header-controls .cvco-icon{width:32px;height:32px}.cvco-app--deprecated.cvco-app--collapsed .cvco-header-controls{display:none}.cvco-app--deprecated .cvco-agent-info{display:flex;flex-direction:row;flex-grow:4;align-items:center;padding:2px 0}.cvco-app--deprecated .cvco-agent-info__graphic{position:relative;flex:0 0 auto;width:32px;height:32px;margin-right:10px}.cvco-app--deprecated .cvco-agent-info__graphic .cvco-avatar,.cvco-app--deprecated .cvco-agent-info__graphic .cvco-icon{display:block;width:100%;height:100%;overflow:hidden;border-radius:5px}.cvco-app--deprecated.cvco-app--collapsed .cvco-agent-info__graphic .topbubble{fill:#fff}.cvco-app--deprecated .cvco-agent-info__body{flex:1 1 auto}.cvco-app--deprecated.cvco-app--collapsed .cvco-agent-info__body{display:none}.cvco-app--deprecated .cvco-agent-info__heading{margin:0;font-size:12px}.cvco-app--deprecated .cvco-agent-info__text{margin:0;font-size:12px;font-weight:700}.cvco-app--deprecated .cvco-avatar{display:block;position:relative;flex-shrink:0;width:32px;height:32px;overflow:hidden;border-radius:5px}.cvco-app--deprecated .cvco-avatar>.cvco-icon,.cvco-app--deprecated .cvco-avatar__graphic{display:block}.cvco-app--deprecated .cvco-conversation__message+.cvco-avatar{align-self:flex-end;margin-left:10px}.cvco-app--deprecated .cvco-avatar--bg-white{background-color:#fff}.cvco-app--deprecated .cvco-avatar--arrow-right{margin-right:5px;overflow:visible}.cvco-app--deprecated .cvco-avatar--arrow-right:after{content:"";display:inline-block;position:absolute;top:50%;right:-6.666px;width:0;height:0;transform:translateY(-50%);border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:8px solid #003a5d}.cvco-app--deprecated .cvco-button{display:inline-block;margin:0;padding:0;border:0;background:none;text-align:left;cursor:pointer}.cvco-app--deprecated .cvco-button span{color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit}.cvco-app--deprecated .cvco-button--primary{min-height:30px;padding:5px 15px;border-radius:15px;border-color:#fff;background-color:#4a48c1;color:#fff;font-weight:700}.cvco-app--deprecated .cvco-button--secondary{padding:10px;color:#4a48c1;font-weight:700}.cvco-app--deprecated .cvco-button--tertiary{padding:2px 5px;border-radius:10px;background-color:transparent;background-color:initial;color:#fff;font-size:12px;font-weight:700}.cvco-app--deprecated .cvco-button[aria-disabled=true]{color:#5e727b;cursor:auto}.cvco-app--deprecated .cvco-button--choose-again{display:flex;align-items:center;margin:5px 0 10px;padding:0}.cvco-app--deprecated .cvco-button--choose-again:last-child{margin-bottom:0}.cvco-app--deprecated .cvco-button--choose-again .cvco-icon{display:flex;flex:0 0 8px;align-items:center;justify-content:center;width:8px;height:8px;margin:3px 5px;transform-origin:50% 50%;transition:transform .3s ease-in-out}.cvco-app--deprecated .cvco-button--choose-again[aria-expanded=true] .cvco-icon{transform:rotate(180deg)}.cvco-app--deprecated .cvco-button--choose-again .cvco-icon svg{display:block;width:100%}.cvco-app--deprecated .cvco-button__state{display:inline-block;margin:-3px -3px -3px 3px;padding:3px 5px;border-radius:5px;background-color:#eff3f6;color:inherit}.cvco-app--deprecated .cvco-choice-prompt{display:flex;flex-direction:column;padding:0}.cvco-app--deprecated .cvco-choice-prompt__item{display:block;width:100%;margin-top:5px;margin-left:0}.cvco-app--deprecated .cvco-choice-prompt__item:first-child{margin-top:0}.cvco-app--deprecated .cvco-choice-prompt__item .cvco-button{display:block;width:100%;white-space:normal}.cvco-app--deprecated .cvco-choice-prompt__item--secondary .cvco-button{background-color:transparent;background-color:initial;color:#4a48c1}.cvco-app--deprecated .cvco-conversation__container{display:flex;position:absolute;top:0;right:0;bottom:0;left:0;flex:1 1 100%;flex-direction:column;justify-content:space-between;height:100%;max-height:100%}.cvco-app--deprecated .cvco-conversation{list-style:none;width:100%;margin:auto 0 0;padding:20px 20px 0}.cvco-app--deprecated .cvco-conversation:after{content:"";display:block;flex:0 0 100%;width:100%;height:20px}.cvco-app--deprecated .cvco-app--layout-inline .cvco-conversation{position:relative}.cvco-app--deprecated .cvco-conversation__item{width:100%;min-height:0;margin-top:10px}.cvco-app--deprecated .cvco-conversation__item--new-participant{margin-top:20px}.cvco-app--deprecated .cvco-divider{display:flex;position:relative;justify-content:center;margin:20px -20px 0;padding:65px 30px 0;overflow:hidden;background:linear-gradient(180deg,#fff,#eff3f6);background-repeat:no-repeat;background-size:100% 40px;font-family:arial,helvetica,sans-serif;font-size:12px;line-height:1.5}.cvco-app--deprecated .cvco-divider:before{content:"";position:absolute;top:0;left:50%;width:100%;height:40px;transform:translateX(-50%);background:radial-gradient(110px at 50%,at 300%,rgba(74,72,193,.5) 0,hsla(0,0%,100%,0) 99.99%,rgba(74,72,193,0) 100%);background:radial-gradient(110px at 50% 300%,rgba(74,72,193,.5) 0,hsla(0,0%,100%,0) 99.99%,rgba(74,72,193,0) 100%);background-repeat:no-repeat}.cvco-app--deprecated .cvco-divider--type-time-indicator{padding-top:60px;padding-bottom:20px}.cvco-app--deprecated .cvco-divider--type-time-indicator:before{display:none}.cvco-app--deprecated .cvco-conversation__item:first-child .cvco-divider{margin-top:0;padding-bottom:10px}.cvco-app--deprecated .cvco-divider__graphic{position:absolute;top:40px;left:50%;width:32px;height:32px;transform:translate(-50%,-60%);border-radius:5px;background:#fff}.cvco-app--deprecated .cvco-divider__graphic .cvco-avatar,.cvco-app--deprecated .cvco-divider__graphic .cvco-icon,.cvco-app--deprecated .cvco-divider__graphic .cvco-icon svg{width:100%;height:100%}.cvco-app--deprecated .cvco-divider__time{text-align:center}.cvco-app--deprecated .cvco-divider__time span{display:block}.cvco-app--deprecated .cvco-divider__time span:first-of-type{font-weight:700}.cvco-app--deprecated .cvco-divider--type-newtranslation{text-align:center}.cvco-app--deprecated .cvco-divider--type-newtranslation .cvco-divider__body{max-width:80%}.cvco-app--deprecated .cvco-divider--type-newtranslation .cvco-divider__title{font-weight:700}.cvco-app--deprecated .cvco-divider .cvco-button{padding:0;font-size:inherit}.cvco-app--deprecated .cvco-loader{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;height:20px;padding:2.5px 5px;-webkit-animation:cvco-fadeIn .3s linear;animation:cvco-fadeIn .3s linear}.cvco-app--deprecated .cvco-loader__part{display:inline-block;width:6.666px;height:100%;margin-right:5px;transform:scaleY(.45);-webkit-animation-name:cvco-loader;animation-name:cvco-loader;-webkit-animation-duration:.6s;animation-duration:.6s;-webkit-animation-timing-function:ease;animation-timing-function:ease;-webkit-animation-delay:.12s;animation-delay:.12s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-direction:normal;animation-direction:normal;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;border-radius:50% 50%;background-color:currentColor}.cvco-app--deprecated .cvco-loader__part.cvco-one{-webkit-animation-delay:.12s;animation-delay:.12s}.cvco-app--deprecated .cvco-loader__part.cvco-two{-webkit-animation-delay:.24s;animation-delay:.24s}.cvco-app--deprecated .cvco-loader__part.cvco-three{-webkit-animation-delay:.36s;animation-delay:.36s}.cvco-app--deprecated .cvco-loader__part.cvco-four{margin-right:0;-webkit-animation-delay:.48s;animation-delay:.48s}.cvco-app--deprecated .cvco-loader--white .cvco-loader__part{background-color:#fff}.cvco-app--deprecated .cvco-loader--grey .cvco-loader__part{background-color:#dee3e5}.cvco-app--deprecated .cvco-message{display:flex;flex-direction:row;flex-wrap:wrap;width:80%;font-family:arial,helvetica,sans-serif;font-size:12px;line-height:1.5}.cvco-app--deprecated .cvco-message+.cvco-message,.cvco-app--deprecated .cvco-message+div>.cvco-message{margin-top:10px}.cvco-app--deprecated .cvco-message__author{display:none;flex-direction:row;align-items:center;justify-content:flex-start;width:100%;margin-bottom:.3rem;padding:0 10px;font-weight:700}.cvco-app--deprecated .cvco-message__avatar{width:16px;height:16px;margin:0 .5em 0 0}.cvco-app--deprecated .cvco-message__avatar .cvco-avatar{display:block;width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.cvco-app--deprecated .cvco-conversation__item--new-participant .cvco-message__author,.cvco-app--deprecated .cvco-divider--type-time-indicator+.cvco-message--source-agent .cvco-message__author,.cvco-app--deprecated .cvco-divider--type-time-indicator+.cvco-message--source-user .cvco-message__author{display:flex}.cvco-app--deprecated .cvco-message__body{display:block;position:relative;max-width:100%;margin-bottom:5px;padding:10px 15px;border-radius:10px;background-color:#eff3f6;color:#3d4166}.cvco-app--deprecated .cvco-message__body .cvco-icon svg path{fill:#3d4166}.cvco-app--deprecated .cvco-message__body:last-child{margin-bottom:0}.cvco-app--deprecated .cvco-message__info,.cvco-app--deprecated .cvco-message__translation-info{width:100%}.cvco-app--deprecated.cvco-app--collapsed .cvco-message__translation-info{display:none}.cvco-app--deprecated .cvco-message__translation-label{margin-right:5px;font-size:12px}.cvco-app--deprecated .cvco-button.cvco-message__translation-toggle{padding:0;font-size:inherit}.cvco-app--deprecated .cvco-conversation__item--source-info{margin-top:20px;margin-bottom:20px}.cvco-app--deprecated .cvco-conversation__item--source-info:last-child{margin-bottom:0}.cvco-app--deprecated .cvco-conversation__item--source-info .cvco-message{width:90%;max-width:90%;margin:0 auto}.cvco-app--deprecated .cvco-conversation__item--source-info .cvco-message:after{content:"";display:block;width:20px;height:0;margin:0 auto;border-top:2px solid #4a48c1}.cvco-app--deprecated .cvco-conversation__item--source-info .cvco-message__body{flex:0 0 100%;width:100%;padding:0 15px 10px;border-radius:0;background-color:transparent;background-color:initial;text-align:center}.cvco-app--deprecated .cvco-message--source-user{justify-content:flex-end;margin-left:auto}.cvco-app--deprecated .cvco-message--source-user .cvco-message__author{justify-content:flex-end}.cvco-app--deprecated .cvco-message--source-user .cvco-message__body{background-color:#223182;color:#fff}.cvco-app--deprecated .cvco-message--source-user .cvco-message__body .cvco-icon svg path{fill:#fff}.cvco-app--deprecated .cvco-message--source-user .cvco-message__avatar{order:2;margin:0 0 0 .5em}.cvco-app--deprecated .cvco-message--source-user .cvco-message__author-name{order:1}.cvco-app--deprecated .cvco-message--source-user .cvco-message__info,.cvco-app--deprecated .cvco-message--source-user .cvco-message__translation-info{text-align:right}.cvco-app--deprecated .cvco-message--type-text .cvco-message__body ol:only-child,.cvco-app--deprecated .cvco-message--type-text .cvco-message__body p:only-child,.cvco-app--deprecated .cvco-message--type-text .cvco-message__body ul:only-child{margin:0}.cvco-app--deprecated .cvco-message--type-text .cvco-message__body ol:last-child,.cvco-app--deprecated .cvco-message--type-text .cvco-message__body p:last-child,.cvco-app--deprecated .cvco-message--type-text .cvco-message__body ul:last-child{margin-bottom:0}.cvco-app--deprecated .cvco-message--type-text .cvco-message__body ol,.cvco-app--deprecated .cvco-message--type-text .cvco-message__body p,.cvco-app--deprecated .cvco-message--type-text .cvco-message__body ul{margin:0 0 1em}.cvco-app--deprecated .cvco-message--type-text .cvco-message__body ol,.cvco-app--deprecated .cvco-message--type-text .cvco-message__body ul{padding-left:1.5em}.cvco-app--deprecated .cvco-message--type-text .cvco-message__body a{color:#4a48c1;word-wrap:break-word;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.cvco-app--deprecated .cvco-message--type-text .cvco-message__body a:hover{text-decoration:none}.cvco-app--deprecated .cvco-message--type-text.cvco-message--source-user .cvco-message__body a{color:#fff}.cvco-app--deprecated .cvco-message--type-loading .cvco-message__body{align-self:flex-start}.cvco-app--deprecated .cvco-message--type-loading.cvco-message--source-user .cvco-message__body{align-self:flex-end}.cvco-app--deprecated .cvco-message--type-choice-prompt .cvco-message__body{width:100%}.cvco-app--deprecated .cvco-message--type-choice-prompt:not(.cvco-message--type-choice-prompt-selected) .cvco-message__body{padding:0;background:none}.cvco-app--deprecated .cvco-message--type-choice-prompt-selected .cvco-message__choice-indicator{content:"";position:absolute;top:10px;right:0;width:1.5em;height:1.5em;padding:4px;transform:translate(48%,-4px);border-radius:50%;background:#fff;box-shadow:0 4px 4px rgba(0,0,0,.25)}.cvco-app--deprecated .cvco-message--type-choice-prompt-selected .cvco-message__choice-indicator>svg{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cvco-app--deprecated .cvco-message--type-image .cvco-message__body{padding:0}.cvco-app--deprecated .cvco-message--type-image .cvco-message__body img{display:block;width:100%;height:auto;overflow:hidden;border-radius:10px}.cvco-app--deprecated .cvco-message--type-video .cvco-message__body{width:100%;padding:0 0 66%;background-color:#000}.cvco-app--deprecated .cvco-message--type-video .cvco-message__body iframe{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;border:0;border-radius:10px}.cvco-app--deprecated .cvco-message--type-upload .cvco-download{display:flex;align-items:center;width:100%;text-decoration:line-through;word-break:break-all}.cvco-app--deprecated .cvco-message--type-upload .cvco-download-link{color:inherit;text-decoration:underline}.cvco-app--deprecated .cvco-message--type-upload .cvco-download-link:hover{text-decoration:none}.cvco-app--deprecated .cvco-message--type-upload .cvco-icon{flex:0 0 16px;width:16px;height:16px;margin-right:10px}.cvco-app--deprecated .cvco-message--type-upload .cvco-icon svg{width:100%;height:100%}.cvco-app--deprecated .cvco-message--deleted .cvco-file-download{text-decoration:line-through}.cvco-app--deprecated .cvco-message .cvco-message__info{margin-top:4px;color:#6a7f8c;font-size:12px;line-height:1.35}.cvco-app--deprecated .cvco-message--type-cta .cvco-message__body{display:flex;flex-direction:column;width:100%;padding:10px 15px 15px;background-color:#223182}.cvco-app--deprecated .cvco-message--type-cta .cvco-cta__content{margin-bottom:10px;color:#fff;font-size:14px;line-height:1.5}.cvco-app--deprecated .cvco-message--type-cta .cvco-cta__content p{color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit}.cvco-app--deprecated .cvco-message--type-cta .cvco-button{margin-bottom:10px;line-height:2;text-decoration:none}.cvco-app--deprecated .cvco-message--type-cta .cvco-button:last-child{margin-bottom:0}.cvco-app--deprecated .cvco-message--type-card .cvco-message__body{display:flex;flex-direction:column;width:100%;padding:0}.cvco-app--deprecated .cvco-message--type-carousel .cvco-message__body{display:block;padding:0}.cvco-app--deprecated .cvco-message-count{display:flex;position:absolute;top:-8px;right:-8px;align-items:center;justify-content:center;width:20px;height:20px;transform:scale(1);transition:transform .3s cubic-bezier(.175,.885,.32,1.275) .5s;border-radius:50% 50%;background-color:#db1639;color:#fff;font-size:12px;font-weight:700;line-height:1}.cvco-app--deprecated .cvco-message-count.cvco-message-count__empty,.cvco-app--deprecated .cvco-message-count__hide{transform:scale(0);transition:transform .3s linear 0s}.cvco-app--deprecated .cvco-icon{display:inline-block;line-height:1}.cvco-app--deprecated .cvco-entry-form{display:flex;flex:1 1 100%;width:100%;height:100%}.cvco-app--deprecated .cvco-input--text__container{display:flex;position:relative;flex:1 1 100%;height:100%;margin-right:5px}.cvco-app--deprecated .cvco-input__text{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex-grow:4;height:100%;margin-right:5px;padding:10px;transition:padding .3s ease-in-out;border:1px solid transparent;border-radius:5px;color:#3d4166;font-size:12px;resize:none}@supports(-webkit-overflow-scrolling:touch){.cvco-app--deprecated .cvco-input__text{font-size:16px}}.cvco-app--deprecated .cvco-input__text::-webkit-input-placeholder{overflow:visible;color:#a3b4bf;line-height:20px}.cvco-app--deprecated .cvco-input__text::-moz-placeholder{overflow:visible;color:#a3b4bf;line-height:20px}.cvco-app--deprecated .cvco-input__text:-ms-input-placeholder{overflow:visible;color:#a3b4bf;line-height:20px}.cvco-app--deprecated .cvco-input__text:-moz-placeholder{overflow:visible;color:#a3b4bf;line-height:20px}.cvco-app--deprecated .cvco-input--text__container .cvco-input__text{width:100%;margin-right:0}.cvco-app--deprecated .cvco-character-exceeded .cvco-input__text,.cvco-app--deprecated .cvco-character-warning .cvco-input__text{padding-right:40px}.cvco-app--deprecated .cvco-character-exceeded .cvco-input__text{border:1px solid #db1639}.cvco-app--deprecated .cvco-input__submit{display:flex;align-items:center;justify-content:center;padding:0}.cvco-app--deprecated .cvco-input__submit[aria-disabled=true]{opacity:.5;cursor:auto}.cvco-app--deprecated .cvco-input__submit .cvco-icon{width:32px;height:32px}.cvco-app--deprecated .cvco-faqs{display:none;width:100%;height:0;min-height:0;transition:height .3s ease-in-out,min-height .3s ease-in-out,transform .3s ease-in-out;background-color:#eff3f6}.cvco-app--deprecated.cvco-app--layout-window .cvco-faqs{overscroll-behavior:contain;-ms-scroll-chaining:none}@media(min-width:641px){.cvco-app--deprecated.cvco-app--layout-inline .cvco-faqs{position:absolute;top:0;left:50%;flex-direction:column;width:50%;height:480px;min-height:480px;max-height:100%;transform:translateX(-100%);border:1px solid #a3b4bf;border-left:0;border-top-right-radius:10px;border-bottom-right-radius:10px}}@media(min-width:1025px){.cvco-app--deprecated.cvco-app--layout-inline .cvco-faqs{left:67%;width:33%}}.cvco-app--deprecated .cvco-faqs.cvco-transition--visible{display:block}@media(min-width:641px){.cvco-app--deprecated.cvco-app--layout-inline .cvco-faqs.cvco-transition--visible{display:flex}}.cvco-app--deprecated.cvco-app--collapsed .cvco-faqs,.cvco-app--deprecated.cvco-app--collapsed .cvco-faqs.cvco-transition--visible{display:none}.cvco-app--deprecated .cvco-faqs.cvco-transition--in{height:30%;max-height:240px;overflow-y:auto}@media(min-width:641px){.cvco-app--deprecated.cvco-app--layout-inline .cvco-faqs.cvco-transition--in{height:480px;min-height:480px;max-height:100%;overflow-y:visible;overflow-y:initial;transform:translateX(0)}}.cvco-app--deprecated .cvco-faqs__heading{flex:0 0 auto;margin:0;padding:20px 20px 10px;transition:opacity .3s ease-in-out;opacity:0;color:#003a5d;font-size:14px;font-weight:700}.cvco-app--deprecated .cvco-faqs__heading:last-child{padding-bottom:20px}.cvco-app--deprecated .cvco-faqs.cvco-transition--in .cvco-faqs__heading{transition:opacity .3s ease-in-out .2s;opacity:1}.cvco-app--deprecated .cvco-faqs__list{margin:0;list-style:none;display:block;width:100%;height:auto;padding:0 20px;transition:opacity .3s ease-in-out;opacity:0}.cvco-app--deprecated .cvco-faqs__list:after{content:"";display:block;flex:0 0 20px;width:100%;height:20px}.cvco-app--deprecated .cvco-faqs.cvco-transition--in .cvco-faqs__list{transition:opacity .3s ease-in-out .2s;opacity:1}@media(min-width:641px){.cvco-app--deprecated.cvco-app--layout-inline .cvco-faqs__list{flex:1 1 100%;height:100%;max-height:100%;overflow-y:auto}}.cvco-app--deprecated .cvco-faqs__item{display:block;width:100%;margin-bottom:5px}.cvco-app--deprecated .cvco-faqs__item:last-child{margin-bottom:0}.cvco-app--deprecated .cvco-faqs__item .cvco-button.cvco-button--secondary{position:relative;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;padding:0 0 0 15px;border:0;border-radius:5px;background:transparent none repeat 0 0/auto auto padding-box border-box scroll;background:initial;font-size:12px;text-align:left;text-decoration:none;text-decoration:initial;white-space:normal}.cvco-app--deprecated .cvco-faqs__item .cvco-button.cvco-button--secondary:hover{color:#223182;text-decoration:underline}.cvco-app--deprecated .cvco-faqs__item .cvco-button.cvco-button--secondary .cvco-icon{position:absolute;left:0;width:8px;height:8px;transition:transform .3s ease-in-out}.cvco-app--deprecated .cvco-faqs__item .cvco-button.cvco-button--secondary:hover .cvco-icon{transform:translateX(5px)}.cvco-app--deprecated .cvco-faqs__item .cvco-button.cvco-button--secondary:hover .cvco-icon svg path{fill:#223182}.cvco-app--deprecated.cvco-app--layout-window .cvco-faqs__list{overscroll-behavior:contain;-ms-scroll-chaining:none}.cvco-app--deprecated .cvco-interrupt{display:flex;position:absolute;top:0;right:0;bottom:0;left:0;background:#fff}.cvco-app--deprecated .cvco-interrupt__body{display:flex;flex:1 1 auto;flex-direction:column;align-items:center;justify-content:center;margin:10px;padding:40px;border:1px solid #dee3e5;border-radius:10px}.cvco-app--deprecated .cvco-interrupt__title{font-size:16px;font-weight:700}.cvco-app--deprecated .cvco-interrupt__message{margin-bottom:40px;font-size:16px}.cvco-app--deprecated .cvco-interrupt__actions{margin-top:auto}.cvco-app--deprecated .cvco-skip-link{position:absolute;z-index:100;top:10px;left:50%;padding:10px 20px;transform:translate(-50%,-5px) scale(0);transform-origin:50% 0;transition:transform .3s ease-in-out,opacity .3s ease-in-out;border:1px solid #fff;border-radius:20px;opacity:0;background:#4a48c1;color:#fff;font-size:12px}.cvco-app--deprecated .cvco-skip-link:focus{transform:translate(-50%) scale(1);opacity:1}.cvco-app--deprecated .cvco-svg-graphic{display:inline-block;position:relative}.cvco-app--deprecated .cvco-svg-graphic__path-fill-primary{fill:#003a5d}.cvco-app--deprecated .cvco-svg-graphic__path-fill-secondary{fill:#223182}.cvco-app--deprecated .cvco-svg-graphic__path-fill-tertiary{fill:#4a48c1}.cvco-app--deprecated .cvco-svg-graphic__path-fill-white{fill:#fff}.cvco-app--deprecated .cvco-svg-graphic__path-fill-black{fill:#000}.cvco-app--deprecated .cvco-svg-graphic__path-fill-highlight{fill:#ffc700}.cvco-app--deprecated .cvco-svg-graphic__path-fill-positive{fill:#00875e}.cvco-app--deprecated .cvco-svg-graphic__path-fill-negative{fill:#db1639}.cvco-app--deprecated .cvco-disclaimer{display:block;flex:0 0 auto;width:100%;height:auto;padding:10px 20px;background-color:#eff3f6}.cvco-app--deprecated.cvco-app--collapsed .cvco-disclaimer{display:none}.cvco-app--deprecated .cvco-disclaimer__title{margin:0 0 5px;padding-right:20px;font-size:12px;font-weight:700;line-height:1}.cvco-app--deprecated .cvco-disclaimer__message{font-size:12px;line-height:1.25}.cvco-app--deprecated .cvco-idle{display:flex;flex-direction:column;align-items:center;justify-content:space-between;max-height:none;padding:10px}.cvco-app--deprecated .cvco-idle__title{margin-top:0;margin-bottom:5px;font-size:16px;font-weight:700;text-align:center}.cvco-app--deprecated .cvco-idle__title:last-child{margin-bottom:0}.cvco-app--deprecated .cvco-idle__count-container{display:block;width:100%;height:2.75em;margin-bottom:10px;font-size:12px}.cvco-app--deprecated .cvco-idle__count-text,.cvco-app--deprecated .cvco-idle__count-timer{display:block;width:100%;font-size:inherit;text-align:center;white-space:nowrap}.cvco-app--deprecated .cvco-idle__options{display:flex;flex-wrap:wrap;justify-content:center;width:100%;margin:0;padding:0;list-style-type:none}.cvco-app--deprecated .cvco-idle__options .cvco-button{margin:5px 5px 0;text-align:center;white-space:normal}.cvco-app--deprecated .cvco-prompt{display:flex;flex-direction:column;align-items:center;justify-content:space-between;max-height:none;padding:10px}.cvco-app--deprecated .cvco-prompt__title{margin-top:0;margin-bottom:5px;font-size:16px;font-weight:700;text-align:center}.cvco-app--deprecated .cvco-prompt__title:last-child{margin-bottom:0}.cvco-app--deprecated .cvco-prompt__options{display:flex;flex-wrap:wrap;justify-content:center;width:100%;margin:0;padding:0;list-style-type:none}.cvco-app--deprecated .cvco-prompt__options .cvco-button{margin:5px 5px 0;text-align:center;white-space:normal}.cvco-app--deprecated .cvco-chat__options{display:flex;position:relative;align-items:center;justify-content:flex-end;padding:5px;border-top:1px solid #dee3e5}.cvco-app--deprecated .cvco-chat__options-item--left{margin-right:auto}.cvco-app--deprecated.cvco-app--collapsed .cvco-chat__options{display:none}.cvco-app--deprecated .cvco-chat__options__button{display:flex;align-items:center;justify-content:flex-end;padding:5px 10px;border-radius:15px}.cvco-app--deprecated.cvco-app--collapsed .cvco-chat__options-button{display:none}.cvco-app--deprecated .cvco-chat__options__button .cvco-icon{flex:0 0 15px;width:15px;height:15px;margin-right:5px}.cvco-app--deprecated .cvco-chat__options__button .cvco-icon svg{width:100%;height:100%}.cvco-app--deprecated .cvco-chat__options__button[aria-disabled=true] .cvco-icon path{fill:currentColor}.cvco-app--deprecated .cvco-options__menu{display:none;position:absolute;right:10px;bottom:calc(100% + 10px);max-width:300px;max-height:400px;margin:0;padding:10px;transform:scaleY(0) translateY(100px);transform-origin:100% 100%;transition:transform .2s ease-in-out,opacity .2s ease;border:1px solid #dee3e5;border-radius:5px;opacity:0;background-color:#fff;box-shadow:0 0 20px 0 rgba(0,0,0,.1);list-style:none}.cvco-app--deprecated .cvco-options__menu.cvco-transition--visible{display:block}.cvco-app--deprecated .cvco-options__menu.cvco-transition--in{transform:scaleY(1) translateY(0);opacity:1}.cvco-app--deprecated .cvco-options__menu__item{margin-bottom:5px;transition:opacity .1s ease .1s;opacity:0}.cvco-app--deprecated .cvco-options__menu__item:last-child{margin-bottom:0}.cvco-app--deprecated .cvco-options__menu.cvco-transition--in .cvco-options__menu__item{opacity:1}.cvco-app--deprecated .cvco-options__menu .cvco-button{display:flex;align-items:center;width:100%;min-width:200px;border-radius:5px}.cvco-app--deprecated .cvco-options__menu .cvco-button:hover{background-color:#223182;color:#fff}.cvco-app--deprecated .cvco-options__menu .cvco-button[aria-disabled=true]:hover{background-color:transparent;background-color:initial;color:#5e727b}.cvco-app--deprecated .cvco-options{display:none;position:absolute;right:10px;bottom:calc(100% + 10px);flex-direction:column;width:calc(100% - 20px);max-width:300px;margin:0;padding:0;transform:scaleY(0) translateY(100px);transform-origin:100% 100%;transition:transform .2s ease-in-out,opacity .2s ease;border:1px solid #dee3e5;border-radius:5px;opacity:0;background-color:#fff;box-shadow:0 0 20px 0 rgba(0,0,0,.1);list-style:none}.cvco-app--deprecated .cvco-options--left{right:auto;left:10px}.cvco-app--deprecated .cvco-options--right{right:10px}.cvco-app--deprecated .cvco-options__dialog.cvco-transition--visible .cvco-options{display:flex}.cvco-app--deprecated .cvco-options__dialog.cvco-transition--in .cvco-options{transform:scaleY(1) translateY(0);opacity:1}.cvco-app--deprecated .cvco-options__body{display:flex;flex-direction:column;max-height:300px;transition:opacity .1s ease .1s;opacity:0}.cvco-app--deprecated .cvco-options__dialog.cvco-transition--in .cvco-options__body{opacity:1}.cvco-app--deprecated .cvco-options__title{display:flex;flex:0 0 auto;align-items:center;width:calc(100% - 42px);margin:0;padding:20px 20px 10px;color:#223182;font-size:16px;font-weight:700}.cvco-app--deprecated .cvco-options__close{position:absolute;top:10px;right:10px;width:32px;height:32px;font-size:0}.cvco-app--deprecated .cvco-options__close .cvco-icon{display:flex;align-items:center;justify-content:center}.cvco-app--deprecated .cvco-options__body form{display:flex;flex:1 1 auto;flex-direction:column;width:100%}.cvco-app--deprecated .cvco-options__wrapper{display:flex;flex:1 1 auto;flex-wrap:wrap;align-items:flex-start;width:100%;padding:0 20px;overflow:auto}.cvco-app--deprecated .cvco-options__wrapper:last-child:after{content:"";display:block;flex:0 0 100%;width:100%;height:20px}.cvco-app--deprecated .cvco-options__body div{width:100%}.cvco-app--deprecated .cvco-options__wrapper h3{margin:0;color:#223182;font-size:14px;font-weight:700}.cvco-app--deprecated .cvco-options__description{display:block;width:100%;margin-bottom:10px;font-size:14px}.cvco-app--deprecated .cvco-transcript__input{width:100%;padding:10px;transition:padding .3s ease-in-out;border:1px solid #dee3e5;border-radius:5px;font-size:12px}.cvco-app--deprecated .cvco-transcript__input:focus{border:1px solid #dee3e5}@supports(-webkit-overflow-scrolling:touch){.cvco-app--deprecated .cvco-transcript__input{font-size:16px}}.cvco-app--deprecated .cvco-transcript__input::-webkit-input-placeholder{overflow:visible;color:#a3b4bf;line-height:20px}.cvco-app--deprecated .cvco-transcript__input::-moz-placeholder{overflow:visible;color:#a3b4bf;line-height:20px}.cvco-app--deprecated .cvco-transcript__input:-ms-input-placeholder{overflow:visible;color:#a3b4bf;line-height:20px}.cvco-app--deprecated .cvco-transcript__input:-moz-placeholder{overflow:visible;color:#a3b4bf;line-height:20px}.cvco-app--deprecated .cvco-options__active-language{color:#3d4166;font-size:14px}.cvco-app--deprecated .cvco-options__actions{display:flex;flex:0 0 auto;justify-content:flex-end;width:100%;margin-top:10px;padding:0}.cvco-app--deprecated .cvco-options__actions .cvco-button{width:100%;margin-right:10px}.cvco-app--deprecated .cvco-options__actions .cvco-button:last-child{margin-right:0}.cvco-app--deprecated .cvco-chat-status{display:flex;align-items:center;justify-content:space-between;padding:10px;border-bottom:1px solid #dee3e5;background-color:#fff}.cvco-app--deprecated.cvco-app--collapsed .cvco-chat-status{display:none}.cvco-app--deprecated .cvco-chat-status__title{display:flex;align-items:center;margin:0 10px 0 0;color:#3d4166;font-size:12px;font-weight:700;line-height:1}.cvco-app--deprecated .cvco-chat-status--cobrowsing .cvco-chat-status__title:before{content:"";display:block;flex:0 0 10px;width:10px;height:10px;margin-right:5px;-webkit-animation-name:cvco-blink;animation-name:cvco-blink;-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-direction:normal;animation-direction:normal;-webkit-animation-fill-mode:forwards;animation-fill-mode:forwards;border-radius:50% 50%;background-color:#4a48c1}.cvco-app--deprecated .cvco-chat-status .cvco-button--tertiary{color:#4a48c1}.cvco-app--deprecated .cvco-upload-toggle-wrapper{width:0;height:100%;overflow:visible;transition:width .3s ease-in-out}.cvco-app--deprecated .cvco-upload-toggle-wrapper.cvco-transition--in{width:42px}.cvco-app--deprecated .cvco-upload-toggle{display:flex;flex:0 0 32px;flex-direction:column;align-items:center;justify-content:center;width:32px;height:32px;padding:0;transform:translateX(-100%);transition:transform .3s ease-in-out,opacity .3s ease-in-out;opacity:0;color:transparent;font-size:0;line-height:1;text-align:center}.cvco-app--deprecated .cvco-upload-toggle-wrapper.cvco-transition--in .cvco-upload-toggle{transform:translateX(0);opacity:1}.cvco-app--deprecated .cvco-upload-toggle .cvco-icon{flex:0 0 100%;width:100%;height:100%}.cvco-app--deprecated .cvco-upload-toggle .cvco-icon svg{width:100%;height:100%}.cvco-app--deprecated .cvco-upload{width:100%;padding:10px 10px 0}.cvco-app--deprecated .cvco-input--file{display:block}.cvco-app--deprecated .cvco-upload__container{width:100%;margin-bottom:10px}.cvco-app--deprecated .cvco-upload__visible-label--text{display:block;width:100%;font-size:16px;font-weight:700}.cvco-app--deprecated .cvco-upload__content-hint{display:block;width:100%;margin-bottom:10px;padding-right:20px;font-size:12px}.cvco-app--deprecated .cvco-file-upload{width:100%;max-width:100%;border:1px solid #4a48c1;border-radius:5px}.cvco-app--deprecated .cvco-file-upload:hover{background-color:rgba(74,72,193,.1)}.cvco-app--deprecated .cvco-file-upload.cvco-focus-within{outline:1px dotted #212121;outline:5px auto -webkit-focus-ring-color}.cvco-app--deprecated .cvco-upload__input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}.cvco-app--deprecated .cvco-upload__label{display:flex;align-items:center;justify-content:flex-start;width:100%;padding:10px;text-align:left}.cvco-app--deprecated .cvco-upload__label .cvco-icon{flex:0 0 32px;width:32px;height:32px;margin-right:10px}.cvco-app--deprecated .cvco-upload__label--text{display:block;flex:1 1 100%;max-width:100%;color:#4a48c1;font-size:14px;font-weight:700}.cvco-app--deprecated .cvco-upload__output{display:block;flex:1 1 100%;max-width:100%;font-size:12px;word-break:break-all}.cvco-app--deprecated .cvco-upload .cvco-button--primary{text-align:center}.cvco-app--deprecated .cvco-upload__button-container{display:flex;flex:0 0 100%;justify-content:flex-end}.cvco-app--deprecated .cvco-upload__cancel{margin-right:5px;padding:10px}.cvco-app--deprecated .cvco-upload__cancel:last-child{margin-right:0}.cvco-app--deprecated .cvco-progress__text{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:5px}.cvco-app--deprecated .cvco-progress__text--file-name{max-width:calc(100% - 40px);padding-right:20px;overflow:hidden;font-size:14px;font-weight:700;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.cvco-app--deprecated .cvco-progress__text--percentage{color:#6a7f8c;font-size:14px;line-height:1}.cvco-app--deprecated .cvco-progress .cvco-error{margin-top:10px}.cvco-app--deprecated .cvco-progress .cvco-error:empty{display:none}.cvco-app--deprecated .cvco-progress__bar{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;border:1px solid #003a5d;border-radius:5px;background:#fff}.cvco-app--deprecated .cvco-progress__bar::-webkit-progress-bar{border-radius:5px;background:#fff;box-shadow:inset 0 2.5px 2.5px 0 rgba(0,0,0,.22)}.cvco-app--deprecated .cvco-progress__bar::-webkit-progress-value{background-color:#4a48c1}.cvco-app--deprecated .cvco-progress__bar::-moz-progress-bar{background-color:#4a48c1}.cvco-app--deprecated .cvco-error{display:block;width:100%;margin:0 0 5px}.cvco-app--deprecated .cvco-error:empty{display:none;margin:0}.cvco-app--deprecated .cvco-error .cvco-icon{flex:0 0 16px;width:16px;height:16px;margin-right:5px}.cvco-app--deprecated .cvco-error .cvco-error__message{display:flex;align-items:flex-start;width:100%;padding:5px 10px;border-radius:5px;background-color:rgba(219,22,57,.1);color:#ad001f;font-size:12px;font-weight:700}.cvco-app--deprecated .cvco-notification{display:block;width:100%;margin:0 0 10px;padding:5px 10px;border-radius:5px;background-color:rgba(74,72,193,.1);color:#223182;font-size:12px;font-weight:700}.cvco-app--deprecated .cvco-notification:last-child{margin:0}.cvco-app--deprecated .cvco-character-count{display:flex;position:absolute;top:0;right:0;align-items:center;justify-content:right;height:100%;padding:0 10px;transform:translateX(100%);transition:transform .3s ease-in-out,opacity .2s ease .2s;opacity:0;font-size:12px;font-weight:700;line-height:1;text-align:right;pointer-events:none}.cvco-app--deprecated .cvco-character-count span{color:inherit;font-family:inherit;font-size:inherit;font-weight:inherit;text-align:right}.cvco-app--deprecated .cvco-character-exceeded .cvco-character-count,.cvco-app--deprecated .cvco-character-warning .cvco-character-count{transform:translateX(0);opacity:1}.cvco-app--deprecated .cvco-character-exceeded .cvco-character-count span{color:#db1639}.cvco-app--deprecated .cvco-card__wrapper{display:flex;flex-direction:column;height:100%}.cvco-app--deprecated .cvco-card__image{flex:0 0 auto;width:100%;height:160px;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;overflow:hidden;border-top-left-radius:10px;border-top-right-radius:10px}.cvco-app--deprecated .cvco-card__content{display:flex;flex:1 1 auto;flex-wrap:wrap;padding:10px 15px 15px}.cvco-app--deprecated .cvco-card__title{display:block;flex:0 0 100%;width:100%;margin:0 0 5px;padding:0;font-size:16px;font-weight:700}.cvco-app--deprecated .cvco-card__title:last-child{margin-bottom:0}.cvco-app--deprecated .cvco-card__description{display:block;width:100%;margin-bottom:20px}.cvco-app--deprecated .cvco-card__description:last-child{margin-bottom:0}.cvco-app--deprecated .cvco-card__content .cvco-button{display:block;align-self:flex-end;width:100%}.cvco-app--deprecated .cvco-carousel{position:relative}.cvco-app--deprecated .cvco-carousel__slides-wrapper{display:block;width:100%;overflow:hidden}.cvco-app--deprecated .cvco-carousel__slides{display:flex;position:relative;flex-direction:row;padding:0;transition:left .3s ease-in-out;list-style:none}.cvco-app--deprecated .cvco-carousel__slide{display:block;width:100%;padding:0;list-style:none}.cvco-app--deprecated .cvco-carousel-item{display:flex;flex-direction:column;width:100%;height:100%}.cvco-app--deprecated .cvco-carousel-item .cvco-button{display:block;width:100%}.cvco-app--deprecated .cvco-carousel-controls{display:flex;position:relative;justify-content:space-between;width:100%;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;padding:0;border-top:1px solid #dee3e5}.cvco-app--deprecated .cvco-carousel-controls .cvco-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background-color:transparent;background-color:initial;color:transparent;font-size:0}.cvco-app--deprecated .cvco-carousel-controls .cvco-button--previous{left:0}.cvco-app--deprecated .cvco-carousel-controls .cvco-button--next{right:0}.cvco-app--deprecated .cvco-carousel__controls .cvco-button .cvco-icon{display:block;width:16px;height:16px;padding:0;border:0}.cvco-app--deprecated .cvco-carousel__controls .cvco-button .cvco-icon svg{fill:#003a5d}.cvco-app--deprecated .cvco-carousel__pagination{display:flex;position:relative;align-items:center;justify-content:center;padding:0 10px}.cvco-app--deprecated .cvco-carousel-pagination{width:100%;margin:0 auto;padding:0}.cvco-app--deprecated .cvco-carousel-pagination,.cvco-app--deprecated .cvco-carousel-pagination__wrapper{display:flex;position:relative;flex-direction:row;justify-content:center}.cvco-app--deprecated .cvco-carousel-pagination__item{display:block;width:10px;height:10px;margin-right:10px;list-style:none}.cvco-app--deprecated .cvco-carousel-pagination__item:last-child{margin-right:0}.cvco-app--deprecated .cvco-carousel-pagination__button{display:block;width:100%;height:100%;padding:0;border:0;border-radius:10px;background:#a3b4bf}.cvco-app--deprecated .cvco-is-active .cvco-carousel-pagination__button{background-color:#003a5d}.cvco-app--deprecated .cvco-collapse-button{display:block;position:absolute;z-index:1;top:20px;right:20px;width:32px;height:32px;padding:0;border:0;border-radius:50% 50%;background-color:#fff;box-shadow:0 5px 30px rgba(53,75,90,.15),0 3px 10px rgba(53,75,90,.2)}.cvco-app--deprecated .cvco-visually-hidden,.cvco-app__live-container .cvco-visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}.cvco-modal{display:block;display:flex;position:fixed;z-index:99;top:0;left:0;align-items:center;justify-content:center;width:100%;height:100%;max-height:100%;padding:20px;background-color:hsla(0,0%,100%,.8)}.cvco-modal,.cvco-modal *,.cvco-modal :after,.cvco-modal :before{box-sizing:border-box}.cvco-modal__float{max-width:80rem;padding:5px;border:1px solid #dee3e5;border-radius:10px;outline:0;background-color:#fff;box-shadow:0 0 20px 0 rgba(0,0,0,.1)}.cvco-modal__float,.cvco-modal__inner{position:relative;width:100%;height:100%}.cvco-modal__inner{display:flex;align-items:center;justify-content:center;padding:10px;border-radius:5px;background-color:#eff3f6}.cvco-modal__image{display:block;flex:0 0 auto;width:auto;max-width:calc(95vw - 40px);max-height:calc(95vh - 40px);border:1px solid #dee3e5}.cvco-modal__close{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;position:absolute;top:20px;right:-10px;align-items:center;padding:10px 20px;transition:background-color .3s ease-in-out;border:1px solid #dee3e5;border-radius:20px;background-color:#fff;box-shadow:0 4px 6.666px 0 rgba(0,0,0,.1);color:#4a48c1;font-size:14px;font-weight:700}.cvco-modal__close .cvco-icon{width:16px;height:16px;margin-right:5px}.cvco-modal__close .cvco-icon svg{width:inherit;height:inherit}.cvco-modal__close .cvco-icon svg path{transition:fill .3s ease-in-out;fill:#4a48c1}.cvco-modal__close:hover{transition:color .3s ease-in-out;background-color:#4a48c1;color:#fff}.cvco-modal__close:hover svg path{fill:#fff}.cvco-modal__enlarge{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;position:absolute;right:20px;bottom:20px;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:0;border-radius:20px;background:hsla(0,0%,100%,.4);color:transparent;font-size:0}.cvco-modal__enlarge svg path{fill:#4a48c1}.cvco-modal__enlarge:hover{background-color:#4a48c1}.cvco-modal__enlarge:hover .cvco-icon svg path{fill:#fff}
@@ -234,7 +234,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
234
234
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
235
235
 
236
236
  "use strict";
237
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"API\": () => (/* binding */ API)\n/* harmony export */ });\n/* harmony import */ var xstream__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! xstream */ \"./node_modules/xstream/index.js\");\n/* harmony import */ var xstream__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(xstream__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var superagent__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! superagent */ \"./node_modules/superagent/lib/client.js\");\n/* harmony import */ var superagent__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(superagent__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var config__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! config */ \"./src/javascripts/config.js\");\n/* harmony import */ var lib_store_index__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! lib/store/index */ \"./src/javascripts/lib/store/index.js\");\n/* harmony import */ var lib_id__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! lib/id */ \"./src/javascripts/lib/id.js\");\n/* harmony import */ var _producer__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./producer */ \"./src/javascripts/api/producer.js\");\n/* harmony import */ var lib_store_providers_session_storage__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! lib/store/providers/session-storage */ \"./src/javascripts/lib/store/providers/session-storage.js\");\n/* harmony import */ var _event_producer__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./event-producer */ \"./src/javascripts/api/event-producer.js\");\n/* harmony import */ var _errors_seamly_session_expired_error__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./errors/seamly-session-expired-error */ \"./src/javascripts/api/errors/seamly-session-expired-error.js\");\n/* harmony import */ var _errors_seamly_configuration_error__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./errors/seamly-configuration-error */ \"./src/javascripts/api/errors/seamly-configuration-error.js\");\n/* harmony import */ var _errors_seamly_general_error__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./errors/seamly-general-error */ \"./src/javascripts/api/errors/seamly-general-error.js\");\n/* harmony import */ var _errors_seamly_unauthorized_error__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./errors/seamly-unauthorized-error */ \"./src/javascripts/api/errors/seamly-unauthorized-error.js\");\n/* harmony import */ var lib_debug__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! lib/debug */ \"./src/javascripts/lib/debug.js\");\n/* harmony import */ var lib_debug__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(lib_debug__WEBPACK_IMPORTED_MODULE_12__);\n/* harmony import */ var ui_utils_general_utils__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ui/utils/general-utils */ \"./src/javascripts/ui/utils/general-utils.js\");\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst log = lib_debug__WEBPACK_IMPORTED_MODULE_12___default()('seamly');\nconst DOMAIN = 'api.seamly-app.com';\nconst TRANSLATIONS_VERSION = 1;\n\nfunction buildPayload(command, payload) {\n if (command !== 'message') {\n return payload;\n }\n\n const {\n type,\n body\n } = payload;\n let {\n transactionId\n } = payload;\n\n if (!transactionId) {\n transactionId = (0,lib_id__WEBPACK_IMPORTED_MODULE_4__.randomId)();\n }\n\n return {\n type,\n body,\n transactionId\n };\n}\n/**\n * Tries to get the time zone key directly from the operating system for those\n * environments that support the ECMAScript Internationalization API.\n *\n * Based on https://github.com/pellepim/jstimezonedetect/blob/master/jstz.main.js\n */\n\n\nfunction getTimeZone() {\n if (!Intl || typeof Intl === 'undefined' || typeof Intl.DateTimeFormat === 'undefined') {\n return null;\n }\n\n const format = Intl.DateTimeFormat();\n\n if (typeof format === 'undefined' || typeof format.resolvedOptions === 'undefined') {\n return null;\n }\n\n const timezone = format.resolvedOptions().timeZone; // Ensure we get a valid timezone\n\n if (timezone && (timezone.indexOf('/') > -1 || timezone === 'UTC')) {\n return timezone;\n } else {\n return null;\n }\n}\n\nclass API {\n /**\n * Creates an instance of API.\n * @param {Object} [config={}]\n * @param {string} config.key Api key\n * @param {string} config.domain Domain to connect to\n * @param {string} config.secure Connect securely\n * @param {string} config.externalId Unique visitor identifier (optional)\n * @param {boolean} config.sendEnvironment\n * @param {string} layoutMode\n * @param {string} namespace\n * @param {Object} [context={ channelName: undefined, variables: undefined, locale: undefined, translationLocale: undefined }]\n * @param {string} context.channelName\n * @param {object} context.variables\n * @param {string} context.locale\n * @param {string} context.translationLocale\n * @memberof API\n */\n constructor({\n layoutMode,\n namespace,\n config = {},\n context = {}\n }) {\n this.store = (0,lib_store_index__WEBPACK_IMPORTED_MODULE_3__.objectStore)(`${namespace}.connection${context.locale ? '.' + context.locale : ''}`, config.storageProvider || lib_store_providers_session_storage__WEBPACK_IMPORTED_MODULE_6__[\"default\"]);\n this.connectionInfo = {\n apiKey: config.key,\n domain: config.domain || DOMAIN,\n secure: config.secure !== false ? config.secure || true : false\n };\n this.config = {\n sendEnvironment: config.sendEnvironment ?? true,\n context: _objectSpread(_objectSpread({}, context), {}, {\n channelName: context.channelName || 'web'\n })\n };\n this.connected = false;\n this.configReady = false;\n this.externalId = config.externalId;\n this.layoutMode = layoutMode;\n this.internalProducer = new _event_producer__WEBPACK_IMPORTED_MODULE_7__[\"default\"]('API');\n this.internal$ = xstream__WEBPACK_IMPORTED_MODULE_0___default().create(this.internalProducer).flatten();\n this.connection$ = this.internal$.filter(event => event.type === 'connection');\n this.connection$.subscribe({\n next: ({\n connected,\n ready\n }) => {\n this.connected = connected;\n this.ready = ready;\n }\n });\n this.URLS = {};\n }\n\n getAccessToken() {\n return this.store.get('accessToken');\n }\n\n setAccessToken(accessToken) {\n this.store.set('accessToken', accessToken);\n }\n\n getConversationUrl() {\n return this.store.get('conversationUrl');\n }\n\n setConversationUrl(url) {\n this.store.set('conversationUrl', url);\n }\n\n hasConversation() {\n return !!this.getConversationUrl();\n }\n\n getChannelTopic() {\n // The `channelName` fallback is needed for seamless client upgrades.\n // TODO: Remove when all clients have been upgraded past v20.\n return this.store.get('channelTopic') || this.store.get('channelName');\n }\n\n setChannelTopic(topic) {\n this.store.set('channelTopic', topic);\n }\n\n clearStore() {\n this.store.delete('accessToken');\n this.store.delete('conversationUrl'); // TODO: Remove `channelName` when all clients have been upgraded past v20.\n\n this.store.delete('channelName');\n this.store.delete('channelTopic');\n }\n\n getUrlPrefix(protocol) {\n const realProtocol = this.connectionInfo.secure ? `${protocol}s` : protocol;\n return `${realProtocol}://${this.connectionInfo.domain}`;\n }\n\n updateUrls({\n _links: responseLinks\n }) {\n this.URLS = Object.entries(responseLinks).filter(([key]) => key !== 'self').reduce((urls, [key, {\n href\n }]) => {\n return _objectSpread(_objectSpread({}, urls), {}, {\n [key]: href\n });\n }, this.URLS);\n }\n\n async reset() {\n await this.disconnect();\n this.clearStore();\n return this.getConfig();\n }\n\n async disconnect() {\n if (this.conversationProducer) {\n await this.conversationProducer.disconnect();\n }\n\n this.connected = false;\n this.configReady = false;\n }\n\n async createConversation() {\n try {\n const request = superagent__WEBPACK_IMPORTED_MODULE_1___default().post(`${this.getUrlPrefix('http')}${this.URLS.conversations}`).set('Content-Type', 'application/json').query({\n v: config__WEBPACK_IMPORTED_MODULE_2__.apiVersion\n }) // withCredentials() is necessary to allow browsers to save received\n // cookies in CORS requests.\n .withCredentials().send({\n externalId: this.externalId || undefined\n });\n const {\n body\n } = await request;\n const {\n conversation\n } = body;\n\n const initialState = _objectSpread({}, conversation);\n\n delete initialState.accessToken;\n delete initialState.channelTopic;\n this.setAccessToken(conversation.accessToken);\n this.setChannelTopic(conversation.channelTopic);\n this.updateUrls(body);\n this.setConversationUrl(this.URLS.conversation);\n return initialState;\n } catch (error) {\n if (error.status >= 500) {\n throw new _errors_seamly_general_error__WEBPACK_IMPORTED_MODULE_10__[\"default\"](error);\n }\n\n throw error;\n }\n }\n\n getConfig() {\n return superagent__WEBPACK_IMPORTED_MODULE_1___default().post(`${this.getUrlPrefix('http')}/client/${this.connectionInfo.apiKey}/configs`).set('Content-Type', 'application/json').query({\n v: config__WEBPACK_IMPORTED_MODULE_2__.apiVersion\n }).send({\n context: _objectSpread(_objectSpread({}, this.config.context), {}, {\n environment: this.config.sendEnvironment === true ? this.getEnvironment() : this.config.sendEnvironment\n })\n }).then(({\n body\n }) => {\n this.updateUrls(body);\n this.configReady = true;\n return body.config;\n }).catch(error => {\n if (error.status === 404) {\n throw new _errors_seamly_configuration_error__WEBPACK_IMPORTED_MODULE_9__[\"default\"]();\n }\n\n if (error.status >= 500) {\n throw new _errors_seamly_general_error__WEBPACK_IMPORTED_MODULE_10__[\"default\"](error);\n }\n\n throw error;\n });\n }\n\n async getConversation() {\n if (!this.hasConversation()) {\n return null;\n }\n\n try {\n const {\n body\n } = await superagent__WEBPACK_IMPORTED_MODULE_1___default().get(`${this.getUrlPrefix('http')}${this.URLS.history}`).set('Authorization', `Bearer ${this.getAccessToken()}`).query({\n v: config__WEBPACK_IMPORTED_MODULE_2__.apiVersion\n });\n this.updateUrls(body);\n const {\n messages,\n participants,\n activeServiceSessionId,\n activeServiceSettings,\n serviceData,\n ui,\n translation\n } = body.history;\n return {\n events: messages.map(([type, msg]) => {\n return {\n type,\n payload: _objectSpread(_objectSpread({}, msg), {}, {\n type: type === 'participant' ? type : msg.type\n })\n };\n }),\n participants,\n activeServiceSessionId,\n activeServiceSettings,\n serviceData,\n resumeConversationPrompt: ui ? Boolean(ui.resumeConversationPrompt) : false,\n translation\n };\n } catch (error) {\n if (error.status === 401) {\n throw new _errors_seamly_unauthorized_error__WEBPACK_IMPORTED_MODULE_11__[\"default\"](error);\n }\n\n if (error.status === 404) {\n throw new _errors_seamly_session_expired_error__WEBPACK_IMPORTED_MODULE_8__[\"default\"](error);\n }\n\n if (error.status >= 500) {\n throw new _errors_seamly_general_error__WEBPACK_IMPORTED_MODULE_10__[\"default\"](error);\n }\n\n throw error;\n }\n }\n\n async connect() {\n this.connected = false;\n let conversationInitialState = null;\n\n if (!this.hasConversation()) {\n conversationInitialState = await this.createConversation();\n }\n\n this.conversationProducer = new _producer__WEBPACK_IMPORTED_MODULE_5__[\"default\"](`${this.getUrlPrefix('ws')}${this.URLS.socket}`, this.config.context.channelName, this.getChannelTopic(), this.getAccessToken());\n this.internalProducer.emit(xstream__WEBPACK_IMPORTED_MODULE_0___default().create(this.conversationProducer)); // Send environment\n\n if (this.config.sendEnvironment) {\n this.send('context', {\n environment: this.config.sendEnvironment === true ? this.getEnvironment() : this.config.sendEnvironment\n }, false);\n }\n\n return conversationInitialState;\n }\n\n uploadFile(file, progressCallback, successCallback, errorCallback) {\n const formData = new FormData();\n formData.append('upload', file);\n const req = superagent__WEBPACK_IMPORTED_MODULE_1___default().post(`${this.getUrlPrefix('http')}${this.URLS.uploads}`).set('Authorization', `Bearer ${this.getAccessToken()}`).send(formData);\n req.on('progress', function (e) {\n const {\n direction,\n percent\n } = e;\n\n if (direction === 'upload' && typeof progressCallback === 'function') {\n progressCallback(percent);\n }\n });\n req.then(uploadResponse => {\n if (successCallback) {\n successCallback(uploadResponse);\n }\n }).catch(err => {\n if (errorCallback) {\n errorCallback(err.response);\n } else {\n throw err;\n }\n });\n return req;\n }\n\n getConversationIntitialState() {\n return superagent__WEBPACK_IMPORTED_MODULE_1___default().get(`${this.getUrlPrefix('http')}${this.getConversationUrl()}`).set('Authorization', `Bearer ${this.getAccessToken()}`).query({\n v: config__WEBPACK_IMPORTED_MODULE_2__.apiVersion\n }).then(({\n body\n }) => {\n this.updateUrls(body);\n return (0,ui_utils_general_utils__WEBPACK_IMPORTED_MODULE_13__.omit)(body.conversation, ['accessToken', 'channelTopic']);\n }).catch(error => {\n if (error.status === 401) {\n throw new _errors_seamly_unauthorized_error__WEBPACK_IMPORTED_MODULE_11__[\"default\"](error);\n }\n\n if (error.status === 404) {\n throw new _errors_seamly_session_expired_error__WEBPACK_IMPORTED_MODULE_8__[\"default\"](error);\n }\n\n if (error.status >= 500) {\n throw new _errors_seamly_general_error__WEBPACK_IMPORTED_MODULE_10__[\"default\"](error);\n }\n\n throw error;\n });\n }\n\n async getTranslations(locale) {\n try {\n const url = `${this.getUrlPrefix('http')}${this.URLS.translations}`.replace('{version}', String(TRANSLATIONS_VERSION)).replace('{locale}', locale);\n const request = superagent__WEBPACK_IMPORTED_MODULE_1___default().get(url);\n const {\n body\n } = await request;\n return body.translations;\n } catch (error) {\n if (error.status >= 500) {\n throw new _errors_seamly_general_error__WEBPACK_IMPORTED_MODULE_10__[\"default\"](error);\n }\n\n throw error;\n }\n }\n\n send(command, payload, waitForReady = true) {\n if (!this.connected || waitForReady && !this.ready) {\n // Wait for connection\n this.connection$.filter(e => waitForReady ? e.connected && e.ready : e.connected).take(1).subscribe({\n next: () => this.send(command, payload, waitForReady)\n });\n return;\n }\n\n log('[SEND]', command, payload);\n this.conversationProducer.push(command, buildPayload(command, payload), 10000);\n }\n\n sendContext(context = {}) {\n const {\n locale,\n translationLocale,\n variables\n } = context;\n const payload = {};\n\n if (locale) {\n if (typeof locale !== 'string') {\n throw new Error('Locale must be a string');\n }\n\n payload.locale = locale;\n }\n\n if (translationLocale) {\n if (typeof translationLocale !== 'string') {\n throw new Error('Translation locale must be a string');\n }\n\n payload.translationLocale = translationLocale;\n }\n\n if (variables) {\n if (typeof variables !== 'object') {\n throw new Error('Variables must be an object');\n }\n\n payload.variables = variables;\n } // If we have empty context don't send context message\n\n\n if (Object.keys(payload).length === 0 && payload.constructor === Object) {\n return;\n }\n\n this.send('context', payload, false);\n }\n\n stream() {\n return this.internal$.filter(event => event.type !== 'connection');\n }\n\n getEnvironment() {\n return {\n clientName: \"@seamly/web-ui\",\n clientVariant: this.layoutMode,\n clientVersion: \"20.2.0-alpha.1\",\n currentUrl: window.location.toString(),\n screenResolution: `${window.screen.width}x${window.screen.height}`,\n timezone: getTimeZone(),\n userAgent: navigator.userAgent\n };\n }\n\n}\n\n//# sourceURL=webpack://@seamly/web-ui/./src/javascripts/api/index.js?");
237
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"API\": () => (/* binding */ API)\n/* harmony export */ });\n/* harmony import */ var xstream__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! xstream */ \"./node_modules/xstream/index.js\");\n/* harmony import */ var xstream__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(xstream__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var superagent__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! superagent */ \"./node_modules/superagent/lib/client.js\");\n/* harmony import */ var superagent__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(superagent__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var config__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! config */ \"./src/javascripts/config.js\");\n/* harmony import */ var lib_store_index__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! lib/store/index */ \"./src/javascripts/lib/store/index.js\");\n/* harmony import */ var lib_id__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! lib/id */ \"./src/javascripts/lib/id.js\");\n/* harmony import */ var _producer__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./producer */ \"./src/javascripts/api/producer.js\");\n/* harmony import */ var lib_store_providers_session_storage__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! lib/store/providers/session-storage */ \"./src/javascripts/lib/store/providers/session-storage.js\");\n/* harmony import */ var _event_producer__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./event-producer */ \"./src/javascripts/api/event-producer.js\");\n/* harmony import */ var _errors_seamly_session_expired_error__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./errors/seamly-session-expired-error */ \"./src/javascripts/api/errors/seamly-session-expired-error.js\");\n/* harmony import */ var _errors_seamly_configuration_error__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./errors/seamly-configuration-error */ \"./src/javascripts/api/errors/seamly-configuration-error.js\");\n/* harmony import */ var _errors_seamly_general_error__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./errors/seamly-general-error */ \"./src/javascripts/api/errors/seamly-general-error.js\");\n/* harmony import */ var _errors_seamly_unauthorized_error__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./errors/seamly-unauthorized-error */ \"./src/javascripts/api/errors/seamly-unauthorized-error.js\");\n/* harmony import */ var lib_debug__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! lib/debug */ \"./src/javascripts/lib/debug.js\");\n/* harmony import */ var lib_debug__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(lib_debug__WEBPACK_IMPORTED_MODULE_12__);\n/* harmony import */ var ui_utils_general_utils__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ui/utils/general-utils */ \"./src/javascripts/ui/utils/general-utils.js\");\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nconst log = lib_debug__WEBPACK_IMPORTED_MODULE_12___default()('seamly');\nconst DOMAIN = 'api.seamly-app.com';\nconst TRANSLATIONS_VERSION = 1;\n\nfunction buildPayload(command, payload) {\n if (command !== 'message') {\n return payload;\n }\n\n const {\n type,\n body\n } = payload;\n let {\n transactionId\n } = payload;\n\n if (!transactionId) {\n transactionId = (0,lib_id__WEBPACK_IMPORTED_MODULE_4__.randomId)();\n }\n\n return {\n type,\n body,\n transactionId\n };\n}\n/**\n * Tries to get the time zone key directly from the operating system for those\n * environments that support the ECMAScript Internationalization API.\n *\n * Based on https://github.com/pellepim/jstimezonedetect/blob/master/jstz.main.js\n */\n\n\nfunction getTimeZone() {\n if (!Intl || typeof Intl === 'undefined' || typeof Intl.DateTimeFormat === 'undefined') {\n return null;\n }\n\n const format = Intl.DateTimeFormat();\n\n if (typeof format === 'undefined' || typeof format.resolvedOptions === 'undefined') {\n return null;\n }\n\n const timezone = format.resolvedOptions().timeZone; // Ensure we get a valid timezone\n\n if (timezone && (timezone.indexOf('/') > -1 || timezone === 'UTC')) {\n return timezone;\n } else {\n return null;\n }\n}\n\nclass API {\n /**\n * Creates an instance of API.\n * @param {Object} [config={}]\n * @param {string} config.key Api key\n * @param {string} config.domain Domain to connect to\n * @param {string} config.secure Connect securely\n * @param {string} config.externalId Unique visitor identifier (optional)\n * @param {boolean} config.sendEnvironment\n * @param {string} layoutMode\n * @param {string} namespace\n * @param {Object} [context={ channelName: undefined, variables: undefined, locale: undefined, translationLocale: undefined }]\n * @param {string} context.channelName\n * @param {object} context.variables\n * @param {string} context.locale\n * @param {string} context.translationLocale\n * @memberof API\n */\n constructor({\n layoutMode,\n namespace,\n config = {},\n context = {}\n }) {\n this.store = (0,lib_store_index__WEBPACK_IMPORTED_MODULE_3__.objectStore)(`${namespace}.connection${context.locale ? '.' + context.locale : ''}`, config.storageProvider || lib_store_providers_session_storage__WEBPACK_IMPORTED_MODULE_6__[\"default\"]);\n this.connectionInfo = {\n apiKey: config.key,\n domain: config.domain || DOMAIN,\n secure: config.secure !== false ? config.secure || true : false\n };\n this.config = {\n sendEnvironment: config.sendEnvironment ?? true,\n context: _objectSpread(_objectSpread({}, context), {}, {\n channelName: context.channelName || 'web'\n })\n };\n this.connected = false;\n this.configReady = false;\n this.externalId = config.externalId;\n this.layoutMode = layoutMode;\n this.internalProducer = new _event_producer__WEBPACK_IMPORTED_MODULE_7__[\"default\"]('API');\n this.internal$ = xstream__WEBPACK_IMPORTED_MODULE_0___default().create(this.internalProducer).flatten();\n this.connection$ = this.internal$.filter(event => event.type === 'connection');\n this.connection$.subscribe({\n next: ({\n connected,\n ready\n }) => {\n this.connected = connected;\n this.ready = ready;\n }\n });\n this.URLS = {};\n }\n\n getAccessToken() {\n return this.store.get('accessToken');\n }\n\n setAccessToken(accessToken) {\n this.store.set('accessToken', accessToken);\n }\n\n getConversationUrl() {\n return this.store.get('conversationUrl');\n }\n\n setConversationUrl(url) {\n this.store.set('conversationUrl', url);\n }\n\n hasConversation() {\n return !!this.getConversationUrl();\n }\n\n getChannelTopic() {\n // The `channelName` fallback is needed for seamless client upgrades.\n // TODO: Remove when all clients have been upgraded past v20.\n return this.store.get('channelTopic') || this.store.get('channelName');\n }\n\n setChannelTopic(topic) {\n this.store.set('channelTopic', topic);\n }\n\n clearStore() {\n this.store.delete('accessToken');\n this.store.delete('conversationUrl'); // TODO: Remove `channelName` when all clients have been upgraded past v20.\n\n this.store.delete('channelName');\n this.store.delete('channelTopic');\n }\n\n getUrlPrefix(protocol) {\n const realProtocol = this.connectionInfo.secure ? `${protocol}s` : protocol;\n return `${realProtocol}://${this.connectionInfo.domain}`;\n }\n\n updateUrls({\n _links: responseLinks\n }) {\n this.URLS = Object.entries(responseLinks).filter(([key]) => key !== 'self').reduce((urls, [key, {\n href\n }]) => {\n return _objectSpread(_objectSpread({}, urls), {}, {\n [key]: href\n });\n }, this.URLS);\n }\n\n async reset() {\n await this.disconnect();\n this.clearStore();\n return this.getConfig();\n }\n\n async disconnect() {\n if (this.conversationProducer) {\n await this.conversationProducer.disconnect();\n }\n\n this.connected = false;\n this.configReady = false;\n }\n\n async createConversation() {\n try {\n const request = superagent__WEBPACK_IMPORTED_MODULE_1___default().post(`${this.getUrlPrefix('http')}${this.URLS.conversations}`).set('Content-Type', 'application/json').query({\n v: config__WEBPACK_IMPORTED_MODULE_2__.apiVersion\n }) // withCredentials() is necessary to allow browsers to save received\n // cookies in CORS requests.\n .withCredentials().send({\n externalId: this.externalId || undefined\n });\n const {\n body\n } = await request;\n const {\n conversation\n } = body;\n\n const initialState = _objectSpread({}, conversation);\n\n delete initialState.accessToken;\n delete initialState.channelTopic;\n this.setAccessToken(conversation.accessToken);\n this.setChannelTopic(conversation.channelTopic);\n this.updateUrls(body);\n this.setConversationUrl(this.URLS.conversation);\n return initialState;\n } catch (error) {\n if (error.status >= 500) {\n throw new _errors_seamly_general_error__WEBPACK_IMPORTED_MODULE_10__[\"default\"](error);\n }\n\n throw error;\n }\n }\n\n getConfig() {\n return superagent__WEBPACK_IMPORTED_MODULE_1___default().post(`${this.getUrlPrefix('http')}/client/${this.connectionInfo.apiKey}/configs`).set('Content-Type', 'application/json').query({\n v: config__WEBPACK_IMPORTED_MODULE_2__.apiVersion\n }).send({\n context: _objectSpread(_objectSpread({}, this.config.context), {}, {\n environment: this.config.sendEnvironment === true ? this.getEnvironment() : this.config.sendEnvironment\n })\n }).then(({\n body\n }) => {\n this.updateUrls(body);\n this.configReady = true;\n return body.config;\n }).catch(error => {\n if (error.status === 404) {\n throw new _errors_seamly_configuration_error__WEBPACK_IMPORTED_MODULE_9__[\"default\"]();\n }\n\n if (error.status >= 500) {\n throw new _errors_seamly_general_error__WEBPACK_IMPORTED_MODULE_10__[\"default\"](error);\n }\n\n throw error;\n });\n }\n\n async getConversation() {\n if (!this.hasConversation()) {\n return null;\n }\n\n try {\n const {\n body\n } = await superagent__WEBPACK_IMPORTED_MODULE_1___default().get(`${this.getUrlPrefix('http')}${this.URLS.history}`).set('Authorization', `Bearer ${this.getAccessToken()}`).query({\n v: config__WEBPACK_IMPORTED_MODULE_2__.apiVersion\n });\n this.updateUrls(body);\n const {\n messages,\n participants,\n activeServiceSessionId,\n activeServiceSettings,\n serviceData,\n ui,\n translation\n } = body.history;\n return {\n events: messages.map(([type, msg]) => {\n return {\n type,\n payload: _objectSpread(_objectSpread({}, msg), {}, {\n type: type === 'participant' ? type : msg.type\n })\n };\n }),\n participants,\n activeServiceSessionId,\n activeServiceSettings,\n serviceData,\n resumeConversationPrompt: ui ? Boolean(ui.resumeConversationPrompt) : false,\n translation\n };\n } catch (error) {\n if (error.status === 401) {\n throw new _errors_seamly_unauthorized_error__WEBPACK_IMPORTED_MODULE_11__[\"default\"](error);\n }\n\n if (error.status === 404) {\n throw new _errors_seamly_session_expired_error__WEBPACK_IMPORTED_MODULE_8__[\"default\"](error);\n }\n\n if (error.status >= 500) {\n throw new _errors_seamly_general_error__WEBPACK_IMPORTED_MODULE_10__[\"default\"](error);\n }\n\n throw error;\n }\n }\n\n async connect() {\n this.connected = false;\n let conversationInitialState = null;\n\n if (!this.hasConversation()) {\n conversationInitialState = await this.createConversation();\n }\n\n this.conversationProducer = new _producer__WEBPACK_IMPORTED_MODULE_5__[\"default\"](`${this.getUrlPrefix('ws')}${this.URLS.socket}`, this.config.context.channelName, this.getChannelTopic(), this.getAccessToken());\n this.internalProducer.emit(xstream__WEBPACK_IMPORTED_MODULE_0___default().create(this.conversationProducer)); // Send environment\n\n if (this.config.sendEnvironment) {\n this.send('context', {\n environment: this.config.sendEnvironment === true ? this.getEnvironment() : this.config.sendEnvironment\n }, false);\n }\n\n return conversationInitialState;\n }\n\n uploadFile(file, progressCallback, successCallback, errorCallback) {\n const formData = new FormData();\n formData.append('upload', file);\n const req = superagent__WEBPACK_IMPORTED_MODULE_1___default().post(`${this.getUrlPrefix('http')}${this.URLS.uploads}`).set('Authorization', `Bearer ${this.getAccessToken()}`).send(formData);\n req.on('progress', function (e) {\n const {\n direction,\n percent\n } = e;\n\n if (direction === 'upload' && typeof progressCallback === 'function') {\n progressCallback(percent);\n }\n });\n req.then(uploadResponse => {\n if (successCallback) {\n successCallback(uploadResponse);\n }\n }).catch(err => {\n if (errorCallback) {\n errorCallback(err.response);\n } else {\n throw err;\n }\n });\n return req;\n }\n\n getConversationIntitialState() {\n return superagent__WEBPACK_IMPORTED_MODULE_1___default().get(`${this.getUrlPrefix('http')}${this.getConversationUrl()}`).set('Authorization', `Bearer ${this.getAccessToken()}`).query({\n v: config__WEBPACK_IMPORTED_MODULE_2__.apiVersion\n }).then(({\n body\n }) => {\n this.updateUrls(body);\n return (0,ui_utils_general_utils__WEBPACK_IMPORTED_MODULE_13__.omit)(body.conversation, ['accessToken', 'channelTopic']);\n }).catch(error => {\n if (error.status === 401) {\n throw new _errors_seamly_unauthorized_error__WEBPACK_IMPORTED_MODULE_11__[\"default\"](error);\n }\n\n if (error.status === 404) {\n throw new _errors_seamly_session_expired_error__WEBPACK_IMPORTED_MODULE_8__[\"default\"](error);\n }\n\n if (error.status >= 500) {\n throw new _errors_seamly_general_error__WEBPACK_IMPORTED_MODULE_10__[\"default\"](error);\n }\n\n throw error;\n });\n }\n\n async getTranslations(locale) {\n try {\n const url = `${this.getUrlPrefix('http')}${this.URLS.translations}`.replace('{version}', String(TRANSLATIONS_VERSION)).replace('{locale}', locale);\n const request = superagent__WEBPACK_IMPORTED_MODULE_1___default().get(url);\n const {\n body\n } = await request;\n return body.translations;\n } catch (error) {\n if (error.status >= 500) {\n throw new _errors_seamly_general_error__WEBPACK_IMPORTED_MODULE_10__[\"default\"](error);\n }\n\n throw error;\n }\n }\n\n send(command, payload, waitForReady = true) {\n if (!this.connected || waitForReady && !this.ready) {\n // Wait for connection\n this.connection$.filter(e => waitForReady ? e.connected && e.ready : e.connected).take(1).subscribe({\n next: () => this.send(command, payload, waitForReady)\n });\n return;\n }\n\n log('[SEND]', command, payload);\n this.conversationProducer.push(command, buildPayload(command, payload), 10000);\n }\n\n sendContext(context = {}) {\n const {\n locale,\n variables\n } = context;\n const payload = {};\n\n if (locale) {\n if (typeof locale !== 'string') {\n throw new Error('Locale must be a string');\n }\n\n payload.locale = locale;\n }\n\n if (variables) {\n if (typeof variables !== 'object') {\n throw new Error('Variables must be an object');\n }\n\n payload.variables = variables;\n } // If we have empty context don't send context message\n\n\n if (Object.keys(payload).length === 0 && payload.constructor === Object) {\n return;\n }\n\n this.send('context', payload, false);\n }\n\n stream() {\n return this.internal$.filter(event => event.type !== 'connection');\n }\n\n getEnvironment() {\n return {\n clientName: \"@seamly/web-ui\",\n clientVariant: this.layoutMode,\n clientVersion: \"20.1.0\",\n currentUrl: window.location.toString(),\n screenResolution: `${window.screen.width}x${window.screen.height}`,\n timezone: getTimeZone(),\n userAgent: navigator.userAgent\n };\n }\n\n}\n\n//# sourceURL=webpack://@seamly/web-ui/./src/javascripts/api/index.js?");
238
238
 
239
239
  /***/ }),
240
240
 
@@ -267,7 +267,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
267
267
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
268
268
 
269
269
  "use strict";
270
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"setHasResponded\": () => (/* binding */ setHasResponded),\n/* harmony export */ \"initialize\": () => (/* binding */ initialize),\n/* harmony export */ \"reset\": () => (/* binding */ reset)\n/* harmony export */ });\n/* harmony import */ var ui_utils_seamly_utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ui/utils/seamly-utils */ \"./src/javascripts/ui/utils/seamly-utils.js\");\n/* harmony import */ var domains_config_actions__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! domains/config/actions */ \"./src/javascripts/domains/config/actions.js\");\n/* harmony import */ var domains_i18n_actions__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! domains/i18n/actions */ \"./src/javascripts/domains/i18n/actions.js\");\n/* harmony import */ var domains_translations_actions__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! domains/translations/actions */ \"./src/javascripts/domains/translations/actions.js\");\n/* harmony import */ var domains_visibility_actions__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! domains/visibility/actions */ \"./src/javascripts/domains/visibility/actions.js\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./utils */ \"./src/javascripts/domains/app/utils.js\");\n/* harmony import */ var api_errors_seamly_unavailable_error__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! api/errors/seamly-unavailable-error */ \"./src/javascripts/api/errors/seamly-unavailable-error.js\");\n/* harmony import */ var api_errors_seamly_session_expired_error__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! api/errors/seamly-session-expired-error */ \"./src/javascripts/api/errors/seamly-session-expired-error.js\");\n/* harmony import */ var domains_interrupt_actions__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! domains/interrupt/actions */ \"./src/javascripts/domains/interrupt/actions.js\");\n\n\n\n\n\n\n\n\n\nconst setHasResponded = (0,_utils__WEBPACK_IMPORTED_MODULE_5__.createAction)('setHasResponded', hasResponded => ({\n hasResponded\n}));\nconst initialize = (0,_utils__WEBPACK_IMPORTED_MODULE_5__.createThunk)('initialize', async (_, {\n dispatch,\n extra: {\n api,\n config\n }\n}) => {\n var _config$context;\n\n dispatch(domains_config_actions__WEBPACK_IMPORTED_MODULE_1__.initialize(config));\n let locale = config === null || config === void 0 ? void 0 : (_config$context = config.context) === null || _config$context === void 0 ? void 0 : _config$context.locale;\n\n try {\n const {\n features,\n defaultLocale,\n preChat,\n agentParticipant,\n userParticipant,\n startChatIcon\n } = await api.getConfig();\n dispatch({\n type: ui_utils_seamly_utils__WEBPACK_IMPORTED_MODULE_0__.seamlyActions.SET_FEATURES,\n features\n });\n locale = locale || defaultLocale;\n dispatch(domains_i18n_actions__WEBPACK_IMPORTED_MODULE_2__.setInitialLocale(locale));\n dispatch(domains_config_actions__WEBPACK_IMPORTED_MODULE_1__.setPreChatEvents(preChat.map(payload => ({\n type: 'message',\n payload\n }))));\n dispatch(domains_config_actions__WEBPACK_IMPORTED_MODULE_1__.update({\n agentParticipant,\n userParticipant,\n startChatIcon\n }));\n\n if (agentParticipant !== null && agentParticipant !== void 0 && agentParticipant.name) {\n dispatch({\n type: ui_utils_seamly_utils__WEBPACK_IMPORTED_MODULE_0__.seamlyActions.SET_HEADER_SUB_TITLE,\n title: agentParticipant.name\n });\n }\n } catch (e) {\n throw new api_errors_seamly_unavailable_error__WEBPACK_IMPORTED_MODULE_6__[\"default\"]();\n }\n\n try {\n var _config$context2;\n\n if (api.hasConversation()) {\n var _initialState$transla;\n\n const initialState = await api.getConversationIntitialState();\n dispatch({\n type: ui_utils_seamly_utils__WEBPACK_IMPORTED_MODULE_0__.seamlyActions.SET_INITIAL_STATE,\n initialState\n });\n locale = ((_initialState$transla = initialState.translation) === null || _initialState$transla === void 0 ? void 0 : _initialState$transla.locale) || locale;\n\n if ('userResponded' in initialState) {\n dispatch(setHasResponded(initialState.userResponded));\n }\n } else if (config !== null && config !== void 0 && (_config$context2 = config.context) !== null && _config$context2 !== void 0 && _config$context2.translationLocale) {\n locale = config.context.translationLocale;\n dispatch(domains_translations_actions__WEBPACK_IMPORTED_MODULE_3__.enable(locale));\n }\n } catch (e) {\n if (e instanceof api_errors_seamly_session_expired_error__WEBPACK_IMPORTED_MODULE_7__[\"default\"]) {\n throw e;\n }\n\n throw new api_errors_seamly_unavailable_error__WEBPACK_IMPORTED_MODULE_6__[\"default\"]();\n } finally {\n await dispatch(domains_i18n_actions__WEBPACK_IMPORTED_MODULE_2__.setLocale(locale));\n dispatch(domains_visibility_actions__WEBPACK_IMPORTED_MODULE_4__.initialize());\n }\n});\nconst reset = (0,_utils__WEBPACK_IMPORTED_MODULE_5__.createThunk)('reset', async (config, {\n dispatch,\n extra: {\n api\n }\n}) => {\n try {\n await api.disconnect();\n await api.clearStore();\n dispatch(initialize());\n } catch (error) {\n dispatch(domains_interrupt_actions__WEBPACK_IMPORTED_MODULE_8__.set(error));\n }\n});\n\n//# sourceURL=webpack://@seamly/web-ui/./src/javascripts/domains/app/actions.js?");
270
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"setHasResponded\": () => (/* binding */ setHasResponded),\n/* harmony export */ \"initialize\": () => (/* binding */ initialize),\n/* harmony export */ \"reset\": () => (/* binding */ reset)\n/* harmony export */ });\n/* harmony import */ var ui_utils_seamly_utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ui/utils/seamly-utils */ \"./src/javascripts/ui/utils/seamly-utils.js\");\n/* harmony import */ var domains_config_actions__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! domains/config/actions */ \"./src/javascripts/domains/config/actions.js\");\n/* harmony import */ var domains_i18n_actions__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! domains/i18n/actions */ \"./src/javascripts/domains/i18n/actions.js\");\n/* harmony import */ var domains_translations_actions__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! domains/translations/actions */ \"./src/javascripts/domains/translations/actions.js\");\n/* harmony import */ var domains_visibility_actions__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! domains/visibility/actions */ \"./src/javascripts/domains/visibility/actions.js\");\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./utils */ \"./src/javascripts/domains/app/utils.js\");\n/* harmony import */ var api_errors_seamly_unavailable_error__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! api/errors/seamly-unavailable-error */ \"./src/javascripts/api/errors/seamly-unavailable-error.js\");\n/* harmony import */ var api_errors_seamly_session_expired_error__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! api/errors/seamly-session-expired-error */ \"./src/javascripts/api/errors/seamly-session-expired-error.js\");\n/* harmony import */ var domains_interrupt_actions__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! domains/interrupt/actions */ \"./src/javascripts/domains/interrupt/actions.js\");\n\n\n\n\n\n\n\n\n\n\nconst setHasResponded = (0,_utils__WEBPACK_IMPORTED_MODULE_5__.createAction)('setHasResponded', hasResponded => ({\n hasResponded\n}));\nconst initialize = (0,_utils__WEBPACK_IMPORTED_MODULE_5__.createThunk)('initialize', async (_, {\n dispatch,\n extra: {\n api,\n config\n }\n}) => {\n var _config$context;\n\n dispatch(domains_config_actions__WEBPACK_IMPORTED_MODULE_1__.initialize(config));\n let locale = config === null || config === void 0 ? void 0 : (_config$context = config.context) === null || _config$context === void 0 ? void 0 : _config$context.locale;\n\n try {\n const {\n features,\n defaultLocale,\n preChat,\n agentParticipant,\n userParticipant,\n startChatIcon\n } = await api.getConfig();\n dispatch({\n type: ui_utils_seamly_utils__WEBPACK_IMPORTED_MODULE_0__.seamlyActions.SET_FEATURES,\n features\n });\n locale = locale || defaultLocale;\n dispatch(domains_i18n_actions__WEBPACK_IMPORTED_MODULE_2__.setInitialLocale(locale));\n dispatch(domains_config_actions__WEBPACK_IMPORTED_MODULE_1__.setPreChatEvents(preChat.map(payload => ({\n type: 'message',\n payload\n }))));\n dispatch(domains_config_actions__WEBPACK_IMPORTED_MODULE_1__.update({\n agentParticipant,\n userParticipant,\n startChatIcon\n }));\n\n if (agentParticipant !== null && agentParticipant !== void 0 && agentParticipant.name) {\n dispatch({\n type: ui_utils_seamly_utils__WEBPACK_IMPORTED_MODULE_0__.seamlyActions.SET_HEADER_SUB_TITLE,\n title: agentParticipant.name\n });\n }\n } catch (e) {\n throw new api_errors_seamly_unavailable_error__WEBPACK_IMPORTED_MODULE_6__[\"default\"]();\n }\n\n try {\n var _config$context2;\n\n if (api.hasConversation()) {\n var _initialState$transla;\n\n const initialState = await api.getConversationIntitialState();\n dispatch({\n type: ui_utils_seamly_utils__WEBPACK_IMPORTED_MODULE_0__.seamlyActions.SET_INITIAL_STATE,\n initialState\n });\n locale = ((_initialState$transla = initialState.translation) === null || _initialState$transla === void 0 ? void 0 : _initialState$transla.locale) || locale;\n\n if ('userResponded' in initialState) {\n dispatch(setHasResponded(initialState.userResponded));\n }\n } else if (config !== null && config !== void 0 && (_config$context2 = config.context) !== null && _config$context2 !== void 0 && _config$context2.translationLocale) {\n locale = config.context.translationLocale;\n api.send('action', {\n type: ui_utils_seamly_utils__WEBPACK_IMPORTED_MODULE_0__.actionTypes.setTranslation,\n body: {\n enabled: true,\n locale\n }\n });\n dispatch(domains_translations_actions__WEBPACK_IMPORTED_MODULE_3__.enable(locale));\n }\n } catch (e) {\n if (e instanceof api_errors_seamly_session_expired_error__WEBPACK_IMPORTED_MODULE_7__[\"default\"]) {\n throw e;\n }\n\n throw new api_errors_seamly_unavailable_error__WEBPACK_IMPORTED_MODULE_6__[\"default\"]();\n } finally {\n await dispatch(domains_i18n_actions__WEBPACK_IMPORTED_MODULE_2__.setLocale(locale));\n dispatch(domains_visibility_actions__WEBPACK_IMPORTED_MODULE_4__.initialize());\n }\n});\nconst reset = (0,_utils__WEBPACK_IMPORTED_MODULE_5__.createThunk)('reset', async (config, {\n dispatch,\n extra: {\n api\n }\n}) => {\n try {\n await api.disconnect();\n await api.clearStore();\n dispatch(initialize());\n } catch (error) {\n dispatch(domains_interrupt_actions__WEBPACK_IMPORTED_MODULE_8__.set(error));\n }\n});\n\n//# sourceURL=webpack://@seamly/web-ui/./src/javascripts/domains/app/actions.js?");
271
271
 
272
272
  /***/ }),
273
273
 
@@ -938,7 +938,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
938
938
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
939
939
 
940
940
  "use strict";
941
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"createAction\": () => (/* binding */ createAction),\n/* harmony export */ \"createActions\": () => (/* binding */ createActions),\n/* harmony export */ \"createThunk\": () => (/* binding */ createThunk),\n/* harmony export */ \"createReducer\": () => (/* binding */ createReducer),\n/* harmony export */ \"selectState\": () => (/* binding */ selectState),\n/* harmony export */ \"calculateVisibility\": () => (/* binding */ calculateVisibility)\n/* harmony export */ });\n/* harmony import */ var lib_redux_helpers__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lib/redux-helpers */ \"./src/javascripts/lib/redux-helpers/index.js\");\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./constants */ \"./src/javascripts/domains/visibility/constants.js\");\n\n\nconst {\n createAction,\n createActions,\n createThunk,\n createReducer,\n selectState\n} = (0,lib_redux_helpers__WEBPACK_IMPORTED_MODULE_0__.createDomain)('visibility');\nconst calculateVisibility = ({\n hasResponded,\n previousVisibility,\n requestedVisibility,\n config\n}) => {\n const {\n defaults,\n layoutMode,\n hideOnNoUserResponse\n } = config;\n const {\n visible: defaultVisibility\n } = defaults || {}; // Requesting open should override the responded check.\n\n if (layoutMode === 'window' && hideOnNoUserResponse && requestedVisibility !== _constants__WEBPACK_IMPORTED_MODULE_1__.visibilityStates.open) {\n return hasResponded ? requestedVisibility || previousVisibility || _constants__WEBPACK_IMPORTED_MODULE_1__.visibilityStates.open : _constants__WEBPACK_IMPORTED_MODULE_1__.visibilityStates.hidden;\n }\n\n const baseVisibility = _constants__WEBPACK_IMPORTED_MODULE_1__.visibilityStates.minimized;\n return requestedVisibility || previousVisibility || defaultVisibility || baseVisibility;\n};\n\n//# sourceURL=webpack://@seamly/web-ui/./src/javascripts/domains/visibility/utils.js?");
941
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"createAction\": () => (/* binding */ createAction),\n/* harmony export */ \"createActions\": () => (/* binding */ createActions),\n/* harmony export */ \"createThunk\": () => (/* binding */ createThunk),\n/* harmony export */ \"createReducer\": () => (/* binding */ createReducer),\n/* harmony export */ \"selectState\": () => (/* binding */ selectState),\n/* harmony export */ \"calculateVisibility\": () => (/* binding */ calculateVisibility)\n/* harmony export */ });\n/* harmony import */ var lib_redux_helpers__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lib/redux-helpers */ \"./src/javascripts/lib/redux-helpers/index.js\");\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./constants */ \"./src/javascripts/domains/visibility/constants.js\");\n\n\nconst {\n createAction,\n createActions,\n createThunk,\n createReducer,\n selectState\n} = (0,lib_redux_helpers__WEBPACK_IMPORTED_MODULE_0__.createDomain)('visibility');\nconst calculateVisibility = ({\n hasResponded,\n previousVisibility,\n requestedVisibility,\n config\n}) => {\n const {\n defaults,\n layoutMode,\n hideOnNoUserResponse\n } = config;\n const {\n visible: defaultVisibility\n } = defaults || {}; // Requesting open should override the responded check.\n\n if (layoutMode === 'window' && hideOnNoUserResponse && requestedVisibility !== _constants__WEBPACK_IMPORTED_MODULE_1__.visibilityStates.open) {\n return hasResponded ? requestedVisibility || previousVisibility || _constants__WEBPACK_IMPORTED_MODULE_1__.visibilityStates.open : _constants__WEBPACK_IMPORTED_MODULE_1__.visibilityStates.hidden;\n } // Allow users to continue a conversation (if they have responded and no visibility is requested)\n // when switching from the window layout to the inline layout\n\n\n if (layoutMode === 'inline' && hasResponded && !requestedVisibility) {\n return previousVisibility || _constants__WEBPACK_IMPORTED_MODULE_1__.visibilityStates.open;\n }\n\n const baseVisibility = _constants__WEBPACK_IMPORTED_MODULE_1__.visibilityStates.minimized;\n return requestedVisibility || previousVisibility || defaultVisibility || baseVisibility;\n};\n\n//# sourceURL=webpack://@seamly/web-ui/./src/javascripts/domains/visibility/utils.js?");
942
942
 
943
943
  /***/ }),
944
944
 
@@ -992,7 +992,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpac
992
992
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
993
993
 
994
994
  "use strict";
995
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var lib_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lib/engine */ \"./src/javascripts/lib/engine/index.js\");\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n\n\nconst isActionObject = actionObj => typeof actionObj === 'object' && 'action' in actionObj;\n\nconst fixActionObjectArgs = actionObj => _objectSpread(_objectSpread({}, actionObj), {}, {\n args: Array.isArray(actionObj.args) ? actionObj.args : [actionObj.args]\n});\n\nclass ExternalApi {\n constructor(appConfig) {\n this._waitingActions = [];\n this._instances = {};\n this.appConfig = appConfig;\n }\n\n push(...actionObjects) {\n // eslint-disable-next-line no-param-reassign\n actionObjects = actionObjects.filter(isActionObject).map(fixActionObjectArgs);\n\n if (actionObjects.length) {\n this._waitingActions.push(...actionObjects);\n\n this.handleActions();\n }\n }\n\n handleActions() {\n const actions = this._waitingActions;\n this._waitingActions = [];\n actions.forEach(actionObj => {\n switch (actionObj.action) {\n case 'init':\n this.handleInit(actionObj);\n break;\n\n case 'destroy':\n this.handleDestroy(actionObj);\n break;\n\n default:\n if (!this.handleAction(actionObj)) {\n this._waitingActions.push(actionObj);\n }\n\n break;\n }\n });\n }\n\n handleInit(actionObj) {\n const userConfig = this.getUserConfig(...actionObj.args);\n const config = this.getCombinedConfig(userConfig); // if this.appConfig is a function, it might return an invalid configuration (false, null, undefined)\n\n const {\n parentElement,\n namespace\n } = config || userConfig;\n\n if (!namespace) {\n this.destroy();\n } else {\n Object.values(this._instances).forEach(instance => {\n if (instance.parentElement === parentElement || instance.namespace === namespace) {\n this.destroy(instance);\n }\n });\n }\n\n if (config) {\n const instance = this.createInstance(config);\n this._instances[config.namespace] = instance;\n instance.render();\n }\n }\n\n handleDestroy(actionObj) {\n this.destroy(actionObj.instance);\n }\n\n handleAction(actionObj) {\n const {\n action,\n instance: namespace,\n args\n } = actionObj;\n const instances = Object.values(this._instances);\n\n if (!namespace && instances.length > 1) {\n console.warn(`Multiple instances detected. Due to potential race conditions, it is recommended to target a specific instance with the action: ${action}`);\n } // results will be an array containing the results of wether an instance has\n // handled the action or not\n\n\n const results = instances.map(instance => {\n return !namespace || instance.namespace === namespace ? instance.execFunction(action, ...args) : false;\n }); // test if any of the instances has handled the action\n\n return results.some(Boolean);\n }\n\n createInstance(config) {\n return new lib_engine__WEBPACK_IMPORTED_MODULE_0__[\"default\"](config, this);\n }\n\n destroy(instance) {\n if (!instance) {\n Object.entries(this._instances).forEach(([namespace, _instance]) => {\n _instance.destroy();\n\n delete this._instances[namespace];\n });\n } else {\n if (typeof instance === 'string') {\n // eslint-disable-next-line no-param-reassign\n instance = this._instances[instance];\n }\n\n if (instance) {\n instance.destroy();\n delete this._instances[instance.namespace];\n }\n }\n } // eslint-disable-next-line class-methods-use-this\n\n\n getUserConfig(userConfig = {}) {\n return userConfig;\n }\n\n getCombinedConfig(userConfig) {\n if (typeof this.appConfig === 'function') {\n return this.appConfig(userConfig);\n }\n\n const defaults = _objectSpread(_objectSpread({}, this.appConfig.defaults), userConfig.defaults);\n\n return _objectSpread(_objectSpread(_objectSpread({}, this.appConfig), userConfig), {}, {\n api: _objectSpread(_objectSpread({}, this.appConfig.api), userConfig.api),\n defaults: Object.keys(defaults).length ? defaults : undefined\n });\n }\n\n}\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ExternalApi);\n\n//# sourceURL=webpack://@seamly/web-ui/./src/javascripts/lib/external-api/index.js?");
995
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"default\": () => (__WEBPACK_DEFAULT_EXPORT__)\n/* harmony export */ });\n/* harmony import */ var lib_engine__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lib/engine */ \"./src/javascripts/lib/engine/index.js\");\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n\n\nconst isActionObject = actionObj => typeof actionObj === 'object' && 'action' in actionObj;\n\nconst fixActionObjectArgs = actionObj => _objectSpread(_objectSpread({}, actionObj), {}, {\n args: Array.isArray(actionObj.args) ? actionObj.args : [actionObj.args]\n});\n\nclass ExternalApi {\n constructor(appConfig) {\n this._waitingActions = [];\n this._instances = {};\n this.appConfig = appConfig;\n this.context = {};\n }\n\n push(...actionObjects) {\n // eslint-disable-next-line no-param-reassign\n actionObjects = actionObjects.filter(isActionObject).map(fixActionObjectArgs);\n\n if (actionObjects.length) {\n this._waitingActions.push(...actionObjects);\n\n this.handleActions();\n }\n }\n\n handleActions() {\n const actions = this._waitingActions;\n this._waitingActions = [];\n actions.forEach(actionObj => {\n switch (actionObj.action) {\n case 'init':\n this.handleInit(actionObj);\n break;\n\n case 'destroy':\n this.handleDestroy(actionObj);\n break;\n\n default:\n if (!this.handleAction(actionObj) && // Store context properties for the next instance that will be created\n !this.setContext(actionObj.action, ...actionObj.args)) {\n this._waitingActions.push(actionObj);\n }\n\n break;\n }\n });\n }\n\n setContext(action, args) {\n switch (action) {\n case 'setTranslation':\n const {\n enabled,\n locale\n } = args;\n\n if (!!enabled && locale) {\n this.context.translationLocale = locale;\n }\n\n return true;\n\n default:\n return false;\n }\n }\n\n handleInit(actionObj) {\n const userConfig = this.getUserConfig(...actionObj.args);\n const config = this.getCombinedConfig(userConfig); // if this.appConfig is a function, it might return an invalid configuration (false, null, undefined)\n\n const {\n parentElement,\n namespace\n } = config || userConfig;\n\n if (!namespace) {\n this.destroy();\n } else {\n Object.values(this._instances).forEach(instance => {\n if (instance.parentElement === parentElement || instance.namespace === namespace) {\n this.destroy(instance);\n }\n });\n }\n\n if (config) {\n const instance = this.createInstance(config);\n this._instances[config.namespace] = instance; // Clear the context after creating the instance, so we do not reuse it for the next\n\n this.context = {};\n instance.render();\n }\n }\n\n handleDestroy(actionObj) {\n this.destroy(actionObj.instance);\n }\n\n handleAction(actionObj) {\n const {\n action,\n instance: namespace,\n args\n } = actionObj;\n const instances = Object.values(this._instances);\n\n if (!namespace && instances.length > 1) {\n console.warn(`Multiple instances detected. Due to potential race conditions, it is recommended to target a specific instance with the action: ${action}`);\n } // results will be an array containing the results of wether an instance has\n // handled the action or not\n\n\n const results = instances.map(instance => {\n return !namespace || instance.namespace === namespace ? instance.execFunction(action, ...args) : false;\n }); // test if any of the instances has handled the action\n\n return results.some(Boolean);\n }\n\n createInstance(config) {\n return new lib_engine__WEBPACK_IMPORTED_MODULE_0__[\"default\"](config, this);\n }\n\n destroy(instance) {\n if (!instance) {\n Object.entries(this._instances).forEach(([namespace, _instance]) => {\n _instance.destroy();\n\n delete this._instances[namespace];\n });\n } else {\n if (typeof instance === 'string') {\n // eslint-disable-next-line no-param-reassign\n instance = this._instances[instance];\n }\n\n if (instance) {\n instance.destroy();\n delete this._instances[instance.namespace];\n }\n }\n } // eslint-disable-next-line class-methods-use-this\n\n\n getUserConfig(userConfig = {}) {\n return userConfig;\n }\n\n getCombinedConfig(userConfig) {\n if (typeof this.appConfig === 'function') {\n return this.appConfig(userConfig);\n }\n\n const context = _objectSpread(_objectSpread({}, userConfig.context || this.appConfig.context), this.context);\n\n const defaults = _objectSpread(_objectSpread({}, this.appConfig.defaults), userConfig.defaults);\n\n return _objectSpread(_objectSpread(_objectSpread({}, this.appConfig), userConfig), {}, {\n api: _objectSpread(_objectSpread({}, this.appConfig.api), userConfig.api),\n context: Object.keys(context).length ? context : undefined,\n defaults: Object.keys(defaults).length ? defaults : undefined\n });\n }\n\n}\n\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ExternalApi);\n\n//# sourceURL=webpack://@seamly/web-ui/./src/javascripts/lib/external-api/index.js?");
996
996
 
997
997
  /***/ }),
998
998