{ "version": 3, "sources": ["src/app/main/components/chat/chat-test.service.ts"], "sourcesContent": ["import { Injectable } from '@angular/core';\r\nimport { PubSubService } from '../../service/pub-sub.service';\r\nimport { Subject, Observable, of } from 'rxjs';\r\nimport { ChatService } from './chat.service';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { CacheService } from '../../service/cache.service';\r\nimport { ChatResponse, AccountDetail } from '../../model';\r\nimport { ActivityService } from '../../service/activity.service';\r\nimport { Router } from '@angular/router';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ChatTestService extends ChatService {\r\n\r\n constructor(httpClient: HttpClient, cache: CacheService, private pubSub: PubSubService, activity: ActivityService, router: Router) {\r\n super(httpClient, cache, activity, router);\r\n }\r\n\r\n get canShowChat(): boolean {\r\n return true;\r\n }\r\n\r\n private testSubject: Subject;\r\n\r\n getToken(): Observable {\r\n this.isChatLive = true;\r\n this.chatIsInitialized = false;\r\n return of({});\r\n }\r\n\r\n getChatText(): Observable {\r\n this.testSubject = new Subject();\r\n return this.testSubject.asObservable();\r\n }\r\n\r\n sendSingleChatMessage(message: string): Observable {\r\n return of(null);\r\n }\r\n\r\n endChatSession() {\r\n super.endChatSession();\r\n if (this.testSubject) {\r\n this.testSubject.complete();\r\n }\r\n this.testSubject = null;\r\n }\r\n\r\n testShow() {\r\n this.pubSub.publish(this.pubSub.items.chatTesting, true);\r\n this.pubSub.publish(this.pubSub.items.showChat, 'show');\r\n setTimeout(() => {\r\n this.testAgentMessage('Welcome to test chat!');\r\n }, 100);\r\n }\r\n\r\n testAgentMessage(message: string) {\r\n const response = { messages: [{Text: message, PartyTypeValue: 'Agent'}] };\r\n this.sendTestResponse(response);\r\n }\r\n\r\n testCustomerMessage(message: string) {\r\n const response = { messages: [{Text: message, PartyTypeValue: 'Agent'}], isCustomer: true };\r\n this.sendTestResponse(response);\r\n }\r\n\r\n testIdleSystemMessage() {\r\n this.sendTestResponse(null);\r\n }\r\n\r\n testActiveMessage() {\r\n const response = {messages: [{ Text: '', Status: 'Active' }]};\r\n this.sendTestResponse(response);\r\n }\r\n\r\n testSystemEndSession() {\r\n const response = {messages: [{ Text: 'ChatSessionEnded', PartyTypeValue: 'System' }]};\r\n this.sendTestResponse(response);\r\n }\r\n\r\n testTransfer() {\r\n const response = {messages: [{ Text: 'AgentLeftChat', PartyTypeValue: 'System' }]};\r\n this.sendTestResponse(response);\r\n }\r\n\r\n testTimeoutSession() {\r\n const response = {messages: [{ Text: 'Due to inactivity, we are ending this chat', PartyTypeValue: 'System' }]};\r\n this.sendTestResponse(response);\r\n }\r\n\r\n protected setUserAccounts(accounts: AccountDetail[]) {\r\n return; // don't use parent method\r\n }\r\n\r\n private sendTestResponse(response: any) {\r\n const messages = super.processAgentMessages(response);\r\n messages.isCustomer = response.isCustomer;\r\n if (this.testSubject && !this.testSubject.closed) {\r\n this.testSubject.next(messages);\r\n }\r\n }\r\n}\r\n"], "mappings": "4QAaA,IAAaA,GAAgB,IAAA,CAAvB,IAAOA,EAAP,MAAOA,UAAwBC,CAAW,CAE5CC,YAAYC,EAAwBC,EAA6BC,EAAuBC,EAA2BC,EAAc,CAC7H,MAAMJ,EAAYC,EAAOE,EAAUC,CAAM,EADoB,KAAAF,OAAAA,CAEjE,CAEA,IAAIG,aAAW,CACX,MAAO,EACX,CAIAC,UAAQ,CACJ,YAAKC,WAAa,GAClB,KAAKC,kBAAoB,GAClBC,EAAG,CAAA,CAAE,CAChB,CAEAC,aAAW,CACP,YAAKC,YAAc,IAAIC,EAChB,KAAKD,YAAYE,aAAY,CACxC,CAEAC,sBAAsBC,EAAe,CACjC,OAAON,EAAG,IAAI,CAClB,CAEAO,gBAAc,CACV,MAAMA,eAAc,EAChB,KAAKL,aACL,KAAKA,YAAYM,SAAQ,EAE7B,KAAKN,YAAc,IACvB,CAEAO,UAAQ,CACJ,KAAKhB,OAAOiB,QAAQ,KAAKjB,OAAOkB,MAAMC,YAAa,EAAI,EACvD,KAAKnB,OAAOiB,QAAQ,KAAKjB,OAAOkB,MAAME,SAAU,MAAM,EACtDC,WAAW,IAAK,CACZ,KAAKC,iBAAiB,uBAAuB,CACjD,EAAG,GAAG,CACV,CAEAA,iBAAiBT,EAAe,CAC5B,IAAMU,EAAW,CAAEC,SAAU,CAAC,CAACC,KAAMZ,EAASa,eAAgB,OAAO,CAAC,CAAC,EACvE,KAAKC,iBAAiBJ,CAAQ,CAClC,CAEAK,oBAAoBf,EAAe,CAC/B,IAAMU,EAAW,CAAEC,SAAU,CAAC,CAACC,KAAMZ,EAASa,eAAgB,OAAO,CAAC,EAAGG,WAAY,EAAI,EACzF,KAAKF,iBAAiBJ,CAAQ,CAClC,CAEAO,uBAAqB,CACjB,KAAKH,iBAAiB,IAAI,CAC9B,CAEAI,mBAAiB,CACb,IAAMR,EAAW,CAACC,SAAU,CAAC,CAAEC,KAAM,GAAIO,OAAQ,QAAQ,CAAE,CAAC,EAC5D,KAAKL,iBAAiBJ,CAAQ,CAClC,CAEAU,sBAAoB,CAChB,IAAMV,EAAW,CAACC,SAAU,CAAC,CAAEC,KAAM,mBAAoBC,eAAgB,QAAQ,CAAE,CAAC,EACpF,KAAKC,iBAAiBJ,CAAQ,CAClC,CAEAW,cAAY,CACR,IAAMX,EAAW,CAACC,SAAU,CAAC,CAAEC,KAAM,gBAAiBC,eAAgB,QAAQ,CAAE,CAAC,EACjF,KAAKC,iBAAiBJ,CAAQ,CAClC,CAEAY,oBAAkB,CACd,IAAMZ,EAAW,CAACC,SAAU,CAAC,CAAEC,KAAM,6CAA8CC,eAAgB,QAAQ,CAAE,CAAC,EAC9G,KAAKC,iBAAiBJ,CAAQ,CAClC,CAEUa,gBAAgBC,EAAyB,CAEnD,CAEQV,iBAAiBJ,EAAa,CAClC,IAAMC,EAAW,MAAMc,qBAAqBf,CAAQ,EACpDC,EAASK,WAAaN,EAASM,WAC3B,KAAKpB,aAAe,CAAC,KAAKA,YAAY8B,QACtC,KAAK9B,YAAY+B,KAAKhB,CAAQ,CAEtC,yCAvFS7B,GAAe8C,EAAAC,CAAA,EAAAD,EAAAE,CAAA,EAAAF,EAAAG,CAAA,EAAAH,EAAAI,CAAA,EAAAJ,EAAAK,CAAA,CAAA,CAAA,wBAAfnD,EAAeoD,QAAfpD,EAAeqD,UAAAC,WAFZ,MAAM,CAAA,EAEhB,IAAOtD,EAAPuD,SAAOvD,CAAgB,GAAA", "names": ["ChatTestService", "ChatService", "constructor", "httpClient", "cache", "pubSub", "activity", "router", "canShowChat", "getToken", "isChatLive", "chatIsInitialized", "of", "getChatText", "testSubject", "Subject", "asObservable", "sendSingleChatMessage", "message", "endChatSession", "complete", "testShow", "publish", "items", "chatTesting", "showChat", "setTimeout", "testAgentMessage", "response", "messages", "Text", "PartyTypeValue", "sendTestResponse", "testCustomerMessage", "isCustomer", "testIdleSystemMessage", "testActiveMessage", "Status", "testSystemEndSession", "testTransfer", "testTimeoutSession", "setUserAccounts", "accounts", "processAgentMessages", "closed", "next", "\u0275\u0275inject", "HttpClient", "CacheService", "PubSubService", "ActivityService", "Router", "factory", "\u0275fac", "providedIn", "_ChatTestService"] }