igniteui-angular 12.2.5 → 12.2.9

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 (66) hide show
  1. package/bundles/igniteui-angular.umd.js +364 -495
  2. package/bundles/igniteui-angular.umd.js.map +1 -1
  3. package/esm2015/igniteui-angular.js +106 -107
  4. package/esm2015/lib/action-strip/grid-actions/grid-editing-actions.component.js +2 -2
  5. package/esm2015/lib/banner/banner.component.js +1 -1
  6. package/esm2015/lib/combo/combo-item.component.js +2 -2
  7. package/esm2015/lib/core/utils.js +24 -2
  8. package/esm2015/lib/data-operations/data-clone-strategy.js +7 -0
  9. package/esm2015/lib/data-operations/data-util.js +7 -6
  10. package/esm2015/lib/directives/radio/radio-group.directive.js +5 -13
  11. package/esm2015/lib/drop-down/drop-down-item.base.js +1 -5
  12. package/esm2015/lib/grids/api.service.js +2 -2
  13. package/esm2015/lib/grids/cell.component.js +1 -17
  14. package/esm2015/lib/grids/column-actions/column-actions.component.js +3 -7
  15. package/esm2015/lib/grids/common/crud.service.js +4 -3
  16. package/esm2015/lib/grids/common/grid.interface.js +1 -1
  17. package/esm2015/lib/grids/common/pipes.js +2 -2
  18. package/esm2015/lib/grids/common/row.interface.js +1 -1
  19. package/esm2015/lib/grids/grid/grid.component.js +3 -7
  20. package/esm2015/lib/grids/grid-base.directive.js +79 -118
  21. package/esm2015/lib/grids/grid-public-row.js +18 -16
  22. package/esm2015/lib/grids/headers/grid-header-row.component.js +2 -2
  23. package/esm2015/lib/grids/hierarchical-grid/hierarchical-grid.component.js +3 -7
  24. package/esm2015/lib/grids/row.directive.js +2 -3
  25. package/esm2015/lib/grids/summaries/grid-summary.service.js +2 -2
  26. package/esm2015/lib/grids/tree-grid/tree-grid.component.js +3 -7
  27. package/esm2015/lib/grids/tree-grid/tree-grid.pipes.js +3 -3
  28. package/esm2015/lib/icon/icon.component.js +1 -6
  29. package/esm2015/lib/services/overlay/overlay.js +2 -1
  30. package/esm2015/lib/services/overlay/utilities.js +1 -1
  31. package/esm2015/lib/services/transaction/base-transaction.js +17 -4
  32. package/esm2015/lib/services/transaction/igx-hierarchical-transaction.js +3 -4
  33. package/esm2015/lib/services/transaction/igx-transaction.js +3 -3
  34. package/esm2015/lib/services/transaction/transaction-factory.service.js +1 -2
  35. package/esm2015/lib/services/transaction/transaction.js +1 -1
  36. package/esm2015/lib/toast/toast.component.js +3 -6
  37. package/esm2015/public_api.js +2 -1
  38. package/fesm2015/igniteui-angular.js +171 -299
  39. package/fesm2015/igniteui-angular.js.map +1 -1
  40. package/igniteui-angular.d.ts +105 -106
  41. package/igniteui-angular.metadata.json +1 -1
  42. package/lib/banner/banner.component.d.ts +1 -2
  43. package/lib/core/utils.d.ts +12 -0
  44. package/lib/data-operations/data-clone-strategy.d.ts +6 -0
  45. package/lib/data-operations/data-util.d.ts +3 -2
  46. package/lib/directives/radio/radio-group.directive.d.ts +4 -4
  47. package/lib/grids/cell.component.d.ts +0 -9
  48. package/lib/grids/column-actions/column-actions.component.d.ts +2 -1
  49. package/lib/grids/common/grid.interface.d.ts +2 -0
  50. package/lib/grids/common/row.interface.d.ts +1 -0
  51. package/lib/grids/grid/grid.component.d.ts +2 -1
  52. package/lib/grids/grid-base.directive.d.ts +66 -37
  53. package/lib/grids/grid-public-row.d.ts +10 -3
  54. package/lib/grids/hierarchical-grid/hierarchical-grid.component.d.ts +2 -1
  55. package/lib/grids/tree-grid/tree-grid.component.d.ts +2 -1
  56. package/lib/icon/icon.component.d.ts +2 -2
  57. package/lib/services/overlay/utilities.d.ts +2 -1
  58. package/lib/services/transaction/base-transaction.d.ts +7 -0
  59. package/lib/services/transaction/transaction.d.ts +5 -0
  60. package/lib/toast/toast.component.d.ts +2 -0
  61. package/migrations/common/filterSourceDirs.d.ts +2 -2
  62. package/migrations/common/filterSourceDirs.js +2 -2
  63. package/package.json +1 -1
  64. package/public_api.d.ts +1 -0
  65. package/esm2015/lib/core/deprecateDecorators.js +0 -101
  66. package/lib/core/deprecateDecorators.d.ts +0 -20
@@ -1244,7 +1244,7 @@
1244
1244
  fn();
1245
1245
  }
1246
1246
  };
1247
- var ɵ0$5 = run;
1247
+ var ɵ0$4 = run;
1248
1248
  var listener = function (event) { return run(event.data); };
1249
1249
  var ɵ1$1 = listener;
1250
1250
  // Use function instead of arrow function to workaround an issue in codesandbox
@@ -1276,6 +1276,15 @@
1276
1276
  delete queue[id];
1277
1277
  }
1278
1278
 
1279
+ /**
1280
+ * @hidden
1281
+ */
1282
+ var showMessage = function (message, isMessageShown) {
1283
+ if (!isMessageShown && i0.isDevMode()) {
1284
+ console.warn(message);
1285
+ }
1286
+ return true;
1287
+ };
1279
1288
  var mkenum = function (x) { return x; };
1280
1289
  /**
1281
1290
  * Returns the ResizeObserver type or the polyfilled version if not available.
@@ -1327,6 +1336,18 @@
1327
1336
  }
1328
1337
  return result;
1329
1338
  };
1339
+ /**
1340
+ * Creates an object with prototype from provided source and copies
1341
+ * all properties descriptors from provided source
1342
+ *
1343
+ * @param obj Source to copy prototype and descriptors from
1344
+ * @returns New object with cloned prototype and property descriptors
1345
+ */
1346
+ var copyDescriptors = function (obj) {
1347
+ if (obj) {
1348
+ return Object.create(Object.getPrototypeOf(obj), Object.getOwnPropertyDescriptors(obj));
1349
+ }
1350
+ };
1330
1351
  /**
1331
1352
  * Deep clones all first level keys of Obj2 and merges them to Obj1
1332
1353
  *
@@ -1414,7 +1435,7 @@
1414
1435
  * @returns true if provided variable is Object
1415
1436
  * @hidden
1416
1437
  */
1417
- var isObject = function (value) { return value && value.toString() === '[object Object]'; };
1438
+ var isObject = function (value) { return !!(value && value.toString() === '[object Object]'); };
1418
1439
  /**
1419
1440
  * Checks if provided variable is Date
1420
1441
  *
@@ -2489,6 +2510,15 @@
2489
2510
  TransactionEventOrigin["END"] = "endPending";
2490
2511
  })(exports.TransactionEventOrigin || (exports.TransactionEventOrigin = {}));
2491
2512
 
2513
+ var DefaultDataCloneStrategy = /** @class */ (function () {
2514
+ function DefaultDataCloneStrategy() {
2515
+ }
2516
+ DefaultDataCloneStrategy.prototype.clone = function (data) {
2517
+ return cloneValue(data);
2518
+ };
2519
+ return DefaultDataCloneStrategy;
2520
+ }());
2521
+
2492
2522
  /**
2493
2523
  * @hidden
2494
2524
  */
@@ -2603,13 +2633,14 @@
2603
2633
  * @param deleteRows Should delete rows with DELETE transaction type from data
2604
2634
  * @returns Provided data collections updated with all provided transactions
2605
2635
  */
2606
- DataUtil.mergeTransactions = function (data, transactions, primaryKey, deleteRows) {
2636
+ DataUtil.mergeTransactions = function (data, transactions, primaryKey, cloneStrategy, deleteRows) {
2637
+ if (cloneStrategy === void 0) { cloneStrategy = new DefaultDataCloneStrategy(); }
2607
2638
  if (deleteRows === void 0) { deleteRows = false; }
2608
2639
  data.forEach(function (item, index) {
2609
2640
  var rowId = primaryKey ? item[primaryKey] : item;
2610
2641
  var transaction = transactions.find(function (t) { return t.id === rowId; });
2611
2642
  if (transaction && transaction.type === exports.TransactionType.UPDATE) {
2612
- data[index] = transaction.newValue;
2643
+ data[index] = mergeObjects(cloneStrategy.clone(data[index]), transaction.newValue);
2613
2644
  }
2614
2645
  });
2615
2646
  if (deleteRows) {
@@ -2637,8 +2668,9 @@
2637
2668
  * @param deleteRows Should delete rows with DELETE transaction type from data
2638
2669
  * @returns Provided data collections updated with all provided transactions
2639
2670
  */
2640
- DataUtil.mergeHierarchicalTransactions = function (data, transactions, childDataKey, primaryKey, deleteRows) {
2671
+ DataUtil.mergeHierarchicalTransactions = function (data, transactions, childDataKey, primaryKey, cloneStrategy, deleteRows) {
2641
2672
  var e_1, _a;
2673
+ if (cloneStrategy === void 0) { cloneStrategy = new DefaultDataCloneStrategy(); }
2642
2674
  if (deleteRows === void 0) { deleteRows = false; }
2643
2675
  var _loop_1 = function (transaction) {
2644
2676
  if (transaction.path) {
@@ -2655,7 +2687,7 @@
2655
2687
  case exports.TransactionType.UPDATE:
2656
2688
  var updateIndex = collection.findIndex(function (x) { return x[primaryKey] === transaction.id; });
2657
2689
  if (updateIndex !== -1) {
2658
- collection[updateIndex] = mergeObjects(cloneValue(collection[updateIndex]), transaction.newValue);
2690
+ collection[updateIndex] = mergeObjects(cloneStrategy.clone(collection[updateIndex]), transaction.newValue);
2659
2691
  }
2660
2692
  break;
2661
2693
  case exports.TransactionType.DELETE:
@@ -7171,7 +7203,8 @@
7171
7203
  var rowInEditMode = grid.gridAPI.crudService.row;
7172
7204
  row.newData = value !== null && value !== void 0 ? value : rowInEditMode.transactionState;
7173
7205
  if (rowInEditMode && row.id === rowInEditMode.id) {
7174
- row.data = Object.assign(Object.assign({}, row.data), rowInEditMode.transactionState);
7206
+ // do not use spread operator here as it will copy everything over an empty object with no descriptors
7207
+ row.data = Object.assign(copyDescriptors(row.data), row.data, rowInEditMode.transactionState);
7175
7208
  // TODO: Workaround for updating a row in edit mode through the API
7176
7209
  }
7177
7210
  else if (this.grid.transactions.enabled) {
@@ -7444,7 +7477,7 @@
7444
7477
  }
7445
7478
  if (!data) {
7446
7479
  if (grid.transactions.enabled) {
7447
- data = DataUtil.mergeTransactions(cloneArray(grid.data), grid.transactions.getAggregatedChanges(true), grid.primaryKey);
7480
+ data = DataUtil.mergeTransactions(cloneArray(grid.data), grid.transactions.getAggregatedChanges(true), grid.primaryKey, grid.dataCloneStrategy);
7448
7481
  var deletedRows = grid.transactions.getTransactionLog().filter(function (t) { return t.type === exports.TransactionType.DELETE; }).map(function (t) { return t.id; });
7449
7482
  deletedRows.forEach(function (rowID) {
7450
7483
  var tempData = grid.primaryKey ? data.map(function (rec) { return rec[grid.primaryKey]; }) : data;
@@ -8592,7 +8625,7 @@
8592
8625
  */
8593
8626
  get: function () {
8594
8627
  if (this.inEditMode) {
8595
- return mergeWith__default['default'](cloneValue(this._rowData), this.grid.transactions.getAggregatedValue(this.rowID, false), function (objValue, srcValue) {
8628
+ return mergeWith__default['default'](this.grid.dataCloneStrategy.clone(this._rowData), this.grid.transactions.getAggregatedValue(this.rowID, false), function (objValue, srcValue) {
8596
8629
  if (Array.isArray(srcValue)) {
8597
8630
  return objValue = srcValue;
8598
8631
  }
@@ -9139,7 +9172,7 @@
9139
9172
  };
9140
9173
 
9141
9174
  var clear = function (el) { return el === 0 || Boolean(el); };
9142
- var ɵ0$4 = clear;
9175
+ var ɵ0$3 = clear;
9143
9176
  var first = function (arr) { return arr[0]; };
9144
9177
  var ɵ1 = first;
9145
9178
  var last = function (arr) { return arr[arr.length - 1]; };
@@ -16283,6 +16316,7 @@
16283
16316
  return null;
16284
16317
  }
16285
16318
  var hook = this._document.createElement('div');
16319
+ hook.style.display = 'none';
16286
16320
  element.parentElement.insertBefore(hook, element);
16287
16321
  return hook;
16288
16322
  };
@@ -16851,7 +16885,23 @@
16851
16885
  this._isPending = false;
16852
16886
  this._pendingTransactions = [];
16853
16887
  this._pendingStates = new Map();
16888
+ this._cloneStrategy = new DefaultDataCloneStrategy();
16854
16889
  }
16890
+ Object.defineProperty(IgxBaseTransactionService.prototype, "cloneStrategy", {
16891
+ /**
16892
+ * @inheritdoc
16893
+ */
16894
+ get: function () {
16895
+ return this._cloneStrategy;
16896
+ },
16897
+ set: function (strategy) {
16898
+ if (strategy) {
16899
+ this._cloneStrategy = strategy;
16900
+ }
16901
+ },
16902
+ enumerable: false,
16903
+ configurable: true
16904
+ });
16855
16905
  Object.defineProperty(IgxBaseTransactionService.prototype, "canRedo", {
16856
16906
  /**
16857
16907
  * @inheritdoc
@@ -16979,7 +17029,7 @@
16979
17029
  }
16980
17030
  }
16981
17031
  else {
16982
- state = { value: cloneValue(transaction.newValue), recordRef: recordRef, type: transaction.type };
17032
+ state = { value: this.cloneStrategy.clone(transaction.newValue), recordRef: recordRef, type: transaction.type };
16983
17033
  states.set(transaction.id, state);
16984
17034
  }
16985
17035
  };
@@ -17001,7 +17051,7 @@
17001
17051
  */
17002
17052
  IgxBaseTransactionService.prototype.mergeValues = function (first, second) {
17003
17053
  if (isObject(first) || isObject(second)) {
17004
- return mergeObjects(cloneValue(first), second);
17054
+ return mergeObjects(this.cloneStrategy.clone(first), second);
17005
17055
  }
17006
17056
  else {
17007
17057
  return second ? second : first;
@@ -17327,7 +17377,7 @@
17327
17377
  }
17328
17378
  }
17329
17379
  else {
17330
- state = { value: cloneValue(transaction.newValue), recordRef: recordRef, type: transaction.type };
17380
+ state = { value: this.cloneStrategy.clone(transaction.newValue), recordRef: recordRef, type: transaction.type };
17331
17381
  states.set(transaction.id, state);
17332
17382
  }
17333
17383
  // should not clean pending state. This will happen automatically on endPending call
@@ -17418,7 +17468,7 @@
17418
17468
  var _this = this;
17419
17469
  var result = [];
17420
17470
  this._states.forEach(function (state, key) {
17421
- var value = mergeChanges ? _this.mergeValues(state.recordRef, state.value) : cloneValue(state.value);
17471
+ var value = mergeChanges ? _this.mergeValues(state.recordRef, state.value) : _this.cloneStrategy.clone(state.value);
17422
17472
  _this.clearArraysFromObject(value);
17423
17473
  result.push({ id: key, path: state.path, newValue: value, type: state.type });
17424
17474
  });
@@ -17430,7 +17480,7 @@
17430
17480
  if (id !== undefined) {
17431
17481
  transactions = transactions.filter(function (t) { return t.id === id; });
17432
17482
  }
17433
- DataUtil.mergeHierarchicalTransactions(data, transactions, childDataKey, primaryKeyOrId, true);
17483
+ DataUtil.mergeHierarchicalTransactions(data, transactions, childDataKey, primaryKeyOrId, this.cloneStrategy, true);
17434
17484
  this.clear(id);
17435
17485
  }
17436
17486
  else {
@@ -17536,7 +17586,6 @@
17536
17586
  switch (type) {
17537
17587
  case ("Base" /* Base */):
17538
17588
  return new IgxHierarchicalTransactionService();
17539
- ;
17540
17589
  default:
17541
17590
  return new IgxBaseTransactionService();
17542
17591
  }
@@ -18299,124 +18348,6 @@
18299
18348
  },] }
18300
18349
  ];
18301
18350
 
18302
- /**
18303
- * @hidden
18304
- */
18305
- var DeprecateClass = function (message) {
18306
- var isMessageShown = false;
18307
- return function (originalClass) { return /** @class */ (function (_super) {
18308
- __extends(class_1, _super);
18309
- function class_1() {
18310
- var args = [];
18311
- for (var _i = 0; _i < arguments.length; _i++) {
18312
- args[_i] = arguments[_i];
18313
- }
18314
- var _this = this;
18315
- var target = originalClass;
18316
- var targetName = typeof target === 'function' ? target.name : target.constructor.name;
18317
- isMessageShown = showMessage(targetName + ": " + message, isMessageShown);
18318
- _this = _super.apply(this, __spreadArray([], __read(args))) || this;
18319
- return _this;
18320
- }
18321
- return class_1;
18322
- }(originalClass)); };
18323
- };
18324
- /**
18325
- * @hidden
18326
- */
18327
- function DeprecateMethod(message) {
18328
- var isMessageShown = false;
18329
- return function (target, key, descriptor) {
18330
- if (descriptor && descriptor.value) {
18331
- var originalMethod_1 = descriptor.value;
18332
- descriptor.value = function () {
18333
- var e_1, _a;
18334
- var targetName = typeof target === 'function' ? target.name : target.constructor.name;
18335
- isMessageShown = showMessage(targetName + "." + key + ": " + message, isMessageShown);
18336
- var args = [];
18337
- try {
18338
- for (var arguments_1 = __values(arguments), arguments_1_1 = arguments_1.next(); !arguments_1_1.done; arguments_1_1 = arguments_1.next()) {
18339
- var x = arguments_1_1.value;
18340
- args.push(x);
18341
- }
18342
- }
18343
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
18344
- finally {
18345
- try {
18346
- if (arguments_1_1 && !arguments_1_1.done && (_a = arguments_1.return)) _a.call(arguments_1);
18347
- }
18348
- finally { if (e_1) throw e_1.error; }
18349
- }
18350
- return originalMethod_1.call.apply(originalMethod_1, __spreadArray([this], __read(args)));
18351
- };
18352
- return descriptor;
18353
- }
18354
- };
18355
- }
18356
- /**
18357
- * @hidden
18358
- */
18359
- function DeprecateProperty(message) {
18360
- return function (target, key) {
18361
- var isMessageShown = false;
18362
- var messageToDisplay = target.constructor.name + "." + key + ": " + message;
18363
- // if the target already has the property defined
18364
- var originalDescriptor = Object.getOwnPropertyDescriptor(target, key);
18365
- if (originalDescriptor) {
18366
- var getter_1 = originalDescriptor.get;
18367
- var setter_1 = originalDescriptor.set;
18368
- if (getter_1) {
18369
- originalDescriptor.get = function () {
18370
- isMessageShown = showMessage(messageToDisplay, isMessageShown);
18371
- return getter_1.call(this);
18372
- };
18373
- }
18374
- if (setter_1) {
18375
- originalDescriptor.set = function (value) {
18376
- isMessageShown = showMessage(messageToDisplay, isMessageShown);
18377
- setter_1.call(this, value);
18378
- };
18379
- }
18380
- return originalDescriptor;
18381
- }
18382
- // the target doesn't contain a descriptor for that property, so create one
18383
- // use backing field to set/get the value of the property to ensure there won't be infinite recursive calls
18384
- var newKey = generateUniqueKey(target, key);
18385
- Object.defineProperty(target, key, {
18386
- configurable: true,
18387
- enumerable: true,
18388
- set: function (value) {
18389
- isMessageShown = showMessage(messageToDisplay, isMessageShown);
18390
- this[newKey] = value;
18391
- },
18392
- get: function () {
18393
- isMessageShown = showMessage(messageToDisplay, isMessageShown);
18394
- return this[newKey];
18395
- }
18396
- });
18397
- };
18398
- }
18399
- /**
18400
- * @hidden
18401
- */
18402
- var generateUniqueKey = function (target, key) {
18403
- var newKey = '_' + key;
18404
- while (target.hasOwnProperty(newKey)) {
18405
- newKey = '_' + newKey;
18406
- }
18407
- return newKey;
18408
- };
18409
- var ɵ0$3 = generateUniqueKey;
18410
- /**
18411
- * @hidden
18412
- */
18413
- var showMessage = function (message, isMessageShown) {
18414
- if (!isMessageShown && i0.isDevMode()) {
18415
- console.warn(message);
18416
- }
18417
- return true;
18418
- };
18419
-
18420
18351
  var NEXT_ID$t = 0;
18421
18352
  /**
18422
18353
  * The `<igx-drop-down-item>` is a container intended for row items in
@@ -18492,7 +18423,6 @@
18492
18423
  };
18493
18424
 
18494
18425
  var NEXT_ID$s = 0;
18495
- var warningShown = false;
18496
18426
  /**
18497
18427
  * An abstract class defining a drop-down item:
18498
18428
  * With properties / styles for selection, highlight, height
@@ -18566,8 +18496,6 @@
18566
18496
  */
18567
18497
  get: function () {
18568
18498
  if (this._index === null) {
18569
- warningShown = showMessage('IgxDropDownItemBaseDirective: Automatic index is deprecated.' +
18570
- 'Bind in the template instead using `<igx-drop-down-item [index]="i"` instead.`', warningShown);
18571
18499
  return this.itemIndex;
18572
18500
  }
18573
18501
  return this._index;
@@ -21420,9 +21348,6 @@
21420
21348
  getInactive: [{ type: i0.HostBinding, args: ['class.igx-icon--inactive',] }],
21421
21349
  getColor: [{ type: i0.HostBinding, args: ['style.color',] }]
21422
21350
  };
21423
- __decorate([
21424
- DeprecateProperty('`color` is deprecated.')
21425
- ], IgxIconComponent.prototype, "color", void 0);
21426
21351
 
21427
21352
  /**
21428
21353
  * @hidden
@@ -26116,10 +26041,10 @@
26116
26041
  });
26117
26042
  Object.defineProperty(IgxRadioGroupDirective.prototype, "disabled", {
26118
26043
  /**
26119
- * An @Input property that allows you to disable the radio group. By default it's false.
26120
- *
26121
26044
  * @deprecated in version 12.2.0
26122
26045
  *
26046
+ * An input property that allows you to disable the radio group. By default it's false.
26047
+ *
26123
26048
  * @example
26124
26049
  * ```html
26125
26050
  * <igx-radio-group disabled></igx-radio-group>
@@ -26137,10 +26062,10 @@
26137
26062
  });
26138
26063
  Object.defineProperty(IgxRadioGroupDirective.prototype, "labelPosition", {
26139
26064
  /**
26140
- * Sets/gets the position of the `label` in the child radio buttons.
26141
- *
26142
26065
  * @deprecated in version 12.2.0
26143
26066
  *
26067
+ * Sets/gets the position of the `label` in the child radio buttons.
26068
+ *
26144
26069
  * @remarks
26145
26070
  * If not set, `labelPosition` will have value `"after"`.
26146
26071
  *
@@ -26408,12 +26333,6 @@
26408
26333
  vertical: [{ type: i0.HostBinding, args: ['class.igx-radio-group--vertical',] }],
26409
26334
  alignment: [{ type: i0.Input }]
26410
26335
  };
26411
- __decorate([
26412
- DeprecateProperty('`disabled` is deprecated.')
26413
- ], IgxRadioGroupDirective.prototype, "disabled", null);
26414
- __decorate([
26415
- DeprecateProperty('`labelPosition` is deprecated.')
26416
- ], IgxRadioGroupDirective.prototype, "labelPosition", null);
26417
26336
  /**
26418
26337
  * @hidden
26419
26338
  */
@@ -39076,7 +38995,7 @@
39076
38995
  IgxComboItemComponent.decorators = [
39077
38996
  { type: i0.Component, args: [{
39078
38997
  selector: 'igx-combo-item',
39079
- template: "<ng-container *ngIf=\"!isHeader\">\n <igx-checkbox [checked]=\"selected\" [disableRipple]=\"true\" [disableTransitions]=\"disableTransitions\" [tabindex]=\"-1\" (click)=\"disableCheck($event)\" class=\"igx-combo__checkbox\"></igx-checkbox>\n</ng-container>\n<span class=\"igx-drop-down__inner\"><ng-content></ng-content></span>\n"
38998
+ template: "<ng-container *ngIf=\"!isHeader\">\n <!-- checkbox should not allow changing its state from UI click (that's why it should be readonly=true), becasue when cancelling the selectionChange event in the combo, then checkbox will still change state.-->\n <igx-checkbox [checked]=\"selected\" [disableRipple]=\"true\" [readonly]=\"true\" [disableTransitions]=\"disableTransitions\" [tabindex]=\"-1\" (click)=\"disableCheck($event)\" class=\"igx-combo__checkbox\"></igx-checkbox>\n</ng-container>\n<span class=\"igx-drop-down__inner\"><ng-content></ng-content></span>\n"
39080
38999
  },] }
39081
39000
  ];
39082
39001
  IgxComboItemComponent.ctorParameters = function () { return [
@@ -48930,7 +48849,7 @@
48930
48849
  var summaryIDs = [];
48931
48850
  var data = this.grid.data;
48932
48851
  if (this.grid.transactions.enabled) {
48933
- data = DataUtil.mergeTransactions(cloneArray(this.grid.data), this.grid.transactions.getAggregatedChanges(true), this.grid.primaryKey);
48852
+ data = DataUtil.mergeTransactions(cloneArray(this.grid.data), this.grid.transactions.getAggregatedChanges(true), this.grid.primaryKey, this.grid.dataCloneStrategy);
48934
48853
  }
48935
48854
  var rowData = this.grid.primaryKey ? data.find(function (rec) { return rec[_this.grid.primaryKey] === rowID; }) : rowID;
48936
48855
  var id = '{ ';
@@ -54206,7 +54125,7 @@
54206
54125
  { type: i0.Component, args: [{
54207
54126
  changeDetection: i0.ChangeDetectionStrategy.OnPush,
54208
54127
  selector: 'igx-grid-header-row',
54209
- 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"
54128
+ 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"
54210
54129
  },] }
54211
54130
  ];
54212
54131
  IgxGridHeaderRowComponent.ctorParameters = function () { return [
@@ -54390,9 +54309,10 @@
54390
54309
  */
54391
54310
  _this.gridScroll = new i0.EventEmitter();
54392
54311
  /**
54312
+ * @deprecated in version 12.1.0. Use the corresponding output exposed by the `igx-paginator` component instead
54313
+ *
54393
54314
  * Emitted after the current page is changed.
54394
54315
  *
54395
- * @deprecated in version 12.1.0
54396
54316
  * @example
54397
54317
  * ```html
54398
54318
  * <igx-grid (pageChange)="onPageChange($event)"></igx-grid>
@@ -54405,10 +54325,10 @@
54405
54325
  */
54406
54326
  _this.pageChange = new i0.EventEmitter();
54407
54327
  /**
54328
+ * @deprecated in version 12.1.0. Use the corresponding output exposed by the `igx-paginator` component instead
54329
+ *
54408
54330
  * Emitted when `perPage` property value of the grid is changed.
54409
54331
  *
54410
- * @deprecated in version 12.1.0
54411
- * @example
54412
54332
  * ```html
54413
54333
  * <igx-grid #grid (perPageChange)="onPerPageChange($event)" [autoGenerate]="true"></igx-grid>
54414
54334
  * ```
@@ -54425,6 +54345,8 @@
54425
54345
  */
54426
54346
  _this.class = '';
54427
54347
  /**
54348
+ * @deprecated in version 12.2.0. We suggest using `rowClasses` property instead
54349
+ *
54428
54350
  * Gets/Sets the styling classes applied to all even `IgxGridRowComponent`s in the grid.
54429
54351
  *
54430
54352
  * @example
@@ -54434,6 +54356,8 @@
54434
54356
  */
54435
54357
  _this.evenRowCSS = 'igx-grid__tr--even';
54436
54358
  /**
54359
+ * @deprecated in version 12.2.0. We suggest using `rowClasses` property instead
54360
+ *
54437
54361
  * Gets/Sets the styling classes applied to all odd `IgxGridRowComponent`s in the grid.
54438
54362
  *
54439
54363
  * @example
@@ -54688,9 +54612,10 @@
54688
54612
  */
54689
54613
  _this.filteringDone = new i0.EventEmitter();
54690
54614
  /**
54615
+ * @deprecated in version 12.1.0. Use the corresponding output exposed by the `igx-paginator` component instead
54616
+ *
54691
54617
  * Emitted after paging is performed.
54692
54618
  *
54693
- * @deprecated in version 12.1.x
54694
54619
  * @remarks
54695
54620
  * Returns an object consisting of the previous and next pages.
54696
54621
  * @example
@@ -55173,6 +55098,7 @@
55173
55098
  outlet: _this.rowOutletDirective,
55174
55099
  positionStrategy: _this.rowEditPositioningStrategy
55175
55100
  };
55101
+ _this._dataCloneStrategy = new DefaultDataCloneStrategy();
55176
55102
  _this.transactionChange$ = new rxjs.Subject();
55177
55103
  _this._rendered = false;
55178
55104
  _this.DRAG_SCROLL_DELTA = 10;
@@ -55195,6 +55121,7 @@
55195
55121
  _this.currencyPipe = new i2.CurrencyPipe(_this.locale);
55196
55122
  _this.percentPipe = new i2.PercentPipe(_this.locale);
55197
55123
  _this._transactions = _this.transactionFactory.create("None" /* None */);
55124
+ _this._transactions.cloneStrategy = _this.dataCloneStrategy;
55198
55125
  _this.cdr.detach();
55199
55126
  return _this;
55200
55127
  }
@@ -55205,6 +55132,27 @@
55205
55132
  enumerable: false,
55206
55133
  configurable: true
55207
55134
  });
55135
+ Object.defineProperty(IgxGridBaseDirective.prototype, "dataCloneStrategy", {
55136
+ /**
55137
+ * Gets/Sets the data clone strategy of the grid when in edit mode.
55138
+ *
55139
+ * @example
55140
+ * ```html
55141
+ * <igx-grid #grid [data]="localData" [dataCloneStrategy]="customCloneStrategy"></igx-grid>
55142
+ * ```
55143
+ */
55144
+ get: function () {
55145
+ return this._dataCloneStrategy;
55146
+ },
55147
+ set: function (strategy) {
55148
+ if (strategy) {
55149
+ this._dataCloneStrategy = strategy;
55150
+ this._transactions.cloneStrategy = strategy;
55151
+ }
55152
+ },
55153
+ enumerable: false,
55154
+ configurable: true
55155
+ });
55208
55156
  Object.defineProperty(IgxGridBaseDirective.prototype, "headerContainer", {
55209
55157
  get: function () {
55210
55158
  return this.theadRow.headerContainer;
@@ -55394,9 +55342,10 @@
55394
55342
  });
55395
55343
  Object.defineProperty(IgxGridBaseDirective.prototype, "paging", {
55396
55344
  /**
55345
+ * @deprecated in version 12.1.0. Use the corresponding method exposed by the `igx-paginator`
55346
+ *
55397
55347
  * Gets/Sets whether the paging feature is enabled.
55398
55348
  *
55399
- * @deprecated in version 12.1.x
55400
55349
  * @remarks
55401
55350
  * The default state is disabled (false).
55402
55351
  * @example
@@ -55418,9 +55367,10 @@
55418
55367
  });
55419
55368
  Object.defineProperty(IgxGridBaseDirective.prototype, "page", {
55420
55369
  /**
55370
+ * @deprecated in version 12.1.0. Use `page` property form `paginator` component instead
55371
+ *
55421
55372
  * Gets/Sets the current page index.
55422
55373
  *
55423
- * @deprecated in version 12.1.x
55424
55374
  * @example
55425
55375
  * ```html
55426
55376
  * <igx-grid #grid [data]="Data" [autoGenerate]="true">
@@ -55444,9 +55394,10 @@
55444
55394
  });
55445
55395
  Object.defineProperty(IgxGridBaseDirective.prototype, "perPage", {
55446
55396
  /**
55397
+ * @deprecated in version 12.1.0. Use `perPage` property from `paginator` component instead
55398
+ *
55447
55399
  * Gets/Sets the number of visible items per page.
55448
55400
  *
55449
- * @deprecated in version 12.1.x
55450
55401
  * @remarks
55451
55402
  * The default is 15.
55452
55403
  * @example
@@ -55471,9 +55422,10 @@
55471
55422
  });
55472
55423
  Object.defineProperty(IgxGridBaseDirective.prototype, "columnHiding", {
55473
55424
  /**
55425
+ * @deprecated in version 10.1.0
55426
+ *
55474
55427
  * Gets/Sets whether the column hiding UI is enabled.
55475
55428
  *
55476
- * @deprecated
55477
55429
  * @remarks
55478
55430
  * 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.
55479
55431
  * @example
@@ -55724,9 +55676,9 @@
55724
55676
  });
55725
55677
  Object.defineProperty(IgxGridBaseDirective.prototype, "columnHidingTitle", {
55726
55678
  /**
55727
- * Gets/Sets the title to be displayed in the built-in column hiding UI.
55679
+ * @deprecated in version 10.1.0
55728
55680
  *
55729
- * @deprecated
55681
+ * Gets/Sets the title to be displayed in the built-in column hiding UI.
55730
55682
  *
55731
55683
  * @example
55732
55684
  * ```html
@@ -55776,9 +55728,9 @@
55776
55728
  });
55777
55729
  Object.defineProperty(IgxGridBaseDirective.prototype, "columnPinning", {
55778
55730
  /**
55779
- * Gets/Sets if the built-in column pinning UI should be shown in the toolbar.
55731
+ * @deprecated in version 10.1.0
55780
55732
  *
55781
- * @deprecated
55733
+ * Gets/Sets if the built-in column pinning UI should be shown in the toolbar.
55782
55734
  *
55783
55735
  * @example
55784
55736
  * ```html
@@ -55797,9 +55749,9 @@
55797
55749
  });
55798
55750
  Object.defineProperty(IgxGridBaseDirective.prototype, "columnPinningTitle", {
55799
55751
  /**
55800
- * Gets/Sets the title to be displayed in the UI of the column pinning.
55752
+ * @deprecated in version 10.1.0
55801
55753
  *
55802
- * @deprecated
55754
+ * Gets/Sets the title to be displayed in the UI of the column pinning.
55803
55755
  *
55804
55756
  * @example
55805
55757
  * ```html
@@ -56402,9 +56354,9 @@
56402
56354
  });
56403
56355
  Object.defineProperty(IgxGridBaseDirective.prototype, "hiddenColumnsText", {
56404
56356
  /**
56405
- * Gets/Sets the text to be displayed inside the toggle button.
56357
+ * @deprecated in version 10.1.0
56406
56358
  *
56407
- * @deprecated
56359
+ * Gets/Sets the text to be displayed inside the toggle button.
56408
56360
  *
56409
56361
  * @remarks
56410
56362
  * Used for the built-in column hiding UI of the`IgxColumnComponent`.
@@ -56413,7 +56365,6 @@
56413
56365
  * <igx-grid [columnHiding]="true" [showToolbar]="true" [hiddenColumnsText]="'Hidden Columns'"></igx-grid>
56414
56366
  * ```
56415
56367
  */
56416
- // @DeprecateProperty('`hiddenColumnsText` is deprecated')
56417
56368
  get: function () {
56418
56369
  return this._hiddenColumnsText;
56419
56370
  },
@@ -56426,9 +56377,9 @@
56426
56377
  });
56427
56378
  Object.defineProperty(IgxGridBaseDirective.prototype, "pinnedColumnsText", {
56428
56379
  /**
56429
- * Gets/Sets the text to be displayed inside the toggle button.
56380
+ * @deprecated in version 10.1.0
56430
56381
  *
56431
- * @deprecated
56382
+ * Gets/Sets the text to be displayed inside the toggle button.
56432
56383
  *
56433
56384
  * @remarks
56434
56385
  * Used for the built-in column pinning UI of the`IgxColumnComponent`.
@@ -56522,9 +56473,9 @@
56522
56473
  });
56523
56474
  Object.defineProperty(IgxGridBaseDirective.prototype, "showToolbar", {
56524
56475
  /**
56525
- * Gets/Sets whether the toolbar is shown.
56476
+ * @deprecated in version 11.0.0
56526
56477
  *
56527
- * @deprecated
56478
+ * Gets/Sets whether the toolbar is shown.
56528
56479
  *
56529
56480
  * @example
56530
56481
  * ```html
@@ -56542,9 +56493,9 @@
56542
56493
  });
56543
56494
  Object.defineProperty(IgxGridBaseDirective.prototype, "toolbarTitle", {
56544
56495
  /**
56545
- * Gets/Sets the toolbar's title.
56496
+ * @deprecated in version 11.0.0
56546
56497
  *
56547
- * @deprecated
56498
+ * Gets/Sets the toolbar's title.
56548
56499
  *
56549
56500
  * @example
56550
56501
  * ```html
@@ -56563,9 +56514,9 @@
56563
56514
  });
56564
56515
  Object.defineProperty(IgxGridBaseDirective.prototype, "exportExcel", {
56565
56516
  /**
56566
- * Gets/Sets whether exporting to MS Excel is enabled or disabled.
56517
+ * @deprecated `exportExcel` is deprecated
56567
56518
  *
56568
- * @deprecated
56519
+ * Gets/Sets whether exporting to MS Excel is enabled or disabled.
56569
56520
  *
56570
56521
  * @example
56571
56522
  * ```html
@@ -56584,9 +56535,9 @@
56584
56535
  });
56585
56536
  Object.defineProperty(IgxGridBaseDirective.prototype, "exportCsv", {
56586
56537
  /**
56587
- * Gets/Sets whether the option for exporting to CSV is enabled or disabled.
56538
+ * @deprecated `exportCsv` is deprecated
56588
56539
  *
56589
- * @deprecated
56540
+ * Gets/Sets whether the option for exporting to CSV is enabled or disabled.
56590
56541
  *
56591
56542
  * ```html
56592
56543
  * <igx-grid [data]="localData" [showToolbar]="true" [autoGenerate]="true" [exportCsv]="true"></igx-grid>
@@ -56604,9 +56555,9 @@
56604
56555
  });
56605
56556
  Object.defineProperty(IgxGridBaseDirective.prototype, "exportText", {
56606
56557
  /**
56607
- * Gets/Sets the textual content for the main export button.
56558
+ * @deprecated `exportText` is deprecated
56608
56559
  *
56609
- * @deprecated
56560
+ * Gets/Sets the textual content for the main export button.
56610
56561
  *
56611
56562
  * @example
56612
56563
  * ```html
@@ -56625,9 +56576,9 @@
56625
56576
  });
56626
56577
  Object.defineProperty(IgxGridBaseDirective.prototype, "exportExcelText", {
56627
56578
  /**
56628
- * Gets/Sets the textual content for the MS Excel export button.
56579
+ * @deprecated `exportExcelText` is deprecated
56629
56580
  *
56630
- * @deprecated
56581
+ * Gets/Sets the textual content for the MS Excel export button.
56631
56582
  *
56632
56583
  * ```html
56633
56584
  * <igx-grid [exportExcelText]="'My Excel Exporter" [showToolbar]="true" [exportText]="'My Exporter'" [exportCsv]="true"></igx-grid>
@@ -56645,9 +56596,9 @@
56645
56596
  });
56646
56597
  Object.defineProperty(IgxGridBaseDirective.prototype, "exportCsvText", {
56647
56598
  /**
56648
- * Gets/Sets the textual content for the CSV export button.
56599
+ * @deprecated `exportCsvText` is deprecated
56649
56600
  *
56650
- * @deprecated
56601
+ * Gets/Sets the textual content for the CSV export button.
56651
56602
  *
56652
56603
  * @example
56653
56604
  * ```html
@@ -57913,9 +57864,10 @@
57913
57864
  });
57914
57865
  Object.defineProperty(IgxGridBaseDirective.prototype, "totalPages", {
57915
57866
  /**
57867
+ * @deprecated in version 12.1.0. Use the corresponding property exposed by the `igx-paginator`
57868
+ *
57916
57869
  * Gets the total number of pages.
57917
57870
  *
57918
- * @deprecated in version 12.1.0
57919
57871
  * @example
57920
57872
  * ```typescript
57921
57873
  * const totalPages = this.grid.totalPages;
@@ -57930,9 +57882,10 @@
57930
57882
  });
57931
57883
  Object.defineProperty(IgxGridBaseDirective.prototype, "isFirstPage", {
57932
57884
  /**
57885
+ * @deprecated in version 12.1.0. Use the corresponding property exposed by the `igx-paginator`
57886
+ *
57933
57887
  * Gets if the current page is the first page.
57934
57888
  *
57935
- * @deprecated in version 12.1.0
57936
57889
  * @example
57937
57890
  * ```typescript
57938
57891
  * const firstPage = this.grid.isFirstPage;
@@ -57945,9 +57898,10 @@
57945
57898
  configurable: true
57946
57899
  });
57947
57900
  /**
57901
+ * @deprecated in version 12.1.0. Use the corresponding method exposed by the `igx-paginator`
57902
+ *
57948
57903
  * Goes to the next page, if the grid is not already at the last page.
57949
57904
  *
57950
- * @deprecated in version 12.1.0
57951
57905
  * @example
57952
57906
  * ```typescript
57953
57907
  * this.grid1.nextPage();
@@ -57959,9 +57913,10 @@
57959
57913
  (_a = this.paginator) === null || _a === void 0 ? void 0 : _a.nextPage();
57960
57914
  };
57961
57915
  /**
57916
+ * @deprecated in version 12.1.0. Use the corresponding method exposed by the `igx-paginator`
57917
+ *
57962
57918
  * Goes to the previous page, if the grid is not already at the first page.
57963
57919
  *
57964
- * @deprecated in version 12.1.0
57965
57920
  * @example
57966
57921
  * ```typescript
57967
57922
  * this.grid1.previousPage();
@@ -58002,9 +57957,10 @@
58002
57957
  });
58003
57958
  Object.defineProperty(IgxGridBaseDirective.prototype, "isLastPage", {
58004
57959
  /**
57960
+ * @deprecated in version 12.1.0. Use the corresponding property exposed by the `igx-paginator`
57961
+ *
58005
57962
  * Returns if the current page is the last page.
58006
57963
  *
58007
- * @deprecated in version 12.1.0
58008
57964
  * @example
58009
57965
  * ```typescript
58010
57966
  * const lastPage = this.grid.isLastPage;
@@ -58121,6 +58077,8 @@
58121
58077
  this._columnsReordered(column);
58122
58078
  };
58123
58079
  /**
58080
+ * @deprecated in version 12.1.0. Use the corresponding method exposed by the `igx-paginator`
58081
+ *
58124
58082
  * Goes to the desired page index.
58125
58083
  *
58126
58084
  * @example
@@ -59871,6 +59829,9 @@
59871
59829
  else {
59872
59830
  this._transactions = this.transactionFactory.create("None" /* None */);
59873
59831
  }
59832
+ if (this.dataCloneStrategy) {
59833
+ this._transactions.cloneStrategy = this.dataCloneStrategy;
59834
+ }
59874
59835
  };
59875
59836
  IgxGridBaseDirective.prototype.subscribeToTransactions = function () {
59876
59837
  this.transactionChange$.next();
@@ -61257,6 +61218,7 @@
61257
61218
  primaryKey: [{ type: i0.Input }],
61258
61219
  uniqueColumnValuesStrategy: [{ type: i0.Input }],
61259
61220
  excelStyleFilteringComponents: [{ type: i0.ContentChildren, args: [IgxGridExcelStyleFilteringComponent, { read: IgxGridExcelStyleFilteringComponent, descendants: false },] }],
61221
+ dataCloneStrategy: [{ type: i0.Input }],
61260
61222
  cellClick: [{ type: i0.Output }],
61261
61223
  selected: [{ type: i0.Output }],
61262
61224
  rowSelected: [{ type: i0.Output }],
@@ -61411,24 +61373,9 @@
61411
61373
  totalRecords: [{ type: i0.Input }],
61412
61374
  selectRowOnClick: [{ type: i0.Input }]
61413
61375
  };
61414
- __decorate([
61415
- DeprecateProperty('`pageChange` is deprecated. Use the corresponding output exposed by the `igx-paginator` component instead.')
61416
- ], IgxGridBaseDirective.prototype, "pageChange", void 0);
61417
- __decorate([
61418
- DeprecateProperty('`perPageChange` is deprecated. Use the corresponding output exposed by the `igx-paginator` component instead.')
61419
- ], IgxGridBaseDirective.prototype, "perPageChange", void 0);
61420
- __decorate([
61421
- DeprecateProperty('`evenRowCSS` is deprecated. We suggest using `rowClasses` property instead.')
61422
- ], IgxGridBaseDirective.prototype, "evenRowCSS", void 0);
61423
- __decorate([
61424
- DeprecateProperty('`oddRowCSS` is deprecated. We suggest using `rowClasses` property instead.')
61425
- ], IgxGridBaseDirective.prototype, "oddRowCSS", void 0);
61426
61376
  __decorate([
61427
61377
  WatchChanges()
61428
61378
  ], IgxGridBaseDirective.prototype, "primaryKey", void 0);
61429
- __decorate([
61430
- DeprecateProperty('`pagingDone` is deprecated. Use the corresponding output exposed by the `igx-paginator` component instead.')
61431
- ], IgxGridBaseDirective.prototype, "pagingDone", void 0);
61432
61379
  __decorate([
61433
61380
  WatchChanges()
61434
61381
  ], IgxGridBaseDirective.prototype, "filteringLogic", null);
@@ -61438,18 +61385,6 @@
61438
61385
  __decorate([
61439
61386
  WatchChanges()
61440
61387
  ], IgxGridBaseDirective.prototype, "advancedFilteringExpressionsTree", null);
61441
- __decorate([
61442
- DeprecateProperty('`paging` is deprecated')
61443
- ], IgxGridBaseDirective.prototype, "paging", null);
61444
- __decorate([
61445
- DeprecateProperty('`page` is deprecated. Use `page` property form `paginator` component instead.')
61446
- ], IgxGridBaseDirective.prototype, "page", null);
61447
- __decorate([
61448
- DeprecateProperty('`perPage` is deprecated. Use `perPage` property from `paginator` component instead.')
61449
- ], IgxGridBaseDirective.prototype, "perPage", null);
61450
- __decorate([
61451
- DeprecateProperty('`columnHiding` is deprecated.')
61452
- ], IgxGridBaseDirective.prototype, "columnHiding", null);
61453
61388
  __decorate([
61454
61389
  WatchChanges()
61455
61390
  ], IgxGridBaseDirective.prototype, "hideRowSelectors", null);
@@ -61471,42 +61406,9 @@
61471
61406
  __decorate([
61472
61407
  WatchChanges()
61473
61408
  ], IgxGridBaseDirective.prototype, "isLoading", null);
61474
- __decorate([
61475
- DeprecateProperty('`columnHidingTitle` is deprecated')
61476
- ], IgxGridBaseDirective.prototype, "columnHidingTitle", null);
61477
- __decorate([
61478
- DeprecateProperty('`columnPinning` is deprecated')
61479
- ], IgxGridBaseDirective.prototype, "columnPinning", null);
61480
- __decorate([
61481
- DeprecateProperty('`columnPinningTitle` is deprecated')
61482
- ], IgxGridBaseDirective.prototype, "columnPinningTitle", null);
61483
61409
  __decorate([
61484
61410
  WatchChanges()
61485
61411
  ], IgxGridBaseDirective.prototype, "sortingExpressions", null);
61486
- __decorate([
61487
- DeprecateProperty('`pinnedColumnsText` is deprecated')
61488
- ], IgxGridBaseDirective.prototype, "pinnedColumnsText", null);
61489
- __decorate([
61490
- DeprecateProperty('`showToolbar` is deprecated')
61491
- ], IgxGridBaseDirective.prototype, "showToolbar", null);
61492
- __decorate([
61493
- DeprecateProperty('`toolbarTitle` is deprecated')
61494
- ], IgxGridBaseDirective.prototype, "toolbarTitle", null);
61495
- __decorate([
61496
- DeprecateProperty('`exportExcel` is deprecated')
61497
- ], IgxGridBaseDirective.prototype, "exportExcel", null);
61498
- __decorate([
61499
- DeprecateProperty('`exportCsv` is deprecated')
61500
- ], IgxGridBaseDirective.prototype, "exportCsv", null);
61501
- __decorate([
61502
- DeprecateProperty('`exportText` is deprecated')
61503
- ], IgxGridBaseDirective.prototype, "exportText", null);
61504
- __decorate([
61505
- DeprecateProperty('`exportExcelText` is deprecated')
61506
- ], IgxGridBaseDirective.prototype, "exportExcelText", null);
61507
- __decorate([
61508
- DeprecateProperty('`exportCsvText` is deprecated')
61509
- ], IgxGridBaseDirective.prototype, "exportCsvText", null);
61510
61412
  __decorate([
61511
61413
  WatchChanges()
61512
61414
  ], IgxGridBaseDirective.prototype, "cellSelection", null);
@@ -61516,24 +61418,6 @@
61516
61418
  __decorate([
61517
61419
  WatchChanges()
61518
61420
  ], IgxGridBaseDirective.prototype, "columnSelection", null);
61519
- __decorate([
61520
- DeprecateProperty('`totalPages` is deprecated. Use the corresponding property exposed by the `igx-paginator`.')
61521
- ], IgxGridBaseDirective.prototype, "totalPages", null);
61522
- __decorate([
61523
- DeprecateProperty('`isFirstPage` is deprecated. Use the corresponding property exposed by the `igx-paginator`.')
61524
- ], IgxGridBaseDirective.prototype, "isFirstPage", null);
61525
- __decorate([
61526
- DeprecateMethod('Use the corresponding method exposed by the `igx-paginator`.')
61527
- ], IgxGridBaseDirective.prototype, "nextPage", null);
61528
- __decorate([
61529
- DeprecateMethod('Use the corresponding method exposed by the `igx-paginator`.')
61530
- ], IgxGridBaseDirective.prototype, "previousPage", null);
61531
- __decorate([
61532
- DeprecateProperty('`isLastPage` is deprecated. Use the corresponding property exposed by the `igx-paginator`.')
61533
- ], IgxGridBaseDirective.prototype, "isLastPage", null);
61534
- __decorate([
61535
- DeprecateMethod('Use the corresponding method exposed by the `igx-paginator`.')
61536
- ], IgxGridBaseDirective.prototype, "paginate", null);
61537
61421
  __decorate([
61538
61422
  WatchChanges()
61539
61423
  ], IgxGridBaseDirective.prototype, "selectRowOnClick", null);
@@ -61572,6 +61456,22 @@
61572
61456
  enumerable: false,
61573
61457
  configurable: true
61574
61458
  });
61459
+ Object.defineProperty(BaseRow.prototype, "addRowUI", {
61460
+ /**
61461
+ * Gets if this represents add row UI
61462
+ *
61463
+ * ```typescript
61464
+ * let isAddRow = row.addRowUI;
61465
+ * ```
61466
+ */
61467
+ get: function () {
61468
+ return !!this.grid.crudService.row &&
61469
+ this.grid.crudService.row.getClassName() === IgxAddRow.name &&
61470
+ this.grid.crudService.row.id === this.key;
61471
+ },
61472
+ enumerable: false,
61473
+ configurable: true
61474
+ });
61575
61475
  Object.defineProperty(BaseRow.prototype, "data", {
61576
61476
  /**
61577
61477
  * The data record that populates the row.
@@ -61583,7 +61483,7 @@
61583
61483
  get: function () {
61584
61484
  var _a, _b;
61585
61485
  if (this.inEditMode) {
61586
- return mergeWith__default['default'](cloneValue((_a = this._data) !== null && _a !== void 0 ? _a : this.grid.dataView[this.index]), this.grid.transactions.getAggregatedValue(this.key, false), function (objValue, srcValue) {
61486
+ return mergeWith__default['default'](this.grid.dataCloneStrategy.clone((_a = this._data) !== null && _a !== void 0 ? _a : this.grid.dataView[this.index]), this.grid.transactions.getAggregatedValue(this.key, false), function (objValue, srcValue) {
61587
61487
  if (Array.isArray(srcValue)) {
61588
61488
  return objValue = srcValue;
61589
61489
  }
@@ -61596,7 +61496,7 @@
61596
61496
  });
61597
61497
  Object.defineProperty(BaseRow.prototype, "rowData", {
61598
61498
  /**
61599
- * @deprecated Use 'data' instead.
61499
+ * @deprecated Use 'data' instead
61600
61500
  *
61601
61501
  * The data record that populates the row
61602
61502
  */
@@ -61608,8 +61508,7 @@
61608
61508
  });
61609
61509
  Object.defineProperty(BaseRow.prototype, "rowID", {
61610
61510
  /**
61611
- * @deprecated Use 'key' instead.
61612
- *
61511
+ * @deprecated Use 'key' instead
61613
61512
  */
61614
61513
  get: function () {
61615
61514
  return this.key;
@@ -61815,12 +61714,6 @@
61815
61714
  };
61816
61715
  return BaseRow;
61817
61716
  }());
61818
- __decorate([
61819
- DeprecateProperty("'rowData' property is deprecated. Use 'data' instead.")
61820
- ], BaseRow.prototype, "rowData", null);
61821
- __decorate([
61822
- DeprecateProperty("'rowID' property is deprecated. Use 'key' instead.")
61823
- ], BaseRow.prototype, "rowID", null);
61824
61717
  var IgxGridRow = /** @class */ (function (_super) {
61825
61718
  __extends(IgxGridRow, _super);
61826
61719
  /**
@@ -61950,7 +61843,7 @@
61950
61843
  get: function () {
61951
61844
  var _a;
61952
61845
  if (this.inEditMode) {
61953
- return mergeWith__default['default'](cloneValue((_a = this._data) !== null && _a !== void 0 ? _a : this.grid.dataView[this.index]), this.grid.transactions.getAggregatedValue(this.key, false), function (objValue, srcValue) {
61846
+ return mergeWith__default['default'](this.grid.dataCloneStrategy.clone((_a = this._data) !== null && _a !== void 0 ? _a : this.grid.dataView[this.index]), this.grid.transactions.getAggregatedValue(this.key, false), function (objValue, srcValue) {
61954
61847
  if (Array.isArray(srcValue)) {
61955
61848
  return objValue = srcValue;
61956
61849
  }
@@ -63063,17 +62956,6 @@
63063
62956
  enumerable: false,
63064
62957
  configurable: true
63065
62958
  });
63066
- /**
63067
- * @deprecated
63068
- * Gets whether the cell is selected.
63069
- * ```typescript
63070
- * let isCellSelected = thid.cell.isCellSelected();
63071
- * ```
63072
- * @memberof IgxGridCellComponent
63073
- */
63074
- IgxGridCellComponent.prototype.isCellSelected = function () {
63075
- return this.selectionService.selected(this.selectionNode);
63076
- };
63077
62959
  /**
63078
62960
  * @hidden
63079
62961
  * @internal
@@ -63385,9 +63267,6 @@
63385
63267
  onClick: [{ type: i0.HostListener, args: ['click', ['$event'],] }],
63386
63268
  onContextMenu: [{ type: i0.HostListener, args: ['contextmenu', ['$event'],] }]
63387
63269
  };
63388
- __decorate([
63389
- DeprecateMethod("'isCellSelected' is deprecated. Use 'selected' property instead.")
63390
- ], IgxGridCellComponent.prototype, "isCellSelected", null);
63391
63270
 
63392
63271
  var IgxGridFooterComponent = /** @class */ (function () {
63393
63272
  function IgxGridFooterComponent() {
@@ -63790,9 +63669,10 @@
63790
63669
  }
63791
63670
  Object.defineProperty(IgxColumnActionsComponent.prototype, "columns", {
63792
63671
  /**
63672
+ * @deprecated Use grid input instead.
63673
+ *
63793
63674
  * Gets the grid columns to provide an action for.
63794
63675
  *
63795
- * @deprecated
63796
63676
  * @example
63797
63677
  * ```typescript
63798
63678
  * let gridColumns = this.columnActions.columns;
@@ -64072,9 +63952,6 @@
64072
63952
  checkAllText: [{ type: i0.Input }],
64073
63953
  id: [{ type: i0.HostBinding, args: ['attr.id',] }, { type: i0.Input }]
64074
63954
  };
64075
- __decorate([
64076
- DeprecateProperty("Deprecated. Use 'grid' input instead.")
64077
- ], IgxColumnActionsComponent.prototype, "columns", null);
64078
63955
 
64079
63956
  /**
64080
63957
  * @hidden
@@ -64320,7 +64197,7 @@
64320
64197
  IgxGridTransactionPipe.prototype.transform = function (collection, _id, _pipeTrigger) {
64321
64198
  var grid = this.gridAPI.grid;
64322
64199
  if (grid.transactions.enabled) {
64323
- var result = DataUtil.mergeTransactions(cloneArray(collection), grid.transactions.getAggregatedChanges(true), grid.primaryKey);
64200
+ var result = DataUtil.mergeTransactions(cloneArray(collection), grid.transactions.getAggregatedChanges(true), grid.primaryKey, grid.dataCloneStrategy);
64324
64201
  return result;
64325
64202
  }
64326
64203
  return collection;
@@ -68946,7 +68823,8 @@
68946
68823
  configurable: true
68947
68824
  });
68948
68825
  /**
68949
- * @deprecated
68826
+ * @deprecated in version 12.1.0. Use `getCellByColumn` or `getCellByKey` instead
68827
+ *
68950
68828
  * Returns a `CellType` object that matches the conditions.
68951
68829
  *
68952
68830
  * @example
@@ -69773,9 +69651,6 @@
69773
69651
  dropAreaMessage: [{ type: i0.Input }],
69774
69652
  showGroupArea: [{ type: i0.Input }]
69775
69653
  };
69776
- __decorate([
69777
- DeprecateMethod('`getCellByColumnVisibleIndex` is deprecated. Use `getCellByColumn` or `getCellByKey` instead')
69778
- ], IgxGridComponent.prototype, "getCellByColumnVisibleIndex", null);
69779
69654
 
69780
69655
  var IgxGridStateDirective = /** @class */ (function () {
69781
69656
  /**
@@ -72951,7 +72826,8 @@
72951
72826
  configurable: true
72952
72827
  });
72953
72828
  /**
72954
- * @deprecated
72829
+ * @deprecated in version 12.1.0. Use `getCellByColumn` or `getCellByKey` instead
72830
+ *
72955
72831
  * Returns a `CellType` object that matches the conditions.
72956
72832
  *
72957
72833
  * @example
@@ -73663,9 +73539,6 @@
73663
73539
  expansionDepth: [{ type: i0.Input }],
73664
73540
  rowLoadingIndicatorTemplate: [{ type: i0.Input }]
73665
73541
  };
73666
- __decorate([
73667
- DeprecateMethod('`getCellByColumnVisibleIndex` is deprecated. Use `getCellByColumn` or `getCellByKey` instead')
73668
- ], IgxTreeGridComponent.prototype, "getCellByColumnVisibleIndex", null);
73669
73542
 
73670
73543
  var IgxTreeGridRowComponent = /** @class */ (function (_super) {
73671
73544
  __extends(IgxTreeGridRowComponent, _super);
@@ -74130,11 +74003,11 @@
74130
74003
  var childDataKey = grid.childDataKey;
74131
74004
  if (foreignKey) {
74132
74005
  var flatDataClone = cloneArray(collection);
74133
- return DataUtil.mergeTransactions(flatDataClone, aggregatedChanges, grid.primaryKey);
74006
+ return DataUtil.mergeTransactions(flatDataClone, aggregatedChanges, grid.primaryKey, grid.dataCloneStrategy);
74134
74007
  }
74135
74008
  else if (childDataKey) {
74136
74009
  var hierarchicalDataClone = cloneHierarchicalArray(collection, childDataKey);
74137
- return DataUtil.mergeHierarchicalTransactions(hierarchicalDataClone, aggregatedChanges, childDataKey, grid.primaryKey);
74010
+ return DataUtil.mergeHierarchicalTransactions(hierarchicalDataClone, aggregatedChanges, childDataKey, grid.primaryKey, grid.dataCloneStrategy);
74138
74011
  }
74139
74012
  }
74140
74013
  }
@@ -76163,7 +76036,8 @@
76163
76036
  configurable: true
76164
76037
  });
76165
76038
  /**
76166
- * @deprecated
76039
+ * @deprecated in version 12.1.0. Use `getCellByColumn` or `getCellByKey` instead
76040
+ *
76167
76041
  * Returns a `CellType` object that matches the conditions.
76168
76042
  *
76169
76043
  * @example
@@ -76859,9 +76733,6 @@
76859
76733
  data: [{ type: i0.Input }],
76860
76734
  expandChildren: [{ type: i0.Input }]
76861
76735
  };
76862
- __decorate([
76863
- DeprecateMethod('`getCellByColumnVisibleIndex` is deprecated. Use `getCellByColumn` or `getCellByKey` instead')
76864
- ], IgxHierarchicalGridComponent.prototype, "getCellByColumnVisibleIndex", null);
76865
76736
 
76866
76737
  var IgxHierarchicalGridCellComponent = /** @class */ (function (_super) {
76867
76738
  __extends(IgxHierarchicalGridCellComponent, _super);
@@ -81859,6 +81730,8 @@
81859
81730
  }
81860
81731
  Object.defineProperty(IgxToastComponent.prototype, "position", {
81861
81732
  /**
81733
+ * @deprecated in version 12.2.3. We suggest using `positionSettings` property instead
81734
+ *
81862
81735
  * Sets/gets the position of the toast.
81863
81736
  * If not set, the `position` attribute will have value `IgxToastPosition.Bottom`.
81864
81737
  * ```html
@@ -82015,9 +81888,6 @@
82015
81888
  position: [{ type: i0.Input }],
82016
81889
  positionSettings: [{ type: i0.Input }]
82017
81890
  };
82018
- __decorate([
82019
- DeprecateProperty('`position` is deprecated. We suggest using `positionSettings` property instead.')
82020
- ], IgxToastComponent.prototype, "position", null);
82021
81891
  /**
82022
81892
  * @hidden
82023
81893
  */
@@ -85773,6 +85643,7 @@
85773
85643
  exports.DEFAULT_OWNER = DEFAULT_OWNER;
85774
85644
  exports.DataUtil = DataUtil;
85775
85645
  exports.DateRangePickerFormatPipe = DateRangePickerFormatPipe;
85646
+ exports.DefaultDataCloneStrategy = DefaultDataCloneStrategy;
85776
85647
  exports.DefaultSortingStrategy = DefaultSortingStrategy;
85777
85648
  exports.DisplayDensity = DisplayDensity;
85778
85649
  exports.DisplayDensityBase = DisplayDensityBase;
@@ -86274,185 +86145,183 @@
86274
86145
  exports.ɵ2 = ɵ2;
86275
86146
  exports.ɵa = IgxActionStripMenuItemDirective;
86276
86147
  exports.ɵb = IGX_DROPDOWN_BASE;
86277
- exports.ɵba = IgxGridActionButtonComponent;
86278
- exports.ɵbb = ToggleAnimationPlayer;
86279
- exports.ɵbc = IgxExpansionPanelTitleDirective;
86280
- exports.ɵbd = IgxExpansionPanelDescriptionDirective;
86281
- exports.ɵbe = IgxExpansionPanelIconDirective;
86282
- exports.ɵbf = IgxBannerActionsDirective;
86283
- exports.ɵbg = IgxDaysViewNavigationService;
86284
- exports.ɵbh = IgxDayItemComponent;
86285
- exports.ɵbi = IgxMonthViewSlotsCalendar;
86286
- exports.ɵbj = IgxGetViewDateCalendar;
86287
- exports.ɵbk = IgxCarouselIndicatorDirective;
86288
- exports.ɵbl = IgxCarouselNextButtonDirective;
86289
- exports.ɵbm = IgxCarouselPrevButtonDirective;
86290
- exports.ɵbn = IgxComboAPIService;
86291
- exports.ɵbo = IGX_COMBO_COMPONENT;
86292
- exports.ɵbq = IgxComboDropDownComponent;
86293
- exports.ɵbr = IgxComboItemComponent;
86294
- exports.ɵbs = IgxComboHeaderDirective;
86295
- exports.ɵbt = IgxComboFooterDirective;
86296
- exports.ɵbu = IgxComboItemDirective;
86297
- exports.ɵbv = IgxComboEmptyDirective;
86298
- exports.ɵbw = IgxComboHeaderItemDirective;
86299
- exports.ɵbx = IgxComboAddItemDirective;
86300
- exports.ɵby = IgxComboToggleIconDirective;
86301
- exports.ɵbz = IgxComboClearIconDirective;
86302
- exports.ɵca = IgxComboFilteringPipe;
86303
- exports.ɵcb = IgxComboGroupingPipe;
86304
- exports.ɵcc = IgxComboAddItemComponent;
86305
- exports.ɵcd = PickerBaseDirective;
86306
- exports.ɵce = IgxCalendarContainerComponent;
86307
- exports.ɵcf = IgxCalendarContainerModule;
86308
- exports.ɵcg = IgxDialogTitleDirective;
86309
- exports.ɵch = IgxDialogActionsDirective;
86310
- exports.ɵci = IgxCellCrudState;
86311
- exports.ɵcj = IgxRowCrudState;
86312
- exports.ɵck = IgxRowAddCrudState;
86313
- exports.ɵcl = IgxGridCRUDService;
86314
- exports.ɵcm = IgxColumnMovingService;
86315
- exports.ɵcn = IgxExcelStyleCustomDialogComponent;
86316
- exports.ɵco = IgxExcelStyleDefaultExpressionComponent;
86317
- exports.ɵcp = IgxExcelStyleDateExpressionComponent;
86318
- exports.ɵcq = HammerGesturesManager;
86319
- exports.ɵcr = WatchChanges;
86320
- exports.ɵcs = WatchColumnChanges;
86321
- exports.ɵct = notifyChanges;
86322
- exports.ɵcu = IgxNotificationsDirective;
86323
- exports.ɵcv = IgxGridColumnResizerComponent;
86324
- exports.ɵcw = IgxColumnResizerDirective;
86325
- exports.ɵcx = IgxColumnResizingService;
86326
- exports.ɵcy = IgxRowSelectorDirective;
86327
- exports.ɵcz = IgxGroupByRowSelectorDirective;
86148
+ exports.ɵba = IgxExpansionPanelTitleDirective;
86149
+ exports.ɵbb = IgxExpansionPanelDescriptionDirective;
86150
+ exports.ɵbc = IgxExpansionPanelIconDirective;
86151
+ exports.ɵbd = IgxBannerActionsDirective;
86152
+ exports.ɵbe = IgxDaysViewNavigationService;
86153
+ exports.ɵbf = IgxDayItemComponent;
86154
+ exports.ɵbg = IgxMonthViewSlotsCalendar;
86155
+ exports.ɵbh = IgxGetViewDateCalendar;
86156
+ exports.ɵbi = IgxCarouselIndicatorDirective;
86157
+ exports.ɵbj = IgxCarouselNextButtonDirective;
86158
+ exports.ɵbk = IgxCarouselPrevButtonDirective;
86159
+ exports.ɵbl = IgxComboAPIService;
86160
+ exports.ɵbm = IGX_COMBO_COMPONENT;
86161
+ exports.ɵbo = IgxComboDropDownComponent;
86162
+ exports.ɵbp = IgxComboItemComponent;
86163
+ exports.ɵbq = IgxComboHeaderDirective;
86164
+ exports.ɵbr = IgxComboFooterDirective;
86165
+ exports.ɵbs = IgxComboItemDirective;
86166
+ exports.ɵbt = IgxComboEmptyDirective;
86167
+ exports.ɵbu = IgxComboHeaderItemDirective;
86168
+ exports.ɵbv = IgxComboAddItemDirective;
86169
+ exports.ɵbw = IgxComboToggleIconDirective;
86170
+ exports.ɵbx = IgxComboClearIconDirective;
86171
+ exports.ɵby = IgxComboFilteringPipe;
86172
+ exports.ɵbz = IgxComboGroupingPipe;
86173
+ exports.ɵca = IgxComboAddItemComponent;
86174
+ exports.ɵcb = PickerBaseDirective;
86175
+ exports.ɵcc = IgxCalendarContainerComponent;
86176
+ exports.ɵcd = IgxCalendarContainerModule;
86177
+ exports.ɵce = IgxDialogTitleDirective;
86178
+ exports.ɵcf = IgxDialogActionsDirective;
86179
+ exports.ɵcg = IgxCellCrudState;
86180
+ exports.ɵch = IgxRowCrudState;
86181
+ exports.ɵci = IgxRowAddCrudState;
86182
+ exports.ɵcj = IgxGridCRUDService;
86183
+ exports.ɵck = IgxColumnMovingService;
86184
+ exports.ɵcl = IgxExcelStyleCustomDialogComponent;
86185
+ exports.ɵcm = IgxExcelStyleDefaultExpressionComponent;
86186
+ exports.ɵcn = IgxExcelStyleDateExpressionComponent;
86187
+ exports.ɵco = HammerGesturesManager;
86188
+ exports.ɵcp = WatchChanges;
86189
+ exports.ɵcq = WatchColumnChanges;
86190
+ exports.ɵcr = notifyChanges;
86191
+ exports.ɵcs = IgxNotificationsDirective;
86192
+ exports.ɵct = IgxGridColumnResizerComponent;
86193
+ exports.ɵcu = IgxColumnResizerDirective;
86194
+ exports.ɵcv = IgxColumnResizingService;
86195
+ exports.ɵcw = IgxRowSelectorDirective;
86196
+ exports.ɵcx = IgxGroupByRowSelectorDirective;
86197
+ exports.ɵcy = IgxHeadSelectorDirective;
86198
+ exports.ɵcz = IgxRowDragDirective;
86328
86199
  exports.ɵd = IgxGridSelectionService;
86329
- exports.ɵda = IgxHeadSelectorDirective;
86330
- exports.ɵdb = IgxRowDragDirective;
86331
- exports.ɵdc = IgxDragIndicatorIconDirective;
86332
- exports.ɵdd = IgxRowDragGhostDirective;
86333
- exports.ɵde = IgxRowDragModule;
86334
- exports.ɵdf = IgxGridHeaderRowComponent;
86335
- exports.ɵdg = IgxGridHeaderGroupComponent;
86336
- exports.ɵdh = IgxGridHeaderComponent;
86337
- exports.ɵdi = IgxGridFilteringCellComponent;
86338
- exports.ɵdj = IgxFilteringService;
86339
- exports.ɵdk = IgxGridFilteringRowComponent;
86340
- exports.ɵdl = IgxGridGroupByAreaComponent;
86341
- exports.ɵdm = IgxGroupByAreaDirective;
86342
- exports.ɵdn = IgxGroupByMetaPipe;
86343
- exports.ɵdo = IgxTemplateOutletDirective;
86344
- exports.ɵdp = IgxTemplateOutletModule;
86345
- exports.ɵdq = IgxRowEditTemplateDirective;
86346
- exports.ɵdr = IgxRowEditTextDirective;
86347
- exports.ɵds = IgxRowAddTextDirective;
86348
- exports.ɵdt = IgxRowEditActionsDirective;
86349
- exports.ɵdu = IgxRowEditTabStopDirective;
86350
- exports.ɵdv = IgxSummaryRowComponent;
86351
- exports.ɵdw = IgxSummaryCellComponent;
86352
- exports.ɵdx = IgxRowDirective;
86353
- exports.ɵdy = IgxGridNavigationService;
86354
- exports.ɵdz = IgxGridSummaryService;
86355
- exports.ɵea = ConnectedPositioningStrategy;
86356
- exports.ɵeb = IgxGridGroupByRowComponent;
86357
- exports.ɵec = IgxTreeGridSelectionService;
86358
- exports.ɵed = IgxTreeGridGroupByAreaComponent;
86359
- exports.ɵee = IgxRowLoadingIndicatorTemplateDirective;
86360
- exports.ɵef = IgxHierarchicalGridNavigationService;
86361
- exports.ɵeg = IgxChildGridRowComponent;
86362
- exports.ɵeh = IgxGridCellComponent;
86363
- exports.ɵei = IgxGridFooterComponent;
86364
- exports.ɵej = IgxAdvancedFilteringDialogComponent;
86365
- exports.ɵek = IgxColumnHidingDirective;
86366
- exports.ɵel = IgxColumnPinningDirective;
86367
- exports.ɵem = IgxGridSharedModules;
86368
- exports.ɵen = IgxProcessBarTextTemplateDirective;
86369
- exports.ɵeo = IgxProgressBarGradientDirective;
86370
- exports.ɵep = DIR_DOCUMENT_FACTORY;
86371
- exports.ɵeq = DIR_DOCUMENT;
86372
- exports.ɵer = IgxDirectionality;
86373
- exports.ɵes = IgxSelectItemNavigationDirective;
86374
- exports.ɵet = IGX_TIME_PICKER_COMPONENT;
86375
- exports.ɵev = IgxItemListDirective;
86376
- exports.ɵew = IgxTimeItemDirective;
86377
- exports.ɵex = IgxTimePickerTemplateDirective;
86378
- exports.ɵey = IgxTimePickerActionsDirective;
86379
- exports.ɵez = TimeFormatPipe;
86200
+ exports.ɵda = IgxDragIndicatorIconDirective;
86201
+ exports.ɵdb = IgxRowDragGhostDirective;
86202
+ exports.ɵdc = IgxRowDragModule;
86203
+ exports.ɵdd = IgxGridHeaderRowComponent;
86204
+ exports.ɵde = IgxGridHeaderGroupComponent;
86205
+ exports.ɵdf = IgxGridHeaderComponent;
86206
+ exports.ɵdg = IgxGridFilteringCellComponent;
86207
+ exports.ɵdh = IgxFilteringService;
86208
+ exports.ɵdi = IgxGridFilteringRowComponent;
86209
+ exports.ɵdj = IgxGridGroupByAreaComponent;
86210
+ exports.ɵdk = IgxGroupByAreaDirective;
86211
+ exports.ɵdl = IgxGroupByMetaPipe;
86212
+ exports.ɵdm = IgxTemplateOutletDirective;
86213
+ exports.ɵdn = IgxTemplateOutletModule;
86214
+ exports.ɵdo = IgxRowEditTemplateDirective;
86215
+ exports.ɵdp = IgxRowEditTextDirective;
86216
+ exports.ɵdq = IgxRowAddTextDirective;
86217
+ exports.ɵdr = IgxRowEditActionsDirective;
86218
+ exports.ɵds = IgxRowEditTabStopDirective;
86219
+ exports.ɵdt = IgxSummaryRowComponent;
86220
+ exports.ɵdu = IgxSummaryCellComponent;
86221
+ exports.ɵdv = IgxRowDirective;
86222
+ exports.ɵdw = IgxGridNavigationService;
86223
+ exports.ɵdx = IgxGridSummaryService;
86224
+ exports.ɵdy = ConnectedPositioningStrategy;
86225
+ exports.ɵdz = IgxGridGroupByRowComponent;
86226
+ exports.ɵea = IgxTreeGridSelectionService;
86227
+ exports.ɵeb = IgxTreeGridGroupByAreaComponent;
86228
+ exports.ɵec = IgxRowLoadingIndicatorTemplateDirective;
86229
+ exports.ɵed = IgxHierarchicalGridNavigationService;
86230
+ exports.ɵee = IgxChildGridRowComponent;
86231
+ exports.ɵef = IgxGridCellComponent;
86232
+ exports.ɵeg = IgxGridFooterComponent;
86233
+ exports.ɵeh = IgxAdvancedFilteringDialogComponent;
86234
+ exports.ɵei = IgxColumnHidingDirective;
86235
+ exports.ɵej = IgxColumnPinningDirective;
86236
+ exports.ɵek = IgxGridSharedModules;
86237
+ exports.ɵel = IgxProcessBarTextTemplateDirective;
86238
+ exports.ɵem = IgxProgressBarGradientDirective;
86239
+ exports.ɵen = DIR_DOCUMENT_FACTORY;
86240
+ exports.ɵeo = DIR_DOCUMENT;
86241
+ exports.ɵep = IgxDirectionality;
86242
+ exports.ɵeq = IgxSelectItemNavigationDirective;
86243
+ exports.ɵer = IGX_TIME_PICKER_COMPONENT;
86244
+ exports.ɵet = IgxItemListDirective;
86245
+ exports.ɵeu = IgxTimeItemDirective;
86246
+ exports.ɵev = IgxTimePickerTemplateDirective;
86247
+ exports.ɵew = IgxTimePickerActionsDirective;
86248
+ exports.ɵex = TimeFormatPipe;
86249
+ exports.ɵey = TimeItemPipe;
86250
+ exports.ɵez = IgxGridPipesModule;
86380
86251
  exports.ɵf = IGX_EXPANSION_PANEL_COMPONENT;
86381
- exports.ɵfa = TimeItemPipe;
86382
- exports.ɵfb = IgxGridPipesModule;
86383
- exports.ɵfc = IgxGridCellStyleClassesPipe;
86384
- exports.ɵfd = IgxGridCellStylesPipe;
86385
- exports.ɵfe = IgxGridRowClassesPipe;
86386
- exports.ɵff = IgxGridRowStylesPipe;
86387
- exports.ɵfg = IgxGridNotGroupedPipe;
86388
- exports.ɵfh = IgxGridTopLevelColumns;
86389
- exports.ɵfi = IgxGridFilterConditionPipe;
86390
- exports.ɵfj = IgxGridTransactionPipe;
86391
- exports.ɵfk = IgxGridPaginatorOptionsPipe;
86392
- exports.ɵfl = IgxHasVisibleColumnsPipe;
86393
- exports.ɵfm = IgxGridRowPinningPipe;
86394
- exports.ɵfn = IgxColumnActionEnabledPipe;
86395
- exports.ɵfo = IgxFilterActionColumnsPipe;
86396
- exports.ɵfp = IgxSortActionColumnsPipe;
86397
- exports.ɵfq = IgxGridDataMapperPipe;
86398
- exports.ɵfr = IgxStringReplacePipe;
86399
- exports.ɵfs = IgxGridTransactionStatePipe;
86400
- exports.ɵft = IgxColumnFormatterPipe;
86401
- exports.ɵfu = IgxSummaryFormatterPipe;
86402
- exports.ɵfv = IgxGridAddRowPipe;
86403
- exports.ɵfw = IgxHeaderGroupWidthPipe;
86404
- exports.ɵfx = IgxHeaderGroupStylePipe;
86405
- exports.ɵfy = IgxGridColumnModule;
86406
- exports.ɵfz = IgxGridHeadersModule;
86252
+ exports.ɵfa = IgxGridCellStyleClassesPipe;
86253
+ exports.ɵfb = IgxGridCellStylesPipe;
86254
+ exports.ɵfc = IgxGridRowClassesPipe;
86255
+ exports.ɵfd = IgxGridRowStylesPipe;
86256
+ exports.ɵfe = IgxGridNotGroupedPipe;
86257
+ exports.ɵff = IgxGridTopLevelColumns;
86258
+ exports.ɵfg = IgxGridFilterConditionPipe;
86259
+ exports.ɵfh = IgxGridTransactionPipe;
86260
+ exports.ɵfi = IgxGridPaginatorOptionsPipe;
86261
+ exports.ɵfj = IgxHasVisibleColumnsPipe;
86262
+ exports.ɵfk = IgxGridRowPinningPipe;
86263
+ exports.ɵfl = IgxColumnActionEnabledPipe;
86264
+ exports.ɵfm = IgxFilterActionColumnsPipe;
86265
+ exports.ɵfn = IgxSortActionColumnsPipe;
86266
+ exports.ɵfo = IgxGridDataMapperPipe;
86267
+ exports.ɵfp = IgxStringReplacePipe;
86268
+ exports.ɵfq = IgxGridTransactionStatePipe;
86269
+ exports.ɵfr = IgxColumnFormatterPipe;
86270
+ exports.ɵfs = IgxSummaryFormatterPipe;
86271
+ exports.ɵft = IgxGridAddRowPipe;
86272
+ exports.ɵfu = IgxHeaderGroupWidthPipe;
86273
+ exports.ɵfv = IgxHeaderGroupStylePipe;
86274
+ exports.ɵfw = IgxGridColumnModule;
86275
+ exports.ɵfx = IgxGridHeadersModule;
86276
+ exports.ɵfy = SortingIndexPipe;
86277
+ exports.ɵfz = IgxGridFilteringModule;
86407
86278
  exports.ɵg = IGX_TREE_COMPONENT;
86408
- exports.ɵga = SortingIndexPipe;
86409
- exports.ɵgb = IgxGridFilteringModule;
86410
- exports.ɵgc = IgxColumnMovingModule;
86411
- exports.ɵgd = IgxColumnMovingDropDirective;
86412
- exports.ɵge = IgxColumnMovingDragDirective;
86413
- exports.ɵgf = IgxGridResizingModule;
86414
- exports.ɵgg = IgxResizeHandleDirective;
86415
- exports.ɵgh = IgxGridExcelStyleFilteringModule;
86416
- exports.ɵgi = IgxGridSelectionModule;
86417
- exports.ɵgj = IgxGridDragSelectDirective;
86418
- exports.ɵgk = IgxGridSummaryModule;
86419
- exports.ɵgl = IgxSummaryDataPipe;
86420
- exports.ɵgm = IgxGridToolbarModule;
86421
- exports.ɵgn = BaseToolbarDirective;
86422
- exports.ɵgo = BaseToolbarColumnActionsDirective;
86423
- exports.ɵgp = IgxGridRowComponent;
86424
- exports.ɵgq = IgxGridSortingPipe;
86425
- exports.ɵgr = IgxGridGroupingPipe;
86426
- exports.ɵgs = IgxGridPagingPipe;
86427
- exports.ɵgt = IgxGridFilteringPipe;
86428
- exports.ɵgu = IgxGridSummaryPipe;
86429
- exports.ɵgv = IgxGridDetailsPipe;
86430
- exports.ɵgw = IgxGridExpandableCellComponent;
86431
- exports.ɵgx = IgxTreeGridRowComponent;
86432
- exports.ɵgy = IgxTreeGridCellComponent;
86433
- exports.ɵgz = IgxTreeGridHierarchizingPipe;
86279
+ exports.ɵga = IgxColumnMovingModule;
86280
+ exports.ɵgb = IgxColumnMovingDropDirective;
86281
+ exports.ɵgc = IgxColumnMovingDragDirective;
86282
+ exports.ɵgd = IgxGridResizingModule;
86283
+ exports.ɵge = IgxResizeHandleDirective;
86284
+ exports.ɵgf = IgxGridExcelStyleFilteringModule;
86285
+ exports.ɵgg = IgxGridSelectionModule;
86286
+ exports.ɵgh = IgxGridDragSelectDirective;
86287
+ exports.ɵgi = IgxGridSummaryModule;
86288
+ exports.ɵgj = IgxSummaryDataPipe;
86289
+ exports.ɵgk = IgxGridToolbarModule;
86290
+ exports.ɵgl = BaseToolbarDirective;
86291
+ exports.ɵgm = BaseToolbarColumnActionsDirective;
86292
+ exports.ɵgn = IgxGridRowComponent;
86293
+ exports.ɵgo = IgxGridSortingPipe;
86294
+ exports.ɵgp = IgxGridGroupingPipe;
86295
+ exports.ɵgq = IgxGridPagingPipe;
86296
+ exports.ɵgr = IgxGridFilteringPipe;
86297
+ exports.ɵgs = IgxGridSummaryPipe;
86298
+ exports.ɵgt = IgxGridDetailsPipe;
86299
+ exports.ɵgu = IgxGridExpandableCellComponent;
86300
+ exports.ɵgv = IgxTreeGridRowComponent;
86301
+ exports.ɵgw = IgxTreeGridCellComponent;
86302
+ exports.ɵgx = IgxTreeGridHierarchizingPipe;
86303
+ exports.ɵgy = IgxTreeGridFlatteningPipe;
86304
+ exports.ɵgz = IgxTreeGridSortingPipe;
86434
86305
  exports.ɵh = IGX_TREE_NODE_COMPONENT;
86435
- exports.ɵha = IgxTreeGridFlatteningPipe;
86436
- exports.ɵhb = IgxTreeGridSortingPipe;
86437
- exports.ɵhc = IgxTreeGridPagingPipe;
86438
- exports.ɵhd = IgxTreeGridTransactionPipe;
86439
- exports.ɵhe = IgxTreeGridNormalizeRecordsPipe;
86440
- exports.ɵhf = IgxTreeGridAddRowPipe;
86441
- exports.ɵhg = IgxTreeGridFilteringPipe;
86442
- exports.ɵhh = IgxTreeGridSummaryPipe;
86443
- exports.ɵhi = IgxHierarchicalRowComponent;
86444
- exports.ɵhj = IgxHierarchicalGridCellComponent;
86445
- exports.ɵhk = IgxSliderThumbComponent;
86446
- exports.ɵhl = IgxThumbLabelComponent;
86447
- exports.ɵhm = IgxTicksComponent;
86448
- exports.ɵhn = IgxTickLabelsPipe;
86449
- exports.ɵho = IgxTabsBase;
86450
- exports.ɵhp = IgxTabHeaderBase;
86451
- exports.ɵhq = IgxTabContentBase;
86452
- exports.ɵhr = IgxSplitBarComponent;
86453
- exports.ɵhs = IgxTreeService;
86454
- exports.ɵht = IgxTreeSelectionService;
86455
- exports.ɵhu = IgxTreeNavigationService;
86306
+ exports.ɵha = IgxTreeGridPagingPipe;
86307
+ exports.ɵhb = IgxTreeGridTransactionPipe;
86308
+ exports.ɵhc = IgxTreeGridNormalizeRecordsPipe;
86309
+ exports.ɵhd = IgxTreeGridAddRowPipe;
86310
+ exports.ɵhe = IgxTreeGridFilteringPipe;
86311
+ exports.ɵhf = IgxTreeGridSummaryPipe;
86312
+ exports.ɵhg = IgxHierarchicalRowComponent;
86313
+ exports.ɵhh = IgxHierarchicalGridCellComponent;
86314
+ exports.ɵhi = IgxSliderThumbComponent;
86315
+ exports.ɵhj = IgxThumbLabelComponent;
86316
+ exports.ɵhk = IgxTicksComponent;
86317
+ exports.ɵhl = IgxTickLabelsPipe;
86318
+ exports.ɵhm = IgxTabsBase;
86319
+ exports.ɵhn = IgxTabHeaderBase;
86320
+ exports.ɵho = IgxTabContentBase;
86321
+ exports.ɵhp = IgxSplitBarComponent;
86322
+ exports.ɵhq = IgxTreeService;
86323
+ exports.ɵhr = IgxTreeSelectionService;
86324
+ exports.ɵhs = IgxTreeNavigationService;
86456
86325
  exports.ɵi = PlatformUtil;
86457
86326
  exports.ɵl = IgxInputGroupBase;
86458
86327
  exports.ɵm = IgxSelectionAPIService;
@@ -86465,10 +86334,10 @@
86465
86334
  exports.ɵt = VirtualHelperBaseDirective;
86466
86335
  exports.ɵu = HVirtualHelperComponent;
86467
86336
  exports.ɵv = MaskParsingService;
86468
- exports.ɵw = DeprecateMethod;
86469
- exports.ɵx = DeprecateProperty;
86470
- exports.ɵy = isHierarchyMatch;
86471
- exports.ɵz = getHierarchy;
86337
+ exports.ɵw = isHierarchyMatch;
86338
+ exports.ɵx = getHierarchy;
86339
+ exports.ɵy = IgxGridActionButtonComponent;
86340
+ exports.ɵz = ToggleAnimationPlayer;
86472
86341
 
86473
86342
  Object.defineProperty(exports, '__esModule', { value: true });
86474
86343