File

projects/UILibrary/src/app/components/scenario/scenario.component.ts

Implements

AfterViewChecked

Metadata

Index

Methods
Inputs
Outputs

Constructor

constructor()

Inputs

scenario
Type : IScenario

Outputs

afterViewChecked
Type : EventEmitter
isAgentTyping
Type : EventEmitter
minimizedChanged
Type : EventEmitter
newMessage
Type : EventEmitter

Methods

ngAfterViewChecked
ngAfterViewChecked()
Returns : void
onMinimizedChanged
onMinimizedChanged()
Returns : void
import {
  Component,
  Input,
  Output,
  EventEmitter,
  AfterViewInit,
  AfterViewChecked
} from '@angular/core';
import { IScenario } from '../../models/uilibrary.model';

@Component({
  selector: 'amc-scenario',
  templateUrl: './scenario.component.html',
  styleUrls: ['./scenario.component.scss', './../uilibrary.module.scss']
})
export class ScenarioComponent implements AfterViewChecked {
  @Input() scenario: IScenario;
  @Output() minimizedChanged = new EventEmitter();
  @Output() isAgentTyping = new EventEmitter<boolean>();
  @Output() newMessage = new EventEmitter<string>();
  @Output() afterViewChecked = new EventEmitter();

  constructor() {}

  ngAfterViewChecked() {
    this.afterViewChecked.emit();
  }

  onMinimizedChanged() {
    this.minimizedChanged.emit();
  }
}
<ng-container *ngIf="scenario && scenario.interactions">
  <amc-interaction *ngFor="let interaction of scenario.interactions" [interaction]="interaction"
    (minimizedChanged)="onMinimizedChanged()" (isAgentTyping)="isAgentTyping.emit($event)"
    (newMessage)="newMessage.emit($event)">
  </amc-interaction>
</ng-container>

./scenario.component.scss

./../uilibrary.module.scss

/* You can add global styles to this file, and also import other style files */

body {
  padding-top: 5px;
  padding-bottom: 5px;
  margin: 0px;
}

.login {
  width: 20px;
  height: 20px;
  display: block;
  margin-top: 2px;
  margin-left: auto;
  margin-right: auto;
}

.editor {
  font-size: 0.9em;
  text-align: left;
  margin: 4px 5% 0px 0px;
  font-family: Arial;
  white-space: nowrap;
  /*overflow: hidden;*/
  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: 0.95em;
  float: left;
  width: 30%;
  margin-left: 2%;
  text-align: left;
  color: black;
  font-family: Arial;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-top: 0;
  padding-top: 0;
}

.editorHyperLink input[type="text"] {
  font-size: 0.95em;
  width: 60%;
  text-align: left;
  margin: 0 5% 0 0px;
  color: #318fc5;
  cursor: pointer;
  font-family: Arial;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  border: 0;
  padding-top: 0;
  box-sizing: border-box;
  /* Opera/IE 8+ */
  -webkit-box-sizing: border-box;
  /* Safari/Chrome, other WebKit */
  -moz-box-sizing: border-box;
  /* Firefox, other Gecko */
}

.AnswerCallImages {
  height: 20px;
  margin: 5px;
}

.AnswerCallFocused {
  border: 1px solid #939598;
  margin-left: 0px;
  font-family: Arial;
  position: relative;
  background-color: #ffffff;
  width: 100%;
  box-sizing: border-box;
}

.ViewExpandImage {
  width: 20px;
  height: 20px;
  float: right;
  cursor: pointer;
}

.ViewCollapseImage {
  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: 0.85em;
}

.callHeaderTop {
  border-bottom: 1px solid;
  background-color: #f4f5fb;
  width: 100%;
  margin-top: 0px;
}

.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: none;
}

.callOptions {
  background-color: #f6f7fb;
  bottom: 0px;
  width: 100%;
  text-align: center;
}

.directionText {
  font-size: 0.8em;
  margin-left: 2px;
}

.phoneNumberValue {
  font-weight: bold;
  font-size: 1em;
  margin-left: 5px;
}

.durationInput {
  background-color: transparent;
  border: 0px;
  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: 0px;
  width: 100%;
}

.verticalDivider {
  margin-left: 2px;
  float: left;
}

.callImage {
  height: 20px;
}
Legend
Html element
Component
Html element with directive

results matching ""

    No results matching ""