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

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 (48) hide show
  1. package/esm2022/adaptiveness/adaptive-renderer.component.mjs +850 -756
  2. package/esm2022/aggregates/status-bar.component.mjs +13 -11
  3. package/esm2022/column-menu/column-chooser-content.component.mjs +133 -123
  4. package/esm2022/column-menu/column-list.component.mjs +62 -59
  5. package/esm2022/column-menu/column-menu-autosize-all.component.mjs +12 -11
  6. package/esm2022/column-menu/column-menu-autosize.component.mjs +12 -11
  7. package/esm2022/column-menu/column-menu-item.component.mjs +221 -85
  8. package/esm2022/column-menu/column-menu-position.component.mjs +46 -43
  9. package/esm2022/column-menu/column-menu.component.mjs +401 -315
  10. package/esm2022/editing/add-command.directive.mjs +27 -17
  11. package/esm2022/editing/cancel-command.directive.mjs +27 -17
  12. package/esm2022/editing/edit-command.directive.mjs +27 -17
  13. package/esm2022/editing/form/form-formfield.component.mjs +97 -70
  14. package/esm2022/editing/form/form.component.mjs +77 -61
  15. package/esm2022/editing/remove-command.directive.mjs +27 -17
  16. package/esm2022/editing/save-command.directive.mjs +27 -17
  17. package/esm2022/excel/excel-command.directive.mjs +27 -17
  18. package/esm2022/filtering/cell/filter-cell-operators.component.mjs +20 -17
  19. package/esm2022/filtering/cell/filter-cell.component.mjs +35 -33
  20. package/esm2022/filtering/filter-row.component.mjs +37 -29
  21. package/esm2022/filtering/menu/boolean-filter-menu.component.mjs +34 -31
  22. package/esm2022/filtering/menu/date-filter-menu.component.mjs +52 -49
  23. package/esm2022/filtering/menu/filter-menu-container.component.mjs +97 -89
  24. package/esm2022/filtering/menu/numeric-filter-menu.component.mjs +50 -47
  25. package/esm2022/filtering/menu/string-filter-menu.component.mjs +36 -33
  26. package/esm2022/filtering/multicheckbox-filter.component.mjs +54 -43
  27. package/esm2022/grid.component.mjs +1579 -1483
  28. package/esm2022/grouping/group-header.component.mjs +113 -89
  29. package/esm2022/grouping/group-panel.component.mjs +82 -75
  30. package/esm2022/package-metadata.mjs +2 -2
  31. package/esm2022/pdf/pdf-command.directive.mjs +27 -17
  32. package/esm2022/rendering/cell.component.mjs +411 -365
  33. package/esm2022/rendering/common/col-group.component.mjs +25 -15
  34. package/esm2022/rendering/common/loading.component.mjs +23 -19
  35. package/esm2022/rendering/details/detail-template.directive.mjs +6 -4
  36. package/esm2022/rendering/footer/footer.component.mjs +128 -112
  37. package/esm2022/rendering/header/header.component.mjs +412 -351
  38. package/esm2022/rendering/list.component.mjs +225 -202
  39. package/esm2022/rendering/table-body.component.mjs +553 -493
  40. package/esm2022/rendering/toolbar/toolbar.component.mjs +13 -11
  41. package/esm2022/rendering/toolbar/tools/ai-assistant/ai-assistant.component.mjs +86 -79
  42. package/esm2022/rendering/toolbar/tools/filter-toolbar-tool.component.mjs +54 -51
  43. package/esm2022/rendering/toolbar/tools/group-toolbar-tool.component.mjs +138 -115
  44. package/esm2022/rendering/toolbar/tools/sort-toolbar-tool.component.mjs +72 -65
  45. package/fesm2022/progress-kendo-angular-grid.mjs +6426 -5525
  46. package/package.json +24 -24
  47. package/rendering/details/detail-template.directive.d.ts +6 -4
  48. package/schematics/ngAdd/index.js +7 -7
@@ -90,7 +90,7 @@ import { ColGroupComponent } from './rendering/common/col-group.component';
90
90
  import { GridTableDirective } from './rendering/grid-table.directive';
91
91
  import { TableDirective } from './column-resizing/table.directive';
92
92
  import { GroupPanelComponent } from './grouping/group-panel.component';
93
- import { NgIf, NgTemplateOutlet } from '@angular/common';
93
+ import { NgTemplateOutlet } from '@angular/common';
94
94
  import { ToolbarComponent as GridToolbarComponent } from './rendering/toolbar/toolbar.component';
95
95
  import { LocalizedMessagesDirective } from './localization/localized-messages.directive';
96
96
  import { IconWrapperComponent } from '@progress/kendo-angular-icons';
@@ -2459,7 +2459,7 @@ export class GridComponent {
2459
2459
  this.dropTargetContainer?.notify();
2460
2460
  }
2461
2461
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GridComponent, deps: [{ token: i1.BrowserSupportService }, { token: i2.SelectionService }, { token: i3.CellSelectionService }, { token: i0.ElementRef }, { token: i4.GroupInfoService }, { token: i5.GroupsService }, { token: i6.ChangeNotificationService }, { token: i7.DetailsService }, { token: i8.EditService }, { token: i9.FilterService }, { token: i10.PDFService }, { token: i11.ResponsiveService }, { token: i0.Renderer2 }, { token: i12.ExcelService }, { token: i0.NgZone }, { token: i13.ScrollSyncService }, { token: i14.DomEventsService }, { token: i15.ColumnResizingService }, { token: i0.ChangeDetectorRef }, { token: i16.ColumnReorderService }, { token: i17.ColumnInfoService }, { token: i18.NavigationService }, { token: i19.SortService }, { token: i20.ScrollRequestService }, { token: i21.LocalizationService }, { token: i22.ContextService }, { token: i23.SizingOptionsService }, { token: i24.AdaptiveGridService }, { token: i25.RowReorderService }, { token: i26.DataMappingService }], target: i0.ɵɵFactoryTarget.Component });
2462
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: GridComponent, isStandalone: true, selector: "kendo-grid", inputs: { data: "data", pageSize: "pageSize", height: "height", rowHeight: "rowHeight", adaptiveMode: "adaptiveMode", detailRowHeight: "detailRowHeight", skip: "skip", scrollable: "scrollable", selectable: "selectable", sort: "sort", size: "size", trackBy: "trackBy", filter: "filter", group: "group", virtualColumns: "virtualColumns", filterable: "filterable", sortable: "sortable", pageable: "pageable", groupable: "groupable", gridResizable: "gridResizable", rowReorderable: "rowReorderable", navigable: "navigable", autoSize: "autoSize", rowClass: "rowClass", rowSticky: "rowSticky", rowSelected: "rowSelected", isRowSelectable: "isRowSelectable", cellSelected: "cellSelected", resizable: "resizable", reorderable: "reorderable", loading: "loading", columnMenu: "columnMenu", hideHeader: "hideHeader", showInactiveTools: "showInactiveTools", isDetailExpanded: "isDetailExpanded", isGroupExpanded: "isGroupExpanded", dataLayoutMode: "dataLayoutMode" }, outputs: { filterChange: "filterChange", pageChange: "pageChange", groupChange: "groupChange", sortChange: "sortChange", selectionChange: "selectionChange", rowReorder: "rowReorder", dataStateChange: "dataStateChange", gridStateChange: "gridStateChange", groupExpand: "groupExpand", groupCollapse: "groupCollapse", detailExpand: "detailExpand", detailCollapse: "detailCollapse", edit: "edit", cancel: "cancel", save: "save", remove: "remove", add: "add", cellClose: "cellClose", cellClick: "cellClick", pdfExport: "pdfExport", excelExport: "excelExport", columnResize: "columnResize", columnReorder: "columnReorder", columnVisibilityChange: "columnVisibilityChange", columnLockedChange: "columnLockedChange", columnStickyChange: "columnStickyChange", scrollBottom: "scrollBottom", contentScroll: "contentScroll" }, host: { properties: { "attr.dir": "this.dir", "class.k-grid": "this.hostClass", "class.k-grid-sm": "this.sizeSmallClass", "class.k-grid-md": "this.sizeMediumClass", "class.k-grid-stack": "this.stackedClass", "class.k-grid-lockedcolumns": "this.lockedClasses", "class.k-grid-virtual": "this.virtualClasses", "class.k-grid-no-scrollbar": "this.noScrollbarClass", "class.k-grid-resizable": "this.isResizable", "style.minWidth": "this.minWidth", "style.maxWidth": "this.maxWidth", "style.minHeight": "this.minHeight", "style.maxHeight": "this.maxHeight" } }, providers: [
2462
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: GridComponent, isStandalone: true, selector: "kendo-grid", inputs: { data: "data", pageSize: "pageSize", height: "height", rowHeight: "rowHeight", adaptiveMode: "adaptiveMode", detailRowHeight: "detailRowHeight", skip: "skip", scrollable: "scrollable", selectable: "selectable", sort: "sort", size: "size", trackBy: "trackBy", filter: "filter", group: "group", virtualColumns: "virtualColumns", filterable: "filterable", sortable: "sortable", pageable: "pageable", groupable: "groupable", gridResizable: "gridResizable", rowReorderable: "rowReorderable", navigable: "navigable", autoSize: "autoSize", rowClass: "rowClass", rowSticky: "rowSticky", rowSelected: "rowSelected", isRowSelectable: "isRowSelectable", cellSelected: "cellSelected", resizable: "resizable", reorderable: "reorderable", loading: "loading", columnMenu: "columnMenu", hideHeader: "hideHeader", showInactiveTools: "showInactiveTools", isDetailExpanded: "isDetailExpanded", isGroupExpanded: "isGroupExpanded", dataLayoutMode: "dataLayoutMode" }, outputs: { filterChange: "filterChange", pageChange: "pageChange", groupChange: "groupChange", sortChange: "sortChange", selectionChange: "selectionChange", rowReorder: "rowReorder", dataStateChange: "dataStateChange", gridStateChange: "gridStateChange", groupExpand: "groupExpand", groupCollapse: "groupCollapse", detailExpand: "detailExpand", detailCollapse: "detailCollapse", edit: "edit", cancel: "cancel", save: "save", remove: "remove", add: "add", cellClose: "cellClose", cellClick: "cellClick", pdfExport: "pdfExport", excelExport: "excelExport", columnResize: "columnResize", columnReorder: "columnReorder", columnVisibilityChange: "columnVisibilityChange", columnLockedChange: "columnLockedChange", columnStickyChange: "columnStickyChange", scrollBottom: "scrollBottom", contentScroll: "contentScroll" }, host: { properties: { "attr.dir": "this.dir", "class.k-grid": "this.hostClass", "class.k-grid-sm": "this.sizeSmallClass", "class.k-grid-md": "this.sizeMediumClass", "class.k-grid-stack": "this.stackedClass", "class.k-grid-lockedcolumns": "this.lockedClasses", "class.k-grid-virtual": "this.virtualClasses", "class.k-grid-no-scrollbar": "this.noScrollbarClass", "class.k-grid-resizable": "this.isResizable", "style.minWidth": "this.minWidth", "style.maxWidth": "this.maxWidth", "style.minHeight": "this.minHeight", "style.maxHeight": "this.maxHeight" } }, providers: [
2463
2463
  BrowserSupportService,
2464
2464
  LocalizationService,
2465
2465
  ColumnInfoService,
@@ -2512,410 +2512,411 @@ export class GridComponent {
2512
2512
  DataMappingService
2513
2513
  ], queries: [{ propertyName: "columns", predicate: ColumnBase }, { propertyName: "detailTemplateChildren", predicate: DetailTemplateDirective }, { propertyName: "cellLoadingTemplateChildren", predicate: CellLoadingTemplateDirective }, { propertyName: "loadingTemplateChildren", predicate: LoadingTemplateDirective }, { propertyName: "statusBarTemplateChildren", predicate: StatusBarTemplateDirective }, { propertyName: "noRecordsTemplateChildren", predicate: NoRecordsTemplateDirective }, { propertyName: "pagerTemplateChildren", predicate: PagerTemplateDirective }, { propertyName: "toolbarTemplateChildren", predicate: ToolbarTemplateDirective }, { propertyName: "columnMenuTemplates", predicate: ColumnMenuTemplateDirective }], viewQueries: [{ propertyName: "lockedHeader", first: true, predicate: ["lockedHeader"], descendants: true }, { propertyName: "header", first: true, predicate: ["header"], descendants: true }, { propertyName: "ariaRoot", first: true, predicate: ["ariaRoot"], descendants: true, static: true }, { propertyName: "dragTargetContainer", first: true, predicate: DragTargetContainerDirective, descendants: true }, { propertyName: "dropTargetContainer", first: true, predicate: DropTargetContainerDirective, descendants: true }, { propertyName: "dialogContainer", first: true, predicate: ["dialogContainer"], descendants: true, read: ViewContainerRef }, { propertyName: "windowContainer", first: true, predicate: ["windowContainer"], descendants: true, read: ViewContainerRef }, { propertyName: "adaptiveRenderer", first: true, predicate: AdaptiveRendererComponent, descendants: true }, { propertyName: "listComponent", first: true, predicate: ListComponent, descendants: true }, { propertyName: "footer", predicate: ["footer"], descendants: true }], exportAs: ["kendoGrid"], usesOnChanges: true, ngImport: i0, template: `
2514
2514
  <ng-container kendoGridLocalizedMessages
2515
- i18n-groupPanelEmpty="kendo.grid.groupPanelEmpty|The label visible in the Grid group panel when it is empty"
2516
- groupPanelEmpty="Drag a column header and drop it here to group by that column"
2517
-
2518
- i18n-noRecords="kendo.grid.noRecords|The label visible in the Grid when there are no records"
2519
- noRecords="No records available."
2520
-
2521
- i18n-pagerLabel="kendo.grid.pagerLabel|The label for the Grid pager"
2522
- pagerLabel="{{ 'Page navigation, page {currentPage} of {totalPages}' }}"
2523
-
2524
- i18n-pagerFirstPage="kendo.grid.pagerFirstPage|The label for the first page button in Grid pager"
2525
- pagerFirstPage="Go to the first page"
2526
-
2527
- i18n-pagerPreviousPage="kendo.grid.pagerPreviousPage|The label for the previous page button in Grid pager"
2528
- pagerPreviousPage="Go to the previous page"
2529
-
2530
- i18n-pagerNextPage="kendo.grid.pagerNextPage|The label for the next page button in Grid pager"
2531
- pagerNextPage="Go to the next page"
2532
-
2533
- i18n-pagerLastPage="kendo.grid.pagerLastPage|The label for the last page button in Grid pager"
2534
- pagerLastPage="Go to the last page"
2535
-
2536
- i18n-pagerPage="kendo.grid.pagerPage|The label before the current page number in the Grid pager"
2537
- pagerPage="Page"
2538
-
2539
- i18n-pagerOf="kendo.grid.pagerOf|The label before the total pages number in the Grid pager"
2540
- pagerOf="of"
2541
-
2542
- i18n-pagerItems="kendo.grid.pagerItems|The label after the total pages number in the Grid pager"
2543
- pagerItems="items"
2544
-
2545
- i18n-pagerPageNumberInputTitle="kendo.grid.pagerPageNumberInputTitle|The label for the pager input in the Grid pager"
2546
- pagerPageNumberInputTitle="Page Number"
2547
-
2548
- i18n-pagerItemsPerPage="kendo.grid.pagerItemsPerPage|The label for the page size chooser in the Grid pager"
2549
- pagerItemsPerPage="items per page"
2550
-
2551
- i18n-pagerInputLabel="kendo.grid.pagerInputLabel|The text of the aria-label attribute applied to the input element for entering the page number"
2552
- pagerInputLabel="Type a page number"
2553
-
2554
- i18n-filter="kendo.grid.filter|The label of the filter cell or icon"
2555
- filter="Filter"
2556
-
2557
- i18n-filterInputLabel="kendo.grid.filterInputLabel|The label of the filter row and menu inputs"
2558
- filterInputLabel="{{ '{columnName} Filter' }}"
2559
-
2560
- i18n-filterMenuTitle="kendo.grid.filterMenuTitle|The title of the filter menu icon"
2561
- filterMenuTitle="{{ '{columnName} Filter Menu' }}"
2562
-
2563
- i18n-filterMenuOperatorsDropDownLabel="kendo.grid.filterMenuOperatorsDropDownLabel|The label of the filter menu operators dropdown"
2564
- filterMenuOperatorsDropDownLabel="{{ '{columnName} Filter Operators' }}"
2565
-
2566
- i18n-filterCellOperatorLabel="kendo.grid.filterCellOperatorLabel|The label of the filter cell operators dropdown"
2567
- filterCellOperatorLabel="{{ 'Filter cell operators for {columnName}' }}"
2568
-
2569
- i18n-booleanFilterCellLabel="kendo.grid.booleanFilterCellLabel|The label of the boolean filter cell dropdown"
2570
- booleanFilterCellLabel="{{ 'Boolean filter cell for {columnName}' }}"
2571
-
2572
- i18n-filterMenuLogicDropDownLabel="kendo.grid.filterMenuLogicDropDownLabel|The label of the filter menu logic dropdown"
2573
- filterMenuLogicDropDownLabel="{{ '{columnName} Filter Logic' }}"
2574
-
2575
- i18n-filterEqOperator="kendo.grid.filterEqOperator|The text of the equal filter operator"
2576
- filterEqOperator="Is equal to"
2577
-
2578
- i18n-filterNotEqOperator="kendo.grid.filterNotEqOperator|The text of the not equal filter operator"
2579
- filterNotEqOperator="Is not equal to"
2580
-
2581
- i18n-filterIsNullOperator="kendo.grid.filterIsNullOperator|The text of the is null filter operator"
2582
- filterIsNullOperator="Is null"
2583
-
2584
- i18n-filterIsNotNullOperator="kendo.grid.filterIsNotNullOperator|The text of the is not null filter operator"
2585
- filterIsNotNullOperator="Is not null"
2586
-
2587
- i18n-filterIsEmptyOperator="kendo.grid.filterIsEmptyOperator|The text of the is empty filter operator"
2588
- filterIsEmptyOperator="Is empty"
2589
-
2590
- i18n-filterIsNotEmptyOperator="kendo.grid.filterIsNotEmptyOperator|The text of the is not empty filter operator"
2591
- filterIsNotEmptyOperator="Is not empty"
2592
-
2593
- i18n-filterStartsWithOperator="kendo.grid.filterStartsWithOperator|The text of the starts with filter operator"
2594
- filterStartsWithOperator="Starts with"
2595
-
2596
- i18n-filterContainsOperator="kendo.grid.filterContainsOperator|The text of the contains filter operator"
2597
- filterContainsOperator="Contains"
2598
-
2599
- i18n-filterNotContainsOperator="kendo.grid.filterNotContainsOperator|The text of the does not contain filter operator"
2600
- filterNotContainsOperator="Does not contain"
2601
-
2602
- i18n-filterEndsWithOperator="kendo.grid.filterEndsWithOperator|The text of the ends with filter operator"
2603
- filterEndsWithOperator="Ends with"
2604
-
2605
- i18n-filterGteOperator="kendo.grid.filterGteOperator|The text of the greater than or equal filter operator"
2606
- filterGteOperator="Is greater than or equal to"
2607
-
2608
- i18n-filterGtOperator="kendo.grid.filterGtOperator|The text of the greater than filter operator"
2609
- filterGtOperator="Is greater than"
2610
-
2611
- i18n-filterLteOperator="kendo.grid.filterLteOperator|The text of the less than or equal filter operator"
2612
- filterLteOperator="Is less than or equal to"
2613
-
2614
- i18n-filterLtOperator="kendo.grid.filterLtOperator|The text of the less than filter operator"
2615
- filterLtOperator="Is less than"
2616
-
2617
- i18n-filterIsTrue="kendo.grid.filterIsTrue|The text of the IsTrue boolean filter option"
2618
- filterIsTrue="Is True"
2619
-
2620
- i18n-filterIsFalse="kendo.grid.filterIsFalse|The text of the IsFalse boolean filter option"
2621
- filterIsFalse="Is False"
2622
-
2623
- i18n-filterBooleanAll="kendo.grid.filterBooleanAll|The text of the (All) boolean filter option"
2624
- filterBooleanAll="(All)"
2625
-
2626
- i18n-filterAfterOrEqualOperator="kendo.grid.filterAfterOrEqualOperator|The text of the after or equal date filter operator"
2627
- filterAfterOrEqualOperator="Is after or equal to"
2628
-
2629
- i18n-filterAfterOperator="kendo.grid.filterAfterOperator|The text of the after date filter operator"
2630
- filterAfterOperator="Is after"
2631
-
2632
- i18n-filterBeforeOperator="kendo.grid.filterBeforeOperator|The text of the before date filter operator"
2633
- filterBeforeOperator="Is before"
2634
-
2635
- i18n-filterBeforeOrEqualOperator="kendo.grid.filterBeforeOrEqualOperator|The text of the before or equal date filter operator"
2636
- filterBeforeOrEqualOperator="Is before or equal to"
2637
-
2638
- i18n-filterFilterButton="kendo.grid.filterFilterButton|The text of the filter button"
2639
- filterFilterButton="Filter"
2640
-
2641
- i18n-filterClearButton="kendo.grid.filterClearButton|The text of the clear filter button"
2642
- filterClearButton="Clear"
2643
-
2644
- i18n-sortClearButton="kendo.grid.sortClearButton|The text of the clear sort button located in the Sort Toolbar Tool and adaptive Sort Toolbar Tool"
2645
- sortClearButton="Clear sorting"
2646
-
2647
- i18n-adaptiveCloseButtonTitle="kendo.grid.adaptiveCloseButtonTitle|The title of the Close button of the ActionSheet that is rendered instead of the Popup when using small screen devices in adaptive mode"
2648
- adaptiveCloseButtonTitle="Close"
2649
-
2650
- i18n-adaptiveBackButtonTitle="kendo.grid.adaptiveBackButtonTitle|The title of the Back button of the ActionSheet that is rendered instead of the Popup when using small screen devices in adaptive mode"
2651
- adaptiveBackButtonTitle="Back"
2652
-
2653
- i18n-filterClearAllButton="kendo.grid.filterClearAllButton|The text of the clear all filters button located in the Filter Toolbar Tool and adaptive Filter Toolbar Tool"
2654
- filterClearAllButton="Clear all filters"
2655
-
2656
- i18n-groupClearButton="kendo.grid.groupClearButton|The text of the clear grouping button in the Group Toolbar Tool and adaptive Group Toolbar Tool"
2657
- groupClearButton="Clear grouping"
2658
-
2659
- i18n-sortDoneButton="kendo.grid.sortDoneButton|The text of the done sort button"
2660
- sortDoneButton="Done"
2661
-
2662
- i18n-groupDoneButton="kendo.grid.groupDoneButton|The text of the done group button in the adaptive Group Toolbar Tool"
2663
- groupDoneButton="Done"
2664
-
2665
- i18n-filterAndLogic="kendo.grid.filterAndLogic|The text of the And filter logic"
2666
- filterAndLogic="And"
2667
-
2668
- i18n-filterOrLogic="kendo.grid.filterOrLogic|The text of the Or filter logic"
2669
- filterOrLogic="Or"
2670
-
2671
- i18n-filterToolbarToolText="kendo.grid.filterToolbarToolText|The button text of the Filter toolbar tool"
2672
- filterToolbarToolText="Filter"
2673
-
2674
- i18n-loading="kendo.grid.loading|The loading text"
2675
- loading="Loading"
2676
-
2677
- i18n-gridLabel="kendo.grid.gridLabel|The Grid aria-label"
2678
- gridLabel="Data table"
2679
-
2680
- i18n-columnMenu="kendo.grid.columnMenu|The title of the column menu icon"
2681
- columnMenu="{{ '{columnName} Column Menu' }}"
2682
-
2683
- i18n-columns="kendo.grid.columns|The text for the Grid Column Chooser and Column Chooser toolbar tool"
2684
- columns="Columns"
2685
-
2686
- i18n-columnsSubtitle="kendo.grid.columnsSubtitle|The subtitle for the adaptive Grid Column Chooser and Column Chooser toolbar tool"
2687
- columnsSubtitle="Selected fields are visible"
2688
-
2689
- i18n-adaptiveFilterTitle="kendo.grid.adaptiveFilterTitle|The title that is displayed in the adaptive Filter Toolbar Tool and Filter Menu"
2690
- adaptiveFilterTitle="Filter by"
2691
-
2692
- i18n-adaptiveFilterOperatorsTitle="kendo.grid.adaptiveFilterOperatorsTitle|The title that is displayed in the Operators Action Sheet"
2693
- adaptiveFilterOperatorsTitle="Operators"
2694
-
2695
- i18n-adaptiveSortTitle="kendo.grid.adaptiveSortTitle|The title that is displayed in the adaptive Sort Toolbar Tool"
2696
- adaptiveSortTitle="Sort by"
2697
-
2698
- i18n-adaptiveGroupTitle="kendo.grid.adaptiveGroupTitle|The title that is displayed in the adaptive Group Toolbar Tool."
2699
- adaptiveGroupTitle="Group by"
2700
-
2701
- i18n-lock="kendo.grid.lock|The text shown in the column menu for the lock item"
2702
- lock="Lock"
2703
-
2704
- i18n-unlock="kendo.grid.unlock|The text shown in the column menu for the unlock item"
2705
- unlock="Unlock"
2706
-
2707
- i18n-setColumnPosition="kendo.grid.setColumnPosition|The text shown in the column menu for the set column position item"
2708
- setColumnPosition="Set Column Position"
2709
-
2710
- i18n-stick="kendo.grid.stick|The text shown in the column menu for the stick item"
2711
- stick="Stick"
2712
-
2713
- i18n-unstick="kendo.grid.unstick|The text shown in the column menu for the unstick item"
2714
- unstick="Unstick"
2715
-
2716
- i18n-sortable="kendo.grid.sortable|The label of the sort icon"
2717
- sortable="Sortable"
2718
-
2719
- i18n-sortAscending="kendo.grid.sortAscending|The text shown in the column menu for the sort ascending item"
2720
- sortAscending="Sort Ascending"
2721
-
2722
- i18n-sortDescending="kendo.grid.sortDescending|The text shown in the column menu for the sort descending item"
2723
- sortDescending="Sort Descending"
2724
-
2725
- i18n-autosizeAllColumns="kendo.grid.autosizeAllColumns|The text shown in the column menu for the autosize all columns item"
2726
- autosizeAllColumns="Autosize All Columns"
2727
-
2728
- i18n-autosizeThisColumn="kendo.grid.autosizeThisColumn|The text shown in the column menu for the autosize this column item"
2729
- autosizeThisColumn="Autosize This Column"
2730
-
2731
- i18n-sortedDefault="kendo.grid.sortedDefault|The status announcement when a column is no longer sorted"
2732
- sortedDefault="Not Sorted"
2733
-
2734
- i18n-sortedAscending="kendo.grid.sortedAscending|The title of the Group Chip indicating the ascending sorting order of the groups"
2735
- sortedAscending="Sorted Ascending"
2736
-
2737
- i18n-sortedDescending="kendo.grid.sortedDescending|The title of the Group Chip indicating the descending sorting order of the groups"
2738
- sortedDescending="Sorted Descending"
2739
-
2740
- i18n-columnsApply="kendo.grid.columnsApply|The text shown in the column menu or column chooser for the columns apply button"
2741
- columnsApply="Apply"
2742
-
2743
- i18n-columnsReset="kendo.grid.columnsReset|The text shown in the column menu or column chooser for the columns reset button"
2744
- columnsReset="Reset"
2745
-
2746
- i18n-detailExpand="kendo.grid.detailExpand|The title of the expand icon of detail rows. Applies also to the expand button text in stacked mode."
2747
- detailExpand="Expand Details"
2748
-
2749
- i18n-detailCollapse="kendo.grid.detailCollapse|The title of the collapse icon of detail rows. Applies also to the collapse button text in stacked mode."
2750
- detailCollapse="Collapse Details"
2751
-
2752
- i18n-filterDateToday="kendo.grid.filterDateToday|The text of the Today button of the Date filter."
2753
- filterDateToday="TODAY"
2754
-
2755
- i18n-filterDateToggle="kendo.grid.filterDateToggle|The title of the Toggle button of the Date filter."
2756
- filterDateToggle="Toggle Calendar"
2757
-
2758
- i18n-filterNumericDecrement="kendo.grid.filterNumericDecrement|The title of the Decrement button of the Numeric filter."
2759
- filterNumericDecrement="Decrement"
2760
-
2761
- i18n-filterNumericIncrement="kendo.grid.filterNumericIncrement|The title of the Increment button of the Numeric filter."
2762
- filterNumericIncrement="Increment"
2763
-
2764
- i18n-selectionCheckboxLabel="kendo.grid.selectionCheckboxLabel|The labels of the checkbox column checkboxes."
2765
- selectionCheckboxLabel="Select Row"
2766
-
2767
- i18n-selectAllCheckboxLabel="kendo.grid.selectAllCheckboxLabel|The label of the checkbox column select all checkbox."
2768
- selectAllCheckboxLabel="Select All Rows"
2769
-
2770
- i18n-sortToolbarToolText="kendo.grid.sortToolbarToolText|The button text of the Sort toolbar tool."
2771
- sortToolbarToolText="Sort"
2772
-
2773
- i18n-groupCollapse="kendo.grid.groupCollapse|The text of the title and aria-label attributes applied to the collapse icon of group rows."
2774
- groupCollapse="Collapse Group"
2775
-
2776
- i18n-groupExpand="kendo.grid.groupExpand|The text of the title and aria-label attributes applied to the expand icon of group rows."
2777
- groupExpand="Expand Group"
2778
-
2779
- i18n-pagerSelectPage="kendo.grid.pagerSelectPage|The text of the title and aria-label attributes applied to the page chooser in the Grid Pager"
2780
- pagerSelectPage="Select page"
2781
-
2782
- i18n-topToolbarLabel="kendo.grid.topToolbarLabel|The label for the Grid top toolbar"
2783
- topToolbarLabel="Top toolbar"
2784
-
2785
- i18n-bottomToolbarLabel="kendo.grid.bottomToolbarLabel|The label for the Grid bottom toolbar"
2786
- bottomToolbarLabel="Bottom toolbar"
2787
-
2788
- i18n-editToolbarToolText="kendo.grid.editToolbarToolText|The text for the Grid Edit toolbar tool"
2789
- editToolbarToolText="Edit"
2790
-
2791
- i18n-saveToolbarToolText="kendo.grid.saveToolbarToolText|The text for the Grid Save toolbar tool"
2792
- saveToolbarToolText="Save"
2793
-
2794
- i18n-addToolbarToolText="kendo.grid.addToolbarToolText|The text for the Grid Add toolbar tool"
2795
- addToolbarToolText="Add"
2796
-
2797
- i18n-cancelToolbarToolText="kendo.grid.cancelToolbarToolText|The text for the Grid Cancel toolbar tool"
2798
- cancelToolbarToolText="Cancel"
2799
-
2800
- i18n-removeToolbarToolText="kendo.grid.removeToolbarToolText|The text for the Grid Remove toolbar tool"
2801
- removeToolbarToolText="Delete"
2802
-
2803
- i18n-excelExportToolbarToolText="kendo.grid.excelExportToolbarToolText|The text for the Grid Excel export toolbar tool"
2804
- excelExportToolbarToolText="Excel Export"
2805
-
2806
- i18n-pdfExportToolbarToolText="kendo.grid.pdfExportToolbarToolText|The text for the Grid PDF export toolbar tool"
2807
- pdfExportToolbarToolText="PDF Export"
2808
-
2809
- i18n-groupPanelLabel="kendo.grid.groupPanelLabel|The label for the Grid group panel toolbar"
2810
- groupPanelLabel="Group panel"
2811
-
2812
- i18n-dragRowHandleLabel="kendo.grid.dragRowHandleLabel|The label for the Grid drag row handle"
2813
- dragRowHandleLabel="Drag row"
2814
-
2815
- i18n-columnMenuFilterTabTitle="kendo.grid.columnMenuFilterTabTitle|The title for the column menu Filter tab"
2816
- columnMenuFilterTabTitle="Filter"
2817
-
2818
- i18n-columnMenuGeneralTabTitle="kendo.grid.columnMenuGeneralTabTitle|The title for the column menu General tab"
2819
- columnMenuGeneralTabTitle="General"
2820
-
2821
- i18n-columnMenuColumnsTabTitle="kendo.grid.columnMenuColumnsTabTitle|The title for the column menu Columns tab"
2822
- columnMenuColumnsTabTitle="Columns"
2823
-
2824
- i18n-groupChipMenuPrevious="kendo.grid.groupChipMenuPrevious|The text for the Group pane Chip Menu Move as previous item"
2825
- groupChipMenuPrevious="Move as previous"
2826
-
2827
- i18n-groupChipMenuNext="kendo.grid.groupChipMenuNext|The text for the Group pane Chip Menu Move as next item"
2828
- groupChipMenuNext="Move as next"
2829
-
2830
- i18n-groupToolbarToolText="kendo.grid.groupToolbarToolText|The button text of the Group toolbar tool"
2831
- groupToolbarToolText="Group"
2832
-
2833
- i18n-formValidationErrorText="kendo.grid.formValidationErrorText|The default text of a form validation error when using external editing."
2834
- formValidationErrorText="{{ 'The {fieldName} field has {errorName} validation error' }}"
2835
-
2836
- i18n-removeConfirmationDialogTitle="kendo.grid.removeConfirmationDialogTitle|The title of the built-in remove item confirmation Dialog"
2837
- removeConfirmationDialogTitle="Please confirm"
2838
-
2839
- i18n-removeConfirmationDialogContent="kendo.grid.removeConfirmationDialogContent|The content of the built-in remove item confirmation Dialog"
2840
- removeConfirmationDialogContent="Are you sure you want to delete this item?"
2841
-
2842
- i18n-removeConfirmationDialogConfirmText="kendo.grid.removeConfirmationDialogConfirmText|The text of the built-in remove item confirmation Dialog confirm action button"
2843
- removeConfirmationDialogConfirmText="Yes"
2844
-
2845
- i18n-removeConfirmationDialogRejectText="kendo.grid.removeConfirmationDialogRejectText|The text of the built-in remove item confirmation Dialog reject action button"
2846
- removeConfirmationDialogRejectText="No"
2847
-
2848
- i18n-externalEditingTitle="kendo.grid.externalEditingTitle|The title of the built-in external editing form container when editing an item"
2849
- externalEditingTitle="Edit"
2850
-
2851
- i18n-externalEditingAddTitle="kendo.grid.externalEditingAddTitle|The title of the built-in external editing form container when adding a new item"
2852
- externalEditingAddTitle="Add"
2853
-
2854
- i18n-externalEditingSaveText="kendo.grid.externalEditingSaveText|The text of the external editing form Save button"
2855
- externalEditingSaveText="Save"
2856
-
2857
- i18n-externalEditingCancelText="kendo.grid.externalEditingCancelText|The text of the external editing form Cancel button"
2858
- externalEditingCancelText="Cancel"
2859
-
2860
- i18n-aiAssistantToolbarToolText="kendo.grid.aiAssistantToolbarToolText|The text of the AI Assistant toolbar tool"
2861
- aiAssistantToolbarToolText="AI Assistant"
2862
-
2863
- i18n-aiAssistantWindowTitle="kendo.grid.aiAssistantWindowTitle|The text of the AI Assistant Window title"
2864
- aiAssistantWindowTitle="AI Assistant"
2865
-
2866
- i18n-aiAssistantApplyButtonText="kendo.grid.aiAssistantApplyButtonText|The text of the AI Assistant Apply button"
2867
- aiAssistantApplyButtonText="Apply"
2868
-
2869
- i18n-aiAssistantWindowCloseTitle="kendo.grid.aiAssistantWindowCloseTitle|The title of the AI Assistant Window close button"
2870
- aiAssistantWindowCloseTitle="Close"
2871
-
2872
- i18n-aiAssistantWindowMaximizeTitle="kendo.grid.aiAssistantWindowMaximizeTitle|The title of the AI Assistant Window maximize button"
2873
- aiAssistantWindowMaximizeTitle="Maximize"
2874
-
2875
- i18n-aiAssistantWindowMinimizeTitle="kendo.grid.aiAssistantWindowMinimizeTitle|The title of the AI Assistant Window minimize button"
2876
- aiAssistantWindowMinimizeTitle="Minimize"
2877
-
2878
- i18n-aiAssistantWindowRestoreTitle="kendo.grid.aiAssistantWindowRestoreTitle|The title of the AI Assistant Window restore button"
2879
- aiAssistantWindowRestoreTitle="Restore"
2880
-
2881
- i18n-aiAssistantOutputCardTitle="kendo.grid.aiAssistantOutputCardTitle|The title of the AI Assistant Prompt Output Card"
2882
- aiAssistantOutputCardTitle="Generated with AI"
2883
-
2884
- i18n-aiAssistantOutputCardBodyContent="kendo.grid.aiAssistantOutputCardBodyContent|The success message dispayed in the AI Assistant Prompt Output Card's body"
2885
- aiAssistantOutputCardBodyContent="Operation is successful. Data is:"
2886
-
2887
- i18n-aiAssistantSelectionNotEnabled="kendo.grid.aiAssistantSelectionNotEnabled|The message shown when AI selection requires the Grid selectable option"
2888
- aiAssistantSelectionNotEnabled="Selection can be applied only when the Grid selectable option is enabled."
2889
-
2890
- i18n-aiAssistantSelectionRowModeRequired="kendo.grid.aiAssistantSelectionRowModeRequired|The message shown when AI selection requires row selection mode"
2891
- aiAssistantSelectionRowModeRequired="Selection can be applied only when row selection mode is enabled."
2892
-
2893
- i18n-aiAssistantSelectionCellModeRequired="kendo.grid.aiAssistantSelectionCellModeRequired|The message shown when AI selection requires cell selection mode"
2894
- aiAssistantSelectionCellModeRequired="Selection can be applied only when cell selection mode is enabled."
2895
-
2896
- i18n-columnChooserSelectedColumnsCount="kendo.grid.columnChooserSelectedColumnsCount|The text displayed in the Column Chooser for the number of selected columns"
2897
- columnChooserSelectedColumnsCount="{{ '{selectedColumnsCount} Selected items' }}"
2898
-
2899
- i18n-multiCheckboxFilterSearchPlaceholder="kendo.grid.multiCheckboxFilterSearchPlaceholder|The placeholder text for the multi-checkbox filter search input"
2900
- multiCheckboxFilterSearchPlaceholder="Search..."
2901
-
2902
- i18n-multiCheckboxFilterSelectAllLabel="kendo.grid.multiCheckboxFilterSelectAllLabel|The label for the multi-checkbox filter select all option"
2903
- multiCheckboxFilterSelectAllLabel="Select all"
2904
-
2905
- i18n-multiCheckboxFilterSelectedItemsCount="kendo.grid.multiCheckboxFilterSelectedItemsCount|The text for the multi-checkbox filter selected items count"
2906
- multiCheckboxFilterSelectedItemsCount="{{ '{selectedItemsCount} selected items' }}"
2907
- >
2515
+ i18n-groupPanelEmpty="kendo.grid.groupPanelEmpty|The label visible in the Grid group panel when it is empty"
2516
+ groupPanelEmpty="Drag a column header and drop it here to group by that column"
2517
+
2518
+ i18n-noRecords="kendo.grid.noRecords|The label visible in the Grid when there are no records"
2519
+ noRecords="No records available."
2520
+
2521
+ i18n-pagerLabel="kendo.grid.pagerLabel|The label for the Grid pager"
2522
+ pagerLabel="{{ 'Page navigation, page {currentPage} of {totalPages}' }}"
2523
+
2524
+ i18n-pagerFirstPage="kendo.grid.pagerFirstPage|The label for the first page button in Grid pager"
2525
+ pagerFirstPage="Go to the first page"
2526
+
2527
+ i18n-pagerPreviousPage="kendo.grid.pagerPreviousPage|The label for the previous page button in Grid pager"
2528
+ pagerPreviousPage="Go to the previous page"
2529
+
2530
+ i18n-pagerNextPage="kendo.grid.pagerNextPage|The label for the next page button in Grid pager"
2531
+ pagerNextPage="Go to the next page"
2532
+
2533
+ i18n-pagerLastPage="kendo.grid.pagerLastPage|The label for the last page button in Grid pager"
2534
+ pagerLastPage="Go to the last page"
2535
+
2536
+ i18n-pagerPage="kendo.grid.pagerPage|The label before the current page number in the Grid pager"
2537
+ pagerPage="Page"
2538
+
2539
+ i18n-pagerOf="kendo.grid.pagerOf|The label before the total pages number in the Grid pager"
2540
+ pagerOf="of"
2541
+
2542
+ i18n-pagerItems="kendo.grid.pagerItems|The label after the total pages number in the Grid pager"
2543
+ pagerItems="items"
2544
+
2545
+ i18n-pagerPageNumberInputTitle="kendo.grid.pagerPageNumberInputTitle|The label for the pager input in the Grid pager"
2546
+ pagerPageNumberInputTitle="Page Number"
2547
+
2548
+ i18n-pagerItemsPerPage="kendo.grid.pagerItemsPerPage|The label for the page size chooser in the Grid pager"
2549
+ pagerItemsPerPage="items per page"
2550
+
2551
+ i18n-pagerInputLabel="kendo.grid.pagerInputLabel|The text of the aria-label attribute applied to the input element for entering the page number"
2552
+ pagerInputLabel="Type a page number"
2553
+
2554
+ i18n-filter="kendo.grid.filter|The label of the filter cell or icon"
2555
+ filter="Filter"
2556
+
2557
+ i18n-filterInputLabel="kendo.grid.filterInputLabel|The label of the filter row and menu inputs"
2558
+ filterInputLabel="{{ '{columnName} Filter' }}"
2559
+
2560
+ i18n-filterMenuTitle="kendo.grid.filterMenuTitle|The title of the filter menu icon"
2561
+ filterMenuTitle="{{ '{columnName} Filter Menu' }}"
2562
+
2563
+ i18n-filterMenuOperatorsDropDownLabel="kendo.grid.filterMenuOperatorsDropDownLabel|The label of the filter menu operators dropdown"
2564
+ filterMenuOperatorsDropDownLabel="{{ '{columnName} Filter Operators' }}"
2565
+
2566
+ i18n-filterCellOperatorLabel="kendo.grid.filterCellOperatorLabel|The label of the filter cell operators dropdown"
2567
+ filterCellOperatorLabel="{{ 'Filter cell operators for {columnName}' }}"
2568
+
2569
+ i18n-booleanFilterCellLabel="kendo.grid.booleanFilterCellLabel|The label of the boolean filter cell dropdown"
2570
+ booleanFilterCellLabel="{{ 'Boolean filter cell for {columnName}' }}"
2571
+
2572
+ i18n-filterMenuLogicDropDownLabel="kendo.grid.filterMenuLogicDropDownLabel|The label of the filter menu logic dropdown"
2573
+ filterMenuLogicDropDownLabel="{{ '{columnName} Filter Logic' }}"
2574
+
2575
+ i18n-filterEqOperator="kendo.grid.filterEqOperator|The text of the equal filter operator"
2576
+ filterEqOperator="Is equal to"
2577
+
2578
+ i18n-filterNotEqOperator="kendo.grid.filterNotEqOperator|The text of the not equal filter operator"
2579
+ filterNotEqOperator="Is not equal to"
2580
+
2581
+ i18n-filterIsNullOperator="kendo.grid.filterIsNullOperator|The text of the is null filter operator"
2582
+ filterIsNullOperator="Is null"
2583
+
2584
+ i18n-filterIsNotNullOperator="kendo.grid.filterIsNotNullOperator|The text of the is not null filter operator"
2585
+ filterIsNotNullOperator="Is not null"
2586
+
2587
+ i18n-filterIsEmptyOperator="kendo.grid.filterIsEmptyOperator|The text of the is empty filter operator"
2588
+ filterIsEmptyOperator="Is empty"
2589
+
2590
+ i18n-filterIsNotEmptyOperator="kendo.grid.filterIsNotEmptyOperator|The text of the is not empty filter operator"
2591
+ filterIsNotEmptyOperator="Is not empty"
2592
+
2593
+ i18n-filterStartsWithOperator="kendo.grid.filterStartsWithOperator|The text of the starts with filter operator"
2594
+ filterStartsWithOperator="Starts with"
2595
+
2596
+ i18n-filterContainsOperator="kendo.grid.filterContainsOperator|The text of the contains filter operator"
2597
+ filterContainsOperator="Contains"
2598
+
2599
+ i18n-filterNotContainsOperator="kendo.grid.filterNotContainsOperator|The text of the does not contain filter operator"
2600
+ filterNotContainsOperator="Does not contain"
2601
+
2602
+ i18n-filterEndsWithOperator="kendo.grid.filterEndsWithOperator|The text of the ends with filter operator"
2603
+ filterEndsWithOperator="Ends with"
2604
+
2605
+ i18n-filterGteOperator="kendo.grid.filterGteOperator|The text of the greater than or equal filter operator"
2606
+ filterGteOperator="Is greater than or equal to"
2607
+
2608
+ i18n-filterGtOperator="kendo.grid.filterGtOperator|The text of the greater than filter operator"
2609
+ filterGtOperator="Is greater than"
2610
+
2611
+ i18n-filterLteOperator="kendo.grid.filterLteOperator|The text of the less than or equal filter operator"
2612
+ filterLteOperator="Is less than or equal to"
2613
+
2614
+ i18n-filterLtOperator="kendo.grid.filterLtOperator|The text of the less than filter operator"
2615
+ filterLtOperator="Is less than"
2616
+
2617
+ i18n-filterIsTrue="kendo.grid.filterIsTrue|The text of the IsTrue boolean filter option"
2618
+ filterIsTrue="Is True"
2619
+
2620
+ i18n-filterIsFalse="kendo.grid.filterIsFalse|The text of the IsFalse boolean filter option"
2621
+ filterIsFalse="Is False"
2622
+
2623
+ i18n-filterBooleanAll="kendo.grid.filterBooleanAll|The text of the (All) boolean filter option"
2624
+ filterBooleanAll="(All)"
2625
+
2626
+ i18n-filterAfterOrEqualOperator="kendo.grid.filterAfterOrEqualOperator|The text of the after or equal date filter operator"
2627
+ filterAfterOrEqualOperator="Is after or equal to"
2628
+
2629
+ i18n-filterAfterOperator="kendo.grid.filterAfterOperator|The text of the after date filter operator"
2630
+ filterAfterOperator="Is after"
2631
+
2632
+ i18n-filterBeforeOperator="kendo.grid.filterBeforeOperator|The text of the before date filter operator"
2633
+ filterBeforeOperator="Is before"
2634
+
2635
+ i18n-filterBeforeOrEqualOperator="kendo.grid.filterBeforeOrEqualOperator|The text of the before or equal date filter operator"
2636
+ filterBeforeOrEqualOperator="Is before or equal to"
2637
+
2638
+ i18n-filterFilterButton="kendo.grid.filterFilterButton|The text of the filter button"
2639
+ filterFilterButton="Filter"
2640
+
2641
+ i18n-filterClearButton="kendo.grid.filterClearButton|The text of the clear filter button"
2642
+ filterClearButton="Clear"
2643
+
2644
+ i18n-sortClearButton="kendo.grid.sortClearButton|The text of the clear sort button located in the Sort Toolbar Tool and adaptive Sort Toolbar Tool"
2645
+ sortClearButton="Clear sorting"
2646
+
2647
+ i18n-adaptiveCloseButtonTitle="kendo.grid.adaptiveCloseButtonTitle|The title of the Close button of the ActionSheet that is rendered instead of the Popup when using small screen devices in adaptive mode"
2648
+ adaptiveCloseButtonTitle="Close"
2649
+
2650
+ i18n-adaptiveBackButtonTitle="kendo.grid.adaptiveBackButtonTitle|The title of the Back button of the ActionSheet that is rendered instead of the Popup when using small screen devices in adaptive mode"
2651
+ adaptiveBackButtonTitle="Back"
2652
+
2653
+ i18n-filterClearAllButton="kendo.grid.filterClearAllButton|The text of the clear all filters button located in the Filter Toolbar Tool and adaptive Filter Toolbar Tool"
2654
+ filterClearAllButton="Clear all filters"
2655
+
2656
+ i18n-groupClearButton="kendo.grid.groupClearButton|The text of the clear grouping button in the Group Toolbar Tool and adaptive Group Toolbar Tool"
2657
+ groupClearButton="Clear grouping"
2658
+
2659
+ i18n-sortDoneButton="kendo.grid.sortDoneButton|The text of the done sort button"
2660
+ sortDoneButton="Done"
2661
+
2662
+ i18n-groupDoneButton="kendo.grid.groupDoneButton|The text of the done group button in the adaptive Group Toolbar Tool"
2663
+ groupDoneButton="Done"
2664
+
2665
+ i18n-filterAndLogic="kendo.grid.filterAndLogic|The text of the And filter logic"
2666
+ filterAndLogic="And"
2667
+
2668
+ i18n-filterOrLogic="kendo.grid.filterOrLogic|The text of the Or filter logic"
2669
+ filterOrLogic="Or"
2670
+
2671
+ i18n-filterToolbarToolText="kendo.grid.filterToolbarToolText|The button text of the Filter toolbar tool"
2672
+ filterToolbarToolText="Filter"
2673
+
2674
+ i18n-loading="kendo.grid.loading|The loading text"
2675
+ loading="Loading"
2676
+
2677
+ i18n-gridLabel="kendo.grid.gridLabel|The Grid aria-label"
2678
+ gridLabel="Data table"
2679
+
2680
+ i18n-columnMenu="kendo.grid.columnMenu|The title of the column menu icon"
2681
+ columnMenu="{{ '{columnName} Column Menu' }}"
2682
+
2683
+ i18n-columns="kendo.grid.columns|The text for the Grid Column Chooser and Column Chooser toolbar tool"
2684
+ columns="Columns"
2685
+
2686
+ i18n-columnsSubtitle="kendo.grid.columnsSubtitle|The subtitle for the adaptive Grid Column Chooser and Column Chooser toolbar tool"
2687
+ columnsSubtitle="Selected fields are visible"
2688
+
2689
+ i18n-adaptiveFilterTitle="kendo.grid.adaptiveFilterTitle|The title that is displayed in the adaptive Filter Toolbar Tool and Filter Menu"
2690
+ adaptiveFilterTitle="Filter by"
2691
+
2692
+ i18n-adaptiveFilterOperatorsTitle="kendo.grid.adaptiveFilterOperatorsTitle|The title that is displayed in the Operators Action Sheet"
2693
+ adaptiveFilterOperatorsTitle="Operators"
2694
+
2695
+ i18n-adaptiveSortTitle="kendo.grid.adaptiveSortTitle|The title that is displayed in the adaptive Sort Toolbar Tool"
2696
+ adaptiveSortTitle="Sort by"
2697
+
2698
+ i18n-adaptiveGroupTitle="kendo.grid.adaptiveGroupTitle|The title that is displayed in the adaptive Group Toolbar Tool."
2699
+ adaptiveGroupTitle="Group by"
2700
+
2701
+ i18n-lock="kendo.grid.lock|The text shown in the column menu for the lock item"
2702
+ lock="Lock"
2703
+
2704
+ i18n-unlock="kendo.grid.unlock|The text shown in the column menu for the unlock item"
2705
+ unlock="Unlock"
2706
+
2707
+ i18n-setColumnPosition="kendo.grid.setColumnPosition|The text shown in the column menu for the set column position item"
2708
+ setColumnPosition="Set Column Position"
2709
+
2710
+ i18n-stick="kendo.grid.stick|The text shown in the column menu for the stick item"
2711
+ stick="Stick"
2712
+
2713
+ i18n-unstick="kendo.grid.unstick|The text shown in the column menu for the unstick item"
2714
+ unstick="Unstick"
2715
+
2716
+ i18n-sortable="kendo.grid.sortable|The label of the sort icon"
2717
+ sortable="Sortable"
2718
+
2719
+ i18n-sortAscending="kendo.grid.sortAscending|The text shown in the column menu for the sort ascending item"
2720
+ sortAscending="Sort Ascending"
2721
+
2722
+ i18n-sortDescending="kendo.grid.sortDescending|The text shown in the column menu for the sort descending item"
2723
+ sortDescending="Sort Descending"
2724
+
2725
+ i18n-autosizeAllColumns="kendo.grid.autosizeAllColumns|The text shown in the column menu for the autosize all columns item"
2726
+ autosizeAllColumns="Autosize All Columns"
2727
+
2728
+ i18n-autosizeThisColumn="kendo.grid.autosizeThisColumn|The text shown in the column menu for the autosize this column item"
2729
+ autosizeThisColumn="Autosize This Column"
2730
+
2731
+ i18n-sortedDefault="kendo.grid.sortedDefault|The status announcement when a column is no longer sorted"
2732
+ sortedDefault="Not Sorted"
2733
+
2734
+ i18n-sortedAscending="kendo.grid.sortedAscending|The title of the Group Chip indicating the ascending sorting order of the groups"
2735
+ sortedAscending="Sorted Ascending"
2736
+
2737
+ i18n-sortedDescending="kendo.grid.sortedDescending|The title of the Group Chip indicating the descending sorting order of the groups"
2738
+ sortedDescending="Sorted Descending"
2739
+
2740
+ i18n-columnsApply="kendo.grid.columnsApply|The text shown in the column menu or column chooser for the columns apply button"
2741
+ columnsApply="Apply"
2742
+
2743
+ i18n-columnsReset="kendo.grid.columnsReset|The text shown in the column menu or column chooser for the columns reset button"
2744
+ columnsReset="Reset"
2745
+
2746
+ i18n-detailExpand="kendo.grid.detailExpand|The title of the expand icon of detail rows. Applies also to the expand button text in stacked mode."
2747
+ detailExpand="Expand Details"
2748
+
2749
+ i18n-detailCollapse="kendo.grid.detailCollapse|The title of the collapse icon of detail rows. Applies also to the collapse button text in stacked mode."
2750
+ detailCollapse="Collapse Details"
2751
+
2752
+ i18n-filterDateToday="kendo.grid.filterDateToday|The text of the Today button of the Date filter."
2753
+ filterDateToday="TODAY"
2754
+
2755
+ i18n-filterDateToggle="kendo.grid.filterDateToggle|The title of the Toggle button of the Date filter."
2756
+ filterDateToggle="Toggle Calendar"
2757
+
2758
+ i18n-filterNumericDecrement="kendo.grid.filterNumericDecrement|The title of the Decrement button of the Numeric filter."
2759
+ filterNumericDecrement="Decrement"
2760
+
2761
+ i18n-filterNumericIncrement="kendo.grid.filterNumericIncrement|The title of the Increment button of the Numeric filter."
2762
+ filterNumericIncrement="Increment"
2763
+
2764
+ i18n-selectionCheckboxLabel="kendo.grid.selectionCheckboxLabel|The labels of the checkbox column checkboxes."
2765
+ selectionCheckboxLabel="Select Row"
2766
+
2767
+ i18n-selectAllCheckboxLabel="kendo.grid.selectAllCheckboxLabel|The label of the checkbox column select all checkbox."
2768
+ selectAllCheckboxLabel="Select All Rows"
2769
+
2770
+ i18n-sortToolbarToolText="kendo.grid.sortToolbarToolText|The button text of the Sort toolbar tool."
2771
+ sortToolbarToolText="Sort"
2772
+
2773
+ i18n-groupCollapse="kendo.grid.groupCollapse|The text of the title and aria-label attributes applied to the collapse icon of group rows."
2774
+ groupCollapse="Collapse Group"
2775
+
2776
+ i18n-groupExpand="kendo.grid.groupExpand|The text of the title and aria-label attributes applied to the expand icon of group rows."
2777
+ groupExpand="Expand Group"
2778
+
2779
+ i18n-pagerSelectPage="kendo.grid.pagerSelectPage|The text of the title and aria-label attributes applied to the page chooser in the Grid Pager"
2780
+ pagerSelectPage="Select page"
2781
+
2782
+ i18n-topToolbarLabel="kendo.grid.topToolbarLabel|The label for the Grid top toolbar"
2783
+ topToolbarLabel="Top toolbar"
2784
+
2785
+ i18n-bottomToolbarLabel="kendo.grid.bottomToolbarLabel|The label for the Grid bottom toolbar"
2786
+ bottomToolbarLabel="Bottom toolbar"
2787
+
2788
+ i18n-editToolbarToolText="kendo.grid.editToolbarToolText|The text for the Grid Edit toolbar tool"
2789
+ editToolbarToolText="Edit"
2790
+
2791
+ i18n-saveToolbarToolText="kendo.grid.saveToolbarToolText|The text for the Grid Save toolbar tool"
2792
+ saveToolbarToolText="Save"
2793
+
2794
+ i18n-addToolbarToolText="kendo.grid.addToolbarToolText|The text for the Grid Add toolbar tool"
2795
+ addToolbarToolText="Add"
2796
+
2797
+ i18n-cancelToolbarToolText="kendo.grid.cancelToolbarToolText|The text for the Grid Cancel toolbar tool"
2798
+ cancelToolbarToolText="Cancel"
2799
+
2800
+ i18n-removeToolbarToolText="kendo.grid.removeToolbarToolText|The text for the Grid Remove toolbar tool"
2801
+ removeToolbarToolText="Delete"
2802
+
2803
+ i18n-excelExportToolbarToolText="kendo.grid.excelExportToolbarToolText|The text for the Grid Excel export toolbar tool"
2804
+ excelExportToolbarToolText="Excel Export"
2805
+
2806
+ i18n-pdfExportToolbarToolText="kendo.grid.pdfExportToolbarToolText|The text for the Grid PDF export toolbar tool"
2807
+ pdfExportToolbarToolText="PDF Export"
2808
+
2809
+ i18n-groupPanelLabel="kendo.grid.groupPanelLabel|The label for the Grid group panel toolbar"
2810
+ groupPanelLabel="Group panel"
2811
+
2812
+ i18n-dragRowHandleLabel="kendo.grid.dragRowHandleLabel|The label for the Grid drag row handle"
2813
+ dragRowHandleLabel="Drag row"
2814
+
2815
+ i18n-columnMenuFilterTabTitle="kendo.grid.columnMenuFilterTabTitle|The title for the column menu Filter tab"
2816
+ columnMenuFilterTabTitle="Filter"
2817
+
2818
+ i18n-columnMenuGeneralTabTitle="kendo.grid.columnMenuGeneralTabTitle|The title for the column menu General tab"
2819
+ columnMenuGeneralTabTitle="General"
2820
+
2821
+ i18n-columnMenuColumnsTabTitle="kendo.grid.columnMenuColumnsTabTitle|The title for the column menu Columns tab"
2822
+ columnMenuColumnsTabTitle="Columns"
2823
+
2824
+ i18n-groupChipMenuPrevious="kendo.grid.groupChipMenuPrevious|The text for the Group pane Chip Menu Move as previous item"
2825
+ groupChipMenuPrevious="Move as previous"
2826
+
2827
+ i18n-groupChipMenuNext="kendo.grid.groupChipMenuNext|The text for the Group pane Chip Menu Move as next item"
2828
+ groupChipMenuNext="Move as next"
2829
+
2830
+ i18n-groupToolbarToolText="kendo.grid.groupToolbarToolText|The button text of the Group toolbar tool"
2831
+ groupToolbarToolText="Group"
2832
+
2833
+ i18n-formValidationErrorText="kendo.grid.formValidationErrorText|The default text of a form validation error when using external editing."
2834
+ formValidationErrorText="{{ 'The {fieldName} field has {errorName} validation error' }}"
2835
+
2836
+ i18n-removeConfirmationDialogTitle="kendo.grid.removeConfirmationDialogTitle|The title of the built-in remove item confirmation Dialog"
2837
+ removeConfirmationDialogTitle="Please confirm"
2838
+
2839
+ i18n-removeConfirmationDialogContent="kendo.grid.removeConfirmationDialogContent|The content of the built-in remove item confirmation Dialog"
2840
+ removeConfirmationDialogContent="Are you sure you want to delete this item?"
2841
+
2842
+ i18n-removeConfirmationDialogConfirmText="kendo.grid.removeConfirmationDialogConfirmText|The text of the built-in remove item confirmation Dialog confirm action button"
2843
+ removeConfirmationDialogConfirmText="Yes"
2844
+
2845
+ i18n-removeConfirmationDialogRejectText="kendo.grid.removeConfirmationDialogRejectText|The text of the built-in remove item confirmation Dialog reject action button"
2846
+ removeConfirmationDialogRejectText="No"
2847
+
2848
+ i18n-externalEditingTitle="kendo.grid.externalEditingTitle|The title of the built-in external editing form container when editing an item"
2849
+ externalEditingTitle="Edit"
2850
+
2851
+ i18n-externalEditingAddTitle="kendo.grid.externalEditingAddTitle|The title of the built-in external editing form container when adding a new item"
2852
+ externalEditingAddTitle="Add"
2853
+
2854
+ i18n-externalEditingSaveText="kendo.grid.externalEditingSaveText|The text of the external editing form Save button"
2855
+ externalEditingSaveText="Save"
2856
+
2857
+ i18n-externalEditingCancelText="kendo.grid.externalEditingCancelText|The text of the external editing form Cancel button"
2858
+ externalEditingCancelText="Cancel"
2859
+
2860
+ i18n-aiAssistantToolbarToolText="kendo.grid.aiAssistantToolbarToolText|The text of the AI Assistant toolbar tool"
2861
+ aiAssistantToolbarToolText="AI Assistant"
2862
+
2863
+ i18n-aiAssistantWindowTitle="kendo.grid.aiAssistantWindowTitle|The text of the AI Assistant Window title"
2864
+ aiAssistantWindowTitle="AI Assistant"
2865
+
2866
+ i18n-aiAssistantApplyButtonText="kendo.grid.aiAssistantApplyButtonText|The text of the AI Assistant Apply button"
2867
+ aiAssistantApplyButtonText="Apply"
2868
+
2869
+ i18n-aiAssistantWindowCloseTitle="kendo.grid.aiAssistantWindowCloseTitle|The title of the AI Assistant Window close button"
2870
+ aiAssistantWindowCloseTitle="Close"
2871
+
2872
+ i18n-aiAssistantWindowMaximizeTitle="kendo.grid.aiAssistantWindowMaximizeTitle|The title of the AI Assistant Window maximize button"
2873
+ aiAssistantWindowMaximizeTitle="Maximize"
2874
+
2875
+ i18n-aiAssistantWindowMinimizeTitle="kendo.grid.aiAssistantWindowMinimizeTitle|The title of the AI Assistant Window minimize button"
2876
+ aiAssistantWindowMinimizeTitle="Minimize"
2877
+
2878
+ i18n-aiAssistantWindowRestoreTitle="kendo.grid.aiAssistantWindowRestoreTitle|The title of the AI Assistant Window restore button"
2879
+ aiAssistantWindowRestoreTitle="Restore"
2880
+
2881
+ i18n-aiAssistantOutputCardTitle="kendo.grid.aiAssistantOutputCardTitle|The title of the AI Assistant Prompt Output Card"
2882
+ aiAssistantOutputCardTitle="Generated with AI"
2883
+
2884
+ i18n-aiAssistantOutputCardBodyContent="kendo.grid.aiAssistantOutputCardBodyContent|The success message dispayed in the AI Assistant Prompt Output Card's body"
2885
+ aiAssistantOutputCardBodyContent="Operation is successful. Data is:"
2886
+
2887
+ i18n-aiAssistantSelectionNotEnabled="kendo.grid.aiAssistantSelectionNotEnabled|The message shown when AI selection requires the Grid selectable option"
2888
+ aiAssistantSelectionNotEnabled="Selection can be applied only when the Grid selectable option is enabled."
2889
+
2890
+ i18n-aiAssistantSelectionRowModeRequired="kendo.grid.aiAssistantSelectionRowModeRequired|The message shown when AI selection requires row selection mode"
2891
+ aiAssistantSelectionRowModeRequired="Selection can be applied only when row selection mode is enabled."
2892
+
2893
+ i18n-aiAssistantSelectionCellModeRequired="kendo.grid.aiAssistantSelectionCellModeRequired|The message shown when AI selection requires cell selection mode"
2894
+ aiAssistantSelectionCellModeRequired="Selection can be applied only when cell selection mode is enabled."
2895
+
2896
+ i18n-columnChooserSelectedColumnsCount="kendo.grid.columnChooserSelectedColumnsCount|The text displayed in the Column Chooser for the number of selected columns"
2897
+ columnChooserSelectedColumnsCount="{{ '{selectedColumnsCount} Selected items' }}"
2898
+
2899
+ i18n-multiCheckboxFilterSearchPlaceholder="kendo.grid.multiCheckboxFilterSearchPlaceholder|The placeholder text for the multi-checkbox filter search input"
2900
+ multiCheckboxFilterSearchPlaceholder="Search..."
2901
+
2902
+ i18n-multiCheckboxFilterSelectAllLabel="kendo.grid.multiCheckboxFilterSelectAllLabel|The label for the multi-checkbox filter select all option"
2903
+ multiCheckboxFilterSelectAllLabel="Select all"
2904
+
2905
+ i18n-multiCheckboxFilterSelectedItemsCount="kendo.grid.multiCheckboxFilterSelectedItemsCount|The text for the multi-checkbox filter selected items count"
2906
+ multiCheckboxFilterSelectedItemsCount="{{ '{selectedItemsCount} selected items' }}"
2907
+ >
2908
2908
  </ng-container>
2909
- <kendo-grid-toolbar
2910
- *ngIf="showTopToolbar"
2909
+ @if (showTopToolbar) {
2910
+ <kendo-grid-toolbar
2911
2911
  [size]="size"
2912
2912
  [attr.aria-label]="messageFor('topToolbarLabel')"
2913
2913
  [navigable]="navigation.toolbarEnabled"
2914
2914
  [attr.aria-controls]="ariaRootId"
2915
- position="top"></kendo-grid-toolbar>
2915
+ position="top"></kendo-grid-toolbar>
2916
+ }
2916
2917
  <ng-content select="kendo-toolbar"></ng-content>
2917
- <kendo-pager
2918
- *ngIf="showTopPager"
2918
+ @if (showTopPager) {
2919
+ <kendo-pager
2919
2920
  #topPager
2920
2921
  [navigable]="navigation.pagerEnabled"
2921
2922
  class="k-grid-pager k-grid-pager-top"
@@ -2934,27 +2935,28 @@ export class GridComponent {
2934
2935
  (pageTextVisibilityChange)="handlePagerVisibilityChange('showPagerPageText', $event)"
2935
2936
  (itemsTextVisibilityChange)="handlePagerVisibilityChange('showPagerItemsText', $event)">
2936
2937
  <ng-template kendoPagerTemplate>
2937
- <ng-container
2938
- [ngTemplateOutlet]="pagerTemplate ? pagerTemplate?.templateRef : defaultPager"
2939
- [ngTemplateOutletContext]="topPager.templateContext"></ng-container>
2938
+ <ng-container
2939
+ [ngTemplateOutlet]="pagerTemplate ? pagerTemplate?.templateRef : defaultPager"
2940
+ [ngTemplateOutletContext]="topPager.templateContext"></ng-container>
2940
2941
  </ng-template>
2941
2942
  <kendo-pager-messages
2942
- [ariaLabel]="messageFor('pagerLabel')"
2943
- [firstPage]="messageFor('pagerFirstPage')"
2944
- [inputLabel]="messageFor('pagerInputLabel')"
2945
- [previousPage]="messageFor('pagerPreviousPage')"
2946
- [nextPage]="messageFor('pagerNextPage')"
2947
- [lastPage]="messageFor('pagerLastPage')"
2948
- [selectPage]="messageFor('pagerSelectPage')"
2949
- [page]="messageFor('pagerPage')"
2950
- [itemsPerPage]="messageFor('pagerItemsPerPage')"
2951
- [items]="messageFor('pagerItems')"
2952
- [of]="messageFor('pagerOf')"
2953
- [pageNumberInputTitle]="messageFor('pagerPageNumberInputTitle')">
2943
+ [ariaLabel]="messageFor('pagerLabel')"
2944
+ [firstPage]="messageFor('pagerFirstPage')"
2945
+ [inputLabel]="messageFor('pagerInputLabel')"
2946
+ [previousPage]="messageFor('pagerPreviousPage')"
2947
+ [nextPage]="messageFor('pagerNextPage')"
2948
+ [lastPage]="messageFor('pagerLastPage')"
2949
+ [selectPage]="messageFor('pagerSelectPage')"
2950
+ [page]="messageFor('pagerPage')"
2951
+ [itemsPerPage]="messageFor('pagerItemsPerPage')"
2952
+ [items]="messageFor('pagerItems')"
2953
+ [of]="messageFor('pagerOf')"
2954
+ [pageNumberInputTitle]="messageFor('pagerPageNumberInputTitle')">
2954
2955
  </kendo-pager-messages>
2955
- </kendo-pager>
2956
- <kendo-grid-group-panel
2957
- *ngIf="showGroupPanel"
2956
+ </kendo-pager>
2957
+ }
2958
+ @if (showGroupPanel) {
2959
+ <kendo-grid-group-panel
2958
2960
  [navigable]="navigation.toolbarEnabled"
2959
2961
  [text]="groupableEmptyText"
2960
2962
  [groups]="group"
@@ -2962,290 +2964,308 @@ export class GridComponent {
2962
2964
  [attr.aria-label]="messageFor('groupPanelLabel')"
2963
2965
  [attr.aria-controls]="ariaRootId"
2964
2966
  (change)="groupChange.emit($event)">
2965
- </kendo-grid-group-panel>
2967
+ </kendo-grid-group-panel>
2968
+ }
2966
2969
  <div #ariaRoot
2967
- class="k-grid-aria-root"
2968
- role="grid"
2969
- kendoDragTargetContainer
2970
- kendoDropTargetContainer
2971
- mode="manual"
2972
- [dragDisabled]="!rowReorderable"
2973
- [dropDisabled]="!rowReorderable"
2974
- [dragTargetFilter]="getDefaultSelectors('dragTarget')"
2975
- [dropTargetFilter]="getDefaultSelectors('dropTarget')"
2976
- [dragHandle]="getDefaultSelectors('handle')"
2977
- [hint]="{hintTemplate: customHintTemplate || defaultHint}"
2978
- [hintContext]="hintContext"
2979
- (onPress)="handleReorderEvents($event, 'press')"
2980
- (onDragStart)="handleReorderEvents($event, 'dragStart')"
2981
- (onDrag)="handleReorderEvents($event, 'drag')"
2982
- (onDragEnter)="handleReorderEvents($event, 'dragEnter')"
2983
- (onDragLeave)="handleReorderEvents($event, 'dragLeave')"
2984
- (onDragEnd)="handleReorderEvents($event, 'dragEnd')"
2985
- (onDrop)="handleReorderEvents($event, 'drop')"
2986
- [dragData]="gridData"
2987
- [id]="ariaRootId"
2988
- [attr.aria-label]="ariaLabel"
2989
- [attr.aria-rowcount]="ariaRowCount"
2990
- [attr.aria-colcount]="ariaColCount">
2991
- <ng-container *ngIf="isScrollable">
2992
- <div *ngIf="!hideHeader && !isStacked"
2993
- class="k-grid-header"
2994
- [class.k-grid-draggable-header]="groupable || reorderable"
2995
- role="presentation"
2996
- [style.padding]="headerPadding">
2997
- <div *ngIf="isLocked"
2998
- #lockedHeader
2999
- role="presentation"
3000
- class="k-grid-header-locked"
3001
- [style.width.px]="lockedWidth">
3002
- <table
3003
- kendoGridResizableTable
3004
- [locked]="true"
3005
- role="presentation"
3006
- class="k-grid-header-table"
3007
- [style.width.px]="lockedWidth"
3008
- kendoGridTable
3009
- [size]="size">
3010
- <colgroup kendoGridColGroup
3011
- [columns]="$any(lockedLeafColumns)"
3012
- [groups]="group"
3013
- [detailTemplate]="detailTemplate">
3014
- </colgroup>
3015
- <thead kendoGridHeader
3016
- role="rowgroup"
3017
- [resizable]="resizable"
3018
- [scrollable]="true"
3019
- [columns]="$any(lockedColumns)"
3020
- [totalColumnLevels]="totalColumnLevels"
3021
- [sort]="sort"
3022
- [groups]="group"
3023
- [filter]="filter"
3024
- [filterable]="filterable"
3025
- [groupable]="showGroupPanel"
3026
- [reorderable]="reorderable"
3027
- [sortable]="sortable"
3028
- [columnMenu]="columnMenuOptions"
3029
- [columnMenuTemplate]="columnMenuTemplate"
3030
- [totalColumnsCount]="leafColumns.length"
3031
- [totalColumns]="columnsContainer"
3032
- [detailTemplate]="detailTemplate"
3033
- [tabIndex]="navigation.tableEnabled ? '-1' : '0'">
3034
- </thead>
3035
- </table>
3036
- </div>
3037
- <div #header class="k-grid-header-wrap" role="presentation" data-scrollable
3038
- [kendoGridResizableContainer]="lockedLeafColumns.length > 0"
3039
- [lockedWidth]="lockedWidth + scrollbarWidth + 2">
3040
- <table
3041
- role="presentation"
3042
- class="k-grid-header-table"
3043
- [style.width.px]="nonLockedWidth"
3044
- kendoGridResizableTable
3045
- [virtualColumns]="virtualColumns"
3046
- kendoGridTable
3047
- [size]="size">
3048
- <colgroup kendoGridColGroup
3049
- [columns]="headerLeafColumns"
3050
- [groups]="isLocked ? [] : group"
3051
- [detailTemplate]="detailTemplate">
3052
- </colgroup>
3053
- <thead kendoGridHeader
3054
- [resizable]="resizable"
3055
- role="rowgroup"
3056
- [scrollable]="true"
3057
- [columns]="headerColumns"
3058
- [totalColumnLevels]="totalColumnLevels"
3059
- [sort]="sort"
3060
- [filter]="filter"
3061
- [filterable]="filterable"
3062
- [groupable]="showGroupPanel"
3063
- [reorderable]="reorderable"
3064
- [groups]="isLocked ? [] : group"
3065
- [sortable]="sortable"
3066
- [columnMenu]="columnMenuOptions"
3067
- [columnMenuTemplate]="columnMenuTemplate"
3068
- [lockedColumnsCount]="lockedLeafColumns.length"
3069
- [totalColumnsCount]="leafColumns.length"
3070
- [totalColumns]="columnsContainer"
3071
- [detailTemplate]="detailTemplate"
3072
- [tabIndex]="navigation.tableEnabled ? '-1' : '0'">
3073
- </thead>
3074
- </table>
3075
- <div *ngIf="virtualColumns" class="k-width-container" role="presentation">
3076
- <div [style.width.px]="columnsContainer.unlockedWidth"></div>
3077
- </div>
3078
- </div>
3079
- </div>
3080
- <kendo-grid-list
3081
- [data]="$any(view)"
3082
- [rowHeight]="rowHeight"
3083
- [detailRowHeight]="detailRowHeight"
3084
- [total]="totalCount"
3085
- [take]="pageSize"
3086
- [groups]="group"
3087
- [groupable]="groupable"
3088
- [skip]="skip"
3089
- [trackBy]="trackBy"
3090
- [columns]="columnsContainer"
3091
- [selectable]="selectable"
3092
- [filterable]="filterable"
3093
- [detailTemplate]="detailTemplate"
3094
- [noRecordsTemplate]="noRecordsTemplate"
3095
- [size]="size"
3096
- (pageChange)="notifyPageChange('list', $event)"
3097
- [rowClass]="rowClass"
3098
- [rowSticky]="rowSticky"
3099
- [loading]="loading"
3100
- [isVirtual]="isVirtual"
3101
- [cellLoadingTemplate]="cellLoadingTemplate?.templateRef"
3102
- [loadingTemplate]="loadingTemplate?.templateRef"
3103
- [virtualColumns]="virtualColumns"
3104
- (scrollBottom)="notifyScrollBottom()"
3105
- (contentScroll)="contentScroll.emit($event)"
3106
- kendoDraggable
3107
- kendoGridSelectionMarquee
3108
- [enableDrag]="marqueeSelection"
3109
- [sort]="sort">
3110
- </kendo-grid-list>
3111
- <div
3112
- *ngIf="showFooter"
3113
- class="k-grid-footer"
3114
- [style.padding]="headerPadding">
3115
- <div
3116
- *ngIf="lockedLeafColumns.length && !isStacked"
3117
- class="k-grid-footer-locked"
3118
- [style.width.px]="lockedWidth">
3119
- <table
3120
- role="presentation"
3121
- class="k-grid-footer-table"
3122
- kendoGridResizableTable
3123
- [locked]="true"
3124
- [style.width.px]="lockedWidth"
3125
- kendoGridTable
3126
- [size]="size">
3127
- <colgroup kendoGridColGroup *ngIf="!isStacked"
3128
- [columns]="$any(lockedLeafColumns)"
3129
- [groups]="group"
3130
- [detailTemplate]="detailTemplate">
3131
- </colgroup>
3132
- <tfoot kendoGridFooter
3133
- [scrollable]="true"
3134
- [groups]="group"
3135
- [columns]="$any(lockedLeafColumns)"
3136
- [detailTemplate]="detailTemplate"
3137
- [logicalRowIndex]="ariaRowCount"
3138
- [totalColumns]="columnsContainer"
3139
- [totalColumnsCount]="leafColumns.length">
3140
- </tfoot>
3141
- </table>
3142
- </div>
3143
- <div #footer
3144
- class="k-grid-footer-wrap" data-scrollable
3145
- [kendoGridResizableContainer]="lockedLeafColumns.length > 0 && !isStacked"
3146
- [lockedWidth]="lockedWidth + scrollbarWidth + 3">
3147
- <table
3148
- role="presentation"
3149
- class="k-grid-footer-table"
3150
- [style.width.px]="nonLockedWidth"
3151
- kendoGridTable
3152
- kendoGridResizableTable
3153
- [size]="size">
3154
- <colgroup kendoGridColGroup *ngIf="!isStacked"
3155
- [columns]="$any(headerLeafColumns)"
3156
- [groups]="isLocked ? [] : group"
3157
- [detailTemplate]="detailTemplate">
3158
- </colgroup>
3159
- <tfoot kendoGridFooter
3160
- [logicalRowIndex]="ariaRowCount"
3161
- [scrollable]="true"
3162
- [groups]="isLocked ? [] : group"
3163
- [columns]="$any(headerColumns)"
3164
- [lockedColumnsCount]="isStacked ? 0 : lockedLeafColumns.length"
3165
- [detailTemplate]="detailTemplate"
3166
- [totalColumns]="columnsContainer"
3167
- [totalColumnsCount]="leafColumns.length">
3168
- </tfoot>
3169
- </table>
3170
- </div>
3171
- </div>
3172
- </ng-container>
3173
- <ng-container *ngIf="!isScrollable">
3174
- <table
3175
- [style.table-layout]="resizable ? 'fixed' : null"
3176
- kendoGridTable
3177
- kendoGridResizableTable
3178
- class="k-grid-table"
2970
+ class="k-grid-aria-root"
2971
+ role="grid"
2972
+ kendoDragTargetContainer
2973
+ kendoDropTargetContainer
2974
+ mode="manual"
2975
+ [dragDisabled]="!rowReorderable"
2976
+ [dropDisabled]="!rowReorderable"
2977
+ [dragTargetFilter]="getDefaultSelectors('dragTarget')"
2978
+ [dropTargetFilter]="getDefaultSelectors('dropTarget')"
2979
+ [dragHandle]="getDefaultSelectors('handle')"
2980
+ [hint]="{hintTemplate: customHintTemplate || defaultHint}"
2981
+ [hintContext]="hintContext"
2982
+ (onPress)="handleReorderEvents($event, 'press')"
2983
+ (onDragStart)="handleReorderEvents($event, 'dragStart')"
2984
+ (onDrag)="handleReorderEvents($event, 'drag')"
2985
+ (onDragEnter)="handleReorderEvents($event, 'dragEnter')"
2986
+ (onDragLeave)="handleReorderEvents($event, 'dragLeave')"
2987
+ (onDragEnd)="handleReorderEvents($event, 'dragEnd')"
2988
+ (onDrop)="handleReorderEvents($event, 'drop')"
2989
+ [dragData]="gridData"
2990
+ [id]="ariaRootId"
2991
+ [attr.aria-label]="ariaLabel"
2992
+ [attr.aria-rowcount]="ariaRowCount"
2993
+ [attr.aria-colcount]="ariaColCount">
2994
+ @if (isScrollable) {
2995
+ @if (!hideHeader && !isStacked) {
2996
+ <div
2997
+ class="k-grid-header"
2998
+ [class.k-grid-draggable-header]="groupable || reorderable"
2999
+ role="presentation"
3000
+ [style.padding]="headerPadding">
3001
+ @if (isLocked) {
3002
+ <div
3003
+ #lockedHeader
3179
3004
  role="presentation"
3180
- [size]="size">
3181
- <colgroup kendoGridColGroup
3182
- [columns]="$any(leafColumns)"
3005
+ class="k-grid-header-locked"
3006
+ [style.width.px]="lockedWidth">
3007
+ <table
3008
+ kendoGridResizableTable
3009
+ [locked]="true"
3010
+ role="presentation"
3011
+ class="k-grid-header-table"
3012
+ [style.width.px]="lockedWidth"
3013
+ kendoGridTable
3014
+ [size]="size">
3015
+ <colgroup kendoGridColGroup
3016
+ [columns]="$any(lockedLeafColumns)"
3183
3017
  [groups]="group"
3184
- [sort]="sort"
3185
3018
  [detailTemplate]="detailTemplate">
3186
3019
  </colgroup>
3187
3020
  <thead kendoGridHeader
3188
- *ngIf="!hideHeader && !isStacked"
3189
- class="k-grid-header"
3190
- [class.k-grid-draggable-header]="groupable || reorderable"
3191
- role="rowgroup"
3192
- [resizable]="resizable"
3193
- [scrollable]="false"
3194
- [columns]="$any(visibleColumns)"
3195
- [totalColumnLevels]="totalColumnLevels"
3196
- [totalColumns]="columnsContainer"
3197
- [groups]="group"
3198
- [groupable]="showGroupPanel"
3199
- [reorderable]="reorderable"
3200
- [sort]="sort"
3201
- [sortable]="sortable"
3202
- [filter]="filter"
3203
- [filterable]="filterable"
3204
- [columnMenu]="columnMenuOptions"
3205
- [columnMenuTemplate]="columnMenuTemplate"
3206
- [detailTemplate]="detailTemplate"
3207
- [tabIndex]="navigation.tableEnabled ? '-1' : '0'">
3021
+ role="rowgroup"
3022
+ [resizable]="resizable"
3023
+ [scrollable]="true"
3024
+ [columns]="$any(lockedColumns)"
3025
+ [totalColumnLevels]="totalColumnLevels"
3026
+ [sort]="sort"
3027
+ [groups]="group"
3028
+ [filter]="filter"
3029
+ [filterable]="filterable"
3030
+ [groupable]="showGroupPanel"
3031
+ [reorderable]="reorderable"
3032
+ [sortable]="sortable"
3033
+ [columnMenu]="columnMenuOptions"
3034
+ [columnMenuTemplate]="columnMenuTemplate"
3035
+ [totalColumnsCount]="leafColumns.length"
3036
+ [totalColumns]="columnsContainer"
3037
+ [detailTemplate]="detailTemplate"
3038
+ [tabIndex]="navigation.tableEnabled ? '-1' : '0'">
3208
3039
  </thead>
3209
- <tbody kendoGridTableBody
3210
- [isLoading]="loading"
3211
- [rowHeight]="rowHeight"
3212
- [detailRowHeight]="detailRowHeight"
3213
- [groups]="group"
3214
- [rowsToRender]="rowsToRender"
3215
- [skip]="skip"
3216
- [columns]="$any(leafColumns)"
3217
- [totalColumnsCount]="leafColumns.length"
3218
- [totalColumns]="columnsContainer"
3219
- [selectable]="selectable"
3220
- [filterable]="filterable"
3221
- [noRecordsTemplate]="noRecordsTemplate"
3222
- [detailTemplate]="detailTemplate"
3223
- [trackBy]="trackBy"
3224
- [rowClass]="rowClass"
3225
- kendoDraggable
3226
- kendoGridSelectionMarquee
3227
- [enableDrag]="marqueeSelection">
3228
- </tbody>
3229
- <tfoot kendoGridFooter
3230
- *ngIf="showFooter"
3231
- [scrollable]="false"
3232
- [logicalRowIndex]="ariaRowCount"
3233
- [groups]="group"
3234
- [columns]="$any(leafColumns)"
3235
- [detailTemplate]="detailTemplate"
3236
- [totalColumns]="columnsContainer"
3237
- [totalColumnsCount]="leafColumns.length">
3238
- </tfoot>
3239
- </table>
3240
- </ng-container>
3241
- <div [loadingTemplate]="loadingTemplate" *ngIf="loading" kendoGridLoading></div>
3040
+ </table>
3041
+ </div>
3042
+ }
3043
+ <div #header class="k-grid-header-wrap" role="presentation" data-scrollable
3044
+ [kendoGridResizableContainer]="lockedLeafColumns.length > 0"
3045
+ [lockedWidth]="lockedWidth + scrollbarWidth + 2">
3046
+ <table
3047
+ role="presentation"
3048
+ class="k-grid-header-table"
3049
+ [style.width.px]="nonLockedWidth"
3050
+ kendoGridResizableTable
3051
+ [virtualColumns]="virtualColumns"
3052
+ kendoGridTable
3053
+ [size]="size">
3054
+ <colgroup kendoGridColGroup
3055
+ [columns]="headerLeafColumns"
3056
+ [groups]="isLocked ? [] : group"
3057
+ [detailTemplate]="detailTemplate">
3058
+ </colgroup>
3059
+ <thead kendoGridHeader
3060
+ [resizable]="resizable"
3061
+ role="rowgroup"
3062
+ [scrollable]="true"
3063
+ [columns]="headerColumns"
3064
+ [totalColumnLevels]="totalColumnLevels"
3065
+ [sort]="sort"
3066
+ [filter]="filter"
3067
+ [filterable]="filterable"
3068
+ [groupable]="showGroupPanel"
3069
+ [reorderable]="reorderable"
3070
+ [groups]="isLocked ? [] : group"
3071
+ [sortable]="sortable"
3072
+ [columnMenu]="columnMenuOptions"
3073
+ [columnMenuTemplate]="columnMenuTemplate"
3074
+ [lockedColumnsCount]="lockedLeafColumns.length"
3075
+ [totalColumnsCount]="leafColumns.length"
3076
+ [totalColumns]="columnsContainer"
3077
+ [detailTemplate]="detailTemplate"
3078
+ [tabIndex]="navigation.tableEnabled ? '-1' : '0'">
3079
+ </thead>
3080
+ </table>
3081
+ @if (virtualColumns) {
3082
+ <div class="k-width-container" role="presentation">
3083
+ <div [style.width.px]="columnsContainer.unlockedWidth"></div>
3084
+ </div>
3085
+ }
3086
+ </div>
3087
+ </div>
3088
+ }
3089
+ <kendo-grid-list
3090
+ [data]="$any(view)"
3091
+ [rowHeight]="rowHeight"
3092
+ [detailRowHeight]="detailRowHeight"
3093
+ [total]="totalCount"
3094
+ [take]="pageSize"
3095
+ [groups]="group"
3096
+ [groupable]="groupable"
3097
+ [skip]="skip"
3098
+ [trackBy]="trackBy"
3099
+ [columns]="columnsContainer"
3100
+ [selectable]="selectable"
3101
+ [filterable]="filterable"
3102
+ [detailTemplate]="detailTemplate"
3103
+ [noRecordsTemplate]="noRecordsTemplate"
3104
+ [size]="size"
3105
+ (pageChange)="notifyPageChange('list', $event)"
3106
+ [rowClass]="rowClass"
3107
+ [rowSticky]="rowSticky"
3108
+ [loading]="loading"
3109
+ [isVirtual]="isVirtual"
3110
+ [cellLoadingTemplate]="cellLoadingTemplate?.templateRef"
3111
+ [loadingTemplate]="loadingTemplate?.templateRef"
3112
+ [virtualColumns]="virtualColumns"
3113
+ (scrollBottom)="notifyScrollBottom()"
3114
+ (contentScroll)="contentScroll.emit($event)"
3115
+ kendoDraggable
3116
+ kendoGridSelectionMarquee
3117
+ [enableDrag]="marqueeSelection"
3118
+ [sort]="sort">
3119
+ </kendo-grid-list>
3120
+ @if (showFooter) {
3121
+ <div
3122
+ class="k-grid-footer"
3123
+ [style.padding]="headerPadding">
3124
+ @if (lockedLeafColumns.length && !isStacked) {
3125
+ <div
3126
+ class="k-grid-footer-locked"
3127
+ [style.width.px]="lockedWidth">
3128
+ <table
3129
+ role="presentation"
3130
+ class="k-grid-footer-table"
3131
+ kendoGridResizableTable
3132
+ [locked]="true"
3133
+ [style.width.px]="lockedWidth"
3134
+ kendoGridTable
3135
+ [size]="size">
3136
+ @if (!isStacked) {
3137
+ <colgroup kendoGridColGroup
3138
+ [columns]="$any(lockedLeafColumns)"
3139
+ [groups]="group"
3140
+ [detailTemplate]="detailTemplate">
3141
+ </colgroup>
3142
+ }
3143
+ <tfoot kendoGridFooter
3144
+ [scrollable]="true"
3145
+ [groups]="group"
3146
+ [columns]="$any(lockedLeafColumns)"
3147
+ [detailTemplate]="detailTemplate"
3148
+ [logicalRowIndex]="ariaRowCount"
3149
+ [totalColumns]="columnsContainer"
3150
+ [totalColumnsCount]="leafColumns.length">
3151
+ </tfoot>
3152
+ </table>
3153
+ </div>
3154
+ }
3155
+ <div #footer
3156
+ class="k-grid-footer-wrap" data-scrollable
3157
+ [kendoGridResizableContainer]="lockedLeafColumns.length > 0 && !isStacked"
3158
+ [lockedWidth]="lockedWidth + scrollbarWidth + 3">
3159
+ <table
3160
+ role="presentation"
3161
+ class="k-grid-footer-table"
3162
+ [style.width.px]="nonLockedWidth"
3163
+ kendoGridTable
3164
+ kendoGridResizableTable
3165
+ [size]="size">
3166
+ @if (!isStacked) {
3167
+ <colgroup kendoGridColGroup
3168
+ [columns]="$any(headerLeafColumns)"
3169
+ [groups]="isLocked ? [] : group"
3170
+ [detailTemplate]="detailTemplate">
3171
+ </colgroup>
3172
+ }
3173
+ <tfoot kendoGridFooter
3174
+ [logicalRowIndex]="ariaRowCount"
3175
+ [scrollable]="true"
3176
+ [groups]="isLocked ? [] : group"
3177
+ [columns]="$any(headerColumns)"
3178
+ [lockedColumnsCount]="isStacked ? 0 : lockedLeafColumns.length"
3179
+ [detailTemplate]="detailTemplate"
3180
+ [totalColumns]="columnsContainer"
3181
+ [totalColumnsCount]="leafColumns.length">
3182
+ </tfoot>
3183
+ </table>
3184
+ </div>
3185
+ </div>
3186
+ }
3187
+ }
3188
+ @if (!isScrollable) {
3189
+ <table
3190
+ [style.table-layout]="resizable ? 'fixed' : null"
3191
+ kendoGridTable
3192
+ kendoGridResizableTable
3193
+ class="k-grid-table"
3194
+ role="presentation"
3195
+ [size]="size">
3196
+ <colgroup kendoGridColGroup
3197
+ [columns]="$any(leafColumns)"
3198
+ [groups]="group"
3199
+ [sort]="sort"
3200
+ [detailTemplate]="detailTemplate">
3201
+ </colgroup>
3202
+ @if (!hideHeader && !isStacked) {
3203
+ <thead kendoGridHeader
3204
+ class="k-grid-header"
3205
+ [class.k-grid-draggable-header]="groupable || reorderable"
3206
+ role="rowgroup"
3207
+ [resizable]="resizable"
3208
+ [scrollable]="false"
3209
+ [columns]="$any(visibleColumns)"
3210
+ [totalColumnLevels]="totalColumnLevels"
3211
+ [totalColumns]="columnsContainer"
3212
+ [groups]="group"
3213
+ [groupable]="showGroupPanel"
3214
+ [reorderable]="reorderable"
3215
+ [sort]="sort"
3216
+ [sortable]="sortable"
3217
+ [filter]="filter"
3218
+ [filterable]="filterable"
3219
+ [columnMenu]="columnMenuOptions"
3220
+ [columnMenuTemplate]="columnMenuTemplate"
3221
+ [detailTemplate]="detailTemplate"
3222
+ [tabIndex]="navigation.tableEnabled ? '-1' : '0'">
3223
+ </thead>
3224
+ }
3225
+ <tbody kendoGridTableBody
3226
+ [isLoading]="loading"
3227
+ [rowHeight]="rowHeight"
3228
+ [detailRowHeight]="detailRowHeight"
3229
+ [groups]="group"
3230
+ [rowsToRender]="rowsToRender"
3231
+ [skip]="skip"
3232
+ [columns]="$any(leafColumns)"
3233
+ [totalColumnsCount]="leafColumns.length"
3234
+ [totalColumns]="columnsContainer"
3235
+ [selectable]="selectable"
3236
+ [filterable]="filterable"
3237
+ [noRecordsTemplate]="noRecordsTemplate"
3238
+ [detailTemplate]="detailTemplate"
3239
+ [trackBy]="trackBy"
3240
+ [rowClass]="rowClass"
3241
+ kendoDraggable
3242
+ kendoGridSelectionMarquee
3243
+ [enableDrag]="marqueeSelection">
3244
+ </tbody>
3245
+ @if (showFooter) {
3246
+ <tfoot kendoGridFooter
3247
+ [scrollable]="false"
3248
+ [logicalRowIndex]="ariaRowCount"
3249
+ [groups]="group"
3250
+ [columns]="$any(leafColumns)"
3251
+ [detailTemplate]="detailTemplate"
3252
+ [totalColumns]="columnsContainer"
3253
+ [totalColumnsCount]="leafColumns.length">
3254
+ </tfoot>
3255
+ }
3256
+ </table>
3257
+ }
3258
+ @if (loading) {
3259
+ <div [loadingTemplate]="loadingTemplate" kendoGridLoading></div>
3260
+ }
3242
3261
  </div>
3243
- <kendo-grid-status-bar
3244
- *ngIf="showStatusBar"
3262
+ @if (showStatusBar) {
3263
+ <kendo-grid-status-bar
3245
3264
  [statusBarTemplate]="statusBarTemplate">
3246
- </kendo-grid-status-bar>
3247
- <kendo-pager
3248
- *ngIf="showBottomPager"
3265
+ </kendo-grid-status-bar>
3266
+ }
3267
+ @if (showBottomPager) {
3268
+ <kendo-pager
3249
3269
  #bottomPager
3250
3270
  class="k-grid-pager"
3251
3271
  [navigable]="navigation.pagerEnabled"
@@ -3264,71 +3284,90 @@ export class GridComponent {
3264
3284
  (pageTextVisibilityChange)="handlePagerVisibilityChange('showPagerPageText', $event)"
3265
3285
  (itemsTextVisibilityChange)="handlePagerVisibilityChange('showPagerItemsText', $event)">
3266
3286
  <ng-template kendoPagerTemplate>
3267
- <ng-container
3268
- [ngTemplateOutlet]="pagerTemplate ? pagerTemplate?.templateRef : defaultPager"
3269
- [ngTemplateOutletContext]="bottomPager.templateContext"></ng-container>
3287
+ <ng-container
3288
+ [ngTemplateOutlet]="pagerTemplate ? pagerTemplate?.templateRef : defaultPager"
3289
+ [ngTemplateOutletContext]="bottomPager.templateContext"></ng-container>
3270
3290
  </ng-template>
3271
3291
  <kendo-pager-messages
3272
- [ariaLabel]="messageFor('pagerLabel')"
3273
- [firstPage]="messageFor('pagerFirstPage')"
3274
- [inputLabel]="messageFor('pagerInputLabel')"
3275
- [previousPage]="messageFor('pagerPreviousPage')"
3276
- [nextPage]="messageFor('pagerNextPage')"
3277
- [lastPage]="messageFor('pagerLastPage')"
3278
- [selectPage]="messageFor('pagerSelectPage')"
3279
- [page]="messageFor('pagerPage')"
3280
- [itemsPerPage]="messageFor('pagerItemsPerPage')"
3281
- [items]="messageFor('pagerItems')"
3282
- [of]="messageFor('pagerOf')"
3283
- [pageNumberInputTitle]="messageFor('pagerPageNumberInputTitle')">
3292
+ [ariaLabel]="messageFor('pagerLabel')"
3293
+ [firstPage]="messageFor('pagerFirstPage')"
3294
+ [inputLabel]="messageFor('pagerInputLabel')"
3295
+ [previousPage]="messageFor('pagerPreviousPage')"
3296
+ [nextPage]="messageFor('pagerNextPage')"
3297
+ [lastPage]="messageFor('pagerLastPage')"
3298
+ [selectPage]="messageFor('pagerSelectPage')"
3299
+ [page]="messageFor('pagerPage')"
3300
+ [itemsPerPage]="messageFor('pagerItemsPerPage')"
3301
+ [items]="messageFor('pagerItems')"
3302
+ [of]="messageFor('pagerOf')"
3303
+ [pageNumberInputTitle]="messageFor('pagerPageNumberInputTitle')">
3284
3304
  </kendo-pager-messages>
3285
- </kendo-pager>
3286
- <kendo-grid-toolbar
3305
+ </kendo-pager>
3306
+ }
3307
+ @if (showBottomToolbar) {
3308
+ <kendo-grid-toolbar
3287
3309
  class="k-grid-toolbar-bottom"
3288
- *ngIf="showBottomToolbar"
3289
3310
  [size]="size"
3290
3311
  [navigable]="navigation.toolbarEnabled"
3291
3312
  [attr.aria-label]="messageFor('bottomToolbarLabel')"
3292
3313
  [attr.aria-controls]="ariaRootId"
3293
3314
  position="bottom">
3294
- </kendo-grid-toolbar>
3295
-
3315
+ </kendo-grid-toolbar>
3316
+ }
3317
+
3296
3318
  <ng-template #defaultHint>
3297
- <kendo-icon-wrapper
3298
- [name]="getHintSettings('hintIcon')"
3299
- [svgIcon]="getHintSettings('hintSVGIcon')"
3300
- innerCssClass="k-drag-status">
3301
- </kendo-icon-wrapper>
3302
- {{hintText}}
3319
+ <kendo-icon-wrapper
3320
+ [name]="getHintSettings('hintIcon')"
3321
+ [svgIcon]="getHintSettings('hintSVGIcon')"
3322
+ innerCssClass="k-drag-status">
3323
+ </kendo-icon-wrapper>
3324
+ {{hintText}}
3303
3325
  </ng-template>
3304
-
3326
+
3305
3327
  <ng-template #defaultPager>
3306
- <div class="k-pager-numbers-wrap">
3307
- <kendo-pager-prev-buttons [size]="size" *ngIf="normalizedPageableSettings.previousNext"></kendo-pager-prev-buttons>
3308
- <kendo-pager-numeric-buttons
3309
- [size]="size"
3310
- *ngIf="normalizedPageableSettings.type === 'numeric' && normalizedPageableSettings.buttonCount > 0"
3311
- [buttonCount]="normalizedPageableSettings.buttonCount">
3312
- </kendo-pager-numeric-buttons>
3313
- <kendo-pager-input [size]="size" *ngIf="normalizedPageableSettings.type === 'input' || showPagerInput" [showPageText]="showPagerPageText"></kendo-pager-input>
3314
- <kendo-pager-next-buttons [size]="size" *ngIf="normalizedPageableSettings.previousNext"></kendo-pager-next-buttons>
3315
- </div>
3316
- <kendo-pager-page-sizes *ngIf="normalizedPageableSettings.pageSizes"
3328
+ <div class="k-pager-numbers-wrap">
3329
+ @if (normalizedPageableSettings.previousNext) {
3330
+ <kendo-pager-prev-buttons [size]="size"></kendo-pager-prev-buttons>
3331
+ }
3332
+ @if (normalizedPageableSettings.type === 'numeric' && normalizedPageableSettings.buttonCount > 0) {
3333
+ <kendo-pager-numeric-buttons
3317
3334
  [size]="size"
3318
- [pageSizes]="normalizedPageableSettings.pageSizes"
3319
- [showItemsText]="showPagerItemsText">
3335
+ [buttonCount]="normalizedPageableSettings.buttonCount">
3336
+ </kendo-pager-numeric-buttons>
3337
+ }
3338
+ @if (normalizedPageableSettings.type === 'input' || showPagerInput) {
3339
+ <kendo-pager-input [size]="size" [showPageText]="showPagerPageText"></kendo-pager-input>
3340
+ }
3341
+ @if (normalizedPageableSettings.previousNext) {
3342
+ <kendo-pager-next-buttons [size]="size"></kendo-pager-next-buttons>
3343
+ }
3344
+ </div>
3345
+ @if (normalizedPageableSettings.pageSizes) {
3346
+ <kendo-pager-page-sizes
3347
+ [size]="size"
3348
+ [pageSizes]="normalizedPageableSettings.pageSizes"
3349
+ [showItemsText]="showPagerItemsText">
3320
3350
  </kendo-pager-page-sizes>
3321
- <kendo-pager-info *ngIf="normalizedPageableSettings.info">
3351
+ }
3352
+ @if (normalizedPageableSettings.info) {
3353
+ <kendo-pager-info>
3322
3354
  </kendo-pager-info>
3355
+ }
3323
3356
  </ng-template>
3324
3357
  <div #dialogContainer></div>
3325
3358
  <div #windowContainer></div>
3326
-
3327
- <kendo-grid-adaptive-renderer *ngIf="isAdaptiveModeEnabled"></kendo-grid-adaptive-renderer>
3328
- <kendo-resize-sensor *ngIf="isVirtual" (resize)="onResize()"></kendo-resize-sensor>
3329
-
3330
- <div kendoWatermarkOverlay *ngIf="showLicenseWatermark" [licenseMessage]="licenseMessage"></div>
3331
- `, isInline: true, dependencies: [{ kind: "directive", type: LocalizedMessagesDirective, selector: "[kendoGridLocalizedMessages]" }, { kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: GridToolbarComponent, selector: "kendo-grid-toolbar", inputs: ["position", "size", "navigable"] }, { kind: "component", type: GroupPanelComponent, selector: "kendo-grid-group-panel", inputs: ["text", "navigable", "groups"], outputs: ["change"] }, { kind: "directive", type: TableDirective, selector: "[kendoGridResizableTable]", inputs: ["locked", "virtualColumns"] }, { kind: "directive", type: GridTableDirective, selector: "[kendoGridTable]", inputs: ["size"] }, { kind: "component", type: ColGroupComponent, selector: "[kendoGridColGroup]", inputs: ["columns", "groups", "detailTemplate", "sort"] }, { kind: "component", type: HeaderComponent, selector: "[kendoGridHeader]", inputs: ["totalColumnLevels", "columns", "groups", "detailTemplate", "scrollable", "filterable", "sort", "filter", "sortable", "groupable", "lockedColumnsCount", "resizable", "reorderable", "columnMenu", "columnMenuTemplate", "totalColumnsCount", "totalColumns", "tabIndex", "size"] }, { kind: "directive", type: ResizableContainerDirective, selector: "[kendoGridResizableContainer]", inputs: ["lockedWidth", "kendoGridResizableContainer"] }, { kind: "component", type: ListComponent, selector: "kendo-grid-list", inputs: ["data", "groups", "total", "rowHeight", "detailRowHeight", "take", "skip", "columns", "detailTemplate", "noRecordsTemplate", "selectable", "groupable", "filterable", "rowClass", "rowSticky", "loading", "trackBy", "virtualColumns", "isVirtual", "cellLoadingTemplate", "loadingTemplate", "sort", "size"], outputs: ["contentScroll", "pageChange", "scrollBottom"] }, { kind: "directive", type: DragTargetContainerDirective, selector: "[kendoDragTargetContainer]", inputs: ["hint", "dragTargetFilter", "dragHandle", "dragDelay", "threshold", "dragTargetId", "dragData", "dragDisabled", "mode", "cursorStyle", "hintContext"], outputs: ["onDragReady", "onPress", "onDragStart", "onDrag", "onRelease", "onDragEnd"], exportAs: ["kendoDragTargetContainer"] }, { kind: "directive", type: DropTargetContainerDirective, selector: "[kendoDropTargetContainer]", inputs: ["dropTargetFilter", "dropDisabled"], outputs: ["onDragEnter", "onDragOver", "onDragLeave", "onDrop"], exportAs: ["kendoDropTargetContainer"] }, { kind: "directive", type: DraggableDirective, selector: "[kendoDraggable]", inputs: ["enableDrag"], outputs: ["kendoPress", "kendoDrag", "kendoRelease"] }, { kind: "directive", type: GridMarqueeDirective, selector: "[kendoGridSelectionMarquee]" }, { kind: "component", type: FooterComponent, selector: "[kendoGridFooter]", inputs: ["columns", "groups", "detailTemplate", "scrollable", "lockedColumnsCount", "logicalRowIndex", "totalColumns", "totalColumnsCount"] }, { kind: "component", type: TableBodyComponent, selector: "[kendoGridTableBody]", inputs: ["columns", "allColumns", "groups", "detailTemplate", "noRecordsTemplate", "rowsToRender", "skip", "selectable", "filterable", "noRecordsText", "isLocked", "isLoading", "isVirtual", "cellLoadingTemplate", "skipGroupDecoration", "lockedColumnsCount", "totalColumnsCount", "virtualColumns", "trackBy", "rowSticky", "totalColumns", "rowClass", "rowHeight", "detailRowHeight"] }, { kind: "component", type: LoadingComponent, selector: "[kendoGridLoading]", inputs: ["loadingTemplate"] }, { kind: "component", type: StatusBarComponent, selector: "kendo-grid-status-bar", inputs: ["statusBarTemplate"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "component", type: WatermarkOverlayComponent, selector: "div[kendoWatermarkOverlay]", inputs: ["licenseMessage"] }, { kind: "component", type: i27.CustomMessagesComponent, selector: "kendo-datapager-messages, kendo-pager-messages" }, { kind: "component", type: i27.PagerInfoComponent, selector: "kendo-datapager-info, kendo-pager-info" }, { kind: "component", type: i27.PagerInputComponent, selector: "kendo-datapager-input, kendo-pager-input", inputs: ["showPageText", "size"] }, { kind: "component", type: i27.PagerNextButtonsComponent, selector: "kendo-datapager-next-buttons, kendo-pager-next-buttons", inputs: ["size"] }, { kind: "component", type: i27.PagerNumericButtonsComponent, selector: "kendo-datapager-numeric-buttons, kendo-pager-numeric-buttons", inputs: ["buttonCount", "size"] }, { kind: "component", type: i27.PagerPageSizesComponent, selector: "kendo-datapager-page-sizes, kendo-pager-page-sizes", inputs: ["showItemsText", "pageSizes", "size", "adaptiveMode"] }, { kind: "component", type: i27.PagerPrevButtonsComponent, selector: "kendo-datapager-prev-buttons, kendo-pager-prev-buttons", inputs: ["size"] }, { kind: "directive", type: i27.PagerTemplateDirective, selector: "[kendoDataPagerTemplate], [kendoPagerTemplate]" }, { kind: "component", type: i27.PagerComponent, selector: "kendo-datapager, kendo-pager", inputs: ["externalTemplate", "total", "skip", "pageSize", "buttonCount", "info", "type", "pageSizeValues", "previousNext", "navigable", "size", "responsive", "adaptiveMode"], outputs: ["pageChange", "pageSizeChange", "pagerInputVisibilityChange", "pageTextVisibilityChange", "itemsTextVisibilityChange"], exportAs: ["kendoDataPager", "kendoPager"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: AdaptiveRendererComponent, selector: "kendo-grid-adaptive-renderer" }, { kind: "component", type: ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }], encapsulation: i0.ViewEncapsulation.None });
3359
+
3360
+ @if (isAdaptiveModeEnabled) {
3361
+ <kendo-grid-adaptive-renderer></kendo-grid-adaptive-renderer>
3362
+ }
3363
+ @if (isVirtual) {
3364
+ <kendo-resize-sensor (resize)="onResize()"></kendo-resize-sensor>
3365
+ }
3366
+
3367
+ @if (showLicenseWatermark) {
3368
+ <div kendoWatermarkOverlay [licenseMessage]="licenseMessage"></div>
3369
+ }
3370
+ `, isInline: true, dependencies: [{ kind: "directive", type: LocalizedMessagesDirective, selector: "[kendoGridLocalizedMessages]" }, { kind: "component", type: GridToolbarComponent, selector: "kendo-grid-toolbar", inputs: ["position", "size", "navigable"] }, { kind: "component", type: GroupPanelComponent, selector: "kendo-grid-group-panel", inputs: ["text", "navigable", "groups"], outputs: ["change"] }, { kind: "directive", type: TableDirective, selector: "[kendoGridResizableTable]", inputs: ["locked", "virtualColumns"] }, { kind: "directive", type: GridTableDirective, selector: "[kendoGridTable]", inputs: ["size"] }, { kind: "component", type: ColGroupComponent, selector: "[kendoGridColGroup]", inputs: ["columns", "groups", "detailTemplate", "sort"] }, { kind: "component", type: HeaderComponent, selector: "[kendoGridHeader]", inputs: ["totalColumnLevels", "columns", "groups", "detailTemplate", "scrollable", "filterable", "sort", "filter", "sortable", "groupable", "lockedColumnsCount", "resizable", "reorderable", "columnMenu", "columnMenuTemplate", "totalColumnsCount", "totalColumns", "tabIndex", "size"] }, { kind: "directive", type: ResizableContainerDirective, selector: "[kendoGridResizableContainer]", inputs: ["lockedWidth", "kendoGridResizableContainer"] }, { kind: "component", type: ListComponent, selector: "kendo-grid-list", inputs: ["data", "groups", "total", "rowHeight", "detailRowHeight", "take", "skip", "columns", "detailTemplate", "noRecordsTemplate", "selectable", "groupable", "filterable", "rowClass", "rowSticky", "loading", "trackBy", "virtualColumns", "isVirtual", "cellLoadingTemplate", "loadingTemplate", "sort", "size"], outputs: ["contentScroll", "pageChange", "scrollBottom"] }, { kind: "directive", type: DragTargetContainerDirective, selector: "[kendoDragTargetContainer]", inputs: ["hint", "dragTargetFilter", "dragHandle", "dragDelay", "threshold", "dragTargetId", "dragData", "dragDisabled", "mode", "cursorStyle", "hintContext"], outputs: ["onDragReady", "onPress", "onDragStart", "onDrag", "onRelease", "onDragEnd"], exportAs: ["kendoDragTargetContainer"] }, { kind: "directive", type: DropTargetContainerDirective, selector: "[kendoDropTargetContainer]", inputs: ["dropTargetFilter", "dropDisabled"], outputs: ["onDragEnter", "onDragOver", "onDragLeave", "onDrop"], exportAs: ["kendoDropTargetContainer"] }, { kind: "directive", type: DraggableDirective, selector: "[kendoDraggable]", inputs: ["enableDrag"], outputs: ["kendoPress", "kendoDrag", "kendoRelease"] }, { kind: "directive", type: GridMarqueeDirective, selector: "[kendoGridSelectionMarquee]" }, { kind: "component", type: FooterComponent, selector: "[kendoGridFooter]", inputs: ["columns", "groups", "detailTemplate", "scrollable", "lockedColumnsCount", "logicalRowIndex", "totalColumns", "totalColumnsCount"] }, { kind: "component", type: TableBodyComponent, selector: "[kendoGridTableBody]", inputs: ["columns", "allColumns", "groups", "detailTemplate", "noRecordsTemplate", "rowsToRender", "skip", "selectable", "filterable", "noRecordsText", "isLocked", "isLoading", "isVirtual", "cellLoadingTemplate", "skipGroupDecoration", "lockedColumnsCount", "totalColumnsCount", "virtualColumns", "trackBy", "rowSticky", "totalColumns", "rowClass", "rowHeight", "detailRowHeight"] }, { kind: "component", type: LoadingComponent, selector: "[kendoGridLoading]", inputs: ["loadingTemplate"] }, { kind: "component", type: StatusBarComponent, selector: "kendo-grid-status-bar", inputs: ["statusBarTemplate"] }, { kind: "component", type: IconWrapperComponent, selector: "kendo-icon-wrapper", inputs: ["name", "svgIcon", "innerCssClass", "customFontClass", "size"], exportAs: ["kendoIconWrapper"] }, { kind: "component", type: WatermarkOverlayComponent, selector: "div[kendoWatermarkOverlay]", inputs: ["licenseMessage"] }, { kind: "component", type: i27.CustomMessagesComponent, selector: "kendo-datapager-messages, kendo-pager-messages" }, { kind: "component", type: i27.PagerInfoComponent, selector: "kendo-datapager-info, kendo-pager-info" }, { kind: "component", type: i27.PagerInputComponent, selector: "kendo-datapager-input, kendo-pager-input", inputs: ["showPageText", "size"] }, { kind: "component", type: i27.PagerNextButtonsComponent, selector: "kendo-datapager-next-buttons, kendo-pager-next-buttons", inputs: ["size"] }, { kind: "component", type: i27.PagerNumericButtonsComponent, selector: "kendo-datapager-numeric-buttons, kendo-pager-numeric-buttons", inputs: ["buttonCount", "size"] }, { kind: "component", type: i27.PagerPageSizesComponent, selector: "kendo-datapager-page-sizes, kendo-pager-page-sizes", inputs: ["showItemsText", "pageSizes", "size", "adaptiveMode"] }, { kind: "component", type: i27.PagerPrevButtonsComponent, selector: "kendo-datapager-prev-buttons, kendo-pager-prev-buttons", inputs: ["size"] }, { kind: "directive", type: i27.PagerTemplateDirective, selector: "[kendoDataPagerTemplate], [kendoPagerTemplate]" }, { kind: "component", type: i27.PagerComponent, selector: "kendo-datapager, kendo-pager", inputs: ["externalTemplate", "total", "skip", "pageSize", "buttonCount", "info", "type", "pageSizeValues", "previousNext", "navigable", "size", "responsive", "adaptiveMode"], outputs: ["pageChange", "pageSizeChange", "pagerInputVisibilityChange", "pageTextVisibilityChange", "itemsTextVisibilityChange"], exportAs: ["kendoDataPager", "kendoPager"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: AdaptiveRendererComponent, selector: "kendo-grid-adaptive-renderer" }, { kind: "component", type: ResizeSensorComponent, selector: "kendo-resize-sensor", inputs: ["rateLimit"], outputs: ["resize"] }], encapsulation: i0.ViewEncapsulation.None });
3332
3371
  }
3333
3372
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GridComponent, decorators: [{
3334
3373
  type: Component,
@@ -3390,410 +3429,411 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
3390
3429
  selector: 'kendo-grid',
3391
3430
  template: `
3392
3431
  <ng-container kendoGridLocalizedMessages
3393
- i18n-groupPanelEmpty="kendo.grid.groupPanelEmpty|The label visible in the Grid group panel when it is empty"
3394
- groupPanelEmpty="Drag a column header and drop it here to group by that column"
3395
-
3396
- i18n-noRecords="kendo.grid.noRecords|The label visible in the Grid when there are no records"
3397
- noRecords="No records available."
3398
-
3399
- i18n-pagerLabel="kendo.grid.pagerLabel|The label for the Grid pager"
3400
- pagerLabel="{{ 'Page navigation, page {currentPage} of {totalPages}' }}"
3401
-
3402
- i18n-pagerFirstPage="kendo.grid.pagerFirstPage|The label for the first page button in Grid pager"
3403
- pagerFirstPage="Go to the first page"
3404
-
3405
- i18n-pagerPreviousPage="kendo.grid.pagerPreviousPage|The label for the previous page button in Grid pager"
3406
- pagerPreviousPage="Go to the previous page"
3407
-
3408
- i18n-pagerNextPage="kendo.grid.pagerNextPage|The label for the next page button in Grid pager"
3409
- pagerNextPage="Go to the next page"
3410
-
3411
- i18n-pagerLastPage="kendo.grid.pagerLastPage|The label for the last page button in Grid pager"
3412
- pagerLastPage="Go to the last page"
3413
-
3414
- i18n-pagerPage="kendo.grid.pagerPage|The label before the current page number in the Grid pager"
3415
- pagerPage="Page"
3416
-
3417
- i18n-pagerOf="kendo.grid.pagerOf|The label before the total pages number in the Grid pager"
3418
- pagerOf="of"
3419
-
3420
- i18n-pagerItems="kendo.grid.pagerItems|The label after the total pages number in the Grid pager"
3421
- pagerItems="items"
3422
-
3423
- i18n-pagerPageNumberInputTitle="kendo.grid.pagerPageNumberInputTitle|The label for the pager input in the Grid pager"
3424
- pagerPageNumberInputTitle="Page Number"
3425
-
3426
- i18n-pagerItemsPerPage="kendo.grid.pagerItemsPerPage|The label for the page size chooser in the Grid pager"
3427
- pagerItemsPerPage="items per page"
3428
-
3429
- i18n-pagerInputLabel="kendo.grid.pagerInputLabel|The text of the aria-label attribute applied to the input element for entering the page number"
3430
- pagerInputLabel="Type a page number"
3431
-
3432
- i18n-filter="kendo.grid.filter|The label of the filter cell or icon"
3433
- filter="Filter"
3434
-
3435
- i18n-filterInputLabel="kendo.grid.filterInputLabel|The label of the filter row and menu inputs"
3436
- filterInputLabel="{{ '{columnName} Filter' }}"
3437
-
3438
- i18n-filterMenuTitle="kendo.grid.filterMenuTitle|The title of the filter menu icon"
3439
- filterMenuTitle="{{ '{columnName} Filter Menu' }}"
3440
-
3441
- i18n-filterMenuOperatorsDropDownLabel="kendo.grid.filterMenuOperatorsDropDownLabel|The label of the filter menu operators dropdown"
3442
- filterMenuOperatorsDropDownLabel="{{ '{columnName} Filter Operators' }}"
3443
-
3444
- i18n-filterCellOperatorLabel="kendo.grid.filterCellOperatorLabel|The label of the filter cell operators dropdown"
3445
- filterCellOperatorLabel="{{ 'Filter cell operators for {columnName}' }}"
3446
-
3447
- i18n-booleanFilterCellLabel="kendo.grid.booleanFilterCellLabel|The label of the boolean filter cell dropdown"
3448
- booleanFilterCellLabel="{{ 'Boolean filter cell for {columnName}' }}"
3449
-
3450
- i18n-filterMenuLogicDropDownLabel="kendo.grid.filterMenuLogicDropDownLabel|The label of the filter menu logic dropdown"
3451
- filterMenuLogicDropDownLabel="{{ '{columnName} Filter Logic' }}"
3452
-
3453
- i18n-filterEqOperator="kendo.grid.filterEqOperator|The text of the equal filter operator"
3454
- filterEqOperator="Is equal to"
3455
-
3456
- i18n-filterNotEqOperator="kendo.grid.filterNotEqOperator|The text of the not equal filter operator"
3457
- filterNotEqOperator="Is not equal to"
3458
-
3459
- i18n-filterIsNullOperator="kendo.grid.filterIsNullOperator|The text of the is null filter operator"
3460
- filterIsNullOperator="Is null"
3461
-
3462
- i18n-filterIsNotNullOperator="kendo.grid.filterIsNotNullOperator|The text of the is not null filter operator"
3463
- filterIsNotNullOperator="Is not null"
3464
-
3465
- i18n-filterIsEmptyOperator="kendo.grid.filterIsEmptyOperator|The text of the is empty filter operator"
3466
- filterIsEmptyOperator="Is empty"
3467
-
3468
- i18n-filterIsNotEmptyOperator="kendo.grid.filterIsNotEmptyOperator|The text of the is not empty filter operator"
3469
- filterIsNotEmptyOperator="Is not empty"
3470
-
3471
- i18n-filterStartsWithOperator="kendo.grid.filterStartsWithOperator|The text of the starts with filter operator"
3472
- filterStartsWithOperator="Starts with"
3473
-
3474
- i18n-filterContainsOperator="kendo.grid.filterContainsOperator|The text of the contains filter operator"
3475
- filterContainsOperator="Contains"
3476
-
3477
- i18n-filterNotContainsOperator="kendo.grid.filterNotContainsOperator|The text of the does not contain filter operator"
3478
- filterNotContainsOperator="Does not contain"
3479
-
3480
- i18n-filterEndsWithOperator="kendo.grid.filterEndsWithOperator|The text of the ends with filter operator"
3481
- filterEndsWithOperator="Ends with"
3482
-
3483
- i18n-filterGteOperator="kendo.grid.filterGteOperator|The text of the greater than or equal filter operator"
3484
- filterGteOperator="Is greater than or equal to"
3485
-
3486
- i18n-filterGtOperator="kendo.grid.filterGtOperator|The text of the greater than filter operator"
3487
- filterGtOperator="Is greater than"
3488
-
3489
- i18n-filterLteOperator="kendo.grid.filterLteOperator|The text of the less than or equal filter operator"
3490
- filterLteOperator="Is less than or equal to"
3491
-
3492
- i18n-filterLtOperator="kendo.grid.filterLtOperator|The text of the less than filter operator"
3493
- filterLtOperator="Is less than"
3494
-
3495
- i18n-filterIsTrue="kendo.grid.filterIsTrue|The text of the IsTrue boolean filter option"
3496
- filterIsTrue="Is True"
3497
-
3498
- i18n-filterIsFalse="kendo.grid.filterIsFalse|The text of the IsFalse boolean filter option"
3499
- filterIsFalse="Is False"
3500
-
3501
- i18n-filterBooleanAll="kendo.grid.filterBooleanAll|The text of the (All) boolean filter option"
3502
- filterBooleanAll="(All)"
3503
-
3504
- i18n-filterAfterOrEqualOperator="kendo.grid.filterAfterOrEqualOperator|The text of the after or equal date filter operator"
3505
- filterAfterOrEqualOperator="Is after or equal to"
3506
-
3507
- i18n-filterAfterOperator="kendo.grid.filterAfterOperator|The text of the after date filter operator"
3508
- filterAfterOperator="Is after"
3509
-
3510
- i18n-filterBeforeOperator="kendo.grid.filterBeforeOperator|The text of the before date filter operator"
3511
- filterBeforeOperator="Is before"
3512
-
3513
- i18n-filterBeforeOrEqualOperator="kendo.grid.filterBeforeOrEqualOperator|The text of the before or equal date filter operator"
3514
- filterBeforeOrEqualOperator="Is before or equal to"
3515
-
3516
- i18n-filterFilterButton="kendo.grid.filterFilterButton|The text of the filter button"
3517
- filterFilterButton="Filter"
3518
-
3519
- i18n-filterClearButton="kendo.grid.filterClearButton|The text of the clear filter button"
3520
- filterClearButton="Clear"
3521
-
3522
- i18n-sortClearButton="kendo.grid.sortClearButton|The text of the clear sort button located in the Sort Toolbar Tool and adaptive Sort Toolbar Tool"
3523
- sortClearButton="Clear sorting"
3524
-
3525
- i18n-adaptiveCloseButtonTitle="kendo.grid.adaptiveCloseButtonTitle|The title of the Close button of the ActionSheet that is rendered instead of the Popup when using small screen devices in adaptive mode"
3526
- adaptiveCloseButtonTitle="Close"
3527
-
3528
- i18n-adaptiveBackButtonTitle="kendo.grid.adaptiveBackButtonTitle|The title of the Back button of the ActionSheet that is rendered instead of the Popup when using small screen devices in adaptive mode"
3529
- adaptiveBackButtonTitle="Back"
3530
-
3531
- i18n-filterClearAllButton="kendo.grid.filterClearAllButton|The text of the clear all filters button located in the Filter Toolbar Tool and adaptive Filter Toolbar Tool"
3532
- filterClearAllButton="Clear all filters"
3533
-
3534
- i18n-groupClearButton="kendo.grid.groupClearButton|The text of the clear grouping button in the Group Toolbar Tool and adaptive Group Toolbar Tool"
3535
- groupClearButton="Clear grouping"
3536
-
3537
- i18n-sortDoneButton="kendo.grid.sortDoneButton|The text of the done sort button"
3538
- sortDoneButton="Done"
3539
-
3540
- i18n-groupDoneButton="kendo.grid.groupDoneButton|The text of the done group button in the adaptive Group Toolbar Tool"
3541
- groupDoneButton="Done"
3542
-
3543
- i18n-filterAndLogic="kendo.grid.filterAndLogic|The text of the And filter logic"
3544
- filterAndLogic="And"
3545
-
3546
- i18n-filterOrLogic="kendo.grid.filterOrLogic|The text of the Or filter logic"
3547
- filterOrLogic="Or"
3548
-
3549
- i18n-filterToolbarToolText="kendo.grid.filterToolbarToolText|The button text of the Filter toolbar tool"
3550
- filterToolbarToolText="Filter"
3551
-
3552
- i18n-loading="kendo.grid.loading|The loading text"
3553
- loading="Loading"
3554
-
3555
- i18n-gridLabel="kendo.grid.gridLabel|The Grid aria-label"
3556
- gridLabel="Data table"
3557
-
3558
- i18n-columnMenu="kendo.grid.columnMenu|The title of the column menu icon"
3559
- columnMenu="{{ '{columnName} Column Menu' }}"
3560
-
3561
- i18n-columns="kendo.grid.columns|The text for the Grid Column Chooser and Column Chooser toolbar tool"
3562
- columns="Columns"
3563
-
3564
- i18n-columnsSubtitle="kendo.grid.columnsSubtitle|The subtitle for the adaptive Grid Column Chooser and Column Chooser toolbar tool"
3565
- columnsSubtitle="Selected fields are visible"
3566
-
3567
- i18n-adaptiveFilterTitle="kendo.grid.adaptiveFilterTitle|The title that is displayed in the adaptive Filter Toolbar Tool and Filter Menu"
3568
- adaptiveFilterTitle="Filter by"
3569
-
3570
- i18n-adaptiveFilterOperatorsTitle="kendo.grid.adaptiveFilterOperatorsTitle|The title that is displayed in the Operators Action Sheet"
3571
- adaptiveFilterOperatorsTitle="Operators"
3572
-
3573
- i18n-adaptiveSortTitle="kendo.grid.adaptiveSortTitle|The title that is displayed in the adaptive Sort Toolbar Tool"
3574
- adaptiveSortTitle="Sort by"
3575
-
3576
- i18n-adaptiveGroupTitle="kendo.grid.adaptiveGroupTitle|The title that is displayed in the adaptive Group Toolbar Tool."
3577
- adaptiveGroupTitle="Group by"
3578
-
3579
- i18n-lock="kendo.grid.lock|The text shown in the column menu for the lock item"
3580
- lock="Lock"
3581
-
3582
- i18n-unlock="kendo.grid.unlock|The text shown in the column menu for the unlock item"
3583
- unlock="Unlock"
3584
-
3585
- i18n-setColumnPosition="kendo.grid.setColumnPosition|The text shown in the column menu for the set column position item"
3586
- setColumnPosition="Set Column Position"
3587
-
3588
- i18n-stick="kendo.grid.stick|The text shown in the column menu for the stick item"
3589
- stick="Stick"
3590
-
3591
- i18n-unstick="kendo.grid.unstick|The text shown in the column menu for the unstick item"
3592
- unstick="Unstick"
3593
-
3594
- i18n-sortable="kendo.grid.sortable|The label of the sort icon"
3595
- sortable="Sortable"
3596
-
3597
- i18n-sortAscending="kendo.grid.sortAscending|The text shown in the column menu for the sort ascending item"
3598
- sortAscending="Sort Ascending"
3599
-
3600
- i18n-sortDescending="kendo.grid.sortDescending|The text shown in the column menu for the sort descending item"
3601
- sortDescending="Sort Descending"
3602
-
3603
- i18n-autosizeAllColumns="kendo.grid.autosizeAllColumns|The text shown in the column menu for the autosize all columns item"
3604
- autosizeAllColumns="Autosize All Columns"
3605
-
3606
- i18n-autosizeThisColumn="kendo.grid.autosizeThisColumn|The text shown in the column menu for the autosize this column item"
3607
- autosizeThisColumn="Autosize This Column"
3608
-
3609
- i18n-sortedDefault="kendo.grid.sortedDefault|The status announcement when a column is no longer sorted"
3610
- sortedDefault="Not Sorted"
3611
-
3612
- i18n-sortedAscending="kendo.grid.sortedAscending|The title of the Group Chip indicating the ascending sorting order of the groups"
3613
- sortedAscending="Sorted Ascending"
3614
-
3615
- i18n-sortedDescending="kendo.grid.sortedDescending|The title of the Group Chip indicating the descending sorting order of the groups"
3616
- sortedDescending="Sorted Descending"
3617
-
3618
- i18n-columnsApply="kendo.grid.columnsApply|The text shown in the column menu or column chooser for the columns apply button"
3619
- columnsApply="Apply"
3620
-
3621
- i18n-columnsReset="kendo.grid.columnsReset|The text shown in the column menu or column chooser for the columns reset button"
3622
- columnsReset="Reset"
3623
-
3624
- i18n-detailExpand="kendo.grid.detailExpand|The title of the expand icon of detail rows. Applies also to the expand button text in stacked mode."
3625
- detailExpand="Expand Details"
3626
-
3627
- i18n-detailCollapse="kendo.grid.detailCollapse|The title of the collapse icon of detail rows. Applies also to the collapse button text in stacked mode."
3628
- detailCollapse="Collapse Details"
3629
-
3630
- i18n-filterDateToday="kendo.grid.filterDateToday|The text of the Today button of the Date filter."
3631
- filterDateToday="TODAY"
3632
-
3633
- i18n-filterDateToggle="kendo.grid.filterDateToggle|The title of the Toggle button of the Date filter."
3634
- filterDateToggle="Toggle Calendar"
3635
-
3636
- i18n-filterNumericDecrement="kendo.grid.filterNumericDecrement|The title of the Decrement button of the Numeric filter."
3637
- filterNumericDecrement="Decrement"
3638
-
3639
- i18n-filterNumericIncrement="kendo.grid.filterNumericIncrement|The title of the Increment button of the Numeric filter."
3640
- filterNumericIncrement="Increment"
3641
-
3642
- i18n-selectionCheckboxLabel="kendo.grid.selectionCheckboxLabel|The labels of the checkbox column checkboxes."
3643
- selectionCheckboxLabel="Select Row"
3644
-
3645
- i18n-selectAllCheckboxLabel="kendo.grid.selectAllCheckboxLabel|The label of the checkbox column select all checkbox."
3646
- selectAllCheckboxLabel="Select All Rows"
3647
-
3648
- i18n-sortToolbarToolText="kendo.grid.sortToolbarToolText|The button text of the Sort toolbar tool."
3649
- sortToolbarToolText="Sort"
3650
-
3651
- i18n-groupCollapse="kendo.grid.groupCollapse|The text of the title and aria-label attributes applied to the collapse icon of group rows."
3652
- groupCollapse="Collapse Group"
3653
-
3654
- i18n-groupExpand="kendo.grid.groupExpand|The text of the title and aria-label attributes applied to the expand icon of group rows."
3655
- groupExpand="Expand Group"
3656
-
3657
- i18n-pagerSelectPage="kendo.grid.pagerSelectPage|The text of the title and aria-label attributes applied to the page chooser in the Grid Pager"
3658
- pagerSelectPage="Select page"
3659
-
3660
- i18n-topToolbarLabel="kendo.grid.topToolbarLabel|The label for the Grid top toolbar"
3661
- topToolbarLabel="Top toolbar"
3662
-
3663
- i18n-bottomToolbarLabel="kendo.grid.bottomToolbarLabel|The label for the Grid bottom toolbar"
3664
- bottomToolbarLabel="Bottom toolbar"
3665
-
3666
- i18n-editToolbarToolText="kendo.grid.editToolbarToolText|The text for the Grid Edit toolbar tool"
3667
- editToolbarToolText="Edit"
3668
-
3669
- i18n-saveToolbarToolText="kendo.grid.saveToolbarToolText|The text for the Grid Save toolbar tool"
3670
- saveToolbarToolText="Save"
3671
-
3672
- i18n-addToolbarToolText="kendo.grid.addToolbarToolText|The text for the Grid Add toolbar tool"
3673
- addToolbarToolText="Add"
3674
-
3675
- i18n-cancelToolbarToolText="kendo.grid.cancelToolbarToolText|The text for the Grid Cancel toolbar tool"
3676
- cancelToolbarToolText="Cancel"
3677
-
3678
- i18n-removeToolbarToolText="kendo.grid.removeToolbarToolText|The text for the Grid Remove toolbar tool"
3679
- removeToolbarToolText="Delete"
3680
-
3681
- i18n-excelExportToolbarToolText="kendo.grid.excelExportToolbarToolText|The text for the Grid Excel export toolbar tool"
3682
- excelExportToolbarToolText="Excel Export"
3683
-
3684
- i18n-pdfExportToolbarToolText="kendo.grid.pdfExportToolbarToolText|The text for the Grid PDF export toolbar tool"
3685
- pdfExportToolbarToolText="PDF Export"
3686
-
3687
- i18n-groupPanelLabel="kendo.grid.groupPanelLabel|The label for the Grid group panel toolbar"
3688
- groupPanelLabel="Group panel"
3689
-
3690
- i18n-dragRowHandleLabel="kendo.grid.dragRowHandleLabel|The label for the Grid drag row handle"
3691
- dragRowHandleLabel="Drag row"
3692
-
3693
- i18n-columnMenuFilterTabTitle="kendo.grid.columnMenuFilterTabTitle|The title for the column menu Filter tab"
3694
- columnMenuFilterTabTitle="Filter"
3695
-
3696
- i18n-columnMenuGeneralTabTitle="kendo.grid.columnMenuGeneralTabTitle|The title for the column menu General tab"
3697
- columnMenuGeneralTabTitle="General"
3698
-
3699
- i18n-columnMenuColumnsTabTitle="kendo.grid.columnMenuColumnsTabTitle|The title for the column menu Columns tab"
3700
- columnMenuColumnsTabTitle="Columns"
3701
-
3702
- i18n-groupChipMenuPrevious="kendo.grid.groupChipMenuPrevious|The text for the Group pane Chip Menu Move as previous item"
3703
- groupChipMenuPrevious="Move as previous"
3704
-
3705
- i18n-groupChipMenuNext="kendo.grid.groupChipMenuNext|The text for the Group pane Chip Menu Move as next item"
3706
- groupChipMenuNext="Move as next"
3707
-
3708
- i18n-groupToolbarToolText="kendo.grid.groupToolbarToolText|The button text of the Group toolbar tool"
3709
- groupToolbarToolText="Group"
3710
-
3711
- i18n-formValidationErrorText="kendo.grid.formValidationErrorText|The default text of a form validation error when using external editing."
3712
- formValidationErrorText="{{ 'The {fieldName} field has {errorName} validation error' }}"
3713
-
3714
- i18n-removeConfirmationDialogTitle="kendo.grid.removeConfirmationDialogTitle|The title of the built-in remove item confirmation Dialog"
3715
- removeConfirmationDialogTitle="Please confirm"
3716
-
3717
- i18n-removeConfirmationDialogContent="kendo.grid.removeConfirmationDialogContent|The content of the built-in remove item confirmation Dialog"
3718
- removeConfirmationDialogContent="Are you sure you want to delete this item?"
3719
-
3720
- i18n-removeConfirmationDialogConfirmText="kendo.grid.removeConfirmationDialogConfirmText|The text of the built-in remove item confirmation Dialog confirm action button"
3721
- removeConfirmationDialogConfirmText="Yes"
3722
-
3723
- i18n-removeConfirmationDialogRejectText="kendo.grid.removeConfirmationDialogRejectText|The text of the built-in remove item confirmation Dialog reject action button"
3724
- removeConfirmationDialogRejectText="No"
3725
-
3726
- i18n-externalEditingTitle="kendo.grid.externalEditingTitle|The title of the built-in external editing form container when editing an item"
3727
- externalEditingTitle="Edit"
3728
-
3729
- i18n-externalEditingAddTitle="kendo.grid.externalEditingAddTitle|The title of the built-in external editing form container when adding a new item"
3730
- externalEditingAddTitle="Add"
3731
-
3732
- i18n-externalEditingSaveText="kendo.grid.externalEditingSaveText|The text of the external editing form Save button"
3733
- externalEditingSaveText="Save"
3734
-
3735
- i18n-externalEditingCancelText="kendo.grid.externalEditingCancelText|The text of the external editing form Cancel button"
3736
- externalEditingCancelText="Cancel"
3737
-
3738
- i18n-aiAssistantToolbarToolText="kendo.grid.aiAssistantToolbarToolText|The text of the AI Assistant toolbar tool"
3739
- aiAssistantToolbarToolText="AI Assistant"
3740
-
3741
- i18n-aiAssistantWindowTitle="kendo.grid.aiAssistantWindowTitle|The text of the AI Assistant Window title"
3742
- aiAssistantWindowTitle="AI Assistant"
3743
-
3744
- i18n-aiAssistantApplyButtonText="kendo.grid.aiAssistantApplyButtonText|The text of the AI Assistant Apply button"
3745
- aiAssistantApplyButtonText="Apply"
3746
-
3747
- i18n-aiAssistantWindowCloseTitle="kendo.grid.aiAssistantWindowCloseTitle|The title of the AI Assistant Window close button"
3748
- aiAssistantWindowCloseTitle="Close"
3749
-
3750
- i18n-aiAssistantWindowMaximizeTitle="kendo.grid.aiAssistantWindowMaximizeTitle|The title of the AI Assistant Window maximize button"
3751
- aiAssistantWindowMaximizeTitle="Maximize"
3752
-
3753
- i18n-aiAssistantWindowMinimizeTitle="kendo.grid.aiAssistantWindowMinimizeTitle|The title of the AI Assistant Window minimize button"
3754
- aiAssistantWindowMinimizeTitle="Minimize"
3755
-
3756
- i18n-aiAssistantWindowRestoreTitle="kendo.grid.aiAssistantWindowRestoreTitle|The title of the AI Assistant Window restore button"
3757
- aiAssistantWindowRestoreTitle="Restore"
3758
-
3759
- i18n-aiAssistantOutputCardTitle="kendo.grid.aiAssistantOutputCardTitle|The title of the AI Assistant Prompt Output Card"
3760
- aiAssistantOutputCardTitle="Generated with AI"
3761
-
3762
- i18n-aiAssistantOutputCardBodyContent="kendo.grid.aiAssistantOutputCardBodyContent|The success message dispayed in the AI Assistant Prompt Output Card's body"
3763
- aiAssistantOutputCardBodyContent="Operation is successful. Data is:"
3764
-
3765
- i18n-aiAssistantSelectionNotEnabled="kendo.grid.aiAssistantSelectionNotEnabled|The message shown when AI selection requires the Grid selectable option"
3766
- aiAssistantSelectionNotEnabled="Selection can be applied only when the Grid selectable option is enabled."
3767
-
3768
- i18n-aiAssistantSelectionRowModeRequired="kendo.grid.aiAssistantSelectionRowModeRequired|The message shown when AI selection requires row selection mode"
3769
- aiAssistantSelectionRowModeRequired="Selection can be applied only when row selection mode is enabled."
3770
-
3771
- i18n-aiAssistantSelectionCellModeRequired="kendo.grid.aiAssistantSelectionCellModeRequired|The message shown when AI selection requires cell selection mode"
3772
- aiAssistantSelectionCellModeRequired="Selection can be applied only when cell selection mode is enabled."
3773
-
3774
- i18n-columnChooserSelectedColumnsCount="kendo.grid.columnChooserSelectedColumnsCount|The text displayed in the Column Chooser for the number of selected columns"
3775
- columnChooserSelectedColumnsCount="{{ '{selectedColumnsCount} Selected items' }}"
3776
-
3777
- i18n-multiCheckboxFilterSearchPlaceholder="kendo.grid.multiCheckboxFilterSearchPlaceholder|The placeholder text for the multi-checkbox filter search input"
3778
- multiCheckboxFilterSearchPlaceholder="Search..."
3779
-
3780
- i18n-multiCheckboxFilterSelectAllLabel="kendo.grid.multiCheckboxFilterSelectAllLabel|The label for the multi-checkbox filter select all option"
3781
- multiCheckboxFilterSelectAllLabel="Select all"
3782
-
3783
- i18n-multiCheckboxFilterSelectedItemsCount="kendo.grid.multiCheckboxFilterSelectedItemsCount|The text for the multi-checkbox filter selected items count"
3784
- multiCheckboxFilterSelectedItemsCount="{{ '{selectedItemsCount} selected items' }}"
3785
- >
3432
+ i18n-groupPanelEmpty="kendo.grid.groupPanelEmpty|The label visible in the Grid group panel when it is empty"
3433
+ groupPanelEmpty="Drag a column header and drop it here to group by that column"
3434
+
3435
+ i18n-noRecords="kendo.grid.noRecords|The label visible in the Grid when there are no records"
3436
+ noRecords="No records available."
3437
+
3438
+ i18n-pagerLabel="kendo.grid.pagerLabel|The label for the Grid pager"
3439
+ pagerLabel="{{ 'Page navigation, page {currentPage} of {totalPages}' }}"
3440
+
3441
+ i18n-pagerFirstPage="kendo.grid.pagerFirstPage|The label for the first page button in Grid pager"
3442
+ pagerFirstPage="Go to the first page"
3443
+
3444
+ i18n-pagerPreviousPage="kendo.grid.pagerPreviousPage|The label for the previous page button in Grid pager"
3445
+ pagerPreviousPage="Go to the previous page"
3446
+
3447
+ i18n-pagerNextPage="kendo.grid.pagerNextPage|The label for the next page button in Grid pager"
3448
+ pagerNextPage="Go to the next page"
3449
+
3450
+ i18n-pagerLastPage="kendo.grid.pagerLastPage|The label for the last page button in Grid pager"
3451
+ pagerLastPage="Go to the last page"
3452
+
3453
+ i18n-pagerPage="kendo.grid.pagerPage|The label before the current page number in the Grid pager"
3454
+ pagerPage="Page"
3455
+
3456
+ i18n-pagerOf="kendo.grid.pagerOf|The label before the total pages number in the Grid pager"
3457
+ pagerOf="of"
3458
+
3459
+ i18n-pagerItems="kendo.grid.pagerItems|The label after the total pages number in the Grid pager"
3460
+ pagerItems="items"
3461
+
3462
+ i18n-pagerPageNumberInputTitle="kendo.grid.pagerPageNumberInputTitle|The label for the pager input in the Grid pager"
3463
+ pagerPageNumberInputTitle="Page Number"
3464
+
3465
+ i18n-pagerItemsPerPage="kendo.grid.pagerItemsPerPage|The label for the page size chooser in the Grid pager"
3466
+ pagerItemsPerPage="items per page"
3467
+
3468
+ i18n-pagerInputLabel="kendo.grid.pagerInputLabel|The text of the aria-label attribute applied to the input element for entering the page number"
3469
+ pagerInputLabel="Type a page number"
3470
+
3471
+ i18n-filter="kendo.grid.filter|The label of the filter cell or icon"
3472
+ filter="Filter"
3473
+
3474
+ i18n-filterInputLabel="kendo.grid.filterInputLabel|The label of the filter row and menu inputs"
3475
+ filterInputLabel="{{ '{columnName} Filter' }}"
3476
+
3477
+ i18n-filterMenuTitle="kendo.grid.filterMenuTitle|The title of the filter menu icon"
3478
+ filterMenuTitle="{{ '{columnName} Filter Menu' }}"
3479
+
3480
+ i18n-filterMenuOperatorsDropDownLabel="kendo.grid.filterMenuOperatorsDropDownLabel|The label of the filter menu operators dropdown"
3481
+ filterMenuOperatorsDropDownLabel="{{ '{columnName} Filter Operators' }}"
3482
+
3483
+ i18n-filterCellOperatorLabel="kendo.grid.filterCellOperatorLabel|The label of the filter cell operators dropdown"
3484
+ filterCellOperatorLabel="{{ 'Filter cell operators for {columnName}' }}"
3485
+
3486
+ i18n-booleanFilterCellLabel="kendo.grid.booleanFilterCellLabel|The label of the boolean filter cell dropdown"
3487
+ booleanFilterCellLabel="{{ 'Boolean filter cell for {columnName}' }}"
3488
+
3489
+ i18n-filterMenuLogicDropDownLabel="kendo.grid.filterMenuLogicDropDownLabel|The label of the filter menu logic dropdown"
3490
+ filterMenuLogicDropDownLabel="{{ '{columnName} Filter Logic' }}"
3491
+
3492
+ i18n-filterEqOperator="kendo.grid.filterEqOperator|The text of the equal filter operator"
3493
+ filterEqOperator="Is equal to"
3494
+
3495
+ i18n-filterNotEqOperator="kendo.grid.filterNotEqOperator|The text of the not equal filter operator"
3496
+ filterNotEqOperator="Is not equal to"
3497
+
3498
+ i18n-filterIsNullOperator="kendo.grid.filterIsNullOperator|The text of the is null filter operator"
3499
+ filterIsNullOperator="Is null"
3500
+
3501
+ i18n-filterIsNotNullOperator="kendo.grid.filterIsNotNullOperator|The text of the is not null filter operator"
3502
+ filterIsNotNullOperator="Is not null"
3503
+
3504
+ i18n-filterIsEmptyOperator="kendo.grid.filterIsEmptyOperator|The text of the is empty filter operator"
3505
+ filterIsEmptyOperator="Is empty"
3506
+
3507
+ i18n-filterIsNotEmptyOperator="kendo.grid.filterIsNotEmptyOperator|The text of the is not empty filter operator"
3508
+ filterIsNotEmptyOperator="Is not empty"
3509
+
3510
+ i18n-filterStartsWithOperator="kendo.grid.filterStartsWithOperator|The text of the starts with filter operator"
3511
+ filterStartsWithOperator="Starts with"
3512
+
3513
+ i18n-filterContainsOperator="kendo.grid.filterContainsOperator|The text of the contains filter operator"
3514
+ filterContainsOperator="Contains"
3515
+
3516
+ i18n-filterNotContainsOperator="kendo.grid.filterNotContainsOperator|The text of the does not contain filter operator"
3517
+ filterNotContainsOperator="Does not contain"
3518
+
3519
+ i18n-filterEndsWithOperator="kendo.grid.filterEndsWithOperator|The text of the ends with filter operator"
3520
+ filterEndsWithOperator="Ends with"
3521
+
3522
+ i18n-filterGteOperator="kendo.grid.filterGteOperator|The text of the greater than or equal filter operator"
3523
+ filterGteOperator="Is greater than or equal to"
3524
+
3525
+ i18n-filterGtOperator="kendo.grid.filterGtOperator|The text of the greater than filter operator"
3526
+ filterGtOperator="Is greater than"
3527
+
3528
+ i18n-filterLteOperator="kendo.grid.filterLteOperator|The text of the less than or equal filter operator"
3529
+ filterLteOperator="Is less than or equal to"
3530
+
3531
+ i18n-filterLtOperator="kendo.grid.filterLtOperator|The text of the less than filter operator"
3532
+ filterLtOperator="Is less than"
3533
+
3534
+ i18n-filterIsTrue="kendo.grid.filterIsTrue|The text of the IsTrue boolean filter option"
3535
+ filterIsTrue="Is True"
3536
+
3537
+ i18n-filterIsFalse="kendo.grid.filterIsFalse|The text of the IsFalse boolean filter option"
3538
+ filterIsFalse="Is False"
3539
+
3540
+ i18n-filterBooleanAll="kendo.grid.filterBooleanAll|The text of the (All) boolean filter option"
3541
+ filterBooleanAll="(All)"
3542
+
3543
+ i18n-filterAfterOrEqualOperator="kendo.grid.filterAfterOrEqualOperator|The text of the after or equal date filter operator"
3544
+ filterAfterOrEqualOperator="Is after or equal to"
3545
+
3546
+ i18n-filterAfterOperator="kendo.grid.filterAfterOperator|The text of the after date filter operator"
3547
+ filterAfterOperator="Is after"
3548
+
3549
+ i18n-filterBeforeOperator="kendo.grid.filterBeforeOperator|The text of the before date filter operator"
3550
+ filterBeforeOperator="Is before"
3551
+
3552
+ i18n-filterBeforeOrEqualOperator="kendo.grid.filterBeforeOrEqualOperator|The text of the before or equal date filter operator"
3553
+ filterBeforeOrEqualOperator="Is before or equal to"
3554
+
3555
+ i18n-filterFilterButton="kendo.grid.filterFilterButton|The text of the filter button"
3556
+ filterFilterButton="Filter"
3557
+
3558
+ i18n-filterClearButton="kendo.grid.filterClearButton|The text of the clear filter button"
3559
+ filterClearButton="Clear"
3560
+
3561
+ i18n-sortClearButton="kendo.grid.sortClearButton|The text of the clear sort button located in the Sort Toolbar Tool and adaptive Sort Toolbar Tool"
3562
+ sortClearButton="Clear sorting"
3563
+
3564
+ i18n-adaptiveCloseButtonTitle="kendo.grid.adaptiveCloseButtonTitle|The title of the Close button of the ActionSheet that is rendered instead of the Popup when using small screen devices in adaptive mode"
3565
+ adaptiveCloseButtonTitle="Close"
3566
+
3567
+ i18n-adaptiveBackButtonTitle="kendo.grid.adaptiveBackButtonTitle|The title of the Back button of the ActionSheet that is rendered instead of the Popup when using small screen devices in adaptive mode"
3568
+ adaptiveBackButtonTitle="Back"
3569
+
3570
+ i18n-filterClearAllButton="kendo.grid.filterClearAllButton|The text of the clear all filters button located in the Filter Toolbar Tool and adaptive Filter Toolbar Tool"
3571
+ filterClearAllButton="Clear all filters"
3572
+
3573
+ i18n-groupClearButton="kendo.grid.groupClearButton|The text of the clear grouping button in the Group Toolbar Tool and adaptive Group Toolbar Tool"
3574
+ groupClearButton="Clear grouping"
3575
+
3576
+ i18n-sortDoneButton="kendo.grid.sortDoneButton|The text of the done sort button"
3577
+ sortDoneButton="Done"
3578
+
3579
+ i18n-groupDoneButton="kendo.grid.groupDoneButton|The text of the done group button in the adaptive Group Toolbar Tool"
3580
+ groupDoneButton="Done"
3581
+
3582
+ i18n-filterAndLogic="kendo.grid.filterAndLogic|The text of the And filter logic"
3583
+ filterAndLogic="And"
3584
+
3585
+ i18n-filterOrLogic="kendo.grid.filterOrLogic|The text of the Or filter logic"
3586
+ filterOrLogic="Or"
3587
+
3588
+ i18n-filterToolbarToolText="kendo.grid.filterToolbarToolText|The button text of the Filter toolbar tool"
3589
+ filterToolbarToolText="Filter"
3590
+
3591
+ i18n-loading="kendo.grid.loading|The loading text"
3592
+ loading="Loading"
3593
+
3594
+ i18n-gridLabel="kendo.grid.gridLabel|The Grid aria-label"
3595
+ gridLabel="Data table"
3596
+
3597
+ i18n-columnMenu="kendo.grid.columnMenu|The title of the column menu icon"
3598
+ columnMenu="{{ '{columnName} Column Menu' }}"
3599
+
3600
+ i18n-columns="kendo.grid.columns|The text for the Grid Column Chooser and Column Chooser toolbar tool"
3601
+ columns="Columns"
3602
+
3603
+ i18n-columnsSubtitle="kendo.grid.columnsSubtitle|The subtitle for the adaptive Grid Column Chooser and Column Chooser toolbar tool"
3604
+ columnsSubtitle="Selected fields are visible"
3605
+
3606
+ i18n-adaptiveFilterTitle="kendo.grid.adaptiveFilterTitle|The title that is displayed in the adaptive Filter Toolbar Tool and Filter Menu"
3607
+ adaptiveFilterTitle="Filter by"
3608
+
3609
+ i18n-adaptiveFilterOperatorsTitle="kendo.grid.adaptiveFilterOperatorsTitle|The title that is displayed in the Operators Action Sheet"
3610
+ adaptiveFilterOperatorsTitle="Operators"
3611
+
3612
+ i18n-adaptiveSortTitle="kendo.grid.adaptiveSortTitle|The title that is displayed in the adaptive Sort Toolbar Tool"
3613
+ adaptiveSortTitle="Sort by"
3614
+
3615
+ i18n-adaptiveGroupTitle="kendo.grid.adaptiveGroupTitle|The title that is displayed in the adaptive Group Toolbar Tool."
3616
+ adaptiveGroupTitle="Group by"
3617
+
3618
+ i18n-lock="kendo.grid.lock|The text shown in the column menu for the lock item"
3619
+ lock="Lock"
3620
+
3621
+ i18n-unlock="kendo.grid.unlock|The text shown in the column menu for the unlock item"
3622
+ unlock="Unlock"
3623
+
3624
+ i18n-setColumnPosition="kendo.grid.setColumnPosition|The text shown in the column menu for the set column position item"
3625
+ setColumnPosition="Set Column Position"
3626
+
3627
+ i18n-stick="kendo.grid.stick|The text shown in the column menu for the stick item"
3628
+ stick="Stick"
3629
+
3630
+ i18n-unstick="kendo.grid.unstick|The text shown in the column menu for the unstick item"
3631
+ unstick="Unstick"
3632
+
3633
+ i18n-sortable="kendo.grid.sortable|The label of the sort icon"
3634
+ sortable="Sortable"
3635
+
3636
+ i18n-sortAscending="kendo.grid.sortAscending|The text shown in the column menu for the sort ascending item"
3637
+ sortAscending="Sort Ascending"
3638
+
3639
+ i18n-sortDescending="kendo.grid.sortDescending|The text shown in the column menu for the sort descending item"
3640
+ sortDescending="Sort Descending"
3641
+
3642
+ i18n-autosizeAllColumns="kendo.grid.autosizeAllColumns|The text shown in the column menu for the autosize all columns item"
3643
+ autosizeAllColumns="Autosize All Columns"
3644
+
3645
+ i18n-autosizeThisColumn="kendo.grid.autosizeThisColumn|The text shown in the column menu for the autosize this column item"
3646
+ autosizeThisColumn="Autosize This Column"
3647
+
3648
+ i18n-sortedDefault="kendo.grid.sortedDefault|The status announcement when a column is no longer sorted"
3649
+ sortedDefault="Not Sorted"
3650
+
3651
+ i18n-sortedAscending="kendo.grid.sortedAscending|The title of the Group Chip indicating the ascending sorting order of the groups"
3652
+ sortedAscending="Sorted Ascending"
3653
+
3654
+ i18n-sortedDescending="kendo.grid.sortedDescending|The title of the Group Chip indicating the descending sorting order of the groups"
3655
+ sortedDescending="Sorted Descending"
3656
+
3657
+ i18n-columnsApply="kendo.grid.columnsApply|The text shown in the column menu or column chooser for the columns apply button"
3658
+ columnsApply="Apply"
3659
+
3660
+ i18n-columnsReset="kendo.grid.columnsReset|The text shown in the column menu or column chooser for the columns reset button"
3661
+ columnsReset="Reset"
3662
+
3663
+ i18n-detailExpand="kendo.grid.detailExpand|The title of the expand icon of detail rows. Applies also to the expand button text in stacked mode."
3664
+ detailExpand="Expand Details"
3665
+
3666
+ i18n-detailCollapse="kendo.grid.detailCollapse|The title of the collapse icon of detail rows. Applies also to the collapse button text in stacked mode."
3667
+ detailCollapse="Collapse Details"
3668
+
3669
+ i18n-filterDateToday="kendo.grid.filterDateToday|The text of the Today button of the Date filter."
3670
+ filterDateToday="TODAY"
3671
+
3672
+ i18n-filterDateToggle="kendo.grid.filterDateToggle|The title of the Toggle button of the Date filter."
3673
+ filterDateToggle="Toggle Calendar"
3674
+
3675
+ i18n-filterNumericDecrement="kendo.grid.filterNumericDecrement|The title of the Decrement button of the Numeric filter."
3676
+ filterNumericDecrement="Decrement"
3677
+
3678
+ i18n-filterNumericIncrement="kendo.grid.filterNumericIncrement|The title of the Increment button of the Numeric filter."
3679
+ filterNumericIncrement="Increment"
3680
+
3681
+ i18n-selectionCheckboxLabel="kendo.grid.selectionCheckboxLabel|The labels of the checkbox column checkboxes."
3682
+ selectionCheckboxLabel="Select Row"
3683
+
3684
+ i18n-selectAllCheckboxLabel="kendo.grid.selectAllCheckboxLabel|The label of the checkbox column select all checkbox."
3685
+ selectAllCheckboxLabel="Select All Rows"
3686
+
3687
+ i18n-sortToolbarToolText="kendo.grid.sortToolbarToolText|The button text of the Sort toolbar tool."
3688
+ sortToolbarToolText="Sort"
3689
+
3690
+ i18n-groupCollapse="kendo.grid.groupCollapse|The text of the title and aria-label attributes applied to the collapse icon of group rows."
3691
+ groupCollapse="Collapse Group"
3692
+
3693
+ i18n-groupExpand="kendo.grid.groupExpand|The text of the title and aria-label attributes applied to the expand icon of group rows."
3694
+ groupExpand="Expand Group"
3695
+
3696
+ i18n-pagerSelectPage="kendo.grid.pagerSelectPage|The text of the title and aria-label attributes applied to the page chooser in the Grid Pager"
3697
+ pagerSelectPage="Select page"
3698
+
3699
+ i18n-topToolbarLabel="kendo.grid.topToolbarLabel|The label for the Grid top toolbar"
3700
+ topToolbarLabel="Top toolbar"
3701
+
3702
+ i18n-bottomToolbarLabel="kendo.grid.bottomToolbarLabel|The label for the Grid bottom toolbar"
3703
+ bottomToolbarLabel="Bottom toolbar"
3704
+
3705
+ i18n-editToolbarToolText="kendo.grid.editToolbarToolText|The text for the Grid Edit toolbar tool"
3706
+ editToolbarToolText="Edit"
3707
+
3708
+ i18n-saveToolbarToolText="kendo.grid.saveToolbarToolText|The text for the Grid Save toolbar tool"
3709
+ saveToolbarToolText="Save"
3710
+
3711
+ i18n-addToolbarToolText="kendo.grid.addToolbarToolText|The text for the Grid Add toolbar tool"
3712
+ addToolbarToolText="Add"
3713
+
3714
+ i18n-cancelToolbarToolText="kendo.grid.cancelToolbarToolText|The text for the Grid Cancel toolbar tool"
3715
+ cancelToolbarToolText="Cancel"
3716
+
3717
+ i18n-removeToolbarToolText="kendo.grid.removeToolbarToolText|The text for the Grid Remove toolbar tool"
3718
+ removeToolbarToolText="Delete"
3719
+
3720
+ i18n-excelExportToolbarToolText="kendo.grid.excelExportToolbarToolText|The text for the Grid Excel export toolbar tool"
3721
+ excelExportToolbarToolText="Excel Export"
3722
+
3723
+ i18n-pdfExportToolbarToolText="kendo.grid.pdfExportToolbarToolText|The text for the Grid PDF export toolbar tool"
3724
+ pdfExportToolbarToolText="PDF Export"
3725
+
3726
+ i18n-groupPanelLabel="kendo.grid.groupPanelLabel|The label for the Grid group panel toolbar"
3727
+ groupPanelLabel="Group panel"
3728
+
3729
+ i18n-dragRowHandleLabel="kendo.grid.dragRowHandleLabel|The label for the Grid drag row handle"
3730
+ dragRowHandleLabel="Drag row"
3731
+
3732
+ i18n-columnMenuFilterTabTitle="kendo.grid.columnMenuFilterTabTitle|The title for the column menu Filter tab"
3733
+ columnMenuFilterTabTitle="Filter"
3734
+
3735
+ i18n-columnMenuGeneralTabTitle="kendo.grid.columnMenuGeneralTabTitle|The title for the column menu General tab"
3736
+ columnMenuGeneralTabTitle="General"
3737
+
3738
+ i18n-columnMenuColumnsTabTitle="kendo.grid.columnMenuColumnsTabTitle|The title for the column menu Columns tab"
3739
+ columnMenuColumnsTabTitle="Columns"
3740
+
3741
+ i18n-groupChipMenuPrevious="kendo.grid.groupChipMenuPrevious|The text for the Group pane Chip Menu Move as previous item"
3742
+ groupChipMenuPrevious="Move as previous"
3743
+
3744
+ i18n-groupChipMenuNext="kendo.grid.groupChipMenuNext|The text for the Group pane Chip Menu Move as next item"
3745
+ groupChipMenuNext="Move as next"
3746
+
3747
+ i18n-groupToolbarToolText="kendo.grid.groupToolbarToolText|The button text of the Group toolbar tool"
3748
+ groupToolbarToolText="Group"
3749
+
3750
+ i18n-formValidationErrorText="kendo.grid.formValidationErrorText|The default text of a form validation error when using external editing."
3751
+ formValidationErrorText="{{ 'The {fieldName} field has {errorName} validation error' }}"
3752
+
3753
+ i18n-removeConfirmationDialogTitle="kendo.grid.removeConfirmationDialogTitle|The title of the built-in remove item confirmation Dialog"
3754
+ removeConfirmationDialogTitle="Please confirm"
3755
+
3756
+ i18n-removeConfirmationDialogContent="kendo.grid.removeConfirmationDialogContent|The content of the built-in remove item confirmation Dialog"
3757
+ removeConfirmationDialogContent="Are you sure you want to delete this item?"
3758
+
3759
+ i18n-removeConfirmationDialogConfirmText="kendo.grid.removeConfirmationDialogConfirmText|The text of the built-in remove item confirmation Dialog confirm action button"
3760
+ removeConfirmationDialogConfirmText="Yes"
3761
+
3762
+ i18n-removeConfirmationDialogRejectText="kendo.grid.removeConfirmationDialogRejectText|The text of the built-in remove item confirmation Dialog reject action button"
3763
+ removeConfirmationDialogRejectText="No"
3764
+
3765
+ i18n-externalEditingTitle="kendo.grid.externalEditingTitle|The title of the built-in external editing form container when editing an item"
3766
+ externalEditingTitle="Edit"
3767
+
3768
+ i18n-externalEditingAddTitle="kendo.grid.externalEditingAddTitle|The title of the built-in external editing form container when adding a new item"
3769
+ externalEditingAddTitle="Add"
3770
+
3771
+ i18n-externalEditingSaveText="kendo.grid.externalEditingSaveText|The text of the external editing form Save button"
3772
+ externalEditingSaveText="Save"
3773
+
3774
+ i18n-externalEditingCancelText="kendo.grid.externalEditingCancelText|The text of the external editing form Cancel button"
3775
+ externalEditingCancelText="Cancel"
3776
+
3777
+ i18n-aiAssistantToolbarToolText="kendo.grid.aiAssistantToolbarToolText|The text of the AI Assistant toolbar tool"
3778
+ aiAssistantToolbarToolText="AI Assistant"
3779
+
3780
+ i18n-aiAssistantWindowTitle="kendo.grid.aiAssistantWindowTitle|The text of the AI Assistant Window title"
3781
+ aiAssistantWindowTitle="AI Assistant"
3782
+
3783
+ i18n-aiAssistantApplyButtonText="kendo.grid.aiAssistantApplyButtonText|The text of the AI Assistant Apply button"
3784
+ aiAssistantApplyButtonText="Apply"
3785
+
3786
+ i18n-aiAssistantWindowCloseTitle="kendo.grid.aiAssistantWindowCloseTitle|The title of the AI Assistant Window close button"
3787
+ aiAssistantWindowCloseTitle="Close"
3788
+
3789
+ i18n-aiAssistantWindowMaximizeTitle="kendo.grid.aiAssistantWindowMaximizeTitle|The title of the AI Assistant Window maximize button"
3790
+ aiAssistantWindowMaximizeTitle="Maximize"
3791
+
3792
+ i18n-aiAssistantWindowMinimizeTitle="kendo.grid.aiAssistantWindowMinimizeTitle|The title of the AI Assistant Window minimize button"
3793
+ aiAssistantWindowMinimizeTitle="Minimize"
3794
+
3795
+ i18n-aiAssistantWindowRestoreTitle="kendo.grid.aiAssistantWindowRestoreTitle|The title of the AI Assistant Window restore button"
3796
+ aiAssistantWindowRestoreTitle="Restore"
3797
+
3798
+ i18n-aiAssistantOutputCardTitle="kendo.grid.aiAssistantOutputCardTitle|The title of the AI Assistant Prompt Output Card"
3799
+ aiAssistantOutputCardTitle="Generated with AI"
3800
+
3801
+ i18n-aiAssistantOutputCardBodyContent="kendo.grid.aiAssistantOutputCardBodyContent|The success message dispayed in the AI Assistant Prompt Output Card's body"
3802
+ aiAssistantOutputCardBodyContent="Operation is successful. Data is:"
3803
+
3804
+ i18n-aiAssistantSelectionNotEnabled="kendo.grid.aiAssistantSelectionNotEnabled|The message shown when AI selection requires the Grid selectable option"
3805
+ aiAssistantSelectionNotEnabled="Selection can be applied only when the Grid selectable option is enabled."
3806
+
3807
+ i18n-aiAssistantSelectionRowModeRequired="kendo.grid.aiAssistantSelectionRowModeRequired|The message shown when AI selection requires row selection mode"
3808
+ aiAssistantSelectionRowModeRequired="Selection can be applied only when row selection mode is enabled."
3809
+
3810
+ i18n-aiAssistantSelectionCellModeRequired="kendo.grid.aiAssistantSelectionCellModeRequired|The message shown when AI selection requires cell selection mode"
3811
+ aiAssistantSelectionCellModeRequired="Selection can be applied only when cell selection mode is enabled."
3812
+
3813
+ i18n-columnChooserSelectedColumnsCount="kendo.grid.columnChooserSelectedColumnsCount|The text displayed in the Column Chooser for the number of selected columns"
3814
+ columnChooserSelectedColumnsCount="{{ '{selectedColumnsCount} Selected items' }}"
3815
+
3816
+ i18n-multiCheckboxFilterSearchPlaceholder="kendo.grid.multiCheckboxFilterSearchPlaceholder|The placeholder text for the multi-checkbox filter search input"
3817
+ multiCheckboxFilterSearchPlaceholder="Search..."
3818
+
3819
+ i18n-multiCheckboxFilterSelectAllLabel="kendo.grid.multiCheckboxFilterSelectAllLabel|The label for the multi-checkbox filter select all option"
3820
+ multiCheckboxFilterSelectAllLabel="Select all"
3821
+
3822
+ i18n-multiCheckboxFilterSelectedItemsCount="kendo.grid.multiCheckboxFilterSelectedItemsCount|The text for the multi-checkbox filter selected items count"
3823
+ multiCheckboxFilterSelectedItemsCount="{{ '{selectedItemsCount} selected items' }}"
3824
+ >
3786
3825
  </ng-container>
3787
- <kendo-grid-toolbar
3788
- *ngIf="showTopToolbar"
3826
+ @if (showTopToolbar) {
3827
+ <kendo-grid-toolbar
3789
3828
  [size]="size"
3790
3829
  [attr.aria-label]="messageFor('topToolbarLabel')"
3791
3830
  [navigable]="navigation.toolbarEnabled"
3792
3831
  [attr.aria-controls]="ariaRootId"
3793
- position="top"></kendo-grid-toolbar>
3832
+ position="top"></kendo-grid-toolbar>
3833
+ }
3794
3834
  <ng-content select="kendo-toolbar"></ng-content>
3795
- <kendo-pager
3796
- *ngIf="showTopPager"
3835
+ @if (showTopPager) {
3836
+ <kendo-pager
3797
3837
  #topPager
3798
3838
  [navigable]="navigation.pagerEnabled"
3799
3839
  class="k-grid-pager k-grid-pager-top"
@@ -3812,27 +3852,28 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
3812
3852
  (pageTextVisibilityChange)="handlePagerVisibilityChange('showPagerPageText', $event)"
3813
3853
  (itemsTextVisibilityChange)="handlePagerVisibilityChange('showPagerItemsText', $event)">
3814
3854
  <ng-template kendoPagerTemplate>
3815
- <ng-container
3816
- [ngTemplateOutlet]="pagerTemplate ? pagerTemplate?.templateRef : defaultPager"
3817
- [ngTemplateOutletContext]="topPager.templateContext"></ng-container>
3855
+ <ng-container
3856
+ [ngTemplateOutlet]="pagerTemplate ? pagerTemplate?.templateRef : defaultPager"
3857
+ [ngTemplateOutletContext]="topPager.templateContext"></ng-container>
3818
3858
  </ng-template>
3819
3859
  <kendo-pager-messages
3820
- [ariaLabel]="messageFor('pagerLabel')"
3821
- [firstPage]="messageFor('pagerFirstPage')"
3822
- [inputLabel]="messageFor('pagerInputLabel')"
3823
- [previousPage]="messageFor('pagerPreviousPage')"
3824
- [nextPage]="messageFor('pagerNextPage')"
3825
- [lastPage]="messageFor('pagerLastPage')"
3826
- [selectPage]="messageFor('pagerSelectPage')"
3827
- [page]="messageFor('pagerPage')"
3828
- [itemsPerPage]="messageFor('pagerItemsPerPage')"
3829
- [items]="messageFor('pagerItems')"
3830
- [of]="messageFor('pagerOf')"
3831
- [pageNumberInputTitle]="messageFor('pagerPageNumberInputTitle')">
3860
+ [ariaLabel]="messageFor('pagerLabel')"
3861
+ [firstPage]="messageFor('pagerFirstPage')"
3862
+ [inputLabel]="messageFor('pagerInputLabel')"
3863
+ [previousPage]="messageFor('pagerPreviousPage')"
3864
+ [nextPage]="messageFor('pagerNextPage')"
3865
+ [lastPage]="messageFor('pagerLastPage')"
3866
+ [selectPage]="messageFor('pagerSelectPage')"
3867
+ [page]="messageFor('pagerPage')"
3868
+ [itemsPerPage]="messageFor('pagerItemsPerPage')"
3869
+ [items]="messageFor('pagerItems')"
3870
+ [of]="messageFor('pagerOf')"
3871
+ [pageNumberInputTitle]="messageFor('pagerPageNumberInputTitle')">
3832
3872
  </kendo-pager-messages>
3833
- </kendo-pager>
3834
- <kendo-grid-group-panel
3835
- *ngIf="showGroupPanel"
3873
+ </kendo-pager>
3874
+ }
3875
+ @if (showGroupPanel) {
3876
+ <kendo-grid-group-panel
3836
3877
  [navigable]="navigation.toolbarEnabled"
3837
3878
  [text]="groupableEmptyText"
3838
3879
  [groups]="group"
@@ -3840,290 +3881,308 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
3840
3881
  [attr.aria-label]="messageFor('groupPanelLabel')"
3841
3882
  [attr.aria-controls]="ariaRootId"
3842
3883
  (change)="groupChange.emit($event)">
3843
- </kendo-grid-group-panel>
3884
+ </kendo-grid-group-panel>
3885
+ }
3844
3886
  <div #ariaRoot
3845
- class="k-grid-aria-root"
3846
- role="grid"
3847
- kendoDragTargetContainer
3848
- kendoDropTargetContainer
3849
- mode="manual"
3850
- [dragDisabled]="!rowReorderable"
3851
- [dropDisabled]="!rowReorderable"
3852
- [dragTargetFilter]="getDefaultSelectors('dragTarget')"
3853
- [dropTargetFilter]="getDefaultSelectors('dropTarget')"
3854
- [dragHandle]="getDefaultSelectors('handle')"
3855
- [hint]="{hintTemplate: customHintTemplate || defaultHint}"
3856
- [hintContext]="hintContext"
3857
- (onPress)="handleReorderEvents($event, 'press')"
3858
- (onDragStart)="handleReorderEvents($event, 'dragStart')"
3859
- (onDrag)="handleReorderEvents($event, 'drag')"
3860
- (onDragEnter)="handleReorderEvents($event, 'dragEnter')"
3861
- (onDragLeave)="handleReorderEvents($event, 'dragLeave')"
3862
- (onDragEnd)="handleReorderEvents($event, 'dragEnd')"
3863
- (onDrop)="handleReorderEvents($event, 'drop')"
3864
- [dragData]="gridData"
3865
- [id]="ariaRootId"
3866
- [attr.aria-label]="ariaLabel"
3867
- [attr.aria-rowcount]="ariaRowCount"
3868
- [attr.aria-colcount]="ariaColCount">
3869
- <ng-container *ngIf="isScrollable">
3870
- <div *ngIf="!hideHeader && !isStacked"
3871
- class="k-grid-header"
3872
- [class.k-grid-draggable-header]="groupable || reorderable"
3873
- role="presentation"
3874
- [style.padding]="headerPadding">
3875
- <div *ngIf="isLocked"
3876
- #lockedHeader
3877
- role="presentation"
3878
- class="k-grid-header-locked"
3879
- [style.width.px]="lockedWidth">
3880
- <table
3881
- kendoGridResizableTable
3882
- [locked]="true"
3883
- role="presentation"
3884
- class="k-grid-header-table"
3885
- [style.width.px]="lockedWidth"
3886
- kendoGridTable
3887
- [size]="size">
3888
- <colgroup kendoGridColGroup
3889
- [columns]="$any(lockedLeafColumns)"
3890
- [groups]="group"
3891
- [detailTemplate]="detailTemplate">
3892
- </colgroup>
3893
- <thead kendoGridHeader
3894
- role="rowgroup"
3895
- [resizable]="resizable"
3896
- [scrollable]="true"
3897
- [columns]="$any(lockedColumns)"
3898
- [totalColumnLevels]="totalColumnLevels"
3899
- [sort]="sort"
3900
- [groups]="group"
3901
- [filter]="filter"
3902
- [filterable]="filterable"
3903
- [groupable]="showGroupPanel"
3904
- [reorderable]="reorderable"
3905
- [sortable]="sortable"
3906
- [columnMenu]="columnMenuOptions"
3907
- [columnMenuTemplate]="columnMenuTemplate"
3908
- [totalColumnsCount]="leafColumns.length"
3909
- [totalColumns]="columnsContainer"
3910
- [detailTemplate]="detailTemplate"
3911
- [tabIndex]="navigation.tableEnabled ? '-1' : '0'">
3912
- </thead>
3913
- </table>
3914
- </div>
3915
- <div #header class="k-grid-header-wrap" role="presentation" data-scrollable
3916
- [kendoGridResizableContainer]="lockedLeafColumns.length > 0"
3917
- [lockedWidth]="lockedWidth + scrollbarWidth + 2">
3918
- <table
3919
- role="presentation"
3920
- class="k-grid-header-table"
3921
- [style.width.px]="nonLockedWidth"
3922
- kendoGridResizableTable
3923
- [virtualColumns]="virtualColumns"
3924
- kendoGridTable
3925
- [size]="size">
3926
- <colgroup kendoGridColGroup
3927
- [columns]="headerLeafColumns"
3928
- [groups]="isLocked ? [] : group"
3929
- [detailTemplate]="detailTemplate">
3930
- </colgroup>
3931
- <thead kendoGridHeader
3932
- [resizable]="resizable"
3933
- role="rowgroup"
3934
- [scrollable]="true"
3935
- [columns]="headerColumns"
3936
- [totalColumnLevels]="totalColumnLevels"
3937
- [sort]="sort"
3938
- [filter]="filter"
3939
- [filterable]="filterable"
3940
- [groupable]="showGroupPanel"
3941
- [reorderable]="reorderable"
3942
- [groups]="isLocked ? [] : group"
3943
- [sortable]="sortable"
3944
- [columnMenu]="columnMenuOptions"
3945
- [columnMenuTemplate]="columnMenuTemplate"
3946
- [lockedColumnsCount]="lockedLeafColumns.length"
3947
- [totalColumnsCount]="leafColumns.length"
3948
- [totalColumns]="columnsContainer"
3949
- [detailTemplate]="detailTemplate"
3950
- [tabIndex]="navigation.tableEnabled ? '-1' : '0'">
3951
- </thead>
3952
- </table>
3953
- <div *ngIf="virtualColumns" class="k-width-container" role="presentation">
3954
- <div [style.width.px]="columnsContainer.unlockedWidth"></div>
3955
- </div>
3956
- </div>
3957
- </div>
3958
- <kendo-grid-list
3959
- [data]="$any(view)"
3960
- [rowHeight]="rowHeight"
3961
- [detailRowHeight]="detailRowHeight"
3962
- [total]="totalCount"
3963
- [take]="pageSize"
3964
- [groups]="group"
3965
- [groupable]="groupable"
3966
- [skip]="skip"
3967
- [trackBy]="trackBy"
3968
- [columns]="columnsContainer"
3969
- [selectable]="selectable"
3970
- [filterable]="filterable"
3971
- [detailTemplate]="detailTemplate"
3972
- [noRecordsTemplate]="noRecordsTemplate"
3973
- [size]="size"
3974
- (pageChange)="notifyPageChange('list', $event)"
3975
- [rowClass]="rowClass"
3976
- [rowSticky]="rowSticky"
3977
- [loading]="loading"
3978
- [isVirtual]="isVirtual"
3979
- [cellLoadingTemplate]="cellLoadingTemplate?.templateRef"
3980
- [loadingTemplate]="loadingTemplate?.templateRef"
3981
- [virtualColumns]="virtualColumns"
3982
- (scrollBottom)="notifyScrollBottom()"
3983
- (contentScroll)="contentScroll.emit($event)"
3984
- kendoDraggable
3985
- kendoGridSelectionMarquee
3986
- [enableDrag]="marqueeSelection"
3987
- [sort]="sort">
3988
- </kendo-grid-list>
3989
- <div
3990
- *ngIf="showFooter"
3991
- class="k-grid-footer"
3992
- [style.padding]="headerPadding">
3993
- <div
3994
- *ngIf="lockedLeafColumns.length && !isStacked"
3995
- class="k-grid-footer-locked"
3996
- [style.width.px]="lockedWidth">
3997
- <table
3998
- role="presentation"
3999
- class="k-grid-footer-table"
4000
- kendoGridResizableTable
4001
- [locked]="true"
4002
- [style.width.px]="lockedWidth"
4003
- kendoGridTable
4004
- [size]="size">
4005
- <colgroup kendoGridColGroup *ngIf="!isStacked"
4006
- [columns]="$any(lockedLeafColumns)"
4007
- [groups]="group"
4008
- [detailTemplate]="detailTemplate">
4009
- </colgroup>
4010
- <tfoot kendoGridFooter
4011
- [scrollable]="true"
4012
- [groups]="group"
4013
- [columns]="$any(lockedLeafColumns)"
4014
- [detailTemplate]="detailTemplate"
4015
- [logicalRowIndex]="ariaRowCount"
4016
- [totalColumns]="columnsContainer"
4017
- [totalColumnsCount]="leafColumns.length">
4018
- </tfoot>
4019
- </table>
4020
- </div>
4021
- <div #footer
4022
- class="k-grid-footer-wrap" data-scrollable
4023
- [kendoGridResizableContainer]="lockedLeafColumns.length > 0 && !isStacked"
4024
- [lockedWidth]="lockedWidth + scrollbarWidth + 3">
4025
- <table
4026
- role="presentation"
4027
- class="k-grid-footer-table"
4028
- [style.width.px]="nonLockedWidth"
4029
- kendoGridTable
4030
- kendoGridResizableTable
4031
- [size]="size">
4032
- <colgroup kendoGridColGroup *ngIf="!isStacked"
4033
- [columns]="$any(headerLeafColumns)"
4034
- [groups]="isLocked ? [] : group"
4035
- [detailTemplate]="detailTemplate">
4036
- </colgroup>
4037
- <tfoot kendoGridFooter
4038
- [logicalRowIndex]="ariaRowCount"
4039
- [scrollable]="true"
4040
- [groups]="isLocked ? [] : group"
4041
- [columns]="$any(headerColumns)"
4042
- [lockedColumnsCount]="isStacked ? 0 : lockedLeafColumns.length"
4043
- [detailTemplate]="detailTemplate"
4044
- [totalColumns]="columnsContainer"
4045
- [totalColumnsCount]="leafColumns.length">
4046
- </tfoot>
4047
- </table>
4048
- </div>
4049
- </div>
4050
- </ng-container>
4051
- <ng-container *ngIf="!isScrollable">
4052
- <table
4053
- [style.table-layout]="resizable ? 'fixed' : null"
4054
- kendoGridTable
4055
- kendoGridResizableTable
4056
- class="k-grid-table"
3887
+ class="k-grid-aria-root"
3888
+ role="grid"
3889
+ kendoDragTargetContainer
3890
+ kendoDropTargetContainer
3891
+ mode="manual"
3892
+ [dragDisabled]="!rowReorderable"
3893
+ [dropDisabled]="!rowReorderable"
3894
+ [dragTargetFilter]="getDefaultSelectors('dragTarget')"
3895
+ [dropTargetFilter]="getDefaultSelectors('dropTarget')"
3896
+ [dragHandle]="getDefaultSelectors('handle')"
3897
+ [hint]="{hintTemplate: customHintTemplate || defaultHint}"
3898
+ [hintContext]="hintContext"
3899
+ (onPress)="handleReorderEvents($event, 'press')"
3900
+ (onDragStart)="handleReorderEvents($event, 'dragStart')"
3901
+ (onDrag)="handleReorderEvents($event, 'drag')"
3902
+ (onDragEnter)="handleReorderEvents($event, 'dragEnter')"
3903
+ (onDragLeave)="handleReorderEvents($event, 'dragLeave')"
3904
+ (onDragEnd)="handleReorderEvents($event, 'dragEnd')"
3905
+ (onDrop)="handleReorderEvents($event, 'drop')"
3906
+ [dragData]="gridData"
3907
+ [id]="ariaRootId"
3908
+ [attr.aria-label]="ariaLabel"
3909
+ [attr.aria-rowcount]="ariaRowCount"
3910
+ [attr.aria-colcount]="ariaColCount">
3911
+ @if (isScrollable) {
3912
+ @if (!hideHeader && !isStacked) {
3913
+ <div
3914
+ class="k-grid-header"
3915
+ [class.k-grid-draggable-header]="groupable || reorderable"
3916
+ role="presentation"
3917
+ [style.padding]="headerPadding">
3918
+ @if (isLocked) {
3919
+ <div
3920
+ #lockedHeader
4057
3921
  role="presentation"
4058
- [size]="size">
4059
- <colgroup kendoGridColGroup
4060
- [columns]="$any(leafColumns)"
3922
+ class="k-grid-header-locked"
3923
+ [style.width.px]="lockedWidth">
3924
+ <table
3925
+ kendoGridResizableTable
3926
+ [locked]="true"
3927
+ role="presentation"
3928
+ class="k-grid-header-table"
3929
+ [style.width.px]="lockedWidth"
3930
+ kendoGridTable
3931
+ [size]="size">
3932
+ <colgroup kendoGridColGroup
3933
+ [columns]="$any(lockedLeafColumns)"
4061
3934
  [groups]="group"
4062
- [sort]="sort"
4063
3935
  [detailTemplate]="detailTemplate">
4064
3936
  </colgroup>
4065
3937
  <thead kendoGridHeader
4066
- *ngIf="!hideHeader && !isStacked"
4067
- class="k-grid-header"
4068
- [class.k-grid-draggable-header]="groupable || reorderable"
4069
- role="rowgroup"
4070
- [resizable]="resizable"
4071
- [scrollable]="false"
4072
- [columns]="$any(visibleColumns)"
4073
- [totalColumnLevels]="totalColumnLevels"
4074
- [totalColumns]="columnsContainer"
4075
- [groups]="group"
4076
- [groupable]="showGroupPanel"
4077
- [reorderable]="reorderable"
4078
- [sort]="sort"
4079
- [sortable]="sortable"
4080
- [filter]="filter"
4081
- [filterable]="filterable"
4082
- [columnMenu]="columnMenuOptions"
4083
- [columnMenuTemplate]="columnMenuTemplate"
4084
- [detailTemplate]="detailTemplate"
4085
- [tabIndex]="navigation.tableEnabled ? '-1' : '0'">
3938
+ role="rowgroup"
3939
+ [resizable]="resizable"
3940
+ [scrollable]="true"
3941
+ [columns]="$any(lockedColumns)"
3942
+ [totalColumnLevels]="totalColumnLevels"
3943
+ [sort]="sort"
3944
+ [groups]="group"
3945
+ [filter]="filter"
3946
+ [filterable]="filterable"
3947
+ [groupable]="showGroupPanel"
3948
+ [reorderable]="reorderable"
3949
+ [sortable]="sortable"
3950
+ [columnMenu]="columnMenuOptions"
3951
+ [columnMenuTemplate]="columnMenuTemplate"
3952
+ [totalColumnsCount]="leafColumns.length"
3953
+ [totalColumns]="columnsContainer"
3954
+ [detailTemplate]="detailTemplate"
3955
+ [tabIndex]="navigation.tableEnabled ? '-1' : '0'">
4086
3956
  </thead>
4087
- <tbody kendoGridTableBody
4088
- [isLoading]="loading"
4089
- [rowHeight]="rowHeight"
4090
- [detailRowHeight]="detailRowHeight"
4091
- [groups]="group"
4092
- [rowsToRender]="rowsToRender"
4093
- [skip]="skip"
4094
- [columns]="$any(leafColumns)"
4095
- [totalColumnsCount]="leafColumns.length"
4096
- [totalColumns]="columnsContainer"
4097
- [selectable]="selectable"
4098
- [filterable]="filterable"
4099
- [noRecordsTemplate]="noRecordsTemplate"
4100
- [detailTemplate]="detailTemplate"
4101
- [trackBy]="trackBy"
4102
- [rowClass]="rowClass"
4103
- kendoDraggable
4104
- kendoGridSelectionMarquee
4105
- [enableDrag]="marqueeSelection">
4106
- </tbody>
4107
- <tfoot kendoGridFooter
4108
- *ngIf="showFooter"
4109
- [scrollable]="false"
4110
- [logicalRowIndex]="ariaRowCount"
4111
- [groups]="group"
4112
- [columns]="$any(leafColumns)"
4113
- [detailTemplate]="detailTemplate"
4114
- [totalColumns]="columnsContainer"
4115
- [totalColumnsCount]="leafColumns.length">
4116
- </tfoot>
4117
- </table>
4118
- </ng-container>
4119
- <div [loadingTemplate]="loadingTemplate" *ngIf="loading" kendoGridLoading></div>
3957
+ </table>
3958
+ </div>
3959
+ }
3960
+ <div #header class="k-grid-header-wrap" role="presentation" data-scrollable
3961
+ [kendoGridResizableContainer]="lockedLeafColumns.length > 0"
3962
+ [lockedWidth]="lockedWidth + scrollbarWidth + 2">
3963
+ <table
3964
+ role="presentation"
3965
+ class="k-grid-header-table"
3966
+ [style.width.px]="nonLockedWidth"
3967
+ kendoGridResizableTable
3968
+ [virtualColumns]="virtualColumns"
3969
+ kendoGridTable
3970
+ [size]="size">
3971
+ <colgroup kendoGridColGroup
3972
+ [columns]="headerLeafColumns"
3973
+ [groups]="isLocked ? [] : group"
3974
+ [detailTemplate]="detailTemplate">
3975
+ </colgroup>
3976
+ <thead kendoGridHeader
3977
+ [resizable]="resizable"
3978
+ role="rowgroup"
3979
+ [scrollable]="true"
3980
+ [columns]="headerColumns"
3981
+ [totalColumnLevels]="totalColumnLevels"
3982
+ [sort]="sort"
3983
+ [filter]="filter"
3984
+ [filterable]="filterable"
3985
+ [groupable]="showGroupPanel"
3986
+ [reorderable]="reorderable"
3987
+ [groups]="isLocked ? [] : group"
3988
+ [sortable]="sortable"
3989
+ [columnMenu]="columnMenuOptions"
3990
+ [columnMenuTemplate]="columnMenuTemplate"
3991
+ [lockedColumnsCount]="lockedLeafColumns.length"
3992
+ [totalColumnsCount]="leafColumns.length"
3993
+ [totalColumns]="columnsContainer"
3994
+ [detailTemplate]="detailTemplate"
3995
+ [tabIndex]="navigation.tableEnabled ? '-1' : '0'">
3996
+ </thead>
3997
+ </table>
3998
+ @if (virtualColumns) {
3999
+ <div class="k-width-container" role="presentation">
4000
+ <div [style.width.px]="columnsContainer.unlockedWidth"></div>
4001
+ </div>
4002
+ }
4003
+ </div>
4004
+ </div>
4005
+ }
4006
+ <kendo-grid-list
4007
+ [data]="$any(view)"
4008
+ [rowHeight]="rowHeight"
4009
+ [detailRowHeight]="detailRowHeight"
4010
+ [total]="totalCount"
4011
+ [take]="pageSize"
4012
+ [groups]="group"
4013
+ [groupable]="groupable"
4014
+ [skip]="skip"
4015
+ [trackBy]="trackBy"
4016
+ [columns]="columnsContainer"
4017
+ [selectable]="selectable"
4018
+ [filterable]="filterable"
4019
+ [detailTemplate]="detailTemplate"
4020
+ [noRecordsTemplate]="noRecordsTemplate"
4021
+ [size]="size"
4022
+ (pageChange)="notifyPageChange('list', $event)"
4023
+ [rowClass]="rowClass"
4024
+ [rowSticky]="rowSticky"
4025
+ [loading]="loading"
4026
+ [isVirtual]="isVirtual"
4027
+ [cellLoadingTemplate]="cellLoadingTemplate?.templateRef"
4028
+ [loadingTemplate]="loadingTemplate?.templateRef"
4029
+ [virtualColumns]="virtualColumns"
4030
+ (scrollBottom)="notifyScrollBottom()"
4031
+ (contentScroll)="contentScroll.emit($event)"
4032
+ kendoDraggable
4033
+ kendoGridSelectionMarquee
4034
+ [enableDrag]="marqueeSelection"
4035
+ [sort]="sort">
4036
+ </kendo-grid-list>
4037
+ @if (showFooter) {
4038
+ <div
4039
+ class="k-grid-footer"
4040
+ [style.padding]="headerPadding">
4041
+ @if (lockedLeafColumns.length && !isStacked) {
4042
+ <div
4043
+ class="k-grid-footer-locked"
4044
+ [style.width.px]="lockedWidth">
4045
+ <table
4046
+ role="presentation"
4047
+ class="k-grid-footer-table"
4048
+ kendoGridResizableTable
4049
+ [locked]="true"
4050
+ [style.width.px]="lockedWidth"
4051
+ kendoGridTable
4052
+ [size]="size">
4053
+ @if (!isStacked) {
4054
+ <colgroup kendoGridColGroup
4055
+ [columns]="$any(lockedLeafColumns)"
4056
+ [groups]="group"
4057
+ [detailTemplate]="detailTemplate">
4058
+ </colgroup>
4059
+ }
4060
+ <tfoot kendoGridFooter
4061
+ [scrollable]="true"
4062
+ [groups]="group"
4063
+ [columns]="$any(lockedLeafColumns)"
4064
+ [detailTemplate]="detailTemplate"
4065
+ [logicalRowIndex]="ariaRowCount"
4066
+ [totalColumns]="columnsContainer"
4067
+ [totalColumnsCount]="leafColumns.length">
4068
+ </tfoot>
4069
+ </table>
4070
+ </div>
4071
+ }
4072
+ <div #footer
4073
+ class="k-grid-footer-wrap" data-scrollable
4074
+ [kendoGridResizableContainer]="lockedLeafColumns.length > 0 && !isStacked"
4075
+ [lockedWidth]="lockedWidth + scrollbarWidth + 3">
4076
+ <table
4077
+ role="presentation"
4078
+ class="k-grid-footer-table"
4079
+ [style.width.px]="nonLockedWidth"
4080
+ kendoGridTable
4081
+ kendoGridResizableTable
4082
+ [size]="size">
4083
+ @if (!isStacked) {
4084
+ <colgroup kendoGridColGroup
4085
+ [columns]="$any(headerLeafColumns)"
4086
+ [groups]="isLocked ? [] : group"
4087
+ [detailTemplate]="detailTemplate">
4088
+ </colgroup>
4089
+ }
4090
+ <tfoot kendoGridFooter
4091
+ [logicalRowIndex]="ariaRowCount"
4092
+ [scrollable]="true"
4093
+ [groups]="isLocked ? [] : group"
4094
+ [columns]="$any(headerColumns)"
4095
+ [lockedColumnsCount]="isStacked ? 0 : lockedLeafColumns.length"
4096
+ [detailTemplate]="detailTemplate"
4097
+ [totalColumns]="columnsContainer"
4098
+ [totalColumnsCount]="leafColumns.length">
4099
+ </tfoot>
4100
+ </table>
4101
+ </div>
4102
+ </div>
4103
+ }
4104
+ }
4105
+ @if (!isScrollable) {
4106
+ <table
4107
+ [style.table-layout]="resizable ? 'fixed' : null"
4108
+ kendoGridTable
4109
+ kendoGridResizableTable
4110
+ class="k-grid-table"
4111
+ role="presentation"
4112
+ [size]="size">
4113
+ <colgroup kendoGridColGroup
4114
+ [columns]="$any(leafColumns)"
4115
+ [groups]="group"
4116
+ [sort]="sort"
4117
+ [detailTemplate]="detailTemplate">
4118
+ </colgroup>
4119
+ @if (!hideHeader && !isStacked) {
4120
+ <thead kendoGridHeader
4121
+ class="k-grid-header"
4122
+ [class.k-grid-draggable-header]="groupable || reorderable"
4123
+ role="rowgroup"
4124
+ [resizable]="resizable"
4125
+ [scrollable]="false"
4126
+ [columns]="$any(visibleColumns)"
4127
+ [totalColumnLevels]="totalColumnLevels"
4128
+ [totalColumns]="columnsContainer"
4129
+ [groups]="group"
4130
+ [groupable]="showGroupPanel"
4131
+ [reorderable]="reorderable"
4132
+ [sort]="sort"
4133
+ [sortable]="sortable"
4134
+ [filter]="filter"
4135
+ [filterable]="filterable"
4136
+ [columnMenu]="columnMenuOptions"
4137
+ [columnMenuTemplate]="columnMenuTemplate"
4138
+ [detailTemplate]="detailTemplate"
4139
+ [tabIndex]="navigation.tableEnabled ? '-1' : '0'">
4140
+ </thead>
4141
+ }
4142
+ <tbody kendoGridTableBody
4143
+ [isLoading]="loading"
4144
+ [rowHeight]="rowHeight"
4145
+ [detailRowHeight]="detailRowHeight"
4146
+ [groups]="group"
4147
+ [rowsToRender]="rowsToRender"
4148
+ [skip]="skip"
4149
+ [columns]="$any(leafColumns)"
4150
+ [totalColumnsCount]="leafColumns.length"
4151
+ [totalColumns]="columnsContainer"
4152
+ [selectable]="selectable"
4153
+ [filterable]="filterable"
4154
+ [noRecordsTemplate]="noRecordsTemplate"
4155
+ [detailTemplate]="detailTemplate"
4156
+ [trackBy]="trackBy"
4157
+ [rowClass]="rowClass"
4158
+ kendoDraggable
4159
+ kendoGridSelectionMarquee
4160
+ [enableDrag]="marqueeSelection">
4161
+ </tbody>
4162
+ @if (showFooter) {
4163
+ <tfoot kendoGridFooter
4164
+ [scrollable]="false"
4165
+ [logicalRowIndex]="ariaRowCount"
4166
+ [groups]="group"
4167
+ [columns]="$any(leafColumns)"
4168
+ [detailTemplate]="detailTemplate"
4169
+ [totalColumns]="columnsContainer"
4170
+ [totalColumnsCount]="leafColumns.length">
4171
+ </tfoot>
4172
+ }
4173
+ </table>
4174
+ }
4175
+ @if (loading) {
4176
+ <div [loadingTemplate]="loadingTemplate" kendoGridLoading></div>
4177
+ }
4120
4178
  </div>
4121
- <kendo-grid-status-bar
4122
- *ngIf="showStatusBar"
4179
+ @if (showStatusBar) {
4180
+ <kendo-grid-status-bar
4123
4181
  [statusBarTemplate]="statusBarTemplate">
4124
- </kendo-grid-status-bar>
4125
- <kendo-pager
4126
- *ngIf="showBottomPager"
4182
+ </kendo-grid-status-bar>
4183
+ }
4184
+ @if (showBottomPager) {
4185
+ <kendo-pager
4127
4186
  #bottomPager
4128
4187
  class="k-grid-pager"
4129
4188
  [navigable]="navigation.pagerEnabled"
@@ -4142,78 +4201,115 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
4142
4201
  (pageTextVisibilityChange)="handlePagerVisibilityChange('showPagerPageText', $event)"
4143
4202
  (itemsTextVisibilityChange)="handlePagerVisibilityChange('showPagerItemsText', $event)">
4144
4203
  <ng-template kendoPagerTemplate>
4145
- <ng-container
4146
- [ngTemplateOutlet]="pagerTemplate ? pagerTemplate?.templateRef : defaultPager"
4147
- [ngTemplateOutletContext]="bottomPager.templateContext"></ng-container>
4204
+ <ng-container
4205
+ [ngTemplateOutlet]="pagerTemplate ? pagerTemplate?.templateRef : defaultPager"
4206
+ [ngTemplateOutletContext]="bottomPager.templateContext"></ng-container>
4148
4207
  </ng-template>
4149
4208
  <kendo-pager-messages
4150
- [ariaLabel]="messageFor('pagerLabel')"
4151
- [firstPage]="messageFor('pagerFirstPage')"
4152
- [inputLabel]="messageFor('pagerInputLabel')"
4153
- [previousPage]="messageFor('pagerPreviousPage')"
4154
- [nextPage]="messageFor('pagerNextPage')"
4155
- [lastPage]="messageFor('pagerLastPage')"
4156
- [selectPage]="messageFor('pagerSelectPage')"
4157
- [page]="messageFor('pagerPage')"
4158
- [itemsPerPage]="messageFor('pagerItemsPerPage')"
4159
- [items]="messageFor('pagerItems')"
4160
- [of]="messageFor('pagerOf')"
4161
- [pageNumberInputTitle]="messageFor('pagerPageNumberInputTitle')">
4209
+ [ariaLabel]="messageFor('pagerLabel')"
4210
+ [firstPage]="messageFor('pagerFirstPage')"
4211
+ [inputLabel]="messageFor('pagerInputLabel')"
4212
+ [previousPage]="messageFor('pagerPreviousPage')"
4213
+ [nextPage]="messageFor('pagerNextPage')"
4214
+ [lastPage]="messageFor('pagerLastPage')"
4215
+ [selectPage]="messageFor('pagerSelectPage')"
4216
+ [page]="messageFor('pagerPage')"
4217
+ [itemsPerPage]="messageFor('pagerItemsPerPage')"
4218
+ [items]="messageFor('pagerItems')"
4219
+ [of]="messageFor('pagerOf')"
4220
+ [pageNumberInputTitle]="messageFor('pagerPageNumberInputTitle')">
4162
4221
  </kendo-pager-messages>
4163
- </kendo-pager>
4164
- <kendo-grid-toolbar
4222
+ </kendo-pager>
4223
+ }
4224
+ @if (showBottomToolbar) {
4225
+ <kendo-grid-toolbar
4165
4226
  class="k-grid-toolbar-bottom"
4166
- *ngIf="showBottomToolbar"
4167
4227
  [size]="size"
4168
4228
  [navigable]="navigation.toolbarEnabled"
4169
4229
  [attr.aria-label]="messageFor('bottomToolbarLabel')"
4170
4230
  [attr.aria-controls]="ariaRootId"
4171
4231
  position="bottom">
4172
- </kendo-grid-toolbar>
4173
-
4232
+ </kendo-grid-toolbar>
4233
+ }
4234
+
4174
4235
  <ng-template #defaultHint>
4175
- <kendo-icon-wrapper
4176
- [name]="getHintSettings('hintIcon')"
4177
- [svgIcon]="getHintSettings('hintSVGIcon')"
4178
- innerCssClass="k-drag-status">
4179
- </kendo-icon-wrapper>
4180
- {{hintText}}
4236
+ <kendo-icon-wrapper
4237
+ [name]="getHintSettings('hintIcon')"
4238
+ [svgIcon]="getHintSettings('hintSVGIcon')"
4239
+ innerCssClass="k-drag-status">
4240
+ </kendo-icon-wrapper>
4241
+ {{hintText}}
4181
4242
  </ng-template>
4182
-
4243
+
4183
4244
  <ng-template #defaultPager>
4184
- <div class="k-pager-numbers-wrap">
4185
- <kendo-pager-prev-buttons [size]="size" *ngIf="normalizedPageableSettings.previousNext"></kendo-pager-prev-buttons>
4186
- <kendo-pager-numeric-buttons
4187
- [size]="size"
4188
- *ngIf="normalizedPageableSettings.type === 'numeric' && normalizedPageableSettings.buttonCount > 0"
4189
- [buttonCount]="normalizedPageableSettings.buttonCount">
4190
- </kendo-pager-numeric-buttons>
4191
- <kendo-pager-input [size]="size" *ngIf="normalizedPageableSettings.type === 'input' || showPagerInput" [showPageText]="showPagerPageText"></kendo-pager-input>
4192
- <kendo-pager-next-buttons [size]="size" *ngIf="normalizedPageableSettings.previousNext"></kendo-pager-next-buttons>
4193
- </div>
4194
- <kendo-pager-page-sizes *ngIf="normalizedPageableSettings.pageSizes"
4245
+ <div class="k-pager-numbers-wrap">
4246
+ @if (normalizedPageableSettings.previousNext) {
4247
+ <kendo-pager-prev-buttons [size]="size"></kendo-pager-prev-buttons>
4248
+ }
4249
+ @if (normalizedPageableSettings.type === 'numeric' && normalizedPageableSettings.buttonCount > 0) {
4250
+ <kendo-pager-numeric-buttons
4195
4251
  [size]="size"
4196
- [pageSizes]="normalizedPageableSettings.pageSizes"
4197
- [showItemsText]="showPagerItemsText">
4252
+ [buttonCount]="normalizedPageableSettings.buttonCount">
4253
+ </kendo-pager-numeric-buttons>
4254
+ }
4255
+ @if (normalizedPageableSettings.type === 'input' || showPagerInput) {
4256
+ <kendo-pager-input [size]="size" [showPageText]="showPagerPageText"></kendo-pager-input>
4257
+ }
4258
+ @if (normalizedPageableSettings.previousNext) {
4259
+ <kendo-pager-next-buttons [size]="size"></kendo-pager-next-buttons>
4260
+ }
4261
+ </div>
4262
+ @if (normalizedPageableSettings.pageSizes) {
4263
+ <kendo-pager-page-sizes
4264
+ [size]="size"
4265
+ [pageSizes]="normalizedPageableSettings.pageSizes"
4266
+ [showItemsText]="showPagerItemsText">
4198
4267
  </kendo-pager-page-sizes>
4199
- <kendo-pager-info *ngIf="normalizedPageableSettings.info">
4268
+ }
4269
+ @if (normalizedPageableSettings.info) {
4270
+ <kendo-pager-info>
4200
4271
  </kendo-pager-info>
4272
+ }
4201
4273
  </ng-template>
4202
4274
  <div #dialogContainer></div>
4203
4275
  <div #windowContainer></div>
4204
-
4205
- <kendo-grid-adaptive-renderer *ngIf="isAdaptiveModeEnabled"></kendo-grid-adaptive-renderer>
4206
- <kendo-resize-sensor *ngIf="isVirtual" (resize)="onResize()"></kendo-resize-sensor>
4207
-
4208
- <div kendoWatermarkOverlay *ngIf="showLicenseWatermark" [licenseMessage]="licenseMessage"></div>
4209
- `,
4276
+
4277
+ @if (isAdaptiveModeEnabled) {
4278
+ <kendo-grid-adaptive-renderer></kendo-grid-adaptive-renderer>
4279
+ }
4280
+ @if (isVirtual) {
4281
+ <kendo-resize-sensor (resize)="onResize()"></kendo-resize-sensor>
4282
+ }
4283
+
4284
+ @if (showLicenseWatermark) {
4285
+ <div kendoWatermarkOverlay [licenseMessage]="licenseMessage"></div>
4286
+ }
4287
+ `,
4210
4288
  standalone: true,
4211
4289
  imports: [
4212
- LocalizedMessagesDirective, NgIf, GridToolbarComponent, GroupPanelComponent,
4213
- TableDirective, GridTableDirective, ColGroupComponent, HeaderComponent, ResizableContainerDirective,
4214
- ListComponent, DragTargetContainerDirective, DropTargetContainerDirective, DraggableDirective,
4215
- GridMarqueeDirective, FooterComponent, TableBodyComponent, LoadingComponent, StatusBarComponent,
4216
- IconWrapperComponent, WatermarkOverlayComponent, ...KENDO_PAGER, NgTemplateOutlet, AdaptiveRendererComponent, ResizeSensorComponent
4290
+ LocalizedMessagesDirective,
4291
+ GridToolbarComponent,
4292
+ GroupPanelComponent,
4293
+ TableDirective,
4294
+ GridTableDirective,
4295
+ ColGroupComponent,
4296
+ HeaderComponent,
4297
+ ResizableContainerDirective,
4298
+ ListComponent,
4299
+ DragTargetContainerDirective,
4300
+ DropTargetContainerDirective,
4301
+ DraggableDirective,
4302
+ GridMarqueeDirective,
4303
+ FooterComponent,
4304
+ TableBodyComponent,
4305
+ LoadingComponent,
4306
+ StatusBarComponent,
4307
+ IconWrapperComponent,
4308
+ WatermarkOverlayComponent,
4309
+ ...KENDO_PAGER,
4310
+ NgTemplateOutlet,
4311
+ AdaptiveRendererComponent,
4312
+ ResizeSensorComponent
4217
4313
  ]
4218
4314
  }]
4219
4315
  }], ctorParameters: () => [{ type: i1.BrowserSupportService }, { type: i2.SelectionService }, { type: i3.CellSelectionService }, { type: i0.ElementRef }, { type: i4.GroupInfoService }, { type: i5.GroupsService }, { type: i6.ChangeNotificationService }, { type: i7.DetailsService }, { type: i8.EditService }, { type: i9.FilterService }, { type: i10.PDFService }, { type: i11.ResponsiveService }, { type: i0.Renderer2 }, { type: i12.ExcelService }, { type: i0.NgZone }, { type: i13.ScrollSyncService }, { type: i14.DomEventsService }, { type: i15.ColumnResizingService }, { type: i0.ChangeDetectorRef }, { type: i16.ColumnReorderService }, { type: i17.ColumnInfoService }, { type: i18.NavigationService }, { type: i19.SortService }, { type: i20.ScrollRequestService }, { type: i21.LocalizationService }, { type: i22.ContextService }, { type: i23.SizingOptionsService }, { type: i24.AdaptiveGridService }, { type: i25.RowReorderService }, { type: i26.DataMappingService }], propDecorators: { data: [{