Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
71 commits
Select commit Hold shift + click to select a range
eb45d17
fix(axis): fix axis label may have inappropriate precision or take to…
plainheart Dec 17, 2025
4cf7cb4
test(dataZoom): fix test case -- accidentally broken in v6. And add m…
100pah Jan 8, 2026
d013d5e
timeScale: Add the missing rounding (broken from a previous version) …
100pah Jan 8, 2026
479dcd4
fix&feat: Change and clarify the rounding error and auto-precision ut…
100pah Jan 9, 2026
d168bf2
fix(axisTick&dataZoom): (1) Apply a better auto-precision method. (2)…
100pah Jan 9, 2026
ffcc636
fix(alignTicks): Change alignTick strategy: (1) Previously some serie…
100pah Jan 9, 2026
a6ab245
feat(alignTicks): (1) Fix LogScale precision. (2) Tweak align ticks l…
100pah Jan 14, 2026
18a23a8
refactor(scale): For readability and maintainability (1) Migrate `cal…
100pah Jan 18, 2026
0f4561d
refactor&fix: (1) Unify series data union code - remove union code fr…
100pah Jan 24, 2026
dedc5dc
fix(logScale): (1) Thoroughly resolve a long-standing issue of non-po…
100pah Jan 25, 2026
28e74ef
fix(pie-on-cartesian): Previously when pie is located on Cartesian, a…
100pah Jan 25, 2026
64305a4
fix(dataZoom): (1) Fix dataZoom dragging cursor style (use 'drag' and…
100pah Jan 25, 2026
fe932a2
refactor&feature:
100pah Feb 17, 2026
1f74fd7
test(visual): Update markers.
100pah Feb 17, 2026
c4a3823
Merge branch 'release' into pr/plainheart_fix/alignTicks-precision
100pah Feb 17, 2026
bdec91e
refactor: Remove the default value of number round due to its unreaso…
100pah Feb 17, 2026
52ceb92
fix: (1) Fix dataZoom AxisProxy can not be cleared when dataZoom opti…
100pah Feb 18, 2026
d47ea4a
fix(dataZoom): Do not display values outside of effective extent.
100pah Feb 19, 2026
b16d96c
chore: Tweak the usage of isFinite.
100pah Feb 20, 2026
8de2b64
feature&fix(axis):
100pah Feb 27, 2026
7a8d38b
fix: Fix inappropriate impl introduced by the previous commits.
100pah Feb 27, 2026
dbfaf6a
fix&feature:
100pah Mar 6, 2026
18bedbb
fix: Temporarily fix incorrect stack base dimension selection when bo…
100pah Mar 6, 2026
bb56e9a
chore: Sync the modification of #21448 to release.
100pah Mar 6, 2026
bd19110
fix: (1) Clarify and uniform terminology and add comments to explain …
100pah Mar 7, 2026
eb7530b
fix(appendData): Fix that the dataZoom inside is disabled when append…
100pah Mar 8, 2026
d2cc085
tweak: Clarity the previous implements of axis statistics.
100pah Mar 9, 2026
12b6d9f
Merge branch 'release' into PR/plainheart_fix/alignTicks-precision
100pah Mar 9, 2026
b094f98
fix(toolbox): Fix that toolbox theme cause corresponding icons are al…
100pah Mar 10, 2026
6de824d
fix(toolbox): Simplify toolbox and fix that toolbox throw error when …
100pah Mar 10, 2026
abb3ad4
fix: fix previous commit.
100pah Mar 12, 2026
9335851
fix: (1) Previously hoverLayerThreshold modification does not work. (…
100pah Mar 15, 2026
56a32c0
fix(axisPointer&tooltip): (1) axisPointer and tooltip should be able …
100pah Mar 15, 2026
f019371
test: add hover layer test.
100pah Mar 17, 2026
91a60fc
fix(progressive): (1) Fix that candlestick large data progressive ren…
100pah Mar 23, 2026
15af0db
fix: Fix min/max label show in category axis. Previously, axisLabel.s…
100pah Mar 24, 2026
7a9eda4
Fix bugs introduced by preceding commit.
100pah Mar 24, 2026
8ddaa5c
Fix category axis min/max ticks/labels show hide when interval > 0. R…
100pah Mar 26, 2026
04763b9
Supplement tests and fix boxplot (broken by preceding commits)
100pah Mar 27, 2026
8cd5c80
fix: Simplify and clarify the code about axis ticks regarding ordinal…
100pah Mar 28, 2026
3ceabff
Fix and add test cases (introduced by preceding commits)
100pah Mar 28, 2026
5fd5980
Tweak mktest.
100pah Mar 28, 2026
b81fa44
fix: Fix issues in regression test.
100pah Mar 29, 2026
56f6dc3
fix: Fix and clarify the definition of axis.`startValue`.
100pah Mar 30, 2026
9c4aa42
fix: Fix candlestick clip path on category axis.
100pah Mar 30, 2026
25bb7da
fix_regression: Fix onZero and startValue backward compatibility.
100pah Mar 31, 2026
3973b21
fix: (1) Fix: fix bar overflow issue on category axis with boundaryGa…
100pah Apr 2, 2026
1e6a16f
test regression: fix recent broken.
100pah Apr 2, 2026
2064963
fix regression: (1) User specified `interval` show be backward compat…
100pah Apr 3, 2026
40b77b4
fix: (1) Fix time axis reach safeLimit when value scale is milisecond…
100pah Apr 5, 2026
990f3ef
test: add test.
100pah Apr 5, 2026
2eec8a8
fix(progressive): No need to explicitly assign zlevel for el.incremen…
100pah Apr 6, 2026
03f0e33
fix regression: (1) Revert the recent change to zlevelKey for backwar…
100pah Apr 7, 2026
694c44a
fix regression: bandWidth and containShape should properly handle sin…
100pah Apr 7, 2026
fbe49c8
fix regression: Fix gauge label precision.
100pah Apr 7, 2026
2e82d33
fix regression: onZero should be backward compatibility. And clarify …
100pah Apr 8, 2026
4b99289
chore: (1) Shift all pure function handlers (legacy pattern) to stage…
100pah Apr 8, 2026
8a17066
fix regression: Fix category axis backward compatibility and axis sta…
100pah Apr 8, 2026
e5744ce
fix regression: Fix NPE and simplify code.
100pah Apr 9, 2026
6dff663
test: Add test util for canvas layer debug.
100pah Apr 9, 2026
14cc0f8
test: Add visual test marks for v6.1.0.
100pah Apr 10, 2026
64c1c66
Merge branch 'release' into PR/plainheart_fix/alignTicks-precision
100pah Apr 10, 2026
963e99d
fix regression: fix test cases.
100pah Apr 10, 2026
e548306
test: fix UT.
100pah Apr 11, 2026
483afa2
Merge branch 'release' into PR/plainheart_fix/alignTicks-precision
100pah Apr 11, 2026
505dbed
fix: Separate `npm prepare` from other build scripts. The reason is: …
100pah Apr 28, 2026
4175922
fix: (1) Fix geo roam (pan and zoom) causes visual artifacts -- geo c…
100pah Apr 29, 2026
cc4bd9f
dep: rollback @rollup/plugin-terser to 0.4.4 .
100pah Apr 29, 2026
db12d57
fix: Enable axis statistics to be able to register -- exclude if unne…
100pah May 3, 2026
6de21a3
test: Enable echarts-examples/e2e test result to be executed in echar…
100pah May 3, 2026
7c7b104
dep: upgrade zrender to 6.1.0 and update package-lock.json.
100pah May 4, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -213,3 +213,4 @@ todo
/features.js
/features.d.ts
*.tgz
/test/ZEXAMPLE_*
34 changes: 16 additions & 18 deletions test/stream-basic.css → build/build-lib.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
#!/usr/bin/env node

/*
* Licensed to the Apache Software Foundation (ASF) under one
Expand All @@ -18,22 +19,19 @@
* under the License.
*/

.print-incremental-record-title {
margin: 10px;
font-size: 18px;
font-weight: 700;
}
.print-incremental-record-title .print-incremental-cmd-count {
color: red;
}
.print-incremental-record {
margin: 5px 20px;
}
.print-incremental-record-line {
margin: 10px 10px;
font-size: 10px;
}
.print-incremental-record-line .print-incremental-cmd-count {
color: red;
font-size: 12px;

/**
* [CAUTION]!!!
* Ensure this script to be able to run in low versions of Node.js, since
* npm local install or npm install from git can call `npm run prepare`
* automatically, which calls this script. Users existing pipelines may
* use old versions of Node.js. But `build/build.js` requires Node.js
* version > v19 or higher due to some lib like rollup-terser.
*/
const prePublish = require('./pre-publish');

async function run() {
await prePublish();
}

run();
90 changes: 53 additions & 37 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 8 additions & 0 deletions package.README.md
Original file line number Diff line number Diff line change
Expand Up @@ -112,3 +112,11 @@ See `MIN_VERSION` in `echarts/build/testDts.js` for the minimal supported TS ver
+ `echarts/type/dist/all.d.ts` `echarts/type/dist/core.d.ts` `echarts/type/dist/option.d.ts` `echarts/type/dist/features.d.ts` `echarts/type/dist/components.d.ts` `echarts/type/dist/charts.d.ts` `echarts/type/dist/renderers.d.ts` import type declarations from a single source `echarts/types/dist/shared.d.ts`; otherwise TS error `TS2442` may occur.

+ TSv4.7~TSv5.7 disallows `require` a ESM file from a CJS file when `moduleResolution: "NodeNext"` (introduced in TSv4.7); otherwise TS error `TS1471` may arise. `tsc` recognizes `.cts` as CJS rather than ESM even when `package.json` uses `"type": "module"`.



## Library dependency records

+ @rollup/plugin-terser:
+ Temporarily deliberately use v0.4.4, since v1.0.0+ require newer versions of Node.js (may v19+) and may break users existing pipeline, and v0.4.4 has no security issue yet and produces the same size of min file. It can be upgraded to v1.0.0+ in future if concrete requirements arise.

10 changes: 7 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@
"build": "node build/build.js --type all,common,simple --min",
"build:esm": "node build/build.js --type all --min --format esm",
"build:i18n": "node build/build-i18n.js",
"build:lib": "node build/build.js --prepublish",
"build:lib": "node build/build-lib.js",
"build:extension": "node build/build.js --type extension",
"build:ssr": "node build/build.js --type ssr",
"dev:fast": "node build/build-i18n.js && node build/dev-fast.js",
Expand All @@ -53,12 +53,16 @@
"release": "npm run build:lib && npm run build:i18n && npm run build && npm run build:esm && npm run build:extension && npm run build:ssr",
"help": "node build/build.js --help",
"test:visual": "node test/runTest/server.js",
"test:visual:copy:examples": "node test/runTest/visual-test-copy-from-examples.js",
"test": "npx jest --config test/ut/jest.config.cjs",
"test:single": "npx jest --config test/ut/jest.config.cjs --coverage=false -t",
"test:single:debug": "npx --node-arg=--inspect-brk jest --runInBand --config test/ut/jest.config.cjs --coverage=false -t",
"test:dts": "npm install --prefix ./test/types && node build/testDts.js",
"test:dts:fast": "node build/testDts.js",
"mktest": "node test/build/mktest.js",
"mktest2": "node test/build/mktest.js --with-inputs-common",
"mktest3": "node test/build/mktest.js --with-inputs-all",
"mktest:canvas:debug": "node test/build/mktest.js --with-canvas-debug",
"mktest:help": "node test/build/mktest.js -h",
"checktype": "tsc --noEmit",
"checkheader": "node build/checkHeader.js",
Expand All @@ -68,7 +72,7 @@
},
"dependencies": {
"tslib": "2.3.0",
"zrender": "6.0.0"
"zrender": "6.1.0"
},
"devDependencies": {
"@babel/code-frame": "7.10.4",
Expand All @@ -81,7 +85,7 @@
"@rollup/plugin-commonjs": "^17.0.0",
"@rollup/plugin-node-resolve": "^11.0.0",
"@rollup/plugin-replace": "^2.3.4",
"@rollup/plugin-terser": "^1.0.0",
"@rollup/plugin-terser": "0.4.4",
"@types/jest": "^26.0.14",
"@typescript-eslint/eslint-plugin": "^4.33.0",
"@typescript-eslint/parser": "^4.33.0",
Expand Down
2 changes: 1 addition & 1 deletion src/animation/basicTransition.ts
Original file line number Diff line number Diff line change
Expand Up @@ -216,7 +216,7 @@ function animateOrSetProps<Props>(
* position: [100, 100]
* }, seriesModel, function () { console.log('Animation done!'); });
*/
function updateProps<Props extends ElementProps>(
function updateProps<Props extends ElementProps>(
el: Element<Props>,
props: Props,
// TODO: TYPE AnimatableModel
Expand Down
22 changes: 14 additions & 8 deletions src/chart/bar/BarSeries.ts
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,10 @@ import { inheritDefaultOption } from '../../util/component';
import SeriesData from '../../data/SeriesData';
import { BrushCommonSelectorsForSeries } from '../../component/brush/selector';
import tokens from '../../visual/tokens';
import { preparePipelineContext } from '../../util/model';
import type { Pipeline } from '../../core/Scheduler';
import type ChartView from '../../view/Chart';
import { SERIES_TYPE_BAR } from '../../layout/barCommon';

type PolarBarLabelPositionExtra = 'start' | 'insideStart' | 'middle' | 'end' | 'insideEnd';
export type PolarBarLabelPosition = SeriesLabelOption['position'] | PolarBarLabelPositionExtra;
Expand Down Expand Up @@ -94,7 +98,7 @@ export interface BarSeriesOption
}

class BarSeriesModel extends BaseBarSeriesModel<BarSeriesOption> {
static type = 'series.bar';
static type = 'series.' + SERIES_TYPE_BAR;
type = BarSeriesModel.type;

static dependencies = ['grid', 'polar'];
Expand All @@ -119,16 +123,18 @@ class BarSeriesModel extends BaseBarSeriesModel<BarSeriesOption> {
}

/**
* @override
* @implement
*/
getProgressiveThreshold() {
__preparePipelineContext(
view: ChartView,
pipeline: Pick<Pipeline, 'progressiveEnabled' | 'threshold'>
) {
const context = preparePipelineContext(this, view, pipeline);
// Do not support progressive in normal mode.
let progressiveThreshold = this.get('progressiveThreshold');
const largeThreshold = this.get('largeThreshold');
if (largeThreshold > progressiveThreshold) {
progressiveThreshold = largeThreshold;
if (context.progressiveRender) {
context.large = true;
}
return progressiveThreshold;
return context;
}

brushSelector(dataIndex: number, data: SeriesData, selectors: BrushCommonSelectorsForSeries): boolean {
Expand Down
Loading