Built motion from commit f738f9592c388b9f9eb3948f400a5c9d717a3561. Version 3.0.0...
[motion-next.git] / snippets / chat_v3.0.0-alpha.2 / scripts / chat.js
1 (self.webpackChunkmotion_chat=self.webpackChunkmotion_chat||[]).push([[348],{1019:(t,e,n)=>{"use strict";n(3234),n(7828),n(4590),n(9672),n(878),n(7131),n(7358),n(2684),n(7616),n(7385),n(3778),n(3032);var o=n(381),i=n.n(o),s=n(820),r=n.n(s);function a(t,e,n,o,s,a,l,c,d){const u=this;function m(){let t;const e=Math.max(document.body.clientHeight,window.innerHeight||0),n=e/100*0+450;return t=e<n?450-(n-e):450,t}function p(t){t>240?(void 0!==document.getElementById("chat-app")&&(document.getElementById("chat-app").style.height=t+"px"),void 0!==document.getElementById("chatContent1")&&(document.getElementById("chatContent1").style.height=t-108+"px"),void 0!==document.getElementById("id-row")&&(document.getElementById("id-row").style.height=t-52+"px"),void 0!==document.getElementById("chat-app")&&(document.getElementById("chat-app").style.top="0%")):(void 0!==document.getElementById("chat-app")&&(document.getElementById("chat-app").style.height="190px"),void 0!==document.getElementById("chatContent1")&&(document.getElementById("chatContent1").style.height="134px"),void 0!==document.getElementById("id-row")&&(document.getElementById("id-row").style.height="190px"),void 0!==document.getElementById("chat-app")&&(document.getElementById("chat-app").style.top="calc(100% - 240px)"))}function f(e,n,o){const i=a.get(e)||{};o?delete i[t.location]:i[t.location]=n,a.set(e,i)}function g(n){var o;t.layout.up=n,f(c,t.layout),o=n?"show":"hide",e.parent.postMessage({cmd:o},"*")}t.location=t.settings.location,u.$onInit=function(){t.status="init";let o=!1;const i=a.get(d)||{},s=a.get(c)||{};t.visitor=i[t.location]?i[t.location]:{},t.layout=s[t.location]?s[t.location]:{},t.visitor.interaction&&t.layout.up?o=!0:t.layout.up=!0,"bottom_right"==t.settings.alignment&&g(o),n.go(function(){const e=t.settings.online,n=!!(t.visitor&&t.visitor.interaction&&t.visitor.interaction.id),o=Number(t.settings.maxInteractions)&&Number(t.settings.openedInteractions)>=Number(t.settings.maxInteractions);return!!(n||!o&&e)}()?"app.online":"app.offline",null,{location:"replace"});let r="";r=t.settings.online||!t.settings.hideWhenOffline?"init":"offline",e.parent.postMessage({cmd:r,div_color:t.settings.color,text_color:t.settings.textColor,client_height:Math.max(document.documentElement.clientHeight,window.innerHeight||0),client_width:document.documentElement.clientWidth},"*");const l=document.createElement("style");document.head.appendChild(l),l.sheet.insertRule(".mdi-send:before {color:"+t.settings.color+"!important}"),window.visualViewport&&window.visualViewport.addEventListener("resize",(function(){document.getElementById("chatContent1")&&p(m())}))},u.close=function(){const e=t.visitor.interaction;if(e&&e.id){const s=o.confirm().parent(angular.element(document.querySelector("#chat-app"))).clickOutsideToClose(!0).title(t.settings.closingQuestion||"Do you want to close the interaction?").ok("Ok").cancel("Cancel");o.show(s).then((function(){return l.chatInteraction.customUpdate({id:e.id,closed:!0,closeReason:"contact",closedAt:i()().format("YYYY-MM-DD HH:mm:ss")}).$promise})).then((function(){n.go("app.closing",null,{location:"replace"})})).catch((function(t){console.error("keep open",t)}))}},u.toggle=g,u.download=function(){const e=s.defer(),n=t.visitor.interaction;return n&&n.id&&l.chatInteraction.getMessages({intid:n.id,includeAll:!0}).$promise.then((function(n){e.resolve(r()(n.rows.slice(1),(function(e){let n;if("in"===e.direction&&(n=t.settings.customerAlias||t.visitor.from||"Visitor"+e.ContactId),"out"===e.direction)switch(t.settings.agentIdentifier){case"website_alias":n=e.UserId?t.settings.agentAlias+e.UserId:"System";break;case"agent_alias":n=e.UserId?e.User.alias||e.User.fullname:"System";break;case"agent_fullname":n=e.UserId?e.User.fullname:"System";break;default:n=e.UserId?t.settings.agentAlias+e.UserId:"System"}return{sender:n,message:e.body,createdAt:i()(e.createdAt).format("MM/DD/YYYY HH:mm:ss")}})))})).catch((function(t){console.error(t)})),e.promise},u.getHeaderShape=function(){return"rounded"===t.settings.header_shape?"15px":"0px"},t.updateStorage=f,window.addEventListener("message",(function(t){"show"==t.data.evt?g(!0):"hide"==t.data.evt&&g(!1)}),!1),window.addEventListener("resize",(function(){document.getElementById("chatContent1")&&document.getElementById("chat-app")&&document.getElementById("id-row")&&p(m())})),window.visualViewport&&window.visualViewport.addEventListener("resize",(function(){document.getElementById("chatContent1")&&document.getElementById("chat-app")&&document.getElementById("id-row")&&p(m())}))}a.$inject=["$rootScope","$window","$state","$mdDialog","$q","localStorageService","api","STORAGE_LAYOUT","STORAGE_VISITOR"];var l=n(790),c=n.n(l),d=n(9722),u=n.n(d);const m=n.p+"templates/chat/index.tpl.html/index.tpl.html",p=n.p+"templates/closing/index.tpl.html/index.tpl.html",f=n.p+"templates/offline/index.tpl.html/index.tpl.html",g=n.p+"templates/online/index.tpl.html/index.tpl.html",h=n.p+"templates/unmanaged/index.tpl.html/index.tpl.html",j=n.p+"templates/waiting/index.tpl.html/index.tpl.html";function v(t,e){const n=e.search();t.settings={cursor:"pointer",hide:!0},c()(n,(function(e,n){""===e||u()(e)||("true"===e&&(e=!0),"false"===e&&(e=!1),t.settings[n]=e)}))}function y(t,e,n,o,i,s){n.html5Mode(!0),o.defaults.headers.get||(o.defaults.headers.get={}),o.defaults.headers.get["If-Modified-Since"]="Mon, 26 Jul 1997 05:00:00 GMT",o.defaults.headers.get["Cache-Control"]="no-cache",o.defaults.headers.get.Pragma="no-cache",i.setPrefix(s),t.state("app",{url:"/",abstract:!0}).state("app.waiting",{url:"waiting",templateUrl:j,controller:"WaitingController as vm"}).state("app.online",{url:"online",templateUrl:g,controller:"OnlineController as vm"}).state("app.offline",{url:"offline",templateUrl:f,controller:"OfflineController as vm"}).state("app.chat",{url:"chat",templateUrl:m,controller:"ChatController as vm"}).state("app.unmanaged",{url:"unmanaged",templateUrl:h,controller:"UnmanagedController as vm"}).state("app.closing",{url:"closing",templateUrl:p,controller:"ClosingController as vm"})}y.$inject=["$stateProvider","$urlRouterProvider","$locationProvider","$httpProvider","localStorageServiceProvider","STORAGE_PREFIX"],v.$inject=["$rootScope","$location"];var b=n(2378),w=n.n(b);function I(t,e,n,o,i,s){const r=this;function a(e){return function(o){r.errors[e]=o.data;const i=n.simple().textContent(t.settings.formSubmitFailureMessage||"Form submission error").toastClass("md-failure-toast").position("top");n.show(i)}}function l(){t.loading=!1}function c(){t.settings.online?e.go("app.online",null,{location:"replace"}):e.go("app.offline",null,{location:"replace"})}function d(){r.form={},r.upColor=null,r.downColor=null,r.userForm.$setPristine(),r.userForm.$setUntouched(),delete t.visitor.interaction,t.enableDownload=!1}r.$onInit=function(){t.status="closing",t.updateStorage(i,null,!0),t.updateStorage(s,null,!0),t.loading=!1},r.submit=function(){t.loading=!0,t.visitor.interaction&&t.visitor.interaction.id?o.chatInteraction.close(w()({id:t.visitor.interaction.id,ratingType:t.settings.ratingType,customer:t.settings.customerAlias||t.visitor.from},r.form)).$promise.then((function(){delete r.errors.submit;const e=n.simple().textContent(t.settings.formSubmitSuccessMessage||"Form properly submitted").toastClass("md-success-toast").parent(angular.element(document.querySelector("#chat-toolbar")));n.show(e)})).then(d).then(c).catch(a("submit")).finally(l):(l(),a("submit"))},r.skip=function(){d(),c()},r.form={},r.errors={}}function S(t,e){const n={baseUrl:t.settings.remote+"/api/"},o={id:"@id",token:t.settings.token};return n.chatWebsite=e(n.baseUrl+"chat/websites/:id",o,{notify:{method:"POST",url:n.baseUrl+"chat/websites/:id/notify"},offline:{method:"POST",url:n.baseUrl+"chat/websites/:id/offline"},getFields:{method:"GET",url:n.baseUrl+"chat/websites/:id/fields"}}),n.chatInteraction=e(n.baseUrl+"chat/interactions/:id",o,{update:{method:"PUT",url:n.baseUrl+"chat/interactions/:id"},customUpdate:{method:"PUT",url:n.baseUrl+"chat/interactions/:id/custom_update"},close:{method:"PUT",url:n.baseUrl+"chat/interactions/:id/close"},getMessages:{method:"GET",url:n.baseUrl+"chat/interactions/:intid/my_messages"},uploadAttachment:{method:"POST",url:n.baseUrl+"chat/interactions/:id/attachment_upload",headers:{"Content-Type":void 0},transformRequest:angular.identity},downloadAttachment:{method:"GET",url:n.baseUrl+"chat/interactions/:id/attachment_download"}}),n.chatMessage=e(n.baseUrl+"chat/messages/:id",o,{update:{method:"PUT",url:n.baseUrl+"chat/messages/:id"}}),n}I.$inject=["$rootScope","$state","$mdToast","api","STORAGE_VISITOR","STORAGE_LAYOUT"],S.$inject=["$rootScope","$resource"];var k=n(4872),C=n.n(k),E=n(7720),T=n.n(E);function A(t,e,n,o,i,s,r,a,l,c){const d=this;let m,p,f,g;function h(){n((function(){const t=i[0].getElementsByClassName("chat-messages")[0];t&&(t.scrollTop=t.scrollHeight)}))}function j(t){return function(e){d.errors[t]=e.data,h()}}function v(t){a.chatWebsite.notify(t).$promise.then((function(t){delete d.errors.chatMessageError,u()(e.visitor.interaction)&&(e.visitor.interaction={id:t.interaction.id},e.updateStorage(l,e.visitor)),m[0].emojioneArea.setText(""),h()})).catch(j("chatMessageError"))}function y(){e.settings.online?s.go("app.online",null,{location:"replace"}):s.go("app.offline",null,{location:"replace"})}function b(){e.visitor&&e.visitor.interaction&&e.visitor.interaction.id&&a.chatInteraction.get({id:e.visitor.interaction.id}).$promise.then((function(t){delete d.errors.getInteraction,t.closed&&(e.visitor.interaction.closed=!0,e.updateStorage(l,e.visitor),"unmanaged"===t.disposition?s.go("app.unmanaged",null,{location:"replace"}):s.go("app.closing",null,{location:"replace"}))})).catch((function(t){switch(t.status){case 403:s.go("app.closing",null,{location:"replace"});break;case 404:e.updateStorage(l,null,!0),e.updateStorage(c,null,!0),y();break;case 405:s.go("app.unmanaged",null,{location:"replace"});break;default:console.error(t)}}))}function I(t){const n=m[0].emojioneArea.getText();t&&13===t.keyCode&&t.shiftKey||t&&13!==t.keyCode||""!==n&&v(w()({body:n},e.visitor))}function S(){e.visitor&&e.visitor.interaction&&e.visitor.interaction.id&&a.chatInteraction.getMessages({intid:e.visitor.interaction.id,includeAgent:!0,id:g||void 0}).$promise.then((function(t){if(delete d.errors.interaction,t.count){let o=!1,i=0;for(i=0,o=!1;i<t.rows.length;i++){const s=C()(e.messages,{id:t.rows[i].id});s?t.rows[i].read&&(s.read=!0):(o=!0,e.messages.push(t.rows[i])),"out"!==t.rows[i].direction||t.rows[i].read||(n=t.rows[i].id,a.chatMessage.update({id:n,read:!0}).$promise.catch((function(t){console.error(t)})))}o&&h(),t.rows[i-1].read&&(g=t.rows[i-1].id)}var n})).catch((function(t){switch(t.status){case 403:s.go("app.closing",null,{location:"replace"});break;case 405:s.go("app.unmanaged",null,{location:"replace"});break;default:console.error(t)}}))}d.errors={},e.messages=[],d.emojiOptions={watchEmbedData:!1,fontSmiley:!1,emoji:!0,link:!0,linkTarget:"_blank"},d.$onInit=function(){e.status="chat",e.loading=!1,e.settings.showMenu=!0,d.replyMessage="",e.visitor.interaction&&e.visitor.interaction.closed?(e.updateStorage(l,null,!0),e.updateStorage(c,null,!0),y()):(b(),p=o(S,2e3),f=o(b,3e3)),m=$("#emojionearea").emojioneArea({placeholder:e.settings.placeholderMessage||"Type a message",events:{keyup:function(t,e){I(e)},ready:function(){this.setFocus()}}})},d.reply=I,d.reply_button=function(){const t=m[0].emojioneArea.getText();""!==t&&(v(w()({body:t},e.visitor)),m[0].emojioneArea.setFocus())},d.fileAdded=function(t){const n=new FormData;n.append("file",t.file),r.post(e.settings.remote+"/api/chat/interactions/"+e.visitor.interaction.id+"/attachment_upload?token="+e.settings.token,n,{transformRequest:angular.identity,headers:{"Content-Type":void 0}}).then((function(t){(t=t.data).id?(delete d.errors.sendAttachment,v(w()({body:'<a href="'+e.settings.remote+"/api/chat/interactions/"+e.visitor.interaction.id+"/attachment_download?attachId="+t.id+"&token="+e.settings.token+'" target="_blank">'+t.name+"</a>",AttachmentId:t.id},e.visitor))):j("sendAttachment")}),j("sendAttachment"))},t.$on("$destroy",(function(){o.cancel(p),o.cancel(f),p=null,f=null})),e.$on("$download",(function(t,n){n&&n(T()(e.messages))}))}n(4156),n(6512),A.$inject=["$scope","$rootScope","$timeout","$interval","$document","$state","$http","api","STORAGE_VISITOR","STORAGE_LAYOUT"];var U=n(6611),x=n.n(U);function O(t,e,n){const o=this;let i=null;function s(){t.loading=!1}t.typeField="",o.$onInit=function(){t.status="offline",o.visitor={id:t.settings.id,mapKeyOffline:"firstName",from:"Anonymous"+x()(1,1e6)},t.settings.showMenu=!1,t.loading=!1,e.chatWebsite.getFields({id:t.settings.id,online:!1}).$promise.then((function(t){t.count&&(i=t.fromKey,o.fields=t.rows)})).then((function(){for(let e=0;e<o.fields.length;e++){const n=o.fields[e];if(t.typeField+=n.type,void 0!==n.props&&n.props.helpText){const t=RegExp.prototype.test.bind(/(<([^>]+)>)/i);o.checkHTML[e]=t(n.props.helpText)}}})).catch((function(t){console.error(t)}))},o.submit=function(){t.loading=!0;for(let e=0;e<o.fields.length;e++){const n=o.fields[e];n.props&&void 0!==o.form[n.props.title]&&(u()(n.cmField)||(o.visitor[n.cmField]=Array.isArray(o.form[n.props.title])?o.form[n.props.title].join():o.form[n.props.title]),e===i&&(u()(t.settings.mapKeyOffline)||(o.visitor.mapKeyOffline=t.settings.mapKeyOffline,o.visitor.from=Array.isArray(o.form[n.props.title])?o.form[n.props.title].join():o.form[n.props.title])))}if(null!==o.form&&"{}"!==JSON.stringify(o.form))e.chatWebsite.offline(w()({body:o.form},o.visitor)).$promise.then((function(){delete o.errors.submit,t.$emit("hide"),o.form={},o.userForm.$setPristine(),o.userForm.$setUntouched();const e=n.simple().textContent(t.settings.formSubmitSuccessMessage||"Form properly submitted").toastClass("md-success-toast").parent(angular.element(document.querySelector("#chat-toolbar")));n.show(e)})).catch(("submit",function(e){const i=n.simple().textContent(t.settings.formSubmitFailureMessage||"Form submission error").toastClass("md-failure-toast").parent(angular.element(document.querySelector("#chat-toolbar")));n.show(i),o.errors.submit=e.data})).finally(s);else{const e=n.simple().textContent(t.settings.formSubmitErrorMessage||"Form invalid!").toastClass("md-error-toast").parent(angular.element(document.querySelector("#chat-toolbar")));n.show(e),s()}},o.toggle=function(t,e){o.form[t]||(o.form[t]=[]);const n=o.form[t].indexOf(e);n>-1?o.form[t].splice(n,1):o.form[t].push(e)},o.exists=function(t,e){return o.form[t]||(o.form[t]=[]),o.form[t].indexOf(e)>-1},o.checkHTML=[],o.form={},o.errors={},o.userForm={}}function M(t,e,n,o){const i=this;let s=null;i.checkHTML=[],i.form={},i.errors={},i.userForm={},i.disableItem=!1,i.$onInit=function(){t.status="online",t.visitor&&t.visitor.interaction?t.visitor.interaction.id?e.go("app.chat",null,{location:"replace"}):e.go("app.waiting",null,{location:"replace"}):(t.visitor={id:t.settings.id,mapKey:"firstName",from:"Anonymous"+x()(1,1e6)},t.settings.showMenu=!1,t.updateStorage(o,t.visitor),n.chatWebsite.getFields({id:t.settings.id,online:!0}).$promise.then((function(t){t.count&&(s=t.fromKey,i.fields=t.rows)})).then((function(){for(let t=0;t<i.fields.length;t++){const e=i.fields[t];if(e.props.helpText){const n=RegExp.prototype.test.bind(/(<([^>]+)>)/i);i.checkHTML[t]=n(e.props.helpText)}}})).catch((function(t){console.error(t)})))},i.submit=function(){let r="New chat request \n";for(let e=0;e<i.fields.length;e++){const n=i.fields[e];n.props&&void 0===i.form[n.props.title]&&(u()(n.variable)||(t.visitor[n.variable]=Array.isArray(i.form[n.props.title])?i.form[n.props.title].join():i.form[n.props.title]),u()(n.cmField)||(t.visitor[n.cmField]=Array.isArray(i.form[n.props.title])?i.form[n.props.title].join():i.form[n.props.title]),e===s&&(u()(t.settings.mapKey)||(t.visitor.mapKey=t.settings.mapKey,t.visitor.from=Array.isArray(i.form[n.props.title])?i.form[n.props.title].join():i.form[n.props.title])),i.form[n.props.title]&&(r+=n.props.title+": "+i.form[n.props.title]+"\n"))}var a;a=w()({body:r,referer:t.settings.referer,customerIp:t.settings.customerIp},t.visitor),i.disableItem=!0,n.chatWebsite.notify(a).$promise.then((function(n){delete i.errors.chatMessageError,t.visitor.message={id:n.message.id},t.visitor.interaction={id:n.interaction.id},t.updateStorage(o,t.visitor),i.disableItem=!1,t.settings.enableCustomerWriting?e.go("app.chat",null,{location:"replace"}):e.go("app.waiting",null,{location:"replace"})})).catch((function(t){i.disableItem=!1,console.error(t)}))},i.toggle=function(t,e){i.form[t]||(i.form[t]=[]);const n=i.form[t].indexOf(e);n>-1?i.form[t].splice(n,1):i.form[t].push(e)},i.exists=function(t,e){return i.form[t]||(i.form[t]=[]),i.form[t].indexOf(e)>-1}}function _(t,e,n,o,i,s){const r=this;function a(){t.settings.online?e.go("app.online",null,{location:"replace"}):e.go("app.offline",null,{location:"replace"})}function l(){r.form={},r.upColor=null,r.downColor=null,r.userForm.$setPristine(),r.userForm.$setUntouched(),t.visitor={},t.enableDownload=!1,t.$emit("hide")}function c(e){return function(o){r.errors[e]=o.data;const i=n.simple().textContent(t.settings.formSubmitFailureMessage||"Form submission error").toastClass("md-failure-toast").parent(angular.element(document.querySelector("#chat-toolbar")));n.show(i)}}function d(){t.loading=!1}r.form={},r.errors={},r.$onInit=function(){t.status="unmanaged",t.updateStorage(i,null,!0),t.updateStorage(s,null,!0),t.loading=!1},r.submit=function(){t.loading=!0,t.visitor.interaction&&t.visitor.interaction.id?o.chatInteraction.customUpdate({id:t.visitor.interaction.id,note:r.form.note}).$promise.then((function(){delete r.errors.submit;const e=n.simple().textContent(t.settings.formSubmitSuccessMessage||"Form properly submitted").toastClass("md-success-toast").parent(angular.element(document.querySelector("#chat-toolbar")));n.show(e)})).then(l).then(a).catch(c("submit")).finally(d):(d(),c("submit"))},r.skip=function(){l(),a()}}function R(t,e,n,o,s,r,a,l){let c,d=!1;function u(){let e={},n=!1;r.chatInteraction.get({id:t.visitor.interaction.id}).$promise.then((function(n){return e=n,r.chatInteraction.getMessages({intid:t.visitor.interaction.id}).$promise})).then((function(i){n=i.rows.length>1,e.closed?(t.visitor.interaction.closed=!0,t.updateStorage(a,t.visitor),"unmanaged"===e.disposition&&o.go("app.unmanaged",null,{location:"replace"})):e.UserId?(t.visitor.interaction.UserId=e.UserId,t.updateStorage(a,t.visitor),o.go("app.chat",null,{location:"replace"})):n&&o.go("app.chat",null,{location:"replace"})})).catch((function(t){switch(t.status){case 403:o.go("app.closing",null,{location:"replace"});break;case 405:o.go("app.unmanaged",null,{location:"replace"});break;default:console.error(t)}}))}function m(){if(t.visitor&&t.visitor.interaction&&t.visitor.interaction.id&&!d){d=!0;const e=new XMLHttpRequest;e.open("PUT",t.settings.remote+"/api/chat/interactions/"+t.visitor.interaction.id+"/abandon?token="+t.settings.token,!1),e.setRequestHeader("Content-type","application/json; charset=utf-8"),e.send(JSON.stringify({channel:"chat",interaction:{id:t.visitor.interaction.id},message:{id:t.visitor.message.id},disposition:"abandoned",closed:!0,closeReason:"contact",closedAt:i()().format("YYYY-MM-DD HH:mm:ss")})),4===e.readyState&&200===e.status&&(t.updateStorage(a,null,!0),t.updateStorage(l,null,!0))}}this.$onInit=function(){t.status="waiting",t.visitor&&t.visitor.interaction&&t.visitor.interaction.id&&(c=n(u,3e3))},e.$on("$destroy",(function(){s.removeEventListener("beforeunload",m),s.removeEventListener("unload",m),n.cancel(c)})),s.addEventListener("beforeunload",m),s.addEventListener("unload",m)}function F(t){return function(e){return t.trustAsHtml(e)}}O.$inject=["$rootScope","api","$mdToast"],M.$inject=["$rootScope","$state","api","STORAGE_VISITOR"],_.$inject=["$rootScope","$state","$mdToast","api","STORAGE_VISITOR","STORAGE_LAYOUT"],R.$inject=["$rootScope","$scope","$interval","$state","$window","api","STORAGE_VISITOR","STORAGE_LAYOUT"],F.$inject=["$sce"],angular.module("motion",["ngAnimate","ngAria","ngMessages","ngMaterial","ngResource","ngSanitize","ngCsv","ngEmbed","ui.router","LocalStorageModule","ngRateIt","flow"]).filter("toTrusted",F).constant("STORAGE_PREFIX","motion_chat").constant("STORAGE_VISITOR","visitor").constant("STORAGE_LAYOUT","layout").directive("ngEnter",(function(){return function(t,e,n){e.bind("keydown keypress",(function(e){13===e.which&&(t.$apply((function(){t.$eval(n.ngEnter)})),e.preventDefault())}))}})).directive("ngPrint",(function(){return{link:function(t,e){e.on("click",(function(){document.getElementById("chatContent1")&&function(t,e){const n=document.createElement("div"),o=e.visitor,s=e.settings;let r;for(let t=0;t<e.messages.length;t++){const a=e.messages[t];let l="Sender: ";const c="Message: "+a.body,d="Sent At: "+i()(a.createdAt).format("YYYY-MM-DD HH:mm:ss");if(0!==t){switch(e.settings.agentIdentifier){case"website_alias":l+="out"===a.direction?a.UserId?s.agentAlias+a.UserId:"System":s.customerAlias||o.from||"Visitor"+a.ContactId;break;case"agent_alias":l+="out"===a.direction?a.UserId?a.User.alias||a.User.fullname:"System":s.customerAlias||o.from||"Visitor"+a.ContactId;break;case"agent_fullname":l+="out"===a.direction?a.UserId?a.User.fullname:"System":s.customerAlias||o.from||"Visitor"+a.ContactId;break;default:l+="out"===a.direction?a.UserId?(s.agentAlias||"Agent")+a.UserId:"System":s.customerAlias||o.from||"Visitor"+a.ContactId}n.appendChild(document.createTextNode(l)),n.appendChild(document.createElement("br")),n.appendChild(document.createTextNode(c)),n.appendChild(document.createElement("br")),n.appendChild(document.createTextNode(d)),n.appendChild(document.createElement("br")),n.appendChild(document.createElement("br"))}else r=a.createdAt}const a=window.open();a.document.write("<html><head><title>"+document.title+"</title>"),a.document.write("</head><body >"),a.document.write("<h3> Website: "+s.referer+"</h3>"),a.document.write("<h3> Start Time: "+i()(r).format("YYYY-MM-DD HH:mm:ss")+"</h3>"),a.document.write("<h3> Print Time: "+i()().format("YYYY-MM-DD HH:mm:ss")+"</h3>"),a.document.write(n.innerHTML),a.document.write("</body></html>"),a.document.close(),a.focus(),a.print(),a.close()}(0,t)}))},restrict:"A"}})).controller("ChatController",A).controller("ClosingController",I).config(["$mdGestureProvider",function(t){t.skipClickHijack()}]).controller("IndexController",a).factory("api",S).config(y).run(v).controller("OfflineController",O).config(["$mdGestureProvider",function(t){t.skipClickHijack()}]).controller("OnlineController",M).controller("UnmanagedController",_).controller("WaitingController",R)},6700:(t,e,n)=>{var o={"./af":2786,"./af.js":2786,"./ar":867,"./ar-dz":4130,"./ar-dz.js":4130,"./ar-kw":6135,"./ar-kw.js":6135,"./ar-ly":6440,"./ar-ly.js":6440,"./ar-ma":7702,"./ar-ma.js":7702,"./ar-sa":6040,"./ar-sa.js":6040,"./ar-tn":7100,"./ar-tn.js":7100,"./ar.js":867,"./az":1083,"./az.js":1083,"./be":9138,"./be.js":9138,"./bg":8338,"./bg.js":8338,"./bm":7438,"./bm.js":7438,"./bn":8905,"./bn-bd":6225,"./bn-bd.js":6225,"./bn.js":8905,"./bo":1560,"./bo.js":1560,"./br":1278,"./br.js":1278,"./bs":622,"./bs.js":622,"./ca":2468,"./ca.js":2468,"./cs":5822,"./cs.js":5822,"./cv":877,"./cv.js":877,"./cy":7373,"./cy.js":7373,"./da":4780,"./da.js":4780,"./de":9740,"./de-at":217,"./de-at.js":217,"./de-ch":894,"./de-ch.js":894,"./de.js":9740,"./dv":5300,"./dv.js":5300,"./el":837,"./el.js":837,"./en-au":8348,"./en-au.js":8348,"./en-ca":7925,"./en-ca.js":7925,"./en-gb":2243,"./en-gb.js":2243,"./en-ie":6436,"./en-ie.js":6436,"./en-il":7207,"./en-il.js":7207,"./en-in":4175,"./en-in.js":4175,"./en-nz":6319,"./en-nz.js":6319,"./en-sg":1662,"./en-sg.js":1662,"./eo":2915,"./eo.js":2915,"./es":5655,"./es-do":5251,"./es-do.js":5251,"./es-mx":6112,"./es-mx.js":6112,"./es-us":1146,"./es-us.js":1146,"./es.js":5655,"./et":5603,"./et.js":5603,"./eu":7763,"./eu.js":7763,"./fa":6959,"./fa.js":6959,"./fi":1897,"./fi.js":1897,"./fil":2549,"./fil.js":2549,"./fo":4694,"./fo.js":4694,"./fr":4470,"./fr-ca":3049,"./fr-ca.js":3049,"./fr-ch":2330,"./fr-ch.js":2330,"./fr.js":4470,"./fy":5044,"./fy.js":5044,"./ga":7563,"./ga.js":7563,"./gd":2101,"./gd.js":2101,"./gl":8794,"./gl.js":8794,"./gom-deva":7884,"./gom-deva.js":7884,"./gom-latn":3168,"./gom-latn.js":3168,"./gu":5349,"./gu.js":5349,"./he":4206,"./he.js":4206,"./hi":94,"./hi.js":94,"./hr":316,"./hr.js":316,"./hu":2138,"./hu.js":2138,"./hy-am":1423,"./hy-am.js":1423,"./id":9218,"./id.js":9218,"./is":135,"./is.js":135,"./it":626,"./it-ch":150,"./it-ch.js":150,"./it.js":626,"./ja":9183,"./ja.js":9183,"./jv":4286,"./jv.js":4286,"./ka":2105,"./ka.js":2105,"./kk":7772,"./kk.js":7772,"./km":8758,"./km.js":8758,"./kn":9282,"./kn.js":9282,"./ko":3730,"./ko.js":3730,"./ku":1408,"./ku.js":1408,"./ky":3291,"./ky.js":3291,"./lb":6841,"./lb.js":6841,"./lo":5466,"./lo.js":5466,"./lt":7010,"./lt.js":7010,"./lv":7595,"./lv.js":7595,"./me":9861,"./me.js":9861,"./mi":5493,"./mi.js":5493,"./mk":5966,"./mk.js":5966,"./ml":7341,"./ml.js":7341,"./mn":5115,"./mn.js":5115,"./mr":370,"./mr.js":370,"./ms":9847,"./ms-my":1237,"./ms-my.js":1237,"./ms.js":9847,"./mt":2126,"./mt.js":2126,"./my":6165,"./my.js":6165,"./nb":4924,"./nb.js":4924,"./ne":6744,"./ne.js":6744,"./nl":3901,"./nl-be":9814,"./nl-be.js":9814,"./nl.js":3901,"./nn":3877,"./nn.js":3877,"./oc-lnc":2135,"./oc-lnc.js":2135,"./pa-in":5858,"./pa-in.js":5858,"./pl":4495,"./pl.js":4495,"./pt":9520,"./pt-br":7971,"./pt-br.js":7971,"./pt.js":9520,"./ro":6459,"./ro.js":6459,"./ru":1793,"./ru.js":1793,"./sd":950,"./sd.js":950,"./se":490,"./se.js":490,"./si":124,"./si.js":124,"./sk":4249,"./sk.js":4249,"./sl":4985,"./sl.js":4985,"./sq":1104,"./sq.js":1104,"./sr":9131,"./sr-cyrl":9915,"./sr-cyrl.js":9915,"./sr.js":9131,"./ss":5893,"./ss.js":5893,"./sv":8760,"./sv.js":8760,"./sw":1172,"./sw.js":1172,"./ta":7333,"./ta.js":7333,"./te":3110,"./te.js":3110,"./tet":2095,"./tet.js":2095,"./tg":7321,"./tg.js":7321,"./th":9041,"./th.js":9041,"./tk":9005,"./tk.js":9005,"./tl-ph":5768,"./tl-ph.js":5768,"./tlh":9444,"./tlh.js":9444,"./tr":2397,"./tr.js":2397,"./tzl":8254,"./tzl.js":8254,"./tzm":1106,"./tzm-latn":699,"./tzm-latn.js":699,"./tzm.js":1106,"./ug-cn":9288,"./ug-cn.js":9288,"./uk":7691,"./uk.js":7691,"./ur":3795,"./ur.js":3795,"./uz":6791,"./uz-latn":588,"./uz-latn.js":588,"./uz.js":6791,"./vi":5666,"./vi.js":5666,"./x-pseudo":4378,"./x-pseudo.js":4378,"./yo":5805,"./yo.js":5805,"./zh-cn":3839,"./zh-cn.js":3839,"./zh-hk":5726,"./zh-hk.js":5726,"./zh-mo":9807,"./zh-mo.js":9807,"./zh-tw":4152,"./zh-tw.js":4152};function i(t){var e=s(t);return n(e)}function s(t){if(!n.o(o,t)){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}return o[t]}i.keys=function(){return Object.keys(o)},i.resolve=s,t.exports=i,i.id=6700},5734:t=>{"use strict";t.exports=angular}},0,[[1019,666,464]]]);
2 //# sourceMappingURL=chat.js.map