@syncfusion/ej2-grids 18.3.44 → 18.3.50-85492

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 (183) hide show
  1. package/CHANGELOG.md +1800 -1751
  2. package/README.md +81 -81
  3. package/dist/ej2-grids.umd.min.js +1 -10
  4. package/dist/ej2-grids.umd.min.js.map +1 -1
  5. package/dist/es6/ej2-grids.es2015.js +171 -105
  6. package/dist/es6/ej2-grids.es2015.js.map +1 -1
  7. package/dist/es6/ej2-grids.es5.js +726 -658
  8. package/dist/es6/ej2-grids.es5.js.map +1 -1
  9. package/helpers/e2e/index.js +3 -3
  10. package/license +10 -10
  11. package/package.json +81 -81
  12. package/src/grid/actions/batch-edit.js +2 -2
  13. package/src/grid/actions/dialog-edit.js +13 -13
  14. package/src/grid/actions/edit.js +4 -4
  15. package/src/grid/actions/excel-export.js +11 -2
  16. package/src/grid/actions/excel-filter.js +13 -13
  17. package/src/grid/actions/foreign-key.js +13 -13
  18. package/src/grid/actions/group.js +1 -1
  19. package/src/grid/actions/infinite-scroll.d.ts +1 -0
  20. package/src/grid/actions/infinite-scroll.js +1 -0
  21. package/src/grid/actions/inline-edit.js +13 -13
  22. package/src/grid/actions/normal-edit.js +3 -3
  23. package/src/grid/actions/page.js +6 -2
  24. package/src/grid/actions/pdf-export.js +12 -3
  25. package/src/grid/actions/print.js +4 -4
  26. package/src/grid/actions/resize.js +4 -1
  27. package/src/grid/actions/row-reorder.js +2 -2
  28. package/src/grid/actions/selection.js +23 -21
  29. package/src/grid/actions/toolbar.js +8 -8
  30. package/src/grid/base/constant.d.ts +2 -0
  31. package/src/grid/base/constant.js +2 -0
  32. package/src/grid/base/grid-model.d.ts +1283 -1284
  33. package/src/grid/base/grid.d.ts +49 -50
  34. package/src/grid/base/grid.js +34 -25
  35. package/src/grid/base/interface.d.ts +13 -0
  36. package/src/grid/base/util.js +3 -3
  37. package/src/grid/common/excel-filter-base.js +13 -13
  38. package/src/grid/models/aggregate-model.d.ts +74 -74
  39. package/src/grid/models/aggregate.js +19 -19
  40. package/src/grid/models/column-chooser-settings-model.d.ts +8 -8
  41. package/src/grid/models/column-chooser-settings.js +19 -19
  42. package/src/grid/models/column-model.d.ts +11 -11
  43. package/src/grid/models/column.d.ts +5 -5
  44. package/src/grid/models/column.js +6 -6
  45. package/src/grid/models/page-settings-model.d.ts +36 -36
  46. package/src/grid/models/page-settings.js +19 -19
  47. package/src/grid/renderer/caption-cell-renderer.js +16 -13
  48. package/src/grid/renderer/command-column-renderer.js +13 -13
  49. package/src/grid/renderer/content-renderer.js +16 -1
  50. package/src/grid/renderer/detail-expand-cell-renderer.js +13 -13
  51. package/src/grid/renderer/detail-header-indent-renderer.js +13 -13
  52. package/src/grid/renderer/dialog-edit-renderer.js +2 -1
  53. package/src/grid/renderer/dropdown-edit-cell.js +2 -2
  54. package/src/grid/renderer/edit-renderer.js +2 -2
  55. package/src/grid/renderer/expand-cell-renderer.js +13 -13
  56. package/src/grid/renderer/filter-cell-renderer.js +13 -13
  57. package/src/grid/renderer/footer-renderer.js +13 -13
  58. package/src/grid/renderer/freeze-renderer.js +13 -13
  59. package/src/grid/renderer/group-lazy-load-renderer.js +13 -13
  60. package/src/grid/renderer/header-cell-renderer.js +13 -13
  61. package/src/grid/renderer/header-indent-renderer.js +13 -13
  62. package/src/grid/renderer/indent-cell-renderer.js +13 -13
  63. package/src/grid/renderer/render.js +1 -1
  64. package/src/grid/renderer/row-drag-drop-renderer.js +13 -13
  65. package/src/grid/renderer/row-drag-header-indent-render.js +13 -13
  66. package/src/grid/renderer/stacked-cell-renderer.js +13 -13
  67. package/src/grid/renderer/summary-cell-renderer.js +13 -13
  68. package/src/grid/renderer/virtual-content-renderer.js +13 -13
  69. package/src/grid/renderer/virtual-freeze-renderer.js +13 -13
  70. package/src/grid/services/focus-strategy.d.ts +2 -1
  71. package/src/grid/services/focus-strategy.js +26 -16
  72. package/src/grid/services/group-model-generator.js +13 -13
  73. package/src/grid/services/row-model-generator.js +1 -1
  74. package/src/grid/services/summary-model-generator.js +13 -13
  75. package/src/pager/pager-dropdown.js +1 -1
  76. package/src/pager/pager-message.js +1 -1
  77. package/src/pager/pager-model.d.ts +59 -59
  78. package/src/pager/pager.js +19 -19
  79. package/styles/bootstrap-dark.css +0 -4
  80. package/styles/bootstrap.css +0 -4
  81. package/styles/bootstrap4.css +5 -4
  82. package/styles/bootstrap5-dark.css +0 -0
  83. package/styles/bootstrap5-dark.scss +0 -0
  84. package/styles/bootstrap5.css +0 -0
  85. package/styles/bootstrap5.scss +0 -0
  86. package/styles/excel-filter/_all.scss +2 -2
  87. package/styles/excel-filter/_bootstrap-dark-definition.scss +54 -54
  88. package/styles/excel-filter/_bootstrap-definition.scss +61 -61
  89. package/styles/excel-filter/_bootstrap4-definition.scss +70 -70
  90. package/styles/excel-filter/_fabric-dark-definition.scss +54 -54
  91. package/styles/excel-filter/_fabric-definition.scss +59 -59
  92. package/styles/excel-filter/_highcontrast-definition.scss +54 -54
  93. package/styles/excel-filter/_highcontrast-light-definition.scss +50 -50
  94. package/styles/excel-filter/_layout.scss +387 -387
  95. package/styles/excel-filter/_material-dark-definition.scss +56 -56
  96. package/styles/excel-filter/_material-definition.scss +57 -57
  97. package/styles/excel-filter/_office-365-definition.scss +1 -1
  98. package/styles/excel-filter/_theme.scss +18 -18
  99. package/styles/excel-filter/bootstrap-dark.css +0 -1
  100. package/styles/excel-filter/bootstrap.css +0 -1
  101. package/styles/excel-filter/bootstrap.scss +1 -0
  102. package/styles/excel-filter/bootstrap4.css +5 -1
  103. package/styles/excel-filter/fabric.scss +1 -0
  104. package/styles/excel-filter/highcontrast.scss +1 -0
  105. package/styles/excel-filter/icons/_bootstrap-dark.scss +29 -29
  106. package/styles/excel-filter/icons/_bootstrap.scss +29 -29
  107. package/styles/excel-filter/icons/_bootstrap4.scss +29 -29
  108. package/styles/excel-filter/icons/_fabric-dark.scss +29 -29
  109. package/styles/excel-filter/icons/_fabric.scss +29 -29
  110. package/styles/excel-filter/icons/_highcontrast-light.scss +29 -29
  111. package/styles/excel-filter/icons/_highcontrast.scss +29 -29
  112. package/styles/excel-filter/icons/_material-dark.scss +29 -29
  113. package/styles/excel-filter/icons/_material.scss +29 -29
  114. package/styles/excel-filter/material.scss +1 -0
  115. package/styles/fabric-dark.css +0 -3
  116. package/styles/fabric.css +0 -3
  117. package/styles/grid/_all.scss +2 -2
  118. package/styles/grid/_bootstrap-dark-definition.scss +497 -497
  119. package/styles/grid/_bootstrap-definition.scss +500 -500
  120. package/styles/grid/_bootstrap4-definition.scss +501 -502
  121. package/styles/grid/_fabric-dark-definition.scss +499 -499
  122. package/styles/grid/_fabric-definition.scss +499 -499
  123. package/styles/grid/_highcontrast-definition.scss +498 -498
  124. package/styles/grid/_highcontrast-light-definition.scss +495 -495
  125. package/styles/grid/_layout.scss +2908 -2908
  126. package/styles/grid/_material-dark-definition.scss +495 -495
  127. package/styles/grid/_material-definition.scss +495 -495
  128. package/styles/grid/_office-365-definition.scss +1 -1
  129. package/styles/grid/_theme.scss +529 -529
  130. package/styles/grid/bootstrap-dark.css +0 -4
  131. package/styles/grid/bootstrap.css +0 -4
  132. package/styles/grid/bootstrap.scss +1 -0
  133. package/styles/grid/bootstrap4.css +5 -4
  134. package/styles/grid/fabric-dark.css +0 -3
  135. package/styles/grid/fabric.css +0 -3
  136. package/styles/grid/fabric.scss +1 -0
  137. package/styles/grid/highcontrast-light.css +0 -3
  138. package/styles/grid/highcontrast.css +0 -3
  139. package/styles/grid/highcontrast.scss +1 -0
  140. package/styles/grid/icons/_bootstrap-dark.scss +180 -180
  141. package/styles/grid/icons/_bootstrap.scss +180 -180
  142. package/styles/grid/icons/_bootstrap4.scss +180 -180
  143. package/styles/grid/icons/_fabric-dark.scss +180 -180
  144. package/styles/grid/icons/_fabric.scss +180 -180
  145. package/styles/grid/icons/_highcontrast-light.scss +180 -180
  146. package/styles/grid/icons/_highcontrast.scss +181 -181
  147. package/styles/grid/icons/_material-dark.scss +180 -180
  148. package/styles/grid/icons/_material.scss +180 -180
  149. package/styles/grid/material-dark.css +0 -3
  150. package/styles/grid/material.css +0 -3
  151. package/styles/grid/material.scss +1 -0
  152. package/styles/highcontrast-light.css +0 -3
  153. package/styles/highcontrast.css +0 -3
  154. package/styles/material-dark.css +0 -3
  155. package/styles/material.css +0 -3
  156. package/styles/pager/_all.scss +2 -2
  157. package/styles/pager/_bootstrap-dark-definition.scss +112 -112
  158. package/styles/pager/_bootstrap-definition.scss +112 -112
  159. package/styles/pager/_bootstrap4-definition.scss +111 -112
  160. package/styles/pager/_fabric-dark-definition.scss +113 -113
  161. package/styles/pager/_fabric-definition.scss +112 -112
  162. package/styles/pager/_highcontrast-definition.scss +112 -112
  163. package/styles/pager/_highcontrast-light-definition.scss +112 -112
  164. package/styles/pager/_layout.scss +575 -575
  165. package/styles/pager/_material-dark-definition.scss +112 -112
  166. package/styles/pager/_material-definition.scss +111 -111
  167. package/styles/pager/_theme.scss +129 -129
  168. package/styles/pager/icons/_bootstrap-dark.scss +49 -49
  169. package/styles/pager/icons/_bootstrap.scss +49 -49
  170. package/styles/pager/icons/_bootstrap4.scss +49 -49
  171. package/styles/pager/icons/_fabric-dark.scss +49 -49
  172. package/styles/pager/icons/_fabric.scss +49 -49
  173. package/styles/pager/icons/_highcontrast-light.scss +49 -49
  174. package/styles/pager/icons/_highcontrast.scss +41 -41
  175. package/styles/pager/icons/_material-dark.scss +49 -49
  176. package/styles/pager/icons/_material.scss +41 -41
  177. package/styles/tailwind-dark.css +0 -0
  178. package/styles/tailwind-dark.scss +0 -0
  179. package/styles/tailwind.css +0 -0
  180. package/styles/tailwind.scss +0 -0
  181. package/dist/global/ej2-grids.min.js +0 -11
  182. package/dist/global/ej2-grids.min.js.map +0 -1
  183. package/dist/global/index.d.ts +0 -14
@@ -1,17 +1,17 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
12
  import { Browser, EventHandler, createElement, isBlazor } from '@syncfusion/ej2-base';
13
13
  import { isNullOrUndefined, isUndefined, addClass, removeClass } from '@syncfusion/ej2-base';
14
- import { remove, closest } from '@syncfusion/ej2-base';
14
+ import { remove, closest, select } from '@syncfusion/ej2-base';
15
15
  import { Query } from '@syncfusion/ej2-data';
16
16
  import { setCssInGridPopUp, getPosition, isGroupAdaptive, parentsUntil, addRemoveActiveClasses, removeAddCboxClasses } from '../base/util';
17
17
  import * as events from '../base/constant';
@@ -249,8 +249,6 @@ var Selection = /** @class */ (function () {
249
249
  _this.removed = isRemoved;
250
250
  if (isRowSelected && _this.selectionSettings.persistSelection && !(_this.selectionSettings.checkboxMode === 'ResetOnRowClick')) {
251
251
  _this.clearSelectedRow(index);
252
- isRemoved = true;
253
- _this.removed = isRemoved;
254
252
  _this.selectRowCallBack();
255
253
  }
256
254
  else if (!isRowSelected && _this.selectionSettings.persistSelection &&
@@ -260,7 +258,8 @@ var Selection = /** @class */ (function () {
260
258
  if (_this.selectionSettings.checkboxMode === 'ResetOnRowClick') {
261
259
  _this.clearSelection();
262
260
  }
263
- if (!_this.selectionSettings.persistSelection || _this.selectionSettings.checkboxMode === 'ResetOnRowClick') {
261
+ if (!_this.selectionSettings.persistSelection || _this.selectionSettings.checkboxMode === 'ResetOnRowClick' ||
262
+ (!_this.parent.isCheckBoxSelection && _this.selectionSettings.persistSelection)) {
264
263
  _this.selectRowCheck = true;
265
264
  _this.clearRow();
266
265
  }
@@ -444,7 +443,7 @@ var Selection = /** @class */ (function () {
444
443
  var selectedMovableRow = !this.isSingleSel() ? this.getSelectedMovableRow(rowIndexes[0]) :
445
444
  this.getSelectedMovableRow(rowIndexes[rowIndexes.length - 1]);
446
445
  var frzCols = gObj.getFrozenColumns();
447
- if (!this.isRowType() || this.isEditing()) {
446
+ if ((!this.isRowType() || this.isEditing()) && !this.selectionSettings.checkboxOnly) {
448
447
  return;
449
448
  }
450
449
  var args;
@@ -575,12 +574,13 @@ var Selection = /** @class */ (function () {
575
574
  }
576
575
  };
577
576
  Selection.prototype.clearSelectedRow = function (index) {
578
- if (this.target) {
579
- var selectedEle = this.target.parentElement;
577
+ if (this.toggle) {
578
+ var selectedEle = this.parent.getRowByIndex(index);
580
579
  if (!this.disableUI) {
581
580
  selectedEle.removeAttribute('aria-selected');
582
581
  this.addRemoveClassesForRow(selectedEle, false, true, 'e-selectionbackground', 'e-active');
583
582
  }
583
+ this.removed = true;
584
584
  this.updatePersistCollection(selectedEle, false);
585
585
  this.updateCheckBoxes(selectedEle);
586
586
  this.selectedRowIndexes.splice(this.selectedRowIndexes.indexOf(index), 1);
@@ -1930,9 +1930,9 @@ var Selection = /** @class */ (function () {
1930
1930
  if (rindex < this.parent.frozenRows) {
1931
1931
  isFrozenRow = true;
1932
1932
  }
1933
- if (!parentsUntil(this.target, 'e-table').querySelector('#' + this.parent.element.id + '_autofill')) {
1934
- if (this.parent.element.querySelector('#' + this.parent.element.id + '_autofill')) {
1935
- this.parent.element.querySelector('#' + this.parent.element.id + '_autofill').remove();
1933
+ if (!select('#' + this.parent.element.id + '_autofill', parentsUntil(this.target, 'e-table'))) {
1934
+ if (select('#' + this.parent.element.id + '_autofill', this.parent.element)) {
1935
+ select('#' + this.parent.element.id + '_autofill', this.parent.element).remove();
1936
1936
  }
1937
1937
  this.autofill = createElement('div', { className: 'e-autofill', id: this.parent.element.id + '_autofill' });
1938
1938
  this.autofill.style.display = 'none';
@@ -3037,6 +3037,7 @@ var Selection = /** @class */ (function () {
3037
3037
  this.onDataBoundFunction = this.onDataBound.bind(this);
3038
3038
  this.parent.addEventListener(events.dataBound, this.onDataBoundFunction);
3039
3039
  this.parent.on(events.contentReady, this.checkBoxSelectionChanged, this);
3040
+ this.parent.on(events.beforeRefreshOnDataChange, this.initPerisistSelection, this);
3040
3041
  this.parent.on(events.onEmpty, this.setCheckAllForEmptyGrid, this);
3041
3042
  this.actionCompleteFunc = this.actionCompleteHandler.bind(this);
3042
3043
  this.parent.addEventListener(events.actionComplete, this.actionCompleteFunc);
@@ -3054,6 +3055,7 @@ var Selection = /** @class */ (function () {
3054
3055
  this.parent.removeEventListener(events.actionComplete, this.actionCompleteFunc);
3055
3056
  this.parent.off(events.onEmpty, this.setCheckAllForEmptyGrid);
3056
3057
  this.parent.off(events.click, this.clickHandler);
3058
+ this.parent.off(events.beforeRefreshOnDataChange, this.initPerisistSelection);
3057
3059
  };
3058
3060
  Selection.prototype.setCheckAllForEmptyGrid = function () {
3059
3061
  var checkAllBox = this.getCheckAllBox();
@@ -1,5 +1,5 @@
1
1
  import { EventHandler, extend, isNullOrUndefined } from '@syncfusion/ej2-base';
2
- import { remove, isBlazor, updateBlazorTemplate } from '@syncfusion/ej2-base';
2
+ import { remove, isBlazor, updateBlazorTemplate, select } from '@syncfusion/ej2-base';
3
3
  import { Toolbar as tool } from '@syncfusion/ej2-navigations';
4
4
  import * as events from '../base/constant';
5
5
  import { templateCompiler, appendChildren } from '../base/util';
@@ -73,7 +73,7 @@ var Toolbar = /** @class */ (function () {
73
73
  }
74
74
  };
75
75
  Toolbar.prototype.bindSearchEvents = function () {
76
- this.searchElement = this.element.querySelector('#' + this.gridID + '_searchbar');
76
+ this.searchElement = select('#' + this.gridID + '_searchbar', this.element);
77
77
  this.wireEvent();
78
78
  this.refreshToolbarItems();
79
79
  if (this.parent.searchSettings) {
@@ -82,11 +82,11 @@ var Toolbar = /** @class */ (function () {
82
82
  };
83
83
  Toolbar.prototype.toolbarCreated = function () {
84
84
  if (this.element.querySelector('.e-search-wrapper')) {
85
- this.element.querySelector('.e-search-wrapper').innerHTML = '<div class="e-input-group e-search" role="search">\
86
- <input id="' + this.gridID + '_searchbar" class="e-input" name="input" type="search" \
87
- placeholder= \"' + this.l10n.getConstant('Search') + '\"/>\
88
- <span id="' + this.gridID + '_searchbutton" class="e-input-group-icon e-search-icon e-icons" \
89
- tabindex="-1" title="' + this.l10n.getConstant('Search') + '" aria-label= "search"></span> \
85
+ this.element.querySelector('.e-search-wrapper').innerHTML = '<div class="e-input-group e-search" role="search">\
86
+ <input id="' + this.gridID + '_searchbar" class="e-input" name="input" type="search" \
87
+ placeholder= \"' + this.l10n.getConstant('Search') + '\"/>\
88
+ <span id="' + this.gridID + '_searchbutton" class="e-input-group-icon e-search-icon e-icons" \
89
+ tabindex="-1" title="' + this.l10n.getConstant('Search') + '" aria-label= "search"></span> \
90
90
  </div>';
91
91
  }
92
92
  this.bindSearchEvents();
@@ -219,7 +219,7 @@ var Toolbar = /** @class */ (function () {
219
219
  Toolbar.prototype.enableItems = function (items, isEnable) {
220
220
  for (var _i = 0, items_2 = items; _i < items_2.length; _i++) {
221
221
  var item = items_2[_i];
222
- var element = this.element.querySelector('#' + item);
222
+ var element = select('#' + item, this.element);
223
223
  if (element) {
224
224
  this.toolbar.enableItems(element.parentElement, isEnable);
225
225
  }
@@ -449,3 +449,5 @@ export declare const groupCollapse: string;
449
449
  export declare const beforeCheckboxRenderer: string;
450
450
  /** @hidden */
451
451
  export declare const refreshHandlers: string;
452
+ /** @hidden */
453
+ export declare const beforeRefreshOnDataChange: string;
@@ -449,3 +449,5 @@ export var groupCollapse = 'group-collapse';
449
449
  export var beforeCheckboxRenderer = 'beforeCheckboxRenderer';
450
450
  /** @hidden */
451
451
  export var refreshHandlers = 'refreshResizeHandlers';
452
+ /** @hidden */
453
+ export var beforeRefreshOnDataChange = 'before-refresh-on-data-change';