@progress/kendo-angular-grid 19.0.0-develop.1 → 19.0.0-develop.11

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 (59) hide show
  1. package/column-menu/column-chooser-tool.directive.d.ts +6 -6
  2. package/common/toolbar-tool-base.directive.d.ts +26 -0
  3. package/directives.d.ts +7 -3
  4. package/dragdrop/drag-hint.service.d.ts +3 -2
  5. package/editing/add-command-tool.directive.d.ts +7 -6
  6. package/editing/cancel-command-tool.directive.d.ts +38 -0
  7. package/editing/edit-command-tool.directive.d.ts +38 -0
  8. package/editing/edit.service.d.ts +1 -1
  9. package/editing/remove-command-tool.directive.d.ts +39 -0
  10. package/editing/save-command-tool.directive.d.ts +38 -0
  11. package/editing/toolbar-editing-tool-base.directive.d.ts +29 -0
  12. package/esm2022/column-menu/column-chooser-tool.directive.mjs +17 -30
  13. package/esm2022/common/toolbar-tool-base.directive.mjs +81 -0
  14. package/esm2022/directives.mjs +8 -0
  15. package/esm2022/dragdrop/drag-hint.service.mjs +7 -4
  16. package/esm2022/editing/add-command-tool.directive.mjs +12 -15
  17. package/esm2022/editing/cancel-command-tool.directive.mjs +64 -0
  18. package/esm2022/editing/edit-command-tool.directive.mjs +59 -0
  19. package/esm2022/editing/form/form-formfield.component.mjs +1 -1
  20. package/esm2022/editing/remove-command-tool.directive.mjs +60 -0
  21. package/esm2022/editing/remove-command.directive.mjs +1 -0
  22. package/esm2022/editing/save-command-tool.directive.mjs +64 -0
  23. package/esm2022/editing/toolbar-editing-tool-base.directive.mjs +91 -0
  24. package/esm2022/excel/excel-command-tool.directive.mjs +12 -17
  25. package/esm2022/filtering/cell/autocomplete-filter-cell.component.mjs +1 -1
  26. package/esm2022/filtering/cell/boolean-filter-cell.component.mjs +1 -1
  27. package/esm2022/filtering/cell/date-filter-cell.component.mjs +1 -1
  28. package/esm2022/filtering/cell/filter-cell-operators.component.mjs +1 -1
  29. package/esm2022/filtering/filter-input.directive.mjs +14 -2
  30. package/esm2022/filtering/menu/date-filter-menu-input.component.mjs +1 -1
  31. package/esm2022/filtering/menu/date-filter-menu.component.mjs +1 -1
  32. package/esm2022/filtering/menu/filter-menu-input-wrapper.component.mjs +1 -1
  33. package/esm2022/filtering/menu/numeric-filter-menu.component.mjs +1 -1
  34. package/esm2022/filtering/menu/string-filter-menu.component.mjs +1 -1
  35. package/esm2022/grid.component.mjs +57 -1
  36. package/esm2022/grid.module.mjs +104 -100
  37. package/esm2022/index.mjs +4 -0
  38. package/esm2022/localization/messages.mjs +43 -1
  39. package/esm2022/navigation/navigation.service.mjs +1 -1
  40. package/esm2022/navigation/toolbar-tool-name.mjs +17 -0
  41. package/esm2022/package-metadata.mjs +2 -2
  42. package/esm2022/pdf/pdf-command-tool.directive.mjs +12 -15
  43. package/esm2022/rendering/cell.component.mjs +1 -1
  44. package/esm2022/rendering/table-body.component.mjs +10 -2
  45. package/esm2022/row-reordering/row-reorder.service.mjs +15 -0
  46. package/esm2022/selection/selection.service.mjs +11 -0
  47. package/excel/excel-command-tool.directive.d.ts +5 -5
  48. package/fesm2022/progress-kendo-angular-grid.mjs +566 -102
  49. package/filtering/filter-input.directive.d.ts +1 -0
  50. package/grid.component.d.ts +7 -1
  51. package/grid.module.d.ts +104 -100
  52. package/index.d.ts +4 -0
  53. package/localization/messages.d.ts +29 -1
  54. package/navigation/toolbar-tool-name.d.ts +17 -0
  55. package/package.json +20 -20
  56. package/pdf/pdf-command-tool.directive.d.ts +6 -5
  57. package/row-reordering/row-reorder.service.d.ts +2 -0
  58. package/schematics/ngAdd/index.js +4 -4
  59. package/selection/selection.service.d.ts +1 -0
@@ -2,10 +2,11 @@
2
2
  * Copyright © 2025 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
- import { NgZone, Renderer2, AfterViewInit, OnInit, OnDestroy } from '@angular/core';
5
+ import { NgZone, Renderer2, AfterViewInit, OnInit, OnDestroy, ChangeDetectorRef } from '@angular/core';
6
6
  import { PopupService } from '@progress/kendo-angular-popup';
7
7
  import { RefreshService, ToolBarButtonComponent } from '@progress/kendo-angular-toolbar';
8
8
  import { ContextService } from '../common/provider.service';
9
+ import { ToolbarToolBase } from '../common/toolbar-tool-base.directive';
9
10
  import * as i0 from "@angular/core";
10
11
  /**
11
12
  * Represents the `column-chooser` toolbar tool of the Grid.
@@ -21,12 +22,12 @@ import * as i0 from "@angular/core";
21
22
  * </kendo-grid>
22
23
  * ```
23
24
  */
24
- export declare class ColumnChooserToolbarDirective implements OnInit, AfterViewInit, OnDestroy {
25
+ export declare class ColumnChooserToolbarDirective extends ToolbarToolBase implements OnInit, AfterViewInit, OnDestroy {
25
26
  private renderer;
26
27
  private popupSerivce;
27
28
  host: ToolBarButtonComponent;
28
- private ctx;
29
- private zone;
29
+ ctx: ContextService;
30
+ zone: NgZone;
30
31
  private refresh;
31
32
  /**
32
33
  * Specifies if the changes in the visibility of the column will be immediately applied.
@@ -43,8 +44,7 @@ export declare class ColumnChooserToolbarDirective implements OnInit, AfterViewI
43
44
  private popupRef;
44
45
  private subs;
45
46
  private nextId;
46
- constructor(renderer: Renderer2, popupSerivce: PopupService, host: ToolBarButtonComponent, ctx: ContextService, zone: NgZone, refresh: RefreshService);
47
- ngOnInit(): void;
47
+ constructor(renderer: Renderer2, popupSerivce: PopupService, host: ToolBarButtonComponent, ctx: ContextService, zone: NgZone, refresh: RefreshService, cdr: ChangeDetectorRef);
48
48
  ngAfterViewInit(): void;
49
49
  ngOnDestroy(): void;
50
50
  /**
@@ -0,0 +1,26 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2025 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import { AfterViewInit, ChangeDetectorRef, NgZone, OnDestroy, OnInit } from '@angular/core';
6
+ import { ToolBarButtonComponent } from '@progress/kendo-angular-toolbar';
7
+ import { ContextService } from './provider.service';
8
+ import * as i0 from "@angular/core";
9
+ /**
10
+ * @hidden
11
+ */
12
+ export declare abstract class ToolbarToolBase implements OnInit, OnDestroy, AfterViewInit {
13
+ host: ToolBarButtonComponent;
14
+ commandName: string;
15
+ ctx: ContextService;
16
+ zone: NgZone;
17
+ private cdr;
18
+ private clickSub;
19
+ constructor(host: ToolBarButtonComponent, commandName: string, ctx: ContextService, zone: NgZone, cdr: ChangeDetectorRef);
20
+ ngOnInit(): void;
21
+ ngAfterViewInit(): void;
22
+ ngOnDestroy(): void;
23
+ onClick(_e: any): void;
24
+ static ɵfac: i0.ɵɵFactoryDeclaration<ToolbarToolBase, never>;
25
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ToolbarToolBase, never, never, {}, {}, never, never, false, never>;
26
+ }
package/directives.d.ts CHANGED
@@ -142,6 +142,10 @@ import { RowDragHintTemplateDirective } from "./row-reordering/drag-hint-templat
142
142
  import { DialogFormComponent, FormComponent, FormFormFieldComponent } from "./editing/form";
143
143
  import { SortCommandToolbarDirective } from "./rendering/toolbar/tools/sort-command-tool.directive";
144
144
  import { FilterCommandToolbarDirective } from "./rendering/toolbar/tools/filter-command-tool.directive";
145
+ import { EditCommandToolbarDirective } from "./editing/edit-command-tool.directive";
146
+ import { SaveCommandToolbarDirective } from "./editing/save-command-tool.directive";
147
+ import { RemoveCommandToolbarDirective } from "./editing/remove-command-tool.directive";
148
+ import { CancelCommandToolbarDirective } from "./editing/cancel-command-tool.directive";
145
149
  /**
146
150
  * @hidden
147
151
  *
@@ -223,7 +227,7 @@ export declare const KENDO_GRID_FOOTER_EXPORTS: readonly [typeof FooterComponent
223
227
  *
224
228
  * Utility array that contains the Body module exports
225
229
  */
226
- export declare const KENDO_GRID_BODY_EXPORTS: readonly [typeof CommandColumnComponent, typeof CheckboxColumnComponent, typeof SelectionCheckboxDirective, typeof CellTemplateDirective, typeof EditTemplateDirective, typeof RowDragHandleTemplateDirective, typeof RowDragHintTemplateDirective, typeof TableBodyComponent, typeof NoRecordsTemplateDirective, typeof CellComponent, typeof EditCommandDirective, typeof CancelCommandDirective, typeof SaveCommandDirective, typeof RemoveCommandDirective, typeof AddCommandDirective, typeof AddCommandToolbarDirective, typeof CellLoadingTemplateDirective, typeof LoadingTemplateDirective, typeof RowReorderColumnComponent, typeof SortCommandToolbarDirective, typeof FilterCommandToolbarDirective];
230
+ export declare const KENDO_GRID_BODY_EXPORTS: readonly [typeof CommandColumnComponent, typeof CheckboxColumnComponent, typeof SelectionCheckboxDirective, typeof CellTemplateDirective, typeof EditTemplateDirective, typeof RowDragHandleTemplateDirective, typeof RowDragHintTemplateDirective, typeof TableBodyComponent, typeof NoRecordsTemplateDirective, typeof CellComponent, typeof EditCommandDirective, typeof CancelCommandDirective, typeof SaveCommandDirective, typeof RemoveCommandDirective, typeof AddCommandDirective, typeof AddCommandToolbarDirective, typeof EditCommandToolbarDirective, typeof SaveCommandToolbarDirective, typeof RemoveCommandToolbarDirective, typeof CancelCommandToolbarDirective, typeof CellLoadingTemplateDirective, typeof LoadingTemplateDirective, typeof RowReorderColumnComponent, typeof SortCommandToolbarDirective, typeof FilterCommandToolbarDirective];
227
231
  /**
228
232
  * @hidden
229
233
  *
@@ -235,7 +239,7 @@ export declare const KENDO_GRID_DECLARATIONS: readonly [typeof GridComponent, ty
235
239
  *
236
240
  * Utility array that contains the Grid module exports
237
241
  */
238
- export declare const KENDO_GRID_EXPORTS: readonly [typeof GridComponent, typeof ToolbarTemplateDirective, typeof ToolbarComponent, typeof GridSpacerComponent, typeof StatusBarTemplateDirective, typeof DataBindingDirective, typeof SelectionDirective, typeof CustomMessagesComponent, typeof GroupBindingDirective, typeof TemplateEditingDirective, typeof ReactiveEditingDirective, typeof InCellEditingDirective, typeof ExternalEditingDirective, typeof ExpandDetailsDirective, typeof ExpandGroupDirective, typeof GridToolbarFocusableDirective, typeof GroupHeaderTemplateDirective, typeof GroupHeaderColumnTemplateDirective, typeof GroupFooterTemplateDirective, typeof GroupHeaderComponent, typeof GroupPanelComponent, typeof ColumnComponent, typeof ColumnGroupComponent, typeof LogicalCellDirective, typeof LogicalRowDirective, typeof FocusableDirective, typeof FooterTemplateDirective, typeof ColGroupComponent, typeof ResizableContainerDirective, typeof TemplateContextDirective, typeof FieldAccessorPipe, typeof DetailTemplateDirective, typeof SpanColumnComponent, typeof LoadingComponent, typeof GridTableDirective, typeof CommandColumnComponent, typeof CheckboxColumnComponent, typeof SelectionCheckboxDirective, typeof CellTemplateDirective, typeof EditTemplateDirective, typeof RowDragHandleTemplateDirective, typeof RowDragHintTemplateDirective, typeof TableBodyComponent, typeof NoRecordsTemplateDirective, typeof CellComponent, typeof EditCommandDirective, typeof CancelCommandDirective, typeof SaveCommandDirective, typeof RemoveCommandDirective, typeof AddCommandDirective, typeof AddCommandToolbarDirective, typeof CellLoadingTemplateDirective, typeof LoadingTemplateDirective, typeof RowReorderColumnComponent, typeof SortCommandToolbarDirective, typeof FilterCommandToolbarDirective, typeof HeaderComponent, typeof HeaderTemplateDirective, typeof ColumnHandleDirective, typeof SelectAllCheckboxDirective, typeof FilterRowComponent, typeof FilterCellComponent, typeof FilterCellTemplateDirective, typeof StringFilterCellComponent, typeof NumericFilterCellComponent, typeof AutoCompleteFilterCellComponent, typeof BooleanFilterCellComponent, typeof FilterCellHostDirective, typeof FilterCellWrapperComponent, typeof DateFilterCellComponent, typeof FilterCellOperatorsComponent, typeof ContainsFilterOperatorComponent, typeof DoesNotContainFilterOperatorComponent, typeof EndsWithFilterOperatorComponent, typeof EqualFilterOperatorComponent, typeof IsEmptyFilterOperatorComponent, typeof IsNotEmptyFilterOperatorComponent, typeof IsNotNullFilterOperatorComponent, typeof IsNullFilterOperatorComponent, typeof NotEqualFilterOperatorComponent, typeof StartsWithFilterOperatorComponent, typeof GreaterFilterOperatorComponent, typeof GreaterOrEqualToFilterOperatorComponent, typeof LessFilterOperatorComponent, typeof LessOrEqualToFilterOperatorComponent, typeof AfterFilterOperatorComponent, typeof AfterEqFilterOperatorComponent, typeof BeforeEqFilterOperatorComponent, typeof BeforeFilterOperatorComponent, typeof FilterMenuComponent, typeof FilterMenuContainerComponent, typeof FilterMenuInputWrapperComponent, typeof StringFilterMenuInputComponent, typeof StringFilterMenuComponent, typeof FilterMenuTemplateDirective, typeof NumericFilterMenuComponent, typeof NumericFilterMenuInputComponent, typeof DateFilterMenuInputComponent, typeof DateFilterMenuComponent, typeof FilterMenuHostDirective, typeof BooleanFilterMenuComponent, typeof FilterMenuDropDownListDirective, typeof BooleanFilterRadioButtonDirective, typeof ColumnChooserComponent, typeof ColumnChooserToolbarDirective, typeof ColumnMenuFilterComponent, typeof ColumnMenuItemComponent, typeof ColumnMenuItemContentTemplateDirective, typeof ColumnMenuSortComponent, typeof ColumnMenuLockComponent, typeof ColumnMenuStickComponent, typeof ColumnMenuPositionComponent, typeof ColumnMenuChooserComponent, typeof ColumnMenuTemplateDirective, typeof ColumnMenuContainerComponent, typeof ColumnMenuItemDirective, typeof ColumnMenuComponent, typeof ColumnMenuAutoSizeColumnComponent, typeof ColumnMenuAutoSizeAllColumnsComponent, typeof GridClipboardDirective];
242
+ export declare const KENDO_GRID_EXPORTS: readonly [typeof GridComponent, typeof ToolbarTemplateDirective, typeof ToolbarComponent, typeof GridSpacerComponent, typeof StatusBarTemplateDirective, typeof DataBindingDirective, typeof SelectionDirective, typeof CustomMessagesComponent, typeof GroupBindingDirective, typeof TemplateEditingDirective, typeof ReactiveEditingDirective, typeof InCellEditingDirective, typeof ExternalEditingDirective, typeof ExpandDetailsDirective, typeof ExpandGroupDirective, typeof GridToolbarFocusableDirective, typeof GroupHeaderTemplateDirective, typeof GroupHeaderColumnTemplateDirective, typeof GroupFooterTemplateDirective, typeof GroupHeaderComponent, typeof GroupPanelComponent, typeof ColumnComponent, typeof ColumnGroupComponent, typeof LogicalCellDirective, typeof LogicalRowDirective, typeof FocusableDirective, typeof FooterTemplateDirective, typeof ColGroupComponent, typeof ResizableContainerDirective, typeof TemplateContextDirective, typeof FieldAccessorPipe, typeof DetailTemplateDirective, typeof SpanColumnComponent, typeof LoadingComponent, typeof GridTableDirective, typeof CommandColumnComponent, typeof CheckboxColumnComponent, typeof SelectionCheckboxDirective, typeof CellTemplateDirective, typeof EditTemplateDirective, typeof RowDragHandleTemplateDirective, typeof RowDragHintTemplateDirective, typeof TableBodyComponent, typeof NoRecordsTemplateDirective, typeof CellComponent, typeof EditCommandDirective, typeof CancelCommandDirective, typeof SaveCommandDirective, typeof RemoveCommandDirective, typeof AddCommandDirective, typeof AddCommandToolbarDirective, typeof EditCommandToolbarDirective, typeof SaveCommandToolbarDirective, typeof RemoveCommandToolbarDirective, typeof CancelCommandToolbarDirective, typeof CellLoadingTemplateDirective, typeof LoadingTemplateDirective, typeof RowReorderColumnComponent, typeof SortCommandToolbarDirective, typeof FilterCommandToolbarDirective, typeof HeaderComponent, typeof HeaderTemplateDirective, typeof ColumnHandleDirective, typeof SelectAllCheckboxDirective, typeof FilterRowComponent, typeof FilterCellComponent, typeof FilterCellTemplateDirective, typeof StringFilterCellComponent, typeof NumericFilterCellComponent, typeof AutoCompleteFilterCellComponent, typeof BooleanFilterCellComponent, typeof FilterCellHostDirective, typeof FilterCellWrapperComponent, typeof DateFilterCellComponent, typeof FilterCellOperatorsComponent, typeof ContainsFilterOperatorComponent, typeof DoesNotContainFilterOperatorComponent, typeof EndsWithFilterOperatorComponent, typeof EqualFilterOperatorComponent, typeof IsEmptyFilterOperatorComponent, typeof IsNotEmptyFilterOperatorComponent, typeof IsNotNullFilterOperatorComponent, typeof IsNullFilterOperatorComponent, typeof NotEqualFilterOperatorComponent, typeof StartsWithFilterOperatorComponent, typeof GreaterFilterOperatorComponent, typeof GreaterOrEqualToFilterOperatorComponent, typeof LessFilterOperatorComponent, typeof LessOrEqualToFilterOperatorComponent, typeof AfterFilterOperatorComponent, typeof AfterEqFilterOperatorComponent, typeof BeforeEqFilterOperatorComponent, typeof BeforeFilterOperatorComponent, typeof FilterMenuComponent, typeof FilterMenuContainerComponent, typeof FilterMenuInputWrapperComponent, typeof StringFilterMenuInputComponent, typeof StringFilterMenuComponent, typeof FilterMenuTemplateDirective, typeof NumericFilterMenuComponent, typeof NumericFilterMenuInputComponent, typeof DateFilterMenuInputComponent, typeof DateFilterMenuComponent, typeof FilterMenuHostDirective, typeof BooleanFilterMenuComponent, typeof FilterMenuDropDownListDirective, typeof BooleanFilterRadioButtonDirective, typeof ColumnChooserComponent, typeof ColumnChooserToolbarDirective, typeof ColumnMenuFilterComponent, typeof ColumnMenuItemComponent, typeof ColumnMenuItemContentTemplateDirective, typeof ColumnMenuSortComponent, typeof ColumnMenuLockComponent, typeof ColumnMenuStickComponent, typeof ColumnMenuPositionComponent, typeof ColumnMenuChooserComponent, typeof ColumnMenuTemplateDirective, typeof ColumnMenuContainerComponent, typeof ColumnMenuItemDirective, typeof ColumnMenuComponent, typeof ColumnMenuAutoSizeColumnComponent, typeof ColumnMenuAutoSizeAllColumnsComponent, typeof GridClipboardDirective];
239
243
  /**
240
244
  * @hidden
241
245
  *
@@ -251,4 +255,4 @@ export declare const KENDO_GRID_PDF_EXPORT: readonly [typeof PDFComponent, typeo
251
255
  /**
252
256
  * Utility array that contains all `Grid` related components and directives
253
257
  */
254
- export declare const KENDO_GRID: readonly [typeof GridComponent, typeof ToolbarTemplateDirective, typeof ToolbarComponent, typeof GridSpacerComponent, typeof StatusBarTemplateDirective, typeof DataBindingDirective, typeof SelectionDirective, typeof CustomMessagesComponent, typeof GroupBindingDirective, typeof TemplateEditingDirective, typeof ReactiveEditingDirective, typeof InCellEditingDirective, typeof ExternalEditingDirective, typeof ExpandDetailsDirective, typeof ExpandGroupDirective, typeof GridToolbarFocusableDirective, typeof GroupHeaderTemplateDirective, typeof GroupHeaderColumnTemplateDirective, typeof GroupFooterTemplateDirective, typeof GroupHeaderComponent, typeof GroupPanelComponent, typeof ColumnComponent, typeof ColumnGroupComponent, typeof LogicalCellDirective, typeof LogicalRowDirective, typeof FocusableDirective, typeof FooterTemplateDirective, typeof ColGroupComponent, typeof ResizableContainerDirective, typeof TemplateContextDirective, typeof FieldAccessorPipe, typeof DetailTemplateDirective, typeof SpanColumnComponent, typeof LoadingComponent, typeof GridTableDirective, typeof CommandColumnComponent, typeof CheckboxColumnComponent, typeof SelectionCheckboxDirective, typeof CellTemplateDirective, typeof EditTemplateDirective, typeof RowDragHandleTemplateDirective, typeof RowDragHintTemplateDirective, typeof TableBodyComponent, typeof NoRecordsTemplateDirective, typeof CellComponent, typeof EditCommandDirective, typeof CancelCommandDirective, typeof SaveCommandDirective, typeof RemoveCommandDirective, typeof AddCommandDirective, typeof AddCommandToolbarDirective, typeof CellLoadingTemplateDirective, typeof LoadingTemplateDirective, typeof RowReorderColumnComponent, typeof SortCommandToolbarDirective, typeof FilterCommandToolbarDirective, typeof HeaderComponent, typeof HeaderTemplateDirective, typeof ColumnHandleDirective, typeof SelectAllCheckboxDirective, typeof FilterRowComponent, typeof FilterCellComponent, typeof FilterCellTemplateDirective, typeof StringFilterCellComponent, typeof NumericFilterCellComponent, typeof AutoCompleteFilterCellComponent, typeof BooleanFilterCellComponent, typeof FilterCellHostDirective, typeof FilterCellWrapperComponent, typeof DateFilterCellComponent, typeof FilterCellOperatorsComponent, typeof ContainsFilterOperatorComponent, typeof DoesNotContainFilterOperatorComponent, typeof EndsWithFilterOperatorComponent, typeof EqualFilterOperatorComponent, typeof IsEmptyFilterOperatorComponent, typeof IsNotEmptyFilterOperatorComponent, typeof IsNotNullFilterOperatorComponent, typeof IsNullFilterOperatorComponent, typeof NotEqualFilterOperatorComponent, typeof StartsWithFilterOperatorComponent, typeof GreaterFilterOperatorComponent, typeof GreaterOrEqualToFilterOperatorComponent, typeof LessFilterOperatorComponent, typeof LessOrEqualToFilterOperatorComponent, typeof AfterFilterOperatorComponent, typeof AfterEqFilterOperatorComponent, typeof BeforeEqFilterOperatorComponent, typeof BeforeFilterOperatorComponent, typeof FilterMenuComponent, typeof FilterMenuContainerComponent, typeof FilterMenuInputWrapperComponent, typeof StringFilterMenuInputComponent, typeof StringFilterMenuComponent, typeof FilterMenuTemplateDirective, typeof NumericFilterMenuComponent, typeof NumericFilterMenuInputComponent, typeof DateFilterMenuInputComponent, typeof DateFilterMenuComponent, typeof FilterMenuHostDirective, typeof BooleanFilterMenuComponent, typeof FilterMenuDropDownListDirective, typeof BooleanFilterRadioButtonDirective, typeof ColumnChooserComponent, typeof ColumnChooserToolbarDirective, typeof ColumnMenuFilterComponent, typeof ColumnMenuItemComponent, typeof ColumnMenuItemContentTemplateDirective, typeof ColumnMenuSortComponent, typeof ColumnMenuLockComponent, typeof ColumnMenuStickComponent, typeof ColumnMenuPositionComponent, typeof ColumnMenuChooserComponent, typeof ColumnMenuTemplateDirective, typeof ColumnMenuContainerComponent, typeof ColumnMenuItemDirective, typeof ColumnMenuComponent, typeof ColumnMenuAutoSizeColumnComponent, typeof ColumnMenuAutoSizeAllColumnsComponent, typeof GridClipboardDirective, typeof ExcelComponent, typeof ExcelCommandDirective, typeof ExcelCommandToolbarDirective, typeof ExcelColumnComponent, typeof ExcelColumnGroupComponent, typeof ExcelFooterTemplateDirective, typeof ExcelGroupFooterTemplateDirective, typeof ExcelGroupHeaderColumnTemplateDirective, typeof ExcelGroupHeaderTemplateDirective, typeof PDFComponent, typeof PDFMarginComponent, typeof PDFCommandDirective, typeof PDFTemplateDirective, typeof PDFCommandToolbarDirective];
258
+ export declare const KENDO_GRID: readonly [typeof GridComponent, typeof ToolbarTemplateDirective, typeof ToolbarComponent, typeof GridSpacerComponent, typeof StatusBarTemplateDirective, typeof DataBindingDirective, typeof SelectionDirective, typeof CustomMessagesComponent, typeof GroupBindingDirective, typeof TemplateEditingDirective, typeof ReactiveEditingDirective, typeof InCellEditingDirective, typeof ExternalEditingDirective, typeof ExpandDetailsDirective, typeof ExpandGroupDirective, typeof GridToolbarFocusableDirective, typeof GroupHeaderTemplateDirective, typeof GroupHeaderColumnTemplateDirective, typeof GroupFooterTemplateDirective, typeof GroupHeaderComponent, typeof GroupPanelComponent, typeof ColumnComponent, typeof ColumnGroupComponent, typeof LogicalCellDirective, typeof LogicalRowDirective, typeof FocusableDirective, typeof FooterTemplateDirective, typeof ColGroupComponent, typeof ResizableContainerDirective, typeof TemplateContextDirective, typeof FieldAccessorPipe, typeof DetailTemplateDirective, typeof SpanColumnComponent, typeof LoadingComponent, typeof GridTableDirective, typeof CommandColumnComponent, typeof CheckboxColumnComponent, typeof SelectionCheckboxDirective, typeof CellTemplateDirective, typeof EditTemplateDirective, typeof RowDragHandleTemplateDirective, typeof RowDragHintTemplateDirective, typeof TableBodyComponent, typeof NoRecordsTemplateDirective, typeof CellComponent, typeof EditCommandDirective, typeof CancelCommandDirective, typeof SaveCommandDirective, typeof RemoveCommandDirective, typeof AddCommandDirective, typeof AddCommandToolbarDirective, typeof EditCommandToolbarDirective, typeof SaveCommandToolbarDirective, typeof RemoveCommandToolbarDirective, typeof CancelCommandToolbarDirective, typeof CellLoadingTemplateDirective, typeof LoadingTemplateDirective, typeof RowReorderColumnComponent, typeof SortCommandToolbarDirective, typeof FilterCommandToolbarDirective, typeof HeaderComponent, typeof HeaderTemplateDirective, typeof ColumnHandleDirective, typeof SelectAllCheckboxDirective, typeof FilterRowComponent, typeof FilterCellComponent, typeof FilterCellTemplateDirective, typeof StringFilterCellComponent, typeof NumericFilterCellComponent, typeof AutoCompleteFilterCellComponent, typeof BooleanFilterCellComponent, typeof FilterCellHostDirective, typeof FilterCellWrapperComponent, typeof DateFilterCellComponent, typeof FilterCellOperatorsComponent, typeof ContainsFilterOperatorComponent, typeof DoesNotContainFilterOperatorComponent, typeof EndsWithFilterOperatorComponent, typeof EqualFilterOperatorComponent, typeof IsEmptyFilterOperatorComponent, typeof IsNotEmptyFilterOperatorComponent, typeof IsNotNullFilterOperatorComponent, typeof IsNullFilterOperatorComponent, typeof NotEqualFilterOperatorComponent, typeof StartsWithFilterOperatorComponent, typeof GreaterFilterOperatorComponent, typeof GreaterOrEqualToFilterOperatorComponent, typeof LessFilterOperatorComponent, typeof LessOrEqualToFilterOperatorComponent, typeof AfterFilterOperatorComponent, typeof AfterEqFilterOperatorComponent, typeof BeforeEqFilterOperatorComponent, typeof BeforeFilterOperatorComponent, typeof FilterMenuComponent, typeof FilterMenuContainerComponent, typeof FilterMenuInputWrapperComponent, typeof StringFilterMenuInputComponent, typeof StringFilterMenuComponent, typeof FilterMenuTemplateDirective, typeof NumericFilterMenuComponent, typeof NumericFilterMenuInputComponent, typeof DateFilterMenuInputComponent, typeof DateFilterMenuComponent, typeof FilterMenuHostDirective, typeof BooleanFilterMenuComponent, typeof FilterMenuDropDownListDirective, typeof BooleanFilterRadioButtonDirective, typeof ColumnChooserComponent, typeof ColumnChooserToolbarDirective, typeof ColumnMenuFilterComponent, typeof ColumnMenuItemComponent, typeof ColumnMenuItemContentTemplateDirective, typeof ColumnMenuSortComponent, typeof ColumnMenuLockComponent, typeof ColumnMenuStickComponent, typeof ColumnMenuPositionComponent, typeof ColumnMenuChooserComponent, typeof ColumnMenuTemplateDirective, typeof ColumnMenuContainerComponent, typeof ColumnMenuItemDirective, typeof ColumnMenuComponent, typeof ColumnMenuAutoSizeColumnComponent, typeof ColumnMenuAutoSizeAllColumnsComponent, typeof GridClipboardDirective, typeof ExcelComponent, typeof ExcelCommandDirective, typeof ExcelCommandToolbarDirective, typeof ExcelColumnComponent, typeof ExcelColumnGroupComponent, typeof ExcelFooterTemplateDirective, typeof ExcelGroupFooterTemplateDirective, typeof ExcelGroupHeaderColumnTemplateDirective, typeof ExcelGroupHeaderTemplateDirective, typeof PDFComponent, typeof PDFMarginComponent, typeof PDFCommandDirective, typeof PDFTemplateDirective, typeof PDFCommandToolbarDirective];
@@ -9,11 +9,12 @@ import * as i0 from "@angular/core";
9
9
  * @hidden
10
10
  */
11
11
  export declare class DragHintService {
12
- private santizer;
12
+ private sanitizer;
13
13
  private iconsService;
14
14
  private dom;
15
15
  private cancelIcon;
16
- constructor(santizer: DomSanitizer, iconsService: IconsService);
16
+ constructor(sanitizer: DomSanitizer, iconsService: IconsService);
17
+ ngOnDestroy(): void;
17
18
  create(title: string): void;
18
19
  attach(): Function;
19
20
  remove(): void;
@@ -2,8 +2,11 @@
2
2
  * Copyright © 2025 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
+ import { ChangeDetectorRef, NgZone } from '@angular/core';
5
6
  import { EditService } from './edit.service';
6
7
  import { ToolBarButtonComponent } from '@progress/kendo-angular-toolbar';
8
+ import { ContextService } from '../common/provider.service';
9
+ import { ToolbarEditingToolBase } from './toolbar-editing-tool-base.directive';
7
10
  import * as i0 from "@angular/core";
8
11
  /**
9
12
  * Represents the command for adding a new item to the Grid.
@@ -23,13 +26,11 @@ import * as i0 from "@angular/core";
23
26
  * </kendo-grid>
24
27
  * ```
25
28
  */
26
- export declare class AddCommandToolbarDirective {
27
- private editService;
28
- private host;
29
- private clickSub;
30
- constructor(editService: EditService, host: ToolBarButtonComponent);
29
+ export declare class AddCommandToolbarDirective extends ToolbarEditingToolBase {
30
+ editService: EditService;
31
+ host: ToolBarButtonComponent;
32
+ constructor(editService: EditService, host: ToolBarButtonComponent, ctx: ContextService, zone: NgZone, cdr: ChangeDetectorRef);
31
33
  ngOnInit(): void;
32
- ngOnDestroy(): void;
33
34
  /**
34
35
  * @hidden
35
36
  */
@@ -0,0 +1,38 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2025 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import { ChangeDetectorRef, NgZone } from '@angular/core';
6
+ import { EditService } from './edit.service';
7
+ import { ToolBarButtonComponent } from '@progress/kendo-angular-toolbar';
8
+ import { SelectionService } from '../selection/selection.service';
9
+ import { ContextService } from '../common/provider.service';
10
+ import { ToolbarEditingToolBase } from './toolbar-editing-tool-base.directive';
11
+ import * as i0 from "@angular/core";
12
+ /**
13
+ * Represents the `cancel` command in the Grid.
14
+ * You can apply this directive to any `kendo-toolbar-button` element inside a
15
+ * ToolbarComponent used in the Grid.
16
+ *
17
+ * When the user clicks the toolbar button that is associated with the directive, the
18
+ * [cancel]({% slug api_grid_gridcomponent %}#toc-cancel) event is triggered.
19
+ *
20
+ * @example
21
+ * ```html-no-run
22
+ * <kendo-grid>
23
+ * <kendo-toolbar>
24
+ * <kendo-toolbar-button text="Cancel" kendoGridCancelTool></kendo-toolbar-button>
25
+ * </kendo-toolbar>
26
+ * </kendo-grid>
27
+ * ```
28
+ */
29
+ export declare class CancelCommandToolbarDirective extends ToolbarEditingToolBase {
30
+ editService: EditService;
31
+ constructor(editService: EditService, host: ToolBarButtonComponent, selection: SelectionService, ctx: ContextService, zone: NgZone, cdr: ChangeDetectorRef);
32
+ /**
33
+ * @hidden
34
+ */
35
+ onClick(e: any): void;
36
+ static ɵfac: i0.ɵɵFactoryDeclaration<CancelCommandToolbarDirective, never>;
37
+ static ɵdir: i0.ɵɵDirectiveDeclaration<CancelCommandToolbarDirective, "[kendoGridCancelTool]", never, {}, {}, never, never, true, never>;
38
+ }
@@ -0,0 +1,38 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2025 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import { ChangeDetectorRef, NgZone } from '@angular/core';
6
+ import { EditService } from './edit.service';
7
+ import { ToolBarButtonComponent } from '@progress/kendo-angular-toolbar';
8
+ import { SelectionService } from '../selection/selection.service';
9
+ import { ContextService } from '../common/provider.service';
10
+ import { ToolbarEditingToolBase } from './toolbar-editing-tool-base.directive';
11
+ import * as i0 from "@angular/core";
12
+ /**
13
+ * Represents the `edit` command in the Grid.
14
+ * You can apply this directive to any `kendo-toolbar-button` element inside a
15
+ * ToolbarComponent used in the Grid.
16
+ *
17
+ * When the user clicks the toolbar button that is associated with the directive, the
18
+ * [edit]({% slug api_grid_gridcomponent %}#toc-edit) event is triggered.
19
+ *
20
+ * @example
21
+ * ```html-no-run
22
+ * <kendo-grid>
23
+ * <kendo-toolbar>
24
+ * <kendo-toolbar-button text="Edit" kendoGridEditTool></kendo-toolbar-button>
25
+ * </kendo-toolbar>
26
+ * </kendo-grid>
27
+ * ```
28
+ */
29
+ export declare class EditCommandToolbarDirective extends ToolbarEditingToolBase {
30
+ editService: EditService;
31
+ constructor(editService: EditService, host: ToolBarButtonComponent, selection: SelectionService, ctx: ContextService, zone: NgZone, cdr: ChangeDetectorRef);
32
+ /**
33
+ * @hidden
34
+ */
35
+ onClick(e: any): void;
36
+ static ɵfac: i0.ɵɵFactoryDeclaration<EditCommandToolbarDirective, never>;
37
+ static ɵdir: i0.ɵɵDirectiveDeclaration<EditCommandToolbarDirective, "[kendoGridEditTool]", never, {}, {}, never, never, true, never>;
38
+ }
@@ -33,7 +33,7 @@ export declare class EditService {
33
33
  ngZone: NgZone;
34
34
  changes: EventEmitter<CommandEvent>;
35
35
  changed: Observable<any>;
36
- private editedIndices;
36
+ editedIndices: Entity[];
37
37
  private newItemGroup;
38
38
  private keepEditCell;
39
39
  private keepCellTimeout;
@@ -0,0 +1,39 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2025 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import { ChangeDetectorRef, NgZone } from '@angular/core';
6
+ import { EditService } from './edit.service';
7
+ import { ToolBarButtonComponent } from '@progress/kendo-angular-toolbar';
8
+ import { SelectionService } from '../selection/selection.service';
9
+ import { ContextService } from '../common/provider.service';
10
+ import { ToolbarEditingToolBase } from './toolbar-editing-tool-base.directive';
11
+ import * as i0 from "@angular/core";
12
+ /**
13
+ * Represents the `remove` command in the Grid.
14
+ * You can apply this directive to any `kendo-toolbar-button` element inside a
15
+ * ToolbarComponent used in the Grid.
16
+ *
17
+ * When the user clicks the toolbar button that is associated with the directive, the
18
+ * [remove]({% slug api_grid_gridcomponent %}#toc-remove) event is triggered.
19
+ *
20
+ * @example
21
+ * ```html-no-run
22
+ * <kendo-grid>
23
+ * <kendo-toolbar>
24
+ * <kendo-toolbar-button text="Remove row" kendoGridRemoveTool></kendo-toolbar-button>
25
+ * </kendo-toolbar>
26
+ * </kendo-grid>
27
+ * ```
28
+ */
29
+ export declare class RemoveCommandToolbarDirective extends ToolbarEditingToolBase {
30
+ editService: EditService;
31
+ selection: SelectionService;
32
+ constructor(editService: EditService, host: ToolBarButtonComponent, selection: SelectionService, ctx: ContextService, zone: NgZone, cdr: ChangeDetectorRef);
33
+ /**
34
+ * @hidden
35
+ */
36
+ onClick(e: any): void;
37
+ static ɵfac: i0.ɵɵFactoryDeclaration<RemoveCommandToolbarDirective, never>;
38
+ static ɵdir: i0.ɵɵDirectiveDeclaration<RemoveCommandToolbarDirective, "[kendoGridRemoveTool]", never, {}, {}, never, never, true, never>;
39
+ }
@@ -0,0 +1,38 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2025 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import { ChangeDetectorRef, NgZone } from '@angular/core';
6
+ import { EditService } from './edit.service';
7
+ import { ToolBarButtonComponent } from '@progress/kendo-angular-toolbar';
8
+ import { SelectionService } from '../selection/selection.service';
9
+ import { ContextService } from '../common/provider.service';
10
+ import { ToolbarEditingToolBase } from './toolbar-editing-tool-base.directive';
11
+ import * as i0 from "@angular/core";
12
+ /**
13
+ * Represents the `save` command in the Grid.
14
+ * You can apply this directive to any `kendo-toolbar-button` element inside a
15
+ * ToolbarComponent used in the Grid.
16
+ *
17
+ * When the user clicks the toolbar button that is associated with the directive, the
18
+ * [save]({% slug api_grid_gridcomponent %}#toc-save) event is triggered.
19
+ *
20
+ * @example
21
+ * ```html-no-run
22
+ * <kendo-grid>
23
+ * <kendo-toolbar>
24
+ * <kendo-toolbar-button text="Save" kendoGridSaveTool></kendo-toolbar-button>
25
+ * </kendo-toolbar>
26
+ * </kendo-grid>
27
+ * ```
28
+ */
29
+ export declare class SaveCommandToolbarDirective extends ToolbarEditingToolBase {
30
+ editService: EditService;
31
+ constructor(editService: EditService, host: ToolBarButtonComponent, selection: SelectionService, ctx: ContextService, zone: NgZone, cdr: ChangeDetectorRef);
32
+ /**
33
+ * @hidden
34
+ */
35
+ onClick(e: any): void;
36
+ static ɵfac: i0.ɵɵFactoryDeclaration<SaveCommandToolbarDirective, never>;
37
+ static ɵdir: i0.ɵɵDirectiveDeclaration<SaveCommandToolbarDirective, "[kendoGridSaveTool]", never, {}, {}, never, never, true, never>;
38
+ }
@@ -0,0 +1,29 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2025 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import { ChangeDetectorRef, DoCheck, NgZone } from '@angular/core';
6
+ import { ToolBarButtonComponent } from '@progress/kendo-angular-toolbar';
7
+ import { SelectionService } from '../selection/selection.service';
8
+ import { EditService } from '../editing/edit.service';
9
+ import { ContextService } from '../common/provider.service';
10
+ import { ToolbarToolBase } from '../common/toolbar-tool-base.directive';
11
+ import * as i0 from "@angular/core";
12
+ /**
13
+ * @hidden
14
+ */
15
+ export declare abstract class ToolbarEditingToolBase extends ToolbarToolBase implements DoCheck {
16
+ host: ToolBarButtonComponent;
17
+ commandName: string;
18
+ ctx: ContextService;
19
+ editService?: EditService;
20
+ selection?: SelectionService;
21
+ private isEdited;
22
+ private lastToolState;
23
+ constructor(host: ToolBarButtonComponent, commandName: string, ctx: ContextService, zone: NgZone, cdr: ChangeDetectorRef, editService?: EditService, selection?: SelectionService);
24
+ ngDoCheck(): void;
25
+ get lastSelectionIndex(): number;
26
+ get isSelectionPresent(): boolean;
27
+ static ɵfac: i0.ɵɵFactoryDeclaration<ToolbarEditingToolBase, never>;
28
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ToolbarEditingToolBase, never, never, {}, {}, never, never, false, never>;
29
+ }
@@ -2,15 +2,16 @@
2
2
  * Copyright © 2025 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
- import { Directive, NgZone, Input, Renderer2 } from '@angular/core';
5
+ import { Directive, NgZone, Input, Renderer2, ChangeDetectorRef } from '@angular/core';
6
6
  import { PopupService } from '@progress/kendo-angular-popup';
7
7
  import { RefreshService, ToolBarButtonComponent } from '@progress/kendo-angular-toolbar';
8
8
  import { ColumnListComponent } from './column-list.component';
9
- import { closest, isPresent } from '@progress/kendo-angular-common';
9
+ import { closest } from '@progress/kendo-angular-common';
10
10
  import { Subscription } from 'rxjs';
11
- import { columnsIcon } from '@progress/kendo-svg-icons';
12
11
  import { ContextService } from '../common/provider.service';
13
12
  import { filter, take } from 'rxjs/operators';
13
+ import { ToolbarToolBase } from '../common/toolbar-tool-base.directive';
14
+ import { ToolbarToolName } from '../navigation/toolbar-tool-name';
14
15
  import * as i0 from "@angular/core";
15
16
  import * as i1 from "@progress/kendo-angular-popup";
16
17
  import * as i2 from "@progress/kendo-angular-toolbar";
@@ -30,7 +31,7 @@ let incrementingId = 0;
30
31
  * </kendo-grid>
31
32
  * ```
32
33
  */
33
- export class ColumnChooserToolbarDirective {
34
+ export class ColumnChooserToolbarDirective extends ToolbarToolBase {
34
35
  renderer;
35
36
  popupSerivce;
36
37
  host;
@@ -52,7 +53,8 @@ export class ColumnChooserToolbarDirective {
52
53
  popupRef;
53
54
  subs = new Subscription();
54
55
  nextId = incrementingId++;
55
- constructor(renderer, popupSerivce, host, ctx, zone, refresh) {
56
+ constructor(renderer, popupSerivce, host, ctx, zone, refresh, cdr) {
57
+ super(host, ToolbarToolName.columns, ctx, zone, cdr);
56
58
  this.renderer = renderer;
57
59
  this.popupSerivce = popupSerivce;
58
60
  this.host = host;
@@ -60,29 +62,13 @@ export class ColumnChooserToolbarDirective {
60
62
  this.zone = zone;
61
63
  this.refresh = refresh;
62
64
  }
63
- ngOnInit() {
64
- this.subs.add(this.host.click.subscribe(e => this.onClick(e)));
65
- const hasToolbarIcon = isPresent(this.host.toolbarOptions.icon) && this.host.toolbarOptions.icon !== '';
66
- const hasOverflowIcon = isPresent(this.host.overflowOptions.icon) && this.host.overflowOptions.icon !== '';
67
- const hasIcon = hasToolbarIcon && hasOverflowIcon;
68
- const hasSvgIcon = isPresent(this.host.toolbarOptions.svgIcon) && isPresent(this.host.overflowOptions.svgIcon);
69
- if (!hasIcon) {
70
- this.host.icon = 'columns';
71
- }
72
- if (!hasSvgIcon) {
73
- this.host.svgIcon = columnsIcon;
74
- }
75
- }
76
65
  ngAfterViewInit() {
77
- const hasText = isPresent(this.host.text);
78
- if (!hasText) {
79
- this.zone.onStable.pipe(take(1)).subscribe(() => {
80
- this.host.text = this.ctx.localization.get(`columns`);
81
- });
82
- }
83
- this.host.toolbarButtonElement.nativeElement.setAttribute('aria-haspopup', 'dialog');
84
- this.host.toolbarButtonElement.nativeElement.setAttribute('aria-expanded', 'false');
85
- this.host.toolbarButtonElement.nativeElement.setAttribute('title', this.ctx.localization.get('columns'));
66
+ super.ngAfterViewInit();
67
+ this.zone.onStable.pipe(take(1)).subscribe(() => {
68
+ this.host.toolbarButtonElement.nativeElement.setAttribute('aria-haspopup', 'dialog');
69
+ this.host.toolbarButtonElement.nativeElement.setAttribute('aria-expanded', 'false');
70
+ this.host.toolbarButtonElement.nativeElement.setAttribute('title', this.ctx.localization.get('columns'));
71
+ });
86
72
  this.subs.add(this.refresh.onRefresh.pipe(filter((tool) => tool === this.host)).subscribe((tool) => {
87
73
  if (tool.overflows && this.popupRef) {
88
74
  this.popupRef.close();
@@ -90,6 +76,7 @@ export class ColumnChooserToolbarDirective {
90
76
  }));
91
77
  }
92
78
  ngOnDestroy() {
79
+ super.ngOnDestroy();
93
80
  this.subs.unsubscribe();
94
81
  }
95
82
  /**
@@ -156,8 +143,8 @@ export class ColumnChooserToolbarDirective {
156
143
  this.host.toolbarButtonElement.nativeElement.removeAttribute('aria-controls');
157
144
  focusAnchor && this.host.toolbarButtonElement.nativeElement.focus();
158
145
  }
159
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnChooserToolbarDirective, deps: [{ token: i0.Renderer2 }, { token: i1.PopupService }, { token: i2.ToolBarButtonComponent }, { token: i3.ContextService }, { token: i0.NgZone }, { token: i2.RefreshService }], target: i0.ɵɵFactoryTarget.Directive });
160
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: ColumnChooserToolbarDirective, isStandalone: true, selector: "[kendoGridColumnChooserTool]", inputs: { autoSync: "autoSync", allowHideAll: "allowHideAll" }, ngImport: i0 });
146
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnChooserToolbarDirective, deps: [{ token: i0.Renderer2 }, { token: i1.PopupService }, { token: i2.ToolBarButtonComponent }, { token: i3.ContextService }, { token: i0.NgZone }, { token: i2.RefreshService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
147
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: ColumnChooserToolbarDirective, isStandalone: true, selector: "[kendoGridColumnChooserTool]", inputs: { autoSync: "autoSync", allowHideAll: "allowHideAll" }, usesInheritance: true, ngImport: i0 });
161
148
  }
162
149
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ColumnChooserToolbarDirective, decorators: [{
163
150
  type: Directive,
@@ -165,7 +152,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
165
152
  selector: '[kendoGridColumnChooserTool]',
166
153
  standalone: true
167
154
  }]
168
- }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i1.PopupService }, { type: i2.ToolBarButtonComponent }, { type: i3.ContextService }, { type: i0.NgZone }, { type: i2.RefreshService }]; }, propDecorators: { autoSync: [{
155
+ }], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i1.PopupService }, { type: i2.ToolBarButtonComponent }, { type: i3.ContextService }, { type: i0.NgZone }, { type: i2.RefreshService }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { autoSync: [{
169
156
  type: Input
170
157
  }], allowHideAll: [{
171
158
  type: Input
@@ -0,0 +1,81 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2025 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import { ChangeDetectorRef, Directive, Inject, NgZone } from '@angular/core';
6
+ import { ToolBarButtonComponent } from '@progress/kendo-angular-toolbar';
7
+ import { Subscription } from 'rxjs';
8
+ import { cancelIcon, columnsIcon, fileExcelIcon, filePdfIcon, pencilIcon, plusIcon, saveIcon, trashIcon } from '@progress/kendo-svg-icons';
9
+ import { isPresent } from '@progress/kendo-angular-common';
10
+ import { ContextService } from './provider.service';
11
+ import { ToolbarToolName } from '../navigation/toolbar-tool-name';
12
+ import * as i0 from "@angular/core";
13
+ import * as i1 from "@progress/kendo-angular-toolbar";
14
+ import * as i2 from "./provider.service";
15
+ const ICONS_MAP = {
16
+ edit: { svgIcon: pencilIcon, icon: 'pencil' },
17
+ save: { svgIcon: saveIcon, icon: 'save' },
18
+ cancel: { svgIcon: cancelIcon, icon: 'cancel' },
19
+ remove: { svgIcon: trashIcon, icon: 'trash' },
20
+ add: { svgIcon: plusIcon, icon: 'plus' },
21
+ excelExport: { svgIcon: fileExcelIcon, icon: 'file-excel' },
22
+ pdfExport: { svgIcon: filePdfIcon, icon: 'file-pdf' },
23
+ columns: { svgIcon: columnsIcon, icon: 'columns' }
24
+ };
25
+ /**
26
+ * @hidden
27
+ */
28
+ export class ToolbarToolBase {
29
+ host;
30
+ commandName;
31
+ ctx;
32
+ zone;
33
+ cdr;
34
+ clickSub = new Subscription();
35
+ constructor(host, commandName, ctx, zone, cdr) {
36
+ this.host = host;
37
+ this.commandName = commandName;
38
+ this.ctx = ctx;
39
+ this.zone = zone;
40
+ this.cdr = cdr;
41
+ }
42
+ ngOnInit() {
43
+ this.clickSub = this.host.click.subscribe(e => this.onClick(e));
44
+ const hasIcon = (isPresent(this.host.toolbarOptions.icon) && this.host.toolbarOptions.icon !== '') &&
45
+ (isPresent(this.host.overflowOptions.icon) && this.host.overflowOptions.icon !== '');
46
+ const hasSvgIcon = isPresent(this.host.toolbarOptions.svgIcon) && isPresent(this.host.overflowOptions.svgIcon);
47
+ if (!hasIcon) {
48
+ this.host.icon = ICONS_MAP[this.commandName].icon;
49
+ }
50
+ if (!hasSvgIcon) {
51
+ this.host.svgIcon = ICONS_MAP[this.commandName].svgIcon;
52
+ }
53
+ }
54
+ ngAfterViewInit() {
55
+ const hasText = isPresent(this.host.text);
56
+ if (!hasText) {
57
+ this.zone.runOutsideAngular(() => {
58
+ setTimeout(() => {
59
+ const messageKey = this.commandName === ToolbarToolName.columns ? 'columns' : `${this.commandName}ToolbarToolText`;
60
+ this.host.text = this.ctx.localization.get(messageKey);
61
+ this.zone.run(() => {
62
+ this.cdr.markForCheck();
63
+ });
64
+ });
65
+ });
66
+ }
67
+ }
68
+ ngOnDestroy() {
69
+ this.clickSub.unsubscribe();
70
+ }
71
+ onClick(_e) { }
72
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolbarToolBase, deps: [{ token: i1.ToolBarButtonComponent }, { token: 'command' }, { token: i2.ContextService }, { token: i0.NgZone }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive });
73
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: ToolbarToolBase, ngImport: i0 });
74
+ }
75
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ToolbarToolBase, decorators: [{
76
+ type: Directive,
77
+ args: [{}]
78
+ }], ctorParameters: function () { return [{ type: i1.ToolBarButtonComponent }, { type: undefined, decorators: [{
79
+ type: Inject,
80
+ args: ['command']
81
+ }] }, { type: i2.ContextService }, { type: i0.NgZone }, { type: i0.ChangeDetectorRef }]; } });
@@ -150,6 +150,10 @@ import { RowDragHintTemplateDirective } from "./row-reordering/drag-hint-templat
150
150
  import { DialogFormComponent, FormComponent, FormFormFieldComponent } from "./editing/form";
151
151
  import { SortCommandToolbarDirective } from "./rendering/toolbar/tools/sort-command-tool.directive";
152
152
  import { FilterCommandToolbarDirective } from "./rendering/toolbar/tools/filter-command-tool.directive";
153
+ import { EditCommandToolbarDirective } from "./editing/edit-command-tool.directive";
154
+ import { SaveCommandToolbarDirective } from "./editing/save-command-tool.directive";
155
+ import { RemoveCommandToolbarDirective } from "./editing/remove-command-tool.directive";
156
+ import { CancelCommandToolbarDirective } from "./editing/cancel-command-tool.directive";
153
157
  /**
154
158
  * @hidden
155
159
  *
@@ -369,6 +373,10 @@ export const KENDO_GRID_BODY_EXPORTS = [
369
373
  RemoveCommandDirective,
370
374
  AddCommandDirective,
371
375
  AddCommandToolbarDirective,
376
+ EditCommandToolbarDirective,
377
+ SaveCommandToolbarDirective,
378
+ RemoveCommandToolbarDirective,
379
+ CancelCommandToolbarDirective,
372
380
  CellLoadingTemplateDirective,
373
381
  LoadingTemplateDirective,
374
382
  RowReorderColumnComponent,
@@ -65,21 +65,24 @@ const fontIconsMarkup = (safeTitle) => `
65
65
  * @hidden
66
66
  */
67
67
  export class DragHintService {
68
- santizer;
68
+ sanitizer;
69
69
  iconsService;
70
70
  dom;
71
71
  cancelIcon = cancelIcon;
72
- constructor(santizer, iconsService) {
73
- this.santizer = santizer;
72
+ constructor(sanitizer, iconsService) {
73
+ this.sanitizer = sanitizer;
74
74
  this.iconsService = iconsService;
75
75
  }
76
+ ngOnDestroy() {
77
+ this.remove();
78
+ }
76
79
  create(title) {
77
80
  if (!isDocumentAvailable()) {
78
81
  return;
79
82
  }
80
83
  this.dom = document.createElement("div");
81
84
  decorate(this.dom);
82
- const safeTitle = this.santizer.sanitize(SecurityContext.HTML, title);
85
+ const safeTitle = this.sanitizer.sanitize(SecurityContext.HTML, title);
83
86
  const innerHtml = this.isSVG ?
84
87
  svgIconsMarkup(this.cancelIcon.viewBox, this.cancelIcon.content, safeTitle) :
85
88
  fontIconsMarkup(safeTitle);