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

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 (37) hide show
  1. package/columns/column-base.d.ts +5 -0
  2. package/columns/span-column.component.d.ts +2 -2
  3. package/directives.d.ts +6 -3
  4. package/esm2022/column-resizing/column-handle.directive.mjs +2 -2
  5. package/esm2022/columns/column-base.mjs +9 -0
  6. package/esm2022/columns/columns-container.mjs +1 -1
  7. package/esm2022/columns/span-column.component.mjs +9 -9
  8. package/esm2022/directives.mjs +9 -2
  9. package/esm2022/grid.component.mjs +105 -40
  10. package/esm2022/grid.module.mjs +11 -2
  11. package/esm2022/index.mjs +5 -0
  12. package/esm2022/package-metadata.mjs +2 -2
  13. package/esm2022/rendering/cell.component.mjs +3 -3
  14. package/esm2022/rendering/header/header.component.mjs +1 -1
  15. package/esm2022/rendering/list.component.mjs +1 -1
  16. package/esm2022/rendering/table-body.component.mjs +1 -1
  17. package/esm2022/state-management/grid-state.models.mjs +26 -0
  18. package/esm2022/state-management/redo-command-tool.mjs +66 -0
  19. package/esm2022/state-management/undo-command-tool.mjs +66 -0
  20. package/esm2022/state-management/undo-redo.directive.mjs +178 -0
  21. package/esm2022/state-management/undo-redo.service.mjs +22 -0
  22. package/esm2022/state-management/undo-redo.stack.mjs +232 -0
  23. package/esm2022/utils.mjs +13 -0
  24. package/fesm2022/progress-kendo-angular-grid.mjs +697 -66
  25. package/grid.component.d.ts +36 -19
  26. package/grid.module.d.ts +5 -2
  27. package/index.d.ts +4 -0
  28. package/package.json +20 -20
  29. package/rendering/cell.component.d.ts +1 -1
  30. package/schematics/ngAdd/index.js +4 -4
  31. package/state-management/grid-state.models.d.ts +58 -0
  32. package/state-management/redo-command-tool.d.ts +38 -0
  33. package/state-management/undo-command-tool.d.ts +38 -0
  34. package/state-management/undo-redo.directive.d.ts +51 -0
  35. package/state-management/undo-redo.service.d.ts +19 -0
  36. package/state-management/undo-redo.stack.d.ts +104 -0
  37. package/utils.d.ts +11 -1
@@ -81,6 +81,8 @@ import { RowReorderService } from './row-reordering/row-reorder.service';
81
81
  import { StatusBarTemplateDirective } from './aggregates/status-bar-template.directive';
82
82
  import { PagerTemplateDirective } from '@progress/kendo-angular-pager';
83
83
  import { GridResizableSettings } from './common/resizable-settings';
84
+ import { GridState } from './state-management/grid-state.models';
85
+ import { UndoRedoService } from './state-management/undo-redo.service';
84
86
  import * as i0 from "@angular/core";
85
87
  /**
86
88
  * Represents the Kendo UI for Angular Data Grid component.
@@ -358,6 +360,11 @@ export declare class GridComponent implements AfterContentInit, AfterViewInit, O
358
360
  * @hidden
359
361
  */
360
362
  get selection(): GridSelectionItem[];
363
+ /**
364
+ * The current Grid `GridState` objects. Contains the information about data operations and column state, required
365
+ * to store and restore the Grid state.
366
+ */
367
+ get currentState(): GridState;
361
368
  /**
362
369
  * If set to `true`, the user can resize columns by dragging the edges (resize handles) of their header cells
363
370
  * ([see example]({% slug resizing_columns_grid %})).
@@ -397,6 +404,16 @@ export declare class GridComponent implements AfterContentInit, AfterViewInit, O
397
404
  * @default false
398
405
  */
399
406
  showInactiveTools: boolean;
407
+ /**
408
+ * A function which determines if a specific row is expanded.
409
+ */
410
+ set isDetailExpanded(callback: (args: RowArgs) => boolean);
411
+ get isDetailExpanded(): (args: RowArgs) => boolean;
412
+ /**
413
+ * A function which determines if a specific group row is expanded.
414
+ */
415
+ set isGroupExpanded(callback: (args: GroupRowArgs) => boolean);
416
+ get isGroupExpanded(): (args: GroupRowArgs) => boolean;
400
417
  /**
401
418
  * Fires when the Grid filter is modified through the UI.
402
419
  * You have to handle the event yourself and filter the data.
@@ -429,6 +446,10 @@ export declare class GridComponent implements AfterContentInit, AfterViewInit, O
429
446
  * Fires when the data state of the Grid is changed.
430
447
  */
431
448
  dataStateChange: EventEmitter<DataStateChangeEvent>;
449
+ /**
450
+ * Fires when the data or columns state of the Grid is changed.
451
+ */
452
+ gridStateChange: EventEmitter<GridState>;
432
453
  /**
433
454
  * Fires when the user expands a group header.
434
455
  */
@@ -577,6 +598,10 @@ export declare class GridComponent implements AfterContentInit, AfterViewInit, O
577
598
  get ariaRowCount(): number;
578
599
  get ariaColCount(): number;
579
600
  get navigation(): NavigationService;
601
+ /**
602
+ * @hidden
603
+ */
604
+ get flatData(): Array<any>;
580
605
  private shouldGenerateColumns;
581
606
  private direction;
582
607
  private notifyTimeout;
@@ -631,6 +656,7 @@ export declare class GridComponent implements AfterContentInit, AfterViewInit, O
631
656
  * @hidden
632
657
  */
633
658
  blockArrowSelection: boolean;
659
+ undoRedoService: UndoRedoService;
634
660
  private selectionSubscription;
635
661
  private stateChangeSubscription;
636
662
  private groupExpandCollapseSubscription;
@@ -744,6 +770,10 @@ export declare class GridComponent implements AfterContentInit, AfterViewInit, O
744
770
  * @param options - Additional options configuring the focus target once the editor opens.
745
771
  */
746
772
  editRow(rowIndex: number, group?: FormGroup, options?: EditRowOptions): void;
773
+ /**
774
+ * @hidden
775
+ */
776
+ handleReorderEvents(ev: any, evType: string): void;
747
777
  /**
748
778
  * Closes the editor for a given row ([see example]({% slug inline_editing_grid %}#toc-canceling-editing-1)).
749
779
  *
@@ -807,6 +837,11 @@ export declare class GridComponent implements AfterContentInit, AfterViewInit, O
807
837
  * Initiates the Excel export ([see example]({% slug excelexport_grid %})).
808
838
  */
809
839
  saveAsExcel(): void;
840
+ /**
841
+ * Applies the provided `GridState` object to the Grid.
842
+ */
843
+ loadState(state: GridState): void;
844
+ private traverseColumns;
810
845
  /**
811
846
  * Applies the minimum possible width for the specified column,
812
847
  * so that the whole text fits without wrapping. This method expects the Grid
@@ -893,24 +928,6 @@ export declare class GridComponent implements AfterContentInit, AfterViewInit, O
893
928
  *
894
929
  */
895
930
  reorderColumn(source: ColumnBase, destIndex: number, options?: ColumnReorderConfig): void;
896
- /**
897
- * A function which determines if a specific row is expanded.
898
- */
899
- set isDetailExpanded(callback: (args: RowArgs) => boolean);
900
- get isDetailExpanded(): (args: RowArgs) => boolean;
901
- /**
902
- * A function which determines if a specific group row is expanded.
903
- */
904
- set isGroupExpanded(callback: (args: GroupRowArgs) => boolean);
905
- get isGroupExpanded(): (args: GroupRowArgs) => boolean;
906
- /**
907
- * @hidden
908
- */
909
- handleReorderEvents(ev: any, evType: string): void;
910
- /**
911
- * @hidden
912
- */
913
- get flatData(): Array<any>;
914
931
  /**
915
932
  * @hidden
916
933
  */
@@ -946,5 +963,5 @@ export declare class GridComponent implements AfterContentInit, AfterViewInit, O
946
963
  private shouldResetSelection;
947
964
  private notifyReorderContainers;
948
965
  static ɵfac: i0.ɵɵFactoryDeclaration<GridComponent, never>;
949
- static ɵcmp: i0.ɵɵComponentDeclaration<GridComponent, "kendo-grid", ["kendoGrid"], { "data": { "alias": "data"; "required": false; }; "pageSize": { "alias": "pageSize"; "required": false; }; "height": { "alias": "height"; "required": false; }; "rowHeight": { "alias": "rowHeight"; "required": false; }; "detailRowHeight": { "alias": "detailRowHeight"; "required": false; }; "skip": { "alias": "skip"; "required": false; }; "scrollable": { "alias": "scrollable"; "required": false; }; "selectable": { "alias": "selectable"; "required": false; }; "sort": { "alias": "sort"; "required": false; }; "size": { "alias": "size"; "required": false; }; "trackBy": { "alias": "trackBy"; "required": false; }; "filter": { "alias": "filter"; "required": false; }; "group": { "alias": "group"; "required": false; }; "virtualColumns": { "alias": "virtualColumns"; "required": false; }; "filterable": { "alias": "filterable"; "required": false; }; "sortable": { "alias": "sortable"; "required": false; }; "pageable": { "alias": "pageable"; "required": false; }; "groupable": { "alias": "groupable"; "required": false; }; "gridResizable": { "alias": "gridResizable"; "required": false; }; "rowReorderable": { "alias": "rowReorderable"; "required": false; }; "navigable": { "alias": "navigable"; "required": false; }; "navigatable": { "alias": "navigatable"; "required": false; }; "autoSize": { "alias": "autoSize"; "required": false; }; "rowClass": { "alias": "rowClass"; "required": false; }; "rowSticky": { "alias": "rowSticky"; "required": false; }; "rowSelected": { "alias": "rowSelected"; "required": false; }; "isRowSelectable": { "alias": "isRowSelectable"; "required": false; }; "cellSelected": { "alias": "cellSelected"; "required": false; }; "resizable": { "alias": "resizable"; "required": false; }; "reorderable": { "alias": "reorderable"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "columnMenu": { "alias": "columnMenu"; "required": false; }; "hideHeader": { "alias": "hideHeader"; "required": false; }; "showInactiveTools": { "alias": "showInactiveTools"; "required": false; }; "isDetailExpanded": { "alias": "isDetailExpanded"; "required": false; }; "isGroupExpanded": { "alias": "isGroupExpanded"; "required": false; }; }, { "filterChange": "filterChange"; "pageChange": "pageChange"; "groupChange": "groupChange"; "sortChange": "sortChange"; "selectionChange": "selectionChange"; "rowReorder": "rowReorder"; "dataStateChange": "dataStateChange"; "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"; }, ["columns", "detailTemplateChildren", "cellLoadingTemplateChildren", "loadingTemplateChildren", "statusBarTemplateChildren", "noRecordsTemplateChildren", "pagerTemplateChildren", "toolbarTemplateChildren", "columnMenuTemplates"], ["kendo-toolbar"], true, never>;
966
+ static ɵcmp: i0.ɵɵComponentDeclaration<GridComponent, "kendo-grid", ["kendoGrid"], { "data": { "alias": "data"; "required": false; }; "pageSize": { "alias": "pageSize"; "required": false; }; "height": { "alias": "height"; "required": false; }; "rowHeight": { "alias": "rowHeight"; "required": false; }; "detailRowHeight": { "alias": "detailRowHeight"; "required": false; }; "skip": { "alias": "skip"; "required": false; }; "scrollable": { "alias": "scrollable"; "required": false; }; "selectable": { "alias": "selectable"; "required": false; }; "sort": { "alias": "sort"; "required": false; }; "size": { "alias": "size"; "required": false; }; "trackBy": { "alias": "trackBy"; "required": false; }; "filter": { "alias": "filter"; "required": false; }; "group": { "alias": "group"; "required": false; }; "virtualColumns": { "alias": "virtualColumns"; "required": false; }; "filterable": { "alias": "filterable"; "required": false; }; "sortable": { "alias": "sortable"; "required": false; }; "pageable": { "alias": "pageable"; "required": false; }; "groupable": { "alias": "groupable"; "required": false; }; "gridResizable": { "alias": "gridResizable"; "required": false; }; "rowReorderable": { "alias": "rowReorderable"; "required": false; }; "navigable": { "alias": "navigable"; "required": false; }; "navigatable": { "alias": "navigatable"; "required": false; }; "autoSize": { "alias": "autoSize"; "required": false; }; "rowClass": { "alias": "rowClass"; "required": false; }; "rowSticky": { "alias": "rowSticky"; "required": false; }; "rowSelected": { "alias": "rowSelected"; "required": false; }; "isRowSelectable": { "alias": "isRowSelectable"; "required": false; }; "cellSelected": { "alias": "cellSelected"; "required": false; }; "resizable": { "alias": "resizable"; "required": false; }; "reorderable": { "alias": "reorderable"; "required": false; }; "loading": { "alias": "loading"; "required": false; }; "columnMenu": { "alias": "columnMenu"; "required": false; }; "hideHeader": { "alias": "hideHeader"; "required": false; }; "showInactiveTools": { "alias": "showInactiveTools"; "required": false; }; "isDetailExpanded": { "alias": "isDetailExpanded"; "required": false; }; "isGroupExpanded": { "alias": "isGroupExpanded"; "required": false; }; }, { "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"; }, ["columns", "detailTemplateChildren", "cellLoadingTemplateChildren", "loadingTemplateChildren", "statusBarTemplateChildren", "noRecordsTemplateChildren", "pagerTemplateChildren", "toolbarTemplateChildren", "columnMenuTemplates"], ["kendo-toolbar"], true, never>;
950
967
  }
package/grid.module.d.ts CHANGED
@@ -140,7 +140,10 @@ import * as i134 from "./common/clipboard.directive";
140
140
  import * as i135 from "./editing/form/form.component";
141
141
  import * as i136 from "./editing/form/dialog-form.component";
142
142
  import * as i137 from "./editing/form/form-formfield.component";
143
- import * as i138 from "./column-resizing/table.directive";
143
+ import * as i138 from "./state-management/undo-redo.directive";
144
+ import * as i139 from "./column-resizing/table.directive";
145
+ import * as i140 from "./state-management/undo-command-tool";
146
+ import * as i141 from "./state-management/redo-command-tool";
144
147
  /**
145
148
  * Represents the [NgModule](link:site.data.urls.angular['ngmoduleapi'])
146
149
  * definition for the Grid component.
@@ -164,6 +167,6 @@ import * as i138 from "./column-resizing/table.directive";
164
167
  */
165
168
  export declare class GridModule {
166
169
  static ɵfac: i0.ɵɵFactoryDeclaration<GridModule, never>;
167
- static ɵmod: i0.ɵɵNgModuleDeclaration<GridModule, never, [typeof i1.GroupHeaderTemplateDirective, typeof i2.GroupHeaderColumnTemplateDirective, typeof i3.GroupFooterTemplateDirective, typeof i4.GroupHeaderComponent, typeof i5.GroupPanelComponent, typeof i6.ColumnComponent, typeof i7.ColumnGroupComponent, typeof i8.LogicalCellDirective, typeof i9.LogicalRowDirective, typeof i10.FocusableDirective, typeof i11.FooterTemplateDirective, typeof i12.ColGroupComponent, typeof i13.ResizableContainerDirective, typeof i14.TemplateContextDirective, typeof i15.FieldAccessorPipe, typeof i16.DetailTemplateDirective, typeof i17.SpanColumnComponent, typeof i18.LoadingComponent, typeof i19.GridTableDirective, typeof i20.CommandColumnComponent, typeof i21.CheckboxColumnComponent, typeof i22.SelectionCheckboxDirective, typeof i23.CellTemplateDirective, typeof i24.EditTemplateDirective, typeof i25.RowDragHandleTemplateDirective, typeof i26.RowDragHintTemplateDirective, typeof i27.TableBodyComponent, typeof i28.NoRecordsTemplateDirective, typeof i29.CellComponent, typeof i30.EditCommandDirective, typeof i31.CancelCommandDirective, typeof i32.SaveCommandDirective, typeof i33.RemoveCommandDirective, typeof i34.AddCommandDirective, typeof i35.AddCommandToolbarDirective, typeof i36.EditCommandToolbarDirective, typeof i37.SaveCommandToolbarDirective, typeof i38.RemoveCommandToolbarDirective, typeof i39.CancelCommandToolbarDirective, typeof i40.CellLoadingTemplateDirective, typeof i41.LoadingTemplateDirective, typeof i42.RowReorderColumnComponent, typeof i43.SortCommandToolbarDirective, typeof i44.FilterCommandToolbarDirective, typeof i45.HeaderComponent, typeof i46.HeaderTemplateDirective, typeof i47.ColumnHandleDirective, typeof i48.SelectAllCheckboxDirective, typeof i49.FooterComponent, typeof i50.CustomMessagesComponent, typeof i50.PagerFocusableDirective, typeof i50.PagerInfoComponent, typeof i50.PagerInputComponent, typeof i50.PagerNextButtonsComponent, typeof i50.PagerNumericButtonsComponent, typeof i50.PagerPageSizesComponent, typeof i50.PagerPrevButtonsComponent, typeof i50.PagerTemplateDirective, typeof i50.PagerComponent, typeof i50.PagerSpacerComponent, typeof i51.ToolBarComponent, typeof i51.ToolbarCustomMessagesComponent, typeof i51.ToolBarButtonComponent, typeof i51.ToolBarButtonGroupComponent, typeof i51.ToolBarDropDownButtonComponent, typeof i51.ToolBarSeparatorComponent, typeof i51.ToolBarSpacerComponent, typeof i51.ToolBarSplitButtonComponent, typeof i51.ToolBarToolComponent, typeof i52.FilterRowComponent, typeof i53.FilterCellComponent, typeof i54.FilterCellTemplateDirective, typeof i55.StringFilterCellComponent, typeof i56.NumericFilterCellComponent, typeof i57.AutoCompleteFilterCellComponent, typeof i58.BooleanFilterCellComponent, typeof i59.FilterCellHostDirective, typeof i60.FilterCellWrapperComponent, typeof i61.DateFilterCellComponent, typeof i6.ColumnComponent, typeof i7.ColumnGroupComponent, typeof i8.LogicalCellDirective, typeof i9.LogicalRowDirective, typeof i10.FocusableDirective, typeof i11.FooterTemplateDirective, typeof i12.ColGroupComponent, typeof i13.ResizableContainerDirective, typeof i14.TemplateContextDirective, typeof i15.FieldAccessorPipe, typeof i16.DetailTemplateDirective, typeof i17.SpanColumnComponent, typeof i18.LoadingComponent, typeof i19.GridTableDirective, typeof i62.FilterCellOperatorsComponent, typeof i63.ContainsFilterOperatorComponent, typeof i64.DoesNotContainFilterOperatorComponent, typeof i65.EndsWithFilterOperatorComponent, typeof i66.EqualFilterOperatorComponent, typeof i67.IsEmptyFilterOperatorComponent, typeof i68.IsNotEmptyFilterOperatorComponent, typeof i69.IsNotNullFilterOperatorComponent, typeof i70.IsNullFilterOperatorComponent, typeof i71.NotEqualFilterOperatorComponent, typeof i72.StartsWithFilterOperatorComponent, typeof i73.GreaterFilterOperatorComponent, typeof i74.GreaterOrEqualToFilterOperatorComponent, typeof i75.LessFilterOperatorComponent, typeof i76.LessOrEqualToFilterOperatorComponent, typeof i77.AfterFilterOperatorComponent, typeof i78.AfterEqFilterOperatorComponent, typeof i79.BeforeEqFilterOperatorComponent, typeof i80.BeforeFilterOperatorComponent, typeof i81.FilterInputDirective, typeof i6.ColumnComponent, typeof i7.ColumnGroupComponent, typeof i8.LogicalCellDirective, typeof i9.LogicalRowDirective, typeof i10.FocusableDirective, typeof i11.FooterTemplateDirective, typeof i12.ColGroupComponent, typeof i13.ResizableContainerDirective, typeof i14.TemplateContextDirective, typeof i15.FieldAccessorPipe, typeof i16.DetailTemplateDirective, typeof i17.SpanColumnComponent, typeof i18.LoadingComponent, typeof i19.GridTableDirective, typeof i62.FilterCellOperatorsComponent, typeof i63.ContainsFilterOperatorComponent, typeof i64.DoesNotContainFilterOperatorComponent, typeof i65.EndsWithFilterOperatorComponent, typeof i66.EqualFilterOperatorComponent, typeof i67.IsEmptyFilterOperatorComponent, typeof i68.IsNotEmptyFilterOperatorComponent, typeof i69.IsNotNullFilterOperatorComponent, typeof i70.IsNullFilterOperatorComponent, typeof i71.NotEqualFilterOperatorComponent, typeof i72.StartsWithFilterOperatorComponent, typeof i73.GreaterFilterOperatorComponent, typeof i74.GreaterOrEqualToFilterOperatorComponent, typeof i75.LessFilterOperatorComponent, typeof i76.LessOrEqualToFilterOperatorComponent, typeof i77.AfterFilterOperatorComponent, typeof i78.AfterEqFilterOperatorComponent, typeof i79.BeforeEqFilterOperatorComponent, typeof i80.BeforeFilterOperatorComponent, typeof i81.FilterInputDirective, typeof i82.FilterMenuComponent, typeof i83.FilterMenuContainerComponent, typeof i84.FilterMenuInputWrapperComponent, typeof i85.StringFilterMenuInputComponent, typeof i86.StringFilterMenuComponent, typeof i87.FilterMenuTemplateDirective, typeof i88.NumericFilterMenuComponent, typeof i89.NumericFilterMenuInputComponent, typeof i90.DateFilterMenuInputComponent, typeof i91.DateFilterMenuComponent, typeof i92.FilterMenuHostDirective, typeof i93.BooleanFilterMenuComponent, typeof i94.FilterMenuDropDownListDirective, typeof i95.BooleanFilterRadioButtonDirective, typeof i96.ColumnMenuChooserItemCheckedDirective, typeof i97.ColumnListComponent, typeof i98.ColumnChooserComponent, typeof i99.ColumnChooserToolbarDirective, typeof i100.ColumnMenuChooserComponent, typeof i101.ColumnMenuFilterComponent, typeof i102.ColumnMenuItemComponent, typeof i103.ColumnMenuItemContentTemplateDirective, typeof i104.ColumnMenuSortComponent, typeof i105.ColumnMenuComponent, typeof i106.ColumnMenuLockComponent, typeof i107.ColumnMenuTemplateDirective, typeof i108.ColumnMenuContainerComponent, typeof i109.ColumnMenuItemDirective, typeof i110.ColumnMenuStickComponent, typeof i111.ColumnMenuPositionComponent, typeof i112.ColumnMenuAutoSizeColumnComponent, typeof i113.ColumnMenuAutoSizeAllColumnsComponent, typeof i114.GridComponent, typeof i115.ListComponent, typeof i116.ToolbarComponent, typeof i117.LocalizedMessagesDirective, typeof i118.CustomMessagesComponent, typeof i119.DataBindingDirective, typeof i120.ToolbarTemplateDirective, typeof i121.SelectionDirective, typeof i122.TemplateEditingDirective, typeof i123.ReactiveEditingDirective, typeof i124.InCellEditingDirective, typeof i125.ExternalEditingDirective, typeof i126.ExpandDetailsDirective, typeof i127.ExpandGroupDirective, typeof i128.GroupBindingDirective, typeof i129.GridMarqueeDirective, typeof i130.GridSpacerComponent, typeof i131.GridToolbarFocusableDirective, typeof i132.StatusBarComponent, typeof i133.StatusBarTemplateDirective, typeof i134.GridClipboardDirective, typeof i135.FormComponent, typeof i136.DialogFormComponent, typeof i137.FormFormFieldComponent, typeof i51.ToolBarComponent, typeof i51.ToolbarCustomMessagesComponent, typeof i51.ToolBarButtonComponent, typeof i51.ToolBarButtonGroupComponent, typeof i51.ToolBarDropDownButtonComponent, typeof i51.ToolBarSeparatorComponent, typeof i51.ToolBarSpacerComponent, typeof i51.ToolBarSplitButtonComponent, typeof i51.ToolBarToolComponent, typeof i138.TableDirective], [typeof i114.GridComponent, typeof i120.ToolbarTemplateDirective, typeof i116.ToolbarComponent, typeof i130.GridSpacerComponent, typeof i133.StatusBarTemplateDirective, typeof i119.DataBindingDirective, typeof i121.SelectionDirective, typeof i118.CustomMessagesComponent, typeof i128.GroupBindingDirective, typeof i122.TemplateEditingDirective, typeof i123.ReactiveEditingDirective, typeof i124.InCellEditingDirective, typeof i125.ExternalEditingDirective, typeof i126.ExpandDetailsDirective, typeof i127.ExpandGroupDirective, typeof i131.GridToolbarFocusableDirective, typeof i1.GroupHeaderTemplateDirective, typeof i2.GroupHeaderColumnTemplateDirective, typeof i3.GroupFooterTemplateDirective, typeof i4.GroupHeaderComponent, typeof i5.GroupPanelComponent, typeof i6.ColumnComponent, typeof i7.ColumnGroupComponent, typeof i8.LogicalCellDirective, typeof i9.LogicalRowDirective, typeof i10.FocusableDirective, typeof i11.FooterTemplateDirective, typeof i12.ColGroupComponent, typeof i13.ResizableContainerDirective, typeof i14.TemplateContextDirective, typeof i15.FieldAccessorPipe, typeof i16.DetailTemplateDirective, typeof i17.SpanColumnComponent, typeof i18.LoadingComponent, typeof i19.GridTableDirective, typeof i20.CommandColumnComponent, typeof i21.CheckboxColumnComponent, typeof i22.SelectionCheckboxDirective, typeof i23.CellTemplateDirective, typeof i24.EditTemplateDirective, typeof i25.RowDragHandleTemplateDirective, typeof i26.RowDragHintTemplateDirective, typeof i27.TableBodyComponent, typeof i28.NoRecordsTemplateDirective, typeof i29.CellComponent, typeof i30.EditCommandDirective, typeof i31.CancelCommandDirective, typeof i32.SaveCommandDirective, typeof i33.RemoveCommandDirective, typeof i34.AddCommandDirective, typeof i35.AddCommandToolbarDirective, typeof i36.EditCommandToolbarDirective, typeof i37.SaveCommandToolbarDirective, typeof i38.RemoveCommandToolbarDirective, typeof i39.CancelCommandToolbarDirective, typeof i40.CellLoadingTemplateDirective, typeof i41.LoadingTemplateDirective, typeof i42.RowReorderColumnComponent, typeof i43.SortCommandToolbarDirective, typeof i44.FilterCommandToolbarDirective, typeof i45.HeaderComponent, typeof i46.HeaderTemplateDirective, typeof i47.ColumnHandleDirective, typeof i48.SelectAllCheckboxDirective, typeof i52.FilterRowComponent, typeof i53.FilterCellComponent, typeof i54.FilterCellTemplateDirective, typeof i55.StringFilterCellComponent, typeof i56.NumericFilterCellComponent, typeof i57.AutoCompleteFilterCellComponent, typeof i58.BooleanFilterCellComponent, typeof i59.FilterCellHostDirective, typeof i60.FilterCellWrapperComponent, typeof i61.DateFilterCellComponent, typeof i62.FilterCellOperatorsComponent, typeof i63.ContainsFilterOperatorComponent, typeof i64.DoesNotContainFilterOperatorComponent, typeof i65.EndsWithFilterOperatorComponent, typeof i66.EqualFilterOperatorComponent, typeof i67.IsEmptyFilterOperatorComponent, typeof i68.IsNotEmptyFilterOperatorComponent, typeof i69.IsNotNullFilterOperatorComponent, typeof i70.IsNullFilterOperatorComponent, typeof i71.NotEqualFilterOperatorComponent, typeof i72.StartsWithFilterOperatorComponent, typeof i73.GreaterFilterOperatorComponent, typeof i74.GreaterOrEqualToFilterOperatorComponent, typeof i75.LessFilterOperatorComponent, typeof i76.LessOrEqualToFilterOperatorComponent, typeof i77.AfterFilterOperatorComponent, typeof i78.AfterEqFilterOperatorComponent, typeof i79.BeforeEqFilterOperatorComponent, typeof i80.BeforeFilterOperatorComponent, typeof i82.FilterMenuComponent, typeof i83.FilterMenuContainerComponent, typeof i84.FilterMenuInputWrapperComponent, typeof i85.StringFilterMenuInputComponent, typeof i86.StringFilterMenuComponent, typeof i87.FilterMenuTemplateDirective, typeof i88.NumericFilterMenuComponent, typeof i89.NumericFilterMenuInputComponent, typeof i90.DateFilterMenuInputComponent, typeof i91.DateFilterMenuComponent, typeof i92.FilterMenuHostDirective, typeof i93.BooleanFilterMenuComponent, typeof i94.FilterMenuDropDownListDirective, typeof i95.BooleanFilterRadioButtonDirective, typeof i98.ColumnChooserComponent, typeof i99.ColumnChooserToolbarDirective, typeof i101.ColumnMenuFilterComponent, typeof i102.ColumnMenuItemComponent, typeof i103.ColumnMenuItemContentTemplateDirective, typeof i104.ColumnMenuSortComponent, typeof i106.ColumnMenuLockComponent, typeof i110.ColumnMenuStickComponent, typeof i111.ColumnMenuPositionComponent, typeof i100.ColumnMenuChooserComponent, typeof i107.ColumnMenuTemplateDirective, typeof i108.ColumnMenuContainerComponent, typeof i109.ColumnMenuItemDirective, typeof i105.ColumnMenuComponent, typeof i112.ColumnMenuAutoSizeColumnComponent, typeof i113.ColumnMenuAutoSizeAllColumnsComponent, typeof i134.GridClipboardDirective, typeof i51.ToolBarComponent, typeof i51.ToolbarCustomMessagesComponent, typeof i51.ToolBarButtonComponent, typeof i51.ToolBarButtonGroupComponent, typeof i51.ToolBarDropDownButtonComponent, typeof i51.ToolBarSeparatorComponent, typeof i51.ToolBarSpacerComponent, typeof i51.ToolBarSplitButtonComponent, typeof i51.ToolBarToolComponent, typeof i50.CustomMessagesComponent, typeof i50.PagerFocusableDirective, typeof i50.PagerInfoComponent, typeof i50.PagerInputComponent, typeof i50.PagerNextButtonsComponent, typeof i50.PagerNumericButtonsComponent, typeof i50.PagerPageSizesComponent, typeof i50.PagerPrevButtonsComponent, typeof i50.PagerTemplateDirective, typeof i50.PagerComponent, typeof i50.PagerSpacerComponent]>;
170
+ static ɵmod: i0.ɵɵNgModuleDeclaration<GridModule, never, [typeof i1.GroupHeaderTemplateDirective, typeof i2.GroupHeaderColumnTemplateDirective, typeof i3.GroupFooterTemplateDirective, typeof i4.GroupHeaderComponent, typeof i5.GroupPanelComponent, typeof i6.ColumnComponent, typeof i7.ColumnGroupComponent, typeof i8.LogicalCellDirective, typeof i9.LogicalRowDirective, typeof i10.FocusableDirective, typeof i11.FooterTemplateDirective, typeof i12.ColGroupComponent, typeof i13.ResizableContainerDirective, typeof i14.TemplateContextDirective, typeof i15.FieldAccessorPipe, typeof i16.DetailTemplateDirective, typeof i17.SpanColumnComponent, typeof i18.LoadingComponent, typeof i19.GridTableDirective, typeof i20.CommandColumnComponent, typeof i21.CheckboxColumnComponent, typeof i22.SelectionCheckboxDirective, typeof i23.CellTemplateDirective, typeof i24.EditTemplateDirective, typeof i25.RowDragHandleTemplateDirective, typeof i26.RowDragHintTemplateDirective, typeof i27.TableBodyComponent, typeof i28.NoRecordsTemplateDirective, typeof i29.CellComponent, typeof i30.EditCommandDirective, typeof i31.CancelCommandDirective, typeof i32.SaveCommandDirective, typeof i33.RemoveCommandDirective, typeof i34.AddCommandDirective, typeof i35.AddCommandToolbarDirective, typeof i36.EditCommandToolbarDirective, typeof i37.SaveCommandToolbarDirective, typeof i38.RemoveCommandToolbarDirective, typeof i39.CancelCommandToolbarDirective, typeof i40.CellLoadingTemplateDirective, typeof i41.LoadingTemplateDirective, typeof i42.RowReorderColumnComponent, typeof i43.SortCommandToolbarDirective, typeof i44.FilterCommandToolbarDirective, typeof i45.HeaderComponent, typeof i46.HeaderTemplateDirective, typeof i47.ColumnHandleDirective, typeof i48.SelectAllCheckboxDirective, typeof i49.FooterComponent, typeof i50.CustomMessagesComponent, typeof i50.PagerFocusableDirective, typeof i50.PagerInfoComponent, typeof i50.PagerInputComponent, typeof i50.PagerNextButtonsComponent, typeof i50.PagerNumericButtonsComponent, typeof i50.PagerPageSizesComponent, typeof i50.PagerPrevButtonsComponent, typeof i50.PagerTemplateDirective, typeof i50.PagerComponent, typeof i50.PagerSpacerComponent, typeof i51.ToolBarComponent, typeof i51.ToolbarCustomMessagesComponent, typeof i51.ToolBarButtonComponent, typeof i51.ToolBarButtonGroupComponent, typeof i51.ToolBarDropDownButtonComponent, typeof i51.ToolBarSeparatorComponent, typeof i51.ToolBarSpacerComponent, typeof i51.ToolBarSplitButtonComponent, typeof i51.ToolBarToolComponent, typeof i52.FilterRowComponent, typeof i53.FilterCellComponent, typeof i54.FilterCellTemplateDirective, typeof i55.StringFilterCellComponent, typeof i56.NumericFilterCellComponent, typeof i57.AutoCompleteFilterCellComponent, typeof i58.BooleanFilterCellComponent, typeof i59.FilterCellHostDirective, typeof i60.FilterCellWrapperComponent, typeof i61.DateFilterCellComponent, typeof i6.ColumnComponent, typeof i7.ColumnGroupComponent, typeof i8.LogicalCellDirective, typeof i9.LogicalRowDirective, typeof i10.FocusableDirective, typeof i11.FooterTemplateDirective, typeof i12.ColGroupComponent, typeof i13.ResizableContainerDirective, typeof i14.TemplateContextDirective, typeof i15.FieldAccessorPipe, typeof i16.DetailTemplateDirective, typeof i17.SpanColumnComponent, typeof i18.LoadingComponent, typeof i19.GridTableDirective, typeof i62.FilterCellOperatorsComponent, typeof i63.ContainsFilterOperatorComponent, typeof i64.DoesNotContainFilterOperatorComponent, typeof i65.EndsWithFilterOperatorComponent, typeof i66.EqualFilterOperatorComponent, typeof i67.IsEmptyFilterOperatorComponent, typeof i68.IsNotEmptyFilterOperatorComponent, typeof i69.IsNotNullFilterOperatorComponent, typeof i70.IsNullFilterOperatorComponent, typeof i71.NotEqualFilterOperatorComponent, typeof i72.StartsWithFilterOperatorComponent, typeof i73.GreaterFilterOperatorComponent, typeof i74.GreaterOrEqualToFilterOperatorComponent, typeof i75.LessFilterOperatorComponent, typeof i76.LessOrEqualToFilterOperatorComponent, typeof i77.AfterFilterOperatorComponent, typeof i78.AfterEqFilterOperatorComponent, typeof i79.BeforeEqFilterOperatorComponent, typeof i80.BeforeFilterOperatorComponent, typeof i81.FilterInputDirective, typeof i6.ColumnComponent, typeof i7.ColumnGroupComponent, typeof i8.LogicalCellDirective, typeof i9.LogicalRowDirective, typeof i10.FocusableDirective, typeof i11.FooterTemplateDirective, typeof i12.ColGroupComponent, typeof i13.ResizableContainerDirective, typeof i14.TemplateContextDirective, typeof i15.FieldAccessorPipe, typeof i16.DetailTemplateDirective, typeof i17.SpanColumnComponent, typeof i18.LoadingComponent, typeof i19.GridTableDirective, typeof i62.FilterCellOperatorsComponent, typeof i63.ContainsFilterOperatorComponent, typeof i64.DoesNotContainFilterOperatorComponent, typeof i65.EndsWithFilterOperatorComponent, typeof i66.EqualFilterOperatorComponent, typeof i67.IsEmptyFilterOperatorComponent, typeof i68.IsNotEmptyFilterOperatorComponent, typeof i69.IsNotNullFilterOperatorComponent, typeof i70.IsNullFilterOperatorComponent, typeof i71.NotEqualFilterOperatorComponent, typeof i72.StartsWithFilterOperatorComponent, typeof i73.GreaterFilterOperatorComponent, typeof i74.GreaterOrEqualToFilterOperatorComponent, typeof i75.LessFilterOperatorComponent, typeof i76.LessOrEqualToFilterOperatorComponent, typeof i77.AfterFilterOperatorComponent, typeof i78.AfterEqFilterOperatorComponent, typeof i79.BeforeEqFilterOperatorComponent, typeof i80.BeforeFilterOperatorComponent, typeof i81.FilterInputDirective, typeof i82.FilterMenuComponent, typeof i83.FilterMenuContainerComponent, typeof i84.FilterMenuInputWrapperComponent, typeof i85.StringFilterMenuInputComponent, typeof i86.StringFilterMenuComponent, typeof i87.FilterMenuTemplateDirective, typeof i88.NumericFilterMenuComponent, typeof i89.NumericFilterMenuInputComponent, typeof i90.DateFilterMenuInputComponent, typeof i91.DateFilterMenuComponent, typeof i92.FilterMenuHostDirective, typeof i93.BooleanFilterMenuComponent, typeof i94.FilterMenuDropDownListDirective, typeof i95.BooleanFilterRadioButtonDirective, typeof i96.ColumnMenuChooserItemCheckedDirective, typeof i97.ColumnListComponent, typeof i98.ColumnChooserComponent, typeof i99.ColumnChooserToolbarDirective, typeof i100.ColumnMenuChooserComponent, typeof i101.ColumnMenuFilterComponent, typeof i102.ColumnMenuItemComponent, typeof i103.ColumnMenuItemContentTemplateDirective, typeof i104.ColumnMenuSortComponent, typeof i105.ColumnMenuComponent, typeof i106.ColumnMenuLockComponent, typeof i107.ColumnMenuTemplateDirective, typeof i108.ColumnMenuContainerComponent, typeof i109.ColumnMenuItemDirective, typeof i110.ColumnMenuStickComponent, typeof i111.ColumnMenuPositionComponent, typeof i112.ColumnMenuAutoSizeColumnComponent, typeof i113.ColumnMenuAutoSizeAllColumnsComponent, typeof i114.GridComponent, typeof i115.ListComponent, typeof i116.ToolbarComponent, typeof i117.LocalizedMessagesDirective, typeof i118.CustomMessagesComponent, typeof i119.DataBindingDirective, typeof i120.ToolbarTemplateDirective, typeof i121.SelectionDirective, typeof i122.TemplateEditingDirective, typeof i123.ReactiveEditingDirective, typeof i124.InCellEditingDirective, typeof i125.ExternalEditingDirective, typeof i126.ExpandDetailsDirective, typeof i127.ExpandGroupDirective, typeof i128.GroupBindingDirective, typeof i129.GridMarqueeDirective, typeof i130.GridSpacerComponent, typeof i131.GridToolbarFocusableDirective, typeof i132.StatusBarComponent, typeof i133.StatusBarTemplateDirective, typeof i134.GridClipboardDirective, typeof i135.FormComponent, typeof i136.DialogFormComponent, typeof i137.FormFormFieldComponent, typeof i138.UndoRedoDirective, typeof i51.ToolBarComponent, typeof i51.ToolbarCustomMessagesComponent, typeof i51.ToolBarButtonComponent, typeof i51.ToolBarButtonGroupComponent, typeof i51.ToolBarDropDownButtonComponent, typeof i51.ToolBarSeparatorComponent, typeof i51.ToolBarSpacerComponent, typeof i51.ToolBarSplitButtonComponent, typeof i51.ToolBarToolComponent, typeof i139.TableDirective, typeof i140.UndoCommandToolbarDirective, typeof i141.RedoCommandToolbarDirective], [typeof i114.GridComponent, typeof i120.ToolbarTemplateDirective, typeof i116.ToolbarComponent, typeof i130.GridSpacerComponent, typeof i133.StatusBarTemplateDirective, typeof i119.DataBindingDirective, typeof i121.SelectionDirective, typeof i118.CustomMessagesComponent, typeof i128.GroupBindingDirective, typeof i122.TemplateEditingDirective, typeof i123.ReactiveEditingDirective, typeof i124.InCellEditingDirective, typeof i125.ExternalEditingDirective, typeof i126.ExpandDetailsDirective, typeof i127.ExpandGroupDirective, typeof i131.GridToolbarFocusableDirective, typeof i1.GroupHeaderTemplateDirective, typeof i2.GroupHeaderColumnTemplateDirective, typeof i3.GroupFooterTemplateDirective, typeof i4.GroupHeaderComponent, typeof i5.GroupPanelComponent, typeof i6.ColumnComponent, typeof i7.ColumnGroupComponent, typeof i8.LogicalCellDirective, typeof i9.LogicalRowDirective, typeof i10.FocusableDirective, typeof i11.FooterTemplateDirective, typeof i12.ColGroupComponent, typeof i13.ResizableContainerDirective, typeof i14.TemplateContextDirective, typeof i15.FieldAccessorPipe, typeof i16.DetailTemplateDirective, typeof i17.SpanColumnComponent, typeof i18.LoadingComponent, typeof i19.GridTableDirective, typeof i20.CommandColumnComponent, typeof i21.CheckboxColumnComponent, typeof i22.SelectionCheckboxDirective, typeof i23.CellTemplateDirective, typeof i24.EditTemplateDirective, typeof i25.RowDragHandleTemplateDirective, typeof i26.RowDragHintTemplateDirective, typeof i27.TableBodyComponent, typeof i28.NoRecordsTemplateDirective, typeof i29.CellComponent, typeof i30.EditCommandDirective, typeof i31.CancelCommandDirective, typeof i32.SaveCommandDirective, typeof i33.RemoveCommandDirective, typeof i34.AddCommandDirective, typeof i35.AddCommandToolbarDirective, typeof i36.EditCommandToolbarDirective, typeof i37.SaveCommandToolbarDirective, typeof i38.RemoveCommandToolbarDirective, typeof i39.CancelCommandToolbarDirective, typeof i40.CellLoadingTemplateDirective, typeof i41.LoadingTemplateDirective, typeof i42.RowReorderColumnComponent, typeof i43.SortCommandToolbarDirective, typeof i44.FilterCommandToolbarDirective, typeof i45.HeaderComponent, typeof i46.HeaderTemplateDirective, typeof i47.ColumnHandleDirective, typeof i48.SelectAllCheckboxDirective, typeof i52.FilterRowComponent, typeof i53.FilterCellComponent, typeof i54.FilterCellTemplateDirective, typeof i55.StringFilterCellComponent, typeof i56.NumericFilterCellComponent, typeof i57.AutoCompleteFilterCellComponent, typeof i58.BooleanFilterCellComponent, typeof i59.FilterCellHostDirective, typeof i60.FilterCellWrapperComponent, typeof i61.DateFilterCellComponent, typeof i62.FilterCellOperatorsComponent, typeof i63.ContainsFilterOperatorComponent, typeof i64.DoesNotContainFilterOperatorComponent, typeof i65.EndsWithFilterOperatorComponent, typeof i66.EqualFilterOperatorComponent, typeof i67.IsEmptyFilterOperatorComponent, typeof i68.IsNotEmptyFilterOperatorComponent, typeof i69.IsNotNullFilterOperatorComponent, typeof i70.IsNullFilterOperatorComponent, typeof i71.NotEqualFilterOperatorComponent, typeof i72.StartsWithFilterOperatorComponent, typeof i73.GreaterFilterOperatorComponent, typeof i74.GreaterOrEqualToFilterOperatorComponent, typeof i75.LessFilterOperatorComponent, typeof i76.LessOrEqualToFilterOperatorComponent, typeof i77.AfterFilterOperatorComponent, typeof i78.AfterEqFilterOperatorComponent, typeof i79.BeforeEqFilterOperatorComponent, typeof i80.BeforeFilterOperatorComponent, typeof i82.FilterMenuComponent, typeof i83.FilterMenuContainerComponent, typeof i84.FilterMenuInputWrapperComponent, typeof i85.StringFilterMenuInputComponent, typeof i86.StringFilterMenuComponent, typeof i87.FilterMenuTemplateDirective, typeof i88.NumericFilterMenuComponent, typeof i89.NumericFilterMenuInputComponent, typeof i90.DateFilterMenuInputComponent, typeof i91.DateFilterMenuComponent, typeof i92.FilterMenuHostDirective, typeof i93.BooleanFilterMenuComponent, typeof i94.FilterMenuDropDownListDirective, typeof i95.BooleanFilterRadioButtonDirective, typeof i98.ColumnChooserComponent, typeof i99.ColumnChooserToolbarDirective, typeof i101.ColumnMenuFilterComponent, typeof i102.ColumnMenuItemComponent, typeof i103.ColumnMenuItemContentTemplateDirective, typeof i104.ColumnMenuSortComponent, typeof i106.ColumnMenuLockComponent, typeof i110.ColumnMenuStickComponent, typeof i111.ColumnMenuPositionComponent, typeof i100.ColumnMenuChooserComponent, typeof i107.ColumnMenuTemplateDirective, typeof i108.ColumnMenuContainerComponent, typeof i109.ColumnMenuItemDirective, typeof i105.ColumnMenuComponent, typeof i112.ColumnMenuAutoSizeColumnComponent, typeof i113.ColumnMenuAutoSizeAllColumnsComponent, typeof i134.GridClipboardDirective, typeof i138.UndoRedoDirective, typeof i140.UndoCommandToolbarDirective, typeof i141.RedoCommandToolbarDirective, typeof i51.ToolBarComponent, typeof i51.ToolbarCustomMessagesComponent, typeof i51.ToolBarButtonComponent, typeof i51.ToolBarButtonGroupComponent, typeof i51.ToolBarDropDownButtonComponent, typeof i51.ToolBarSeparatorComponent, typeof i51.ToolBarSpacerComponent, typeof i51.ToolBarSplitButtonComponent, typeof i51.ToolBarToolComponent, typeof i50.CustomMessagesComponent, typeof i50.PagerFocusableDirective, typeof i50.PagerInfoComponent, typeof i50.PagerInputComponent, typeof i50.PagerNextButtonsComponent, typeof i50.PagerNumericButtonsComponent, typeof i50.PagerPageSizesComponent, typeof i50.PagerPrevButtonsComponent, typeof i50.PagerTemplateDirective, typeof i50.PagerComponent, typeof i50.PagerSpacerComponent]>;
168
171
  static ɵinj: i0.ɵɵInjectorDeclaration<GridModule>;
169
172
  }
package/index.d.ts CHANGED
@@ -189,6 +189,10 @@ export { ScrollRequest } from './scrolling/scroll-request.service';
189
189
  export { GridSize } from './common/size-options';
190
190
  export { GridClipboardDirective } from './common/clipboard.directive';
191
191
  export { GridClipboardEvent, GridClipboardEventType, GridClipboardTargetType, GridClipboardSettings, GridClipboardItem, GridClipboardTargetCell } from './common/clipboard-types';
192
+ export * from './state-management/grid-state.models';
193
+ export { UndoRedoDirective } from './state-management/undo-redo.directive';
194
+ export { UndoCommandToolbarDirective } from './state-management/undo-command-tool';
195
+ export { RedoCommandToolbarDirective } from './state-management/redo-command-tool';
192
196
  export { CellRowspanFn } from './columns/cell-rowspan';
193
197
  export { ColumnMenuTemplateDirective } from './column-menu/column-menu-template.directive';
194
198
  export { EditCommandDirective } from './editing/edit-command.directive';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@progress/kendo-angular-grid",
3
- "version": "19.0.0-develop.11",
3
+ "version": "19.0.0-develop.12",
4
4
  "description": "Kendo UI Grid for Angular - high performance data grid with paging, filtering, virtualization, CRUD, and more.",
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
6
  "author": "Progress",
@@ -26,7 +26,7 @@
26
26
  "package": {
27
27
  "productName": "Kendo UI for Angular",
28
28
  "productCode": "KENDOUIANGULAR",
29
- "publishDate": 1746798571,
29
+ "publishDate": 1747069795,
30
30
  "licensingDocsUrl": "https://www.telerik.com/kendo-angular-ui/my-license/"
31
31
  }
32
32
  },
@@ -39,28 +39,28 @@
39
39
  "@progress/kendo-data-query": "^1.0.0",
40
40
  "@progress/kendo-drawing": "^1.21.0",
41
41
  "@progress/kendo-licensing": "^1.5.0",
42
- "@progress/kendo-angular-buttons": "19.0.0-develop.11",
43
- "@progress/kendo-angular-common": "19.0.0-develop.11",
44
- "@progress/kendo-angular-dateinputs": "19.0.0-develop.11",
45
- "@progress/kendo-angular-layout": "19.0.0-develop.11",
46
- "@progress/kendo-angular-dropdowns": "19.0.0-develop.11",
47
- "@progress/kendo-angular-excel-export": "19.0.0-develop.11",
48
- "@progress/kendo-angular-icons": "19.0.0-develop.11",
49
- "@progress/kendo-angular-inputs": "19.0.0-develop.11",
50
- "@progress/kendo-angular-indicators": "19.0.0-develop.11",
51
- "@progress/kendo-angular-intl": "19.0.0-develop.11",
52
- "@progress/kendo-angular-l10n": "19.0.0-develop.11",
53
- "@progress/kendo-angular-label": "19.0.0-develop.11",
54
- "@progress/kendo-angular-pager": "19.0.0-develop.11",
55
- "@progress/kendo-angular-pdf-export": "19.0.0-develop.11",
56
- "@progress/kendo-angular-popup": "19.0.0-develop.11",
57
- "@progress/kendo-angular-toolbar": "19.0.0-develop.11",
58
- "@progress/kendo-angular-utils": "19.0.0-develop.11",
42
+ "@progress/kendo-angular-buttons": "19.0.0-develop.12",
43
+ "@progress/kendo-angular-common": "19.0.0-develop.12",
44
+ "@progress/kendo-angular-dateinputs": "19.0.0-develop.12",
45
+ "@progress/kendo-angular-layout": "19.0.0-develop.12",
46
+ "@progress/kendo-angular-dropdowns": "19.0.0-develop.12",
47
+ "@progress/kendo-angular-excel-export": "19.0.0-develop.12",
48
+ "@progress/kendo-angular-icons": "19.0.0-develop.12",
49
+ "@progress/kendo-angular-inputs": "19.0.0-develop.12",
50
+ "@progress/kendo-angular-indicators": "19.0.0-develop.12",
51
+ "@progress/kendo-angular-intl": "19.0.0-develop.12",
52
+ "@progress/kendo-angular-l10n": "19.0.0-develop.12",
53
+ "@progress/kendo-angular-label": "19.0.0-develop.12",
54
+ "@progress/kendo-angular-pager": "19.0.0-develop.12",
55
+ "@progress/kendo-angular-pdf-export": "19.0.0-develop.12",
56
+ "@progress/kendo-angular-popup": "19.0.0-develop.12",
57
+ "@progress/kendo-angular-toolbar": "19.0.0-develop.12",
58
+ "@progress/kendo-angular-utils": "19.0.0-develop.12",
59
59
  "rxjs": "^6.5.3 || ^7.0.0"
60
60
  },
61
61
  "dependencies": {
62
62
  "tslib": "^2.3.1",
63
- "@progress/kendo-angular-schematics": "19.0.0-develop.11",
63
+ "@progress/kendo-angular-schematics": "19.0.0-develop.12",
64
64
  "@progress/kendo-common": "^1.0.1",
65
65
  "@progress/kendo-file-saver": "^1.0.0"
66
66
  },
@@ -44,7 +44,7 @@ export declare class CellComponent implements DoCheck {
44
44
  get selectionCheckboxId(): string;
45
45
  get selectionCheckboxLabel(): string;
46
46
  get isSpanColumn(): boolean;
47
- get childColumns(): ColumnComponent[];
47
+ get children(): ColumnComponent[];
48
48
  get isRowReorderColumn(): boolean;
49
49
  get isRowSelectable(): boolean;
50
50
  private _rowIndex;
@@ -4,14 +4,14 @@ const schematics_1 = require("@angular-devkit/schematics");
4
4
  function default_1(options) {
5
5
  const finalOptions = Object.assign(Object.assign({}, options), { mainNgModule: 'GridModule', package: 'grid', peerDependencies: {
6
6
  // peer deps of the dropdowns
7
- '@progress/kendo-angular-treeview': '19.0.0-develop.11',
8
- '@progress/kendo-angular-navigation': '19.0.0-develop.11',
7
+ '@progress/kendo-angular-treeview': '19.0.0-develop.12',
8
+ '@progress/kendo-angular-navigation': '19.0.0-develop.12',
9
9
  // peer dependency of kendo-angular-inputs
10
- '@progress/kendo-angular-dialog': '19.0.0-develop.11',
10
+ '@progress/kendo-angular-dialog': '19.0.0-develop.12',
11
11
  // peer dependency of kendo-angular-icons
12
12
  '@progress/kendo-svg-icons': '^4.0.0',
13
13
  // peer dependency of kendo-angular-layout
14
- '@progress/kendo-angular-progressbar': '19.0.0-develop.11'
14
+ '@progress/kendo-angular-progressbar': '19.0.0-develop.12'
15
15
  } });
16
16
  return (0, schematics_1.externalSchematic)('@progress/kendo-angular-schematics', 'ng-add', finalOptions);
17
17
  }
@@ -0,0 +1,58 @@
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 { State } from "@progress/kendo-data-query";
6
+ import { GridDataResult } from "../data/data.collection";
7
+ import { PreventableEvent } from "@progress/kendo-angular-common";
8
+ /**
9
+ * Represent the state of each Grid column that can be changed by the user.
10
+ */
11
+ export interface ColumnState {
12
+ /**
13
+ * The column identifier that is unique in the scope of its `GridComponent` owner.
14
+ */
15
+ id: string;
16
+ /**
17
+ * The column width in pixels.
18
+ */
19
+ width?: number;
20
+ /**
21
+ * The column visibility.
22
+ */
23
+ hidden?: boolean;
24
+ /**
25
+ * The column locked state.
26
+ */
27
+ locked?: boolean;
28
+ /**
29
+ * The column sticky state.
30
+ */
31
+ sticky?: boolean;
32
+ orderIndex?: number;
33
+ }
34
+ /**
35
+ * The state of the grid component.
36
+ * It includes the current `State`, data, and columns state.
37
+ */
38
+ export interface GridState extends State {
39
+ columnsState?: ColumnState[];
40
+ currentData?: Array<any> | GridDataResult | null;
41
+ }
42
+ /**
43
+ * Arguments for the `undo` and `redo` events.
44
+ */
45
+ export declare class UndoRedoEvent extends PreventableEvent {
46
+ /**
47
+ * The event data of the original action that triggered the state change.
48
+ */
49
+ readonly originalEvent: any;
50
+ /**
51
+ * The grid state and rendered data at the time of the action.
52
+ */
53
+ readonly gridState: GridState;
54
+ /**
55
+ * @hidden
56
+ */
57
+ constructor({ originalEvent, gridState }: any);
58
+ }
@@ -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 { ToolBarButtonComponent } from '@progress/kendo-angular-toolbar';
6
+ import { UndoRedoService } from './undo-redo.service';
7
+ import * as i0 from "@angular/core";
8
+ /**
9
+ * Represents the command for triggering the redo action in the Grid.
10
+ * You can apply this directive to any `kendo-toolbar-button` element inside a
11
+ * ToolbarComponent used in the Grid.
12
+ *
13
+ * When the user clicks the toolbar button that is associated with the directive, the
14
+ * [redo]({% slug api_grid_undoredodirective %}#toc-redo) event is triggered.
15
+ *
16
+ * @example
17
+ * ```html-no-run
18
+ * <kendo-grid>
19
+ * <kendo-toolbar>
20
+ * <kendo-toolbar-button kendoGridRedoTool></kendo-toolbar-button>
21
+ * </kendo-toolbar>
22
+ * </kendo-grid>
23
+ * ```
24
+ */
25
+ export declare class RedoCommandToolbarDirective {
26
+ private undoRedoService;
27
+ private host;
28
+ private subs;
29
+ constructor(undoRedoService: UndoRedoService, host: ToolBarButtonComponent);
30
+ ngOnInit(): void;
31
+ ngOnDestroy(): void;
32
+ /**
33
+ * @hidden
34
+ */
35
+ onClick(e: any): void;
36
+ static ɵfac: i0.ɵɵFactoryDeclaration<RedoCommandToolbarDirective, never>;
37
+ static ɵdir: i0.ɵɵDirectiveDeclaration<RedoCommandToolbarDirective, "[kendoGridRedoTool]", 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 { ToolBarButtonComponent } from '@progress/kendo-angular-toolbar';
6
+ import { UndoRedoService } from './undo-redo.service';
7
+ import * as i0 from "@angular/core";
8
+ /**
9
+ * Represents the command for triggering the undo action in the Grid.
10
+ * You can apply this directive to any `kendo-toolbar-button` element inside a
11
+ * ToolbarComponent used in the Grid.
12
+ *
13
+ * When the user clicks the toolbar button that is associated with the directive, the
14
+ * [undo]({% slug api_grid_undoredodirective %}#toc-undo) event is triggered.
15
+ *
16
+ * @example
17
+ * ```html-no-run
18
+ * <kendo-grid>
19
+ * <kendo-toolbar>
20
+ * <kendo-toolbar-button kendoGridUndoTool></kendo-toolbar-button>
21
+ * </kendo-toolbar>
22
+ * </kendo-grid>
23
+ * ```
24
+ */
25
+ export declare class UndoCommandToolbarDirective {
26
+ private undoRedoService;
27
+ private host;
28
+ private subs;
29
+ constructor(undoRedoService: UndoRedoService, host: ToolBarButtonComponent);
30
+ ngOnInit(): void;
31
+ ngOnDestroy(): void;
32
+ /**
33
+ * @hidden
34
+ */
35
+ onClick(e: any): void;
36
+ static ɵfac: i0.ɵɵFactoryDeclaration<UndoCommandToolbarDirective, never>;
37
+ static ɵdir: i0.ɵɵDirectiveDeclaration<UndoCommandToolbarDirective, "[kendoGridUndoTool]", never, {}, {}, never, never, true, never>;
38
+ }
@@ -0,0 +1,51 @@
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 { EventEmitter, OnDestroy, OnInit } from '@angular/core';
6
+ import { GridComponent } from '../grid.component';
7
+ import { UndoRedoEvent } from './grid-state.models';
8
+ import { EditService } from '../editing/edit.service';
9
+ import { UndoRedoService } from './undo-redo.service';
10
+ import { ChangeNotificationService } from '../data/change-notification.service';
11
+ import * as i0 from "@angular/core";
12
+ export declare class UndoRedoDirective implements OnInit, OnDestroy {
13
+ private host;
14
+ private editService;
15
+ private undoRedoService;
16
+ private changeNotification;
17
+ /**
18
+ * Determines the maximum number of actions to keep in the undo-redo stack.
19
+ * @default 10
20
+ */
21
+ maxStoredStates: number;
22
+ /**
23
+ * Fires when undo action is performed. Exposes the state of the grid that will be applied.
24
+ */
25
+ onUndo: EventEmitter<UndoRedoEvent>;
26
+ /**
27
+ * Fires when undo action is performed. Exposes the state of the grid that will be applied.
28
+ */
29
+ onRedo: EventEmitter<UndoRedoEvent>;
30
+ /**
31
+ * Returns an array of all undo-redo actions that are currently in the stack.
32
+ */
33
+ get undoRedoItems(): UndoRedoEvent[];
34
+ private stack;
35
+ private subs;
36
+ private addToState;
37
+ constructor(host: GridComponent, editService: EditService, undoRedoService: UndoRedoService, changeNotification: ChangeNotificationService);
38
+ ngOnInit(): void;
39
+ ngOnDestroy(): void;
40
+ /**
41
+ * Re-applies the last action, reverted by the `undo` method.
42
+ */
43
+ redo(): void;
44
+ /**
45
+ * Reverts the last user action.
46
+ */
47
+ undo(): void;
48
+ private updateUndoRedoDisabled;
49
+ static ɵfac: i0.ɵɵFactoryDeclaration<UndoRedoDirective, never>;
50
+ static ɵdir: i0.ɵɵDirectiveDeclaration<UndoRedoDirective, "[kendoGridUndoRedo]", ["kendoGridUndoRedo"], { "maxStoredStates": { "alias": "maxStoredStates"; "required": false; }; }, { "onUndo": "undo"; "onRedo": "redo"; }, never, never, true, never>;
51
+ }
@@ -0,0 +1,19 @@
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 { Subject } from 'rxjs';
6
+ import { GridState } from './grid-state.models';
7
+ import * as i0 from "@angular/core";
8
+ /**
9
+ * @hidden
10
+ */
11
+ export declare class UndoRedoService {
12
+ originalEvent: any;
13
+ onUndo: Subject<undefined>;
14
+ onRedo: Subject<undefined>;
15
+ stackEndReached: Subject<'start' | 'end' | false>;
16
+ setState: Subject<GridState>;
17
+ static ɵfac: i0.ɵɵFactoryDeclaration<UndoRedoService, never>;
18
+ static ɵprov: i0.ɵɵInjectableDeclaration<UndoRedoService>;
19
+ }
@@ -0,0 +1,104 @@
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
+ /**
6
+ * @hidden
7
+ * Represents a node in the undo-redo linked list.
8
+ */
9
+ export interface UndoRedoNode<T> {
10
+ /** The state data stored in the node */
11
+ state: T;
12
+ /** Reference to the previous node (the previous state) */
13
+ previous: UndoRedoNode<T> | null;
14
+ /** Reference to the next node (the next state) */
15
+ next: UndoRedoNode<T> | null;
16
+ /** Optional identifier for the node */
17
+ id?: string | number;
18
+ }
19
+ /**
20
+ * @hidden
21
+ * A linked-list based implementation of an undo-redo stack.
22
+ * Maintains a chain of states that can be navigated forward and backward.
23
+ */
24
+ export declare class UndoRedoStack<T> {
25
+ private maxSize;
26
+ /** The current active node in the undo-redo history */
27
+ private currentNode;
28
+ /** The root node of the stack (first state) */
29
+ private rootNode;
30
+ /** Track the size of the stack */
31
+ private _size;
32
+ /**
33
+ * Creates a new UndoRedoStack.
34
+ * @param maxSize Optional maximum number of states to maintain (unlimited if not provided)
35
+ */
36
+ constructor(maxSize?: number);
37
+ /**
38
+ * Gets the current number of states in the stack
39
+ */
40
+ get size(): number;
41
+ /**
42
+ * Gets the current active state
43
+ */
44
+ get current(): T | null;
45
+ /**
46
+ * Checks if undo is available (if there's a previous state)
47
+ */
48
+ get canUndo(): boolean;
49
+ /**
50
+ * Checks if redo is available (if there's a next state)
51
+ */
52
+ get canRedo(): boolean;
53
+ /**
54
+ * Adds a new state to the undo-redo stack
55
+ * @param state The state to add
56
+ * @param id Optional identifier for the state
57
+ * @returns The newly created node
58
+ */
59
+ add(state: T, id?: string | number): UndoRedoNode<T>;
60
+ /**
61
+ * Finds a node by its identifier
62
+ * @param id The identifier to search for
63
+ * @returns The found node or null if not found
64
+ */
65
+ find(id: string | number): UndoRedoNode<T> | null;
66
+ /**
67
+ * Removes a node by its identifier
68
+ * @param id The identifier of the node to remove
69
+ * @returns True if the node was found and removed, false otherwise
70
+ */
71
+ remove(id: string | number): boolean;
72
+ /**
73
+ * Performs an undo operation, moving to the previous state
74
+ * @returns The previous state or null if can't undo
75
+ */
76
+ undo(): T | null;
77
+ /**
78
+ * Performs a redo operation, moving to the next state
79
+ * @returns The next state or null if can't redo
80
+ */
81
+ redo(): T | null;
82
+ /**
83
+ * Clears all history
84
+ */
85
+ clear(): void;
86
+ /**
87
+ * Removes all states after the specified node
88
+ * @param node The node to truncate from
89
+ * @returns The number of nodes removed
90
+ */
91
+ private truncateForward;
92
+ /**
93
+ * Ensures the stack doesn't exceed the maximum size by removing oldest nodes
94
+ */
95
+ private enforceMaxSize;
96
+ /**
97
+ * Gets all states in the stack as an array (from oldest to newest)
98
+ */
99
+ toArray(): T[];
100
+ /**
101
+ * Gets the history nodes as an array (useful for debugging)
102
+ */
103
+ getNodes(): UndoRedoNode<T>[];
104
+ }