@amc-technology/ui-library 1.0.98 → 1.0.100

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 (49) hide show
  1. package/amc-technology-ui-library.d.ts +4 -0
  2. package/amc-technology-ui-library.metadata.json +1 -1
  3. package/bundles/amc-technology-ui-library.umd.js +528 -17
  4. package/bundles/amc-technology-ui-library.umd.js.map +1 -1
  5. package/bundles/amc-technology-ui-library.umd.min.js +2 -2
  6. package/bundles/amc-technology-ui-library.umd.min.js.map +1 -1
  7. package/esm2015/amc-technology-ui-library.js +5 -1
  8. package/esm2015/projects/UILibrary/src/app/components/chat-box/chat-box.component.js +4 -4
  9. package/esm2015/projects/UILibrary/src/app/components/create/create.component.js +35 -0
  10. package/esm2015/projects/UILibrary/src/app/components/current-activity/current-activity.component.js +169 -0
  11. package/esm2015/projects/UILibrary/src/app/components/disposition/disposition.component.js +1 -1
  12. package/esm2015/projects/UILibrary/src/app/components/interaction/interaction.component.js +13 -3
  13. package/esm2015/projects/UILibrary/src/app/components/login/login.component.js +2 -4
  14. package/esm2015/projects/UILibrary/src/app/components/recent-activity/recent-activity.component.js +142 -0
  15. package/esm2015/projects/UILibrary/src/app/components/search-information/search-information.component.js +155 -0
  16. package/esm2015/projects/UILibrary/src/app/models/IActivity.js +1 -0
  17. package/esm2015/projects/UILibrary/src/app/models/IActivityDetails.js +1 -0
  18. package/esm2015/projects/UILibrary/src/app/models/IHoldActivityDetails.js +1 -0
  19. package/esm2015/projects/UILibrary/src/app/models/IInteractionActivityDetails.js +1 -0
  20. package/esm2015/projects/UILibrary/src/app/uilibrary.module.js +15 -5
  21. package/esm5/amc-technology-ui-library.js +5 -1
  22. package/esm5/projects/UILibrary/src/app/components/chat-box/chat-box.component.js +4 -4
  23. package/esm5/projects/UILibrary/src/app/components/create/create.component.js +36 -0
  24. package/esm5/projects/UILibrary/src/app/components/current-activity/current-activity.component.js +174 -0
  25. package/esm5/projects/UILibrary/src/app/components/disposition/disposition.component.js +1 -1
  26. package/esm5/projects/UILibrary/src/app/components/interaction/interaction.component.js +13 -3
  27. package/esm5/projects/UILibrary/src/app/components/login/login.component.js +2 -4
  28. package/esm5/projects/UILibrary/src/app/components/recent-activity/recent-activity.component.js +144 -0
  29. package/esm5/projects/UILibrary/src/app/components/search-information/search-information.component.js +156 -0
  30. package/esm5/projects/UILibrary/src/app/models/IActivity.js +1 -0
  31. package/esm5/projects/UILibrary/src/app/models/IActivityDetails.js +1 -0
  32. package/esm5/projects/UILibrary/src/app/models/IHoldActivityDetails.js +1 -0
  33. package/esm5/projects/UILibrary/src/app/models/IInteractionActivityDetails.js +1 -0
  34. package/esm5/projects/UILibrary/src/app/uilibrary.module.js +15 -5
  35. package/fesm2015/amc-technology-ui-library.js +516 -15
  36. package/fesm2015/amc-technology-ui-library.js.map +1 -1
  37. package/fesm5/amc-technology-ui-library.js +525 -15
  38. package/fesm5/amc-technology-ui-library.js.map +1 -1
  39. package/package.json +6 -1
  40. package/projects/UILibrary/src/app/components/create/create.component.d.ts +11 -0
  41. package/projects/UILibrary/src/app/components/current-activity/current-activity.component.d.ts +34 -0
  42. package/projects/UILibrary/src/app/components/interaction/interaction.component.d.ts +1 -0
  43. package/projects/UILibrary/src/app/components/recent-activity/recent-activity.component.d.ts +35 -0
  44. package/projects/UILibrary/src/app/components/search-information/search-information.component.d.ts +26 -0
  45. package/projects/UILibrary/src/app/models/IActivity.d.ts +36 -0
  46. package/projects/UILibrary/src/app/models/IActivityDetails.d.ts +7 -0
  47. package/projects/UILibrary/src/app/models/IHoldActivityDetails.d.ts +10 -0
  48. package/projects/UILibrary/src/app/models/IInteractionActivityDetails.d.ts +9 -0
  49. package/webcomponents/webcomponents.js +2 -2
@@ -1,10 +1,13 @@
1
- import { __decorate, __values } from 'tslib';
1
+ import { __decorate, __values, __awaiter, __generator } from 'tslib';
2
2
  import { EventEmitter, Input, Output, Component, Renderer2, ViewChild, Injector, NgModule } from '@angular/core';
3
3
  import { CommonModule } from '@angular/common';
4
4
  import { FormsModule } from '@angular/forms';
5
5
  import { createCustomElement } from '@angular/elements';
6
6
  import { BrowserModule } from '@angular/platform-browser';
7
7
  import { ElementZoneStrategyFactory } from 'elements-zone-strategy';
8
+ import { debounceTime } from 'rxjs/operators';
9
+ import { Subject } from 'rxjs';
10
+ import { MatTabsModule } from '@angular/material/tabs';
8
11
 
9
12
  /**
10
13
  * @ignore
@@ -66,6 +69,16 @@ var InteractionComponent = /** @class */ (function () {
66
69
  this.maximize();
67
70
  }
68
71
  };
72
+ InteractionComponent.prototype.clickEvent = function (id) {
73
+ document.getElementById(id).className = 'success';
74
+ if (localStorage.getItem('focusedPanel') === null) {
75
+ localStorage.setItem('focusedPanel', id);
76
+ }
77
+ else if (localStorage.getItem('focusedPanel') != id) {
78
+ document.getElementById(localStorage.getItem('focusedPanel')).className = 'AnswerCallFocused';
79
+ localStorage.setItem('focusedPanel', id);
80
+ }
81
+ };
69
82
  __decorate([
70
83
  Input()
71
84
  ], InteractionComponent.prototype, "interaction", void 0);
@@ -84,8 +97,8 @@ var InteractionComponent = /** @class */ (function () {
84
97
  InteractionComponent = __decorate([
85
98
  Component({
86
99
  selector: 'amc-interaction',
87
- 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 <amc-operation *ngIf=\"interaction.chat\" id=\"close-chat\" [callType]=\"interaction.UIHeadersData.directionText\" [statusText]=\"interaction.UIHeadersData.statusText\" [callId]=\"interaction.subheaderData.value\" [operations]=\"interaction.operations\"></amc-operation>\r\n <app-chat-box *ngIf=\"interaction.chat\" [isTyping]=\"interaction.chat.isCustomerTyping\" [settings]=\"interaction.chat.settings\"\r\n [messages]=\"interaction.chat.messages\" [newMsgs]=\"newMsgs\" (isAgentTyping)=\"isAgentTyping.emit($event)\" (newMessage)=\"newMessage.emit($event)\"></app-chat-box>\r\n\r\n <div [id]='interaction.interactionId'> </div>\r\n <amc-operation *ngIf=\"!interaction.chat\" [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",
88
- styles: [":host{display:block}.phoneNumberContainer{margin-left:5px!important;padding-left:0;display:flex;align-items:center}.cadSection{margin-bottom:5px}#close-chat{-moz-text-align-last:end;text-align-last:end}.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:0 5px 2px}.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}"]
100
+ template: "<div class=\"AnswerCallFocused\" [id]=\"interaction.interactionId\">\r\n <div class=\"editor callHeaderTop\" (click)=\"clickEvent(interaction.interactionId)\">\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 <amc-operation *ngIf=\"interaction.chat\" id=\"close-chat\" [callType]=\"interaction.UIHeadersData.directionText\" [statusText]=\"interaction.UIHeadersData.statusText\" [callId]=\"interaction.subheaderData.value\" [operations]=\"interaction.operations\"></amc-operation>\r\n <app-chat-box *ngIf=\"interaction.chat\" [isTyping]=\"interaction.chat.isCustomerTyping\" [settings]=\"interaction.chat.settings\"\r\n [messages]=\"interaction.chat.messages\" [newMsgs]=\"newMsgs\" (isAgentTyping)=\"isAgentTyping.emit($event)\" (newMessage)=\"newMessage.emit($event)\"></app-chat-box>\r\n\r\n <div [id]='interaction.interactionId'> </div>\r\n <amc-operation *ngIf=\"!interaction.chat\" [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",
101
+ styles: [":host{display:block}.phoneNumberContainer{margin-left:5px!important;padding-left:0;display:flex;align-items:center}.cadSection{margin-bottom:5px}#close-chat{-moz-text-align-last:end;text-align-last:end}.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}#call123{border:4px!important}.success{border:2px solid #00adbb!important}", "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:0 5px 2px}.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}"]
89
102
  })
90
103
  ], InteractionComponent);
91
104
  return InteractionComponent;
@@ -510,6 +523,7 @@ var ChatBoxComponent = /** @class */ (function () {
510
523
  }
511
524
  catch (e) { }
512
525
  finally {
526
+ this.scrollToBottom();
513
527
  }
514
528
  };
515
529
  ChatBoxComponent.prototype.ngAfterViewChecked = function () {
@@ -537,7 +551,6 @@ var ChatBoxComponent = /** @class */ (function () {
537
551
  return message.type && message.type === IChatMessageType.AGENT;
538
552
  };
539
553
  ChatBoxComponent.prototype.sendNewMessage = function (event) {
540
- this.scrollToBottom();
541
554
  event.preventDefault();
542
555
  if (this.newMessageText) {
543
556
  this.newMessage.emit(this.newMessageText);
@@ -598,8 +611,8 @@ var ChatBoxComponent = /** @class */ (function () {
598
611
  ChatBoxComponent = __decorate([
599
612
  Component({
600
613
  selector: 'app-chat-box',
601
- template: "<div class=\"chat-box\">\r\n <div #MessagesContainer id=\"msgScroll\" class=\"messages\" [style.max-height]='settings.maxHeight'>\r\n <div>\r\n <ng-container *ngFor=\"let message of updatedMessage()\">\r\n <app-chat-message class=\"chat-line\" [alignRight]=\"shouldAlignRight(message)\" [message]=\"message.text\" [username]=\"message.username\" (focusOn)=\"setOnFocus($event)\"\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 </div>\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\r\n\r\n<div class=\"message-box\">\r\n <textarea id=\"autofocus\" tabindex=\"1\" #NewMessageText [(ngModel)]=\"newMessageText\" type=\"text\" class=\"message-input scroll\" placeholder=\"Type a message...\"\r\n (focus)=\"onNewMessageFocus(true)\" (keydown.enter)=\"sendNewMessage($event)\" (keyup)='onKeyup()' [disabled]=\"settings.disableSendMessage\" ></textarea>\r\n <button type=\"submit\" class=\"message-submit\" (click)=\"sendNewMessage($event)\" [disabled]=\"settings.disableSendMessage\">Send</button>\r\n</div>\r\n</div>\r\n",
602
- styles: [".message-box{flex:1 1 0;width:99%;background:#fff;margin:auto;position:relative;border-radius:5px;height:100%;border:1px solid #ccc}.message-box .message-input{background:0 0;border:none;outline:0!important;resize:none;font-family:inherit;font-size:.8rem;height:100%;margin:0;padding:10px 7px;width:89%;color:#444}.message-box textarea:focus:-webkit-placeholder{color:transparent}.message-box .message-submit{position:absolute;z-index:1;top:26px;right:5px;background:#1e72ba;border:none;color:#fff;font-size:10px;line-height:1;padding:6px 10px;border-radius:5px;outline:0!important;transition:background .2s;cursor:pointer}.scroll::-webkit-scrollbar{display:none}.chat-box{background-color:#f4f5fb;padding:5px}.messages{padding:5px;display:flex;flex-direction:column-reverse;overflow:auto;min-height:50px}.chat-line{margin-bottom:15px}.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:#f4f5fb;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:.8em;font-style:italic}.typing-indicator span{display:inline-block;height:4px;width:4px;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}}"]
614
+ template: "<div class=\"chat-box\">\r\n <div #MessagesContainer id=\"msgScroll\" class=\"messages\" [style.max-height]='settings.maxHeight'>\r\n <ng-container *ngFor=\"let message of updatedMessage()\">\r\n <app-chat-message class=\"chat-line\" [alignRight]=\"shouldAlignRight(message)\" [message]=\"message.text\" [username]=\"message.username\" (focusOn)=\"setOnFocus($event)\"\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\r\n\r\n<div class=\"message-box\">\r\n <textarea id=\"autofocus\" tabindex=\"1\" #NewMessageText [(ngModel)]=\"newMessageText\" type=\"text\" class=\"message-input scroll\" placeholder=\"Type a message...\"\r\n (focus)=\"onNewMessageFocus(true)\" (keydown.enter)=\"sendNewMessage($event)\" (keyup)='onKeyup()' [disabled]=\"settings.disableSendMessage\" ></textarea>\r\n <button type=\"submit\" class=\"message-submit\" (click)=\"sendNewMessage($event)\" [disabled]=\"settings.disableSendMessage\">Send</button>\r\n</div>\r\n</div>\r\n",
615
+ styles: [".message-box{flex:1 1 0;width:99%;background:#fff;margin:auto;position:relative;border-radius:5px;height:100%;border:1px solid #ccc}.message-box .message-input{background:0 0;border:none;outline:0!important;resize:none;font-family:inherit;font-size:.8rem;height:100%;margin:0;padding:10px 7px;width:89%;color:#444}.message-box textarea:focus:-webkit-placeholder{color:transparent}.message-box .message-submit{position:absolute;z-index:1;top:26px;right:5px;background:#1e72ba;border:none;color:#fff;font-size:10px;line-height:1;padding:6px 10px;border-radius:5px;outline:0!important;transition:background .2s;cursor:pointer}.scroll::-webkit-scrollbar{display:none}.chat-box{background-color:#f4f5fb;padding:5px}.messages{padding:5px;overflow:auto;min-height:50px}.chat-line{margin-bottom:15px}.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:#f4f5fb;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:.8em;font-style:italic}.typing-indicator span{display:inline-block;height:4px;width:4px;border-radius:50%;background-color:#9e9e9e;margin:0 1px;opacity:.2}.typing-indicator span:nth-of-type(1){animation:1.5s .33333s infinite blink}.typing-indicator span:nth-of-type(2){animation:1.5s .66666s infinite blink}.typing-indicator span:nth-of-type(3){animation:1.5s .99999s infinite blink}@keyframes blink{50%{opacity:1}}"]
603
616
  })
604
617
  ], ChatBoxComponent);
605
618
  return ChatBoxComponent;
@@ -699,7 +712,7 @@ var DispositionComponent = /** @class */ (function () {
699
712
  Component({
700
713
  selector: 'amc-disposition',
701
714
  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",
702
- 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}"]
715
+ 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}"]
703
716
  })
704
717
  ], DispositionComponent);
705
718
  return DispositionComponent;
@@ -832,8 +845,6 @@ var LoginComponent = /** @class */ (function () {
832
845
  if (!loginForm.controls[field.name].valid) {
833
846
  field.isInvalid = true;
834
847
  }
835
- // console.log(loginForm);
836
- // console.log(field);
837
848
  };
838
849
  __decorate([
839
850
  Input()
@@ -845,12 +856,506 @@ var LoginComponent = /** @class */ (function () {
845
856
  Component({
846
857
  selector: 'amc-login',
847
858
  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",
848
- 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}"]
859
+ 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: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}"]
849
860
  })
850
861
  ], LoginComponent);
851
862
  return LoginComponent;
852
863
  }());
853
864
 
865
+ var CreateComponent = /** @class */ (function () {
866
+ function CreateComponent() {
867
+ this.CreateNewEntity = new EventEmitter();
868
+ this.isCreateMaximized = true;
869
+ }
870
+ CreateComponent.prototype.createNewEntity = function (type) {
871
+ this.CreateNewEntity.emit(type);
872
+ };
873
+ CreateComponent.prototype.getEntities = function () {
874
+ return Object.keys(this.Entities);
875
+ };
876
+ CreateComponent.prototype.getDisplay = function (entity) {
877
+ return entity.substring(0, entity.indexOf('|'));
878
+ };
879
+ CreateComponent.prototype.getImage = function (entity) {
880
+ return entity.substring(entity.indexOf('|') + 1);
881
+ };
882
+ __decorate([
883
+ Output()
884
+ ], CreateComponent.prototype, "CreateNewEntity", void 0);
885
+ __decorate([
886
+ Input()
887
+ ], CreateComponent.prototype, "Entities", void 0);
888
+ CreateComponent = __decorate([
889
+ Component({
890
+ selector: 'amc-create',
891
+ template: "<div *ngIf=\"isCreateMaximized\" class=\"callDisplay\">\r\n <div class=\"editor callHeader\">\r\n <label class=\"headerLabel\">\r\n <b>Create New</b>\r\n </label>\r\n <img class=\"ViewResizeImage\" src=\"/assets/images/section_collapse.png\" (click)=\"isCreateMaximized = false\"\r\n title=\"Collapse\" />\r\n </div>\r\n <div class=\"callBody\">\r\n <div *ngIf=\"Entities\" class=\"container\">\r\n <div *ngFor=\"let entity of getEntities()\" class=\"createNewLabel\" (click)=\"createNewEntity(entity)\"\r\n title=\"{{ getDisplay(Entities[entity]) }}\">\r\n <img class=\"createEntityImages\" src=\"{{ getImage(Entities[entity]) }}\" />\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n<div *ngIf=\"!isCreateMaximized\" class=\"callDisplay\">\r\n <div class=\"editor callHeader\">\r\n <label class=\"headerLabel\">\r\n <b>Create New</b>\r\n </label>\r\n <img class=\"ViewResizeImage\" src=\"/assets/images/section_expand.png\" (click)=\"isCreateMaximized = true\"\r\n title=\"Expand\" />\r\n </div>\r\n</div>\r\n",
892
+ styles: [".callHeader{background-color:#f4f5fb!important;width:100%!important;margin-top:0!important;border:1px solid #939598!important}.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}.createEntityImages{width:30px;height:25px;margin-bottom:5px;margin-top:5px;cursor:pointer;padding-left:5px}.createNewLabel{display:inline-block;margin-left:5%;margin-right:5%}.container{padding-right:0;padding-left:0;font-size:10px;text-align:center}.callBody{border:1px solid #939598;border-top:1px solid #939598;position:relative}.callDisplay{display:grid;background-color:#fff;display:grid}.ViewResizeImage{width:20px;height:20px;float:right;cursor:pointer}.headerLabel{margin-left:10px}"]
893
+ })
894
+ ], CreateComponent);
895
+ return CreateComponent;
896
+ }());
897
+
898
+ var RecentActivityComponent = /** @class */ (function () {
899
+ function RecentActivityComponent() {
900
+ this.EventEmitter = new EventEmitter();
901
+ this.debouncer = new Subject();
902
+ this.eventList = new Set();
903
+ }
904
+ RecentActivityComponent.prototype.ngOnChanges = function () {
905
+ };
906
+ RecentActivityComponent.prototype.getIcon = function (scenario) {
907
+ switch (scenario) {
908
+ case 'Telephony':
909
+ return '../../assets/images/Phone_Number_Icon.png';
910
+ case 'Email':
911
+ return '../../assets/images/emailTab.png';
912
+ default:
913
+ return '../../assets/images/chat.png';
914
+ }
915
+ };
916
+ RecentActivityComponent.prototype.ngOnInit = function () {
917
+ var _this = this;
918
+ this.debouncer.pipe(debounceTime(500)).subscribe(function () {
919
+ var newEvent = {
920
+ eventName: Array.from(_this.eventList).join('|'),
921
+ idx: _this.idx,
922
+ newValue: _this.ActivityDetails
923
+ };
924
+ _this.EventEmitter.emit(newEvent);
925
+ _this.eventList.clear();
926
+ });
927
+ };
928
+ RecentActivityComponent.prototype.ngOnDestroy = function () { };
929
+ RecentActivityComponent.prototype.expandAndCollapseRecentActivity = function (isExpand) {
930
+ if (isExpand) {
931
+ this.EventEmitter.emit({
932
+ eventName: 'WorkingEvtivityChanged',
933
+ idx: this.idx,
934
+ newValue: this.ActivityDetails
935
+ });
936
+ }
937
+ else {
938
+ this.EventEmitter.emit({
939
+ eventName: 'WorkingEvtivityChanged',
940
+ idx: -1,
941
+ newValue: this.ActivityDetails
942
+ });
943
+ }
944
+ };
945
+ RecentActivityComponent.prototype.openActivity = function () {
946
+ this.EventEmitter.emit({
947
+ eventName: 'OpenCallActivity',
948
+ idx: this.idx,
949
+ newValue: this.ActivityDetails
950
+ });
951
+ };
952
+ RecentActivityComponent.prototype.onSubjectChange = function () {
953
+ this.eventList.add('ActivitySubjectChanged');
954
+ this.debouncer.next();
955
+ };
956
+ RecentActivityComponent.prototype.onSubjectKeyUp = function () {
957
+ this.eventList.add('ActivitySubjectChanged');
958
+ this.debouncer.next();
959
+ };
960
+ RecentActivityComponent.prototype.onWhoObjectChange = function (event) {
961
+ this.ActivityDetails.WhoObject = this.WhoObjectList.find(function (obj) { return obj.objectId === event; });
962
+ this.EventEmitter.emit({
963
+ eventName: 'ActivityWhoObjectChanged',
964
+ idx: this.idx,
965
+ newValue: this.ActivityDetails
966
+ });
967
+ };
968
+ RecentActivityComponent.prototype.onRelatedToChange = function (event) {
969
+ this.ActivityDetails.WhatObject = this.WhatObjectList.find(function (obj) { return obj.objectId === event; });
970
+ this.EventEmitter.emit({
971
+ eventName: 'ActivityWhatObjectChanged',
972
+ idx: this.idx,
973
+ newValue: this.ActivityDetails
974
+ });
975
+ };
976
+ RecentActivityComponent.prototype.onCallNotesChange = function () {
977
+ this.eventList.add('ActivityCallNoteChanged');
978
+ this.debouncer.next();
979
+ };
980
+ RecentActivityComponent.prototype.onCallNotesKeyUp = function () {
981
+ this.eventList.add('ActivityCallNoteChanged');
982
+ this.debouncer.next();
983
+ };
984
+ RecentActivityComponent.prototype.addQuickCommentToDescription = function (comment) {
985
+ if (this.ActivityDetails.Description) {
986
+ this.ActivityDetails.Description += '\n';
987
+ }
988
+ this.ActivityDetails.Description += comment;
989
+ this.eventList.add('ActivityCallNoteChanged');
990
+ this.debouncer.next();
991
+ };
992
+ RecentActivityComponent.prototype.submitActivity = function () {
993
+ this.ActivityDetails.IsProcessing = true;
994
+ this.EventEmitter.emit({
995
+ eventName: 'SubmitActivity',
996
+ idx: this.idx,
997
+ newValue: this.ActivityDetails
998
+ });
999
+ };
1000
+ __decorate([
1001
+ Input()
1002
+ ], RecentActivityComponent.prototype, "ActivityDetails", void 0);
1003
+ __decorate([
1004
+ Input()
1005
+ ], RecentActivityComponent.prototype, "isInConsoleView", void 0);
1006
+ __decorate([
1007
+ Input()
1008
+ ], RecentActivityComponent.prototype, "quickCommentList", void 0);
1009
+ __decorate([
1010
+ Input()
1011
+ ], RecentActivityComponent.prototype, "workingScenarioID", void 0);
1012
+ __decorate([
1013
+ Input()
1014
+ ], RecentActivityComponent.prototype, "idx", void 0);
1015
+ __decorate([
1016
+ Input()
1017
+ ], RecentActivityComponent.prototype, "last", void 0);
1018
+ __decorate([
1019
+ Input()
1020
+ ], RecentActivityComponent.prototype, "WhoObjectList", void 0);
1021
+ __decorate([
1022
+ Input()
1023
+ ], RecentActivityComponent.prototype, "WhatObjectList", void 0);
1024
+ __decorate([
1025
+ Output()
1026
+ ], RecentActivityComponent.prototype, "EventEmitter", void 0);
1027
+ RecentActivityComponent = __decorate([
1028
+ Component({
1029
+ selector: 'amc-recent-activity',
1030
+ template: "<div *ngIf=\"ActivityDetails.ScenarioId === workingScenarioID\">\r\n <div (click)=\"expandAndCollapseRecentActivity(false);\" class=\"editor callHeaderRecentActivitySelected\">\r\n <label class=\"headerLabelClickableLook\">\r\n <img [src]=\"getIcon(ActivityDetails.ChannelType)\" class=\"RecentCallsImg\" />\r\n <b>{{ ActivityDetails.Subject }}</b>\r\n </label>\r\n <img *ngIf=\"ActivityDetails.ActivityId\" class=\"RecentCallsImgForActivity\" src=\"../../assets/images/open_activity.png\"\r\n title=\"Open Activity\" (click)=\"openActivity();$event.stopPropagation();\" />\r\n <label *ngIf=\"ActivityDetails.IsUnSaved && isInConsoleView\" class=\"unsavedText\">unsaved</label>\r\n </div>\r\n <div class=\"callBody\">\r\n <div class=\"gray-out\" *ngIf=\"ActivityDetails.IsRecentWorkItemLoading\">\r\n <div class=\"spinner-container\">\r\n <img class=\"spinner\" src=\"../../assets/images/view_progress.gif\" />\r\n </div>\r\n </div>\r\n <div class=\"activityFields\">\r\n <!-- <form> -->\r\n <div class=\"editor displayDiv\">\r\n <label class=\"displayLabels\" title=\"Subject\">Subject</label>\r\n <input class=\"activitySubjectTextBoxStyle displayData\" type=\"text\" (change)=\"onSubjectChange();\"\r\n (keyup)=\"onSubjectKeyUp()\" name=\"subject\" [(ngModel)]=\"ActivityDetails.Subject\" />\r\n </div>\r\n <div class=\"editor displayDiv\">\r\n <label class=\"displayLabels\" title=\"Name\">Name</label>\r\n <select class=\"dropDownListStyle displayData\" [ngModel]=\"ActivityDetails.WhoObject.objectId\"\r\n (ngModelChange)=\"onWhoObjectChange($event)\" name=\"whoItem\">\r\n <option *ngFor=\"let whoItem of WhoObjectList\" [ngValue]=\"whoItem.objectId\">\r\n {{(whoItem.displayName && whoItem.objectName) ? (whoItem.displayName + ': ' + whoItem.objectName) : \"\" }}</option>\r\n <!-- <option value=\"UserSelectedForEmptyRecord\"></option> -->\r\n </select>\r\n </div>\r\n <div class=\"editor displayDiv\">\r\n <label class=\"displayLabels\" title=\"Regarding\">Related To</label>\r\n <select class=\"dropDownListStyle displayData\" [ngModel]=\"ActivityDetails.WhatObject.objectId\"\r\n (ngModelChange)=\"onRelatedToChange($event)\" name=\"whatItem\">\r\n <option *ngFor=\"let whatItem of WhatObjectList;\" [ngValue]=\"whatItem.objectId\">\r\n {{ (whatItem.displayName && whatItem.objectName) ? (whatItem.displayName + ': ' + whatItem.objectName) : \"\" }}</option>\r\n <!-- <option value=\"UserSelectedForEmptyRecord\"></option> -->\r\n </select>\r\n </div>\r\n <div class=\"editor displayDiv\">\r\n <div class=\"callNotesSection\">\r\n <div class=\"callNotesTextArea\">\r\n <textarea placeholder=\"Click to add a comment\" class=\"activityCommentsTextBoxStyle\"\r\n (change)=\"onCallNotesChange();\" (keyup)=\"onCallNotesKeyUp()\" name=\"description\" rows=\"5\" title=\"\"\r\n [(ngModel)]=\"ActivityDetails.Description\">\r\n </textarea>\r\n </div>\r\n <div class=\"notesBottonBorder\">\r\n <div class=\"commentsButtonDiv\">\r\n <div class=\"quickCommentsDiv\">\r\n <input *ngFor=\"let quickComment of quickCommentList; let i = index;\" class=\"quickNotesBotton\"\r\n type=\"button\" value=\"{{i+1}}\" (click)=\"addQuickCommentToDescription(quickComment)\"\r\n title=\"{{quickComment}}\">\r\n </div>\r\n <div class=\"callNotesButtonsSection\">\r\n <input class=\"submitButton\" type=\"button\" value=\"Save\" (click)=\"submitActivity()\"\r\n [disabled]=\"!ActivityDetails.IsUnSaved\" />\r\n <!-- <input *ngIf=\"recentScenario.IsProcessing\" class=\"submitButton\" type=\"button\" value=\"Save\" (click)=\"submitActivity(idx)\" [disabled]=\"!recentScenario.IsUnSaved\"/> -->\r\n <img *ngIf=\"ActivityDetails.IsProcessing\" class=\"loadingIcon\" src=\"../../assets/images/loading.gif\"\r\n title=\"Updating Activity\" />\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=\"ActivityDetails.ScenarioId !== workingScenarioID \">\r\n <div [class.callHeaderBottomBorder]='last' (click)=\"expandAndCollapseRecentActivity(true)\"\r\n class=\"editor callHeaderRecentActivityUnselected\">\r\n <label class=\"headerLabelClickableLook\">\r\n <img [src]=\"getIcon(ActivityDetails.ChannelType)\" class=\"RecentCallsImg\" />\r\n <b>{{ ActivityDetails.Subject }}</b>\r\n </label>\r\n <img *ngIf=\"ActivityDetails.ActivityId\" class=\"RecentCallsImgForActivity\" src=\"../../assets/images/open_activity.png\"\r\n title=\"Open Activity\" (click)=\"openActivity();$event.stopPropagation();\" />\r\n <label *ngIf=\"ActivityDetails.IsUnSaved && isInConsoleView\" class=\"unsavedText\">unsaved</label>\r\n </div>\r\n</div>\r\n\r\n",
1031
+ styles: [".callSection{margin-left:0;font-family:Arial;position:relative;margin-top:5px;background-color:#fff}.notesBottonBorder{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}.quickCommentsDiv{text-align:left;flex:1 0 0;flex-wrap:wrap;display:flex;margin:2px}.unsavedText{float:right;margin-right:5px;color:gray;font-style:italic}.quickNotesBotton{background-color:#1e72ba;border:0;color:#fff;height:70%;width:20px;margin:2px;outline:0;font-size:70%}.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}.commentsButtonDiv{width:100%;display:flex;align-items:center;background-color:#f6f7fb}.gray-out{top:0;left:0;position:absolute;z-index:2000;background:#fff;opacity:.7;width:100%;height:100%}.spinner-container{position:relative;width:-moz-fit-content;width:fit-content;top:50%;left:50%;transform:translate(-50%,-50%)}.spinner{height:80px;width:80px;border:0;position:relative;left:50%;transform:translate(-50%,0)}.callNotesButtonsSection{text-align:right;padding-right:4px}.ViewResizeImage{width:20px;height:20px;float:right;cursor:pointer}.callBody{border:1px solid #939598;border-top:1px solid #fff;position:relative}.callBodyBorderless{position:relative}.callDisplay{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:5px;box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box}.dropDownListStyle{border:1px solid #939598!important;border-radius:3px!important;width:70%!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:70%!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{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:100%;border:none}.displayDiv{width:100%;display:flex}.displayLabels{margin-left:5px;width:25%;overflow:hidden;text-overflow:ellipsis}.displayData{width:70%}.headerLabel{margin-left:10px}.activityFields{position:relative;z-index:0}.callNotesTextArea{background-color:#fff;border-bottom:1px solid #939598;border-top:1px solid #939598;border-top-left-radius:3px!important;border-top-right-radius:3px!important}.callNotesSection{float:left;height:100%;width:100%;background-color:#f6f7fb}.callHeaderRecentActivitySelected{cursor:pointer;border-left:1px solid #939598!important;border-right:1px solid #939598!important;background-color:#cfecf2!important;width:100%!important;margin-top:0!important}.callHeaderRecentActivityUnselected{cursor:pointer;border-left:1px solid #939598!important;border-right:1px solid #939598!important;background-color:#e6f4f7!important;width:100%!important;margin-top:0!important}.callHeader{border:1px solid #939598!important;background-color:#f4f5fb!important;width:100%!important;margin-top:0!important}.callHeaderBottomBorder{cursor:pointer;border-bottom:1px solid #939598!important;border-left:1px solid #939598!important;border-right:1px solid #939598!important;background-color:#e6f4f7!important;width:100%!important;margin-top:0!important}.RecentCallsImg{height:15px;vertical-align:text-bottom}.RecentCallsImgForActivity{height:15px;vertical-align:super;margin-right:5px}.headerLabelClickableLook{cursor:pointer;display:inline-block;margin-left:10px;max-width:80%;overflow:hidden;text-overflow:ellipsis}.loadingIcon{margin-left:auto;margin-right:5px;height:10px;width:30px;margin-top:5px;padding-bottom:0}input[type=button]:disabled{background-color:#d3d3d3;cursor:auto}"]
1032
+ })
1033
+ ], RecentActivityComponent);
1034
+ return RecentActivityComponent;
1035
+ }());
1036
+
1037
+ var CurrentActivityComponent = /** @class */ (function () {
1038
+ function CurrentActivityComponent() {
1039
+ this.isActivityMaximized = true;
1040
+ this.EventEmitter = new EventEmitter();
1041
+ this.debouncer = new Subject();
1042
+ this.eventList = new Set();
1043
+ }
1044
+ CurrentActivityComponent.prototype.ngOnInit = function () {
1045
+ return __awaiter(this, void 0, void 0, function () {
1046
+ var _this = this;
1047
+ return __generator(this, function (_a) {
1048
+ this.debouncer.pipe(debounceTime(500)).subscribe(function () {
1049
+ var newEvent = {
1050
+ eventName: Array.from(_this.eventList).join('|'),
1051
+ newValue: _this.ActivityDetails
1052
+ };
1053
+ _this.EventEmitter.emit(newEvent);
1054
+ _this.eventList.clear();
1055
+ });
1056
+ return [2 /*return*/];
1057
+ });
1058
+ });
1059
+ };
1060
+ CurrentActivityComponent.prototype.submitActivity = function () {
1061
+ try {
1062
+ this.ActivityDetails.IsProcessing = true;
1063
+ this.EventEmitter.emit({
1064
+ eventName: 'SubmitActivity',
1065
+ newValue: this.ActivityDetails
1066
+ });
1067
+ }
1068
+ catch (error) { }
1069
+ };
1070
+ CurrentActivityComponent.prototype.triggerDiscardActivity = function () {
1071
+ try {
1072
+ this.EventEmitter.emit({
1073
+ eventName: 'TriggerDiscardActivity',
1074
+ newValue: this.ActivityDetails
1075
+ });
1076
+ }
1077
+ catch (error) { }
1078
+ };
1079
+ CurrentActivityComponent.prototype.onNameChange = function (event) {
1080
+ try {
1081
+ this.ActivityDetails.WhoObject = this.WhoObjectList.find(function (obj) { return obj.objectId === event; });
1082
+ this.EventEmitter.emit({
1083
+ eventName: 'ActivityWhoObjectChanged',
1084
+ newValue: this.ActivityDetails
1085
+ });
1086
+ }
1087
+ catch (error) { }
1088
+ };
1089
+ CurrentActivityComponent.prototype.onRelatedToChange = function (event) {
1090
+ try {
1091
+ this.ActivityDetails.WhatObject = this.WhatObjectList.find(function (obj) { return obj.objectId === event; });
1092
+ this.EventEmitter.emit({
1093
+ eventName: 'ActivityWhatObjectChanged',
1094
+ newValue: this.ActivityDetails
1095
+ });
1096
+ }
1097
+ catch (error) { }
1098
+ };
1099
+ CurrentActivityComponent.prototype.onSubjectChange = function () {
1100
+ try {
1101
+ this.eventList.add('ActivitySubjectChanged');
1102
+ this.debouncer.next();
1103
+ }
1104
+ catch (error) { }
1105
+ };
1106
+ CurrentActivityComponent.prototype.onSubjectKeyUp = function () {
1107
+ try {
1108
+ this.eventList.add('ActivitySubjectChanged');
1109
+ this.debouncer.next();
1110
+ }
1111
+ catch (error) { }
1112
+ };
1113
+ CurrentActivityComponent.prototype.onCallNotesChange = function () {
1114
+ try {
1115
+ this.eventList.add('ActivityCallNoteChanged');
1116
+ this.debouncer.next();
1117
+ }
1118
+ catch (error) { }
1119
+ };
1120
+ CurrentActivityComponent.prototype.onCallNotesKeyUp = function () {
1121
+ try {
1122
+ this.eventList.add('ActivityCallNoteChanged');
1123
+ this.debouncer.next();
1124
+ }
1125
+ catch (error) { }
1126
+ };
1127
+ CurrentActivityComponent.prototype.addQuickCommentToDescription = function (comment) {
1128
+ try {
1129
+ var descriptionToSet = comment;
1130
+ if (this.quickCommentOptionRequiredCadArray[comment]) {
1131
+ var cadFields = {};
1132
+ if (this.ActivityDetails) {
1133
+ cadFields = this.scenarioToCADMap[this.ActivityDetails.ScenarioId];
1134
+ }
1135
+ for (var i = 0; i < this.quickCommentOptionRequiredCadArray[comment].length; i++) {
1136
+ var keyToCheckIfCADExists = this.quickCommentOptionRequiredCadArray[comment][i];
1137
+ var stringToBeReplaced = this.quickCommentOptionRequiredCadArray[comment][i];
1138
+ keyToCheckIfCADExists = keyToCheckIfCADExists.replace('{{', '');
1139
+ keyToCheckIfCADExists = keyToCheckIfCADExists.replace('}}', '');
1140
+ if (cadFields[keyToCheckIfCADExists]) {
1141
+ descriptionToSet = descriptionToSet.replace(stringToBeReplaced, cadFields[keyToCheckIfCADExists].Value);
1142
+ }
1143
+ }
1144
+ }
1145
+ if (this.ActivityDetails.Description) {
1146
+ this.ActivityDetails.Description += '\n';
1147
+ }
1148
+ this.ActivityDetails.Description += descriptionToSet;
1149
+ this.eventList.add('ActivityCallNoteChanged');
1150
+ this.debouncer.next();
1151
+ }
1152
+ catch (error) { }
1153
+ };
1154
+ CurrentActivityComponent.prototype.parseWhoObject = function (whoObject) {
1155
+ try {
1156
+ return whoObject.displayName + ': ' + whoObject.objectName;
1157
+ }
1158
+ catch (error) { }
1159
+ };
1160
+ CurrentActivityComponent.prototype.parseWhatObject = function (whatObject) {
1161
+ try {
1162
+ return whatObject.displayName + ': ' + whatObject.objectName;
1163
+ }
1164
+ catch (error) { }
1165
+ };
1166
+ __decorate([
1167
+ Input()
1168
+ ], CurrentActivityComponent.prototype, "ActivityDetails", void 0);
1169
+ __decorate([
1170
+ Input()
1171
+ ], CurrentActivityComponent.prototype, "quickCommentList", void 0);
1172
+ __decorate([
1173
+ Input()
1174
+ ], CurrentActivityComponent.prototype, "isAutoSave", void 0);
1175
+ __decorate([
1176
+ Input()
1177
+ ], CurrentActivityComponent.prototype, "enableDiscard", void 0);
1178
+ __decorate([
1179
+ Input()
1180
+ ], CurrentActivityComponent.prototype, "autoSaveTimer", void 0);
1181
+ __decorate([
1182
+ Input()
1183
+ ], CurrentActivityComponent.prototype, "quickCommentOptionRequiredCadArray", void 0);
1184
+ __decorate([
1185
+ Input()
1186
+ ], CurrentActivityComponent.prototype, "WhoObjectList", void 0);
1187
+ __decorate([
1188
+ Input()
1189
+ ], CurrentActivityComponent.prototype, "WhatObjectList", void 0);
1190
+ __decorate([
1191
+ Input()
1192
+ ], CurrentActivityComponent.prototype, "scenarioToCADMap", void 0);
1193
+ __decorate([
1194
+ Output()
1195
+ ], CurrentActivityComponent.prototype, "EventEmitter", void 0);
1196
+ CurrentActivityComponent = __decorate([
1197
+ Component({
1198
+ selector: 'amc-current-activity',
1199
+ 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\"\r\n title=\"Collapse\"><img *ngIf=\"enableDiscard\" class=\"DiscardImage\" src=\"assets/images/Discard.png\"\r\n (click)=\"triggerDiscardActivity()\" title=\"Discard\">\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=\"Name\">Name</label>\r\n <select class=\"dropDownListStyle displayData\" [ngModel]=\"ActivityDetails.WhoObject.objectId\" (ngModelChange)=\"onNameChange($event)\" name=\"whoItem\">\r\n <option *ngFor=\"let whoItem of WhoObjectList\" [ngValue]=\"whoItem.objectId\">{{ (whoItem.displayName && whoItem.objectName) ? (whoItem.displayName + ': ' +\r\n whoItem.objectName) : \"\"}}</option>\r\n <!-- <option value=\"UserSelectedForEmptyRecord\"></option> -->\r\n </select>\r\n </div>\r\n <div class=\"editor displayDiv\"\r\n *ngIf='(ActivityDetails.WhoObject && ActivityDetails.WhoObject.objectType !== \"Lead\")'>\r\n <label class=\"displayLabels\" title=\"Related To\">Related To</label>\r\n <select class=\"dropDownListStyle displayData\" (ngModelChange)=\"onRelatedToChange($event)\"\r\n [ngModel]=\"ActivityDetails.WhatObject.objectId\" name=\"whatItem\">\r\n <option *ngFor=\"let whatItem of WhatObjectList;\" [ngValue]=\"whatItem.objectId\">\r\n {{ (whatItem.displayName && whatItem.objectName) ? (whatItem.displayName + ': ' + whatItem.objectName) : \"\" }}</option>\r\n <!-- <option value=\"UserSelectedForEmptyRecord\"></option> -->\r\n </select>\r\n </div>\r\n <div class=\"editor displayDiv\">\r\n <label class=\"displayLabels\" title=\"Subject\">Subject</label>\r\n <input class=\"activitySubjectTextBoxStyle displayData\" (change)=\"onSubjectChange()\" type=\"text\"\r\n name=\"subject\" (keyup)=\"onSubjectKeyUp()\" [(ngModel)]=\"ActivityDetails.Subject\">\r\n </div>\r\n <div class=\"editor displayDiv\">\r\n <div class=\"callNotesSection\">\r\n <div class=\"callNotesTextArea\">\r\n <textarea [(ngModel)]=\"ActivityDetails.Description\" placeholder=\"Click to add a comment\"\r\n class=\"activityCommentsTextBoxStyle\" (change)=\"onCallNotesChange()\" name=\"description\"\r\n (keyup)=\"onCallNotesKeyUp()\" cols=\"20\" rows=\"2\" title=\"\"></textarea>\r\n </div>\r\n <div class=\"notesBottonBorder\">\r\n <div class=\"commentsButtonDiv\">\r\n <div class=\"quickCommentsDiv\">\r\n <input *ngFor=\"let quickComment of quickCommentList; let i = index;\"\r\n class=\"quickNotesBotton\" type=\"button\" value=\"{{i+1}}\"\r\n (click)=\"addQuickCommentToDescription(quickComment)\" title=\"{{quickComment}}\">\r\n </div>\r\n <div class=\"callNotesButtonsSection\">\r\n <input class=\"submitButton\" type=\"button\" value=\"Save\"\r\n (click)=\"submitActivity()\" [disabled]=\"!ActivityDetails.IsUnSaved\" />\r\n <!-- TOsDO check this Isprocessing -->\r\n <!-- <input *ngIf=\"!storageService.getActivity().IsProcessing\" class=\"submitButton\" type=\"button\" value=\"Save\" (click)=\"submitActivity(storageService.getActivity().ScenarioId)\" [disabled]=\"!isChangesUnSaved(this.scenarioId)\" /> -->\r\n <img *ngIf=\"ActivityDetails.IsProcessing\" class=\"loadingIcon\"\r\n src=\"assets/images/loading.gif\" title=\"Updating Activity\" />\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\"\r\n title=\"Expand\">\r\n </div>\r\n</div>\r\n",
1200
+ styles: [".imageExpandCollapse{float:right;width:20px;height:20px}.miscSection{position:relative;margin-top:20px;background-color:#e5e6f2}.callHeader{background-color:#f4f5fb!important;width:100%!important;margin-top:0!important;border:1px solid #939598!important}.notesBottonBorder{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}.quickNotesBotton{background-color:#1e72ba;border:0;color:#fff;height:70%;width:20px;margin:2px;outline:0;font-size:70%}.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}.callBody{border:1px solid #939598;border-top:1px solid #939598;position:relative}.miscIcons{width:20px;height:20px;float:right;margin-top:4px;margin-right:5px;margin-left:5px}.amcIcon{width:50%;height:20px;margin-top:5px;margin-left:10px}.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}.AnswerCallImages{width:28px;height:20px;margin:6px 0 0 5px}.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}.displayDiv{width:100%;display:flex}.displayLabels{margin-left:5px;width:25%;margin-right:2px}.displayData{width:70%}.commentsButtonDiv{width:100%;display:flex;align-items:center;background-color:#f6f7fb}.quickCommentsDiv{text-align:left;flex:1 0 0;flex-wrap:wrap;display:flex;margin:2px}.callNotesButtonsSection{text-align:right;padding-right:4px}.newEntityImages{width:25px;height:25px;margin-top:2px;cursor:pointer;padding-left:5px}body{font-size:.85em;color:#232323;background-color:#fff;font-family:Arial}.callNotesSection{float:left;height:100%;width:100%;margin-right:5px;margin-left:5px;margin-bottom:5px}.ViewResizeImage{width:20px;height:20px;float:right;cursor:pointer}.DiscardImage{padding-top:2px;width:15px;height:18px;float:right;cursor:pointer}.headerLabel{margin-left:10px}.callNotesTextArea{background-color:#fff;border-left:1px solid #939598;border-bottom:1px solid #939598;border-right:1px solid #939598;border-top:1px solid #939598;border-top-left-radius:3px!important;border-top-right-radius:3px!important}.loadingIcon{float:right;margin-right:5px;height:10px;width:30px;margin-top:8px;padding-bottom:0}input[type=button]:disabled{background-color:#d3d3d3;cursor:auto}"]
1201
+ })
1202
+ ], CurrentActivityComponent);
1203
+ return CurrentActivityComponent;
1204
+ }());
1205
+
1206
+ var SearchInformationComponent = /** @class */ (function () {
1207
+ function SearchInformationComponent() {
1208
+ this.isSearchInformationMaximized = true;
1209
+ this.singleMatchData = null;
1210
+ this.multiMatchData = [];
1211
+ this.agentSelectedCallerInformation = new EventEmitter();
1212
+ }
1213
+ SearchInformationComponent.prototype.ngOnChanges = function () {
1214
+ this.renderData();
1215
+ };
1216
+ SearchInformationComponent.prototype.renderData = function () {
1217
+ try {
1218
+ this.singleMatchData = null;
1219
+ this.multiMatchData = [];
1220
+ this.shouldShowAllMultiMatchOptions = false;
1221
+ if (this.searchRecordList.length === 1) {
1222
+ this.singleMatchData = this.parseSearchRecordForNameSingleMatch(this.searchRecordList[0]);
1223
+ }
1224
+ else if (this.searchRecordList.length > 1) {
1225
+ for (var i = 0; i < this.searchRecordList.length; i++) {
1226
+ this.multiMatchData.push(this.parseSearchRecordForNameMultiMatch(this.searchRecordList[i]));
1227
+ }
1228
+ }
1229
+ }
1230
+ catch (error) { }
1231
+ };
1232
+ SearchInformationComponent.prototype.onAgentSelectedCallerInformation = function (event) {
1233
+ try {
1234
+ this.agentSelectedCallerInformation.emit({
1235
+ id: event.target.id,
1236
+ value: event.target.value
1237
+ });
1238
+ }
1239
+ catch (error) { }
1240
+ };
1241
+ SearchInformationComponent.prototype.parseSearchRecordForNameSingleMatch = function (searchRecord) {
1242
+ var results = [];
1243
+ try {
1244
+ var src = this.getEntityImgToDisplay(searchRecord);
1245
+ this.singleMatchIconSrc = src;
1246
+ var sLayoutInfo = this.getSearchLayoutInfoForDisplay(searchRecord);
1247
+ for (var j = 0; j < sLayoutInfo.DisplayFields.length; j++) {
1248
+ if (sLayoutInfo.DisplayFields && sLayoutInfo.DisplayFields[j].DevName) {
1249
+ var nameKey = sLayoutInfo.DisplayFields[j].DevName;
1250
+ var keys = Object.keys(searchRecord.fields);
1251
+ for (var i = 0; i < keys.length; i++) {
1252
+ if (searchRecord.fields[keys[i]] &&
1253
+ searchRecord.fields[keys[i]].DevName === nameKey) {
1254
+ var displayRecord = searchRecord.fields[keys[i]].Value;
1255
+ if (j === 0) {
1256
+ displayRecord = searchRecord.displayName
1257
+ ? [searchRecord.displayName, displayRecord]
1258
+ : [searchRecord.type, displayRecord];
1259
+ }
1260
+ else {
1261
+ displayRecord = sLayoutInfo.DisplayFields[j].DisplayName
1262
+ ? [sLayoutInfo.DisplayFields[j].DisplayName, displayRecord]
1263
+ : [sLayoutInfo.DisplayFields[j].DevName, displayRecord];
1264
+ }
1265
+ results.push(displayRecord);
1266
+ }
1267
+ }
1268
+ }
1269
+ }
1270
+ }
1271
+ catch (error) { }
1272
+ return results;
1273
+ };
1274
+ SearchInformationComponent.prototype.parseSearchRecordForNameMultiMatch = function (searchRecord) {
1275
+ var results = [];
1276
+ try {
1277
+ var src = this.getEntityImgToDisplay(searchRecord);
1278
+ var sLayoutInfo = this.getSearchLayoutInfoForDisplay(searchRecord);
1279
+ for (var j = 0; j < sLayoutInfo.DisplayFields.length; j++) {
1280
+ if (sLayoutInfo.DisplayFields && sLayoutInfo.DisplayFields[j].DevName) {
1281
+ var nameKey = sLayoutInfo.DisplayFields[j].DevName;
1282
+ var keys = Object.keys(searchRecord.fields);
1283
+ for (var i = 0; i < keys.length; i++) {
1284
+ if (searchRecord.fields[keys[i]] &&
1285
+ searchRecord.fields[keys[i]].DevName === nameKey) {
1286
+ var displayRecord = searchRecord.fields[keys[i]].Value;
1287
+ if (j === 0) {
1288
+ displayRecord = searchRecord.displayName
1289
+ ? [searchRecord.displayName, displayRecord]
1290
+ : [searchRecord.type, displayRecord];
1291
+ }
1292
+ else {
1293
+ displayRecord = sLayoutInfo.DisplayFields[j].DisplayName
1294
+ ? [sLayoutInfo.DisplayFields[j].DisplayName, displayRecord]
1295
+ : [sLayoutInfo.DisplayFields[j].DevName, displayRecord];
1296
+ }
1297
+ displayRecord.push(src);
1298
+ results.push(displayRecord);
1299
+ return results;
1300
+ }
1301
+ }
1302
+ }
1303
+ }
1304
+ }
1305
+ catch (error) { }
1306
+ return results;
1307
+ };
1308
+ SearchInformationComponent.prototype.getEntityImgToDisplay = function (searchRecord) {
1309
+ var src = '';
1310
+ try {
1311
+ if (searchRecord.type) {
1312
+ if (searchRecord.type.toUpperCase() === 'CONTACT') {
1313
+ src = '../../assets/images/Icon_Contact.png';
1314
+ }
1315
+ else if (searchRecord.type.toUpperCase() === 'ACCOUNT') {
1316
+ src = '../../assets/images/Icon_Account.png';
1317
+ }
1318
+ else if (searchRecord.type.toUpperCase() === 'LEAD') {
1319
+ src = '../../assets/images/Icon_Lead.png';
1320
+ }
1321
+ else {
1322
+ src = '../../assets/images/Miscellaneous_Icon.png';
1323
+ }
1324
+ }
1325
+ }
1326
+ catch (error) { }
1327
+ return src;
1328
+ };
1329
+ SearchInformationComponent.prototype.getSearchLayoutInfoForDisplay = function (searchRecord) {
1330
+ var layoutInfo;
1331
+ try {
1332
+ layoutInfo = this.searchLayout.layouts[0][this.ActivityDetails.CallType].find(function (i) { return i.DevName === searchRecord.type; });
1333
+ }
1334
+ catch (error) { }
1335
+ return layoutInfo;
1336
+ };
1337
+ __decorate([
1338
+ Input()
1339
+ ], SearchInformationComponent.prototype, "ActivityDetails", void 0);
1340
+ __decorate([
1341
+ Input()
1342
+ ], SearchInformationComponent.prototype, "searchLayout", void 0);
1343
+ __decorate([
1344
+ Input()
1345
+ ], SearchInformationComponent.prototype, "searchRecordList", void 0);
1346
+ __decorate([
1347
+ Output()
1348
+ ], SearchInformationComponent.prototype, "agentSelectedCallerInformation", void 0);
1349
+ SearchInformationComponent = __decorate([
1350
+ Component({
1351
+ selector: 'amc-search-information',
1352
+ template: "<div class=\"callDisplay\">\r\n <div class=\"editor callHeader\">\r\n <label class=\"headerLabel\">\r\n <b>Caller Information</b>\r\n </label>\r\n <img\r\n title=\"Multiple Matches Available\"\r\n *ngIf=\"this.searchRecordList.length > 1\"\r\n src=\"../../assets/images/MultiMatchAlert.png\"\r\n class=\"multiMatchImg\"\r\n />\r\n <img\r\n *ngIf=\"isSearchInformationMaximized\"\r\n class=\"ViewResizeImage\"\r\n src=\"assets/images/section_collapse.png\"\r\n (click)=\"isSearchInformationMaximized = false\"\r\n title=\"Collapse\"\r\n />\r\n <img\r\n *ngIf=\"!isSearchInformationMaximized\"\r\n class=\"ViewResizeImage\"\r\n src=\"assets/images/section_expand.png\"\r\n (click)=\"isSearchInformationMaximized = true\"\r\n title=\"Expand\"\r\n />\r\n </div>\r\n <div class=\"callBody\" *ngIf=\"isSearchInformationMaximized\">\r\n <div *ngIf=\"this.searchRecordList.length > 1\">\r\n <span class=\"overflowWrapper\">\r\n <img\r\n class=\"CRMResultImageMultiMatch\"\r\n src=\"{{ this.multiMatchData[0][0][2] }}\"\r\n />\r\n <input\r\n id=\"{{ this.searchRecordList[0].id }}\"\r\n name=\"{{ this.multiMatchData[0][0][1] }}\"\r\n (click)=\"onAgentSelectedCallerInformation($event)\"\r\n readonly\r\n class=\"multiMatchLabel\"\r\n title=\"{{ this.multiMatchData[0][0][1] }}\"\r\n type=\"text\"\r\n value=\"{{ this.multiMatchData[0][0][1] }}\"\r\n />\r\n <span style=\"float: right; margin-right: 4%;\">\r\n <img\r\n *ngIf=\"!this.shouldShowAllMultiMatchOptions\"\r\n class=\"CRMExpandImage\"\r\n src=\"../../assets/images/down-arrow.png\"\r\n (click)=\"shouldShowAllMultiMatchOptions = true\"\r\n />\r\n <img\r\n *ngIf=\"this.shouldShowAllMultiMatchOptions\"\r\n class=\"CRMExpandImage\"\r\n src=\"../../assets/images/up-arrow.png\"\r\n (click)=\"shouldShowAllMultiMatchOptions = false\"\r\n />\r\n </span>\r\n </span>\r\n <div *ngIf=\"this.shouldShowAllMultiMatchOptions\">\r\n <div *ngFor=\"let i of this.multiMatchData | slice: 1; let index = index\">\r\n <span\r\n class=\"overflowWrapper\"\r\n >\r\n <img class=\"CRMResultImageMultiMatch\" src=\"{{ i[0][2] }}\" />\r\n <input\r\n id=\"{{ this.searchRecordList[index + 1].id }}\"\r\n name=\"{{ i[0][1] }}\"\r\n readonly\r\n class=\"multiMatchLabel\"\r\n (click)=\"onAgentSelectedCallerInformation($event)\"\r\n title=\"{{ i[0][1] }}\"\r\n type=\"text\"\r\n value=\"{{ i[0][1] }}\"\r\n />\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- Below is the HTML loaded on Single Match -->\r\n <div *ngIf=\"this.searchRecordList.length === 1\">\r\n <div\r\n class=\"editorFull displayDiv\"\r\n *ngFor=\"\r\n let i of this.singleMatchData | slice: 0:1;\r\n let index = index;\r\n let first = first\r\n \"\r\n >\r\n <span class=\"overflowWrapper\">\r\n <img\r\n id=\"EntityIcon\"\r\n src=\"{{ this.singleMatchIconSrc }}\"\r\n class=\"CRMResultImage\"\r\n />\r\n <input\r\n class=\"singleSearchResultSelect singleMatchFirstWrapper \"\r\n id=\"{{ this.searchRecordList[0].id }}\"\r\n [class.firstSingleMatchResult]=\"first\"\r\n value=\"{{ i[1] }}\"\r\n title=\"{{ i[1] }}\"\r\n (click)=\"onAgentSelectedCallerInformation($event)\"\r\n readonly\r\n />\r\n </span>\r\n </div>\r\n <div\r\n class=\"editorFull displayDiv\"\r\n *ngFor=\"\r\n let i of this.singleMatchData | slice: 1;\r\n let index = index;\r\n let first = first\r\n \"\r\n >\r\n <span class=\"overflowWrapper\">\r\n <label title=\"{{ i[0] }}\" class=\"displayLabelsTabbed\">{{\r\n i[0]\r\n }}</label>\r\n <input\r\n class=\"singleSearchResultSelect singleMatchTabbedItemsWrapper singleMatchLabel\"\r\n id=\"{{ this.searchRecordList[0].id }}\"\r\n value=\"{{ i[1] }}\"\r\n title=\"{{ i[1] }}\"\r\n readonly\r\n />\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n",
1353
+ styles: [".callHeader{background-color:#f4f5fb!important;width:100%!important;margin-top:0!important;border:1px solid #939598!important}.displayDiv{width:100%;display:flex}.multiMatchImg{height:18px;margin-left:5px}.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}.editorFull{font-size:.9em;width:100%;text-align:left;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}.CRMResultImage{width:18px;height:18px;margin-right:-5px;margin-top:-5px;margin-left:5px}.CRMResultImageMultiMatch{width:18px;height:18px;margin-right:2px;margin-left:5px;margin-top:-5px}.CRMExpandImage{width:6px;height:6px;cursor:pointer;margin-bottom:2px}.callBody{border:1px solid #939598;border-top:1px solid #939598;position:relative}.callDisplay{margin-bottom:8px;display:grid;background-color:#fff;display:grid}.multipleSearchResultSelect{border:1px solid #939598!important;border-radius:3px!important;width:96%!important;height:20px!important;text-align:left!important;white-space:nowrap!important;text-overflow:ellipsis!important;margin:5px 0 5px 6px;cursor:pointer}.overflowWrapper{width:100%;overflow-x:hidden;overflow-y:hidden}.singleSearchResultSelect{border:0 solid #939598!important;height:20px!important;text-align:left!important;white-space:nowrap!important;text-overflow:ellipsis!important;margin:0;outline:0}.wrapper{width:79%!important}.singleMatchFirstWrapper{cursor:pointer;border:0;outline:0;overflow:hidden;text-overflow:ellipsis;display:inline-block;width:calc(100% - 30px)}.singleMatchTabbedItemsWrapper{width:70%}.displayLabels{margin-left:5px;width:calc(20% + 5px);font-weight:400;margin-bottom:0;margin-top:0;outline:0;overflow:hidden;max-width:100px;vertical-align:middle}.displayLabelsMultiMatch{margin-left:5px;width:calc(20% + 5px);font-weight:400;margin-bottom:0;margin-top:0;outline:0}.displayLabelsTabbed{margin-left:5px;width:35%;font-weight:400;margin-bottom:0;margin-top:0;outline:0;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.matchedRecordsMargin{margin-top:1%}.ViewResizeImage{width:20px;height:20px;float:right;cursor:pointer}.headerLabel{margin-left:10px}.firstSingleMatchResult{font-weight:700;border:0 solid #939598!important;height:20px!important;text-align:left!important;white-space:nowrap!important;text-overflow:ellipsis!important;margin:0 0 0 5px;outline:0}.multiMatchLabel{border:0;cursor:pointer;outline:0;overflow:hidden;text-overflow:ellipsis;display:inline-block;width:calc(95% - 45px)}.singleMatchLabel{border:0;outline:0;overflow:hidden;text-overflow:ellipsis;display:inline-block;width:calc(65% - 13px)}"]
1354
+ })
1355
+ ], SearchInformationComponent);
1356
+ return SearchInformationComponent;
1357
+ }());
1358
+
854
1359
  var UILibraryModule = /** @class */ (function () {
855
1360
  function UILibraryModule(injector) {
856
1361
  this.injector = injector;
@@ -883,7 +1388,7 @@ var UILibraryModule = /** @class */ (function () {
883
1388
  ]; };
884
1389
  UILibraryModule = __decorate([
885
1390
  NgModule({
886
- imports: [BrowserModule, CommonModule, FormsModule],
1391
+ imports: [BrowserModule, CommonModule, FormsModule, MatTabsModule],
887
1392
  declarations: [
888
1393
  InteractionComponent,
889
1394
  ScenarioComponent,
@@ -895,11 +1400,16 @@ var UILibraryModule = /** @class */ (function () {
895
1400
  ChatMessageComponent,
896
1401
  DispositionComponent,
897
1402
  ActivityComponent,
898
- LoginComponent
1403
+ LoginComponent,
1404
+ CreateComponent,
1405
+ RecentActivityComponent,
1406
+ CurrentActivityComponent,
1407
+ SearchInformationComponent
899
1408
  ],
900
- entryComponents: [ScenarioComponent, DispositionComponent, LoginComponent],
1409
+ providers: [],
1410
+ entryComponents: [ScenarioComponent, DispositionComponent, LoginComponent, CreateComponent, RecentActivityComponent, CurrentActivityComponent, SearchInformationComponent],
901
1411
  bootstrap: [],
902
- exports: [ScenarioComponent, DispositionComponent, LoginComponent]
1412
+ exports: [ScenarioComponent, DispositionComponent, LoginComponent, CreateComponent, RecentActivityComponent, CurrentActivityComponent, SearchInformationComponent]
903
1413
  })
904
1414
  ], UILibraryModule);
905
1415
  return UILibraryModule;
@@ -909,5 +1419,5 @@ var UILibraryModule = /** @class */ (function () {
909
1419
  * Generated bundle index. Do not edit.
910
1420
  */
911
1421
 
912
- export { IChatMessageType, Property, UILibraryModule, ValueType, InteractionComponent as ɵa, ScenarioComponent as ɵb, OperationComponent as ɵc, PropertyComponent as ɵd, HoldtimerComponent as ɵe, DurationComponent as ɵf, ChatBoxComponent as ɵg, ChatMessageComponent as ɵh, DispositionComponent as ɵi, ActivityComponent as ɵj, LoginComponent as ɵk };
1422
+ export { IChatMessageType, Property, UILibraryModule, ValueType, InteractionComponent as ɵa, ScenarioComponent as ɵb, OperationComponent as ɵc, PropertyComponent as ɵd, HoldtimerComponent as ɵe, DurationComponent as ɵf, ChatBoxComponent as ɵg, ChatMessageComponent as ɵh, DispositionComponent as ɵi, ActivityComponent as ɵj, LoginComponent as ɵk, CreateComponent as ɵl, RecentActivityComponent as ɵm, CurrentActivityComponent as ɵn, SearchInformationComponent as ɵo };
913
1423
  //# sourceMappingURL=amc-technology-ui-library.js.map