@amc-technology/ui-library 1.0.31 → 1.0.35

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.
Files changed (56) hide show
  1. package/amc-technology-ui-library.metadata.json +1 -1
  2. package/bundles/amc-technology-ui-library.umd.js +1078 -747
  3. package/bundles/amc-technology-ui-library.umd.js.map +1 -56
  4. package/bundles/amc-technology-ui-library.umd.min.js +16 -2
  5. package/bundles/amc-technology-ui-library.umd.min.js.map +1 -274
  6. package/esm2015/amc-technology-ui-library.js +16 -1417
  7. package/esm2015/projects/UILibrary/src/app/Helpers.js +11 -0
  8. package/esm2015/projects/UILibrary/src/app/components/activity/activity.component.js +83 -0
  9. package/esm2015/projects/UILibrary/src/app/components/chat-box/chat-box.component.js +104 -0
  10. package/esm2015/projects/UILibrary/src/app/components/chat-message/chat-message.component.js +39 -0
  11. package/esm2015/projects/UILibrary/src/app/components/disposition/disposition.component.js +49 -0
  12. package/esm2015/projects/UILibrary/src/app/components/duration/duration.component.js +58 -0
  13. package/esm2015/projects/UILibrary/src/app/components/holdtimer/holdtimer.component.js +72 -0
  14. package/esm2015/projects/UILibrary/src/app/components/interaction/interaction.component.js +80 -0
  15. package/esm2015/projects/UILibrary/src/app/components/login/login.component.js +45 -0
  16. package/esm2015/projects/UILibrary/src/app/components/operation/operation.component.js +57 -0
  17. package/esm2015/projects/UILibrary/src/app/components/property/property.component.js +99 -0
  18. package/esm2015/projects/UILibrary/src/app/components/scenario/scenario.component.js +40 -0
  19. package/esm2015/projects/UILibrary/src/app/models/chat.message.js +7 -0
  20. package/esm2015/projects/UILibrary/src/app/models/chat.settings.js +1 -0
  21. package/esm2015/projects/UILibrary/src/app/models/disposition.interface.js +1 -0
  22. package/esm2015/projects/UILibrary/src/app/models/login.interface.js +1 -0
  23. package/esm2015/projects/UILibrary/src/app/models/uilibrary.model.js +40 -0
  24. package/esm2015/projects/UILibrary/src/app/uilibrary.module.js +73 -0
  25. package/esm2015/public_api.js +2 -0
  26. package/esm5/amc-technology-ui-library.js +16 -714
  27. package/esm5/projects/UILibrary/src/app/Helpers.js +11 -0
  28. package/esm5/projects/UILibrary/src/app/components/activity/activity.component.js +84 -0
  29. package/esm5/projects/UILibrary/src/app/components/chat-box/chat-box.component.js +105 -0
  30. package/esm5/projects/UILibrary/src/app/components/chat-message/chat-message.component.js +40 -0
  31. package/esm5/projects/UILibrary/src/app/components/disposition/disposition.component.js +61 -0
  32. package/esm5/projects/UILibrary/src/app/components/duration/duration.component.js +60 -0
  33. package/esm5/projects/UILibrary/src/app/components/holdtimer/holdtimer.component.js +74 -0
  34. package/esm5/projects/UILibrary/src/app/components/interaction/interaction.component.js +85 -0
  35. package/esm5/projects/UILibrary/src/app/components/login/login.component.js +68 -0
  36. package/esm5/projects/UILibrary/src/app/components/operation/operation.component.js +58 -0
  37. package/esm5/projects/UILibrary/src/app/components/property/property.component.js +101 -0
  38. package/esm5/projects/UILibrary/src/app/components/scenario/scenario.component.js +41 -0
  39. package/esm5/projects/UILibrary/src/app/models/chat.message.js +7 -0
  40. package/esm5/projects/UILibrary/src/app/models/chat.settings.js +1 -0
  41. package/esm5/projects/UILibrary/src/app/models/disposition.interface.js +1 -0
  42. package/esm5/projects/UILibrary/src/app/models/login.interface.js +1 -0
  43. package/esm5/projects/UILibrary/src/app/models/uilibrary.model.js +43 -0
  44. package/esm5/projects/UILibrary/src/app/uilibrary.module.js +74 -0
  45. package/esm5/public_api.js +2 -0
  46. package/fesm2015/amc-technology-ui-library.js +813 -0
  47. package/fesm2015/amc-technology-ui-library.js.map +1 -0
  48. package/fesm5/amc-technology-ui-library.js +867 -0
  49. package/fesm5/amc-technology-ui-library.js.map +1 -0
  50. package/package.json +14 -67
  51. package/projects/UILibrary/src/app/components/activity/activity.component.d.ts +10 -10
  52. package/projects/UILibrary/src/app/components/interaction/interaction.component.d.ts +2 -1
  53. package/projects/UILibrary/src/app/components/scenario/scenario.component.d.ts +2 -2
  54. package/webcomponents/webcomponents.js +3 -3
  55. package/esm2015/amc-technology-ui-library.js.map +0 -40
  56. package/esm5/amc-technology-ui-library.js.map +0 -42
@@ -1,2 +1,16 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common"),require("@angular/forms"),require("@angular/elements"),require("@angular/platform-browser"),require("elements-zone-strategy")):"function"==typeof define&&define.amd?define("@amc-technology/ui-library",["exports","@angular/core","@angular/common","@angular/forms","@angular/elements","@angular/platform-browser","elements-zone-strategy"],t):t((e["amc-technology"]=e["amc-technology"]||{},e["amc-technology"]["ui-library"]={}),e.ng.core,e.ng.common,e.ng.forms,e.ng.elements,e.ng.platformBrowser,e.elementsZoneStrategy)}(this,function(e,t,i,o,n,a,r){"use strict";function s(e){var t="function"==typeof Symbol&&Symbol.iterator,i=t&&e[t],o=0;if(i)return i.call(e);if(e&&"number"==typeof e.length)return{next:function(){return{value:(e=e&&o>=e.length?void 0:e)&&e[o++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}var l=(Object.defineProperty(p.prototype,"_minimized",{get:function(){return this.minimized},set:function(e){this.minimized=e,this.minimizedChanged.emit(e)},enumerable:!0,configurable:!0}),p.prototype.ngOnInit=function(){},p.prototype.minimize=function(){this._minimized=!0},p.prototype.maximize=function(){this._minimized=!1},p.prototype.isConferenceCall=function(){return!!(this.interaction.parties&&1<this.interaction.parties.length)},p.prototype.collapseKeypress=function(e){"Enter"===e.code&&this.minimize()},p.prototype.expandKeypress=function(e){"Enter"===e.code&&this.maximize()},p);function p(){this.minimizedChanged=new t.EventEmitter,this.isAgentTyping=new t.EventEmitter,this.newMessage=new t.EventEmitter,this._minimized=!1}l.decorators=[{type:t.Component,args:[{selector:"amc-interaction",template:'<div class="AnswerCallFocused">\n <div class="editor callHeaderTop">\n <img class="statusImage" aria-hidden="true" [src]="interaction.UIHeadersData.statusUrl" (click)="interaction.UIHeadersData.focusHandler.handler(interaction.UIHeadersData.focusHandler.operationName, interaction.UIHeadersData.focusHandler.operationMetadata)" />\n <label class="statusText">\n <b [id]="interaction.UIHeadersData.statusText">{{ interaction.UIHeadersData.statusText }}</b>\n </label>\n <label class="verticalDivider">|</label>\n <label class="directionText" *ngIf="!interaction.UIHeadersData.displayHoldCounter">{{ interaction.UIHeadersData.directionText }}</label>\n <div class="holdCallDurationDiv" *ngIf="interaction.UIHeadersData.displayHoldCounter">\n <amc-holdtimer [holdCounterData]="interaction.UIHeadersData.holdCounterData" [statusText]="interaction.UIHeadersData.statusText" [callId]="interaction.subheaderData.value"></amc-holdtimer>\n </div>\n <img class="ViewExpandImage" [src]="interaction.UIHeadersData.minimizeUrl" alt="Minimize" (click)="minimize()" (keypress)="collapseKeypress($event)" *ngIf="!_minimized" tabindex="0" role="button" aria-label="collapse Call Section">\n <img class="ViewCollapseImage" [src]="interaction.UIHeadersData.maximizeUrl" alt="Maximize" (click)="maximize()" (keypress)="expandKeypress($event)" *ngIf="_minimized" tabindex="0" role="button" aria-label="expand Call Section">\n <div class="DurationDiv" *ngIf="interaction.displayCallTimer">\n <amc-duration [statusText]="interaction.UIHeadersData.statusText" [callId]="interaction.subheaderData.value" [startTime]="interaction.startTime"></amc-duration>\n </div>\n </div>\n\n <div *ngIf="!_minimized">\n\n <div *ngIf="!isConferenceCall()">\n <div class="editor phoneNumberContainer">\n <input class="callImage" type="image" [src]="interaction.subheaderData.image.href" [title]="interaction.subheaderData.tooltip || \'\'" tabindex="-1">\n <input class="editor phoneNumberValue" [attr.aria-labelledby]="interaction.UIHeadersData.statusText + \' \' + interaction.subheaderData.value" readonly type="text" [value]="interaction.subheaderData.value" [id]="interaction.subheaderData.value" tabindex="-1">\n </div>\n\n <div class="cadSection">\n <ng-container *ngFor="let property of interaction.properties">\n <ng-container *ngIf="property.visible">\n <label class="col1" [title]="property.displayKey">{{property.displayKey}}</label>\n <amc-property [callType]="interaction.UIHeadersData.directionText" [statusText]="interaction.UIHeadersData.statusText" [callId]="interaction.subheaderData.value" class="col2" [property]="property"> </amc-property>\n </ng-container>\n </ng-container>\n\n <ng-container *ngFor="let property of interaction.associatedData">\n <ng-container *ngIf="property.visible">\n <div class="editor displayDiv">\n <label class="displayLabels" [title]="property.displayKey">{{property.displayKey}}</label>\n <amc-property [callType]="interaction.UIHeadersData.directionText" [statusText]="interaction.UIHeadersData.statusText" [callId]="interaction.subheaderData.value" class="col2" [property]="property"> </amc-property>\n </div>\n </ng-container>\n </ng-container>\n </div>\n\n <app-chat-box *ngIf="interaction.chat" [isTyping]="interaction.chat.isCustomerTyping" [settings]="interaction.chat.settings"\n [messages]="interaction.chat.messages" (isAgentTyping)="isAgentTyping.emit($event)" (newMessage)="newMessage.emit($event)"></app-chat-box>\n\n <div [id]=\'interaction.interactionId\'> </div>\n <amc-operation [callType]="interaction.UIHeadersData.directionText" [statusText]="interaction.UIHeadersData.statusText" [callId]="interaction.subheaderData.value" [operations]="interaction.operations"></amc-operation>\n </div>\n\n <div *ngIf="isConferenceCall()">\n <div *ngFor="let party of interaction.parties">\n <div class="editor phoneNumberContainer">\n <input class="callImage" type="image" [src]="party.header.image.href" [title]="party.header.tooltip || \'\'" tabindex="-1">\n <input class="editor phoneNumberValue" readonly type="text" [value]="party.header.value" tabindex="-1">\n </div>\n\n <div class="grid-container">\n <ng-container *ngFor="let property of party.properties">\n <ng-container *ngIf="property.visible">\n <label class="col1" [title]="property.displayKey">{{ property.displayKey }}</label>\n <amc-property [callType]="interaction.UIHeadersData.directionText" [statusText]="interaction.UIHeadersData.statusText" [callId]="party.header.value" class="col2" [property]="property"> </amc-property>\n </ng-container>\n </ng-container>\n </div>\n <amc-operation [callType]="interaction.UIHeadersData.directionText" [statusText]="interaction.UIHeadersData.statusText" [callId]="party.header.value" [operations]="party.operations"></amc-operation>\n <div class="AnswerCallFocused"></div>\n </div>\n <amc-operation [callType]="interaction.UIHeadersData.directionText" [statusText]="interaction.UIHeadersData.statusText" [callId]="interaction.subheaderData.value" [operations]="interaction.operations"></amc-operation>\n </div>\n\n </div>\n</div>\n',styles:[":host{display:block}.phoneNumberContainer{margin-left:5px!important;padding-left:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.cadSection{margin-bottom:5px}.grid-container{margin-left:5px;display:grid;grid-template-columns:auto 1fr;grid-column-gap:10px;max-width:calc(100% - 5px);overflow:hidden}.col1{grid-column:1/2}.col2{grid-column:2/3}.ViewExpandImage{margin:3px}.ViewExpandImage:focus{outline:#3296da solid 2px;outline-offset:0}.ViewCollapseImage{margin:3px}.ViewCollapseImage:focus{outline:#3296da solid 2px;outline-offset:0}.callImage{cursor:default}.phoneNumberValue:focus{outline-style:none}","body{padding-top:5px;padding-bottom:5px;margin:0}.login{width:20px;height:20px;display:block;margin-top:2px;margin-left:auto;margin-right:auto}.editor{font-size:.9em;text-align:left;margin:4px 5% 0 0;font-family:Arial;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;border:0;padding-top:2px;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.editor .standalone-line{width:90%!important;text-align:center!important}.editorHyperLink label{font-size:.95em;float:left;width:30%;margin-left:2%;text-align:left;color:#000;font-family:Arial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:0;padding-top:0}.editorHyperLink input[type=text]{font-size:.95em;width:60%;text-align:left;margin:0 5% 0 0;color:#318fc5;cursor:pointer;font-family:Arial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border:0;padding-top:0;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.AnswerCallImages{height:20px;margin:5px}.AnswerCallFocused{border:1px solid #939598;margin-left:0;font-family:Arial;position:relative;background-color:#fff;width:100%;-webkit-box-sizing:border-box;box-sizing:border-box}.ViewCollapseImage,.ViewExpandImage{width:20px;height:20px;float:right;cursor:pointer}.answerPhoneNumberStyle{border:0;position:relative;top:-12px;left:-38px;max-width:80px;height:15px;text-overflow:ellipsis;font-size:.85em}.callHeaderTop{border-bottom:1px solid;background-color:#f4f5fb;width:100%;margin-top:0}.statusImage{width:15px;height:15px;margin-left:10px;float:left;margin-right:5px}.statusText{float:left;margin-top:1px}.displayDiv{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex}.DurationDiv{float:right;width:17%;text-align:right;margin-right:5px}.displayLabels{margin-left:5px;width:25%;overflow:hidden;text-overflow:ellipsis}.displayData{border:0;outline:0}.callOptions{background-color:#f6f7fb;bottom:0;width:100%;text-align:center}.directionText{font-size:.8em;margin-left:2px}.phoneNumberValue{font-weight:700;font-size:1em;margin-left:5px}.durationInput{background-color:transparent;border:0;width:100%;text-align:right}.topBorder{border-top:1px solid #939598}.holdCallDurationDiv{float:left;margin-top:1px;margin-left:2px}.holdCallDurationTimer{background-color:transparent;border:0;width:100%}.verticalDivider{margin-left:2px;float:left}.callImage{height:20px}"]}]}],l.ctorParameters=function(){return[]},l.propDecorators={interaction:[{type:t.Input}],minimizedChanged:[{type:t.Output}],isAgentTyping:[{type:t.Output}],newMessage:[{type:t.Output}]};var d=(c.prototype.ngAfterViewChecked=function(){this.afterViewChecked.emit()},c.prototype.onMinimizedChanged=function(){this.minimizedChanged.emit()},c);function c(){this.minimizedChanged=new t.EventEmitter,this.isAgentTyping=new t.EventEmitter,this.newMessage=new t.EventEmitter,this.afterViewChecked=new t.EventEmitter}d.decorators=[{type:t.Component,args:[{selector:"amc-scenario",template:'<ng-container *ngIf="scenario && scenario.interactions">\n <amc-interaction *ngFor="let interaction of scenario.interactions" [interaction]="interaction"\n (minimizedChanged)="onMinimizedChanged()" (isAgentTyping)="isAgentTyping.emit($event)"\n (newMessage)="newMessage.emit($event)">\n </amc-interaction>\n</ng-container>\n',styles:["","body{padding-top:5px;padding-bottom:5px;margin:0}.login{width:20px;height:20px;display:block;margin-top:2px;margin-left:auto;margin-right:auto}.editor{font-size:.9em;text-align:left;margin:4px 5% 0 0;font-family:Arial;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;border:0;padding-top:2px;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.editor .standalone-line{width:90%!important;text-align:center!important}.editorHyperLink label{font-size:.95em;float:left;width:30%;margin-left:2%;text-align:left;color:#000;font-family:Arial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:0;padding-top:0}.editorHyperLink input[type=text]{font-size:.95em;width:60%;text-align:left;margin:0 5% 0 0;color:#318fc5;cursor:pointer;font-family:Arial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border:0;padding-top:0;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.AnswerCallImages{height:20px;margin:5px}.AnswerCallFocused{border:1px solid #939598;margin-left:0;font-family:Arial;position:relative;background-color:#fff;width:100%;-webkit-box-sizing:border-box;box-sizing:border-box}.ViewCollapseImage,.ViewExpandImage{width:20px;height:20px;float:right;cursor:pointer}.answerPhoneNumberStyle{border:0;position:relative;top:-12px;left:-38px;max-width:80px;height:15px;text-overflow:ellipsis;font-size:.85em}.callHeaderTop{border-bottom:1px solid;background-color:#f4f5fb;width:100%;margin-top:0}.statusImage{width:15px;height:15px;margin-left:10px;float:left;margin-right:5px}.statusText{float:left;margin-top:1px}.displayDiv{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex}.DurationDiv{float:right;width:17%;text-align:right;margin-right:5px}.displayLabels{margin-left:5px;width:25%;overflow:hidden;text-overflow:ellipsis}.displayData{border:0;outline:0}.callOptions{background-color:#f6f7fb;bottom:0;width:100%;text-align:center}.directionText{font-size:.8em;margin-left:2px}.phoneNumberValue{font-weight:700;font-size:1em;margin-left:5px}.durationInput{background-color:transparent;border:0;width:100%;text-align:right}.topBorder{border-top:1px solid #939598}.holdCallDurationDiv{float:left;margin-top:1px;margin-left:2px}.holdCallDurationTimer{background-color:transparent;border:0;width:100%}.verticalDivider{margin-left:2px;float:left}.callImage{height:20px}"]}]}],d.ctorParameters=function(){return[]},d.propDecorators={scenario:[{type:t.Input}],minimizedChanged:[{type:t.Output}],isAgentTyping:[{type:t.Output}],newMessage:[{type:t.Output}],afterViewChecked:[{type:t.Output}]};var g=(m.prototype.ngOnInit=function(){this.statusText&&this.callType?this.describedByText=this.statusText+" "+this.callType:this.statusText?this.describedByText=this.statusText:this.callType&&(this.describedByText=this.callType),this.callId&&(this.labelledByText=this.callId)},m.prototype.operationKeypress=function(e,t){"Enter"===e.code&&t.handler(t.operationName,t.operationMetadata)},m);function m(){this.labelledByText="",this.describedByText=""}g.decorators=[{type:t.Component,args:[{selector:"amc-operation",template:'<div class="callOptions">\n <img\n class="AnswerCallImages"\n tabindex="0"\n role="button"\n attr.aria-label="{{ operation.title }}"\n *ngFor="let operation of operations"\n [title]="operation.title"\n [src]="operation.icon"\n [attr.accesskey]="operation.accesskey || null"\n [attr.aria-labelledby]="labelledByText || null"\n [attr.aria-describedby]="describedByText || null"\n (click)="operation.handler(operation.operationName, operation.operationMetadata)"\n (keypress)="operationKeypress($event, operation)"/>\n</div>\n',styles:[".AnswerCallImages:focus{outline:#3296da solid 2px;outline-offset:1px}","body{padding-top:5px;padding-bottom:5px;margin:0}.login{width:20px;height:20px;display:block;margin-top:2px;margin-left:auto;margin-right:auto}.editor{font-size:.9em;text-align:left;margin:4px 5% 0 0;font-family:Arial;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;border:0;padding-top:2px;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.editor .standalone-line{width:90%!important;text-align:center!important}.editorHyperLink label{font-size:.95em;float:left;width:30%;margin-left:2%;text-align:left;color:#000;font-family:Arial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:0;padding-top:0}.editorHyperLink input[type=text]{font-size:.95em;width:60%;text-align:left;margin:0 5% 0 0;color:#318fc5;cursor:pointer;font-family:Arial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border:0;padding-top:0;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.AnswerCallImages{height:20px;margin:5px}.AnswerCallFocused{border:1px solid #939598;margin-left:0;font-family:Arial;position:relative;background-color:#fff;width:100%;-webkit-box-sizing:border-box;box-sizing:border-box}.ViewCollapseImage,.ViewExpandImage{width:20px;height:20px;float:right;cursor:pointer}.answerPhoneNumberStyle{border:0;position:relative;top:-12px;left:-38px;max-width:80px;height:15px;text-overflow:ellipsis;font-size:.85em}.callHeaderTop{border-bottom:1px solid;background-color:#f4f5fb;width:100%;margin-top:0}.statusImage{width:15px;height:15px;margin-left:10px;float:left;margin-right:5px}.statusText{float:left;margin-top:1px}.displayDiv{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex}.DurationDiv{float:right;width:17%;text-align:right;margin-right:5px}.displayLabels{margin-left:5px;width:25%;overflow:hidden;text-overflow:ellipsis}.displayData{border:0;outline:0}.callOptions{background-color:#f6f7fb;bottom:0;width:100%;text-align:center}.directionText{font-size:.8em;margin-left:2px}.phoneNumberValue{font-weight:700;font-size:1em;margin-left:5px}.durationInput{background-color:transparent;border:0;width:100%;text-align:right}.topBorder{border-top:1px solid #939598}.holdCallDurationDiv{float:left;margin-top:1px;margin-left:2px}.holdCallDurationTimer{background-color:transparent;border:0;width:100%}.verticalDivider{margin-left:2px;float:left}.callImage{height:20px}"]}]}],g.ctorParameters=function(){return[]},g.propDecorators={statusText:[{type:t.Input}],callId:[{type:t.Input}],callType:[{type:t.Input}],operations:[{type:t.Input}]};var h={AGENT:"AGENT",OTHER_PERSON:"OTHER_PERSON",INFORMATION:"INFORMATION"},f=function(e,t,i,o,n){var a=this;this.displayOperation=function(){a.displayKey=a.key,a.displayValue=a.value},this.key=e,this.value=t,this.visible=null==i||i,this.displayValueType=null!=o?o:b.STRING,this.customOperations=n,this.displayOperation()},b={STRING:0,COUNTER:1};function x(e){e=Number(e);var t=Math.floor(e/3600),i=Math.floor(e%3600/60),e=Math.floor(e%3600%60);return(0<t?t.toString()+":":"")+(0<i?("0"+i.toString()).slice(-2)+":":"00:")+(0<e?("0"+e.toString()).slice(-2):"00")}b[b.STRING]="STRING",b[b.COUNTER]="COUNTER";var u=(y.prototype.ngOnInit=function(){this.statusText&&this.callType?this.labelledByText=this.statusText+" "+this.callType:this.statusText?this.labelledByText=this.statusText:this.callType&&(this.labelledByText=this.callType),this.callType&&this.callId?this.title=this.callType+" "+this.callId:this.callType?this.title=this.callType:this.callId&&(this.title=this.callId),this.initValues()},y.prototype.initValues=function(){this.property.displayValueType===b.COUNTER?this.startCallCounter():this.processedDisplayValue=this.property.displayValue},y.prototype.startCallCounter=function(){var i=this;null==this._timerId&&(this._timerId=window.setInterval(function(){var e=i.property.displayValue,t=(new Date).getTime()/1e3,e=Math.floor(t-e/1e3);i.processedDisplayValue=x(e)},1e3))},y.prototype.ngOnDestroy=function(){this.property.displayValueType===b.COUNTER&&null!=this._timerId&&(clearInterval(this._timerId),this._timerId=null)},y);function y(){this.labelledByText="",this.title="",this._timerId=null,this.processedDisplayValue=""}u.decorators=[{type:t.Component,args:[{selector:"amc-property",template:'<input\n readonly\n *ngIf="!property.customOperations"\n class="displayData"\n tabindex="0"\n type="text"\n [name]="processedDisplayValue"\n [title]="title || null"\n [attr.aria-labelledby]="labelledByText || null"\n [value]="processedDisplayValue"/>\n\n <input\n readonly\n *ngIf="property.customOperations"\n class="cursor displayData"\n type="text"\n tabindex="0"\n [name]="processedDisplayValue"\n [title]="title || null"\n [value]="processedDisplayValue"\n [attr.aria-labelledby]="labelledByText || null"\n (click)="property.customOperations.handler(property.customOperations.eventName, property.customOperations.eventMetadata)" />\n',styles:["input{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;border:0}","body{padding-top:5px;padding-bottom:5px;margin:0}.login{width:20px;height:20px;display:block;margin-top:2px;margin-left:auto;margin-right:auto}.editor{font-size:.9em;text-align:left;margin:4px 5% 0 0;font-family:Arial;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;border:0;padding-top:2px;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.editor .standalone-line{width:90%!important;text-align:center!important}.editorHyperLink label{font-size:.95em;float:left;width:30%;margin-left:2%;text-align:left;color:#000;font-family:Arial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:0;padding-top:0}.editorHyperLink input[type=text]{font-size:.95em;width:60%;text-align:left;margin:0 5% 0 0;color:#318fc5;cursor:pointer;font-family:Arial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border:0;padding-top:0;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.AnswerCallImages{height:20px;margin:5px}.AnswerCallFocused{border:1px solid #939598;margin-left:0;font-family:Arial;position:relative;background-color:#fff;width:100%;-webkit-box-sizing:border-box;box-sizing:border-box}.ViewCollapseImage,.ViewExpandImage{width:20px;height:20px;float:right;cursor:pointer}.answerPhoneNumberStyle{border:0;position:relative;top:-12px;left:-38px;max-width:80px;height:15px;text-overflow:ellipsis;font-size:.85em}.callHeaderTop{border-bottom:1px solid;background-color:#f4f5fb;width:100%;margin-top:0}.statusImage{width:15px;height:15px;margin-left:10px;float:left;margin-right:5px}.statusText{float:left;margin-top:1px}.displayDiv{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex}.DurationDiv{float:right;width:17%;text-align:right;margin-right:5px}.displayLabels{margin-left:5px;width:25%;overflow:hidden;text-overflow:ellipsis}.displayData{border:0;outline:0}.callOptions{background-color:#f6f7fb;bottom:0;width:100%;text-align:center}.directionText{font-size:.8em;margin-left:2px}.phoneNumberValue{font-weight:700;font-size:1em;margin-left:5px}.durationInput{background-color:transparent;border:0;width:100%;text-align:right}.topBorder{border-top:1px solid #939598}.holdCallDurationDiv{float:left;margin-top:1px;margin-left:2px}.holdCallDurationTimer{background-color:transparent;border:0;width:100%}.verticalDivider{margin-left:2px;float:left}.callImage{height:20px}"]}]}],u.ctorParameters=function(){return[]},u.propDecorators={statusText:[{type:t.Input}],callId:[{type:t.Input}],callType:[{type:t.Input}],property:[{type:t.Input}]};var w=(v.prototype.ngOnInit=function(){this.statusText&&this.callId?this.labelledByText=this.statusText+" "+this.callId:this.statusText?this.labelledByText=this.statusText:this.callId&&(this.labelledByText=this.callId),this.startCallCounter()},v.prototype.startCallCounter=function(){var t=this,i=this.CaculatePastHoldDuration();null==this._timerId&&(this._timerId=window.setInterval(function(){var e=(new Date).getTime()/1e3,e=Math.floor(e-t.holdCounterData.currentHoldStartTime/1e3);t.displayTime=x(e)+"/"+x(i+e)},1e3))},v.prototype.CaculatePastHoldDuration=function(){var t=0;return this.holdCounterData.pastCallDurations&&this.holdCounterData.pastCallDurations.forEach(function(e){t+=(e.endTime-e.startTime)/1e3}),t},v.prototype.ngOnDestroy=function(){null!=this._timerId&&(clearInterval(this._timerId),this._timerId=null)},v);function v(){this.labelledByText="",this.displayTime="00:00/00:00"}w.decorators=[{type:t.Component,args:[{selector:"amc-holdtimer",template:'<div class="holdCallDurationDiv">\n <input\n readonly\n class="holdCallDurationTimer"\n name="HoldCallDuration/TotalHoldCallDuration"\n type="text"\n tabindex="-1"\n title="Hold Duration"\n [attr.aria-labelledby]="labelledByText || null"\n [value]="displayTime">\n</div>\n',styles:[".holdCallDurationTimer:focus{outline-style:none}","body{padding-top:5px;padding-bottom:5px;margin:0}.login{width:20px;height:20px;display:block;margin-top:2px;margin-left:auto;margin-right:auto}.editor{font-size:.9em;text-align:left;margin:4px 5% 0 0;font-family:Arial;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;border:0;padding-top:2px;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.editor .standalone-line{width:90%!important;text-align:center!important}.editorHyperLink label{font-size:.95em;float:left;width:30%;margin-left:2%;text-align:left;color:#000;font-family:Arial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:0;padding-top:0}.editorHyperLink input[type=text]{font-size:.95em;width:60%;text-align:left;margin:0 5% 0 0;color:#318fc5;cursor:pointer;font-family:Arial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border:0;padding-top:0;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.AnswerCallImages{height:20px;margin:5px}.AnswerCallFocused{border:1px solid #939598;margin-left:0;font-family:Arial;position:relative;background-color:#fff;width:100%;-webkit-box-sizing:border-box;box-sizing:border-box}.ViewCollapseImage,.ViewExpandImage{width:20px;height:20px;float:right;cursor:pointer}.answerPhoneNumberStyle{border:0;position:relative;top:-12px;left:-38px;max-width:80px;height:15px;text-overflow:ellipsis;font-size:.85em}.callHeaderTop{border-bottom:1px solid;background-color:#f4f5fb;width:100%;margin-top:0}.statusImage{width:15px;height:15px;margin-left:10px;float:left;margin-right:5px}.statusText{float:left;margin-top:1px}.displayDiv{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex}.DurationDiv{float:right;width:17%;text-align:right;margin-right:5px}.displayLabels{margin-left:5px;width:25%;overflow:hidden;text-overflow:ellipsis}.displayData{border:0;outline:0}.callOptions{background-color:#f6f7fb;bottom:0;width:100%;text-align:center}.directionText{font-size:.8em;margin-left:2px}.phoneNumberValue{font-weight:700;font-size:1em;margin-left:5px}.durationInput{background-color:transparent;border:0;width:100%;text-align:right}.topBorder{border-top:1px solid #939598}.holdCallDurationDiv{float:left;margin-top:1px;margin-left:2px}.holdCallDurationTimer{background-color:transparent;border:0;width:100%}.verticalDivider{margin-left:2px;float:left}.callImage{height:20px}"]}]}],w.ctorParameters=function(){return[]},w.propDecorators={holdCounterData:[{type:t.Input}],statusText:[{type:t.Input}],callId:[{type:t.Input}]};var I=(T.prototype.ngOnInit=function(){this.statusText&&this.callId?this.labelledByText=this.statusText+" "+this.callId:this.statusText?this.labelledByText=this.statusText:this.callId&&(this.labelledByText=this.callId),this.startCallCounter()},T.prototype.startCallCounter=function(){var i=this;null==this._timerId&&(this._timerId=window.setInterval(function(){var e=i.startTime,t=(new Date).getTime()/1e3,e=Math.floor(t-e/1e3);i.displayTime=Math.floor(e/60)+":"+("0"+e%60).slice(-2)},1e3))},T.prototype.ngOnDestroy=function(){null!=this._timerId&&(clearInterval(this._timerId),this._timerId=null)},T);function T(){this.labelledByText="",this.displayTime="00:00/00:00"}I.decorators=[{type:t.Component,args:[{selector:"amc-duration",template:'<div class="holdCallDurationDiv">\n <input\n readonly\n class="block durationInput"\n name="CallDuration"\n type="text"\n tabindex="-1"\n title="Call Duration"\n [value]="displayTime"\n [attr.aria-labelledby]="labelledByText || null">\n</div>\n',styles:[".durationInput:focus{outline-style:none}","body{padding-top:5px;padding-bottom:5px;margin:0}.login{width:20px;height:20px;display:block;margin-top:2px;margin-left:auto;margin-right:auto}.editor{font-size:.9em;text-align:left;margin:4px 5% 0 0;font-family:Arial;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;border:0;padding-top:2px;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.editor .standalone-line{width:90%!important;text-align:center!important}.editorHyperLink label{font-size:.95em;float:left;width:30%;margin-left:2%;text-align:left;color:#000;font-family:Arial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:0;padding-top:0}.editorHyperLink input[type=text]{font-size:.95em;width:60%;text-align:left;margin:0 5% 0 0;color:#318fc5;cursor:pointer;font-family:Arial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border:0;padding-top:0;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.AnswerCallImages{height:20px;margin:5px}.AnswerCallFocused{border:1px solid #939598;margin-left:0;font-family:Arial;position:relative;background-color:#fff;width:100%;-webkit-box-sizing:border-box;box-sizing:border-box}.ViewCollapseImage,.ViewExpandImage{width:20px;height:20px;float:right;cursor:pointer}.answerPhoneNumberStyle{border:0;position:relative;top:-12px;left:-38px;max-width:80px;height:15px;text-overflow:ellipsis;font-size:.85em}.callHeaderTop{border-bottom:1px solid;background-color:#f4f5fb;width:100%;margin-top:0}.statusImage{width:15px;height:15px;margin-left:10px;float:left;margin-right:5px}.statusText{float:left;margin-top:1px}.displayDiv{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex}.DurationDiv{float:right;width:17%;text-align:right;margin-right:5px}.displayLabels{margin-left:5px;width:25%;overflow:hidden;text-overflow:ellipsis}.displayData{border:0;outline:0}.callOptions{background-color:#f6f7fb;bottom:0;width:100%;text-align:center}.directionText{font-size:.8em;margin-left:2px}.phoneNumberValue{font-weight:700;font-size:1em;margin-left:5px}.durationInput{background-color:transparent;border:0;width:100%;text-align:right}.topBorder{border-top:1px solid #939598}.holdCallDurationDiv{float:left;margin-top:1px;margin-left:2px}.holdCallDurationTimer{background-color:transparent;border:0;width:100%}.verticalDivider{margin-left:2px;float:left}.callImage{height:20px}"]}]}],I.ctorParameters=function(){return[]},I.propDecorators={statusText:[{type:t.Input}],callId:[{type:t.Input}],startTime:[{type:t.Input}]};var k=(D.prototype.ngAfterViewChecked=function(){this.lastCount!==this.messages.length&&(this.lastCount=this.messages.length,this.scrollToBottom())},D.prototype.getColor=function(e){return e.type&&e.type===h.AGENT?this.agentColor:e.username?(this.usernameToColor[e.username]||(this.usernameToColor[e.username]=this.colors[this.colorsIndex],this.colorsIndex=(this.colorsIndex+1)%this.colors.length),this.usernameToColor[e.username]):this.colors[0]},D.prototype.shouldAlignRight=function(e){return e.type&&e.type===h.AGENT},D.prototype.sendNewMessage=function(){this.newMessageText&&(this.newMessage.emit(this.newMessageText),this.newMessageText="")},D.prototype.onNewMessageFocus=function(e){e=e&&0<this.newMessageText.length;e!==this._isAgentTyping&&(this._isAgentTyping=e,this.isAgentTyping.emit(e))},D.prototype.onKeyup=function(){var e=0<this.newMessageText.length;e!==this._isAgentTyping&&(this._isAgentTyping=e,this.isAgentTyping.emit(e))},D.prototype.scrollToBottom=function(){try{this.messagesContainer.nativeElement.scrollTop=this.messagesContainer.nativeElement.scrollHeight}catch(e){}},D);function D(){this.isTyping=!1,this.lastCount=-1,this._isAgentTyping=!1,this.isAgentTyping=new t.EventEmitter,this.newMessage=new t.EventEmitter,this.newMessageText="",this.usernameToColor={},this.colors=["#81c784","#ffab91","#f48fb1","#29b6f6","#e1bee7","#9ccc65","#ffc107","#26c6da","#cddc39"],this.colorsIndex=0,this.agentColor="#29b6f6"}k.decorators=[{type:t.Component,args:[{selector:"app-chat-box",template:'<div class="chat-box">\n <div #MessagesContainer class="messages" [style.max-height]=\'settings.maxHeight\'>\n <ng-container *ngFor="let message of messages">\n <app-chat-message [alignRight]="shouldAlignRight(message)" [message]="message.text" [username]="message.username"\n [timestamp]="message.timestamp" [image]="message.userIcon" [fallbackImage]="settings.fallbackUserIcon" [color]="getColor(message)">\n </app-chat-message>\n </ng-container>\n\n <div *ngIf="isTyping" class="typing-indicator">\n Someone is typing\n <span></span>\n <span></span>\n <span></span>\n </div>\n </div>\n\n <div class="new-message">\n <input #NewMessageText [(ngModel)]="newMessageText" type="text" placeholder="Type a message" (focus)="onNewMessageFocus(true)"\n (blur)="onNewMessageFocus(false)" (keydown.enter)="sendNewMessage()" (keyup)=\'onKeyup()\' [disabled]="settings.disableSendMessage">\n <input type="image" [src]="settings.sendImage" (click)="sendNewMessage()" [disabled]="settings.disableSendMessage">\n </div>\n</div>\n',styles:[".chat-box{background-color:#eceff1}.messages{padding:5px;overflow:auto;min-height:50px}.new-message{border-top:1px solid #000;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-line-pack:center;align-content:center;height:25px}.new-message input[type=text]{-webkit-box-flex:1;-ms-flex:1 1 0px;flex:1 1 0;background-color:#eceff1;border:none;min-width:0}.new-message input[type=image]{position:relative;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);height:20px;cursor:pointer}.new-message input[type=image]:disabled{opacity:.5;cursor:auto}.new-message input:focus{outline:0}.typing-indicator{font-size:1em;font-style:italic}.typing-indicator span{display:inline-block;height:10px;width:10px;border-radius:50%;background-color:#9e9e9e;margin:0 1px;opacity:.2}.typing-indicator span:nth-of-type(1){-webkit-animation:1.5s .33333s infinite blink;animation:1.5s .33333s infinite blink}.typing-indicator span:nth-of-type(2){-webkit-animation:1.5s .66666s infinite blink;animation:1.5s .66666s infinite blink}.typing-indicator span:nth-of-type(3){-webkit-animation:1.5s .99999s infinite blink;animation:1.5s .99999s infinite blink}@-webkit-keyframes blink{50%{opacity:1}}@keyframes blink{50%{opacity:1}}"]}]}],k.ctorParameters=function(){return[]},k.propDecorators={settings:[{type:t.Input}],isTyping:[{type:t.Input}],messages:[{type:t.Input}],isAgentTyping:[{type:t.Output}],newMessage:[{type:t.Output}],messagesContainer:[{type:t.ViewChild,args:["MessagesContainer"]}]};var C=(z.prototype.ngOnInit=function(){},z);function z(){this.alignRight=!1}C.decorators=[{type:t.Component,args:[{selector:"app-chat-message",template:'<div [class]="alignRight? \'message right-message\' : \'message left-message\'">\n <div class="message-header">\n <img *ngIf="image" class="image" [src]="image" (error)="image = fallbackImage" [style.border-color]="color" />\n <span *ngIf="username" class="username">{{username}}</span>\n <span *ngIf="timestamp" class="timestamp">{{timestamp}}</span>\n </div>\n\n <div class="message-body-container">\n <div>\n <div class="message-body" [style.background-color]="color" [style.border-color]="color">\n <span [innerHTML]="message"></span>\n </div>\n </div>\n </div>\n</div>\n',styles:[':host{display:block;margin-top:2px;margin-bottom:2px}.right-message{text-align:end}.message-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-text-emphasis:none;text-emphasis:none;font-style:italic;font-size:.7em;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:.5em}.message-header .image{height:30px;border-radius:50%;border:2px solid red}.message-header .username{font-weight:700}.right-message>.message-header{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;margin-right:1px}.right-message>.message-header .image,.right-message>.message-header .username{margin-left:5px}.left-message>.message-header{margin-left:1px}.left-message>.message-header .image,.left-message>.message-header .username{margin-right:5px}.message-body-container{display:-webkit-box;display:-ms-flexbox;display:flex}.right-message>.message-body-container{-webkit-box-orient:horizontal;-webkit-box-direction:reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse}.message-body{display:inline-block;position:relative;border-radius:.4em;padding:3px;font-style:normal;font-size:1em;text-align:start;min-width:2em;overflow-wrap:break-word;word-wrap:break-word;-ms-word-break:break-all;word-break:break-all;word-break:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto}.left-message .message-body:after{content:"";position:absolute;left:.8em;top:-.4em;border-bottom:.4em solid #000;border-bottom-color:inherit;border-left:.4em solid transparent;border-right:.4em solid transparent}.right-message .message-body:after{content:"";position:absolute;right:.8em;top:-.4em;border-bottom:.4em solid #000;border-bottom-color:inherit;border-left:.4em solid transparent;border-right:.4em solid transparent}']}]}],C.ctorParameters=function(){return[]},C.propDecorators={message:[{type:t.Input}],alignRight:[{type:t.Input}],username:[{type:t.Input}],color:[{type:t.Input}],timestamp:[{type:t.Input}],image:[{type:t.Input}],fallbackImage:[{type:t.Input}]};var A=(O.prototype.ngOnInit=function(){var e,t;try{for(var i=s(this.disposition.dispositionMetadata),o=i.next();!o.done;o=i.next()){var n=o.value;if("callId"===n.key){this.dispositionName="disposition_"+n.value;break}}}catch(a){e={error:a}}finally{try{o&&!o.done&&(t=i["return"])&&t.call(i)}finally{if(e)throw e.error}}this.disposition.checkedDisposition&&(this.selectedDispositionValue=this.disposition.checkedDisposition)},O.prototype.submitDisposition=function(){var e={dispositionId:this.selectedDispositionValue,dispositionName:this.disposition.disposition.get(this.selectedDispositionValue),dispositionMetadata:this.disposition.dispositionMetadata};this.dispositionEmitter.emit(e)},O.prototype.selectAndSubmitDisposition=function(e,t){"Enter"===e.code&&(this.selectedDispositionValue=t,this.submitDisposition())},O);function O(){this.dispositionEmitter=new t.EventEmitter,this.selectedDispositionValue="",this.dispositionName=""}A.decorators=[{type:t.Component,args:[{selector:"amc-disposition",template:'<div class="disposition-container">\n <div class="header-container">\n <label class="disposition-header" attr.aria-label="set disposition">{{disposition.dispositionHeader}}</label>\n </div>\n\n <div class="dispositions-container">\n <div class="disposition" *ngFor="let disp of disposition.disposition | keyvalue; let i = index">\n <label\n class="disposition-label"\n tabindex="0"\n [id]="disp.key"\n [ngClass]="{\'disposition-label-selected\' : selectedDispositionValue === disp.key, \'first-disposition\': i === 0}"\n (keypress)="selectAndSubmitDisposition($event, disp.key)">\n\n <input\n class="disposition-input"\n type="radio"\n value="{{disp.key}}"\n tabindex="-1"\n attr.aria-label="{{disp.value}}"\n [required]="!selectedDispositionValue"\n [name]="dispositionName"\n (change)="submitDisposition()"\n [(ngModel)]="selectedDispositionValue">\n\n {{disp.value}}\n </label>\n </div>\n </div>\n</div>\n',styles:[".disposition-container{border:1px solid #939598;white-space:nowrap;font-family:Arial;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;text-overflow:ellipsis;position:relative;font-size:.9em;max-height:180px;overflow-x:hidden;overflow-y:hidden}.header-container{border-bottom:1px solid #939598;background-color:#f4f5fb;width:100%;white-space:nowrap;height:28px;position:sticky;overflow-x:hidden;overflow-y:hidden}.disposition-header{margin-top:auto;margin-left:7px;padding:5px;white-space:nowrap;text-overflow:ellipsis;font-weight:700;font-size:.9em;font-family:Arial;overflow-x:hidden}.disposition{margin-left:5px;padding-left:5px;white-space:nowrap}.disposition-label{text-overflow:ellipsis;font-weight:400;white-space:nowrap;font-size:.9em;overflow-x:hidden}.disposition-label-selected{text-overflow:ellipsis;font-weight:700;white-space:nowrap;font-size:.9em}.dispositions-container{padding:3px;overflow-y:scroll;max-height:150px}.disposition-label:focus{outline:#3296da solid 2px;outline-offset:5px}.first-disposition{margin-top:5px}"]}]}],A.ctorParameters=function(){return[]},A.propDecorators={disposition:[{type:t.Input}],dispositionEmitter:[{type:t.Output}]};var E=(N.prototype.ngOnInit=function(){},N.prototype.onNameSelectChange=function(e){this.activity.WhoObject=this.getWho(e.currentTarget.value),this.OnNameSelectChange.emit(this.activity)},N.prototype.parseWhoObject=function(e){return e.objectType+": "+e.objectName},N.prototype.parseWhatObject=function(e){return e.objectType+": "+e.objectName},N.prototype.onRelatedToChange=function(e){this.activity.WhatObject=this.getWhat(e.currentTarget.value),this.OnRelatedToChange.emit(this.activity)},N.prototype.onSubjectChange=function(e){this.activity.Subject=e.srcElement.value,this.OnSubjectChange.emit(this.activity)},N.prototype.onCallNotesChange=function(e){this.activity.Subject=e.srcElement.value.trim(),this.OnCallNotesChange.emit(this.activity)},N.prototype.getWho=function(e){for(var t=0;t<this.activity.whoList.length;t++)if(this.activity.whoList[t].objectId===e)return this.activity.whoList[t]},N.prototype.getWhat=function(e){for(var t=0;t<this.activity.whatList.length;t++)if(this.activity.whatList[t].objectId===e)return this.activity.whatList[t]},N.prototype.loadQuickComment=function(e){this.activity.Description=this.activity.Description+this.activity.quickCommentList[e]},N.prototype.activitySave=function(e){this.ActivitySave.emit(this.activity)},N);function N(){this.ActivitySave=new t.EventEmitter,this.OnNameSelectChange=new t.EventEmitter,this.OnRelatedToChange=new t.EventEmitter,this.OnSubjectChange=new t.EventEmitter,this.OnCallNotesChange=new t.EventEmitter,this.isActivityMaximized=!0}E.decorators=[{type:t.Component,args:[{selector:"app-activity",template:'<div *ngIf="isActivityMaximized" class="callDisplay">\n <div class="editor callHeader">\n <label class="headerLabel">\n <b>Activity Information</b>\n </label>\n <img class="ViewResizeImage" src="/assets/images/section_collapse.png" (click)="isActivityMaximized = false" title="Collapse">\n </div>\n <div class="callBody">\n <div class="activityFields">\n <form>\n <div class="editor displayDiv">\n <label class="displayLabels" title="Call From">{{activity.NameFieldName}}</label>\n <select class="dropDownListStyle displayData" data-resetperactivity="false" (change)="onNameSelectChange($event)">\n <option *ngFor="let who of activity.whoList" value="{{who.objectId}}">{{parseWhoObject(who)}}</option>\n </select>\n </div>\n <div class="editor displayDiv">\n <label class="displayLabels" title="Related To">{{activity.RelatedToFieldName}}</label>\n <select class="dropDownListStyle displayData" (change)="onRelatedToChange($event)" data-resetperactivity="false">\n <option *ngFor="let what of activity.whatList" value="{{what.objectId}}">{{parseWhatObject(what)}}</option>\n </select>\n </div>\n <div class="editor displayDiv">\n <label class="displayLabels" title="Subject">{{activity.SubjectFieldName}}</label>\n <input class="activitySubjectTextBoxStyle displayData" (change)="onSubjectChange($event)" title="{{activity.Subject}}"\n type="text" value="{{activity.Subject}}">\n </div>\n <div class="editor displayDiv">\n <div class="callNotesContainer">\n <div class="textAreaDiv">\n <textarea value="{{activity.Description}}" placeholder="Click to add a comment" class="activityCommentsTextBoxStyle"\n (change)="onCallNotesChange($event)" cols="20" rows="2" title=""></textarea>\n </div>\n <div class="notesButtonBorder">\n <div class="commentsButtonDiv">\n <div class="quickCommentsDiv">\n <input *ngFor="let quickComment of activity.quickCommentList ; let i = index;" class="quickNotesBotton" type="button"\n value="{{i+1}}" (click)="loadQuickComment(i)" title="{{quickComment}}">\n </div>\n <div class="submitDiv">\n <input class="submitButton" type="button" value="Submit" (click)="activitySave(false)">\n </div>\n </div>\n </div>\n </div>\n </div>\n </form>\n </div>\n </div>\n</div>\n<div *ngIf="!isActivityMaximized" class="callDisplay">\n <div class="editor callHeader">\n <label class="headerLabel">\n <b>Activity Information</b>\n </label>\n <img class="ViewResizeImage" src="assets/images/section_expand.png" (click)="isActivityMaximized = true" title="Expand">\n </div>\n',styles:[".callDisplay{display:grid;margin-bottom:8px;background-color:#fff}.editor{font-size:.9em;width:70%;text-align:left;margin:4px 5% 0 0;font-family:Arial;white-space:nowrap;text-overflow:ellipsis;border:0;padding-top:2px;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.callHeader{background-color:#f4f5fb!important;width:100%!important;margin-top:0!important}.headerLabel{margin-left:10px}.ViewResizeImage{width:20px;height:20px;float:right;cursor:pointer}.callBody{border-top:0;position:relative}.displayDiv{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex}.displayLabels{margin-left:5px;width:25%;margin-right:2px}.displayData{width:70%}.dropDownListStyle{border:1px solid #939598!important;border-radius:3px!important;width:71%!important;height:20px!important;text-align:left!important;white-space:nowrap!important;text-overflow:ellipsis!important;margin:0 5px 0 0;cursor:pointer}.activitySubjectTextBoxStyle{border:1px solid #939598!important;border-radius:3px!important;width:71%!important;height:20px!important;text-align:left!important;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;margin:0 5px 0 0;padding-left:2px}.activityCommentsTextBoxStyle{border:none;color:#333!important;text-align:left!important;margin:0;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;resize:none;width:100%;height:95px}.notesButtonBorder{background-color:#fff;border-left:1px solid #939598;border-bottom:1px solid #939598;border-right:1px solid #939598;border-bottom-left-radius:3px!important;border-bottom-right-radius:3px!important;height:auto}.commentsButtonDiv{width:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.quickNotesBotton{background-color:#1e72ba;border:0;color:#fff;height:70%;width:20px;margin:2px;outline:0;font-size:70%}.quickCommentsDiv{text-align:left;-webkit-box-flex:1;-ms-flex:1 0 0px;flex:1 0 0;-ms-flex-wrap:wrap;flex-wrap:wrap;display:-webkit-box;display:-ms-flexbox;display:flex;margin:2px}.submitDiv{text-align:right;padding-right:4px}.submitButton{border:0;float:right;margin-top:2px;outline:0;cursor:pointer;background-color:#6cb047;color:#fff;border-radius:4px;font-size:98%;margin-bottom:2px}"]}]}],E.ctorParameters=function(){return[]},E.propDecorators={activity:[{type:t.Input}],ActivitySave:[{type:t.Output}],OnNameSelectChange:[{type:t.Output}],OnRelatedToChange:[{type:t.Output}],OnSubjectChange:[{type:t.Output}],OnCallNotesChange:[{type:t.Output}]};var H=(M.prototype.ngOnInit=function(){var e,t;this.loginData.header||(this.loginData.header="Login");try{for(var i=s(this.loginData.fields),o=i.next();!o.done;o=i.next()){var n=o.value;n.isInvalid||(n.isInvalid=!1)}}catch(a){e={error:a}}finally{try{o&&!o.done&&(t=i["return"])&&t.call(i)}finally{if(e)throw e.error}}},M.prototype.onLogin=function(e){var t,i;try{for(var o=s(this.loginData.fields),n=o.next();!n.done;n=o.next()){var a=n.value;a.value=e.value[a.name]}}catch(r){t={error:r}}finally{try{n&&!n.done&&(i=o["return"])&&i.call(o)}finally{if(t)throw t.error}}this.loginDetailsProvided.emit(this.loginData)},M.prototype.focusOutOfInput=function(e,t){e.controls[t.name].valid||(t.isInvalid=!0)},M);function M(){this.loginDetailsProvided=new t.EventEmitter}H.decorators=[{type:t.Component,args:[{selector:"amc-login",template:'<div class="login-container">\n <form (ngSubmit)="onLogin(loginForm)"class="login-form" id="login-form" #loginForm="ngForm">\n <div class="header-container">\n <label class="login-header" attr.aria-label="login">{{ loginData.header }}</label>\n </div>\n <div class="fields-container">\n <div *ngFor="let field of loginData.fields" class="field">\n <label class="field-label">\n {{ field.name }}:\n </label>\n\n <input\n ngModel\n class="field-input"\n attr.aria-label="{{ field.name }}"\n [name]="field.name"\n [type]="field.type"\n [value]="field.value"\n [placeholder]="field.placeholder || \'\'"\n [required]="field.isRequired || false"\n (focusout)="focusOutOfInput(loginForm, field)"/>\n\n <p class="invalid-input" *ngIf="field.isInvalid">{{ field.invalidMessage }}</p>\n </div>\n\n <button\n type="submit"\n class="form-submit"\n form="login-form"\n tabindex="0"\n attr.aria-label="send"\n [disabled]="!loginForm.valid">Login</button>\n </div>\n\n </form>\n</div>\n',styles:[".login-container{border:1px solid #939598;white-space:nowrap;font-family:Arial;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;text-overflow:ellipsis;position:relative;font-size:.9em;max-height:200px;overflow-x:hidden;overflow-y:hidden}.header-container{border-bottom:1px solid #939598;background-color:#f4f5fb;width:100%;height:28px;position:sticky}.login-header{margin-top:auto;margin-left:7px;padding:5px;font-weight:700;font-size:.9em}.fields-container{overflow-y:auto;max-height:160px;font-size:.9em;padding:5px}.field{display:table-row;margin:5px}.field-label{padding:10px;display:table-cell}.field-input{display:table-cell;border:1px solid #939598;border-radius:5px}.field-input:focus{-webkit-box-shadow:0 0 5px #38badf;box-shadow:0 0 5px #38badf}.form-submit{margin:15px 10px 10px;display:table-row;border:1px solid #00a4b0;border-radius:5px;background-color:#00a4b0;color:#f7f7f7;width:10em;height:2em;-webkit-transition:.2s;transition:.2s;font-size:1.1em;position:relative;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.form-submit:hover{background-color:#01858f}.form-submit:disabled{background-color:silver;border-color:silver;color:#fff}input.ng-invalid.ng-touched[required]{border-color:#a94442}.form-submit:focus{outline:#3296da solid 2px;outline-offset:5px}.invalid-input{margin:0;padding:0;color:#a94442;font-size:x-small}"]}]}],H.ctorParameters=function(){return[]},H.propDecorators={loginData:[{type:t.Input}],loginDetailsProvided:[{type:t.Output}]};var S=(V.prototype.ngDoBootstrap=function(e){var t;customElements.get("amc-webcomponents-scenario")||(t=new r.ElementZoneStrategyFactory(d,this.injector),customElements.define("amc-webcomponents-scenario",n.createCustomElement(d,{injector:this.injector,strategyFactory:t}))),customElements.get("amc-webcomponents-disposition")||(t=new r.ElementZoneStrategyFactory(A,this.injector),customElements.define("amc-webcomponents-disposition",n.createCustomElement(A,{injector:this.injector,strategyFactory:t}))),customElements.get("amc-webcomponents-login")||(t=new r.ElementZoneStrategyFactory(H,this.injector),customElements.define("amc-webcomponents-disposition",n.createCustomElement(H,{injector:this.injector,strategyFactory:t})))},V);function V(e){this.injector=e}S.decorators=[{type:t.NgModule,args:[{imports:[a.BrowserModule,i.CommonModule,o.FormsModule],declarations:[l,d,g,u,w,I,k,C,A,E,H],entryComponents:[d,A,H],bootstrap:[],exports:[d,A,H]}]}],S.ctorParameters=function(){return[{type:t.Injector}]},e.UILibraryModule=S,e.Property=f,e.ValueType=b,e.IChatMessageType=h,e.ɵj=E,e.ɵg=k,e.ɵh=C,e.ɵi=A,e.ɵf=I,e.ɵe=w,e.ɵa=l,e.ɵk=H,e.ɵc=g,e.ɵd=u,e.ɵb=d,Object.defineProperty(e,"__esModule",{value:!0})});
2
- //# sourceMappingURL=amc-technology-ui-library.umd.min.js.map
1
+ !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@angular/core"),require("@angular/common"),require("@angular/forms"),require("@angular/elements"),require("@angular/platform-browser"),require("elements-zone-strategy")):"function"==typeof define&&define.amd?define("@amc-technology/ui-library",["exports","@angular/core","@angular/common","@angular/forms","@angular/elements","@angular/platform-browser","elements-zone-strategy"],e):e(((t=t||self)["amc-technology"]=t["amc-technology"]||{},t["amc-technology"]["ui-library"]={}),t.ng.core,t.ng.common,t.ng.forms,t.ng.elements,t.ng.platformBrowser,t.elementsZoneStrategy)}(this,(function(t,e,i,o,n,r,a){"use strict";
2
+ /*! *****************************************************************************
3
+ Copyright (c) Microsoft Corporation.
4
+
5
+ Permission to use, copy, modify, and/or distribute this software for any
6
+ purpose with or without fee is hereby granted.
7
+
8
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
9
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
10
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
11
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
12
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
13
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14
+ PERFORMANCE OF THIS SOFTWARE.
15
+ ***************************************************************************** */function l(t,e,i,o){var n,r=arguments.length,a=r<3?e:null===o?o=Object.getOwnPropertyDescriptor(e,i):o;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,i,o);else for(var l=t.length-1;l>=0;l--)(n=t[l])&&(a=(r<3?n(a):r>3?n(e,i,a):n(e,i))||a);return r>3&&a&&Object.defineProperty(e,i,a),a}function s(t){var e="function"==typeof Symbol&&Symbol.iterator,i=e&&t[e],o=0;if(i)return i.call(t);if(t&&"number"==typeof t.length)return{next:function(){return t&&o>=t.length&&(t=void 0),{value:t&&t[o++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}var p,d=function(){function t(){this.minimizedChanged=new e.EventEmitter,this.isAgentTyping=new e.EventEmitter,this.newMessage=new e.EventEmitter,this._minimized=!1}return Object.defineProperty(t.prototype,"_minimized",{get:function(){return this.minimized},set:function(t){this.minimized=t,this.minimizedChanged.emit(t)},enumerable:!0,configurable:!0}),t.prototype.ngOnInit=function(){},t.prototype.minimize=function(){this._minimized=!0},t.prototype.maximize=function(){this._minimized=!1},t.prototype.isConferenceCall=function(){return!!(this.interaction.parties&&this.interaction.parties.length>1)},t.prototype.collapseKeypress=function(t){"Enter"===t.code&&this.minimize()},t.prototype.expandKeypress=function(t){"Enter"===t.code&&this.maximize()},l([e.Input()],t.prototype,"interaction",void 0),l([e.Output()],t.prototype,"minimizedChanged",void 0),l([e.Output()],t.prototype,"isAgentTyping",void 0),l([e.Output()],t.prototype,"newMessage",void 0),t=l([e.Component({selector:"amc-interaction",template:'<div class="AnswerCallFocused">\r\n <div class="editor callHeaderTop">\r\n <img class="statusImage" aria-hidden="true" [src]="interaction.UIHeadersData.statusUrl" (click)="interaction.UIHeadersData.focusHandler.handler(interaction.UIHeadersData.focusHandler.operationName, interaction.UIHeadersData.focusHandler.operationMetadata)" />\r\n <label class="statusText">\r\n <b [id]="interaction.UIHeadersData.statusText">{{ interaction.UIHeadersData.statusText }}</b>\r\n </label>\r\n <label class="verticalDivider">|</label>\r\n <label class="directionText" *ngIf="!interaction.UIHeadersData.displayHoldCounter">{{ interaction.UIHeadersData.directionText }}</label>\r\n <div class="holdCallDurationDiv" *ngIf="interaction.UIHeadersData.displayHoldCounter">\r\n <amc-holdtimer [holdCounterData]="interaction.UIHeadersData.holdCounterData" [statusText]="interaction.UIHeadersData.statusText" [callId]="interaction.subheaderData.value"></amc-holdtimer>\r\n </div>\r\n <img class="ViewExpandImage" [src]="interaction.UIHeadersData.minimizeUrl" alt="Minimize" (click)="minimize()" (keypress)="collapseKeypress($event)" *ngIf="!_minimized" tabindex="0" role="button" aria-label="collapse Call Section">\r\n <img class="ViewCollapseImage" [src]="interaction.UIHeadersData.maximizeUrl" alt="Maximize" (click)="maximize()" (keypress)="expandKeypress($event)" *ngIf="_minimized" tabindex="0" role="button" aria-label="expand Call Section">\r\n <div class="DurationDiv" *ngIf="interaction.displayCallTimer">\r\n <amc-duration [statusText]="interaction.UIHeadersData.statusText" [callId]="interaction.subheaderData.value" [startTime]="interaction.startTime"></amc-duration>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf="!_minimized">\r\n\r\n <div *ngIf="!isConferenceCall()">\r\n <div class="editor phoneNumberContainer">\r\n <input class="callImage" type="image" [src]="interaction.subheaderData.image.href" [title]="interaction.subheaderData.tooltip || \'\'" tabindex="-1">\r\n <input class="editor phoneNumberValue" [attr.aria-labelledby]="interaction.UIHeadersData.statusText + \' \' + interaction.subheaderData.value" readonly type="text" [value]="interaction.subheaderData.value" [id]="interaction.subheaderData.value" tabindex="-1">\r\n </div>\r\n\r\n <div class="cadSection">\r\n <ng-container *ngFor="let property of interaction.properties">\r\n <ng-container *ngIf="property.visible">\r\n <label class="col1" [title]="property.displayKey">{{property.displayKey}}</label>\r\n <amc-property [callType]="interaction.UIHeadersData.directionText" [statusText]="interaction.UIHeadersData.statusText" [callId]="interaction.subheaderData.value" class="col2" [property]="property"> </amc-property>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngFor="let property of interaction.associatedData">\r\n <ng-container *ngIf="property.visible">\r\n <div class="editor displayDiv">\r\n <label class="displayLabels" [title]="property.displayKey">{{property.displayKey}}</label>\r\n <amc-property [callType]="interaction.UIHeadersData.directionText" [statusText]="interaction.UIHeadersData.statusText" [callId]="interaction.subheaderData.value" class="col2" [property]="property"> </amc-property>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n\r\n <app-chat-box *ngIf="interaction.chat" [isTyping]="interaction.chat.isCustomerTyping" [settings]="interaction.chat.settings"\r\n [messages]="interaction.chat.messages" (isAgentTyping)="isAgentTyping.emit($event)" (newMessage)="newMessage.emit($event)"></app-chat-box>\r\n\r\n <div [id]=\'interaction.interactionId\'> </div>\r\n <amc-operation [callType]="interaction.UIHeadersData.directionText" [statusText]="interaction.UIHeadersData.statusText" [callId]="interaction.subheaderData.value" [operations]="interaction.operations"></amc-operation>\r\n </div>\r\n\r\n <div *ngIf="isConferenceCall()">\r\n <div *ngFor="let party of interaction.parties">\r\n <div class="editor phoneNumberContainer">\r\n <input class="callImage" type="image" [src]="party.header.image.href" [title]="party.header.tooltip || \'\'" tabindex="-1">\r\n <input class="editor phoneNumberValue" readonly type="text" [value]="party.header.value" tabindex="-1">\r\n </div>\r\n\r\n <div class="grid-container">\r\n <ng-container *ngFor="let property of party.properties">\r\n <ng-container *ngIf="property.visible">\r\n <label class="col1" [title]="property.displayKey">{{ property.displayKey }}</label>\r\n <amc-property [callType]="interaction.UIHeadersData.directionText" [statusText]="interaction.UIHeadersData.statusText" [callId]="party.header.value" class="col2" [property]="property"> </amc-property>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n <amc-operation [callType]="interaction.UIHeadersData.directionText" [statusText]="interaction.UIHeadersData.statusText" [callId]="party.header.value" [operations]="party.operations"></amc-operation>\r\n <div class="AnswerCallFocused"></div>\r\n </div>\r\n <amc-operation [callType]="interaction.UIHeadersData.directionText" [statusText]="interaction.UIHeadersData.statusText" [callId]="interaction.subheaderData.value" [operations]="interaction.operations"></amc-operation>\r\n </div>\r\n\r\n </div>\r\n</div>\r\n',styles:[":host{display:block}.phoneNumberContainer{margin-left:5px!important;padding-left:0;display:flex;align-items:center}.cadSection{margin-bottom:5px}.grid-container{margin-left:5px;display:grid;grid-template-columns:auto 1fr;grid-column-gap:10px;max-width:calc(100% - 5px);overflow:hidden}.col1{grid-column:1/2}.col2{grid-column:2/3}.ViewExpandImage{margin:3px}.ViewExpandImage:focus{outline:#3296da solid 2px;outline-offset:0}.ViewCollapseImage{margin:3px}.ViewCollapseImage:focus{outline:#3296da solid 2px;outline-offset:0}.callImage{cursor:default}.phoneNumberValue:focus{outline-style:none}","body{padding-top:5px;padding-bottom:5px;margin:0}.login{width:20px;height:20px;display:block;margin-top:2px;margin-left:auto;margin-right:auto}.editor{font-size:.9em;text-align:left;margin:4px 5% 0 0;font-family:Arial;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;border:0;padding-top:2px;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.editor .standalone-line{width:90%!important;text-align:center!important}.editorHyperLink label{font-size:.95em;float:left;width:30%;margin-left:2%;text-align:left;color:#000;font-family:Arial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:0;padding-top:0}.editorHyperLink input[type=text]{font-size:.95em;width:60%;text-align:left;margin:0 5% 0 0;color:#318fc5;cursor:pointer;font-family:Arial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border:0;padding-top:0;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.AnswerCallImages{height:20px;margin:5px}.AnswerCallFocused{border:1px solid #939598;margin-left:0;font-family:Arial;position:relative;background-color:#fff;width:100%;box-sizing:border-box}.ViewCollapseImage,.ViewExpandImage{width:20px;height:20px;float:right;cursor:pointer}.answerPhoneNumberStyle{border:0;position:relative;top:-12px;left:-38px;max-width:80px;height:15px;text-overflow:ellipsis;font-size:.85em}.callHeaderTop{border-bottom:1px solid;background-color:#f4f5fb;width:100%;margin-top:0}.statusImage{width:15px;height:15px;margin-left:10px;float:left;margin-right:5px}.statusText{float:left;margin-top:1px}.displayDiv{width:100%;display:flex}.DurationDiv{float:right;width:17%;text-align:right;margin-right:5px}.displayLabels{margin-left:5px;width:25%;overflow:hidden;text-overflow:ellipsis}.displayData{border:0;outline:0}.callOptions{background-color:#f6f7fb;bottom:0;width:100%;text-align:center}.directionText{font-size:.8em;margin-left:2px}.phoneNumberValue{font-weight:700;font-size:1em;margin-left:5px}.durationInput{background-color:transparent;border:0;width:100%;text-align:right}.topBorder{border-top:1px solid #939598}.holdCallDurationDiv{float:left;margin-top:1px;margin-left:2px}.holdCallDurationTimer{background-color:transparent;border:0;width:100%}.verticalDivider{margin-left:2px;float:left}.callImage{height:20px}"]})],t)}(),c=function(){function t(){this.minimizedChanged=new e.EventEmitter,this.isAgentTyping=new e.EventEmitter,this.newMessage=new e.EventEmitter,this.afterViewChecked=new e.EventEmitter}return t.prototype.ngAfterViewChecked=function(){this.afterViewChecked.emit()},t.prototype.onMinimizedChanged=function(){this.minimizedChanged.emit()},l([e.Input()],t.prototype,"scenario",void 0),l([e.Output()],t.prototype,"minimizedChanged",void 0),l([e.Output()],t.prototype,"isAgentTyping",void 0),l([e.Output()],t.prototype,"newMessage",void 0),l([e.Output()],t.prototype,"afterViewChecked",void 0),t=l([e.Component({selector:"amc-scenario",template:'<ng-container *ngIf="scenario && scenario.interactions">\r\n <amc-interaction *ngFor="let interaction of scenario.interactions" [interaction]="interaction"\r\n (minimizedChanged)="onMinimizedChanged()" (isAgentTyping)="isAgentTyping.emit($event)"\r\n (newMessage)="newMessage.emit($event)">\r\n </amc-interaction>\r\n</ng-container>\r\n',styles:["","body{padding-top:5px;padding-bottom:5px;margin:0}.login{width:20px;height:20px;display:block;margin-top:2px;margin-left:auto;margin-right:auto}.editor{font-size:.9em;text-align:left;margin:4px 5% 0 0;font-family:Arial;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;border:0;padding-top:2px;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.editor .standalone-line{width:90%!important;text-align:center!important}.editorHyperLink label{font-size:.95em;float:left;width:30%;margin-left:2%;text-align:left;color:#000;font-family:Arial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:0;padding-top:0}.editorHyperLink input[type=text]{font-size:.95em;width:60%;text-align:left;margin:0 5% 0 0;color:#318fc5;cursor:pointer;font-family:Arial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border:0;padding-top:0;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.AnswerCallImages{height:20px;margin:5px}.AnswerCallFocused{border:1px solid #939598;margin-left:0;font-family:Arial;position:relative;background-color:#fff;width:100%;box-sizing:border-box}.ViewCollapseImage,.ViewExpandImage{width:20px;height:20px;float:right;cursor:pointer}.answerPhoneNumberStyle{border:0;position:relative;top:-12px;left:-38px;max-width:80px;height:15px;text-overflow:ellipsis;font-size:.85em}.callHeaderTop{border-bottom:1px solid;background-color:#f4f5fb;width:100%;margin-top:0}.statusImage{width:15px;height:15px;margin-left:10px;float:left;margin-right:5px}.statusText{float:left;margin-top:1px}.displayDiv{width:100%;display:flex}.DurationDiv{float:right;width:17%;text-align:right;margin-right:5px}.displayLabels{margin-left:5px;width:25%;overflow:hidden;text-overflow:ellipsis}.displayData{border:0;outline:0}.callOptions{background-color:#f6f7fb;bottom:0;width:100%;text-align:center}.directionText{font-size:.8em;margin-left:2px}.phoneNumberValue{font-weight:700;font-size:1em;margin-left:5px}.durationInput{background-color:transparent;border:0;width:100%;text-align:right}.topBorder{border-top:1px solid #939598}.holdCallDurationDiv{float:left;margin-top:1px;margin-left:2px}.holdCallDurationTimer{background-color:transparent;border:0;width:100%}.verticalDivider{margin-left:2px;float:left}.callImage{height:20px}"]})],t)}(),g=function(){function t(){this.labelledByText="",this.describedByText=""}return t.prototype.ngOnInit=function(){this.statusText&&this.callType?this.describedByText=this.statusText+" "+this.callType:this.statusText?this.describedByText=this.statusText:this.callType&&(this.describedByText=this.callType),this.callId&&(this.labelledByText=this.callId)},t.prototype.operationKeypress=function(t,e){"Enter"===t.code&&e.handler(e.operationName,e.operationMetadata)},l([e.Input()],t.prototype,"statusText",void 0),l([e.Input()],t.prototype,"callId",void 0),l([e.Input()],t.prototype,"callType",void 0),l([e.Input()],t.prototype,"operations",void 0),t=l([e.Component({selector:"amc-operation",template:'<div class="callOptions">\r\n <img\r\n class="AnswerCallImages"\r\n tabindex="0"\r\n role="button"\r\n attr.aria-label="{{ operation.title }}"\r\n *ngFor="let operation of operations"\r\n [title]="operation.title"\r\n [src]="operation.icon"\r\n [attr.accesskey]="operation.accesskey || null"\r\n [attr.aria-labelledby]="labelledByText || null"\r\n [attr.aria-describedby]="describedByText || null"\r\n (click)="operation.handler(operation.operationName, operation.operationMetadata)"\r\n (keypress)="operationKeypress($event, operation)"/>\r\n</div>\r\n',styles:[".AnswerCallImages:focus{outline:#3296da solid 2px;outline-offset:1px}","body{padding-top:5px;padding-bottom:5px;margin:0}.login{width:20px;height:20px;display:block;margin-top:2px;margin-left:auto;margin-right:auto}.editor{font-size:.9em;text-align:left;margin:4px 5% 0 0;font-family:Arial;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;border:0;padding-top:2px;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.editor .standalone-line{width:90%!important;text-align:center!important}.editorHyperLink label{font-size:.95em;float:left;width:30%;margin-left:2%;text-align:left;color:#000;font-family:Arial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:0;padding-top:0}.editorHyperLink input[type=text]{font-size:.95em;width:60%;text-align:left;margin:0 5% 0 0;color:#318fc5;cursor:pointer;font-family:Arial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border:0;padding-top:0;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.AnswerCallImages{height:20px;margin:5px}.AnswerCallFocused{border:1px solid #939598;margin-left:0;font-family:Arial;position:relative;background-color:#fff;width:100%;box-sizing:border-box}.ViewCollapseImage,.ViewExpandImage{width:20px;height:20px;float:right;cursor:pointer}.answerPhoneNumberStyle{border:0;position:relative;top:-12px;left:-38px;max-width:80px;height:15px;text-overflow:ellipsis;font-size:.85em}.callHeaderTop{border-bottom:1px solid;background-color:#f4f5fb;width:100%;margin-top:0}.statusImage{width:15px;height:15px;margin-left:10px;float:left;margin-right:5px}.statusText{float:left;margin-top:1px}.displayDiv{width:100%;display:flex}.DurationDiv{float:right;width:17%;text-align:right;margin-right:5px}.displayLabels{margin-left:5px;width:25%;overflow:hidden;text-overflow:ellipsis}.displayData{border:0;outline:0}.callOptions{background-color:#f6f7fb;bottom:0;width:100%;text-align:center}.directionText{font-size:.8em;margin-left:2px}.phoneNumberValue{font-weight:700;font-size:1em;margin-left:5px}.durationInput{background-color:transparent;border:0;width:100%;text-align:right}.topBorder{border-top:1px solid #939598}.holdCallDurationDiv{float:left;margin-top:1px;margin-left:2px}.holdCallDurationTimer{background-color:transparent;border:0;width:100%}.verticalDivider{margin-left:2px;float:left}.callImage{height:20px}"]})],t)}();(p=t.IChatMessageType||(t.IChatMessageType={})).AGENT="AGENT",p.OTHER_PERSON="OTHER_PERSON",p.INFORMATION="INFORMATION";var m,h=function(e,i,o,n,r){var a=this;this.displayOperation=function(){a.displayKey=a.key,a.displayValue=a.value},this.key=e,this.value=i,this.visible=null==o||o,this.displayValueType=null!=n?n:t.ValueType.STRING,this.customOperations=r,this.displayOperation()};function f(t){t=Number(t);var e=Math.floor(t/3600),i=Math.floor(t%3600/60),o=Math.floor(t%3600%60);return(e>0?e.toString()+":":"")+(i>0?("0"+i.toString()).slice(-2)+":":"00:")+(o>0?("0"+o.toString()).slice(-2):"00")}(m=t.ValueType||(t.ValueType={}))[m.STRING=0]="STRING",m[m.COUNTER=1]="COUNTER";var u=function(){function i(){this.labelledByText="",this.title="",this._timerId=null,this.processedDisplayValue=""}return i.prototype.ngOnInit=function(){this.statusText&&this.callType?this.labelledByText=this.statusText+" "+this.callType:this.statusText?this.labelledByText=this.statusText:this.callType&&(this.labelledByText=this.callType),this.callType&&this.callId?this.title=this.callType+" "+this.callId:this.callType?this.title=this.callType:this.callId&&(this.title=this.callId),this.initValues()},i.prototype.initValues=function(){this.property.displayValueType===t.ValueType.COUNTER?this.startCallCounter():this.processedDisplayValue=this.property.displayValue},i.prototype.startCallCounter=function(){var t=this;null==this._timerId&&(this._timerId=window.setInterval((function(){var e=t.property.displayValue,i=(new Date).getTime()/1e3,o=Math.floor(i-e/1e3);t.processedDisplayValue=f(o)}),1e3))},i.prototype.ngOnDestroy=function(){this.property.displayValueType===t.ValueType.COUNTER&&null!=this._timerId&&(clearInterval(this._timerId),this._timerId=null)},l([e.Input()],i.prototype,"statusText",void 0),l([e.Input()],i.prototype,"callId",void 0),l([e.Input()],i.prototype,"callType",void 0),l([e.Input()],i.prototype,"property",void 0),i=l([e.Component({selector:"amc-property",template:'<input\r\n readonly\r\n *ngIf="!property.customOperations"\r\n class="displayData"\r\n tabindex="0"\r\n type="text"\r\n [name]="processedDisplayValue"\r\n [title]="title || null"\r\n [attr.aria-labelledby]="labelledByText || null"\r\n [value]="processedDisplayValue"/>\r\n\r\n <input\r\n readonly\r\n *ngIf="property.customOperations"\r\n class="cursor displayData"\r\n type="text"\r\n tabindex="0"\r\n [name]="processedDisplayValue"\r\n [title]="title || null"\r\n [value]="processedDisplayValue"\r\n [attr.aria-labelledby]="labelledByText || null"\r\n (click)="property.customOperations.handler(property.customOperations.eventName, property.customOperations.eventMetadata)" />\r\n',styles:["input{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;border:0}","body{padding-top:5px;padding-bottom:5px;margin:0}.login{width:20px;height:20px;display:block;margin-top:2px;margin-left:auto;margin-right:auto}.editor{font-size:.9em;text-align:left;margin:4px 5% 0 0;font-family:Arial;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;border:0;padding-top:2px;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.editor .standalone-line{width:90%!important;text-align:center!important}.editorHyperLink label{font-size:.95em;float:left;width:30%;margin-left:2%;text-align:left;color:#000;font-family:Arial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:0;padding-top:0}.editorHyperLink input[type=text]{font-size:.95em;width:60%;text-align:left;margin:0 5% 0 0;color:#318fc5;cursor:pointer;font-family:Arial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border:0;padding-top:0;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.AnswerCallImages{height:20px;margin:5px}.AnswerCallFocused{border:1px solid #939598;margin-left:0;font-family:Arial;position:relative;background-color:#fff;width:100%;box-sizing:border-box}.ViewCollapseImage,.ViewExpandImage{width:20px;height:20px;float:right;cursor:pointer}.answerPhoneNumberStyle{border:0;position:relative;top:-12px;left:-38px;max-width:80px;height:15px;text-overflow:ellipsis;font-size:.85em}.callHeaderTop{border-bottom:1px solid;background-color:#f4f5fb;width:100%;margin-top:0}.statusImage{width:15px;height:15px;margin-left:10px;float:left;margin-right:5px}.statusText{float:left;margin-top:1px}.displayDiv{width:100%;display:flex}.DurationDiv{float:right;width:17%;text-align:right;margin-right:5px}.displayLabels{margin-left:5px;width:25%;overflow:hidden;text-overflow:ellipsis}.displayData{border:0;outline:0}.callOptions{background-color:#f6f7fb;bottom:0;width:100%;text-align:center}.directionText{font-size:.8em;margin-left:2px}.phoneNumberValue{font-weight:700;font-size:1em;margin-left:5px}.durationInput{background-color:transparent;border:0;width:100%;text-align:right}.topBorder{border-top:1px solid #939598}.holdCallDurationDiv{float:left;margin-top:1px;margin-left:2px}.holdCallDurationTimer{background-color:transparent;border:0;width:100%}.verticalDivider{margin-left:2px;float:left}.callImage{height:20px}"]})],i)}(),x=function(){function t(){this.labelledByText="",this.displayTime="00:00/00:00"}return t.prototype.ngOnInit=function(){this.statusText&&this.callId?this.labelledByText=this.statusText+" "+this.callId:this.statusText?this.labelledByText=this.statusText:this.callId&&(this.labelledByText=this.callId),this.startCallCounter()},t.prototype.startCallCounter=function(){var t=this,e=this.CaculatePastHoldDuration();null==this._timerId&&(this._timerId=window.setInterval((function(){var i=(new Date).getTime()/1e3,o=Math.floor(i-t.holdCounterData.currentHoldStartTime/1e3);t.displayTime=f(o)+"/"+f(e+o)}),1e3))},t.prototype.CaculatePastHoldDuration=function(){var t=0;return this.holdCounterData.pastCallDurations&&this.holdCounterData.pastCallDurations.forEach((function(e){t+=(e.endTime-e.startTime)/1e3})),t},t.prototype.ngOnDestroy=function(){null!=this._timerId&&(clearInterval(this._timerId),this._timerId=null)},l([e.Input()],t.prototype,"holdCounterData",void 0),l([e.Input()],t.prototype,"statusText",void 0),l([e.Input()],t.prototype,"callId",void 0),t=l([e.Component({selector:"amc-holdtimer",template:'<div class="holdCallDurationDiv">\r\n <input\r\n readonly\r\n class="holdCallDurationTimer"\r\n name="HoldCallDuration/TotalHoldCallDuration"\r\n type="text"\r\n tabindex="-1"\r\n title="Hold Duration"\r\n [attr.aria-labelledby]="labelledByText || null"\r\n [value]="displayTime">\r\n</div>\r\n',styles:[".holdCallDurationTimer:focus{outline-style:none}","body{padding-top:5px;padding-bottom:5px;margin:0}.login{width:20px;height:20px;display:block;margin-top:2px;margin-left:auto;margin-right:auto}.editor{font-size:.9em;text-align:left;margin:4px 5% 0 0;font-family:Arial;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;border:0;padding-top:2px;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.editor .standalone-line{width:90%!important;text-align:center!important}.editorHyperLink label{font-size:.95em;float:left;width:30%;margin-left:2%;text-align:left;color:#000;font-family:Arial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:0;padding-top:0}.editorHyperLink input[type=text]{font-size:.95em;width:60%;text-align:left;margin:0 5% 0 0;color:#318fc5;cursor:pointer;font-family:Arial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border:0;padding-top:0;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.AnswerCallImages{height:20px;margin:5px}.AnswerCallFocused{border:1px solid #939598;margin-left:0;font-family:Arial;position:relative;background-color:#fff;width:100%;box-sizing:border-box}.ViewCollapseImage,.ViewExpandImage{width:20px;height:20px;float:right;cursor:pointer}.answerPhoneNumberStyle{border:0;position:relative;top:-12px;left:-38px;max-width:80px;height:15px;text-overflow:ellipsis;font-size:.85em}.callHeaderTop{border-bottom:1px solid;background-color:#f4f5fb;width:100%;margin-top:0}.statusImage{width:15px;height:15px;margin-left:10px;float:left;margin-right:5px}.statusText{float:left;margin-top:1px}.displayDiv{width:100%;display:flex}.DurationDiv{float:right;width:17%;text-align:right;margin-right:5px}.displayLabels{margin-left:5px;width:25%;overflow:hidden;text-overflow:ellipsis}.displayData{border:0;outline:0}.callOptions{background-color:#f6f7fb;bottom:0;width:100%;text-align:center}.directionText{font-size:.8em;margin-left:2px}.phoneNumberValue{font-weight:700;font-size:1em;margin-left:5px}.durationInput{background-color:transparent;border:0;width:100%;text-align:right}.topBorder{border-top:1px solid #939598}.holdCallDurationDiv{float:left;margin-top:1px;margin-left:2px}.holdCallDurationTimer{background-color:transparent;border:0;width:100%}.verticalDivider{margin-left:2px;float:left}.callImage{height:20px}"]})],t)}(),b=function(){function t(){this.labelledByText="",this.displayTime="00:00/00:00"}return t.prototype.ngOnInit=function(){this.statusText&&this.callId?this.labelledByText=this.statusText+" "+this.callId:this.statusText?this.labelledByText=this.statusText:this.callId&&(this.labelledByText=this.callId),this.startCallCounter()},t.prototype.startCallCounter=function(){var t=this;null==this._timerId&&(this._timerId=window.setInterval((function(){var e=t.startTime,i=(new Date).getTime()/1e3,o=Math.floor(i-e/1e3);t.displayTime=Math.floor(o/60)+":"+("0"+o%60).slice(-2)}),1e3))},t.prototype.ngOnDestroy=function(){null!=this._timerId&&(clearInterval(this._timerId),this._timerId=null)},l([e.Input()],t.prototype,"statusText",void 0),l([e.Input()],t.prototype,"callId",void 0),l([e.Input()],t.prototype,"startTime",void 0),t=l([e.Component({selector:"amc-duration",template:'<div class="holdCallDurationDiv">\r\n <input\r\n readonly\r\n class="block durationInput"\r\n name="CallDuration"\r\n type="text"\r\n tabindex="-1"\r\n title="Call Duration"\r\n [value]="displayTime"\r\n [attr.aria-labelledby]="labelledByText || null">\r\n</div>\r\n',styles:[".durationInput:focus{outline-style:none}","body{padding-top:5px;padding-bottom:5px;margin:0}.login{width:20px;height:20px;display:block;margin-top:2px;margin-left:auto;margin-right:auto}.editor{font-size:.9em;text-align:left;margin:4px 5% 0 0;font-family:Arial;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;border:0;padding-top:2px;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.editor .standalone-line{width:90%!important;text-align:center!important}.editorHyperLink label{font-size:.95em;float:left;width:30%;margin-left:2%;text-align:left;color:#000;font-family:Arial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:0;padding-top:0}.editorHyperLink input[type=text]{font-size:.95em;width:60%;text-align:left;margin:0 5% 0 0;color:#318fc5;cursor:pointer;font-family:Arial;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border:0;padding-top:0;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.AnswerCallImages{height:20px;margin:5px}.AnswerCallFocused{border:1px solid #939598;margin-left:0;font-family:Arial;position:relative;background-color:#fff;width:100%;box-sizing:border-box}.ViewCollapseImage,.ViewExpandImage{width:20px;height:20px;float:right;cursor:pointer}.answerPhoneNumberStyle{border:0;position:relative;top:-12px;left:-38px;max-width:80px;height:15px;text-overflow:ellipsis;font-size:.85em}.callHeaderTop{border-bottom:1px solid;background-color:#f4f5fb;width:100%;margin-top:0}.statusImage{width:15px;height:15px;margin-left:10px;float:left;margin-right:5px}.statusText{float:left;margin-top:1px}.displayDiv{width:100%;display:flex}.DurationDiv{float:right;width:17%;text-align:right;margin-right:5px}.displayLabels{margin-left:5px;width:25%;overflow:hidden;text-overflow:ellipsis}.displayData{border:0;outline:0}.callOptions{background-color:#f6f7fb;bottom:0;width:100%;text-align:center}.directionText{font-size:.8em;margin-left:2px}.phoneNumberValue{font-weight:700;font-size:1em;margin-left:5px}.durationInput{background-color:transparent;border:0;width:100%;text-align:right}.topBorder{border-top:1px solid #939598}.holdCallDurationDiv{float:left;margin-top:1px;margin-left:2px}.holdCallDurationTimer{background-color:transparent;border:0;width:100%}.verticalDivider{margin-left:2px;float:left}.callImage{height:20px}"]})],t)}(),y=function(){function i(){this.isTyping=!1,this.lastCount=-1,this._isAgentTyping=!1,this.isAgentTyping=new e.EventEmitter,this.newMessage=new e.EventEmitter,this.newMessageText="",this.usernameToColor={},this.colors=["#81c784","#ffab91","#f48fb1","#29b6f6","#e1bee7","#9ccc65","#ffc107","#26c6da","#cddc39"],this.colorsIndex=0,this.agentColor="#29b6f6"}return i.prototype.ngAfterViewChecked=function(){this.lastCount!==this.messages.length&&(this.lastCount=this.messages.length,this.scrollToBottom())},i.prototype.getColor=function(e){return e.type&&e.type===t.IChatMessageType.AGENT?this.agentColor:e.username?(this.usernameToColor[e.username]||(this.usernameToColor[e.username]=this.colors[this.colorsIndex],this.colorsIndex=(this.colorsIndex+1)%this.colors.length),this.usernameToColor[e.username]):this.colors[0]},i.prototype.shouldAlignRight=function(e){return e.type&&e.type===t.IChatMessageType.AGENT},i.prototype.sendNewMessage=function(){this.newMessageText&&(this.newMessage.emit(this.newMessageText),this.newMessageText="")},i.prototype.onNewMessageFocus=function(t){var e=t&&this.newMessageText.length>0;e!==this._isAgentTyping&&(this._isAgentTyping=e,this.isAgentTyping.emit(e))},i.prototype.onKeyup=function(){var t=this.newMessageText.length>0;t!==this._isAgentTyping&&(this._isAgentTyping=t,this.isAgentTyping.emit(t))},i.prototype.scrollToBottom=function(){try{this.messagesContainer.nativeElement.scrollTop=this.messagesContainer.nativeElement.scrollHeight}catch(t){}},l([e.Input()],i.prototype,"settings",void 0),l([e.Input()],i.prototype,"isTyping",void 0),l([e.Input()],i.prototype,"messages",void 0),l([e.Output()],i.prototype,"isAgentTyping",void 0),l([e.Output()],i.prototype,"newMessage",void 0),l([e.ViewChild("MessagesContainer",{static:!0})],i.prototype,"messagesContainer",void 0),i=l([e.Component({selector:"app-chat-box",template:'<div class="chat-box">\r\n <div #MessagesContainer class="messages" [style.max-height]=\'settings.maxHeight\'>\r\n <ng-container *ngFor="let message of messages">\r\n <app-chat-message [alignRight]="shouldAlignRight(message)" [message]="message.text" [username]="message.username"\r\n [timestamp]="message.timestamp" [image]="message.userIcon" [fallbackImage]="settings.fallbackUserIcon" [color]="getColor(message)">\r\n </app-chat-message>\r\n </ng-container>\r\n\r\n <div *ngIf="isTyping" class="typing-indicator">\r\n Someone is typing\r\n <span></span>\r\n <span></span>\r\n <span></span>\r\n </div>\r\n </div>\r\n\r\n <div class="new-message">\r\n <input #NewMessageText [(ngModel)]="newMessageText" type="text" placeholder="Type a message" (focus)="onNewMessageFocus(true)"\r\n (blur)="onNewMessageFocus(false)" (keydown.enter)="sendNewMessage()" (keyup)=\'onKeyup()\' [disabled]="settings.disableSendMessage">\r\n <input type="image" [src]="settings.sendImage" (click)="sendNewMessage()" [disabled]="settings.disableSendMessage">\r\n </div>\r\n</div>\r\n',styles:[".chat-box{background-color:#eceff1}.messages{padding:5px;overflow:auto;min-height:50px}.new-message{border-top:1px solid #000;display:flex;align-content:center;height:25px}.new-message input[type=text]{flex:1 1 0;background-color:#eceff1;border:none;min-width:0}.new-message input[type=image]{position:relative;top:50%;transform:translateY(-50%);height:20px;cursor:pointer}.new-message input[type=image]:disabled{opacity:.5;cursor:auto}.new-message input:focus{outline:0}.typing-indicator{font-size:1em;font-style:italic}.typing-indicator span{display:inline-block;height:10px;width:10px;border-radius:50%;background-color:#9e9e9e;margin:0 1px;opacity:.2}.typing-indicator span:nth-of-type(1){-webkit-animation:1.5s .33333s infinite blink;animation:1.5s .33333s infinite blink}.typing-indicator span:nth-of-type(2){-webkit-animation:1.5s .66666s infinite blink;animation:1.5s .66666s infinite blink}.typing-indicator span:nth-of-type(3){-webkit-animation:1.5s .99999s infinite blink;animation:1.5s .99999s infinite blink}@-webkit-keyframes blink{50%{opacity:1}}@keyframes blink{50%{opacity:1}}"]})],i)}(),v=function(){function t(){this.alignRight=!1}return t.prototype.ngOnInit=function(){},l([e.Input()],t.prototype,"message",void 0),l([e.Input()],t.prototype,"alignRight",void 0),l([e.Input()],t.prototype,"username",void 0),l([e.Input()],t.prototype,"color",void 0),l([e.Input()],t.prototype,"timestamp",void 0),l([e.Input()],t.prototype,"image",void 0),l([e.Input()],t.prototype,"fallbackImage",void 0),t=l([e.Component({selector:"app-chat-message",template:'<div [class]="alignRight? \'message right-message\' : \'message left-message\'">\r\n <div class="message-header">\r\n <img *ngIf="image" class="image" [src]="image" (error)="image = fallbackImage" [style.border-color]="color" />\r\n <span *ngIf="username" class="username">{{username}}</span>\r\n <span *ngIf="timestamp" class="timestamp">{{timestamp}}</span>\r\n </div>\r\n\r\n <div class="message-body-container">\r\n <div>\r\n <div class="message-body" [style.background-color]="color" [style.border-color]="color">\r\n <span [innerHTML]="message"></span>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n',styles:[':host{display:block;margin-top:2px;margin-bottom:2px}.right-message{text-align:end}.message-header{display:flex;-webkit-text-emphasis:none;text-emphasis:none;font-style:italic;font-size:.7em;align-items:center;margin-bottom:.5em}.message-header .image{height:30px;border-radius:50%;border:2px solid red}.message-header .username{font-weight:700}.right-message>.message-header{flex-direction:row-reverse;margin-right:1px}.right-message>.message-header .image,.right-message>.message-header .username{margin-left:5px}.left-message>.message-header{margin-left:1px}.left-message>.message-header .image,.left-message>.message-header .username{margin-right:5px}.message-body-container{display:flex}.right-message>.message-body-container{flex-direction:row-reverse}.message-body{display:inline-block;position:relative;border-radius:.4em;padding:3px;font-style:normal;font-size:1em;text-align:start;min-width:2em;overflow-wrap:break-word;word-wrap:break-word;-ms-word-break:break-all;word-break:break-all;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}.left-message .message-body:after{content:"";position:absolute;left:.8em;top:-.4em;border-bottom:.4em solid #000;border-bottom-color:inherit;border-left:.4em solid transparent;border-right:.4em solid transparent}.right-message .message-body:after{content:"";position:absolute;right:.8em;top:-.4em;border-bottom:.4em solid #000;border-bottom-color:inherit;border-left:.4em solid transparent;border-right:.4em solid transparent}']})],t)}(),w=function(){function t(){this.dispositionEmitter=new e.EventEmitter,this.selectedDispositionValue="",this.dispositionName=""}return t.prototype.ngOnInit=function(){var t,e;try{for(var i=s(this.disposition.dispositionMetadata),o=i.next();!o.done;o=i.next()){var n=o.value;if("callId"===n.key){this.dispositionName="disposition_"+n.value;break}}}catch(e){t={error:e}}finally{try{o&&!o.done&&(e=i.return)&&e.call(i)}finally{if(t)throw t.error}}this.disposition.checkedDisposition&&(this.selectedDispositionValue=this.disposition.checkedDisposition)},t.prototype.submitDisposition=function(){var t={dispositionId:this.selectedDispositionValue,dispositionName:this.disposition.disposition.get(this.selectedDispositionValue),dispositionMetadata:this.disposition.dispositionMetadata};this.dispositionEmitter.emit(t)},t.prototype.selectAndSubmitDisposition=function(t,e){"Enter"===t.code&&(this.selectedDispositionValue=e,this.submitDisposition())},l([e.Input()],t.prototype,"disposition",void 0),l([e.Output()],t.prototype,"dispositionEmitter",void 0),t=l([e.Component({selector:"amc-disposition",template:'<div class="disposition-container">\r\n <div class="header-container">\r\n <label class="disposition-header" attr.aria-label="set disposition">{{disposition.dispositionHeader}}</label>\r\n </div>\r\n\r\n <div class="dispositions-container">\r\n <div class="disposition" *ngFor="let disp of disposition.disposition | keyvalue; let i = index">\r\n <label\r\n class="disposition-label"\r\n tabindex="0"\r\n [id]="disp.key"\r\n [ngClass]="{\'disposition-label-selected\' : selectedDispositionValue === disp.key, \'first-disposition\': i === 0}"\r\n (keypress)="selectAndSubmitDisposition($event, disp.key)">\r\n\r\n <input\r\n class="disposition-input"\r\n type="radio"\r\n value="{{disp.key}}"\r\n tabindex="-1"\r\n attr.aria-label="{{disp.value}}"\r\n [required]="!selectedDispositionValue"\r\n [name]="dispositionName"\r\n (change)="submitDisposition()"\r\n [(ngModel)]="selectedDispositionValue">\r\n\r\n {{disp.value}}\r\n </label>\r\n </div>\r\n </div>\r\n</div>\r\n',styles:[".disposition-container{border:1px solid #939598;white-space:nowrap;font-family:Arial;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;text-overflow:ellipsis;position:relative;font-size:.9em;max-height:180px;overflow-x:hidden;overflow-y:hidden}.header-container{border-bottom:1px solid #939598;background-color:#f4f5fb;width:100%;white-space:nowrap;height:28px;position:-webkit-sticky;position:sticky;overflow-x:hidden;overflow-y:hidden}.disposition-header{margin-top:auto;margin-left:7px;padding:5px;white-space:nowrap;text-overflow:ellipsis;font-weight:700;font-size:.9em;font-family:Arial;overflow-x:hidden}.disposition{margin-left:5px;padding-left:5px;white-space:nowrap}.disposition-label{text-overflow:ellipsis;font-weight:400;white-space:nowrap;font-size:.9em;overflow-x:hidden}.disposition-label-selected{text-overflow:ellipsis;font-weight:700;white-space:nowrap;font-size:.9em}.dispositions-container{padding:3px;overflow-y:scroll;max-height:150px}.disposition-label:focus{outline:#3296da solid 2px;outline-offset:5px}.first-disposition{margin-top:5px}"]})],t)}(),I=function(){function t(){this.ActivitySave=new e.EventEmitter,this.OnNameSelectChange=new e.EventEmitter,this.OnRelatedToChange=new e.EventEmitter,this.OnSubjectChange=new e.EventEmitter,this.OnCallNotesChange=new e.EventEmitter,this.isActivityMaximized=!0}return t.prototype.ngOnInit=function(){},t.prototype.onNameSelectChange=function(t){this.activity.WhoObject=this.getWho(t.currentTarget.value),this.OnNameSelectChange.emit(this.activity)},t.prototype.parseWhoObject=function(t){return t.objectType+": "+t.objectName},t.prototype.parseWhatObject=function(t){return t.objectType+": "+t.objectName},t.prototype.onRelatedToChange=function(t){this.activity.WhatObject=this.getWhat(t.currentTarget.value),this.OnRelatedToChange.emit(this.activity)},t.prototype.onSubjectChange=function(t){this.activity.Subject=t.srcElement.value,this.OnSubjectChange.emit(this.activity)},t.prototype.onCallNotesChange=function(t){this.activity.Subject=t.srcElement.value.trim(),this.OnCallNotesChange.emit(this.activity)},t.prototype.getWho=function(t){for(var e=0;e<this.activity.whoList.length;e++)if(this.activity.whoList[e].objectId===t)return this.activity.whoList[e]},t.prototype.getWhat=function(t){for(var e=0;e<this.activity.whatList.length;e++)if(this.activity.whatList[e].objectId===t)return this.activity.whatList[e]},t.prototype.loadQuickComment=function(t){this.activity.Description=this.activity.Description+this.activity.quickCommentList[t]},t.prototype.activitySave=function(t){this.ActivitySave.emit(this.activity)},l([e.Input()],t.prototype,"activity",void 0),l([e.Output()],t.prototype,"ActivitySave",void 0),l([e.Output()],t.prototype,"OnNameSelectChange",void 0),l([e.Output()],t.prototype,"OnRelatedToChange",void 0),l([e.Output()],t.prototype,"OnSubjectChange",void 0),l([e.Output()],t.prototype,"OnCallNotesChange",void 0),t=l([e.Component({selector:"app-activity",template:'<div *ngIf="isActivityMaximized" class="callDisplay">\r\n <div class="editor callHeader">\r\n <label class="headerLabel">\r\n <b>Activity Information</b>\r\n </label>\r\n <img class="ViewResizeImage" src="/assets/images/section_collapse.png" (click)="isActivityMaximized = false" title="Collapse">\r\n </div>\r\n <div class="callBody">\r\n <div class="activityFields">\r\n <form>\r\n <div class="editor displayDiv">\r\n <label class="displayLabels" title="Call From">{{activity.NameFieldName}}</label>\r\n <select class="dropDownListStyle displayData" data-resetperactivity="false" (change)="onNameSelectChange($event)">\r\n <option *ngFor="let who of activity.whoList" value="{{who.objectId}}">{{parseWhoObject(who)}}</option>\r\n </select>\r\n </div>\r\n <div class="editor displayDiv">\r\n <label class="displayLabels" title="Related To">{{activity.RelatedToFieldName}}</label>\r\n <select class="dropDownListStyle displayData" (change)="onRelatedToChange($event)" data-resetperactivity="false">\r\n <option *ngFor="let what of activity.whatList" value="{{what.objectId}}">{{parseWhatObject(what)}}</option>\r\n </select>\r\n </div>\r\n <div class="editor displayDiv">\r\n <label class="displayLabels" title="Subject">{{activity.SubjectFieldName}}</label>\r\n <input class="activitySubjectTextBoxStyle displayData" (change)="onSubjectChange($event)" title="{{activity.Subject}}"\r\n type="text" value="{{activity.Subject}}">\r\n </div>\r\n <div class="editor displayDiv">\r\n <div class="callNotesContainer">\r\n <div class="textAreaDiv">\r\n <textarea value="{{activity.Description}}" placeholder="Click to add a comment" class="activityCommentsTextBoxStyle"\r\n (change)="onCallNotesChange($event)" cols="20" rows="2" title=""></textarea>\r\n </div>\r\n <div class="notesButtonBorder">\r\n <div class="commentsButtonDiv">\r\n <div class="quickCommentsDiv">\r\n <input *ngFor="let quickComment of activity.quickCommentList ; let i = index;" class="quickNotesBotton" type="button"\r\n value="{{i+1}}" (click)="loadQuickComment(i)" title="{{quickComment}}">\r\n </div>\r\n <div class="submitDiv">\r\n <input class="submitButton" type="button" value="Submit" (click)="activitySave(false)">\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </form>\r\n </div>\r\n </div>\r\n</div>\r\n<div *ngIf="!isActivityMaximized" class="callDisplay">\r\n <div class="editor callHeader">\r\n <label class="headerLabel">\r\n <b>Activity Information</b>\r\n </label>\r\n <img class="ViewResizeImage" src="assets/images/section_expand.png" (click)="isActivityMaximized = true" title="Expand">\r\n </div>\r\n',styles:[".callDisplay{display:grid;margin-bottom:8px;background-color:#fff}.editor{font-size:.9em;width:70%;text-align:left;margin:4px 5% 0 0;font-family:Arial;white-space:nowrap;text-overflow:ellipsis;border:0;padding-top:2px;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.callHeader{background-color:#f4f5fb!important;width:100%!important;margin-top:0!important}.headerLabel{margin-left:10px}.ViewResizeImage{width:20px;height:20px;float:right;cursor:pointer}.callBody{border-top:0;position:relative}.displayDiv{width:100%;display:flex}.displayLabels{margin-left:5px;width:25%;margin-right:2px}.displayData{width:70%}.dropDownListStyle{border:1px solid #939598!important;border-radius:3px!important;width:71%!important;height:20px!important;text-align:left!important;white-space:nowrap!important;text-overflow:ellipsis!important;margin:0 5px 0 0;cursor:pointer}.activitySubjectTextBoxStyle{border:1px solid #939598!important;border-radius:3px!important;width:71%!important;height:20px!important;text-align:left!important;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;margin:0 5px 0 0;padding-left:2px}.activityCommentsTextBoxStyle{border:none;color:#333!important;text-align:left!important;margin:0;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;resize:none;width:100%;height:95px}.notesButtonBorder{background-color:#fff;border-left:1px solid #939598;border-bottom:1px solid #939598;border-right:1px solid #939598;border-bottom-left-radius:3px!important;border-bottom-right-radius:3px!important;height:auto}.commentsButtonDiv{width:100%;display:flex;align-items:center}.quickNotesBotton{background-color:#1e72ba;border:0;color:#fff;height:70%;width:20px;margin:2px;outline:0;font-size:70%}.quickCommentsDiv{text-align:left;flex:1 0 0;flex-wrap:wrap;display:flex;margin:2px}.submitDiv{text-align:right;padding-right:4px}.submitButton{border:0;float:right;margin-top:2px;outline:0;cursor:pointer;background-color:#6cb047;color:#fff;border-radius:4px;font-size:98%;margin-bottom:2px}"]})],t)}(),T=function(){function t(){this.loginDetailsProvided=new e.EventEmitter}return t.prototype.ngOnInit=function(){var t,e;this.loginData.header||(this.loginData.header="Login");try{for(var i=s(this.loginData.fields),o=i.next();!o.done;o=i.next()){var n=o.value;n.isInvalid||(n.isInvalid=!1)}}catch(e){t={error:e}}finally{try{o&&!o.done&&(e=i.return)&&e.call(i)}finally{if(t)throw t.error}}},t.prototype.onLogin=function(t){var e,i;try{for(var o=s(this.loginData.fields),n=o.next();!n.done;n=o.next()){var r=n.value;r.value=t.value[r.name]}}catch(t){e={error:t}}finally{try{n&&!n.done&&(i=o.return)&&i.call(o)}finally{if(e)throw e.error}}this.loginDetailsProvided.emit(this.loginData)},t.prototype.focusOutOfInput=function(t,e){t.controls[e.name].valid||(e.isInvalid=!0)},l([e.Input()],t.prototype,"loginData",void 0),l([e.Output()],t.prototype,"loginDetailsProvided",void 0),t=l([e.Component({selector:"amc-login",template:'<div class="login-container">\r\n <form (ngSubmit)="onLogin(loginForm)"class="login-form" id="login-form" #loginForm="ngForm">\r\n <div class="header-container">\r\n <label class="login-header" attr.aria-label="login">{{ loginData.header }}</label>\r\n </div>\r\n <div class="fields-container">\r\n <div *ngFor="let field of loginData.fields" class="field">\r\n <label class="field-label">\r\n {{ field.name }}:\r\n </label>\r\n\r\n <input\r\n ngModel\r\n class="field-input"\r\n attr.aria-label="{{ field.name }}"\r\n [name]="field.name"\r\n [type]="field.type"\r\n [value]="field.value"\r\n [placeholder]="field.placeholder || \'\'"\r\n [required]="field.isRequired || false"\r\n (focusout)="focusOutOfInput(loginForm, field)"/>\r\n\r\n <p class="invalid-input" *ngIf="field.isInvalid">{{ field.invalidMessage }}</p>\r\n </div>\r\n\r\n <button\r\n type="submit"\r\n class="form-submit"\r\n form="login-form"\r\n tabindex="0"\r\n attr.aria-label="send"\r\n [disabled]="!loginForm.valid">Login</button>\r\n </div>\r\n\r\n </form>\r\n</div>\r\n',styles:[".login-container{border:1px solid #939598;white-space:nowrap;font-family:Arial;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;text-overflow:ellipsis;position:relative;font-size:.9em;overflow-x:hidden;overflow-y:hidden}.header-container{border-bottom:1px solid #939598;background-color:#f4f5fb;width:100%;height:28px;position:-webkit-sticky;position:sticky}.login-header{margin-top:auto;margin-left:7px;padding:5px;font-weight:700;font-size:.9em}.fields-container{overflow-y:auto;font-size:.9em;padding:5px}.field{display:table-row;margin:5px}.field-label{padding:10px;display:table-cell}.field-input{display:table-cell;border:1px solid #939598;border-radius:5px}.field-input:focus{box-shadow:0 0 5px #38badf}.form-submit{margin:15px 10px 10px;display:table-row;border:1px solid #00a4b0;border-radius:5px;background-color:#00a4b0;color:#f7f7f7;width:10em;height:2em;transition:.2s;font-size:1.1em;position:relative;top:50%;left:50%;transform:translate(-50%,-50%)}.form-submit:hover{background-color:#01858f}.form-submit:disabled{background-color:silver;border-color:silver;color:#fff}input.ng-invalid.ng-touched[required]{border-color:#a94442}.form-submit:focus{outline:#3296da solid 2px;outline-offset:5px}.invalid-input{margin:0;padding:0;color:#a94442;font-size:x-small}"]})],t)}(),D=function(){function t(t){this.injector=t}return t.prototype.ngDoBootstrap=function(t){if(!customElements.get("amc-webcomponents-scenario")){var e=new a.ElementZoneStrategyFactory(c,this.injector);customElements.define("amc-webcomponents-scenario",n.createCustomElement(c,{injector:this.injector,strategyFactory:e}))}if(!customElements.get("amc-webcomponents-disposition")){e=new a.ElementZoneStrategyFactory(w,this.injector);customElements.define("amc-webcomponents-disposition",n.createCustomElement(w,{injector:this.injector,strategyFactory:e}))}if(!customElements.get("amc-webcomponents-login")){e=new a.ElementZoneStrategyFactory(T,this.injector);customElements.define("amc-webcomponents-login",n.createCustomElement(T,{injector:this.injector,strategyFactory:e}))}},t.ctorParameters=function(){return[{type:e.Injector}]},t=l([e.NgModule({imports:[r.BrowserModule,i.CommonModule,o.FormsModule],declarations:[d,c,g,u,x,b,y,v,w,I,T],entryComponents:[c,w,T],bootstrap:[],exports:[c,w,T]})],t)}();t.Property=h,t.UILibraryModule=D,t.ɵa=d,t.ɵb=c,t.ɵc=g,t.ɵd=u,t.ɵe=x,t.ɵf=b,t.ɵg=y,t.ɵh=v,t.ɵi=w,t.ɵj=I,t.ɵk=T,Object.defineProperty(t,"__esModule",{value:!0})}));
16
+ //# sourceMappingURL=amc-technology-ui-library.umd.min.js.map