@syncfusion/ej2-grids 18.3.48 → 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 (170) hide show
  1. package/CHANGELOG.md +1800 -1790
  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 +94 -80
  6. package/dist/es6/ej2-grids.es2015.js.map +1 -1
  7. package/dist/es6/ej2-grids.es5.js +649 -633
  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-filter.js +13 -13
  16. package/src/grid/actions/foreign-key.js +13 -13
  17. package/src/grid/actions/inline-edit.js +13 -13
  18. package/src/grid/actions/normal-edit.js +2 -2
  19. package/src/grid/actions/print.js +4 -4
  20. package/src/grid/actions/resize.js +4 -1
  21. package/src/grid/actions/selection.js +15 -15
  22. package/src/grid/actions/toolbar.js +8 -8
  23. package/src/grid/base/grid-model.d.ts +1283 -1283
  24. package/src/grid/base/grid.d.ts +44 -44
  25. package/src/grid/base/grid.js +23 -23
  26. package/src/grid/base/interface.d.ts +1 -0
  27. package/src/grid/base/util.js +3 -3
  28. package/src/grid/common/excel-filter-base.js +13 -13
  29. package/src/grid/models/aggregate-model.d.ts +74 -74
  30. package/src/grid/models/aggregate.js +19 -19
  31. package/src/grid/models/column-chooser-settings-model.d.ts +8 -8
  32. package/src/grid/models/column-chooser-settings.js +19 -19
  33. package/src/grid/models/column-model.d.ts +11 -11
  34. package/src/grid/models/column.d.ts +2 -2
  35. package/src/grid/models/column.js +6 -6
  36. package/src/grid/models/page-settings-model.d.ts +36 -36
  37. package/src/grid/models/page-settings.js +19 -19
  38. package/src/grid/renderer/caption-cell-renderer.js +13 -13
  39. package/src/grid/renderer/command-column-renderer.js +13 -13
  40. package/src/grid/renderer/content-renderer.js +3 -0
  41. package/src/grid/renderer/detail-expand-cell-renderer.js +13 -13
  42. package/src/grid/renderer/detail-header-indent-renderer.js +13 -13
  43. package/src/grid/renderer/dropdown-edit-cell.js +2 -2
  44. package/src/grid/renderer/edit-renderer.js +2 -2
  45. package/src/grid/renderer/expand-cell-renderer.js +13 -13
  46. package/src/grid/renderer/filter-cell-renderer.js +13 -13
  47. package/src/grid/renderer/footer-renderer.js +13 -13
  48. package/src/grid/renderer/freeze-renderer.js +13 -13
  49. package/src/grid/renderer/group-lazy-load-renderer.js +13 -13
  50. package/src/grid/renderer/header-cell-renderer.js +13 -13
  51. package/src/grid/renderer/header-indent-renderer.js +13 -13
  52. package/src/grid/renderer/indent-cell-renderer.js +13 -13
  53. package/src/grid/renderer/row-drag-drop-renderer.js +13 -13
  54. package/src/grid/renderer/row-drag-header-indent-render.js +13 -13
  55. package/src/grid/renderer/stacked-cell-renderer.js +13 -13
  56. package/src/grid/renderer/summary-cell-renderer.js +13 -13
  57. package/src/grid/renderer/virtual-content-renderer.js +13 -13
  58. package/src/grid/renderer/virtual-freeze-renderer.js +13 -13
  59. package/src/grid/services/focus-strategy.d.ts +2 -1
  60. package/src/grid/services/focus-strategy.js +26 -16
  61. package/src/grid/services/group-model-generator.js +13 -13
  62. package/src/grid/services/summary-model-generator.js +13 -13
  63. package/src/pager/pager-dropdown.js +1 -1
  64. package/src/pager/pager-model.d.ts +59 -59
  65. package/src/pager/pager.js +19 -19
  66. package/styles/bootstrap-dark.css +0 -4
  67. package/styles/bootstrap.css +0 -4
  68. package/styles/bootstrap4.css +5 -4
  69. package/styles/bootstrap5-dark.css +0 -0
  70. package/styles/bootstrap5-dark.scss +0 -0
  71. package/styles/bootstrap5.css +0 -0
  72. package/styles/bootstrap5.scss +0 -0
  73. package/styles/excel-filter/_all.scss +2 -2
  74. package/styles/excel-filter/_bootstrap-dark-definition.scss +54 -54
  75. package/styles/excel-filter/_bootstrap-definition.scss +61 -61
  76. package/styles/excel-filter/_bootstrap4-definition.scss +70 -70
  77. package/styles/excel-filter/_fabric-dark-definition.scss +54 -54
  78. package/styles/excel-filter/_fabric-definition.scss +59 -59
  79. package/styles/excel-filter/_highcontrast-definition.scss +54 -54
  80. package/styles/excel-filter/_highcontrast-light-definition.scss +50 -50
  81. package/styles/excel-filter/_layout.scss +387 -387
  82. package/styles/excel-filter/_material-dark-definition.scss +56 -56
  83. package/styles/excel-filter/_material-definition.scss +57 -57
  84. package/styles/excel-filter/_office-365-definition.scss +1 -1
  85. package/styles/excel-filter/_theme.scss +18 -18
  86. package/styles/excel-filter/bootstrap-dark.css +0 -1
  87. package/styles/excel-filter/bootstrap.css +0 -1
  88. package/styles/excel-filter/bootstrap.scss +1 -0
  89. package/styles/excel-filter/bootstrap4.css +5 -1
  90. package/styles/excel-filter/fabric.scss +1 -0
  91. package/styles/excel-filter/highcontrast.scss +1 -0
  92. package/styles/excel-filter/icons/_bootstrap-dark.scss +29 -29
  93. package/styles/excel-filter/icons/_bootstrap.scss +29 -29
  94. package/styles/excel-filter/icons/_bootstrap4.scss +29 -29
  95. package/styles/excel-filter/icons/_fabric-dark.scss +29 -29
  96. package/styles/excel-filter/icons/_fabric.scss +29 -29
  97. package/styles/excel-filter/icons/_highcontrast-light.scss +29 -29
  98. package/styles/excel-filter/icons/_highcontrast.scss +29 -29
  99. package/styles/excel-filter/icons/_material-dark.scss +29 -29
  100. package/styles/excel-filter/icons/_material.scss +29 -29
  101. package/styles/excel-filter/material.scss +1 -0
  102. package/styles/fabric-dark.css +0 -3
  103. package/styles/fabric.css +0 -3
  104. package/styles/grid/_all.scss +2 -2
  105. package/styles/grid/_bootstrap-dark-definition.scss +497 -497
  106. package/styles/grid/_bootstrap-definition.scss +500 -500
  107. package/styles/grid/_bootstrap4-definition.scss +501 -502
  108. package/styles/grid/_fabric-dark-definition.scss +499 -499
  109. package/styles/grid/_fabric-definition.scss +499 -499
  110. package/styles/grid/_highcontrast-definition.scss +498 -498
  111. package/styles/grid/_highcontrast-light-definition.scss +495 -495
  112. package/styles/grid/_layout.scss +2908 -2908
  113. package/styles/grid/_material-dark-definition.scss +495 -495
  114. package/styles/grid/_material-definition.scss +495 -495
  115. package/styles/grid/_office-365-definition.scss +1 -1
  116. package/styles/grid/_theme.scss +529 -529
  117. package/styles/grid/bootstrap-dark.css +0 -4
  118. package/styles/grid/bootstrap.css +0 -4
  119. package/styles/grid/bootstrap.scss +1 -0
  120. package/styles/grid/bootstrap4.css +5 -4
  121. package/styles/grid/fabric-dark.css +0 -3
  122. package/styles/grid/fabric.css +0 -3
  123. package/styles/grid/fabric.scss +1 -0
  124. package/styles/grid/highcontrast-light.css +0 -3
  125. package/styles/grid/highcontrast.css +0 -3
  126. package/styles/grid/highcontrast.scss +1 -0
  127. package/styles/grid/icons/_bootstrap-dark.scss +180 -180
  128. package/styles/grid/icons/_bootstrap.scss +180 -180
  129. package/styles/grid/icons/_bootstrap4.scss +180 -180
  130. package/styles/grid/icons/_fabric-dark.scss +180 -180
  131. package/styles/grid/icons/_fabric.scss +180 -180
  132. package/styles/grid/icons/_highcontrast-light.scss +180 -180
  133. package/styles/grid/icons/_highcontrast.scss +181 -181
  134. package/styles/grid/icons/_material-dark.scss +180 -180
  135. package/styles/grid/icons/_material.scss +180 -180
  136. package/styles/grid/material-dark.css +0 -3
  137. package/styles/grid/material.css +0 -3
  138. package/styles/grid/material.scss +1 -0
  139. package/styles/highcontrast-light.css +0 -3
  140. package/styles/highcontrast.css +0 -3
  141. package/styles/material-dark.css +0 -3
  142. package/styles/material.css +0 -3
  143. package/styles/pager/_all.scss +2 -2
  144. package/styles/pager/_bootstrap-dark-definition.scss +112 -112
  145. package/styles/pager/_bootstrap-definition.scss +112 -112
  146. package/styles/pager/_bootstrap4-definition.scss +111 -112
  147. package/styles/pager/_fabric-dark-definition.scss +113 -113
  148. package/styles/pager/_fabric-definition.scss +112 -112
  149. package/styles/pager/_highcontrast-definition.scss +112 -112
  150. package/styles/pager/_highcontrast-light-definition.scss +112 -112
  151. package/styles/pager/_layout.scss +575 -575
  152. package/styles/pager/_material-dark-definition.scss +112 -112
  153. package/styles/pager/_material-definition.scss +111 -111
  154. package/styles/pager/_theme.scss +129 -129
  155. package/styles/pager/icons/_bootstrap-dark.scss +49 -49
  156. package/styles/pager/icons/_bootstrap.scss +49 -49
  157. package/styles/pager/icons/_bootstrap4.scss +49 -49
  158. package/styles/pager/icons/_fabric-dark.scss +49 -49
  159. package/styles/pager/icons/_fabric.scss +49 -49
  160. package/styles/pager/icons/_highcontrast-light.scss +49 -49
  161. package/styles/pager/icons/_highcontrast.scss +41 -41
  162. package/styles/pager/icons/_material-dark.scss +49 -49
  163. package/styles/pager/icons/_material.scss +41 -41
  164. package/styles/tailwind-dark.css +0 -0
  165. package/styles/tailwind-dark.scss +0 -0
  166. package/styles/tailwind.css +0 -0
  167. package/styles/tailwind.scss +0 -0
  168. package/dist/global/ej2-grids.min.js +0 -11
  169. package/dist/global/ej2-grids.min.js.map +0 -1
  170. package/dist/global/index.d.ts +0 -14
package/README.md CHANGED
@@ -1,82 +1,82 @@
1
- # ej2-grids
2
-
3
- The Grid component is used to display and manipulate tabular data with configuration options to control the way the data is presented and manipulated. It will pull data from a data source, such as array of JSON objects, `OData web services`, or [`DataManager`](http://ej2.syncfusion.com/documentation/data?utm_source=npm&utm_campaign=grid) binding data fields to columns. Also displaying a column header to identify the field with support for grouped records.
4
-
5
- ![Grid](https://ej2.syncfusion.com/products/grid/readme.gif)
6
-
7
- > This is a commercial product and requires a paid license for possession or use. Syncfusion’s licensed software, including this component, is subject to the terms and conditions of Syncfusion's EULA (https://www.syncfusion.com/eula/es/). To acquire a license, you can purchase one at https://www.syncfusion.com/sales/products or start a free 30-day trial here (https://www.syncfusion.com/account/manage-trials/start-trials).
8
-
9
- > A free community license (https://www.syncfusion.com/products/communitylicense) is also available for companies and individuals whose organizations have less than $1 million USD in annual gross revenue and five or fewer developers.
10
-
11
- ## Setup
12
-
13
- To install Grid and its dependent packages, use the following command.
14
-
15
- ```sh
16
- npm install @syncfusion/ej2-grids
17
- ```
18
-
19
- ## Resources
20
-
21
- * [Getting Started](https://ej2.syncfusion.com/documentation/grid/getting-started.html?lang=typescript&utm_source=npm&utm_campaign=grid)
22
- * [View Online Demos](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/default.html)
23
- * [Product Page](https://www.syncfusion.com/javascript-ui-controls/grid)
24
-
25
- ## Supported Frameworks
26
-
27
- Grid component is also offered in following list of frameworks.
28
-
29
- 1. [Angular](https://github.com/syncfusion/ej2-angular-ui-components/tree/master/components/grids)
30
- 2. [React](https://github.com/syncfusion/ej2-react-ui-components/tree/master/components/grids)
31
- 3. [VueJS](https://github.com/syncfusion/ej2-vue-ui-components/tree/master/components/grids)
32
- 4. [ASP.NET Core](https://www.syncfusion.com/aspnet-core-ui-controls/grid)
33
- 5. [ASP.NET MVC](https://www.syncfusion.com/aspnet-mvc-ui-controls/grid)
34
- 6. [JavaScript (ES5)](https://www.syncfusion.com/javascript-ui-controls/grid)
35
-
36
- ## Showcase samples
37
-
38
- * Expanse Tracker ([Source](https://github.com/syncfusion/ej2-sample-ts-expensetracker), [Live Demo](https://ej2.syncfusion.com/showcase/typescript/expensetracker/?utm_source=npm&utm_campaign=grid#/dashboard))
39
- * Loan Calculator ([Source](https://github.com/syncfusion/ej2-sample-ts-loancalculator), [Live Demo](https://ej2.syncfusion.com/showcase/typescript/loancalculator/?utm_source=npm&utm_campaign=grid))
40
-
41
- ## Key Features
42
-
43
- * [**Data sources**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/local-data.html) - Bind the Grid component with an array of JSON objects or DataManager.
44
- * [**Sorting and grouping**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/grouping.html) - Supports n levels of sorting and grouping.
45
- * [**Filtering**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/filter.html) - Offers filter UI such as filter bar, menu, excel and checkbox at each column to filter data.
46
- * [**Paging**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/default-paging.html) - Provides the option to easily switch between pages using the pager bar.
47
- * [**Editing**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/normal-editing.html) - provides the options for create, read, update, and delete operations.
48
- * **Columns** - The column definitions are used as the dataSource schema in the Grid. This plays a vital role in rendering column values in the required format.
49
- * [**Reordering**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/reorder.html) - Allows you to drag any column and drop it at any position in the Grid’s column header row, allowing columns to be repositioned.
50
- * [**Column Chooser**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/column-chooser.html) - The column chooser provides a list of column names paired with check boxes that allow the visibility to be toggled on the fly.
51
- * [**Resizing**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/columnresize.html) - Resizing allows changing column width on the fly by simply dragging the right corner of the column header.
52
- * [**Freeze**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/frozen-rows-columns.html) - Columns and rows can be frozen to allow scrolling and comparing cell values.
53
- * [**Cell Spanning**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/column-spanning.html) - Grid cells can be spanned based on the preferred criteria.
54
- * [**Foreign data source**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/foreign-key.html) - This provides the option to show values from external or lookup data sources in a column based on foreign key/value mapping.
55
- * [**Cell Styling**](https://ej2.syncfusion.com/documentation/grid/how-to.html?lang=typescript&utm_source=npm&utm_campaign=grid#customize-column-styles) - Grid cell styles can be customized either by using CSS or programmatically.
56
- * [**Selection**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/selection.html) - Rows or cells can be selected in the grid. One or more rows or cells can also be selected by holding Ctrl or Command, or programmatically.
57
- * [**Templates**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/column-template.html) - Templates can be used to create custom user experiences in the grid.
58
- * [**Aggregation**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/aggregate-default.html) - Provides the option to easily visualized the Aggregates for column values.
59
- * [**Context menu**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/context-menu.html) -The context menu provides a list of actions to be performed in the grid. It appears when a cell, header, or the pager is right-clicked.
60
- * [**Clipboard**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/clipboard.html) - Selected rows and cells can be copied from the grid.
61
- * [**Export**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/default-exporting.html) - Provides the options to Export the grid data to Excel, PDF, and CSV formats.
62
- * [**RTL support**](https://ej2.syncfusion.com/documentation/grid/global-local.html?lang=typescript?utm_source=npm&utm_campaign=grid#right-to-left-rtl) - Provides a full-fledged right-to-left mode which aligns content in the Grid control from right to left.
63
- * [**Localization**](https://ej2.syncfusion.com/documentation/grid/global-local.html?lang=typescript?utm_source=npm&utm_campaign=grid#localization) - Provides inherent support to localize the UI.
64
-
65
- ## Support
66
-
67
- Product support is available for through following mediums.
68
-
69
- * Creating incident in Syncfusion [Direct-trac](https://www.syncfusion.com/support/directtrac/incidents?utm_source=npm&utm_campaign=grid) support system or [Community forum](https://www.syncfusion.com/forums/essential-js2?utm_source=npm&utm_campaign=grid).
70
- * New [GitHub issue](https://github.com/syncfusion/ej2-javascript-ui-controls/issues/new).
71
- * Ask your query in Stack Overflow with tag `syncfusion`, `ej2`.
72
-
73
- ## License
74
-
75
- Check the license detail [here](https://github.com/syncfusion/ej2-javascript-ui-controls/blob/master/license?utm_source=npm&utm_campaign=grid).
76
-
77
- ## Changelog
78
-
79
- Check the changelog [here](https://github.com/syncfusion/ej2-javascript-ui-controls/blob/master/controls/grids/CHANGELOG.md?utm_source=npm&utm_campaign=grid)
80
-
81
-
1
+ # ej2-grids
2
+
3
+ The Grid component is used to display and manipulate tabular data with configuration options to control the way the data is presented and manipulated. It will pull data from a data source, such as array of JSON objects, `OData web services`, or [`DataManager`](http://ej2.syncfusion.com/documentation/data?utm_source=npm&utm_campaign=grid) binding data fields to columns. Also displaying a column header to identify the field with support for grouped records.
4
+
5
+ ![Grid](https://ej2.syncfusion.com/products/grid/readme.gif)
6
+
7
+ > This is a commercial product and requires a paid license for possession or use. Syncfusion’s licensed software, including this component, is subject to the terms and conditions of Syncfusion's EULA (https://www.syncfusion.com/eula/es/). To acquire a license, you can purchase one at https://www.syncfusion.com/sales/products or start a free 30-day trial here (https://www.syncfusion.com/account/manage-trials/start-trials).
8
+
9
+ > A free community license (https://www.syncfusion.com/products/communitylicense) is also available for companies and individuals whose organizations have less than $1 million USD in annual gross revenue and five or fewer developers.
10
+
11
+ ## Setup
12
+
13
+ To install Grid and its dependent packages, use the following command.
14
+
15
+ ```sh
16
+ npm install @syncfusion/ej2-grids
17
+ ```
18
+
19
+ ## Resources
20
+
21
+ * [Getting Started](https://ej2.syncfusion.com/documentation/grid/getting-started.html?lang=typescript&utm_source=npm&utm_campaign=grid)
22
+ * [View Online Demos](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/default.html)
23
+ * [Product Page](https://www.syncfusion.com/javascript-ui-controls/grid)
24
+
25
+ ## Supported Frameworks
26
+
27
+ Grid component is also offered in following list of frameworks.
28
+
29
+ 1. [Angular](https://github.com/syncfusion/ej2-angular-ui-components/tree/master/components/grids)
30
+ 2. [React](https://github.com/syncfusion/ej2-react-ui-components/tree/master/components/grids)
31
+ 3. [VueJS](https://github.com/syncfusion/ej2-vue-ui-components/tree/master/components/grids)
32
+ 4. [ASP.NET Core](https://www.syncfusion.com/aspnet-core-ui-controls/grid)
33
+ 5. [ASP.NET MVC](https://www.syncfusion.com/aspnet-mvc-ui-controls/grid)
34
+ 6. [JavaScript (ES5)](https://www.syncfusion.com/javascript-ui-controls/grid)
35
+
36
+ ## Showcase samples
37
+
38
+ * Expanse Tracker ([Source](https://github.com/syncfusion/ej2-sample-ts-expensetracker), [Live Demo](https://ej2.syncfusion.com/showcase/typescript/expensetracker/?utm_source=npm&utm_campaign=grid#/dashboard))
39
+ * Loan Calculator ([Source](https://github.com/syncfusion/ej2-sample-ts-loancalculator), [Live Demo](https://ej2.syncfusion.com/showcase/typescript/loancalculator/?utm_source=npm&utm_campaign=grid))
40
+
41
+ ## Key Features
42
+
43
+ * [**Data sources**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/local-data.html) - Bind the Grid component with an array of JSON objects or DataManager.
44
+ * [**Sorting and grouping**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/grouping.html) - Supports n levels of sorting and grouping.
45
+ * [**Filtering**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/filter.html) - Offers filter UI such as filter bar, menu, excel and checkbox at each column to filter data.
46
+ * [**Paging**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/default-paging.html) - Provides the option to easily switch between pages using the pager bar.
47
+ * [**Editing**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/normal-editing.html) - provides the options for create, read, update, and delete operations.
48
+ * **Columns** - The column definitions are used as the dataSource schema in the Grid. This plays a vital role in rendering column values in the required format.
49
+ * [**Reordering**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/reorder.html) - Allows you to drag any column and drop it at any position in the Grid’s column header row, allowing columns to be repositioned.
50
+ * [**Column Chooser**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/column-chooser.html) - The column chooser provides a list of column names paired with check boxes that allow the visibility to be toggled on the fly.
51
+ * [**Resizing**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/columnresize.html) - Resizing allows changing column width on the fly by simply dragging the right corner of the column header.
52
+ * [**Freeze**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/frozen-rows-columns.html) - Columns and rows can be frozen to allow scrolling and comparing cell values.
53
+ * [**Cell Spanning**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/column-spanning.html) - Grid cells can be spanned based on the preferred criteria.
54
+ * [**Foreign data source**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/foreign-key.html) - This provides the option to show values from external or lookup data sources in a column based on foreign key/value mapping.
55
+ * [**Cell Styling**](https://ej2.syncfusion.com/documentation/grid/how-to.html?lang=typescript&utm_source=npm&utm_campaign=grid#customize-column-styles) - Grid cell styles can be customized either by using CSS or programmatically.
56
+ * [**Selection**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/selection.html) - Rows or cells can be selected in the grid. One or more rows or cells can also be selected by holding Ctrl or Command, or programmatically.
57
+ * [**Templates**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/column-template.html) - Templates can be used to create custom user experiences in the grid.
58
+ * [**Aggregation**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/aggregate-default.html) - Provides the option to easily visualized the Aggregates for column values.
59
+ * [**Context menu**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/context-menu.html) -The context menu provides a list of actions to be performed in the grid. It appears when a cell, header, or the pager is right-clicked.
60
+ * [**Clipboard**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/clipboard.html) - Selected rows and cells can be copied from the grid.
61
+ * [**Export**](https://ej2.syncfusion.com/demos/?utm_source=npm&utm_campaign=grid#/material/grid/default-exporting.html) - Provides the options to Export the grid data to Excel, PDF, and CSV formats.
62
+ * [**RTL support**](https://ej2.syncfusion.com/documentation/grid/global-local.html?lang=typescript?utm_source=npm&utm_campaign=grid#right-to-left-rtl) - Provides a full-fledged right-to-left mode which aligns content in the Grid control from right to left.
63
+ * [**Localization**](https://ej2.syncfusion.com/documentation/grid/global-local.html?lang=typescript?utm_source=npm&utm_campaign=grid#localization) - Provides inherent support to localize the UI.
64
+
65
+ ## Support
66
+
67
+ Product support is available for through following mediums.
68
+
69
+ * Creating incident in Syncfusion [Direct-trac](https://www.syncfusion.com/support/directtrac/incidents?utm_source=npm&utm_campaign=grid) support system or [Community forum](https://www.syncfusion.com/forums/essential-js2?utm_source=npm&utm_campaign=grid).
70
+ * New [GitHub issue](https://github.com/syncfusion/ej2-javascript-ui-controls/issues/new).
71
+ * Ask your query in Stack Overflow with tag `syncfusion`, `ej2`.
72
+
73
+ ## License
74
+
75
+ Check the license detail [here](https://github.com/syncfusion/ej2-javascript-ui-controls/blob/master/license?utm_source=npm&utm_campaign=grid).
76
+
77
+ ## Changelog
78
+
79
+ Check the changelog [here](https://github.com/syncfusion/ej2-javascript-ui-controls/blob/master/controls/grids/CHANGELOG.md?utm_source=npm&utm_campaign=grid)
80
+
81
+
82
82
  © Copyright 2019 Syncfusion, Inc. All Rights Reserved. The Syncfusion Essential Studio license and copyright applies to this distribution.