@progress/kendo-angular-pivotgrid 17.0.0-develop.4 → 17.0.0-develop.41
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 +37 -15
- package/configurator/chip-menu/chip-menu-filter.component.d.ts +1 -1
- package/configurator/chip-menu/chip-menu-item-base.d.ts +1 -1
- package/configurator/chip-menu/chip-menu-item.component.d.ts +1 -1
- package/configurator/chip-menu/chip-menu-item.directive.d.ts +1 -1
- package/configurator/chip-menu/chip-menu-reorder.component.d.ts +1 -1
- package/configurator/chip-menu/chip-menu-sort.component.d.ts +1 -1
- package/configurator/chip-menu/chip-menu.component.d.ts +6 -4
- package/configurator/chip-menu/filtering/filter-menu-container.component.d.ts +1 -1
- package/configurator/chip-menu/filtering/filter-menu-dropdownlist.directive.d.ts +1 -1
- package/configurator/chip-menu/filtering/string-filter-menu.component.d.ts +3 -3
- package/configurator/configurator.component.d.ts +3 -6
- package/configurator/draggable.directive.d.ts +4 -5
- package/configurator/drop-target.directive.d.ts +1 -1
- package/data-binding/base-binding-directive.d.ts +1 -1
- package/data-binding/local-binding.directive.d.ts +1 -1
- package/data-binding/olap-binding.directive.d.ts +1 -1
- package/{esm2020 → esm2022}/configurator/chip-kb-nav.directive.mjs +8 -5
- package/{esm2020 → esm2022}/configurator/chip-menu/chip-menu-container.component.mjs +8 -5
- package/{esm2020 → esm2022}/configurator/chip-menu/chip-menu-filter.component.mjs +25 -19
- package/{esm2020 → esm2022}/configurator/chip-menu/chip-menu-item-base.mjs +9 -6
- package/{esm2020 → esm2022}/configurator/chip-menu/chip-menu-item-content-template.directive.mjs +4 -3
- package/{esm2020 → esm2022}/configurator/chip-menu/chip-menu-item.component.mjs +65 -40
- package/{esm2020 → esm2022}/configurator/chip-menu/chip-menu-item.directive.mjs +35 -28
- package/{esm2020 → esm2022}/configurator/chip-menu/chip-menu-reorder.component.mjs +27 -19
- package/{esm2020 → esm2022}/configurator/chip-menu/chip-menu-sort.component.mjs +10 -6
- package/{esm2020 → esm2022}/configurator/chip-menu/chip-menu.component.mjs +36 -39
- package/{esm2020 → esm2022}/configurator/chip-menu/chip-menu.service.mjs +12 -10
- package/{esm2020 → esm2022}/configurator/chip-menu/filtering/filter-menu-container.component.mjs +22 -9
- package/{esm2020 → esm2022}/configurator/chip-menu/filtering/filter-menu-dropdownlist.directive.mjs +11 -9
- package/{esm2020 → esm2022}/configurator/chip-menu/filtering/menu-tabbing.service.mjs +7 -6
- package/{esm2020 → esm2022}/configurator/chip-menu/filtering/string-filter-menu.component.mjs +25 -15
- package/{esm2020 → esm2022}/configurator/chip-menu/single-popup.service.mjs +21 -10
- package/{esm2020 → esm2022}/configurator/configurator.component.mjs +137 -120
- package/{esm2020 → esm2022}/configurator/configurator.service.mjs +12 -5
- package/{esm2020 → esm2022}/configurator/draggable.directive.mjs +22 -15
- package/{esm2020 → esm2022}/configurator/drop-cue.service.mjs +4 -3
- package/{esm2020 → esm2022}/configurator/drop-target.directive.mjs +15 -4
- package/{esm2020 → esm2022}/data-binding/base-binding-directive.mjs +43 -35
- package/{esm2020 → esm2022}/data-binding/local-binding.directive.mjs +17 -5
- package/{esm2020 → esm2022}/data-binding/olap-binding.directive.mjs +16 -4
- package/{esm2020 → esm2022}/data-binding/pivotgrid-data.service.mjs +25 -14
- package/{esm2020 → esm2022}/localization/custom-messages.component.mjs +9 -8
- package/{esm2020 → esm2022}/localization/localized-messages.directive.mjs +9 -8
- package/esm2022/localization/messages.mjs +284 -0
- package/{esm2020 → esm2022}/localization/pivot-localization.service.mjs +4 -3
- package/{esm2020 → esm2022}/models/configuration-change-event.mjs +20 -0
- package/{esm2020 → esm2022}/models/configurator-settings.mjs +5 -0
- package/{esm2020 → esm2022}/models/expanded-change-event.mjs +12 -0
- package/{esm2020 → esm2022}/package-metadata.mjs +2 -2
- package/{esm2020 → esm2022}/pivotgrid.component.mjs +101 -76
- package/{esm2020 → esm2022}/pivotgrid.module.mjs +13 -14
- package/{esm2020 → esm2022}/rendering/pivotgrid-cell.directive.mjs +38 -26
- package/{esm2020 → esm2022}/rendering/pivotgrid-table.component.mjs +66 -48
- package/{esm2020 → esm2022}/rendering/templates/pivotgrid-cell-template.directive.mjs +4 -3
- package/{esm2020 → esm2022}/rendering/templates/pivotgrid-column-header-cell-template.directive.mjs +4 -3
- package/{esm2020 → esm2022}/rendering/templates/pivotgrid-row-header-cell-template.directive.mjs +4 -3
- package/{esm2020 → esm2022}/rendering/templates/pivotgrid-value-cell-template.directive.mjs +4 -3
- package/{esm2020 → esm2022}/virtual/scroll.service.mjs +5 -6
- package/{esm2020 → esm2022}/virtual/scrollable-container.mjs +57 -43
- package/{fesm2020 → fesm2022}/progress-kendo-angular-pivotgrid.mjs +1169 -679
- package/localization/messages.d.ts +1 -1
- package/models/configurator-chipmenu-reorder-target.d.ts +1 -1
- package/models/configurator-orientation.d.ts +1 -1
- package/models/configurator-position.d.ts +1 -1
- package/models/drop-section.d.ts +1 -1
- package/models/drop-target.d.ts +1 -1
- package/models/expanded-state-action.d.ts +2 -2
- package/models/virtualization-settings.d.ts +1 -1
- package/package.json +22 -28
- package/pivotgrid.component.d.ts +1 -1
- package/pivotgrid.module.d.ts +1 -2
- package/rendering/pivotgrid-cell.directive.d.ts +1 -1
- package/rendering/pivotgrid-table.component.d.ts +1 -1
- package/schematics/ngAdd/index.js +2 -2
- package/esm2020/localization/messages.mjs +0 -87
- package/fesm2015/progress-kendo-angular-pivotgrid.mjs +0 -4947
- /package/{esm2020 → esm2022}/directives.mjs +0 -0
- /package/{esm2020 → esm2022}/index.mjs +0 -0
- /package/{esm2020 → esm2022}/models/configurator-chipmenu-reorder-target.mjs +0 -0
- /package/{esm2020 → esm2022}/models/configurator-orientation.mjs +0 -0
- /package/{esm2020 → esm2022}/models/configurator-position.mjs +0 -0
- /package/{esm2020 → esm2022}/models/data-row-item.mjs +0 -0
- /package/{esm2020 → esm2022}/models/drop-section.mjs +0 -0
- /package/{esm2020 → esm2022}/models/drop-target.mjs +0 -0
- /package/{esm2020 → esm2022}/models/expanded-state-action.mjs +0 -0
- /package/{esm2020 → esm2022}/models/loader-settings.mjs +0 -0
- /package/{esm2020 → esm2022}/models/virtualization-settings.mjs +0 -0
- /package/{esm2020 → esm2022}/progress-kendo-angular-pivotgrid.mjs +0 -0
- /package/{esm2020 → esm2022}/util.mjs +0 -0
@@ -20,12 +20,12 @@ import * as i3 from '@angular/forms';
|
|
20
20
|
import { NG_VALUE_ACCESSOR, ReactiveFormsModule, FormsModule } from '@angular/forms';
|
21
21
|
import * as i1$2 from '@progress/kendo-angular-dropdowns';
|
22
22
|
import { DropDownListComponent } from '@progress/kendo-angular-dropdowns';
|
23
|
-
import { TextBoxDirective,
|
23
|
+
import { TextBoxDirective, CheckBoxComponent } from '@progress/kendo-angular-inputs';
|
24
24
|
import { trigger, state, style, transition, animate } from '@angular/animations';
|
25
25
|
import { IconWrapperComponent, IconsService } from '@progress/kendo-angular-icons';
|
26
26
|
import * as i1$3 from '@progress/kendo-angular-popup';
|
27
27
|
import { PopupService } from '@progress/kendo-angular-popup';
|
28
|
-
import { TreeViewComponent, ExpandDirective, NodeTemplateDirective } from '@progress/kendo-angular-treeview';
|
28
|
+
import { TreeViewComponent, ExpandDirective, CheckDirective, NodeTemplateDirective } from '@progress/kendo-angular-treeview';
|
29
29
|
import { validatePackage } from '@progress/kendo-licensing';
|
30
30
|
import { LoaderComponent } from '@progress/kendo-angular-indicators';
|
31
31
|
import { DialogContainerService, DialogService, WindowService, WindowContainerService } from '@progress/kendo-angular-dialog';
|
@@ -34,12 +34,15 @@ import { DialogContainerService, DialogService, WindowService, WindowContainerSe
|
|
34
34
|
* @hidden
|
35
35
|
*/
|
36
36
|
class ChipKeyboardNavigationDirective {
|
37
|
+
host;
|
38
|
+
renderer;
|
39
|
+
ngZone;
|
40
|
+
keydownSub = new Subscription();
|
41
|
+
reorder = new EventEmitter();
|
37
42
|
constructor(host, renderer, ngZone) {
|
38
43
|
this.host = host;
|
39
44
|
this.renderer = renderer;
|
40
45
|
this.ngZone = ngZone;
|
41
|
-
this.keydownSub = new Subscription();
|
42
|
-
this.reorder = new EventEmitter();
|
43
46
|
}
|
44
47
|
ngOnInit() {
|
45
48
|
const chipElement = this.host.element.nativeElement;
|
@@ -73,10 +76,10 @@ class ChipKeyboardNavigationDirective {
|
|
73
76
|
ngOnDestroy() {
|
74
77
|
this.keydownSub.unsubscribe();
|
75
78
|
}
|
79
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChipKeyboardNavigationDirective, deps: [{ token: i1.ChipComponent }, { token: i0.Renderer2 }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
|
80
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: ChipKeyboardNavigationDirective, isStandalone: true, selector: "[kendoChipKeyboardNavigation]", outputs: { reorder: "reorder" }, ngImport: i0 });
|
76
81
|
}
|
77
|
-
|
78
|
-
ChipKeyboardNavigationDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: ChipKeyboardNavigationDirective, isStandalone: true, selector: "[kendoChipKeyboardNavigation]", outputs: { reorder: "reorder" }, ngImport: i0 });
|
79
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChipKeyboardNavigationDirective, decorators: [{
|
82
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChipKeyboardNavigationDirective, decorators: [{
|
80
83
|
type: Directive,
|
81
84
|
args: [{
|
82
85
|
selector: '[kendoChipKeyboardNavigation]',
|
@@ -90,31 +93,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
90
93
|
* @hidden
|
91
94
|
*/
|
92
95
|
class ChipMenuItemDirective {
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
this.subs = new Subscription();
|
100
|
-
this.onTab = (e) => {
|
101
|
-
if (e.keyCode !== Keys.Tab) {
|
102
|
-
return;
|
103
|
-
}
|
104
|
-
if (this.isFirst && e.shiftKey && e.target === this.chipMenuItems[0]) {
|
105
|
-
e.preventDefault();
|
106
|
-
this.menuItemComponent.service.menuTabbingService.lastFocusable.focus();
|
107
|
-
}
|
108
|
-
if (this.isLast && !e.shiftKey) {
|
109
|
-
const lastColumnMenuItem = this.getLastColumnMenuItem();
|
110
|
-
const isExpanded = this.menuItemComponent.expanded;
|
111
|
-
if (lastColumnMenuItem === e.target && !isExpanded) {
|
112
|
-
e.preventDefault();
|
113
|
-
this.menuItemComponent.service.menuTabbingService.firstFocusable.focus();
|
114
|
-
}
|
115
|
-
}
|
116
|
-
};
|
117
|
-
}
|
96
|
+
hostElement;
|
97
|
+
renderer;
|
98
|
+
ngZone;
|
99
|
+
menuItemComponent;
|
100
|
+
firstFocusableElement;
|
101
|
+
lastFocusableElement;
|
118
102
|
set isFirst(value) {
|
119
103
|
if (value) {
|
120
104
|
const focusableElement = this.chipMenuItems[0];
|
@@ -146,6 +130,15 @@ class ChipMenuItemDirective {
|
|
146
130
|
get isLast() {
|
147
131
|
return this._isLast;
|
148
132
|
}
|
133
|
+
_isFirst = false;
|
134
|
+
_isLast = false;
|
135
|
+
chipMenuItems;
|
136
|
+
subs = new Subscription();
|
137
|
+
constructor(hostElement, renderer, ngZone) {
|
138
|
+
this.hostElement = hostElement;
|
139
|
+
this.renderer = renderer;
|
140
|
+
this.ngZone = ngZone;
|
141
|
+
}
|
149
142
|
ngAfterViewInit() {
|
150
143
|
this.chipMenuItems = this.hostElement.nativeElement.querySelectorAll('.k-columnmenu-item');
|
151
144
|
this.chipMenuItems.forEach(el => this.renderer.setAttribute(el, 'tabindex', '0'));
|
@@ -153,13 +146,30 @@ class ChipMenuItemDirective {
|
|
153
146
|
ngOnDestroy() {
|
154
147
|
this.subs.unsubscribe();
|
155
148
|
}
|
149
|
+
onTab = (e) => {
|
150
|
+
if (e.keyCode !== Keys.Tab) {
|
151
|
+
return;
|
152
|
+
}
|
153
|
+
if (this.isFirst && e.shiftKey && e.target === this.chipMenuItems[0]) {
|
154
|
+
e.preventDefault();
|
155
|
+
this.menuItemComponent.service.menuTabbingService.lastFocusable.focus();
|
156
|
+
}
|
157
|
+
if (this.isLast && !e.shiftKey) {
|
158
|
+
const lastColumnMenuItem = this.getLastColumnMenuItem();
|
159
|
+
const isExpanded = this.menuItemComponent.expanded;
|
160
|
+
if (lastColumnMenuItem === e.target && !isExpanded) {
|
161
|
+
e.preventDefault();
|
162
|
+
this.menuItemComponent.service.menuTabbingService.firstFocusable.focus();
|
163
|
+
}
|
164
|
+
}
|
165
|
+
};
|
156
166
|
getLastColumnMenuItem() {
|
157
167
|
return this.chipMenuItems[this.chipMenuItems.length - 1];
|
158
168
|
}
|
169
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChipMenuItemDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
|
170
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: ChipMenuItemDirective, isStandalone: true, selector: "[kendoPivotChipMenuItem]", inputs: { menuItemComponent: ["kendoPivotChipMenuItem", "menuItemComponent"] }, ngImport: i0 });
|
159
171
|
}
|
160
|
-
|
161
|
-
ChipMenuItemDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: ChipMenuItemDirective, isStandalone: true, selector: "[kendoPivotChipMenuItem]", inputs: { menuItemComponent: ["kendoPivotChipMenuItem", "menuItemComponent"] }, ngImport: i0 });
|
162
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChipMenuItemDirective, decorators: [{
|
172
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChipMenuItemDirective, decorators: [{
|
163
173
|
type: Directive,
|
164
174
|
args: [{
|
165
175
|
selector: '[kendoPivotChipMenuItem]',
|
@@ -399,21 +409,32 @@ let nextPivotGridId = 0;
|
|
399
409
|
* @hidden
|
400
410
|
*/
|
401
411
|
class PivotGridDataService {
|
412
|
+
ngZone;
|
413
|
+
expandedStateChange = new EventEmitter();
|
414
|
+
configuratorFieldChange = new EventEmitter();
|
415
|
+
expandedFieldChange = new EventEmitter();
|
416
|
+
directive;
|
417
|
+
normalizedData;
|
418
|
+
rows;
|
419
|
+
columns;
|
420
|
+
wrapper;
|
421
|
+
aggregateData;
|
422
|
+
state;
|
423
|
+
columnHeaderLeaves;
|
424
|
+
columnHeaderRows = new BehaviorSubject([]);
|
425
|
+
columnHeaderCols = new BehaviorSubject([]);
|
426
|
+
rowHeaderLeaves;
|
427
|
+
rowHeaderCols = new BehaviorSubject([]);
|
428
|
+
rowHeaderRows = new BehaviorSubject([]);
|
429
|
+
valuesRows = new BehaviorSubject([]);
|
430
|
+
loading = new BehaviorSubject(false);
|
431
|
+
pivotGridId;
|
402
432
|
constructor(ngZone) {
|
403
433
|
this.ngZone = ngZone;
|
404
|
-
this.expandedStateChange = new EventEmitter();
|
405
|
-
this.configuratorFieldChange = new EventEmitter();
|
406
|
-
this.expandedFieldChange = new EventEmitter();
|
407
|
-
this.columnHeaderRows = new BehaviorSubject([]);
|
408
|
-
this.columnHeaderCols = new BehaviorSubject([]);
|
409
|
-
this.rowHeaderCols = new BehaviorSubject([]);
|
410
|
-
this.rowHeaderRows = new BehaviorSubject([]);
|
411
|
-
this.valuesRows = new BehaviorSubject([]);
|
412
|
-
this.loading = new BehaviorSubject(false);
|
413
|
-
this.fields = new BehaviorSubject([]);
|
414
|
-
this.configuredFields = new BehaviorSubject([]);
|
415
434
|
this.pivotGridId = nextPivotGridId++;
|
416
435
|
}
|
436
|
+
fields = new BehaviorSubject([]);
|
437
|
+
configuredFields = new BehaviorSubject([]);
|
417
438
|
updateRowsAndCols() {
|
418
439
|
const rowsTree = toTree((this.rows || []).slice());
|
419
440
|
const [rowHeaderRows, rowHeaderLeaves, rowHeaderDepth, rowHeaderBreadth] = toRows(rowsTree);
|
@@ -434,10 +455,10 @@ class PivotGridDataService {
|
|
434
455
|
});
|
435
456
|
}
|
436
457
|
}
|
458
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PivotGridDataService, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
|
459
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PivotGridDataService });
|
437
460
|
}
|
438
|
-
|
439
|
-
PivotGridDataService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PivotGridDataService });
|
440
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PivotGridDataService, decorators: [{
|
461
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PivotGridDataService, decorators: [{
|
441
462
|
type: Injectable
|
442
463
|
}], ctorParameters: function () { return [{ type: i0.NgZone }]; }, propDecorators: { expandedStateChange: [{
|
443
464
|
type: Output
|
@@ -451,6 +472,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
451
472
|
* @hidden
|
452
473
|
*/
|
453
474
|
class PivotGridState {
|
475
|
+
columnAxes;
|
476
|
+
rowAxes;
|
477
|
+
measureAxes;
|
478
|
+
sort;
|
479
|
+
filter;
|
454
480
|
constructor(columnAxes, rowAxes, measureAxes, sort, filter) {
|
455
481
|
this.columnAxes = columnAxes;
|
456
482
|
this.rowAxes = rowAxes;
|
@@ -464,10 +490,17 @@ class PivotGridState {
|
|
464
490
|
* @hidden
|
465
491
|
*/
|
466
492
|
class ConfiguratorService {
|
493
|
+
dataService;
|
494
|
+
configuratorInstance;
|
495
|
+
state;
|
496
|
+
draggedElement;
|
497
|
+
dropTargetElement;
|
498
|
+
cueContainer;
|
499
|
+
orientation;
|
500
|
+
configuratorStateChange = new EventEmitter();
|
501
|
+
closeMenu = new EventEmitter();
|
467
502
|
constructor(dataService) {
|
468
503
|
this.dataService = dataService;
|
469
|
-
this.configuratorStateChange = new EventEmitter();
|
470
|
-
this.closeMenu = new EventEmitter();
|
471
504
|
}
|
472
505
|
parseConfiguratorState(action) {
|
473
506
|
const newState = configuratorReducer({
|
@@ -486,10 +519,10 @@ class ConfiguratorService {
|
|
486
519
|
this.dataService.state = new PivotGridState(this.state.columnAxes, this.state.rowAxes, this.state.measureAxes, this.state.sort, this.state.filter);
|
487
520
|
this.configuratorStateChange.emit(this.state);
|
488
521
|
}
|
522
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ConfiguratorService, deps: [{ token: PivotGridDataService }], target: i0.ɵɵFactoryTarget.Injectable });
|
523
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ConfiguratorService });
|
489
524
|
}
|
490
|
-
|
491
|
-
ConfiguratorService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ConfiguratorService });
|
492
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ConfiguratorService, decorators: [{
|
525
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ConfiguratorService, decorators: [{
|
493
526
|
type: Injectable
|
494
527
|
}], ctorParameters: function () { return [{ type: PivotGridDataService }]; }, propDecorators: { configuratorStateChange: [{
|
495
528
|
type: Output
|
@@ -501,13 +534,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
501
534
|
* @hidden
|
502
535
|
*/
|
503
536
|
class MenuTabbingService {
|
504
|
-
|
505
|
-
|
506
|
-
|
537
|
+
firstFocusable;
|
538
|
+
lastFocusable;
|
539
|
+
isPopupOpen = false;
|
540
|
+
lastMenuItem;
|
541
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MenuTabbingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
542
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MenuTabbingService });
|
507
543
|
}
|
508
|
-
|
509
|
-
MenuTabbingService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MenuTabbingService });
|
510
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MenuTabbingService, decorators: [{
|
544
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MenuTabbingService, decorators: [{
|
511
545
|
type: Injectable
|
512
546
|
}] });
|
513
547
|
|
@@ -516,26 +550,28 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
516
550
|
* Represents the service that is passed to the ChipMenuFilterComponent and ChipMenuSortComponent.
|
517
551
|
*/
|
518
552
|
class ChipMenuService {
|
519
|
-
|
520
|
-
|
521
|
-
|
522
|
-
|
523
|
-
this.menuTabbingService = menuTabbingService;
|
524
|
-
configuratorService && (this.sub = configuratorService.closeMenu.subscribe(() => this.close()));
|
525
|
-
}
|
553
|
+
configuratorService;
|
554
|
+
menuTabbingService;
|
555
|
+
closeMenu = new EventEmitter();
|
556
|
+
sub = new Subscription();
|
526
557
|
/**
|
527
558
|
* Closes the chip menu.
|
528
559
|
*/
|
529
560
|
close() {
|
530
561
|
this.closeMenu.emit();
|
531
562
|
}
|
563
|
+
constructor(menuTabbingService, configuratorService) {
|
564
|
+
this.configuratorService = configuratorService;
|
565
|
+
this.menuTabbingService = menuTabbingService;
|
566
|
+
configuratorService && (this.sub = configuratorService.closeMenu.subscribe(() => this.close()));
|
567
|
+
}
|
532
568
|
ngOnDestroy() {
|
533
569
|
this.sub.unsubscribe();
|
534
570
|
}
|
571
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChipMenuService, deps: [{ token: MenuTabbingService }, { token: ConfiguratorService }], target: i0.ɵɵFactoryTarget.Injectable });
|
572
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChipMenuService });
|
535
573
|
}
|
536
|
-
|
537
|
-
ChipMenuService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChipMenuService });
|
538
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChipMenuService, decorators: [{
|
574
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChipMenuService, decorators: [{
|
539
575
|
type: Injectable
|
540
576
|
}], ctorParameters: function () { return [{ type: MenuTabbingService }, { type: ConfiguratorService }]; } });
|
541
577
|
|
@@ -543,10 +579,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
543
579
|
* @hidden
|
544
580
|
*/
|
545
581
|
class ChipMenuContainerComponent {
|
582
|
+
service;
|
583
|
+
ngZone;
|
584
|
+
chipMenuItems;
|
585
|
+
hostClass = true;
|
546
586
|
constructor(service, ngZone) {
|
547
587
|
this.service = service;
|
548
588
|
this.ngZone = ngZone;
|
549
|
-
this.hostClass = true;
|
550
589
|
}
|
551
590
|
ngAfterViewInit() {
|
552
591
|
if (!this.chipMenuItems.length) {
|
@@ -556,12 +595,12 @@ class ChipMenuContainerComponent {
|
|
556
595
|
this.chipMenuItems.last.isLast = true;
|
557
596
|
this.ngZone.onStable.pipe(take(1)).subscribe(() => this.service.menuTabbingService.firstFocusable.focus());
|
558
597
|
}
|
559
|
-
}
|
560
|
-
|
561
|
-
ChipMenuContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ChipMenuContainerComponent, isStandalone: true, selector: "kendo-pivot-chipmenu-container", host: { properties: { "class.k-grid-columnmenu-popup": "this.hostClass" } }, queries: [{ propertyName: "chipMenuItems", predicate: ChipMenuItemDirective, descendants: true }], ngImport: i0, template: `
|
598
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChipMenuContainerComponent, deps: [{ token: ChipMenuService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
599
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ChipMenuContainerComponent, isStandalone: true, selector: "kendo-pivot-chipmenu-container", host: { properties: { "class.k-grid-columnmenu-popup": "this.hostClass" } }, queries: [{ propertyName: "chipMenuItems", predicate: ChipMenuItemDirective, descendants: true }], ngImport: i0, template: `
|
562
600
|
<ng-content></ng-content>
|
563
601
|
`, isInline: true });
|
564
|
-
|
602
|
+
}
|
603
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChipMenuContainerComponent, decorators: [{
|
565
604
|
type: Component,
|
566
605
|
args: [{
|
567
606
|
selector: 'kendo-pivot-chipmenu-container',
|
@@ -584,6 +623,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
584
623
|
* Needed to keep the Pivot's LocalizationService reference and be able to use it inside the ChipList component.
|
585
624
|
*/
|
586
625
|
class PivotLocalizationService {
|
626
|
+
localization;
|
587
627
|
constructor(localization) {
|
588
628
|
this.localization = localization;
|
589
629
|
}
|
@@ -593,10 +633,10 @@ class PivotLocalizationService {
|
|
593
633
|
get rtl() {
|
594
634
|
return this.localization.rtl;
|
595
635
|
}
|
636
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PivotLocalizationService, deps: [{ token: i1$1.LocalizationService }], target: i0.ɵɵFactoryTarget.Injectable });
|
637
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PivotLocalizationService });
|
596
638
|
}
|
597
|
-
|
598
|
-
PivotLocalizationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PivotLocalizationService });
|
599
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PivotLocalizationService, decorators: [{
|
639
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PivotLocalizationService, decorators: [{
|
600
640
|
type: Injectable
|
601
641
|
}], ctorParameters: function () { return [{ type: i1$1.LocalizationService }]; } });
|
602
642
|
|
@@ -604,9 +644,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
604
644
|
* @hidden
|
605
645
|
*/
|
606
646
|
class ChipMenuItemBase {
|
607
|
-
|
608
|
-
|
609
|
-
|
647
|
+
/**
|
648
|
+
* Represents the ChipMenuService class.
|
649
|
+
* Requires a mandatory input.
|
650
|
+
*/
|
651
|
+
service;
|
652
|
+
hostClass = true;
|
610
653
|
ngOnInit() {
|
611
654
|
if (isDevMode() && !this.service) {
|
612
655
|
throw new Error('The service input of the host chip menu components (e.g. ChipMenuSortComponent) is mandatory.');
|
@@ -615,10 +658,10 @@ class ChipMenuItemBase {
|
|
615
658
|
close() {
|
616
659
|
this.service.close();
|
617
660
|
}
|
661
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChipMenuItemBase, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
662
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ChipMenuItemBase, selector: "kendo-pivot-chip-menu-item-base", inputs: { service: "service" }, host: { properties: { "class.k-columnmenu-item-wrapper": "this.hostClass" } }, ngImport: i0, template: ``, isInline: true });
|
618
663
|
}
|
619
|
-
|
620
|
-
ChipMenuItemBase.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ChipMenuItemBase, selector: "kendo-pivot-chip-menu-item-base", inputs: { service: "service" }, host: { properties: { "class.k-columnmenu-item-wrapper": "this.hostClass" } }, ngImport: i0, template: ``, isInline: true });
|
621
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChipMenuItemBase, decorators: [{
|
664
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChipMenuItemBase, decorators: [{
|
622
665
|
type: Component,
|
623
666
|
args: [{
|
624
667
|
selector: 'kendo-pivot-chip-menu-item-base',
|
@@ -635,14 +678,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
635
678
|
* @hidden
|
636
679
|
*/
|
637
680
|
class FilterMenuDropDownListDirective {
|
681
|
+
host;
|
682
|
+
filterMenuDropDownLabel;
|
638
683
|
constructor(host) {
|
639
684
|
this.host = host;
|
640
|
-
this.keydownHandler = (e) => {
|
641
|
-
if (e.keyCode === Keys.Escape && this.host.isOpen) {
|
642
|
-
e.stopPropagation();
|
643
|
-
this.host.toggle(false);
|
644
|
-
}
|
645
|
-
};
|
646
685
|
}
|
647
686
|
ngAfterViewInit() {
|
648
687
|
const wrapperElement = this.host.wrapper.nativeElement;
|
@@ -652,10 +691,16 @@ class FilterMenuDropDownListDirective {
|
|
652
691
|
ngOnDestroy() {
|
653
692
|
this.host.wrapper.nativeElement.removeEventListener('keydown', this.keydownHandler);
|
654
693
|
}
|
694
|
+
keydownHandler = (e) => {
|
695
|
+
if (e.keyCode === Keys.Escape && this.host.isOpen) {
|
696
|
+
e.stopPropagation();
|
697
|
+
this.host.toggle(false);
|
698
|
+
}
|
699
|
+
};
|
700
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FilterMenuDropDownListDirective, deps: [{ token: i1$2.DropDownListComponent }], target: i0.ɵɵFactoryTarget.Directive });
|
701
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: FilterMenuDropDownListDirective, isStandalone: true, selector: "[kendoFilterMenuDropDown]", inputs: { filterMenuDropDownLabel: "filterMenuDropDownLabel" }, ngImport: i0 });
|
655
702
|
}
|
656
|
-
|
657
|
-
FilterMenuDropDownListDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: FilterMenuDropDownListDirective, isStandalone: true, selector: "[kendoFilterMenuDropDown]", inputs: { filterMenuDropDownLabel: "filterMenuDropDownLabel" }, ngImport: i0 });
|
658
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FilterMenuDropDownListDirective, decorators: [{
|
703
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FilterMenuDropDownListDirective, decorators: [{
|
659
704
|
type: Directive,
|
660
705
|
args: [{
|
661
706
|
selector: '[kendoFilterMenuDropDown]',
|
@@ -690,18 +735,28 @@ const stringOperators = localizeOperators({
|
|
690
735
|
* Represents a string-filter menu component.
|
691
736
|
*/
|
692
737
|
class StringFilterMenuComponent {
|
738
|
+
localization;
|
739
|
+
configuratorService;
|
740
|
+
fb;
|
741
|
+
/**
|
742
|
+
* The field with which the filter is associated.
|
743
|
+
*/
|
744
|
+
chip;
|
745
|
+
menuTabbingService;
|
746
|
+
operators;
|
747
|
+
filterFormGroup;
|
748
|
+
get currentFilter() {
|
749
|
+
const filterValue = this.configuratorService.state.filter?.filter(x => x.field === this.chip.name.toString());
|
750
|
+
return filterValue && filterValue[0];
|
751
|
+
}
|
752
|
+
subscription = new Subscription();
|
693
753
|
constructor(localization, configuratorService, fb) {
|
694
754
|
this.localization = localization;
|
695
755
|
this.configuratorService = configuratorService;
|
696
756
|
this.fb = fb;
|
697
|
-
this.subscription = new Subscription();
|
698
|
-
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
699
|
-
this.onTouched = () => { };
|
700
|
-
}
|
701
|
-
get currentFilter() {
|
702
|
-
const filterValue = this.configuratorService.state.filter?.filter(x => x.field === this.chip.name.toString());
|
703
|
-
return filterValue && filterValue[0];
|
704
757
|
}
|
758
|
+
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
759
|
+
onTouched = () => { };
|
705
760
|
registerOnChange(fn) {
|
706
761
|
this.filterFormGroup.valueChanges.subscribe(fn);
|
707
762
|
}
|
@@ -728,13 +783,12 @@ class StringFilterMenuComponent {
|
|
728
783
|
ngOnDestroy() {
|
729
784
|
this.subscription.unsubscribe();
|
730
785
|
}
|
731
|
-
}
|
732
|
-
|
733
|
-
|
734
|
-
|
735
|
-
|
736
|
-
|
737
|
-
}], ngImport: i0, template: `
|
786
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: StringFilterMenuComponent, deps: [{ token: PivotLocalizationService }, { token: ConfiguratorService }, { token: i3.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
|
787
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: StringFilterMenuComponent, isStandalone: true, selector: "kendo-pivot-string-filter-menu", inputs: { chip: "chip", menuTabbingService: "menuTabbingService" }, providers: [{
|
788
|
+
provide: NG_VALUE_ACCESSOR,
|
789
|
+
useExisting: forwardRef(() => StringFilterMenuComponent),
|
790
|
+
multi: true
|
791
|
+
}], ngImport: i0, template: `
|
738
792
|
<ng-container [formGroup]="filterFormGroup">
|
739
793
|
<kendo-dropdownlist
|
740
794
|
kendoFilterMenuDropDown
|
@@ -751,7 +805,8 @@ StringFilterMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.
|
|
751
805
|
/>
|
752
806
|
</ng-container>
|
753
807
|
`, isInline: true, dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "component", type: DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["customIconClass", "showStickyHeader", "icon", "svgIcon", "loading", "data", "value", "textField", "valueField", "adaptiveMode", "title", "subtitle", "popupSettings", "listHeight", "defaultItem", "disabled", "itemDisabled", "readonly", "filterable", "virtual", "ignoreCase", "delay", "valuePrimitive", "tabindex", "tabIndex", "size", "rounded", "fillMode", "leftRightArrowsNavigation", "id"], outputs: ["valueChange", "filterChange", "selectionChange", "open", "opened", "close", "closed", "focus", "blur"], exportAs: ["kendoDropDownList"] }, { kind: "directive", type: FilterMenuDropDownListDirective, selector: "[kendoFilterMenuDropDown]", inputs: ["filterMenuDropDownLabel"] }, { kind: "directive", type: TextBoxDirective, selector: "input[kendoTextBox]", inputs: ["value"] }] });
|
754
|
-
|
808
|
+
}
|
809
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: StringFilterMenuComponent, decorators: [{
|
755
810
|
type: Component,
|
756
811
|
args: [{
|
757
812
|
selector: 'kendo-pivot-string-filter-menu',
|
@@ -795,12 +850,25 @@ const validFilter = ({ value, operator }) => !isNullOrEmptyString(value) || isNo
|
|
795
850
|
* @hidden
|
796
851
|
*/
|
797
852
|
class FilterMenuContainerComponent {
|
853
|
+
localization;
|
854
|
+
cd;
|
855
|
+
configuratorService;
|
856
|
+
close = new EventEmitter();
|
857
|
+
/**
|
858
|
+
* The field with which the filter is associated.
|
859
|
+
*/
|
860
|
+
chip;
|
861
|
+
isLast;
|
862
|
+
isExpanded;
|
863
|
+
menuTabbingService;
|
864
|
+
actionsClass = 'k-action-buttons k-button-group';
|
865
|
+
filterDescriptorValue;
|
866
|
+
resetButton;
|
867
|
+
filterButton;
|
798
868
|
constructor(localization, cd, menuTabbingService, configuratorService) {
|
799
869
|
this.localization = localization;
|
800
870
|
this.cd = cd;
|
801
871
|
this.configuratorService = configuratorService;
|
802
|
-
this.close = new EventEmitter();
|
803
|
-
this.actionsClass = 'k-action-buttons k-button-group';
|
804
872
|
this.menuTabbingService = menuTabbingService;
|
805
873
|
}
|
806
874
|
ngAfterViewChecked() {
|
@@ -853,11 +921,10 @@ class FilterMenuContainerComponent {
|
|
853
921
|
messageFor(localizationToken) {
|
854
922
|
return this.localization.get(localizationToken);
|
855
923
|
}
|
856
|
-
}
|
857
|
-
|
858
|
-
|
859
|
-
|
860
|
-
], viewQueries: [{ propertyName: "resetButton", first: true, predicate: ["resetButton"], descendants: true }, { propertyName: "filterButton", first: true, predicate: ["filterButton"], descendants: true }], ngImport: i0, template: `
|
924
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FilterMenuContainerComponent, deps: [{ token: PivotLocalizationService }, { token: i0.ChangeDetectorRef }, { token: MenuTabbingService }, { token: ConfiguratorService }], target: i0.ɵɵFactoryTarget.Component });
|
925
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: FilterMenuContainerComponent, isStandalone: true, selector: "kendo-pivot-filter-menu-container", inputs: { chip: "chip", isLast: "isLast", isExpanded: "isExpanded", menuTabbingService: "menuTabbingService", actionsClass: "actionsClass" }, outputs: { close: "close" }, providers: [
|
926
|
+
MenuTabbingService
|
927
|
+
], viewQueries: [{ propertyName: "resetButton", first: true, predicate: ["resetButton"], descendants: true }, { propertyName: "filterButton", first: true, predicate: ["filterButton"], descendants: true }], ngImport: i0, template: `
|
861
928
|
<form (submit)="submit()" (reset)="reset()"
|
862
929
|
class="k-filter-menu k-group k-reset k-state-border-up">
|
863
930
|
<div class="k-filter-menu-container">
|
@@ -883,8 +950,9 @@ FilterMenuContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14
|
|
883
950
|
</div>
|
884
951
|
</div>
|
885
952
|
</form>
|
886
|
-
`, isInline: true, dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: StringFilterMenuComponent, selector: "kendo-pivot-string-filter-menu", inputs: ["chip", "menuTabbingService"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton]
|
887
|
-
|
953
|
+
`, isInline: true, dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: StringFilterMenuComponent, selector: "kendo-pivot-string-filter-menu", inputs: ["chip", "menuTabbingService"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }] });
|
954
|
+
}
|
955
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: FilterMenuContainerComponent, decorators: [{
|
888
956
|
type: Component,
|
889
957
|
args: [{
|
890
958
|
providers: [
|
@@ -948,13 +1016,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
948
1016
|
* Provides an option for specifying the content of a chip menu item..
|
949
1017
|
*/
|
950
1018
|
class ChipMenuItemContentTemplateDirective {
|
1019
|
+
templateRef;
|
951
1020
|
constructor(templateRef) {
|
952
1021
|
this.templateRef = templateRef;
|
953
1022
|
}
|
1023
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChipMenuItemContentTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
|
1024
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: ChipMenuItemContentTemplateDirective, isStandalone: true, selector: "[kendoPivotChipMenuItemContentTemplate]", ngImport: i0 });
|
954
1025
|
}
|
955
|
-
|
956
|
-
ChipMenuItemContentTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: ChipMenuItemContentTemplateDirective, isStandalone: true, selector: "[kendoPivotChipMenuItemContentTemplate]", ngImport: i0 });
|
957
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChipMenuItemContentTemplateDirective, decorators: [{
|
1026
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChipMenuItemContentTemplateDirective, decorators: [{
|
958
1027
|
type: Directive,
|
959
1028
|
args: [{
|
960
1029
|
selector: '[kendoPivotChipMenuItemContentTemplate]',
|
@@ -970,24 +1039,49 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
970
1039
|
*
|
971
1040
|
*/
|
972
1041
|
class ChipMenuItemComponent {
|
973
|
-
|
974
|
-
|
975
|
-
|
976
|
-
|
977
|
-
|
978
|
-
|
979
|
-
|
980
|
-
|
981
|
-
|
982
|
-
|
983
|
-
|
984
|
-
|
985
|
-
|
986
|
-
|
987
|
-
|
1042
|
+
/**
|
1043
|
+
* Fires when the item is clicked.
|
1044
|
+
*/
|
1045
|
+
itemClick = new EventEmitter();
|
1046
|
+
/**
|
1047
|
+
* Fires when the content is expanded.
|
1048
|
+
*/
|
1049
|
+
expand = new EventEmitter();
|
1050
|
+
/**
|
1051
|
+
* Fires when the content is collapsed.
|
1052
|
+
*/
|
1053
|
+
collapse = new EventEmitter();
|
1054
|
+
/**
|
1055
|
+
* Specifies the name of the [font icon]({% slug icons %}#toc-list-of-font-icons)
|
1056
|
+
* that will be rendered for the item.
|
1057
|
+
*/
|
1058
|
+
icon;
|
1059
|
+
/**
|
1060
|
+
* Defines an SVGIcon to be rendered for the column menu items.
|
1061
|
+
* The input can take either an [existing Kendo SVG icon](slug:svgicon_list) or a custom one.
|
1062
|
+
*/
|
1063
|
+
svgIcon;
|
1064
|
+
/**
|
1065
|
+
* Specifies the item text.
|
1066
|
+
*/
|
1067
|
+
text;
|
1068
|
+
/**
|
1069
|
+
* Specifies if the item is selected.
|
1070
|
+
*/
|
1071
|
+
selected;
|
1072
|
+
/**
|
1073
|
+
* Specifies if the item is expanded.
|
1074
|
+
*/
|
1075
|
+
expanded;
|
1076
|
+
/**
|
1077
|
+
* Specified if the item is disabled
|
1078
|
+
*/
|
1079
|
+
disabled;
|
1080
|
+
contentTemplate;
|
988
1081
|
get iconClass() {
|
989
1082
|
return `k-i-${this.icon}`;
|
990
1083
|
}
|
1084
|
+
contentState = 'collapsed';
|
991
1085
|
ngOnChanges(changes) {
|
992
1086
|
if (changes.expanded) {
|
993
1087
|
this.updateContentState();
|
@@ -1009,9 +1103,8 @@ class ChipMenuItemComponent {
|
|
1009
1103
|
updateContentState() {
|
1010
1104
|
this.contentState = this.expanded ? 'expanded' : 'collapsed';
|
1011
1105
|
}
|
1012
|
-
}
|
1013
|
-
|
1014
|
-
ChipMenuItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ChipMenuItemComponent, isStandalone: true, selector: "kendo-pivot-chipmenu-item", inputs: { icon: "icon", svgIcon: "svgIcon", text: "text", selected: "selected", expanded: "expanded", disabled: "disabled" }, outputs: { itemClick: "itemClick", expand: "expand", collapse: "collapse" }, queries: [{ propertyName: "contentTemplate", first: true, predicate: ChipMenuItemContentTemplateDirective, descendants: true }], usesOnChanges: true, ngImport: i0, template: `
|
1106
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChipMenuItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
1107
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ChipMenuItemComponent, isStandalone: true, selector: "kendo-pivot-chipmenu-item", inputs: { icon: "icon", svgIcon: "svgIcon", text: "text", selected: "selected", expanded: "expanded", disabled: "disabled" }, outputs: { itemClick: "itemClick", expand: "expand", collapse: "collapse" }, queries: [{ propertyName: "contentTemplate", first: true, predicate: ChipMenuItemContentTemplateDirective, descendants: true }], usesOnChanges: true, ngImport: i0, template: `
|
1015
1108
|
<div
|
1016
1109
|
class="k-columnmenu-item"
|
1017
1110
|
(click)="onClick($event)"
|
@@ -1033,29 +1126,30 @@ ChipMenuItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0",
|
|
1033
1126
|
<ng-container [ngTemplateOutlet]="contentTemplate.templateRef"></ng-container>
|
1034
1127
|
<div>
|
1035
1128
|
`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], animations: [
|
1036
|
-
|
1037
|
-
|
1038
|
-
|
1039
|
-
|
1040
|
-
|
1041
|
-
|
1042
|
-
|
1043
|
-
|
1044
|
-
|
1045
|
-
|
1046
|
-
|
1047
|
-
|
1048
|
-
|
1049
|
-
|
1050
|
-
|
1051
|
-
|
1052
|
-
|
1053
|
-
|
1054
|
-
|
1129
|
+
trigger('state', [
|
1130
|
+
state('collapsed', style({ display: 'none' })),
|
1131
|
+
state('expanded', style({ display: 'block' })),
|
1132
|
+
transition('collapsed => expanded', [
|
1133
|
+
style({
|
1134
|
+
height: '0px',
|
1135
|
+
display: 'block'
|
1136
|
+
}),
|
1137
|
+
animate('100ms ease-in', style({
|
1138
|
+
height: '*'
|
1139
|
+
}))
|
1140
|
+
]),
|
1141
|
+
transition('expanded => collapsed', [
|
1142
|
+
style({
|
1143
|
+
height: '*'
|
1144
|
+
}),
|
1145
|
+
animate('100ms ease-in', style({
|
1146
|
+
height: '0px'
|
1147
|
+
}))
|
1148
|
+
])
|
1055
1149
|
])
|
1056
|
-
])
|
1057
|
-
|
1058
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
1150
|
+
] });
|
1151
|
+
}
|
1152
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChipMenuItemComponent, decorators: [{
|
1059
1153
|
type: Component,
|
1060
1154
|
args: [{
|
1061
1155
|
animations: [
|
@@ -1135,25 +1229,31 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
1135
1229
|
* Represents the component for setting field filters in the PivotGrid.
|
1136
1230
|
*/
|
1137
1231
|
class ChipMenuFilterComponent extends ChipMenuItemBase {
|
1232
|
+
localization;
|
1233
|
+
hostElement;
|
1234
|
+
/**
|
1235
|
+
* Fires when the content is expanded.
|
1236
|
+
*/
|
1237
|
+
expand = new EventEmitter();
|
1238
|
+
/**
|
1239
|
+
* Fires when the content is collapsed.
|
1240
|
+
*/
|
1241
|
+
collapse = new EventEmitter();
|
1242
|
+
/**
|
1243
|
+
* Holds current field information.
|
1244
|
+
*/
|
1245
|
+
chip;
|
1246
|
+
/**
|
1247
|
+
* Specifies if the content is expanded.
|
1248
|
+
*/
|
1249
|
+
expanded = false;
|
1250
|
+
isLast = false;
|
1251
|
+
actionsClass = 'k-columnmenu-actions';
|
1252
|
+
filterSVGIcon = filterIcon;
|
1138
1253
|
constructor(localization, hostElement) {
|
1139
1254
|
super();
|
1140
1255
|
this.localization = localization;
|
1141
1256
|
this.hostElement = hostElement;
|
1142
|
-
/**
|
1143
|
-
* Fires when the content is expanded.
|
1144
|
-
*/
|
1145
|
-
this.expand = new EventEmitter();
|
1146
|
-
/**
|
1147
|
-
* Fires when the content is collapsed.
|
1148
|
-
*/
|
1149
|
-
this.collapse = new EventEmitter();
|
1150
|
-
/**
|
1151
|
-
* Specifies if the content is expanded.
|
1152
|
-
*/
|
1153
|
-
this.expanded = false;
|
1154
|
-
this.isLast = false;
|
1155
|
-
this.actionsClass = 'k-columnmenu-actions';
|
1156
|
-
this.filterSVGIcon = filterIcon;
|
1157
1257
|
}
|
1158
1258
|
ngAfterViewInit() {
|
1159
1259
|
if (this.isLast) {
|
@@ -1182,9 +1282,8 @@ class ChipMenuFilterComponent extends ChipMenuItemBase {
|
|
1182
1282
|
messageFor(localizationToken) {
|
1183
1283
|
return this.localization.get(localizationToken);
|
1184
1284
|
}
|
1185
|
-
}
|
1186
|
-
|
1187
|
-
ChipMenuFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ChipMenuFilterComponent, isStandalone: true, selector: "kendo-pivot-chipmenu-filter", inputs: { chip: "chip", expanded: "expanded", isLast: "isLast" }, outputs: { expand: "expand", collapse: "collapse" }, usesInheritance: true, ngImport: i0, template: `
|
1285
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChipMenuFilterComponent, deps: [{ token: PivotLocalizationService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
1286
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ChipMenuFilterComponent, isStandalone: true, selector: "kendo-pivot-chipmenu-filter", inputs: { chip: "chip", expanded: "expanded", isLast: "isLast" }, outputs: { expand: "expand", collapse: "collapse" }, usesInheritance: true, ngImport: i0, template: `
|
1188
1287
|
<kendo-pivot-chipmenu-item
|
1189
1288
|
classs="k-widget k-expander"
|
1190
1289
|
[text]="messageFor('fieldMenuFilterItemLabel')"
|
@@ -1206,7 +1305,8 @@ ChipMenuFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0"
|
|
1206
1305
|
</ng-template>
|
1207
1306
|
</kendo-pivot-chipmenu-item>
|
1208
1307
|
`, isInline: true, dependencies: [{ kind: "component", type: ChipMenuItemComponent, selector: "kendo-pivot-chipmenu-item", inputs: ["icon", "svgIcon", "text", "selected", "expanded", "disabled"], outputs: ["itemClick", "expand", "collapse"] }, { kind: "directive", type: ChipMenuItemContentTemplateDirective, selector: "[kendoPivotChipMenuItemContentTemplate]" }, { kind: "component", type: FilterMenuContainerComponent, selector: "kendo-pivot-filter-menu-container", inputs: ["chip", "isLast", "isExpanded", "menuTabbingService", "actionsClass"], outputs: ["close"] }] });
|
1209
|
-
|
1308
|
+
}
|
1309
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChipMenuFilterComponent, decorators: [{
|
1210
1310
|
type: Component,
|
1211
1311
|
args: [{
|
1212
1312
|
selector: 'kendo-pivot-chipmenu-filter',
|
@@ -1253,21 +1353,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
1253
1353
|
* Represents a chip-menu item for reordering PivotGrid fields.
|
1254
1354
|
*/
|
1255
1355
|
class ChipMenuReorderComponent extends ChipMenuItemBase {
|
1256
|
-
|
1257
|
-
|
1258
|
-
|
1259
|
-
|
1260
|
-
|
1261
|
-
|
1262
|
-
|
1263
|
-
|
1264
|
-
|
1265
|
-
|
1266
|
-
|
1267
|
-
|
1268
|
-
this.rtl = false;
|
1269
|
-
this.subs = this.localization.localization.changes.subscribe(({ rtl }) => this.rtl = rtl);
|
1270
|
-
}
|
1356
|
+
localization;
|
1357
|
+
renderer;
|
1358
|
+
configuratorService;
|
1359
|
+
dataService;
|
1360
|
+
cdr;
|
1361
|
+
ngZone;
|
1362
|
+
chip;
|
1363
|
+
columnsIcon = columnsIcon;
|
1364
|
+
rowsIcon = rowsIcon;
|
1365
|
+
arrowLeftIcon = arrowLeftIcon;
|
1366
|
+
arrowRightIcon = arrowRightIcon;
|
1367
|
+
rtl = false;
|
1271
1368
|
get isColumnsField() {
|
1272
1369
|
return this.configuratorService.state.columnAxes.some(item => item === this.chip);
|
1273
1370
|
}
|
@@ -1289,6 +1386,17 @@ class ChipMenuReorderComponent extends ChipMenuItemBase {
|
|
1289
1386
|
this.isRowsField && state.rowAxes[state.rowAxes.length - 1] === this.chip ||
|
1290
1387
|
this.isMeasureField && state.measureAxes[state.measureAxes.length - 1] === this.chip;
|
1291
1388
|
}
|
1389
|
+
subs;
|
1390
|
+
constructor(localization, renderer, configuratorService, dataService, cdr, ngZone) {
|
1391
|
+
super();
|
1392
|
+
this.localization = localization;
|
1393
|
+
this.renderer = renderer;
|
1394
|
+
this.configuratorService = configuratorService;
|
1395
|
+
this.dataService = dataService;
|
1396
|
+
this.cdr = cdr;
|
1397
|
+
this.ngZone = ngZone;
|
1398
|
+
this.subs = this.localization.localization.changes.subscribe(({ rtl }) => this.rtl = rtl);
|
1399
|
+
}
|
1292
1400
|
ngOnDestroy() {
|
1293
1401
|
this.subs.unsubscribe();
|
1294
1402
|
}
|
@@ -1341,9 +1449,8 @@ class ChipMenuReorderComponent extends ChipMenuItemBase {
|
|
1341
1449
|
}
|
1342
1450
|
this.close();
|
1343
1451
|
}
|
1344
|
-
}
|
1345
|
-
|
1346
|
-
ChipMenuReorderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ChipMenuReorderComponent, isStandalone: true, selector: "kendo-pivot-chipmenu-reorder", inputs: { chip: "chip" }, usesInheritance: true, ngImport: i0, template: `
|
1452
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChipMenuReorderComponent, deps: [{ token: PivotLocalizationService }, { token: i0.Renderer2 }, { token: ConfiguratorService }, { token: PivotGridDataService }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
1453
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ChipMenuReorderComponent, isStandalone: true, selector: "kendo-pivot-chipmenu-reorder", inputs: { chip: "chip" }, usesInheritance: true, ngImport: i0, template: `
|
1347
1454
|
<kendo-pivot-chipmenu-item
|
1348
1455
|
*ngIf="!isMeasureField"
|
1349
1456
|
[disabled]="isColumnsField"
|
@@ -1375,7 +1482,8 @@ ChipMenuReorderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0
|
|
1375
1482
|
(itemClick)="move($event, 'next')">
|
1376
1483
|
</kendo-pivot-chipmenu-item>
|
1377
1484
|
`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ChipMenuItemComponent, selector: "kendo-pivot-chipmenu-item", inputs: ["icon", "svgIcon", "text", "selected", "expanded", "disabled"], outputs: ["itemClick", "expand", "collapse"] }] });
|
1378
|
-
|
1485
|
+
}
|
1486
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChipMenuReorderComponent, decorators: [{
|
1379
1487
|
type: Component,
|
1380
1488
|
args: [{
|
1381
1489
|
selector: 'kendo-pivot-chipmenu-reorder',
|
@@ -1425,13 +1533,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
1425
1533
|
* Allows the user to sort the PivotGrid.
|
1426
1534
|
*/
|
1427
1535
|
class ChipMenuSortComponent extends ChipMenuItemBase {
|
1536
|
+
localization;
|
1537
|
+
renderer;
|
1538
|
+
configuratorService;
|
1539
|
+
chip;
|
1540
|
+
sortAscSVGIcon = sortAscSmallIcon;
|
1541
|
+
sortDescSVGIcon = sortDescSmallIcon;
|
1428
1542
|
constructor(localization, renderer, configuratorService) {
|
1429
1543
|
super();
|
1430
1544
|
this.localization = localization;
|
1431
1545
|
this.renderer = renderer;
|
1432
1546
|
this.configuratorService = configuratorService;
|
1433
|
-
this.sortAscSVGIcon = sortAscSmallIcon;
|
1434
|
-
this.sortDescSVGIcon = sortDescSmallIcon;
|
1435
1547
|
}
|
1436
1548
|
get sortedAsc() {
|
1437
1549
|
const descriptor = this.descriptor;
|
@@ -1460,9 +1572,8 @@ class ChipMenuSortComponent extends ChipMenuItemBase {
|
|
1460
1572
|
get descriptor() {
|
1461
1573
|
return [].concat(this.configuratorService.state.sort || []).find(s => s.field === this.chip.name.toString());
|
1462
1574
|
}
|
1463
|
-
}
|
1464
|
-
|
1465
|
-
ChipMenuSortComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ChipMenuSortComponent, isStandalone: true, selector: "kendo-pivot-chipmenu-sort", inputs: { chip: "chip" }, usesInheritance: true, ngImport: i0, template: `
|
1575
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChipMenuSortComponent, deps: [{ token: PivotLocalizationService }, { token: i0.Renderer2 }, { token: ConfiguratorService }], target: i0.ɵɵFactoryTarget.Component });
|
1576
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ChipMenuSortComponent, isStandalone: true, selector: "kendo-pivot-chipmenu-sort", inputs: { chip: "chip" }, usesInheritance: true, ngImport: i0, template: `
|
1466
1577
|
<kendo-pivot-chipmenu-item
|
1467
1578
|
[text]="messageFor('fieldMenuSortAscendingItemLabel')"
|
1468
1579
|
icon="sort-asc-small"
|
@@ -1478,7 +1589,8 @@ ChipMenuSortComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0",
|
|
1478
1589
|
[selected]="sortedDesc">
|
1479
1590
|
</kendo-pivot-chipmenu-item>
|
1480
1591
|
`, isInline: true, dependencies: [{ kind: "component", type: ChipMenuItemComponent, selector: "kendo-pivot-chipmenu-item", inputs: ["icon", "svgIcon", "text", "selected", "expanded", "disabled"], outputs: ["itemClick", "expand", "collapse"] }] });
|
1481
|
-
|
1592
|
+
}
|
1593
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChipMenuSortComponent, decorators: [{
|
1482
1594
|
type: Component,
|
1483
1595
|
args: [{
|
1484
1596
|
selector: 'kendo-pivot-chipmenu-sort',
|
@@ -1519,6 +1631,10 @@ const contains = (node, predicate) => {
|
|
1519
1631
|
* Arguments for the `close` event of the chip-menu popup.
|
1520
1632
|
*/
|
1521
1633
|
class PopupCloseEvent extends PreventableEvent {
|
1634
|
+
/**
|
1635
|
+
* The original DOM event that causes the popup to close.
|
1636
|
+
*/
|
1637
|
+
originalEvent;
|
1522
1638
|
/**
|
1523
1639
|
* @hidden
|
1524
1640
|
*/
|
@@ -1533,18 +1649,25 @@ const DEFAULT_POPUP_CLASS = 'k-grid-filter-popup';
|
|
1533
1649
|
* The service that is used for the popups of the chip menus.
|
1534
1650
|
*/
|
1535
1651
|
class SinglePopupService {
|
1652
|
+
popupService;
|
1653
|
+
renderer;
|
1654
|
+
ngZone;
|
1655
|
+
localization;
|
1656
|
+
/**
|
1657
|
+
* Fires when the chip menus are about to close because the user clicked outside their popups.
|
1658
|
+
* Used to prevent the popup from closing.
|
1659
|
+
*/
|
1660
|
+
onClose = new Subject();
|
1661
|
+
removeClick;
|
1662
|
+
pointerEventsSub = new Subscription();
|
1663
|
+
popupRef;
|
1664
|
+
scrollSubscription = new Subscription();
|
1665
|
+
canClosePopup;
|
1536
1666
|
constructor(popupService, renderer, ngZone, localization) {
|
1537
1667
|
this.popupService = popupService;
|
1538
1668
|
this.renderer = renderer;
|
1539
1669
|
this.ngZone = ngZone;
|
1540
1670
|
this.localization = localization;
|
1541
|
-
/**
|
1542
|
-
* Fires when the chip menus are about to close because the user clicked outside their popups.
|
1543
|
-
* Used to prevent the popup from closing.
|
1544
|
-
*/
|
1545
|
-
this.onClose = new Subject();
|
1546
|
-
this.pointerEventsSub = new Subscription();
|
1547
|
-
this.scrollSubscription = new Subscription();
|
1548
1671
|
}
|
1549
1672
|
open(anchor, template, popupRef, popupClass = DEFAULT_POPUP_CLASS) {
|
1550
1673
|
const toggle = isPresent(popupRef) && this.popupRef === popupRef;
|
@@ -1611,10 +1734,10 @@ class SinglePopupService {
|
|
1611
1734
|
}));
|
1612
1735
|
});
|
1613
1736
|
}
|
1737
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SinglePopupService, deps: [{ token: i1$3.PopupService }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: PivotLocalizationService }], target: i0.ɵɵFactoryTarget.Injectable });
|
1738
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SinglePopupService });
|
1614
1739
|
}
|
1615
|
-
|
1616
|
-
SinglePopupService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SinglePopupService });
|
1617
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SinglePopupService, decorators: [{
|
1740
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SinglePopupService, decorators: [{
|
1618
1741
|
type: Injectable
|
1619
1742
|
}], ctorParameters: function () { return [{ type: i1$3.PopupService }, { type: i0.Renderer2 }, { type: i0.NgZone }, { type: PivotLocalizationService }]; } });
|
1620
1743
|
|
@@ -1626,57 +1749,59 @@ const POPUP_CLASS = 'k-column-menu';
|
|
1626
1749
|
* Represents the field chip menu component.
|
1627
1750
|
*/
|
1628
1751
|
class ChipMenuComponent {
|
1752
|
+
popupService;
|
1753
|
+
localization;
|
1754
|
+
service;
|
1755
|
+
renderer;
|
1756
|
+
/**
|
1757
|
+
* The Configurator field instance to control with the menu.
|
1758
|
+
*/
|
1759
|
+
chip;
|
1760
|
+
tabIndex = '-1';
|
1761
|
+
isMeasureField = false;
|
1762
|
+
anchor;
|
1763
|
+
template;
|
1764
|
+
menuItemSVGIcon = moreVerticalIcon;
|
1765
|
+
popupRef;
|
1766
|
+
closeSubscription;
|
1629
1767
|
constructor(popupService, localization, service, renderer) {
|
1630
1768
|
this.popupService = popupService;
|
1631
1769
|
this.localization = localization;
|
1632
1770
|
this.service = service;
|
1633
1771
|
this.renderer = renderer;
|
1634
|
-
this.tabIndex = '-1';
|
1635
|
-
this.isMeasureField = false;
|
1636
|
-
this.menuItemSVGIcon = moreVerticalIcon;
|
1637
1772
|
this.closeSubscription = service.closeMenu.subscribe(this.close.bind(this));
|
1638
1773
|
}
|
1639
1774
|
ngOnDestroy() {
|
1640
1775
|
this.close();
|
1641
1776
|
this.closeSubscription.unsubscribe();
|
1642
1777
|
}
|
1643
|
-
toggle(e
|
1644
|
-
if (e) {
|
1645
|
-
e.preventDefault();
|
1646
|
-
e.stopImmediatePropagation();
|
1778
|
+
toggle(e) {
|
1779
|
+
if (e?.originalEvent) {
|
1780
|
+
e.originalEvent.preventDefault();
|
1781
|
+
e.originalEvent.stopImmediatePropagation();
|
1647
1782
|
}
|
1648
|
-
const
|
1649
|
-
this.popupRef = this.popupService.open(
|
1783
|
+
const anchorElement = this.anchor.element.nativeElement;
|
1784
|
+
this.popupRef = this.popupService.open(anchorElement, this.template, this.popupRef, POPUP_CLASS);
|
1650
1785
|
this.popupRef && this.renderer.setAttribute(this.popupRef.popupElement, 'dir', this.localization.rtl ? 'rtl' : 'ltr');
|
1651
1786
|
if (!this.popupRef) {
|
1652
|
-
|
1787
|
+
anchorElement.focus();
|
1653
1788
|
}
|
1654
1789
|
}
|
1655
1790
|
close() {
|
1656
1791
|
this.popupService.destroy();
|
1657
1792
|
this.popupRef = null;
|
1658
|
-
this.anchor.nativeElement.closest('.k-chip').focus();
|
1793
|
+
this.anchor.element.nativeElement.closest('.k-chip').focus();
|
1659
1794
|
}
|
1660
1795
|
get chipMenuTitle() {
|
1661
1796
|
const localizationMsg = this.localization.get('chipMenuIconTitle') || '';
|
1662
1797
|
const chipName = this.chip.name.toString();
|
1663
1798
|
return replaceMessagePlaceholder(localizationMsg, 'fieldName', chipName);
|
1664
1799
|
}
|
1665
|
-
}
|
1666
|
-
|
1667
|
-
|
1668
|
-
|
1669
|
-
|
1670
|
-
], viewQueries: [{ propertyName: "anchor", first: true, predicate: ["anchor"], descendants: true, read: ElementRef, static: true }], ngImport: i0, template: `
|
1671
|
-
<kendo-icon-wrapper
|
1672
|
-
#anchor
|
1673
|
-
name="more-vertical"
|
1674
|
-
[svgIcon]="menuItemSVGIcon"
|
1675
|
-
(click)="toggle($event, template)"
|
1676
|
-
[tabindex]="tabIndex"
|
1677
|
-
[attr.title]="chipMenuTitle"
|
1678
|
-
>
|
1679
|
-
</kendo-icon-wrapper>
|
1800
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChipMenuComponent, deps: [{ token: SinglePopupService }, { token: PivotLocalizationService }, { token: ChipMenuService }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
|
1801
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ChipMenuComponent, isStandalone: true, selector: "kendo-pivot-chip-menu", inputs: { chip: "chip", tabIndex: "tabIndex", isMeasureField: "isMeasureField", anchor: "anchor" }, providers: [
|
1802
|
+
ChipMenuService,
|
1803
|
+
MenuTabbingService
|
1804
|
+
], viewQueries: [{ propertyName: "template", first: true, predicate: ["template"], descendants: true, static: true }], ngImport: i0, template: `
|
1680
1805
|
<ng-template #template>
|
1681
1806
|
<kendo-pivot-chipmenu-container
|
1682
1807
|
(keydown.escape)="close()"
|
@@ -1705,8 +1830,9 @@ ChipMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", vers
|
|
1705
1830
|
[service]="service"></kendo-pivot-chipmenu-reorder>
|
1706
1831
|
</kendo-pivot-chipmenu-container>
|
1707
1832
|
</ng-template>
|
1708
|
-
`, isInline: true, dependencies: [{ kind: "component", type:
|
1709
|
-
|
1833
|
+
`, isInline: true, dependencies: [{ kind: "component", type: ChipMenuContainerComponent, selector: "kendo-pivot-chipmenu-container" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ChipMenuSortComponent, selector: "kendo-pivot-chipmenu-sort", inputs: ["chip"] }, { kind: "directive", type: ChipMenuItemDirective, selector: "[kendoPivotChipMenuItem]", inputs: ["kendoPivotChipMenuItem"] }, { kind: "component", type: ChipMenuFilterComponent, selector: "kendo-pivot-chipmenu-filter", inputs: ["chip", "expanded", "isLast"], outputs: ["expand", "collapse"] }, { kind: "component", type: ChipMenuReorderComponent, selector: "kendo-pivot-chipmenu-reorder", inputs: ["chip"] }] });
|
1834
|
+
}
|
1835
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ChipMenuComponent, decorators: [{
|
1710
1836
|
type: Component,
|
1711
1837
|
args: [{
|
1712
1838
|
providers: [
|
@@ -1715,15 +1841,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
1715
1841
|
],
|
1716
1842
|
selector: 'kendo-pivot-chip-menu',
|
1717
1843
|
template: `
|
1718
|
-
<kendo-icon-wrapper
|
1719
|
-
#anchor
|
1720
|
-
name="more-vertical"
|
1721
|
-
[svgIcon]="menuItemSVGIcon"
|
1722
|
-
(click)="toggle($event, template)"
|
1723
|
-
[tabindex]="tabIndex"
|
1724
|
-
[attr.title]="chipMenuTitle"
|
1725
|
-
>
|
1726
|
-
</kendo-icon-wrapper>
|
1727
1844
|
<ng-template #template>
|
1728
1845
|
<kendo-pivot-chipmenu-container
|
1729
1846
|
(keydown.escape)="close()"
|
@@ -1763,8 +1880,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
1763
1880
|
}], isMeasureField: [{
|
1764
1881
|
type: Input
|
1765
1882
|
}], anchor: [{
|
1883
|
+
type: Input
|
1884
|
+
}], template: [{
|
1766
1885
|
type: ViewChild,
|
1767
|
-
args: ['
|
1886
|
+
args: ['template', { static: true }]
|
1768
1887
|
}] } });
|
1769
1888
|
|
1770
1889
|
/**
|
@@ -1784,6 +1903,7 @@ const append = (element, container) => {
|
|
1784
1903
|
* @hidden
|
1785
1904
|
*/
|
1786
1905
|
class DropCueService {
|
1906
|
+
dom;
|
1787
1907
|
create() {
|
1788
1908
|
this.dom = document.createElement('span');
|
1789
1909
|
const wrapper = document.createElement('div');
|
@@ -1827,10 +1947,10 @@ class DropCueService {
|
|
1827
1947
|
}
|
1828
1948
|
this.dom.style.display = '';
|
1829
1949
|
}
|
1950
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DropCueService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
1951
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DropCueService });
|
1830
1952
|
}
|
1831
|
-
|
1832
|
-
DropCueService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DropCueService });
|
1833
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DropCueService, decorators: [{
|
1953
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DropCueService, decorators: [{
|
1834
1954
|
type: Injectable
|
1835
1955
|
}] });
|
1836
1956
|
|
@@ -1838,22 +1958,29 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
1838
1958
|
* @hidden
|
1839
1959
|
*/
|
1840
1960
|
class DraggableChipDirective {
|
1841
|
-
|
1961
|
+
draggable;
|
1962
|
+
element;
|
1963
|
+
zone;
|
1964
|
+
service;
|
1965
|
+
cue;
|
1966
|
+
renderer;
|
1967
|
+
get pointerEvents() {
|
1968
|
+
return this.drag ? 'none' : undefined;
|
1969
|
+
}
|
1970
|
+
touchActions = 'none';
|
1971
|
+
item;
|
1972
|
+
initialX = {};
|
1973
|
+
initialY = {};
|
1974
|
+
drag;
|
1975
|
+
invalidTarget = false;
|
1976
|
+
subs = new Subscription();
|
1977
|
+
constructor(draggable, element, zone, service, cue, renderer) {
|
1842
1978
|
this.draggable = draggable;
|
1843
1979
|
this.element = element;
|
1844
1980
|
this.zone = zone;
|
1845
1981
|
this.service = service;
|
1846
1982
|
this.cue = cue;
|
1847
1983
|
this.renderer = renderer;
|
1848
|
-
this.cdr = cdr;
|
1849
|
-
this.touchActions = 'none';
|
1850
|
-
this.initialX = {};
|
1851
|
-
this.initialY = {};
|
1852
|
-
this.invalidTarget = false;
|
1853
|
-
this.subs = new Subscription();
|
1854
|
-
}
|
1855
|
-
get pointerEvents() {
|
1856
|
-
return this.drag ? 'none' : undefined;
|
1857
1984
|
}
|
1858
1985
|
ngOnInit() {
|
1859
1986
|
this.subs.add(this.draggable.kendoPress
|
@@ -1923,10 +2050,10 @@ class DraggableChipDirective {
|
|
1923
2050
|
ngOnDestroy() {
|
1924
2051
|
this.subs.unsubscribe();
|
1925
2052
|
}
|
2053
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DraggableChipDirective, deps: [{ token: i1$4.DraggableDirective, optional: true }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: ConfiguratorService }, { token: DropCueService }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
2054
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: DraggableChipDirective, isStandalone: true, selector: "[kendoChipDraggable]", inputs: { item: "item" }, host: { properties: { "style.pointerEvents": "this.pointerEvents", "style.touch-action": "this.touchActions" } }, ngImport: i0 });
|
1926
2055
|
}
|
1927
|
-
|
1928
|
-
DraggableChipDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: DraggableChipDirective, isStandalone: true, selector: "[kendoChipDraggable]", inputs: { item: "item" }, host: { properties: { "style.pointerEvents": "this.pointerEvents", "style.touch-action": "this.touchActions" } }, ngImport: i0 });
|
1929
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DraggableChipDirective, decorators: [{
|
2056
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DraggableChipDirective, decorators: [{
|
1930
2057
|
type: Directive,
|
1931
2058
|
args: [{
|
1932
2059
|
selector: '[kendoChipDraggable]',
|
@@ -1934,7 +2061,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
1934
2061
|
}]
|
1935
2062
|
}], ctorParameters: function () { return [{ type: i1$4.DraggableDirective, decorators: [{
|
1936
2063
|
type: Optional
|
1937
|
-
}] }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: ConfiguratorService }, { type: DropCueService }, { type: i0.Renderer2 }
|
2064
|
+
}] }, { type: i0.ElementRef }, { type: i0.NgZone }, { type: ConfiguratorService }, { type: DropCueService }, { type: i0.Renderer2 }]; }, propDecorators: { pointerEvents: [{
|
1938
2065
|
type: HostBinding,
|
1939
2066
|
args: ['style.pointerEvents']
|
1940
2067
|
}], touchActions: [{
|
@@ -1948,13 +2075,24 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
1948
2075
|
* @hidden
|
1949
2076
|
*/
|
1950
2077
|
class DropTargetDirective {
|
2078
|
+
element;
|
2079
|
+
configuratorService;
|
2080
|
+
cue;
|
2081
|
+
renderer;
|
2082
|
+
zone;
|
2083
|
+
item;
|
2084
|
+
axes;
|
2085
|
+
elementType;
|
2086
|
+
elementSectionType;
|
2087
|
+
targetElement;
|
2088
|
+
nextChipOffset;
|
2089
|
+
subs = new Subscription();
|
1951
2090
|
constructor(element, configuratorService, cue, renderer, zone) {
|
1952
2091
|
this.element = element;
|
1953
2092
|
this.configuratorService = configuratorService;
|
1954
2093
|
this.cue = cue;
|
1955
2094
|
this.renderer = renderer;
|
1956
2095
|
this.zone = zone;
|
1957
|
-
this.subs = new Subscription();
|
1958
2096
|
}
|
1959
2097
|
ngOnInit() {
|
1960
2098
|
const element = this.element.nativeElement;
|
@@ -2096,10 +2234,10 @@ class DropTargetDirective {
|
|
2096
2234
|
}
|
2097
2235
|
}
|
2098
2236
|
}
|
2237
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DropTargetDirective, deps: [{ token: i0.ElementRef }, { token: ConfiguratorService }, { token: DropCueService }, { token: i0.Renderer2 }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
|
2238
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: DropTargetDirective, isStandalone: true, selector: "[kendoDropTarget]", inputs: { item: "item", axes: "axes" }, ngImport: i0 });
|
2099
2239
|
}
|
2100
|
-
|
2101
|
-
DropTargetDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: DropTargetDirective, isStandalone: true, selector: "[kendoDropTarget]", inputs: { item: "item", axes: "axes" }, ngImport: i0 });
|
2102
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DropTargetDirective, decorators: [{
|
2240
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DropTargetDirective, decorators: [{
|
2103
2241
|
type: Directive,
|
2104
2242
|
args: [{
|
2105
2243
|
selector: '[kendoDropTarget]',
|
@@ -2116,41 +2254,44 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
2116
2254
|
* Represents the Kendo UI PivotGrid Configurator component for Angular.
|
2117
2255
|
*/
|
2118
2256
|
class PivotGridConfiguratorComponent {
|
2257
|
+
dataService;
|
2258
|
+
localization;
|
2259
|
+
configuratorService;
|
2260
|
+
cdr;
|
2261
|
+
zone;
|
2262
|
+
hostClass = true;
|
2263
|
+
hostAriaRole = 'dialog';
|
2264
|
+
get headerTextId() {
|
2265
|
+
return `k-pivotgrid-${this.dataService.pivotGridId}-configurator-header`;
|
2266
|
+
}
|
2267
|
+
orientation = 'vertical';
|
2268
|
+
sort = new Array();
|
2269
|
+
filter;
|
2270
|
+
navigation;
|
2271
|
+
close = new EventEmitter();
|
2272
|
+
treeView;
|
2273
|
+
columnsList;
|
2274
|
+
rowsList;
|
2275
|
+
originalState;
|
2276
|
+
state;
|
2277
|
+
fields;
|
2278
|
+
checked = [];
|
2279
|
+
get isHorizontal() {
|
2280
|
+
return this.orientation === 'horizontal';
|
2281
|
+
}
|
2282
|
+
subs = new Subscription();
|
2283
|
+
/**
|
2284
|
+
* A function which determines if a specific node has child nodes.
|
2285
|
+
*/
|
2286
|
+
hasChildren = (node) => !('hierarchyUniqueName' in node) && !('aggregator' in node);
|
2119
2287
|
constructor(dataService, localization, configuratorService, cdr, zone) {
|
2120
2288
|
this.dataService = dataService;
|
2121
2289
|
this.localization = localization;
|
2122
2290
|
this.configuratorService = configuratorService;
|
2123
2291
|
this.cdr = cdr;
|
2124
2292
|
this.zone = zone;
|
2125
|
-
this.hostClass = true;
|
2126
|
-
this.hostAriaRole = 'dialog';
|
2127
|
-
this.orientation = 'vertical';
|
2128
|
-
this.sort = new Array();
|
2129
|
-
this.close = new EventEmitter();
|
2130
|
-
this.checked = [];
|
2131
|
-
this.subs = new Subscription();
|
2132
|
-
/**
|
2133
|
-
* A function which determines if a specific node has child nodes.
|
2134
|
-
*/
|
2135
|
-
this.hasChildren = (node) => !('hierarchyUniqueName' in node) && !('aggregator' in node);
|
2136
|
-
/**
|
2137
|
-
* A function which provides the child nodes for a given parent node.
|
2138
|
-
*/
|
2139
|
-
this.children = (node) => {
|
2140
|
-
if (this.dataService.directive.type === 'olap') {
|
2141
|
-
const observable = from(this.dataService.directive.fetchChildren(node, this.fields));
|
2142
|
-
return observable.pipe(mergeMap(value => of(value)));
|
2143
|
-
}
|
2144
|
-
return of(node.children);
|
2145
|
-
};
|
2146
2293
|
this.configuratorService.configuratorInstance = this;
|
2147
2294
|
}
|
2148
|
-
get headerTextId() {
|
2149
|
-
return `k-pivotgrid-${this.dataService.pivotGridId}-configurator-header`;
|
2150
|
-
}
|
2151
|
-
get isHorizontal() {
|
2152
|
-
return this.orientation === 'horizontal';
|
2153
|
-
}
|
2154
2295
|
ngOnInit() {
|
2155
2296
|
this.subs.add(this.dataService.fields
|
2156
2297
|
.subscribe(res => {
|
@@ -2287,16 +2428,9 @@ class PivotGridConfiguratorComponent {
|
|
2287
2428
|
].some((h) => (h === f.uniqueName || h === f.defaultHierarchy)));
|
2288
2429
|
this.checked = checked;
|
2289
2430
|
}
|
2290
|
-
|
2291
|
-
|
2292
|
-
|
2293
|
-
isItemChecked(node) {
|
2294
|
-
const res = this.checked.some(s => node.defaultHierarchy
|
2295
|
-
? s.defaultHierarchy === node.defaultHierarchy
|
2296
|
-
: s.uniqueName === node.uniqueName)
|
2297
|
-
|| (node.children?.length && node.children?.every((c) => c.checked));
|
2298
|
-
return res || null;
|
2299
|
-
}
|
2431
|
+
checkItemBy = (context) => {
|
2432
|
+
return context.dataItem;
|
2433
|
+
};
|
2300
2434
|
/**
|
2301
2435
|
* Determines if a checkbox should be rendered.
|
2302
2436
|
*/
|
@@ -2306,6 +2440,16 @@ class PivotGridConfiguratorComponent {
|
|
2306
2440
|
|| (node.type === 2)
|
2307
2441
|
|| node.uniqueName === '[KPIs]');
|
2308
2442
|
}
|
2443
|
+
/**
|
2444
|
+
* A function which provides the child nodes for a given parent node.
|
2445
|
+
*/
|
2446
|
+
children = (node) => {
|
2447
|
+
if (this.dataService.directive.type === 'olap') {
|
2448
|
+
const observable = from(this.dataService.directive.fetchChildren(node, this.fields));
|
2449
|
+
return observable.pipe(mergeMap(value => of(value)));
|
2450
|
+
}
|
2451
|
+
return of(node.children);
|
2452
|
+
};
|
2309
2453
|
/**
|
2310
2454
|
* Check if the newly loaded child nodes have checked items.
|
2311
2455
|
* (Only for OLAP data-binding directive)
|
@@ -2317,21 +2461,14 @@ class PivotGridConfiguratorComponent {
|
|
2317
2461
|
const fields = event.children.map(item => item.dataItem);
|
2318
2462
|
this.setChecked(fields);
|
2319
2463
|
}
|
2320
|
-
handleCheckedChange(event
|
2321
|
-
|
2322
|
-
|
2323
|
-
}
|
2324
|
-
else {
|
2325
|
-
const itemIndex = this.checked.findIndex(checkedItem => checkedItem.uniqueName === item.uniqueName);
|
2326
|
-
this.checked.splice(itemIndex, 1);
|
2327
|
-
}
|
2464
|
+
handleCheckedChange(event) {
|
2465
|
+
const itemIndex = this.checked.findIndex(checkedItem => checkedItem.uniqueName === event.item.dataItem.uniqueName);
|
2466
|
+
this.checked.splice(itemIndex, 1);
|
2328
2467
|
const action = {
|
2329
2468
|
type: 'PIVOT_CONFIGURATOR_ACTION_TOGGLE_SELECTION',
|
2330
|
-
payload: item
|
2469
|
+
payload: event.item.dataItem
|
2331
2470
|
};
|
2332
2471
|
this.configuratorService.parseConfiguratorState(action);
|
2333
|
-
const closestItem = event.target.closest('.k-treeview-item');
|
2334
|
-
this.zone.runOutsideAngular(() => setTimeout(() => closestItem.focus()));
|
2335
2472
|
}
|
2336
2473
|
onTreeViewSelect(ev) {
|
2337
2474
|
const closestItem = ev.target.closest('.k-treeview-item');
|
@@ -2399,13 +2536,12 @@ class PivotGridConfiguratorComponent {
|
|
2399
2536
|
this.cdr.detectChanges();
|
2400
2537
|
this[`${targetCollectionName}sList`]?.chips.last.focus();
|
2401
2538
|
}
|
2402
|
-
}
|
2403
|
-
|
2404
|
-
|
2405
|
-
|
2406
|
-
|
2407
|
-
|
2408
|
-
], viewQueries: [{ propertyName: "treeView", first: true, predicate: TreeViewComponent, descendants: true }, { propertyName: "columnsList", first: true, predicate: ["columnsChiplist"], descendants: true }, { propertyName: "rowsList", first: true, predicate: ["rowsChiplist"], descendants: true }], usesOnChanges: true, ngImport: i0, template: `
|
2539
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PivotGridConfiguratorComponent, deps: [{ token: PivotGridDataService }, { token: i1$1.LocalizationService }, { token: ConfiguratorService }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
2540
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PivotGridConfiguratorComponent, isStandalone: true, selector: "kendo-pivotgrid-configurator", inputs: { orientation: "orientation", sort: "sort", filter: "filter", navigation: "navigation" }, outputs: { close: "close" }, host: { properties: { "class.k-pivotgrid-configurator": "this.hostClass", "attr.role": "this.hostAriaRole", "attr.aria-labelledby": "this.headerTextId" } }, providers: [
|
2541
|
+
ConfiguratorService,
|
2542
|
+
DropCueService,
|
2543
|
+
SinglePopupService
|
2544
|
+
], viewQueries: [{ propertyName: "treeView", first: true, predicate: TreeViewComponent, descendants: true }, { propertyName: "columnsList", first: true, predicate: ["columnsChiplist"], descendants: true }, { propertyName: "rowsList", first: true, predicate: ["rowsChiplist"], descendants: true }], usesOnChanges: true, ngImport: i0, template: `
|
2409
2545
|
<div
|
2410
2546
|
class="k-pivotgrid-configurator-panel k-pivotgrid-configurator-push"
|
2411
2547
|
[ngClass]="{
|
@@ -2420,7 +2556,7 @@ PivotGridConfiguratorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
2420
2556
|
</div>
|
2421
2557
|
|
2422
2558
|
<div class="k-pivotgrid-configurator-content">
|
2423
|
-
<div class="k-form" [class.k-form-horizontal]="isHorizontal" role="form">
|
2559
|
+
<div class="k-form k-form-md" [class.k-form-horizontal]="isHorizontal" [class.k-form-vertical]="!isHorizontal" role="form">
|
2424
2560
|
<div class="k-form-field-wrapper" [ngStyle]="isHorizontal ? {'padding-left': 0 } : null">
|
2425
2561
|
<div class="k-form-field" [style]="'padding-top: 1em; margin-top: 0;'" [ngStyle]="isHorizontal ? {'padding-top': 0, 'padding-left': '16px' } : null">
|
2426
2562
|
<span [id]="contentLabelId('fields')" class="k-label">{{messageFor('configuratorFieldsText')}}</span>
|
@@ -2435,21 +2571,14 @@ PivotGridConfiguratorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
2435
2571
|
textField="caption"
|
2436
2572
|
[children]="children"
|
2437
2573
|
[hasChildren]="hasChildren"
|
2574
|
+
kendoTreeViewCheckable
|
2575
|
+
[hasCheckbox]="isSelectable"
|
2576
|
+
[(checkedKeys)]="checked"
|
2577
|
+
[checkBy]="checkItemBy"
|
2578
|
+
(checkedChange)="handleCheckedChange($event)"
|
2438
2579
|
kendoTreeViewExpandable
|
2439
2580
|
(childrenLoaded)="handleChildrenLoaded($event)"
|
2440
2581
|
(keydown.space)="onTreeViewSelect($event)">
|
2441
|
-
<ng-template kendoTreeViewNodeTemplate let-dataItem>
|
2442
|
-
<input kendoCheckBox
|
2443
|
-
*ngIf="isSelectable(dataItem)"
|
2444
|
-
type="checkbox"
|
2445
|
-
kendoCheckBox
|
2446
|
-
tabindex="-1"
|
2447
|
-
role="none"
|
2448
|
-
aria-hidden="true"
|
2449
|
-
[checked]="isItemChecked(dataItem)"
|
2450
|
-
(change)="handleCheckedChange($event, dataItem)"/>
|
2451
|
-
{{ dataItem.caption }}
|
2452
|
-
</ng-template>
|
2453
2582
|
</kendo-treeview>
|
2454
2583
|
|
2455
2584
|
</div>
|
@@ -2467,8 +2596,10 @@ PivotGridConfiguratorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
2467
2596
|
|
2468
2597
|
<kendo-chiplist
|
2469
2598
|
*ngIf="state.columnAxes && state.columnAxes.length; else noColumnAxes"
|
2599
|
+
[navigable]="false"
|
2470
2600
|
#columnsChiplist
|
2471
2601
|
kendoDropTarget
|
2602
|
+
class="k-column-fields"
|
2472
2603
|
axes="columnAxes"
|
2473
2604
|
[style.width.%]="100"
|
2474
2605
|
[attr.aria-labelledby]="headerTextId + ' ' + contentLabelId('columns')"
|
@@ -2476,20 +2607,25 @@ PivotGridConfiguratorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
2476
2607
|
>
|
2477
2608
|
<ng-container *ngFor="let item of state.columnAxes">
|
2478
2609
|
<kendo-chip *ngIf="item.name.length === 1"
|
2610
|
+
#chip
|
2479
2611
|
kendoChipDraggable
|
2480
2612
|
kendoDraggable
|
2481
2613
|
kendoDropTarget
|
2482
2614
|
kendoChipKeyboardNavigation
|
2483
2615
|
[item]="item"
|
2616
|
+
[label]="getName(item.name)"
|
2484
2617
|
axes="columnAxes"
|
2485
|
-
rounded="full"
|
2486
2618
|
[removable]="true"
|
2619
|
+
[hasMenu]="true"
|
2620
|
+
(menuToggle)="chipMenuColumns.toggle($event)"
|
2487
2621
|
(remove)="onChipRemove($event, item, 'column')"
|
2488
2622
|
(reorder)="onReorder($event, 'column', item)"
|
2489
|
-
>
|
2623
|
+
>
|
2490
2624
|
<kendo-pivot-chip-menu
|
2491
|
-
|
2492
|
-
|
2625
|
+
#chipMenuColumns
|
2626
|
+
[chip]="item"
|
2627
|
+
[anchor]="chip"
|
2628
|
+
></kendo-pivot-chip-menu>
|
2493
2629
|
</kendo-chip>
|
2494
2630
|
</ng-container>
|
2495
2631
|
</kendo-chiplist>
|
@@ -2504,8 +2640,10 @@ PivotGridConfiguratorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
2504
2640
|
|
2505
2641
|
<kendo-chiplist
|
2506
2642
|
*ngIf="state.rowAxes && state.rowAxes.length; else noRowAxes"
|
2643
|
+
[navigable]="false"
|
2507
2644
|
#rowsChiplist
|
2508
2645
|
kendoDropTarget
|
2646
|
+
class="k-row-fields"
|
2509
2647
|
axes="rowAxes"
|
2510
2648
|
[attr.aria-labelledby]="headerTextId + ' ' + contentLabelId('rows')"
|
2511
2649
|
[ngStyle]="isHorizontal ? {'padding-top': 0, 'padding-left': '16px' } : null"
|
@@ -2513,22 +2651,25 @@ PivotGridConfiguratorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
2513
2651
|
>
|
2514
2652
|
<ng-container *ngFor="let item of state.rowAxes">
|
2515
2653
|
<kendo-chip *ngIf="item.name.length === 1"
|
2654
|
+
#chip
|
2516
2655
|
kendoChipDraggable
|
2517
2656
|
kendoDraggable
|
2518
2657
|
kendoDropTarget
|
2519
2658
|
kendoChipKeyboardNavigation
|
2520
2659
|
[item]="item"
|
2660
|
+
[label]="getName(item.name)"
|
2521
2661
|
axes="rowAxes"
|
2522
|
-
rounded="full"
|
2523
2662
|
[removable]="true"
|
2663
|
+
[hasMenu]="true"
|
2664
|
+
(menuToggle)="chipMenuRows.toggle($event)"
|
2524
2665
|
(remove)="onChipRemove($event, item, 'row')"
|
2525
2666
|
(reorder)="onReorder($event, 'row', item)"
|
2526
2667
|
>
|
2527
|
-
{{ getName(item.name) }}
|
2528
|
-
|
2529
2668
|
<kendo-pivot-chip-menu
|
2530
|
-
|
2531
|
-
|
2669
|
+
#chipMenuRows
|
2670
|
+
[chip]="item"
|
2671
|
+
[anchor]="chip"
|
2672
|
+
></kendo-pivot-chip-menu>
|
2532
2673
|
</kendo-chip>
|
2533
2674
|
</ng-container>
|
2534
2675
|
</kendo-chiplist>
|
@@ -2549,30 +2690,34 @@ PivotGridConfiguratorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
2549
2690
|
|
2550
2691
|
<kendo-chiplist
|
2551
2692
|
*ngIf="state.measureAxes && state.measureAxes.length; else noMeasureAxes"
|
2693
|
+
[navigable]="false"
|
2552
2694
|
kendoDropTarget
|
2695
|
+
class="k-filter-fields"
|
2553
2696
|
axes="measureAxes"
|
2554
2697
|
[attr.aria-labelledby]="headerTextId + ' ' + contentLabelId('values')"
|
2555
2698
|
[ngStyle]="isHorizontal ? {'padding-top': 0, 'padding-left': '16px' } : null"
|
2556
2699
|
[style.width.%]="100"
|
2557
2700
|
>
|
2558
2701
|
<kendo-chip *ngFor="let item of state.measureAxes"
|
2702
|
+
#chip
|
2559
2703
|
kendoChipDraggable
|
2560
2704
|
kendoDraggable
|
2561
2705
|
kendoDropTarget
|
2562
2706
|
kendoChipKeyboardNavigation
|
2563
2707
|
[item]="item"
|
2708
|
+
[label]="getName(item.name)"
|
2564
2709
|
axes="measureAxes"
|
2565
|
-
rounded="full"
|
2566
2710
|
[removable]="true"
|
2711
|
+
[hasMenu]="true"
|
2712
|
+
(menuToggle)="chipMenuValues.toggle($event)"
|
2567
2713
|
(remove)="onChipRemove($event, item, 'measure')"
|
2568
2714
|
(reorder)="onReorder($event, 'measure', item)"
|
2569
2715
|
>
|
2570
|
-
|
2571
|
-
|
2572
|
-
|
2573
|
-
|
2574
|
-
|
2575
|
-
</kendo-pivot-chip-menu>
|
2716
|
+
<kendo-pivot-chip-menu
|
2717
|
+
#chipMenuValues
|
2718
|
+
[chip]="item"
|
2719
|
+
[anchor]="chip"
|
2720
|
+
></kendo-pivot-chip-menu>
|
2576
2721
|
</kendo-chip>
|
2577
2722
|
</kendo-chiplist>
|
2578
2723
|
|
@@ -2583,13 +2728,14 @@ PivotGridConfiguratorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
2583
2728
|
|
2584
2729
|
</div>
|
2585
2730
|
</div>
|
2586
|
-
<div class="k-pivotgrid-configurator-actions k-actions k-
|
2731
|
+
<div class="k-pivotgrid-configurator-actions k-actions k-actions-end k-actions-horizontal">
|
2587
2732
|
<button kendoButton type="button" (click)="handleReset()">{{messageFor('configuratorCancelButtonText')}}</button>
|
2588
2733
|
<button kendoButton themeColor="primary" type="button" (click)="handleSubmit()">{{messageFor('configuratorApplyButtonText')}}</button>
|
2589
2734
|
</div>
|
2590
2735
|
</div>
|
2591
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: TreeViewComponent, selector: "kendo-treeview", inputs: ["filterInputPlaceholder", "expandDisabledNodes", "animate", "nodeTemplate", "loadMoreButtonTemplate", "trackBy", "nodes", "textField", "hasChildren", "isChecked", "isDisabled", "hasCheckbox", "isExpanded", "isSelected", "isVisible", "navigable", "children", "loadOnDemand", "filterable", "filter", "size", "disableParentNodesOnly"], outputs: ["childrenLoaded", "blur", "focus", "expand", "collapse", "nodeDragStart", "nodeDrag", "filterStateChange", "nodeDrop", "nodeDragEnd", "addItem", "removeItem", "checkedChange", "selectionChange", "filterChange", "nodeClick", "nodeDblClick"], exportAs: ["kendoTreeView"] }, { kind: "directive", type: ExpandDirective, selector: "[kendoTreeViewExpandable]", inputs: ["isExpanded", "expandBy", "expandOnFilter", "expandedKeys"], outputs: ["expandedKeysChange"] }, { kind: "directive", type:
|
2592
|
-
|
2736
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: TreeViewComponent, selector: "kendo-treeview", inputs: ["filterInputPlaceholder", "expandDisabledNodes", "animate", "nodeTemplate", "loadMoreButtonTemplate", "trackBy", "nodes", "textField", "hasChildren", "isChecked", "isDisabled", "hasCheckbox", "isExpanded", "isSelected", "isVisible", "navigable", "children", "loadOnDemand", "filterable", "filter", "size", "disableParentNodesOnly"], outputs: ["childrenLoaded", "blur", "focus", "expand", "collapse", "nodeDragStart", "nodeDrag", "filterStateChange", "nodeDrop", "nodeDragEnd", "addItem", "removeItem", "checkedChange", "selectionChange", "filterChange", "nodeClick", "nodeDblClick"], exportAs: ["kendoTreeView"] }, { kind: "directive", type: ExpandDirective, selector: "[kendoTreeViewExpandable]", inputs: ["isExpanded", "expandBy", "expandOnFilter", "expandedKeys"], outputs: ["expandedKeysChange"] }, { kind: "directive", type: CheckDirective, selector: "[kendoTreeViewCheckable]", inputs: ["isChecked", "checkBy", "checkedKeys", "kendoTreeViewCheckable"], outputs: ["checkedKeysChange"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: DropTargetDirective, selector: "[kendoDropTarget]", inputs: ["item", "axes"] }, { kind: "component", type: ChipListComponent, selector: "kendo-chiplist, kendo-chip-list", inputs: ["selection", "size", "role", "navigable"], outputs: ["selectedChange", "remove"] }, { kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: ChipComponent, selector: "kendo-chip", inputs: ["label", "icon", "svgIcon", "iconClass", "avatarSettings", "selected", "removable", "removeIcon", "removeSvgIcon", "hasMenu", "menuIcon", "menuSvgIcon", "disabled", "size", "rounded", "fillMode", "themeColor"], outputs: ["remove", "menuToggle", "contentClick"] }, { kind: "directive", type: DraggableChipDirective, selector: "[kendoChipDraggable]", inputs: ["item"] }, { kind: "directive", type: DraggableDirective, selector: "[kendoDraggable]", inputs: ["enableDrag"], outputs: ["kendoPress", "kendoDrag", "kendoRelease"] }, { kind: "directive", type: ChipKeyboardNavigationDirective, selector: "[kendoChipKeyboardNavigation]", outputs: ["reorder"] }, { kind: "component", type: ChipMenuComponent, selector: "kendo-pivot-chip-menu", inputs: ["chip", "tabIndex", "isMeasureField", "anchor"] }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton]", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }] });
|
2737
|
+
}
|
2738
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PivotGridConfiguratorComponent, decorators: [{
|
2593
2739
|
type: Component,
|
2594
2740
|
args: [{
|
2595
2741
|
selector: 'kendo-pivotgrid-configurator',
|
@@ -2613,7 +2759,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
2613
2759
|
</div>
|
2614
2760
|
|
2615
2761
|
<div class="k-pivotgrid-configurator-content">
|
2616
|
-
<div class="k-form" [class.k-form-horizontal]="isHorizontal" role="form">
|
2762
|
+
<div class="k-form k-form-md" [class.k-form-horizontal]="isHorizontal" [class.k-form-vertical]="!isHorizontal" role="form">
|
2617
2763
|
<div class="k-form-field-wrapper" [ngStyle]="isHorizontal ? {'padding-left': 0 } : null">
|
2618
2764
|
<div class="k-form-field" [style]="'padding-top: 1em; margin-top: 0;'" [ngStyle]="isHorizontal ? {'padding-top': 0, 'padding-left': '16px' } : null">
|
2619
2765
|
<span [id]="contentLabelId('fields')" class="k-label">{{messageFor('configuratorFieldsText')}}</span>
|
@@ -2628,21 +2774,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
2628
2774
|
textField="caption"
|
2629
2775
|
[children]="children"
|
2630
2776
|
[hasChildren]="hasChildren"
|
2777
|
+
kendoTreeViewCheckable
|
2778
|
+
[hasCheckbox]="isSelectable"
|
2779
|
+
[(checkedKeys)]="checked"
|
2780
|
+
[checkBy]="checkItemBy"
|
2781
|
+
(checkedChange)="handleCheckedChange($event)"
|
2631
2782
|
kendoTreeViewExpandable
|
2632
2783
|
(childrenLoaded)="handleChildrenLoaded($event)"
|
2633
2784
|
(keydown.space)="onTreeViewSelect($event)">
|
2634
|
-
<ng-template kendoTreeViewNodeTemplate let-dataItem>
|
2635
|
-
<input kendoCheckBox
|
2636
|
-
*ngIf="isSelectable(dataItem)"
|
2637
|
-
type="checkbox"
|
2638
|
-
kendoCheckBox
|
2639
|
-
tabindex="-1"
|
2640
|
-
role="none"
|
2641
|
-
aria-hidden="true"
|
2642
|
-
[checked]="isItemChecked(dataItem)"
|
2643
|
-
(change)="handleCheckedChange($event, dataItem)"/>
|
2644
|
-
{{ dataItem.caption }}
|
2645
|
-
</ng-template>
|
2646
2785
|
</kendo-treeview>
|
2647
2786
|
|
2648
2787
|
</div>
|
@@ -2660,8 +2799,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
2660
2799
|
|
2661
2800
|
<kendo-chiplist
|
2662
2801
|
*ngIf="state.columnAxes && state.columnAxes.length; else noColumnAxes"
|
2802
|
+
[navigable]="false"
|
2663
2803
|
#columnsChiplist
|
2664
2804
|
kendoDropTarget
|
2805
|
+
class="k-column-fields"
|
2665
2806
|
axes="columnAxes"
|
2666
2807
|
[style.width.%]="100"
|
2667
2808
|
[attr.aria-labelledby]="headerTextId + ' ' + contentLabelId('columns')"
|
@@ -2669,20 +2810,25 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
2669
2810
|
>
|
2670
2811
|
<ng-container *ngFor="let item of state.columnAxes">
|
2671
2812
|
<kendo-chip *ngIf="item.name.length === 1"
|
2813
|
+
#chip
|
2672
2814
|
kendoChipDraggable
|
2673
2815
|
kendoDraggable
|
2674
2816
|
kendoDropTarget
|
2675
2817
|
kendoChipKeyboardNavigation
|
2676
2818
|
[item]="item"
|
2819
|
+
[label]="getName(item.name)"
|
2677
2820
|
axes="columnAxes"
|
2678
|
-
rounded="full"
|
2679
2821
|
[removable]="true"
|
2822
|
+
[hasMenu]="true"
|
2823
|
+
(menuToggle)="chipMenuColumns.toggle($event)"
|
2680
2824
|
(remove)="onChipRemove($event, item, 'column')"
|
2681
2825
|
(reorder)="onReorder($event, 'column', item)"
|
2682
|
-
>
|
2826
|
+
>
|
2683
2827
|
<kendo-pivot-chip-menu
|
2684
|
-
|
2685
|
-
|
2828
|
+
#chipMenuColumns
|
2829
|
+
[chip]="item"
|
2830
|
+
[anchor]="chip"
|
2831
|
+
></kendo-pivot-chip-menu>
|
2686
2832
|
</kendo-chip>
|
2687
2833
|
</ng-container>
|
2688
2834
|
</kendo-chiplist>
|
@@ -2697,8 +2843,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
2697
2843
|
|
2698
2844
|
<kendo-chiplist
|
2699
2845
|
*ngIf="state.rowAxes && state.rowAxes.length; else noRowAxes"
|
2846
|
+
[navigable]="false"
|
2700
2847
|
#rowsChiplist
|
2701
2848
|
kendoDropTarget
|
2849
|
+
class="k-row-fields"
|
2702
2850
|
axes="rowAxes"
|
2703
2851
|
[attr.aria-labelledby]="headerTextId + ' ' + contentLabelId('rows')"
|
2704
2852
|
[ngStyle]="isHorizontal ? {'padding-top': 0, 'padding-left': '16px' } : null"
|
@@ -2706,22 +2854,25 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
2706
2854
|
>
|
2707
2855
|
<ng-container *ngFor="let item of state.rowAxes">
|
2708
2856
|
<kendo-chip *ngIf="item.name.length === 1"
|
2857
|
+
#chip
|
2709
2858
|
kendoChipDraggable
|
2710
2859
|
kendoDraggable
|
2711
2860
|
kendoDropTarget
|
2712
2861
|
kendoChipKeyboardNavigation
|
2713
2862
|
[item]="item"
|
2863
|
+
[label]="getName(item.name)"
|
2714
2864
|
axes="rowAxes"
|
2715
|
-
rounded="full"
|
2716
2865
|
[removable]="true"
|
2866
|
+
[hasMenu]="true"
|
2867
|
+
(menuToggle)="chipMenuRows.toggle($event)"
|
2717
2868
|
(remove)="onChipRemove($event, item, 'row')"
|
2718
2869
|
(reorder)="onReorder($event, 'row', item)"
|
2719
2870
|
>
|
2720
|
-
{{ getName(item.name) }}
|
2721
|
-
|
2722
2871
|
<kendo-pivot-chip-menu
|
2723
|
-
|
2724
|
-
|
2872
|
+
#chipMenuRows
|
2873
|
+
[chip]="item"
|
2874
|
+
[anchor]="chip"
|
2875
|
+
></kendo-pivot-chip-menu>
|
2725
2876
|
</kendo-chip>
|
2726
2877
|
</ng-container>
|
2727
2878
|
</kendo-chiplist>
|
@@ -2742,30 +2893,34 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
2742
2893
|
|
2743
2894
|
<kendo-chiplist
|
2744
2895
|
*ngIf="state.measureAxes && state.measureAxes.length; else noMeasureAxes"
|
2896
|
+
[navigable]="false"
|
2745
2897
|
kendoDropTarget
|
2898
|
+
class="k-filter-fields"
|
2746
2899
|
axes="measureAxes"
|
2747
2900
|
[attr.aria-labelledby]="headerTextId + ' ' + contentLabelId('values')"
|
2748
2901
|
[ngStyle]="isHorizontal ? {'padding-top': 0, 'padding-left': '16px' } : null"
|
2749
2902
|
[style.width.%]="100"
|
2750
2903
|
>
|
2751
2904
|
<kendo-chip *ngFor="let item of state.measureAxes"
|
2905
|
+
#chip
|
2752
2906
|
kendoChipDraggable
|
2753
2907
|
kendoDraggable
|
2754
2908
|
kendoDropTarget
|
2755
2909
|
kendoChipKeyboardNavigation
|
2756
2910
|
[item]="item"
|
2911
|
+
[label]="getName(item.name)"
|
2757
2912
|
axes="measureAxes"
|
2758
|
-
rounded="full"
|
2759
2913
|
[removable]="true"
|
2914
|
+
[hasMenu]="true"
|
2915
|
+
(menuToggle)="chipMenuValues.toggle($event)"
|
2760
2916
|
(remove)="onChipRemove($event, item, 'measure')"
|
2761
2917
|
(reorder)="onReorder($event, 'measure', item)"
|
2762
2918
|
>
|
2763
|
-
|
2764
|
-
|
2765
|
-
|
2766
|
-
|
2767
|
-
|
2768
|
-
</kendo-pivot-chip-menu>
|
2919
|
+
<kendo-pivot-chip-menu
|
2920
|
+
#chipMenuValues
|
2921
|
+
[chip]="item"
|
2922
|
+
[anchor]="chip"
|
2923
|
+
></kendo-pivot-chip-menu>
|
2769
2924
|
</kendo-chip>
|
2770
2925
|
</kendo-chiplist>
|
2771
2926
|
|
@@ -2776,7 +2931,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
2776
2931
|
|
2777
2932
|
</div>
|
2778
2933
|
</div>
|
2779
|
-
<div class="k-pivotgrid-configurator-actions k-actions k-
|
2934
|
+
<div class="k-pivotgrid-configurator-actions k-actions k-actions-end k-actions-horizontal">
|
2780
2935
|
<button kendoButton type="button" (click)="handleReset()">{{messageFor('configuratorCancelButtonText')}}</button>
|
2781
2936
|
<button kendoButton themeColor="primary" type="button" (click)="handleSubmit()">{{messageFor('configuratorApplyButtonText')}}</button>
|
2782
2937
|
</div>
|
@@ -2784,7 +2939,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
2784
2939
|
`,
|
2785
2940
|
standalone: true,
|
2786
2941
|
imports: [
|
2787
|
-
NgClass, NgStyle, TreeViewComponent, ExpandDirective, NodeTemplateDirective, NgIf,
|
2942
|
+
NgClass, NgStyle, TreeViewComponent, ExpandDirective, CheckDirective, NodeTemplateDirective, NgIf, CheckBoxComponent,
|
2788
2943
|
NgTemplateOutlet, DropTargetDirective, ChipListComponent, NgFor, ChipComponent, DraggableChipDirective,
|
2789
2944
|
DraggableDirective, ChipKeyboardNavigationDirective, ChipMenuComponent, ButtonComponent
|
2790
2945
|
]
|
@@ -2823,6 +2978,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
2823
2978
|
* The event data for the ExpandChangeEvent
|
2824
2979
|
*/
|
2825
2980
|
class ExpandChangeEvent extends PreventableEvent {
|
2981
|
+
/**
|
2982
|
+
* The current row axes configuration, resulting from the end user interaction.
|
2983
|
+
*/
|
2984
|
+
rowAxes;
|
2985
|
+
/**
|
2986
|
+
* The current column axes configuration, resulting from the end user interaction.
|
2987
|
+
*/
|
2988
|
+
columnAxes;
|
2989
|
+
/**
|
2990
|
+
* The measure axes configuration.
|
2991
|
+
*/
|
2992
|
+
measureAxes;
|
2826
2993
|
/**
|
2827
2994
|
* @hidden
|
2828
2995
|
*/
|
@@ -2836,6 +3003,26 @@ class ExpandChangeEvent extends PreventableEvent {
|
|
2836
3003
|
* The event data for the ConfigurationChangeEvent
|
2837
3004
|
*/
|
2838
3005
|
class ConfigurationChangeEvent extends PreventableEvent {
|
3006
|
+
/**
|
3007
|
+
* The current row axes configuration, resulting from the end user interaction.
|
3008
|
+
*/
|
3009
|
+
rowAxes;
|
3010
|
+
/**
|
3011
|
+
* The current column axes configuration, resulting from the end user interaction.
|
3012
|
+
*/
|
3013
|
+
columnAxes;
|
3014
|
+
/**
|
3015
|
+
* The measure axes configuration.
|
3016
|
+
*/
|
3017
|
+
measureAxes;
|
3018
|
+
/**
|
3019
|
+
* The sorting configuration.
|
3020
|
+
*/
|
3021
|
+
sort;
|
3022
|
+
/**
|
3023
|
+
* The filtering configuration.
|
3024
|
+
*/
|
3025
|
+
filter;
|
2839
3026
|
/**
|
2840
3027
|
* @hidden
|
2841
3028
|
*/
|
@@ -2850,41 +3037,49 @@ class ConfigurationChangeEvent extends PreventableEvent {
|
|
2850
3037
|
* A directive which binds the PivotGrid to an array of objects.
|
2851
3038
|
*/
|
2852
3039
|
class PivotBaseBindingDirective {
|
3040
|
+
dataService;
|
3041
|
+
zone;
|
3042
|
+
/**
|
3043
|
+
* Represents the column axes configuration of the PivotGrid.
|
3044
|
+
*/
|
3045
|
+
columnAxes = [];
|
3046
|
+
/**
|
3047
|
+
* Represents the row axes configuration of the PivotGrid.
|
3048
|
+
*/
|
3049
|
+
rowAxes = [];
|
3050
|
+
/**
|
3051
|
+
* Represents the measure axes configuration of the PivotGrid.
|
3052
|
+
*/
|
3053
|
+
measureAxes = [];
|
3054
|
+
/**
|
3055
|
+
* Represents the initial sorted state of the PivotGrid.
|
3056
|
+
*/
|
3057
|
+
sort = [];
|
3058
|
+
/**
|
3059
|
+
* Represents the initial filtered state of the PivotGrid.
|
3060
|
+
*/
|
3061
|
+
filter;
|
3062
|
+
/**
|
3063
|
+
* Fires each time a row or column header gets expanded or collapsed by the end user. The event is preventable.
|
3064
|
+
* If you prevent the event, the PivotGrid will not be rerendered with the new state, resulting from the end user interaction.
|
3065
|
+
*/
|
3066
|
+
expandChange = new EventEmitter();
|
3067
|
+
/**
|
3068
|
+
* Fires when the Configurator Apply button is pressed. The event is preventable.
|
3069
|
+
* If you prevent the event, the PivotGrid will not be rerendered with the new state, resulting from the configuration changes, applied through the configurator interface.
|
3070
|
+
*/
|
3071
|
+
configurationChange = new EventEmitter();
|
3072
|
+
/**
|
3073
|
+
* Fires each time when new data is loaded and transformed to show aggregated values.
|
3074
|
+
* The event fires upon initialization and on user interaction that changes the state of the PivotGrid.
|
3075
|
+
*/
|
3076
|
+
dataLoaded = new EventEmitter();
|
3077
|
+
dataState;
|
3078
|
+
configuratorFields;
|
3079
|
+
subs = new Subscription();
|
2853
3080
|
constructor(dataService, zone) {
|
2854
3081
|
this.dataService = dataService;
|
2855
3082
|
this.zone = zone;
|
2856
|
-
/**
|
2857
|
-
* Represents the column axes configuration of the PivotGrid.
|
2858
|
-
*/
|
2859
|
-
this.columnAxes = [];
|
2860
|
-
/**
|
2861
|
-
* Represents the row axes configuration of the PivotGrid.
|
2862
|
-
*/
|
2863
|
-
this.rowAxes = [];
|
2864
|
-
/**
|
2865
|
-
* Represents the measure axes configuration of the PivotGrid.
|
2866
|
-
*/
|
2867
|
-
this.measureAxes = [];
|
2868
|
-
/**
|
2869
|
-
* Represents the initial sorted state of the PivotGrid.
|
2870
|
-
*/
|
2871
|
-
this.sort = [];
|
2872
|
-
/**
|
2873
|
-
* Fires each time a row or column header gets expanded or collapsed by the end user. The event is preventable.
|
2874
|
-
* If you prevent the event, the PivotGrid will not be rerendered with the new state, resulting from the end user interaction.
|
2875
|
-
*/
|
2876
|
-
this.expandChange = new EventEmitter();
|
2877
|
-
/**
|
2878
|
-
* Fires when the Configurator Apply button is pressed. The event is preventable.
|
2879
|
-
* If you prevent the event, the PivotGrid will not be rerendered with the new state, resulting from the configuration changes, applied through the configurator interface.
|
2880
|
-
*/
|
2881
|
-
this.configurationChange = new EventEmitter();
|
2882
|
-
/**
|
2883
|
-
* Fires each time when new data is loaded and transformed to show aggregated values.
|
2884
|
-
* The event fires upon initialization and on user interaction that changes the state of the PivotGrid.
|
2885
|
-
*/
|
2886
|
-
this.dataLoaded = new EventEmitter();
|
2887
|
-
this.subs = new Subscription();
|
2888
3083
|
}
|
2889
3084
|
ngOnInit() {
|
2890
3085
|
this.dataService.state = new PivotGridState(this.columnAxes, this.rowAxes, this.measureAxes, this.sort, this.filter);
|
@@ -2957,10 +3152,10 @@ class PivotBaseBindingDirective {
|
|
2957
3152
|
this[axes] = newHeaders;
|
2958
3153
|
this.loadData(this.dataService.state);
|
2959
3154
|
}
|
3155
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PivotBaseBindingDirective, deps: [{ token: PivotGridDataService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
|
3156
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: PivotBaseBindingDirective, selector: "kendo-base-binding-directive", inputs: { columnAxes: "columnAxes", rowAxes: "rowAxes", measureAxes: "measureAxes", sort: "sort", filter: "filter" }, outputs: { expandChange: "expandChange", configurationChange: "configurationChange", dataLoaded: "dataLoaded" }, ngImport: i0 });
|
2960
3157
|
}
|
2961
|
-
|
2962
|
-
PivotBaseBindingDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: PivotBaseBindingDirective, selector: "kendo-base-binding-directive", inputs: { columnAxes: "columnAxes", rowAxes: "rowAxes", measureAxes: "measureAxes", sort: "sort", filter: "filter" }, outputs: { expandChange: "expandChange", configurationChange: "configurationChange", dataLoaded: "dataLoaded" }, ngImport: i0 });
|
2963
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PivotBaseBindingDirective, decorators: [{
|
3158
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PivotBaseBindingDirective, decorators: [{
|
2964
3159
|
type: Directive,
|
2965
3160
|
args: [{
|
2966
3161
|
selector: 'kendo-base-binding-directive'
|
@@ -2991,10 +3186,21 @@ const stringSeparator = '&';
|
|
2991
3186
|
* A directive which binds the PivotGrid to local data ([see example]({% slug directives_databinding_local_pivotgrid %})).
|
2992
3187
|
*/
|
2993
3188
|
class PivotLocalBindingDirective extends PivotBaseBindingDirective {
|
3189
|
+
/**
|
3190
|
+
* The array of data which will be used to populate the PivotGrid.
|
3191
|
+
*/
|
3192
|
+
data;
|
3193
|
+
/**
|
3194
|
+
* Represents the dimensions object of the PivotGrid.
|
3195
|
+
*/
|
3196
|
+
dimensions;
|
3197
|
+
/**
|
3198
|
+
* Represents the measures collection of the PivotGrid.
|
3199
|
+
*/
|
3200
|
+
measures;
|
3201
|
+
type = 'local';
|
2994
3202
|
constructor(dataService, zone) {
|
2995
3203
|
super(dataService, zone);
|
2996
|
-
this.type = 'local';
|
2997
|
-
this.createAxisSettings = (key) => ({ key, ...this.dimensions[key] });
|
2998
3204
|
}
|
2999
3205
|
ngOnChanges(changes) {
|
3000
3206
|
if (anyChanged(['data', 'dimensions', 'columnAxes', 'rowAxes', 'measureAxes', 'measures'], changes)) {
|
@@ -3031,13 +3237,14 @@ class PivotLocalBindingDirective extends PivotBaseBindingDirective {
|
|
3031
3237
|
});
|
3032
3238
|
this.updateDataServiceFields();
|
3033
3239
|
}
|
3240
|
+
createAxisSettings = (key) => ({ key, ...this.dimensions[key] });
|
3034
3241
|
getRootAxes(axes) {
|
3035
3242
|
return Array.from(rootFields(axes).keys()).join(stringSeparator);
|
3036
3243
|
}
|
3244
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PivotLocalBindingDirective, deps: [{ token: PivotGridDataService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
|
3245
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: PivotLocalBindingDirective, isStandalone: true, selector: "[kendoPivotLocalBinding]", inputs: { data: ["kendoPivotLocalBinding", "data"], dimensions: "dimensions", measures: "measures" }, exportAs: ["kendoPivotLocalBinding"], usesInheritance: true, usesOnChanges: true, ngImport: i0 });
|
3037
3246
|
}
|
3038
|
-
|
3039
|
-
PivotLocalBindingDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: PivotLocalBindingDirective, isStandalone: true, selector: "[kendoPivotLocalBinding]", inputs: { data: ["kendoPivotLocalBinding", "data"], dimensions: "dimensions", measures: "measures" }, exportAs: ["kendoPivotLocalBinding"], usesInheritance: true, usesOnChanges: true, ngImport: i0 });
|
3040
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PivotLocalBindingDirective, decorators: [{
|
3247
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PivotLocalBindingDirective, decorators: [{
|
3041
3248
|
type: Directive,
|
3042
3249
|
args: [{
|
3043
3250
|
selector: '[kendoPivotLocalBinding]',
|
@@ -3057,9 +3264,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
3057
3264
|
* A directive which binds the PivotGrid to data using an Online Analytical Processing (OLAP) service ([see example]({% slug directives_databinding_remote_pivotgrid %})).
|
3058
3265
|
*/
|
3059
3266
|
class PivotOLAPBindingDirective extends PivotBaseBindingDirective {
|
3267
|
+
/**
|
3268
|
+
* The OLAP service endpoint where the data is processed and retrieved to render the pivot table.
|
3269
|
+
*/
|
3270
|
+
url;
|
3271
|
+
/**
|
3272
|
+
* The cube name that is used to retrieve data for the pivot table rendering.
|
3273
|
+
*/
|
3274
|
+
cube;
|
3275
|
+
/**
|
3276
|
+
* The database name that is used to retrieve the data from the specified connection string.
|
3277
|
+
*/
|
3278
|
+
catalog;
|
3279
|
+
type = 'olap';
|
3060
3280
|
constructor(dataService, zone) {
|
3061
3281
|
super(dataService, zone);
|
3062
|
-
this.type = 'olap';
|
3063
3282
|
}
|
3064
3283
|
ngOnChanges(changes) {
|
3065
3284
|
if (anyChanged(['url', 'cube', 'catalog', 'columnAxes', 'rowAxes', 'measureAxes'], changes)) {
|
@@ -3200,10 +3419,10 @@ class PivotOLAPBindingDirective extends PivotBaseBindingDirective {
|
|
3200
3419
|
};
|
3201
3420
|
return fetchDiscover({ url: this.url }, options);
|
3202
3421
|
}
|
3422
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PivotOLAPBindingDirective, deps: [{ token: PivotGridDataService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
|
3423
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: PivotOLAPBindingDirective, isStandalone: true, selector: "[kendoPivotOLAPBinding]", inputs: { url: "url", cube: "cube", catalog: "catalog" }, exportAs: ["kendoPivotOLAPBinding"], usesInheritance: true, usesOnChanges: true, ngImport: i0 });
|
3203
3424
|
}
|
3204
|
-
|
3205
|
-
PivotOLAPBindingDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: PivotOLAPBindingDirective, isStandalone: true, selector: "[kendoPivotOLAPBinding]", inputs: { url: "url", cube: "cube", catalog: "catalog" }, exportAs: ["kendoPivotOLAPBinding"], usesInheritance: true, usesOnChanges: true, ngImport: i0 });
|
3206
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PivotOLAPBindingDirective, decorators: [{
|
3425
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PivotOLAPBindingDirective, decorators: [{
|
3207
3426
|
type: Directive,
|
3208
3427
|
args: [{
|
3209
3428
|
selector: '[kendoPivotOLAPBinding]',
|
@@ -3222,10 +3441,207 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
3222
3441
|
* @hidden
|
3223
3442
|
*/
|
3224
3443
|
class PivotGridMessages extends ComponentMessages {
|
3444
|
+
/**
|
3445
|
+
* The text content of the filter item in the column and row fields menu.
|
3446
|
+
*/
|
3447
|
+
fieldMenuFilterItemLabel;
|
3448
|
+
/**
|
3449
|
+
* The text content of the sort ascending item in the column and row fields menu.
|
3450
|
+
*/
|
3451
|
+
fieldMenuSortAscendingItemLabel;
|
3452
|
+
/**
|
3453
|
+
* The text content of the sort descending item in the column and row fields menu.
|
3454
|
+
*/
|
3455
|
+
fieldMenuSortDescendingItemLabel;
|
3456
|
+
/**
|
3457
|
+
* The label of the filter input.
|
3458
|
+
*
|
3459
|
+
* The filter input label consists of a two-part message - the name(s) of the fields and a localizable string.
|
3460
|
+
* For fields named '[Geography][City]', the default label will be 'Geography City Filter'.
|
3461
|
+
*
|
3462
|
+
* To allow reordering the field name(s) and the localizable part, the filterInputLabel accepts a string with a
|
3463
|
+
* placeholder for the fields - e.g. 'filter for {fields}'. The '{fields}' placeholder will be replaced
|
3464
|
+
* internally with the current field(s) name(s), and the resulting label will be rendered as 'filter for Geography City'.
|
3465
|
+
*
|
3466
|
+
* @example
|
3467
|
+
*
|
3468
|
+
* ```ts-no-run
|
3469
|
+
* <kendo-pivotgrid>
|
3470
|
+
* <kendo-pivotgrid-messages
|
3471
|
+
* filterInputLabel="filter for {fields}"
|
3472
|
+
* >
|
3473
|
+
* </kendo-pivotgrid-messages>
|
3474
|
+
* </kendo-pivotgrid>
|
3475
|
+
* ```
|
3476
|
+
*/
|
3477
|
+
filterInputLabel;
|
3478
|
+
/**
|
3479
|
+
* The label of the filter operators DropDownList.
|
3480
|
+
*
|
3481
|
+
* The label consists of a two-part message - the name(s) of the fields and a localizable string.
|
3482
|
+
* For fields named '[Geography][City]', the default label will be 'Geography City Filter Operators'.
|
3483
|
+
*
|
3484
|
+
* To allow reordering the field name(s) and the localizable part, the filterMenuOperatorsDropDownLabel accepts a string with a
|
3485
|
+
* placeholder for the fields - e.g. 'filter operators for {fields}'. The '{fields}' placeholder will be replaced
|
3486
|
+
* internally with the current field(s) name(s), and the resulting label will be rendered as 'filter operators for Geography City'.
|
3487
|
+
*
|
3488
|
+
* @example
|
3489
|
+
*
|
3490
|
+
* ```ts-no-run
|
3491
|
+
* <kendo-pivotgrid>
|
3492
|
+
* <kendo-pivotgrid-messages
|
3493
|
+
* filterMenuOperatorsDropDownLabel="filter operators for {fields}"
|
3494
|
+
* >
|
3495
|
+
* </kendo-pivotgrid-messages>
|
3496
|
+
* </kendo-pivotgrid>
|
3497
|
+
* ```
|
3498
|
+
*/
|
3499
|
+
filterOperatorsDropDownLabel;
|
3500
|
+
/**
|
3501
|
+
* The text of the `Equal` (**Is equal to**) filter operator.
|
3502
|
+
*/
|
3503
|
+
filterEqOperator;
|
3504
|
+
/**
|
3505
|
+
* The text of the `NotEqual` (**Is not equal to**) filter operator.
|
3506
|
+
*/
|
3507
|
+
filterNotEqOperator;
|
3508
|
+
/**
|
3509
|
+
* The text of the `IsNull` (**Is null**) filter operator.
|
3510
|
+
*/
|
3511
|
+
filterIsNullOperator;
|
3512
|
+
/**
|
3513
|
+
* The text of the `IsNotNull` (**Is not null**) filter operator.
|
3514
|
+
*/
|
3515
|
+
filterIsNotNullOperator;
|
3516
|
+
/**
|
3517
|
+
* The text of the `IsEmpty` (**Is empty**) filter operator.
|
3518
|
+
*/
|
3519
|
+
filterIsEmptyOperator;
|
3520
|
+
/**
|
3521
|
+
* The text of the `IsNotEmpty` (**Is not empty**) filter operator.
|
3522
|
+
*/
|
3523
|
+
filterIsNotEmptyOperator;
|
3524
|
+
/**
|
3525
|
+
* The text of the `StartsWith` (**Starts with**) filter operator.
|
3526
|
+
*/
|
3527
|
+
filterStartsWithOperator;
|
3528
|
+
/**
|
3529
|
+
* The text of the `Contains` (**Contains**) filter operator.
|
3530
|
+
*/
|
3531
|
+
filterContainsOperator;
|
3532
|
+
/**
|
3533
|
+
* The text of the `DoesNotContain` (**Does not contain**) filter operator.
|
3534
|
+
*/
|
3535
|
+
filterNotContainsOperator;
|
3536
|
+
/**
|
3537
|
+
* The text of the `EndsWith` (**Ends with**) string filter operator.
|
3538
|
+
*/
|
3539
|
+
filterEndsWithOperator;
|
3540
|
+
/**
|
3541
|
+
* The text of the **Filter** button.
|
3542
|
+
*/
|
3543
|
+
filterFilterButton;
|
3544
|
+
/**
|
3545
|
+
* The text of the **Clear filter** button.
|
3546
|
+
*/
|
3547
|
+
filterClearButton;
|
3548
|
+
/**
|
3549
|
+
* The loading text.
|
3550
|
+
*
|
3551
|
+
* > The `loading` property is part of the accessibility support of the PivotGrid.
|
3552
|
+
* Its value is detectable by screen readers and is not otherwise visible.
|
3553
|
+
*/
|
3554
|
+
loading;
|
3555
|
+
/**
|
3556
|
+
* The value of the aria-label attribute placed on the PivotGrid focusable empty cell element.
|
3557
|
+
*/
|
3558
|
+
emptyCellLabel;
|
3559
|
+
/**
|
3560
|
+
* The text content of the button that opens and closes the PivotGrid configurator.
|
3561
|
+
*/
|
3562
|
+
configuratorButtonText;
|
3563
|
+
/**
|
3564
|
+
* The text content of the PivotGrid configurator title element.
|
3565
|
+
*/
|
3566
|
+
configuratorHeaderText;
|
3567
|
+
/**
|
3568
|
+
* The text content of the PivotGrid configurator fields section title element.
|
3569
|
+
*/
|
3570
|
+
configuratorFieldsText;
|
3571
|
+
/**
|
3572
|
+
* The text content of the PivotGrid configurator columns section title element.
|
3573
|
+
*/
|
3574
|
+
configuratorColumnsText;
|
3575
|
+
/**
|
3576
|
+
* The text content of the PivotGrid configurator rows section title element.
|
3577
|
+
*/
|
3578
|
+
configuratorRowsText;
|
3579
|
+
/**
|
3580
|
+
* The text content of the PivotGrid configurator values section title element.
|
3581
|
+
*/
|
3582
|
+
configuratorValuesText;
|
3583
|
+
/**
|
3584
|
+
* The text content of the PivotGrid configurator Cancel button.
|
3585
|
+
*/
|
3586
|
+
configuratorCancelButtonText;
|
3587
|
+
/**
|
3588
|
+
* The text content of the PivotGrid configurator Apply button.
|
3589
|
+
*/
|
3590
|
+
configuratorApplyButtonText;
|
3591
|
+
/**
|
3592
|
+
* The text content of the PivotGrid configurator empty rows container.
|
3593
|
+
*/
|
3594
|
+
configuratorEmptyRowsText;
|
3595
|
+
/**
|
3596
|
+
* The text content of the PivotGrid configurator empty columns container.
|
3597
|
+
*/
|
3598
|
+
configuratorEmptyColumnsText;
|
3599
|
+
/**
|
3600
|
+
* The text content of the PivotGrid configurator empty measures container.
|
3601
|
+
*/
|
3602
|
+
configuratorEmptyMeasuresText;
|
3603
|
+
/**
|
3604
|
+
* The text content of the Move to Columns item in the column and row fields menu.
|
3605
|
+
*/
|
3606
|
+
fieldMenuMoveToColumnsItem;
|
3607
|
+
/**
|
3608
|
+
* The text content of the Move to Rows item in the column and row fields menu.
|
3609
|
+
*/
|
3610
|
+
fieldMenuMoveToRowsItem;
|
3611
|
+
/**
|
3612
|
+
* The text content of the Move as previous item in the column, row, and value fields menu.
|
3613
|
+
*/
|
3614
|
+
fieldMenuMovePreviousItem;
|
3615
|
+
/**
|
3616
|
+
* The text content of the Move as next item in the column, row, and value fields menu.
|
3617
|
+
*/
|
3618
|
+
fieldMenuMoveNextItem;
|
3619
|
+
/**
|
3620
|
+
* The title of the chip menu icon.
|
3621
|
+
*
|
3622
|
+
* The title consists of a two-part message - the name of the chip and a localizable string.
|
3623
|
+
* For a field named 'Product', the default title will be 'Product Field Menu'.
|
3624
|
+
*
|
3625
|
+
* To allow reordering the field name and the localizable part, the chipMenu accepts a string with a
|
3626
|
+
* placeholder for the chip name - e.g. 'chip for {fieldName}'. The '{fieldName}' placeholder will be replaced
|
3627
|
+
* internally with the current chip name, and the resulting title will be rendered as 'Product Field Menu'.
|
3628
|
+
*
|
3629
|
+
* @example
|
3630
|
+
*
|
3631
|
+
* ```ts-no-run
|
3632
|
+
* <kendo-pivotgrid>
|
3633
|
+
* <kendo-pivotgrid-messages
|
3634
|
+
* chipMenuIconTitle="'{fieldName} Field Menu'"
|
3635
|
+
* >
|
3636
|
+
* </kendo-pivotgrid-messages>
|
3637
|
+
* </kendo-pivotgrid>
|
3638
|
+
* ```
|
3639
|
+
*/
|
3640
|
+
chipMenuIconTitle;
|
3641
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PivotGridMessages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
3642
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: PivotGridMessages, inputs: { fieldMenuFilterItemLabel: "fieldMenuFilterItemLabel", fieldMenuSortAscendingItemLabel: "fieldMenuSortAscendingItemLabel", fieldMenuSortDescendingItemLabel: "fieldMenuSortDescendingItemLabel", filterInputLabel: "filterInputLabel", filterOperatorsDropDownLabel: "filterOperatorsDropDownLabel", filterEqOperator: "filterEqOperator", filterNotEqOperator: "filterNotEqOperator", filterIsNullOperator: "filterIsNullOperator", filterIsNotNullOperator: "filterIsNotNullOperator", filterIsEmptyOperator: "filterIsEmptyOperator", filterIsNotEmptyOperator: "filterIsNotEmptyOperator", filterStartsWithOperator: "filterStartsWithOperator", filterContainsOperator: "filterContainsOperator", filterNotContainsOperator: "filterNotContainsOperator", filterEndsWithOperator: "filterEndsWithOperator", filterFilterButton: "filterFilterButton", filterClearButton: "filterClearButton", loading: "loading", emptyCellLabel: "emptyCellLabel", configuratorButtonText: "configuratorButtonText", configuratorHeaderText: "configuratorHeaderText", configuratorFieldsText: "configuratorFieldsText", configuratorColumnsText: "configuratorColumnsText", configuratorRowsText: "configuratorRowsText", configuratorValuesText: "configuratorValuesText", configuratorCancelButtonText: "configuratorCancelButtonText", configuratorApplyButtonText: "configuratorApplyButtonText", configuratorEmptyRowsText: "configuratorEmptyRowsText", configuratorEmptyColumnsText: "configuratorEmptyColumnsText", configuratorEmptyMeasuresText: "configuratorEmptyMeasuresText", fieldMenuMoveToColumnsItem: "fieldMenuMoveToColumnsItem", fieldMenuMoveToRowsItem: "fieldMenuMoveToRowsItem", fieldMenuMovePreviousItem: "fieldMenuMovePreviousItem", fieldMenuMoveNextItem: "fieldMenuMoveNextItem", chipMenuIconTitle: "chipMenuIconTitle" }, usesInheritance: true, ngImport: i0 });
|
3225
3643
|
}
|
3226
|
-
|
3227
|
-
PivotGridMessages.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: PivotGridMessages, inputs: { fieldMenuFilterItemLabel: "fieldMenuFilterItemLabel", fieldMenuSortAscendingItemLabel: "fieldMenuSortAscendingItemLabel", fieldMenuSortDescendingItemLabel: "fieldMenuSortDescendingItemLabel", filterInputLabel: "filterInputLabel", filterOperatorsDropDownLabel: "filterOperatorsDropDownLabel", filterEqOperator: "filterEqOperator", filterNotEqOperator: "filterNotEqOperator", filterIsNullOperator: "filterIsNullOperator", filterIsNotNullOperator: "filterIsNotNullOperator", filterIsEmptyOperator: "filterIsEmptyOperator", filterIsNotEmptyOperator: "filterIsNotEmptyOperator", filterStartsWithOperator: "filterStartsWithOperator", filterContainsOperator: "filterContainsOperator", filterNotContainsOperator: "filterNotContainsOperator", filterEndsWithOperator: "filterEndsWithOperator", filterFilterButton: "filterFilterButton", filterClearButton: "filterClearButton", loading: "loading", emptyCellLabel: "emptyCellLabel", configuratorButtonText: "configuratorButtonText", configuratorHeaderText: "configuratorHeaderText", configuratorFieldsText: "configuratorFieldsText", configuratorColumnsText: "configuratorColumnsText", configuratorRowsText: "configuratorRowsText", configuratorValuesText: "configuratorValuesText", configuratorCancelButtonText: "configuratorCancelButtonText", configuratorApplyButtonText: "configuratorApplyButtonText", configuratorEmptyRowsText: "configuratorEmptyRowsText", configuratorEmptyColumnsText: "configuratorEmptyColumnsText", configuratorEmptyMeasuresText: "configuratorEmptyMeasuresText", fieldMenuMoveToColumnsItem: "fieldMenuMoveToColumnsItem", fieldMenuMoveToRowsItem: "fieldMenuMoveToRowsItem", fieldMenuMovePreviousItem: "fieldMenuMovePreviousItem", fieldMenuMoveNextItem: "fieldMenuMoveNextItem", chipMenuIconTitle: "chipMenuIconTitle" }, usesInheritance: true, ngImport: i0 });
|
3228
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PivotGridMessages, decorators: [{
|
3644
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PivotGridMessages, decorators: [{
|
3229
3645
|
type: Directive
|
3230
3646
|
}], propDecorators: { fieldMenuFilterItemLabel: [{
|
3231
3647
|
type: Input
|
@@ -3304,6 +3720,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
3304
3720
|
* ([see example]({% slug globalization_pivotgrid %}#toc-custom-messages)).
|
3305
3721
|
*/
|
3306
3722
|
class CustomMessagesComponent extends PivotGridMessages {
|
3723
|
+
service;
|
3307
3724
|
constructor(service) {
|
3308
3725
|
super();
|
3309
3726
|
this.service = service;
|
@@ -3311,15 +3728,15 @@ class CustomMessagesComponent extends PivotGridMessages {
|
|
3311
3728
|
get override() {
|
3312
3729
|
return true;
|
3313
3730
|
}
|
3731
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CustomMessagesComponent, deps: [{ token: i1$1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
|
3732
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CustomMessagesComponent, isStandalone: true, selector: "kendo-pivotgrid-messages", providers: [
|
3733
|
+
{
|
3734
|
+
provide: PivotGridMessages,
|
3735
|
+
useExisting: forwardRef(() => CustomMessagesComponent)
|
3736
|
+
}
|
3737
|
+
], usesInheritance: true, ngImport: i0, template: ``, isInline: true });
|
3314
3738
|
}
|
3315
|
-
|
3316
|
-
CustomMessagesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: CustomMessagesComponent, isStandalone: true, selector: "kendo-pivotgrid-messages", providers: [
|
3317
|
-
{
|
3318
|
-
provide: PivotGridMessages,
|
3319
|
-
useExisting: forwardRef(() => CustomMessagesComponent)
|
3320
|
-
}
|
3321
|
-
], usesInheritance: true, ngImport: i0, template: ``, isInline: true });
|
3322
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomMessagesComponent, decorators: [{
|
3739
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CustomMessagesComponent, decorators: [{
|
3323
3740
|
type: Component,
|
3324
3741
|
args: [{
|
3325
3742
|
providers: [
|
@@ -3338,19 +3755,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
3338
3755
|
* @hidden
|
3339
3756
|
*/
|
3340
3757
|
class LocalizedMessagesDirective extends PivotGridMessages {
|
3758
|
+
service;
|
3341
3759
|
constructor(service) {
|
3342
3760
|
super();
|
3343
3761
|
this.service = service;
|
3344
3762
|
}
|
3763
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LocalizedMessagesDirective, deps: [{ token: i1$1.LocalizationService }], target: i0.ɵɵFactoryTarget.Directive });
|
3764
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: LocalizedMessagesDirective, isStandalone: true, selector: "[kendoPivotGridLocalizedMessages]", providers: [
|
3765
|
+
{
|
3766
|
+
provide: PivotGridMessages,
|
3767
|
+
useExisting: forwardRef(() => LocalizedMessagesDirective)
|
3768
|
+
}
|
3769
|
+
], usesInheritance: true, ngImport: i0 });
|
3345
3770
|
}
|
3346
|
-
|
3347
|
-
LocalizedMessagesDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: LocalizedMessagesDirective, isStandalone: true, selector: "[kendoPivotGridLocalizedMessages]", providers: [
|
3348
|
-
{
|
3349
|
-
provide: PivotGridMessages,
|
3350
|
-
useExisting: forwardRef(() => LocalizedMessagesDirective)
|
3351
|
-
}
|
3352
|
-
], usesInheritance: true, ngImport: i0 });
|
3353
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: LocalizedMessagesDirective, decorators: [{
|
3771
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: LocalizedMessagesDirective, decorators: [{
|
3354
3772
|
type: Directive,
|
3355
3773
|
args: [{
|
3356
3774
|
providers: [
|
@@ -3371,8 +3789,8 @@ const packageMetadata = {
|
|
3371
3789
|
name: '@progress/kendo-angular-pivotgrid',
|
3372
3790
|
productName: 'Kendo UI for Angular',
|
3373
3791
|
productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
|
3374
|
-
publishDate:
|
3375
|
-
version: '17.0.0-develop.
|
3792
|
+
publishDate: 1730818485,
|
3793
|
+
version: '17.0.0-develop.41',
|
3376
3794
|
licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning'
|
3377
3795
|
};
|
3378
3796
|
|
@@ -3399,13 +3817,14 @@ const packageMetadata = {
|
|
3399
3817
|
* ```
|
3400
3818
|
*/
|
3401
3819
|
class CellTemplateDirective {
|
3820
|
+
templateRef;
|
3402
3821
|
constructor(templateRef) {
|
3403
3822
|
this.templateRef = templateRef;
|
3404
3823
|
}
|
3824
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CellTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
3825
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: CellTemplateDirective, isStandalone: true, selector: "[kendoPivotGridCellTemplate]", ngImport: i0 });
|
3405
3826
|
}
|
3406
|
-
|
3407
|
-
CellTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: CellTemplateDirective, isStandalone: true, selector: "[kendoPivotGridCellTemplate]", ngImport: i0 });
|
3408
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CellTemplateDirective, decorators: [{
|
3827
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CellTemplateDirective, decorators: [{
|
3409
3828
|
type: Directive,
|
3410
3829
|
args: [{
|
3411
3830
|
selector: '[kendoPivotGridCellTemplate]',
|
@@ -3435,13 +3854,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
3435
3854
|
* ```
|
3436
3855
|
*/
|
3437
3856
|
class ValueCellTemplateDirective {
|
3857
|
+
templateRef;
|
3438
3858
|
constructor(templateRef) {
|
3439
3859
|
this.templateRef = templateRef;
|
3440
3860
|
}
|
3861
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ValueCellTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
3862
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: ValueCellTemplateDirective, isStandalone: true, selector: "[kendoPivotGridValueCellTemplate]", ngImport: i0 });
|
3441
3863
|
}
|
3442
|
-
|
3443
|
-
ValueCellTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: ValueCellTemplateDirective, isStandalone: true, selector: "[kendoPivotGridValueCellTemplate]", ngImport: i0 });
|
3444
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ValueCellTemplateDirective, decorators: [{
|
3864
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ValueCellTemplateDirective, decorators: [{
|
3445
3865
|
type: Directive,
|
3446
3866
|
args: [{
|
3447
3867
|
selector: '[kendoPivotGridValueCellTemplate]',
|
@@ -3472,13 +3892,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
3472
3892
|
* ```
|
3473
3893
|
*/
|
3474
3894
|
class RowHeaderCellTemplateDirective {
|
3895
|
+
templateRef;
|
3475
3896
|
constructor(templateRef) {
|
3476
3897
|
this.templateRef = templateRef;
|
3477
3898
|
}
|
3899
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RowHeaderCellTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
3900
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: RowHeaderCellTemplateDirective, isStandalone: true, selector: "[kendoPivotGridRowHeaderCellTemplate]", ngImport: i0 });
|
3478
3901
|
}
|
3479
|
-
|
3480
|
-
RowHeaderCellTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: RowHeaderCellTemplateDirective, isStandalone: true, selector: "[kendoPivotGridRowHeaderCellTemplate]", ngImport: i0 });
|
3481
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RowHeaderCellTemplateDirective, decorators: [{
|
3902
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RowHeaderCellTemplateDirective, decorators: [{
|
3482
3903
|
type: Directive,
|
3483
3904
|
args: [{
|
3484
3905
|
selector: '[kendoPivotGridRowHeaderCellTemplate]',
|
@@ -3509,13 +3930,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
3509
3930
|
* ```
|
3510
3931
|
*/
|
3511
3932
|
class ColumnHeaderCellTemplateDirective {
|
3933
|
+
templateRef;
|
3512
3934
|
constructor(templateRef) {
|
3513
3935
|
this.templateRef = templateRef;
|
3514
3936
|
}
|
3937
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnHeaderCellTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
|
3938
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: ColumnHeaderCellTemplateDirective, isStandalone: true, selector: "[kendoPivotGridColumnHeaderCellTemplate]", ngImport: i0 });
|
3515
3939
|
}
|
3516
|
-
|
3517
|
-
ColumnHeaderCellTemplateDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.10", type: ColumnHeaderCellTemplateDirective, isStandalone: true, selector: "[kendoPivotGridColumnHeaderCellTemplate]", ngImport: i0 });
|
3518
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ColumnHeaderCellTemplateDirective, decorators: [{
|
3940
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnHeaderCellTemplateDirective, decorators: [{
|
3519
3941
|
type: Directive,
|
3520
3942
|
args: [{
|
3521
3943
|
selector: '[kendoPivotGridColumnHeaderCellTemplate]',
|
@@ -3527,53 +3949,28 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
3527
3949
|
* @hidden
|
3528
3950
|
*/
|
3529
3951
|
class ScrollableTable {
|
3952
|
+
element;
|
3953
|
+
handlers;
|
3954
|
+
options;
|
3955
|
+
startRow = 0;
|
3956
|
+
endRow;
|
3957
|
+
startCol = 0;
|
3958
|
+
endCol;
|
3959
|
+
renderedRows;
|
3960
|
+
renderedCols;
|
3961
|
+
total;
|
3962
|
+
totalCols;
|
3963
|
+
rtl;
|
3964
|
+
visibleRows;
|
3965
|
+
visibleCols;
|
3966
|
+
lastKnownScrollPosition = { top: 0, left: 0 };
|
3967
|
+
offsetFirst = 0;
|
3968
|
+
stretcher;
|
3969
|
+
rect;
|
3530
3970
|
constructor(element, handlers, options) {
|
3531
3971
|
this.element = element;
|
3532
3972
|
this.handlers = handlers;
|
3533
3973
|
this.options = options;
|
3534
|
-
this.startRow = 0;
|
3535
|
-
this.startCol = 0;
|
3536
|
-
this.lastKnownScrollPosition = { top: 0, left: 0 };
|
3537
|
-
this.offsetFirst = 0;
|
3538
|
-
this.scrollHandler = (e) => {
|
3539
|
-
const verticalDir = this.element.scrollTop - this.lastKnownScrollPosition.top;
|
3540
|
-
const horizontalDir = Math.abs(this.element.scrollLeft) - this.lastKnownScrollPosition.left;
|
3541
|
-
if (this.options.rowVirtualization) {
|
3542
|
-
if (verticalDir > 0) {
|
3543
|
-
if (this.element.scrollTop > (this.renderedRows * this.options.itemHeight + this.offsetFirst - this.rect.height)) {
|
3544
|
-
this.startRow = Math.floor(this.element.scrollTop / this.options.itemHeight);
|
3545
|
-
this.rowVirtualizationUpdate();
|
3546
|
-
}
|
3547
|
-
}
|
3548
|
-
else {
|
3549
|
-
if (this.element.scrollTop <= this.offsetFirst) {
|
3550
|
-
this.startRow = Math.max(0, Math.ceil(this.element.scrollTop / this.options.itemHeight) - Math.ceil(this.options.renderedRows / 3));
|
3551
|
-
this.rowVirtualizationUpdate();
|
3552
|
-
}
|
3553
|
-
}
|
3554
|
-
}
|
3555
|
-
if (this.options.columnVirtualization) {
|
3556
|
-
if (horizontalDir > 0) {
|
3557
|
-
if (Math.abs(this.element.scrollLeft) - (Math.max(this.startCol - 1, 0) * (this.options.colWidth || 200)) > (this.options.colWidth || 200)) {
|
3558
|
-
this.startCol = Math.min(Math.max(Math.floor(Math.abs(this.element.scrollLeft) / this.options.itemWidth) - 1, 0), this.totalCols - this.renderedCols);
|
3559
|
-
this.handlers.onScroll();
|
3560
|
-
}
|
3561
|
-
}
|
3562
|
-
else {
|
3563
|
-
if (Math.abs(this.element.scrollLeft) <= (this.startCol + 1) * (this.options.colWidth || 200)) {
|
3564
|
-
this.startCol = Math.min(Math.max(Math.floor(Math.abs(this.element.scrollLeft) / this.options.itemWidth) - 1, 0), this.totalCols - this.renderedCols);
|
3565
|
-
this.handlers.onScroll();
|
3566
|
-
}
|
3567
|
-
}
|
3568
|
-
}
|
3569
|
-
this.lastKnownScrollPosition = {
|
3570
|
-
top: this.element.scrollTop,
|
3571
|
-
left: Math.abs(this.element.scrollLeft)
|
3572
|
-
};
|
3573
|
-
};
|
3574
|
-
this.scrollEndHandler = () => {
|
3575
|
-
this.handlers.onScrollEnd();
|
3576
|
-
};
|
3577
3974
|
this.initialize();
|
3578
3975
|
}
|
3579
3976
|
onNewData(recalculateSize = false) {
|
@@ -3616,6 +4013,45 @@ class ScrollableTable {
|
|
3616
4013
|
this.element.addEventListener('scroll', this.scrollHandler);
|
3617
4014
|
this.element.addEventListener('scrollend', this.scrollEndHandler);
|
3618
4015
|
}
|
4016
|
+
scrollHandler = (e) => {
|
4017
|
+
const verticalDir = this.element.scrollTop - this.lastKnownScrollPosition.top;
|
4018
|
+
const horizontalDir = Math.abs(this.element.scrollLeft) - this.lastKnownScrollPosition.left;
|
4019
|
+
if (this.options.rowVirtualization) {
|
4020
|
+
if (verticalDir > 0) {
|
4021
|
+
if (this.element.scrollTop > (this.renderedRows * this.options.itemHeight + this.offsetFirst - this.rect.height)) {
|
4022
|
+
this.startRow = Math.floor(this.element.scrollTop / this.options.itemHeight);
|
4023
|
+
this.rowVirtualizationUpdate();
|
4024
|
+
}
|
4025
|
+
}
|
4026
|
+
else {
|
4027
|
+
if (this.element.scrollTop <= this.offsetFirst) {
|
4028
|
+
this.startRow = Math.max(0, Math.ceil(this.element.scrollTop / this.options.itemHeight) - Math.ceil(this.options.renderedRows / 3));
|
4029
|
+
this.rowVirtualizationUpdate();
|
4030
|
+
}
|
4031
|
+
}
|
4032
|
+
}
|
4033
|
+
if (this.options.columnVirtualization) {
|
4034
|
+
if (horizontalDir > 0) {
|
4035
|
+
if (Math.abs(this.element.scrollLeft) - (Math.max(this.startCol - 1, 0) * (this.options.colWidth || 200)) > (this.options.colWidth || 200)) {
|
4036
|
+
this.startCol = Math.min(Math.max(Math.floor(Math.abs(this.element.scrollLeft) / this.options.itemWidth) - 1, 0), this.totalCols - this.renderedCols);
|
4037
|
+
this.handlers.onScroll();
|
4038
|
+
}
|
4039
|
+
}
|
4040
|
+
else {
|
4041
|
+
if (Math.abs(this.element.scrollLeft) <= (this.startCol + 1) * (this.options.colWidth || 200)) {
|
4042
|
+
this.startCol = Math.min(Math.max(Math.floor(Math.abs(this.element.scrollLeft) / this.options.itemWidth) - 1, 0), this.totalCols - this.renderedCols);
|
4043
|
+
this.handlers.onScroll();
|
4044
|
+
}
|
4045
|
+
}
|
4046
|
+
}
|
4047
|
+
this.lastKnownScrollPosition = {
|
4048
|
+
top: this.element.scrollTop,
|
4049
|
+
left: Math.abs(this.element.scrollLeft)
|
4050
|
+
};
|
4051
|
+
};
|
4052
|
+
scrollEndHandler = () => {
|
4053
|
+
this.handlers.onScrollEnd();
|
4054
|
+
};
|
3619
4055
|
recalculateSize() {
|
3620
4056
|
const totalHeight = this.total * this.options.itemHeight;
|
3621
4057
|
const totalWidth = this.totalCols * this.options.itemWidth;
|
@@ -3638,21 +4074,18 @@ class ScrollableTable {
|
|
3638
4074
|
* @hidden
|
3639
4075
|
*/
|
3640
4076
|
class PivotGridCellDirective {
|
3641
|
-
|
3642
|
-
|
3643
|
-
|
3644
|
-
|
3645
|
-
|
3646
|
-
|
3647
|
-
|
3648
|
-
|
3649
|
-
|
3650
|
-
|
3651
|
-
|
3652
|
-
|
3653
|
-
});
|
3654
|
-
};
|
3655
|
-
}
|
4077
|
+
hostEl;
|
4078
|
+
renderer;
|
4079
|
+
dataService;
|
4080
|
+
cellClass = true;
|
4081
|
+
kendoPivotGridCell;
|
4082
|
+
tableType;
|
4083
|
+
rowIndex;
|
4084
|
+
colIndex;
|
4085
|
+
customCellTemplate;
|
4086
|
+
valueCellTemplate;
|
4087
|
+
rowHeaderCellTemplate;
|
4088
|
+
columnHeaderCellTemplate;
|
3656
4089
|
get isNotProvidedCellTemplatePerType() {
|
3657
4090
|
return (this.tableType === 'values' && !this.valueCellTemplate)
|
3658
4091
|
|| (this.tableType === 'rowHeader' && !this.rowHeaderCellTemplate)
|
@@ -3661,14 +4094,22 @@ class PivotGridCellDirective {
|
|
3661
4094
|
get expanded() {
|
3662
4095
|
return (this.kendoPivotGridCell?.hasChildren && this.kendoPivotGridCell.children.length > 0) || false;
|
3663
4096
|
}
|
4097
|
+
chevronUpSVGIcon = chevronUpIcon;
|
4098
|
+
chevronDownSVGIcon = chevronDownIcon;
|
4099
|
+
constructor(hostEl, renderer, dataService) {
|
4100
|
+
this.hostEl = hostEl;
|
4101
|
+
this.renderer = renderer;
|
4102
|
+
this.dataService = dataService;
|
4103
|
+
}
|
3664
4104
|
ngOnInit() {
|
3665
4105
|
const nativeElement = this.hostEl.nativeElement;
|
3666
4106
|
this.renderer.setAttribute(nativeElement, 'rowspan', this.kendoPivotGridCell.rowSpan || 1);
|
3667
4107
|
this.renderer.setAttribute(nativeElement, 'colspan', this.kendoPivotGridCell.colSpan || 1);
|
3668
4108
|
const classesToAdd = {
|
3669
|
-
'k-pivotgrid-header-total': this.kendoPivotGridCell?.total
|
4109
|
+
'k-pivotgrid-header-total': this.kendoPivotGridCell?.total,
|
4110
|
+
'k-pivotgrid-total': this.tableType === 'values'
|
3670
4111
|
&& (this.dataService.rowHeaderLeaves[this.rowIndex].total ||
|
3671
|
-
this.dataService.columnHeaderLeaves[this.colIndex].total)
|
4112
|
+
this.dataService.columnHeaderLeaves[this.colIndex].total),
|
3672
4113
|
'k-pivotgrid-header-root': this.kendoPivotGridCell?.levelNum === 0,
|
3673
4114
|
'k-pivotgrid-expanded': this.kendoPivotGridCell?.hasChildren && this.kendoPivotGridCell.children.length,
|
3674
4115
|
'k-first': this.colIndex > 0
|
@@ -3679,9 +4120,15 @@ class PivotGridCellDirective {
|
|
3679
4120
|
}
|
3680
4121
|
}
|
3681
4122
|
}
|
3682
|
-
|
3683
|
-
|
3684
|
-
|
4123
|
+
handleClick = () => {
|
4124
|
+
this.dataService.expandedStateChange.emit({
|
4125
|
+
action: this.expanded ? 'collapse' : 'expand',
|
4126
|
+
cell: this.kendoPivotGridCell,
|
4127
|
+
tableType: this.tableType
|
4128
|
+
});
|
4129
|
+
};
|
4130
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PivotGridCellDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: PivotGridDataService }], target: i0.ɵɵFactoryTarget.Component });
|
4131
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PivotGridCellDirective, isStandalone: true, selector: "[kendoPivotGridCell]", inputs: { kendoPivotGridCell: "kendoPivotGridCell", tableType: "tableType", rowIndex: "rowIndex", colIndex: "colIndex", customCellTemplate: "customCellTemplate", valueCellTemplate: "valueCellTemplate", rowHeaderCellTemplate: "rowHeaderCellTemplate", columnHeaderCellTemplate: "columnHeaderCellTemplate" }, host: { properties: { "class.k-pivotgrid-cell": "this.cellClass" } }, ngImport: i0, template: `
|
3685
4132
|
<kendo-icon-wrapper
|
3686
4133
|
*ngIf="kendoPivotGridCell.hasChildren && !kendoPivotGridCell.total"
|
3687
4134
|
aria-hidden="true"
|
@@ -3738,11 +4185,12 @@ PivotGridCellDirective.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0",
|
|
3738
4185
|
}">
|
3739
4186
|
</ng-template>
|
3740
4187
|
<!--default cell content-->
|
3741
|
-
<span *ngIf="!customCellTemplate && isNotProvidedCellTemplatePerType">
|
4188
|
+
<span *ngIf="!customCellTemplate && isNotProvidedCellTemplatePerType" [ngClass]="{'k-pivotgrid-header-title': !kendoPivotGridCell.data, 'k-pivotgrid-content': kendoPivotGridCell.data}">
|
3742
4189
|
{{ kendoPivotGridCell.data ? kendoPivotGridCell.data.fmtValue : kendoPivotGridCell.caption }}
|
3743
4190
|
</span>
|
3744
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { kind: "directive", type: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }] });
|
3745
|
-
|
4191
|
+
`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { kind: "directive", type: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
4192
|
+
}
|
4193
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PivotGridCellDirective, decorators: [{
|
3746
4194
|
type: Component,
|
3747
4195
|
args: [{
|
3748
4196
|
// eslint-disable-next-line @angular-eslint/component-selector
|
@@ -3804,12 +4252,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
3804
4252
|
}">
|
3805
4253
|
</ng-template>
|
3806
4254
|
<!--default cell content-->
|
3807
|
-
<span *ngIf="!customCellTemplate && isNotProvidedCellTemplatePerType">
|
4255
|
+
<span *ngIf="!customCellTemplate && isNotProvidedCellTemplatePerType" [ngClass]="{'k-pivotgrid-header-title': !kendoPivotGridCell.data, 'k-pivotgrid-content': kendoPivotGridCell.data}">
|
3808
4256
|
{{ kendoPivotGridCell.data ? kendoPivotGridCell.data.fmtValue : kendoPivotGridCell.caption }}
|
3809
4257
|
</span>
|
3810
4258
|
`,
|
3811
4259
|
standalone: true,
|
3812
|
-
imports: [NgIf, IconWrapperComponent, EventsOutsideAngularDirective, TemplateContextDirective]
|
4260
|
+
imports: [NgIf, IconWrapperComponent, EventsOutsideAngularDirective, TemplateContextDirective, NgClass]
|
3813
4261
|
}]
|
3814
4262
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: PivotGridDataService }]; }, propDecorators: { cellClass: [{
|
3815
4263
|
type: HostBinding,
|
@@ -3836,13 +4284,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
3836
4284
|
* @hidden
|
3837
4285
|
*/
|
3838
4286
|
class PivotGridScrollService {
|
3839
|
-
|
3840
|
-
|
3841
|
-
}
|
4287
|
+
virtualScrolling = false;
|
4288
|
+
pivotGrid;
|
4289
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PivotGridScrollService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
4290
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PivotGridScrollService });
|
3842
4291
|
}
|
3843
|
-
|
3844
|
-
PivotGridScrollService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PivotGridScrollService });
|
3845
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PivotGridScrollService, decorators: [{
|
4292
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PivotGridScrollService, decorators: [{
|
3846
4293
|
type: Injectable
|
3847
4294
|
}] });
|
3848
4295
|
|
@@ -3850,61 +4297,48 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
3850
4297
|
* @hidden
|
3851
4298
|
*/
|
3852
4299
|
class PivotGridTableComponent {
|
4300
|
+
host;
|
4301
|
+
dataService;
|
4302
|
+
localization;
|
4303
|
+
zone;
|
4304
|
+
scrollService;
|
4305
|
+
headerItems;
|
4306
|
+
rows;
|
4307
|
+
renderedRows;
|
4308
|
+
renderedCols;
|
4309
|
+
totalRows;
|
4310
|
+
startRowIndex = 0;
|
4311
|
+
startColIndex = 0;
|
4312
|
+
rtl = false;
|
4313
|
+
tableType;
|
4314
|
+
colWidth;
|
4315
|
+
customCellTemplate;
|
4316
|
+
valueCellTemplate;
|
4317
|
+
rowHeaderCellTemplate;
|
4318
|
+
columnHeaderCellTemplate;
|
4319
|
+
scrollableSettings;
|
4320
|
+
get pivotGridId() {
|
4321
|
+
return `kendo-pivotgrid-${this.dataService.pivotGridId}-`;
|
4322
|
+
}
|
4323
|
+
get columnVirtualization() {
|
4324
|
+
return this.scrollableSettings?.type && this.scrollableSettings?.type !== 'row';
|
4325
|
+
}
|
4326
|
+
get rowVirtualization() {
|
4327
|
+
return this.scrollableSettings?.type && this.scrollableSettings?.type !== 'column';
|
4328
|
+
}
|
4329
|
+
subs = new Subscription();
|
4330
|
+
scrollable;
|
3853
4331
|
constructor(host, dataService, localization, zone, scrollService) {
|
3854
4332
|
this.host = host;
|
3855
4333
|
this.dataService = dataService;
|
3856
4334
|
this.localization = localization;
|
3857
4335
|
this.zone = zone;
|
3858
4336
|
this.scrollService = scrollService;
|
3859
|
-
this.startRowIndex = 0;
|
3860
|
-
this.startColIndex = 0;
|
3861
|
-
this.rtl = false;
|
3862
|
-
this.subs = new Subscription();
|
3863
|
-
this.colsUpdateCallback = (cols) => {
|
3864
|
-
this.renderedCols = Math.min(cols.length, this.scrollableSettings?.columns);
|
3865
|
-
this.renderedCols && this.scrollable && (this.scrollable.totalCols = cols.length);
|
3866
|
-
(this.scrollableSettings && this.scrollableSettings.type !== 'row') && this.scrollable?.onNewData(true);
|
3867
|
-
this.headerItems = cols;
|
3868
|
-
isDocumentAvailable() && !this.scrollable && this.tableType === 'values' && (this.columnVirtualization || this.rowVirtualization) && this.initScrollable();
|
3869
|
-
};
|
3870
|
-
this.initScrollable = () => {
|
3871
|
-
this.scrollable = new ScrollableTable(this.host.nativeElement, {
|
3872
|
-
onScroll: () => {
|
3873
|
-
this.startRowIndex = this.scrollable.startRow;
|
3874
|
-
this.startColIndex = this.scrollable.startCol;
|
3875
|
-
this.renderedRows = this.rows.slice(this.startRowIndex, this.startRowIndex + this.scrollableSettings.rows);
|
3876
|
-
this.scrollable.renderedRows = this.renderedRows.length;
|
3877
|
-
this.scrollable.renderedCols = this.renderedCols;
|
3878
|
-
},
|
3879
|
-
onScrollEnd: () => {
|
3880
|
-
matchAriaAttributes(this.host.nativeElement.closest('.k-pivotgrid'));
|
3881
|
-
}
|
3882
|
-
}, {
|
3883
|
-
itemHeight: this.scrollableSettings.rowHeight,
|
3884
|
-
itemWidth: this.colWidth || 200,
|
3885
|
-
total: this.totalRows,
|
3886
|
-
totalCols: this.headerItems.length,
|
3887
|
-
renderedRows: this.scrollableSettings.rows,
|
3888
|
-
renderedCols: this.scrollableSettings.columns,
|
3889
|
-
columnVirtualization: this.columnVirtualization,
|
3890
|
-
rowVirtualization: this.rowVirtualization,
|
3891
|
-
rtl: this.rtl
|
3892
|
-
});
|
3893
|
-
};
|
3894
4337
|
this.subs.add(this.localization.changes.subscribe(({ rtl }) => {
|
3895
4338
|
this.rtl = rtl;
|
3896
4339
|
this.scrollable && (this.scrollable.rtl = rtl);
|
3897
4340
|
}));
|
3898
4341
|
}
|
3899
|
-
get pivotGridId() {
|
3900
|
-
return `kendo-pivotgrid-${this.dataService.pivotGridId}-`;
|
3901
|
-
}
|
3902
|
-
get columnVirtualization() {
|
3903
|
-
return this.scrollableSettings?.type && this.scrollableSettings?.type !== 'row';
|
3904
|
-
}
|
3905
|
-
get rowVirtualization() {
|
3906
|
-
return this.scrollableSettings?.type && this.scrollableSettings?.type !== 'column';
|
3907
|
-
}
|
3908
4342
|
ngOnInit() {
|
3909
4343
|
this.subs.add(this.dataService[`${this.tableType}Rows`].subscribe(rows => {
|
3910
4344
|
this.rows = rows;
|
@@ -3926,6 +4360,37 @@ class PivotGridTableComponent {
|
|
3926
4360
|
this.subs.unsubscribe();
|
3927
4361
|
this.scrollable?.destroy();
|
3928
4362
|
}
|
4363
|
+
colsUpdateCallback = (cols) => {
|
4364
|
+
this.renderedCols = Math.min(cols.length, this.scrollableSettings?.columns);
|
4365
|
+
this.renderedCols && this.scrollable && (this.scrollable.totalCols = cols.length);
|
4366
|
+
(this.scrollableSettings && this.scrollableSettings.type !== 'row') && this.scrollable?.onNewData(true);
|
4367
|
+
this.headerItems = cols;
|
4368
|
+
isDocumentAvailable() && !this.scrollable && this.tableType === 'values' && (this.columnVirtualization || this.rowVirtualization) && this.initScrollable();
|
4369
|
+
};
|
4370
|
+
initScrollable = () => {
|
4371
|
+
this.scrollable = new ScrollableTable(this.host.nativeElement, {
|
4372
|
+
onScroll: () => {
|
4373
|
+
this.startRowIndex = this.scrollable.startRow;
|
4374
|
+
this.startColIndex = this.scrollable.startCol;
|
4375
|
+
this.renderedRows = this.rows.slice(this.startRowIndex, this.startRowIndex + this.scrollableSettings.rows);
|
4376
|
+
this.scrollable.renderedRows = this.renderedRows.length;
|
4377
|
+
this.scrollable.renderedCols = this.renderedCols;
|
4378
|
+
},
|
4379
|
+
onScrollEnd: () => {
|
4380
|
+
matchAriaAttributes(this.host.nativeElement.closest('.k-pivotgrid'));
|
4381
|
+
}
|
4382
|
+
}, {
|
4383
|
+
itemHeight: this.scrollableSettings.rowHeight,
|
4384
|
+
itemWidth: this.colWidth || 200,
|
4385
|
+
total: this.totalRows,
|
4386
|
+
totalCols: this.headerItems.length,
|
4387
|
+
renderedRows: this.scrollableSettings.rows,
|
4388
|
+
renderedCols: this.scrollableSettings.columns,
|
4389
|
+
columnVirtualization: this.columnVirtualization,
|
4390
|
+
rowVirtualization: this.rowVirtualization,
|
4391
|
+
rtl: this.rtl
|
4392
|
+
});
|
4393
|
+
};
|
3929
4394
|
initScrollableKeyboardNavigation() {
|
3930
4395
|
const pivotGrid = this.scrollService.pivotGrid;
|
3931
4396
|
this.host.nativeElement.addEventListener('keydown', (e) => {
|
@@ -4008,9 +4473,8 @@ class PivotGridTableComponent {
|
|
4008
4473
|
}
|
4009
4474
|
}, true);
|
4010
4475
|
}
|
4011
|
-
}
|
4012
|
-
|
4013
|
-
PivotGridTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: PivotGridTableComponent, isStandalone: true, selector: "kendo-pivotgrid-table", inputs: { tableType: "tableType", colWidth: "colWidth", customCellTemplate: "customCellTemplate", valueCellTemplate: "valueCellTemplate", rowHeaderCellTemplate: "rowHeaderCellTemplate", columnHeaderCellTemplate: "columnHeaderCellTemplate", scrollableSettings: "scrollableSettings" }, ngImport: i0, template: `
|
4476
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PivotGridTableComponent, deps: [{ token: i0.ElementRef }, { token: PivotGridDataService }, { token: i1$1.LocalizationService }, { token: i0.NgZone }, { token: PivotGridScrollService }], target: i0.ɵɵFactoryTarget.Component });
|
4477
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PivotGridTableComponent, isStandalone: true, selector: "kendo-pivotgrid-table", inputs: { tableType: "tableType", colWidth: "colWidth", customCellTemplate: "customCellTemplate", valueCellTemplate: "valueCellTemplate", rowHeaderCellTemplate: "rowHeaderCellTemplate", columnHeaderCellTemplate: "columnHeaderCellTemplate", scrollableSettings: "scrollableSettings" }, ngImport: i0, template: `
|
4014
4478
|
<table
|
4015
4479
|
class="k-pivotgrid-table"
|
4016
4480
|
role="presentation"
|
@@ -4059,7 +4523,8 @@ PivotGridTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0"
|
|
4059
4523
|
</tbody>
|
4060
4524
|
</table>
|
4061
4525
|
`, isInline: true, dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: PivotGridCellDirective, selector: "[kendoPivotGridCell]", inputs: ["kendoPivotGridCell", "tableType", "rowIndex", "colIndex", "customCellTemplate", "valueCellTemplate", "rowHeaderCellTemplate", "columnHeaderCellTemplate"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
|
4062
|
-
|
4526
|
+
}
|
4527
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PivotGridTableComponent, decorators: [{
|
4063
4528
|
type: Component,
|
4064
4529
|
args: [{
|
4065
4530
|
selector: 'kendo-pivotgrid-table',
|
@@ -4166,68 +4631,15 @@ const DEFAULT_CONFIGURATOR_SETTINGS = {
|
|
4166
4631
|
* Represents the Kendo UI PivotGrid component for Angular.
|
4167
4632
|
*/
|
4168
4633
|
class PivotGridComponent {
|
4169
|
-
|
4170
|
-
|
4171
|
-
|
4172
|
-
|
4173
|
-
|
4174
|
-
|
4175
|
-
|
4176
|
-
this.hostClass = true;
|
4177
|
-
/**
|
4178
|
-
* Specify the width of the column header and data cells. Value is treated as pixels [(see example)]({% slug appearance_pivotgrid %}#toc-column-headers-width).
|
4179
|
-
*
|
4180
|
-
* @default 200
|
4181
|
-
*/
|
4182
|
-
this.columnHeadersWidth = 200;
|
4183
|
-
/**
|
4184
|
-
* If set to true, the user can use dedicated shortcuts to interact with the PivotGrid. By default, navigation is disabled.
|
4185
|
-
*
|
4186
|
-
* @default false
|
4187
|
-
*/
|
4188
|
-
this.navigable = false;
|
4189
|
-
/**
|
4190
|
-
* @hidden
|
4191
|
-
*/
|
4192
|
-
this.gearSVGIcon = gearIcon;
|
4193
|
-
this.resizeObservers = [];
|
4194
|
-
this._loaderSettings = DEFAULT_LOADER_SETTINGS;
|
4195
|
-
this._virtualScrolling = normalizeVirtualSettings(false);
|
4196
|
-
this.subs = new Subscription();
|
4197
|
-
this.rtl = false;
|
4198
|
-
this.resizeContainer = (axis, element) => {
|
4199
|
-
const isRows = axis === 'Rows';
|
4200
|
-
const table = this.table.nativeElement;
|
4201
|
-
const size = isRows ? 'offsetHeight' : 'offsetWidth';
|
4202
|
-
table.style[`gridTemplate${axis}`] = '';
|
4203
|
-
table.style[`gridTemplate${axis}`] = `${element[size]}px 1fr`;
|
4204
|
-
};
|
4205
|
-
this.handleScroll = (event) => {
|
4206
|
-
if (event.target === this.valuesTable.nativeElement) {
|
4207
|
-
syncScroll(event.target, [
|
4208
|
-
this.rowHeadersTable.nativeElement,
|
4209
|
-
this.colHeadersTable.nativeElement
|
4210
|
-
]);
|
4211
|
-
}
|
4212
|
-
else if (event.target.closest('.k-pivotgrid-row-headers')) {
|
4213
|
-
event.preventDefault();
|
4214
|
-
syncWheel(event, [this.valuesTable.nativeElement, this.rowHeadersTable.nativeElement], 'scrollTop', 'Y');
|
4215
|
-
}
|
4216
|
-
else if (event.target.closest('.k-pivotgrid-column-headers')) {
|
4217
|
-
event.preventDefault();
|
4218
|
-
syncWheel(event, [this.valuesTable.nativeElement, this.colHeadersTable.nativeElement], 'scrollLeft', 'X');
|
4219
|
-
}
|
4220
|
-
};
|
4221
|
-
validatePackage(packageMetadata);
|
4222
|
-
this.subs.add(this.localization.changes.subscribe(({ rtl }) => {
|
4223
|
-
this.rtl = rtl;
|
4224
|
-
this.direction = this.rtl ? 'rtl' : 'ltr';
|
4225
|
-
}));
|
4226
|
-
dataService.wrapper = this.hostEl.nativeElement;
|
4227
|
-
this.scrollService.pivotGrid = this;
|
4228
|
-
}
|
4634
|
+
hostEl;
|
4635
|
+
zone;
|
4636
|
+
dataService;
|
4637
|
+
localization;
|
4638
|
+
renderer;
|
4639
|
+
scrollService;
|
4640
|
+
hostClass = true;
|
4229
4641
|
get rightPositionClass() {
|
4230
|
-
return this.configuratorSettings
|
4642
|
+
return !this.configuratorSettings || this.configuratorSettings.position === 'right';
|
4231
4643
|
}
|
4232
4644
|
get leftPositionClass() {
|
4233
4645
|
return this.configuratorSettings?.position === 'left';
|
@@ -4241,6 +4653,15 @@ class PivotGridComponent {
|
|
4241
4653
|
get dir() {
|
4242
4654
|
return this.direction;
|
4243
4655
|
}
|
4656
|
+
colHeadersTable;
|
4657
|
+
rowHeadersTable;
|
4658
|
+
valuesTable;
|
4659
|
+
table;
|
4660
|
+
configuratorWrapper;
|
4661
|
+
customCellTemplate;
|
4662
|
+
valueCellTemplate;
|
4663
|
+
rowHeaderCellTemplate;
|
4664
|
+
columnHeaderCellTemplate;
|
4244
4665
|
/**
|
4245
4666
|
* Specify the type, size and color of the PivotGrid's loader.
|
4246
4667
|
*
|
@@ -4261,6 +4682,10 @@ class PivotGridComponent {
|
|
4261
4682
|
get loadingText() {
|
4262
4683
|
return this.localization.get('loading');
|
4263
4684
|
}
|
4685
|
+
/**
|
4686
|
+
* Specifies whether the axes configurator should be displayed.
|
4687
|
+
*/
|
4688
|
+
configurator;
|
4264
4689
|
/**
|
4265
4690
|
* Sets the virtualization options of the component. By default the virtual scrolling functionality is disabled.
|
4266
4691
|
*
|
@@ -4276,12 +4701,54 @@ class PivotGridComponent {
|
|
4276
4701
|
get configuratorSettings() {
|
4277
4702
|
return this.configurator && Object.assign({}, DEFAULT_CONFIGURATOR_SETTINGS, this.configurator);
|
4278
4703
|
}
|
4704
|
+
/**
|
4705
|
+
* Specify the width of the column header and data cells. Value is treated as pixels [(see example)]({% slug appearance_pivotgrid %}#toc-column-headers-width).
|
4706
|
+
*
|
4707
|
+
* @default 200
|
4708
|
+
*/
|
4709
|
+
columnHeadersWidth = 200;
|
4710
|
+
/**
|
4711
|
+
* If set to true, the user can use dedicated shortcuts to interact with the PivotGrid. By default, navigation is disabled.
|
4712
|
+
*
|
4713
|
+
* @default false
|
4714
|
+
*/
|
4715
|
+
navigable = false;
|
4279
4716
|
/**
|
4280
4717
|
* Holds the displayed aggregated PivotGrid values.
|
4281
4718
|
*/
|
4282
4719
|
get aggregateData() {
|
4283
4720
|
return cloneArray(this.dataService.aggregateData);
|
4284
4721
|
}
|
4722
|
+
/**
|
4723
|
+
* @hidden
|
4724
|
+
*/
|
4725
|
+
gearSVGIcon = gearIcon;
|
4726
|
+
loading;
|
4727
|
+
showConfigurator;
|
4728
|
+
configuratorNavigation;
|
4729
|
+
resizeObservers = [];
|
4730
|
+
_loaderSettings = DEFAULT_LOADER_SETTINGS;
|
4731
|
+
_virtualScrolling = normalizeVirtualSettings(false);
|
4732
|
+
subs = new Subscription();
|
4733
|
+
rtl = false;
|
4734
|
+
direction;
|
4735
|
+
navigation;
|
4736
|
+
navigationSubs;
|
4737
|
+
constructor(hostEl, zone, dataService, localization, renderer, _scrollbarWidthService, scrollService) {
|
4738
|
+
this.hostEl = hostEl;
|
4739
|
+
this.zone = zone;
|
4740
|
+
this.dataService = dataService;
|
4741
|
+
this.localization = localization;
|
4742
|
+
this.renderer = renderer;
|
4743
|
+
this.scrollService = scrollService;
|
4744
|
+
validatePackage(packageMetadata);
|
4745
|
+
this.subs.add(this.localization.changes.subscribe(({ rtl }) => {
|
4746
|
+
this.rtl = rtl;
|
4747
|
+
this.direction = this.rtl ? 'rtl' : 'ltr';
|
4748
|
+
}));
|
4749
|
+
dataService.wrapper = this.hostEl.nativeElement;
|
4750
|
+
this.scrollService.pivotGrid = this;
|
4751
|
+
}
|
4285
4752
|
ngAfterViewInit() {
|
4286
4753
|
if (isDocumentAvailable()) {
|
4287
4754
|
this.zone.runOutsideAngular(() => {
|
@@ -4347,6 +4814,29 @@ class PivotGridComponent {
|
|
4347
4814
|
}
|
4348
4815
|
}
|
4349
4816
|
}
|
4817
|
+
resizeContainer = (axis, element) => {
|
4818
|
+
const isRows = axis === 'Rows';
|
4819
|
+
const table = this.table.nativeElement;
|
4820
|
+
const size = isRows ? 'offsetHeight' : 'offsetWidth';
|
4821
|
+
table.style[`gridTemplate${axis}`] = '';
|
4822
|
+
table.style[`gridTemplate${axis}`] = `${element[size]}px 1fr`;
|
4823
|
+
};
|
4824
|
+
handleScroll = (event) => {
|
4825
|
+
if (event.target === this.valuesTable.nativeElement) {
|
4826
|
+
syncScroll(event.target, [
|
4827
|
+
this.rowHeadersTable.nativeElement,
|
4828
|
+
this.colHeadersTable.nativeElement
|
4829
|
+
]);
|
4830
|
+
}
|
4831
|
+
else if (event.target.closest('.k-pivotgrid-row-headers')) {
|
4832
|
+
event.preventDefault();
|
4833
|
+
syncWheel(event, [this.valuesTable.nativeElement, this.rowHeadersTable.nativeElement], 'scrollTop', 'Y');
|
4834
|
+
}
|
4835
|
+
else if (event.target.closest('.k-pivotgrid-column-headers')) {
|
4836
|
+
event.preventDefault();
|
4837
|
+
syncWheel(event, [this.valuesTable.nativeElement, this.colHeadersTable.nativeElement], 'scrollLeft', 'X');
|
4838
|
+
}
|
4839
|
+
};
|
4350
4840
|
/**
|
4351
4841
|
* @hidden
|
4352
4842
|
*/
|
@@ -4389,18 +4879,17 @@ class PivotGridComponent {
|
|
4389
4879
|
this.configuratorNavigation.stop();
|
4390
4880
|
}
|
4391
4881
|
}
|
4392
|
-
}
|
4393
|
-
|
4394
|
-
|
4395
|
-
|
4396
|
-
|
4397
|
-
|
4398
|
-
|
4399
|
-
|
4400
|
-
|
4401
|
-
|
4402
|
-
|
4403
|
-
], queries: [{ propertyName: "customCellTemplate", first: true, predicate: CellTemplateDirective, descendants: true }, { propertyName: "valueCellTemplate", first: true, predicate: ValueCellTemplateDirective, descendants: true }, { propertyName: "rowHeaderCellTemplate", first: true, predicate: RowHeaderCellTemplateDirective, descendants: true }, { propertyName: "columnHeaderCellTemplate", first: true, predicate: ColumnHeaderCellTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "colHeadersTable", first: true, predicate: ["colHeadersTable"], descendants: true, read: ElementRef }, { propertyName: "rowHeadersTable", first: true, predicate: ["rowHeadersTable"], descendants: true, read: ElementRef }, { propertyName: "valuesTable", first: true, predicate: ["valuesTable"], descendants: true, read: ElementRef }, { propertyName: "table", first: true, predicate: ["table"], descendants: true, read: ElementRef }, { propertyName: "configuratorWrapper", first: true, predicate: ["configurator"], descendants: true, read: ElementRef }], usesOnChanges: true, ngImport: i0, template: `
|
4882
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PivotGridComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: PivotGridDataService }, { token: i1$1.LocalizationService }, { token: i0.Renderer2 }, { token: i1$4.ScrollbarWidthService }, { token: PivotGridScrollService }], target: i0.ɵɵFactoryTarget.Component });
|
4883
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PivotGridComponent, isStandalone: true, selector: "kendo-pivotgrid", inputs: { loaderSettings: "loaderSettings", configurator: "configurator", virtualScrolling: "virtualScrolling", columnHeadersWidth: "columnHeadersWidth", navigable: "navigable" }, host: { properties: { "class.k-d-flex": "this.hostClass", "class.k-pos-relative": "this.hostClass", "class.k-flex-row": "this.rightPositionClass", "class.k-flex-row-reverse": "this.leftPositionClass", "class.k-flex-column": "this.bottomPositionClass", "class.k-flex-column-reverse": "this.topPositionClass", "attr.dir": "this.dir" } }, providers: [
|
4884
|
+
PivotGridDataService,
|
4885
|
+
LocalizationService,
|
4886
|
+
PivotLocalizationService,
|
4887
|
+
{
|
4888
|
+
provide: L10N_PREFIX,
|
4889
|
+
useValue: 'kendo.pivotgrid'
|
4890
|
+
},
|
4891
|
+
PivotGridScrollService
|
4892
|
+
], queries: [{ propertyName: "customCellTemplate", first: true, predicate: CellTemplateDirective, descendants: true }, { propertyName: "valueCellTemplate", first: true, predicate: ValueCellTemplateDirective, descendants: true }, { propertyName: "rowHeaderCellTemplate", first: true, predicate: RowHeaderCellTemplateDirective, descendants: true }, { propertyName: "columnHeaderCellTemplate", first: true, predicate: ColumnHeaderCellTemplateDirective, descendants: true }], viewQueries: [{ propertyName: "colHeadersTable", first: true, predicate: ["colHeadersTable"], descendants: true, read: ElementRef }, { propertyName: "rowHeadersTable", first: true, predicate: ["rowHeadersTable"], descendants: true, read: ElementRef }, { propertyName: "valuesTable", first: true, predicate: ["valuesTable"], descendants: true, read: ElementRef }, { propertyName: "table", first: true, predicate: ["table"], descendants: true, read: ElementRef }, { propertyName: "configuratorWrapper", first: true, predicate: ["configurator"], descendants: true, read: ElementRef }], usesOnChanges: true, ngImport: i0, template: `
|
4404
4893
|
<ng-container kendoPivotGridLocalizedMessages
|
4405
4894
|
i18n-loading="kendo.pivotgrid.loading|The loading text"
|
4406
4895
|
loading="Loading"
|
@@ -4555,11 +5044,12 @@ PivotGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", ver
|
|
4555
5044
|
class="k-pivotgrid-configurator-button"
|
4556
5045
|
aria-hidden="true"
|
4557
5046
|
(click)="toggleConfigurator()">
|
4558
|
-
<span>{{messageFor('configuratorButtonText')}}<kendo-icon-wrapper name="gear"
|
5047
|
+
<span>{{messageFor('configuratorButtonText')}}<kendo-icon-wrapper name="gear" [svgIcon]="gearSVGIcon"></kendo-icon-wrapper>
|
4559
5048
|
</span>
|
4560
5049
|
</div>
|
4561
5050
|
`, isInline: true, dependencies: [{ kind: "directive", type: LocalizedMessagesDirective, selector: "[kendoPivotGridLocalizedMessages]" }, { kind: "component", type: PivotGridTableComponent, selector: "kendo-pivotgrid-table", inputs: ["tableType", "colWidth", "customCellTemplate", "valueCellTemplate", "rowHeaderCellTemplate", "columnHeaderCellTemplate", "scrollableSettings"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: LoaderComponent, selector: "kendo-loader", inputs: ["type", "themeColor", "size"] }, { kind: "component", type: PivotGridConfiguratorComponent, selector: "kendo-pivotgrid-configurator", inputs: ["orientation", "sort", "filter", "navigation"], outputs: ["close"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }] });
|
4562
|
-
|
5051
|
+
}
|
5052
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PivotGridComponent, decorators: [{
|
4563
5053
|
type: Component,
|
4564
5054
|
args: [{
|
4565
5055
|
selector: 'kendo-pivotgrid',
|
@@ -4728,7 +5218,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
4728
5218
|
class="k-pivotgrid-configurator-button"
|
4729
5219
|
aria-hidden="true"
|
4730
5220
|
(click)="toggleConfigurator()">
|
4731
|
-
<span>{{messageFor('configuratorButtonText')}}<kendo-icon-wrapper name="gear"
|
5221
|
+
<span>{{messageFor('configuratorButtonText')}}<kendo-icon-wrapper name="gear" [svgIcon]="gearSVGIcon"></kendo-icon-wrapper>
|
4732
5222
|
</span>
|
4733
5223
|
</div>
|
4734
5224
|
`,
|
@@ -4880,22 +5370,22 @@ const KENDO_PIVOTGRID = [
|
|
4880
5370
|
* ```
|
4881
5371
|
*/
|
4882
5372
|
class PivotGridModule {
|
5373
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PivotGridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
5374
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: PivotGridModule, imports: [ChipMenuItemComponent, ChipMenuSortComponent, ChipMenuComponent, ChipMenuFilterComponent, ChipMenuItemContentTemplateDirective, FilterMenuContainerComponent, StringFilterMenuComponent, FilterMenuDropDownListDirective, ChipMenuContainerComponent, ChipMenuItemDirective, ChipMenuReorderComponent, PivotGridComponent, PivotGridTableComponent, PivotGridConfiguratorComponent, PivotGridCellDirective, PivotLocalBindingDirective, PivotOLAPBindingDirective, DraggableChipDirective, DropTargetDirective, LocalizedMessagesDirective, CustomMessagesComponent, ChipKeyboardNavigationDirective, CellTemplateDirective, ValueCellTemplateDirective, RowHeaderCellTemplateDirective, ColumnHeaderCellTemplateDirective], exports: [PivotGridComponent, PivotGridTableComponent, PivotGridCellDirective, PivotLocalBindingDirective, PivotOLAPBindingDirective, CustomMessagesComponent, CellTemplateDirective, ValueCellTemplateDirective, RowHeaderCellTemplateDirective, ColumnHeaderCellTemplateDirective] });
|
5375
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PivotGridModule, providers: [
|
5376
|
+
IconsService,
|
5377
|
+
PopupService,
|
5378
|
+
ResizeBatchService,
|
5379
|
+
DialogContainerService,
|
5380
|
+
DialogService,
|
5381
|
+
WindowService,
|
5382
|
+
WindowContainerService
|
5383
|
+
], imports: [ChipMenuItemComponent, ChipMenuSortComponent, ChipMenuComponent, ChipMenuFilterComponent, FilterMenuContainerComponent, StringFilterMenuComponent, ChipMenuReorderComponent, PivotGridComponent, PivotGridTableComponent, PivotGridConfiguratorComponent, PivotGridCellDirective] });
|
4883
5384
|
}
|
4884
|
-
|
4885
|
-
PivotGridModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: PivotGridModule, imports: [ChipMenuItemComponent, ChipMenuSortComponent, ChipMenuComponent, ChipMenuFilterComponent, ChipMenuItemContentTemplateDirective, FilterMenuContainerComponent, StringFilterMenuComponent, FilterMenuDropDownListDirective, ChipMenuContainerComponent, ChipMenuItemDirective, ChipMenuReorderComponent, PivotGridComponent, PivotGridTableComponent, PivotGridConfiguratorComponent, PivotGridCellDirective, PivotLocalBindingDirective, PivotOLAPBindingDirective, DraggableChipDirective, DropTargetDirective, LocalizedMessagesDirective, CustomMessagesComponent, ChipKeyboardNavigationDirective, CellTemplateDirective, ValueCellTemplateDirective, RowHeaderCellTemplateDirective, ColumnHeaderCellTemplateDirective, FormsModule, ReactiveFormsModule], exports: [PivotGridComponent, PivotGridTableComponent, PivotGridCellDirective, PivotLocalBindingDirective, PivotOLAPBindingDirective, CustomMessagesComponent, CellTemplateDirective, ValueCellTemplateDirective, RowHeaderCellTemplateDirective, ColumnHeaderCellTemplateDirective] });
|
4886
|
-
PivotGridModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PivotGridModule, providers: [
|
4887
|
-
IconsService,
|
4888
|
-
PopupService,
|
4889
|
-
ResizeBatchService,
|
4890
|
-
DialogContainerService,
|
4891
|
-
DialogService,
|
4892
|
-
WindowService,
|
4893
|
-
WindowContainerService
|
4894
|
-
], imports: [ChipMenuItemComponent, ChipMenuSortComponent, ChipMenuComponent, ChipMenuFilterComponent, FilterMenuContainerComponent, StringFilterMenuComponent, ChipMenuContainerComponent, ChipMenuReorderComponent, PivotGridComponent, PivotGridTableComponent, PivotGridConfiguratorComponent, PivotGridCellDirective, CustomMessagesComponent, FormsModule, ReactiveFormsModule] });
|
4895
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PivotGridModule, decorators: [{
|
5385
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PivotGridModule, decorators: [{
|
4896
5386
|
type: NgModule,
|
4897
5387
|
args: [{
|
4898
|
-
imports: [...KENDO_PIVOTGRID_CHIPMENU_DECLARATIONS, ...KENDO_PIVOTGRID_DECLARATIONS
|
5388
|
+
imports: [...KENDO_PIVOTGRID_CHIPMENU_DECLARATIONS, ...KENDO_PIVOTGRID_DECLARATIONS],
|
4899
5389
|
exports: [...KENDO_PIVOTGRID],
|
4900
5390
|
providers: [
|
4901
5391
|
IconsService,
|