@annalib/anna-core 20.2.19 → 20.2.21
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/README.md +28 -28
- package/{esm2020 → esm2022}/annalib-anna-core.mjs +4 -4
- package/esm2022/lib/anna-core-shared-lib/components/anna-buyer-approval-icon-template/anna-buyer-approval-icon-template.component.mjs +14 -0
- package/esm2022/lib/anna-core-shared-lib/components/anna-deleted-order-icon-template/anna-deleted-order-icon-template.component.mjs +13 -0
- package/esm2022/lib/anna-core-shared-lib/components/anna-est-icon-template/anna-est-icon-template.component.mjs +11 -0
- package/esm2022/lib/anna-core-shared-lib/components/anna-icon-column/anna-icon-column.component.mjs +43 -0
- package/esm2022/lib/anna-core-shared-lib/components/anna-live-icon-template/anna-live-icon-template.component.mjs +14 -0
- package/esm2022/lib/anna-core-shared-lib/components/anna-no-data/anna-no-data.component.mjs +22 -0
- package/esm2022/lib/anna-core-shared-lib/components/anna-notify-icon-template/anna-notify-icon-template.component.mjs +13 -0
- package/esm2022/lib/anna-core-shared-lib/components/anna-pay-for-performance-icon-template/anna-pay-for-performance-icon-template.component.mjs +22 -0
- package/esm2022/lib/anna-core-shared-lib/components/anna-rejected-icon-template/anna-rejected-icon-template.component.mjs +14 -0
- package/esm2022/lib/anna-core-shared-lib/constants/shared.constant.mjs +44 -0
- package/{esm2020 → esm2022}/lib/anna-core-shared-lib/directives/digits-only/digits-only.directive.mjs +273 -273
- package/{esm2020 → esm2022}/lib/anna-core-shared-lib/directives/fixed-rows-popup-table/fixed-rows-popup-table.directive.mjs +46 -46
- package/{esm2020 → esm2022}/lib/anna-core-shared-lib/directives/show-ellipsis-text/show-ellipsis-text.directive.mjs +39 -39
- package/esm2022/lib/anna-core-shared-lib/models/anna-generic-data-type.model.mjs +2 -0
- package/esm2022/lib/anna-core-shared-lib/models/anna-global-dropdown-config.model.mjs +2 -0
- package/esm2022/lib/anna-core-shared-lib/models/anna-non-editable-gt-models.mjs +11 -0
- package/{esm2020 → esm2022}/lib/anna-core-shared-lib/models/anna-sort.model.mjs +7 -7
- package/{esm2020 → esm2022}/lib/anna-core-shared-lib/models/anna-tooltip.model.mjs +30 -30
- package/{esm2020 → esm2022}/lib/anna-core-shared-lib/pipes/annaConvertArrayToCommaSeperatedValue.pipe.mjs +39 -39
- package/{esm2020 → esm2022}/lib/anna-core-shared-lib/pipes/annaConvertZeroOrNullOrUndefined.pipe.mjs +27 -27
- package/{esm2020 → esm2022}/lib/anna-core-shared-lib/pipes/annaDateFormatter.pipe.mjs +22 -22
- package/{esm2020 → esm2022}/lib/anna-core-shared-lib/pipes/annaFilterSearchedText.pipe.mjs +55 -55
- package/{esm2020 → esm2022}/lib/anna-core-shared-lib/pipes/annaReplaceChar.pipe.mjs +26 -26
- package/{esm2020 → esm2022}/lib/anna-core-shared-lib/pipes/annaTypeOfData.pipe.mjs +17 -17
- package/{esm2020 → esm2022}/lib/anna-core-shared-lib/services/anna-date-time-format.service.mjs +208 -208
- package/esm2022/lib/anna-core-shared-lib/services/anna-filter.service.mjs +1259 -0
- package/{esm2020 → esm2022}/lib/anna-core-shared-lib/services/anna-generic-table.service.mjs +151 -151
- package/esm2022/lib/anna-core-shared-lib/services/anna-global-config.service.mjs +135 -0
- package/{esm2020 → esm2022}/lib/anna-core-shared-lib/services/anna-number-format.service.mjs +53 -53
- package/{esm2020 → esm2022}/lib/anna-core-shared-lib/services/anna-persisting-filter.service.mjs +65 -65
- package/{esm2020 → esm2022}/lib/anna-core-shared-lib/services/anna-sort.service.mjs +178 -178
- package/esm2022/lib/anna-core.module.mjs +226 -0
- package/esm2022/lib/anna-dropdown-lib/components/anna-calendar-filter/anna-calendar-filter.component.mjs +160 -0
- package/esm2022/lib/anna-dropdown-lib/components/anna-week-calendar-filter/anna-week-calendar-filter.component.mjs +371 -0
- package/esm2022/lib/anna-generic-table-lib/components/anna-column-filters/anna-column-checkbox-filter/anna-column-checkbox-filter.component.mjs +252 -0
- package/esm2022/lib/anna-generic-table-lib/components/anna-column-filters/anna-column-date-range-filter/anna-column-date-range-filter.component.mjs +185 -0
- package/esm2022/lib/anna-generic-table-lib/components/anna-column-filters/anna-column-slider-filter/anna-column-slider-filter.component.mjs +312 -0
- package/esm2022/lib/anna-generic-table-lib/components/anna-column-filters/anna-column-time-filter/anna-column-time-filter.component.mjs +298 -0
- package/esm2022/lib/anna-generic-table-lib/components/anna-non-editable-generic-table/anna-non-editable-generic-table.component.mjs +845 -0
- package/esm2022/lib/anna-generic-table-lib/components/anna-sort/anna-sort.component.mjs +64 -0
- package/esm2022/lib/anna-generic-table-lib/components/anna-table-virtual-scroll-viewport/anna-table-virtual-scroll-viewport.component.mjs +352 -0
- package/esm2022/lib/anna-generic-table-lib/directives/anna-fixed-row-size-table-virtual-scroll-strategy/anna-fixed-row-size-table-virtual-scroll-strategy.directive.mjs +204 -0
- package/{esm2020 → esm2022}/lib/anna-generic-table-lib/directives/anna-fixed-row-size-table-virtual-scroll-strategy/index.mjs +2 -2
- package/esm2022/lib/anna-generic-table-lib/directives/anna-virtual-table/anna-virtual-table.directive.mjs +180 -0
- package/{esm2020 → esm2022}/lib/anna-generic-table-lib/directives/anna-virtual-table/index.mjs +2 -2
- package/{esm2020 → esm2022}/public-api.mjs +58 -58
- package/fesm2022/annalib-anna-core.mjs +6063 -0
- package/fesm2022/annalib-anna-core.mjs.map +1 -0
- package/index.d.ts +5 -5
- package/lib/anna-core-shared-lib/components/anna-buyer-approval-icon-template/anna-buyer-approval-icon-template.component.d.ts +8 -8
- package/lib/anna-core-shared-lib/components/anna-deleted-order-icon-template/anna-deleted-order-icon-template.component.d.ts +8 -8
- package/lib/anna-core-shared-lib/components/anna-est-icon-template/anna-est-icon-template.component.d.ts +5 -5
- package/lib/anna-core-shared-lib/components/anna-icon-column/anna-icon-column.component.d.ts +17 -17
- package/lib/anna-core-shared-lib/components/anna-live-icon-template/anna-live-icon-template.component.d.ts +8 -8
- package/lib/anna-core-shared-lib/components/anna-no-data/anna-no-data.component.d.ts +11 -11
- package/lib/anna-core-shared-lib/components/anna-notify-icon-template/anna-notify-icon-template.component.d.ts +8 -8
- package/lib/anna-core-shared-lib/components/anna-pay-for-performance-icon-template/anna-pay-for-performance-icon-template.component.d.ts +12 -12
- package/lib/anna-core-shared-lib/components/anna-rejected-icon-template/anna-rejected-icon-template.component.d.ts +8 -8
- package/lib/anna-core-shared-lib/constants/shared.constant.d.ts +42 -41
- package/lib/anna-core-shared-lib/directives/digits-only/digits-only.directive.d.ts +34 -34
- package/lib/anna-core-shared-lib/directives/fixed-rows-popup-table/fixed-rows-popup-table.directive.d.ts +16 -16
- package/lib/anna-core-shared-lib/directives/show-ellipsis-text/show-ellipsis-text.directive.d.ts +10 -10
- package/lib/anna-core-shared-lib/models/anna-generic-data-type.model.d.ts +16 -16
- package/lib/anna-core-shared-lib/models/anna-global-dropdown-config.model.d.ts +97 -97
- package/lib/anna-core-shared-lib/models/anna-non-editable-gt-models.d.ts +118 -118
- package/lib/anna-core-shared-lib/models/anna-sort.model.d.ts +11 -11
- package/lib/anna-core-shared-lib/models/anna-tooltip.model.d.ts +25 -25
- package/lib/anna-core-shared-lib/pipes/annaConvertArrayToCommaSeperatedValue.pipe.d.ts +9 -9
- package/lib/anna-core-shared-lib/pipes/annaConvertZeroOrNullOrUndefined.pipe.d.ts +9 -9
- package/lib/anna-core-shared-lib/pipes/annaDateFormatter.pipe.d.ts +8 -8
- package/lib/anna-core-shared-lib/pipes/annaFilterSearchedText.pipe.d.ts +9 -9
- package/lib/anna-core-shared-lib/pipes/annaReplaceChar.pipe.d.ts +9 -9
- package/lib/anna-core-shared-lib/pipes/annaTypeOfData.pipe.d.ts +7 -7
- package/lib/anna-core-shared-lib/services/anna-date-time-format.service.d.ts +28 -28
- package/lib/anna-core-shared-lib/services/anna-filter.service.d.ts +154 -154
- package/lib/anna-core-shared-lib/services/anna-generic-table.service.d.ts +27 -27
- package/lib/anna-core-shared-lib/services/anna-global-config.service.d.ts +21 -21
- package/lib/anna-core-shared-lib/services/anna-number-format.service.d.ts +8 -8
- package/lib/anna-core-shared-lib/services/anna-persisting-filter.service.d.ts +9 -9
- package/lib/anna-core-shared-lib/services/anna-sort.service.d.ts +18 -18
- package/lib/anna-core.module.d.ts +45 -45
- package/lib/anna-dropdown-lib/components/anna-calendar-filter/anna-calendar-filter.component.d.ts +45 -45
- package/lib/anna-dropdown-lib/components/anna-week-calendar-filter/anna-week-calendar-filter.component.d.ts +70 -70
- package/lib/anna-generic-table-lib/components/anna-column-filters/anna-column-checkbox-filter/anna-column-checkbox-filter.component.d.ts +60 -60
- package/lib/anna-generic-table-lib/components/anna-column-filters/anna-column-date-range-filter/anna-column-date-range-filter.component.d.ts +53 -53
- package/lib/anna-generic-table-lib/components/anna-column-filters/anna-column-slider-filter/anna-column-slider-filter.component.d.ts +65 -65
- package/lib/anna-generic-table-lib/components/anna-column-filters/anna-column-time-filter/anna-column-time-filter.component.d.ts +83 -83
- package/lib/anna-generic-table-lib/components/anna-non-editable-generic-table/anna-non-editable-generic-table.component.d.ts +174 -174
- package/lib/anna-generic-table-lib/components/anna-sort/anna-sort.component.d.ts +17 -17
- package/lib/anna-generic-table-lib/components/anna-table-virtual-scroll-viewport/anna-table-virtual-scroll-viewport.component.d.ts +141 -141
- package/lib/anna-generic-table-lib/directives/anna-fixed-row-size-table-virtual-scroll-strategy/anna-fixed-row-size-table-virtual-scroll-strategy.directive.d.ts +89 -89
- package/lib/anna-generic-table-lib/directives/anna-fixed-row-size-table-virtual-scroll-strategy/index.d.ts +1 -1
- package/lib/anna-generic-table-lib/directives/anna-virtual-table/anna-virtual-table.directive.d.ts +45 -45
- package/lib/anna-generic-table-lib/directives/anna-virtual-table/index.d.ts +1 -1
- package/package.json +5 -11
- package/public-api.d.ts +42 -42
- package/src/lib/anna-common-scss/_animate.scss +27 -27
- package/src/lib/anna-common-scss/_application-spacing.scss +7 -7
- package/src/lib/anna-common-scss/_bootstrap-tooltip.scss +27 -27
- package/src/lib/anna-common-scss/_button.scss +18 -18
- package/src/lib/anna-common-scss/_colors.scss +107 -107
- package/src/lib/anna-common-scss/_common-order-listing-table.scss +172 -172
- package/src/lib/anna-common-scss/_custom-anna-datepicker.scss +14 -14
- package/src/lib/anna-common-scss/_customDropdown.scss +123 -123
- package/src/lib/anna-common-scss/_dashboard-partials.scss +106 -106
- package/src/lib/anna-common-scss/_date-picker-form.scss +87 -87
- package/src/lib/anna-common-scss/_easy-filter.scss +138 -138
- package/src/lib/anna-common-scss/_edit-filter-popup.scss +70 -70
- package/src/lib/anna-common-scss/_filters.scss +712 -712
- package/src/lib/anna-common-scss/_font.scss +9 -9
- package/src/lib/anna-common-scss/_fonts.scss +86 -86
- package/src/lib/anna-common-scss/_generic-modal.scss +63 -63
- package/src/lib/anna-common-scss/_generic-table-common.scss +198 -198
- package/src/lib/anna-common-scss/_gt-table.scss +425 -425
- package/src/lib/anna-common-scss/_legend.scss +11 -11
- package/src/lib/anna-common-scss/_mat-button-toggle.scss +38 -38
- package/src/lib/anna-common-scss/_mat-menu.scss +17 -17
- package/src/lib/anna-common-scss/_mixins.scss +187 -187
- package/src/lib/anna-common-scss/_modal.scss +37 -37
- package/src/lib/anna-common-scss/_popup-filter-toggle-button.scss +36 -36
- package/src/lib/anna-common-scss/_scrollbar.scss +14 -14
- package/src/lib/anna-common-scss/_sort.scss +30 -30
- package/src/lib/anna-common-scss/_toggle.scss +86 -86
- package/src/lib/anna-common-scss/style.scss +1 -1
- package/src/lib/anna-common-scss/third-party-lib/_angular-material-mat-radio.scss +25 -25
- package/src/lib/anna-common-scss/third-party-lib/_anna-mat-button-toggle-group-size-lg.scss +34 -34
- package/src/lib/anna-common-scss/third-party-lib/_mat-autocomplete.scss +31 -31
- package/esm2020/lib/anna-core-shared-lib/components/anna-buyer-approval-icon-template/anna-buyer-approval-icon-template.component.mjs +0 -14
- package/esm2020/lib/anna-core-shared-lib/components/anna-deleted-order-icon-template/anna-deleted-order-icon-template.component.mjs +0 -13
- package/esm2020/lib/anna-core-shared-lib/components/anna-est-icon-template/anna-est-icon-template.component.mjs +0 -11
- package/esm2020/lib/anna-core-shared-lib/components/anna-icon-column/anna-icon-column.component.mjs +0 -43
- package/esm2020/lib/anna-core-shared-lib/components/anna-live-icon-template/anna-live-icon-template.component.mjs +0 -14
- package/esm2020/lib/anna-core-shared-lib/components/anna-no-data/anna-no-data.component.mjs +0 -22
- package/esm2020/lib/anna-core-shared-lib/components/anna-notify-icon-template/anna-notify-icon-template.component.mjs +0 -13
- package/esm2020/lib/anna-core-shared-lib/components/anna-pay-for-performance-icon-template/anna-pay-for-performance-icon-template.component.mjs +0 -22
- package/esm2020/lib/anna-core-shared-lib/components/anna-rejected-icon-template/anna-rejected-icon-template.component.mjs +0 -14
- package/esm2020/lib/anna-core-shared-lib/constants/shared.constant.mjs +0 -43
- package/esm2020/lib/anna-core-shared-lib/models/anna-generic-data-type.model.mjs +0 -2
- package/esm2020/lib/anna-core-shared-lib/models/anna-global-dropdown-config.model.mjs +0 -2
- package/esm2020/lib/anna-core-shared-lib/models/anna-non-editable-gt-models.mjs +0 -11
- package/esm2020/lib/anna-core-shared-lib/services/anna-filter.service.mjs +0 -1259
- package/esm2020/lib/anna-core-shared-lib/services/anna-global-config.service.mjs +0 -135
- package/esm2020/lib/anna-core.module.mjs +0 -237
- package/esm2020/lib/anna-dropdown-lib/components/anna-calendar-filter/anna-calendar-filter.component.mjs +0 -160
- package/esm2020/lib/anna-dropdown-lib/components/anna-week-calendar-filter/anna-week-calendar-filter.component.mjs +0 -371
- package/esm2020/lib/anna-generic-table-lib/components/anna-column-filters/anna-column-checkbox-filter/anna-column-checkbox-filter.component.mjs +0 -252
- package/esm2020/lib/anna-generic-table-lib/components/anna-column-filters/anna-column-date-range-filter/anna-column-date-range-filter.component.mjs +0 -185
- package/esm2020/lib/anna-generic-table-lib/components/anna-column-filters/anna-column-slider-filter/anna-column-slider-filter.component.mjs +0 -312
- package/esm2020/lib/anna-generic-table-lib/components/anna-column-filters/anna-column-time-filter/anna-column-time-filter.component.mjs +0 -298
- package/esm2020/lib/anna-generic-table-lib/components/anna-non-editable-generic-table/anna-non-editable-generic-table.component.mjs +0 -840
- package/esm2020/lib/anna-generic-table-lib/components/anna-sort/anna-sort.component.mjs +0 -64
- package/esm2020/lib/anna-generic-table-lib/components/anna-table-virtual-scroll-viewport/anna-table-virtual-scroll-viewport.component.mjs +0 -352
- package/esm2020/lib/anna-generic-table-lib/directives/anna-fixed-row-size-table-virtual-scroll-strategy/anna-fixed-row-size-table-virtual-scroll-strategy.directive.mjs +0 -204
- package/esm2020/lib/anna-generic-table-lib/directives/anna-virtual-table/anna-virtual-table.directive.mjs +0 -180
- package/fesm2015/annalib-anna-core.mjs +0 -6076
- package/fesm2015/annalib-anna-core.mjs.map +0 -1
- package/fesm2020/annalib-anna-core.mjs +0 -6068
- package/fesm2020/annalib-anna-core.mjs.map +0 -1
package/{esm2020 → esm2022}/lib/anna-core-shared-lib/services/anna-generic-table.service.mjs
RENAMED
|
@@ -1,151 +1,151 @@
|
|
|
1
|
-
// Angular import statements
|
|
2
|
-
import { Injectable } from '@angular/core';
|
|
3
|
-
import { ActivatedRoute, Router } from '@angular/router';
|
|
4
|
-
// Third party import statements
|
|
5
|
-
import { Subject } from 'rxjs';
|
|
6
|
-
import { cloneDeep } from 'lodash-es';
|
|
7
|
-
//sub-entries of anna lib import statement
|
|
8
|
-
import { AnnaFilterService } from './anna-filter.service';
|
|
9
|
-
import { AnnaSortService } from './anna-sort.service';
|
|
10
|
-
import * as i0 from "@angular/core";
|
|
11
|
-
import * as i1 from "./anna-filter.service";
|
|
12
|
-
import * as i2 from "@angular/router";
|
|
13
|
-
import * as i3 from "./anna-sort.service";
|
|
14
|
-
export class AnnaGtHelperService {
|
|
15
|
-
constructor(annaFilterService, router, route, annaSortService) {
|
|
16
|
-
this.annaFilterService = annaFilterService;
|
|
17
|
-
this.router = router;
|
|
18
|
-
this.route = route;
|
|
19
|
-
this.annaSortService = annaSortService;
|
|
20
|
-
this.virtualScrollSubject = new Subject();
|
|
21
|
-
}
|
|
22
|
-
calculateNumberOfSkeletonColumnsForTable(tableHeaders) {
|
|
23
|
-
let numberOfSkeletonColumns = [];
|
|
24
|
-
var headersInEachColumn = 0;
|
|
25
|
-
tableHeaders.forEach((column) => {
|
|
26
|
-
if (column.visible) {
|
|
27
|
-
headersInEachColumn = 0;
|
|
28
|
-
column.headerInfo.forEach(() => {
|
|
29
|
-
headersInEachColumn++;
|
|
30
|
-
});
|
|
31
|
-
numberOfSkeletonColumns.push(Array(headersInEachColumn).fill(0));
|
|
32
|
-
}
|
|
33
|
-
});
|
|
34
|
-
return numberOfSkeletonColumns;
|
|
35
|
-
}
|
|
36
|
-
initColumnFilterAndSorting() {
|
|
37
|
-
this.annaFilterService.tooltipSelectedMap = new Map();
|
|
38
|
-
this.annaFilterService.selectedRadio = null;
|
|
39
|
-
this.annaFilterService.appliedFiltersArray = [];
|
|
40
|
-
this.annaFilterService.initialValueMap = new Map();
|
|
41
|
-
this.annaSortService.columnSortState = new Map();
|
|
42
|
-
this.annaSortService.noSortingAppliedData = [];
|
|
43
|
-
}
|
|
44
|
-
enableOrDisableClearAllBtn() {
|
|
45
|
-
let isFilterApplied = this.annaFilterService.appliedFiltersArray.length > 0;
|
|
46
|
-
let isSortApplied = this.isSortingAppliedToTable();
|
|
47
|
-
return isFilterApplied || isSortApplied ? false : true;
|
|
48
|
-
}
|
|
49
|
-
updateFiltersInURL() {
|
|
50
|
-
let latestQueryParams = this.prepareQueryParamsOnFilter();
|
|
51
|
-
if (Object.keys(latestQueryParams).length > 0) {
|
|
52
|
-
this.router.navigate([], {
|
|
53
|
-
queryParams: { filters: JSON.stringify(latestQueryParams) },
|
|
54
|
-
relativeTo: this.route.parent,
|
|
55
|
-
queryParamsHandling: 'merge',
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
|
-
else {
|
|
59
|
-
this.router.navigate([], {
|
|
60
|
-
relativeTo: this.route.parent,
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
prepareQueryParamsOnFilter() {
|
|
65
|
-
let query = {};
|
|
66
|
-
if (this.annaFilterService.appliedFiltersArray.length > 0) {
|
|
67
|
-
query['appliedFilters'] = this.annaFilterService.appliedFiltersArray;
|
|
68
|
-
query['selectedFilterData'] = JSON.stringify(Array.from(this.annaFilterService.tooltipSelectedMap));
|
|
69
|
-
}
|
|
70
|
-
if (this.checkIfSortingIsApplied()) {
|
|
71
|
-
query['sortState'] = JSON.stringify(Array.from(this.annaSortService.columnSortState));
|
|
72
|
-
}
|
|
73
|
-
return query;
|
|
74
|
-
}
|
|
75
|
-
checkIfSortingIsApplied() {
|
|
76
|
-
let isSortingApplied = false;
|
|
77
|
-
for (let val of this.annaSortService.columnSortState.values()) {
|
|
78
|
-
if (val == 'ASC' || val == 'DESC') {
|
|
79
|
-
isSortingApplied = true;
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
return isSortingApplied;
|
|
83
|
-
}
|
|
84
|
-
initTableFilters(clonedTableData) {
|
|
85
|
-
this.annaFilterService.tooltipSelectedMap = new Map();
|
|
86
|
-
this.annaFilterService.selectedRadio = null;
|
|
87
|
-
this.annaFilterService.appliedFiltersArray = [];
|
|
88
|
-
this.annaSortService.columnSortState = new Map();
|
|
89
|
-
this.annaSortService.noSortingAppliedData = cloneDeep(clonedTableData);
|
|
90
|
-
this.annaFilterService.updateStateOfAllTheKeys(this.annaSortService.columnSortState);
|
|
91
|
-
}
|
|
92
|
-
initFilters() {
|
|
93
|
-
this.annaFilterService.tooltipSelectedMap = new Map();
|
|
94
|
-
this.annaFilterService.appliedFiltersArray = [];
|
|
95
|
-
}
|
|
96
|
-
setDataAsPerPersistingFilter(isPersistingFilter, clonedTable, filters) {
|
|
97
|
-
let usersTable;
|
|
98
|
-
if (isPersistingFilter) {
|
|
99
|
-
usersTable = this.annaFilterService.filterData(clonedTable, '');
|
|
100
|
-
this.annaSortService.noSortingAppliedData = cloneDeep(usersTable);
|
|
101
|
-
}
|
|
102
|
-
else {
|
|
103
|
-
usersTable = clonedTable;
|
|
104
|
-
this.annaSortService.noSortingAppliedData = cloneDeep(usersTable);
|
|
105
|
-
}
|
|
106
|
-
if (filters?.sortState) {
|
|
107
|
-
this.annaSortService.columnSortState = new Map(JSON.parse(filters.sortState));
|
|
108
|
-
usersTable = this.callSort(usersTable);
|
|
109
|
-
}
|
|
110
|
-
this.annaFilterService.updateStateOfAllTheKeys(this.annaSortService.columnSortState);
|
|
111
|
-
return usersTable;
|
|
112
|
-
}
|
|
113
|
-
callSort(usersTable) {
|
|
114
|
-
for (let [key, value] of this.annaSortService.columnSortState) {
|
|
115
|
-
if (value == 'ASC') {
|
|
116
|
-
usersTable = this.annaSortService.sortDataForComponentOtherThanLurAndCsrPage(true, usersTable, key);
|
|
117
|
-
}
|
|
118
|
-
else if (value == 'DESC') {
|
|
119
|
-
usersTable = this.annaSortService.sortDataForComponentOtherThanLurAndCsrPage(false, usersTable, key);
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
return usersTable;
|
|
123
|
-
}
|
|
124
|
-
isSortingAppliedToTable() {
|
|
125
|
-
let isSortingApplied = false;
|
|
126
|
-
for (let val of this.annaSortService.columnSortState?.values()) {
|
|
127
|
-
if (val == 'ASC' || val == 'DESC') {
|
|
128
|
-
isSortingApplied = true;
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
return isSortingApplied;
|
|
132
|
-
}
|
|
133
|
-
updateQueryParamsFilter(key, value, operation, queryParamObj) {
|
|
134
|
-
if (operation == 'ADD') {
|
|
135
|
-
queryParamObj[key] = value;
|
|
136
|
-
}
|
|
137
|
-
else if (operation == 'DELETE') {
|
|
138
|
-
delete queryParamObj[key];
|
|
139
|
-
}
|
|
140
|
-
return queryParamObj;
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
146
|
-
type: Injectable,
|
|
147
|
-
args: [{
|
|
148
|
-
providedIn: 'root',
|
|
149
|
-
}]
|
|
150
|
-
}], ctorParameters: function () { return [{ type: i1.AnnaFilterService }, { type: i2.Router }, { type: i2.ActivatedRoute }, { type: i3.AnnaSortService }]; } });
|
|
151
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5uYS1nZW5lcmljLXRhYmxlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbm5hLWNvcmUvc3JjL2xpYi9hbm5hLWNvcmUtc2hhcmVkLWxpYi9zZXJ2aWNlcy9hbm5hLWdlbmVyaWMtdGFibGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSw0QkFBNEI7QUFDNUIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXpELGdDQUFnQztBQUNoQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFdEMsMENBQTBDO0FBQzFDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzFELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7QUFLdEQsTUFBTSxPQUFPLG1CQUFtQjtJQUU1QixZQUNZLGlCQUFvQyxFQUNwQyxNQUFjLEVBQ2QsS0FBcUIsRUFDckIsZUFBZ0M7UUFIaEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDckIsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBTDVDLHlCQUFvQixHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7SUFNbEMsQ0FBQztJQUVKLHdDQUF3QyxDQUFDLFlBQW1CO1FBQ3hELElBQUksdUJBQXVCLEdBQVksRUFBRSxDQUFDO1FBQzFDLElBQUksbUJBQW1CLEdBQUcsQ0FBQyxDQUFDO1FBQzVCLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUM1QixJQUFJLE1B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SUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLGVBQWUsRUFBRSxNQUFNLEVBQUUsRUFBRTtZQUM1RCxJQUFJLEdBQUcsSUFBSSxLQUFLLElBQUksR0FBRyxJQUFJLE1BQU0sRUFBRTtnQkFDL0IsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO2FBQzNCO1NBQ0o7UUFFRCxPQUFPLGdCQUFnQixDQUFDO0lBQzVCLENBQUM7SUFFRCx1QkFBdUIsQ0FBQyxHQUFXLEVBQUUsS0FBVSxFQUFFLFNBQTJCLEVBQUUsYUFBa0I7UUFDNUYsSUFBSSxTQUFTLElBQUksS0FBSyxFQUFFO1lBQ3BCLGFBQWEsQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUM7U0FDOUI7YUFBTSxJQUFJLFNBQVMsSUFBSSxRQUFRLEVBQUU7WUFDOUIsT0FBTyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDN0I7UUFDRCxPQUFPLGFBQWEsQ0FBQztJQUN6QixDQUFDOztpSEFuSlEsbUJBQW1CO3FIQUFuQixtQkFBbUIsY0FGaEIsTUFBTTs0RkFFVCxtQkFBbUI7a0JBSC9CLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQW5ndWxhciBpbXBvcnQgc3RhdGVtZW50c1xyXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5cclxuLy8gVGhpcmQgcGFydHkgaW1wb3J0IHN0YXRlbWVudHNcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBjbG9uZURlZXAgfSBmcm9tICdsb2Rhc2gtZXMnO1xyXG5cclxuLy9zdWItZW50cmllcyBvZiBhbm5hIGxpYiBpbXBvcnQgc3RhdGVtZW50XHJcbmltcG9ydCB7IEFubmFGaWx0ZXJTZXJ2aWNlIH0gZnJvbSAnLi9hbm5hLWZpbHRlci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgQW5uYVNvcnRTZXJ2aWNlIH0gZnJvbSAnLi9hbm5hLXNvcnQuc2VydmljZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBbm5hR3RIZWxwZXJTZXJ2aWNlIHtcclxuICAgIHZpcnR1YWxTY3JvbGxTdWJqZWN0ID0gbmV3IFN1YmplY3QoKTtcclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByaXZhdGUgYW5uYUZpbHRlclNlcnZpY2U6IEFubmFGaWx0ZXJTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICAgICAgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXHJcbiAgICAgICAgcHJpdmF0ZSBhbm5hU29ydFNlcnZpY2U6IEFubmFTb3J0U2VydmljZSxcclxuICAgICkge31cclxuXHJcbiAgICBjYWxjdWxhdGVOdW1iZXJPZlNrZWxldG9uQ29sdW1uc0ZvclRhYmxlKHRhYmxlSGVhZGVyczogYW55W10pOiBudW1iZXJbXVtdIHtcclxuICAgICAgICBsZXQgbnVtYmVyT2ZTa2VsZXRvbkNvbHVtbnM6IGFueVtdW10gPSBbXTtcclxuICAgICAgICB2YXIgaGVhZGVyc0luRWFjaENvbHVtbiA9IDA7XHJcbiAgICAgICAgdGFibGVIZWFkZXJzLmZvckVhY2goKGNvbHVtbikgPT4ge1xyXG4gICAgICAgICAgICBpZiAoY29sdW1uLnZpc2libGUpIHtcclxuICAgICAgICAgICAgICAgIGhlYWRlcnNJbkVhY2hDb2x1bW4gPSAwO1xyXG4gICAgICAgICAgICAgICAgY29sdW1uLmhlYWRlckluZm8uZm9yRWFjaCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgaGVhZGVyc0luRWFjaENvbHVtbisrO1xyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICBudW1iZXJPZlNrZWxldG9uQ29sdW1ucy5wdXNoKEFycmF5KGhlYWRlcnNJbkVhY2hDb2x1bW4pLmZpbGwoMCkpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgcmV0dXJuIG51bWJlck9mU2tlbGV0b25Db2x1bW5zO1xyXG4gICAgfVxyXG5cclxuICAgIGluaXRDb2x1bW5GaWx0ZXJBbmRTb3J0aW5nKCkge1xyXG4gICAgICAgIHRoaXMuYW5uYUZpbHRlclNlcnZpY2UudG9vbHRpcFNlbGVjdGVkTWFwID0gbmV3IE1hcCgpO1xyXG4gICAgICAgIHRoaXMuYW5uYUZpbHRlclNlcnZpY2Uuc2VsZWN0ZWRSYWRpbyA9IG51bGw7XHJcbiAgICAgICAgdGhpcy5hbm5hRmlsdGVyU2VydmljZS5hcHBsaWVkRmlsdGVyc0FycmF5ID0gW107XHJcbiAgICAgICAgdGhpcy5hbm5hRmlsdGVyU2VydmljZS5pbml0aWFsVmFsdWVNYXAgPSBuZXcgTWFwKCk7XHJcbiAgICAgICAgdGhpcy5hbm5hU29ydFNlcnZpY2UuY29sdW1uU29ydFN0YXRlID0gbmV3IE1hcCgpO1xyXG4gICAgICAgIHRoaXMuYW5uYVNvcnRTZXJ2aWNlLm5vU29ydGluZ0FwcGxpZWREYXRhID0gW107XHJcbiAgICB9XHJcblxyXG4gICAgZW5hYmxlT3JEaXNhYmxlQ2xlYXJBbGxCdG4oKTogYm9vbGVhbiB7XHJcbiAgICAgICAgbGV0IGlzRmlsdGVyQXBwbGllZCA9IHRoaXMuYW5uYUZpbHRlclNlcnZpY2UuYXBwbGllZEZpbHRlcnNBcnJheS5sZW5ndGggPiAwO1xyXG4gICAgICAgIGxldCBpc1NvcnRBcHBsaWVkID0gdGhpcy5pc1NvcnRpbmdBcHBsaWVkVG9UYWJsZSgpO1xyXG5cclxuICAgICAgICByZXR1cm4gaXNGaWx0ZXJBcHBsaWVkIHx8IGlzU29ydEFwcGxpZWQgPyBmYWxzZSA6IHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgdXBkYXRlRmlsdGVyc0luVVJMKCkge1xyXG4gICAgICAgIGxldCBsYXRlc3RRdWVyeVBhcmFtcyA9IHRoaXMucHJlcGFyZVF1ZXJ5UGFyYW1zT25GaWx0ZXIoKTtcclxuXHJcbiAgICAgICAgaWYgKE9iamVjdC5rZXlzKGxhdGVzdFF1ZXJ5UGFyYW1zKS5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtdLCB7XHJcbiAgICAgICAgICAgICAgICBxdWVyeVBhcmFtczogeyBmaWx0ZXJzOiBKU09OLnN0cmluZ2lmeShsYXRlc3RRdWVyeVBhcmFtcykgfSxcclxuICAgICAgICAgICAgICAgIHJlbGF0aXZlVG86IHRoaXMucm91dGUucGFyZW50LFxyXG4gICAgICAgICAgICAgICAgcXVlcnlQYXJhbXNIYW5kbGluZzogJ21lcmdlJyxcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW10sIHtcclxuICAgICAgICAgICAgICAgIHJlbGF0aXZlVG86IHRoaXMucm91dGUucGFyZW50LFxyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJlcGFyZVF1ZXJ5UGFyYW1zT25GaWx0ZXIoKSB7XHJcbiAgICAgICAgbGV0IHF1ZXJ5OiBhbnkgPSB7fTtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMuYW5uYUZpbHRlclNlcnZpY2UuYXBwbGllZEZpbHRlcnNBcnJheS5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgIHF1ZXJ5WydhcHBsaWVkRmlsdGVycyddID0gdGhpcy5hbm5hRmlsdGVyU2VydmljZS5hcHBsaWVkRmlsdGVyc0FycmF5O1xyXG4gICAgICAgICAgICBxdWVyeVsnc2VsZWN0ZWRGaWx0ZXJEYXRhJ10gPSBKU09OLnN0cmluZ2lmeShBcnJheS5mcm9tKHRoaXMuYW5uYUZpbHRlclNlcnZpY2UudG9vbHRpcFNlbGVjdGVkTWFwKSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAodGhpcy5jaGVja0lmU29ydGluZ0lzQXBwbGllZCgpKSB7XHJcbiAgICAgICAgICAgIHF1ZXJ5Wydzb3J0U3RhdGUnXSA9IEpTT04uc3RyaW5naWZ5KEFycmF5LmZyb20odGhpcy5hbm5hU29ydFNlcnZpY2UuY29sdW1uU29ydFN0YXRlKSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gcXVlcnk7XHJcbiAgICB9XHJcblxyXG4gICAgY2hlY2tJZlNvcnRpbmdJc0FwcGxpZWQoKSB7XHJcbiAgICAgICAgbGV0IGlzU29ydGluZ0FwcGxpZWQgPSBmYWxzZTtcclxuICAgICAgICBmb3IgKGxldCB2YWwgb2YgdGhpcy5hbm5hU29ydFNlcnZpY2UuY29sdW1uU29ydFN0YXRlLnZhbHVlcygpKSB7XHJcbiAgICAgICAgICAgIGlmICh2YWwgPT0gJ0FTQycgfHwgdmFsID09ICdERVNDJykge1xyXG4gICAgICAgICAgICAgICAgaXNTb3J0aW5nQXBwbGllZCA9IHRydWU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBpc1NvcnRpbmdBcHBsaWVkO1xyXG4gICAgfVxyXG5cclxuICAgIGluaXRUYWJsZUZpbHRlcnMoY2xvbmVkVGFibGVEYXRhOiBhbnkpIHtcclxuICAgICAgICB0aGlzLmFubmFGaWx0ZXJTZXJ2aWNlLnRvb2x0aXBTZWxlY3RlZE1hcCA9IG5ldyBNYXAoKTtcclxuICAgICAgICB0aGlzLmFubmFGaWx0ZXJTZXJ2aWNlLnNlbGVjdGVkUmFkaW8gPSBudWxsO1xyXG4gICAgICAgIHRoaXMuYW5uYUZpbHRlclNlcnZpY2UuYXBwbGllZEZpbHRlcnNBcnJheSA9IFtdO1xyXG5cclxuICAgICAgICB0aGlzLmFubmFTb3J0U2VydmljZS5jb2x1bW5Tb3J0U3RhdGUgPSBuZXcgTWFwKCk7XHJcblxyXG4gICAgICAgIHRoaXMuYW5uYVNvcnRTZXJ2aWNlLm5vU29ydGluZ0FwcGxpZWREYXRhID0gY2xvbmVEZWVwKGNsb25lZFRhYmxlRGF0YSk7XHJcbiAgICAgICAgdGhpcy5hbm5hRmlsdGVyU2VydmljZS51cGRhdGVTdGF0ZU9mQWxsVGhlS2V5cyh0aGlzLmFubmFTb3J0U2VydmljZS5jb2x1bW5Tb3J0U3RhdGUpO1xyXG4gICAgfVxyXG5cclxuICAgIGluaXRGaWx0ZXJzKCkge1xyXG4gICAgICAgIHRoaXMuYW5uYUZpbHRlclNlcnZpY2UudG9vbHRpcFNlbGVjdGVkTWFwID0gbmV3IE1hcCgpO1xyXG4gICAgICAgIHRoaXMuYW5uYUZpbHRlclNlcnZpY2UuYXBwbGllZEZpbHRlcnNBcnJheSA9IFtdO1xyXG4gICAgfVxyXG5cclxuICAgIHNldERhdGFBc1BlclBlcnNpc3RpbmdGaWx0ZXIoaXNQZXJzaXN0aW5nRmlsdGVyOiBib29sZWFuLCBjbG9uZWRUYWJsZTogYW55LCBmaWx0ZXJzOiBhbnkpOiBhbnkge1xyXG4gICAgICAgIGxldCB1c2Vyc1RhYmxlO1xyXG4gICAgICAgIGlmIChpc1BlcnNpc3RpbmdGaWx0ZXIpIHtcclxuICAgICAgICAgICAgdXNlcnNUYWJsZSA9IHRoaXMuYW5uYUZpbHRlclNlcnZpY2UuZmlsdGVyRGF0YShjbG9uZWRUYWJsZSwgJycpO1xyXG4gICAgICAgICAgICB0aGlzLmFubmFTb3J0U2VydmljZS5ub1NvcnRpbmdBcHBsaWVkRGF0YSA9IGNsb25lRGVlcCh1c2Vyc1RhYmxlKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB1c2Vyc1RhYmxlID0gY2xvbmVkVGFibGU7XHJcbiAgICAgICAgICAgIHRoaXMuYW5uYVNvcnRTZXJ2aWNlLm5vU29ydGluZ0FwcGxpZWREYXRhID0gY2xvbmVEZWVwKHVzZXJzVGFibGUpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKGZpbHRlcnM/LnNvcnRTdGF0ZSkge1xyXG4gICAgICAgICAgICB0aGlzLmFubmFTb3J0U2VydmljZS5jb2x1bW5Tb3J0U3RhdGUgPSBuZXcgTWFwKEpTT04ucGFyc2UoZmlsdGVycy5zb3J0U3RhdGUpKTtcclxuICAgICAgICAgICAgdXNlcnNUYWJsZSA9IHRoaXMuY2FsbFNvcnQodXNlcnNUYWJsZSk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLmFubmFGaWx0ZXJTZXJ2aWNlLnVwZGF0ZVN0YXRlT2ZBbGxUaGVLZXlzKHRoaXMuYW5uYVNvcnRTZXJ2aWNlLmNvbHVtblNvcnRTdGF0ZSk7XHJcblxyXG4gICAgICAgIHJldHVybiB1c2Vyc1RhYmxlO1xyXG4gICAgfVxyXG5cclxuICAgIGNhbGxTb3J0KHVzZXJzVGFibGU6IGFueSk6IGFueSB7XHJcbiAgICAgICAgZm9yIChsZXQgW2tleSwgdmFsdWVdIG9mIHRoaXMuYW5uYVNvcnRTZXJ2aWNlLmNvbHVtblNvcnRTdGF0ZSkge1xyXG4gICAgICAgICAgICBpZiAodmFsdWUgPT0gJ0FTQycpIHtcclxuICAgICAgICAgICAgICAgIHVzZXJzVGFibGUgPSB0aGlzLmFubmFTb3J0U2VydmljZS5zb3J0RGF0YUZvckNvbXBvbmVudE90aGVyVGhhbkx1ckFuZENzclBhZ2UodHJ1ZSwgdXNlcnNUYWJsZSwga2V5KTtcclxuICAgICAgICAgICAgfSBlbHNlIGlmICh2YWx1ZSA9PSAnREVTQycpIHtcclxuICAgICAgICAgICAgICAgIHVzZXJzVGFibGUgPSB0aGlzLmFubmFTb3J0U2VydmljZS5zb3J0RGF0YUZvckNvbXBvbmVudE90aGVyVGhhbkx1ckFuZENzclBhZ2UoZmFsc2UsIHVzZXJzVGFibGUsIGtleSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHVzZXJzVGFibGU7XHJcbiAgICB9XHJcblxyXG4gICAgaXNTb3J0aW5nQXBwbGllZFRvVGFibGUoKSB7XHJcbiAgICAgICAgbGV0IGlzU29ydGluZ0FwcGxpZWQgPSBmYWxzZTtcclxuICAgICAgICBmb3IgKGxldCB2YWwgb2YgdGhpcy5hbm5hU29ydFNlcnZpY2UuY29sdW1uU29ydFN0YXRlPy52YWx1ZXMoKSkge1xyXG4gICAgICAgICAgICBpZiAodmFsID09ICdBU0MnIHx8IHZhbCA9PSAnREVTQycpIHtcclxuICAgICAgICAgICAgICAgIGlzU29ydGluZ0FwcGxpZWQgPSB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gaXNTb3J0aW5nQXBwbGllZDtcclxuICAgIH1cclxuXHJcbiAgICB1cGRhdGVRdWVyeVBhcmFtc0ZpbHRlcihrZXk6IHN0cmluZywgdmFsdWU6IGFueSwgb3BlcmF0aW9uOiAnQUREJyB8ICdERUxFVEUnLCBxdWVyeVBhcmFtT2JqOiBhbnkpIHtcclxuICAgICAgICBpZiAob3BlcmF0aW9uID09ICdBREQnKSB7XHJcbiAgICAgICAgICAgIHF1ZXJ5UGFyYW1PYmpba2V5XSA9IHZhbHVlO1xyXG4gICAgICAgIH0gZWxzZSBpZiAob3BlcmF0aW9uID09ICdERUxFVEUnKSB7XHJcbiAgICAgICAgICAgIGRlbGV0ZSBxdWVyeVBhcmFtT2JqW2tleV07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBxdWVyeVBhcmFtT2JqO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
1
|
+
// Angular import statements
|
|
2
|
+
import { Injectable } from '@angular/core';
|
|
3
|
+
import { ActivatedRoute, Router } from '@angular/router';
|
|
4
|
+
// Third party import statements
|
|
5
|
+
import { Subject } from 'rxjs';
|
|
6
|
+
import { cloneDeep } from 'lodash-es';
|
|
7
|
+
//sub-entries of anna lib import statement
|
|
8
|
+
import { AnnaFilterService } from './anna-filter.service';
|
|
9
|
+
import { AnnaSortService } from './anna-sort.service';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
import * as i1 from "./anna-filter.service";
|
|
12
|
+
import * as i2 from "@angular/router";
|
|
13
|
+
import * as i3 from "./anna-sort.service";
|
|
14
|
+
export class AnnaGtHelperService {
|
|
15
|
+
constructor(annaFilterService, router, route, annaSortService) {
|
|
16
|
+
this.annaFilterService = annaFilterService;
|
|
17
|
+
this.router = router;
|
|
18
|
+
this.route = route;
|
|
19
|
+
this.annaSortService = annaSortService;
|
|
20
|
+
this.virtualScrollSubject = new Subject();
|
|
21
|
+
}
|
|
22
|
+
calculateNumberOfSkeletonColumnsForTable(tableHeaders) {
|
|
23
|
+
let numberOfSkeletonColumns = [];
|
|
24
|
+
var headersInEachColumn = 0;
|
|
25
|
+
tableHeaders.forEach((column) => {
|
|
26
|
+
if (column.visible) {
|
|
27
|
+
headersInEachColumn = 0;
|
|
28
|
+
column.headerInfo.forEach(() => {
|
|
29
|
+
headersInEachColumn++;
|
|
30
|
+
});
|
|
31
|
+
numberOfSkeletonColumns.push(Array(headersInEachColumn).fill(0));
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
return numberOfSkeletonColumns;
|
|
35
|
+
}
|
|
36
|
+
initColumnFilterAndSorting() {
|
|
37
|
+
this.annaFilterService.tooltipSelectedMap = new Map();
|
|
38
|
+
this.annaFilterService.selectedRadio = null;
|
|
39
|
+
this.annaFilterService.appliedFiltersArray = [];
|
|
40
|
+
this.annaFilterService.initialValueMap = new Map();
|
|
41
|
+
this.annaSortService.columnSortState = new Map();
|
|
42
|
+
this.annaSortService.noSortingAppliedData = [];
|
|
43
|
+
}
|
|
44
|
+
enableOrDisableClearAllBtn() {
|
|
45
|
+
let isFilterApplied = this.annaFilterService.appliedFiltersArray.length > 0;
|
|
46
|
+
let isSortApplied = this.isSortingAppliedToTable();
|
|
47
|
+
return isFilterApplied || isSortApplied ? false : true;
|
|
48
|
+
}
|
|
49
|
+
updateFiltersInURL() {
|
|
50
|
+
let latestQueryParams = this.prepareQueryParamsOnFilter();
|
|
51
|
+
if (Object.keys(latestQueryParams).length > 0) {
|
|
52
|
+
this.router.navigate([], {
|
|
53
|
+
queryParams: { filters: JSON.stringify(latestQueryParams) },
|
|
54
|
+
relativeTo: this.route.parent,
|
|
55
|
+
queryParamsHandling: 'merge',
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
else {
|
|
59
|
+
this.router.navigate([], {
|
|
60
|
+
relativeTo: this.route.parent,
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
prepareQueryParamsOnFilter() {
|
|
65
|
+
let query = {};
|
|
66
|
+
if (this.annaFilterService.appliedFiltersArray.length > 0) {
|
|
67
|
+
query['appliedFilters'] = this.annaFilterService.appliedFiltersArray;
|
|
68
|
+
query['selectedFilterData'] = JSON.stringify(Array.from(this.annaFilterService.tooltipSelectedMap));
|
|
69
|
+
}
|
|
70
|
+
if (this.checkIfSortingIsApplied()) {
|
|
71
|
+
query['sortState'] = JSON.stringify(Array.from(this.annaSortService.columnSortState));
|
|
72
|
+
}
|
|
73
|
+
return query;
|
|
74
|
+
}
|
|
75
|
+
checkIfSortingIsApplied() {
|
|
76
|
+
let isSortingApplied = false;
|
|
77
|
+
for (let val of this.annaSortService.columnSortState.values()) {
|
|
78
|
+
if (val == 'ASC' || val == 'DESC') {
|
|
79
|
+
isSortingApplied = true;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
return isSortingApplied;
|
|
83
|
+
}
|
|
84
|
+
initTableFilters(clonedTableData) {
|
|
85
|
+
this.annaFilterService.tooltipSelectedMap = new Map();
|
|
86
|
+
this.annaFilterService.selectedRadio = null;
|
|
87
|
+
this.annaFilterService.appliedFiltersArray = [];
|
|
88
|
+
this.annaSortService.columnSortState = new Map();
|
|
89
|
+
this.annaSortService.noSortingAppliedData = cloneDeep(clonedTableData);
|
|
90
|
+
this.annaFilterService.updateStateOfAllTheKeys(this.annaSortService.columnSortState);
|
|
91
|
+
}
|
|
92
|
+
initFilters() {
|
|
93
|
+
this.annaFilterService.tooltipSelectedMap = new Map();
|
|
94
|
+
this.annaFilterService.appliedFiltersArray = [];
|
|
95
|
+
}
|
|
96
|
+
setDataAsPerPersistingFilter(isPersistingFilter, clonedTable, filters) {
|
|
97
|
+
let usersTable;
|
|
98
|
+
if (isPersistingFilter) {
|
|
99
|
+
usersTable = this.annaFilterService.filterData(clonedTable, '');
|
|
100
|
+
this.annaSortService.noSortingAppliedData = cloneDeep(usersTable);
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
usersTable = clonedTable;
|
|
104
|
+
this.annaSortService.noSortingAppliedData = cloneDeep(usersTable);
|
|
105
|
+
}
|
|
106
|
+
if (filters?.sortState) {
|
|
107
|
+
this.annaSortService.columnSortState = new Map(JSON.parse(filters.sortState));
|
|
108
|
+
usersTable = this.callSort(usersTable);
|
|
109
|
+
}
|
|
110
|
+
this.annaFilterService.updateStateOfAllTheKeys(this.annaSortService.columnSortState);
|
|
111
|
+
return usersTable;
|
|
112
|
+
}
|
|
113
|
+
callSort(usersTable) {
|
|
114
|
+
for (let [key, value] of this.annaSortService.columnSortState) {
|
|
115
|
+
if (value == 'ASC') {
|
|
116
|
+
usersTable = this.annaSortService.sortDataForComponentOtherThanLurAndCsrPage(true, usersTable, key);
|
|
117
|
+
}
|
|
118
|
+
else if (value == 'DESC') {
|
|
119
|
+
usersTable = this.annaSortService.sortDataForComponentOtherThanLurAndCsrPage(false, usersTable, key);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
return usersTable;
|
|
123
|
+
}
|
|
124
|
+
isSortingAppliedToTable() {
|
|
125
|
+
let isSortingApplied = false;
|
|
126
|
+
for (let val of this.annaSortService.columnSortState?.values()) {
|
|
127
|
+
if (val == 'ASC' || val == 'DESC') {
|
|
128
|
+
isSortingApplied = true;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
return isSortingApplied;
|
|
132
|
+
}
|
|
133
|
+
updateQueryParamsFilter(key, value, operation, queryParamObj) {
|
|
134
|
+
if (operation == 'ADD') {
|
|
135
|
+
queryParamObj[key] = value;
|
|
136
|
+
}
|
|
137
|
+
else if (operation == 'DELETE') {
|
|
138
|
+
delete queryParamObj[key];
|
|
139
|
+
}
|
|
140
|
+
return queryParamObj;
|
|
141
|
+
}
|
|
142
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaGtHelperService, deps: [{ token: i1.AnnaFilterService }, { token: i2.Router }, { token: i2.ActivatedRoute }, { token: i3.AnnaSortService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
143
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaGtHelperService, providedIn: 'root' }); }
|
|
144
|
+
}
|
|
145
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaGtHelperService, decorators: [{
|
|
146
|
+
type: Injectable,
|
|
147
|
+
args: [{
|
|
148
|
+
providedIn: 'root',
|
|
149
|
+
}]
|
|
150
|
+
}], ctorParameters: function () { return [{ type: i1.AnnaFilterService }, { type: i2.Router }, { type: i2.ActivatedRoute }, { type: i3.AnnaSortService }]; } });
|
|
151
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5uYS1nZW5lcmljLXRhYmxlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbm5hLWNvcmUvc3JjL2xpYi9hbm5hLWNvcmUtc2hhcmVkLWxpYi9zZXJ2aWNlcy9hbm5hLWdlbmVyaWMtdGFibGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSw0QkFBNEI7QUFDNUIsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRXpELGdDQUFnQztBQUNoQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFFdEMsMENBQTBDO0FBQzFDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzFELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7Ozs7QUFLdEQsTUFBTSxPQUFPLG1CQUFtQjtJQUU1QixZQUNZLGlCQUFvQyxFQUNwQyxNQUFjLEVBQ2QsS0FBcUIsRUFDckIsZUFBZ0M7UUFIaEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUNwQyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDckIsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBTDVDLHlCQUFvQixHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7SUFNbEMsQ0FBQztJQUVKLHdDQUF3QyxDQUFDLFlBQW1CO1FBQ3hELElBQUksdUJBQXVCLEdBQVksRUFBRSxDQUFDO1FBQzFDLElBQUksbUJBQW1CLEdBQUcsQ0FBQyxDQUFDO1FBQzVCLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUM1QixJQUFJLE1BQU0sQ0FBQyxPQUFPLEVBQUU7Z0JBQ2hCLG1CQUFtQixHQUFHLENBQUMsQ0FBQztnQkFDeEIsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFO29CQUMzQixtQkFBbUIsRUFBRSxDQUFDO2dCQUMxQixDQUFDLENBQUMsQ0FBQztnQkFDSCx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDcEU7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sdUJBQXVCLENBQUM7SUFDbkMsQ0FBQztJQUVELDBCQUEwQjtRQUN0QixJQUFJLENBQUMsaUJBQWlCLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUN0RCxJQUFJLENBQUMsaUJBQWlCLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQztRQUM1QyxJQUFJLENBQUMsaUJBQWlCLENBQUMsbUJBQW1CLEdBQUcsRUFBRSxDQUFDO1FBQ2hELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxlQUFlLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUNuRCxJQUFJLENBQUMsZUFBZSxDQUFDLGVBQWUsR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ2pELElBQUksQ0FBQyxlQUFlLENBQUMsb0JBQW9CLEdBQUcsRUFBRSxDQUFDO0lBQ25ELENBQUM7SUFFRCwwQkFBMEI7UUFDdEIsSUFBSSxlQUFlLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLG1CQUFtQixDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDNUUsSUFBSSxhQUFhLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixFQUFFLENBQUM7UUFFbkQsT0FBTyxlQUFlLElBQUksYUFBYSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUMzRCxDQUFDO0lBRUQsa0JBQWtCO1FBQ2QsSUFBSSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsMEJBQTBCLEVBQUUsQ0FBQztRQUUxRCxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQzNDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLEVBQUUsRUFBRTtnQkFDckIsV0FBVyxFQUFFLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsaUJBQWlCLENBQUMsRUFBRTtnQkFDM0QsVUFBVSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTTtnQkFDN0IsbUJBQW1CLEVBQUUsT0FBTzthQUMvQixDQUFDLENBQUM7U0FDTjthQUFNO1lBQ0gsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFO2dCQUNyQixVQUFVLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNO2FBQ2hDLENBQUMsQ0FBQztTQUNOO0lBQ0wsQ0FBQztJQUVELDBCQUEwQjtRQUN0QixJQUFJLEtBQUssR0FBUSxFQUFFLENBQUM7UUFFcEIsSUFBSSxJQUFJLENBQUMsaUJBQWlCLENBQUMsbUJBQW1CLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUN2RCxLQUFLLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsbUJBQW1CLENBQUM7WUFDckUsS0FBSyxDQUFDLG9CQUFvQixDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLENBQUM7U0FDdkc7UUFFRCxJQUFJLElBQUksQ0FBQyx1QkFBdUIsRUFBRSxFQUFFO1lBQ2hDLEtBQUssQ0FBQyxXQUFXLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDO1NBQ3pGO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUVELHVCQUF1QjtRQUNuQixJQUFJLGdCQUFnQixHQUFHLEtBQUssQ0FBQztRQUM3QixLQUFLLElBQUksR0FBRyxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsZUFBZSxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQzNELElBQUksR0FBRyxJQUFJLEtBQUssSUFBSSxHQUFHLElBQUksTUFBTSxFQUFFO2dCQUMvQixnQkFBZ0IsR0FBRyxJQUFJLENBQUM7YUFDM0I7U0FDSjtRQUVELE9BQU8sZ0JBQWdCLENBQUM7SUFDNUIsQ0FBQztJQUVELGdCQUFnQixDQUFDLGVBQW9CO1FBQ2pDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ3RELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDO1FBQzVDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxtQkFBbUIsR0FBRyxFQUFFLENBQUM7UUFFaEQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxlQUFlLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUVqRCxJQUFJLENBQUMsZUFBZSxDQUFDLG9CQUFvQixHQUFHLFNBQVMsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUN2RSxJQUFJLENBQUMsaUJBQWlCLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUN6RixDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQ3RELElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxtQkFBbUIsR0FBRyxFQUFFLENBQUM7SUFDcEQsQ0FBQztJQUVELDRCQUE0QixDQUFDLGtCQUEyQixFQUFFLFdBQWdCLEVBQUUsT0FBWTtRQUNwRixJQUFJLFVBQVUsQ0FBQztRQUNmLElBQUksa0JBQWtCLEVBQUU7WUFDcEIsVUFBVSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ2hFLElBQUksQ0FBQyxlQUFlLENBQUMsb0JBQW9CLEdBQUcsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQ3JFO2FBQU07WUFDSCxVQUFVLEdBQUcsV0FBVyxDQUFDO1lBQ3pCLElBQUksQ0FBQyxlQUFlLENBQUMsb0JBQW9CLEdBQUcsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1NBQ3JFO1FBRUQsSUFBSSxPQUFPLEVBQUUsU0FBUyxFQUFFO1lBQ3BCLElBQUksQ0FBQyxlQUFlLENBQUMsZUFBZSxHQUFHLElBQUksR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7WUFDOUUsVUFBVSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLENBQUM7U0FDMUM7UUFFRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUVyRixPQUFPLFVBQVUsQ0FBQztJQUN0QixDQUFDO0lBRUQsUUFBUSxDQUFDLFVBQWU7UUFDcEIsS0FBSyxJQUFJLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsZUFBZSxFQUFFO1lBQzNELElBQUksS0FBSyxJQUFJLEtBQUssRUFBRTtnQkFDaEIsVUFBVSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsMENBQTBDLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRSxHQUFHLENBQUMsQ0FBQzthQUN2RztpQkFBTSxJQUFJLEtBQUssSUFBSSxNQUFNLEVBQUU7Z0JBQ3hCLFVBQVUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLDBDQUEwQyxDQUFDLEtBQUssRUFBRSxVQUFVLEVBQUUsR0FBRyxDQUFDLENBQUM7YUFDeEc7U0FDSjtRQUNELE9BQU8sVUFBVSxDQUFDO0lBQ3RCLENBQUM7SUFFRCx1QkFBdUI7UUFDbkIsSUFBSSxnQkFBZ0IsR0FBRyxLQUFLLENBQUM7UUFDN0IsS0FBSyxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDLGVBQWUsRUFBRSxNQUFNLEVBQUUsRUFBRTtZQUM1RCxJQUFJLEdBQUcsSUFBSSxLQUFLLElBQUksR0FBRyxJQUFJLE1BQU0sRUFBRTtnQkFDL0IsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDO2FBQzNCO1NBQ0o7UUFFRCxPQUFPLGdCQUFnQixDQUFDO0lBQzVCLENBQUM7SUFFRCx1QkFBdUIsQ0FBQyxHQUFXLEVBQUUsS0FBVSxFQUFFLFNBQTJCLEVBQUUsYUFBa0I7UUFDNUYsSUFBSSxTQUFTLElBQUksS0FBSyxFQUFFO1lBQ3BCLGFBQWEsQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUM7U0FDOUI7YUFBTSxJQUFJLFNBQVMsSUFBSSxRQUFRLEVBQUU7WUFDOUIsT0FBTyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDN0I7UUFDRCxPQUFPLGFBQWEsQ0FBQztJQUN6QixDQUFDOytHQW5KUSxtQkFBbUI7bUhBQW5CLG1CQUFtQixjQUZoQixNQUFNOzs0RkFFVCxtQkFBbUI7a0JBSC9CLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQW5ndWxhciBpbXBvcnQgc3RhdGVtZW50c1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbi8vIFRoaXJkIHBhcnR5IGltcG9ydCBzdGF0ZW1lbnRzXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjbG9uZURlZXAgfSBmcm9tICdsb2Rhc2gtZXMnO1xuXG4vL3N1Yi1lbnRyaWVzIG9mIGFubmEgbGliIGltcG9ydCBzdGF0ZW1lbnRcbmltcG9ydCB7IEFubmFGaWx0ZXJTZXJ2aWNlIH0gZnJvbSAnLi9hbm5hLWZpbHRlci5zZXJ2aWNlJztcbmltcG9ydCB7IEFubmFTb3J0U2VydmljZSB9IGZyb20gJy4vYW5uYS1zb3J0LnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBBbm5hR3RIZWxwZXJTZXJ2aWNlIHtcbiAgICB2aXJ0dWFsU2Nyb2xsU3ViamVjdCA9IG5ldyBTdWJqZWN0KCk7XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgYW5uYUZpbHRlclNlcnZpY2U6IEFubmFGaWx0ZXJTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICAgICAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICAgICAgcHJpdmF0ZSBhbm5hU29ydFNlcnZpY2U6IEFubmFTb3J0U2VydmljZSxcbiAgICApIHt9XG5cbiAgICBjYWxjdWxhdGVOdW1iZXJPZlNrZWxldG9uQ29sdW1uc0ZvclRhYmxlKHRhYmxlSGVhZGVyczogYW55W10pOiBudW1iZXJbXVtdIHtcbiAgICAgICAgbGV0IG51bWJlck9mU2tlbGV0b25Db2x1bW5zOiBhbnlbXVtdID0gW107XG4gICAgICAgIHZhciBoZWFkZXJzSW5FYWNoQ29sdW1uID0gMDtcbiAgICAgICAgdGFibGVIZWFkZXJzLmZvckVhY2goKGNvbHVtbikgPT4ge1xuICAgICAgICAgICAgaWYgKGNvbHVtbi52aXNpYmxlKSB7XG4gICAgICAgICAgICAgICAgaGVhZGVyc0luRWFjaENvbHVtbiA9IDA7XG4gICAgICAgICAgICAgICAgY29sdW1uLmhlYWRlckluZm8uZm9yRWFjaCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGhlYWRlcnNJbkVhY2hDb2x1bW4rKztcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBudW1iZXJPZlNrZWxldG9uQ29sdW1ucy5wdXNoKEFycmF5KGhlYWRlcnNJbkVhY2hDb2x1bW4pLmZpbGwoMCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIG51bWJlck9mU2tlbGV0b25Db2x1bW5zO1xuICAgIH1cblxuICAgIGluaXRDb2x1bW5GaWx0ZXJBbmRTb3J0aW5nKCkge1xuICAgICAgICB0aGlzLmFubmFGaWx0ZXJTZXJ2aWNlLnRvb2x0aXBTZWxlY3RlZE1hcCA9IG5ldyBNYXAoKTtcbiAgICAgICAgdGhpcy5hbm5hRmlsdGVyU2VydmljZS5zZWxlY3RlZFJhZGlvID0gbnVsbDtcbiAgICAgICAgdGhpcy5hbm5hRmlsdGVyU2VydmljZS5hcHBsaWVkRmlsdGVyc0FycmF5ID0gW107XG4gICAgICAgIHRoaXMuYW5uYUZpbHRlclNlcnZpY2UuaW5pdGlhbFZhbHVlTWFwID0gbmV3IE1hcCgpO1xuICAgICAgICB0aGlzLmFubmFTb3J0U2VydmljZS5jb2x1bW5Tb3J0U3RhdGUgPSBuZXcgTWFwKCk7XG4gICAgICAgIHRoaXMuYW5uYVNvcnRTZXJ2aWNlLm5vU29ydGluZ0FwcGxpZWREYXRhID0gW107XG4gICAgfVxuXG4gICAgZW5hYmxlT3JEaXNhYmxlQ2xlYXJBbGxCdG4oKTogYm9vbGVhbiB7XG4gICAgICAgIGxldCBpc0ZpbHRlckFwcGxpZWQgPSB0aGlzLmFubmFGaWx0ZXJTZXJ2aWNlLmFwcGxpZWRGaWx0ZXJzQXJyYXkubGVuZ3RoID4gMDtcbiAgICAgICAgbGV0IGlzU29ydEFwcGxpZWQgPSB0aGlzLmlzU29ydGluZ0FwcGxpZWRUb1RhYmxlKCk7XG5cbiAgICAgICAgcmV0dXJuIGlzRmlsdGVyQXBwbGllZCB8fCBpc1NvcnRBcHBsaWVkID8gZmFsc2UgOiB0cnVlO1xuICAgIH1cblxuICAgIHVwZGF0ZUZpbHRlcnNJblVSTCgpIHtcbiAgICAgICAgbGV0IGxhdGVzdFF1ZXJ5UGFyYW1zID0gdGhpcy5wcmVwYXJlUXVlcnlQYXJhbXNPbkZpbHRlcigpO1xuXG4gICAgICAgIGlmIChPYmplY3Qua2V5cyhsYXRlc3RRdWVyeVBhcmFtcykubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW10sIHtcbiAgICAgICAgICAgICAgICBxdWVyeVBhcmFtczogeyBmaWx0ZXJzOiBKU09OLnN0cmluZ2lmeShsYXRlc3RRdWVyeVBhcmFtcykgfSxcbiAgICAgICAgICAgICAgICByZWxhdGl2ZVRvOiB0aGlzLnJvdXRlLnBhcmVudCxcbiAgICAgICAgICAgICAgICBxdWVyeVBhcmFtc0hhbmRsaW5nOiAnbWVyZ2UnLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbXSwge1xuICAgICAgICAgICAgICAgIHJlbGF0aXZlVG86IHRoaXMucm91dGUucGFyZW50LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcmVwYXJlUXVlcnlQYXJhbXNPbkZpbHRlcigpIHtcbiAgICAgICAgbGV0IHF1ZXJ5OiBhbnkgPSB7fTtcblxuICAgICAgICBpZiAodGhpcy5hbm5hRmlsdGVyU2VydmljZS5hcHBsaWVkRmlsdGVyc0FycmF5Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHF1ZXJ5WydhcHBsaWVkRmlsdGVycyddID0gdGhpcy5hbm5hRmlsdGVyU2VydmljZS5hcHBsaWVkRmlsdGVyc0FycmF5O1xuICAgICAgICAgICAgcXVlcnlbJ3NlbGVjdGVkRmlsdGVyRGF0YSddID0gSlNPTi5zdHJpbmdpZnkoQXJyYXkuZnJvbSh0aGlzLmFubmFGaWx0ZXJTZXJ2aWNlLnRvb2x0aXBTZWxlY3RlZE1hcCkpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuY2hlY2tJZlNvcnRpbmdJc0FwcGxpZWQoKSkge1xuICAgICAgICAgICAgcXVlcnlbJ3NvcnRTdGF0ZSddID0gSlNPTi5zdHJpbmdpZnkoQXJyYXkuZnJvbSh0aGlzLmFubmFTb3J0U2VydmljZS5jb2x1bW5Tb3J0U3RhdGUpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBxdWVyeTtcbiAgICB9XG5cbiAgICBjaGVja0lmU29ydGluZ0lzQXBwbGllZCgpIHtcbiAgICAgICAgbGV0IGlzU29ydGluZ0FwcGxpZWQgPSBmYWxzZTtcbiAgICAgICAgZm9yIChsZXQgdmFsIG9mIHRoaXMuYW5uYVNvcnRTZXJ2aWNlLmNvbHVtblNvcnRTdGF0ZS52YWx1ZXMoKSkge1xuICAgICAgICAgICAgaWYgKHZhbCA9PSAnQVNDJyB8fCB2YWwgPT0gJ0RFU0MnKSB7XG4gICAgICAgICAgICAgICAgaXNTb3J0aW5nQXBwbGllZCA9IHRydWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gaXNTb3J0aW5nQXBwbGllZDtcbiAgICB9XG5cbiAgICBpbml0VGFibGVGaWx0ZXJzKGNsb25lZFRhYmxlRGF0YTogYW55KSB7XG4gICAgICAgIHRoaXMuYW5uYUZpbHRlclNlcnZpY2UudG9vbHRpcFNlbGVjdGVkTWFwID0gbmV3IE1hcCgpO1xuICAgICAgICB0aGlzLmFubmFGaWx0ZXJTZXJ2aWNlLnNlbGVjdGVkUmFkaW8gPSBudWxsO1xuICAgICAgICB0aGlzLmFubmFGaWx0ZXJTZXJ2aWNlLmFwcGxpZWRGaWx0ZXJzQXJyYXkgPSBbXTtcblxuICAgICAgICB0aGlzLmFubmFTb3J0U2VydmljZS5jb2x1bW5Tb3J0U3RhdGUgPSBuZXcgTWFwKCk7XG5cbiAgICAgICAgdGhpcy5hbm5hU29ydFNlcnZpY2Uubm9Tb3J0aW5nQXBwbGllZERhdGEgPSBjbG9uZURlZXAoY2xvbmVkVGFibGVEYXRhKTtcbiAgICAgICAgdGhpcy5hbm5hRmlsdGVyU2VydmljZS51cGRhdGVTdGF0ZU9mQWxsVGhlS2V5cyh0aGlzLmFubmFTb3J0U2VydmljZS5jb2x1bW5Tb3J0U3RhdGUpO1xuICAgIH1cblxuICAgIGluaXRGaWx0ZXJzKCkge1xuICAgICAgICB0aGlzLmFubmFGaWx0ZXJTZXJ2aWNlLnRvb2x0aXBTZWxlY3RlZE1hcCA9IG5ldyBNYXAoKTtcbiAgICAgICAgdGhpcy5hbm5hRmlsdGVyU2VydmljZS5hcHBsaWVkRmlsdGVyc0FycmF5ID0gW107XG4gICAgfVxuXG4gICAgc2V0RGF0YUFzUGVyUGVyc2lzdGluZ0ZpbHRlcihpc1BlcnNpc3RpbmdGaWx0ZXI6IGJvb2xlYW4sIGNsb25lZFRhYmxlOiBhbnksIGZpbHRlcnM6IGFueSk6IGFueSB7XG4gICAgICAgIGxldCB1c2Vyc1RhYmxlO1xuICAgICAgICBpZiAoaXNQZXJzaXN0aW5nRmlsdGVyKSB7XG4gICAgICAgICAgICB1c2Vyc1RhYmxlID0gdGhpcy5hbm5hRmlsdGVyU2VydmljZS5maWx0ZXJEYXRhKGNsb25lZFRhYmxlLCAnJyk7XG4gICAgICAgICAgICB0aGlzLmFubmFTb3J0U2VydmljZS5ub1NvcnRpbmdBcHBsaWVkRGF0YSA9IGNsb25lRGVlcCh1c2Vyc1RhYmxlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHVzZXJzVGFibGUgPSBjbG9uZWRUYWJsZTtcbiAgICAgICAgICAgIHRoaXMuYW5uYVNvcnRTZXJ2aWNlLm5vU29ydGluZ0FwcGxpZWREYXRhID0gY2xvbmVEZWVwKHVzZXJzVGFibGUpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGZpbHRlcnM/LnNvcnRTdGF0ZSkge1xuICAgICAgICAgICAgdGhpcy5hbm5hU29ydFNlcnZpY2UuY29sdW1uU29ydFN0YXRlID0gbmV3IE1hcChKU09OLnBhcnNlKGZpbHRlcnMuc29ydFN0YXRlKSk7XG4gICAgICAgICAgICB1c2Vyc1RhYmxlID0gdGhpcy5jYWxsU29ydCh1c2Vyc1RhYmxlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuYW5uYUZpbHRlclNlcnZpY2UudXBkYXRlU3RhdGVPZkFsbFRoZUtleXModGhpcy5hbm5hU29ydFNlcnZpY2UuY29sdW1uU29ydFN0YXRlKTtcblxuICAgICAgICByZXR1cm4gdXNlcnNUYWJsZTtcbiAgICB9XG5cbiAgICBjYWxsU29ydCh1c2Vyc1RhYmxlOiBhbnkpOiBhbnkge1xuICAgICAgICBmb3IgKGxldCBba2V5LCB2YWx1ZV0gb2YgdGhpcy5hbm5hU29ydFNlcnZpY2UuY29sdW1uU29ydFN0YXRlKSB7XG4gICAgICAgICAgICBpZiAodmFsdWUgPT0gJ0FTQycpIHtcbiAgICAgICAgICAgICAgICB1c2Vyc1RhYmxlID0gdGhpcy5hbm5hU29ydFNlcnZpY2Uuc29ydERhdGFGb3JDb21wb25lbnRPdGhlclRoYW5MdXJBbmRDc3JQYWdlKHRydWUsIHVzZXJzVGFibGUsIGtleSk7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKHZhbHVlID09ICdERVNDJykge1xuICAgICAgICAgICAgICAgIHVzZXJzVGFibGUgPSB0aGlzLmFubmFTb3J0U2VydmljZS5zb3J0RGF0YUZvckNvbXBvbmVudE90aGVyVGhhbkx1ckFuZENzclBhZ2UoZmFsc2UsIHVzZXJzVGFibGUsIGtleSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHVzZXJzVGFibGU7XG4gICAgfVxuXG4gICAgaXNTb3J0aW5nQXBwbGllZFRvVGFibGUoKSB7XG4gICAgICAgIGxldCBpc1NvcnRpbmdBcHBsaWVkID0gZmFsc2U7XG4gICAgICAgIGZvciAobGV0IHZhbCBvZiB0aGlzLmFubmFTb3J0U2VydmljZS5jb2x1bW5Tb3J0U3RhdGU/LnZhbHVlcygpKSB7XG4gICAgICAgICAgICBpZiAodmFsID09ICdBU0MnIHx8IHZhbCA9PSAnREVTQycpIHtcbiAgICAgICAgICAgICAgICBpc1NvcnRpbmdBcHBsaWVkID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBpc1NvcnRpbmdBcHBsaWVkO1xuICAgIH1cblxuICAgIHVwZGF0ZVF1ZXJ5UGFyYW1zRmlsdGVyKGtleTogc3RyaW5nLCB2YWx1ZTogYW55LCBvcGVyYXRpb246ICdBREQnIHwgJ0RFTEVURScsIHF1ZXJ5UGFyYW1PYmo6IGFueSkge1xuICAgICAgICBpZiAob3BlcmF0aW9uID09ICdBREQnKSB7XG4gICAgICAgICAgICBxdWVyeVBhcmFtT2JqW2tleV0gPSB2YWx1ZTtcbiAgICAgICAgfSBlbHNlIGlmIChvcGVyYXRpb24gPT0gJ0RFTEVURScpIHtcbiAgICAgICAgICAgIGRlbGV0ZSBxdWVyeVBhcmFtT2JqW2tleV07XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHF1ZXJ5UGFyYW1PYmo7XG4gICAgfVxufVxuIl19
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class AnnaGlobalConfigService {
|
|
4
|
+
/*
|
|
5
|
+
Initializing all default settings
|
|
6
|
+
*/
|
|
7
|
+
constructor() {
|
|
8
|
+
this.defaultAngular2MultiSelectSettings = {
|
|
9
|
+
text: 'Select option',
|
|
10
|
+
selectAllText: 'Select All',
|
|
11
|
+
unSelectAllText: 'UnSelect All',
|
|
12
|
+
badgeShowLimit: 1,
|
|
13
|
+
singleSelection: false,
|
|
14
|
+
classes: 'filter-dropdowns',
|
|
15
|
+
enableSearchFilter: true,
|
|
16
|
+
enableCheckAll: true,
|
|
17
|
+
autoPosition: false,
|
|
18
|
+
disabled: false,
|
|
19
|
+
position: 'bottom',
|
|
20
|
+
lazyLoading: false,
|
|
21
|
+
showCheckbox: true,
|
|
22
|
+
maxHeight: 300,
|
|
23
|
+
enableFilterSelectAll: true,
|
|
24
|
+
};
|
|
25
|
+
this.defaultNgxAsideSettings = {
|
|
26
|
+
title: '"Filters"',
|
|
27
|
+
cancelButtonTitle: '"Cancel"',
|
|
28
|
+
submitButtonTitle: '"Apply"',
|
|
29
|
+
closeOnEscape: false,
|
|
30
|
+
showOverlay: false,
|
|
31
|
+
showDefaultFooter: false,
|
|
32
|
+
showDefaultHeader: false,
|
|
33
|
+
};
|
|
34
|
+
this.defaultNgbDatePickerSettings = {
|
|
35
|
+
autoClose: false,
|
|
36
|
+
placeholder: 'mm-dd-yyyy',
|
|
37
|
+
displayMonths: 1,
|
|
38
|
+
firstDayOfWeek: 1,
|
|
39
|
+
showWeekNumbers: false,
|
|
40
|
+
readonly: true,
|
|
41
|
+
};
|
|
42
|
+
this.defaultNgSelectSettings = {
|
|
43
|
+
allowClear: false,
|
|
44
|
+
placeholder: 'Select',
|
|
45
|
+
};
|
|
46
|
+
this.defaultNgxInfiniteScrollSettings = {
|
|
47
|
+
infiniteScrollDistance: 1,
|
|
48
|
+
infiniteScrollUpDistance: 2,
|
|
49
|
+
infiniteScrollThrottle: 300,
|
|
50
|
+
scrollWindow: false,
|
|
51
|
+
};
|
|
52
|
+
this.defaultNgxSkeletonLoaderSettings = {
|
|
53
|
+
numberOfSkeletonRows: Array(6).fill(0),
|
|
54
|
+
};
|
|
55
|
+
this.defaultRadioButtonsComponentConfig = {
|
|
56
|
+
heading: 'Select Option',
|
|
57
|
+
radioButtons: [
|
|
58
|
+
{
|
|
59
|
+
value: 'Yes',
|
|
60
|
+
isDisabled: false,
|
|
61
|
+
label: 'Yes',
|
|
62
|
+
class: '',
|
|
63
|
+
},
|
|
64
|
+
{
|
|
65
|
+
value: 'No',
|
|
66
|
+
isDisabled: false,
|
|
67
|
+
label: 'No',
|
|
68
|
+
class: '',
|
|
69
|
+
},
|
|
70
|
+
],
|
|
71
|
+
};
|
|
72
|
+
this.defaultConfirmationPopupConfig = {
|
|
73
|
+
showCancelButton: true,
|
|
74
|
+
title: 'Are you sure ?',
|
|
75
|
+
showConfirmButton: true,
|
|
76
|
+
cancelButtonLabel: 'No',
|
|
77
|
+
confirmButtonLabel: 'Yes',
|
|
78
|
+
showCloseIcon: true,
|
|
79
|
+
backdrop: 'static',
|
|
80
|
+
windowClass: '',
|
|
81
|
+
size: 'sm',
|
|
82
|
+
keyboard: false,
|
|
83
|
+
};
|
|
84
|
+
this.defaultWeekCalendarConfig = {
|
|
85
|
+
firstDayOfWeek: 1,
|
|
86
|
+
showWeekNumbers: true,
|
|
87
|
+
dateFormatToDisplay: 'd MMM y',
|
|
88
|
+
dateFormatForRequest: 'y-MM-dd',
|
|
89
|
+
maxWeeksToShowWithRemainingCount: 2,
|
|
90
|
+
numberOfMonthsToEnableInPast: 1,
|
|
91
|
+
selectMultipleWeeks: false,
|
|
92
|
+
customClass: '',
|
|
93
|
+
emitMultipleWeekObjects: true,
|
|
94
|
+
maxWeeksToSelect: 0,
|
|
95
|
+
showAsDropdown: true,
|
|
96
|
+
selectCurrentWeek: true,
|
|
97
|
+
};
|
|
98
|
+
this.defaultGtHeaderConfig = {
|
|
99
|
+
iconColumn: false,
|
|
100
|
+
checkboxColumn: false,
|
|
101
|
+
lastColumnKeys: [],
|
|
102
|
+
};
|
|
103
|
+
this.defaultGtGeneralConfig = {
|
|
104
|
+
component: '',
|
|
105
|
+
totalRow: false,
|
|
106
|
+
isHeaderChecked: false,
|
|
107
|
+
disableHeaderCheckbox: false,
|
|
108
|
+
verticalScrollOffsetForFilterTooltip: 0,
|
|
109
|
+
isGrouped: false,
|
|
110
|
+
showAllColumnFilter: true,
|
|
111
|
+
bufferSize: 20,
|
|
112
|
+
page: '',
|
|
113
|
+
};
|
|
114
|
+
this.defaultSingleSelectConfig = {
|
|
115
|
+
showSearchBar: false,
|
|
116
|
+
placeholder: 'Select',
|
|
117
|
+
classes: '',
|
|
118
|
+
position: 'BOTTOM',
|
|
119
|
+
maxHeightOfList: 200,
|
|
120
|
+
};
|
|
121
|
+
this.defaultMultiSelectConfig = {
|
|
122
|
+
...this.defaultSingleSelectConfig,
|
|
123
|
+
...{ showErrorWhenNoOptionSelected: true },
|
|
124
|
+
};
|
|
125
|
+
}
|
|
126
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaGlobalConfigService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
127
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaGlobalConfigService, providedIn: 'root' }); }
|
|
128
|
+
}
|
|
129
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AnnaGlobalConfigService, decorators: [{
|
|
130
|
+
type: Injectable,
|
|
131
|
+
args: [{
|
|
132
|
+
providedIn: 'root',
|
|
133
|
+
}]
|
|
134
|
+
}], ctorParameters: function () { return []; } });
|
|
135
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5uYS1nbG9iYWwtY29uZmlnLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hbm5hLWNvcmUvc3JjL2xpYi9hbm5hLWNvcmUtc2hhcmVkLWxpYi9zZXJ2aWNlcy9hbm5hLWdsb2JhbC1jb25maWcuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQW1CM0MsTUFBTSxPQUFPLHVCQUF1QjtJQWVoQzs7TUFFRTtJQUNGO1FBQ0ksSUFBSSxDQUFDLGtDQUFrQyxHQUFHO1lBQ3RDLElBQUksRUFBRSxlQUFlO1lBQ3JCLGFBQWEsRUFBRSxZQUFZO1lBQzNCLGVBQWUsRUFBRSxjQUFjO1lBQy9CLGNBQWMsRUFBRSxDQUFDO1lBQ2pCLGVBQWUsRUFBRSxLQUFLO1lBQ3RCLE9BQU8sRUFBRSxrQkFBa0I7WUFDM0Isa0JBQWtCLEVBQUUsSUFBSTtZQUN4QixjQUFjLEVBQUUsSUFBSTtZQUNwQixZQUFZLEVBQUUsS0FBSztZQUNuQixRQUFRLEVBQUUsS0FBSztZQUNmLFFBQVEsRUFBRSxRQUFRO1lBQ2xCLFdBQVcsRUFBRSxLQUFLO1lBQ2xCLFlBQVksRUFBRSxJQUFJO1lBQ2xCLFNBQVMsRUFBRSxHQUFHO1lBQ2QscUJBQXFCLEVBQUUsSUFBSTtTQUM5QixDQUFDO1FBRUYsSUFBSSxDQUFDLHVCQUF1QixHQUFHO1lBQzNCLEtBQUssRUFBRSxXQUFXO1lBQ2xCLGlCQUFpQixFQUFFLFVBQVU7WUFDN0IsaUJBQWlCLEVBQUUsU0FBUztZQUM1QixhQUFhLEVBQUUsS0FBSztZQUNwQixXQUFXLEVBQUUsS0FBSztZQUNsQixpQkFBaUIsRUFBRSxLQUFLO1lBQ3hCLGlCQUFpQixFQUFFLEtBQUs7U0FDM0IsQ0FBQztRQUVGLElBQUksQ0FBQyw0QkFBNEIsR0FBRztZQUNoQyxTQUFTLEVBQUUsS0FBSztZQUNoQixXQUFX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QUFFLElBQUksRUFBRTtTQUM3QyxDQUFDO0lBQ04sQ0FBQzsrR0FwSlEsdUJBQXVCO21IQUF2Qix1QkFBdUIsY0FGcEIsTUFBTTs7NEZBRVQsdUJBQXVCO2tCQUhuQyxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgSUFuZ3VsYXIyTXVsdGlTZWxlY3RTZXR0aW5ncyxcbiAgICBJTmd4QXNpZGVTZXR0aW5ncyxcbiAgICBJTmdiRGF0ZVBpY2tlclNldHRpbmdzLFxuICAgIElOZ1NlbGVjdFNldHRpbmdzLFxuICAgIElOZ3hJbmZpbml0ZVNjcm9sbFNldHRpbmdzLFxuICAgIElOZ3hTa2VsZXRvbkxvYWRlclNldHRpbmdzLFxuICAgIElSYWRpb0J1dHRvbkNvbXBvbmVudENvbmZpZyxcbiAgICBJQ29uZmlybWF0aW9uUG9wdXBDb25maWcsXG4gICAgSVdlZWtDYWxlbmRhcixcbiAgICBJQ3VzdG9tU2luZ2xlU2VsZWN0LFxuICAgIElDdXN0b21NdWx0aVNlbGVjdCxcbn0gZnJvbSAnLi4vbW9kZWxzL2FubmEtZ2xvYmFsLWRyb3Bkb3duLWNvbmZpZy5tb2RlbCc7XG5pbXBvcnQgeyBJR3RIZWFkZXJDb25maWcsIElHdEdlbmVyYWxDb25maWcgfSBmcm9tICcuLi9tb2RlbHMvYW5uYS1ub24tZWRpdGFibGUtZ3QtbW9kZWxzJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgQW5uYUdsb2JhbENvbmZpZ1NlcnZpY2Uge1xuICAgIHJlYWRvbmx5IGRlZmF1bHRBbmd1bGFyMk11bHRpU2VsZWN0U2V0dGluZ3M6IElBbmd1bGFyMk11bHRpU2VsZWN0U2V0dGluZ3M7XG4gICAgcmVhZG9ubHkgZGVmYXVsdE5neEFzaWRlU2V0dGluZ3M6IElOZ3hBc2lkZVNldHRpbmdzO1xuICAgIHJlYWRvbmx5IGRlZmF1bHROZ2JEYXRlUGlja2VyU2V0dGluZ3M6IElOZ2JEYXRlUGlja2VyU2V0dGluZ3M7XG4gICAgcmVhZG9ubHkgZGVmYXVsdE5nU2VsZWN0U2V0dGluZ3M6IElOZ1NlbGVjdFNldHRpbmdzO1xuICAgIHJlYWRvbmx5IGRlZmF1bHROZ3hJbmZpbml0ZVNjcm9sbFNldHRpbmdzOiBJTmd4SW5maW5pdGVTY3JvbGxTZXR0aW5ncztcbiAgICByZWFkb25seSBkZWZhdWx0Tmd4U2tlbGV0b25Mb2FkZXJTZXR0aW5nczogSU5neFNrZWxldG9uTG9hZGVyU2V0dGluZ3M7XG4gICAgcmVhZG9ubHkgZGVmYXVsdFJhZGlvQnV0dG9uc0NvbXBvbmVudENvbmZpZzogSVJhZGlvQnV0dG9uQ29tcG9uZW50Q29uZmlnO1xuICAgIHJlYWRvbmx5IGRlZmF1bHRDb25maXJtYXRpb25Qb3B1cENvbmZpZzogSUNvbmZpcm1hdGlvblBvcHVwQ29uZmlnO1xuICAgIHJlYWRvbmx5IGRlZmF1bHRXZWVrQ2FsZW5kYXJDb25maWc6IElXZWVrQ2FsZW5kYXI7XG4gICAgcmVhZG9ubHkgZGVmYXVsdEd0SGVhZGVyQ29uZmlnOiBJR3RIZWFkZXJDb25maWc7XG4gICAgcmVhZG9ubHkgZGVmYXVsdEd0R2VuZXJhbENvbmZpZzogSUd0R2VuZXJhbENvbmZpZztcbiAgICByZWFkb25seSBkZWZhdWx0U2luZ2xlU2VsZWN0Q29uZmlnOiBJQ3VzdG9tU2luZ2xlU2VsZWN0O1xuICAgIHJlYWRvbmx5IGRlZmF1bHRNdWx0aVNlbGVjdENvbmZpZzogSUN1c3RvbU11bHRpU2VsZWN0O1xuXG4gICAgLypcbiAgICAgSW5pdGlhbGl6aW5nIGFsbCBkZWZhdWx0IHNldHRpbmdzXG4gICAgKi9cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgdGhpcy5kZWZhdWx0QW5ndWxhcjJNdWx0aVNlbGVjdFNldHRpbmdzID0ge1xuICAgICAgICAgICAgdGV4dDogJ1NlbGVjdCBvcHRpb24nLFxuICAgICAgICAgICAgc2VsZWN0QWxsVGV4dDogJ1NlbGVjdCBBbGwnLFxuICAgICAgICAgICAgdW5TZWxlY3RBbGxUZXh0OiAnVW5TZWxlY3QgQWxsJyxcbiAgICAgICAgICAgIGJhZGdlU2hvd0xpbWl0OiAxLFxuICAgICAgICAgICAgc2luZ2xlU2VsZWN0aW9uOiBmYWxzZSxcbiAgICAgICAgICAgIGNsYXNzZXM6ICdmaWx0ZXItZHJvcGRvd25zJyxcbiAgICAgICAgICAgIGVuYWJsZVNlYXJjaEZpbHRlcjogdHJ1ZSxcbiAgICAgICAgICAgIGVuYWJsZUNoZWNrQWxsOiB0cnVlLFxuICAgICAgICAgICAgYXV0b1Bvc2l0aW9uOiBmYWxzZSxcbiAgICAgICAgICAgIGRpc2FibGVkOiBmYWxzZSxcbiAgICAgICAgICAgIHBvc2l0aW9uOiAnYm90dG9tJyxcbiAgICAgICAgICAgIGxhenlMb2FkaW5nOiBmYWxzZSxcbiAgICAgICAgICAgIHNob3dDaGVja2JveDogdHJ1ZSxcbiAgICAgICAgICAgIG1heEhlaWdodDogMzAwLFxuICAgICAgICAgICAgZW5hYmxlRmlsdGVyU2VsZWN0QWxsOiB0cnVlLFxuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMuZGVmYXVsdE5neEFzaWRlU2V0dGluZ3MgPSB7XG4gICAgICAgICAgICB0aXRsZTogJ1wiRmlsdGVyc1wiJyxcbiAgICAgICAgICAgIGNhbmNlbEJ1dHRvblRpdGxlOiAnXCJDYW5jZWxcIicsXG4gICAgICAgICAgICBzdWJtaXRCdXR0b25UaXRsZTogJ1wiQXBwbHlcIicsXG4gICAgICAgICAgICBjbG9zZU9uRXNjYXBlOiBmYWxzZSxcbiAgICAgICAgICAgIHNob3dPdmVybGF5OiBmYWxzZSxcbiAgICAgICAgICAgIHNob3dEZWZhdWx0Rm9vdGVyOiBmYWxzZSxcbiAgICAgICAgICAgIHNob3dEZWZhdWx0SGVhZGVyOiBmYWxzZSxcbiAgICAgICAgfTtcblxuICAgICAgICB0aGlzLmRlZmF1bHROZ2JEYXRlUGlja2VyU2V0dGluZ3MgPSB7XG4gICAgICAgICAgICBhdXRvQ2xvc2U6IGZhbHNlLFxuICAgICAgICAgICAgcGxhY2Vob2xkZXI6ICdtbS1kZC15eXl5JyxcbiAgICAgICAgICAgIGRpc3BsYXlNb250aHM6IDEsXG4gICAgICAgICAgICBmaXJzdERheU9mV2VlazogMSxcbiAgICAgICAgICAgIHNob3dXZWVrTnVtYmVyczogZmFsc2UsXG4gICAgICAgICAgICByZWFkb25seTogdHJ1ZSxcbiAgICAgICAgfTtcblxuICAgICAgICB0aGlzLmRlZmF1bHROZ1NlbGVjdFNldHRpbmdzID0ge1xuICAgICAgICAgICAgYWxsb3dDbGVhcjogZmFsc2UsXG4gICAgICAgICAgICBwbGFjZWhvbGRlcjogJ1NlbGVjdCcsXG4gICAgICAgIH07XG5cbiAgICAgICAgdGhpcy5kZWZhdWx0Tmd4SW5maW5pdGVTY3JvbGxTZXR0aW5ncyA9IHtcbiAgICAgICAgICAgIGluZmluaXRlU2Nyb2xsRGlzdGFuY2U6IDEsXG4gICAgICAgICAgICBpbmZpbml0ZVNjcm9sbFVwRGlzdGFuY2U6IDIsXG4gICAgICAgICAgICBpbmZpbml0ZVNjcm9sbFRocm90dGxlOiAzMDAsXG4gICAgICAgICAgICBzY3JvbGxXaW5kb3c6IGZhbHNlLFxuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMuZGVmYXVsdE5neFNrZWxldG9uTG9hZGVyU2V0dGluZ3MgPSB7XG4gICAgICAgICAgICBudW1iZXJPZlNrZWxldG9uUm93czogQXJyYXkoNikuZmlsbCgwKSxcbiAgICAgICAgfTtcblxuICAgICAgICB0aGlzLmRlZmF1bHRSYWRpb0J1dHRvbnNDb21wb25lbnRDb25maWcgPSB7XG4gICAgICAgICAgICBoZWFkaW5nOiAnU2VsZWN0IE9wdGlvbicsXG4gICAgICAgICAgICByYWRpb0J1dHRvbnM6IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiAnWWVzJyxcbiAgICAgICAgICAgICAgICAgICAgaXNEaXNhYmxlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsOiAnWWVzJyxcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M6ICcnLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZTogJ05vJyxcbiAgICAgICAgICAgICAgICAgICAgaXNEaXNhYmxlZDogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsOiAnTm8nLFxuICAgICAgICAgICAgICAgICAgICBjbGFzczogJycsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgIH07XG5cbiAgICAgICAgdGhpcy5kZWZhdWx0Q29uZmlybWF0aW9uUG9wdXBDb25maWcgPSB7XG4gICAgICAgICAgICBzaG93Q2FuY2VsQnV0dG9uOiB0cnVlLFxuICAgICAgICAgICAgdGl0bGU6ICdBcmUgeW91IHN1cmUgPycsXG4gICAgICAgICAgICBzaG93Q29uZmlybUJ1dHRvbjogdHJ1ZSxcbiAgICAgICAgICAgIGNhbmNlbEJ1dHRvbkxhYmVsOiAnTm8nLFxuICAgICAgICAgICAgY29uZmlybUJ1dHRvbkxhYmVsOiAnWWVzJyxcbiAgICAgICAgICAgIHNob3dDbG9zZUljb246IHRydWUsXG4gICAgICAgICAgICBiYWNrZHJvcDogJ3N0YXRpYycsXG4gICAgICAgICAgICB3aW5kb3dDbGFzczogJycsXG4gICAgICAgICAgICBzaXplOiAnc20nLFxuICAgICAgICAgICAga2V5Ym9hcmQ6IGZhbHNlLFxuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMuZGVmYXVsdFdlZWtDYWxlbmRhckNvbmZpZyA9IHtcbiAgICAgICAgICAgIGZpcnN0RGF5T2ZXZWVrOiAxLFxuICAgICAgICAgICAgc2hvd1dlZWtOdW1iZXJzOiB0cnVlLFxuICAgICAgICAgICAgZGF0ZUZvcm1hdFRvRGlzcGxheTogJ2QgTU1NIHknLFxuICAgICAgICAgICAgZGF0ZUZvcm1hdEZvclJlcXVlc3Q6ICd5LU1NLWRkJyxcbiAgICAgICAgICAgIG1heFdlZWtzVG9TaG93V2l0aFJlbWFpbmluZ0NvdW50OiAyLFxuICAgICAgICAgICAgbnVtYmVyT2ZNb250aHNUb0VuYWJsZUluUGFzdDogMSxcbiAgICAgICAgICAgIHNlbGVjdE11bHRpcGxlV2Vla3M6IGZhbHNlLFxuICAgICAgICAgICAgY3VzdG9tQ2xhc3M6ICcnLFxuICAgICAgICAgICAgZW1pdE11bHRpcGxlV2Vla09iamVjdHM6IHRydWUsXG4gICAgICAgICAgICBtYXhXZWVrc1RvU2VsZWN0OiAwLFxuICAgICAgICAgICAgc2hvd0FzRHJvcGRvd246IHRydWUsXG4gICAgICAgICAgICBzZWxlY3RDdXJyZW50V2VlazogdHJ1ZSxcbiAgICAgICAgfTtcblxuICAgICAgICB0aGlzLmRlZmF1bHRHdEhlYWRlckNvbmZpZyA9IHtcbiAgICAgICAgICAgIGljb25Db2x1bW46IGZhbHNlLFxuICAgICAgICAgICAgY2hlY2tib3hDb2x1bW46IGZhbHNlLFxuICAgICAgICAgICAgbGFzdENvbHVtbktleXM6IFtdLFxuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMuZGVmYXVsdEd0R2VuZXJhbENvbmZpZyA9IHtcbiAgICAgICAgICAgIGNvbXBvbmVudDogJycsXG4gICAgICAgICAgICB0b3RhbFJvdzogZmFsc2UsXG4gICAgICAgICAgICBpc0hlYWRlckNoZWNrZWQ6IGZhbHNlLFxuICAgICAgICAgICAgZGlzYWJsZUhlYWRlckNoZWNrYm94OiBmYWxzZSxcbiAgICAgICAgICAgIHZlcnRpY2FsU2Nyb2xsT2Zmc2V0Rm9yRmlsdGVyVG9vbHRpcDogMCxcbiAgICAgICAgICAgIGlzR3JvdXBlZDogZmFsc2UsXG4gICAgICAgICAgICBzaG93QWxsQ29sdW1uRmlsdGVyOiB0cnVlLFxuICAgICAgICAgICAgYnVmZmVyU2l6ZTogMjAsXG4gICAgICAgICAgICBwYWdlOiAnJyxcbiAgICAgICAgfTtcblxuICAgICAgICB0aGlzLmRlZmF1bHRTaW5nbGVTZWxlY3RDb25maWcgPSB7XG4gICAgICAgICAgICBzaG93U2VhcmNoQmFyOiBmYWxzZSxcbiAgICAgICAgICAgIHBsYWNlaG9sZGVyOiAnU2VsZWN0JyxcbiAgICAgICAgICAgIGNsYXNzZXM6ICcnLFxuICAgICAgICAgICAgcG9zaXRpb246ICdCT1RUT00nLFxuICAgICAgICAgICAgbWF4SGVpZ2h0T2ZMaXN0OiAyMDAsXG4gICAgICAgIH07XG5cbiAgICAgICAgdGhpcy5kZWZhdWx0TXVsdGlTZWxlY3RDb25maWcgPSB7XG4gICAgICAgICAgICAuLi50aGlzLmRlZmF1bHRTaW5nbGVTZWxlY3RDb25maWcsXG4gICAgICAgICAgICAuLi57IHNob3dFcnJvcldoZW5Ob09wdGlvblNlbGVjdGVkOiB0cnVlIH0sXG4gICAgICAgIH07XG4gICAgfVxufVxuIl19
|