basesite-shared-grid-lib 21.0.1-beta.4 → 21.0.1-beta.6
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/basesite-shared-grid-lib-21.0.1-beta.6.tgz +0 -0
- package/fesm2022/basesite-shared-grid-lib.mjs +196 -66
- package/fesm2022/basesite-shared-grid-lib.mjs.map +1 -1
- package/package.json +5 -4
- package/types/basesite-shared-grid-lib.d.ts +1 -0
- package/basesite-shared-grid-lib-21.0.1-beta.4.tgz +0 -0
|
Binary file
|
|
@@ -25,10 +25,10 @@ class TokenSharingService {
|
|
|
25
25
|
updateToken(newToken) {
|
|
26
26
|
this.tokenSubject.next(newToken);
|
|
27
27
|
}
|
|
28
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.
|
|
29
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.
|
|
28
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: TokenSharingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
29
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: TokenSharingService, providedIn: 'root' }); }
|
|
30
30
|
}
|
|
31
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.
|
|
31
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: TokenSharingService, decorators: [{
|
|
32
32
|
type: Injectable,
|
|
33
33
|
args: [{
|
|
34
34
|
providedIn: 'root'
|
|
@@ -88,10 +88,10 @@ class GridLibraryService {
|
|
|
88
88
|
getDataForExport(serverUrl) {
|
|
89
89
|
return this.httpClient.get(`${serverUrl}`, { headers: this.getRequestHeader() });
|
|
90
90
|
}
|
|
91
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.
|
|
92
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.
|
|
91
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: GridLibraryService, deps: [{ token: i1.HttpClient }, { token: TokenSharingService }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
92
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: GridLibraryService, providedIn: 'root' }); }
|
|
93
93
|
}
|
|
94
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.
|
|
94
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: GridLibraryService, decorators: [{
|
|
95
95
|
type: Injectable,
|
|
96
96
|
args: [{
|
|
97
97
|
providedIn: 'root',
|
|
@@ -549,11 +549,49 @@ class OdataProvider {
|
|
|
549
549
|
if (beforeRequest) {
|
|
550
550
|
beforeRequest(options);
|
|
551
551
|
}
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
552
|
+
// OData wraps nested fields with '/' (e.g. parent/child); the response
|
|
553
|
+
// mirrors that shape, so we walk the path instead of using the raw key.
|
|
554
|
+
// We also fall back to a case-insensitive lookup because some OData
|
|
555
|
+
// services return PascalCase property names regardless of the request
|
|
556
|
+
// casing (e.g. asked for `dacStatus`, response is `DacStatus`).
|
|
557
|
+
const readField = (row) => {
|
|
558
|
+
if (row == null)
|
|
559
|
+
return undefined;
|
|
560
|
+
if (Object.prototype.hasOwnProperty.call(row, field))
|
|
561
|
+
return row[field];
|
|
562
|
+
const segments = String(field).split('.');
|
|
563
|
+
let current = row;
|
|
564
|
+
for (const seg of segments) {
|
|
565
|
+
if (current == null)
|
|
566
|
+
return undefined;
|
|
567
|
+
if (Object.prototype.hasOwnProperty.call(current, seg)) {
|
|
568
|
+
current = current[seg];
|
|
569
|
+
continue;
|
|
570
|
+
}
|
|
571
|
+
// Case-insensitive key match as a last resort.
|
|
572
|
+
const lower = seg.toLowerCase();
|
|
573
|
+
const match = Object.keys(current).find(k => k.toLowerCase() === lower);
|
|
574
|
+
if (!match)
|
|
575
|
+
return undefined;
|
|
576
|
+
current = current[match];
|
|
577
|
+
}
|
|
578
|
+
return current;
|
|
579
|
+
};
|
|
580
|
+
me.callApi(me.toQuery(options))
|
|
581
|
+
.then((x) => {
|
|
582
|
+
const values = x ? me.getOdataResult(x) || [] : [];
|
|
583
|
+
const mapped = values.map((y) => readField(y));
|
|
584
|
+
console.log('[OdataProvider] getFilterValuesParams response for', field, '— rows:', values.length, '— sample keys:', values[0] ? Object.keys(values[0]) : '(none)', '— mapped sample:', mapped.slice(0, 5));
|
|
585
|
+
// Helpful diagnostic when the response shape doesn't match the field.
|
|
586
|
+
if (values.length > 0 && mapped.every((v) => v === undefined)) {
|
|
587
|
+
console.warn('[OdataProvider] getFilterValuesParams: response had', values.length, 'rows but none contained field', field, '— sample row keys:', Object.keys(values[0] || {}));
|
|
556
588
|
}
|
|
589
|
+
callback(mapped);
|
|
590
|
+
})
|
|
591
|
+
.catch((err) => {
|
|
592
|
+
console.error('[OdataProvider] getFilterValuesParams failed for field', field, err);
|
|
593
|
+
// Always invoke the callback so AG Grid's set filter doesn't hang.
|
|
594
|
+
callback([]);
|
|
557
595
|
});
|
|
558
596
|
};
|
|
559
597
|
/**
|
|
@@ -936,8 +974,8 @@ class ButtonRendererComponent {
|
|
|
936
974
|
onMouseDown($event) {
|
|
937
975
|
$event.stopPropagation();
|
|
938
976
|
}
|
|
939
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.
|
|
940
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.
|
|
977
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: ButtonRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
978
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.7", type: ButtonRendererComponent, isStandalone: false, selector: "lib-button-renderer", ngImport: i0, template: `
|
|
941
979
|
<button class="btn-actions" type="button" (click)="onClick($event)" (mousedown)="onMouseDown($event)" [attr.data-title]="params.tooltip">
|
|
942
980
|
@if (icon && !label) {
|
|
943
981
|
<span> <i class="{{ icon }}"></i> </span>
|
|
@@ -951,7 +989,7 @@ class ButtonRendererComponent {
|
|
|
951
989
|
</button>
|
|
952
990
|
`, isInline: true }); }
|
|
953
991
|
}
|
|
954
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.
|
|
992
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: ButtonRendererComponent, decorators: [{
|
|
955
993
|
type: Component,
|
|
956
994
|
args: [{
|
|
957
995
|
selector: 'lib-button-renderer',
|
|
@@ -980,14 +1018,14 @@ class CustomTooltip {
|
|
|
980
1018
|
this.params = params;
|
|
981
1019
|
params.value = params.valueFormatted;
|
|
982
1020
|
}
|
|
983
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.
|
|
984
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.
|
|
1021
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: CustomTooltip, deps: [{ token: i1$1.DatePipe }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1022
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.7", type: CustomTooltip, isStandalone: false, selector: "tooltip-component", ngImport: i0, template: ` <div class="custom-tooltip">
|
|
985
1023
|
<p>
|
|
986
1024
|
<span>{{ params.value }}</span>
|
|
987
1025
|
</p>
|
|
988
1026
|
</div>`, isInline: true }); }
|
|
989
1027
|
}
|
|
990
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.
|
|
1028
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: CustomTooltip, decorators: [{
|
|
991
1029
|
type: Component,
|
|
992
1030
|
args: [{
|
|
993
1031
|
selector: 'tooltip-component',
|
|
@@ -1051,8 +1089,8 @@ class DropdownRenderer {
|
|
|
1051
1089
|
];
|
|
1052
1090
|
return urls[index] || '#';
|
|
1053
1091
|
}
|
|
1054
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.
|
|
1055
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.
|
|
1092
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: DropdownRenderer, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1093
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.7", type: DropdownRenderer, isStandalone: false, selector: "lib-dropdown-renderer", ngImport: i0, template: `
|
|
1056
1094
|
<div class="dropdown">
|
|
1057
1095
|
<button type="button" class="btn btn-white" data-toggle="dropdown">
|
|
1058
1096
|
<i class="fa fa-ellipsis-v"></i>
|
|
@@ -1089,7 +1127,7 @@ class DropdownRenderer {
|
|
|
1089
1127
|
</div>
|
|
1090
1128
|
`, isInline: true }); }
|
|
1091
1129
|
}
|
|
1092
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.
|
|
1130
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: DropdownRenderer, decorators: [{
|
|
1093
1131
|
type: Component,
|
|
1094
1132
|
args: [{
|
|
1095
1133
|
selector: 'lib-dropdown-renderer',
|
|
@@ -1140,14 +1178,14 @@ class CellRendererComponent {
|
|
|
1140
1178
|
refresh(params) {
|
|
1141
1179
|
return false;
|
|
1142
1180
|
}
|
|
1143
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.
|
|
1144
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.
|
|
1181
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: CellRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1182
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.7", type: CellRendererComponent, isStandalone: false, selector: "app-cell-data", ngImport: i0, template: `
|
|
1145
1183
|
<span>
|
|
1146
1184
|
{{ params.value }}
|
|
1147
1185
|
</span>
|
|
1148
1186
|
`, isInline: true }); }
|
|
1149
1187
|
}
|
|
1150
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.
|
|
1188
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: CellRendererComponent, decorators: [{
|
|
1151
1189
|
type: Component,
|
|
1152
1190
|
args: [{
|
|
1153
1191
|
selector: 'app-cell-data',
|
|
@@ -1168,8 +1206,8 @@ class FillCellRendererComponent {
|
|
|
1168
1206
|
refresh(params) {
|
|
1169
1207
|
return false;
|
|
1170
1208
|
}
|
|
1171
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.
|
|
1172
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.
|
|
1209
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: FillCellRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
1210
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.7", type: FillCellRendererComponent, isStandalone: false, selector: "app-fill-cell-data", ngImport: i0, template: `
|
|
1173
1211
|
@if (params.value && params.field === 'dacStatus') {
|
|
1174
1212
|
<span #dacIndicator class="status-fill-cell text-white" [ngStyle]="{'background': rowData.dacIndicator? rowData.dacIndicator : '#fff', 'width':'178px'}" >
|
|
1175
1213
|
{{ params.value }}
|
|
@@ -1205,7 +1243,7 @@ class FillCellRendererComponent {
|
|
|
1205
1243
|
}
|
|
1206
1244
|
`, isInline: true, dependencies: [{ kind: "directive", type: i1$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] }); }
|
|
1207
1245
|
}
|
|
1208
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.
|
|
1246
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: FillCellRendererComponent, decorators: [{
|
|
1209
1247
|
type: Component,
|
|
1210
1248
|
args: [{
|
|
1211
1249
|
selector: 'app-fill-cell-data',
|
|
@@ -1958,8 +1996,8 @@ class DatepickerComponent {
|
|
|
1958
1996
|
onDatepickerHide() {
|
|
1959
1997
|
this.isDatepickerOpen = false;
|
|
1960
1998
|
}
|
|
1961
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.
|
|
1962
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.
|
|
1999
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: DatepickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
2000
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.7", type: DatepickerComponent, isStandalone: true, selector: "app-datepicker", inputs: { disabled: "disabled", selectionMode: "selectionMode", showIcon: "showIcon", iconDisplay: "iconDisplay", appendTo: "appendTo", inline: "inline", showButtonBar: "showButtonBar", inputId: "inputId", showOnFocus: "showOnFocus", gridComponent: "gridComponent" }, outputs: { ngModelChange: "ngModelChange" }, providers: [
|
|
1963
2001
|
{
|
|
1964
2002
|
provide: NG_VALUE_ACCESSOR,
|
|
1965
2003
|
useExisting: forwardRef(() => DatepickerComponent),
|
|
@@ -1967,7 +2005,7 @@ class DatepickerComponent {
|
|
|
1967
2005
|
}
|
|
1968
2006
|
], viewQueries: [{ propertyName: "datepicker", first: true, predicate: ["datepicker"], descendants: true }], ngImport: i0, template: "<div class=\"lspx-datepicker floating-datepicker\">\r\n <p-datepicker\r\n #datepicker\r\n [(ngModel)]=\"value\"\r\n (ngModelChange)=\"onValueChange($event)\"\r\n (onSelect)=\"onDateSelect($event)\"\r\n (onShow)=\"onDatepickerShow()\"\r\n (onHide)=\"onDatepickerHide()\"\r\n [selectionMode]=\"selectionMode\"\r\n [placeholder]=\"placeholder\"\r\n [showIcon]=\"showIcon\"\r\n [iconDisplay]=\"iconDisplay\"\r\n [dateFormat]=\"dateFormat\"\r\n [inline]=\"inline\"\r\n [showButtonBar]=\"showButtonBar\"\r\n [disabled]=\"disabled\"\r\n [appendTo]=\"appendTo\"\r\n [inputId]=\"uniqueId\"\r\n [readonlyInput]=\"false\"\r\n [styleClass]=\"'custom-datepicker ' + datepickerClass\"\r\n [dataType]=\"'date'\"\r\n [keepInvalid]=\"false\"\r\n [showOnFocus]=\"showOnFocus\"\r\n (onTodayClick)=\"onTodayButtonClick()\"\r\n (onClearClick)=\"onClearButtonClick()\"\r\n (onInput)=\"onInputChange($event)\"\r\n (onBlur)=\"onInputBlur($event)\"\r\n >\r\n <ng-template pTemplate=\"date\" let-date>\r\n <div class=\"custom-date-wrapper\" [ngClass]=\"getDateClasses(date)\">\r\n <span class=\"date-content\">{{ date.day }}</span>\r\n </div>\r\n </ng-template>\r\n </p-datepicker>\r\n</div> \r\n", styles: [":host{display:block;width:100%;height:100%}::ng-deep .p-datepicker{--p-datepicker-week-day-color: $calendar-grey !important;height:95%}::ng-deep .p-datepicker .p-inputtext{font-size:14px!important;font-family:Inter!important;padding-inline:5px!important}::ng-deep .p-datepicker-select-month,::ng-deep .p-datepicker-select-year{position:relative;padding-right:20px!important;font-family:Inter!important;font-weight:600!important;font-size:12px!important;line-height:100%!important;letter-spacing:0px!important;color:#000!important}::ng-deep .p-datepicker-select-month:after,::ng-deep .p-datepicker-select-year:after{content:\"\";position:absolute;right:5px;top:50%;transform:translateY(-50%);width:7px;height:4px;background-color:#000;clip-path:path(\"M5.86793 0.15296C5.78334 0.0550203 5.66863 6.90412e-07 5.54902 6.81445e-07C5.42941 6.72477e-07 5.3147 0.0550203 5.23011 0.15296L2.99728 2.73897L0.764445 0.15296C0.679371 0.0577956 0.565428 0.00513775 0.447157 0.00632817C0.328886 0.00751834 0.21575 0.0624614 0.132117 0.159323C0.0484838 0.256186 0.00104464 0.387217 1.70436e-05 0.524196C-0.00101055 0.661174 0.0444554 0.79314 0.126623 0.891671L2.67837 3.84704C2.76295 3.94498 2.87767 4 2.99728 4C3.11689 4 3.2316 3.94498 3.31619 3.84704L5.86793 0.891672C5.95249 0.793702 6 0.660845 6 0.522316C6 0.383787 5.9525 0.25093 5.86793 0.15296Z\");pointer-events:none}::ng-deep .p-datepicker-prev-button,::ng-deep .p-datepicker-next-button,::ng-deep .p-datepicker-next-button:not(:disabled):hover,::ng-deep .p-datepicker-prev-button:not(:disabled):hover{color:#77838f!important;background:transparent!important}::ng-deep .p-datepicker-calendar .p-datepicker-day-view .p-datepicker-weekday-cell .p-datepicker-weekday{color:#77838f!important}::ng-deep .p-datepicker-calendar .p-datepicker-day-view .p-datepicker-weekday-cell{font-family:Inter!important;font-weight:500!important;font-size:12px!important;line-height:100%!important;letter-spacing:0px!important;color:#77838f!important;text-align:center!important}::ng-deep .p-datepicker .p-datepicker-calendar .p-datepicker-day-cell .p-datepicker-day.p-datepicker-day-selected{background:transparent!important;color:inherit!important;border:none!important}::ng-deep .p-datepicker .p-datepicker-calendar .p-datepicker-day-cell .p-datepicker-day.p-datepicker-day-selected-range{background:transparent!important;color:inherit!important;border:none!important}::ng-deep .p-datepicker-day-selected{background:transparent!important;color:inherit!important;border:none!important}::ng-deep .p-datepicker-day-selected-range{background:transparent!important;color:inherit!important;border:none!important}::ng-deep .p-datepicker-calendar .p-datepicker-day-cell{font-family:Inter!important;font-weight:500!important;font-size:12px!important;line-height:100%!important;letter-spacing:0px!important;color:#000!important}::ng-deep .p-datepicker-calendar .p-datepicker-day-cell .p-datepicker-day.p-datepicker-day-disabled{color:#77838f!important}::ng-deep .p-datepicker-day-cell{position:relative}::ng-deep .p-datepicker-day-cell:has(.custom-date-wrapper.range-start):not(:has(.custom-date-wrapper.range-end)):after{content:\"\";position:absolute;top:50%;right:0;width:50%;height:32px;transform:translateY(-50%);background:rgba(var(--primary),.12)!important;z-index:0}::ng-deep .p-datepicker-day-cell:has(.custom-date-wrapper.range-end):not(:has(.custom-date-wrapper.range-start)):after{content:\"\";position:absolute;top:50%;left:0;width:50%;height:32px;transform:translateY(-50%);background:rgba(var(--primary),.12)!important;z-index:0}::ng-deep .p-datepicker-day-cell:has(.custom-date-wrapper.range-middle):after{content:\"\";position:absolute;top:50%;left:0;width:100%;height:32px;transform:translateY(-50%);background:rgba(var(--primary),.12)!important;z-index:0}::ng-deep .p-datepicker-day-cell:has(.custom-date-wrapper.range-start.range-end):after{display:none}::ng-deep .custom-date-wrapper{width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:relative;z-index:1}::ng-deep .custom-date-wrapper .date-content{z-index:2;position:relative;font-family:Inter!important;font-weight:500!important;font-size:12px!important;line-height:100%!important;letter-spacing:0px!important}::ng-deep .custom-date-wrapper.single-selected .date-content{background:var(--primary)!important;color:#fff!important;font-weight:500!important;border-radius:50%!important;width:32px;height:32px;display:flex;align-items:center;justify-content:center}::ng-deep .custom-date-wrapper.range-start .date-content{background:var(--primary)!important;color:#fff!important;font-weight:500!important;border-radius:50%!important;width:32px;height:32px;display:flex;align-items:center;justify-content:center}::ng-deep .custom-date-wrapper.range-end .date-content{background:var(--primary)!important;color:#fff!important;font-weight:500!important;border-radius:50%!important;width:32px;height:32px;display:flex;align-items:center;justify-content:center}::ng-deep .custom-date-wrapper.range-middle .date-content{color:var(--primary)!important;font-weight:500!important}::ng-deep .p-datepicker-year-selected{background:var(--primary)!important;color:#fff!important}::ng-deep .p-datepicker-year-selected:hover{background:rgba(var(--primary),.12)!important;color:var(--primary)!important}::ng-deep .p-datepicker-year:not(.p-disabled):not(.p-datepicker-year-selected):hover{background:rgba(var(--primary),.12)!important;color:var(--primary)!important}::ng-deep .p-datepicker-month-selected{background:var(--primary)!important;color:#fff!important}::ng-deep .p-datepicker-month-selected:hover{background:rgba(var(--primary),.12)!important;color:var(--primary)!important}::ng-deep .p-datepicker-month:not(.p-disabled):not(.p-datepicker-month-selected):hover{background:rgba(var(--primary),.12)!important;color:var(--primary)!important}::ng-deep .p-datepicker-today-button,::ng-deep .p-datepicker-clear-button{background:var(--primary)!important;color:#fff!important;border:none!important}::ng-deep .p-datepicker-today-button:not(:disabled):hover,::ng-deep .p-datepicker-clear-button:not(:disabled):hover{background:rgba(var(--primary),.12)!important;color:var(--primary)!important}.floating-datepicker{display:block;width:100%!important}.floating-datepicker .p-inputtext{height:25px!important;font-size:12px!important;padding:2px 4px!important;border:1px solid #BEBEBE!important;border-right:0!important;border-radius:5px 0 0 5px!important}.floating-datepicker .p-datepicker-dropdown{width:20px!important;background-color:#fff!important;border:1px solid #BEBEBE!important;border-left:0!important}.floating-datepicker .p-datepicker{width:100%!important}.floating-datepicker .p-inputwrapper{width:100%!important;display:flex!important;align-items:stretch;min-width:0;position:relative}.floating-datepicker .p-inputtext{height:25px!important;font-size:12px!important;padding:2px 22px 2px 4px!important;border:1px solid #BEBEBE!important;border-radius:5px!important;width:100%!important;min-width:0}.floating-datepicker .p-datepicker-input-icon-container{position:absolute!important;top:80%;transform:translate(-50%,-50%);display:flex!important;align-items:center;justify-content:center;cursor:pointer;pointer-events:auto!important;z-index:2;right:0}.floating-datepicker .p-datepicker-input-icon{display:flex!important;visibility:visible!important;opacity:1!important;width:14px;height:14px;color:#6b7280;cursor:pointer;align-items:center;justify-content:center}::ng-deep .custom-datepicker .p-inputtext{border-radius:var(--p-inputtext-border-radius);height:25px!important;font-size:12px!important;padding:2px 22px 2px 4px!important;border:1px solid #BEBEBE!important;width:100%!important;min-width:0}::ng-deep .custom-datepicker .p-datepicker-input-icon-container{position:absolute!important;top:80%;transform:translate(-50%,-50%);display:flex!important;align-items:center;justify-content:center;cursor:pointer;pointer-events:auto!important;z-index:2;right:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: DatePickerModule }, { kind: "component", type: i2.DatePicker, selector: "p-datePicker, p-datepicker, p-date-picker", inputs: ["iconDisplay", "styleClass", "inputStyle", "inputId", "inputStyleClass", "placeholder", "ariaLabelledBy", "ariaLabel", "iconAriaLabel", "dateFormat", "multipleSeparator", "rangeSeparator", "inline", "showOtherMonths", "selectOtherMonths", "showIcon", "icon", "readonlyInput", "shortYearCutoff", "hourFormat", "timeOnly", "stepHour", "stepMinute", "stepSecond", "showSeconds", "showOnFocus", "showWeek", "startWeekFromFirstDayOfYear", "showClear", "dataType", "selectionMode", "maxDateCount", "showButtonBar", "todayButtonStyleClass", "clearButtonStyleClass", "autofocus", "autoZIndex", "baseZIndex", "panelStyleClass", "panelStyle", "keepInvalid", "hideOnDateTimeSelect", "touchUI", "timeSeparator", "focusTrap", "showTransitionOptions", "hideTransitionOptions", "tabindex", "minDate", "maxDate", "disabledDates", "disabledDays", "showTime", "responsiveOptions", "numberOfMonths", "firstDayOfWeek", "view", "defaultDate", "appendTo", "motionOptions"], outputs: ["onFocus", "onBlur", "onClose", "onSelect", "onClear", "onInput", "onTodayClick", "onClearClick", "onMonthChange", "onYearChange", "onClickOutside", "onShow"] }, { kind: "directive", type: i3.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
|
|
1969
2007
|
}
|
|
1970
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.
|
|
2008
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: DatepickerComponent, decorators: [{
|
|
1971
2009
|
type: Component,
|
|
1972
2010
|
args: [{ selector: 'app-datepicker', standalone: true, imports: [CommonModule, DatePickerModule, FormsModule], providers: [
|
|
1973
2011
|
{
|
|
@@ -2048,10 +2086,10 @@ class ColumnValueFormatter {
|
|
|
2048
2086
|
}
|
|
2049
2087
|
return params.value;
|
|
2050
2088
|
}
|
|
2051
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.
|
|
2052
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.
|
|
2089
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: ColumnValueFormatter, deps: [{ token: i1$1.DatePipe }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
2090
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: ColumnValueFormatter }); }
|
|
2053
2091
|
}
|
|
2054
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.
|
|
2092
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: ColumnValueFormatter, decorators: [{
|
|
2055
2093
|
type: Injectable
|
|
2056
2094
|
}], ctorParameters: () => [{ type: i1$1.DatePipe }] });
|
|
2057
2095
|
|
|
@@ -2086,6 +2124,10 @@ class GridLibraryComponent {
|
|
|
2086
2124
|
this.tooltipShowDelay = 500;
|
|
2087
2125
|
this.tooltipHideDelay = 4000;
|
|
2088
2126
|
this.rowModelType = 'clientSide';
|
|
2127
|
+
// Per-field cache of distinct values for fill-cell set filters. Populated
|
|
2128
|
+
// by the OData groupby fallback in _getFillFilterValues and cleared when
|
|
2129
|
+
// the underlying grid data is refreshed.
|
|
2130
|
+
this._fillFilterValuesCache = new Map();
|
|
2089
2131
|
this._Design_Manager = 'Design Manager';
|
|
2090
2132
|
this._Integration_Lead = 'Integration Lead';
|
|
2091
2133
|
this._Tool_Owner = 'Tool Owner';
|
|
@@ -2385,6 +2427,9 @@ class GridLibraryComponent {
|
|
|
2385
2427
|
// handles case-insensitive matching server-side via tolower().
|
|
2386
2428
|
values: (params) => this._getFillFilterValues(res, params),
|
|
2387
2429
|
refreshValuesOnOpen: true,
|
|
2430
|
+
// Open with nothing checked so a user picking one option triggers
|
|
2431
|
+
// a single backend request instead of "uncheck all + pick one".
|
|
2432
|
+
defaultToNothingSelected: true,
|
|
2388
2433
|
buttons: ['reset'],
|
|
2389
2434
|
// Pretty label for each checkbox; falls back to the value itself
|
|
2390
2435
|
valueFormatter: (p) => {
|
|
@@ -2527,7 +2572,31 @@ class GridLibraryComponent {
|
|
|
2527
2572
|
}
|
|
2528
2573
|
const field = res?.field;
|
|
2529
2574
|
if (this.enableServerSidePaging && this.odataProvider) {
|
|
2530
|
-
|
|
2575
|
+
// Cache OData distinct-values per field so repeated filter-opens for
|
|
2576
|
+
// fill-cell columns don't re-hit the backend. Cache is invalidated on
|
|
2577
|
+
// grid data refresh (see _invalidateFillFilterCache).
|
|
2578
|
+
const cached = this._fillFilterValuesCache.get(field);
|
|
2579
|
+
if (cached) {
|
|
2580
|
+
params.success(cached);
|
|
2581
|
+
return;
|
|
2582
|
+
}
|
|
2583
|
+
try {
|
|
2584
|
+
this.odataProvider.getFilterValuesParams(field, (data) => {
|
|
2585
|
+
const cleaned = (data || []).filter(v => v !== null && v !== undefined && v !== '');
|
|
2586
|
+
// Only cache non-empty successful responses so a transient
|
|
2587
|
+
// failure doesn't permanently stick an empty list.
|
|
2588
|
+
if (cleaned.length > 0) {
|
|
2589
|
+
this._fillFilterValuesCache.set(field, cleaned);
|
|
2590
|
+
}
|
|
2591
|
+
// Never leave the set-filter spinning: always invoke success,
|
|
2592
|
+
// even with an empty list.
|
|
2593
|
+
params.success(cleaned);
|
|
2594
|
+
}, undefined);
|
|
2595
|
+
}
|
|
2596
|
+
catch (err) {
|
|
2597
|
+
console.error('[grid-library] getFilterValuesParams threw for field', field, err);
|
|
2598
|
+
params.success([]);
|
|
2599
|
+
}
|
|
2531
2600
|
return;
|
|
2532
2601
|
}
|
|
2533
2602
|
const source = Array.isArray(this.rowData) ? this.rowData : [];
|
|
@@ -2582,28 +2651,86 @@ class GridLibraryComponent {
|
|
|
2582
2651
|
return false;
|
|
2583
2652
|
}
|
|
2584
2653
|
setExternalFilters(options) {
|
|
2585
|
-
|
|
2586
|
-
|
|
2587
|
-
|
|
2588
|
-
|
|
2589
|
-
|
|
2590
|
-
|
|
2591
|
-
|
|
2592
|
-
|
|
2593
|
-
|
|
2594
|
-
|
|
2595
|
-
|
|
2596
|
-
|
|
2597
|
-
|
|
2598
|
-
|
|
2599
|
-
|
|
2600
|
-
|
|
2601
|
-
|
|
2602
|
-
|
|
2603
|
-
|
|
2604
|
-
|
|
2654
|
+
// Extract any caller-supplied $filter predicate from the configured
|
|
2655
|
+
// serverDataUrl so we can merge it correctly with whatever the provider
|
|
2656
|
+
// built. Without this, requests like `$apply=groupby((dacStatus))` get a
|
|
2657
|
+
// sibling `$filter=siteId eq 5` appended, which OData rejects because
|
|
2658
|
+
// after `groupby` the only remaining property is the grouped one.
|
|
2659
|
+
let serverUrl = this.serverDataUrl;
|
|
2660
|
+
let externalFilter = '';
|
|
2661
|
+
const filterIdx = serverUrl.indexOf('$filter=');
|
|
2662
|
+
if (filterIdx >= 0) {
|
|
2663
|
+
// Find the end of the $filter value (next & or end of string).
|
|
2664
|
+
const after = serverUrl.indexOf('&', filterIdx);
|
|
2665
|
+
externalFilter = serverUrl.substring(filterIdx + '$filter='.length, after === -1 ? serverUrl.length : after);
|
|
2666
|
+
// Strip the $filter clause (and its leading ? or &) from the base URL.
|
|
2667
|
+
const before = serverUrl.charAt(filterIdx - 1); // '?' or '&'
|
|
2668
|
+
const removeStart = filterIdx - 1;
|
|
2669
|
+
const removeEnd = after === -1 ? serverUrl.length : after;
|
|
2670
|
+
serverUrl =
|
|
2671
|
+
serverUrl.substring(0, removeStart) +
|
|
2672
|
+
(before === '?' && after !== -1 ? '?' : '') +
|
|
2673
|
+
serverUrl.substring(removeEnd + (before === '?' && after !== -1 ? 1 : 0));
|
|
2674
|
+
}
|
|
2675
|
+
// `options` always starts with '?' from the provider.
|
|
2676
|
+
// If we still need to attach to a URL that already has '?', flip it to '&'.
|
|
2677
|
+
if (serverUrl.indexOf('?') >= 0 && options.startsWith('?')) {
|
|
2678
|
+
options = '&' + options.substring(1);
|
|
2679
|
+
}
|
|
2680
|
+
if (!externalFilter) {
|
|
2681
|
+
return `${serverUrl}${options}`;
|
|
2682
|
+
}
|
|
2683
|
+
// Decode for matching; we'll re-emit the predicate as-is since OData
|
|
2684
|
+
// accepts both encoded and decoded forms within a query string.
|
|
2685
|
+
const decodedFilter = (() => {
|
|
2686
|
+
try {
|
|
2687
|
+
return decodeURIComponent(externalFilter);
|
|
2688
|
+
}
|
|
2689
|
+
catch {
|
|
2690
|
+
return externalFilter;
|
|
2691
|
+
}
|
|
2692
|
+
})();
|
|
2693
|
+
// Case 1: provider used $apply (e.g. groupby for set-filter values, or
|
|
2694
|
+
// any aggregation). The external predicate must run BEFORE the aggregation
|
|
2695
|
+
// as a filter() transformation, otherwise its columns no longer exist.
|
|
2696
|
+
const applyMatch = options.match(/([?&])\$apply=([^&]+)/);
|
|
2697
|
+
if (applyMatch) {
|
|
2698
|
+
const sep = applyMatch[1];
|
|
2699
|
+
const applyValue = applyMatch[2];
|
|
2700
|
+
const decodedApply = (() => {
|
|
2701
|
+
try {
|
|
2702
|
+
return decodeURIComponent(applyValue);
|
|
2703
|
+
}
|
|
2704
|
+
catch {
|
|
2705
|
+
return applyValue;
|
|
2706
|
+
}
|
|
2707
|
+
})();
|
|
2708
|
+
const merged = `filter(${decodedFilter})/${decodedApply}`;
|
|
2709
|
+
options = options.replace(`${sep}$apply=${applyValue}`, `${sep}$apply=${encodeURIComponent(merged)}`);
|
|
2710
|
+
return `${serverUrl}${options}`;
|
|
2711
|
+
}
|
|
2712
|
+
// Case 2: provider already has its own $filter. AND them together.
|
|
2713
|
+
const filterMatch = options.match(/([?&])\$filter=([^&]+)/);
|
|
2714
|
+
if (filterMatch) {
|
|
2715
|
+
const sep = filterMatch[1];
|
|
2716
|
+
const existing = filterMatch[2];
|
|
2717
|
+
const decodedExisting = (() => {
|
|
2718
|
+
try {
|
|
2719
|
+
return decodeURIComponent(existing);
|
|
2720
|
+
}
|
|
2721
|
+
catch {
|
|
2722
|
+
return existing;
|
|
2723
|
+
}
|
|
2724
|
+
})();
|
|
2725
|
+
const merged = `(${decodedExisting}) and (${decodedFilter})`;
|
|
2726
|
+
options = options.replace(`${sep}$filter=${existing}`, `${sep}$filter=${encodeURIComponent(merged)}`);
|
|
2727
|
+
return `${serverUrl}${options}`;
|
|
2605
2728
|
}
|
|
2606
|
-
|
|
2729
|
+
// Case 3: no provider filter and no $apply — just add the external $filter.
|
|
2730
|
+
const joiner = options.length === 0
|
|
2731
|
+
? (serverUrl.indexOf('?') >= 0 ? '&' : '?')
|
|
2732
|
+
: '&';
|
|
2733
|
+
return `${serverUrl}${options}${joiner}$filter=${encodeURIComponent(decodedFilter)}`;
|
|
2607
2734
|
}
|
|
2608
2735
|
onGridReady(params) {
|
|
2609
2736
|
this.gridAPI = params.api;
|
|
@@ -2647,6 +2774,7 @@ class GridLibraryComponent {
|
|
|
2647
2774
|
if (!hasRetried) {
|
|
2648
2775
|
hasRetried = true;
|
|
2649
2776
|
setTimeout(() => {
|
|
2777
|
+
this._fillFilterValuesCache.clear();
|
|
2650
2778
|
params.api.refreshServerSide({ purge: true });
|
|
2651
2779
|
}, 2000);
|
|
2652
2780
|
}
|
|
@@ -2663,6 +2791,7 @@ class GridLibraryComponent {
|
|
|
2663
2791
|
if (!hasRetried) {
|
|
2664
2792
|
hasRetried = true;
|
|
2665
2793
|
setTimeout(() => {
|
|
2794
|
+
this._fillFilterValuesCache.clear();
|
|
2666
2795
|
this.gridAPI.refreshServerSide({ purge: true });
|
|
2667
2796
|
}, 2000);
|
|
2668
2797
|
}
|
|
@@ -2758,6 +2887,7 @@ class GridLibraryComponent {
|
|
|
2758
2887
|
this.gridAPI.showLoadingOverlay();
|
|
2759
2888
|
this.gridAPI.resetColumnState();
|
|
2760
2889
|
this.gridAPI.setFilterModel(null);
|
|
2890
|
+
this._fillFilterValuesCache.clear();
|
|
2761
2891
|
this.gridColumnState = JSON.parse(overrideStateData);
|
|
2762
2892
|
this.setGridState();
|
|
2763
2893
|
setTimeout(() => { this.gridAPI.hideOverlay(); }, 500);
|
|
@@ -3419,8 +3549,8 @@ class GridLibraryComponent {
|
|
|
3419
3549
|
return after;
|
|
3420
3550
|
});
|
|
3421
3551
|
}
|
|
3422
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.
|
|
3423
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.
|
|
3552
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: GridLibraryComponent, deps: [{ token: GridLibraryService }, { token: ColumnValueFormatter }, { token: TokenSharingService }, { token: i4$1.Router }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3553
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.7", type: GridLibraryComponent, isStandalone: false, selector: "lib-basesite-shared-grid-lib", inputs: { overrideColumnDefs: "overrideColumnDefs", columnDefs: "columnDefs", rowData: "rowData", paginationAutoPageSize: "paginationAutoPageSize", rowSelection: "rowSelection", gridId: "gridId", loggedInUser: "loggedInUser", siteId: "siteId", enableServerSidePaging: "enableServerSidePaging", serverDataUrl: "serverDataUrl", environment: "environment", cacheBlockSize: "cacheBlockSize", rowMultiSelectWithClick: "rowMultiSelectWithClick", floatingFilter: "floatingFilter", token: "token", userRoles: "userRoles", rowHeight: "rowHeight", noRowsOverlayComponent: "noRowsOverlayComponent" }, outputs: { btnClickHandler: "btnClickHandler", firstDataRendered: "firstDataRendered", filterChanged: "filterChanged", selectionChanged: "selectionChanged", totalRowCount: "totalRowCount", gridReady: "gridReady" }, host: { listeners: { "window:resize": "onResize()" } }, usesOnChanges: true, ngImport: i0, template: `
|
|
3424
3554
|
<ag-grid-angular
|
|
3425
3555
|
#agGrid
|
|
3426
3556
|
style="width: 100%;height:98.2vh"
|
|
@@ -3504,7 +3634,7 @@ class GridLibraryComponent {
|
|
|
3504
3634
|
</ag-grid-angular>
|
|
3505
3635
|
`, isInline: true, dependencies: [{ kind: "component", type: i5.AgGridAngular, selector: "ag-grid-angular", inputs: ["gridOptions", "modules", "statusBar", "sideBar", "suppressContextMenu", "preventDefaultOnContextMenu", "allowContextMenuWithControlKey", "suppressMenuHide", "enableBrowserTooltips", "tooltipTrigger", "tooltipShowDelay", "tooltipHideDelay", "tooltipMouseTrack", "tooltipInteraction", "popupParent", "copyHeadersToClipboard", "copyGroupHeadersToClipboard", "clipboardDelimiter", "suppressCopyRowsToClipboard", "suppressCopySingleCellRanges", "suppressLastEmptyLineOnPaste", "suppressClipboardPaste", "suppressClipboardApi", "suppressCutToClipboard", "columnDefs", "defaultColDef", "defaultColGroupDef", "columnTypes", "dataTypeDefinitions", "maintainColumnOrder", "suppressFieldDotNotation", "headerHeight", "groupHeaderHeight", "floatingFiltersHeight", "pivotHeaderHeight", "pivotGroupHeaderHeight", "allowDragFromColumnsToolPanel", "suppressMovableColumns", "suppressColumnMoveAnimation", "suppressDragLeaveHidesColumns", "suppressRowGroupHidesColumns", "colResizeDefault", "suppressAutoSize", "autoSizePadding", "skipHeaderOnAutoSize", "autoSizeStrategy", "components", "editType", "singleClickEdit", "suppressClickEdit", "readOnlyEdit", "stopEditingWhenCellsLoseFocus", "enterMovesDown", "enterMovesDownAfterEdit", "enterNavigatesVertically", "enterNavigatesVerticallyAfterEdit", "enableCellEditingOnBackspace", "undoRedoCellEditing", "undoRedoCellEditingLimit", "defaultCsvExportParams", "suppressCsvExport", "defaultExcelExportParams", "suppressExcelExport", "excelStyles", "quickFilterText", "cacheQuickFilter", "excludeHiddenColumnsFromQuickFilter", "includeHiddenColumnsInQuickFilter", "quickFilterParser", "quickFilterMatcher", "excludeChildrenWhenTreeDataFiltering", "enableAdvancedFilter", "advancedFilterModel", "includeHiddenColumnsInAdvancedFilter", "advancedFilterParent", "advancedFilterBuilderParams", "enableCharts", "chartThemes", "customChartThemes", "chartThemeOverrides", "enableChartToolPanelsButton", "suppressChartToolPanelsButton", "chartToolPanelsDef", "loadingCellRenderer", "loadingCellRendererParams", "loadingCellRendererSelector", "localeText", "masterDetail", "keepDetailRows", "keepDetailRowsCount", "detailCellRenderer", "detailCellRendererParams", "detailRowHeight", "detailRowAutoHeight", "context", "alignedGrids", "tabIndex", "rowBuffer", "valueCache", "valueCacheNeverExpires", "enableCellExpressions", "suppressParentsInRowNodes", "suppressTouch", "suppressFocusAfterRefresh", "suppressAsyncEvents", "suppressBrowserResizeObserver", "suppressPropertyNamesCheck", "suppressChangeDetection", "debug", "overlayLoadingTemplate", "loadingOverlayComponent", "loadingOverlayComponentParams", "suppressLoadingOverlay", "overlayNoRowsTemplate", "noRowsOverlayComponent", "noRowsOverlayComponentParams", "suppressNoRowsOverlay", "pagination", "paginationPageSize", "paginationPageSizeSelector", "paginationAutoPageSize", "paginateChildRows", "suppressPaginationPanel", "pivotMode", "pivotPanelShow", "pivotDefaultExpanded", "pivotColumnGroupTotals", "pivotRowTotals", "pivotSuppressAutoColumn", "suppressExpandablePivotGroups", "functionsReadOnly", "aggFuncs", "suppressAggFuncInHeader", "alwaysAggregateAtRootLevel", "suppressAggAtRootLevel", "aggregateOnlyChangedColumns", "suppressAggFilteredOnly", "removePivotHeaderRowWhenSingleValueColumn", "animateRows", "enableCellChangeFlash", "cellFlashDelay", "cellFadeDelay", "allowShowChangeAfterFilter", "domLayout", "ensureDomOrder", "enableRtl", "suppressColumnVirtualisation", "suppressMaxRenderedRowRestriction", "suppressRowVirtualisation", "rowDragManaged", "suppressRowDrag", "suppressMoveWhenRowDragging", "rowDragEntireRow", "rowDragMultiRow", "rowDragText", "fullWidthCellRenderer", "fullWidthCellRendererParams", "embedFullWidthRows", "suppressGroupMaintainValueType", "groupDisplayType", "groupDefaultExpanded", "autoGroupColumnDef", "groupMaintainOrder", "groupSelectsChildren", "groupLockGroupColumns", "groupAggFiltering", "groupIncludeFooter", "groupIncludeTotalFooter", "groupSuppressBlankHeader", "groupSelectsFiltered", "showOpenedGroup", "groupRemoveSingleChildren", "groupRemoveLowestSingleChildren", "groupHideOpenParents", "groupAllowUnbalanced", "rowGroupPanelShow", "groupRowRenderer", "groupRowRendererParams", "suppressMakeColumnVisibleAfterUnGroup", "treeData", "rowGroupPanelSuppressSort", "suppressGroupRowsSticky", "pinnedTopRowData", "pinnedBottomRowData", "rowModelType", "rowData", "asyncTransactionWaitMillis", "suppressModelUpdateAfterUpdateTransaction", "datasource", "cacheOverflowSize", "infiniteInitialRowCount", "serverSideInitialRowCount", "suppressServerSideInfiniteScroll", "cacheBlockSize", "maxBlocksInCache", "maxConcurrentDatasourceRequests", "blockLoadDebounceMillis", "purgeClosedRowNodes", "serverSideDatasource", "serverSideSortAllLevels", "serverSideOnlyRefreshFilteredGroups", "serverSideFilterAllLevels", "serverSideSortOnServer", "serverSideFilterOnServer", "serverSidePivotResultFieldSeparator", "viewportDatasource", "viewportRowModelPageSize", "viewportRowModelBufferSize", "alwaysShowHorizontalScroll", "alwaysShowVerticalScroll", "debounceVerticalScrollbar", "suppressHorizontalScroll", "suppressScrollOnNewData", "suppressScrollWhenPopupsAreOpen", "suppressAnimationFrame", "suppressMiddleClickScrolls", "suppressPreventDefaultOnMouseWheel", "scrollbarWidth", "rowSelection", "rowMultiSelectWithClick", "suppressRowDeselection", "suppressRowClickSelection", "suppressCellFocus", "suppressMultiRangeSelection", "enableCellTextSelection", "enableRangeSelection", "enableRangeHandle", "enableFillHandle", "fillHandleDirection", "suppressClearOnFillReduction", "sortingOrder", "accentedSort", "unSortIcon", "suppressMultiSort", "alwaysMultiSort", "multiSortKey", "suppressMaintainUnsortedOrder", "icons", "rowHeight", "rowStyle", "rowClass", "rowClassRules", "suppressRowHoverHighlight", "suppressRowTransform", "columnHoverHighlight", "gridId", "deltaSort", "treeDataDisplayType", "functionsPassive", "enableGroupEdit", "initialState", "getContextMenuItems", "getMainMenuItems", "postProcessPopup", "processUnpinnedColumns", "processCellForClipboard", "processHeaderForClipboard", "processGroupHeaderForClipboard", "processCellFromClipboard", "sendToClipboard", "processDataFromClipboard", "isExternalFilterPresent", "doesExternalFilterPass", "getChartToolbarItems", "createChartContainer", "navigateToNextHeader", "tabToNextHeader", "navigateToNextCell", "tabToNextCell", "getLocaleText", "getDocument", "paginationNumberFormatter", "getGroupRowAgg", "isGroupOpenByDefault", "initialGroupOrderComparator", "processPivotResultColDef", "processPivotResultColGroupDef", "getDataPath", "getChildCount", "getServerSideGroupLevelParams", "isServerSideGroupOpenByDefault", "isApplyServerSideTransaction", "isServerSideGroup", "getServerSideGroupKey", "getBusinessKeyForNode", "getRowId", "resetRowDataOnUpdate", "processRowPostCreate", "isRowSelectable", "isRowMaster", "fillOperation", "postSortRows", "getRowStyle", "getRowClass", "getRowHeight", "isFullWidthRow"], outputs: ["toolPanelVisibleChanged", "toolPanelSizeChanged", "cutStart", "cutEnd", "pasteStart", "pasteEnd", "columnVisible", "columnPinned", "columnResized", "columnMoved", "columnValueChanged", "columnPivotModeChanged", "columnPivotChanged", "columnGroupOpened", "newColumnsLoaded", "gridColumnsChanged", "displayedColumnsChanged", "virtualColumnsChanged", "columnEverythingChanged", "columnHeaderMouseOver", "columnHeaderMouseLeave", "columnHeaderClicked", "columnHeaderContextMenu", "componentStateChanged", "cellValueChanged", "cellEditRequest", "rowValueChanged", "cellEditingStarted", "cellEditingStopped", "rowEditingStarted", "rowEditingStopped", "undoStarted", "undoEnded", "redoStarted", "redoEnded", "rangeDeleteStart", "rangeDeleteEnd", "filterOpened", "filterChanged", "filterModified", "advancedFilterBuilderVisibleChanged", "chartCreated", "chartRangeSelectionChanged", "chartOptionsChanged", "chartDestroyed", "cellKeyDown", "gridReady", "gridPreDestroyed", "firstDataRendered", "gridSizeChanged", "modelUpdated", "virtualRowRemoved", "viewportChanged", "bodyScroll", "bodyScrollEnd", "dragStarted", "dragStopped", "stateUpdated", "paginationChanged", "rowDragEnter", "rowDragMove", "rowDragLeave", "rowDragEnd", "columnRowGroupChanged", "rowGroupOpened", "expandOrCollapseAll", "pinnedRowDataChanged", "rowDataUpdated", "asyncTransactionsFlushed", "storeRefreshed", "cellClicked", "cellDoubleClicked", "cellFocused", "cellMouseOver", "cellMouseOut", "cellMouseDown", "rowClicked", "rowDoubleClicked", "rowSelected", "selectionChanged", "cellContextMenu", "rangeSelectionChanged", "tooltipShow", "tooltipHide", "sortChanged", "columnRowGroupChangeRequest", "columnPivotChangeRequest", "columnValueChangeRequest", "columnAggFuncChangeRequest"] }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
|
|
3506
3636
|
}
|
|
3507
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.
|
|
3637
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: GridLibraryComponent, decorators: [{
|
|
3508
3638
|
type: Component,
|
|
3509
3639
|
args: [{ selector: 'lib-basesite-shared-grid-lib', template: `
|
|
3510
3640
|
<ag-grid-angular
|
|
@@ -3655,8 +3785,8 @@ class DateHeaderComponent {
|
|
|
3655
3785
|
const newSort = currentSort === this.sortOrderAsc ? this.sortOrderDesc : currentSort === this.sortOrderDesc ? null : this.sortOrderAsc;
|
|
3656
3786
|
this.params.setSort(newSort);
|
|
3657
3787
|
}
|
|
3658
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.
|
|
3659
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.
|
|
3788
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: DateHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3789
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.7", type: DateHeaderComponent, isStandalone: false, selector: "app-date-header", ngImport: i0, template: `
|
|
3660
3790
|
<span>
|
|
3661
3791
|
{{ params.displayName }}
|
|
3662
3792
|
<i class="fa-solid fa-calendar-days" style="margin-left: 4px;"></i>
|
|
@@ -3665,7 +3795,7 @@ class DateHeaderComponent {
|
|
|
3665
3795
|
</span>
|
|
3666
3796
|
`, isInline: true }); }
|
|
3667
3797
|
}
|
|
3668
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.
|
|
3798
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: DateHeaderComponent, decorators: [{
|
|
3669
3799
|
type: Component,
|
|
3670
3800
|
args: [{
|
|
3671
3801
|
selector: 'app-date-header',
|
|
@@ -3685,14 +3815,14 @@ class HeaderComponent {
|
|
|
3685
3815
|
agInit(params) {
|
|
3686
3816
|
this.params = params;
|
|
3687
3817
|
}
|
|
3688
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.
|
|
3689
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.
|
|
3818
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: HeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
3819
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.0.7", type: HeaderComponent, isStandalone: false, selector: "app-date-header", ngImport: i0, template: `
|
|
3690
3820
|
<span>
|
|
3691
3821
|
{{ params.displayName }}
|
|
3692
3822
|
</span>
|
|
3693
3823
|
`, isInline: true }); }
|
|
3694
3824
|
}
|
|
3695
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.
|
|
3825
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: HeaderComponent, decorators: [{
|
|
3696
3826
|
type: Component,
|
|
3697
3827
|
args: [{
|
|
3698
3828
|
selector: 'app-date-header',
|
|
@@ -3705,8 +3835,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImpor
|
|
|
3705
3835
|
}] });
|
|
3706
3836
|
|
|
3707
3837
|
class GridLibraryModule {
|
|
3708
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.
|
|
3709
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.
|
|
3838
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: GridLibraryModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
3839
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.0.7", ngImport: i0, type: GridLibraryModule, declarations: [GridLibraryComponent,
|
|
3710
3840
|
ButtonRendererComponent,
|
|
3711
3841
|
CustomTooltip,
|
|
3712
3842
|
DropdownRenderer,
|
|
@@ -3718,12 +3848,12 @@ class GridLibraryModule {
|
|
|
3718
3848
|
CommonModule,
|
|
3719
3849
|
DatepickerComponent], exports: [GridLibraryComponent,
|
|
3720
3850
|
DatePickerModule] }); }
|
|
3721
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.
|
|
3851
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: GridLibraryModule, providers: [DatePipe, GridLibraryService, ColumnValueFormatter, provideHttpClient(withInterceptorsFromDi())], imports: [AgGridModule,
|
|
3722
3852
|
DatePickerModule,
|
|
3723
3853
|
CommonModule,
|
|
3724
3854
|
DatepickerComponent, DatePickerModule] }); }
|
|
3725
3855
|
}
|
|
3726
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.
|
|
3856
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.7", ngImport: i0, type: GridLibraryModule, decorators: [{
|
|
3727
3857
|
type: NgModule,
|
|
3728
3858
|
args: [{ declarations: [
|
|
3729
3859
|
GridLibraryComponent,
|