@progress/kendo-angular-treelist 21.1.1-develop.2 → 21.2.0-develop.1

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 (32) hide show
  1. package/esm2022/column-menu/column-list.component.mjs +75 -69
  2. package/esm2022/column-menu/column-menu-autosize-all.component.mjs +12 -11
  3. package/esm2022/column-menu/column-menu-autosize.component.mjs +12 -11
  4. package/esm2022/column-menu/column-menu-item.component.mjs +137 -57
  5. package/esm2022/column-menu/column-menu.component.mjs +145 -122
  6. package/esm2022/editing/add-command.directive.mjs +27 -17
  7. package/esm2022/editing/base-command.directive.mjs +27 -17
  8. package/esm2022/editing/cancel-command.directive.mjs +27 -17
  9. package/esm2022/editing/edit-command.directive.mjs +27 -17
  10. package/esm2022/editing/remove-command.directive.mjs +27 -17
  11. package/esm2022/editing/save-command.directive.mjs +27 -17
  12. package/esm2022/excel/excel-command.directive.mjs +27 -17
  13. package/esm2022/filtering/cell/filter-cell-operators.component.mjs +20 -17
  14. package/esm2022/filtering/cell/filter-cell.component.mjs +35 -33
  15. package/esm2022/filtering/filter-row.component.mjs +26 -23
  16. package/esm2022/filtering/menu/boolean-filter-menu.component.mjs +32 -29
  17. package/esm2022/filtering/menu/date-filter-menu.component.mjs +52 -49
  18. package/esm2022/filtering/menu/filter-menu-container.component.mjs +75 -73
  19. package/esm2022/filtering/menu/numeric-filter-menu.component.mjs +50 -47
  20. package/esm2022/filtering/menu/string-filter-menu.component.mjs +36 -33
  21. package/esm2022/package-metadata.mjs +2 -2
  22. package/esm2022/pdf/pdf-command.directive.mjs +27 -17
  23. package/esm2022/rendering/cell.component.mjs +167 -145
  24. package/esm2022/rendering/common/col-group.component.mjs +10 -8
  25. package/esm2022/rendering/header/header.component.mjs +371 -331
  26. package/esm2022/rendering/list.component.mjs +185 -158
  27. package/esm2022/rendering/table-body.component.mjs +199 -169
  28. package/esm2022/rendering/toolbar/toolbar.component.mjs +13 -11
  29. package/esm2022/treelist.component.mjs +893 -849
  30. package/fesm2022/progress-kendo-angular-treelist.mjs +2746 -2356
  31. package/package.json +18 -18
  32. package/schematics/ngAdd/index.js +3 -3
@@ -3,7 +3,7 @@
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import { Component, HostBinding, Input, ElementRef, NgZone, Renderer2, Output, EventEmitter, QueryList, ViewChildren, ViewChild } from '@angular/core';
6
- import { NgFor, NgIf, NgClass } from '@angular/common';
6
+ import { NgClass } from '@angular/common';
7
7
  import { CheckBoxComponent } from '@progress/kendo-angular-inputs';
8
8
  import { take } from 'rxjs/operators';
9
9
  import { ColumnMenuChooserItemCheckedDirective } from './column-chooser-item-checked.directive';
@@ -244,44 +244,47 @@ export class ColumnListComponent {
244
244
  }
245
245
  };
246
246
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ColumnListComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i1.ColumnListKeyboardNavigation }], target: i0.ɵɵFactoryTarget.Component });
247
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ColumnListComponent, isStandalone: true, selector: "kendo-treelist-columnlist", inputs: { columns: "columns", autoSync: "autoSync", ariaLabel: "ariaLabel", allowHideAll: "allowHideAll", applyText: "applyText", resetText: "resetText", actionsClass: "actionsClass", isLast: "isLast", isExpanded: "isExpanded", service: "service" }, outputs: { reset: "reset", apply: "apply", columnChange: "columnChange" }, host: { properties: { "class.k-column-list-wrapper": "this.className" } }, providers: [ColumnListKeyboardNavigation], viewQueries: [{ propertyName: "resetButton", first: true, predicate: ["resetButton"], descendants: true }, { propertyName: "applyButton", first: true, predicate: ["applyButton"], descendants: true }, { propertyName: "options", predicate: ColumnMenuChooserItemCheckedDirective, descendants: true }, { propertyName: "checkboxes", predicate: CheckBoxComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: `
248
- <div
249
- class="k-column-list"
250
- role="listbox"
251
- aria-multiselectable="true"
252
- [attr.aria-label]="ariaLabel">
253
- <label
254
- *ngFor="let column of columns; let index = index;"
255
- class='k-column-list-item'
256
- [kendoColumnMenuChooserItemChecked]="!column.hidden"
257
- role="option">
258
- <kendo-checkbox
259
- [inputAttributes]="{'data-index': index.toString()}"
260
- [checkedState]="!column.hidden"
261
- [disabled]="isDisabled(column)"
262
- [tabindex]="-1"
263
- ></kendo-checkbox>
264
- <span class="k-checkbox-label">{{ column.displayTitle }}</span>
247
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ColumnListComponent, isStandalone: true, selector: "kendo-treelist-columnlist", inputs: { columns: "columns", autoSync: "autoSync", ariaLabel: "ariaLabel", allowHideAll: "allowHideAll", applyText: "applyText", resetText: "resetText", actionsClass: "actionsClass", isLast: "isLast", isExpanded: "isExpanded", service: "service" }, outputs: { reset: "reset", apply: "apply", columnChange: "columnChange" }, host: { properties: { "class.k-column-list-wrapper": "this.className" } }, providers: [ColumnListKeyboardNavigation], viewQueries: [{ propertyName: "resetButton", first: true, predicate: ["resetButton"], descendants: true }, { propertyName: "applyButton", first: true, predicate: ["applyButton"], descendants: true }, { propertyName: "options", predicate: ColumnMenuChooserItemCheckedDirective, descendants: true }, { propertyName: "checkboxes", predicate: CheckBoxComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: `
248
+ <div
249
+ class="k-column-list"
250
+ role="listbox"
251
+ aria-multiselectable="true"
252
+ [attr.aria-label]="ariaLabel">
253
+ @for (column of columns; track column; let index = $index) {
254
+ <label
255
+ class='k-column-list-item'
256
+ [kendoColumnMenuChooserItemChecked]="!column.hidden"
257
+ role="option">
258
+ <kendo-checkbox
259
+ [inputAttributes]="{'data-index': index.toString()}"
260
+ [checkedState]="!column.hidden"
261
+ [disabled]="isDisabled(column)"
262
+ [tabindex]="-1"
263
+ ></kendo-checkbox>
264
+ <span class="k-checkbox-label">{{ column.displayTitle }}</span>
265
265
  </label>
266
+ }
266
267
  </div>
267
- <div [ngClass]="actionsClass" *ngIf="!autoSync">
268
+ @if (!autoSync) {
269
+ <div [ngClass]="actionsClass">
268
270
  <button
269
- #applyButton
270
- type="button"
271
- class="k-button k-button-solid-primary k-button-solid k-button-md k-rounded-md k-button-rectangle"
272
- (click)="applyChanges()"
273
- (keydown.enter)="$event.preventDefault(); $event.stopPropagation(); applyChanges();"
274
- (keydown.space)="$event.preventDefault(); $event.stopPropagation(); applyChanges();">{{ applyText }}</button>
271
+ #applyButton
272
+ type="button"
273
+ class="k-button k-button-solid-primary k-button-solid k-button-md k-rounded-md k-button-rectangle"
274
+ (click)="applyChanges()"
275
+ (keydown.enter)="$event.preventDefault(); $event.stopPropagation(); applyChanges();"
276
+ (keydown.space)="$event.preventDefault(); $event.stopPropagation(); applyChanges();">{{ applyText }}</button>
275
277
  <button
276
- #resetButton
277
- type="button"
278
- (keydown.tab)="onTab($event)"
279
- class="k-button k-button-solid-base k-button-solid k-button-md k-rounded-md k-button-rectangle"
280
- (click)="cancelChanges()"
281
- (keydown.enter)="$event.preventDefault(); $event.stopPropagation(); cancelChanges();"
282
- (keydown.space)="$event.preventDefault(); $event.stopPropagation(); cancelChanges();">{{ resetText }}</button>
283
- </div>
284
- `, isInline: true, dependencies: [{ kind: "directive", type: NgFor, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: ColumnMenuChooserItemCheckedDirective, selector: "[kendoColumnMenuChooserItemChecked]", inputs: ["kendoColumnMenuChooserItemChecked"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: CheckBoxComponent, selector: "kendo-checkbox", inputs: ["checkedState", "rounded"], outputs: ["checkedStateChange"], exportAs: ["kendoCheckBox"] }] });
278
+ #resetButton
279
+ type="button"
280
+ (keydown.tab)="onTab($event)"
281
+ class="k-button k-button-solid-base k-button-solid k-button-md k-rounded-md k-button-rectangle"
282
+ (click)="cancelChanges()"
283
+ (keydown.enter)="$event.preventDefault(); $event.stopPropagation(); cancelChanges();"
284
+ (keydown.space)="$event.preventDefault(); $event.stopPropagation(); cancelChanges();">{{ resetText }}</button>
285
+ </div>
286
+ }
287
+ `, isInline: true, dependencies: [{ kind: "directive", type: ColumnMenuChooserItemCheckedDirective, selector: "[kendoColumnMenuChooserItemChecked]", inputs: ["kendoColumnMenuChooserItemChecked"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: CheckBoxComponent, selector: "kendo-checkbox", inputs: ["checkedState", "rounded"], outputs: ["checkedStateChange"], exportAs: ["kendoCheckBox"] }] });
285
288
  }
286
289
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ColumnListComponent, decorators: [{
287
290
  type: Component,
@@ -289,45 +292,48 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
289
292
  selector: 'kendo-treelist-columnlist',
290
293
  providers: [ColumnListKeyboardNavigation],
291
294
  template: `
292
- <div
293
- class="k-column-list"
294
- role="listbox"
295
- aria-multiselectable="true"
296
- [attr.aria-label]="ariaLabel">
297
- <label
298
- *ngFor="let column of columns; let index = index;"
299
- class='k-column-list-item'
300
- [kendoColumnMenuChooserItemChecked]="!column.hidden"
301
- role="option">
302
- <kendo-checkbox
303
- [inputAttributes]="{'data-index': index.toString()}"
304
- [checkedState]="!column.hidden"
305
- [disabled]="isDisabled(column)"
306
- [tabindex]="-1"
307
- ></kendo-checkbox>
308
- <span class="k-checkbox-label">{{ column.displayTitle }}</span>
295
+ <div
296
+ class="k-column-list"
297
+ role="listbox"
298
+ aria-multiselectable="true"
299
+ [attr.aria-label]="ariaLabel">
300
+ @for (column of columns; track column; let index = $index) {
301
+ <label
302
+ class='k-column-list-item'
303
+ [kendoColumnMenuChooserItemChecked]="!column.hidden"
304
+ role="option">
305
+ <kendo-checkbox
306
+ [inputAttributes]="{'data-index': index.toString()}"
307
+ [checkedState]="!column.hidden"
308
+ [disabled]="isDisabled(column)"
309
+ [tabindex]="-1"
310
+ ></kendo-checkbox>
311
+ <span class="k-checkbox-label">{{ column.displayTitle }}</span>
309
312
  </label>
313
+ }
310
314
  </div>
311
- <div [ngClass]="actionsClass" *ngIf="!autoSync">
315
+ @if (!autoSync) {
316
+ <div [ngClass]="actionsClass">
312
317
  <button
313
- #applyButton
314
- type="button"
315
- class="k-button k-button-solid-primary k-button-solid k-button-md k-rounded-md k-button-rectangle"
316
- (click)="applyChanges()"
317
- (keydown.enter)="$event.preventDefault(); $event.stopPropagation(); applyChanges();"
318
- (keydown.space)="$event.preventDefault(); $event.stopPropagation(); applyChanges();">{{ applyText }}</button>
318
+ #applyButton
319
+ type="button"
320
+ class="k-button k-button-solid-primary k-button-solid k-button-md k-rounded-md k-button-rectangle"
321
+ (click)="applyChanges()"
322
+ (keydown.enter)="$event.preventDefault(); $event.stopPropagation(); applyChanges();"
323
+ (keydown.space)="$event.preventDefault(); $event.stopPropagation(); applyChanges();">{{ applyText }}</button>
319
324
  <button
320
- #resetButton
321
- type="button"
322
- (keydown.tab)="onTab($event)"
323
- class="k-button k-button-solid-base k-button-solid k-button-md k-rounded-md k-button-rectangle"
324
- (click)="cancelChanges()"
325
- (keydown.enter)="$event.preventDefault(); $event.stopPropagation(); cancelChanges();"
326
- (keydown.space)="$event.preventDefault(); $event.stopPropagation(); cancelChanges();">{{ resetText }}</button>
327
- </div>
328
- `,
325
+ #resetButton
326
+ type="button"
327
+ (keydown.tab)="onTab($event)"
328
+ class="k-button k-button-solid-base k-button-solid k-button-md k-rounded-md k-button-rectangle"
329
+ (click)="cancelChanges()"
330
+ (keydown.enter)="$event.preventDefault(); $event.stopPropagation(); cancelChanges();"
331
+ (keydown.space)="$event.preventDefault(); $event.stopPropagation(); cancelChanges();">{{ resetText }}</button>
332
+ </div>
333
+ }
334
+ `,
329
335
  standalone: true,
330
- imports: [NgFor, ColumnMenuChooserItemCheckedDirective, NgIf, NgClass, CheckBoxComponent]
336
+ imports: [ColumnMenuChooserItemCheckedDirective, NgClass, CheckBoxComponent]
331
337
  }]
332
338
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.NgZone }, { type: i0.Renderer2 }, { type: i1.ColumnListKeyboardNavigation }], propDecorators: { className: [{
333
339
  type: HostBinding,
@@ -9,7 +9,6 @@ import { ContextService } from '../common/provider.service';
9
9
  import { ColumnMenuItemBase } from './column-menu-item-base';
10
10
  import { autoSizeColumn } from './utils';
11
11
  import { ColumnMenuItemComponent } from './column-menu-item.component';
12
- import { NgIf } from '@angular/common';
13
12
  import * as i0 from "@angular/core";
14
13
  import * as i1 from "../common/provider.service";
15
14
  /**
@@ -48,30 +47,32 @@ export class ColumnMenuAutoSizeAllColumnsComponent extends ColumnMenuItemBase {
48
47
  autoSizeColumn(this.ctx.treelist, this.service);
49
48
  }
50
49
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ColumnMenuAutoSizeAllColumnsComponent, deps: [{ token: i1.ContextService }], target: i0.ɵɵFactoryTarget.Component });
51
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ColumnMenuAutoSizeAllColumnsComponent, isStandalone: true, selector: "kendo-treelist-columnmenu-autosize-all-columns", usesInheritance: true, ngImport: i0, template: `
52
- <kendo-treelist-columnmenu-item
53
- *ngIf="!this.ctx.treelist.virtualColumns"
50
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ColumnMenuAutoSizeAllColumnsComponent, isStandalone: true, selector: "kendo-treelist-columnmenu-autosize-all-columns", usesInheritance: true, ngImport: i0, template: `
51
+ @if (!this.ctx.treelist.virtualColumns) {
52
+ <kendo-treelist-columnmenu-item
54
53
  [text]="ctx.localization.get('autosizeAllColumns')"
55
54
  icon="display-inline-flex"
56
55
  [svgIcon]="displayInlineFlexIcon"
57
56
  (itemClick)="autoSizeAllColumns()"
58
- ></kendo-treelist-columnmenu-item>
59
- `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ColumnMenuItemComponent, selector: "kendo-treelist-columnmenu-item", inputs: ["icon", "svgIcon", "text", "selected", "disabled", "expanded", "service"], outputs: ["itemClick", "expand", "collapse"] }] });
57
+ ></kendo-treelist-columnmenu-item>
58
+ }
59
+ `, isInline: true, dependencies: [{ kind: "component", type: ColumnMenuItemComponent, selector: "kendo-treelist-columnmenu-item", inputs: ["icon", "svgIcon", "text", "selected", "disabled", "expanded", "service"], outputs: ["itemClick", "expand", "collapse"] }] });
60
60
  }
61
61
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ColumnMenuAutoSizeAllColumnsComponent, decorators: [{
62
62
  type: Component,
63
63
  args: [{
64
64
  selector: 'kendo-treelist-columnmenu-autosize-all-columns',
65
65
  template: `
66
- <kendo-treelist-columnmenu-item
67
- *ngIf="!this.ctx.treelist.virtualColumns"
66
+ @if (!this.ctx.treelist.virtualColumns) {
67
+ <kendo-treelist-columnmenu-item
68
68
  [text]="ctx.localization.get('autosizeAllColumns')"
69
69
  icon="display-inline-flex"
70
70
  [svgIcon]="displayInlineFlexIcon"
71
71
  (itemClick)="autoSizeAllColumns()"
72
- ></kendo-treelist-columnmenu-item>
73
- `,
72
+ ></kendo-treelist-columnmenu-item>
73
+ }
74
+ `,
74
75
  standalone: true,
75
- imports: [NgIf, ColumnMenuItemComponent]
76
+ imports: [ColumnMenuItemComponent]
76
77
  }]
77
78
  }], ctorParameters: () => [{ type: i1.ContextService }] });
@@ -8,7 +8,6 @@ import { ContextService } from '../common/provider.service';
8
8
  import { ColumnMenuItemBase } from './column-menu-item-base';
9
9
  import { autoSizeColumn } from './utils';
10
10
  import { ColumnMenuItemComponent } from './column-menu-item.component';
11
- import { NgIf } from '@angular/common';
12
11
  import { ColumnMenuErrorMessages } from '../common/error-messages';
13
12
  import * as i0 from "@angular/core";
14
13
  import * as i1 from "../common/provider.service";
@@ -52,33 +51,35 @@ export class ColumnMenuAutoSizeColumnComponent extends ColumnMenuItemBase {
52
51
  autoSizeColumn(this.ctx.treelist, this.service, this.column);
53
52
  }
54
53
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ColumnMenuAutoSizeColumnComponent, deps: [{ token: i1.ContextService }], target: i0.ɵɵFactoryTarget.Component });
55
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ColumnMenuAutoSizeColumnComponent, isStandalone: true, selector: "kendo-treelist-columnmenu-autosize-column", inputs: { column: "column" }, usesInheritance: true, ngImport: i0, template: `
56
- <kendo-treelist-columnmenu-item
57
- *ngIf="!this.ctx.treelist.virtualColumns"
54
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ColumnMenuAutoSizeColumnComponent, isStandalone: true, selector: "kendo-treelist-columnmenu-autosize-column", inputs: { column: "column" }, usesInheritance: true, ngImport: i0, template: `
55
+ @if (!this.ctx.treelist.virtualColumns) {
56
+ <kendo-treelist-columnmenu-item
58
57
  class="k-grid-columnmenu-autosize-column"
59
58
  [text]="ctx.localization.get('autosizeThisColumn')"
60
59
  icon="max-width"
61
60
  [svgIcon]="maxWidthIcon"
62
61
  (itemClick)="autoSizeColumn()"
63
- ></kendo-treelist-columnmenu-item>
64
- `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: ColumnMenuItemComponent, selector: "kendo-treelist-columnmenu-item", inputs: ["icon", "svgIcon", "text", "selected", "disabled", "expanded", "service"], outputs: ["itemClick", "expand", "collapse"] }] });
62
+ ></kendo-treelist-columnmenu-item>
63
+ }
64
+ `, isInline: true, dependencies: [{ kind: "component", type: ColumnMenuItemComponent, selector: "kendo-treelist-columnmenu-item", inputs: ["icon", "svgIcon", "text", "selected", "disabled", "expanded", "service"], outputs: ["itemClick", "expand", "collapse"] }] });
65
65
  }
66
66
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ColumnMenuAutoSizeColumnComponent, decorators: [{
67
67
  type: Component,
68
68
  args: [{
69
69
  selector: 'kendo-treelist-columnmenu-autosize-column',
70
70
  template: `
71
- <kendo-treelist-columnmenu-item
72
- *ngIf="!this.ctx.treelist.virtualColumns"
71
+ @if (!this.ctx.treelist.virtualColumns) {
72
+ <kendo-treelist-columnmenu-item
73
73
  class="k-grid-columnmenu-autosize-column"
74
74
  [text]="ctx.localization.get('autosizeThisColumn')"
75
75
  icon="max-width"
76
76
  [svgIcon]="maxWidthIcon"
77
77
  (itemClick)="autoSizeColumn()"
78
- ></kendo-treelist-columnmenu-item>
79
- `,
78
+ ></kendo-treelist-columnmenu-item>
79
+ }
80
+ `,
80
81
  standalone: true,
81
- imports: [NgIf, ColumnMenuItemComponent]
82
+ imports: [ColumnMenuItemComponent]
82
83
  }]
83
84
  }], ctorParameters: () => [{ type: i1.ContextService }], propDecorators: { column: [{
84
85
  type: Input
@@ -3,7 +3,7 @@
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import { Component, Input, Output, EventEmitter, ContentChild } from '@angular/core';
6
- import { NgIf, NgTemplateOutlet } from '@angular/common';
6
+ import { NgTemplateOutlet } from '@angular/common';
7
7
  import { trigger, transition, style, animate, state } from '@angular/animations';
8
8
  import { chevronDownIcon, chevronUpIcon } from '@progress/kendo-svg-icons';
9
9
  import { IconWrapperComponent } from '@progress/kendo-angular-icons';
@@ -104,39 +104,79 @@ export class ColumnMenuItemComponent {
104
104
  this.contentState = this.expanded ? 'expanded' : 'collapsed';
105
105
  }
106
106
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ColumnMenuItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
107
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ColumnMenuItemComponent, isStandalone: true, selector: "kendo-treelist-columnmenu-item", inputs: { icon: "icon", svgIcon: "svgIcon", text: "text", selected: "selected", disabled: "disabled", expanded: "expanded", service: "service" }, outputs: { itemClick: "itemClick", expand: "expand", collapse: "collapse" }, queries: [{ propertyName: "contentTemplate", first: true, predicate: ColumnMenuItemContentTemplateDirective, descendants: true }], usesOnChanges: true, ngImport: i0, template: `
108
- <div *ngIf="contentTemplate; else content" class="k-expander">
107
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ColumnMenuItemComponent, isStandalone: true, selector: "kendo-treelist-columnmenu-item", inputs: { icon: "icon", svgIcon: "svgIcon", text: "text", selected: "selected", disabled: "disabled", expanded: "expanded", service: "service" }, outputs: { itemClick: "itemClick", expand: "expand", collapse: "collapse" }, queries: [{ propertyName: "contentTemplate", first: true, predicate: ColumnMenuItemContentTemplateDirective, descendants: true }], usesOnChanges: true, ngImport: i0, template: `
108
+ @if (contentTemplate) {
109
+ <div class="k-expander">
109
110
  <ng-container [ngTemplateOutlet]="content"></ng-container>
110
- </div>
111
-
112
- <ng-template #content>
113
- <div
114
- class="k-columnmenu-item"
115
- (click)="onClick($event)"
116
- (keydown.enter)="onClick($event)"
117
- [class.k-selected]="selected"
118
- [class.k-disabled]="disabled"
119
- role="button"
120
- [attr.aria-expanded]="expanded"
121
- [attr.aria-controls]="expanded ? contentId : undefined">
111
+ </div>
112
+ } @else {
113
+ <div
114
+ class="k-columnmenu-item"
115
+ (click)="onClick($event)"
116
+ (keydown.enter)="onClick($event)"
117
+ [class.k-selected]="selected"
118
+ [class.k-disabled]="disabled"
119
+ role="button"
120
+ [attr.aria-expanded]="expanded"
121
+ [attr.aria-controls]="expanded ? contentId : undefined">
122
+ <kendo-icon-wrapper
123
+ [name]="icon"
124
+ [svgIcon]="svgIcon"></kendo-icon-wrapper>
125
+ {{ text }}
126
+ @if (contentTemplate) {
127
+ <span class="k-spacer"></span>
128
+ }
129
+ @if (contentTemplate) {
130
+ <span class="k-expander-indicator">
122
131
  <kendo-icon-wrapper
123
- [name]="icon"
124
- [svgIcon]="svgIcon"></kendo-icon-wrapper>
125
- {{ text }}
126
- <span *ngIf="contentTemplate" class="k-spacer"></span>
127
- <span *ngIf="contentTemplate" class="k-expander-indicator">
128
- <kendo-icon-wrapper
129
- [name]="expandedIcon"
130
- [svgIcon]="expandedSvgIcon">
131
- </kendo-icon-wrapper>
132
- </span>
132
+ [name]="expandedIcon"
133
+ [svgIcon]="expandedSvgIcon">
134
+ </kendo-icon-wrapper>
135
+ </span>
136
+ }
137
+ </div>
138
+ @if (contentTemplate) {
139
+ <div [attr.id]="contentId" [@state]="contentState" [style.overflow]="'hidden'" class="k-columnmenu-item-content">
140
+ <ng-container [ngTemplateOutlet]="contentTemplate.templateRef">
141
+ </ng-container>
133
142
  </div>
134
- <div *ngIf="contentTemplate" [attr.id]="contentId" [@state]="contentState" [style.overflow]="'hidden'" class="k-columnmenu-item-content">
135
- <ng-container [ngTemplateOutlet]="contentTemplate.templateRef">
136
- </ng-container>
143
+ }
144
+ }
145
+
146
+ <ng-template #content>
147
+ <div
148
+ class="k-columnmenu-item"
149
+ (click)="onClick($event)"
150
+ (keydown.enter)="onClick($event)"
151
+ [class.k-selected]="selected"
152
+ [class.k-disabled]="disabled"
153
+ role="button"
154
+ [attr.aria-expanded]="expanded"
155
+ [attr.aria-controls]="expanded ? contentId : undefined">
156
+ <kendo-icon-wrapper
157
+ [name]="icon"
158
+ [svgIcon]="svgIcon"></kendo-icon-wrapper>
159
+ {{ text }}
160
+ @if (contentTemplate) {
161
+ <span class="k-spacer"></span>
162
+ }
163
+ @if (contentTemplate) {
164
+ <span class="k-expander-indicator">
165
+ <kendo-icon-wrapper
166
+ [name]="expandedIcon"
167
+ [svgIcon]="expandedSvgIcon">
168
+ </kendo-icon-wrapper>
169
+ </span>
170
+ }
171
+ </div>
172
+ @if (contentTemplate) {
173
+ <div [attr.id]="contentId" [@state]="contentState" [style.overflow]="'hidden'" class="k-columnmenu-item-content">
174
+ <ng-container [ngTemplateOutlet]="contentTemplate.templateRef">
175
+ </ng-container>
137
176
  </div>
177
+ }
138
178
  </ng-template>
139
- `, isInline: true, dependencies: [{ kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], animations: [
179
+ `, isInline: true, dependencies: [{ kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], animations: [
140
180
  trigger('state', [
141
181
  state('collapsed', style({ display: 'none' })),
142
182
  state('expanded', style({ display: 'block' })),
@@ -188,40 +228,80 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
188
228
  ],
189
229
  selector: 'kendo-treelist-columnmenu-item',
190
230
  template: `
191
- <div *ngIf="contentTemplate; else content" class="k-expander">
231
+ @if (contentTemplate) {
232
+ <div class="k-expander">
192
233
  <ng-container [ngTemplateOutlet]="content"></ng-container>
193
- </div>
194
-
195
- <ng-template #content>
196
- <div
197
- class="k-columnmenu-item"
198
- (click)="onClick($event)"
199
- (keydown.enter)="onClick($event)"
200
- [class.k-selected]="selected"
201
- [class.k-disabled]="disabled"
202
- role="button"
203
- [attr.aria-expanded]="expanded"
204
- [attr.aria-controls]="expanded ? contentId : undefined">
234
+ </div>
235
+ } @else {
236
+ <div
237
+ class="k-columnmenu-item"
238
+ (click)="onClick($event)"
239
+ (keydown.enter)="onClick($event)"
240
+ [class.k-selected]="selected"
241
+ [class.k-disabled]="disabled"
242
+ role="button"
243
+ [attr.aria-expanded]="expanded"
244
+ [attr.aria-controls]="expanded ? contentId : undefined">
245
+ <kendo-icon-wrapper
246
+ [name]="icon"
247
+ [svgIcon]="svgIcon"></kendo-icon-wrapper>
248
+ {{ text }}
249
+ @if (contentTemplate) {
250
+ <span class="k-spacer"></span>
251
+ }
252
+ @if (contentTemplate) {
253
+ <span class="k-expander-indicator">
205
254
  <kendo-icon-wrapper
206
- [name]="icon"
207
- [svgIcon]="svgIcon"></kendo-icon-wrapper>
208
- {{ text }}
209
- <span *ngIf="contentTemplate" class="k-spacer"></span>
210
- <span *ngIf="contentTemplate" class="k-expander-indicator">
211
- <kendo-icon-wrapper
212
- [name]="expandedIcon"
213
- [svgIcon]="expandedSvgIcon">
214
- </kendo-icon-wrapper>
215
- </span>
255
+ [name]="expandedIcon"
256
+ [svgIcon]="expandedSvgIcon">
257
+ </kendo-icon-wrapper>
258
+ </span>
259
+ }
260
+ </div>
261
+ @if (contentTemplate) {
262
+ <div [attr.id]="contentId" [@state]="contentState" [style.overflow]="'hidden'" class="k-columnmenu-item-content">
263
+ <ng-container [ngTemplateOutlet]="contentTemplate.templateRef">
264
+ </ng-container>
216
265
  </div>
217
- <div *ngIf="contentTemplate" [attr.id]="contentId" [@state]="contentState" [style.overflow]="'hidden'" class="k-columnmenu-item-content">
218
- <ng-container [ngTemplateOutlet]="contentTemplate.templateRef">
219
- </ng-container>
266
+ }
267
+ }
268
+
269
+ <ng-template #content>
270
+ <div
271
+ class="k-columnmenu-item"
272
+ (click)="onClick($event)"
273
+ (keydown.enter)="onClick($event)"
274
+ [class.k-selected]="selected"
275
+ [class.k-disabled]="disabled"
276
+ role="button"
277
+ [attr.aria-expanded]="expanded"
278
+ [attr.aria-controls]="expanded ? contentId : undefined">
279
+ <kendo-icon-wrapper
280
+ [name]="icon"
281
+ [svgIcon]="svgIcon"></kendo-icon-wrapper>
282
+ {{ text }}
283
+ @if (contentTemplate) {
284
+ <span class="k-spacer"></span>
285
+ }
286
+ @if (contentTemplate) {
287
+ <span class="k-expander-indicator">
288
+ <kendo-icon-wrapper
289
+ [name]="expandedIcon"
290
+ [svgIcon]="expandedSvgIcon">
291
+ </kendo-icon-wrapper>
292
+ </span>
293
+ }
294
+ </div>
295
+ @if (contentTemplate) {
296
+ <div [attr.id]="contentId" [@state]="contentState" [style.overflow]="'hidden'" class="k-columnmenu-item-content">
297
+ <ng-container [ngTemplateOutlet]="contentTemplate.templateRef">
298
+ </ng-container>
220
299
  </div>
300
+ }
221
301
  </ng-template>
222
- `,
302
+ `,
223
303
  standalone: true,
224
- imports: [IconWrapperComponent, NgIf, NgTemplateOutlet]
304
+ imports: [IconWrapperComponent, NgTemplateOutlet]
225
305
  }]
226
306
  }], propDecorators: { itemClick: [{
227
307
  type: Output