@annalib/anna-core 28.6.30 → 28.7.1
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.
- package/esm2022/lib/anna-core-shared-lib/components/anna-circular-progress/anna-circular-progress.component.mjs +52 -0
- package/esm2022/lib/anna-core-shared-lib/components/anna-icon-column/anna-icon-column.component.mjs +5 -5
- package/esm2022/lib/anna-core-shared-lib/constants/shared.constant.mjs +2 -2
- package/esm2022/lib/anna-core-shared-lib/models/anna-non-editable-gt-models.mjs +2 -1
- package/esm2022/lib/anna-core-shared-lib/models/anna-tooltip.model.mjs +4 -2
- package/esm2022/lib/anna-core-shared-lib/services/anna-filter.service.mjs +67 -11
- package/esm2022/lib/anna-core-shared-lib/services/anna-global-config.service.mjs +16 -57
- package/esm2022/lib/anna-core-shared-lib/services/anna-number-format.service.mjs +14 -1
- package/esm2022/lib/anna-core-shared-lib/services/anna-persisting-filter.service.mjs +5 -1
- package/esm2022/lib/anna-core.module.mjs +4 -10
- package/esm2022/lib/anna-dropdown-lib/components/anna-calendar-filter/anna-calendar-filter.component.mjs +2 -2
- package/esm2022/lib/anna-dropdown-lib/components/anna-week-calendar-filter/anna-week-calendar-filter.component.mjs +4 -4
- package/esm2022/lib/anna-generic-table-lib/components/anna-column-filters/anna-column-checkbox-filter/anna-column-checkbox-filter.component.mjs +6 -3
- package/esm2022/lib/anna-generic-table-lib/components/anna-non-editable-generic-table/anna-non-editable-generic-table.component.mjs +37 -10
- package/esm2022/public-api.mjs +2 -3
- package/fesm2022/annalib-anna-core.mjs +212 -141
- package/fesm2022/annalib-anna-core.mjs.map +1 -1
- package/lib/anna-core-shared-lib/components/anna-circular-progress/anna-circular-progress.component.d.ts +20 -0
- package/lib/anna-core-shared-lib/components/anna-icon-column/anna-icon-column.component.d.ts +1 -1
- package/lib/anna-core-shared-lib/constants/shared.constant.d.ts +1 -1
- package/lib/anna-core-shared-lib/models/anna-non-editable-gt-models.d.ts +5 -2
- package/lib/anna-core-shared-lib/models/anna-tooltip.model.d.ts +3 -1
- package/lib/anna-core-shared-lib/services/anna-date-time-format.service.d.ts +2 -2
- package/lib/anna-core-shared-lib/services/anna-filter.service.d.ts +5 -2
- package/lib/anna-core-shared-lib/services/anna-global-config.service.d.ts +3 -7
- package/lib/anna-core-shared-lib/services/anna-number-format.service.d.ts +1 -0
- package/lib/anna-core.module.d.ts +1 -2
- package/lib/anna-dropdown-lib/components/anna-week-calendar-filter/anna-week-calendar-filter.component.d.ts +2 -2
- package/lib/anna-generic-table-lib/components/anna-column-filters/anna-column-checkbox-filter/anna-column-checkbox-filter.component.d.ts +3 -0
- package/lib/anna-generic-table-lib/components/anna-non-editable-generic-table/anna-non-editable-generic-table.component.d.ts +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +1 -2
- package/src/lib/anna-common-scss/_customDropdown.scss +1 -0
- package/src/lib/anna-common-scss/_easy-filter.scss +2 -1
- package/src/lib/anna-common-scss/_email-button.scss +89 -0
- package/esm2022/lib/anna-core-shared-lib/components/anna-licensing-table/anna-licensing-table.component.mjs +0 -22
- package/esm2022/lib/anna-core-shared-lib/models/anna-licensing-table.model.mjs +0 -21
- package/lib/anna-core-shared-lib/components/anna-licensing-table/anna-licensing-table.component.d.ts +0 -8
- package/lib/anna-core-shared-lib/models/anna-licensing-table.model.d.ts +0 -16
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { CdkVirtualScrollViewport, CdkFixedSizeVirtualScroll, CdkVirtualForOf, ScrollingModule } from '@angular/cdk/scrolling';
|
|
2
|
-
import * as
|
|
2
|
+
import * as i2 from '@angular/common';
|
|
3
3
|
import { NgTemplateOutlet, NgIf, CommonModule, NgClass, TitleCasePipe, DatePipe, NgFor, NgStyle, NgSwitch, NgSwitchCase, NgSwitchDefault, AsyncPipe } from '@angular/common';
|
|
4
4
|
import * as i0 from '@angular/core';
|
|
5
5
|
import { Component, ChangeDetectionStrategy, Input, EventEmitter, Output, Injectable, Directive, HostListener, Pipe, ViewChildren, ViewChild, NgModule } from '@angular/core';
|
|
@@ -13,7 +13,7 @@ import * as i4$1 from '@angular/material/table';
|
|
|
13
13
|
import { MatTableModule } from '@angular/material/table';
|
|
14
14
|
import * as i4 from '@angular-slider/ngx-slider';
|
|
15
15
|
import { NgxSliderModule } from '@angular-slider/ngx-slider';
|
|
16
|
-
import * as i1
|
|
16
|
+
import * as i1 from '@ng-bootstrap/ng-bootstrap';
|
|
17
17
|
import { NgbInputDatepicker, NgbDate, NgbDatepicker, NgbTooltip, NgbModule } from '@ng-bootstrap/ng-bootstrap';
|
|
18
18
|
import * as i8 from 'ng-circle-progress';
|
|
19
19
|
import { NgCircleProgressModule } from 'ng-circle-progress';
|
|
@@ -26,7 +26,7 @@ import customParseFormat from 'dayjs/plugin/isSameOrAfter';
|
|
|
26
26
|
import customParseFormat$1 from 'dayjs/plugin/customParseFormat';
|
|
27
27
|
import isBetween from 'dayjs/plugin/isBetween';
|
|
28
28
|
import minMax from 'dayjs/plugin/minMax';
|
|
29
|
-
import * as i2 from '@angular/router';
|
|
29
|
+
import * as i2$1 from '@angular/router';
|
|
30
30
|
import hash from 'object-hash';
|
|
31
31
|
|
|
32
32
|
class AnnaBuyerApprovalIconTemplateComponent {
|
|
@@ -106,11 +106,11 @@ class AnnaIconColumnComponent {
|
|
|
106
106
|
this.PfpIconDisableColor = "rgba(189,189,189,0.5)";
|
|
107
107
|
this.columnIconClicked = new EventEmitter();
|
|
108
108
|
}
|
|
109
|
-
svgIconClicked(
|
|
110
|
-
this.columnIconClicked.emit(
|
|
109
|
+
svgIconClicked() {
|
|
110
|
+
this.columnIconClicked.emit();
|
|
111
111
|
}
|
|
112
112
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaIconColumnComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
113
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AnnaIconColumnComponent, isStandalone: true, selector: "anna-core-icon-column", inputs: { componentName: "componentName", iconToShow: "iconToShow", dataObject: "dataObject" }, outputs: { columnIconClicked: "columnIconClicked" }, ngImport: i0, template: "<span *ngIf=\"iconToShow === 'PAY_FOR_PERFORMANCE_ACTIVE'\">\r\n <anna-core-pay-for-performance-icon-template\r\n [color]=\"PfpIconActiveColor\"\r\n [width]=\"'12px'\"\r\n [height]=\"'12px'\"\r\n >\r\n </anna-core-pay-for-performance-icon-template>\r\n</span>\r\n\r\n<anna-core-deleted-order-icon-template *ngIf=\"iconToShow === 'DELETED_ORDER'\"> </anna-core-deleted-order-icon-template>\r\n\r\n<i\r\n class=\"mdi mdi-alert\"\r\n *ngIf=\"iconToShow === 'NEED_SELLER_CONFIRMATION'\"\r\n></i>\r\n<i\r\n class=\"mdi mdi-alert\"\r\n *ngIf=\"iconToShow === 'NEED_BUYER_CONFIRMATION'\"\r\n></i>\r\n\r\n<i\r\n *ngIf=\"iconToShow === 'AUTOMATED'\"\r\n class=\"anna-automation-activated-icon mdi mdi-cog-refresh\"\r\n></i>\r\n\r\n<i\r\n *ngIf=\"iconToShow === 'WARNING_ICON'\"\r\n class=\"mdi mdi-alert\"\r\n></i>\r\n\r\n<i\r\n *ngIf=\"iconToShow === 'INFORMATION_OUTLINE_ICON'\"\r\n class=\"mdi mdi-information-outline\"\r\n></i>\r\n\r\n<i\r\n *ngIf=\"iconToShow === 'CANCEL_ICON'\"\r\n class=\"mdi mdi-cancel\"\r\n></i>\r\n\r\n<i\r\n *ngIf=\"iconToShow === 'ALPHA_B_CIRCLE'\"\r\n class=\"mdi mdi-alpha-b-circle-outline\"\r\n></i>\r\n<i\r\n *ngIf=\"iconToShow === 'ALPHA_E_CIRCLE'\"\r\n class=\"mdi mdi-alpha-r-circle-outline\"\r\n></i>\r\n<i\r\n *ngIf=\"iconToShow === 'ALPHA_A_CIRCLE'\"\r\n class=\"mdi mdi-alpha-a-circle\"\r\n></i>\r\n<!-- <i\r\n *ngIf=\"iconToShow === 'ALPHA_R_CIRCLE'\"\r\n class=\"mdi mdi-alpha-r-circle-outline\"\r\n></i> -->\r\n\r\n<anna-core-anna-est-icon-template *ngIf=\"iconToShow === 'ALPHA_R_CIRCLE'\"></anna-core-anna-est-icon-template>\r\n", styles: [".cursor-not-allowed{cursor:not-allowed!important}.mdi-alert{color:#f97b07;font-size:.9375rem}:host ::ng-deep anna-core-pay-for-performance-icon-template svg{margin-bottom:6px}.mdi.mdi-alert{font-size:13px;position:relative;color:#f3c639;top:1px}.anna-automation-activated-icon.mdi.mdi-cog-refresh{font-size:13px;position:relative;top:1px}.mdi.mdi-information-outline{color:var(--primary-blue-color);cursor:pointer!important}.mdi.mdi-cancel{color:var(--primary-red-color);cursor:pointer!important}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: AnnaPayForPerformanceIconTemplateComponent, selector: "anna-core-pay-for-performance-icon-template", inputs: ["isTitle", "color", "width", "height"] }, { kind: "component", type: AnnaDeletedOrderIconTemplateComponent, selector: "anna-core-deleted-order-icon-template" }, { kind: "component", type: AnnaEstIconTemplateComponent, selector: "anna-core-anna-est-icon-template" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
113
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AnnaIconColumnComponent, isStandalone: true, selector: "anna-core-icon-column", inputs: { componentName: "componentName", iconToShow: "iconToShow", dataObject: "dataObject" }, outputs: { columnIconClicked: "columnIconClicked" }, ngImport: i0, template: "<span *ngIf=\"iconToShow === 'PAY_FOR_PERFORMANCE_ACTIVE'\">\r\n <anna-core-pay-for-performance-icon-template\r\n [color]=\"PfpIconActiveColor\"\r\n [width]=\"'12px'\"\r\n [height]=\"'12px'\"\r\n >\r\n </anna-core-pay-for-performance-icon-template>\r\n</span>\r\n\r\n<anna-core-deleted-order-icon-template *ngIf=\"iconToShow === 'DELETED_ORDER'\"> </anna-core-deleted-order-icon-template>\r\n\r\n<i\r\n class=\"mdi mdi-alert\"\r\n *ngIf=\"iconToShow === 'NEED_SELLER_CONFIRMATION'\"\r\n></i>\r\n<i\r\n class=\"mdi mdi-alert\"\r\n *ngIf=\"iconToShow === 'NEED_BUYER_CONFIRMATION'\"\r\n></i>\r\n\r\n<i\r\n *ngIf=\"iconToShow === 'AUTOMATED'\"\r\n class=\"anna-automation-activated-icon mdi mdi-cog-refresh\"\r\n></i>\r\n\r\n<i\r\n *ngIf=\"iconToShow === 'WARNING_ICON'\"\r\n class=\"mdi mdi-alert\"\r\n></i>\r\n\r\n<i\r\n *ngIf=\"iconToShow === 'INFORMATION_OUTLINE_ICON'\"\r\n class=\"mdi mdi-information-outline\"\r\n></i>\r\n\r\n<i\r\n *ngIf=\"iconToShow === 'ALERT_OCTAGON_ICON'\"\r\n class=\"mdi mdi-alert-octagon\"\r\n></i>\r\n\r\n<i\r\n *ngIf=\"iconToShow === 'CANCEL_ICON'\"\r\n class=\"mdi mdi-cancel\"\r\n></i>\r\n\r\n<i\r\n *ngIf=\"iconToShow === 'ALPHA_B_CIRCLE'\"\r\n class=\"mdi mdi-alpha-b-circle-outline\"\r\n></i>\r\n<i\r\n *ngIf=\"iconToShow === 'ALPHA_E_CIRCLE'\"\r\n class=\"mdi mdi-alpha-r-circle-outline\"\r\n></i>\r\n<i\r\n *ngIf=\"iconToShow === 'ALPHA_A_CIRCLE'\"\r\n class=\"mdi mdi-alpha-a-circle\"\r\n></i>\r\n<i\r\n *ngIf=\"iconToShow === 'MESSAGE'\"\r\n class=\"mdi mdi-comment-edit-outline\"\r\n (click)=\"svgIconClicked()\"\r\n></i>\r\n<!-- <i\r\n *ngIf=\"iconToShow === 'ALPHA_R_CIRCLE'\"\r\n class=\"mdi mdi-alpha-r-circle-outline\"\r\n></i> -->\r\n\r\n<anna-core-anna-est-icon-template *ngIf=\"iconToShow === 'ALPHA_R_CIRCLE'\"></anna-core-anna-est-icon-template>\r\n", styles: [".cursor-not-allowed{cursor:not-allowed!important}.mdi-alert{color:#f97b07;font-size:.9375rem}:host ::ng-deep anna-core-pay-for-performance-icon-template svg{margin-bottom:6px}.mdi.mdi-alert{font-size:13px;position:relative;color:#f3c639;top:1px}.anna-automation-activated-icon.mdi.mdi-cog-refresh{font-size:13px;position:relative;top:1px}.mdi.mdi-information-outline{color:var(--primary-blue-color);cursor:pointer!important}.mdi.mdi-alert-octagon{color:red;cursor:pointer!important}.mdi.mdi-cancel{color:var(--primary-red-color);cursor:pointer!important}.mdi.mdi-comment-edit-outline{color:var(--primary-blue-color);cursor:pointer!important}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: AnnaPayForPerformanceIconTemplateComponent, selector: "anna-core-pay-for-performance-icon-template", inputs: ["isTitle", "color", "width", "height"] }, { kind: "component", type: AnnaDeletedOrderIconTemplateComponent, selector: "anna-core-deleted-order-icon-template" }, { kind: "component", type: AnnaEstIconTemplateComponent, selector: "anna-core-anna-est-icon-template" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
114
114
|
}
|
|
115
115
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaIconColumnComponent, decorators: [{
|
|
116
116
|
type: Component,
|
|
@@ -123,7 +123,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
123
123
|
AnnaBuyerApprovalIconTemplateComponent,
|
|
124
124
|
AnnaDeletedOrderIconTemplateComponent,
|
|
125
125
|
AnnaEstIconTemplateComponent,
|
|
126
|
-
], template: "<span *ngIf=\"iconToShow === 'PAY_FOR_PERFORMANCE_ACTIVE'\">\r\n <anna-core-pay-for-performance-icon-template\r\n [color]=\"PfpIconActiveColor\"\r\n [width]=\"'12px'\"\r\n [height]=\"'12px'\"\r\n >\r\n </anna-core-pay-for-performance-icon-template>\r\n</span>\r\n\r\n<anna-core-deleted-order-icon-template *ngIf=\"iconToShow === 'DELETED_ORDER'\"> </anna-core-deleted-order-icon-template>\r\n\r\n<i\r\n class=\"mdi mdi-alert\"\r\n *ngIf=\"iconToShow === 'NEED_SELLER_CONFIRMATION'\"\r\n></i>\r\n<i\r\n class=\"mdi mdi-alert\"\r\n *ngIf=\"iconToShow === 'NEED_BUYER_CONFIRMATION'\"\r\n></i>\r\n\r\n<i\r\n *ngIf=\"iconToShow === 'AUTOMATED'\"\r\n class=\"anna-automation-activated-icon mdi mdi-cog-refresh\"\r\n></i>\r\n\r\n<i\r\n *ngIf=\"iconToShow === 'WARNING_ICON'\"\r\n class=\"mdi mdi-alert\"\r\n></i>\r\n\r\n<i\r\n *ngIf=\"iconToShow === 'INFORMATION_OUTLINE_ICON'\"\r\n class=\"mdi mdi-information-outline\"\r\n></i>\r\n\r\n<i\r\n *ngIf=\"iconToShow === 'CANCEL_ICON'\"\r\n class=\"mdi mdi-cancel\"\r\n></i>\r\n\r\n<i\r\n *ngIf=\"iconToShow === 'ALPHA_B_CIRCLE'\"\r\n class=\"mdi mdi-alpha-b-circle-outline\"\r\n></i>\r\n<i\r\n *ngIf=\"iconToShow === 'ALPHA_E_CIRCLE'\"\r\n class=\"mdi mdi-alpha-r-circle-outline\"\r\n></i>\r\n<i\r\n *ngIf=\"iconToShow === 'ALPHA_A_CIRCLE'\"\r\n class=\"mdi mdi-alpha-a-circle\"\r\n></i>\r\n<!-- <i\r\n *ngIf=\"iconToShow === 'ALPHA_R_CIRCLE'\"\r\n class=\"mdi mdi-alpha-r-circle-outline\"\r\n></i> -->\r\n\r\n<anna-core-anna-est-icon-template *ngIf=\"iconToShow === 'ALPHA_R_CIRCLE'\"></anna-core-anna-est-icon-template>\r\n", styles: [".cursor-not-allowed{cursor:not-allowed!important}.mdi-alert{color:#f97b07;font-size:.9375rem}:host ::ng-deep anna-core-pay-for-performance-icon-template svg{margin-bottom:6px}.mdi.mdi-alert{font-size:13px;position:relative;color:#f3c639;top:1px}.anna-automation-activated-icon.mdi.mdi-cog-refresh{font-size:13px;position:relative;top:1px}.mdi.mdi-information-outline{color:var(--primary-blue-color);cursor:pointer!important}.mdi.mdi-cancel{color:var(--primary-red-color);cursor:pointer!important}\n"] }]
|
|
126
|
+
], template: "<span *ngIf=\"iconToShow === 'PAY_FOR_PERFORMANCE_ACTIVE'\">\r\n <anna-core-pay-for-performance-icon-template\r\n [color]=\"PfpIconActiveColor\"\r\n [width]=\"'12px'\"\r\n [height]=\"'12px'\"\r\n >\r\n </anna-core-pay-for-performance-icon-template>\r\n</span>\r\n\r\n<anna-core-deleted-order-icon-template *ngIf=\"iconToShow === 'DELETED_ORDER'\"> </anna-core-deleted-order-icon-template>\r\n\r\n<i\r\n class=\"mdi mdi-alert\"\r\n *ngIf=\"iconToShow === 'NEED_SELLER_CONFIRMATION'\"\r\n></i>\r\n<i\r\n class=\"mdi mdi-alert\"\r\n *ngIf=\"iconToShow === 'NEED_BUYER_CONFIRMATION'\"\r\n></i>\r\n\r\n<i\r\n *ngIf=\"iconToShow === 'AUTOMATED'\"\r\n class=\"anna-automation-activated-icon mdi mdi-cog-refresh\"\r\n></i>\r\n\r\n<i\r\n *ngIf=\"iconToShow === 'WARNING_ICON'\"\r\n class=\"mdi mdi-alert\"\r\n></i>\r\n\r\n<i\r\n *ngIf=\"iconToShow === 'INFORMATION_OUTLINE_ICON'\"\r\n class=\"mdi mdi-information-outline\"\r\n></i>\r\n\r\n<i\r\n *ngIf=\"iconToShow === 'ALERT_OCTAGON_ICON'\"\r\n class=\"mdi mdi-alert-octagon\"\r\n></i>\r\n\r\n<i\r\n *ngIf=\"iconToShow === 'CANCEL_ICON'\"\r\n class=\"mdi mdi-cancel\"\r\n></i>\r\n\r\n<i\r\n *ngIf=\"iconToShow === 'ALPHA_B_CIRCLE'\"\r\n class=\"mdi mdi-alpha-b-circle-outline\"\r\n></i>\r\n<i\r\n *ngIf=\"iconToShow === 'ALPHA_E_CIRCLE'\"\r\n class=\"mdi mdi-alpha-r-circle-outline\"\r\n></i>\r\n<i\r\n *ngIf=\"iconToShow === 'ALPHA_A_CIRCLE'\"\r\n class=\"mdi mdi-alpha-a-circle\"\r\n></i>\r\n<i\r\n *ngIf=\"iconToShow === 'MESSAGE'\"\r\n class=\"mdi mdi-comment-edit-outline\"\r\n (click)=\"svgIconClicked()\"\r\n></i>\r\n<!-- <i\r\n *ngIf=\"iconToShow === 'ALPHA_R_CIRCLE'\"\r\n class=\"mdi mdi-alpha-r-circle-outline\"\r\n></i> -->\r\n\r\n<anna-core-anna-est-icon-template *ngIf=\"iconToShow === 'ALPHA_R_CIRCLE'\"></anna-core-anna-est-icon-template>\r\n", styles: [".cursor-not-allowed{cursor:not-allowed!important}.mdi-alert{color:#f97b07;font-size:.9375rem}:host ::ng-deep anna-core-pay-for-performance-icon-template svg{margin-bottom:6px}.mdi.mdi-alert{font-size:13px;position:relative;color:#f3c639;top:1px}.anna-automation-activated-icon.mdi.mdi-cog-refresh{font-size:13px;position:relative;top:1px}.mdi.mdi-information-outline{color:var(--primary-blue-color);cursor:pointer!important}.mdi.mdi-alert-octagon{color:red;cursor:pointer!important}.mdi.mdi-cancel{color:var(--primary-red-color);cursor:pointer!important}.mdi.mdi-comment-edit-outline{color:var(--primary-blue-color);cursor:pointer!important}\n"] }]
|
|
127
127
|
}], propDecorators: { componentName: [{
|
|
128
128
|
type: Input
|
|
129
129
|
}], iconToShow: [{
|
|
@@ -134,22 +134,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
134
134
|
type: Output
|
|
135
135
|
}] } });
|
|
136
136
|
|
|
137
|
-
class AnnaLicensingTableComponent {
|
|
138
|
-
constructor() {
|
|
139
|
-
this.isEditMode = false;
|
|
140
|
-
}
|
|
141
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaLicensingTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
142
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AnnaLicensingTableComponent, isStandalone: true, selector: "anna-core-licensing-table", inputs: { plans: "plans", isEditMode: "isEditMode" }, ngImport: i0, template: "<section>\n <table>\n <thead>\n <th>FEATURE</th>\n <th *ngFor=\"let plan of plans\">\n {{ plan.PlanName }}\n </th>\n </thead>\n <tbody>\n <tr *ngFor=\"let feature of plans[0].FeatureDetails; let featureIndex = index\">\n <td>\n <strong>{{ feature.FeatureName }}</strong> {{ feature.FeatureDesc }}\n </td>\n <td *ngFor=\"let plan of plans; let planIndex = index\">\n <ng-container *ngIf=\"plan.FeatureDetails[featureIndex] as featureDetails\">\n <i\n *ngIf=\"featureDetails.IsIncluded && !featureDetails.Specification[0].Json.TotalOrders\"\n class=\"mi mdi-checkbox-marked-circle\"\n ></i>\n <i\n *ngIf=\"!featureDetails.IsIncluded\"\n class=\"mi mdi-close\"\n ></i>\n <ng-container *ngIf=\"featureDetails.Specification[0].Json.TotalOrders\">\n <ng-container *ngIf=\"feature.FeatureName === 'Pay on Delivery (PoD)'\">\n <div *ngIf=\"isEditMode\">\n <input\n type=\"text\"\n [ngModel]=\"featureDetails.Specification[0].Json.TotalOrders\"\n />\n Orders\n </div>\n <div *ngIf=\"!isEditMode\">\n <p>\n {{ featureDetails.Specification[0].Json.TotalOrders }} Orders\n <span *ngIf=\"featureDetails.Specification[0].Json.RemainingOrders\"\n >|\n {{ featureDetails.Specification[0].Json.RemainingOrders }} Remaining</span\n >\n </p>\n <span *ngIf=\"featureDetails.Specification[0].Json.IsCustomized\">(Customized)</span>\n </div>\n </ng-container>\n </ng-container>\n </ng-container>\n </td>\n </tr>\n </tbody>\n </table>\n</section>", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
143
|
-
}
|
|
144
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaLicensingTableComponent, decorators: [{
|
|
145
|
-
type: Component,
|
|
146
|
-
args: [{ selector: 'anna-core-licensing-table', standalone: true, imports: [CommonModule, FormsModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<section>\n <table>\n <thead>\n <th>FEATURE</th>\n <th *ngFor=\"let plan of plans\">\n {{ plan.PlanName }}\n </th>\n </thead>\n <tbody>\n <tr *ngFor=\"let feature of plans[0].FeatureDetails; let featureIndex = index\">\n <td>\n <strong>{{ feature.FeatureName }}</strong> {{ feature.FeatureDesc }}\n </td>\n <td *ngFor=\"let plan of plans; let planIndex = index\">\n <ng-container *ngIf=\"plan.FeatureDetails[featureIndex] as featureDetails\">\n <i\n *ngIf=\"featureDetails.IsIncluded && !featureDetails.Specification[0].Json.TotalOrders\"\n class=\"mi mdi-checkbox-marked-circle\"\n ></i>\n <i\n *ngIf=\"!featureDetails.IsIncluded\"\n class=\"mi mdi-close\"\n ></i>\n <ng-container *ngIf=\"featureDetails.Specification[0].Json.TotalOrders\">\n <ng-container *ngIf=\"feature.FeatureName === 'Pay on Delivery (PoD)'\">\n <div *ngIf=\"isEditMode\">\n <input\n type=\"text\"\n [ngModel]=\"featureDetails.Specification[0].Json.TotalOrders\"\n />\n Orders\n </div>\n <div *ngIf=\"!isEditMode\">\n <p>\n {{ featureDetails.Specification[0].Json.TotalOrders }} Orders\n <span *ngIf=\"featureDetails.Specification[0].Json.RemainingOrders\"\n >|\n {{ featureDetails.Specification[0].Json.RemainingOrders }} Remaining</span\n >\n </p>\n <span *ngIf=\"featureDetails.Specification[0].Json.IsCustomized\">(Customized)</span>\n </div>\n </ng-container>\n </ng-container>\n </ng-container>\n </td>\n </tr>\n </tbody>\n </table>\n</section>" }]
|
|
147
|
-
}], propDecorators: { plans: [{
|
|
148
|
-
type: Input
|
|
149
|
-
}], isEditMode: [{
|
|
150
|
-
type: Input
|
|
151
|
-
}] } });
|
|
152
|
-
|
|
153
137
|
class AnnaNoDataComponent {
|
|
154
138
|
constructor() {
|
|
155
139
|
this.width = "48%";
|
|
@@ -204,7 +188,7 @@ class AnnaSpinnerLoaderComponent {
|
|
|
204
188
|
});
|
|
205
189
|
}
|
|
206
190
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaSpinnerLoaderComponent, deps: [{ token: AnnaSpinnerLoaderService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
207
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AnnaSpinnerLoaderComponent, isStandalone: true, selector: "anna-core-spinner-loader", ngImport: i0, template: "<div\r\n *ngIf=\"loading\"\r\n class=\"loading\"\r\n>\r\n <div class=\"app-spinner-container\">\r\n <div class=\"ngx-foreground-spinner\">\r\n <div class=\"sk-three-strings\">\r\n <div></div>\r\n <div></div>\r\n <div></div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".loading{z-index:99998!important;background-color:#282828cc;cursor:progress;opacity:1}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type:
|
|
191
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AnnaSpinnerLoaderComponent, isStandalone: true, selector: "anna-core-spinner-loader", ngImport: i0, template: "<div\r\n *ngIf=\"loading\"\r\n class=\"loading\"\r\n>\r\n <div class=\"app-spinner-container\">\r\n <div class=\"ngx-foreground-spinner\">\r\n <div class=\"sk-three-strings\">\r\n <div></div>\r\n <div></div>\r\n <div></div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".loading{z-index:99998!important;background-color:#282828cc;cursor:progress;opacity:1}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
208
192
|
}
|
|
209
193
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaSpinnerLoaderComponent, decorators: [{
|
|
210
194
|
type: Component,
|
|
@@ -970,7 +954,7 @@ class AnnaCalendarFilterComponent {
|
|
|
970
954
|
this.disabled = false;
|
|
971
955
|
this.selectedDate = new EventEmitter();
|
|
972
956
|
this.showFooterTemplate = false;
|
|
973
|
-
this.placement = ["top-start", "
|
|
957
|
+
this.placement = ["top-start", "bottom-start", "left", "auto"];
|
|
974
958
|
this.apply = new EventEmitter();
|
|
975
959
|
this.cancel = new EventEmitter();
|
|
976
960
|
this.disableApplyBtn = false;
|
|
@@ -1115,32 +1099,6 @@ class AnnaGlobalConfigService {
|
|
|
1115
1099
|
Initializing all default settings
|
|
1116
1100
|
*/
|
|
1117
1101
|
constructor() {
|
|
1118
|
-
this.defaultAngular2MultiSelectSettings = {
|
|
1119
|
-
text: "Select option",
|
|
1120
|
-
selectAllText: "Select All",
|
|
1121
|
-
unSelectAllText: "UnSelect All",
|
|
1122
|
-
badgeShowLimit: 1,
|
|
1123
|
-
singleSelection: false,
|
|
1124
|
-
classes: "filter-dropdowns",
|
|
1125
|
-
enableSearchFilter: true,
|
|
1126
|
-
enableCheckAll: true,
|
|
1127
|
-
autoPosition: false,
|
|
1128
|
-
disabled: false,
|
|
1129
|
-
position: "bottom",
|
|
1130
|
-
lazyLoading: false,
|
|
1131
|
-
showCheckbox: true,
|
|
1132
|
-
maxHeight: 300,
|
|
1133
|
-
enableFilterSelectAll: true,
|
|
1134
|
-
};
|
|
1135
|
-
this.defaultNgxAsideSettings = {
|
|
1136
|
-
title: '"Filters"',
|
|
1137
|
-
cancelButtonTitle: '"Cancel"',
|
|
1138
|
-
submitButtonTitle: '"Apply"',
|
|
1139
|
-
closeOnEscape: false,
|
|
1140
|
-
showOverlay: false,
|
|
1141
|
-
showDefaultFooter: false,
|
|
1142
|
-
showDefaultHeader: false,
|
|
1143
|
-
};
|
|
1144
1102
|
this.defaultNgbDatePickerSettings = {
|
|
1145
1103
|
autoClose: false,
|
|
1146
1104
|
placeholder: "mm-dd-yyyy",
|
|
@@ -1153,35 +1111,12 @@ class AnnaGlobalConfigService {
|
|
|
1153
1111
|
allowClear: false,
|
|
1154
1112
|
placeholder: "Select",
|
|
1155
1113
|
};
|
|
1156
|
-
this.defaultNgxInfiniteScrollSettings = {
|
|
1157
|
-
infiniteScrollDistance: 1,
|
|
1158
|
-
infiniteScrollUpDistance: 2,
|
|
1159
|
-
infiniteScrollThrottle: 300,
|
|
1160
|
-
scrollWindow: false,
|
|
1161
|
-
};
|
|
1162
1114
|
this.defaultNgxSkeletonLoaderSettings = {
|
|
1163
1115
|
numberOfSkeletonRows: Array(6).fill(0),
|
|
1164
1116
|
};
|
|
1165
|
-
this.defaultRadioButtonsComponentConfig = {
|
|
1166
|
-
heading: "Select Option",
|
|
1167
|
-
radioButtons: [
|
|
1168
|
-
{
|
|
1169
|
-
value: "Yes",
|
|
1170
|
-
isDisabled: false,
|
|
1171
|
-
label: "Yes",
|
|
1172
|
-
class: "",
|
|
1173
|
-
},
|
|
1174
|
-
{
|
|
1175
|
-
value: "No",
|
|
1176
|
-
isDisabled: false,
|
|
1177
|
-
label: "No",
|
|
1178
|
-
class: "",
|
|
1179
|
-
},
|
|
1180
|
-
],
|
|
1181
|
-
};
|
|
1182
1117
|
this.defaultConfirmationPopupConfig = {
|
|
1183
1118
|
showCancelButton: true,
|
|
1184
|
-
title: "Are you sure ?",
|
|
1119
|
+
title: "Are you sure you want to save the changes?",
|
|
1185
1120
|
showConfirmButton: true,
|
|
1186
1121
|
cancelButtonLabel: "No",
|
|
1187
1122
|
confirmButtonLabel: "Yes",
|
|
@@ -1191,6 +1126,18 @@ class AnnaGlobalConfigService {
|
|
|
1191
1126
|
size: "sm",
|
|
1192
1127
|
keyboard: false,
|
|
1193
1128
|
};
|
|
1129
|
+
this.defaultUnsavedChangesConfirmationPopupConfig = {
|
|
1130
|
+
showCancelButton: true,
|
|
1131
|
+
title: "You have unsaved changes. All the changes will be lost if you switch. Do you want to continue?",
|
|
1132
|
+
showConfirmButton: true,
|
|
1133
|
+
cancelButtonLabel: "No",
|
|
1134
|
+
confirmButtonLabel: "Yes",
|
|
1135
|
+
showCloseIcon: false,
|
|
1136
|
+
backdrop: "static",
|
|
1137
|
+
windowClass: "",
|
|
1138
|
+
size: "sm",
|
|
1139
|
+
keyboard: false,
|
|
1140
|
+
};
|
|
1194
1141
|
this.defaultWeekCalendarConfig = {
|
|
1195
1142
|
firstDayOfWeek: 1,
|
|
1196
1143
|
showWeekNumbers: true,
|
|
@@ -1205,11 +1152,6 @@ class AnnaGlobalConfigService {
|
|
|
1205
1152
|
showAsDropdown: true,
|
|
1206
1153
|
selectCurrentWeek: true,
|
|
1207
1154
|
};
|
|
1208
|
-
this.defaultGtHeaderConfig = {
|
|
1209
|
-
iconColumn: false,
|
|
1210
|
-
checkboxColumn: false,
|
|
1211
|
-
lastColumnKeys: [],
|
|
1212
|
-
};
|
|
1213
1155
|
this.defaultGtGeneralConfig = {
|
|
1214
1156
|
component: "",
|
|
1215
1157
|
totalRow: false,
|
|
@@ -1226,7 +1168,8 @@ class AnnaGlobalConfigService {
|
|
|
1226
1168
|
placeholder: "Select",
|
|
1227
1169
|
classes: "",
|
|
1228
1170
|
position: "BOTTOM",
|
|
1229
|
-
|
|
1171
|
+
minHeightOfList: 30,
|
|
1172
|
+
maxHeightOfList: 180,
|
|
1230
1173
|
};
|
|
1231
1174
|
this.defaultMultiSelectConfig = {
|
|
1232
1175
|
...this.defaultSingleSelectConfig,
|
|
@@ -1248,7 +1191,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
1248
1191
|
class AnnaWeekCalendarComponent {
|
|
1249
1192
|
ngOnChanges(changes) {
|
|
1250
1193
|
// if some values are not sent, setting the default values
|
|
1251
|
-
this.defaultValues = this.
|
|
1194
|
+
this.defaultValues = this.annaGlobalConfig.defaultWeekCalendarConfig;
|
|
1252
1195
|
this.config = { ...this.defaultValues, ...this.config };
|
|
1253
1196
|
if (this.config.selectCurrentWeek) {
|
|
1254
1197
|
this.initializeWeekData();
|
|
@@ -1269,11 +1212,11 @@ class AnnaWeekCalendarComponent {
|
|
|
1269
1212
|
this.disabledFunc = (date, current) => this.checkIfDateIsDisabled(date);
|
|
1270
1213
|
}
|
|
1271
1214
|
}
|
|
1272
|
-
constructor(calendar, datePickerConfig, annaDateTimeFormatService,
|
|
1215
|
+
constructor(calendar, datePickerConfig, annaDateTimeFormatService, annaGlobalConfig) {
|
|
1273
1216
|
this.calendar = calendar;
|
|
1274
1217
|
this.datePickerConfig = datePickerConfig;
|
|
1275
1218
|
this.annaDateTimeFormatService = annaDateTimeFormatService;
|
|
1276
|
-
this.
|
|
1219
|
+
this.annaGlobalConfig = annaGlobalConfig;
|
|
1277
1220
|
this.hoveredDate = null;
|
|
1278
1221
|
this.toDate = null;
|
|
1279
1222
|
this.weekNumbers = [];
|
|
@@ -1565,13 +1508,13 @@ class AnnaWeekCalendarComponent {
|
|
|
1565
1508
|
closeDatepicker(datepickerRef) {
|
|
1566
1509
|
datepickerRef.close();
|
|
1567
1510
|
}
|
|
1568
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaWeekCalendarComponent, deps: [{ token: i1
|
|
1511
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaWeekCalendarComponent, deps: [{ token: i1.NgbCalendar }, { token: i1.NgbDatepickerConfig }, { token: AnnaDateTimeFormatService }, { token: AnnaGlobalConfigService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1569
1512
|
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AnnaWeekCalendarComponent, isStandalone: true, selector: "anna-core-week-calendar-filter-lib", inputs: { selectedFromDate: "selectedFromDate", selectedEndDate: "selectedEndDate", disabledDates: "disabledDates", maxDate: "maxDate", minDate: "minDate", config: "config" }, outputs: { applyWeekCalendarChanges: "applyWeekCalendarChanges", calendarToggled: "calendarToggled" }, usesOnChanges: true, ngImport: i0, template: "<form\r\n class=\"form-inline\"\r\n *ngIf=\"config.showAsDropdown\"\r\n>\r\n <div class=\"form-group hidden\">\r\n <div class=\"input-group\">\r\n <input\r\n name=\"datepicker d-none\"\r\n class=\"form-control\"\r\n ngbDatepicker\r\n #datepicker=\"ngbDatepicker\"\r\n [autoClose]=\"false\"\r\n (dateSelect)=\"selectWeek($event)\"\r\n (closed)=\"isFocused(false)\"\r\n [displayMonths]=\"1\"\r\n [dayTemplate]=\"t\"\r\n [startDate]=\"fromDate!\"\r\n [firstDayOfWeek]=\"config.firstDayOfWeek\"\r\n [showWeekNumbers]=\"config.showWeekNumbers\"\r\n tabindex=\"-1\"\r\n [footerTemplate]=\"footerTemplate\"\r\n />\r\n </div>\r\n </div>\r\n\r\n <!--Single week select-->\r\n <div *ngIf=\"!config.selectMultipleWeeks\">\r\n <span class=\"weeknumbers-label\"> {{ weekNumbers }} </span>\r\n <div class=\"form-group\">\r\n <div class=\"input-group\">\r\n <div class=\"single-week\">\r\n <div class=\"left\">\r\n <span\r\n class=\"material-icons next-round-btn\"\r\n (click)=\"previousWeek()\"\r\n >\r\n navigate_next\r\n </span>\r\n </div>\r\n <input\r\n #dpFromDate\r\n class=\"form-control\"\r\n placeholder=\"Select Weeks\"\r\n [ngClass]=\"[config.customClass === '' ? '' : config.customClass]\"\r\n name=\"dpFromDate\"\r\n [value]=\"dateToDisplay\"\r\n [readonly]=\"true\"\r\n (click)=\"isFocused(true); isDropdownOpenedForCalendar(datepicker)\"\r\n />\r\n <i\r\n class=\"mdi mdi-menu-down\"\r\n *ngIf=\"!datepicker.isOpen()\"\r\n (click)=\"datepicker.open()\"\r\n ></i>\r\n <i\r\n class=\"mdi mdi-menu-up\"\r\n *ngIf=\"datepicker.isOpen()\"\r\n (click)=\"isDropdownOpenedForCalendar(datepicker)\"\r\n ></i>\r\n <div class=\"right\">\r\n <span\r\n class=\"material-icons round-btn\"\r\n (click)=\"nextWeek()\"\r\n >\r\n navigate_next\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!--Multiple week select-->\r\n <div\r\n class=\"form-group\"\r\n *ngIf=\"config.selectMultipleWeeks\"\r\n >\r\n <div class=\"input-group\">\r\n <div class=\"multiple-weeks\">\r\n <input\r\n #dpFromDate\r\n class=\"form-control\"\r\n placeholder=\"Select Weeks\"\r\n [ngClass]=\"[config.customClass === '' ? '' : config.customClass]\"\r\n name=\"dpFromDate\"\r\n [readonly]=\"true\"\r\n [value]=\"weekNumbers\"\r\n (click)=\"isFocused(true); isDropdownOpenedForCalendar(datepicker)\"\r\n />\r\n <i\r\n *ngIf=\"!multiSelectDropdownOpen\"\r\n class=\"mdi mdi-menu-down multiselect-input-arrow\"\r\n ></i>\r\n <i\r\n *ngIf=\"multiSelectDropdownOpen\"\r\n class=\"mdi mdi-menu-up multiselect-input-arrow\"\r\n ></i>\r\n </div>\r\n </div>\r\n </div>\r\n</form>\r\n\r\n<ngb-datepicker\r\n #weekPicker\r\n *ngIf=\"!config.showAsDropdown\"\r\n [displayMonths]=\"1\"\r\n [startDate]=\"fromDate!\"\r\n [firstDayOfWeek]=\"config.firstDayOfWeek\"\r\n [showWeekNumbers]=\"config.showWeekNumbers\"\r\n [dayTemplate]=\"t\"\r\n [maxDate]=\"maxDate\"\r\n [minDate]=\"minDate\"\r\n (dateSelect)=\"selectWeek($event)\"\r\n [markDisabled]=\"disabledFunc\"\r\n>\r\n</ngb-datepicker>\r\n\r\n<ng-template #footerTemplate>\r\n <hr class=\"my-0\" />\r\n <button\r\n class=\"btn btn-primary btn-sm m-2 float-right apply-btn\"\r\n (click)=\"applyChanges(); closeDatepicker(datepicker)\"\r\n >\r\n Apply\r\n </button>\r\n <button\r\n class=\"btn btn-primary btn-sm m-2 float-right cancel-btn\"\r\n (click)=\"revertDates(); closeDatepicker(datepicker)\"\r\n >\r\n Cancel\r\n </button>\r\n</ng-template>\r\n\r\n<ng-template\r\n #t\r\n let-date\r\n let-focused=\"focused\"\r\n let-disabled=\"disabled\"\r\n>\r\n <span\r\n class=\"custom-day\"\r\n [class.focused]=\"focused\"\r\n [class.range]=\"isRange(date)\"\r\n [class.faded]=\"isHovered(date) || isInside(date)\"\r\n [class.disabled]=\"disabled\"\r\n (mouseenter)=\"hoveredDate = date\"\r\n (mouseleave)=\"hoveredDate = null\"\r\n >\r\n {{ date.day }}\r\n </span>\r\n</ng-template>\r\n", styles: [":host ::ng-deep .ngb-dp-arrow button:disabled{color:#4a4a4a;background-color:#fff;opacity:.25;cursor:not-allowed}:host ::ng-deep .ngb-dp-arrow button:disabled .ngb-dp-navigation-chevron{color:#4a4a4a}:host ::ng-deep .ngb-dp-arrow button .ngb-dp-navigation-chevron{color:#000}:host::ng-deep .right{width:unset!important;background-color:#fff!important}:host::ng-deep .ngb-dp-day,:host::ng-deep .ngb-dp-weekday{width:3rem!important;font-style:unset!important;color:#8bac2a;outline:none}:host::ng-deep .ngb-dp-day:first-child{border:1px solid black}:host::ng-deep .ngb-dp-day.disabled{color:#d4d4d4;cursor:not-allowed}:host::ng-deep .ngb-dp-showweek:before{content:\"Weeks\";margin-right:5px}:host::ng-deep .ngb-dp-week-number{font-style:unset!important;width:4rem!important;margin-right:5px;font-weight:700;color:#000!important;border-right:1px solid rgba(0,0,0,.125)}:host::ng-deep .ngb-dp-week-number:before{font-style:unset!important;content:\"Week \"}:host::ng-deep .ngb-dp-weekday.ngb-dp-showweek{margin-right:5px;width:4rem!important;border-right:1px solid rgba(0,0,0,.125)}:host::ng-deep .dropdown-menu{box-shadow:none}:host::ng-deep .dropdown-menu.show{top:15px!important}:host::ng-deep .bg-light{background-color:#fff!important}:host::ng-deep .ngb-dp-weekdays{border-top:1px solid rgba(0,0,0,.125)}:host::ng-deep .ngb-dp-arrow-btn:focus{box-shadow:none}.custom-day{text-align:center;padding:.185rem .25rem;display:inline-block;height:1.75rem;font-weight:700;color:#222b45;width:3rem!important}.custom-day.focused{background-color:#fff}.custom-day.faded{background-color:#0275d880!important}.custom-day.faded:focus{outline:none!important}.custom-day:hover{background-color:#268bff1f!important;color:#4a4a4a!important}.custom-day:focus{outline:none!important}.custom-day.range{background-color:#268bff1f!important;color:#4a4a4a!important}.custom-day.range:focus{outline:none!important}.custom-day.disabled{color:#d3d3d3}.input-group>.single-week,.input-group .multiple-weeks{display:inline-flex!important}.input-group>.single-week>.form-control,.input-group .multiple-weeks>.form-control{width:212px;border-radius:2px;border:solid 1px #b3b3b3;height:1.875rem;cursor:pointer}.input-group>.form-control{width:212px;border-radius:2px;border:solid 1px #b3b3b3;height:1.875rem;cursor:pointer}.form-control[readonly]{background-color:#fff!important}.next-round-btn{transform:rotate(180deg);margin-left:.125rem;line-height:1.3;border-radius:50%;cursor:pointer}.round-btn{line-height:1.3;border-radius:50%;cursor:pointer;margin-left:.25rem}:host::ng-deep select.custom-select{background:none;appearance:auto}.left,.right{width:1.875rem!important;height:1.875rem;background:#d8d8d8!important;border-radius:50%}.left{margin-right:.3125rem}.right{margin-left:.3125rem}:host::ng-deep .right .ngb-dp-navigation-chevron,:host::ng-deep .ngb-dp-navigation-chevron{color:#268bff}:host::ng-deep .ngb-dp-arrow-btn:focus{outline-width:0px}.custom-day.faded{background-color:#268bff33!important;color:#000!important;font-weight:600}.custom-day{text-align:center;padding:.185rem .25rem;color:#000;display:inline-block;line-height:1.9;height:2rem;width:2rem}.custom-day.focused{background-color:#e6e6e6}.custom-day.range{background-color:#268bff!important;color:#fff!important;font-weight:600}.custom-day:hover{background-color:#d9e1e6;border-radius:.25rem;color:#bdbdbd}:host::ng-deep div.ngb-dp-weekday{color:#8bac2a;font-family:Roboto;font-size:.8125rem;font-weight:700;font-stretch:normal;font-style:normal;line-height:2.6;letter-spacing:normal}.mdi-menu-up,.mdi-menu-down{position:absolute;right:2.438rem;top:1px;font-size:1.375rem;cursor:pointer}.multiselect-input-arrow{position:absolute;right:.75rem;top:3px;font-size:1.25rem;cursor:pointer;pointer-events:none}button:focus{outline:none;box-shadow:none;border-color:transparent}::ng-deep .ngb-dp-header,::ng-deep .ngb-dp-week{background:#fff!important}.weeknumbers-label{position:relative;left:30px;font-size:12px}.apply-btn{background-color:#268bff;color:#fff}.cancel-btn{background-color:#268bff1f;color:#268bff}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: NgbInputDatepicker, selector: "input[ngbDatepicker]", inputs: ["autoClose", "contentTemplate", "datepickerClass", "dayTemplate", "dayTemplateData", "displayMonths", "firstDayOfWeek", "footerTemplate", "markDisabled", "minDate", "maxDate", "navigation", "outsideDays", "placement", "popperOptions", "restoreFocus", "showWeekNumbers", "startDate", "container", "positionTarget", "weekdays", "disabled"], outputs: ["dateSelect", "navigate", "closed"], exportAs: ["ngbDatepicker"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: NgbDatepicker, selector: "ngb-datepicker", inputs: ["contentTemplate", "dayTemplate", "dayTemplateData", "displayMonths", "firstDayOfWeek", "footerTemplate", "markDisabled", "maxDate", "minDate", "navigation", "outsideDays", "showWeekNumbers", "startDate", "weekdays"], outputs: ["navigate", "dateSelect"], exportAs: ["ngbDatepicker"] }] }); }
|
|
1570
1513
|
}
|
|
1571
1514
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaWeekCalendarComponent, decorators: [{
|
|
1572
1515
|
type: Component,
|
|
1573
1516
|
args: [{ selector: "anna-core-week-calendar-filter-lib", standalone: true, imports: [NgIf, FormsModule, NgbInputDatepicker, NgClass, NgbDatepicker], template: "<form\r\n class=\"form-inline\"\r\n *ngIf=\"config.showAsDropdown\"\r\n>\r\n <div class=\"form-group hidden\">\r\n <div class=\"input-group\">\r\n <input\r\n name=\"datepicker d-none\"\r\n class=\"form-control\"\r\n ngbDatepicker\r\n #datepicker=\"ngbDatepicker\"\r\n [autoClose]=\"false\"\r\n (dateSelect)=\"selectWeek($event)\"\r\n (closed)=\"isFocused(false)\"\r\n [displayMonths]=\"1\"\r\n [dayTemplate]=\"t\"\r\n [startDate]=\"fromDate!\"\r\n [firstDayOfWeek]=\"config.firstDayOfWeek\"\r\n [showWeekNumbers]=\"config.showWeekNumbers\"\r\n tabindex=\"-1\"\r\n [footerTemplate]=\"footerTemplate\"\r\n />\r\n </div>\r\n </div>\r\n\r\n <!--Single week select-->\r\n <div *ngIf=\"!config.selectMultipleWeeks\">\r\n <span class=\"weeknumbers-label\"> {{ weekNumbers }} </span>\r\n <div class=\"form-group\">\r\n <div class=\"input-group\">\r\n <div class=\"single-week\">\r\n <div class=\"left\">\r\n <span\r\n class=\"material-icons next-round-btn\"\r\n (click)=\"previousWeek()\"\r\n >\r\n navigate_next\r\n </span>\r\n </div>\r\n <input\r\n #dpFromDate\r\n class=\"form-control\"\r\n placeholder=\"Select Weeks\"\r\n [ngClass]=\"[config.customClass === '' ? '' : config.customClass]\"\r\n name=\"dpFromDate\"\r\n [value]=\"dateToDisplay\"\r\n [readonly]=\"true\"\r\n (click)=\"isFocused(true); isDropdownOpenedForCalendar(datepicker)\"\r\n />\r\n <i\r\n class=\"mdi mdi-menu-down\"\r\n *ngIf=\"!datepicker.isOpen()\"\r\n (click)=\"datepicker.open()\"\r\n ></i>\r\n <i\r\n class=\"mdi mdi-menu-up\"\r\n *ngIf=\"datepicker.isOpen()\"\r\n (click)=\"isDropdownOpenedForCalendar(datepicker)\"\r\n ></i>\r\n <div class=\"right\">\r\n <span\r\n class=\"material-icons round-btn\"\r\n (click)=\"nextWeek()\"\r\n >\r\n navigate_next\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!--Multiple week select-->\r\n <div\r\n class=\"form-group\"\r\n *ngIf=\"config.selectMultipleWeeks\"\r\n >\r\n <div class=\"input-group\">\r\n <div class=\"multiple-weeks\">\r\n <input\r\n #dpFromDate\r\n class=\"form-control\"\r\n placeholder=\"Select Weeks\"\r\n [ngClass]=\"[config.customClass === '' ? '' : config.customClass]\"\r\n name=\"dpFromDate\"\r\n [readonly]=\"true\"\r\n [value]=\"weekNumbers\"\r\n (click)=\"isFocused(true); isDropdownOpenedForCalendar(datepicker)\"\r\n />\r\n <i\r\n *ngIf=\"!multiSelectDropdownOpen\"\r\n class=\"mdi mdi-menu-down multiselect-input-arrow\"\r\n ></i>\r\n <i\r\n *ngIf=\"multiSelectDropdownOpen\"\r\n class=\"mdi mdi-menu-up multiselect-input-arrow\"\r\n ></i>\r\n </div>\r\n </div>\r\n </div>\r\n</form>\r\n\r\n<ngb-datepicker\r\n #weekPicker\r\n *ngIf=\"!config.showAsDropdown\"\r\n [displayMonths]=\"1\"\r\n [startDate]=\"fromDate!\"\r\n [firstDayOfWeek]=\"config.firstDayOfWeek\"\r\n [showWeekNumbers]=\"config.showWeekNumbers\"\r\n [dayTemplate]=\"t\"\r\n [maxDate]=\"maxDate\"\r\n [minDate]=\"minDate\"\r\n (dateSelect)=\"selectWeek($event)\"\r\n [markDisabled]=\"disabledFunc\"\r\n>\r\n</ngb-datepicker>\r\n\r\n<ng-template #footerTemplate>\r\n <hr class=\"my-0\" />\r\n <button\r\n class=\"btn btn-primary btn-sm m-2 float-right apply-btn\"\r\n (click)=\"applyChanges(); closeDatepicker(datepicker)\"\r\n >\r\n Apply\r\n </button>\r\n <button\r\n class=\"btn btn-primary btn-sm m-2 float-right cancel-btn\"\r\n (click)=\"revertDates(); closeDatepicker(datepicker)\"\r\n >\r\n Cancel\r\n </button>\r\n</ng-template>\r\n\r\n<ng-template\r\n #t\r\n let-date\r\n let-focused=\"focused\"\r\n let-disabled=\"disabled\"\r\n>\r\n <span\r\n class=\"custom-day\"\r\n [class.focused]=\"focused\"\r\n [class.range]=\"isRange(date)\"\r\n [class.faded]=\"isHovered(date) || isInside(date)\"\r\n [class.disabled]=\"disabled\"\r\n (mouseenter)=\"hoveredDate = date\"\r\n (mouseleave)=\"hoveredDate = null\"\r\n >\r\n {{ date.day }}\r\n </span>\r\n</ng-template>\r\n", styles: [":host ::ng-deep .ngb-dp-arrow button:disabled{color:#4a4a4a;background-color:#fff;opacity:.25;cursor:not-allowed}:host ::ng-deep .ngb-dp-arrow button:disabled .ngb-dp-navigation-chevron{color:#4a4a4a}:host ::ng-deep .ngb-dp-arrow button .ngb-dp-navigation-chevron{color:#000}:host::ng-deep .right{width:unset!important;background-color:#fff!important}:host::ng-deep .ngb-dp-day,:host::ng-deep .ngb-dp-weekday{width:3rem!important;font-style:unset!important;color:#8bac2a;outline:none}:host::ng-deep .ngb-dp-day:first-child{border:1px solid black}:host::ng-deep .ngb-dp-day.disabled{color:#d4d4d4;cursor:not-allowed}:host::ng-deep .ngb-dp-showweek:before{content:\"Weeks\";margin-right:5px}:host::ng-deep .ngb-dp-week-number{font-style:unset!important;width:4rem!important;margin-right:5px;font-weight:700;color:#000!important;border-right:1px solid rgba(0,0,0,.125)}:host::ng-deep .ngb-dp-week-number:before{font-style:unset!important;content:\"Week \"}:host::ng-deep .ngb-dp-weekday.ngb-dp-showweek{margin-right:5px;width:4rem!important;border-right:1px solid rgba(0,0,0,.125)}:host::ng-deep .dropdown-menu{box-shadow:none}:host::ng-deep .dropdown-menu.show{top:15px!important}:host::ng-deep .bg-light{background-color:#fff!important}:host::ng-deep .ngb-dp-weekdays{border-top:1px solid rgba(0,0,0,.125)}:host::ng-deep .ngb-dp-arrow-btn:focus{box-shadow:none}.custom-day{text-align:center;padding:.185rem .25rem;display:inline-block;height:1.75rem;font-weight:700;color:#222b45;width:3rem!important}.custom-day.focused{background-color:#fff}.custom-day.faded{background-color:#0275d880!important}.custom-day.faded:focus{outline:none!important}.custom-day:hover{background-color:#268bff1f!important;color:#4a4a4a!important}.custom-day:focus{outline:none!important}.custom-day.range{background-color:#268bff1f!important;color:#4a4a4a!important}.custom-day.range:focus{outline:none!important}.custom-day.disabled{color:#d3d3d3}.input-group>.single-week,.input-group .multiple-weeks{display:inline-flex!important}.input-group>.single-week>.form-control,.input-group .multiple-weeks>.form-control{width:212px;border-radius:2px;border:solid 1px #b3b3b3;height:1.875rem;cursor:pointer}.input-group>.form-control{width:212px;border-radius:2px;border:solid 1px #b3b3b3;height:1.875rem;cursor:pointer}.form-control[readonly]{background-color:#fff!important}.next-round-btn{transform:rotate(180deg);margin-left:.125rem;line-height:1.3;border-radius:50%;cursor:pointer}.round-btn{line-height:1.3;border-radius:50%;cursor:pointer;margin-left:.25rem}:host::ng-deep select.custom-select{background:none;appearance:auto}.left,.right{width:1.875rem!important;height:1.875rem;background:#d8d8d8!important;border-radius:50%}.left{margin-right:.3125rem}.right{margin-left:.3125rem}:host::ng-deep .right .ngb-dp-navigation-chevron,:host::ng-deep .ngb-dp-navigation-chevron{color:#268bff}:host::ng-deep .ngb-dp-arrow-btn:focus{outline-width:0px}.custom-day.faded{background-color:#268bff33!important;color:#000!important;font-weight:600}.custom-day{text-align:center;padding:.185rem .25rem;color:#000;display:inline-block;line-height:1.9;height:2rem;width:2rem}.custom-day.focused{background-color:#e6e6e6}.custom-day.range{background-color:#268bff!important;color:#fff!important;font-weight:600}.custom-day:hover{background-color:#d9e1e6;border-radius:.25rem;color:#bdbdbd}:host::ng-deep div.ngb-dp-weekday{color:#8bac2a;font-family:Roboto;font-size:.8125rem;font-weight:700;font-stretch:normal;font-style:normal;line-height:2.6;letter-spacing:normal}.mdi-menu-up,.mdi-menu-down{position:absolute;right:2.438rem;top:1px;font-size:1.375rem;cursor:pointer}.multiselect-input-arrow{position:absolute;right:.75rem;top:3px;font-size:1.25rem;cursor:pointer;pointer-events:none}button:focus{outline:none;box-shadow:none;border-color:transparent}::ng-deep .ngb-dp-header,::ng-deep .ngb-dp-week{background:#fff!important}.weeknumbers-label{position:relative;left:30px;font-size:12px}.apply-btn{background-color:#268bff;color:#fff}.cancel-btn{background-color:#268bff1f;color:#268bff}\n"] }]
|
|
1574
|
-
}], ctorParameters: function () { return [{ type: i1
|
|
1517
|
+
}], ctorParameters: function () { return [{ type: i1.NgbCalendar }, { type: i1.NgbDatepickerConfig }, { type: AnnaDateTimeFormatService }, { type: AnnaGlobalConfigService }]; }, propDecorators: { selectedFromDate: [{
|
|
1575
1518
|
type: Input
|
|
1576
1519
|
}], selectedEndDate: [{
|
|
1577
1520
|
type: Input
|
|
@@ -1612,11 +1555,13 @@ class TooltipModelForColumnLevelFiltering {
|
|
|
1612
1555
|
}
|
|
1613
1556
|
}
|
|
1614
1557
|
class RadioButtonModel {
|
|
1615
|
-
constructor(key, value, sort, filter) {
|
|
1558
|
+
constructor(key, value, sort, filter, showSplitedOptions = false, splitDelimiter = ", ") {
|
|
1616
1559
|
this.key = key;
|
|
1617
1560
|
this.label = value;
|
|
1618
1561
|
this.isSortRequired = sort;
|
|
1619
1562
|
this.isFilterRequired = filter;
|
|
1563
|
+
this.showSplitedOptions = showSplitedOptions;
|
|
1564
|
+
this.splitDelimiter = splitDelimiter;
|
|
1620
1565
|
}
|
|
1621
1566
|
}
|
|
1622
1567
|
var AllSelectedStatus;
|
|
@@ -1805,6 +1750,8 @@ class AnnaFilterService {
|
|
|
1805
1750
|
this.tooltipMap = new Map();
|
|
1806
1751
|
this.tooltipSelectedMap = new Map();
|
|
1807
1752
|
this.appliedFiltersArray = [];
|
|
1753
|
+
this.SPLITED_CHECKBOX_FILTER_KEY = "_SplitedCheckBoxOptions";
|
|
1754
|
+
this.DEFAULT_SPLIT_SEPARATOR = ", ";
|
|
1808
1755
|
this.sliderCurrencySet = new Set([
|
|
1809
1756
|
"booked",
|
|
1810
1757
|
"cpp",
|
|
@@ -2000,6 +1947,22 @@ class AnnaFilterService {
|
|
|
2000
1947
|
"outstandingSpotsValue",
|
|
2001
1948
|
"offeredADUsValue",
|
|
2002
1949
|
"uDProjectionValue",
|
|
1950
|
+
"totalBookedGrp",
|
|
1951
|
+
"totalBookedImps",
|
|
1952
|
+
"bookedGrpToDate",
|
|
1953
|
+
"bookedImpsToDate",
|
|
1954
|
+
"deliveryThresholdPercentage",
|
|
1955
|
+
"goalGrpToDate",
|
|
1956
|
+
"goalImpsToDate",
|
|
1957
|
+
"postedGrpToDate",
|
|
1958
|
+
"postedImpsToDate",
|
|
1959
|
+
"deliveredPercentage",
|
|
1960
|
+
"udGrpToDate",
|
|
1961
|
+
"udImpsToDate",
|
|
1962
|
+
"odGrpToDate",
|
|
1963
|
+
"odImpsToDate",
|
|
1964
|
+
"scheduledADUs",
|
|
1965
|
+
"postedADUs",
|
|
2003
1966
|
];
|
|
2004
1967
|
const calendarArr = [
|
|
2005
1968
|
"period",
|
|
@@ -2017,6 +1980,7 @@ class AnnaFilterService {
|
|
|
2017
1980
|
"ViolatingSpotDate",
|
|
2018
1981
|
"ViolatedSpotDate",
|
|
2019
1982
|
"ActualWeekStartDate",
|
|
1983
|
+
"LastFetchedDate",
|
|
2020
1984
|
];
|
|
2021
1985
|
const timeArr = [
|
|
2022
1986
|
"StartTimeForFilter",
|
|
@@ -2144,7 +2108,8 @@ class AnnaFilterService {
|
|
|
2144
2108
|
this.selectedRadio === "GeneratedOn" ||
|
|
2145
2109
|
this.selectedRadio === "Week" ||
|
|
2146
2110
|
this.selectedRadio === "ActualWeekStartDate" ||
|
|
2147
|
-
this.selectedRadio === "scheduledDate"
|
|
2111
|
+
this.selectedRadio === "scheduledDate" ||
|
|
2112
|
+
this.selectedRadio === "LastFetchedDate") {
|
|
2148
2113
|
isDataFiltered =
|
|
2149
2114
|
!isEqual(this.initialValueMap.get(this.selectedRadio), this.tooltipSelectedMap.get(this.selectedRadio)) && !isEqual(this.tooltipSelectedMap.get(this.selectedRadio), this.flightDateRange);
|
|
2150
2115
|
if (!isDataFiltered && this.tooltipSelectedMap.has(this.selectedRadio)) {
|
|
@@ -2194,6 +2159,11 @@ class AnnaFilterService {
|
|
|
2194
2159
|
filteredData = this.checkIfSortingIsAppliedThenSortTheData(originalData);
|
|
2195
2160
|
}
|
|
2196
2161
|
this.tooltipSelectedMap.forEach((value, key) => {
|
|
2162
|
+
const filterSplitedValues = key.includes(this.SPLITED_CHECKBOX_FILTER_KEY);
|
|
2163
|
+
if (filterSplitedValues) {
|
|
2164
|
+
// eslint-disable-next-line no-param-reassign
|
|
2165
|
+
key = key.split(this.SPLITED_CHECKBOX_FILTER_KEY)[0];
|
|
2166
|
+
}
|
|
2197
2167
|
if (key !== keyToSkip && originalData.length > 0 && Object.keys(originalData[0]).includes(key)) {
|
|
2198
2168
|
if (this.sliderSet.has(key)) {
|
|
2199
2169
|
filteredData = filteredData.filter((obj) => obj[key] >= value.min && obj[key] <= value.max);
|
|
@@ -2214,7 +2184,8 @@ class AnnaFilterService {
|
|
|
2214
2184
|
key === "ActualWeekStartDate" ||
|
|
2215
2185
|
key === "ViolatedSpotDate" ||
|
|
2216
2186
|
key === "ViolatingSpotDate" ||
|
|
2217
|
-
key === "scheduledDate"
|
|
2187
|
+
key === "scheduledDate" ||
|
|
2188
|
+
key === "LastFetchedDate") {
|
|
2218
2189
|
filteredData = filteredData.filter((obj) => this.isObjectInTheRange(obj, value, key));
|
|
2219
2190
|
}
|
|
2220
2191
|
else if (key === "period") {
|
|
@@ -2236,7 +2207,7 @@ class AnnaFilterService {
|
|
|
2236
2207
|
filteredData = filteredData.filter((obj) => this.returnDataForStartAndEndTimeRange(obj, value, key));
|
|
2237
2208
|
}
|
|
2238
2209
|
else if (value.length > 0) {
|
|
2239
|
-
filteredData = filteredData.filter((u) => value.includes(u[key]));
|
|
2210
|
+
filteredData = filteredData.filter((u) => filterSplitedValues ? value.find((val) => u[key].includes(val)) : value.includes(u[key]));
|
|
2240
2211
|
}
|
|
2241
2212
|
}
|
|
2242
2213
|
});
|
|
@@ -2419,7 +2390,8 @@ class AnnaFilterService {
|
|
|
2419
2390
|
key === "ActualWeekStartDate" ||
|
|
2420
2391
|
key === "ViolatedSpotDate" ||
|
|
2421
2392
|
key === "ViolatingSpotDate" ||
|
|
2422
|
-
key === "scheduledDate"
|
|
2393
|
+
key === "scheduledDate" ||
|
|
2394
|
+
key === "LastFetchedDate") {
|
|
2423
2395
|
filteredData = filteredData.filter((obj) => this.isObjectInTheRange(obj, value, key));
|
|
2424
2396
|
}
|
|
2425
2397
|
else if (key === "period") {
|
|
@@ -2542,19 +2514,33 @@ class AnnaFilterService {
|
|
|
2542
2514
|
currentColumnSortFilter = currentColumnSortFilter || SortTypeEnum.DEFAULT;
|
|
2543
2515
|
return currentColumnSortFilter;
|
|
2544
2516
|
}
|
|
2545
|
-
createListForCheckboxFilter(header, optionData) {
|
|
2546
|
-
const tooltipOptions = this.getTooltipModelFromOptionData(optionData, header);
|
|
2517
|
+
createListForCheckboxFilter(header, optionData, showSplitedOptions = false, splitDelimiter = this.DEFAULT_SPLIT_SEPARATOR) {
|
|
2518
|
+
const tooltipOptions = this.getTooltipModelFromOptionData(optionData, header, showSplitedOptions, splitDelimiter);
|
|
2547
2519
|
this.selectUnselectListCheckbox(tooltipOptions, header);
|
|
2548
2520
|
this.formatNullOptionToSpecifiedString(tooltipOptions, this.nullToBeFormatedIntoString);
|
|
2549
2521
|
return tooltipOptions;
|
|
2550
2522
|
}
|
|
2551
|
-
getTooltipModelFromOptionData(optionData, header) {
|
|
2552
|
-
|
|
2523
|
+
getTooltipModelFromOptionData(optionData, header, showSplitedOptions = false, splitDelimiter = this.DEFAULT_SPLIT_SEPARATOR) {
|
|
2524
|
+
let uniqOptionData = [];
|
|
2525
|
+
if (showSplitedOptions) {
|
|
2526
|
+
let splittedOptions = [];
|
|
2527
|
+
optionData.forEach((option) => {
|
|
2528
|
+
splittedOptions = [...splittedOptions, ...option[header].split(splitDelimiter)];
|
|
2529
|
+
});
|
|
2530
|
+
uniqOptionData = uniq(splittedOptions);
|
|
2531
|
+
}
|
|
2532
|
+
else {
|
|
2533
|
+
uniqOptionData = uniq(optionData.map((item) => item[header]));
|
|
2534
|
+
}
|
|
2553
2535
|
return uniqOptionData.map((item, index) => new TooltipModel(item, index + 1));
|
|
2554
2536
|
}
|
|
2555
2537
|
selectUnselectListCheckbox(tooltipOptions, header) {
|
|
2556
|
-
|
|
2557
|
-
|
|
2538
|
+
const tooltipSelectedMapWithOriginalKeys = new Map();
|
|
2539
|
+
this.tooltipSelectedMap.forEach((value, key) => {
|
|
2540
|
+
tooltipSelectedMapWithOriginalKeys.set(key.split(this.SPLITED_CHECKBOX_FILTER_KEY)[0], value);
|
|
2541
|
+
});
|
|
2542
|
+
if (tooltipSelectedMapWithOriginalKeys.has(header)) {
|
|
2543
|
+
const selectedValueSet = new Set(tooltipSelectedMapWithOriginalKeys.get(header));
|
|
2558
2544
|
tooltipOptions.forEach((item) => {
|
|
2559
2545
|
item.isSelected = selectedValueSet.has(item.value);
|
|
2560
2546
|
});
|
|
@@ -3198,6 +3184,21 @@ class AnnaFilterService {
|
|
|
3198
3184
|
});
|
|
3199
3185
|
});
|
|
3200
3186
|
}
|
|
3187
|
+
// for date type of filters we need to update tooltip selected map start and end date values to dayjs object.
|
|
3188
|
+
updateDateFilterTooltipSelectedMap(keys) {
|
|
3189
|
+
keys.forEach((key) => {
|
|
3190
|
+
if (this.tooltipSelectedMap?.has(key)) {
|
|
3191
|
+
const dateRange = this.tooltipSelectedMap.get(key);
|
|
3192
|
+
if (dateRange?.fromDate && dateRange?.toDate) {
|
|
3193
|
+
const selectedDateObj = {
|
|
3194
|
+
fromDate: dayjs(dateRange.fromDate),
|
|
3195
|
+
toDate: dayjs(dateRange.toDate),
|
|
3196
|
+
};
|
|
3197
|
+
this.tooltipSelectedMap.set(key, selectedDateObj);
|
|
3198
|
+
}
|
|
3199
|
+
}
|
|
3200
|
+
});
|
|
3201
|
+
}
|
|
3201
3202
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaFilterService, deps: [{ token: AnnaDateTimeFormatService }, { token: AnnaSortService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
3202
3203
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaFilterService, providedIn: "root" }); }
|
|
3203
3204
|
}
|
|
@@ -3291,10 +3292,13 @@ class AnnaColumnCheckboxFilterComponent {
|
|
|
3291
3292
|
this.searchItem = null;
|
|
3292
3293
|
this.showSortComponent = activeTab.isSortRequired;
|
|
3293
3294
|
this.showFilterComponent = activeTab.isFilterRequired;
|
|
3295
|
+
this.showSplitedOptions = activeTab.showSplitedOptions;
|
|
3296
|
+
this.splitDelimiter = this.showSplitedOptions ? (activeTab.splitDelimiter ?? this.annaFilterService.DEFAULT_SPLIT_SEPARATOR) : "";
|
|
3294
3297
|
this.tempSortOrder = null;
|
|
3295
3298
|
this.isFilterChanged = false;
|
|
3296
3299
|
this.isSortChanged = false;
|
|
3297
3300
|
this.annaFilterService.selectedRadio = header;
|
|
3301
|
+
this.selectedRadioKey = `${header}${(this.showSplitedOptions) ? (this.annaFilterService.SPLITED_CHECKBOX_FILTER_KEY) : ""}`;
|
|
3298
3302
|
if (reload) {
|
|
3299
3303
|
setTimeout(() => {
|
|
3300
3304
|
this.createFilterTooltipData(activeTab, header);
|
|
@@ -3324,7 +3328,7 @@ class AnnaColumnCheckboxFilterComponent {
|
|
|
3324
3328
|
}
|
|
3325
3329
|
createListForCheckboxFilter(header) {
|
|
3326
3330
|
const optionData = this.annaFilterService.getFilterOptionsData(this.tableData, this.clonedTableData);
|
|
3327
|
-
const tooltipOptions = this.annaFilterService.createListForCheckboxFilter(header, optionData);
|
|
3331
|
+
const tooltipOptions = this.annaFilterService.createListForCheckboxFilter(header, optionData, this.showSplitedOptions, this.splitDelimiter);
|
|
3328
3332
|
return tooltipOptions;
|
|
3329
3333
|
}
|
|
3330
3334
|
selectUnselectListCheckbox(tooltipOptions, header) {
|
|
@@ -3422,7 +3426,7 @@ class AnnaColumnCheckboxFilterComponent {
|
|
|
3422
3426
|
if (this.showFilterComponent && this.isFilterChanged) {
|
|
3423
3427
|
const currentSelectedValue = this.annaFilterService.getCheckboxCurrentSelectedValue(this.searchItem, this.tooltipOptions);
|
|
3424
3428
|
this.annaFilterService.reOrderAppliedFiltersState(this.clonedTableData, currentSelectedValue);
|
|
3425
|
-
this.annaFilterService.tooltipSelectedMap.set(this.
|
|
3429
|
+
this.annaFilterService.tooltipSelectedMap.set(this.selectedRadioKey, currentSelectedValue);
|
|
3426
3430
|
this.tableData = this.annaFilterService.filterData(this.clonedTableData, "");
|
|
3427
3431
|
this.annaSortService.noSortingAppliedData = cloneDeep(this.tableData);
|
|
3428
3432
|
}
|
|
@@ -4485,7 +4489,7 @@ class AnnaNonEditableGenericTableComponent {
|
|
|
4485
4489
|
this.tooltipRadioTextMap.set("flightEndDate", "End Date");
|
|
4486
4490
|
this.tooltipRadioTextMap.set("orderIdAndRevNumber", "STN Order#-Rev#");
|
|
4487
4491
|
this.tooltipRadioTextMap.set("stationOrderNumber", "STN Order#");
|
|
4488
|
-
this.tooltipRadioTextMap.set("alternateOrderId", "Alt/Rep Order
|
|
4492
|
+
this.tooltipRadioTextMap.set("alternateOrderId", "Alt/Rep Order#");
|
|
4489
4493
|
this.tooltipRadioTextMap.set("grp", "GRP");
|
|
4490
4494
|
this.tooltipRadioTextMap.set("cpp", "CPP");
|
|
4491
4495
|
this.tooltipRadioTextMap.set("imps", "IMPS");
|
|
@@ -4519,10 +4523,10 @@ class AnnaNonEditableGenericTableComponent {
|
|
|
4519
4523
|
this.tooltipRadioTextMap.set("osUnderDly", "O/s Under Dly");
|
|
4520
4524
|
this.tooltipRadioTextMap.set("primaryAe", "Primary AE");
|
|
4521
4525
|
this.tooltipRadioTextMap.set("region", "Region");
|
|
4522
|
-
this.tooltipRadioTextMap.set("revCode1", "Rev
|
|
4526
|
+
this.tooltipRadioTextMap.set("revCode1", "Rev Code 1");
|
|
4523
4527
|
this.tooltipRadioTextMap.set("orderNoRevNo", "STN Order#-Rev#");
|
|
4524
|
-
this.tooltipRadioTextMap.set("revCode2", "Rev
|
|
4525
|
-
this.tooltipRadioTextMap.set("revCode3", "Rev
|
|
4528
|
+
this.tooltipRadioTextMap.set("revCode2", "Rev Code 2");
|
|
4529
|
+
this.tooltipRadioTextMap.set("revCode3", "Rev Code 3");
|
|
4526
4530
|
this.tooltipRadioTextMap.set("booked", "$ Booked");
|
|
4527
4531
|
this.tooltipRadioTextMap.set("spots", "Spots");
|
|
4528
4532
|
this.tooltipRadioTextMap.set("postedAudPercent", "Posted %");
|
|
@@ -4763,6 +4767,8 @@ class AnnaNonEditableGenericTableComponent {
|
|
|
4763
4767
|
// this.tooltipRadioTextMap.set("odValue", "$ OD");
|
|
4764
4768
|
this.tooltipRadioTextMap.set("udValue", "Proj. $ UD");
|
|
4765
4769
|
this.tooltipRadioTextMap.set("odValue", "Proj. $ OD");
|
|
4770
|
+
this.tooltipRadioTextMap.set("buyerNames", "Buyers");
|
|
4771
|
+
this.tooltipRadioTextMap.set("repUserNames", "Reps");
|
|
4766
4772
|
this.tooltipRadioTextMap.set("InventoryCode", "Inventory Code");
|
|
4767
4773
|
this.tooltipRadioTextMap.set("BuyerProgramName", "Buyer Program Name");
|
|
4768
4774
|
this.tooltipRadioTextMap.set("StartTime", "Start Time");
|
|
@@ -4805,6 +4811,30 @@ class AnnaNonEditableGenericTableComponent {
|
|
|
4805
4811
|
this.tooltipRadioTextMap.set("SellerProgInvCode", "Seller Pgm (Inv Code)");
|
|
4806
4812
|
this.tooltipRadioTextMap.set("SellerProgramName", "Seller Program");
|
|
4807
4813
|
this.tooltipRadioTextMap.set("buyerProgramName", "Buyer Program");
|
|
4814
|
+
this.tooltipRadioTextMap.set("sellerProgramName", "Seller Program");
|
|
4815
|
+
this.tooltipRadioTextMap.set("LastFetchedDate", "Last Fetched");
|
|
4816
|
+
this.tooltipRadioTextMap.set("trafficOrderId", "Order Id");
|
|
4817
|
+
this.tooltipRadioTextMap.set("repOrderIdWithModCode", "Alt Order# - Mod#");
|
|
4818
|
+
this.tooltipRadioTextMap.set("smReviewedBy", "SM Reviewed By");
|
|
4819
|
+
this.tooltipRadioTextMap.set("smReviewedDateTime", "SM Reviewed Date Time");
|
|
4820
|
+
this.tooltipRadioTextMap.set("sentForEntryBy", "Sent For Entry By");
|
|
4821
|
+
this.tooltipRadioTextMap.set("sentForEntryDateTime", "Sent For Entry Date Time");
|
|
4822
|
+
this.tooltipRadioTextMap.set("bookedDps", "Booked DPs");
|
|
4823
|
+
this.tooltipRadioTextMap.set("totalBookedGrp", "Total Booked GRP");
|
|
4824
|
+
this.tooltipRadioTextMap.set("totalBookedImps", "Total Booked IMPS");
|
|
4825
|
+
this.tooltipRadioTextMap.set("bookedGrpToDate", "Booked GRP To-date");
|
|
4826
|
+
this.tooltipRadioTextMap.set("bookedImpsToDate", "Booked IMPS To-date");
|
|
4827
|
+
this.tooltipRadioTextMap.set("goalGrpToDate", "Goal GRP To-date");
|
|
4828
|
+
this.tooltipRadioTextMap.set("goalImpsToDate", "Goal IMPS To-date");
|
|
4829
|
+
this.tooltipRadioTextMap.set("postedGrpToDate", "Posted GRP To-date");
|
|
4830
|
+
this.tooltipRadioTextMap.set("postedImpsToDate", "Posted IMPS To-date");
|
|
4831
|
+
this.tooltipRadioTextMap.set("udGrpToDate", "UD GRP To-date");
|
|
4832
|
+
this.tooltipRadioTextMap.set("udImpsToDate", "UD IMPS To-date");
|
|
4833
|
+
this.tooltipRadioTextMap.set("odGrpToDate", "OD GRP To-date");
|
|
4834
|
+
this.tooltipRadioTextMap.set("odImpsToDate", "OD IMPS To-date");
|
|
4835
|
+
this.tooltipRadioTextMap.set("scheduledADUs", "$ Scheduled ADUs");
|
|
4836
|
+
this.tooltipRadioTextMap.set("postedADUs", "$ Posted ADUs");
|
|
4837
|
+
this.tooltipRadioTextMap.set("bookedVal", "$ Booked");
|
|
4808
4838
|
}
|
|
4809
4839
|
selectOrUnselectCheckbox(rowData, columnKeys, isCheckboxSelected) {
|
|
4810
4840
|
rowData[columnKeys] = !rowData[columnKeys];
|
|
@@ -4901,7 +4931,8 @@ class AnnaNonEditableGenericTableComponent {
|
|
|
4901
4931
|
this.filterTabObjects = header.map((key, index) => {
|
|
4902
4932
|
// change to display name
|
|
4903
4933
|
const value = this.tooltipRadioTextMap.has(key) ? this.tooltipRadioTextMap.get(key) : key;
|
|
4904
|
-
return new RadioButtonModel(key, value, columnHeader.isSortRequired[index], columnHeader.isFilterRequired[index]
|
|
4934
|
+
return new RadioButtonModel(key, value, columnHeader.isSortRequired[index], columnHeader.isFilterRequired[index], columnHeader?.showSplitedOptionsInFilter?.[index] ?? false, // Defaulting to 'false' if undefined
|
|
4935
|
+
columnHeader?.splitDelimiter?.[index]);
|
|
4905
4936
|
});
|
|
4906
4937
|
}
|
|
4907
4938
|
disableEnableEachColumnTooltipIcon() {
|
|
@@ -4959,8 +4990,8 @@ class AnnaNonEditableGenericTableComponent {
|
|
|
4959
4990
|
}
|
|
4960
4991
|
this.gtIconClicked.emit({ data: rowData, iconClass });
|
|
4961
4992
|
}
|
|
4962
|
-
svgIconClicked(data) {
|
|
4963
|
-
this.gtSVGIconClicked.emit(data);
|
|
4993
|
+
svgIconClicked(data, key) {
|
|
4994
|
+
this.gtSVGIconClicked.emit({ data, key });
|
|
4964
4995
|
}
|
|
4965
4996
|
textActionClicked(rowData, id, columnHeader) {
|
|
4966
4997
|
this.gtTextActionClicked.emit({ data: rowData, id, columnHeader, isIconClicked: false });
|
|
@@ -5186,7 +5217,7 @@ class AnnaNonEditableGenericTableComponent {
|
|
|
5186
5217
|
this.statusNoteTooltip = null;
|
|
5187
5218
|
}
|
|
5188
5219
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaNonEditableGenericTableComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: AnnaSortService }, { token: AnnaDateTimeFormatService }, { token: AnnaFilterService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5189
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AnnaNonEditableGenericTableComponent, isStandalone: true, selector: "anna-core-non-editable-generic-table-lib", inputs: { showSkeletonLoading: "showSkeletonLoading", tableHeaders: "tableHeaders", tableData: "tableData", clonedTableData: "clonedTableData", gtGeneralConfig: "gtGeneralConfig", totalRowInfo: "totalRowInfo", gtDimension: "gtDimension", tableClass: "tableClass", maximumRowsWhichCanBeRenderedWithoutScroll: "maximumRowsWhichCanBeRenderedWithoutScroll", fixNumberOfRowsForPopup: "fixNumberOfRowsForPopup", limit: "limit", includeBorderInTableHeight: "includeBorderInTableHeight", downloadInProgress: "downloadInProgress", percentDone: "percentDone", starredInProgress: "starredInProgress", clickableRow: "clickableRow", setTableHeightWhenRowSizeIsFixed: "setTableHeightWhenRowSizeIsFixed", tableBorderBottomClassRequired: "tableBorderBottomClassRequired", hideSomeTds: "hideSomeTds", tdsHaveRowSpan: "tdsHaveRowSpan", multipleTablesPresent: "multipleTablesPresent", showOrHideToggleForTotalRow: "showOrHideToggleForTotalRow" }, outputs: { toggleCheckbox: "toggleCheckbox", toggleRowCheckbox: "toggleRowCheckbox", toggleHeaderCheckbox: "toggleHeaderCheckbox", undoIconClicked: "undoIconClicked", filterAppliedToTable: "filterAppliedToTable", sortingAppliedToTable: "sortingAppliedToTable", rowClicked: "rowClicked", radioButtonSelected: "radioButtonSelected", columnFilterOpened: "columnFilterOpened", columnFilterClosed: "columnFilterClosed", gtIconClicked: "gtIconClicked", gtSVGIconClicked: "gtSVGIconClicked", gtTextActionClicked: "gtTextActionClicked", gtViewDetailClicked: "gtViewDetailClicked", gtInnerHTMLClicked: "gtInnerHTMLClicked", downloadSpotDetails: "downloadSpotDetails", clickableDataClicked: "clickableDataClicked", totalRowIconClicked: "totalRowIconClicked", notificationIconHover: "notificationIconHover", notificationIconHoverLeave: "notificationIconHoverLeave", editableInputEdited: "editableInputEdited", radioButtonMessageIconClicked: "radioButtonMessageIconClicked", statusNotePopupOpened: "statusNotePopupOpened" }, viewQueries: [{ propertyName: "tableElementRef", first: true, predicate: ["tableElementRef"], descendants: true, static: true }, { propertyName: "textActionTooltipTemplateRef", first: true, predicate: ["textActionTooltipTemplate"], descendants: true }, { propertyName: "programChangeTooltipTemplateRef", first: true, predicate: ["programChangeTooltipTemplate"], descendants: true }, { propertyName: "viewChildTableHeaders", predicate: ["tableHeader"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div\r\n id=\"generic-table-conatiner\"\r\n #tableElementRef\r\n class=\"table-container {{ gtGeneralConfig?.tableOuterContainerName }} {{ tableBottomBorderClass }}\"\r\n [ngClass]=\"{\r\n 'scroll-left-shadow-effect': isScrolledLeft,\r\n 'scroll-right-shadow-effect': !isScrollEnded,\r\n 'clickable-row': clickableRow,\r\n 'no-data-table': (isNoDataToDisplaySubject$ | async),\r\n 'table-with-show-hide-total-row-toggle': showOrHideToggleForTotalRow\r\n }\"\r\n (scroll)=\"onTableContainerScroll($event)\"\r\n>\r\n <div\r\n [class]=\"gtGeneralConfig.tableContainerName\"\r\n class=\"horizontal-scroll-for-table-container\"\r\n [ngStyle]=\"{\r\n height:\r\n tableData.length < noOfRowsToCheck\r\n ? 'calc(' +\r\n (gtDimension.rowHeight * tableData.length +\r\n (!tableData.length || !gtGeneralConfig.totalRow\r\n ? gtDimension.headerHeight\r\n : gtDimension.headerHeight + gtDimension.rowHeight)) +\r\n 'px)'\r\n : gtDimension.tableHeight\r\n }\"\r\n >\r\n <button\r\n *ngIf=\"showOrHideToggleForTotalRow && !showSkeletonLoading && (isNoDataToDisplaySubject$ | async) === false\"\r\n [ngClass]=\"{\r\n 'shift-toggle-top-on-total-row-click': !gtGeneralConfig.totalRow\r\n }\"\r\n class=\"show-or-hide-toggle-btn\"\r\n (click)=\"showHideTotalRow()\"\r\n >\r\n <i\r\n class=\"mdi mdi-menu-swap\"\r\n tooltipClass=\"show-or-hide-toggle-tooltip\"\r\n placement=\"auto\"\r\n container=\"body\"\r\n [ngbTooltip]=\"showOrHideToggleForTotalRowTooltip\"\r\n ></i>\r\n </button>\r\n <table\r\n class=\"gt\"\r\n [ngClass]=\"tableClass\"\r\n mat-table\r\n [dataSource]=\"renderedData\"\r\n >\r\n <tr\r\n class=\"header-row\"\r\n mat-header-row\r\n *matHeaderRowDef=\"tableColumns; sticky: true\"\r\n [style.height.px]=\"gtDimension.headerHeight\"\r\n ></tr>\r\n <tr\r\n class=\"total-row\"\r\n mat-header-row\r\n [style.height.px]=\"gtDimension.rowHeight\"\r\n *matHeaderRowDef=\"totalRowColumns; sticky: true\"\r\n [class.hidden]=\"\r\n showSkeletonLoading ||\r\n (!showSkeletonLoading && !tableData.length) ||\r\n (isNoDataToDisplaySubject$ | async) ||\r\n (!showSkeletonLoading && !gtGeneralConfig.totalRow)\r\n \"\r\n ></tr>\r\n <tr\r\n [class]=\"rowData.gtClass\"\r\n [ngClass]=\"{ 'no-border-tr': (isNoDataToDisplaySubject$ | async) }\"\r\n mat-row\r\n *matRowDef=\"let rowData; columns: tableColumns\"\r\n [style.height.px]=\"gtDimension.rowHeight\"\r\n (click)=\"dataRowClicked(rowData)\"\r\n ></tr>\r\n\r\n <!-- TOTAL ROW -->\r\n <ng-container\r\n [matColumnDef]=\"column.colName\"\r\n *ngFor=\"let column of totalRowInfo; trackBy: trackByFn\"\r\n >\r\n <td\r\n mat-header-cell\r\n *matHeaderCellDef\r\n [attr.colspan]=\"column.colspan\"\r\n class=\"{{ column.class }}\"\r\n >\r\n <ng-container *ngIf=\"column['isActionColumn']\">\r\n <a\r\n *ngFor=\"let data of column.actionData\"\r\n [class]=\"data.class\"\r\n (click)=\"onClickableDataClicked({}, data.id)\"\r\n >\r\n {{ data.name }}\r\n </a>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"column['isIconColumn']\">\r\n <i\r\n class=\"{{ column?.iconData?.class }}\"\r\n (click)=\"iconClickedInTotalRow(column?.colName)\"\r\n >\r\n </i>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!column['isActionColumn']\">\r\n <strong class=\"upper-label\"\r\n >{{ column.data }}\r\n <span\r\n class=\"red-text-totol-row\"\r\n *ngIf=\"column.additionalRedTextAfterData\"\r\n >{{ column.additionalRedTextAfterData }}</span\r\n ></strong\r\n >\r\n <ng-container *ngIf=\"column.lowerData\">\r\n <br />\r\n <span\r\n *ngIf=\"\r\n column.colName === 'total-potential-booked-unit' &&\r\n gtGeneralConfig.component === 'RATING';\r\n else columnLowerData\r\n \"\r\n class=\"clickable-data\"\r\n (click)=\"spotDetailsDownloadClicked('TOTALROW')\"\r\n [ngClass]=\"{ 'disabled-clickable-data': downloadInProgress }\"\r\n >{{ column.lowerData }}\r\n <span class=\"material-icons spot-details-download-icons\">get_app</span>\r\n <ng-container *ngIf=\"downloadInProgress && selectedRowTypeForDownload === 'TOTALROW'\">\r\n <ng-container [ngTemplateOutlet]=\"circularProgressBar\"></ng-container>\r\n </ng-container>\r\n </span>\r\n <ng-template #columnLowerData>\r\n <span class=\"lower-label\">{{ column.lowerData }}</span>\r\n </ng-template>\r\n </ng-container>\r\n <ng-container *ngIf=\"column.tooltipMessage && gtGeneralConfig.component !== 'LUR_VIOLATIONS'\">\r\n <i\r\n class=\"{{ column.tooltipIconClass }}\"\r\n container=\"body\"\r\n [ngbTooltip]=\"column.tooltipMessage\"\r\n tooltipClass=\"gt-total-row-tooltip\"\r\n placement=\"top bottom\"\r\n ></i>\r\n </ng-container>\r\n <ng-container *ngIf=\"gtGeneralConfig.component === 'LUR_VIOLATIONS' && column.tooltipMessage\">\r\n <i\r\n class=\"mi mdi-info-outline info-label\"\r\n container=\"body\"\r\n [ngbTooltip]=\"lurViolationTotalRowToolTip\"\r\n tooltipClass=\"gt-total-row-tooltip\"\r\n placement=\"bottom\"\r\n ></i>\r\n </ng-container>\r\n </ng-container>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- MAIN ROW -->\r\n <ng-container\r\n [matColumnDef]=\"columnDef.headerInfo[0].objectKey\"\r\n *ngFor=\"let columnDef of tableHeaders; trackBy: trackByFn\"\r\n >\r\n <th\r\n #tableHeader\r\n nowrap\r\n mat-header-cell\r\n *matHeaderCellDef\r\n [style.width]=\"columnDef.width\"\r\n >\r\n <div\r\n class=\"row mx-0\"\r\n *ngFor=\"let header of columnDef.headerInfo; let j = index\"\r\n >\r\n <p\r\n *ngIf=\"header.typeOfHeaderData === 'STRING'\"\r\n [ngClass]=\"{ 'upper-label': j === 0, 'lower-label': j === 1 }\"\r\n >\r\n <ngx-skeleton-loader\r\n *ngIf=\"header.name == null\"\r\n count=\"1\"\r\n [theme]=\"{\r\n height: '10px',\r\n display: 'block',\r\n width: columnDef.width,\r\n 'max-width': 'calc(100% - 20px)'\r\n }\"\r\n >\r\n </ngx-skeleton-loader>\r\n <ng-container *ngIf=\"header.name\">\r\n {{ header.name }}\r\n </ng-container>\r\n <ng-container *ngIf=\"header.tooltip && header.tooltip.tooltipMessage\">\r\n <i\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"header.tooltip.tooltipMessage\"\r\n container=\"body\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n </ng-container>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'impsInfoTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"impsInfoTooltip\"\r\n container=\"body\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"\r\n header.tooltip && header.tooltip.name === 'spotsColumnEquivalizationMessageTooltip'\r\n \"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n container=\"body\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"spotsColumnEquivalizationMessageTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'underDeliveryTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n container=\"body\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"underDeliveryTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'overDeliveryTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n container=\"body\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"overDeliveryTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'ratingInfoTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"ratingInfoTooltip\"\r\n container=\"body\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'rateInfoTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"rateInfoTooltip\"\r\n container=\"body\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'ongoingRevBookedColumnTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"ongoingRevBookedColumnTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'completedRevBookedColumnTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"completedRevBookedColumnTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'avgBookedRate'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"avgBookedRate\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'avgBookedRtg'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"avgBookedRtg\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'avgBookedImps'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"avgBookedImps\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'automationTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"automationTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'rebateImpact'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"rebateImpact\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'projectedImpsRtg'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"projectedImpsRtg\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n </p>\r\n\r\n <ng-container *ngIf=\"header.typeOfHeaderData === 'CHECKBOX'\">\r\n <span\r\n *ngIf=\"gtGeneralConfig.isHeaderChecked\"\r\n class=\"material-icons custom-column-checkbox-checked\"\r\n (click)=\"selectUnselectAllRows()\"\r\n >\r\n check_box\r\n </span>\r\n <span\r\n *ngIf=\"!gtGeneralConfig.isHeaderChecked\"\r\n class=\"material-icons custom-column-checkbox-unchecked\"\r\n [ngClass]=\"{ 'disable-checkbox': gtGeneralConfig.disableHeaderCheckbox }\"\r\n (click)=\"selectUnselectAllRows()\"\r\n >\r\n check_box_outline_blank\r\n </span>\r\n </ng-container>\r\n\r\n <div\r\n *ngIf=\"gtGeneralConfig.showAllColumnFilter\"\r\n class=\"sort-filter-container\"\r\n >\r\n <ng-container *ngIf=\"header.showTooltipIcon\">\r\n <!-- Active tooltip Functionality -->\r\n <ng-container *ngIf=\"header.filter === 'CHECKBOX'\">\r\n <span\r\n class=\"mdi mdi-filter-variant\"\r\n [ngClass]=\"{\r\n active:\r\n annaFilterService.isFilterSortActive &&\r\n annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon || showSkeletonLoading\r\n }\"\r\n [ngbTooltip]=\"filterTooltip\"\r\n placement=\"{{ filterAlignment }}\"\r\n container=\"body\"\r\n tooltipClass=\"non-edit-checkbox-tooltip\"\r\n [autoClose]=\"'outside'\"\r\n triggers=\"manual\"\r\n #t=\"ngbTooltip\"\r\n (click)=\"bindTheValueToToolTip(t, header)\"\r\n (hidden)=\"closeTooltip()\"\r\n >\r\n </span\r\n ><br />\r\n </ng-container>\r\n <ng-container *ngIf=\"header.filter === 'SLIDER'\">\r\n <span\r\n class=\"mdi mdi-filter-variant\"\r\n [ngClass]=\"{\r\n active:\r\n annaFilterService.isFilterSortActive &&\r\n annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon || showSkeletonLoading\r\n }\"\r\n [ngbTooltip]=\"sliderToolTip\"\r\n placement=\"bottom left-top\"\r\n container=\"body\"\r\n tooltipClass=\"non-edit-slider-tooltip\"\r\n [autoClose]=\"'outside'\"\r\n triggers=\"manual\"\r\n #t1=\"ngbTooltip\"\r\n (click)=\"bindTheValueToToolTip(t1, header)\"\r\n (hidden)=\"closeTooltip()\"\r\n >\r\n </span\r\n ><br />\r\n </ng-container>\r\n <ng-container *ngIf=\"header.filter === 'DATE'\">\r\n <span\r\n class=\"mdi mdi-filter-variant\"\r\n [ngClass]=\"{\r\n active:\r\n annaFilterService.isFilterSortActive &&\r\n annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon || showSkeletonLoading\r\n }\"\r\n [ngbTooltip]=\"datePickerTooltip\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n tooltipClass=\"non-edit-datepicker-tooltip\"\r\n [autoClose]=\"'outside'\"\r\n triggers=\"manual\"\r\n #t2=\"ngbTooltip\"\r\n (click)=\"bindTheValueToToolTip(t2, header)\"\r\n (hidden)=\"closeTooltip()\"\r\n >\r\n </span\r\n ><br />\r\n </ng-container>\r\n <ng-container *ngIf=\"header.filter === 'WEEK'\">\r\n <span\r\n class=\"mdi mdi-filter-variant\"\r\n [ngClass]=\"{\r\n active:\r\n annaFilterService.isFilterSortActive &&\r\n annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon || showSkeletonLoading\r\n }\"\r\n [ngbTooltip]=\"weekPickerToolTip\"\r\n placement=\"bottom left-top\"\r\n container=\"body\"\r\n [autoClose]=\"'outside'\"\r\n triggers=\"manual\"\r\n #t3=\"ngbTooltip\"\r\n (click)=\"bindTheValueToToolTip(t3, header)\"\r\n (hidden)=\"closeTooltip()\"\r\n >\r\n </span\r\n ><br />\r\n </ng-container>\r\n <ng-container *ngIf=\"header.filter === 'TIME'\">\r\n <span\r\n class=\"mdi mdi-filter-variant\"\r\n [ngClass]=\"{\r\n active:\r\n annaFilterService.isFilterSortActive &&\r\n annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon || showSkeletonLoading\r\n }\"\r\n [ngbTooltip]=\"timeFilterToolTip\"\r\n placement=\"bottom left-top auto\"\r\n container=\"body\"\r\n tooltipClass=\"non-edit-time-tooltip\"\r\n [autoClose]=\"'outside'\"\r\n triggers=\"manual\"\r\n #t4=\"ngbTooltip\"\r\n (click)=\"bindTheValueToToolTip(t4, header)\"\r\n (hidden)=\"closeTooltip()\"\r\n >\r\n </span\r\n ><br />\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"!header.showTooltipIcon\">\r\n <span id=\"no-filter-space\"></span><br />\r\n </ng-container>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'lurViolationInfoTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"lurViolationInfoTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n </div>\r\n </div>\r\n </th>\r\n\r\n <ng-container *matCellDef=\"let ROW_DATA\">\r\n <td\r\n mat-cell\r\n [style.background]=\"ROW_DATA.backgroundColor\"\r\n [style.border]=\"ROW_DATA.border\"\r\n class=\"{{ ROW_DATA.rowClass }}\"\r\n [ngClass]=\"ROW_DATA[columnDef.headerInfo[0].objectKey + 'TdClass']\"\r\n [attr.rowspan]=\"tdsHaveRowSpan ? ROW_DATA[columnDef.headerInfo[0].objectKey + 'Rowspan'] : 1\"\r\n *ngIf=\"\r\n !hideSomeTds ||\r\n (hideSomeTds && !ROW_DATA['hide' + columnDef.headerInfo[0].objectKey + 'Td'])\r\n \"\r\n >\r\n <ngx-skeleton-loader\r\n *ngIf=\"showSkeletonLoading\"\r\n count=\"1\"\r\n [theme]=\"{ height: '10px', display: 'block' }\"\r\n >\r\n </ngx-skeleton-loader>\r\n\r\n <ng-container *ngIf=\"!showSkeletonLoading\">\r\n <ng-container *ngIf=\"tableData.length > 0 && (isNoDataToDisplaySubject$ | async) === false\">\r\n <ng-container\r\n *ngFor=\"\r\n let subline of columnDef.headerInfo;\r\n let subLineIndex = index;\r\n trackBy: trackByFn\r\n \"\r\n >\r\n <div annaCoreShowEllipsisTextOnHover>\r\n <ng-container [ngSwitch]=\"columnDef.headerInfo[subLineIndex].typeOfBodyData\">\r\n <ng-container *ngSwitchCase=\"'ICON'\">\r\n <i\r\n *ngIf=\"\r\n !(\r\n starredInProgress &&\r\n ROW_DATA.orderId === selectedStarredOrderId\r\n )\r\n \"\r\n [class]=\"ROW_DATA.iconClass\"\r\n [ngClass]=\"{ 'disabled-starring': starredInProgress }\"\r\n (click)=\"iconClicked(ROW_DATA, ROW_DATA.iconClass)\"\r\n ngbTooltip=\"{{ ROW_DATA.iconTitleText }}\"\r\n placement=\"bottom\"\r\n container=\"body\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class\"\r\n ></i>\r\n <ng-container\r\n *ngIf=\"\r\n starredInProgress && ROW_DATA.orderId === selectedStarredOrderId\r\n \"\r\n >\r\n <div\r\n class=\"spinner-for-button-directive\"\r\n [ngClass]=\"{ 'disabled-starring': starredInProgress }\"\r\n ></div>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'ICON_CELL'\">\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <ng-container *ngIf=\"action.showObjectKey\">\r\n {{ ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey] }}\r\n </ng-container>\r\n\r\n <i\r\n *ngIf=\"action.showIcon\"\r\n [class]=\"action.iconClass\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringTextActionType(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].tooltipKey\r\n )\r\n \"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n tooltipClass=\"team-user-tooltip remove-on-scroll-class\"\r\n [ngbTooltip]=\"\r\n action.showTooltip && action?.tooltipData\r\n ? action.tooltipData\r\n : null\r\n \"\r\n (click)=\"\r\n textActionClicked(\r\n ROW_DATA,\r\n action.id,\r\n columnDef.headerInfo[subLineIndex]\r\n )\r\n \"\r\n [disableTooltip]=\"!action.showTooltip\"\r\n >\r\n </i>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'HTML_STRING'\">\r\n <p\r\n [innerHTML]=\"ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\"\r\n (click)=\"innerHTMLCellClicked($event, ROW_DATA)\"\r\n ></p>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'SVG_ICON'\">\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <span\r\n class=\"pr-4\"\r\n *ngIf=\"action?.showObjectKey\"\r\n >\r\n {{ ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey] }}\r\n </span>\r\n\r\n <span\r\n class=\"pr-4 {{ action?.additionalTextClass }}\"\r\n *ngIf=\"action?.additionalText\"\r\n >\r\n {{ action?.additionalText }}\r\n </span>\r\n\r\n <anna-core-icon-column\r\n class=\"pr-4\"\r\n *ngIf=\"action?.svgOrIconName\"\r\n [componentName]=\"gtGeneralConfig.component\"\r\n [dataObject]=\"ROW_DATA\"\r\n [iconToShow]=\"action.svgOrIconName\"\r\n data-html=\"true\"\r\n [ngbTooltip]=\"tipContent\"\r\n [disableTooltip]=\"!action?.svgOrIconTooltipMsg\"\r\n placement=\"auto\"\r\n container=\"body\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class\"\r\n (columnIconClicked)=\"svgIconClicked($event)\"\r\n >\r\n <ng-template #tipContent>\r\n <div [innerHTML]=\"action?.svgOrIconTooltipMsg\"></div\r\n ></ng-template>\r\n </anna-core-icon-column>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'TEXT_ACTIONS'\">\r\n <ng-container\r\n *ngFor=\"\r\n let text of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <button\r\n *ngIf=\"text.showTooltip\"\r\n (click)=\"\r\n textActionClicked(\r\n ROW_DATA,\r\n text.id,\r\n columnDef.headerInfo[subLineIndex]\r\n )\r\n \"\r\n [disabled]=\"text.isDisabled\"\r\n class=\"{{ text.class }}\"\r\n (mouseenter)=\"\r\n mouseEnterOnTextActionType(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].tooltipKey\r\n )\r\n \"\r\n [ngbTooltip]=\"textActionTooltipTemplate\"\r\n placement=\"auto\"\r\n container=\"body\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class\"\r\n >\r\n {{ text.name }}\r\n </button>\r\n\r\n <button\r\n *ngIf=\"!text.showTooltip\"\r\n (click)=\"\r\n textActionClicked(\r\n ROW_DATA,\r\n text.id,\r\n columnDef.headerInfo[subLineIndex]\r\n )\r\n \"\r\n [disabled]=\"text.isDisabled\"\r\n class=\"{{ text.class }}\"\r\n >\r\n {{ text.name }}\r\n </button>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'CHECKBOX'\">\r\n <span\r\n *ngIf=\"ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\"\r\n [ngClass]=\"{\r\n 'disable-checkbox':\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].isDisabledKey]\r\n }\"\r\n class=\"material-icons custom-column-checkbox-checked\"\r\n (click)=\"\r\n selectOrUnselectCheckbox(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].objectKey,\r\n false\r\n )\r\n \"\r\n >\r\n check_box\r\n </span>\r\n <span\r\n *ngIf=\"!ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\"\r\n class=\"material-icons custom-column-checkbox-unchecked\"\r\n [ngClass]=\"{\r\n 'disable-checkbox':\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].isDisabledKey]\r\n }\"\r\n (click)=\"\r\n selectOrUnselectCheckbox(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].objectKey,\r\n true\r\n )\r\n \"\r\n >\r\n check_box_outline_blank\r\n </span>\r\n\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <i\r\n *ngIf=\"action.showIcon\"\r\n [class]=\"action.iconClass\"\r\n [ngClass]=\"{ disabled: action.disabledIcon }\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringTextActionTypeContainingTable(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].tooltipKey\r\n )\r\n \"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n tooltipClass=\"tooltip-containing-table remove-on-scroll-class\"\r\n ngbTooltip=\"tooltipContainingTableTemplate\"\r\n >\r\n </i>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'CLICKABLE_DATA'\">\r\n <a\r\n *ngFor=\"\r\n let text of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n [class]=\"text.class\"\r\n (click)=\"onClickableDataClicked(ROW_DATA, text.id)\"\r\n >{{ text.name }}</a\r\n >\r\n <span\r\n *ngIf=\"\r\n subline.objectKey === 'displayBookedUnits' &&\r\n gtGeneralConfig.component === 'RATING'\r\n \"\r\n class=\"clickable-data\"\r\n (click)=\"spotDetailsDownloadClicked('DATAROW', ROW_DATA)\"\r\n [ngClass]=\"{ 'disabled-clickable-data': downloadInProgress }\"\r\n >{{ ROW_DATA.displayBookedUnits }}\r\n <span class=\"material-icons spot-details-download-icons\"\r\n >get_app</span\r\n >\r\n <ng-container\r\n *ngIf=\"\r\n downloadInProgress &&\r\n ROW_DATA.inventoryCodeId ===\r\n selectedInventoryIdForDownload &&\r\n ROW_DATA.demographic === selectedDemographicForDownload\r\n \"\r\n >\r\n <ng-container\r\n [ngTemplateOutlet]=\"circularProgressBar\"\r\n ></ng-container>\r\n </ng-container>\r\n </span>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'STRING___ICON_OR_TEXT_ACTION'\">\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <span\r\n [class]=\"action.additionalTextBeforeLinkClass\"\r\n [innerHtml]=\"action.additionalTextBeforeLink\"\r\n ngbTooltip=\"{{ action.additionalTextBeforeLink }}\"\r\n placement=\"bottom\"\r\n container=\"body\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class\"\r\n [disableTooltip]=\"!action.enableTooltipForAdditionalText\"\r\n ></span>\r\n\r\n <ng-container *ngIf=\"action && action.typeOfData === 'STRING'\">\r\n <span\r\n class=\"text-with-icon-and-text\"\r\n [ngClass]=\"{ 'reduced-width': action.showIcon }\"\r\n annaCoreShowEllipsisTextOnHover\r\n >{{ action.data }}</span\r\n >\r\n </ng-container>\r\n\r\n <a\r\n [id]=\"action.id\"\r\n *ngIf=\"action.showLink\"\r\n (click)=\"\r\n textActionClicked(\r\n ROW_DATA,\r\n action.id,\r\n columnDef.headerInfo[subLineIndex]\r\n )\r\n \"\r\n [class]=\"action.linkClass\"\r\n [ngClass]=\"{ disabled: action.disabledLink }\"\r\n >{{ action.data }}</a\r\n >\r\n <span\r\n ngbTooltip=\"{{ action.additionalTextAfterLink }}\"\r\n placement=\"bottom\"\r\n container=\"body\"\r\n [class]=\"action.additionalTextAfterLinkClass\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class\"\r\n [disableTooltip]=\"!action.enableTooltipForAdditionalAfterText\"\r\n >\r\n {{ action.additionalTextAfterLink }}\r\n </span>\r\n\r\n <ng-container *ngIf=\"action.showTooltip\">\r\n <ng-container *ngIf=\"action.tooltipData.innerHtml\">\r\n <i\r\n *ngIf=\"action.showIcon\"\r\n [class]=\"action.iconClass\"\r\n [ngClass]=\"{ disabled: action.disabledIcon }\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringTextActionTypeContainingTable(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].tooltipKey\r\n )\r\n \"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n tooltipClass=\"tooltip-containing-table remove-on-scroll-class\"\r\n [ngbTooltip]=\"tooltipContainingTableTemplate\"\r\n >\r\n </i>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!action.tooltipData.tooltipTableBody\">\r\n <span\r\n *ngIf=\"action.showIcon\"\r\n [ngClass]=\"{ disabled: action.disabledIcon }\"\r\n class=\"icon-tooltip-text\"\r\n (click)=\"\r\n iconClickedOnStringIconActionType(\r\n ROW_DATA,\r\n action.id,\r\n columnDef.headerInfo[subLineIndex]\r\n )\r\n \"\r\n (mouseleave)=\"mouseLeaveTextActionType(ROW_DATA)\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringTextActionType(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].tooltipKey\r\n )\r\n \"\r\n [placement]=\"\r\n action.tooltipPlacement\r\n ? action.tooltipPlacement\r\n : 'bottom auto'\r\n \"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n tooltipClass=\"team-user-tooltip remove-on-scroll-class {{\r\n action.tooltipClass\r\n }}\"\r\n [ngbTooltip]=\"userLoggedInDetails\"\r\n >\r\n <i [class]=\"action.iconClass\"> </i>\r\n {{ action.additionalTextAfterIcon ?? \"\" }}\r\n </span>\r\n <ng-container *ngIf=\"action['showSvgIcon']\">\r\n <anna-core-anna-est-icon-template\r\n class=\"float-right\"\r\n *ngIf=\"action['svgIconName'] === 'anna-icon'\"\r\n (mouseleave)=\"mouseLeaveTextActionType(ROW_DATA)\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringTextActionType(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex]\r\n .tooltipKey\r\n )\r\n \"\r\n [placement]=\"\r\n action.tooltipPlacement\r\n ? action.tooltipPlacement\r\n : 'bottom auto'\r\n \"\r\n tooltipClass=\"team-user-tooltip remove-on-scroll-class {{\r\n action['tooltipClass']\r\n }}\"\r\n [ngbTooltip]=\"userLoggedInDetails\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n >\r\n </anna-core-anna-est-icon-template>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!action.showTooltip\">\r\n <i\r\n *ngIf=\"action.showIcon\"\r\n [class]=\"action.iconClass\"\r\n [ngClass]=\"{ disabled: action.disabledIcon }\"\r\n (click)=\"\r\n iconClickedOnStringIconActionType(\r\n ROW_DATA,\r\n action.id,\r\n columnDef.headerInfo[subLineIndex]\r\n )\r\n \"\r\n >\r\n </i>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'STRING_OR_INPUT'\">\r\n <ng-container\r\n *ngIf=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]?.type ===\r\n 'STRING';\r\n else inputBox\r\n \"\r\n >\r\n <span\r\n [innerHtml]=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n ?.value\r\n \"\r\n ></span>\r\n </ng-container>\r\n <ng-template #inputBox>\r\n <input\r\n placeholder=\"{{\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n ?.placeholder\r\n }}\"\r\n annaCoreShowEllipsisTextOnHover\r\n class=\"{{\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n .className\r\n }}\"\r\n (keydown)=\"\r\n changesMadeInEditableInputBox(\r\n $event,\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey],\r\n false\r\n )\r\n \"\r\n (paste)=\"\r\n changesMadeInEditableInputBox(\r\n $event,\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey],\r\n true\r\n )\r\n \"\r\n (ngModelChange)=\"\r\n editableInputValueChanged(\r\n $event,\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].objectKey\r\n )\r\n \"\r\n [ngModel]=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey].value\r\n \"\r\n [disabled]=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n .disabled\r\n \"\r\n [ngClass]=\"{\r\n 'red-border':\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n .hasError\r\n }\"\r\n />\r\n\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <i\r\n *ngIf=\"action.showIcon\"\r\n container=\"body\"\r\n [ngbTooltip]=\"tipContent\"\r\n tooltipClass=\"gt-total-row-tooltip\"\r\n placement=\"bottom\"\r\n class=\"{{ action.iconClass }}\"\r\n >\r\n <ng-template #tipContent>\r\n <div [innerHTML]=\"action?.iconTooltip\"></div\r\n ></ng-template>\r\n </i>\r\n <ng-container *ngIf=\"action.showSvgIcon\">\r\n <anna-core-icon-column\r\n class=\"pr-4\"\r\n *ngIf=\"action?.svgOrIconName\"\r\n [componentName]=\"gtGeneralConfig.component\"\r\n [dataObject]=\"ROW_DATA\"\r\n [iconToShow]=\"action.svgOrIconName\"\r\n data-html=\"true\"\r\n [ngbTooltip]=\"tipContent\"\r\n placement=\"auto\"\r\n container=\"body\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class\"\r\n >\r\n <ng-template #tipContent>\r\n <div\r\n [innerHTML]=\"action?.svgOrIconTooltipMsg\"\r\n ></div></ng-template\r\n ></anna-core-icon-column>\r\n </ng-container>\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'HTML'\">\r\n <span\r\n [innerHtml]=\"ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\"\r\n ></span>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'SINGLE_RADIO'\">\r\n <span\r\n *ngIf=\"ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\"\r\n [ngClass]=\"{\r\n 'disable-checkbox':\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].isDisabledKey]\r\n }\"\r\n class=\"mdi mdi-radiobox-marked\"\r\n (click)=\"(null)\"\r\n >\r\n </span>\r\n <span\r\n *ngIf=\"!ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\"\r\n class=\"mdi mdi-radiobox-blank\"\r\n [ngClass]=\"{\r\n 'disable-checkbox':\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].isDisabledKey]\r\n }\"\r\n (click)=\"\r\n selectOrUnselectCheckbox(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].objectKey,\r\n true\r\n )\r\n \"\r\n >\r\n </span>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'RADIO'\">\r\n <mat-radio-group\r\n *ngIf=\"ROW_DATA['RadioButtonConfig']; else showHyphen\"\r\n [ngModel]=\"ROW_DATA[subline.objectKey]\"\r\n [disabled]=\"ROW_DATA['RadioButtonConfig'][0].isDisabled\"\r\n >\r\n <ng-container\r\n *ngFor=\"\r\n let radioButton of ROW_DATA['RadioButtonConfig'];\r\n let last = last\r\n \"\r\n >\r\n <mat-radio-button\r\n value=\"{{ radioButton.value }}\"\r\n class=\"{{ radioButton.class }}\"\r\n (click)=\"\r\n radioButtonClicked(\r\n ROW_DATA,\r\n radioButton.value,\r\n ROW_DATA['RadioButtonConfig'][0].isDisabled\r\n )\r\n \"\r\n >{{ radioButton.label }}\r\n </mat-radio-button>\r\n <i\r\n class=\" {{ radioButton.iconClass }}\"\r\n (click)=\"radioButtonIconClicked(ROW_DATA)\"\r\n ></i>\r\n <i\r\n *ngIf=\"radioButton.tooltipMessage\"\r\n class=\"mi mdi-info-outline\"\r\n [ngbTooltip]=\"radioButton.tooltipMessage\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class\"\r\n ></i>\r\n <br *ngIf=\"!last\" />\r\n </ng-container>\r\n </mat-radio-group>\r\n <ng-template #showHyphen> - </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'STRING_WITH_TOOLTIP'\">\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <span class=\"action-data\"> {{ action?.dataToDisplay }}</span>\r\n <span\r\n *ngIf=\"action?.showTooltip\"\r\n [ngbTooltip]=\"stringWithTooltipTemplate\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringWithTooltipTextActionType(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].tooltipKey,\r\n tooltipWithStringRef\r\n )\r\n \"\r\n [placement]=\"action?.tooltipPosition\"\r\n container=\"body\"\r\n [class]=\"action?.tooltipIconClass\"\r\n [autoClose]=\"'outside'\"\r\n [triggers]=\"action.isManualTrigger ? 'manual' : 'hover focus'\"\r\n #tooltipWithStringRef=\"ngbTooltip\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class {{\r\n action?.tooltipInnerClass\r\n }}\"\r\n [disableTooltip]=\"action?.disableTooltip\"\r\n >\r\n </span>\r\n <span>{{ action?.dataToDisplayAfterTooltip }}</span>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'STRING_ELLIPSIS_WITH_TABLE_TOOLTIP'\">\r\n <div class=\"new-ellipsis-container\">\r\n <span\r\n annaCoreShowEllipsisTextOnHover\r\n class=\"cell-value\"\r\n >\r\n {{\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n .cellValue\r\n }}\r\n </span>\r\n <span\r\n *ngIf=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n ?.showTooltip\r\n \"\r\n class=\"tooltip-text\"\r\n [ngbTooltip]=\"tableInsideTooltip\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n triggers=\"manual\"\r\n (hidden)=\"closeTooltip()\"\r\n #info=\"ngbTooltip\"\r\n tooltipClass=\"table-inside-tooltip remove-on-scroll-class {{\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n ?.tooltipClass\r\n }}\"\r\n (mouseenter)=\"\r\n bindTheValueToTableTooltip(\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey],\r\n info\r\n )\r\n \"\r\n >\r\n {{\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n ?.tooltipHoverText\r\n }}\r\n </span>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'STRING_WITH_ELLIPSIS_AND_READ_MORE_TOOLTIP'\">\r\n <span\r\n title=\"\"\r\n *ngIf=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey].length <\r\n 25\r\n \"\r\n >\r\n {{ ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey] }}\r\n </span>\r\n\r\n <span\r\n title=\"\"\r\n [ngbTooltip]=\"statusNoteTooltip\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n [triggers]=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey].length >\r\n 100\r\n ? 'manual'\r\n : 'hover focus'\r\n \"\r\n (hidden)=\"closeTooltip()\"\r\n #info=\"ngbTooltip\"\r\n tooltipClass=\"status-note-tooltip\"\r\n (mouseenter)=\"\r\n bindTheValueToStatusNote(\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey],\r\n info\r\n )\r\n \"\r\n *ngIf=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey].length >\r\n 25\r\n \"\r\n >\r\n {{ ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey] }}\r\n </span>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'STRING_WITH_TOOLTIP_INNER_HTML'\">\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <span\r\n annaCoreShowEllipsisTextOnHover\r\n class=\"action-data\"\r\n [ngClass]=\"action?.showTooltip ? 'reduced-width-text' : ''\"\r\n >\r\n {{ action?.dataToDisplay }}</span\r\n >\r\n <span\r\n *ngIf=\"action?.showTooltip\"\r\n [ngbTooltip]=\"innerHtmlToolTipTemplate\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringWithInnerHtmlTooltipTextActionType(\r\n ROW_DATA,\r\n action,\r\n tooltipWithInnerHtmlRef,\r\n !action.isManualTrigger\r\n )\r\n \"\r\n [placement]=\"action?.tooltipPosition\"\r\n container=\"body\"\r\n [class]=\"\r\n 'innrHtml-tooltip-icon-marker ' + action?.tooltipIconClass\r\n \"\r\n [autoClose]=\"'outside'\"\r\n [triggers]=\"action.isManualTrigger ? 'manual' : 'hover focus'\"\r\n #tooltipWithInnerHtmlRef=\"ngbTooltip\"\r\n tooltipClass=\"gt-icon-innerHtml-tooltip remove-on-scroll-class {{\r\n action?.tooltipInnerClass\r\n }}\"\r\n [disableTooltip]=\"action?.disableTooltip\"\r\n >\r\n {{ action.tooltipMarkerText }}\r\n </span>\r\n <span *ngIf=\"action?.dataToDisplayAfterTooltip\">\r\n {{ action?.dataToDisplayAfterTooltip }}\r\n </span>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchDefault>\r\n <ng-container *ngIf=\"subline.objectKey !== 'description'\">\r\n <span annaCoreShowEllipsisTextOnHover>{{\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n }}</span>\r\n <!-- <i\r\n *ngIf=\"\r\n subline.objectKey === 'inventoryCode' &&\r\n ROW_DATA['isSellerGroup'] &&\r\n gtGeneralConfig.component === 'RATING'\r\n \"\r\n class=\"mi mdi-info-outline seller-tooltip\"\r\n [ngbTooltip]=\"sellerHierarchyTooltip\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n triggers=\"manual\"\r\n (hidden)=\"closeTooltip()\"\r\n #info=\"ngbTooltip\"\r\n tooltipClass=\"hierarchy-tooltip remove-on-scroll-class\"\r\n (mouseenter)=\"\r\n bindTheValueToSellerGroupTooltip(\r\n ROW_DATA.sellerGroupHierarchy,\r\n info\r\n )\r\n \" \r\n >\r\n </i>-->\r\n\r\n <i\r\n *ngIf=\"\r\n subline.objectKey === 'displayBookedAverageRating' &&\r\n gtGeneralConfig.component === 'RATING' &&\r\n ROW_DATA['showRatingAverageIcon']\r\n \"\r\n class=\"mi mdi-info-outline seller-tooltip\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n (mouseenter)=\"\r\n setIsDifference(ROW_DATA.isDifferenceLessThan25Percent)\r\n \"\r\n tooltipClass=\"posted-avg-tooltip remove-on-scroll-class\"\r\n [ngbTooltip]=\"postedRatingDifference\"\r\n >\r\n </i>\r\n\r\n <i\r\n *ngIf=\"\r\n subline.objectKey === 'displayBookedAverageImpression' &&\r\n gtGeneralConfig.component === 'RATING' &&\r\n ROW_DATA['showImpressionAverageIcon']\r\n \"\r\n class=\"mi mdi-info-outline seller-tooltip\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n (mouseenter)=\"\r\n setIsDifference(ROW_DATA.isDifferenceLessThan25Percent)\r\n \"\r\n tooltipClass=\"posted-avg-tooltip remove-on-scroll-class\"\r\n [ngbTooltip]=\"postedImpDifference\"\r\n >\r\n </i>\r\n </ng-container>\r\n <ng-container *ngIf=\"subline.objectKey === 'description'\">\r\n <p\r\n *ngIf=\"\r\n ROW_DATA.descriptionMessage ||\r\n ROW_DATA.descriptionEmailReferenceNum\r\n \"\r\n >\r\n <ng-container *ngIf=\"ROW_DATA.descriptionMessage\">\r\n {{ ROW_DATA.descriptionMessage }}\r\n <br />\r\n </ng-container>\r\n <ng-container\r\n *ngIf=\"\r\n ROW_DATA.descriptionEmailReferenceNum !== '-' &&\r\n ROW_DATA.descriptionEmailReferenceNum !== ''\r\n \"\r\n >\r\n Email Ref: {{ ROW_DATA.descriptionEmailReferenceNum }}\r\n <br />\r\n </ng-container>\r\n </p>\r\n <a\r\n href=\"{{ ROW_DATA.descriptionDetailsUrl }}\"\r\n target=\"_blank\"\r\n *ngIf=\"\r\n ROW_DATA.descriptionDetailsUrlType === 'PDF' ||\r\n ROW_DATA.descriptionDetailsUrlType === 'EXCEL'\r\n \"\r\n >\r\n <button class=\"btn viewDetailsAndEmailBtn\">Download</button>\r\n </a>\r\n <ng-container\r\n *ngIf=\"\r\n ROW_DATA.activityname.toLowerCase() === 'order onboarded'\r\n \"\r\n >\r\n <a\r\n *ngIf=\"ROW_DATA.descriptionDetailsUrlType === 'LINK'\"\r\n (click)=\"viewDetailsClicked(ROW_DATA)\"\r\n >\r\n <button class=\"btn viewDetailsAndEmailBtn order-onboarded\">\r\n View details\r\n </button>\r\n </a>\r\n </ng-container>\r\n\r\n <a\r\n href=\"{{ ROW_DATA.descriptionEmailUrl }}\"\r\n target=\"_blank\"\r\n *ngIf=\"\r\n ROW_DATA.descriptionEmailUrl !== '-' &&\r\n ROW_DATA.descriptionEmailUrl !== ''\r\n \"\r\n >\r\n <button class=\"btn viewDetailsAndEmailBtn\">View email</button>\r\n </a>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"isNoDataToDisplaySubject$ | async\">\r\n <div>\r\n {{ null }}\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </td>\r\n </ng-container>\r\n </ng-container>\r\n </table>\r\n </div>\r\n <anna-core-no-data-lib\r\n [width]=\"noDataWidth\"\r\n [marginTop]=\"marginTop\"\r\n *ngIf=\"isNoDataToDisplaySubject$ | async\"\r\n >\r\n </anna-core-no-data-lib>\r\n</div>\r\n\r\n<!-- Checkbox template -->\r\n<ng-template #filterTooltip>\r\n <anna-core-anna-column-checkbox-filter\r\n [tableData]=\"tableData\"\r\n [showFilterHeaderTabs]=\"showFilterTooltipTabs\"\r\n [isLurAndCsrComponent]=\"false\"\r\n [clonedTableData]=\"clonedTableData\"\r\n [filterTabObjects]=\"filterTabObjects\"\r\n (filterAppliedToTable)=\"filterApplied($event)\"\r\n (sortingAppliedToTable)=\"sortingApplied($event)\"\r\n (closeTooltip)=\"closeTooltip()\"\r\n >\r\n </anna-core-anna-column-checkbox-filter>\r\n</ng-template>\r\n\r\n<!-- Slider template -->\r\n<ng-template #sliderToolTip>\r\n <anna-core-anna-column-slider-filter\r\n [tableData]=\"tableData\"\r\n [showFilterHeaderTabs]=\"showFilterTooltipTabs\"\r\n [isLurAndCsrComponent]=\"false\"\r\n [clonedTableData]=\"clonedTableData\"\r\n [filterTabObjects]=\"filterTabObjects\"\r\n (filterAppliedToTable)=\"filterApplied($event)\"\r\n (sortingAppliedToTable)=\"sortingApplied($event)\"\r\n (closeTooltip)=\"closeTooltip()\"\r\n >\r\n </anna-core-anna-column-slider-filter>\r\n</ng-template>\r\n\r\n<!-- Date Picker Template -->\r\n<ng-template #datePickerTooltip>\r\n <anna-core-anna-column-date-range-filter\r\n [tableData]=\"tableData\"\r\n [showFilterHeaderTabs]=\"showFilterTooltipTabs\"\r\n [isLurAndCsrComponent]=\"false\"\r\n [clonedTableData]=\"clonedTableData\"\r\n [filterTabObjects]=\"filterTabObjects\"\r\n (filterAppliedToTable)=\"filterApplied($event)\"\r\n (sortingAppliedToTable)=\"sortingApplied($event)\"\r\n (closeTooltip)=\"closeTooltip()\"\r\n >\r\n </anna-core-anna-column-date-range-filter>\r\n</ng-template>\r\n\r\n<!-- Week Picker Template -->\r\n<ng-template #weekPickerToolTip>\r\n <!-- <div class=\"weekpicker-container\">\r\n <anna-core-week-calendar-filter-lib\r\n [week-calendar-config]=\"gtGeneralConfig.multiWeekPickerConfig\"\r\n (apply)=\"applyWeekFilter($event)\"\r\n [from-date]=\"calendarMinEnabledDate\"\r\n [to-date]=\"calendarMaxEnabledDate\"\r\n >\r\n </anna-core-week-calendar-filter-lib>\r\n </div> -->\r\n</ng-template>\r\n\r\n<!-- Time Filter Template -->\r\n<ng-template #timeFilterToolTip>\r\n <anna-core-anna-column-time-filter\r\n [tableData]=\"tableData\"\r\n [showFilterHeaderTabs]=\"showFilterTooltipTabs\"\r\n [isLurAndCsrComponent]=\"false\"\r\n [showAllTimeRangeCheckboxes]=\"showCheckboxesForTimeFilter\"\r\n [clonedTableData]=\"clonedTableData\"\r\n [filterTabObjects]=\"filterTabObjects\"\r\n (filterAppliedToTable)=\"filterApplied($event)\"\r\n (sortingAppliedToTable)=\"sortingApplied($event)\"\r\n (closeTooltip)=\"closeTooltip()\"\r\n >\r\n </anna-core-anna-column-time-filter>\r\n</ng-template>\r\n\r\n<ng-template #columnInfoTooltip>\r\n <p class=\"black-color-text white-space-nowrap\">This preemption is rejected and not marked for credit.</p>\r\n</ng-template>\r\n\r\n<ng-template #ratingInfoTooltip>\r\n <p class=\"first-row\">Shows 'Booked Rating' for Preemptions & MakeGood Offered spot(s).</p>\r\n <p class=\"second-row\">Shows 'Projected Rating' for ADU Offered spot(s).</p>\r\n</ng-template>\r\n\r\n<ng-template #impsInfoTooltip>\r\n <p class=\"first-row\">Shows 'Booked IMPS' for Preemptions & MakeGood Offered spot(s).</p>\r\n <p class=\"second-row\">Shows 'Projected IMPS' for ADU Offered spot(s).</p>\r\n</ng-template>\r\n\r\n<ng-template #spotsColumnEquivalizationMessageTooltip>\r\n <p class=\"spot-column-tooltip-message\">\r\n This consists of equivalized spots and un-equivalized Paid Programs & un-equivalized Non-spots.\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #underDeliveryTooltip>\r\n <p class=\"spot-column-tooltip-message\">\r\n Indicates the Under-delivery percentage based on booked and posted RTG/IMPS.\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #overDeliveryTooltip>\r\n <p class=\"spot-column-tooltip-message\">\r\n Indicates the Over-delivery percentage based on booked and posted RTG/IMPS.\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #rateInfoTooltip>\r\n <p class=\"first-row\">Shows 'Booked Rate' for Preemptions & MakeGood Offered spot(s).</p>\r\n <p class=\"second-row\">Shows 'Projected $ Value' for ADU Offered spot(s).</p>\r\n</ng-template>\r\n\r\n<ng-template #sellerHierarchyTooltip>\r\n <ng-container *ngIf=\"sellerGroupHierarchy.length > 0\">\r\n <section class=\"hierarchy-table-container\">\r\n <table class=\"seller-hierarchy-table\">\r\n <thead>\r\n <tr>\r\n <th>#</th>\r\n <th>Inventory Codes</th>\r\n <th>Program/Description</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let data of sellerGroupHierarchy; let tooltipIndex = index\">\r\n <td>{{ tooltipIndex + 1 }}</td>\r\n <td>\r\n <span annaCoreShowEllipsisTextOnHover>{{ data.InventoryCode }}</span>\r\n </td>\r\n <td>\r\n <span annaCoreShowEllipsisTextOnHover>{{ data.Program }}</span>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </section>\r\n </ng-container>\r\n <ng-container *ngIf=\"sellerGroupHierarchy.length === 0\">\r\n <span class=\"black-color-text\">Seller group not available for this inventory code</span>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<ng-template #tableInsideTooltip>\r\n <label class=\"ellipsis-tooltip-heading\">{{ ellipsisWithTooltipHeading }}</label>\r\n <section class=\"table-inside-tooltip-container\">\r\n <table class=\"ellipsis-tooltip-table\">\r\n <thead>\r\n <tr>\r\n <th\r\n [style.width]=\"header.width\"\r\n *ngFor=\"let header of ellipsisWithTooltipTableHeaders\"\r\n >\r\n <div>\r\n <span\r\n annaCoreShowEllipsisTextOnHover\r\n class=\"upper-label\"\r\n >{{ header.headerName }}</span\r\n >\r\n </div>\r\n </th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let data of ellipsisWithTooltipTableData\">\r\n <td *ngFor=\"let header of ellipsisWithTooltipTableHeaders\">\r\n <div>\r\n <span\r\n annaCoreShowEllipsisTextOnHover\r\n class=\"upper-label\"\r\n >{{ data[header.objectKey] }}</span\r\n >\r\n </div>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </section>\r\n</ng-template>\r\n\r\n<ng-template #lurViolationInfoTooltip>\r\n <p class=\"first-row\">The values are for the entire week.</p>\r\n</ng-template>\r\n\r\n<ng-template #postedRatingDifference>\r\n <p class=\"difference-text\">\r\n The difference between posted and booked average rating is\r\n {{ isDifferenceLessThan25Percent ? \"less\" : \"more\" }} than 25%.\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #postedImpDifference>\r\n <p class=\"difference-text\">\r\n The difference between posted and booked average impression is\r\n {{ isDifferenceLessThan25Percent ? \"less\" : \"more\" }} than 25%.\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #ongoingRevBookedColumnTooltip>\r\n <p>The Booked $ value, Spots, GRP, CPP, IMPS, CPM corresponds on the last permanent revision generated</p>\r\n</ng-template>\r\n\r\n<ng-template #completedRevBookedColumnTooltip>\r\n <p>The Booked $ value corresponds on the last permanent revision generated</p>\r\n</ng-template>\r\n\r\n<ng-template #avgBookedRate>\r\n <p>This is the booked average Rate</p>\r\n</ng-template>\r\n\r\n<ng-template #avgBookedRtg>\r\n <p>This is the booked average RTG</p>\r\n</ng-template>\r\n\r\n<ng-template #avgBookedImps>\r\n <p>This is the booked average IMP(\u2019000)</p>\r\n</ng-template>\r\n\r\n<ng-template #projectedImpsRtg>\r\n <p>\r\n All projections are derived from the sum of actual posted information until the last posted date and estimates\r\n for the remaining selected period.\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #automationTooltip>\r\n <p>\r\n Please get the order business rules approved to automate the orders. Only for the automated orders, any approved\r\n MGs, ADUs, or credited spots on ANNA will be fed into the traffic system i.e. ANNA revisions.\r\n <!-- removed below line as part of enhancmennt in 14.0 releas -->\r\n <!-- Additionally, ANNA will only enter buyer revisions into traffic for the selected\r\n Medialine/WOC orders. -->\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #rebateImpact>\r\n <p>Rebate impact value is for the originally ordered spot length and is not equivalized.</p>\r\n</ng-template>\r\n\r\n<ng-template #lurViolationTotalRowToolTip>\r\n <ul>\r\n <li>\r\n <strong>POLITICAL RATE VIOLATIONS:</strong>\r\n Violations flagged when non-political spots are booked at a rate lower than the minimum booked rate for\r\n political candidates for the same week, Inventory Code and Revenue Class.\r\n </li>\r\n <li>\r\n <strong>CANDIDATE TO CANDIDATE VIOLATION:</strong>\r\n Violations flagged when political spots are booked at different rates to other political spots for the same\r\n week, Inventory Code and Revenue Class.\r\n </li>\r\n </ul>\r\n</ng-template>\r\n\r\n<ng-template #circularProgressBar>\r\n <circle-progress\r\n [percent]=\"percentDone\"\r\n [radius]=\"5\"\r\n [showTitle]=\"false\"\r\n [showUnits]=\"false\"\r\n [showSubtitle]=\"false\"\r\n [outerStrokeWidth]=\"3\"\r\n [innerStrokeWidth]=\"3\"\r\n [space]=\"-3\"\r\n [outerStrokeColor]=\"'#268bff'\"\r\n [innerStrokeColor]=\"'#d5d5d5'\"\r\n [animationDuration]=\"10\"\r\n ></circle-progress>\r\n</ng-template>\r\n\r\n<ng-template #userLoggedInDetails>\r\n <div class=\"tooltip-div-container\">\r\n <ng-container *ngFor=\"let data of textActionTooltip\">\r\n <span *ngIf=\"data.key !== 'read'\">\r\n {{ data.key }} <b>{{ data.value }}</b>\r\n </span>\r\n <span *ngIf=\"data.key === 'read'\">\r\n {{ data.value }}\r\n </span>\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #markAsReadTip>\r\n <div class=\"notification-tooltip-div-container\">\r\n <ng-container *ngFor=\"let data of textActionTooltip\">\r\n {{ data.value }}\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #textActionTooltipTemplate>\r\n <ng-container *ngFor=\"let data of textActionTooltip\">\r\n {{ data.key }} <b>{{ data.value }}</b>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<ng-template #programChangeTooltipTemplate>\r\n <div class=\"program-schedule-tooltip\">\r\n <h2>Program Change</h2>\r\n <p class=\"previous\">Previous:</p>\r\n <b annaCoreShowEllipsisTextOnHover>{{ textActionTooltip.OldProgramName }}</b>\r\n\r\n <p class=\"updated\">Updated:</p>\r\n <b\r\n *ngIf=\"textActionTooltip.NewProgramNames.length === 1\"\r\n annaCoreShowEllipsisTextOnHover\r\n >{{ textActionTooltip.NewProgramNames[0] }}</b\r\n >\r\n <ul *ngIf=\"textActionTooltip.NewProgramNames.length > 1\">\r\n <li *ngFor=\"let item of textActionTooltip.NewProgramNames\">\r\n <label class=\"dot\"></label>\r\n <span annaCoreShowEllipsisTextOnHover>{{ item }}</span>\r\n </li>\r\n </ul>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #showOrHideToggleForTotalRowTooltip>\r\n <div>\r\n {{ showOrHideToggleForTotalRow && !gtGeneralConfig.totalRow ? \"Show Total Row\" : \"Hide Total Row\" }}\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #tooltipContainingTableTemplate>\r\n <div\r\n *ngIf=\"tooltipContainingTable\"\r\n [innerHTML]=\"tooltipContainingTable.innerHtml\"\r\n class=\"notification-tooltip-div-container\"\r\n >\r\n <!-- <ul>\r\n <li *ngFor=\"let headerMsg of tooltipContainingTable.tableHeaderMsg\">\r\n <b> {{headerMsg}} </b>\r\n </li>\r\n </ul>\r\n\r\n <table class=\"tooltip-table\">\r\n <thead>\r\n <tr>\r\n <th *ngFor=\"let header of tooltipContainingTable.tooltipTableHeader\">\r\n {{ header}}\r\n </th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let rows of tooltipContainingTable.tooltipTableBody\">\r\n <td *ngFor=\"let data of rows\">\r\n {{ data }}\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n\r\n <ul>\r\n <li style=\"margin-top:10px; padding:0\" *ngFor=\"let footerMsg of tooltipContainingTable.tableFooterMsg\">\r\n {{ footerMsg }} \r\n </li>\r\n </ul> -->\r\n </div>\r\n</ng-template>\r\n<!-- <ng-template #textActionTooltipTemplate>\r\n <ng-container *ngFor=\"let data of textActionTooltip\">\r\n {{ data.key }} <b> {{data.value}}</b>\r\n </ng-container>\r\n</ng-template> -->\r\n\r\n<ng-template #statusNoteTooltip>\r\n <div>\r\n <span class=\"status-note-tooltip\">{{ statusNoteForTooltip }}</span>\r\n <span *ngIf=\"statusNoteForPopup.length > 100\"\r\n >...<a\r\n class=\"view-more-comments\"\r\n (click)=\"showEntireStatusNote()\"\r\n >View more</a\r\n ></span\r\n >\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #innerHtmlToolTipTemplate>\r\n <div [innerHtml]=\"toolTipInnerHtmlData\"></div>\r\n</ng-template>\r\n", styles: ["::ng-deep .show-or-hide-toggle-tooltip .tooltip-inner{max-width:229px}.show-or-hide-toggle-btn.shift-toggle-top-on-total-row-click{transform:translate(calc(var(--app-left-space-show-hide-total-row-icon) - 12px),32px)}.show-or-hide-toggle-btn{width:16px;height:16px;padding:0;margin:0;border-radius:50%;position:absolute;transform:translate(calc(var(--app-left-space-show-hide-total-row-icon) - 12px),52px);z-index:999;background-color:#d9d9d9}.show-or-hide-toggle-btn i.mdi.mdi-menu-swap{font-size:16px;display:flex}#generic-table-conatiner.table-with-show-hide-total-row-toggle .total-row td:nth-of-type(2){padding-left:16px!important}::ng-deep .gt-icon-innerHtml-tooltip .tooltip-inner{max-width:600px;width:min-content}::ng-deep .gt-icon-innerHtml-tooltip .tooltip-inner>div{width:max-content}::ng-deep .generic-innerHtml-table-heading{margin-bottom:2px;font-family:Roboto;font-size:.6875rem;font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#4a4a4a}::ng-deep .generic-innerHtml-table-container{max-height:8.75rem;width:min-content;overflow:auto}::ng-deep .generic-innerHtml-table-container table{table-layout:fixed;width:100%}::ng-deep .generic-innerHtml-table-container table thead tr th{background:#e9e9e9;height:22px;padding:3px 8px;position:sticky;top:0;cursor:default;font-family:Roboto;font-size:.6875rem;font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#4a4a4a;margin-bottom:0;box-shadow:inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4,inset -1px 0 #d4d4d4}::ng-deep .generic-innerHtml-table-container table thead tr th:first-of-type{box-shadow:inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4,inset -1px 0 #d4d4d4!important;border-left:1px solid #d4d4d4}::ng-deep .generic-innerHtml-table-container table tbody tr td{border:1px solid #d4d4d4;padding:3px 8px;width:100%;color:#000;font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:0px}::ng-deep .generic-innerHtml-table-container table tbody tr:first-of-type td{border-top:none}::ng-deep .generic-innerHtml-table-container::-webkit-scrollbar-track{margin-top:22px!important}.sort-btn{background:#fff;border:none;border-right:1px solid #1b88ff;text-decoration:underline;font-family:Roboto;font-size:var(--sort-label-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:1.07;letter-spacing:normal;color:#1b88ff;cursor:pointer;flex:1;text-align:center}.sort-btn:last-of-type{border-right:none}.sort-btn.active{color:#202b47;text-decoration:none}p.sort-container{margin-top:8px;padding-bottom:8px;border-bottom:1px solid #e6e6e6;margin-bottom:0;display:flex}::ng-deep .tooltip-inner{max-height:22rem;background-color:#fff;border:1px solid white;border-radius:5px;box-shadow:0 2px 2px #0000003d,0 0 2px #0000001f;max-width:251px;width:100%;padding:0!important}::ng-deep .tooltip-inner div.radio-container{flex-wrap:wrap}::ng-deep .md-drppicker{box-shadow:unset!important}::ng-deep .available{color:#999}::ng-deep .bs-tooltip-bottom .arrow:before{border-bottom-color:#fff!important}::ng-deep .bs-tooltip-left .arrow:before{border-left-color:#fff!important}::ng-deep .tooltip.show{opacity:1}.input{text-align:left;margin:5px 10px 5px 5px;display:flex;align-items:center;width:230px;white-space:nowrap}.data{color:#000;font-weight:700;margin-left:5px;margin-right:5px}span.data{display:inline-block;text-overflow:ellipsis;white-space:pre;width:100%;overflow:hidden}.check-box{font-size:14px;cursor:pointer;position:relative;top:-1px}span.mdi-filter.active{color:#000;opacity:1!important;pointer-events:all!important}p{margin-bottom:0;line-height:initial}span.mdi-filter{color:#cbcbcb}::ng-deep .ngx-slider-pointer{top:-5px!important;width:12px!important;height:12px!important;background:#bdbdbd!important;border:1px solid #ffffff!important;box-shadow:0 1px 3px #0000004d!important;border-radius:16px!important}input:focus{outline:none}input::placeholder{color:#c8c8c8}.cancel-btn{background:#c7e1ff;color:#268bff}.apply-btn{background:#268bff;color:#fff;margin-left:.3125rem}div.radio-container{display:flex;white-space:nowrap;justify-content:space-between;background-color:#f4f4f4;border-radius:.125rem;margin:.4375rem .4375rem .25rem}div.radio-container div{flex:1;width:50%}div.radio-container div.full-width{width:100%}div.radio-container input{position:relative;top:.125rem;margin-right:.25rem}div.radio-container label{font-family:Roboto;font-size:.875rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:1.29;letter-spacing:0;color:#4a4a4a;margin:0;padding-left:.125rem}div.radio-container label:first-of-type{margin-right:.188rem}div.radio-container input[type=radio]{appearance:none;display:inline-block;width:.9375rem;height:.9375rem;padding:.125rem;background-clip:content-box;border:.125rem solid #268bff;background-color:transparent;border-radius:50%}div.radio-container input[type=radio]:checked{background-color:#268bff}.checkbox-filter-buttons-container{padding:0 8px!important}.buttons-container{display:flex;margin:0px auto .4375rem;justify-content:center;padding:0 12px}.buttons-container .button{padding:0 10px;width:100%;margin:8px 0 0;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.buttons-container button:last-of-type{background-color:#268bff;color:#fff;margin-left:.5rem}.buttons-container button.disabled{background:#bdbdbd;opacity:.5;color:#4a4a4a}.button{display:inline-block;margin:8px 4px 0 8px;padding:0 16px;border-radius:4px;text-align:center;outline:none;font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:1.67;letter-spacing:normal;border:none;color:#268bff;background-color:#e5f1ff}.search-box{display:flex;align-items:center;color:#c8c8c8;border:1px solid #e6e6e6;border-radius:.125rem;margin:.25rem .4375rem .188rem;height:1.5rem;padding:.188rem 8px .188rem .5rem}.search-box .search-bar-close{margin-left:auto;float:right}.search-icon{margin:0 4px 0 0;font-size:var(--filter-search-icon-fs);color:#9b9b9b}.filter-icon{justify-content:right;margin-left:auto;color:#d4d4d4;color:#a1a1a1;font-size:16px;cursor:pointer}.data{margin:0 13px 0 8px;font-family:Roboto;font-size:var(--filter-checkbox-label-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:1.86;letter-spacing:\"\";color:#4a4a4a}.search-input{font-family:Roboto;font-size:var(--filter-search-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;color:#c8c8c8;width:calc(100% - 38px);margin:1px 0 1px 2px;border:none;padding:0}.check-box{color:#268bff}.tooltip-data-container{overflow-y:scroll;max-height:8rem}.searchbar{width:100%;display:flex;justify-content:flex-end;align-items:flex-end}.clear-button{opacity:.5;font-family:Roboto;font-size:.9375rem;font-weight:500;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;text-decoration:underline;border:none;background-color:#fff;color:#4a4a4a;margin-left:.625rem;padding:0}.clear-button:focus{outline:none;box-shadow:none}.unchecked{color:#268bff}cdk-virtual-scroll-viewport.dropdown-data-container{max-height:12.3rem;width:100%;overflow-y:auto;overflow-x:hidden}cdk-virtual-scroll-viewport.dropdown-data-container p.input{margin-left:0}cdk-virtual-scroll-viewport.dropdown-data-container p.input span.mi{padding-left:.4375rem}cdk-virtual-scroll-viewport.dropdown-data-container p.input:hover{background-color:#ebebeb;cursor:pointer}cdk-virtual-scroll-viewport.dropdown-data-container::-webkit-scrollbar{width:.188rem}cdk-virtual-scroll-viewport.dropdown-data-container::-webkit-scrollbar-thumb{color:#d3d3d3;background:#d3d3d3}section.min-maxContainer{display:flex;justify-content:center;margin-bottom:-.125rem;margin-top:.5rem;width:100%}section.min-maxContainer input{width:30%;height:1.5rem;border:1px solid lightgray;color:gray}section.min-maxContainer span{display:inline-block;padding-left:.5rem;padding-right:.5rem;position:relative;top:.3125rem;color:#666;font-size:var(--page-message-content-fs)}.time-container{width:100%;display:flex;padding:0 .75rem}.time-container input.form-control:disabled{background-color:#fff;width:2.813rem}.time-container input.numberInput:focus{box-shadow:none;border-color:#c2cfd6}.time-container .dot{color:#cbcbcb;position:relative;left:-7px;font-size:17px}.time-container div.arrow-container{flex-direction:column;display:flex;margin-top:.375rem;width:9px;height:18px;margin-right:.875rem}.time-container div.arrow-container i{color:#000;cursor:pointer;max-height:9px;font-size:20px;width:10px}.time-container div.arrow-container i:before{width:0;height:0;pointer-events:none;position:relative;left:-9px;top:-11px}.mdi-filter{cursor:pointer}.time-label-container{display:flex;justify-content:flex-start}.time-label-container label{margin-bottom:0;color:#4a4a4a;margin-top:.125rem;margin-left:.75rem;font-weight:700;font-size:var(--dropdown-label-fs)}.time-heading{color:#000;font-size:.8125rem;text-align:left;padding-left:.625rem;margin-top:.625rem;font-weight:700}.column-clear-all{width:94%;text-align:center;border:none;font-size:var(--filter-clear-select-btn-fs);background:none;text-decoration:underline;color:#268bff}.checkbox-container{display:flex;padding-inline:.625rem}.checkbox-container .data{text-align:left}.checkbox-container:first-of-type{margin-top:.625rem;font-weight:500}.column-clear-all{width:94%;text-align:center;border:none;background:none;text-decoration:underline;color:#268bff}.column-clear-all:disabled{opacity:.5;color:#4a4a4a;font-weight:400}.column-clear-all.align-center{text-align:center}span.mdi-filter-variant.disabled{pointer-events:none;opacity:.5}.datepicker-container{width:100%}span.mdi-filter-variant{color:#cbcbcb;cursor:pointer;font-size:.875rem}span.mdi-filter-variant.active{color:#000}p.filter-tab{font-family:Roboto;font-size:var(--filter-tab-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:1.29;letter-spacing:normal;color:#1b88ff;border-radius:5px;background-color:#f4f4f4;padding-inline:8px;cursor:pointer;overflow:hidden;text-align:center;text-overflow:ellipsis;padding-block:3px}p.filter-tab.active{color:#fff;background-color:#1b88ff}button.filter-text-btn{background:#fff;text-decoration:underline;font-family:Roboto;font-size:var(--filter-clear-select-btn-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;border:none;color:#268bff;margin-inline:4px;margin-top:2px}button.filter-text-btn:disabled{color:#b1b1b1;cursor:not-allowed}::ng-deep .non-edit-datepicker-tooltip .tooltip-inner{max-width:310px!important;width:283px!important;overflow-y:initial!important;padding:0!important}input.slider-text::-webkit-outer-spin-button,input.slider-text::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input.slider-text{-moz-appearance:textfield}input.slider-text.red-border{border:1px solid #f44336!important}::ng-deep .checkbox-sort p.sort-container{margin-top:8px!important;padding-bottom:8px!important}i.mdi-close{cursor:pointer}i.mdi-close.disable-close-icon{pointer-events:none;cursor:not-allowed}input.error-border{border:1px solid #f44336!important}::ng-deep .non-edit-checkbox-tooltip .tooltip-inner{width:238px!important;padding:0!important}::ng-deep .non-edit-slider-tooltip .tooltip-inner{width:238px!important;padding:0!important}::ng-deep .non-edit-time-tooltip .tooltip-inner{width:250px!important;padding:0!important}::ng-deep .non-edit-time-tooltip.bs-tooltip-start{padding:.4rem}::ng-deep .non-edit-time-tooltip.bs-tooltip-start .tooltip-arrow{right:0;top:5px!important;width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}::ng-deep .non-edit-time-tooltip.bs-tooltip-start .tooltip-arrow:before{border-left-color:#fff;left:-1px;border-width:calc(var(--bs-tooltip-arrow-width) * .5) 0 calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height)}::ng-deep .no-bottom-border p.sort-container{border-bottom:none!important}::ng-deep .ngx-slider-pointer-min:after{display:none}::ng-deep .ngx-slider-pointer-max:after{display:none}::ng-deep .ngx-slider span.ngx-slider-pointer{width:12px;height:12px;top:-5px;background-color:#bdbdbd}::ng-deep .ngx-slider span.ngx-slider-bar{height:3px;background:#ededed}::ng-deep .ngx-slider span.ngx-slider-selection{background:#bdbdbd}::ng-deep .ngx-slider span.ngx-slider-bubble{bottom:-22px;font-size:12px;color:#333}::ng-deep .show-min.ngx-slider span.ngx-slider-model-value{background:#fff;box-shadow:0 6px 10px #0000004d,0 2px 2px #0003}::ng-deep .show-max.ngx-slider span.ngx-slider-model-high{background:#fff;box-shadow:none}::ng-deep .ngx-slider span.ngx-slider-combined{background:#fff;box-shadow:0 6px 10px #0000004d,0 2px 2px #0003}::ng-deep .ngx-slider{top:10px!important;margin:5px 0 2px!important}::ng-deep .ngx-slider-animate{top:0!important}.sidebar-slider{margin-bottom:35px!important;margin-left:5px;margin-right:5px}.slider-placeholder{height:14px}::ng-deep .filter-calendar select.form-select:focus{border-color:#c2cfd6;box-shadow:none}::ng-deep .filter-calendar select.form-select{background-color:#fff}.no-data-case{padding-left:.4375rem!important;font-size:var(--filter-checkbox-label-fs)!important;margin-top:10px!important;cursor:pointer}.virtual-scroll-div{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.red-text-totol-row{color:#f44336!important}.check-mark,.unread-mark{cursor:pointer}.on-hover:hover .unread-mark,.notificationHover .check-mark{opacity:0;cursor:pointer}.on-hover:hover .check-mark{opacity:1;cursor:pointer}table{margin-bottom:0;table-layout:fixed;width:100%}:host ::ng-deep .gt .header-row th{border:none;background:#ededed;padding:2px 8px;line-height:normal;position:sticky;position:-webkit-sticky;top:0;box-shadow:inset 1px 0 #d4d4d4,inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4}:host ::ng-deep .gt .header-row th .upper-label{font-family:Roboto;font-size:var(--table-header-fs);font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#4a4a4a;margin-bottom:0}:host ::ng-deep .gt .header-row th .lower-label{font-family:Roboto;font-size:var(--table-header-fs);font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#a7a7a7;margin-bottom:0}:host ::ng-deep .gt .header-row th div.row{display:flex;flex-wrap:nowrap;justify-content:space-between;align-items:center;width:max-content}:host ::ng-deep .gt .header-row th div.sort-filter-container{display:flex;flex-wrap:nowrap;align-items:center;margin-left:.25rem;margin-right:auto}:host ::ng-deep .gt .header-row th span.mdi-filter-variant{font-size:13px!important;top:-1px!important;position:relative}:host ::ng-deep .gt .header-row th:first-of-type{box-shadow:inset 1px 0 #d4d4d4,inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4}:host ::ng-deep .gt .header-row th:last-of-type{box-shadow:inset -1px 0 #d4d4d4,inset 1px 0 #d4d4d4,inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4}:host ::ng-deep .gt .header-row br{display:block;content:\"\";margin-top:-8px}:host ::ng-deep .gt tbody tr td{padding:2px 8px;border:none;box-shadow:inset 1px 0 #d4d4d4,inset 0 -1px #d4d4d4}:host ::ng-deep .gt tbody tr td div:nth-child(1){color:#000;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-family:Roboto;font-size:var(--table-body-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:0px}:host ::ng-deep .gt tbody tr td div:nth-child(2){color:#a7a7a7;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-family:Roboto;font-size:var(--table-body-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:0px}:host ::ng-deep .gt tbody tr td:first-of-type{box-shadow:inset 1px 0 #d4d4d4,inset 0 -1px #d4d4d4}:host ::ng-deep .gt tbody tr td:last-of-type{box-shadow:inset 1px 0 #d4d4d4,inset -1px 0 #d4d4d4,inset 0 -1px #d4d4d4}:host ::ng-deep .gt tbody tr br{display:block;content:\"\";margin-top:-8px}:host ::ng-deep .gt .custom-column-checkbox-checked,:host ::ng-deep .gt .custom-column-checkbox-unchecked{font-size:.875rem;cursor:pointer}:host ::ng-deep .gt .custom-column-checkbox-checked{color:#268bff}:host ::ng-deep .gt .custom-column-checkbox-unchecked{color:#4a4a4a}:host ::ng-deep .gt .cell-value{width:calc(100% - 24px)!important;display:inline-block;width:90%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host ::ng-deep .gt .tooltip-text{color:#268bff;cursor:pointer;float:right}:host ::ng-deep .bottom-border .gt tbody tr:last-of-type td{box-shadow:inset 1px 0 #d4d4d4}:host ::ng-deep .bottom-border .gt tbody tr:last-of-type td:first-of-type{box-shadow:inset 1px 0 #d4d4d4}:host ::ng-deep .bottom-border .gt tbody tr:last-of-type td:last-of-type{box-shadow:inset 1px 0 #d4d4d4,inset -1px 0 #d4d4d4}.table-container{overflow-x:auto;overflow-y:auto}.rowSelectCheckbox,#selectAllRowsCheckbox{cursor:pointer}.disable-checkbox{color:#dedede!important;pointer-events:none!important}.mdi-warning{color:#f3c639;font-size:16px;line-height:28px}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{opacity:1}.redcolor-status{color:#c62a2a}#no-filter-space{width:.875rem}::ng-deep .mat-button-toggle-appearance-standard .mat-button-toggle-label-content{width:2.625rem;padding:0 .625rem}input.numberInput{margin-right:-.8125rem;padding:0 0 0 .625rem;height:1.875rem}::ng-deep .mat-button-toggle-checked{background-color:#268bff!important;color:#fff!important}::ng-deep .mat-button-toggle-group-appearance-standard{border-radius:0}.hidden{display:none}.no-data-div{margin-top:2.5px}.no-data-div label{margin:0;width:auto;font-weight:500;background-color:#d3d3d3;padding:.3125rem 1.125rem;border-radius:.25rem}.column-values:nth-of-type(2){color:#a7a7a7!important}.custom-column-checkbox-checked,.custom-column-checkbox-unchecked{font-size:.875rem;cursor:pointer}.custom-column-checkbox-checked{color:#268bff}.custom-column-checkbox-unchecked{color:#4a4a4a}.time-filter-checkboxes>div>p{color:#151b1e}::ng-deep .margin-bottom-zero .mat-radio-label{margin-bottom:0}:host ::ng-deep mat-radio-group br{margin-top:0!important}:host ::ng-deep mat-radio-group mat-radio-button .mdc-radio__background{width:var(--mat-radio-size);height:var(--mat-radio-size)}:host ::ng-deep mat-radio-group mat-radio-button .mdc-radio__inner-circle{border-width:calc(var(--mat-radio-size) / 2)}:host ::ng-deep mat-radio-group mat-radio-button .mdc-form-field>label{margin:0 0 0 4px;padding:0;top:-2px;position:relative;font-size:var(--radio-button-label-fs)}:host ::ng-deep mat-radio-group mat-radio-button .mdc-radio--disabled+label{color:var(--primary-text-color-dark)!important}:host ::ng-deep mat-radio-group mat-radio-button.mat-mdc-radio-button .mdc-form-field .mdc-radio{padding:0}:host ::ng-deep mat-radio-group mat-radio-button .mdc-form-field>label{left:-94px;font-size:12px;color:#4a4a4a;position:relative}:host ::ng-deep mat-radio-group mat-radio-button .mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:enabled:checked+.mdc-radio__background .mdc-radio__outer-circle{border-color:var(--mdc-radio-selected-icon-color)}::ng-deep .reject.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:#ff0}::ng-deep .reject.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-inner-circle{background-color:#ff0}::ng-deep .resubmit.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:#ff0}::ng-deep .resubmit.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-inner-circle{background-color:#ff0}::ng-deep .noAction.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:green}::ng-deep .noAction.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-inner-circle{background-color:green}::ng-deep .approve.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:green}::ng-deep .approve.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-inner-circle{background-color:green}::ng-deep .credit.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:red}::ng-deep .credit.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-inner-circle{background-color:red}::ng-deep .mat-radio-button.mat-radio-disabled .mat-radio-outer-circle{border-color:#00000061!important}::ng-deep .mat-radio-button.mat-radio-disabled.mat-radio-checked .mat-radio-inner-circle{background-color:#00000061!important}::ng-deep tr.white-background-row{background:#fff}::ng-deep tr.gray-background-row{background:#e9e9e980!important}.remarks-tooltip,.mdi-information,.mdi-information-outline,.seller-tooltip{font-size:.875rem;color:#268bff;position:relative;top:.1875rem;cursor:pointer}.seller-tooltip{top:-1px;float:right}::ng-deep .remarks-info-tooltip .tooltip-inner{max-width:19.25rem!important}.rating-icon,.lur-violation-icon{color:#268bff;cursor:pointer;position:relative;left:-2px}::ng-deep .rating-info-tooltip .tooltip-inner{max-width:800px!important}.spots-info-icon{color:#268bff;cursor:pointer;margin:1px 2px 0 -14px}.spots-info-icon-ol{color:#268bff;cursor:pointer;margin:1px 4px 0 -2px}::ng-deep .spot-info-tooltip .tooltip-inner{position:relative;max-width:220px!important;background:#fff;word-break:break-word;display:flex}::ng-deep .spot-info-tooltip-for-orderlisting-table .tooltip-inner{max-width:220px!important;background:#fff;word-break:break-word;display:flex}p.first-row{padding:.5rem .5rem 0;color:#000;white-space:nowrap;text-align:left}p.second-row{padding:2px .5rem .5rem;color:#000;white-space:nowrap;text-align:left}::ng-deep .gt-total-row-tooltip{opacity:1!important}::ng-deep .gt-total-row-tooltip .tooltip-inner{color:#000;box-shadow:0 6px 10px #0000004d,0 2px 2px #0003;background-color:#fff;padding:4px!important;width:100%;border-radius:2px!important}::ng-deep .gt-total-row-tooltip .arrow:before{border-top-color:#fff!important}.info-label{margin-left:4px;color:#268bff;vertical-align:text-top}::ng-deep .hierarchy-tooltip{max-width:-moz-fit-content;max-width:fit-content;width:310px!important}::ng-deep .hierarchy-tooltip .tooltip-inner{padding:4px!important;max-width:22.75rem;max-height:11.25rem}table.seller-hierarchy-table{table-layout:fixed}table.seller-hierarchy-table tr th{font-family:Roboto;font-size:.75rem;font-weight:500;font-stretch:normal;font-style:normal;line-height:1.67;letter-spacing:normal;color:#5e5e5e;white-space:nowrap;background:#ededed;position:sticky;box-shadow:inset 0 1px #d4d4d4;top:0;z-index:1}table.seller-hierarchy-table tr th:nth-child(1){width:20px}table.seller-hierarchy-table tr th:first-of-type,table.seller-hierarchy-table tr td:first-of-type{width:30px;border-left:1px solid #d4d4d4}table.seller-hierarchy-table tr th:last-of-type,table.seller-hierarchy-table tr td:last-of-type{border-right:1px solid #d4d4d4;width:7.875rem!important}table.seller-hierarchy-table tr th:nth-of-type(2){width:7.75rem!important}table.seller-hierarchy-table tr td{font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;color:#4a4a4a;box-shadow:none!important;border-top:1px solid #d4d4d4;border-bottom:1px solid #d4d4d4}table.seller-hierarchy-table tr td:nth-of-type(2),table.seller-hierarchy-table tr td:nth-of-type(3){padding-top:.25rem}table.seller-hierarchy-table tr td span{display:inline-block;width:90%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative}section.hierarchy-table-container,section.table-inside-tooltip-container{max-height:8.75rem;overflow:auto}section.hierarchy-table-container::-webkit-scrollbar-track{margin-top:1.5rem}section.table-inside-tooltip-container::-webkit-scrollbar-track{margin-top:1.1875rem}.difference-text{padding:.5rem;color:#000;text-align:left}::ng-deep .posted-avg-tooltip .tooltip-inner{width:13.8125rem!important}::ng-deep .drrBooked-info-tooltip{transform:translate(26px,6px)}::ng-deep .drrBooked-info-tooltip .tooltip-inner{max-width:307px!important;width:242px!important;background:#fff;word-break:break-word;display:flex;padding:4px!important;text-align:left}::ng-deep .drrBooked-info-tooltip .tooltip-inner p{color:#000}::ng-deep .drrBooked-info-tooltip .arrow:before{border-right-color:#fff!important}.clickable-data{cursor:pointer;color:#268bff!important;display:flex!important;align-items:center}.clickable-data .spot-details-download-icons{font-size:12px}.disabled-clickable-data{pointer-events:none;color:#d4d4d4!important}.spot-column-tooltip-message{color:#000;width:max-content;text-align:left}div.spinner-for-button-directive{position:relative;left:-1px}.clickable-row table tr.mat-row td{cursor:pointer!important}.tooltip-div-container{text-align:left!important;padding:8px 4px;color:#4a4a4a!important;font-size:11px!important;font-family:Roboto;font-size:11px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}.notification-tooltip-div-container{text-align:left!important;padding:6px 8px;color:#4a4a4a!important;font-size:12px!important;font-family:Roboto;font-size:12px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}.mdi-information,.mdi-information-outline{left:3px;top:1px}.mdi-information-outline{position:static}::ng-deep .team-user-tooltip.bs-tooltip-top .arrow:before{border-top:6px solid white}::ng-deep .team-user-tooltip.bs-tooltip-left .arrow:before{border-left:6px solid white}::ng-deep .team-user-tooltip.bs-tooltip-bottom .arrow:before{border-bottom:6px solid white}::ng-deep .team-user-tooltip.bs-tooltip-right .arrow:before{border-right:5px solid white}::ng-deep .team-user-tooltip .tooltip-inner{opacity:1!important;width:-moz-fit-content!important;width:fit-content!important;max-width:520px;border-radius:2px;padding:0 4px!important}::ng-deep .team-user-tooltip .tooltip-inner .tooltip-inner{color:#4a4a4a;text-align:left;padding:8px!important;border-radius:2px;background:#fff!important;box-shadow:0 6px 10px #0000004d,0 2px 2px #0003;font-family:Roboto;font-size:var(--page-message-content-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}::ng-deep .team-user-tooltip .tooltip-inner.bs-tooltip-top .arrow:before{border-top:6px solid white}::ng-deep .team-user-tooltip .tooltip-inner.bs-tooltip-left .arrow:before{border-left:6px solid white}::ng-deep .team-user-tooltip .tooltip-inner.bs-tooltip-bottom .arrow:before{border-bottom:6px solid white}::ng-deep .team-user-tooltip .tooltip-inner.bs-tooltip-right .arrow:before{border-right:5px solid white}::ng-deep .gt-icon-column-tooltip{opacity:1!important}::ng-deep .gt-icon-column-tooltip .tooltip-inner{color:#4a4a4a;text-align:left;padding:8px!important;border-radius:2px;background:#fff!important;box-shadow:0 6px 10px #0000004d,0 2px 2px #0003;font-family:Roboto;font-size:var(--page-message-content-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}::ng-deep .gt-icon-column-tooltip.bs-tooltip-top .arrow:before{border-top:6px solid white}::ng-deep .gt-icon-column-tooltip.bs-tooltip-left .arrow:before{border-left:6px solid white}::ng-deep .gt-icon-column-tooltip.bs-tooltip-bottom .arrow:before{border-bottom:6px solid white}::ng-deep .gt-icon-column-tooltip.bs-tooltip-right .arrow:before{border-right:5px solid white}::ng-deep .gt-icon-column-tooltip .tooltip-inner{width:100%}::ng-deep .tooltip-containing-table{opacity:1!important}::ng-deep .tooltip-containing-table .tooltip-inner{color:#4a4a4a;text-align:left;padding:8px!important;border-radius:2px;background:#fff!important;box-shadow:0 6px 10px #0000004d,0 2px 2px #0003;font-family:Roboto;font-size:var(--page-message-content-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}::ng-deep .tooltip-containing-table.bs-tooltip-top .arrow:before{border-top:6px solid white}::ng-deep .tooltip-containing-table.bs-tooltip-left .arrow:before{border-left:6px solid white}::ng-deep .tooltip-containing-table.bs-tooltip-bottom .arrow:before{border-bottom:6px solid white}::ng-deep .tooltip-containing-table.bs-tooltip-right .arrow:before{border-right:5px solid white}::ng-deep .tooltip-containing-table li{margin:0!important;padding:0!important}::ng-deep .tooltip-containing-table ul{margin:0!important;padding-left:8px!important}::ng-deep .tooltip-containing-table ul.pl-16{padding-left:16px!important}::ng-deep .tooltip-containing-table .tooltip-inner{width:100%;max-width:230px}table.tooltip-table{table-layout:fixed;margin:4px 0 0;width:100%}table.tooltip-table th,table.tooltip-table td{padding:2px 8px;line-height:normal}table.tooltip-table thead tr th:first-of-type{box-shadow:inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4,inset -1px 0 #d4d4d4,inset 1px 0 #d4d4d4!important;border:none}table.tooltip-table thead tr th{color:#5e5e5e!important;font-size:12px;font-weight:500;font-family:Roboto;line-height:1.67;background-color:#ededed;border-top:none!important;border-bottom:none!important;outline:none!important;box-shadow:inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4,inset -1px 0 #d4d4d4}table.tooltip-table thead tr th div.row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center}table.tooltip-table tbody tr td{color:#5e5e5e!important;font-size:12px;font-weight:500;font-family:Roboto;line-height:1.67}table.tooltip-table tbody tr td:first-of-type{box-shadow:inset 1px 0 #d4d4d4,inset -1px 0 #d4d4d4,inset 0 -1px #d4d4d4;border:none}table.tooltip-table tbody tr td:nth-of-type(n+2){box-shadow:inset -1px 0 #d4d4d4,inset 0 -1px #d4d4d4;border:none}.bottom-border{border-bottom:1px solid #d4d4d4!important}i.disabled{pointer-events:none!important}.black-color-text{color:#000}.white-space-nowrap{white-space:nowrap}.ellipsis-tooltip-heading{margin-bottom:2px;font-family:Roboto;font-size:.6875rem;font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#4a4a4a}table.ellipsis-tooltip-table{table-layout:fixed;width:100%}table.ellipsis-tooltip-table thead th:first-of-type{box-shadow:inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4,inset -1px 0 #d4d4d4,inset 1px 0 #d4d4d4!important}table.ellipsis-tooltip-table thead th{background:#e9e9e9;padding:3px 8px;line-height:normal;position:sticky;top:0;cursor:default;box-shadow:inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4,inset -1px 0 #d4d4d4}table.ellipsis-tooltip-table thead th .upper-label{font-family:Roboto;font-size:.6875rem;font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#4a4a4a;margin-bottom:0}table.ellipsis-tooltip-table tbody td{padding:3px 8px}table.ellipsis-tooltip-table tbody td .upper-label{width:100%;color:#000;text-overflow:ellipsis;overflow:hidden;display:inline-block;white-space:nowrap;font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:0px}table.ellipsis-tooltip-table tbody td:first-of-type{box-shadow:inset 1px 0 #d4d4d4,inset -1px 0 #d4d4d4,inset 0 -1px #d4d4d4;border:none}table.ellipsis-tooltip-table tbody td:nth-of-type(n+2){box-shadow:inset -1px 0 #d4d4d4,inset 0 -1px #d4d4d4;border:none}.pr-4{padding-right:4px}.status-note-tooltip{font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:14px;letter-spacing:normal;color:#4a4a4a;white-space:normal!important}.view-more-comments{display:block;color:#268bff;font-family:Roboto;font-size:.75rem;font-weight:700;font-stretch:normal;font-style:normal;line-height:14px;letter-spacing:normal;cursor:pointer;margin-left:2px}td.mat-column-isOrderStarred:has(.disabled-starring){pointer-events:none!important}td.mat-column-isOrderStarred .mdi.mdi-star.disabled-starring,td.mat-column-isOrderStarred .mdi.mdi-star-outline.disabled-starring{pointer-events:none!important;color:#dbdbdb80!important}table.disable-table-scrolling{overflow:hidden!important}.icon-tooltip-text{display:inline-block;color:#268bff}.text-with-icon-and-text.reduced-width{text-overflow:ellipsis;overflow:hidden;display:inline-block;max-width:calc(100% - 25px);margin-bottom:-3.5px}.innrHtml-tooltip-icon-marker{float:right;color:#268bff}.reduced-width-text{text-overflow:ellipsis;overflow:hidden;display:inline-block;max-width:calc(100% - 25px)}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: MatTableModule }, { kind: "component", type: i4$1.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i4$1.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i4$1.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i4$1.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i4$1.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i4$1.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i4$1.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i4$1.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i4$1.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i4$1.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgbTooltip, selector: "[ngbTooltip]", inputs: ["animation", "autoClose", "placement", "popperOptions", "triggers", "positionTarget", "container", "disableTooltip", "tooltipClass", "openDelay", "closeDelay", "ngbTooltip"], outputs: ["shown", "hidden"], exportAs: ["ngbTooltip"] }, { kind: "ngmodule", type: NgxSkeletonLoaderModule }, { kind: "component", type: i5$1.NgxSkeletonLoaderComponent, selector: "ngx-skeleton-loader", inputs: ["count", "loadingText", "appearance", "animation", "ariaLabel", "theme"] }, { kind: "directive", type: ShowEllipsisTextOnHoverDirective, selector: "[annaCoreShowEllipsisTextOnHover]" }, { kind: "directive", type: NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: AnnaIconColumnComponent, selector: "anna-core-icon-column", inputs: ["componentName", "iconToShow", "dataObject"], outputs: ["columnIconClicked"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: MatRadioModule }, { kind: "directive", type: i7.MatRadioGroup, selector: "mat-radio-group", exportAs: ["matRadioGroup"] }, { kind: "component", type: i7.MatRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex"], exportAs: ["matRadioButton"] }, { kind: "directive", type: NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: AnnaNoDataComponent, selector: "anna-core-no-data-lib", inputs: ["width", "marginTop"] }, { kind: "component", type: AnnaColumnCheckboxFilterComponent, selector: "anna-core-anna-column-checkbox-filter", inputs: ["showFilterHeaderTabs", "isLurAndCsrComponent", "tableData", "clonedTableData", "filterTabObjects"], outputs: ["filterAppliedToTable", "sortingAppliedToTable", "getSortType", "closeTooltip"] }, { kind: "component", type: AnnaColumnSliderFilterComponent, selector: "anna-core-anna-column-slider-filter", inputs: ["filterTabObjects", "isLurAndCsrComponent", "tableData", "showFilterHeaderTabs", "clonedTableData"], outputs: ["closeTooltip", "filterAppliedToTable", "getSortType", "sortingAppliedToTable"] }, { kind: "component", type: AnnaColumnDateRangeFilterComponent, selector: "anna-core-anna-column-date-range-filter", inputs: ["tableData", "clonedTableData", "filterTabObjects", "isLurAndCsrComponent", "showFilterHeaderTabs"], outputs: ["filterAppliedToTable", "sortingAppliedToTable", "getSortType", "closeTooltip"] }, { kind: "component", type: AnnaColumnTimeFilterComponent, selector: "anna-core-anna-column-time-filter", inputs: ["tableData", "clonedTableData", "filterTabObjects", "showFilterHeaderTabs", "showAllTimeRangeCheckboxes", "isLurAndCsrComponent", "gtGeneralConfig", "showClearAllFilter", "startFromText", "endToText", "isSortAndFilterAbsent"], outputs: ["timeChanges", "timeChangedEmitter", "filterAppliedToTable", "sortingAppliedToTable", "getSortType", "closeTooltip"] }, { kind: "ngmodule", type: NgCircleProgressModule }, { kind: "component", type: i8.CircleProgressComponent, selector: "circle-progress", inputs: ["name", "class", "backgroundGradient", "backgroundColor", "backgroundGradientStopColor", "backgroundOpacity", "backgroundStroke", "backgroundStrokeWidth", "backgroundPadding", "radius", "space", "percent", "toFixed", "maxPercent", "renderOnClick", "units", "unitsFontSize", "unitsFontWeight", "unitsColor", "outerStrokeGradient", "outerStrokeWidth", "outerStrokeColor", "outerStrokeGradientStopColor", "outerStrokeLinecap", "innerStrokeColor", "innerStrokeWidth", "titleFormat", "title", "titleColor", "titleFontSize", "titleFontWeight", "subtitleFormat", "subtitle", "subtitleColor", "subtitleFontSize", "subtitleFontWeight", "imageSrc", "imageHeight", "imageWidth", "animation", "animateTitle", "animateSubtitle", "animationDuration", "showTitle", "showSubtitle", "showUnits", "showImage", "showBackground", "showInnerStroke", "clockwise", "responsive", "startFromZero", "showZeroOuterStroke", "lazy", "options"], outputs: ["onClick"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "component", type: AnnaEstIconTemplateComponent, selector: "anna-core-anna-est-icon-template" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
5220
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AnnaNonEditableGenericTableComponent, isStandalone: true, selector: "anna-core-non-editable-generic-table-lib", inputs: { showSkeletonLoading: "showSkeletonLoading", tableHeaders: "tableHeaders", tableData: "tableData", clonedTableData: "clonedTableData", gtGeneralConfig: "gtGeneralConfig", totalRowInfo: "totalRowInfo", gtDimension: "gtDimension", tableClass: "tableClass", maximumRowsWhichCanBeRenderedWithoutScroll: "maximumRowsWhichCanBeRenderedWithoutScroll", fixNumberOfRowsForPopup: "fixNumberOfRowsForPopup", limit: "limit", includeBorderInTableHeight: "includeBorderInTableHeight", downloadInProgress: "downloadInProgress", percentDone: "percentDone", starredInProgress: "starredInProgress", clickableRow: "clickableRow", setTableHeightWhenRowSizeIsFixed: "setTableHeightWhenRowSizeIsFixed", tableBorderBottomClassRequired: "tableBorderBottomClassRequired", hideSomeTds: "hideSomeTds", tdsHaveRowSpan: "tdsHaveRowSpan", multipleTablesPresent: "multipleTablesPresent", showOrHideToggleForTotalRow: "showOrHideToggleForTotalRow" }, outputs: { toggleCheckbox: "toggleCheckbox", toggleRowCheckbox: "toggleRowCheckbox", toggleHeaderCheckbox: "toggleHeaderCheckbox", undoIconClicked: "undoIconClicked", filterAppliedToTable: "filterAppliedToTable", sortingAppliedToTable: "sortingAppliedToTable", rowClicked: "rowClicked", radioButtonSelected: "radioButtonSelected", columnFilterOpened: "columnFilterOpened", columnFilterClosed: "columnFilterClosed", gtIconClicked: "gtIconClicked", gtSVGIconClicked: "gtSVGIconClicked", gtTextActionClicked: "gtTextActionClicked", gtViewDetailClicked: "gtViewDetailClicked", gtInnerHTMLClicked: "gtInnerHTMLClicked", downloadSpotDetails: "downloadSpotDetails", clickableDataClicked: "clickableDataClicked", totalRowIconClicked: "totalRowIconClicked", notificationIconHover: "notificationIconHover", notificationIconHoverLeave: "notificationIconHoverLeave", editableInputEdited: "editableInputEdited", radioButtonMessageIconClicked: "radioButtonMessageIconClicked", statusNotePopupOpened: "statusNotePopupOpened" }, viewQueries: [{ propertyName: "tableElementRef", first: true, predicate: ["tableElementRef"], descendants: true, static: true }, { propertyName: "textActionTooltipTemplateRef", first: true, predicate: ["textActionTooltipTemplate"], descendants: true }, { propertyName: "programChangeTooltipTemplateRef", first: true, predicate: ["programChangeTooltipTemplate"], descendants: true }, { propertyName: "viewChildTableHeaders", predicate: ["tableHeader"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div\r\n id=\"generic-table-conatiner\"\r\n #tableElementRef\r\n class=\"table-container {{ gtGeneralConfig?.tableOuterContainerName }} {{ tableBottomBorderClass }}\"\r\n [ngClass]=\"{\r\n 'scroll-left-shadow-effect': isScrolledLeft,\r\n 'scroll-right-shadow-effect': !isScrollEnded,\r\n 'clickable-row': clickableRow,\r\n 'no-data-table': (isNoDataToDisplaySubject$ | async),\r\n 'table-with-show-hide-total-row-toggle': showOrHideToggleForTotalRow\r\n }\"\r\n (scroll)=\"onTableContainerScroll($event)\"\r\n>\r\n <div\r\n [class]=\"gtGeneralConfig.tableContainerName\"\r\n class=\"horizontal-scroll-for-table-container\"\r\n [ngStyle]=\"{\r\n height:\r\n tableData.length < noOfRowsToCheck\r\n ? 'calc(' +\r\n (gtDimension.rowHeight * tableData.length +\r\n (!tableData.length || !gtGeneralConfig.totalRow\r\n ? gtDimension.headerHeight\r\n : gtDimension.headerHeight + gtDimension.rowHeight)) +\r\n 'px)'\r\n : gtDimension.tableHeight\r\n }\"\r\n >\r\n <button\r\n *ngIf=\"showOrHideToggleForTotalRow && !showSkeletonLoading && (isNoDataToDisplaySubject$ | async) === false\"\r\n [ngClass]=\"{\r\n 'shift-toggle-top-on-total-row-click': !gtGeneralConfig.totalRow\r\n }\"\r\n class=\"show-or-hide-toggle-btn\"\r\n (click)=\"showHideTotalRow()\"\r\n >\r\n <i\r\n class=\"mdi mdi-menu-swap\"\r\n tooltipClass=\"show-or-hide-toggle-tooltip\"\r\n placement=\"auto\"\r\n container=\"body\"\r\n [ngbTooltip]=\"showOrHideToggleForTotalRowTooltip\"\r\n ></i>\r\n </button>\r\n <table\r\n class=\"gt\"\r\n [ngClass]=\"tableClass\"\r\n mat-table\r\n [dataSource]=\"renderedData\"\r\n >\r\n <tr\r\n class=\"header-row\"\r\n mat-header-row\r\n *matHeaderRowDef=\"tableColumns; sticky: true\"\r\n [style.height.px]=\"gtDimension.headerHeight\"\r\n ></tr>\r\n <tr\r\n class=\"total-row\"\r\n mat-header-row\r\n [style.height.px]=\"gtDimension.rowHeight\"\r\n *matHeaderRowDef=\"totalRowColumns; sticky: true\"\r\n [class.hidden]=\"\r\n showSkeletonLoading ||\r\n (!showSkeletonLoading && !tableData.length) ||\r\n (isNoDataToDisplaySubject$ | async) ||\r\n (!showSkeletonLoading && !gtGeneralConfig.totalRow)\r\n \"\r\n ></tr>\r\n <tr\r\n [class]=\"rowData.gtClass\"\r\n [ngClass]=\"{ 'no-border-tr': (isNoDataToDisplaySubject$ | async) }\"\r\n mat-row\r\n *matRowDef=\"let rowData; columns: tableColumns\"\r\n [style.height.px]=\"gtDimension.rowHeight\"\r\n (click)=\"dataRowClicked(rowData)\"\r\n ></tr>\r\n\r\n <!-- TOTAL ROW -->\r\n <ng-container\r\n [matColumnDef]=\"column.colName\"\r\n *ngFor=\"let column of totalRowInfo; trackBy: trackByFn\"\r\n >\r\n <td\r\n mat-header-cell\r\n *matHeaderCellDef\r\n [attr.colspan]=\"column.colspan\"\r\n class=\"{{ column.class }}\"\r\n >\r\n <ng-container *ngIf=\"column['isActionColumn']\">\r\n <a\r\n *ngFor=\"let data of column.actionData\"\r\n [class]=\"data.class\"\r\n (click)=\"onClickableDataClicked({}, data.id)\"\r\n >\r\n {{ data.name }}\r\n </a>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"column['isIconColumn']\">\r\n <i\r\n class=\"{{ column?.iconData?.class }}\"\r\n (click)=\"iconClickedInTotalRow(column?.colName)\"\r\n >\r\n </i>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!column['isActionColumn']\">\r\n <strong class=\"upper-label\"\r\n >{{ column.data }}\r\n <span\r\n class=\"red-text-totol-row\"\r\n *ngIf=\"column.additionalRedTextAfterData\"\r\n >{{ column.additionalRedTextAfterData }}</span\r\n ></strong\r\n >\r\n <ng-container *ngIf=\"column.lowerData\">\r\n <br />\r\n <span\r\n *ngIf=\"\r\n column.colName === 'total-potential-booked-unit' &&\r\n gtGeneralConfig.component === 'RATING';\r\n else columnLowerData\r\n \"\r\n class=\"clickable-data\"\r\n (click)=\"spotDetailsDownloadClicked('TOTALROW')\"\r\n [ngClass]=\"{ 'disabled-clickable-data': downloadInProgress }\"\r\n >{{ column.lowerData }}\r\n <span class=\"material-icons spot-details-download-icons\">get_app</span>\r\n <ng-container *ngIf=\"downloadInProgress && selectedRowTypeForDownload === 'TOTALROW'\">\r\n <ng-container [ngTemplateOutlet]=\"circularProgressBar\"></ng-container>\r\n </ng-container>\r\n </span>\r\n <ng-template #columnLowerData>\r\n <span class=\"lower-label\">{{ column.lowerData }}</span>\r\n </ng-template>\r\n </ng-container>\r\n <ng-container *ngIf=\"column.tooltipMessage && gtGeneralConfig.component !== 'LUR_VIOLATIONS'\">\r\n <i\r\n class=\"{{ column.tooltipIconClass }}\"\r\n container=\"body\"\r\n [ngbTooltip]=\"column.tooltipMessage\"\r\n tooltipClass=\"gt-total-row-tooltip\"\r\n placement=\"top bottom\"\r\n ></i>\r\n </ng-container>\r\n <ng-container *ngIf=\"gtGeneralConfig.component === 'LUR_VIOLATIONS' && column.tooltipMessage\">\r\n <i\r\n class=\"mi mdi-info-outline info-label\"\r\n container=\"body\"\r\n [ngbTooltip]=\"lurViolationTotalRowToolTip\"\r\n tooltipClass=\"gt-total-row-tooltip\"\r\n placement=\"bottom\"\r\n ></i>\r\n </ng-container>\r\n </ng-container>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- MAIN ROW -->\r\n <ng-container\r\n [matColumnDef]=\"columnDef.headerInfo[0].objectKey\"\r\n *ngFor=\"let columnDef of tableHeaders; trackBy: trackByFn\"\r\n >\r\n <th\r\n #tableHeader\r\n nowrap\r\n mat-header-cell\r\n *matHeaderCellDef\r\n [style.width]=\"columnDef.width\"\r\n >\r\n <div\r\n class=\"row mx-0\"\r\n *ngFor=\"let header of columnDef.headerInfo; let j = index\"\r\n >\r\n <p\r\n *ngIf=\"header.typeOfHeaderData === 'STRING'\"\r\n [ngClass]=\"{ 'upper-label': j === 0, 'lower-label': j === 1 }\"\r\n >\r\n <ngx-skeleton-loader\r\n *ngIf=\"header.name == null\"\r\n count=\"1\"\r\n [theme]=\"{\r\n height: '10px',\r\n display: 'block',\r\n width: columnDef.width,\r\n 'max-width': 'calc(100% - 20px)'\r\n }\"\r\n >\r\n </ngx-skeleton-loader>\r\n <ng-container *ngIf=\"header.name\">\r\n {{ header.name }}\r\n </ng-container>\r\n <ng-container *ngIf=\"header.tooltip && header.tooltip.tooltipMessage\">\r\n <i\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"header.tooltip.tooltipMessage\"\r\n container=\"body\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n </ng-container>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'impsInfoTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"impsInfoTooltip\"\r\n container=\"body\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"\r\n header.tooltip && header.tooltip.name === 'spotsColumnEquivalizationMessageTooltip'\r\n \"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n container=\"body\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"spotsColumnEquivalizationMessageTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'underDeliveryTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n container=\"body\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"underDeliveryTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'overDeliveryTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n container=\"body\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"overDeliveryTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'ratingInfoTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"ratingInfoTooltip\"\r\n container=\"body\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'rateInfoTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"rateInfoTooltip\"\r\n container=\"body\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'ongoingRevBookedColumnTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"ongoingRevBookedColumnTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'completedRevBookedColumnTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"completedRevBookedColumnTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'avgBookedRate'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"avgBookedRate\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'avgBookedRtg'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"avgBookedRtg\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'avgBookedImps'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"avgBookedImps\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'automationTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"automationTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'rebateImpact'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"rebateImpact\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'projectedImpsRtg'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"projectedImpsRtg\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n </p>\r\n\r\n <ng-container *ngIf=\"header.typeOfHeaderData === 'CHECKBOX'\">\r\n <span\r\n *ngIf=\"gtGeneralConfig.isHeaderChecked\"\r\n class=\"material-icons custom-column-checkbox-checked\"\r\n (click)=\"selectUnselectAllRows()\"\r\n >\r\n check_box\r\n </span>\r\n <span\r\n *ngIf=\"!gtGeneralConfig.isHeaderChecked\"\r\n class=\"material-icons custom-column-checkbox-unchecked\"\r\n [ngClass]=\"{ 'disable-checkbox': gtGeneralConfig.disableHeaderCheckbox }\"\r\n (click)=\"selectUnselectAllRows()\"\r\n >\r\n check_box_outline_blank\r\n </span>\r\n </ng-container>\r\n\r\n <div\r\n *ngIf=\"gtGeneralConfig.showAllColumnFilter\"\r\n class=\"sort-filter-container\"\r\n >\r\n <ng-container *ngIf=\"header.showTooltipIcon\">\r\n <!-- Active tooltip Functionality -->\r\n <ng-container *ngIf=\"header.filter === 'CHECKBOX'\">\r\n <span\r\n class=\"mdi mdi-filter-variant\"\r\n [ngClass]=\"{\r\n active:\r\n annaFilterService.isFilterSortActive &&\r\n annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon || showSkeletonLoading\r\n }\"\r\n [ngbTooltip]=\"filterTooltip\"\r\n placement=\"{{ filterAlignment }}\"\r\n container=\"body\"\r\n tooltipClass=\"non-edit-checkbox-tooltip\"\r\n [autoClose]=\"'outside'\"\r\n triggers=\"manual\"\r\n #t=\"ngbTooltip\"\r\n (click)=\"bindTheValueToToolTip(t, header)\"\r\n (hidden)=\"closeTooltip()\"\r\n >\r\n </span\r\n ><br />\r\n </ng-container>\r\n <ng-container *ngIf=\"header.filter === 'SLIDER'\">\r\n <span\r\n class=\"mdi mdi-filter-variant\"\r\n [ngClass]=\"{\r\n active:\r\n annaFilterService.isFilterSortActive &&\r\n annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon || showSkeletonLoading\r\n }\"\r\n [ngbTooltip]=\"sliderToolTip\"\r\n placement=\"bottom left-top\"\r\n container=\"body\"\r\n tooltipClass=\"non-edit-slider-tooltip\"\r\n [autoClose]=\"'outside'\"\r\n triggers=\"manual\"\r\n #t1=\"ngbTooltip\"\r\n (click)=\"bindTheValueToToolTip(t1, header)\"\r\n (hidden)=\"closeTooltip()\"\r\n >\r\n </span\r\n ><br />\r\n </ng-container>\r\n <ng-container *ngIf=\"header.filter === 'DATE'\">\r\n <span\r\n class=\"mdi mdi-filter-variant\"\r\n [ngClass]=\"{\r\n active:\r\n annaFilterService.isFilterSortActive &&\r\n annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon || showSkeletonLoading\r\n }\"\r\n [ngbTooltip]=\"datePickerTooltip\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n tooltipClass=\"non-edit-datepicker-tooltip\"\r\n [autoClose]=\"'outside'\"\r\n triggers=\"manual\"\r\n #t2=\"ngbTooltip\"\r\n (click)=\"bindTheValueToToolTip(t2, header)\"\r\n (hidden)=\"closeTooltip()\"\r\n >\r\n </span\r\n ><br />\r\n </ng-container>\r\n <ng-container *ngIf=\"header.filter === 'WEEK'\">\r\n <span\r\n class=\"mdi mdi-filter-variant\"\r\n [ngClass]=\"{\r\n active:\r\n annaFilterService.isFilterSortActive &&\r\n annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon || showSkeletonLoading\r\n }\"\r\n [ngbTooltip]=\"weekPickerToolTip\"\r\n placement=\"bottom left-top\"\r\n container=\"body\"\r\n [autoClose]=\"'outside'\"\r\n triggers=\"manual\"\r\n #t3=\"ngbTooltip\"\r\n (click)=\"bindTheValueToToolTip(t3, header)\"\r\n (hidden)=\"closeTooltip()\"\r\n >\r\n </span\r\n ><br />\r\n </ng-container>\r\n <ng-container *ngIf=\"header.filter === 'TIME'\">\r\n <span\r\n class=\"mdi mdi-filter-variant\"\r\n [ngClass]=\"{\r\n active:\r\n annaFilterService.isFilterSortActive &&\r\n annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon || showSkeletonLoading\r\n }\"\r\n [ngbTooltip]=\"timeFilterToolTip\"\r\n placement=\"bottom left-top auto\"\r\n container=\"body\"\r\n tooltipClass=\"non-edit-time-tooltip\"\r\n [autoClose]=\"'outside'\"\r\n triggers=\"manual\"\r\n #t4=\"ngbTooltip\"\r\n (click)=\"bindTheValueToToolTip(t4, header)\"\r\n (hidden)=\"closeTooltip()\"\r\n >\r\n </span\r\n ><br />\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"!header.showTooltipIcon\">\r\n <span id=\"no-filter-space\"></span><br />\r\n </ng-container>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'lurViolationInfoTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"lurViolationInfoTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n </div>\r\n </div>\r\n </th>\r\n\r\n <ng-container *matCellDef=\"let ROW_DATA\">\r\n <td\r\n mat-cell\r\n [style.background]=\"ROW_DATA.backgroundColor\"\r\n [style.border]=\"ROW_DATA.border\"\r\n class=\"{{ ROW_DATA.rowClass }}\"\r\n [ngClass]=\"ROW_DATA[columnDef.headerInfo[0].objectKey + 'TdClass']\"\r\n [attr.rowspan]=\"tdsHaveRowSpan ? ROW_DATA[columnDef.headerInfo[0].objectKey + 'Rowspan'] : 1\"\r\n *ngIf=\"\r\n !hideSomeTds ||\r\n (hideSomeTds && !ROW_DATA['hide' + columnDef.headerInfo[0].objectKey + 'Td'])\r\n \"\r\n >\r\n <ngx-skeleton-loader\r\n *ngIf=\"showSkeletonLoading\"\r\n count=\"1\"\r\n [theme]=\"{ height: '10px', display: 'block' }\"\r\n >\r\n </ngx-skeleton-loader>\r\n\r\n <ng-container *ngIf=\"!showSkeletonLoading\">\r\n <ng-container *ngIf=\"tableData.length > 0 && (isNoDataToDisplaySubject$ | async) === false\">\r\n <ng-container\r\n *ngFor=\"\r\n let subline of columnDef.headerInfo;\r\n let subLineIndex = index;\r\n trackBy: trackByFn\r\n \"\r\n >\r\n <div annaCoreShowEllipsisTextOnHover>\r\n <ng-container [ngSwitch]=\"columnDef.headerInfo[subLineIndex].typeOfBodyData\">\r\n <ng-container *ngSwitchCase=\"'ICON'\">\r\n <i\r\n *ngIf=\"\r\n !(\r\n starredInProgress &&\r\n ROW_DATA.orderId === selectedStarredOrderId\r\n )\r\n \"\r\n [class]=\"ROW_DATA.iconClass\"\r\n [ngClass]=\"{ 'disabled-starring': starredInProgress }\"\r\n (click)=\"iconClicked(ROW_DATA, ROW_DATA.iconClass)\"\r\n ngbTooltip=\"{{ ROW_DATA.iconTitleText }}\"\r\n placement=\"bottom\"\r\n container=\"body\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class\"\r\n ></i>\r\n <ng-container\r\n *ngIf=\"\r\n starredInProgress && ROW_DATA.orderId === selectedStarredOrderId\r\n \"\r\n >\r\n <div\r\n class=\"spinner-for-button-directive\"\r\n [ngClass]=\"{ 'disabled-starring': starredInProgress }\"\r\n ></div>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'ICON_CELL'\">\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <ng-container *ngIf=\"action.showObjectKey\">\r\n {{ ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey] }}\r\n </ng-container>\r\n\r\n <i\r\n *ngIf=\"action.showIcon\"\r\n [class]=\"action.iconClass\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringTextActionType(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].tooltipKey\r\n )\r\n \"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n tooltipClass=\"team-user-tooltip remove-on-scroll-class\"\r\n [ngbTooltip]=\"\r\n action.showTooltip && action?.tooltipData\r\n ? action.tooltipData\r\n : null\r\n \"\r\n (click)=\"\r\n textActionClicked(\r\n ROW_DATA,\r\n action.id,\r\n columnDef.headerInfo[subLineIndex]\r\n )\r\n \"\r\n [disableTooltip]=\"!action.showTooltip\"\r\n >\r\n </i>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'HTML_STRING'\">\r\n <p\r\n [innerHTML]=\"ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\"\r\n (click)=\"innerHTMLCellClicked($event, ROW_DATA)\"\r\n ></p>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'SVG_ICON'\">\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <span\r\n class=\"pr-4\"\r\n *ngIf=\"action?.showObjectKey\"\r\n >\r\n {{ ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey] }}\r\n </span>\r\n\r\n <span\r\n class=\"pr-4 {{ action?.additionalTextClass }}\"\r\n *ngIf=\"action?.additionalText\"\r\n >\r\n {{ action?.additionalText }}\r\n </span>\r\n\r\n <anna-core-icon-column\r\n class=\"pr-4\"\r\n *ngIf=\"action?.svgOrIconName\"\r\n [componentName]=\"gtGeneralConfig.component\"\r\n [dataObject]=\"ROW_DATA\"\r\n [iconToShow]=\"action.svgOrIconName\"\r\n data-html=\"true\"\r\n [ngbTooltip]=\"tipContent\"\r\n [disableTooltip]=\"!action?.svgOrIconTooltipMsg\"\r\n placement=\"auto\"\r\n container=\"body\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class\"\r\n (columnIconClicked)=\"svgIconClicked(ROW_DATA, columnDef.headerInfo[subLineIndex].actionKey)\"\r\n >\r\n <ng-template #tipContent>\r\n <div [innerHTML]=\"action?.svgOrIconTooltipMsg\"></div\r\n ></ng-template>\r\n </anna-core-icon-column>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'TEXT_ACTIONS'\">\r\n <ng-container\r\n *ngFor=\"\r\n let text of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <button\r\n *ngIf=\"text.showTooltip\"\r\n (click)=\"\r\n textActionClicked(\r\n ROW_DATA,\r\n text.id,\r\n columnDef.headerInfo[subLineIndex]\r\n )\r\n \"\r\n [disabled]=\"text.isDisabled\"\r\n class=\"{{ text.class }}\"\r\n (mouseenter)=\"\r\n mouseEnterOnTextActionType(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].tooltipKey\r\n )\r\n \"\r\n [ngbTooltip]=\"textActionTooltipTemplate\"\r\n placement=\"auto\"\r\n container=\"body\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class\"\r\n >\r\n {{ text.name }}\r\n </button>\r\n\r\n <button\r\n *ngIf=\"!text.showTooltip\"\r\n (click)=\"\r\n textActionClicked(\r\n ROW_DATA,\r\n text.id,\r\n columnDef.headerInfo[subLineIndex]\r\n )\r\n \"\r\n [disabled]=\"text.isDisabled\"\r\n class=\"{{ text.class }}\"\r\n >\r\n {{ text.name }}\r\n </button>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'CHECKBOX'\">\r\n <span\r\n *ngIf=\"ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\"\r\n [ngClass]=\"{\r\n 'disable-checkbox':\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].isDisabledKey]\r\n }\"\r\n class=\"material-icons custom-column-checkbox-checked\"\r\n (click)=\"\r\n selectOrUnselectCheckbox(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].objectKey,\r\n false\r\n )\r\n \"\r\n >\r\n check_box\r\n </span>\r\n <span\r\n *ngIf=\"!ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\"\r\n class=\"material-icons custom-column-checkbox-unchecked\"\r\n [ngClass]=\"{\r\n 'disable-checkbox':\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].isDisabledKey]\r\n }\"\r\n (click)=\"\r\n selectOrUnselectCheckbox(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].objectKey,\r\n true\r\n )\r\n \"\r\n >\r\n check_box_outline_blank\r\n </span>\r\n\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <i\r\n *ngIf=\"action.showIcon\"\r\n [class]=\"action.iconClass\"\r\n [ngClass]=\"{ disabled: action.disabledIcon }\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringTextActionTypeContainingTable(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].tooltipKey\r\n )\r\n \"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n tooltipClass=\"tooltip-containing-table remove-on-scroll-class\"\r\n ngbTooltip=\"tooltipContainingTableTemplate\"\r\n >\r\n </i>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'CLICKABLE_DATA'\">\r\n <a\r\n *ngFor=\"\r\n let text of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n [class]=\"text.class\"\r\n (click)=\"onClickableDataClicked(ROW_DATA, text.id)\"\r\n >{{ text.name }}</a\r\n >\r\n <span\r\n *ngIf=\"\r\n subline.objectKey === 'displayBookedUnits' &&\r\n gtGeneralConfig.component === 'RATING'\r\n \"\r\n class=\"clickable-data\"\r\n (click)=\"spotDetailsDownloadClicked('DATAROW', ROW_DATA)\"\r\n [ngClass]=\"{ 'disabled-clickable-data': downloadInProgress }\"\r\n >{{ ROW_DATA.displayBookedUnits }}\r\n <span class=\"material-icons spot-details-download-icons\"\r\n >get_app</span\r\n >\r\n <ng-container\r\n *ngIf=\"\r\n downloadInProgress &&\r\n ROW_DATA.inventoryCodeId ===\r\n selectedInventoryIdForDownload &&\r\n ROW_DATA.demographic === selectedDemographicForDownload\r\n \"\r\n >\r\n <ng-container\r\n [ngTemplateOutlet]=\"circularProgressBar\"\r\n ></ng-container>\r\n </ng-container>\r\n </span>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'STRING___ICON_OR_TEXT_ACTION'\">\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <span\r\n [class]=\"action.additionalTextBeforeLinkClass\"\r\n [innerHtml]=\"action.additionalTextBeforeLink\"\r\n ngbTooltip=\"{{ action.additionalTextBeforeLink }}\"\r\n placement=\"bottom\"\r\n container=\"body\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class\"\r\n [disableTooltip]=\"!action.enableTooltipForAdditionalText\"\r\n ></span>\r\n\r\n <ng-container *ngIf=\"action && action.typeOfData === 'STRING'\">\r\n <span\r\n class=\"text-with-icon-and-text\"\r\n [ngClass]=\"{ 'reduced-width': action.showIcon }\"\r\n annaCoreShowEllipsisTextOnHover\r\n >{{ action.data }}</span\r\n >\r\n </ng-container>\r\n\r\n <a\r\n [id]=\"action.id\"\r\n *ngIf=\"action.showLink\"\r\n (click)=\"\r\n textActionClicked(\r\n ROW_DATA,\r\n action.id,\r\n columnDef.headerInfo[subLineIndex]\r\n )\r\n \"\r\n [class]=\"action.linkClass\"\r\n [ngClass]=\"{ disabled: action.disabledLink }\"\r\n >{{ action.data }}</a\r\n >\r\n <span\r\n ngbTooltip=\"{{ action.additionalTextAfterLink }}\"\r\n placement=\"bottom\"\r\n container=\"body\"\r\n [class]=\"action.additionalTextAfterLinkClass\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class\"\r\n [disableTooltip]=\"!action.enableTooltipForAdditionalAfterText\"\r\n >\r\n {{ action.additionalTextAfterLink }}\r\n </span>\r\n\r\n <ng-container *ngIf=\"action.showTooltip\">\r\n <ng-container *ngIf=\"action.tooltipData.innerHtml\">\r\n <i\r\n *ngIf=\"action.showIcon\"\r\n [class]=\"action.iconClass\"\r\n [ngClass]=\"{ disabled: action.disabledIcon }\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringTextActionTypeContainingTable(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].tooltipKey\r\n )\r\n \"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n tooltipClass=\"tooltip-containing-table remove-on-scroll-class\"\r\n [ngbTooltip]=\"tooltipContainingTableTemplate\"\r\n >\r\n </i>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!action.tooltipData.tooltipTableBody\">\r\n <span\r\n *ngIf=\"action.showIcon\"\r\n [ngClass]=\"{ disabled: action.disabledIcon }\"\r\n class=\"icon-tooltip-text\"\r\n (click)=\"\r\n iconClickedOnStringIconActionType(\r\n ROW_DATA,\r\n action.id,\r\n columnDef.headerInfo[subLineIndex]\r\n )\r\n \"\r\n (mouseleave)=\"mouseLeaveTextActionType(ROW_DATA)\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringTextActionType(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].tooltipKey\r\n )\r\n \"\r\n [placement]=\"\r\n action.tooltipPlacement\r\n ? action.tooltipPlacement\r\n : 'bottom auto'\r\n \"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n tooltipClass=\"team-user-tooltip remove-on-scroll-class {{\r\n action.tooltipClass\r\n }}\"\r\n [ngbTooltip]=\"userLoggedInDetails\"\r\n >\r\n <i [class]=\"action.iconClass\"> </i>\r\n {{ action.additionalTextAfterIcon ?? \"\" }}\r\n </span>\r\n <ng-container *ngIf=\"action['showSvgIcon']\">\r\n <anna-core-anna-est-icon-template\r\n class=\"float-right\"\r\n *ngIf=\"action['svgIconName'] === 'anna-icon'\"\r\n (mouseleave)=\"mouseLeaveTextActionType(ROW_DATA)\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringTextActionType(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex]\r\n .tooltipKey\r\n )\r\n \"\r\n [placement]=\"\r\n action.tooltipPlacement\r\n ? action.tooltipPlacement\r\n : 'bottom auto'\r\n \"\r\n tooltipClass=\"team-user-tooltip remove-on-scroll-class {{\r\n action['tooltipClass']\r\n }}\"\r\n [ngbTooltip]=\"userLoggedInDetails\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n >\r\n </anna-core-anna-est-icon-template>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!action.showTooltip\">\r\n <i\r\n *ngIf=\"action.showIcon\"\r\n [class]=\"action.iconClass\"\r\n [ngClass]=\"{ disabled: action.disabledIcon }\"\r\n (click)=\"\r\n iconClickedOnStringIconActionType(\r\n ROW_DATA,\r\n action.id,\r\n columnDef.headerInfo[subLineIndex]\r\n )\r\n \"\r\n >\r\n </i>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'STRING_OR_INPUT'\">\r\n <ng-container\r\n *ngIf=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]?.type ===\r\n 'STRING';\r\n else inputBox\r\n \"\r\n >\r\n <span\r\n [innerHtml]=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n ?.value\r\n \"\r\n ></span>\r\n </ng-container>\r\n <ng-template #inputBox>\r\n <input\r\n placeholder=\"{{\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n ?.placeholder\r\n }}\"\r\n annaCoreShowEllipsisTextOnHover\r\n class=\"{{\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n .className\r\n }}\"\r\n (keydown)=\"\r\n changesMadeInEditableInputBox(\r\n $event,\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey],\r\n false\r\n )\r\n \"\r\n (paste)=\"\r\n changesMadeInEditableInputBox(\r\n $event,\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey],\r\n true\r\n )\r\n \"\r\n (ngModelChange)=\"\r\n editableInputValueChanged(\r\n $event,\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].objectKey\r\n )\r\n \"\r\n [ngModel]=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey].value\r\n \"\r\n [disabled]=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n .disabled\r\n \"\r\n [ngClass]=\"{\r\n 'red-border':\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n .hasError\r\n }\"\r\n />\r\n\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <i\r\n *ngIf=\"action.showIcon\"\r\n container=\"body\"\r\n [ngbTooltip]=\"tipContent\"\r\n tooltipClass=\"gt-total-row-tooltip\"\r\n placement=\"bottom\"\r\n class=\"{{ action.iconClass }}\"\r\n >\r\n <ng-template #tipContent>\r\n <div [innerHTML]=\"action?.iconTooltip\"></div\r\n ></ng-template>\r\n </i>\r\n <ng-container *ngIf=\"action.showSvgIcon\">\r\n <anna-core-icon-column\r\n class=\"pr-4\"\r\n *ngIf=\"action?.svgOrIconName\"\r\n [componentName]=\"gtGeneralConfig.component\"\r\n [dataObject]=\"ROW_DATA\"\r\n [iconToShow]=\"action.svgOrIconName\"\r\n data-html=\"true\"\r\n [ngbTooltip]=\"tipContent\"\r\n placement=\"auto\"\r\n container=\"body\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class\"\r\n >\r\n <ng-template #tipContent>\r\n <div\r\n [innerHTML]=\"action?.svgOrIconTooltipMsg\"\r\n ></div></ng-template\r\n ></anna-core-icon-column>\r\n </ng-container>\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'HTML'\">\r\n <span\r\n [innerHtml]=\"ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\"\r\n ></span>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'SINGLE_RADIO'\">\r\n <span\r\n *ngIf=\"ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\"\r\n [ngClass]=\"{\r\n 'disable-checkbox':\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].isDisabledKey]\r\n }\"\r\n class=\"mdi mdi-radiobox-marked\"\r\n (click)=\"(null)\"\r\n >\r\n </span>\r\n <span\r\n *ngIf=\"!ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\"\r\n class=\"mdi mdi-radiobox-blank\"\r\n [ngClass]=\"{\r\n 'disable-checkbox':\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].isDisabledKey]\r\n }\"\r\n (click)=\"\r\n selectOrUnselectCheckbox(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].objectKey,\r\n true\r\n )\r\n \"\r\n >\r\n </span>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'RADIO'\">\r\n <mat-radio-group\r\n *ngIf=\"ROW_DATA['RadioButtonConfig']; else showHyphen\"\r\n [ngModel]=\"ROW_DATA[subline.objectKey]\"\r\n [disabled]=\"ROW_DATA['RadioButtonConfig'][0].isDisabled\"\r\n >\r\n <ng-container\r\n *ngFor=\"\r\n let radioButton of ROW_DATA['RadioButtonConfig'];\r\n let last = last\r\n \"\r\n >\r\n <mat-radio-button\r\n value=\"{{ radioButton.value }}\"\r\n class=\"{{ radioButton.class }}\"\r\n (click)=\"\r\n radioButtonClicked(\r\n ROW_DATA,\r\n radioButton.value,\r\n ROW_DATA['RadioButtonConfig'][0].isDisabled\r\n )\r\n \"\r\n >{{ radioButton.label }}\r\n </mat-radio-button>\r\n <i\r\n class=\" {{ radioButton.iconClass }}\"\r\n (click)=\"radioButtonIconClicked(ROW_DATA)\"\r\n ></i>\r\n <i\r\n *ngIf=\"radioButton.tooltipMessage\"\r\n class=\"mi mdi-info-outline\"\r\n [ngbTooltip]=\"radioButton.tooltipMessage\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class\"\r\n ></i>\r\n <br *ngIf=\"!last\" />\r\n </ng-container>\r\n </mat-radio-group>\r\n <ng-template #showHyphen> - </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'STRING_WITH_TOOLTIP'\">\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <span class=\"action-data\"> {{ action?.dataToDisplay }}</span>\r\n <ng-container *ngIf=\"action?.additionalTextWoTooltip\">\r\n <span\r\n class=\"additional-text-wo-tooltip\"\r\n [innerHtml]=\"action.additionalTextWoTooltip\"\r\n >\r\n </span>\r\n </ng-container>\r\n <span\r\n *ngIf=\"action?.showTooltip\"\r\n [ngbTooltip]=\"stringWithTooltipTemplate\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringWithTooltipTextActionType(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].tooltipKey,\r\n tooltipWithStringRef\r\n )\r\n \"\r\n [placement]=\"action?.tooltipPosition\"\r\n container=\"body\"\r\n [class]=\"action?.tooltipIconClass\"\r\n [autoClose]=\"'outside'\"\r\n [triggers]=\"action.isManualTrigger ? 'manual' : 'hover focus'\"\r\n #tooltipWithStringRef=\"ngbTooltip\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class {{\r\n action?.tooltipInnerClass\r\n }}\"\r\n [disableTooltip]=\"action?.disableTooltip\"\r\n >\r\n </span>\r\n <span>{{ action?.dataToDisplayAfterTooltip }}</span>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'STRING_ELLIPSIS_WITH_TABLE_TOOLTIP'\">\r\n <div class=\"new-ellipsis-container\">\r\n <span\r\n annaCoreShowEllipsisTextOnHover\r\n class=\"cell-value\"\r\n >\r\n {{\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n .cellValue\r\n }}\r\n </span>\r\n <span\r\n *ngIf=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n ?.showTooltip\r\n \"\r\n class=\"tooltip-text\"\r\n [ngbTooltip]=\"tableInsideTooltip\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n triggers=\"manual\"\r\n (hidden)=\"closeTooltip()\"\r\n #info=\"ngbTooltip\"\r\n tooltipClass=\"table-inside-tooltip remove-on-scroll-class {{\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n ?.tooltipClass\r\n }}\"\r\n (mouseenter)=\"\r\n bindTheValueToTableTooltip(\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey],\r\n info\r\n )\r\n \"\r\n >\r\n {{\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n ?.tooltipHoverText\r\n }}\r\n </span>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'STRING_WITH_ELLIPSIS_AND_READ_MORE_TOOLTIP'\">\r\n <span\r\n title=\"\"\r\n *ngIf=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey].length <\r\n 26\r\n \"\r\n >\r\n {{ ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey] }}\r\n </span>\r\n\r\n <span\r\n title=\"\"\r\n [ngbTooltip]=\"statusNoteTooltip\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n [triggers]=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey].length >\r\n 100\r\n ? 'manual'\r\n : 'hover focus'\r\n \"\r\n (hidden)=\"closeTooltip()\"\r\n #info=\"ngbTooltip\"\r\n tooltipClass=\"status-note-tooltip\"\r\n (mouseenter)=\"\r\n bindTheValueToStatusNote(\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey],\r\n info\r\n )\r\n \"\r\n *ngIf=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey].length >\r\n 25\r\n \"\r\n >\r\n {{ ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey] }}\r\n </span>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'STRING_WITH_TOOLTIP_INNER_HTML'\">\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <span\r\n annaCoreShowEllipsisTextOnHover\r\n class=\"action-data\"\r\n [ngClass]=\"action?.showTooltip ? 'reduced-width-text' : ''\"\r\n >\r\n {{ action?.dataToDisplay }}</span\r\n >\r\n <span\r\n *ngIf=\"action?.showTooltip\"\r\n [ngbTooltip]=\"innerHtmlToolTipTemplate\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringWithInnerHtmlTooltipTextActionType(\r\n ROW_DATA,\r\n action,\r\n tooltipWithInnerHtmlRef,\r\n !action.isManualTrigger\r\n )\r\n \"\r\n [placement]=\"action?.tooltipPosition\"\r\n container=\"body\"\r\n [class]=\"\r\n 'innrHtml-tooltip-icon-marker ' + action?.tooltipIconClass\r\n \"\r\n [autoClose]=\"'outside'\"\r\n [triggers]=\"action.isManualTrigger ? 'manual' : 'hover focus'\"\r\n #tooltipWithInnerHtmlRef=\"ngbTooltip\"\r\n tooltipClass=\"gt-icon-innerHtml-tooltip remove-on-scroll-class {{\r\n action?.tooltipInnerClass\r\n }}\"\r\n [disableTooltip]=\"action?.disableTooltip\"\r\n >\r\n {{ action.tooltipMarkerText }}\r\n </span>\r\n <span *ngIf=\"action?.dataToDisplayAfterTooltip\">\r\n {{ action?.dataToDisplayAfterTooltip }}\r\n </span>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container\r\n *ngSwitchCase=\"\r\n 'ICON_CELL_AND_STRING_WITH_ELLIPSIS_AND_READ_MORE_TOOLTIP'\r\n \"\r\n >\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <i\r\n *ngIf=\"action.showIcon\"\r\n [class]=\"action.iconClass\"\r\n title=\"\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringTextActionType(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].tooltipKey\r\n )\r\n \"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n tooltipClass=\"team-user-tooltip remove-on-scroll-class\"\r\n [ngbTooltip]=\"action.showTooltip ? action.tooltipData : null\"\r\n (click)=\"\r\n textActionClicked(\r\n ROW_DATA,\r\n action.id,\r\n columnDef.headerInfo[subLineIndex]\r\n )\r\n \"\r\n [disableTooltip]=\"!action.showTooltip\"\r\n >\r\n </i>\r\n\r\n <ng-container *ngIf=\"action.showObjectKey\">\r\n <span\r\n title=\"\"\r\n *ngIf=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n .length < 26\r\n \"\r\n >\r\n {{ ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey] }}\r\n </span>\r\n\r\n <span\r\n title=\"\"\r\n [ngbTooltip]=\"statusNoteTooltip\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n [triggers]=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n .length > 100\r\n ? 'manual'\r\n : 'hover focus'\r\n \"\r\n (hidden)=\"closeTooltip()\"\r\n #info=\"ngbTooltip\"\r\n tooltipClass=\"status-note-tooltip\"\r\n (mouseenter)=\"\r\n bindTheValueToStatusNote(\r\n ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].objectKey\r\n ],\r\n info\r\n )\r\n \"\r\n *ngIf=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n .length > 25\r\n \"\r\n >\r\n {{ ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey] }}\r\n </span>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchDefault>\r\n <ng-container *ngIf=\"subline.objectKey !== 'description'\">\r\n <span annaCoreShowEllipsisTextOnHover>{{\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n }}</span>\r\n <!-- <i\r\n *ngIf=\"\r\n subline.objectKey === 'inventoryCode' &&\r\n ROW_DATA['isSellerGroup'] &&\r\n gtGeneralConfig.component === 'RATING'\r\n \"\r\n class=\"mi mdi-info-outline seller-tooltip\"\r\n [ngbTooltip]=\"sellerHierarchyTooltip\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n triggers=\"manual\"\r\n (hidden)=\"closeTooltip()\"\r\n #info=\"ngbTooltip\"\r\n tooltipClass=\"hierarchy-tooltip remove-on-scroll-class\"\r\n (mouseenter)=\"\r\n bindTheValueToSellerGroupTooltip(\r\n ROW_DATA.sellerGroupHierarchy,\r\n info\r\n )\r\n \" \r\n >\r\n </i>-->\r\n\r\n <i\r\n *ngIf=\"\r\n subline.objectKey === 'displayBookedAverageRating' &&\r\n gtGeneralConfig.component === 'RATING' &&\r\n ROW_DATA['showRatingAverageIcon']\r\n \"\r\n class=\"mi mdi-info-outline seller-tooltip\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n (mouseenter)=\"\r\n setIsDifference(ROW_DATA.isDifferenceLessThan25Percent)\r\n \"\r\n tooltipClass=\"posted-avg-tooltip remove-on-scroll-class\"\r\n [ngbTooltip]=\"postedRatingDifference\"\r\n >\r\n </i>\r\n\r\n <i\r\n *ngIf=\"\r\n subline.objectKey === 'displayBookedAverageImpression' &&\r\n gtGeneralConfig.component === 'RATING' &&\r\n ROW_DATA['showImpressionAverageIcon']\r\n \"\r\n class=\"mi mdi-info-outline seller-tooltip\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n (mouseenter)=\"\r\n setIsDifference(ROW_DATA.isDifferenceLessThan25Percent)\r\n \"\r\n tooltipClass=\"posted-avg-tooltip remove-on-scroll-class\"\r\n [ngbTooltip]=\"postedImpDifference\"\r\n >\r\n </i>\r\n </ng-container>\r\n <ng-container *ngIf=\"subline.objectKey === 'description'\">\r\n <p\r\n *ngIf=\"\r\n ROW_DATA.descriptionMessage ||\r\n ROW_DATA.descriptionEmailReferenceNum\r\n \"\r\n >\r\n <ng-container *ngIf=\"ROW_DATA.descriptionMessage\">\r\n {{ ROW_DATA.descriptionMessage }}\r\n <br />\r\n </ng-container>\r\n <ng-container\r\n *ngIf=\"\r\n ROW_DATA.descriptionEmailReferenceNum !== '-' &&\r\n ROW_DATA.descriptionEmailReferenceNum !== ''\r\n \"\r\n >\r\n Email Ref: {{ ROW_DATA.descriptionEmailReferenceNum }}\r\n <br />\r\n </ng-container>\r\n </p>\r\n <a\r\n href=\"{{ ROW_DATA.descriptionDetailsUrl }}\"\r\n target=\"_blank\"\r\n *ngIf=\"\r\n ROW_DATA.descriptionDetailsUrlType === 'PDF' ||\r\n ROW_DATA.descriptionDetailsUrlType === 'EXCEL'\r\n \"\r\n >\r\n <button class=\"btn viewDetailsAndEmailBtn\">Download</button>\r\n </a>\r\n <ng-container\r\n *ngIf=\"\r\n ROW_DATA.activityname.toLowerCase() === 'order onboarded'\r\n \"\r\n >\r\n <a\r\n *ngIf=\"ROW_DATA.descriptionDetailsUrlType === 'LINK'\"\r\n (click)=\"viewDetailsClicked(ROW_DATA)\"\r\n >\r\n <button class=\"btn viewDetailsAndEmailBtn order-onboarded\">\r\n View details\r\n </button>\r\n </a>\r\n </ng-container>\r\n\r\n <a\r\n href=\"{{ ROW_DATA.descriptionEmailUrl }}\"\r\n target=\"_blank\"\r\n *ngIf=\"\r\n ROW_DATA.descriptionEmailUrl !== '-' &&\r\n ROW_DATA.descriptionEmailUrl !== ''\r\n \"\r\n >\r\n <button class=\"btn viewDetailsAndEmailBtn\">View email</button>\r\n </a>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"isNoDataToDisplaySubject$ | async\">\r\n <div>\r\n {{ null }}\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </td>\r\n </ng-container>\r\n </ng-container>\r\n </table>\r\n </div>\r\n <anna-core-no-data-lib\r\n [width]=\"noDataWidth\"\r\n [marginTop]=\"marginTop\"\r\n *ngIf=\"isNoDataToDisplaySubject$ | async\"\r\n >\r\n </anna-core-no-data-lib>\r\n</div>\r\n\r\n<!-- Checkbox template -->\r\n<ng-template #filterTooltip>\r\n <anna-core-anna-column-checkbox-filter\r\n [tableData]=\"tableData\"\r\n [showFilterHeaderTabs]=\"showFilterTooltipTabs\"\r\n [isLurAndCsrComponent]=\"false\"\r\n [clonedTableData]=\"clonedTableData\"\r\n [filterTabObjects]=\"filterTabObjects\"\r\n (filterAppliedToTable)=\"filterApplied($event)\"\r\n (sortingAppliedToTable)=\"sortingApplied($event)\"\r\n (closeTooltip)=\"closeTooltip()\"\r\n >\r\n </anna-core-anna-column-checkbox-filter>\r\n</ng-template>\r\n\r\n<!-- Slider template -->\r\n<ng-template #sliderToolTip>\r\n <anna-core-anna-column-slider-filter\r\n [tableData]=\"tableData\"\r\n [showFilterHeaderTabs]=\"showFilterTooltipTabs\"\r\n [isLurAndCsrComponent]=\"false\"\r\n [clonedTableData]=\"clonedTableData\"\r\n [filterTabObjects]=\"filterTabObjects\"\r\n (filterAppliedToTable)=\"filterApplied($event)\"\r\n (sortingAppliedToTable)=\"sortingApplied($event)\"\r\n (closeTooltip)=\"closeTooltip()\"\r\n >\r\n </anna-core-anna-column-slider-filter>\r\n</ng-template>\r\n\r\n<!-- Date Picker Template -->\r\n<ng-template #datePickerTooltip>\r\n <anna-core-anna-column-date-range-filter\r\n [tableData]=\"tableData\"\r\n [showFilterHeaderTabs]=\"showFilterTooltipTabs\"\r\n [isLurAndCsrComponent]=\"false\"\r\n [clonedTableData]=\"clonedTableData\"\r\n [filterTabObjects]=\"filterTabObjects\"\r\n (filterAppliedToTable)=\"filterApplied($event)\"\r\n (sortingAppliedToTable)=\"sortingApplied($event)\"\r\n (closeTooltip)=\"closeTooltip()\"\r\n >\r\n </anna-core-anna-column-date-range-filter>\r\n</ng-template>\r\n\r\n<!-- Week Picker Template -->\r\n<ng-template #weekPickerToolTip>\r\n <!-- <div class=\"weekpicker-container\">\r\n <anna-core-week-calendar-filter-lib\r\n [week-calendar-config]=\"gtGeneralConfig.multiWeekPickerConfig\"\r\n (apply)=\"applyWeekFilter($event)\"\r\n [from-date]=\"calendarMinEnabledDate\"\r\n [to-date]=\"calendarMaxEnabledDate\"\r\n >\r\n </anna-core-week-calendar-filter-lib>\r\n </div> -->\r\n</ng-template>\r\n\r\n<!-- Time Filter Template -->\r\n<ng-template #timeFilterToolTip>\r\n <anna-core-anna-column-time-filter\r\n [tableData]=\"tableData\"\r\n [showFilterHeaderTabs]=\"showFilterTooltipTabs\"\r\n [isLurAndCsrComponent]=\"false\"\r\n [showAllTimeRangeCheckboxes]=\"showCheckboxesForTimeFilter\"\r\n [clonedTableData]=\"clonedTableData\"\r\n [filterTabObjects]=\"filterTabObjects\"\r\n (filterAppliedToTable)=\"filterApplied($event)\"\r\n (sortingAppliedToTable)=\"sortingApplied($event)\"\r\n (closeTooltip)=\"closeTooltip()\"\r\n >\r\n </anna-core-anna-column-time-filter>\r\n</ng-template>\r\n\r\n<ng-template #columnInfoTooltip>\r\n <p class=\"black-color-text white-space-nowrap\">This preemption is rejected and not marked for credit.</p>\r\n</ng-template>\r\n\r\n<ng-template #ratingInfoTooltip>\r\n <p class=\"first-row\">Shows 'Booked Rating' for Preemptions & MakeGood Offered spot(s).</p>\r\n <p class=\"second-row\">Shows 'Projected Rating' for ADU Offered spot(s).</p>\r\n</ng-template>\r\n\r\n<ng-template #impsInfoTooltip>\r\n <p class=\"first-row\">Shows 'Booked IMPS' for Preemptions & MakeGood Offered spot(s).</p>\r\n <p class=\"second-row\">Shows 'Projected IMPS' for ADU Offered spot(s).</p>\r\n</ng-template>\r\n\r\n<ng-template #spotsColumnEquivalizationMessageTooltip>\r\n <p class=\"spot-column-tooltip-message\">\r\n This consists of equivalized spots and un-equivalized Paid Programs & un-equivalized Non-spots.\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #underDeliveryTooltip>\r\n <p class=\"spot-column-tooltip-message\">\r\n Indicates the Under-delivery percentage based on booked and posted RTG/IMPS.\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #overDeliveryTooltip>\r\n <p class=\"spot-column-tooltip-message\">\r\n Indicates the Over-delivery percentage based on booked and posted RTG/IMPS.\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #rateInfoTooltip>\r\n <p class=\"first-row\">Shows 'Booked Rate' for Preemptions & MakeGood Offered spot(s).</p>\r\n <p class=\"second-row\">Shows 'Projected $ Value' for ADU Offered spot(s).</p>\r\n</ng-template>\r\n\r\n<ng-template #sellerHierarchyTooltip>\r\n <ng-container *ngIf=\"sellerGroupHierarchy.length > 0\">\r\n <section class=\"hierarchy-table-container\">\r\n <table class=\"seller-hierarchy-table\">\r\n <thead>\r\n <tr>\r\n <th>#</th>\r\n <th>Inventory Codes</th>\r\n <th>Program/Description</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let data of sellerGroupHierarchy; let tooltipIndex = index\">\r\n <td>{{ tooltipIndex + 1 }}</td>\r\n <td>\r\n <span annaCoreShowEllipsisTextOnHover>{{ data.InventoryCode }}</span>\r\n </td>\r\n <td>\r\n <span annaCoreShowEllipsisTextOnHover>{{ data.Program }}</span>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </section>\r\n </ng-container>\r\n <ng-container *ngIf=\"sellerGroupHierarchy.length === 0\">\r\n <span class=\"black-color-text\">Seller group not available for this inventory code</span>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<ng-template #tableInsideTooltip>\r\n <label class=\"ellipsis-tooltip-heading\">{{ ellipsisWithTooltipHeading }}</label>\r\n <section class=\"table-inside-tooltip-container\">\r\n <table class=\"ellipsis-tooltip-table\">\r\n <thead>\r\n <tr>\r\n <th\r\n [style.width]=\"header.width\"\r\n *ngFor=\"let header of ellipsisWithTooltipTableHeaders\"\r\n >\r\n <div>\r\n <span\r\n annaCoreShowEllipsisTextOnHover\r\n class=\"upper-label\"\r\n >{{ header.headerName }}</span\r\n >\r\n </div>\r\n </th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let data of ellipsisWithTooltipTableData\">\r\n <td *ngFor=\"let header of ellipsisWithTooltipTableHeaders\">\r\n <div>\r\n <span\r\n annaCoreShowEllipsisTextOnHover\r\n class=\"upper-label\"\r\n >{{ data[header.objectKey] }}</span\r\n >\r\n </div>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </section>\r\n</ng-template>\r\n\r\n<ng-template #lurViolationInfoTooltip>\r\n <p class=\"first-row\">The values are for the entire week.</p>\r\n</ng-template>\r\n\r\n<ng-template #postedRatingDifference>\r\n <p class=\"difference-text\">\r\n The difference between posted and booked average rating is\r\n {{ isDifferenceLessThan25Percent ? \"less\" : \"more\" }} than 25%.\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #postedImpDifference>\r\n <p class=\"difference-text\">\r\n The difference between posted and booked average impression is\r\n {{ isDifferenceLessThan25Percent ? \"less\" : \"more\" }} than 25%.\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #ongoingRevBookedColumnTooltip>\r\n <p>The Booked $ value, Spots, GRP, CPP, IMPS, CPM corresponds on the last permanent revision generated</p>\r\n</ng-template>\r\n\r\n<ng-template #completedRevBookedColumnTooltip>\r\n <p>The Booked $ value corresponds on the last permanent revision generated</p>\r\n</ng-template>\r\n\r\n<ng-template #avgBookedRate>\r\n <p>This is the booked average Rate</p>\r\n</ng-template>\r\n\r\n<ng-template #avgBookedRtg>\r\n <p>This is the booked average RTG</p>\r\n</ng-template>\r\n\r\n<ng-template #avgBookedImps>\r\n <p>This is the booked average IMP(\u2019000)</p>\r\n</ng-template>\r\n\r\n<ng-template #projectedImpsRtg>\r\n <p>\r\n All projections are derived from the sum of actual posted information until the last posted date and estimates\r\n for the remaining selected period.\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #automationTooltip>\r\n <p>\r\n Please get the order business rules approved to automate the orders. Only for the automated orders, any approved\r\n MGs, ADUs, or credited spots on ANNA will be fed into the traffic system i.e. ANNA revisions.\r\n <!-- removed below line as part of enhancmennt in 14.0 releas -->\r\n <!-- Additionally, ANNA will only enter buyer revisions into traffic for the selected\r\n Medialine/WOC orders. -->\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #rebateImpact>\r\n <p>Rebate impact value is for the originally ordered spot length and is not equivalized.</p>\r\n</ng-template>\r\n\r\n<ng-template #lurViolationTotalRowToolTip>\r\n <ul>\r\n <li>\r\n <strong>POLITICAL RATE VIOLATIONS:</strong>\r\n Violations flagged when non-political spots are booked at a rate lower than the minimum booked rate for\r\n political candidates for the same week, Inventory Code and Revenue Class.\r\n </li>\r\n <li>\r\n <strong>CANDIDATE TO CANDIDATE VIOLATION:</strong>\r\n Violations flagged when political spots are booked at different rates to other political spots for the same\r\n week, Inventory Code and Revenue Class.\r\n </li>\r\n </ul>\r\n</ng-template>\r\n\r\n<ng-template #circularProgressBar>\r\n <circle-progress\r\n [percent]=\"percentDone\"\r\n [radius]=\"5\"\r\n [showTitle]=\"false\"\r\n [showUnits]=\"false\"\r\n [showSubtitle]=\"false\"\r\n [outerStrokeWidth]=\"3\"\r\n [innerStrokeWidth]=\"3\"\r\n [space]=\"-3\"\r\n [outerStrokeColor]=\"'#268bff'\"\r\n [innerStrokeColor]=\"'#d5d5d5'\"\r\n [animationDuration]=\"10\"\r\n ></circle-progress>\r\n</ng-template>\r\n\r\n<ng-template #userLoggedInDetails>\r\n <div class=\"tooltip-div-container\">\r\n <ng-container *ngFor=\"let data of textActionTooltip\">\r\n <span *ngIf=\"data.key !== 'read'\">\r\n {{ data.key }} <b>{{ data.value }}</b>\r\n </span>\r\n <span *ngIf=\"data.key === 'read'\">\r\n {{ data.value }}\r\n </span>\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #markAsReadTip>\r\n <div class=\"notification-tooltip-div-container\">\r\n <ng-container *ngFor=\"let data of textActionTooltip\">\r\n {{ data.value }}\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #textActionTooltipTemplate>\r\n <ng-container *ngFor=\"let data of textActionTooltip\">\r\n {{ data.key }} <b>{{ data.value }}</b>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<ng-template #programChangeTooltipTemplate>\r\n <div class=\"program-schedule-tooltip\">\r\n <h2>Program Change</h2>\r\n <p class=\"previous\">Previous:</p>\r\n <b annaCoreShowEllipsisTextOnHover>{{ textActionTooltip.OldProgramName }}</b>\r\n\r\n <p class=\"updated\">Updated:</p>\r\n <b\r\n *ngIf=\"textActionTooltip.NewProgramNames.length === 1\"\r\n annaCoreShowEllipsisTextOnHover\r\n >{{ textActionTooltip.NewProgramNames[0] }}</b\r\n >\r\n <ul *ngIf=\"textActionTooltip.NewProgramNames.length > 1\">\r\n <li *ngFor=\"let item of textActionTooltip.NewProgramNames\">\r\n <label class=\"dot\"></label>\r\n <span annaCoreShowEllipsisTextOnHover>{{ item }}</span>\r\n </li>\r\n </ul>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #showOrHideToggleForTotalRowTooltip>\r\n <div>\r\n {{ showOrHideToggleForTotalRow && !gtGeneralConfig.totalRow ? \"Show Total Row\" : \"Hide Total Row\" }}\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #tooltipContainingTableTemplate>\r\n <div\r\n *ngIf=\"tooltipContainingTable\"\r\n [innerHTML]=\"tooltipContainingTable.innerHtml\"\r\n class=\"notification-tooltip-div-container\"\r\n >\r\n <!-- <ul>\r\n <li *ngFor=\"let headerMsg of tooltipContainingTable.tableHeaderMsg\">\r\n <b> {{headerMsg}} </b>\r\n </li>\r\n </ul>\r\n\r\n <table class=\"tooltip-table\">\r\n <thead>\r\n <tr>\r\n <th *ngFor=\"let header of tooltipContainingTable.tooltipTableHeader\">\r\n {{ header}}\r\n </th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let rows of tooltipContainingTable.tooltipTableBody\">\r\n <td *ngFor=\"let data of rows\">\r\n {{ data }}\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n\r\n <ul>\r\n <li style=\"margin-top:10px; padding:0\" *ngFor=\"let footerMsg of tooltipContainingTable.tableFooterMsg\">\r\n {{ footerMsg }} \r\n </li>\r\n </ul> -->\r\n </div>\r\n</ng-template>\r\n<!-- <ng-template #textActionTooltipTemplate>\r\n <ng-container *ngFor=\"let data of textActionTooltip\">\r\n {{ data.key }} <b> {{data.value}}</b>\r\n </ng-container>\r\n</ng-template> -->\r\n\r\n<ng-template #statusNoteTooltip>\r\n <div>\r\n <span class=\"status-note-tooltip\">{{ statusNoteForTooltip }}</span>\r\n <span *ngIf=\"statusNoteForPopup.length > 100\"\r\n >...<a\r\n class=\"view-more-comments\"\r\n (click)=\"showEntireStatusNote()\"\r\n >View more</a\r\n ></span\r\n >\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #innerHtmlToolTipTemplate>\r\n <div [innerHtml]=\"toolTipInnerHtmlData\"></div>\r\n</ng-template>\r\n", styles: ["::ng-deep .show-or-hide-toggle-tooltip .tooltip-inner{max-width:229px}.show-or-hide-toggle-btn.shift-toggle-top-on-total-row-click{transform:translate(calc(var(--app-left-space-show-hide-total-row-icon) - 12px),32px)}.show-or-hide-toggle-btn{width:16px;height:16px;padding:0;margin:0;border-radius:50%;position:absolute;transform:translate(calc(var(--app-left-space-show-hide-total-row-icon) - 12px),52px);z-index:999;background-color:#d9d9d9}.show-or-hide-toggle-btn i.mdi.mdi-menu-swap{font-size:16px;display:flex}#generic-table-conatiner.table-with-show-hide-total-row-toggle .total-row td:nth-of-type(2){padding-left:16px!important}::ng-deep .gt-icon-innerHtml-tooltip .tooltip-inner{max-width:600px;width:min-content}::ng-deep .gt-icon-innerHtml-tooltip .tooltip-inner>div{width:max-content}::ng-deep .generic-innerHtml-table-heading{margin-bottom:2px;font-family:Roboto;font-size:.6875rem;font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#4a4a4a}::ng-deep .generic-innerHtml-table-container{max-height:8.75rem;width:min-content;overflow:auto}::ng-deep .generic-innerHtml-table-container table{table-layout:fixed;width:100%}::ng-deep .generic-innerHtml-table-container table thead tr th{background:#e9e9e9;height:22px;padding:3px 8px;position:sticky;top:0;cursor:default;font-family:Roboto;font-size:.6875rem;font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#4a4a4a;margin-bottom:0;box-shadow:inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4,inset -1px 0 #d4d4d4}::ng-deep .generic-innerHtml-table-container table thead tr th:first-of-type{box-shadow:inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4,inset -1px 0 #d4d4d4!important;border-left:1px solid #d4d4d4}::ng-deep .generic-innerHtml-table-container table tbody tr td{border:1px solid #d4d4d4;padding:3px 8px;width:100%;color:#000;font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:0px}::ng-deep .generic-innerHtml-table-container table tbody tr:first-of-type td{border-top:none}::ng-deep .generic-innerHtml-table-container::-webkit-scrollbar-track{margin-top:22px!important}.sort-btn{background:#fff;border:none;border-right:1px solid #1b88ff;text-decoration:underline;font-family:Roboto;font-size:var(--sort-label-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:1.07;letter-spacing:normal;color:#1b88ff;cursor:pointer;flex:1;text-align:center}.sort-btn:last-of-type{border-right:none}.sort-btn.active{color:#202b47;text-decoration:none}p.sort-container{margin-top:8px;padding-bottom:8px;border-bottom:1px solid #e6e6e6;margin-bottom:0;display:flex}::ng-deep .tooltip-inner{max-height:22rem;background-color:#fff;border:1px solid white;border-radius:5px;box-shadow:0 2px 2px #0000003d,0 0 2px #0000001f;max-width:251px;width:100%;padding:0!important}::ng-deep .tooltip-inner div.radio-container{flex-wrap:wrap}::ng-deep .md-drppicker{box-shadow:unset!important}::ng-deep .available{color:#999}::ng-deep .bs-tooltip-bottom .arrow:before{border-bottom-color:#fff!important}::ng-deep .bs-tooltip-left .arrow:before{border-left-color:#fff!important}::ng-deep .tooltip.show{opacity:1}.input{text-align:left;margin:5px 10px 5px 5px;display:flex;align-items:center;width:230px;white-space:nowrap}.data{color:#000;font-weight:700;margin-left:5px;margin-right:5px}span.data{display:inline-block;text-overflow:ellipsis;white-space:pre;width:100%;overflow:hidden}.check-box{font-size:14px;cursor:pointer;position:relative;top:-1px}span.mdi-filter.active{color:#000;opacity:1!important;pointer-events:all!important}p{margin-bottom:0;line-height:initial}span.mdi-filter{color:#cbcbcb}::ng-deep .ngx-slider-pointer{top:-5px!important;width:12px!important;height:12px!important;background:#bdbdbd!important;border:1px solid #ffffff!important;box-shadow:0 1px 3px #0000004d!important;border-radius:16px!important}input:focus{outline:none}input::placeholder{color:#c8c8c8}.cancel-btn{background:#c7e1ff;color:#268bff}.apply-btn{background:#268bff;color:#fff;margin-left:.3125rem}div.radio-container{display:flex;white-space:nowrap;justify-content:space-between;background-color:#f4f4f4;border-radius:.125rem;margin:.4375rem .4375rem .25rem}div.radio-container div{flex:1;width:50%}div.radio-container div.full-width{width:100%}div.radio-container input{position:relative;top:.125rem;margin-right:.25rem}div.radio-container label{font-family:Roboto;font-size:.875rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:1.29;letter-spacing:0;color:#4a4a4a;margin:0;padding-left:.125rem}div.radio-container label:first-of-type{margin-right:.188rem}div.radio-container input[type=radio]{appearance:none;display:inline-block;width:.9375rem;height:.9375rem;padding:.125rem;background-clip:content-box;border:.125rem solid #268bff;background-color:transparent;border-radius:50%}div.radio-container input[type=radio]:checked{background-color:#268bff}.checkbox-filter-buttons-container{padding:0 8px!important}.buttons-container{display:flex;margin:0px auto .4375rem;justify-content:center;padding:0 12px}.buttons-container .button{padding:0 10px;width:100%;margin:8px 0 0;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.buttons-container button:last-of-type{background-color:#268bff;color:#fff;margin-left:.5rem}.buttons-container button.disabled{background:#bdbdbd;opacity:.5;color:#4a4a4a}.button{display:inline-block;margin:8px 4px 0 8px;padding:0 16px;border-radius:4px;text-align:center;outline:none;font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:1.67;letter-spacing:normal;border:none;color:#268bff;background-color:#e5f1ff}.search-box{display:flex;align-items:center;color:#c8c8c8;border:1px solid #e6e6e6;border-radius:.125rem;margin:.25rem .4375rem .188rem;height:1.5rem;padding:.188rem 8px .188rem .5rem}.search-box .search-bar-close{margin-left:auto;float:right}.search-icon{margin:0 4px 0 0;font-size:var(--filter-search-icon-fs);color:#9b9b9b}.filter-icon{justify-content:right;margin-left:auto;color:#d4d4d4;color:#a1a1a1;font-size:16px;cursor:pointer}.data{margin:0 13px 0 8px;font-family:Roboto;font-size:var(--filter-checkbox-label-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:1.86;letter-spacing:\"\";color:#4a4a4a}.search-input{font-family:Roboto;font-size:var(--filter-search-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;color:#c8c8c8;width:calc(100% - 38px);margin:1px 0 1px 2px;border:none;padding:0}.check-box{color:#268bff}.tooltip-data-container{overflow-y:scroll;max-height:8rem}.searchbar{width:100%;display:flex;justify-content:flex-end;align-items:flex-end}.clear-button{opacity:.5;font-family:Roboto;font-size:.9375rem;font-weight:500;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;text-decoration:underline;border:none;background-color:#fff;color:#4a4a4a;margin-left:.625rem;padding:0}.clear-button:focus{outline:none;box-shadow:none}.unchecked{color:#268bff}cdk-virtual-scroll-viewport.dropdown-data-container{max-height:12.3rem;width:100%;overflow-y:auto;overflow-x:hidden}cdk-virtual-scroll-viewport.dropdown-data-container p.input{margin-left:0}cdk-virtual-scroll-viewport.dropdown-data-container p.input span.mi{padding-left:.4375rem}cdk-virtual-scroll-viewport.dropdown-data-container p.input:hover{background-color:#ebebeb;cursor:pointer}cdk-virtual-scroll-viewport.dropdown-data-container::-webkit-scrollbar{width:.188rem}cdk-virtual-scroll-viewport.dropdown-data-container::-webkit-scrollbar-thumb{color:#d3d3d3;background:#d3d3d3}section.min-maxContainer{display:flex;justify-content:center;margin-bottom:-.125rem;margin-top:.5rem;width:100%}section.min-maxContainer input{width:30%;height:1.5rem;border:1px solid lightgray;color:gray}section.min-maxContainer span{display:inline-block;padding-left:.5rem;padding-right:.5rem;position:relative;top:.3125rem;color:#666;font-size:var(--page-message-content-fs)}.time-container{width:100%;display:flex;padding:0 .75rem}.time-container input.form-control:disabled{background-color:#fff;width:2.813rem}.time-container input.numberInput:focus{box-shadow:none;border-color:#c2cfd6}.time-container .dot{color:#cbcbcb;position:relative;left:-7px;font-size:17px}.time-container div.arrow-container{flex-direction:column;display:flex;margin-top:.375rem;width:9px;height:18px;margin-right:.875rem}.time-container div.arrow-container i{color:#000;cursor:pointer;max-height:9px;font-size:20px;width:10px}.time-container div.arrow-container i:before{width:0;height:0;pointer-events:none;position:relative;left:-9px;top:-11px}.mdi-filter{cursor:pointer}.time-label-container{display:flex;justify-content:flex-start}.time-label-container label{margin-bottom:0;color:#4a4a4a;margin-top:.125rem;margin-left:.75rem;font-weight:700;font-size:var(--dropdown-label-fs)}.time-heading{color:#000;font-size:.8125rem;text-align:left;padding-left:.625rem;margin-top:.625rem;font-weight:700}.column-clear-all{width:94%;text-align:center;border:none;font-size:var(--filter-clear-select-btn-fs);background:none;text-decoration:underline;color:#268bff}.checkbox-container{display:flex;padding-inline:.625rem}.checkbox-container .data{text-align:left}.checkbox-container:first-of-type{margin-top:.625rem;font-weight:500}.column-clear-all{width:94%;text-align:center;border:none;background:none;text-decoration:underline;color:#268bff}.column-clear-all:disabled{opacity:.5;color:#4a4a4a;font-weight:400}.column-clear-all.align-center{text-align:center}span.mdi-filter-variant.disabled{pointer-events:none;opacity:.5}.datepicker-container{width:100%}span.mdi-filter-variant{color:#cbcbcb;cursor:pointer;font-size:.875rem}span.mdi-filter-variant.active{color:#000}p.filter-tab{font-family:Roboto;font-size:var(--filter-tab-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:1.29;letter-spacing:normal;color:#1b88ff;border-radius:5px;background-color:#f4f4f4;padding-inline:8px;cursor:pointer;overflow:hidden;text-align:center;text-overflow:ellipsis;padding-block:3px}p.filter-tab.active{color:#fff;background-color:#1b88ff}button.filter-text-btn{background:#fff;text-decoration:underline;font-family:Roboto;font-size:var(--filter-clear-select-btn-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;border:none;color:#268bff;margin-inline:4px;margin-top:2px}button.filter-text-btn:disabled{color:#b1b1b1;cursor:not-allowed}::ng-deep .non-edit-datepicker-tooltip .tooltip-inner{max-width:310px!important;width:283px!important;overflow-y:initial!important;padding:0!important}input.slider-text::-webkit-outer-spin-button,input.slider-text::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input.slider-text{-moz-appearance:textfield}input.slider-text.red-border{border:1px solid #f44336!important}::ng-deep .checkbox-sort p.sort-container{margin-top:8px!important;padding-bottom:8px!important}i.mdi-close{cursor:pointer}i.mdi-close.disable-close-icon{pointer-events:none;cursor:not-allowed}input.error-border{border:1px solid #f44336!important}::ng-deep .non-edit-checkbox-tooltip .tooltip-inner{width:238px!important;padding:0!important}::ng-deep .non-edit-slider-tooltip .tooltip-inner{width:238px!important;padding:0!important}::ng-deep .non-edit-time-tooltip .tooltip-inner{width:250px!important;padding:0!important}::ng-deep .non-edit-time-tooltip.bs-tooltip-start{padding:.4rem}::ng-deep .non-edit-time-tooltip.bs-tooltip-start .tooltip-arrow{right:0;top:5px!important;width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}::ng-deep .non-edit-time-tooltip.bs-tooltip-start .tooltip-arrow:before{border-left-color:#fff;left:-1px;border-width:calc(var(--bs-tooltip-arrow-width) * .5) 0 calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height)}::ng-deep .no-bottom-border p.sort-container{border-bottom:none!important}::ng-deep .ngx-slider-pointer-min:after{display:none}::ng-deep .ngx-slider-pointer-max:after{display:none}::ng-deep .ngx-slider span.ngx-slider-pointer{width:12px;height:12px;top:-5px;background-color:#bdbdbd}::ng-deep .ngx-slider span.ngx-slider-bar{height:3px;background:#ededed}::ng-deep .ngx-slider span.ngx-slider-selection{background:#bdbdbd}::ng-deep .ngx-slider span.ngx-slider-bubble{bottom:-22px;font-size:12px;color:#333}::ng-deep .show-min.ngx-slider span.ngx-slider-model-value{background:#fff;box-shadow:0 6px 10px #0000004d,0 2px 2px #0003}::ng-deep .show-max.ngx-slider span.ngx-slider-model-high{background:#fff;box-shadow:none}::ng-deep .ngx-slider span.ngx-slider-combined{background:#fff;box-shadow:0 6px 10px #0000004d,0 2px 2px #0003}::ng-deep .ngx-slider{top:10px!important;margin:5px 0 2px!important}::ng-deep .ngx-slider-animate{top:0!important}.sidebar-slider{margin-bottom:35px!important;margin-left:5px;margin-right:5px}.slider-placeholder{height:14px}::ng-deep .filter-calendar select.form-select:focus{border-color:#c2cfd6;box-shadow:none}::ng-deep .filter-calendar select.form-select{background-color:#fff}.no-data-case{padding-left:.4375rem!important;font-size:var(--filter-checkbox-label-fs)!important;margin-top:10px!important;cursor:pointer}.virtual-scroll-div{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.red-text-totol-row{color:#f44336!important}.check-mark,.unread-mark{cursor:pointer}.on-hover:hover .unread-mark,.notificationHover .check-mark{opacity:0;cursor:pointer}.on-hover:hover .check-mark{opacity:1;cursor:pointer}table{margin-bottom:0;table-layout:fixed;width:100%}:host ::ng-deep .gt .header-row th{border:none;background:#ededed;padding:2px 8px;line-height:normal;position:sticky;position:-webkit-sticky;top:0;box-shadow:inset 1px 0 #d4d4d4,inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4}:host ::ng-deep .gt .header-row th .upper-label{font-family:Roboto;font-size:var(--table-header-fs);font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#4a4a4a;margin-bottom:0}:host ::ng-deep .gt .header-row th .lower-label{font-family:Roboto;font-size:var(--table-header-fs);font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#a7a7a7;margin-bottom:0}:host ::ng-deep .gt .header-row th div.row{display:flex;flex-wrap:nowrap;justify-content:space-between;align-items:center;width:max-content}:host ::ng-deep .gt .header-row th div.sort-filter-container{display:flex;flex-wrap:nowrap;align-items:center;margin-left:.25rem;margin-right:auto}:host ::ng-deep .gt .header-row th span.mdi-filter-variant{font-size:13px!important;top:-1px!important;position:relative}:host ::ng-deep .gt .header-row th:first-of-type{box-shadow:inset 1px 0 #d4d4d4,inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4}:host ::ng-deep .gt .header-row th:last-of-type{box-shadow:inset -1px 0 #d4d4d4,inset 1px 0 #d4d4d4,inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4}:host ::ng-deep .gt .header-row br{display:block;content:\"\";margin-top:-8px}:host ::ng-deep .gt tbody tr td{padding:2px 8px;border:none;box-shadow:inset 1px 0 #d4d4d4,inset 0 -1px #d4d4d4}:host ::ng-deep .gt tbody tr td div:nth-child(1){color:#000;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-family:Roboto;font-size:var(--table-body-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:0px}:host ::ng-deep .gt tbody tr td div:nth-child(2){color:#a7a7a7;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-family:Roboto;font-size:var(--table-body-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:0px}:host ::ng-deep .gt tbody tr td:first-of-type{box-shadow:inset 1px 0 #d4d4d4,inset 0 -1px #d4d4d4}:host ::ng-deep .gt tbody tr td:last-of-type{box-shadow:inset 1px 0 #d4d4d4,inset -1px 0 #d4d4d4,inset 0 -1px #d4d4d4}:host ::ng-deep .gt tbody tr br{display:block;content:\"\";margin-top:-8px}:host ::ng-deep .gt .custom-column-checkbox-checked,:host ::ng-deep .gt .custom-column-checkbox-unchecked{font-size:.875rem;cursor:pointer}:host ::ng-deep .gt .custom-column-checkbox-checked{color:#268bff}:host ::ng-deep .gt .custom-column-checkbox-unchecked{color:#4a4a4a}:host ::ng-deep .gt .cell-value{width:calc(100% - 24px)!important;display:inline-block;width:90%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host ::ng-deep .gt .tooltip-text{color:#268bff;cursor:pointer;float:right}:host ::ng-deep .bottom-border .gt tbody tr:last-of-type td{box-shadow:inset 1px 0 #d4d4d4}:host ::ng-deep .bottom-border .gt tbody tr:last-of-type td:first-of-type{box-shadow:inset 1px 0 #d4d4d4}:host ::ng-deep .bottom-border .gt tbody tr:last-of-type td:last-of-type{box-shadow:inset 1px 0 #d4d4d4,inset -1px 0 #d4d4d4}.table-container{overflow-x:auto;overflow-y:auto}.rowSelectCheckbox,#selectAllRowsCheckbox{cursor:pointer}.disable-checkbox{color:#dedede!important;pointer-events:none!important}.mdi-warning{color:#f3c639;font-size:16px;line-height:28px}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{opacity:1}.redcolor-status{color:#c62a2a}#no-filter-space{width:.875rem}::ng-deep .mat-button-toggle-appearance-standard .mat-button-toggle-label-content{width:2.625rem;padding:0 .625rem}input.numberInput{margin-right:-.8125rem;padding:0 0 0 .625rem;height:1.875rem}::ng-deep .mat-button-toggle-checked{background-color:#268bff!important;color:#fff!important}::ng-deep .mat-button-toggle-group-appearance-standard{border-radius:0}.hidden{display:none}.no-data-div{margin-top:2.5px}.no-data-div label{margin:0;width:auto;font-weight:500;background-color:#d3d3d3;padding:.3125rem 1.125rem;border-radius:.25rem}.column-values:nth-of-type(2){color:#a7a7a7!important}.custom-column-checkbox-checked,.custom-column-checkbox-unchecked{font-size:.875rem;cursor:pointer}.custom-column-checkbox-checked{color:#268bff}.custom-column-checkbox-unchecked{color:#4a4a4a}.time-filter-checkboxes>div>p{color:#151b1e}::ng-deep .margin-bottom-zero .mat-radio-label{margin-bottom:0}:host ::ng-deep mat-radio-group br{margin-top:0!important}:host ::ng-deep mat-radio-group mat-radio-button .mdc-radio__background{width:var(--mat-radio-size);height:var(--mat-radio-size)}:host ::ng-deep mat-radio-group mat-radio-button .mdc-radio__inner-circle{border-width:calc(var(--mat-radio-size) / 2)}:host ::ng-deep mat-radio-group mat-radio-button .mdc-form-field>label{margin:0 0 0 4px;padding:0;top:-2px;position:relative;font-size:var(--radio-button-label-fs)}:host ::ng-deep mat-radio-group mat-radio-button .mdc-radio--disabled+label{color:var(--primary-text-color-dark)!important}:host ::ng-deep mat-radio-group mat-radio-button.mat-mdc-radio-button .mdc-form-field .mdc-radio{padding:0}:host ::ng-deep mat-radio-group mat-radio-button .mdc-form-field>label{left:-94px;font-size:12px;color:#4a4a4a;position:relative}:host ::ng-deep mat-radio-group mat-radio-button .mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:enabled:checked+.mdc-radio__background .mdc-radio__outer-circle{border-color:var(--mdc-radio-selected-icon-color)}::ng-deep .reject.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:#ff0}::ng-deep .reject.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-inner-circle{background-color:#ff0}::ng-deep .resubmit.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:#ff0}::ng-deep .resubmit.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-inner-circle{background-color:#ff0}::ng-deep .noAction.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:green}::ng-deep .noAction.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-inner-circle{background-color:green}::ng-deep .approve.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:green}::ng-deep .approve.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-inner-circle{background-color:green}::ng-deep .credit.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:red}::ng-deep .credit.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-inner-circle{background-color:red}::ng-deep .mat-radio-button.mat-radio-disabled .mat-radio-outer-circle{border-color:#00000061!important}::ng-deep .mat-radio-button.mat-radio-disabled.mat-radio-checked .mat-radio-inner-circle{background-color:#00000061!important}::ng-deep tr.white-background-row{background:#fff}::ng-deep tr.gray-background-row{background:#e9e9e980!important}.remarks-tooltip,.mdi-information,.mdi-information-outline,.seller-tooltip{font-size:.875rem;color:#268bff;position:relative;top:.1875rem;cursor:pointer}.seller-tooltip{top:-1px;float:right}::ng-deep .remarks-info-tooltip .tooltip-inner{max-width:19.25rem!important}.rating-icon,.lur-violation-icon{color:#268bff;cursor:pointer;position:relative;left:-2px}::ng-deep .rating-info-tooltip .tooltip-inner{max-width:800px!important}.spots-info-icon{color:#268bff;cursor:pointer;margin:1px 2px 0 -14px}.spots-info-icon-ol{color:#268bff;cursor:pointer;margin:1px 4px 0 -2px}::ng-deep .spot-info-tooltip .tooltip-inner{position:relative;max-width:220px!important;background:#fff;word-break:break-word;display:flex}::ng-deep .spot-info-tooltip-for-orderlisting-table .tooltip-inner{max-width:220px!important;background:#fff;word-break:break-word;display:flex}p.first-row{padding:.5rem .5rem 0;color:#000;white-space:nowrap;text-align:left}p.second-row{padding:2px .5rem .5rem;color:#000;white-space:nowrap;text-align:left}::ng-deep .gt-total-row-tooltip{opacity:1!important}::ng-deep .gt-total-row-tooltip .tooltip-inner{color:#000;box-shadow:0 6px 10px #0000004d,0 2px 2px #0003;background-color:#fff;padding:4px!important;width:100%;border-radius:2px!important}::ng-deep .gt-total-row-tooltip .arrow:before{border-top-color:#fff!important}.info-label{margin-left:4px;color:#268bff;vertical-align:text-top}::ng-deep .hierarchy-tooltip{max-width:-moz-fit-content;max-width:fit-content;width:310px!important}::ng-deep .hierarchy-tooltip .tooltip-inner{padding:4px!important;max-width:22.75rem;max-height:11.25rem}table.seller-hierarchy-table{table-layout:fixed}table.seller-hierarchy-table tr th{font-family:Roboto;font-size:.75rem;font-weight:500;font-stretch:normal;font-style:normal;line-height:1.67;letter-spacing:normal;color:#5e5e5e;white-space:nowrap;background:#ededed;position:sticky;box-shadow:inset 0 1px #d4d4d4;top:0;z-index:1}table.seller-hierarchy-table tr th:nth-child(1){width:20px}table.seller-hierarchy-table tr th:first-of-type,table.seller-hierarchy-table tr td:first-of-type{width:30px;border-left:1px solid #d4d4d4}table.seller-hierarchy-table tr th:last-of-type,table.seller-hierarchy-table tr td:last-of-type{border-right:1px solid #d4d4d4;width:7.875rem!important}table.seller-hierarchy-table tr th:nth-of-type(2){width:7.75rem!important}table.seller-hierarchy-table tr td{font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;color:#4a4a4a;box-shadow:none!important;border-top:1px solid #d4d4d4;border-bottom:1px solid #d4d4d4}table.seller-hierarchy-table tr td:nth-of-type(2),table.seller-hierarchy-table tr td:nth-of-type(3){padding-top:.25rem}table.seller-hierarchy-table tr td span{display:inline-block;width:90%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative}section.hierarchy-table-container,section.table-inside-tooltip-container{max-height:8.75rem;overflow:auto}section.hierarchy-table-container::-webkit-scrollbar-track{margin-top:1.5rem}section.table-inside-tooltip-container::-webkit-scrollbar-track{margin-top:1.1875rem}.difference-text{padding:.5rem;color:#000;text-align:left}::ng-deep .posted-avg-tooltip .tooltip-inner{width:13.8125rem!important}::ng-deep .drrBooked-info-tooltip{transform:translate(26px,6px)}::ng-deep .drrBooked-info-tooltip .tooltip-inner{max-width:307px!important;width:242px!important;background:#fff;word-break:break-word;display:flex;padding:4px!important;text-align:left}::ng-deep .drrBooked-info-tooltip .tooltip-inner p{color:#000}::ng-deep .drrBooked-info-tooltip .arrow:before{border-right-color:#fff!important}.clickable-data{cursor:pointer;color:#268bff!important;display:flex!important;align-items:center}.clickable-data .spot-details-download-icons{font-size:12px}.disabled-clickable-data{pointer-events:none;color:#d4d4d4!important}.spot-column-tooltip-message{color:#000;width:max-content;text-align:left}div.spinner-for-button-directive{position:relative;left:-1px}.clickable-row table tr.mat-row td{cursor:pointer!important}.tooltip-div-container{text-align:left!important;padding:8px 4px;color:#4a4a4a!important;font-size:11px!important;font-family:Roboto;font-size:11px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}.notification-tooltip-div-container{text-align:left!important;padding:6px 8px;color:#4a4a4a!important;font-size:12px!important;font-family:Roboto;font-size:12px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}.mdi-information,.mdi-information-outline{left:3px;top:1px}.mdi-information-outline{position:static}::ng-deep .team-user-tooltip.bs-tooltip-top .arrow:before{border-top:6px solid white}::ng-deep .team-user-tooltip.bs-tooltip-left .arrow:before{border-left:6px solid white}::ng-deep .team-user-tooltip.bs-tooltip-bottom .arrow:before{border-bottom:6px solid white}::ng-deep .team-user-tooltip.bs-tooltip-right .arrow:before{border-right:5px solid white}::ng-deep .team-user-tooltip .tooltip-inner{opacity:1!important;width:-moz-fit-content!important;width:fit-content!important;max-width:520px;border-radius:2px;padding:0 4px!important}::ng-deep .team-user-tooltip .tooltip-inner .tooltip-inner{color:#4a4a4a;text-align:left;padding:8px!important;border-radius:2px;background:#fff!important;box-shadow:0 6px 10px #0000004d,0 2px 2px #0003;font-family:Roboto;font-size:var(--page-message-content-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}::ng-deep .team-user-tooltip .tooltip-inner.bs-tooltip-top .arrow:before{border-top:6px solid white}::ng-deep .team-user-tooltip .tooltip-inner.bs-tooltip-left .arrow:before{border-left:6px solid white}::ng-deep .team-user-tooltip .tooltip-inner.bs-tooltip-bottom .arrow:before{border-bottom:6px solid white}::ng-deep .team-user-tooltip .tooltip-inner.bs-tooltip-right .arrow:before{border-right:5px solid white}::ng-deep .gt-icon-column-tooltip{opacity:1!important}::ng-deep .gt-icon-column-tooltip .tooltip-inner{color:#4a4a4a;text-align:left;padding:8px!important;border-radius:2px;background:#fff!important;box-shadow:0 6px 10px #0000004d,0 2px 2px #0003;font-family:Roboto;font-size:var(--page-message-content-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}::ng-deep .gt-icon-column-tooltip.bs-tooltip-top .arrow:before{border-top:6px solid white}::ng-deep .gt-icon-column-tooltip.bs-tooltip-left .arrow:before{border-left:6px solid white}::ng-deep .gt-icon-column-tooltip.bs-tooltip-bottom .arrow:before{border-bottom:6px solid white}::ng-deep .gt-icon-column-tooltip.bs-tooltip-right .arrow:before{border-right:5px solid white}::ng-deep .gt-icon-column-tooltip .tooltip-inner{width:100%}::ng-deep .tooltip-containing-table{opacity:1!important}::ng-deep .tooltip-containing-table .tooltip-inner{color:#4a4a4a;text-align:left;padding:8px!important;border-radius:2px;background:#fff!important;box-shadow:0 6px 10px #0000004d,0 2px 2px #0003;font-family:Roboto;font-size:var(--page-message-content-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}::ng-deep .tooltip-containing-table.bs-tooltip-top .arrow:before{border-top:6px solid white}::ng-deep .tooltip-containing-table.bs-tooltip-left .arrow:before{border-left:6px solid white}::ng-deep .tooltip-containing-table.bs-tooltip-bottom .arrow:before{border-bottom:6px solid white}::ng-deep .tooltip-containing-table.bs-tooltip-right .arrow:before{border-right:5px solid white}::ng-deep .tooltip-containing-table li{margin:0!important;padding:0!important}::ng-deep .tooltip-containing-table ul{margin:0!important;padding-left:8px!important}::ng-deep .tooltip-containing-table ul.pl-16{padding-left:16px!important}::ng-deep .tooltip-containing-table .tooltip-inner{width:100%;max-width:230px}table.tooltip-table{table-layout:fixed;margin:4px 0 0;width:100%}table.tooltip-table th,table.tooltip-table td{padding:2px 8px;line-height:normal}table.tooltip-table thead tr th:first-of-type{box-shadow:inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4,inset -1px 0 #d4d4d4,inset 1px 0 #d4d4d4!important;border:none}table.tooltip-table thead tr th{color:#5e5e5e!important;font-size:12px;font-weight:500;font-family:Roboto;line-height:1.67;background-color:#ededed;border-top:none!important;border-bottom:none!important;outline:none!important;box-shadow:inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4,inset -1px 0 #d4d4d4}table.tooltip-table thead tr th div.row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center}table.tooltip-table tbody tr td{color:#5e5e5e!important;font-size:12px;font-weight:500;font-family:Roboto;line-height:1.67}table.tooltip-table tbody tr td:first-of-type{box-shadow:inset 1px 0 #d4d4d4,inset -1px 0 #d4d4d4,inset 0 -1px #d4d4d4;border:none}table.tooltip-table tbody tr td:nth-of-type(n+2){box-shadow:inset -1px 0 #d4d4d4,inset 0 -1px #d4d4d4;border:none}.bottom-border{border-bottom:1px solid #d4d4d4!important}i.disabled{pointer-events:none!important}.black-color-text{color:#000}.white-space-nowrap{white-space:nowrap}.ellipsis-tooltip-heading{margin-bottom:2px;font-family:Roboto;font-size:.6875rem;font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#4a4a4a}table.ellipsis-tooltip-table{table-layout:fixed;width:100%}table.ellipsis-tooltip-table thead th:first-of-type{box-shadow:inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4,inset -1px 0 #d4d4d4,inset 1px 0 #d4d4d4!important}table.ellipsis-tooltip-table thead th{background:#e9e9e9;padding:3px 8px;line-height:normal;position:sticky;top:0;cursor:default;box-shadow:inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4,inset -1px 0 #d4d4d4}table.ellipsis-tooltip-table thead th .upper-label{font-family:Roboto;font-size:.6875rem;font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#4a4a4a;margin-bottom:0}table.ellipsis-tooltip-table tbody td{padding:3px 8px}table.ellipsis-tooltip-table tbody td .upper-label{width:100%;color:#000;text-overflow:ellipsis;overflow:hidden;display:inline-block;white-space:nowrap;font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:0px}table.ellipsis-tooltip-table tbody td:first-of-type{box-shadow:inset 1px 0 #d4d4d4,inset -1px 0 #d4d4d4,inset 0 -1px #d4d4d4;border:none}table.ellipsis-tooltip-table tbody td:nth-of-type(n+2){box-shadow:inset -1px 0 #d4d4d4,inset 0 -1px #d4d4d4;border:none}.pr-4{padding-right:4px}.status-note-tooltip{font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:14px;letter-spacing:normal;color:#4a4a4a;white-space:normal!important}.view-more-comments{display:block;color:#268bff;font-family:Roboto;font-size:.75rem;font-weight:700;font-stretch:normal;font-style:normal;line-height:14px;letter-spacing:normal;cursor:pointer;margin-left:2px}td.mat-column-isOrderStarred:has(.disabled-starring){pointer-events:none!important}td.mat-column-isOrderStarred .mdi.mdi-star.disabled-starring,td.mat-column-isOrderStarred .mdi.mdi-star-outline.disabled-starring{pointer-events:none!important;color:#dbdbdb80!important}table.disable-table-scrolling{overflow:hidden!important}.icon-tooltip-text{display:inline-block;color:#268bff}.text-with-icon-and-text.reduced-width{text-overflow:ellipsis;overflow:hidden;display:inline-block;max-width:calc(100% - 25px);margin-bottom:-3.5px}.innrHtml-tooltip-icon-marker{float:right;color:#268bff}.reduced-width-text{text-overflow:ellipsis;overflow:hidden;display:inline-block;max-width:calc(100% - 25px)}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: MatTableModule }, { kind: "component", type: i4$1.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i4$1.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i4$1.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i4$1.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i4$1.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i4$1.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i4$1.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i4$1.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i4$1.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i4$1.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: NgbTooltip, selector: "[ngbTooltip]", inputs: ["animation", "autoClose", "placement", "popperOptions", "triggers", "positionTarget", "container", "disableTooltip", "tooltipClass", "openDelay", "closeDelay", "ngbTooltip"], outputs: ["shown", "hidden"], exportAs: ["ngbTooltip"] }, { kind: "ngmodule", type: NgxSkeletonLoaderModule }, { kind: "component", type: i5$1.NgxSkeletonLoaderComponent, selector: "ngx-skeleton-loader", inputs: ["count", "loadingText", "appearance", "animation", "ariaLabel", "theme"] }, { kind: "directive", type: ShowEllipsisTextOnHoverDirective, selector: "[annaCoreShowEllipsisTextOnHover]" }, { kind: "directive", type: NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: AnnaIconColumnComponent, selector: "anna-core-icon-column", inputs: ["componentName", "iconToShow", "dataObject"], outputs: ["columnIconClicked"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: MatRadioModule }, { kind: "directive", type: i7.MatRadioGroup, selector: "mat-radio-group", exportAs: ["matRadioGroup"] }, { kind: "component", type: i7.MatRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex"], exportAs: ["matRadioButton"] }, { kind: "directive", type: NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: AnnaNoDataComponent, selector: "anna-core-no-data-lib", inputs: ["width", "marginTop"] }, { kind: "component", type: AnnaColumnCheckboxFilterComponent, selector: "anna-core-anna-column-checkbox-filter", inputs: ["showFilterHeaderTabs", "isLurAndCsrComponent", "tableData", "clonedTableData", "filterTabObjects"], outputs: ["filterAppliedToTable", "sortingAppliedToTable", "getSortType", "closeTooltip"] }, { kind: "component", type: AnnaColumnSliderFilterComponent, selector: "anna-core-anna-column-slider-filter", inputs: ["filterTabObjects", "isLurAndCsrComponent", "tableData", "showFilterHeaderTabs", "clonedTableData"], outputs: ["closeTooltip", "filterAppliedToTable", "getSortType", "sortingAppliedToTable"] }, { kind: "component", type: AnnaColumnDateRangeFilterComponent, selector: "anna-core-anna-column-date-range-filter", inputs: ["tableData", "clonedTableData", "filterTabObjects", "isLurAndCsrComponent", "showFilterHeaderTabs"], outputs: ["filterAppliedToTable", "sortingAppliedToTable", "getSortType", "closeTooltip"] }, { kind: "component", type: AnnaColumnTimeFilterComponent, selector: "anna-core-anna-column-time-filter", inputs: ["tableData", "clonedTableData", "filterTabObjects", "showFilterHeaderTabs", "showAllTimeRangeCheckboxes", "isLurAndCsrComponent", "gtGeneralConfig", "showClearAllFilter", "startFromText", "endToText", "isSortAndFilterAbsent"], outputs: ["timeChanges", "timeChangedEmitter", "filterAppliedToTable", "sortingAppliedToTable", "getSortType", "closeTooltip"] }, { kind: "ngmodule", type: NgCircleProgressModule }, { kind: "component", type: i8.CircleProgressComponent, selector: "circle-progress", inputs: ["name", "class", "backgroundGradient", "backgroundColor", "backgroundGradientStopColor", "backgroundOpacity", "backgroundStroke", "backgroundStrokeWidth", "backgroundPadding", "radius", "space", "percent", "toFixed", "maxPercent", "renderOnClick", "units", "unitsFontSize", "unitsFontWeight", "unitsColor", "outerStrokeGradient", "outerStrokeWidth", "outerStrokeColor", "outerStrokeGradientStopColor", "outerStrokeLinecap", "innerStrokeColor", "innerStrokeWidth", "titleFormat", "title", "titleColor", "titleFontSize", "titleFontWeight", "subtitleFormat", "subtitle", "subtitleColor", "subtitleFontSize", "subtitleFontWeight", "imageSrc", "imageHeight", "imageWidth", "animation", "animateTitle", "animateSubtitle", "animationDuration", "showTitle", "showSubtitle", "showUnits", "showImage", "showBackground", "showInnerStroke", "clockwise", "responsive", "startFromZero", "showZeroOuterStroke", "lazy", "options"], outputs: ["onClick"] }, { kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "component", type: AnnaEstIconTemplateComponent, selector: "anna-core-anna-est-icon-template" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
5190
5221
|
}
|
|
5191
5222
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaNonEditableGenericTableComponent, decorators: [{
|
|
5192
5223
|
type: Component,
|
|
@@ -5214,7 +5245,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
5214
5245
|
NgCircleProgressModule,
|
|
5215
5246
|
AsyncPipe,
|
|
5216
5247
|
AnnaEstIconTemplateComponent,
|
|
5217
|
-
], template: "<div\r\n id=\"generic-table-conatiner\"\r\n #tableElementRef\r\n class=\"table-container {{ gtGeneralConfig?.tableOuterContainerName }} {{ tableBottomBorderClass }}\"\r\n [ngClass]=\"{\r\n 'scroll-left-shadow-effect': isScrolledLeft,\r\n 'scroll-right-shadow-effect': !isScrollEnded,\r\n 'clickable-row': clickableRow,\r\n 'no-data-table': (isNoDataToDisplaySubject$ | async),\r\n 'table-with-show-hide-total-row-toggle': showOrHideToggleForTotalRow\r\n }\"\r\n (scroll)=\"onTableContainerScroll($event)\"\r\n>\r\n <div\r\n [class]=\"gtGeneralConfig.tableContainerName\"\r\n class=\"horizontal-scroll-for-table-container\"\r\n [ngStyle]=\"{\r\n height:\r\n tableData.length < noOfRowsToCheck\r\n ? 'calc(' +\r\n (gtDimension.rowHeight * tableData.length +\r\n (!tableData.length || !gtGeneralConfig.totalRow\r\n ? gtDimension.headerHeight\r\n : gtDimension.headerHeight + gtDimension.rowHeight)) +\r\n 'px)'\r\n : gtDimension.tableHeight\r\n }\"\r\n >\r\n <button\r\n *ngIf=\"showOrHideToggleForTotalRow && !showSkeletonLoading && (isNoDataToDisplaySubject$ | async) === false\"\r\n [ngClass]=\"{\r\n 'shift-toggle-top-on-total-row-click': !gtGeneralConfig.totalRow\r\n }\"\r\n class=\"show-or-hide-toggle-btn\"\r\n (click)=\"showHideTotalRow()\"\r\n >\r\n <i\r\n class=\"mdi mdi-menu-swap\"\r\n tooltipClass=\"show-or-hide-toggle-tooltip\"\r\n placement=\"auto\"\r\n container=\"body\"\r\n [ngbTooltip]=\"showOrHideToggleForTotalRowTooltip\"\r\n ></i>\r\n </button>\r\n <table\r\n class=\"gt\"\r\n [ngClass]=\"tableClass\"\r\n mat-table\r\n [dataSource]=\"renderedData\"\r\n >\r\n <tr\r\n class=\"header-row\"\r\n mat-header-row\r\n *matHeaderRowDef=\"tableColumns; sticky: true\"\r\n [style.height.px]=\"gtDimension.headerHeight\"\r\n ></tr>\r\n <tr\r\n class=\"total-row\"\r\n mat-header-row\r\n [style.height.px]=\"gtDimension.rowHeight\"\r\n *matHeaderRowDef=\"totalRowColumns; sticky: true\"\r\n [class.hidden]=\"\r\n showSkeletonLoading ||\r\n (!showSkeletonLoading && !tableData.length) ||\r\n (isNoDataToDisplaySubject$ | async) ||\r\n (!showSkeletonLoading && !gtGeneralConfig.totalRow)\r\n \"\r\n ></tr>\r\n <tr\r\n [class]=\"rowData.gtClass\"\r\n [ngClass]=\"{ 'no-border-tr': (isNoDataToDisplaySubject$ | async) }\"\r\n mat-row\r\n *matRowDef=\"let rowData; columns: tableColumns\"\r\n [style.height.px]=\"gtDimension.rowHeight\"\r\n (click)=\"dataRowClicked(rowData)\"\r\n ></tr>\r\n\r\n <!-- TOTAL ROW -->\r\n <ng-container\r\n [matColumnDef]=\"column.colName\"\r\n *ngFor=\"let column of totalRowInfo; trackBy: trackByFn\"\r\n >\r\n <td\r\n mat-header-cell\r\n *matHeaderCellDef\r\n [attr.colspan]=\"column.colspan\"\r\n class=\"{{ column.class }}\"\r\n >\r\n <ng-container *ngIf=\"column['isActionColumn']\">\r\n <a\r\n *ngFor=\"let data of column.actionData\"\r\n [class]=\"data.class\"\r\n (click)=\"onClickableDataClicked({}, data.id)\"\r\n >\r\n {{ data.name }}\r\n </a>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"column['isIconColumn']\">\r\n <i\r\n class=\"{{ column?.iconData?.class }}\"\r\n (click)=\"iconClickedInTotalRow(column?.colName)\"\r\n >\r\n </i>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!column['isActionColumn']\">\r\n <strong class=\"upper-label\"\r\n >{{ column.data }}\r\n <span\r\n class=\"red-text-totol-row\"\r\n *ngIf=\"column.additionalRedTextAfterData\"\r\n >{{ column.additionalRedTextAfterData }}</span\r\n ></strong\r\n >\r\n <ng-container *ngIf=\"column.lowerData\">\r\n <br />\r\n <span\r\n *ngIf=\"\r\n column.colName === 'total-potential-booked-unit' &&\r\n gtGeneralConfig.component === 'RATING';\r\n else columnLowerData\r\n \"\r\n class=\"clickable-data\"\r\n (click)=\"spotDetailsDownloadClicked('TOTALROW')\"\r\n [ngClass]=\"{ 'disabled-clickable-data': downloadInProgress }\"\r\n >{{ column.lowerData }}\r\n <span class=\"material-icons spot-details-download-icons\">get_app</span>\r\n <ng-container *ngIf=\"downloadInProgress && selectedRowTypeForDownload === 'TOTALROW'\">\r\n <ng-container [ngTemplateOutlet]=\"circularProgressBar\"></ng-container>\r\n </ng-container>\r\n </span>\r\n <ng-template #columnLowerData>\r\n <span class=\"lower-label\">{{ column.lowerData }}</span>\r\n </ng-template>\r\n </ng-container>\r\n <ng-container *ngIf=\"column.tooltipMessage && gtGeneralConfig.component !== 'LUR_VIOLATIONS'\">\r\n <i\r\n class=\"{{ column.tooltipIconClass }}\"\r\n container=\"body\"\r\n [ngbTooltip]=\"column.tooltipMessage\"\r\n tooltipClass=\"gt-total-row-tooltip\"\r\n placement=\"top bottom\"\r\n ></i>\r\n </ng-container>\r\n <ng-container *ngIf=\"gtGeneralConfig.component === 'LUR_VIOLATIONS' && column.tooltipMessage\">\r\n <i\r\n class=\"mi mdi-info-outline info-label\"\r\n container=\"body\"\r\n [ngbTooltip]=\"lurViolationTotalRowToolTip\"\r\n tooltipClass=\"gt-total-row-tooltip\"\r\n placement=\"bottom\"\r\n ></i>\r\n </ng-container>\r\n </ng-container>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- MAIN ROW -->\r\n <ng-container\r\n [matColumnDef]=\"columnDef.headerInfo[0].objectKey\"\r\n *ngFor=\"let columnDef of tableHeaders; trackBy: trackByFn\"\r\n >\r\n <th\r\n #tableHeader\r\n nowrap\r\n mat-header-cell\r\n *matHeaderCellDef\r\n [style.width]=\"columnDef.width\"\r\n >\r\n <div\r\n class=\"row mx-0\"\r\n *ngFor=\"let header of columnDef.headerInfo; let j = index\"\r\n >\r\n <p\r\n *ngIf=\"header.typeOfHeaderData === 'STRING'\"\r\n [ngClass]=\"{ 'upper-label': j === 0, 'lower-label': j === 1 }\"\r\n >\r\n <ngx-skeleton-loader\r\n *ngIf=\"header.name == null\"\r\n count=\"1\"\r\n [theme]=\"{\r\n height: '10px',\r\n display: 'block',\r\n width: columnDef.width,\r\n 'max-width': 'calc(100% - 20px)'\r\n }\"\r\n >\r\n </ngx-skeleton-loader>\r\n <ng-container *ngIf=\"header.name\">\r\n {{ header.name }}\r\n </ng-container>\r\n <ng-container *ngIf=\"header.tooltip && header.tooltip.tooltipMessage\">\r\n <i\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"header.tooltip.tooltipMessage\"\r\n container=\"body\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n </ng-container>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'impsInfoTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"impsInfoTooltip\"\r\n container=\"body\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"\r\n header.tooltip && header.tooltip.name === 'spotsColumnEquivalizationMessageTooltip'\r\n \"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n container=\"body\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"spotsColumnEquivalizationMessageTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'underDeliveryTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n container=\"body\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"underDeliveryTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'overDeliveryTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n container=\"body\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"overDeliveryTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'ratingInfoTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"ratingInfoTooltip\"\r\n container=\"body\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'rateInfoTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"rateInfoTooltip\"\r\n container=\"body\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'ongoingRevBookedColumnTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"ongoingRevBookedColumnTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'completedRevBookedColumnTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"completedRevBookedColumnTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'avgBookedRate'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"avgBookedRate\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'avgBookedRtg'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"avgBookedRtg\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'avgBookedImps'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"avgBookedImps\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'automationTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"automationTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'rebateImpact'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"rebateImpact\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'projectedImpsRtg'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"projectedImpsRtg\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n </p>\r\n\r\n <ng-container *ngIf=\"header.typeOfHeaderData === 'CHECKBOX'\">\r\n <span\r\n *ngIf=\"gtGeneralConfig.isHeaderChecked\"\r\n class=\"material-icons custom-column-checkbox-checked\"\r\n (click)=\"selectUnselectAllRows()\"\r\n >\r\n check_box\r\n </span>\r\n <span\r\n *ngIf=\"!gtGeneralConfig.isHeaderChecked\"\r\n class=\"material-icons custom-column-checkbox-unchecked\"\r\n [ngClass]=\"{ 'disable-checkbox': gtGeneralConfig.disableHeaderCheckbox }\"\r\n (click)=\"selectUnselectAllRows()\"\r\n >\r\n check_box_outline_blank\r\n </span>\r\n </ng-container>\r\n\r\n <div\r\n *ngIf=\"gtGeneralConfig.showAllColumnFilter\"\r\n class=\"sort-filter-container\"\r\n >\r\n <ng-container *ngIf=\"header.showTooltipIcon\">\r\n <!-- Active tooltip Functionality -->\r\n <ng-container *ngIf=\"header.filter === 'CHECKBOX'\">\r\n <span\r\n class=\"mdi mdi-filter-variant\"\r\n [ngClass]=\"{\r\n active:\r\n annaFilterService.isFilterSortActive &&\r\n annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon || showSkeletonLoading\r\n }\"\r\n [ngbTooltip]=\"filterTooltip\"\r\n placement=\"{{ filterAlignment }}\"\r\n container=\"body\"\r\n tooltipClass=\"non-edit-checkbox-tooltip\"\r\n [autoClose]=\"'outside'\"\r\n triggers=\"manual\"\r\n #t=\"ngbTooltip\"\r\n (click)=\"bindTheValueToToolTip(t, header)\"\r\n (hidden)=\"closeTooltip()\"\r\n >\r\n </span\r\n ><br />\r\n </ng-container>\r\n <ng-container *ngIf=\"header.filter === 'SLIDER'\">\r\n <span\r\n class=\"mdi mdi-filter-variant\"\r\n [ngClass]=\"{\r\n active:\r\n annaFilterService.isFilterSortActive &&\r\n annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon || showSkeletonLoading\r\n }\"\r\n [ngbTooltip]=\"sliderToolTip\"\r\n placement=\"bottom left-top\"\r\n container=\"body\"\r\n tooltipClass=\"non-edit-slider-tooltip\"\r\n [autoClose]=\"'outside'\"\r\n triggers=\"manual\"\r\n #t1=\"ngbTooltip\"\r\n (click)=\"bindTheValueToToolTip(t1, header)\"\r\n (hidden)=\"closeTooltip()\"\r\n >\r\n </span\r\n ><br />\r\n </ng-container>\r\n <ng-container *ngIf=\"header.filter === 'DATE'\">\r\n <span\r\n class=\"mdi mdi-filter-variant\"\r\n [ngClass]=\"{\r\n active:\r\n annaFilterService.isFilterSortActive &&\r\n annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon || showSkeletonLoading\r\n }\"\r\n [ngbTooltip]=\"datePickerTooltip\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n tooltipClass=\"non-edit-datepicker-tooltip\"\r\n [autoClose]=\"'outside'\"\r\n triggers=\"manual\"\r\n #t2=\"ngbTooltip\"\r\n (click)=\"bindTheValueToToolTip(t2, header)\"\r\n (hidden)=\"closeTooltip()\"\r\n >\r\n </span\r\n ><br />\r\n </ng-container>\r\n <ng-container *ngIf=\"header.filter === 'WEEK'\">\r\n <span\r\n class=\"mdi mdi-filter-variant\"\r\n [ngClass]=\"{\r\n active:\r\n annaFilterService.isFilterSortActive &&\r\n annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon || showSkeletonLoading\r\n }\"\r\n [ngbTooltip]=\"weekPickerToolTip\"\r\n placement=\"bottom left-top\"\r\n container=\"body\"\r\n [autoClose]=\"'outside'\"\r\n triggers=\"manual\"\r\n #t3=\"ngbTooltip\"\r\n (click)=\"bindTheValueToToolTip(t3, header)\"\r\n (hidden)=\"closeTooltip()\"\r\n >\r\n </span\r\n ><br />\r\n </ng-container>\r\n <ng-container *ngIf=\"header.filter === 'TIME'\">\r\n <span\r\n class=\"mdi mdi-filter-variant\"\r\n [ngClass]=\"{\r\n active:\r\n annaFilterService.isFilterSortActive &&\r\n annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon || showSkeletonLoading\r\n }\"\r\n [ngbTooltip]=\"timeFilterToolTip\"\r\n placement=\"bottom left-top auto\"\r\n container=\"body\"\r\n tooltipClass=\"non-edit-time-tooltip\"\r\n [autoClose]=\"'outside'\"\r\n triggers=\"manual\"\r\n #t4=\"ngbTooltip\"\r\n (click)=\"bindTheValueToToolTip(t4, header)\"\r\n (hidden)=\"closeTooltip()\"\r\n >\r\n </span\r\n ><br />\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"!header.showTooltipIcon\">\r\n <span id=\"no-filter-space\"></span><br />\r\n </ng-container>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'lurViolationInfoTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"lurViolationInfoTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n </div>\r\n </div>\r\n </th>\r\n\r\n <ng-container *matCellDef=\"let ROW_DATA\">\r\n <td\r\n mat-cell\r\n [style.background]=\"ROW_DATA.backgroundColor\"\r\n [style.border]=\"ROW_DATA.border\"\r\n class=\"{{ ROW_DATA.rowClass }}\"\r\n [ngClass]=\"ROW_DATA[columnDef.headerInfo[0].objectKey + 'TdClass']\"\r\n [attr.rowspan]=\"tdsHaveRowSpan ? ROW_DATA[columnDef.headerInfo[0].objectKey + 'Rowspan'] : 1\"\r\n *ngIf=\"\r\n !hideSomeTds ||\r\n (hideSomeTds && !ROW_DATA['hide' + columnDef.headerInfo[0].objectKey + 'Td'])\r\n \"\r\n >\r\n <ngx-skeleton-loader\r\n *ngIf=\"showSkeletonLoading\"\r\n count=\"1\"\r\n [theme]=\"{ height: '10px', display: 'block' }\"\r\n >\r\n </ngx-skeleton-loader>\r\n\r\n <ng-container *ngIf=\"!showSkeletonLoading\">\r\n <ng-container *ngIf=\"tableData.length > 0 && (isNoDataToDisplaySubject$ | async) === false\">\r\n <ng-container\r\n *ngFor=\"\r\n let subline of columnDef.headerInfo;\r\n let subLineIndex = index;\r\n trackBy: trackByFn\r\n \"\r\n >\r\n <div annaCoreShowEllipsisTextOnHover>\r\n <ng-container [ngSwitch]=\"columnDef.headerInfo[subLineIndex].typeOfBodyData\">\r\n <ng-container *ngSwitchCase=\"'ICON'\">\r\n <i\r\n *ngIf=\"\r\n !(\r\n starredInProgress &&\r\n ROW_DATA.orderId === selectedStarredOrderId\r\n )\r\n \"\r\n [class]=\"ROW_DATA.iconClass\"\r\n [ngClass]=\"{ 'disabled-starring': starredInProgress }\"\r\n (click)=\"iconClicked(ROW_DATA, ROW_DATA.iconClass)\"\r\n ngbTooltip=\"{{ ROW_DATA.iconTitleText }}\"\r\n placement=\"bottom\"\r\n container=\"body\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class\"\r\n ></i>\r\n <ng-container\r\n *ngIf=\"\r\n starredInProgress && ROW_DATA.orderId === selectedStarredOrderId\r\n \"\r\n >\r\n <div\r\n class=\"spinner-for-button-directive\"\r\n [ngClass]=\"{ 'disabled-starring': starredInProgress }\"\r\n ></div>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'ICON_CELL'\">\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <ng-container *ngIf=\"action.showObjectKey\">\r\n {{ ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey] }}\r\n </ng-container>\r\n\r\n <i\r\n *ngIf=\"action.showIcon\"\r\n [class]=\"action.iconClass\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringTextActionType(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].tooltipKey\r\n )\r\n \"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n tooltipClass=\"team-user-tooltip remove-on-scroll-class\"\r\n [ngbTooltip]=\"\r\n action.showTooltip && action?.tooltipData\r\n ? action.tooltipData\r\n : null\r\n \"\r\n (click)=\"\r\n textActionClicked(\r\n ROW_DATA,\r\n action.id,\r\n columnDef.headerInfo[subLineIndex]\r\n )\r\n \"\r\n [disableTooltip]=\"!action.showTooltip\"\r\n >\r\n </i>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'HTML_STRING'\">\r\n <p\r\n [innerHTML]=\"ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\"\r\n (click)=\"innerHTMLCellClicked($event, ROW_DATA)\"\r\n ></p>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'SVG_ICON'\">\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <span\r\n class=\"pr-4\"\r\n *ngIf=\"action?.showObjectKey\"\r\n >\r\n {{ ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey] }}\r\n </span>\r\n\r\n <span\r\n class=\"pr-4 {{ action?.additionalTextClass }}\"\r\n *ngIf=\"action?.additionalText\"\r\n >\r\n {{ action?.additionalText }}\r\n </span>\r\n\r\n <anna-core-icon-column\r\n class=\"pr-4\"\r\n *ngIf=\"action?.svgOrIconName\"\r\n [componentName]=\"gtGeneralConfig.component\"\r\n [dataObject]=\"ROW_DATA\"\r\n [iconToShow]=\"action.svgOrIconName\"\r\n data-html=\"true\"\r\n [ngbTooltip]=\"tipContent\"\r\n [disableTooltip]=\"!action?.svgOrIconTooltipMsg\"\r\n placement=\"auto\"\r\n container=\"body\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class\"\r\n (columnIconClicked)=\"svgIconClicked($event)\"\r\n >\r\n <ng-template #tipContent>\r\n <div [innerHTML]=\"action?.svgOrIconTooltipMsg\"></div\r\n ></ng-template>\r\n </anna-core-icon-column>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'TEXT_ACTIONS'\">\r\n <ng-container\r\n *ngFor=\"\r\n let text of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <button\r\n *ngIf=\"text.showTooltip\"\r\n (click)=\"\r\n textActionClicked(\r\n ROW_DATA,\r\n text.id,\r\n columnDef.headerInfo[subLineIndex]\r\n )\r\n \"\r\n [disabled]=\"text.isDisabled\"\r\n class=\"{{ text.class }}\"\r\n (mouseenter)=\"\r\n mouseEnterOnTextActionType(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].tooltipKey\r\n )\r\n \"\r\n [ngbTooltip]=\"textActionTooltipTemplate\"\r\n placement=\"auto\"\r\n container=\"body\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class\"\r\n >\r\n {{ text.name }}\r\n </button>\r\n\r\n <button\r\n *ngIf=\"!text.showTooltip\"\r\n (click)=\"\r\n textActionClicked(\r\n ROW_DATA,\r\n text.id,\r\n columnDef.headerInfo[subLineIndex]\r\n )\r\n \"\r\n [disabled]=\"text.isDisabled\"\r\n class=\"{{ text.class }}\"\r\n >\r\n {{ text.name }}\r\n </button>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'CHECKBOX'\">\r\n <span\r\n *ngIf=\"ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\"\r\n [ngClass]=\"{\r\n 'disable-checkbox':\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].isDisabledKey]\r\n }\"\r\n class=\"material-icons custom-column-checkbox-checked\"\r\n (click)=\"\r\n selectOrUnselectCheckbox(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].objectKey,\r\n false\r\n )\r\n \"\r\n >\r\n check_box\r\n </span>\r\n <span\r\n *ngIf=\"!ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\"\r\n class=\"material-icons custom-column-checkbox-unchecked\"\r\n [ngClass]=\"{\r\n 'disable-checkbox':\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].isDisabledKey]\r\n }\"\r\n (click)=\"\r\n selectOrUnselectCheckbox(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].objectKey,\r\n true\r\n )\r\n \"\r\n >\r\n check_box_outline_blank\r\n </span>\r\n\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <i\r\n *ngIf=\"action.showIcon\"\r\n [class]=\"action.iconClass\"\r\n [ngClass]=\"{ disabled: action.disabledIcon }\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringTextActionTypeContainingTable(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].tooltipKey\r\n )\r\n \"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n tooltipClass=\"tooltip-containing-table remove-on-scroll-class\"\r\n ngbTooltip=\"tooltipContainingTableTemplate\"\r\n >\r\n </i>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'CLICKABLE_DATA'\">\r\n <a\r\n *ngFor=\"\r\n let text of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n [class]=\"text.class\"\r\n (click)=\"onClickableDataClicked(ROW_DATA, text.id)\"\r\n >{{ text.name }}</a\r\n >\r\n <span\r\n *ngIf=\"\r\n subline.objectKey === 'displayBookedUnits' &&\r\n gtGeneralConfig.component === 'RATING'\r\n \"\r\n class=\"clickable-data\"\r\n (click)=\"spotDetailsDownloadClicked('DATAROW', ROW_DATA)\"\r\n [ngClass]=\"{ 'disabled-clickable-data': downloadInProgress }\"\r\n >{{ ROW_DATA.displayBookedUnits }}\r\n <span class=\"material-icons spot-details-download-icons\"\r\n >get_app</span\r\n >\r\n <ng-container\r\n *ngIf=\"\r\n downloadInProgress &&\r\n ROW_DATA.inventoryCodeId ===\r\n selectedInventoryIdForDownload &&\r\n ROW_DATA.demographic === selectedDemographicForDownload\r\n \"\r\n >\r\n <ng-container\r\n [ngTemplateOutlet]=\"circularProgressBar\"\r\n ></ng-container>\r\n </ng-container>\r\n </span>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'STRING___ICON_OR_TEXT_ACTION'\">\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <span\r\n [class]=\"action.additionalTextBeforeLinkClass\"\r\n [innerHtml]=\"action.additionalTextBeforeLink\"\r\n ngbTooltip=\"{{ action.additionalTextBeforeLink }}\"\r\n placement=\"bottom\"\r\n container=\"body\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class\"\r\n [disableTooltip]=\"!action.enableTooltipForAdditionalText\"\r\n ></span>\r\n\r\n <ng-container *ngIf=\"action && action.typeOfData === 'STRING'\">\r\n <span\r\n class=\"text-with-icon-and-text\"\r\n [ngClass]=\"{ 'reduced-width': action.showIcon }\"\r\n annaCoreShowEllipsisTextOnHover\r\n >{{ action.data }}</span\r\n >\r\n </ng-container>\r\n\r\n <a\r\n [id]=\"action.id\"\r\n *ngIf=\"action.showLink\"\r\n (click)=\"\r\n textActionClicked(\r\n ROW_DATA,\r\n action.id,\r\n columnDef.headerInfo[subLineIndex]\r\n )\r\n \"\r\n [class]=\"action.linkClass\"\r\n [ngClass]=\"{ disabled: action.disabledLink }\"\r\n >{{ action.data }}</a\r\n >\r\n <span\r\n ngbTooltip=\"{{ action.additionalTextAfterLink }}\"\r\n placement=\"bottom\"\r\n container=\"body\"\r\n [class]=\"action.additionalTextAfterLinkClass\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class\"\r\n [disableTooltip]=\"!action.enableTooltipForAdditionalAfterText\"\r\n >\r\n {{ action.additionalTextAfterLink }}\r\n </span>\r\n\r\n <ng-container *ngIf=\"action.showTooltip\">\r\n <ng-container *ngIf=\"action.tooltipData.innerHtml\">\r\n <i\r\n *ngIf=\"action.showIcon\"\r\n [class]=\"action.iconClass\"\r\n [ngClass]=\"{ disabled: action.disabledIcon }\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringTextActionTypeContainingTable(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].tooltipKey\r\n )\r\n \"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n tooltipClass=\"tooltip-containing-table remove-on-scroll-class\"\r\n [ngbTooltip]=\"tooltipContainingTableTemplate\"\r\n >\r\n </i>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!action.tooltipData.tooltipTableBody\">\r\n <span\r\n *ngIf=\"action.showIcon\"\r\n [ngClass]=\"{ disabled: action.disabledIcon }\"\r\n class=\"icon-tooltip-text\"\r\n (click)=\"\r\n iconClickedOnStringIconActionType(\r\n ROW_DATA,\r\n action.id,\r\n columnDef.headerInfo[subLineIndex]\r\n )\r\n \"\r\n (mouseleave)=\"mouseLeaveTextActionType(ROW_DATA)\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringTextActionType(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].tooltipKey\r\n )\r\n \"\r\n [placement]=\"\r\n action.tooltipPlacement\r\n ? action.tooltipPlacement\r\n : 'bottom auto'\r\n \"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n tooltipClass=\"team-user-tooltip remove-on-scroll-class {{\r\n action.tooltipClass\r\n }}\"\r\n [ngbTooltip]=\"userLoggedInDetails\"\r\n >\r\n <i [class]=\"action.iconClass\"> </i>\r\n {{ action.additionalTextAfterIcon ?? \"\" }}\r\n </span>\r\n <ng-container *ngIf=\"action['showSvgIcon']\">\r\n <anna-core-anna-est-icon-template\r\n class=\"float-right\"\r\n *ngIf=\"action['svgIconName'] === 'anna-icon'\"\r\n (mouseleave)=\"mouseLeaveTextActionType(ROW_DATA)\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringTextActionType(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex]\r\n .tooltipKey\r\n )\r\n \"\r\n [placement]=\"\r\n action.tooltipPlacement\r\n ? action.tooltipPlacement\r\n : 'bottom auto'\r\n \"\r\n tooltipClass=\"team-user-tooltip remove-on-scroll-class {{\r\n action['tooltipClass']\r\n }}\"\r\n [ngbTooltip]=\"userLoggedInDetails\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n >\r\n </anna-core-anna-est-icon-template>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!action.showTooltip\">\r\n <i\r\n *ngIf=\"action.showIcon\"\r\n [class]=\"action.iconClass\"\r\n [ngClass]=\"{ disabled: action.disabledIcon }\"\r\n (click)=\"\r\n iconClickedOnStringIconActionType(\r\n ROW_DATA,\r\n action.id,\r\n columnDef.headerInfo[subLineIndex]\r\n )\r\n \"\r\n >\r\n </i>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'STRING_OR_INPUT'\">\r\n <ng-container\r\n *ngIf=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]?.type ===\r\n 'STRING';\r\n else inputBox\r\n \"\r\n >\r\n <span\r\n [innerHtml]=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n ?.value\r\n \"\r\n ></span>\r\n </ng-container>\r\n <ng-template #inputBox>\r\n <input\r\n placeholder=\"{{\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n ?.placeholder\r\n }}\"\r\n annaCoreShowEllipsisTextOnHover\r\n class=\"{{\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n .className\r\n }}\"\r\n (keydown)=\"\r\n changesMadeInEditableInputBox(\r\n $event,\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey],\r\n false\r\n )\r\n \"\r\n (paste)=\"\r\n changesMadeInEditableInputBox(\r\n $event,\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey],\r\n true\r\n )\r\n \"\r\n (ngModelChange)=\"\r\n editableInputValueChanged(\r\n $event,\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].objectKey\r\n )\r\n \"\r\n [ngModel]=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey].value\r\n \"\r\n [disabled]=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n .disabled\r\n \"\r\n [ngClass]=\"{\r\n 'red-border':\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n .hasError\r\n }\"\r\n />\r\n\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <i\r\n *ngIf=\"action.showIcon\"\r\n container=\"body\"\r\n [ngbTooltip]=\"tipContent\"\r\n tooltipClass=\"gt-total-row-tooltip\"\r\n placement=\"bottom\"\r\n class=\"{{ action.iconClass }}\"\r\n >\r\n <ng-template #tipContent>\r\n <div [innerHTML]=\"action?.iconTooltip\"></div\r\n ></ng-template>\r\n </i>\r\n <ng-container *ngIf=\"action.showSvgIcon\">\r\n <anna-core-icon-column\r\n class=\"pr-4\"\r\n *ngIf=\"action?.svgOrIconName\"\r\n [componentName]=\"gtGeneralConfig.component\"\r\n [dataObject]=\"ROW_DATA\"\r\n [iconToShow]=\"action.svgOrIconName\"\r\n data-html=\"true\"\r\n [ngbTooltip]=\"tipContent\"\r\n placement=\"auto\"\r\n container=\"body\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class\"\r\n >\r\n <ng-template #tipContent>\r\n <div\r\n [innerHTML]=\"action?.svgOrIconTooltipMsg\"\r\n ></div></ng-template\r\n ></anna-core-icon-column>\r\n </ng-container>\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'HTML'\">\r\n <span\r\n [innerHtml]=\"ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\"\r\n ></span>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'SINGLE_RADIO'\">\r\n <span\r\n *ngIf=\"ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\"\r\n [ngClass]=\"{\r\n 'disable-checkbox':\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].isDisabledKey]\r\n }\"\r\n class=\"mdi mdi-radiobox-marked\"\r\n (click)=\"(null)\"\r\n >\r\n </span>\r\n <span\r\n *ngIf=\"!ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\"\r\n class=\"mdi mdi-radiobox-blank\"\r\n [ngClass]=\"{\r\n 'disable-checkbox':\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].isDisabledKey]\r\n }\"\r\n (click)=\"\r\n selectOrUnselectCheckbox(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].objectKey,\r\n true\r\n )\r\n \"\r\n >\r\n </span>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'RADIO'\">\r\n <mat-radio-group\r\n *ngIf=\"ROW_DATA['RadioButtonConfig']; else showHyphen\"\r\n [ngModel]=\"ROW_DATA[subline.objectKey]\"\r\n [disabled]=\"ROW_DATA['RadioButtonConfig'][0].isDisabled\"\r\n >\r\n <ng-container\r\n *ngFor=\"\r\n let radioButton of ROW_DATA['RadioButtonConfig'];\r\n let last = last\r\n \"\r\n >\r\n <mat-radio-button\r\n value=\"{{ radioButton.value }}\"\r\n class=\"{{ radioButton.class }}\"\r\n (click)=\"\r\n radioButtonClicked(\r\n ROW_DATA,\r\n radioButton.value,\r\n ROW_DATA['RadioButtonConfig'][0].isDisabled\r\n )\r\n \"\r\n >{{ radioButton.label }}\r\n </mat-radio-button>\r\n <i\r\n class=\" {{ radioButton.iconClass }}\"\r\n (click)=\"radioButtonIconClicked(ROW_DATA)\"\r\n ></i>\r\n <i\r\n *ngIf=\"radioButton.tooltipMessage\"\r\n class=\"mi mdi-info-outline\"\r\n [ngbTooltip]=\"radioButton.tooltipMessage\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class\"\r\n ></i>\r\n <br *ngIf=\"!last\" />\r\n </ng-container>\r\n </mat-radio-group>\r\n <ng-template #showHyphen> - </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'STRING_WITH_TOOLTIP'\">\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <span class=\"action-data\"> {{ action?.dataToDisplay }}</span>\r\n <span\r\n *ngIf=\"action?.showTooltip\"\r\n [ngbTooltip]=\"stringWithTooltipTemplate\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringWithTooltipTextActionType(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].tooltipKey,\r\n tooltipWithStringRef\r\n )\r\n \"\r\n [placement]=\"action?.tooltipPosition\"\r\n container=\"body\"\r\n [class]=\"action?.tooltipIconClass\"\r\n [autoClose]=\"'outside'\"\r\n [triggers]=\"action.isManualTrigger ? 'manual' : 'hover focus'\"\r\n #tooltipWithStringRef=\"ngbTooltip\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class {{\r\n action?.tooltipInnerClass\r\n }}\"\r\n [disableTooltip]=\"action?.disableTooltip\"\r\n >\r\n </span>\r\n <span>{{ action?.dataToDisplayAfterTooltip }}</span>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'STRING_ELLIPSIS_WITH_TABLE_TOOLTIP'\">\r\n <div class=\"new-ellipsis-container\">\r\n <span\r\n annaCoreShowEllipsisTextOnHover\r\n class=\"cell-value\"\r\n >\r\n {{\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n .cellValue\r\n }}\r\n </span>\r\n <span\r\n *ngIf=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n ?.showTooltip\r\n \"\r\n class=\"tooltip-text\"\r\n [ngbTooltip]=\"tableInsideTooltip\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n triggers=\"manual\"\r\n (hidden)=\"closeTooltip()\"\r\n #info=\"ngbTooltip\"\r\n tooltipClass=\"table-inside-tooltip remove-on-scroll-class {{\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n ?.tooltipClass\r\n }}\"\r\n (mouseenter)=\"\r\n bindTheValueToTableTooltip(\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey],\r\n info\r\n )\r\n \"\r\n >\r\n {{\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n ?.tooltipHoverText\r\n }}\r\n </span>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'STRING_WITH_ELLIPSIS_AND_READ_MORE_TOOLTIP'\">\r\n <span\r\n title=\"\"\r\n *ngIf=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey].length <\r\n 25\r\n \"\r\n >\r\n {{ ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey] }}\r\n </span>\r\n\r\n <span\r\n title=\"\"\r\n [ngbTooltip]=\"statusNoteTooltip\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n [triggers]=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey].length >\r\n 100\r\n ? 'manual'\r\n : 'hover focus'\r\n \"\r\n (hidden)=\"closeTooltip()\"\r\n #info=\"ngbTooltip\"\r\n tooltipClass=\"status-note-tooltip\"\r\n (mouseenter)=\"\r\n bindTheValueToStatusNote(\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey],\r\n info\r\n )\r\n \"\r\n *ngIf=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey].length >\r\n 25\r\n \"\r\n >\r\n {{ ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey] }}\r\n </span>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'STRING_WITH_TOOLTIP_INNER_HTML'\">\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <span\r\n annaCoreShowEllipsisTextOnHover\r\n class=\"action-data\"\r\n [ngClass]=\"action?.showTooltip ? 'reduced-width-text' : ''\"\r\n >\r\n {{ action?.dataToDisplay }}</span\r\n >\r\n <span\r\n *ngIf=\"action?.showTooltip\"\r\n [ngbTooltip]=\"innerHtmlToolTipTemplate\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringWithInnerHtmlTooltipTextActionType(\r\n ROW_DATA,\r\n action,\r\n tooltipWithInnerHtmlRef,\r\n !action.isManualTrigger\r\n )\r\n \"\r\n [placement]=\"action?.tooltipPosition\"\r\n container=\"body\"\r\n [class]=\"\r\n 'innrHtml-tooltip-icon-marker ' + action?.tooltipIconClass\r\n \"\r\n [autoClose]=\"'outside'\"\r\n [triggers]=\"action.isManualTrigger ? 'manual' : 'hover focus'\"\r\n #tooltipWithInnerHtmlRef=\"ngbTooltip\"\r\n tooltipClass=\"gt-icon-innerHtml-tooltip remove-on-scroll-class {{\r\n action?.tooltipInnerClass\r\n }}\"\r\n [disableTooltip]=\"action?.disableTooltip\"\r\n >\r\n {{ action.tooltipMarkerText }}\r\n </span>\r\n <span *ngIf=\"action?.dataToDisplayAfterTooltip\">\r\n {{ action?.dataToDisplayAfterTooltip }}\r\n </span>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchDefault>\r\n <ng-container *ngIf=\"subline.objectKey !== 'description'\">\r\n <span annaCoreShowEllipsisTextOnHover>{{\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n }}</span>\r\n <!-- <i\r\n *ngIf=\"\r\n subline.objectKey === 'inventoryCode' &&\r\n ROW_DATA['isSellerGroup'] &&\r\n gtGeneralConfig.component === 'RATING'\r\n \"\r\n class=\"mi mdi-info-outline seller-tooltip\"\r\n [ngbTooltip]=\"sellerHierarchyTooltip\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n triggers=\"manual\"\r\n (hidden)=\"closeTooltip()\"\r\n #info=\"ngbTooltip\"\r\n tooltipClass=\"hierarchy-tooltip remove-on-scroll-class\"\r\n (mouseenter)=\"\r\n bindTheValueToSellerGroupTooltip(\r\n ROW_DATA.sellerGroupHierarchy,\r\n info\r\n )\r\n \" \r\n >\r\n </i>-->\r\n\r\n <i\r\n *ngIf=\"\r\n subline.objectKey === 'displayBookedAverageRating' &&\r\n gtGeneralConfig.component === 'RATING' &&\r\n ROW_DATA['showRatingAverageIcon']\r\n \"\r\n class=\"mi mdi-info-outline seller-tooltip\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n (mouseenter)=\"\r\n setIsDifference(ROW_DATA.isDifferenceLessThan25Percent)\r\n \"\r\n tooltipClass=\"posted-avg-tooltip remove-on-scroll-class\"\r\n [ngbTooltip]=\"postedRatingDifference\"\r\n >\r\n </i>\r\n\r\n <i\r\n *ngIf=\"\r\n subline.objectKey === 'displayBookedAverageImpression' &&\r\n gtGeneralConfig.component === 'RATING' &&\r\n ROW_DATA['showImpressionAverageIcon']\r\n \"\r\n class=\"mi mdi-info-outline seller-tooltip\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n (mouseenter)=\"\r\n setIsDifference(ROW_DATA.isDifferenceLessThan25Percent)\r\n \"\r\n tooltipClass=\"posted-avg-tooltip remove-on-scroll-class\"\r\n [ngbTooltip]=\"postedImpDifference\"\r\n >\r\n </i>\r\n </ng-container>\r\n <ng-container *ngIf=\"subline.objectKey === 'description'\">\r\n <p\r\n *ngIf=\"\r\n ROW_DATA.descriptionMessage ||\r\n ROW_DATA.descriptionEmailReferenceNum\r\n \"\r\n >\r\n <ng-container *ngIf=\"ROW_DATA.descriptionMessage\">\r\n {{ ROW_DATA.descriptionMessage }}\r\n <br />\r\n </ng-container>\r\n <ng-container\r\n *ngIf=\"\r\n ROW_DATA.descriptionEmailReferenceNum !== '-' &&\r\n ROW_DATA.descriptionEmailReferenceNum !== ''\r\n \"\r\n >\r\n Email Ref: {{ ROW_DATA.descriptionEmailReferenceNum }}\r\n <br />\r\n </ng-container>\r\n </p>\r\n <a\r\n href=\"{{ ROW_DATA.descriptionDetailsUrl }}\"\r\n target=\"_blank\"\r\n *ngIf=\"\r\n ROW_DATA.descriptionDetailsUrlType === 'PDF' ||\r\n ROW_DATA.descriptionDetailsUrlType === 'EXCEL'\r\n \"\r\n >\r\n <button class=\"btn viewDetailsAndEmailBtn\">Download</button>\r\n </a>\r\n <ng-container\r\n *ngIf=\"\r\n ROW_DATA.activityname.toLowerCase() === 'order onboarded'\r\n \"\r\n >\r\n <a\r\n *ngIf=\"ROW_DATA.descriptionDetailsUrlType === 'LINK'\"\r\n (click)=\"viewDetailsClicked(ROW_DATA)\"\r\n >\r\n <button class=\"btn viewDetailsAndEmailBtn order-onboarded\">\r\n View details\r\n </button>\r\n </a>\r\n </ng-container>\r\n\r\n <a\r\n href=\"{{ ROW_DATA.descriptionEmailUrl }}\"\r\n target=\"_blank\"\r\n *ngIf=\"\r\n ROW_DATA.descriptionEmailUrl !== '-' &&\r\n ROW_DATA.descriptionEmailUrl !== ''\r\n \"\r\n >\r\n <button class=\"btn viewDetailsAndEmailBtn\">View email</button>\r\n </a>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"isNoDataToDisplaySubject$ | async\">\r\n <div>\r\n {{ null }}\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </td>\r\n </ng-container>\r\n </ng-container>\r\n </table>\r\n </div>\r\n <anna-core-no-data-lib\r\n [width]=\"noDataWidth\"\r\n [marginTop]=\"marginTop\"\r\n *ngIf=\"isNoDataToDisplaySubject$ | async\"\r\n >\r\n </anna-core-no-data-lib>\r\n</div>\r\n\r\n<!-- Checkbox template -->\r\n<ng-template #filterTooltip>\r\n <anna-core-anna-column-checkbox-filter\r\n [tableData]=\"tableData\"\r\n [showFilterHeaderTabs]=\"showFilterTooltipTabs\"\r\n [isLurAndCsrComponent]=\"false\"\r\n [clonedTableData]=\"clonedTableData\"\r\n [filterTabObjects]=\"filterTabObjects\"\r\n (filterAppliedToTable)=\"filterApplied($event)\"\r\n (sortingAppliedToTable)=\"sortingApplied($event)\"\r\n (closeTooltip)=\"closeTooltip()\"\r\n >\r\n </anna-core-anna-column-checkbox-filter>\r\n</ng-template>\r\n\r\n<!-- Slider template -->\r\n<ng-template #sliderToolTip>\r\n <anna-core-anna-column-slider-filter\r\n [tableData]=\"tableData\"\r\n [showFilterHeaderTabs]=\"showFilterTooltipTabs\"\r\n [isLurAndCsrComponent]=\"false\"\r\n [clonedTableData]=\"clonedTableData\"\r\n [filterTabObjects]=\"filterTabObjects\"\r\n (filterAppliedToTable)=\"filterApplied($event)\"\r\n (sortingAppliedToTable)=\"sortingApplied($event)\"\r\n (closeTooltip)=\"closeTooltip()\"\r\n >\r\n </anna-core-anna-column-slider-filter>\r\n</ng-template>\r\n\r\n<!-- Date Picker Template -->\r\n<ng-template #datePickerTooltip>\r\n <anna-core-anna-column-date-range-filter\r\n [tableData]=\"tableData\"\r\n [showFilterHeaderTabs]=\"showFilterTooltipTabs\"\r\n [isLurAndCsrComponent]=\"false\"\r\n [clonedTableData]=\"clonedTableData\"\r\n [filterTabObjects]=\"filterTabObjects\"\r\n (filterAppliedToTable)=\"filterApplied($event)\"\r\n (sortingAppliedToTable)=\"sortingApplied($event)\"\r\n (closeTooltip)=\"closeTooltip()\"\r\n >\r\n </anna-core-anna-column-date-range-filter>\r\n</ng-template>\r\n\r\n<!-- Week Picker Template -->\r\n<ng-template #weekPickerToolTip>\r\n <!-- <div class=\"weekpicker-container\">\r\n <anna-core-week-calendar-filter-lib\r\n [week-calendar-config]=\"gtGeneralConfig.multiWeekPickerConfig\"\r\n (apply)=\"applyWeekFilter($event)\"\r\n [from-date]=\"calendarMinEnabledDate\"\r\n [to-date]=\"calendarMaxEnabledDate\"\r\n >\r\n </anna-core-week-calendar-filter-lib>\r\n </div> -->\r\n</ng-template>\r\n\r\n<!-- Time Filter Template -->\r\n<ng-template #timeFilterToolTip>\r\n <anna-core-anna-column-time-filter\r\n [tableData]=\"tableData\"\r\n [showFilterHeaderTabs]=\"showFilterTooltipTabs\"\r\n [isLurAndCsrComponent]=\"false\"\r\n [showAllTimeRangeCheckboxes]=\"showCheckboxesForTimeFilter\"\r\n [clonedTableData]=\"clonedTableData\"\r\n [filterTabObjects]=\"filterTabObjects\"\r\n (filterAppliedToTable)=\"filterApplied($event)\"\r\n (sortingAppliedToTable)=\"sortingApplied($event)\"\r\n (closeTooltip)=\"closeTooltip()\"\r\n >\r\n </anna-core-anna-column-time-filter>\r\n</ng-template>\r\n\r\n<ng-template #columnInfoTooltip>\r\n <p class=\"black-color-text white-space-nowrap\">This preemption is rejected and not marked for credit.</p>\r\n</ng-template>\r\n\r\n<ng-template #ratingInfoTooltip>\r\n <p class=\"first-row\">Shows 'Booked Rating' for Preemptions & MakeGood Offered spot(s).</p>\r\n <p class=\"second-row\">Shows 'Projected Rating' for ADU Offered spot(s).</p>\r\n</ng-template>\r\n\r\n<ng-template #impsInfoTooltip>\r\n <p class=\"first-row\">Shows 'Booked IMPS' for Preemptions & MakeGood Offered spot(s).</p>\r\n <p class=\"second-row\">Shows 'Projected IMPS' for ADU Offered spot(s).</p>\r\n</ng-template>\r\n\r\n<ng-template #spotsColumnEquivalizationMessageTooltip>\r\n <p class=\"spot-column-tooltip-message\">\r\n This consists of equivalized spots and un-equivalized Paid Programs & un-equivalized Non-spots.\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #underDeliveryTooltip>\r\n <p class=\"spot-column-tooltip-message\">\r\n Indicates the Under-delivery percentage based on booked and posted RTG/IMPS.\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #overDeliveryTooltip>\r\n <p class=\"spot-column-tooltip-message\">\r\n Indicates the Over-delivery percentage based on booked and posted RTG/IMPS.\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #rateInfoTooltip>\r\n <p class=\"first-row\">Shows 'Booked Rate' for Preemptions & MakeGood Offered spot(s).</p>\r\n <p class=\"second-row\">Shows 'Projected $ Value' for ADU Offered spot(s).</p>\r\n</ng-template>\r\n\r\n<ng-template #sellerHierarchyTooltip>\r\n <ng-container *ngIf=\"sellerGroupHierarchy.length > 0\">\r\n <section class=\"hierarchy-table-container\">\r\n <table class=\"seller-hierarchy-table\">\r\n <thead>\r\n <tr>\r\n <th>#</th>\r\n <th>Inventory Codes</th>\r\n <th>Program/Description</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let data of sellerGroupHierarchy; let tooltipIndex = index\">\r\n <td>{{ tooltipIndex + 1 }}</td>\r\n <td>\r\n <span annaCoreShowEllipsisTextOnHover>{{ data.InventoryCode }}</span>\r\n </td>\r\n <td>\r\n <span annaCoreShowEllipsisTextOnHover>{{ data.Program }}</span>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </section>\r\n </ng-container>\r\n <ng-container *ngIf=\"sellerGroupHierarchy.length === 0\">\r\n <span class=\"black-color-text\">Seller group not available for this inventory code</span>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<ng-template #tableInsideTooltip>\r\n <label class=\"ellipsis-tooltip-heading\">{{ ellipsisWithTooltipHeading }}</label>\r\n <section class=\"table-inside-tooltip-container\">\r\n <table class=\"ellipsis-tooltip-table\">\r\n <thead>\r\n <tr>\r\n <th\r\n [style.width]=\"header.width\"\r\n *ngFor=\"let header of ellipsisWithTooltipTableHeaders\"\r\n >\r\n <div>\r\n <span\r\n annaCoreShowEllipsisTextOnHover\r\n class=\"upper-label\"\r\n >{{ header.headerName }}</span\r\n >\r\n </div>\r\n </th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let data of ellipsisWithTooltipTableData\">\r\n <td *ngFor=\"let header of ellipsisWithTooltipTableHeaders\">\r\n <div>\r\n <span\r\n annaCoreShowEllipsisTextOnHover\r\n class=\"upper-label\"\r\n >{{ data[header.objectKey] }}</span\r\n >\r\n </div>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </section>\r\n</ng-template>\r\n\r\n<ng-template #lurViolationInfoTooltip>\r\n <p class=\"first-row\">The values are for the entire week.</p>\r\n</ng-template>\r\n\r\n<ng-template #postedRatingDifference>\r\n <p class=\"difference-text\">\r\n The difference between posted and booked average rating is\r\n {{ isDifferenceLessThan25Percent ? \"less\" : \"more\" }} than 25%.\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #postedImpDifference>\r\n <p class=\"difference-text\">\r\n The difference between posted and booked average impression is\r\n {{ isDifferenceLessThan25Percent ? \"less\" : \"more\" }} than 25%.\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #ongoingRevBookedColumnTooltip>\r\n <p>The Booked $ value, Spots, GRP, CPP, IMPS, CPM corresponds on the last permanent revision generated</p>\r\n</ng-template>\r\n\r\n<ng-template #completedRevBookedColumnTooltip>\r\n <p>The Booked $ value corresponds on the last permanent revision generated</p>\r\n</ng-template>\r\n\r\n<ng-template #avgBookedRate>\r\n <p>This is the booked average Rate</p>\r\n</ng-template>\r\n\r\n<ng-template #avgBookedRtg>\r\n <p>This is the booked average RTG</p>\r\n</ng-template>\r\n\r\n<ng-template #avgBookedImps>\r\n <p>This is the booked average IMP(\u2019000)</p>\r\n</ng-template>\r\n\r\n<ng-template #projectedImpsRtg>\r\n <p>\r\n All projections are derived from the sum of actual posted information until the last posted date and estimates\r\n for the remaining selected period.\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #automationTooltip>\r\n <p>\r\n Please get the order business rules approved to automate the orders. Only for the automated orders, any approved\r\n MGs, ADUs, or credited spots on ANNA will be fed into the traffic system i.e. ANNA revisions.\r\n <!-- removed below line as part of enhancmennt in 14.0 releas -->\r\n <!-- Additionally, ANNA will only enter buyer revisions into traffic for the selected\r\n Medialine/WOC orders. -->\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #rebateImpact>\r\n <p>Rebate impact value is for the originally ordered spot length and is not equivalized.</p>\r\n</ng-template>\r\n\r\n<ng-template #lurViolationTotalRowToolTip>\r\n <ul>\r\n <li>\r\n <strong>POLITICAL RATE VIOLATIONS:</strong>\r\n Violations flagged when non-political spots are booked at a rate lower than the minimum booked rate for\r\n political candidates for the same week, Inventory Code and Revenue Class.\r\n </li>\r\n <li>\r\n <strong>CANDIDATE TO CANDIDATE VIOLATION:</strong>\r\n Violations flagged when political spots are booked at different rates to other political spots for the same\r\n week, Inventory Code and Revenue Class.\r\n </li>\r\n </ul>\r\n</ng-template>\r\n\r\n<ng-template #circularProgressBar>\r\n <circle-progress\r\n [percent]=\"percentDone\"\r\n [radius]=\"5\"\r\n [showTitle]=\"false\"\r\n [showUnits]=\"false\"\r\n [showSubtitle]=\"false\"\r\n [outerStrokeWidth]=\"3\"\r\n [innerStrokeWidth]=\"3\"\r\n [space]=\"-3\"\r\n [outerStrokeColor]=\"'#268bff'\"\r\n [innerStrokeColor]=\"'#d5d5d5'\"\r\n [animationDuration]=\"10\"\r\n ></circle-progress>\r\n</ng-template>\r\n\r\n<ng-template #userLoggedInDetails>\r\n <div class=\"tooltip-div-container\">\r\n <ng-container *ngFor=\"let data of textActionTooltip\">\r\n <span *ngIf=\"data.key !== 'read'\">\r\n {{ data.key }} <b>{{ data.value }}</b>\r\n </span>\r\n <span *ngIf=\"data.key === 'read'\">\r\n {{ data.value }}\r\n </span>\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #markAsReadTip>\r\n <div class=\"notification-tooltip-div-container\">\r\n <ng-container *ngFor=\"let data of textActionTooltip\">\r\n {{ data.value }}\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #textActionTooltipTemplate>\r\n <ng-container *ngFor=\"let data of textActionTooltip\">\r\n {{ data.key }} <b>{{ data.value }}</b>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<ng-template #programChangeTooltipTemplate>\r\n <div class=\"program-schedule-tooltip\">\r\n <h2>Program Change</h2>\r\n <p class=\"previous\">Previous:</p>\r\n <b annaCoreShowEllipsisTextOnHover>{{ textActionTooltip.OldProgramName }}</b>\r\n\r\n <p class=\"updated\">Updated:</p>\r\n <b\r\n *ngIf=\"textActionTooltip.NewProgramNames.length === 1\"\r\n annaCoreShowEllipsisTextOnHover\r\n >{{ textActionTooltip.NewProgramNames[0] }}</b\r\n >\r\n <ul *ngIf=\"textActionTooltip.NewProgramNames.length > 1\">\r\n <li *ngFor=\"let item of textActionTooltip.NewProgramNames\">\r\n <label class=\"dot\"></label>\r\n <span annaCoreShowEllipsisTextOnHover>{{ item }}</span>\r\n </li>\r\n </ul>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #showOrHideToggleForTotalRowTooltip>\r\n <div>\r\n {{ showOrHideToggleForTotalRow && !gtGeneralConfig.totalRow ? \"Show Total Row\" : \"Hide Total Row\" }}\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #tooltipContainingTableTemplate>\r\n <div\r\n *ngIf=\"tooltipContainingTable\"\r\n [innerHTML]=\"tooltipContainingTable.innerHtml\"\r\n class=\"notification-tooltip-div-container\"\r\n >\r\n <!-- <ul>\r\n <li *ngFor=\"let headerMsg of tooltipContainingTable.tableHeaderMsg\">\r\n <b> {{headerMsg}} </b>\r\n </li>\r\n </ul>\r\n\r\n <table class=\"tooltip-table\">\r\n <thead>\r\n <tr>\r\n <th *ngFor=\"let header of tooltipContainingTable.tooltipTableHeader\">\r\n {{ header}}\r\n </th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let rows of tooltipContainingTable.tooltipTableBody\">\r\n <td *ngFor=\"let data of rows\">\r\n {{ data }}\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n\r\n <ul>\r\n <li style=\"margin-top:10px; padding:0\" *ngFor=\"let footerMsg of tooltipContainingTable.tableFooterMsg\">\r\n {{ footerMsg }} \r\n </li>\r\n </ul> -->\r\n </div>\r\n</ng-template>\r\n<!-- <ng-template #textActionTooltipTemplate>\r\n <ng-container *ngFor=\"let data of textActionTooltip\">\r\n {{ data.key }} <b> {{data.value}}</b>\r\n </ng-container>\r\n</ng-template> -->\r\n\r\n<ng-template #statusNoteTooltip>\r\n <div>\r\n <span class=\"status-note-tooltip\">{{ statusNoteForTooltip }}</span>\r\n <span *ngIf=\"statusNoteForPopup.length > 100\"\r\n >...<a\r\n class=\"view-more-comments\"\r\n (click)=\"showEntireStatusNote()\"\r\n >View more</a\r\n ></span\r\n >\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #innerHtmlToolTipTemplate>\r\n <div [innerHtml]=\"toolTipInnerHtmlData\"></div>\r\n</ng-template>\r\n", styles: ["::ng-deep .show-or-hide-toggle-tooltip .tooltip-inner{max-width:229px}.show-or-hide-toggle-btn.shift-toggle-top-on-total-row-click{transform:translate(calc(var(--app-left-space-show-hide-total-row-icon) - 12px),32px)}.show-or-hide-toggle-btn{width:16px;height:16px;padding:0;margin:0;border-radius:50%;position:absolute;transform:translate(calc(var(--app-left-space-show-hide-total-row-icon) - 12px),52px);z-index:999;background-color:#d9d9d9}.show-or-hide-toggle-btn i.mdi.mdi-menu-swap{font-size:16px;display:flex}#generic-table-conatiner.table-with-show-hide-total-row-toggle .total-row td:nth-of-type(2){padding-left:16px!important}::ng-deep .gt-icon-innerHtml-tooltip .tooltip-inner{max-width:600px;width:min-content}::ng-deep .gt-icon-innerHtml-tooltip .tooltip-inner>div{width:max-content}::ng-deep .generic-innerHtml-table-heading{margin-bottom:2px;font-family:Roboto;font-size:.6875rem;font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#4a4a4a}::ng-deep .generic-innerHtml-table-container{max-height:8.75rem;width:min-content;overflow:auto}::ng-deep .generic-innerHtml-table-container table{table-layout:fixed;width:100%}::ng-deep .generic-innerHtml-table-container table thead tr th{background:#e9e9e9;height:22px;padding:3px 8px;position:sticky;top:0;cursor:default;font-family:Roboto;font-size:.6875rem;font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#4a4a4a;margin-bottom:0;box-shadow:inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4,inset -1px 0 #d4d4d4}::ng-deep .generic-innerHtml-table-container table thead tr th:first-of-type{box-shadow:inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4,inset -1px 0 #d4d4d4!important;border-left:1px solid #d4d4d4}::ng-deep .generic-innerHtml-table-container table tbody tr td{border:1px solid #d4d4d4;padding:3px 8px;width:100%;color:#000;font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:0px}::ng-deep .generic-innerHtml-table-container table tbody tr:first-of-type td{border-top:none}::ng-deep .generic-innerHtml-table-container::-webkit-scrollbar-track{margin-top:22px!important}.sort-btn{background:#fff;border:none;border-right:1px solid #1b88ff;text-decoration:underline;font-family:Roboto;font-size:var(--sort-label-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:1.07;letter-spacing:normal;color:#1b88ff;cursor:pointer;flex:1;text-align:center}.sort-btn:last-of-type{border-right:none}.sort-btn.active{color:#202b47;text-decoration:none}p.sort-container{margin-top:8px;padding-bottom:8px;border-bottom:1px solid #e6e6e6;margin-bottom:0;display:flex}::ng-deep .tooltip-inner{max-height:22rem;background-color:#fff;border:1px solid white;border-radius:5px;box-shadow:0 2px 2px #0000003d,0 0 2px #0000001f;max-width:251px;width:100%;padding:0!important}::ng-deep .tooltip-inner div.radio-container{flex-wrap:wrap}::ng-deep .md-drppicker{box-shadow:unset!important}::ng-deep .available{color:#999}::ng-deep .bs-tooltip-bottom .arrow:before{border-bottom-color:#fff!important}::ng-deep .bs-tooltip-left .arrow:before{border-left-color:#fff!important}::ng-deep .tooltip.show{opacity:1}.input{text-align:left;margin:5px 10px 5px 5px;display:flex;align-items:center;width:230px;white-space:nowrap}.data{color:#000;font-weight:700;margin-left:5px;margin-right:5px}span.data{display:inline-block;text-overflow:ellipsis;white-space:pre;width:100%;overflow:hidden}.check-box{font-size:14px;cursor:pointer;position:relative;top:-1px}span.mdi-filter.active{color:#000;opacity:1!important;pointer-events:all!important}p{margin-bottom:0;line-height:initial}span.mdi-filter{color:#cbcbcb}::ng-deep .ngx-slider-pointer{top:-5px!important;width:12px!important;height:12px!important;background:#bdbdbd!important;border:1px solid #ffffff!important;box-shadow:0 1px 3px #0000004d!important;border-radius:16px!important}input:focus{outline:none}input::placeholder{color:#c8c8c8}.cancel-btn{background:#c7e1ff;color:#268bff}.apply-btn{background:#268bff;color:#fff;margin-left:.3125rem}div.radio-container{display:flex;white-space:nowrap;justify-content:space-between;background-color:#f4f4f4;border-radius:.125rem;margin:.4375rem .4375rem .25rem}div.radio-container div{flex:1;width:50%}div.radio-container div.full-width{width:100%}div.radio-container input{position:relative;top:.125rem;margin-right:.25rem}div.radio-container label{font-family:Roboto;font-size:.875rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:1.29;letter-spacing:0;color:#4a4a4a;margin:0;padding-left:.125rem}div.radio-container label:first-of-type{margin-right:.188rem}div.radio-container input[type=radio]{appearance:none;display:inline-block;width:.9375rem;height:.9375rem;padding:.125rem;background-clip:content-box;border:.125rem solid #268bff;background-color:transparent;border-radius:50%}div.radio-container input[type=radio]:checked{background-color:#268bff}.checkbox-filter-buttons-container{padding:0 8px!important}.buttons-container{display:flex;margin:0px auto .4375rem;justify-content:center;padding:0 12px}.buttons-container .button{padding:0 10px;width:100%;margin:8px 0 0;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.buttons-container button:last-of-type{background-color:#268bff;color:#fff;margin-left:.5rem}.buttons-container button.disabled{background:#bdbdbd;opacity:.5;color:#4a4a4a}.button{display:inline-block;margin:8px 4px 0 8px;padding:0 16px;border-radius:4px;text-align:center;outline:none;font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:1.67;letter-spacing:normal;border:none;color:#268bff;background-color:#e5f1ff}.search-box{display:flex;align-items:center;color:#c8c8c8;border:1px solid #e6e6e6;border-radius:.125rem;margin:.25rem .4375rem .188rem;height:1.5rem;padding:.188rem 8px .188rem .5rem}.search-box .search-bar-close{margin-left:auto;float:right}.search-icon{margin:0 4px 0 0;font-size:var(--filter-search-icon-fs);color:#9b9b9b}.filter-icon{justify-content:right;margin-left:auto;color:#d4d4d4;color:#a1a1a1;font-size:16px;cursor:pointer}.data{margin:0 13px 0 8px;font-family:Roboto;font-size:var(--filter-checkbox-label-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:1.86;letter-spacing:\"\";color:#4a4a4a}.search-input{font-family:Roboto;font-size:var(--filter-search-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;color:#c8c8c8;width:calc(100% - 38px);margin:1px 0 1px 2px;border:none;padding:0}.check-box{color:#268bff}.tooltip-data-container{overflow-y:scroll;max-height:8rem}.searchbar{width:100%;display:flex;justify-content:flex-end;align-items:flex-end}.clear-button{opacity:.5;font-family:Roboto;font-size:.9375rem;font-weight:500;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;text-decoration:underline;border:none;background-color:#fff;color:#4a4a4a;margin-left:.625rem;padding:0}.clear-button:focus{outline:none;box-shadow:none}.unchecked{color:#268bff}cdk-virtual-scroll-viewport.dropdown-data-container{max-height:12.3rem;width:100%;overflow-y:auto;overflow-x:hidden}cdk-virtual-scroll-viewport.dropdown-data-container p.input{margin-left:0}cdk-virtual-scroll-viewport.dropdown-data-container p.input span.mi{padding-left:.4375rem}cdk-virtual-scroll-viewport.dropdown-data-container p.input:hover{background-color:#ebebeb;cursor:pointer}cdk-virtual-scroll-viewport.dropdown-data-container::-webkit-scrollbar{width:.188rem}cdk-virtual-scroll-viewport.dropdown-data-container::-webkit-scrollbar-thumb{color:#d3d3d3;background:#d3d3d3}section.min-maxContainer{display:flex;justify-content:center;margin-bottom:-.125rem;margin-top:.5rem;width:100%}section.min-maxContainer input{width:30%;height:1.5rem;border:1px solid lightgray;color:gray}section.min-maxContainer span{display:inline-block;padding-left:.5rem;padding-right:.5rem;position:relative;top:.3125rem;color:#666;font-size:var(--page-message-content-fs)}.time-container{width:100%;display:flex;padding:0 .75rem}.time-container input.form-control:disabled{background-color:#fff;width:2.813rem}.time-container input.numberInput:focus{box-shadow:none;border-color:#c2cfd6}.time-container .dot{color:#cbcbcb;position:relative;left:-7px;font-size:17px}.time-container div.arrow-container{flex-direction:column;display:flex;margin-top:.375rem;width:9px;height:18px;margin-right:.875rem}.time-container div.arrow-container i{color:#000;cursor:pointer;max-height:9px;font-size:20px;width:10px}.time-container div.arrow-container i:before{width:0;height:0;pointer-events:none;position:relative;left:-9px;top:-11px}.mdi-filter{cursor:pointer}.time-label-container{display:flex;justify-content:flex-start}.time-label-container label{margin-bottom:0;color:#4a4a4a;margin-top:.125rem;margin-left:.75rem;font-weight:700;font-size:var(--dropdown-label-fs)}.time-heading{color:#000;font-size:.8125rem;text-align:left;padding-left:.625rem;margin-top:.625rem;font-weight:700}.column-clear-all{width:94%;text-align:center;border:none;font-size:var(--filter-clear-select-btn-fs);background:none;text-decoration:underline;color:#268bff}.checkbox-container{display:flex;padding-inline:.625rem}.checkbox-container .data{text-align:left}.checkbox-container:first-of-type{margin-top:.625rem;font-weight:500}.column-clear-all{width:94%;text-align:center;border:none;background:none;text-decoration:underline;color:#268bff}.column-clear-all:disabled{opacity:.5;color:#4a4a4a;font-weight:400}.column-clear-all.align-center{text-align:center}span.mdi-filter-variant.disabled{pointer-events:none;opacity:.5}.datepicker-container{width:100%}span.mdi-filter-variant{color:#cbcbcb;cursor:pointer;font-size:.875rem}span.mdi-filter-variant.active{color:#000}p.filter-tab{font-family:Roboto;font-size:var(--filter-tab-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:1.29;letter-spacing:normal;color:#1b88ff;border-radius:5px;background-color:#f4f4f4;padding-inline:8px;cursor:pointer;overflow:hidden;text-align:center;text-overflow:ellipsis;padding-block:3px}p.filter-tab.active{color:#fff;background-color:#1b88ff}button.filter-text-btn{background:#fff;text-decoration:underline;font-family:Roboto;font-size:var(--filter-clear-select-btn-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;border:none;color:#268bff;margin-inline:4px;margin-top:2px}button.filter-text-btn:disabled{color:#b1b1b1;cursor:not-allowed}::ng-deep .non-edit-datepicker-tooltip .tooltip-inner{max-width:310px!important;width:283px!important;overflow-y:initial!important;padding:0!important}input.slider-text::-webkit-outer-spin-button,input.slider-text::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input.slider-text{-moz-appearance:textfield}input.slider-text.red-border{border:1px solid #f44336!important}::ng-deep .checkbox-sort p.sort-container{margin-top:8px!important;padding-bottom:8px!important}i.mdi-close{cursor:pointer}i.mdi-close.disable-close-icon{pointer-events:none;cursor:not-allowed}input.error-border{border:1px solid #f44336!important}::ng-deep .non-edit-checkbox-tooltip .tooltip-inner{width:238px!important;padding:0!important}::ng-deep .non-edit-slider-tooltip .tooltip-inner{width:238px!important;padding:0!important}::ng-deep .non-edit-time-tooltip .tooltip-inner{width:250px!important;padding:0!important}::ng-deep .non-edit-time-tooltip.bs-tooltip-start{padding:.4rem}::ng-deep .non-edit-time-tooltip.bs-tooltip-start .tooltip-arrow{right:0;top:5px!important;width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}::ng-deep .non-edit-time-tooltip.bs-tooltip-start .tooltip-arrow:before{border-left-color:#fff;left:-1px;border-width:calc(var(--bs-tooltip-arrow-width) * .5) 0 calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height)}::ng-deep .no-bottom-border p.sort-container{border-bottom:none!important}::ng-deep .ngx-slider-pointer-min:after{display:none}::ng-deep .ngx-slider-pointer-max:after{display:none}::ng-deep .ngx-slider span.ngx-slider-pointer{width:12px;height:12px;top:-5px;background-color:#bdbdbd}::ng-deep .ngx-slider span.ngx-slider-bar{height:3px;background:#ededed}::ng-deep .ngx-slider span.ngx-slider-selection{background:#bdbdbd}::ng-deep .ngx-slider span.ngx-slider-bubble{bottom:-22px;font-size:12px;color:#333}::ng-deep .show-min.ngx-slider span.ngx-slider-model-value{background:#fff;box-shadow:0 6px 10px #0000004d,0 2px 2px #0003}::ng-deep .show-max.ngx-slider span.ngx-slider-model-high{background:#fff;box-shadow:none}::ng-deep .ngx-slider span.ngx-slider-combined{background:#fff;box-shadow:0 6px 10px #0000004d,0 2px 2px #0003}::ng-deep .ngx-slider{top:10px!important;margin:5px 0 2px!important}::ng-deep .ngx-slider-animate{top:0!important}.sidebar-slider{margin-bottom:35px!important;margin-left:5px;margin-right:5px}.slider-placeholder{height:14px}::ng-deep .filter-calendar select.form-select:focus{border-color:#c2cfd6;box-shadow:none}::ng-deep .filter-calendar select.form-select{background-color:#fff}.no-data-case{padding-left:.4375rem!important;font-size:var(--filter-checkbox-label-fs)!important;margin-top:10px!important;cursor:pointer}.virtual-scroll-div{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.red-text-totol-row{color:#f44336!important}.check-mark,.unread-mark{cursor:pointer}.on-hover:hover .unread-mark,.notificationHover .check-mark{opacity:0;cursor:pointer}.on-hover:hover .check-mark{opacity:1;cursor:pointer}table{margin-bottom:0;table-layout:fixed;width:100%}:host ::ng-deep .gt .header-row th{border:none;background:#ededed;padding:2px 8px;line-height:normal;position:sticky;position:-webkit-sticky;top:0;box-shadow:inset 1px 0 #d4d4d4,inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4}:host ::ng-deep .gt .header-row th .upper-label{font-family:Roboto;font-size:var(--table-header-fs);font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#4a4a4a;margin-bottom:0}:host ::ng-deep .gt .header-row th .lower-label{font-family:Roboto;font-size:var(--table-header-fs);font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#a7a7a7;margin-bottom:0}:host ::ng-deep .gt .header-row th div.row{display:flex;flex-wrap:nowrap;justify-content:space-between;align-items:center;width:max-content}:host ::ng-deep .gt .header-row th div.sort-filter-container{display:flex;flex-wrap:nowrap;align-items:center;margin-left:.25rem;margin-right:auto}:host ::ng-deep .gt .header-row th span.mdi-filter-variant{font-size:13px!important;top:-1px!important;position:relative}:host ::ng-deep .gt .header-row th:first-of-type{box-shadow:inset 1px 0 #d4d4d4,inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4}:host ::ng-deep .gt .header-row th:last-of-type{box-shadow:inset -1px 0 #d4d4d4,inset 1px 0 #d4d4d4,inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4}:host ::ng-deep .gt .header-row br{display:block;content:\"\";margin-top:-8px}:host ::ng-deep .gt tbody tr td{padding:2px 8px;border:none;box-shadow:inset 1px 0 #d4d4d4,inset 0 -1px #d4d4d4}:host ::ng-deep .gt tbody tr td div:nth-child(1){color:#000;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-family:Roboto;font-size:var(--table-body-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:0px}:host ::ng-deep .gt tbody tr td div:nth-child(2){color:#a7a7a7;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-family:Roboto;font-size:var(--table-body-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:0px}:host ::ng-deep .gt tbody tr td:first-of-type{box-shadow:inset 1px 0 #d4d4d4,inset 0 -1px #d4d4d4}:host ::ng-deep .gt tbody tr td:last-of-type{box-shadow:inset 1px 0 #d4d4d4,inset -1px 0 #d4d4d4,inset 0 -1px #d4d4d4}:host ::ng-deep .gt tbody tr br{display:block;content:\"\";margin-top:-8px}:host ::ng-deep .gt .custom-column-checkbox-checked,:host ::ng-deep .gt .custom-column-checkbox-unchecked{font-size:.875rem;cursor:pointer}:host ::ng-deep .gt .custom-column-checkbox-checked{color:#268bff}:host ::ng-deep .gt .custom-column-checkbox-unchecked{color:#4a4a4a}:host ::ng-deep .gt .cell-value{width:calc(100% - 24px)!important;display:inline-block;width:90%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host ::ng-deep .gt .tooltip-text{color:#268bff;cursor:pointer;float:right}:host ::ng-deep .bottom-border .gt tbody tr:last-of-type td{box-shadow:inset 1px 0 #d4d4d4}:host ::ng-deep .bottom-border .gt tbody tr:last-of-type td:first-of-type{box-shadow:inset 1px 0 #d4d4d4}:host ::ng-deep .bottom-border .gt tbody tr:last-of-type td:last-of-type{box-shadow:inset 1px 0 #d4d4d4,inset -1px 0 #d4d4d4}.table-container{overflow-x:auto;overflow-y:auto}.rowSelectCheckbox,#selectAllRowsCheckbox{cursor:pointer}.disable-checkbox{color:#dedede!important;pointer-events:none!important}.mdi-warning{color:#f3c639;font-size:16px;line-height:28px}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{opacity:1}.redcolor-status{color:#c62a2a}#no-filter-space{width:.875rem}::ng-deep .mat-button-toggle-appearance-standard .mat-button-toggle-label-content{width:2.625rem;padding:0 .625rem}input.numberInput{margin-right:-.8125rem;padding:0 0 0 .625rem;height:1.875rem}::ng-deep .mat-button-toggle-checked{background-color:#268bff!important;color:#fff!important}::ng-deep .mat-button-toggle-group-appearance-standard{border-radius:0}.hidden{display:none}.no-data-div{margin-top:2.5px}.no-data-div label{margin:0;width:auto;font-weight:500;background-color:#d3d3d3;padding:.3125rem 1.125rem;border-radius:.25rem}.column-values:nth-of-type(2){color:#a7a7a7!important}.custom-column-checkbox-checked,.custom-column-checkbox-unchecked{font-size:.875rem;cursor:pointer}.custom-column-checkbox-checked{color:#268bff}.custom-column-checkbox-unchecked{color:#4a4a4a}.time-filter-checkboxes>div>p{color:#151b1e}::ng-deep .margin-bottom-zero .mat-radio-label{margin-bottom:0}:host ::ng-deep mat-radio-group br{margin-top:0!important}:host ::ng-deep mat-radio-group mat-radio-button .mdc-radio__background{width:var(--mat-radio-size);height:var(--mat-radio-size)}:host ::ng-deep mat-radio-group mat-radio-button .mdc-radio__inner-circle{border-width:calc(var(--mat-radio-size) / 2)}:host ::ng-deep mat-radio-group mat-radio-button .mdc-form-field>label{margin:0 0 0 4px;padding:0;top:-2px;position:relative;font-size:var(--radio-button-label-fs)}:host ::ng-deep mat-radio-group mat-radio-button .mdc-radio--disabled+label{color:var(--primary-text-color-dark)!important}:host ::ng-deep mat-radio-group mat-radio-button.mat-mdc-radio-button .mdc-form-field .mdc-radio{padding:0}:host ::ng-deep mat-radio-group mat-radio-button .mdc-form-field>label{left:-94px;font-size:12px;color:#4a4a4a;position:relative}:host ::ng-deep mat-radio-group mat-radio-button .mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:enabled:checked+.mdc-radio__background .mdc-radio__outer-circle{border-color:var(--mdc-radio-selected-icon-color)}::ng-deep .reject.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:#ff0}::ng-deep .reject.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-inner-circle{background-color:#ff0}::ng-deep .resubmit.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:#ff0}::ng-deep .resubmit.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-inner-circle{background-color:#ff0}::ng-deep .noAction.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:green}::ng-deep .noAction.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-inner-circle{background-color:green}::ng-deep .approve.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:green}::ng-deep .approve.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-inner-circle{background-color:green}::ng-deep .credit.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:red}::ng-deep .credit.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-inner-circle{background-color:red}::ng-deep .mat-radio-button.mat-radio-disabled .mat-radio-outer-circle{border-color:#00000061!important}::ng-deep .mat-radio-button.mat-radio-disabled.mat-radio-checked .mat-radio-inner-circle{background-color:#00000061!important}::ng-deep tr.white-background-row{background:#fff}::ng-deep tr.gray-background-row{background:#e9e9e980!important}.remarks-tooltip,.mdi-information,.mdi-information-outline,.seller-tooltip{font-size:.875rem;color:#268bff;position:relative;top:.1875rem;cursor:pointer}.seller-tooltip{top:-1px;float:right}::ng-deep .remarks-info-tooltip .tooltip-inner{max-width:19.25rem!important}.rating-icon,.lur-violation-icon{color:#268bff;cursor:pointer;position:relative;left:-2px}::ng-deep .rating-info-tooltip .tooltip-inner{max-width:800px!important}.spots-info-icon{color:#268bff;cursor:pointer;margin:1px 2px 0 -14px}.spots-info-icon-ol{color:#268bff;cursor:pointer;margin:1px 4px 0 -2px}::ng-deep .spot-info-tooltip .tooltip-inner{position:relative;max-width:220px!important;background:#fff;word-break:break-word;display:flex}::ng-deep .spot-info-tooltip-for-orderlisting-table .tooltip-inner{max-width:220px!important;background:#fff;word-break:break-word;display:flex}p.first-row{padding:.5rem .5rem 0;color:#000;white-space:nowrap;text-align:left}p.second-row{padding:2px .5rem .5rem;color:#000;white-space:nowrap;text-align:left}::ng-deep .gt-total-row-tooltip{opacity:1!important}::ng-deep .gt-total-row-tooltip .tooltip-inner{color:#000;box-shadow:0 6px 10px #0000004d,0 2px 2px #0003;background-color:#fff;padding:4px!important;width:100%;border-radius:2px!important}::ng-deep .gt-total-row-tooltip .arrow:before{border-top-color:#fff!important}.info-label{margin-left:4px;color:#268bff;vertical-align:text-top}::ng-deep .hierarchy-tooltip{max-width:-moz-fit-content;max-width:fit-content;width:310px!important}::ng-deep .hierarchy-tooltip .tooltip-inner{padding:4px!important;max-width:22.75rem;max-height:11.25rem}table.seller-hierarchy-table{table-layout:fixed}table.seller-hierarchy-table tr th{font-family:Roboto;font-size:.75rem;font-weight:500;font-stretch:normal;font-style:normal;line-height:1.67;letter-spacing:normal;color:#5e5e5e;white-space:nowrap;background:#ededed;position:sticky;box-shadow:inset 0 1px #d4d4d4;top:0;z-index:1}table.seller-hierarchy-table tr th:nth-child(1){width:20px}table.seller-hierarchy-table tr th:first-of-type,table.seller-hierarchy-table tr td:first-of-type{width:30px;border-left:1px solid #d4d4d4}table.seller-hierarchy-table tr th:last-of-type,table.seller-hierarchy-table tr td:last-of-type{border-right:1px solid #d4d4d4;width:7.875rem!important}table.seller-hierarchy-table tr th:nth-of-type(2){width:7.75rem!important}table.seller-hierarchy-table tr td{font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;color:#4a4a4a;box-shadow:none!important;border-top:1px solid #d4d4d4;border-bottom:1px solid #d4d4d4}table.seller-hierarchy-table tr td:nth-of-type(2),table.seller-hierarchy-table tr td:nth-of-type(3){padding-top:.25rem}table.seller-hierarchy-table tr td span{display:inline-block;width:90%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative}section.hierarchy-table-container,section.table-inside-tooltip-container{max-height:8.75rem;overflow:auto}section.hierarchy-table-container::-webkit-scrollbar-track{margin-top:1.5rem}section.table-inside-tooltip-container::-webkit-scrollbar-track{margin-top:1.1875rem}.difference-text{padding:.5rem;color:#000;text-align:left}::ng-deep .posted-avg-tooltip .tooltip-inner{width:13.8125rem!important}::ng-deep .drrBooked-info-tooltip{transform:translate(26px,6px)}::ng-deep .drrBooked-info-tooltip .tooltip-inner{max-width:307px!important;width:242px!important;background:#fff;word-break:break-word;display:flex;padding:4px!important;text-align:left}::ng-deep .drrBooked-info-tooltip .tooltip-inner p{color:#000}::ng-deep .drrBooked-info-tooltip .arrow:before{border-right-color:#fff!important}.clickable-data{cursor:pointer;color:#268bff!important;display:flex!important;align-items:center}.clickable-data .spot-details-download-icons{font-size:12px}.disabled-clickable-data{pointer-events:none;color:#d4d4d4!important}.spot-column-tooltip-message{color:#000;width:max-content;text-align:left}div.spinner-for-button-directive{position:relative;left:-1px}.clickable-row table tr.mat-row td{cursor:pointer!important}.tooltip-div-container{text-align:left!important;padding:8px 4px;color:#4a4a4a!important;font-size:11px!important;font-family:Roboto;font-size:11px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}.notification-tooltip-div-container{text-align:left!important;padding:6px 8px;color:#4a4a4a!important;font-size:12px!important;font-family:Roboto;font-size:12px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}.mdi-information,.mdi-information-outline{left:3px;top:1px}.mdi-information-outline{position:static}::ng-deep .team-user-tooltip.bs-tooltip-top .arrow:before{border-top:6px solid white}::ng-deep .team-user-tooltip.bs-tooltip-left .arrow:before{border-left:6px solid white}::ng-deep .team-user-tooltip.bs-tooltip-bottom .arrow:before{border-bottom:6px solid white}::ng-deep .team-user-tooltip.bs-tooltip-right .arrow:before{border-right:5px solid white}::ng-deep .team-user-tooltip .tooltip-inner{opacity:1!important;width:-moz-fit-content!important;width:fit-content!important;max-width:520px;border-radius:2px;padding:0 4px!important}::ng-deep .team-user-tooltip .tooltip-inner .tooltip-inner{color:#4a4a4a;text-align:left;padding:8px!important;border-radius:2px;background:#fff!important;box-shadow:0 6px 10px #0000004d,0 2px 2px #0003;font-family:Roboto;font-size:var(--page-message-content-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}::ng-deep .team-user-tooltip .tooltip-inner.bs-tooltip-top .arrow:before{border-top:6px solid white}::ng-deep .team-user-tooltip .tooltip-inner.bs-tooltip-left .arrow:before{border-left:6px solid white}::ng-deep .team-user-tooltip .tooltip-inner.bs-tooltip-bottom .arrow:before{border-bottom:6px solid white}::ng-deep .team-user-tooltip .tooltip-inner.bs-tooltip-right .arrow:before{border-right:5px solid white}::ng-deep .gt-icon-column-tooltip{opacity:1!important}::ng-deep .gt-icon-column-tooltip .tooltip-inner{color:#4a4a4a;text-align:left;padding:8px!important;border-radius:2px;background:#fff!important;box-shadow:0 6px 10px #0000004d,0 2px 2px #0003;font-family:Roboto;font-size:var(--page-message-content-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}::ng-deep .gt-icon-column-tooltip.bs-tooltip-top .arrow:before{border-top:6px solid white}::ng-deep .gt-icon-column-tooltip.bs-tooltip-left .arrow:before{border-left:6px solid white}::ng-deep .gt-icon-column-tooltip.bs-tooltip-bottom .arrow:before{border-bottom:6px solid white}::ng-deep .gt-icon-column-tooltip.bs-tooltip-right .arrow:before{border-right:5px solid white}::ng-deep .gt-icon-column-tooltip .tooltip-inner{width:100%}::ng-deep .tooltip-containing-table{opacity:1!important}::ng-deep .tooltip-containing-table .tooltip-inner{color:#4a4a4a;text-align:left;padding:8px!important;border-radius:2px;background:#fff!important;box-shadow:0 6px 10px #0000004d,0 2px 2px #0003;font-family:Roboto;font-size:var(--page-message-content-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}::ng-deep .tooltip-containing-table.bs-tooltip-top .arrow:before{border-top:6px solid white}::ng-deep .tooltip-containing-table.bs-tooltip-left .arrow:before{border-left:6px solid white}::ng-deep .tooltip-containing-table.bs-tooltip-bottom .arrow:before{border-bottom:6px solid white}::ng-deep .tooltip-containing-table.bs-tooltip-right .arrow:before{border-right:5px solid white}::ng-deep .tooltip-containing-table li{margin:0!important;padding:0!important}::ng-deep .tooltip-containing-table ul{margin:0!important;padding-left:8px!important}::ng-deep .tooltip-containing-table ul.pl-16{padding-left:16px!important}::ng-deep .tooltip-containing-table .tooltip-inner{width:100%;max-width:230px}table.tooltip-table{table-layout:fixed;margin:4px 0 0;width:100%}table.tooltip-table th,table.tooltip-table td{padding:2px 8px;line-height:normal}table.tooltip-table thead tr th:first-of-type{box-shadow:inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4,inset -1px 0 #d4d4d4,inset 1px 0 #d4d4d4!important;border:none}table.tooltip-table thead tr th{color:#5e5e5e!important;font-size:12px;font-weight:500;font-family:Roboto;line-height:1.67;background-color:#ededed;border-top:none!important;border-bottom:none!important;outline:none!important;box-shadow:inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4,inset -1px 0 #d4d4d4}table.tooltip-table thead tr th div.row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center}table.tooltip-table tbody tr td{color:#5e5e5e!important;font-size:12px;font-weight:500;font-family:Roboto;line-height:1.67}table.tooltip-table tbody tr td:first-of-type{box-shadow:inset 1px 0 #d4d4d4,inset -1px 0 #d4d4d4,inset 0 -1px #d4d4d4;border:none}table.tooltip-table tbody tr td:nth-of-type(n+2){box-shadow:inset -1px 0 #d4d4d4,inset 0 -1px #d4d4d4;border:none}.bottom-border{border-bottom:1px solid #d4d4d4!important}i.disabled{pointer-events:none!important}.black-color-text{color:#000}.white-space-nowrap{white-space:nowrap}.ellipsis-tooltip-heading{margin-bottom:2px;font-family:Roboto;font-size:.6875rem;font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#4a4a4a}table.ellipsis-tooltip-table{table-layout:fixed;width:100%}table.ellipsis-tooltip-table thead th:first-of-type{box-shadow:inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4,inset -1px 0 #d4d4d4,inset 1px 0 #d4d4d4!important}table.ellipsis-tooltip-table thead th{background:#e9e9e9;padding:3px 8px;line-height:normal;position:sticky;top:0;cursor:default;box-shadow:inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4,inset -1px 0 #d4d4d4}table.ellipsis-tooltip-table thead th .upper-label{font-family:Roboto;font-size:.6875rem;font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#4a4a4a;margin-bottom:0}table.ellipsis-tooltip-table tbody td{padding:3px 8px}table.ellipsis-tooltip-table tbody td .upper-label{width:100%;color:#000;text-overflow:ellipsis;overflow:hidden;display:inline-block;white-space:nowrap;font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:0px}table.ellipsis-tooltip-table tbody td:first-of-type{box-shadow:inset 1px 0 #d4d4d4,inset -1px 0 #d4d4d4,inset 0 -1px #d4d4d4;border:none}table.ellipsis-tooltip-table tbody td:nth-of-type(n+2){box-shadow:inset -1px 0 #d4d4d4,inset 0 -1px #d4d4d4;border:none}.pr-4{padding-right:4px}.status-note-tooltip{font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:14px;letter-spacing:normal;color:#4a4a4a;white-space:normal!important}.view-more-comments{display:block;color:#268bff;font-family:Roboto;font-size:.75rem;font-weight:700;font-stretch:normal;font-style:normal;line-height:14px;letter-spacing:normal;cursor:pointer;margin-left:2px}td.mat-column-isOrderStarred:has(.disabled-starring){pointer-events:none!important}td.mat-column-isOrderStarred .mdi.mdi-star.disabled-starring,td.mat-column-isOrderStarred .mdi.mdi-star-outline.disabled-starring{pointer-events:none!important;color:#dbdbdb80!important}table.disable-table-scrolling{overflow:hidden!important}.icon-tooltip-text{display:inline-block;color:#268bff}.text-with-icon-and-text.reduced-width{text-overflow:ellipsis;overflow:hidden;display:inline-block;max-width:calc(100% - 25px);margin-bottom:-3.5px}.innrHtml-tooltip-icon-marker{float:right;color:#268bff}.reduced-width-text{text-overflow:ellipsis;overflow:hidden;display:inline-block;max-width:calc(100% - 25px)}\n"] }]
|
|
5248
|
+
], template: "<div\r\n id=\"generic-table-conatiner\"\r\n #tableElementRef\r\n class=\"table-container {{ gtGeneralConfig?.tableOuterContainerName }} {{ tableBottomBorderClass }}\"\r\n [ngClass]=\"{\r\n 'scroll-left-shadow-effect': isScrolledLeft,\r\n 'scroll-right-shadow-effect': !isScrollEnded,\r\n 'clickable-row': clickableRow,\r\n 'no-data-table': (isNoDataToDisplaySubject$ | async),\r\n 'table-with-show-hide-total-row-toggle': showOrHideToggleForTotalRow\r\n }\"\r\n (scroll)=\"onTableContainerScroll($event)\"\r\n>\r\n <div\r\n [class]=\"gtGeneralConfig.tableContainerName\"\r\n class=\"horizontal-scroll-for-table-container\"\r\n [ngStyle]=\"{\r\n height:\r\n tableData.length < noOfRowsToCheck\r\n ? 'calc(' +\r\n (gtDimension.rowHeight * tableData.length +\r\n (!tableData.length || !gtGeneralConfig.totalRow\r\n ? gtDimension.headerHeight\r\n : gtDimension.headerHeight + gtDimension.rowHeight)) +\r\n 'px)'\r\n : gtDimension.tableHeight\r\n }\"\r\n >\r\n <button\r\n *ngIf=\"showOrHideToggleForTotalRow && !showSkeletonLoading && (isNoDataToDisplaySubject$ | async) === false\"\r\n [ngClass]=\"{\r\n 'shift-toggle-top-on-total-row-click': !gtGeneralConfig.totalRow\r\n }\"\r\n class=\"show-or-hide-toggle-btn\"\r\n (click)=\"showHideTotalRow()\"\r\n >\r\n <i\r\n class=\"mdi mdi-menu-swap\"\r\n tooltipClass=\"show-or-hide-toggle-tooltip\"\r\n placement=\"auto\"\r\n container=\"body\"\r\n [ngbTooltip]=\"showOrHideToggleForTotalRowTooltip\"\r\n ></i>\r\n </button>\r\n <table\r\n class=\"gt\"\r\n [ngClass]=\"tableClass\"\r\n mat-table\r\n [dataSource]=\"renderedData\"\r\n >\r\n <tr\r\n class=\"header-row\"\r\n mat-header-row\r\n *matHeaderRowDef=\"tableColumns; sticky: true\"\r\n [style.height.px]=\"gtDimension.headerHeight\"\r\n ></tr>\r\n <tr\r\n class=\"total-row\"\r\n mat-header-row\r\n [style.height.px]=\"gtDimension.rowHeight\"\r\n *matHeaderRowDef=\"totalRowColumns; sticky: true\"\r\n [class.hidden]=\"\r\n showSkeletonLoading ||\r\n (!showSkeletonLoading && !tableData.length) ||\r\n (isNoDataToDisplaySubject$ | async) ||\r\n (!showSkeletonLoading && !gtGeneralConfig.totalRow)\r\n \"\r\n ></tr>\r\n <tr\r\n [class]=\"rowData.gtClass\"\r\n [ngClass]=\"{ 'no-border-tr': (isNoDataToDisplaySubject$ | async) }\"\r\n mat-row\r\n *matRowDef=\"let rowData; columns: tableColumns\"\r\n [style.height.px]=\"gtDimension.rowHeight\"\r\n (click)=\"dataRowClicked(rowData)\"\r\n ></tr>\r\n\r\n <!-- TOTAL ROW -->\r\n <ng-container\r\n [matColumnDef]=\"column.colName\"\r\n *ngFor=\"let column of totalRowInfo; trackBy: trackByFn\"\r\n >\r\n <td\r\n mat-header-cell\r\n *matHeaderCellDef\r\n [attr.colspan]=\"column.colspan\"\r\n class=\"{{ column.class }}\"\r\n >\r\n <ng-container *ngIf=\"column['isActionColumn']\">\r\n <a\r\n *ngFor=\"let data of column.actionData\"\r\n [class]=\"data.class\"\r\n (click)=\"onClickableDataClicked({}, data.id)\"\r\n >\r\n {{ data.name }}\r\n </a>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"column['isIconColumn']\">\r\n <i\r\n class=\"{{ column?.iconData?.class }}\"\r\n (click)=\"iconClickedInTotalRow(column?.colName)\"\r\n >\r\n </i>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!column['isActionColumn']\">\r\n <strong class=\"upper-label\"\r\n >{{ column.data }}\r\n <span\r\n class=\"red-text-totol-row\"\r\n *ngIf=\"column.additionalRedTextAfterData\"\r\n >{{ column.additionalRedTextAfterData }}</span\r\n ></strong\r\n >\r\n <ng-container *ngIf=\"column.lowerData\">\r\n <br />\r\n <span\r\n *ngIf=\"\r\n column.colName === 'total-potential-booked-unit' &&\r\n gtGeneralConfig.component === 'RATING';\r\n else columnLowerData\r\n \"\r\n class=\"clickable-data\"\r\n (click)=\"spotDetailsDownloadClicked('TOTALROW')\"\r\n [ngClass]=\"{ 'disabled-clickable-data': downloadInProgress }\"\r\n >{{ column.lowerData }}\r\n <span class=\"material-icons spot-details-download-icons\">get_app</span>\r\n <ng-container *ngIf=\"downloadInProgress && selectedRowTypeForDownload === 'TOTALROW'\">\r\n <ng-container [ngTemplateOutlet]=\"circularProgressBar\"></ng-container>\r\n </ng-container>\r\n </span>\r\n <ng-template #columnLowerData>\r\n <span class=\"lower-label\">{{ column.lowerData }}</span>\r\n </ng-template>\r\n </ng-container>\r\n <ng-container *ngIf=\"column.tooltipMessage && gtGeneralConfig.component !== 'LUR_VIOLATIONS'\">\r\n <i\r\n class=\"{{ column.tooltipIconClass }}\"\r\n container=\"body\"\r\n [ngbTooltip]=\"column.tooltipMessage\"\r\n tooltipClass=\"gt-total-row-tooltip\"\r\n placement=\"top bottom\"\r\n ></i>\r\n </ng-container>\r\n <ng-container *ngIf=\"gtGeneralConfig.component === 'LUR_VIOLATIONS' && column.tooltipMessage\">\r\n <i\r\n class=\"mi mdi-info-outline info-label\"\r\n container=\"body\"\r\n [ngbTooltip]=\"lurViolationTotalRowToolTip\"\r\n tooltipClass=\"gt-total-row-tooltip\"\r\n placement=\"bottom\"\r\n ></i>\r\n </ng-container>\r\n </ng-container>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- MAIN ROW -->\r\n <ng-container\r\n [matColumnDef]=\"columnDef.headerInfo[0].objectKey\"\r\n *ngFor=\"let columnDef of tableHeaders; trackBy: trackByFn\"\r\n >\r\n <th\r\n #tableHeader\r\n nowrap\r\n mat-header-cell\r\n *matHeaderCellDef\r\n [style.width]=\"columnDef.width\"\r\n >\r\n <div\r\n class=\"row mx-0\"\r\n *ngFor=\"let header of columnDef.headerInfo; let j = index\"\r\n >\r\n <p\r\n *ngIf=\"header.typeOfHeaderData === 'STRING'\"\r\n [ngClass]=\"{ 'upper-label': j === 0, 'lower-label': j === 1 }\"\r\n >\r\n <ngx-skeleton-loader\r\n *ngIf=\"header.name == null\"\r\n count=\"1\"\r\n [theme]=\"{\r\n height: '10px',\r\n display: 'block',\r\n width: columnDef.width,\r\n 'max-width': 'calc(100% - 20px)'\r\n }\"\r\n >\r\n </ngx-skeleton-loader>\r\n <ng-container *ngIf=\"header.name\">\r\n {{ header.name }}\r\n </ng-container>\r\n <ng-container *ngIf=\"header.tooltip && header.tooltip.tooltipMessage\">\r\n <i\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"header.tooltip.tooltipMessage\"\r\n container=\"body\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n </ng-container>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'impsInfoTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"impsInfoTooltip\"\r\n container=\"body\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"\r\n header.tooltip && header.tooltip.name === 'spotsColumnEquivalizationMessageTooltip'\r\n \"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n container=\"body\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"spotsColumnEquivalizationMessageTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'underDeliveryTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n container=\"body\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"underDeliveryTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'overDeliveryTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n container=\"body\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"overDeliveryTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'ratingInfoTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"ratingInfoTooltip\"\r\n container=\"body\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'rateInfoTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"rateInfoTooltip\"\r\n container=\"body\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'ongoingRevBookedColumnTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"ongoingRevBookedColumnTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'completedRevBookedColumnTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"completedRevBookedColumnTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'avgBookedRate'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"avgBookedRate\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'avgBookedRtg'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"avgBookedRtg\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'avgBookedImps'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"avgBookedImps\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'automationTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"automationTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'rebateImpact'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"rebateImpact\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'projectedImpsRtg'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"projectedImpsRtg\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n </p>\r\n\r\n <ng-container *ngIf=\"header.typeOfHeaderData === 'CHECKBOX'\">\r\n <span\r\n *ngIf=\"gtGeneralConfig.isHeaderChecked\"\r\n class=\"material-icons custom-column-checkbox-checked\"\r\n (click)=\"selectUnselectAllRows()\"\r\n >\r\n check_box\r\n </span>\r\n <span\r\n *ngIf=\"!gtGeneralConfig.isHeaderChecked\"\r\n class=\"material-icons custom-column-checkbox-unchecked\"\r\n [ngClass]=\"{ 'disable-checkbox': gtGeneralConfig.disableHeaderCheckbox }\"\r\n (click)=\"selectUnselectAllRows()\"\r\n >\r\n check_box_outline_blank\r\n </span>\r\n </ng-container>\r\n\r\n <div\r\n *ngIf=\"gtGeneralConfig.showAllColumnFilter\"\r\n class=\"sort-filter-container\"\r\n >\r\n <ng-container *ngIf=\"header.showTooltipIcon\">\r\n <!-- Active tooltip Functionality -->\r\n <ng-container *ngIf=\"header.filter === 'CHECKBOX'\">\r\n <span\r\n class=\"mdi mdi-filter-variant\"\r\n [ngClass]=\"{\r\n active:\r\n annaFilterService.isFilterSortActive &&\r\n annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon || showSkeletonLoading\r\n }\"\r\n [ngbTooltip]=\"filterTooltip\"\r\n placement=\"{{ filterAlignment }}\"\r\n container=\"body\"\r\n tooltipClass=\"non-edit-checkbox-tooltip\"\r\n [autoClose]=\"'outside'\"\r\n triggers=\"manual\"\r\n #t=\"ngbTooltip\"\r\n (click)=\"bindTheValueToToolTip(t, header)\"\r\n (hidden)=\"closeTooltip()\"\r\n >\r\n </span\r\n ><br />\r\n </ng-container>\r\n <ng-container *ngIf=\"header.filter === 'SLIDER'\">\r\n <span\r\n class=\"mdi mdi-filter-variant\"\r\n [ngClass]=\"{\r\n active:\r\n annaFilterService.isFilterSortActive &&\r\n annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon || showSkeletonLoading\r\n }\"\r\n [ngbTooltip]=\"sliderToolTip\"\r\n placement=\"bottom left-top\"\r\n container=\"body\"\r\n tooltipClass=\"non-edit-slider-tooltip\"\r\n [autoClose]=\"'outside'\"\r\n triggers=\"manual\"\r\n #t1=\"ngbTooltip\"\r\n (click)=\"bindTheValueToToolTip(t1, header)\"\r\n (hidden)=\"closeTooltip()\"\r\n >\r\n </span\r\n ><br />\r\n </ng-container>\r\n <ng-container *ngIf=\"header.filter === 'DATE'\">\r\n <span\r\n class=\"mdi mdi-filter-variant\"\r\n [ngClass]=\"{\r\n active:\r\n annaFilterService.isFilterSortActive &&\r\n annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon || showSkeletonLoading\r\n }\"\r\n [ngbTooltip]=\"datePickerTooltip\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n tooltipClass=\"non-edit-datepicker-tooltip\"\r\n [autoClose]=\"'outside'\"\r\n triggers=\"manual\"\r\n #t2=\"ngbTooltip\"\r\n (click)=\"bindTheValueToToolTip(t2, header)\"\r\n (hidden)=\"closeTooltip()\"\r\n >\r\n </span\r\n ><br />\r\n </ng-container>\r\n <ng-container *ngIf=\"header.filter === 'WEEK'\">\r\n <span\r\n class=\"mdi mdi-filter-variant\"\r\n [ngClass]=\"{\r\n active:\r\n annaFilterService.isFilterSortActive &&\r\n annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon || showSkeletonLoading\r\n }\"\r\n [ngbTooltip]=\"weekPickerToolTip\"\r\n placement=\"bottom left-top\"\r\n container=\"body\"\r\n [autoClose]=\"'outside'\"\r\n triggers=\"manual\"\r\n #t3=\"ngbTooltip\"\r\n (click)=\"bindTheValueToToolTip(t3, header)\"\r\n (hidden)=\"closeTooltip()\"\r\n >\r\n </span\r\n ><br />\r\n </ng-container>\r\n <ng-container *ngIf=\"header.filter === 'TIME'\">\r\n <span\r\n class=\"mdi mdi-filter-variant\"\r\n [ngClass]=\"{\r\n active:\r\n annaFilterService.isFilterSortActive &&\r\n annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon || showSkeletonLoading\r\n }\"\r\n [ngbTooltip]=\"timeFilterToolTip\"\r\n placement=\"bottom left-top auto\"\r\n container=\"body\"\r\n tooltipClass=\"non-edit-time-tooltip\"\r\n [autoClose]=\"'outside'\"\r\n triggers=\"manual\"\r\n #t4=\"ngbTooltip\"\r\n (click)=\"bindTheValueToToolTip(t4, header)\"\r\n (hidden)=\"closeTooltip()\"\r\n >\r\n </span\r\n ><br />\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"!header.showTooltipIcon\">\r\n <span id=\"no-filter-space\"></span><br />\r\n </ng-container>\r\n <i\r\n *ngIf=\"header.tooltip && header.tooltip.name === 'lurViolationInfoTooltip'\"\r\n class=\"{{ header['tooltip'].iconClass }}\"\r\n [ngStyle]=\"{ float: header['tooltip'].iconPosition }\"\r\n #t=\"ngbTooltip\"\r\n container=\"body\"\r\n [ngbTooltip]=\"lurViolationInfoTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n </div>\r\n </div>\r\n </th>\r\n\r\n <ng-container *matCellDef=\"let ROW_DATA\">\r\n <td\r\n mat-cell\r\n [style.background]=\"ROW_DATA.backgroundColor\"\r\n [style.border]=\"ROW_DATA.border\"\r\n class=\"{{ ROW_DATA.rowClass }}\"\r\n [ngClass]=\"ROW_DATA[columnDef.headerInfo[0].objectKey + 'TdClass']\"\r\n [attr.rowspan]=\"tdsHaveRowSpan ? ROW_DATA[columnDef.headerInfo[0].objectKey + 'Rowspan'] : 1\"\r\n *ngIf=\"\r\n !hideSomeTds ||\r\n (hideSomeTds && !ROW_DATA['hide' + columnDef.headerInfo[0].objectKey + 'Td'])\r\n \"\r\n >\r\n <ngx-skeleton-loader\r\n *ngIf=\"showSkeletonLoading\"\r\n count=\"1\"\r\n [theme]=\"{ height: '10px', display: 'block' }\"\r\n >\r\n </ngx-skeleton-loader>\r\n\r\n <ng-container *ngIf=\"!showSkeletonLoading\">\r\n <ng-container *ngIf=\"tableData.length > 0 && (isNoDataToDisplaySubject$ | async) === false\">\r\n <ng-container\r\n *ngFor=\"\r\n let subline of columnDef.headerInfo;\r\n let subLineIndex = index;\r\n trackBy: trackByFn\r\n \"\r\n >\r\n <div annaCoreShowEllipsisTextOnHover>\r\n <ng-container [ngSwitch]=\"columnDef.headerInfo[subLineIndex].typeOfBodyData\">\r\n <ng-container *ngSwitchCase=\"'ICON'\">\r\n <i\r\n *ngIf=\"\r\n !(\r\n starredInProgress &&\r\n ROW_DATA.orderId === selectedStarredOrderId\r\n )\r\n \"\r\n [class]=\"ROW_DATA.iconClass\"\r\n [ngClass]=\"{ 'disabled-starring': starredInProgress }\"\r\n (click)=\"iconClicked(ROW_DATA, ROW_DATA.iconClass)\"\r\n ngbTooltip=\"{{ ROW_DATA.iconTitleText }}\"\r\n placement=\"bottom\"\r\n container=\"body\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class\"\r\n ></i>\r\n <ng-container\r\n *ngIf=\"\r\n starredInProgress && ROW_DATA.orderId === selectedStarredOrderId\r\n \"\r\n >\r\n <div\r\n class=\"spinner-for-button-directive\"\r\n [ngClass]=\"{ 'disabled-starring': starredInProgress }\"\r\n ></div>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'ICON_CELL'\">\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <ng-container *ngIf=\"action.showObjectKey\">\r\n {{ ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey] }}\r\n </ng-container>\r\n\r\n <i\r\n *ngIf=\"action.showIcon\"\r\n [class]=\"action.iconClass\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringTextActionType(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].tooltipKey\r\n )\r\n \"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n tooltipClass=\"team-user-tooltip remove-on-scroll-class\"\r\n [ngbTooltip]=\"\r\n action.showTooltip && action?.tooltipData\r\n ? action.tooltipData\r\n : null\r\n \"\r\n (click)=\"\r\n textActionClicked(\r\n ROW_DATA,\r\n action.id,\r\n columnDef.headerInfo[subLineIndex]\r\n )\r\n \"\r\n [disableTooltip]=\"!action.showTooltip\"\r\n >\r\n </i>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'HTML_STRING'\">\r\n <p\r\n [innerHTML]=\"ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\"\r\n (click)=\"innerHTMLCellClicked($event, ROW_DATA)\"\r\n ></p>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'SVG_ICON'\">\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <span\r\n class=\"pr-4\"\r\n *ngIf=\"action?.showObjectKey\"\r\n >\r\n {{ ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey] }}\r\n </span>\r\n\r\n <span\r\n class=\"pr-4 {{ action?.additionalTextClass }}\"\r\n *ngIf=\"action?.additionalText\"\r\n >\r\n {{ action?.additionalText }}\r\n </span>\r\n\r\n <anna-core-icon-column\r\n class=\"pr-4\"\r\n *ngIf=\"action?.svgOrIconName\"\r\n [componentName]=\"gtGeneralConfig.component\"\r\n [dataObject]=\"ROW_DATA\"\r\n [iconToShow]=\"action.svgOrIconName\"\r\n data-html=\"true\"\r\n [ngbTooltip]=\"tipContent\"\r\n [disableTooltip]=\"!action?.svgOrIconTooltipMsg\"\r\n placement=\"auto\"\r\n container=\"body\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class\"\r\n (columnIconClicked)=\"svgIconClicked(ROW_DATA, columnDef.headerInfo[subLineIndex].actionKey)\"\r\n >\r\n <ng-template #tipContent>\r\n <div [innerHTML]=\"action?.svgOrIconTooltipMsg\"></div\r\n ></ng-template>\r\n </anna-core-icon-column>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'TEXT_ACTIONS'\">\r\n <ng-container\r\n *ngFor=\"\r\n let text of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <button\r\n *ngIf=\"text.showTooltip\"\r\n (click)=\"\r\n textActionClicked(\r\n ROW_DATA,\r\n text.id,\r\n columnDef.headerInfo[subLineIndex]\r\n )\r\n \"\r\n [disabled]=\"text.isDisabled\"\r\n class=\"{{ text.class }}\"\r\n (mouseenter)=\"\r\n mouseEnterOnTextActionType(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].tooltipKey\r\n )\r\n \"\r\n [ngbTooltip]=\"textActionTooltipTemplate\"\r\n placement=\"auto\"\r\n container=\"body\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class\"\r\n >\r\n {{ text.name }}\r\n </button>\r\n\r\n <button\r\n *ngIf=\"!text.showTooltip\"\r\n (click)=\"\r\n textActionClicked(\r\n ROW_DATA,\r\n text.id,\r\n columnDef.headerInfo[subLineIndex]\r\n )\r\n \"\r\n [disabled]=\"text.isDisabled\"\r\n class=\"{{ text.class }}\"\r\n >\r\n {{ text.name }}\r\n </button>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'CHECKBOX'\">\r\n <span\r\n *ngIf=\"ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\"\r\n [ngClass]=\"{\r\n 'disable-checkbox':\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].isDisabledKey]\r\n }\"\r\n class=\"material-icons custom-column-checkbox-checked\"\r\n (click)=\"\r\n selectOrUnselectCheckbox(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].objectKey,\r\n false\r\n )\r\n \"\r\n >\r\n check_box\r\n </span>\r\n <span\r\n *ngIf=\"!ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\"\r\n class=\"material-icons custom-column-checkbox-unchecked\"\r\n [ngClass]=\"{\r\n 'disable-checkbox':\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].isDisabledKey]\r\n }\"\r\n (click)=\"\r\n selectOrUnselectCheckbox(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].objectKey,\r\n true\r\n )\r\n \"\r\n >\r\n check_box_outline_blank\r\n </span>\r\n\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <i\r\n *ngIf=\"action.showIcon\"\r\n [class]=\"action.iconClass\"\r\n [ngClass]=\"{ disabled: action.disabledIcon }\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringTextActionTypeContainingTable(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].tooltipKey\r\n )\r\n \"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n tooltipClass=\"tooltip-containing-table remove-on-scroll-class\"\r\n ngbTooltip=\"tooltipContainingTableTemplate\"\r\n >\r\n </i>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'CLICKABLE_DATA'\">\r\n <a\r\n *ngFor=\"\r\n let text of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n [class]=\"text.class\"\r\n (click)=\"onClickableDataClicked(ROW_DATA, text.id)\"\r\n >{{ text.name }}</a\r\n >\r\n <span\r\n *ngIf=\"\r\n subline.objectKey === 'displayBookedUnits' &&\r\n gtGeneralConfig.component === 'RATING'\r\n \"\r\n class=\"clickable-data\"\r\n (click)=\"spotDetailsDownloadClicked('DATAROW', ROW_DATA)\"\r\n [ngClass]=\"{ 'disabled-clickable-data': downloadInProgress }\"\r\n >{{ ROW_DATA.displayBookedUnits }}\r\n <span class=\"material-icons spot-details-download-icons\"\r\n >get_app</span\r\n >\r\n <ng-container\r\n *ngIf=\"\r\n downloadInProgress &&\r\n ROW_DATA.inventoryCodeId ===\r\n selectedInventoryIdForDownload &&\r\n ROW_DATA.demographic === selectedDemographicForDownload\r\n \"\r\n >\r\n <ng-container\r\n [ngTemplateOutlet]=\"circularProgressBar\"\r\n ></ng-container>\r\n </ng-container>\r\n </span>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'STRING___ICON_OR_TEXT_ACTION'\">\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <span\r\n [class]=\"action.additionalTextBeforeLinkClass\"\r\n [innerHtml]=\"action.additionalTextBeforeLink\"\r\n ngbTooltip=\"{{ action.additionalTextBeforeLink }}\"\r\n placement=\"bottom\"\r\n container=\"body\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class\"\r\n [disableTooltip]=\"!action.enableTooltipForAdditionalText\"\r\n ></span>\r\n\r\n <ng-container *ngIf=\"action && action.typeOfData === 'STRING'\">\r\n <span\r\n class=\"text-with-icon-and-text\"\r\n [ngClass]=\"{ 'reduced-width': action.showIcon }\"\r\n annaCoreShowEllipsisTextOnHover\r\n >{{ action.data }}</span\r\n >\r\n </ng-container>\r\n\r\n <a\r\n [id]=\"action.id\"\r\n *ngIf=\"action.showLink\"\r\n (click)=\"\r\n textActionClicked(\r\n ROW_DATA,\r\n action.id,\r\n columnDef.headerInfo[subLineIndex]\r\n )\r\n \"\r\n [class]=\"action.linkClass\"\r\n [ngClass]=\"{ disabled: action.disabledLink }\"\r\n >{{ action.data }}</a\r\n >\r\n <span\r\n ngbTooltip=\"{{ action.additionalTextAfterLink }}\"\r\n placement=\"bottom\"\r\n container=\"body\"\r\n [class]=\"action.additionalTextAfterLinkClass\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class\"\r\n [disableTooltip]=\"!action.enableTooltipForAdditionalAfterText\"\r\n >\r\n {{ action.additionalTextAfterLink }}\r\n </span>\r\n\r\n <ng-container *ngIf=\"action.showTooltip\">\r\n <ng-container *ngIf=\"action.tooltipData.innerHtml\">\r\n <i\r\n *ngIf=\"action.showIcon\"\r\n [class]=\"action.iconClass\"\r\n [ngClass]=\"{ disabled: action.disabledIcon }\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringTextActionTypeContainingTable(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].tooltipKey\r\n )\r\n \"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n tooltipClass=\"tooltip-containing-table remove-on-scroll-class\"\r\n [ngbTooltip]=\"tooltipContainingTableTemplate\"\r\n >\r\n </i>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!action.tooltipData.tooltipTableBody\">\r\n <span\r\n *ngIf=\"action.showIcon\"\r\n [ngClass]=\"{ disabled: action.disabledIcon }\"\r\n class=\"icon-tooltip-text\"\r\n (click)=\"\r\n iconClickedOnStringIconActionType(\r\n ROW_DATA,\r\n action.id,\r\n columnDef.headerInfo[subLineIndex]\r\n )\r\n \"\r\n (mouseleave)=\"mouseLeaveTextActionType(ROW_DATA)\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringTextActionType(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].tooltipKey\r\n )\r\n \"\r\n [placement]=\"\r\n action.tooltipPlacement\r\n ? action.tooltipPlacement\r\n : 'bottom auto'\r\n \"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n tooltipClass=\"team-user-tooltip remove-on-scroll-class {{\r\n action.tooltipClass\r\n }}\"\r\n [ngbTooltip]=\"userLoggedInDetails\"\r\n >\r\n <i [class]=\"action.iconClass\"> </i>\r\n {{ action.additionalTextAfterIcon ?? \"\" }}\r\n </span>\r\n <ng-container *ngIf=\"action['showSvgIcon']\">\r\n <anna-core-anna-est-icon-template\r\n class=\"float-right\"\r\n *ngIf=\"action['svgIconName'] === 'anna-icon'\"\r\n (mouseleave)=\"mouseLeaveTextActionType(ROW_DATA)\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringTextActionType(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex]\r\n .tooltipKey\r\n )\r\n \"\r\n [placement]=\"\r\n action.tooltipPlacement\r\n ? action.tooltipPlacement\r\n : 'bottom auto'\r\n \"\r\n tooltipClass=\"team-user-tooltip remove-on-scroll-class {{\r\n action['tooltipClass']\r\n }}\"\r\n [ngbTooltip]=\"userLoggedInDetails\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n >\r\n </anna-core-anna-est-icon-template>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!action.showTooltip\">\r\n <i\r\n *ngIf=\"action.showIcon\"\r\n [class]=\"action.iconClass\"\r\n [ngClass]=\"{ disabled: action.disabledIcon }\"\r\n (click)=\"\r\n iconClickedOnStringIconActionType(\r\n ROW_DATA,\r\n action.id,\r\n columnDef.headerInfo[subLineIndex]\r\n )\r\n \"\r\n >\r\n </i>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'STRING_OR_INPUT'\">\r\n <ng-container\r\n *ngIf=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]?.type ===\r\n 'STRING';\r\n else inputBox\r\n \"\r\n >\r\n <span\r\n [innerHtml]=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n ?.value\r\n \"\r\n ></span>\r\n </ng-container>\r\n <ng-template #inputBox>\r\n <input\r\n placeholder=\"{{\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n ?.placeholder\r\n }}\"\r\n annaCoreShowEllipsisTextOnHover\r\n class=\"{{\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n .className\r\n }}\"\r\n (keydown)=\"\r\n changesMadeInEditableInputBox(\r\n $event,\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey],\r\n false\r\n )\r\n \"\r\n (paste)=\"\r\n changesMadeInEditableInputBox(\r\n $event,\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey],\r\n true\r\n )\r\n \"\r\n (ngModelChange)=\"\r\n editableInputValueChanged(\r\n $event,\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].objectKey\r\n )\r\n \"\r\n [ngModel]=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey].value\r\n \"\r\n [disabled]=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n .disabled\r\n \"\r\n [ngClass]=\"{\r\n 'red-border':\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n .hasError\r\n }\"\r\n />\r\n\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <i\r\n *ngIf=\"action.showIcon\"\r\n container=\"body\"\r\n [ngbTooltip]=\"tipContent\"\r\n tooltipClass=\"gt-total-row-tooltip\"\r\n placement=\"bottom\"\r\n class=\"{{ action.iconClass }}\"\r\n >\r\n <ng-template #tipContent>\r\n <div [innerHTML]=\"action?.iconTooltip\"></div\r\n ></ng-template>\r\n </i>\r\n <ng-container *ngIf=\"action.showSvgIcon\">\r\n <anna-core-icon-column\r\n class=\"pr-4\"\r\n *ngIf=\"action?.svgOrIconName\"\r\n [componentName]=\"gtGeneralConfig.component\"\r\n [dataObject]=\"ROW_DATA\"\r\n [iconToShow]=\"action.svgOrIconName\"\r\n data-html=\"true\"\r\n [ngbTooltip]=\"tipContent\"\r\n placement=\"auto\"\r\n container=\"body\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class\"\r\n >\r\n <ng-template #tipContent>\r\n <div\r\n [innerHTML]=\"action?.svgOrIconTooltipMsg\"\r\n ></div></ng-template\r\n ></anna-core-icon-column>\r\n </ng-container>\r\n </ng-container>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'HTML'\">\r\n <span\r\n [innerHtml]=\"ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\"\r\n ></span>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'SINGLE_RADIO'\">\r\n <span\r\n *ngIf=\"ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\"\r\n [ngClass]=\"{\r\n 'disable-checkbox':\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].isDisabledKey]\r\n }\"\r\n class=\"mdi mdi-radiobox-marked\"\r\n (click)=\"(null)\"\r\n >\r\n </span>\r\n <span\r\n *ngIf=\"!ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\"\r\n class=\"mdi mdi-radiobox-blank\"\r\n [ngClass]=\"{\r\n 'disable-checkbox':\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].isDisabledKey]\r\n }\"\r\n (click)=\"\r\n selectOrUnselectCheckbox(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].objectKey,\r\n true\r\n )\r\n \"\r\n >\r\n </span>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'RADIO'\">\r\n <mat-radio-group\r\n *ngIf=\"ROW_DATA['RadioButtonConfig']; else showHyphen\"\r\n [ngModel]=\"ROW_DATA[subline.objectKey]\"\r\n [disabled]=\"ROW_DATA['RadioButtonConfig'][0].isDisabled\"\r\n >\r\n <ng-container\r\n *ngFor=\"\r\n let radioButton of ROW_DATA['RadioButtonConfig'];\r\n let last = last\r\n \"\r\n >\r\n <mat-radio-button\r\n value=\"{{ radioButton.value }}\"\r\n class=\"{{ radioButton.class }}\"\r\n (click)=\"\r\n radioButtonClicked(\r\n ROW_DATA,\r\n radioButton.value,\r\n ROW_DATA['RadioButtonConfig'][0].isDisabled\r\n )\r\n \"\r\n >{{ radioButton.label }}\r\n </mat-radio-button>\r\n <i\r\n class=\" {{ radioButton.iconClass }}\"\r\n (click)=\"radioButtonIconClicked(ROW_DATA)\"\r\n ></i>\r\n <i\r\n *ngIf=\"radioButton.tooltipMessage\"\r\n class=\"mi mdi-info-outline\"\r\n [ngbTooltip]=\"radioButton.tooltipMessage\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class\"\r\n ></i>\r\n <br *ngIf=\"!last\" />\r\n </ng-container>\r\n </mat-radio-group>\r\n <ng-template #showHyphen> - </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'STRING_WITH_TOOLTIP'\">\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <span class=\"action-data\"> {{ action?.dataToDisplay }}</span>\r\n <ng-container *ngIf=\"action?.additionalTextWoTooltip\">\r\n <span\r\n class=\"additional-text-wo-tooltip\"\r\n [innerHtml]=\"action.additionalTextWoTooltip\"\r\n >\r\n </span>\r\n </ng-container>\r\n <span\r\n *ngIf=\"action?.showTooltip\"\r\n [ngbTooltip]=\"stringWithTooltipTemplate\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringWithTooltipTextActionType(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].tooltipKey,\r\n tooltipWithStringRef\r\n )\r\n \"\r\n [placement]=\"action?.tooltipPosition\"\r\n container=\"body\"\r\n [class]=\"action?.tooltipIconClass\"\r\n [autoClose]=\"'outside'\"\r\n [triggers]=\"action.isManualTrigger ? 'manual' : 'hover focus'\"\r\n #tooltipWithStringRef=\"ngbTooltip\"\r\n tooltipClass=\"gt-icon-column-tooltip remove-on-scroll-class {{\r\n action?.tooltipInnerClass\r\n }}\"\r\n [disableTooltip]=\"action?.disableTooltip\"\r\n >\r\n </span>\r\n <span>{{ action?.dataToDisplayAfterTooltip }}</span>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'STRING_ELLIPSIS_WITH_TABLE_TOOLTIP'\">\r\n <div class=\"new-ellipsis-container\">\r\n <span\r\n annaCoreShowEllipsisTextOnHover\r\n class=\"cell-value\"\r\n >\r\n {{\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n .cellValue\r\n }}\r\n </span>\r\n <span\r\n *ngIf=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n ?.showTooltip\r\n \"\r\n class=\"tooltip-text\"\r\n [ngbTooltip]=\"tableInsideTooltip\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n triggers=\"manual\"\r\n (hidden)=\"closeTooltip()\"\r\n #info=\"ngbTooltip\"\r\n tooltipClass=\"table-inside-tooltip remove-on-scroll-class {{\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n ?.tooltipClass\r\n }}\"\r\n (mouseenter)=\"\r\n bindTheValueToTableTooltip(\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey],\r\n info\r\n )\r\n \"\r\n >\r\n {{\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n ?.tooltipHoverText\r\n }}\r\n </span>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"'STRING_WITH_ELLIPSIS_AND_READ_MORE_TOOLTIP'\">\r\n <span\r\n title=\"\"\r\n *ngIf=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey].length <\r\n 26\r\n \"\r\n >\r\n {{ ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey] }}\r\n </span>\r\n\r\n <span\r\n title=\"\"\r\n [ngbTooltip]=\"statusNoteTooltip\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n [triggers]=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey].length >\r\n 100\r\n ? 'manual'\r\n : 'hover focus'\r\n \"\r\n (hidden)=\"closeTooltip()\"\r\n #info=\"ngbTooltip\"\r\n tooltipClass=\"status-note-tooltip\"\r\n (mouseenter)=\"\r\n bindTheValueToStatusNote(\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey],\r\n info\r\n )\r\n \"\r\n *ngIf=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey].length >\r\n 25\r\n \"\r\n >\r\n {{ ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey] }}\r\n </span>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'STRING_WITH_TOOLTIP_INNER_HTML'\">\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <span\r\n annaCoreShowEllipsisTextOnHover\r\n class=\"action-data\"\r\n [ngClass]=\"action?.showTooltip ? 'reduced-width-text' : ''\"\r\n >\r\n {{ action?.dataToDisplay }}</span\r\n >\r\n <span\r\n *ngIf=\"action?.showTooltip\"\r\n [ngbTooltip]=\"innerHtmlToolTipTemplate\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringWithInnerHtmlTooltipTextActionType(\r\n ROW_DATA,\r\n action,\r\n tooltipWithInnerHtmlRef,\r\n !action.isManualTrigger\r\n )\r\n \"\r\n [placement]=\"action?.tooltipPosition\"\r\n container=\"body\"\r\n [class]=\"\r\n 'innrHtml-tooltip-icon-marker ' + action?.tooltipIconClass\r\n \"\r\n [autoClose]=\"'outside'\"\r\n [triggers]=\"action.isManualTrigger ? 'manual' : 'hover focus'\"\r\n #tooltipWithInnerHtmlRef=\"ngbTooltip\"\r\n tooltipClass=\"gt-icon-innerHtml-tooltip remove-on-scroll-class {{\r\n action?.tooltipInnerClass\r\n }}\"\r\n [disableTooltip]=\"action?.disableTooltip\"\r\n >\r\n {{ action.tooltipMarkerText }}\r\n </span>\r\n <span *ngIf=\"action?.dataToDisplayAfterTooltip\">\r\n {{ action?.dataToDisplayAfterTooltip }}\r\n </span>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container\r\n *ngSwitchCase=\"\r\n 'ICON_CELL_AND_STRING_WITH_ELLIPSIS_AND_READ_MORE_TOOLTIP'\r\n \"\r\n >\r\n <ng-container\r\n *ngFor=\"\r\n let action of ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].actionKey\r\n ]\r\n \"\r\n >\r\n <i\r\n *ngIf=\"action.showIcon\"\r\n [class]=\"action.iconClass\"\r\n title=\"\"\r\n (mouseenter)=\"\r\n mouseEnterOnStringTextActionType(\r\n ROW_DATA,\r\n columnDef.headerInfo[subLineIndex].tooltipKey\r\n )\r\n \"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n tooltipClass=\"team-user-tooltip remove-on-scroll-class\"\r\n [ngbTooltip]=\"action.showTooltip ? action.tooltipData : null\"\r\n (click)=\"\r\n textActionClicked(\r\n ROW_DATA,\r\n action.id,\r\n columnDef.headerInfo[subLineIndex]\r\n )\r\n \"\r\n [disableTooltip]=\"!action.showTooltip\"\r\n >\r\n </i>\r\n\r\n <ng-container *ngIf=\"action.showObjectKey\">\r\n <span\r\n title=\"\"\r\n *ngIf=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n .length < 26\r\n \"\r\n >\r\n {{ ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey] }}\r\n </span>\r\n\r\n <span\r\n title=\"\"\r\n [ngbTooltip]=\"statusNoteTooltip\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n [triggers]=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n .length > 100\r\n ? 'manual'\r\n : 'hover focus'\r\n \"\r\n (hidden)=\"closeTooltip()\"\r\n #info=\"ngbTooltip\"\r\n tooltipClass=\"status-note-tooltip\"\r\n (mouseenter)=\"\r\n bindTheValueToStatusNote(\r\n ROW_DATA[\r\n columnDef.headerInfo[subLineIndex].objectKey\r\n ],\r\n info\r\n )\r\n \"\r\n *ngIf=\"\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n .length > 25\r\n \"\r\n >\r\n {{ ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey] }}\r\n </span>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchDefault>\r\n <ng-container *ngIf=\"subline.objectKey !== 'description'\">\r\n <span annaCoreShowEllipsisTextOnHover>{{\r\n ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey]\r\n }}</span>\r\n <!-- <i\r\n *ngIf=\"\r\n subline.objectKey === 'inventoryCode' &&\r\n ROW_DATA['isSellerGroup'] &&\r\n gtGeneralConfig.component === 'RATING'\r\n \"\r\n class=\"mi mdi-info-outline seller-tooltip\"\r\n [ngbTooltip]=\"sellerHierarchyTooltip\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n triggers=\"manual\"\r\n (hidden)=\"closeTooltip()\"\r\n #info=\"ngbTooltip\"\r\n tooltipClass=\"hierarchy-tooltip remove-on-scroll-class\"\r\n (mouseenter)=\"\r\n bindTheValueToSellerGroupTooltip(\r\n ROW_DATA.sellerGroupHierarchy,\r\n info\r\n )\r\n \" \r\n >\r\n </i>-->\r\n\r\n <i\r\n *ngIf=\"\r\n subline.objectKey === 'displayBookedAverageRating' &&\r\n gtGeneralConfig.component === 'RATING' &&\r\n ROW_DATA['showRatingAverageIcon']\r\n \"\r\n class=\"mi mdi-info-outline seller-tooltip\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n (mouseenter)=\"\r\n setIsDifference(ROW_DATA.isDifferenceLessThan25Percent)\r\n \"\r\n tooltipClass=\"posted-avg-tooltip remove-on-scroll-class\"\r\n [ngbTooltip]=\"postedRatingDifference\"\r\n >\r\n </i>\r\n\r\n <i\r\n *ngIf=\"\r\n subline.objectKey === 'displayBookedAverageImpression' &&\r\n gtGeneralConfig.component === 'RATING' &&\r\n ROW_DATA['showImpressionAverageIcon']\r\n \"\r\n class=\"mi mdi-info-outline seller-tooltip\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n (mouseenter)=\"\r\n setIsDifference(ROW_DATA.isDifferenceLessThan25Percent)\r\n \"\r\n tooltipClass=\"posted-avg-tooltip remove-on-scroll-class\"\r\n [ngbTooltip]=\"postedImpDifference\"\r\n >\r\n </i>\r\n </ng-container>\r\n <ng-container *ngIf=\"subline.objectKey === 'description'\">\r\n <p\r\n *ngIf=\"\r\n ROW_DATA.descriptionMessage ||\r\n ROW_DATA.descriptionEmailReferenceNum\r\n \"\r\n >\r\n <ng-container *ngIf=\"ROW_DATA.descriptionMessage\">\r\n {{ ROW_DATA.descriptionMessage }}\r\n <br />\r\n </ng-container>\r\n <ng-container\r\n *ngIf=\"\r\n ROW_DATA.descriptionEmailReferenceNum !== '-' &&\r\n ROW_DATA.descriptionEmailReferenceNum !== ''\r\n \"\r\n >\r\n Email Ref: {{ ROW_DATA.descriptionEmailReferenceNum }}\r\n <br />\r\n </ng-container>\r\n </p>\r\n <a\r\n href=\"{{ ROW_DATA.descriptionDetailsUrl }}\"\r\n target=\"_blank\"\r\n *ngIf=\"\r\n ROW_DATA.descriptionDetailsUrlType === 'PDF' ||\r\n ROW_DATA.descriptionDetailsUrlType === 'EXCEL'\r\n \"\r\n >\r\n <button class=\"btn viewDetailsAndEmailBtn\">Download</button>\r\n </a>\r\n <ng-container\r\n *ngIf=\"\r\n ROW_DATA.activityname.toLowerCase() === 'order onboarded'\r\n \"\r\n >\r\n <a\r\n *ngIf=\"ROW_DATA.descriptionDetailsUrlType === 'LINK'\"\r\n (click)=\"viewDetailsClicked(ROW_DATA)\"\r\n >\r\n <button class=\"btn viewDetailsAndEmailBtn order-onboarded\">\r\n View details\r\n </button>\r\n </a>\r\n </ng-container>\r\n\r\n <a\r\n href=\"{{ ROW_DATA.descriptionEmailUrl }}\"\r\n target=\"_blank\"\r\n *ngIf=\"\r\n ROW_DATA.descriptionEmailUrl !== '-' &&\r\n ROW_DATA.descriptionEmailUrl !== ''\r\n \"\r\n >\r\n <button class=\"btn viewDetailsAndEmailBtn\">View email</button>\r\n </a>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"isNoDataToDisplaySubject$ | async\">\r\n <div>\r\n {{ null }}\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </td>\r\n </ng-container>\r\n </ng-container>\r\n </table>\r\n </div>\r\n <anna-core-no-data-lib\r\n [width]=\"noDataWidth\"\r\n [marginTop]=\"marginTop\"\r\n *ngIf=\"isNoDataToDisplaySubject$ | async\"\r\n >\r\n </anna-core-no-data-lib>\r\n</div>\r\n\r\n<!-- Checkbox template -->\r\n<ng-template #filterTooltip>\r\n <anna-core-anna-column-checkbox-filter\r\n [tableData]=\"tableData\"\r\n [showFilterHeaderTabs]=\"showFilterTooltipTabs\"\r\n [isLurAndCsrComponent]=\"false\"\r\n [clonedTableData]=\"clonedTableData\"\r\n [filterTabObjects]=\"filterTabObjects\"\r\n (filterAppliedToTable)=\"filterApplied($event)\"\r\n (sortingAppliedToTable)=\"sortingApplied($event)\"\r\n (closeTooltip)=\"closeTooltip()\"\r\n >\r\n </anna-core-anna-column-checkbox-filter>\r\n</ng-template>\r\n\r\n<!-- Slider template -->\r\n<ng-template #sliderToolTip>\r\n <anna-core-anna-column-slider-filter\r\n [tableData]=\"tableData\"\r\n [showFilterHeaderTabs]=\"showFilterTooltipTabs\"\r\n [isLurAndCsrComponent]=\"false\"\r\n [clonedTableData]=\"clonedTableData\"\r\n [filterTabObjects]=\"filterTabObjects\"\r\n (filterAppliedToTable)=\"filterApplied($event)\"\r\n (sortingAppliedToTable)=\"sortingApplied($event)\"\r\n (closeTooltip)=\"closeTooltip()\"\r\n >\r\n </anna-core-anna-column-slider-filter>\r\n</ng-template>\r\n\r\n<!-- Date Picker Template -->\r\n<ng-template #datePickerTooltip>\r\n <anna-core-anna-column-date-range-filter\r\n [tableData]=\"tableData\"\r\n [showFilterHeaderTabs]=\"showFilterTooltipTabs\"\r\n [isLurAndCsrComponent]=\"false\"\r\n [clonedTableData]=\"clonedTableData\"\r\n [filterTabObjects]=\"filterTabObjects\"\r\n (filterAppliedToTable)=\"filterApplied($event)\"\r\n (sortingAppliedToTable)=\"sortingApplied($event)\"\r\n (closeTooltip)=\"closeTooltip()\"\r\n >\r\n </anna-core-anna-column-date-range-filter>\r\n</ng-template>\r\n\r\n<!-- Week Picker Template -->\r\n<ng-template #weekPickerToolTip>\r\n <!-- <div class=\"weekpicker-container\">\r\n <anna-core-week-calendar-filter-lib\r\n [week-calendar-config]=\"gtGeneralConfig.multiWeekPickerConfig\"\r\n (apply)=\"applyWeekFilter($event)\"\r\n [from-date]=\"calendarMinEnabledDate\"\r\n [to-date]=\"calendarMaxEnabledDate\"\r\n >\r\n </anna-core-week-calendar-filter-lib>\r\n </div> -->\r\n</ng-template>\r\n\r\n<!-- Time Filter Template -->\r\n<ng-template #timeFilterToolTip>\r\n <anna-core-anna-column-time-filter\r\n [tableData]=\"tableData\"\r\n [showFilterHeaderTabs]=\"showFilterTooltipTabs\"\r\n [isLurAndCsrComponent]=\"false\"\r\n [showAllTimeRangeCheckboxes]=\"showCheckboxesForTimeFilter\"\r\n [clonedTableData]=\"clonedTableData\"\r\n [filterTabObjects]=\"filterTabObjects\"\r\n (filterAppliedToTable)=\"filterApplied($event)\"\r\n (sortingAppliedToTable)=\"sortingApplied($event)\"\r\n (closeTooltip)=\"closeTooltip()\"\r\n >\r\n </anna-core-anna-column-time-filter>\r\n</ng-template>\r\n\r\n<ng-template #columnInfoTooltip>\r\n <p class=\"black-color-text white-space-nowrap\">This preemption is rejected and not marked for credit.</p>\r\n</ng-template>\r\n\r\n<ng-template #ratingInfoTooltip>\r\n <p class=\"first-row\">Shows 'Booked Rating' for Preemptions & MakeGood Offered spot(s).</p>\r\n <p class=\"second-row\">Shows 'Projected Rating' for ADU Offered spot(s).</p>\r\n</ng-template>\r\n\r\n<ng-template #impsInfoTooltip>\r\n <p class=\"first-row\">Shows 'Booked IMPS' for Preemptions & MakeGood Offered spot(s).</p>\r\n <p class=\"second-row\">Shows 'Projected IMPS' for ADU Offered spot(s).</p>\r\n</ng-template>\r\n\r\n<ng-template #spotsColumnEquivalizationMessageTooltip>\r\n <p class=\"spot-column-tooltip-message\">\r\n This consists of equivalized spots and un-equivalized Paid Programs & un-equivalized Non-spots.\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #underDeliveryTooltip>\r\n <p class=\"spot-column-tooltip-message\">\r\n Indicates the Under-delivery percentage based on booked and posted RTG/IMPS.\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #overDeliveryTooltip>\r\n <p class=\"spot-column-tooltip-message\">\r\n Indicates the Over-delivery percentage based on booked and posted RTG/IMPS.\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #rateInfoTooltip>\r\n <p class=\"first-row\">Shows 'Booked Rate' for Preemptions & MakeGood Offered spot(s).</p>\r\n <p class=\"second-row\">Shows 'Projected $ Value' for ADU Offered spot(s).</p>\r\n</ng-template>\r\n\r\n<ng-template #sellerHierarchyTooltip>\r\n <ng-container *ngIf=\"sellerGroupHierarchy.length > 0\">\r\n <section class=\"hierarchy-table-container\">\r\n <table class=\"seller-hierarchy-table\">\r\n <thead>\r\n <tr>\r\n <th>#</th>\r\n <th>Inventory Codes</th>\r\n <th>Program/Description</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let data of sellerGroupHierarchy; let tooltipIndex = index\">\r\n <td>{{ tooltipIndex + 1 }}</td>\r\n <td>\r\n <span annaCoreShowEllipsisTextOnHover>{{ data.InventoryCode }}</span>\r\n </td>\r\n <td>\r\n <span annaCoreShowEllipsisTextOnHover>{{ data.Program }}</span>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </section>\r\n </ng-container>\r\n <ng-container *ngIf=\"sellerGroupHierarchy.length === 0\">\r\n <span class=\"black-color-text\">Seller group not available for this inventory code</span>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<ng-template #tableInsideTooltip>\r\n <label class=\"ellipsis-tooltip-heading\">{{ ellipsisWithTooltipHeading }}</label>\r\n <section class=\"table-inside-tooltip-container\">\r\n <table class=\"ellipsis-tooltip-table\">\r\n <thead>\r\n <tr>\r\n <th\r\n [style.width]=\"header.width\"\r\n *ngFor=\"let header of ellipsisWithTooltipTableHeaders\"\r\n >\r\n <div>\r\n <span\r\n annaCoreShowEllipsisTextOnHover\r\n class=\"upper-label\"\r\n >{{ header.headerName }}</span\r\n >\r\n </div>\r\n </th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let data of ellipsisWithTooltipTableData\">\r\n <td *ngFor=\"let header of ellipsisWithTooltipTableHeaders\">\r\n <div>\r\n <span\r\n annaCoreShowEllipsisTextOnHover\r\n class=\"upper-label\"\r\n >{{ data[header.objectKey] }}</span\r\n >\r\n </div>\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n </section>\r\n</ng-template>\r\n\r\n<ng-template #lurViolationInfoTooltip>\r\n <p class=\"first-row\">The values are for the entire week.</p>\r\n</ng-template>\r\n\r\n<ng-template #postedRatingDifference>\r\n <p class=\"difference-text\">\r\n The difference between posted and booked average rating is\r\n {{ isDifferenceLessThan25Percent ? \"less\" : \"more\" }} than 25%.\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #postedImpDifference>\r\n <p class=\"difference-text\">\r\n The difference between posted and booked average impression is\r\n {{ isDifferenceLessThan25Percent ? \"less\" : \"more\" }} than 25%.\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #ongoingRevBookedColumnTooltip>\r\n <p>The Booked $ value, Spots, GRP, CPP, IMPS, CPM corresponds on the last permanent revision generated</p>\r\n</ng-template>\r\n\r\n<ng-template #completedRevBookedColumnTooltip>\r\n <p>The Booked $ value corresponds on the last permanent revision generated</p>\r\n</ng-template>\r\n\r\n<ng-template #avgBookedRate>\r\n <p>This is the booked average Rate</p>\r\n</ng-template>\r\n\r\n<ng-template #avgBookedRtg>\r\n <p>This is the booked average RTG</p>\r\n</ng-template>\r\n\r\n<ng-template #avgBookedImps>\r\n <p>This is the booked average IMP(\u2019000)</p>\r\n</ng-template>\r\n\r\n<ng-template #projectedImpsRtg>\r\n <p>\r\n All projections are derived from the sum of actual posted information until the last posted date and estimates\r\n for the remaining selected period.\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #automationTooltip>\r\n <p>\r\n Please get the order business rules approved to automate the orders. Only for the automated orders, any approved\r\n MGs, ADUs, or credited spots on ANNA will be fed into the traffic system i.e. ANNA revisions.\r\n <!-- removed below line as part of enhancmennt in 14.0 releas -->\r\n <!-- Additionally, ANNA will only enter buyer revisions into traffic for the selected\r\n Medialine/WOC orders. -->\r\n </p>\r\n</ng-template>\r\n\r\n<ng-template #rebateImpact>\r\n <p>Rebate impact value is for the originally ordered spot length and is not equivalized.</p>\r\n</ng-template>\r\n\r\n<ng-template #lurViolationTotalRowToolTip>\r\n <ul>\r\n <li>\r\n <strong>POLITICAL RATE VIOLATIONS:</strong>\r\n Violations flagged when non-political spots are booked at a rate lower than the minimum booked rate for\r\n political candidates for the same week, Inventory Code and Revenue Class.\r\n </li>\r\n <li>\r\n <strong>CANDIDATE TO CANDIDATE VIOLATION:</strong>\r\n Violations flagged when political spots are booked at different rates to other political spots for the same\r\n week, Inventory Code and Revenue Class.\r\n </li>\r\n </ul>\r\n</ng-template>\r\n\r\n<ng-template #circularProgressBar>\r\n <circle-progress\r\n [percent]=\"percentDone\"\r\n [radius]=\"5\"\r\n [showTitle]=\"false\"\r\n [showUnits]=\"false\"\r\n [showSubtitle]=\"false\"\r\n [outerStrokeWidth]=\"3\"\r\n [innerStrokeWidth]=\"3\"\r\n [space]=\"-3\"\r\n [outerStrokeColor]=\"'#268bff'\"\r\n [innerStrokeColor]=\"'#d5d5d5'\"\r\n [animationDuration]=\"10\"\r\n ></circle-progress>\r\n</ng-template>\r\n\r\n<ng-template #userLoggedInDetails>\r\n <div class=\"tooltip-div-container\">\r\n <ng-container *ngFor=\"let data of textActionTooltip\">\r\n <span *ngIf=\"data.key !== 'read'\">\r\n {{ data.key }} <b>{{ data.value }}</b>\r\n </span>\r\n <span *ngIf=\"data.key === 'read'\">\r\n {{ data.value }}\r\n </span>\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #markAsReadTip>\r\n <div class=\"notification-tooltip-div-container\">\r\n <ng-container *ngFor=\"let data of textActionTooltip\">\r\n {{ data.value }}\r\n </ng-container>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #textActionTooltipTemplate>\r\n <ng-container *ngFor=\"let data of textActionTooltip\">\r\n {{ data.key }} <b>{{ data.value }}</b>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<ng-template #programChangeTooltipTemplate>\r\n <div class=\"program-schedule-tooltip\">\r\n <h2>Program Change</h2>\r\n <p class=\"previous\">Previous:</p>\r\n <b annaCoreShowEllipsisTextOnHover>{{ textActionTooltip.OldProgramName }}</b>\r\n\r\n <p class=\"updated\">Updated:</p>\r\n <b\r\n *ngIf=\"textActionTooltip.NewProgramNames.length === 1\"\r\n annaCoreShowEllipsisTextOnHover\r\n >{{ textActionTooltip.NewProgramNames[0] }}</b\r\n >\r\n <ul *ngIf=\"textActionTooltip.NewProgramNames.length > 1\">\r\n <li *ngFor=\"let item of textActionTooltip.NewProgramNames\">\r\n <label class=\"dot\"></label>\r\n <span annaCoreShowEllipsisTextOnHover>{{ item }}</span>\r\n </li>\r\n </ul>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #showOrHideToggleForTotalRowTooltip>\r\n <div>\r\n {{ showOrHideToggleForTotalRow && !gtGeneralConfig.totalRow ? \"Show Total Row\" : \"Hide Total Row\" }}\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #tooltipContainingTableTemplate>\r\n <div\r\n *ngIf=\"tooltipContainingTable\"\r\n [innerHTML]=\"tooltipContainingTable.innerHtml\"\r\n class=\"notification-tooltip-div-container\"\r\n >\r\n <!-- <ul>\r\n <li *ngFor=\"let headerMsg of tooltipContainingTable.tableHeaderMsg\">\r\n <b> {{headerMsg}} </b>\r\n </li>\r\n </ul>\r\n\r\n <table class=\"tooltip-table\">\r\n <thead>\r\n <tr>\r\n <th *ngFor=\"let header of tooltipContainingTable.tooltipTableHeader\">\r\n {{ header}}\r\n </th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let rows of tooltipContainingTable.tooltipTableBody\">\r\n <td *ngFor=\"let data of rows\">\r\n {{ data }}\r\n </td>\r\n </tr>\r\n </tbody>\r\n </table>\r\n\r\n <ul>\r\n <li style=\"margin-top:10px; padding:0\" *ngFor=\"let footerMsg of tooltipContainingTable.tableFooterMsg\">\r\n {{ footerMsg }} \r\n </li>\r\n </ul> -->\r\n </div>\r\n</ng-template>\r\n<!-- <ng-template #textActionTooltipTemplate>\r\n <ng-container *ngFor=\"let data of textActionTooltip\">\r\n {{ data.key }} <b> {{data.value}}</b>\r\n </ng-container>\r\n</ng-template> -->\r\n\r\n<ng-template #statusNoteTooltip>\r\n <div>\r\n <span class=\"status-note-tooltip\">{{ statusNoteForTooltip }}</span>\r\n <span *ngIf=\"statusNoteForPopup.length > 100\"\r\n >...<a\r\n class=\"view-more-comments\"\r\n (click)=\"showEntireStatusNote()\"\r\n >View more</a\r\n ></span\r\n >\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #innerHtmlToolTipTemplate>\r\n <div [innerHtml]=\"toolTipInnerHtmlData\"></div>\r\n</ng-template>\r\n", styles: ["::ng-deep .show-or-hide-toggle-tooltip .tooltip-inner{max-width:229px}.show-or-hide-toggle-btn.shift-toggle-top-on-total-row-click{transform:translate(calc(var(--app-left-space-show-hide-total-row-icon) - 12px),32px)}.show-or-hide-toggle-btn{width:16px;height:16px;padding:0;margin:0;border-radius:50%;position:absolute;transform:translate(calc(var(--app-left-space-show-hide-total-row-icon) - 12px),52px);z-index:999;background-color:#d9d9d9}.show-or-hide-toggle-btn i.mdi.mdi-menu-swap{font-size:16px;display:flex}#generic-table-conatiner.table-with-show-hide-total-row-toggle .total-row td:nth-of-type(2){padding-left:16px!important}::ng-deep .gt-icon-innerHtml-tooltip .tooltip-inner{max-width:600px;width:min-content}::ng-deep .gt-icon-innerHtml-tooltip .tooltip-inner>div{width:max-content}::ng-deep .generic-innerHtml-table-heading{margin-bottom:2px;font-family:Roboto;font-size:.6875rem;font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#4a4a4a}::ng-deep .generic-innerHtml-table-container{max-height:8.75rem;width:min-content;overflow:auto}::ng-deep .generic-innerHtml-table-container table{table-layout:fixed;width:100%}::ng-deep .generic-innerHtml-table-container table thead tr th{background:#e9e9e9;height:22px;padding:3px 8px;position:sticky;top:0;cursor:default;font-family:Roboto;font-size:.6875rem;font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#4a4a4a;margin-bottom:0;box-shadow:inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4,inset -1px 0 #d4d4d4}::ng-deep .generic-innerHtml-table-container table thead tr th:first-of-type{box-shadow:inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4,inset -1px 0 #d4d4d4!important;border-left:1px solid #d4d4d4}::ng-deep .generic-innerHtml-table-container table tbody tr td{border:1px solid #d4d4d4;padding:3px 8px;width:100%;color:#000;font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:0px}::ng-deep .generic-innerHtml-table-container table tbody tr:first-of-type td{border-top:none}::ng-deep .generic-innerHtml-table-container::-webkit-scrollbar-track{margin-top:22px!important}.sort-btn{background:#fff;border:none;border-right:1px solid #1b88ff;text-decoration:underline;font-family:Roboto;font-size:var(--sort-label-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:1.07;letter-spacing:normal;color:#1b88ff;cursor:pointer;flex:1;text-align:center}.sort-btn:last-of-type{border-right:none}.sort-btn.active{color:#202b47;text-decoration:none}p.sort-container{margin-top:8px;padding-bottom:8px;border-bottom:1px solid #e6e6e6;margin-bottom:0;display:flex}::ng-deep .tooltip-inner{max-height:22rem;background-color:#fff;border:1px solid white;border-radius:5px;box-shadow:0 2px 2px #0000003d,0 0 2px #0000001f;max-width:251px;width:100%;padding:0!important}::ng-deep .tooltip-inner div.radio-container{flex-wrap:wrap}::ng-deep .md-drppicker{box-shadow:unset!important}::ng-deep .available{color:#999}::ng-deep .bs-tooltip-bottom .arrow:before{border-bottom-color:#fff!important}::ng-deep .bs-tooltip-left .arrow:before{border-left-color:#fff!important}::ng-deep .tooltip.show{opacity:1}.input{text-align:left;margin:5px 10px 5px 5px;display:flex;align-items:center;width:230px;white-space:nowrap}.data{color:#000;font-weight:700;margin-left:5px;margin-right:5px}span.data{display:inline-block;text-overflow:ellipsis;white-space:pre;width:100%;overflow:hidden}.check-box{font-size:14px;cursor:pointer;position:relative;top:-1px}span.mdi-filter.active{color:#000;opacity:1!important;pointer-events:all!important}p{margin-bottom:0;line-height:initial}span.mdi-filter{color:#cbcbcb}::ng-deep .ngx-slider-pointer{top:-5px!important;width:12px!important;height:12px!important;background:#bdbdbd!important;border:1px solid #ffffff!important;box-shadow:0 1px 3px #0000004d!important;border-radius:16px!important}input:focus{outline:none}input::placeholder{color:#c8c8c8}.cancel-btn{background:#c7e1ff;color:#268bff}.apply-btn{background:#268bff;color:#fff;margin-left:.3125rem}div.radio-container{display:flex;white-space:nowrap;justify-content:space-between;background-color:#f4f4f4;border-radius:.125rem;margin:.4375rem .4375rem .25rem}div.radio-container div{flex:1;width:50%}div.radio-container div.full-width{width:100%}div.radio-container input{position:relative;top:.125rem;margin-right:.25rem}div.radio-container label{font-family:Roboto;font-size:.875rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:1.29;letter-spacing:0;color:#4a4a4a;margin:0;padding-left:.125rem}div.radio-container label:first-of-type{margin-right:.188rem}div.radio-container input[type=radio]{appearance:none;display:inline-block;width:.9375rem;height:.9375rem;padding:.125rem;background-clip:content-box;border:.125rem solid #268bff;background-color:transparent;border-radius:50%}div.radio-container input[type=radio]:checked{background-color:#268bff}.checkbox-filter-buttons-container{padding:0 8px!important}.buttons-container{display:flex;margin:0px auto .4375rem;justify-content:center;padding:0 12px}.buttons-container .button{padding:0 10px;width:100%;margin:8px 0 0;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.buttons-container button:last-of-type{background-color:#268bff;color:#fff;margin-left:.5rem}.buttons-container button.disabled{background:#bdbdbd;opacity:.5;color:#4a4a4a}.button{display:inline-block;margin:8px 4px 0 8px;padding:0 16px;border-radius:4px;text-align:center;outline:none;font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:1.67;letter-spacing:normal;border:none;color:#268bff;background-color:#e5f1ff}.search-box{display:flex;align-items:center;color:#c8c8c8;border:1px solid #e6e6e6;border-radius:.125rem;margin:.25rem .4375rem .188rem;height:1.5rem;padding:.188rem 8px .188rem .5rem}.search-box .search-bar-close{margin-left:auto;float:right}.search-icon{margin:0 4px 0 0;font-size:var(--filter-search-icon-fs);color:#9b9b9b}.filter-icon{justify-content:right;margin-left:auto;color:#d4d4d4;color:#a1a1a1;font-size:16px;cursor:pointer}.data{margin:0 13px 0 8px;font-family:Roboto;font-size:var(--filter-checkbox-label-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:1.86;letter-spacing:\"\";color:#4a4a4a}.search-input{font-family:Roboto;font-size:var(--filter-search-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;color:#c8c8c8;width:calc(100% - 38px);margin:1px 0 1px 2px;border:none;padding:0}.check-box{color:#268bff}.tooltip-data-container{overflow-y:scroll;max-height:8rem}.searchbar{width:100%;display:flex;justify-content:flex-end;align-items:flex-end}.clear-button{opacity:.5;font-family:Roboto;font-size:.9375rem;font-weight:500;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;text-decoration:underline;border:none;background-color:#fff;color:#4a4a4a;margin-left:.625rem;padding:0}.clear-button:focus{outline:none;box-shadow:none}.unchecked{color:#268bff}cdk-virtual-scroll-viewport.dropdown-data-container{max-height:12.3rem;width:100%;overflow-y:auto;overflow-x:hidden}cdk-virtual-scroll-viewport.dropdown-data-container p.input{margin-left:0}cdk-virtual-scroll-viewport.dropdown-data-container p.input span.mi{padding-left:.4375rem}cdk-virtual-scroll-viewport.dropdown-data-container p.input:hover{background-color:#ebebeb;cursor:pointer}cdk-virtual-scroll-viewport.dropdown-data-container::-webkit-scrollbar{width:.188rem}cdk-virtual-scroll-viewport.dropdown-data-container::-webkit-scrollbar-thumb{color:#d3d3d3;background:#d3d3d3}section.min-maxContainer{display:flex;justify-content:center;margin-bottom:-.125rem;margin-top:.5rem;width:100%}section.min-maxContainer input{width:30%;height:1.5rem;border:1px solid lightgray;color:gray}section.min-maxContainer span{display:inline-block;padding-left:.5rem;padding-right:.5rem;position:relative;top:.3125rem;color:#666;font-size:var(--page-message-content-fs)}.time-container{width:100%;display:flex;padding:0 .75rem}.time-container input.form-control:disabled{background-color:#fff;width:2.813rem}.time-container input.numberInput:focus{box-shadow:none;border-color:#c2cfd6}.time-container .dot{color:#cbcbcb;position:relative;left:-7px;font-size:17px}.time-container div.arrow-container{flex-direction:column;display:flex;margin-top:.375rem;width:9px;height:18px;margin-right:.875rem}.time-container div.arrow-container i{color:#000;cursor:pointer;max-height:9px;font-size:20px;width:10px}.time-container div.arrow-container i:before{width:0;height:0;pointer-events:none;position:relative;left:-9px;top:-11px}.mdi-filter{cursor:pointer}.time-label-container{display:flex;justify-content:flex-start}.time-label-container label{margin-bottom:0;color:#4a4a4a;margin-top:.125rem;margin-left:.75rem;font-weight:700;font-size:var(--dropdown-label-fs)}.time-heading{color:#000;font-size:.8125rem;text-align:left;padding-left:.625rem;margin-top:.625rem;font-weight:700}.column-clear-all{width:94%;text-align:center;border:none;font-size:var(--filter-clear-select-btn-fs);background:none;text-decoration:underline;color:#268bff}.checkbox-container{display:flex;padding-inline:.625rem}.checkbox-container .data{text-align:left}.checkbox-container:first-of-type{margin-top:.625rem;font-weight:500}.column-clear-all{width:94%;text-align:center;border:none;background:none;text-decoration:underline;color:#268bff}.column-clear-all:disabled{opacity:.5;color:#4a4a4a;font-weight:400}.column-clear-all.align-center{text-align:center}span.mdi-filter-variant.disabled{pointer-events:none;opacity:.5}.datepicker-container{width:100%}span.mdi-filter-variant{color:#cbcbcb;cursor:pointer;font-size:.875rem}span.mdi-filter-variant.active{color:#000}p.filter-tab{font-family:Roboto;font-size:var(--filter-tab-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:1.29;letter-spacing:normal;color:#1b88ff;border-radius:5px;background-color:#f4f4f4;padding-inline:8px;cursor:pointer;overflow:hidden;text-align:center;text-overflow:ellipsis;padding-block:3px}p.filter-tab.active{color:#fff;background-color:#1b88ff}button.filter-text-btn{background:#fff;text-decoration:underline;font-family:Roboto;font-size:var(--filter-clear-select-btn-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;border:none;color:#268bff;margin-inline:4px;margin-top:2px}button.filter-text-btn:disabled{color:#b1b1b1;cursor:not-allowed}::ng-deep .non-edit-datepicker-tooltip .tooltip-inner{max-width:310px!important;width:283px!important;overflow-y:initial!important;padding:0!important}input.slider-text::-webkit-outer-spin-button,input.slider-text::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input.slider-text{-moz-appearance:textfield}input.slider-text.red-border{border:1px solid #f44336!important}::ng-deep .checkbox-sort p.sort-container{margin-top:8px!important;padding-bottom:8px!important}i.mdi-close{cursor:pointer}i.mdi-close.disable-close-icon{pointer-events:none;cursor:not-allowed}input.error-border{border:1px solid #f44336!important}::ng-deep .non-edit-checkbox-tooltip .tooltip-inner{width:238px!important;padding:0!important}::ng-deep .non-edit-slider-tooltip .tooltip-inner{width:238px!important;padding:0!important}::ng-deep .non-edit-time-tooltip .tooltip-inner{width:250px!important;padding:0!important}::ng-deep .non-edit-time-tooltip.bs-tooltip-start{padding:.4rem}::ng-deep .non-edit-time-tooltip.bs-tooltip-start .tooltip-arrow{right:0;top:5px!important;width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}::ng-deep .non-edit-time-tooltip.bs-tooltip-start .tooltip-arrow:before{border-left-color:#fff;left:-1px;border-width:calc(var(--bs-tooltip-arrow-width) * .5) 0 calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height)}::ng-deep .no-bottom-border p.sort-container{border-bottom:none!important}::ng-deep .ngx-slider-pointer-min:after{display:none}::ng-deep .ngx-slider-pointer-max:after{display:none}::ng-deep .ngx-slider span.ngx-slider-pointer{width:12px;height:12px;top:-5px;background-color:#bdbdbd}::ng-deep .ngx-slider span.ngx-slider-bar{height:3px;background:#ededed}::ng-deep .ngx-slider span.ngx-slider-selection{background:#bdbdbd}::ng-deep .ngx-slider span.ngx-slider-bubble{bottom:-22px;font-size:12px;color:#333}::ng-deep .show-min.ngx-slider span.ngx-slider-model-value{background:#fff;box-shadow:0 6px 10px #0000004d,0 2px 2px #0003}::ng-deep .show-max.ngx-slider span.ngx-slider-model-high{background:#fff;box-shadow:none}::ng-deep .ngx-slider span.ngx-slider-combined{background:#fff;box-shadow:0 6px 10px #0000004d,0 2px 2px #0003}::ng-deep .ngx-slider{top:10px!important;margin:5px 0 2px!important}::ng-deep .ngx-slider-animate{top:0!important}.sidebar-slider{margin-bottom:35px!important;margin-left:5px;margin-right:5px}.slider-placeholder{height:14px}::ng-deep .filter-calendar select.form-select:focus{border-color:#c2cfd6;box-shadow:none}::ng-deep .filter-calendar select.form-select{background-color:#fff}.no-data-case{padding-left:.4375rem!important;font-size:var(--filter-checkbox-label-fs)!important;margin-top:10px!important;cursor:pointer}.virtual-scroll-div{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.red-text-totol-row{color:#f44336!important}.check-mark,.unread-mark{cursor:pointer}.on-hover:hover .unread-mark,.notificationHover .check-mark{opacity:0;cursor:pointer}.on-hover:hover .check-mark{opacity:1;cursor:pointer}table{margin-bottom:0;table-layout:fixed;width:100%}:host ::ng-deep .gt .header-row th{border:none;background:#ededed;padding:2px 8px;line-height:normal;position:sticky;position:-webkit-sticky;top:0;box-shadow:inset 1px 0 #d4d4d4,inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4}:host ::ng-deep .gt .header-row th .upper-label{font-family:Roboto;font-size:var(--table-header-fs);font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#4a4a4a;margin-bottom:0}:host ::ng-deep .gt .header-row th .lower-label{font-family:Roboto;font-size:var(--table-header-fs);font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#a7a7a7;margin-bottom:0}:host ::ng-deep .gt .header-row th div.row{display:flex;flex-wrap:nowrap;justify-content:space-between;align-items:center;width:max-content}:host ::ng-deep .gt .header-row th div.sort-filter-container{display:flex;flex-wrap:nowrap;align-items:center;margin-left:.25rem;margin-right:auto}:host ::ng-deep .gt .header-row th span.mdi-filter-variant{font-size:13px!important;top:-1px!important;position:relative}:host ::ng-deep .gt .header-row th:first-of-type{box-shadow:inset 1px 0 #d4d4d4,inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4}:host ::ng-deep .gt .header-row th:last-of-type{box-shadow:inset -1px 0 #d4d4d4,inset 1px 0 #d4d4d4,inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4}:host ::ng-deep .gt .header-row br{display:block;content:\"\";margin-top:-8px}:host ::ng-deep .gt tbody tr td{padding:2px 8px;border:none;box-shadow:inset 1px 0 #d4d4d4,inset 0 -1px #d4d4d4}:host ::ng-deep .gt tbody tr td div:nth-child(1){color:#000;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-family:Roboto;font-size:var(--table-body-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:0px}:host ::ng-deep .gt tbody tr td div:nth-child(2){color:#a7a7a7;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-family:Roboto;font-size:var(--table-body-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:0px}:host ::ng-deep .gt tbody tr td:first-of-type{box-shadow:inset 1px 0 #d4d4d4,inset 0 -1px #d4d4d4}:host ::ng-deep .gt tbody tr td:last-of-type{box-shadow:inset 1px 0 #d4d4d4,inset -1px 0 #d4d4d4,inset 0 -1px #d4d4d4}:host ::ng-deep .gt tbody tr br{display:block;content:\"\";margin-top:-8px}:host ::ng-deep .gt .custom-column-checkbox-checked,:host ::ng-deep .gt .custom-column-checkbox-unchecked{font-size:.875rem;cursor:pointer}:host ::ng-deep .gt .custom-column-checkbox-checked{color:#268bff}:host ::ng-deep .gt .custom-column-checkbox-unchecked{color:#4a4a4a}:host ::ng-deep .gt .cell-value{width:calc(100% - 24px)!important;display:inline-block;width:90%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host ::ng-deep .gt .tooltip-text{color:#268bff;cursor:pointer;float:right}:host ::ng-deep .bottom-border .gt tbody tr:last-of-type td{box-shadow:inset 1px 0 #d4d4d4}:host ::ng-deep .bottom-border .gt tbody tr:last-of-type td:first-of-type{box-shadow:inset 1px 0 #d4d4d4}:host ::ng-deep .bottom-border .gt tbody tr:last-of-type td:last-of-type{box-shadow:inset 1px 0 #d4d4d4,inset -1px 0 #d4d4d4}.table-container{overflow-x:auto;overflow-y:auto}.rowSelectCheckbox,#selectAllRowsCheckbox{cursor:pointer}.disable-checkbox{color:#dedede!important;pointer-events:none!important}.mdi-warning{color:#f3c639;font-size:16px;line-height:28px}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{opacity:1}.redcolor-status{color:#c62a2a}#no-filter-space{width:.875rem}::ng-deep .mat-button-toggle-appearance-standard .mat-button-toggle-label-content{width:2.625rem;padding:0 .625rem}input.numberInput{margin-right:-.8125rem;padding:0 0 0 .625rem;height:1.875rem}::ng-deep .mat-button-toggle-checked{background-color:#268bff!important;color:#fff!important}::ng-deep .mat-button-toggle-group-appearance-standard{border-radius:0}.hidden{display:none}.no-data-div{margin-top:2.5px}.no-data-div label{margin:0;width:auto;font-weight:500;background-color:#d3d3d3;padding:.3125rem 1.125rem;border-radius:.25rem}.column-values:nth-of-type(2){color:#a7a7a7!important}.custom-column-checkbox-checked,.custom-column-checkbox-unchecked{font-size:.875rem;cursor:pointer}.custom-column-checkbox-checked{color:#268bff}.custom-column-checkbox-unchecked{color:#4a4a4a}.time-filter-checkboxes>div>p{color:#151b1e}::ng-deep .margin-bottom-zero .mat-radio-label{margin-bottom:0}:host ::ng-deep mat-radio-group br{margin-top:0!important}:host ::ng-deep mat-radio-group mat-radio-button .mdc-radio__background{width:var(--mat-radio-size);height:var(--mat-radio-size)}:host ::ng-deep mat-radio-group mat-radio-button .mdc-radio__inner-circle{border-width:calc(var(--mat-radio-size) / 2)}:host ::ng-deep mat-radio-group mat-radio-button .mdc-form-field>label{margin:0 0 0 4px;padding:0;top:-2px;position:relative;font-size:var(--radio-button-label-fs)}:host ::ng-deep mat-radio-group mat-radio-button .mdc-radio--disabled+label{color:var(--primary-text-color-dark)!important}:host ::ng-deep mat-radio-group mat-radio-button.mat-mdc-radio-button .mdc-form-field .mdc-radio{padding:0}:host ::ng-deep mat-radio-group mat-radio-button .mdc-form-field>label{left:-94px;font-size:12px;color:#4a4a4a;position:relative}:host ::ng-deep mat-radio-group mat-radio-button .mat-mdc-radio-button .mdc-radio .mdc-radio__native-control:enabled:checked+.mdc-radio__background .mdc-radio__outer-circle{border-color:var(--mdc-radio-selected-icon-color)}::ng-deep .reject.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:#ff0}::ng-deep .reject.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-inner-circle{background-color:#ff0}::ng-deep .resubmit.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:#ff0}::ng-deep .resubmit.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-inner-circle{background-color:#ff0}::ng-deep .noAction.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:green}::ng-deep .noAction.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-inner-circle{background-color:green}::ng-deep .approve.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:green}::ng-deep .approve.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-inner-circle{background-color:green}::ng-deep .credit.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:red}::ng-deep .credit.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-inner-circle{background-color:red}::ng-deep .mat-radio-button.mat-radio-disabled .mat-radio-outer-circle{border-color:#00000061!important}::ng-deep .mat-radio-button.mat-radio-disabled.mat-radio-checked .mat-radio-inner-circle{background-color:#00000061!important}::ng-deep tr.white-background-row{background:#fff}::ng-deep tr.gray-background-row{background:#e9e9e980!important}.remarks-tooltip,.mdi-information,.mdi-information-outline,.seller-tooltip{font-size:.875rem;color:#268bff;position:relative;top:.1875rem;cursor:pointer}.seller-tooltip{top:-1px;float:right}::ng-deep .remarks-info-tooltip .tooltip-inner{max-width:19.25rem!important}.rating-icon,.lur-violation-icon{color:#268bff;cursor:pointer;position:relative;left:-2px}::ng-deep .rating-info-tooltip .tooltip-inner{max-width:800px!important}.spots-info-icon{color:#268bff;cursor:pointer;margin:1px 2px 0 -14px}.spots-info-icon-ol{color:#268bff;cursor:pointer;margin:1px 4px 0 -2px}::ng-deep .spot-info-tooltip .tooltip-inner{position:relative;max-width:220px!important;background:#fff;word-break:break-word;display:flex}::ng-deep .spot-info-tooltip-for-orderlisting-table .tooltip-inner{max-width:220px!important;background:#fff;word-break:break-word;display:flex}p.first-row{padding:.5rem .5rem 0;color:#000;white-space:nowrap;text-align:left}p.second-row{padding:2px .5rem .5rem;color:#000;white-space:nowrap;text-align:left}::ng-deep .gt-total-row-tooltip{opacity:1!important}::ng-deep .gt-total-row-tooltip .tooltip-inner{color:#000;box-shadow:0 6px 10px #0000004d,0 2px 2px #0003;background-color:#fff;padding:4px!important;width:100%;border-radius:2px!important}::ng-deep .gt-total-row-tooltip .arrow:before{border-top-color:#fff!important}.info-label{margin-left:4px;color:#268bff;vertical-align:text-top}::ng-deep .hierarchy-tooltip{max-width:-moz-fit-content;max-width:fit-content;width:310px!important}::ng-deep .hierarchy-tooltip .tooltip-inner{padding:4px!important;max-width:22.75rem;max-height:11.25rem}table.seller-hierarchy-table{table-layout:fixed}table.seller-hierarchy-table tr th{font-family:Roboto;font-size:.75rem;font-weight:500;font-stretch:normal;font-style:normal;line-height:1.67;letter-spacing:normal;color:#5e5e5e;white-space:nowrap;background:#ededed;position:sticky;box-shadow:inset 0 1px #d4d4d4;top:0;z-index:1}table.seller-hierarchy-table tr th:nth-child(1){width:20px}table.seller-hierarchy-table tr th:first-of-type,table.seller-hierarchy-table tr td:first-of-type{width:30px;border-left:1px solid #d4d4d4}table.seller-hierarchy-table tr th:last-of-type,table.seller-hierarchy-table tr td:last-of-type{border-right:1px solid #d4d4d4;width:7.875rem!important}table.seller-hierarchy-table tr th:nth-of-type(2){width:7.75rem!important}table.seller-hierarchy-table tr td{font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;color:#4a4a4a;box-shadow:none!important;border-top:1px solid #d4d4d4;border-bottom:1px solid #d4d4d4}table.seller-hierarchy-table tr td:nth-of-type(2),table.seller-hierarchy-table tr td:nth-of-type(3){padding-top:.25rem}table.seller-hierarchy-table tr td span{display:inline-block;width:90%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative}section.hierarchy-table-container,section.table-inside-tooltip-container{max-height:8.75rem;overflow:auto}section.hierarchy-table-container::-webkit-scrollbar-track{margin-top:1.5rem}section.table-inside-tooltip-container::-webkit-scrollbar-track{margin-top:1.1875rem}.difference-text{padding:.5rem;color:#000;text-align:left}::ng-deep .posted-avg-tooltip .tooltip-inner{width:13.8125rem!important}::ng-deep .drrBooked-info-tooltip{transform:translate(26px,6px)}::ng-deep .drrBooked-info-tooltip .tooltip-inner{max-width:307px!important;width:242px!important;background:#fff;word-break:break-word;display:flex;padding:4px!important;text-align:left}::ng-deep .drrBooked-info-tooltip .tooltip-inner p{color:#000}::ng-deep .drrBooked-info-tooltip .arrow:before{border-right-color:#fff!important}.clickable-data{cursor:pointer;color:#268bff!important;display:flex!important;align-items:center}.clickable-data .spot-details-download-icons{font-size:12px}.disabled-clickable-data{pointer-events:none;color:#d4d4d4!important}.spot-column-tooltip-message{color:#000;width:max-content;text-align:left}div.spinner-for-button-directive{position:relative;left:-1px}.clickable-row table tr.mat-row td{cursor:pointer!important}.tooltip-div-container{text-align:left!important;padding:8px 4px;color:#4a4a4a!important;font-size:11px!important;font-family:Roboto;font-size:11px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}.notification-tooltip-div-container{text-align:left!important;padding:6px 8px;color:#4a4a4a!important;font-size:12px!important;font-family:Roboto;font-size:12px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}.mdi-information,.mdi-information-outline{left:3px;top:1px}.mdi-information-outline{position:static}::ng-deep .team-user-tooltip.bs-tooltip-top .arrow:before{border-top:6px solid white}::ng-deep .team-user-tooltip.bs-tooltip-left .arrow:before{border-left:6px solid white}::ng-deep .team-user-tooltip.bs-tooltip-bottom .arrow:before{border-bottom:6px solid white}::ng-deep .team-user-tooltip.bs-tooltip-right .arrow:before{border-right:5px solid white}::ng-deep .team-user-tooltip .tooltip-inner{opacity:1!important;width:-moz-fit-content!important;width:fit-content!important;max-width:520px;border-radius:2px;padding:0 4px!important}::ng-deep .team-user-tooltip .tooltip-inner .tooltip-inner{color:#4a4a4a;text-align:left;padding:8px!important;border-radius:2px;background:#fff!important;box-shadow:0 6px 10px #0000004d,0 2px 2px #0003;font-family:Roboto;font-size:var(--page-message-content-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}::ng-deep .team-user-tooltip .tooltip-inner.bs-tooltip-top .arrow:before{border-top:6px solid white}::ng-deep .team-user-tooltip .tooltip-inner.bs-tooltip-left .arrow:before{border-left:6px solid white}::ng-deep .team-user-tooltip .tooltip-inner.bs-tooltip-bottom .arrow:before{border-bottom:6px solid white}::ng-deep .team-user-tooltip .tooltip-inner.bs-tooltip-right .arrow:before{border-right:5px solid white}::ng-deep .gt-icon-column-tooltip{opacity:1!important}::ng-deep .gt-icon-column-tooltip .tooltip-inner{color:#4a4a4a;text-align:left;padding:8px!important;border-radius:2px;background:#fff!important;box-shadow:0 6px 10px #0000004d,0 2px 2px #0003;font-family:Roboto;font-size:var(--page-message-content-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}::ng-deep .gt-icon-column-tooltip.bs-tooltip-top .arrow:before{border-top:6px solid white}::ng-deep .gt-icon-column-tooltip.bs-tooltip-left .arrow:before{border-left:6px solid white}::ng-deep .gt-icon-column-tooltip.bs-tooltip-bottom .arrow:before{border-bottom:6px solid white}::ng-deep .gt-icon-column-tooltip.bs-tooltip-right .arrow:before{border-right:5px solid white}::ng-deep .gt-icon-column-tooltip .tooltip-inner{width:100%}::ng-deep .tooltip-containing-table{opacity:1!important}::ng-deep .tooltip-containing-table .tooltip-inner{color:#4a4a4a;text-align:left;padding:8px!important;border-radius:2px;background:#fff!important;box-shadow:0 6px 10px #0000004d,0 2px 2px #0003;font-family:Roboto;font-size:var(--page-message-content-fs);font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}::ng-deep .tooltip-containing-table.bs-tooltip-top .arrow:before{border-top:6px solid white}::ng-deep .tooltip-containing-table.bs-tooltip-left .arrow:before{border-left:6px solid white}::ng-deep .tooltip-containing-table.bs-tooltip-bottom .arrow:before{border-bottom:6px solid white}::ng-deep .tooltip-containing-table.bs-tooltip-right .arrow:before{border-right:5px solid white}::ng-deep .tooltip-containing-table li{margin:0!important;padding:0!important}::ng-deep .tooltip-containing-table ul{margin:0!important;padding-left:8px!important}::ng-deep .tooltip-containing-table ul.pl-16{padding-left:16px!important}::ng-deep .tooltip-containing-table .tooltip-inner{width:100%;max-width:230px}table.tooltip-table{table-layout:fixed;margin:4px 0 0;width:100%}table.tooltip-table th,table.tooltip-table td{padding:2px 8px;line-height:normal}table.tooltip-table thead tr th:first-of-type{box-shadow:inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4,inset -1px 0 #d4d4d4,inset 1px 0 #d4d4d4!important;border:none}table.tooltip-table thead tr th{color:#5e5e5e!important;font-size:12px;font-weight:500;font-family:Roboto;line-height:1.67;background-color:#ededed;border-top:none!important;border-bottom:none!important;outline:none!important;box-shadow:inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4,inset -1px 0 #d4d4d4}table.tooltip-table thead tr th div.row{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center}table.tooltip-table tbody tr td{color:#5e5e5e!important;font-size:12px;font-weight:500;font-family:Roboto;line-height:1.67}table.tooltip-table tbody tr td:first-of-type{box-shadow:inset 1px 0 #d4d4d4,inset -1px 0 #d4d4d4,inset 0 -1px #d4d4d4;border:none}table.tooltip-table tbody tr td:nth-of-type(n+2){box-shadow:inset -1px 0 #d4d4d4,inset 0 -1px #d4d4d4;border:none}.bottom-border{border-bottom:1px solid #d4d4d4!important}i.disabled{pointer-events:none!important}.black-color-text{color:#000}.white-space-nowrap{white-space:nowrap}.ellipsis-tooltip-heading{margin-bottom:2px;font-family:Roboto;font-size:.6875rem;font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#4a4a4a}table.ellipsis-tooltip-table{table-layout:fixed;width:100%}table.ellipsis-tooltip-table thead th:first-of-type{box-shadow:inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4,inset -1px 0 #d4d4d4,inset 1px 0 #d4d4d4!important}table.ellipsis-tooltip-table thead th{background:#e9e9e9;padding:3px 8px;line-height:normal;position:sticky;top:0;cursor:default;box-shadow:inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4,inset -1px 0 #d4d4d4}table.ellipsis-tooltip-table thead th .upper-label{font-family:Roboto;font-size:.6875rem;font-weight:700;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#4a4a4a;margin-bottom:0}table.ellipsis-tooltip-table tbody td{padding:3px 8px}table.ellipsis-tooltip-table tbody td .upper-label{width:100%;color:#000;text-overflow:ellipsis;overflow:hidden;display:inline-block;white-space:nowrap;font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:0px}table.ellipsis-tooltip-table tbody td:first-of-type{box-shadow:inset 1px 0 #d4d4d4,inset -1px 0 #d4d4d4,inset 0 -1px #d4d4d4;border:none}table.ellipsis-tooltip-table tbody td:nth-of-type(n+2){box-shadow:inset -1px 0 #d4d4d4,inset 0 -1px #d4d4d4;border:none}.pr-4{padding-right:4px}.status-note-tooltip{font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:14px;letter-spacing:normal;color:#4a4a4a;white-space:normal!important}.view-more-comments{display:block;color:#268bff;font-family:Roboto;font-size:.75rem;font-weight:700;font-stretch:normal;font-style:normal;line-height:14px;letter-spacing:normal;cursor:pointer;margin-left:2px}td.mat-column-isOrderStarred:has(.disabled-starring){pointer-events:none!important}td.mat-column-isOrderStarred .mdi.mdi-star.disabled-starring,td.mat-column-isOrderStarred .mdi.mdi-star-outline.disabled-starring{pointer-events:none!important;color:#dbdbdb80!important}table.disable-table-scrolling{overflow:hidden!important}.icon-tooltip-text{display:inline-block;color:#268bff}.text-with-icon-and-text.reduced-width{text-overflow:ellipsis;overflow:hidden;display:inline-block;max-width:calc(100% - 25px);margin-bottom:-3.5px}.innrHtml-tooltip-icon-marker{float:right;color:#268bff}.reduced-width-text{text-overflow:ellipsis;overflow:hidden;display:inline-block;max-width:calc(100% - 25px)}\n"] }]
|
|
5218
5249
|
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: AnnaSortService }, { type: AnnaDateTimeFormatService }, { type: AnnaFilterService }]; }, propDecorators: { showSkeletonLoading: [{
|
|
5219
5250
|
type: Input
|
|
5220
5251
|
}], tableHeaders: [{
|
|
@@ -5357,8 +5388,7 @@ class AnnaCoreModule {
|
|
|
5357
5388
|
AnnaConvertArrayToCommaSeperatedValue,
|
|
5358
5389
|
FixedRowsPopupTableDirective,
|
|
5359
5390
|
AnnaEstIconTemplateComponent,
|
|
5360
|
-
AnnaSpinnerLoaderComponent,
|
|
5361
|
-
AnnaLicensingTableComponent], exports: [AnnaNoDataComponent,
|
|
5391
|
+
AnnaSpinnerLoaderComponent], exports: [AnnaNoDataComponent,
|
|
5362
5392
|
AnnaFilterSearchedTextPipe,
|
|
5363
5393
|
AnnaConvertZeroOrNullOrUndefinedPipe,
|
|
5364
5394
|
AnnaTypeofDataPipe,
|
|
@@ -5385,8 +5415,7 @@ class AnnaCoreModule {
|
|
|
5385
5415
|
AnnaDateFormatterPipe,
|
|
5386
5416
|
AnnaConvertArrayToCommaSeperatedValue,
|
|
5387
5417
|
FixedRowsPopupTableDirective,
|
|
5388
|
-
AnnaSpinnerLoaderComponent
|
|
5389
|
-
AnnaLicensingTableComponent] }); }
|
|
5418
|
+
AnnaSpinnerLoaderComponent] }); }
|
|
5390
5419
|
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaCoreModule, imports: [CommonModule,
|
|
5391
5420
|
NgbModule,
|
|
5392
5421
|
FormsModule,
|
|
@@ -5411,8 +5440,7 @@ class AnnaCoreModule {
|
|
|
5411
5440
|
AnnaColumnTimeFilterComponent,
|
|
5412
5441
|
AnnaColumnCheckboxFilterComponent,
|
|
5413
5442
|
AnnaColumnSliderFilterComponent,
|
|
5414
|
-
AnnaSpinnerLoaderComponent
|
|
5415
|
-
AnnaLicensingTableComponent] }); }
|
|
5443
|
+
AnnaSpinnerLoaderComponent] }); }
|
|
5416
5444
|
}
|
|
5417
5445
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaCoreModule, decorators: [{
|
|
5418
5446
|
type: NgModule,
|
|
@@ -5463,7 +5491,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
5463
5491
|
FixedRowsPopupTableDirective,
|
|
5464
5492
|
AnnaEstIconTemplateComponent,
|
|
5465
5493
|
AnnaSpinnerLoaderComponent,
|
|
5466
|
-
AnnaLicensingTableComponent,
|
|
5467
5494
|
],
|
|
5468
5495
|
exports: [
|
|
5469
5496
|
AnnaNoDataComponent,
|
|
@@ -5494,11 +5521,58 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
5494
5521
|
AnnaConvertArrayToCommaSeperatedValue,
|
|
5495
5522
|
FixedRowsPopupTableDirective,
|
|
5496
5523
|
AnnaSpinnerLoaderComponent,
|
|
5497
|
-
AnnaLicensingTableComponent
|
|
5498
5524
|
],
|
|
5499
5525
|
}]
|
|
5500
5526
|
}] });
|
|
5501
5527
|
|
|
5528
|
+
class AnnaCircularProgressComponent {
|
|
5529
|
+
constructor(el, renderer) {
|
|
5530
|
+
this.el = el;
|
|
5531
|
+
this.renderer = renderer;
|
|
5532
|
+
this.percent = 0;
|
|
5533
|
+
this.radius = 22;
|
|
5534
|
+
this.outerStrokeWidth = 5;
|
|
5535
|
+
this.innerStrokeWidth = 5;
|
|
5536
|
+
this.outerStrokeColor = "#268bff";
|
|
5537
|
+
this.innerStrokeColor = "#d5d5d5";
|
|
5538
|
+
this.animationDuration = 0;
|
|
5539
|
+
this.circumference = 0;
|
|
5540
|
+
}
|
|
5541
|
+
ngOnChanges() {
|
|
5542
|
+
this.updateCircumference();
|
|
5543
|
+
this.applyAnimationDuration();
|
|
5544
|
+
}
|
|
5545
|
+
updateCircumference() {
|
|
5546
|
+
this.circumference = 2 * Math.PI * (this.radius - this.outerStrokeWidth / 2);
|
|
5547
|
+
}
|
|
5548
|
+
applyAnimationDuration() {
|
|
5549
|
+
const progressBar = this.el.nativeElement.querySelector(".custom-progress-bar");
|
|
5550
|
+
if (progressBar) {
|
|
5551
|
+
this.renderer.setStyle(progressBar, "transition", `stroke-dashoffset ${this.animationDuration}ms ease`);
|
|
5552
|
+
}
|
|
5553
|
+
}
|
|
5554
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaCircularProgressComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
5555
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AnnaCircularProgressComponent, isStandalone: true, selector: "anna-core-circular-progress", inputs: { percent: "percent", radius: "radius", outerStrokeWidth: "outerStrokeWidth", innerStrokeWidth: "innerStrokeWidth", outerStrokeColor: "outerStrokeColor", innerStrokeColor: "innerStrokeColor", animationDuration: "animationDuration" }, usesOnChanges: true, ngImport: i0, template: "<div\r\n class=\"custom-progress-wrapper\"\r\n [ngStyle]=\"{ width: radius * 2 + 1 + 'px', height: radius * 2 + 1 + 'px' }\"\r\n>\r\n <svg\r\n class=\"custom-progress-circle\"\r\n [attr.viewBox]=\"'0 0 ' + radius * 2 + ' ' + radius * 2\"\r\n >\r\n <!-- Background circle -->\r\n <circle\r\n class=\"custom-progress-bg\"\r\n [attr.cx]=\"radius\"\r\n [attr.cy]=\"radius\"\r\n [attr.r]=\"radius - outerStrokeWidth / 2\"\r\n [attr.stroke-width]=\"outerStrokeWidth\"\r\n [attr.stroke]=\"innerStrokeColor\"\r\n [attr.fill]=\"'none'\"\r\n ></circle>\r\n\r\n <!-- Progress circle -->\r\n <circle\r\n class=\"custom-progress-bar\"\r\n [attr.cx]=\"radius\"\r\n [attr.cy]=\"radius\"\r\n [attr.r]=\"radius - outerStrokeWidth / 2\"\r\n [attr.stroke-width]=\"outerStrokeWidth\"\r\n [attr.stroke]=\"outerStrokeColor\"\r\n [attr.fill]=\"'none'\"\r\n [attr.stroke-dasharray]=\"circumference\"\r\n [attr.stroke-dashoffset]=\"circumference - (percent / 100) * circumference\"\r\n [attr.transform]=\"'rotate(' + radius + ' ' + radius + ')'\"\r\n ></circle>\r\n </svg>\r\n</div>\r\n", styles: [".custom-progress-wrapper{position:relative;display:flex}.custom-progress-circle{width:100%;height:100%;transform:rotate(-90deg)}.custom-progress-bar{stroke-linecap:round;transition:stroke-dashoffset .3s ease}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
5556
|
+
}
|
|
5557
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaCircularProgressComponent, decorators: [{
|
|
5558
|
+
type: Component,
|
|
5559
|
+
args: [{ selector: "anna-core-circular-progress", standalone: true, imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\r\n class=\"custom-progress-wrapper\"\r\n [ngStyle]=\"{ width: radius * 2 + 1 + 'px', height: radius * 2 + 1 + 'px' }\"\r\n>\r\n <svg\r\n class=\"custom-progress-circle\"\r\n [attr.viewBox]=\"'0 0 ' + radius * 2 + ' ' + radius * 2\"\r\n >\r\n <!-- Background circle -->\r\n <circle\r\n class=\"custom-progress-bg\"\r\n [attr.cx]=\"radius\"\r\n [attr.cy]=\"radius\"\r\n [attr.r]=\"radius - outerStrokeWidth / 2\"\r\n [attr.stroke-width]=\"outerStrokeWidth\"\r\n [attr.stroke]=\"innerStrokeColor\"\r\n [attr.fill]=\"'none'\"\r\n ></circle>\r\n\r\n <!-- Progress circle -->\r\n <circle\r\n class=\"custom-progress-bar\"\r\n [attr.cx]=\"radius\"\r\n [attr.cy]=\"radius\"\r\n [attr.r]=\"radius - outerStrokeWidth / 2\"\r\n [attr.stroke-width]=\"outerStrokeWidth\"\r\n [attr.stroke]=\"outerStrokeColor\"\r\n [attr.fill]=\"'none'\"\r\n [attr.stroke-dasharray]=\"circumference\"\r\n [attr.stroke-dashoffset]=\"circumference - (percent / 100) * circumference\"\r\n [attr.transform]=\"'rotate(' + radius + ' ' + radius + ')'\"\r\n ></circle>\r\n </svg>\r\n</div>\r\n", styles: [".custom-progress-wrapper{position:relative;display:flex}.custom-progress-circle{width:100%;height:100%;transform:rotate(-90deg)}.custom-progress-bar{stroke-linecap:round;transition:stroke-dashoffset .3s ease}\n"] }]
|
|
5560
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { percent: [{
|
|
5561
|
+
type: Input
|
|
5562
|
+
}], radius: [{
|
|
5563
|
+
type: Input
|
|
5564
|
+
}], outerStrokeWidth: [{
|
|
5565
|
+
type: Input
|
|
5566
|
+
}], innerStrokeWidth: [{
|
|
5567
|
+
type: Input
|
|
5568
|
+
}], outerStrokeColor: [{
|
|
5569
|
+
type: Input
|
|
5570
|
+
}], innerStrokeColor: [{
|
|
5571
|
+
type: Input
|
|
5572
|
+
}], animationDuration: [{
|
|
5573
|
+
type: Input
|
|
5574
|
+
}] } });
|
|
5575
|
+
|
|
5502
5576
|
class AnnaGtHelperService {
|
|
5503
5577
|
constructor(annaFilterService, router, route, annaSortService) {
|
|
5504
5578
|
this.annaFilterService = annaFilterService;
|
|
@@ -5628,7 +5702,7 @@ class AnnaGtHelperService {
|
|
|
5628
5702
|
}
|
|
5629
5703
|
return queryParamObj;
|
|
5630
5704
|
}
|
|
5631
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaGtHelperService, deps: [{ token: AnnaFilterService }, { token: i2.Router }, { token: i2.ActivatedRoute }, { token: AnnaSortService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
5705
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaGtHelperService, deps: [{ token: AnnaFilterService }, { token: i2$1.Router }, { token: i2$1.ActivatedRoute }, { token: AnnaSortService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
5632
5706
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaGtHelperService, providedIn: "root" }); }
|
|
5633
5707
|
}
|
|
5634
5708
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaGtHelperService, decorators: [{
|
|
@@ -5636,7 +5710,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
5636
5710
|
args: [{
|
|
5637
5711
|
providedIn: "root",
|
|
5638
5712
|
}]
|
|
5639
|
-
}], ctorParameters: function () { return [{ type: AnnaFilterService }, { type: i2.Router }, { type: i2.ActivatedRoute }, { type: AnnaSortService }]; } });
|
|
5713
|
+
}], ctorParameters: function () { return [{ type: AnnaFilterService }, { type: i2$1.Router }, { type: i2$1.ActivatedRoute }, { type: AnnaSortService }]; } });
|
|
5640
5714
|
|
|
5641
5715
|
class GenericTooltipHtmlService {
|
|
5642
5716
|
static generateTableHTML(headers, rowData, tableHeading = "") {
|
|
@@ -5708,6 +5782,19 @@ class AnnaNumberFormatService {
|
|
|
5708
5782
|
return value.toString() + unit;
|
|
5709
5783
|
// return (Math.Round(value, digitsToRoundDecimalPoint, MidpointRounding.AwayFromZero) + unit);
|
|
5710
5784
|
}
|
|
5785
|
+
static GetRoundedValueWithUnitsAndDollarSymbol(inputValue, digitsToRoundDecimalPoint = 2) {
|
|
5786
|
+
if (inputValue === 0)
|
|
5787
|
+
return "-";
|
|
5788
|
+
const result = AnnaNumberFormatService.GetValueInUnits(Math.abs(inputValue));
|
|
5789
|
+
let value = result[0];
|
|
5790
|
+
const unit = result[1];
|
|
5791
|
+
value = +(+value).toFixed(digitsToRoundDecimalPoint);
|
|
5792
|
+
if (inputValue < 0) {
|
|
5793
|
+
value *= -1;
|
|
5794
|
+
}
|
|
5795
|
+
const dollarSymbol = value < 0 ? "-$" : "$";
|
|
5796
|
+
return dollarSymbol + value.toString() + unit;
|
|
5797
|
+
}
|
|
5711
5798
|
static GetRoundedImpressionsWithUnits(inputValue, digitsToRoundDecimalPoint = 0) {
|
|
5712
5799
|
const result = this.GetValueInUnits(Math.abs(inputValue));
|
|
5713
5800
|
let value = result[0];
|
|
@@ -5767,6 +5854,10 @@ class AnnaPersistingFilterService {
|
|
|
5767
5854
|
let key = null;
|
|
5768
5855
|
try {
|
|
5769
5856
|
hashCode = hash(val);
|
|
5857
|
+
// if (hashCode === "d909d7a911336eb2b8732b67d22cfb32c9603a7e") {
|
|
5858
|
+
// return;
|
|
5859
|
+
// // Added by Manisha, stationId with null was getting added
|
|
5860
|
+
// }
|
|
5770
5861
|
key = isFilterKey ? `filter_${hashCode}` : hashCode;
|
|
5771
5862
|
localStorage.setItem(key, JSON.stringify(val));
|
|
5772
5863
|
if (isFilterKey) {
|
|
@@ -5831,27 +5922,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
5831
5922
|
}]
|
|
5832
5923
|
}] });
|
|
5833
5924
|
|
|
5834
|
-
class LicensingPlan {
|
|
5835
|
-
constructor(data) {
|
|
5836
|
-
this.PlanId = data.PlanId;
|
|
5837
|
-
this.PlanName = data.PlanName;
|
|
5838
|
-
this.PlanStartDate = data.PlanStartDate;
|
|
5839
|
-
this.PlanEndDate = data.PlanEndDate;
|
|
5840
|
-
this.FeatureDetails = data.FeatureDetails.map((feature) => new FeatureDetails(feature));
|
|
5841
|
-
}
|
|
5842
|
-
}
|
|
5843
|
-
class FeatureDetails {
|
|
5844
|
-
constructor(data) {
|
|
5845
|
-
this.FeatureId = data.FeatureId;
|
|
5846
|
-
this.FeatureName = data.FeatureName;
|
|
5847
|
-
this.FeatureDesc = data.FeatureDesc;
|
|
5848
|
-
this.IsIncluded = data.IsIncluded;
|
|
5849
|
-
this.Specification = data.Specification.map((spec) => ({
|
|
5850
|
-
Json: JSON.parse(spec.Json),
|
|
5851
|
-
}));
|
|
5852
|
-
}
|
|
5853
|
-
}
|
|
5854
|
-
|
|
5855
5925
|
class SvgOrIconTypeInGTTable {
|
|
5856
5926
|
constructor(data) {
|
|
5857
5927
|
this.showObjectKey = data.showObjectKey;
|
|
@@ -5865,6 +5935,7 @@ var SvgOrIconNames;
|
|
|
5865
5935
|
SvgOrIconNames["DELETED_ORDER"] = "DELETED_ORDER";
|
|
5866
5936
|
SvgOrIconNames["WARNING_ICON"] = "WARNING_ICON";
|
|
5867
5937
|
SvgOrIconNames["INFORMATION_OUTLINE_ICON"] = "INFORMATION_OUTLINE_ICON";
|
|
5938
|
+
SvgOrIconNames["ALERT_OCTAGON_ICON"] = "ALERT_OCTAGON_ICON";
|
|
5868
5939
|
SvgOrIconNames["CANCEL_ICON"] = "CANCEL_ICON";
|
|
5869
5940
|
SvgOrIconNames["ALPHA_B_CIRCLE"] = "ALPHA_B_CIRCLE";
|
|
5870
5941
|
SvgOrIconNames["ALPHA_R_CIRCLE"] = "ALPHA_R_CIRCLE";
|
|
@@ -5922,7 +5993,7 @@ class Constants {
|
|
|
5922
5993
|
static { this.SUCCESS_STRING = "success"; }
|
|
5923
5994
|
static { this.BACKEND_SERVER_URL = "/server/public/index.php/api"; }
|
|
5924
5995
|
static { this.ERROR_MSG = "Error occurred please try again."; }
|
|
5925
|
-
static { this.NO_DATA_MSG = "No
|
|
5996
|
+
static { this.NO_DATA_MSG = "No data to display"; }
|
|
5926
5997
|
static { this.SERVER_ERROR = "Server error. Please try Again"; }
|
|
5927
5998
|
static { this.USER_ORIGIN = "ANNA"; }
|
|
5928
5999
|
static { this.ACTIVE_USER_STATUS = "active"; }
|
|
@@ -5980,5 +6051,5 @@ class AnnaApplicationConstants {
|
|
|
5980
6051
|
* Generated bundle index. Do not edit.
|
|
5981
6052
|
*/
|
|
5982
6053
|
|
|
5983
|
-
export { ANNAIconNames, AllSelectedStatus, AnnaApplicationConstants, AnnaBuyerApprovalIconTemplateComponent, AnnaCalendarFilterComponent, AnnaColumnCheckboxFilterComponent, AnnaColumnDateRangeFilterComponent, AnnaColumnSliderFilterComponent, AnnaColumnTimeFilterComponent, AnnaConvertArrayToCommaSeperatedValue, AnnaConvertZeroOrNullOrUndefinedPipe, AnnaCoreModule, AnnaDateFormatterPipe, AnnaDateTimeFormatService, AnnaDeletedOrderIconTemplateComponent, AnnaFilterSearchedTextPipe, AnnaFilterService, AnnaGlobalConfigService, AnnaGtHelperService, AnnaIconColumnComponent,
|
|
6054
|
+
export { ANNAIconNames, AllSelectedStatus, AnnaApplicationConstants, AnnaBuyerApprovalIconTemplateComponent, AnnaCalendarFilterComponent, AnnaCircularProgressComponent, AnnaColumnCheckboxFilterComponent, AnnaColumnDateRangeFilterComponent, AnnaColumnSliderFilterComponent, AnnaColumnTimeFilterComponent, AnnaConvertArrayToCommaSeperatedValue, AnnaConvertZeroOrNullOrUndefinedPipe, AnnaCoreModule, AnnaDateFormatterPipe, AnnaDateTimeFormatService, AnnaDeletedOrderIconTemplateComponent, AnnaFilterSearchedTextPipe, AnnaFilterService, AnnaGlobalConfigService, AnnaGtHelperService, AnnaIconColumnComponent, AnnaLiveIconTemplateComponent, AnnaNoDataComponent, AnnaNonEditableGenericTableComponent, AnnaNotifyIconTemplateComponent, AnnaNumberFormatService, AnnaPayForPerformanceIconTemplateComponent, AnnaPersistingFilterService, AnnaRejectedIconTemplateComponent, AnnaReplaceCharPipe, AnnaSortComponent, AnnaSortService, AnnaSpinnerLoaderComponent, AnnaSpinnerLoaderService, AnnaTypeofDataPipe, AnnaWeekCalendarComponent, ClickableItem, Constants, Days, DigitOnlyDirective, EllipsisWithTableTooltip, ErrorCodes, FixedRowsPopupTableDirective, GenericTooltipHtmlService, IconCellActionKey, OrderSources, RadioButtonModel, RegexPatternsService, ShowEllipsisTextOnHoverDirective, SortTypeEnum, SvgOrIconNames, SvgOrIconTypeInGTTable, TableClassNameConstant, TooltipModel, TooltipModelForColumnLevelFiltering };
|
|
5984
6055
|
//# sourceMappingURL=annalib-anna-core.mjs.map
|