Skip to content

Commit fc0bec9

Browse files
author
pipeline
committed
v28.1.37 is released
1 parent ba98486 commit fc0bec9

File tree

172 files changed

+2496
-655
lines changed

Some content is hidden

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

172 files changed

+2496
-655
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-
## 28.1.36 (2024-12-24)
5+
## 28.1.37 (2024-12-31)
66

77
### Barcode
88

controls/buttons/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-
## 28.1.36 (2024-12-24)
5+
## 28.1.37 (2024-12-31)
66

77
### Switch
88

controls/calendars/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-
## 28.1.36 (2024-12-24)
5+
## 28.1.37 (2024-12-31)
66

77
### DateRangePicker
88

controls/charts/CHANGELOG.md

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

33
## [Unreleased]
44

5-
## 28.1.36 (2024-12-24)
5+
## 28.1.37 (2024-12-31)
6+
7+
### Chart
8+
9+
#### Bug Fixes
10+
11+
- `#I667080` - The column series now renders properly when the width is set in pixels and `enableSideBySidePlacement` is set to false.
12+
- `#I654525` - The y-axis now dynamically adjusts to accommodate negative ranges when the negative error bar exceeds the minimum value.
13+
14+
## 28.1.36
615

716
### Chart
817

controls/charts/spec/chart/series/waterfall-series.spec.ts

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1224,6 +1224,26 @@ describe('Waterfall Series', () => {
12241224
chart.series[0].intermediateSumIndexes = [4, 7];
12251225
chart.refresh();
12261226
});
1227+
it('Checking with sum index', (done: Function) => {
1228+
loaded = (args: ILoadedEventArgs): void => {
1229+
let point: number = args.chart.visibleSeries[0].points[8].y as number;
1230+
expect(point).toBe(3685);
1231+
done();
1232+
};
1233+
chart.loaded = loaded;
1234+
chart.series[0].dataSource = [ { x: 'Income', y: 4711 },
1235+
{ x: 'Sales', y: -1015 },
1236+
{ x: 'Development', y: -688 },
1237+
{ x: 'Revenue', y: 1030 },
1238+
{ x: 'Balance' },
1239+
{ x: 'Administrative', y: -780 },
1240+
{ x: 'Expense', y: -261 },
1241+
{ x: 'Tax', y: 0 },
1242+
{ x: 'Net Profit' },];
1243+
chart.series[0].sumIndexes = [8];
1244+
chart.series[0].intermediateSumIndexes = [2, 4, 7];
1245+
chart.refresh();
1246+
});
12271247
});
12281248
it('memory leak', () => {
12291249
profile.sample();

controls/charts/src/chart/series/chart-series.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1206,19 +1206,25 @@ export class SeriesBase extends ChildProperty<SeriesBase> {
12061206
if (this instanceof Series) {
12071207
if (this.chart.errorBarModule) {
12081208
let maxVerticalError: number;
1209+
let minVerticalError: number;
12091210
if (this.errorBar.verticalError) {
12101211
for (let i: number = 0; i < this.points.length; i++) {
12111212
const verticalErrors: number[] = [];
1213+
const minVerticalErrorValue: number[] = [];
12121214
for (let i: number = 0; i < this.points.length; i++) {
12131215
const point: Points = this.points[i as number];
12141216
if (point.verticalError) {
12151217
verticalErrors.push(point.verticalError);
1218+
minVerticalErrorValue.push(point.yValue - point.verticalError);
12161219
}
12171220
}
12181221
maxVerticalError = verticalErrors && verticalErrors.length > 0 ? Math.max(...verticalErrors) : 0;
1222+
minVerticalError = verticalErrors && verticalErrors.length > 0 ? Math.min(...minVerticalErrorValue) : 0;
12191223
}
12201224
}
1221-
this.yMax += !isNaN(maxVerticalError) ? maxVerticalError : 0;
1225+
this.yMax += !isNaN(maxVerticalError) && isNullOrUndefined(this.yAxis.maximum) ? maxVerticalError : 0;
1226+
this.yMin = !isNaN(minVerticalError) && minVerticalError < this.yMin && isNullOrUndefined(this.yAxis.minimum) ?
1227+
minVerticalError : this.yMin;
12221228
}
12231229
}
12241230
}

controls/charts/src/chart/series/column-base.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ export class ColumnBase {
3131
public element: HTMLElement;
3232
protected getSideBySideInfo(series: Series): DoubleRange {
3333
series.isRectSeries = true;
34-
if (series.chart.enableSideBySidePlacement && !series.position) {
34+
if ((series.chart.enableSideBySidePlacement && !series.position) || !isNullOrUndefined(series.columnWidthInPixel)) {
3535
this.getSideBySidePositions(series);
3636
}
3737
if (series.columnWidthInPixel) {

controls/charts/src/chart/series/waterfall-series.ts

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import { Series, Points } from './chart-series';
55
import { DoubleRange } from '../utils/double-range';
66
import { ColumnBase } from './column-base';
77
import { IPointRenderEventArgs } from '../../chart/model/chart-interface';
8-
import { animationMode } from '@syncfusion/ej2-base';
8+
import { animationMode, isNullOrUndefined } from '@syncfusion/ej2-base';
99

1010
/**
1111
* The `WaterfallSeries` module is used to render the waterfall series.
@@ -214,8 +214,10 @@ export class WaterfallSeries extends ColumnBase {
214214
*/
215215
public processInternalData(json: Object[], series: Series): Object[] {
216216
const data: Object[] = json; let index: number; let sumValue : number = 0;
217-
const intermediateSum: number[] = series.intermediateSumIndexes;
218-
const sumIndex: number[] = series.sumIndexes;
217+
const intermediateSum: number[] = (!isNullOrUndefined(series.intermediateSumIndexes) && series.intermediateSumIndexes.length > 0) ?
218+
series.intermediateSumIndexes.sort() : series.intermediateSumIndexes;
219+
const sumIndex: number[] = (!isNullOrUndefined(series.sumIndexes) && series.sumIndexes.length > 0) ? series.sumIndexes.sort() :
220+
series.sumIndexes;
219221
let cumulativeSum: number = 0;
220222
for (let i: number = 0; i < data.length; i++) {
221223
cumulativeSum += data[i as number][series.yName] !== undefined ? data[i as number][series.yName] : 0;
@@ -241,15 +243,16 @@ export class WaterfallSeries extends ColumnBase {
241243
for (let j: number = 0; j < data.length; j++) {
242244
if (j === sumIndex[k as number]) {
243245
if (intermediateSum !== undefined && intermediateSum.length > intermediateSumCount &&
244-
intermediateSum[k as number] !== sumIndex[k as number]) {
246+
intermediateSum[k as number] !== sumIndex[k as number] && intermediateSum[k as number] <
247+
sumIndex[k as number]) {
245248
index = subArraySum(data, intermediateSum.length <= 1 ? intermediateSum[0] - 1 :
246249
intermediateSum[k as number] - 1, sumIndex[k as number], sumIndex, series);
247250
intermediateSumCount += 1;
248251
} else {
249252
if (k === 0) {
250253
index = subArraySum(data, -1, sumIndex[k as number], null, series);
251254
} else {
252-
index = subArraySum(data, sumIndex[k - 1], sumIndex[k as number], null, series);
255+
index = subArraySum(data, sumIndex[k as number - 1], sumIndex[k as number], null, series);
253256
}
254257
}
255258
sumValue += index;

controls/charts/src/common/utils/helper.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -333,8 +333,8 @@ export function subArraySum(values: Object[], first: number, last: number, index
333333
let isFirst: boolean = true;
334334
if (index !== null) {
335335
for (let i: number = (first + 1); i < last; i++) {
336-
if (index.indexOf(i) === -1 && (i !== series.intermediateSumIndexes[sumIndex as number] ||
337-
(i === series.intermediateSumIndexes[sumIndex as number] && isFirst))) {
336+
if (index.indexOf(i) === -1 && (i === series.intermediateSumIndexes[sumIndex as number] ||
337+
series.intermediateSumIndexes[series.intermediateSumIndexes.length - 1] < i)) {
338338
sum += values[i as number][series.yName] as number;
339339
if (i === series.intermediateSumIndexes[sumIndex as number]) {
340340
isFirst = false;
@@ -343,9 +343,9 @@ export function subArraySum(values: Object[], first: number, last: number, index
343343
}
344344
}
345345
} else {
346-
347346
for (let i: number = (first + 1); i < last; i++) {
348-
if (!isNullOrUndefined(values[i as number][series.yName])) {
347+
if (!isNullOrUndefined(values[i as number][series.yName]) && !isNullOrUndefined(series.sumIndexes) &&
348+
series.sumIndexes.indexOf(i) === -1) {
349349
sum += values[i as number][series.yName] as number;
350350
}
351351
}

controls/data/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-
## 28.1.36 (2024-12-24)
5+
## 28.1.37 (2024-12-31)
66

77
### DataManager
88

0 commit comments

Comments
 (0)