@progress/kendo-angular-grid 12.2.0-develop.7 → 13.0.0-develop.10

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 (171) hide show
  1. package/column-menu/column-chooser.component.d.ts +4 -4
  2. package/column-menu/column-menu-autosize-all.component.d.ts +2 -4
  3. package/column-menu/column-menu-autosize.component.d.ts +1 -3
  4. package/column-menu/column-menu-chooser.component.d.ts +3 -3
  5. package/column-menu/column-menu-filter.component.d.ts +3 -3
  6. package/column-menu/column-menu-lock.component.d.ts +3 -3
  7. package/column-menu/column-menu-position.component.d.ts +4 -4
  8. package/column-menu/column-menu-settings.interface.d.ts +5 -0
  9. package/column-menu/column-menu-sort.component.d.ts +6 -3
  10. package/column-menu/column-menu-stick.component.d.ts +3 -3
  11. package/column-menu/column-menu.component.d.ts +39 -5
  12. package/column-menu/column-menu.module.d.ts +2 -1
  13. package/column-resizing/column-handle.directive.d.ts +3 -3
  14. package/common/provider.service.d.ts +3 -1
  15. package/common/single-popup.service.d.ts +3 -3
  16. package/editing/add-command.directive.d.ts +2 -2
  17. package/editing/cancel-command.directive.d.ts +2 -2
  18. package/editing/edit-command.directive.d.ts +2 -2
  19. package/editing/remove-command.directive.d.ts +2 -2
  20. package/editing/save-command.directive.d.ts +2 -2
  21. package/esm2020/column-menu/column-chooser.component.mjs +17 -17
  22. package/esm2020/column-menu/column-list.component.mjs +3 -3
  23. package/esm2020/column-menu/column-menu-autosize-all.component.mjs +15 -18
  24. package/esm2020/column-menu/column-menu-autosize.component.mjs +9 -12
  25. package/esm2020/column-menu/column-menu-chooser.component.mjs +13 -13
  26. package/esm2020/column-menu/column-menu-filter.component.mjs +9 -9
  27. package/esm2020/column-menu/column-menu-item.component.mjs +1 -1
  28. package/esm2020/column-menu/column-menu-lock.component.mjs +7 -7
  29. package/esm2020/column-menu/column-menu-position.component.mjs +9 -9
  30. package/esm2020/column-menu/column-menu-sort.component.mjs +13 -10
  31. package/esm2020/column-menu/column-menu-stick.component.mjs +7 -7
  32. package/esm2020/column-menu/column-menu.component.mjs +257 -17
  33. package/esm2020/column-menu/column-menu.module.mjs +4 -3
  34. package/esm2020/column-resizing/column-handle.directive.mjs +7 -7
  35. package/esm2020/common/provider.service.mjs +6 -3
  36. package/esm2020/common/single-popup.service.mjs +8 -8
  37. package/esm2020/editing/add-command.directive.mjs +7 -7
  38. package/esm2020/editing/cancel-command.directive.mjs +7 -7
  39. package/esm2020/editing/edit-command.directive.mjs +7 -7
  40. package/esm2020/editing/remove-command.directive.mjs +7 -7
  41. package/esm2020/editing/save-command.directive.mjs +7 -7
  42. package/esm2020/excel/excel-command.directive.mjs +7 -7
  43. package/esm2020/excel/excel.component.mjs +7 -7
  44. package/esm2020/filtering/boolean-filter.component.mjs +13 -13
  45. package/esm2020/filtering/cell/autocomplete-filter-cell.component.mjs +7 -7
  46. package/esm2020/filtering/cell/boolean-filter-cell.component.mjs +7 -7
  47. package/esm2020/filtering/cell/date-filter-cell.component.mjs +9 -9
  48. package/esm2020/filtering/cell/filter-cell-operators.component.mjs +7 -7
  49. package/esm2020/filtering/cell/numeric-filter-cell.component.mjs +10 -10
  50. package/esm2020/filtering/cell/string-filter-cell.component.mjs +7 -7
  51. package/esm2020/filtering/date-filter.component.mjs +9 -9
  52. package/esm2020/filtering/filter-row.component.mjs +7 -7
  53. package/esm2020/filtering/menu/boolean-filter-menu.component.mjs +10 -8
  54. package/esm2020/filtering/menu/date-filter-menu-input.component.mjs +8 -8
  55. package/esm2020/filtering/menu/date-filter-menu.component.mjs +9 -9
  56. package/esm2020/filtering/menu/filter-menu-container.component.mjs +20 -20
  57. package/esm2020/filtering/menu/filter-menu-input-wrapper.component.mjs +10 -8
  58. package/esm2020/filtering/menu/filter-menu.component.mjs +8 -8
  59. package/esm2020/filtering/menu/menu-tabbing.service.mjs +1 -0
  60. package/esm2020/filtering/menu/numeric-filter-menu-input.component.mjs +8 -8
  61. package/esm2020/filtering/menu/numeric-filter-menu.component.mjs +9 -9
  62. package/esm2020/filtering/menu/string-filter-menu-input.component.mjs +7 -7
  63. package/esm2020/filtering/menu/string-filter-menu.component.mjs +9 -9
  64. package/esm2020/filtering/numeric-filter.component.mjs +9 -9
  65. package/esm2020/filtering/operators/after-eq-filter-operator.component.mjs +5 -5
  66. package/esm2020/filtering/operators/after-filter-operator.component.mjs +5 -5
  67. package/esm2020/filtering/operators/before-eq-filter-operator.component.mjs +5 -5
  68. package/esm2020/filtering/operators/before-filter-operator.component.mjs +5 -5
  69. package/esm2020/filtering/operators/contains-filter-operator.component.mjs +5 -5
  70. package/esm2020/filtering/operators/ends-with-filter-operator.component.mjs +5 -5
  71. package/esm2020/filtering/operators/eq-filter-operator.component.mjs +5 -5
  72. package/esm2020/filtering/operators/filter-operator.base.mjs +9 -9
  73. package/esm2020/filtering/operators/gt-filter-operator.component.mjs +5 -5
  74. package/esm2020/filtering/operators/gte-filter-operator.component.mjs +5 -5
  75. package/esm2020/filtering/operators/is-empty-filter-operator.component.mjs +5 -5
  76. package/esm2020/filtering/operators/is-not-empty-filter-operator.component.mjs +5 -5
  77. package/esm2020/filtering/operators/is-not-null-filter-operator.component.mjs +5 -5
  78. package/esm2020/filtering/operators/isnull-filter-operator.component.mjs +5 -5
  79. package/esm2020/filtering/operators/lt-filter-operator.component.mjs +5 -5
  80. package/esm2020/filtering/operators/lte-filter-operator.component.mjs +5 -5
  81. package/esm2020/filtering/operators/neq-filter-operator.component.mjs +5 -5
  82. package/esm2020/filtering/operators/not-contains-filter-operator.component.mjs +5 -5
  83. package/esm2020/filtering/operators/starts-with-filter-operator.component.mjs +5 -5
  84. package/esm2020/filtering/string-filter.component.mjs +8 -8
  85. package/esm2020/grid.component.mjs +33 -15
  86. package/esm2020/grouping/group-header.component.mjs +32 -15
  87. package/esm2020/grouping/group-panel.component.mjs +10 -10
  88. package/esm2020/localization/messages.mjs +7 -1
  89. package/esm2020/navigation/navigation.service.mjs +8 -8
  90. package/esm2020/package-metadata.mjs +2 -2
  91. package/esm2020/pager/pager-element.component.mjs +25 -8
  92. package/esm2020/pager/pager-info.component.mjs +6 -6
  93. package/esm2020/pager/pager-input.component.mjs +6 -6
  94. package/esm2020/pager/pager-next-buttons.component.mjs +14 -17
  95. package/esm2020/pager/pager-numeric-buttons.component.mjs +6 -6
  96. package/esm2020/pager/pager-page-sizes.component.mjs +7 -7
  97. package/esm2020/pager/pager-prev-buttons.component.mjs +14 -17
  98. package/esm2020/pager/pager.component.mjs +7 -7
  99. package/esm2020/pdf/pdf-command.directive.mjs +7 -7
  100. package/esm2020/rendering/cell.component.mjs +9 -9
  101. package/esm2020/rendering/common/loading.component.mjs +7 -7
  102. package/esm2020/rendering/header/header.component.mjs +27 -30
  103. package/esm2020/rendering/list.component.mjs +7 -7
  104. package/esm2020/rendering/table-body.component.mjs +12 -12
  105. package/excel/excel-command.directive.d.ts +2 -2
  106. package/excel/excel.component.d.ts +3 -3
  107. package/fesm2015/progress-kendo-angular-grid.mjs +858 -558
  108. package/fesm2020/progress-kendo-angular-grid.mjs +855 -558
  109. package/filtering/base-filter-cell.component.d.ts +1 -1
  110. package/filtering/boolean-filter.component.d.ts +3 -3
  111. package/filtering/cell/autocomplete-filter-cell.component.d.ts +3 -3
  112. package/filtering/cell/boolean-filter-cell.component.d.ts +2 -2
  113. package/filtering/cell/date-filter-cell.component.d.ts +3 -3
  114. package/filtering/cell/filter-cell-operators.component.d.ts +3 -3
  115. package/filtering/cell/numeric-filter-cell.component.d.ts +4 -4
  116. package/filtering/cell/string-filter-cell.component.d.ts +2 -2
  117. package/filtering/date-filter.component.d.ts +3 -3
  118. package/filtering/filter-row.component.d.ts +3 -3
  119. package/filtering/menu/boolean-filter-menu.component.d.ts +2 -2
  120. package/filtering/menu/date-filter-menu-input.component.d.ts +3 -3
  121. package/filtering/menu/date-filter-menu.component.d.ts +2 -2
  122. package/filtering/menu/filter-menu-container.component.d.ts +3 -3
  123. package/filtering/menu/filter-menu-input-wrapper.component.d.ts +3 -3
  124. package/filtering/menu/filter-menu.component.d.ts +3 -3
  125. package/filtering/menu/menu-tabbing.service.d.ts +1 -0
  126. package/filtering/menu/numeric-filter-menu-input.component.d.ts +3 -3
  127. package/filtering/menu/numeric-filter-menu.component.d.ts +2 -2
  128. package/filtering/menu/string-filter-menu-input.component.d.ts +3 -3
  129. package/filtering/menu/string-filter-menu.component.d.ts +2 -2
  130. package/filtering/numeric-filter.component.d.ts +3 -3
  131. package/filtering/operators/after-eq-filter-operator.component.d.ts +2 -2
  132. package/filtering/operators/after-filter-operator.component.d.ts +2 -2
  133. package/filtering/operators/before-eq-filter-operator.component.d.ts +2 -2
  134. package/filtering/operators/before-filter-operator.component.d.ts +2 -2
  135. package/filtering/operators/contains-filter-operator.component.d.ts +2 -2
  136. package/filtering/operators/ends-with-filter-operator.component.d.ts +2 -2
  137. package/filtering/operators/eq-filter-operator.component.d.ts +2 -2
  138. package/filtering/operators/filter-operator.base.d.ts +3 -3
  139. package/filtering/operators/gt-filter-operator.component.d.ts +2 -2
  140. package/filtering/operators/gte-filter-operator.component.d.ts +2 -2
  141. package/filtering/operators/is-empty-filter-operator.component.d.ts +2 -2
  142. package/filtering/operators/is-not-empty-filter-operator.component.d.ts +2 -2
  143. package/filtering/operators/is-not-null-filter-operator.component.d.ts +2 -2
  144. package/filtering/operators/isnull-filter-operator.component.d.ts +2 -2
  145. package/filtering/operators/lt-filter-operator.component.d.ts +2 -2
  146. package/filtering/operators/lte-filter-operator.component.d.ts +2 -2
  147. package/filtering/operators/neq-filter-operator.component.d.ts +2 -2
  148. package/filtering/operators/not-contains-filter-operator.component.d.ts +2 -2
  149. package/filtering/operators/starts-with-filter-operator.component.d.ts +2 -2
  150. package/filtering/string-filter.component.d.ts +3 -3
  151. package/grouping/group-header.component.d.ts +8 -5
  152. package/grouping/group-panel.component.d.ts +3 -3
  153. package/localization/messages.d.ts +13 -1
  154. package/navigation/navigation.service.d.ts +3 -3
  155. package/package.json +16 -15
  156. package/pager/pager-element.component.d.ts +12 -3
  157. package/pager/pager-info.component.d.ts +2 -2
  158. package/pager/pager-input.component.d.ts +2 -2
  159. package/pager/pager-next-buttons.component.d.ts +2 -5
  160. package/pager/pager-numeric-buttons.component.d.ts +2 -2
  161. package/pager/pager-page-sizes.component.d.ts +2 -2
  162. package/pager/pager-prev-buttons.component.d.ts +2 -5
  163. package/pager/pager.component.d.ts +3 -3
  164. package/pdf/pdf-command.directive.d.ts +2 -2
  165. package/rendering/cell.component.d.ts +3 -3
  166. package/rendering/common/loading.component.d.ts +3 -3
  167. package/rendering/header/header.component.d.ts +1 -3
  168. package/rendering/list.component.d.ts +3 -3
  169. package/rendering/table-body.component.d.ts +3 -3
  170. package/schematics/ngAdd/index.js +5 -3
  171. package/scrolling/scroll-request.service.d.ts +6 -0
@@ -18,7 +18,7 @@ import { validatePackage } from '@progress/kendo-licensing';
18
18
  import { orderBy, isCompositeFilterDescriptor, process, filterBy } from '@progress/kendo-data-query';
19
19
  import * as i1$2 from '@progress/kendo-angular-popup';
20
20
  import { PopupModule } from '@progress/kendo-angular-popup';
21
- import { plusIcon, cancelIcon, lockIcon, unlockIcon, insertMiddleIcon, caretAltLeftIcon, caretAltToLeftIcon, caretAltRightIcon, caretAltToRightIcon, sortDescSmallIcon, sortAscSmallIcon, filterIcon, stickIcon, unstickIcon, setColumnPositionIcon, columnsIcon, maxWidthIcon, displayInlineBlockIcon, moreVerticalIcon, filterClearIcon, reorderIcon, caretAltDownIcon, minusIcon } from '@progress/kendo-svg-icons';
21
+ import { plusIcon, cancelIcon, lockIcon, unlockIcon, insertMiddleIcon, caretAltLeftIcon, caretAltToLeftIcon, caretAltRightIcon, caretAltToRightIcon, sortDescSmallIcon, sortAscSmallIcon, filterIcon, stickIcon, unstickIcon, setColumnPositionIcon, columnsIcon, maxWidthIcon, displayInlineFlexIcon, moreHorizontalIcon, moreVerticalIcon, filterClearIcon, reorderIcon, caretAltDownIcon, minusIcon } from '@progress/kendo-svg-icons';
22
22
  import * as i1$3 from '@angular/platform-browser';
23
23
  import * as i3 from '@progress/kendo-angular-icons';
24
24
  import { IconsModule } from '@progress/kendo-angular-icons';
@@ -34,6 +34,8 @@ import * as i5 from '@progress/kendo-angular-label';
34
34
  import { LabelModule } from '@progress/kendo-angular-label';
35
35
  import * as i4$3 from '@progress/kendo-angular-dateinputs';
36
36
  import { DatePickerModule } from '@progress/kendo-angular-dateinputs';
37
+ import * as i16 from '@progress/kendo-angular-layout';
38
+ import { TabStripComponent, TabStripModule } from '@progress/kendo-angular-layout';
37
39
  import { trigger, state, style, transition, animate } from '@angular/animations';
38
40
  import { getter } from '@progress/kendo-common';
39
41
  import * as i1$5 from '@progress/kendo-angular-intl';
@@ -1243,6 +1245,77 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
1243
1245
  type: Injectable
1244
1246
  }], ctorParameters: function () { return [{ type: i0.NgZone }]; } });
1245
1247
 
1248
+ /**
1249
+ * @hidden
1250
+ */
1251
+ class GridToolbarNavigationService {
1252
+ constructor(renderer) {
1253
+ this.renderer = renderer;
1254
+ this.navigableElements = [];
1255
+ this.currentActiveIndex = 0;
1256
+ this.defaultFocusableSelector = `
1257
+ [kendogridtoolbarfocusable],
1258
+ [kendogridaddcommand],
1259
+ [kendogridcancelcommand],
1260
+ [kendogrideditcommand],
1261
+ [kendogridremovecommand],
1262
+ [kendogridsavecommand],
1263
+ [kendogridexcelcommand],
1264
+ [kendogridpdfcommand]
1265
+ `;
1266
+ }
1267
+ notify() {
1268
+ // ensure focusable elements are in the same order as in the DOM
1269
+ this.navigableElements = this.navigableElements.length && Array.from(this.navigableElements[0].parentElement.querySelectorAll(this.defaultFocusableSelector)) || [];
1270
+ this.currentActiveIndex = 0;
1271
+ this.updateFocus();
1272
+ }
1273
+ focus() {
1274
+ var _a;
1275
+ (_a = this.navigableElements[this.currentActiveIndex]) === null || _a === void 0 ? void 0 : _a.focus();
1276
+ }
1277
+ updateFocus() {
1278
+ if (!this.navigableElements.length) {
1279
+ return;
1280
+ }
1281
+ this.navigableElements.forEach(el => {
1282
+ this.renderer.setAttribute(el, 'tabindex', '-1');
1283
+ });
1284
+ this.renderer.setAttribute(this.navigableElements[this.currentActiveIndex], 'tabindex', '0');
1285
+ if (isDocumentAvailable() && document.activeElement.closest('.k-toolbar')) {
1286
+ this.navigableElements[this.currentActiveIndex].focus();
1287
+ }
1288
+ }
1289
+ }
1290
+ GridToolbarNavigationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GridToolbarNavigationService, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Injectable });
1291
+ GridToolbarNavigationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GridToolbarNavigationService });
1292
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GridToolbarNavigationService, decorators: [{
1293
+ type: Injectable
1294
+ }], ctorParameters: function () { return [{ type: i0.Renderer2 }]; } });
1295
+
1296
+ /**
1297
+ * @hidden
1298
+ *
1299
+ * The Context service is used to provide common
1300
+ * services and DI tokens for a Grid instance.
1301
+ *
1302
+ * This keeps the constructor parameters stable
1303
+ * and a avoids dependency cycles between components.
1304
+ */
1305
+ class ContextService {
1306
+ constructor(renderer, localization) {
1307
+ this.renderer = renderer;
1308
+ this.localization = localization;
1309
+ this.topToolbarNavigation = new GridToolbarNavigationService(this.renderer);
1310
+ this.bottomToolbarNavigation = new GridToolbarNavigationService(this.renderer);
1311
+ }
1312
+ }
1313
+ ContextService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ContextService, deps: [{ token: i0.Renderer2 }, { token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Injectable });
1314
+ ContextService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ContextService });
1315
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ContextService, decorators: [{
1316
+ type: Injectable
1317
+ }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i1.LocalizationService }]; } });
1318
+
1246
1319
  const isButton = matchesNodeName('button');
1247
1320
  const isInputTag = matchesNodeName('input');
1248
1321
  const navigableRegex = /(button|checkbox|color|file|radio|reset|submit)/i;
@@ -1479,7 +1552,7 @@ class NavigationViewport {
1479
1552
  * @hidden
1480
1553
  */
1481
1554
  class NavigationService {
1482
- constructor(zone, domEvents, pagerContextService, scrollRequestService, groupsService, detailsService, focusRoot, editService, cd, localization, focusableParent) {
1555
+ constructor(zone, domEvents, pagerContextService, scrollRequestService, groupsService, detailsService, focusRoot, editService, cd, ctx, focusableParent) {
1483
1556
  this.zone = zone;
1484
1557
  this.domEvents = domEvents;
1485
1558
  this.pagerContextService = pagerContextService;
@@ -1489,7 +1562,7 @@ class NavigationService {
1489
1562
  this.focusRoot = focusRoot;
1490
1563
  this.editService = editService;
1491
1564
  this.cd = cd;
1492
- this.localization = localization;
1565
+ this.ctx = ctx;
1493
1566
  this.focusableParent = focusableParent;
1494
1567
  this.cellKeydown = new EventEmitter();
1495
1568
  this.activeRowIndex = 0;
@@ -1777,10 +1850,10 @@ class NavigationService {
1777
1850
  .forEach(cell => cell.focusGroup && cell.focusGroup.activate());
1778
1851
  }
1779
1852
  moveCursorFwd() {
1780
- return this.localization.rtl ? this.cursor.moveLeft() : this.cursor.moveRight();
1853
+ return this.ctx.localization.rtl ? this.cursor.moveLeft() : this.cursor.moveRight();
1781
1854
  }
1782
1855
  moveCursorBwd() {
1783
- return this.localization.rtl ? this.cursor.moveRight() : this.cursor.moveLeft();
1856
+ return this.ctx.localization.rtl ? this.cursor.moveRight() : this.cursor.moveLeft();
1784
1857
  }
1785
1858
  onCursorKeydown(args) {
1786
1859
  let preventDefault = false;
@@ -1989,12 +2062,12 @@ class NavigationService {
1989
2062
  this.cursor.reset();
1990
2063
  }
1991
2064
  }
1992
- NavigationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: NavigationService, deps: [{ token: i0.NgZone }, { token: DomEventsService }, { token: PagerContextService }, { token: ScrollRequestService }, { token: GroupsService }, { token: DetailsService }, { token: FocusRoot }, { token: EditService }, { token: i0.ChangeDetectorRef }, { token: i1.LocalizationService }, { token: FocusableDirective, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
2065
+ NavigationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: NavigationService, deps: [{ token: i0.NgZone }, { token: DomEventsService }, { token: PagerContextService }, { token: ScrollRequestService }, { token: GroupsService }, { token: DetailsService }, { token: FocusRoot }, { token: EditService }, { token: i0.ChangeDetectorRef }, { token: ContextService }, { token: FocusableDirective, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
1993
2066
  NavigationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: NavigationService });
1994
2067
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: NavigationService, decorators: [{
1995
2068
  type: Injectable
1996
2069
  }], ctorParameters: function () {
1997
- return [{ type: i0.NgZone }, { type: DomEventsService }, { type: PagerContextService }, { type: ScrollRequestService }, { type: GroupsService }, { type: DetailsService }, { type: FocusRoot }, { type: EditService }, { type: i0.ChangeDetectorRef }, { type: i1.LocalizationService }, { type: FocusableDirective, decorators: [{
2070
+ return [{ type: i0.NgZone }, { type: DomEventsService }, { type: PagerContextService }, { type: ScrollRequestService }, { type: GroupsService }, { type: DetailsService }, { type: FocusRoot }, { type: EditService }, { type: i0.ChangeDetectorRef }, { type: ContextService }, { type: FocusableDirective, decorators: [{
1998
2071
  type: Optional
1999
2072
  }] }];
2000
2073
  } });
@@ -2833,8 +2906,8 @@ const packageMetadata = {
2833
2906
  name: '@progress/kendo-angular-grid',
2834
2907
  productName: 'Kendo UI for Angular',
2835
2908
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
2836
- publishDate: 1684780267,
2837
- version: '12.2.0-develop.7',
2909
+ publishDate: 1685119790,
2910
+ version: '13.0.0-develop.10',
2838
2911
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/'
2839
2912
  };
2840
2913
 
@@ -4468,76 +4541,6 @@ class PairSet {
4468
4541
  }
4469
4542
  }
4470
4543
 
4471
- /**
4472
- * @hidden
4473
- */
4474
- class GridToolbarNavigationService {
4475
- constructor(renderer) {
4476
- this.renderer = renderer;
4477
- this.navigableElements = [];
4478
- this.currentActiveIndex = 0;
4479
- this.defaultFocusableSelector = `
4480
- [kendogridtoolbarfocusable],
4481
- [kendogridaddcommand],
4482
- [kendogridcancelcommand],
4483
- [kendogrideditcommand],
4484
- [kendogridremovecommand],
4485
- [kendogridsavecommand],
4486
- [kendogridexcelcommand],
4487
- [kendogridpdfcommand]
4488
- `;
4489
- }
4490
- notify() {
4491
- // ensure focusable elements are in the same order as in the DOM
4492
- this.navigableElements = this.navigableElements.length && Array.from(this.navigableElements[0].parentElement.querySelectorAll(this.defaultFocusableSelector)) || [];
4493
- this.currentActiveIndex = 0;
4494
- this.updateFocus();
4495
- }
4496
- focus() {
4497
- var _a;
4498
- (_a = this.navigableElements[this.currentActiveIndex]) === null || _a === void 0 ? void 0 : _a.focus();
4499
- }
4500
- updateFocus() {
4501
- if (!this.navigableElements.length) {
4502
- return;
4503
- }
4504
- this.navigableElements.forEach(el => {
4505
- this.renderer.setAttribute(el, 'tabindex', '-1');
4506
- });
4507
- this.renderer.setAttribute(this.navigableElements[this.currentActiveIndex], 'tabindex', '0');
4508
- if (isDocumentAvailable() && document.activeElement.closest('.k-toolbar')) {
4509
- this.navigableElements[this.currentActiveIndex].focus();
4510
- }
4511
- }
4512
- }
4513
- GridToolbarNavigationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GridToolbarNavigationService, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Injectable });
4514
- GridToolbarNavigationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GridToolbarNavigationService });
4515
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GridToolbarNavigationService, decorators: [{
4516
- type: Injectable
4517
- }], ctorParameters: function () { return [{ type: i0.Renderer2 }]; } });
4518
-
4519
- /**
4520
- * @hidden
4521
- *
4522
- * The Context service is used to provide common
4523
- * services and DI tokens for a Grid instance.
4524
- *
4525
- * This keeps the constructor parameters stable
4526
- * and a avoids dependency cycles between components.
4527
- */
4528
- class ContextService {
4529
- constructor(renderer) {
4530
- this.renderer = renderer;
4531
- this.topToolbarNavigation = new GridToolbarNavigationService(this.renderer);
4532
- this.bottomToolbarNavigation = new GridToolbarNavigationService(this.renderer);
4533
- }
4534
- }
4535
- ContextService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ContextService, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Injectable });
4536
- ContextService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ContextService });
4537
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ContextService, decorators: [{
4538
- type: Injectable
4539
- }], ctorParameters: function () { return [{ type: i0.Renderer2 }]; } });
4540
-
4541
4544
  /**
4542
4545
  * @hidden
4543
4546
  */
@@ -5018,6 +5021,7 @@ class MenuTabbingService {
5018
5021
  constructor() {
5019
5022
  this.isColumnMenu = false;
5020
5023
  this.isPopupOpen = false;
5024
+ this.isTabbedInterface = false;
5021
5025
  }
5022
5026
  }
5023
5027
  MenuTabbingService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: MenuTabbingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
@@ -5539,11 +5543,11 @@ class SinglePopupService {
5539
5543
  /**
5540
5544
  * @hidden
5541
5545
  */
5542
- constructor(popupService, renderer, ngZone, scrollSyncService, localization) {
5546
+ constructor(popupService, renderer, ngZone, scrollSyncService, ctx) {
5543
5547
  this.popupService = popupService;
5544
5548
  this.renderer = renderer;
5545
5549
  this.ngZone = ngZone;
5546
- this.localization = localization;
5550
+ this.ctx = ctx;
5547
5551
  /**
5548
5552
  * Fires when the filter or column menus are about to close because the user clicked outside their popups.
5549
5553
  * Used to prevent the popup from closing.
@@ -5560,7 +5564,7 @@ class SinglePopupService {
5560
5564
  const toggle = isPresent(popupRef) && this.popupRef === popupRef;
5561
5565
  this.destroy();
5562
5566
  if (!toggle) {
5563
- const direction = this.localization.rtl ? 'right' : 'left';
5567
+ const direction = this.ctx.localization.rtl ? 'right' : 'left';
5564
5568
  this.popupRef = this.popupService.open({
5565
5569
  anchorAlign: { vertical: 'bottom', horizontal: direction },
5566
5570
  popupAlign: { vertical: 'top', horizontal: direction },
@@ -5569,7 +5573,7 @@ class SinglePopupService {
5569
5573
  content: template,
5570
5574
  positionMode: "absolute"
5571
5575
  });
5572
- this.renderer.setAttribute(this.popupRef.popupElement, 'dir', this.localization.rtl ? 'rtl' : 'ltr');
5576
+ this.renderer.setAttribute(this.popupRef.popupElement, 'dir', this.ctx.localization.rtl ? 'rtl' : 'ltr');
5573
5577
  this.attachClose(anchor);
5574
5578
  }
5575
5579
  const popupEl = (_a = this.popupRef) === null || _a === void 0 ? void 0 : _a.popupElement;
@@ -5628,11 +5632,11 @@ class SinglePopupService {
5628
5632
  });
5629
5633
  }
5630
5634
  }
5631
- SinglePopupService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SinglePopupService, deps: [{ token: i1$2.PopupService }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: ScrollSyncService }, { token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Injectable });
5635
+ SinglePopupService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SinglePopupService, deps: [{ token: i1$2.PopupService }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: ScrollSyncService }, { token: ContextService }], target: i0.ɵɵFactoryTarget.Injectable });
5632
5636
  SinglePopupService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SinglePopupService });
5633
5637
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SinglePopupService, decorators: [{
5634
5638
  type: Injectable
5635
- }], ctorParameters: function () { return [{ type: i1$2.PopupService }, { type: i0.Renderer2 }, { type: i0.NgZone }, { type: ScrollSyncService }, { type: i1.LocalizationService }]; } });
5639
+ }], ctorParameters: function () { return [{ type: i1$2.PopupService }, { type: i0.Renderer2 }, { type: i0.NgZone }, { type: ScrollSyncService }, { type: ContextService }]; } });
5636
5640
 
5637
5641
  /* eslint-disable no-bitwise */
5638
5642
  /**
@@ -6710,13 +6714,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
6710
6714
  * @hidden
6711
6715
  */
6712
6716
  class PagerElementComponent {
6713
- constructor(localization, pagerContext, cd) {
6714
- this.localization = localization;
6717
+ constructor(ctx, pagerContext, cd) {
6718
+ this.ctx = ctx;
6715
6719
  this.pagerContext = pagerContext;
6716
6720
  this.cd = cd;
6717
6721
  this.total = this.pagerContext.total;
6718
6722
  this.skip = this.pagerContext.skip;
6719
6723
  this.pageSize = this.pagerContext.pageSize;
6724
+ this.caretAltLeftIcon = caretAltLeftIcon;
6725
+ this.caretAltToLeftIcon = caretAltToLeftIcon;
6726
+ this.caretAltRightIcon = caretAltRightIcon;
6727
+ this.caretAltToRightIcon = caretAltToRightIcon;
6720
6728
  /**
6721
6729
  * Sets the pager element sizing option.
6722
6730
  * @default `medium`
@@ -6752,7 +6760,7 @@ class PagerElementComponent {
6752
6760
  * @memberOf PagerElementComponent
6753
6761
  */
6754
6762
  textFor(key) {
6755
- return this.localization.get(key);
6763
+ return this.ctx.localization.get(key);
6756
6764
  }
6757
6765
  /**
6758
6766
  * @hidden
@@ -6772,20 +6780,32 @@ class PagerElementComponent {
6772
6780
  */
6773
6781
  ngOnInit() {
6774
6782
  this.subscriptions = this.pagerContext.changes.subscribe(this.onChanges.bind(this));
6775
- this.subscriptions.add(this.localization.changes.subscribe(() => this.cd.markForCheck()));
6783
+ this.subscriptions.add(this.ctx.localization.changes.subscribe(() => this.cd.markForCheck()));
6776
6784
  }
6777
6785
  ngOnDestroy() {
6778
6786
  if (this.subscriptions) {
6779
6787
  this.subscriptions.unsubscribe();
6780
6788
  }
6781
6789
  }
6790
+ get prevArrowIcons() {
6791
+ return !this.ctx.localization.rtl ? ['caret-alt-to-left', 'caret-alt-left'] : ['caret-alt-to-right', 'caret-alt-right'];
6792
+ }
6793
+ get prevArrowSVGIcons() {
6794
+ return !this.ctx.localization.rtl ? [this.caretAltToLeftIcon, this.caretAltLeftIcon] : [this.caretAltToRightIcon, this.caretAltRightIcon];
6795
+ }
6796
+ get nextArrowIcons() {
6797
+ return !this.ctx.localization.rtl ? ['caret-alt-right', 'caret-alt-to-right'] : ['caret-alt-left', 'caret-alt-to-left'];
6798
+ }
6799
+ get nextArrowSVGIcons() {
6800
+ return !this.ctx.localization.rtl ? [this.caretAltRightIcon, this.caretAltToRightIcon] : [this.caretAltLeftIcon, this.caretAltToLeftIcon];
6801
+ }
6782
6802
  }
6783
- PagerElementComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerElementComponent, deps: [{ token: i1.LocalizationService }, { token: PagerContextService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
6803
+ PagerElementComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerElementComponent, deps: [{ token: ContextService }, { token: PagerContextService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
6784
6804
  PagerElementComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: PagerElementComponent, inputs: { size: "size" }, ngImport: i0 });
6785
6805
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerElementComponent, decorators: [{
6786
6806
  type: Directive,
6787
6807
  args: [{}]
6788
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: PagerContextService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { size: [{
6808
+ }], ctorParameters: function () { return [{ type: ContextService }, { type: PagerContextService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { size: [{
6789
6809
  type: Input
6790
6810
  }] } });
6791
6811
 
@@ -6793,11 +6813,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
6793
6813
  * Displays buttons for navigating to the first and to the previous page ([see example](slug:pager_template_grid#toc-using-built-in-pager-components)).
6794
6814
  */
6795
6815
  class PagerPrevButtonsComponent extends PagerElementComponent {
6796
- constructor(localization, pagerContext, cd, navigationService) {
6797
- super(localization, pagerContext, cd);
6816
+ constructor(ctx, pagerContext, cd, navigationService) {
6817
+ super(ctx, pagerContext, cd);
6798
6818
  this.navigationService = navigationService;
6799
- this.caretAltLeftIcon = caretAltLeftIcon;
6800
- this.caretAltToLeftIcon = caretAltToLeftIcon;
6801
6819
  }
6802
6820
  /**
6803
6821
  * @hidden
@@ -6816,7 +6834,7 @@ class PagerPrevButtonsComponent extends PagerElementComponent {
6816
6834
  this.cd.markForCheck();
6817
6835
  }
6818
6836
  }
6819
- PagerPrevButtonsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerPrevButtonsComponent, deps: [{ token: i1.LocalizationService }, { token: PagerContextService }, { token: i0.ChangeDetectorRef }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Component });
6837
+ PagerPrevButtonsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerPrevButtonsComponent, deps: [{ token: ContextService }, { token: PagerContextService }, { token: i0.ChangeDetectorRef }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Component });
6820
6838
  PagerPrevButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: PagerPrevButtonsComponent, selector: "kendo-pager-prev-buttons", usesInheritance: true, ngImport: i0, template: `
6821
6839
  <button
6822
6840
  [kendoGridFocusable]="!disabled"
@@ -6826,8 +6844,8 @@ PagerPrevButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.
6826
6844
  [attr.aria-label]="textFor('pagerFirstPage')"
6827
6845
  (click)="currentPage !== 1 ? changePage(0) : false"
6828
6846
  role="button"
6829
- icon="caret-alt-to-left"
6830
- [svgIcon]="caretAltToLeftIcon"
6847
+ [icon]="prevArrowIcons[0]"
6848
+ [svgIcon]="prevArrowSVGIcons[0]"
6831
6849
  class="k-pager-nav k-pager-first"
6832
6850
  [disabled]="disabled"
6833
6851
  fillMode="flat"
@@ -6840,8 +6858,8 @@ PagerPrevButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.
6840
6858
  type="button"
6841
6859
  class="k-pager-nav"
6842
6860
  [disabled]="disabled"
6843
- icon="caret-alt-left"
6844
- [svgIcon]="caretAltLeftIcon"
6861
+ [icon]="prevArrowIcons[1]"
6862
+ [svgIcon]="prevArrowSVGIcons[1]"
6845
6863
  fillMode="flat"
6846
6864
  rounded="none"
6847
6865
  [size]="size"
@@ -6864,8 +6882,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
6864
6882
  [attr.aria-label]="textFor('pagerFirstPage')"
6865
6883
  (click)="currentPage !== 1 ? changePage(0) : false"
6866
6884
  role="button"
6867
- icon="caret-alt-to-left"
6868
- [svgIcon]="caretAltToLeftIcon"
6885
+ [icon]="prevArrowIcons[0]"
6886
+ [svgIcon]="prevArrowSVGIcons[0]"
6869
6887
  class="k-pager-nav k-pager-first"
6870
6888
  [disabled]="disabled"
6871
6889
  fillMode="flat"
@@ -6878,8 +6896,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
6878
6896
  type="button"
6879
6897
  class="k-pager-nav"
6880
6898
  [disabled]="disabled"
6881
- icon="caret-alt-left"
6882
- [svgIcon]="caretAltLeftIcon"
6899
+ [icon]="prevArrowIcons[1]"
6900
+ [svgIcon]="prevArrowSVGIcons[1]"
6883
6901
  fillMode="flat"
6884
6902
  rounded="none"
6885
6903
  [size]="size"
@@ -6889,14 +6907,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
6889
6907
  </button>
6890
6908
  `
6891
6909
  }]
6892
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: PagerContextService }, { type: i0.ChangeDetectorRef }, { type: NavigationService }]; } });
6910
+ }], ctorParameters: function () { return [{ type: ContextService }, { type: PagerContextService }, { type: i0.ChangeDetectorRef }, { type: NavigationService }]; } });
6893
6911
 
6894
6912
  /**
6895
6913
  * Displays numeric buttons to enable navigation between the pages ([see example](slug:pager_template_grid#toc-using-built-in-pager-components)).
6896
6914
  */
6897
6915
  class PagerNumericButtonsComponent extends PagerElementComponent {
6898
- constructor(localization, cd, pagerContext) {
6899
- super(localization, pagerContext, cd);
6916
+ constructor(ctx, cd, pagerContext) {
6917
+ super(ctx, pagerContext, cd);
6900
6918
  this.pagerContext = pagerContext;
6901
6919
  this.numbersWrapClass = true;
6902
6920
  }
@@ -6967,7 +6985,7 @@ class PagerNumericButtonsComponent extends PagerElementComponent {
6967
6985
  this.cd.markForCheck();
6968
6986
  }
6969
6987
  }
6970
- PagerNumericButtonsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerNumericButtonsComponent, deps: [{ token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: PagerContextService }], target: i0.ɵɵFactoryTarget.Component });
6988
+ PagerNumericButtonsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerNumericButtonsComponent, deps: [{ token: ContextService }, { token: i0.ChangeDetectorRef }, { token: PagerContextService }], target: i0.ɵɵFactoryTarget.Component });
6971
6989
  PagerNumericButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: PagerNumericButtonsComponent, selector: "kendo-pager-numeric-buttons", inputs: { buttonCount: "buttonCount" }, host: { properties: { "class.k-pager-numbers-wrap": "this.numbersWrapClass" } }, usesInheritance: true, ngImport: i0, template: `
6972
6990
  <select
6973
6991
  class="k-dropdown-list k-dropdown k-picker k-picker-solid k-rounded-md"
@@ -7120,7 +7138,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
7120
7138
  </div>
7121
7139
  `
7122
7140
  }]
7123
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: PagerContextService }]; }, propDecorators: { numbersWrapClass: [{
7141
+ }], ctorParameters: function () { return [{ type: ContextService }, { type: i0.ChangeDetectorRef }, { type: PagerContextService }]; }, propDecorators: { numbersWrapClass: [{
7124
7142
  type: HostBinding,
7125
7143
  args: ['class.k-pager-numbers-wrap']
7126
7144
  }], buttonCount: [{
@@ -7151,8 +7169,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
7151
7169
  * Displays an input element which allows the typing and rendering of page numbers ([see example](slug:pager_template_grid#toc-using-built-in-pager-components)).
7152
7170
  */
7153
7171
  class PagerInputComponent extends PagerElementComponent {
7154
- constructor(localization, pagerContext, zone, navigationService, cd) {
7155
- super(localization, pagerContext, cd);
7172
+ constructor(ctx, pagerContext, zone, navigationService, cd) {
7173
+ super(ctx, pagerContext, cd);
7156
7174
  this.pagerContext = pagerContext;
7157
7175
  this.zone = zone;
7158
7176
  this.navigationService = navigationService;
@@ -7210,7 +7228,7 @@ class PagerInputComponent extends PagerElementComponent {
7210
7228
  this.cd.markForCheck();
7211
7229
  }
7212
7230
  }
7213
- PagerInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerInputComponent, deps: [{ token: i1.LocalizationService }, { token: PagerContextService }, { token: i0.NgZone }, { token: NavigationService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
7231
+ PagerInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerInputComponent, deps: [{ token: ContextService }, { token: PagerContextService }, { token: i0.NgZone }, { token: NavigationService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
7214
7232
  PagerInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: PagerInputComponent, selector: "kendo-pager-input", viewQueries: [{ propertyName: "numericInput", first: true, predicate: NumericTextBoxComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: `
7215
7233
  <span class="k-pager-input k-label">
7216
7234
  {{textFor('pagerPage')}}
@@ -7266,7 +7284,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
7266
7284
  </span>
7267
7285
  `
7268
7286
  }]
7269
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: PagerContextService }, { type: i0.NgZone }, { type: NavigationService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { numericInput: [{
7287
+ }], ctorParameters: function () { return [{ type: ContextService }, { type: PagerContextService }, { type: i0.NgZone }, { type: NavigationService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { numericInput: [{
7270
7288
  type: ViewChild,
7271
7289
  args: [NumericTextBoxComponent, { static: false }]
7272
7290
  }] } });
@@ -7275,11 +7293,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
7275
7293
  * Displays buttons for navigating to the next and to the last page ([see example](slug:pager_template_grid#toc-using-built-in-pager-components)).
7276
7294
  */
7277
7295
  class PagerNextButtonsComponent extends PagerElementComponent {
7278
- constructor(localization, pagerContext, cd, navigationService) {
7279
- super(localization, pagerContext, cd);
7296
+ constructor(ctx, pagerContext, cd, navigationService) {
7297
+ super(ctx, pagerContext, cd);
7280
7298
  this.navigationService = navigationService;
7281
- this.caretAltRightIcon = caretAltRightIcon;
7282
- this.caretAltToRightIcon = caretAltToRightIcon;
7283
7299
  }
7284
7300
  /**
7285
7301
  * @hidden
@@ -7298,15 +7314,15 @@ class PagerNextButtonsComponent extends PagerElementComponent {
7298
7314
  this.cd.markForCheck();
7299
7315
  }
7300
7316
  }
7301
- PagerNextButtonsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerNextButtonsComponent, deps: [{ token: i1.LocalizationService }, { token: PagerContextService }, { token: i0.ChangeDetectorRef }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Component });
7317
+ PagerNextButtonsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerNextButtonsComponent, deps: [{ token: ContextService }, { token: PagerContextService }, { token: i0.ChangeDetectorRef }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Component });
7302
7318
  PagerNextButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: PagerNextButtonsComponent, selector: "kendo-pager-next-buttons", usesInheritance: true, ngImport: i0, template: `
7303
7319
  <button
7304
7320
  kendoButton
7305
7321
  [kendoGridFocusable]="!disabled"
7306
7322
  type="button"
7307
7323
  [size]="size"
7308
- icon="caret-alt-right"
7309
- [svgIcon]="caretAltRightIcon"
7324
+ [icon]="nextArrowIcons[0]"
7325
+ [svgIcon]="nextArrowSVGIcons[0]"
7310
7326
  fillMode="flat"
7311
7327
  rounded="none"
7312
7328
  class="k-pager-nav"
@@ -7320,8 +7336,8 @@ PagerNextButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.
7320
7336
  [kendoGridFocusable]="!disabled"
7321
7337
  type="button"
7322
7338
  [size]="size"
7323
- icon="caret-alt-to-right"
7324
- [svgIcon]="caretAltToRightIcon"
7339
+ [icon]="nextArrowIcons[1]"
7340
+ [svgIcon]="nextArrowSVGIcons[1]"
7325
7341
  fillMode="flat"
7326
7342
  rounded="none"
7327
7343
  class="k-pager-nav k-pager-last"
@@ -7342,8 +7358,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
7342
7358
  [kendoGridFocusable]="!disabled"
7343
7359
  type="button"
7344
7360
  [size]="size"
7345
- icon="caret-alt-right"
7346
- [svgIcon]="caretAltRightIcon"
7361
+ [icon]="nextArrowIcons[0]"
7362
+ [svgIcon]="nextArrowSVGIcons[0]"
7347
7363
  fillMode="flat"
7348
7364
  rounded="none"
7349
7365
  class="k-pager-nav"
@@ -7357,8 +7373,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
7357
7373
  [kendoGridFocusable]="!disabled"
7358
7374
  type="button"
7359
7375
  [size]="size"
7360
- icon="caret-alt-to-right"
7361
- [svgIcon]="caretAltToRightIcon"
7376
+ [icon]="nextArrowIcons[1]"
7377
+ [svgIcon]="nextArrowSVGIcons[1]"
7362
7378
  fillMode="flat"
7363
7379
  rounded="none"
7364
7380
  class="k-pager-nav k-pager-last"
@@ -7369,15 +7385,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
7369
7385
  </button>
7370
7386
  `
7371
7387
  }]
7372
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: PagerContextService }, { type: i0.ChangeDetectorRef }, { type: NavigationService }]; } });
7388
+ }], ctorParameters: function () { return [{ type: ContextService }, { type: PagerContextService }, { type: i0.ChangeDetectorRef }, { type: NavigationService }]; } });
7373
7389
 
7374
7390
  // eslint-disable no-access-missing-member
7375
7391
  /**
7376
7392
  * Displays information about the current page and the total number of records ([see example](slug:pager_template_grid#toc-using-built-in-pager-components)).
7377
7393
  */
7378
7394
  class PagerInfoComponent extends PagerElementComponent {
7379
- constructor(localization, cd, pagerContext) {
7380
- super(localization, pagerContext, cd);
7395
+ constructor(ctx, cd, pagerContext) {
7396
+ super(ctx, pagerContext, cd);
7381
7397
  this.pagerContext = pagerContext;
7382
7398
  }
7383
7399
  /**
@@ -7419,7 +7435,7 @@ class PagerInfoComponent extends PagerElementComponent {
7419
7435
  this.cd.markForCheck();
7420
7436
  }
7421
7437
  }
7422
- PagerInfoComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerInfoComponent, deps: [{ token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: PagerContextService }], target: i0.ɵɵFactoryTarget.Component });
7438
+ PagerInfoComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerInfoComponent, deps: [{ token: ContextService }, { token: i0.ChangeDetectorRef }, { token: PagerContextService }], target: i0.ɵɵFactoryTarget.Component });
7423
7439
  PagerInfoComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: PagerInfoComponent, selector: "kendo-pager-info", host: { properties: { "class.k-pager-info": "this.classes", "class.k-label": "this.classes" } }, usesInheritance: true, ngImport: i0, template: `{{currentPageText}} - {{maxItems}} {{textFor('pagerOf')}} {{total}} {{textFor('pagerItems')}}`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
7424
7440
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerInfoComponent, decorators: [{
7425
7441
  type: Component,
@@ -7428,7 +7444,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
7428
7444
  selector: 'kendo-pager-info',
7429
7445
  template: `{{currentPageText}} - {{maxItems}} {{textFor('pagerOf')}} {{total}} {{textFor('pagerItems')}}`
7430
7446
  }]
7431
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: PagerContextService }]; }, propDecorators: { classes: [{
7447
+ }], ctorParameters: function () { return [{ type: ContextService }, { type: i0.ChangeDetectorRef }, { type: PagerContextService }]; }, propDecorators: { classes: [{
7432
7448
  type: HostBinding,
7433
7449
  args: ["class.k-pager-info"]
7434
7450
  }, {
@@ -7468,8 +7484,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
7468
7484
  * Displays a drop-down list for the page size selection ([see example](slug:pager_template_grid#toc-using-built-in-pager-components)).
7469
7485
  */
7470
7486
  class PagerPageSizesComponent extends PagerElementComponent {
7471
- constructor(localization, cd, pagerContext, navigationService) {
7472
- super(localization, pagerContext, cd);
7487
+ constructor(ctx, cd, pagerContext, navigationService) {
7488
+ super(ctx, pagerContext, cd);
7473
7489
  this.pagerContext = pagerContext;
7474
7490
  this.navigationService = navigationService;
7475
7491
  this._pageSizes = [];
@@ -7542,7 +7558,7 @@ class PagerPageSizesComponent extends PagerElementComponent {
7542
7558
  this.cd.markForCheck();
7543
7559
  }
7544
7560
  }
7545
- PagerPageSizesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerPageSizesComponent, deps: [{ token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: PagerContextService }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Component });
7561
+ PagerPageSizesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerPageSizesComponent, deps: [{ token: ContextService }, { token: i0.ChangeDetectorRef }, { token: PagerContextService }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Component });
7546
7562
  PagerPageSizesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: PagerPageSizesComponent, selector: "kendo-pager-page-sizes", inputs: { pageSizes: "pageSizes" }, host: { properties: { "class.k-pager-sizes": "this.classes", "class.k-label": "this.classes" } }, usesInheritance: true, ngImport: i0, template: `
7547
7563
  <kendo-dropdownlist
7548
7564
  class="k-dropdown"
@@ -7558,7 +7574,7 @@ PagerPageSizesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
7558
7574
  [value]="pageSize"
7559
7575
  (valueChange)="pageSizeChange($event)"></kendo-dropdownlist>
7560
7576
  <kendo-label [for]="dropdownlist" [text]="textFor('pagerItemsPerPage')"></kendo-label>
7561
- `, isInline: true, components: [{ type: i1$4.DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["iconClass", "loading", "data", "value", "textField", "valueField", "adaptiveMode", "title", "subtitle", "popupSettings", "listHeight", "defaultItem", "disabled", "itemDisabled", "readonly", "filterable", "virtual", "ignoreCase", "delay", "valuePrimitive", "tabindex", "tabIndex", "size", "rounded", "fillMode", "id"], outputs: ["valueChange", "filterChange", "selectionChange", "open", "opened", "close", "closed", "focus", "blur"], exportAs: ["kendoDropDownList"] }, { type: i5.LabelComponent, selector: "kendo-label", inputs: ["text", "for", "optional"], exportAs: ["kendoLabel"] }], directives: [{ type: PagerDropDownListDirective, selector: "[kendoGridPagerDropDown]" }, { type: FocusableDirective, selector: "[kendoGridFocusable],\n [kendoGridEditCommand],\n [kendoGridRemoveCommand],\n [kendoGridSaveCommand],\n [kendoGridCancelCommand],\n [kendoGridSelectionCheckbox]\n ", inputs: ["kendoGridFocusable"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
7577
+ `, isInline: true, components: [{ type: i1$4.DropDownListComponent, selector: "kendo-dropdownlist", inputs: ["iconClass", "loading", "data", "value", "textField", "valueField", "adaptiveMode", "title", "subtitle", "popupSettings", "listHeight", "defaultItem", "disabled", "itemDisabled", "readonly", "filterable", "virtual", "ignoreCase", "delay", "valuePrimitive", "tabindex", "tabIndex", "size", "rounded", "fillMode", "id"], outputs: ["valueChange", "filterChange", "selectionChange", "open", "opened", "close", "closed", "focus", "blur"], exportAs: ["kendoDropDownList"] }, { type: i5.LabelComponent, selector: "kendo-label", inputs: ["text", "for", "optional", "labelCssStyle", "labelCssClass"], exportAs: ["kendoLabel"] }], directives: [{ type: PagerDropDownListDirective, selector: "[kendoGridPagerDropDown]" }, { type: FocusableDirective, selector: "[kendoGridFocusable],\n [kendoGridEditCommand],\n [kendoGridRemoveCommand],\n [kendoGridSaveCommand],\n [kendoGridCancelCommand],\n [kendoGridSelectionCheckbox]\n ", inputs: ["kendoGridFocusable"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
7562
7578
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerPageSizesComponent, decorators: [{
7563
7579
  type: Component,
7564
7580
  args: [{
@@ -7581,7 +7597,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
7581
7597
  <kendo-label [for]="dropdownlist" [text]="textFor('pagerItemsPerPage')"></kendo-label>
7582
7598
  `
7583
7599
  }]
7584
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: PagerContextService }, { type: NavigationService }]; }, propDecorators: { pageSizes: [{
7600
+ }], ctorParameters: function () { return [{ type: ContextService }, { type: i0.ChangeDetectorRef }, { type: PagerContextService }, { type: NavigationService }]; }, propDecorators: { pageSizes: [{
7585
7601
  type: Input
7586
7602
  }], classes: [{
7587
7603
  type: HostBinding,
@@ -7595,13 +7611,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
7595
7611
  * @hidden
7596
7612
  */
7597
7613
  class PagerComponent {
7598
- constructor(pagerContext, navigationService, element, renderer, zone, localizationService, cellContext, focusRoot, focusGroup) {
7614
+ constructor(pagerContext, navigationService, element, renderer, zone, ctx, cellContext, focusRoot, focusGroup) {
7599
7615
  this.pagerContext = pagerContext;
7600
7616
  this.navigationService = navigationService;
7601
7617
  this.element = element;
7602
7618
  this.renderer = renderer;
7603
7619
  this.zone = zone;
7604
- this.localizationService = localizationService;
7620
+ this.ctx = ctx;
7605
7621
  this.cellContext = cellContext;
7606
7622
  this.focusRoot = focusRoot;
7607
7623
  this.focusGroup = focusGroup;
@@ -7660,7 +7676,7 @@ class PagerComponent {
7660
7676
  return this.navigationService.pagerEnabled ? this.pagerLabel : undefined;
7661
7677
  }
7662
7678
  get pagerLabel() {
7663
- const localizationMsg = this.localizationService.get('pagerLabel') || '';
7679
+ const localizationMsg = this.ctx.localization.get('pagerLabel') || '';
7664
7680
  return replaceMessagePlaceholder(replaceMessagePlaceholder(localizationMsg, 'currentPage', this.currentPage.toString()), 'totalPages', this.totalPages.toString());
7665
7681
  }
7666
7682
  get focusTrapTabIndex() {
@@ -7809,7 +7825,7 @@ class PagerComponent {
7809
7825
  }
7810
7826
  }
7811
7827
  }
7812
- PagerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerComponent, deps: [{ token: PagerContextService }, { token: NavigationService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: i1.LocalizationService }, { token: CELL_CONTEXT, optional: true }, { token: FocusRoot }, { token: FocusGroup }], target: i0.ɵɵFactoryTarget.Component });
7828
+ PagerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PagerComponent, deps: [{ token: PagerContextService }, { token: NavigationService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.NgZone }, { token: ContextService }, { token: CELL_CONTEXT, optional: true }, { token: FocusRoot }, { token: FocusGroup }], target: i0.ɵɵFactoryTarget.Component });
7813
7829
  PagerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: PagerComponent, selector: "kendo-pager", inputs: { total: "total", skip: "skip", pageSize: "pageSize", options: "options", size: "size", template: "template" }, outputs: { pageChange: "pageChange" }, host: { listeners: { "focusin": "onFocusIn($event)", "focusout": "onFocusOut()", "keydown.escape": "onEscape()", "keydown.enter": "onEnter($event)", "keydown.arrowleft": "navigateToPreviousPage($event)", "keydown.pageup": "navigateToPreviousPage($event)", "keydown.arrowright": "navigateToNextPage($event)", "keydown.pagedown": "navigateToNextPage($event)", "keydown.home": "navigateToFirstPage($event)", "keydown.end": "navigateToLastPage($event)" }, properties: { "class.k-pager-wrap": "this.pagerWrapClass", "class.k-grid-pager": "this.gridPagerClass", "class.k-pager-sm": "this.sizeSmallClass", "class.k-pager-md": "this.sizeMediumClass", "class.k-focus": "this.isFocused", "attr.aria-label": "this.pagerAriaLabel" } }, providers: [{
7814
7830
  provide: FOCUS_ROOT_ACTIVE,
7815
7831
  useValue: true
@@ -7917,7 +7933,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
7917
7933
  `
7918
7934
  }]
7919
7935
  }], ctorParameters: function () {
7920
- return [{ type: PagerContextService }, { type: NavigationService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.NgZone }, { type: i1.LocalizationService }, { type: undefined, decorators: [{
7936
+ return [{ type: PagerContextService }, { type: NavigationService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.NgZone }, { type: ContextService }, { type: undefined, decorators: [{
7921
7937
  type: Optional
7922
7938
  }, {
7923
7939
  type: Inject,
@@ -8174,11 +8190,11 @@ const indicatorRules = or(overSameTarget, and(overLastTarget, isLastGroup));
8174
8190
  * @hidden
8175
8191
  */
8176
8192
  class GroupPanelComponent {
8177
- constructor(hint, cue, groupInfoService, localization, cd) {
8193
+ constructor(hint, cue, groupInfoService, ctx, cd) {
8178
8194
  this.hint = hint;
8179
8195
  this.cue = cue;
8180
8196
  this.groupInfoService = groupInfoService;
8181
- this.localization = localization;
8197
+ this.ctx = ctx;
8182
8198
  this.cd = cd;
8183
8199
  this.change = new EventEmitter();
8184
8200
  this.groups = [];
@@ -8193,14 +8209,14 @@ class GroupPanelComponent {
8193
8209
  this.emptyText = value;
8194
8210
  }
8195
8211
  get text() {
8196
- return this.emptyText ? this.emptyText : this.localization.get('groupPanelEmpty');
8212
+ return this.emptyText ? this.emptyText : this.ctx.localization.get('groupPanelEmpty');
8197
8213
  }
8198
8214
  ngAfterViewInit() {
8199
8215
  this.subscription.add(observe(this.dropTargets)
8200
8216
  .subscribe(this.attachTargets.bind(this)));
8201
8217
  }
8202
8218
  ngOnInit() {
8203
- this.subscription.add(this.localization.changes.subscribe(() => this.cd.markForCheck()));
8219
+ this.subscription.add(this.ctx.localization.changes.subscribe(() => this.cd.markForCheck()));
8204
8220
  }
8205
8221
  ngDoCheck() {
8206
8222
  const currentTitles = this.groups.map(group => this.groupInfoService.groupTitle(group));
@@ -8218,7 +8234,7 @@ class GroupPanelComponent {
8218
8234
  }
8219
8235
  }
8220
8236
  messageFor(token) {
8221
- return this.localization.get(token);
8237
+ return this.ctx.localization.get(token);
8222
8238
  }
8223
8239
  getTitle(group) {
8224
8240
  return this.messageFor(group.dir === 'desc' ? 'sortedDescending' : 'sortedAscending');
@@ -8272,7 +8288,7 @@ class GroupPanelComponent {
8272
8288
  enter({ draggable, target }) {
8273
8289
  this.hint.enable();
8274
8290
  let before = target.context.lastTarget || isTargetBefore(draggable.element.nativeElement, target.element.nativeElement);
8275
- if (this.localization.rtl) {
8291
+ if (this.ctx.localization.rtl) {
8276
8292
  before = !before;
8277
8293
  }
8278
8294
  this.cue.position(position(target.element.nativeElement, before));
@@ -8287,7 +8303,7 @@ class GroupPanelComponent {
8287
8303
  this.insert(field, index);
8288
8304
  }
8289
8305
  }
8290
- GroupPanelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GroupPanelComponent, deps: [{ token: DragHintService }, { token: DropCueService }, { token: GroupInfoService }, { token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
8306
+ GroupPanelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GroupPanelComponent, deps: [{ token: DragHintService }, { token: DropCueService }, { token: GroupInfoService }, { token: ContextService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
8291
8307
  GroupPanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: GroupPanelComponent, selector: "kendo-grid-group-panel", inputs: { text: "text", navigable: "navigable", groups: "groups" }, outputs: { change: "change" }, host: { properties: { "class.k-grouping-header": "this.groupHeaderClass" } }, viewQueries: [{ propertyName: "dropTargets", predicate: DropTargetDirective, descendants: true }], ngImport: i0, template: `
8292
8308
  <div
8293
8309
  *ngIf="groups.length === 0"
@@ -8388,7 +8404,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
8388
8404
  >&nbsp;</div>
8389
8405
  `
8390
8406
  }]
8391
- }], ctorParameters: function () { return [{ type: DragHintService }, { type: DropCueService }, { type: GroupInfoService }, { type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { change: [{
8407
+ }], ctorParameters: function () { return [{ type: DragHintService }, { type: DropCueService }, { type: GroupInfoService }, { type: ContextService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { change: [{
8392
8408
  type: Output
8393
8409
  }], groupHeaderClass: [{
8394
8410
  type: HostBinding,
@@ -8564,12 +8580,12 @@ const toJSON = (xs) => xs.map(x => x.toJSON());
8564
8580
  * @hidden
8565
8581
  */
8566
8582
  class FilterOperatorBase {
8567
- constructor(operator, localization) {
8583
+ constructor(operator, ctx) {
8568
8584
  this.operator = operator;
8569
- this.localization = localization;
8570
- this.messages = operatorTexts(this.localization);
8585
+ this.ctx = ctx;
8586
+ this.messages = operatorTexts(this.ctx.localization);
8571
8587
  this._text = this.messages[this.operator];
8572
- this.subscription = this.localization.changes.subscribe(this.refreshText.bind(this));
8588
+ this.subscription = this.ctx.localization.changes.subscribe(this.refreshText.bind(this));
8573
8589
  }
8574
8590
  /**
8575
8591
  * The text that will be displayed in the drop-down list.
@@ -8599,13 +8615,13 @@ class FilterOperatorBase {
8599
8615
  }
8600
8616
  refreshText() {
8601
8617
  const update = this._text === this.messages[this.operator];
8602
- this.messages = operatorTexts(this.localization);
8618
+ this.messages = operatorTexts(this.ctx.localization);
8603
8619
  if (update) {
8604
8620
  this._text = this.messages[this.operator];
8605
8621
  }
8606
8622
  }
8607
8623
  }
8608
- FilterOperatorBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FilterOperatorBase, deps: [{ token: 'filterOperator' }, { token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
8624
+ FilterOperatorBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FilterOperatorBase, deps: [{ token: 'filterOperator' }, { token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
8609
8625
  FilterOperatorBase.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: FilterOperatorBase, selector: "kendo-grid-filter-operator-base", inputs: { text: "text" }, ngImport: i0, template: ``, isInline: true });
8610
8626
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FilterOperatorBase, decorators: [{
8611
8627
  type: Component,
@@ -8617,7 +8633,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
8617
8633
  return [{ type: undefined, decorators: [{
8618
8634
  type: Inject,
8619
8635
  args: ['filterOperator']
8620
- }] }, { type: i1.LocalizationService }];
8636
+ }] }, { type: ContextService }];
8621
8637
  }, propDecorators: { text: [{
8622
8638
  type: Input
8623
8639
  }] } });
@@ -8903,9 +8919,9 @@ const stringOperators$1 = localizeOperators({
8903
8919
  * Represents a base string filter component.
8904
8920
  */
8905
8921
  class StringFilterComponent extends BaseFilterCellComponent {
8906
- constructor(filterService, localization) {
8922
+ constructor(filterService, ctx) {
8907
8923
  super(filterService);
8908
- this.localization = localization;
8924
+ this.ctx = ctx;
8909
8925
  /**
8910
8926
  * The default filter operator.
8911
8927
  * @type {string}
@@ -8930,7 +8946,7 @@ class StringFilterComponent extends BaseFilterCellComponent {
8930
8946
  return this.currentFilter ? this.currentFilter.operator : this.operator;
8931
8947
  }
8932
8948
  ngOnInit() {
8933
- this.subscription = this.localization.changes.subscribe(this.localizationChange.bind(this));
8949
+ this.subscription = this.ctx.localization.changes.subscribe(this.localizationChange.bind(this));
8934
8950
  }
8935
8951
  ngOnDestroy() {
8936
8952
  if (this.subscription) {
@@ -8939,18 +8955,18 @@ class StringFilterComponent extends BaseFilterCellComponent {
8939
8955
  super.ngOnDestroy();
8940
8956
  }
8941
8957
  localizationChange() {
8942
- this.defaultOperators = stringOperators$1(this.localization);
8958
+ this.defaultOperators = stringOperators$1(this.ctx.localization);
8943
8959
  if (this.operatorList.length) {
8944
8960
  this.operators = toJSON(this.operatorList.toArray());
8945
8961
  }
8946
8962
  }
8947
8963
  }
8948
- StringFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: StringFilterComponent, deps: [{ token: FilterService }, { token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Directive });
8964
+ StringFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: StringFilterComponent, deps: [{ token: FilterService }, { token: ContextService }], target: i0.ɵɵFactoryTarget.Directive });
8949
8965
  StringFilterComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: StringFilterComponent, inputs: { column: "column", filter: "filter", operator: "operator" }, usesInheritance: true, ngImport: i0 });
8950
8966
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: StringFilterComponent, decorators: [{
8951
8967
  type: Directive,
8952
8968
  args: [{}]
8953
- }], ctorParameters: function () { return [{ type: FilterService }, { type: i1.LocalizationService }]; }, propDecorators: { column: [{
8969
+ }], ctorParameters: function () { return [{ type: FilterService }, { type: ContextService }]; }, propDecorators: { column: [{
8954
8970
  type: Input
8955
8971
  }], filter: [{
8956
8972
  type: Input
@@ -9189,9 +9205,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
9189
9205
  * @hidden
9190
9206
  */
9191
9207
  class FilterMenuInputWrapperComponent extends FilterInputWrapperComponent {
9192
- constructor(localizationService) {
9208
+ constructor(ctx) {
9193
9209
  super(null);
9194
- this.localizationService = localizationService;
9210
+ this.ctx = ctx;
9195
9211
  }
9196
9212
  /**
9197
9213
  * @hidden
@@ -9200,7 +9216,10 @@ class FilterMenuInputWrapperComponent extends FilterInputWrapperComponent {
9200
9216
  return false;
9201
9217
  }
9202
9218
  ngAfterViewInit() {
9203
- if (this.isFirstDropDown && this.filterService && this.filterService.menuTabbingService) {
9219
+ var _a;
9220
+ const shouldFocusFirstFocusable = this.isFirstDropDown && this.filterService && this.filterService.menuTabbingService;
9221
+ const isTabbedInterface = (_a = this.menuTabbingService) === null || _a === void 0 ? void 0 : _a.isTabbedInterface;
9222
+ if (shouldFocusFirstFocusable && !isTabbedInterface) {
9204
9223
  this.filterService.menuTabbingService.firstFocusable = this.firstOperatorDropDown;
9205
9224
  this.firstOperatorDropDown.focus();
9206
9225
  }
@@ -9246,12 +9265,12 @@ class FilterMenuInputWrapperComponent extends FilterInputWrapperComponent {
9246
9265
  }
9247
9266
  }
9248
9267
  get filterMenuDropDownLabel() {
9249
- const localizationMsg = this.localizationService.get('filterMenuOperatorsDropDownLabel') || '';
9268
+ const localizationMsg = this.ctx.localization.get('filterMenuOperatorsDropDownLabel') || '';
9250
9269
  const columnName = this.column ? this.column.title || this.column.field : '';
9251
9270
  return replaceMessagePlaceholder(localizationMsg, 'columnName', columnName);
9252
9271
  }
9253
9272
  }
9254
- FilterMenuInputWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FilterMenuInputWrapperComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
9273
+ FilterMenuInputWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FilterMenuInputWrapperComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
9255
9274
  FilterMenuInputWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: FilterMenuInputWrapperComponent, selector: "kendo-grid-filter-menu-input-wrapper", inputs: { filterService: "filterService", isFirstDropDown: "isFirstDropDown", menuTabbingService: "menuTabbingService", currentFilter: "currentFilter" }, viewQueries: [{ propertyName: "firstOperatorDropDown", first: true, predicate: DropDownListComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: `
9256
9275
  <kendo-dropdownlist
9257
9276
  kendoFilterMenuDropDown
@@ -9285,7 +9304,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
9285
9304
  <ng-content></ng-content>
9286
9305
  `
9287
9306
  }]
9288
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; }, propDecorators: { filterService: [{
9307
+ }], ctorParameters: function () { return [{ type: ContextService }]; }, propDecorators: { filterService: [{
9289
9308
  type: Input
9290
9309
  }], isFirstDropDown: [{
9291
9310
  type: Input
@@ -9302,17 +9321,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
9302
9321
  * @hidden
9303
9322
  */
9304
9323
  class StringFilterMenuInputComponent {
9305
- constructor(localizationService) {
9306
- this.localizationService = localizationService;
9324
+ constructor(ctx) {
9325
+ this.ctx = ctx;
9307
9326
  this.operators = [];
9308
9327
  }
9309
9328
  get columnLabel() {
9310
- const localizationMsg = this.localizationService.get('filterInputLabel') || '';
9329
+ const localizationMsg = this.ctx.localization.get('filterInputLabel') || '';
9311
9330
  const columnName = this.column ? this.column.title || this.column.field : '';
9312
9331
  return replaceMessagePlaceholder(localizationMsg, 'columnName', columnName);
9313
9332
  }
9314
9333
  }
9315
- StringFilterMenuInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: StringFilterMenuInputComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
9334
+ StringFilterMenuInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: StringFilterMenuInputComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
9316
9335
  StringFilterMenuInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: StringFilterMenuInputComponent, selector: "kendo-grid-string-filter-menu-input", inputs: { operators: "operators", column: "column", filter: "filter", operator: "operator", currentFilter: "currentFilter", filterService: "filterService", isFirstDropDown: "isFirstDropDown", menuTabbingService: "menuTabbingService" }, ngImport: i0, template: `
9317
9336
  <kendo-grid-filter-menu-input-wrapper
9318
9337
  [column]="column"
@@ -9356,7 +9375,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
9356
9375
  </kendo-grid-filter-menu-input-wrapper>
9357
9376
  `
9358
9377
  }]
9359
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; }, propDecorators: { operators: [{
9378
+ }], ctorParameters: function () { return [{ type: ContextService }]; }, propDecorators: { operators: [{
9360
9379
  type: Input
9361
9380
  }], column: [{
9362
9381
  type: Input
@@ -9391,9 +9410,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
9391
9410
  * ```
9392
9411
  */
9393
9412
  class StringFilterMenuComponent extends StringFilterComponent {
9394
- constructor(localization) {
9395
- super(null, localization);
9396
- this.logicOperators = logicOperators(this.localization);
9413
+ constructor(ctx) {
9414
+ super(null, ctx);
9415
+ this.logicOperators = logicOperators(this.ctx.localization);
9397
9416
  /**
9398
9417
  * The current menu filter.
9399
9418
  * @type {CompositeFilterDescriptor}
@@ -9421,16 +9440,16 @@ class StringFilterMenuComponent extends StringFilterComponent {
9421
9440
  this.filter.logic = value;
9422
9441
  }
9423
9442
  get filterMenuDropDownLabel() {
9424
- const localizationMsg = this.localization.get('filterMenuLogicDropDownLabel') || '';
9443
+ const localizationMsg = this.ctx.localization.get('filterMenuLogicDropDownLabel') || '';
9425
9444
  const columnName = this.column ? this.column.title || this.column.field : '';
9426
9445
  return replaceMessagePlaceholder(localizationMsg, 'columnName', columnName);
9427
9446
  }
9428
9447
  localizationChange() {
9429
- this.logicOperators = logicOperators(this.localization);
9448
+ this.logicOperators = logicOperators(this.ctx.localization);
9430
9449
  super.localizationChange();
9431
9450
  }
9432
9451
  }
9433
- StringFilterMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: StringFilterMenuComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
9452
+ StringFilterMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: StringFilterMenuComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
9434
9453
  StringFilterMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: StringFilterMenuComponent, selector: "kendo-grid-string-filter-menu", inputs: { column: "column", filter: "filter", extra: "extra", filterService: "filterService", menuTabbingService: "menuTabbingService" }, host: { properties: { "class.k-filtercell": "this.hostClasses" } }, usesInheritance: true, ngImport: i0, template: `
9435
9454
  <kendo-grid-string-filter-menu-input
9436
9455
  [currentFilter]="firstFilter"
@@ -9498,7 +9517,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
9498
9517
  </kendo-grid-string-filter-menu-input>
9499
9518
  `
9500
9519
  }]
9501
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; }, propDecorators: { hostClasses: [{
9520
+ }], ctorParameters: function () { return [{ type: ContextService }]; }, propDecorators: { hostClasses: [{
9502
9521
  type: HostBinding,
9503
9522
  args: ['class.k-filtercell']
9504
9523
  }], column: [{
@@ -9528,9 +9547,9 @@ const numericOperators = localizeOperators({
9528
9547
  * Represents a base numeric filter component.
9529
9548
  */
9530
9549
  class NumericFilterComponent extends BaseFilterCellComponent {
9531
- constructor(filterService, localization) {
9550
+ constructor(filterService, ctx) {
9532
9551
  super(filterService);
9533
- this.localization = localization;
9552
+ this.ctx = ctx;
9534
9553
  /**
9535
9554
  * The default filter operator.
9536
9555
  * @type {string}
@@ -9549,7 +9568,7 @@ class NumericFilterComponent extends BaseFilterCellComponent {
9549
9568
  * @default true
9550
9569
  */
9551
9570
  this.spinners = true;
9552
- this.defaultOperators = numericOperators(this.localization);
9571
+ this.defaultOperators = numericOperators(this.ctx.localization);
9553
9572
  }
9554
9573
  /**
9555
9574
  * Specifies the number format used when the component is not focused.
@@ -9586,7 +9605,7 @@ class NumericFilterComponent extends BaseFilterCellComponent {
9586
9605
  extractFormat(this.column.format) : "n2";
9587
9606
  }
9588
9607
  ngOnInit() {
9589
- this.subscription = this.localization.changes.subscribe(this.localizationChange.bind(this));
9608
+ this.subscription = this.ctx.localization.changes.subscribe(this.localizationChange.bind(this));
9590
9609
  }
9591
9610
  ngOnDestroy() {
9592
9611
  if (this.subscription) {
@@ -9595,18 +9614,18 @@ class NumericFilterComponent extends BaseFilterCellComponent {
9595
9614
  super.ngOnDestroy();
9596
9615
  }
9597
9616
  localizationChange() {
9598
- this.defaultOperators = numericOperators(this.localization);
9617
+ this.defaultOperators = numericOperators(this.ctx.localization);
9599
9618
  if (this.operatorList.length) {
9600
9619
  this.operators = toJSON(this.operatorList.toArray());
9601
9620
  }
9602
9621
  }
9603
9622
  }
9604
- NumericFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: NumericFilterComponent, deps: [{ token: FilterService }, { token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Directive });
9623
+ NumericFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: NumericFilterComponent, deps: [{ token: FilterService }, { token: ContextService }], target: i0.ɵɵFactoryTarget.Directive });
9605
9624
  NumericFilterComponent.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: NumericFilterComponent, inputs: { column: "column", filter: "filter", operator: "operator", step: "step", min: "min", max: "max", spinners: "spinners", decimals: "decimals", format: "format" }, usesInheritance: true, ngImport: i0 });
9606
9625
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: NumericFilterComponent, decorators: [{
9607
9626
  type: Directive,
9608
9627
  args: [{}]
9609
- }], ctorParameters: function () { return [{ type: FilterService }, { type: i1.LocalizationService }]; }, propDecorators: { column: [{
9628
+ }], ctorParameters: function () { return [{ type: FilterService }, { type: ContextService }]; }, propDecorators: { column: [{
9610
9629
  type: Input
9611
9630
  }], filter: [{
9612
9631
  type: Input
@@ -9630,8 +9649,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
9630
9649
  * @hidden
9631
9650
  */
9632
9651
  class NumericFilterMenuInputComponent {
9633
- constructor(localization) {
9634
- this.localization = localization;
9652
+ constructor(ctx) {
9653
+ this.ctx = ctx;
9635
9654
  this.operators = [];
9636
9655
  /**
9637
9656
  * Specifies the value which is used to increment or decrement the component value.
@@ -9645,18 +9664,18 @@ class NumericFilterMenuInputComponent {
9645
9664
  this.spinners = true;
9646
9665
  }
9647
9666
  messageFor(key) {
9648
- return this.localization.get(key);
9667
+ return this.ctx.localization.get(key);
9649
9668
  }
9650
9669
  /**
9651
9670
  * @hidden
9652
9671
  */
9653
9672
  get columnLabel() {
9654
- const localizationMsg = this.localization.get('filterInputLabel') || '';
9673
+ const localizationMsg = this.ctx.localization.get('filterInputLabel') || '';
9655
9674
  const columnName = this.column ? this.column.title || this.column.field : '';
9656
9675
  return replaceMessagePlaceholder(localizationMsg, 'columnName', columnName);
9657
9676
  }
9658
9677
  }
9659
- NumericFilterMenuInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: NumericFilterMenuInputComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
9678
+ NumericFilterMenuInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: NumericFilterMenuInputComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
9660
9679
  NumericFilterMenuInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: NumericFilterMenuInputComponent, selector: "kendo-grid-numeric-filter-menu-input", inputs: { operators: "operators", column: "column", filter: "filter", operator: "operator", currentFilter: "currentFilter", filterService: "filterService", filterDelay: "filterDelay", isFirstDropDown: "isFirstDropDown", menuTabbingService: "menuTabbingService", step: "step", min: "min", max: "max", spinners: "spinners", decimals: "decimals", format: "format" }, ngImport: i0, template: `
9661
9680
  <kendo-grid-filter-menu-input-wrapper
9662
9681
  [column]="column"
@@ -9726,7 +9745,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
9726
9745
  </kendo-grid-filter-menu-input-wrapper>
9727
9746
  `
9728
9747
  }]
9729
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; }, propDecorators: { operators: [{
9748
+ }], ctorParameters: function () { return [{ type: ContextService }]; }, propDecorators: { operators: [{
9730
9749
  type: Input
9731
9750
  }], column: [{
9732
9751
  type: Input
@@ -9775,9 +9794,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
9775
9794
  * ```
9776
9795
  */
9777
9796
  class NumericFilterMenuComponent extends NumericFilterComponent {
9778
- constructor(localization) {
9779
- super(null, localization);
9780
- this.logicOperators = logicOperators(this.localization);
9797
+ constructor(ctx) {
9798
+ super(null, ctx);
9799
+ this.logicOperators = logicOperators(this.ctx.localization);
9781
9800
  /**
9782
9801
  * The current menu filter.
9783
9802
  * @type {CompositeFilterDescriptor}
@@ -9811,16 +9830,16 @@ class NumericFilterMenuComponent extends NumericFilterComponent {
9811
9830
  this.filter.logic = value;
9812
9831
  }
9813
9832
  get filterMenuDropDownLabel() {
9814
- const localizationMsg = this.localization.get('filterMenuLogicDropDownLabel') || '';
9833
+ const localizationMsg = this.ctx.localization.get('filterMenuLogicDropDownLabel') || '';
9815
9834
  const columnName = this.column ? this.column.title || this.column.field : '';
9816
9835
  return replaceMessagePlaceholder(localizationMsg, 'columnName', columnName);
9817
9836
  }
9818
9837
  localizationChange() {
9819
- this.logicOperators = logicOperators(this.localization);
9838
+ this.logicOperators = logicOperators(this.ctx.localization);
9820
9839
  super.localizationChange();
9821
9840
  }
9822
9841
  }
9823
- NumericFilterMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: NumericFilterMenuComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
9842
+ NumericFilterMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: NumericFilterMenuComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
9824
9843
  NumericFilterMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: NumericFilterMenuComponent, selector: "kendo-grid-numeric-filter-menu", inputs: { column: "column", filter: "filter", extra: "extra", filterService: "filterService", filterDelay: "filterDelay", menuTabbingService: "menuTabbingService" }, host: { properties: { "class.k-filtercell": "this.hostClasses" } }, usesInheritance: true, ngImport: i0, template: `
9825
9844
  <kendo-grid-numeric-filter-menu-input
9826
9845
  [currentFilter]="firstFilter"
@@ -9920,7 +9939,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
9920
9939
  </kendo-grid-numeric-filter-menu-input>
9921
9940
  `
9922
9941
  }]
9923
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; }, propDecorators: { hostClasses: [{
9942
+ }], ctorParameters: function () { return [{ type: ContextService }]; }, propDecorators: { hostClasses: [{
9924
9943
  type: HostBinding,
9925
9944
  args: ['class.k-filtercell']
9926
9945
  }], column: [{
@@ -9952,9 +9971,9 @@ const dateOperators = localizeOperators({
9952
9971
  * @hidden
9953
9972
  */
9954
9973
  class DateFilterComponent extends BaseFilterCellComponent {
9955
- constructor(filterService, localization) {
9974
+ constructor(filterService, ctx) {
9956
9975
  super(filterService);
9957
- this.localization = localization;
9976
+ this.ctx = ctx;
9958
9977
  /**
9959
9978
  * The default filter operator. Defaults to `contains`.
9960
9979
  * @type {string}
@@ -9983,7 +10002,7 @@ class DateFilterComponent extends BaseFilterCellComponent {
9983
10002
  * @default false
9984
10003
  */
9985
10004
  this.weekNumber = false;
9986
- this.defaultOperators = dateOperators(this.localization);
10005
+ this.defaultOperators = dateOperators(this.ctx.localization);
9987
10006
  }
9988
10007
  /**
9989
10008
  * The current filter for the associated column field.
@@ -10023,7 +10042,7 @@ class DateFilterComponent extends BaseFilterCellComponent {
10023
10042
  extractFormat(this.column.format) : "d";
10024
10043
  }
10025
10044
  ngOnInit() {
10026
- this.subscription = this.localization.changes.subscribe(this.localizationChange.bind(this));
10045
+ this.subscription = this.ctx.localization.changes.subscribe(this.localizationChange.bind(this));
10027
10046
  }
10028
10047
  ngOnDestroy() {
10029
10048
  if (this.subscription) {
@@ -10032,13 +10051,13 @@ class DateFilterComponent extends BaseFilterCellComponent {
10032
10051
  super.ngOnDestroy();
10033
10052
  }
10034
10053
  localizationChange() {
10035
- this.defaultOperators = dateOperators(this.localization);
10054
+ this.defaultOperators = dateOperators(this.ctx.localization);
10036
10055
  if (this.operatorList.length) {
10037
10056
  this.operators = toJSON(this.operatorList.toArray());
10038
10057
  }
10039
10058
  }
10040
10059
  }
10041
- DateFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DateFilterComponent, deps: [{ token: FilterService }, { token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
10060
+ DateFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DateFilterComponent, deps: [{ token: FilterService }, { token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
10042
10061
  DateFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: DateFilterComponent, selector: "kendo-grid-date-filter-base", inputs: { column: "column", filter: "filter", operator: "operator", format: "format", min: "min", max: "max", formatPlaceholder: "formatPlaceholder", placeholder: "placeholder", activeView: "activeView", bottomView: "bottomView", topView: "topView", weekNumber: "weekNumber" }, usesInheritance: true, ngImport: i0, template: ``, isInline: true });
10043
10062
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DateFilterComponent, decorators: [{
10044
10063
  type: Component,
@@ -10046,7 +10065,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
10046
10065
  selector: 'kendo-grid-date-filter-base',
10047
10066
  template: ``
10048
10067
  }]
10049
- }], ctorParameters: function () { return [{ type: FilterService }, { type: i1.LocalizationService }]; }, propDecorators: { column: [{
10068
+ }], ctorParameters: function () { return [{ type: FilterService }, { type: ContextService }]; }, propDecorators: { column: [{
10050
10069
  type: Input
10051
10070
  }], filter: [{
10052
10071
  type: Input
@@ -10076,9 +10095,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
10076
10095
  * @hidden
10077
10096
  */
10078
10097
  class DateFilterMenuInputComponent {
10079
- constructor(popupService, localizationService) {
10098
+ constructor(popupService, ctx) {
10080
10099
  this.popupService = popupService;
10081
- this.localizationService = localizationService;
10100
+ this.ctx = ctx;
10082
10101
  this.operators = [];
10083
10102
  }
10084
10103
  ngOnDestroy() {
@@ -10092,15 +10111,15 @@ class DateFilterMenuInputComponent {
10092
10111
  .subscribe(e => e.preventDefault());
10093
10112
  }
10094
10113
  messageFor(key) {
10095
- return this.localizationService.get(key);
10114
+ return this.ctx.localization.get(key);
10096
10115
  }
10097
10116
  get columnLabel() {
10098
- const localizationMsg = this.localizationService.get('filterInputLabel') || '';
10117
+ const localizationMsg = this.ctx.localization.get('filterInputLabel') || '';
10099
10118
  const columnName = this.column ? this.column.title || this.column.field : '';
10100
10119
  return replaceMessagePlaceholder(localizationMsg, 'columnName', columnName);
10101
10120
  }
10102
10121
  }
10103
- DateFilterMenuInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DateFilterMenuInputComponent, deps: [{ token: SinglePopupService }, { token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
10122
+ DateFilterMenuInputComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DateFilterMenuInputComponent, deps: [{ token: SinglePopupService }, { token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
10104
10123
  DateFilterMenuInputComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: DateFilterMenuInputComponent, selector: "kendo-grid-date-filter-menu-input", inputs: { operators: "operators", column: "column", filter: "filter", operator: "operator", currentFilter: "currentFilter", filterService: "filterService", menuTabbingService: "menuTabbingService", format: "format", formatPlaceholder: "formatPlaceholder", placeholder: "placeholder", min: "min", max: "max", activeView: "activeView", bottomView: "bottomView", topView: "topView", weekNumber: "weekNumber", isFirstDropDown: "isFirstDropDown" }, ngImport: i0, template: `
10105
10124
  <kendo-grid-filter-menu-input-wrapper
10106
10125
  [column]="column"
@@ -10178,7 +10197,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
10178
10197
  </kendo-grid-filter-menu-input-wrapper>
10179
10198
  `
10180
10199
  }]
10181
- }], ctorParameters: function () { return [{ type: SinglePopupService }, { type: i1.LocalizationService }]; }, propDecorators: { operators: [{
10200
+ }], ctorParameters: function () { return [{ type: SinglePopupService }, { type: ContextService }]; }, propDecorators: { operators: [{
10182
10201
  type: Input
10183
10202
  }], column: [{
10184
10203
  type: Input
@@ -10231,9 +10250,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
10231
10250
  * ```
10232
10251
  */
10233
10252
  class DateFilterMenuComponent extends DateFilterComponent {
10234
- constructor(localization) {
10235
- super(null, localization);
10236
- this.logicOperators = logicOperators(this.localization);
10253
+ constructor(ctx) {
10254
+ super(null, ctx);
10255
+ this.logicOperators = logicOperators(this.ctx.localization);
10237
10256
  /**
10238
10257
  * The current menu filter.
10239
10258
  * @type {CompositeFilterDescriptor}
@@ -10261,16 +10280,16 @@ class DateFilterMenuComponent extends DateFilterComponent {
10261
10280
  this.filter.logic = value;
10262
10281
  }
10263
10282
  get filterMenuDropDownLabel() {
10264
- const localizationMsg = this.localization.get('filterMenuLogicDropDownLabel') || '';
10283
+ const localizationMsg = this.ctx.localization.get('filterMenuLogicDropDownLabel') || '';
10265
10284
  const columnName = this.column ? this.column.title || this.column.field : '';
10266
10285
  return replaceMessagePlaceholder(localizationMsg, 'columnName', columnName);
10267
10286
  }
10268
10287
  localizationChange() {
10269
- this.logicOperators = logicOperators(this.localization);
10288
+ this.logicOperators = logicOperators(this.ctx.localization);
10270
10289
  super.localizationChange();
10271
10290
  }
10272
10291
  }
10273
- DateFilterMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DateFilterMenuComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
10292
+ DateFilterMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DateFilterMenuComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
10274
10293
  DateFilterMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: DateFilterMenuComponent, selector: "kendo-grid-date-filter-menu", inputs: { column: "column", filter: "filter", extra: "extra", filterService: "filterService", menuTabbingService: "menuTabbingService" }, host: { properties: { "class.k-filtercell": "this.hostClasses" } }, usesInheritance: true, ngImport: i0, template: `
10275
10294
  <kendo-grid-date-filter-menu-input
10276
10295
  [currentFilter]="firstFilter"
@@ -10380,7 +10399,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
10380
10399
  </kendo-grid-date-filter-menu-input>
10381
10400
  `
10382
10401
  }]
10383
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; }, propDecorators: { hostClasses: [{
10402
+ }], ctorParameters: function () { return [{ type: ContextService }]; }, propDecorators: { hostClasses: [{
10384
10403
  type: HostBinding,
10385
10404
  args: ['class.k-filtercell']
10386
10405
  }], column: [{
@@ -10400,9 +10419,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
10400
10419
  * @hidden
10401
10420
  */
10402
10421
  class BooleanFilterComponent extends BaseFilterCellComponent {
10403
- constructor(filterService, localization) {
10422
+ constructor(filterService, ctx) {
10404
10423
  super(filterService);
10405
- this.localization = localization;
10424
+ this.ctx = ctx;
10406
10425
  /**
10407
10426
  * @hidden
10408
10427
  */
@@ -10411,13 +10430,13 @@ class BooleanFilterComponent extends BaseFilterCellComponent {
10411
10430
  * @hidden
10412
10431
  */
10413
10432
  this.items = [
10414
- { text: this.localization.get("filterIsTrue"), value: true },
10415
- { text: this.localization.get("filterIsFalse"), value: false }
10433
+ { text: this.ctx.localization.get("filterIsTrue"), value: true },
10434
+ { text: this.ctx.localization.get("filterIsFalse"), value: false }
10416
10435
  ];
10417
10436
  /**
10418
10437
  * @hidden
10419
10438
  */
10420
- this.defaultItem = { text: this.localization.get("filterBooleanAll"), value: null };
10439
+ this.defaultItem = { text: this.ctx.localization.get("filterBooleanAll"), value: null };
10421
10440
  }
10422
10441
  /**
10423
10442
  * @hidden
@@ -10442,7 +10461,7 @@ class BooleanFilterComponent extends BaseFilterCellComponent {
10442
10461
  return this.currentFilter ? this.currentFilter.operator : this.operator;
10443
10462
  }
10444
10463
  ngOnInit() {
10445
- this.subscription = this.localization.changes.subscribe(this.localizationChange.bind(this));
10464
+ this.subscription = this.ctx.localization.changes.subscribe(this.localizationChange.bind(this));
10446
10465
  }
10447
10466
  ngOnDestroy() {
10448
10467
  if (this.subscription) {
@@ -10452,13 +10471,13 @@ class BooleanFilterComponent extends BaseFilterCellComponent {
10452
10471
  }
10453
10472
  localizationChange() {
10454
10473
  this.items = [
10455
- { text: this.localization.get("filterIsTrue"), value: true },
10456
- { text: this.localization.get("filterIsFalse"), value: false }
10474
+ { text: this.ctx.localization.get("filterIsTrue"), value: true },
10475
+ { text: this.ctx.localization.get("filterIsFalse"), value: false }
10457
10476
  ];
10458
- this.defaultItem = { text: this.localization.get("filterBooleanAll"), value: null };
10477
+ this.defaultItem = { text: this.ctx.localization.get("filterBooleanAll"), value: null };
10459
10478
  }
10460
10479
  }
10461
- BooleanFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BooleanFilterComponent, deps: [{ token: FilterService }, { token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
10480
+ BooleanFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BooleanFilterComponent, deps: [{ token: FilterService }, { token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
10462
10481
  BooleanFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: BooleanFilterComponent, selector: "kendo-grid-boolean-filter-base", inputs: { column: "column", filter: "filter" }, host: { properties: { "class.k-filtercell-boolean": "this.hostClasses" } }, usesInheritance: true, ngImport: i0, template: ``, isInline: true });
10463
10482
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BooleanFilterComponent, decorators: [{
10464
10483
  type: Component,
@@ -10466,7 +10485,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
10466
10485
  selector: 'kendo-grid-boolean-filter-base',
10467
10486
  template: ``
10468
10487
  }]
10469
- }], ctorParameters: function () { return [{ type: FilterService }, { type: i1.LocalizationService }]; }, propDecorators: { hostClasses: [{
10488
+ }], ctorParameters: function () { return [{ type: FilterService }, { type: ContextService }]; }, propDecorators: { hostClasses: [{
10470
10489
  type: HostBinding,
10471
10490
  args: ['class.k-filtercell-boolean']
10472
10491
  }], column: [{
@@ -10515,8 +10534,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
10515
10534
  * ```
10516
10535
  */
10517
10536
  class BooleanFilterMenuComponent extends BooleanFilterComponent {
10518
- constructor(localization) {
10519
- super(null, localization);
10537
+ constructor(ctx) {
10538
+ super(null, ctx);
10520
10539
  /**
10521
10540
  * The current menu filter.
10522
10541
  * @type {CompositeFilterDescriptor}
@@ -10531,8 +10550,11 @@ class BooleanFilterMenuComponent extends BooleanFilterComponent {
10531
10550
  return false;
10532
10551
  }
10533
10552
  ngAfterViewInit() {
10553
+ var _a;
10534
10554
  this.filterService.menuTabbingService.firstFocusable = this.radioButtons.first.radioButtonEl;
10535
- this.radioButtons.first.radioButtonEl.focus();
10555
+ if (!((_a = this.menuTabbingService) === null || _a === void 0 ? void 0 : _a.isTabbedInterface)) {
10556
+ this.radioButtons.first.radioButtonEl.focus();
10557
+ }
10536
10558
  }
10537
10559
  /**
10538
10560
  * @hidden
@@ -10570,12 +10592,12 @@ class BooleanFilterMenuComponent extends BooleanFilterComponent {
10570
10592
  * @hidden
10571
10593
  */
10572
10594
  get columnLabel() {
10573
- const localizationMsg = this.localization.get('filterInputLabel') || '';
10595
+ const localizationMsg = this.ctx.localization.get('filterInputLabel') || '';
10574
10596
  const columnName = this.column.title || this.column.field;
10575
10597
  return replaceMessagePlaceholder(localizationMsg, 'columnName', columnName);
10576
10598
  }
10577
10599
  }
10578
- BooleanFilterMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BooleanFilterMenuComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
10600
+ BooleanFilterMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BooleanFilterMenuComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
10579
10601
  BooleanFilterMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: BooleanFilterMenuComponent, selector: "kendo-grid-boolean-filter-menu", inputs: { filter: "filter", filterService: "filterService", menuTabbingService: "menuTabbingService" }, host: { properties: { "class.k-filtercell": "this.hostClasses" } }, viewQueries: [{ propertyName: "radioButtons", predicate: BooleanFilterRadioButtonDirective, descendants: true }], usesInheritance: true, ngImport: i0, template: `
10580
10602
  <ul class="k-radio-list k-reset">
10581
10603
  <li *ngFor="let item of items">
@@ -10617,7 +10639,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
10617
10639
  </ul>
10618
10640
  `
10619
10641
  }]
10620
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; }, propDecorators: { hostClasses: [{
10642
+ }], ctorParameters: function () { return [{ type: ContextService }]; }, propDecorators: { hostClasses: [{
10621
10643
  type: HostBinding,
10622
10644
  args: ['class.k-filtercell']
10623
10645
  }], filter: [{
@@ -10706,16 +10728,16 @@ const parentLogicOfDefault = (filter, field, def = "and") => {
10706
10728
  * @hidden
10707
10729
  */
10708
10730
  class FilterMenuContainerComponent {
10709
- constructor(parentService, childService, localization, cd, menuTabbingService) {
10731
+ constructor(parentService, childService, ctx, cd, menuTabbingService) {
10710
10732
  this.parentService = parentService;
10711
10733
  this.childService = childService;
10712
- this.localization = localization;
10734
+ this.ctx = ctx;
10713
10735
  this.cd = cd;
10714
10736
  this.close = new EventEmitter();
10715
10737
  /**
10716
10738
  * @hidden
10717
10739
  */
10718
- this.actionsClass = 'k-actions';
10740
+ this.actionsClass = 'k-actions k-actions-stretched k-actions-horizontal';
10719
10741
  this._templateContext = {};
10720
10742
  this.menuTabbingService = menuTabbingService;
10721
10743
  }
@@ -10740,7 +10762,7 @@ class FilterMenuContainerComponent {
10740
10762
  }
10741
10763
  ngOnInit() {
10742
10764
  this.subscription = this.childService.changes.subscribe(filter => this._childFilter = filter);
10743
- this.subscription.add(this.localization.changes.subscribe(() => this.cd.markForCheck()));
10765
+ this.subscription.add(this.ctx.localization.changes.subscribe(() => this.cd.markForCheck()));
10744
10766
  }
10745
10767
  ngAfterViewChecked() {
10746
10768
  if (!this.menuTabbingService.isColumnMenu || (this.isLast && this.isExpanded)) {
@@ -10803,13 +10825,13 @@ class FilterMenuContainerComponent {
10803
10825
  }
10804
10826
  }
10805
10827
  get clearText() {
10806
- return this.localization.get("filterClearButton");
10828
+ return this.ctx.localization.get("filterClearButton");
10807
10829
  }
10808
10830
  get filterText() {
10809
- return this.localization.get("filterFilterButton");
10831
+ return this.ctx.localization.get("filterFilterButton");
10810
10832
  }
10811
10833
  }
10812
- FilterMenuContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FilterMenuContainerComponent, deps: [{ token: FilterService, skipSelf: true }, { token: FilterService }, { token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: MenuTabbingService }], target: i0.ɵɵFactoryTarget.Component });
10834
+ FilterMenuContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FilterMenuContainerComponent, deps: [{ token: FilterService, skipSelf: true }, { token: FilterService }, { token: ContextService }, { token: i0.ChangeDetectorRef }, { token: MenuTabbingService }], target: i0.ɵɵFactoryTarget.Component });
10813
10835
  FilterMenuContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: FilterMenuContainerComponent, selector: "kendo-grid-filter-menu-container", inputs: { column: "column", isLast: "isLast", isExpanded: "isExpanded", menuTabbingService: "menuTabbingService", filter: "filter", actionsClass: "actionsClass" }, outputs: { close: "close" }, providers: [
10814
10836
  FilterService,
10815
10837
  MenuTabbingService
@@ -10837,16 +10859,16 @@ FilterMenuContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12
10837
10859
  </ng-container>
10838
10860
  </ng-container>
10839
10861
  <div [ngClass]="actionsClass">
10840
- <button
10841
- #resetButton
10842
- type="reset"
10843
- class="k-button k-button-solid-base k-button-solid k-button-md k-rounded-md k-button-rectangle"
10844
- (keydown.tab)="onTab($event, 'reset')">{{clearText}}</button>
10845
10862
  <button #filterButton
10846
10863
  type="submit"
10847
10864
  class="k-button k-button-solid-primary k-button-solid k-button-md k-rounded-md k-button-rectangle"
10848
10865
  [disabled]="disabled"
10849
10866
  (keydown.tab)="onTab($event, 'filter')">{{filterText}}</button>
10867
+ <button
10868
+ #resetButton
10869
+ type="reset"
10870
+ class="k-button k-button-solid-base k-button-solid k-button-md k-rounded-md k-button-rectangle"
10871
+ (keydown.tab)="onTab($event, 'reset')">{{clearText}}</button>
10850
10872
  </div>
10851
10873
  </div>
10852
10874
  </form>
@@ -10883,16 +10905,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
10883
10905
  </ng-container>
10884
10906
  </ng-container>
10885
10907
  <div [ngClass]="actionsClass">
10886
- <button
10887
- #resetButton
10888
- type="reset"
10889
- class="k-button k-button-solid-base k-button-solid k-button-md k-rounded-md k-button-rectangle"
10890
- (keydown.tab)="onTab($event, 'reset')">{{clearText}}</button>
10891
10908
  <button #filterButton
10892
10909
  type="submit"
10893
10910
  class="k-button k-button-solid-primary k-button-solid k-button-md k-rounded-md k-button-rectangle"
10894
10911
  [disabled]="disabled"
10895
10912
  (keydown.tab)="onTab($event, 'filter')">{{filterText}}</button>
10913
+ <button
10914
+ #resetButton
10915
+ type="reset"
10916
+ class="k-button k-button-solid-base k-button-solid k-button-md k-rounded-md k-button-rectangle"
10917
+ (keydown.tab)="onTab($event, 'reset')">{{clearText}}</button>
10896
10918
  </div>
10897
10919
  </div>
10898
10920
  </form>
@@ -10901,7 +10923,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
10901
10923
  }], ctorParameters: function () {
10902
10924
  return [{ type: FilterService, decorators: [{
10903
10925
  type: SkipSelf
10904
- }] }, { type: FilterService }, { type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: MenuTabbingService }];
10926
+ }] }, { type: FilterService }, { type: ContextService }, { type: i0.ChangeDetectorRef }, { type: MenuTabbingService }];
10905
10927
  }, propDecorators: { close: [{
10906
10928
  type: Output
10907
10929
  }], column: [{
@@ -10928,10 +10950,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
10928
10950
  * @hidden
10929
10951
  */
10930
10952
  class FilterMenuComponent {
10931
- constructor(filterService, popupService, localization, navigationService) {
10953
+ constructor(filterService, popupService, ctx, navigationService) {
10932
10954
  this.filterService = filterService;
10933
10955
  this.popupService = popupService;
10934
- this.localization = localization;
10956
+ this.ctx = ctx;
10935
10957
  this.navigationService = navigationService;
10936
10958
  this.filterIcon = filterIcon;
10937
10959
  this.tabIndex = '-1';
@@ -10943,7 +10965,7 @@ class FilterMenuComponent {
10943
10965
  * @hidden
10944
10966
  */
10945
10967
  get filterLabel() {
10946
- const localizationMsg = this.localization.get('filterMenuTitle') || '';
10968
+ const localizationMsg = this.ctx.localization.get('filterMenuTitle') || '';
10947
10969
  const columnName = this.column.title || this.column.field;
10948
10970
  return replaceMessagePlaceholder(localizationMsg, 'columnName', columnName);
10949
10971
  }
@@ -10969,7 +10991,7 @@ class FilterMenuComponent {
10969
10991
  }
10970
10992
  }
10971
10993
  }
10972
- FilterMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FilterMenuComponent, deps: [{ token: FilterService }, { token: SinglePopupService }, { token: i1.LocalizationService }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Component });
10994
+ FilterMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FilterMenuComponent, deps: [{ token: FilterService }, { token: SinglePopupService }, { token: ContextService }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Component });
10973
10995
  FilterMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: FilterMenuComponent, selector: "kendo-grid-filter-menu", inputs: { column: "column", filter: "filter", tabIndex: "tabIndex" }, viewQueries: [{ propertyName: "anchor", first: true, predicate: ["anchor"], descendants: true, static: true }, { propertyName: "template", first: true, predicate: ["template"], descendants: true, read: TemplateRef, static: true }], ngImport: i0, template: `
10974
10996
  <a #anchor
10975
10997
  class="k-grid-filter-menu k-grid-header-menu"
@@ -10993,7 +11015,7 @@ FilterMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
10993
11015
  >
10994
11016
  </kendo-grid-filter-menu-container>
10995
11017
  </ng-template>
10996
- `, isInline: true, components: [{ type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass"], exportAs: ["kendoIconWrapper"] }, { type: FilterMenuContainerComponent, selector: "kendo-grid-filter-menu-container", inputs: ["column", "isLast", "isExpanded", "menuTabbingService", "filter", "actionsClass"], outputs: ["close"] }] });
11018
+ `, isInline: true, components: [{ type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { type: FilterMenuContainerComponent, selector: "kendo-grid-filter-menu-container", inputs: ["column", "isLast", "isExpanded", "menuTabbingService", "filter", "actionsClass"], outputs: ["close"] }] });
10997
11019
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FilterMenuComponent, decorators: [{
10998
11020
  type: Component,
10999
11021
  args: [{
@@ -11023,7 +11045,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
11023
11045
  </ng-template>
11024
11046
  `
11025
11047
  }]
11026
- }], ctorParameters: function () { return [{ type: FilterService }, { type: SinglePopupService }, { type: i1.LocalizationService }, { type: NavigationService }]; }, propDecorators: { column: [{
11048
+ }], ctorParameters: function () { return [{ type: FilterService }, { type: SinglePopupService }, { type: ContextService }, { type: NavigationService }]; }, propDecorators: { column: [{
11027
11049
  type: Input
11028
11050
  }], filter: [{
11029
11051
  type: Input
@@ -11233,7 +11255,7 @@ ColumnMenuItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0"
11233
11255
  <ng-container [ngTemplateOutlet]="contentTemplate.templateRef">
11234
11256
  </ng-container>
11235
11257
  <div>
11236
- `, isInline: true, components: [{ type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], animations: [
11258
+ `, isInline: true, components: [{ type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], animations: [
11237
11259
  trigger('state', [
11238
11260
  state('collapsed', style({ display: 'none' })),
11239
11261
  state('expanded', style({ display: 'block' })),
@@ -11344,16 +11366,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
11344
11366
  * ```
11345
11367
  */
11346
11368
  class ColumnMenuLockComponent extends ColumnMenuItemBase {
11347
- constructor(localization, columnInfoService, changeDetector) {
11369
+ constructor(ctx, columnInfoService, changeDetector) {
11348
11370
  super();
11349
- this.localization = localization;
11371
+ this.ctx = ctx;
11350
11372
  this.columnInfoService = columnInfoService;
11351
11373
  this.changeDetector = changeDetector;
11352
11374
  this.unlockIcon = unlockIcon;
11353
11375
  this.lockIcon = lockIcon;
11354
11376
  }
11355
11377
  get text() {
11356
- return this.localization.get(this.locked ? 'unlock' : 'lock');
11378
+ return this.ctx.localization.get(this.locked ? 'unlock' : 'lock');
11357
11379
  }
11358
11380
  get icon() {
11359
11381
  return this.locked ? 'unlock' : 'lock';
@@ -11393,7 +11415,7 @@ class ColumnMenuLockComponent extends ColumnMenuItemBase {
11393
11415
  return this.service.column.locked;
11394
11416
  }
11395
11417
  }
11396
- ColumnMenuLockComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnMenuLockComponent, deps: [{ token: i1.LocalizationService }, { token: ColumnInfoService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
11418
+ ColumnMenuLockComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnMenuLockComponent, deps: [{ token: ContextService }, { token: ColumnInfoService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
11397
11419
  ColumnMenuLockComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ColumnMenuLockComponent, selector: "kendo-grid-columnmenu-lock", usesInheritance: true, ngImport: i0, template: `
11398
11420
  <kendo-grid-columnmenu-item
11399
11421
  [text]="text"
@@ -11417,7 +11439,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
11417
11439
  </kendo-grid-columnmenu-item>
11418
11440
  `
11419
11441
  }]
11420
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: ColumnInfoService }, { type: i0.ChangeDetectorRef }]; } });
11442
+ }], ctorParameters: function () { return [{ type: ContextService }, { type: ColumnInfoService }, { type: i0.ChangeDetectorRef }]; } });
11421
11443
 
11422
11444
  /**
11423
11445
  * Represents the column-menu item that sticks or unsticks columns in the Grid.
@@ -11439,16 +11461,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
11439
11461
  * ```
11440
11462
  */
11441
11463
  class ColumnMenuStickComponent extends ColumnMenuItemBase {
11442
- constructor(localization, columnInfoService, changeDetector) {
11464
+ constructor(ctx, columnInfoService, changeDetector) {
11443
11465
  super();
11444
- this.localization = localization;
11466
+ this.ctx = ctx;
11445
11467
  this.columnInfoService = columnInfoService;
11446
11468
  this.changeDetector = changeDetector;
11447
11469
  this.stickIcon = stickIcon;
11448
11470
  this.unstickIcon = unstickIcon;
11449
11471
  }
11450
11472
  get text() {
11451
- return this.localization.get(this.sticky ? 'unstick' : 'stick');
11473
+ return this.ctx.localization.get(this.sticky ? 'unstick' : 'stick');
11452
11474
  }
11453
11475
  get icon() {
11454
11476
  return this.sticky ? 'unstick' : 'stick';
@@ -11488,7 +11510,7 @@ class ColumnMenuStickComponent extends ColumnMenuItemBase {
11488
11510
  return this.service.column.sticky;
11489
11511
  }
11490
11512
  }
11491
- ColumnMenuStickComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnMenuStickComponent, deps: [{ token: i1.LocalizationService }, { token: ColumnInfoService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
11513
+ ColumnMenuStickComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnMenuStickComponent, deps: [{ token: ContextService }, { token: ColumnInfoService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
11492
11514
  ColumnMenuStickComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ColumnMenuStickComponent, selector: "kendo-grid-columnmenu-stick", usesInheritance: true, ngImport: i0, template: `
11493
11515
  <kendo-grid-columnmenu-item
11494
11516
  [text]="text"
@@ -11512,14 +11534,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
11512
11534
  </kendo-grid-columnmenu-item>
11513
11535
  `
11514
11536
  }]
11515
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: ColumnInfoService }, { type: i0.ChangeDetectorRef }]; } });
11537
+ }], ctorParameters: function () { return [{ type: ContextService }, { type: ColumnInfoService }, { type: i0.ChangeDetectorRef }]; } });
11516
11538
 
11517
11539
  /**
11518
11540
  * Represents the column-menu item which combines the lock and sticky column functionalities.
11519
11541
  *
11520
11542
  * The component can be placed inside a [ColumnMenuTemplate]({% slug api_grid_columnmenutemplatedirective %}) directive.
11521
11543
  * To register the component as a known column menu item, set the [ColumnMenuService]({% slug api_grid_columnmenuservice %}) that is passed by
11522
- * the template to the service input of the `kendo-grid-columnmenu-filter` component. [See example](slug:columnmenu_grid#toc-set-column-position-item).
11544
+ * the template to the service input of the `kendo-grid-columnmenu-position` component. [See example](slug:columnmenu_grid#toc-set-column-position-item).
11523
11545
  *
11524
11546
  * @example
11525
11547
  * ```html
@@ -11532,9 +11554,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
11532
11554
  * ```
11533
11555
  */
11534
11556
  class ColumnMenuPositionComponent extends ColumnMenuItemBase {
11535
- constructor(localization, hostElement) {
11557
+ constructor(ctx, hostElement) {
11536
11558
  super();
11537
- this.localization = localization;
11559
+ this.ctx = ctx;
11538
11560
  this.hostElement = hostElement;
11539
11561
  /**
11540
11562
  * Fires when the content is expanded.
@@ -11607,10 +11629,10 @@ class ColumnMenuPositionComponent extends ColumnMenuItemBase {
11607
11629
  return menuItems[lastFocusableIndex];
11608
11630
  }
11609
11631
  }
11610
- ColumnMenuPositionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnMenuPositionComponent, deps: [{ token: i1.LocalizationService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
11632
+ ColumnMenuPositionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnMenuPositionComponent, deps: [{ token: ContextService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
11611
11633
  ColumnMenuPositionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ColumnMenuPositionComponent, selector: "kendo-grid-columnmenu-position", inputs: { expanded: "expanded", showLock: "showLock", showStick: "showStick", isLast: "isLast" }, outputs: { expand: "expand", collapse: "collapse" }, usesInheritance: true, ngImport: i0, template: `
11612
11634
  <kendo-grid-columnmenu-item
11613
- [text]="localization.get('setColumnPosition')"
11635
+ [text]="ctx.localization.get('setColumnPosition')"
11614
11636
  icon="set-column-position"
11615
11637
  [svgIcon]="setColumnPositionIcon"
11616
11638
  [expanded]="expanded"
@@ -11637,7 +11659,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
11637
11659
  selector: 'kendo-grid-columnmenu-position',
11638
11660
  template: `
11639
11661
  <kendo-grid-columnmenu-item
11640
- [text]="localization.get('setColumnPosition')"
11662
+ [text]="ctx.localization.get('setColumnPosition')"
11641
11663
  icon="set-column-position"
11642
11664
  [svgIcon]="setColumnPositionIcon"
11643
11665
  [expanded]="expanded"
@@ -11659,7 +11681,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
11659
11681
  </kendo-grid-columnmenu-item>
11660
11682
  `
11661
11683
  }]
11662
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i0.ElementRef }]; }, propDecorators: { expand: [{
11684
+ }], ctorParameters: function () { return [{ type: ContextService }, { type: i0.ElementRef }]; }, propDecorators: { expand: [{
11663
11685
  type: Output
11664
11686
  }], collapse: [{
11665
11687
  type: Output
@@ -11686,7 +11708,7 @@ class ColumnListComponent {
11686
11708
  this.columnChange = new EventEmitter();
11687
11709
  this.autoSync = true;
11688
11710
  this.allowHideAll = false;
11689
- this.actionsClass = 'k-actions';
11711
+ this.actionsClass = 'k-actions k-actions-stretched k-actions-horizontal';
11690
11712
  this.unlockedCount = 0;
11691
11713
  }
11692
11714
  get className() {
@@ -11825,8 +11847,8 @@ ColumnListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
11825
11847
  </label>
11826
11848
  </div>
11827
11849
  <div [ngClass]="actionsClass" *ngIf="!autoSync">
11828
- <button type="button" class="k-button k-button-solid-base k-button-solid k-button-md k-rounded-md k-button-rectangle" (click)="cancelChanges()">{{ resetText }}</button>
11829
11850
  <button #applyButton type="button" (keydown.tab)="onTab($event)" class="k-button k-button-solid-primary k-button-solid k-button-md k-rounded-md k-button-rectangle" (click)="applyChanges()">{{ applyText }}</button>
11851
+ <button type="button" class="k-button k-button-solid-base k-button-solid k-button-md k-rounded-md k-button-rectangle" (click)="cancelChanges()">{{ resetText }}</button>
11830
11852
  </div>
11831
11853
  `, isInline: true, directives: [{ type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
11832
11854
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnListComponent, decorators: [{
@@ -11840,8 +11862,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
11840
11862
  </label>
11841
11863
  </div>
11842
11864
  <div [ngClass]="actionsClass" *ngIf="!autoSync">
11843
- <button type="button" class="k-button k-button-solid-base k-button-solid k-button-md k-rounded-md k-button-rectangle" (click)="cancelChanges()">{{ resetText }}</button>
11844
11865
  <button #applyButton type="button" (keydown.tab)="onTab($event)" class="k-button k-button-solid-primary k-button-solid k-button-md k-rounded-md k-button-rectangle" (click)="applyChanges()">{{ applyText }}</button>
11866
+ <button type="button" class="k-button k-button-solid-base k-button-solid k-button-md k-rounded-md k-button-rectangle" (click)="cancelChanges()">{{ resetText }}</button>
11845
11867
  </div>
11846
11868
  `
11847
11869
  }]
@@ -11894,9 +11916,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
11894
11916
  * ```
11895
11917
  */
11896
11918
  class ColumnMenuChooserComponent extends ColumnMenuItemBase {
11897
- constructor(localization, columnInfoService, changeDetector, hostElement) {
11919
+ constructor(ctx, columnInfoService, changeDetector, hostElement) {
11898
11920
  super();
11899
- this.localization = localization;
11921
+ this.ctx = ctx;
11900
11922
  this.columnInfoService = columnInfoService;
11901
11923
  this.changeDetector = changeDetector;
11902
11924
  this.hostElement = hostElement;
@@ -11920,7 +11942,7 @@ class ColumnMenuChooserComponent extends ColumnMenuItemBase {
11920
11942
  /**
11921
11943
  * @hidden
11922
11944
  */
11923
- this.actionsClass = 'k-actions';
11945
+ this.actionsClass = 'k-actions k-actions-stretched k-actions-horizontal';
11924
11946
  this.columnsIcon = columnsIcon;
11925
11947
  }
11926
11948
  get columns() {
@@ -11954,10 +11976,10 @@ class ColumnMenuChooserComponent extends ColumnMenuItemBase {
11954
11976
  this.expand.emit();
11955
11977
  }
11956
11978
  }
11957
- ColumnMenuChooserComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnMenuChooserComponent, deps: [{ token: i1.LocalizationService }, { token: ColumnInfoService }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
11979
+ ColumnMenuChooserComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnMenuChooserComponent, deps: [{ token: ContextService }, { token: ColumnInfoService }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
11958
11980
  ColumnMenuChooserComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ColumnMenuChooserComponent, selector: "kendo-grid-columnmenu-chooser", inputs: { expanded: "expanded", isLast: "isLast" }, outputs: { expand: "expand", collapse: "collapse" }, usesInheritance: true, ngImport: i0, template: `
11959
11981
  <kendo-grid-columnmenu-item
11960
- [text]="localization.get('columns')"
11982
+ [text]="ctx.localization.get('columns')"
11961
11983
  icon="columns"
11962
11984
  [svgIcon]="columnsIcon"
11963
11985
  [expanded]="expanded"
@@ -11965,8 +11987,8 @@ ColumnMenuChooserComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0
11965
11987
  (expand)="onExpand()">
11966
11988
  <ng-template kendoGridColumnMenuItemContentTemplate>
11967
11989
  <kendo-grid-columnlist
11968
- [applyText]="localization.get('columnsApply')"
11969
- [resetText]="localization.get('columnsReset')"
11990
+ [applyText]="ctx.localization.get('columnsApply')"
11991
+ [resetText]="ctx.localization.get('columnsReset')"
11970
11992
  [columns]="columns"
11971
11993
  [autoSync]="false"
11972
11994
  [allowHideAll]="false"
@@ -11985,7 +12007,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
11985
12007
  selector: 'kendo-grid-columnmenu-chooser',
11986
12008
  template: `
11987
12009
  <kendo-grid-columnmenu-item
11988
- [text]="localization.get('columns')"
12010
+ [text]="ctx.localization.get('columns')"
11989
12011
  icon="columns"
11990
12012
  [svgIcon]="columnsIcon"
11991
12013
  [expanded]="expanded"
@@ -11993,8 +12015,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
11993
12015
  (expand)="onExpand()">
11994
12016
  <ng-template kendoGridColumnMenuItemContentTemplate>
11995
12017
  <kendo-grid-columnlist
11996
- [applyText]="localization.get('columnsApply')"
11997
- [resetText]="localization.get('columnsReset')"
12018
+ [applyText]="ctx.localization.get('columnsApply')"
12019
+ [resetText]="ctx.localization.get('columnsReset')"
11998
12020
  [columns]="columns"
11999
12021
  [autoSync]="false"
12000
12022
  [allowHideAll]="false"
@@ -12008,7 +12030,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
12008
12030
  </kendo-grid-columnmenu-item>
12009
12031
  `
12010
12032
  }]
12011
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: ColumnInfoService }, { type: i0.ChangeDetectorRef }, { type: i0.ElementRef }]; }, propDecorators: { expand: [{
12033
+ }], ctorParameters: function () { return [{ type: ContextService }, { type: ColumnInfoService }, { type: i0.ChangeDetectorRef }, { type: i0.ElementRef }]; }, propDecorators: { expand: [{
12012
12034
  type: Output
12013
12035
  }], collapse: [{
12014
12036
  type: Output
@@ -12036,9 +12058,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
12036
12058
  * ```
12037
12059
  */
12038
12060
  class ColumnMenuFilterComponent extends ColumnMenuItemBase {
12039
- constructor(localization, hostElement) {
12061
+ constructor(ctx, hostElement) {
12040
12062
  super();
12041
- this.localization = localization;
12063
+ this.ctx = ctx;
12042
12064
  this.hostElement = hostElement;
12043
12065
  /**
12044
12066
  * Fires when the content is expanded.
@@ -12060,7 +12082,7 @@ class ColumnMenuFilterComponent extends ColumnMenuItemBase {
12060
12082
  /**
12061
12083
  * @hidden
12062
12084
  */
12063
- this.actionsClass = 'k-actions';
12085
+ this.actionsClass = 'k-actions k-actions-stretched k-actions-horizontal';
12064
12086
  this.filterIcon = filterIcon;
12065
12087
  }
12066
12088
  /**
@@ -12081,10 +12103,10 @@ class ColumnMenuFilterComponent extends ColumnMenuItemBase {
12081
12103
  this.expand.emit();
12082
12104
  }
12083
12105
  }
12084
- ColumnMenuFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnMenuFilterComponent, deps: [{ token: i1.LocalizationService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
12106
+ ColumnMenuFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnMenuFilterComponent, deps: [{ token: ContextService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
12085
12107
  ColumnMenuFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ColumnMenuFilterComponent, selector: "kendo-grid-columnmenu-filter", inputs: { expanded: "expanded", isLast: "isLast" }, outputs: { expand: "expand", collapse: "collapse" }, usesInheritance: true, ngImport: i0, template: `
12086
12108
  <kendo-grid-columnmenu-item
12087
- [text]="localization.get('filter')"
12109
+ [text]="ctx.localization.get('filter')"
12088
12110
  icon="filter"
12089
12111
  [svgIcon]="filterIcon"
12090
12112
  [expanded]="expanded"
@@ -12110,7 +12132,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
12110
12132
  selector: 'kendo-grid-columnmenu-filter',
12111
12133
  template: `
12112
12134
  <kendo-grid-columnmenu-item
12113
- [text]="localization.get('filter')"
12135
+ [text]="ctx.localization.get('filter')"
12114
12136
  icon="filter"
12115
12137
  [svgIcon]="filterIcon"
12116
12138
  [expanded]="expanded"
@@ -12131,7 +12153,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
12131
12153
  </kendo-grid-columnmenu-item>
12132
12154
  `
12133
12155
  }]
12134
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: i0.ElementRef }]; }, propDecorators: { expand: [{
12156
+ }], ctorParameters: function () { return [{ type: ContextService }, { type: i0.ElementRef }]; }, propDecorators: { expand: [{
12135
12157
  type: Output
12136
12158
  }], collapse: [{
12137
12159
  type: Output
@@ -12277,6 +12299,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
12277
12299
  * To register the component as a known column menu item, set the [ColumnMenuService]({% slug api_grid_columnmenuservice %}) that is passed by
12278
12300
  * the template to the service input of the `kendo-grid-columnmenu-sort` component. [See example](slug:columnmenu_grid#toc-customizing-the-content).
12279
12301
  *
12302
+ * You have to set the [ColumnMenuService]({% slug api_grid_columnmenuservice %}) that is passed by
12303
+ * the template to the service input of the `kendo-grid-columnmenu-sort` component.
12304
+ *
12280
12305
  * @example
12281
12306
  * ```html
12282
12307
  * <kendo-grid [kendoGridBinding]="data" [sortable]="true" [columnMenu]="true">
@@ -12288,9 +12313,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
12288
12313
  * ```
12289
12314
  */
12290
12315
  class ColumnMenuSortComponent extends ColumnMenuItemBase {
12291
- constructor(localization, sortService, renderer) {
12316
+ constructor(ctx, sortService, renderer) {
12292
12317
  super();
12293
- this.localization = localization;
12318
+ this.ctx = ctx;
12294
12319
  this.sortService = sortService;
12295
12320
  this.renderer = renderer;
12296
12321
  this.sortAscSmallIcon = sortAscSmallIcon;
@@ -12327,17 +12352,17 @@ class ColumnMenuSortComponent extends ColumnMenuItemBase {
12327
12352
  return [].concat(this.service.sort || []).find(s => s.field === this.service.column.field);
12328
12353
  }
12329
12354
  }
12330
- ColumnMenuSortComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnMenuSortComponent, deps: [{ token: i1.LocalizationService }, { token: SortService }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
12355
+ ColumnMenuSortComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnMenuSortComponent, deps: [{ token: ContextService }, { token: SortService }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
12331
12356
  ColumnMenuSortComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ColumnMenuSortComponent, selector: "kendo-grid-columnmenu-sort", usesInheritance: true, ngImport: i0, template: `
12332
12357
  <kendo-grid-columnmenu-item
12333
- [text]="localization.get('sortAscending')"
12358
+ [text]="ctx.localization.get('sortAscending')"
12334
12359
  icon="sort-asc-small"
12335
12360
  [svgIcon]="sortAscSmallIcon"
12336
12361
  (itemClick)="toggleSort('asc')"
12337
12362
  [selected]="sortedAsc">
12338
12363
  </kendo-grid-columnmenu-item>
12339
12364
  <kendo-grid-columnmenu-item
12340
- [text]="localization.get('sortDescending')"
12365
+ [text]="ctx.localization.get('sortDescending')"
12341
12366
  icon="sort-desc-small"
12342
12367
  [svgIcon]="sortDescSmallIcon"
12343
12368
  (itemClick)="toggleSort('desc')"
@@ -12350,14 +12375,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
12350
12375
  selector: 'kendo-grid-columnmenu-sort',
12351
12376
  template: `
12352
12377
  <kendo-grid-columnmenu-item
12353
- [text]="localization.get('sortAscending')"
12378
+ [text]="ctx.localization.get('sortAscending')"
12354
12379
  icon="sort-asc-small"
12355
12380
  [svgIcon]="sortAscSmallIcon"
12356
12381
  (itemClick)="toggleSort('asc')"
12357
12382
  [selected]="sortedAsc">
12358
12383
  </kendo-grid-columnmenu-item>
12359
12384
  <kendo-grid-columnmenu-item
12360
- [text]="localization.get('sortDescending')"
12385
+ [text]="ctx.localization.get('sortDescending')"
12361
12386
  icon="sort-desc-small"
12362
12387
  [svgIcon]="sortDescSmallIcon"
12363
12388
  (itemClick)="toggleSort('desc')"
@@ -12365,7 +12390,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
12365
12390
  </kendo-grid-columnmenu-item>
12366
12391
  `
12367
12392
  }]
12368
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: SortService }, { type: i0.Renderer2 }]; } });
12393
+ }], ctorParameters: function () { return [{ type: ContextService }, { type: SortService }, { type: i0.Renderer2 }]; } });
12369
12394
 
12370
12395
  /**
12371
12396
  * Represents the column-menu item for resizing the specified column to the minimum possible width so that it fits the header or cell content without wrapping.
@@ -12387,9 +12412,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
12387
12412
  * ```
12388
12413
  */
12389
12414
  class ColumnMenuAutoSizeColumnComponent extends ColumnMenuItemBase {
12390
- constructor(localization, ctx) {
12415
+ constructor(ctx) {
12391
12416
  super();
12392
- this.localization = localization;
12393
12417
  this.ctx = ctx;
12394
12418
  this.maxWidthIcon = maxWidthIcon;
12395
12419
  }
@@ -12406,12 +12430,12 @@ class ColumnMenuAutoSizeColumnComponent extends ColumnMenuItemBase {
12406
12430
  autoSizeColumn(this.ctx.grid, this.service, this.column);
12407
12431
  }
12408
12432
  }
12409
- ColumnMenuAutoSizeColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnMenuAutoSizeColumnComponent, deps: [{ token: i1.LocalizationService }, { token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
12433
+ ColumnMenuAutoSizeColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnMenuAutoSizeColumnComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
12410
12434
  ColumnMenuAutoSizeColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ColumnMenuAutoSizeColumnComponent, selector: "kendo-grid-columnmenu-autosize-column", inputs: { column: "column" }, usesInheritance: true, ngImport: i0, template: `
12411
12435
  <kendo-grid-columnmenu-item
12412
12436
  *ngIf="!this.ctx.grid.virtualColumns"
12413
12437
  class="k-grid-columnmenu-autosize-column"
12414
- [text]="localization.get('autosizeThisColumn')"
12438
+ [text]="ctx.localization.get('autosizeThisColumn')"
12415
12439
  icon="max-width"
12416
12440
  [svgIcon]="maxWidthIcon"
12417
12441
  (itemClick)="autoSizeColumn()"
@@ -12425,14 +12449,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
12425
12449
  <kendo-grid-columnmenu-item
12426
12450
  *ngIf="!this.ctx.grid.virtualColumns"
12427
12451
  class="k-grid-columnmenu-autosize-column"
12428
- [text]="localization.get('autosizeThisColumn')"
12452
+ [text]="ctx.localization.get('autosizeThisColumn')"
12429
12453
  icon="max-width"
12430
12454
  [svgIcon]="maxWidthIcon"
12431
12455
  (itemClick)="autoSizeColumn()"
12432
12456
  ></kendo-grid-columnmenu-item>
12433
12457
  `
12434
12458
  }]
12435
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: ContextService }]; }, propDecorators: { column: [{
12459
+ }], ctorParameters: function () { return [{ type: ContextService }]; }, propDecorators: { column: [{
12436
12460
  type: Input
12437
12461
  }] } });
12438
12462
 
@@ -12455,11 +12479,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
12455
12479
  * ```
12456
12480
  */
12457
12481
  class ColumnMenuAutoSizeAllColumnsComponent extends ColumnMenuItemBase {
12458
- constructor(localization, ctx) {
12482
+ constructor(ctx) {
12459
12483
  super();
12460
- this.localization = localization;
12461
12484
  this.ctx = ctx;
12462
- this.displayInlineBlockIcon = displayInlineBlockIcon;
12485
+ this.displayInlineFlexIcon = displayInlineFlexIcon;
12463
12486
  }
12464
12487
  ngOnInit() {
12465
12488
  const isVirtualColumns = this.ctx.grid.columnMenuTemplate && this.ctx.grid.virtualColumns;
@@ -12474,13 +12497,13 @@ class ColumnMenuAutoSizeAllColumnsComponent extends ColumnMenuItemBase {
12474
12497
  autoSizeColumn(this.ctx.grid, this.service);
12475
12498
  }
12476
12499
  }
12477
- ColumnMenuAutoSizeAllColumnsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnMenuAutoSizeAllColumnsComponent, deps: [{ token: i1.LocalizationService }, { token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
12500
+ ColumnMenuAutoSizeAllColumnsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnMenuAutoSizeAllColumnsComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
12478
12501
  ColumnMenuAutoSizeAllColumnsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ColumnMenuAutoSizeAllColumnsComponent, selector: "kendo-grid-columnmenu-autosize-all-columns", usesInheritance: true, ngImport: i0, template: `
12479
12502
  <kendo-grid-columnmenu-item
12480
12503
  *ngIf="!this.ctx.grid.virtualColumns"
12481
- [text]="localization.get('autosizeAllColumns')"
12482
- icon="display-inline-block"
12483
- [svgIcon]="displayInlineBlockIcon"
12504
+ [text]="ctx.localization.get('autosizeAllColumns')"
12505
+ icon="display-inline-flex"
12506
+ [svgIcon]="displayInlineFlexIcon"
12484
12507
  (itemClick)="autoSizeAllColumns()"
12485
12508
  ></kendo-grid-columnmenu-item>
12486
12509
  `, isInline: true, components: [{ type: ColumnMenuItemComponent, selector: "kendo-grid-columnmenu-item", inputs: ["icon", "svgIcon", "text", "selected", "disabled", "expanded"], outputs: ["itemClick", "expand", "collapse"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
@@ -12491,14 +12514,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
12491
12514
  template: `
12492
12515
  <kendo-grid-columnmenu-item
12493
12516
  *ngIf="!this.ctx.grid.virtualColumns"
12494
- [text]="localization.get('autosizeAllColumns')"
12495
- icon="display-inline-block"
12496
- [svgIcon]="displayInlineBlockIcon"
12517
+ [text]="ctx.localization.get('autosizeAllColumns')"
12518
+ icon="display-inline-flex"
12519
+ [svgIcon]="displayInlineFlexIcon"
12497
12520
  (itemClick)="autoSizeAllColumns()"
12498
12521
  ></kendo-grid-columnmenu-item>
12499
12522
  `
12500
12523
  }]
12501
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: ContextService }]; } });
12524
+ }], ctorParameters: function () { return [{ type: ContextService }]; } });
12502
12525
 
12503
12526
  const POPUP_CLASS = 'k-grid-columnmenu-popup';
12504
12527
  /**
@@ -12513,12 +12536,14 @@ const POPUP_CLASS = 'k-grid-columnmenu-popup';
12513
12536
  * </kendo-grid>
12514
12537
  */
12515
12538
  class ColumnMenuComponent {
12516
- constructor(navigationService, popupService, localization, service, ctx) {
12539
+ constructor(navigationService, popupService, service, ctx, renderer, cdr, columnInfoService) {
12517
12540
  this.navigationService = navigationService;
12518
12541
  this.popupService = popupService;
12519
- this.localization = localization;
12520
12542
  this.service = service;
12521
12543
  this.ctx = ctx;
12544
+ this.renderer = renderer;
12545
+ this.cdr = cdr;
12546
+ this.columnInfoService = columnInfoService;
12522
12547
  /**
12523
12548
  * @hidden
12524
12549
  */
@@ -12535,6 +12560,22 @@ class ColumnMenuComponent {
12535
12560
  * @hidden
12536
12561
  */
12537
12562
  this.tabIndex = '-1';
12563
+ /**
12564
+ * @hidden
12565
+ */
12566
+ this.columnsIcon = columnsIcon;
12567
+ /**
12568
+ * @hidden
12569
+ */
12570
+ this.actionsClass = 'k-actions';
12571
+ /**
12572
+ * @hidden
12573
+ */
12574
+ this.moreHorizontalIcon = moreHorizontalIcon;
12575
+ /**
12576
+ * @hidden
12577
+ */
12578
+ this.filterIcon = filterIcon;
12538
12579
  /**
12539
12580
  * @hidden
12540
12581
  */
@@ -12550,6 +12591,17 @@ class ColumnMenuComponent {
12550
12591
  this.moreVerticalIcon = moreVerticalIcon;
12551
12592
  this.closeSubscription = service.closeMenu.subscribe(this.close.bind(this));
12552
12593
  }
12594
+ /**
12595
+ * @hidden
12596
+ */
12597
+ get showGeneralTab() {
12598
+ return this.hasSort
12599
+ || this.hasLock
12600
+ || this.hasStick
12601
+ || this.hasPosition
12602
+ || this.hasAutoSizeColumn
12603
+ || this.hasAutoSizeAllColumns;
12604
+ }
12553
12605
  /**
12554
12606
  * @hidden
12555
12607
  */
@@ -12575,6 +12627,16 @@ class ColumnMenuComponent {
12575
12627
  get hasColumnChooser() {
12576
12628
  return hasColumnChooser(this.settings);
12577
12629
  }
12630
+ /**
12631
+ * @hidden
12632
+ */
12633
+ onApply(changed) {
12634
+ this.close();
12635
+ if (changed.length) {
12636
+ this.cdr.markForCheck();
12637
+ this.columnInfoService.changeVisibility(changed);
12638
+ }
12639
+ }
12578
12640
  /**
12579
12641
  * @hidden
12580
12642
  */
@@ -12605,6 +12667,12 @@ class ColumnMenuComponent {
12605
12667
  get hasPosition() {
12606
12668
  return hasPosition(this.settings, this.column);
12607
12669
  }
12670
+ /**
12671
+ * @hidden
12672
+ */
12673
+ get columns() {
12674
+ return this.columnInfoService.leafNamedColumns;
12675
+ }
12608
12676
  ngAfterViewInit() {
12609
12677
  if (this.ctx.grid.virtualColumns && isDevMode()) {
12610
12678
  if (this.settings.autoSizeAllColumns) {
@@ -12616,6 +12684,7 @@ class ColumnMenuComponent {
12616
12684
  console.warn(ColunnMenuErrorMessages.autoSizeColumn);
12617
12685
  }
12618
12686
  }
12687
+ this.service.menuTabbingService.isTabbedInterface = this.settings.view === 'tabbed' ? true : false;
12619
12688
  }
12620
12689
  ngOnChanges() {
12621
12690
  this.service.column = this.column;
@@ -12631,6 +12700,7 @@ class ColumnMenuComponent {
12631
12700
  * @hidden
12632
12701
  */
12633
12702
  toggle(e, anchor, template) {
12703
+ var _a;
12634
12704
  if (e) {
12635
12705
  e.preventDefault();
12636
12706
  e.stopImmediatePropagation();
@@ -12639,6 +12709,11 @@ class ColumnMenuComponent {
12639
12709
  this.expandedColumns = this.getExpandedState(this.settings.columnChooser);
12640
12710
  this.expandedPosition = this.getExpandedState(this.settings.setColumnPosition);
12641
12711
  this.popupRef = this.popupService.open(anchor, template, this.popupRef, POPUP_CLASS);
12712
+ if (this.popupRef && this.settings.view === 'tabbed') {
12713
+ this.renderer.addClass(this.popupRef.popupElement.firstChild, 'k-column-menu-tabbed');
12714
+ this.cdr.detectChanges();
12715
+ (_a = this.tabStrip) === null || _a === void 0 ? void 0 : _a.selectTab(0);
12716
+ }
12642
12717
  if (!this.popupRef) {
12643
12718
  if (this.navigationService.tableEnabled) {
12644
12719
  this.navigationService.focusCell(0, this.column.leafIndex);
@@ -12665,7 +12740,7 @@ class ColumnMenuComponent {
12665
12740
  * @hidden
12666
12741
  */
12667
12742
  get columnMenuTitle() {
12668
- const localizationMsg = this.localization.get('columnMenu') || '';
12743
+ const localizationMsg = this.ctx.localization.get('columnMenu') || '';
12669
12744
  const columnName = this.column.title || this.column.field;
12670
12745
  return replaceMessagePlaceholder(localizationMsg, 'columnName', columnName);
12671
12746
  }
@@ -12673,11 +12748,11 @@ class ColumnMenuComponent {
12673
12748
  return typeof (menuItemSettings) === 'object' ? menuItemSettings.expanded : false;
12674
12749
  }
12675
12750
  }
12676
- ColumnMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnMenuComponent, deps: [{ token: NavigationService }, { token: SinglePopupService }, { token: i1.LocalizationService }, { token: ColumnMenuService }, { token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
12751
+ ColumnMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnMenuComponent, deps: [{ token: NavigationService }, { token: SinglePopupService }, { token: ColumnMenuService }, { token: ContextService }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: ColumnInfoService }], target: i0.ɵɵFactoryTarget.Component });
12677
12752
  ColumnMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ColumnMenuComponent, selector: "kendo-grid-column-menu", inputs: { standalone: "standalone", column: "column", settings: "settings", sort: "sort", filter: "filter", sortable: "sortable", columnMenuTemplate: "columnMenuTemplate", tabIndex: "tabIndex" }, host: { properties: { "class.k-grid-column-menu-standalone": "this.standalone" } }, providers: [
12678
12753
  ColumnMenuService,
12679
12754
  MenuTabbingService
12680
- ], viewQueries: [{ propertyName: "anchor", first: true, predicate: ["anchor"], descendants: true, static: true }, { propertyName: "template", first: true, predicate: ["template"], descendants: true, read: TemplateRef, static: true }], usesOnChanges: true, ngImport: i0, template: `
12755
+ ], viewQueries: [{ propertyName: "anchor", first: true, predicate: ["anchor"], descendants: true, static: true }, { propertyName: "template", first: true, predicate: ["template"], descendants: true, read: TemplateRef, static: true }, { propertyName: "defaultTemplate", first: true, predicate: ["defaultTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "tabbedInterfaceTemplate", first: true, predicate: ["tabbedInterfaceTemplate"], descendants: true, read: TemplateRef, static: true }, { propertyName: "tabStrip", first: true, predicate: TabStripComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: `
12681
12756
  <a #anchor
12682
12757
  class="k-grid-header-menu k-grid-column-menu"
12683
12758
  [ngClass]="{ 'k-active': isActive }"
@@ -12692,7 +12767,7 @@ ColumnMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
12692
12767
  </a>
12693
12768
  <ng-template #template>
12694
12769
  <ng-container
12695
- [ngTemplateOutlet]="column.columnMenuTemplateRef || columnMenuTemplate || defaultTemplate"
12770
+ [ngTemplateOutlet]="this.column.columnMenuTemplateRef || this.columnMenuTemplate || (this.settings.view === 'tabbed' ? this.tabbedInterfaceTemplate : this.defaultTemplate)"
12696
12771
  [ngTemplateOutletContext]="{ service: service, column: column }">
12697
12772
  </ng-container>
12698
12773
  </ng-template>
@@ -12749,7 +12824,95 @@ ColumnMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
12749
12824
  </kendo-grid-columnmenu-filter>
12750
12825
  </kendo-grid-columnmenu-container>
12751
12826
  </ng-template>
12752
- `, isInline: true, components: [{ type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass"], exportAs: ["kendoIconWrapper"] }, { type: ColumnMenuContainerComponent, selector: "kendo-grid-columnmenu-container" }, { type: ColumnMenuSortComponent, selector: "kendo-grid-columnmenu-sort" }, { type: ColumnMenuLockComponent, selector: "kendo-grid-columnmenu-lock" }, { type: ColumnMenuStickComponent, selector: "kendo-grid-columnmenu-stick" }, { type: ColumnMenuPositionComponent, selector: "kendo-grid-columnmenu-position", inputs: ["expanded", "showLock", "showStick", "isLast"], outputs: ["expand", "collapse"] }, { type: ColumnMenuChooserComponent, selector: "kendo-grid-columnmenu-chooser", inputs: ["expanded", "isLast"], outputs: ["expand", "collapse"] }, { type: ColumnMenuAutoSizeColumnComponent, selector: "kendo-grid-columnmenu-autosize-column", inputs: ["column"] }, { type: ColumnMenuAutoSizeAllColumnsComponent, selector: "kendo-grid-columnmenu-autosize-all-columns" }, { type: ColumnMenuFilterComponent, selector: "kendo-grid-columnmenu-filter", inputs: ["expanded", "isLast"], outputs: ["expand", "collapse"] }], directives: [{ type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: ColumnMenuItemDirective, selector: "[kendoGridColumnMenuItem]", inputs: ["kendoGridColumnMenuItem"] }] });
12827
+ <ng-template #tabbedInterfaceTemplate>
12828
+ <kendo-tabstrip #tabstrip (keydown.escape)="close()">
12829
+ <kendo-tabstrip-tab *ngIf="hasFilter">
12830
+ <ng-template kendoTabTitle>
12831
+ <kendo-icon-wrapper
12832
+ [attr.title]="ctx.localization.get('columnMenuFilterTabTitle')"
12833
+ name="filter"
12834
+ [svgIcon]="filterIcon">
12835
+ </kendo-icon-wrapper>
12836
+ </ng-template>
12837
+ <ng-template kendoTabContent>
12838
+ <kendo-grid-filter-menu-container
12839
+ [column]="service.column"
12840
+ [menuTabbingService]="service.menuTabbingService"
12841
+ [filter]="service.filter"
12842
+ [actionsClass]="actionsClass"
12843
+ (keydown.shift.tab)="$event.stopImmediatePropagation()"
12844
+ (close)="close()">
12845
+ </kendo-grid-filter-menu-container>
12846
+ </ng-template>
12847
+ </kendo-tabstrip-tab>
12848
+ <kendo-tabstrip-tab *ngIf="showGeneralTab">
12849
+ <ng-template kendoTabTitle>
12850
+ <kendo-icon-wrapper
12851
+ [attr.title]="ctx.localization.get('columnMenuGeneralTabTitle')"
12852
+ name="more-horizontal"
12853
+ [svgIcon]="moreHorizontalIcon">
12854
+ </kendo-icon-wrapper>
12855
+ </ng-template>
12856
+ <ng-template kendoTabContent>
12857
+ <kendo-grid-columnmenu-sort #sortItem [kendoGridColumnMenuItem]="sortItem" *ngIf="hasSort" [service]="service">
12858
+ </kendo-grid-columnmenu-sort>
12859
+ <span [style.borderColor]="'rgba(0, 0, 0, 0.08)'" *ngIf="hasSort && (hasLock || hasStick || hasPosition || hasAutoSizeColumn || hasAutoSizeAllColumns)" class="k-separator"></span>
12860
+ <kendo-grid-columnmenu-lock #lockItem *ngIf="hasLock && !hasPosition" [kendoGridColumnMenuItem]="lockItem" [service]="service">
12861
+ </kendo-grid-columnmenu-lock>
12862
+ <kendo-grid-columnmenu-stick #stickItem *ngIf="hasStick && !hasPosition" [kendoGridColumnMenuItem]="stickItem" [service]="service">
12863
+ </kendo-grid-columnmenu-stick>
12864
+ <span [style.borderColor]="'rgba(0, 0, 0, 0.08)'" *ngIf="(hasLock || hasStick) && !hasPosition && (hasAutoSizeColumn || hasAutoSizeAllColumns)" class="k-separator"></span>
12865
+ <kendo-grid-columnmenu-position
12866
+ #positionItem
12867
+ *ngIf="hasPosition"
12868
+ [showLock]="hasLock"
12869
+ [showStick]="hasStick"
12870
+ [kendoGridColumnMenuItem]="positionItem"
12871
+ [service]="service"
12872
+ [expanded]="expandedPosition">
12873
+ </kendo-grid-columnmenu-position>
12874
+ <span [style.borderColor]="'rgba(0, 0, 0, 0.08)'" *ngIf="hasPosition && (hasAutoSizeColumn || hasAutoSizeAllColumns)" class="k-separator"></span>
12875
+ <kendo-grid-columnmenu-autosize-column
12876
+ #autoSizeColumnItem
12877
+ *ngIf="hasAutoSizeColumn"
12878
+ [service]="service"
12879
+ [kendoGridColumnMenuItem]="autoSizeColumnItem"
12880
+ [column]="column"
12881
+ >
12882
+ </kendo-grid-columnmenu-autosize-column>
12883
+ <kendo-grid-columnmenu-autosize-all-columns
12884
+ #autoSizeAllColumnsItem
12885
+ *ngIf="hasAutoSizeAllColumns"
12886
+ [service]="service"
12887
+ [kendoGridColumnMenuItem]="autoSizeAllColumnsItem"
12888
+ >
12889
+ </kendo-grid-columnmenu-autosize-all-columns>
12890
+ </ng-template>
12891
+ </kendo-tabstrip-tab>
12892
+ <kendo-tabstrip-tab *ngIf="hasColumnChooser">
12893
+ <ng-template kendoTabTitle>
12894
+ <kendo-icon-wrapper
12895
+ [attr.title]="ctx.localization.get('columnMenuColumnsTabTitle')"
12896
+ name="columns"
12897
+ [svgIcon]="columnsIcon">
12898
+ </kendo-icon-wrapper>
12899
+ </ng-template>
12900
+ <ng-template kendoTabContent>
12901
+ <kendo-grid-columnlist
12902
+ [applyText]="ctx.localization.get('columnsApply')"
12903
+ [resetText]="ctx.localization.get('columnsReset')"
12904
+ [columns]="columns"
12905
+ [autoSync]="false"
12906
+ [allowHideAll]="false"
12907
+ [actionsClass]="actionsClass"
12908
+ [service]="service"
12909
+ (apply)="onApply($event)">
12910
+ </kendo-grid-columnlist>
12911
+ </ng-template>
12912
+ </kendo-tabstrip-tab>
12913
+ </kendo-tabstrip>
12914
+ </ng-template>
12915
+ `, isInline: true, components: [{ type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { type: ColumnMenuContainerComponent, selector: "kendo-grid-columnmenu-container" }, { type: ColumnMenuSortComponent, selector: "kendo-grid-columnmenu-sort" }, { type: ColumnMenuLockComponent, selector: "kendo-grid-columnmenu-lock" }, { type: ColumnMenuStickComponent, selector: "kendo-grid-columnmenu-stick" }, { type: ColumnMenuPositionComponent, selector: "kendo-grid-columnmenu-position", inputs: ["expanded", "showLock", "showStick", "isLast"], outputs: ["expand", "collapse"] }, { type: ColumnMenuChooserComponent, selector: "kendo-grid-columnmenu-chooser", inputs: ["expanded", "isLast"], outputs: ["expand", "collapse"] }, { type: ColumnMenuAutoSizeColumnComponent, selector: "kendo-grid-columnmenu-autosize-column", inputs: ["column"] }, { type: ColumnMenuAutoSizeAllColumnsComponent, selector: "kendo-grid-columnmenu-autosize-all-columns" }, { type: ColumnMenuFilterComponent, selector: "kendo-grid-columnmenu-filter", inputs: ["expanded", "isLast"], outputs: ["expand", "collapse"] }, { type: i16.TabStripComponent, selector: "kendo-tabstrip", inputs: ["height", "animate", "tabAlignment", "tabPosition", "keepTabContent", "closable", "scrollable", "closeIcon", "closeIconClass", "closeSVGIcon"], outputs: ["tabSelect", "tabClose", "tabScroll"], exportAs: ["kendoTabStrip"] }, { type: i16.TabStripTabComponent, selector: "kendo-tabstrip-tab", inputs: ["title", "disabled", "cssClass", "cssStyle", "selected", "closable", "closeIcon", "closeIconClass", "closeSVGIcon"], exportAs: ["kendoTabStripTab"] }, { type: FilterMenuContainerComponent, selector: "kendo-grid-filter-menu-container", inputs: ["column", "isLast", "isExpanded", "menuTabbingService", "filter", "actionsClass"], outputs: ["close"] }, { type: ColumnListComponent, selector: "kendo-grid-columnlist", inputs: ["columns", "autoSync", "allowHideAll", "applyText", "resetText", "actionsClass", "isLast", "isExpanded", "service"], outputs: ["reset", "apply", "columnChange"] }], directives: [{ type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: ColumnMenuItemDirective, selector: "[kendoGridColumnMenuItem]", inputs: ["kendoGridColumnMenuItem"] }, { type: i16.TabTitleDirective, selector: "[kendoTabTitle]" }, { type: i16.TabContentDirective, selector: "[kendoTabContent]" }] });
12753
12916
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnMenuComponent, decorators: [{
12754
12917
  type: Component,
12755
12918
  args: [{
@@ -12773,7 +12936,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
12773
12936
  </a>
12774
12937
  <ng-template #template>
12775
12938
  <ng-container
12776
- [ngTemplateOutlet]="column.columnMenuTemplateRef || columnMenuTemplate || defaultTemplate"
12939
+ [ngTemplateOutlet]="this.column.columnMenuTemplateRef || this.columnMenuTemplate || (this.settings.view === 'tabbed' ? this.tabbedInterfaceTemplate : this.defaultTemplate)"
12777
12940
  [ngTemplateOutletContext]="{ service: service, column: column }">
12778
12941
  </ng-container>
12779
12942
  </ng-template>
@@ -12830,9 +12993,97 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
12830
12993
  </kendo-grid-columnmenu-filter>
12831
12994
  </kendo-grid-columnmenu-container>
12832
12995
  </ng-template>
12996
+ <ng-template #tabbedInterfaceTemplate>
12997
+ <kendo-tabstrip #tabstrip (keydown.escape)="close()">
12998
+ <kendo-tabstrip-tab *ngIf="hasFilter">
12999
+ <ng-template kendoTabTitle>
13000
+ <kendo-icon-wrapper
13001
+ [attr.title]="ctx.localization.get('columnMenuFilterTabTitle')"
13002
+ name="filter"
13003
+ [svgIcon]="filterIcon">
13004
+ </kendo-icon-wrapper>
13005
+ </ng-template>
13006
+ <ng-template kendoTabContent>
13007
+ <kendo-grid-filter-menu-container
13008
+ [column]="service.column"
13009
+ [menuTabbingService]="service.menuTabbingService"
13010
+ [filter]="service.filter"
13011
+ [actionsClass]="actionsClass"
13012
+ (keydown.shift.tab)="$event.stopImmediatePropagation()"
13013
+ (close)="close()">
13014
+ </kendo-grid-filter-menu-container>
13015
+ </ng-template>
13016
+ </kendo-tabstrip-tab>
13017
+ <kendo-tabstrip-tab *ngIf="showGeneralTab">
13018
+ <ng-template kendoTabTitle>
13019
+ <kendo-icon-wrapper
13020
+ [attr.title]="ctx.localization.get('columnMenuGeneralTabTitle')"
13021
+ name="more-horizontal"
13022
+ [svgIcon]="moreHorizontalIcon">
13023
+ </kendo-icon-wrapper>
13024
+ </ng-template>
13025
+ <ng-template kendoTabContent>
13026
+ <kendo-grid-columnmenu-sort #sortItem [kendoGridColumnMenuItem]="sortItem" *ngIf="hasSort" [service]="service">
13027
+ </kendo-grid-columnmenu-sort>
13028
+ <span [style.borderColor]="'rgba(0, 0, 0, 0.08)'" *ngIf="hasSort && (hasLock || hasStick || hasPosition || hasAutoSizeColumn || hasAutoSizeAllColumns)" class="k-separator"></span>
13029
+ <kendo-grid-columnmenu-lock #lockItem *ngIf="hasLock && !hasPosition" [kendoGridColumnMenuItem]="lockItem" [service]="service">
13030
+ </kendo-grid-columnmenu-lock>
13031
+ <kendo-grid-columnmenu-stick #stickItem *ngIf="hasStick && !hasPosition" [kendoGridColumnMenuItem]="stickItem" [service]="service">
13032
+ </kendo-grid-columnmenu-stick>
13033
+ <span [style.borderColor]="'rgba(0, 0, 0, 0.08)'" *ngIf="(hasLock || hasStick) && !hasPosition && (hasAutoSizeColumn || hasAutoSizeAllColumns)" class="k-separator"></span>
13034
+ <kendo-grid-columnmenu-position
13035
+ #positionItem
13036
+ *ngIf="hasPosition"
13037
+ [showLock]="hasLock"
13038
+ [showStick]="hasStick"
13039
+ [kendoGridColumnMenuItem]="positionItem"
13040
+ [service]="service"
13041
+ [expanded]="expandedPosition">
13042
+ </kendo-grid-columnmenu-position>
13043
+ <span [style.borderColor]="'rgba(0, 0, 0, 0.08)'" *ngIf="hasPosition && (hasAutoSizeColumn || hasAutoSizeAllColumns)" class="k-separator"></span>
13044
+ <kendo-grid-columnmenu-autosize-column
13045
+ #autoSizeColumnItem
13046
+ *ngIf="hasAutoSizeColumn"
13047
+ [service]="service"
13048
+ [kendoGridColumnMenuItem]="autoSizeColumnItem"
13049
+ [column]="column"
13050
+ >
13051
+ </kendo-grid-columnmenu-autosize-column>
13052
+ <kendo-grid-columnmenu-autosize-all-columns
13053
+ #autoSizeAllColumnsItem
13054
+ *ngIf="hasAutoSizeAllColumns"
13055
+ [service]="service"
13056
+ [kendoGridColumnMenuItem]="autoSizeAllColumnsItem"
13057
+ >
13058
+ </kendo-grid-columnmenu-autosize-all-columns>
13059
+ </ng-template>
13060
+ </kendo-tabstrip-tab>
13061
+ <kendo-tabstrip-tab *ngIf="hasColumnChooser">
13062
+ <ng-template kendoTabTitle>
13063
+ <kendo-icon-wrapper
13064
+ [attr.title]="ctx.localization.get('columnMenuColumnsTabTitle')"
13065
+ name="columns"
13066
+ [svgIcon]="columnsIcon">
13067
+ </kendo-icon-wrapper>
13068
+ </ng-template>
13069
+ <ng-template kendoTabContent>
13070
+ <kendo-grid-columnlist
13071
+ [applyText]="ctx.localization.get('columnsApply')"
13072
+ [resetText]="ctx.localization.get('columnsReset')"
13073
+ [columns]="columns"
13074
+ [autoSync]="false"
13075
+ [allowHideAll]="false"
13076
+ [actionsClass]="actionsClass"
13077
+ [service]="service"
13078
+ (apply)="onApply($event)">
13079
+ </kendo-grid-columnlist>
13080
+ </ng-template>
13081
+ </kendo-tabstrip-tab>
13082
+ </kendo-tabstrip>
13083
+ </ng-template>
12833
13084
  `
12834
13085
  }]
12835
- }], ctorParameters: function () { return [{ type: NavigationService }, { type: SinglePopupService }, { type: i1.LocalizationService }, { type: ColumnMenuService }, { type: ContextService }]; }, propDecorators: { standalone: [{
13086
+ }], ctorParameters: function () { return [{ type: NavigationService }, { type: SinglePopupService }, { type: ColumnMenuService }, { type: ContextService }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: ColumnInfoService }]; }, propDecorators: { standalone: [{
12836
13087
  type: HostBinding,
12837
13088
  args: ['class.k-grid-column-menu-standalone']
12838
13089
  }, {
@@ -12857,6 +13108,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
12857
13108
  }], template: [{
12858
13109
  type: ViewChild,
12859
13110
  args: ['template', { static: true, read: TemplateRef }]
13111
+ }], defaultTemplate: [{
13112
+ type: ViewChild,
13113
+ args: ['defaultTemplate', { static: true, read: TemplateRef }]
13114
+ }], tabbedInterfaceTemplate: [{
13115
+ type: ViewChild,
13116
+ args: ['tabbedInterfaceTemplate', { static: true, read: TemplateRef }]
13117
+ }], tabStrip: [{
13118
+ type: ViewChild,
13119
+ args: [TabStripComponent]
12860
13120
  }] } });
12861
13121
 
12862
13122
  /**
@@ -12877,8 +13137,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
12877
13137
  * ```
12878
13138
  */
12879
13139
  class FilterCellOperatorsComponent {
12880
- constructor(localization, sizing) {
12881
- this.localization = localization;
13140
+ constructor(ctx, sizing) {
13141
+ this.ctx = ctx;
12882
13142
  this.sizing = sizing;
12883
13143
  this.clearText = 'Clear';
12884
13144
  this.filterClearIcon = filterClearIcon;
@@ -12947,7 +13207,7 @@ class FilterCellOperatorsComponent {
12947
13207
  }
12948
13208
  }
12949
13209
  ngOnInit() {
12950
- this.subs = this.localization.changes.subscribe(() => this.clearText = this.localization.get('filterClearButton'));
13210
+ this.subs = this.ctx.localization.changes.subscribe(() => this.clearText = this.ctx.localization.get('filterClearButton'));
12951
13211
  this.subs.add(this.sizing.changes.subscribe((size) => this.size = size));
12952
13212
  }
12953
13213
  ngOnDestroy() {
@@ -12956,7 +13216,7 @@ class FilterCellOperatorsComponent {
12956
13216
  }
12957
13217
  }
12958
13218
  }
12959
- FilterCellOperatorsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FilterCellOperatorsComponent, deps: [{ token: i1.LocalizationService }, { token: SizingOptionsService }], target: i0.ɵɵFactoryTarget.Component });
13219
+ FilterCellOperatorsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FilterCellOperatorsComponent, deps: [{ token: ContextService }, { token: SizingOptionsService }], target: i0.ɵɵFactoryTarget.Component });
12960
13220
  FilterCellOperatorsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: FilterCellOperatorsComponent, selector: "kendo-grid-filter-cell-operators", inputs: { operators: "operators", showButton: "showButton", showOperators: "showOperators", value: "value" }, outputs: { valueChange: "valueChange", clear: "clear" }, host: { properties: { "class.k-filtercell-operator": "this.hostClasses" } }, viewQueries: [{ propertyName: "dropdown", first: true, predicate: ["dropdown"], descendants: true }], ngImport: i0, template: `
12961
13221
  <kendo-dropdownlist
12962
13222
  #dropdown
@@ -13018,7 +13278,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
13018
13278
  (keydown)="clearKeydown($event)"></button>
13019
13279
  `
13020
13280
  }]
13021
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: SizingOptionsService }]; }, propDecorators: { hostClasses: [{
13281
+ }], ctorParameters: function () { return [{ type: ContextService }, { type: SizingOptionsService }]; }, propDecorators: { hostClasses: [{
13022
13282
  type: HostBinding,
13023
13283
  args: ['class.k-filtercell-operator']
13024
13284
  }], dropdown: [{
@@ -13115,8 +13375,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
13115
13375
  * ```
13116
13376
  */
13117
13377
  class StringFilterCellComponent extends StringFilterComponent {
13118
- constructor(filterService, localization, sizingService) {
13119
- super(filterService, localization);
13378
+ constructor(filterService, ctx, sizingService) {
13379
+ super(filterService, ctx);
13120
13380
  /**
13121
13381
  * Determines the delay time (in milliseconds) before the filter value is submitted.
13122
13382
  * A value of `0` indicates no delay.
@@ -13141,12 +13401,12 @@ class StringFilterCellComponent extends StringFilterComponent {
13141
13401
  * @hidden
13142
13402
  */
13143
13403
  get columnLabel() {
13144
- const localizationMsg = this.localization.get('filterInputLabel') || '';
13404
+ const localizationMsg = this.ctx.localization.get('filterInputLabel') || '';
13145
13405
  const columnName = this.column.title || this.column.field;
13146
13406
  return replaceMessagePlaceholder(localizationMsg, 'columnName', columnName);
13147
13407
  }
13148
13408
  }
13149
- StringFilterCellComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: StringFilterCellComponent, deps: [{ token: FilterService }, { token: i1.LocalizationService }, { token: SizingOptionsService }], target: i0.ɵɵFactoryTarget.Component });
13409
+ StringFilterCellComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: StringFilterCellComponent, deps: [{ token: FilterService }, { token: ContextService }, { token: SizingOptionsService }], target: i0.ɵɵFactoryTarget.Component });
13150
13410
  StringFilterCellComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: StringFilterCellComponent, selector: "kendo-grid-string-filter-cell", inputs: { filterDelay: "filterDelay", showOperators: "showOperators" }, usesInheritance: true, ngImport: i0, template: `
13151
13411
  <kendo-grid-filter-wrapper-cell
13152
13412
  [column]="column"
@@ -13186,7 +13446,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
13186
13446
  </kendo-grid-filter-wrapper-cell>
13187
13447
  `
13188
13448
  }]
13189
- }], ctorParameters: function () { return [{ type: FilterService }, { type: i1.LocalizationService }, { type: SizingOptionsService }]; }, propDecorators: { filterDelay: [{
13449
+ }], ctorParameters: function () { return [{ type: FilterService }, { type: ContextService }, { type: SizingOptionsService }]; }, propDecorators: { filterDelay: [{
13190
13450
  type: Input
13191
13451
  }], showOperators: [{
13192
13452
  type: Input
@@ -13209,13 +13469,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
13209
13469
  * ```
13210
13470
  */
13211
13471
  class NumericFilterCellComponent extends NumericFilterComponent {
13212
- constructor(filterService, localization, sizingService) {
13213
- super(filterService, localization);
13214
- this.localization = localization;
13472
+ constructor(filterService, ctx, sizingService) {
13473
+ super(filterService, ctx);
13474
+ this.ctx = ctx;
13215
13475
  /**
13216
13476
  * Determines the delay time (in milliseconds) before the filter value is submitted.
13217
13477
  * A value of `0` indicates no delay. The default value is `500`.
13218
- * @type {boolean}
13478
+ * @type {boolean}\
13219
13479
  * @default 500
13220
13480
  */
13221
13481
  this.filterDelay = 500;
@@ -13235,18 +13495,18 @@ class NumericFilterCellComponent extends NumericFilterComponent {
13235
13495
  * @hidden
13236
13496
  */
13237
13497
  messageFor(key) {
13238
- return this.localization.get(key);
13498
+ return this.ctx.localization.get(key);
13239
13499
  }
13240
13500
  /**
13241
13501
  * @hidden
13242
13502
  */
13243
13503
  get columnLabel() {
13244
- const localizationMsg = this.localization.get('filterInputLabel') || '';
13504
+ const localizationMsg = this.ctx.localization.get('filterInputLabel') || '';
13245
13505
  const columnName = this.column.title || this.column.field;
13246
13506
  return replaceMessagePlaceholder(localizationMsg, 'columnName', columnName);
13247
13507
  }
13248
13508
  }
13249
- NumericFilterCellComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: NumericFilterCellComponent, deps: [{ token: FilterService }, { token: i1.LocalizationService }, { token: SizingOptionsService }], target: i0.ɵɵFactoryTarget.Component });
13509
+ NumericFilterCellComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: NumericFilterCellComponent, deps: [{ token: FilterService }, { token: ContextService }, { token: SizingOptionsService }], target: i0.ɵɵFactoryTarget.Component });
13250
13510
  NumericFilterCellComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: NumericFilterCellComponent, selector: "kendo-grid-numeric-filter-cell", inputs: { filterDelay: "filterDelay", showOperators: "showOperators" }, usesInheritance: true, ngImport: i0, template: `
13251
13511
  <kendo-grid-filter-wrapper-cell
13252
13512
  [column]="column"
@@ -13314,7 +13574,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
13314
13574
  </kendo-grid-filter-wrapper-cell>
13315
13575
  `
13316
13576
  }]
13317
- }], ctorParameters: function () { return [{ type: FilterService }, { type: i1.LocalizationService }, { type: SizingOptionsService }]; }, propDecorators: { filterDelay: [{
13577
+ }], ctorParameters: function () { return [{ type: FilterService }, { type: ContextService }, { type: SizingOptionsService }]; }, propDecorators: { filterDelay: [{
13318
13578
  type: Input
13319
13579
  }], showOperators: [{
13320
13580
  type: Input
@@ -13338,8 +13598,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
13338
13598
  * ```
13339
13599
  */
13340
13600
  class BooleanFilterCellComponent extends BooleanFilterComponent {
13341
- constructor(filterService, localization, cd, sizingService) {
13342
- super(filterService, localization);
13601
+ constructor(filterService, ctx, cd, sizingService) {
13602
+ super(filterService, ctx);
13343
13603
  this.cd = cd;
13344
13604
  /**
13345
13605
  * @hidden
@@ -13358,12 +13618,12 @@ class BooleanFilterCellComponent extends BooleanFilterComponent {
13358
13618
  * @hidden
13359
13619
  */
13360
13620
  get columnLabel() {
13361
- const localizationMsg = this.localization.get('filterInputLabel') || '';
13621
+ const localizationMsg = this.ctx.localization.get('filterInputLabel') || '';
13362
13622
  const columnName = this.column.title || this.column.field;
13363
13623
  return replaceMessagePlaceholder(localizationMsg, 'columnName', columnName);
13364
13624
  }
13365
13625
  }
13366
- BooleanFilterCellComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BooleanFilterCellComponent, deps: [{ token: FilterService }, { token: i1.LocalizationService }, { token: i0.ChangeDetectorRef }, { token: SizingOptionsService }], target: i0.ɵɵFactoryTarget.Component });
13626
+ BooleanFilterCellComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BooleanFilterCellComponent, deps: [{ token: FilterService }, { token: ContextService }, { token: i0.ChangeDetectorRef }, { token: SizingOptionsService }], target: i0.ɵɵFactoryTarget.Component });
13367
13627
  BooleanFilterCellComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: BooleanFilterCellComponent, selector: "kendo-grid-boolean-filter-cell", usesInheritance: true, ngImport: i0, template: `
13368
13628
  <kendo-grid-filter-wrapper-cell
13369
13629
  [column]="column"
@@ -13411,7 +13671,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
13411
13671
  </kendo-grid-filter-wrapper-cell>
13412
13672
  `
13413
13673
  }]
13414
- }], ctorParameters: function () { return [{ type: FilterService }, { type: i1.LocalizationService }, { type: i0.ChangeDetectorRef }, { type: SizingOptionsService }]; } });
13674
+ }], ctorParameters: function () { return [{ type: FilterService }, { type: ContextService }, { type: i0.ChangeDetectorRef }, { type: SizingOptionsService }]; } });
13415
13675
 
13416
13676
  /**
13417
13677
  * Represents a [DatePicker](slug:overview_datepicker) filter-cell component.
@@ -13430,9 +13690,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
13430
13690
  * ```
13431
13691
  */
13432
13692
  class DateFilterCellComponent extends DateFilterComponent {
13433
- constructor(filterService, localization, sizingService) {
13434
- super(filterService, localization);
13435
- this.localization = localization;
13693
+ constructor(filterService, ctx, sizingService) {
13694
+ super(filterService, ctx);
13695
+ this.ctx = ctx;
13436
13696
  /**
13437
13697
  * Represents a [DatePicker](slug:overview_datepicker) filter-cell component.
13438
13698
  * [See example](slug:filter_row#toc-built-in-filter-row-components).
@@ -13461,18 +13721,18 @@ class DateFilterCellComponent extends DateFilterComponent {
13461
13721
  * @hidden
13462
13722
  */
13463
13723
  messageFor(key) {
13464
- return this.localization.get(key);
13724
+ return this.ctx.localization.get(key);
13465
13725
  }
13466
13726
  /**
13467
13727
  * @hidden
13468
13728
  */
13469
13729
  get columnLabel() {
13470
- const localizationMsg = this.localization.get('filterInputLabel') || '';
13730
+ const localizationMsg = this.ctx.localization.get('filterInputLabel') || '';
13471
13731
  const columnName = this.column.title || this.column.field;
13472
13732
  return replaceMessagePlaceholder(localizationMsg, 'columnName', columnName);
13473
13733
  }
13474
13734
  }
13475
- DateFilterCellComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DateFilterCellComponent, deps: [{ token: FilterService }, { token: i1.LocalizationService }, { token: SizingOptionsService }], target: i0.ɵɵFactoryTarget.Component });
13735
+ DateFilterCellComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DateFilterCellComponent, deps: [{ token: FilterService }, { token: ContextService }, { token: SizingOptionsService }], target: i0.ɵɵFactoryTarget.Component });
13476
13736
  DateFilterCellComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: DateFilterCellComponent, selector: "kendo-grid-date-filter-cell", inputs: { showOperators: "showOperators" }, usesInheritance: true, ngImport: i0, template: `
13477
13737
  <kendo-grid-filter-wrapper-cell
13478
13738
  [column]="column"
@@ -13542,7 +13802,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
13542
13802
  </kendo-grid-filter-wrapper-cell>
13543
13803
  `
13544
13804
  }]
13545
- }], ctorParameters: function () { return [{ type: FilterService }, { type: i1.LocalizationService }, { type: SizingOptionsService }]; }, propDecorators: { showOperators: [{
13805
+ }], ctorParameters: function () { return [{ type: FilterService }, { type: ContextService }, { type: SizingOptionsService }]; }, propDecorators: { showOperators: [{
13546
13806
  type: Input
13547
13807
  }] } });
13548
13808
 
@@ -13839,8 +14099,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
13839
14099
  * @hidden
13840
14100
  */
13841
14101
  class FilterRowComponent {
13842
- constructor(localization, columnInfoService) {
13843
- this.localization = localization;
14102
+ constructor(ctx, columnInfoService) {
14103
+ this.ctx = ctx;
13844
14104
  this.columnInfoService = columnInfoService;
13845
14105
  this.columns = [];
13846
14106
  this.groups = [];
@@ -13851,12 +14111,12 @@ class FilterRowComponent {
13851
14111
  return Object.assign(Object.assign({}, sticky), column.filterStyle);
13852
14112
  }
13853
14113
  filterLabel(column) {
13854
- const localizationMsg = this.localization.get('filterInputLabel') || '';
14114
+ const localizationMsg = this.ctx.localization.get('filterInputLabel') || '';
13855
14115
  const columnName = column.title || column.field;
13856
14116
  return replaceMessagePlaceholder(localizationMsg, 'columnName', columnName);
13857
14117
  }
13858
14118
  }
13859
- FilterRowComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FilterRowComponent, deps: [{ token: i1.LocalizationService }, { token: ColumnInfoService }], target: i0.ɵɵFactoryTarget.Component });
14119
+ FilterRowComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FilterRowComponent, deps: [{ token: ContextService }, { token: ColumnInfoService }], target: i0.ɵɵFactoryTarget.Component });
13860
14120
  FilterRowComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: FilterRowComponent, selector: "[kendoGridFilterRow]", inputs: { columns: "columns", filter: "filter", groups: "groups", detailTemplate: "detailTemplate", logicalRowIndex: "logicalRowIndex", lockedColumnsCount: "lockedColumnsCount" }, host: { properties: { "class.k-filter-row": "this.filterRowClass" } }, ngImport: i0, template: `
13861
14121
  <td
13862
14122
  class="k-table-td"
@@ -13916,7 +14176,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
13916
14176
  ></td>
13917
14177
  `
13918
14178
  }]
13919
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: ColumnInfoService }]; }, propDecorators: { columns: [{
14179
+ }], ctorParameters: function () { return [{ type: ContextService }, { type: ColumnInfoService }]; }, propDecorators: { columns: [{
13920
14180
  type: Input
13921
14181
  }], filter: [{
13922
14182
  type: Input
@@ -14226,13 +14486,13 @@ const indexOf = (target, list) => {
14226
14486
  * @hidden
14227
14487
  */
14228
14488
  class ColumnHandleDirective {
14229
- constructor(draggable, element, service, zone, cdr, localization, columnInfoService) {
14489
+ constructor(draggable, element, service, zone, cdr, ctx, columnInfoService) {
14230
14490
  this.draggable = draggable;
14231
14491
  this.element = element;
14232
14492
  this.service = service;
14233
14493
  this.zone = zone;
14234
14494
  this.cdr = cdr;
14235
- this.localization = localization;
14495
+ this.ctx = ctx;
14236
14496
  this.columnInfoService = columnInfoService;
14237
14497
  this.columns = [];
14238
14498
  this.subscriptions = new Subscription();
@@ -14287,7 +14547,7 @@ class ColumnHandleDirective {
14287
14547
  .subscribe(this.sizeToFit.bind(this)));
14288
14548
  this.subscriptions.add(service.pipe(filter(e => e.type === 'triggerAutoFit'))
14289
14549
  .subscribe(this.autoFit.bind(this)));
14290
- this.subscriptions.add(this.localization.changes.subscribe(({ rtl }) => this.rtl = rtl));
14550
+ this.subscriptions.add(this.ctx.localization.changes.subscribe(({ rtl }) => this.rtl = rtl));
14291
14551
  }
14292
14552
  ngOnDestroy() {
14293
14553
  if (this.subscriptions) {
@@ -14363,7 +14623,7 @@ class ColumnHandleDirective {
14363
14623
  }
14364
14624
  }
14365
14625
  }
14366
- ColumnHandleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnHandleDirective, deps: [{ token: i1$1.DraggableDirective, host: true }, { token: i0.ElementRef }, { token: ColumnResizingService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i1.LocalizationService }, { token: ColumnInfoService }], target: i0.ɵɵFactoryTarget.Directive });
14626
+ ColumnHandleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnHandleDirective, deps: [{ token: i1$1.DraggableDirective, host: true }, { token: i0.ElementRef }, { token: ColumnResizingService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: ContextService }, { token: ColumnInfoService }], target: i0.ɵɵFactoryTarget.Directive });
14367
14627
  ColumnHandleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: ColumnHandleDirective, selector: "[kendoGridColumnHandle]", inputs: { columns: "columns", column: "column" }, host: { listeners: { "dblclick": "autoFit()" }, properties: { "style.display": "this.visible", "style.left": "this.leftStyle", "style.right": "this.rightStyle" } }, ngImport: i0 });
14368
14628
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnHandleDirective, decorators: [{
14369
14629
  type: Directive,
@@ -14373,7 +14633,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
14373
14633
  }], ctorParameters: function () {
14374
14634
  return [{ type: i1$1.DraggableDirective, decorators: [{
14375
14635
  type: Host
14376
- }] }, { type: i0.ElementRef }, { type: ColumnResizingService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }, { type: i1.LocalizationService }, { type: ColumnInfoService }];
14636
+ }] }, { type: i0.ElementRef }, { type: ColumnResizingService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }, { type: ContextService }, { type: ColumnInfoService }];
14377
14637
  }, propDecorators: { columns: [{
14378
14638
  type: Input
14379
14639
  }], column: [{
@@ -14417,14 +14677,13 @@ const modifierKeys = ['alt', 'ctrl', 'shift', 'meta'];
14417
14677
  * @hidden
14418
14678
  */
14419
14679
  class HeaderComponent {
14420
- constructor(popupService, hint, cue, reorderService, idService, sortService, localization, columnInfoService, cd, contextService) {
14680
+ constructor(popupService, hint, cue, reorderService, idService, sortService, columnInfoService, cd, contextService) {
14421
14681
  this.popupService = popupService;
14422
14682
  this.hint = hint;
14423
14683
  this.cue = cue;
14424
14684
  this.reorderService = reorderService;
14425
14685
  this.idService = idService;
14426
14686
  this.sortService = sortService;
14427
- this.localization = localization;
14428
14687
  this.columnInfoService = columnInfoService;
14429
14688
  this.cd = cd;
14430
14689
  this.contextService = contextService;
@@ -14450,7 +14709,7 @@ class HeaderComponent {
14450
14709
  return !this.scrollable;
14451
14710
  }
14452
14711
  get sortableLabel() {
14453
- return this.localization.get('sortable');
14712
+ return this.contextService.localization.get('sortable');
14454
14713
  }
14455
14714
  get columnMenuSettings() {
14456
14715
  return this.columnMenu;
@@ -14516,7 +14775,7 @@ class HeaderComponent {
14516
14775
  args.preventDefault();
14517
14776
  const columnsCount = this.columnInfoService.leafNamedColumns.length;
14518
14777
  const reorderDirection = args.keyCode === Keys.ArrowLeft ? -1 : 1;
14519
- const rtlMultiplier = this.localization.rtl ? -1 : 1;
14778
+ const rtlMultiplier = this.contextService.localization.rtl ? -1 : 1;
14520
14779
  const reorderDirectionOffset = reorderDirection * rtlMultiplier;
14521
14780
  const newIndex = column.leafIndex + reorderDirectionOffset;
14522
14781
  const normalizedNewIndex = Math.min(Math.max(0, newIndex), columnsCount - 1);
@@ -14574,7 +14833,7 @@ class HeaderComponent {
14574
14833
  else if (state.dir === 'desc') {
14575
14834
  msg = 'sortedDescending';
14576
14835
  }
14577
- return this.localization.get(msg);
14836
+ return this.contextService.localization.get(msg);
14578
14837
  }
14579
14838
  /**
14580
14839
  *
@@ -14620,7 +14879,7 @@ class HeaderComponent {
14620
14879
  }
14621
14880
  }
14622
14881
  ngOnInit() {
14623
- this.subscription.add(this.localization.changes
14882
+ this.subscription.add(this.contextService.localization.changes
14624
14883
  .subscribe(() => this.cd.markForCheck()));
14625
14884
  }
14626
14885
  ngOnDestroy() {
@@ -14636,7 +14895,7 @@ class HeaderComponent {
14636
14895
  return this.idService.selectAllCheckboxId();
14637
14896
  }
14638
14897
  get selectAllCheckboxLabel() {
14639
- return this.localization.get('selectAllCheckboxLabel');
14898
+ return this.contextService.localization.get('selectAllCheckboxLabel');
14640
14899
  }
14641
14900
  isFirstOnRow(column, index) {
14642
14901
  const isTailing = (c) => c &&
@@ -14774,7 +15033,7 @@ class HeaderComponent {
14774
15033
  const halfWidth = targetElement.offsetWidth / 2;
14775
15034
  const middle = left + halfWidth;
14776
15035
  before = middle > mouseEvent.pageX;
14777
- if (this.localization.rtl) {
15036
+ if (this.contextService.localization.rtl) {
14778
15037
  before = !before;
14779
15038
  }
14780
15039
  }
@@ -14785,7 +15044,7 @@ class HeaderComponent {
14785
15044
  }
14786
15045
  enter({ target, before }) {
14787
15046
  this.hint.enable();
14788
- if (this.localization.rtl) {
15047
+ if (this.contextService.localization.rtl) {
14789
15048
  before = !before;
14790
15049
  }
14791
15050
  this.cue.position(position(target.element.nativeElement, before));
@@ -14803,7 +15062,7 @@ class HeaderComponent {
14803
15062
  });
14804
15063
  }
14805
15064
  }
14806
- HeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: HeaderComponent, deps: [{ token: SinglePopupService }, { token: DragHintService }, { token: DropCueService }, { token: ColumnReorderService }, { token: IdService }, { token: SortService }, { token: i1.LocalizationService }, { token: ColumnInfoService }, { token: i0.ChangeDetectorRef }, { token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
15065
+ HeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: HeaderComponent, deps: [{ token: SinglePopupService }, { token: DragHintService }, { token: DropCueService }, { token: ColumnReorderService }, { token: IdService }, { token: SortService }, { token: ColumnInfoService }, { token: i0.ChangeDetectorRef }, { token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
14807
15066
  HeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: HeaderComponent, selector: "[kendoGridHeader]", inputs: { totalColumnLevels: "totalColumnLevels", columns: "columns", groups: "groups", detailTemplate: "detailTemplate", scrollable: "scrollable", filterable: "filterable", sort: "sort", filter: "filter", sortable: "sortable", groupable: "groupable", lockedColumnsCount: "lockedColumnsCount", resizable: "resizable", reorderable: "reorderable", columnMenu: "columnMenu", columnMenuTemplate: "columnMenuTemplate", totalColumnsCount: "totalColumnsCount", tabIndex: "tabIndex", size: "size" }, host: { properties: { "class.k-grid-header": "this.headerClass", "class.k-table-thead": "this.hostClass" } }, viewQueries: [{ propertyName: "dropTargets", predicate: DropTargetDirective, descendants: true }, { propertyName: "filterMenus", predicate: FilterMenuComponent, descendants: true }, { propertyName: "columnMenus", predicate: ColumnMenuComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: `
14808
15067
  <ng-container>
14809
15068
  <tr *ngFor="let i of columnLevels; let levelIndex = index"
@@ -15029,7 +15288,7 @@ HeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", versio
15029
15288
  [logicalSlaveCellsCount]="unlockedColumnsCount"
15030
15289
  ></tr>
15031
15290
  </ng-container>
15032
- `, isInline: true, components: [{ type: FilterMenuComponent, selector: "kendo-grid-filter-menu", inputs: ["column", "filter", "tabIndex"] }, { type: ColumnMenuComponent, selector: "kendo-grid-column-menu", inputs: ["standalone", "column", "settings", "sort", "filter", "sortable", "columnMenuTemplate", "tabIndex"] }, { type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass"], exportAs: ["kendoIconWrapper"] }, { type: FilterRowComponent, selector: "[kendoGridFilterRow]", inputs: ["columns", "filter", "groups", "detailTemplate", "logicalRowIndex", "lockedColumnsCount"] }], directives: [{ type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: LogicalRowDirective, selector: "[kendoGridLogicalRow]", inputs: ["logicalRowIndex", "logicalSlaveRow", "logicalCellsCount", "logicalSlaveCellsCount", "dataRowIndex", "dataItem"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: LogicalCellDirective, selector: "[kendoGridLogicalCell]", inputs: ["logicalColIndex", "logicalRowIndex", "logicalSlaveCell", "colIndex", "colSpan", "rowSpan", "groupItem", "dataRowIndex", "dataItem", "detailExpandCell", "headerLabelText"] }, { type: DropTargetDirective, selector: "[kendoDropTarget]", inputs: ["context"], outputs: ["enter", "leave", "drop"] }, { type: i1$1.DraggableDirective, selector: "[kendoDraggable]", inputs: ["enableDrag"], outputs: ["kendoPress", "kendoDrag", "kendoRelease"] }, { type: DraggableColumnDirective, selector: "[kendoDraggableColumn]", inputs: ["context", "enableDrag"], outputs: ["drag"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }, { type: SelectAllCheckboxDirective, selector: "[kendoGridSelectAllCheckbox]", inputs: ["state"], outputs: ["selectAllChange"] }, { type: FocusableDirective, selector: "[kendoGridFocusable],\n [kendoGridEditCommand],\n [kendoGridRemoveCommand],\n [kendoGridSaveCommand],\n [kendoGridCancelCommand],\n [kendoGridSelectionCheckbox]\n ", inputs: ["kendoGridFocusable"] }, { type: ColumnHandleDirective, selector: "[kendoGridColumnHandle]", inputs: ["columns", "column"] }] });
15291
+ `, isInline: true, components: [{ type: FilterMenuComponent, selector: "kendo-grid-filter-menu", inputs: ["column", "filter", "tabIndex"] }, { type: ColumnMenuComponent, selector: "kendo-grid-column-menu", inputs: ["standalone", "column", "settings", "sort", "filter", "sortable", "columnMenuTemplate", "tabIndex"] }, { type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { type: FilterRowComponent, selector: "[kendoGridFilterRow]", inputs: ["columns", "filter", "groups", "detailTemplate", "logicalRowIndex", "lockedColumnsCount"] }], directives: [{ type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: LogicalRowDirective, selector: "[kendoGridLogicalRow]", inputs: ["logicalRowIndex", "logicalSlaveRow", "logicalCellsCount", "logicalSlaveCellsCount", "dataRowIndex", "dataItem"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: LogicalCellDirective, selector: "[kendoGridLogicalCell]", inputs: ["logicalColIndex", "logicalRowIndex", "logicalSlaveCell", "colIndex", "colSpan", "rowSpan", "groupItem", "dataRowIndex", "dataItem", "detailExpandCell", "headerLabelText"] }, { type: DropTargetDirective, selector: "[kendoDropTarget]", inputs: ["context"], outputs: ["enter", "leave", "drop"] }, { type: i1$1.DraggableDirective, selector: "[kendoDraggable]", inputs: ["enableDrag"], outputs: ["kendoPress", "kendoDrag", "kendoRelease"] }, { type: DraggableColumnDirective, selector: "[kendoDraggableColumn]", inputs: ["context", "enableDrag"], outputs: ["drag"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }, { type: SelectAllCheckboxDirective, selector: "[kendoGridSelectAllCheckbox]", inputs: ["state"], outputs: ["selectAllChange"] }, { type: FocusableDirective, selector: "[kendoGridFocusable],\n [kendoGridEditCommand],\n [kendoGridRemoveCommand],\n [kendoGridSaveCommand],\n [kendoGridCancelCommand],\n [kendoGridSelectionCheckbox]\n ", inputs: ["kendoGridFocusable"] }, { type: ColumnHandleDirective, selector: "[kendoGridColumnHandle]", inputs: ["columns", "column"] }] });
15033
15292
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: HeaderComponent, decorators: [{
15034
15293
  type: Component,
15035
15294
  args: [{
@@ -15261,7 +15520,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
15261
15520
  </ng-container>
15262
15521
  `
15263
15522
  }]
15264
- }], ctorParameters: function () { return [{ type: SinglePopupService }, { type: DragHintService }, { type: DropCueService }, { type: ColumnReorderService }, { type: IdService }, { type: SortService }, { type: i1.LocalizationService }, { type: ColumnInfoService }, { type: i0.ChangeDetectorRef }, { type: ContextService }]; }, propDecorators: { totalColumnLevels: [{
15523
+ }], ctorParameters: function () { return [{ type: SinglePopupService }, { type: DragHintService }, { type: DropCueService }, { type: ColumnReorderService }, { type: IdService }, { type: SortService }, { type: ColumnInfoService }, { type: i0.ChangeDetectorRef }, { type: ContextService }]; }, propDecorators: { totalColumnLevels: [{
15265
15524
  type: Input
15266
15525
  }], columns: [{
15267
15526
  type: Input
@@ -15680,10 +15939,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
15680
15939
  * @hidden
15681
15940
  */
15682
15941
  class CellComponent {
15683
- constructor(editService, idService, localizationService, cellContext) {
15942
+ constructor(editService, idService, ctx, cellContext) {
15684
15943
  this.editService = editService;
15685
15944
  this.idService = idService;
15686
- this.localizationService = localizationService;
15945
+ this.ctx = ctx;
15687
15946
  this.cellContext = cellContext;
15688
15947
  this.isNew = false;
15689
15948
  this.isLoading = false;
@@ -15699,7 +15958,7 @@ class CellComponent {
15699
15958
  return isRowReorderColumn(this.column);
15700
15959
  }
15701
15960
  get dragRowHandleLabel() {
15702
- return isRowReorderColumn(this.column) ? this.localizationService.get('dragRowHandleLabel') : undefined;
15961
+ return isRowReorderColumn(this.column) ? this.ctx.localization.get('dragRowHandleLabel') : undefined;
15703
15962
  }
15704
15963
  set rowIndex(index) {
15705
15964
  this._rowIndex = index;
@@ -15749,7 +16008,7 @@ class CellComponent {
15749
16008
  return this.idService.selectionCheckboxId(this.rowIndex);
15750
16009
  }
15751
16010
  get selectionCheckboxLabel() {
15752
- return this.localizationService.get('selectionCheckboxLabel');
16011
+ return this.ctx.localization.get('selectionCheckboxLabel');
15753
16012
  }
15754
16013
  get isSpanColumn() {
15755
16014
  return isSpanColumn(this.column) && !this.column.templateRef;
@@ -15805,7 +16064,7 @@ class CellComponent {
15805
16064
  context.$implicit = this.dataItem;
15806
16065
  }
15807
16066
  }
15808
- CellComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: CellComponent, deps: [{ token: EditService }, { token: IdService }, { token: i1.LocalizationService }, { token: CELL_CONTEXT, optional: true }], target: i0.ɵɵFactoryTarget.Component });
16067
+ CellComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: CellComponent, deps: [{ token: EditService }, { token: IdService }, { token: ContextService }, { token: CELL_CONTEXT, optional: true }], target: i0.ɵɵFactoryTarget.Component });
15809
16068
  CellComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: CellComponent, selector: "[kendoGridCell]", inputs: { column: "column", columnIndex: "columnIndex", isNew: "isNew", isLoading: "isLoading", isVirtual: "isVirtual", loadingTemplate: "loadingTemplate", rowIndex: "rowIndex", dataItem: "dataItem" }, host: { properties: { "class.k-command-cell": "this.commandCellClass", "class.k-drag-cell": "this.dragHandleCellClass", "class.k-touch-action-none": "this.dragHandleCellClass", "attr.aria-label": "this.dragRowHandleLabel" } }, usesOnChanges: true, ngImport: i0, template: `
15810
16069
  <ng-container [ngSwitch]="isEdited">
15811
16070
  <ng-container *ngSwitchCase="false">
@@ -15882,7 +16141,7 @@ CellComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
15882
16141
  </ng-container>
15883
16142
  </ng-container>
15884
16143
  </ng-container>
15885
- `, isInline: true, components: [{ type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass"], exportAs: ["kendoIconWrapper"] }, { type: i3$1.NumericTextBoxComponent, selector: "kendo-numerictextbox", inputs: ["focusableId", "disabled", "readonly", "title", "autoCorrect", "format", "max", "min", "decimals", "placeholder", "step", "spinners", "rangeValidation", "tabindex", "tabIndex", "changeValueOnScroll", "selectOnFocus", "value", "maxlength", "size", "rounded", "fillMode"], outputs: ["valueChange", "focus", "blur"], exportAs: ["kendoNumericTextBox"] }, { type: i4$3.DatePickerComponent, selector: "kendo-datepicker", inputs: ["focusableId", "cellTemplate", "monthCellTemplate", "yearCellTemplate", "decadeCellTemplate", "centuryCellTemplate", "weekNumberTemplate", "headerTitleTemplate", "navigationItemTemplate", "activeView", "bottomView", "topView", "calendarType", "animateCalendarNavigation", "disabled", "readonly", "readOnlyInput", "popupSettings", "navigation", "min", "max", "incompleteDateValidation", "focusedDate", "value", "format", "twoDigitYearMax", "formatPlaceholder", "placeholder", "tabindex", "tabIndex", "disabledDates", "title", "subtitle", "rangeValidation", "disabledDatesValidation", "weekNumber", "size", "rounded", "fillMode", "adaptiveMode"], outputs: ["valueChange", "focus", "blur", "open", "close"], exportAs: ["kendo-datepicker"] }], directives: [{ type: i4.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i4.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: FocusableDirective, selector: "[kendoGridFocusable],\n [kendoGridEditCommand],\n [kendoGridRemoveCommand],\n [kendoGridSaveCommand],\n [kendoGridCancelCommand],\n [kendoGridSelectionCheckbox]\n ", inputs: ["kendoGridFocusable"] }, { type: SelectionCheckboxDirective, selector: "[kendoGridSelectionCheckbox]", inputs: ["kendoGridSelectionCheckbox"] }, { type: i4$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i4$2.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { type: i4.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { type: i4$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }], pipes: { "valueOf": FieldAccessorPipe } });
16144
+ `, isInline: true, components: [{ type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { type: i3$1.NumericTextBoxComponent, selector: "kendo-numerictextbox", inputs: ["focusableId", "disabled", "readonly", "title", "autoCorrect", "format", "max", "min", "decimals", "placeholder", "step", "spinners", "rangeValidation", "tabindex", "tabIndex", "changeValueOnScroll", "selectOnFocus", "value", "maxlength", "size", "rounded", "fillMode"], outputs: ["valueChange", "focus", "blur"], exportAs: ["kendoNumericTextBox"] }, { type: i4$3.DatePickerComponent, selector: "kendo-datepicker", inputs: ["focusableId", "cellTemplate", "monthCellTemplate", "yearCellTemplate", "decadeCellTemplate", "centuryCellTemplate", "weekNumberTemplate", "headerTitleTemplate", "navigationItemTemplate", "activeView", "bottomView", "topView", "calendarType", "animateCalendarNavigation", "disabled", "readonly", "readOnlyInput", "popupSettings", "navigation", "min", "max", "incompleteDateValidation", "focusedDate", "value", "format", "twoDigitYearMax", "formatPlaceholder", "placeholder", "tabindex", "tabIndex", "disabledDates", "title", "subtitle", "rangeValidation", "disabledDatesValidation", "weekNumber", "size", "rounded", "fillMode", "adaptiveMode"], outputs: ["valueChange", "focus", "blur", "open", "close"], exportAs: ["kendo-datepicker"] }], directives: [{ type: i4.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i4.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: FocusableDirective, selector: "[kendoGridFocusable],\n [kendoGridEditCommand],\n [kendoGridRemoveCommand],\n [kendoGridSaveCommand],\n [kendoGridCancelCommand],\n [kendoGridSelectionCheckbox]\n ", inputs: ["kendoGridFocusable"] }, { type: SelectionCheckboxDirective, selector: "[kendoGridSelectionCheckbox]", inputs: ["kendoGridSelectionCheckbox"] }, { type: i4$2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i4$2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i4$2.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { type: i4.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { type: i4$2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }], pipes: { "valueOf": FieldAccessorPipe } });
15886
16145
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: CellComponent, decorators: [{
15887
16146
  type: Component,
15888
16147
  args: [{
@@ -15966,7 +16225,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
15966
16225
  `
15967
16226
  }]
15968
16227
  }], ctorParameters: function () {
15969
- return [{ type: EditService }, { type: IdService }, { type: i1.LocalizationService }, { type: undefined, decorators: [{
16228
+ return [{ type: EditService }, { type: IdService }, { type: ContextService }, { type: undefined, decorators: [{
15970
16229
  type: Optional
15971
16230
  }, {
15972
16231
  type: Inject,
@@ -16006,19 +16265,20 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
16006
16265
  * @hidden
16007
16266
  */
16008
16267
  class GroupHeaderComponent {
16009
- constructor(groupsService, groupInfoService, localization) {
16268
+ constructor(groupsService, groupInfoService, ctx) {
16010
16269
  this.groupsService = groupsService;
16011
16270
  this.groupInfoService = groupInfoService;
16012
- this.localization = localization;
16271
+ this.ctx = ctx;
16013
16272
  this.skipGroupDecoration = false;
16014
16273
  this.hasDetails = false;
16015
16274
  this.totalColumnsCount = 0;
16016
16275
  this.groups = [];
16276
+ this.groupItemClass = true;
16277
+ this.tableGroupRowClass = true;
16017
16278
  this.isExpanded = false;
16018
16279
  this.caretAltDownIcon = caretAltDownIcon;
16019
16280
  this.caretAltRightIcon = caretAltRightIcon;
16020
- this.groupItemClass = true;
16021
- this.tableGroupRowClass = true;
16281
+ this.caretAltLeftIcon = caretAltLeftIcon;
16022
16282
  }
16023
16283
  ngDoCheck() {
16024
16284
  const groupArgs = {
@@ -16067,10 +16327,26 @@ class GroupHeaderComponent {
16067
16327
  }
16068
16328
  get groupButtonTitle() {
16069
16329
  const messageKey = this.isExpanded ? 'groupCollapse' : 'groupExpand';
16070
- return this.localization.get(messageKey);
16330
+ return this.ctx.localization.get(messageKey);
16331
+ }
16332
+ get arrowIcon() {
16333
+ const icon = !this.isExpanded ?
16334
+ !this.ctx.localization.rtl ?
16335
+ 'caret-alt-right' :
16336
+ 'caret-alt-left' :
16337
+ 'caret-alt-down';
16338
+ return icon;
16339
+ }
16340
+ get arrowSVGIcon() {
16341
+ const icon = !this.isExpanded ?
16342
+ !this.ctx.localization.rtl ?
16343
+ this.caretAltRightIcon :
16344
+ this.caretAltLeftIcon :
16345
+ this.caretAltDownIcon;
16346
+ return icon;
16071
16347
  }
16072
16348
  }
16073
- GroupHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GroupHeaderComponent, deps: [{ token: GroupsService }, { token: GroupInfoService }, { token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
16349
+ GroupHeaderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GroupHeaderComponent, deps: [{ token: GroupsService }, { token: GroupInfoService }, { token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
16074
16350
  GroupHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: GroupHeaderComponent, selector: "[kendoGridGroupHeader]", inputs: { rowIndex: "rowIndex", logicalRowIndex: "logicalRowIndex", item: "item", skipGroupDecoration: "skipGroupDecoration", hasDetails: "hasDetails", totalColumnsCount: "totalColumnsCount", hasGroupHeaderColumn: "hasGroupHeaderColumn", groupHeaderColumns: "groupHeaderColumns", columns: "columns", groups: "groups" }, host: { properties: { "class.k-grouping-row": "this.groupItemClass", "class.k-table-group-row": "this.tableGroupRowClass" } }, ngImport: i0, template: `
16075
16351
  <ng-container *ngIf="!skipGroupDecoration">
16076
16352
  <td class="k-group-cell k-table-td"
@@ -16095,8 +16371,8 @@ GroupHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", v
16095
16371
  [attr.title]="groupButtonTitle"
16096
16372
  [attr.aria-label]="groupButtonTitle">
16097
16373
  <kendo-icon-wrapper
16098
- [name]="isExpanded ? 'caret-alt-down' : 'caret-alt-right'"
16099
- [svgIcon]="isExpanded ? caretAltDownIcon : caretAltRightIcon"></kendo-icon-wrapper>
16374
+ [name]="arrowIcon"
16375
+ [svgIcon]="arrowSVGIcon"></kendo-icon-wrapper>
16100
16376
  </a>
16101
16377
  <ng-container *ngIf="!groupHeaderTemplate(item)">
16102
16378
  {{groupTitle(item)}}: {{item.data | valueOf:"value": formatForGroup(item)}}
@@ -16140,7 +16416,7 @@ GroupHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", v
16140
16416
  </ng-template>
16141
16417
  </td>
16142
16418
  </ng-container>
16143
- `, isInline: true, components: [{ type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: LogicalCellDirective, selector: "[kendoGridLogicalCell]", inputs: ["logicalColIndex", "logicalRowIndex", "logicalSlaveCell", "colIndex", "colSpan", "rowSpan", "groupItem", "dataRowIndex", "dataItem", "detailExpandCell", "headerLabelText"] }, { type: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "valueOf": FieldAccessorPipe } });
16419
+ `, isInline: true, components: [{ type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: LogicalCellDirective, selector: "[kendoGridLogicalCell]", inputs: ["logicalColIndex", "logicalRowIndex", "logicalSlaveCell", "colIndex", "colSpan", "rowSpan", "groupItem", "dataRowIndex", "dataItem", "detailExpandCell", "headerLabelText"] }, { type: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "valueOf": FieldAccessorPipe } });
16144
16420
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GroupHeaderComponent, decorators: [{
16145
16421
  type: Component,
16146
16422
  args: [{
@@ -16169,8 +16445,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
16169
16445
  [attr.title]="groupButtonTitle"
16170
16446
  [attr.aria-label]="groupButtonTitle">
16171
16447
  <kendo-icon-wrapper
16172
- [name]="isExpanded ? 'caret-alt-down' : 'caret-alt-right'"
16173
- [svgIcon]="isExpanded ? caretAltDownIcon : caretAltRightIcon"></kendo-icon-wrapper>
16448
+ [name]="arrowIcon"
16449
+ [svgIcon]="arrowSVGIcon"></kendo-icon-wrapper>
16174
16450
  </a>
16175
16451
  <ng-container *ngIf="!groupHeaderTemplate(item)">
16176
16452
  {{groupTitle(item)}}: {{item.data | valueOf:"value": formatForGroup(item)}}
@@ -16216,7 +16492,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
16216
16492
  </ng-container>
16217
16493
  `
16218
16494
  }]
16219
- }], ctorParameters: function () { return [{ type: GroupsService }, { type: GroupInfoService }, { type: i1.LocalizationService }]; }, propDecorators: { rowIndex: [{
16495
+ }], ctorParameters: function () { return [{ type: GroupsService }, { type: GroupInfoService }, { type: ContextService }]; }, propDecorators: { rowIndex: [{
16220
16496
  type: Input
16221
16497
  }], logicalRowIndex: [{
16222
16498
  type: Input
@@ -16259,12 +16535,12 @@ const columnCellIndex = (cell, cells) => {
16259
16535
  * @hidden
16260
16536
  */
16261
16537
  class TableBodyComponent {
16262
- constructor(detailsService, groupsService, changeNotification, editService, localization, ngZone, renderer, element, domEvents, selectionService, cellSelectionService, columnInfoService, navigationService) {
16538
+ constructor(detailsService, groupsService, changeNotification, editService, ctx, ngZone, renderer, element, domEvents, selectionService, cellSelectionService, columnInfoService, navigationService) {
16263
16539
  this.detailsService = detailsService;
16264
16540
  this.groupsService = groupsService;
16265
16541
  this.changeNotification = changeNotification;
16266
16542
  this.editService = editService;
16267
- this.localization = localization;
16543
+ this.ctx = ctx;
16268
16544
  this.ngZone = ngZone;
16269
16545
  this.renderer = renderer;
16270
16546
  this.element = element;
@@ -16276,7 +16552,7 @@ class TableBodyComponent {
16276
16552
  this.columns = [];
16277
16553
  this.groups = [];
16278
16554
  this.skip = 0;
16279
- this.noRecordsText = this.localization.get('noRecords');
16555
+ this.noRecordsText = this.ctx.localization.get('noRecords');
16280
16556
  this.isLocked = false;
16281
16557
  this.skipGroupDecoration = false;
16282
16558
  this.showGroupFooters = false;
@@ -16319,7 +16595,7 @@ class TableBodyComponent {
16319
16595
  }
16320
16596
  detailButtonTitle(viewItem) {
16321
16597
  const messageKey = this.isExpanded(viewItem) ? 'detailCollapse' : 'detailExpand';
16322
- return this.localization.get(messageKey);
16598
+ return this.ctx.localization.get(messageKey);
16323
16599
  }
16324
16600
  isGroup(item) {
16325
16601
  return item.type === 'group';
@@ -16428,10 +16704,10 @@ class TableBodyComponent {
16428
16704
  touchendSubscription();
16429
16705
  };
16430
16706
  });
16431
- let originalNoRecordText = this.localization.get('noRecords');
16432
- this.l10nSubscription = this.localization.changes.subscribe(() => {
16707
+ let originalNoRecordText = this.ctx.localization.get('noRecords');
16708
+ this.l10nSubscription = this.ctx.localization.changes.subscribe(() => {
16433
16709
  if (this.noRecordsText === originalNoRecordText) {
16434
- this.noRecordsText = this.localization.get('noRecords');
16710
+ this.noRecordsText = this.ctx.localization.get('noRecords');
16435
16711
  originalNoRecordText = this.noRecordsText;
16436
16712
  }
16437
16713
  });
@@ -16589,7 +16865,7 @@ class TableBodyComponent {
16589
16865
  }
16590
16866
  }
16591
16867
  }
16592
- TableBodyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: TableBodyComponent, deps: [{ token: DetailsService }, { token: GroupsService }, { token: ChangeNotificationService }, { token: EditService }, { token: i1.LocalizationService }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: DomEventsService }, { token: SelectionService }, { token: CellSelectionService }, { token: ColumnInfoService }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Component });
16868
+ TableBodyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: TableBodyComponent, deps: [{ token: DetailsService }, { token: GroupsService }, { token: ChangeNotificationService }, { token: EditService }, { token: ContextService }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: DomEventsService }, { token: SelectionService }, { token: CellSelectionService }, { token: ColumnInfoService }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Component });
16593
16869
  TableBodyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: TableBodyComponent, selector: "[kendoGridTableBody]", inputs: { columns: "columns", allColumns: "allColumns", groups: "groups", detailTemplate: "detailTemplate", noRecordsTemplate: "noRecordsTemplate", data: "data", skip: "skip", selectable: "selectable", filterable: "filterable", noRecordsText: "noRecordsText", isLocked: "isLocked", isLoading: "isLoading", isVirtual: "isVirtual", cellLoadingTemplate: "cellLoadingTemplate", skipGroupDecoration: "skipGroupDecoration", showGroupFooters: "showGroupFooters", lockedColumnsCount: "lockedColumnsCount", totalColumnsCount: "totalColumnsCount", virtualColumns: "virtualColumns", trackBy: "trackBy", rowSticky: "rowSticky", rowClass: "rowClass" }, host: { properties: { "class.k-table-tbody": "this.hostClass" } }, usesOnChanges: true, ngImport: i0, template: `
16594
16870
  <ng-container *ngIf="editService.hasNewItem">
16595
16871
  <tr class="k-grid-add-row k-grid-edit-row k-master-row"
@@ -16811,7 +17087,7 @@ TableBodyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ver
16811
17087
  </tr>
16812
17088
  </ng-container>
16813
17089
  <kendo-resize-sensor *ngIf="rowSticky" (resize)="resizeHandler()"></kendo-resize-sensor>
16814
- `, isInline: true, components: [{ type: CellComponent, selector: "[kendoGridCell]", inputs: ["column", "columnIndex", "isNew", "isLoading", "isVirtual", "loadingTemplate", "rowIndex", "dataItem"] }, { type: GroupHeaderComponent, selector: "[kendoGridGroupHeader]", inputs: ["rowIndex", "logicalRowIndex", "item", "skipGroupDecoration", "hasDetails", "totalColumnsCount", "hasGroupHeaderColumn", "groupHeaderColumns", "columns", "groups"] }, { type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass"], exportAs: ["kendoIconWrapper"] }, { type: i1$1.ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: LogicalRowDirective, selector: "[kendoGridLogicalRow]", inputs: ["logicalRowIndex", "logicalSlaveRow", "logicalCellsCount", "logicalSlaveCellsCount", "dataRowIndex", "dataItem"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: LogicalCellDirective, selector: "[kendoGridLogicalCell]", inputs: ["logicalColIndex", "logicalRowIndex", "logicalSlaveCell", "colIndex", "colSpan", "rowSpan", "groupItem", "dataRowIndex", "dataItem", "detailExpandCell", "headerLabelText"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
17090
+ `, isInline: true, components: [{ type: CellComponent, selector: "[kendoGridCell]", inputs: ["column", "columnIndex", "isNew", "isLoading", "isVirtual", "loadingTemplate", "rowIndex", "dataItem"] }, { type: GroupHeaderComponent, selector: "[kendoGridGroupHeader]", inputs: ["rowIndex", "logicalRowIndex", "item", "skipGroupDecoration", "hasDetails", "totalColumnsCount", "hasGroupHeaderColumn", "groupHeaderColumns", "columns", "groups"] }, { type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { type: i1$1.ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: LogicalRowDirective, selector: "[kendoGridLogicalRow]", inputs: ["logicalRowIndex", "logicalSlaveRow", "logicalCellsCount", "logicalSlaveCellsCount", "dataRowIndex", "dataItem"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: LogicalCellDirective, selector: "[kendoGridLogicalCell]", inputs: ["logicalColIndex", "logicalRowIndex", "logicalSlaveCell", "colIndex", "colSpan", "rowSpan", "groupItem", "dataRowIndex", "dataItem", "detailExpandCell", "headerLabelText"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { type: TemplateContextDirective, selector: "[templateContext]", inputs: ["templateContext"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
16815
17091
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: TableBodyComponent, decorators: [{
16816
17092
  type: Component,
16817
17093
  args: [{
@@ -17039,7 +17315,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
17039
17315
  <kendo-resize-sensor *ngIf="rowSticky" (resize)="resizeHandler()"></kendo-resize-sensor>
17040
17316
  `
17041
17317
  }]
17042
- }], ctorParameters: function () { return [{ type: DetailsService }, { type: GroupsService }, { type: ChangeNotificationService }, { type: EditService }, { type: i1.LocalizationService }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: i0.ElementRef }, { type: DomEventsService }, { type: SelectionService }, { type: CellSelectionService }, { type: ColumnInfoService }, { type: NavigationService }]; }, propDecorators: { columns: [{
17318
+ }], ctorParameters: function () { return [{ type: DetailsService }, { type: GroupsService }, { type: ChangeNotificationService }, { type: EditService }, { type: ContextService }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: i0.ElementRef }, { type: DomEventsService }, { type: SelectionService }, { type: CellSelectionService }, { type: ColumnInfoService }, { type: NavigationService }]; }, propDecorators: { columns: [{
17043
17319
  type: Input
17044
17320
  }], allColumns: [{
17045
17321
  type: Input
@@ -17362,7 +17638,7 @@ const bufferSize = 1;
17362
17638
  * @hidden
17363
17639
  */
17364
17640
  class ListComponent {
17365
- constructor(scrollerFactory, detailsService, changeNotification, suspendService, groupsService, ngZone, renderer, scrollSyncService, resizeService, editService, supportService, navigationService, scrollRequestService, localization, columnResizingService, changeDetector, pdfService, columnInfo) {
17641
+ constructor(scrollerFactory, detailsService, changeNotification, suspendService, groupsService, ngZone, renderer, scrollSyncService, resizeService, editService, supportService, navigationService, scrollRequestService, ctx, columnResizingService, changeDetector, pdfService, columnInfo) {
17366
17642
  this.changeNotification = changeNotification;
17367
17643
  this.suspendService = suspendService;
17368
17644
  this.groupsService = groupsService;
@@ -17373,7 +17649,7 @@ class ListComponent {
17373
17649
  this.editService = editService;
17374
17650
  this.supportService = supportService;
17375
17651
  this.navigationService = navigationService;
17376
- this.localization = localization;
17652
+ this.ctx = ctx;
17377
17653
  this.columnResizingService = columnResizingService;
17378
17654
  this.changeDetector = changeDetector;
17379
17655
  this.pdfService = pdfService;
@@ -17449,7 +17725,7 @@ class ListComponent {
17449
17725
  });
17450
17726
  }
17451
17727
  }));
17452
- this.subscriptions.add(this.localization.changes.subscribe(({ rtl }) => this.rtl = rtl));
17728
+ this.subscriptions.add(this.ctx.localization.changes.subscribe(({ rtl }) => this.rtl = rtl));
17453
17729
  }
17454
17730
  ngOnChanges(changes) {
17455
17731
  if (!isDocumentAvailable()) {
@@ -17844,7 +18120,7 @@ class ListComponent {
17844
18120
  return element.offsetLeft;
17845
18121
  }
17846
18122
  }
17847
- ListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ListComponent, deps: [{ token: SCROLLER_FACTORY_TOKEN }, { token: DetailsService }, { token: ChangeNotificationService }, { token: SuspendService }, { token: GroupsService }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: ScrollSyncService }, { token: ResizeService }, { token: EditService }, { token: BrowserSupportService }, { token: NavigationService }, { token: ScrollRequestService }, { token: i1.LocalizationService }, { token: ColumnResizingService }, { token: i0.ChangeDetectorRef }, { token: PDFService }, { token: ColumnInfoService }], target: i0.ɵɵFactoryTarget.Component });
18123
+ ListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ListComponent, deps: [{ token: SCROLLER_FACTORY_TOKEN }, { token: DetailsService }, { token: ChangeNotificationService }, { token: SuspendService }, { token: GroupsService }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: ScrollSyncService }, { token: ResizeService }, { token: EditService }, { token: BrowserSupportService }, { token: NavigationService }, { token: ScrollRequestService }, { token: ContextService }, { token: ColumnResizingService }, { token: i0.ChangeDetectorRef }, { token: PDFService }, { token: ColumnInfoService }], target: i0.ɵɵFactoryTarget.Component });
17848
18124
  ListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ListComponent, selector: "kendo-grid-list", inputs: { data: "data", groups: "groups", total: "total", rowHeight: "rowHeight", stickyRowHeight: "stickyRowHeight", detailRowHeight: "detailRowHeight", take: "take", skip: "skip", columns: "columns", detailTemplate: "detailTemplate", noRecordsTemplate: "noRecordsTemplate", selectable: "selectable", groupable: "groupable", filterable: "filterable", rowClass: "rowClass", rowSticky: "rowSticky", loading: "loading", trackBy: "trackBy", virtualColumns: "virtualColumns", isVirtual: "isVirtual", cellLoadingTemplate: "cellLoadingTemplate", loadingTemplate: "loadingTemplate", sort: "sort", size: "size" }, outputs: { contentScroll: "contentScroll", pageChange: "pageChange", scrollBottom: "scrollBottom" }, host: { properties: { "class.k-grid-container": "this.hostClass", "attr.role": "this.hostRole" } }, providers: [
17849
18125
  {
17850
18126
  provide: SCROLLER_FACTORY_TOKEN,
@@ -18083,7 +18359,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
18083
18359
  return [{ type: undefined, decorators: [{
18084
18360
  type: Inject,
18085
18361
  args: [SCROLLER_FACTORY_TOKEN]
18086
- }] }, { type: DetailsService }, { type: ChangeNotificationService }, { type: SuspendService }, { type: GroupsService }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: ScrollSyncService }, { type: ResizeService }, { type: EditService }, { type: BrowserSupportService }, { type: NavigationService }, { type: ScrollRequestService }, { type: i1.LocalizationService }, { type: ColumnResizingService }, { type: i0.ChangeDetectorRef }, { type: PDFService }, { type: ColumnInfoService }];
18362
+ }] }, { type: DetailsService }, { type: ChangeNotificationService }, { type: SuspendService }, { type: GroupsService }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: ScrollSyncService }, { type: ResizeService }, { type: EditService }, { type: BrowserSupportService }, { type: NavigationService }, { type: ScrollRequestService }, { type: ContextService }, { type: ColumnResizingService }, { type: i0.ChangeDetectorRef }, { type: PDFService }, { type: ColumnInfoService }];
18087
18363
  }, propDecorators: { hostClass: [{
18088
18364
  type: HostBinding,
18089
18365
  args: ['class.k-grid-container']
@@ -18311,15 +18587,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
18311
18587
  * @hidden
18312
18588
  */
18313
18589
  class LoadingComponent {
18314
- constructor(localization) {
18315
- this.localization = localization;
18590
+ constructor(ctx) {
18591
+ this.ctx = ctx;
18316
18592
  this.hostClass = true;
18317
18593
  }
18318
18594
  get loadingText() {
18319
- return this.localization.get('loading');
18595
+ return this.ctx.localization.get('loading');
18320
18596
  }
18321
18597
  }
18322
- LoadingComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: LoadingComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
18598
+ LoadingComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: LoadingComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
18323
18599
  LoadingComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: LoadingComponent, selector: "[kendoGridLoading]", inputs: { loadingTemplate: "loadingTemplate" }, host: { properties: { "class.k-loading-mask": "this.hostClass" } }, ngImport: i0, template: `
18324
18600
  <ng-container *ngIf="!loadingTemplate">
18325
18601
  <span class="k-loading-text">{{ loadingText }}</span>
@@ -18343,7 +18619,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
18343
18619
  </ng-template>
18344
18620
  `
18345
18621
  }]
18346
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; }, propDecorators: { hostClass: [{
18622
+ }], ctorParameters: function () { return [{ type: ContextService }]; }, propDecorators: { hostClass: [{
18347
18623
  type: HostBinding,
18348
18624
  args: ['class.k-loading-mask']
18349
18625
  }], loadingTemplate: [{
@@ -18356,7 +18632,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
18356
18632
  class GridMessages extends ComponentMessages {
18357
18633
  }
18358
18634
  GridMessages.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GridMessages, deps: null, target: i0.ɵɵFactoryTarget.Directive });
18359
- GridMessages.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: GridMessages, selector: "kendo-grid-messages-base", inputs: { groupPanelEmpty: "groupPanelEmpty", noRecords: "noRecords", pagerLabel: "pagerLabel", pagerFirstPage: "pagerFirstPage", pagerLastPage: "pagerLastPage", pagerPreviousPage: "pagerPreviousPage", pagerNextPage: "pagerNextPage", pagerPage: "pagerPage", pagerItemsPerPage: "pagerItemsPerPage", pagerOf: "pagerOf", pagerItems: "pagerItems", pagerPageNumberInputTitle: "pagerPageNumberInputTitle", selectPage: "selectPage", filter: "filter", filterInputLabel: "filterInputLabel", filterMenuTitle: "filterMenuTitle", filterMenuOperatorsDropDownLabel: "filterMenuOperatorsDropDownLabel", filterMenuLogicDropDownLabel: "filterMenuLogicDropDownLabel", filterEqOperator: "filterEqOperator", filterNotEqOperator: "filterNotEqOperator", filterIsNullOperator: "filterIsNullOperator", filterIsNotNullOperator: "filterIsNotNullOperator", filterIsEmptyOperator: "filterIsEmptyOperator", filterIsNotEmptyOperator: "filterIsNotEmptyOperator", filterStartsWithOperator: "filterStartsWithOperator", filterContainsOperator: "filterContainsOperator", filterNotContainsOperator: "filterNotContainsOperator", filterEndsWithOperator: "filterEndsWithOperator", filterGteOperator: "filterGteOperator", filterGtOperator: "filterGtOperator", filterLteOperator: "filterLteOperator", filterLtOperator: "filterLtOperator", filterIsTrue: "filterIsTrue", filterIsFalse: "filterIsFalse", filterBooleanAll: "filterBooleanAll", filterAfterOrEqualOperator: "filterAfterOrEqualOperator", filterAfterOperator: "filterAfterOperator", filterBeforeOperator: "filterBeforeOperator", filterBeforeOrEqualOperator: "filterBeforeOrEqualOperator", filterFilterButton: "filterFilterButton", filterClearButton: "filterClearButton", filterAndLogic: "filterAndLogic", filterOrLogic: "filterOrLogic", loading: "loading", gridLabel: "gridLabel", columnMenu: "columnMenu", setColumnPosition: "setColumnPosition", columns: "columns", lock: "lock", unlock: "unlock", stick: "stick", unstick: "unstick", sortable: "sortable", sortAscending: "sortAscending", sortDescending: "sortDescending", autosizeThisColumn: "autosizeThisColumn", autosizeAllColumns: "autosizeAllColumns", sortedAscending: "sortedAscending", sortedDescending: "sortedDescending", sortedDefault: "sortedDefault", columnsApply: "columnsApply", columnsReset: "columnsReset", detailExpand: "detailExpand", detailCollapse: "detailCollapse", filterDateToday: "filterDateToday", filterDateToggle: "filterDateToggle", filterNumericDecrement: "filterNumericDecrement", filterNumericIncrement: "filterNumericIncrement", selectionCheckboxLabel: "selectionCheckboxLabel", selectAllCheckboxLabel: "selectAllCheckboxLabel", groupCollapse: "groupCollapse", groupExpand: "groupExpand", topToolbarLabel: "topToolbarLabel", bottomToolbarLabel: "bottomToolbarLabel", groupPanelLabel: "groupPanelLabel", dragRowHandleLabel: "dragRowHandleLabel" }, usesInheritance: true, ngImport: i0 });
18635
+ GridMessages.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "13.3.12", type: GridMessages, selector: "kendo-grid-messages-base", inputs: { groupPanelEmpty: "groupPanelEmpty", noRecords: "noRecords", pagerLabel: "pagerLabel", pagerFirstPage: "pagerFirstPage", pagerLastPage: "pagerLastPage", pagerPreviousPage: "pagerPreviousPage", pagerNextPage: "pagerNextPage", pagerPage: "pagerPage", pagerItemsPerPage: "pagerItemsPerPage", pagerOf: "pagerOf", pagerItems: "pagerItems", pagerPageNumberInputTitle: "pagerPageNumberInputTitle", selectPage: "selectPage", filter: "filter", filterInputLabel: "filterInputLabel", filterMenuTitle: "filterMenuTitle", filterMenuOperatorsDropDownLabel: "filterMenuOperatorsDropDownLabel", filterMenuLogicDropDownLabel: "filterMenuLogicDropDownLabel", filterEqOperator: "filterEqOperator", filterNotEqOperator: "filterNotEqOperator", filterIsNullOperator: "filterIsNullOperator", filterIsNotNullOperator: "filterIsNotNullOperator", filterIsEmptyOperator: "filterIsEmptyOperator", filterIsNotEmptyOperator: "filterIsNotEmptyOperator", filterStartsWithOperator: "filterStartsWithOperator", filterContainsOperator: "filterContainsOperator", filterNotContainsOperator: "filterNotContainsOperator", filterEndsWithOperator: "filterEndsWithOperator", filterGteOperator: "filterGteOperator", filterGtOperator: "filterGtOperator", filterLteOperator: "filterLteOperator", filterLtOperator: "filterLtOperator", filterIsTrue: "filterIsTrue", filterIsFalse: "filterIsFalse", filterBooleanAll: "filterBooleanAll", filterAfterOrEqualOperator: "filterAfterOrEqualOperator", filterAfterOperator: "filterAfterOperator", filterBeforeOperator: "filterBeforeOperator", filterBeforeOrEqualOperator: "filterBeforeOrEqualOperator", filterFilterButton: "filterFilterButton", filterClearButton: "filterClearButton", filterAndLogic: "filterAndLogic", filterOrLogic: "filterOrLogic", loading: "loading", gridLabel: "gridLabel", columnMenu: "columnMenu", setColumnPosition: "setColumnPosition", columns: "columns", lock: "lock", unlock: "unlock", stick: "stick", unstick: "unstick", sortable: "sortable", sortAscending: "sortAscending", sortDescending: "sortDescending", autosizeThisColumn: "autosizeThisColumn", autosizeAllColumns: "autosizeAllColumns", sortedAscending: "sortedAscending", sortedDescending: "sortedDescending", sortedDefault: "sortedDefault", columnsApply: "columnsApply", columnsReset: "columnsReset", detailExpand: "detailExpand", detailCollapse: "detailCollapse", filterDateToday: "filterDateToday", filterDateToggle: "filterDateToggle", filterNumericDecrement: "filterNumericDecrement", filterNumericIncrement: "filterNumericIncrement", selectionCheckboxLabel: "selectionCheckboxLabel", selectAllCheckboxLabel: "selectAllCheckboxLabel", groupCollapse: "groupCollapse", groupExpand: "groupExpand", topToolbarLabel: "topToolbarLabel", bottomToolbarLabel: "bottomToolbarLabel", groupPanelLabel: "groupPanelLabel", dragRowHandleLabel: "dragRowHandleLabel", columnMenuFilterTabTitle: "columnMenuFilterTabTitle", columnMenuGeneralTabTitle: "columnMenuGeneralTabTitle", columnMenuColumnsTabTitle: "columnMenuColumnsTabTitle" }, usesInheritance: true, ngImport: i0 });
18360
18636
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GridMessages, decorators: [{
18361
18637
  type: Directive,
18362
18638
  args: [{
@@ -18515,6 +18791,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
18515
18791
  type: Input
18516
18792
  }], dragRowHandleLabel: [{
18517
18793
  type: Input
18794
+ }], columnMenuFilterTabTitle: [{
18795
+ type: Input
18796
+ }], columnMenuGeneralTabTitle: [{
18797
+ type: Input
18798
+ }], columnMenuColumnsTabTitle: [{
18799
+ type: Input
18518
18800
  }] } });
18519
18801
 
18520
18802
  /**
@@ -20663,6 +20945,15 @@ GridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
20663
20945
 
20664
20946
  i18n-dragRowHandleLabel="kendo.grid.dragRowHandleLabel|The label for the Grid drag row handle"
20665
20947
  dragRowHandleLabel="Drag row"
20948
+
20949
+ i18n-columnMenuFilterTabTitle="kendo.grid.columnMenuFilterTabTitle|The title for the column menu Filter tab"
20950
+ columnMenuFilterTabTitle="Filter"
20951
+
20952
+ i18n-columnMenuGeneralTabTitle="kendo.grid.columnMenuGeneralTabTitle|The title for the column menu General tab"
20953
+ columnMenuGeneralTabTitle="General"
20954
+
20955
+ i18n-columnMenuColumnsTabTitle="kendo.grid.columnMenuColumnsTabTitle|The title for the column menu Columns tab"
20956
+ columnMenuColumnsTabTitle="Columns"
20666
20957
  >
20667
20958
  </ng-container>
20668
20959
  <kendo-grid-toolbar
@@ -20799,13 +21090,13 @@ GridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
20799
21090
  [dropTargetFilter]="getDefaultSelectors('dropTarget')"
20800
21091
  [dragHandle]="getDefaultSelectors('handle')"
20801
21092
  [hint]="{hintTemplate: defaultHint}"
20802
- (press)="handleReorderEvents($event, 'press')"
20803
- (dragStart)="handleReorderEvents($event, 'dragStart')"
20804
- (drag)="handleReorderEvents($event, 'drag')"
20805
- (dragEnter)="handleReorderEvents($event, 'dragEnter')"
20806
- (dragLeave)="handleReorderEvents($event, 'dragLeave')"
20807
- (dragEnd)="handleReorderEvents($event, 'dragEnd')"
20808
- (drop)="handleReorderEvents($event, 'drop')"
21093
+ (onPress)="handleReorderEvents($event, 'press')"
21094
+ (onDragStart)="handleReorderEvents($event, 'dragStart')"
21095
+ (onDrag)="handleReorderEvents($event, 'drag')"
21096
+ (onDragEnter)="handleReorderEvents($event, 'dragEnter')"
21097
+ (onDragLeave)="handleReorderEvents($event, 'dragLeave')"
21098
+ (onDragEnd)="handleReorderEvents($event, 'dragEnd')"
21099
+ (onDrop)="handleReorderEvents($event, 'drop')"
20809
21100
  [dragData]="gridData"
20810
21101
  [data]="$any(view)"
20811
21102
  [rowHeight]="rowHeight"
@@ -20983,7 +21274,7 @@ GridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
20983
21274
  </kendo-icon-wrapper>
20984
21275
  {{hintText}}
20985
21276
  </ng-template>
20986
- `, isInline: true, components: [{ type: ToolbarComponent, selector: "kendo-grid-toolbar", inputs: ["position", "size", "navigable"] }, { type: PagerComponent, selector: "kendo-pager", inputs: ["total", "skip", "pageSize", "options", "size", "template"], outputs: ["pageChange"] }, { type: GroupPanelComponent, selector: "kendo-grid-group-panel", inputs: ["text", "navigable", "groups"], outputs: ["change"] }, { type: ColGroupComponent, selector: "[kendoGridColGroup]", inputs: ["columns", "groups", "detailTemplate", "sort"] }, { type: HeaderComponent, selector: "[kendoGridHeader]", inputs: ["totalColumnLevels", "columns", "groups", "detailTemplate", "scrollable", "filterable", "sort", "filter", "sortable", "groupable", "lockedColumnsCount", "resizable", "reorderable", "columnMenu", "columnMenuTemplate", "totalColumnsCount", "tabIndex", "size"] }, { type: ListComponent, selector: "kendo-grid-list", inputs: ["data", "groups", "total", "rowHeight", "stickyRowHeight", "detailRowHeight", "take", "skip", "columns", "detailTemplate", "noRecordsTemplate", "selectable", "groupable", "filterable", "rowClass", "rowSticky", "loading", "trackBy", "virtualColumns", "isVirtual", "cellLoadingTemplate", "loadingTemplate", "sort", "size"], outputs: ["contentScroll", "pageChange", "scrollBottom"] }, { type: FooterComponent, selector: "[kendoGridFooter]", inputs: ["columns", "groups", "detailTemplate", "scrollable", "lockedColumnsCount", "logicalRowIndex"] }, { type: TableBodyComponent, selector: "[kendoGridTableBody]", inputs: ["columns", "allColumns", "groups", "detailTemplate", "noRecordsTemplate", "data", "skip", "selectable", "filterable", "noRecordsText", "isLocked", "isLoading", "isVirtual", "cellLoadingTemplate", "skipGroupDecoration", "showGroupFooters", "lockedColumnsCount", "totalColumnsCount", "virtualColumns", "trackBy", "rowSticky", "rowClass"] }, { type: LoadingComponent, selector: "[kendoGridLoading]", inputs: ["loadingTemplate"] }, { type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: LocalizedMessagesDirective, selector: "[kendoGridLocalizedMessages]" }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: TableDirective, selector: "table", inputs: ["locked", "virtualColumns"] }, { type: GridTableDirective, selector: "[kendoGridTable]", inputs: ["size"] }, { type: ResizableContainerDirective, selector: "[kendoGridResizableContainer]", inputs: ["lockedWidth", "kendoGridResizableContainer"] }, { type: i40.DragTargetContainerDirective, selector: "[kendoDragTargetContainer]", inputs: ["hint", "dragTargetFilter", "dragHandle", "dragDelay", "threshold", "dragTargetId", "dragData", "dragDisabled", "mode"], outputs: ["dragReady", "press", "dragStart", "drag", "release", "dragEnd"], exportAs: ["kendoDragTargetContainer"] }, { type: i40.DropTargetContainerDirective, selector: "[kendoDropTargetContainer]", inputs: ["dropTargetFilter", "dropDisabled"], outputs: ["dragEnter", "dragOver", "dragLeave", "drop"], exportAs: ["kendoDropTargetContainer"] }, { type: i1$1.DraggableDirective, selector: "[kendoDraggable]", inputs: ["enableDrag"], outputs: ["kendoPress", "kendoDrag", "kendoRelease"] }, { type: GridMarqueeDirective, selector: "[kendoGridSelectionMarquee]" }], encapsulation: i0.ViewEncapsulation.None });
21277
+ `, isInline: true, components: [{ type: ToolbarComponent, selector: "kendo-grid-toolbar", inputs: ["position", "size", "navigable"] }, { type: PagerComponent, selector: "kendo-pager", inputs: ["total", "skip", "pageSize", "options", "size", "template"], outputs: ["pageChange"] }, { type: GroupPanelComponent, selector: "kendo-grid-group-panel", inputs: ["text", "navigable", "groups"], outputs: ["change"] }, { type: ColGroupComponent, selector: "[kendoGridColGroup]", inputs: ["columns", "groups", "detailTemplate", "sort"] }, { type: HeaderComponent, selector: "[kendoGridHeader]", inputs: ["totalColumnLevels", "columns", "groups", "detailTemplate", "scrollable", "filterable", "sort", "filter", "sortable", "groupable", "lockedColumnsCount", "resizable", "reorderable", "columnMenu", "columnMenuTemplate", "totalColumnsCount", "tabIndex", "size"] }, { type: ListComponent, selector: "kendo-grid-list", inputs: ["data", "groups", "total", "rowHeight", "stickyRowHeight", "detailRowHeight", "take", "skip", "columns", "detailTemplate", "noRecordsTemplate", "selectable", "groupable", "filterable", "rowClass", "rowSticky", "loading", "trackBy", "virtualColumns", "isVirtual", "cellLoadingTemplate", "loadingTemplate", "sort", "size"], outputs: ["contentScroll", "pageChange", "scrollBottom"] }, { type: FooterComponent, selector: "[kendoGridFooter]", inputs: ["columns", "groups", "detailTemplate", "scrollable", "lockedColumnsCount", "logicalRowIndex"] }, { type: TableBodyComponent, selector: "[kendoGridTableBody]", inputs: ["columns", "allColumns", "groups", "detailTemplate", "noRecordsTemplate", "data", "skip", "selectable", "filterable", "noRecordsText", "isLocked", "isLoading", "isVirtual", "cellLoadingTemplate", "skipGroupDecoration", "showGroupFooters", "lockedColumnsCount", "totalColumnsCount", "virtualColumns", "trackBy", "rowSticky", "rowClass"] }, { type: LoadingComponent, selector: "[kendoGridLoading]", inputs: ["loadingTemplate"] }, { type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: LocalizedMessagesDirective, selector: "[kendoGridLocalizedMessages]" }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: TableDirective, selector: "table", inputs: ["locked", "virtualColumns"] }, { type: GridTableDirective, selector: "[kendoGridTable]", inputs: ["size"] }, { type: ResizableContainerDirective, selector: "[kendoGridResizableContainer]", inputs: ["lockedWidth", "kendoGridResizableContainer"] }, { type: i40.DragTargetContainerDirective, selector: "[kendoDragTargetContainer]", inputs: ["hint", "dragTargetFilter", "dragHandle", "dragDelay", "threshold", "dragTargetId", "dragData", "dragDisabled", "mode"], outputs: ["onDragReady", "onPress", "onDragStart", "onDrag", "onRelease", "onDragEnd"], exportAs: ["kendoDragTargetContainer"] }, { type: i40.DropTargetContainerDirective, selector: "[kendoDropTargetContainer]", inputs: ["dropTargetFilter", "dropDisabled"], outputs: ["onDragEnter", "onDragOver", "onDragLeave", "onDrop"], exportAs: ["kendoDropTargetContainer"] }, { type: i1$1.DraggableDirective, selector: "[kendoDraggable]", inputs: ["enableDrag"], outputs: ["kendoPress", "kendoDrag", "kendoRelease"] }, { type: GridMarqueeDirective, selector: "[kendoGridSelectionMarquee]" }], encapsulation: i0.ViewEncapsulation.None });
20987
21278
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GridComponent, decorators: [{
20988
21279
  type: Component,
20989
21280
  args: [{
@@ -21263,6 +21554,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
21263
21554
 
21264
21555
  i18n-dragRowHandleLabel="kendo.grid.dragRowHandleLabel|The label for the Grid drag row handle"
21265
21556
  dragRowHandleLabel="Drag row"
21557
+
21558
+ i18n-columnMenuFilterTabTitle="kendo.grid.columnMenuFilterTabTitle|The title for the column menu Filter tab"
21559
+ columnMenuFilterTabTitle="Filter"
21560
+
21561
+ i18n-columnMenuGeneralTabTitle="kendo.grid.columnMenuGeneralTabTitle|The title for the column menu General tab"
21562
+ columnMenuGeneralTabTitle="General"
21563
+
21564
+ i18n-columnMenuColumnsTabTitle="kendo.grid.columnMenuColumnsTabTitle|The title for the column menu Columns tab"
21565
+ columnMenuColumnsTabTitle="Columns"
21266
21566
  >
21267
21567
  </ng-container>
21268
21568
  <kendo-grid-toolbar
@@ -21399,13 +21699,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
21399
21699
  [dropTargetFilter]="getDefaultSelectors('dropTarget')"
21400
21700
  [dragHandle]="getDefaultSelectors('handle')"
21401
21701
  [hint]="{hintTemplate: defaultHint}"
21402
- (press)="handleReorderEvents($event, 'press')"
21403
- (dragStart)="handleReorderEvents($event, 'dragStart')"
21404
- (drag)="handleReorderEvents($event, 'drag')"
21405
- (dragEnter)="handleReorderEvents($event, 'dragEnter')"
21406
- (dragLeave)="handleReorderEvents($event, 'dragLeave')"
21407
- (dragEnd)="handleReorderEvents($event, 'dragEnd')"
21408
- (drop)="handleReorderEvents($event, 'drop')"
21702
+ (onPress)="handleReorderEvents($event, 'press')"
21703
+ (onDragStart)="handleReorderEvents($event, 'dragStart')"
21704
+ (onDrag)="handleReorderEvents($event, 'drag')"
21705
+ (onDragEnter)="handleReorderEvents($event, 'dragEnter')"
21706
+ (onDragLeave)="handleReorderEvents($event, 'dragLeave')"
21707
+ (onDragEnd)="handleReorderEvents($event, 'dragEnd')"
21708
+ (onDrop)="handleReorderEvents($event, 'drop')"
21409
21709
  [dragData]="gridData"
21410
21710
  [data]="$any(view)"
21411
21711
  [rowHeight]="rowHeight"
@@ -22260,12 +22560,12 @@ const stringOperators = localizeOperators({
22260
22560
  * @hidden
22261
22561
  */
22262
22562
  class AutoCompleteFilterCellComponent extends BaseFilterCellComponent {
22263
- constructor(filterService, column, localization, sizingOptionsService) {
22563
+ constructor(filterService, column, ctx, sizingOptionsService) {
22264
22564
  super(filterService);
22265
- this.localization = localization;
22565
+ this.ctx = ctx;
22266
22566
  this.showOperators = true;
22267
22567
  this.size = 'medium';
22268
- this.defaultOperators = stringOperators(this.localization);
22568
+ this.defaultOperators = stringOperators(this.ctx.localization);
22269
22569
  this.column = column;
22270
22570
  this.subs = sizingOptionsService.changes.subscribe(size => this.size = size);
22271
22571
  }
@@ -22287,7 +22587,7 @@ class AutoCompleteFilterCellComponent extends BaseFilterCellComponent {
22287
22587
  }
22288
22588
  }
22289
22589
  }
22290
- AutoCompleteFilterCellComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AutoCompleteFilterCellComponent, deps: [{ token: FilterService }, { token: ColumnComponent }, { token: i1.LocalizationService }, { token: SizingOptionsService }], target: i0.ɵɵFactoryTarget.Component });
22590
+ AutoCompleteFilterCellComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AutoCompleteFilterCellComponent, deps: [{ token: FilterService }, { token: ColumnComponent }, { token: ContextService }, { token: SizingOptionsService }], target: i0.ɵɵFactoryTarget.Component });
22291
22591
  AutoCompleteFilterCellComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: AutoCompleteFilterCellComponent, selector: "kendo-grid-autocomplete-filter-cell", inputs: { showOperators: "showOperators", column: "column", filter: "filter", data: "data", valueField: "valueField" }, usesInheritance: true, ngImport: i0, template: `
22292
22592
  <kendo-grid-filter-wrapper-cell
22293
22593
  [column]="column"
@@ -22323,7 +22623,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22323
22623
  </kendo-grid-filter-wrapper-cell>
22324
22624
  `
22325
22625
  }]
22326
- }], ctorParameters: function () { return [{ type: FilterService }, { type: ColumnComponent }, { type: i1.LocalizationService }, { type: SizingOptionsService }]; }, propDecorators: { showOperators: [{
22626
+ }], ctorParameters: function () { return [{ type: FilterService }, { type: ColumnComponent }, { type: ContextService }, { type: SizingOptionsService }]; }, propDecorators: { showOperators: [{
22327
22627
  type: Input
22328
22628
  }], column: [{
22329
22629
  type: Input
@@ -22413,9 +22713,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22413
22713
  * For more information and examples, refer to the article on setting [default filter operators](slug:filter_row#toc-default-filter-operator).
22414
22714
  */
22415
22715
  class ContainsFilterOperatorComponent extends FilterOperatorBase {
22416
- constructor(localization) { super("contains", localization); }
22716
+ constructor(ctx) { super("contains", ctx); }
22417
22717
  }
22418
- ContainsFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ContainsFilterOperatorComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
22718
+ ContainsFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ContainsFilterOperatorComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
22419
22719
  ContainsFilterOperatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ContainsFilterOperatorComponent, selector: "kendo-filter-contains-operator", providers: [
22420
22720
  {
22421
22721
  provide: FilterOperatorBase,
@@ -22434,7 +22734,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22434
22734
  selector: 'kendo-filter-contains-operator',
22435
22735
  template: ``
22436
22736
  }]
22437
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
22737
+ }], ctorParameters: function () { return [{ type: ContextService }]; } });
22438
22738
 
22439
22739
  /**
22440
22740
  * Represents the `DoesNotContain` (**Does not contain**) filter operator. [See example](slug:filtering_grid#toc-using-the-built-in-directive).
@@ -22442,9 +22742,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22442
22742
  * For more information and examples, refer to the article on setting [default filter operators](slug:filter_row#toc-default-filter-operator).
22443
22743
  */
22444
22744
  class DoesNotContainFilterOperatorComponent extends FilterOperatorBase {
22445
- constructor(localization) { super("doesnotcontain", localization); }
22745
+ constructor(ctx) { super("doesnotcontain", ctx); }
22446
22746
  }
22447
- DoesNotContainFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DoesNotContainFilterOperatorComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
22747
+ DoesNotContainFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: DoesNotContainFilterOperatorComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
22448
22748
  DoesNotContainFilterOperatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: DoesNotContainFilterOperatorComponent, selector: "kendo-filter-not-contains-operator", providers: [
22449
22749
  {
22450
22750
  provide: FilterOperatorBase,
@@ -22463,7 +22763,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22463
22763
  selector: 'kendo-filter-not-contains-operator',
22464
22764
  template: ``
22465
22765
  }]
22466
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
22766
+ }], ctorParameters: function () { return [{ type: ContextService }]; } });
22467
22767
 
22468
22768
  /**
22469
22769
  * Represents the `EndsWith` (**Ends with**) string filter operator. [See example](slug:filtering_grid#toc-using-the-built-in-directive).
@@ -22471,9 +22771,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22471
22771
  * For more information and examples, refer to the article on setting [default filter operators](slug:filter_row#toc-default-filter-operator).
22472
22772
  */
22473
22773
  class EndsWithFilterOperatorComponent extends FilterOperatorBase {
22474
- constructor(localization) { super("endswith", localization); }
22774
+ constructor(ctx) { super("endswith", ctx); }
22475
22775
  }
22476
- EndsWithFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: EndsWithFilterOperatorComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
22776
+ EndsWithFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: EndsWithFilterOperatorComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
22477
22777
  EndsWithFilterOperatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: EndsWithFilterOperatorComponent, selector: "kendo-filter-endswith-operator", providers: [
22478
22778
  {
22479
22779
  provide: FilterOperatorBase,
@@ -22492,7 +22792,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22492
22792
  selector: 'kendo-filter-endswith-operator',
22493
22793
  template: ``
22494
22794
  }]
22495
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
22795
+ }], ctorParameters: function () { return [{ type: ContextService }]; } });
22496
22796
 
22497
22797
  /**
22498
22798
  * Represents the `Equal` (**Is equal to**) filter operator. [See example](slug:filtering_grid#toc-using-the-built-in-directive).
@@ -22500,9 +22800,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22500
22800
  * For more information and examples, refer to the article on setting [default filter operators](slug:filter_row#toc-default-filter-operator).
22501
22801
  */
22502
22802
  class EqualFilterOperatorComponent extends FilterOperatorBase {
22503
- constructor(localization) { super("eq", localization); }
22803
+ constructor(ctx) { super("eq", ctx); }
22504
22804
  }
22505
- EqualFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: EqualFilterOperatorComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
22805
+ EqualFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: EqualFilterOperatorComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
22506
22806
  EqualFilterOperatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: EqualFilterOperatorComponent, selector: "kendo-filter-eq-operator", providers: [
22507
22807
  {
22508
22808
  provide: FilterOperatorBase,
@@ -22521,7 +22821,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22521
22821
  selector: 'kendo-filter-eq-operator',
22522
22822
  template: ``
22523
22823
  }]
22524
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
22824
+ }], ctorParameters: function () { return [{ type: ContextService }]; } });
22525
22825
 
22526
22826
  /**
22527
22827
  * Represents the `IsEmpty` (**Is empty**) filter operator. [See example](slug:filtering_grid#toc-using-the-built-in-directive).
@@ -22529,9 +22829,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22529
22829
  * For more information and examples, refer to the article on setting [default filter operators](slug:filter_row#toc-default-filter-operator).
22530
22830
  */
22531
22831
  class IsEmptyFilterOperatorComponent extends FilterOperatorBase {
22532
- constructor(localization) { super("isempty", localization); }
22832
+ constructor(ctx) { super("isempty", ctx); }
22533
22833
  }
22534
- IsEmptyFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: IsEmptyFilterOperatorComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
22834
+ IsEmptyFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: IsEmptyFilterOperatorComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
22535
22835
  IsEmptyFilterOperatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: IsEmptyFilterOperatorComponent, selector: "kendo-filter-isempty-operator", providers: [
22536
22836
  {
22537
22837
  provide: FilterOperatorBase,
@@ -22550,7 +22850,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22550
22850
  selector: 'kendo-filter-isempty-operator',
22551
22851
  template: ``
22552
22852
  }]
22553
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
22853
+ }], ctorParameters: function () { return [{ type: ContextService }]; } });
22554
22854
 
22555
22855
  /**
22556
22856
  * Represents the `IsNotEmpty` (**Is not empty**) filter operator. [See example](slug:filtering_grid#toc-using-the-built-in-directive).
@@ -22558,9 +22858,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22558
22858
  * For more information and examples, refer to the article on setting [default filter operators](slug:filter_row#toc-default-filter-operator).
22559
22859
  */
22560
22860
  class IsNotEmptyFilterOperatorComponent extends FilterOperatorBase {
22561
- constructor(localization) { super("isnotempty", localization); }
22861
+ constructor(ctx) { super("isnotempty", ctx); }
22562
22862
  }
22563
- IsNotEmptyFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: IsNotEmptyFilterOperatorComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
22863
+ IsNotEmptyFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: IsNotEmptyFilterOperatorComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
22564
22864
  IsNotEmptyFilterOperatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: IsNotEmptyFilterOperatorComponent, selector: "kendo-filter-isnotempty-operator", providers: [
22565
22865
  {
22566
22866
  provide: FilterOperatorBase,
@@ -22579,7 +22879,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22579
22879
  selector: 'kendo-filter-isnotempty-operator',
22580
22880
  template: ``
22581
22881
  }]
22582
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
22882
+ }], ctorParameters: function () { return [{ type: ContextService }]; } });
22583
22883
 
22584
22884
  /**
22585
22885
  * Represents the `IsNotNull` (**Is not null**) filter operator. [See example](slug:filtering_grid#toc-using-the-built-in-directive).
@@ -22587,9 +22887,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22587
22887
  * For more information and examples, refer to the article on setting [default filter operators](slug:filter_row#toc-default-filter-operator).
22588
22888
  */
22589
22889
  class IsNotNullFilterOperatorComponent extends FilterOperatorBase {
22590
- constructor(localization) { super("isnotnull", localization); }
22890
+ constructor(ctx) { super("isnotnull", ctx); }
22591
22891
  }
22592
- IsNotNullFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: IsNotNullFilterOperatorComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
22892
+ IsNotNullFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: IsNotNullFilterOperatorComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
22593
22893
  IsNotNullFilterOperatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: IsNotNullFilterOperatorComponent, selector: "kendo-filter-isnotnull-operator", providers: [
22594
22894
  {
22595
22895
  provide: FilterOperatorBase,
@@ -22608,7 +22908,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22608
22908
  selector: 'kendo-filter-isnotnull-operator',
22609
22909
  template: ``
22610
22910
  }]
22611
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
22911
+ }], ctorParameters: function () { return [{ type: ContextService }]; } });
22612
22912
 
22613
22913
  /**
22614
22914
  * Represents the `IsNull` (**Is null**) filter operator. [See example](slug:filtering_grid#toc-using-the-built-in-directive).
@@ -22616,9 +22916,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22616
22916
  * For more information and examples, refer to the article on setting [default filter operators](slug:filter_row#toc-default-filter-operator).
22617
22917
  */
22618
22918
  class IsNullFilterOperatorComponent extends FilterOperatorBase {
22619
- constructor(localization) { super("isnull", localization); }
22919
+ constructor(ctx) { super("isnull", ctx); }
22620
22920
  }
22621
- IsNullFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: IsNullFilterOperatorComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
22921
+ IsNullFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: IsNullFilterOperatorComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
22622
22922
  IsNullFilterOperatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: IsNullFilterOperatorComponent, selector: "kendo-filter-isnull-operator", providers: [
22623
22923
  {
22624
22924
  provide: FilterOperatorBase,
@@ -22637,7 +22937,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22637
22937
  selector: 'kendo-filter-isnull-operator',
22638
22938
  template: ``
22639
22939
  }]
22640
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
22940
+ }], ctorParameters: function () { return [{ type: ContextService }]; } });
22641
22941
 
22642
22942
  /**
22643
22943
  * Represents the `NotEqual` (**Is not equal to**) filter operator. [See example](slug:filtering_grid#toc-using-the-built-in-directive).
@@ -22645,9 +22945,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22645
22945
  * For more information and examples, refer to the article on setting [default filter operators](slug:filter_row#toc-default-filter-operator).
22646
22946
  */
22647
22947
  class NotEqualFilterOperatorComponent extends FilterOperatorBase {
22648
- constructor(localization) { super("neq", localization); }
22948
+ constructor(ctx) { super("neq", ctx); }
22649
22949
  }
22650
- NotEqualFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: NotEqualFilterOperatorComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
22950
+ NotEqualFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: NotEqualFilterOperatorComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
22651
22951
  NotEqualFilterOperatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: NotEqualFilterOperatorComponent, selector: "kendo-filter-neq-operator", providers: [
22652
22952
  {
22653
22953
  provide: FilterOperatorBase,
@@ -22666,7 +22966,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22666
22966
  selector: 'kendo-filter-neq-operator',
22667
22967
  template: ``
22668
22968
  }]
22669
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
22969
+ }], ctorParameters: function () { return [{ type: ContextService }]; } });
22670
22970
 
22671
22971
  /**
22672
22972
  * Represents the `StartsWith` (**Starts with**) filter operator. [See example](slug:filtering_grid#toc-using-the-built-in-directive).
@@ -22674,9 +22974,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22674
22974
  * For more information and examples, refer to the article on setting [default filter operators](slug:filter_row#toc-default-filter-operator).
22675
22975
  */
22676
22976
  class StartsWithFilterOperatorComponent extends FilterOperatorBase {
22677
- constructor(localization) { super("startswith", localization); }
22977
+ constructor(ctx) { super("startswith", ctx); }
22678
22978
  }
22679
- StartsWithFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: StartsWithFilterOperatorComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
22979
+ StartsWithFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: StartsWithFilterOperatorComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
22680
22980
  StartsWithFilterOperatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: StartsWithFilterOperatorComponent, selector: "kendo-filter-startswith-operator", providers: [
22681
22981
  {
22682
22982
  provide: FilterOperatorBase,
@@ -22695,16 +22995,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22695
22995
  selector: 'kendo-filter-startswith-operator',
22696
22996
  template: ``
22697
22997
  }]
22698
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
22998
+ }], ctorParameters: function () { return [{ type: ContextService }]; } });
22699
22999
 
22700
23000
  /**
22701
23001
  * Represents the `Greater` (**Is greater than**) [numeric filter](slug:filtering_grid#toc-numeric-filter) operator.
22702
23002
  * [See example](slug:filter_row#toc-default-filter-operator).
22703
23003
  */
22704
23004
  class GreaterFilterOperatorComponent extends FilterOperatorBase {
22705
- constructor(localization) { super("gt", localization); }
23005
+ constructor(ctx) { super("gt", ctx); }
22706
23006
  }
22707
- GreaterFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GreaterFilterOperatorComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
23007
+ GreaterFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GreaterFilterOperatorComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
22708
23008
  GreaterFilterOperatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: GreaterFilterOperatorComponent, selector: "kendo-filter-gt-operator", providers: [
22709
23009
  {
22710
23010
  provide: FilterOperatorBase,
@@ -22723,16 +23023,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22723
23023
  selector: 'kendo-filter-gt-operator',
22724
23024
  template: ``
22725
23025
  }]
22726
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
23026
+ }], ctorParameters: function () { return [{ type: ContextService }]; } });
22727
23027
 
22728
23028
  /**
22729
23029
  * Represents the `GreaterOrEqualTo` (**Is greater than or equal to**) [numeric filter](slug:filtering_grid#toc-numeric-filter) operator.
22730
23030
  * [See example](slug:filter_row#toc-default-filter-operator).
22731
23031
  */
22732
23032
  class GreaterOrEqualToFilterOperatorComponent extends FilterOperatorBase {
22733
- constructor(localization) { super("gte", localization); }
23033
+ constructor(ctx) { super("gte", ctx); }
22734
23034
  }
22735
- GreaterOrEqualToFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GreaterOrEqualToFilterOperatorComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
23035
+ GreaterOrEqualToFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: GreaterOrEqualToFilterOperatorComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
22736
23036
  GreaterOrEqualToFilterOperatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: GreaterOrEqualToFilterOperatorComponent, selector: "kendo-filter-gte-operator", providers: [
22737
23037
  {
22738
23038
  provide: FilterOperatorBase,
@@ -22751,7 +23051,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22751
23051
  selector: 'kendo-filter-gte-operator',
22752
23052
  template: ``
22753
23053
  }]
22754
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
23054
+ }], ctorParameters: function () { return [{ type: ContextService }]; } });
22755
23055
 
22756
23056
  /**
22757
23057
  * Represents the `Less` (**Is less than**) [numeric filter](slug:filtering_grid#toc-numeric-filter) operator.
@@ -22759,9 +23059,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22759
23059
  * [See example](slug:filter_row#toc-default-filter-operator).
22760
23060
  */
22761
23061
  class LessFilterOperatorComponent extends FilterOperatorBase {
22762
- constructor(localization) { super("lt", localization); }
23062
+ constructor(ctx) { super("lt", ctx); }
22763
23063
  }
22764
- LessFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: LessFilterOperatorComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
23064
+ LessFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: LessFilterOperatorComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
22765
23065
  LessFilterOperatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: LessFilterOperatorComponent, selector: "kendo-filter-lt-operator", providers: [
22766
23066
  {
22767
23067
  provide: FilterOperatorBase,
@@ -22780,7 +23080,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22780
23080
  selector: 'kendo-filter-lt-operator',
22781
23081
  template: ``
22782
23082
  }]
22783
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
23083
+ }], ctorParameters: function () { return [{ type: ContextService }]; } });
22784
23084
 
22785
23085
  /**
22786
23086
  * Represents the `LessOrEqualTo` (**Is less than or equal to**) [numeric filter](slug:filtering_grid#toc-numeric-filter) operator.
@@ -22788,9 +23088,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22788
23088
  * [See example](slug:filter_row#toc-default-filter-operator).
22789
23089
  */
22790
23090
  class LessOrEqualToFilterOperatorComponent extends FilterOperatorBase {
22791
- constructor(localization) { super("lte", localization); }
23091
+ constructor(ctx) { super("lte", ctx); }
22792
23092
  }
22793
- LessOrEqualToFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: LessOrEqualToFilterOperatorComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
23093
+ LessOrEqualToFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: LessOrEqualToFilterOperatorComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
22794
23094
  LessOrEqualToFilterOperatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: LessOrEqualToFilterOperatorComponent, selector: "kendo-filter-lte-operator", providers: [
22795
23095
  {
22796
23096
  provide: FilterOperatorBase,
@@ -22809,14 +23109,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22809
23109
  selector: 'kendo-filter-lte-operator',
22810
23110
  template: ``
22811
23111
  }]
22812
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
23112
+ }], ctorParameters: function () { return [{ type: ContextService }]; } });
22813
23113
 
22814
23114
  /**
22815
23115
  * Represents the `Greater` (**Is after**) [date filter](slug:filtering_grid#toc-date-filter) operator.
22816
23116
  * [See example](slug:filter_row#toc-default-filter-operator).
22817
23117
  */
22818
23118
  class AfterFilterOperatorComponent extends FilterOperatorBase {
22819
- constructor(localization) { super("after", localization); }
23119
+ constructor(ctx) { super("after", ctx); }
22820
23120
  /**
22821
23121
  * @hidden
22822
23122
  */
@@ -22827,7 +23127,7 @@ class AfterFilterOperatorComponent extends FilterOperatorBase {
22827
23127
  };
22828
23128
  }
22829
23129
  }
22830
- AfterFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AfterFilterOperatorComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
23130
+ AfterFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AfterFilterOperatorComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
22831
23131
  AfterFilterOperatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: AfterFilterOperatorComponent, selector: "kendo-filter-after-operator", providers: [
22832
23132
  {
22833
23133
  provide: FilterOperatorBase,
@@ -22846,14 +23146,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22846
23146
  selector: 'kendo-filter-after-operator',
22847
23147
  template: ``
22848
23148
  }]
22849
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
23149
+ }], ctorParameters: function () { return [{ type: ContextService }]; } });
22850
23150
 
22851
23151
  /**
22852
23152
  * Represents the `GreaterOrEqualTo` (**Is after or equal to**) [date filter](slug:filtering_grid#toc-date-filter) operator.
22853
23153
  * [See example](slug:filter_row#toc-default-filter-operator).
22854
23154
  */
22855
23155
  class AfterEqFilterOperatorComponent extends FilterOperatorBase {
22856
- constructor(localization) { super("after-eq", localization); }
23156
+ constructor(ctx) { super("after-eq", ctx); }
22857
23157
  /**
22858
23158
  * @hidden
22859
23159
  */
@@ -22864,7 +23164,7 @@ class AfterEqFilterOperatorComponent extends FilterOperatorBase {
22864
23164
  };
22865
23165
  }
22866
23166
  }
22867
- AfterEqFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AfterEqFilterOperatorComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
23167
+ AfterEqFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AfterEqFilterOperatorComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
22868
23168
  AfterEqFilterOperatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: AfterEqFilterOperatorComponent, selector: "kendo-filter-after-eq-operator", providers: [
22869
23169
  {
22870
23170
  provide: FilterOperatorBase,
@@ -22883,14 +23183,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22883
23183
  selector: 'kendo-filter-after-eq-operator',
22884
23184
  template: ``
22885
23185
  }]
22886
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
23186
+ }], ctorParameters: function () { return [{ type: ContextService }]; } });
22887
23187
 
22888
23188
  /**
22889
23189
  * Represents the `LessOrEqualTo` (**Is before or equal to**) [date filter](slug:filtering_grid#toc-date-filter) operator.
22890
23190
  * [See example](slug:filter_row#toc-default-filter-operator).
22891
23191
  */
22892
23192
  class BeforeEqFilterOperatorComponent extends FilterOperatorBase {
22893
- constructor(localization) { super("before-eq", localization); }
23193
+ constructor(ctx) { super("before-eq", ctx); }
22894
23194
  /**
22895
23195
  * @hidden
22896
23196
  */
@@ -22901,7 +23201,7 @@ class BeforeEqFilterOperatorComponent extends FilterOperatorBase {
22901
23201
  };
22902
23202
  }
22903
23203
  }
22904
- BeforeEqFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BeforeEqFilterOperatorComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
23204
+ BeforeEqFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BeforeEqFilterOperatorComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
22905
23205
  BeforeEqFilterOperatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: BeforeEqFilterOperatorComponent, selector: "kendo-filter-before-eq-operator", providers: [
22906
23206
  {
22907
23207
  provide: FilterOperatorBase,
@@ -22920,14 +23220,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22920
23220
  selector: 'kendo-filter-before-eq-operator',
22921
23221
  template: ``
22922
23222
  }]
22923
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
23223
+ }], ctorParameters: function () { return [{ type: ContextService }]; } });
22924
23224
 
22925
23225
  /**
22926
23226
  * Represents the `Less than` (**Is before**) [date filter](slug:filtering_grid#toc-date-filter) operator.
22927
23227
  * [See example](slug:filter_row#toc-default-filter-operator).
22928
23228
  */
22929
23229
  class BeforeFilterOperatorComponent extends FilterOperatorBase {
22930
- constructor(localization) { super("before", localization); }
23230
+ constructor(ctx) { super("before", ctx); }
22931
23231
  /**
22932
23232
  * @hidden
22933
23233
  */
@@ -22938,7 +23238,7 @@ class BeforeFilterOperatorComponent extends FilterOperatorBase {
22938
23238
  };
22939
23239
  }
22940
23240
  }
22941
- BeforeFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BeforeFilterOperatorComponent, deps: [{ token: i1.LocalizationService }], target: i0.ɵɵFactoryTarget.Component });
23241
+ BeforeFilterOperatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: BeforeFilterOperatorComponent, deps: [{ token: ContextService }], target: i0.ɵɵFactoryTarget.Component });
22942
23242
  BeforeFilterOperatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: BeforeFilterOperatorComponent, selector: "kendo-filter-before-operator", providers: [
22943
23243
  {
22944
23244
  provide: FilterOperatorBase,
@@ -22957,7 +23257,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
22957
23257
  selector: 'kendo-filter-before-operator',
22958
23258
  template: ``
22959
23259
  }]
22960
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }]; } });
23260
+ }], ctorParameters: function () { return [{ type: ContextService }]; } });
22961
23261
 
22962
23262
  const FILTER_OPERATORS = [
22963
23263
  FilterCellOperatorsComponent,
@@ -23364,7 +23664,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
23364
23664
  }] });
23365
23665
 
23366
23666
  /**
23367
- * Represents the component for toggling the visibility of the Grid columns. [See example](slug:columnmenu_grid#toc-using-standalone-column-chooser).
23667
+ * Represents the component for toggling visibility of the Grid columns visibility. [See example](slug:columnmenu_grid#toc-using-standalone-column-chooser).
23368
23668
  * To show and hide the columns without including the column chooser item in the [Column Menu](slug:columnmenu_grid),
23369
23669
  * add the component inside the [ToolbarTemplate](slug:toolbartemplate_grid) directive.
23370
23670
  *
@@ -23379,8 +23679,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
23379
23679
  * ```
23380
23680
  */
23381
23681
  class ColumnChooserComponent {
23382
- constructor(localization, columnInfoService, popupService, ngZone, renderer, changeDetector) {
23383
- this.localization = localization;
23682
+ constructor(ctx, columnInfoService, popupService, ngZone, renderer, changeDetector) {
23683
+ this.ctx = ctx;
23384
23684
  this.columnInfoService = columnInfoService;
23385
23685
  this.popupService = popupService;
23386
23686
  this.ngZone = ngZone;
@@ -23414,7 +23714,7 @@ class ColumnChooserComponent {
23414
23714
  */
23415
23715
  toggle(anchor, template) {
23416
23716
  if (!this.popupRef) {
23417
- const direction = this.localization.rtl ? 'right' : 'left';
23717
+ const direction = this.ctx.localization.rtl ? 'right' : 'left';
23418
23718
  this.popupRef = this.popupService.open({
23419
23719
  anchor: anchor.element,
23420
23720
  content: template,
@@ -23422,7 +23722,7 @@ class ColumnChooserComponent {
23422
23722
  anchorAlign: { vertical: 'bottom', horizontal: direction },
23423
23723
  popupAlign: { vertical: 'top', horizontal: direction }
23424
23724
  });
23425
- this.renderer.setAttribute(this.popupRef.popupElement, 'dir', this.localization.rtl ? 'rtl' : 'ltr');
23725
+ this.renderer.setAttribute(this.popupRef.popupElement, 'dir', this.ctx.localization.rtl ? 'rtl' : 'ltr');
23426
23726
  if (!isDocumentAvailable()) {
23427
23727
  return;
23428
23728
  }
@@ -23467,22 +23767,22 @@ class ColumnChooserComponent {
23467
23767
  }
23468
23768
  }
23469
23769
  }
23470
- ColumnChooserComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnChooserComponent, deps: [{ token: i1.LocalizationService }, { token: ColumnInfoService }, { token: i1$2.PopupService }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
23770
+ ColumnChooserComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnChooserComponent, deps: [{ token: ContextService }, { token: ColumnInfoService }, { token: i1$2.PopupService }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
23471
23771
  ColumnChooserComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ColumnChooserComponent, selector: "kendo-grid-column-chooser", inputs: { autoSync: "autoSync", allowHideAll: "allowHideAll" }, ngImport: i0, template: `
23472
23772
  <button #anchor
23473
23773
  kendoButton
23474
23774
  type="button"
23475
23775
  (click)="toggle(anchor, template)"
23476
23776
  fillMode="flat"
23477
- [attr.title]="localization.get('columns')"
23777
+ [attr.title]="ctx.localization.get('columns')"
23478
23778
  icon="columns"
23479
23779
  [svgIcon]="columnsIcon"></button>
23480
23780
  <ng-template #template>
23481
- <span class='k-column-chooser-title'>{{ localization.get('columns') }}</span>
23781
+ <span class='k-column-chooser-title'>{{ ctx.localization.get('columns') }}</span>
23482
23782
  <kendo-grid-columnlist
23483
23783
  [columns]="columns"
23484
- [applyText]="localization.get('columnsApply')"
23485
- [resetText]="localization.get('columnsReset')"
23784
+ [applyText]="ctx.localization.get('columnsApply')"
23785
+ [resetText]="ctx.localization.get('columnsReset')"
23486
23786
  [autoSync]="autoSync"
23487
23787
  [allowHideAll]="allowHideAll"
23488
23788
  (apply)="onApply($event)"
@@ -23500,15 +23800,15 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
23500
23800
  type="button"
23501
23801
  (click)="toggle(anchor, template)"
23502
23802
  fillMode="flat"
23503
- [attr.title]="localization.get('columns')"
23803
+ [attr.title]="ctx.localization.get('columns')"
23504
23804
  icon="columns"
23505
23805
  [svgIcon]="columnsIcon"></button>
23506
23806
  <ng-template #template>
23507
- <span class='k-column-chooser-title'>{{ localization.get('columns') }}</span>
23807
+ <span class='k-column-chooser-title'>{{ ctx.localization.get('columns') }}</span>
23508
23808
  <kendo-grid-columnlist
23509
23809
  [columns]="columns"
23510
- [applyText]="localization.get('columnsApply')"
23511
- [resetText]="localization.get('columnsReset')"
23810
+ [applyText]="ctx.localization.get('columnsApply')"
23811
+ [resetText]="ctx.localization.get('columnsReset')"
23512
23812
  [autoSync]="autoSync"
23513
23813
  [allowHideAll]="allowHideAll"
23514
23814
  (apply)="onApply($event)"
@@ -23517,7 +23817,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
23517
23817
  </ng-template>
23518
23818
  `
23519
23819
  }]
23520
- }], ctorParameters: function () { return [{ type: i1.LocalizationService }, { type: ColumnInfoService }, { type: i1$2.PopupService }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { autoSync: [{
23820
+ }], ctorParameters: function () { return [{ type: ContextService }, { type: ColumnInfoService }, { type: i1$2.PopupService }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { autoSync: [{
23521
23821
  type: Input
23522
23822
  }], allowHideAll: [{
23523
23823
  type: Input
@@ -23581,7 +23881,7 @@ ColumnMenuModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", versio
23581
23881
  ColumnMenuStickComponent,
23582
23882
  ColumnMenuPositionComponent,
23583
23883
  ColumnMenuAutoSizeColumnComponent,
23584
- ColumnMenuAutoSizeAllColumnsComponent], imports: [CommonModule, FilterMenuModule, ButtonModule], exports: [ColumnListComponent,
23884
+ ColumnMenuAutoSizeAllColumnsComponent], imports: [CommonModule, FilterMenuModule, ButtonModule, TabStripModule], exports: [ColumnListComponent,
23585
23885
  ColumnChooserComponent,
23586
23886
  ColumnMenuChooserComponent,
23587
23887
  ColumnMenuFilterComponent,
@@ -23597,12 +23897,12 @@ ColumnMenuModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", versio
23597
23897
  ColumnMenuPositionComponent,
23598
23898
  ColumnMenuAutoSizeColumnComponent,
23599
23899
  ColumnMenuAutoSizeAllColumnsComponent] });
23600
- ColumnMenuModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnMenuModule, imports: [[CommonModule, FilterMenuModule, ButtonModule]] });
23900
+ ColumnMenuModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnMenuModule, imports: [[CommonModule, FilterMenuModule, ButtonModule, TabStripModule]] });
23601
23901
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ColumnMenuModule, decorators: [{
23602
23902
  type: NgModule,
23603
23903
  args: [{
23604
23904
  declarations: [COMPONENTS],
23605
- imports: [CommonModule, FilterMenuModule, ButtonModule],
23905
+ imports: [CommonModule, FilterMenuModule, ButtonModule, TabStripModule],
23606
23906
  exports: [COMPONENTS]
23607
23907
  }]
23608
23908
  }] });
@@ -23739,8 +24039,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
23739
24039
  *
23740
24040
  */
23741
24041
  class EditCommandDirective extends Button {
23742
- constructor(editService, cellContext, element, renderer, localization, ngZone) {
23743
- super(element, renderer, null, localization, ngZone);
24042
+ constructor(editService, cellContext, element, renderer, ctx, ngZone) {
24043
+ super(element, renderer, null, ctx.localization, ngZone);
23744
24044
  this.editService = editService;
23745
24045
  this.cellContext = cellContext;
23746
24046
  /**
@@ -23768,7 +24068,7 @@ class EditCommandDirective extends Button {
23768
24068
  }
23769
24069
  }
23770
24070
  }
23771
- EditCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: EditCommandDirective, deps: [{ token: EditService }, { token: CELL_CONTEXT }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
24071
+ EditCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: EditCommandDirective, deps: [{ token: EditService }, { token: CELL_CONTEXT }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: ContextService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
23772
24072
  EditCommandDirective.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: EditCommandDirective, selector: "[kendoGridEditCommand]", host: { listeners: { "click": "onClick($event)" }, properties: { "style.display": "this.visible", "class.k-grid-edit-command": "this.commandClass" } }, usesInheritance: true, ngImport: i0, template: `
23773
24073
  <kendo-icon-wrapper
23774
24074
  *ngIf="icon || svgIcon"
@@ -23780,7 +24080,7 @@ EditCommandDirective.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", v
23780
24080
  </span>
23781
24081
  <span *ngIf="iconClass" class="k-button-icon" [ngClass]="iconClass"></span>
23782
24082
  <span class="k-button-text"><ng-content></ng-content></span>
23783
- `, isInline: true, components: [{ type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
24083
+ `, isInline: true, components: [{ type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
23784
24084
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: EditCommandDirective, decorators: [{
23785
24085
  type: Component,
23786
24086
  args: [{
@@ -23802,7 +24102,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
23802
24102
  return [{ type: EditService }, { type: undefined, decorators: [{
23803
24103
  type: Inject,
23804
24104
  args: [CELL_CONTEXT]
23805
- }] }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.LocalizationService }, { type: i0.NgZone }];
24105
+ }] }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: ContextService }, { type: i0.NgZone }];
23806
24106
  }, propDecorators: { visible: [{
23807
24107
  type: HostBinding,
23808
24108
  args: ['style.display']
@@ -23836,8 +24136,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
23836
24136
  * ```
23837
24137
  */
23838
24138
  class CancelCommandDirective extends Button {
23839
- constructor(editService, cellContext, element, renderer, localization, ngZone) {
23840
- super(element, renderer, null, localization, ngZone);
24139
+ constructor(editService, cellContext, element, renderer, ctx, ngZone) {
24140
+ super(element, renderer, null, ctx.localization, ngZone);
23841
24141
  this.editService = editService;
23842
24142
  this.cellContext = cellContext;
23843
24143
  /**
@@ -23867,7 +24167,7 @@ class CancelCommandDirective extends Button {
23867
24167
  }
23868
24168
  }
23869
24169
  }
23870
- CancelCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: CancelCommandDirective, deps: [{ token: EditService }, { token: CELL_CONTEXT }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
24170
+ CancelCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: CancelCommandDirective, deps: [{ token: EditService }, { token: CELL_CONTEXT }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: ContextService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
23871
24171
  CancelCommandDirective.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: CancelCommandDirective, selector: "[kendoGridCancelCommand]", host: { listeners: { "click": "onClick($event)" }, properties: { "style.display": "this.visible", "class.k-grid-cancel-command": "this.commandClass" } }, usesInheritance: true, ngImport: i0, template: `
23872
24172
  <kendo-icon-wrapper
23873
24173
  *ngIf="icon || svgIcon"
@@ -23879,7 +24179,7 @@ CancelCommandDirective.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0",
23879
24179
  </span>
23880
24180
  <span *ngIf="iconClass" class="k-button-icon" [ngClass]="iconClass"></span>
23881
24181
  <span class="k-button-text"><ng-content></ng-content></span>
23882
- `, isInline: true, components: [{ type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
24182
+ `, isInline: true, components: [{ type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
23883
24183
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: CancelCommandDirective, decorators: [{
23884
24184
  type: Component,
23885
24185
  args: [{
@@ -23901,7 +24201,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
23901
24201
  return [{ type: EditService }, { type: undefined, decorators: [{
23902
24202
  type: Inject,
23903
24203
  args: [CELL_CONTEXT]
23904
- }] }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.LocalizationService }, { type: i0.NgZone }];
24204
+ }] }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: ContextService }, { type: i0.NgZone }];
23905
24205
  }, propDecorators: { visible: [{
23906
24206
  type: HostBinding,
23907
24207
  args: ['style.display']
@@ -23935,8 +24235,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
23935
24235
  * ```
23936
24236
  */
23937
24237
  class SaveCommandDirective extends Button {
23938
- constructor(editService, cellContext, element, renderer, localization, ngZone) {
23939
- super(element, renderer, null, localization, ngZone);
24238
+ constructor(editService, cellContext, element, renderer, ctx, ngZone) {
24239
+ super(element, renderer, null, ctx.localization, ngZone);
23940
24240
  this.editService = editService;
23941
24241
  this.cellContext = cellContext;
23942
24242
  /**
@@ -23966,7 +24266,7 @@ class SaveCommandDirective extends Button {
23966
24266
  }
23967
24267
  }
23968
24268
  }
23969
- SaveCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SaveCommandDirective, deps: [{ token: EditService }, { token: CELL_CONTEXT }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
24269
+ SaveCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SaveCommandDirective, deps: [{ token: EditService }, { token: CELL_CONTEXT }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: ContextService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
23970
24270
  SaveCommandDirective.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: SaveCommandDirective, selector: "[kendoGridSaveCommand]", host: { listeners: { "click": "onClick($event)" }, properties: { "style.display": "this.visible", "class.k-grid-save-command": "this.commandClass" } }, usesInheritance: true, ngImport: i0, template: `
23971
24271
  <kendo-icon-wrapper
23972
24272
  *ngIf="icon || svgIcon"
@@ -23978,7 +24278,7 @@ SaveCommandDirective.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", v
23978
24278
  </span>
23979
24279
  <span *ngIf="iconClass" class="k-button-icon" [ngClass]="iconClass"></span>
23980
24280
  <span class="k-button-text"><ng-content></ng-content></span>
23981
- `, isInline: true, components: [{ type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
24281
+ `, isInline: true, components: [{ type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
23982
24282
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SaveCommandDirective, decorators: [{
23983
24283
  type: Component,
23984
24284
  args: [{
@@ -24000,7 +24300,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
24000
24300
  return [{ type: EditService }, { type: undefined, decorators: [{
24001
24301
  type: Inject,
24002
24302
  args: [CELL_CONTEXT]
24003
- }] }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.LocalizationService }, { type: i0.NgZone }];
24303
+ }] }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: ContextService }, { type: i0.NgZone }];
24004
24304
  }, propDecorators: { visible: [{
24005
24305
  type: HostBinding,
24006
24306
  args: ['style.display']
@@ -24033,8 +24333,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
24033
24333
  * ```
24034
24334
  */
24035
24335
  class RemoveCommandDirective extends Button {
24036
- constructor(editService, cellContext, element, renderer, localization, ngZone) {
24037
- super(element, renderer, null, localization, ngZone);
24336
+ constructor(editService, cellContext, element, renderer, ctx, ngZone) {
24337
+ super(element, renderer, null, ctx.localization, ngZone);
24038
24338
  this.editService = editService;
24039
24339
  this.cellContext = cellContext;
24040
24340
  /**
@@ -24062,7 +24362,7 @@ class RemoveCommandDirective extends Button {
24062
24362
  }
24063
24363
  }
24064
24364
  }
24065
- RemoveCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: RemoveCommandDirective, deps: [{ token: EditService }, { token: CELL_CONTEXT }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
24365
+ RemoveCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: RemoveCommandDirective, deps: [{ token: EditService }, { token: CELL_CONTEXT }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: ContextService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
24066
24366
  RemoveCommandDirective.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: RemoveCommandDirective, selector: "[kendoGridRemoveCommand]", host: { listeners: { "click": "onClick($event)" }, properties: { "style.display": "this.visible", "class.k-grid-remove-command": "this.commandClass" } }, usesInheritance: true, ngImport: i0, template: `
24067
24367
  <kendo-icon-wrapper
24068
24368
  *ngIf="icon || svgIcon"
@@ -24074,7 +24374,7 @@ RemoveCommandDirective.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0",
24074
24374
  </span>
24075
24375
  <span *ngIf="iconClass" class="k-button-icon" [ngClass]="iconClass"></span>
24076
24376
  <span class="k-button-text"><ng-content></ng-content></span>
24077
- `, isInline: true, components: [{ type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
24377
+ `, isInline: true, components: [{ type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
24078
24378
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: RemoveCommandDirective, decorators: [{
24079
24379
  type: Component,
24080
24380
  args: [{
@@ -24096,7 +24396,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
24096
24396
  return [{ type: EditService }, { type: undefined, decorators: [{
24097
24397
  type: Inject,
24098
24398
  args: [CELL_CONTEXT]
24099
- }] }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.LocalizationService }, { type: i0.NgZone }];
24399
+ }] }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: ContextService }, { type: i0.NgZone }];
24100
24400
  }, propDecorators: { visible: [{
24101
24401
  type: HostBinding,
24102
24402
  args: ['style.display']
@@ -24125,8 +24425,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
24125
24425
  * ```
24126
24426
  */
24127
24427
  class AddCommandDirective extends Button {
24128
- constructor(editService, element, renderer, localization, ngZone) {
24129
- super(element, renderer, null, localization, ngZone);
24428
+ constructor(editService, element, renderer, ctx, ngZone) {
24429
+ super(element, renderer, null, ctx.localization, ngZone);
24130
24430
  this.editService = editService;
24131
24431
  }
24132
24432
  /**
@@ -24143,7 +24443,7 @@ class AddCommandDirective extends Button {
24143
24443
  return true;
24144
24444
  }
24145
24445
  }
24146
- AddCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AddCommandDirective, deps: [{ token: EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
24446
+ AddCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AddCommandDirective, deps: [{ token: EditService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: ContextService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
24147
24447
  AddCommandDirective.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: AddCommandDirective, selector: "[kendoGridAddCommand]", host: { listeners: { "click": "onClick($event)" }, properties: { "class.k-grid-add-command": "this.commandClass" } }, usesInheritance: true, ngImport: i0, template: `
24148
24448
  <kendo-icon-wrapper
24149
24449
  *ngIf="icon || svgIcon"
@@ -24155,7 +24455,7 @@ AddCommandDirective.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
24155
24455
  </span>
24156
24456
  <span *ngIf="iconClass" class="k-button-icon" [ngClass]="iconClass"></span>
24157
24457
  <span class="k-button-text"><ng-content></ng-content></span>
24158
- `, isInline: true, components: [{ type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
24458
+ `, isInline: true, components: [{ type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
24159
24459
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AddCommandDirective, decorators: [{
24160
24460
  type: Component,
24161
24461
  args: [{
@@ -24173,7 +24473,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
24173
24473
  <span class="k-button-text"><ng-content></ng-content></span>
24174
24474
  `
24175
24475
  }]
24176
- }], ctorParameters: function () { return [{ type: EditService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.LocalizationService }, { type: i0.NgZone }]; }, propDecorators: { onClick: [{
24476
+ }], ctorParameters: function () { return [{ type: EditService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: ContextService }, { type: i0.NgZone }]; }, propDecorators: { onClick: [{
24177
24477
  type: HostListener,
24178
24478
  args: ['click', ['$event']]
24179
24479
  }], commandClass: [{
@@ -25666,8 +25966,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
25666
25966
  * ```
25667
25967
  */
25668
25968
  class PDFCommandDirective extends Button {
25669
- constructor(pdfService, element, renderer, localization, ngZone) {
25670
- super(element, renderer, null, localization, ngZone);
25969
+ constructor(pdfService, element, renderer, ctx, ngZone) {
25970
+ super(element, renderer, null, ctx.localization, ngZone);
25671
25971
  this.pdfService = pdfService;
25672
25972
  this.ngZone = ngZone;
25673
25973
  }
@@ -25685,7 +25985,7 @@ class PDFCommandDirective extends Button {
25685
25985
  return true;
25686
25986
  }
25687
25987
  }
25688
- PDFCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PDFCommandDirective, deps: [{ token: PDFService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
25988
+ PDFCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PDFCommandDirective, deps: [{ token: PDFService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: ContextService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
25689
25989
  PDFCommandDirective.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: PDFCommandDirective, selector: "[kendoGridPDFCommand]", host: { listeners: { "click": "onClick($event)" }, properties: { "class.k-grid-pdf": "this.pdfClass" } }, usesInheritance: true, ngImport: i0, template: `
25690
25990
  <kendo-icon-wrapper
25691
25991
  *ngIf="icon || svgIcon"
@@ -25697,7 +25997,7 @@ PDFCommandDirective.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
25697
25997
  </span>
25698
25998
  <span *ngIf="iconClass" class="k-button-icon" [ngClass]="iconClass"></span>
25699
25999
  <span class="k-button-text"><ng-content></ng-content></span>
25700
- `, isInline: true, components: [{ type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
26000
+ `, isInline: true, components: [{ type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
25701
26001
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: PDFCommandDirective, decorators: [{
25702
26002
  type: Component,
25703
26003
  args: [{
@@ -25715,7 +26015,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
25715
26015
  <span class="k-button-text"><ng-content></ng-content></span>
25716
26016
  `
25717
26017
  }]
25718
- }], ctorParameters: function () { return [{ type: PDFService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.LocalizationService }, { type: i0.NgZone }]; }, propDecorators: { onClick: [{
26018
+ }], ctorParameters: function () { return [{ type: PDFService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: ContextService }, { type: i0.NgZone }]; }, propDecorators: { onClick: [{
25719
26019
  type: HostListener,
25720
26020
  args: ['click', ['$event']]
25721
26021
  }], pdfClass: [{
@@ -25832,8 +26132,8 @@ const componentColumns = (component) => {
25832
26132
  * Configures the settings for the export of Grid in Excel ([see example]({% slug excelexport_grid %})).
25833
26133
  */
25834
26134
  class ExcelComponent {
25835
- constructor(excelService, localization, zone) {
25836
- this.localization = localization;
26135
+ constructor(excelService, ctx, zone) {
26136
+ this.ctx = ctx;
25837
26137
  this.zone = zone;
25838
26138
  /**
25839
26139
  * Specifies the file name of the exported Excel file.
@@ -25878,7 +26178,7 @@ class ExcelComponent {
25878
26178
  date: this.date,
25879
26179
  paddingCellOptions: this.paddingCellOptions,
25880
26180
  headerPaddingCellOptions: this.headerPaddingCellOptions,
25881
- rtl: this.localization.rtl,
26181
+ rtl: this.ctx.localization.rtl,
25882
26182
  collapsible: this.collapsible
25883
26183
  });
25884
26184
  const args = new ExcelExportEvent(options);
@@ -25896,7 +26196,7 @@ class ExcelComponent {
25896
26196
  });
25897
26197
  }
25898
26198
  }
25899
- ExcelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ExcelComponent, deps: [{ token: ExcelService }, { token: i1.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
26199
+ ExcelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ExcelComponent, deps: [{ token: ExcelService }, { token: ContextService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
25900
26200
  ExcelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ExcelComponent, selector: "kendo-grid-excel", inputs: { fileName: "fileName", filterable: "filterable", creator: "creator", date: "date", forceProxy: "forceProxy", proxyURL: "proxyURL", fetchData: "fetchData", paddingCellOptions: "paddingCellOptions", headerPaddingCellOptions: "headerPaddingCellOptions", collapsible: "collapsible" }, queries: [{ propertyName: "columns", predicate: ColumnBase$1, descendants: true }], ngImport: i0, template: ``, isInline: true });
25901
26201
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ExcelComponent, decorators: [{
25902
26202
  type: Component,
@@ -25904,7 +26204,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
25904
26204
  selector: 'kendo-grid-excel',
25905
26205
  template: ``
25906
26206
  }]
25907
- }], ctorParameters: function () { return [{ type: ExcelService }, { type: i1.LocalizationService }, { type: i0.NgZone }]; }, propDecorators: { fileName: [{
26207
+ }], ctorParameters: function () { return [{ type: ExcelService }, { type: ContextService }, { type: i0.NgZone }]; }, propDecorators: { fileName: [{
25908
26208
  type: Input
25909
26209
  }], filterable: [{
25910
26210
  type: Input
@@ -25949,8 +26249,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
25949
26249
  * ```
25950
26250
  */
25951
26251
  class ExcelCommandDirective extends Button {
25952
- constructor(excelService, element, renderer, localization, ngZone) {
25953
- super(element, renderer, null, localization, ngZone);
26252
+ constructor(excelService, element, renderer, ctx, ngZone) {
26253
+ super(element, renderer, null, ctx.localization, ngZone);
25954
26254
  this.excelService = excelService;
25955
26255
  this.ngZone = ngZone;
25956
26256
  }
@@ -25968,7 +26268,7 @@ class ExcelCommandDirective extends Button {
25968
26268
  return true;
25969
26269
  }
25970
26270
  }
25971
- ExcelCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ExcelCommandDirective, deps: [{ token: ExcelService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.LocalizationService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
26271
+ ExcelCommandDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ExcelCommandDirective, deps: [{ token: ExcelService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: ContextService }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
25972
26272
  ExcelCommandDirective.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: ExcelCommandDirective, selector: "[kendoGridExcelCommand]", host: { listeners: { "click": "onClick($event)" }, properties: { "class.k-grid-excel": "this.excelClass" } }, usesInheritance: true, ngImport: i0, template: `
25973
26273
  <kendo-icon-wrapper
25974
26274
  *ngIf="icon || svgIcon"
@@ -25980,7 +26280,7 @@ ExcelCommandDirective.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0",
25980
26280
  </span>
25981
26281
  <span *ngIf="iconClass" class="k-button-icon" [ngClass]="iconClass"></span>
25982
26282
  <span class="k-button-text"><ng-content></ng-content></span>
25983
- `, isInline: true, components: [{ type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
26283
+ `, isInline: true, components: [{ type: i3.IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
25984
26284
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: ExcelCommandDirective, decorators: [{
25985
26285
  type: Component,
25986
26286
  args: [{
@@ -25998,7 +26298,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
25998
26298
  <span class="k-button-text"><ng-content></ng-content></span>
25999
26299
  `
26000
26300
  }]
26001
- }], ctorParameters: function () { return [{ type: ExcelService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.LocalizationService }, { type: i0.NgZone }]; }, propDecorators: { onClick: [{
26301
+ }], ctorParameters: function () { return [{ type: ExcelService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: ContextService }, { type: i0.NgZone }]; }, propDecorators: { onClick: [{
26002
26302
  type: HostListener,
26003
26303
  args: ['click', ['$event']]
26004
26304
  }], excelClass: [{