master
fix(parallel): preserve areaSelectStyle on persisted selection. close #21583
fix: (1) Fix geo roam (pan and zoom) causes visual artifacts -- geo coord sys and its content (e.g., scatter) should visually align during roaming animation and manual roam. (2) Refactor to uniform roaming impl (via RoamController and ViewCoordSys) and clarify `updateTransform` and related code. (3) Enable scatter and effectScatter clip in geo. (4) Fix aria: palette is modified to ec instance local rather than global, which is more reasonable. (5) Fix map series roaming bug: roam and then click legend hide the first series and then roam and then click legend to restore the first series, the map should not jump.
refact: put all core modules in the core dir. only do export in lib/echarts
feat(thumbnail): (1) Refactor thumbnail to a component for further extension, and add test cases. (2) Fix RoamController cursor style.
feat(roam): Change cursor style to indicate the draggable area. (effect geo/insideDataZoom/treemap/sankey/graph roam)
feat(matrix & calendar): (1). Support matrix col/row size option. (2). Support corner content options in matrix. (3) Support body content options. (4). Support matrix `mergeCells`. (5). Fix and refactor the matrix style options, conserning their inheritance and z-order and flexibility. (6). Support declaratively layout other components (including grid/polar/geo/graph coord sys, and dataZoom/visualMap/legend/... components) based on `matrix`/`calendar`. And and enhance the echarts API `convertToLayout`/`convertToPixel`, custom series API `api.coord`/`api.coord` to support this feature comprehansively. Considering the previous "pie layout on coord sys", introduce the `boxCooridnateSystem` and `createBoxLayoutReference` to all of the components and echarts for the overall coord sys infrastructure. (7). Add some test cases to matrix and calendar.
fix(axisTick&dataZoom): (1) Apply a better auto-precision method. (2) Make the rounding result consistent between dataZoom calculated window and specified axis `determinedMin/Max`. (3) Fix unexpected behaviors when dataZoom controls axes with `alignTicks: true` - previous they are not precisely aligned and the ticks jump significantly due to inappropriate rounding when dataZoom dragging.