Skip to content

Commit da70fa4

Browse files
author
pipeline
committed
v20.2.36 is released
1 parent 9ca54f0 commit da70fa4

File tree

129 files changed

+447
-750
lines changed

Some content is hidden

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

129 files changed

+447
-750
lines changed

components/base/CHANGELOG.md

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,21 +2,28 @@
22

33
## [Unreleased]
44

5-
## 20.1.60 (2022-06-14)
5+
## 20.2.36 (2022-06-30)
66

77
### Common
88

9-
#### Bug Fixes
9+
#### New Features
1010

11-
- `I367449` - Resolved Equal length of data property changes not working.
11+
- Provided the TypeScript 4.7 compatible support for the Angular components.
1212

13-
## 20.1.48 (2022-04-12)
13+
- Provided option to register the license key by using the `npx` command. Follow these steps to register the license using the `npx` command:
14+
- - Install the Syncfusion packages from npm.
15+
- - Add the license key either in the environment variable `SYNCFUSION_LICENSE` or in the `syncfusion-license.txt` text file.
16+
- - Run the command `npx syncfusion-license activate` to register the license automatically.
1417

15-
### Common
18+
- `#I376821` - Provided support to compile the Sass files using [Dart Sass](https://sass-lang.com/dart-sass) instead of [node-sass](https://github.com/sass/node-sass). This change has been made since `node-sass` has been deprecated.
1619

17-
#### Bug Fixes
20+
- Added support to work with Angular 14 version.
21+
22+
- Provided the Ivy-compatible support for the Angular packages. Ivy Angular packages support Angular versions 12 and above.
23+
24+
#### Breaking Changes
1825

19-
- `I365879` - Component tags boolean property not updated properly in Angular 9
26+
- From this release, Angular packages tagged with `ngcc` will be published and maintained to provide the latest features and fixes for Angular versions 11 and below. This changes has been made since providing the Ivy-compatible support for the Angular packages. To install Angular packages that are compatible with `ngcc`, run the `npm install @syncfusion/ej2-angular-grids@ngcc` command.
2027

2128
## 19.1.56 (2021-04-13)
2229

components/base/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,5 +84,5 @@ Check the license detail [here](https://github.com/syncfusion/ej2-angular-ui-com
8484

8585
Check the changelog [here](https://ej2.syncfusion.com/angular/documentation/release-notes?utm_source=npm&utm_campaign=ej2-angular-base)
8686

87-
© Copyright 2022 Syncfusion, Inc. All Rights Reserved.
87+
© Copyright 2019 Syncfusion, Inc. All Rights Reserved.
8888
The Syncfusion Essential Studio license and copyright applies to this distribution.

components/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-angular-base",
3-
"version": "20.1.48",
3+
"version": "19.7.0",
44
"description": "A common package of Essential JS 2 base Angular libraries, methods and class definitions",
55
"author": "Syncfusion Inc.",
66
"license": "SEE LICENSE IN license",

components/base/src/complex-array-base.ts

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -44,14 +44,8 @@ export class ComplexBase<T> {
4444
let templateProperties: string[] = Object.keys(this);
4545
for(let i = 0; i < templateProperties.length; i++) {
4646
var tempProp = getValue(templateProperties[i], this);
47-
if (typeof tempProp === 'object' && tempProp && tempProp.elementRef) {
48-
if (!getValue(templateProperties[i].indexOf('Ref') !== -1 ? templateProperties[i] : templateProperties[i] + 'Ref', this)) {
49-
setValue(templateProperties[i].indexOf('Ref') !== -1 ? templateProperties[i] : templateProperties[i] + 'Ref', tempProp, this);
50-
}
51-
if (getValue("viewContainerRef", this) && !getValue("_viewContainerRef", tempProp.elementRef.nativeElement) && !getValue("propName", tempProp.elementRef.nativeElement)) {
52-
setValue("_viewContainerRef", getValue("viewContainerRef", this), tempProp.elementRef.nativeElement);
53-
setValue("propName", templateProperties[i].replace("Ref", ''), tempProp.elementRef.nativeElement);
54-
}
47+
if (typeof tempProp === 'object' && tempProp.elementRef && !getValue(templateProperties[i]+'Ref', this)){
48+
setValue(templateProperties[i]+'Ref', tempProp, this);
5549
}
5650
}
5751
templateProperties = Object.keys(this)
@@ -70,7 +64,7 @@ export class ComplexBase<T> {
7064
if (this.directivePropList) {
7165
for (let k: number = 0; k < this.directivePropList.length; k++) {
7266
let dirPropName: string = this.directivePropList[k];
73-
if (propList.indexOf(dirPropName) !== -1 && (getValue(dirPropName, this) === false || getValue(dirPropName, this))) {
67+
if (propList.indexOf(dirPropName) !== -1 && getValue(dirPropName, this)) {
7468
setValue(dirPropName, getValue(dirPropName, this), this.propCollection);
7569
}
7670
}
@@ -217,9 +211,8 @@ export class ArrayBase<T> {
217211
this.list[i].propCollection.dataSource = this.list[i].dataSource;
218212
this.list[i].hasChanges = true;
219213
}
220-
}
221-
if (childrenDataSource[i].hasChanges) {
222-
isSourceChanged = true;
214+
isSourceChanged = (JSON.stringify(this.list[i].propCollection.dataSource) !==
215+
JSON.stringify(childrenDataSource[i].propCollection.dataSource));
223216
}
224217
}
225218
}

components/base/src/component-base.ts

Lines changed: 4 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -120,19 +120,6 @@ export class ComponentBase<T> {
120120
}
121121

122122
let complexTemplates: string[] = Object.keys(tempOnThis);
123-
for (let i = 0; i < complexTemplates.length; i++) {
124-
var compProp = getValue(complexTemplates[i], tempOnThis);
125-
if (typeof compProp === 'object' && compProp && compProp.elementRef) {
126-
if (typeof compProp === 'object' && compProp && compProp.elementRef && complexTemplates[i].indexOf('_') !== -1 && complexTemplates[i].indexOf('Ref') === -1) {
127-
setValue(complexTemplates[i] + 'Ref', compProp, tempOnThis);
128-
}
129-
if (tempOnThis.viewContainerRef && !getValue("_viewContainerRef", compProp.elementRef.nativeElement) && !getValue("propName", compProp.elementRef.nativeElement)) {
130-
setValue("_viewContainerRef", tempOnThis.viewContainerRef, compProp.elementRef.nativeElement);
131-
setValue("propName", complexTemplates[i].replace("Ref", ''), compProp.elementRef.nativeElement);
132-
}
133-
}
134-
}
135-
complexTemplates = Object.keys(tempOnThis);
136123
complexTemplates = complexTemplates.filter((val: string): boolean => {
137124
return /Ref$/i.test(val) && /\_/i.test(val);
138125
});
@@ -190,7 +177,7 @@ export class ComponentBase<T> {
190177
// Refer Link: https://github.com/angular/angular/issues/6005
191178
setTimeout(() => {
192179
/* istanbul ignore else */
193-
if (typeof window !== 'undefined' && tempAfterViewThis.element || tempAfterViewThis.getModuleName().includes('btn')) {
180+
if (typeof window !== 'undefined' && document.body.contains(tempAfterViewThis.element)) {
194181
tempAfterViewThis.appendTo(tempAfterViewThis.element);
195182
tempAfterViewThis.ngEle.nativeElement.style.visibility = '';
196183
}
@@ -202,7 +189,7 @@ export class ComponentBase<T> {
202189
let tempOnDestroyThis: any = isTempRef || this;
203190
/* istanbul ignore else */
204191
setTimeout(() => {
205-
if (typeof window !== 'undefined' && (tempOnDestroyThis.element.classList.contains('e-control'))) {
192+
if (typeof window !== 'undefined' && document.body.contains(tempOnDestroyThis.element) && tempOnDestroyThis.element.classList.contains('e-control')) {
206193
tempOnDestroyThis.destroy();
207194
tempOnDestroyThis.clearTemplate(null);
208195
// removing bounded events and tagobjects from component after destroy
@@ -274,7 +261,7 @@ export class ComponentBase<T> {
274261
tempAfterContentThis.setProperties(propObj, tagObject.instance.isInitChanges);
275262
} else {
276263
/* istanbul ignore next */
277-
if ((tempAfterContentThis[tagObject.name].length !== tagObject.instance.list.length) || (/diagram|tab/.test(tempAfterContentThis.getModuleName()))) {
264+
if ((tempAfterContentThis[tagObject.name].length !== tagObject.instance.list.length) || (tempAfterContentThis.getModuleName() === 'diagram')) {
278265
tempAfterContentThis[tagObject.name] = tagObject.instance.list;
279266
}
280267
for (let list of tagObject.instance.list) {
@@ -284,7 +271,7 @@ export class ComponentBase<T> {
284271
complexTemplates = complexTemplates.filter((val: string): boolean => {
285272
return /Ref$/i.test(val);
286273
});
287-
if (curChild.properties && Object.keys(curChild.properties).length !== 0){
274+
if (curChild.properties && Object.keys(curChild.properties).length !== 0 && /chart/.test(tempAfterContentThis.getModuleName())){
288275
for (let complexPropName of complexTemplates) {
289276
complexPropName = complexPropName.replace(/Ref/, '');
290277
curChild.properties[complexPropName] = !curChild.properties[complexPropName] ?

components/base/src/form-base.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ export class FormBase<T> implements ControlValueAccessor {
7777
public twoWaySetter(newVal: Object, prop: string): void {
7878
let oldVal: Object = this.oldValue || getValue(prop, this.properties);
7979
let ele: HTMLElement = this.inputElement || this.element;
80-
if (ele && oldVal === newVal && this.value === newVal &&
80+
if (ele && oldVal === newVal &&
8181
((<HTMLInputElement>ele).value === undefined || (<HTMLInputElement>ele).value === '')) {
8282
return;
8383
}

components/base/src/template.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ export function compile(templateEle: AngularElementType, helper?: Object):
2222
let conRef: ViewContainerRef = contRef ? contRef : component.viewContainerRef;
2323
let viewRef: EmbeddedViewRef<Object> = conRef.createEmbeddedView(templateEle as TemplateRef<Object>, context);
2424
viewRef.markForCheck();
25+
viewRef.detectChanges();
2526
/* istanbul ignore next */
2627
let viewCollection: { [key: string]: EmbeddedViewRef<Object>[] } = (component && component.registeredTemplate) ?
2728
component.registeredTemplate : getValue('currentInstance.registeredTemplate', conRef);
@@ -78,4 +79,4 @@ export interface AngularElementType {
7879
}
7980

8081
//tslint:disable-next-line
81-
setTemplateEngine({ compile: (compile as any) });
82+
setTemplateEngine({ compile: (compile as any) });

components/buttons/CHANGELOG.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@
22

33
## [Unreleased]
44

5-
## 20.1.50 (2022-04-19)
5+
## 20.2.36 (2022-06-30)
66

77
### Checkbox
88

99
#### Bug Fixes
1010

11-
- `F173431` - Issue with Checkbox validation state is incorrect issue has been resolved.
11+
- `F379986` - The issue with "Screen reader reads checkbox field twice for tab keypress" has been resolved.
1212

1313
## 19.2.47 (2021-07-13)
1414

components/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-angular-buttons",
3-
"version": "20.1.55",
3+
"version": "20.2.36",
44
"description": "A package of feature-rich Essential JS 2 components such as Button, CheckBox, RadioButton and Switch. for Angular",
55
"author": "Syncfusion Inc.",
66
"license": "SEE LICENSE IN license",

components/calendars/CHANGELOG.md

Lines changed: 0 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -2,28 +2,6 @@
22

33
## [Unreleased]
44

5-
## 20.1.58 (2022-05-31)
6-
7-
### DatePicker
8-
9-
#### Bug Fixes
10-
11-
- `#F34697` - Issue with "able to clear the input value using clear button when component in readonly mode" has been resolved.
12-
13-
## 20.1.57 (2022-05-24)
14-
15-
### DateRangePicker
16-
17-
#### Bug Fixes
18-
19-
- `#I378357` - Issue with "tab key navigation is not working between calendars" has been resolved.
20-
21-
### DateTimePicker
22-
23-
#### Bug Fixes
24-
25-
- `#I373889` - Issue with "navigated to year section after typing 0 in the month section" has been resolved.
26-
275
## 19.3.46 (2021-10-19)
286

297
### TimePicker

0 commit comments

Comments
 (0)