igniteui-angular 19.2.6 → 19.2.8

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 (42) hide show
  1. package/fesm2022/igniteui-angular.mjs +187 -118
  2. package/fesm2022/igniteui-angular.mjs.map +1 -1
  3. package/lib/core/i18n/grid-resources.d.ts +14 -0
  4. package/lib/core/styles/components/grid/_excel-filtering-theme.scss +1 -1
  5. package/lib/core/styles/components/input/_input-group-component.scss +2 -1
  6. package/lib/core/styles/components/input/_input-group-theme.scss +53 -5
  7. package/lib/core/styles/components/label/_label-theme.scss +4 -1
  8. package/lib/core/styles/components/radio/_radio-component.scss +12 -0
  9. package/lib/core/styles/components/radio/_radio-theme.scss +30 -8
  10. package/lib/directives/for-of/for_of.directive.d.ts +7 -2
  11. package/lib/directives/radio/radio-group.directive.d.ts +33 -15
  12. package/lib/directives/tooltip/tooltip.directive.d.ts +11 -2
  13. package/lib/grids/common/crud.service.d.ts +2 -2
  14. package/lib/grids/grid-base.directive.d.ts +5 -5
  15. package/package.json +1 -1
  16. package/public_api.d.ts +1 -1
  17. package/styles/igniteui-angular-dark.css +1 -1
  18. package/styles/igniteui-angular.css +1 -1
  19. package/styles/igniteui-bootstrap-dark.css +1 -1
  20. package/styles/igniteui-bootstrap-light.css +1 -1
  21. package/styles/igniteui-dark-green.css +1 -1
  22. package/styles/igniteui-fluent-dark-excel.css +1 -1
  23. package/styles/igniteui-fluent-dark-word.css +1 -1
  24. package/styles/igniteui-fluent-dark.css +1 -1
  25. package/styles/igniteui-fluent-light-excel.css +1 -1
  26. package/styles/igniteui-fluent-light-word.css +1 -1
  27. package/styles/igniteui-fluent-light.css +1 -1
  28. package/styles/igniteui-indigo-dark.css +1 -1
  29. package/styles/igniteui-indigo-light.css +1 -1
  30. package/styles/maps/igniteui-angular-dark.css.map +1 -1
  31. package/styles/maps/igniteui-angular.css.map +1 -1
  32. package/styles/maps/igniteui-bootstrap-dark.css.map +1 -1
  33. package/styles/maps/igniteui-bootstrap-light.css.map +1 -1
  34. package/styles/maps/igniteui-dark-green.css.map +1 -1
  35. package/styles/maps/igniteui-fluent-dark-excel.css.map +1 -1
  36. package/styles/maps/igniteui-fluent-dark-word.css.map +1 -1
  37. package/styles/maps/igniteui-fluent-dark.css.map +1 -1
  38. package/styles/maps/igniteui-fluent-light-excel.css.map +1 -1
  39. package/styles/maps/igniteui-fluent-light-word.css.map +1 -1
  40. package/styles/maps/igniteui-fluent-light.css.map +1 -1
  41. package/styles/maps/igniteui-indigo-dark.css.map +1 -1
  42. package/styles/maps/igniteui-indigo-light.css.map +1 -1
@@ -45,6 +45,8 @@ export interface IGridResourceStrings {
45
45
  igx_grid_filter_true?: string;
46
46
  igx_grid_filter_false?: string;
47
47
  igx_grid_filter_all?: string;
48
+ igx_grid_filter_in?: string;
49
+ igx_grid_filter_notIn?: string;
48
50
  igx_grid_filter_condition_placeholder?: string;
49
51
  igx_grid_summary_count?: string;
50
52
  igx_grid_summary_min?: string;
@@ -89,6 +91,7 @@ export interface IGridResourceStrings {
89
91
  igx_grid_excel_no_matches?: string;
90
92
  igx_grid_excel_matches_count?: string;
91
93
  igx_grid_advanced_filter_title?: string;
94
+ igx_grid_advanced_filter_from_label?: string;
92
95
  igx_grid_advanced_filter_and_group?: string;
93
96
  igx_grid_advanced_filter_or_group?: string;
94
97
  igx_grid_advanced_filter_end_group?: string;
@@ -97,12 +100,23 @@ export interface IGridResourceStrings {
97
100
  igx_grid_advanced_filter_and_label?: string;
98
101
  igx_grid_advanced_filter_or_label?: string;
99
102
  igx_grid_advanced_filter_add_condition?: string;
103
+ igx_grid_advanced_filter_add_condition_root?: string;
104
+ igx_grid_advanced_filter_add_group?: string;
105
+ igx_grid_advanced_filter_add_group_root?: string;
100
106
  igx_grid_advanced_filter_ungroup?: string;
101
107
  igx_grid_advanced_filter_delete?: string;
102
108
  igx_grid_advanced_filter_delete_filters?: string;
103
109
  igx_grid_advanced_filter_initial_text?: string;
104
110
  igx_grid_advanced_filter_column_placeholder?: string;
105
111
  igx_grid_advanced_filter_value_placeholder?: string;
112
+ igx_grid_advanced_filter_query_value_placeholder?: string;
113
+ igx_grid_advanced_filter_switch_group?: string;
114
+ igx_grid_advanced_filter_dialog_title?: string;
115
+ igx_grid_advanced_filter_dialog_message?: string;
116
+ igx_grid_advanced_filter_dialog_checkbox_text?: string;
117
+ igx_grid_advanced_filter_drop_ghost_text?: string;
118
+ igx_grid_advanced_filter_select_entity?: string;
119
+ igx_grid_advanced_filter_select_return_field_single?: string;
106
120
  igx_grid_pinned_row_indicator?: string;
107
121
  igx_grid_hiding_check_all_label?: string;
108
122
  igx_grid_hiding_uncheck_all_label?: string;
@@ -308,7 +308,7 @@
308
308
  }
309
309
 
310
310
  igx-icon {
311
- --component-size: #{if($variant == 'indigo', 2, var(--grid-size))};
311
+ --component-size: #{if($variant == 'indigo', 2, 1)};
312
312
 
313
313
  display: initial;
314
314
  width: var(--size) !important;
@@ -51,7 +51,7 @@
51
51
 
52
52
  @include e(input) {
53
53
  @extend %form-group-input !optional;
54
- @extend %chrome-autofill-fix !optional;
54
+ @extend %autofill-background-fix !optional;
55
55
  @extend %edge-clear-icon-fix !optional;
56
56
 
57
57
  &:hover {
@@ -421,6 +421,7 @@
421
421
 
422
422
  // Type border START
423
423
  @include m(border) {
424
+ @extend %form-group-display--border !optional;
424
425
  @extend %form-group-display--no-margin !optional;
425
426
 
426
427
  @include e(bundle) {
@@ -394,6 +394,25 @@
394
394
  }
395
395
  }
396
396
 
397
+ @if $variant == 'material' {
398
+ %form-group-display--border {
399
+ &:has(input:-webkit-autofill, input:autofill) {
400
+ %igx-input-group__notch--border {
401
+ border-block-start-color: transparent;
402
+ }
403
+
404
+ %form-group-label {
405
+ --label-position: #{sizable(18px, 22px, 26px)};
406
+
407
+ transform: translateY(calc(var(--label-position) * -1));
408
+ margin-top: 0;
409
+ overflow: hidden;
410
+ will-change: font-size, color, transform;
411
+ }
412
+ }
413
+ }
414
+ }
415
+
397
416
  %form-group-display--box {
398
417
  %form-group-border {
399
418
  margin-bottom: 0;
@@ -464,6 +483,20 @@
464
483
  --size: var(--input-icon) !important;
465
484
  }
466
485
  }
486
+
487
+ @if $variant == 'material' {
488
+ &:not(%form-group-display--border) {
489
+ &:has(input:-webkit-autofill, input:autofill) {
490
+ %form-group-label {
491
+ --floating-label-position: -73%;
492
+
493
+ @include type-style('caption');
494
+
495
+ transform: translateY(var(--floating-label-position));
496
+ }
497
+ }
498
+ }
499
+ }
467
500
  }
468
501
 
469
502
  %form-group-placeholder {
@@ -1234,13 +1267,20 @@
1234
1267
  }
1235
1268
  }
1236
1269
 
1237
- %chrome-autofill-fix {
1270
+ // This is a hack that removes the autofill background and it's essential,
1271
+ // otherwise the background is on top of the floating label in material theme.
1272
+ // The !important flag is because bootstrap theme(and potentially feature themes) is overriding the transition delay.
1273
+ %autofill-background-fix {
1238
1274
  &:-webkit-autofill,
1239
1275
  &:-webkit-autofill:hover,
1240
1276
  &:-webkit-autofill:focus,
1241
- &:-webkit-autofill:active {
1242
- -webkit-transition-delay: 99999s;
1243
- transition-delay: 99999s;
1277
+ &:-webkit-autofill:active,
1278
+ &:autofill,
1279
+ &:autofill:hover,
1280
+ &:autofill:focus,
1281
+ &:autofill:active, {
1282
+ -webkit-transition-delay: 99999s !important;
1283
+ transition-delay: 99999s !important;
1244
1284
  }
1245
1285
  }
1246
1286
 
@@ -2092,7 +2132,15 @@
2092
2132
  map.get($bootstrap-inline-padding, 'cosy'),
2093
2133
  map.get($bootstrap-inline-padding, 'comfortable')
2094
2134
  );
2095
- transition: box-shadow .15s ease-out, border .15s ease-out;
2135
+ }
2136
+
2137
+ // The :not selector is needed otherwise bootstrap will override the %autofill-background-fix
2138
+ %form-group-display--bootstrap {
2139
+ :not(:has(input:-webkit-autofill, input:autofill)) {
2140
+ %bootstrap-input {
2141
+ transition: box-shadow .15s ease-out, border .15s ease-out;
2142
+ }
2143
+ }
2096
2144
  }
2097
2145
 
2098
2146
  %bootstrap-input,
@@ -11,9 +11,11 @@
11
11
 
12
12
  /// @param {Map} $schema [$light-material-schema] - The schema used as basis for styling the component.
13
13
  /// @param {Map} $color [null] - The text color.
14
+ /// @param {Map} $disabled-color [null] - The disabled text color.
14
15
  @function label-theme(
15
16
  $schema: $light-material-schema,
16
- $color: null
17
+ $color: null,
18
+ $disabled-color: null,
17
19
  ) {
18
20
  $name: 'igx-label';
19
21
  $selector: '[igxLabel]';
@@ -31,6 +33,7 @@
31
33
  name: $name,
32
34
  selector: $selector,
33
35
  color: $color,
36
+ disabled-color: $disabled-color,
34
37
  theme: map.get($schema, '_meta', 'theme'),
35
38
  variant: map.get($schema, '_meta', 'theme'),
36
39
  ));
@@ -115,6 +115,10 @@
115
115
  @include e(label) {
116
116
  @extend %radio-label--disabled !optional;
117
117
  }
118
+
119
+ @include e(label, $m: before) {
120
+ @extend %radio-label--disabled !optional;
121
+ }
118
122
  }
119
123
 
120
124
  @include m(invalid) {
@@ -217,5 +221,13 @@
217
221
  @include m(vertical) {
218
222
  @extend %radio-group-display--vertical !optional;
219
223
  }
224
+
225
+ @include m(before) {
226
+ @extend %radio-group-display--before !optional;
227
+ }
228
+
229
+ @include m(disabled) {
230
+ @extend %radio-group-display--disabled !optional;
231
+ }
220
232
  }
221
233
  }
@@ -597,18 +597,40 @@
597
597
  }
598
598
 
599
599
  %radio-group-display {
600
- display: block;
601
- %radio-display:not(:last-of-type) {
602
- margin-inline-end: $horizontal-group-margin;
600
+ display: grid;
601
+ column-gap: $horizontal-group-margin;
602
+ align-items: start;
603
+ width: max-content;
604
+ }
605
+
606
+ %radio-group-display:not(%radio-group-display--vertical) {
607
+ [igxLabel] {
608
+ margin-block-end: rem(16px);
609
+ }
610
+
611
+ igx-radio {
612
+ grid-row: 2;
603
613
  }
604
614
  }
605
615
 
606
616
  %radio-group-display--vertical {
607
- display: flex;
608
- flex-flow: column;
609
- %radio-display:not(:last-of-type) {
610
- margin-inline-end: 0;
611
- margin-block-end: $vertical-group-margin;
617
+ row-gap: $vertical-group-margin;
618
+
619
+ [igxLabel] {
620
+ margin-block-end: if($variant == 'material', rem(16px), rem(8px));
621
+ }
622
+
623
+ &%radio-group-display--before {
624
+ igx-radio,
625
+ [igxLabel] {
626
+ justify-self: flex-end;
627
+ }
628
+ }
629
+ }
630
+
631
+ %radio-group-display--disabled {
632
+ [igxLabel] {
633
+ color: var-get($theme, 'disabled-color');
612
634
  }
613
635
  }
614
636
  }
@@ -152,7 +152,7 @@ export declare class IgxForOfDirective<T, U extends T[] = T[]> extends IgxForOfT
152
152
  * }
153
153
  * ```
154
154
  */
155
- dataChanged: EventEmitter<any>;
155
+ dataChanged: EventEmitter<IForOfDataChangeEventArgs>;
156
156
  beforeViewDestroyed: EventEmitter<EmbeddedViewRef<any>>;
157
157
  /**
158
158
  * An event that is emitted on chunk loading to emit the current state information - startIndex, endIndex, totalCount.
@@ -543,10 +543,15 @@ export interface IForOfState extends IBaseEventArgs {
543
543
  startIndex?: number;
544
544
  chunkSize?: number;
545
545
  }
546
+ /**
547
+ * @deprecated in 19.2.7. Use `IForOfDataChangeEventArgs` instead.
548
+ */
546
549
  export interface IForOfDataChangingEventArgs extends IBaseEventArgs {
547
550
  containerSize: number;
548
551
  state: IForOfState;
549
552
  }
553
+ export interface IForOfDataChangeEventArgs extends IForOfDataChangingEventArgs {
554
+ }
550
555
  export declare class IgxGridForOfContext<T, U extends T[] = T[]> extends IgxForOfContext<T, U> {
551
556
  igxGridForOf: U;
552
557
  constructor($implicit: T, igxGridForOf: U, index: number, count: number);
@@ -573,7 +578,7 @@ export declare class IgxGridForOfDirective<T, U extends T[] = T[]> extends IgxFo
573
578
  * @hidden @internal
574
579
  * An event that is emitted after data has been changed but before the view is refreshed
575
580
  */
576
- dataChanging: EventEmitter<IForOfDataChangingEventArgs>;
581
+ dataChanging: EventEmitter<IForOfDataChangeEventArgs>;
577
582
  constructor(_viewContainer: ViewContainerRef, _template: TemplateRef<NgForOfContext<T>>, _differs: IterableDiffers, cdr: ChangeDetectorRef, _zone: NgZone, _platformUtil: PlatformUtil, _document: any, syncScrollService: IgxForOfScrollSyncService, syncService: IgxForOfSyncService);
578
583
  /**
579
584
  * @hidden @internal
@@ -1,4 +1,4 @@
1
- import { AfterContentInit, AfterViewInit, ChangeDetectorRef, DoCheck, EventEmitter, OnDestroy, QueryList } from '@angular/core';
1
+ import { ChangeDetectorRef, DoCheck, EventEmitter, OnDestroy, QueryList } from '@angular/core';
2
2
  import { ControlValueAccessor, NgControl } from '@angular/forms';
3
3
  import { IgxRadioComponent } from '../../radio/radio.component';
4
4
  import { IgxDirectionality } from '../../services/direction/directionality';
@@ -35,10 +35,12 @@ export type RadioGroupAlignment = typeof RadioGroupAlignment[keyof typeof RadioG
35
35
  * </igx-radio-group>
36
36
  * ```
37
37
  */
38
- export declare class IgxRadioGroupDirective implements AfterContentInit, AfterViewInit, ControlValueAccessor, OnDestroy, DoCheck {
38
+ export declare class IgxRadioGroupDirective implements ControlValueAccessor, OnDestroy, DoCheck {
39
39
  ngControl: NgControl;
40
40
  private _directionality;
41
41
  private cdr;
42
+ private _radioButtons;
43
+ private _radioButtonsList;
42
44
  /**
43
45
  * Returns reference to the child radio buttons.
44
46
  *
@@ -47,7 +49,7 @@ export declare class IgxRadioGroupDirective implements AfterContentInit, AfterVi
47
49
  * let radioButtons = this.radioGroup.radioButtons;
48
50
  * ```
49
51
  */
50
- radioButtons: QueryList<IgxRadioComponent>;
52
+ get radioButtons(): QueryList<IgxRadioComponent>;
51
53
  /**
52
54
  * Sets/gets the `value` attribute.
53
55
  *
@@ -134,6 +136,22 @@ export declare class IgxRadioGroupDirective implements AfterContentInit, AfterVi
134
136
  * ```
135
137
  */
136
138
  private vertical;
139
+ /**
140
+ * A css class applied to the component if any of the
141
+ * child radio buttons labelPosition is set to `before`.
142
+ *
143
+ * @hidden
144
+ * @internal
145
+ */
146
+ protected get labelBefore(): boolean;
147
+ /**
148
+ * A css class applied to the component if all
149
+ * child radio buttons are disabled.
150
+ *
151
+ * @hidden
152
+ * @internal
153
+ */
154
+ protected get disabled(): boolean;
137
155
  protected handleClick(event: MouseEvent): void;
138
156
  protected handleKeyDown(event: KeyboardEvent): void;
139
157
  /**
@@ -204,16 +222,6 @@ export declare class IgxRadioGroupDirective implements AfterContentInit, AfterVi
204
222
  * @internal
205
223
  */
206
224
  private queryChange$;
207
- /**
208
- * @hidden
209
- * @internal
210
- */
211
- ngAfterContentInit(): void;
212
- /**
213
- * @hidden
214
- * @internal
215
- */
216
- ngAfterViewInit(): void;
217
225
  /**
218
226
  * @hidden
219
227
  * @internal
@@ -263,7 +271,17 @@ export declare class IgxRadioGroupDirective implements AfterContentInit, AfterVi
263
271
  * @hidden
264
272
  * @internal
265
273
  */
266
- private _initRadioButtons;
274
+ private initialize;
275
+ /**
276
+ * @hidden
277
+ * @internal
278
+ */
279
+ private setRadioButtons;
280
+ /**
281
+ * @hidden
282
+ * @internal
283
+ */
284
+ private _setRadioButtonEvents;
267
285
  /**
268
286
  * @hidden
269
287
  * @internal
@@ -290,7 +308,7 @@ export declare class IgxRadioGroupDirective implements AfterContentInit, AfterVi
290
308
  */
291
309
  private _setRadioButtonsInvalid;
292
310
  static ɵfac: i0.ɵɵFactoryDeclaration<IgxRadioGroupDirective, [{ optional: true; self: true; }, null, null]>;
293
- static ɵdir: i0.ɵɵDirectiveDeclaration<IgxRadioGroupDirective, "igx-radio-group, [igxRadioGroup]", ["igxRadioGroup"], { "value": { "alias": "value"; "required": false; }; "name": { "alias": "name"; "required": false; }; "required": { "alias": "required"; "required": false; }; "selected": { "alias": "selected"; "required": false; }; "invalid": { "alias": "invalid"; "required": false; }; "alignment": { "alias": "alignment"; "required": false; }; }, { "change": "change"; }, ["radioButtons"], never, true, never>;
311
+ static ɵdir: i0.ɵɵDirectiveDeclaration<IgxRadioGroupDirective, "igx-radio-group, [igxRadioGroup]", ["igxRadioGroup"], { "value": { "alias": "value"; "required": false; }; "name": { "alias": "name"; "required": false; }; "required": { "alias": "required"; "required": false; }; "selected": { "alias": "selected"; "required": false; }; "invalid": { "alias": "invalid"; "required": false; }; "alignment": { "alias": "alignment"; "required": false; }; }, { "change": "change"; }, ["_radioButtons"], never, true, never>;
294
312
  static ngAcceptInputType_required: unknown;
295
313
  static ngAcceptInputType_invalid: unknown;
296
314
  }
@@ -1,8 +1,9 @@
1
- import { ElementRef, ChangeDetectorRef } from '@angular/core';
1
+ import { ElementRef, ChangeDetectorRef, OnDestroy } from '@angular/core';
2
2
  import { IgxOverlayService } from '../../services/overlay/overlay';
3
3
  import { OverlaySettings } from '../../services/public_api';
4
4
  import { IgxNavigationService } from '../../core/navigation';
5
5
  import { IgxToggleDirective } from '../toggle/toggle.directive';
6
+ import { IgxTooltipTargetDirective } from './tooltip-target.directive';
6
7
  import * as i0 from "@angular/core";
7
8
  /**
8
9
  * **Ignite UI for Angular Tooltip** -
@@ -18,7 +19,7 @@ import * as i0 from "@angular/core";
18
19
  * <span #tooltipRef="tooltip" igxTooltip>Hello there, I am a tooltip!</span>
19
20
  * ```
20
21
  */
21
- export declare class IgxTooltipDirective extends IgxToggleDirective {
22
+ export declare class IgxTooltipDirective extends IgxToggleDirective implements OnDestroy {
22
23
  /**
23
24
  * @hidden
24
25
  */
@@ -74,8 +75,15 @@ export declare class IgxTooltipDirective extends IgxToggleDirective {
74
75
  * Returns whether open time out has started
75
76
  */
76
77
  toBeShown: boolean;
78
+ /**
79
+ * @hidden
80
+ */
81
+ tooltipTarget: IgxTooltipTargetDirective;
82
+ private _destroy$;
77
83
  /** @hidden */
78
84
  constructor(elementRef: ElementRef, cdr: ChangeDetectorRef, overlayService: IgxOverlayService, navigationService: IgxNavigationService);
85
+ /** @hidden */
86
+ ngOnDestroy(): void;
79
87
  /**
80
88
  * If there is open animation in progress this method will finish is.
81
89
  * If there is no open animation in progress this method will open the toggle with no animation.
@@ -90,6 +98,7 @@ export declare class IgxTooltipDirective extends IgxToggleDirective {
90
98
  * @param overlaySettings settings to use for closing the toggle
91
99
  */
92
100
  protected forceClose(overlaySettings?: OverlaySettings): void;
101
+ private onDocumentTouchStart;
93
102
  static ɵfac: i0.ɵɵFactoryDeclaration<IgxTooltipDirective, [null, null, null, { optional: true; }]>;
94
103
  static ɵdir: i0.ɵɵDirectiveDeclaration<IgxTooltipDirective, "[igxTooltip]", ["tooltip"], { "context": { "alias": "context"; "required": false; }; "id": { "alias": "id"; "required": false; }; }, {}, never, never, true, never>;
95
104
  }
@@ -16,14 +16,14 @@ export declare class IgxEditRow {
16
16
  createRowEditEventArgs(includeNewValue?: boolean, event?: Event): IGridEditEventArgs;
17
17
  createRowDataEventArgs(event?: Event): IRowDataCancelableEventArgs;
18
18
  createRowEditDoneEventArgs(cachedRowData: any, event?: Event): IGridEditDoneEventArgs;
19
- getClassName(): string;
19
+ get isAddRow(): boolean;
20
20
  }
21
21
  export declare class IgxAddRow extends IgxEditRow {
22
22
  recordRef: any;
23
- isAddRow: boolean;
24
23
  constructor(id: any, index: number, data: any, recordRef: any, grid: GridType);
25
24
  createRowEditEventArgs(includeNewValue?: boolean, event?: Event): IGridEditEventArgs;
26
25
  createRowEditDoneEventArgs(cachedRowData: any, event?: Event): IGridEditDoneEventArgs;
26
+ get isAddRow(): boolean;
27
27
  }
28
28
  export interface IgxAddRowParent {
29
29
  /**
@@ -3,7 +3,7 @@ import { Subject } from 'rxjs';
3
3
  import { PlatformUtil } from '../core/utils';
4
4
  import { FilteringLogic } from '../data-operations/filtering-expression.interface';
5
5
  import { IGroupByRecord } from '../data-operations/groupby-record.interface';
6
- import { IForOfDataChangingEventArgs, IgxGridForOfDirective } from '../directives/for-of/for_of.directive';
6
+ import { IForOfDataChangeEventArgs, IgxGridForOfDirective } from '../directives/for-of/for_of.directive';
7
7
  import { IgxTextHighlightService } from '../directives/text-highlight/text-highlight.service';
8
8
  import { ISummaryExpression } from './summaries/grid-summary';
9
9
  import type { IgxGridToolbarComponent } from './toolbar/grid-toolbar.component';
@@ -782,7 +782,7 @@ export declare abstract class IgxGridBaseDirective implements GridType, OnInit,
782
782
  * <igx-grid #grid [data]="localData" [autoGenerate]="true" (dataChanging)='handleDataChangingEvent()'></igx-grid>
783
783
  * ```
784
784
  */
785
- dataChanging: EventEmitter<IForOfDataChangingEventArgs>;
785
+ dataChanging: EventEmitter<IForOfDataChangeEventArgs>;
786
786
  /**
787
787
  * Emitted after the grid's data view is changed because of a data operation, rebinding, etc.
788
788
  *
@@ -791,7 +791,7 @@ export declare abstract class IgxGridBaseDirective implements GridType, OnInit,
791
791
  * <igx-grid #grid [data]="localData" [autoGenerate]="true" (dataChanged)='handleDataChangedEvent()'></igx-grid>
792
792
  * ```
793
793
  */
794
- dataChanged: EventEmitter<any>;
794
+ dataChanged: EventEmitter<IForOfDataChangeEventArgs>;
795
795
  /**
796
796
  * @hidden @internal
797
797
  */
@@ -2255,11 +2255,11 @@ export declare abstract class IgxGridBaseDirective implements GridType, OnInit,
2255
2255
  /**
2256
2256
  * @hidden @internal
2257
2257
  */
2258
- dataRebinding(event: IForOfDataChangingEventArgs): void;
2258
+ dataRebinding(event: IForOfDataChangeEventArgs): void;
2259
2259
  /**
2260
2260
  * @hidden @internal
2261
2261
  */
2262
- dataRebound(event: any): void;
2262
+ dataRebound(event: IForOfDataChangeEventArgs): void;
2263
2263
  /** @hidden @internal */
2264
2264
  createFilterDropdown(column: ColumnType, options: OverlaySettings): string;
2265
2265
  /** @hidden @internal */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "igniteui-angular",
3
- "version": "19.2.6",
3
+ "version": "19.2.8",
4
4
  "description": "Ignite UI for Angular is a dependency-free Angular toolkit for building modern web apps",
5
5
  "author": "Infragistics",
6
6
  "license": "SEE LICENSE IN LICENSE",
package/public_api.d.ts CHANGED
@@ -13,7 +13,7 @@ export * from './lib/directives/drag-drop/public_api';
13
13
  export * from './lib/directives/filter/filter.directive';
14
14
  export * from './lib/directives/focus/focus.directive';
15
15
  export * from './lib/directives/focus-trap/focus-trap.directive';
16
- export { IgxForOfContext, IgxForOfDirective, IForOfState, IgxGridForOfContext, IgxGridForOfDirective } from './lib/directives/for-of/for_of.directive';
16
+ export { IForOfDataChangeEventArgs, IForOfDataChangingEventArgs, IForOfState, IgxForOfContext, IgxForOfDirective, IgxGridForOfContext, IgxGridForOfDirective, } from './lib/directives/for-of/for_of.directive';
17
17
  export * from './lib/directives/button/icon-button.directive';
18
18
  export * from './lib/directives/layout/layout.directive';
19
19
  export * from './lib/directives/mask/mask.directive';