"use strict";(self.zowieJsonp=self.zowieJsonp||[]).push([[153],{7153:(e,t,n)=>{n.r(t),n.d(t,{getConversationId:()=>w,keepAlive:()=>z,saveConversationId:()=>_,setup:()=>E});var o=n(9565),i=n(1175),a=n(8574),s="chatbot",c=void 0,r=!1;const d=e=>`zowie-zendesk-conv-in-progress-${e}`,l=e=>"true"===window.localStorage.getItem(e),u=(e,t)=>window.localStorage.setItem(e,String(t));var v=void 0,f=void 0;const m=()=>{const e=document.location.host.split("."),t=e.length,n="."+e.slice(t-2,t).join(".");document.cookie="__zlcmid=;path=/;domain="+n+";expires=Thu, 01 Jan 1970 00:00:01 GMT"},h=()=>window.location.href.includes("glamira")||window.location.href.includes("sharkgaming.dk")||window.location.href.includes("sharkgaming.se")||window.location.href.includes("sharkgaming.no")||window.location.href.includes("cobbtuning.com")&&void 0!==window.require?new Promise(((e,t)=>{window.require(["https://dev.zopim.com/web-sdk/latest/web-sdk.js"],(function(t){e(t)}))})):new Promise(((e,t)=>{try{const n=document.createElement("script");n.type="text/javascript",n.async=!0,n.src="https://dev.zopim.com/web-sdk/latest/web-sdk.js",n.addEventListener("load",(t=>{e(window.zChat)})),n.addEventListener("error",(e=>{t("Failed to load Zendesk Chat script: "+JSON.stringify(e))})),document.body.appendChild(n)}catch(n){t("Failed to add Zendesk Chat script: "+JSON.stringify(n))}}));function g(e,t){for(var n=e.split(","),o=n[0].match(/:(.*?);/)[1],i=atob(n[1]),a=i.length,s=new Uint8Array(a);a--;)s[a]=i.charCodeAt(a);return new File([s],t,{type:o})}function p(e,t,n,o,a){const s=`${a}/instances/${t}/conversations/${e}/messages/announcement`;(0,i.bE)(s,{text:n,visibility:o})}function y(e,t,n){const o=`${n}/instances/${t}/conversations/${e}/agent-not-available`;return(0,i.bE)(o,{})}function k(e,t,n,o){"chatbot"!==s&&setTimeout((()=>b(e,t,n,!1,[],o)),1e3)}function b(e,t,n,o,a,c){if("chatbot"===s)return;const r=`${c}/instances/${n}/conversations/${t}/messages`;(0,i.Jt)(r).then((s=>{const r=s.data;if(o){const t=r.map((t=>{if(void 0!==t.text){var n=new Date(t.time),o=n.getHours(),i="0"+n.getMinutes(),a="0"+n.getSeconds(),s=o+":"+i.substr(-2)+":"+a.substr(-2);return`${t.author} (${s}): ${t.text}`}return void 0!==t.fileData&&void 0!==t.fileName?void e.sendFile(g(t.fileData,t.fileName)):void 0})).join("\n\n"),o=a.map((e=>"tier"===e.key||"Tier"===e.key?"30-day GMV: $"+e.value:e.key+": "+e.value)).join("\n");let i=t;""!==i&&o.length>0&&"ac6b077fad4543ee898035e7eaf905eb"===n&&(i+="\n\n\nProperties:\n",i+=o),""!==i&&e.sendChatMsg(i)}else r.forEach((t=>{void 0!==t.text?e.sendChatMsg(t.text):void 0!==t.fileData&&void 0!==t.fileName&&e.sendFile(g(t.fileData,t.fileName))}));if(r.length>0)return function(e,t,n,o){const a=`${o}/instances/${t}/conversations/${e}/messages/seen`;return(0,i.bE)(a,{time:n})}(t,n,r[r.length-1].time,c).finally((()=>{k(e,t,n,c)}));k(e,t,n,c)}))}function I(e,t,n,i,c){if(!["f4b3c2093a744fdc9eaaf0c00f4d7d3b","7a761b8ef2ea41369f7c8fe9bee9996e","1d1f478a1fd74e0393d44f9bb7c51b2f","2bc4073a42304812874885c0ca806f2a"].includes(t))return;(0,a.c)("Checking department status: ",n,i);const r=l(d(e));if(void 0!==i)"offline"!==i.status||r||(y(e,t,c).finally((()=>{s="chatbot"})),clearInterval(v),o.yf.logger.info("livechat-zendesk-event-chat_departmentoffline",{instanceId:t,conversationId:e}));else{void 0!==n.find((e=>"offline"!==e.status))||r||(y(e,t,c).finally((()=>{s="chatbot"})),clearInterval(v),o.yf.logger.info("livechat-zendesk-event-chat_departmentoffline",{instanceId:t,conversationId:e}))}}function $(e,t,n,o){(function(e,t,n){const o=`${n}/instances/${t}/conversations/${e}/state`;return(0,i.Jt)(o).then((e=>e.data)).catch((()=>({owner:"chatbot",metadata:void 0})))})(t,n,o).then((r=>{const d=r.owner,l=r.metadata;if("zendesk"===d&&"chatbot"===s){s="zendesk";const r=e.getAllDepartments();if((0,a.c)("Available departments: ",r),l){const i=r.find((e=>e.name===l));i?(e.setVisitorDefaultDepartment(i.id),I(t,n,r,i,o)):I(t,n,r,void 0,o)}else I(t,n,r,void 0,o);(function(e,t,n){const o=`${n}/instances/${t}/conversations/${e}/metadata`;return(0,i.Jt)(o).then((e=>e.data)).catch((()=>({})))})(t,n,o).then((i=>{const a={};void 0!==i.name&&(a.display_name=i.name),void 0!==i.email&&(a.email=i.email),void 0!==i.phoneNumber&&(a.phone=i.phoneNumber),e.setVisitorInfo(a),b(e,t,n,!0,i.customProperties,o)})).catch((()=>{b(e,t,n,!0,[],o)})).finally((()=>{c=setTimeout((()=>$(e,t,n,o)),500)}))}else"chatbot"===d&&"zendesk"===s?(s="chatbot",c=setTimeout((()=>$(e,t,n,o)),500)):c=setTimeout((()=>$(e,t,n,o)),500)}))}function w(e){return localStorage.getItem("zowie-zendesk-"+e+"-conversationId")}function _(e,t){localStorage.setItem("zowie-zendesk-"+e+"-conversationId",t)}function z(e){let{accountKey:t,conversationId:n,instanceId:i}=e;h().then((e=>{o.yf.logger.info("livechat-zendesk-keepalive-load-success",{instanceId:i,conversationId:n,accountKey:t}),e.init({account_key:t})})).catch((e=>{(0,a.Iv)(e),o.yf.logger.error("livechat-zendesk-keepalive-load-failed",{instanceId:i,conversationId:n,accountKey:t,errorRoot:e})}))}function E(e,t){let{accountKey:n,conversationId:l,instanceId:g,apiBaseUrl:y}=e;const k=`${y}/api/v1/chat-integration-zendeskchat`;void 0!==c&&clearTimeout(c),r=!1,s="chatbot";w(g)!==l&&(m(),_(g,l)),h().then((e=>{(0,a.c)("Zowie - Zendesk - SDK loaded"),o.yf.logger.info("livechat-zendesk-load-success",{instanceId:g,conversationId:l,accountKey:n}),e.on("connection_update",(function(t){(0,a.c)("Zowie - Zendesk - connection_update",t),o.yf.logger.info("livechat-zendesk-event-connection_update",{instanceId:g,conversationId:l,accountKey:n,status:t}),"connected"===t&&!1===r&&(r=!0,c=setTimeout((()=>$(e,l,g,k)),1e3))})),e.on("chat",(function(e){"chat.msg"===e.type&&e.msg&&"visitor"!==e.nick&&r?((0,a.c)("Zowie - Zendesk - chat_message",e),function(e,t,n,o,a,s){const c=n?n.replace("agent:",""):void 0,r=`${s}/instances/${t}/conversations/${e}/messages/text`;(0,i.bE)(r,{text:o,userId:c,time:a})}(l,g,e.nick,e.msg,e.timestamp,k)):"chat.file"===e.type&&"visitor"!==e.nick&&e.attachment&&r?((0,a.c)("Zowie - Zendesk - chat_visitor",e),function(e,t,n,o,a,s){const c=n?n.replace("agent:",""):void 0,r=`${s}/instances/${t}/conversations/${e}/messages/file`;(0,i.bE)(r,{url:o,mime:a,userId:c})}(l,g,e.nick,e.attachment.url,e.attachment.mime_type,k)):"chat.queue_position"===e.type&&e.queue_position&&r?e.queue_position>0&&(p(l,g,`Current queue position: ${e.queue_position}`,"TEMPORARY",k),clearInterval(v),void 0!==e.queue_position&&(f=e.queue_position,v=setInterval((()=>{p(l,g,`Current queue position: ${f}`,"TEMPORARY",k)}),3e4))):"chat.memberjoin"===e.type&&"visitor"!==e.nick&&e.display_name&&r?((0,a.c)("Zowie - Zendesk - chat_memberjoin",e),p(l,g,`${e.display_name} joined.`,"PERSISTENT",k),function(e,t,n){const o=`${n}/instances/${t}/conversations/${e}/agent-joined`;(0,i.bE)(o,{})}(l,g,k),u(d(l),!0),clearInterval(v),o.yf.logger.info("livechat-zendesk-event-chat_memberjoin",{instanceId:g,conversationId:l,accountKey:n,event:e})):"chat.memberleave"===e.type&&"visitor"!==e.nick&&e.display_name&&r?((0,a.c)("Zowie - Zendesk - chat_memberleave",e),p(l,g,`${e.display_name} left.`,"PERSISTENT",k),u(d(l),!1),clearInterval(v),o.yf.logger.info("livechat-zendesk-event-chat_memberleave",{instanceId:g,conversationId:l,accountKey:n,event:e})):"typing"===e.type&&!0===e.typing&&"visitor"!==e.nick&&r?function(e,t,n){const o=`${n}/instances/${t}/conversations/${e}/messages/typing`;(0,i.bE)(o,{})}(l,g,k):"chat.memberleave"===e.type&&"visitor"===e.nick&&r&&(function(e,t,n){const o=`${n}/instances/${t}/conversations/${e}/end-chat`;return(0,i.bE)(o,{})}(l,g,k).finally((()=>{s="chatbot",u(d(l),!1)})),clearInterval(v),o.yf.logger.info("livechat-zendesk-event-chat_memberleave",{instanceId:g,conversationId:l,accountKey:n,event:e}))})),e.on("agent_update",(function(e){e.nick&&function(e,t,n,o,a,s){const c=n?n.replace("agent:",""):void 0,r=`${s}/instances/${t}/conversations/${e}/messages/user-metadata`;(0,i.bE)(r,{name:o,imageUrl:a,userId:c})}(l,g,e.nick,e.display_name,e.avatar_path,k)})),e.on("error",(function(e){o.yf.logger.error("livechat-zendesk-event-error",{instanceId:g,conversationId:l,accountKey:n,event:e})})),e.init({account_key:n})})).catch((e=>{(0,a.Iv)(e),o.yf.logger.error("livechat-zendesk-load-failed",{instanceId:g,conversationId:l,accountKey:n,errorRoot:e,errorRetry:t}),(void 0===t||t<10)&&setTimeout((()=>{E({accountKey:n,conversationId:l,instanceId:g},t?t+1:1)}),250)}))}}}]);