@progress/kendo-angular-grid 7.2.5-dev.202208151739 → 7.3.0-dev.202209071125

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.
@@ -2836,7 +2836,7 @@ const packageMetadata = {
2836
2836
  name: '@progress/kendo-angular-grid',
2837
2837
  productName: 'Kendo UI for Angular',
2838
2838
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
2839
- publishDate: 1660585055,
2839
+ publishDate: 1662549819,
2840
2840
  version: '',
2841
2841
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning'
2842
2842
  };
@@ -3367,7 +3367,8 @@ class ColumnBase {
3367
3367
  */
3368
3368
  this.reorderable = true;
3369
3369
  /**
3370
- * The width (in pixels) below which the user is not able to resize the column by using the UI.
3370
+ * The width (in pixels) below which the user is not able to resize the column by using the UI ([see example]({% slug resizing_columns_grid %}#toc-limiting-the-resizing)).
3371
+ * @default 10
3371
3372
  */
3372
3373
  this.minResizableWidth = 10;
3373
3374
  this._locked = false;
@@ -3544,7 +3545,7 @@ class ColumnBase {
3544
3545
  }
3545
3546
  }
3546
3547
  ColumnBase.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ColumnBase, deps: [{ token: ColumnBase }, { token: IdService }], target: i0.ɵɵFactoryTarget.Component });
3547
- ColumnBase.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ColumnBase, selector: "kendo-grid-column-base", inputs: { resizable: "resizable", reorderable: "reorderable", minResizableWidth: "minResizableWidth", title: "title", width: "width", autoSize: "autoSize", locked: "locked", sticky: "sticky", hidden: "hidden", media: "media", lockable: "lockable", stickable: "stickable", columnMenu: "columnMenu", includeInChooser: "includeInChooser", style: "style", headerStyle: "headerStyle", filterStyle: "filterStyle", footerStyle: "footerStyle", cssClass: ["class", "cssClass"], headerClass: "headerClass", filterClass: "filterClass", footerClass: "footerClass" }, queries: [{ propertyName: "footerTemplate", first: true, predicate: FooterTemplateDirective, descendants: true }, { propertyName: "headerTemplates", predicate: HeaderTemplateDirective }, { propertyName: "columnMenuTemplates", predicate: ColumnMenuTemplateDirective }], ngImport: i0, template: ``, isInline: true });
3548
+ ColumnBase.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ColumnBase, selector: "kendo-grid-column-base", inputs: { resizable: "resizable", reorderable: "reorderable", minResizableWidth: "minResizableWidth", maxResizableWidth: "maxResizableWidth", title: "title", width: "width", autoSize: "autoSize", locked: "locked", sticky: "sticky", hidden: "hidden", media: "media", lockable: "lockable", stickable: "stickable", columnMenu: "columnMenu", includeInChooser: "includeInChooser", style: "style", headerStyle: "headerStyle", filterStyle: "filterStyle", footerStyle: "footerStyle", cssClass: ["class", "cssClass"], headerClass: "headerClass", filterClass: "filterClass", footerClass: "footerClass" }, queries: [{ propertyName: "footerTemplate", first: true, predicate: FooterTemplateDirective, descendants: true }, { propertyName: "headerTemplates", predicate: HeaderTemplateDirective }, { propertyName: "columnMenuTemplates", predicate: ColumnMenuTemplateDirective }], ngImport: i0, template: ``, isInline: true });
3548
3549
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ColumnBase, decorators: [{
3549
3550
  type: Component,
3550
3551
  args: [{
@@ -3557,6 +3558,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
3557
3558
  type: Input
3558
3559
  }], minResizableWidth: [{
3559
3560
  type: Input
3561
+ }], maxResizableWidth: [{
3562
+ type: Input
3560
3563
  }], title: [{
3561
3564
  type: Input
3562
3565
  }], width: [{
@@ -6808,7 +6811,7 @@ PagerPrevButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.
6808
6811
  [attr.aria-label]="textFor('pagerFirstPage')"
6809
6812
  [ngClass]="{
6810
6813
  'k-icon': true,
6811
- 'k-i-seek-w': true
6814
+ 'k-i-caret-alt-to-left': true
6812
6815
  }">
6813
6816
  </span>
6814
6817
  </span>
@@ -6828,7 +6831,7 @@ PagerPrevButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.
6828
6831
  [attr.aria-label]="textFor('pagerPreviousPage')"
6829
6832
  [ngClass]="{
6830
6833
  'k-icon': true,
6831
- 'k-i-arrow-w': true
6834
+ 'k-i-caret-alt-left': true
6832
6835
  }">
6833
6836
  </span>
6834
6837
  </span>
@@ -6855,7 +6858,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
6855
6858
  [attr.aria-label]="textFor('pagerFirstPage')"
6856
6859
  [ngClass]="{
6857
6860
  'k-icon': true,
6858
- 'k-i-seek-w': true
6861
+ 'k-i-caret-alt-to-left': true
6859
6862
  }">
6860
6863
  </span>
6861
6864
  </span>
@@ -6875,7 +6878,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
6875
6878
  [attr.aria-label]="textFor('pagerPreviousPage')"
6876
6879
  [ngClass]="{
6877
6880
  'k-icon': true,
6878
- 'k-i-arrow-w': true
6881
+ 'k-i-caret-alt-left': true
6879
6882
  }">
6880
6883
  </span>
6881
6884
  </span>
@@ -7331,7 +7334,7 @@ PagerNextButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.
7331
7334
  <span role="note" [attr.aria-label]="textFor('pagerNextPage')"
7332
7335
  [ngClass]="{
7333
7336
  'k-icon':true,
7334
- 'k-i-arrow-e': true
7337
+ 'k-i-caret-alt-right': true
7335
7338
  }">
7336
7339
  </span>
7337
7340
  </span>
@@ -7351,7 +7354,7 @@ PagerNextButtonsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.
7351
7354
  <span role="note" [attr.aria-label]="textFor('pagerLastPage')"
7352
7355
  [ngClass]="{
7353
7356
  'k-icon':true,
7354
- 'k-i-seek-e': true
7357
+ 'k-i-caret-alt-to-right': true
7355
7358
  }">
7356
7359
  </span>
7357
7360
  </span>
@@ -7378,7 +7381,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
7378
7381
  <span role="note" [attr.aria-label]="textFor('pagerNextPage')"
7379
7382
  [ngClass]="{
7380
7383
  'k-icon':true,
7381
- 'k-i-arrow-e': true
7384
+ 'k-i-caret-alt-right': true
7382
7385
  }">
7383
7386
  </span>
7384
7387
  </span>
@@ -7398,7 +7401,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
7398
7401
  <span role="note" [attr.aria-label]="textFor('pagerLastPage')"
7399
7402
  [ngClass]="{
7400
7403
  'k-icon':true,
7401
- 'k-i-seek-e': true
7404
+ 'k-i-caret-alt-to-right': true
7402
7405
  }">
7403
7406
  </span>
7404
7407
  </span>
@@ -8169,11 +8172,11 @@ GroupIndicatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0",
8169
8172
  GroupIndicatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: GroupIndicatorComponent, selector: "[kendoGroupIndicator]", inputs: { group: "group", groupTitle: "groupTitle" }, outputs: { directionChange: "directionChange", remove: "remove" }, host: { properties: { "class.k-group-indicator": "this.groupIndicatorClass" } }, ngImport: i0, template: `
8170
8173
  <a href="#" class="k-link" tabindex="-1" (click)="toggleDirection()">
8171
8174
  <span class="k-icon"
8172
- [class.k-i-sort-asc-sm]="dir === 'asc'"
8173
- [class.k-i-sort-desc-sm]="dir === 'desc'"></span>
8175
+ [class.k-i-sort-asc-small]="dir === 'asc'"
8176
+ [class.k-i-sort-desc-small]="dir === 'desc'"></span>
8174
8177
  {{groupTitle}}</a>
8175
8178
  <a class="k-button k-button-flat-base k-button-flat k-icon-button k-button-md k-rounded-md k-button-rectangle k-icon-button" tabindex="-1" (click)="removeDescriptor()">
8176
- <span class="k-button-icon k-icon k-i-group-delete"></span>
8179
+ <span class="k-button-icon k-icon k-i-x"></span>
8177
8180
  </a>
8178
8181
  `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
8179
8182
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: GroupIndicatorComponent, decorators: [{
@@ -8184,11 +8187,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
8184
8187
  template: `
8185
8188
  <a href="#" class="k-link" tabindex="-1" (click)="toggleDirection()">
8186
8189
  <span class="k-icon"
8187
- [class.k-i-sort-asc-sm]="dir === 'asc'"
8188
- [class.k-i-sort-desc-sm]="dir === 'desc'"></span>
8190
+ [class.k-i-sort-asc-small]="dir === 'asc'"
8191
+ [class.k-i-sort-desc-small]="dir === 'desc'"></span>
8189
8192
  {{groupTitle}}</a>
8190
8193
  <a class="k-button k-button-flat-base k-button-flat k-icon-button k-button-md k-rounded-md k-button-rectangle k-icon-button" tabindex="-1" (click)="removeDescriptor()">
8191
- <span class="k-button-icon k-icon k-i-group-delete"></span>
8194
+ <span class="k-button-icon k-icon k-i-x"></span>
8192
8195
  </a>
8193
8196
  `
8194
8197
  }]
@@ -8210,8 +8213,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
8210
8213
  */
8211
8214
  const preventOnDblClick$1 = release => mouseDown => of(mouseDown).pipe(delay(150), takeUntil(release));
8212
8215
  const hasClass = className => el => new RegExp(`(^| )${className}( |$)`).test(el.className);
8213
- const isDeleteButton = or(hasClass('k-i-group-delete'), hasClass('k-icon-button'));
8214
- const isSortIcon = or(hasClass('k-i-sort-asc-sm'), hasClass('k-i-sort-desc-sm'));
8216
+ const isDeleteButton = or(hasClass('k-i-x'), hasClass('k-icon-button'));
8217
+ const isSortIcon = or(hasClass('k-i-sort-asc-small'), hasClass('k-i-sort-desc-small'));
8215
8218
  const skipButtons = and(not(isDeleteButton), not(isSortIcon), not(isFocusableWithTabKey), not(matchesNodeName('label')));
8216
8219
  const elementUnderCursor = ({ clientX, clientY }) => document.elementFromPoint(clientX, clientY);
8217
8220
  const hideThenShow = (element, cont) => {
@@ -8543,6 +8546,7 @@ class ColGroupComponent {
8543
8546
  constructor() {
8544
8547
  this.columns = [];
8545
8548
  this.groups = [];
8549
+ this.sort = new Array();
8546
8550
  }
8547
8551
  get columnsToRender() {
8548
8552
  return columnsToRender(this.columns);
@@ -8550,13 +8554,28 @@ class ColGroupComponent {
8550
8554
  trackBy(index, _item) {
8551
8555
  return index;
8552
8556
  }
8557
+ isSorted(column) {
8558
+ const state = this.sortDescriptor(column.field);
8559
+ return this.isSortable(column) && (state.dir === 'asc' || state.dir === 'desc');
8560
+ }
8561
+ getColumnComponent(column) {
8562
+ return column;
8563
+ }
8564
+ isSortable(column) {
8565
+ return !isNullOrEmptyString(column.field) && isTruthy(column.sortable);
8566
+ }
8567
+ sortDescriptor(field) {
8568
+ return this.sort.find(item => item.field === field) || { field };
8569
+ }
8553
8570
  }
8554
8571
  ColGroupComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ColGroupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
8555
- ColGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ColGroupComponent, selector: "[kendoGridColGroup]", inputs: { columns: "columns", groups: "groups", detailTemplate: "detailTemplate" }, ngImport: i0, template: `
8572
+ ColGroupComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ColGroupComponent, selector: "[kendoGridColGroup]", inputs: { columns: "columns", groups: "groups", detailTemplate: "detailTemplate", sort: "sort" }, ngImport: i0, template: `
8556
8573
  <ng-container>
8557
8574
  <col [class.k-group-col]="true" *ngFor="let g of groups" />
8558
8575
  <col [class.k-hierarchy-col]="true" *ngIf="detailTemplate?.templateRef"/>
8559
- <col *ngFor="let column of columnsToRender; trackBy: trackBy;" [style.width.px]="column.width"/>
8576
+ <col *ngFor="let column of columnsToRender; trackBy: trackBy;"
8577
+ [style.width.px]="column.width"
8578
+ [class.k-sorted]="isSorted(getColumnComponent(column))"/>
8560
8579
  </ng-container>
8561
8580
  `, isInline: true, directives: [{ type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
8562
8581
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ColGroupComponent, decorators: [{
@@ -8567,7 +8586,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
8567
8586
  <ng-container>
8568
8587
  <col [class.k-group-col]="true" *ngFor="let g of groups" />
8569
8588
  <col [class.k-hierarchy-col]="true" *ngIf="detailTemplate?.templateRef"/>
8570
- <col *ngFor="let column of columnsToRender; trackBy: trackBy;" [style.width.px]="column.width"/>
8589
+ <col *ngFor="let column of columnsToRender; trackBy: trackBy;"
8590
+ [style.width.px]="column.width"
8591
+ [class.k-sorted]="isSorted(getColumnComponent(column))"/>
8571
8592
  </ng-container>
8572
8593
  `
8573
8594
  }]
@@ -8577,6 +8598,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
8577
8598
  type: Input
8578
8599
  }], detailTemplate: [{
8579
8600
  type: Input
8601
+ }], sort: [{
8602
+ type: Input
8580
8603
  }] } });
8581
8604
 
8582
8605
  /**
@@ -11026,7 +11049,7 @@ class FilterMenuComponent {
11026
11049
  FilterMenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: FilterMenuComponent, deps: [{ token: FilterService }, { token: SinglePopupService }, { token: i1.LocalizationService }, { token: NavigationService }], target: i0.ɵɵFactoryTarget.Component });
11027
11050
  FilterMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", 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: `
11028
11051
  <a #anchor
11029
- [ngClass]="{'k-grid-filter':true, 'k-active': hasFilters}"
11052
+ [ngClass]="{'k-grid-filter-menu':true, 'k-grid-header-menu':true, 'k-active': hasFilters}"
11030
11053
  [tabindex]="tabIndex"
11031
11054
  (click)="toggle(anchor, template)"
11032
11055
  (keydown.enter)="$event.stopImmediatePropagation()"
@@ -11051,7 +11074,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
11051
11074
  selector: 'kendo-grid-filter-menu',
11052
11075
  template: `
11053
11076
  <a #anchor
11054
- [ngClass]="{'k-grid-filter':true, 'k-active': hasFilters}"
11077
+ [ngClass]="{'k-grid-filter-menu':true, 'k-grid-header-menu':true, 'k-active': hasFilters}"
11055
11078
  [tabindex]="tabIndex"
11056
11079
  (click)="toggle(anchor, template)"
11057
11080
  (keydown.enter)="$event.stopImmediatePropagation()"
@@ -11097,7 +11120,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
11097
11120
  * template: `
11098
11121
  * <kendo-grid [data]="data" [columnMenu]="true">
11099
11122
  * <ng-template kendoGridColumnMenuTemplate let-service="service">
11100
- * <span class="k-icon k-i-close" (click)="service.close()"
11123
+ * <span class="k-icon k-i-x" (click)="service.close()"
11101
11124
  * style="position: absolute; right: 5px; top: 5px;cursor: pointer;"></span>
11102
11125
  * <kendo-grid-columnmenu-sort [service]="service">
11103
11126
  * </kendo-grid-columnmenu-sort>
@@ -12451,13 +12474,13 @@ ColumnMenuSortComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0",
12451
12474
  ColumnMenuSortComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", type: ColumnMenuSortComponent, selector: "kendo-grid-columnmenu-sort", usesInheritance: true, ngImport: i0, template: `
12452
12475
  <kendo-grid-columnmenu-item
12453
12476
  [text]="localization.get('sortAscending')"
12454
- icon="sort-asc-sm"
12477
+ icon="sort-asc-small"
12455
12478
  (itemClick)="toggleSort('asc')"
12456
12479
  [selected]="sortedAsc">
12457
12480
  </kendo-grid-columnmenu-item>
12458
12481
  <kendo-grid-columnmenu-item
12459
12482
  [text]="localization.get('sortDescending')"
12460
- icon="sort-desc-sm"
12483
+ icon="sort-desc-small"
12461
12484
  (itemClick)="toggleSort('desc')"
12462
12485
  [selected]="sortedDesc">
12463
12486
  </kendo-grid-columnmenu-item>
@@ -12469,13 +12492,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
12469
12492
  template: `
12470
12493
  <kendo-grid-columnmenu-item
12471
12494
  [text]="localization.get('sortAscending')"
12472
- icon="sort-asc-sm"
12495
+ icon="sort-asc-small"
12473
12496
  (itemClick)="toggleSort('asc')"
12474
12497
  [selected]="sortedAsc">
12475
12498
  </kendo-grid-columnmenu-item>
12476
12499
  <kendo-grid-columnmenu-item
12477
12500
  [text]="localization.get('sortDescending')"
12478
- icon="sort-desc-sm"
12501
+ icon="sort-desc-small"
12479
12502
  (itemClick)="toggleSort('desc')"
12480
12503
  [selected]="sortedDesc">
12481
12504
  </kendo-grid-columnmenu-item>
@@ -12628,7 +12651,7 @@ ColumnMenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ve
12628
12651
  MenuTabbingService
12629
12652
  ], 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: `
12630
12653
  <a #anchor
12631
- class="k-grid-column-menu k-grid-filter"
12654
+ class="k-grid-header-menu k-grid-column-menu"
12632
12655
  [ngClass]="{ 'k-active': isActive }"
12633
12656
  (click)="toggle($event, anchor, template)"
12634
12657
  (keydown.enter)="$event.stopImmediatePropagation()"
@@ -12689,7 +12712,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
12689
12712
  selector: 'kendo-grid-column-menu',
12690
12713
  template: `
12691
12714
  <a #anchor
12692
- class="k-grid-column-menu k-grid-filter"
12715
+ class="k-grid-header-menu k-grid-column-menu"
12693
12716
  [ngClass]="{ 'k-active': isActive }"
12694
12717
  (click)="toggle($event, anchor, template)"
12695
12718
  (keydown.enter)="$event.stopImmediatePropagation()"
@@ -14118,9 +14141,11 @@ class ColumnHandleDirective {
14118
14141
  if (isTruthy(this.rtl)) {
14119
14142
  delta *= -1;
14120
14143
  }
14121
- const newWidth = Math.max(this.column.resizeStartWidth + delta, this.column.minResizableWidth);
14122
- const tableDelta = newWidth > this.column.minResizableWidth ?
14123
- delta : this.column.minResizableWidth - this.column.resizeStartWidth;
14144
+ let newWidth = Math.max(this.column.resizeStartWidth + delta, this.column.minResizableWidth);
14145
+ if (isPresent(this.column.maxResizableWidth)) {
14146
+ newWidth = Math.min(newWidth, this.column.maxResizableWidth);
14147
+ }
14148
+ const tableDelta = this.getTableDelta(newWidth, delta);
14124
14149
  this.updateWidth(this.column, newWidth);
14125
14150
  this.service.resizeTable(this.column, tableDelta);
14126
14151
  }
@@ -14145,6 +14170,25 @@ class ColumnHandleDirective {
14145
14170
  columnsForLevel(level) {
14146
14171
  return columnsToRender(this.columns ? this.columns.filter(column => column.level === level) : []);
14147
14172
  }
14173
+ getTableDelta(newWidth, delta) {
14174
+ const minWidth = this.column.minResizableWidth;
14175
+ const maxWidth = this.column.maxResizableWidth;
14176
+ const startWidth = this.column.resizeStartWidth;
14177
+ const isAboveMin = newWidth > minWidth;
14178
+ const isBelowMax = newWidth < maxWidth;
14179
+ const isInBoundaries = isPresent(maxWidth) ?
14180
+ isAboveMin && isBelowMax :
14181
+ isAboveMin;
14182
+ if (isInBoundaries) {
14183
+ return delta;
14184
+ }
14185
+ else if (newWidth <= minWidth) {
14186
+ return minWidth - startWidth;
14187
+ }
14188
+ else {
14189
+ return startWidth - maxWidth;
14190
+ }
14191
+ }
14148
14192
  }
14149
14193
  ColumnHandleDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", 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 });
14150
14194
  ColumnHandleDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.16", 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 });
@@ -14292,8 +14336,8 @@ class HeaderComponent {
14292
14336
  const state = this.sortDescriptor(field);
14293
14337
  return {
14294
14338
  'k-icon': isPresent(state.dir),
14295
- 'k-i-sort-desc-sm': state.dir === "desc",
14296
- 'k-i-sort-asc-sm': state.dir === "asc"
14339
+ 'k-i-sort-desc-small': state.dir === "desc",
14340
+ 'k-i-sort-asc-small': state.dir === "asc"
14297
14341
  };
14298
14342
  }
14299
14343
  sortState(column) {
@@ -14577,6 +14621,7 @@ HeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", versio
14577
14621
  role="columnheader"
14578
14622
  aria-selected="false"
14579
14623
  [attr.aria-sort]="sortState(getColumnComponent(column))"
14624
+ [class.k-sorted]="!!sortState(getColumnComponent(column))"
14580
14625
  (keydown)="onHeaderKeydown(getColumnComponent(column), $event)"
14581
14626
  kendoDropTarget
14582
14627
  kendoDraggable
@@ -14599,31 +14644,37 @@ HeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", versio
14599
14644
  [attr.colspan]="column.colspan">
14600
14645
 
14601
14646
  <ng-container *ngIf="!isSortable(getColumnComponent(column))">
14602
- <kendo-grid-filter-menu
14603
- *ngIf="showFilterMenu && isFilterable(getColumnComponent(column))"
14604
- [column]="getColumnComponent(column)"
14605
- [filter]="filter"
14606
- [tabIndex]="tabIndex">
14607
- </kendo-grid-filter-menu>
14608
- <kendo-grid-column-menu *ngIf="showColumnMenu(column)"
14609
- [standalone]="false"
14610
- [settings]="columnMenuSettings"
14611
- [column]="column"
14612
- [columnMenuTemplate]="columnMenuTemplate"
14613
- [sort]="sort"
14614
- [filter]="filter"
14615
- [sortable]="sortable"
14616
- [tabIndex]="tabIndex">
14617
- </kendo-grid-column-menu>
14618
- <ng-template
14619
- [templateContext]="{
14620
- templateRef: column.headerTemplateRef,
14621
- columnIndex: column.leafIndex,
14622
- column: column,
14623
- $implicit: column
14624
- }">
14625
- </ng-template>
14626
- <ng-container *ngIf="!column.headerTemplateRef">{{column.displayTitle}}</ng-container>
14647
+ <span class="k-cell-inner">
14648
+ <span class="k-link">
14649
+ <ng-template
14650
+ [templateContext]="{
14651
+ templateRef: column.headerTemplateRef,
14652
+ columnIndex: column.leafIndex,
14653
+ column: column,
14654
+ $implicit: column
14655
+ }">
14656
+ </ng-template>
14657
+ <ng-container *ngIf="!column.headerTemplateRef">
14658
+ <span class="k-column-title">{{column.displayTitle}}</span>
14659
+ </ng-container>
14660
+ </span>
14661
+ <kendo-grid-filter-menu
14662
+ *ngIf="showFilterMenu && isFilterable(getColumnComponent(column))"
14663
+ [column]="getColumnComponent(column)"
14664
+ [filter]="filter"
14665
+ [tabIndex]="tabIndex">
14666
+ </kendo-grid-filter-menu>
14667
+ <kendo-grid-column-menu *ngIf="showColumnMenu(column)"
14668
+ [standalone]="false"
14669
+ [settings]="columnMenuSettings"
14670
+ [column]="column"
14671
+ [columnMenuTemplate]="columnMenuTemplate"
14672
+ [sort]="sort"
14673
+ [filter]="filter"
14674
+ [sortable]="sortable"
14675
+ [tabIndex]="tabIndex">
14676
+ </kendo-grid-column-menu>
14677
+ </span>
14627
14678
  </ng-container>
14628
14679
 
14629
14680
  <ng-container *ngIf="isSortable(getColumnComponent(column))">
@@ -14708,28 +14759,34 @@ HeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", versio
14708
14759
  [ngStyle]="column.headerStyle"
14709
14760
  [attr.rowspan]="column.rowspan(totalColumnLevels)"
14710
14761
  [attr.colspan]="column.colspan">
14762
+ <span class="k-cell-inner">
14763
+ <span class="k-link">
14764
+ <ng-template
14765
+ [templateContext]="{
14766
+ templateRef: column.headerTemplateRef,
14767
+ columnIndex: lockedColumnsCount + columnIndex,
14768
+ column: column,
14769
+ $implicit: column
14770
+ }">
14771
+ </ng-template>
14772
+ <ng-container *ngIf="!column.headerTemplateRef">
14773
+ <span class="k-column-title">{{column.displayTitle}}</span>
14774
+ </ng-container>
14775
+ </span>
14711
14776
  <kendo-grid-column-menu *ngIf="showColumnMenu(column)"
14712
14777
  [standalone]="false"
14713
14778
  [settings]="columnMenuSettings"
14714
14779
  [column]="column"
14715
14780
  [columnMenuTemplate]="columnMenuTemplate">
14716
14781
  </kendo-grid-column-menu>
14717
- <ng-template
14718
- [templateContext]="{
14719
- templateRef: column.headerTemplateRef,
14720
- columnIndex: lockedColumnsCount + columnIndex,
14721
- column: column,
14722
- $implicit: column
14723
- }">
14724
- </ng-template>
14725
- <ng-container *ngIf="!column.headerTemplateRef">{{column.displayTitle}}</ng-container>
14726
- <span kendoGridColumnHandle
14727
- kendoDraggable
14728
- class="k-column-resizer"
14729
- *ngIf="resizable"
14730
- [column]="column"
14731
- [columns]="columns">
14732
- </span>
14782
+ </span>
14783
+ <span kendoGridColumnHandle
14784
+ kendoDraggable
14785
+ class="k-column-resizer"
14786
+ *ngIf="resizable"
14787
+ [column]="column"
14788
+ [columns]="columns">
14789
+ </span>
14733
14790
  </th>
14734
14791
  </ng-container>
14735
14792
  </tr>
@@ -14785,6 +14842,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
14785
14842
  role="columnheader"
14786
14843
  aria-selected="false"
14787
14844
  [attr.aria-sort]="sortState(getColumnComponent(column))"
14845
+ [class.k-sorted]="!!sortState(getColumnComponent(column))"
14788
14846
  (keydown)="onHeaderKeydown(getColumnComponent(column), $event)"
14789
14847
  kendoDropTarget
14790
14848
  kendoDraggable
@@ -14807,31 +14865,37 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
14807
14865
  [attr.colspan]="column.colspan">
14808
14866
 
14809
14867
  <ng-container *ngIf="!isSortable(getColumnComponent(column))">
14810
- <kendo-grid-filter-menu
14811
- *ngIf="showFilterMenu && isFilterable(getColumnComponent(column))"
14812
- [column]="getColumnComponent(column)"
14813
- [filter]="filter"
14814
- [tabIndex]="tabIndex">
14815
- </kendo-grid-filter-menu>
14816
- <kendo-grid-column-menu *ngIf="showColumnMenu(column)"
14817
- [standalone]="false"
14818
- [settings]="columnMenuSettings"
14819
- [column]="column"
14820
- [columnMenuTemplate]="columnMenuTemplate"
14821
- [sort]="sort"
14822
- [filter]="filter"
14823
- [sortable]="sortable"
14824
- [tabIndex]="tabIndex">
14825
- </kendo-grid-column-menu>
14826
- <ng-template
14827
- [templateContext]="{
14828
- templateRef: column.headerTemplateRef,
14829
- columnIndex: column.leafIndex,
14830
- column: column,
14831
- $implicit: column
14832
- }">
14833
- </ng-template>
14834
- <ng-container *ngIf="!column.headerTemplateRef">{{column.displayTitle}}</ng-container>
14868
+ <span class="k-cell-inner">
14869
+ <span class="k-link">
14870
+ <ng-template
14871
+ [templateContext]="{
14872
+ templateRef: column.headerTemplateRef,
14873
+ columnIndex: column.leafIndex,
14874
+ column: column,
14875
+ $implicit: column
14876
+ }">
14877
+ </ng-template>
14878
+ <ng-container *ngIf="!column.headerTemplateRef">
14879
+ <span class="k-column-title">{{column.displayTitle}}</span>
14880
+ </ng-container>
14881
+ </span>
14882
+ <kendo-grid-filter-menu
14883
+ *ngIf="showFilterMenu && isFilterable(getColumnComponent(column))"
14884
+ [column]="getColumnComponent(column)"
14885
+ [filter]="filter"
14886
+ [tabIndex]="tabIndex">
14887
+ </kendo-grid-filter-menu>
14888
+ <kendo-grid-column-menu *ngIf="showColumnMenu(column)"
14889
+ [standalone]="false"
14890
+ [settings]="columnMenuSettings"
14891
+ [column]="column"
14892
+ [columnMenuTemplate]="columnMenuTemplate"
14893
+ [sort]="sort"
14894
+ [filter]="filter"
14895
+ [sortable]="sortable"
14896
+ [tabIndex]="tabIndex">
14897
+ </kendo-grid-column-menu>
14898
+ </span>
14835
14899
  </ng-container>
14836
14900
 
14837
14901
  <ng-container *ngIf="isSortable(getColumnComponent(column))">
@@ -14916,28 +14980,34 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
14916
14980
  [ngStyle]="column.headerStyle"
14917
14981
  [attr.rowspan]="column.rowspan(totalColumnLevels)"
14918
14982
  [attr.colspan]="column.colspan">
14983
+ <span class="k-cell-inner">
14984
+ <span class="k-link">
14985
+ <ng-template
14986
+ [templateContext]="{
14987
+ templateRef: column.headerTemplateRef,
14988
+ columnIndex: lockedColumnsCount + columnIndex,
14989
+ column: column,
14990
+ $implicit: column
14991
+ }">
14992
+ </ng-template>
14993
+ <ng-container *ngIf="!column.headerTemplateRef">
14994
+ <span class="k-column-title">{{column.displayTitle}}</span>
14995
+ </ng-container>
14996
+ </span>
14919
14997
  <kendo-grid-column-menu *ngIf="showColumnMenu(column)"
14920
14998
  [standalone]="false"
14921
14999
  [settings]="columnMenuSettings"
14922
15000
  [column]="column"
14923
15001
  [columnMenuTemplate]="columnMenuTemplate">
14924
15002
  </kendo-grid-column-menu>
14925
- <ng-template
14926
- [templateContext]="{
14927
- templateRef: column.headerTemplateRef,
14928
- columnIndex: lockedColumnsCount + columnIndex,
14929
- column: column,
14930
- $implicit: column
14931
- }">
14932
- </ng-template>
14933
- <ng-container *ngIf="!column.headerTemplateRef">{{column.displayTitle}}</ng-container>
14934
- <span kendoGridColumnHandle
14935
- kendoDraggable
14936
- class="k-column-resizer"
14937
- *ngIf="resizable"
14938
- [column]="column"
14939
- [columns]="columns">
14940
- </span>
15003
+ </span>
15004
+ <span kendoGridColumnHandle
15005
+ kendoDraggable
15006
+ class="k-column-resizer"
15007
+ *ngIf="resizable"
15008
+ [column]="column"
15009
+ [columns]="columns">
15010
+ </span>
14941
15011
  </th>
14942
15012
  </ng-container>
14943
15013
  </tr>
@@ -15827,7 +15897,7 @@ GroupHeaderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", v
15827
15897
  <ng-container *ngIf="!skipGroupDecoration">
15828
15898
  <a href="#" tabindex="-1" (click)="toggleGroup(item)"
15829
15899
  class="k-icon"
15830
- [ngClass]="{ 'k-i-collapse': isExpanded, 'k-i-expand': !isExpanded }" role="presentation"
15900
+ [ngClass]="{ 'k-i-caret-alt-down': isExpanded, 'k-i-caret-alt-right': !isExpanded }" role="presentation"
15831
15901
  [attr.title]="groupButtonTitle"
15832
15902
  [attr.aria-label]="groupButtonTitle">
15833
15903
  </a>
@@ -15897,7 +15967,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
15897
15967
  <ng-container *ngIf="!skipGroupDecoration">
15898
15968
  <a href="#" tabindex="-1" (click)="toggleGroup(item)"
15899
15969
  class="k-icon"
15900
- [ngClass]="{ 'k-i-collapse': isExpanded, 'k-i-expand': !isExpanded }" role="presentation"
15970
+ [ngClass]="{ 'k-i-caret-alt-down': isExpanded, 'k-i-caret-alt-right': !isExpanded }" role="presentation"
15901
15971
  [attr.title]="groupButtonTitle"
15902
15972
  [attr.aria-label]="groupButtonTitle">
15903
15973
  </a>
@@ -16301,7 +16371,7 @@ class TableBodyComponent {
16301
16371
  TableBodyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", 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 });
16302
16372
  TableBodyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", 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" }, usesOnChanges: true, ngImport: i0, template: `
16303
16373
  <ng-container *ngIf="editService.hasNewItem">
16304
- <tr class="k-grid-add-row k-grid-edit-row"
16374
+ <tr class="k-grid-add-row k-grid-edit-row k-master-row"
16305
16375
  kendoGridLogicalRow
16306
16376
  [logicalRowIndex]="addRowLogicalIndex()"
16307
16377
  [logicalSlaveRow]="lockedColumnsCount > 0"
@@ -16382,7 +16452,7 @@ TableBodyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", ver
16382
16452
  [class.k-grid-row-sticky]="rowSticky ? rowSticky({ dataItem: item.data, index: $any(item).index }) : false"
16383
16453
  [ngClass]="rowClass({ dataItem: item.data, index: $any(item).index })"
16384
16454
  [class.k-alt]="isOdd(item)"
16385
- [class.k-master-row]="detailTemplate?.templateRef"
16455
+ [class.k-master-row]="true"
16386
16456
  [class.k-grid-edit-row]="isEditingRow($any(item).index)"
16387
16457
  [attr.data-kendo-grid-item-index]="$any(item).index"
16388
16458
  [class.k-selected]="isSelectable() && isRowSelected(item)">
@@ -16520,7 +16590,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
16520
16590
  selector: '[kendoGridTableBody]',
16521
16591
  template: `
16522
16592
  <ng-container *ngIf="editService.hasNewItem">
16523
- <tr class="k-grid-add-row k-grid-edit-row"
16593
+ <tr class="k-grid-add-row k-grid-edit-row k-master-row"
16524
16594
  kendoGridLogicalRow
16525
16595
  [logicalRowIndex]="addRowLogicalIndex()"
16526
16596
  [logicalSlaveRow]="lockedColumnsCount > 0"
@@ -16601,7 +16671,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
16601
16671
  [class.k-grid-row-sticky]="rowSticky ? rowSticky({ dataItem: item.data, index: $any(item).index }) : false"
16602
16672
  [ngClass]="rowClass({ dataItem: item.data, index: $any(item).index })"
16603
16673
  [class.k-alt]="isOdd(item)"
16604
- [class.k-master-row]="detailTemplate?.templateRef"
16674
+ [class.k-master-row]="true"
16605
16675
  [class.k-grid-edit-row]="isEditingRow($any(item).index)"
16606
16676
  [attr.data-kendo-grid-item-index]="$any(item).index"
16607
16677
  [class.k-selected]="isSelectable() && isRowSelected(item)">
@@ -17030,6 +17100,7 @@ class ListComponent {
17030
17100
  this.selectable = false;
17031
17101
  this.groupable = false;
17032
17102
  this.trackBy = defaultTrackBy;
17103
+ this.sort = new Array();
17033
17104
  this.contentScroll = new EventEmitter();
17034
17105
  this.pageChange = new EventEmitter();
17035
17106
  this.scrollBottom = new EventEmitter();
@@ -17483,7 +17554,7 @@ class ListComponent {
17483
17554
  }
17484
17555
  }
17485
17556
  ListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.16", 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 });
17486
- ListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", 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" }, outputs: { contentScroll: "contentScroll", pageChange: "pageChange", scrollBottom: "scrollBottom" }, host: { properties: { "class.k-grid-container": "this.hostClass", "attr.role": "this.hostRole" } }, providers: [
17557
+ ListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.16", 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" }, outputs: { contentScroll: "contentScroll", pageChange: "pageChange", scrollBottom: "scrollBottom" }, host: { properties: { "class.k-grid-container": "this.hostClass", "attr.role": "this.hostRole" } }, providers: [
17487
17558
  {
17488
17559
  provide: SCROLLER_FACTORY_TOKEN,
17489
17560
  useValue: DEFAULT_SCROLLER_FACTORY
@@ -17505,7 +17576,8 @@ ListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
17505
17576
  role="presentation"
17506
17577
  [groups]="groups"
17507
17578
  [columns]="$any(lockedLeafColumns)"
17508
- [detailTemplate]="detailTemplate">
17579
+ [detailTemplate]="detailTemplate"
17580
+ [sort]="sort">
17509
17581
  </colgroup>
17510
17582
  <tbody kendoGridTableBody
17511
17583
  role="presentation"
@@ -17544,7 +17616,8 @@ ListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
17544
17616
  role="presentation"
17545
17617
  [groups]="isLocked ? [] : groups"
17546
17618
  [columns]="$any(nonLockedColumnsToRender)"
17547
- [detailTemplate]="detailTemplate">
17619
+ [detailTemplate]="detailTemplate"
17620
+ [sort]="sort">
17548
17621
  </colgroup>
17549
17622
  <tbody kendoGridTableBody
17550
17623
  role="presentation"
@@ -17580,7 +17653,7 @@ ListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
17580
17653
  <div [style.width.px]="totalWidth"></div>
17581
17654
  </div>
17582
17655
  </div>
17583
- `, isInline: true, components: [{ type: ColGroupComponent, selector: "[kendoGridColGroup]", inputs: ["columns", "groups", "detailTemplate"] }, { 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: i1$1.ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$1.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: TableDirective, selector: "table", inputs: ["locked", "virtualColumns"] }, { type: ResizableContainerDirective, selector: "[kendoGridResizableContainer]", inputs: ["lockedWidth", "kendoGridResizableContainer"] }] });
17656
+ `, isInline: true, components: [{ type: ColGroupComponent, selector: "[kendoGridColGroup]", inputs: ["columns", "groups", "detailTemplate", "sort"] }, { 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: i1$1.ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$1.EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { type: TableDirective, selector: "table", inputs: ["locked", "virtualColumns"] }, { type: ResizableContainerDirective, selector: "[kendoGridResizableContainer]", inputs: ["lockedWidth", "kendoGridResizableContainer"] }] });
17584
17657
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: ListComponent, decorators: [{
17585
17658
  type: Component,
17586
17659
  args: [{
@@ -17608,7 +17681,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
17608
17681
  role="presentation"
17609
17682
  [groups]="groups"
17610
17683
  [columns]="$any(lockedLeafColumns)"
17611
- [detailTemplate]="detailTemplate">
17684
+ [detailTemplate]="detailTemplate"
17685
+ [sort]="sort">
17612
17686
  </colgroup>
17613
17687
  <tbody kendoGridTableBody
17614
17688
  role="presentation"
@@ -17647,7 +17721,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
17647
17721
  role="presentation"
17648
17722
  [groups]="isLocked ? [] : groups"
17649
17723
  [columns]="$any(nonLockedColumnsToRender)"
17650
- [detailTemplate]="detailTemplate">
17724
+ [detailTemplate]="detailTemplate"
17725
+ [sort]="sort">
17651
17726
  </colgroup>
17652
17727
  <tbody kendoGridTableBody
17653
17728
  role="presentation"
@@ -17738,6 +17813,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
17738
17813
  type: Input
17739
17814
  }], loadingTemplate: [{
17740
17815
  type: Input
17816
+ }], sort: [{
17817
+ type: Input
17741
17818
  }], contentScroll: [{
17742
17819
  type: Output
17743
17820
  }], pageChange: [{
@@ -20514,6 +20591,7 @@ GridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
20514
20591
  kendoDraggable
20515
20592
  kendoGridSelectionMarquee
20516
20593
  [enableDrag]="marqueeSelection"
20594
+ [sort]="sort"
20517
20595
  >
20518
20596
  </kendo-grid-list>
20519
20597
  <div
@@ -20627,7 +20705,7 @@ GridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version:
20627
20705
  (pageChange)="notifyPageChange('pager', $event)">
20628
20706
  </kendo-pager>
20629
20707
  <kendo-grid-toolbar class="k-toolbar k-grid-toolbar k-grid-toolbar-bottom" *ngIf="showBottomToolbar" position="bottom"></kendo-grid-toolbar>
20630
- `, isInline: true, components: [{ type: ToolbarComponent, selector: "kendo-grid-toolbar", inputs: ["position"] }, { type: PagerComponent, selector: "kendo-pager", inputs: ["total", "skip", "pageSize", "options", "template"], outputs: ["pageChange"] }, { type: GroupPanelComponent, selector: "kendo-grid-group-panel", inputs: ["text", "groups"], outputs: ["change"] }, { type: ColGroupComponent, selector: "[kendoGridColGroup]", inputs: ["columns", "groups", "detailTemplate"] }, { type: HeaderComponent, selector: "[kendoGridHeader]", inputs: ["totalColumnLevels", "columns", "groups", "detailTemplate", "scrollable", "filterable", "sort", "filter", "sortable", "groupable", "lockedColumnsCount", "resizable", "reorderable", "columnMenu", "columnMenuTemplate", "totalColumnsCount", "tabIndex"] }, { 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"], 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"] }], directives: [{ type: LocalizedMessagesDirective, selector: "[kendoGridLocalizedMessages]" }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: TableDirective, selector: "table", inputs: ["locked", "virtualColumns"] }, { type: ResizableContainerDirective, selector: "[kendoGridResizableContainer]", inputs: ["lockedWidth", "kendoGridResizableContainer"] }, { type: i1$1.DraggableDirective, selector: "[kendoDraggable]", inputs: ["enableDrag"], outputs: ["kendoPress", "kendoDrag", "kendoRelease"] }, { type: GridMarqueeDirective, selector: "[kendoGridSelectionMarquee]" }], encapsulation: i0.ViewEncapsulation.None });
20708
+ `, isInline: true, components: [{ type: ToolbarComponent, selector: "kendo-grid-toolbar", inputs: ["position"] }, { type: PagerComponent, selector: "kendo-pager", inputs: ["total", "skip", "pageSize", "options", "template"], outputs: ["pageChange"] }, { type: GroupPanelComponent, selector: "kendo-grid-group-panel", inputs: ["text", "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"] }, { 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"], 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"] }], directives: [{ type: LocalizedMessagesDirective, selector: "[kendoGridLocalizedMessages]" }, { type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: TableDirective, selector: "table", inputs: ["locked", "virtualColumns"] }, { type: ResizableContainerDirective, selector: "[kendoGridResizableContainer]", inputs: ["lockedWidth", "kendoGridResizableContainer"] }, { type: i1$1.DraggableDirective, selector: "[kendoDraggable]", inputs: ["enableDrag"], outputs: ["kendoPress", "kendoDrag", "kendoRelease"] }, { type: GridMarqueeDirective, selector: "[kendoGridSelectionMarquee]" }], encapsulation: i0.ViewEncapsulation.None });
20631
20709
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImport: i0, type: GridComponent, decorators: [{
20632
20710
  type: Component,
20633
20711
  args: [{
@@ -21011,6 +21089,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
21011
21089
  kendoDraggable
21012
21090
  kendoGridSelectionMarquee
21013
21091
  [enableDrag]="marqueeSelection"
21092
+ [sort]="sort"
21014
21093
  >
21015
21094
  </kendo-grid-list>
21016
21095
  <div