@annalib/anna-core 4.4.5 → 4.5.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/esm2020/lib/anna-core-shared-lib/components/anna-no-data/anna-no-data.component.mjs +4 -4
- package/esm2020/lib/anna-core-shared-lib/models/anna-non-editable-gt-models.mjs +1 -1
- package/esm2020/lib/anna-core-shared-lib/services/anna-date-time-format.service.mjs +39 -41
- package/esm2020/lib/anna-core-shared-lib/services/anna-filter.service.mjs +34 -47
- package/esm2020/lib/anna-core-shared-lib/services/anna-generic-table.service.mjs +80 -8
- package/esm2020/lib/anna-core.module.mjs +4 -9
- package/esm2020/lib/anna-dropdown-lib/components/anna-week-calendar-filter/anna-week-calendar-filter.component.mjs +14 -16
- package/esm2020/lib/anna-generic-table-lib/components/anna-non-editable-generic-table/anna-non-editable-generic-table.component.mjs +52 -49
- package/esm2020/lib/anna-generic-table-lib/components/anna-table-virtual-scroll-viewport/anna-table-virtual-scroll-viewport.component.mjs +4 -4
- package/esm2020/public-api.mjs +1 -3
- package/fesm2015/annalib-anna-core.mjs +255 -524
- package/fesm2015/annalib-anna-core.mjs.map +1 -1
- package/fesm2020/annalib-anna-core.mjs +255 -520
- package/fesm2020/annalib-anna-core.mjs.map +1 -1
- package/lib/anna-core-shared-lib/models/anna-non-editable-gt-models.d.ts +1 -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 +4 -4
- package/lib/anna-core-shared-lib/services/anna-generic-table.service.d.ts +18 -4
- package/lib/anna-core.module.d.ts +11 -12
- package/lib/anna-generic-table-lib/components/anna-non-editable-generic-table/anna-non-editable-generic-table.component.d.ts +14 -7
- package/lib/anna-generic-table-lib/components/anna-table-virtual-scroll-viewport/anna-table-virtual-scroll-viewport.component.d.ts +2 -2
- package/package.json +2 -2
- package/public-api.d.ts +0 -2
- package/src/lib/anna-common-scss/_bootstrap-tooltip.scss +25 -0
- package/src/lib/anna-common-scss/_generic-table-common.scss +59 -0
- package/esm2020/lib/anna-core-shared-lib/directives/digits-only/digits-only.directive.mjs +0 -282
- package/esm2020/lib/anna-core-shared-lib/services/anna-number-format.service.mjs +0 -41
- package/lib/anna-core-shared-lib/directives/digits-only/digits-only.directive.d.ts +0 -34
- package/lib/anna-core-shared-lib/services/anna-number-format.service.d.ts +0 -7
|
@@ -1,35 +1,34 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { Pipe, Component, ChangeDetectionStrategy, Input, EventEmitter, Output, Directive, HostListener, Injectable, ViewChildren, ViewEncapsulation, Optional, Inject, ViewChild, forwardRef, ContentChildren, NgModule } from '@angular/core';
|
|
3
|
-
import * as
|
|
3
|
+
import * as i16 from '@angular/common';
|
|
4
4
|
import { DatePipe, CommonModule } from '@angular/common';
|
|
5
|
-
import * as
|
|
5
|
+
import * as i18 from '@angular/forms';
|
|
6
6
|
import { FormsModule } from '@angular/forms';
|
|
7
|
-
import * as
|
|
7
|
+
import * as i6 from '@angular/material/radio';
|
|
8
8
|
import { MatRadioModule } from '@angular/material/radio';
|
|
9
|
-
import * as
|
|
9
|
+
import * as i14 from '@angular/material/button-toggle';
|
|
10
10
|
import { MatButtonToggleModule } from '@angular/material/button-toggle';
|
|
11
|
-
import * as
|
|
11
|
+
import * as i4 from '@angular/material/table';
|
|
12
12
|
import { MatHeaderRowDef, MatTableModule } from '@angular/material/table';
|
|
13
13
|
import * as i2 from '@angular/cdk/scrolling';
|
|
14
14
|
import { CdkScrollable, VIRTUAL_SCROLL_STRATEGY, CdkVirtualScrollViewport, ScrollingModule } from '@angular/cdk/scrolling';
|
|
15
15
|
import * as i1 from '@ng-bootstrap/ng-bootstrap';
|
|
16
16
|
import { NgbDate, NgbModule } from '@ng-bootstrap/ng-bootstrap';
|
|
17
|
-
import * as
|
|
17
|
+
import * as i11 from '@angular-slider/ngx-slider';
|
|
18
18
|
import { NgxSliderModule } from '@angular-slider/ngx-slider';
|
|
19
|
-
import * as
|
|
19
|
+
import * as i5 from 'ngx-skeleton-loader';
|
|
20
20
|
import { NgxSkeletonLoaderModule } from 'ngx-skeleton-loader';
|
|
21
|
-
import * as
|
|
21
|
+
import * as i15 from 'ng-circle-progress';
|
|
22
22
|
import { NgCircleProgressModule } from 'ng-circle-progress';
|
|
23
23
|
import { memoize, min, max, uniq, cloneDeep, isEqual, map, sortBy } from 'lodash-es';
|
|
24
|
-
import
|
|
24
|
+
import moment from 'moment';
|
|
25
25
|
import { Subject, BehaviorSubject, animationFrameScheduler, asapScheduler, Observable, Subscription, isObservable, of } from 'rxjs';
|
|
26
|
-
import minMax from 'dayjs/plugin/minMax';
|
|
27
|
-
import isBetween from 'dayjs/plugin/isBetween';
|
|
28
26
|
import * as i1$1 from '@angular/cdk/bidi';
|
|
29
27
|
import { startWith, auditTime, takeUntil, distinctUntilChanged, pairwise, switchMap, shareReplay, map as map$1 } from 'rxjs/operators';
|
|
28
|
+
import * as i2$1 from '@angular/router';
|
|
30
29
|
import { coerceNumberProperty } from '@angular/cdk/coercion';
|
|
31
30
|
import { isDataSource, ArrayDataSource } from '@angular/cdk/collections';
|
|
32
|
-
import * as i2$
|
|
31
|
+
import * as i2$2 from '@angular/cdk/table';
|
|
33
32
|
import { _COALESCED_STYLE_SCHEDULER, STICKY_POSITIONING_LISTENER, CdkHeaderRowDef } from '@angular/cdk/table';
|
|
34
33
|
|
|
35
34
|
class AnnaFilterSearchedTextPipe {
|
|
@@ -77,7 +76,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImpor
|
|
|
77
76
|
|
|
78
77
|
class AnnaNoDataComponent {
|
|
79
78
|
constructor() {
|
|
80
|
-
this.width = "
|
|
79
|
+
this.width = "46%";
|
|
81
80
|
this.marginTop = "1.25rem";
|
|
82
81
|
}
|
|
83
82
|
ngOnInit() {
|
|
@@ -85,10 +84,10 @@ class AnnaNoDataComponent {
|
|
|
85
84
|
}
|
|
86
85
|
}
|
|
87
86
|
AnnaNoDataComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaNoDataComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
88
|
-
AnnaNoDataComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: AnnaNoDataComponent, selector: "anna-core-no-data-lib", inputs: { width: "width", marginTop: "marginTop" }, ngImport: i0, template: "<div [style.
|
|
87
|
+
AnnaNoDataComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: AnnaNoDataComponent, selector: "anna-core-no-data-lib", inputs: { width: "width", marginTop: "marginTop" }, ngImport: i0, template: "<div [style.width]=\"width\" [style.marginTop]=\"marginTop\" class=\"no-data\">\r\n <label>{{ message }}</label>\r\n</div>\r\n", styles: ["div{right:0;position:absolute;width:46%;margin:20px;z-index:400}div label{margin:0;width:auto;font-weight:500;background-color:#d3d3d3;padding:5px 18px;border-radius:4px}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
89
88
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaNoDataComponent, decorators: [{
|
|
90
89
|
type: Component,
|
|
91
|
-
args: [{ selector: "anna-core-no-data-lib", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [style.
|
|
90
|
+
args: [{ selector: "anna-core-no-data-lib", changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [style.width]=\"width\" [style.marginTop]=\"marginTop\" class=\"no-data\">\r\n <label>{{ message }}</label>\r\n</div>\r\n", styles: ["div{right:0;position:absolute;width:46%;margin:20px;z-index:400}div label{margin:0;width:auto;font-weight:500;background-color:#d3d3d3;padding:5px 18px;border-radius:4px}\n"] }]
|
|
92
91
|
}], ctorParameters: function () { return []; }, propDecorators: { width: [{
|
|
93
92
|
type: Input
|
|
94
93
|
}], marginTop: [{
|
|
@@ -101,7 +100,7 @@ class AnnaPayForPerformanceIconTemplateComponent {
|
|
|
101
100
|
}
|
|
102
101
|
}
|
|
103
102
|
AnnaPayForPerformanceIconTemplateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaPayForPerformanceIconTemplateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
104
|
-
AnnaPayForPerformanceIconTemplateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: AnnaPayForPerformanceIconTemplateComponent, selector: "anna-pay-for-performance-icon-template", inputs: { color: "color", width: "width", height: "height" }, ngImport: i0, template: "<ng-container [ngTemplateOutlet]=\"PayForPerformanceIcon\"\r\n [ngTemplateOutletContext]=\"{ color: color,width: width,height:height}\"> \r\n</ng-container>\r\n\r\n<ng-template #PayForPerformanceIcon let-color=\"color\" let-width=\"width\" let-height=\"height\">\r\n <svg [attr.width]=\"width\" [attr.height]=\"height\" viewBox=\"0 0 20 20\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\r\n <g id=\"Page-1\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g id=\"02.-PAY-FOR-PERFORMANCE-MARKED\" transform=\"translate(-100.000000, -537.000000)\" [attr.fill]=\"color\" fill-rule=\"nonzero\">\r\n <g id=\"PFP\" transform=\"translate(100.000000, 537.000000)\">\r\n <path d=\"M20,3.125 L20,8.3984375 C20,8.82995605 19.6502686,9.1796875 19.21875,9.1796875 C18.7872314,9.1796875 18.4375,8.82995605 18.4375,8.3984375 L18.4375,3.125 C18.4375,2.26348875 17.7365112,1.5625 16.875,1.5625 L3.125,1.5625 C2.26348875,1.5625 1.5625,2.26348875 1.5625,3.125 L1.5625,16.875 C1.5625,17.7365112 2.26348875,18.4375 3.125,18.4375 L12.96875,18.4375 C13.4002686,18.4375 13.75,18.7872314 13.75,19.21875 C13.75,19.6502686 13.4002686,20 12.96875,20 L3.125,20 C1.40182496,20 0,18.598175 0,16.875 L0,3.125 C0,1.40182496 1.40182496,0 3.125,0 L16.875,0 C18.598175,0 20,1.40182496 20,3.125 Z M15.9622314,5.43584332 C15.9447753,5.38514929 15.9230346,5.33649554 15.8936766,5.29255022 C15.8924071,5.290196 15.891455,5.28799875 15.8901855,5.28580147 C15.8589232,5.23981585 15.8206786,5.19995115 15.7789427,5.16322545 C15.7689451,5.15427945 15.7584715,5.1459612 15.7475217,5.13764299 C15.7022947,5.10280065 15.6545285,5.07203893 15.6008908,5.04975236 C15.6008908,5.04975236 15.6008908,5.04975236 15.6005734,5.04975236 C15.5488399,5.02825056 15.4929805,5.01600867 15.4358516,5.00863213 C15.4218867,5.00674875 15.4082392,5.00549317 15.3942744,5.00455147 C15.3791987,5.0036098 15.3652338,5 15.3499994,5 L13.0749975,5 C12.7161959,5 12.4249969,5.28799875 12.4249969,5.64285714 C12.4249969,5.99771553 12.7161959,6.28571429 13.0749975,6.28571429 L13.7624492,6.28571429 L11.4499961,8.53571429 C11.4415854,8.52708216 11.4320639,8.5182931 11.4230185,8.5102888 L10.4034253,7.61160714 C9.89545371,7.12554061 9.08263561,7.13071987 8.58291595,7.62416295 L3.19264032,12.9001116 C2.937623,13.1498152 2.93555998,13.557094 3.18787956,13.8094657 C3.31530888,13.9362793 3.48225238,14 3.64998933,14 C3.8153459,14 3.98054383,13.9383196 4.10733834,13.8141741 L9.5,8.53571429 C9.50840503,8.54434641 9.51792652,8.55313547 9.52697193,8.56113977 L10.5462477,9.45982143 C10.7899979,9.69320244 11.1100788,9.82142857 11.4499961,9.82142857 C11.7970545,9.82142857 12.1233243,9.68770926 12.3651702,9.44852121 L14.6999989,7.1770194 L14.6999989,7.89285714 C14.6999989,8.24771553 14.9911979,8.53571429 15.3499994,8.53571429 C15.708801,8.53571429 16,8.24771553 16,7.89285714 L16,5.64285714 C16,5.58431572 15.9895264,5.52844239 15.9746094,5.47445244 C15.9711181,5.46126884 15.9668335,5.44871304 15.9622314,5.43584332 Z M17.7789307,14.21875 L17.0629883,14.21875 C16.71875,14.21875 16.4280701,13.9146423 16.4280701,13.5546875 L16.4280701,13.2698059 C16.4280701,12.9200745 16.7010498,12.65625 17.0629883,12.65625 L17.7400207,12.65625 C17.9388428,12.65625 18.1446838,12.7894592 18.1446838,13.0123902 C18.1446838,13.4437561 18.4945679,13.7936402 18.9259338,13.7936402 C19.3574524,13.7936402 19.7071838,13.4437561 19.7071838,13.0123902 C19.7071838,12.0761109 19.0158081,11.2947082 18.1048584,11.1273193 L18.1048584,10.625 C18.1048584,10.1934814 17.755127,9.84375 17.3236084,9.84375 C16.8920898,9.84375 16.5423584,10.1934814 16.5423584,10.625 L16.5423584,11.1541748 C16.1557007,11.2454223 15.8015442,11.4382934 15.5142212,11.7193604 C15.0959778,12.1286011 14.8655701,12.6792908 14.8655701,13.2696533 L14.8655701,13.5546875 C14.8655701,14.7824097 15.8512879,15.78125 17.0629883,15.78125 L17.7789307,15.78125 C18.1373596,15.78125 18.4181213,16.053009 18.4181213,16.3999939 L18.4181213,16.5917969 C18.4181213,16.9313049 18.1433105,17.1875 17.7789307,17.1875 L16.615448,17.1875 C16.4233398,17.1875 16.2290955,17.0666504 16.2290955,16.8359375 C16.2290955,16.4044189 15.879364,16.0546875 15.4478455,16.0546875 C15.0163269,16.0546875 14.6665955,16.4044189 14.6665955,16.8359375 C14.6665955,17.8851318 15.4847717,18.7117004 16.5423584,18.7481689 L16.5423584,19.1796875 C16.5423584,19.6112061 16.8920898,19.9609375 17.3236084,19.9609375 C17.755127,19.9609375 18.1048584,19.6112061 18.1048584,19.1796875 L18.1048584,18.7272644 C19.1795349,18.5771179 19.9806213,17.6931763 19.9806213,16.5917969 L19.9806213,16.3999939 C19.9806213,15.8096313 19.7496033,15.2581787 19.3299866,14.8472595 C18.9161682,14.4419861 18.3653259,14.21875 17.7789307,14.21875 Z\" id=\"Shape-Copy-9\"></path>\r\n </g>\r\n </g>\r\n </g>\r\n </svg>\r\n</ng-template>", styles: [""], directives: [{ type:
|
|
103
|
+
AnnaPayForPerformanceIconTemplateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: AnnaPayForPerformanceIconTemplateComponent, selector: "anna-pay-for-performance-icon-template", inputs: { color: "color", width: "width", height: "height" }, ngImport: i0, template: "<ng-container [ngTemplateOutlet]=\"PayForPerformanceIcon\"\r\n [ngTemplateOutletContext]=\"{ color: color,width: width,height:height}\"> \r\n</ng-container>\r\n\r\n<ng-template #PayForPerformanceIcon let-color=\"color\" let-width=\"width\" let-height=\"height\">\r\n <svg [attr.width]=\"width\" [attr.height]=\"height\" viewBox=\"0 0 20 20\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\r\n <g id=\"Page-1\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g id=\"02.-PAY-FOR-PERFORMANCE-MARKED\" transform=\"translate(-100.000000, -537.000000)\" [attr.fill]=\"color\" fill-rule=\"nonzero\">\r\n <g id=\"PFP\" transform=\"translate(100.000000, 537.000000)\">\r\n <path d=\"M20,3.125 L20,8.3984375 C20,8.82995605 19.6502686,9.1796875 19.21875,9.1796875 C18.7872314,9.1796875 18.4375,8.82995605 18.4375,8.3984375 L18.4375,3.125 C18.4375,2.26348875 17.7365112,1.5625 16.875,1.5625 L3.125,1.5625 C2.26348875,1.5625 1.5625,2.26348875 1.5625,3.125 L1.5625,16.875 C1.5625,17.7365112 2.26348875,18.4375 3.125,18.4375 L12.96875,18.4375 C13.4002686,18.4375 13.75,18.7872314 13.75,19.21875 C13.75,19.6502686 13.4002686,20 12.96875,20 L3.125,20 C1.40182496,20 0,18.598175 0,16.875 L0,3.125 C0,1.40182496 1.40182496,0 3.125,0 L16.875,0 C18.598175,0 20,1.40182496 20,3.125 Z M15.9622314,5.43584332 C15.9447753,5.38514929 15.9230346,5.33649554 15.8936766,5.29255022 C15.8924071,5.290196 15.891455,5.28799875 15.8901855,5.28580147 C15.8589232,5.23981585 15.8206786,5.19995115 15.7789427,5.16322545 C15.7689451,5.15427945 15.7584715,5.1459612 15.7475217,5.13764299 C15.7022947,5.10280065 15.6545285,5.07203893 15.6008908,5.04975236 C15.6008908,5.04975236 15.6008908,5.04975236 15.6005734,5.04975236 C15.5488399,5.02825056 15.4929805,5.01600867 15.4358516,5.00863213 C15.4218867,5.00674875 15.4082392,5.00549317 15.3942744,5.00455147 C15.3791987,5.0036098 15.3652338,5 15.3499994,5 L13.0749975,5 C12.7161959,5 12.4249969,5.28799875 12.4249969,5.64285714 C12.4249969,5.99771553 12.7161959,6.28571429 13.0749975,6.28571429 L13.7624492,6.28571429 L11.4499961,8.53571429 C11.4415854,8.52708216 11.4320639,8.5182931 11.4230185,8.5102888 L10.4034253,7.61160714 C9.89545371,7.12554061 9.08263561,7.13071987 8.58291595,7.62416295 L3.19264032,12.9001116 C2.937623,13.1498152 2.93555998,13.557094 3.18787956,13.8094657 C3.31530888,13.9362793 3.48225238,14 3.64998933,14 C3.8153459,14 3.98054383,13.9383196 4.10733834,13.8141741 L9.5,8.53571429 C9.50840503,8.54434641 9.51792652,8.55313547 9.52697193,8.56113977 L10.5462477,9.45982143 C10.7899979,9.69320244 11.1100788,9.82142857 11.4499961,9.82142857 C11.7970545,9.82142857 12.1233243,9.68770926 12.3651702,9.44852121 L14.6999989,7.1770194 L14.6999989,7.89285714 C14.6999989,8.24771553 14.9911979,8.53571429 15.3499994,8.53571429 C15.708801,8.53571429 16,8.24771553 16,7.89285714 L16,5.64285714 C16,5.58431572 15.9895264,5.52844239 15.9746094,5.47445244 C15.9711181,5.46126884 15.9668335,5.44871304 15.9622314,5.43584332 Z M17.7789307,14.21875 L17.0629883,14.21875 C16.71875,14.21875 16.4280701,13.9146423 16.4280701,13.5546875 L16.4280701,13.2698059 C16.4280701,12.9200745 16.7010498,12.65625 17.0629883,12.65625 L17.7400207,12.65625 C17.9388428,12.65625 18.1446838,12.7894592 18.1446838,13.0123902 C18.1446838,13.4437561 18.4945679,13.7936402 18.9259338,13.7936402 C19.3574524,13.7936402 19.7071838,13.4437561 19.7071838,13.0123902 C19.7071838,12.0761109 19.0158081,11.2947082 18.1048584,11.1273193 L18.1048584,10.625 C18.1048584,10.1934814 17.755127,9.84375 17.3236084,9.84375 C16.8920898,9.84375 16.5423584,10.1934814 16.5423584,10.625 L16.5423584,11.1541748 C16.1557007,11.2454223 15.8015442,11.4382934 15.5142212,11.7193604 C15.0959778,12.1286011 14.8655701,12.6792908 14.8655701,13.2696533 L14.8655701,13.5546875 C14.8655701,14.7824097 15.8512879,15.78125 17.0629883,15.78125 L17.7789307,15.78125 C18.1373596,15.78125 18.4181213,16.053009 18.4181213,16.3999939 L18.4181213,16.5917969 C18.4181213,16.9313049 18.1433105,17.1875 17.7789307,17.1875 L16.615448,17.1875 C16.4233398,17.1875 16.2290955,17.0666504 16.2290955,16.8359375 C16.2290955,16.4044189 15.879364,16.0546875 15.4478455,16.0546875 C15.0163269,16.0546875 14.6665955,16.4044189 14.6665955,16.8359375 C14.6665955,17.8851318 15.4847717,18.7117004 16.5423584,18.7481689 L16.5423584,19.1796875 C16.5423584,19.6112061 16.8920898,19.9609375 17.3236084,19.9609375 C17.755127,19.9609375 18.1048584,19.6112061 18.1048584,19.1796875 L18.1048584,18.7272644 C19.1795349,18.5771179 19.9806213,17.6931763 19.9806213,16.5917969 L19.9806213,16.3999939 C19.9806213,15.8096313 19.7496033,15.2581787 19.3299866,14.8472595 C18.9161682,14.4419861 18.3653259,14.21875 17.7789307,14.21875 Z\" id=\"Shape-Copy-9\"></path>\r\n </g>\r\n </g>\r\n </g>\r\n </svg>\r\n</ng-template>", styles: [""], directives: [{ type: i16.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
105
104
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaPayForPerformanceIconTemplateComponent, decorators: [{
|
|
106
105
|
type: Component,
|
|
107
106
|
args: [{ selector: 'anna-pay-for-performance-icon-template', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container [ngTemplateOutlet]=\"PayForPerformanceIcon\"\r\n [ngTemplateOutletContext]=\"{ color: color,width: width,height:height}\"> \r\n</ng-container>\r\n\r\n<ng-template #PayForPerformanceIcon let-color=\"color\" let-width=\"width\" let-height=\"height\">\r\n <svg [attr.width]=\"width\" [attr.height]=\"height\" viewBox=\"0 0 20 20\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\r\n <g id=\"Page-1\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g id=\"02.-PAY-FOR-PERFORMANCE-MARKED\" transform=\"translate(-100.000000, -537.000000)\" [attr.fill]=\"color\" fill-rule=\"nonzero\">\r\n <g id=\"PFP\" transform=\"translate(100.000000, 537.000000)\">\r\n <path d=\"M20,3.125 L20,8.3984375 C20,8.82995605 19.6502686,9.1796875 19.21875,9.1796875 C18.7872314,9.1796875 18.4375,8.82995605 18.4375,8.3984375 L18.4375,3.125 C18.4375,2.26348875 17.7365112,1.5625 16.875,1.5625 L3.125,1.5625 C2.26348875,1.5625 1.5625,2.26348875 1.5625,3.125 L1.5625,16.875 C1.5625,17.7365112 2.26348875,18.4375 3.125,18.4375 L12.96875,18.4375 C13.4002686,18.4375 13.75,18.7872314 13.75,19.21875 C13.75,19.6502686 13.4002686,20 12.96875,20 L3.125,20 C1.40182496,20 0,18.598175 0,16.875 L0,3.125 C0,1.40182496 1.40182496,0 3.125,0 L16.875,0 C18.598175,0 20,1.40182496 20,3.125 Z M15.9622314,5.43584332 C15.9447753,5.38514929 15.9230346,5.33649554 15.8936766,5.29255022 C15.8924071,5.290196 15.891455,5.28799875 15.8901855,5.28580147 C15.8589232,5.23981585 15.8206786,5.19995115 15.7789427,5.16322545 C15.7689451,5.15427945 15.7584715,5.1459612 15.7475217,5.13764299 C15.7022947,5.10280065 15.6545285,5.07203893 15.6008908,5.04975236 C15.6008908,5.04975236 15.6008908,5.04975236 15.6005734,5.04975236 C15.5488399,5.02825056 15.4929805,5.01600867 15.4358516,5.00863213 C15.4218867,5.00674875 15.4082392,5.00549317 15.3942744,5.00455147 C15.3791987,5.0036098 15.3652338,5 15.3499994,5 L13.0749975,5 C12.7161959,5 12.4249969,5.28799875 12.4249969,5.64285714 C12.4249969,5.99771553 12.7161959,6.28571429 13.0749975,6.28571429 L13.7624492,6.28571429 L11.4499961,8.53571429 C11.4415854,8.52708216 11.4320639,8.5182931 11.4230185,8.5102888 L10.4034253,7.61160714 C9.89545371,7.12554061 9.08263561,7.13071987 8.58291595,7.62416295 L3.19264032,12.9001116 C2.937623,13.1498152 2.93555998,13.557094 3.18787956,13.8094657 C3.31530888,13.9362793 3.48225238,14 3.64998933,14 C3.8153459,14 3.98054383,13.9383196 4.10733834,13.8141741 L9.5,8.53571429 C9.50840503,8.54434641 9.51792652,8.55313547 9.52697193,8.56113977 L10.5462477,9.45982143 C10.7899979,9.69320244 11.1100788,9.82142857 11.4499961,9.82142857 C11.7970545,9.82142857 12.1233243,9.68770926 12.3651702,9.44852121 L14.6999989,7.1770194 L14.6999989,7.89285714 C14.6999989,8.24771553 14.9911979,8.53571429 15.3499994,8.53571429 C15.708801,8.53571429 16,8.24771553 16,7.89285714 L16,5.64285714 C16,5.58431572 15.9895264,5.52844239 15.9746094,5.47445244 C15.9711181,5.46126884 15.9668335,5.44871304 15.9622314,5.43584332 Z M17.7789307,14.21875 L17.0629883,14.21875 C16.71875,14.21875 16.4280701,13.9146423 16.4280701,13.5546875 L16.4280701,13.2698059 C16.4280701,12.9200745 16.7010498,12.65625 17.0629883,12.65625 L17.7400207,12.65625 C17.9388428,12.65625 18.1446838,12.7894592 18.1446838,13.0123902 C18.1446838,13.4437561 18.4945679,13.7936402 18.9259338,13.7936402 C19.3574524,13.7936402 19.7071838,13.4437561 19.7071838,13.0123902 C19.7071838,12.0761109 19.0158081,11.2947082 18.1048584,11.1273193 L18.1048584,10.625 C18.1048584,10.1934814 17.755127,9.84375 17.3236084,9.84375 C16.8920898,9.84375 16.5423584,10.1934814 16.5423584,10.625 L16.5423584,11.1541748 C16.1557007,11.2454223 15.8015442,11.4382934 15.5142212,11.7193604 C15.0959778,12.1286011 14.8655701,12.6792908 14.8655701,13.2696533 L14.8655701,13.5546875 C14.8655701,14.7824097 15.8512879,15.78125 17.0629883,15.78125 L17.7789307,15.78125 C18.1373596,15.78125 18.4181213,16.053009 18.4181213,16.3999939 L18.4181213,16.5917969 C18.4181213,16.9313049 18.1433105,17.1875 17.7789307,17.1875 L16.615448,17.1875 C16.4233398,17.1875 16.2290955,17.0666504 16.2290955,16.8359375 C16.2290955,16.4044189 15.879364,16.0546875 15.4478455,16.0546875 C15.0163269,16.0546875 14.6665955,16.4044189 14.6665955,16.8359375 C14.6665955,17.8851318 15.4847717,18.7117004 16.5423584,18.7481689 L16.5423584,19.1796875 C16.5423584,19.6112061 16.8920898,19.9609375 17.3236084,19.9609375 C17.755127,19.9609375 18.1048584,19.6112061 18.1048584,19.1796875 L18.1048584,18.7272644 C19.1795349,18.5771179 19.9806213,17.6931763 19.9806213,16.5917969 L19.9806213,16.3999939 C19.9806213,15.8096313 19.7496033,15.2581787 19.3299866,14.8472595 C18.9161682,14.4419861 18.3653259,14.21875 17.7789307,14.21875 Z\" id=\"Shape-Copy-9\"></path>\r\n </g>\r\n </g>\r\n </g>\r\n </svg>\r\n</ng-template>", styles: [""] }]
|
|
@@ -119,7 +118,7 @@ class AnnaLiveIconTemplateComponent {
|
|
|
119
118
|
}
|
|
120
119
|
}
|
|
121
120
|
AnnaLiveIconTemplateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaLiveIconTemplateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
122
|
-
AnnaLiveIconTemplateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: AnnaLiveIconTemplateComponent, selector: "anna-live-icon-template", ngImport: i0, template: "<ng-container [ngTemplateOutlet]=\"liveIcon\"></ng-container>\r\n<ng-template #liveIcon>\r\n <svg width=\"15px\" height=\"15px\" viewBox=\"0 0 20 20\">\r\n <g id=\"Live-Icon\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g id=\"next\" transform=\"translate(2.000000, 2.000000)\" fill-rule=\"nonzero\">\r\n <path\r\n d=\"M8,0 C3.58171139,0 0,3.58171139 0,8 C0,12.4182886 3.58171139,16 8,16 C12.4182886,16 16,12.4182886 16,8 C15.9950435,3.58379835 12.4162343,0.00498913721 8,0 Z\"\r\n id=\"Path\"\r\n fill=\"#C2E361\"\r\n ></path>\r\n <path\r\n d=\"M8,16 C3.58171139,16 0,12.4182633 0,7.9999837 C0,3.58170409 3.58171139,0 8,0 C12.4182886,0 16,3.58170409 16,7.9999837 C15.9950435,12.416209 12.4162343,15.9950109 8,16 Z M8,0.695640832 C3.96590756,0.695640832 0.69564225,3.96589948 0.69564225,7.9999837 C0.69564225,12.0340679 3.96590756,15.3043266 8,15.3043266 C12.0340924,15.3043266 15.3043578,12.0340679 15.3043578,7.9999837 C15.2997599,3.96782339 12.0322011,0.700238655 8,0.695640832 Z\"\r\n id=\"Shape\"\r\n fill=\"#8BAC2A\"\r\n ></path>\r\n <circle id=\"Oval\" fill=\"#8BAC2A\" cx=\"8\" cy=\"8\" r=\"4\"></circle>\r\n </g>\r\n </g>\r\n </svg>\r\n</ng-template>", styles: [""], directives: [{ type:
|
|
121
|
+
AnnaLiveIconTemplateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: AnnaLiveIconTemplateComponent, selector: "anna-live-icon-template", ngImport: i0, template: "<ng-container [ngTemplateOutlet]=\"liveIcon\"></ng-container>\r\n<ng-template #liveIcon>\r\n <svg width=\"15px\" height=\"15px\" viewBox=\"0 0 20 20\">\r\n <g id=\"Live-Icon\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g id=\"next\" transform=\"translate(2.000000, 2.000000)\" fill-rule=\"nonzero\">\r\n <path\r\n d=\"M8,0 C3.58171139,0 0,3.58171139 0,8 C0,12.4182886 3.58171139,16 8,16 C12.4182886,16 16,12.4182886 16,8 C15.9950435,3.58379835 12.4162343,0.00498913721 8,0 Z\"\r\n id=\"Path\"\r\n fill=\"#C2E361\"\r\n ></path>\r\n <path\r\n d=\"M8,16 C3.58171139,16 0,12.4182633 0,7.9999837 C0,3.58170409 3.58171139,0 8,0 C12.4182886,0 16,3.58170409 16,7.9999837 C15.9950435,12.416209 12.4162343,15.9950109 8,16 Z M8,0.695640832 C3.96590756,0.695640832 0.69564225,3.96589948 0.69564225,7.9999837 C0.69564225,12.0340679 3.96590756,15.3043266 8,15.3043266 C12.0340924,15.3043266 15.3043578,12.0340679 15.3043578,7.9999837 C15.2997599,3.96782339 12.0322011,0.700238655 8,0.695640832 Z\"\r\n id=\"Shape\"\r\n fill=\"#8BAC2A\"\r\n ></path>\r\n <circle id=\"Oval\" fill=\"#8BAC2A\" cx=\"8\" cy=\"8\" r=\"4\"></circle>\r\n </g>\r\n </g>\r\n </svg>\r\n</ng-template>", styles: [""], directives: [{ type: i16.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
123
122
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaLiveIconTemplateComponent, decorators: [{
|
|
124
123
|
type: Component,
|
|
125
124
|
args: [{ selector: 'anna-live-icon-template', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container [ngTemplateOutlet]=\"liveIcon\"></ng-container>\r\n<ng-template #liveIcon>\r\n <svg width=\"15px\" height=\"15px\" viewBox=\"0 0 20 20\">\r\n <g id=\"Live-Icon\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g id=\"next\" transform=\"translate(2.000000, 2.000000)\" fill-rule=\"nonzero\">\r\n <path\r\n d=\"M8,0 C3.58171139,0 0,3.58171139 0,8 C0,12.4182886 3.58171139,16 8,16 C12.4182886,16 16,12.4182886 16,8 C15.9950435,3.58379835 12.4162343,0.00498913721 8,0 Z\"\r\n id=\"Path\"\r\n fill=\"#C2E361\"\r\n ></path>\r\n <path\r\n d=\"M8,16 C3.58171139,16 0,12.4182633 0,7.9999837 C0,3.58170409 3.58171139,0 8,0 C12.4182886,0 16,3.58170409 16,7.9999837 C15.9950435,12.416209 12.4162343,15.9950109 8,16 Z M8,0.695640832 C3.96590756,0.695640832 0.69564225,3.96589948 0.69564225,7.9999837 C0.69564225,12.0340679 3.96590756,15.3043266 8,15.3043266 C12.0340924,15.3043266 15.3043578,12.0340679 15.3043578,7.9999837 C15.2997599,3.96782339 12.0322011,0.700238655 8,0.695640832 Z\"\r\n id=\"Shape\"\r\n fill=\"#8BAC2A\"\r\n ></path>\r\n <circle id=\"Oval\" fill=\"#8BAC2A\" cx=\"8\" cy=\"8\" r=\"4\"></circle>\r\n </g>\r\n </g>\r\n </svg>\r\n</ng-template>", styles: [""] }]
|
|
@@ -131,7 +130,7 @@ class AnnaRejectedIconTemplateComponent {
|
|
|
131
130
|
}
|
|
132
131
|
}
|
|
133
132
|
AnnaRejectedIconTemplateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaRejectedIconTemplateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
134
|
-
AnnaRejectedIconTemplateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: AnnaRejectedIconTemplateComponent, selector: "anna-rejected-icon-template", ngImport: i0, template: "<ng-container [ngTemplateOutlet]=\"rejectedIcon\"></ng-container>\r\n\r\n<ng-template #rejectedIcon>\r\n <svg width=\"15px\" height=\"15px\" viewBox=\"0 0 20 20\">\r\n <g id=\"Buyer-rejected-icon\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <path\r\n d=\"M15.7822266,4.21777344 C14.3671875,2.80276367 12.4951465,2 10.5,2 C6.37918945,2 3,5.37253906 3,9.5 C3,13.6296289 6.37133789,17 10.5,17 C14.6105273,17 18,13.6429004 18,9.5 C18,7.50485352 17.1972656,5.6327832 15.7822266,4.21777344 Z M10.5,15.2128906 C7.34220703,15.2128906 4.78710938,12.664502 4.78710938,9.5 C4.78710938,8.26950195 5.17382812,7.10055664 5.88574219,6.13375977 L13.8662402,14.1054395 C12.8993848,14.8261719 11.730498,15.2128906 10.5,15.2128906 Z M15.1054688,12.8661816 L7.13375977,4.88574219 C8.10061523,4.17382813 9.26950195,3.78710938 10.5,3.78710938 C13.6578809,3.78710938 16.2128906,6.33549805 16.2128906,9.5 C16.2128906,10.7304395 15.8261719,11.8993848 15.1054688,12.8661816 Z\"\r\n id=\"Shape\"\r\n fill=\"#4A4A4A\"\r\n fill-rule=\"nonzero\"\r\n ></path>\r\n </g>\r\n </svg>\r\n</ng-template>\r\n", styles: [""], directives: [{ type:
|
|
133
|
+
AnnaRejectedIconTemplateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: AnnaRejectedIconTemplateComponent, selector: "anna-rejected-icon-template", ngImport: i0, template: "<ng-container [ngTemplateOutlet]=\"rejectedIcon\"></ng-container>\r\n\r\n<ng-template #rejectedIcon>\r\n <svg width=\"15px\" height=\"15px\" viewBox=\"0 0 20 20\">\r\n <g id=\"Buyer-rejected-icon\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <path\r\n d=\"M15.7822266,4.21777344 C14.3671875,2.80276367 12.4951465,2 10.5,2 C6.37918945,2 3,5.37253906 3,9.5 C3,13.6296289 6.37133789,17 10.5,17 C14.6105273,17 18,13.6429004 18,9.5 C18,7.50485352 17.1972656,5.6327832 15.7822266,4.21777344 Z M10.5,15.2128906 C7.34220703,15.2128906 4.78710938,12.664502 4.78710938,9.5 C4.78710938,8.26950195 5.17382812,7.10055664 5.88574219,6.13375977 L13.8662402,14.1054395 C12.8993848,14.8261719 11.730498,15.2128906 10.5,15.2128906 Z M15.1054688,12.8661816 L7.13375977,4.88574219 C8.10061523,4.17382813 9.26950195,3.78710938 10.5,3.78710938 C13.6578809,3.78710938 16.2128906,6.33549805 16.2128906,9.5 C16.2128906,10.7304395 15.8261719,11.8993848 15.1054688,12.8661816 Z\"\r\n id=\"Shape\"\r\n fill=\"#4A4A4A\"\r\n fill-rule=\"nonzero\"\r\n ></path>\r\n </g>\r\n </svg>\r\n</ng-template>\r\n", styles: [""], directives: [{ type: i16.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
135
134
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaRejectedIconTemplateComponent, decorators: [{
|
|
136
135
|
type: Component,
|
|
137
136
|
args: [{ selector: 'anna-rejected-icon-template', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container [ngTemplateOutlet]=\"rejectedIcon\"></ng-container>\r\n\r\n<ng-template #rejectedIcon>\r\n <svg width=\"15px\" height=\"15px\" viewBox=\"0 0 20 20\">\r\n <g id=\"Buyer-rejected-icon\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <path\r\n d=\"M15.7822266,4.21777344 C14.3671875,2.80276367 12.4951465,2 10.5,2 C6.37918945,2 3,5.37253906 3,9.5 C3,13.6296289 6.37133789,17 10.5,17 C14.6105273,17 18,13.6429004 18,9.5 C18,7.50485352 17.1972656,5.6327832 15.7822266,4.21777344 Z M10.5,15.2128906 C7.34220703,15.2128906 4.78710938,12.664502 4.78710938,9.5 C4.78710938,8.26950195 5.17382812,7.10055664 5.88574219,6.13375977 L13.8662402,14.1054395 C12.8993848,14.8261719 11.730498,15.2128906 10.5,15.2128906 Z M15.1054688,12.8661816 L7.13375977,4.88574219 C8.10061523,4.17382813 9.26950195,3.78710938 10.5,3.78710938 C13.6578809,3.78710938 16.2128906,6.33549805 16.2128906,9.5 C16.2128906,10.7304395 15.8261719,11.8993848 15.1054688,12.8661816 Z\"\r\n id=\"Shape\"\r\n fill=\"#4A4A4A\"\r\n fill-rule=\"nonzero\"\r\n ></path>\r\n </g>\r\n </svg>\r\n</ng-template>\r\n", styles: [""] }]
|
|
@@ -143,7 +142,7 @@ class AnnaNotifyIconTemplateComponent {
|
|
|
143
142
|
}
|
|
144
143
|
}
|
|
145
144
|
AnnaNotifyIconTemplateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaNotifyIconTemplateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
146
|
-
AnnaNotifyIconTemplateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: AnnaNotifyIconTemplateComponent, selector: "anna-notify-icon-template", ngImport: i0, template: "<ng-container [ngTemplateOutlet]=\"notifyIcon\"></ng-container>\r\n\r\n<ng-template #notifyIcon>\r\n <svg width=\"15px\" height=\"15px\" viewBox=\"0 0 20 20\">\r\n <g id=\"Notify-buyer-icon\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g id=\"notification\" transform=\"translate(3.000000, 1.000000)\" fill=\"#4A4A4A\" fill-rule=\"nonzero\">\r\n <path\r\n d=\"M12.6666669,8.66366455 L12.6666669,7.08618164 C12.6666669,4.78491943 11.1196383,2.8344397 9.0000114,2.19737549 L9.0000114,1.4831543 C9.0000114,0.665343018 8.32711346,8.52651283e-13 7.50001599,8.52651283e-13 C6.67291852,8.52651283e-13 6.00002058,0.665343018 6.00002058,1.4831543 L6.00002058,2.19737549 C3.8803604,2.8344397 2.33336513,4.78488647 2.33336513,7.08618164 L2.33336513,8.66366455 C2.33336513,10.685105 1.55410085,12.6018677 0.139138508,14.060896 C0.000472265053,14.2038721 -0.0384942824,14.4148425 0.0401054772,14.5970398 C0.118705237,14.7792371 0.299704683,14.8974609 0.500037404,14.8974609 L5.05032349,14.8974609 C5.28258944,16.0243945 6.29271969,16.875 7.50001599,16.875 C8.70734563,16.875 9.71740921,16.0243945 9.9497085,14.8974609 L14.5,14.8974609 C14.7003273,14.8974609 14.8812934,14.7792371 14.9598932,14.5970398 C15.0384929,14.4148425 14.9995264,14.2038721 14.8608935,14.060896 C13.4459311,12.6018677 12.6666669,10.685072 12.6666669,8.66366455 Z M7.00001752,1.4831543 C7.00001752,1.21055054 7.22431684,0.988769531 7.50001752,0.988769531 C7.77571515,0.988769531 8.00001752,1.21055054 8.00001752,1.4831543 L8.00001752,2.0015332 C7.8354483,1.98584473 7.66868214,1.97753906 7.50001752,1.97753906 C7.33134984,1.97753906 7.16458369,1.98584473 7.00001752,2.0015332 L7.00001752,1.4831543 Z M7.50001599,15.8862305 C6.84818465,15.8862305 6.29241969,15.4728918 6.08602032,14.8974609 L8.91401167,14.8974609 C8.7076123,15.4728918 8.15184733,15.8862305 7.50001599,15.8862305 L7.50001599,15.8862305 Z M1.57770077,13.9086914 C2.71639729,12.3994336 3.33336207,10.5729785 3.33336207,8.66366455 L3.33336207,7.08618164 C3.33336207,4.81448364 5.20252302,2.96630859 7.50001599,2.96630859 C9.79750897,2.96630859 11.6666699,4.81448364 11.6666699,7.08618164 L11.6666699,8.66366455 C11.6666699,10.5729785 12.2836347,12.3994336 13.4223645,13.9086914\"\r\n id=\"Shape\"\r\n ></path>\r\n <path\r\n d=\"M13.7705926,7.02729272 C13.7705926,7.28835319 14.0458159,7.5 14.3852963,7.5 C14.7247767,7.5 15,7.28835319 15,7.02729272 C15,5.13331221 14.0408983,3.3526869 12.2993607,2.01344415 C12.0593394,1.82886771 11.670109,1.82883619 11.4300467,2.01344415 C11.1899844,2.1980521 11.1899844,2.49733883 11.4300467,2.68194678 C12.9393902,3.84263224 13.7705926,5.38583244 13.7705926,7.02729272 L13.7705926,7.02729272 Z\"\r\n id=\"Path\"\r\n ></path>\r\n <path\r\n d=\"M0.614703713,7.5 C0.954184083,7.5 1.22940743,7.28835245 1.22940743,7.02729106 C1.22940743,5.38585655 2.06065077,3.84265095 3.56995328,2.68196143 C3.81001557,2.49735283 3.81001557,2.19806504 3.56995328,2.01345645 C3.32993197,1.82884785 2.94070158,1.82884785 2.70063929,2.01345645 C0.959101713,3.3527039 0,5.13330392 0,7.02729106 C0,7.28835245 0.275223342,7.5 0.614703713,7.5 Z\"\r\n id=\"Path\"\r\n ></path>\r\n </g>\r\n </g>\r\n </svg>\r\n</ng-template>\r\n\r\n", styles: [""], directives: [{ type:
|
|
145
|
+
AnnaNotifyIconTemplateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: AnnaNotifyIconTemplateComponent, selector: "anna-notify-icon-template", ngImport: i0, template: "<ng-container [ngTemplateOutlet]=\"notifyIcon\"></ng-container>\r\n\r\n<ng-template #notifyIcon>\r\n <svg width=\"15px\" height=\"15px\" viewBox=\"0 0 20 20\">\r\n <g id=\"Notify-buyer-icon\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g id=\"notification\" transform=\"translate(3.000000, 1.000000)\" fill=\"#4A4A4A\" fill-rule=\"nonzero\">\r\n <path\r\n d=\"M12.6666669,8.66366455 L12.6666669,7.08618164 C12.6666669,4.78491943 11.1196383,2.8344397 9.0000114,2.19737549 L9.0000114,1.4831543 C9.0000114,0.665343018 8.32711346,8.52651283e-13 7.50001599,8.52651283e-13 C6.67291852,8.52651283e-13 6.00002058,0.665343018 6.00002058,1.4831543 L6.00002058,2.19737549 C3.8803604,2.8344397 2.33336513,4.78488647 2.33336513,7.08618164 L2.33336513,8.66366455 C2.33336513,10.685105 1.55410085,12.6018677 0.139138508,14.060896 C0.000472265053,14.2038721 -0.0384942824,14.4148425 0.0401054772,14.5970398 C0.118705237,14.7792371 0.299704683,14.8974609 0.500037404,14.8974609 L5.05032349,14.8974609 C5.28258944,16.0243945 6.29271969,16.875 7.50001599,16.875 C8.70734563,16.875 9.71740921,16.0243945 9.9497085,14.8974609 L14.5,14.8974609 C14.7003273,14.8974609 14.8812934,14.7792371 14.9598932,14.5970398 C15.0384929,14.4148425 14.9995264,14.2038721 14.8608935,14.060896 C13.4459311,12.6018677 12.6666669,10.685072 12.6666669,8.66366455 Z M7.00001752,1.4831543 C7.00001752,1.21055054 7.22431684,0.988769531 7.50001752,0.988769531 C7.77571515,0.988769531 8.00001752,1.21055054 8.00001752,1.4831543 L8.00001752,2.0015332 C7.8354483,1.98584473 7.66868214,1.97753906 7.50001752,1.97753906 C7.33134984,1.97753906 7.16458369,1.98584473 7.00001752,2.0015332 L7.00001752,1.4831543 Z M7.50001599,15.8862305 C6.84818465,15.8862305 6.29241969,15.4728918 6.08602032,14.8974609 L8.91401167,14.8974609 C8.7076123,15.4728918 8.15184733,15.8862305 7.50001599,15.8862305 L7.50001599,15.8862305 Z M1.57770077,13.9086914 C2.71639729,12.3994336 3.33336207,10.5729785 3.33336207,8.66366455 L3.33336207,7.08618164 C3.33336207,4.81448364 5.20252302,2.96630859 7.50001599,2.96630859 C9.79750897,2.96630859 11.6666699,4.81448364 11.6666699,7.08618164 L11.6666699,8.66366455 C11.6666699,10.5729785 12.2836347,12.3994336 13.4223645,13.9086914\"\r\n id=\"Shape\"\r\n ></path>\r\n <path\r\n d=\"M13.7705926,7.02729272 C13.7705926,7.28835319 14.0458159,7.5 14.3852963,7.5 C14.7247767,7.5 15,7.28835319 15,7.02729272 C15,5.13331221 14.0408983,3.3526869 12.2993607,2.01344415 C12.0593394,1.82886771 11.670109,1.82883619 11.4300467,2.01344415 C11.1899844,2.1980521 11.1899844,2.49733883 11.4300467,2.68194678 C12.9393902,3.84263224 13.7705926,5.38583244 13.7705926,7.02729272 L13.7705926,7.02729272 Z\"\r\n id=\"Path\"\r\n ></path>\r\n <path\r\n d=\"M0.614703713,7.5 C0.954184083,7.5 1.22940743,7.28835245 1.22940743,7.02729106 C1.22940743,5.38585655 2.06065077,3.84265095 3.56995328,2.68196143 C3.81001557,2.49735283 3.81001557,2.19806504 3.56995328,2.01345645 C3.32993197,1.82884785 2.94070158,1.82884785 2.70063929,2.01345645 C0.959101713,3.3527039 0,5.13330392 0,7.02729106 C0,7.28835245 0.275223342,7.5 0.614703713,7.5 Z\"\r\n id=\"Path\"\r\n ></path>\r\n </g>\r\n </g>\r\n </svg>\r\n</ng-template>\r\n\r\n", styles: [""], directives: [{ type: i16.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
147
146
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaNotifyIconTemplateComponent, decorators: [{
|
|
148
147
|
type: Component,
|
|
149
148
|
args: [{ selector: 'anna-notify-icon-template', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container [ngTemplateOutlet]=\"notifyIcon\"></ng-container>\r\n\r\n<ng-template #notifyIcon>\r\n <svg width=\"15px\" height=\"15px\" viewBox=\"0 0 20 20\">\r\n <g id=\"Notify-buyer-icon\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g id=\"notification\" transform=\"translate(3.000000, 1.000000)\" fill=\"#4A4A4A\" fill-rule=\"nonzero\">\r\n <path\r\n d=\"M12.6666669,8.66366455 L12.6666669,7.08618164 C12.6666669,4.78491943 11.1196383,2.8344397 9.0000114,2.19737549 L9.0000114,1.4831543 C9.0000114,0.665343018 8.32711346,8.52651283e-13 7.50001599,8.52651283e-13 C6.67291852,8.52651283e-13 6.00002058,0.665343018 6.00002058,1.4831543 L6.00002058,2.19737549 C3.8803604,2.8344397 2.33336513,4.78488647 2.33336513,7.08618164 L2.33336513,8.66366455 C2.33336513,10.685105 1.55410085,12.6018677 0.139138508,14.060896 C0.000472265053,14.2038721 -0.0384942824,14.4148425 0.0401054772,14.5970398 C0.118705237,14.7792371 0.299704683,14.8974609 0.500037404,14.8974609 L5.05032349,14.8974609 C5.28258944,16.0243945 6.29271969,16.875 7.50001599,16.875 C8.70734563,16.875 9.71740921,16.0243945 9.9497085,14.8974609 L14.5,14.8974609 C14.7003273,14.8974609 14.8812934,14.7792371 14.9598932,14.5970398 C15.0384929,14.4148425 14.9995264,14.2038721 14.8608935,14.060896 C13.4459311,12.6018677 12.6666669,10.685072 12.6666669,8.66366455 Z M7.00001752,1.4831543 C7.00001752,1.21055054 7.22431684,0.988769531 7.50001752,0.988769531 C7.77571515,0.988769531 8.00001752,1.21055054 8.00001752,1.4831543 L8.00001752,2.0015332 C7.8354483,1.98584473 7.66868214,1.97753906 7.50001752,1.97753906 C7.33134984,1.97753906 7.16458369,1.98584473 7.00001752,2.0015332 L7.00001752,1.4831543 Z M7.50001599,15.8862305 C6.84818465,15.8862305 6.29241969,15.4728918 6.08602032,14.8974609 L8.91401167,14.8974609 C8.7076123,15.4728918 8.15184733,15.8862305 7.50001599,15.8862305 L7.50001599,15.8862305 Z M1.57770077,13.9086914 C2.71639729,12.3994336 3.33336207,10.5729785 3.33336207,8.66366455 L3.33336207,7.08618164 C3.33336207,4.81448364 5.20252302,2.96630859 7.50001599,2.96630859 C9.79750897,2.96630859 11.6666699,4.81448364 11.6666699,7.08618164 L11.6666699,8.66366455 C11.6666699,10.5729785 12.2836347,12.3994336 13.4223645,13.9086914\"\r\n id=\"Shape\"\r\n ></path>\r\n <path\r\n d=\"M13.7705926,7.02729272 C13.7705926,7.28835319 14.0458159,7.5 14.3852963,7.5 C14.7247767,7.5 15,7.28835319 15,7.02729272 C15,5.13331221 14.0408983,3.3526869 12.2993607,2.01344415 C12.0593394,1.82886771 11.670109,1.82883619 11.4300467,2.01344415 C11.1899844,2.1980521 11.1899844,2.49733883 11.4300467,2.68194678 C12.9393902,3.84263224 13.7705926,5.38583244 13.7705926,7.02729272 L13.7705926,7.02729272 Z\"\r\n id=\"Path\"\r\n ></path>\r\n <path\r\n d=\"M0.614703713,7.5 C0.954184083,7.5 1.22940743,7.28835245 1.22940743,7.02729106 C1.22940743,5.38585655 2.06065077,3.84265095 3.56995328,2.68196143 C3.81001557,2.49735283 3.81001557,2.19806504 3.56995328,2.01345645 C3.32993197,1.82884785 2.94070158,1.82884785 2.70063929,2.01345645 C0.959101713,3.3527039 0,5.13330392 0,7.02729106 C0,7.28835245 0.275223342,7.5 0.614703713,7.5 Z\"\r\n id=\"Path\"\r\n ></path>\r\n </g>\r\n </g>\r\n </svg>\r\n</ng-template>\r\n\r\n", styles: [""] }]
|
|
@@ -155,7 +154,7 @@ class AnnaBuyerApprovalIconTemplateComponent {
|
|
|
155
154
|
}
|
|
156
155
|
}
|
|
157
156
|
AnnaBuyerApprovalIconTemplateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaBuyerApprovalIconTemplateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
158
|
-
AnnaBuyerApprovalIconTemplateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: AnnaBuyerApprovalIconTemplateComponent, selector: "anna-buyer-approval-icon-template", ngImport: i0, template: "<ng-container [ngTemplateOutlet]=\"buyerApprovalIcon\"></ng-container>\r\n\r\n<ng-template #buyerApprovalIcon>\r\n <svg width=\"15px\" height=\"15px\" viewBox=\"0 0 20 20\">\r\n <g id=\"Awaiting-Buyer-Approval-icon\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g id=\"time-left\" transform=\"translate(3.000000, 2.000000)\" fill=\"#4A4A4A\" fill-rule=\"nonzero\">\r\n <path\r\n d=\"M6.23157622,14.1696467 C5.70535057,14.0721422 5.2005579,13.9061054 4.72188769,13.6745242 C4.71622258,13.6714711 4.71115545,13.6679958 4.70520709,13.6652025 C4.59240848,13.6104091 4.47979871,13.551718 4.37065094,13.4903961 C4.37027327,13.4899414 4.36958087,13.4896491 4.36898288,13.4893893 C4.16872129,13.37558 3.97327504,13.2496557 3.78339947,13.1117139 C1.01467199,11.0989392 0.348958764,7.13679055 2.29945571,4.27950803 C2.72358352,3.65842885 3.23684237,3.14027823 3.80904983,2.72960334 C3.81609974,2.72453649 3.82314965,2.71950212 3.83013662,2.71440279 C5.84650619,1.28061347 8.58442178,1.183986 10.7254867,2.65733574 L10.2656372,3.34301728 C10.1377946,3.53386873 10.2164452,3.67294733 10.4402485,3.65216024 L12.4377343,3.46760989 C12.6618209,3.4468228 12.7958322,3.24677957 12.7355617,3.0234483 L12.1991703,1.02899228 C12.1391202,0.805401178 11.9853754,0.778637804 11.8574069,0.969456765 L11.3964873,1.6567623 C9.82523796,0.568265989 7.94067659,0.153206329 6.0701521,0.487943386 C5.88175576,0.521592483 5.69600314,0.562776899 5.51279981,0.610717118 C5.51138354,0.610976957 5.51025052,0.611139356 5.50911749,0.611399194 C5.50203611,0.613185585 5.4948603,0.615556612 5.48796775,0.617537881 C3.8749854,1.04500483 2.46767797,2.01585923 1.46347449,3.40105873 C1.4550083,3.41141979 1.44629033,3.4215535 1.43829623,3.432824 C1.40490356,3.47923766 1.37176268,3.52672316 1.33931419,3.57420867 C1.28625101,3.65203032 1.23394317,3.73180077 1.18390138,3.81157121 C1.17763828,3.82118524 1.17285441,3.83096167 1.16737814,3.84067314 C0.338698623,5.1658824 -0.0610062726,6.69795566 0.00754154337,8.25770173 C0.00769890751,8.26283354 0.00741565207,8.26799784 0.00754154337,8.27325957 C0.0141823097,8.42562242 0.0258902012,8.58009646 0.0417839785,8.73216699 C0.0426337448,8.7419759 0.0447424242,8.75126512 0.0463475384,8.76107403 C0.0627763537,8.91398904 0.0833910551,9.06726132 0.109230246,9.22050113 C0.371839509,10.7840149 1.08652445,12.1909434 2.15745032,13.2856758 C2.15993667,13.2882417 2.16251744,13.291035 2.16503527,13.2936983 C2.16591651,13.2947052 2.16689216,13.2952249 2.16774193,13.2961668 C2.45546651,13.5890373 2.7684323,13.8599191 3.10541185,14.1048494 C3.98728044,14.7461311 4.9692641,15.1700252 6.02385557,15.3653264 C6.3438398,15.424667 6.64950389,15.2048436 6.70691032,14.8747836 C6.76428528,14.5444963 6.55146603,14.2287924 6.23157622,14.1696467 Z\"\r\n id=\"Path\"\r\n ></path>\r\n <path\r\n d=\"M9.22237925,14.6588011 C9.29073073,14.9263505 9.1292489,15.198652 8.86169949,15.2670034 C8.51639563,15.355219 8.1641424,15.4188128 7.8069689,15.4570516 C7.53239558,15.4864472 7.28598003,15.2876915 7.25658436,15.0131182 C7.22718869,14.7385449 7.42594445,14.4921293 7.70051776,14.4627336 C8.01004537,14.4295958 8.31515603,14.3745129 8.61417689,14.2981213 C8.8817263,14.2297698 9.15402777,14.3912517 9.22237925,14.6588011 Z M12.5552524,12.2886551 C12.7611952,12.4726175 12.7790139,12.7886982 12.5950515,12.994641 C12.3569806,13.2611574 12.1001968,13.5104915 11.8267859,13.7406023 C11.6155121,13.9184167 11.3000937,13.8912925 11.1222793,13.6800187 C10.9444648,13.4687448 10.9715891,13.1533264 11.1828629,12.975512 C11.4200152,12.7759175 11.6427598,12.5596351 11.8492666,12.3284542 C12.033229,12.1225114 12.3493096,12.1046927 12.5552524,12.2886551 Z M13.9945063,8.57622811 C14.2674538,8.61811209 14.4547678,8.87333344 14.4128838,9.14628095 C14.3584322,9.50112883 14.2787427,9.85020038 14.1746496,10.1914009 C14.0940709,10.4555252 13.8146338,10.6043183 13.5505094,10.5237395 C13.2863851,10.4431608 13.137592,10.1637237 13.2181708,9.89959931 C13.3082912,9.6041989 13.3772907,9.30195366 13.4244534,8.99460564 C13.4663374,8.72165813 13.7215588,8.53434413 13.9945063,8.57622811 Z M13.8741743,4.99628976 C14.0173723,5.32357494 14.1370467,5.66111195 14.2320931,6.00667963 C14.305325,6.27293459 14.1488489,6.54814305 13.8825939,6.62137492 C13.6163389,6.6946068 13.3411305,6.53813067 13.2678986,6.27187571 C13.1856167,5.97271686 13.0820133,5.68050756 12.958028,5.39713383 C12.847338,5.14414702 12.9626923,4.84932868 13.2156791,4.73863865 C13.4686659,4.62794862 13.7634843,4.74330295 13.8741743,4.99628976 Z\"\r\n id=\"Combined-Shape\"\r\n ></path>\r\n <path\r\n d=\"M6.49684035,4 C6.22234237,4 6,4.21290493 6,4.47514225 L6,9.20888548 L10.5252942,11.4469308 C10.5981282,11.4830116 10.6761155,11.5 10.7528554,11.5 C10.9325937,11.5 11.106194,11.4063595 11.1944548,11.2429754 C11.3203307,11.0097848 11.2250786,10.7233052 10.9813357,10.6028789 L6.9931227,8.63027395 L6.9931227,4.47514225 C6.99308988,4.21290493 6.77101009,4 6.49684035,4 Z\"\r\n id=\"Path\"\r\n ></path>\r\n </g>\r\n </g>\r\n </svg>\r\n</ng-template>\r\n", styles: [""], directives: [{ type:
|
|
157
|
+
AnnaBuyerApprovalIconTemplateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: AnnaBuyerApprovalIconTemplateComponent, selector: "anna-buyer-approval-icon-template", ngImport: i0, template: "<ng-container [ngTemplateOutlet]=\"buyerApprovalIcon\"></ng-container>\r\n\r\n<ng-template #buyerApprovalIcon>\r\n <svg width=\"15px\" height=\"15px\" viewBox=\"0 0 20 20\">\r\n <g id=\"Awaiting-Buyer-Approval-icon\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g id=\"time-left\" transform=\"translate(3.000000, 2.000000)\" fill=\"#4A4A4A\" fill-rule=\"nonzero\">\r\n <path\r\n d=\"M6.23157622,14.1696467 C5.70535057,14.0721422 5.2005579,13.9061054 4.72188769,13.6745242 C4.71622258,13.6714711 4.71115545,13.6679958 4.70520709,13.6652025 C4.59240848,13.6104091 4.47979871,13.551718 4.37065094,13.4903961 C4.37027327,13.4899414 4.36958087,13.4896491 4.36898288,13.4893893 C4.16872129,13.37558 3.97327504,13.2496557 3.78339947,13.1117139 C1.01467199,11.0989392 0.348958764,7.13679055 2.29945571,4.27950803 C2.72358352,3.65842885 3.23684237,3.14027823 3.80904983,2.72960334 C3.81609974,2.72453649 3.82314965,2.71950212 3.83013662,2.71440279 C5.84650619,1.28061347 8.58442178,1.183986 10.7254867,2.65733574 L10.2656372,3.34301728 C10.1377946,3.53386873 10.2164452,3.67294733 10.4402485,3.65216024 L12.4377343,3.46760989 C12.6618209,3.4468228 12.7958322,3.24677957 12.7355617,3.0234483 L12.1991703,1.02899228 C12.1391202,0.805401178 11.9853754,0.778637804 11.8574069,0.969456765 L11.3964873,1.6567623 C9.82523796,0.568265989 7.94067659,0.153206329 6.0701521,0.487943386 C5.88175576,0.521592483 5.69600314,0.562776899 5.51279981,0.610717118 C5.51138354,0.610976957 5.51025052,0.611139356 5.50911749,0.611399194 C5.50203611,0.613185585 5.4948603,0.615556612 5.48796775,0.617537881 C3.8749854,1.04500483 2.46767797,2.01585923 1.46347449,3.40105873 C1.4550083,3.41141979 1.44629033,3.4215535 1.43829623,3.432824 C1.40490356,3.47923766 1.37176268,3.52672316 1.33931419,3.57420867 C1.28625101,3.65203032 1.23394317,3.73180077 1.18390138,3.81157121 C1.17763828,3.82118524 1.17285441,3.83096167 1.16737814,3.84067314 C0.338698623,5.1658824 -0.0610062726,6.69795566 0.00754154337,8.25770173 C0.00769890751,8.26283354 0.00741565207,8.26799784 0.00754154337,8.27325957 C0.0141823097,8.42562242 0.0258902012,8.58009646 0.0417839785,8.73216699 C0.0426337448,8.7419759 0.0447424242,8.75126512 0.0463475384,8.76107403 C0.0627763537,8.91398904 0.0833910551,9.06726132 0.109230246,9.22050113 C0.371839509,10.7840149 1.08652445,12.1909434 2.15745032,13.2856758 C2.15993667,13.2882417 2.16251744,13.291035 2.16503527,13.2936983 C2.16591651,13.2947052 2.16689216,13.2952249 2.16774193,13.2961668 C2.45546651,13.5890373 2.7684323,13.8599191 3.10541185,14.1048494 C3.98728044,14.7461311 4.9692641,15.1700252 6.02385557,15.3653264 C6.3438398,15.424667 6.64950389,15.2048436 6.70691032,14.8747836 C6.76428528,14.5444963 6.55146603,14.2287924 6.23157622,14.1696467 Z\"\r\n id=\"Path\"\r\n ></path>\r\n <path\r\n d=\"M9.22237925,14.6588011 C9.29073073,14.9263505 9.1292489,15.198652 8.86169949,15.2670034 C8.51639563,15.355219 8.1641424,15.4188128 7.8069689,15.4570516 C7.53239558,15.4864472 7.28598003,15.2876915 7.25658436,15.0131182 C7.22718869,14.7385449 7.42594445,14.4921293 7.70051776,14.4627336 C8.01004537,14.4295958 8.31515603,14.3745129 8.61417689,14.2981213 C8.8817263,14.2297698 9.15402777,14.3912517 9.22237925,14.6588011 Z M12.5552524,12.2886551 C12.7611952,12.4726175 12.7790139,12.7886982 12.5950515,12.994641 C12.3569806,13.2611574 12.1001968,13.5104915 11.8267859,13.7406023 C11.6155121,13.9184167 11.3000937,13.8912925 11.1222793,13.6800187 C10.9444648,13.4687448 10.9715891,13.1533264 11.1828629,12.975512 C11.4200152,12.7759175 11.6427598,12.5596351 11.8492666,12.3284542 C12.033229,12.1225114 12.3493096,12.1046927 12.5552524,12.2886551 Z M13.9945063,8.57622811 C14.2674538,8.61811209 14.4547678,8.87333344 14.4128838,9.14628095 C14.3584322,9.50112883 14.2787427,9.85020038 14.1746496,10.1914009 C14.0940709,10.4555252 13.8146338,10.6043183 13.5505094,10.5237395 C13.2863851,10.4431608 13.137592,10.1637237 13.2181708,9.89959931 C13.3082912,9.6041989 13.3772907,9.30195366 13.4244534,8.99460564 C13.4663374,8.72165813 13.7215588,8.53434413 13.9945063,8.57622811 Z M13.8741743,4.99628976 C14.0173723,5.32357494 14.1370467,5.66111195 14.2320931,6.00667963 C14.305325,6.27293459 14.1488489,6.54814305 13.8825939,6.62137492 C13.6163389,6.6946068 13.3411305,6.53813067 13.2678986,6.27187571 C13.1856167,5.97271686 13.0820133,5.68050756 12.958028,5.39713383 C12.847338,5.14414702 12.9626923,4.84932868 13.2156791,4.73863865 C13.4686659,4.62794862 13.7634843,4.74330295 13.8741743,4.99628976 Z\"\r\n id=\"Combined-Shape\"\r\n ></path>\r\n <path\r\n d=\"M6.49684035,4 C6.22234237,4 6,4.21290493 6,4.47514225 L6,9.20888548 L10.5252942,11.4469308 C10.5981282,11.4830116 10.6761155,11.5 10.7528554,11.5 C10.9325937,11.5 11.106194,11.4063595 11.1944548,11.2429754 C11.3203307,11.0097848 11.2250786,10.7233052 10.9813357,10.6028789 L6.9931227,8.63027395 L6.9931227,4.47514225 C6.99308988,4.21290493 6.77101009,4 6.49684035,4 Z\"\r\n id=\"Path\"\r\n ></path>\r\n </g>\r\n </g>\r\n </svg>\r\n</ng-template>\r\n", styles: [""], directives: [{ type: i16.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
159
158
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaBuyerApprovalIconTemplateComponent, decorators: [{
|
|
160
159
|
type: Component,
|
|
161
160
|
args: [{ selector: 'anna-buyer-approval-icon-template', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container [ngTemplateOutlet]=\"buyerApprovalIcon\"></ng-container>\r\n\r\n<ng-template #buyerApprovalIcon>\r\n <svg width=\"15px\" height=\"15px\" viewBox=\"0 0 20 20\">\r\n <g id=\"Awaiting-Buyer-Approval-icon\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\r\n <g id=\"time-left\" transform=\"translate(3.000000, 2.000000)\" fill=\"#4A4A4A\" fill-rule=\"nonzero\">\r\n <path\r\n d=\"M6.23157622,14.1696467 C5.70535057,14.0721422 5.2005579,13.9061054 4.72188769,13.6745242 C4.71622258,13.6714711 4.71115545,13.6679958 4.70520709,13.6652025 C4.59240848,13.6104091 4.47979871,13.551718 4.37065094,13.4903961 C4.37027327,13.4899414 4.36958087,13.4896491 4.36898288,13.4893893 C4.16872129,13.37558 3.97327504,13.2496557 3.78339947,13.1117139 C1.01467199,11.0989392 0.348958764,7.13679055 2.29945571,4.27950803 C2.72358352,3.65842885 3.23684237,3.14027823 3.80904983,2.72960334 C3.81609974,2.72453649 3.82314965,2.71950212 3.83013662,2.71440279 C5.84650619,1.28061347 8.58442178,1.183986 10.7254867,2.65733574 L10.2656372,3.34301728 C10.1377946,3.53386873 10.2164452,3.67294733 10.4402485,3.65216024 L12.4377343,3.46760989 C12.6618209,3.4468228 12.7958322,3.24677957 12.7355617,3.0234483 L12.1991703,1.02899228 C12.1391202,0.805401178 11.9853754,0.778637804 11.8574069,0.969456765 L11.3964873,1.6567623 C9.82523796,0.568265989 7.94067659,0.153206329 6.0701521,0.487943386 C5.88175576,0.521592483 5.69600314,0.562776899 5.51279981,0.610717118 C5.51138354,0.610976957 5.51025052,0.611139356 5.50911749,0.611399194 C5.50203611,0.613185585 5.4948603,0.615556612 5.48796775,0.617537881 C3.8749854,1.04500483 2.46767797,2.01585923 1.46347449,3.40105873 C1.4550083,3.41141979 1.44629033,3.4215535 1.43829623,3.432824 C1.40490356,3.47923766 1.37176268,3.52672316 1.33931419,3.57420867 C1.28625101,3.65203032 1.23394317,3.73180077 1.18390138,3.81157121 C1.17763828,3.82118524 1.17285441,3.83096167 1.16737814,3.84067314 C0.338698623,5.1658824 -0.0610062726,6.69795566 0.00754154337,8.25770173 C0.00769890751,8.26283354 0.00741565207,8.26799784 0.00754154337,8.27325957 C0.0141823097,8.42562242 0.0258902012,8.58009646 0.0417839785,8.73216699 C0.0426337448,8.7419759 0.0447424242,8.75126512 0.0463475384,8.76107403 C0.0627763537,8.91398904 0.0833910551,9.06726132 0.109230246,9.22050113 C0.371839509,10.7840149 1.08652445,12.1909434 2.15745032,13.2856758 C2.15993667,13.2882417 2.16251744,13.291035 2.16503527,13.2936983 C2.16591651,13.2947052 2.16689216,13.2952249 2.16774193,13.2961668 C2.45546651,13.5890373 2.7684323,13.8599191 3.10541185,14.1048494 C3.98728044,14.7461311 4.9692641,15.1700252 6.02385557,15.3653264 C6.3438398,15.424667 6.64950389,15.2048436 6.70691032,14.8747836 C6.76428528,14.5444963 6.55146603,14.2287924 6.23157622,14.1696467 Z\"\r\n id=\"Path\"\r\n ></path>\r\n <path\r\n d=\"M9.22237925,14.6588011 C9.29073073,14.9263505 9.1292489,15.198652 8.86169949,15.2670034 C8.51639563,15.355219 8.1641424,15.4188128 7.8069689,15.4570516 C7.53239558,15.4864472 7.28598003,15.2876915 7.25658436,15.0131182 C7.22718869,14.7385449 7.42594445,14.4921293 7.70051776,14.4627336 C8.01004537,14.4295958 8.31515603,14.3745129 8.61417689,14.2981213 C8.8817263,14.2297698 9.15402777,14.3912517 9.22237925,14.6588011 Z M12.5552524,12.2886551 C12.7611952,12.4726175 12.7790139,12.7886982 12.5950515,12.994641 C12.3569806,13.2611574 12.1001968,13.5104915 11.8267859,13.7406023 C11.6155121,13.9184167 11.3000937,13.8912925 11.1222793,13.6800187 C10.9444648,13.4687448 10.9715891,13.1533264 11.1828629,12.975512 C11.4200152,12.7759175 11.6427598,12.5596351 11.8492666,12.3284542 C12.033229,12.1225114 12.3493096,12.1046927 12.5552524,12.2886551 Z M13.9945063,8.57622811 C14.2674538,8.61811209 14.4547678,8.87333344 14.4128838,9.14628095 C14.3584322,9.50112883 14.2787427,9.85020038 14.1746496,10.1914009 C14.0940709,10.4555252 13.8146338,10.6043183 13.5505094,10.5237395 C13.2863851,10.4431608 13.137592,10.1637237 13.2181708,9.89959931 C13.3082912,9.6041989 13.3772907,9.30195366 13.4244534,8.99460564 C13.4663374,8.72165813 13.7215588,8.53434413 13.9945063,8.57622811 Z M13.8741743,4.99628976 C14.0173723,5.32357494 14.1370467,5.66111195 14.2320931,6.00667963 C14.305325,6.27293459 14.1488489,6.54814305 13.8825939,6.62137492 C13.6163389,6.6946068 13.3411305,6.53813067 13.2678986,6.27187571 C13.1856167,5.97271686 13.0820133,5.68050756 12.958028,5.39713383 C12.847338,5.14414702 12.9626923,4.84932868 13.2156791,4.73863865 C13.4686659,4.62794862 13.7634843,4.74330295 13.8741743,4.99628976 Z\"\r\n id=\"Combined-Shape\"\r\n ></path>\r\n <path\r\n d=\"M6.49684035,4 C6.22234237,4 6,4.21290493 6,4.47514225 L6,9.20888548 L10.5252942,11.4469308 C10.5981282,11.4830116 10.6761155,11.5 10.7528554,11.5 C10.9325937,11.5 11.106194,11.4063595 11.1944548,11.2429754 C11.3203307,11.0097848 11.2250786,10.7233052 10.9813357,10.6028789 L6.9931227,8.63027395 L6.9931227,4.47514225 C6.99308988,4.21290493 6.77101009,4 6.49684035,4 Z\"\r\n id=\"Path\"\r\n ></path>\r\n </g>\r\n </g>\r\n </svg>\r\n</ng-template>\r\n", styles: [""] }]
|
|
@@ -174,7 +173,7 @@ class AnnaIconColumnComponent {
|
|
|
174
173
|
}
|
|
175
174
|
}
|
|
176
175
|
AnnaIconColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaIconColumnComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
177
|
-
AnnaIconColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: AnnaIconColumnComponent, selector: "anna-core-anna-icon-column", inputs: { componentName: "componentName", objectKey: "objectKey", dataObject: "dataObject" }, outputs: { onColumnIconClicked: "onColumnIconClicked" }, ngImport: i0, template: "<ng-container *ngIf=\"componentName == 'ORDER_LISTING_INFLIGHT'\">\r\n <span\r\n *ngIf=\"dataObject.payForPerformance && dataObject.orderCategory == 'TV Revenue' && objectKey == 'payForPerformance'\"\r\n class=\"cursor-not-allowed\"\r\n (click)=\"$event.stopPropagation()\"\r\n >\r\n <anna-pay-for-performance-icon-template\r\n [color]=\"PfpIconActiveColor\"\r\n [width]=\"'15px'\"\r\n [height]=\"'15px'\"\r\n >\r\n </anna-pay-for-performance-icon-template>\r\n </span>\r\n <span\r\n *ngIf=\"dataObject.orderStatus == 'UPCOMING' && dataObject.orderCategory == 'TV Revenue' && !dataObject.payForPerformance && objectKey == 'payForPerformance'\"\r\n (click)=\"svgIconClicked(dataObject,'payForPerformance')\"\r\n >\r\n <anna-pay-for-performance-icon-template\r\n [color]=\"PfpIconDisableColor\"\r\n [width]=\"'15px'\"\r\n [height]=\"'15px'\"\r\n >\r\n </anna-pay-for-performance-icon-template>\r\n </span>\r\n\r\n <anna-live-icon-template *ngIf=\"dataObject.orderStatus == 'LIVE' && objectKey == 'orderStatus' \"></anna-live-icon-template>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"objectKey == 'bizRuleStatus'\">\r\n <anna-rejected-icon-template *ngIf=\"dataObject.bizRuleStatus == 'REJECTED'\"></anna-rejected-icon-template>\r\n <anna-notify-icon-template *ngIf=\"dataObject.bizRuleStatus == 'NOTIFY'\"></anna-notify-icon-template>\r\n <anna-buyer-approval-icon-template *ngIf=\"dataObject.bizRuleStatus == 'AWAITING_APPROVAL'\"></anna-buyer-approval-icon-template>\r\n</ng-container>\r\n", styles: [""], components: [{ type: AnnaPayForPerformanceIconTemplateComponent, selector: "anna-pay-for-performance-icon-template", inputs: ["color", "width", "height"] }, { type: AnnaLiveIconTemplateComponent, selector: "anna-live-icon-template" }, { type: AnnaRejectedIconTemplateComponent, selector: "anna-rejected-icon-template" }, { type: AnnaNotifyIconTemplateComponent, selector: "anna-notify-icon-template" }, { type: AnnaBuyerApprovalIconTemplateComponent, selector: "anna-buyer-approval-icon-template" }], directives: [{ type:
|
|
176
|
+
AnnaIconColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: AnnaIconColumnComponent, selector: "anna-core-anna-icon-column", inputs: { componentName: "componentName", objectKey: "objectKey", dataObject: "dataObject" }, outputs: { onColumnIconClicked: "onColumnIconClicked" }, ngImport: i0, template: "<ng-container *ngIf=\"componentName == 'ORDER_LISTING_INFLIGHT'\">\r\n <span\r\n *ngIf=\"dataObject.payForPerformance && dataObject.orderCategory == 'TV Revenue' && objectKey == 'payForPerformance'\"\r\n class=\"cursor-not-allowed\"\r\n (click)=\"$event.stopPropagation()\"\r\n >\r\n <anna-pay-for-performance-icon-template\r\n [color]=\"PfpIconActiveColor\"\r\n [width]=\"'15px'\"\r\n [height]=\"'15px'\"\r\n >\r\n </anna-pay-for-performance-icon-template>\r\n </span>\r\n <span\r\n *ngIf=\"dataObject.orderStatus == 'UPCOMING' && dataObject.orderCategory == 'TV Revenue' && !dataObject.payForPerformance && objectKey == 'payForPerformance'\"\r\n (click)=\"svgIconClicked(dataObject,'payForPerformance')\"\r\n >\r\n <anna-pay-for-performance-icon-template\r\n [color]=\"PfpIconDisableColor\"\r\n [width]=\"'15px'\"\r\n [height]=\"'15px'\"\r\n >\r\n </anna-pay-for-performance-icon-template>\r\n </span>\r\n\r\n <anna-live-icon-template *ngIf=\"dataObject.orderStatus == 'LIVE' && objectKey == 'orderStatus' \"></anna-live-icon-template>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"objectKey == 'bizRuleStatus'\">\r\n <anna-rejected-icon-template *ngIf=\"dataObject.bizRuleStatus == 'REJECTED'\"></anna-rejected-icon-template>\r\n <anna-notify-icon-template *ngIf=\"dataObject.bizRuleStatus == 'NOTIFY'\"></anna-notify-icon-template>\r\n <anna-buyer-approval-icon-template *ngIf=\"dataObject.bizRuleStatus == 'AWAITING_APPROVAL'\"></anna-buyer-approval-icon-template>\r\n</ng-container>\r\n", styles: [""], components: [{ type: AnnaPayForPerformanceIconTemplateComponent, selector: "anna-pay-for-performance-icon-template", inputs: ["color", "width", "height"] }, { type: AnnaLiveIconTemplateComponent, selector: "anna-live-icon-template" }, { type: AnnaRejectedIconTemplateComponent, selector: "anna-rejected-icon-template" }, { type: AnnaNotifyIconTemplateComponent, selector: "anna-notify-icon-template" }, { type: AnnaBuyerApprovalIconTemplateComponent, selector: "anna-buyer-approval-icon-template" }], directives: [{ type: i16.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
178
177
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaIconColumnComponent, decorators: [{
|
|
179
178
|
type: Component,
|
|
180
179
|
args: [{ selector: 'anna-core-anna-icon-column', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"componentName == 'ORDER_LISTING_INFLIGHT'\">\r\n <span\r\n *ngIf=\"dataObject.payForPerformance && dataObject.orderCategory == 'TV Revenue' && objectKey == 'payForPerformance'\"\r\n class=\"cursor-not-allowed\"\r\n (click)=\"$event.stopPropagation()\"\r\n >\r\n <anna-pay-for-performance-icon-template\r\n [color]=\"PfpIconActiveColor\"\r\n [width]=\"'15px'\"\r\n [height]=\"'15px'\"\r\n >\r\n </anna-pay-for-performance-icon-template>\r\n </span>\r\n <span\r\n *ngIf=\"dataObject.orderStatus == 'UPCOMING' && dataObject.orderCategory == 'TV Revenue' && !dataObject.payForPerformance && objectKey == 'payForPerformance'\"\r\n (click)=\"svgIconClicked(dataObject,'payForPerformance')\"\r\n >\r\n <anna-pay-for-performance-icon-template\r\n [color]=\"PfpIconDisableColor\"\r\n [width]=\"'15px'\"\r\n [height]=\"'15px'\"\r\n >\r\n </anna-pay-for-performance-icon-template>\r\n </span>\r\n\r\n <anna-live-icon-template *ngIf=\"dataObject.orderStatus == 'LIVE' && objectKey == 'orderStatus' \"></anna-live-icon-template>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"objectKey == 'bizRuleStatus'\">\r\n <anna-rejected-icon-template *ngIf=\"dataObject.bizRuleStatus == 'REJECTED'\"></anna-rejected-icon-template>\r\n <anna-notify-icon-template *ngIf=\"dataObject.bizRuleStatus == 'NOTIFY'\"></anna-notify-icon-template>\r\n <anna-buyer-approval-icon-template *ngIf=\"dataObject.bizRuleStatus == 'AWAITING_APPROVAL'\"></anna-buyer-approval-icon-template>\r\n</ng-container>\r\n", styles: [""] }]
|
|
@@ -243,16 +242,16 @@ class AnnaDateTimeFormatService {
|
|
|
243
242
|
}
|
|
244
243
|
convertToNgbDateStandardFormat(date) {
|
|
245
244
|
return {
|
|
246
|
-
year: parseInt(
|
|
247
|
-
month: parseInt(
|
|
248
|
-
day: parseInt(
|
|
245
|
+
year: parseInt(moment(date, "MM/DD/YYYY").format("YYYY")),
|
|
246
|
+
month: parseInt(moment(date, "MM/DD/YYYY").format("M")),
|
|
247
|
+
day: parseInt(moment(date, "MM/DD/YYYY").format("D")),
|
|
249
248
|
};
|
|
250
249
|
}
|
|
251
250
|
convertToNgbDate(date, parseFormat) {
|
|
252
251
|
return {
|
|
253
|
-
year: parseInt(
|
|
254
|
-
month: parseInt(
|
|
255
|
-
day: parseInt(
|
|
252
|
+
year: parseInt(moment(date, parseFormat).format("YYYY")),
|
|
253
|
+
month: parseInt(moment(date, parseFormat).format("M")),
|
|
254
|
+
day: parseInt(moment(date, parseFormat).format("D")),
|
|
256
255
|
};
|
|
257
256
|
}
|
|
258
257
|
formatToTwelveHrs(time, callRemoveZero) {
|
|
@@ -343,51 +342,49 @@ class AnnaDateTimeFormatService {
|
|
|
343
342
|
}
|
|
344
343
|
sortByTimeAscending(a, b) {
|
|
345
344
|
let format = "HH:mm:ss";
|
|
346
|
-
a =
|
|
347
|
-
b =
|
|
345
|
+
a = moment(a, format);
|
|
346
|
+
b = moment(b, format);
|
|
348
347
|
let results;
|
|
349
|
-
results = a.
|
|
348
|
+
results = a.hours() > b.hours() ? 1 : a.hours() < b.hours() ? -1 : 0;
|
|
350
349
|
if (results === 0)
|
|
351
|
-
results = a.
|
|
350
|
+
results = a.minutes() > b.minutes() ? 1 : a.minutes() < b.minutes() ? -1 : 0;
|
|
352
351
|
if (results === 0)
|
|
353
|
-
results = a.
|
|
352
|
+
results = a.seconds() > b.seconds() ? 1 : a.seconds() < b.seconds() ? -1 : 0;
|
|
354
353
|
return results;
|
|
355
354
|
}
|
|
356
355
|
sortByTimeDescending(a, b) {
|
|
357
356
|
let format = "HH:mm:ss";
|
|
358
|
-
a =
|
|
359
|
-
b =
|
|
357
|
+
a = moment(a, format);
|
|
358
|
+
b = moment(b, format);
|
|
360
359
|
let results;
|
|
361
|
-
results = a.
|
|
360
|
+
results = a.hours() < b.hours() ? 1 : a.hours() > b.hours() ? -1 : 0;
|
|
362
361
|
if (results === 0)
|
|
363
|
-
results = a.
|
|
362
|
+
results = a.minutes() < b.minutes() ? 1 : a.minutes() > b.minutes() ? -1 : 0;
|
|
364
363
|
if (results === 0)
|
|
365
|
-
results = a.
|
|
364
|
+
results = a.seconds() < b.seconds() ? 1 : a.seconds() > b.seconds() ? -1 : 0;
|
|
366
365
|
return results;
|
|
367
366
|
}
|
|
368
367
|
convertNgbDateToMoment(ngbDate) {
|
|
369
|
-
let
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
}
|
|
375
|
-
return converted;
|
|
368
|
+
let converted = moment();
|
|
369
|
+
converted.month(ngbDate.month - 1);
|
|
370
|
+
converted.date(ngbDate.day);
|
|
371
|
+
converted.year(ngbDate.year);
|
|
372
|
+
return converted.format("MM/DD/YYYY");
|
|
376
373
|
}
|
|
377
374
|
compareDate(a, b, isAsc) {
|
|
378
|
-
return isAsc ?
|
|
375
|
+
return isAsc ? moment(a).diff(b) : moment(b).diff(a);
|
|
379
376
|
}
|
|
380
|
-
static formatTwentyFourHourTimeToHHMMAFormat(value
|
|
381
|
-
value =
|
|
377
|
+
static formatTwentyFourHourTimeToHHMMAFormat(value) {
|
|
378
|
+
value = moment(value, ["HH:mm:ss"]).format("HH:mm:ss");
|
|
382
379
|
return value[3] == "0" && value[4] == "0"
|
|
383
|
-
?
|
|
384
|
-
:
|
|
380
|
+
? moment(value, ["HH:mm:ss"]).format("hA").slice(0, -1)
|
|
381
|
+
: moment(value, ["HH:mm:ss"]).format("h:mmA").slice(0, -1);
|
|
385
382
|
}
|
|
386
|
-
static formatTwelveHourTimeToHHMMAFormat(
|
|
387
|
-
|
|
388
|
-
return
|
|
389
|
-
?
|
|
390
|
-
:
|
|
383
|
+
static formatTwelveHourTimeToHHMMAFormat(value) {
|
|
384
|
+
value = moment(value, ["HH:mm:A"]).format("HH:mm:ss");
|
|
385
|
+
return value[3] == "0" && value[4] == "0"
|
|
386
|
+
? moment(value, ["HH:mm:ss"]).format("hA").slice(0, -1)
|
|
387
|
+
: moment(value, ["HH:mm:ss"]).format("h:mmA").slice(0, -1);
|
|
391
388
|
}
|
|
392
389
|
formatDateAndHHMMATimeToStandardFormat(dateAndTime) {
|
|
393
390
|
let standardFormat, date, time;
|
|
@@ -401,7 +398,7 @@ class AnnaDateTimeFormatService {
|
|
|
401
398
|
else {
|
|
402
399
|
standardFormat = dateAndTime + " 00:00 AM";
|
|
403
400
|
}
|
|
404
|
-
return
|
|
401
|
+
return moment(standardFormat).format("MM/DD/YYYY hh:mm A");
|
|
405
402
|
}
|
|
406
403
|
compare(a, b, isAsc) {
|
|
407
404
|
if (typeof a == 'string' && typeof b == 'string') {
|
|
@@ -412,11 +409,11 @@ class AnnaDateTimeFormatService {
|
|
|
412
409
|
}
|
|
413
410
|
sortDataByBroadcastTimeAsc(firstParamTime, secondParamTime, broadcastTime) {
|
|
414
411
|
let format = "HH:mm:ss";
|
|
415
|
-
let a =
|
|
416
|
-
let b =
|
|
417
|
-
let
|
|
418
|
-
a = a.isBefore(
|
|
419
|
-
b = b.isBefore(
|
|
412
|
+
let a = moment(firstParamTime, format);
|
|
413
|
+
let b = moment(secondParamTime, format);
|
|
414
|
+
let broadcastMomentDateTime = moment(broadcastTime, "HH:mm:ss");
|
|
415
|
+
a = a.isBefore(broadcastMomentDateTime) ? a.add(1, "d") : a;
|
|
416
|
+
b = b.isBefore(broadcastMomentDateTime) ? b.add(1, "d") : b;
|
|
420
417
|
let result = a.isBefore(b) ? -1 : a.isAfter(b) ? 1 : 0;
|
|
421
418
|
return result;
|
|
422
419
|
}
|
|
@@ -603,19 +600,17 @@ class AnnaWeekCalendarComponent {
|
|
|
603
600
|
}
|
|
604
601
|
}
|
|
605
602
|
getWeekNumber(week, firstDayOfWeek) {
|
|
606
|
-
const weekStartDate =
|
|
603
|
+
const weekStartDate = moment(convertNgbDateToMoment(week[0]), "MM/DD/YYYY");
|
|
607
604
|
const weekYear = weekStartDate.year();
|
|
608
|
-
const yearStartDate =
|
|
605
|
+
const yearStartDate = moment(`01/01/${weekYear}`, "MM/DD/YYYY");
|
|
609
606
|
const weekDay = yearStartDate.day();
|
|
610
607
|
const noOfDays = weekStartDate.diff(yearStartDate, "d") + 1;
|
|
611
608
|
function convertNgbDateToMoment(ngbDate) {
|
|
612
|
-
let
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
}
|
|
618
|
-
return converted;
|
|
609
|
+
let converted = moment();
|
|
610
|
+
converted.month(ngbDate.month - 1);
|
|
611
|
+
converted.date(ngbDate.day);
|
|
612
|
+
converted.year(ngbDate.year);
|
|
613
|
+
return converted.format("MM/DD/YYYY");
|
|
619
614
|
}
|
|
620
615
|
function checkIfYearIsBroadcastLeapYear() {
|
|
621
616
|
let isLeapYear = (weekYear % 4 == 0 && weekYear % 100 != 0) || weekYear % 400 == 0;
|
|
@@ -690,15 +685,15 @@ class AnnaWeekCalendarComponent {
|
|
|
690
685
|
this.toDate = this.constructEndDate(dateObject)(constructDate);
|
|
691
686
|
}
|
|
692
687
|
if (this.disabledDates.length > 0) {
|
|
693
|
-
let
|
|
694
|
-
let
|
|
688
|
+
let momentStartDate = moment(this.annaDateTimeFormatService.convertNgbDateToMoment(this.fromDate), "MM/DD/YYYY");
|
|
689
|
+
let momentEndDate = moment(this.annaDateTimeFormatService.convertNgbDateToMoment(this.toDate), "MM/DD/YYYY");
|
|
695
690
|
let ngbDate;
|
|
696
|
-
while (!
|
|
697
|
-
ngbDate = this.annaDateTimeFormatService.convertToNgbDate(
|
|
691
|
+
while (!momentStartDate.isSame(momentEndDate)) {
|
|
692
|
+
ngbDate = this.annaDateTimeFormatService.convertToNgbDate(momentStartDate, "MM/DD/YYYY");
|
|
698
693
|
if (this.checkIfDateIsDisabled(ngbDate)) {
|
|
699
694
|
break;
|
|
700
695
|
}
|
|
701
|
-
|
|
696
|
+
momentStartDate.add(1, "d");
|
|
702
697
|
}
|
|
703
698
|
let newDateObject = new Date(ngbDate.year, ngbDate.month - 1, ngbDate.day - 1);
|
|
704
699
|
let constructDate = this.buildDate(newDateObject);
|
|
@@ -884,7 +879,7 @@ class AnnaWeekCalendarComponent {
|
|
|
884
879
|
}
|
|
885
880
|
}
|
|
886
881
|
AnnaWeekCalendarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaWeekCalendarComponent, deps: [{ token: i1.NgbCalendar }, { token: i1.NgbDatepickerConfig }, { token: AnnaDateTimeFormatService }, { token: AnnaGlobalConfigService }], target: i0.ɵɵFactoryTarget.Component });
|
|
887
|
-
AnnaWeekCalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: AnnaWeekCalendarComponent, selector: "anna-core-week-calendar-filter-lib", inputs: { selectedFromDate: ["from-date", "selectedFromDate"], selectedEndDate: ["to-date", "selectedEndDate"], disabledDates: ["disabled-dates", "disabledDates"], maxDate: "maxDate", minDate: "minDate", config: ["week-calendar-config", "config"] }, outputs: { applyWeekCalendarChanges: "apply", calendarToggled: "toggle-calendar" }, usesOnChanges: true, ngImport: i0, template: "<form class=\"form-inline\" *ngIf=\"config.showAsDropdown\">\r\n <div class=\"form-group hidden\">\r\n <div class=\"input-group\">\r\n <input\r\n name=\"datepicker\"\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 style=\"display: none\"\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 style=\"position: relative; left: 30px; font-size: 12px\"> {{ 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 class=\"material-icons next-round-btn\" (click)=\"previousWeek()\"> navigate_next </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 class=\"mdi mdi-menu-down\" *ngIf='!datepicker.isOpen()' (click)=\"datepicker.open()\"></i>\r\n <i class='mdi mdi-menu-up' *ngIf=\"datepicker.isOpen()\" (click)=\"isDropdownOpenedForCalendar(datepicker)\"></i>\r\n <div class=\"right\">\r\n <span class=\"material-icons round-btn\" (click)=\"nextWeek()\"> navigate_next </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 class=\"form-group\" *ngIf=\"config.selectMultipleWeeks\">\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 *ngIf=\"!multiSelectDropdownOpen\" class=\"mdi mdi-menu-down multiselect-input-arrow\"></i>\r\n <i *ngIf=\"multiSelectDropdownOpen\" class=\"mdi mdi-menu-up multiselect-input-arrow\"></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\"\r\n (click)=\"applyChanges(); closeDatepicker(datepicker)\"\r\n style=\"background-color: #268bff; color: #ffffff\"\r\n >\r\n Apply\r\n </button>\r\n <button\r\n class=\"btn btn-primary btn-sm m-2 float-right\"\r\n (click)=\"revertDates(); closeDatepicker(datepicker)\"\r\n style=\"background-color: rgba(38, 139, 255, 0.12); color: #268bff\"\r\n >\r\n Cancel\r\n </button>\r\n</ng-template>\r\n\r\n<ng-template #t let-date let-focused=\"focused\" let-disabled=\"disabled\">\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\r\n<!--\r\n\r\n<hr>\r\n\r\n<pre>From: {{ fromDate | json }} </pre>\r\n<pre>To: {{ toDate | json }} </pre>\r\n<pre>weekNumbers: {{ weekNumbers | json }} </pre>\r\n\r\n-->\r\n", styles: [":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;-webkit-appearance:auto;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;color:#000;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,.custom-day:hover{background-color:#268bff;color:#fff;font-weight:600}: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:white!important}\n"], components: [{ type: i1.NgbDatepicker, selector: "ngb-datepicker", inputs: ["showWeekdays", "weekdays", "dayTemplate", "dayTemplateData", "displayMonths", "firstDayOfWeek", "footerTemplate", "markDisabled", "maxDate", "minDate", "navigation", "outsideDays", "showWeekNumbers", "startDate"], outputs: ["navigate", "dateSelect"], exportAs: ["ngbDatepicker"] }], directives: [{ type: i17.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i19.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i19.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i19.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i1.NgbInputDatepicker, selector: "input[ngbDatepicker]", inputs: ["showWeekdays", "weekdays", "disabled", "autoClose", "datepickerClass", "dayTemplate", "dayTemplateData", "displayMonths", "firstDayOfWeek", "footerTemplate", "markDisabled", "minDate", "maxDate", "navigation", "outsideDays", "placement", "restoreFocus", "showWeekNumbers", "startDate", "container", "positionTarget"], outputs: ["dateSelect", "navigate", "closed"], exportAs: ["ngbDatepicker"] }, { type: i17.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
882
|
+
AnnaWeekCalendarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: AnnaWeekCalendarComponent, selector: "anna-core-week-calendar-filter-lib", inputs: { selectedFromDate: ["from-date", "selectedFromDate"], selectedEndDate: ["to-date", "selectedEndDate"], disabledDates: ["disabled-dates", "disabledDates"], maxDate: "maxDate", minDate: "minDate", config: ["week-calendar-config", "config"] }, outputs: { applyWeekCalendarChanges: "apply", calendarToggled: "toggle-calendar" }, usesOnChanges: true, ngImport: i0, template: "<form class=\"form-inline\" *ngIf=\"config.showAsDropdown\">\r\n <div class=\"form-group hidden\">\r\n <div class=\"input-group\">\r\n <input\r\n name=\"datepicker\"\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 style=\"display: none\"\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 style=\"position: relative; left: 30px; font-size: 12px\"> {{ 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 class=\"material-icons next-round-btn\" (click)=\"previousWeek()\"> navigate_next </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 class=\"mdi mdi-menu-down\" *ngIf='!datepicker.isOpen()' (click)=\"datepicker.open()\"></i>\r\n <i class='mdi mdi-menu-up' *ngIf=\"datepicker.isOpen()\" (click)=\"isDropdownOpenedForCalendar(datepicker)\"></i>\r\n <div class=\"right\">\r\n <span class=\"material-icons round-btn\" (click)=\"nextWeek()\"> navigate_next </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 class=\"form-group\" *ngIf=\"config.selectMultipleWeeks\">\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 *ngIf=\"!multiSelectDropdownOpen\" class=\"mdi mdi-menu-down multiselect-input-arrow\"></i>\r\n <i *ngIf=\"multiSelectDropdownOpen\" class=\"mdi mdi-menu-up multiselect-input-arrow\"></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\"\r\n (click)=\"applyChanges(); closeDatepicker(datepicker)\"\r\n style=\"background-color: #268bff; color: #ffffff\"\r\n >\r\n Apply\r\n </button>\r\n <button\r\n class=\"btn btn-primary btn-sm m-2 float-right\"\r\n (click)=\"revertDates(); closeDatepicker(datepicker)\"\r\n style=\"background-color: rgba(38, 139, 255, 0.12); color: #268bff\"\r\n >\r\n Cancel\r\n </button>\r\n</ng-template>\r\n\r\n<ng-template #t let-date let-focused=\"focused\" let-disabled=\"disabled\">\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\r\n<!--\r\n\r\n<hr>\r\n\r\n<pre>From: {{ fromDate | json }} </pre>\r\n<pre>To: {{ toDate | json }} </pre>\r\n<pre>weekNumbers: {{ weekNumbers | json }} </pre>\r\n\r\n-->\r\n", styles: [":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;-webkit-appearance:auto;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;color:#000;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,.custom-day:hover{background-color:#268bff;color:#fff;font-weight:600}: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:white!important}\n"], components: [{ type: i1.NgbDatepicker, selector: "ngb-datepicker", inputs: ["showWeekdays", "weekdays", "dayTemplate", "dayTemplateData", "displayMonths", "firstDayOfWeek", "footerTemplate", "markDisabled", "maxDate", "minDate", "navigation", "outsideDays", "showWeekNumbers", "startDate"], outputs: ["navigate", "dateSelect"], exportAs: ["ngbDatepicker"] }], directives: [{ type: i16.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i18.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i18.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i18.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i1.NgbInputDatepicker, selector: "input[ngbDatepicker]", inputs: ["showWeekdays", "weekdays", "disabled", "autoClose", "datepickerClass", "dayTemplate", "dayTemplateData", "displayMonths", "firstDayOfWeek", "footerTemplate", "markDisabled", "minDate", "maxDate", "navigation", "outsideDays", "placement", "restoreFocus", "showWeekNumbers", "startDate", "container", "positionTarget"], outputs: ["dateSelect", "navigate", "closed"], exportAs: ["ngbDatepicker"] }, { type: i16.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
888
883
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaWeekCalendarComponent, decorators: [{
|
|
889
884
|
type: Component,
|
|
890
885
|
args: [{ selector: "anna-core-week-calendar-filter-lib", template: "<form class=\"form-inline\" *ngIf=\"config.showAsDropdown\">\r\n <div class=\"form-group hidden\">\r\n <div class=\"input-group\">\r\n <input\r\n name=\"datepicker\"\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 style=\"display: none\"\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 style=\"position: relative; left: 30px; font-size: 12px\"> {{ 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 class=\"material-icons next-round-btn\" (click)=\"previousWeek()\"> navigate_next </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 class=\"mdi mdi-menu-down\" *ngIf='!datepicker.isOpen()' (click)=\"datepicker.open()\"></i>\r\n <i class='mdi mdi-menu-up' *ngIf=\"datepicker.isOpen()\" (click)=\"isDropdownOpenedForCalendar(datepicker)\"></i>\r\n <div class=\"right\">\r\n <span class=\"material-icons round-btn\" (click)=\"nextWeek()\"> navigate_next </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 class=\"form-group\" *ngIf=\"config.selectMultipleWeeks\">\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 *ngIf=\"!multiSelectDropdownOpen\" class=\"mdi mdi-menu-down multiselect-input-arrow\"></i>\r\n <i *ngIf=\"multiSelectDropdownOpen\" class=\"mdi mdi-menu-up multiselect-input-arrow\"></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\"\r\n (click)=\"applyChanges(); closeDatepicker(datepicker)\"\r\n style=\"background-color: #268bff; color: #ffffff\"\r\n >\r\n Apply\r\n </button>\r\n <button\r\n class=\"btn btn-primary btn-sm m-2 float-right\"\r\n (click)=\"revertDates(); closeDatepicker(datepicker)\"\r\n style=\"background-color: rgba(38, 139, 255, 0.12); color: #268bff\"\r\n >\r\n Cancel\r\n </button>\r\n</ng-template>\r\n\r\n<ng-template #t let-date let-focused=\"focused\" let-disabled=\"disabled\">\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\r\n<!--\r\n\r\n<hr>\r\n\r\n<pre>From: {{ fromDate | json }} </pre>\r\n<pre>To: {{ toDate | json }} </pre>\r\n<pre>weekNumbers: {{ weekNumbers | json }} </pre>\r\n\r\n-->\r\n", styles: [":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;-webkit-appearance:auto;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;color:#000;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,.custom-day:hover{background-color:#268bff;color:#fff;font-weight:600}: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:white!important}\n"] }]
|
|
@@ -982,7 +977,7 @@ class AnnaCalendarFilterComponent {
|
|
|
982
977
|
}
|
|
983
978
|
}
|
|
984
979
|
AnnaCalendarFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaCalendarFilterComponent, deps: [{ token: AnnaDateTimeFormatService }, { token: i1.NgbDatepickerConfig }], target: i0.ɵɵFactoryTarget.Component });
|
|
985
|
-
AnnaCalendarFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: AnnaCalendarFilterComponent, selector: "anna-core-calendar-filter-lib", inputs: { maxDate: "maxDate", label: "label", minDate: "minDate", selectedFromDate: "selectedFromDate", selectedToDate: "selectedToDate" }, outputs: { selectedDate: "selectedDate", apply: "apply", cancel: "cancel" }, usesOnChanges: true, ngImport: i0, template: "<!-- container=\"body\"\r\ndatepickerClass = \"calendar-filter\" -->\r\n \r\n<p class=\"calendar-label\">{{label}}</p>\r\n<form>\r\n <div class=\"col-12\">\r\n <div class=\"dp-hidden position-absolute\">\r\n <div class=\"input-group\">\r\n <input name=\"datepicker\"\r\n class=\"form-control\"\r\n ngbDatepicker\r\n #datepicker=\"ngbDatepicker\"\r\n (dateSelect)=\"onDateSelection($event)\"\r\n [displayMonths]=\"1\"\r\n [dayTemplate]=\"t\"\r\n [maxDate]=\"maxDate\"\r\n [minDate]=\"minDate\"\r\n [autoClose]=\"'outside'\"\r\n [startDate]=\"fromDate\"\r\n navigation=\"select\"\r\n >\r\n <ng-template #t let-date let-focused=\"focused\">\r\n <span class=\"custom-day\"\r\n [class.focused]=\"focused\"\r\n [class.range]=\"isRange(date)\"\r\n [class.faded]=\"isHovered(date) || isInside(date)\"\r\n (mouseenter)=\"hoveredDate = date\"\r\n (mouseleave)=\"hoveredDate = null\">\r\n {{ date.day }}\r\n </span>\r\n </ng-template>\r\n </div>\r\n </div>\r\n <div class=\"input-group\">\r\n <input #dpFromDate\r\n id = \"datepicker-input\"\r\n class=\"form-control\" placeholder=\"mm/dd/yyyy\"\r\n readonly\r\n name=\"dpFromDate\"\r\n [value]=\"dateToBeShownInInput\"\r\n >\r\n <button class=\"icon-container\" (click)=\"datepicker.toggle()\" type=\"button\"><i class=\"mdi mdi-calendar-range\"></i></button>\r\n </div>\r\n </div>\r\n</form>\r\n\r\n", styles: [":host::ng-deep div.ngb-dp-arrow.right{width:2.4375rem!important;background-color:#fff!important}:host::ng-deep div.ngb-dp-weekday{color:#8bac2a;border-top:1px solid rgba(183,183,183,.6);margin-top:.5rem;font-family:Roboto;font-size:.8125rem;font-weight:700;font-stretch:normal;font-style:normal;line-height:2.6;letter-spacing:normal}:host::ng-deep div.ngb-dp-week{background-color:#fff!important}:host::ng-deep div.ngb-dp-header{background-color:#fff!important}:host::ng-deep div.bg-primary{background-color:#d9e1e6!important;border-radius:.25rem}:host::ng-deep .ngb-dp-arrow-btn:focus{outline-width:0px}:host::ng-deep .right .ngb-dp-navigation-chevron,:host::ng-deep .ngb-dp-navigation-chevron{color:#000}:host::ng-deep .custom-select{border:1px solid rgba(183,183,183,.6);box-shadow:none}:host::ng-deep .btn:focus{box-shadow:none}.custom-day{text-align:center;padding:.185rem .25rem;color:#000;display:inline-block;height:2rem;width:2rem}.custom-day.focused{background-color:#e6e6e6}.custom-day.range{background-color:#268bff;color:#fff}.custom-day:hover{background-color:#d9e1e6;border-radius:.25rem;color:#bdbdbd}:host::ng-deep div.ngb-dp-day.disabled{cursor:not-allowed}.custom-day.faded{background-color:#268bff33;color:#000;font-weight:600}:host::ng-deep div.ngb-dp-week div.ngb-dp-day.disabled .custom-day{color:#bdbdbd;opacity:50%}.buttons{display:flex;margin:0px auto .4375rem;margin-bottom:0;justify-content:center}.buttons button.btn:disabled{background:#bdbdbd;opacity:.5;color:#4a4a4a}.buttons .btn{display:inline-block;margin:8px 4px 0 8px;padding:5px 16px;text-align:center;outline:none;font-family:Roboto;font-size:.875rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:1.14;letter-spacing:normal;border:none;color:#268bff;background-color:#e5f1ff}.buttons .btn:last-of-type{background-color:#268bff;color:#fff}:host::ng-deep .ngb-dp-day{font-weight:700}input#datepicker-input,button.icon-container{background:white;border:none}input#datepicker-input{color:#202b47;font-family:Roboto;font-size:14px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}input#datepicker-input:focus{box-shadow:none}div.input-group{border:1px solid #b7b7b7;border-radius:2px;width:94%}.calendar-label{font-family:Roboto;font-size:12px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;color:#666;margin-top:7px;margin-bottom:0;text-align:left;margin-left:10px}\n"], directives: [{ type:
|
|
980
|
+
AnnaCalendarFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: AnnaCalendarFilterComponent, selector: "anna-core-calendar-filter-lib", inputs: { maxDate: "maxDate", label: "label", minDate: "minDate", selectedFromDate: "selectedFromDate", selectedToDate: "selectedToDate" }, outputs: { selectedDate: "selectedDate", apply: "apply", cancel: "cancel" }, usesOnChanges: true, ngImport: i0, template: "<!-- container=\"body\"\r\ndatepickerClass = \"calendar-filter\" -->\r\n \r\n<p class=\"calendar-label\">{{label}}</p>\r\n<form>\r\n <div class=\"col-12\">\r\n <div class=\"dp-hidden position-absolute\">\r\n <div class=\"input-group\">\r\n <input name=\"datepicker\"\r\n class=\"form-control\"\r\n ngbDatepicker\r\n #datepicker=\"ngbDatepicker\"\r\n (dateSelect)=\"onDateSelection($event)\"\r\n [displayMonths]=\"1\"\r\n [dayTemplate]=\"t\"\r\n [maxDate]=\"maxDate\"\r\n [minDate]=\"minDate\"\r\n [autoClose]=\"'outside'\"\r\n [startDate]=\"fromDate\"\r\n navigation=\"select\"\r\n >\r\n <ng-template #t let-date let-focused=\"focused\">\r\n <span class=\"custom-day\"\r\n [class.focused]=\"focused\"\r\n [class.range]=\"isRange(date)\"\r\n [class.faded]=\"isHovered(date) || isInside(date)\"\r\n (mouseenter)=\"hoveredDate = date\"\r\n (mouseleave)=\"hoveredDate = null\">\r\n {{ date.day }}\r\n </span>\r\n </ng-template>\r\n </div>\r\n </div>\r\n <div class=\"input-group\">\r\n <input #dpFromDate\r\n id = \"datepicker-input\"\r\n class=\"form-control\" placeholder=\"mm/dd/yyyy\"\r\n readonly\r\n name=\"dpFromDate\"\r\n [value]=\"dateToBeShownInInput\"\r\n >\r\n <button class=\"icon-container\" (click)=\"datepicker.toggle()\" type=\"button\"><i class=\"mdi mdi-calendar-range\"></i></button>\r\n </div>\r\n </div>\r\n</form>\r\n\r\n", styles: [":host::ng-deep div.ngb-dp-arrow.right{width:2.4375rem!important;background-color:#fff!important}:host::ng-deep div.ngb-dp-weekday{color:#8bac2a;border-top:1px solid rgba(183,183,183,.6);margin-top:.5rem;font-family:Roboto;font-size:.8125rem;font-weight:700;font-stretch:normal;font-style:normal;line-height:2.6;letter-spacing:normal}:host::ng-deep div.ngb-dp-week{background-color:#fff!important}:host::ng-deep div.ngb-dp-header{background-color:#fff!important}:host::ng-deep div.bg-primary{background-color:#d9e1e6!important;border-radius:.25rem}:host::ng-deep .ngb-dp-arrow-btn:focus{outline-width:0px}:host::ng-deep .right .ngb-dp-navigation-chevron,:host::ng-deep .ngb-dp-navigation-chevron{color:#000}:host::ng-deep .custom-select{border:1px solid rgba(183,183,183,.6);box-shadow:none}:host::ng-deep .btn:focus{box-shadow:none}.custom-day{text-align:center;padding:.185rem .25rem;color:#000;display:inline-block;height:2rem;width:2rem}.custom-day.focused{background-color:#e6e6e6}.custom-day.range{background-color:#268bff;color:#fff}.custom-day:hover{background-color:#d9e1e6;border-radius:.25rem;color:#bdbdbd}:host::ng-deep div.ngb-dp-day.disabled{cursor:not-allowed}.custom-day.faded{background-color:#268bff33;color:#000;font-weight:600}:host::ng-deep div.ngb-dp-week div.ngb-dp-day.disabled .custom-day{color:#bdbdbd;opacity:50%}.buttons{display:flex;margin:0px auto .4375rem;margin-bottom:0;justify-content:center}.buttons button.btn:disabled{background:#bdbdbd;opacity:.5;color:#4a4a4a}.buttons .btn{display:inline-block;margin:8px 4px 0 8px;padding:5px 16px;text-align:center;outline:none;font-family:Roboto;font-size:.875rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:1.14;letter-spacing:normal;border:none;color:#268bff;background-color:#e5f1ff}.buttons .btn:last-of-type{background-color:#268bff;color:#fff}:host::ng-deep .ngb-dp-day{font-weight:700}input#datepicker-input,button.icon-container{background:white;border:none}input#datepicker-input{color:#202b47;font-family:Roboto;font-size:14px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}input#datepicker-input:focus{box-shadow:none}div.input-group{border:1px solid #b7b7b7;border-radius:2px;width:94%}.calendar-label{font-family:Roboto;font-size:12px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;color:#666;margin-top:7px;margin-bottom:0;text-align:left;margin-left:10px}\n"], directives: [{ type: i18.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i18.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i18.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i1.NgbInputDatepicker, selector: "input[ngbDatepicker]", inputs: ["showWeekdays", "weekdays", "disabled", "autoClose", "datepickerClass", "dayTemplate", "dayTemplateData", "displayMonths", "firstDayOfWeek", "footerTemplate", "markDisabled", "minDate", "maxDate", "navigation", "outsideDays", "placement", "restoreFocus", "showWeekNumbers", "startDate", "container", "positionTarget"], outputs: ["dateSelect", "navigate", "closed"], exportAs: ["ngbDatepicker"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
986
981
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaCalendarFilterComponent, decorators: [{
|
|
987
982
|
type: Component,
|
|
988
983
|
args: [{ selector: "anna-core-calendar-filter-lib", changeDetection: ChangeDetectionStrategy.OnPush, template: "<!-- container=\"body\"\r\ndatepickerClass = \"calendar-filter\" -->\r\n \r\n<p class=\"calendar-label\">{{label}}</p>\r\n<form>\r\n <div class=\"col-12\">\r\n <div class=\"dp-hidden position-absolute\">\r\n <div class=\"input-group\">\r\n <input name=\"datepicker\"\r\n class=\"form-control\"\r\n ngbDatepicker\r\n #datepicker=\"ngbDatepicker\"\r\n (dateSelect)=\"onDateSelection($event)\"\r\n [displayMonths]=\"1\"\r\n [dayTemplate]=\"t\"\r\n [maxDate]=\"maxDate\"\r\n [minDate]=\"minDate\"\r\n [autoClose]=\"'outside'\"\r\n [startDate]=\"fromDate\"\r\n navigation=\"select\"\r\n >\r\n <ng-template #t let-date let-focused=\"focused\">\r\n <span class=\"custom-day\"\r\n [class.focused]=\"focused\"\r\n [class.range]=\"isRange(date)\"\r\n [class.faded]=\"isHovered(date) || isInside(date)\"\r\n (mouseenter)=\"hoveredDate = date\"\r\n (mouseleave)=\"hoveredDate = null\">\r\n {{ date.day }}\r\n </span>\r\n </ng-template>\r\n </div>\r\n </div>\r\n <div class=\"input-group\">\r\n <input #dpFromDate\r\n id = \"datepicker-input\"\r\n class=\"form-control\" placeholder=\"mm/dd/yyyy\"\r\n readonly\r\n name=\"dpFromDate\"\r\n [value]=\"dateToBeShownInInput\"\r\n >\r\n <button class=\"icon-container\" (click)=\"datepicker.toggle()\" type=\"button\"><i class=\"mdi mdi-calendar-range\"></i></button>\r\n </div>\r\n </div>\r\n</form>\r\n\r\n", styles: [":host::ng-deep div.ngb-dp-arrow.right{width:2.4375rem!important;background-color:#fff!important}:host::ng-deep div.ngb-dp-weekday{color:#8bac2a;border-top:1px solid rgba(183,183,183,.6);margin-top:.5rem;font-family:Roboto;font-size:.8125rem;font-weight:700;font-stretch:normal;font-style:normal;line-height:2.6;letter-spacing:normal}:host::ng-deep div.ngb-dp-week{background-color:#fff!important}:host::ng-deep div.ngb-dp-header{background-color:#fff!important}:host::ng-deep div.bg-primary{background-color:#d9e1e6!important;border-radius:.25rem}:host::ng-deep .ngb-dp-arrow-btn:focus{outline-width:0px}:host::ng-deep .right .ngb-dp-navigation-chevron,:host::ng-deep .ngb-dp-navigation-chevron{color:#000}:host::ng-deep .custom-select{border:1px solid rgba(183,183,183,.6);box-shadow:none}:host::ng-deep .btn:focus{box-shadow:none}.custom-day{text-align:center;padding:.185rem .25rem;color:#000;display:inline-block;height:2rem;width:2rem}.custom-day.focused{background-color:#e6e6e6}.custom-day.range{background-color:#268bff;color:#fff}.custom-day:hover{background-color:#d9e1e6;border-radius:.25rem;color:#bdbdbd}:host::ng-deep div.ngb-dp-day.disabled{cursor:not-allowed}.custom-day.faded{background-color:#268bff33;color:#000;font-weight:600}:host::ng-deep div.ngb-dp-week div.ngb-dp-day.disabled .custom-day{color:#bdbdbd;opacity:50%}.buttons{display:flex;margin:0px auto .4375rem;margin-bottom:0;justify-content:center}.buttons button.btn:disabled{background:#bdbdbd;opacity:.5;color:#4a4a4a}.buttons .btn{display:inline-block;margin:8px 4px 0 8px;padding:5px 16px;text-align:center;outline:none;font-family:Roboto;font-size:.875rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:1.14;letter-spacing:normal;border:none;color:#268bff;background-color:#e5f1ff}.buttons .btn:last-of-type{background-color:#268bff;color:#fff}:host::ng-deep .ngb-dp-day{font-weight:700}input#datepicker-input,button.icon-container{background:white;border:none}input#datepicker-input{color:#202b47;font-family:Roboto;font-size:14px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal}input#datepicker-input:focus{box-shadow:none}div.input-group{border:1px solid #b7b7b7;border-radius:2px;width:94%}.calendar-label{font-family:Roboto;font-size:12px;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;color:#666;margin-top:7px;margin-bottom:0;text-align:left;margin-left:10px}\n"] }]
|
|
@@ -1235,8 +1230,6 @@ class AnnaFilterService {
|
|
|
1235
1230
|
}
|
|
1236
1231
|
return data.toString();
|
|
1237
1232
|
};
|
|
1238
|
-
dayjs.extend(minMax);
|
|
1239
|
-
dayjs.extend(isBetween);
|
|
1240
1233
|
console.log("AnnaFilterService service created.");
|
|
1241
1234
|
const sliderArr = [
|
|
1242
1235
|
"rcvPreempt",
|
|
@@ -1265,15 +1258,6 @@ class AnnaFilterService {
|
|
|
1265
1258
|
"udDeficitValue",
|
|
1266
1259
|
"bookedValue",
|
|
1267
1260
|
"bookedSpots",
|
|
1268
|
-
"userChanges",
|
|
1269
|
-
"UDGrp",
|
|
1270
|
-
"UDImps",
|
|
1271
|
-
"ODGrp",
|
|
1272
|
-
"ODImps",
|
|
1273
|
-
"udImpsPercent",
|
|
1274
|
-
"udGrpPercent",
|
|
1275
|
-
"odImpsPercent",
|
|
1276
|
-
"odGrpPercent",
|
|
1277
1261
|
"userADUs",
|
|
1278
1262
|
"buyerChanges",
|
|
1279
1263
|
"userChanges",
|
|
@@ -1294,9 +1278,9 @@ class AnnaFilterService {
|
|
|
1294
1278
|
}
|
|
1295
1279
|
returnMinAndMaxDate(data, key) {
|
|
1296
1280
|
data = data.filter((obj) => !["", "-", null].includes(obj[key]));
|
|
1297
|
-
let DateArr = data.map((obj) =>
|
|
1298
|
-
let minDate =
|
|
1299
|
-
let maxDate =
|
|
1281
|
+
let DateArr = data.map((obj) => moment(obj[key]));
|
|
1282
|
+
let minDate = moment.min(DateArr);
|
|
1283
|
+
let maxDate = moment.max(DateArr);
|
|
1300
1284
|
return [minDate, maxDate];
|
|
1301
1285
|
}
|
|
1302
1286
|
isTooltipActive(header, sortMap) {
|
|
@@ -1330,7 +1314,7 @@ class AnnaFilterService {
|
|
|
1330
1314
|
let uniqueDates = uniq(data.map((u) => u["date"]));
|
|
1331
1315
|
let uniqueDatesInNgbDateFormat = [];
|
|
1332
1316
|
uniqueDates.forEach((date) => {
|
|
1333
|
-
uniqueDatesInNgbDateFormat.push(this.dateTimeFormatService.convertToNgbDateStandardFormat(
|
|
1317
|
+
uniqueDatesInNgbDateFormat.push(this.dateTimeFormatService.convertToNgbDateStandardFormat(moment(date, "MM/DD/YY").format("MM/DD/YYYY")));
|
|
1334
1318
|
});
|
|
1335
1319
|
return uniqueDatesInNgbDateFormat;
|
|
1336
1320
|
}
|
|
@@ -1423,17 +1407,17 @@ class AnnaFilterService {
|
|
|
1423
1407
|
return filteredData;
|
|
1424
1408
|
}
|
|
1425
1409
|
returnOrdersInTheRange(order, range, key) {
|
|
1426
|
-
let isDateBetweenTheSelectedRange =
|
|
1427
|
-
let isDateSameAsTheMinSelectedDate =
|
|
1428
|
-
let isDateSameAsTheMaxSelectedDate =
|
|
1410
|
+
let isDateBetweenTheSelectedRange = moment(order[key]).isBetween(range.minSelectedDate, range.maxSelectedDate);
|
|
1411
|
+
let isDateSameAsTheMinSelectedDate = moment(order[key]).isSame(range.minSelectedDate);
|
|
1412
|
+
let isDateSameAsTheMaxSelectedDate = moment(order[key]).isSame(range.maxSelectedDate);
|
|
1429
1413
|
return isDateBetweenTheSelectedRange || isDateSameAsTheMinSelectedDate || isDateSameAsTheMaxSelectedDate;
|
|
1430
1414
|
}
|
|
1431
1415
|
returnDataForTimeRange(obj, selectedData) {
|
|
1432
1416
|
let format = "HH:mm:ss";
|
|
1433
|
-
let selectedStartDate =
|
|
1434
|
-
let selectedEndDate =
|
|
1435
|
-
let startTime =
|
|
1436
|
-
let endTime =
|
|
1417
|
+
let selectedStartDate = moment(selectedData.startTime, format);
|
|
1418
|
+
let selectedEndDate = moment(selectedData.endTime, format);
|
|
1419
|
+
let startTime = moment(obj.startTime, format);
|
|
1420
|
+
let endTime = moment(obj.endTime, format);
|
|
1437
1421
|
let isStartTimeSameAsSelectedStartTime = startTime.isSame(selectedStartDate);
|
|
1438
1422
|
let isStartTimeBetweenSelectedStartAndEndTime = startTime.isBetween(selectedStartDate, selectedEndDate);
|
|
1439
1423
|
let isEndTimeSameAsSelectedEndTime = endTime.isSame(selectedEndDate);
|
|
@@ -1445,8 +1429,8 @@ class AnnaFilterService {
|
|
|
1445
1429
|
}
|
|
1446
1430
|
returnDataForFromAndToTimeRange(obj, selectedData, key) {
|
|
1447
1431
|
let format = "HH:mm:ss";
|
|
1448
|
-
let selectedFromTime =
|
|
1449
|
-
let selectedToTime =
|
|
1432
|
+
let selectedFromTime = moment(selectedData.fromTime, format);
|
|
1433
|
+
let selectedToTime = moment(selectedData.toTime, format);
|
|
1450
1434
|
let objTime = obj[key];
|
|
1451
1435
|
if (["", "-", null].includes(objTime)) {
|
|
1452
1436
|
return false;
|
|
@@ -1466,18 +1450,18 @@ class AnnaFilterService {
|
|
|
1466
1450
|
if (!selectedData.includeTimeRange) {
|
|
1467
1451
|
return false;
|
|
1468
1452
|
}
|
|
1469
|
-
let
|
|
1470
|
-
let isObjTimeSameAsSelectedFromTime =
|
|
1471
|
-
let isObjTimeSameAsSelectedToTime =
|
|
1472
|
-
let isObjTimeBetweenSelectedFromTimeAndToTime =
|
|
1453
|
+
let momentTime = moment(objTime, format);
|
|
1454
|
+
let isObjTimeSameAsSelectedFromTime = momentTime.isSame(selectedFromTime);
|
|
1455
|
+
let isObjTimeSameAsSelectedToTime = momentTime.isSame(selectedToTime);
|
|
1456
|
+
let isObjTimeBetweenSelectedFromTimeAndToTime = momentTime.isBetween(selectedFromTime, selectedToTime);
|
|
1473
1457
|
return (isObjTimeSameAsSelectedFromTime ||
|
|
1474
1458
|
isObjTimeSameAsSelectedToTime ||
|
|
1475
1459
|
isObjTimeBetweenSelectedFromTimeAndToTime);
|
|
1476
1460
|
}
|
|
1477
1461
|
returnDataForStartAndEndTimeRange(obj, selectedData, key) {
|
|
1478
1462
|
let format = "HH:mm:ss";
|
|
1479
|
-
let selectedFromTime =
|
|
1480
|
-
let selectedToTime =
|
|
1463
|
+
let selectedFromTime = moment(selectedData.fromTime, format);
|
|
1464
|
+
let selectedToTime = moment(selectedData.toTime, format);
|
|
1481
1465
|
if (selectedData.includeMulti && obj[key][0] == "<multi>") {
|
|
1482
1466
|
return true;
|
|
1483
1467
|
}
|
|
@@ -1493,8 +1477,8 @@ class AnnaFilterService {
|
|
|
1493
1477
|
if (!selectedData.includeTimeRange) {
|
|
1494
1478
|
return false;
|
|
1495
1479
|
}
|
|
1496
|
-
let startTime =
|
|
1497
|
-
let endTime =
|
|
1480
|
+
let startTime = moment(obj[key][1], format);
|
|
1481
|
+
let endTime = moment(obj[key][2], format);
|
|
1498
1482
|
let isStartTimeSameAsSelectedStartTime = startTime.isSame(selectedFromTime);
|
|
1499
1483
|
let isStartTimeBetweenSelectedStartAndEndTime = startTime.isBetween(selectedFromTime, selectedToTime);
|
|
1500
1484
|
let isEndTimeSameAsSelectedEndTime = endTime.isSame(selectedToTime);
|
|
@@ -1508,20 +1492,20 @@ class AnnaFilterService {
|
|
|
1508
1492
|
let parsingFormat;
|
|
1509
1493
|
if (key === "period") {
|
|
1510
1494
|
parsingFormat = "YYYY-MM-DD";
|
|
1511
|
-
let
|
|
1512
|
-
let
|
|
1513
|
-
let startDateIsBetweenSelDate =
|
|
1514
|
-
let endDateIsBetweenSelDate =
|
|
1515
|
-
let startDateIsSameAsSelStartDate = value.fromDate.isSame(
|
|
1516
|
-
let endDateIsSameAsSelEndDate = value.toDate.isSame(
|
|
1495
|
+
let momentStartDate = moment(obj.startDate);
|
|
1496
|
+
let momentEndDate = moment(obj.endDate);
|
|
1497
|
+
let startDateIsBetweenSelDate = momentStartDate.isBetween(value.fromDate, value.toDate);
|
|
1498
|
+
let endDateIsBetweenSelDate = momentEndDate.isBetween(value.fromDate, value.toDate);
|
|
1499
|
+
let startDateIsSameAsSelStartDate = value.fromDate.isSame(momentStartDate);
|
|
1500
|
+
let endDateIsSameAsSelEndDate = value.toDate.isSame(momentEndDate);
|
|
1517
1501
|
return ((startDateIsBetweenSelDate || startDateIsSameAsSelStartDate) &&
|
|
1518
1502
|
(endDateIsBetweenSelDate || endDateIsSameAsSelEndDate));
|
|
1519
1503
|
}
|
|
1520
1504
|
else if (key === "AirDate" || key === "flightStartDate" || key === "flightEndDate") {
|
|
1521
1505
|
parsingFormat = "MM/DD/YYYY";
|
|
1522
|
-
let dateIsBetweenSelDate =
|
|
1523
|
-
let dateIsSameAsSelStartDate =
|
|
1524
|
-
let dateIsSameAsSelEndDate =
|
|
1506
|
+
let dateIsBetweenSelDate = moment(obj[key], parsingFormat).isBetween(value.minSelectedDate, value.maxSelectedDate);
|
|
1507
|
+
let dateIsSameAsSelStartDate = moment(obj[key], parsingFormat).isSame(value.minSelectedDate);
|
|
1508
|
+
let dateIsSameAsSelEndDate = moment(obj[key], parsingFormat).isSame(value.maxSelectedDate);
|
|
1525
1509
|
return dateIsBetweenSelDate || dateIsSameAsSelStartDate || dateIsSameAsSelEndDate;
|
|
1526
1510
|
}
|
|
1527
1511
|
}
|
|
@@ -1595,10 +1579,10 @@ class AnnaFilterService {
|
|
|
1595
1579
|
}
|
|
1596
1580
|
isObjectInTheRange(obj, value, key) {
|
|
1597
1581
|
let objVal = obj[key];
|
|
1598
|
-
let
|
|
1582
|
+
let momentDate = moment(objVal);
|
|
1599
1583
|
let isDateSameAsStartOfTheRange = value.fromDate.isSame(objVal);
|
|
1600
1584
|
let isDateSameAsEndOfTheRange = value.toDate.isSame(objVal);
|
|
1601
|
-
let isDateBetweenTheStartAndEndOfRange =
|
|
1585
|
+
let isDateBetweenTheStartAndEndOfRange = momentDate.isBetween(value.fromDate, value.toDate);
|
|
1602
1586
|
return isDateSameAsStartOfTheRange || isDateSameAsEndOfTheRange || isDateBetweenTheStartAndEndOfRange;
|
|
1603
1587
|
}
|
|
1604
1588
|
updateStateOfTheCurrentFilterTab(sortMap) {
|
|
@@ -1628,45 +1612,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImpor
|
|
|
1628
1612
|
}]
|
|
1629
1613
|
}], ctorParameters: function () { return [{ type: AnnaDateTimeFormatService }, { type: AnnaSortService }]; } });
|
|
1630
1614
|
|
|
1631
|
-
// Angular import statements
|
|
1632
|
-
class AnnaGenericTableService {
|
|
1633
|
-
constructor(annaFilterService, annaSortService) {
|
|
1634
|
-
this.annaFilterService = annaFilterService;
|
|
1635
|
-
this.annaSortService = annaSortService;
|
|
1636
|
-
this.virtualScrollSubject = new Subject();
|
|
1637
|
-
}
|
|
1638
|
-
calculateNumberOfSkeletonColumnsForTable(tableHeaders) {
|
|
1639
|
-
let numberOfSkeletonColumns = [];
|
|
1640
|
-
var headersInEachColumn = 0;
|
|
1641
|
-
tableHeaders.forEach((column) => {
|
|
1642
|
-
if (column.visible) {
|
|
1643
|
-
headersInEachColumn = 0;
|
|
1644
|
-
column.headerInfo.forEach(() => {
|
|
1645
|
-
headersInEachColumn++;
|
|
1646
|
-
});
|
|
1647
|
-
numberOfSkeletonColumns.push(Array(headersInEachColumn).fill(0));
|
|
1648
|
-
}
|
|
1649
|
-
});
|
|
1650
|
-
return numberOfSkeletonColumns;
|
|
1651
|
-
}
|
|
1652
|
-
initColumnFilterAndSorting() {
|
|
1653
|
-
this.annaFilterService.tooltipSelectedMap = new Map();
|
|
1654
|
-
this.annaFilterService.selectedRadio = null;
|
|
1655
|
-
this.annaFilterService.appliedFiltersArray = [];
|
|
1656
|
-
this.annaFilterService.initialValueMap = new Map();
|
|
1657
|
-
this.annaSortService.columnSortState = new Map();
|
|
1658
|
-
this.annaSortService.noSortingAppliedData = [];
|
|
1659
|
-
}
|
|
1660
|
-
}
|
|
1661
|
-
AnnaGenericTableService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaGenericTableService, deps: [{ token: AnnaFilterService }, { token: AnnaSortService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1662
|
-
AnnaGenericTableService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaGenericTableService, providedIn: "root" });
|
|
1663
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaGenericTableService, decorators: [{
|
|
1664
|
-
type: Injectable,
|
|
1665
|
-
args: [{
|
|
1666
|
-
providedIn: "root",
|
|
1667
|
-
}]
|
|
1668
|
-
}], ctorParameters: function () { return [{ type: AnnaFilterService }, { type: AnnaSortService }]; } });
|
|
1669
|
-
|
|
1670
1615
|
// Angular import statements
|
|
1671
1616
|
//Add onChange push change detection
|
|
1672
1617
|
class AnnaSortComponent {
|
|
@@ -1719,7 +1664,7 @@ class AnnaSortComponent {
|
|
|
1719
1664
|
}
|
|
1720
1665
|
}
|
|
1721
1666
|
AnnaSortComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaSortComponent, deps: [{ token: AnnaSortService }], target: i0.ɵɵFactoryTarget.Component });
|
|
1722
|
-
AnnaSortComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: AnnaSortComponent, selector: "anna-core-sort-lib", inputs: { sortObjectKey: "sortObjectKey" }, outputs: { sortOptionClicked: "sortOptionClicked" }, usesOnChanges: true, ngImport: i0, template: "<p class=\"sort-container\">\r\n <button\r\n class=\"sort-btn\"\r\n *ngFor=\"let option of sortOptions; let i = index\"\r\n (click)=\"sortOptionChanged(i, option.sortType)\"\r\n [ngClass]=\"{ active: option.isOptionActive }\"\r\n >\r\n {{option.text}}\r\n </button>\r\n</p>", styles: [".sort-btn{background:white;border:none;border-right:1px solid #1b88ff;text-decoration:underline;font-family:Roboto;font-size:14px;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}\n"], directives: [{ type:
|
|
1667
|
+
AnnaSortComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: AnnaSortComponent, selector: "anna-core-sort-lib", inputs: { sortObjectKey: "sortObjectKey" }, outputs: { sortOptionClicked: "sortOptionClicked" }, usesOnChanges: true, ngImport: i0, template: "<p class=\"sort-container\">\r\n <button\r\n class=\"sort-btn\"\r\n *ngFor=\"let option of sortOptions; let i = index\"\r\n (click)=\"sortOptionChanged(i, option.sortType)\"\r\n [ngClass]=\"{ active: option.isOptionActive }\"\r\n >\r\n {{option.text}}\r\n </button>\r\n</p>", styles: [".sort-btn{background:white;border:none;border-right:1px solid #1b88ff;text-decoration:underline;font-family:Roboto;font-size:14px;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}\n"], directives: [{ type: i16.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i16.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1723
1668
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaSortComponent, decorators: [{
|
|
1724
1669
|
type: Component,
|
|
1725
1670
|
args: [{ selector: 'anna-core-sort-lib', changeDetection: ChangeDetectionStrategy.OnPush, template: "<p class=\"sort-container\">\r\n <button\r\n class=\"sort-btn\"\r\n *ngFor=\"let option of sortOptions; let i = index\"\r\n (click)=\"sortOptionChanged(i, option.sortType)\"\r\n [ngClass]=\"{ active: option.isOptionActive }\"\r\n >\r\n {{option.text}}\r\n </button>\r\n</p>", styles: [".sort-btn{background:white;border:none;border-right:1px solid #1b88ff;text-decoration:underline;font-family:Roboto;font-size:14px;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}\n"] }]
|
|
@@ -1731,15 +1676,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImpor
|
|
|
1731
1676
|
|
|
1732
1677
|
// Angular import statements
|
|
1733
1678
|
class AnnaNonEditableGenericTableComponent {
|
|
1734
|
-
constructor(cdRef, annaSortService, annaDateTimeFormatService, annaFilterService
|
|
1679
|
+
constructor(cdRef, annaSortService, annaDateTimeFormatService, annaFilterService) {
|
|
1735
1680
|
this.cdRef = cdRef;
|
|
1736
1681
|
this.annaSortService = annaSortService;
|
|
1737
1682
|
this.annaDateTimeFormatService = annaDateTimeFormatService;
|
|
1738
1683
|
this.annaFilterService = annaFilterService;
|
|
1739
|
-
this.annaGenericTableService = annaGenericTableService;
|
|
1740
1684
|
this.maximumRowsWhichCanBeRenderedWithoutScroll = 5;
|
|
1741
1685
|
this.limit = 30;
|
|
1742
1686
|
this.includeBorderInTableHeight = true;
|
|
1687
|
+
this.clickableRow = false;
|
|
1743
1688
|
this.toggleCheckbox = new EventEmitter();
|
|
1744
1689
|
this.toggleRowCheckbox = new EventEmitter();
|
|
1745
1690
|
this.toggleHeaderCheckbox = new EventEmitter();
|
|
@@ -1755,7 +1700,8 @@ class AnnaNonEditableGenericTableComponent {
|
|
|
1755
1700
|
this.gtTextActionClicked = new EventEmitter();
|
|
1756
1701
|
this.gtViewDetailClicked = new EventEmitter();
|
|
1757
1702
|
this.downloadSpotDetails = new EventEmitter();
|
|
1758
|
-
this.
|
|
1703
|
+
this.clickableDataClicked = new EventEmitter();
|
|
1704
|
+
this.noDataWidth = "55%";
|
|
1759
1705
|
this.disableClearAllBtn = true;
|
|
1760
1706
|
this.disableColumnClearAllBtn = true;
|
|
1761
1707
|
this.allSelected = 0;
|
|
@@ -1911,17 +1857,13 @@ class AnnaNonEditableGenericTableComponent {
|
|
|
1911
1857
|
this.tooltipRadioTextMap.set("bookedCpmValue", "Booked CPM");
|
|
1912
1858
|
this.tooltipRadioTextMap.set("bookedEffectiveCpmValue", "Effective CPM");
|
|
1913
1859
|
this.tooltipRadioTextMap.set("orderSource", "Order Source");
|
|
1914
|
-
this.tooltipRadioTextMap.set("orderCategory", "
|
|
1860
|
+
this.tooltipRadioTextMap.set("orderCategory", "Category");
|
|
1915
1861
|
this.tooltipRadioTextMap.set("cashOrTrade", "C/T");
|
|
1916
1862
|
this.tooltipRadioTextMap.set("revisionStartDate", "Revision Start Date");
|
|
1917
|
-
this.tooltipRadioTextMap.set("
|
|
1918
|
-
this.tooltipRadioTextMap.set("
|
|
1919
|
-
this.tooltipRadioTextMap.set("
|
|
1920
|
-
this.tooltipRadioTextMap.set("
|
|
1921
|
-
this.tooltipRadioTextMap.set("udImpsPercent", "UD IMPS %");
|
|
1922
|
-
this.tooltipRadioTextMap.set("udGrpPercent", "UD GRP %");
|
|
1923
|
-
this.tooltipRadioTextMap.set("odImpsPercent", "OD IMPS %");
|
|
1924
|
-
this.tooltipRadioTextMap.set("odGrpPercent", "OD GRP %");
|
|
1863
|
+
this.tooltipRadioTextMap.set("name", "name");
|
|
1864
|
+
this.tooltipRadioTextMap.set("role", "role");
|
|
1865
|
+
this.tooltipRadioTextMap.set("stationCount", "stationCount");
|
|
1866
|
+
this.tooltipRadioTextMap.set("stationList", "stationList");
|
|
1925
1867
|
}
|
|
1926
1868
|
generateTableDataWrapper() {
|
|
1927
1869
|
this.showSkeletonLoading = true;
|
|
@@ -2050,16 +1992,10 @@ class AnnaNonEditableGenericTableComponent {
|
|
|
2050
1992
|
}
|
|
2051
1993
|
else {
|
|
2052
1994
|
let values = dataToCheck.map((u) => u[item]);
|
|
2053
|
-
|
|
2054
|
-
let activeAndLastlyAppliedHeader = false;
|
|
2055
|
-
if (this.annaFilterService.appliedFiltersArray.length > 0 &&
|
|
2056
|
-
this.annaFilterService.appliedFiltersArray[this.annaFilterService.appliedFiltersArray.length - 1] == item) {
|
|
2057
|
-
activeAndLastlyAppliedHeader = true;
|
|
2058
|
-
}
|
|
2059
|
-
if (header.filter == "CHECKBOX" && (uniq(values).filter(n => n != null).length > 1 || activeAndLastlyAppliedHeader)) {
|
|
1995
|
+
if (header.filter == "CHECKBOX" && uniq(values).filter(n => n != null).length > 1) {
|
|
2060
1996
|
enabledHeaders.push(item);
|
|
2061
1997
|
}
|
|
2062
|
-
else if (header.filter != "CHECKBOX" &&
|
|
1998
|
+
else if (header.filter != "CHECKBOX" && uniq(values).filter(n => n != null && n != "-").length > 1) {
|
|
2063
1999
|
enabledHeaders.push(item);
|
|
2064
2000
|
}
|
|
2065
2001
|
}
|
|
@@ -2657,8 +2593,8 @@ class AnnaNonEditableGenericTableComponent {
|
|
|
2657
2593
|
currentSelectedDate = this.annaFilterService.initialValueMap.get(this.annaFilterService.selectedRadio);
|
|
2658
2594
|
}
|
|
2659
2595
|
else {
|
|
2660
|
-
currentSelectedDate.fromDate =
|
|
2661
|
-
currentSelectedDate.toDate =
|
|
2596
|
+
currentSelectedDate.fromDate = moment(this.annaDateTimeFormatService.convertNgbDateToMoment(currentSelectedDate.fromDate));
|
|
2597
|
+
currentSelectedDate.toDate = moment(this.annaDateTimeFormatService.convertNgbDateToMoment(currentSelectedDate.toDate));
|
|
2662
2598
|
}
|
|
2663
2599
|
this.annaFilterService.reOrderAppliedFiltersState(this.clonedTableData, currentSelectedDate);
|
|
2664
2600
|
this.annaFilterService.tooltipSelectedMap.set(this.annaFilterService.selectedRadio, currentSelectedDate);
|
|
@@ -2816,7 +2752,7 @@ class AnnaNonEditableGenericTableComponent {
|
|
|
2816
2752
|
let startTime24HrFormat = startTime24HrFormatArr[0] + ":" + startTime24HrFormatArr[1] + ":00";
|
|
2817
2753
|
let endTime24HrFormatArr = this.annaDateTimeFormatService.convertTotwentyFourHrsFormat(this.selectedToTime[0] + ":" + this.selectedToTime[1] + " " + this.selectedToTime[2], true);
|
|
2818
2754
|
let endTime24HrFormat = endTime24HrFormatArr[0] + ":" + endTime24HrFormatArr[1] + ":00";
|
|
2819
|
-
return !(
|
|
2755
|
+
return !(moment(startTime24HrFormat, timeFormat).isAfter(moment(endTime24HrFormat, timeFormat)));
|
|
2820
2756
|
}
|
|
2821
2757
|
sortedData(event) {
|
|
2822
2758
|
if (event.type == "none") {
|
|
@@ -3218,8 +3154,8 @@ class AnnaNonEditableGenericTableComponent {
|
|
|
3218
3154
|
currentSelectedDate = this.annaFilterService.initialValueMap.get(this.annaFilterService.selectedRadio);
|
|
3219
3155
|
}
|
|
3220
3156
|
else {
|
|
3221
|
-
currentSelectedDate.fromDate =
|
|
3222
|
-
currentSelectedDate.toDate =
|
|
3157
|
+
currentSelectedDate.fromDate = moment(this.annaDateTimeFormatService.convertNgbDateToMoment(currentSelectedDate.fromDate));
|
|
3158
|
+
currentSelectedDate.toDate = moment(this.annaDateTimeFormatService.convertNgbDateToMoment(currentSelectedDate.toDate));
|
|
3223
3159
|
}
|
|
3224
3160
|
this.isFilterChanged = !isEqual(previousSelectedDate, currentSelectedDate);
|
|
3225
3161
|
}
|
|
@@ -3384,13 +3320,23 @@ class AnnaNonEditableGenericTableComponent {
|
|
|
3384
3320
|
tableContainerScrolled(event) {
|
|
3385
3321
|
this.isScrolledLeft = event.target.scrollLeft > 0;
|
|
3386
3322
|
}
|
|
3323
|
+
mouseEnterOnStringTextActionType(rowData) {
|
|
3324
|
+
this.userActionTableMetaData = {
|
|
3325
|
+
'lastEmailResentAt': rowData.lastEmailResentAt,
|
|
3326
|
+
'passwordValidity': rowData.passwordValidity,
|
|
3327
|
+
'status': rowData.userActivationStatus
|
|
3328
|
+
};
|
|
3329
|
+
}
|
|
3330
|
+
onClickableDataClicked(Rowdata, id) {
|
|
3331
|
+
this.clickableDataClicked.emit(Rowdata);
|
|
3332
|
+
}
|
|
3387
3333
|
}
|
|
3388
|
-
AnnaNonEditableGenericTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaNonEditableGenericTableComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: AnnaSortService }, { token: AnnaDateTimeFormatService }, { token: AnnaFilterService }
|
|
3389
|
-
AnnaNonEditableGenericTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: AnnaNonEditableGenericTableComponent, selector: "anna-core-non-editable-generic-table-lib", inputs: { showSkeletonLoading: "showSkeletonLoading", tableHeaders: "tableHeaders", tableData: "tableData", clonedTableData: "clonedTableData", numberOfSkeletonRows: "numberOfSkeletonRows", numberOfSkeletonColumns: "numberOfSkeletonColumns", gtGeneralConfig: "gtGeneralConfig", totalRowInfo: "totalRowInfo", gtDimension: "gtDimension", tableClass: "tableClass", maximumRowsWhichCanBeRenderedWithoutScroll: "maximumRowsWhichCanBeRenderedWithoutScroll", limit: "limit", includeBorderInTableHeight: "includeBorderInTableHeight", downloadInProgress: "downloadInProgress", percentDone: "percentDone", starredInProgress: "starredInProgress" }, 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", downloadSpotDetails: "downloadSpotDetails" }, viewQueries: [{ propertyName: "viewChildTableHeaders", predicate: ["tableHeader"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"table-container {{gtGeneralConfig?.tableOuterContainerName}}\" [ngClass]=\"{ 'scroll-left-shadow-effect': isScrolledLeft }\" (scroll)=\"onTableContainerScroll($event)\">\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 < maximumRowsWhichCanBeRenderedWithoutScroll\r\n ? 'calc(' +\r\n ((gtDimension.rowHeight + (includeBorderInTableHeight ? rowBorderWidth : 0)) * tableData.length +\r\n (!tableData.length || !gtGeneralConfig.totalRow\r\n ? gtDimension.headerHeight\r\n : gtDimension.headerHeight + gtDimension.rowHeight + ( includeBorderInTableHeight ? (2 * rowBorderWidth) : 0))) +\r\n 'px)'\r\n : gtDimension.tableHeight\r\n }\"\r\n >\r\n <table class=\"gt\" [ngClass]=\"tableClass\" mat-table [dataSource]=\"renderedData\">\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\"(click)=\"dataRowClicked(rowData)\"\r\n ></tr>\r\n\r\n <!-- TOTAL ROW -->\r\n <ng-container [matColumnDef]=\"column.colName\" *ngFor=\"let column of totalRowInfo; trackBy: trackByFn\">\r\n <td mat-header-cell *matHeaderCellDef [attr.colspan]=\"column.colspan\" class=\"{{column.class}}\">\r\n <strong>{{ column.data }}</strong>\r\n <ng-container *ngIf=\"column.lowerData\">\r\n <br>\r\n <span \r\n *ngIf=\"column.colName == 'total-potential-booked-unit' && gtGeneralConfig.component == 'RATING';\r\n else columnLowerData\"\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 \r\n && 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>{{ column.lowerData }}</span>\r\n </ng-template>\r\n </ng-container>\r\n <ng-container *ngIf=\"column.tooltipMessage\">\r\n <i class=\"mi mdi-info-outline info-label\" container=\"body\"\r\n [ngbTooltip]=\"column.tooltipMessage\"\r\n tooltipClass=\"gt-total-row-tooltip\" placement=\"bottom\"></i>\r\n </ng-container>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- MAIN ROW -->\r\n <ng-container [matColumnDef]=\"columnDef.headerInfo[0].objectKey\" *ngFor=\"let columnDef of tableHeaders; trackBy: trackByFn\">\r\n <th #tableHeader nowrap mat-header-cell *matHeaderCellDef [style.width]=\"columnDef.width\">\r\n <div class=\"row mx-0\" *ngFor=\"let header of columnDef.headerInfo; let j = index;\"> \r\n <p\r\n *ngIf=\"header.typeOfHeaderData === 'STRING'\"\r\n [ngClass]=\"{ 'upper-label': j === 0, 'lower-label': j === 1 }\"\r\n >\r\n {{ header.name }}\r\n <i *ngIf=\"header.tooltip && header.tooltip.name == 'impsInfoTooltip'\" class=\"{{header['tooltip'].iconClass}}\"\r\n [ngStyle]=\"{'float': header['tooltip'].iconPosition}\"\r\n #t=\"ngbTooltip\"\r\n [ngbTooltip]=\"impsInfoTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i *ngIf=\"header.tooltip && header.tooltip.name == 'spotsColumnEquivalizationMessageTooltip'\" class=\"{{header['tooltip'].iconClass}}\"\r\n [ngStyle]=\"{'float': header['tooltip'].iconPosition}\"\r\n #t=\"ngbTooltip\"\r\n [ngbTooltip]=\"spotsColumnEquivalizationMessageTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i *ngIf=\"header.tooltip && header.tooltip.name == 'ratingInfoTooltip'\" class=\"{{header['tooltip'].iconClass}}\"\r\n [ngStyle]=\"{'float': header['tooltip'].iconPosition}\"\r\n #t=\"ngbTooltip\"\r\n [ngbTooltip]=\"ratingInfoTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i *ngIf=\"header.tooltip && header.tooltip.name == 'rateInfoTooltip'\" class=\"{{header['tooltip'].iconClass}}\"\r\n [ngStyle]=\"{'float': header['tooltip'].iconPosition}\"\r\n #t=\"ngbTooltip\"\r\n [ngbTooltip]=\"rateInfoTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i *ngIf=\"header.tooltip && header.tooltip.name == 'ongoingRevBookedColumnTooltip'\" class=\"{{header['tooltip'].iconClass}}\"\r\n [ngStyle]=\"{'float': header['tooltip'].iconPosition}\"\r\n #t=\"ngbTooltip\"\r\n [ngbTooltip]=\"ongoingRevBookedColumnTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i *ngIf=\"header.tooltip && header.tooltip.name == 'completedRevBookedColumnTooltip'\" class=\"{{header['tooltip'].iconClass}}\"\r\n [ngStyle]=\"{'float': header['tooltip'].iconPosition}\"\r\n #t=\"ngbTooltip\"\r\n [ngbTooltip]=\"completedRevBookedColumnTooltip\"\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 *ngIf=\"gtGeneralConfig.showAllColumnFilter\" class=\"sort-filter-container\">\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: annaFilterService.isFilterSortActive && annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys], \r\n disabled: header.disableTooltipIcon\r\n }\"\r\n [ngbTooltip]=\"filterTooltip\"\r\n placement=\"bottom left-top auto\"\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: annaFilterService.isFilterSortActive && annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon\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: annaFilterService.isFilterSortActive && annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon\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: annaFilterService.isFilterSortActive && annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon\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: annaFilterService.isFilterSortActive && annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon\r\n }\"\r\n [ngbTooltip]=\"timeFilterToolTip\"\r\n placement=\"bottom left-top\"\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 *ngIf=\"header.tooltip && header.tooltip.name == 'lurViolationInfoTooltip'\" class=\"{{header['tooltip'].iconClass}}\"\r\n [ngStyle]=\"{'float': header['tooltip'].iconPosition}\"\r\n #t=\"ngbTooltip\"\r\n [ngbTooltip]=\"lurViolationInfoTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n\r\n </div>\r\n </div>\r\n </th>\r\n\r\n <ng-container *ngIf=\"gtGeneralConfig.component == 'DRR'\">\r\n <ng-container *matCellDef=\"let ROW_DATA\">\r\n <ng-container *ngIf=\"showSkeletonLoading\">\r\n <td mat-cell>\r\n <ngx-skeleton-loader count=\"1\" [theme]=\"{ height: '10px', display: 'block' }\">\r\n </ngx-skeleton-loader>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!showSkeletonLoading\">\r\n <td\r\n mat-cell\r\n *ngIf=\"!ROW_DATA['hide' + columnDef.headerInfo[0].objectKey + 'Td']\"\r\n [attr.rowspan]=\"ROW_DATA[columnDef.headerInfo[0].objectKey + 'Rowspan']\">\r\n <ng-container\r\n *ngFor=\"let subline of columnDef.headerInfo; let sublineIndex = index; trackBy: trackByFn\"\r\n >\r\n <ng-container [ngSwitch]=\"subline.typeOfBodyData\">\r\n <ng-container *ngSwitchCase=\"'ICON'\">\r\n <i [class]=\"ROW_DATA.iconClass\"></i>\r\n </ng-container>\r\n \r\n <ng-container *ngSwitchCase=\"'CHECKBOX'\">\r\n <span\r\n *ngIf=\"ROW_DATA[subline.objectKey]\"\r\n [ngClass]=\"{ 'disable-checkbox': ROW_DATA[subline.isDisabledKey] }\"\r\n class=\"material-icons custom-column-checkbox-checked\"\r\n (click)=\"selectUnselectRow(ROW_DATA)\"\r\n >\r\n check_box\r\n </span>\r\n <span\r\n *ngIf=\"!ROW_DATA[subline.objectKey]\"\r\n class=\"material-icons custom-column-checkbox-unchecked\"\r\n [ngClass]=\"{ 'disable-checkbox': ROW_DATA[subline.isDisabledKey] }\"\r\n (click)=\"selectUnselectRow(ROW_DATA)\"\r\n >\r\n check_box_outline_blank\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']\"\r\n [ngModel]=\"ROW_DATA[subline.objectKey]\"\r\n [disabled]=\"ROW_DATA['RadioButtonConfig'][0].isDisabled\"\r\n >\r\n <ng-container\r\n *ngFor=\"let radioButton of ROW_DATA['RadioButtonConfig']; let last = last\"\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 }}</mat-radio-button\r\n ><br *ngIf=\"!last\" />\r\n </ng-container>\r\n </mat-radio-group>\r\n </ng-container>\r\n \r\n <div *ngSwitchDefault>\r\n {{ ROW_DATA[subline.objectKey] }}\r\n \r\n <ng-container\r\n *ngIf=\"\r\n subline.objectKey == 'Status' && (ROW_DATA['Remarks'] !== null)\r\n \"\r\n >\r\n <i\r\n class=\"mi mdi-info-outline remarks-tooltip\"\r\n [ngbTooltip]=\"columnInfoTooltip\"\r\n placement=\"bottom\"\r\n container=\"body\"\r\n tooltipClass=\"remarks-info-tooltip\"\r\n #t=\"ngbTooltip\"\r\n ></i>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </td>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"gtGeneralConfig.component != 'DRR'\">\r\n <td mat-cell *matCellDef=\"let ROW_DATA\" [style.background]=\"ROW_DATA.backgroundColor\" \r\n [style.border]=\"ROW_DATA.border\"\r\n class=\"{{ROW_DATA.rowClass}}\"\r\n >\r\n <ngx-skeleton-loader *ngIf=\"showSkeletonLoading\" count=\"1\" [theme]=\"{ height: '10px', display: 'block' }\">\r\n </ngx-skeleton-loader>\r\n\r\n <ng-container *ngIf=\"!showSkeletonLoading\">\r\n <ng-container *ngIf=\"tableData.length > 0 && !(isNoDataToDisplaySubject$ | async)\">\r\n <div showEllipsisTextOnHover *ngFor=\"let subline of columnDef.headerInfo; let subLineIndex = index; trackBy: trackByFn\">\r\n <ng-container [ngSwitch]=\"columnDef.headerInfo[subLineIndex].typeOfBodyData\">\r\n <ng-container *ngSwitchCase=\"'ICON'\">\r\n <i *ngIf=\"!(starredInProgress && ROW_DATA.orderId == selectedStarredOrderId)\" [class]=\"ROW_DATA.iconClass\" (click)=\"iconClicked(ROW_DATA,ROW_DATA.iconClass)\"></i>\r\n <ng-container *ngIf=\"starredInProgress && ROW_DATA.orderId == selectedStarredOrderId\">\r\n <div class=\"spinner-for-button-directive\"></div>\r\n <!-- <ng-container [ngTemplateOutlet]=\"circularProgressBar\"></ng-container> -->\r\n </ng-container>\r\n </ng-container>\r\n \r\n <ng-container *ngSwitchCase=\"'SVG_ICON'\">\r\n <anna-core-anna-icon-column [componentName]=\"gtGeneralConfig.component\" [objectKey]=\"subline.objectKey\" [dataObject]=\"ROW_DATA\" (onColumnIconClicked)=\"svgIconClicked($event)\"></anna-core-anna-icon-column>\r\n </ng-container>\r\n \r\n <ng-container *ngSwitchCase=\"'TEXT_ACTIONS'\">\r\n <button *ngFor=\"let text of ROW_DATA.textActions\" (click)=\"textActionClicked(ROW_DATA,text.id)\" [disabled]=\"text.isDisabled\" class=\"{{text.class}}\">{{text.name}}</button>\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': 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': 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 </ng-container>\r\n \r\n <ng-container *ngSwitchCase=\"'CLICKABLE_DATA'\">\r\n <span \r\n *ngIf=\"subline.objectKey == 'displayBookedUnits' && gtGeneralConfig.component == 'RATING'\"\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\">get_app</span>\r\n <ng-container *ngIf=\"downloadInProgress \r\n && ROW_DATA.inventoryCodeId == selectedInventoryIdForDownload \r\n && ROW_DATA.demographic == selectedDemographicForDownload \">\r\n <ng-container [ngTemplateOutlet]=\"circularProgressBar\"></ng-container>\r\n </ng-container>\r\n </span>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchDefault>\r\n <ng-container *ngIf=\"subline.objectKey != 'description'\">\r\n <span>{{ ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey] }}</span>\r\n <i\r\n *ngIf=\"subline.objectKey == 'inventoryCode' && ROW_DATA['isSellerGroup'] && gtGeneralConfig.component == 'RATING' \"\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\"\r\n (mouseenter)=\"bindTheValueToSellerGroupTooltip(ROW_DATA.sellerGroupHierarchy, info)\">\r\n </i>\r\n\r\n <i *ngIf=\"subline.objectKey == 'displayBookedAverageRating' && gtGeneralConfig.component == 'RATING' && ROW_DATA['showRatingAverageIcon'] \"\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)=\"setIsDifference(ROW_DATA.isDifferenceLessThan25Percent)\"\r\n tooltipClass=\"posted-avg-tooltip\"\r\n [ngbTooltip]=\"postedRatingDifference\"\r\n >\r\n </i>\r\n \r\n <i *ngIf=\"subline.objectKey == 'displayBookedAverageImpression' && gtGeneralConfig.component == 'RATING' && ROW_DATA['showImpressionAverageIcon'] \"\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)=\"setIsDifference(ROW_DATA.isDifferenceLessThan25Percent)\"\r\n tooltipClass=\"posted-avg-tooltip\"\r\n [ngbTooltip]=\"postedImpDifference\"\r\n >\r\n </i>\r\n\r\n </ng-container>\r\n <ng-container *ngIf=\"subline.objectKey == 'description'\">\r\n <p *ngIf=\"ROW_DATA.descriptionMessage || ROW_DATA.descriptionEmailReferenceNum\">\r\n <ng-container *ngIf=\"ROW_DATA.descriptionMessage\">\r\n {{ ROW_DATA.descriptionMessage }}\r\n <br />\r\n </ng-container>\r\n <ng-container *ngIf=\"ROW_DATA.descriptionEmailReferenceNum\">\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=\"ROW_DATA.descriptionDetailsUrlType === 'PDF' || ROW_DATA.descriptionDetailsUrlType === 'EXCEL'\"\r\n >\r\n <button class=\"btn viewDetailsAndEmailBtn\">Download</button>\r\n </a>\r\n <ng-container *ngIf=\"ROW_DATA.activityname.toLowerCase() == 'order onboarded'\">\r\n <a *ngIf=\"ROW_DATA.descriptionDetailsUrlType === 'LINK'\" (click)=\"viewDetailsClicked(ROW_DATA)\">\r\n <button class=\"btn viewDetailsAndEmailBtn order-onboarded\">View details</button>\r\n </a> \r\n </ng-container>\r\n \r\n <a href=\"{{ ROW_DATA.descriptionEmailUrl }}\" target=\"_blank\" *ngIf=\"ROW_DATA.descriptionEmailUrl\">\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 \r\n </div>\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 [width]=\"noDataWidth\" [marginTop]=\"marginTop\" *ngIf=\"(isNoDataToDisplaySubject$ | async)\"> </anna-core-no-data-lib>\r\n</div>\r\n\r\n<!-- Checkbox template -->\r\n<ng-template #filterTooltip>\r\n \r\n <div class=\"radio-container\" *ngIf=\"showFilterTooltipTabs\">\r\n <div [ngClass]=\"{'full-width': filterTabObjects.length == 1}\" *ngFor=\"let data of filterTabObjects\">\r\n <p class=\"filter-tab\" [title]=\"data.label\" (click)=\"populateTooltipDataBasedOnSelectedRadio(data)\" [ngClass]=\"{'active': annaFilterService.selectedRadio == data.key}\" *ngIf=\"filterTabObjects.length > 0\">{{ data.label }}</p>\r\n </div>\r\n </div>\r\n \r\n <div class=\"checkbox-sort\" *ngIf=\"showSortComponent\">\r\n <anna-core-sort-lib [ngClass]=\"{'no-bottom-border': !showFilterComponent}\"\r\n (sortOptionClicked)=\"storeSortTypeInTempVariable($event)\" [sortObjectKey]=\"annaFilterService.selectedRadio\"></anna-core-sort-lib>\r\n </div>\r\n \r\n <ng-container *ngIf=\"showFilterComponent\">\r\n <p class=\"d-flex justify-content-between\">\r\n <button class=\"filter-text-btn\" [disabled]=\"disableClearAll\" (click)=\"unCheckAllCheckbox()\">Clear all</button>\r\n <button class=\"filter-text-btn\" [disabled]=\"disableSelectAll\" (click)=\"selectAllCheckbox()\">Select all</button>\r\n </p>\r\n <p class=\"search-box\">\r\n <i class=\"mi mdi-search search-icon search-icon-position\"></i>\r\n <input\r\n type=\"text\"\r\n placeholder=\"Search\"\r\n class=\"search-input\"\r\n style=\"margin-left: 2px; border: none; padding: 0px\"\r\n [(ngModel)]=\"searchItem\"\r\n (ngModelChange)=\"searchForTheItem($event)\"\r\n />\r\n <i class=\"mdi mdi-close search-bar-close\" [ngClass]=\"{'disable-close-icon': (!searchItem || searchItem.length == 0) }\"\r\n (click)=\"clearSearchedItem()\"></i>\r\n\r\n </p>\r\n <div style=\"position:relative\">\r\n <!-- Track By func -->\r\n <cdk-virtual-scroll-viewport itemSize=\"18\" [style.height.px]=\"heightOfCheckboxTooltipFilter\" class=\"dropdown-data-container\">\r\n <p *cdkVirtualFor=\"let option of tooltipOptions\" class=\"input example-item\" (click)=\"selectUnselectCheckbox(option)\">\r\n <span *ngIf=\"option.isSelected\" role=\"button\" class=\"mi mdi-check-box check-box\"></span>\r\n <span *ngIf=\"!option.isSelected\" role=\"button\" class=\"mi mdi-check-box-outline-blank check-box unchecked\"></span>\r\n <span class=\"data\" title=\"{{ option.value }}\" [innerHTML]=\"option.label\"></span>\r\n </p>\r\n </cdk-virtual-scroll-viewport>\r\n <div style=\"position: absolute; top:0; left:0; width:100%; height:100%; pointer-events:none\"></div>\r\n </div>\r\n </ng-container>\r\n\r\n <div class=\"buttons-container\">\r\n <button class=\"button\" (click)=\"closeCheckboxFilter()\">Cancel</button>\r\n <button\r\n class=\"button\"\r\n [ngClass]=\"{ disabled: disableCheckboxApply }\"\r\n (click)=\"applyFilters()\"\r\n [disabled]=\"disableCheckboxApply\"\r\n >\r\n Apply\r\n <span *ngIf=\"showFilterComponent\">({{ selectedCheckboxOptionsCount == tooltipOptions.length && tooltipOptions.length != 0 && !searchItem? 'All': selectedCheckboxOptionsCount }})</span>\r\n </button>\r\n </div>\r\n</ng-template>\r\n\r\n<!-- Slider template -->\r\n<ng-template #sliderToolTip>\r\n \r\n <div class=\"radio-container\" *ngIf=\"showFilterTooltipTabs\">\r\n <div *ngFor=\"let data of filterTabObjects\">\r\n <p class=\"filter-tab\" [title]=\"data.label\" (click)=\"populateTooltipDataBasedOnSelectedRadio(data)\" [ngClass]=\"{'active': annaFilterService.selectedRadio == data.key}\" *ngIf=\"filterTabObjects.length > 0\">{{ data.label }}</p> \r\n </div>\r\n </div>\r\n <!-- <button class=\"column-clear-all align-center\" [disabled]=\"disableColumnClearAllBtn\" (click)=\"clearColumnFilter()\">\r\n Clear filter\r\n </button> -->\r\n \r\n <anna-core-sort-lib *ngIf=\"showSortComponent\" [ngClass]=\"{'no-bottom-border': !showFilterComponent}\"\r\n (sortOptionClicked)=\"storeSortTypeInTempVariable($event)\" [sortObjectKey]=\"annaFilterService.selectedRadio\"></anna-core-sort-lib>\r\n \r\n <ng-container *ngIf=\"showFilterComponent\">\r\n <button class=\"column-clear-all\" [disabled]=\"disableColumnClearAllBtn\" (click)=\"clearColumnFilter()\">Clear filter</button>\r\n <section class=\"min-maxContainer\">\r\n <input\r\n type=\"number\"\r\n class=\"slider-text\"\r\n step=\"{{ sliderFilterTextBoxStep }}\"\r\n [(ngModel)]=\"sliderMinValue\"\r\n (ngModelChange)=\"minValueChanged($event)\"\r\n [ngClass]=\"{'red-border': showSliderMinValueError}\"\r\n placeholder=\"Min\"\r\n />\r\n <span>To</span>\r\n <input\r\n type=\"number\"\r\n class=\"slider-text\"\r\n step=\"{{ sliderFilterTextBoxStep }}\"\r\n [(ngModel)]=\"sliderMaxValue\"\r\n (ngModelChange)=\"maxValueChanged($event)\"\r\n [ngClass]=\"{'red-border': showSliderMaxValueError}\"\r\n placeholder=\"Max\"\r\n />\r\n </section>\r\n <div class=\"sidebar-slider\">\r\n <ngx-slider\r\n class=\"filter-slider\"\r\n [value]=\"sliderMinValue\"\r\n [highValue]=\"sliderMaxValue\"\r\n [options]=\"options\"\r\n ></ngx-slider>\r\n </div>\r\n </ng-container>\r\n \r\n <div class=\"buttons-container\">\r\n <button class=\"button\" (click)=\"cancelSliderFilter()\">Cancel</button>\r\n <button\r\n class=\"button\"\r\n [ngClass]=\"{ disabled: disableSliderApplyButton }\"\r\n (click)=\"applySliderFilter()\"\r\n [disabled]=\"disableSliderApplyButton\"\r\n >\r\n Apply\r\n </button>\r\n </div>\r\n</ng-template>\r\n\r\n<!-- Date Picker Template -->\r\n<ng-template #datePickerTooltip>\r\n <div class=\"radio-container\" *ngIf=\"showFilterTooltipTabs\">\r\n <div *ngFor=\"let data of filterTabObjects\">\r\n <p class=\"filter-tab\" [title]=\"data.label\" (click)=\"populateTooltipDataBasedOnSelectedRadio(data)\" [ngClass]=\"{'active': annaFilterService.selectedRadio == data.key}\" *ngIf=\"filterTabObjects.length > 0\">{{ data.label }}</p>\r\n </div>\r\n </div>\r\n\r\n <anna-core-sort-lib *ngIf=\"showSortComponent\" [ngClass]=\"{'no-bottom-border': !showFilterComponent}\"\r\n (sortOptionClicked)=\"storeSortTypeInTempVariable($event)\" [sortObjectKey]=\"annaFilterService.selectedRadio\"></anna-core-sort-lib>\r\n \r\n <ng-container *ngIf=\"showFilterComponent\">\r\n <div class=\"datepicker-container\">\r\n <button class=\"column-clear-all\" [disabled]=\"disableColumnClearAllBtn\" (click)=\"clearColumnFilter()\">\r\n Clear filter\r\n </button>\r\n <anna-core-calendar-filter-lib\r\n [minDate]=\"calendarMinEnabledDate\"\r\n [maxDate]=\"calendarMaxEnabledDate\"\r\n [selectedFromDate]=\"selectedMinDate\"\r\n [selectedToDate]=\"selectedMaxDate\"\r\n (selectedDate) = \"calendarDateChanged($event)\"\r\n [label]=\"selectedLabel\"\r\n >\r\n </anna-core-calendar-filter-lib>\r\n </div>\r\n </ng-container>\r\n\r\n <div class=\"buttons-container\">\r\n <button class=\"button\" (click)=\"cancelInDateFilter()\">Cancel</button>\r\n <button class=\"button\" (click)=\"applyDateFilter()\" [ngClass]=\"{ disabled: disableCalendarApplyBtn }\"\r\n [disabled]=\"disableCalendarApplyBtn\">Apply</button>\r\n </div>\r\n \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 \r\n <div class=\"radio-container\" *ngIf=\"showFilterTooltipTabs\">\r\n <div *ngFor=\"let data of filterTabObjects\">\r\n <p class=\"filter-tab\" [title]=\"data.label\" (click)=\"populateTooltipDataBasedOnSelectedRadio(data)\" [ngClass]=\"{'active': annaFilterService.selectedRadio == data.key}\" *ngIf=\"filterTabObjects.length > 0\">{{ data.label }}</p>\r\n </div>\r\n </div>\r\n\r\n <anna-core-sort-lib *ngIf=\"showSortComponent\" [ngClass]=\"{'no-bottom-border': !showFilterComponent}\"\r\n (sortOptionClicked)=\"storeSortTypeInTempVariable($event)\" [sortObjectKey]=\"annaFilterService.selectedRadio\"></anna-core-sort-lib>\r\n \r\n <ng-container *ngIf=\"showFilterComponent\">\r\n <button class=\"column-clear-all\" [disabled]=\"disableColumnClearAllBtn\" (click)=\"clearColumnFilter()\">Clear filter</button>\r\n <div\r\n class=\"time-filter-checkboxes\"\r\n *ngIf=\"gtGeneralConfig.component == 'SPOTDETAILS' || gtGeneralConfig.component == 'EXCLUDEINVENTORYPOPUP' || gtGeneralConfig.component == 'RATING'\"\r\n >\r\n <!-- Multi time option checkbox -->\r\n <div class=\"d-flex align-items-center\" style=\"padding: 0.5rem 0 0.5rem 0.5rem\" *ngIf=\"showMultiTimeCheckbox\">\r\n <span\r\n *ngIf=\"multiTimeCheckboxChecked\"\r\n class=\"material-icons custom-column-checkbox-checked\"\r\n (click)=\"selectOrUnselectMultiTimeCheckbox()\"\r\n >\r\n check_box\r\n </span>\r\n <span\r\n *ngIf=\"!multiTimeCheckboxChecked\"\r\n class=\"material-icons custom-column-checkbox-unchecked\"\r\n (click)=\"selectOrUnselectMultiTimeCheckbox()\"\r\n >\r\n check_box_outline_blank\r\n </span>\r\n <p style=\"margin-left: 2px\">Include Multi</p>\r\n </div>\r\n <!-- Zero time option checkbox -->\r\n <div class=\"d-flex align-items-center\" style=\"padding: 0.5rem 0 0.5rem 0.5rem\" *ngIf=\"showZeroTimeCheckbox\">\r\n <span\r\n *ngIf=\"zeroTimeCheckboxChecked\"\r\n class=\"material-icons custom-column-checkbox-checked\"\r\n (click)=\"selectOrUnselectZeroTimeCheckbox()\"\r\n >\r\n check_box\r\n </span>\r\n <span\r\n *ngIf=\"!zeroTimeCheckboxChecked\"\r\n class=\"material-icons custom-column-checkbox-unchecked\"\r\n (click)=\"selectOrUnselectZeroTimeCheckbox()\"\r\n >\r\n check_box_outline_blank\r\n </span>\r\n <p style=\"margin-left: 2px\">Include Zero</p>\r\n </div>\r\n <!-- Enter time range option checkbox -->\r\n <div class=\"d-flex align-items-center\" style=\"padding: 0.5rem 0 0.5rem 0.5rem\" *ngIf=\"showEnterTimeCheckbox\">\r\n <span\r\n *ngIf=\"enterTimeCheckboxChecked\"\r\n class=\"material-icons custom-column-checkbox-checked\"\r\n (click)=\"selectOrUnselectEnterTimeCheckbox()\"\r\n >\r\n check_box\r\n </span>\r\n <span\r\n *ngIf=\"!enterTimeCheckboxChecked\"\r\n class=\"material-icons custom-column-checkbox-unchecked\"\r\n (click)=\"selectOrUnselectEnterTimeCheckbox()\"\r\n >\r\n check_box_outline_blank\r\n </span>\r\n <p style=\"margin-left: 2px\">Enter time range</p>\r\n </div>\r\n </div>\r\n <div class=\"time-label-container\">\r\n <label>From</label>\r\n </div>\r\n <div class=\"time-container\">\r\n <input class=\"form-control numberInput\" [ngClass]=\"{'error-border': startTimeHourErr}\" [(ngModel)]=\"selectedFromTime[0]\" type=\"text\" (ngModelChange)=\"startTimeHourChange($event)\" />\r\n <div class=\"arrow-container\">\r\n <i class=\"mdi mdi-triangle upward\" (click)=\"changeStartTimeHour(true)\"></i>\r\n <i class=\"mdi mdi-triangle downward\" (click)=\"changeStartTimeHour(false)\"></i>\r\n </div>\r\n <span class=\"dot\">:</span>\r\n <input class=\"form-control numberInput\" [ngClass]=\"{'error-border': startTimeMinErr}\" [(ngModel)]=\"selectedFromTime[1]\" type=\"text\" (ngModelChange)=\"startTimeMinChange($event)\"/>\r\n <div class=\"arrow-container\">\r\n <i class=\"mdi mdi-triangle upward\" (click)=\"changeStartTimeMinute(true)\"></i>\r\n <i class=\"mdi mdi-triangle downward\" (click)=\"changeStartTimeMinute(false)\"></i>\r\n </div>\r\n <div>\r\n <mat-button-toggle-group [(ngModel)]=\"selectedFromTime[2]\" (ngModelChange)=\"disableTimeFilterApplyButton()\">\r\n <mat-button-toggle value=\"AM\">\r\n <span>AM</span>\r\n </mat-button-toggle>\r\n <mat-button-toggle value=\"PM\">\r\n <span>PM</span>\r\n </mat-button-toggle>\r\n </mat-button-toggle-group>\r\n </div>\r\n </div>\r\n\r\n <div class=\"time-label-container\">\r\n <label>To</label>\r\n </div>\r\n <div class=\"time-container\">\r\n <input class=\"form-control numberInput\" [(ngModel)]=\"selectedToTime[0]\" [ngClass]=\"{'error-border': endTimeHourErr}\" (ngModelChange)=\"endTimeHourChange($event)\" type=\"text\" />\r\n <div class=\"arrow-container\">\r\n <i class=\"mdi mdi-triangle upward\" (click)=\"changeEndTimeHour(true)\"></i>\r\n <i class=\"mdi mdi-triangle downward\" (click)=\"changeEndTimeHour(false)\"></i>\r\n </div>\r\n <span class=\"dot\">:</span>\r\n <input class=\"form-control numberInput\" [ngClass]=\"{'error-border': endTimeMinErr}\" [(ngModel)]=\"selectedToTime[1]\" (ngModelChange)=\"endTimeMinChange($event)\" type=\"text\" />\r\n <div class=\"arrow-container\">\r\n <i class=\"mdi mdi-triangle upward\" (click)=\"changeEndTimeMinute(true)\"></i>\r\n <i class=\"mdi mdi-triangle downward\" (click)=\"changeEndTimeMinute(false)\"></i>\r\n </div>\r\n <div>\r\n <mat-button-toggle-group [(ngModel)]=\"selectedToTime[2]\" (ngModelChange)=\"disableTimeFilterApplyButton()\">\r\n <mat-button-toggle value=\"AM\">\r\n <span>AM</span>\r\n </mat-button-toggle>\r\n <mat-button-toggle value=\"PM\">\r\n <span>PM</span>\r\n </mat-button-toggle>\r\n </mat-button-toggle-group>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <div class=\"buttons-container\">\r\n <button class=\"button\" (click)=\"closeTimeFilter()\">Cancel</button>\r\n <button\r\n class=\"button\"\r\n [ngClass]=\"{ disabled: disableTimeFilterApplyBtn }\"\r\n (click)=\"applyTimeFilters()\"\r\n [disabled]=\"disableTimeFilterApplyBtn\"\r\n >\r\n Apply\r\n </button>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #columnInfoTooltip>\r\n <p style=\"padding: 0.5rem; color: black;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\" >This consists of equivalized spots and un-equivalized Paid Programs & un-equivalized Non-spots.</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>{{ data.InventoryCode }}</span>\r\n </td>\r\n <td>\r\n <span>{{ 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 style=\"color: #000\">Seller group not available for this inventory code</span>\r\n </ng-container>\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\">The difference between posted and booked average rating is {{isDifferenceLessThan25Percent ? 'less' : 'more'}} than 25%.</p>\r\n</ng-template>\r\n\r\n<ng-template #postedImpDifference>\r\n <p class=\"difference-text\">The difference between posted and booked average impression is {{isDifferenceLessThan25Percent ? 'less' : 'more'}} than 25%.</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 #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", styles: [".sort-btn{background:white;border:none;border-right:1px solid #1b88ff;text-decoration:underline;font-family:Roboto;font-size:14px;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:nowrap;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{margin:5px 0 2px!important;width:100%!important}::ng-deep span.ngx-slider-bubble.ngx-slider-model-value{display:block!important;padding:2px!important;box-shadow:#00000059 0 3px 8px!important;height:20px!important}::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}::ng-deep .ngx-slider-pointer:after{display:none!important}::ng-deep .ngx-slider-pointer:focus{outline:none!important}::ng-deep span.ngx-slider-bar{background:#ededed!important;height:3px!important}::ng-deep .filter-slider span.ngx-slider-bar.ngx-slider-selection{background:#bdbdbd!important;height:3px!important}::ng-deep .sidebar-slider{margin-bottom:35px!important;margin-left:.3125rem;margin-right:.3125rem}::ng-deep .ngx-slider-span.ngx-slider-bubble.ngx-slider-model-high{right:0!important}::ng-deep .ngx-slider-span.ngx-slider-bubble.ngx-slider-model-ceil{right:0!important}::ng-deep .ngx-slider.animate{top:10px!important;bottom:0!important;padding:1px 0!important;font-size:12px!important}::ng-deep .ngx-slider-bubble{top:10px!important;bottom:0!important;padding:1px 0!important;font-size:12px!important}::ng-deep .ngx-slider-bar{background:rgba(0,0,0,.26)!important;height:3px!important}::ng-deep .ngx-slider-bar.ngx-slider-selection{background:#42a5f5!important;height:3px!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]{-webkit-appearance:none;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}.buttons-container{display:flex;margin:0px auto .4375rem;justify-content:center}.buttons-container button:last-of-type{background-color:#268bff;color:#fff}.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 0 .188rem .5rem}.search-icon{margin:0 4px 0 0;font-size:1.125rem;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:.875rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:1.86;letter-spacing:\"\";color:#4a4a4a}.search-input{margin:1px 0 1px 4px;font-family:Roboto;font-size:.875rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;color:#c8c8c8}.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:lightgray}section.min-maxContainer{display:flex;justify-content:center;margin-bottom:-.125rem;margin-top:.5rem;width:100%}section.min-maxContainer input{width:30%;height:1.875rem;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}.time-container{width:100%;display:flex;padding:.125rem .625rem 0}.time-container input.form-control:disabled{background-color:#fff;width:2.813rem}.time-container .dot{color:#cbcbcb;position:relative;left:-7px;font-size:17px}.time-container div.arrow-container{flex-direction:column;display:flex;padding-top:.375rem;padding-left:1px;margin-right:1.1875rem}.time-container div.arrow-container i{color:#000;cursor:pointer;font-size:.5625rem}.time-container div.arrow-container i.downward{transform:rotate(180deg)}.mdi-filter{cursor:pointer}.time-label-container{display:flex;justify-content:flex-start}.time-label-container label{margin-bottom:0;color:#4a4a4a;margin-top:.625rem;margin-left:.625rem;font-weight:700}.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:14px;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}.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:14px;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-overflow:ellipsis}p.filter-tab.active{color:#fff;background-color:#1b88ff}button.filter-text-btn{background:white;text-decoration:underline;font-family:Roboto;font-size:14px;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:263px!important;overflow-y:initial!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}::ng-deep .non-edit-slider-tooltip .tooltip-inner{width:238px!important}::ng-deep .non-edit-time-tooltip .tooltip-inner{width:250px!important}::ng-deep .no-bottom-border p.sort-container{border-bottom:none!important}.upper-label{font-family:Roboto;font-size:.6875rem;font-weight:500;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#4a4a4a!important;margin-bottom:0!important}:host ::ng-deep .gt{table-layout:fixed;margin-bottom:0;width:100%}:host ::ng-deep .gt th,:host ::ng-deep .gt td{padding:2px 8px;line-height:normal}:host ::ng-deep .gt thead tr th .upper-label{font-family:Roboto;font-size:.6875rem;font-weight:500;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#4a4a4a;margin-bottom:0}:host ::ng-deep .gt thead tr th .lower-label{font-family:Roboto;font-size:.6875rem;font-weight:500;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#a7a7a7;margin-bottom:0}:host ::ng-deep .gt thead tr th{background-color:#ededed;position:sticky;position:-webkit-sticky;top:0;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}:host ::ng-deep .gt thead tr th br{display:block;content:\"\";margin-top:-8px}:host ::ng-deep .gt thead tr th div.row{display:flex;flex-wrap:nowrap;justify-content:space-between;align-items:center}:host ::ng-deep .gt thead tr th div.sort-filter-container{display:flex;flex-wrap:nowrap;align-items:center}:host ::ng-deep .gt thead tr th:first-of-type{box-shadow:inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4,inset -1px 0 #d4d4d4,inset 1px 0 #d4d4d4}:host ::ng-deep .gt tbody tr td:first-of-type{box-shadow:inset 1px 0 #d4d4d4,inset -1px 0 #d4d4d4,inset 0 -1px #d4d4d4;border:none}:host ::ng-deep .gt tbody tr td:nth-of-type(n + 2){box-shadow:inset -1px 0 #d4d4d4,inset 0 -1px #d4d4d4;border:none}:host ::ng-deep .gt tbody tr td .upper-label{font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:0px;color:#000;display:inline-block;width:90%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host ::ng-deep .gt tbody tr td .lower-label{font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:0px;color:#a7a7a7;display:inline-block;width:90%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host ::ng-deep .gt tbody tr br{display:block;content:\"\";margin-top:-8px}:host ::ng-deep .gt tbody tr:nth-of-type(1) td{border-top:none!important}: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}.table-container::-webkit-scrollbar-track{border:1px solid rgba(0,0,0,.1)!important}.table-container::-webkit-scrollbar{width:5px;height:5px}.table-container::-webkit-scrollbar-thumb{border-radius:4px;background-color:#0006!important;border:1px solid rgba(0,0,0,.2)}.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}.redcolor-cell-border{outline:1px solid #ff5353!important;outline-offset:-1px!important}#no-filter-space{width:.875rem}::ng-deep .mat-button-toggle-appearance-standard .mat-button-toggle-label-content{line-height:1.875rem!important;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}.radio-button-dimension,::ng-deep .markForCredit .mat-radio-inner-circle,::ng-deep .markForCredit .mat-radio-outer-circle,::ng-deep .mark-for-credit .mat-radio-inner-circle,::ng-deep .mark-for-credit .mat-radio-outer-circle,::ng-deep .markForMakeGood .mat-radio-inner-circle,::ng-deep .markForMakeGood .mat-radio-outer-circle,::ng-deep .noAction .mat-radio-inner-circle,::ng-deep .noAction .mat-radio-outer-circle,::ng-deep .credit .mat-radio-inner-circle,::ng-deep .credit .mat-radio-outer-circle,::ng-deep .approve .mat-radio-inner-circle,::ng-deep .approve .mat-radio-outer-circle,::ng-deep .reject .mat-radio-inner-circle,::ng-deep .reject .mat-radio-outer-circle,::ng-deep .resubmit .mat-radio-inner-circle,::ng-deep .resubmit .mat-radio-outer-circle,::ng-deep .rejectCreditRequest .mat-radio-inner-circle,::ng-deep .rejectCreditRequest .mat-radio-outer-circle{height:18px!important;width:18px!important}::ng-deep .margin-bottom-zero .mat-radio-label{margin-bottom:0}::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:white}::ng-deep tr.gray-background-row{background:rgba(233,233,233,.5)}.remarks-tooltip,.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;margin-left:2px;position:relative;left:-2px}::ng-deep .rating-info-tooltip .tooltip-inner{max-width:800px!important}.spots-info-icon{color:#268bff;cursor:pointer;margin-left:2px;margin-top:1px}::ng-deep .spot-info-tooltip .tooltip-inner{left:60px;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 .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:first-of-type,table.seller-hierarchy-table tr td:first-of-type{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{max-height:8.75rem;overflow:auto}section.hierarchy-table-container::-webkit-scrollbar-track{border:1px solid rgba(0,0,0,.1)!important;margin-top:1.5rem}section.hierarchy-table-container::-webkit-scrollbar{width:5px;height:5px}section.hierarchy-table-container::-webkit-scrollbar-thumb{border-radius:4px;background-color:#0006!important;border:1px solid rgba(0,0,0,.2)}.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;padding:10px;width:max-content;text-align:left}div.spinner-for-button-directive{position:relative;left:-1px}\n"], components: [{ type: i5.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { type: i5.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { type: i5.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { type: i6.NgxSkeletonLoaderComponent, selector: "ngx-skeleton-loader", inputs: ["appearance", "animation", "theme", "loadingText", "count", "ariaLabel"] }, { type: i7.MatRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex"], exportAs: ["matRadioButton"] }, { type: AnnaIconColumnComponent, selector: "anna-core-anna-icon-column", inputs: ["componentName", "objectKey", "dataObject"], outputs: ["onColumnIconClicked"] }, { type: AnnaNoDataComponent, selector: "anna-core-no-data-lib", inputs: ["width", "marginTop"] }, { type: AnnaSortComponent, selector: "anna-core-sort-lib", inputs: ["sortObjectKey"], outputs: ["sortOptionClicked"] }, { type: i2.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { type: i12.ɵa, selector: "ngx-slider", inputs: ["value", "highValue", "options", "manualRefresh", "triggerFocus"], outputs: ["valueChange", "highValueChange", "userChangeStart", "userChange", "userChangeEnd"] }, { type: AnnaCalendarFilterComponent, selector: "anna-core-calendar-filter-lib", inputs: ["maxDate", "label", "minDate", "selectedFromDate", "selectedToDate"], outputs: ["selectedDate", "apply", "cancel"] }, { type: AnnaWeekCalendarComponent, selector: "anna-core-week-calendar-filter-lib", inputs: ["from-date", "to-date", "disabled-dates", "maxDate", "minDate", "week-calendar-config"], outputs: ["apply", "toggle-calendar"] }, { type: i15.MatButtonToggle, selector: "mat-button-toggle", inputs: ["disableRipple", "aria-label", "aria-labelledby", "id", "name", "value", "tabIndex", "appearance", "checked", "disabled"], outputs: ["change"], exportAs: ["matButtonToggle"] }, { type: i16.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"] }], directives: [{ type: i17.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i17.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i5.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { type: i5.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { type: i17.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { type: i5.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { type: i17.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i17.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i1.NgbTooltip, selector: "[ngbTooltip]", inputs: ["animation", "autoClose", "placement", "triggers", "container", "disableTooltip", "tooltipClass", "openDelay", "closeDelay", "ngbTooltip"], outputs: ["shown", "hidden"], exportAs: ["ngbTooltip"] }, { type: i5.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { type: i5.MatCellDef, selector: "[matCellDef]" }, { type: i5.MatCell, selector: "mat-cell, td[mat-cell]" }, { type: i17.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i17.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i7.MatRadioGroup, selector: "mat-radio-group", exportAs: ["matRadioGroup"] }, { type: i19.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i19.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i17.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { type: showEllipsisTextOnHoverDirective, selector: "[showEllipsisTextOnHover]" }, { type: i19.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i2.CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { type: i2.CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { type: i19.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { type: i15.MatButtonToggleGroup, selector: "mat-button-toggle-group", inputs: ["appearance", "name", "vertical", "value", "multiple", "disabled"], outputs: ["valueChange", "change"], exportAs: ["matButtonToggleGroup"] }], pipes: { "async": i17.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3334
|
+
AnnaNonEditableGenericTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaNonEditableGenericTableComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: AnnaSortService }, { token: AnnaDateTimeFormatService }, { token: AnnaFilterService }], target: i0.ɵɵFactoryTarget.Component });
|
|
3335
|
+
AnnaNonEditableGenericTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: AnnaNonEditableGenericTableComponent, selector: "anna-core-non-editable-generic-table-lib", inputs: { showSkeletonLoading: "showSkeletonLoading", tableHeaders: "tableHeaders", tableData: "tableData", clonedTableData: "clonedTableData", numberOfSkeletonRows: "numberOfSkeletonRows", numberOfSkeletonColumns: "numberOfSkeletonColumns", gtGeneralConfig: "gtGeneralConfig", totalRowInfo: "totalRowInfo", gtDimension: "gtDimension", tableClass: "tableClass", maximumRowsWhichCanBeRenderedWithoutScroll: "maximumRowsWhichCanBeRenderedWithoutScroll", limit: "limit", includeBorderInTableHeight: "includeBorderInTableHeight", downloadInProgress: "downloadInProgress", percentDone: "percentDone", starredInProgress: "starredInProgress", clickableRow: "clickableRow" }, 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", downloadSpotDetails: "downloadSpotDetails", clickableDataClicked: "clickableDataClicked" }, viewQueries: [{ propertyName: "viewChildTableHeaders", predicate: ["tableHeader"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"table-container {{gtGeneralConfig?.tableOuterContainerName}}\" [ngClass]=\"{ 'scroll-left-shadow-effect': isScrolledLeft, 'clickable-row': clickableRow }\" (scroll)=\"onTableContainerScroll($event)\">\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 < maximumRowsWhichCanBeRenderedWithoutScroll\r\n ? 'calc(' +\r\n ((gtDimension.rowHeight + (includeBorderInTableHeight ? rowBorderWidth : 0)) * tableData.length +\r\n (!tableData.length || !gtGeneralConfig.totalRow\r\n ? gtDimension.headerHeight\r\n : gtDimension.headerHeight + gtDimension.rowHeight + ( includeBorderInTableHeight ? (2 * rowBorderWidth) : 0))) +\r\n 'px)'\r\n : gtDimension.tableHeight\r\n }\"\r\n >\r\n <table class=\"gt\" [ngClass]=\"tableClass\" mat-table [dataSource]=\"renderedData\">\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\"(click)=\"dataRowClicked(rowData)\"\r\n ></tr>\r\n\r\n <!-- TOTAL ROW -->\r\n <ng-container [matColumnDef]=\"column.colName\" *ngFor=\"let column of totalRowInfo; trackBy: trackByFn\">\r\n <td mat-header-cell *matHeaderCellDef [attr.colspan]=\"column.colspan\" class=\"{{column.class}}\">\r\n <strong>{{ column.data }}</strong>\r\n <ng-container *ngIf=\"column.lowerData\">\r\n <br>\r\n <span \r\n *ngIf=\"column.colName == 'total-potential-booked-unit' && gtGeneralConfig.component == 'RATING';\r\n else columnLowerData\"\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 \r\n && 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>{{ column.lowerData }}</span>\r\n </ng-template>\r\n </ng-container>\r\n <ng-container *ngIf=\"column.tooltipMessage\">\r\n <i class=\"mi mdi-info-outline info-label\" container=\"body\"\r\n [ngbTooltip]=\"column.tooltipMessage\"\r\n tooltipClass=\"gt-total-row-tooltip\" placement=\"bottom\"></i>\r\n </ng-container>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- MAIN ROW -->\r\n <ng-container [matColumnDef]=\"columnDef.headerInfo[0].objectKey\" *ngFor=\"let columnDef of tableHeaders; trackBy: trackByFn\">\r\n <th #tableHeader nowrap mat-header-cell *matHeaderCellDef [style.width]=\"columnDef.width\">\r\n <div class=\"row mx-0\" *ngFor=\"let header of columnDef.headerInfo; let j = index;\"> \r\n <p\r\n *ngIf=\"header.typeOfHeaderData === 'STRING'\"\r\n [ngClass]=\"{ 'upper-label': j === 0, 'lower-label': j === 1 }\"\r\n >\r\n {{ header.name }}\r\n <i *ngIf=\"header.tooltip && header.tooltip.name == 'impsInfoTooltip'\" class=\"{{header['tooltip'].iconClass}}\"\r\n [ngStyle]=\"{'float': header['tooltip'].iconPosition}\"\r\n #t=\"ngbTooltip\"\r\n [ngbTooltip]=\"impsInfoTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i *ngIf=\"header.tooltip && header.tooltip.name == 'spotsColumnEquivalizationMessageTooltip'\" class=\"{{header['tooltip'].iconClass}}\"\r\n [ngStyle]=\"{'float': header['tooltip'].iconPosition}\"\r\n #t=\"ngbTooltip\"\r\n [ngbTooltip]=\"spotsColumnEquivalizationMessageTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i *ngIf=\"header.tooltip && header.tooltip.name == 'ratingInfoTooltip'\" class=\"{{header['tooltip'].iconClass}}\"\r\n [ngStyle]=\"{'float': header['tooltip'].iconPosition}\"\r\n #t=\"ngbTooltip\"\r\n [ngbTooltip]=\"ratingInfoTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i *ngIf=\"header.tooltip && header.tooltip.name == 'rateInfoTooltip'\" class=\"{{header['tooltip'].iconClass}}\"\r\n [ngStyle]=\"{'float': header['tooltip'].iconPosition}\"\r\n #t=\"ngbTooltip\"\r\n [ngbTooltip]=\"rateInfoTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i *ngIf=\"header.tooltip && header.tooltip.name == 'ongoingRevBookedColumnTooltip'\" class=\"{{header['tooltip'].iconClass}}\"\r\n [ngStyle]=\"{'float': header['tooltip'].iconPosition}\"\r\n #t=\"ngbTooltip\"\r\n [ngbTooltip]=\"ongoingRevBookedColumnTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i *ngIf=\"header.tooltip && header.tooltip.name == 'completedRevBookedColumnTooltip'\" class=\"{{header['tooltip'].iconClass}}\"\r\n [ngStyle]=\"{'float': header['tooltip'].iconPosition}\"\r\n #t=\"ngbTooltip\"\r\n [ngbTooltip]=\"completedRevBookedColumnTooltip\"\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 *ngIf=\"gtGeneralConfig.showAllColumnFilter\" class=\"sort-filter-container\">\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: annaFilterService.isFilterSortActive && annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys], \r\n disabled: header.disableTooltipIcon\r\n }\"\r\n [ngbTooltip]=\"filterTooltip\"\r\n placement=\"bottom left-top auto\"\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: annaFilterService.isFilterSortActive && annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon\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: annaFilterService.isFilterSortActive && annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon\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: annaFilterService.isFilterSortActive && annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon\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: annaFilterService.isFilterSortActive && annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon\r\n }\"\r\n [ngbTooltip]=\"timeFilterToolTip\"\r\n placement=\"bottom left-top\"\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 *ngIf=\"header.tooltip && header.tooltip.name == 'lurViolationInfoTooltip'\" class=\"{{header['tooltip'].iconClass}}\"\r\n [ngStyle]=\"{'float': header['tooltip'].iconPosition}\"\r\n #t=\"ngbTooltip\"\r\n [ngbTooltip]=\"lurViolationInfoTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n\r\n </div>\r\n </div>\r\n </th>\r\n\r\n <ng-container *ngIf=\"gtGeneralConfig.component == 'DRR'\">\r\n <ng-container *matCellDef=\"let ROW_DATA\">\r\n <ng-container *ngIf=\"showSkeletonLoading\">\r\n <td mat-cell>\r\n <ngx-skeleton-loader count=\"1\" [theme]=\"{ height: '10px', display: 'block' }\">\r\n </ngx-skeleton-loader>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!showSkeletonLoading\">\r\n <td\r\n mat-cell\r\n *ngIf=\"!ROW_DATA['hide' + columnDef.headerInfo[0].objectKey + 'Td']\"\r\n [attr.rowspan]=\"ROW_DATA[columnDef.headerInfo[0].objectKey + 'Rowspan']\">\r\n <ng-container\r\n *ngFor=\"let subline of columnDef.headerInfo; let sublineIndex = index; trackBy: trackByFn\"\r\n >\r\n <ng-container [ngSwitch]=\"subline.typeOfBodyData\">\r\n <ng-container *ngSwitchCase=\"'ICON'\">\r\n <i [class]=\"ROW_DATA.iconClass\"></i>\r\n </ng-container>\r\n \r\n <ng-container *ngSwitchCase=\"'CHECKBOX'\">\r\n <span\r\n *ngIf=\"ROW_DATA[subline.objectKey]\"\r\n [ngClass]=\"{ 'disable-checkbox': ROW_DATA[subline.isDisabledKey] }\"\r\n class=\"material-icons custom-column-checkbox-checked\"\r\n (click)=\"selectUnselectRow(ROW_DATA)\"\r\n >\r\n check_box\r\n </span>\r\n <span\r\n *ngIf=\"!ROW_DATA[subline.objectKey]\"\r\n class=\"material-icons custom-column-checkbox-unchecked\"\r\n [ngClass]=\"{ 'disable-checkbox': ROW_DATA[subline.isDisabledKey] }\"\r\n (click)=\"selectUnselectRow(ROW_DATA)\"\r\n >\r\n check_box_outline_blank\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']\"\r\n [ngModel]=\"ROW_DATA[subline.objectKey]\"\r\n [disabled]=\"ROW_DATA['RadioButtonConfig'][0].isDisabled\"\r\n >\r\n <ng-container\r\n *ngFor=\"let radioButton of ROW_DATA['RadioButtonConfig']; let last = last\"\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 }}</mat-radio-button\r\n ><br *ngIf=\"!last\" />\r\n </ng-container>\r\n </mat-radio-group>\r\n </ng-container>\r\n \r\n <div *ngSwitchDefault>\r\n {{ ROW_DATA[subline.objectKey] }}\r\n \r\n <ng-container\r\n *ngIf=\"\r\n subline.objectKey == 'Status' && (ROW_DATA['Remarks'] !== null)\r\n \"\r\n >\r\n <i\r\n class=\"mi mdi-info-outline remarks-tooltip\"\r\n [ngbTooltip]=\"columnInfoTooltip\"\r\n placement=\"bottom\"\r\n container=\"body\"\r\n tooltipClass=\"remarks-info-tooltip\"\r\n #t=\"ngbTooltip\"\r\n ></i>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </td>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"gtGeneralConfig.component != 'DRR'\">\r\n <td mat-cell *matCellDef=\"let ROW_DATA\" [style.background]=\"ROW_DATA.backgroundColor\" \r\n [style.border]=\"ROW_DATA.border\"\r\n class=\"{{ROW_DATA.rowClass}}\"\r\n >\r\n <ngx-skeleton-loader *ngIf=\"showSkeletonLoading\" count=\"1\" [theme]=\"{ height: '10px', display: 'block' }\">\r\n </ngx-skeleton-loader>\r\n\r\n <ng-container *ngIf=\"!showSkeletonLoading\">\r\n <ng-container *ngIf=\"tableData.length > 0 && !(isNoDataToDisplaySubject$ | async)\">\r\n <div showEllipsisTextOnHover *ngFor=\"let subline of columnDef.headerInfo; let subLineIndex = index; trackBy: trackByFn\">\r\n <ng-container [ngSwitch]=\"columnDef.headerInfo[subLineIndex].typeOfBodyData\">\r\n <ng-container *ngSwitchCase=\"'ICON'\">\r\n <i *ngIf=\"!(starredInProgress && ROW_DATA.orderId == selectedStarredOrderId)\" [class]=\"ROW_DATA.iconClass\" (click)=\"iconClicked(ROW_DATA,ROW_DATA.iconClass)\"></i>\r\n <ng-container *ngIf=\"starredInProgress && ROW_DATA.orderId == selectedStarredOrderId\">\r\n <div class=\"spinner-for-button-directive\"></div>\r\n <!-- <ng-container [ngTemplateOutlet]=\"circularProgressBar\"></ng-container> -->\r\n </ng-container>\r\n </ng-container>\r\n \r\n <ng-container *ngSwitchCase=\"'SVG_ICON'\">\r\n <anna-core-anna-icon-column [componentName]=\"gtGeneralConfig.component\" [objectKey]=\"subline.objectKey\" [dataObject]=\"ROW_DATA\" (onColumnIconClicked)=\"svgIconClicked($event)\"></anna-core-anna-icon-column>\r\n </ng-container>\r\n \r\n <ng-container *ngSwitchCase=\"'TEXT_ACTIONS'\">\r\n <button *ngFor=\"let text of ROW_DATA.textActions\" (click)=\"textActionClicked(ROW_DATA,text.id)\" [disabled]=\"text.isDisabled\" class=\"{{text.class}}\">{{text.name}}</button>\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': 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': 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 </ng-container>\r\n \r\n <ng-container *ngSwitchCase=\"'CLICKABLE_DATA'\">\r\n <a \r\n *ngFor=\"let text of ROW_DATA.clickableItem\" \r\n [ngClass]=\"{'disabled': text.isDisabled}\"\r\n (click)=\"onClickableDataClicked(ROW_DATA, text.id)\">\r\n {{ text.name }}\r\n </a>\r\n <span \r\n *ngIf=\"subline.objectKey == 'displayBookedUnits' && gtGeneralConfig.component == 'RATING'\"\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\">get_app</span>\r\n <ng-container *ngIf=\"downloadInProgress \r\n && ROW_DATA.inventoryCodeId == selectedInventoryIdForDownload \r\n && ROW_DATA.demographic == selectedDemographicForDownload \">\r\n <ng-container [ngTemplateOutlet]=\"circularProgressBar\"></ng-container>\r\n </ng-container>\r\n </span>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'STRING__TEXT_ACTION'\">\r\n <ng-container *ngIf=\"ROW_DATA.textActions.typeOfData== 'STRING'\">\r\n {{ ROW_DATA.textActions.data }} \r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"ROW_DATA.textActions.typeOfData== 'TEXT_ACTION'\">\r\n <span> {{ ROW_DATA.textActions.additionalTextBeforeLink }} </span>\r\n <a \r\n (click)=\"textActionClicked(ROW_DATA, null)\" \r\n [ngClass]=\"{'disabled': ROW_DATA.textActions.disabled}\"> \r\n {{ROW_DATA.textActions.data}}\r\n </a> \r\n <i \r\n *ngIf=\"ROW_DATA.textActions.showIcon\"\r\n class=\"mdi mdi-information\"\r\n (mouseenter)=\"mouseEnterOnStringTextActionType(ROW_DATA)\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n tooltipClass=\"team-user-tooltip\"\r\n [ngbTooltip]=\"userLoggedInDetails\">\r\n </i> \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>{{ ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey] }}</span>\r\n <i\r\n *ngIf=\"subline.objectKey == 'inventoryCode' && ROW_DATA['isSellerGroup'] && gtGeneralConfig.component == 'RATING' \"\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\"\r\n (mouseenter)=\"bindTheValueToSellerGroupTooltip(ROW_DATA.sellerGroupHierarchy, info)\">\r\n </i>\r\n\r\n <i *ngIf=\"subline.objectKey == 'displayBookedAverageRating' && gtGeneralConfig.component == 'RATING' && ROW_DATA['showRatingAverageIcon'] \"\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)=\"setIsDifference(ROW_DATA.isDifferenceLessThan25Percent)\"\r\n tooltipClass=\"posted-avg-tooltip\"\r\n [ngbTooltip]=\"postedRatingDifference\"\r\n >\r\n </i>\r\n \r\n <i *ngIf=\"subline.objectKey == 'displayBookedAverageImpression' && gtGeneralConfig.component == 'RATING' && ROW_DATA['showImpressionAverageIcon'] \"\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)=\"setIsDifference(ROW_DATA.isDifferenceLessThan25Percent)\"\r\n tooltipClass=\"posted-avg-tooltip\"\r\n [ngbTooltip]=\"postedImpDifference\"\r\n >\r\n </i>\r\n\r\n </ng-container>\r\n <ng-container *ngIf=\"subline.objectKey == 'description'\">\r\n <p *ngIf=\"ROW_DATA.descriptionMessage || ROW_DATA.descriptionEmailReferenceNum\">\r\n <ng-container *ngIf=\"ROW_DATA.descriptionMessage\">\r\n {{ ROW_DATA.descriptionMessage }}\r\n <br />\r\n </ng-container>\r\n <ng-container *ngIf=\"ROW_DATA.descriptionEmailReferenceNum\">\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=\"ROW_DATA.descriptionDetailsUrlType === 'PDF' || ROW_DATA.descriptionDetailsUrlType === 'EXCEL'\"\r\n >\r\n <button class=\"btn viewDetailsAndEmailBtn\">Download</button>\r\n </a>\r\n <ng-container *ngIf=\"ROW_DATA.activityname.toLowerCase() == 'order onboarded'\">\r\n <a *ngIf=\"ROW_DATA.descriptionDetailsUrlType === 'LINK'\" (click)=\"viewDetailsClicked(ROW_DATA)\">\r\n <button class=\"btn viewDetailsAndEmailBtn order-onboarded\">View details</button>\r\n </a> \r\n </ng-container>\r\n \r\n <a href=\"{{ ROW_DATA.descriptionEmailUrl }}\" target=\"_blank\" *ngIf=\"ROW_DATA.descriptionEmailUrl\">\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 \r\n </div>\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 [width]=\"noDataWidth\" [marginTop]=\"marginTop\" *ngIf=\"(isNoDataToDisplaySubject$ | async)\"> </anna-core-no-data-lib>\r\n</div>\r\n\r\n<!-- Checkbox template -->\r\n<ng-template #filterTooltip>\r\n \r\n <div class=\"radio-container\" *ngIf=\"showFilterTooltipTabs\">\r\n <div [ngClass]=\"{'full-width': filterTabObjects.length == 1}\" *ngFor=\"let data of filterTabObjects\">\r\n <p class=\"filter-tab\" [title]=\"data.label\" (click)=\"populateTooltipDataBasedOnSelectedRadio(data)\" [ngClass]=\"{'active': annaFilterService.selectedRadio == data.key}\" *ngIf=\"filterTabObjects.length > 0\">{{ data.label }}</p>\r\n </div>\r\n </div>\r\n \r\n <div class=\"checkbox-sort\" *ngIf=\"showSortComponent\">\r\n <anna-core-sort-lib [ngClass]=\"{'no-bottom-border': !showFilterComponent}\"\r\n (sortOptionClicked)=\"storeSortTypeInTempVariable($event)\" [sortObjectKey]=\"annaFilterService.selectedRadio\"></anna-core-sort-lib>\r\n </div>\r\n \r\n <ng-container *ngIf=\"showFilterComponent\">\r\n <p class=\"d-flex justify-content-between\">\r\n <button class=\"filter-text-btn\" [disabled]=\"disableClearAll\" (click)=\"unCheckAllCheckbox()\">Clear all</button>\r\n <button class=\"filter-text-btn\" [disabled]=\"disableSelectAll\" (click)=\"selectAllCheckbox()\">Select all</button>\r\n </p>\r\n <p class=\"search-box\">\r\n <i class=\"mi mdi-search search-icon search-icon-position\"></i>\r\n <input\r\n type=\"text\"\r\n placeholder=\"Search\"\r\n class=\"search-input\"\r\n style=\"margin-left: 2px; border: none; padding: 0px\"\r\n [(ngModel)]=\"searchItem\"\r\n (ngModelChange)=\"searchForTheItem($event)\"\r\n />\r\n <i class=\"mdi mdi-close search-bar-close\" [ngClass]=\"{'disable-close-icon': (!searchItem || searchItem.length == 0) }\"\r\n (click)=\"clearSearchedItem()\"></i>\r\n\r\n </p>\r\n <div style=\"position:relative\">\r\n <!-- Track By func -->\r\n <cdk-virtual-scroll-viewport itemSize=\"18\" [style.height.px]=\"heightOfCheckboxTooltipFilter\" class=\"dropdown-data-container\">\r\n <p *cdkVirtualFor=\"let option of tooltipOptions\" class=\"input example-item\" (click)=\"selectUnselectCheckbox(option)\">\r\n <span *ngIf=\"option.isSelected\" role=\"button\" class=\"mi mdi-check-box check-box\"></span>\r\n <span *ngIf=\"!option.isSelected\" role=\"button\" class=\"mi mdi-check-box-outline-blank check-box unchecked\"></span>\r\n <span class=\"data\" title=\"{{ option.value }}\" [innerHTML]=\"option.label\"></span>\r\n </p>\r\n </cdk-virtual-scroll-viewport>\r\n <div style=\"position: absolute; top:0; left:0; width:100%; height:100%; pointer-events:none\"></div>\r\n </div>\r\n </ng-container>\r\n\r\n <div class=\"buttons-container\">\r\n <button class=\"button\" (click)=\"closeCheckboxFilter()\">Cancel</button>\r\n <button\r\n class=\"button\"\r\n [ngClass]=\"{ disabled: disableCheckboxApply }\"\r\n (click)=\"applyFilters()\"\r\n [disabled]=\"disableCheckboxApply\"\r\n >\r\n Apply\r\n <span *ngIf=\"showFilterComponent\">({{ selectedCheckboxOptionsCount == tooltipOptions.length && tooltipOptions.length != 0 && !searchItem? 'All': selectedCheckboxOptionsCount }})</span>\r\n </button>\r\n </div>\r\n</ng-template>\r\n\r\n<!-- Slider template -->\r\n<ng-template #sliderToolTip>\r\n \r\n <div class=\"radio-container\" *ngIf=\"showFilterTooltipTabs\">\r\n <div *ngFor=\"let data of filterTabObjects\">\r\n <p class=\"filter-tab\" [title]=\"data.label\" (click)=\"populateTooltipDataBasedOnSelectedRadio(data)\" [ngClass]=\"{'active': annaFilterService.selectedRadio == data.key}\" *ngIf=\"filterTabObjects.length > 0\">{{ data.label }}</p> \r\n </div>\r\n </div>\r\n <!-- <button class=\"column-clear-all align-center\" [disabled]=\"disableColumnClearAllBtn\" (click)=\"clearColumnFilter()\">\r\n Clear filter\r\n </button> -->\r\n \r\n <anna-core-sort-lib *ngIf=\"showSortComponent\" [ngClass]=\"{'no-bottom-border': !showFilterComponent}\"\r\n (sortOptionClicked)=\"storeSortTypeInTempVariable($event)\" [sortObjectKey]=\"annaFilterService.selectedRadio\"></anna-core-sort-lib>\r\n \r\n <ng-container *ngIf=\"showFilterComponent\">\r\n <button class=\"column-clear-all\" [disabled]=\"disableColumnClearAllBtn\" (click)=\"clearColumnFilter()\">Clear filter</button>\r\n <section class=\"min-maxContainer\">\r\n <input\r\n type=\"number\"\r\n class=\"slider-text\"\r\n step=\"{{ sliderFilterTextBoxStep }}\"\r\n [(ngModel)]=\"sliderMinValue\"\r\n (ngModelChange)=\"minValueChanged($event)\"\r\n [ngClass]=\"{'red-border': showSliderMinValueError}\"\r\n placeholder=\"Min\"\r\n />\r\n <span>To</span>\r\n <input\r\n type=\"number\"\r\n class=\"slider-text\"\r\n step=\"{{ sliderFilterTextBoxStep }}\"\r\n [(ngModel)]=\"sliderMaxValue\"\r\n (ngModelChange)=\"maxValueChanged($event)\"\r\n [ngClass]=\"{'red-border': showSliderMaxValueError}\"\r\n placeholder=\"Max\"\r\n />\r\n </section>\r\n <div class=\"sidebar-slider\">\r\n <ngx-slider\r\n class=\"filter-slider\"\r\n [value]=\"sliderMinValue\"\r\n [highValue]=\"sliderMaxValue\"\r\n [options]=\"options\"\r\n ></ngx-slider>\r\n </div>\r\n </ng-container>\r\n \r\n <div class=\"buttons-container\">\r\n <button class=\"button\" (click)=\"cancelSliderFilter()\">Cancel</button>\r\n <button\r\n class=\"button\"\r\n [ngClass]=\"{ disabled: disableSliderApplyButton }\"\r\n (click)=\"applySliderFilter()\"\r\n [disabled]=\"disableSliderApplyButton\"\r\n >\r\n Apply\r\n </button>\r\n </div>\r\n</ng-template>\r\n\r\n<!-- Date Picker Template -->\r\n<ng-template #datePickerTooltip>\r\n <div class=\"radio-container\" *ngIf=\"showFilterTooltipTabs\">\r\n <div *ngFor=\"let data of filterTabObjects\">\r\n <p class=\"filter-tab\" [title]=\"data.label\" (click)=\"populateTooltipDataBasedOnSelectedRadio(data)\" [ngClass]=\"{'active': annaFilterService.selectedRadio == data.key}\" *ngIf=\"filterTabObjects.length > 0\">{{ data.label }}</p>\r\n </div>\r\n </div>\r\n\r\n <anna-core-sort-lib *ngIf=\"showSortComponent\" [ngClass]=\"{'no-bottom-border': !showFilterComponent}\"\r\n (sortOptionClicked)=\"storeSortTypeInTempVariable($event)\" [sortObjectKey]=\"annaFilterService.selectedRadio\"></anna-core-sort-lib>\r\n \r\n <ng-container *ngIf=\"showFilterComponent\">\r\n <div class=\"datepicker-container\">\r\n <button class=\"column-clear-all\" [disabled]=\"disableColumnClearAllBtn\" (click)=\"clearColumnFilter()\">\r\n Clear filter\r\n </button>\r\n <anna-core-calendar-filter-lib\r\n [minDate]=\"calendarMinEnabledDate\"\r\n [maxDate]=\"calendarMaxEnabledDate\"\r\n [selectedFromDate]=\"selectedMinDate\"\r\n [selectedToDate]=\"selectedMaxDate\"\r\n (selectedDate) = \"calendarDateChanged($event)\"\r\n [label]=\"selectedLabel\"\r\n >\r\n </anna-core-calendar-filter-lib>\r\n </div>\r\n </ng-container>\r\n\r\n <div class=\"buttons-container\">\r\n <button class=\"button\" (click)=\"cancelInDateFilter()\">Cancel</button>\r\n <button class=\"button\" (click)=\"applyDateFilter()\" [ngClass]=\"{ disabled: disableCalendarApplyBtn }\"\r\n [disabled]=\"disableCalendarApplyBtn\">Apply</button>\r\n </div>\r\n \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 \r\n <div class=\"radio-container\" *ngIf=\"showFilterTooltipTabs\">\r\n <div *ngFor=\"let data of filterTabObjects\">\r\n <p class=\"filter-tab\" [title]=\"data.label\" (click)=\"populateTooltipDataBasedOnSelectedRadio(data)\" [ngClass]=\"{'active': annaFilterService.selectedRadio == data.key}\" *ngIf=\"filterTabObjects.length > 0\">{{ data.label }}</p>\r\n </div>\r\n </div>\r\n\r\n <anna-core-sort-lib *ngIf=\"showSortComponent\" [ngClass]=\"{'no-bottom-border': !showFilterComponent}\"\r\n (sortOptionClicked)=\"storeSortTypeInTempVariable($event)\" [sortObjectKey]=\"annaFilterService.selectedRadio\"></anna-core-sort-lib>\r\n \r\n <ng-container *ngIf=\"showFilterComponent\">\r\n <button class=\"column-clear-all\" [disabled]=\"disableColumnClearAllBtn\" (click)=\"clearColumnFilter()\">Clear filter</button>\r\n <div\r\n class=\"time-filter-checkboxes\"\r\n *ngIf=\"gtGeneralConfig.component == 'SPOTDETAILS' || gtGeneralConfig.component == 'EXCLUDEINVENTORYPOPUP' || gtGeneralConfig.component == 'RATING'\"\r\n >\r\n <!-- Multi time option checkbox -->\r\n <div class=\"d-flex align-items-center\" style=\"padding: 0.5rem 0 0.5rem 0.5rem\" *ngIf=\"showMultiTimeCheckbox\">\r\n <span\r\n *ngIf=\"multiTimeCheckboxChecked\"\r\n class=\"material-icons custom-column-checkbox-checked\"\r\n (click)=\"selectOrUnselectMultiTimeCheckbox()\"\r\n >\r\n check_box\r\n </span>\r\n <span\r\n *ngIf=\"!multiTimeCheckboxChecked\"\r\n class=\"material-icons custom-column-checkbox-unchecked\"\r\n (click)=\"selectOrUnselectMultiTimeCheckbox()\"\r\n >\r\n check_box_outline_blank\r\n </span>\r\n <p style=\"margin-left: 2px\">Include Multi</p>\r\n </div>\r\n <!-- Zero time option checkbox -->\r\n <div class=\"d-flex align-items-center\" style=\"padding: 0.5rem 0 0.5rem 0.5rem\" *ngIf=\"showZeroTimeCheckbox\">\r\n <span\r\n *ngIf=\"zeroTimeCheckboxChecked\"\r\n class=\"material-icons custom-column-checkbox-checked\"\r\n (click)=\"selectOrUnselectZeroTimeCheckbox()\"\r\n >\r\n check_box\r\n </span>\r\n <span\r\n *ngIf=\"!zeroTimeCheckboxChecked\"\r\n class=\"material-icons custom-column-checkbox-unchecked\"\r\n (click)=\"selectOrUnselectZeroTimeCheckbox()\"\r\n >\r\n check_box_outline_blank\r\n </span>\r\n <p style=\"margin-left: 2px\">Include Zero</p>\r\n </div>\r\n <!-- Enter time range option checkbox -->\r\n <div class=\"d-flex align-items-center\" style=\"padding: 0.5rem 0 0.5rem 0.5rem\" *ngIf=\"showEnterTimeCheckbox\">\r\n <span\r\n *ngIf=\"enterTimeCheckboxChecked\"\r\n class=\"material-icons custom-column-checkbox-checked\"\r\n (click)=\"selectOrUnselectEnterTimeCheckbox()\"\r\n >\r\n check_box\r\n </span>\r\n <span\r\n *ngIf=\"!enterTimeCheckboxChecked\"\r\n class=\"material-icons custom-column-checkbox-unchecked\"\r\n (click)=\"selectOrUnselectEnterTimeCheckbox()\"\r\n >\r\n check_box_outline_blank\r\n </span>\r\n <p style=\"margin-left: 2px\">Enter time range</p>\r\n </div>\r\n </div>\r\n <div class=\"time-label-container\">\r\n <label>From</label>\r\n </div>\r\n <div class=\"time-container\">\r\n <input class=\"form-control numberInput\" [ngClass]=\"{'error-border': startTimeHourErr}\" [(ngModel)]=\"selectedFromTime[0]\" type=\"text\" (ngModelChange)=\"startTimeHourChange($event)\" />\r\n <div class=\"arrow-container\">\r\n <i class=\"mdi mdi-triangle upward\" (click)=\"changeStartTimeHour(true)\"></i>\r\n <i class=\"mdi mdi-triangle downward\" (click)=\"changeStartTimeHour(false)\"></i>\r\n </div>\r\n <span class=\"dot\">:</span>\r\n <input class=\"form-control numberInput\" [ngClass]=\"{'error-border': startTimeMinErr}\" [(ngModel)]=\"selectedFromTime[1]\" type=\"text\" (ngModelChange)=\"startTimeMinChange($event)\"/>\r\n <div class=\"arrow-container\">\r\n <i class=\"mdi mdi-triangle upward\" (click)=\"changeStartTimeMinute(true)\"></i>\r\n <i class=\"mdi mdi-triangle downward\" (click)=\"changeStartTimeMinute(false)\"></i>\r\n </div>\r\n <div>\r\n <mat-button-toggle-group [(ngModel)]=\"selectedFromTime[2]\" (ngModelChange)=\"disableTimeFilterApplyButton()\">\r\n <mat-button-toggle value=\"AM\">\r\n <span>AM</span>\r\n </mat-button-toggle>\r\n <mat-button-toggle value=\"PM\">\r\n <span>PM</span>\r\n </mat-button-toggle>\r\n </mat-button-toggle-group>\r\n </div>\r\n </div>\r\n\r\n <div class=\"time-label-container\">\r\n <label>To</label>\r\n </div>\r\n <div class=\"time-container\">\r\n <input class=\"form-control numberInput\" [(ngModel)]=\"selectedToTime[0]\" [ngClass]=\"{'error-border': endTimeHourErr}\" (ngModelChange)=\"endTimeHourChange($event)\" type=\"text\" />\r\n <div class=\"arrow-container\">\r\n <i class=\"mdi mdi-triangle upward\" (click)=\"changeEndTimeHour(true)\"></i>\r\n <i class=\"mdi mdi-triangle downward\" (click)=\"changeEndTimeHour(false)\"></i>\r\n </div>\r\n <span class=\"dot\">:</span>\r\n <input class=\"form-control numberInput\" [ngClass]=\"{'error-border': endTimeMinErr}\" [(ngModel)]=\"selectedToTime[1]\" (ngModelChange)=\"endTimeMinChange($event)\" type=\"text\" />\r\n <div class=\"arrow-container\">\r\n <i class=\"mdi mdi-triangle upward\" (click)=\"changeEndTimeMinute(true)\"></i>\r\n <i class=\"mdi mdi-triangle downward\" (click)=\"changeEndTimeMinute(false)\"></i>\r\n </div>\r\n <div>\r\n <mat-button-toggle-group [(ngModel)]=\"selectedToTime[2]\" (ngModelChange)=\"disableTimeFilterApplyButton()\">\r\n <mat-button-toggle value=\"AM\">\r\n <span>AM</span>\r\n </mat-button-toggle>\r\n <mat-button-toggle value=\"PM\">\r\n <span>PM</span>\r\n </mat-button-toggle>\r\n </mat-button-toggle-group>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <div class=\"buttons-container\">\r\n <button class=\"button\" (click)=\"closeTimeFilter()\">Cancel</button>\r\n <button\r\n class=\"button\"\r\n [ngClass]=\"{ disabled: disableTimeFilterApplyBtn }\"\r\n (click)=\"applyTimeFilters()\"\r\n [disabled]=\"disableTimeFilterApplyBtn\"\r\n >\r\n Apply\r\n </button>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #columnInfoTooltip>\r\n <p style=\"padding: 0.5rem; color: black;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\" >This consists of equivalized spots and un-equivalized Paid Programs & un-equivalized Non-spots.</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>{{ data.InventoryCode }}</span>\r\n </td>\r\n <td>\r\n <span>{{ 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 style=\"color: #000\">Seller group not available for this inventory code</span>\r\n </ng-container>\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\">The difference between posted and booked average rating is {{isDifferenceLessThan25Percent ? 'less' : 'more'}} than 25%.</p>\r\n</ng-template>\r\n\r\n<ng-template #postedImpDifference>\r\n <p class=\"difference-text\">The difference between posted and booked average impression is {{isDifferenceLessThan25Percent ? 'less' : 'more'}} than 25%.</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 #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=\"user-action-tooltip-container\">\r\n {{ \r\n userActionTableMetaData.status === 'Activation Email Sent' ? \r\n 'Email sent at: ': \r\n 'Last email resent at: ' \r\n }} \r\n <b> {{ userActionTableMetaData.lastEmailResentAt }} </b> | \r\n\r\n Password valid until: \r\n <b> {{ userActionTableMetaData.passwordValidity }} </b>\r\n </div>\r\n</ng-template>\r\n", styles: [".sort-btn{background:white;border:none;border-right:1px solid #1b88ff;text-decoration:underline;font-family:Roboto;font-size:14px;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:nowrap;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{margin:5px 0 2px!important;width:100%!important}::ng-deep span.ngx-slider-bubble.ngx-slider-model-value{display:block!important;padding:2px!important;box-shadow:#00000059 0 3px 8px!important;height:20px!important}::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}::ng-deep .ngx-slider-pointer:after{display:none!important}::ng-deep .ngx-slider-pointer:focus{outline:none!important}::ng-deep span.ngx-slider-bar{background:#ededed!important;height:3px!important}::ng-deep .filter-slider span.ngx-slider-bar.ngx-slider-selection{background:#bdbdbd!important;height:3px!important}::ng-deep .sidebar-slider{margin-bottom:35px!important;margin-left:.3125rem;margin-right:.3125rem}::ng-deep .ngx-slider-span.ngx-slider-bubble.ngx-slider-model-high{right:0!important}::ng-deep .ngx-slider-span.ngx-slider-bubble.ngx-slider-model-ceil{right:0!important}::ng-deep .ngx-slider.animate{top:10px!important;bottom:0!important;padding:1px 0!important;font-size:12px!important}::ng-deep .ngx-slider-bubble{top:10px!important;bottom:0!important;padding:1px 0!important;font-size:12px!important}::ng-deep .ngx-slider-bar{background:rgba(0,0,0,.26)!important;height:3px!important}::ng-deep .ngx-slider-bar.ngx-slider-selection{background:#42a5f5!important;height:3px!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]{-webkit-appearance:none;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}.buttons-container{display:flex;margin:0px auto .4375rem;justify-content:center}.buttons-container button:last-of-type{background-color:#268bff;color:#fff}.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 0 .188rem .5rem}.search-icon{margin:0 4px 0 0;font-size:1.125rem;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:.875rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:1.86;letter-spacing:\"\";color:#4a4a4a}.search-input{margin:1px 0 1px 4px;font-family:Roboto;font-size:.875rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;color:#c8c8c8}.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:lightgray}section.min-maxContainer{display:flex;justify-content:center;margin-bottom:-.125rem;margin-top:.5rem;width:100%}section.min-maxContainer input{width:30%;height:1.875rem;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}.time-container{width:100%;display:flex;padding:.125rem .625rem 0}.time-container input.form-control:disabled{background-color:#fff;width:2.813rem}.time-container .dot{color:#cbcbcb;position:relative;left:-7px;font-size:17px}.time-container div.arrow-container{flex-direction:column;display:flex;padding-top:.375rem;padding-left:1px;margin-right:1.1875rem}.time-container div.arrow-container i{color:#000;cursor:pointer;font-size:.5625rem}.time-container div.arrow-container i.downward{transform:rotate(180deg)}.mdi-filter{cursor:pointer}.time-label-container{display:flex;justify-content:flex-start}.time-label-container label{margin-bottom:0;color:#4a4a4a;margin-top:.625rem;margin-left:.625rem;font-weight:700}.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:14px;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}.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:14px;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-overflow:ellipsis}p.filter-tab.active{color:#fff;background-color:#1b88ff}button.filter-text-btn{background:white;text-decoration:underline;font-family:Roboto;font-size:14px;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:263px!important;overflow-y:initial!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}::ng-deep .non-edit-slider-tooltip .tooltip-inner{width:238px!important}::ng-deep .non-edit-time-tooltip .tooltip-inner{width:250px!important}::ng-deep .no-bottom-border p.sort-container{border-bottom:none!important}.upper-label{font-family:Roboto;font-size:.6875rem;font-weight:500;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#4a4a4a!important;margin-bottom:0!important}:host ::ng-deep .gt{table-layout:fixed;margin-bottom:0;width:100%}:host ::ng-deep .gt th,:host ::ng-deep .gt td{padding:2px 8px;line-height:normal}:host ::ng-deep .gt thead tr th .upper-label{font-family:Roboto;font-size:.6875rem;font-weight:500;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#4a4a4a;margin-bottom:0}:host ::ng-deep .gt thead tr th .lower-label{font-family:Roboto;font-size:.6875rem;font-weight:500;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#a7a7a7;margin-bottom:0}:host ::ng-deep .gt thead tr th{background-color:#ededed;position:sticky;position:-webkit-sticky;top:0;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}:host ::ng-deep .gt thead tr th br{display:block;content:\"\";margin-top:-8px}:host ::ng-deep .gt thead tr th div.row{display:flex;flex-wrap:nowrap;justify-content:space-between;align-items:center}:host ::ng-deep .gt thead tr th div.sort-filter-container{display:flex;flex-wrap:nowrap;align-items:center}:host ::ng-deep .gt thead tr th:first-of-type{box-shadow:inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4,inset -1px 0 #d4d4d4,inset 1px 0 #d4d4d4}:host ::ng-deep .gt tbody tr td:first-of-type{box-shadow:inset 1px 0 #d4d4d4,inset -1px 0 #d4d4d4,inset 0 -1px #d4d4d4;border:none}:host ::ng-deep .gt tbody tr td:nth-of-type(n + 2){box-shadow:inset -1px 0 #d4d4d4,inset 0 -1px #d4d4d4;border:none}:host ::ng-deep .gt tbody tr td .upper-label{font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:0px;color:#000;display:inline-block;width:90%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host ::ng-deep .gt tbody tr td .lower-label{font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:0px;color:#a7a7a7;display:inline-block;width:90%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host ::ng-deep .gt tbody tr br{display:block;content:\"\";margin-top:-8px}:host ::ng-deep .gt tbody tr:nth-of-type(1) td{border-top:none!important}: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}.table-container::-webkit-scrollbar-track{border:1px solid rgba(0,0,0,.1)!important}.table-container::-webkit-scrollbar{width:5px;height:5px}.table-container::-webkit-scrollbar-thumb{border-radius:4px;background-color:#0006!important;border:1px solid rgba(0,0,0,.2)}.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}.redcolor-cell-border{outline:1px solid #ff5353!important;outline-offset:-1px!important}#no-filter-space{width:.875rem}::ng-deep .mat-button-toggle-appearance-standard .mat-button-toggle-label-content{line-height:1.875rem!important;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}.radio-button-dimension,::ng-deep .markForCredit .mat-radio-inner-circle,::ng-deep .markForCredit .mat-radio-outer-circle,::ng-deep .mark-for-credit .mat-radio-inner-circle,::ng-deep .mark-for-credit .mat-radio-outer-circle,::ng-deep .markForMakeGood .mat-radio-inner-circle,::ng-deep .markForMakeGood .mat-radio-outer-circle,::ng-deep .noAction .mat-radio-inner-circle,::ng-deep .noAction .mat-radio-outer-circle,::ng-deep .credit .mat-radio-inner-circle,::ng-deep .credit .mat-radio-outer-circle,::ng-deep .approve .mat-radio-inner-circle,::ng-deep .approve .mat-radio-outer-circle,::ng-deep .reject .mat-radio-inner-circle,::ng-deep .reject .mat-radio-outer-circle,::ng-deep .resubmit .mat-radio-inner-circle,::ng-deep .resubmit .mat-radio-outer-circle,::ng-deep .rejectCreditRequest .mat-radio-inner-circle,::ng-deep .rejectCreditRequest .mat-radio-outer-circle{height:18px!important;width:18px!important}::ng-deep .margin-bottom-zero .mat-radio-label{margin-bottom:0}::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:white}::ng-deep tr.gray-background-row{background:rgba(233,233,233,.5)}.remarks-tooltip,.mdi-information,.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;margin-left:2px;position:relative;left:-2px}::ng-deep .rating-info-tooltip .tooltip-inner{max-width:800px!important}.spots-info-icon{color:#268bff;cursor:pointer;margin-left:2px;margin-top:1px}::ng-deep .spot-info-tooltip .tooltip-inner{left:60px;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 .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:0px;z-index:1}table.seller-hierarchy-table tr th:first-of-type,table.seller-hierarchy-table tr td:first-of-type{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{max-height:8.75rem;overflow:auto}section.hierarchy-table-container::-webkit-scrollbar-track{border:1px solid rgba(0,0,0,.1)!important;margin-top:1.5rem}section.hierarchy-table-container::-webkit-scrollbar{width:5px;height:5px}section.hierarchy-table-container::-webkit-scrollbar-thumb{border-radius:4px;background-color:#0006!important;border:1px solid rgba(0,0,0,.2)}.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;padding:10px;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}.user-action-tooltip-container{text-align:left!important;padding:12px 4px;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{left:3px;top:1px}::ng-deep .team-user-tooltip .tooltip-inner{width:-moz-fit-content!important;width:fit-content!important;max-width:520px!important;border-radius:2px;padding:0 4px!important}\n"], components: [{ type: i4.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { type: i4.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { type: i4.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { type: i5.NgxSkeletonLoaderComponent, selector: "ngx-skeleton-loader", inputs: ["appearance", "animation", "theme", "loadingText", "count", "ariaLabel"] }, { type: i6.MatRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex"], exportAs: ["matRadioButton"] }, { type: AnnaIconColumnComponent, selector: "anna-core-anna-icon-column", inputs: ["componentName", "objectKey", "dataObject"], outputs: ["onColumnIconClicked"] }, { type: AnnaNoDataComponent, selector: "anna-core-no-data-lib", inputs: ["width", "marginTop"] }, { type: AnnaSortComponent, selector: "anna-core-sort-lib", inputs: ["sortObjectKey"], outputs: ["sortOptionClicked"] }, { type: i2.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { type: i11.ɵa, selector: "ngx-slider", inputs: ["value", "highValue", "options", "manualRefresh", "triggerFocus"], outputs: ["valueChange", "highValueChange", "userChangeStart", "userChange", "userChangeEnd"] }, { type: AnnaCalendarFilterComponent, selector: "anna-core-calendar-filter-lib", inputs: ["maxDate", "label", "minDate", "selectedFromDate", "selectedToDate"], outputs: ["selectedDate", "apply", "cancel"] }, { type: AnnaWeekCalendarComponent, selector: "anna-core-week-calendar-filter-lib", inputs: ["from-date", "to-date", "disabled-dates", "maxDate", "minDate", "week-calendar-config"], outputs: ["apply", "toggle-calendar"] }, { type: i14.MatButtonToggle, selector: "mat-button-toggle", inputs: ["disableRipple", "aria-label", "aria-labelledby", "id", "name", "value", "tabIndex", "appearance", "checked", "disabled"], outputs: ["change"], exportAs: ["matButtonToggle"] }, { type: i15.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"] }], directives: [{ type: i16.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i16.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: i4.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { type: i4.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { type: i16.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { type: i4.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { type: i16.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i16.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i1.NgbTooltip, selector: "[ngbTooltip]", inputs: ["animation", "autoClose", "placement", "triggers", "container", "disableTooltip", "tooltipClass", "openDelay", "closeDelay", "ngbTooltip"], outputs: ["shown", "hidden"], exportAs: ["ngbTooltip"] }, { type: i4.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { type: i4.MatCellDef, selector: "[matCellDef]" }, { type: i4.MatCell, selector: "mat-cell, td[mat-cell]" }, { type: i16.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i16.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i6.MatRadioGroup, selector: "mat-radio-group", exportAs: ["matRadioGroup"] }, { type: i18.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i18.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i16.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { type: showEllipsisTextOnHoverDirective, selector: "[showEllipsisTextOnHover]" }, { type: i18.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i2.CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { type: i2.CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { type: i18.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { type: i14.MatButtonToggleGroup, selector: "mat-button-toggle-group", inputs: ["appearance", "name", "vertical", "value", "multiple", "disabled"], outputs: ["valueChange", "change"], exportAs: ["matButtonToggleGroup"] }], pipes: { "async": i16.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
3390
3336
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaNonEditableGenericTableComponent, decorators: [{
|
|
3391
3337
|
type: Component,
|
|
3392
|
-
args: [{ selector: 'anna-core-non-editable-generic-table-lib', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"table-container {{gtGeneralConfig?.tableOuterContainerName}}\" [ngClass]=\"{ 'scroll-left-shadow-effect': isScrolledLeft }\" (scroll)=\"onTableContainerScroll($event)\">\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 < maximumRowsWhichCanBeRenderedWithoutScroll\r\n ? 'calc(' +\r\n ((gtDimension.rowHeight + (includeBorderInTableHeight ? rowBorderWidth : 0)) * tableData.length +\r\n (!tableData.length || !gtGeneralConfig.totalRow\r\n ? gtDimension.headerHeight\r\n : gtDimension.headerHeight + gtDimension.rowHeight + ( includeBorderInTableHeight ? (2 * rowBorderWidth) : 0))) +\r\n 'px)'\r\n : gtDimension.tableHeight\r\n }\"\r\n >\r\n <table class=\"gt\" [ngClass]=\"tableClass\" mat-table [dataSource]=\"renderedData\">\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\"(click)=\"dataRowClicked(rowData)\"\r\n ></tr>\r\n\r\n <!-- TOTAL ROW -->\r\n <ng-container [matColumnDef]=\"column.colName\" *ngFor=\"let column of totalRowInfo; trackBy: trackByFn\">\r\n <td mat-header-cell *matHeaderCellDef [attr.colspan]=\"column.colspan\" class=\"{{column.class}}\">\r\n <strong>{{ column.data }}</strong>\r\n <ng-container *ngIf=\"column.lowerData\">\r\n <br>\r\n <span \r\n *ngIf=\"column.colName == 'total-potential-booked-unit' && gtGeneralConfig.component == 'RATING';\r\n else columnLowerData\"\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 \r\n && 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>{{ column.lowerData }}</span>\r\n </ng-template>\r\n </ng-container>\r\n <ng-container *ngIf=\"column.tooltipMessage\">\r\n <i class=\"mi mdi-info-outline info-label\" container=\"body\"\r\n [ngbTooltip]=\"column.tooltipMessage\"\r\n tooltipClass=\"gt-total-row-tooltip\" placement=\"bottom\"></i>\r\n </ng-container>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- MAIN ROW -->\r\n <ng-container [matColumnDef]=\"columnDef.headerInfo[0].objectKey\" *ngFor=\"let columnDef of tableHeaders; trackBy: trackByFn\">\r\n <th #tableHeader nowrap mat-header-cell *matHeaderCellDef [style.width]=\"columnDef.width\">\r\n <div class=\"row mx-0\" *ngFor=\"let header of columnDef.headerInfo; let j = index;\"> \r\n <p\r\n *ngIf=\"header.typeOfHeaderData === 'STRING'\"\r\n [ngClass]=\"{ 'upper-label': j === 0, 'lower-label': j === 1 }\"\r\n >\r\n {{ header.name }}\r\n <i *ngIf=\"header.tooltip && header.tooltip.name == 'impsInfoTooltip'\" class=\"{{header['tooltip'].iconClass}}\"\r\n [ngStyle]=\"{'float': header['tooltip'].iconPosition}\"\r\n #t=\"ngbTooltip\"\r\n [ngbTooltip]=\"impsInfoTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i *ngIf=\"header.tooltip && header.tooltip.name == 'spotsColumnEquivalizationMessageTooltip'\" class=\"{{header['tooltip'].iconClass}}\"\r\n [ngStyle]=\"{'float': header['tooltip'].iconPosition}\"\r\n #t=\"ngbTooltip\"\r\n [ngbTooltip]=\"spotsColumnEquivalizationMessageTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i *ngIf=\"header.tooltip && header.tooltip.name == 'ratingInfoTooltip'\" class=\"{{header['tooltip'].iconClass}}\"\r\n [ngStyle]=\"{'float': header['tooltip'].iconPosition}\"\r\n #t=\"ngbTooltip\"\r\n [ngbTooltip]=\"ratingInfoTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i *ngIf=\"header.tooltip && header.tooltip.name == 'rateInfoTooltip'\" class=\"{{header['tooltip'].iconClass}}\"\r\n [ngStyle]=\"{'float': header['tooltip'].iconPosition}\"\r\n #t=\"ngbTooltip\"\r\n [ngbTooltip]=\"rateInfoTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i *ngIf=\"header.tooltip && header.tooltip.name == 'ongoingRevBookedColumnTooltip'\" class=\"{{header['tooltip'].iconClass}}\"\r\n [ngStyle]=\"{'float': header['tooltip'].iconPosition}\"\r\n #t=\"ngbTooltip\"\r\n [ngbTooltip]=\"ongoingRevBookedColumnTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i *ngIf=\"header.tooltip && header.tooltip.name == 'completedRevBookedColumnTooltip'\" class=\"{{header['tooltip'].iconClass}}\"\r\n [ngStyle]=\"{'float': header['tooltip'].iconPosition}\"\r\n #t=\"ngbTooltip\"\r\n [ngbTooltip]=\"completedRevBookedColumnTooltip\"\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 *ngIf=\"gtGeneralConfig.showAllColumnFilter\" class=\"sort-filter-container\">\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: annaFilterService.isFilterSortActive && annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys], \r\n disabled: header.disableTooltipIcon\r\n }\"\r\n [ngbTooltip]=\"filterTooltip\"\r\n placement=\"bottom left-top auto\"\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: annaFilterService.isFilterSortActive && annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon\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: annaFilterService.isFilterSortActive && annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon\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: annaFilterService.isFilterSortActive && annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon\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: annaFilterService.isFilterSortActive && annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon\r\n }\"\r\n [ngbTooltip]=\"timeFilterToolTip\"\r\n placement=\"bottom left-top\"\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 *ngIf=\"header.tooltip && header.tooltip.name == 'lurViolationInfoTooltip'\" class=\"{{header['tooltip'].iconClass}}\"\r\n [ngStyle]=\"{'float': header['tooltip'].iconPosition}\"\r\n #t=\"ngbTooltip\"\r\n [ngbTooltip]=\"lurViolationInfoTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n\r\n </div>\r\n </div>\r\n </th>\r\n\r\n <ng-container *ngIf=\"gtGeneralConfig.component == 'DRR'\">\r\n <ng-container *matCellDef=\"let ROW_DATA\">\r\n <ng-container *ngIf=\"showSkeletonLoading\">\r\n <td mat-cell>\r\n <ngx-skeleton-loader count=\"1\" [theme]=\"{ height: '10px', display: 'block' }\">\r\n </ngx-skeleton-loader>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!showSkeletonLoading\">\r\n <td\r\n mat-cell\r\n *ngIf=\"!ROW_DATA['hide' + columnDef.headerInfo[0].objectKey + 'Td']\"\r\n [attr.rowspan]=\"ROW_DATA[columnDef.headerInfo[0].objectKey + 'Rowspan']\">\r\n <ng-container\r\n *ngFor=\"let subline of columnDef.headerInfo; let sublineIndex = index; trackBy: trackByFn\"\r\n >\r\n <ng-container [ngSwitch]=\"subline.typeOfBodyData\">\r\n <ng-container *ngSwitchCase=\"'ICON'\">\r\n <i [class]=\"ROW_DATA.iconClass\"></i>\r\n </ng-container>\r\n \r\n <ng-container *ngSwitchCase=\"'CHECKBOX'\">\r\n <span\r\n *ngIf=\"ROW_DATA[subline.objectKey]\"\r\n [ngClass]=\"{ 'disable-checkbox': ROW_DATA[subline.isDisabledKey] }\"\r\n class=\"material-icons custom-column-checkbox-checked\"\r\n (click)=\"selectUnselectRow(ROW_DATA)\"\r\n >\r\n check_box\r\n </span>\r\n <span\r\n *ngIf=\"!ROW_DATA[subline.objectKey]\"\r\n class=\"material-icons custom-column-checkbox-unchecked\"\r\n [ngClass]=\"{ 'disable-checkbox': ROW_DATA[subline.isDisabledKey] }\"\r\n (click)=\"selectUnselectRow(ROW_DATA)\"\r\n >\r\n check_box_outline_blank\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']\"\r\n [ngModel]=\"ROW_DATA[subline.objectKey]\"\r\n [disabled]=\"ROW_DATA['RadioButtonConfig'][0].isDisabled\"\r\n >\r\n <ng-container\r\n *ngFor=\"let radioButton of ROW_DATA['RadioButtonConfig']; let last = last\"\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 }}</mat-radio-button\r\n ><br *ngIf=\"!last\" />\r\n </ng-container>\r\n </mat-radio-group>\r\n </ng-container>\r\n \r\n <div *ngSwitchDefault>\r\n {{ ROW_DATA[subline.objectKey] }}\r\n \r\n <ng-container\r\n *ngIf=\"\r\n subline.objectKey == 'Status' && (ROW_DATA['Remarks'] !== null)\r\n \"\r\n >\r\n <i\r\n class=\"mi mdi-info-outline remarks-tooltip\"\r\n [ngbTooltip]=\"columnInfoTooltip\"\r\n placement=\"bottom\"\r\n container=\"body\"\r\n tooltipClass=\"remarks-info-tooltip\"\r\n #t=\"ngbTooltip\"\r\n ></i>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </td>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"gtGeneralConfig.component != 'DRR'\">\r\n <td mat-cell *matCellDef=\"let ROW_DATA\" [style.background]=\"ROW_DATA.backgroundColor\" \r\n [style.border]=\"ROW_DATA.border\"\r\n class=\"{{ROW_DATA.rowClass}}\"\r\n >\r\n <ngx-skeleton-loader *ngIf=\"showSkeletonLoading\" count=\"1\" [theme]=\"{ height: '10px', display: 'block' }\">\r\n </ngx-skeleton-loader>\r\n\r\n <ng-container *ngIf=\"!showSkeletonLoading\">\r\n <ng-container *ngIf=\"tableData.length > 0 && !(isNoDataToDisplaySubject$ | async)\">\r\n <div showEllipsisTextOnHover *ngFor=\"let subline of columnDef.headerInfo; let subLineIndex = index; trackBy: trackByFn\">\r\n <ng-container [ngSwitch]=\"columnDef.headerInfo[subLineIndex].typeOfBodyData\">\r\n <ng-container *ngSwitchCase=\"'ICON'\">\r\n <i *ngIf=\"!(starredInProgress && ROW_DATA.orderId == selectedStarredOrderId)\" [class]=\"ROW_DATA.iconClass\" (click)=\"iconClicked(ROW_DATA,ROW_DATA.iconClass)\"></i>\r\n <ng-container *ngIf=\"starredInProgress && ROW_DATA.orderId == selectedStarredOrderId\">\r\n <div class=\"spinner-for-button-directive\"></div>\r\n <!-- <ng-container [ngTemplateOutlet]=\"circularProgressBar\"></ng-container> -->\r\n </ng-container>\r\n </ng-container>\r\n \r\n <ng-container *ngSwitchCase=\"'SVG_ICON'\">\r\n <anna-core-anna-icon-column [componentName]=\"gtGeneralConfig.component\" [objectKey]=\"subline.objectKey\" [dataObject]=\"ROW_DATA\" (onColumnIconClicked)=\"svgIconClicked($event)\"></anna-core-anna-icon-column>\r\n </ng-container>\r\n \r\n <ng-container *ngSwitchCase=\"'TEXT_ACTIONS'\">\r\n <button *ngFor=\"let text of ROW_DATA.textActions\" (click)=\"textActionClicked(ROW_DATA,text.id)\" [disabled]=\"text.isDisabled\" class=\"{{text.class}}\">{{text.name}}</button>\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': 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': 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 </ng-container>\r\n \r\n <ng-container *ngSwitchCase=\"'CLICKABLE_DATA'\">\r\n <span \r\n *ngIf=\"subline.objectKey == 'displayBookedUnits' && gtGeneralConfig.component == 'RATING'\"\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\">get_app</span>\r\n <ng-container *ngIf=\"downloadInProgress \r\n && ROW_DATA.inventoryCodeId == selectedInventoryIdForDownload \r\n && ROW_DATA.demographic == selectedDemographicForDownload \">\r\n <ng-container [ngTemplateOutlet]=\"circularProgressBar\"></ng-container>\r\n </ng-container>\r\n </span>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchDefault>\r\n <ng-container *ngIf=\"subline.objectKey != 'description'\">\r\n <span>{{ ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey] }}</span>\r\n <i\r\n *ngIf=\"subline.objectKey == 'inventoryCode' && ROW_DATA['isSellerGroup'] && gtGeneralConfig.component == 'RATING' \"\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\"\r\n (mouseenter)=\"bindTheValueToSellerGroupTooltip(ROW_DATA.sellerGroupHierarchy, info)\">\r\n </i>\r\n\r\n <i *ngIf=\"subline.objectKey == 'displayBookedAverageRating' && gtGeneralConfig.component == 'RATING' && ROW_DATA['showRatingAverageIcon'] \"\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)=\"setIsDifference(ROW_DATA.isDifferenceLessThan25Percent)\"\r\n tooltipClass=\"posted-avg-tooltip\"\r\n [ngbTooltip]=\"postedRatingDifference\"\r\n >\r\n </i>\r\n \r\n <i *ngIf=\"subline.objectKey == 'displayBookedAverageImpression' && gtGeneralConfig.component == 'RATING' && ROW_DATA['showImpressionAverageIcon'] \"\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)=\"setIsDifference(ROW_DATA.isDifferenceLessThan25Percent)\"\r\n tooltipClass=\"posted-avg-tooltip\"\r\n [ngbTooltip]=\"postedImpDifference\"\r\n >\r\n </i>\r\n\r\n </ng-container>\r\n <ng-container *ngIf=\"subline.objectKey == 'description'\">\r\n <p *ngIf=\"ROW_DATA.descriptionMessage || ROW_DATA.descriptionEmailReferenceNum\">\r\n <ng-container *ngIf=\"ROW_DATA.descriptionMessage\">\r\n {{ ROW_DATA.descriptionMessage }}\r\n <br />\r\n </ng-container>\r\n <ng-container *ngIf=\"ROW_DATA.descriptionEmailReferenceNum\">\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=\"ROW_DATA.descriptionDetailsUrlType === 'PDF' || ROW_DATA.descriptionDetailsUrlType === 'EXCEL'\"\r\n >\r\n <button class=\"btn viewDetailsAndEmailBtn\">Download</button>\r\n </a>\r\n <ng-container *ngIf=\"ROW_DATA.activityname.toLowerCase() == 'order onboarded'\">\r\n <a *ngIf=\"ROW_DATA.descriptionDetailsUrlType === 'LINK'\" (click)=\"viewDetailsClicked(ROW_DATA)\">\r\n <button class=\"btn viewDetailsAndEmailBtn order-onboarded\">View details</button>\r\n </a> \r\n </ng-container>\r\n \r\n <a href=\"{{ ROW_DATA.descriptionEmailUrl }}\" target=\"_blank\" *ngIf=\"ROW_DATA.descriptionEmailUrl\">\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 \r\n </div>\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 [width]=\"noDataWidth\" [marginTop]=\"marginTop\" *ngIf=\"(isNoDataToDisplaySubject$ | async)\"> </anna-core-no-data-lib>\r\n</div>\r\n\r\n<!-- Checkbox template -->\r\n<ng-template #filterTooltip>\r\n \r\n <div class=\"radio-container\" *ngIf=\"showFilterTooltipTabs\">\r\n <div [ngClass]=\"{'full-width': filterTabObjects.length == 1}\" *ngFor=\"let data of filterTabObjects\">\r\n <p class=\"filter-tab\" [title]=\"data.label\" (click)=\"populateTooltipDataBasedOnSelectedRadio(data)\" [ngClass]=\"{'active': annaFilterService.selectedRadio == data.key}\" *ngIf=\"filterTabObjects.length > 0\">{{ data.label }}</p>\r\n </div>\r\n </div>\r\n \r\n <div class=\"checkbox-sort\" *ngIf=\"showSortComponent\">\r\n <anna-core-sort-lib [ngClass]=\"{'no-bottom-border': !showFilterComponent}\"\r\n (sortOptionClicked)=\"storeSortTypeInTempVariable($event)\" [sortObjectKey]=\"annaFilterService.selectedRadio\"></anna-core-sort-lib>\r\n </div>\r\n \r\n <ng-container *ngIf=\"showFilterComponent\">\r\n <p class=\"d-flex justify-content-between\">\r\n <button class=\"filter-text-btn\" [disabled]=\"disableClearAll\" (click)=\"unCheckAllCheckbox()\">Clear all</button>\r\n <button class=\"filter-text-btn\" [disabled]=\"disableSelectAll\" (click)=\"selectAllCheckbox()\">Select all</button>\r\n </p>\r\n <p class=\"search-box\">\r\n <i class=\"mi mdi-search search-icon search-icon-position\"></i>\r\n <input\r\n type=\"text\"\r\n placeholder=\"Search\"\r\n class=\"search-input\"\r\n style=\"margin-left: 2px; border: none; padding: 0px\"\r\n [(ngModel)]=\"searchItem\"\r\n (ngModelChange)=\"searchForTheItem($event)\"\r\n />\r\n <i class=\"mdi mdi-close search-bar-close\" [ngClass]=\"{'disable-close-icon': (!searchItem || searchItem.length == 0) }\"\r\n (click)=\"clearSearchedItem()\"></i>\r\n\r\n </p>\r\n <div style=\"position:relative\">\r\n <!-- Track By func -->\r\n <cdk-virtual-scroll-viewport itemSize=\"18\" [style.height.px]=\"heightOfCheckboxTooltipFilter\" class=\"dropdown-data-container\">\r\n <p *cdkVirtualFor=\"let option of tooltipOptions\" class=\"input example-item\" (click)=\"selectUnselectCheckbox(option)\">\r\n <span *ngIf=\"option.isSelected\" role=\"button\" class=\"mi mdi-check-box check-box\"></span>\r\n <span *ngIf=\"!option.isSelected\" role=\"button\" class=\"mi mdi-check-box-outline-blank check-box unchecked\"></span>\r\n <span class=\"data\" title=\"{{ option.value }}\" [innerHTML]=\"option.label\"></span>\r\n </p>\r\n </cdk-virtual-scroll-viewport>\r\n <div style=\"position: absolute; top:0; left:0; width:100%; height:100%; pointer-events:none\"></div>\r\n </div>\r\n </ng-container>\r\n\r\n <div class=\"buttons-container\">\r\n <button class=\"button\" (click)=\"closeCheckboxFilter()\">Cancel</button>\r\n <button\r\n class=\"button\"\r\n [ngClass]=\"{ disabled: disableCheckboxApply }\"\r\n (click)=\"applyFilters()\"\r\n [disabled]=\"disableCheckboxApply\"\r\n >\r\n Apply\r\n <span *ngIf=\"showFilterComponent\">({{ selectedCheckboxOptionsCount == tooltipOptions.length && tooltipOptions.length != 0 && !searchItem? 'All': selectedCheckboxOptionsCount }})</span>\r\n </button>\r\n </div>\r\n</ng-template>\r\n\r\n<!-- Slider template -->\r\n<ng-template #sliderToolTip>\r\n \r\n <div class=\"radio-container\" *ngIf=\"showFilterTooltipTabs\">\r\n <div *ngFor=\"let data of filterTabObjects\">\r\n <p class=\"filter-tab\" [title]=\"data.label\" (click)=\"populateTooltipDataBasedOnSelectedRadio(data)\" [ngClass]=\"{'active': annaFilterService.selectedRadio == data.key}\" *ngIf=\"filterTabObjects.length > 0\">{{ data.label }}</p> \r\n </div>\r\n </div>\r\n <!-- <button class=\"column-clear-all align-center\" [disabled]=\"disableColumnClearAllBtn\" (click)=\"clearColumnFilter()\">\r\n Clear filter\r\n </button> -->\r\n \r\n <anna-core-sort-lib *ngIf=\"showSortComponent\" [ngClass]=\"{'no-bottom-border': !showFilterComponent}\"\r\n (sortOptionClicked)=\"storeSortTypeInTempVariable($event)\" [sortObjectKey]=\"annaFilterService.selectedRadio\"></anna-core-sort-lib>\r\n \r\n <ng-container *ngIf=\"showFilterComponent\">\r\n <button class=\"column-clear-all\" [disabled]=\"disableColumnClearAllBtn\" (click)=\"clearColumnFilter()\">Clear filter</button>\r\n <section class=\"min-maxContainer\">\r\n <input\r\n type=\"number\"\r\n class=\"slider-text\"\r\n step=\"{{ sliderFilterTextBoxStep }}\"\r\n [(ngModel)]=\"sliderMinValue\"\r\n (ngModelChange)=\"minValueChanged($event)\"\r\n [ngClass]=\"{'red-border': showSliderMinValueError}\"\r\n placeholder=\"Min\"\r\n />\r\n <span>To</span>\r\n <input\r\n type=\"number\"\r\n class=\"slider-text\"\r\n step=\"{{ sliderFilterTextBoxStep }}\"\r\n [(ngModel)]=\"sliderMaxValue\"\r\n (ngModelChange)=\"maxValueChanged($event)\"\r\n [ngClass]=\"{'red-border': showSliderMaxValueError}\"\r\n placeholder=\"Max\"\r\n />\r\n </section>\r\n <div class=\"sidebar-slider\">\r\n <ngx-slider\r\n class=\"filter-slider\"\r\n [value]=\"sliderMinValue\"\r\n [highValue]=\"sliderMaxValue\"\r\n [options]=\"options\"\r\n ></ngx-slider>\r\n </div>\r\n </ng-container>\r\n \r\n <div class=\"buttons-container\">\r\n <button class=\"button\" (click)=\"cancelSliderFilter()\">Cancel</button>\r\n <button\r\n class=\"button\"\r\n [ngClass]=\"{ disabled: disableSliderApplyButton }\"\r\n (click)=\"applySliderFilter()\"\r\n [disabled]=\"disableSliderApplyButton\"\r\n >\r\n Apply\r\n </button>\r\n </div>\r\n</ng-template>\r\n\r\n<!-- Date Picker Template -->\r\n<ng-template #datePickerTooltip>\r\n <div class=\"radio-container\" *ngIf=\"showFilterTooltipTabs\">\r\n <div *ngFor=\"let data of filterTabObjects\">\r\n <p class=\"filter-tab\" [title]=\"data.label\" (click)=\"populateTooltipDataBasedOnSelectedRadio(data)\" [ngClass]=\"{'active': annaFilterService.selectedRadio == data.key}\" *ngIf=\"filterTabObjects.length > 0\">{{ data.label }}</p>\r\n </div>\r\n </div>\r\n\r\n <anna-core-sort-lib *ngIf=\"showSortComponent\" [ngClass]=\"{'no-bottom-border': !showFilterComponent}\"\r\n (sortOptionClicked)=\"storeSortTypeInTempVariable($event)\" [sortObjectKey]=\"annaFilterService.selectedRadio\"></anna-core-sort-lib>\r\n \r\n <ng-container *ngIf=\"showFilterComponent\">\r\n <div class=\"datepicker-container\">\r\n <button class=\"column-clear-all\" [disabled]=\"disableColumnClearAllBtn\" (click)=\"clearColumnFilter()\">\r\n Clear filter\r\n </button>\r\n <anna-core-calendar-filter-lib\r\n [minDate]=\"calendarMinEnabledDate\"\r\n [maxDate]=\"calendarMaxEnabledDate\"\r\n [selectedFromDate]=\"selectedMinDate\"\r\n [selectedToDate]=\"selectedMaxDate\"\r\n (selectedDate) = \"calendarDateChanged($event)\"\r\n [label]=\"selectedLabel\"\r\n >\r\n </anna-core-calendar-filter-lib>\r\n </div>\r\n </ng-container>\r\n\r\n <div class=\"buttons-container\">\r\n <button class=\"button\" (click)=\"cancelInDateFilter()\">Cancel</button>\r\n <button class=\"button\" (click)=\"applyDateFilter()\" [ngClass]=\"{ disabled: disableCalendarApplyBtn }\"\r\n [disabled]=\"disableCalendarApplyBtn\">Apply</button>\r\n </div>\r\n \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 \r\n <div class=\"radio-container\" *ngIf=\"showFilterTooltipTabs\">\r\n <div *ngFor=\"let data of filterTabObjects\">\r\n <p class=\"filter-tab\" [title]=\"data.label\" (click)=\"populateTooltipDataBasedOnSelectedRadio(data)\" [ngClass]=\"{'active': annaFilterService.selectedRadio == data.key}\" *ngIf=\"filterTabObjects.length > 0\">{{ data.label }}</p>\r\n </div>\r\n </div>\r\n\r\n <anna-core-sort-lib *ngIf=\"showSortComponent\" [ngClass]=\"{'no-bottom-border': !showFilterComponent}\"\r\n (sortOptionClicked)=\"storeSortTypeInTempVariable($event)\" [sortObjectKey]=\"annaFilterService.selectedRadio\"></anna-core-sort-lib>\r\n \r\n <ng-container *ngIf=\"showFilterComponent\">\r\n <button class=\"column-clear-all\" [disabled]=\"disableColumnClearAllBtn\" (click)=\"clearColumnFilter()\">Clear filter</button>\r\n <div\r\n class=\"time-filter-checkboxes\"\r\n *ngIf=\"gtGeneralConfig.component == 'SPOTDETAILS' || gtGeneralConfig.component == 'EXCLUDEINVENTORYPOPUP' || gtGeneralConfig.component == 'RATING'\"\r\n >\r\n <!-- Multi time option checkbox -->\r\n <div class=\"d-flex align-items-center\" style=\"padding: 0.5rem 0 0.5rem 0.5rem\" *ngIf=\"showMultiTimeCheckbox\">\r\n <span\r\n *ngIf=\"multiTimeCheckboxChecked\"\r\n class=\"material-icons custom-column-checkbox-checked\"\r\n (click)=\"selectOrUnselectMultiTimeCheckbox()\"\r\n >\r\n check_box\r\n </span>\r\n <span\r\n *ngIf=\"!multiTimeCheckboxChecked\"\r\n class=\"material-icons custom-column-checkbox-unchecked\"\r\n (click)=\"selectOrUnselectMultiTimeCheckbox()\"\r\n >\r\n check_box_outline_blank\r\n </span>\r\n <p style=\"margin-left: 2px\">Include Multi</p>\r\n </div>\r\n <!-- Zero time option checkbox -->\r\n <div class=\"d-flex align-items-center\" style=\"padding: 0.5rem 0 0.5rem 0.5rem\" *ngIf=\"showZeroTimeCheckbox\">\r\n <span\r\n *ngIf=\"zeroTimeCheckboxChecked\"\r\n class=\"material-icons custom-column-checkbox-checked\"\r\n (click)=\"selectOrUnselectZeroTimeCheckbox()\"\r\n >\r\n check_box\r\n </span>\r\n <span\r\n *ngIf=\"!zeroTimeCheckboxChecked\"\r\n class=\"material-icons custom-column-checkbox-unchecked\"\r\n (click)=\"selectOrUnselectZeroTimeCheckbox()\"\r\n >\r\n check_box_outline_blank\r\n </span>\r\n <p style=\"margin-left: 2px\">Include Zero</p>\r\n </div>\r\n <!-- Enter time range option checkbox -->\r\n <div class=\"d-flex align-items-center\" style=\"padding: 0.5rem 0 0.5rem 0.5rem\" *ngIf=\"showEnterTimeCheckbox\">\r\n <span\r\n *ngIf=\"enterTimeCheckboxChecked\"\r\n class=\"material-icons custom-column-checkbox-checked\"\r\n (click)=\"selectOrUnselectEnterTimeCheckbox()\"\r\n >\r\n check_box\r\n </span>\r\n <span\r\n *ngIf=\"!enterTimeCheckboxChecked\"\r\n class=\"material-icons custom-column-checkbox-unchecked\"\r\n (click)=\"selectOrUnselectEnterTimeCheckbox()\"\r\n >\r\n check_box_outline_blank\r\n </span>\r\n <p style=\"margin-left: 2px\">Enter time range</p>\r\n </div>\r\n </div>\r\n <div class=\"time-label-container\">\r\n <label>From</label>\r\n </div>\r\n <div class=\"time-container\">\r\n <input class=\"form-control numberInput\" [ngClass]=\"{'error-border': startTimeHourErr}\" [(ngModel)]=\"selectedFromTime[0]\" type=\"text\" (ngModelChange)=\"startTimeHourChange($event)\" />\r\n <div class=\"arrow-container\">\r\n <i class=\"mdi mdi-triangle upward\" (click)=\"changeStartTimeHour(true)\"></i>\r\n <i class=\"mdi mdi-triangle downward\" (click)=\"changeStartTimeHour(false)\"></i>\r\n </div>\r\n <span class=\"dot\">:</span>\r\n <input class=\"form-control numberInput\" [ngClass]=\"{'error-border': startTimeMinErr}\" [(ngModel)]=\"selectedFromTime[1]\" type=\"text\" (ngModelChange)=\"startTimeMinChange($event)\"/>\r\n <div class=\"arrow-container\">\r\n <i class=\"mdi mdi-triangle upward\" (click)=\"changeStartTimeMinute(true)\"></i>\r\n <i class=\"mdi mdi-triangle downward\" (click)=\"changeStartTimeMinute(false)\"></i>\r\n </div>\r\n <div>\r\n <mat-button-toggle-group [(ngModel)]=\"selectedFromTime[2]\" (ngModelChange)=\"disableTimeFilterApplyButton()\">\r\n <mat-button-toggle value=\"AM\">\r\n <span>AM</span>\r\n </mat-button-toggle>\r\n <mat-button-toggle value=\"PM\">\r\n <span>PM</span>\r\n </mat-button-toggle>\r\n </mat-button-toggle-group>\r\n </div>\r\n </div>\r\n\r\n <div class=\"time-label-container\">\r\n <label>To</label>\r\n </div>\r\n <div class=\"time-container\">\r\n <input class=\"form-control numberInput\" [(ngModel)]=\"selectedToTime[0]\" [ngClass]=\"{'error-border': endTimeHourErr}\" (ngModelChange)=\"endTimeHourChange($event)\" type=\"text\" />\r\n <div class=\"arrow-container\">\r\n <i class=\"mdi mdi-triangle upward\" (click)=\"changeEndTimeHour(true)\"></i>\r\n <i class=\"mdi mdi-triangle downward\" (click)=\"changeEndTimeHour(false)\"></i>\r\n </div>\r\n <span class=\"dot\">:</span>\r\n <input class=\"form-control numberInput\" [ngClass]=\"{'error-border': endTimeMinErr}\" [(ngModel)]=\"selectedToTime[1]\" (ngModelChange)=\"endTimeMinChange($event)\" type=\"text\" />\r\n <div class=\"arrow-container\">\r\n <i class=\"mdi mdi-triangle upward\" (click)=\"changeEndTimeMinute(true)\"></i>\r\n <i class=\"mdi mdi-triangle downward\" (click)=\"changeEndTimeMinute(false)\"></i>\r\n </div>\r\n <div>\r\n <mat-button-toggle-group [(ngModel)]=\"selectedToTime[2]\" (ngModelChange)=\"disableTimeFilterApplyButton()\">\r\n <mat-button-toggle value=\"AM\">\r\n <span>AM</span>\r\n </mat-button-toggle>\r\n <mat-button-toggle value=\"PM\">\r\n <span>PM</span>\r\n </mat-button-toggle>\r\n </mat-button-toggle-group>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <div class=\"buttons-container\">\r\n <button class=\"button\" (click)=\"closeTimeFilter()\">Cancel</button>\r\n <button\r\n class=\"button\"\r\n [ngClass]=\"{ disabled: disableTimeFilterApplyBtn }\"\r\n (click)=\"applyTimeFilters()\"\r\n [disabled]=\"disableTimeFilterApplyBtn\"\r\n >\r\n Apply\r\n </button>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #columnInfoTooltip>\r\n <p style=\"padding: 0.5rem; color: black;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\" >This consists of equivalized spots and un-equivalized Paid Programs & un-equivalized Non-spots.</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>{{ data.InventoryCode }}</span>\r\n </td>\r\n <td>\r\n <span>{{ 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 style=\"color: #000\">Seller group not available for this inventory code</span>\r\n </ng-container>\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\">The difference between posted and booked average rating is {{isDifferenceLessThan25Percent ? 'less' : 'more'}} than 25%.</p>\r\n</ng-template>\r\n\r\n<ng-template #postedImpDifference>\r\n <p class=\"difference-text\">The difference between posted and booked average impression is {{isDifferenceLessThan25Percent ? 'less' : 'more'}} than 25%.</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 #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", styles: [".sort-btn{background:white;border:none;border-right:1px solid #1b88ff;text-decoration:underline;font-family:Roboto;font-size:14px;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:nowrap;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{margin:5px 0 2px!important;width:100%!important}::ng-deep span.ngx-slider-bubble.ngx-slider-model-value{display:block!important;padding:2px!important;box-shadow:#00000059 0 3px 8px!important;height:20px!important}::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}::ng-deep .ngx-slider-pointer:after{display:none!important}::ng-deep .ngx-slider-pointer:focus{outline:none!important}::ng-deep span.ngx-slider-bar{background:#ededed!important;height:3px!important}::ng-deep .filter-slider span.ngx-slider-bar.ngx-slider-selection{background:#bdbdbd!important;height:3px!important}::ng-deep .sidebar-slider{margin-bottom:35px!important;margin-left:.3125rem;margin-right:.3125rem}::ng-deep .ngx-slider-span.ngx-slider-bubble.ngx-slider-model-high{right:0!important}::ng-deep .ngx-slider-span.ngx-slider-bubble.ngx-slider-model-ceil{right:0!important}::ng-deep .ngx-slider.animate{top:10px!important;bottom:0!important;padding:1px 0!important;font-size:12px!important}::ng-deep .ngx-slider-bubble{top:10px!important;bottom:0!important;padding:1px 0!important;font-size:12px!important}::ng-deep .ngx-slider-bar{background:rgba(0,0,0,.26)!important;height:3px!important}::ng-deep .ngx-slider-bar.ngx-slider-selection{background:#42a5f5!important;height:3px!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]{-webkit-appearance:none;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}.buttons-container{display:flex;margin:0px auto .4375rem;justify-content:center}.buttons-container button:last-of-type{background-color:#268bff;color:#fff}.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 0 .188rem .5rem}.search-icon{margin:0 4px 0 0;font-size:1.125rem;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:.875rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:1.86;letter-spacing:\"\";color:#4a4a4a}.search-input{margin:1px 0 1px 4px;font-family:Roboto;font-size:.875rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;color:#c8c8c8}.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:lightgray}section.min-maxContainer{display:flex;justify-content:center;margin-bottom:-.125rem;margin-top:.5rem;width:100%}section.min-maxContainer input{width:30%;height:1.875rem;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}.time-container{width:100%;display:flex;padding:.125rem .625rem 0}.time-container input.form-control:disabled{background-color:#fff;width:2.813rem}.time-container .dot{color:#cbcbcb;position:relative;left:-7px;font-size:17px}.time-container div.arrow-container{flex-direction:column;display:flex;padding-top:.375rem;padding-left:1px;margin-right:1.1875rem}.time-container div.arrow-container i{color:#000;cursor:pointer;font-size:.5625rem}.time-container div.arrow-container i.downward{transform:rotate(180deg)}.mdi-filter{cursor:pointer}.time-label-container{display:flex;justify-content:flex-start}.time-label-container label{margin-bottom:0;color:#4a4a4a;margin-top:.625rem;margin-left:.625rem;font-weight:700}.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:14px;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}.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:14px;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-overflow:ellipsis}p.filter-tab.active{color:#fff;background-color:#1b88ff}button.filter-text-btn{background:white;text-decoration:underline;font-family:Roboto;font-size:14px;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:263px!important;overflow-y:initial!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}::ng-deep .non-edit-slider-tooltip .tooltip-inner{width:238px!important}::ng-deep .non-edit-time-tooltip .tooltip-inner{width:250px!important}::ng-deep .no-bottom-border p.sort-container{border-bottom:none!important}.upper-label{font-family:Roboto;font-size:.6875rem;font-weight:500;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#4a4a4a!important;margin-bottom:0!important}:host ::ng-deep .gt{table-layout:fixed;margin-bottom:0;width:100%}:host ::ng-deep .gt th,:host ::ng-deep .gt td{padding:2px 8px;line-height:normal}:host ::ng-deep .gt thead tr th .upper-label{font-family:Roboto;font-size:.6875rem;font-weight:500;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#4a4a4a;margin-bottom:0}:host ::ng-deep .gt thead tr th .lower-label{font-family:Roboto;font-size:.6875rem;font-weight:500;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#a7a7a7;margin-bottom:0}:host ::ng-deep .gt thead tr th{background-color:#ededed;position:sticky;position:-webkit-sticky;top:0;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}:host ::ng-deep .gt thead tr th br{display:block;content:\"\";margin-top:-8px}:host ::ng-deep .gt thead tr th div.row{display:flex;flex-wrap:nowrap;justify-content:space-between;align-items:center}:host ::ng-deep .gt thead tr th div.sort-filter-container{display:flex;flex-wrap:nowrap;align-items:center}:host ::ng-deep .gt thead tr th:first-of-type{box-shadow:inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4,inset -1px 0 #d4d4d4,inset 1px 0 #d4d4d4}:host ::ng-deep .gt tbody tr td:first-of-type{box-shadow:inset 1px 0 #d4d4d4,inset -1px 0 #d4d4d4,inset 0 -1px #d4d4d4;border:none}:host ::ng-deep .gt tbody tr td:nth-of-type(n + 2){box-shadow:inset -1px 0 #d4d4d4,inset 0 -1px #d4d4d4;border:none}:host ::ng-deep .gt tbody tr td .upper-label{font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:0px;color:#000;display:inline-block;width:90%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host ::ng-deep .gt tbody tr td .lower-label{font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:0px;color:#a7a7a7;display:inline-block;width:90%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host ::ng-deep .gt tbody tr br{display:block;content:\"\";margin-top:-8px}:host ::ng-deep .gt tbody tr:nth-of-type(1) td{border-top:none!important}: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}.table-container::-webkit-scrollbar-track{border:1px solid rgba(0,0,0,.1)!important}.table-container::-webkit-scrollbar{width:5px;height:5px}.table-container::-webkit-scrollbar-thumb{border-radius:4px;background-color:#0006!important;border:1px solid rgba(0,0,0,.2)}.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}.redcolor-cell-border{outline:1px solid #ff5353!important;outline-offset:-1px!important}#no-filter-space{width:.875rem}::ng-deep .mat-button-toggle-appearance-standard .mat-button-toggle-label-content{line-height:1.875rem!important;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}.radio-button-dimension,::ng-deep .markForCredit .mat-radio-inner-circle,::ng-deep .markForCredit .mat-radio-outer-circle,::ng-deep .mark-for-credit .mat-radio-inner-circle,::ng-deep .mark-for-credit .mat-radio-outer-circle,::ng-deep .markForMakeGood .mat-radio-inner-circle,::ng-deep .markForMakeGood .mat-radio-outer-circle,::ng-deep .noAction .mat-radio-inner-circle,::ng-deep .noAction .mat-radio-outer-circle,::ng-deep .credit .mat-radio-inner-circle,::ng-deep .credit .mat-radio-outer-circle,::ng-deep .approve .mat-radio-inner-circle,::ng-deep .approve .mat-radio-outer-circle,::ng-deep .reject .mat-radio-inner-circle,::ng-deep .reject .mat-radio-outer-circle,::ng-deep .resubmit .mat-radio-inner-circle,::ng-deep .resubmit .mat-radio-outer-circle,::ng-deep .rejectCreditRequest .mat-radio-inner-circle,::ng-deep .rejectCreditRequest .mat-radio-outer-circle{height:18px!important;width:18px!important}::ng-deep .margin-bottom-zero .mat-radio-label{margin-bottom:0}::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:white}::ng-deep tr.gray-background-row{background:rgba(233,233,233,.5)}.remarks-tooltip,.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;margin-left:2px;position:relative;left:-2px}::ng-deep .rating-info-tooltip .tooltip-inner{max-width:800px!important}.spots-info-icon{color:#268bff;cursor:pointer;margin-left:2px;margin-top:1px}::ng-deep .spot-info-tooltip .tooltip-inner{left:60px;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 .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:first-of-type,table.seller-hierarchy-table tr td:first-of-type{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{max-height:8.75rem;overflow:auto}section.hierarchy-table-container::-webkit-scrollbar-track{border:1px solid rgba(0,0,0,.1)!important;margin-top:1.5rem}section.hierarchy-table-container::-webkit-scrollbar{width:5px;height:5px}section.hierarchy-table-container::-webkit-scrollbar-thumb{border-radius:4px;background-color:#0006!important;border:1px solid rgba(0,0,0,.2)}.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;padding:10px;width:max-content;text-align:left}div.spinner-for-button-directive{position:relative;left:-1px}\n"] }]
|
|
3393
|
-
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: AnnaSortService }, { type: AnnaDateTimeFormatService }, { type: AnnaFilterService }
|
|
3338
|
+
args: [{ selector: 'anna-core-non-editable-generic-table-lib', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"table-container {{gtGeneralConfig?.tableOuterContainerName}}\" [ngClass]=\"{ 'scroll-left-shadow-effect': isScrolledLeft, 'clickable-row': clickableRow }\" (scroll)=\"onTableContainerScroll($event)\">\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 < maximumRowsWhichCanBeRenderedWithoutScroll\r\n ? 'calc(' +\r\n ((gtDimension.rowHeight + (includeBorderInTableHeight ? rowBorderWidth : 0)) * tableData.length +\r\n (!tableData.length || !gtGeneralConfig.totalRow\r\n ? gtDimension.headerHeight\r\n : gtDimension.headerHeight + gtDimension.rowHeight + ( includeBorderInTableHeight ? (2 * rowBorderWidth) : 0))) +\r\n 'px)'\r\n : gtDimension.tableHeight\r\n }\"\r\n >\r\n <table class=\"gt\" [ngClass]=\"tableClass\" mat-table [dataSource]=\"renderedData\">\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\"(click)=\"dataRowClicked(rowData)\"\r\n ></tr>\r\n\r\n <!-- TOTAL ROW -->\r\n <ng-container [matColumnDef]=\"column.colName\" *ngFor=\"let column of totalRowInfo; trackBy: trackByFn\">\r\n <td mat-header-cell *matHeaderCellDef [attr.colspan]=\"column.colspan\" class=\"{{column.class}}\">\r\n <strong>{{ column.data }}</strong>\r\n <ng-container *ngIf=\"column.lowerData\">\r\n <br>\r\n <span \r\n *ngIf=\"column.colName == 'total-potential-booked-unit' && gtGeneralConfig.component == 'RATING';\r\n else columnLowerData\"\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 \r\n && 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>{{ column.lowerData }}</span>\r\n </ng-template>\r\n </ng-container>\r\n <ng-container *ngIf=\"column.tooltipMessage\">\r\n <i class=\"mi mdi-info-outline info-label\" container=\"body\"\r\n [ngbTooltip]=\"column.tooltipMessage\"\r\n tooltipClass=\"gt-total-row-tooltip\" placement=\"bottom\"></i>\r\n </ng-container>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- MAIN ROW -->\r\n <ng-container [matColumnDef]=\"columnDef.headerInfo[0].objectKey\" *ngFor=\"let columnDef of tableHeaders; trackBy: trackByFn\">\r\n <th #tableHeader nowrap mat-header-cell *matHeaderCellDef [style.width]=\"columnDef.width\">\r\n <div class=\"row mx-0\" *ngFor=\"let header of columnDef.headerInfo; let j = index;\"> \r\n <p\r\n *ngIf=\"header.typeOfHeaderData === 'STRING'\"\r\n [ngClass]=\"{ 'upper-label': j === 0, 'lower-label': j === 1 }\"\r\n >\r\n {{ header.name }}\r\n <i *ngIf=\"header.tooltip && header.tooltip.name == 'impsInfoTooltip'\" class=\"{{header['tooltip'].iconClass}}\"\r\n [ngStyle]=\"{'float': header['tooltip'].iconPosition}\"\r\n #t=\"ngbTooltip\"\r\n [ngbTooltip]=\"impsInfoTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i *ngIf=\"header.tooltip && header.tooltip.name == 'spotsColumnEquivalizationMessageTooltip'\" class=\"{{header['tooltip'].iconClass}}\"\r\n [ngStyle]=\"{'float': header['tooltip'].iconPosition}\"\r\n #t=\"ngbTooltip\"\r\n [ngbTooltip]=\"spotsColumnEquivalizationMessageTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i *ngIf=\"header.tooltip && header.tooltip.name == 'ratingInfoTooltip'\" class=\"{{header['tooltip'].iconClass}}\"\r\n [ngStyle]=\"{'float': header['tooltip'].iconPosition}\"\r\n #t=\"ngbTooltip\"\r\n [ngbTooltip]=\"ratingInfoTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i *ngIf=\"header.tooltip && header.tooltip.name == 'rateInfoTooltip'\" class=\"{{header['tooltip'].iconClass}}\"\r\n [ngStyle]=\"{'float': header['tooltip'].iconPosition}\"\r\n #t=\"ngbTooltip\"\r\n [ngbTooltip]=\"rateInfoTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i *ngIf=\"header.tooltip && header.tooltip.name == 'ongoingRevBookedColumnTooltip'\" class=\"{{header['tooltip'].iconClass}}\"\r\n [ngStyle]=\"{'float': header['tooltip'].iconPosition}\"\r\n #t=\"ngbTooltip\"\r\n [ngbTooltip]=\"ongoingRevBookedColumnTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n <i *ngIf=\"header.tooltip && header.tooltip.name == 'completedRevBookedColumnTooltip'\" class=\"{{header['tooltip'].iconClass}}\"\r\n [ngStyle]=\"{'float': header['tooltip'].iconPosition}\"\r\n #t=\"ngbTooltip\"\r\n [ngbTooltip]=\"completedRevBookedColumnTooltip\"\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 *ngIf=\"gtGeneralConfig.showAllColumnFilter\" class=\"sort-filter-container\">\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: annaFilterService.isFilterSortActive && annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys], \r\n disabled: header.disableTooltipIcon\r\n }\"\r\n [ngbTooltip]=\"filterTooltip\"\r\n placement=\"bottom left-top auto\"\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: annaFilterService.isFilterSortActive && annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon\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: annaFilterService.isFilterSortActive && annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon\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: annaFilterService.isFilterSortActive && annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon\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: annaFilterService.isFilterSortActive && annaFilterService.isFilterSortActive[header.joinedFilterSortObjectKeys],\r\n disabled: header.disableTooltipIcon\r\n }\"\r\n [ngbTooltip]=\"timeFilterToolTip\"\r\n placement=\"bottom left-top\"\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 *ngIf=\"header.tooltip && header.tooltip.name == 'lurViolationInfoTooltip'\" class=\"{{header['tooltip'].iconClass}}\"\r\n [ngStyle]=\"{'float': header['tooltip'].iconPosition}\"\r\n #t=\"ngbTooltip\"\r\n [ngbTooltip]=\"lurViolationInfoTooltip\"\r\n placement=\"{{ header['tooltip'].tooltipPosition }}\"\r\n tooltipClass=\"{{ header['tooltip'].tooltipClass }}\"\r\n >\r\n </i>\r\n\r\n </div>\r\n </div>\r\n </th>\r\n\r\n <ng-container *ngIf=\"gtGeneralConfig.component == 'DRR'\">\r\n <ng-container *matCellDef=\"let ROW_DATA\">\r\n <ng-container *ngIf=\"showSkeletonLoading\">\r\n <td mat-cell>\r\n <ngx-skeleton-loader count=\"1\" [theme]=\"{ height: '10px', display: 'block' }\">\r\n </ngx-skeleton-loader>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!showSkeletonLoading\">\r\n <td\r\n mat-cell\r\n *ngIf=\"!ROW_DATA['hide' + columnDef.headerInfo[0].objectKey + 'Td']\"\r\n [attr.rowspan]=\"ROW_DATA[columnDef.headerInfo[0].objectKey + 'Rowspan']\">\r\n <ng-container\r\n *ngFor=\"let subline of columnDef.headerInfo; let sublineIndex = index; trackBy: trackByFn\"\r\n >\r\n <ng-container [ngSwitch]=\"subline.typeOfBodyData\">\r\n <ng-container *ngSwitchCase=\"'ICON'\">\r\n <i [class]=\"ROW_DATA.iconClass\"></i>\r\n </ng-container>\r\n \r\n <ng-container *ngSwitchCase=\"'CHECKBOX'\">\r\n <span\r\n *ngIf=\"ROW_DATA[subline.objectKey]\"\r\n [ngClass]=\"{ 'disable-checkbox': ROW_DATA[subline.isDisabledKey] }\"\r\n class=\"material-icons custom-column-checkbox-checked\"\r\n (click)=\"selectUnselectRow(ROW_DATA)\"\r\n >\r\n check_box\r\n </span>\r\n <span\r\n *ngIf=\"!ROW_DATA[subline.objectKey]\"\r\n class=\"material-icons custom-column-checkbox-unchecked\"\r\n [ngClass]=\"{ 'disable-checkbox': ROW_DATA[subline.isDisabledKey] }\"\r\n (click)=\"selectUnselectRow(ROW_DATA)\"\r\n >\r\n check_box_outline_blank\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']\"\r\n [ngModel]=\"ROW_DATA[subline.objectKey]\"\r\n [disabled]=\"ROW_DATA['RadioButtonConfig'][0].isDisabled\"\r\n >\r\n <ng-container\r\n *ngFor=\"let radioButton of ROW_DATA['RadioButtonConfig']; let last = last\"\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 }}</mat-radio-button\r\n ><br *ngIf=\"!last\" />\r\n </ng-container>\r\n </mat-radio-group>\r\n </ng-container>\r\n \r\n <div *ngSwitchDefault>\r\n {{ ROW_DATA[subline.objectKey] }}\r\n \r\n <ng-container\r\n *ngIf=\"\r\n subline.objectKey == 'Status' && (ROW_DATA['Remarks'] !== null)\r\n \"\r\n >\r\n <i\r\n class=\"mi mdi-info-outline remarks-tooltip\"\r\n [ngbTooltip]=\"columnInfoTooltip\"\r\n placement=\"bottom\"\r\n container=\"body\"\r\n tooltipClass=\"remarks-info-tooltip\"\r\n #t=\"ngbTooltip\"\r\n ></i>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </td>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"gtGeneralConfig.component != 'DRR'\">\r\n <td mat-cell *matCellDef=\"let ROW_DATA\" [style.background]=\"ROW_DATA.backgroundColor\" \r\n [style.border]=\"ROW_DATA.border\"\r\n class=\"{{ROW_DATA.rowClass}}\"\r\n >\r\n <ngx-skeleton-loader *ngIf=\"showSkeletonLoading\" count=\"1\" [theme]=\"{ height: '10px', display: 'block' }\">\r\n </ngx-skeleton-loader>\r\n\r\n <ng-container *ngIf=\"!showSkeletonLoading\">\r\n <ng-container *ngIf=\"tableData.length > 0 && !(isNoDataToDisplaySubject$ | async)\">\r\n <div showEllipsisTextOnHover *ngFor=\"let subline of columnDef.headerInfo; let subLineIndex = index; trackBy: trackByFn\">\r\n <ng-container [ngSwitch]=\"columnDef.headerInfo[subLineIndex].typeOfBodyData\">\r\n <ng-container *ngSwitchCase=\"'ICON'\">\r\n <i *ngIf=\"!(starredInProgress && ROW_DATA.orderId == selectedStarredOrderId)\" [class]=\"ROW_DATA.iconClass\" (click)=\"iconClicked(ROW_DATA,ROW_DATA.iconClass)\"></i>\r\n <ng-container *ngIf=\"starredInProgress && ROW_DATA.orderId == selectedStarredOrderId\">\r\n <div class=\"spinner-for-button-directive\"></div>\r\n <!-- <ng-container [ngTemplateOutlet]=\"circularProgressBar\"></ng-container> -->\r\n </ng-container>\r\n </ng-container>\r\n \r\n <ng-container *ngSwitchCase=\"'SVG_ICON'\">\r\n <anna-core-anna-icon-column [componentName]=\"gtGeneralConfig.component\" [objectKey]=\"subline.objectKey\" [dataObject]=\"ROW_DATA\" (onColumnIconClicked)=\"svgIconClicked($event)\"></anna-core-anna-icon-column>\r\n </ng-container>\r\n \r\n <ng-container *ngSwitchCase=\"'TEXT_ACTIONS'\">\r\n <button *ngFor=\"let text of ROW_DATA.textActions\" (click)=\"textActionClicked(ROW_DATA,text.id)\" [disabled]=\"text.isDisabled\" class=\"{{text.class}}\">{{text.name}}</button>\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': 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': 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 </ng-container>\r\n \r\n <ng-container *ngSwitchCase=\"'CLICKABLE_DATA'\">\r\n <a \r\n *ngFor=\"let text of ROW_DATA.clickableItem\" \r\n [ngClass]=\"{'disabled': text.isDisabled}\"\r\n (click)=\"onClickableDataClicked(ROW_DATA, text.id)\">\r\n {{ text.name }}\r\n </a>\r\n <span \r\n *ngIf=\"subline.objectKey == 'displayBookedUnits' && gtGeneralConfig.component == 'RATING'\"\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\">get_app</span>\r\n <ng-container *ngIf=\"downloadInProgress \r\n && ROW_DATA.inventoryCodeId == selectedInventoryIdForDownload \r\n && ROW_DATA.demographic == selectedDemographicForDownload \">\r\n <ng-container [ngTemplateOutlet]=\"circularProgressBar\"></ng-container>\r\n </ng-container>\r\n </span>\r\n </ng-container>\r\n\r\n <ng-container *ngSwitchCase=\"'STRING__TEXT_ACTION'\">\r\n <ng-container *ngIf=\"ROW_DATA.textActions.typeOfData== 'STRING'\">\r\n {{ ROW_DATA.textActions.data }} \r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"ROW_DATA.textActions.typeOfData== 'TEXT_ACTION'\">\r\n <span> {{ ROW_DATA.textActions.additionalTextBeforeLink }} </span>\r\n <a \r\n (click)=\"textActionClicked(ROW_DATA, null)\" \r\n [ngClass]=\"{'disabled': ROW_DATA.textActions.disabled}\"> \r\n {{ROW_DATA.textActions.data}}\r\n </a> \r\n <i \r\n *ngIf=\"ROW_DATA.textActions.showIcon\"\r\n class=\"mdi mdi-information\"\r\n (mouseenter)=\"mouseEnterOnStringTextActionType(ROW_DATA)\"\r\n placement=\"bottom auto\"\r\n container=\"body\"\r\n [autoClose]=\"true\"\r\n tooltipClass=\"team-user-tooltip\"\r\n [ngbTooltip]=\"userLoggedInDetails\">\r\n </i> \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>{{ ROW_DATA[columnDef.headerInfo[subLineIndex].objectKey] }}</span>\r\n <i\r\n *ngIf=\"subline.objectKey == 'inventoryCode' && ROW_DATA['isSellerGroup'] && gtGeneralConfig.component == 'RATING' \"\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\"\r\n (mouseenter)=\"bindTheValueToSellerGroupTooltip(ROW_DATA.sellerGroupHierarchy, info)\">\r\n </i>\r\n\r\n <i *ngIf=\"subline.objectKey == 'displayBookedAverageRating' && gtGeneralConfig.component == 'RATING' && ROW_DATA['showRatingAverageIcon'] \"\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)=\"setIsDifference(ROW_DATA.isDifferenceLessThan25Percent)\"\r\n tooltipClass=\"posted-avg-tooltip\"\r\n [ngbTooltip]=\"postedRatingDifference\"\r\n >\r\n </i>\r\n \r\n <i *ngIf=\"subline.objectKey == 'displayBookedAverageImpression' && gtGeneralConfig.component == 'RATING' && ROW_DATA['showImpressionAverageIcon'] \"\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)=\"setIsDifference(ROW_DATA.isDifferenceLessThan25Percent)\"\r\n tooltipClass=\"posted-avg-tooltip\"\r\n [ngbTooltip]=\"postedImpDifference\"\r\n >\r\n </i>\r\n\r\n </ng-container>\r\n <ng-container *ngIf=\"subline.objectKey == 'description'\">\r\n <p *ngIf=\"ROW_DATA.descriptionMessage || ROW_DATA.descriptionEmailReferenceNum\">\r\n <ng-container *ngIf=\"ROW_DATA.descriptionMessage\">\r\n {{ ROW_DATA.descriptionMessage }}\r\n <br />\r\n </ng-container>\r\n <ng-container *ngIf=\"ROW_DATA.descriptionEmailReferenceNum\">\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=\"ROW_DATA.descriptionDetailsUrlType === 'PDF' || ROW_DATA.descriptionDetailsUrlType === 'EXCEL'\"\r\n >\r\n <button class=\"btn viewDetailsAndEmailBtn\">Download</button>\r\n </a>\r\n <ng-container *ngIf=\"ROW_DATA.activityname.toLowerCase() == 'order onboarded'\">\r\n <a *ngIf=\"ROW_DATA.descriptionDetailsUrlType === 'LINK'\" (click)=\"viewDetailsClicked(ROW_DATA)\">\r\n <button class=\"btn viewDetailsAndEmailBtn order-onboarded\">View details</button>\r\n </a> \r\n </ng-container>\r\n \r\n <a href=\"{{ ROW_DATA.descriptionEmailUrl }}\" target=\"_blank\" *ngIf=\"ROW_DATA.descriptionEmailUrl\">\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 \r\n </div>\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 [width]=\"noDataWidth\" [marginTop]=\"marginTop\" *ngIf=\"(isNoDataToDisplaySubject$ | async)\"> </anna-core-no-data-lib>\r\n</div>\r\n\r\n<!-- Checkbox template -->\r\n<ng-template #filterTooltip>\r\n \r\n <div class=\"radio-container\" *ngIf=\"showFilterTooltipTabs\">\r\n <div [ngClass]=\"{'full-width': filterTabObjects.length == 1}\" *ngFor=\"let data of filterTabObjects\">\r\n <p class=\"filter-tab\" [title]=\"data.label\" (click)=\"populateTooltipDataBasedOnSelectedRadio(data)\" [ngClass]=\"{'active': annaFilterService.selectedRadio == data.key}\" *ngIf=\"filterTabObjects.length > 0\">{{ data.label }}</p>\r\n </div>\r\n </div>\r\n \r\n <div class=\"checkbox-sort\" *ngIf=\"showSortComponent\">\r\n <anna-core-sort-lib [ngClass]=\"{'no-bottom-border': !showFilterComponent}\"\r\n (sortOptionClicked)=\"storeSortTypeInTempVariable($event)\" [sortObjectKey]=\"annaFilterService.selectedRadio\"></anna-core-sort-lib>\r\n </div>\r\n \r\n <ng-container *ngIf=\"showFilterComponent\">\r\n <p class=\"d-flex justify-content-between\">\r\n <button class=\"filter-text-btn\" [disabled]=\"disableClearAll\" (click)=\"unCheckAllCheckbox()\">Clear all</button>\r\n <button class=\"filter-text-btn\" [disabled]=\"disableSelectAll\" (click)=\"selectAllCheckbox()\">Select all</button>\r\n </p>\r\n <p class=\"search-box\">\r\n <i class=\"mi mdi-search search-icon search-icon-position\"></i>\r\n <input\r\n type=\"text\"\r\n placeholder=\"Search\"\r\n class=\"search-input\"\r\n style=\"margin-left: 2px; border: none; padding: 0px\"\r\n [(ngModel)]=\"searchItem\"\r\n (ngModelChange)=\"searchForTheItem($event)\"\r\n />\r\n <i class=\"mdi mdi-close search-bar-close\" [ngClass]=\"{'disable-close-icon': (!searchItem || searchItem.length == 0) }\"\r\n (click)=\"clearSearchedItem()\"></i>\r\n\r\n </p>\r\n <div style=\"position:relative\">\r\n <!-- Track By func -->\r\n <cdk-virtual-scroll-viewport itemSize=\"18\" [style.height.px]=\"heightOfCheckboxTooltipFilter\" class=\"dropdown-data-container\">\r\n <p *cdkVirtualFor=\"let option of tooltipOptions\" class=\"input example-item\" (click)=\"selectUnselectCheckbox(option)\">\r\n <span *ngIf=\"option.isSelected\" role=\"button\" class=\"mi mdi-check-box check-box\"></span>\r\n <span *ngIf=\"!option.isSelected\" role=\"button\" class=\"mi mdi-check-box-outline-blank check-box unchecked\"></span>\r\n <span class=\"data\" title=\"{{ option.value }}\" [innerHTML]=\"option.label\"></span>\r\n </p>\r\n </cdk-virtual-scroll-viewport>\r\n <div style=\"position: absolute; top:0; left:0; width:100%; height:100%; pointer-events:none\"></div>\r\n </div>\r\n </ng-container>\r\n\r\n <div class=\"buttons-container\">\r\n <button class=\"button\" (click)=\"closeCheckboxFilter()\">Cancel</button>\r\n <button\r\n class=\"button\"\r\n [ngClass]=\"{ disabled: disableCheckboxApply }\"\r\n (click)=\"applyFilters()\"\r\n [disabled]=\"disableCheckboxApply\"\r\n >\r\n Apply\r\n <span *ngIf=\"showFilterComponent\">({{ selectedCheckboxOptionsCount == tooltipOptions.length && tooltipOptions.length != 0 && !searchItem? 'All': selectedCheckboxOptionsCount }})</span>\r\n </button>\r\n </div>\r\n</ng-template>\r\n\r\n<!-- Slider template -->\r\n<ng-template #sliderToolTip>\r\n \r\n <div class=\"radio-container\" *ngIf=\"showFilterTooltipTabs\">\r\n <div *ngFor=\"let data of filterTabObjects\">\r\n <p class=\"filter-tab\" [title]=\"data.label\" (click)=\"populateTooltipDataBasedOnSelectedRadio(data)\" [ngClass]=\"{'active': annaFilterService.selectedRadio == data.key}\" *ngIf=\"filterTabObjects.length > 0\">{{ data.label }}</p> \r\n </div>\r\n </div>\r\n <!-- <button class=\"column-clear-all align-center\" [disabled]=\"disableColumnClearAllBtn\" (click)=\"clearColumnFilter()\">\r\n Clear filter\r\n </button> -->\r\n \r\n <anna-core-sort-lib *ngIf=\"showSortComponent\" [ngClass]=\"{'no-bottom-border': !showFilterComponent}\"\r\n (sortOptionClicked)=\"storeSortTypeInTempVariable($event)\" [sortObjectKey]=\"annaFilterService.selectedRadio\"></anna-core-sort-lib>\r\n \r\n <ng-container *ngIf=\"showFilterComponent\">\r\n <button class=\"column-clear-all\" [disabled]=\"disableColumnClearAllBtn\" (click)=\"clearColumnFilter()\">Clear filter</button>\r\n <section class=\"min-maxContainer\">\r\n <input\r\n type=\"number\"\r\n class=\"slider-text\"\r\n step=\"{{ sliderFilterTextBoxStep }}\"\r\n [(ngModel)]=\"sliderMinValue\"\r\n (ngModelChange)=\"minValueChanged($event)\"\r\n [ngClass]=\"{'red-border': showSliderMinValueError}\"\r\n placeholder=\"Min\"\r\n />\r\n <span>To</span>\r\n <input\r\n type=\"number\"\r\n class=\"slider-text\"\r\n step=\"{{ sliderFilterTextBoxStep }}\"\r\n [(ngModel)]=\"sliderMaxValue\"\r\n (ngModelChange)=\"maxValueChanged($event)\"\r\n [ngClass]=\"{'red-border': showSliderMaxValueError}\"\r\n placeholder=\"Max\"\r\n />\r\n </section>\r\n <div class=\"sidebar-slider\">\r\n <ngx-slider\r\n class=\"filter-slider\"\r\n [value]=\"sliderMinValue\"\r\n [highValue]=\"sliderMaxValue\"\r\n [options]=\"options\"\r\n ></ngx-slider>\r\n </div>\r\n </ng-container>\r\n \r\n <div class=\"buttons-container\">\r\n <button class=\"button\" (click)=\"cancelSliderFilter()\">Cancel</button>\r\n <button\r\n class=\"button\"\r\n [ngClass]=\"{ disabled: disableSliderApplyButton }\"\r\n (click)=\"applySliderFilter()\"\r\n [disabled]=\"disableSliderApplyButton\"\r\n >\r\n Apply\r\n </button>\r\n </div>\r\n</ng-template>\r\n\r\n<!-- Date Picker Template -->\r\n<ng-template #datePickerTooltip>\r\n <div class=\"radio-container\" *ngIf=\"showFilterTooltipTabs\">\r\n <div *ngFor=\"let data of filterTabObjects\">\r\n <p class=\"filter-tab\" [title]=\"data.label\" (click)=\"populateTooltipDataBasedOnSelectedRadio(data)\" [ngClass]=\"{'active': annaFilterService.selectedRadio == data.key}\" *ngIf=\"filterTabObjects.length > 0\">{{ data.label }}</p>\r\n </div>\r\n </div>\r\n\r\n <anna-core-sort-lib *ngIf=\"showSortComponent\" [ngClass]=\"{'no-bottom-border': !showFilterComponent}\"\r\n (sortOptionClicked)=\"storeSortTypeInTempVariable($event)\" [sortObjectKey]=\"annaFilterService.selectedRadio\"></anna-core-sort-lib>\r\n \r\n <ng-container *ngIf=\"showFilterComponent\">\r\n <div class=\"datepicker-container\">\r\n <button class=\"column-clear-all\" [disabled]=\"disableColumnClearAllBtn\" (click)=\"clearColumnFilter()\">\r\n Clear filter\r\n </button>\r\n <anna-core-calendar-filter-lib\r\n [minDate]=\"calendarMinEnabledDate\"\r\n [maxDate]=\"calendarMaxEnabledDate\"\r\n [selectedFromDate]=\"selectedMinDate\"\r\n [selectedToDate]=\"selectedMaxDate\"\r\n (selectedDate) = \"calendarDateChanged($event)\"\r\n [label]=\"selectedLabel\"\r\n >\r\n </anna-core-calendar-filter-lib>\r\n </div>\r\n </ng-container>\r\n\r\n <div class=\"buttons-container\">\r\n <button class=\"button\" (click)=\"cancelInDateFilter()\">Cancel</button>\r\n <button class=\"button\" (click)=\"applyDateFilter()\" [ngClass]=\"{ disabled: disableCalendarApplyBtn }\"\r\n [disabled]=\"disableCalendarApplyBtn\">Apply</button>\r\n </div>\r\n \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 \r\n <div class=\"radio-container\" *ngIf=\"showFilterTooltipTabs\">\r\n <div *ngFor=\"let data of filterTabObjects\">\r\n <p class=\"filter-tab\" [title]=\"data.label\" (click)=\"populateTooltipDataBasedOnSelectedRadio(data)\" [ngClass]=\"{'active': annaFilterService.selectedRadio == data.key}\" *ngIf=\"filterTabObjects.length > 0\">{{ data.label }}</p>\r\n </div>\r\n </div>\r\n\r\n <anna-core-sort-lib *ngIf=\"showSortComponent\" [ngClass]=\"{'no-bottom-border': !showFilterComponent}\"\r\n (sortOptionClicked)=\"storeSortTypeInTempVariable($event)\" [sortObjectKey]=\"annaFilterService.selectedRadio\"></anna-core-sort-lib>\r\n \r\n <ng-container *ngIf=\"showFilterComponent\">\r\n <button class=\"column-clear-all\" [disabled]=\"disableColumnClearAllBtn\" (click)=\"clearColumnFilter()\">Clear filter</button>\r\n <div\r\n class=\"time-filter-checkboxes\"\r\n *ngIf=\"gtGeneralConfig.component == 'SPOTDETAILS' || gtGeneralConfig.component == 'EXCLUDEINVENTORYPOPUP' || gtGeneralConfig.component == 'RATING'\"\r\n >\r\n <!-- Multi time option checkbox -->\r\n <div class=\"d-flex align-items-center\" style=\"padding: 0.5rem 0 0.5rem 0.5rem\" *ngIf=\"showMultiTimeCheckbox\">\r\n <span\r\n *ngIf=\"multiTimeCheckboxChecked\"\r\n class=\"material-icons custom-column-checkbox-checked\"\r\n (click)=\"selectOrUnselectMultiTimeCheckbox()\"\r\n >\r\n check_box\r\n </span>\r\n <span\r\n *ngIf=\"!multiTimeCheckboxChecked\"\r\n class=\"material-icons custom-column-checkbox-unchecked\"\r\n (click)=\"selectOrUnselectMultiTimeCheckbox()\"\r\n >\r\n check_box_outline_blank\r\n </span>\r\n <p style=\"margin-left: 2px\">Include Multi</p>\r\n </div>\r\n <!-- Zero time option checkbox -->\r\n <div class=\"d-flex align-items-center\" style=\"padding: 0.5rem 0 0.5rem 0.5rem\" *ngIf=\"showZeroTimeCheckbox\">\r\n <span\r\n *ngIf=\"zeroTimeCheckboxChecked\"\r\n class=\"material-icons custom-column-checkbox-checked\"\r\n (click)=\"selectOrUnselectZeroTimeCheckbox()\"\r\n >\r\n check_box\r\n </span>\r\n <span\r\n *ngIf=\"!zeroTimeCheckboxChecked\"\r\n class=\"material-icons custom-column-checkbox-unchecked\"\r\n (click)=\"selectOrUnselectZeroTimeCheckbox()\"\r\n >\r\n check_box_outline_blank\r\n </span>\r\n <p style=\"margin-left: 2px\">Include Zero</p>\r\n </div>\r\n <!-- Enter time range option checkbox -->\r\n <div class=\"d-flex align-items-center\" style=\"padding: 0.5rem 0 0.5rem 0.5rem\" *ngIf=\"showEnterTimeCheckbox\">\r\n <span\r\n *ngIf=\"enterTimeCheckboxChecked\"\r\n class=\"material-icons custom-column-checkbox-checked\"\r\n (click)=\"selectOrUnselectEnterTimeCheckbox()\"\r\n >\r\n check_box\r\n </span>\r\n <span\r\n *ngIf=\"!enterTimeCheckboxChecked\"\r\n class=\"material-icons custom-column-checkbox-unchecked\"\r\n (click)=\"selectOrUnselectEnterTimeCheckbox()\"\r\n >\r\n check_box_outline_blank\r\n </span>\r\n <p style=\"margin-left: 2px\">Enter time range</p>\r\n </div>\r\n </div>\r\n <div class=\"time-label-container\">\r\n <label>From</label>\r\n </div>\r\n <div class=\"time-container\">\r\n <input class=\"form-control numberInput\" [ngClass]=\"{'error-border': startTimeHourErr}\" [(ngModel)]=\"selectedFromTime[0]\" type=\"text\" (ngModelChange)=\"startTimeHourChange($event)\" />\r\n <div class=\"arrow-container\">\r\n <i class=\"mdi mdi-triangle upward\" (click)=\"changeStartTimeHour(true)\"></i>\r\n <i class=\"mdi mdi-triangle downward\" (click)=\"changeStartTimeHour(false)\"></i>\r\n </div>\r\n <span class=\"dot\">:</span>\r\n <input class=\"form-control numberInput\" [ngClass]=\"{'error-border': startTimeMinErr}\" [(ngModel)]=\"selectedFromTime[1]\" type=\"text\" (ngModelChange)=\"startTimeMinChange($event)\"/>\r\n <div class=\"arrow-container\">\r\n <i class=\"mdi mdi-triangle upward\" (click)=\"changeStartTimeMinute(true)\"></i>\r\n <i class=\"mdi mdi-triangle downward\" (click)=\"changeStartTimeMinute(false)\"></i>\r\n </div>\r\n <div>\r\n <mat-button-toggle-group [(ngModel)]=\"selectedFromTime[2]\" (ngModelChange)=\"disableTimeFilterApplyButton()\">\r\n <mat-button-toggle value=\"AM\">\r\n <span>AM</span>\r\n </mat-button-toggle>\r\n <mat-button-toggle value=\"PM\">\r\n <span>PM</span>\r\n </mat-button-toggle>\r\n </mat-button-toggle-group>\r\n </div>\r\n </div>\r\n\r\n <div class=\"time-label-container\">\r\n <label>To</label>\r\n </div>\r\n <div class=\"time-container\">\r\n <input class=\"form-control numberInput\" [(ngModel)]=\"selectedToTime[0]\" [ngClass]=\"{'error-border': endTimeHourErr}\" (ngModelChange)=\"endTimeHourChange($event)\" type=\"text\" />\r\n <div class=\"arrow-container\">\r\n <i class=\"mdi mdi-triangle upward\" (click)=\"changeEndTimeHour(true)\"></i>\r\n <i class=\"mdi mdi-triangle downward\" (click)=\"changeEndTimeHour(false)\"></i>\r\n </div>\r\n <span class=\"dot\">:</span>\r\n <input class=\"form-control numberInput\" [ngClass]=\"{'error-border': endTimeMinErr}\" [(ngModel)]=\"selectedToTime[1]\" (ngModelChange)=\"endTimeMinChange($event)\" type=\"text\" />\r\n <div class=\"arrow-container\">\r\n <i class=\"mdi mdi-triangle upward\" (click)=\"changeEndTimeMinute(true)\"></i>\r\n <i class=\"mdi mdi-triangle downward\" (click)=\"changeEndTimeMinute(false)\"></i>\r\n </div>\r\n <div>\r\n <mat-button-toggle-group [(ngModel)]=\"selectedToTime[2]\" (ngModelChange)=\"disableTimeFilterApplyButton()\">\r\n <mat-button-toggle value=\"AM\">\r\n <span>AM</span>\r\n </mat-button-toggle>\r\n <mat-button-toggle value=\"PM\">\r\n <span>PM</span>\r\n </mat-button-toggle>\r\n </mat-button-toggle-group>\r\n </div>\r\n </div>\r\n </ng-container>\r\n\r\n <div class=\"buttons-container\">\r\n <button class=\"button\" (click)=\"closeTimeFilter()\">Cancel</button>\r\n <button\r\n class=\"button\"\r\n [ngClass]=\"{ disabled: disableTimeFilterApplyBtn }\"\r\n (click)=\"applyTimeFilters()\"\r\n [disabled]=\"disableTimeFilterApplyBtn\"\r\n >\r\n Apply\r\n </button>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #columnInfoTooltip>\r\n <p style=\"padding: 0.5rem; color: black;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\" >This consists of equivalized spots and un-equivalized Paid Programs & un-equivalized Non-spots.</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>{{ data.InventoryCode }}</span>\r\n </td>\r\n <td>\r\n <span>{{ 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 style=\"color: #000\">Seller group not available for this inventory code</span>\r\n </ng-container>\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\">The difference between posted and booked average rating is {{isDifferenceLessThan25Percent ? 'less' : 'more'}} than 25%.</p>\r\n</ng-template>\r\n\r\n<ng-template #postedImpDifference>\r\n <p class=\"difference-text\">The difference between posted and booked average impression is {{isDifferenceLessThan25Percent ? 'less' : 'more'}} than 25%.</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 #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=\"user-action-tooltip-container\">\r\n {{ \r\n userActionTableMetaData.status === 'Activation Email Sent' ? \r\n 'Email sent at: ': \r\n 'Last email resent at: ' \r\n }} \r\n <b> {{ userActionTableMetaData.lastEmailResentAt }} </b> | \r\n\r\n Password valid until: \r\n <b> {{ userActionTableMetaData.passwordValidity }} </b>\r\n </div>\r\n</ng-template>\r\n", styles: [".sort-btn{background:white;border:none;border-right:1px solid #1b88ff;text-decoration:underline;font-family:Roboto;font-size:14px;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:nowrap;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{margin:5px 0 2px!important;width:100%!important}::ng-deep span.ngx-slider-bubble.ngx-slider-model-value{display:block!important;padding:2px!important;box-shadow:#00000059 0 3px 8px!important;height:20px!important}::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}::ng-deep .ngx-slider-pointer:after{display:none!important}::ng-deep .ngx-slider-pointer:focus{outline:none!important}::ng-deep span.ngx-slider-bar{background:#ededed!important;height:3px!important}::ng-deep .filter-slider span.ngx-slider-bar.ngx-slider-selection{background:#bdbdbd!important;height:3px!important}::ng-deep .sidebar-slider{margin-bottom:35px!important;margin-left:.3125rem;margin-right:.3125rem}::ng-deep .ngx-slider-span.ngx-slider-bubble.ngx-slider-model-high{right:0!important}::ng-deep .ngx-slider-span.ngx-slider-bubble.ngx-slider-model-ceil{right:0!important}::ng-deep .ngx-slider.animate{top:10px!important;bottom:0!important;padding:1px 0!important;font-size:12px!important}::ng-deep .ngx-slider-bubble{top:10px!important;bottom:0!important;padding:1px 0!important;font-size:12px!important}::ng-deep .ngx-slider-bar{background:rgba(0,0,0,.26)!important;height:3px!important}::ng-deep .ngx-slider-bar.ngx-slider-selection{background:#42a5f5!important;height:3px!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]{-webkit-appearance:none;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}.buttons-container{display:flex;margin:0px auto .4375rem;justify-content:center}.buttons-container button:last-of-type{background-color:#268bff;color:#fff}.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 0 .188rem .5rem}.search-icon{margin:0 4px 0 0;font-size:1.125rem;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:.875rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:1.86;letter-spacing:\"\";color:#4a4a4a}.search-input{margin:1px 0 1px 4px;font-family:Roboto;font-size:.875rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:normal;color:#c8c8c8}.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:lightgray}section.min-maxContainer{display:flex;justify-content:center;margin-bottom:-.125rem;margin-top:.5rem;width:100%}section.min-maxContainer input{width:30%;height:1.875rem;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}.time-container{width:100%;display:flex;padding:.125rem .625rem 0}.time-container input.form-control:disabled{background-color:#fff;width:2.813rem}.time-container .dot{color:#cbcbcb;position:relative;left:-7px;font-size:17px}.time-container div.arrow-container{flex-direction:column;display:flex;padding-top:.375rem;padding-left:1px;margin-right:1.1875rem}.time-container div.arrow-container i{color:#000;cursor:pointer;font-size:.5625rem}.time-container div.arrow-container i.downward{transform:rotate(180deg)}.mdi-filter{cursor:pointer}.time-label-container{display:flex;justify-content:flex-start}.time-label-container label{margin-bottom:0;color:#4a4a4a;margin-top:.625rem;margin-left:.625rem;font-weight:700}.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:14px;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}.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:14px;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-overflow:ellipsis}p.filter-tab.active{color:#fff;background-color:#1b88ff}button.filter-text-btn{background:white;text-decoration:underline;font-family:Roboto;font-size:14px;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:263px!important;overflow-y:initial!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}::ng-deep .non-edit-slider-tooltip .tooltip-inner{width:238px!important}::ng-deep .non-edit-time-tooltip .tooltip-inner{width:250px!important}::ng-deep .no-bottom-border p.sort-container{border-bottom:none!important}.upper-label{font-family:Roboto;font-size:.6875rem;font-weight:500;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#4a4a4a!important;margin-bottom:0!important}:host ::ng-deep .gt{table-layout:fixed;margin-bottom:0;width:100%}:host ::ng-deep .gt th,:host ::ng-deep .gt td{padding:2px 8px;line-height:normal}:host ::ng-deep .gt thead tr th .upper-label{font-family:Roboto;font-size:.6875rem;font-weight:500;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#4a4a4a;margin-bottom:0}:host ::ng-deep .gt thead tr th .lower-label{font-family:Roboto;font-size:.6875rem;font-weight:500;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:.3px;color:#a7a7a7;margin-bottom:0}:host ::ng-deep .gt thead tr th{background-color:#ededed;position:sticky;position:-webkit-sticky;top:0;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}:host ::ng-deep .gt thead tr th br{display:block;content:\"\";margin-top:-8px}:host ::ng-deep .gt thead tr th div.row{display:flex;flex-wrap:nowrap;justify-content:space-between;align-items:center}:host ::ng-deep .gt thead tr th div.sort-filter-container{display:flex;flex-wrap:nowrap;align-items:center}:host ::ng-deep .gt thead tr th:first-of-type{box-shadow:inset 0 1px #d4d4d4,inset 0 -1px #d4d4d4,inset -1px 0 #d4d4d4,inset 1px 0 #d4d4d4}:host ::ng-deep .gt tbody tr td:first-of-type{box-shadow:inset 1px 0 #d4d4d4,inset -1px 0 #d4d4d4,inset 0 -1px #d4d4d4;border:none}:host ::ng-deep .gt tbody tr td:nth-of-type(n + 2){box-shadow:inset -1px 0 #d4d4d4,inset 0 -1px #d4d4d4;border:none}:host ::ng-deep .gt tbody tr td .upper-label{font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:0px;color:#000;display:inline-block;width:90%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host ::ng-deep .gt tbody tr td .lower-label{font-family:Roboto;font-size:.75rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:normal;letter-spacing:0px;color:#a7a7a7;display:inline-block;width:90%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host ::ng-deep .gt tbody tr br{display:block;content:\"\";margin-top:-8px}:host ::ng-deep .gt tbody tr:nth-of-type(1) td{border-top:none!important}: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}.table-container::-webkit-scrollbar-track{border:1px solid rgba(0,0,0,.1)!important}.table-container::-webkit-scrollbar{width:5px;height:5px}.table-container::-webkit-scrollbar-thumb{border-radius:4px;background-color:#0006!important;border:1px solid rgba(0,0,0,.2)}.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}.redcolor-cell-border{outline:1px solid #ff5353!important;outline-offset:-1px!important}#no-filter-space{width:.875rem}::ng-deep .mat-button-toggle-appearance-standard .mat-button-toggle-label-content{line-height:1.875rem!important;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}.radio-button-dimension,::ng-deep .markForCredit .mat-radio-inner-circle,::ng-deep .markForCredit .mat-radio-outer-circle,::ng-deep .mark-for-credit .mat-radio-inner-circle,::ng-deep .mark-for-credit .mat-radio-outer-circle,::ng-deep .markForMakeGood .mat-radio-inner-circle,::ng-deep .markForMakeGood .mat-radio-outer-circle,::ng-deep .noAction .mat-radio-inner-circle,::ng-deep .noAction .mat-radio-outer-circle,::ng-deep .credit .mat-radio-inner-circle,::ng-deep .credit .mat-radio-outer-circle,::ng-deep .approve .mat-radio-inner-circle,::ng-deep .approve .mat-radio-outer-circle,::ng-deep .reject .mat-radio-inner-circle,::ng-deep .reject .mat-radio-outer-circle,::ng-deep .resubmit .mat-radio-inner-circle,::ng-deep .resubmit .mat-radio-outer-circle,::ng-deep .rejectCreditRequest .mat-radio-inner-circle,::ng-deep .rejectCreditRequest .mat-radio-outer-circle{height:18px!important;width:18px!important}::ng-deep .margin-bottom-zero .mat-radio-label{margin-bottom:0}::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:white}::ng-deep tr.gray-background-row{background:rgba(233,233,233,.5)}.remarks-tooltip,.mdi-information,.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;margin-left:2px;position:relative;left:-2px}::ng-deep .rating-info-tooltip .tooltip-inner{max-width:800px!important}.spots-info-icon{color:#268bff;cursor:pointer;margin-left:2px;margin-top:1px}::ng-deep .spot-info-tooltip .tooltip-inner{left:60px;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 .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:0px;z-index:1}table.seller-hierarchy-table tr th:first-of-type,table.seller-hierarchy-table tr td:first-of-type{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{max-height:8.75rem;overflow:auto}section.hierarchy-table-container::-webkit-scrollbar-track{border:1px solid rgba(0,0,0,.1)!important;margin-top:1.5rem}section.hierarchy-table-container::-webkit-scrollbar{width:5px;height:5px}section.hierarchy-table-container::-webkit-scrollbar-thumb{border-radius:4px;background-color:#0006!important;border:1px solid rgba(0,0,0,.2)}.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;padding:10px;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}.user-action-tooltip-container{text-align:left!important;padding:12px 4px;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{left:3px;top:1px}::ng-deep .team-user-tooltip .tooltip-inner{width:-moz-fit-content!important;width:fit-content!important;max-width:520px!important;border-radius:2px;padding:0 4px!important}\n"] }]
|
|
3339
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: AnnaSortService }, { type: AnnaDateTimeFormatService }, { type: AnnaFilterService }]; }, propDecorators: { showSkeletonLoading: [{
|
|
3394
3340
|
type: Input
|
|
3395
3341
|
}], tableHeaders: [{
|
|
3396
3342
|
type: Input
|
|
@@ -3422,6 +3368,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImpor
|
|
|
3422
3368
|
type: Input
|
|
3423
3369
|
}], starredInProgress: [{
|
|
3424
3370
|
type: Input
|
|
3371
|
+
}], clickableRow: [{
|
|
3372
|
+
type: Input
|
|
3425
3373
|
}], toggleCheckbox: [{
|
|
3426
3374
|
type: Output
|
|
3427
3375
|
}], toggleRowCheckbox: [{
|
|
@@ -3452,11 +3400,121 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImpor
|
|
|
3452
3400
|
type: Output
|
|
3453
3401
|
}], downloadSpotDetails: [{
|
|
3454
3402
|
type: Output
|
|
3403
|
+
}], clickableDataClicked: [{
|
|
3404
|
+
type: Output
|
|
3455
3405
|
}], viewChildTableHeaders: [{
|
|
3456
3406
|
type: ViewChildren,
|
|
3457
3407
|
args: ['tableHeader']
|
|
3458
3408
|
}] } });
|
|
3459
3409
|
|
|
3410
|
+
// Angular import statements
|
|
3411
|
+
class AnnaGtHelperService {
|
|
3412
|
+
constructor(annaFilterService, router, route, annaSortService) {
|
|
3413
|
+
this.annaFilterService = annaFilterService;
|
|
3414
|
+
this.router = router;
|
|
3415
|
+
this.route = route;
|
|
3416
|
+
this.annaSortService = annaSortService;
|
|
3417
|
+
this.virtualScrollSubject = new Subject();
|
|
3418
|
+
console.log(this.annaFilterService);
|
|
3419
|
+
console.log(this.annaSortService);
|
|
3420
|
+
}
|
|
3421
|
+
calculateNumberOfSkeletonColumnsForTable(tableHeaders) {
|
|
3422
|
+
let numberOfSkeletonColumns = [];
|
|
3423
|
+
var headersInEachColumn = 0;
|
|
3424
|
+
tableHeaders.forEach((column) => {
|
|
3425
|
+
if (column.visible) {
|
|
3426
|
+
headersInEachColumn = 0;
|
|
3427
|
+
column.headerInfo.forEach(() => {
|
|
3428
|
+
headersInEachColumn++;
|
|
3429
|
+
});
|
|
3430
|
+
numberOfSkeletonColumns.push(Array(headersInEachColumn).fill(0));
|
|
3431
|
+
}
|
|
3432
|
+
});
|
|
3433
|
+
return numberOfSkeletonColumns;
|
|
3434
|
+
}
|
|
3435
|
+
initColumnFilterAndSorting() {
|
|
3436
|
+
this.annaFilterService.tooltipSelectedMap = new Map();
|
|
3437
|
+
this.annaFilterService.selectedRadio = null;
|
|
3438
|
+
this.annaFilterService.appliedFiltersArray = [];
|
|
3439
|
+
this.annaFilterService.initialValueMap = new Map();
|
|
3440
|
+
this.annaSortService.columnSortState = new Map();
|
|
3441
|
+
this.annaSortService.noSortingAppliedData = [];
|
|
3442
|
+
}
|
|
3443
|
+
enableOrDisableClearAllBtn() {
|
|
3444
|
+
let isFilterApplied = this.annaFilterService.appliedFiltersArray.length > 0;
|
|
3445
|
+
let isSortApplied = false;
|
|
3446
|
+
for (let val of this.annaSortService.columnSortState.values()) {
|
|
3447
|
+
if (val == "ASC" || val == "DESC") {
|
|
3448
|
+
isSortApplied = true;
|
|
3449
|
+
}
|
|
3450
|
+
}
|
|
3451
|
+
return isFilterApplied || isSortApplied ? false : true;
|
|
3452
|
+
}
|
|
3453
|
+
updateFiltersInURL() {
|
|
3454
|
+
let latestQueryParams = this.prepareQueryParamsOnFilter();
|
|
3455
|
+
this.router.navigate([], {
|
|
3456
|
+
queryParams: { filters: JSON.stringify(latestQueryParams) },
|
|
3457
|
+
relativeTo: this.route.parent,
|
|
3458
|
+
queryParamsHandling: 'merge'
|
|
3459
|
+
});
|
|
3460
|
+
}
|
|
3461
|
+
prepareQueryParamsOnFilter() {
|
|
3462
|
+
let query = {
|
|
3463
|
+
appliedFilters: this.annaFilterService.appliedFiltersArray,
|
|
3464
|
+
selectedFilterData: JSON.stringify(Array.from(this.annaFilterService.tooltipSelectedMap)),
|
|
3465
|
+
sortState: JSON.stringify(Array.from(this.annaSortService.columnSortState))
|
|
3466
|
+
};
|
|
3467
|
+
return query;
|
|
3468
|
+
}
|
|
3469
|
+
initTableFilters(clonedTableData) {
|
|
3470
|
+
this.annaFilterService.tooltipSelectedMap = new Map();
|
|
3471
|
+
this.annaFilterService.selectedRadio = null;
|
|
3472
|
+
this.annaFilterService.appliedFiltersArray = [];
|
|
3473
|
+
for (let [key, _value] of this.annaSortService.columnSortState.entries()) {
|
|
3474
|
+
this.annaSortService.columnSortState.set(key, "DEFAULT");
|
|
3475
|
+
}
|
|
3476
|
+
this.annaSortService.noSortingAppliedData = cloneDeep(clonedTableData);
|
|
3477
|
+
this.annaFilterService.updateStateOfAllTheKeys(this.annaSortService.columnSortState);
|
|
3478
|
+
}
|
|
3479
|
+
initFilters() {
|
|
3480
|
+
this.annaFilterService.tooltipSelectedMap = new Map();
|
|
3481
|
+
this.annaFilterService.appliedFiltersArray = [];
|
|
3482
|
+
}
|
|
3483
|
+
setDataAsPerPersistingFilter(isPersistingFilter, clonedTable, filters) {
|
|
3484
|
+
let usersTable;
|
|
3485
|
+
if (isPersistingFilter) {
|
|
3486
|
+
usersTable = this.annaFilterService.filterData(clonedTable, "");
|
|
3487
|
+
this.annaSortService.noSortingAppliedData = cloneDeep(usersTable);
|
|
3488
|
+
this.annaSortService.columnSortState = new Map(JSON.parse(filters.sortState));
|
|
3489
|
+
this.annaFilterService.updateStateOfAllTheKeys(this.annaSortService.columnSortState);
|
|
3490
|
+
usersTable = this.callSort(usersTable);
|
|
3491
|
+
}
|
|
3492
|
+
else {
|
|
3493
|
+
usersTable = clonedTable;
|
|
3494
|
+
}
|
|
3495
|
+
return usersTable;
|
|
3496
|
+
}
|
|
3497
|
+
callSort(usersTable) {
|
|
3498
|
+
for (let [key, value] of this.annaSortService.columnSortState) {
|
|
3499
|
+
if (value == "ASC") {
|
|
3500
|
+
usersTable = this.annaSortService.sortDataForComponentOtherThanLurAndCsrPage(true, usersTable, key);
|
|
3501
|
+
}
|
|
3502
|
+
else if (value == "DESC") {
|
|
3503
|
+
usersTable = this.annaSortService.sortDataForComponentOtherThanLurAndCsrPage(false, usersTable, key);
|
|
3504
|
+
}
|
|
3505
|
+
}
|
|
3506
|
+
return usersTable;
|
|
3507
|
+
}
|
|
3508
|
+
}
|
|
3509
|
+
AnnaGtHelperService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaGtHelperService, deps: [{ token: AnnaFilterService }, { token: i2$1.Router }, { token: i2$1.ActivatedRoute }, { token: AnnaSortService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
3510
|
+
AnnaGtHelperService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaGtHelperService, providedIn: "root" });
|
|
3511
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaGtHelperService, decorators: [{
|
|
3512
|
+
type: Injectable,
|
|
3513
|
+
args: [{
|
|
3514
|
+
providedIn: "root",
|
|
3515
|
+
}]
|
|
3516
|
+
}], ctorParameters: function () { return [{ type: AnnaFilterService }, { type: i2$1.Router }, { type: i2$1.ActivatedRoute }, { type: AnnaSortService }]; } });
|
|
3517
|
+
|
|
3460
3518
|
/**
|
|
3461
3519
|
* @license
|
|
3462
3520
|
* Copyright Google LLC All Rights Reserved.
|
|
@@ -3761,7 +3819,7 @@ class AnnaTableVirtualScrollViewportComponent extends CdkScrollable {
|
|
|
3761
3819
|
this._totalContentWidth = "";
|
|
3762
3820
|
}
|
|
3763
3821
|
}
|
|
3764
|
-
AnnaTableVirtualScrollViewportComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaTableVirtualScrollViewportComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: VIRTUAL_SCROLL_STRATEGY, optional: true }, { token: i1$1.Directionality, optional: true }, { token: i2.ScrollDispatcher }, { token: i2.ViewportRuler }, { token:
|
|
3822
|
+
AnnaTableVirtualScrollViewportComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaTableVirtualScrollViewportComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }, { token: VIRTUAL_SCROLL_STRATEGY, optional: true }, { token: i1$1.Directionality, optional: true }, { token: i2.ScrollDispatcher }, { token: i2.ViewportRuler }, { token: AnnaGtHelperService }], target: i0.ɵɵFactoryTarget.Component });
|
|
3765
3823
|
AnnaTableVirtualScrollViewportComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: AnnaTableVirtualScrollViewportComponent, selector: "anna-table-virtual-scroll-viewport", inputs: { orientation: "orientation" }, outputs: { scrolledIndexChange: "scrolledIndexChange" }, host: { properties: { "class.anna-table-virtual-scroll-orientation-horizontal": "orientation === \"horizontal\"", "class.anna-table-virtual-scroll-orientation-vertical": "orientation !== \"horizontal\"" }, classAttribute: "anna-table-virtual-scroll-viewport" }, providers: [
|
|
3766
3824
|
{
|
|
3767
3825
|
provide: CdkScrollable,
|
|
@@ -3795,7 +3853,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImpor
|
|
|
3795
3853
|
args: [VIRTUAL_SCROLL_STRATEGY]
|
|
3796
3854
|
}] }, { type: i1$1.Directionality, decorators: [{
|
|
3797
3855
|
type: Optional
|
|
3798
|
-
}] }, { type: i2.ScrollDispatcher }, { type: i2.ViewportRuler }, { type:
|
|
3856
|
+
}] }, { type: i2.ScrollDispatcher }, { type: i2.ViewportRuler }, { type: AnnaGtHelperService }]; }, propDecorators: { orientation: [{
|
|
3799
3857
|
type: Input
|
|
3800
3858
|
}], scrolledIndexChange: [{
|
|
3801
3859
|
type: Output
|
|
@@ -4134,7 +4192,7 @@ class AnnaVirtualTableDirective {
|
|
|
4134
4192
|
return headerHeight + footerHeight + bodyHeight;
|
|
4135
4193
|
}
|
|
4136
4194
|
}
|
|
4137
|
-
AnnaVirtualTableDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaVirtualTableDirective, deps: [{ token: i0.ElementRef }, { token: i2.CdkVirtualScrollViewport }, { token: i2$
|
|
4195
|
+
AnnaVirtualTableDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaVirtualTableDirective, deps: [{ token: i0.ElementRef }, { token: i2.CdkVirtualScrollViewport }, { token: i2$2.CdkTable }, { token: i0.NgZone }, { token: _COALESCED_STYLE_SCHEDULER }], target: i0.ɵɵFactoryTarget.Directive });
|
|
4138
4196
|
AnnaVirtualTableDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.7", type: AnnaVirtualTableDirective, selector: "[mat-table][appVirtualDataSource], mat-table[appVirtualDataSource]", inputs: { dataSource: ["appVirtualDataSource", "dataSource"] }, providers: [{ provide: STICKY_POSITIONING_LISTENER, useExisting: AnnaVirtualTableDirective }], queries: [{ propertyName: "headerRowDefs", predicate: CdkHeaderRowDef }], ngImport: i0 });
|
|
4139
4197
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaVirtualTableDirective, decorators: [{
|
|
4140
4198
|
type: Directive,
|
|
@@ -4142,7 +4200,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImpor
|
|
|
4142
4200
|
selector: '[mat-table][appVirtualDataSource], mat-table[appVirtualDataSource]',
|
|
4143
4201
|
providers: [{ provide: STICKY_POSITIONING_LISTENER, useExisting: AnnaVirtualTableDirective }]
|
|
4144
4202
|
}]
|
|
4145
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i2.CdkVirtualScrollViewport }, { type: i2$
|
|
4203
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i2.CdkVirtualScrollViewport }, { type: i2$2.CdkTable }, { type: i0.NgZone }, { type: i2$2._CoalescedStyleScheduler, decorators: [{
|
|
4146
4204
|
type: Inject,
|
|
4147
4205
|
args: [_COALESCED_STYLE_SCHEDULER]
|
|
4148
4206
|
}] }]; }, propDecorators: { dataSource: [{
|
|
@@ -4189,286 +4247,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImpor
|
|
|
4189
4247
|
}]
|
|
4190
4248
|
}] });
|
|
4191
4249
|
|
|
4192
|
-
class DigitOnlyDirective {
|
|
4193
|
-
constructor(el) {
|
|
4194
|
-
this.el = el;
|
|
4195
|
-
this.hasDecimalPoint = false;
|
|
4196
|
-
this.hasNegativeSign = false;
|
|
4197
|
-
this.navigationKeys = [
|
|
4198
|
-
'Backspace',
|
|
4199
|
-
'Delete',
|
|
4200
|
-
'Tab',
|
|
4201
|
-
'Escape',
|
|
4202
|
-
'Enter',
|
|
4203
|
-
'Home',
|
|
4204
|
-
'End',
|
|
4205
|
-
'ArrowLeft',
|
|
4206
|
-
'ArrowRight',
|
|
4207
|
-
'Clear',
|
|
4208
|
-
'Copy',
|
|
4209
|
-
'Paste',
|
|
4210
|
-
];
|
|
4211
|
-
this.decimal = false;
|
|
4212
|
-
this.decimalSeparator = '.';
|
|
4213
|
-
this.allowNegatives = false;
|
|
4214
|
-
this.allowPaste = true;
|
|
4215
|
-
this.negativeSign = '-';
|
|
4216
|
-
this.min = -Infinity;
|
|
4217
|
-
this.max = Infinity;
|
|
4218
|
-
this.regex = null;
|
|
4219
|
-
this.inputElement = el.nativeElement;
|
|
4220
|
-
}
|
|
4221
|
-
ngOnChanges(changes) {
|
|
4222
|
-
if (changes['pattern']) {
|
|
4223
|
-
this.regex = this.pattern ? RegExp(this.pattern) : null;
|
|
4224
|
-
}
|
|
4225
|
-
if (changes['min']) {
|
|
4226
|
-
const maybeMin = Number(this.min);
|
|
4227
|
-
this.min = isNaN(maybeMin) ? -Infinity : maybeMin;
|
|
4228
|
-
}
|
|
4229
|
-
if (changes['max']) {
|
|
4230
|
-
const maybeMax = Number(this.max);
|
|
4231
|
-
this.max = isNaN(maybeMax) ? Infinity : maybeMax;
|
|
4232
|
-
}
|
|
4233
|
-
}
|
|
4234
|
-
onBeforeInput(e) {
|
|
4235
|
-
if (isNaN(Number(e.data))) {
|
|
4236
|
-
if (e.data === this.decimalSeparator ||
|
|
4237
|
-
(e.data === this.negativeSign && this.allowNegatives)) {
|
|
4238
|
-
return; // go on
|
|
4239
|
-
}
|
|
4240
|
-
e.preventDefault();
|
|
4241
|
-
e.stopPropagation();
|
|
4242
|
-
}
|
|
4243
|
-
}
|
|
4244
|
-
onKeyDown(e) {
|
|
4245
|
-
console.log("called");
|
|
4246
|
-
if (this.navigationKeys.indexOf(e.key) > -1 || // Allow: navigation keys: backspace, delete, arrows etc.
|
|
4247
|
-
((e.key === 'a' || e.code === 'KeyA') && e.ctrlKey === true) || // Allow: Ctrl+A
|
|
4248
|
-
((e.key === 'c' || e.code === 'KeyC') && e.ctrlKey === true) || // Allow: Ctrl+C
|
|
4249
|
-
((e.key === 'v' || e.code === 'KeyV') && e.ctrlKey === true) || // Allow: Ctrl+V
|
|
4250
|
-
((e.key === 'x' || e.code === 'KeyX') && e.ctrlKey === true) || // Allow: Ctrl+X
|
|
4251
|
-
((e.key === 'a' || e.code === 'KeyA') && e.metaKey === true) || // Allow: Cmd+A (Mac)
|
|
4252
|
-
((e.key === 'c' || e.code === 'KeyC') && e.metaKey === true) || // Allow: Cmd+C (Mac)
|
|
4253
|
-
((e.key === 'v' || e.code === 'KeyV') && e.metaKey === true) || // Allow: Cmd+V (Mac)
|
|
4254
|
-
((e.key === 'x' || e.code === 'KeyX') && e.metaKey === true) // Allow: Cmd+X (Mac)
|
|
4255
|
-
) {
|
|
4256
|
-
// let it happen, don't do anything
|
|
4257
|
-
return;
|
|
4258
|
-
}
|
|
4259
|
-
let newValue = '';
|
|
4260
|
-
if (this.decimal && e.key === this.decimalSeparator) {
|
|
4261
|
-
newValue = this.forecastValue(e.key);
|
|
4262
|
-
if (newValue.split(this.decimalSeparator).length > 2) {
|
|
4263
|
-
// has two or more decimal points
|
|
4264
|
-
e.preventDefault();
|
|
4265
|
-
return;
|
|
4266
|
-
}
|
|
4267
|
-
else {
|
|
4268
|
-
this.hasDecimalPoint = newValue.indexOf(this.decimalSeparator) > -1;
|
|
4269
|
-
return; // Allow: only one decimal point
|
|
4270
|
-
}
|
|
4271
|
-
}
|
|
4272
|
-
if (e.key === this.negativeSign && this.allowNegatives) {
|
|
4273
|
-
newValue = this.forecastValue(e.key);
|
|
4274
|
-
if (newValue.charAt(0) !== this.negativeSign ||
|
|
4275
|
-
newValue.split(this.negativeSign).length > 2) {
|
|
4276
|
-
e.preventDefault();
|
|
4277
|
-
return;
|
|
4278
|
-
}
|
|
4279
|
-
else {
|
|
4280
|
-
this.hasNegativeSign = newValue.split(this.negativeSign).length > -1;
|
|
4281
|
-
return;
|
|
4282
|
-
}
|
|
4283
|
-
}
|
|
4284
|
-
// Ensure that it is a number and stop the keypress
|
|
4285
|
-
if (e.key === ' ' || isNaN(Number(e.key))) {
|
|
4286
|
-
e.preventDefault();
|
|
4287
|
-
return;
|
|
4288
|
-
}
|
|
4289
|
-
newValue = newValue || this.forecastValue(e.key);
|
|
4290
|
-
// check the input pattern RegExp
|
|
4291
|
-
if (this.regex) {
|
|
4292
|
-
if (!this.regex.test(newValue)) {
|
|
4293
|
-
e.preventDefault();
|
|
4294
|
-
return;
|
|
4295
|
-
}
|
|
4296
|
-
}
|
|
4297
|
-
const newNumber = Number(newValue);
|
|
4298
|
-
if (newNumber > this.max || newNumber < this.min) {
|
|
4299
|
-
e.preventDefault();
|
|
4300
|
-
}
|
|
4301
|
-
}
|
|
4302
|
-
onPaste(event) {
|
|
4303
|
-
if (this.allowPaste === true) {
|
|
4304
|
-
let pastedInput = '';
|
|
4305
|
-
if (window['clipboardData']) {
|
|
4306
|
-
// Browser is IE
|
|
4307
|
-
pastedInput = window['clipboardData'].getData('text');
|
|
4308
|
-
}
|
|
4309
|
-
else if (event.clipboardData && event.clipboardData.getData) {
|
|
4310
|
-
// Other browsers
|
|
4311
|
-
pastedInput = event.clipboardData.getData('text/plain');
|
|
4312
|
-
}
|
|
4313
|
-
this.pasteData(pastedInput);
|
|
4314
|
-
event.preventDefault();
|
|
4315
|
-
}
|
|
4316
|
-
else {
|
|
4317
|
-
// this prevents the paste
|
|
4318
|
-
event.preventDefault();
|
|
4319
|
-
event.stopPropagation();
|
|
4320
|
-
}
|
|
4321
|
-
}
|
|
4322
|
-
onDrop(event) {
|
|
4323
|
-
const textData = event.dataTransfer?.getData('text') ?? '';
|
|
4324
|
-
this.inputElement.focus();
|
|
4325
|
-
this.pasteData(textData);
|
|
4326
|
-
event.preventDefault();
|
|
4327
|
-
}
|
|
4328
|
-
pasteData(pastedContent) {
|
|
4329
|
-
const sanitizedContent = this.sanitizeInput(pastedContent);
|
|
4330
|
-
if (sanitizedContent.includes(this.negativeSign) &&
|
|
4331
|
-
this.hasNegativeSign &&
|
|
4332
|
-
!this.getSelection().includes(this.negativeSign)) {
|
|
4333
|
-
return;
|
|
4334
|
-
}
|
|
4335
|
-
const pasted = document.execCommand('insertText', false, sanitizedContent);
|
|
4336
|
-
if (!pasted) {
|
|
4337
|
-
if (this.inputElement.setRangeText) {
|
|
4338
|
-
const { selectionStart: start, selectionEnd: end } = this.inputElement;
|
|
4339
|
-
this.inputElement.setRangeText(sanitizedContent, start ?? 0, end ?? 0, 'end');
|
|
4340
|
-
// Angular's Reactive Form relies on "input" event, but on Firefox, the setRangeText method doesn't trigger it
|
|
4341
|
-
// so we have to trigger it ourself.
|
|
4342
|
-
if (typeof window['InstallTrigger'] !==
|
|
4343
|
-
'undefined') {
|
|
4344
|
-
this.inputElement.dispatchEvent(new Event('input', { cancelable: true }));
|
|
4345
|
-
}
|
|
4346
|
-
}
|
|
4347
|
-
else {
|
|
4348
|
-
// Browser does not support setRangeText, e.g. IE
|
|
4349
|
-
this.insertAtCursor(this.inputElement, sanitizedContent);
|
|
4350
|
-
}
|
|
4351
|
-
}
|
|
4352
|
-
if (this.decimal) {
|
|
4353
|
-
this.hasDecimalPoint =
|
|
4354
|
-
this.inputElement.value.indexOf(this.decimalSeparator) > -1;
|
|
4355
|
-
}
|
|
4356
|
-
this.hasNegativeSign =
|
|
4357
|
-
this.inputElement.value.indexOf(this.negativeSign) > -1;
|
|
4358
|
-
}
|
|
4359
|
-
// The following 2 methods were added from the below article for browsers that do not support setRangeText
|
|
4360
|
-
// https://stackoverflow.com/questions/11076975/how-to-insert-text-into-the-textarea-at-the-current-cursor-position
|
|
4361
|
-
insertAtCursor(myField, myValue) {
|
|
4362
|
-
const startPos = myField.selectionStart ?? 0;
|
|
4363
|
-
const endPos = myField.selectionEnd ?? 0;
|
|
4364
|
-
myField.value =
|
|
4365
|
-
myField.value.substring(0, startPos) +
|
|
4366
|
-
myValue +
|
|
4367
|
-
myField.value.substring(endPos, myField.value.length);
|
|
4368
|
-
const pos = startPos + myValue.length;
|
|
4369
|
-
myField.focus();
|
|
4370
|
-
myField.setSelectionRange(pos, pos);
|
|
4371
|
-
this.triggerEvent(myField, 'input');
|
|
4372
|
-
}
|
|
4373
|
-
triggerEvent(el, type) {
|
|
4374
|
-
if ('createEvent' in document) {
|
|
4375
|
-
// modern browsers, IE9+
|
|
4376
|
-
const e = document.createEvent('HTMLEvents');
|
|
4377
|
-
e.initEvent(type, false, true);
|
|
4378
|
-
el.dispatchEvent(e);
|
|
4379
|
-
}
|
|
4380
|
-
}
|
|
4381
|
-
// end stack overflow code
|
|
4382
|
-
sanitizeInput(input) {
|
|
4383
|
-
let result = '';
|
|
4384
|
-
let regex;
|
|
4385
|
-
if (this.decimal && this.isValidDecimal(input)) {
|
|
4386
|
-
regex = new RegExp(`${this.getNegativeSignRegExp()}[^0-9${this.decimalSeparator}]`, 'g');
|
|
4387
|
-
}
|
|
4388
|
-
else {
|
|
4389
|
-
regex = new RegExp(`${this.getNegativeSignRegExp()}[^0-9]`, 'g');
|
|
4390
|
-
}
|
|
4391
|
-
result = input.replace(regex, '');
|
|
4392
|
-
const maxLength = this.inputElement.maxLength;
|
|
4393
|
-
if (maxLength > 0) {
|
|
4394
|
-
// the input element has maxLength limit
|
|
4395
|
-
const allowedLength = maxLength -
|
|
4396
|
-
this.inputElement.value.length +
|
|
4397
|
-
(result.includes(`${this.negativeSign}`) ? 1 : 0);
|
|
4398
|
-
result = allowedLength > 0 ? result.substring(0, allowedLength) : '';
|
|
4399
|
-
}
|
|
4400
|
-
return result;
|
|
4401
|
-
}
|
|
4402
|
-
getNegativeSignRegExp() {
|
|
4403
|
-
return this.allowNegatives &&
|
|
4404
|
-
(!this.hasNegativeSign || this.getSelection().includes(this.negativeSign))
|
|
4405
|
-
? `(?!^${this.negativeSign})`
|
|
4406
|
-
: '';
|
|
4407
|
-
}
|
|
4408
|
-
isValidDecimal(string) {
|
|
4409
|
-
if (!this.hasDecimalPoint) {
|
|
4410
|
-
return string.split(this.decimalSeparator).length <= 2;
|
|
4411
|
-
}
|
|
4412
|
-
else {
|
|
4413
|
-
// the input element already has a decimal separator
|
|
4414
|
-
const selectedText = this.getSelection();
|
|
4415
|
-
if (selectedText && selectedText.indexOf(this.decimalSeparator) > -1) {
|
|
4416
|
-
return string.split(this.decimalSeparator).length <= 2;
|
|
4417
|
-
}
|
|
4418
|
-
else {
|
|
4419
|
-
return string.indexOf(this.decimalSeparator) < 0;
|
|
4420
|
-
}
|
|
4421
|
-
}
|
|
4422
|
-
}
|
|
4423
|
-
getSelection() {
|
|
4424
|
-
return this.inputElement.value.substring(this.inputElement.selectionStart ?? 0, this.inputElement.selectionEnd ?? 0);
|
|
4425
|
-
}
|
|
4426
|
-
forecastValue(key) {
|
|
4427
|
-
const selectionStart = this.inputElement.selectionStart ?? 0;
|
|
4428
|
-
const selectionEnd = this.inputElement.selectionEnd ?? 0;
|
|
4429
|
-
const oldValue = this.inputElement.value;
|
|
4430
|
-
return (oldValue.substring(0, selectionStart) +
|
|
4431
|
-
key +
|
|
4432
|
-
oldValue.substring(selectionEnd));
|
|
4433
|
-
}
|
|
4434
|
-
}
|
|
4435
|
-
DigitOnlyDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: DigitOnlyDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
4436
|
-
DigitOnlyDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.2.7", type: DigitOnlyDirective, selector: "[digitOnly]", inputs: { decimal: "decimal", decimalSeparator: "decimalSeparator", allowNegatives: "allowNegatives", allowPaste: "allowPaste", negativeSign: "negativeSign", min: "min", max: "max", pattern: "pattern" }, host: { listeners: { "beforeinput": "onBeforeInput($event)", "keydown": "onKeyDown($event)", "paste": "onPaste($event)", "drop": "onDrop($event)" } }, usesOnChanges: true, ngImport: i0 });
|
|
4437
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: DigitOnlyDirective, decorators: [{
|
|
4438
|
-
type: Directive,
|
|
4439
|
-
args: [{
|
|
4440
|
-
selector: '[digitOnly]',
|
|
4441
|
-
}]
|
|
4442
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { decimal: [{
|
|
4443
|
-
type: Input
|
|
4444
|
-
}], decimalSeparator: [{
|
|
4445
|
-
type: Input
|
|
4446
|
-
}], allowNegatives: [{
|
|
4447
|
-
type: Input
|
|
4448
|
-
}], allowPaste: [{
|
|
4449
|
-
type: Input
|
|
4450
|
-
}], negativeSign: [{
|
|
4451
|
-
type: Input
|
|
4452
|
-
}], min: [{
|
|
4453
|
-
type: Input
|
|
4454
|
-
}], max: [{
|
|
4455
|
-
type: Input
|
|
4456
|
-
}], pattern: [{
|
|
4457
|
-
type: Input
|
|
4458
|
-
}], onBeforeInput: [{
|
|
4459
|
-
type: HostListener,
|
|
4460
|
-
args: ['beforeinput', ['$event']]
|
|
4461
|
-
}], onKeyDown: [{
|
|
4462
|
-
type: HostListener,
|
|
4463
|
-
args: ['keydown', ['$event']]
|
|
4464
|
-
}], onPaste: [{
|
|
4465
|
-
type: HostListener,
|
|
4466
|
-
args: ['paste', ['$event']]
|
|
4467
|
-
}], onDrop: [{
|
|
4468
|
-
type: HostListener,
|
|
4469
|
-
args: ['drop', ['$event']]
|
|
4470
|
-
}] } });
|
|
4471
|
-
|
|
4472
4250
|
// Angular import statements
|
|
4473
4251
|
class AnnaCoreModule {
|
|
4474
4252
|
}
|
|
@@ -4492,8 +4270,7 @@ AnnaCoreModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version:
|
|
|
4492
4270
|
AnnaVirtualTableDirective,
|
|
4493
4271
|
AnnaNonEditableGenericTableComponent,
|
|
4494
4272
|
AnnaTableVirtualScrollViewportComponent,
|
|
4495
|
-
AnnaFixedRowSizeTableVirtualScrollStrategyDirective,
|
|
4496
|
-
DigitOnlyDirective], imports: [CommonModule,
|
|
4273
|
+
AnnaFixedRowSizeTableVirtualScrollStrategyDirective], imports: [CommonModule,
|
|
4497
4274
|
NgbModule,
|
|
4498
4275
|
FormsModule,
|
|
4499
4276
|
MatRadioModule,
|
|
@@ -4501,7 +4278,7 @@ AnnaCoreModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version:
|
|
|
4501
4278
|
MatTableModule,
|
|
4502
4279
|
NgxSliderModule,
|
|
4503
4280
|
NgxSkeletonLoaderModule,
|
|
4504
|
-
ScrollingModule,
|
|
4281
|
+
ScrollingModule, i15.NgCircleProgressModule], exports: [AnnaNoDataComponent,
|
|
4505
4282
|
AnnaFilterSearchedTextPipe,
|
|
4506
4283
|
AnnaConvertZeroOrNullOrUndefinedPipe,
|
|
4507
4284
|
AnnaTypeofDataPipe,
|
|
@@ -4520,8 +4297,7 @@ AnnaCoreModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version:
|
|
|
4520
4297
|
AnnaVirtualTableDirective,
|
|
4521
4298
|
AnnaNonEditableGenericTableComponent,
|
|
4522
4299
|
AnnaTableVirtualScrollViewportComponent,
|
|
4523
|
-
AnnaFixedRowSizeTableVirtualScrollStrategyDirective
|
|
4524
|
-
DigitOnlyDirective] });
|
|
4300
|
+
AnnaFixedRowSizeTableVirtualScrollStrategyDirective] });
|
|
4525
4301
|
AnnaCoreModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaCoreModule, imports: [[
|
|
4526
4302
|
CommonModule,
|
|
4527
4303
|
NgbModule,
|
|
@@ -4565,7 +4341,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImpor
|
|
|
4565
4341
|
AnnaNonEditableGenericTableComponent,
|
|
4566
4342
|
AnnaTableVirtualScrollViewportComponent,
|
|
4567
4343
|
AnnaFixedRowSizeTableVirtualScrollStrategyDirective,
|
|
4568
|
-
DigitOnlyDirective
|
|
4569
4344
|
],
|
|
4570
4345
|
imports: [
|
|
4571
4346
|
CommonModule,
|
|
@@ -4606,51 +4381,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImpor
|
|
|
4606
4381
|
AnnaVirtualTableDirective,
|
|
4607
4382
|
AnnaNonEditableGenericTableComponent,
|
|
4608
4383
|
AnnaTableVirtualScrollViewportComponent,
|
|
4609
|
-
AnnaFixedRowSizeTableVirtualScrollStrategyDirective
|
|
4610
|
-
DigitOnlyDirective
|
|
4384
|
+
AnnaFixedRowSizeTableVirtualScrollStrategyDirective
|
|
4611
4385
|
]
|
|
4612
4386
|
}]
|
|
4613
4387
|
}] });
|
|
4614
4388
|
|
|
4615
|
-
class AnnaNumberFormatService {
|
|
4616
|
-
static GetRoundedValueWithUnits(inputValue, digitsToRoundDecimalPoint = 2) {
|
|
4617
|
-
let [value, unit] = AnnaNumberFormatService.GetValueInUnits(Math.abs(inputValue));
|
|
4618
|
-
value = +((+value).toFixed(digitsToRoundDecimalPoint));
|
|
4619
|
-
if (inputValue < 0) {
|
|
4620
|
-
value = value * -1;
|
|
4621
|
-
}
|
|
4622
|
-
return value.toString() + unit;
|
|
4623
|
-
// return (Math.Round(value, digitsToRoundDecimalPoint, MidpointRounding.AwayFromZero) + unit);
|
|
4624
|
-
}
|
|
4625
|
-
static GetValueInUnits(inputValue) {
|
|
4626
|
-
let unit = "";
|
|
4627
|
-
let thousand = 1000;
|
|
4628
|
-
let million = 1000000;
|
|
4629
|
-
let billion = 1000000000;
|
|
4630
|
-
if (inputValue >= thousand && inputValue < million) {
|
|
4631
|
-
inputValue = inputValue / thousand;
|
|
4632
|
-
unit = "K";
|
|
4633
|
-
}
|
|
4634
|
-
else if (inputValue >= million && inputValue < billion) {
|
|
4635
|
-
inputValue = inputValue / million;
|
|
4636
|
-
unit = "M";
|
|
4637
|
-
}
|
|
4638
|
-
else if (inputValue >= billion) {
|
|
4639
|
-
inputValue = inputValue / billion;
|
|
4640
|
-
unit = "B";
|
|
4641
|
-
}
|
|
4642
|
-
return [inputValue, unit];
|
|
4643
|
-
}
|
|
4644
|
-
}
|
|
4645
|
-
AnnaNumberFormatService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaNumberFormatService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
4646
|
-
AnnaNumberFormatService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaNumberFormatService, providedIn: "root" });
|
|
4647
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: AnnaNumberFormatService, decorators: [{
|
|
4648
|
-
type: Injectable,
|
|
4649
|
-
args: [{
|
|
4650
|
-
providedIn: "root",
|
|
4651
|
-
}]
|
|
4652
|
-
}] });
|
|
4653
|
-
|
|
4654
4389
|
;
|
|
4655
4390
|
|
|
4656
4391
|
class Constants {
|
|
@@ -4695,5 +4430,5 @@ var Days;
|
|
|
4695
4430
|
* Generated bundle index. Do not edit.
|
|
4696
4431
|
*/
|
|
4697
4432
|
|
|
4698
|
-
export { AllSelectedStatus, AnnaBuyerApprovalIconTemplateComponent, AnnaCalendarFilterComponent, AnnaConvertZeroOrNullOrUndefinedPipe, AnnaCoreModule, AnnaDateTimeFormatService, AnnaFilterSearchedTextPipe, AnnaFilterService, AnnaFixedRowSizeTableVirtualScrollStrategy, AnnaFixedRowSizeTableVirtualScrollStrategyDirective,
|
|
4433
|
+
export { AllSelectedStatus, AnnaBuyerApprovalIconTemplateComponent, AnnaCalendarFilterComponent, AnnaConvertZeroOrNullOrUndefinedPipe, AnnaCoreModule, AnnaDateTimeFormatService, AnnaFilterSearchedTextPipe, AnnaFilterService, AnnaFixedRowSizeTableVirtualScrollStrategy, AnnaFixedRowSizeTableVirtualScrollStrategyDirective, AnnaGlobalConfigService, AnnaGtHelperService, AnnaIconColumnComponent, AnnaLiveIconTemplateComponent, AnnaNoDataComponent, AnnaNonEditableGenericTableComponent, AnnaNotifyIconTemplateComponent, AnnaPayForPerformanceIconTemplateComponent, AnnaRejectedIconTemplateComponent, AnnaReplaceCharPipe, AnnaSortComponent, AnnaSortService, AnnaTableVirtualScrollViewportComponent, AnnaTypeofDataPipe, AnnaVirtualTableDirective, AnnaWeekCalendarComponent, Constants, Days, ErrorCodes, TooltipModel, fixedSizeVirtualScrollStrategyFactory, radioButtonModel, showEllipsisTextOnHoverDirective, tooltipModelForColumnLevelFiltering };
|
|
4699
4434
|
//# sourceMappingURL=annalib-anna-core.mjs.map
|