igniteui-angular 12.3.0-alpha.0 → 12.3.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/bundles/igniteui-angular.umd.js +454 -544
  2. package/bundles/igniteui-angular.umd.js.map +1 -1
  3. package/esm2015/igniteui-angular.js +106 -107
  4. package/esm2015/lib/action-strip/action-strip.component.js +19 -2
  5. package/esm2015/lib/action-strip/grid-actions/grid-action-button.component.js +2 -2
  6. package/esm2015/lib/action-strip/grid-actions/grid-editing-actions.component.js +4 -4
  7. package/esm2015/lib/action-strip/grid-actions/grid-pinning-actions.component.js +5 -5
  8. package/esm2015/lib/banner/banner.component.js +1 -1
  9. package/esm2015/lib/combo/combo.common.js +28 -11
  10. package/esm2015/lib/combo/combo.component.js +12 -24
  11. package/esm2015/lib/core/i18n/action-strip-resources.js +4 -0
  12. package/esm2015/lib/core/i18n/resources.js +5 -3
  13. package/esm2015/lib/core/utils.js +11 -1
  14. package/esm2015/lib/directives/radio/radio-group.directive.js +5 -13
  15. package/esm2015/lib/drop-down/drop-down-item.base.js +1 -5
  16. package/esm2015/lib/grids/cell.component.js +1 -17
  17. package/esm2015/lib/grids/column-actions/column-actions.component.js +3 -7
  18. package/esm2015/lib/grids/grid/grid.component.js +3 -7
  19. package/esm2015/lib/grids/grid-base.directive.js +58 -118
  20. package/esm2015/lib/grids/grid-public-row.js +3 -12
  21. package/esm2015/lib/grids/headers/grid-header-row.component.js +2 -2
  22. package/esm2015/lib/grids/hierarchical-grid/hierarchical-grid.component.js +3 -7
  23. package/esm2015/lib/grids/tree-grid/tree-grid.component.js +3 -7
  24. package/esm2015/lib/icon/icon.component.js +1 -6
  25. package/esm2015/lib/services/overlay/utilities.js +1 -1
  26. package/esm2015/lib/simple-combo/simple-combo.component.js +123 -30
  27. package/esm2015/lib/toast/toast.component.js +3 -6
  28. package/esm2015/public_api.js +1 -1
  29. package/fesm2015/igniteui-angular.js +274 -347
  30. package/fesm2015/igniteui-angular.js.map +1 -1
  31. package/igniteui-angular.d.ts +105 -106
  32. package/igniteui-angular.metadata.json +1 -1
  33. package/lib/action-strip/action-strip.component.d.ts +10 -0
  34. package/lib/banner/banner.component.d.ts +1 -2
  35. package/lib/combo/combo.common.d.ts +27 -14
  36. package/lib/combo/combo.component.d.ts +9 -19
  37. package/lib/core/i18n/action-strip-resources.d.ts +4 -0
  38. package/lib/core/i18n/resources.d.ts +3 -1
  39. package/lib/core/utils.d.ts +4 -0
  40. package/lib/directives/radio/radio-group.directive.d.ts +4 -4
  41. package/lib/grids/cell.component.d.ts +0 -9
  42. package/lib/grids/column-actions/column-actions.component.d.ts +2 -1
  43. package/lib/grids/grid/grid.component.d.ts +2 -1
  44. package/lib/grids/grid-base.directive.d.ts +54 -37
  45. package/lib/grids/grid-public-row.d.ts +2 -3
  46. package/lib/grids/hierarchical-grid/hierarchical-grid.component.d.ts +2 -1
  47. package/lib/grids/tree-grid/tree-grid.component.d.ts +2 -1
  48. package/lib/icon/icon.component.d.ts +2 -2
  49. package/lib/services/overlay/utilities.d.ts +2 -1
  50. package/lib/simple-combo/simple-combo.component.d.ts +20 -3
  51. package/lib/toast/toast.component.d.ts +2 -0
  52. package/migrations/common/filterSourceDirs.d.ts +2 -2
  53. package/migrations/common/filterSourceDirs.js +2 -2
  54. package/migrations/migration-collection.json +0 -5
  55. package/migrations/{update-12_3_0 → update-13_0_0}/changes/members.json +0 -0
  56. package/package.json +1 -1
  57. package/public_api.d.ts +1 -0
  58. package/esm2015/lib/core/deprecateDecorators.js +0 -101
  59. package/lib/core/deprecateDecorators.d.ts +0 -20
  60. package/migrations/update-12_3_0/index.d.ts +0 -3
  61. package/migrations/update-12_3_0/index.js +0 -9
@@ -1,7 +1,7 @@
1
1
  import * as i1 from '@angular/animations';
2
2
  import { style, animate, animation, keyframes, AnimationBuilder, useAnimation, trigger, transition } from '@angular/animations';
3
3
  import * as i0 from '@angular/core';
4
- import { Injectable, Directive, Input, HostListener, NgModule, Inject, PLATFORM_ID, SimpleChange, InjectionToken, EventEmitter, Optional, Output, ElementRef, Renderer2, NgZone, Component, ViewChild, HostBinding, forwardRef, ChangeDetectorRef, ViewContainerRef, TemplateRef, IterableDiffers, ComponentFactoryResolver, QueryList, ViewChildren, ChangeDetectionStrategy, ContentChild, ContentChildren, ApplicationRef, Injector, isDevMode, Self, SecurityContext, Pipe, LOCALE_ID, Host, NgModuleRef, inject, CUSTOM_ELEMENTS_SCHEMA, SkipSelf } from '@angular/core';
4
+ import { Injectable, Directive, Input, HostListener, NgModule, isDevMode, Inject, PLATFORM_ID, SimpleChange, InjectionToken, EventEmitter, Optional, Output, ElementRef, Renderer2, NgZone, Component, ViewChild, HostBinding, forwardRef, ChangeDetectorRef, ViewContainerRef, TemplateRef, IterableDiffers, ComponentFactoryResolver, QueryList, ViewChildren, ChangeDetectionStrategy, ContentChild, ContentChildren, ApplicationRef, Injector, Self, SecurityContext, Pipe, LOCALE_ID, Host, NgModuleRef, inject, CUSTOM_ELEMENTS_SCHEMA, SkipSelf } from '@angular/core';
5
5
  import { NG_VALUE_ACCESSOR, NG_VALIDATORS, CheckboxRequiredValidator, NgModel, FormControlName, FormsModule, NgControl, ReactiveFormsModule } from '@angular/forms';
6
6
  import * as i2 from '@angular/common';
7
7
  import { isPlatformBrowser, CommonModule, DOCUMENT, DatePipe, formatDate, FormatWidth, getLocaleDateFormat, getLocaleCurrencyCode, DecimalPipe, CurrencyPipe, PercentPipe, getLocaleNumberFormat, NumberFormatStyle, getCurrencySymbol } from '@angular/common';
@@ -892,7 +892,7 @@ const run = (id) => {
892
892
  fn();
893
893
  }
894
894
  };
895
- const ɵ0$5 = run;
895
+ const ɵ0$4 = run;
896
896
  const listener = (event) => run(event.data);
897
897
  const ɵ1$1 = listener;
898
898
  // Use function instead of arrow function to workaround an issue in codesandbox
@@ -920,6 +920,15 @@ function clearImmediate(id) {
920
920
  delete queue[id];
921
921
  }
922
922
 
923
+ /**
924
+ * @hidden
925
+ */
926
+ const showMessage = (message, isMessageShown) => {
927
+ if (!isMessageShown && isDevMode()) {
928
+ console.warn(message);
929
+ }
930
+ return true;
931
+ };
923
932
  const mkenum = (x) => x;
924
933
  /**
925
934
  * Returns the ResizeObserver type or the polyfilled version if not available.
@@ -8198,7 +8207,7 @@ IgxRowDirective.propDecorators = {
8198
8207
  };
8199
8208
 
8200
8209
  const clear = (el) => el === 0 || Boolean(el);
8201
- const ɵ0$4 = clear;
8210
+ const ɵ0$3 = clear;
8202
8211
  const first = (arr) => arr[0];
8203
8212
  const ɵ1 = first;
8204
8213
  const last = (arr) => arr[arr.length - 1];
@@ -16382,105 +16391,6 @@ IgxSelectionAPIService.decorators = [
16382
16391
  },] }
16383
16392
  ];
16384
16393
 
16385
- /**
16386
- * @hidden
16387
- */
16388
- const DeprecateClass = (message) => {
16389
- let isMessageShown = false;
16390
- return (originalClass) => class extends originalClass {
16391
- constructor(...args) {
16392
- const target = originalClass;
16393
- const targetName = typeof target === 'function' ? target.name : target.constructor.name;
16394
- isMessageShown = showMessage(`${targetName}: ${message}`, isMessageShown);
16395
- super(...args);
16396
- }
16397
- };
16398
- };
16399
- /**
16400
- * @hidden
16401
- */
16402
- function DeprecateMethod(message) {
16403
- let isMessageShown = false;
16404
- return function (target, key, descriptor) {
16405
- if (descriptor && descriptor.value) {
16406
- const originalMethod = descriptor.value;
16407
- descriptor.value = function () {
16408
- const targetName = typeof target === 'function' ? target.name : target.constructor.name;
16409
- isMessageShown = showMessage(`${targetName}.${key}: ${message}`, isMessageShown);
16410
- const args = [];
16411
- for (const x of arguments) {
16412
- args.push(x);
16413
- }
16414
- return originalMethod.call(this, ...args);
16415
- };
16416
- return descriptor;
16417
- }
16418
- };
16419
- }
16420
- /**
16421
- * @hidden
16422
- */
16423
- function DeprecateProperty(message) {
16424
- return function (target, key) {
16425
- let isMessageShown = false;
16426
- const messageToDisplay = `${target.constructor.name}.${key}: ${message}`;
16427
- // if the target already has the property defined
16428
- const originalDescriptor = Object.getOwnPropertyDescriptor(target, key);
16429
- if (originalDescriptor) {
16430
- const getter = originalDescriptor.get;
16431
- const setter = originalDescriptor.set;
16432
- if (getter) {
16433
- originalDescriptor.get = function () {
16434
- isMessageShown = showMessage(messageToDisplay, isMessageShown);
16435
- return getter.call(this);
16436
- };
16437
- }
16438
- if (setter) {
16439
- originalDescriptor.set = function (value) {
16440
- isMessageShown = showMessage(messageToDisplay, isMessageShown);
16441
- setter.call(this, value);
16442
- };
16443
- }
16444
- return originalDescriptor;
16445
- }
16446
- // the target doesn't contain a descriptor for that property, so create one
16447
- // use backing field to set/get the value of the property to ensure there won't be infinite recursive calls
16448
- const newKey = generateUniqueKey(target, key);
16449
- Object.defineProperty(target, key, {
16450
- configurable: true,
16451
- enumerable: true,
16452
- set(value) {
16453
- isMessageShown = showMessage(messageToDisplay, isMessageShown);
16454
- this[newKey] = value;
16455
- },
16456
- get() {
16457
- isMessageShown = showMessage(messageToDisplay, isMessageShown);
16458
- return this[newKey];
16459
- }
16460
- });
16461
- };
16462
- }
16463
- /**
16464
- * @hidden
16465
- */
16466
- const generateUniqueKey = (target, key) => {
16467
- let newKey = '_' + key;
16468
- while (target.hasOwnProperty(newKey)) {
16469
- newKey = '_' + newKey;
16470
- }
16471
- return newKey;
16472
- };
16473
- const ɵ0$3 = generateUniqueKey;
16474
- /**
16475
- * @hidden
16476
- */
16477
- const showMessage = (message, isMessageShown) => {
16478
- if (!isMessageShown && isDevMode()) {
16479
- console.warn(message);
16480
- }
16481
- return true;
16482
- };
16483
-
16484
16394
  let NEXT_ID$t = 0;
16485
16395
  /**
16486
16396
  * The `<igx-drop-down-item>` is a container intended for row items in
@@ -16550,7 +16460,6 @@ IgxDropDownGroupComponent.propDecorators = {
16550
16460
  };
16551
16461
 
16552
16462
  let NEXT_ID$s = 0;
16553
- let warningShown = false;
16554
16463
  /**
16555
16464
  * An abstract class defining a drop-down item:
16556
16465
  * With properties / styles for selection, highlight, height
@@ -16615,8 +16524,6 @@ class IgxDropDownItemBaseDirective {
16615
16524
  */
16616
16525
  get index() {
16617
16526
  if (this._index === null) {
16618
- warningShown = showMessage('IgxDropDownItemBaseDirective: Automatic index is deprecated.' +
16619
- 'Bind in the template instead using `<igx-drop-down-item [index]="i"` instead.`', warningShown);
16620
16527
  return this.itemIndex;
16621
16528
  }
16622
16529
  return this._index;
@@ -19115,9 +19022,6 @@ IgxIconComponent.propDecorators = {
19115
19022
  getInactive: [{ type: HostBinding, args: ['class.igx-icon--inactive',] }],
19116
19023
  getColor: [{ type: HostBinding, args: ['style.color',] }]
19117
19024
  };
19118
- __decorate([
19119
- DeprecateProperty('`color` is deprecated.')
19120
- ], IgxIconComponent.prototype, "color", void 0);
19121
19025
 
19122
19026
  /**
19123
19027
  * @hidden
@@ -19393,6 +19297,10 @@ const TreeResourceStringsEN = {
19393
19297
  igx_collapse: 'Collapse',
19394
19298
  };
19395
19299
 
19300
+ const ActionStripResourceStringsEN = {
19301
+ igx_action_strip_button_more_title: 'More'
19302
+ };
19303
+
19396
19304
  /**
19397
19305
  * @hidden
19398
19306
  * IF YOU EDIT THIS OBJECT, DO NOT FORGET TO UPDATE
@@ -19416,7 +19324,8 @@ const CurrentResourceStrings = {
19416
19324
  CarouselResStrings: cloneValue(CarouselResourceStringsEN),
19417
19325
  ListResStrings: cloneValue(ListResourceStringsEN),
19418
19326
  InputResStrings: cloneValue(InputResourceStringsEN),
19419
- TreeResStrings: cloneValue(TreeResourceStringsEN)
19327
+ TreeResStrings: cloneValue(TreeResourceStringsEN),
19328
+ ActionStripResourceStrings: cloneValue(ActionStripResourceStringsEN)
19420
19329
  };
19421
19330
  const updateResourceStrings = (currentStrings, newStrings) => {
19422
19331
  for (const key of Object.keys(newStrings)) {
@@ -19439,7 +19348,7 @@ const changei18n = (resourceStrings) => {
19439
19348
  /**
19440
19349
  * Returns current resource strings for all components
19441
19350
  */
19442
- const getCurrentResourceStrings = () => (Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, CurrentResourceStrings.CalendarResStrings), CurrentResourceStrings.CarouselResStrings), CurrentResourceStrings.ChipResStrings), CurrentResourceStrings.DatePickerResourceStrings), CurrentResourceStrings.DateRangePickerResStrings), CurrentResourceStrings.GridResStrings), CurrentResourceStrings.InputResStrings), CurrentResourceStrings.ListResStrings), CurrentResourceStrings.PaginatorResStrings), CurrentResourceStrings.TimePickerResStrings), CurrentResourceStrings.TreeResStrings));
19351
+ const getCurrentResourceStrings = () => (Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, CurrentResourceStrings.CalendarResStrings), CurrentResourceStrings.CarouselResStrings), CurrentResourceStrings.ChipResStrings), CurrentResourceStrings.DatePickerResourceStrings), CurrentResourceStrings.DateRangePickerResStrings), CurrentResourceStrings.GridResStrings), CurrentResourceStrings.InputResStrings), CurrentResourceStrings.ListResStrings), CurrentResourceStrings.PaginatorResStrings), CurrentResourceStrings.TimePickerResStrings), CurrentResourceStrings.TreeResStrings), CurrentResourceStrings.ActionStripResourceStrings));
19443
19352
 
19444
19353
  const IgxInputGroupTheme = mkenum({
19445
19354
  Material: 'material',
@@ -23283,10 +23192,10 @@ class IgxRadioGroupDirective {
23283
23192
  this._setRadioButtonsRequired();
23284
23193
  }
23285
23194
  /**
23286
- * An @Input property that allows you to disable the radio group. By default it's false.
23287
- *
23288
23195
  * @deprecated in version 12.2.0
23289
23196
  *
23197
+ * An input property that allows you to disable the radio group. By default it's false.
23198
+ *
23290
23199
  * @example
23291
23200
  * ```html
23292
23201
  * <igx-radio-group disabled></igx-radio-group>
@@ -23300,10 +23209,10 @@ class IgxRadioGroupDirective {
23300
23209
  this.setDisabledState(value);
23301
23210
  }
23302
23211
  /**
23303
- * Sets/gets the position of the `label` in the child radio buttons.
23304
- *
23305
23212
  * @deprecated in version 12.2.0
23306
23213
  *
23214
+ * Sets/gets the position of the `label` in the child radio buttons.
23215
+ *
23307
23216
  * @remarks
23308
23217
  * If not set, `labelPosition` will have value `"after"`.
23309
23218
  *
@@ -23553,12 +23462,6 @@ IgxRadioGroupDirective.propDecorators = {
23553
23462
  vertical: [{ type: HostBinding, args: ['class.igx-radio-group--vertical',] }],
23554
23463
  alignment: [{ type: Input }]
23555
23464
  };
23556
- __decorate([
23557
- DeprecateProperty('`disabled` is deprecated.')
23558
- ], IgxRadioGroupDirective.prototype, "disabled", null);
23559
- __decorate([
23560
- DeprecateProperty('`labelPosition` is deprecated.')
23561
- ], IgxRadioGroupDirective.prototype, "labelPosition", null);
23562
23465
  /**
23563
23466
  * @hidden
23564
23467
  */
@@ -25782,7 +25685,7 @@ class IgxGridActionButtonComponent {
25782
25685
  IgxGridActionButtonComponent.decorators = [
25783
25686
  { type: Component, args: [{
25784
25687
  selector: 'igx-grid-action-button',
25785
- template: "<ng-container *ngIf=\"!asMenuItem\">\n <button igxButton=\"icon\" igxRipple (click)=\"handleClick($event)\" (mousedown)=\"preventEvent($event)\">\n <igx-icon *ngIf=\"iconSet\" [family]=\"iconSet\" [name]=\"iconName\">{{iconName}}</igx-icon>\n <igx-icon *ngIf=\"!iconSet\" >{{iconName}}</igx-icon>\n </button>\n</ng-container>\n\n<ng-template #menuItemTemplate>\n <ng-container *ngIf=\"asMenuItem\">\n <div #container [className]='containerClass'>\n <igx-icon *ngIf=\"iconSet\" [family]=\"iconSet\" [name]=\"iconName\">{{iconName}}</igx-icon>\n <igx-icon *ngIf=\"!iconSet\" >{{iconName}}</igx-icon>\n <label igxLabel>{{labelText}}</label>\n </div>\n </ng-container>\n</ng-template>"
25688
+ template: "<ng-container *ngIf=\"!asMenuItem\">\n <button [title]=\"labelText\" igxButton=\"icon\" igxRipple (click)=\"handleClick($event)\" (mousedown)=\"preventEvent($event)\">\n <igx-icon *ngIf=\"iconSet\" [family]=\"iconSet\" [name]=\"iconName\">{{iconName}}</igx-icon>\n <igx-icon *ngIf=\"!iconSet\" >{{iconName}}</igx-icon>\n </button>\n</ng-container>\n\n<ng-template #menuItemTemplate>\n <ng-container *ngIf=\"asMenuItem\">\n <div #container [className]='containerClass'>\n <igx-icon *ngIf=\"iconSet\" [family]=\"iconSet\" [name]=\"iconName\">{{iconName}}</igx-icon>\n <igx-icon *ngIf=\"!iconSet\" >{{iconName}}</igx-icon>\n <label igxLabel>{{labelText}}</label>\n </div>\n </ng-container>\n</ng-template>"
25786
25689
  },] }
25787
25690
  ];
25788
25691
  IgxGridActionButtonComponent.propDecorators = {
@@ -25994,8 +25897,8 @@ class IgxGridEditingActionsComponent extends IgxGridActionsBaseDirective {
25994
25897
  * @internal
25995
25898
  */
25996
25899
  registerIcons() {
25997
- this.iconService.addSvgIconFromText(addRow.name, addRow.value, 'imx-icons');
25998
- this.iconService.addSvgIconFromText(addChild.name, addChild.value, 'imx-icons');
25900
+ this.iconService.addSvgIconFromText(addRow.name, addRow.value, 'imx-icons', true);
25901
+ this.iconService.addSvgIconFromText(addChild.name, addChild.value, 'imx-icons', true);
25999
25902
  }
26000
25903
  }
26001
25904
  IgxGridEditingActionsComponent.decorators = [
@@ -26121,10 +26024,10 @@ class IgxGridPinningActionsComponent extends IgxGridActionsBaseDirective {
26121
26024
  const context = this.strip.context;
26122
26025
  const grid = context.grid;
26123
26026
  if (grid) {
26124
- this.iconService.addSvgIconFromText(pinLeft.name, pinLeft.value, 'imx-icons');
26125
- this.iconService.addSvgIconFromText(unpinLeft.name, unpinLeft.value, 'imx-icons');
26126
- this.iconService.addSvgIconFromText(jumpDown.name, jumpDown.value, 'imx-icons');
26127
- this.iconService.addSvgIconFromText(jumpUp.name, jumpDown.value, 'imx-icons');
26027
+ this.iconService.addSvgIconFromText(pinLeft.name, pinLeft.value, 'imx-icons', true);
26028
+ this.iconService.addSvgIconFromText(unpinLeft.name, unpinLeft.value, 'imx-icons', true);
26029
+ this.iconService.addSvgIconFromText(jumpDown.name, jumpDown.value, 'imx-icons', true);
26030
+ this.iconService.addSvgIconFromText(jumpUp.name, jumpDown.value, 'imx-icons', true);
26128
26031
  }
26129
26032
  }
26130
26033
  }
@@ -26204,6 +26107,21 @@ class IgxActionStripComponent extends DisplayDensityBase {
26204
26107
  get hidden() {
26205
26108
  return this._hidden;
26206
26109
  }
26110
+ /**
26111
+ * Gets/Sets the resource strings.
26112
+ *
26113
+ * @remarks
26114
+ * By default it uses EN resources.
26115
+ */
26116
+ set resourceStrings(value) {
26117
+ this._resourceStrings = Object.assign({}, this._resourceStrings, value);
26118
+ }
26119
+ get resourceStrings() {
26120
+ if (!this._resourceStrings) {
26121
+ this._resourceStrings = CurrentResourceStrings.ActionStripResourceStrings;
26122
+ }
26123
+ return this._resourceStrings;
26124
+ }
26207
26125
  /**
26208
26126
  * Getter for the 'display' property of the current `IgxActionStrip`
26209
26127
  *
@@ -26333,7 +26251,7 @@ class IgxActionStripComponent extends DisplayDensityBase {
26333
26251
  IgxActionStripComponent.decorators = [
26334
26252
  { type: Component, args: [{
26335
26253
  selector: 'igx-action-strip',
26336
- template: "<div class=\"igx-action-strip__actions\">\n <ng-content #content></ng-content>\n <ng-container *ngIf=\"menuItems.length > 0\">\n <button\n igxButton=\"icon\"\n igxRipple\n [igxToggleAction]=\"dropdown\"\n [overlaySettings]=\"menuOverlaySettings\"\n (click)=\"$event.stopPropagation()\"\n [igxDropDownItemNavigation]=\"dropdown\"\n >\n <igx-icon>more_vert</igx-icon>\n </button>\n </ng-container>\n <igx-drop-down #dropdown [displayDensity]=\"displayDensity\">\n <igx-drop-down-item\n *ngFor=\"let item of menuItems\"\n class=\"igx-action-strip__menu-item\"\n >\n <div class=\"igx-drop-down__item-template\">\n <ng-container\n *ngTemplateOutlet=\"\n item.templateRef;\n context: { $implicit: item }\n \"\n ></ng-container>\n </div>\n </igx-drop-down-item>\n </igx-drop-down>\n</div>\n"
26254
+ template: "<div class=\"igx-action-strip__actions\">\n <ng-content #content></ng-content>\n <ng-container *ngIf=\"menuItems.length > 0\">\n <button\n igxButton=\"icon\"\n igxRipple\n [igxToggleAction]=\"dropdown\"\n [overlaySettings]=\"menuOverlaySettings\"\n (click)=\"$event.stopPropagation()\"\n [title]=\"resourceStrings.igx_action_strip_button_more_title\"\n [igxDropDownItemNavigation]=\"dropdown\"\n >\n <igx-icon>more_vert</igx-icon>\n </button>\n </ng-container>\n <igx-drop-down #dropdown [displayDensity]=\"displayDensity\">\n <igx-drop-down-item\n *ngFor=\"let item of menuItems\"\n class=\"igx-action-strip__menu-item\"\n >\n <div class=\"igx-drop-down__item-template\">\n <ng-container\n *ngTemplateOutlet=\"\n item.templateRef;\n context: { $implicit: item }\n \"\n ></ng-container>\n </div>\n </igx-drop-down-item>\n </igx-drop-down>\n</div>\n"
26337
26255
  },] }
26338
26256
  ];
26339
26257
  IgxActionStripComponent.ctorParameters = () => [
@@ -26348,6 +26266,7 @@ IgxActionStripComponent.propDecorators = {
26348
26266
  actionButtons: [{ type: ContentChildren, args: [IgxGridActionsBaseDirective,] }],
26349
26267
  hidden: [{ type: Input }],
26350
26268
  hostClass: [{ type: Input, args: ['class',] }],
26269
+ resourceStrings: [{ type: Input }],
26351
26270
  menu: [{ type: ViewChild, args: ['dropdown',] }],
26352
26271
  display: [{ type: HostBinding, args: ['style.display',] }],
26353
26272
  hostClasses: [{ type: HostBinding, args: ['attr.class',] }]
@@ -35115,6 +35034,20 @@ class IgxComboBaseDirective extends DisplayDensityBase {
35115
35034
  this._displayDensityOptions = _displayDensityOptions;
35116
35035
  this._inputGroupType = _inputGroupType;
35117
35036
  this._injector = _injector;
35037
+ /**
35038
+ * Defines whether the caseSensitive icon should be shown in the search input
35039
+ *
35040
+ * ```typescript
35041
+ * // get
35042
+ * let myComboShowSearchCaseIcon = this.combo.showSearchCaseIcon;
35043
+ * ```
35044
+ *
35045
+ * ```html
35046
+ * <!--set-->
35047
+ * <igx-combo [showSearchCaseIcon]='true'></igx-combo>
35048
+ * ```
35049
+ */
35050
+ this.showSearchCaseIcon = false;
35118
35051
  /**
35119
35052
  * Set custom overlay settings that control how the combo's list of items is displayed.
35120
35053
  * Set:
@@ -35174,6 +35107,13 @@ class IgxComboBaseDirective extends DisplayDensityBase {
35174
35107
  * ```
35175
35108
  */
35176
35109
  this.valueKey = null;
35110
+ /**
35111
+ * An @Input property that enabled/disables filtering in the list. The default is `true`.
35112
+ * ```html
35113
+ * <igx-combo [filterable]="false">
35114
+ * ```
35115
+ */
35116
+ this.filterable = true;
35177
35117
  /** @hidden @internal */
35178
35118
  this.cssClass = 'igx-combo'; // Independent of display density for the time being
35179
35119
  /** @hidden @internal */
@@ -35185,15 +35125,6 @@ class IgxComboBaseDirective extends DisplayDensityBase {
35185
35125
  * ```
35186
35126
  */
35187
35127
  this.disabled = false;
35188
- /**
35189
- * Emitted when item selection is changing, before the selection completes
35190
- *
35191
- * ```html
35192
- * <igx-combo (selectionChanging)='handleSelection()'></igx-combo>
35193
- * ```
35194
- */
35195
- // TODO: any for old/new selection?
35196
- this.selectionChanging = new EventEmitter();
35197
35128
  /**
35198
35129
  * Emitted before the dropdown is opened
35199
35130
  *
@@ -35936,6 +35867,10 @@ class IgxComboBaseDirective extends DisplayDensityBase {
35936
35867
  }
35937
35868
  }
35938
35869
  }
35870
+ /** @hidden @internal */
35871
+ toggleCaseSensitive() {
35872
+ this.filteringOptions = { caseSensitive: !this.filteringOptions.caseSensitive };
35873
+ }
35939
35874
  /** if there is a valueKey - map the keys to data items, else - just return the keys */
35940
35875
  convertKeysToItems(keys) {
35941
35876
  if (this.comboAPI.valueKey === null) {
@@ -36005,6 +35940,7 @@ IgxComboBaseDirective.ctorParameters = () => [
36005
35940
  { type: Injector, decorators: [{ type: Optional }] }
36006
35941
  ];
36007
35942
  IgxComboBaseDirective.propDecorators = {
35943
+ showSearchCaseIcon: [{ type: Input }],
36008
35944
  overlaySettings: [{ type: Input }],
36009
35945
  id: [{ type: HostBinding, args: ['attr.id',] }, { type: Input }],
36010
35946
  width: [{ type: HostBinding, args: ['style.width',] }, { type: Input }],
@@ -36017,6 +35953,7 @@ IgxComboBaseDirective.propDecorators = {
36017
35953
  valueKey: [{ type: Input }],
36018
35954
  displayKey: [{ type: Input }],
36019
35955
  groupKey: [{ type: Input }],
35956
+ filterable: [{ type: Input }],
36020
35957
  ariaLabelledBy: [{ type: Input }, { type: HostBinding, args: ['attr.aria-labelledby',] }],
36021
35958
  cssClass: [{ type: HostBinding, args: ['class.igx-combo',] }],
36022
35959
  role: [{ type: HostBinding, args: [`attr.role`,] }],
@@ -36025,7 +35962,6 @@ IgxComboBaseDirective.propDecorators = {
36025
35962
  ariaOwns: [{ type: HostBinding, args: ['attr.aria-owns',] }],
36026
35963
  disabled: [{ type: Input }],
36027
35964
  type: [{ type: Input }],
36028
- selectionChanging: [{ type: Output }],
36029
35965
  opening: [{ type: Output }],
36030
35966
  opened: [{ type: Output }],
36031
35967
  closing: [{ type: Output }],
@@ -36399,20 +36335,6 @@ class IgxComboComponent extends IgxComboBaseDirective {
36399
36335
  this._displayDensityOptions = _displayDensityOptions;
36400
36336
  this._inputGroupType = _inputGroupType;
36401
36337
  this._injector = _injector;
36402
- /**
36403
- * Defines whether the caseSensitive icon should be shown in the search input
36404
- *
36405
- * ```typescript
36406
- * // get
36407
- * let myComboShowSearchCaseIcon = this.combo.showSearchCaseIcon;
36408
- * ```
36409
- *
36410
- * ```html
36411
- * <!--set-->
36412
- * <igx-combo [showSearchCaseIcon]='true'></igx-combo>
36413
- * ```
36414
- */
36415
- this.showSearchCaseIcon = false;
36416
36338
  /**
36417
36339
  * An @Input property that controls whether the combo's search box
36418
36340
  * should be focused after the `opened` event is called
@@ -36440,6 +36362,14 @@ class IgxComboComponent extends IgxComboBaseDirective {
36440
36362
  * ```
36441
36363
  */
36442
36364
  this.searchPlaceholder = 'Enter a Search Term';
36365
+ /**
36366
+ * Emitted when item selection is changing, before the selection completes
36367
+ *
36368
+ * ```html
36369
+ * <igx-combo (selectionChanging)='handleSelection()'></igx-combo>
36370
+ * ```
36371
+ */
36372
+ this.selectionChanging = new EventEmitter();
36443
36373
  /**
36444
36374
  * @hidden @internal
36445
36375
  */
@@ -36619,12 +36549,6 @@ class IgxComboComponent extends IgxComboBaseDirective {
36619
36549
  this.deselect([itemID], event);
36620
36550
  }
36621
36551
  }
36622
- /**
36623
- * @hidden @internal
36624
- */
36625
- toggleCaseSensitive() {
36626
- this.filteringOptions = { caseSensitive: !this.filteringOptions.caseSensitive };
36627
- }
36628
36552
  /** @hidden @internal */
36629
36553
  handleOpened() {
36630
36554
  this.triggerCheck();
@@ -36698,7 +36622,7 @@ class IgxComboComponent extends IgxComboBaseDirective {
36698
36622
  IgxComboComponent.decorators = [
36699
36623
  { type: Component, args: [{
36700
36624
  selector: 'igx-combo',
36701
- template: "<igx-input-group #inputGroup [displayDensity]=\"displayDensity\" [type]=\"type\" (click)=\"onClick($event)\">\n <ng-container ngProjectAs=\"[igxLabel]\">\n <ng-content select=\"[igxLabel]\"></ng-content>\n </ng-container>\n <ng-container ngProjectAs=\"igx-prefix\">\n <ng-content select=\"igx-prefix\"></ng-content>\n </ng-container>\n <ng-container ngProjectAs=\"igx-hint, [igxHint]\">\n <ng-content select=\"igx-hint, [igxHint]\"></ng-content>\n </ng-container>\n <input igxInput #comboInput name=\"comboInput\" type=\"text\" [value]=\"value\" readonly [attr.placeholder]=\"placeholder\"\n [disabled]=\"disabled\" (blur)=\"onBlur()\" />\n <ng-container ngProjectAs=\"igx-suffix\">\n <ng-content select=\"igx-suffix\"></ng-content>\n </ng-container>\n <igx-suffix *ngIf=\"value.length\" aria-label=\"Clear Selection\" class=\"igx-combo__clear-button\"\n (click)=\"handleClearItems($event)\">\n <ng-container *ngIf=\"clearIconTemplate\">\n <ng-container *ngTemplateOutlet=\"clearIconTemplate\"></ng-container>\n </ng-container>\n <igx-icon *ngIf=\"!clearIconTemplate\">\n clear\n </igx-icon>\n </igx-suffix>\n <igx-suffix class=\"igx-combo__toggle-button\">\n <ng-container *ngIf=\"toggleIconTemplate\">\n <ng-container *ngTemplateOutlet=\"toggleIconTemplate; context: {$implicit: this.collapsed}\"></ng-container>\n </ng-container>\n <igx-icon *ngIf=\"!toggleIconTemplate\">\n {{ dropdown.collapsed ? 'arrow_drop_down' : 'arrow_drop_up'}}\n </igx-icon>\n </igx-suffix>\n</igx-input-group>\n<igx-combo-drop-down #igxComboDropDown class=\"igx-combo__drop-down\" [displayDensity]=\"displayDensity\"\n [width]=\"itemsWidth || '100%'\" (opening)=\"handleOpening($event)\" (closing)=\"handleClosing($event)\"\n (opened)=\"handleOpened()\" (closed)=\"handleClosed()\">\n <igx-input-group *ngIf=\"displaySearchInput\" [displayDensity]=\"displayDensity\" theme=\"material\" class=\"igx-combo__search\">\n <input class=\"igx-combo-input\" igxInput #searchInput name=\"searchInput\" autocomplete=\"off\" type=\"text\"\n [(ngModel)]=\"searchValue\" (ngModelChange)=\"handleInputChange($event)\" (keyup)=\"handleKeyUp($event)\"\n (keydown)=\"handleKeyDown($event)\" (focus)=\"dropdown.onBlur($event)\" [attr.placeholder]=\"searchPlaceholder\"\n aria-autocomplete=\"both\" [attr.aria-owns]=\"dropdown.id\" [attr.aria-labelledby]=\"ariaLabelledBy\" />\n <igx-suffix *ngIf=\"showSearchCaseIcon\">\n <igx-icon family=\"imx-icons\" name=\"case-sensitive\" [active]=\"filteringOptions.caseSensitive\"\n (click)=\"toggleCaseSensitive()\">\n </igx-icon>\n </igx-suffix>\n </igx-input-group>\n <ng-container *ngTemplateOutlet=\"headerTemplate\">\n </ng-container>\n <div #dropdownItemContainer class=\"igx-combo__content\" [style.overflow]=\"'hidden'\"\n [style.maxHeight.px]=\"itemsMaxHeight\" [igxDropDownItemNavigation]=\"dropdown\" (focus)=\"dropdown.onFocus()\"\n [tabindex]=\"dropdown.collapsed ? -1 : 0\" role=\"listbox\" [attr.id]=\"dropdown.id\">\n <igx-combo-item role=\"option\" [itemHeight]='itemHeight' *igxFor=\"let item of data\n | comboFiltering:filterValue:displayKey:filteringOptions:filterable\n | comboGrouping:groupKey:valueKey;\n index as rowIndex; containerSize: itemsMaxHeight; scrollOrientation: 'vertical'; itemSize: itemHeight\"\n [value]=\"item\" [isHeader]=\"item.isHeader\" [index]=\"rowIndex\">\n <ng-container *ngIf=\"item.isHeader\">\n <ng-container\n *ngTemplateOutlet=\"headerItemTemplate ? headerItemTemplate : headerItemBase;\n context: {$implicit: item, data: data, valueKey: valueKey, groupKey: groupKey, displayKey: displayKey}\">\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"!item.isHeader\">\n <ng-container #listItem\n *ngTemplateOutlet=\"template; context: {$implicit: item, data: data, valueKey: valueKey, displayKey: displayKey};\">\n </ng-container>\n </ng-container>\n </igx-combo-item>\n </div>\n <div class=\"igx-combo__add\" *ngIf=\"filteredData.length === 0 || isAddButtonVisible()\">\n <div class=\"igx-combo__empty\" *ngIf=\"filteredData.length === 0\">\n <ng-container *ngTemplateOutlet=\"emptyTemplate ? emptyTemplate : empty\">\n </ng-container>\n </div>\n <igx-combo-add-item [itemHeight]=\"itemHeight\" *ngIf=\"isAddButtonVisible()\"\n [tabindex]=\"dropdown.collapsed ? -1 : customValueFlag ? 1 : -1\" class=\"igx-combo__add-item\" role=\"button\"\n aria-label=\"Add Item\" [index]=\"virtualScrollContainer.igxForOf.length\">\n <ng-container *ngTemplateOutlet=\"addItemTemplate ? addItemTemplate : addItemDefault\">\n </ng-container>\n </igx-combo-add-item>\n </div>\n <ng-container *ngTemplateOutlet=\"footerTemplate\">\n </ng-container>\n</igx-combo-drop-down>\n<ng-template #complex let-display let-data=\"data\" let-key=\"displayKey\">\n {{display[key]}}\n</ng-template>\n<ng-template #primitive let-display>\n {{display}}\n</ng-template>\n<ng-template #empty>\n <span>The list is empty</span>\n</ng-template>\n<ng-template #addItemDefault let-control>\n <button igxButton=\"flat\" igxRipple>Add item</button>\n</ng-template>\n<ng-template #headerItemBase let-item let-key=\"valueKey\" let-groupKey=\"groupKey\">\n {{ item[key] }}\n</ng-template>\n",
36625
+ template: "<igx-input-group #inputGroup [displayDensity]=\"displayDensity\" [type]=\"type\" (click)=\"onClick($event)\">\n <ng-container ngProjectAs=\"[igxLabel]\">\n <ng-content select=\"[igxLabel]\"></ng-content>\n </ng-container>\n <ng-container ngProjectAs=\"igx-prefix\">\n <ng-content select=\"igx-prefix\"></ng-content>\n </ng-container>\n <ng-container ngProjectAs=\"igx-hint, [igxHint]\">\n <ng-content select=\"igx-hint, [igxHint]\"></ng-content>\n </ng-container>\n <input igxInput #comboInput name=\"comboInput\" type=\"text\" [value]=\"value\" readonly [attr.placeholder]=\"placeholder\"\n [disabled]=\"disabled\" (blur)=\"onBlur()\" />\n <ng-container ngProjectAs=\"igx-suffix\">\n <ng-content select=\"igx-suffix\"></ng-content>\n </ng-container>\n <igx-suffix *ngIf=\"value.length\" aria-label=\"Clear Selection\" class=\"igx-combo__clear-button\"\n (click)=\"handleClearItems($event)\">\n <ng-container *ngIf=\"clearIconTemplate\">\n <ng-container *ngTemplateOutlet=\"clearIconTemplate\"></ng-container>\n </ng-container>\n <igx-icon *ngIf=\"!clearIconTemplate\">\n clear\n </igx-icon>\n </igx-suffix>\n <igx-suffix class=\"igx-combo__toggle-button\">\n <ng-container *ngIf=\"toggleIconTemplate\">\n <ng-container *ngTemplateOutlet=\"toggleIconTemplate; context: {$implicit: this.collapsed}\"></ng-container>\n </ng-container>\n <igx-icon *ngIf=\"!toggleIconTemplate\">\n {{ dropdown.collapsed ? 'arrow_drop_down' : 'arrow_drop_up'}}\n </igx-icon>\n </igx-suffix>\n</igx-input-group>\n<igx-combo-drop-down #igxComboDropDown class=\"igx-combo__drop-down\" [displayDensity]=\"displayDensity\"\n [width]=\"itemsWidth || '100%'\" (opening)=\"handleOpening($event)\" (closing)=\"handleClosing($event)\"\n (opened)=\"handleOpened()\" (closed)=\"handleClosed()\">\n <igx-input-group *ngIf=\"displaySearchInput\" [displayDensity]=\"displayDensity\" theme=\"material\" class=\"igx-combo__search\">\n <input class=\"igx-combo-input\" igxInput #searchInput name=\"searchInput\" autocomplete=\"off\" type=\"text\"\n [(ngModel)]=\"searchValue\" (ngModelChange)=\"handleInputChange($event)\" (keyup)=\"handleKeyUp($event)\"\n (keydown)=\"handleKeyDown($event)\" (focus)=\"dropdown.onBlur($event)\" [attr.placeholder]=\"searchPlaceholder\"\n aria-autocomplete=\"both\" [attr.aria-owns]=\"dropdown.id\" [attr.aria-labelledby]=\"ariaLabelledBy\" />\n <igx-suffix *ngIf=\"showSearchCaseIcon\">\n <igx-icon family=\"imx-icons\" name=\"case-sensitive\" [active]=\"filteringOptions.caseSensitive\"\n (click)=\"toggleCaseSensitive()\">\n </igx-icon>\n </igx-suffix>\n </igx-input-group>\n <ng-container *ngTemplateOutlet=\"headerTemplate\">\n </ng-container>\n <div #dropdownItemContainer class=\"igx-combo__content\" [style.overflow]=\"'hidden'\"\n [style.maxHeight.px]=\"itemsMaxHeight\" [igxDropDownItemNavigation]=\"dropdown\" (focus)=\"dropdown.onFocus()\"\n [tabindex]=\"dropdown.collapsed ? -1 : 0\" role=\"listbox\" [attr.id]=\"dropdown.id\">\n <igx-combo-item role=\"option\" [itemHeight]='itemHeight' *igxFor=\"let item of data\n | comboFiltering:filterValue:displayKey:filteringOptions:filterable\n | comboGrouping:groupKey:valueKey\n index as rowIndex; containerSize: itemsMaxHeight; scrollOrientation: 'vertical'; itemSize: itemHeight\"\n [value]=\"item\" [isHeader]=\"item.isHeader\" [index]=\"rowIndex\">\n <ng-container *ngIf=\"item.isHeader\">\n <ng-container\n *ngTemplateOutlet=\"headerItemTemplate ? headerItemTemplate : headerItemBase;\n context: {$implicit: item, data: data, valueKey: valueKey, groupKey: groupKey, displayKey: displayKey}\">\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"!item.isHeader\">\n <ng-container #listItem\n *ngTemplateOutlet=\"template; context: {$implicit: item, data: data, valueKey: valueKey, displayKey: displayKey};\">\n </ng-container>\n </ng-container>\n </igx-combo-item>\n </div>\n <div class=\"igx-combo__add\" *ngIf=\"filteredData.length === 0 || isAddButtonVisible()\">\n <div class=\"igx-combo__empty\" *ngIf=\"filteredData.length === 0\">\n <ng-container *ngTemplateOutlet=\"emptyTemplate ? emptyTemplate : empty\">\n </ng-container>\n </div>\n <igx-combo-add-item [itemHeight]=\"itemHeight\" *ngIf=\"isAddButtonVisible()\"\n [tabindex]=\"dropdown.collapsed ? -1 : customValueFlag ? 1 : -1\" class=\"igx-combo__add-item\" role=\"button\"\n aria-label=\"Add Item\" [index]=\"virtualScrollContainer.igxForOf.length\">\n <ng-container *ngTemplateOutlet=\"addItemTemplate ? addItemTemplate : addItemDefault\">\n </ng-container>\n </igx-combo-add-item>\n </div>\n <ng-container *ngTemplateOutlet=\"footerTemplate\">\n </ng-container>\n</igx-combo-drop-down>\n<ng-template #complex let-display let-data=\"data\" let-key=\"displayKey\">\n {{display[key]}}\n</ng-template>\n<ng-template #primitive let-display>\n {{display}}\n</ng-template>\n<ng-template #empty>\n <span>The list is empty</span>\n</ng-template>\n<ng-template #addItemDefault let-control>\n <button igxButton=\"flat\" igxRipple>Add item</button>\n</ng-template>\n<ng-template #headerItemBase let-item let-key=\"valueKey\" let-groupKey=\"groupKey\">\n {{ item[key] }}\n</ng-template>\n",
36702
36626
  providers: [
36703
36627
  IgxComboAPIService,
36704
36628
  { provide: IGX_COMBO_COMPONENT, useExisting: IgxComboComponent },
@@ -36717,10 +36641,10 @@ IgxComboComponent.ctorParameters = () => [
36717
36641
  { type: Injector, decorators: [{ type: Optional }] }
36718
36642
  ];
36719
36643
  IgxComboComponent.propDecorators = {
36720
- showSearchCaseIcon: [{ type: Input }],
36721
36644
  autoFocusSearch: [{ type: Input }],
36722
36645
  filterable: [{ type: Input }],
36723
36646
  searchPlaceholder: [{ type: Input }],
36647
+ selectionChanging: [{ type: Output }],
36724
36648
  dropdown: [{ type: ViewChild, args: [IgxComboDropDownComponent, { static: true },] }]
36725
36649
  };
36726
36650
  /**
@@ -36798,7 +36722,7 @@ class IgxSimpleComboComponent extends IgxComboBaseDirective {
36798
36722
  this.selectionChanging = new EventEmitter();
36799
36723
  /** @hidden @internal */
36800
36724
  this.composing = false;
36801
- this._updateInput = false;
36725
+ this._updateInput = true;
36802
36726
  this.findMatch = (element) => {
36803
36727
  const value = this.displayKey ? element[this.displayKey] : element;
36804
36728
  return value.toString().toLowerCase().includes(this.searchValue.trim().toLowerCase());
@@ -36814,6 +36738,23 @@ class IgxSimpleComboComponent extends IgxComboBaseDirective {
36814
36738
  this._filteredData = this.groupKey ? (val || []).filter((e) => e.isHeader !== true) : val;
36815
36739
  this.checkMatch();
36816
36740
  }
36741
+ /** @hidden @internal */
36742
+ onArrowDown(event) {
36743
+ if (this.collapsed) {
36744
+ event.preventDefault();
36745
+ event.stopPropagation();
36746
+ this.open();
36747
+ }
36748
+ else {
36749
+ if (this.virtDir.igxForOf.length > 0) {
36750
+ this.dropdown.navigateFirst();
36751
+ this.dropdownContainer.nativeElement.focus();
36752
+ }
36753
+ else if (this.allowCustomValues) {
36754
+ this.addItem.element.nativeElement.focus();
36755
+ }
36756
+ }
36757
+ }
36817
36758
  /**
36818
36759
  * Select a defined item
36819
36760
  *
@@ -36829,18 +36770,15 @@ class IgxSimpleComboComponent extends IgxComboBaseDirective {
36829
36770
  }
36830
36771
  }
36831
36772
  /**
36832
- * Deselect a defined item
36773
+ * Deselect the currently selected item
36833
36774
  *
36834
36775
  * @param item the items to be deselected
36835
36776
  * ```typescript
36836
36777
  * this.combo.deselect("New York");
36837
36778
  * ```
36838
36779
  */
36839
- deselect(item) {
36840
- if (item !== null && item !== undefined) {
36841
- const newSelection = this.selectionService.delete_items(this.id, item instanceof Array ? item : [item]);
36842
- this.setSelection(newSelection);
36843
- }
36780
+ deselect() {
36781
+ this.clearSelection();
36844
36782
  }
36845
36783
  /** @hidden @internal */
36846
36784
  writeValue(value) {
@@ -36851,21 +36789,30 @@ class IgxSimpleComboComponent extends IgxComboBaseDirective {
36851
36789
  }
36852
36790
  /** @hidden @internal */
36853
36791
  ngAfterViewInit() {
36792
+ this.virtDir.contentSizeChange.pipe(takeUntil(this.destroy$)).subscribe(() => {
36793
+ if (this.selection.length > 0) {
36794
+ const index = this.virtDir.igxForOf.findIndex(e => {
36795
+ let current = e[this.valueKey];
36796
+ if (this.valueKey === null || this.valueKey === undefined) {
36797
+ current = e;
36798
+ }
36799
+ return current === this.selection[0];
36800
+ });
36801
+ this.dropdown.navigateItem(index);
36802
+ }
36803
+ });
36854
36804
  this.dropdown.opened.pipe(takeUntil(this.destroy$)).subscribe(() => {
36855
36805
  if (this.composing) {
36856
36806
  this.comboInput.focus();
36857
36807
  }
36858
36808
  });
36859
- this.dropdown.closed.pipe(takeUntil(this.destroy$)).subscribe(() => {
36860
- this.composing = false;
36861
- });
36862
- this.dropdown.closing.pipe(takeUntil(this.destroy$)).subscribe(() => {
36863
- const selection = this.selectionService.first_item(this.id);
36864
- this.comboInput.value = selection !== undefined && selection !== null ? selection : '';
36865
- });
36866
- this.dropdown.opening.pipe(takeUntil(this.destroy$)).subscribe(() => {
36867
- if (!this.comboInput.value.length) {
36868
- this.clearSelection();
36809
+ this.dropdown.closing.pipe(takeUntil(this.destroy$)).subscribe((args) => {
36810
+ if (this.getEditElement() && !args.event) {
36811
+ this.comboInput.focus();
36812
+ }
36813
+ else {
36814
+ this.clearOnBlur();
36815
+ this._onTouchedCallback();
36869
36816
  }
36870
36817
  });
36871
36818
  super.ngAfterViewInit();
@@ -36874,10 +36821,17 @@ class IgxSimpleComboComponent extends IgxComboBaseDirective {
36874
36821
  handleInputChange(event) {
36875
36822
  this.searchValue = event.target.value;
36876
36823
  this._onChangeCallback(this.searchValue);
36877
- if (this.collapsed) {
36824
+ if (this.collapsed && this.comboInput.focused) {
36878
36825
  this.open();
36826
+ this.dropdown.navigateFirst();
36827
+ }
36828
+ if (!this.comboInput.value.trim()) {
36829
+ // handle clearing of input by space
36830
+ this.clearSelection();
36831
+ this._onChangeCallback(null);
36879
36832
  }
36880
36833
  super.handleInputChange(event);
36834
+ this.composing = true;
36881
36835
  }
36882
36836
  /** @hidden @internal */
36883
36837
  handleKeyDown(event) {
@@ -36886,10 +36840,12 @@ class IgxSimpleComboComponent extends IgxComboBaseDirective {
36886
36840
  if (filtered === null || filtered === undefined) {
36887
36841
  return;
36888
36842
  }
36889
- this.select(this.dropdown.items[0].itemID);
36843
+ this.select(this.dropdown.focusedItem.itemID);
36890
36844
  event.preventDefault();
36891
36845
  event.stopPropagation();
36892
36846
  this.close();
36847
+ // manually trigger text selection as it will not be triggered during editing
36848
+ this.textSelection.trigger();
36893
36849
  return;
36894
36850
  }
36895
36851
  if (event.key === this.platformUtil.KEYMAP.BACKSPACE
@@ -36897,11 +36853,12 @@ class IgxSimpleComboComponent extends IgxComboBaseDirective {
36897
36853
  this._updateInput = false;
36898
36854
  this.clearSelection();
36899
36855
  }
36856
+ if (!this.collapsed && event.key === this.platformUtil.KEYMAP.TAB) {
36857
+ this.close();
36858
+ this.clearOnBlur();
36859
+ }
36860
+ this.composing = false;
36900
36861
  super.handleKeyDown(event);
36901
- this.composing = event.key !== this.platformUtil.KEYMAP.ARROW_DOWN
36902
- && event.key !== this.platformUtil.KEYMAP.ARROW_LEFT
36903
- && event.key !== this.platformUtil.KEYMAP.ARROW_RIGHT
36904
- && event.key !== this.platformUtil.KEYMAP.TAB;
36905
36862
  }
36906
36863
  /** @hidden @internal */
36907
36864
  handleKeyUp(event) {
@@ -36914,6 +36871,29 @@ class IgxSimpleComboComponent extends IgxComboBaseDirective {
36914
36871
  }
36915
36872
  }
36916
36873
  /** @hidden @internal */
36874
+ handleItemKeyDown(event) {
36875
+ if (event.key === this.platformUtil.KEYMAP.ARROW_UP && event.altKey) {
36876
+ this.close();
36877
+ this.comboInput.focus();
36878
+ return;
36879
+ }
36880
+ if (event.key === this.platformUtil.KEYMAP.ENTER) {
36881
+ this.comboInput.focus();
36882
+ }
36883
+ }
36884
+ /** @hidden @internal */
36885
+ handleItemClick() {
36886
+ this.close();
36887
+ this.comboInput.focus();
36888
+ }
36889
+ /** @hidden @internal */
36890
+ onBlur() {
36891
+ if (this.collapsed) {
36892
+ this.clearOnBlur();
36893
+ }
36894
+ super.onBlur();
36895
+ }
36896
+ /** @hidden @internal */
36917
36897
  getEditElement() {
36918
36898
  return this.comboInput.nativeElement;
36919
36899
  }
@@ -36924,7 +36904,8 @@ class IgxSimpleComboComponent extends IgxComboBaseDirective {
36924
36904
  }
36925
36905
  this.clearSelection(true);
36926
36906
  if (this.collapsed) {
36927
- this.getEditElement().focus();
36907
+ this.open();
36908
+ this.dropdown.navigateFirst();
36928
36909
  }
36929
36910
  else {
36930
36911
  this.focusSearchInput(true);
@@ -36932,6 +36913,7 @@ class IgxSimpleComboComponent extends IgxComboBaseDirective {
36932
36913
  event.stopPropagation();
36933
36914
  this.comboInput.value = this.filterValue = this.searchValue = '';
36934
36915
  this.dropdown.focusedItem = null;
36916
+ this.composing = false;
36935
36917
  this.comboInput.focus();
36936
36918
  }
36937
36919
  /** @hidden @internal */
@@ -36941,6 +36923,22 @@ class IgxSimpleComboComponent extends IgxComboBaseDirective {
36941
36923
  this.opened.emit({ owner: this });
36942
36924
  }
36943
36925
  /** @hidden @internal */
36926
+ handleClosing(e) {
36927
+ const args = { owner: this, event: e.event, cancel: e.cancel };
36928
+ this.closing.emit(args);
36929
+ e.cancel = args.cancel;
36930
+ if (e.cancel) {
36931
+ return;
36932
+ }
36933
+ this.composing = false;
36934
+ // explicitly update selection and trigger text selection so that we don't have to force CD
36935
+ this.textSelection.selected = true;
36936
+ this.textSelection.trigger();
36937
+ const selection = this.selectionService.first_item(this.id);
36938
+ this._value = selection !== undefined && selection !== null ? selection : '';
36939
+ this._onChangeCallback(selection);
36940
+ }
36941
+ /** @hidden @internal */
36944
36942
  focusSearchInput(opening) {
36945
36943
  if (opening) {
36946
36944
  this.dropdownContainer.nativeElement.focus();
@@ -36950,6 +36948,13 @@ class IgxSimpleComboComponent extends IgxComboBaseDirective {
36950
36948
  this.toggle();
36951
36949
  }
36952
36950
  }
36951
+ /** @hidden @internal */
36952
+ onClick(event) {
36953
+ super.onClick(event);
36954
+ if (this.comboInput.value.length === 0) {
36955
+ this.virtDir.scrollTo(0);
36956
+ }
36957
+ }
36953
36958
  setSelection(newSelection) {
36954
36959
  const newSelectionAsArray = newSelection ? Array.from(newSelection) : [];
36955
36960
  const oldSelectionAsArray = Array.from(this.selectionService.get(this.id) || []);
@@ -36969,7 +36974,7 @@ class IgxSimpleComboComponent extends IgxComboBaseDirective {
36969
36974
  : [];
36970
36975
  this.selectionService.select_items(this.id, argsSelection, true);
36971
36976
  if (this._updateInput) {
36972
- this._value = displayText !== args.displayText
36977
+ this.comboInput.value = this._value = displayText !== args.displayText
36973
36978
  ? args.displayText
36974
36979
  : this.createDisplayText([args.newSelection], [args.oldSelection]);
36975
36980
  }
@@ -36992,11 +36997,19 @@ class IgxSimpleComboComponent extends IgxComboBaseDirective {
36992
36997
  }
36993
36998
  this.setSelection(newSelection);
36994
36999
  }
37000
+ clearOnBlur() {
37001
+ const filtered = this.filteredData.find(this.findMatch);
37002
+ if ((filtered === undefined || filtered === null)) {
37003
+ this.close();
37004
+ this.clearSelection();
37005
+ this.searchValue = '';
37006
+ }
37007
+ }
36995
37008
  }
36996
37009
  IgxSimpleComboComponent.decorators = [
36997
37010
  { type: Component, args: [{
36998
37011
  selector: 'igx-simple-combo',
36999
- template: "<igx-input-group #inputGroup [displayDensity]=\"displayDensity\" [type]=\"type\">\n <ng-container ngProjectAs=\"[igxLabel]\">\n <ng-content select=\"[igxLabel]\"></ng-content>\n </ng-container>\n <ng-container ngProjectAs=\"igx-prefix\">\n <ng-content select=\"igx-prefix\"></ng-content>\n </ng-container>\n <ng-container ngProjectAs=\"igx-hint, [igxHint]\">\n <ng-content select=\"igx-hint, [igxHint]\"></ng-content>\n </ng-container>\n\n <input #comboInput igxInput [value]=\"value\" (input)=\"handleInputChange($event)\" (keyup)=\"handleKeyUp($event)\"\n (keydown)=\"handleKeyDown($event)\" (blur)=\"onBlur()\" [attr.placeholder]=\"placeholder\"\n aria-autocomplete=\"both\" [attr.aria-owns]=\"dropdown.id\" [attr.aria-labelledby]=\"ariaLabelledBy\"\n [disabled]=\"disabled\" [igxTextSelection]=\"!composing\" />\n\n <ng-container ngProjectAs=\"igx-suffix\">\n <ng-content select=\"igx-suffix\"></ng-content>\n </ng-container>\n <igx-suffix *ngIf=\"comboInput.value.length\" aria-label=\"Clear Selection\" class=\"igx-combo__clear-button\"\n (click)=\"handleClear($event)\">\n <ng-container *ngIf=\"clearIconTemplate\">\n <ng-container *ngTemplateOutlet=\"clearIconTemplate\"></ng-container>\n </ng-container>\n <igx-icon *ngIf=\"!clearIconTemplate\">\n clear\n </igx-icon>\n </igx-suffix>\n <igx-suffix class=\"igx-combo__toggle-button\">\n <ng-container *ngIf=\"toggleIconTemplate\">\n <ng-container *ngTemplateOutlet=\"toggleIconTemplate; context: {$implicit: collapsed}\"></ng-container>\n </ng-container>\n <igx-icon (click)=\"onClick($event)\" *ngIf=\"!toggleIconTemplate\">\n {{ dropdown.collapsed ? 'arrow_drop_down' : 'arrow_drop_up'}}\n </igx-icon>\n </igx-suffix>\n</igx-input-group>\n\n<igx-combo-drop-down #igxComboDropDown class=\"igx-combo__drop-down\" [displayDensity]=\"displayDensity\"\n [width]=\"itemsWidth || '100%'\" (opening)=\"handleOpening($event)\" (closing)=\"handleClosing($event)\"\n (opened)=\"handleOpened()\" (closed)=\"handleClosed()\" [singleMode]=\"true\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\">\n </ng-container>\n <div #dropdownItemContainer class=\"igx-combo__content\" [style.overflow]=\"'hidden'\"\n [style.maxHeight.px]=\"itemsMaxHeight\" [igxDropDownItemNavigation]=\"dropdown\" (focus)=\"dropdown.onFocus()\"\n [tabindex]=\"dropdown.collapsed ? -1 : 0\" role=\"listbox\" [attr.id]=\"dropdown.id\">\n <igx-combo-item role=\"option\" [singleMode]=\"true\" [itemHeight]='itemHeight' (click)=\"close()\" *igxFor=\"let item of data\n | comboFiltering:filterValue:displayKey:filteringOptions:true\n | comboGrouping:groupKey:valueKey\n index as rowIndex; containerSize: itemsMaxHeight; scrollOrientation: 'vertical'; itemSize: itemHeight\"\n [value]=\"item\" [isHeader]=\"item.isHeader\" [index]=\"rowIndex\">\n <ng-container *ngIf=\"item.isHeader\">\n <ng-container\n *ngTemplateOutlet=\"headerItemTemplate ? headerItemTemplate : headerItemBase;\n context: {$implicit: item, data: data, valueKey: valueKey, groupKey: groupKey, displayKey: displayKey}\">\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"!item.isHeader\">\n <ng-container #listItem\n *ngTemplateOutlet=\"template; context: {$implicit: item, data: data, valueKey: valueKey, displayKey: displayKey};\">\n </ng-container>\n </ng-container>\n </igx-combo-item>\n </div>\n\n <div class=\"igx-combo__add\" *ngIf=\"filteredData.length === 0 || isAddButtonVisible()\">\n <div class=\"igx-combo__empty\" *ngIf=\"filteredData.length === 0\">\n <ng-container *ngTemplateOutlet=\"emptyTemplate ? emptyTemplate : empty\">\n </ng-container>\n </div>\n <igx-combo-add-item [itemHeight]=\"itemHeight\" *ngIf=\"isAddButtonVisible()\"\n [tabindex]=\"dropdown.collapsed ? -1 : customValueFlag ? 1 : -1\" class=\"igx-combo__add-item\" role=\"button\"\n aria-label=\"Add Item\" [index]=\"virtualScrollContainer.igxForOf.length\">\n <ng-container *ngTemplateOutlet=\"addItemTemplate ? addItemTemplate : addItemDefault\">\n </ng-container>\n </igx-combo-add-item>\n </div>\n <ng-container *ngTemplateOutlet=\"footerTemplate\">\n </ng-container>\n</igx-combo-drop-down>\n\n<ng-template #complex let-display let-data=\"data\" let-key=\"displayKey\">\n {{display[key]}}\n</ng-template>\n<ng-template #primitive let-display>\n {{display}}\n</ng-template>\n<ng-template #empty>\n <span>The list is empty</span>\n</ng-template>\n<ng-template #addItemDefault let-control>\n <button igxButton=\"flat\" igxRipple>Add item</button>\n</ng-template>\n<ng-template #headerItemBase let-item let-key=\"valueKey\" let-groupKey=\"groupKey\">\n {{ item[key] }}\n</ng-template>\n",
37012
+ template: "<igx-input-group #inputGroup [displayDensity]=\"displayDensity\" [suppressInputAutofocus]=\"true\" [type]=\"type\">\n <ng-container ngProjectAs=\"[igxLabel]\">\n <ng-content select=\"[igxLabel]\"></ng-content>\n </ng-container>\n <ng-container ngProjectAs=\"igx-prefix\">\n <ng-content select=\"igx-prefix\"></ng-content>\n </ng-container>\n <ng-container ngProjectAs=\"igx-hint, [igxHint]\">\n <ng-content select=\"igx-hint, [igxHint]\"></ng-content>\n </ng-container>\n\n <input #comboInput igxInput [value]=\"value\" (input)=\"handleInputChange($event)\" (keyup)=\"handleKeyUp($event)\"\n (keydown)=\"handleKeyDown($event)\" (blur)=\"onBlur()\" [attr.placeholder]=\"placeholder\" aria-autocomplete=\"both\"\n [attr.aria-owns]=\"dropdown.id\" [attr.aria-labelledby]=\"ariaLabelledBy\" [disabled]=\"disabled\"\n [igxTextSelection]=\"!composing\" />\n\n <ng-container ngProjectAs=\"igx-suffix\">\n <ng-content select=\"igx-suffix\"></ng-content>\n </ng-container>\n <igx-suffix *ngIf=\"comboInput.value.length\" aria-label=\"Clear Selection\" class=\"igx-combo__clear-button\"\n (click)=\"handleClear($event)\">\n <ng-container *ngIf=\"clearIconTemplate\">\n <ng-container *ngTemplateOutlet=\"clearIconTemplate\"></ng-container>\n </ng-container>\n <igx-icon *ngIf=\"!clearIconTemplate\">\n clear\n </igx-icon>\n </igx-suffix>\n <igx-suffix *ngIf=\"showSearchCaseIcon\">\n <igx-icon family=\"imx-icons\" name=\"case-sensitive\" [active]=\"filteringOptions.caseSensitive\"\n (click)=\"toggleCaseSensitive()\">\n </igx-icon>\n </igx-suffix>\n <igx-suffix class=\"igx-combo__toggle-button\">\n <ng-container *ngIf=\"toggleIconTemplate\">\n <ng-container *ngTemplateOutlet=\"toggleIconTemplate; context: {$implicit: collapsed}\"></ng-container>\n </ng-container>\n <igx-icon (click)=\"onClick($event)\" *ngIf=\"!toggleIconTemplate\">\n {{ dropdown.collapsed ? 'arrow_drop_down' : 'arrow_drop_up'}}\n </igx-icon>\n </igx-suffix>\n</igx-input-group>\n\n<igx-combo-drop-down #igxComboDropDown class=\"igx-combo__drop-down\" [displayDensity]=\"displayDensity\"\n [width]=\"itemsWidth || '100%'\" (opening)=\"handleOpening($event)\" (closing)=\"handleClosing($event)\"\n (opened)=\"handleOpened()\" (closed)=\"handleClosed()\" [singleMode]=\"true\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\">\n </ng-container>\n <div #dropdownItemContainer class=\"igx-combo__content\" [style.overflow]=\"'hidden'\"\n [style.maxHeight.px]=\"itemsMaxHeight\" [igxDropDownItemNavigation]=\"dropdown\" (focus)=\"dropdown.onFocus()\"\n [tabindex]=\"dropdown.collapsed ? -1 : 0\" role=\"listbox\" [attr.id]=\"dropdown.id\"\n (keydown)=\"handleItemKeyDown($event)\">\n <igx-combo-item role=\"option\" [singleMode]=\"true\" [itemHeight]='itemHeight' (click)=\"handleItemClick()\" *igxFor=\"let item of data\n | comboFiltering:filterValue:displayKey:filteringOptions:true\n | comboGrouping:groupKey:valueKey\n index as rowIndex; containerSize: itemsMaxHeight; scrollOrientation: 'vertical'; itemSize: itemHeight\"\n [value]=\"item\" [isHeader]=\"item.isHeader\" [index]=\"rowIndex\">\n <ng-container *ngIf=\"item.isHeader\">\n <ng-container\n *ngTemplateOutlet=\"headerItemTemplate ? headerItemTemplate : headerItemBase;\n context: {$implicit: item, data: data, valueKey: valueKey, groupKey: groupKey, displayKey: displayKey}\">\n </ng-container>\n </ng-container>\n <ng-container *ngIf=\"!item.isHeader\">\n <ng-container #listItem\n *ngTemplateOutlet=\"template; context: {$implicit: item, data: data, valueKey: valueKey, displayKey: displayKey};\">\n </ng-container>\n </ng-container>\n </igx-combo-item>\n </div>\n\n <div class=\"igx-combo__add\" *ngIf=\"filteredData.length === 0 || isAddButtonVisible()\">\n <div class=\"igx-combo__empty\" *ngIf=\"filteredData.length === 0\">\n <ng-container *ngTemplateOutlet=\"emptyTemplate ? emptyTemplate : empty\">\n </ng-container>\n </div>\n <igx-combo-add-item #addItem [itemHeight]=\"itemHeight\" *ngIf=\"isAddButtonVisible()\"\n [tabindex]=\"dropdown.collapsed ? -1 : customValueFlag ? 1 : -1\" class=\"igx-combo__add-item\" role=\"button\"\n aria-label=\"Add Item\" [index]=\"virtualScrollContainer.igxForOf.length\">\n <ng-container *ngTemplateOutlet=\"addItemTemplate ? addItemTemplate : addItemDefault\">\n </ng-container>\n </igx-combo-add-item>\n </div>\n <ng-container *ngTemplateOutlet=\"footerTemplate\">\n </ng-container>\n</igx-combo-drop-down>\n\n<ng-template #complex let-display let-data=\"data\" let-key=\"displayKey\">\n {{display[key]}}\n</ng-template>\n<ng-template #primitive let-display>\n {{display}}\n</ng-template>\n<ng-template #empty>\n <span>The list is empty</span>\n</ng-template>\n<ng-template #addItemDefault let-control>\n <button igxButton=\"flat\" igxRipple>Add item</button>\n</ng-template>\n<ng-template #headerItemBase let-item let-key=\"valueKey\" let-groupKey=\"groupKey\">\n {{ item[key] }}\n</ng-template>\n",
37000
37013
  providers: [
37001
37014
  IgxComboAPIService,
37002
37015
  { provide: IGX_COMBO_COMPONENT, useExisting: IgxSimpleComboComponent },
@@ -37017,7 +37030,10 @@ IgxSimpleComboComponent.ctorParameters = () => [
37017
37030
  ];
37018
37031
  IgxSimpleComboComponent.propDecorators = {
37019
37032
  dropdown: [{ type: ViewChild, args: [IgxComboDropDownComponent, { static: true },] }],
37020
- selectionChanging: [{ type: Output }]
37033
+ addItem: [{ type: ViewChild, args: [IgxComboAddItemComponent,] }],
37034
+ selectionChanging: [{ type: Output }],
37035
+ textSelection: [{ type: ViewChild, args: [IgxTextSelectionDirective, { static: true },] }],
37036
+ onArrowDown: [{ type: HostListener, args: ['keydown.ArrowDown', ['$event'],] }, { type: HostListener, args: ['keydown.Alt.ArrowDown', ['$event'],] }]
37021
37037
  };
37022
37038
  class IgxSimpleComboModule {
37023
37039
  }
@@ -48640,7 +48656,7 @@ IgxGridHeaderRowComponent.decorators = [
48640
48656
  { type: Component, args: [{
48641
48657
  changeDetection: ChangeDetectionStrategy.OnPush,
48642
48658
  selector: 'igx-grid-header-row',
48643
- template: "<div role=\"rowgroup\" class=\"igx-grid-thead__wrapper\" [style.width.px]=\"width\"\n [attr.aria-activedescendant]=\"activeDescendant\" [class.igx-grid__tr--mrl]=\"hasMRL\">\n\n <!-- Column headers area -->\n <div class=\"igx-grid__tr\" role=\"row\" [style.width.px]=\"width\">\n\n <!-- Left column moving area -->\n <ng-container *ngIf=\"grid.hasMovableColumns && grid.columnInDrag && pinnedColumnCollection.length <= 0\">\n <span id=\"left\" class=\"igx-grid__scroll-on-drag-left\" droppable=\"true\" [style.left.px]=\"grid.pinnedWidth\"\n [igxColumnMovingDrop]=\"headerContainer\"></span>\n </ng-container>\n <ng-container *ngIf=\"grid.hasMovableColumns && grid.columnInDrag && pinnedColumnCollection.length > 0\">\n <span id=\"left\" class=\"igx-grid__scroll-on-drag-pinned\" droppable=\"true\" [style.left.px]=\"grid.pinnedWidth\"\n [igxColumnMovingDrop]=\"headerContainer\"></span>\n </ng-container>\n\n <!-- Row dragging area -->\n <ng-container *ngIf=\"grid.rowDraggable\">\n <div #headerDragContainer class=\"igx-grid__drag-indicator igx-grid__tr-action\" (pointerdown)=\"$event.preventDefault()\" [class.igx-grid__drag-indicator--header]=\"!grid.isRowSelectable\">\n <div style=\"visibility: hidden;\">\n <ng-container *ngTemplateOutlet=\"grid.dragIndicatorIconTemplate || grid.dragIndicatorIconBase\"></ng-container>\n </div>\n </div>\n </ng-container>\n\n <!-- Row selectors area -->\n <ng-container *ngIf=\"grid.showRowSelectors\">\n <div #headerSelectorContainer class=\"igx-grid__cbx-selection igx-grid__tr-action\"\n [class.igx-grid__cbx-selection--push]=\"grid.filteringService.isFilterRowVisible\"\n (click)=\"headerRowSelection($event)\"\n (pointerdown)=\"$event.preventDefault()\">\n <ng-container #headSelector\n *ngTemplateOutlet=\"grid.headSelectorTemplate || headSelectorBaseTemplate; context: rowSelectorsContext\">\n </ng-container>\n </div>\n </ng-container>\n\n <!-- Hierarchical grids expand all area -->\n <ng-container *ngIf=\"isHierarchicalGrid\">\n <div #headerHierarchyExpander\n (click)=\"grid.toggleAll()\"\n (pointerdown)=\"$event.preventDefault()\"\n [hidden]=\"!grid.hasExpandableChildren || !grid.hasVisibleColumns\"\n [ngClass]=\"{\n 'igx-grid__hierarchical-expander igx-grid__hierarchical-expander--header igx-grid__tr-action': grid.hasExpandableChildren,\n 'igx-grid__hierarchical-expander--push': grid.filteringService.isFilterRowVisible,\n 'igx-grid__hierarchical-expander--no-border': grid.isRowSelectable || grid.rowDraggable\n }\">\n <ng-container *ngTemplateOutlet=\"grid.iconTemplate; context: { $implicit: grid }\"></ng-container>\n </div>\n </ng-container>\n\n\n <!-- Grouping icon toggle area -->\n <ng-container *ngIf=\"grid?.groupingExpressions?.length\">\n <div #headerGroupContainer class=\"{{ indentationCSSClasses }}\"\n (click)=\"grid.toggleAllGroupRows()\"\n (pointerdown)=\"$event.preventDefault()\">\n <ng-container *ngTemplateOutlet=\"grid.iconTemplate\"></ng-container>\n </div>\n </ng-container>\n\n <!-- Pinned columns collection from the start -->\n <ng-container *ngIf=\"pinnedColumnCollection.length && grid.isPinningToStart\">\n <ng-container *ngFor=\"let column of pinnedColumnCollection | igxTopLevel\">\n <igx-grid-header-group\n [ngClass]=\"column.headerGroupClasses\"\n [ngStyle]=\"column.headerGroupStyles | igxHeaderGroupStyle:column:grid.pipeTrigger\"\n [column]=\"column\"\n [style.min-width]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [style.flex-basis]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\">\n </igx-grid-header-group>\n </ng-container>\n </ng-container>\n\n <!-- Unpinned columns collection -->\n <ng-template igxGridFor #headerVirtualContainer let-column\n [igxGridForOf]=\"unpinnedColumnCollection | igxTopLevel\"\n [igxForScrollContainer]=\"grid.parentVirtDir\"\n [igxForContainerSize]=\"grid.unpinnedWidth\"\n [igxForTrackBy]=\"grid.trackColumnChanges\"\n [igxForSizePropName]=\"'calcPixelWidth'\"\n [igxForScrollOrientation]=\"'horizontal'\"\n >\n <igx-grid-header-group\n [ngClass]=\"column.headerGroupClasses\"\n [ngStyle]=\"column.headerGroupStyles |igxHeaderGroupStyle:column:grid.pipeTrigger\"\n [column]=\"column\"\n [style.min-width]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [style.flex-basis]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\">\n </igx-grid-header-group>\n </ng-template>\n\n <!-- Pinned columns collection at the end -->\n <ng-container *ngIf=\"pinnedColumnCollection.length && !grid.isPinningToStart\">\n <ng-container *ngFor=\"let column of pinnedColumnCollection | igxTopLevel\">\n <igx-grid-header-group\n [ngClass]=\"column.headerGroupClasses\"\n [ngStyle]=\"column.headerGroupStyles |igxHeaderGroupStyle:column:grid.pipeTrigger\"\n [column]=\"column\"\n [style.min-width]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [style.flex-basis]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [style.left]=\"column.rightPinnedOffset\">\n </igx-grid-header-group>\n </ng-container>\n </ng-container>\n </div>\n\n <!-- Filter row area -->\n <ng-container *ngIf=\"grid.filteringService.isFilterRowVisible\">\n <igx-grid-filtering-row #filteringRow\n [column]=\"grid.filteringService.filteredColumn\"\n [style.width.px]=\"width\">\n </igx-grid-filtering-row>\n </ng-container>\n\n <!-- Right column moving area -->\n <ng-container *ngIf=\"grid.hasMovableColumns && grid.columnInDrag\">\n <span id=\"right\" class=\"igx-grid__scroll-on-drag-right\" droppable=\"true\" [igxColumnMovingDrop]=\"headerContainer\"></span>\n </ng-container>\n</div>\n\n<!-- Header thumb area -->\n<div class=\"igx-grid-thead__thumb\" [hidden]=\"!grid.hasVerticalScroll()\" [style.width.px]=\"grid.scrollSize\"></div>\n\n<!-- Default row selection header checkbox template -->\n<ng-template #headSelectorBaseTemplate igxHeadSelector let-context>\n <div class=\"igx-grid__cbx-padding\">\n <igx-checkbox\n [tabindex]=\"-1\"\n [readonly]=\"true\"\n [checked]=\"context.selectedCount > 0 && context.totalCount === context.selectedCount\"\n [disableRipple]=\"true\"\n [ngStyle]=\"{'visibility': grid.isMultiRowSelectionEnabled? 'visible' : 'hidden' }\"\n [indeterminate]=\"context.selectedCount > 0 && context.selectedCount !== context.totalCount\"\n [aria-label]=\"grid.headSelectorBaseAriaLabel\"\n #headerCheckbox>\n </igx-checkbox>\n </div>\n</ng-template>\n"
48659
+ template: "<div role=\"rowgroup\" class=\"igx-grid-thead__wrapper\" [style.width.px]=\"width\"\n [class.igx-grid__tr--mrl]=\"hasMRL\">\n\n <!-- Column headers area -->\n <div class=\"igx-grid__tr\" role=\"row\" [style.width.px]=\"width\">\n\n <!-- Left column moving area -->\n <ng-container *ngIf=\"grid.hasMovableColumns && grid.columnInDrag && pinnedColumnCollection.length <= 0\">\n <span id=\"left\" class=\"igx-grid__scroll-on-drag-left\" droppable=\"true\" [style.left.px]=\"grid.pinnedWidth\"\n [igxColumnMovingDrop]=\"headerContainer\"></span>\n </ng-container>\n <ng-container *ngIf=\"grid.hasMovableColumns && grid.columnInDrag && pinnedColumnCollection.length > 0\">\n <span id=\"left\" class=\"igx-grid__scroll-on-drag-pinned\" droppable=\"true\" [style.left.px]=\"grid.pinnedWidth\"\n [igxColumnMovingDrop]=\"headerContainer\"></span>\n </ng-container>\n\n <!-- Row dragging area -->\n <ng-container *ngIf=\"grid.rowDraggable\">\n <div #headerDragContainer class=\"igx-grid__drag-indicator igx-grid__tr-action\" (pointerdown)=\"$event.preventDefault()\" [class.igx-grid__drag-indicator--header]=\"!grid.isRowSelectable\">\n <div style=\"visibility: hidden;\">\n <ng-container *ngTemplateOutlet=\"grid.dragIndicatorIconTemplate || grid.dragIndicatorIconBase\"></ng-container>\n </div>\n </div>\n </ng-container>\n\n <!-- Row selectors area -->\n <ng-container *ngIf=\"grid.showRowSelectors\">\n <div #headerSelectorContainer class=\"igx-grid__cbx-selection igx-grid__tr-action\"\n [class.igx-grid__cbx-selection--push]=\"grid.filteringService.isFilterRowVisible\"\n (click)=\"headerRowSelection($event)\"\n (pointerdown)=\"$event.preventDefault()\">\n <ng-container #headSelector\n *ngTemplateOutlet=\"grid.headSelectorTemplate || headSelectorBaseTemplate; context: rowSelectorsContext\">\n </ng-container>\n </div>\n </ng-container>\n\n <!-- Hierarchical grids expand all area -->\n <ng-container *ngIf=\"isHierarchicalGrid\">\n <div #headerHierarchyExpander\n (click)=\"grid.toggleAll()\"\n (pointerdown)=\"$event.preventDefault()\"\n [hidden]=\"!grid.hasExpandableChildren || !grid.hasVisibleColumns\"\n [ngClass]=\"{\n 'igx-grid__hierarchical-expander igx-grid__hierarchical-expander--header igx-grid__tr-action': grid.hasExpandableChildren,\n 'igx-grid__hierarchical-expander--push': grid.filteringService.isFilterRowVisible,\n 'igx-grid__hierarchical-expander--no-border': grid.isRowSelectable || grid.rowDraggable\n }\">\n <ng-container *ngTemplateOutlet=\"grid.iconTemplate; context: { $implicit: grid }\"></ng-container>\n </div>\n </ng-container>\n\n\n <!-- Grouping icon toggle area -->\n <ng-container *ngIf=\"grid?.groupingExpressions?.length\">\n <div #headerGroupContainer class=\"{{ indentationCSSClasses }}\"\n (click)=\"grid.toggleAllGroupRows()\"\n (pointerdown)=\"$event.preventDefault()\">\n <ng-container *ngTemplateOutlet=\"grid.iconTemplate\"></ng-container>\n </div>\n </ng-container>\n\n <!-- Pinned columns collection from the start -->\n <ng-container *ngIf=\"pinnedColumnCollection.length && grid.isPinningToStart\">\n <ng-container *ngFor=\"let column of pinnedColumnCollection | igxTopLevel\">\n <igx-grid-header-group\n [ngClass]=\"column.headerGroupClasses\"\n [ngStyle]=\"column.headerGroupStyles | igxHeaderGroupStyle:column:grid.pipeTrigger\"\n [column]=\"column\"\n [style.min-width]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [style.flex-basis]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\">\n </igx-grid-header-group>\n </ng-container>\n </ng-container>\n\n <!-- Unpinned columns collection -->\n <ng-template igxGridFor #headerVirtualContainer let-column\n [igxGridForOf]=\"unpinnedColumnCollection | igxTopLevel\"\n [igxForScrollContainer]=\"grid.parentVirtDir\"\n [igxForContainerSize]=\"grid.unpinnedWidth\"\n [igxForTrackBy]=\"grid.trackColumnChanges\"\n [igxForSizePropName]=\"'calcPixelWidth'\"\n [igxForScrollOrientation]=\"'horizontal'\"\n >\n <igx-grid-header-group\n [ngClass]=\"column.headerGroupClasses\"\n [ngStyle]=\"column.headerGroupStyles |igxHeaderGroupStyle:column:grid.pipeTrigger\"\n [column]=\"column\"\n [style.min-width]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [style.flex-basis]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\">\n </igx-grid-header-group>\n </ng-template>\n\n <!-- Pinned columns collection at the end -->\n <ng-container *ngIf=\"pinnedColumnCollection.length && !grid.isPinningToStart\">\n <ng-container *ngFor=\"let column of pinnedColumnCollection | igxTopLevel\">\n <igx-grid-header-group\n [ngClass]=\"column.headerGroupClasses\"\n [ngStyle]=\"column.headerGroupStyles |igxHeaderGroupStyle:column:grid.pipeTrigger\"\n [column]=\"column\"\n [style.min-width]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [style.flex-basis]=\"column.calcWidth | igxHeaderGroupWidth:grid.defaultHeaderGroupMinWidth:hasMRL\"\n [style.left]=\"column.rightPinnedOffset\">\n </igx-grid-header-group>\n </ng-container>\n </ng-container>\n </div>\n\n <!-- Filter row area -->\n <ng-container *ngIf=\"grid.filteringService.isFilterRowVisible\">\n <igx-grid-filtering-row #filteringRow\n [column]=\"grid.filteringService.filteredColumn\"\n [style.width.px]=\"width\">\n </igx-grid-filtering-row>\n </ng-container>\n\n <!-- Right column moving area -->\n <ng-container *ngIf=\"grid.hasMovableColumns && grid.columnInDrag\">\n <span id=\"right\" class=\"igx-grid__scroll-on-drag-right\" droppable=\"true\" [igxColumnMovingDrop]=\"headerContainer\"></span>\n </ng-container>\n</div>\n\n<!-- Header thumb area -->\n<div class=\"igx-grid-thead__thumb\" [hidden]=\"!grid.hasVerticalScroll()\" [style.width.px]=\"grid.scrollSize\"></div>\n\n<!-- Default row selection header checkbox template -->\n<ng-template #headSelectorBaseTemplate igxHeadSelector let-context>\n <div class=\"igx-grid__cbx-padding\">\n <igx-checkbox\n [tabindex]=\"-1\"\n [readonly]=\"true\"\n [checked]=\"context.selectedCount > 0 && context.totalCount === context.selectedCount\"\n [disableRipple]=\"true\"\n [ngStyle]=\"{'visibility': grid.isMultiRowSelectionEnabled? 'visible' : 'hidden' }\"\n [indeterminate]=\"context.selectedCount > 0 && context.selectedCount !== context.totalCount\"\n [aria-label]=\"grid.headSelectorBaseAriaLabel\"\n #headerCheckbox>\n </igx-checkbox>\n </div>\n</ng-template>\n"
48644
48660
  },] }
48645
48661
  ];
48646
48662
  IgxGridHeaderRowComponent.ctorParameters = () => [
@@ -48820,9 +48836,10 @@ class IgxGridBaseDirective extends DisplayDensityBase {
48820
48836
  */
48821
48837
  this.gridScroll = new EventEmitter();
48822
48838
  /**
48839
+ * @deprecated in version 12.1.0. Use the corresponding output exposed by the `igx-paginator` component instead
48840
+ *
48823
48841
  * Emitted after the current page is changed.
48824
48842
  *
48825
- * @deprecated in version 12.1.0
48826
48843
  * @example
48827
48844
  * ```html
48828
48845
  * <igx-grid (pageChange)="onPageChange($event)"></igx-grid>
@@ -48835,10 +48852,10 @@ class IgxGridBaseDirective extends DisplayDensityBase {
48835
48852
  */
48836
48853
  this.pageChange = new EventEmitter();
48837
48854
  /**
48855
+ * @deprecated in version 12.1.0. Use the corresponding output exposed by the `igx-paginator` component instead
48856
+ *
48838
48857
  * Emitted when `perPage` property value of the grid is changed.
48839
48858
  *
48840
- * @deprecated in version 12.1.0
48841
- * @example
48842
48859
  * ```html
48843
48860
  * <igx-grid #grid (perPageChange)="onPerPageChange($event)" [autoGenerate]="true"></igx-grid>
48844
48861
  * ```
@@ -48855,6 +48872,8 @@ class IgxGridBaseDirective extends DisplayDensityBase {
48855
48872
  */
48856
48873
  this.class = '';
48857
48874
  /**
48875
+ * @deprecated in version 12.2.0. We suggest using `rowClasses` property instead
48876
+ *
48858
48877
  * Gets/Sets the styling classes applied to all even `IgxGridRowComponent`s in the grid.
48859
48878
  *
48860
48879
  * @example
@@ -48864,6 +48883,8 @@ class IgxGridBaseDirective extends DisplayDensityBase {
48864
48883
  */
48865
48884
  this.evenRowCSS = 'igx-grid__tr--even';
48866
48885
  /**
48886
+ * @deprecated in version 12.2.0. We suggest using `rowClasses` property instead
48887
+ *
48867
48888
  * Gets/Sets the styling classes applied to all odd `IgxGridRowComponent`s in the grid.
48868
48889
  *
48869
48890
  * @example
@@ -49118,9 +49139,10 @@ class IgxGridBaseDirective extends DisplayDensityBase {
49118
49139
  */
49119
49140
  this.filteringDone = new EventEmitter();
49120
49141
  /**
49142
+ * @deprecated in version 12.1.0. Use the corresponding output exposed by the `igx-paginator` component instead
49143
+ *
49121
49144
  * Emitted after paging is performed.
49122
49145
  *
49123
- * @deprecated in version 12.1.x
49124
49146
  * @remarks
49125
49147
  * Returns an object consisting of the previous and next pages.
49126
49148
  * @example
@@ -49773,9 +49795,10 @@ class IgxGridBaseDirective extends DisplayDensityBase {
49773
49795
  this.notifyChanges(true);
49774
49796
  }
49775
49797
  /**
49798
+ * @deprecated in version 12.1.0. Use the corresponding method exposed by the `igx-paginator`
49799
+ *
49776
49800
  * Gets/Sets whether the paging feature is enabled.
49777
49801
  *
49778
- * @deprecated in version 12.1.x
49779
49802
  * @remarks
49780
49803
  * The default state is disabled (false).
49781
49804
  * @example
@@ -49793,9 +49816,10 @@ class IgxGridBaseDirective extends DisplayDensityBase {
49793
49816
  this.pipeTrigger++;
49794
49817
  }
49795
49818
  /**
49819
+ * @deprecated in version 12.1.0. Use `page` property form `paginator` component instead
49820
+ *
49796
49821
  * Gets/Sets the current page index.
49797
49822
  *
49798
- * @deprecated in version 12.1.x
49799
49823
  * @example
49800
49824
  * ```html
49801
49825
  * <igx-grid #grid [data]="Data" [autoGenerate]="true">
@@ -49815,9 +49839,10 @@ class IgxGridBaseDirective extends DisplayDensityBase {
49815
49839
  }
49816
49840
  }
49817
49841
  /**
49842
+ * @deprecated in version 12.1.0. Use `perPage` property from `paginator` component instead
49843
+ *
49818
49844
  * Gets/Sets the number of visible items per page.
49819
49845
  *
49820
- * @deprecated in version 12.1.x
49821
49846
  * @remarks
49822
49847
  * The default is 15.
49823
49848
  * @example
@@ -49838,9 +49863,10 @@ class IgxGridBaseDirective extends DisplayDensityBase {
49838
49863
  }
49839
49864
  }
49840
49865
  /**
49866
+ * @deprecated in version 10.1.0
49867
+ *
49841
49868
  * Gets/Sets whether the column hiding UI is enabled.
49842
49869
  *
49843
- * @deprecated
49844
49870
  * @remarks
49845
49871
  * By default it is disabled (false). In order for the UI to work, you need to enable the toolbar as shown in the example below.
49846
49872
  * @example
@@ -50038,9 +50064,9 @@ class IgxGridBaseDirective extends DisplayDensityBase {
50038
50064
  return this._emptyFilteredGridMessage || this.resourceStrings.igx_grid_emptyFilteredGrid_message;
50039
50065
  }
50040
50066
  /**
50041
- * Gets/Sets the title to be displayed in the built-in column hiding UI.
50067
+ * @deprecated in version 10.1.0
50042
50068
  *
50043
- * @deprecated
50069
+ * Gets/Sets the title to be displayed in the built-in column hiding UI.
50044
50070
  *
50045
50071
  * @example
50046
50072
  * ```html
@@ -50078,9 +50104,9 @@ class IgxGridBaseDirective extends DisplayDensityBase {
50078
50104
  this._pinning = value;
50079
50105
  }
50080
50106
  /**
50081
- * Gets/Sets if the built-in column pinning UI should be shown in the toolbar.
50107
+ * @deprecated in version 10.1.0
50082
50108
  *
50083
- * @deprecated
50109
+ * Gets/Sets if the built-in column pinning UI should be shown in the toolbar.
50084
50110
  *
50085
50111
  * @example
50086
50112
  * ```html
@@ -50095,9 +50121,9 @@ class IgxGridBaseDirective extends DisplayDensityBase {
50095
50121
  this.notifyChanges();
50096
50122
  }
50097
50123
  /**
50098
- * Gets/Sets the title to be displayed in the UI of the column pinning.
50124
+ * @deprecated in version 10.1.0
50099
50125
  *
50100
- * @deprecated
50126
+ * Gets/Sets the title to be displayed in the UI of the column pinning.
50101
50127
  *
50102
50128
  * @example
50103
50129
  * ```html
@@ -50544,9 +50570,9 @@ class IgxGridBaseDirective extends DisplayDensityBase {
50544
50570
  return this.pinnedColumns.filter(col => !col.columnLayout).length;
50545
50571
  }
50546
50572
  /**
50547
- * Gets/Sets the text to be displayed inside the toggle button.
50573
+ * @deprecated in version 10.1.0
50548
50574
  *
50549
- * @deprecated
50575
+ * Gets/Sets the text to be displayed inside the toggle button.
50550
50576
  *
50551
50577
  * @remarks
50552
50578
  * Used for the built-in column hiding UI of the`IgxColumnComponent`.
@@ -50555,7 +50581,6 @@ class IgxGridBaseDirective extends DisplayDensityBase {
50555
50581
  * <igx-grid [columnHiding]="true" [showToolbar]="true" [hiddenColumnsText]="'Hidden Columns'"></igx-grid>
50556
50582
  * ```
50557
50583
  */
50558
- // @DeprecateProperty('`hiddenColumnsText` is deprecated')
50559
50584
  get hiddenColumnsText() {
50560
50585
  return this._hiddenColumnsText;
50561
50586
  }
@@ -50564,9 +50589,9 @@ class IgxGridBaseDirective extends DisplayDensityBase {
50564
50589
  this.notifyChanges();
50565
50590
  }
50566
50591
  /**
50567
- * Gets/Sets the text to be displayed inside the toggle button.
50592
+ * @deprecated in version 10.1.0
50568
50593
  *
50569
- * @deprecated
50594
+ * Gets/Sets the text to be displayed inside the toggle button.
50570
50595
  *
50571
50596
  * @remarks
50572
50597
  * Used for the built-in column pinning UI of the`IgxColumnComponent`.
@@ -50636,9 +50661,9 @@ class IgxGridBaseDirective extends DisplayDensityBase {
50636
50661
  return this._currencyPositionLeft = i < 1;
50637
50662
  }
50638
50663
  /**
50639
- * Gets/Sets whether the toolbar is shown.
50664
+ * @deprecated in version 11.0.0
50640
50665
  *
50641
- * @deprecated
50666
+ * Gets/Sets whether the toolbar is shown.
50642
50667
  *
50643
50668
  * @example
50644
50669
  * ```html
@@ -50652,9 +50677,9 @@ class IgxGridBaseDirective extends DisplayDensityBase {
50652
50677
  this._showToolbar = newValue;
50653
50678
  }
50654
50679
  /**
50655
- * Gets/Sets the toolbar's title.
50680
+ * @deprecated in version 11.0.0
50656
50681
  *
50657
- * @deprecated
50682
+ * Gets/Sets the toolbar's title.
50658
50683
  *
50659
50684
  * @example
50660
50685
  * ```html
@@ -50669,9 +50694,9 @@ class IgxGridBaseDirective extends DisplayDensityBase {
50669
50694
  this.notifyChanges();
50670
50695
  }
50671
50696
  /**
50672
- * Gets/Sets whether exporting to MS Excel is enabled or disabled.
50697
+ * @deprecated `exportExcel` is deprecated
50673
50698
  *
50674
- * @deprecated
50699
+ * Gets/Sets whether exporting to MS Excel is enabled or disabled.
50675
50700
  *
50676
50701
  * @example
50677
50702
  * ```html
@@ -50686,9 +50711,9 @@ class IgxGridBaseDirective extends DisplayDensityBase {
50686
50711
  this.notifyChanges();
50687
50712
  }
50688
50713
  /**
50689
- * Gets/Sets whether the option for exporting to CSV is enabled or disabled.
50714
+ * @deprecated `exportCsv` is deprecated
50690
50715
  *
50691
- * @deprecated
50716
+ * Gets/Sets whether the option for exporting to CSV is enabled or disabled.
50692
50717
  *
50693
50718
  * ```html
50694
50719
  * <igx-grid [data]="localData" [showToolbar]="true" [autoGenerate]="true" [exportCsv]="true"></igx-grid>
@@ -50702,9 +50727,9 @@ class IgxGridBaseDirective extends DisplayDensityBase {
50702
50727
  this.notifyChanges();
50703
50728
  }
50704
50729
  /**
50705
- * Gets/Sets the textual content for the main export button.
50730
+ * @deprecated `exportText` is deprecated
50706
50731
  *
50707
- * @deprecated
50732
+ * Gets/Sets the textual content for the main export button.
50708
50733
  *
50709
50734
  * @example
50710
50735
  * ```html
@@ -50719,9 +50744,9 @@ class IgxGridBaseDirective extends DisplayDensityBase {
50719
50744
  this.notifyChanges();
50720
50745
  }
50721
50746
  /**
50722
- * Gets/Sets the textual content for the MS Excel export button.
50747
+ * @deprecated `exportExcelText` is deprecated
50723
50748
  *
50724
- * @deprecated
50749
+ * Gets/Sets the textual content for the MS Excel export button.
50725
50750
  *
50726
50751
  * ```html
50727
50752
  * <igx-grid [exportExcelText]="'My Excel Exporter" [showToolbar]="true" [exportText]="'My Exporter'" [exportCsv]="true"></igx-grid>
@@ -50735,9 +50760,9 @@ class IgxGridBaseDirective extends DisplayDensityBase {
50735
50760
  this.notifyChanges();
50736
50761
  }
50737
50762
  /**
50738
- * Gets/Sets the textual content for the CSV export button.
50763
+ * @deprecated `exportCsvText` is deprecated
50739
50764
  *
50740
- * @deprecated
50765
+ * Gets/Sets the textual content for the CSV export button.
50741
50766
  *
50742
50767
  * @example
50743
50768
  * ```html
@@ -51831,9 +51856,10 @@ class IgxGridBaseDirective extends DisplayDensityBase {
51831
51856
  return this._visibleColumns;
51832
51857
  }
51833
51858
  /**
51859
+ * @deprecated in version 12.1.0. Use the corresponding property exposed by the `igx-paginator`
51860
+ *
51834
51861
  * Gets the total number of pages.
51835
51862
  *
51836
- * @deprecated in version 12.1.0
51837
51863
  * @example
51838
51864
  * ```typescript
51839
51865
  * const totalPages = this.grid.totalPages;
@@ -51844,9 +51870,10 @@ class IgxGridBaseDirective extends DisplayDensityBase {
51844
51870
  return (_a = this.paginator) === null || _a === void 0 ? void 0 : _a.totalPages;
51845
51871
  }
51846
51872
  /**
51873
+ * @deprecated in version 12.1.0. Use the corresponding property exposed by the `igx-paginator`
51874
+ *
51847
51875
  * Gets if the current page is the first page.
51848
51876
  *
51849
- * @deprecated in version 12.1.0
51850
51877
  * @example
51851
51878
  * ```typescript
51852
51879
  * const firstPage = this.grid.isFirstPage;
@@ -51856,9 +51883,10 @@ class IgxGridBaseDirective extends DisplayDensityBase {
51856
51883
  return this.paginator.isLastPage;
51857
51884
  }
51858
51885
  /**
51886
+ * @deprecated in version 12.1.0. Use the corresponding method exposed by the `igx-paginator`
51887
+ *
51859
51888
  * Goes to the next page, if the grid is not already at the last page.
51860
51889
  *
51861
- * @deprecated in version 12.1.0
51862
51890
  * @example
51863
51891
  * ```typescript
51864
51892
  * this.grid1.nextPage();
@@ -51870,9 +51898,10 @@ class IgxGridBaseDirective extends DisplayDensityBase {
51870
51898
  (_a = this.paginator) === null || _a === void 0 ? void 0 : _a.nextPage();
51871
51899
  }
51872
51900
  /**
51901
+ * @deprecated in version 12.1.0. Use the corresponding method exposed by the `igx-paginator`
51902
+ *
51873
51903
  * Goes to the previous page, if the grid is not already at the first page.
51874
51904
  *
51875
- * @deprecated in version 12.1.0
51876
51905
  * @example
51877
51906
  * ```typescript
51878
51907
  * this.grid1.previousPage();
@@ -51908,9 +51937,10 @@ class IgxGridBaseDirective extends DisplayDensityBase {
51908
51937
  }
51909
51938
  }
51910
51939
  /**
51940
+ * @deprecated in version 12.1.0. Use the corresponding property exposed by the `igx-paginator`
51941
+ *
51911
51942
  * Returns if the current page is the last page.
51912
51943
  *
51913
- * @deprecated in version 12.1.0
51914
51944
  * @example
51915
51945
  * ```typescript
51916
51946
  * const lastPage = this.grid.isLastPage;
@@ -52007,6 +52037,8 @@ class IgxGridBaseDirective extends DisplayDensityBase {
52007
52037
  this._columnsReordered(column);
52008
52038
  }
52009
52039
  /**
52040
+ * @deprecated in version 12.1.0. Use the corresponding method exposed by the `igx-paginator`
52041
+ *
52010
52042
  * Goes to the desired page index.
52011
52043
  *
52012
52044
  * @example
@@ -53196,6 +53228,9 @@ class IgxGridBaseDirective extends DisplayDensityBase {
53196
53228
  if (!this.clipboardOptions.copyHeaders) {
53197
53229
  result = result.substring(result.indexOf('\n') + 1);
53198
53230
  }
53231
+ if (Object.values(data[0]).length === 1) {
53232
+ result = result.slice(0, -2);
53233
+ }
53199
53234
  event.preventDefault();
53200
53235
  /* Necessary for the hiearachical case but will probably have to
53201
53236
  change how getSelectedData is propagated in the hiearachical grid
@@ -55018,24 +55053,9 @@ IgxGridBaseDirective.propDecorators = {
55018
55053
  totalRecords: [{ type: Input }],
55019
55054
  selectRowOnClick: [{ type: Input }]
55020
55055
  };
55021
- __decorate([
55022
- DeprecateProperty('`pageChange` is deprecated. Use the corresponding output exposed by the `igx-paginator` component instead.')
55023
- ], IgxGridBaseDirective.prototype, "pageChange", void 0);
55024
- __decorate([
55025
- DeprecateProperty('`perPageChange` is deprecated. Use the corresponding output exposed by the `igx-paginator` component instead.')
55026
- ], IgxGridBaseDirective.prototype, "perPageChange", void 0);
55027
- __decorate([
55028
- DeprecateProperty('`evenRowCSS` is deprecated. We suggest using `rowClasses` property instead.')
55029
- ], IgxGridBaseDirective.prototype, "evenRowCSS", void 0);
55030
- __decorate([
55031
- DeprecateProperty('`oddRowCSS` is deprecated. We suggest using `rowClasses` property instead.')
55032
- ], IgxGridBaseDirective.prototype, "oddRowCSS", void 0);
55033
55056
  __decorate([
55034
55057
  WatchChanges()
55035
55058
  ], IgxGridBaseDirective.prototype, "primaryKey", void 0);
55036
- __decorate([
55037
- DeprecateProperty('`pagingDone` is deprecated. Use the corresponding output exposed by the `igx-paginator` component instead.')
55038
- ], IgxGridBaseDirective.prototype, "pagingDone", void 0);
55039
55059
  __decorate([
55040
55060
  WatchChanges()
55041
55061
  ], IgxGridBaseDirective.prototype, "filteringLogic", null);
@@ -55045,18 +55065,6 @@ __decorate([
55045
55065
  __decorate([
55046
55066
  WatchChanges()
55047
55067
  ], IgxGridBaseDirective.prototype, "advancedFilteringExpressionsTree", null);
55048
- __decorate([
55049
- DeprecateProperty('`paging` is deprecated')
55050
- ], IgxGridBaseDirective.prototype, "paging", null);
55051
- __decorate([
55052
- DeprecateProperty('`page` is deprecated. Use `page` property form `paginator` component instead.')
55053
- ], IgxGridBaseDirective.prototype, "page", null);
55054
- __decorate([
55055
- DeprecateProperty('`perPage` is deprecated. Use `perPage` property from `paginator` component instead.')
55056
- ], IgxGridBaseDirective.prototype, "perPage", null);
55057
- __decorate([
55058
- DeprecateProperty('`columnHiding` is deprecated.')
55059
- ], IgxGridBaseDirective.prototype, "columnHiding", null);
55060
55068
  __decorate([
55061
55069
  WatchChanges()
55062
55070
  ], IgxGridBaseDirective.prototype, "hideRowSelectors", null);
@@ -55078,42 +55086,9 @@ __decorate([
55078
55086
  __decorate([
55079
55087
  WatchChanges()
55080
55088
  ], IgxGridBaseDirective.prototype, "isLoading", null);
55081
- __decorate([
55082
- DeprecateProperty('`columnHidingTitle` is deprecated')
55083
- ], IgxGridBaseDirective.prototype, "columnHidingTitle", null);
55084
- __decorate([
55085
- DeprecateProperty('`columnPinning` is deprecated')
55086
- ], IgxGridBaseDirective.prototype, "columnPinning", null);
55087
- __decorate([
55088
- DeprecateProperty('`columnPinningTitle` is deprecated')
55089
- ], IgxGridBaseDirective.prototype, "columnPinningTitle", null);
55090
55089
  __decorate([
55091
55090
  WatchChanges()
55092
55091
  ], IgxGridBaseDirective.prototype, "sortingExpressions", null);
55093
- __decorate([
55094
- DeprecateProperty('`pinnedColumnsText` is deprecated')
55095
- ], IgxGridBaseDirective.prototype, "pinnedColumnsText", null);
55096
- __decorate([
55097
- DeprecateProperty('`showToolbar` is deprecated')
55098
- ], IgxGridBaseDirective.prototype, "showToolbar", null);
55099
- __decorate([
55100
- DeprecateProperty('`toolbarTitle` is deprecated')
55101
- ], IgxGridBaseDirective.prototype, "toolbarTitle", null);
55102
- __decorate([
55103
- DeprecateProperty('`exportExcel` is deprecated')
55104
- ], IgxGridBaseDirective.prototype, "exportExcel", null);
55105
- __decorate([
55106
- DeprecateProperty('`exportCsv` is deprecated')
55107
- ], IgxGridBaseDirective.prototype, "exportCsv", null);
55108
- __decorate([
55109
- DeprecateProperty('`exportText` is deprecated')
55110
- ], IgxGridBaseDirective.prototype, "exportText", null);
55111
- __decorate([
55112
- DeprecateProperty('`exportExcelText` is deprecated')
55113
- ], IgxGridBaseDirective.prototype, "exportExcelText", null);
55114
- __decorate([
55115
- DeprecateProperty('`exportCsvText` is deprecated')
55116
- ], IgxGridBaseDirective.prototype, "exportCsvText", null);
55117
55092
  __decorate([
55118
55093
  WatchChanges()
55119
55094
  ], IgxGridBaseDirective.prototype, "cellSelection", null);
@@ -55123,24 +55098,6 @@ __decorate([
55123
55098
  __decorate([
55124
55099
  WatchChanges()
55125
55100
  ], IgxGridBaseDirective.prototype, "columnSelection", null);
55126
- __decorate([
55127
- DeprecateProperty('`totalPages` is deprecated. Use the corresponding property exposed by the `igx-paginator`.')
55128
- ], IgxGridBaseDirective.prototype, "totalPages", null);
55129
- __decorate([
55130
- DeprecateProperty('`isFirstPage` is deprecated. Use the corresponding property exposed by the `igx-paginator`.')
55131
- ], IgxGridBaseDirective.prototype, "isFirstPage", null);
55132
- __decorate([
55133
- DeprecateMethod('Use the corresponding method exposed by the `igx-paginator`.')
55134
- ], IgxGridBaseDirective.prototype, "nextPage", null);
55135
- __decorate([
55136
- DeprecateMethod('Use the corresponding method exposed by the `igx-paginator`.')
55137
- ], IgxGridBaseDirective.prototype, "previousPage", null);
55138
- __decorate([
55139
- DeprecateProperty('`isLastPage` is deprecated. Use the corresponding property exposed by the `igx-paginator`.')
55140
- ], IgxGridBaseDirective.prototype, "isLastPage", null);
55141
- __decorate([
55142
- DeprecateMethod('Use the corresponding method exposed by the `igx-paginator`.')
55143
- ], IgxGridBaseDirective.prototype, "paginate", null);
55144
55101
  __decorate([
55145
55102
  WatchChanges()
55146
55103
  ], IgxGridBaseDirective.prototype, "selectRowOnClick", null);
@@ -55188,7 +55145,7 @@ class BaseRow {
55188
55145
  return (_b = this._data) !== null && _b !== void 0 ? _b : this.grid.dataView[this.index];
55189
55146
  }
55190
55147
  /**
55191
- * @deprecated Use 'data' instead.
55148
+ * @deprecated Use 'data' instead
55192
55149
  *
55193
55150
  * The data record that populates the row
55194
55151
  */
@@ -55196,8 +55153,7 @@ class BaseRow {
55196
55153
  return this.data;
55197
55154
  }
55198
55155
  /**
55199
- * @deprecated Use 'key' instead.
55200
- *
55156
+ * @deprecated Use 'key' instead
55201
55157
  */
55202
55158
  get rowID() {
55203
55159
  return this.key;
@@ -55366,12 +55322,6 @@ class BaseRow {
55366
55322
  this.grid.deleteRowById(this.key);
55367
55323
  }
55368
55324
  }
55369
- __decorate([
55370
- DeprecateProperty(`'rowData' property is deprecated. Use 'data' instead.`)
55371
- ], BaseRow.prototype, "rowData", null);
55372
- __decorate([
55373
- DeprecateProperty(`'rowID' property is deprecated. Use 'key' instead.`)
55374
- ], BaseRow.prototype, "rowID", null);
55375
55325
  class IgxGridRow extends BaseRow {
55376
55326
  /**
55377
55327
  * @hidden
@@ -56368,17 +56318,6 @@ class IgxGridCellComponent {
56368
56318
  get currencyCodeSymbol() {
56369
56319
  return getCurrencySymbol(this.currencyCode, 'wide', this.grid.locale);
56370
56320
  }
56371
- /**
56372
- * @deprecated
56373
- * Gets whether the cell is selected.
56374
- * ```typescript
56375
- * let isCellSelected = thid.cell.isCellSelected();
56376
- * ```
56377
- * @memberof IgxGridCellComponent
56378
- */
56379
- isCellSelected() {
56380
- return this.selectionService.selected(this.selectionNode);
56381
- }
56382
56321
  /**
56383
56322
  * @hidden
56384
56323
  * @internal
@@ -56683,9 +56622,6 @@ IgxGridCellComponent.propDecorators = {
56683
56622
  onClick: [{ type: HostListener, args: ['click', ['$event'],] }],
56684
56623
  onContextMenu: [{ type: HostListener, args: ['contextmenu', ['$event'],] }]
56685
56624
  };
56686
- __decorate([
56687
- DeprecateMethod(`'isCellSelected' is deprecated. Use 'selected' property instead.`)
56688
- ], IgxGridCellComponent.prototype, "isCellSelected", null);
56689
56625
 
56690
56626
  class IgxGridFooterComponent {
56691
56627
  }
@@ -57064,9 +57000,10 @@ class IgxColumnActionsComponent {
57064
57000
  this._differ = this.differs.find([]).create(this.trackChanges);
57065
57001
  }
57066
57002
  /**
57003
+ * @deprecated Use grid input instead.
57004
+ *
57067
57005
  * Gets the grid columns to provide an action for.
57068
57006
  *
57069
- * @deprecated
57070
57007
  * @example
57071
57008
  * ```typescript
57072
57009
  * let gridColumns = this.columnActions.columns;
@@ -57306,9 +57243,6 @@ IgxColumnActionsComponent.propDecorators = {
57306
57243
  checkAllText: [{ type: Input }],
57307
57244
  id: [{ type: HostBinding, args: ['attr.id',] }, { type: Input }]
57308
57245
  };
57309
- __decorate([
57310
- DeprecateProperty(`Deprecated. Use 'grid' input instead.`)
57311
- ], IgxColumnActionsComponent.prototype, "columns", null);
57312
57246
 
57313
57247
  /**
57314
57248
  * @hidden
@@ -61601,7 +61535,8 @@ class IgxGridComponent extends IgxGridBaseDirective {
61601
61535
  return this._dropAreaMessage || this.resourceStrings.igx_grid_groupByArea_message;
61602
61536
  }
61603
61537
  /**
61604
- * @deprecated
61538
+ * @deprecated in version 12.1.0. Use `getCellByColumn` or `getCellByKey` instead
61539
+ *
61605
61540
  * Returns a `CellType` object that matches the conditions.
61606
61541
  *
61607
61542
  * @example
@@ -62363,9 +62298,6 @@ IgxGridComponent.propDecorators = {
62363
62298
  dropAreaMessage: [{ type: Input }],
62364
62299
  showGroupArea: [{ type: Input }]
62365
62300
  };
62366
- __decorate([
62367
- DeprecateMethod('`getCellByColumnVisibleIndex` is deprecated. Use `getCellByColumn` or `getCellByKey` instead')
62368
- ], IgxGridComponent.prototype, "getCellByColumnVisibleIndex", null);
62369
62301
 
62370
62302
  class IgxGridStateDirective {
62371
62303
  /**
@@ -65168,7 +65100,8 @@ class IgxTreeGridComponent extends IgxGridBaseDirective {
65168
65100
  return this.gridAPI;
65169
65101
  }
65170
65102
  /**
65171
- * @deprecated
65103
+ * @deprecated in version 12.1.0. Use `getCellByColumn` or `getCellByKey` instead
65104
+ *
65172
65105
  * Returns a `CellType` object that matches the conditions.
65173
65106
  *
65174
65107
  * @example
@@ -65828,9 +65761,6 @@ IgxTreeGridComponent.propDecorators = {
65828
65761
  expansionDepth: [{ type: Input }],
65829
65762
  rowLoadingIndicatorTemplate: [{ type: Input }]
65830
65763
  };
65831
- __decorate([
65832
- DeprecateMethod('`getCellByColumnVisibleIndex` is deprecated. Use `getCellByColumn` or `getCellByKey` instead')
65833
- ], IgxTreeGridComponent.prototype, "getCellByColumnVisibleIndex", null);
65834
65764
 
65835
65765
  class IgxTreeGridRowComponent extends IgxRowDirective {
65836
65766
  /**
@@ -68031,7 +67961,8 @@ class IgxHierarchicalGridComponent extends IgxHierarchicalGridBaseDirective {
68031
67961
  return this._defaultExpandState;
68032
67962
  }
68033
67963
  /**
68034
- * @deprecated
67964
+ * @deprecated in version 12.1.0. Use `getCellByColumn` or `getCellByKey` instead
67965
+ *
68035
67966
  * Returns a `CellType` object that matches the conditions.
68036
67967
  *
68037
67968
  * @example
@@ -68676,9 +68607,6 @@ IgxHierarchicalGridComponent.propDecorators = {
68676
68607
  data: [{ type: Input }],
68677
68608
  expandChildren: [{ type: Input }]
68678
68609
  };
68679
- __decorate([
68680
- DeprecateMethod('`getCellByColumnVisibleIndex` is deprecated. Use `getCellByColumn` or `getCellByKey` instead')
68681
- ], IgxHierarchicalGridComponent.prototype, "getCellByColumnVisibleIndex", null);
68682
68610
 
68683
68611
  class IgxHierarchicalGridCellComponent extends IgxGridCellComponent {
68684
68612
  constructor(selectionService, gridAPI, cdr, helement, zone, touchManager, platformUtil) {
@@ -73115,6 +73043,8 @@ class IgxToastComponent extends IgxNotificationsDirective {
73115
73043
  };
73116
73044
  }
73117
73045
  /**
73046
+ * @deprecated in version 12.2.3. We suggest using `positionSettings` property instead
73047
+ *
73118
73048
  * Sets/gets the position of the toast.
73119
73049
  * If not set, the `position` attribute will have value `IgxToastPosition.Bottom`.
73120
73050
  * ```html
@@ -73258,9 +73188,6 @@ IgxToastComponent.propDecorators = {
73258
73188
  position: [{ type: Input }],
73259
73189
  positionSettings: [{ type: Input }]
73260
73190
  };
73261
- __decorate([
73262
- DeprecateProperty('`position` is deprecated. We suggest using `positionSettings` property instead.')
73263
- ], IgxToastComponent.prototype, "position", null);
73264
73191
  /**
73265
73192
  * @hidden
73266
73193
  */
@@ -76654,5 +76581,5 @@ IgxTreeModule.decorators = [
76654
76581
  * Generated bundle index. Do not edit.
76655
76582
  */
76656
76583
 
76657
- export { AbsolutePosition, AbsoluteScrollStrategy, AutoPositionStrategy, BaseFilteringStrategy, BaseProgressDirective, BlockScrollStrategy, ButtonGroupAlignment, Calendar, CalendarHammerConfig, CalendarSelection, CalendarView, CarouselAnimationType, CarouselHammerConfig, CarouselIndicatorsOrientation, CloseScrollStrategy, ColumnDisplayOrder, ColumnPinningPosition, ConnectedPositioningStrategy, ContainerPositionStrategy, CsvFileTypes, DEFAULT_OWNER, DataUtil, DatePart, DateRangePickerFormatPipe, DateRangeType, DefaultSortingStrategy, Direction, DisplayDensity, DisplayDensityBase, DisplayDensityToken, DragDirection, ElasticPositionStrategy, ExpansionPanelHeaderIconPosition, ExportRecordType, FilterListItem, FilterMode, FilteringExpressionsTree, FilteringExpressionsTreeType, FilteringLogic, FilteringStrategy, FormattedValuesFilteringStrategy, GlobalPositionStrategy, GridBaseAPIService, GridColumnDataType, GridInstanceType, GridPagingMode, GridSelectionMode, GridSummaryCalculationMode, GridSummaryPosition, GroupedRecords, HeaderType, HorizontalAlignment, IGX_CHECKBOX_REQUIRED_VALIDATOR, IGX_INPUT_GROUP_TYPE, IGX_SWITCH_REQUIRED_VALIDATOR, ITreeGridAggregation, IgxAccordionComponent, IgxAccordionModule, IgxActionStripComponent, IgxActionStripModule, IgxAppendDropStrategy, IgxAutocompleteDirective, IgxAutocompleteModule, IgxAvatarComponent, IgxAvatarModule, IgxAvatarSize, IgxAvatarType, IgxBadgeComponent, IgxBadgeModule, IgxBadgeType, IgxBannerComponent, IgxBannerModule, IgxBaseExporter, IgxBaseTransactionService, IgxBooleanFilteringOperand, IgxBottomNavComponent, IgxBottomNavContentComponent, IgxBottomNavHeaderComponent, IgxBottomNavHeaderIconDirective, IgxBottomNavHeaderLabelDirective, IgxBottomNavItemComponent, IgxBottomNavModule, IgxButtonDirective, IgxButtonGroupComponent, IgxButtonGroupModule, IgxButtonModule, IgxCSVTextDirective, IgxCalendarBaseDirective, IgxCalendarComponent, IgxCalendarHeaderTemplateDirective, IgxCalendarModule, IgxCalendarMonthDirective, IgxCalendarScrollMonthDirective, IgxCalendarSubheaderTemplateDirective, IgxCalendarView, IgxCalendarYearDirective, IgxCardActionsComponent, IgxCardActionsLayout, IgxCardComponent, IgxCardContentDirective, IgxCardFooterDirective, IgxCardHeaderComponent, IgxCardHeaderSubtitleDirective, IgxCardHeaderTitleDirective, IgxCardMediaDirective, IgxCardModule, IgxCardThumbnailDirective, IgxCardType, IgxCarouselComponent, IgxCarouselComponentBase, IgxCarouselModule, IgxCellEditorTemplateDirective, IgxCellFooterTemplateDirective, IgxCellHeaderTemplateDirective, IgxCellTemplateDirective, IgxCheckboxComponent, IgxCheckboxModule, IgxCheckboxRequiredDirective, IgxChipComponent, IgxChipsAreaComponent, IgxChipsModule, IgxCircularProgressBarComponent, IgxCollapsibleIndicatorTemplateDirective, IgxColumnActionsBaseDirective, IgxColumnActionsComponent, IgxColumnActionsModule, IgxColumnComponent, IgxColumnGroupComponent, IgxColumnLayoutComponent, IgxComboComponent, IgxComboModule, IgxCsvExporterOptions, IgxCsvExporterService, IgxDataLoadingTemplateDirective, IgxDataRecordSorting, IgxDateFilteringOperand, IgxDatePickerComponent, IgxDatePickerModule, IgxDateRangeEndComponent, IgxDateRangeInputsBaseComponent, IgxDateRangePickerComponent, IgxDateRangePickerModule, IgxDateRangeSeparatorDirective, IgxDateRangeStartComponent, IgxDateSummaryOperand, IgxDateTimeEditorDirective, IgxDateTimeEditorModule, IgxDateTimeFilteringOperand, IgxDaysViewComponent, IgxDefaultDropStrategy, IgxDialogComponent, IgxDialogModule, IgxDisplayDensityModule, IgxDividerDirective, IgxDividerModule, IgxDividerType, IgxDragDirective, IgxDragDropModule, IgxDragHandleDirective, IgxDragIgnoreDirective, IgxDragLocation, IgxDropDirective, IgxDropDownBaseDirective, IgxDropDownComponent, IgxDropDownGroupComponent, IgxDropDownItemBaseDirective, IgxDropDownItemComponent, IgxDropDownItemNavigationDirective, IgxDropDownModule, IgxEmptyListTemplateDirective, IgxExcelExporterOptions, IgxExcelExporterService, IgxExcelStyleClearFiltersComponent, IgxExcelStyleColumnOperationsTemplateDirective, IgxExcelStyleConditionalFilterComponent, IgxExcelStyleFilterOperationsTemplateDirective, IgxExcelStyleHeaderComponent, IgxExcelStyleHeaderIconDirective, IgxExcelStyleHidingComponent, IgxExcelStyleLoadingValuesTemplateDirective, IgxExcelStyleMovingComponent, IgxExcelStylePinningComponent, IgxExcelStyleSearchComponent, IgxExcelStyleSelectingComponent, IgxExcelStyleSortingComponent, IgxExcelTextDirective, IgxExpansionPanelBodyComponent, IgxExpansionPanelComponent, IgxExpansionPanelHeaderComponent, IgxExpansionPanelModule, IgxExporterOptionsBase, IgxFilterCellTemplateDirective, IgxFilterDirective, IgxFilterModule, IgxFilterOptions, IgxFilterPipe, IgxFilteringOperand, IgxFlatTransactionFactory, IgxFlexDirective, IgxFocusDirective, IgxFocusModule, IgxForOfContext, IgxForOfDirective, IgxForOfModule, IgxGridAPIService, IgxGridActionsBaseDirective, IgxGridBaseDirective, IgxGridBodyDirective, IgxGridCell, IgxGridCommonModule, IgxGridComponent, IgxGridDetailTemplateDirective, IgxGridEditingActionsComponent, IgxGridExcelStyleFilteringComponent, IgxGridForOfDirective, IgxGridHierarchicalPagingPipe, IgxGridHierarchicalPipe, IgxGridModule, IgxGridPinningActionsComponent, IgxGridRow, IgxGridStateDirective, IgxGridStateModule, IgxGridToolbarActionsDirective, IgxGridToolbarAdvancedFilteringComponent, IgxGridToolbarComponent, IgxGridToolbarDirective, IgxGridToolbarExporterComponent, IgxGridToolbarHidingComponent, IgxGridToolbarPinningComponent, IgxGridToolbarTitleDirective, IgxGridTransaction, IgxGroupAreaDropDirective, IgxGroupByRow, IgxGroupByRowTemplateDirective, IgxGroupedTreeGridSorting, IgxGrouping, IgxHeaderCollapseIndicatorDirective, IgxHeaderExpandIndicatorDirective, IgxHierarchicalGridAPIService, IgxHierarchicalGridBaseDirective, IgxHierarchicalGridComponent, IgxHierarchicalGridModule, IgxHierarchicalGridRow, IgxHierarchicalTransactionFactory, IgxHierarchicalTransactionService, IgxHierarchicalTransactionServiceFactory, IgxHintDirective, IgxIconComponent, IgxIconModule, IgxIconService, IgxInputDirective, IgxInputGroupComponent, IgxInputGroupModule, IgxInputState, IgxInsertDropStrategy, IgxLabelDirective, IgxLayoutDirective, IgxLayoutModule, IgxLinearProgressBarComponent, IgxListActionDirective, IgxListBaseDirective, IgxListComponent, IgxListItemComponent, IgxListItemLeftPanningTemplateDirective, IgxListItemRightPanningTemplateDirective, IgxListLineDirective, IgxListLineSubTitleDirective, IgxListLineTitleDirective, IgxListModule, IgxListPanState, IgxListThumbnailDirective, IgxMaskDirective, IgxMaskModule, IgxMonthPickerBaseDirective, IgxMonthPickerComponent, IgxMonthsViewComponent, IgxNavDrawerItemDirective, IgxNavDrawerMiniTemplateDirective, IgxNavDrawerTemplateDirective, IgxNavbarActionDirective, IgxNavbarComponent, IgxNavbarModule, IgxNavbarTitleDirective, IgxNavigationCloseDirective, IgxNavigationDrawerComponent, IgxNavigationDrawerModule, IgxNavigationModule, IgxNavigationService, IgxNavigationToggleDirective, IgxNumberFilteringOperand, IgxNumberSummaryOperand, IgxOverlayOutletDirective, IgxOverlayService, IgxPageNavigationComponent, IgxPageSizeSelectorComponent, IgxPaginatorComponent, IgxPaginatorDirective, IgxPaginatorModule, IgxPaginatorTemplateDirective, IgxPickerActionsDirective, IgxPickerClearComponent, IgxPickerToggleComponent, IgxPickersCommonModule, IgxPrefixDirective, IgxPrefixModule, IgxPrependDropStrategy, IgxProgressBarModule, IgxProgressType, IgxRadioComponent, IgxRadioGroupDirective, IgxRadioModule, IgxRippleDirective, IgxRippleModule, IgxRowCollapsedIndicatorDirective, IgxRowExpandedIndicatorDirective, IgxRowIslandAPIService, IgxRowIslandComponent, IgxSelectComponent, IgxSelectFooterDirective, IgxSelectGroupComponent, IgxSelectHeaderDirective, IgxSelectItemComponent, IgxSelectModule, IgxSelectToggleIconDirective, IgxSimpleComboComponent, IgxSimpleComboModule, IgxSlideComponent, IgxSliderComponent, IgxSliderModule, IgxSliderType, IgxSnackbarComponent, IgxSnackbarModule, IgxSorting, IgxSplitterComponent, IgxSplitterModule, IgxSplitterPaneComponent, IgxStringFilteringOperand, IgxSuffixDirective, IgxSuffixModule, IgxSummaryOperand, IgxSummaryRow, IgxSwitchComponent, IgxSwitchModule, IgxSwitchRequiredDirective, IgxTabContentComponent, IgxTabContentDirective, IgxTabHeaderComponent, IgxTabHeaderDirective, IgxTabHeaderIconDirective, IgxTabHeaderLabelDirective, IgxTabItemComponent, IgxTabItemDirective, IgxTabsAlignment, IgxTabsComponent, IgxTabsDirective, IgxTabsModule, IgxTextAlign, IgxTextHighlightDirective, IgxTextHighlightModule, IgxTextSelectionDirective, IgxTextSelectionModule, IgxThumbFromTemplateDirective, IgxThumbToTemplateDirective, IgxTickLabelTemplateDirective, IgxTimeFilteringOperand, IgxTimePickerComponent, IgxTimePickerModule, IgxTimeSummaryOperand, IgxToastComponent, IgxToastModule, IgxToastPosition, IgxToggleActionDirective, IgxToggleDirective, IgxToggleModule, IgxTooltipDirective, IgxTooltipModule, IgxTooltipTargetDirective, IgxTransactionService, IgxTreeComponent, IgxTreeExpandIndicatorDirective, IgxTreeGridAPIService, IgxTreeGridComponent, IgxTreeGridGroupingPipe, IgxTreeGridModule, IgxTreeGridRow, IgxTreeModule, IgxTreeNodeComponent, IgxTreeNodeLinkDirective, IgxTreeSelectMarkerDirective, IgxTreeSelectionType, IgxYearsViewComponent, LabelPosition, NoOpScrollStrategy, NoopFilteringStrategy, NoopSortingStrategy, PagingError, PickerInteractionMode, Point, RadioGroupAlignment, RadioLabelPosition, RelativePosition, RelativePositionStrategy, RowEditPositionStrategy, RowPinningPosition, ScrollMonth, ScrollStrategy, SliderHandle, SortingDirection, SplitterType, SwitchLabelPosition, TickLabelsOrientation, TicksOrientation, TransactionEventOrigin, TransactionType, TreeGridFilteringStrategy, TreeGridFormattedValuesFilteringStrategy, TreeGridMatchingRecordsOnlyFilteringStrategy, VerticalAlignment, WEEKDAYS, blink, changei18n, fadeIn, fadeOut, filteringStateDefaults, flipBottom, flipHorBck, flipHorFwd, flipLeft, flipRight, flipTop, flipVerBck, flipVerFwd, getCurrentResourceStrings, getTypeNameForDebugging, growVerIn, growVerOut, heartbeat, hierarchicalTransactionServiceFactory, isDateInRanges, isLeap, monthRange, pulsateBck, pulsateFwd, range, rotateInBl, rotateInBottom, rotateInBr, rotateInCenter, rotateInDiagonal1, rotateInDiagonal2, rotateInHor, rotateInLeft, rotateInRight, rotateInTl, rotateInTop, rotateInTr, rotateInVer, rotateOutBl, rotateOutBottom, rotateOutBr, rotateOutCenter, rotateOutDiagonal1, rotateOutDiagonal2, rotateOutHor, rotateOutLeft, rotateOutRight, rotateOutTl, rotateOutTop, rotateOutTr, rotateOutVer, scaleInBl, scaleInBottom, scaleInBr, scaleInCenter, scaleInHorCenter, scaleInHorLeft, scaleInHorRight, scaleInLeft, scaleInRight, scaleInTl, scaleInTop, scaleInTr, scaleInVerBottom, scaleInVerCenter, scaleInVerTop, scaleOutBl, scaleOutBottom, scaleOutBr, scaleOutCenter, scaleOutHorCenter, scaleOutHorLeft, scaleOutHorRight, scaleOutLeft, scaleOutRight, scaleOutTl, scaleOutTop, scaleOutTr, scaleOutVerBottom, scaleOutVerCenter, scaleOutVerTop, shakeBl, shakeBottom, shakeBr, shakeCenter, shakeHor, shakeLeft, shakeRight, shakeTl, shakeTop, shakeTr, shakeVer, slideInBl, slideInBottom, slideInBr, slideInLeft, slideInRight, slideInTl, slideInTop, slideInTr, slideOutBl, slideOutBottom, slideOutBr, slideOutLeft, slideOutRight, slideOutTl, slideOutTop, slideOutTr, swingInBottomBck, swingInBottomFwd, swingInLeftBck, swingInLeftFwd, swingInRightBck, swingInRightFwd, swingInTopBck, swingInTopFwd, swingOutBottomBck, swingOutBottomFwd, swingOutLeftBck, swingOutLefttFwd, swingOutRightBck, swingOutRightFwd, swingOutTopBck, swingOutTopFwd, toPercent, valueInRange, weekDay, ɵ1, ɵ2, IgxActionStripMenuItemDirective as ɵa, IGX_DROPDOWN_BASE as ɵb, IgxGridActionButtonComponent as ɵba, ToggleAnimationPlayer as ɵbb, IgxExpansionPanelTitleDirective as ɵbc, IgxExpansionPanelDescriptionDirective as ɵbd, IgxExpansionPanelIconDirective as ɵbe, IgxBannerActionsDirective as ɵbf, IgxDaysViewNavigationService as ɵbg, IgxDayItemComponent as ɵbh, IgxMonthViewSlotsCalendar as ɵbi, IgxGetViewDateCalendar as ɵbj, IgxCarouselIndicatorDirective as ɵbk, IgxCarouselNextButtonDirective as ɵbl, IgxCarouselPrevButtonDirective as ɵbm, IGX_COMBO_COMPONENT as ɵbn, IgxComboBaseDirective as ɵbp, IgxComboHeaderDirective as ɵbq, IgxComboFooterDirective as ɵbr, IgxComboItemDirective as ɵbs, IgxComboEmptyDirective as ɵbt, IgxComboHeaderItemDirective as ɵbu, IgxComboAddItemDirective as ɵbv, IgxComboToggleIconDirective as ɵbw, IgxComboClearIconDirective as ɵbx, IgxComboAPIService as ɵby, IgxComboDropDownComponent as ɵbz, IgxComboItemComponent as ɵca, IgxComboFilteringPipe as ɵcb, IgxComboGroupingPipe as ɵcc, IgxComboAddItemComponent as ɵcd, PickerBaseDirective as ɵce, IgxCalendarContainerComponent as ɵcf, IgxCalendarContainerModule as ɵcg, IgxDialogTitleDirective as ɵch, IgxDialogActionsDirective as ɵci, IgxCellCrudState as ɵcj, IgxRowCrudState as ɵck, IgxRowAddCrudState as ɵcl, IgxGridCRUDService as ɵcm, IgxColumnMovingService as ɵcn, IgxExcelStyleCustomDialogComponent as ɵco, IgxExcelStyleDefaultExpressionComponent as ɵcp, IgxExcelStyleDateExpressionComponent as ɵcq, HammerGesturesManager as ɵcr, WatchChanges as ɵcs, WatchColumnChanges as ɵct, notifyChanges as ɵcu, IgxNotificationsDirective as ɵcv, IgxGridColumnResizerComponent as ɵcw, IgxColumnResizerDirective as ɵcx, IgxColumnResizingService as ɵcy, IgxRowSelectorDirective as ɵcz, IgxGridSelectionService as ɵd, IgxGroupByRowSelectorDirective as ɵda, IgxHeadSelectorDirective as ɵdb, IgxRowDragDirective as ɵdc, IgxDragIndicatorIconDirective as ɵdd, IgxRowDragGhostDirective as ɵde, IgxRowDragModule as ɵdf, IgxGridHeaderRowComponent as ɵdg, IgxGridHeaderGroupComponent as ɵdh, IgxGridHeaderComponent as ɵdi, IgxGridFilteringCellComponent as ɵdj, IgxFilteringService as ɵdk, IgxGridFilteringRowComponent as ɵdl, IgxGridGroupByAreaComponent as ɵdm, IgxGroupByAreaDirective as ɵdn, IgxGroupByMetaPipe as ɵdo, IgxTemplateOutletDirective as ɵdp, IgxTemplateOutletModule as ɵdq, IgxRowEditTemplateDirective as ɵdr, IgxRowEditTextDirective as ɵds, IgxRowAddTextDirective as ɵdt, IgxRowEditActionsDirective as ɵdu, IgxRowEditTabStopDirective as ɵdv, IgxSummaryRowComponent as ɵdw, IgxSummaryCellComponent as ɵdx, IgxRowDirective as ɵdy, IgxGridNavigationService as ɵdz, IgxGridSummaryService as ɵea, ConnectedPositioningStrategy as ɵeb, IgxGridGroupByRowComponent as ɵec, IgxTreeGridSelectionService as ɵed, IgxTreeGridGroupByAreaComponent as ɵee, IgxRowLoadingIndicatorTemplateDirective as ɵef, IgxHierarchicalGridNavigationService as ɵeg, IgxChildGridRowComponent as ɵeh, IgxGridCellComponent as ɵei, IgxGridFooterComponent as ɵej, IgxAdvancedFilteringDialogComponent as ɵek, IgxColumnHidingDirective as ɵel, IgxColumnPinningDirective as ɵem, IgxGridSharedModules as ɵen, IgxProcessBarTextTemplateDirective as ɵeo, IgxProgressBarGradientDirective as ɵep, DIR_DOCUMENT_FACTORY as ɵeq, DIR_DOCUMENT as ɵer, IgxDirectionality as ɵes, IgxSelectItemNavigationDirective as ɵet, IGX_TIME_PICKER_COMPONENT as ɵeu, IgxItemListDirective as ɵew, IgxTimeItemDirective as ɵex, IgxTimePickerTemplateDirective as ɵey, IgxTimePickerActionsDirective as ɵez, IGX_EXPANSION_PANEL_COMPONENT as ɵf, TimeFormatPipe as ɵfa, TimeItemPipe as ɵfb, IgxGridPipesModule as ɵfc, IgxGridCellStyleClassesPipe as ɵfd, IgxGridCellStylesPipe as ɵfe, IgxGridRowClassesPipe as ɵff, IgxGridRowStylesPipe as ɵfg, IgxGridNotGroupedPipe as ɵfh, IgxGridTopLevelColumns as ɵfi, IgxGridFilterConditionPipe as ɵfj, IgxGridTransactionPipe as ɵfk, IgxGridPaginatorOptionsPipe as ɵfl, IgxHasVisibleColumnsPipe as ɵfm, IgxGridRowPinningPipe as ɵfn, IgxColumnActionEnabledPipe as ɵfo, IgxFilterActionColumnsPipe as ɵfp, IgxSortActionColumnsPipe as ɵfq, IgxGridDataMapperPipe as ɵfr, IgxStringReplacePipe as ɵfs, IgxGridTransactionStatePipe as ɵft, IgxColumnFormatterPipe as ɵfu, IgxSummaryFormatterPipe as ɵfv, IgxGridAddRowPipe as ɵfw, IgxHeaderGroupWidthPipe as ɵfx, IgxHeaderGroupStylePipe as ɵfy, IgxGridColumnModule as ɵfz, IGX_TREE_COMPONENT as ɵg, IgxGridHeadersModule as ɵga, SortingIndexPipe as ɵgb, IgxGridFilteringModule as ɵgc, IgxColumnMovingModule as ɵgd, IgxColumnMovingDropDirective as ɵge, IgxColumnMovingDragDirective as ɵgf, IgxGridResizingModule as ɵgg, IgxResizeHandleDirective as ɵgh, IgxGridExcelStyleFilteringModule as ɵgi, IgxGridSelectionModule as ɵgj, IgxGridDragSelectDirective as ɵgk, IgxGridSummaryModule as ɵgl, IgxSummaryDataPipe as ɵgm, IgxGridToolbarModule as ɵgn, BaseToolbarDirective as ɵgo, BaseToolbarColumnActionsDirective as ɵgp, IgxGridRowComponent as ɵgq, IgxGridSortingPipe as ɵgr, IgxGridGroupingPipe as ɵgs, IgxGridPagingPipe as ɵgt, IgxGridFilteringPipe as ɵgu, IgxGridSummaryPipe as ɵgv, IgxGridDetailsPipe as ɵgw, IgxGridExpandableCellComponent as ɵgx, IgxTreeGridRowComponent as ɵgy, IgxTreeGridCellComponent as ɵgz, IGX_TREE_NODE_COMPONENT as ɵh, IgxTreeGridHierarchizingPipe as ɵha, IgxTreeGridFlatteningPipe as ɵhb, IgxTreeGridSortingPipe as ɵhc, IgxTreeGridPagingPipe as ɵhd, IgxTreeGridTransactionPipe as ɵhe, IgxTreeGridNormalizeRecordsPipe as ɵhf, IgxTreeGridAddRowPipe as ɵhg, IgxTreeGridFilteringPipe as ɵhh, IgxTreeGridSummaryPipe as ɵhi, IgxHierarchicalRowComponent as ɵhj, IgxHierarchicalGridCellComponent as ɵhk, IgxSliderThumbComponent as ɵhl, IgxThumbLabelComponent as ɵhm, IgxTicksComponent as ɵhn, IgxTickLabelsPipe as ɵho, IgxTabsBase as ɵhp, IgxTabHeaderBase as ɵhq, IgxTabContentBase as ɵhr, IgxSplitBarComponent as ɵhs, IgxTreeService as ɵht, IgxTreeSelectionService as ɵhu, IgxTreeNavigationService as ɵhv, PlatformUtil as ɵi, EaseIn as ɵj, EaseOut as ɵk, IgxInputGroupBase as ɵl, IgxSelectionAPIService as ɵm, IgxForOfSyncService as ɵn, IgxForOfScrollSyncService as ɵo, DisplayContainerComponent as ɵp, IgxScrollInertiaDirective as ɵq, IgxScrollInertiaModule as ɵr, VirtualHelperComponent as ɵs, VirtualHelperBaseDirective as ɵt, HVirtualHelperComponent as ɵu, MaskParsingService as ɵv, DeprecateMethod as ɵw, DeprecateProperty as ɵx, isHierarchyMatch as ɵy, getHierarchy as ɵz };
76584
+ export { AbsolutePosition, AbsoluteScrollStrategy, AutoPositionStrategy, BaseFilteringStrategy, BaseProgressDirective, BlockScrollStrategy, ButtonGroupAlignment, Calendar, CalendarHammerConfig, CalendarSelection, CalendarView, CarouselAnimationType, CarouselHammerConfig, CarouselIndicatorsOrientation, CloseScrollStrategy, ColumnDisplayOrder, ColumnPinningPosition, ConnectedPositioningStrategy, ContainerPositionStrategy, CsvFileTypes, DEFAULT_OWNER, DataUtil, DatePart, DateRangePickerFormatPipe, DateRangeType, DefaultSortingStrategy, Direction, DisplayDensity, DisplayDensityBase, DisplayDensityToken, DragDirection, ElasticPositionStrategy, ExpansionPanelHeaderIconPosition, ExportRecordType, FilterListItem, FilterMode, FilteringExpressionsTree, FilteringExpressionsTreeType, FilteringLogic, FilteringStrategy, FormattedValuesFilteringStrategy, GlobalPositionStrategy, GridBaseAPIService, GridColumnDataType, GridInstanceType, GridPagingMode, GridSelectionMode, GridSummaryCalculationMode, GridSummaryPosition, GroupedRecords, HeaderType, HorizontalAlignment, IGX_CHECKBOX_REQUIRED_VALIDATOR, IGX_INPUT_GROUP_TYPE, IGX_SWITCH_REQUIRED_VALIDATOR, ITreeGridAggregation, IgxAccordionComponent, IgxAccordionModule, IgxActionStripComponent, IgxActionStripModule, IgxAppendDropStrategy, IgxAutocompleteDirective, IgxAutocompleteModule, IgxAvatarComponent, IgxAvatarModule, IgxAvatarSize, IgxAvatarType, IgxBadgeComponent, IgxBadgeModule, IgxBadgeType, IgxBannerComponent, IgxBannerModule, IgxBaseExporter, IgxBaseTransactionService, IgxBooleanFilteringOperand, IgxBottomNavComponent, IgxBottomNavContentComponent, IgxBottomNavHeaderComponent, IgxBottomNavHeaderIconDirective, IgxBottomNavHeaderLabelDirective, IgxBottomNavItemComponent, IgxBottomNavModule, IgxButtonDirective, IgxButtonGroupComponent, IgxButtonGroupModule, IgxButtonModule, IgxCSVTextDirective, IgxCalendarBaseDirective, IgxCalendarComponent, IgxCalendarHeaderTemplateDirective, IgxCalendarModule, IgxCalendarMonthDirective, IgxCalendarScrollMonthDirective, IgxCalendarSubheaderTemplateDirective, IgxCalendarView, IgxCalendarYearDirective, IgxCardActionsComponent, IgxCardActionsLayout, IgxCardComponent, IgxCardContentDirective, IgxCardFooterDirective, IgxCardHeaderComponent, IgxCardHeaderSubtitleDirective, IgxCardHeaderTitleDirective, IgxCardMediaDirective, IgxCardModule, IgxCardThumbnailDirective, IgxCardType, IgxCarouselComponent, IgxCarouselComponentBase, IgxCarouselModule, IgxCellEditorTemplateDirective, IgxCellFooterTemplateDirective, IgxCellHeaderTemplateDirective, IgxCellTemplateDirective, IgxCheckboxComponent, IgxCheckboxModule, IgxCheckboxRequiredDirective, IgxChipComponent, IgxChipsAreaComponent, IgxChipsModule, IgxCircularProgressBarComponent, IgxCollapsibleIndicatorTemplateDirective, IgxColumnActionsBaseDirective, IgxColumnActionsComponent, IgxColumnActionsModule, IgxColumnComponent, IgxColumnGroupComponent, IgxColumnLayoutComponent, IgxComboComponent, IgxComboModule, IgxCsvExporterOptions, IgxCsvExporterService, IgxDataLoadingTemplateDirective, IgxDataRecordSorting, IgxDateFilteringOperand, IgxDatePickerComponent, IgxDatePickerModule, IgxDateRangeEndComponent, IgxDateRangeInputsBaseComponent, IgxDateRangePickerComponent, IgxDateRangePickerModule, IgxDateRangeSeparatorDirective, IgxDateRangeStartComponent, IgxDateSummaryOperand, IgxDateTimeEditorDirective, IgxDateTimeEditorModule, IgxDateTimeFilteringOperand, IgxDaysViewComponent, IgxDefaultDropStrategy, IgxDialogComponent, IgxDialogModule, IgxDisplayDensityModule, IgxDividerDirective, IgxDividerModule, IgxDividerType, IgxDragDirective, IgxDragDropModule, IgxDragHandleDirective, IgxDragIgnoreDirective, IgxDragLocation, IgxDropDirective, IgxDropDownBaseDirective, IgxDropDownComponent, IgxDropDownGroupComponent, IgxDropDownItemBaseDirective, IgxDropDownItemComponent, IgxDropDownItemNavigationDirective, IgxDropDownModule, IgxEmptyListTemplateDirective, IgxExcelExporterOptions, IgxExcelExporterService, IgxExcelStyleClearFiltersComponent, IgxExcelStyleColumnOperationsTemplateDirective, IgxExcelStyleConditionalFilterComponent, IgxExcelStyleFilterOperationsTemplateDirective, IgxExcelStyleHeaderComponent, IgxExcelStyleHeaderIconDirective, IgxExcelStyleHidingComponent, IgxExcelStyleLoadingValuesTemplateDirective, IgxExcelStyleMovingComponent, IgxExcelStylePinningComponent, IgxExcelStyleSearchComponent, IgxExcelStyleSelectingComponent, IgxExcelStyleSortingComponent, IgxExcelTextDirective, IgxExpansionPanelBodyComponent, IgxExpansionPanelComponent, IgxExpansionPanelHeaderComponent, IgxExpansionPanelModule, IgxExporterOptionsBase, IgxFilterCellTemplateDirective, IgxFilterDirective, IgxFilterModule, IgxFilterOptions, IgxFilterPipe, IgxFilteringOperand, IgxFlatTransactionFactory, IgxFlexDirective, IgxFocusDirective, IgxFocusModule, IgxForOfContext, IgxForOfDirective, IgxForOfModule, IgxGridAPIService, IgxGridActionsBaseDirective, IgxGridBaseDirective, IgxGridBodyDirective, IgxGridCell, IgxGridCommonModule, IgxGridComponent, IgxGridDetailTemplateDirective, IgxGridEditingActionsComponent, IgxGridExcelStyleFilteringComponent, IgxGridForOfDirective, IgxGridHierarchicalPagingPipe, IgxGridHierarchicalPipe, IgxGridModule, IgxGridPinningActionsComponent, IgxGridRow, IgxGridStateDirective, IgxGridStateModule, IgxGridToolbarActionsDirective, IgxGridToolbarAdvancedFilteringComponent, IgxGridToolbarComponent, IgxGridToolbarDirective, IgxGridToolbarExporterComponent, IgxGridToolbarHidingComponent, IgxGridToolbarPinningComponent, IgxGridToolbarTitleDirective, IgxGridTransaction, IgxGroupAreaDropDirective, IgxGroupByRow, IgxGroupByRowTemplateDirective, IgxGroupedTreeGridSorting, IgxGrouping, IgxHeaderCollapseIndicatorDirective, IgxHeaderExpandIndicatorDirective, IgxHierarchicalGridAPIService, IgxHierarchicalGridBaseDirective, IgxHierarchicalGridComponent, IgxHierarchicalGridModule, IgxHierarchicalGridRow, IgxHierarchicalTransactionFactory, IgxHierarchicalTransactionService, IgxHierarchicalTransactionServiceFactory, IgxHintDirective, IgxIconComponent, IgxIconModule, IgxIconService, IgxInputDirective, IgxInputGroupComponent, IgxInputGroupModule, IgxInputState, IgxInsertDropStrategy, IgxLabelDirective, IgxLayoutDirective, IgxLayoutModule, IgxLinearProgressBarComponent, IgxListActionDirective, IgxListBaseDirective, IgxListComponent, IgxListItemComponent, IgxListItemLeftPanningTemplateDirective, IgxListItemRightPanningTemplateDirective, IgxListLineDirective, IgxListLineSubTitleDirective, IgxListLineTitleDirective, IgxListModule, IgxListPanState, IgxListThumbnailDirective, IgxMaskDirective, IgxMaskModule, IgxMonthPickerBaseDirective, IgxMonthPickerComponent, IgxMonthsViewComponent, IgxNavDrawerItemDirective, IgxNavDrawerMiniTemplateDirective, IgxNavDrawerTemplateDirective, IgxNavbarActionDirective, IgxNavbarComponent, IgxNavbarModule, IgxNavbarTitleDirective, IgxNavigationCloseDirective, IgxNavigationDrawerComponent, IgxNavigationDrawerModule, IgxNavigationModule, IgxNavigationService, IgxNavigationToggleDirective, IgxNumberFilteringOperand, IgxNumberSummaryOperand, IgxOverlayOutletDirective, IgxOverlayService, IgxPageNavigationComponent, IgxPageSizeSelectorComponent, IgxPaginatorComponent, IgxPaginatorDirective, IgxPaginatorModule, IgxPaginatorTemplateDirective, IgxPickerActionsDirective, IgxPickerClearComponent, IgxPickerToggleComponent, IgxPickersCommonModule, IgxPrefixDirective, IgxPrefixModule, IgxPrependDropStrategy, IgxProgressBarModule, IgxProgressType, IgxRadioComponent, IgxRadioGroupDirective, IgxRadioModule, IgxRippleDirective, IgxRippleModule, IgxRowCollapsedIndicatorDirective, IgxRowExpandedIndicatorDirective, IgxRowIslandAPIService, IgxRowIslandComponent, IgxSelectComponent, IgxSelectFooterDirective, IgxSelectGroupComponent, IgxSelectHeaderDirective, IgxSelectItemComponent, IgxSelectModule, IgxSelectToggleIconDirective, IgxSimpleComboComponent, IgxSimpleComboModule, IgxSlideComponent, IgxSliderComponent, IgxSliderModule, IgxSliderType, IgxSnackbarComponent, IgxSnackbarModule, IgxSorting, IgxSplitterComponent, IgxSplitterModule, IgxSplitterPaneComponent, IgxStringFilteringOperand, IgxSuffixDirective, IgxSuffixModule, IgxSummaryOperand, IgxSummaryRow, IgxSwitchComponent, IgxSwitchModule, IgxSwitchRequiredDirective, IgxTabContentComponent, IgxTabContentDirective, IgxTabHeaderComponent, IgxTabHeaderDirective, IgxTabHeaderIconDirective, IgxTabHeaderLabelDirective, IgxTabItemComponent, IgxTabItemDirective, IgxTabsAlignment, IgxTabsComponent, IgxTabsDirective, IgxTabsModule, IgxTextAlign, IgxTextHighlightDirective, IgxTextHighlightModule, IgxTextSelectionDirective, IgxTextSelectionModule, IgxThumbFromTemplateDirective, IgxThumbToTemplateDirective, IgxTickLabelTemplateDirective, IgxTimeFilteringOperand, IgxTimePickerComponent, IgxTimePickerModule, IgxTimeSummaryOperand, IgxToastComponent, IgxToastModule, IgxToastPosition, IgxToggleActionDirective, IgxToggleDirective, IgxToggleModule, IgxTooltipDirective, IgxTooltipModule, IgxTooltipTargetDirective, IgxTransactionService, IgxTreeComponent, IgxTreeExpandIndicatorDirective, IgxTreeGridAPIService, IgxTreeGridComponent, IgxTreeGridGroupingPipe, IgxTreeGridModule, IgxTreeGridRow, IgxTreeModule, IgxTreeNodeComponent, IgxTreeNodeLinkDirective, IgxTreeSelectMarkerDirective, IgxTreeSelectionType, IgxYearsViewComponent, LabelPosition, NoOpScrollStrategy, NoopFilteringStrategy, NoopSortingStrategy, PagingError, PickerInteractionMode, Point, RadioGroupAlignment, RadioLabelPosition, RelativePosition, RelativePositionStrategy, RowEditPositionStrategy, RowPinningPosition, ScrollMonth, ScrollStrategy, SliderHandle, SortingDirection, SplitterType, SwitchLabelPosition, TickLabelsOrientation, TicksOrientation, TransactionEventOrigin, TransactionType, TreeGridFilteringStrategy, TreeGridFormattedValuesFilteringStrategy, TreeGridMatchingRecordsOnlyFilteringStrategy, VerticalAlignment, WEEKDAYS, blink, changei18n, fadeIn, fadeOut, filteringStateDefaults, flipBottom, flipHorBck, flipHorFwd, flipLeft, flipRight, flipTop, flipVerBck, flipVerFwd, getCurrentResourceStrings, getTypeNameForDebugging, growVerIn, growVerOut, heartbeat, hierarchicalTransactionServiceFactory, isDateInRanges, isLeap, monthRange, pulsateBck, pulsateFwd, range, rotateInBl, rotateInBottom, rotateInBr, rotateInCenter, rotateInDiagonal1, rotateInDiagonal2, rotateInHor, rotateInLeft, rotateInRight, rotateInTl, rotateInTop, rotateInTr, rotateInVer, rotateOutBl, rotateOutBottom, rotateOutBr, rotateOutCenter, rotateOutDiagonal1, rotateOutDiagonal2, rotateOutHor, rotateOutLeft, rotateOutRight, rotateOutTl, rotateOutTop, rotateOutTr, rotateOutVer, scaleInBl, scaleInBottom, scaleInBr, scaleInCenter, scaleInHorCenter, scaleInHorLeft, scaleInHorRight, scaleInLeft, scaleInRight, scaleInTl, scaleInTop, scaleInTr, scaleInVerBottom, scaleInVerCenter, scaleInVerTop, scaleOutBl, scaleOutBottom, scaleOutBr, scaleOutCenter, scaleOutHorCenter, scaleOutHorLeft, scaleOutHorRight, scaleOutLeft, scaleOutRight, scaleOutTl, scaleOutTop, scaleOutTr, scaleOutVerBottom, scaleOutVerCenter, scaleOutVerTop, shakeBl, shakeBottom, shakeBr, shakeCenter, shakeHor, shakeLeft, shakeRight, shakeTl, shakeTop, shakeTr, shakeVer, slideInBl, slideInBottom, slideInBr, slideInLeft, slideInRight, slideInTl, slideInTop, slideInTr, slideOutBl, slideOutBottom, slideOutBr, slideOutLeft, slideOutRight, slideOutTl, slideOutTop, slideOutTr, swingInBottomBck, swingInBottomFwd, swingInLeftBck, swingInLeftFwd, swingInRightBck, swingInRightFwd, swingInTopBck, swingInTopFwd, swingOutBottomBck, swingOutBottomFwd, swingOutLeftBck, swingOutLefttFwd, swingOutRightBck, swingOutRightFwd, swingOutTopBck, swingOutTopFwd, toPercent, valueInRange, weekDay, ɵ1, ɵ2, IgxActionStripMenuItemDirective as ɵa, IGX_DROPDOWN_BASE as ɵb, IgxExpansionPanelTitleDirective as ɵba, IgxExpansionPanelDescriptionDirective as ɵbb, IgxExpansionPanelIconDirective as ɵbc, IgxBannerActionsDirective as ɵbd, IgxDaysViewNavigationService as ɵbe, IgxDayItemComponent as ɵbf, IgxMonthViewSlotsCalendar as ɵbg, IgxGetViewDateCalendar as ɵbh, IgxCarouselIndicatorDirective as ɵbi, IgxCarouselNextButtonDirective as ɵbj, IgxCarouselPrevButtonDirective as ɵbk, IGX_COMBO_COMPONENT as ɵbl, IgxComboBaseDirective as ɵbn, IgxComboHeaderDirective as ɵbo, IgxComboFooterDirective as ɵbp, IgxComboItemDirective as ɵbq, IgxComboEmptyDirective as ɵbr, IgxComboHeaderItemDirective as ɵbs, IgxComboAddItemDirective as ɵbt, IgxComboToggleIconDirective as ɵbu, IgxComboClearIconDirective as ɵbv, IgxComboAPIService as ɵbw, IgxComboDropDownComponent as ɵbx, IgxComboItemComponent as ɵby, IgxComboFilteringPipe as ɵbz, IgxComboGroupingPipe as ɵca, IgxComboAddItemComponent as ɵcb, PickerBaseDirective as ɵcc, IgxCalendarContainerComponent as ɵcd, IgxCalendarContainerModule as ɵce, IgxDialogTitleDirective as ɵcf, IgxDialogActionsDirective as ɵcg, IgxCellCrudState as ɵch, IgxRowCrudState as ɵci, IgxRowAddCrudState as ɵcj, IgxGridCRUDService as ɵck, IgxColumnMovingService as ɵcl, IgxExcelStyleCustomDialogComponent as ɵcm, IgxExcelStyleDefaultExpressionComponent as ɵcn, IgxExcelStyleDateExpressionComponent as ɵco, HammerGesturesManager as ɵcp, WatchChanges as ɵcq, WatchColumnChanges as ɵcr, notifyChanges as ɵcs, IgxNotificationsDirective as ɵct, IgxGridColumnResizerComponent as ɵcu, IgxColumnResizerDirective as ɵcv, IgxColumnResizingService as ɵcw, IgxRowSelectorDirective as ɵcx, IgxGroupByRowSelectorDirective as ɵcy, IgxHeadSelectorDirective as ɵcz, IgxGridSelectionService as ɵd, IgxRowDragDirective as ɵda, IgxDragIndicatorIconDirective as ɵdb, IgxRowDragGhostDirective as ɵdc, IgxRowDragModule as ɵdd, IgxGridHeaderRowComponent as ɵde, IgxGridHeaderGroupComponent as ɵdf, IgxGridHeaderComponent as ɵdg, IgxGridFilteringCellComponent as ɵdh, IgxFilteringService as ɵdi, IgxGridFilteringRowComponent as ɵdj, IgxGridGroupByAreaComponent as ɵdk, IgxGroupByAreaDirective as ɵdl, IgxGroupByMetaPipe as ɵdm, IgxTemplateOutletDirective as ɵdn, IgxTemplateOutletModule as ɵdo, IgxRowEditTemplateDirective as ɵdp, IgxRowEditTextDirective as ɵdq, IgxRowAddTextDirective as ɵdr, IgxRowEditActionsDirective as ɵds, IgxRowEditTabStopDirective as ɵdt, IgxSummaryRowComponent as ɵdu, IgxSummaryCellComponent as ɵdv, IgxRowDirective as ɵdw, IgxGridNavigationService as ɵdx, IgxGridSummaryService as ɵdy, ConnectedPositioningStrategy as ɵdz, IgxGridGroupByRowComponent as ɵea, IgxTreeGridSelectionService as ɵeb, IgxTreeGridGroupByAreaComponent as ɵec, IgxRowLoadingIndicatorTemplateDirective as ɵed, IgxHierarchicalGridNavigationService as ɵee, IgxChildGridRowComponent as ɵef, IgxGridCellComponent as ɵeg, IgxGridFooterComponent as ɵeh, IgxAdvancedFilteringDialogComponent as ɵei, IgxColumnHidingDirective as ɵej, IgxColumnPinningDirective as ɵek, IgxGridSharedModules as ɵel, IgxProcessBarTextTemplateDirective as ɵem, IgxProgressBarGradientDirective as ɵen, DIR_DOCUMENT_FACTORY as ɵeo, DIR_DOCUMENT as ɵep, IgxDirectionality as ɵeq, IgxSelectItemNavigationDirective as ɵer, IGX_TIME_PICKER_COMPONENT as ɵes, IgxItemListDirective as ɵeu, IgxTimeItemDirective as ɵev, IgxTimePickerTemplateDirective as ɵew, IgxTimePickerActionsDirective as ɵex, TimeFormatPipe as ɵey, TimeItemPipe as ɵez, IGX_EXPANSION_PANEL_COMPONENT as ɵf, IgxGridPipesModule as ɵfa, IgxGridCellStyleClassesPipe as ɵfb, IgxGridCellStylesPipe as ɵfc, IgxGridRowClassesPipe as ɵfd, IgxGridRowStylesPipe as ɵfe, IgxGridNotGroupedPipe as ɵff, IgxGridTopLevelColumns as ɵfg, IgxGridFilterConditionPipe as ɵfh, IgxGridTransactionPipe as ɵfi, IgxGridPaginatorOptionsPipe as ɵfj, IgxHasVisibleColumnsPipe as ɵfk, IgxGridRowPinningPipe as ɵfl, IgxColumnActionEnabledPipe as ɵfm, IgxFilterActionColumnsPipe as ɵfn, IgxSortActionColumnsPipe as ɵfo, IgxGridDataMapperPipe as ɵfp, IgxStringReplacePipe as ɵfq, IgxGridTransactionStatePipe as ɵfr, IgxColumnFormatterPipe as ɵfs, IgxSummaryFormatterPipe as ɵft, IgxGridAddRowPipe as ɵfu, IgxHeaderGroupWidthPipe as ɵfv, IgxHeaderGroupStylePipe as ɵfw, IgxGridColumnModule as ɵfx, IgxGridHeadersModule as ɵfy, SortingIndexPipe as ɵfz, IGX_TREE_COMPONENT as ɵg, IgxGridFilteringModule as ɵga, IgxColumnMovingModule as ɵgb, IgxColumnMovingDropDirective as ɵgc, IgxColumnMovingDragDirective as ɵgd, IgxGridResizingModule as ɵge, IgxResizeHandleDirective as ɵgf, IgxGridExcelStyleFilteringModule as ɵgg, IgxGridSelectionModule as ɵgh, IgxGridDragSelectDirective as ɵgi, IgxGridSummaryModule as ɵgj, IgxSummaryDataPipe as ɵgk, IgxGridToolbarModule as ɵgl, BaseToolbarDirective as ɵgm, BaseToolbarColumnActionsDirective as ɵgn, IgxGridRowComponent as ɵgo, IgxGridSortingPipe as ɵgp, IgxGridGroupingPipe as ɵgq, IgxGridPagingPipe as ɵgr, IgxGridFilteringPipe as ɵgs, IgxGridSummaryPipe as ɵgt, IgxGridDetailsPipe as ɵgu, IgxGridExpandableCellComponent as ɵgv, IgxTreeGridRowComponent as ɵgw, IgxTreeGridCellComponent as ɵgx, IgxTreeGridHierarchizingPipe as ɵgy, IgxTreeGridFlatteningPipe as ɵgz, IGX_TREE_NODE_COMPONENT as ɵh, IgxTreeGridSortingPipe as ɵha, IgxTreeGridPagingPipe as ɵhb, IgxTreeGridTransactionPipe as ɵhc, IgxTreeGridNormalizeRecordsPipe as ɵhd, IgxTreeGridAddRowPipe as ɵhe, IgxTreeGridFilteringPipe as ɵhf, IgxTreeGridSummaryPipe as ɵhg, IgxHierarchicalRowComponent as ɵhh, IgxHierarchicalGridCellComponent as ɵhi, IgxSliderThumbComponent as ɵhj, IgxThumbLabelComponent as ɵhk, IgxTicksComponent as ɵhl, IgxTickLabelsPipe as ɵhm, IgxTabsBase as ɵhn, IgxTabHeaderBase as ɵho, IgxTabContentBase as ɵhp, IgxSplitBarComponent as ɵhq, IgxTreeService as ɵhr, IgxTreeSelectionService as ɵhs, IgxTreeNavigationService as ɵht, PlatformUtil as ɵi, EaseIn as ɵj, EaseOut as ɵk, IgxInputGroupBase as ɵl, IgxSelectionAPIService as ɵm, IgxForOfSyncService as ɵn, IgxForOfScrollSyncService as ɵo, DisplayContainerComponent as ɵp, IgxScrollInertiaDirective as ɵq, IgxScrollInertiaModule as ɵr, VirtualHelperComponent as ɵs, VirtualHelperBaseDirective as ɵt, HVirtualHelperComponent as ɵu, MaskParsingService as ɵv, isHierarchyMatch as ɵw, getHierarchy as ɵx, IgxGridActionButtonComponent as ɵy, ToggleAnimationPlayer as ɵz };
76658
76585
  //# sourceMappingURL=igniteui-angular.js.map