@progress/kendo-angular-treelist 21.1.1-develop.1 → 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 +7 -3
@@ -35,7 +35,6 @@ import { ResizableContainerDirective } from '../layout/resizable.directive';
35
35
  import { TableBodyComponent } from './table-body.component';
36
36
  import { ColGroupComponent } from './common/col-group.component';
37
37
  import { TableDirective } from '../column-resizing/table.directive';
38
- import { NgIf } from '@angular/common';
39
38
  import * as i0 from "@angular/core";
40
39
  import * as i1 from "../data/change-notification.service";
41
40
  import * as i2 from "../scrolling/suspend.service";
@@ -559,14 +558,15 @@ export class ListComponent {
559
558
  return element.offsetLeft;
560
559
  }
561
560
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ListComponent, deps: [{ token: SCROLLER_FACTORY_TOKEN }, { token: i1.ChangeNotificationService }, { token: i2.SuspendService }, { token: i0.NgZone }, { token: i0.Renderer2 }, { token: i3.ScrollSyncService }, { token: i4.ResizeService }, { token: i5.EditService }, { token: i6.BrowserSupportService }, { token: i7.NavigationService }, { token: i8.ScrollRequestService }, { token: i9.LocalizationService }, { token: i10.ColumnResizingService }, { token: i0.ChangeDetectorRef }, { token: i11.PDFService }, { token: i12.ColumnInfoService }], target: i0.ɵɵFactoryTarget.Component });
562
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ListComponent, isStandalone: true, selector: "kendo-treelist-list", inputs: { view: "view", total: "total", rowHeight: "rowHeight", take: "take", skip: "skip", columns: "columns", noRecordsTemplate: "noRecordsTemplate", filterable: "filterable", rowClass: "rowClass", loading: "loading", trackBy: "trackBy", virtualColumns: "virtualColumns", isVirtual: "isVirtual", expandIcons: "expandIcons" }, outputs: { contentScroll: "contentScroll", pageChange: "pageChange", scrollBottom: "scrollBottom" }, host: { properties: { "class.k-grid-container": "this.hostClass", "attr.role": "this.hostRole" } }, providers: [
561
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ListComponent, isStandalone: true, selector: "kendo-treelist-list", inputs: { view: "view", total: "total", rowHeight: "rowHeight", take: "take", skip: "skip", columns: "columns", noRecordsTemplate: "noRecordsTemplate", filterable: "filterable", rowClass: "rowClass", loading: "loading", trackBy: "trackBy", virtualColumns: "virtualColumns", isVirtual: "isVirtual", expandIcons: "expandIcons" }, outputs: { contentScroll: "contentScroll", pageChange: "pageChange", scrollBottom: "scrollBottom" }, host: { properties: { "class.k-grid-container": "this.hostClass", "attr.role": "this.hostRole" } }, providers: [
563
562
  {
564
563
  provide: SCROLLER_FACTORY_TOKEN,
565
564
  useValue: DEFAULT_SCROLLER_FACTORY
566
565
  }
567
566
  ], viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, static: true }, { propertyName: "table", first: true, predicate: ["table"], descendants: true, static: true }, { propertyName: "lockedContainer", first: true, predicate: ["lockedContainer"], descendants: true }, { propertyName: "lockedTable", first: true, predicate: ["lockedTable"], descendants: true }, { propertyName: "resizeSensors", predicate: ResizeSensorComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: `
568
- <div #lockedContainer class="k-grid-content-locked" role="presentation"
569
- *ngIf="isLocked" [style.width.px]="lockedWidth"
567
+ @if (isLocked) {
568
+ <div #lockedContainer class="k-grid-content-locked" role="presentation"
569
+ [style.width.px]="lockedWidth"
570
570
  [kendoEventsOutsideAngular]="{
571
571
  keydown: lockedKeydown,
572
572
  scroll: lockedScroll,
@@ -575,86 +575,99 @@ export class ListComponent {
575
575
  }"
576
576
  [scope]="this">
577
577
  <div role="presentation">
578
- <table
579
- kendoTreeListResizableTable
580
- [locked]="true"
581
- #lockedTable
582
- class="k-table k-grid-table k-table-md"
583
- role="presentation"
584
- [style.width.px]="lockedWidth">
585
- <colgroup
586
- kendoTreeListColGroup
587
- [columns]="$any(lockedLeafColumns)">
588
- </colgroup>
589
- <tbody kendoTreeListTableBody
590
- role="presentation"
591
- [isLocked]="true"
592
- [view]="view"
593
- [noRecordsText]="''"
594
- [columns]="$any(lockedLeafColumns)"
595
- [totalColumnsCount]="leafColumns.length"
596
- [totalColumns]="columns"
597
- [skip]="skip"
598
- [trackBy]="trackBy"
599
- [filterable]="filterable"
600
- [rowClass]="rowClass"
601
- [expandIcons]="expandIcons">
602
- </tbody>
603
- </table>
604
- <kendo-resize-sensor></kendo-resize-sensor>
605
- </div>
606
- <div *ngIf="isVirtual" class="k-height-container" role="presentation">
607
- <div [style.height.px]="totalHeight"></div>
578
+ <table
579
+ kendoTreeListResizableTable
580
+ [locked]="true"
581
+ #lockedTable
582
+ class="k-table k-grid-table k-table-md"
583
+ role="presentation"
584
+ [style.width.px]="lockedWidth">
585
+ <colgroup
586
+ kendoTreeListColGroup
587
+ [columns]="$any(lockedLeafColumns)">
588
+ </colgroup>
589
+ <tbody kendoTreeListTableBody
590
+ role="presentation"
591
+ [isLocked]="true"
592
+ [view]="view"
593
+ [noRecordsText]="''"
594
+ [columns]="$any(lockedLeafColumns)"
595
+ [totalColumnsCount]="leafColumns.length"
596
+ [totalColumns]="columns"
597
+ [skip]="skip"
598
+ [trackBy]="trackBy"
599
+ [filterable]="filterable"
600
+ [rowClass]="rowClass"
601
+ [expandIcons]="expandIcons">
602
+ </tbody>
603
+ </table>
604
+ <kendo-resize-sensor></kendo-resize-sensor>
605
+ </div>
606
+ @if (isVirtual) {
607
+ <div class="k-height-container" role="presentation">
608
+ <div [style.height.px]="totalHeight"></div>
608
609
  </div>
610
+ }
609
611
  </div>
610
- <div
611
- #container
612
- class="k-grid-content k-virtual-content"
613
- [kendoTreeListResizableContainer]="lockedLeafColumns.length > 0"
614
- [lockedWidth]="lockedWidth + 1"
615
- >
616
- <div role="presentation">
617
- <table
618
- [style.width.px]="nonLockedWidth"
619
- #table
620
- kendoTreeListResizableTable
621
- [virtualColumns]="virtualColumns"
622
- class="k-table k-grid-table k-table-md"
623
- role="presentation">
624
- <colgroup
625
- kendoTreeListColGroup
626
- [columns]="$any(nonLockedColumnsToRender)">
627
- </colgroup>
628
- <tbody kendoTreeListTableBody
629
- role="rowgroup"
630
- [view]="view"
631
- [columns]="$any(nonLockedColumnsToRender)"
632
- [allColumns]="$any(nonLockedLeafColumns)"
633
- [noRecordsTemplate]="noRecordsTemplate"
634
- [lockedColumnsCount]="lockedLeafColumns.length"
635
- [totalColumnsCount]="leafColumns.length"
636
- [totalColumns]="columns"
637
- [skip]="skip"
638
- [trackBy]="trackBy"
639
- [filterable]="filterable"
640
- [rowClass]="rowClass"
641
- [virtualColumns]="virtualColumns"
642
- [expandIcons]="expandIcons">
643
- </tbody>
644
- </table>
645
- <kendo-resize-sensor *ngIf="isLocked"></kendo-resize-sensor>
646
- </div>
647
- <kendo-resize-sensor *ngIf="isLocked || virtualColumns"></kendo-resize-sensor>
648
- <div *ngIf="isVirtual" class="k-height-container" role="presentation">
649
- <div [style.height.px]="totalHeight"></div>
650
- </div>
651
- <div *ngIf="virtualColumns" class="k-width-container" role="presentation">
652
- <div [style.width.px]="totalWidth"></div>
653
- </div>
612
+ }
613
+ <div
614
+ #container
615
+ class="k-grid-content k-virtual-content"
616
+ [kendoTreeListResizableContainer]="lockedLeafColumns.length > 0"
617
+ [lockedWidth]="lockedWidth + 1"
618
+ >
619
+ <div role="presentation">
620
+ <table
621
+ [style.width.px]="nonLockedWidth"
622
+ #table
623
+ kendoTreeListResizableTable
624
+ [virtualColumns]="virtualColumns"
625
+ class="k-table k-grid-table k-table-md"
626
+ role="presentation">
627
+ <colgroup
628
+ kendoTreeListColGroup
629
+ [columns]="$any(nonLockedColumnsToRender)">
630
+ </colgroup>
631
+ <tbody kendoTreeListTableBody
632
+ role="rowgroup"
633
+ [view]="view"
634
+ [columns]="$any(nonLockedColumnsToRender)"
635
+ [allColumns]="$any(nonLockedLeafColumns)"
636
+ [noRecordsTemplate]="noRecordsTemplate"
637
+ [lockedColumnsCount]="lockedLeafColumns.length"
638
+ [totalColumnsCount]="leafColumns.length"
639
+ [totalColumns]="columns"
640
+ [skip]="skip"
641
+ [trackBy]="trackBy"
642
+ [filterable]="filterable"
643
+ [rowClass]="rowClass"
644
+ [virtualColumns]="virtualColumns"
645
+ [expandIcons]="expandIcons">
646
+ </tbody>
647
+ </table>
648
+ @if (isLocked) {
649
+ <kendo-resize-sensor></kendo-resize-sensor>
650
+ }
654
651
  </div>
655
- <div *ngIf="loading" kendoTreeListLoading>
652
+ @if (isLocked || virtualColumns) {
653
+ <kendo-resize-sensor></kendo-resize-sensor>
654
+ }
655
+ @if (isVirtual) {
656
+ <div class="k-height-container" role="presentation">
657
+ <div [style.height.px]="totalHeight"></div>
658
+ </div>
659
+ }
660
+ @if (virtualColumns) {
661
+ <div class="k-width-container" role="presentation">
662
+ <div [style.width.px]="totalWidth"></div>
663
+ </div>
664
+ }
656
665
  </div>
657
- `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { kind: "directive", type: TableDirective, selector: "[kendoTreeListResizableTable]", inputs: ["locked", "virtualColumns"] }, { kind: "component", type: ColGroupComponent, selector: "[kendoTreeListColGroup]", inputs: ["columns"] }, { kind: "component", type: TableBodyComponent, selector: "[kendoTreeListTableBody]", inputs: ["columns", "allColumns", "noRecordsTemplate", "view", "skip", "filterable", "noRecordsText", "isLocked", "lockedColumnsCount", "totalColumnsCount", "virtualColumns", "expandIcons", "trackBy", "totalColumns", "rowClass"] }, { kind: "component", type: ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }, { kind: "directive", type: ResizableContainerDirective, selector: "[kendoTreeListResizableContainer]", inputs: ["lockedWidth", "kendoTreeListResizableContainer"] }, { kind: "component", type: LoadingComponent, selector: "[kendoTreeListLoading]" }] });
666
+ @if (loading) {
667
+ <div kendoTreeListLoading>
668
+ </div>
669
+ }
670
+ `, isInline: true, dependencies: [{ kind: "directive", type: EventsOutsideAngularDirective, selector: "[kendoEventsOutsideAngular]", inputs: ["kendoEventsOutsideAngular", "scope"] }, { kind: "directive", type: TableDirective, selector: "[kendoTreeListResizableTable]", inputs: ["locked", "virtualColumns"] }, { kind: "component", type: ColGroupComponent, selector: "[kendoTreeListColGroup]", inputs: ["columns"] }, { kind: "component", type: TableBodyComponent, selector: "[kendoTreeListTableBody]", inputs: ["columns", "allColumns", "noRecordsTemplate", "view", "skip", "filterable", "noRecordsText", "isLocked", "lockedColumnsCount", "totalColumnsCount", "virtualColumns", "expandIcons", "trackBy", "totalColumns", "rowClass"] }, { kind: "component", type: ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }, { kind: "directive", type: ResizableContainerDirective, selector: "[kendoTreeListResizableContainer]", inputs: ["lockedWidth", "kendoTreeListResizableContainer"] }, { kind: "component", type: LoadingComponent, selector: "[kendoTreeListLoading]" }] });
658
671
  }
659
672
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ListComponent, decorators: [{
660
673
  type: Component,
@@ -667,8 +680,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
667
680
  ],
668
681
  selector: 'kendo-treelist-list',
669
682
  template: `
670
- <div #lockedContainer class="k-grid-content-locked" role="presentation"
671
- *ngIf="isLocked" [style.width.px]="lockedWidth"
683
+ @if (isLocked) {
684
+ <div #lockedContainer class="k-grid-content-locked" role="presentation"
685
+ [style.width.px]="lockedWidth"
672
686
  [kendoEventsOutsideAngular]="{
673
687
  keydown: lockedKeydown,
674
688
  scroll: lockedScroll,
@@ -677,88 +691,101 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
677
691
  }"
678
692
  [scope]="this">
679
693
  <div role="presentation">
680
- <table
681
- kendoTreeListResizableTable
682
- [locked]="true"
683
- #lockedTable
684
- class="k-table k-grid-table k-table-md"
685
- role="presentation"
686
- [style.width.px]="lockedWidth">
687
- <colgroup
688
- kendoTreeListColGroup
689
- [columns]="$any(lockedLeafColumns)">
690
- </colgroup>
691
- <tbody kendoTreeListTableBody
692
- role="presentation"
693
- [isLocked]="true"
694
- [view]="view"
695
- [noRecordsText]="''"
696
- [columns]="$any(lockedLeafColumns)"
697
- [totalColumnsCount]="leafColumns.length"
698
- [totalColumns]="columns"
699
- [skip]="skip"
700
- [trackBy]="trackBy"
701
- [filterable]="filterable"
702
- [rowClass]="rowClass"
703
- [expandIcons]="expandIcons">
704
- </tbody>
705
- </table>
706
- <kendo-resize-sensor></kendo-resize-sensor>
707
- </div>
708
- <div *ngIf="isVirtual" class="k-height-container" role="presentation">
709
- <div [style.height.px]="totalHeight"></div>
694
+ <table
695
+ kendoTreeListResizableTable
696
+ [locked]="true"
697
+ #lockedTable
698
+ class="k-table k-grid-table k-table-md"
699
+ role="presentation"
700
+ [style.width.px]="lockedWidth">
701
+ <colgroup
702
+ kendoTreeListColGroup
703
+ [columns]="$any(lockedLeafColumns)">
704
+ </colgroup>
705
+ <tbody kendoTreeListTableBody
706
+ role="presentation"
707
+ [isLocked]="true"
708
+ [view]="view"
709
+ [noRecordsText]="''"
710
+ [columns]="$any(lockedLeafColumns)"
711
+ [totalColumnsCount]="leafColumns.length"
712
+ [totalColumns]="columns"
713
+ [skip]="skip"
714
+ [trackBy]="trackBy"
715
+ [filterable]="filterable"
716
+ [rowClass]="rowClass"
717
+ [expandIcons]="expandIcons">
718
+ </tbody>
719
+ </table>
720
+ <kendo-resize-sensor></kendo-resize-sensor>
721
+ </div>
722
+ @if (isVirtual) {
723
+ <div class="k-height-container" role="presentation">
724
+ <div [style.height.px]="totalHeight"></div>
710
725
  </div>
726
+ }
711
727
  </div>
712
- <div
713
- #container
714
- class="k-grid-content k-virtual-content"
715
- [kendoTreeListResizableContainer]="lockedLeafColumns.length > 0"
716
- [lockedWidth]="lockedWidth + 1"
717
- >
718
- <div role="presentation">
719
- <table
720
- [style.width.px]="nonLockedWidth"
721
- #table
722
- kendoTreeListResizableTable
723
- [virtualColumns]="virtualColumns"
724
- class="k-table k-grid-table k-table-md"
725
- role="presentation">
726
- <colgroup
727
- kendoTreeListColGroup
728
- [columns]="$any(nonLockedColumnsToRender)">
729
- </colgroup>
730
- <tbody kendoTreeListTableBody
731
- role="rowgroup"
732
- [view]="view"
733
- [columns]="$any(nonLockedColumnsToRender)"
734
- [allColumns]="$any(nonLockedLeafColumns)"
735
- [noRecordsTemplate]="noRecordsTemplate"
736
- [lockedColumnsCount]="lockedLeafColumns.length"
737
- [totalColumnsCount]="leafColumns.length"
738
- [totalColumns]="columns"
739
- [skip]="skip"
740
- [trackBy]="trackBy"
741
- [filterable]="filterable"
742
- [rowClass]="rowClass"
743
- [virtualColumns]="virtualColumns"
744
- [expandIcons]="expandIcons">
745
- </tbody>
746
- </table>
747
- <kendo-resize-sensor *ngIf="isLocked"></kendo-resize-sensor>
748
- </div>
749
- <kendo-resize-sensor *ngIf="isLocked || virtualColumns"></kendo-resize-sensor>
750
- <div *ngIf="isVirtual" class="k-height-container" role="presentation">
751
- <div [style.height.px]="totalHeight"></div>
752
- </div>
753
- <div *ngIf="virtualColumns" class="k-width-container" role="presentation">
754
- <div [style.width.px]="totalWidth"></div>
755
- </div>
728
+ }
729
+ <div
730
+ #container
731
+ class="k-grid-content k-virtual-content"
732
+ [kendoTreeListResizableContainer]="lockedLeafColumns.length > 0"
733
+ [lockedWidth]="lockedWidth + 1"
734
+ >
735
+ <div role="presentation">
736
+ <table
737
+ [style.width.px]="nonLockedWidth"
738
+ #table
739
+ kendoTreeListResizableTable
740
+ [virtualColumns]="virtualColumns"
741
+ class="k-table k-grid-table k-table-md"
742
+ role="presentation">
743
+ <colgroup
744
+ kendoTreeListColGroup
745
+ [columns]="$any(nonLockedColumnsToRender)">
746
+ </colgroup>
747
+ <tbody kendoTreeListTableBody
748
+ role="rowgroup"
749
+ [view]="view"
750
+ [columns]="$any(nonLockedColumnsToRender)"
751
+ [allColumns]="$any(nonLockedLeafColumns)"
752
+ [noRecordsTemplate]="noRecordsTemplate"
753
+ [lockedColumnsCount]="lockedLeafColumns.length"
754
+ [totalColumnsCount]="leafColumns.length"
755
+ [totalColumns]="columns"
756
+ [skip]="skip"
757
+ [trackBy]="trackBy"
758
+ [filterable]="filterable"
759
+ [rowClass]="rowClass"
760
+ [virtualColumns]="virtualColumns"
761
+ [expandIcons]="expandIcons">
762
+ </tbody>
763
+ </table>
764
+ @if (isLocked) {
765
+ <kendo-resize-sensor></kendo-resize-sensor>
766
+ }
756
767
  </div>
757
- <div *ngIf="loading" kendoTreeListLoading>
768
+ @if (isLocked || virtualColumns) {
769
+ <kendo-resize-sensor></kendo-resize-sensor>
770
+ }
771
+ @if (isVirtual) {
772
+ <div class="k-height-container" role="presentation">
773
+ <div [style.height.px]="totalHeight"></div>
774
+ </div>
775
+ }
776
+ @if (virtualColumns) {
777
+ <div class="k-width-container" role="presentation">
778
+ <div [style.width.px]="totalWidth"></div>
779
+ </div>
780
+ }
758
781
  </div>
782
+ @if (loading) {
783
+ <div kendoTreeListLoading>
784
+ </div>
785
+ }
759
786
  `,
760
787
  standalone: true,
761
- imports: [NgIf, EventsOutsideAngularDirective, TableDirective, ColGroupComponent, TableBodyComponent, ResizeSensorComponent, ResizableContainerDirective, LoadingComponent]
788
+ imports: [EventsOutsideAngularDirective, TableDirective, ColGroupComponent, TableBodyComponent, ResizeSensorComponent, ResizableContainerDirective, LoadingComponent]
762
789
  }]
763
790
  }], ctorParameters: () => [{ type: undefined, decorators: [{
764
791
  type: Inject,