@syncfusion/ej2-angular-spreadsheet 20.4.38 → 20.4.39

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 (58) hide show
  1. package/README.md +145 -68
  2. package/package.json +1 -1
  3. package/schematics/utils/lib-details.ts +2 -2
  4. package/styles/bootstrap-dark.css +34 -24
  5. package/styles/bootstrap.css +34 -24
  6. package/styles/bootstrap4.css +34 -24
  7. package/styles/bootstrap5-dark.css +34 -24
  8. package/styles/bootstrap5.css +34 -24
  9. package/styles/fabric-dark.css +34 -24
  10. package/styles/fabric.css +34 -24
  11. package/styles/fluent-dark.css +34 -24
  12. package/styles/fluent.css +34 -24
  13. package/styles/highcontrast-light.css +34 -24
  14. package/styles/highcontrast.css +34 -24
  15. package/styles/material-dark.css +34 -24
  16. package/styles/material.css +34 -24
  17. package/styles/spreadsheet/_bootstrap-dark-definition.scss +1 -1
  18. package/styles/spreadsheet/_bootstrap-definition.scss +1 -1
  19. package/styles/spreadsheet/_bootstrap4-definition.scss +1 -1
  20. package/styles/spreadsheet/_bootstrap5-definition.scss +1 -1
  21. package/styles/spreadsheet/_fabric-dark-definition.scss +1 -1
  22. package/styles/spreadsheet/_fabric-definition.scss +1 -1
  23. package/styles/spreadsheet/_fluent-definition.scss +1 -1
  24. package/styles/spreadsheet/_fusionnew-definition.scss +1 -1
  25. package/styles/spreadsheet/_highcontrast-definition.scss +1 -1
  26. package/styles/spreadsheet/_highcontrast-light-definition.scss +1 -1
  27. package/styles/spreadsheet/_layout.scss +25 -10
  28. package/styles/spreadsheet/_material-dark-definition.scss +1 -1
  29. package/styles/spreadsheet/_material-definition.scss +1 -1
  30. package/styles/spreadsheet/_material3-definition.scss +1 -1
  31. package/styles/spreadsheet/_tailwind-definition.scss +1 -1
  32. package/styles/spreadsheet/_theme.scss +16 -0
  33. package/styles/spreadsheet/bootstrap-dark.css +34 -24
  34. package/styles/spreadsheet/bootstrap.css +34 -24
  35. package/styles/spreadsheet/bootstrap4.css +34 -24
  36. package/styles/spreadsheet/bootstrap5-dark.css +34 -24
  37. package/styles/spreadsheet/bootstrap5.css +34 -24
  38. package/styles/spreadsheet/fabric-dark.css +34 -24
  39. package/styles/spreadsheet/fabric.css +34 -24
  40. package/styles/spreadsheet/fluent-dark.css +34 -24
  41. package/styles/spreadsheet/fluent.css +34 -24
  42. package/styles/spreadsheet/highcontrast-light.css +34 -24
  43. package/styles/spreadsheet/highcontrast.css +34 -24
  44. package/styles/spreadsheet/material-dark.css +34 -24
  45. package/styles/spreadsheet/material.css +34 -24
  46. package/styles/spreadsheet/tailwind-dark.css +34 -24
  47. package/styles/spreadsheet/tailwind.css +34 -24
  48. package/styles/tailwind-dark.css +34 -24
  49. package/styles/tailwind.css +34 -24
  50. package/schematics/collection.json +0 -10
  51. package/schematics/ng-add/index.d.ts +0 -3
  52. package/schematics/ng-add/index.js +0 -9
  53. package/schematics/ng-add/schema.d.ts +0 -13
  54. package/schematics/ng-add/schema.js +0 -2
  55. package/schematics/ng-add/schema.json +0 -34
  56. package/schematics/tsconfig.json +0 -25
  57. package/schematics/utils/lib-details.d.ts +0 -4
  58. package/schematics/utils/lib-details.js +0 -6
package/README.md CHANGED
@@ -1,87 +1,164 @@
1
- # ej2-angular-spreadsheet
1
+ # Angular Spreadsheet Component
2
2
 
3
- The [Angular Spreadsheet](https://www.syncfusion.com/angular-ui-components/angular-spreadsheet?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm) is an user interactive component to organize and analyze data in tabular format with configuration options for customization. It will load data by importing an excel file or from a data source, such as RESTful JSON data services and local JavaScript object array binding. The populated data can be exported as Excel with xlsx, xls and csv formats.
3
+ The [Angular Spreadsheet](https://www.syncfusion.com/angular-ui-components/angular-spreadsheet?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm) is an user interactive component to organize and analyze data in tabular format with configuration options for customization. It will load data by importing an Excel/CSV file or from local and remote data sources such as JSON, RESTful services, OData services, and more. The populated data can be exported as Excel with xlsx, xls, CSV and PDF formats.
4
4
 
5
- ![Spreadsheet](https://ej2.syncfusion.com/products/images/spreadsheet/readme.gif)
5
+ <p align="center">
6
+ <a href="https://ej2.syncfusion.com/angular/documentation/spreadsheet/getting-started/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm">Getting started</a> .
7
+ <a href="https://ej2.syncfusion.com/angular/demos/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#/material/spreadsheet/default">Online demos</a> .
8
+ <a href="https://www.syncfusion.com/angular-components/angular-spreadsheet?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm">Learn more</a>
9
+ </p>
6
10
 
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).
11
+ <p align="center">
12
+ <img src="https://raw.githubusercontent.com/SyncfusionExamples/nuget-img/master/angular/angular-spreadsheet.png" alt="Angular Spreadsheet Component" />
13
+ </p>
8
14
 
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.
15
+ <p align="center">
16
+ Trusted by the world's leading companies
17
+ <a href="https://www.syncfusion.com">
18
+ <img src="https://raw.githubusercontent.com/SyncfusionExamples/nuget-img/master/syncfusion/syncfusion-trusted-companies.webp" alt="Bootstrap logo">
19
+ </a>
20
+ </p>
10
21
 
11
22
  ## Setup
12
23
 
13
- To install Spreadsheet and its dependent packages, use the following command.
24
+ ### Create an Angular Application
14
25
 
15
- ```sh
16
- npm install @syncfusion/ej2-angular-spreadsheet
26
+ You can use [Angular CLI](https://github.com/angular/angular-cli) to setup your Angular applications. To install the Angular CLI, use the following command.
27
+
28
+ ```bash
29
+ npm install -g @angular/cli
17
30
  ```
18
31
 
19
- ## Resources
20
-
21
- * [Product Page](https://www.syncfusion.com/angular-ui-components/angular-spreadsheet?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm)
22
- * [Getting Started](https://ej2.syncfusion.com/angular/documentation/spreadsheet/getting-started/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm)
23
- * [View Online Demos](https://ej2.syncfusion.com/angular/demos/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#/material/spreadsheet/default)
24
-
25
- ## Supported Frameworks
26
-
27
- Spreadsheet component is also offered in following list of frameworks.
28
-
29
- 1. [Javascript Spreadsheet](https://www.syncfusion.com/javascript-ui-controls/js-spreadsheet?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm)
30
- 2. [React Spreadsheet](https://www.syncfusion.com/react-ui-components/react-spreadsheet?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm)
31
- 3. [VueJS Spreadsheet](https://www.syncfusion.com/vue-ui-components/vue-spreadsheet?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm)
32
- 4. [ASP.NET Core Spreadsheet](https://www.syncfusion.com/aspnet-core-ui-controls/spreadsheet?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm)
33
- 5. [ASP.NET MVC Spreadsheet](https://www.syncfusion.com/aspnet-mvc-ui-controls/spreadsheet?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm)
34
-
35
- ## Key Features
36
-
37
- - **Data sources** - Bind the spreadsheet component with an array of JavaScript objects or DataManager.
38
- - **Virtualization** - Provides the option to load large amount of data without performance degradation.
39
- - **Selection** - Provides the option to select a cell or range of cells.
40
- - **Editing** - Provides the options to dynamically edit a cell.
41
- - **Formulas** - Provides built-in calculation library with predefined formulas and named range support.
42
- - **Clipboard** - Provides the option to perform clipboard operations.
43
- - **Cell formatting** - Provides option to customize the appearance of cells.
44
- - **Number formatting** - Provides option to format the cell value.
45
- - **Open** - Provides the option to open excel file in spreadsheet.
46
- - **Save** - Provides option to save spreadsheet data as excel file.
47
- - **Sorting:** Helps you to arrange the data to particular order in a selected range of cells.
48
- - **Resize:** Allows you to change the row height and column width. Auto fit the rows and columns based on its content.
49
- - **Wrap text:** Provides the option to display the large content as multiple lines in a single cell.
50
- - **Data validation:** Provides the option to validate edited values based on data validation rules defined for a cell or range of cells.
51
- - **Find and Replace:** Provides the option to find the data and replace it across all the sheets in Spreadsheet.
52
- - **Protect sheet:** Provides the option to restrict the user actions like cell editing, row and column insertion, deletion, and resizing.
53
- - **Borders:** Provides the option to customize cell gridlines such as color and its style for enhanced UI.
54
- - **Show/Hide:** Provides the option to show/hide the rows, columns and sheets.
55
- - **Insert/delete:** Provides the option to insert/delete the rows, columns and sheets.
56
- - **Merge cells:** Provides option to can combine two or more cells located in the same row or column into a single cell.
57
- - **Conditional formatting:** Provides option to format a cell or range of cells based on the conditions applied.
58
- - **Clear:** Provides option to clear the content, formats, and hyperlinks applied to a cell or range of cells in a spreadsheet.
59
- - **Aggregates:** Provides option to check the sum, average, and count for the selected cells or range in the sheet tab.
60
- - **Picture:** Allows you to view, insert, and modify a picture in a spreadsheet with customizing options.
61
- - **Chart:** Transforms your Spreadsheet data to an intuitive overview for better understanding and to make smart business decisions.
62
- - **Freeze pane:** Allows users to keep the specified rows and columns always visible at the top and left side of the sheet while scrolling through the sheet.
63
- - **PDF Export:** Allows users to save the spreadsheet data as a PDF document.
64
- - **Password protection:** Allows users to protect the workbook with a password.
65
- - **Multi-line editing:** Allows you to insert a line break between paragraphs of the text within a cell in a Spreadsheet.
66
- - **Range selection helper:** Helps you to select a range or multiple ranges when editing a formula in a cell.
67
- - **RTL** - Provides right-to-left mode which aligns content in the spreadsheet component from right to left.
68
- - **Localization** - Provides inherent support to localize the UI.
69
- - **Accessibility** - Provides with built-in accessibility support which helps to access all the spreadsheet component features through the keyboard, screen readers, or other assistive technology devices.
32
+ Create a new Angular application using the following Angular CLI command.
70
33
 
71
- ## Support
34
+ ```bash
35
+ ng new my-app
36
+ cd my-app
37
+ ```
38
+
39
+ ### Add Syncfusion Spreadsheet package
40
+
41
+ All Syncfusion Angular packages are available in [npmjs.com](https://www.npmjs.com/~syncfusionorg). To install the Angular Spreadsheet package, use the following command.
42
+
43
+ ```bash
44
+ ng add @syncfusion/ej2-angular-spreadsheet
45
+ ```
72
46
 
73
- Product support is available for through following mediums.
47
+ The above command does the below configuration to your Angular app.
48
+
49
+ * Adds `@syncfusion/ej2-angular-spreadsheet` package and its peer dependencies to your `package.json` file.
50
+ * Imports the `SpreadsheetModule` in your application module `app.module.ts`.
51
+ * Registers the Syncfusion UI default theme (material) in the `angular.json` file.
52
+
53
+ This makes it easy to add the Syncfusion Angular Spreadsheet module to your project and start using it in your application.
54
+
55
+ ### Add Spreadsheet component
56
+
57
+ In **src/app/app.component.ts**, use `<ejs-spreadsheet>` selector in the `template` attribute of the `@Component` directive to render the Syncfusion Angular Spreadsheet component.
58
+
59
+ ```typescript
60
+ import { Component, OnInit } from '@angular/core';
61
+
62
+ @Component({
63
+ selector: 'app-root',
64
+ template: `<ejs-spreadsheet>
65
+ <e-sheets>
66
+ <e-sheet>
67
+ <e-ranges>
68
+ <e-range [dataSource]='data'></e-range>
69
+ </e-ranges>
70
+ </e-sheet>
71
+ </e-sheets>
72
+ </ejs-spreadsheet>`
73
+ })
74
+ export class AppComponent implements OnInit {
75
+
76
+ public data: object[] = [];
77
+
78
+ ngOnInit(): void {
79
+ this.data = [
80
+ { OrderID: 10248, CustomerID: 'VINET', EmployeeID: 5, ShipCity: 'Reims' },
81
+ { OrderID: 10249, CustomerID: 'TOMSP', EmployeeID: 6, ShipCity: 'Münster' },
82
+ { OrderID: 10250, CustomerID: 'HANAR', EmployeeID: 4, ShipCity: 'Lyon' }
83
+ ];
84
+ }
85
+ }
86
+ ```
87
+
88
+ ## Supported frameworks
89
+
90
+ Spreadsheet component is also offered in the following list of frameworks.
91
+
92
+ | [<img src="https://ej2.syncfusion.com/github/images/js.svg" height="50" />](https://www.syncfusion.com/javascript-ui-controls?utm_medium=listing&utm_source=github)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[JavaScript](https://www.syncfusion.com/javascript-ui-controls?utm_medium=listing&utm_source=github)&nbsp;&nbsp;&nbsp;&nbsp; | [<img src="https://ej2.syncfusion.com/github/images/react.svg" height="50" />](https://www.syncfusion.com/react-ui-components?utm_medium=listing&utm_source=github)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[React](https://www.syncfusion.com/react-ui-components?utm_medium=listing&utm_source=github)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | [<img src="https://ej2.syncfusion.com/github/images/vue.svg" height="50" />](https://www.syncfusion.com/vue-ui-components?utm_medium=listing&utm_source=github)<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[Vue](https://www.syncfusion.com/vue-ui-components?utm_medium=listing&utm_source=github)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | [<img src="https://ej2.syncfusion.com/github/images/netcore.svg" height="50" />](https://www.syncfusion.com/aspnet-core-ui-controls?utm_medium=listing&utm_source=github)<br/>&nbsp;&nbsp;[ASP.NET&nbsp;Core](https://www.syncfusion.com/aspnet-core-ui-controls?utm_medium=listing&utm_source=github)&nbsp;&nbsp; | [<img src="https://ej2.syncfusion.com/github/images/netmvc.svg" height="50" />](https://www.syncfusion.com/aspnet-mvc-ui-controls?utm_medium=listing&utm_source=github)<br/>&nbsp;&nbsp;[ASP.NET&nbsp;MVC](https://www.syncfusion.com/aspnet-mvc-ui-controls?utm_medium=listing&utm_source=github)&nbsp;&nbsp; |
93
+ | :-----: | :-----: | :-----: | :-----: | :-----: |
94
+
95
+ ## Showcase samples
96
+
97
+ * Expense Tracker - [Source](https://github.com/syncfusion/ej2-showcase-angular-expensetracker?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm), [Live Demo](https://ej2.syncfusion.com/showcase/angular/expensetracker/#/dashboard?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm)
98
+ * Loan Calculator - [Source](https://github.com/syncfusion/ej2-sample-ng-loancalculator?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm), [Live Demo](https://ej2.syncfusion.com/showcase/angular/loancalculator/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm)
99
+ * Fitness Tracker - [Source](https://github.com/SyncfusionExamples/showcase-angular-health-tracker-dashboard-demo), [Live Demo](https://ej2.syncfusion.com/showcase/angular/fitness-tracker-app/)
100
+
101
+ ## Key features
102
+
103
+ * [Data sources](https://ej2.syncfusion.com/angular/documentation/spreadsheet/data-binding/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#local-data): Bind the Spreadsheet component with an array of objects or data from a web service using [DataManager](https://ej2.syncfusion.com/angular/documentation/data/data-binding/).
104
+ * [Virtualization](https://ej2.syncfusion.com/angular/documentation/spreadsheet/scrolling/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#virtual-scrolling): Provides the option to load large amount of data without performance degradation.
105
+ * [Selection](https://ej2.syncfusion.com/angular/documentation/spreadsheet/selection/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm): Provides the option to select a cell or range of cells.
106
+ * [Editing](https://ej2.syncfusion.com/angular/documentation/spreadsheet/editing/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm): Provides the option to dynamically edit a cell.
107
+ * [Formulas](https://ej2.syncfusion.com/angular/demos/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#/material/spreadsheet/formula): Provides built-in calculation library with pre-defined formulas and named range support.
108
+ * [Clipboard](https://ej2.syncfusion.com/angular/documentation/spreadsheet/clipboard/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm): Provides the option to perform clipboard operations.
109
+ * [Cell formatting](https://ej2.syncfusion.com/angular/demos/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#/material/spreadsheet/cell-formatting): Provides the option to customize the appearance of cells.
110
+ * [Number formatting](https://ej2.syncfusion.com/angular/demos/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#/material/spreadsheet/number-formatting): Provides the option to format the cell value.
111
+ * [Open](https://ej2.syncfusion.com/angular/documentation/spreadsheet/open-save/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#open): Provides the option to open Excel and CSV files in Spreadsheet.
112
+ * [Save](https://ej2.syncfusion.com/angular/documentation/spreadsheet/open-save/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#save): Provides the option to save Spreadsheet data as Excel, CSV, and PDF documents.
113
+ * [Sorting](https://ej2.syncfusion.com/angular/documentation/spreadsheet/sort/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#sort-by-cell-value): Helps you to arrange the data to particular order in a selected range of cells.
114
+ * [Filtering](https://ej2.syncfusion.com/angular/documentation/spreadsheet/filter/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#apply-filter-on-ui): Helps you to view specific rows in the Spreadsheet by hiding the other rows.
115
+ * [Undo Redo](https://ej2.syncfusion.com/angular/documentation/spreadsheet/undo-redo/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm): Provides the option to perform undo redo operations in Spreadsheet.
116
+ * [Collaborative editing](https://ej2.syncfusion.com/angular/documentation/spreadsheet/use-cases/collaborative-editing/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm): Provides the option for real time changes across multiple users in the Spreadsheet.
117
+ * [Hyperlink](https://ej2.syncfusion.com/angular/demos/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#/material/spreadsheet/hyperlink): Provides the option to navigate to web link or cell reference within the sheet or to other sheet in Spreadsheet.
118
+ * [Resize](https://ej2.syncfusion.com/angular/documentation/spreadsheet/mobile-responsiveness/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm): Allows you to change the row height and column width. Auto fit the rows and columns based on its content.
119
+ * [Wrap text](https://ej2.syncfusion.com/angular/documentation/spreadsheet/cell-range/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#wrap-text): Provides the option to display the large content as multiple lines in a single cell.
120
+ * [Data validation](https://ej2.syncfusion.com/angular/demos/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#/material/spreadsheet/data-validation): Provides the option to validate edited values based on data validation rules defined for a cell or range of cells.
121
+ * [Find and replace](https://ej2.syncfusion.com/angular/documentation/spreadsheet/searching/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#find): Provides the option to find the data and replace it across all sheets in Spreadsheet.
122
+ * [Protect sheet](https://ej2.syncfusion.com/angular/demos/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#/material/spreadsheet/protect-sheet): Provides the option to restrict user actions like cell editing, row and column insertion, deletion, and resizing.
123
+ * [Borders](https://ej2.syncfusion.com/angular/documentation/spreadsheet/formatting/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#borders): Provides the option to customize cell gridlines such as color and its style for enhanced UI.
124
+ * [Show/hide](https://ej2.syncfusion.com/angular/documentation/spreadsheet/worksheet/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#sheet-visibility): Provides the option to show/hide rows, columns and sheets.
125
+ * [Insert/delete](https://ej2.syncfusion.com/angular/documentation/spreadsheet/rows-and-columns/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#insert): Provides the option to insert/delete rows, columns and sheets.
126
+ * [Merge cells](https://ej2.syncfusion.com/angular/documentation/spreadsheet/cell-range/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#merge-cells): Provides the option to combine two or more cells located in the same row or column into a single cell.
127
+ * [Conditional formatting](https://ej2.syncfusion.com/angular/demos/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#/material/spreadsheet/conditional-formatting): Provides the option to format a cell or range of cells based on conditions applied.
128
+ * [Autofill](https://ej2.syncfusion.com/angular/documentation/spreadsheet/cell-range/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#auto-fill): Provides the option to fill or copy a series or pattern of values and formats into adjacent cells in any direction.
129
+ * [Clear](https://ej2.syncfusion.com/angular/documentation/spreadsheet/cell-range/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#clear): Provides the option to clear the content, formats, and hyperlinks applied to a cell or range of cells in a Spreadsheet.
130
+ * [Aggregates](https://ej2.syncfusion.com/angular/documentation/spreadsheet/formulas/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm): Provides the option to check the sum, average, count, and more for the selected cells or range in the sheet.
131
+ * [Picture](https://ej2.syncfusion.com/angular/demos/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#/material/spreadsheet/image): Allows you to view, insert, and modify a picture in a Spreadsheet with customizing options.
132
+ * [Chart](https://ej2.syncfusion.com/angular/demos/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#/material/spreadsheet/chart): Transforms your Spreadsheet data to an intuitive overview for better understanding and to make smart business decisions.
133
+ * [Freeze panes](https://ej2.syncfusion.com/angular/demos/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#/material/spreadsheet/freeze-pane): Allows you to keep the specified rows and columns always visible at the top and left side of the sheet while scrolling through the sheet.
134
+ * [Password protection](https://ej2.syncfusion.com/angular/documentation/spreadsheet/protect-sheet/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#protect-workbook): Allows you to protect the workbook with a password.
135
+ * [Multi-line editing](https://ej2.syncfusion.com/angular/documentation/spreadsheet/editing/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm): Allows you to insert a line break between paragraphs of the text within a cell in a Spreadsheet.
136
+ * [Calculate range selection](https://ej2.syncfusion.com/angular/documentation/spreadsheet/selection/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm): Helps you to select a range or multiple ranges when editing a formula in a cell.
137
+ * [Right-to-left (RTL)](https://ej2.syncfusion.com/angular/documentation/right-to-left/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm): Aligns content in the Spreadsheet component from right to left.
138
+ * [Templates](https://ej2.syncfusion.com/angular/demos/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#/material/spreadsheet/cell-template): Templates can be used to create custom user experiences in the Spreadsheet.
139
+ * [Globalization](https://ej2.syncfusion.com/angular/documentation/spreadsheet/global-local/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm#localization): Personalize the Spreadsheet component with different languages, as well as culture-specific number, date, and time formatting.
140
+ * [Accessibility](https://ej2.syncfusion.com/angular/documentation/spreadsheet/accessibility/?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm): Provides with built-in accessibility support which helps to access all the Spreadsheet component features through the keyboard, screen readers, or other assistive technology devices.
74
141
 
75
- * Creating incident in Syncfusion [Direct-trac](https://www.syncfusion.com/support/directtrac/incidents?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm) support system or [Community forum](https://www.syncfusion.com/forums/essential-js2?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm).
76
- * New [GitHub issue](https://github.com/syncfusion/ej2-angular-ui-components/issues/new?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm).
77
- * Ask your query in Stack Overflow with tag `syncfusion`, `ej2`.
142
+ ## Support
78
143
 
79
- ## License
144
+ Product support is available through the following mediums.
80
145
 
81
- Check the license detail [here](https://github.com/syncfusion/ej2-javascript-ui-controls/blob/master/license?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm).
146
+ * [Support ticket](https://support.syncfusion.com/support/tickets/create) - Guaranteed Response in 24 hours | Unlimited tickets | Holiday support
147
+ * [Community forum](https://www.syncfusion.com/forums/angular-js2?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm)
148
+ * [GitHub issues](https://github.com/syncfusion/ej2-angular-ui-components/issues/new)
149
+ * [Request feature or report bug](https://www.syncfusion.com/feedback/angular?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm)
150
+ * Live chat
82
151
 
83
152
  ## Changelog
84
153
 
85
- Check the changelog [here](https://github.com/syncfusion/ej2-angular-ui-components/blob/master/components/spreadsheet/CHANGELOG.md?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm)
154
+ Check the changelog [here](https://github.com/syncfusion/ej2-angular-ui-components/blob/master/components/spreadsheet/CHANGELOG.md?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm). Get minor improvements and bug fixes every week to stay up to date with frequent updates.
155
+
156
+ ## License and copyright
157
+
158
+ > 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 for 80+ [Angular UI components](https://www.syncfusion.com/angular-components), you can [purchase](https://www.syncfusion.com/sales/products) or [start a free 30-day trial](https://www.syncfusion.com/account/manage-trials/start-trials).
159
+
160
+ > 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.
161
+
162
+ See [LICENSE FILE](https://github.com/syncfusion/ej2-angular-ui-components/blob/master/license?utm_source=npm&utm_medium=listing&utm_campaign=angular-spreadsheet-npm) for more info.
86
163
 
87
- © Copyright 2022 Syncfusion, Inc. All Rights Reserved. The Syncfusion Essential Studio license and copyright applies to this distribution.
164
+ &copy; Copyright 2022 Syncfusion, Inc. All Rights Reserved. The Syncfusion Essential Studio license and copyright applies to this distribution.
package/package.json CHANGED
@@ -84,5 +84,5 @@
84
84
  "schematics": "./schematics/collection.json",
85
85
  "sideEffects": false,
86
86
  "typings": "syncfusion-ej2-angular-spreadsheet.d.ts",
87
- "version": "20.4.38"
87
+ "version": "20.4.39"
88
88
  }
@@ -1,4 +1,4 @@
1
1
  export const pkgName = '@syncfusion/ej2-angular-spreadsheet';
2
- export const pkgVer = '^20.4.38';
2
+ export const pkgVer = '^20.12.0';
3
3
  export const moduleName = 'SpreadsheetModule';
4
- export const themeVer = '~20.4.38';
4
+ export const themeVer = '~20.12.0';
@@ -683,9 +683,6 @@
683
683
  display: inline-table;
684
684
  padding-top: 3px;
685
685
  }
686
- .e-spreadsheet .e-unprotectworksheet-dlg.e-dialog {
687
- left: 0 !important; /* stylelint-disable-line declaration-no-important */
688
- }
689
686
  .e-spreadsheet .e-unprotectworksheet-dlg.e-dialog .e-dlg-header-content .e-dlg-header {
690
687
  font-size: 18px;
691
688
  line-height: 21px;
@@ -702,9 +699,6 @@
702
699
  .e-spreadsheet .e-unprotectworksheet-dlg.e-dialog .e-dlg-content .e-unprotectsheetpwd-content .e-input {
703
700
  margin-top: 10px;
704
701
  }
705
- .e-spreadsheet .e-reenterpwd-dlg.e-dialog {
706
- left: 0 !important; /* stylelint-disable-line declaration-no-important */
707
- }
708
702
  .e-spreadsheet .e-reenterpwd-dlg.e-dialog .e-dlg-header-content .e-dlg-header {
709
703
  font-size: 18px;
710
704
  line-height: 21px;
@@ -1659,6 +1653,19 @@
1659
1653
  .e-spreadsheet .e-sheet-panel.e-rtl .e-frozen-row {
1660
1654
  right: 0;
1661
1655
  }
1656
+ .e-spreadsheet .e-sheet-panel.e-rtl .e-column-header .e-table th.e-header-cell.e-hide-start {
1657
+ border-left-color: transparent;
1658
+ }
1659
+ .e-spreadsheet .e-sheet-panel.e-rtl .e-column-header .e-table th.e-header-cell.e-hide-start::after {
1660
+ border-left: 1px solid #484848;
1661
+ border-right: none;
1662
+ left: 0.5px;
1663
+ }
1664
+ .e-spreadsheet .e-sheet-panel.e-rtl .e-column-header .e-table th.e-hide-end.e-header-cell::before {
1665
+ border-left: none;
1666
+ border-right: 1px solid #484848;
1667
+ right: 0.5px;
1668
+ }
1662
1669
  .e-spreadsheet .e-sheet-panel .e-frozen-columns .e-selectall-container {
1663
1670
  position: relative;
1664
1671
  }
@@ -1956,9 +1963,6 @@
1956
1963
  .e-spreadsheet .e-find-dlg.e-dialog .e-footer-content {
1957
1964
  text-align: left;
1958
1965
  }
1959
- .e-spreadsheet .e-protectworkbook-dlg.e-dialog {
1960
- left: 0 !important; /* stylelint-disable-line declaration-no-important */
1961
- }
1962
1966
  .e-spreadsheet .e-protectworkbook-dlg.e-dialog .e-dlg-header-content .e-dlg-header {
1963
1967
  font-size: 18px;
1964
1968
  line-height: 31px;
@@ -1976,9 +1980,6 @@
1976
1980
  line-height: 24px;
1977
1981
  margin-bottom: 4px;
1978
1982
  }
1979
- .e-spreadsheet .e-unprotectworkbook-dlg.e-dialog {
1980
- left: 0 !important; /* stylelint-disable-line declaration-no-important */
1981
- }
1982
1983
  .e-spreadsheet .e-unprotectworkbook-dlg.e-dialog .e-dlg-header-content .e-dlg-header {
1983
1984
  font-size: 18px;
1984
1985
  line-height: 21px;
@@ -1995,9 +1996,6 @@
1995
1996
  .e-spreadsheet .e-unprotectworkbook-dlg.e-dialog .e-dlg-content .e-unprotectpwd-content .e-input {
1996
1997
  margin-top: 10px;
1997
1998
  }
1998
- .e-spreadsheet .e-importprotectworkbook-dlg.e-dialog {
1999
- left: 0 !important; /* stylelint-disable-line declaration-no-important */
2000
- }
2001
1999
  .e-spreadsheet .e-importprotectworkbook-dlg.e-dialog .e-dlg-header-content .e-dlg-header {
2002
2000
  font-size: 18px;
2003
2001
  line-height: 21px;
@@ -2107,33 +2105,36 @@
2107
2105
  font-family: "Calibri";
2108
2106
  }
2109
2107
  .e-dropdown-popup.e-font-family ul .e-item:nth-child(7) {
2110
- font-family: "Courier";
2108
+ font-family: "Comic Sans MS";
2111
2109
  }
2112
2110
  .e-dropdown-popup.e-font-family ul .e-item:nth-child(8) {
2113
- font-family: "Courier New";
2111
+ font-family: "Courier";
2114
2112
  }
2115
2113
  .e-dropdown-popup.e-font-family ul .e-item:nth-child(9) {
2116
- font-family: "Din Condensed";
2114
+ font-family: "Courier New";
2117
2115
  }
2118
2116
  .e-dropdown-popup.e-font-family ul .e-item:nth-child(10) {
2119
- font-family: "Georgia";
2117
+ font-family: "Din Condensed";
2120
2118
  }
2121
2119
  .e-dropdown-popup.e-font-family ul .e-item:nth-child(11) {
2122
- font-family: "Helvetica";
2120
+ font-family: "Georgia";
2123
2121
  }
2124
2122
  .e-dropdown-popup.e-font-family ul .e-item:nth-child(12) {
2125
- font-family: "Helvetica New";
2123
+ font-family: "Helvetica";
2126
2124
  }
2127
2125
  .e-dropdown-popup.e-font-family ul .e-item:nth-child(13) {
2128
- font-family: "Roboto";
2126
+ font-family: "Helvetica New";
2129
2127
  }
2130
2128
  .e-dropdown-popup.e-font-family ul .e-item:nth-child(14) {
2131
- font-family: "Tahoma";
2129
+ font-family: "Roboto";
2132
2130
  }
2133
2131
  .e-dropdown-popup.e-font-family ul .e-item:nth-child(15) {
2134
- font-family: "Times New Roman";
2132
+ font-family: "Tahoma";
2135
2133
  }
2136
2134
  .e-dropdown-popup.e-font-family ul .e-item:nth-child(16) {
2135
+ font-family: "Times New Roman";
2136
+ }
2137
+ .e-dropdown-popup.e-font-family ul .e-item:nth-child(17) {
2137
2138
  font-family: "Verdana";
2138
2139
  }
2139
2140
  .e-dropdown-popup.e-aggregate-list {
@@ -3007,6 +3008,15 @@
3007
3008
  .e-spreadsheet .e-sheet-panel.e-rtl .e-column-header .e-header-cell.e-prev-highlight, .e-spreadsheet .e-sheet-panel.e-rtl .e-column-header .e-header-cell.e-highlight, .e-spreadsheet .e-sheet-panel.e-rtl .e-select-all-cell.e-prev-highlight-right {
3008
3009
  border-left-color: #767676;
3009
3010
  }
3011
+ .e-spreadsheet .e-sheet-panel.e-rtl .e-column-header .e-header-cell.e-hide-start.e-prev-highlight, .e-spreadsheet .e-sheet-panel.e-rtl .e-column-header .e-header-cell.e-hide-start.e-highlight {
3012
+ border-left-color: transparent;
3013
+ }
3014
+ .e-spreadsheet .e-sheet-panel.e-rtl .e-column-header .e-header-cell.e-hide-start.e-prev-highlight::after, .e-spreadsheet .e-sheet-panel.e-rtl .e-column-header .e-header-cell.e-hide-start.e-highlight::after {
3015
+ border-left-color: #767676;
3016
+ }
3017
+ .e-spreadsheet .e-sheet-panel.e-rtl .e-column-header .e-header-cell.e-hide-end.e-highlight::before, .e-spreadsheet .e-sheet-panel.e-rtl .e-column-header .e-header-cell.e-highlight + th.e-header-cell.e-hide-end::before {
3018
+ border-right-color: #767676;
3019
+ }
3010
3020
  .e-spreadsheet .e-copy-indicator div.e-top,
3011
3021
  .e-spreadsheet .e-range-indicator div.e-top,
3012
3022
  .e-spreadsheet .e-formularef-indicator div.e-top {
@@ -689,9 +689,6 @@
689
689
  display: inline-table;
690
690
  padding-top: 3px;
691
691
  }
692
- .e-spreadsheet .e-unprotectworksheet-dlg.e-dialog {
693
- left: 0 !important; /* stylelint-disable-line declaration-no-important */
694
- }
695
692
  .e-spreadsheet .e-unprotectworksheet-dlg.e-dialog .e-dlg-header-content .e-dlg-header {
696
693
  font-size: 18px;
697
694
  line-height: 21px;
@@ -708,9 +705,6 @@
708
705
  .e-spreadsheet .e-unprotectworksheet-dlg.e-dialog .e-dlg-content .e-unprotectsheetpwd-content .e-input {
709
706
  margin-top: 10px;
710
707
  }
711
- .e-spreadsheet .e-reenterpwd-dlg.e-dialog {
712
- left: 0 !important; /* stylelint-disable-line declaration-no-important */
713
- }
714
708
  .e-spreadsheet .e-reenterpwd-dlg.e-dialog .e-dlg-header-content .e-dlg-header {
715
709
  font-size: 18px;
716
710
  line-height: 21px;
@@ -1684,6 +1678,19 @@
1684
1678
  .e-spreadsheet .e-sheet-panel.e-rtl .e-frozen-row {
1685
1679
  right: 0;
1686
1680
  }
1681
+ .e-spreadsheet .e-sheet-panel.e-rtl .e-column-header .e-table th.e-header-cell.e-hide-start {
1682
+ border-left-color: transparent;
1683
+ }
1684
+ .e-spreadsheet .e-sheet-panel.e-rtl .e-column-header .e-table th.e-header-cell.e-hide-start::after {
1685
+ border-left: 1px solid #e6e6e6;
1686
+ border-right: none;
1687
+ left: 0.5px;
1688
+ }
1689
+ .e-spreadsheet .e-sheet-panel.e-rtl .e-column-header .e-table th.e-hide-end.e-header-cell::before {
1690
+ border-left: none;
1691
+ border-right: 1px solid #e6e6e6;
1692
+ right: 0.5px;
1693
+ }
1687
1694
  .e-spreadsheet .e-sheet-panel .e-frozen-columns .e-selectall-container {
1688
1695
  position: relative;
1689
1696
  }
@@ -1981,9 +1988,6 @@
1981
1988
  .e-spreadsheet .e-find-dlg.e-dialog .e-footer-content {
1982
1989
  text-align: left;
1983
1990
  }
1984
- .e-spreadsheet .e-protectworkbook-dlg.e-dialog {
1985
- left: 0 !important; /* stylelint-disable-line declaration-no-important */
1986
- }
1987
1991
  .e-spreadsheet .e-protectworkbook-dlg.e-dialog .e-dlg-header-content .e-dlg-header {
1988
1992
  font-size: 18px;
1989
1993
  line-height: 31px;
@@ -2001,9 +2005,6 @@
2001
2005
  line-height: 24px;
2002
2006
  margin-bottom: 4px;
2003
2007
  }
2004
- .e-spreadsheet .e-unprotectworkbook-dlg.e-dialog {
2005
- left: 0 !important; /* stylelint-disable-line declaration-no-important */
2006
- }
2007
2008
  .e-spreadsheet .e-unprotectworkbook-dlg.e-dialog .e-dlg-header-content .e-dlg-header {
2008
2009
  font-size: 18px;
2009
2010
  line-height: 21px;
@@ -2020,9 +2021,6 @@
2020
2021
  .e-spreadsheet .e-unprotectworkbook-dlg.e-dialog .e-dlg-content .e-unprotectpwd-content .e-input {
2021
2022
  margin-top: 10px;
2022
2023
  }
2023
- .e-spreadsheet .e-importprotectworkbook-dlg.e-dialog {
2024
- left: 0 !important; /* stylelint-disable-line declaration-no-important */
2025
- }
2026
2024
  .e-spreadsheet .e-importprotectworkbook-dlg.e-dialog .e-dlg-header-content .e-dlg-header {
2027
2025
  font-size: 18px;
2028
2026
  line-height: 21px;
@@ -2132,33 +2130,36 @@
2132
2130
  font-family: "Calibri";
2133
2131
  }
2134
2132
  .e-dropdown-popup.e-font-family ul .e-item:nth-child(7) {
2135
- font-family: "Courier";
2133
+ font-family: "Comic Sans MS";
2136
2134
  }
2137
2135
  .e-dropdown-popup.e-font-family ul .e-item:nth-child(8) {
2138
- font-family: "Courier New";
2136
+ font-family: "Courier";
2139
2137
  }
2140
2138
  .e-dropdown-popup.e-font-family ul .e-item:nth-child(9) {
2141
- font-family: "Din Condensed";
2139
+ font-family: "Courier New";
2142
2140
  }
2143
2141
  .e-dropdown-popup.e-font-family ul .e-item:nth-child(10) {
2144
- font-family: "Georgia";
2142
+ font-family: "Din Condensed";
2145
2143
  }
2146
2144
  .e-dropdown-popup.e-font-family ul .e-item:nth-child(11) {
2147
- font-family: "Helvetica";
2145
+ font-family: "Georgia";
2148
2146
  }
2149
2147
  .e-dropdown-popup.e-font-family ul .e-item:nth-child(12) {
2150
- font-family: "Helvetica New";
2148
+ font-family: "Helvetica";
2151
2149
  }
2152
2150
  .e-dropdown-popup.e-font-family ul .e-item:nth-child(13) {
2153
- font-family: "Roboto";
2151
+ font-family: "Helvetica New";
2154
2152
  }
2155
2153
  .e-dropdown-popup.e-font-family ul .e-item:nth-child(14) {
2156
- font-family: "Tahoma";
2154
+ font-family: "Roboto";
2157
2155
  }
2158
2156
  .e-dropdown-popup.e-font-family ul .e-item:nth-child(15) {
2159
- font-family: "Times New Roman";
2157
+ font-family: "Tahoma";
2160
2158
  }
2161
2159
  .e-dropdown-popup.e-font-family ul .e-item:nth-child(16) {
2160
+ font-family: "Times New Roman";
2161
+ }
2162
+ .e-dropdown-popup.e-font-family ul .e-item:nth-child(17) {
2162
2163
  font-family: "Verdana";
2163
2164
  }
2164
2165
  .e-dropdown-popup.e-aggregate-list {
@@ -3046,6 +3047,15 @@
3046
3047
  .e-spreadsheet .e-sheet-panel.e-rtl .e-column-header .e-header-cell.e-prev-highlight, .e-spreadsheet .e-sheet-panel.e-rtl .e-column-header .e-header-cell.e-highlight, .e-spreadsheet .e-sheet-panel.e-rtl .e-select-all-cell.e-prev-highlight-right {
3047
3048
  border-left-color: #ccc;
3048
3049
  }
3050
+ .e-spreadsheet .e-sheet-panel.e-rtl .e-column-header .e-header-cell.e-hide-start.e-prev-highlight, .e-spreadsheet .e-sheet-panel.e-rtl .e-column-header .e-header-cell.e-hide-start.e-highlight {
3051
+ border-left-color: transparent;
3052
+ }
3053
+ .e-spreadsheet .e-sheet-panel.e-rtl .e-column-header .e-header-cell.e-hide-start.e-prev-highlight::after, .e-spreadsheet .e-sheet-panel.e-rtl .e-column-header .e-header-cell.e-hide-start.e-highlight::after {
3054
+ border-left-color: #ccc;
3055
+ }
3056
+ .e-spreadsheet .e-sheet-panel.e-rtl .e-column-header .e-header-cell.e-hide-end.e-highlight::before, .e-spreadsheet .e-sheet-panel.e-rtl .e-column-header .e-header-cell.e-highlight + th.e-header-cell.e-hide-end::before {
3057
+ border-right-color: #ccc;
3058
+ }
3049
3059
  .e-spreadsheet .e-copy-indicator div.e-top,
3050
3060
  .e-spreadsheet .e-range-indicator div.e-top,
3051
3061
  .e-spreadsheet .e-formularef-indicator div.e-top {