@annalib/anna-feature-biz-rules 0.0.1 → 0.0.2
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/advertiser-listing/src/advertiser-table-listing/advertiser-table-listing.component.d.ts +1 -1
- package/biz-rules-order-listing/src/biz-rules-order-listing.component.d.ts +1 -1
- package/business-rules/src/business-rule-page/models/business-rule.model.d.ts +1 -1
- package/business-rules/src/business-rules-history/business-rules-history.component.d.ts +1 -1
- package/business-rules/src/business-rules-history-popup/business-rules-history-popup.component.d.ts +1 -1
- package/business-rules/src/business-rules-history-popup/models/business-rules-history-popup.model.d.ts +1 -1
- package/business-rules/src/copy-biz-rules-popup/copy-biz-rules-popup.component.d.ts +1 -1
- package/business-rules/src/daypart-grouping-popup/daypart-grouping-popup.component.d.ts +1 -1
- package/business-rules/src/daypart-restrictions/daypart-restrictions.component.d.ts +1 -1
- package/business-rules/src/inherit-biz-rule-approval-popup/inherit-biz-rule-approval-popup.component.d.ts +1 -1
- package/fesm2022/annalib-anna-feature-biz-rules-advertiser-listing.mjs +1 -1
- package/fesm2022/annalib-anna-feature-biz-rules-advertiser-listing.mjs.map +1 -1
- package/fesm2022/annalib-anna-feature-biz-rules-biz-rules-order-listing.mjs +1 -1
- package/fesm2022/annalib-anna-feature-biz-rules-biz-rules-order-listing.mjs.map +1 -1
- package/fesm2022/annalib-anna-feature-biz-rules-business-rules.mjs +2 -2
- package/fesm2022/annalib-anna-feature-biz-rules-business-rules.mjs.map +1 -1
- package/package.json +3 -2
package/advertiser-listing/src/advertiser-table-listing/advertiser-table-listing.component.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import { EventEmitter, OnChanges, OnInit, SimpleChanges } from "@angular/core";
|
|
|
2
2
|
import { ActivatedRoute, Router } from "@angular/router";
|
|
3
3
|
import { AnnaFilterService, AnnaGtHelperService, AnnaNonEditableGenericTableComponent, AnnaPersistingFilterService, AnnaSortService, IGtGeneralConfig, IGtTableHeader } from "@annalib/anna-core";
|
|
4
4
|
import { EasyFilters, IBreadcrumb, MessageBoxData } from "@annalib/anna-design-components-lib";
|
|
5
|
-
import { GenericBusinessRuleCommonSIBILogicService } from "@annalib/anna-feature-
|
|
5
|
+
import { GenericBusinessRuleCommonSIBILogicService } from "@annalib/anna-feature-shared-lib";
|
|
6
6
|
import { AdvertiserListingTableData, TypeOfActionLinkForGtEnum } from "./model/adv-table-listing.model";
|
|
7
7
|
import { AdvTableListingService } from "./services/adv-table-listing.service";
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
@@ -3,7 +3,7 @@ import { ActivatedRoute, Router } from "@angular/router";
|
|
|
3
3
|
import { AnnaFilterService, AnnaGlobalConfigService, AnnaGtHelperService, AnnaNonEditableGenericTableComponent, AnnaPersistingFilterService, AnnaSortService, IConfirmationPopupConfig, IGtGeneralConfig, IGtTableHeader } from "@annalib/anna-core";
|
|
4
4
|
import { BreadcrumbsService, DashboardFilterSelectionPopUp, EasyFilters, IBreadcrumb, PersistedDashboardPrimaryFilters, PrimaryFiltersData } from "@annalib/anna-design-components-lib";
|
|
5
5
|
import { UserTypeEnum } from "@annalib/anna-feature-lib";
|
|
6
|
-
import { GenericBusinessRuleCommonSIBILogicService } from "@annalib/anna-feature-
|
|
6
|
+
import { GenericBusinessRuleCommonSIBILogicService } from "@annalib/anna-feature-shared-lib";
|
|
7
7
|
import { ToastrService } from "ngx-toastr";
|
|
8
8
|
import { NgxUiLoaderService } from "ngx-ui-loader";
|
|
9
9
|
import { Orders, TypeOfActionLinkForGtEnum } from "./model/biz-rule-order-listing.model";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { IdText, SingleSelectIdText } from "@annalib/anna-design-components-lib";
|
|
2
|
-
import { BizRuleStatus } from "@annalib/anna-feature-
|
|
2
|
+
import { BizRuleStatus } from "@annalib/anna-feature-shared-lib";
|
|
3
3
|
import { OrdersToBeInheritedActionType } from "../../inherit-biz-rule-approval-popup/models/inherit-biz-rule-approval-popup.model";
|
|
4
4
|
import { BusinessPageType, UserTypeEnum } from "./business-rule-page.constants";
|
|
5
5
|
export declare class BizRulesResponse {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { OnChanges, OnInit, SimpleChanges } from "@angular/core";
|
|
2
2
|
import { ActivatedRoute } from "@angular/router";
|
|
3
3
|
import { IGtTableHeader } from "@annalib/anna-core";
|
|
4
|
-
import { BizHistoryType, BizRuleStatus } from "@annalib/anna-feature-
|
|
4
|
+
import { BizHistoryType, BizRuleStatus } from "@annalib/anna-feature-shared-lib";
|
|
5
5
|
import { BizRulesResponse } from "../business-rule-page/models/business-rule.model";
|
|
6
6
|
import { BizHistoryRuleUrl, BusinessPageType, UserTypeEnum } from "../business-rule-page/models/business-rule-page.constants";
|
|
7
7
|
import { BusinessHistoryTable } from "./models/biz-rule-history.model";
|
package/business-rules/src/business-rules-history-popup/business-rules-history-popup.component.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import { EventEmitter, OnChanges, OnInit, SimpleChanges } from "@angular/core";
|
|
|
2
2
|
import { Router } from "@angular/router";
|
|
3
3
|
import { AnnaFilterService, AnnaGlobalConfigService, AnnaSortService, IGtGeneralConfig, IGtTableHeader } from "@annalib/anna-core";
|
|
4
4
|
import { IdText } from "@annalib/anna-design-components-lib";
|
|
5
|
-
import { BizHistoryType } from "@annalib/anna-feature-
|
|
5
|
+
import { BizHistoryType } from "@annalib/anna-feature-shared-lib";
|
|
6
6
|
import { NgbModal, NgbModalRef } from "@ng-bootstrap/ng-bootstrap";
|
|
7
7
|
import { HistoryData } from "./models/business-rules-history-popup.model";
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { TextAction } from "@annalib/anna-core";
|
|
2
|
-
import { BizHistoryType } from "@annalib/anna-feature-
|
|
2
|
+
import { BizHistoryType } from "@annalib/anna-feature-shared-lib";
|
|
3
3
|
export declare class HistoryList {
|
|
4
4
|
histories: HistoryData[];
|
|
5
5
|
constructor(historyList: any, type: BizHistoryType);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { EventEmitter, OnChanges, OnInit, SimpleChanges } from "@angular/core";
|
|
2
2
|
import { AnnaGlobalConfigService, IConfirmationPopupConfig, ICustomMultiSelect, ICustomSingleSelect, IRadioButtonComponentConfig } from "@annalib/anna-core";
|
|
3
3
|
import { IdText, SingleSelectIdText } from "@annalib/anna-design-components-lib";
|
|
4
|
-
import { GenericBusinessRuleCommonSIBILogicService } from "@annalib/anna-feature-
|
|
4
|
+
import { GenericBusinessRuleCommonSIBILogicService } from "@annalib/anna-feature-shared-lib";
|
|
5
5
|
import { NgbModal, NgbModalRef } from "@ng-bootstrap/ng-bootstrap";
|
|
6
6
|
import { ToastrService } from "ngx-toastr";
|
|
7
7
|
import { BizRulesResponse } from "../business-rule-page/models/business-rule.model";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ChangeDetectorRef, EventEmitter, OnChanges, SimpleChanges } from "@angular/core";
|
|
2
|
-
import { GenericBusinessRuleCommonSIBILogicService } from "@annalib/anna-feature-
|
|
2
|
+
import { GenericBusinessRuleCommonSIBILogicService } from "@annalib/anna-feature-shared-lib";
|
|
3
3
|
import { DaypartGroupsList } from "../business-rule-page/models/business-rule.model";
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
export declare class DaypartGroupingPopupComponent implements OnChanges {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { EventEmitter, OnChanges, OnInit, SimpleChanges } from "@angular/core";
|
|
2
2
|
import { AnnaFilterService, AnnaGlobalConfigService, IGtGeneralConfig } from "@annalib/anna-core";
|
|
3
3
|
import { MessageBoxData } from "@annalib/anna-design-components-lib";
|
|
4
|
-
import { GenericBusinessRuleCommonSIBILogicService } from "@annalib/anna-feature-
|
|
4
|
+
import { GenericBusinessRuleCommonSIBILogicService } from "@annalib/anna-feature-shared-lib";
|
|
5
5
|
import { DayAndDaypartRestrictionForMgAndAdu, DaypartRestrictionDetails } from "../business-rule-page/models/business-rule.model";
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
type DAYTYPE = "weekdays" | "saturday" | "sunday";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { EventEmitter, OnChanges, SimpleChanges } from "@angular/core";
|
|
2
2
|
import { AnnaFilterService, AnnaGlobalConfigService, AnnaSortService, IGtGeneralConfig, IGtTableHeader, ITotalRowInfo } from "@annalib/anna-core";
|
|
3
|
-
import { BizRuleStatus } from "@annalib/anna-feature-
|
|
3
|
+
import { BizRuleStatus } from "@annalib/anna-feature-shared-lib";
|
|
4
4
|
import { ApprovalPopupSteps, ApprovalPopupType, ApprovalTableTotalRowColName, InheritedOrder, InheritedOrderList, OrderListForInheritBizApprovalBackend, OrdersToBeInheritedActionType } from "./models/inherit-biz-rule-approval-popup.model";
|
|
5
5
|
import { InheritBizRuleApprovalPopupService } from "./services/inherit-biz-rule-approval-popup.service";
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
@@ -12,7 +12,7 @@ import dayjs from 'dayjs';
|
|
|
12
12
|
import minMax from 'dayjs/plugin/minMax';
|
|
13
13
|
import { cloneDeep, isEqual } from 'lodash-es';
|
|
14
14
|
import * as i1$1 from '@angular/router';
|
|
15
|
-
import * as i3$1 from '@annalib/anna-feature-
|
|
15
|
+
import * as i3$1 from '@annalib/anna-feature-shared-lib';
|
|
16
16
|
import { NgxSkeletonLoaderModule } from 'ngx-skeleton-loader';
|
|
17
17
|
|
|
18
18
|
var AdvertiserListingFilterPopupradioButtons;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"annalib-anna-feature-biz-rules-advertiser-listing.mjs","sources":["../../../projects/anna-feature-biz-rules/advertiser-listing/src/advertiser-filter-modal/models/advertiser-filter-modal.model.ts","../../../projects/anna-feature-biz-rules/advertiser-listing/src/advertiser-filter-modal/advertiser-filter-modal.component.ts","../../../projects/anna-feature-biz-rules/advertiser-listing/src/advertiser-filter-modal/advertiser-filter-modal.component.html","../../../projects/anna-feature-biz-rules/advertiser-listing/src/advertiser-table-listing/model/adv-table-listing.model.ts","../../../projects/anna-feature-biz-rules/advertiser-listing/src/advertiser-table-listing/services/adv-table-listing.service.ts","../../../projects/anna-feature-biz-rules/advertiser-listing/src/advertiser-table-listing/advertiser-table-listing.component.ts","../../../projects/anna-feature-biz-rules/advertiser-listing/src/advertiser-table-listing/advertiser-table-listing.component.html","../../../projects/anna-feature-biz-rules/advertiser-listing/annalib-anna-feature-biz-rules-advertiser-listing.ts"],"sourcesContent":["import { PersistedDashboardPrimaryFilters } from \"@annalib/anna-design-components-lib\";\n\nexport enum AdvertiserListingFilterPopupradioButtons {\n showAllActiveAdvertisers = \"Show all active advertisers\",\n calendarSelection = \"Calendar selection\",\n}\n\nexport interface AdvertiserListingFilterPopup extends PersistedDashboardPrimaryFilters {\n showCalendarSelection: boolean;\n stationName?: string;\n includeExpiredAdvertisers: boolean;\n}\n\nexport interface AdvertiserListingFilterSelectionPopUp extends AdvertiserListingFilterPopup {\n updateNavigation?: boolean;\n}\n","/* eslint-disable import/no-extraneous-dependencies */\n// Angular import statements\nimport {\n DatePipe,\n NgClass,\n NgFor,\n NgIf,\n NgSwitch,\n NgSwitchCase,\n NgSwitchDefault,\n NgTemplateOutlet,\n} from \"@angular/common\";\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n OnChanges,\n Output,\n SimpleChanges,\n TemplateRef,\n ViewChild,\n} from \"@angular/core\";\nimport { FormsModule } from \"@angular/forms\";\nimport { MatRadioModule } from \"@angular/material/radio\";\n// Anna Lib\nimport {\n AnnaGlobalConfigService,\n ICustomSingleSelect,\n IRadioButtonComponentConfig,\n UpdateStationIdService,\n} from \"@annalib/anna-core\";\n// User defined Imports\nimport {\n CalendarQuarterYearFilterService,\n DashboardFilterModalConstants,\n GenericPeriodSelectionComponent,\n ICalendarTypeResponse,\n IdTextForDropdown,\n IYearQuarter,\n PeriodSelectionPopUp,\n PrimaryFiltersData,\n SingleSelectComponent,\n SkeletonLoaderComponent,\n StartDateConsideringFactor,\n} from \"@annalib/anna-design-components-lib\";\nimport { NgbModal, NgbModalOptions, NgbModalRef } from \"@ng-bootstrap/ng-bootstrap\";\n// Third party import statements\nimport dayjs from \"dayjs\";\nimport minMax from \"dayjs/plugin/minMax\";\nimport { cloneDeep, isEqual } from \"lodash-es\";\n\nimport {\n AdvertiserListingFilterPopup,\n AdvertiserListingFilterPopupradioButtons,\n AdvertiserListingFilterSelectionPopUp,\n} from \"./models/advertiser-filter-modal.model\";\n\n@Component({\n selector: \"anna-feature-advertiser-filter-modal\",\n templateUrl: \"./advertiser-filter-modal.component.html\",\n styleUrls: [\"./advertiser-filter-modal.component.scss\"],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n NgIf,\n NgFor,\n NgClass,\n FormsModule,\n NgTemplateOutlet,\n MatRadioModule,\n SingleSelectComponent,\n GenericPeriodSelectionComponent,\n NgSwitch,\n NgSwitchCase,\n NgSwitchDefault,\n SkeletonLoaderComponent,\n DatePipe,\n ]\n})\nexport class AdvertiserFilterModalComponent implements OnChanges {\n @Input() toDisable: boolean;\n @Input() filterData: PrimaryFiltersData;\n @Input() persistingFilter: AdvertiserListingFilterPopup;\n @Input() stationIdsWithValidLicense: number[] = [];\n\n @Output() applyFilter = new EventEmitter<any>();\n @Output() getInitialFilter = new EventEmitter<any>();\n\n @ViewChild(\"dbFilterModal\", { static: true }) private dbFilterModal: TemplateRef<any>;\n modalRef: NgbModalRef;\n ngbModalOptions: NgbModalOptions;\n constants = DashboardFilterModalConstants;\n\n clonedFilter: AdvertiserListingFilterSelectionPopUp;\n\n stationDropdownConfig: ICustomSingleSelect;\n calendarTypeConfig: IRadioButtonComponentConfig;\n\n selectedStation: IdTextForDropdown;\n stations: IdTextForDropdown[];\n selectedPeriodData: PeriodSelectionPopUp;\n selectedStartDate: string;\n selectedEndDate: string;\n includeExpiredAdvertisers: boolean;\n\n minMaxDateRangeForCalendar: { startDate: string; endDate: string };\n\n loggedInUserId: number;\n\n @Input() toShowAllPeriodModeSetting: boolean = false;\n @Input() PeriodOptions: string[] = [\"Quarter\"];\n\n defaultQuarterYear: string;\n defaultQuarter: string;\n calendarData: any;\n\n DATE_FORMAT = \"MM/DD/YYYY\";\n DATE_FORMAT_HTML = \"MM/dd/YYYY\";\n MONTH_DATE_FORMAT_HTML = \"d MMM\";\n isFilterValueChanged: boolean;\n\n noQuarterYearPresent: boolean;\n previousSelectedStation: IdTextForDropdown;\n previousSelectedOwnershipGroup: IdTextForDropdown;\n\n periodDataLoader: boolean;\n initialFiltersForStationAndPeriod: AdvertiserListingFilterPopup;\n StartDateConsideringFactor = StartDateConsideringFactor;\n selectedValueForCalendarSelectionAndAllActiveAdvertisersToggle: AdvertiserListingFilterPopupradioButtons;\n advertiserListingFilterPopupradioButtons = AdvertiserListingFilterPopupradioButtons;\n\n constructor(\n private modalService: NgbModal,\n private annaGlobalService: AnnaGlobalConfigService,\n private quarterFilterService: CalendarQuarterYearFilterService,\n private updateStationIdService: UpdateStationIdService,\n ) {\n dayjs.extend(minMax);\n this.configModalOptions();\n this.setStationDropdownConfig();\n this.resetClonedFilter();\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (changes.filterData && changes.filterData.currentValue) {\n if (this.stationIdsWithValidLicense?.length) {\n this.filterData.stationArr = this.filterData.stationArr.filter((station) =>\n this.stationIdsWithValidLicense.includes(station.id),\n );\n }\n this.disableEditFilterBtn();\n this.getLoginUserId();\n this.setFilterData();\n }\n }\n\n setInitialFiltersForComponent() {\n this.initialFiltersForStationAndPeriod = {\n stationId: this.selectedStation.id,\n showCalendarSelection:\n this.selectedValueForCalendarSelectionAndAllActiveAdvertisersToggle ===\n this.advertiserListingFilterPopupradioButtons.calendarSelection,\n includeExpiredAdvertisers: this.includeExpiredAdvertisers,\n };\n const calendarData = this.filterData.stationCalendarTypeMap.get(this.selectedStation.id);\n\n if (this.calendarData.BroadcastQuarterYear.length) {\n let selectedQuarter;\n const quarter = calendarData.BroadcastQuarterYear;\n for (let i = 0; i < quarter.length; i++) {\n selectedQuarter = quarter[i].Quarters.filter((data: any) => data.IsCurrentQuarter);\n if (selectedQuarter.length) {\n break;\n }\n }\n\n if (selectedQuarter) {\n const defaultQuarterYear = dayjs(selectedQuarter[0].EndDate).format(\"YYYY\");\n const defaultQuarter = selectedQuarter[0].DisplayDate;\n\n const selectedStartDate = dayjs(selectedQuarter[0].StartDate).format(this.DATE_FORMAT);\n const selectedEndDate = dayjs(selectedQuarter[0].EndDate).format(this.DATE_FORMAT);\n\n this.initialFiltersForStationAndPeriod.periodData = {\n year: defaultQuarterYear,\n quarter: defaultQuarter,\n calendarType: this.constants.Broadcast,\n periodMode: this.constants.Quarter,\n month: null,\n isEntireFlightPeriod: false,\n startDate: selectedStartDate,\n endDate: selectedEndDate,\n };\n } else {\n this.initialFiltersForStationAndPeriod.periodData = null;\n }\n }\n\n this.getInitialFilter.emit(this.initialFiltersForStationAndPeriod);\n }\n\n disableEditFilterBtn() {\n this.noQuarterYearPresent = true;\n this.filterData.stationCalendarTypeMap.forEach((value, key) => {\n if (value.BroadcastQuarterYear.length > 0) {\n this.noQuarterYearPresent = false;\n }\n });\n }\n\n setFilterData() {\n this.periodDataLoader = true;\n this.setStationData();\n this.setShowCalendarSelectionValue();\n this.setIncludeExcludedAdvertisersValue();\n this.setCalendarQuarterFilter();\n this.callBackFuncOnInitialSetup();\n }\n\n setShowCalendarSelectionValue() {\n const showCalendarSelection =\n this.persistingFilter && this.persistingFilter.showCalendarSelection !== undefined\n ? this.persistingFilter.showCalendarSelection\n : true;\n this.selectedValueForCalendarSelectionAndAllActiveAdvertisersToggle = showCalendarSelection\n ? this.advertiserListingFilterPopupradioButtons.calendarSelection\n : this.advertiserListingFilterPopupradioButtons.showAllActiveAdvertisers;\n }\n\n setIncludeExcludedAdvertisersValue() {\n this.includeExpiredAdvertisers =\n this.persistingFilter && this.persistingFilter.includeExpiredAdvertisers !== undefined\n ? this.persistingFilter.includeExpiredAdvertisers\n : false;\n }\n\n callBackFuncOnInitialSetup() {\n this.setInitialFiltersForComponent();\n this.setClonedDataAndEmitFilters();\n this.periodDataLoader = false;\n this.isFilterValueChanged = false;\n }\n\n setStationData() {\n this.stations = this.filterData.stationArr;\n if (this.persistingFilter && this.persistingFilter.stationId) {\n this.selectedStation = this.stations.some((station) => station.id === this.persistingFilter.stationId)\n ? this.stations.find((station) => station.id === this.persistingFilter.stationId)\n : this.stations[0];\n } else {\n this.selectedStation = this.stations[0];\n }\n this.previousSelectedStation = cloneDeep(this.selectedStation);\n }\n\n setCalendarQuarterFilter() {\n this.selectedPeriodData =\n this.persistingFilter && this.persistingFilter.periodData ? this.persistingFilter.periodData : null;\n this.setGenericPeriodSelectionComponentData();\n if (this.isPeriodData()) {\n this.setStartAndEndDate(this.calendarData);\n this.setMinMaxDateRangeAsPerQuarter();\n }\n }\n\n isPeriodData() {\n return this.calendarData.BroadcastQuarterYear.length;\n }\n\n setGenericPeriodSelectionComponentData() {\n this.calendarData = this.filterData.stationCalendarTypeMap.get(this.selectedStation.id);\n this.quarterFilterService.publishQuarterFilterData({ filterData: this.calendarData, selectedFilter: null });\n }\n\n setMinMaxDateRangeAsPerQuarter() {\n if (this.calendarData.BroadcastQuarterYear.length > 0) {\n this.minMaxDateRangeForCalendar = null;\n if (this.isFiscalPeriod()) {\n this.setMinMaxDate(this.calendarData.FiscalQuarterYear);\n } else {\n this.setMinMaxDate(this.calendarData.BroadcastQuarterYear);\n }\n }\n }\n\n setMinMaxDate(quarterYear: IYearQuarter[]) {\n const totalYear = quarterYear.length - 1;\n const totalQuarterInLastYear = quarterYear[totalYear].Quarters.length - 1;\n\n const startDate = dayjs(quarterYear[0].Quarters[0].StartDate).format(this.DATE_FORMAT);\n const endDate = dayjs(quarterYear[totalYear].Quarters[totalQuarterInLastYear].EndDate).format(this.DATE_FORMAT);\n this.minMaxDateRangeForCalendar = { startDate, endDate };\n }\n\n isFiscalPeriod() {\n return (\n (this.persistingFilter &&\n this.persistingFilter.periodData &&\n this.persistingFilter.periodData.calendarType === this.constants.Fiscal) ||\n (this.selectedPeriodData && this.selectedPeriodData.calendarType === this.constants.Fiscal)\n );\n }\n\n setStartAndEndDate(calendarData: ICalendarTypeResponse) {\n if (this.persistingFilter && this.persistingFilter.periodData) {\n this.selectedStartDate = this.persistingFilter.periodData.startDate;\n this.selectedEndDate = this.persistingFilter.periodData.endDate;\n this.defaultQuarterYear = null;\n this.defaultQuarter = null;\n } else {\n this.setDefaultPeriodFilter(calendarData);\n }\n }\n\n openFilterModal() {\n this.previousSelectedStation = null;\n if (this.persistingFilter && this.persistingFilter.stationId) {\n this.previousSelectedStation = this.stations?.filter((n) => n.id === this.persistingFilter.stationId)[0];\n } else if (this.stations) {\n this.previousSelectedStation = this.stations[0];\n }\n this.modalRef = this.modalService.open(this.dbFilterModal, this.ngbModalOptions);\n }\n\n closeOptionsModal() {\n this.modalRef.close();\n }\n\n isPeriodFilterChanged(periodFilter: PeriodSelectionPopUp) {\n this.selectedPeriodData = cloneDeep(periodFilter);\n this.selectedStartDate = periodFilter.startDate;\n this.selectedEndDate = periodFilter.endDate;\n this.setMinMaxDateRangeAsPerQuarter();\n this.isFilterDropdownValueChanged();\n }\n\n // default is broadcast quater year\n setDefaultPeriodFilter(calendarData: ICalendarTypeResponse) {\n let selectedQuarter;\n const quarter = calendarData.BroadcastQuarterYear;\n for (let i = 0; i < quarter.length; i++) {\n selectedQuarter = quarter[i].Quarters.filter((data) => data.IsCurrentQuarter);\n if (selectedQuarter.length) {\n break;\n }\n }\n this.defaultQuarterYear = dayjs(selectedQuarter[0].EndDate).format(\"YYYY\");\n this.defaultQuarter = selectedQuarter[0].DisplayDate;\n\n this.selectedStartDate = dayjs(selectedQuarter[0].StartDate).format(this.DATE_FORMAT);\n this.selectedEndDate = dayjs(selectedQuarter[0].EndDate).format(this.DATE_FORMAT);\n }\n\n onApplyFilterAndUpdateNavigation() {\n this.updateStationIdService.updateStationIdInLocalStorage([this.selectedStation.id]);\n this.previousSelectedStation = cloneDeep(this.selectedStation);\n this.setClonedDataAndEmitFilters();\n this.closeOptionsModal();\n }\n\n setClonedDataAndEmitFilters() {\n const filterApplied = this.setClonedFilter();\n this.applyFilter.emit(filterApplied);\n }\n\n setClonedFilter() {\n const showCalendarSelection: boolean =\n this.selectedValueForCalendarSelectionAndAllActiveAdvertisersToggle ===\n this.advertiserListingFilterPopupradioButtons.calendarSelection;\n this.clonedFilter = {\n periodData: cloneDeep(this.selectedPeriodData),\n stationId: this.selectedStation.id,\n stationName: this.selectedStation.text,\n includeExpiredAdvertisers: this.includeExpiredAdvertisers,\n showCalendarSelection,\n };\n this.updateStationIdService.updateStationIdInLocalStorage([this.clonedFilter.stationId]);\n this.addIncludeExpiredAdvertisersClonedFilter(this.includeExpiredAdvertisers);\n this.addShowCalendarSelectionClonedFilter(showCalendarSelection);\n this.setDefaultSelectedPeriodData();\n return this.clonedFilter;\n }\n\n addIncludeExpiredAdvertisersClonedFilter(val: boolean) {\n this.clonedFilter.includeExpiredAdvertisers = val !== undefined ? val : false;\n }\n\n addShowCalendarSelectionClonedFilter(val: boolean) {\n this.clonedFilter.showCalendarSelection = val !== undefined ? val : true;\n }\n\n setDefaultSelectedPeriodData() {\n if (this.clonedFilter.periodData == null && this.defaultQuarter) {\n this.clonedFilter.periodData = {\n year: this.defaultQuarterYear,\n quarter: this.defaultQuarter,\n calendarType: this.constants.Broadcast,\n periodMode: this.constants.Quarter,\n month: null,\n startDate: this.selectedStartDate,\n endDate: this.selectedEndDate,\n };\n this.clonedFilter = cloneDeep(this.clonedFilter);\n } else {\n this.clonedFilter.periodData = cloneDeep(this.selectedPeriodData);\n }\n }\n\n onCancelClicked() {\n this.selectedStartDate = this.clonedFilter.periodData?.startDate;\n this.selectedEndDate = this.clonedFilter.periodData?.endDate;\n\n this.selectedPeriodData = cloneDeep(this.clonedFilter.periodData);\n\n this.setPreviousDataForStationOrOG();\n this.setGenericPeriodSelectionComponentData();\n this.setMinMaxDateRangeAsPerQuarter();\n this.closeOptionsModal();\n }\n\n setPreviousDataForStationOrOG() {\n this.selectedStation = this.stations.filter((n) => n.id === this.clonedFilter.stationId)[0];\n }\n\n resetClonedFilter() {\n this.clonedFilter = {\n periodData: null,\n stationId: null,\n updateNavigation: null,\n showCalendarSelection: true,\n includeExpiredAdvertisers: false,\n };\n\n this.addIncludeExpiredAdvertisersClonedFilter(false);\n this.addShowCalendarSelectionClonedFilter(true);\n }\n\n stationSelected(selectedStation: IdTextForDropdown) {\n this.selectedStation = selectedStation;\n const previousQuarterFilter = this.filterData.stationCalendarTypeMap.get(this.previousSelectedStation.id);\n const currentQuarterFilter = this.filterData.stationCalendarTypeMap.get(this.selectedStation.id);\n\n if (previousQuarterFilter.BroadcastQuarterYear.length !== currentQuarterFilter.BroadcastQuarterYear.length) {\n this.setGenericPeriodSelectionComponentData();\n if (this.isPeriodData()) {\n this.setStartAndEndDate(this.calendarData);\n this.setMinMaxDateRangeAsPerQuarter();\n }\n }\n\n this.selectedStation = cloneDeep(selectedStation);\n this.isFilterDropdownValueChanged();\n }\n\n configModalOptions() {\n this.ngbModalOptions = {\n windowClass: \"dashboard-filter-modal\",\n };\n }\n\n getLoginUserId() {\n this.loggedInUserId = +JSON.parse(localStorage.getItem(\"userProfileData\")).userId;\n }\n\n isFilterDropdownValueChanged() {\n const calendarSelection =\n this.selectedValueForCalendarSelectionAndAllActiveAdvertisersToggle ===\n this.advertiserListingFilterPopupradioButtons.calendarSelection;\n this.isFilterValueChanged =\n !isEqual(this.clonedFilter.periodData?.startDate, this.selectedStartDate) ||\n !isEqual(this.clonedFilter.periodData?.endDate, this.selectedEndDate) ||\n !isEqual(this.clonedFilter.periodData?.periodMode, this.selectedPeriodData?.periodMode) ||\n !isEqual(this.clonedFilter.periodData?.calendarType, this.selectedPeriodData?.calendarType);\n\n if (!this.isFilterValueChanged) {\n this.isFilterValueChanged = !isEqual(this.clonedFilter.stationId, this.selectedStation?.id);\n }\n\n if (!this.isFilterValueChanged) {\n this.isFilterValueChanged =\n !isEqual(this.clonedFilter.includeExpiredAdvertisers, this.includeExpiredAdvertisers) ||\n !isEqual(this.clonedFilter.showCalendarSelection, calendarSelection);\n }\n }\n\n setStationDropdownConfig() {\n this.stationDropdownConfig = { ...this.annaGlobalService.defaultSingleSelectConfig };\n this.stationDropdownConfig.placeholder = \"No station selected\";\n }\n\n showCalendarSelectionAndAllActiveAdvertisersToggled(event: AdvertiserListingFilterPopupradioButtons) {\n this.selectedValueForCalendarSelectionAndAllActiveAdvertisersToggle = cloneDeep(event);\n this.includeExpiredAdvertisers =\n event === this.advertiserListingFilterPopupradioButtons.calendarSelection\n ? false\n : this.includeExpiredAdvertisers;\n this.isFilterDropdownValueChanged();\n }\n\n showOrHideExpiredAdvertisers() {\n this.includeExpiredAdvertisers = !this.includeExpiredAdvertisers;\n this.isFilterDropdownValueChanged();\n }\n}\n","<article class=\"selected-filters-container\">\n <section\n *ngIf=\"filterData\"\n class=\"filter-view\"\n >\n <div>\n <header class=\"header\">Station</header>\n <p class=\"selected-value\">\n {{ previousSelectedStation && previousSelectedStation.text ? previousSelectedStation.text : \"-\" }}\n </p>\n </div>\n\n <div>\n <ng-container\n *ngIf=\"!periodDataLoader\"\n [ngTemplateOutlet]=\"periodSelected\"\n ></ng-container>\n <ng-container\n *ngIf=\"periodDataLoader\"\n [ngTemplateOutlet]=\"periodSkeletonLoader\"\n ></ng-container>\n </div>\n </section>\n\n <section\n *ngIf=\"!filterData\"\n class=\"filter-view\"\n >\n <ng-container [ngTemplateOutlet]=\"skeletonLoader\"></ng-container>\n </section>\n\n <button\n *ngIf=\"!toDisable\"\n class=\"anna edit-button\"\n [disabled]=\"!filterData || noQuarterYearPresent || toDisable\"\n (click)=\"openFilterModal()\"\n >\n Edit\n </button>\n <ng-container\n *ngIf=\"toDisable\"\n [ngTemplateOutlet]=\"editButtonLoader\"\n ></ng-container>\n</article>\n\n<ng-template\n #dbFilterModal\n let-modal\n>\n <div class=\"modal-header confirm-modal-header\">\n <h3 class=\"modal-title\">Edit Filter</h3>\n </div>\n <div class=\"modal-body\">\n <div class=\"filter-dropdown\">\n <div class=\"popup-filter\">\n <header class=\"header\">Station</header>\n <anna-design-single-select\n *ngIf=\"stations.length\"\n [items]=\"stations\"\n [selectedItem]=\"selectedStation\"\n [config]=\"stationDropdownConfig\"\n (valueChanged)=\"stationSelected($event)\"\n >\n </anna-design-single-select>\n </div>\n\n <div>\n <div class=\"custom-radio-group\">\n <div\n class=\"d-flex bold-text\"\n (click)=\"\n selectedValueForCalendarSelectionAndAllActiveAdvertisersToggle =\n advertiserListingFilterPopupradioButtons?.showAllActiveAdvertisers;\n showCalendarSelectionAndAllActiveAdvertisersToggled(\n advertiserListingFilterPopupradioButtons?.showAllActiveAdvertisers\n )\n \"\n >\n <span\n class=\"mdi radio-button-icon\"\n [ngClass]=\"{\n 'mdi-radiobox-marked':\n selectedValueForCalendarSelectionAndAllActiveAdvertisersToggle ===\n advertiserListingFilterPopupradioButtons?.showAllActiveAdvertisers,\n 'mdi-radiobox-blank':\n selectedValueForCalendarSelectionAndAllActiveAdvertisersToggle !==\n advertiserListingFilterPopupradioButtons?.showAllActiveAdvertisers\n }\"\n ></span>\n {{ advertiserListingFilterPopupradioButtons?.showAllActiveAdvertisers }}\n </div>\n\n <label\n class=\"checkbox-and-message pl-30\"\n [ngClass]=\"{\n 'disabled-label':\n selectedValueForCalendarSelectionAndAllActiveAdvertisersToggle ===\n advertiserListingFilterPopupradioButtons?.calendarSelection\n }\"\n (click)=\"showOrHideExpiredAdvertisers()\"\n >\n <i\n class=\"mi mdi-check-box\"\n *ngIf=\"includeExpiredAdvertisers\"\n ></i>\n <i\n class=\"mi mdi-check-box-outline-blank\"\n *ngIf=\"!includeExpiredAdvertisers\"\n ></i>\n <span>Also include expired advertisers</span>\n </label>\n\n <br />\n\n <div\n class=\"d-flex bold-text\"\n (click)=\"\n selectedValueForCalendarSelectionAndAllActiveAdvertisersToggle =\n advertiserListingFilterPopupradioButtons?.calendarSelection;\n showCalendarSelectionAndAllActiveAdvertisersToggled(\n advertiserListingFilterPopupradioButtons?.calendarSelection\n )\n \"\n >\n <span\n class=\"mdi radio-button-icon\"\n [ngClass]=\"{\n 'mdi-radiobox-marked':\n selectedValueForCalendarSelectionAndAllActiveAdvertisersToggle ===\n advertiserListingFilterPopupradioButtons?.calendarSelection,\n 'mdi-radiobox-blank':\n selectedValueForCalendarSelectionAndAllActiveAdvertisersToggle !==\n advertiserListingFilterPopupradioButtons?.calendarSelection\n }\"\n ></span>\n {{ advertiserListingFilterPopupradioButtons?.calendarSelection }}\n </div>\n </div>\n </div>\n\n <div class=\"popup-filter pl-30\">\n <anna-design-generic-period-selection\n [selectedData]=\"persistingFilter?.periodData\"\n [disablePeriodSelection]=\"\n selectedValueForCalendarSelectionAndAllActiveAdvertisersToggle !==\n advertiserListingFilterPopupradioButtons.calendarSelection\n \"\n [PeriodOptions]=\"PeriodOptions\"\n [minMaxDateRangeForCalendar]=\"minMaxDateRangeForCalendar\"\n [startDateConsideringFactor]=\"StartDateConsideringFactor.FLIGHT_START_DATE\"\n (isFilterChanged)=\"isPeriodFilterChanged($event)\"\n [toShowAllPeriodMode]=\"toShowAllPeriodModeSetting\"\n [showAllSelectionInDropdown]=\"false\"\n [toShowAllMonthsOfYear]=\"false\"\n >\n </anna-design-generic-period-selection>\n </div>\n </div>\n <div class=\"btn-group\">\n <button\n class=\"anna cancel-button\"\n (click)=\"onCancelClicked()\"\n >\n Cancel\n </button>\n\n <button\n class=\"anna apply-button\"\n [disabled]=\"!isFilterValueChanged || !selectedStartDate || !selectedEndDate\"\n (click)=\"onApplyFilterAndUpdateNavigation()\"\n >\n Apply\n </button>\n </div>\n </div>\n</ng-template>\n\n<ng-template #periodSelected>\n <header class=\"header\">Period</header>\n <ng-container *ngIf=\"clonedFilter.periodData && clonedFilter?.showCalendarSelection\">\n <ng-container [ngSwitch]=\"clonedFilter.periodData.periodMode\">\n <p\n class=\"selected-value\"\n *ngSwitchCase=\"constants.Quarter\"\n >\n {{ clonedFilter.periodData.year }}\n {{ clonedFilter.periodData.quarter }}\n </p>\n </ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"!clonedFilter.periodData || !clonedFilter?.showCalendarSelection\">\n <p class=\"selected-value\">-</p>\n </ng-container>\n</ng-template>\n\n<ng-template #skeletonLoader>\n <anna-design-skt-loader\n [theme]=\"{\n height: '100%',\n width: '150px',\n 'margin-bottom': '0',\n 'margin-right': '20px',\n display: 'inline-block'\n }\"\n >\n </anna-design-skt-loader>\n <anna-design-skt-loader\n [theme]=\"{\n height: '100%',\n width: '170px',\n 'margin-bottom': '0',\n 'margin-right': '20px',\n display: 'inline-block'\n }\"\n >\n </anna-design-skt-loader>\n</ng-template>\n\n<ng-template #periodSkeletonLoader>\n <anna-design-skt-loader\n [theme]=\"{\n height: '100%',\n width: '167px',\n 'margin-bottom': '0',\n 'margin-right': '0px',\n display: 'inline-block'\n }\"\n >\n </anna-design-skt-loader>\n</ng-template>\n\n<ng-template #editButtonLoader>\n <anna-design-skt-loader\n [theme]=\"{\n height: '100%',\n width: '52px',\n 'margin-bottom': '0',\n 'margin-right': '0px',\n display: 'inline-block'\n }\"\n >\n </anna-design-skt-loader>\n</ng-template>\n","export interface IEasyFilters {\n isEnabled: boolean;\n isActive: boolean;\n filterName: string;\n onlyEnabled?: boolean;\n}\n\nexport class AdvertiserListingTableData {\n advertiserId: number;\n advertiserName: string;\n status: string;\n agency: string;\n primaryBuyerName: string;\n primaryBuyerEmail: string;\n secondaryBuyerName: string;\n secondaryBuyerEmail: string;\n isExpired: boolean;\n}\n\nexport enum TypeOfActionLinkForGtEnum {\n ADEVERTISER_NAME_CLICK = \"ADEVERTISER_NAME_CLICK\",\n}\n\nexport class AdvertiserEzFilterConstants {\n static readonly AWAITING_APPROVAL = \"AWAITING APPROVAL\";\n static readonly APPROVED = \"APPROVED\";\n}\n","import { Injectable } from \"@angular/core\";\n\n@Injectable({\n providedIn: \"root\",\n})\nexport class AdvTableListingService {\n latestEcListingTabFilters: any;\n}\n","import { NgClass, NgFor, NgIf, NgTemplateOutlet } from \"@angular/common\";\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n ViewChild,\n} from \"@angular/core\";\nimport { ActivatedRoute, Router } from \"@angular/router\";\nimport {\n AnnaCoreModule,\n AnnaFilterService,\n AnnaGtHelperService,\n AnnaNonEditableGenericTableComponent,\n AnnaPersistingFilterService,\n AnnaSortService,\n IGtGeneralConfig,\n IGtTableHeader,\n} from \"@annalib/anna-core\";\nimport {\n AnnaDesignComponentsLibModule,\n EasyFilters,\n GenericMessageBoxTheme,\n IBreadcrumb,\n MessageBoxData,\n} from \"@annalib/anna-design-components-lib\";\n// eslint-disable-next-line max-len\nimport { GenericBusinessRuleCommonSIBILogicService } from \"@annalib/anna-feature-lib/anna-feature-shared-lib\";\nimport dayjs from \"dayjs\";\nimport { cloneDeep, isEqual } from \"lodash-es\";\nimport { NgxSkeletonLoaderModule } from \"ngx-skeleton-loader\";\n\nimport { AdvertiserListingTableData, TypeOfActionLinkForGtEnum } from \"./model/adv-table-listing.model\";\nimport { AdvTableListingService } from \"./services/adv-table-listing.service\";\n\n@Component({\n selector: \"anna-feature-advertiser-table-listing\",\n templateUrl: \"./advertiser-table-listing.component.html\",\n styleUrls: [\"./advertiser-table-listing.component.scss\"],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n NgIf,\n AnnaDesignComponentsLibModule,\n NgFor,\n NgClass,\n NgTemplateOutlet,\n NgxSkeletonLoaderModule,\n AnnaCoreModule,\n ]\n})\nexport class AdvertiserTableListingComponent implements OnInit, OnChanges {\n @Input() advertiserTableData: AdvertiserListingTableData[];\n @Input() advertiserTableDataClonned: AdvertiserListingTableData[];\n @Input() loading: boolean = true;\n @Input() userType: \"SELLER\" | \"BUYER\" = \"SELLER\";\n @Input() gtGeneralConfig: IGtGeneralConfig;\n @Input() gtDimension: {\n rowHeight: number;\n headerHeight: number;\n dataOnTopHeight: number;\n marginFromBottom: number;\n };\n @Input() tableHeaders: IGtTableHeader[];\n @Input() easyFilters: EasyFilters[];\n @Input() showNoDataToDisplayInsideTable: boolean = true;\n @Input() showExpiredAdvertisers: boolean;\n @Input() numberOfEasyFilterLoader: number = 2;\n @Input() totalAdvertisersMessage: string = \"Total Advertisers\";\n @Input() popupFilters: any;\n\n @Output() advertiserNameClicked = new EventEmitter<{\n advertiser: AdvertiserListingTableData;\n breadcrumbsToPersist: IBreadcrumb[];\n }>();\n @Output() resetAllFilter = new EventEmitter();\n @Output() columnfilterAppliedToTable = new EventEmitter();\n @Output() easyFilterClicked = new EventEmitter();\n\n disableClearAllBtn: boolean = true;\n filtersFromTheUrL: any;\n breadcrumbsToPersist: IBreadcrumb[];\n messageBoxData: MessageBoxData;\n applyPersistedFilters: boolean;\n filtersAppliedChanges: boolean = false;\n @ViewChild(AnnaNonEditableGenericTableComponent) nonEditableGTComponent: AnnaNonEditableGenericTableComponent;\n\n constructor(\n private router: Router,\n private route: ActivatedRoute,\n private persistingFilterService: AnnaPersistingFilterService,\n private gtHelperService: AnnaGtHelperService,\n public annaFilterService: AnnaFilterService,\n public annaSortService: AnnaSortService,\n private businessRuleCommonSIBILogicService: GenericBusinessRuleCommonSIBILogicService,\n public advertiserTableListingService: AdvTableListingService,\n ) {}\n\n ngOnInit(): void {\n this.detectUrlChanges();\n this.setMessageForNoAdvertisers();\n // if (this.applyPersistedFilters) {\n // this.initPersistedFiltersForTable();\n // } else {\n // this.initFiltersForTable();\n // }\n }\n\n setMessageForNoAdvertisers() {\n const msg =\n // eslint-disable-next-line max-len\n \"Advertiser business rules will appear here for your approval once the station Account Executive forwards them.\";\n this.messageBoxData = new MessageBoxData(\n \"\",\n msg,\n \"mdi mdi-information\",\n `${GenericMessageBoxTheme.informationBlue.messageBoxClass} sm`,\n );\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (changes && changes?.advertiserTableData?.currentValue) {\n this.enableDisableClearAllBtn();\n if (!this.filtersAppliedChanges) {\n if (this.applyPersistedFilters) {\n this.initPersistedFiltersForTable();\n this.applyFilters();\n } else {\n this.initFiltersForTable();\n this.applyFilters();\n }\n }\n }\n\n this.filtersAppliedChanges = false;\n }\n\n initFiltersForTable() {\n this.annaFilterService.tooltipSelectedMap = new Map();\n this.annaFilterService.selectedRadio = null;\n this.annaFilterService.appliedFiltersArray = [];\n this.annaSortService.noSortingAppliedData = [];\n this.annaSortService.columnSortState = new Map();\n this.annaFilterService.updateStateOfAllTheKeys(this.annaSortService.columnSortState);\n }\n\n initPersistedFiltersForTable() {\n this.annaFilterService.tooltipSelectedMap = this.filtersFromTheUrL.selectedFilterData\n ? new Map(JSON.parse(this.filtersFromTheUrL.selectedFilterData))\n : new Map();\n this.annaFilterService.selectedRadio = null;\n this.annaFilterService.appliedFiltersArray = this.filtersFromTheUrL.appliedFilters\n ? cloneDeep(this.filtersFromTheUrL.appliedFilters)\n : [];\n\n this.annaSortService.columnSortState =\n this.filtersFromTheUrL && this.filtersFromTheUrL.sortState && this.applyPersistedFilters\n ? new Map(JSON.parse(this.filtersFromTheUrL.sortState))\n : new Map();\n if (this.annaFilterService.tooltipSelectedMap.has(\"Date\")) {\n const selectedDateObj: any = {};\n const date = this.annaFilterService.tooltipSelectedMap.get(\"Date\");\n selectedDateObj.fromDate = dayjs(date.fromDate);\n selectedDateObj.toDate = dayjs(date.toDate);\n this.annaFilterService.tooltipSelectedMap.set(\"Date\", selectedDateObj);\n }\n }\n\n detectUrlChanges() {\n this.route.queryParams.subscribe((params) => {\n this.updateLatestFilters(params);\n this.applyPersistedFilters = !!(\n params.filters && this.persistingFilterService.getActualQueryParams(params.filters)\n );\n this.setPersistedBreadcrumbsVariable(params.breadcrumbs);\n this.filtersFromTheUrL =\n params.filters && this.persistingFilterService.getActualQueryParams(params.filters)\n ? JSON.parse(this.persistingFilterService.getActualQueryParams(params.filters))\n : null;\n this.businessRuleCommonSIBILogicService.filtersFromTheUrlForAdvertiserBizTab = this.filtersFromTheUrL;\n this.businessRuleCommonSIBILogicService.stationIdfiltersFromTheUrlForAdvertiserBizTab = JSON.parse(\n this.persistingFilterService.getActualQueryParams(params.stationId),\n );\n });\n }\n\n setPersistedBreadcrumbsVariable(filter: string) {\n this.breadcrumbsToPersist =\n filter && this.persistingFilterService.getActualQueryParams(filter)\n ? JSON.parse(this.persistingFilterService.getActualQueryParams(filter))\n : null;\n }\n\n updateLatestFilters(queryParams: any) {\n const latestFilters = this.getLatestFilters();\n const updatedQueryParams = Object.keys(queryParams).length === 0 ? null : queryParams;\n\n if (!isEqual(updatedQueryParams, latestFilters)) {\n this.setLatestFilters(cloneDeep(updatedQueryParams));\n }\n }\n\n filterAppliedToTable(filteredData: AdvertiserListingTableData[]) {\n this.advertiserTableData = cloneDeep(filteredData);\n this.disableClearAllBtn = this.gtHelperService.enableOrDisableClearAllBtn();\n this.updateNavigationHistory();\n this.filtersAppliedChanges = true;\n this.columnfilterAppliedToTable.emit();\n }\n\n sortingAppliedToTable(sortedData: AdvertiserListingTableData[]) {\n this.advertiserTableData = cloneDeep(sortedData);\n this.disableClearAllBtn = this.gtHelperService.enableOrDisableClearAllBtn();\n this.updateNavigationHistory();\n }\n\n updateFiltersInURL() {\n const latestQueryParams = this.prepareQueryParamsOnFilter();\n let queryParams = {};\n\n if (\n Object.keys(latestQueryParams).length > 0 ||\n (this.userType === \"BUYER\" && this.showExpiredAdvertisers) ||\n Object.keys(this.popupFilters).length > 0 ||\n Object.keys(this.popupFilters).length > 0\n ) {\n const hashedQueryParams = this.persistingFilterService.storeKeyValueInLocalStorage(latestQueryParams);\n if (Object.keys(this.popupFilters).length > 0) {\n Object.assign(queryParams, { popupFilters: this.popupFilters });\n }\n if (Object.keys(latestQueryParams).length > 0) {\n queryParams = { filters: hashedQueryParams };\n }\n if (this.userType === \"BUYER\" && this.showExpiredAdvertisers) {\n Object.assign(queryParams, { showExpiredAdvertisers: this.showExpiredAdvertisers });\n }\n this.router.navigate([], {\n queryParams,\n relativeTo: this.route.parent,\n queryParamsHandling: \"merge\",\n });\n } else {\n this.router.navigate([], {\n queryParams,\n relativeTo: this.route.parent,\n queryParamsHandling: \"merge\",\n });\n }\n }\n\n prepareQueryParamsOnFilter() {\n const query: any = {};\n\n if (this.annaFilterService.appliedFiltersArray.length > 0) {\n query.appliedFilters = this.annaFilterService.appliedFiltersArray;\n query.selectedFilterData = JSON.stringify(Array.from(this.annaFilterService.tooltipSelectedMap));\n }\n if (this.annaSortService.columnSortState && this.gtHelperService.isSortingAppliedToTable()) {\n query.sortState = JSON.stringify(Array.from(this.annaSortService.columnSortState));\n }\n return query;\n }\n\n tableActionClicked(rowData: { data: AdvertiserListingTableData; id: TypeOfActionLinkForGtEnum }) {\n const selectedAdvertiser = rowData.data;\n switch (rowData.id) {\n case TypeOfActionLinkForGtEnum.ADEVERTISER_NAME_CLICK:\n this.goToAdvertiserBusinessRules(selectedAdvertiser);\n break;\n // no default\n }\n }\n\n goToAdvertiserBusinessRules(advertiser: AdvertiserListingTableData) {\n const emitableData = {\n advertiser,\n breadcrumbsToPersist: this.breadcrumbsToPersist,\n };\n this.advertiserNameClicked.emit(emitableData);\n }\n\n applyFilters() {\n if (this.applyPersistedFilters) {\n this.disableClearAllBtn = false;\n this.annaFilterService.updateStateOfAllTheKeys(this.annaSortService.columnSortState);\n this.advertiserTableData = this.annaFilterService.filterData(this.advertiserTableDataClonned, \"\");\n this.annaSortService.noSortingAppliedData = cloneDeep(this.advertiserTableData);\n this.callSort();\n } else {\n this.annaSortService.noSortingAppliedData = cloneDeep(this.advertiserTableData);\n this.disableClearAllBtn = true;\n }\n }\n\n\n callSort() {\n if (!this.annaSortService?.columnSortState) return;\n this.annaSortService.columnSortState.forEach((value, key) => {\n if (value === \"ASC\") {\n this.advertiserTableData = this.annaSortService.sortDataForComponentOtherThanLurAndCsrPage(\n true,\n this.advertiserTableData,\n key,\n );\n } else if (value === \"DESC\") {\n this.advertiserTableData = this.annaSortService.sortDataForComponentOtherThanLurAndCsrPage(\n false,\n this.advertiserTableData,\n key,\n );\n }\n });\n }\n\n intelliFilterClicked(emittedObj: any) {\n this.advertiserTableData = emittedObj.filteredData;\n\n this.enableDisableClearAllBtn();\n this.updateNavigationHistory();\n this.filtersAppliedChanges = true;\n this.easyFilterClicked.emit();\n }\n\n prepareQueryParamOnFilterApplication() {\n const query: any = {};\n let latestFilters = this.getLatestFilters();\n\n if (this.annaFilterService.appliedFiltersArray.length > 0) {\n query.appliedFilters = this.annaFilterService.appliedFiltersArray;\n query.selectedFilterData = JSON.stringify(Array.from(this.annaFilterService.tooltipSelectedMap));\n }\n\n if (this.checkIfSortIsApplied()) {\n query.sortState = JSON.stringify(Array.from(this.annaSortService.columnSortState));\n }\n\n latestFilters = this.getLatestFilters();\n\n if (Object.keys(query).length > 0) {\n latestFilters = latestFilters || {};\n const hashedQueryParams = this.persistingFilterService.storeKeyValueInLocalStorage(query);\n latestFilters.filters = hashedQueryParams;\n } else {\n latestFilters = [];\n }\n this.setLatestFilters(latestFilters);\n\n return latestFilters;\n }\n\n checkIfSortIsApplied() {\n let isSortingApplied = false;\n this.annaSortService.columnSortState.forEach((val, key) => {\n if (val === \"ASC\" || val === \"DESC\") {\n isSortingApplied = true;\n }\n });\n\n return isSortingApplied;\n }\n\n getLatestFilters() {\n return this.advertiserTableListingService.latestEcListingTabFilters;\n }\n\n setLatestFilters(queryParams: any) {\n this.advertiserTableListingService.latestEcListingTabFilters = queryParams;\n }\n\n enableDisableClearAllBtn() {\n if (!this.annaSortService?.columnSortState) return;\n let isSortApplied: boolean = false;\n this.annaSortService.columnSortState.forEach((val, key) => {\n if (val === \"ASC\" || val === \"DESC\") {\n isSortApplied = true;\n }\n });\n\n this.disableClearAllBtn = this.annaFilterService.appliedFiltersArray.length === 0 && !isSortApplied;\n }\n\n updateNavigationHistory() {\n const queryParams = this.prepareQueryParamOnFilterApplication();\n\n if (this.popupFilters && Object.keys(this.popupFilters).length > 0) {\n Object.assign(queryParams, { popupFilters: this.popupFilters });\n }\n if (this.userType === \"BUYER\" && this.showExpiredAdvertisers) {\n Object.assign(queryParams, { showExpiredAdvertisers: this.showExpiredAdvertisers });\n }\n const path = \"business-rules/advertisers\";\n\n if (queryParams && Object.keys(queryParams).length > 0) {\n this.router.navigate([`${path}`], {\n queryParams,\n });\n } else {\n this.router.navigate([`${path}`], {});\n }\n }\n\n clearAllFiltersAndSorting() {\n this.nonEditableGTComponent?.setScrollToInitialPosition();\n this.disableClearAllBtn = true;\n this.initFiltersForTable();\n this.ClearFandS();\n this.updateNavigationHistory();\n this.filtersAppliedChanges = true;\n this.resetAllFilter.emit();\n }\n\n ClearFandS() {\n this.advertiserTableData = cloneDeep(this.advertiserTableDataClonned);\n this.annaSortService.noSortingAppliedData = cloneDeep(this.advertiserTableData);\n this.annaFilterService.updateStateOfAllTheKeys(this.annaSortService.columnSortState);\n }\n}\n","<section class=\"advertiser-container {{ userType }}\">\n <ng-container *ngIf=\"!showNoDataToDisplayInsideTable && !loading && advertiserTableDataClonned.length === 0\">\n <anna-design-message-box\n class=\"no-data-info-msg\"\n [messageBoxData]=\"messageBoxData\"\n [hide]=\"false\"\n [headerAsBlockElement]=\"false\"\n [showHyphen]=\"false\"\n >\n </anna-design-message-box>\n </ng-container>\n <ng-container\n *ngIf=\"loading || (!loading && (showNoDataToDisplayInsideTable || advertiserTableDataClonned.length > 0))\"\n >\n <!-- <div class=\"d-flex p-8\" *ngIf=\"userType === 'SELLER'\">\n <anna-design-easy-filters\n [showLoader]=\"loading\"\n [numberOfItemsForLoader]=\"numberOfEasyFilterLoader\"\n [easyFilters]=\"easyFilters\"\n [tableData]=\"advertiserTableData\"\n [clonedTableData]=\"advertiserTableDataClonned\"\n (easyFilterClickEvent)=\"intelliFilterClicked($event)\"\n >\n </anna-design-easy-filters>\n </div> -->\n\n <div class=\"main-table\">\n <div class=\"count-text\">\n <anna-design-skt-loader\n *ngIf=\"loading\"\n [theme]=\"{ height: '12px', width: '120px', 'margin-bottom': '0', 'margin-top': '0' }\"\n >\n </anna-design-skt-loader>\n <span *ngIf=\"!loading && advertiserTableData?.length\"\n >{{ totalAdvertisersMessage }}: <b>{{ advertiserTableData.length }}</b></span\n >\n </div>\n\n <button\n *ngIf=\"!loading\"\n class=\"clear-all-btn\"\n [disabled]=\"disableClearAllBtn\"\n (click)=\"clearAllFiltersAndSorting()\"\n >\n Reset all filters\n </button>\n\n <anna-core-non-editable-generic-table-lib\n [showSkeletonLoading]=\"loading\"\n [ngClass]=\"{\n 'advertiser-table-no-data-table': !loading && advertiserTableData && !advertiserTableData.length\n }\"\n [tableHeaders]=\"tableHeaders\"\n [tableData]=\"advertiserTableData\"\n [clonedTableData]=\"advertiserTableDataClonned\"\n [gtGeneralConfig]=\"gtGeneralConfig\"\n [gtDimension]=\"gtDimension\"\n [clickableRow]=\"false\"\n (filterAppliedToTable)=\"filterAppliedToTable($event)\"\n (sortingAppliedToTable)=\"sortingAppliedToTable($event)\"\n (gtTextActionClicked)=\"tableActionClicked($event)\"\n (clickableDataClicked)=\"tableActionClicked($event)\"\n >\n </anna-core-non-editable-generic-table-lib>\n </div>\n </ng-container>\n</section>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i3","i4.AdvTableListingService","i5"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"annalib-anna-feature-biz-rules-advertiser-listing.mjs","sources":["../../../projects/anna-feature-biz-rules/advertiser-listing/src/advertiser-filter-modal/models/advertiser-filter-modal.model.ts","../../../projects/anna-feature-biz-rules/advertiser-listing/src/advertiser-filter-modal/advertiser-filter-modal.component.ts","../../../projects/anna-feature-biz-rules/advertiser-listing/src/advertiser-filter-modal/advertiser-filter-modal.component.html","../../../projects/anna-feature-biz-rules/advertiser-listing/src/advertiser-table-listing/model/adv-table-listing.model.ts","../../../projects/anna-feature-biz-rules/advertiser-listing/src/advertiser-table-listing/services/adv-table-listing.service.ts","../../../projects/anna-feature-biz-rules/advertiser-listing/src/advertiser-table-listing/advertiser-table-listing.component.ts","../../../projects/anna-feature-biz-rules/advertiser-listing/src/advertiser-table-listing/advertiser-table-listing.component.html","../../../projects/anna-feature-biz-rules/advertiser-listing/annalib-anna-feature-biz-rules-advertiser-listing.ts"],"sourcesContent":["import { PersistedDashboardPrimaryFilters } from \"@annalib/anna-design-components-lib\";\n\nexport enum AdvertiserListingFilterPopupradioButtons {\n showAllActiveAdvertisers = \"Show all active advertisers\",\n calendarSelection = \"Calendar selection\",\n}\n\nexport interface AdvertiserListingFilterPopup extends PersistedDashboardPrimaryFilters {\n showCalendarSelection: boolean;\n stationName?: string;\n includeExpiredAdvertisers: boolean;\n}\n\nexport interface AdvertiserListingFilterSelectionPopUp extends AdvertiserListingFilterPopup {\n updateNavigation?: boolean;\n}\n","/* eslint-disable import/no-extraneous-dependencies */\n// Angular import statements\nimport {\n DatePipe,\n NgClass,\n NgFor,\n NgIf,\n NgSwitch,\n NgSwitchCase,\n NgSwitchDefault,\n NgTemplateOutlet,\n} from \"@angular/common\";\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n OnChanges,\n Output,\n SimpleChanges,\n TemplateRef,\n ViewChild,\n} from \"@angular/core\";\nimport { FormsModule } from \"@angular/forms\";\nimport { MatRadioModule } from \"@angular/material/radio\";\n// Anna Lib\nimport {\n AnnaGlobalConfigService,\n ICustomSingleSelect,\n IRadioButtonComponentConfig,\n UpdateStationIdService,\n} from \"@annalib/anna-core\";\n// User defined Imports\nimport {\n CalendarQuarterYearFilterService,\n DashboardFilterModalConstants,\n GenericPeriodSelectionComponent,\n ICalendarTypeResponse,\n IdTextForDropdown,\n IYearQuarter,\n PeriodSelectionPopUp,\n PrimaryFiltersData,\n SingleSelectComponent,\n SkeletonLoaderComponent,\n StartDateConsideringFactor,\n} from \"@annalib/anna-design-components-lib\";\nimport { NgbModal, NgbModalOptions, NgbModalRef } from \"@ng-bootstrap/ng-bootstrap\";\n// Third party import statements\nimport dayjs from \"dayjs\";\nimport minMax from \"dayjs/plugin/minMax\";\nimport { cloneDeep, isEqual } from \"lodash-es\";\n\nimport {\n AdvertiserListingFilterPopup,\n AdvertiserListingFilterPopupradioButtons,\n AdvertiserListingFilterSelectionPopUp,\n} from \"./models/advertiser-filter-modal.model\";\n\n@Component({\n selector: \"anna-feature-advertiser-filter-modal\",\n templateUrl: \"./advertiser-filter-modal.component.html\",\n styleUrls: [\"./advertiser-filter-modal.component.scss\"],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n NgIf,\n NgFor,\n NgClass,\n FormsModule,\n NgTemplateOutlet,\n MatRadioModule,\n SingleSelectComponent,\n GenericPeriodSelectionComponent,\n NgSwitch,\n NgSwitchCase,\n NgSwitchDefault,\n SkeletonLoaderComponent,\n DatePipe,\n ]\n})\nexport class AdvertiserFilterModalComponent implements OnChanges {\n @Input() toDisable: boolean;\n @Input() filterData: PrimaryFiltersData;\n @Input() persistingFilter: AdvertiserListingFilterPopup;\n @Input() stationIdsWithValidLicense: number[] = [];\n\n @Output() applyFilter = new EventEmitter<any>();\n @Output() getInitialFilter = new EventEmitter<any>();\n\n @ViewChild(\"dbFilterModal\", { static: true }) private dbFilterModal: TemplateRef<any>;\n modalRef: NgbModalRef;\n ngbModalOptions: NgbModalOptions;\n constants = DashboardFilterModalConstants;\n\n clonedFilter: AdvertiserListingFilterSelectionPopUp;\n\n stationDropdownConfig: ICustomSingleSelect;\n calendarTypeConfig: IRadioButtonComponentConfig;\n\n selectedStation: IdTextForDropdown;\n stations: IdTextForDropdown[];\n selectedPeriodData: PeriodSelectionPopUp;\n selectedStartDate: string;\n selectedEndDate: string;\n includeExpiredAdvertisers: boolean;\n\n minMaxDateRangeForCalendar: { startDate: string; endDate: string };\n\n loggedInUserId: number;\n\n @Input() toShowAllPeriodModeSetting: boolean = false;\n @Input() PeriodOptions: string[] = [\"Quarter\"];\n\n defaultQuarterYear: string;\n defaultQuarter: string;\n calendarData: any;\n\n DATE_FORMAT = \"MM/DD/YYYY\";\n DATE_FORMAT_HTML = \"MM/dd/YYYY\";\n MONTH_DATE_FORMAT_HTML = \"d MMM\";\n isFilterValueChanged: boolean;\n\n noQuarterYearPresent: boolean;\n previousSelectedStation: IdTextForDropdown;\n previousSelectedOwnershipGroup: IdTextForDropdown;\n\n periodDataLoader: boolean;\n initialFiltersForStationAndPeriod: AdvertiserListingFilterPopup;\n StartDateConsideringFactor = StartDateConsideringFactor;\n selectedValueForCalendarSelectionAndAllActiveAdvertisersToggle: AdvertiserListingFilterPopupradioButtons;\n advertiserListingFilterPopupradioButtons = AdvertiserListingFilterPopupradioButtons;\n\n constructor(\n private modalService: NgbModal,\n private annaGlobalService: AnnaGlobalConfigService,\n private quarterFilterService: CalendarQuarterYearFilterService,\n private updateStationIdService: UpdateStationIdService,\n ) {\n dayjs.extend(minMax);\n this.configModalOptions();\n this.setStationDropdownConfig();\n this.resetClonedFilter();\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (changes.filterData && changes.filterData.currentValue) {\n if (this.stationIdsWithValidLicense?.length) {\n this.filterData.stationArr = this.filterData.stationArr.filter((station) =>\n this.stationIdsWithValidLicense.includes(station.id),\n );\n }\n this.disableEditFilterBtn();\n this.getLoginUserId();\n this.setFilterData();\n }\n }\n\n setInitialFiltersForComponent() {\n this.initialFiltersForStationAndPeriod = {\n stationId: this.selectedStation.id,\n showCalendarSelection:\n this.selectedValueForCalendarSelectionAndAllActiveAdvertisersToggle ===\n this.advertiserListingFilterPopupradioButtons.calendarSelection,\n includeExpiredAdvertisers: this.includeExpiredAdvertisers,\n };\n const calendarData = this.filterData.stationCalendarTypeMap.get(this.selectedStation.id);\n\n if (this.calendarData.BroadcastQuarterYear.length) {\n let selectedQuarter;\n const quarter = calendarData.BroadcastQuarterYear;\n for (let i = 0; i < quarter.length; i++) {\n selectedQuarter = quarter[i].Quarters.filter((data: any) => data.IsCurrentQuarter);\n if (selectedQuarter.length) {\n break;\n }\n }\n\n if (selectedQuarter) {\n const defaultQuarterYear = dayjs(selectedQuarter[0].EndDate).format(\"YYYY\");\n const defaultQuarter = selectedQuarter[0].DisplayDate;\n\n const selectedStartDate = dayjs(selectedQuarter[0].StartDate).format(this.DATE_FORMAT);\n const selectedEndDate = dayjs(selectedQuarter[0].EndDate).format(this.DATE_FORMAT);\n\n this.initialFiltersForStationAndPeriod.periodData = {\n year: defaultQuarterYear,\n quarter: defaultQuarter,\n calendarType: this.constants.Broadcast,\n periodMode: this.constants.Quarter,\n month: null,\n isEntireFlightPeriod: false,\n startDate: selectedStartDate,\n endDate: selectedEndDate,\n };\n } else {\n this.initialFiltersForStationAndPeriod.periodData = null;\n }\n }\n\n this.getInitialFilter.emit(this.initialFiltersForStationAndPeriod);\n }\n\n disableEditFilterBtn() {\n this.noQuarterYearPresent = true;\n this.filterData.stationCalendarTypeMap.forEach((value, key) => {\n if (value.BroadcastQuarterYear.length > 0) {\n this.noQuarterYearPresent = false;\n }\n });\n }\n\n setFilterData() {\n this.periodDataLoader = true;\n this.setStationData();\n this.setShowCalendarSelectionValue();\n this.setIncludeExcludedAdvertisersValue();\n this.setCalendarQuarterFilter();\n this.callBackFuncOnInitialSetup();\n }\n\n setShowCalendarSelectionValue() {\n const showCalendarSelection =\n this.persistingFilter && this.persistingFilter.showCalendarSelection !== undefined\n ? this.persistingFilter.showCalendarSelection\n : true;\n this.selectedValueForCalendarSelectionAndAllActiveAdvertisersToggle = showCalendarSelection\n ? this.advertiserListingFilterPopupradioButtons.calendarSelection\n : this.advertiserListingFilterPopupradioButtons.showAllActiveAdvertisers;\n }\n\n setIncludeExcludedAdvertisersValue() {\n this.includeExpiredAdvertisers =\n this.persistingFilter && this.persistingFilter.includeExpiredAdvertisers !== undefined\n ? this.persistingFilter.includeExpiredAdvertisers\n : false;\n }\n\n callBackFuncOnInitialSetup() {\n this.setInitialFiltersForComponent();\n this.setClonedDataAndEmitFilters();\n this.periodDataLoader = false;\n this.isFilterValueChanged = false;\n }\n\n setStationData() {\n this.stations = this.filterData.stationArr;\n if (this.persistingFilter && this.persistingFilter.stationId) {\n this.selectedStation = this.stations.some((station) => station.id === this.persistingFilter.stationId)\n ? this.stations.find((station) => station.id === this.persistingFilter.stationId)\n : this.stations[0];\n } else {\n this.selectedStation = this.stations[0];\n }\n this.previousSelectedStation = cloneDeep(this.selectedStation);\n }\n\n setCalendarQuarterFilter() {\n this.selectedPeriodData =\n this.persistingFilter && this.persistingFilter.periodData ? this.persistingFilter.periodData : null;\n this.setGenericPeriodSelectionComponentData();\n if (this.isPeriodData()) {\n this.setStartAndEndDate(this.calendarData);\n this.setMinMaxDateRangeAsPerQuarter();\n }\n }\n\n isPeriodData() {\n return this.calendarData.BroadcastQuarterYear.length;\n }\n\n setGenericPeriodSelectionComponentData() {\n this.calendarData = this.filterData.stationCalendarTypeMap.get(this.selectedStation.id);\n this.quarterFilterService.publishQuarterFilterData({ filterData: this.calendarData, selectedFilter: null });\n }\n\n setMinMaxDateRangeAsPerQuarter() {\n if (this.calendarData.BroadcastQuarterYear.length > 0) {\n this.minMaxDateRangeForCalendar = null;\n if (this.isFiscalPeriod()) {\n this.setMinMaxDate(this.calendarData.FiscalQuarterYear);\n } else {\n this.setMinMaxDate(this.calendarData.BroadcastQuarterYear);\n }\n }\n }\n\n setMinMaxDate(quarterYear: IYearQuarter[]) {\n const totalYear = quarterYear.length - 1;\n const totalQuarterInLastYear = quarterYear[totalYear].Quarters.length - 1;\n\n const startDate = dayjs(quarterYear[0].Quarters[0].StartDate).format(this.DATE_FORMAT);\n const endDate = dayjs(quarterYear[totalYear].Quarters[totalQuarterInLastYear].EndDate).format(this.DATE_FORMAT);\n this.minMaxDateRangeForCalendar = { startDate, endDate };\n }\n\n isFiscalPeriod() {\n return (\n (this.persistingFilter &&\n this.persistingFilter.periodData &&\n this.persistingFilter.periodData.calendarType === this.constants.Fiscal) ||\n (this.selectedPeriodData && this.selectedPeriodData.calendarType === this.constants.Fiscal)\n );\n }\n\n setStartAndEndDate(calendarData: ICalendarTypeResponse) {\n if (this.persistingFilter && this.persistingFilter.periodData) {\n this.selectedStartDate = this.persistingFilter.periodData.startDate;\n this.selectedEndDate = this.persistingFilter.periodData.endDate;\n this.defaultQuarterYear = null;\n this.defaultQuarter = null;\n } else {\n this.setDefaultPeriodFilter(calendarData);\n }\n }\n\n openFilterModal() {\n this.previousSelectedStation = null;\n if (this.persistingFilter && this.persistingFilter.stationId) {\n this.previousSelectedStation = this.stations?.filter((n) => n.id === this.persistingFilter.stationId)[0];\n } else if (this.stations) {\n this.previousSelectedStation = this.stations[0];\n }\n this.modalRef = this.modalService.open(this.dbFilterModal, this.ngbModalOptions);\n }\n\n closeOptionsModal() {\n this.modalRef.close();\n }\n\n isPeriodFilterChanged(periodFilter: PeriodSelectionPopUp) {\n this.selectedPeriodData = cloneDeep(periodFilter);\n this.selectedStartDate = periodFilter.startDate;\n this.selectedEndDate = periodFilter.endDate;\n this.setMinMaxDateRangeAsPerQuarter();\n this.isFilterDropdownValueChanged();\n }\n\n // default is broadcast quater year\n setDefaultPeriodFilter(calendarData: ICalendarTypeResponse) {\n let selectedQuarter;\n const quarter = calendarData.BroadcastQuarterYear;\n for (let i = 0; i < quarter.length; i++) {\n selectedQuarter = quarter[i].Quarters.filter((data) => data.IsCurrentQuarter);\n if (selectedQuarter.length) {\n break;\n }\n }\n this.defaultQuarterYear = dayjs(selectedQuarter[0].EndDate).format(\"YYYY\");\n this.defaultQuarter = selectedQuarter[0].DisplayDate;\n\n this.selectedStartDate = dayjs(selectedQuarter[0].StartDate).format(this.DATE_FORMAT);\n this.selectedEndDate = dayjs(selectedQuarter[0].EndDate).format(this.DATE_FORMAT);\n }\n\n onApplyFilterAndUpdateNavigation() {\n this.updateStationIdService.updateStationIdInLocalStorage([this.selectedStation.id]);\n this.previousSelectedStation = cloneDeep(this.selectedStation);\n this.setClonedDataAndEmitFilters();\n this.closeOptionsModal();\n }\n\n setClonedDataAndEmitFilters() {\n const filterApplied = this.setClonedFilter();\n this.applyFilter.emit(filterApplied);\n }\n\n setClonedFilter() {\n const showCalendarSelection: boolean =\n this.selectedValueForCalendarSelectionAndAllActiveAdvertisersToggle ===\n this.advertiserListingFilterPopupradioButtons.calendarSelection;\n this.clonedFilter = {\n periodData: cloneDeep(this.selectedPeriodData),\n stationId: this.selectedStation.id,\n stationName: this.selectedStation.text,\n includeExpiredAdvertisers: this.includeExpiredAdvertisers,\n showCalendarSelection,\n };\n this.updateStationIdService.updateStationIdInLocalStorage([this.clonedFilter.stationId]);\n this.addIncludeExpiredAdvertisersClonedFilter(this.includeExpiredAdvertisers);\n this.addShowCalendarSelectionClonedFilter(showCalendarSelection);\n this.setDefaultSelectedPeriodData();\n return this.clonedFilter;\n }\n\n addIncludeExpiredAdvertisersClonedFilter(val: boolean) {\n this.clonedFilter.includeExpiredAdvertisers = val !== undefined ? val : false;\n }\n\n addShowCalendarSelectionClonedFilter(val: boolean) {\n this.clonedFilter.showCalendarSelection = val !== undefined ? val : true;\n }\n\n setDefaultSelectedPeriodData() {\n if (this.clonedFilter.periodData == null && this.defaultQuarter) {\n this.clonedFilter.periodData = {\n year: this.defaultQuarterYear,\n quarter: this.defaultQuarter,\n calendarType: this.constants.Broadcast,\n periodMode: this.constants.Quarter,\n month: null,\n startDate: this.selectedStartDate,\n endDate: this.selectedEndDate,\n };\n this.clonedFilter = cloneDeep(this.clonedFilter);\n } else {\n this.clonedFilter.periodData = cloneDeep(this.selectedPeriodData);\n }\n }\n\n onCancelClicked() {\n this.selectedStartDate = this.clonedFilter.periodData?.startDate;\n this.selectedEndDate = this.clonedFilter.periodData?.endDate;\n\n this.selectedPeriodData = cloneDeep(this.clonedFilter.periodData);\n\n this.setPreviousDataForStationOrOG();\n this.setGenericPeriodSelectionComponentData();\n this.setMinMaxDateRangeAsPerQuarter();\n this.closeOptionsModal();\n }\n\n setPreviousDataForStationOrOG() {\n this.selectedStation = this.stations.filter((n) => n.id === this.clonedFilter.stationId)[0];\n }\n\n resetClonedFilter() {\n this.clonedFilter = {\n periodData: null,\n stationId: null,\n updateNavigation: null,\n showCalendarSelection: true,\n includeExpiredAdvertisers: false,\n };\n\n this.addIncludeExpiredAdvertisersClonedFilter(false);\n this.addShowCalendarSelectionClonedFilter(true);\n }\n\n stationSelected(selectedStation: IdTextForDropdown) {\n this.selectedStation = selectedStation;\n const previousQuarterFilter = this.filterData.stationCalendarTypeMap.get(this.previousSelectedStation.id);\n const currentQuarterFilter = this.filterData.stationCalendarTypeMap.get(this.selectedStation.id);\n\n if (previousQuarterFilter.BroadcastQuarterYear.length !== currentQuarterFilter.BroadcastQuarterYear.length) {\n this.setGenericPeriodSelectionComponentData();\n if (this.isPeriodData()) {\n this.setStartAndEndDate(this.calendarData);\n this.setMinMaxDateRangeAsPerQuarter();\n }\n }\n\n this.selectedStation = cloneDeep(selectedStation);\n this.isFilterDropdownValueChanged();\n }\n\n configModalOptions() {\n this.ngbModalOptions = {\n windowClass: \"dashboard-filter-modal\",\n };\n }\n\n getLoginUserId() {\n this.loggedInUserId = +JSON.parse(localStorage.getItem(\"userProfileData\")).userId;\n }\n\n isFilterDropdownValueChanged() {\n const calendarSelection =\n this.selectedValueForCalendarSelectionAndAllActiveAdvertisersToggle ===\n this.advertiserListingFilterPopupradioButtons.calendarSelection;\n this.isFilterValueChanged =\n !isEqual(this.clonedFilter.periodData?.startDate, this.selectedStartDate) ||\n !isEqual(this.clonedFilter.periodData?.endDate, this.selectedEndDate) ||\n !isEqual(this.clonedFilter.periodData?.periodMode, this.selectedPeriodData?.periodMode) ||\n !isEqual(this.clonedFilter.periodData?.calendarType, this.selectedPeriodData?.calendarType);\n\n if (!this.isFilterValueChanged) {\n this.isFilterValueChanged = !isEqual(this.clonedFilter.stationId, this.selectedStation?.id);\n }\n\n if (!this.isFilterValueChanged) {\n this.isFilterValueChanged =\n !isEqual(this.clonedFilter.includeExpiredAdvertisers, this.includeExpiredAdvertisers) ||\n !isEqual(this.clonedFilter.showCalendarSelection, calendarSelection);\n }\n }\n\n setStationDropdownConfig() {\n this.stationDropdownConfig = { ...this.annaGlobalService.defaultSingleSelectConfig };\n this.stationDropdownConfig.placeholder = \"No station selected\";\n }\n\n showCalendarSelectionAndAllActiveAdvertisersToggled(event: AdvertiserListingFilterPopupradioButtons) {\n this.selectedValueForCalendarSelectionAndAllActiveAdvertisersToggle = cloneDeep(event);\n this.includeExpiredAdvertisers =\n event === this.advertiserListingFilterPopupradioButtons.calendarSelection\n ? false\n : this.includeExpiredAdvertisers;\n this.isFilterDropdownValueChanged();\n }\n\n showOrHideExpiredAdvertisers() {\n this.includeExpiredAdvertisers = !this.includeExpiredAdvertisers;\n this.isFilterDropdownValueChanged();\n }\n}\n","<article class=\"selected-filters-container\">\n <section\n *ngIf=\"filterData\"\n class=\"filter-view\"\n >\n <div>\n <header class=\"header\">Station</header>\n <p class=\"selected-value\">\n {{ previousSelectedStation && previousSelectedStation.text ? previousSelectedStation.text : \"-\" }}\n </p>\n </div>\n\n <div>\n <ng-container\n *ngIf=\"!periodDataLoader\"\n [ngTemplateOutlet]=\"periodSelected\"\n ></ng-container>\n <ng-container\n *ngIf=\"periodDataLoader\"\n [ngTemplateOutlet]=\"periodSkeletonLoader\"\n ></ng-container>\n </div>\n </section>\n\n <section\n *ngIf=\"!filterData\"\n class=\"filter-view\"\n >\n <ng-container [ngTemplateOutlet]=\"skeletonLoader\"></ng-container>\n </section>\n\n <button\n *ngIf=\"!toDisable\"\n class=\"anna edit-button\"\n [disabled]=\"!filterData || noQuarterYearPresent || toDisable\"\n (click)=\"openFilterModal()\"\n >\n Edit\n </button>\n <ng-container\n *ngIf=\"toDisable\"\n [ngTemplateOutlet]=\"editButtonLoader\"\n ></ng-container>\n</article>\n\n<ng-template\n #dbFilterModal\n let-modal\n>\n <div class=\"modal-header confirm-modal-header\">\n <h3 class=\"modal-title\">Edit Filter</h3>\n </div>\n <div class=\"modal-body\">\n <div class=\"filter-dropdown\">\n <div class=\"popup-filter\">\n <header class=\"header\">Station</header>\n <anna-design-single-select\n *ngIf=\"stations.length\"\n [items]=\"stations\"\n [selectedItem]=\"selectedStation\"\n [config]=\"stationDropdownConfig\"\n (valueChanged)=\"stationSelected($event)\"\n >\n </anna-design-single-select>\n </div>\n\n <div>\n <div class=\"custom-radio-group\">\n <div\n class=\"d-flex bold-text\"\n (click)=\"\n selectedValueForCalendarSelectionAndAllActiveAdvertisersToggle =\n advertiserListingFilterPopupradioButtons?.showAllActiveAdvertisers;\n showCalendarSelectionAndAllActiveAdvertisersToggled(\n advertiserListingFilterPopupradioButtons?.showAllActiveAdvertisers\n )\n \"\n >\n <span\n class=\"mdi radio-button-icon\"\n [ngClass]=\"{\n 'mdi-radiobox-marked':\n selectedValueForCalendarSelectionAndAllActiveAdvertisersToggle ===\n advertiserListingFilterPopupradioButtons?.showAllActiveAdvertisers,\n 'mdi-radiobox-blank':\n selectedValueForCalendarSelectionAndAllActiveAdvertisersToggle !==\n advertiserListingFilterPopupradioButtons?.showAllActiveAdvertisers\n }\"\n ></span>\n {{ advertiserListingFilterPopupradioButtons?.showAllActiveAdvertisers }}\n </div>\n\n <label\n class=\"checkbox-and-message pl-30\"\n [ngClass]=\"{\n 'disabled-label':\n selectedValueForCalendarSelectionAndAllActiveAdvertisersToggle ===\n advertiserListingFilterPopupradioButtons?.calendarSelection\n }\"\n (click)=\"showOrHideExpiredAdvertisers()\"\n >\n <i\n class=\"mi mdi-check-box\"\n *ngIf=\"includeExpiredAdvertisers\"\n ></i>\n <i\n class=\"mi mdi-check-box-outline-blank\"\n *ngIf=\"!includeExpiredAdvertisers\"\n ></i>\n <span>Also include expired advertisers</span>\n </label>\n\n <br />\n\n <div\n class=\"d-flex bold-text\"\n (click)=\"\n selectedValueForCalendarSelectionAndAllActiveAdvertisersToggle =\n advertiserListingFilterPopupradioButtons?.calendarSelection;\n showCalendarSelectionAndAllActiveAdvertisersToggled(\n advertiserListingFilterPopupradioButtons?.calendarSelection\n )\n \"\n >\n <span\n class=\"mdi radio-button-icon\"\n [ngClass]=\"{\n 'mdi-radiobox-marked':\n selectedValueForCalendarSelectionAndAllActiveAdvertisersToggle ===\n advertiserListingFilterPopupradioButtons?.calendarSelection,\n 'mdi-radiobox-blank':\n selectedValueForCalendarSelectionAndAllActiveAdvertisersToggle !==\n advertiserListingFilterPopupradioButtons?.calendarSelection\n }\"\n ></span>\n {{ advertiserListingFilterPopupradioButtons?.calendarSelection }}\n </div>\n </div>\n </div>\n\n <div class=\"popup-filter pl-30\">\n <anna-design-generic-period-selection\n [selectedData]=\"persistingFilter?.periodData\"\n [disablePeriodSelection]=\"\n selectedValueForCalendarSelectionAndAllActiveAdvertisersToggle !==\n advertiserListingFilterPopupradioButtons.calendarSelection\n \"\n [PeriodOptions]=\"PeriodOptions\"\n [minMaxDateRangeForCalendar]=\"minMaxDateRangeForCalendar\"\n [startDateConsideringFactor]=\"StartDateConsideringFactor.FLIGHT_START_DATE\"\n (isFilterChanged)=\"isPeriodFilterChanged($event)\"\n [toShowAllPeriodMode]=\"toShowAllPeriodModeSetting\"\n [showAllSelectionInDropdown]=\"false\"\n [toShowAllMonthsOfYear]=\"false\"\n >\n </anna-design-generic-period-selection>\n </div>\n </div>\n <div class=\"btn-group\">\n <button\n class=\"anna cancel-button\"\n (click)=\"onCancelClicked()\"\n >\n Cancel\n </button>\n\n <button\n class=\"anna apply-button\"\n [disabled]=\"!isFilterValueChanged || !selectedStartDate || !selectedEndDate\"\n (click)=\"onApplyFilterAndUpdateNavigation()\"\n >\n Apply\n </button>\n </div>\n </div>\n</ng-template>\n\n<ng-template #periodSelected>\n <header class=\"header\">Period</header>\n <ng-container *ngIf=\"clonedFilter.periodData && clonedFilter?.showCalendarSelection\">\n <ng-container [ngSwitch]=\"clonedFilter.periodData.periodMode\">\n <p\n class=\"selected-value\"\n *ngSwitchCase=\"constants.Quarter\"\n >\n {{ clonedFilter.periodData.year }}\n {{ clonedFilter.periodData.quarter }}\n </p>\n </ng-container>\n </ng-container>\n\n <ng-container *ngIf=\"!clonedFilter.periodData || !clonedFilter?.showCalendarSelection\">\n <p class=\"selected-value\">-</p>\n </ng-container>\n</ng-template>\n\n<ng-template #skeletonLoader>\n <anna-design-skt-loader\n [theme]=\"{\n height: '100%',\n width: '150px',\n 'margin-bottom': '0',\n 'margin-right': '20px',\n display: 'inline-block'\n }\"\n >\n </anna-design-skt-loader>\n <anna-design-skt-loader\n [theme]=\"{\n height: '100%',\n width: '170px',\n 'margin-bottom': '0',\n 'margin-right': '20px',\n display: 'inline-block'\n }\"\n >\n </anna-design-skt-loader>\n</ng-template>\n\n<ng-template #periodSkeletonLoader>\n <anna-design-skt-loader\n [theme]=\"{\n height: '100%',\n width: '167px',\n 'margin-bottom': '0',\n 'margin-right': '0px',\n display: 'inline-block'\n }\"\n >\n </anna-design-skt-loader>\n</ng-template>\n\n<ng-template #editButtonLoader>\n <anna-design-skt-loader\n [theme]=\"{\n height: '100%',\n width: '52px',\n 'margin-bottom': '0',\n 'margin-right': '0px',\n display: 'inline-block'\n }\"\n >\n </anna-design-skt-loader>\n</ng-template>\n","export interface IEasyFilters {\n isEnabled: boolean;\n isActive: boolean;\n filterName: string;\n onlyEnabled?: boolean;\n}\n\nexport class AdvertiserListingTableData {\n advertiserId: number;\n advertiserName: string;\n status: string;\n agency: string;\n primaryBuyerName: string;\n primaryBuyerEmail: string;\n secondaryBuyerName: string;\n secondaryBuyerEmail: string;\n isExpired: boolean;\n}\n\nexport enum TypeOfActionLinkForGtEnum {\n ADEVERTISER_NAME_CLICK = \"ADEVERTISER_NAME_CLICK\",\n}\n\nexport class AdvertiserEzFilterConstants {\n static readonly AWAITING_APPROVAL = \"AWAITING APPROVAL\";\n static readonly APPROVED = \"APPROVED\";\n}\n","import { Injectable } from \"@angular/core\";\n\n@Injectable({\n providedIn: \"root\",\n})\nexport class AdvTableListingService {\n latestEcListingTabFilters: any;\n}\n","import { NgClass, NgFor, NgIf, NgTemplateOutlet } from \"@angular/common\";\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n ViewChild,\n} from \"@angular/core\";\nimport { ActivatedRoute, Router } from \"@angular/router\";\nimport {\n AnnaCoreModule,\n AnnaFilterService,\n AnnaGtHelperService,\n AnnaNonEditableGenericTableComponent,\n AnnaPersistingFilterService,\n AnnaSortService,\n IGtGeneralConfig,\n IGtTableHeader,\n} from \"@annalib/anna-core\";\nimport {\n AnnaDesignComponentsLibModule,\n EasyFilters,\n GenericMessageBoxTheme,\n IBreadcrumb,\n MessageBoxData,\n} from \"@annalib/anna-design-components-lib\";\n// eslint-disable-next-line max-len\nimport { GenericBusinessRuleCommonSIBILogicService } from \"@annalib/anna-feature-shared-lib\";\nimport dayjs from \"dayjs\";\nimport { cloneDeep, isEqual } from \"lodash-es\";\nimport { NgxSkeletonLoaderModule } from \"ngx-skeleton-loader\";\n\nimport { AdvertiserListingTableData, TypeOfActionLinkForGtEnum } from \"./model/adv-table-listing.model\";\nimport { AdvTableListingService } from \"./services/adv-table-listing.service\";\n\n@Component({\n selector: \"anna-feature-advertiser-table-listing\",\n templateUrl: \"./advertiser-table-listing.component.html\",\n styleUrls: [\"./advertiser-table-listing.component.scss\"],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n NgIf,\n AnnaDesignComponentsLibModule,\n NgFor,\n NgClass,\n NgTemplateOutlet,\n NgxSkeletonLoaderModule,\n AnnaCoreModule,\n ]\n})\nexport class AdvertiserTableListingComponent implements OnInit, OnChanges {\n @Input() advertiserTableData: AdvertiserListingTableData[];\n @Input() advertiserTableDataClonned: AdvertiserListingTableData[];\n @Input() loading: boolean = true;\n @Input() userType: \"SELLER\" | \"BUYER\" = \"SELLER\";\n @Input() gtGeneralConfig: IGtGeneralConfig;\n @Input() gtDimension: {\n rowHeight: number;\n headerHeight: number;\n dataOnTopHeight: number;\n marginFromBottom: number;\n };\n @Input() tableHeaders: IGtTableHeader[];\n @Input() easyFilters: EasyFilters[];\n @Input() showNoDataToDisplayInsideTable: boolean = true;\n @Input() showExpiredAdvertisers: boolean;\n @Input() numberOfEasyFilterLoader: number = 2;\n @Input() totalAdvertisersMessage: string = \"Total Advertisers\";\n @Input() popupFilters: any;\n\n @Output() advertiserNameClicked = new EventEmitter<{\n advertiser: AdvertiserListingTableData;\n breadcrumbsToPersist: IBreadcrumb[];\n }>();\n @Output() resetAllFilter = new EventEmitter();\n @Output() columnfilterAppliedToTable = new EventEmitter();\n @Output() easyFilterClicked = new EventEmitter();\n\n disableClearAllBtn: boolean = true;\n filtersFromTheUrL: any;\n breadcrumbsToPersist: IBreadcrumb[];\n messageBoxData: MessageBoxData;\n applyPersistedFilters: boolean;\n filtersAppliedChanges: boolean = false;\n @ViewChild(AnnaNonEditableGenericTableComponent) nonEditableGTComponent: AnnaNonEditableGenericTableComponent;\n\n constructor(\n private router: Router,\n private route: ActivatedRoute,\n private persistingFilterService: AnnaPersistingFilterService,\n private gtHelperService: AnnaGtHelperService,\n public annaFilterService: AnnaFilterService,\n public annaSortService: AnnaSortService,\n private businessRuleCommonSIBILogicService: GenericBusinessRuleCommonSIBILogicService,\n public advertiserTableListingService: AdvTableListingService,\n ) {}\n\n ngOnInit(): void {\n this.detectUrlChanges();\n this.setMessageForNoAdvertisers();\n // if (this.applyPersistedFilters) {\n // this.initPersistedFiltersForTable();\n // } else {\n // this.initFiltersForTable();\n // }\n }\n\n setMessageForNoAdvertisers() {\n const msg =\n // eslint-disable-next-line max-len\n \"Advertiser business rules will appear here for your approval once the station Account Executive forwards them.\";\n this.messageBoxData = new MessageBoxData(\n \"\",\n msg,\n \"mdi mdi-information\",\n `${GenericMessageBoxTheme.informationBlue.messageBoxClass} sm`,\n );\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (changes && changes?.advertiserTableData?.currentValue) {\n this.enableDisableClearAllBtn();\n if (!this.filtersAppliedChanges) {\n if (this.applyPersistedFilters) {\n this.initPersistedFiltersForTable();\n this.applyFilters();\n } else {\n this.initFiltersForTable();\n this.applyFilters();\n }\n }\n }\n\n this.filtersAppliedChanges = false;\n }\n\n initFiltersForTable() {\n this.annaFilterService.tooltipSelectedMap = new Map();\n this.annaFilterService.selectedRadio = null;\n this.annaFilterService.appliedFiltersArray = [];\n this.annaSortService.noSortingAppliedData = [];\n this.annaSortService.columnSortState = new Map();\n this.annaFilterService.updateStateOfAllTheKeys(this.annaSortService.columnSortState);\n }\n\n initPersistedFiltersForTable() {\n this.annaFilterService.tooltipSelectedMap = this.filtersFromTheUrL.selectedFilterData\n ? new Map(JSON.parse(this.filtersFromTheUrL.selectedFilterData))\n : new Map();\n this.annaFilterService.selectedRadio = null;\n this.annaFilterService.appliedFiltersArray = this.filtersFromTheUrL.appliedFilters\n ? cloneDeep(this.filtersFromTheUrL.appliedFilters)\n : [];\n\n this.annaSortService.columnSortState =\n this.filtersFromTheUrL && this.filtersFromTheUrL.sortState && this.applyPersistedFilters\n ? new Map(JSON.parse(this.filtersFromTheUrL.sortState))\n : new Map();\n if (this.annaFilterService.tooltipSelectedMap.has(\"Date\")) {\n const selectedDateObj: any = {};\n const date = this.annaFilterService.tooltipSelectedMap.get(\"Date\");\n selectedDateObj.fromDate = dayjs(date.fromDate);\n selectedDateObj.toDate = dayjs(date.toDate);\n this.annaFilterService.tooltipSelectedMap.set(\"Date\", selectedDateObj);\n }\n }\n\n detectUrlChanges() {\n this.route.queryParams.subscribe((params) => {\n this.updateLatestFilters(params);\n this.applyPersistedFilters = !!(\n params.filters && this.persistingFilterService.getActualQueryParams(params.filters)\n );\n this.setPersistedBreadcrumbsVariable(params.breadcrumbs);\n this.filtersFromTheUrL =\n params.filters && this.persistingFilterService.getActualQueryParams(params.filters)\n ? JSON.parse(this.persistingFilterService.getActualQueryParams(params.filters))\n : null;\n this.businessRuleCommonSIBILogicService.filtersFromTheUrlForAdvertiserBizTab = this.filtersFromTheUrL;\n this.businessRuleCommonSIBILogicService.stationIdfiltersFromTheUrlForAdvertiserBizTab = JSON.parse(\n this.persistingFilterService.getActualQueryParams(params.stationId),\n );\n });\n }\n\n setPersistedBreadcrumbsVariable(filter: string) {\n this.breadcrumbsToPersist =\n filter && this.persistingFilterService.getActualQueryParams(filter)\n ? JSON.parse(this.persistingFilterService.getActualQueryParams(filter))\n : null;\n }\n\n updateLatestFilters(queryParams: any) {\n const latestFilters = this.getLatestFilters();\n const updatedQueryParams = Object.keys(queryParams).length === 0 ? null : queryParams;\n\n if (!isEqual(updatedQueryParams, latestFilters)) {\n this.setLatestFilters(cloneDeep(updatedQueryParams));\n }\n }\n\n filterAppliedToTable(filteredData: AdvertiserListingTableData[]) {\n this.advertiserTableData = cloneDeep(filteredData);\n this.disableClearAllBtn = this.gtHelperService.enableOrDisableClearAllBtn();\n this.updateNavigationHistory();\n this.filtersAppliedChanges = true;\n this.columnfilterAppliedToTable.emit();\n }\n\n sortingAppliedToTable(sortedData: AdvertiserListingTableData[]) {\n this.advertiserTableData = cloneDeep(sortedData);\n this.disableClearAllBtn = this.gtHelperService.enableOrDisableClearAllBtn();\n this.updateNavigationHistory();\n }\n\n updateFiltersInURL() {\n const latestQueryParams = this.prepareQueryParamsOnFilter();\n let queryParams = {};\n\n if (\n Object.keys(latestQueryParams).length > 0 ||\n (this.userType === \"BUYER\" && this.showExpiredAdvertisers) ||\n Object.keys(this.popupFilters).length > 0 ||\n Object.keys(this.popupFilters).length > 0\n ) {\n const hashedQueryParams = this.persistingFilterService.storeKeyValueInLocalStorage(latestQueryParams);\n if (Object.keys(this.popupFilters).length > 0) {\n Object.assign(queryParams, { popupFilters: this.popupFilters });\n }\n if (Object.keys(latestQueryParams).length > 0) {\n queryParams = { filters: hashedQueryParams };\n }\n if (this.userType === \"BUYER\" && this.showExpiredAdvertisers) {\n Object.assign(queryParams, { showExpiredAdvertisers: this.showExpiredAdvertisers });\n }\n this.router.navigate([], {\n queryParams,\n relativeTo: this.route.parent,\n queryParamsHandling: \"merge\",\n });\n } else {\n this.router.navigate([], {\n queryParams,\n relativeTo: this.route.parent,\n queryParamsHandling: \"merge\",\n });\n }\n }\n\n prepareQueryParamsOnFilter() {\n const query: any = {};\n\n if (this.annaFilterService.appliedFiltersArray.length > 0) {\n query.appliedFilters = this.annaFilterService.appliedFiltersArray;\n query.selectedFilterData = JSON.stringify(Array.from(this.annaFilterService.tooltipSelectedMap));\n }\n if (this.annaSortService.columnSortState && this.gtHelperService.isSortingAppliedToTable()) {\n query.sortState = JSON.stringify(Array.from(this.annaSortService.columnSortState));\n }\n return query;\n }\n\n tableActionClicked(rowData: { data: AdvertiserListingTableData; id: TypeOfActionLinkForGtEnum }) {\n const selectedAdvertiser = rowData.data;\n switch (rowData.id) {\n case TypeOfActionLinkForGtEnum.ADEVERTISER_NAME_CLICK:\n this.goToAdvertiserBusinessRules(selectedAdvertiser);\n break;\n // no default\n }\n }\n\n goToAdvertiserBusinessRules(advertiser: AdvertiserListingTableData) {\n const emitableData = {\n advertiser,\n breadcrumbsToPersist: this.breadcrumbsToPersist,\n };\n this.advertiserNameClicked.emit(emitableData);\n }\n\n applyFilters() {\n if (this.applyPersistedFilters) {\n this.disableClearAllBtn = false;\n this.annaFilterService.updateStateOfAllTheKeys(this.annaSortService.columnSortState);\n this.advertiserTableData = this.annaFilterService.filterData(this.advertiserTableDataClonned, \"\");\n this.annaSortService.noSortingAppliedData = cloneDeep(this.advertiserTableData);\n this.callSort();\n } else {\n this.annaSortService.noSortingAppliedData = cloneDeep(this.advertiserTableData);\n this.disableClearAllBtn = true;\n }\n }\n\n\n callSort() {\n if (!this.annaSortService?.columnSortState) return;\n this.annaSortService.columnSortState.forEach((value, key) => {\n if (value === \"ASC\") {\n this.advertiserTableData = this.annaSortService.sortDataForComponentOtherThanLurAndCsrPage(\n true,\n this.advertiserTableData,\n key,\n );\n } else if (value === \"DESC\") {\n this.advertiserTableData = this.annaSortService.sortDataForComponentOtherThanLurAndCsrPage(\n false,\n this.advertiserTableData,\n key,\n );\n }\n });\n }\n\n intelliFilterClicked(emittedObj: any) {\n this.advertiserTableData = emittedObj.filteredData;\n\n this.enableDisableClearAllBtn();\n this.updateNavigationHistory();\n this.filtersAppliedChanges = true;\n this.easyFilterClicked.emit();\n }\n\n prepareQueryParamOnFilterApplication() {\n const query: any = {};\n let latestFilters = this.getLatestFilters();\n\n if (this.annaFilterService.appliedFiltersArray.length > 0) {\n query.appliedFilters = this.annaFilterService.appliedFiltersArray;\n query.selectedFilterData = JSON.stringify(Array.from(this.annaFilterService.tooltipSelectedMap));\n }\n\n if (this.checkIfSortIsApplied()) {\n query.sortState = JSON.stringify(Array.from(this.annaSortService.columnSortState));\n }\n\n latestFilters = this.getLatestFilters();\n\n if (Object.keys(query).length > 0) {\n latestFilters = latestFilters || {};\n const hashedQueryParams = this.persistingFilterService.storeKeyValueInLocalStorage(query);\n latestFilters.filters = hashedQueryParams;\n } else {\n latestFilters = [];\n }\n this.setLatestFilters(latestFilters);\n\n return latestFilters;\n }\n\n checkIfSortIsApplied() {\n let isSortingApplied = false;\n this.annaSortService.columnSortState.forEach((val, key) => {\n if (val === \"ASC\" || val === \"DESC\") {\n isSortingApplied = true;\n }\n });\n\n return isSortingApplied;\n }\n\n getLatestFilters() {\n return this.advertiserTableListingService.latestEcListingTabFilters;\n }\n\n setLatestFilters(queryParams: any) {\n this.advertiserTableListingService.latestEcListingTabFilters = queryParams;\n }\n\n enableDisableClearAllBtn() {\n if (!this.annaSortService?.columnSortState) return;\n let isSortApplied: boolean = false;\n this.annaSortService.columnSortState.forEach((val, key) => {\n if (val === \"ASC\" || val === \"DESC\") {\n isSortApplied = true;\n }\n });\n\n this.disableClearAllBtn = this.annaFilterService.appliedFiltersArray.length === 0 && !isSortApplied;\n }\n\n updateNavigationHistory() {\n const queryParams = this.prepareQueryParamOnFilterApplication();\n\n if (this.popupFilters && Object.keys(this.popupFilters).length > 0) {\n Object.assign(queryParams, { popupFilters: this.popupFilters });\n }\n if (this.userType === \"BUYER\" && this.showExpiredAdvertisers) {\n Object.assign(queryParams, { showExpiredAdvertisers: this.showExpiredAdvertisers });\n }\n const path = \"business-rules/advertisers\";\n\n if (queryParams && Object.keys(queryParams).length > 0) {\n this.router.navigate([`${path}`], {\n queryParams,\n });\n } else {\n this.router.navigate([`${path}`], {});\n }\n }\n\n clearAllFiltersAndSorting() {\n this.nonEditableGTComponent?.setScrollToInitialPosition();\n this.disableClearAllBtn = true;\n this.initFiltersForTable();\n this.ClearFandS();\n this.updateNavigationHistory();\n this.filtersAppliedChanges = true;\n this.resetAllFilter.emit();\n }\n\n ClearFandS() {\n this.advertiserTableData = cloneDeep(this.advertiserTableDataClonned);\n this.annaSortService.noSortingAppliedData = cloneDeep(this.advertiserTableData);\n this.annaFilterService.updateStateOfAllTheKeys(this.annaSortService.columnSortState);\n }\n}\n","<section class=\"advertiser-container {{ userType }}\">\n <ng-container *ngIf=\"!showNoDataToDisplayInsideTable && !loading && advertiserTableDataClonned.length === 0\">\n <anna-design-message-box\n class=\"no-data-info-msg\"\n [messageBoxData]=\"messageBoxData\"\n [hide]=\"false\"\n [headerAsBlockElement]=\"false\"\n [showHyphen]=\"false\"\n >\n </anna-design-message-box>\n </ng-container>\n <ng-container\n *ngIf=\"loading || (!loading && (showNoDataToDisplayInsideTable || advertiserTableDataClonned.length > 0))\"\n >\n <!-- <div class=\"d-flex p-8\" *ngIf=\"userType === 'SELLER'\">\n <anna-design-easy-filters\n [showLoader]=\"loading\"\n [numberOfItemsForLoader]=\"numberOfEasyFilterLoader\"\n [easyFilters]=\"easyFilters\"\n [tableData]=\"advertiserTableData\"\n [clonedTableData]=\"advertiserTableDataClonned\"\n (easyFilterClickEvent)=\"intelliFilterClicked($event)\"\n >\n </anna-design-easy-filters>\n </div> -->\n\n <div class=\"main-table\">\n <div class=\"count-text\">\n <anna-design-skt-loader\n *ngIf=\"loading\"\n [theme]=\"{ height: '12px', width: '120px', 'margin-bottom': '0', 'margin-top': '0' }\"\n >\n </anna-design-skt-loader>\n <span *ngIf=\"!loading && advertiserTableData?.length\"\n >{{ totalAdvertisersMessage }}: <b>{{ advertiserTableData.length }}</b></span\n >\n </div>\n\n <button\n *ngIf=\"!loading\"\n class=\"clear-all-btn\"\n [disabled]=\"disableClearAllBtn\"\n (click)=\"clearAllFiltersAndSorting()\"\n >\n Reset all filters\n </button>\n\n <anna-core-non-editable-generic-table-lib\n [showSkeletonLoading]=\"loading\"\n [ngClass]=\"{\n 'advertiser-table-no-data-table': !loading && advertiserTableData && !advertiserTableData.length\n }\"\n [tableHeaders]=\"tableHeaders\"\n [tableData]=\"advertiserTableData\"\n [clonedTableData]=\"advertiserTableDataClonned\"\n [gtGeneralConfig]=\"gtGeneralConfig\"\n [gtDimension]=\"gtDimension\"\n [clickableRow]=\"false\"\n (filterAppliedToTable)=\"filterAppliedToTable($event)\"\n (sortingAppliedToTable)=\"sortingAppliedToTable($event)\"\n (gtTextActionClicked)=\"tableActionClicked($event)\"\n (clickableDataClicked)=\"tableActionClicked($event)\"\n >\n </anna-core-non-editable-generic-table-lib>\n </div>\n </ng-container>\n</section>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i3","i4.AdvTableListingService","i5"],"mappings":";;;;;;;;;;;;;;;;;IAEY;AAAZ,CAAA,UAAY,wCAAwC,EAAA;AAChD,IAAA,wCAAA,CAAA,0BAAA,CAAA,GAAA,6BAAwD;AACxD,IAAA,wCAAA,CAAA,mBAAA,CAAA,GAAA,oBAAwC;AAC5C,CAAC,EAHW,wCAAwC,KAAxC,wCAAwC,GAGnD,EAAA,CAAA,CAAA;;ACLD;AACA;MA8Ea,8BAA8B,CAAA;AAoDvC,IAAA,WAAA,CACY,YAAsB,EACtB,iBAA0C,EAC1C,oBAAsD,EACtD,sBAA8C,EAAA;QAH9C,IAAY,CAAA,YAAA,GAAZ,YAAY;QACZ,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB;QACjB,IAAoB,CAAA,oBAAA,GAApB,oBAAoB;QACpB,IAAsB,CAAA,sBAAA,GAAtB,sBAAsB;QApDzB,IAA0B,CAAA,0BAAA,GAAa,EAAE;AAExC,QAAA,IAAA,CAAA,WAAW,GAAG,IAAI,YAAY,EAAO;AACrC,QAAA,IAAA,CAAA,gBAAgB,GAAG,IAAI,YAAY,EAAO;QAKpD,IAAS,CAAA,SAAA,GAAG,6BAA6B;QAkBhC,IAA0B,CAAA,0BAAA,GAAY,KAAK;AAC3C,QAAA,IAAA,CAAA,aAAa,GAAa,CAAC,SAAS,CAAC;QAM9C,IAAW,CAAA,WAAA,GAAG,YAAY;QAC1B,IAAgB,CAAA,gBAAA,GAAG,YAAY;QAC/B,IAAsB,CAAA,sBAAA,GAAG,OAAO;QAShC,IAA0B,CAAA,0BAAA,GAAG,0BAA0B;QAEvD,IAAwC,CAAA,wCAAA,GAAG,wCAAwC;AAQ/E,QAAA,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;QACpB,IAAI,CAAC,kBAAkB,EAAE;QACzB,IAAI,CAAC,wBAAwB,EAAE;QAC/B,IAAI,CAAC,iBAAiB,EAAE;;AAG5B,IAAA,WAAW,CAAC,OAAsB,EAAA;QAC9B,IAAI,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE;AACvD,YAAA,IAAI,IAAI,CAAC,0BAA0B,EAAE,MAAM,EAAE;AACzC,gBAAA,IAAI,CAAC,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,OAAO,KACnE,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CACvD;;YAEL,IAAI,CAAC,oBAAoB,EAAE;YAC3B,IAAI,CAAC,cAAc,EAAE;YACrB,IAAI,CAAC,aAAa,EAAE;;;IAI5B,6BAA6B,GAAA;QACzB,IAAI,CAAC,iCAAiC,GAAG;AACrC,YAAA,SAAS,EAAE,IAAI,CAAC,eAAe,CAAC,EAAE;YAClC,qBAAqB,EACjB,IAAI,CAAC,8DAA8D;gBACnE,IAAI,CAAC,wCAAwC,CAAC,iBAAiB;YACnE,yBAAyB,EAAE,IAAI,CAAC,yBAAyB;SAC5D;AACD,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;QAExF,IAAI,IAAI,CAAC,YAAY,CAAC,oBAAoB,CAAC,MAAM,EAAE;AAC/C,YAAA,IAAI,eAAe;AACnB,YAAA,MAAM,OAAO,GAAG,YAAY,CAAC,oBAAoB;AACjD,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACrC,gBAAA,eAAe,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAS,KAAK,IAAI,CAAC,gBAAgB,CAAC;AAClF,gBAAA,IAAI,eAAe,CAAC,MAAM,EAAE;oBACxB;;;YAIR,IAAI,eAAe,EAAE;AACjB,gBAAA,MAAM,kBAAkB,GAAG,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;gBAC3E,MAAM,cAAc,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,WAAW;AAErD,gBAAA,MAAM,iBAAiB,GAAG,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;AACtF,gBAAA,MAAM,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;AAElF,gBAAA,IAAI,CAAC,iCAAiC,CAAC,UAAU,GAAG;AAChD,oBAAA,IAAI,EAAE,kBAAkB;AACxB,oBAAA,OAAO,EAAE,cAAc;AACvB,oBAAA,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS;AACtC,oBAAA,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO;AAClC,oBAAA,KAAK,EAAE,IAAI;AACX,oBAAA,oBAAoB,EAAE,KAAK;AAC3B,oBAAA,SAAS,EAAE,iBAAiB;AAC5B,oBAAA,OAAO,EAAE,eAAe;iBAC3B;;iBACE;AACH,gBAAA,IAAI,CAAC,iCAAiC,CAAC,UAAU,GAAG,IAAI;;;QAIhE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,iCAAiC,CAAC;;IAGtE,oBAAoB,GAAA;AAChB,QAAA,IAAI,CAAC,oBAAoB,GAAG,IAAI;AAChC,QAAA,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,KAAI;YAC1D,IAAI,KAAK,CAAC,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE;AACvC,gBAAA,IAAI,CAAC,oBAAoB,GAAG,KAAK;;AAEzC,SAAC,CAAC;;IAGN,aAAa,GAAA;AACT,QAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI;QAC5B,IAAI,CAAC,cAAc,EAAE;QACrB,IAAI,CAAC,6BAA6B,EAAE;QACpC,IAAI,CAAC,kCAAkC,EAAE;QACzC,IAAI,CAAC,wBAAwB,EAAE;QAC/B,IAAI,CAAC,0BAA0B,EAAE;;IAGrC,6BAA6B,GAAA;AACzB,QAAA,MAAM,qBAAqB,GACvB,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,gBAAgB,CAAC,qBAAqB,KAAK;AACrE,cAAE,IAAI,CAAC,gBAAgB,CAAC;cACtB,IAAI;QACd,IAAI,CAAC,8DAA8D,GAAG;AAClE,cAAE,IAAI,CAAC,wCAAwC,CAAC;AAChD,cAAE,IAAI,CAAC,wCAAwC,CAAC,wBAAwB;;IAGhF,kCAAkC,GAAA;AAC9B,QAAA,IAAI,CAAC,yBAAyB;YAC1B,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,gBAAgB,CAAC,yBAAyB,KAAK;AACzE,kBAAE,IAAI,CAAC,gBAAgB,CAAC;kBACtB,KAAK;;IAGnB,0BAA0B,GAAA;QACtB,IAAI,CAAC,6BAA6B,EAAE;QACpC,IAAI,CAAC,2BAA2B,EAAE;AAClC,QAAA,IAAI,CAAC,gBAAgB,GAAG,KAAK;AAC7B,QAAA,IAAI,CAAC,oBAAoB,GAAG,KAAK;;IAGrC,cAAc,GAAA;QACV,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU;QAC1C,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE;YAC1D,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,EAAE,KAAK,IAAI,CAAC,gBAAgB,CAAC,SAAS;kBAC/F,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,EAAE,KAAK,IAAI,CAAC,gBAAgB,CAAC,SAAS;AAChF,kBAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;;aACnB;YACH,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;;QAE3C,IAAI,CAAC,uBAAuB,GAAG,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC;;IAGlE,wBAAwB,GAAA;AACpB,QAAA,IAAI,CAAC,kBAAkB;YACnB,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,gBAAgB,CAAC,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,GAAG,IAAI;QACvG,IAAI,CAAC,sCAAsC,EAAE;AAC7C,QAAA,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE;AACrB,YAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,YAAY,CAAC;YAC1C,IAAI,CAAC,8BAA8B,EAAE;;;IAI7C,YAAY,GAAA;AACR,QAAA,OAAO,IAAI,CAAC,YAAY,CAAC,oBAAoB,CAAC,MAAM;;IAGxD,sCAAsC,GAAA;AAClC,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;AACvF,QAAA,IAAI,CAAC,oBAAoB,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,YAAY,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC;;IAG/G,8BAA8B,GAAA;QAC1B,IAAI,IAAI,CAAC,YAAY,CAAC,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE;AACnD,YAAA,IAAI,CAAC,0BAA0B,GAAG,IAAI;AACtC,YAAA,IAAI,IAAI,CAAC,cAAc,EAAE,EAAE;gBACvB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC;;iBACpD;gBACH,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,oBAAoB,CAAC;;;;AAKtE,IAAA,aAAa,CAAC,WAA2B,EAAA;AACrC,QAAA,MAAM,SAAS,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC;AACxC,QAAA,MAAM,sBAAsB,GAAG,WAAW,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;QAEzE,MAAM,SAAS,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;QACtF,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;QAC/G,IAAI,CAAC,0BAA0B,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE;;IAG5D,cAAc,GAAA;AACV,QAAA,QACI,CAAC,IAAI,CAAC,gBAAgB;YAClB,IAAI,CAAC,gBAAgB,CAAC,UAAU;AAChC,YAAA,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,YAAY,KAAK,IAAI,CAAC,SAAS,CAAC,MAAM;AAC3E,aAAC,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,kBAAkB,CAAC,YAAY,KAAK,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;;AAInG,IAAA,kBAAkB,CAAC,YAAmC,EAAA;QAClD,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE;YAC3D,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,SAAS;YACnE,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,OAAO;AAC/D,YAAA,IAAI,CAAC,kBAAkB,GAAG,IAAI;AAC9B,YAAA,IAAI,CAAC,cAAc,GAAG,IAAI;;aACvB;AACH,YAAA,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC;;;IAIjD,eAAe,GAAA;AACX,QAAA,IAAI,CAAC,uBAAuB,GAAG,IAAI;QACnC,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE;YAC1D,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;;AACrG,aAAA,IAAI,IAAI,CAAC,QAAQ,EAAE;YACtB,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;;AAEnD,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,eAAe,CAAC;;IAGpF,iBAAiB,GAAA;AACb,QAAA,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE;;AAGzB,IAAA,qBAAqB,CAAC,YAAkC,EAAA;AACpD,QAAA,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAC,YAAY,CAAC;AACjD,QAAA,IAAI,CAAC,iBAAiB,GAAG,YAAY,CAAC,SAAS;AAC/C,QAAA,IAAI,CAAC,eAAe,GAAG,YAAY,CAAC,OAAO;QAC3C,IAAI,CAAC,8BAA8B,EAAE;QACrC,IAAI,CAAC,4BAA4B,EAAE;;;AAIvC,IAAA,sBAAsB,CAAC,YAAmC,EAAA;AACtD,QAAA,IAAI,eAAe;AACnB,QAAA,MAAM,OAAO,GAAG,YAAY,CAAC,oBAAoB;AACjD,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACrC,YAAA,eAAe,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,gBAAgB,CAAC;AAC7E,YAAA,IAAI,eAAe,CAAC,MAAM,EAAE;gBACxB;;;AAGR,QAAA,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;QAC1E,IAAI,CAAC,cAAc,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,WAAW;AAEpD,QAAA,IAAI,CAAC,iBAAiB,GAAG,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;AACrF,QAAA,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;;IAGrF,gCAAgC,GAAA;AAC5B,QAAA,IAAI,CAAC,sBAAsB,CAAC,6BAA6B,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QACpF,IAAI,CAAC,uBAAuB,GAAG,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC;QAC9D,IAAI,CAAC,2BAA2B,EAAE;QAClC,IAAI,CAAC,iBAAiB,EAAE;;IAG5B,2BAA2B,GAAA;AACvB,QAAA,MAAM,aAAa,GAAG,IAAI,CAAC,eAAe,EAAE;AAC5C,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC;;IAGxC,eAAe,GAAA;AACX,QAAA,MAAM,qBAAqB,GACvB,IAAI,CAAC,8DAA8D;AACnE,YAAA,IAAI,CAAC,wCAAwC,CAAC,iBAAiB;QACnE,IAAI,CAAC,YAAY,GAAG;AAChB,YAAA,UAAU,EAAE,SAAS,CAAC,IAAI,CAAC,kBAAkB,CAAC;AAC9C,YAAA,SAAS,EAAE,IAAI,CAAC,eAAe,CAAC,EAAE;AAClC,YAAA,WAAW,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI;YACtC,yBAAyB,EAAE,IAAI,CAAC,yBAAyB;YACzD,qBAAqB;SACxB;AACD,QAAA,IAAI,CAAC,sBAAsB,CAAC,6BAA6B,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;AACxF,QAAA,IAAI,CAAC,wCAAwC,CAAC,IAAI,CAAC,yBAAyB,CAAC;AAC7E,QAAA,IAAI,CAAC,oCAAoC,CAAC,qBAAqB,CAAC;QAChE,IAAI,CAAC,4BAA4B,EAAE;QACnC,OAAO,IAAI,CAAC,YAAY;;AAG5B,IAAA,wCAAwC,CAAC,GAAY,EAAA;AACjD,QAAA,IAAI,CAAC,YAAY,CAAC,yBAAyB,GAAG,GAAG,KAAK,SAAS,GAAG,GAAG,GAAG,KAAK;;AAGjF,IAAA,oCAAoC,CAAC,GAAY,EAAA;AAC7C,QAAA,IAAI,CAAC,YAAY,CAAC,qBAAqB,GAAG,GAAG,KAAK,SAAS,GAAG,GAAG,GAAG,IAAI;;IAG5E,4BAA4B,GAAA;AACxB,QAAA,IAAI,IAAI,CAAC,YAAY,CAAC,UAAU,IAAI,IAAI,IAAI,IAAI,CAAC,cAAc,EAAE;AAC7D,YAAA,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG;gBAC3B,IAAI,EAAE,IAAI,CAAC,kBAAkB;gBAC7B,OAAO,EAAE,IAAI,CAAC,cAAc;AAC5B,gBAAA,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS;AACtC,gBAAA,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO;AAClC,gBAAA,KAAK,EAAE,IAAI;gBACX,SAAS,EAAE,IAAI,CAAC,iBAAiB;gBACjC,OAAO,EAAE,IAAI,CAAC,eAAe;aAChC;YACD,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC;;aAC7C;YACH,IAAI,CAAC,YAAY,CAAC,UAAU,GAAG,SAAS,CAAC,IAAI,CAAC,kBAAkB,CAAC;;;IAIzE,eAAe,GAAA;QACX,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,SAAS;QAChE,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO;QAE5D,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC;QAEjE,IAAI,CAAC,6BAA6B,EAAE;QACpC,IAAI,CAAC,sCAAsC,EAAE;QAC7C,IAAI,CAAC,8BAA8B,EAAE;QACrC,IAAI,CAAC,iBAAiB,EAAE;;IAG5B,6BAA6B,GAAA;QACzB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;;IAG/F,iBAAiB,GAAA;QACb,IAAI,CAAC,YAAY,GAAG;AAChB,YAAA,UAAU,EAAE,IAAI;AAChB,YAAA,SAAS,EAAE,IAAI;AACf,YAAA,gBAAgB,EAAE,IAAI;AACtB,YAAA,qBAAqB,EAAE,IAAI;AAC3B,YAAA,yBAAyB,EAAE,KAAK;SACnC;AAED,QAAA,IAAI,CAAC,wCAAwC,CAAC,KAAK,CAAC;AACpD,QAAA,IAAI,CAAC,oCAAoC,CAAC,IAAI,CAAC;;AAGnD,IAAA,eAAe,CAAC,eAAkC,EAAA;AAC9C,QAAA,IAAI,CAAC,eAAe,GAAG,eAAe;AACtC,QAAA,MAAM,qBAAqB,GAAG,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,GAAG,CAAC,IAAI,CAAC,uBAAuB,CAAC,EAAE,CAAC;AACzG,QAAA,MAAM,oBAAoB,GAAG,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;AAEhG,QAAA,IAAI,qBAAqB,CAAC,oBAAoB,CAAC,MAAM,KAAK,oBAAoB,CAAC,oBAAoB,CAAC,MAAM,EAAE;YACxG,IAAI,CAAC,sCAAsC,EAAE;AAC7C,YAAA,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE;AACrB,gBAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,YAAY,CAAC;gBAC1C,IAAI,CAAC,8BAA8B,EAAE;;;AAI7C,QAAA,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC,eAAe,CAAC;QACjD,IAAI,CAAC,4BAA4B,EAAE;;IAGvC,kBAAkB,GAAA;QACd,IAAI,CAAC,eAAe,GAAG;AACnB,YAAA,WAAW,EAAE,wBAAwB;SACxC;;IAGL,cAAc,GAAA;AACV,QAAA,IAAI,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,MAAM;;IAGrF,4BAA4B,GAAA;AACxB,QAAA,MAAM,iBAAiB,GACnB,IAAI,CAAC,8DAA8D;AACnE,YAAA,IAAI,CAAC,wCAAwC,CAAC,iBAAiB;AACnE,QAAA,IAAI,CAAC,oBAAoB;AACrB,YAAA,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,iBAAiB,CAAC;AACzE,gBAAA,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC;AACrE,gBAAA,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,kBAAkB,EAAE,UAAU,CAAC;AACvF,gBAAA,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,YAAY,EAAE,IAAI,CAAC,kBAAkB,EAAE,YAAY,CAAC;AAE/F,QAAA,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE;AAC5B,YAAA,IAAI,CAAC,oBAAoB,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;;AAG/F,QAAA,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE;AAC5B,YAAA,IAAI,CAAC,oBAAoB;gBACrB,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,yBAAyB,EAAE,IAAI,CAAC,yBAAyB,CAAC;oBACrF,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,qBAAqB,EAAE,iBAAiB,CAAC;;;IAIhF,wBAAwB,GAAA;QACpB,IAAI,CAAC,qBAAqB,GAAG,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,yBAAyB,EAAE;AACpF,QAAA,IAAI,CAAC,qBAAqB,CAAC,WAAW,GAAG,qBAAqB;;AAGlE,IAAA,mDAAmD,CAAC,KAA+C,EAAA;AAC/F,QAAA,IAAI,CAAC,8DAA8D,GAAG,SAAS,CAAC,KAAK,CAAC;AACtF,QAAA,IAAI,CAAC,yBAAyB;AAC1B,YAAA,KAAK,KAAK,IAAI,CAAC,wCAAwC,CAAC;AACpD,kBAAE;AACF,kBAAE,IAAI,CAAC,yBAAyB;QACxC,IAAI,CAAC,4BAA4B,EAAE;;IAGvC,4BAA4B,GAAA;AACxB,QAAA,IAAI,CAAC,yBAAyB,GAAG,CAAC,IAAI,CAAC,yBAAyB;QAChE,IAAI,CAAC,4BAA4B,EAAE;;+GAta9B,8BAA8B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,QAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,uBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gCAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,sBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;mGAA9B,8BAA8B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,sCAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,WAAA,EAAA,UAAA,EAAA,YAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,0BAAA,EAAA,4BAAA,EAAA,0BAAA,EAAA,4BAAA,EAAA,aAAA,EAAA,eAAA,EAAA,EAAA,OAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,eAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,CAAA,eAAA,CAAA,EAAA,WAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,CAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC/E3C,8xSAoPA,EDpLQ,MAAA,EAAA,CAAA,moFAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,IAAI,6FAEJ,OAAO,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EACP,WAAW,EACX,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,gBAAgB,mJAChB,cAAc,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACd,qBAAqB,EACrB,QAAA,EAAA,2BAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,SAAA,EAAA,kCAAA,EAAA,UAAA,EAAA,OAAA,EAAA,cAAA,EAAA,oBAAA,EAAA,iCAAA,EAAA,mBAAA,EAAA,oBAAA,EAAA,uBAAA,EAAA,0BAAA,EAAA,oBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,cAAA,EAAA,qBAAA,EAAA,qBAAA,EAAA,4BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,+BAA+B,yfAC/B,QAAQ,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EACR,YAAY,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAEZ,uBAAuB,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,OAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FAIlB,8BAA8B,EAAA,UAAA,EAAA,CAAA;kBArB1C,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,sCAAsC,EAG/B,eAAA,EAAA,uBAAuB,CAAC,MAAM,EACtC,OAAA,EAAA;wBACL,IAAI;wBACJ,KAAK;wBACL,OAAO;wBACP,WAAW;wBACX,gBAAgB;wBAChB,cAAc;wBACd,qBAAqB;wBACrB,+BAA+B;wBAC/B,QAAQ;wBACR,YAAY;wBACZ,eAAe;wBACf,uBAAuB;wBACvB,QAAQ;AACX,qBAAA,EAAA,QAAA,EAAA,8xSAAA,EAAA,MAAA,EAAA,CAAA,moFAAA,CAAA,EAAA;uMAGQ,SAAS,EAAA,CAAA;sBAAjB;gBACQ,UAAU,EAAA,CAAA;sBAAlB;gBACQ,gBAAgB,EAAA,CAAA;sBAAxB;gBACQ,0BAA0B,EAAA,CAAA;sBAAlC;gBAES,WAAW,EAAA,CAAA;sBAApB;gBACS,gBAAgB,EAAA,CAAA;sBAAzB;gBAEqD,aAAa,EAAA,CAAA;sBAAlE,SAAS;AAAC,gBAAA,IAAA,EAAA,CAAA,eAAe,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE;gBAqBnC,0BAA0B,EAAA,CAAA;sBAAlC;gBACQ,aAAa,EAAA,CAAA;sBAArB;;;MEvGQ,0BAA0B,CAAA;AAUtC;IAEW;AAAZ,CAAA,UAAY,yBAAyB,EAAA;AACjC,IAAA,yBAAA,CAAA,wBAAA,CAAA,GAAA,wBAAiD;AACrD,CAAC,EAFW,yBAAyB,KAAzB,yBAAyB,GAEpC,EAAA,CAAA,CAAA;MAEY,2BAA2B,CAAA;aACpB,IAAiB,CAAA,iBAAA,GAAG,mBAAmB,CAAC;aACxC,IAAQ,CAAA,QAAA,GAAG,UAAU,CAAC;;;MCpB7B,sBAAsB,CAAA;+GAAtB,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sBAAsB,cAFnB,MAAM,EAAA,CAAA,CAAA;;4FAET,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAHlC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,MAAM;AACrB,iBAAA;;;MCkDY,+BAA+B,CAAA;AAoCxC,IAAA,WAAA,CACY,MAAc,EACd,KAAqB,EACrB,uBAAoD,EACpD,eAAoC,EACrC,iBAAoC,EACpC,eAAgC,EAC/B,kCAA6E,EAC9E,6BAAqD,EAAA;QAPpD,IAAM,CAAA,MAAA,GAAN,MAAM;QACN,IAAK,CAAA,KAAA,GAAL,KAAK;QACL,IAAuB,CAAA,uBAAA,GAAvB,uBAAuB;QACvB,IAAe,CAAA,eAAA,GAAf,eAAe;QAChB,IAAiB,CAAA,iBAAA,GAAjB,iBAAiB;QACjB,IAAe,CAAA,eAAA,GAAf,eAAe;QACd,IAAkC,CAAA,kCAAA,GAAlC,kCAAkC;QACnC,IAA6B,CAAA,6BAAA,GAA7B,6BAA6B;QAzC/B,IAAO,CAAA,OAAA,GAAY,IAAI;QACvB,IAAQ,CAAA,QAAA,GAAuB,QAAQ;QAUvC,IAA8B,CAAA,8BAAA,GAAY,IAAI;QAE9C,IAAwB,CAAA,wBAAA,GAAW,CAAC;QACpC,IAAuB,CAAA,uBAAA,GAAW,mBAAmB;AAGpD,QAAA,IAAA,CAAA,qBAAqB,GAAG,IAAI,YAAY,EAG9C;AACM,QAAA,IAAA,CAAA,cAAc,GAAG,IAAI,YAAY,EAAE;AACnC,QAAA,IAAA,CAAA,0BAA0B,GAAG,IAAI,YAAY,EAAE;AAC/C,QAAA,IAAA,CAAA,iBAAiB,GAAG,IAAI,YAAY,EAAE;QAEhD,IAAkB,CAAA,kBAAA,GAAY,IAAI;QAKlC,IAAqB,CAAA,qBAAA,GAAY,KAAK;;IActC,QAAQ,GAAA;QACJ,IAAI,CAAC,gBAAgB,EAAE;QACvB,IAAI,CAAC,0BAA0B,EAAE;;;;;;;IAQrC,0BAA0B,GAAA;AACtB,QAAA,MAAM,GAAG;;AAEL,QAAA,gHAAgH;QACpH,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CACpC,EAAE,EACF,GAAG,EACH,qBAAqB,EACrB,CAAA,EAAG,sBAAsB,CAAC,eAAe,CAAC,eAAe,CAAA,GAAA,CAAK,CACjE;;AAGL,IAAA,WAAW,CAAC,OAAsB,EAAA;QAC9B,IAAI,OAAO,IAAI,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE;YACvD,IAAI,CAAC,wBAAwB,EAAE;AAC/B,YAAA,IAAI,CAAC,IAAI,CAAC,qBAAqB,EAAE;AAC7B,gBAAA,IAAI,IAAI,CAAC,qBAAqB,EAAE;oBAC5B,IAAI,CAAC,4BAA4B,EAAE;oBACnC,IAAI,CAAC,YAAY,EAAE;;qBAChB;oBACH,IAAI,CAAC,mBAAmB,EAAE;oBAC1B,IAAI,CAAC,YAAY,EAAE;;;;AAK/B,QAAA,IAAI,CAAC,qBAAqB,GAAG,KAAK;;IAGtC,mBAAmB,GAAA;QACf,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,GAAG,IAAI,GAAG,EAAE;AACrD,QAAA,IAAI,CAAC,iBAAiB,CAAC,aAAa,GAAG,IAAI;AAC3C,QAAA,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,GAAG,EAAE;AAC/C,QAAA,IAAI,CAAC,eAAe,CAAC,oBAAoB,GAAG,EAAE;QAC9C,IAAI,CAAC,eAAe,CAAC,eAAe,GAAG,IAAI,GAAG,EAAE;QAChD,IAAI,CAAC,iBAAiB,CAAC,uBAAuB,CAAC,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC;;IAGxF,4BAA4B,GAAA;QACxB,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,GAAG,IAAI,CAAC,iBAAiB,CAAC;AAC/D,cAAE,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC;AAC/D,cAAE,IAAI,GAAG,EAAE;AACf,QAAA,IAAI,CAAC,iBAAiB,CAAC,aAAa,GAAG,IAAI;QAC3C,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,GAAG,IAAI,CAAC,iBAAiB,CAAC;cAC9D,SAAS,CAAC,IAAI,CAAC,iBAAiB,CAAC,cAAc;cAC/C,EAAE;QAER,IAAI,CAAC,eAAe,CAAC,eAAe;YAChC,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,iBAAiB,CAAC,SAAS,IAAI,IAAI,CAAC;AAC/D,kBAAE,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC;AACtD,kBAAE,IAAI,GAAG,EAAE;QACnB,IAAI,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;YACvD,MAAM,eAAe,GAAQ,EAAE;AAC/B,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC;YAClE,eAAe,CAAC,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;YAC/C,eAAe,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;YAC3C,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC;;;IAI9E,gBAAgB,GAAA;QACZ,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,MAAM,KAAI;AACxC,YAAA,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC;YAChC,IAAI,CAAC,qBAAqB,GAAG,CAAC,EAC1B,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,uBAAuB,CAAC,oBAAoB,CAAC,MAAM,CAAC,OAAO,CAAC,CACtF;AACD,YAAA,IAAI,CAAC,+BAA+B,CAAC,MAAM,CAAC,WAAW,CAAC;AACxD,YAAA,IAAI,CAAC,iBAAiB;AAClB,gBAAA,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,uBAAuB,CAAC,oBAAoB,CAAC,MAAM,CAAC,OAAO;AAC9E,sBAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,oBAAoB,CAAC,MAAM,CAAC,OAAO,CAAC;sBAC5E,IAAI;YACd,IAAI,CAAC,kCAAkC,CAAC,oCAAoC,GAAG,IAAI,CAAC,iBAAiB;YACrG,IAAI,CAAC,kCAAkC,CAAC,6CAA6C,GAAG,IAAI,CAAC,KAAK,CAC9F,IAAI,CAAC,uBAAuB,CAAC,oBAAoB,CAAC,MAAM,CAAC,SAAS,CAAC,CACtE;AACL,SAAC,CAAC;;AAGN,IAAA,+BAA+B,CAAC,MAAc,EAAA;AAC1C,QAAA,IAAI,CAAC,oBAAoB;YACrB,MAAM,IAAI,IAAI,CAAC,uBAAuB,CAAC,oBAAoB,CAAC,MAAM;AAC9D,kBAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,oBAAoB,CAAC,MAAM,CAAC;kBACpE,IAAI;;AAGlB,IAAA,mBAAmB,CAAC,WAAgB,EAAA;AAChC,QAAA,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,EAAE;QAC7C,MAAM,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,KAAK,CAAC,GAAG,IAAI,GAAG,WAAW;QAErF,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,aAAa,CAAC,EAAE;YAC7C,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;;;AAI5D,IAAA,oBAAoB,CAAC,YAA0C,EAAA;AAC3D,QAAA,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC,YAAY,CAAC;QAClD,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,eAAe,CAAC,0BAA0B,EAAE;QAC3E,IAAI,CAAC,uBAAuB,EAAE;AAC9B,QAAA,IAAI,CAAC,qBAAqB,GAAG,IAAI;AACjC,QAAA,IAAI,CAAC,0BAA0B,CAAC,IAAI,EAAE;;AAG1C,IAAA,qBAAqB,CAAC,UAAwC,EAAA;AAC1D,QAAA,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC,UAAU,CAAC;QAChD,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,eAAe,CAAC,0BAA0B,EAAE;QAC3E,IAAI,CAAC,uBAAuB,EAAE;;IAGlC,kBAAkB,GAAA;AACd,QAAA,MAAM,iBAAiB,GAAG,IAAI,CAAC,0BAA0B,EAAE;QAC3D,IAAI,WAAW,GAAG,EAAE;QAEpB,IACI,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,MAAM,GAAG,CAAC;aACxC,IAAI,CAAC,QAAQ,KAAK,OAAO,IAAI,IAAI,CAAC,sBAAsB,CAAC;YAC1D,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,GAAG,CAAC;AACzC,YAAA,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,GAAG,CAAC,EAC3C;YACE,MAAM,iBAAiB,GAAG,IAAI,CAAC,uBAAuB,CAAC,2BAA2B,CAAC,iBAAiB,CAAC;AACrG,YAAA,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;AAC3C,gBAAA,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC;;YAEnE,IAAI,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;AAC3C,gBAAA,WAAW,GAAG,EAAE,OAAO,EAAE,iBAAiB,EAAE;;YAEhD,IAAI,IAAI,CAAC,QAAQ,KAAK,OAAO,IAAI,IAAI,CAAC,sBAAsB,EAAE;AAC1D,gBAAA,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,sBAAsB,EAAE,IAAI,CAAC,sBAAsB,EAAE,CAAC;;AAEvF,YAAA,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE;gBACrB,WAAW;AACX,gBAAA,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM;AAC7B,gBAAA,mBAAmB,EAAE,OAAO;AAC/B,aAAA,CAAC;;aACC;AACH,YAAA,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,EAAE;gBACrB,WAAW;AACX,gBAAA,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM;AAC7B,gBAAA,mBAAmB,EAAE,OAAO;AAC/B,aAAA,CAAC;;;IAIV,0BAA0B,GAAA;QACtB,MAAM,KAAK,GAAQ,EAAE;QAErB,IAAI,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE;YACvD,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,mBAAmB;AACjE,YAAA,KAAK,CAAC,kBAAkB,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;;AAEpG,QAAA,IAAI,IAAI,CAAC,eAAe,CAAC,eAAe,IAAI,IAAI,CAAC,eAAe,CAAC,uBAAuB,EAAE,EAAE;AACxF,YAAA,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;;AAEtF,QAAA,OAAO,KAAK;;AAGhB,IAAA,kBAAkB,CAAC,OAA4E,EAAA;AAC3F,QAAA,MAAM,kBAAkB,GAAG,OAAO,CAAC,IAAI;AACvC,QAAA,QAAQ,OAAO,CAAC,EAAE;YACd,KAAK,yBAAyB,CAAC,sBAAsB;AACjD,gBAAA,IAAI,CAAC,2BAA2B,CAAC,kBAAkB,CAAC;gBACpD;;;;AAKZ,IAAA,2BAA2B,CAAC,UAAsC,EAAA;AAC9D,QAAA,MAAM,YAAY,GAAG;YACjB,UAAU;YACV,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;SAClD;AACD,QAAA,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,YAAY,CAAC;;IAGjD,YAAY,GAAA;AACR,QAAA,IAAI,IAAI,CAAC,qBAAqB,EAAE;AAC5B,YAAA,IAAI,CAAC,kBAAkB,GAAG,KAAK;YAC/B,IAAI,CAAC,iBAAiB,CAAC,uBAAuB,CAAC,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC;AACpF,YAAA,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,IAAI,CAAC,0BAA0B,EAAE,EAAE,CAAC;YACjG,IAAI,CAAC,eAAe,CAAC,oBAAoB,GAAG,SAAS,CAAC,IAAI,CAAC,mBAAmB,CAAC;YAC/E,IAAI,CAAC,QAAQ,EAAE;;aACZ;YACH,IAAI,CAAC,eAAe,CAAC,oBAAoB,GAAG,SAAS,CAAC,IAAI,CAAC,mBAAmB,CAAC;AAC/E,YAAA,IAAI,CAAC,kBAAkB,GAAG,IAAI;;;IAKtC,QAAQ,GAAA;AACJ,QAAA,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,eAAe;YAAE;AAC5C,QAAA,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,KAAI;AACxD,YAAA,IAAI,KAAK,KAAK,KAAK,EAAE;AACjB,gBAAA,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,eAAe,CAAC,0CAA0C,CACtF,IAAI,EACJ,IAAI,CAAC,mBAAmB,EACxB,GAAG,CACN;;AACE,iBAAA,IAAI,KAAK,KAAK,MAAM,EAAE;AACzB,gBAAA,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,eAAe,CAAC,0CAA0C,CACtF,KAAK,EACL,IAAI,CAAC,mBAAmB,EACxB,GAAG,CACN;;AAET,SAAC,CAAC;;AAGN,IAAA,oBAAoB,CAAC,UAAe,EAAA;AAChC,QAAA,IAAI,CAAC,mBAAmB,GAAG,UAAU,CAAC,YAAY;QAElD,IAAI,CAAC,wBAAwB,EAAE;QAC/B,IAAI,CAAC,uBAAuB,EAAE;AAC9B,QAAA,IAAI,CAAC,qBAAqB,GAAG,IAAI;AACjC,QAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE;;IAGjC,oCAAoC,GAAA;QAChC,MAAM,KAAK,GAAQ,EAAE;AACrB,QAAA,IAAI,aAAa,GAAG,IAAI,CAAC,gBAAgB,EAAE;QAE3C,IAAI,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE;YACvD,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,mBAAmB;AACjE,YAAA,KAAK,CAAC,kBAAkB,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;;AAGpG,QAAA,IAAI,IAAI,CAAC,oBAAoB,EAAE,EAAE;AAC7B,YAAA,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;;AAGtF,QAAA,aAAa,GAAG,IAAI,CAAC,gBAAgB,EAAE;QAEvC,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;AAC/B,YAAA,aAAa,GAAG,aAAa,IAAI,EAAE;YACnC,MAAM,iBAAiB,GAAG,IAAI,CAAC,uBAAuB,CAAC,2BAA2B,CAAC,KAAK,CAAC;AACzF,YAAA,aAAa,CAAC,OAAO,GAAG,iBAAiB;;aACtC;YACH,aAAa,GAAG,EAAE;;AAEtB,QAAA,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC;AAEpC,QAAA,OAAO,aAAa;;IAGxB,oBAAoB,GAAA;QAChB,IAAI,gBAAgB,GAAG,KAAK;AAC5B,QAAA,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,KAAI;YACtD,IAAI,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,MAAM,EAAE;gBACjC,gBAAgB,GAAG,IAAI;;AAE/B,SAAC,CAAC;AAEF,QAAA,OAAO,gBAAgB;;IAG3B,gBAAgB,GAAA;AACZ,QAAA,OAAO,IAAI,CAAC,6BAA6B,CAAC,yBAAyB;;AAGvE,IAAA,gBAAgB,CAAC,WAAgB,EAAA;AAC7B,QAAA,IAAI,CAAC,6BAA6B,CAAC,yBAAyB,GAAG,WAAW;;IAG9E,wBAAwB,GAAA;AACpB,QAAA,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,eAAe;YAAE;QAC5C,IAAI,aAAa,GAAY,KAAK;AAClC,QAAA,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,GAAG,KAAI;YACtD,IAAI,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,MAAM,EAAE;gBACjC,aAAa,GAAG,IAAI;;AAE5B,SAAC,CAAC;AAEF,QAAA,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,aAAa;;IAGvG,uBAAuB,GAAA;AACnB,QAAA,MAAM,WAAW,GAAG,IAAI,CAAC,oCAAoC,EAAE;AAE/D,QAAA,IAAI,IAAI,CAAC,YAAY,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;AAChE,YAAA,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC;;QAEnE,IAAI,IAAI,CAAC,QAAQ,KAAK,OAAO,IAAI,IAAI,CAAC,sBAAsB,EAAE;AAC1D,YAAA,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,sBAAsB,EAAE,IAAI,CAAC,sBAAsB,EAAE,CAAC;;QAEvF,MAAM,IAAI,GAAG,4BAA4B;AAEzC,QAAA,IAAI,WAAW,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;YACpD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAG,EAAA,IAAI,CAAE,CAAA,CAAC,EAAE;gBAC9B,WAAW;AACd,aAAA,CAAC;;aACC;AACH,YAAA,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAG,EAAA,IAAI,CAAE,CAAA,CAAC,EAAE,EAAE,CAAC;;;IAI7C,yBAAyB,GAAA;AACrB,QAAA,IAAI,CAAC,sBAAsB,EAAE,0BAA0B,EAAE;AACzD,QAAA,IAAI,CAAC,kBAAkB,GAAG,IAAI;QAC9B,IAAI,CAAC,mBAAmB,EAAE;QAC1B,IAAI,CAAC,UAAU,EAAE;QACjB,IAAI,CAAC,uBAAuB,EAAE;AAC9B,QAAA,IAAI,CAAC,qBAAqB,GAAG,IAAI;AACjC,QAAA,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE;;IAG9B,UAAU,GAAA;QACN,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC,IAAI,CAAC,0BAA0B,CAAC;QACrE,IAAI,CAAC,eAAe,CAAC,oBAAoB,GAAG,SAAS,CAAC,IAAI,CAAC,mBAAmB,CAAC;QAC/E,IAAI,CAAC,iBAAiB,CAAC,uBAAuB,CAAC,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC;;+GA3W/E,+BAA+B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,IAAA,CAAA,MAAA,EAAA,EAAA,EAAA,KAAA,EAAAA,IAAA,CAAA,cAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,2BAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,mBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,eAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,IAAA,CAAA,yCAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,sBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA/B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,+BAA+B,EAkC7B,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uCAAA,EAAA,MAAA,EAAA,EAAA,mBAAA,EAAA,qBAAA,EAAA,0BAAA,EAAA,4BAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,UAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,aAAA,EAAA,YAAA,EAAA,cAAA,EAAA,WAAA,EAAA,aAAA,EAAA,8BAAA,EAAA,gCAAA,EAAA,sBAAA,EAAA,wBAAA,EAAA,wBAAA,EAAA,0BAAA,EAAA,uBAAA,EAAA,yBAAA,EAAA,YAAA,EAAA,cAAA,EAAA,EAAA,OAAA,EAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,0BAAA,EAAA,4BAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,wBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAA,oCAAoC,ECxFnD,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,aAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,w6FAmEA,EDtBQ,MAAA,EAAA,CAAA,g74CAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,IAAI,EACJ,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,6BAA6B,EAE7B,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,uBAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,OAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAA,EAAA,CAAA,mBAAA,EAAA,QAAA,EAAA,yBAAA,EAAA,MAAA,EAAA,CAAA,gBAAA,EAAA,YAAA,EAAA,MAAA,EAAA,sBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,OAAO,EAEP,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,uBAAuB,8BACvB,cAAc,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oCAAA,EAAA,QAAA,EAAA,0CAAA,EAAA,MAAA,EAAA,CAAA,qBAAA,EAAA,cAAA,EAAA,WAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,aAAA,EAAA,wCAAA,EAAA,YAAA,EAAA,4CAAA,EAAA,yBAAA,EAAA,iBAAA,EAAA,4BAAA,EAAA,oBAAA,EAAA,aAAA,EAAA,mBAAA,EAAA,cAAA,EAAA,kCAAA,EAAA,gCAAA,EAAA,aAAA,EAAA,gBAAA,EAAA,uBAAA,EAAA,6BAAA,EAAA,2BAAA,CAAA,EAAA,OAAA,EAAA,CAAA,gBAAA,EAAA,mBAAA,EAAA,sBAAA,EAAA,iBAAA,EAAA,sBAAA,EAAA,uBAAA,EAAA,YAAA,EAAA,qBAAA,EAAA,oBAAA,EAAA,oBAAA,EAAA,eAAA,EAAA,kBAAA,EAAA,qBAAA,EAAA,qBAAA,EAAA,oBAAA,EAAA,qBAAA,EAAA,sBAAA,EAAA,qBAAA,EAAA,uBAAA,EAAA,4BAAA,EAAA,qBAAA,EAAA,+BAAA,EAAA,uBAAA,EAAA,iBAAA,EAAA,uBAAA,EAAA,+BAAA,EAAA,cAAA,EAAA,4BAAA,EAAA,gCAAA,EAAA,mBAAA,EAAA,sBAAA,EAAA,uBAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;4FAGT,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAf3C,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,uCAAuC,EAGhC,eAAA,EAAA,uBAAuB,CAAC,MAAM,EACtC,OAAA,EAAA;wBACL,IAAI;wBACJ,6BAA6B;wBAC7B,KAAK;wBACL,OAAO;wBACP,gBAAgB;wBAChB,uBAAuB;wBACvB,cAAc;AACjB,qBAAA,EAAA,QAAA,EAAA,w6FAAA,EAAA,MAAA,EAAA,CAAA,g74CAAA,CAAA,EAAA;kVAGQ,mBAAmB,EAAA,CAAA;sBAA3B;gBACQ,0BAA0B,EAAA,CAAA;sBAAlC;gBACQ,OAAO,EAAA,CAAA;sBAAf;gBACQ,QAAQ,EAAA,CAAA;sBAAhB;gBACQ,eAAe,EAAA,CAAA;sBAAvB;gBACQ,WAAW,EAAA,CAAA;sBAAnB;gBAMQ,YAAY,EAAA,CAAA;sBAApB;gBACQ,WAAW,EAAA,CAAA;sBAAnB;gBACQ,8BAA8B,EAAA,CAAA;sBAAtC;gBACQ,sBAAsB,EAAA,CAAA;sBAA9B;gBACQ,wBAAwB,EAAA,CAAA;sBAAhC;gBACQ,uBAAuB,EAAA,CAAA;sBAA/B;gBACQ,YAAY,EAAA,CAAA;sBAApB;gBAES,qBAAqB,EAAA,CAAA;sBAA9B;gBAIS,cAAc,EAAA,CAAA;sBAAvB;gBACS,0BAA0B,EAAA,CAAA;sBAAnC;gBACS,iBAAiB,EAAA,CAAA;sBAA1B;gBAQgD,sBAAsB,EAAA,CAAA;sBAAtE,SAAS;uBAAC,oCAAoC;;;AExFnD;;AAEG;;;;"}
|
|
@@ -7,7 +7,7 @@ import { ANNAIconNames, Constants, AnnaCoreModule, AnnaNonEditableGenericTableCo
|
|
|
7
7
|
import * as i5 from '@annalib/anna-design-components-lib';
|
|
8
8
|
import { AnnaDesignComponentsLibModule } from '@annalib/anna-design-components-lib';
|
|
9
9
|
import { UserTypeEnum } from '@annalib/anna-feature-lib';
|
|
10
|
-
import * as i6 from '@annalib/anna-feature-
|
|
10
|
+
import * as i6 from '@annalib/anna-feature-shared-lib';
|
|
11
11
|
import dayjs from 'dayjs';
|
|
12
12
|
import { isEqual, cloneDeep } from 'lodash-es';
|
|
13
13
|
import * as i3 from 'ngx-toastr';
|