@progress/kendo-angular-pivotgrid 17.0.0-develop.4 → 17.0.0-develop.40

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.
Files changed (90) hide show
  1. package/README.md +37 -15
  2. package/configurator/chip-menu/chip-menu-filter.component.d.ts +1 -1
  3. package/configurator/chip-menu/chip-menu-item-base.d.ts +1 -1
  4. package/configurator/chip-menu/chip-menu-item.component.d.ts +1 -1
  5. package/configurator/chip-menu/chip-menu-item.directive.d.ts +1 -1
  6. package/configurator/chip-menu/chip-menu-reorder.component.d.ts +1 -1
  7. package/configurator/chip-menu/chip-menu-sort.component.d.ts +1 -1
  8. package/configurator/chip-menu/chip-menu.component.d.ts +6 -4
  9. package/configurator/chip-menu/filtering/filter-menu-container.component.d.ts +1 -1
  10. package/configurator/chip-menu/filtering/filter-menu-dropdownlist.directive.d.ts +1 -1
  11. package/configurator/chip-menu/filtering/string-filter-menu.component.d.ts +3 -3
  12. package/configurator/configurator.component.d.ts +3 -6
  13. package/configurator/draggable.directive.d.ts +4 -5
  14. package/configurator/drop-target.directive.d.ts +1 -1
  15. package/data-binding/base-binding-directive.d.ts +1 -1
  16. package/data-binding/local-binding.directive.d.ts +1 -1
  17. package/data-binding/olap-binding.directive.d.ts +1 -1
  18. package/{esm2020 → esm2022}/configurator/chip-kb-nav.directive.mjs +8 -5
  19. package/{esm2020 → esm2022}/configurator/chip-menu/chip-menu-container.component.mjs +8 -5
  20. package/{esm2020 → esm2022}/configurator/chip-menu/chip-menu-filter.component.mjs +25 -19
  21. package/{esm2020 → esm2022}/configurator/chip-menu/chip-menu-item-base.mjs +9 -6
  22. package/{esm2020 → esm2022}/configurator/chip-menu/chip-menu-item-content-template.directive.mjs +4 -3
  23. package/{esm2020 → esm2022}/configurator/chip-menu/chip-menu-item.component.mjs +65 -40
  24. package/{esm2020 → esm2022}/configurator/chip-menu/chip-menu-item.directive.mjs +35 -28
  25. package/{esm2020 → esm2022}/configurator/chip-menu/chip-menu-reorder.component.mjs +27 -19
  26. package/{esm2020 → esm2022}/configurator/chip-menu/chip-menu-sort.component.mjs +10 -6
  27. package/{esm2020 → esm2022}/configurator/chip-menu/chip-menu.component.mjs +36 -39
  28. package/{esm2020 → esm2022}/configurator/chip-menu/chip-menu.service.mjs +12 -10
  29. package/{esm2020 → esm2022}/configurator/chip-menu/filtering/filter-menu-container.component.mjs +22 -9
  30. package/{esm2020 → esm2022}/configurator/chip-menu/filtering/filter-menu-dropdownlist.directive.mjs +11 -9
  31. package/{esm2020 → esm2022}/configurator/chip-menu/filtering/menu-tabbing.service.mjs +7 -6
  32. package/{esm2020 → esm2022}/configurator/chip-menu/filtering/string-filter-menu.component.mjs +25 -15
  33. package/{esm2020 → esm2022}/configurator/chip-menu/single-popup.service.mjs +21 -10
  34. package/{esm2020 → esm2022}/configurator/configurator.component.mjs +137 -120
  35. package/{esm2020 → esm2022}/configurator/configurator.service.mjs +12 -5
  36. package/{esm2020 → esm2022}/configurator/draggable.directive.mjs +22 -15
  37. package/{esm2020 → esm2022}/configurator/drop-cue.service.mjs +4 -3
  38. package/{esm2020 → esm2022}/configurator/drop-target.directive.mjs +15 -4
  39. package/{esm2020 → esm2022}/data-binding/base-binding-directive.mjs +43 -35
  40. package/{esm2020 → esm2022}/data-binding/local-binding.directive.mjs +17 -5
  41. package/{esm2020 → esm2022}/data-binding/olap-binding.directive.mjs +16 -4
  42. package/{esm2020 → esm2022}/data-binding/pivotgrid-data.service.mjs +25 -14
  43. package/{esm2020 → esm2022}/localization/custom-messages.component.mjs +9 -8
  44. package/{esm2020 → esm2022}/localization/localized-messages.directive.mjs +9 -8
  45. package/esm2022/localization/messages.mjs +284 -0
  46. package/{esm2020 → esm2022}/localization/pivot-localization.service.mjs +4 -3
  47. package/{esm2020 → esm2022}/models/configuration-change-event.mjs +20 -0
  48. package/{esm2020 → esm2022}/models/configurator-settings.mjs +5 -0
  49. package/{esm2020 → esm2022}/models/expanded-change-event.mjs +12 -0
  50. package/{esm2020 → esm2022}/package-metadata.mjs +2 -2
  51. package/{esm2020 → esm2022}/pivotgrid.component.mjs +101 -76
  52. package/{esm2020 → esm2022}/pivotgrid.module.mjs +13 -14
  53. package/{esm2020 → esm2022}/rendering/pivotgrid-cell.directive.mjs +38 -26
  54. package/{esm2020 → esm2022}/rendering/pivotgrid-table.component.mjs +66 -48
  55. package/{esm2020 → esm2022}/rendering/templates/pivotgrid-cell-template.directive.mjs +4 -3
  56. package/{esm2020 → esm2022}/rendering/templates/pivotgrid-column-header-cell-template.directive.mjs +4 -3
  57. package/{esm2020 → esm2022}/rendering/templates/pivotgrid-row-header-cell-template.directive.mjs +4 -3
  58. package/{esm2020 → esm2022}/rendering/templates/pivotgrid-value-cell-template.directive.mjs +4 -3
  59. package/{esm2020 → esm2022}/virtual/scroll.service.mjs +5 -6
  60. package/{esm2020 → esm2022}/virtual/scrollable-container.mjs +57 -43
  61. package/{fesm2020 → fesm2022}/progress-kendo-angular-pivotgrid.mjs +1169 -679
  62. package/localization/messages.d.ts +1 -1
  63. package/models/configurator-chipmenu-reorder-target.d.ts +1 -1
  64. package/models/configurator-orientation.d.ts +1 -1
  65. package/models/configurator-position.d.ts +1 -1
  66. package/models/drop-section.d.ts +1 -1
  67. package/models/drop-target.d.ts +1 -1
  68. package/models/expanded-state-action.d.ts +2 -2
  69. package/models/virtualization-settings.d.ts +1 -1
  70. package/package.json +22 -28
  71. package/pivotgrid.component.d.ts +1 -1
  72. package/pivotgrid.module.d.ts +1 -2
  73. package/rendering/pivotgrid-cell.directive.d.ts +1 -1
  74. package/rendering/pivotgrid-table.component.d.ts +1 -1
  75. package/schematics/ngAdd/index.js +2 -2
  76. package/esm2020/localization/messages.mjs +0 -87
  77. package/fesm2015/progress-kendo-angular-pivotgrid.mjs +0 -4947
  78. /package/{esm2020 → esm2022}/directives.mjs +0 -0
  79. /package/{esm2020 → esm2022}/index.mjs +0 -0
  80. /package/{esm2020 → esm2022}/models/configurator-chipmenu-reorder-target.mjs +0 -0
  81. /package/{esm2020 → esm2022}/models/configurator-orientation.mjs +0 -0
  82. /package/{esm2020 → esm2022}/models/configurator-position.mjs +0 -0
  83. /package/{esm2020 → esm2022}/models/data-row-item.mjs +0 -0
  84. /package/{esm2020 → esm2022}/models/drop-section.mjs +0 -0
  85. /package/{esm2020 → esm2022}/models/drop-target.mjs +0 -0
  86. /package/{esm2020 → esm2022}/models/expanded-state-action.mjs +0 -0
  87. /package/{esm2020 → esm2022}/models/loader-settings.mjs +0 -0
  88. /package/{esm2020 → esm2022}/models/virtualization-settings.mjs +0 -0
  89. /package/{esm2020 → esm2022}/progress-kendo-angular-pivotgrid.mjs +0 -0
  90. /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, CheckBoxDirective } from '@progress/kendo-angular-inputs';
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
- ChipKeyboardNavigationDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChipKeyboardNavigationDirective, deps: [{ token: i1.ChipComponent }, { token: i0.Renderer2 }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
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
- constructor(hostElement, renderer, ngZone) {
94
- this.hostElement = hostElement;
95
- this.renderer = renderer;
96
- this.ngZone = ngZone;
97
- this._isFirst = false;
98
- this._isLast = false;
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
- ChipMenuItemDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChipMenuItemDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
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
- PivotGridDataService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PivotGridDataService, deps: [{ token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Injectable });
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
- ConfiguratorService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ConfiguratorService, deps: [{ token: PivotGridDataService }], target: i0.ɵɵFactoryTarget.Injectable });
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
- constructor() {
505
- this.isPopupOpen = false;
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
- MenuTabbingService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: MenuTabbingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
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
- constructor(menuTabbingService, configuratorService) {
520
- this.configuratorService = configuratorService;
521
- this.closeMenu = new EventEmitter();
522
- this.sub = new Subscription();
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
- ChipMenuService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChipMenuService, deps: [{ token: MenuTabbingService }, { token: ConfiguratorService }], target: i0.ɵɵFactoryTarget.Injectable });
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
- ChipMenuContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChipMenuContainerComponent, deps: [{ token: ChipMenuService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
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
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChipMenuContainerComponent, decorators: [{
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
- PivotLocalizationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PivotLocalizationService, deps: [{ token: i1$1.LocalizationService }], target: i0.ɵɵFactoryTarget.Injectable });
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
- constructor() {
608
- this.hostClass = true;
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
- ChipMenuItemBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChipMenuItemBase, deps: [], target: i0.ɵɵFactoryTarget.Component });
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
- FilterMenuDropDownListDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FilterMenuDropDownListDirective, deps: [{ token: i1$2.DropDownListComponent }], target: i0.ɵɵFactoryTarget.Directive });
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
- StringFilterMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: StringFilterMenuComponent, deps: [{ token: PivotLocalizationService }, { token: ConfiguratorService }, { token: i3.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
733
- StringFilterMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: StringFilterMenuComponent, isStandalone: true, selector: "kendo-pivot-string-filter-menu", inputs: { chip: "chip", menuTabbingService: "menuTabbingService" }, providers: [{
734
- provide: NG_VALUE_ACCESSOR,
735
- useExisting: forwardRef(() => StringFilterMenuComponent),
736
- multi: true
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
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: StringFilterMenuComponent, decorators: [{
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
- FilterMenuContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FilterMenuContainerComponent, deps: [{ token: PivotLocalizationService }, { token: i0.ChangeDetectorRef }, { token: MenuTabbingService }, { token: ConfiguratorService }], target: i0.ɵɵFactoryTarget.Component });
858
- FilterMenuContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", 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: [
859
- MenuTabbingService
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], span[kendoButton], kendo-button", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }] });
887
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: FilterMenuContainerComponent, decorators: [{
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
- ChipMenuItemContentTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChipMenuItemContentTemplateDirective, deps: [{ token: i0.TemplateRef, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
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
- constructor() {
974
- /**
975
- * Fires when the item is clicked.
976
- */
977
- this.itemClick = new EventEmitter();
978
- /**
979
- * Fires when the content is expanded.
980
- */
981
- this.expand = new EventEmitter();
982
- /**
983
- * Fires when the content is collapsed.
984
- */
985
- this.collapse = new EventEmitter();
986
- this.contentState = 'collapsed';
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
- ChipMenuItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChipMenuItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
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
- trigger('state', [
1037
- state('collapsed', style({ display: 'none' })),
1038
- state('expanded', style({ display: 'block' })),
1039
- transition('collapsed => expanded', [
1040
- style({
1041
- height: '0px',
1042
- display: 'block'
1043
- }),
1044
- animate('100ms ease-in', style({
1045
- height: '*'
1046
- }))
1047
- ]),
1048
- transition('expanded => collapsed', [
1049
- style({
1050
- height: '*'
1051
- }),
1052
- animate('100ms ease-in', style({
1053
- height: '0px'
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: "15.2.10", ngImport: i0, type: ChipMenuItemComponent, decorators: [{
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
- ChipMenuFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChipMenuFilterComponent, deps: [{ token: PivotLocalizationService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
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
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChipMenuFilterComponent, decorators: [{
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
- constructor(localization, renderer, configuratorService, dataService, cdr, ngZone) {
1257
- super();
1258
- this.localization = localization;
1259
- this.renderer = renderer;
1260
- this.configuratorService = configuratorService;
1261
- this.dataService = dataService;
1262
- this.cdr = cdr;
1263
- this.ngZone = ngZone;
1264
- this.columnsIcon = columnsIcon;
1265
- this.rowsIcon = rowsIcon;
1266
- this.arrowLeftIcon = arrowLeftIcon;
1267
- this.arrowRightIcon = arrowRightIcon;
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
- ChipMenuReorderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChipMenuReorderComponent, deps: [{ token: PivotLocalizationService }, { token: i0.Renderer2 }, { token: ConfiguratorService }, { token: PivotGridDataService }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
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
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChipMenuReorderComponent, decorators: [{
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
- ChipMenuSortComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChipMenuSortComponent, deps: [{ token: PivotLocalizationService }, { token: i0.Renderer2 }, { token: ConfiguratorService }], target: i0.ɵɵFactoryTarget.Component });
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
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChipMenuSortComponent, decorators: [{
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
- SinglePopupService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SinglePopupService, deps: [{ token: i1$3.PopupService }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: PivotLocalizationService }], target: i0.ɵɵFactoryTarget.Injectable });
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, template) {
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 anchor = this.anchor.nativeElement;
1649
- this.popupRef = this.popupService.open(anchor, template, this.popupRef, POPUP_CLASS);
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
- anchor.focus();
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
- ChipMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChipMenuComponent, deps: [{ token: SinglePopupService }, { token: PivotLocalizationService }, { token: ChipMenuService }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
1667
- ChipMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ChipMenuComponent, isStandalone: true, selector: "kendo-pivot-chip-menu", inputs: { chip: "chip", tabIndex: "tabIndex", isMeasureField: "isMeasureField" }, providers: [
1668
- ChipMenuService,
1669
- MenuTabbingService
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: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { 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"] }] });
1709
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ChipMenuComponent, decorators: [{
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: ['anchor', { static: true, read: ElementRef }]
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
- DropCueService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DropCueService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
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
- constructor(draggable, element, zone, service, cue, renderer, cdr) {
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
- DraggableChipDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DraggableChipDirective, deps: [{ token: i1$4.DraggableDirective, optional: true }, { token: i0.ElementRef }, { token: i0.NgZone }, { token: ConfiguratorService }, { token: DropCueService }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
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 }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { pointerEvents: [{
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
- DropTargetDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: DropTargetDirective, deps: [{ token: i0.ElementRef }, { token: ConfiguratorService }, { token: DropCueService }, { token: i0.Renderer2 }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
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
- * A function which determines if a specific node is checked/
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, item) {
2321
- if (event.target.checked) {
2322
- this.checked = [...this.checked, item];
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
- PivotGridConfiguratorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PivotGridConfiguratorComponent, deps: [{ token: PivotGridDataService }, { token: i1$1.LocalizationService }, { token: ConfiguratorService }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
2404
- PivotGridConfiguratorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", 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: [
2405
- ConfiguratorService,
2406
- DropCueService,
2407
- SinglePopupService
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
- >{{ getName(item.name) }}
2623
+ >
2490
2624
  <kendo-pivot-chip-menu
2491
- [chip]="item">
2492
- </kendo-pivot-chip-menu>
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
- [chip]="item">
2531
- </kendo-pivot-chip-menu>
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
- {{ getName(item.name) }}
2571
-
2572
- <kendo-pivot-chip-menu
2573
- [isMeasureField]="true"
2574
- [chip]="item">
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-hstack k-justify-content-end">
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: NodeTemplateDirective, selector: "[kendoTreeViewNodeTemplate]" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: CheckBoxDirective, selector: "input[kendoCheckBox]", inputs: ["size", "rounded"] }, { 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", "avatarClass", "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"] }, { kind: "component", type: ButtonComponent, selector: "button[kendoButton], span[kendoButton], kendo-button", inputs: ["arrowIcon", "toggleable", "togglable", "selected", "tabIndex", "imageUrl", "iconClass", "icon", "disabled", "size", "rounded", "fillMode", "themeColor", "svgIcon", "role", "primary", "look"], outputs: ["selectedChange", "click"], exportAs: ["kendoButton"] }] });
2592
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PivotGridConfiguratorComponent, decorators: [{
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
- >{{ getName(item.name) }}
2826
+ >
2683
2827
  <kendo-pivot-chip-menu
2684
- [chip]="item">
2685
- </kendo-pivot-chip-menu>
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
- [chip]="item">
2724
- </kendo-pivot-chip-menu>
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
- {{ getName(item.name) }}
2764
-
2765
- <kendo-pivot-chip-menu
2766
- [isMeasureField]="true"
2767
- [chip]="item">
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-hstack k-justify-content-end">
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, CheckBoxDirective,
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
- PivotBaseBindingDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PivotBaseBindingDirective, deps: [{ token: PivotGridDataService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
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
- PivotLocalBindingDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PivotLocalBindingDirective, deps: [{ token: PivotGridDataService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
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
- PivotOLAPBindingDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PivotOLAPBindingDirective, deps: [{ token: PivotGridDataService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
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
- PivotGridMessages.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PivotGridMessages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
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
- CustomMessagesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CustomMessagesComponent, deps: [{ token: i1$1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
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
- LocalizedMessagesDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: LocalizedMessagesDirective, deps: [{ token: i1$1.LocalizationService }], target: i0.ɵɵFactoryTarget.Directive });
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: 1728985397,
3375
- version: '17.0.0-develop.4',
3792
+ publishDate: 1730799101,
3793
+ version: '17.0.0-develop.40',
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
- CellTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: CellTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
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
- ValueCellTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ValueCellTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
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
- RowHeaderCellTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: RowHeaderCellTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
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
- ColumnHeaderCellTemplateDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ColumnHeaderCellTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive });
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
- constructor(hostEl, renderer, dataService) {
3642
- this.hostEl = hostEl;
3643
- this.renderer = renderer;
3644
- this.dataService = dataService;
3645
- this.cellClass = true;
3646
- this.chevronUpSVGIcon = chevronUpIcon;
3647
- this.chevronDownSVGIcon = chevronDownIcon;
3648
- this.handleClick = () => {
3649
- this.dataService.expandedStateChange.emit({
3650
- action: this.expanded ? 'collapse' : 'expand',
3651
- cell: this.kendoPivotGridCell,
3652
- tableType: this.tableType
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 || (this.tableType === 'values'
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
- PivotGridCellDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PivotGridCellDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: PivotGridDataService }], target: i0.ɵɵFactoryTarget.Component });
3684
- PivotGridCellDirective.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", 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: `
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
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PivotGridCellDirective, decorators: [{
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
- constructor() {
3840
- this.virtualScrolling = false;
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
- PivotGridScrollService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PivotGridScrollService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
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
- PivotGridTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PivotGridTableComponent, deps: [{ token: i0.ElementRef }, { token: PivotGridDataService }, { token: i1$1.LocalizationService }, { token: i0.NgZone }, { token: PivotGridScrollService }], target: i0.ɵɵFactoryTarget.Component });
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
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PivotGridTableComponent, decorators: [{
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
- constructor(hostEl, zone, dataService, localization, renderer, _scrollbarWidthService, scrollService) {
4170
- this.hostEl = hostEl;
4171
- this.zone = zone;
4172
- this.dataService = dataService;
4173
- this.localization = localization;
4174
- this.renderer = renderer;
4175
- this.scrollService = scrollService;
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?.position === 'right';
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
- PivotGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", 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 });
4394
- PivotGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", 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: [
4395
- PivotGridDataService,
4396
- LocalizationService,
4397
- PivotLocalizationService,
4398
- {
4399
- provide: L10N_PREFIX,
4400
- useValue: 'kendo.pivotgrid'
4401
- },
4402
- PivotGridScrollService
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" innerCssClass="k-color-inherit" [svgIcon]="gearSVGIcon"></kendo-icon-wrapper>
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
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PivotGridComponent, decorators: [{
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" innerCssClass="k-color-inherit" [svgIcon]="gearSVGIcon"></kendo-icon-wrapper>
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
- PivotGridModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PivotGridModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
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, FormsModule, ReactiveFormsModule],
5388
+ imports: [...KENDO_PIVOTGRID_CHIPMENU_DECLARATIONS, ...KENDO_PIVOTGRID_DECLARATIONS],
4899
5389
  exports: [...KENDO_PIVOTGRID],
4900
5390
  providers: [
4901
5391
  IconsService,