Skip to content

Commit 30fa87a

Browse files
author
pipeline
committed
v24.2.4 is released
1 parent f77e210 commit 30fa87a

File tree

174 files changed

+3358
-509
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

174 files changed

+3358
-509
lines changed

controls/barcodegenerator/CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
## [Unreleased]
44

5-
## 24.2.3 (2024-01-31)
5+
## 24.2.4 (2024-02-06)
66

77
### Barcode
88

controls/barcodegenerator/src/datamatrix/datamatrix-util.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -186,7 +186,6 @@ export class DataMatrix {
186186
result[parseInt(index.toString(), 10)] = (dataCodeword[parseInt(i.toString(), 10)] + 1);
187187
index++;
188188
} else {
189-
result[parseInt(index.toString(), 10)] = 235;
190189
result[parseInt(index.toString(), 10)] = (((dataCodeword[parseInt(i.toString(), 10)] - 127)));
191190
index++;
192191
}

controls/base/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@syncfusion/ej2-base",
3-
"version": "24.1.46",
3+
"version": "24.2.3",
44
"description": "A common package of Essential JS 2 base libraries, methods and class definitions",
55
"author": "Syncfusion Inc.",
66
"license": "SEE LICENSE IN license",

controls/base/releasenotes/README.md

Lines changed: 183 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,183 @@
1+
# Release Notes Guidelines
2+
3+
This section contains guidelines on naming files, sections and other document elements.
4+
5+
> **If there is no changes in product, you don't need to mention that in Release Notes.**
6+
7+
## Encoding Format
8+
9+
All Release Notes files should be saved in **Encoding in UTF-8 (Without BOM)** format. You can use Notepad++ to verify the encoding.
10+
11+
![Encoding.png](https://bitbucket.org/repo/j57Gz9/images/2199960455-Encoding.png)
12+
13+
## Release Notes Folder Hierarchy
14+
15+
* Platform [Folder]
16+
* ----ReleaseNotes [Folder]
17+
* --------v13.3.x.x [Folder]
18+
* ------------Control1.md
19+
* ------------Control2.md
20+
* ------------Control3.md
21+
* --------v13.4.x.x [Folder]
22+
* ------------Control1.md
23+
* ------------Control2.md
24+
* ------------Control3.md
25+
26+
### How to write Release Notes?
27+
28+
* Each release markdown files should reside under corresponding version folder in their platform.
29+
* Each product release notes should be created in separate file name.
30+
* File name should be same as the product name.
31+
32+
> **NOTE**: Please do not add any Front Matter information in Release Notes files.
33+
34+
## Markdown File Structure
35+
36+
Each markdown file should have following items.
37+
38+
* Control Name
39+
* Features
40+
* Bug fixes
41+
* Braking Changes
42+
* Known Issues
43+
44+
> Do not add any front matter(triple dashed line) in this markdown.
45+
46+
### Control Name
47+
48+
Control Name should be with prefix `##`. This will be rendered as `H2` in html file.
49+
50+
#### Syntax
51+
52+
```
53+
## <Control-Name>
54+
```
55+
56+
#### Example
57+
58+
```
59+
## ejAccrodion
60+
```
61+
62+
### Features
63+
64+
* Each features should be written in unordered list.
65+
* Feature header should have id in the following format `<control-name>-features`. All characters in **id should be written in lower case.**
66+
67+
#### Syntax
68+
69+
```
70+
### Features
71+
{:#<control-name>-features}
72+
73+
* \#1 - Feature Info
74+
* \#2 - Feature Info
75+
* \#3 - Feature Info
76+
```
77+
78+
#### Example
79+
80+
```
81+
### Features
82+
{:#ejaccordion-features}
83+
84+
* \#140303 - Accordion provides option to add new items dynamically by using the `addItem` method
85+
* \#140303 - Accordion provides option to add new items dynamically by using the `addItem` method
86+
* \#140303, \#140304 - Accordion provides option to add new items dynamically by using the `addItem` method
87+
```
88+
89+
> **NOTE:**
90+
> * In markdown `#` used to represent headers.
91+
> * By default it will be converted as HTML headers.
92+
> * To display the `#` in html, please use escape sequences [See above example].
93+
94+
### Bug Fixes
95+
96+
* Each bug fix should be written in unordered list.
97+
* Bug fixes header should have id in the following format `<control-name>-bug-fixes`. All characters in **id should be written in lower case.**
98+
99+
#### Syntax
100+
101+
```
102+
### Bug fixes
103+
{:#<control-name-in-lower-case>-bug-fixes}
104+
105+
* \#1 - Bug Fix
106+
* \#2 - Bug Fix
107+
* \#3 - Bug Fix
108+
```
109+
110+
#### Example
111+
112+
```
113+
### Bug Fixes
114+
{:#ejaccordion-bug-fixes}
115+
116+
* \#140303 - Accordion provides option to add new items dynamically by using the `addItem` method
117+
* \#140303 - Accordion provides option to add new items dynamically by using the `addItem` method
118+
* \#140303, \#140304 - Accordion provides option to add new items dynamically by using the `addItem` method
119+
```
120+
121+
> **NOTE:**
122+
> * In markdown `#` used to represent headers.
123+
> * By default it will be converted as HTML headers.
124+
> * To display the `#` in html, please use escape sequences [See above example].
125+
126+
### Breaking Changes
127+
128+
* Each breaking changes should be written in unordered list.
129+
* Breaking changes header should have id in the following format `<control-name>-breaking-changes`. All characters in **id should be written in lower case.**
130+
131+
```
132+
### Breaking Changes
133+
{:#<control-name>-breaking-changes}
134+
135+
* * Breaking Change 1
136+
* * Breaking Change 2
137+
* * Breaking Change 3
138+
```
139+
140+
#### Example
141+
142+
```
143+
### Breaking Changes
144+
{:#ejaccordion-breaking-changes}
145+
146+
* Now, Circular series end angle will not be adjusted based on the start angle, so the output will be like semi-circle instead of full circle. In order to render the complete circular series with customized start angle, you have to add the start angle value to end angle property now. This break will occur only if you have specified startAngle already
147+
```
148+
149+
> **NOTE:**
150+
> * In markdown `#` used to represent headers.
151+
> * By default it will be converted as HTML headers.
152+
> * To display the `#` in html, please use escape sequences [See above example].
153+
154+
## Incidents and Forums in Release notes
155+
156+
We can represent the Incident ID with I and F for forums in release notes MD files
157+
158+
#### Example
159+
160+
161+
```
162+
## ChromelessWindow
163+
164+
### Bug Fixes
165+
{:#chromelesswindow-bug-fixes}
166+
167+
* \#I336220 - When using `ShowDialog` on a `RibbonWindow`, a `NullReferenceException` will no longer occur.
168+
* \#F166385 - The gap between the bottom of the window and the `TaskBar` is now properly maintained.
169+
170+
```
171+
172+
This is published in the page : https://help.syncfusion.com/wpf/release-notes/v19.3.0.43?type=all#chromelesswindow
173+
174+
175+
## Commit
176+
177+
Same workflow for User Guide applicable to this repository. All the changes needs to be committed in `development` branch.
178+
179+
## Preview Changes
180+
181+
All the changes will be included with User Guide automation and published in Staging Documentation machine.
182+
183+
<http://115.249.201.211:9090>

controls/buttons/README.md

Lines changed: 44 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,49 @@ The [JavaScript Switch](https://www.syncfusion.com/javascript-ui-controls/js-tog
8686
* [Text](https://ej2.syncfusion.com/documentation/switch/getting-started#set-text-on-switch) - Supports text.
8787
* [Sizes](https://ej2.syncfusion.com/documentation/switch/how-to#change-size) - Provided with different sizes of Switch.
8888

89+
### JavaScript Floating Action Button
90+
91+
The [JavaScript Floating Action Button](https://www.syncfusion.com/javascript-ui-controls/js-fab?utm_source=npm&utm_medium=listing&utm_campaign=javascript-buttons-npm) control performs the primary action that appears in front of all screen contents. It has several built-in features such as support for icons, predefined styles, positions, and UI customization.
92+
93+
<p align="center">
94+
<a href="https://ej2.syncfusion.com/documentation/floating-action-button/getting-started/?utm_source=npm&utm_medium=listing&utm_campaign=javascript-buttons-npm">Getting Started</a> .
95+
<a href="https://ej2.syncfusion.com/demos/?utm_source=npm&utm_medium=listing&utm_campaign=javascript-buttons-npm#/material/floating-action-button/overview.html">Online demos</a> .
96+
<a href="https://www.syncfusion.com/javascript-ui-controls/js-fab?utm_source=npm&utm_medium=listing&utm_campaign=javascript-buttons-npm">Learn more</a>
97+
</p>
98+
99+
<p align="center">
100+
<img alt="JavaScript Floating Action Button Control" src="https://raw.githubusercontent.com/SyncfusionExamples/nuget-img/master/javascript/javascript-fab.png">
101+
</p>
102+
103+
#### Key features
104+
105+
* [Icons](https://ej2.syncfusion.com/documentation/floating-action-button/icons) - Supports addition of both text and icon on the Button.
106+
* [Predefined styles](https://ej2.syncfusion.com/documentation/floating-action-button/styles) - Provided with predefined styles for the Floating Action Button.
107+
* [Positions](https://ej2.syncfusion.com/documentation/floating-action-button/positions) - Positioned anywhere on the target. If the target is not defined, then Floating Action Button is positioned based on the browser viewport.
108+
109+
### JavaScript Speed Dial
110+
111+
The [JavaScript Speed Dial](https://www.syncfusion.com/javascript-ui-controls/js-speed-dial?utm_source=npm&utm_medium=listing&utm_campaign=javascript-buttons-npm) control is an extension of the floating action button that displays a list of action buttons when clicked. It has several built-in features such as support for items, predefined styles, positions, and UI customization.
112+
113+
<p align="center">
114+
<a href="https://ej2.syncfusion.com/documentation/speed-dial/getting-started/?utm_source=npm&utm_medium=listing&utm_campaign=javascript-buttons-npm">Getting Started</a> .
115+
<a href="https://ej2.syncfusion.com/demos/?utm_source=npm&utm_medium=listing&utm_campaign=javascript-buttons-npm#/material/speed-dial/default.html">Online demos</a> .
116+
<a href="https://www.syncfusion.com/javascript-ui-controls/js-speed-dial?utm_source=npm&utm_medium=listing&utm_campaign=javascript-buttons-npm">Learn more</a>
117+
</p>
118+
119+
<p align="center">
120+
<img alt="JavaScript Speed Dial Control" src="https://raw.githubusercontent.com/SyncfusionExamples/nuget-img/master/javascript/javascript-speeddial.gif">
121+
</p>
122+
123+
#### Key features
124+
125+
* [Items](https://ej2.syncfusion.com/documentation/speed-dial/items) - Provides different items support for the Speed Dial.
126+
* [Predefined styles](https://ej2.syncfusion.com/documentation/speed-dial/styles) - Provided with predefined styles for the Speed Dial.
127+
* [Positions](https://ej2.syncfusion.com/documentation/speed-dial/positions) - Positioned anywhere on the target. If the target is not defined, then Speed Dial is positioned based on the browser viewport.
128+
* [Modes](https://ej2.syncfusion.com/documentation/speed-dial/display-modes) - Supports display of items in both linear and radial modes.
129+
* [Modal](https://ej2.syncfusion.com/documentation/speed-dial/modal) - Adds an overlay to prevent the background interaction.
130+
* [Templates](https://ej2.syncfusion.com/documentation/speed-dial/template) - Customize Speed Dial items and the popup content using templates.
131+
89132
<p align="center">
90133
Trusted by the world's leading companies
91134
<a href="https://www.syncfusion.com/">
@@ -135,4 +178,4 @@ Check the changelog [here](https://github.com/syncfusion/ej2-javascript-ui-contr
135178
136179
See [LICENSE FILE](https://github.com/syncfusion/ej2-javascript-ui-controls/blob/master/license?utm_source=npm&utm_campaign=button) for more info.
137180

138-
&copy; Copyright 2023 Syncfusion, Inc. All Rights Reserved. The Syncfusion Essential Studio license and copyright applies to this distribution.
181+
&copy; Copyright 2024 Syncfusion, Inc. All Rights Reserved. The Syncfusion Essential Studio license and copyright applies to this distribution.

controls/buttons/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@syncfusion/ej2-buttons",
3-
"version": "24.1.46",
3+
"version": "24.2.3",
44
"description": "A package of feature-rich Essential JS 2 components such as Button, CheckBox, RadioButton and Switch.",
55
"author": "Syncfusion Inc.",
66
"license": "SEE LICENSE IN license",

controls/calendars/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@syncfusion/ej2-calendars",
3-
"version": "24.1.47",
3+
"version": "24.2.3",
44
"description": "A complete package of date or time components with built-in features such as date formatting, inline editing, multiple (range) selection, range restriction, month and year selection, strict mode, and globalization.",
55
"author": "Syncfusion Inc.",
66
"license": "SEE LICENSE IN license",

controls/calendars/spec/calendar/calendar.spec.ts

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2578,6 +2578,7 @@ describe('Calendar', () => {
25782578
it(' up arrow with min and max on month view test case ', () => {
25792579
calendar = new Calendar({ value: new Date('1/2/2017'), min: new Date('1/1/2017'), max: new Date('2/2/2017') });
25802580
calendar.appendTo('#calendar');
2581+
keyEventArgs.target = (document.querySelector('.e-content-table') as HTMLElement);
25812582
keyEventArgs.action = 'moveUp';
25822583
calendar.keyActionHandle(keyEventArgs);
25832584
expect(calendar.currentView()).toBe("Month");
@@ -2616,6 +2617,7 @@ describe('Calendar', () => {
26162617
});
26172618
calendar.appendTo('#calendar');
26182619
(<HTMLElement>calendar.tableBodyElement.querySelectorAll('tr td')[10]).click();
2620+
keyEventArgs.target = (document.querySelector('.e-content-table') as HTMLElement);
26192621
keyEventArgs.action = 'controlUp';
26202622
calendar.keyActionHandle(keyEventArgs);
26212623
keyEventArgs.action = 'moveRight';
@@ -2633,6 +2635,7 @@ describe('Calendar', () => {
26332635
});
26342636
calendar.appendTo('#calendar');
26352637
(<HTMLElement>calendar.tableBodyElement.querySelectorAll('tr td')[10]).click();
2638+
keyEventArgs.target = (document.querySelector('.e-content-table') as HTMLElement);
26362639
keyEventArgs.action = 'controlUp';
26372640
calendar.keyActionHandle(keyEventArgs);
26382641
keyEventArgs.action = 'controlUp';
@@ -2686,6 +2689,7 @@ describe('Calendar', () => {
26862689
calendar = new Calendar({ start: "Decade", value: new Date('3/3/2017') });
26872690
calendar.appendTo('#calendar');
26882691
expect(calendar.tableBodyElement.querySelector('tr td.e-selected').textContent).toBe('2017');
2692+
keyEventArgs.target = (document.querySelector('.e-content-table') as HTMLElement);
26892693
keyEventArgs.action = 'moveDown';
26902694
calendar.keyActionHandle(keyEventArgs);
26912695
expect(calendar.tableBodyElement.querySelector('tr td.e-focused-date').textContent).toBe('2021');
@@ -2695,6 +2699,7 @@ describe('Calendar', () => {
26952699
calendar = new Calendar({ start: "Month", value: new Date('3/3/2017') });
26962700
calendar.appendTo('#calendar');
26972701
expect(calendar.tableBodyElement.querySelector('tr td.e-selected').textContent).toBe('3');
2702+
keyEventArgs.target = (document.querySelector('.e-content-table') as HTMLElement);
26982703
keyEventArgs.action = 'moveDown';
26992704
calendar.keyActionHandle(keyEventArgs);
27002705
expect(calendar.tableBodyElement.querySelector('tr td.e-focused-date').textContent).toBe('10');
@@ -2704,6 +2709,7 @@ describe('Calendar', () => {
27042709
calendar = new Calendar({ start: "Year", value: new Date('3/3/2017') });
27052710
calendar.appendTo('#calendar');
27062711
expect(calendar.tableBodyElement.querySelector('tr td.e-selected').textContent).toBe('Mar');
2712+
keyEventArgs.target = (document.querySelector('.e-content-table') as HTMLElement);
27072713
keyEventArgs.action = 'moveLeft';
27082714
calendar.keyActionHandle(keyEventArgs);
27092715
expect(calendar.tableBodyElement.querySelector('tr td.e-focused-date').textContent).toBe('Feb');
@@ -2714,6 +2720,7 @@ describe('Calendar', () => {
27142720
calendar = new Calendar({ start: "Month", value: new Date('3/3/2017') });
27152721
calendar.appendTo('#calendar');
27162722
expect(calendar.tableBodyElement.querySelector('tr td.e-selected').textContent).toBe('3');
2723+
keyEventArgs.target = (document.querySelector('.e-content-table') as HTMLElement);
27172724
keyEventArgs.action = 'moveRight';
27182725
calendar.keyActionHandle(keyEventArgs);
27192726
expect(calendar.tableBodyElement.querySelector('tr td.e-focused-date').textContent).toBe('4');
@@ -2723,6 +2730,7 @@ describe('Calendar', () => {
27232730
calendar = new Calendar({ start: "Month", value: new Date('3/3/2017') });
27242731
calendar.appendTo('#calendar');
27252732
expect(calendar.tableBodyElement.querySelector('tr td.e-selected').textContent).toBe('3');
2733+
keyEventArgs.target = (document.querySelector('.e-content-table') as HTMLElement);
27262734
keyEventArgs.action = 'moveRight';
27272735
calendar.keyActionHandle(keyEventArgs);
27282736
keyEventArgs.action = 'select';
@@ -2894,6 +2902,7 @@ describe('Calendar', () => {
28942902
calendar = new Calendar({ start: "Month", value: new Date('7/3/2017') });
28952903
calendar.appendTo('#calendar');
28962904
expect(calendar.tableBodyElement.querySelector('tr td.e-selected').textContent).toBe('3');
2905+
keyEventArgs.target = (document.querySelector('.e-content-table') as HTMLElement);
28972906
keyEventArgs.action = 'moveUp';
28982907
calendar.keyActionHandle(keyEventArgs);
28992908
expect(calendar.tableBodyElement.querySelector('tr td.e-focused-date').textContent).toBe('26');
@@ -2903,6 +2912,7 @@ describe('Calendar', () => {
29032912
calendar = new Calendar({ start: "Year", value: new Date('7/3/2017') });
29042913
calendar.appendTo('#calendar');
29052914
expect(calendar.tableBodyElement.querySelector('tr td.e-selected').textContent).toBe('Jul');
2915+
keyEventArgs.target = (document.querySelector('.e-content-table') as HTMLElement);
29062916
keyEventArgs.action = 'moveUp';
29072917
calendar.keyActionHandle(keyEventArgs);
29082918
expect(calendar.tableBodyElement.querySelector('tr td.e-focused-date').textContent).toBe('Mar');
@@ -3029,7 +3039,8 @@ describe('Calendar', () => {
30293039
it('e-focused-date test case', () => {
30303040
calendar = new Calendar({ value: new Date('4/4/2017') });
30313041
calendar.appendTo('#calendar');
3032-
expect(document.querySelectorAll('.e-content table tbody tr td.e-selected')[0].classList.contains('e-selected')).toBe(true)
3042+
expect(document.querySelectorAll('.e-content table tbody tr td.e-selected')[0].classList.contains('e-selected')).toBe(true);
3043+
keyEventArgs.target = (document.querySelector('.e-content-table') as HTMLElement);
30333044
keyEventArgs.action = 'moveRight';
30343045
calendar.keyActionHandle(keyEventArgs);
30353046
expect((new Date(getIdValue(calendar.tableBodyElement.querySelector('tr td.e-focused-date')))).toDateString()).toBe(new Date('4/5/2017').toDateString());
@@ -3093,9 +3104,11 @@ describe('Calendar', () => {
30933104
it(' EJ2-1535 selected value is not maintained properly in year view using keyboard ', () => {
30943105
calendar = new Calendar({ value: new Date('4/3/2017') });
30953106
calendar.appendTo('#calendar');
3107+
keyEventArgs.target = (document.querySelector('.e-content-table') as HTMLElement);
30963108
keyEventArgs.action = 'controlUp';
30973109
calendar.keyActionHandle(keyEventArgs);
30983110
expect(calendar.currentView()).toBe("Year");
3111+
keyEventArgs.target = (document.querySelector('.e-content-table') as HTMLElement);
30993112
keyEventArgs.action = 'moveLeft';
31003113
calendar.keyActionHandle(keyEventArgs);
31013114
expect((getIdValue(calendar.tableBodyElement.querySelector('tr td.e-selected')))).toBe(new Date("4/1/2017").valueOf());

0 commit comments

Comments
 (0)