@visactor/vchart 2.1.0-alpha.0 → 2.1.0-alpha.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/es5/index.js +3 -3
- package/build/index.es.js +5977 -3297
- package/build/index.js +5977 -3297
- package/build/index.min.js +2 -2
- package/build/tsconfig.tsbuildinfo +1 -1
- package/cjs/chart/base/base-chart-transformer.d.ts +3 -0
- package/cjs/chart/base/base-chart-transformer.js +23 -3
- package/cjs/chart/base/base-chart-transformer.js.map +1 -1
- package/cjs/chart/base/base-chart.d.ts +25 -9
- package/cjs/chart/base/base-chart.js +199 -27
- package/cjs/chart/base/base-chart.js.map +1 -1
- package/cjs/chart/gauge/gauge-transformer.js +3 -2
- package/cjs/chart/gauge/gauge-transformer.js.map +1 -1
- package/cjs/chart/interface/chart.d.ts +1 -0
- package/cjs/chart/interface/chart.js.map +1 -1
- package/cjs/chart/pie/base/pie-transformer.js +2 -2
- package/cjs/chart/pie/base/pie-transformer.js.map +1 -1
- package/cjs/chart/polar/polar-transformer.js +1 -1
- package/cjs/chart/polar/polar-transformer.js.map +1 -1
- package/cjs/chart/polar/progress-like/progress-like-transformer.js +1 -1
- package/cjs/chart/polar/progress-like/progress-like-transformer.js.map +1 -1
- package/cjs/chart/progress/circular/circular-progress-transformer.js +2 -1
- package/cjs/chart/progress/circular/circular-progress-transformer.js.map +1 -1
- package/cjs/chart/progress/linear/linear-progress-transformer.js +1 -1
- package/cjs/chart/progress/linear/linear-progress-transformer.js.map +1 -1
- package/cjs/chart/radar/radar-transformer.js +3 -2
- package/cjs/chart/radar/radar-transformer.js.map +1 -1
- package/cjs/chart/range-area/range-area-transformer.js +2 -2
- package/cjs/chart/range-area/range-area-transformer.js.map +1 -1
- package/cjs/chart/rose/rose-transformer.js +2 -1
- package/cjs/chart/rose/rose-transformer.js.map +1 -1
- package/cjs/chart/util.d.ts +4 -1
- package/cjs/chart/util.js +40 -4
- package/cjs/chart/util.js.map +1 -1
- package/cjs/chart/waterfall/waterfall-transformer.js +2 -1
- package/cjs/chart/waterfall/waterfall-transformer.js.map +1 -1
- package/cjs/compile/compiler.js +11 -9
- package/cjs/compile/compiler.js.map +1 -1
- package/cjs/compile/data/compilable-data.d.ts +1 -1
- package/cjs/compile/data/compilable-data.js +1 -1
- package/cjs/compile/data/compilable-data.js.map +1 -1
- package/cjs/compile/grammar-item.d.ts +1 -1
- package/cjs/compile/grammar-item.js.map +1 -1
- package/cjs/compile/interface/compilable-item.d.ts +1 -1
- package/cjs/compile/interface/compilable-item.js.map +1 -1
- package/cjs/component/axis/base-axis.d.ts +2 -7
- package/cjs/component/axis/base-axis.js +26 -6
- package/cjs/component/axis/base-axis.js.map +1 -1
- package/cjs/component/axis/cartesian/band-axis.d.ts +1 -7
- package/cjs/component/axis/mixin/linear-axis-mixin.js +7 -10
- package/cjs/component/axis/mixin/linear-axis-mixin.js.map +1 -1
- package/cjs/component/axis/polar/band-axis.d.ts +2 -0
- package/cjs/component/axis/polar/band-axis.js +3 -0
- package/cjs/component/axis/polar/band-axis.js.map +1 -1
- package/cjs/component/axis/polar/linear-axis.js +3 -0
- package/cjs/component/axis/polar/linear-axis.js.map +1 -1
- package/cjs/component/base/base-component.d.ts +7 -7
- package/cjs/component/base/base-component.js +41 -6
- package/cjs/component/base/base-component.js.map +1 -1
- package/cjs/component/base/release-vrender-component.d.ts +10 -0
- package/cjs/component/base/release-vrender-component.js +37 -0
- package/cjs/component/base/release-vrender-component.js.map +1 -0
- package/cjs/component/brush/brush.d.ts +3 -7
- package/cjs/component/brush/brush.js +22 -5
- package/cjs/component/brush/brush.js.map +1 -1
- package/cjs/component/crosshair/base.d.ts +4 -7
- package/cjs/component/crosshair/base.js +30 -2
- package/cjs/component/crosshair/base.js.map +1 -1
- package/cjs/component/custom-mark/custom-mark.d.ts +4 -7
- package/cjs/component/custom-mark/custom-mark.js +27 -3
- package/cjs/component/custom-mark/custom-mark.js.map +1 -1
- package/cjs/component/data-zoom/data-filter-base-component.d.ts +3 -7
- package/cjs/component/data-zoom/data-filter-base-component.js +15 -2
- package/cjs/component/data-zoom/data-filter-base-component.js.map +1 -1
- package/cjs/component/data-zoom/data-zoom/data-zoom.d.ts +1 -0
- package/cjs/component/data-zoom/data-zoom/data-zoom.js +19 -1
- package/cjs/component/data-zoom/data-zoom/data-zoom.js.map +1 -1
- package/cjs/component/data-zoom/scroll-bar/scroll-bar.d.ts +1 -0
- package/cjs/component/data-zoom/scroll-bar/scroll-bar.js +12 -1
- package/cjs/component/data-zoom/scroll-bar/scroll-bar.js.map +1 -1
- package/cjs/component/geo/geo-coordinate.d.ts +1 -7
- package/cjs/component/index.js +1 -2
- package/cjs/component/indicator/indicator.d.ts +1 -0
- package/cjs/component/indicator/indicator.js +11 -2
- package/cjs/component/indicator/indicator.js.map +1 -1
- package/cjs/component/indicator/util.d.ts +4 -3
- package/cjs/component/indicator/util.js +1 -1
- package/cjs/component/indicator/util.js.map +1 -1
- package/cjs/component/label/base-label.d.ts +1 -7
- package/cjs/component/label/base-label.js +6 -2
- package/cjs/component/label/base-label.js.map +1 -1
- package/cjs/component/label/label.js +1 -1
- package/cjs/component/label/label.js.map +1 -1
- package/cjs/component/legend/base-legend.d.ts +2 -7
- package/cjs/component/legend/base-legend.js +20 -3
- package/cjs/component/legend/base-legend.js.map +1 -1
- package/cjs/component/marker/base-marker.d.ts +14 -7
- package/cjs/component/marker/base-marker.js +108 -12
- package/cjs/component/marker/base-marker.js.map +1 -1
- package/cjs/component/marker/mark-area/cartesian-mark-area.js +3 -3
- package/cjs/component/marker/mark-area/cartesian-mark-area.js.map +1 -1
- package/cjs/component/marker/mark-area/polar-mark-area.js +2 -2
- package/cjs/component/marker/mark-area/polar-mark-area.js.map +1 -1
- package/cjs/component/marker/mark-line/base-mark-line.js +2 -4
- package/cjs/component/marker/mark-line/base-mark-line.js.map +1 -1
- package/cjs/component/marker/mark-line/cartesian-mark-line.js +2 -2
- package/cjs/component/marker/mark-line/cartesian-mark-line.js.map +1 -1
- package/cjs/component/marker/mark-line/polar-mark-line.js +2 -2
- package/cjs/component/marker/mark-line/polar-mark-line.js.map +1 -1
- package/cjs/component/marker/mark-point/base-mark-point.js +20 -6
- package/cjs/component/marker/mark-point/base-mark-point.js.map +1 -1
- package/cjs/component/marker/mark-point/cartesian-mark-point.js +2 -2
- package/cjs/component/marker/mark-point/cartesian-mark-point.js.map +1 -1
- package/cjs/component/marker/mark-point/polar-mark-point.js +1 -1
- package/cjs/component/marker/mark-point/polar-mark-point.js.map +1 -1
- package/cjs/component/marker/utils.d.ts +4 -4
- package/cjs/component/marker/utils.js +27 -23
- package/cjs/component/marker/utils.js.map +1 -1
- package/cjs/component/player/player.d.ts +1 -0
- package/cjs/component/player/player.js +10 -0
- package/cjs/component/player/player.js.map +1 -1
- package/cjs/component/title/title.d.ts +1 -7
- package/cjs/component/title/title.js +6 -2
- package/cjs/component/title/title.js.map +1 -1
- package/cjs/component/tooltip/tooltip.d.ts +1 -0
- package/cjs/component/tooltip/tooltip.js +8 -0
- package/cjs/component/tooltip/tooltip.js.map +1 -1
- package/cjs/constant/attribute.js +2 -1
- package/cjs/constant/scatter.js +1 -2
- package/cjs/constant/waterfall.js +2 -1
- package/cjs/core/expression-function.js +1 -1
- package/cjs/core/vchart.d.ts +5 -1
- package/cjs/core/vchart.js +29 -17
- package/cjs/core/vchart.js.map +1 -1
- package/cjs/data/data-view-utils.d.ts +5 -0
- package/cjs/data/data-view-utils.js +58 -0
- package/cjs/data/data-view-utils.js.map +1 -0
- package/cjs/data/initialize.js +1 -1
- package/cjs/data/register.js +1 -1
- package/cjs/data/transforms/box-plot.d.ts +4 -1
- package/cjs/data/transforms/box-plot.js +3 -3
- package/cjs/data/transforms/box-plot.js.map +1 -1
- package/cjs/data/transforms/correlation-center.d.ts +11 -4
- package/cjs/data/transforms/correlation-center.js +3 -2
- package/cjs/data/transforms/correlation-center.js.map +1 -1
- package/cjs/data/transforms/correlation.d.ts +18 -15
- package/cjs/data/transforms/correlation.js +22 -17
- package/cjs/data/transforms/correlation.js.map +1 -1
- package/cjs/data/transforms/funnel.d.ts +10 -8
- package/cjs/data/transforms/funnel.js +4 -3
- package/cjs/data/transforms/funnel.js.map +1 -1
- package/cjs/data/transforms/lookup.d.ts +3 -3
- package/cjs/data/transforms/lookup.js +12 -7
- package/cjs/data/transforms/lookup.js.map +1 -1
- package/cjs/data/transforms/map.d.ts +8 -2
- package/cjs/data/transforms/map.js +9 -6
- package/cjs/data/transforms/map.js.map +1 -1
- package/cjs/data/transforms/sankey.d.ts +12 -4
- package/cjs/data/transforms/sankey.js +18 -13
- package/cjs/data/transforms/sankey.js.map +1 -1
- package/cjs/data/transforms/stack-split.d.ts +2 -1
- package/cjs/data/transforms/stack-split.js +1 -1
- package/cjs/data/transforms/stack-split.js.map +1 -1
- package/cjs/data/transforms/treemap.d.ts +5 -3
- package/cjs/data/transforms/treemap.js +7 -6
- package/cjs/data/transforms/treemap.js.map +1 -1
- package/cjs/data/transforms/venn.d.ts +4 -2
- package/cjs/data/transforms/venn.js +4 -4
- package/cjs/data/transforms/venn.js.map +1 -1
- package/cjs/data/transforms/waterfall.d.ts +4 -2
- package/cjs/data/transforms/waterfall.js +7 -7
- package/cjs/data/transforms/waterfall.js.map +1 -1
- package/cjs/env/env.js +1 -1
- package/cjs/env/index.js +1 -1
- package/cjs/event/event.d.ts +4 -0
- package/cjs/event/event.js +26 -7
- package/cjs/event/event.js.map +1 -1
- package/cjs/mark/base/base-mark.d.ts +12 -2
- package/cjs/mark/base/base-mark.js +86 -23
- package/cjs/mark/base/base-mark.js.map +1 -1
- package/cjs/mark/component.d.ts +9 -0
- package/cjs/mark/component.js +51 -3
- package/cjs/mark/component.js.map +1 -1
- package/cjs/mark/group.js +1 -1
- package/cjs/mark/group.js.map +1 -1
- package/cjs/mark/interface/mark.d.ts +2 -0
- package/cjs/mark/interface/mark.js.map +1 -1
- package/cjs/model/base-model.d.ts +3 -15
- package/cjs/model/base-model.js.map +1 -1
- package/cjs/model/interface.d.ts +13 -0
- package/cjs/model/interface.js.map +1 -1
- package/cjs/region/region.d.ts +1 -7
- package/cjs/scale/color-ordinal-scale.d.ts +1 -0
- package/cjs/scale/color-ordinal-scale.js +3 -0
- package/cjs/scale/color-ordinal-scale.js.map +1 -1
- package/cjs/scale/global-scale.js +9 -2
- package/cjs/scale/global-scale.js.map +1 -1
- package/cjs/series/area/area.d.ts +2 -0
- package/cjs/series/area/area.js +6 -0
- package/cjs/series/area/area.js.map +1 -1
- package/cjs/series/bar/bar.d.ts +3 -0
- package/cjs/series/bar/bar.js +30 -4
- package/cjs/series/bar/bar.js.map +1 -1
- package/cjs/series/base/base-series.d.ts +10 -7
- package/cjs/series/base/base-series.js +78 -18
- package/cjs/series/base/base-series.js.map +1 -1
- package/cjs/series/base/constant.d.ts +3 -0
- package/cjs/series/base/constant.js +9 -1
- package/cjs/series/base/constant.js.map +1 -1
- package/cjs/series/box-plot/box-plot.d.ts +2 -0
- package/cjs/series/box-plot/box-plot.js +16 -4
- package/cjs/series/box-plot/box-plot.js.map +1 -1
- package/cjs/series/correlation/correlation.js +13 -11
- package/cjs/series/correlation/correlation.js.map +1 -1
- package/cjs/series/dot/dot.d.ts +12 -0
- package/cjs/series/dot/dot.js +16 -1
- package/cjs/series/dot/dot.js.map +1 -1
- package/cjs/series/funnel/funnel.js +5 -8
- package/cjs/series/funnel/funnel.js.map +1 -1
- package/cjs/series/heatmap/heatmap.d.ts +2 -0
- package/cjs/series/heatmap/heatmap.js +10 -0
- package/cjs/series/heatmap/heatmap.js.map +1 -1
- package/cjs/series/line/line.d.ts +2 -0
- package/cjs/series/line/line.js +6 -0
- package/cjs/series/line/line.js.map +1 -1
- package/cjs/series/map/map.js +3 -3
- package/cjs/series/map/map.js.map +1 -1
- package/cjs/series/mixin/line-mixin.d.ts +1 -0
- package/cjs/series/mixin/line-mixin.js +6 -1
- package/cjs/series/mixin/line-mixin.js.map +1 -1
- package/cjs/series/pie/pie.d.ts +3 -7
- package/cjs/series/pie/pie.js +16 -1
- package/cjs/series/pie/pie.js.map +1 -1
- package/cjs/series/polar/progress-like/progress-like.d.ts +2 -0
- package/cjs/series/polar/progress-like/progress-like.js +16 -1
- package/cjs/series/polar/progress-like/progress-like.js.map +1 -1
- package/cjs/series/polar/rose-like/rose-like.d.ts +2 -0
- package/cjs/series/polar/rose-like/rose-like.js +15 -1
- package/cjs/series/polar/rose-like/rose-like.js.map +1 -1
- package/cjs/series/progress/circular/circular.d.ts +2 -0
- package/cjs/series/progress/circular/circular.js +10 -1
- package/cjs/series/progress/circular/circular.js.map +1 -1
- package/cjs/series/progress/linear/linear.d.ts +2 -0
- package/cjs/series/progress/linear/linear.js +19 -1
- package/cjs/series/progress/linear/linear.js.map +1 -1
- package/cjs/series/sankey/sankey.js +35 -33
- package/cjs/series/sankey/sankey.js.map +1 -1
- package/cjs/series/scatter/scatter.d.ts +2 -0
- package/cjs/series/scatter/scatter.js +9 -1
- package/cjs/series/scatter/scatter.js.map +1 -1
- package/cjs/series/treemap/treemap.js +23 -20
- package/cjs/series/treemap/treemap.js.map +1 -1
- package/cjs/series/venn/venn.js +2 -2
- package/cjs/series/venn/venn.js.map +1 -1
- package/cjs/series/waterfall/waterfall.d.ts +2 -0
- package/cjs/series/waterfall/waterfall.js +36 -20
- package/cjs/series/waterfall/waterfall.js.map +1 -1
- package/cjs/util/graphic-state.d.ts +1 -0
- package/cjs/util/graphic-state.js +19 -4
- package/cjs/util/graphic-state.js.map +1 -1
- package/esm/chart/base/base-chart-transformer.d.ts +3 -0
- package/esm/chart/base/base-chart-transformer.js +24 -2
- package/esm/chart/base/base-chart-transformer.js.map +1 -1
- package/esm/chart/base/base-chart.d.ts +25 -9
- package/esm/chart/base/base-chart.js +192 -26
- package/esm/chart/base/base-chart.js.map +1 -1
- package/esm/chart/gauge/gauge-transformer.js +3 -2
- package/esm/chart/gauge/gauge-transformer.js.map +1 -1
- package/esm/chart/interface/chart.d.ts +1 -0
- package/esm/chart/interface/chart.js.map +1 -1
- package/esm/chart/pie/base/pie-transformer.js +2 -2
- package/esm/chart/pie/base/pie-transformer.js.map +1 -1
- package/esm/chart/polar/polar-transformer.js +1 -1
- package/esm/chart/polar/polar-transformer.js.map +1 -1
- package/esm/chart/polar/progress-like/progress-like-transformer.js +1 -1
- package/esm/chart/polar/progress-like/progress-like-transformer.js.map +1 -1
- package/esm/chart/progress/circular/circular-progress-transformer.js +2 -1
- package/esm/chart/progress/circular/circular-progress-transformer.js.map +1 -1
- package/esm/chart/progress/linear/linear-progress-transformer.js +1 -1
- package/esm/chart/progress/linear/linear-progress-transformer.js.map +1 -1
- package/esm/chart/radar/radar-transformer.js +3 -2
- package/esm/chart/radar/radar-transformer.js.map +1 -1
- package/esm/chart/range-area/range-area-transformer.js +2 -2
- package/esm/chart/range-area/range-area-transformer.js.map +1 -1
- package/esm/chart/rose/rose-transformer.js +2 -1
- package/esm/chart/rose/rose-transformer.js.map +1 -1
- package/esm/chart/util.d.ts +4 -1
- package/esm/chart/util.js +34 -1
- package/esm/chart/util.js.map +1 -1
- package/esm/chart/waterfall/waterfall-transformer.js +2 -1
- package/esm/chart/waterfall/waterfall-transformer.js.map +1 -1
- package/esm/compile/compiler.js +11 -9
- package/esm/compile/compiler.js.map +1 -1
- package/esm/compile/data/compilable-data.d.ts +1 -1
- package/esm/compile/data/compilable-data.js +1 -1
- package/esm/compile/data/compilable-data.js.map +1 -1
- package/esm/compile/grammar-item.d.ts +1 -1
- package/esm/compile/grammar-item.js.map +1 -1
- package/esm/compile/interface/compilable-item.d.ts +1 -1
- package/esm/compile/interface/compilable-item.js.map +1 -1
- package/esm/component/axis/base-axis.d.ts +2 -7
- package/esm/component/axis/base-axis.js +26 -5
- package/esm/component/axis/base-axis.js.map +1 -1
- package/esm/component/axis/cartesian/band-axis.d.ts +1 -7
- package/esm/component/axis/mixin/linear-axis-mixin.js +7 -10
- package/esm/component/axis/mixin/linear-axis-mixin.js.map +1 -1
- package/esm/component/axis/polar/band-axis.d.ts +2 -0
- package/esm/component/axis/polar/band-axis.js +3 -0
- package/esm/component/axis/polar/band-axis.js.map +1 -1
- package/esm/component/axis/polar/linear-axis.js +3 -0
- package/esm/component/axis/polar/linear-axis.js.map +1 -1
- package/esm/component/base/base-component.d.ts +7 -7
- package/esm/component/base/base-component.js +41 -5
- package/esm/component/base/base-component.js.map +1 -1
- package/esm/component/base/release-vrender-component.d.ts +10 -0
- package/esm/component/base/release-vrender-component.js +24 -0
- package/esm/component/base/release-vrender-component.js.map +1 -0
- package/esm/component/brush/brush.d.ts +3 -7
- package/esm/component/brush/brush.js +20 -4
- package/esm/component/brush/brush.js.map +1 -1
- package/esm/component/crosshair/base.d.ts +4 -7
- package/esm/component/crosshair/base.js +26 -2
- package/esm/component/crosshair/base.js.map +1 -1
- package/esm/component/custom-mark/custom-mark.d.ts +4 -7
- package/esm/component/custom-mark/custom-mark.js +27 -2
- package/esm/component/custom-mark/custom-mark.js.map +1 -1
- package/esm/component/data-zoom/data-filter-base-component.d.ts +3 -7
- package/esm/component/data-zoom/data-filter-base-component.js +14 -2
- package/esm/component/data-zoom/data-filter-base-component.js.map +1 -1
- package/esm/component/data-zoom/data-zoom/data-zoom.d.ts +1 -0
- package/esm/component/data-zoom/data-zoom/data-zoom.js +20 -0
- package/esm/component/data-zoom/data-zoom/data-zoom.js.map +1 -1
- package/esm/component/data-zoom/scroll-bar/scroll-bar.d.ts +1 -0
- package/esm/component/data-zoom/scroll-bar/scroll-bar.js +12 -1
- package/esm/component/data-zoom/scroll-bar/scroll-bar.js.map +1 -1
- package/esm/component/geo/geo-coordinate.d.ts +1 -7
- package/esm/component/index.js +1 -2
- package/esm/component/indicator/indicator.d.ts +1 -0
- package/esm/component/indicator/indicator.js +11 -2
- package/esm/component/indicator/indicator.js.map +1 -1
- package/esm/component/indicator/util.d.ts +4 -3
- package/esm/component/indicator/util.js +2 -2
- package/esm/component/indicator/util.js.map +1 -1
- package/esm/component/label/base-label.d.ts +1 -7
- package/esm/component/label/base-label.js +5 -1
- package/esm/component/label/base-label.js.map +1 -1
- package/esm/component/label/label.js +1 -1
- package/esm/component/label/label.js.map +1 -1
- package/esm/component/legend/base-legend.d.ts +2 -7
- package/esm/component/legend/base-legend.js +20 -2
- package/esm/component/legend/base-legend.js.map +1 -1
- package/esm/component/marker/base-marker.d.ts +14 -7
- package/esm/component/marker/base-marker.js +109 -11
- package/esm/component/marker/base-marker.js.map +1 -1
- package/esm/component/marker/mark-area/cartesian-mark-area.js +3 -3
- package/esm/component/marker/mark-area/cartesian-mark-area.js.map +1 -1
- package/esm/component/marker/mark-area/polar-mark-area.js +2 -2
- package/esm/component/marker/mark-area/polar-mark-area.js.map +1 -1
- package/esm/component/marker/mark-line/base-mark-line.js +2 -4
- package/esm/component/marker/mark-line/base-mark-line.js.map +1 -1
- package/esm/component/marker/mark-line/cartesian-mark-line.js +2 -2
- package/esm/component/marker/mark-line/cartesian-mark-line.js.map +1 -1
- package/esm/component/marker/mark-line/polar-mark-line.js +2 -2
- package/esm/component/marker/mark-line/polar-mark-line.js.map +1 -1
- package/esm/component/marker/mark-point/base-mark-point.js +19 -6
- package/esm/component/marker/mark-point/base-mark-point.js.map +1 -1
- package/esm/component/marker/mark-point/cartesian-mark-point.js +1 -1
- package/esm/component/marker/mark-point/cartesian-mark-point.js.map +1 -1
- package/esm/component/marker/mark-point/polar-mark-point.js +1 -1
- package/esm/component/marker/mark-point/polar-mark-point.js.map +1 -1
- package/esm/component/marker/utils.d.ts +4 -4
- package/esm/component/marker/utils.js +27 -23
- package/esm/component/marker/utils.js.map +1 -1
- package/esm/component/player/player.d.ts +1 -0
- package/esm/component/player/player.js +10 -0
- package/esm/component/player/player.js.map +1 -1
- package/esm/component/title/title.d.ts +1 -7
- package/esm/component/title/title.js +6 -2
- package/esm/component/title/title.js.map +1 -1
- package/esm/component/tooltip/tooltip.d.ts +1 -0
- package/esm/component/tooltip/tooltip.js +9 -1
- package/esm/component/tooltip/tooltip.js.map +1 -1
- package/esm/constant/attribute.js +2 -1
- package/esm/constant/scatter.js +1 -2
- package/esm/constant/waterfall.js +2 -1
- package/esm/core/expression-function.js +1 -1
- package/esm/core/vchart.d.ts +5 -1
- package/esm/core/vchart.js +30 -17
- package/esm/core/vchart.js.map +1 -1
- package/esm/data/data-view-utils.d.ts +5 -0
- package/esm/data/data-view-utils.js +46 -0
- package/esm/data/data-view-utils.js.map +1 -0
- package/esm/data/initialize.js +1 -1
- package/esm/data/register.js +1 -1
- package/esm/data/transforms/box-plot.d.ts +4 -1
- package/esm/data/transforms/box-plot.js +4 -4
- package/esm/data/transforms/box-plot.js.map +1 -1
- package/esm/data/transforms/correlation-center.d.ts +11 -4
- package/esm/data/transforms/correlation-center.js +4 -2
- package/esm/data/transforms/correlation-center.js.map +1 -1
- package/esm/data/transforms/correlation.d.ts +18 -15
- package/esm/data/transforms/correlation.js +13 -8
- package/esm/data/transforms/correlation.js.map +1 -1
- package/esm/data/transforms/funnel.d.ts +10 -8
- package/esm/data/transforms/funnel.js +5 -3
- package/esm/data/transforms/funnel.js.map +1 -1
- package/esm/data/transforms/lookup.d.ts +3 -3
- package/esm/data/transforms/lookup.js +12 -6
- package/esm/data/transforms/lookup.js.map +1 -1
- package/esm/data/transforms/map.d.ts +8 -2
- package/esm/data/transforms/map.js +11 -6
- package/esm/data/transforms/map.js.map +1 -1
- package/esm/data/transforms/sankey.d.ts +12 -4
- package/esm/data/transforms/sankey.js +19 -14
- package/esm/data/transforms/sankey.js.map +1 -1
- package/esm/data/transforms/stack-split.d.ts +2 -1
- package/esm/data/transforms/stack-split.js +2 -2
- package/esm/data/transforms/stack-split.js.map +1 -1
- package/esm/data/transforms/treemap.d.ts +5 -3
- package/esm/data/transforms/treemap.js +8 -5
- package/esm/data/transforms/treemap.js.map +1 -1
- package/esm/data/transforms/venn.d.ts +4 -2
- package/esm/data/transforms/venn.js +5 -3
- package/esm/data/transforms/venn.js.map +1 -1
- package/esm/data/transforms/waterfall.d.ts +4 -2
- package/esm/data/transforms/waterfall.js +7 -8
- package/esm/data/transforms/waterfall.js.map +1 -1
- package/esm/env/env.js +1 -1
- package/esm/env/index.js +1 -1
- package/esm/event/event.d.ts +4 -0
- package/esm/event/event.js +26 -7
- package/esm/event/event.js.map +1 -1
- package/esm/mark/base/base-mark.d.ts +12 -2
- package/esm/mark/base/base-mark.js +86 -22
- package/esm/mark/base/base-mark.js.map +1 -1
- package/esm/mark/component.d.ts +9 -0
- package/esm/mark/component.js +51 -2
- package/esm/mark/component.js.map +1 -1
- package/esm/mark/group.js +1 -1
- package/esm/mark/group.js.map +1 -1
- package/esm/mark/interface/mark.d.ts +2 -0
- package/esm/mark/interface/mark.js.map +1 -1
- package/esm/model/base-model.d.ts +3 -15
- package/esm/model/base-model.js.map +1 -1
- package/esm/model/interface.d.ts +13 -0
- package/esm/model/interface.js.map +1 -1
- package/esm/region/region.d.ts +1 -7
- package/esm/scale/color-ordinal-scale.d.ts +1 -0
- package/esm/scale/color-ordinal-scale.js +3 -0
- package/esm/scale/color-ordinal-scale.js.map +1 -1
- package/esm/scale/global-scale.js +9 -1
- package/esm/scale/global-scale.js.map +1 -1
- package/esm/series/area/area.d.ts +2 -0
- package/esm/series/area/area.js +7 -1
- package/esm/series/area/area.js.map +1 -1
- package/esm/series/bar/bar.d.ts +3 -0
- package/esm/series/bar/bar.js +30 -4
- package/esm/series/bar/bar.js.map +1 -1
- package/esm/series/base/base-series.d.ts +10 -7
- package/esm/series/base/base-series.js +73 -16
- package/esm/series/base/base-series.js.map +1 -1
- package/esm/series/base/constant.d.ts +3 -0
- package/esm/series/base/constant.js +10 -0
- package/esm/series/base/constant.js.map +1 -1
- package/esm/series/box-plot/box-plot.d.ts +2 -0
- package/esm/series/box-plot/box-plot.js +15 -4
- package/esm/series/box-plot/box-plot.js.map +1 -1
- package/esm/series/correlation/correlation.js +13 -11
- package/esm/series/correlation/correlation.js.map +1 -1
- package/esm/series/dot/dot.d.ts +12 -0
- package/esm/series/dot/dot.js +17 -0
- package/esm/series/dot/dot.js.map +1 -1
- package/esm/series/funnel/funnel.js +5 -8
- package/esm/series/funnel/funnel.js.map +1 -1
- package/esm/series/heatmap/heatmap.d.ts +2 -0
- package/esm/series/heatmap/heatmap.js +10 -0
- package/esm/series/heatmap/heatmap.js.map +1 -1
- package/esm/series/line/line.d.ts +2 -0
- package/esm/series/line/line.js +7 -1
- package/esm/series/line/line.js.map +1 -1
- package/esm/series/map/map.js +3 -3
- package/esm/series/map/map.js.map +1 -1
- package/esm/series/mixin/line-mixin.d.ts +1 -0
- package/esm/series/mixin/line-mixin.js +5 -0
- package/esm/series/mixin/line-mixin.js.map +1 -1
- package/esm/series/pie/pie.d.ts +3 -7
- package/esm/series/pie/pie.js +17 -0
- package/esm/series/pie/pie.js.map +1 -1
- package/esm/series/polar/progress-like/progress-like.d.ts +2 -0
- package/esm/series/polar/progress-like/progress-like.js +17 -0
- package/esm/series/polar/progress-like/progress-like.js.map +1 -1
- package/esm/series/polar/rose-like/rose-like.d.ts +2 -0
- package/esm/series/polar/rose-like/rose-like.js +16 -0
- package/esm/series/polar/rose-like/rose-like.js.map +1 -1
- package/esm/series/progress/circular/circular.d.ts +2 -0
- package/esm/series/progress/circular/circular.js +11 -0
- package/esm/series/progress/circular/circular.js.map +1 -1
- package/esm/series/progress/linear/linear.d.ts +2 -0
- package/esm/series/progress/linear/linear.js +20 -0
- package/esm/series/progress/linear/linear.js.map +1 -1
- package/esm/series/sankey/sankey.js +35 -33
- package/esm/series/sankey/sankey.js.map +1 -1
- package/esm/series/scatter/scatter.d.ts +2 -0
- package/esm/series/scatter/scatter.js +10 -0
- package/esm/series/scatter/scatter.js.map +1 -1
- package/esm/series/treemap/treemap.js +23 -20
- package/esm/series/treemap/treemap.js.map +1 -1
- package/esm/series/venn/venn.js +2 -2
- package/esm/series/venn/venn.js.map +1 -1
- package/esm/series/waterfall/waterfall.d.ts +2 -0
- package/esm/series/waterfall/waterfall.js +36 -20
- package/esm/series/waterfall/waterfall.js.map +1 -1
- package/esm/util/graphic-state.d.ts +1 -0
- package/esm/util/graphic-state.js +16 -3
- package/esm/util/graphic-state.js.map +1 -1
- package/package.json +9 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/chart/interface/chart.ts"],"names":[],"mappings":"","file":"chart.js","sourcesContent":["import type { IEvent } from '../../event/interface';\nimport type { LayoutCallBack } from '../../layout/interface';\nimport type { IParserOptions } from '@visactor/vdataset';\nimport type { IComponent, IComponentConstructor } from '../../component/interface';\nimport type { IMark } from '../../mark/interface';\nimport type { IModel, IModelConstructor, IModelOption, IModelSpecInfo, IUpdateSpecResult } from '../../model/interface';\nimport type { IRegion, IRegionConstructor } from '../../region/interface';\nimport type { ISeries, ISeriesConstructor } from '../../series/interface';\nimport type {\n IChartEvaluateOption,\n IChartLayoutOption,\n IChartOption,\n IChartRenderOption,\n IChartSpecInfo,\n IChartSpecTransformerOption\n} from './common';\nimport type { IBoundsLike, IPadding, Maybe } from '@visactor/vutils';\nimport type { ICompilable } from '../../compile/interface';\nimport type {\n IRegionQuerier,\n MaybeArray,\n Datum,\n IMarkStateSpec,\n StringOrNumber,\n IShowTooltipOption,\n IDataValues,\n ILayoutRect,\n IData\n} from '../../typings';\n// eslint-disable-next-line no-duplicate-imports\nimport type { DataView } from '@visactor/vdataset';\nimport type { IGlobalScale } from '../../scale/interface';\nimport type { IMorphConfig } from '../../animation/spec';\nimport type { IMarkGraphic } from '../../mark/interface/common';\nimport type { IAxis } from '../../component/axis/interface';\n\nexport type DimensionIndexOption = {\n filter?: (cmp: IComponent) => boolean;\n tooltip?: boolean;\n showTooltipOption?: IShowTooltipOption;\n crosshair?: boolean;\n};\n\nexport interface IChartData {\n parseData: (dataSpec: IData) => void;\n updateData: (dataSpec: IData, fullUp?: boolean, forceMerge?: boolean) => boolean;\n getSeriesData: (id: StringOrNumber | undefined, index: number | undefined) => DataView | undefined;\n}\n\nexport interface IChart extends ICompilable {\n padding: IPadding;\n\n readonly type: string;\n readonly chartData: IChartData;\n readonly transformerConstructor: new (option: IChartSpecTransformerOption) => IChartSpecTransformer;\n\n getSpec: () => any;\n setSpec: (s: any) => void;\n\n // data flow\n reDataFlow: () => void;\n\n setCanvasRect: (width: number, height: number) => void;\n getCanvasRect: () => ILayoutRect;\n getViewRect: () => ILayoutRect;\n\n getOption: () => IChartOption;\n\n getModelOption: () => IModelOption;\n /**\n * 图表更新的时候按需调用\n * @since 1.11.0\n */\n\n /** event */\n getEvent: () => IEvent;\n\n /**\n * @since 1.10.4\n */\n getGlobalScale: () => IGlobalScale;\n\n /** layout */\n setLayout: (layout: LayoutCallBack) => void;\n layout: () => void;\n getLayoutTag: () => boolean;\n setLayoutTag: (tag: boolean, morphConfig?: IMorphConfig, renderNextTick?: boolean) => boolean;\n resetLayoutItemTag: () => void;\n\n // 使用parse前的原始数据结构更新数据\n updateData: (id: StringOrNumber, data: unknown, updateGlobalScale?: boolean, options?: IParserOptions) => void;\n // 使用 IData 更新数据\n updateFullData: (data: IDataValues | IDataValues[]) => void;\n // update scale domain which in GlobalScale\n updateGlobalScaleDomain: () => void;\n //生命周期\n created: (transformer: Maybe<IChartSpecTransformer>) => void;\n init: () => void;\n onLayoutStart: (ctx: IChartLayoutOption) => void;\n onLayoutEnd: (ctx: IChartLayoutOption) => void;\n onEvaluateEnd: (ctx: IChartEvaluateOption) => void;\n onResize: (width: number, height: number, reRender: boolean) => void;\n onLayout: () => void;\n onBeforeRender: () => void;\n\n /**\n * 图表更新的时候按需调用\n * @since 1.11.0\n */\n reInit: () => void;\n\n // series\n getAllSeries: () => ISeries[];\n\n // region\n getRegionsInIndex: (index?: number[]) => IRegion[];\n getRegionsInIds: (ids: number[]) => IRegion[];\n getAllRegions: () => IRegion[];\n getRegionsInUserIdOrIndex: (user_ids?: StringOrNumber[], index?: number[]) => IRegion[];\n getRegionsInQuerier: (query: MaybeArray<IRegionQuerier>) => IRegion[];\n\n // series\n getSeriesInIndex: (index?: number[]) => ISeries[];\n getSeriesInIds: (ids?: number[]) => ISeries[];\n getSeriesInUserIdOrIndex: (user_ids?: StringOrNumber[], index?: number[]) => ISeries[];\n getSeriesInUserId: (userId: StringOrNumber) => ISeries | undefined;\n\n // component\n getComponentByIndex: (key: string, index: number) => IComponent | undefined;\n getComponentByUserId: (userId: StringOrNumber) => IComponent | undefined;\n getComponentsByKey: (key: string) => IComponent[];\n getComponentsByType: (type: string) => IComponent[];\n getAllComponents: () => IComponent[];\n\n // model\n getModelById: (id: number) => IModel | undefined;\n getModelByUserId: (userId: StringOrNumber) => IModel | undefined;\n getModelInFilter: (\n filter: string | { type: string; index: number } | ((model: IModel) => boolean)\n ) => IModel | undefined;\n getAllModels: () => IModel[];\n\n // mark\n getMarkById: (id: number) => IMark | undefined;\n getAllMarks: () => IMark[];\n getMarkByUserName: (name: string) => IMark[];\n\n // spec\n updateSpec: (spec: any) => IUpdateSpecResult;\n\n // state\n /**\n * 更新或设置图元状态\n * @param state 状态筛选器\n * @param filter 筛选器\n */\n updateState: (\n state: Record<string, Omit<IMarkStateSpec<unknown>, 'style'>>,\n filter?: (series: ISeries, mark: IMark, stateKey: string) => boolean //series + mark 筛选\n ) => void;\n\n /**\n * 更新图元选中状态\n * @param datum hover 图元数据\n * @param filter 筛选器 用来筛选系列与mark\n * @param region region 筛选器\n */\n setSelected: (\n datum: MaybeArray<any> | null,\n filter?: (series: ISeries, mark: IMark) => boolean,\n region?: IRegionQuerier\n ) => void;\n\n /**\n * 更新图元 hover 状态\n * @param datum hover 图元数据\n * @param filter 筛选器 用来筛选系列与mark\n * @param region region 筛选器\n */\n setHovered: (\n datum: MaybeArray<Datum> | null,\n filter?: (series: ISeries, mark: IMark) => boolean,\n region?: IRegionQuerier\n ) => void;\n /**\n * 清除所有图元的状态\n *\n * @since 1.11.0\n */\n clearState: (state: string) => void;\n /**\n * 清除所有图元的所有状态\n *\n * @since 1.12.4\n */\n clearAllStates: () => void;\n /**\n * 清除所有图元的选中状态\n *\n * @since 1.11.0\n */\n clearSelected: () => void;\n /**\n * 清除所有图元的hover状态\n *\n * @since 1.11.0\n */\n clearHovered: () => void;\n\n // 更新 viewBox\n updateViewBox: (viewBox: IBoundsLike, reLayout: boolean) => void;\n\n // 获取实际渲染的 canvas\n getCanvas: () => HTMLCanvasElement | undefined;\n\n setCurrentTheme: () => void;\n\n getSeriesData: (id: StringOrNumber | undefined, index: number | undefined) => DataView | undefined;\n // setDimensionIndex\n setDimensionIndex: (value: StringOrNumber, opt: DimensionIndexOption) => void;\n /**\n * 显示交叉线\n * @since 2.0.9\n */\n showCrosshair: (cb: (axis: IAxis) => false | string | number) => void;\n\n /**\n * 根据数据筛选图元\n * @since 1.13.9\n */\n filterGraphicsByDatum: (\n datum: MaybeArray<Datum> | null,\n opt?: {\n filter?: (series: ISeries, mark: IMark) => boolean;\n region?: IRegionQuerier;\n getDatum?: (el: IMarkGraphic, mark: IMark, s: ISeries, r: IRegion) => Datum;\n callback?: (el: IMarkGraphic, mark: IMark, s: ISeries, r: IRegion) => void;\n regionCallback?: (pickElements: IMarkGraphic[], r: IRegion) => void;\n }\n ) => IMarkGraphic[];\n}\n\nexport interface IChartSpecTransformer {\n readonly type: string;\n readonly seriesType: string;\n\n /** 此方法不建议重写 */\n initChartSpec: (spec: any) => IChartSpecInfo;\n /** 将图表 spec 统一转换为 common chart spec */\n transformSpec: (spec: any) => void;\n /** 转换 model spec,应用主题 */\n transformModelSpec: (spec: any) => IChartSpecInfo;\n /** 根据图表 spec 生成 spec info */\n createSpecInfo: (\n chartSpec: any,\n transform?: (constructor: IModelConstructor, specInfo: IModelSpecInfo, chartSpecInfo?: IChartSpecInfo) => void\n ) => IChartSpecInfo;\n /** 枚举 spec 中每个有效的 region */\n forEachRegionInSpec: <K>(\n spec: any,\n callbackfn: (constructor: IRegionConstructor, specInfo: IModelSpecInfo, chartSpecInfo?: IChartSpecInfo) => K,\n chartSpecInfo?: IChartSpecInfo\n ) => K[];\n /** 枚举 spec 中每个有效的 series */\n forEachSeriesInSpec: <K>(\n spec: any,\n callbackfn: (constructor: ISeriesConstructor, specInfo: IModelSpecInfo, chartSpecInfo?: IChartSpecInfo) => K,\n chartSpecInfo?: IChartSpecInfo\n ) => K[];\n /** 枚举 spec 中每个有效的 component */\n forEachComponentInSpec: <K>(\n spec: any,\n callbackfn: (constructor: IComponentConstructor, specInfo: IModelSpecInfo, chartSpecInfo?: IChartSpecInfo) => K,\n chartSpecInfo?: IChartSpecInfo\n ) => K[];\n}\n\nexport interface IChartConstructor {\n readonly type: string;\n readonly seriesType?: string;\n readonly series?: string | string[];\n readonly transformerConstructor: new (option: IChartSpecTransformerOption) => IChartSpecTransformer;\n new (spec: any, options: IChartOption): IChart;\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/chart/interface/chart.ts"],"names":[],"mappings":"","file":"chart.js","sourcesContent":["import type { IEvent } from '../../event/interface';\nimport type { LayoutCallBack } from '../../layout/interface';\nimport type { IParserOptions } from '@visactor/vdataset';\nimport type { IComponent, IComponentConstructor } from '../../component/interface';\nimport type { IMark } from '../../mark/interface';\nimport type { IModel, IModelConstructor, IModelOption, IModelSpecInfo, IUpdateSpecResult } from '../../model/interface';\nimport type { IRegion, IRegionConstructor } from '../../region/interface';\nimport type { ISeries, ISeriesConstructor } from '../../series/interface';\nimport type {\n IChartEvaluateOption,\n IChartLayoutOption,\n IChartOption,\n IChartRenderOption,\n IChartSpecInfo,\n IChartSpecTransformerOption\n} from './common';\nimport type { IBoundsLike, IPadding, Maybe } from '@visactor/vutils';\nimport type { ICompilable } from '../../compile/interface';\nimport type {\n IRegionQuerier,\n MaybeArray,\n Datum,\n IMarkStateSpec,\n StringOrNumber,\n IShowTooltipOption,\n IDataValues,\n ILayoutRect,\n IData\n} from '../../typings';\n// eslint-disable-next-line no-duplicate-imports\nimport type { DataView } from '@visactor/vdataset';\nimport type { IGlobalScale } from '../../scale/interface';\nimport type { IMorphConfig } from '../../animation/spec';\nimport type { IMarkGraphic } from '../../mark/interface/common';\nimport type { IAxis } from '../../component/axis/interface';\n\nexport type DimensionIndexOption = {\n filter?: (cmp: IComponent) => boolean;\n tooltip?: boolean;\n showTooltipOption?: IShowTooltipOption;\n crosshair?: boolean;\n};\n\nexport interface IChartData {\n parseData: (dataSpec: IData) => void;\n updateData: (dataSpec: IData, fullUp?: boolean, forceMerge?: boolean) => boolean;\n getSeriesData: (id: StringOrNumber | undefined, index: number | undefined) => DataView | undefined;\n}\n\nexport interface IChart extends ICompilable {\n padding: IPadding;\n\n readonly type: string;\n readonly chartData: IChartData;\n readonly transformerConstructor: new (option: IChartSpecTransformerOption) => IChartSpecTransformer;\n\n getSpec: () => any;\n setSpec: (s: any) => void;\n\n // data flow\n reDataFlow: () => void;\n\n setCanvasRect: (width: number, height: number) => void;\n getCanvasRect: () => ILayoutRect;\n getViewRect: () => ILayoutRect;\n\n getOption: () => IChartOption;\n\n getModelOption: () => IModelOption;\n /**\n * 图表更新的时候按需调用\n * @since 1.11.0\n */\n\n /** event */\n getEvent: () => IEvent;\n\n /**\n * @since 1.10.4\n */\n getGlobalScale: () => IGlobalScale;\n\n /** layout */\n setLayout: (layout: LayoutCallBack) => void;\n layout: () => void;\n getLayoutTag: () => boolean;\n setLayoutTag: (tag: boolean, morphConfig?: IMorphConfig, renderNextTick?: boolean) => boolean;\n resetLayoutItemTag: () => void;\n\n // 使用parse前的原始数据结构更新数据\n updateData: (id: StringOrNumber, data: unknown, updateGlobalScale?: boolean, options?: IParserOptions) => void;\n // 使用 IData 更新数据\n updateFullData: (data: IDataValues | IDataValues[]) => void;\n // update scale domain which in GlobalScale\n updateGlobalScaleDomain: () => void;\n //生命周期\n created: (transformer: Maybe<IChartSpecTransformer>) => void;\n init: () => void;\n onLayoutStart: (ctx: IChartLayoutOption) => void;\n onLayoutEnd: (ctx: IChartLayoutOption) => void;\n onEvaluateEnd: (ctx: IChartEvaluateOption) => void;\n onResize: (width: number, height: number, reRender: boolean) => void;\n onLayout: () => void;\n onBeforeRender: () => void;\n\n /**\n * 图表更新的时候按需调用\n * @since 1.11.0\n */\n reInit: () => void;\n\n // series\n getAllSeries: () => ISeries[];\n\n // region\n getRegionsInIndex: (index?: number[]) => IRegion[];\n getRegionsInIds: (ids: number[]) => IRegion[];\n getAllRegions: () => IRegion[];\n getRegionsInUserIdOrIndex: (user_ids?: StringOrNumber[], index?: number[]) => IRegion[];\n getRegionsInQuerier: (query: MaybeArray<IRegionQuerier>) => IRegion[];\n\n // series\n getSeriesInIndex: (index?: number[]) => ISeries[];\n getSeriesInIds: (ids?: number[]) => ISeries[];\n getSeriesInUserIdOrIndex: (user_ids?: StringOrNumber[], index?: number[]) => ISeries[];\n getSeriesInUserId: (userId: StringOrNumber) => ISeries | undefined;\n\n // component\n getComponentByIndex: (key: string, index: number) => IComponent | undefined;\n getComponentByUserId: (userId: StringOrNumber) => IComponent | undefined;\n getComponentsByKey: (key: string) => IComponent[];\n getComponentsByType: (type: string) => IComponent[];\n getAllComponents: () => IComponent[];\n\n // model\n getModelById: (id: number) => IModel | undefined;\n getModelByUserId: (userId: StringOrNumber) => IModel | undefined;\n getModelInFilter: (\n filter: string | { type: string; index: number } | ((model: IModel) => boolean)\n ) => IModel | undefined;\n getAllModels: () => IModel[];\n\n // mark\n getMarkById: (id: number) => IMark | undefined;\n getAllMarks: () => IMark[];\n getMarkByUserName: (name: string) => IMark[];\n\n // spec\n updateSpec: (spec: any) => IUpdateSpecResult;\n\n // state\n /**\n * 更新或设置图元状态\n * @param state 状态筛选器\n * @param filter 筛选器\n */\n updateState: (\n state: Record<string, Omit<IMarkStateSpec<unknown>, 'style'>>,\n filter?: (series: ISeries, mark: IMark, stateKey: string) => boolean //series + mark 筛选\n ) => void;\n\n /**\n * 更新图元选中状态\n * @param datum hover 图元数据\n * @param filter 筛选器 用来筛选系列与mark\n * @param region region 筛选器\n */\n setSelected: (\n datum: MaybeArray<any> | null,\n filter?: (series: ISeries, mark: IMark) => boolean,\n region?: IRegionQuerier\n ) => void;\n\n /**\n * 更新图元 hover 状态\n * @param datum hover 图元数据\n * @param filter 筛选器 用来筛选系列与mark\n * @param region region 筛选器\n */\n setHovered: (\n datum: MaybeArray<Datum> | null,\n filter?: (series: ISeries, mark: IMark) => boolean,\n region?: IRegionQuerier\n ) => void;\n /**\n * 清除所有图元的状态\n *\n * @since 1.11.0\n */\n clearState: (state: string) => void;\n /**\n * 清除所有图元的所有状态\n *\n * @since 1.12.4\n */\n clearAllStates: () => void;\n /**\n * 清除所有图元的选中状态\n *\n * @since 1.11.0\n */\n clearSelected: () => void;\n /**\n * 清除所有图元的hover状态\n *\n * @since 1.11.0\n */\n clearHovered: () => void;\n\n // 更新 viewBox\n updateViewBox: (viewBox: IBoundsLike, reLayout: boolean) => void;\n\n // 获取实际渲染的 canvas\n getCanvas: () => HTMLCanvasElement | undefined;\n\n setCurrentTheme: () => void;\n\n getSeriesData: (id: StringOrNumber | undefined, index: number | undefined) => DataView | undefined;\n // setDimensionIndex\n setDimensionIndex: (value: StringOrNumber, opt: DimensionIndexOption) => void;\n /**\n * 显示交叉线\n * @since 2.0.9\n */\n showCrosshair: (cb: (axis: IAxis) => false | string | number) => void;\n\n /**\n * 根据数据筛选图元\n * @since 1.13.9\n */\n filterGraphicsByDatum: (\n datum: MaybeArray<Datum> | null,\n opt?: {\n filter?: (series: ISeries, mark: IMark) => boolean;\n region?: IRegionQuerier;\n getDatum?: (el: IMarkGraphic, mark: IMark, s: ISeries, r: IRegion) => Datum;\n callback?: (el: IMarkGraphic, mark: IMark, s: ISeries, r: IRegion) => void;\n regionCallback?: (pickElements: IMarkGraphic[], r: IRegion) => void;\n }\n ) => IMarkGraphic[];\n}\n\nexport interface IChartSpecTransformer {\n readonly type: string;\n readonly seriesType: string;\n\n /** 此方法不建议重写 */\n initChartSpec: (spec: any) => IChartSpecInfo;\n /** 将图表 spec 统一转换为 common chart spec */\n transformSpec: (spec: any) => void;\n /** 转换 model spec,应用主题 */\n transformModelSpec: (spec: any) => IChartSpecInfo;\n /** 根据图表 spec 生成 spec info */\n createSpecInfo: (\n chartSpec: any,\n transform?: (constructor: IModelConstructor, specInfo: IModelSpecInfo, chartSpecInfo?: IChartSpecInfo) => void\n ) => IChartSpecInfo;\n getSeriesRelatedSpecKeys: () => Record<string, true>;\n /** 枚举 spec 中每个有效的 region */\n forEachRegionInSpec: <K>(\n spec: any,\n callbackfn: (constructor: IRegionConstructor, specInfo: IModelSpecInfo, chartSpecInfo?: IChartSpecInfo) => K,\n chartSpecInfo?: IChartSpecInfo\n ) => K[];\n /** 枚举 spec 中每个有效的 series */\n forEachSeriesInSpec: <K>(\n spec: any,\n callbackfn: (constructor: ISeriesConstructor, specInfo: IModelSpecInfo, chartSpecInfo?: IChartSpecInfo) => K,\n chartSpecInfo?: IChartSpecInfo\n ) => K[];\n /** 枚举 spec 中每个有效的 component */\n forEachComponentInSpec: <K>(\n spec: any,\n callbackfn: (constructor: IComponentConstructor, specInfo: IModelSpecInfo, chartSpecInfo?: IChartSpecInfo) => K,\n chartSpecInfo?: IChartSpecInfo\n ) => K[];\n}\n\nexport interface IChartConstructor {\n readonly type: string;\n readonly seriesType?: string;\n readonly series?: string | string[];\n readonly transformerConstructor: new (option: IChartSpecTransformerOption) => IChartSpecTransformer;\n new (spec: any, options: IChartOption): IChart;\n}\n"]}
|
|
@@ -7,8 +7,8 @@ export class BasePieChartSpecTransformer extends PolarChartSpecTransformer {
|
|
|
7
7
|
_getDefaultSeriesSpec(spec) {
|
|
8
8
|
var _a;
|
|
9
9
|
const seriesSpec = super._getDefaultSeriesSpec(spec, [ "center", "centerOffset", "cornerRadius", "padAngle", "minAngle", "emptyPlaceholder", "showAllZero", "supportNegative", "useSequentialAnimation", "layoutRadius" ]);
|
|
10
|
-
return
|
|
11
|
-
seriesSpec.emptyCircle = null === (_a = spec.emptyPlaceholder) || void 0 === _a ? void 0 : _a.emptyCircle,
|
|
10
|
+
return this._addSeriesRelatedSpecKeys([ "valueField", "angleField" ]), seriesSpec.categoryField = spec.categoryField || spec.seriesField,
|
|
11
|
+
seriesSpec.valueField = spec.valueField || spec.angleField, seriesSpec.emptyCircle = null === (_a = spec.emptyPlaceholder) || void 0 === _a ? void 0 : _a.emptyCircle,
|
|
12
12
|
seriesSpec;
|
|
13
13
|
}
|
|
14
14
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/chart/pie/base/pie-transformer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAGxD,MAAM,OAAO,2BAAqD,SAAQ,yBAEzE;IACW,QAAQ;QAChB,OAAO,KAAK,CAAC;IACf,CAAC;IAES,qBAAqB,CAAC,IAAS;;QACvC,MAAM,UAAU,GAAG,KAAK,CAAC,qBAAqB,CAAC,IAAI,EAAE;YACnD,QAAQ;YACR,cAAc;YACd,cAAc;YACd,UAAU;YACV,UAAU;YACV,kBAAkB;YAClB,aAAa;YACb,iBAAiB;YACjB,wBAAwB;YACxB,cAAc;SACf,CAAC,CAAC;
|
|
1
|
+
{"version":3,"sources":["../src/chart/pie/base/pie-transformer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAGxD,MAAM,OAAO,2BAAqD,SAAQ,yBAEzE;IACW,QAAQ;QAChB,OAAO,KAAK,CAAC;IACf,CAAC;IAES,qBAAqB,CAAC,IAAS;;QACvC,MAAM,UAAU,GAAG,KAAK,CAAC,qBAAqB,CAAC,IAAI,EAAE;YACnD,QAAQ;YACR,cAAc;YACd,cAAc;YACd,UAAU;YACV,UAAU;YACV,kBAAkB;YAClB,aAAa;YACb,iBAAiB;YACjB,wBAAwB;YACxB,cAAc;SACf,CAAC,CAAC;QACH,IAAI,CAAC,yBAAyB,CAAC,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC;QAE7D,UAAU,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,WAAW,CAAC;QAClE,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC;QAC3D,UAAU,CAAC,WAAW,GAAG,MAAA,IAAI,CAAC,gBAAgB,0CAAE,WAAW,CAAC;QAC5D,OAAO,UAAU,CAAC;IACpB,CAAC;CACF","file":"pie-transformer.js","sourcesContent":["import type { AdaptiveSpec } from '../../../typings';\nimport { PolarChartSpecTransformer } from '../../polar';\nimport type { IPieChartSpec } from '../interface';\n\nexport class BasePieChartSpecTransformer<T extends IPieChartSpec> extends PolarChartSpecTransformer<\n AdaptiveSpec<T, 'axes'>\n> {\n protected needAxes(): boolean {\n return false;\n }\n\n protected _getDefaultSeriesSpec(spec: any): any {\n const seriesSpec = super._getDefaultSeriesSpec(spec, [\n 'center',\n 'centerOffset',\n 'cornerRadius',\n 'padAngle',\n 'minAngle',\n 'emptyPlaceholder',\n 'showAllZero',\n 'supportNegative',\n 'useSequentialAnimation',\n 'layoutRadius'\n ]);\n this._addSeriesRelatedSpecKeys(['valueField', 'angleField']);\n // 兼容旧版写法\n seriesSpec.categoryField = spec.categoryField || spec.seriesField;\n seriesSpec.valueField = spec.valueField || spec.angleField;\n seriesSpec.emptyCircle = spec.emptyPlaceholder?.emptyCircle;\n return seriesSpec;\n }\n}\n"]}
|
|
@@ -14,7 +14,7 @@ export class PolarChartSpecTransformer extends BaseChartSpecTransformer {
|
|
|
14
14
|
})), indicatorSpec;
|
|
15
15
|
}
|
|
16
16
|
_getDefaultSeriesSpec(spec, pickKeys) {
|
|
17
|
-
return super._getDefaultSeriesSpec(spec, [ "radius", "outerRadius", "innerRadius", "startAngle", "endAngle", "sortDataByAxis" ], pickKeys);
|
|
17
|
+
return super._getDefaultSeriesSpec(spec, [ "radius", "outerRadius", "innerRadius", "startAngle", "endAngle", "centerX", "centerY", "sortDataByAxis" ], pickKeys);
|
|
18
18
|
}
|
|
19
19
|
transformSpec(spec) {
|
|
20
20
|
super.transformSpec(spec), isArray(spec.dataZoom) && spec.dataZoom.length > 0 && spec.dataZoom.forEach((zoom => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/chart/polar/polar-transformer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAElE,OAAO,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAC;AAGnD,MAAM,OAAO,yBAAqD,SAAQ,wBAA2B;IACzF,cAAc,CAAC,IAAY;QACnC,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3D,CAAC;IAES,gBAAgB,CAAC,IAAS;;QAClC,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAqB,CAAC;QAChE,MAAM,UAAU,GAAG,MAAA,IAAI,CAAC,WAAW,mCAAI,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAG,CAAC,CAAC,0CAAE,WAAW,CAAC;QACrE,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE;YACvB,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;gBAChC,IAAI,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE;oBAC/B,SAAS,CAAC,UAAU,GAAG,UAAU,CAAC;iBACnC;YACH,CAAC,CAAC,CAAC;SACJ;QACD,OAAO,aAAa,CAAC;IACvB,CAAC;IAES,qBAAqB,CAAC,IAAS,EAAE,QAAmB;QAK5D,MAAM,MAAM,GAAQ,KAAK,CAAC,qBAAqB,CAC7C,IAAI,EACJ,CAAC,QAAQ,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,UAAU,EAAE,gBAAgB,CAAC,
|
|
1
|
+
{"version":3,"sources":["../src/chart/polar/polar-transformer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAElE,OAAO,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAC;AAGnD,MAAM,OAAO,yBAAqD,SAAQ,wBAA2B;IACzF,cAAc,CAAC,IAAY;QACnC,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3D,CAAC;IAES,gBAAgB,CAAC,IAAS;;QAClC,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAqB,CAAC;QAChE,MAAM,UAAU,GAAG,MAAA,IAAI,CAAC,WAAW,mCAAI,MAAA,MAAA,IAAI,CAAC,MAAM,0CAAG,CAAC,CAAC,0CAAE,WAAW,CAAC;QACrE,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE;YACvB,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;gBAChC,IAAI,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE;oBAC/B,SAAS,CAAC,UAAU,GAAG,UAAU,CAAC;iBACnC;YACH,CAAC,CAAC,CAAC;SACJ;QACD,OAAO,aAAa,CAAC;IACvB,CAAC;IAES,qBAAqB,CAAC,IAAS,EAAE,QAAmB;QAK5D,MAAM,MAAM,GAAQ,KAAK,CAAC,qBAAqB,CAC7C,IAAI,EACJ,CAAC,QAAQ,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,gBAAgB,CAAC,EAC1G,QAAQ,CACT,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,aAAa,CAAC,IAAO;QACnB,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAE1B,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YACtD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAmB,EAAE,EAAE;gBAG5C,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM,EAAE;oBAC9B,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC;iBAC5B;YACH,CAAC,CAAC,CAAC;SACJ;QAED,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAG/B,IAAI,OAAO,CAAE,IAAY,CAAC,SAAS,CAAC,EAAE;YACnC,IAAY,CAAC,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;SACvD;IACH,CAAC;CACF","file":"polar-transformer.js","sourcesContent":["import { array, isArray, isNil, isValid } from '@visactor/vutils';\nimport type { IDataZoomSpec, IIndicatorSpec } from '../../component';\nimport { BaseChartSpecTransformer } from '../base';\nimport type { IPolarChartSpec } from './interface';\n\nexport class PolarChartSpecTransformer<T extends IPolarChartSpec> extends BaseChartSpecTransformer<T> {\n protected _isValidSeries(type: string): boolean {\n return this.seriesType ? type === this.seriesType : true;\n }\n\n protected getIndicatorSpec(spec: any): IIndicatorSpec[] {\n const indicatorSpec = array(spec.indicator) as IIndicatorSpec[];\n const limitRatio = spec.innerRadius ?? spec.series?.[0]?.innerRadius;\n if (isValid(limitRatio)) {\n indicatorSpec.forEach(indicator => {\n if (isNil(indicator.limitRatio)) {\n indicator.limitRatio = limitRatio;\n }\n });\n }\n return indicatorSpec;\n }\n\n protected _getDefaultSeriesSpec(spec: any, pickKeys?: string[]): any {\n /**\n * 旧的radius写法, 仅做兼容\n * @deprecated use outerRadius instead\n */\n const series: any = super._getDefaultSeriesSpec(\n spec,\n ['radius', 'outerRadius', 'innerRadius', 'startAngle', 'endAngle', 'centerX', 'centerY', 'sortDataByAxis'],\n pickKeys\n );\n\n return series;\n }\n\n transformSpec(spec: T): void {\n super.transformSpec(spec);\n /** 处理极坐标系下的 datazoom */\n if (isArray(spec.dataZoom) && spec.dataZoom.length > 0) {\n spec.dataZoom.forEach((zoom: IDataZoomSpec) => {\n // 极坐标系下 datazoom 目前只支持数据过滤\n // 理想效果:角度轴不支持 axis, 径向轴均支持(通过 group.clip 自定义 clipPath 支持)\n if (zoom.filterMode === 'axis') {\n zoom.filterMode = 'filter';\n }\n });\n }\n\n this.transformSeriesSpec(spec);\n\n /* 处理 indicator 配置 */\n if (isValid((spec as any).indicator)) {\n (spec as any).indicator = this.getIndicatorSpec(spec);\n }\n }\n}\n"]}
|
|
@@ -11,7 +11,7 @@ export class ProgressLikeChartSpecTransformer extends PolarChartSpecTransformer
|
|
|
11
11
|
return !1;
|
|
12
12
|
}
|
|
13
13
|
_getDefaultSeriesSpec(spec) {
|
|
14
|
-
const series = super._getDefaultSeriesSpec(spec, [ "startAngle", "endAngle", "centerX", "centerY" ]);
|
|
14
|
+
const series = super._getDefaultSeriesSpec(spec, [ "startAngle", "endAngle", "centerX", "centerY", "clamp" ]);
|
|
15
15
|
return series.categoryField = spec.categoryField || spec.radiusField, series.valueField = spec.valueField || spec.angleField,
|
|
16
16
|
series;
|
|
17
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/chart/polar/progress-like/progress-like-transformer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAGzC,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAEvD,MAAM,OAAO,gCAA4D,SAAQ,yBAA4B;IACjG,QAAQ;QAChB,OAAO,KAAK,CAAC;IACf,CAAC;IAES,qBAAqB,CAAC,IAAS;QACvC,MAAM,MAAM,GAAQ,KAAK,CAAC,qBAAqB,CAAC,IAAI,EAAE,CAAC,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"sources":["../src/chart/polar/progress-like/progress-like-transformer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAGzC,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAEvD,MAAM,OAAO,gCAA4D,SAAQ,yBAA4B;IACjG,QAAQ;QAChB,OAAO,KAAK,CAAC;IACf,CAAC;IAES,qBAAqB,CAAC,IAAS;QACvC,MAAM,MAAM,GAAQ,KAAK,CAAC,qBAAqB,CAAC,IAAI,EAAE,CAAC,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;QAEjH,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,WAAW,CAAC;QAC9D,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC;QAEvD,OAAO,MAAM,CAAC;IAChB,CAAC;IAES,0BAA0B,CAClC,IAAO,EACP,oBAAoC,EACpC,qBAAqC,EACrC,mBAA6C,EAC7C,oBAA8C;;QAE9C,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YACd,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;SAChB;QAED,IAAI,UAAU,GAAuB,CAAC,MAAA,IAAI,CAAC,IAAI,mCAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAoB,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;QAChH,IAAI,SAAS,GAAyB,CAAC,MAAA,IAAI,CAAC,IAAI,mCAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAoB,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC;QAEhH,IAAI,CAAC,SAAS,EAAE;YACd,SAAS,GAAG,oBAAoB,CAAC;YACjC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SAC3B;QACD,IAAI,CAAC,UAAU,EAAE;YACf,UAAU,GAAG,qBAAqB,CAAC;YACnC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;SAC5B;QAKD,IAAI,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;YACzB,SAAS,CAAC,IAAI,GAAG,QAAQ,CAAC;SAC3B;QACD,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE;YAC1B,UAAU,CAAC,IAAI,GAAG,MAAM,CAAC;SAC1B;QACD,MAAM,MAAM,GAAG,uBAAuB,CAAC,SAAS,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QACtE,IAAI,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE;YACxB,SAAS,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;SAC5B;QACD,IAAI,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE;YACxB,SAAS,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;SAC5B;QAGD,IAAI,mBAAmB,EAAE;YACvB,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,EAAE,mBAAmB,EAAE,SAAS,CAAC,CAAC,CAAC;SACzE;QACD,IAAI,oBAAoB,EAAE;YACxB,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,EAAE,EAAE,oBAAoB,EAAE,UAAU,CAAC,CAAC,CAAC;SAC5E;IACH,CAAC;CACF","file":"progress-like-transformer.js","sourcesContent":["import { isNil } from '@visactor/vutils';\nimport type { IPolarAxisSpec, IPolarBandAxisSpec, IPolarLinearAxisSpec } from '../../../component';\nimport type { IPolarChartSpec } from '../interface';\nimport { PolarChartSpecTransformer } from '../polar-transformer';\nimport { getLinearAxisSpecDomain } from '../../../component/axis/util';\nimport { mergeSpec } from '@visactor/vutils-extension';\n\nexport class ProgressLikeChartSpecTransformer<T extends IPolarChartSpec> extends PolarChartSpecTransformer<T> {\n protected needAxes(): boolean {\n return false;\n }\n\n protected _getDefaultSeriesSpec(spec: any): any {\n const series: any = super._getDefaultSeriesSpec(spec, ['startAngle', 'endAngle', 'centerX', 'centerY', 'clamp']);\n\n series.categoryField = spec.categoryField || spec.radiusField;\n series.valueField = spec.valueField || spec.angleField;\n\n return series;\n }\n\n protected _transformProgressAxisSpec(\n spec: T,\n angleAxisDefaultSpec: IPolarAxisSpec,\n radiusAxisDefaultSpec: IPolarAxisSpec,\n angleAxisAppendSpec?: Partial<IPolarAxisSpec>,\n radiusAxisAppendSpec?: Partial<IPolarAxisSpec>\n ): void {\n if (!spec.axes) {\n spec.axes = [];\n }\n // 找到用户配的角度轴和半径轴\n let radiusAxis: IPolarBandAxisSpec = (spec.axes ?? []).find((axis: IPolarAxisSpec) => axis.orient === 'radius');\n let angleAxis: IPolarLinearAxisSpec = (spec.axes ?? []).find((axis: IPolarAxisSpec) => axis.orient === 'angle');\n // 如果没有找到对应的轴,则自动补充默认配置\n if (!angleAxis) {\n angleAxis = angleAxisDefaultSpec;\n spec.axes.push(angleAxis);\n }\n if (!radiusAxis) {\n radiusAxis = radiusAxisDefaultSpec;\n spec.axes.push(radiusAxis);\n }\n\n // 在以上配置的基础上,对轴 spec 进行统一修改\n\n // 自动补充缺失的配置\n if (isNil(angleAxis.type)) {\n angleAxis.type = 'linear';\n }\n if (isNil(radiusAxis.type)) {\n radiusAxis.type = 'band';\n }\n const domain = getLinearAxisSpecDomain(angleAxis, { min: 0, max: 1 });\n if (isNil(angleAxis.min)) {\n angleAxis.min = domain.min;\n }\n if (isNil(angleAxis.max)) {\n angleAxis.max = domain.max;\n }\n\n // merge 额外的配置\n if (angleAxisAppendSpec) {\n Object.assign(angleAxis, mergeSpec({}, angleAxisAppendSpec, angleAxis));\n }\n if (radiusAxisAppendSpec) {\n Object.assign(radiusAxis, mergeSpec({}, radiusAxisAppendSpec, radiusAxis));\n }\n }\n}\n"]}
|
|
@@ -4,7 +4,8 @@ export class CircularProgressChartSpecTransformer extends ProgressLikeChartSpecT
|
|
|
4
4
|
_getDefaultSeriesSpec(spec) {
|
|
5
5
|
var _a, _b;
|
|
6
6
|
const series = super._getDefaultSeriesSpec(spec);
|
|
7
|
-
return
|
|
7
|
+
return this._addSeriesRelatedSpecKeys([ "cornerRadius", "progress", "track", "roundCap" ]),
|
|
8
|
+
series.progress = spec.progress, series.track = spec.track, series.tickMask = spec.tickMask,
|
|
8
9
|
series.cornerRadius = null !== (_a = spec.cornerRadius) && void 0 !== _a ? _a : 0,
|
|
9
10
|
series.roundCap = null !== (_b = spec.roundCap) && void 0 !== _b && _b, series;
|
|
10
11
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/chart/progress/circular/circular-progress-transformer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gCAAgC,EAAE,MAAM,aAAa,CAAC;AAG/D,MAAM,OAAO,oCAEX,SAAQ,gCAAyD;IACvD,qBAAqB,CAAC,IAAO;;QACrC,MAAM,MAAM,GAAG,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAEjD,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAChC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC1B,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAChC,MAAM,CAAC,YAAY,GAAG,MAAA,IAAI,CAAC,YAAY,mCAAI,CAAC,CAAC;QAC7C,MAAM,CAAC,QAAQ,GAAG,MAAA,IAAI,CAAC,QAAQ,mCAAI,KAAK,CAAC;QACzC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,aAAa,CAAC,IAA6B;QACzC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,CAAC,0BAA0B,CAC7B,IAAI,EACJ;YACE,MAAM,EAAE,OAAO;YACf,OAAO,EAAE,KAAK;SACf,EACD;YACE,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE,KAAK;SACf,EACD;YACE,aAAa,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,KAAK,KAAK;SAChE,CACF,CAAC;IACJ,CAAC;CACF","file":"circular-progress-transformer.js","sourcesContent":["import type { AdaptiveSpec } from '../../../typings';\nimport { ProgressLikeChartSpecTransformer } from '../../polar';\nimport type { ICircularProgressChartSpec } from './interface';\n\nexport class CircularProgressChartSpecTransformer<\n T extends ICircularProgressChartSpec = ICircularProgressChartSpec\n> extends ProgressLikeChartSpecTransformer<AdaptiveSpec<T, 'axes'>> {\n protected _getDefaultSeriesSpec(spec: T): any {\n const series = super._getDefaultSeriesSpec(spec);\n\n series.progress = spec.progress;\n series.track = spec.track;\n series.tickMask = spec.tickMask;\n series.cornerRadius = spec.cornerRadius ?? 0;\n series.roundCap = spec.roundCap ?? false;\n return series;\n }\n\n transformSpec(spec: AdaptiveSpec<T, 'axes'>): void {\n super.transformSpec(spec);\n this._transformProgressAxisSpec(\n spec,\n {\n orient: 'angle',\n visible: false\n },\n {\n orient: 'radius',\n visible: false\n },\n {\n forceInitTick: spec.tickMask && spec.tickMask.visible !== false\n }\n );\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/chart/progress/circular/circular-progress-transformer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gCAAgC,EAAE,MAAM,aAAa,CAAC;AAG/D,MAAM,OAAO,oCAEX,SAAQ,gCAAyD;IACvD,qBAAqB,CAAC,IAAO;;QACrC,MAAM,MAAM,GAAG,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAEjD,IAAI,CAAC,yBAAyB,CAAC,CAAC,cAAc,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;QAClF,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAChC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC1B,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAChC,MAAM,CAAC,YAAY,GAAG,MAAA,IAAI,CAAC,YAAY,mCAAI,CAAC,CAAC;QAC7C,MAAM,CAAC,QAAQ,GAAG,MAAA,IAAI,CAAC,QAAQ,mCAAI,KAAK,CAAC;QACzC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,aAAa,CAAC,IAA6B;QACzC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,CAAC,0BAA0B,CAC7B,IAAI,EACJ;YACE,MAAM,EAAE,OAAO;YACf,OAAO,EAAE,KAAK;SACf,EACD;YACE,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE,KAAK;SACf,EACD;YACE,aAAa,EAAE,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,KAAK,KAAK;SAChE,CACF,CAAC;IACJ,CAAC;CACF","file":"circular-progress-transformer.js","sourcesContent":["import type { AdaptiveSpec } from '../../../typings';\nimport { ProgressLikeChartSpecTransformer } from '../../polar';\nimport type { ICircularProgressChartSpec } from './interface';\n\nexport class CircularProgressChartSpecTransformer<\n T extends ICircularProgressChartSpec = ICircularProgressChartSpec\n> extends ProgressLikeChartSpecTransformer<AdaptiveSpec<T, 'axes'>> {\n protected _getDefaultSeriesSpec(spec: T): any {\n const series = super._getDefaultSeriesSpec(spec);\n\n this._addSeriesRelatedSpecKeys(['cornerRadius', 'progress', 'track', 'roundCap']);\n series.progress = spec.progress;\n series.track = spec.track;\n series.tickMask = spec.tickMask;\n series.cornerRadius = spec.cornerRadius ?? 0;\n series.roundCap = spec.roundCap ?? false;\n return series;\n }\n\n transformSpec(spec: AdaptiveSpec<T, 'axes'>): void {\n super.transformSpec(spec);\n this._transformProgressAxisSpec(\n spec,\n {\n orient: 'angle',\n visible: false\n },\n {\n orient: 'radius',\n visible: false\n },\n {\n forceInitTick: spec.tickMask && spec.tickMask.visible !== false\n }\n );\n }\n}\n"]}
|
|
@@ -12,7 +12,7 @@ export class LinearProgressChartSpecTransformer extends CartesianChartSpecTransf
|
|
|
12
12
|
var _a, _b;
|
|
13
13
|
const series = super._getDefaultSeriesSpec(spec, [ "bandWidth", "progress", "track", "clamp" ]);
|
|
14
14
|
return series.direction = null !== (_a = spec.direction) && void 0 !== _a ? _a : "horizontal",
|
|
15
|
-
series.cornerRadius = null !== (_b = spec.cornerRadius) && void 0 !== _b ? _b : 0,
|
|
15
|
+
this._addSeriesRelatedSpecKeys([ "cornerRadius" ]), series.cornerRadius = null !== (_b = spec.cornerRadius) && void 0 !== _b ? _b : 0,
|
|
16
16
|
series;
|
|
17
17
|
}
|
|
18
18
|
transformSpec(spec) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/chart/progress/linear/linear-progress-transformer.ts"],"names":[],"mappings":"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","file":"linear-progress-transformer.js","sourcesContent":["import { isNil } from '@visactor/vutils';\nimport type { ICartesianAxisSpec, ICartesianBandAxisSpec, ICartesianLinearAxisSpec } from '../../../component';\nimport { CartesianChartSpecTransformer } from '../../cartesian';\nimport type { ILinearProgressChartSpec } from './interface';\nimport { getLinearAxisSpecDomain } from '../../../component/axis/util';\n\nexport class LinearProgressChartSpecTransformer<\n T extends ILinearProgressChartSpec = ILinearProgressChartSpec\n> extends CartesianChartSpecTransformer<T> {\n protected needAxes(): boolean {\n return false;\n }\n\n protected _getDefaultSeriesSpec(spec: T): ILinearProgressChartSpec {\n const series = super._getDefaultSeriesSpec(spec, ['bandWidth', 'progress', 'track', 'clamp']);\n series.direction = spec.direction ?? 'horizontal';\n\n series.cornerRadius = spec.cornerRadius ?? 0;\n return series;\n }\n\n transformSpec(spec: T): void {\n super.transformSpec(spec);\n\n if (!spec.axes) {\n spec.axes = [];\n }\n\n if (spec.direction === 'vertical') {\n let leftAxis: ICartesianLinearAxisSpec = null;\n let bottomAxis: ICartesianBandAxisSpec = null;\n (spec.axes ?? []).forEach((axis: ICartesianAxisSpec) => {\n const { orient } = axis;\n if (orient === 'left') {\n leftAxis = axis;\n }\n if (orient === 'bottom') {\n bottomAxis = axis;\n }\n });\n if (!leftAxis) {\n leftAxis = {\n orient: 'left',\n visible: false\n };\n spec.axes.push(leftAxis);\n }\n if (!bottomAxis) {\n bottomAxis = {\n orient: 'bottom',\n visible: false\n };\n spec.axes.push(bottomAxis);\n }\n\n // 自动补全轴类型类型和range\n if (isNil(bottomAxis.type)) {\n bottomAxis.type = 'band';\n }\n if (isNil(leftAxis.type)) {\n leftAxis.type = 'linear';\n }\n const domain = getLinearAxisSpecDomain(leftAxis, { min: 0, max: 1 });\n if (isNil(leftAxis.min)) {\n leftAxis.min = domain.min;\n }\n if (isNil(leftAxis.max)) {\n leftAxis.max = domain.max;\n }\n } else {\n let leftAxis: ICartesianBandAxisSpec = null;\n let bottomAxis: ICartesianLinearAxisSpec = null;\n (spec.axes ?? []).forEach((axis: ICartesianAxisSpec) => {\n const { orient } = axis;\n if (orient === 'left') {\n leftAxis = axis;\n }\n if (orient === 'bottom') {\n bottomAxis = axis;\n }\n });\n if (!leftAxis) {\n leftAxis = {\n type: 'band',\n orient: 'left',\n visible: false\n };\n spec.axes.push(leftAxis);\n }\n if (!bottomAxis) {\n bottomAxis = {\n orient: 'bottom',\n visible: false\n };\n spec.axes.push(bottomAxis);\n }\n\n // 自动补全轴类型类型和range\n if (isNil(bottomAxis.type)) {\n bottomAxis.type = 'linear';\n }\n if (isNil(leftAxis.type)) {\n leftAxis.type = 'band';\n }\n const domain = getLinearAxisSpecDomain(bottomAxis, { min: 0, max: 1 });\n if (isNil(bottomAxis.min)) {\n bottomAxis.min = domain.min;\n }\n if (isNil(bottomAxis.max)) {\n bottomAxis.max = domain.max;\n }\n }\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/chart/progress/linear/linear-progress-transformer.ts"],"names":[],"mappings":"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","file":"linear-progress-transformer.js","sourcesContent":["import { isNil } from '@visactor/vutils';\nimport type { ICartesianAxisSpec, ICartesianBandAxisSpec, ICartesianLinearAxisSpec } from '../../../component';\nimport { CartesianChartSpecTransformer } from '../../cartesian';\nimport type { ILinearProgressChartSpec } from './interface';\nimport { getLinearAxisSpecDomain } from '../../../component/axis/util';\n\nexport class LinearProgressChartSpecTransformer<\n T extends ILinearProgressChartSpec = ILinearProgressChartSpec\n> extends CartesianChartSpecTransformer<T> {\n protected needAxes(): boolean {\n return false;\n }\n\n protected _getDefaultSeriesSpec(spec: T): ILinearProgressChartSpec {\n const series = super._getDefaultSeriesSpec(spec, ['bandWidth', 'progress', 'track', 'clamp']);\n series.direction = spec.direction ?? 'horizontal';\n\n this._addSeriesRelatedSpecKeys(['cornerRadius']);\n series.cornerRadius = spec.cornerRadius ?? 0;\n return series;\n }\n\n transformSpec(spec: T): void {\n super.transformSpec(spec);\n\n if (!spec.axes) {\n spec.axes = [];\n }\n\n if (spec.direction === 'vertical') {\n let leftAxis: ICartesianLinearAxisSpec = null;\n let bottomAxis: ICartesianBandAxisSpec = null;\n (spec.axes ?? []).forEach((axis: ICartesianAxisSpec) => {\n const { orient } = axis;\n if (orient === 'left') {\n leftAxis = axis;\n }\n if (orient === 'bottom') {\n bottomAxis = axis;\n }\n });\n if (!leftAxis) {\n leftAxis = {\n orient: 'left',\n visible: false\n };\n spec.axes.push(leftAxis);\n }\n if (!bottomAxis) {\n bottomAxis = {\n orient: 'bottom',\n visible: false\n };\n spec.axes.push(bottomAxis);\n }\n\n // 自动补全轴类型类型和range\n if (isNil(bottomAxis.type)) {\n bottomAxis.type = 'band';\n }\n if (isNil(leftAxis.type)) {\n leftAxis.type = 'linear';\n }\n const domain = getLinearAxisSpecDomain(leftAxis, { min: 0, max: 1 });\n if (isNil(leftAxis.min)) {\n leftAxis.min = domain.min;\n }\n if (isNil(leftAxis.max)) {\n leftAxis.max = domain.max;\n }\n } else {\n let leftAxis: ICartesianBandAxisSpec = null;\n let bottomAxis: ICartesianLinearAxisSpec = null;\n (spec.axes ?? []).forEach((axis: ICartesianAxisSpec) => {\n const { orient } = axis;\n if (orient === 'left') {\n leftAxis = axis;\n }\n if (orient === 'bottom') {\n bottomAxis = axis;\n }\n });\n if (!leftAxis) {\n leftAxis = {\n type: 'band',\n orient: 'left',\n visible: false\n };\n spec.axes.push(leftAxis);\n }\n if (!bottomAxis) {\n bottomAxis = {\n orient: 'bottom',\n visible: false\n };\n spec.axes.push(bottomAxis);\n }\n\n // 自动补全轴类型类型和range\n if (isNil(bottomAxis.type)) {\n bottomAxis.type = 'linear';\n }\n if (isNil(leftAxis.type)) {\n leftAxis.type = 'band';\n }\n const domain = getLinearAxisSpecDomain(bottomAxis, { min: 0, max: 1 });\n if (isNil(bottomAxis.min)) {\n bottomAxis.min = domain.min;\n }\n if (isNil(bottomAxis.max)) {\n bottomAxis.max = domain.max;\n }\n }\n }\n}\n"]}
|
|
@@ -8,8 +8,9 @@ export class RadarChartSpecTransformer extends RoseLikeChartSpecTransformer {
|
|
|
8
8
|
_getDefaultSeriesSpec(spec) {
|
|
9
9
|
var _a, _b, _c, _d;
|
|
10
10
|
const series = super._getDefaultSeriesSpec(spec), areaTheme = null === (_b = (_a = this._option).getTheme) || void 0 === _b ? void 0 : _b.call(_a, "series", "radar", "area");
|
|
11
|
-
return
|
|
12
|
-
series.
|
|
11
|
+
return this._addSeriesRelatedSpecKeys([ "line", "point", "area" ]), series.line = spec.line,
|
|
12
|
+
series.point = spec.point, series.stack = spec.stack, series.percent = spec.percent,
|
|
13
|
+
series.area = mergeSpec({
|
|
13
14
|
visible: null !== (_c = null == areaTheme ? void 0 : areaTheme.visible) && void 0 !== _c && _c
|
|
14
15
|
}, spec.area), series.seriesMark = null !== (_d = spec.seriesMark) && void 0 !== _d ? _d : "area",
|
|
15
16
|
series.activePoint = spec.activePoint, series.pointDis = spec.pointDis, series.pointDisMul = spec.pointDisMul,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/chart/radar/radar-transformer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAC;AAExD,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAEvD,MAAM,OAAO,yBAEX,SAAQ,4BAA+B;IAC7B,qBAAqB,CAAC,IAAS;;QACvC,MAAM,MAAM,GAAG,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;QACjD,MAAM,SAAS,GAAG,MAAA,MAAA,IAAI,CAAC,OAAO,EAAC,QAAQ,mDAAG,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QACrE,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACxB,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC1B,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC1B,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC9B,MAAM,CAAC,IAAI,GAAG,SAAS,CACrB;YACE,OAAO,EAAE,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,mCAAI,KAAK;SACrC,EACD,IAAI,CAAC,IAAI,CACV,CAAC;QACF,MAAM,CAAC,UAAU,GAAG,MAAA,IAAI,CAAC,UAAU,mCAAI,MAAM,CAAC;QAC9C,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACtC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAChC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACtC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACtC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,aAAa,CAAC,IAAO;;QACnB,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAE1B,CAAC,MAAA,IAAI,CAAC,IAAI,mCAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,IAAS,EAAE,EAAE;YACtC,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE;gBAC5B,CAAC,YAAY,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;oBACnD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;wBACrB,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;qBACvC;gBACH,CAAC,CAAC,CAAC;gBACH,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;oBACd,IAAI,CAAC,IAAI,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;iBAC/B;aACF;QACH,CAAC,CAAC,CAAC;QAGH,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;YAC9D,OAAO,SAAS,CACd;gBACE,aAAa,EAAE;oBACb,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE;wBACJ,OAAO,EAAE,IAAI;wBACb,IAAI,EAAE,MAAM;qBACb;iBACF;aACF,EACD,YAAY,CACb,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;CACF","file":"radar-transformer.js","sourcesContent":["import { array } from '../../util';\nimport { RoseLikeChartSpecTransformer } from '../polar';\nimport type { IRoseChartSpec } from '../rose';\nimport { mergeSpec } from '@visactor/vutils-extension';\n\nexport class RadarChartSpecTransformer<\n T extends IRoseChartSpec = IRoseChartSpec\n> extends RoseLikeChartSpecTransformer<T> {\n protected _getDefaultSeriesSpec(spec: any): any {\n const series = super._getDefaultSeriesSpec(spec);\n const areaTheme = this._option.getTheme?.('series', 'radar', 'area');\n series.line = spec.line;\n series.point = spec.point;\n series.stack = spec.stack;\n series.percent = spec.percent;\n series.area = mergeSpec(\n {\n visible: areaTheme?.visible ?? false\n },\n spec.area\n );\n series.seriesMark = spec.seriesMark ?? 'area';\n series.activePoint = spec.activePoint;\n series.pointDis = spec.pointDis;\n series.pointDisMul = spec.pointDisMul;\n series.markOverlap = spec.markOverlap;\n return series;\n }\n\n transformSpec(spec: T) {\n super.transformSpec(spec);\n //默认不显示轴的domainLine和Tick\n (spec.axes ?? []).forEach((axis: any) => {\n if (axis.orient === 'radius') {\n ['domainLine', 'label', 'tick'].forEach(configName => {\n if (!axis[configName]) {\n axis[configName] = { visible: false };\n }\n });\n if (!axis.grid) {\n axis.grid = { visible: true };\n }\n }\n });\n\n // set default config for crosshair\n spec.crosshair = array(spec.crosshair || {}).map(crosshairCfg => {\n return mergeSpec(\n {\n categoryField: {\n visible: true,\n line: {\n visible: true,\n type: 'line'\n }\n }\n },\n crosshairCfg\n );\n });\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/chart/radar/radar-transformer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAC;AAExD,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAEvD,MAAM,OAAO,yBAEX,SAAQ,4BAA+B;IAC7B,qBAAqB,CAAC,IAAS;;QACvC,MAAM,MAAM,GAAG,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;QACjD,MAAM,SAAS,GAAG,MAAA,MAAA,IAAI,CAAC,OAAO,EAAC,QAAQ,mDAAG,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QACrE,IAAI,CAAC,yBAAyB,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;QAC1D,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACxB,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC1B,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC1B,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC9B,MAAM,CAAC,IAAI,GAAG,SAAS,CACrB;YACE,OAAO,EAAE,MAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,mCAAI,KAAK;SACrC,EACD,IAAI,CAAC,IAAI,CACV,CAAC;QACF,MAAM,CAAC,UAAU,GAAG,MAAA,IAAI,CAAC,UAAU,mCAAI,MAAM,CAAC;QAC9C,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACtC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAChC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACtC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACtC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,aAAa,CAAC,IAAO;;QACnB,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAE1B,CAAC,MAAA,IAAI,CAAC,IAAI,mCAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,IAAS,EAAE,EAAE;YACtC,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE;gBAC5B,CAAC,YAAY,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;oBACnD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;wBACrB,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;qBACvC;gBACH,CAAC,CAAC,CAAC;gBACH,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;oBACd,IAAI,CAAC,IAAI,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;iBAC/B;aACF;QACH,CAAC,CAAC,CAAC;QAGH,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;YAC9D,OAAO,SAAS,CACd;gBACE,aAAa,EAAE;oBACb,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE;wBACJ,OAAO,EAAE,IAAI;wBACb,IAAI,EAAE,MAAM;qBACb;iBACF;aACF,EACD,YAAY,CACb,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;CACF","file":"radar-transformer.js","sourcesContent":["import { array } from '../../util';\nimport { RoseLikeChartSpecTransformer } from '../polar';\nimport type { IRoseChartSpec } from '../rose';\nimport { mergeSpec } from '@visactor/vutils-extension';\n\nexport class RadarChartSpecTransformer<\n T extends IRoseChartSpec = IRoseChartSpec\n> extends RoseLikeChartSpecTransformer<T> {\n protected _getDefaultSeriesSpec(spec: any): any {\n const series = super._getDefaultSeriesSpec(spec);\n const areaTheme = this._option.getTheme?.('series', 'radar', 'area');\n this._addSeriesRelatedSpecKeys(['line', 'point', 'area']);\n series.line = spec.line;\n series.point = spec.point;\n series.stack = spec.stack;\n series.percent = spec.percent;\n series.area = mergeSpec(\n {\n visible: areaTheme?.visible ?? false\n },\n spec.area\n );\n series.seriesMark = spec.seriesMark ?? 'area';\n series.activePoint = spec.activePoint;\n series.pointDis = spec.pointDis;\n series.pointDisMul = spec.pointDisMul;\n series.markOverlap = spec.markOverlap;\n return series;\n }\n\n transformSpec(spec: T) {\n super.transformSpec(spec);\n //默认不显示轴的domainLine和Tick\n (spec.axes ?? []).forEach((axis: any) => {\n if (axis.orient === 'radius') {\n ['domainLine', 'label', 'tick'].forEach(configName => {\n if (!axis[configName]) {\n axis[configName] = { visible: false };\n }\n });\n if (!axis.grid) {\n axis.grid = { visible: true };\n }\n }\n });\n\n // set default config for crosshair\n spec.crosshair = array(spec.crosshair || {}).map(crosshairCfg => {\n return mergeSpec(\n {\n categoryField: {\n visible: true,\n line: {\n visible: true,\n type: 'line'\n }\n }\n },\n crosshairCfg\n );\n });\n }\n}\n"]}
|
|
@@ -6,8 +6,8 @@ export class RangeAreaChartSpecTransformer extends CartesianChartSpecTransformer
|
|
|
6
6
|
_getDefaultSeriesSpec(spec) {
|
|
7
7
|
var _a, _b;
|
|
8
8
|
const series = super._getDefaultSeriesSpec(spec);
|
|
9
|
-
return
|
|
10
|
-
"horizontal" === spec.direction ? series.xField = null !== (_a = spec.xField) && void 0 !== _a ? _a : [ spec.minField, spec.maxField ] : series.yField = null !== (_b = spec.yField) && void 0 !== _b ? _b : [ spec.minField, spec.maxField ],
|
|
9
|
+
return this._addSeriesRelatedSpecKeys([ "area", "point", "line" ]), series.area = spec.area,
|
|
10
|
+
series.point = spec.point, series.line = spec.line, "horizontal" === spec.direction ? series.xField = null !== (_a = spec.xField) && void 0 !== _a ? _a : [ spec.minField, spec.maxField ] : series.yField = null !== (_b = spec.yField) && void 0 !== _b ? _b : [ spec.minField, spec.maxField ],
|
|
11
11
|
series.stack = !1, series;
|
|
12
12
|
}
|
|
13
13
|
transformSpec(spec) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/chart/range-area/range-area-transformer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,6BAA6B,EAAE,MAAM,cAAc,CAAC;AAC7D,OAAO,EAAE,oCAAoC,EAAE,MAAM,SAAS,CAAC;AAG/D,MAAM,OAAO,6BAEX,SAAQ,6BAAgC;IAC9B,qBAAqB,CAAC,IAAO;;QACrC,MAAM,MAAM,GAAQ,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;QACtD,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACxB,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC1B,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACxB,IAAI,IAAI,CAAC,SAAS,iBAAyB,EAAE;YAC3C,MAAM,CAAC,MAAM,GAAG,MAAA,IAAI,CAAC,MAAM,mCAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;SAC/D;aAAM;YACL,MAAM,CAAC,MAAM,GAAG,MAAA,IAAI,CAAC,MAAM,mCAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;SAC/D;QACD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QACrB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,aAAa,CAAC,IAAO;QACnB,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC1B,oCAAoC,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;CACF","file":"range-area-transformer.js","sourcesContent":["import { Direction } from '../../typings';\nimport { CartesianChartSpecTransformer } from '../cartesian';\nimport { setDefaultCrosshairForCartesianChart } from '../util';\nimport type { IRangeAreaChartSpec } from './interface';\n\nexport class RangeAreaChartSpecTransformer<\n T extends IRangeAreaChartSpec = IRangeAreaChartSpec\n> extends CartesianChartSpecTransformer<T> {\n protected _getDefaultSeriesSpec(spec: T): any {\n const series: any = super._getDefaultSeriesSpec(spec);\n series.area = spec.area;\n series.point = spec.point;\n series.line = spec.line;\n if (spec.direction === Direction.horizontal) {\n series.xField = spec.xField ?? [spec.minField, spec.maxField];\n } else {\n series.yField = spec.yField ?? [spec.minField, spec.maxField];\n }\n series.stack = false;\n return series;\n }\n\n transformSpec(spec: T): void {\n super.transformSpec(spec);\n setDefaultCrosshairForCartesianChart(spec);\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/chart/range-area/range-area-transformer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,6BAA6B,EAAE,MAAM,cAAc,CAAC;AAC7D,OAAO,EAAE,oCAAoC,EAAE,MAAM,SAAS,CAAC;AAG/D,MAAM,OAAO,6BAEX,SAAQ,6BAAgC;IAC9B,qBAAqB,CAAC,IAAO;;QACrC,MAAM,MAAM,GAAQ,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;QACtD,IAAI,CAAC,yBAAyB,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;QAC1D,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACxB,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC1B,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACxB,IAAI,IAAI,CAAC,SAAS,iBAAyB,EAAE;YAC3C,MAAM,CAAC,MAAM,GAAG,MAAA,IAAI,CAAC,MAAM,mCAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;SAC/D;aAAM;YACL,MAAM,CAAC,MAAM,GAAG,MAAA,IAAI,CAAC,MAAM,mCAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;SAC/D;QACD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QACrB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,aAAa,CAAC,IAAO;QACnB,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC1B,oCAAoC,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;CACF","file":"range-area-transformer.js","sourcesContent":["import { Direction } from '../../typings';\nimport { CartesianChartSpecTransformer } from '../cartesian';\nimport { setDefaultCrosshairForCartesianChart } from '../util';\nimport type { IRangeAreaChartSpec } from './interface';\n\nexport class RangeAreaChartSpecTransformer<\n T extends IRangeAreaChartSpec = IRangeAreaChartSpec\n> extends CartesianChartSpecTransformer<T> {\n protected _getDefaultSeriesSpec(spec: T): any {\n const series: any = super._getDefaultSeriesSpec(spec);\n this._addSeriesRelatedSpecKeys(['area', 'point', 'line']);\n series.area = spec.area;\n series.point = spec.point;\n series.line = spec.line;\n if (spec.direction === Direction.horizontal) {\n series.xField = spec.xField ?? [spec.minField, spec.maxField];\n } else {\n series.yField = spec.yField ?? [spec.minField, spec.maxField];\n }\n series.stack = false;\n return series;\n }\n\n transformSpec(spec: T): void {\n super.transformSpec(spec);\n setDefaultCrosshairForCartesianChart(spec);\n }\n}\n"]}
|
|
@@ -10,7 +10,8 @@ export class RoseChartSpecTransformer extends RoseLikeChartSpecTransformer {
|
|
|
10
10
|
_getDefaultSeriesSpec(spec) {
|
|
11
11
|
var _a, _b, _c;
|
|
12
12
|
const series = super._getDefaultSeriesSpec(spec);
|
|
13
|
-
return
|
|
13
|
+
return this._addSeriesRelatedSpecKeys([ "radius", "outerRadius", "innerRadius" ]),
|
|
14
|
+
series.radius = null !== (_a = spec.radius) && void 0 !== _a ? _a : POLAR_DEFAULT_RADIUS,
|
|
14
15
|
series.outerRadius = null !== (_b = spec.outerRadius) && void 0 !== _b ? _b : POLAR_DEFAULT_RADIUS,
|
|
15
16
|
series.innerRadius = null !== (_c = spec.innerRadius) && void 0 !== _c ? _c : 0,
|
|
16
17
|
series.stack = spec.stack, series.percent = spec.percent, series;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/chart/rose/rose-transformer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEhD,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAC;AAExD,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAEvD,MAAM,OAAO,wBAEX,SAAQ,4BAA+B;IAC7B,qBAAqB,CAAC,IAAO;;QACrC,MAAM,MAAM,GAAG,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;QACjD,MAAM,CAAC,MAAM,GAAG,MAAA,IAAI,CAAC,MAAM,mCAAI,oBAAoB,CAAC;QACpD,MAAM,CAAC,WAAW,GAAG,MAAA,IAAI,CAAC,WAAW,mCAAI,oBAAoB,CAAC;QAC9D,MAAM,CAAC,WAAW,GAAG,MAAA,IAAI,CAAC,WAAW,mCAAI,CAAC,CAAC;QAE3C,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC1B,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC9B,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,aAAa,CAAC,IAAO;;QACnB,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAE1B,CAAC,MAAA,IAAI,CAAC,IAAI,mCAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,IAAoB,EAAE,EAAE;YACjD,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;gBAC3D,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;oBACrB,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;iBACvC;YACH,CAAC,CAAC,CAAC;YACH,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,IAAI,KAAK,CAAE,IAA2B,CAAC,YAAY,CAAC,EAAE;gBAE9E,IAA2B,CAAC,YAAY,GAAG,GAAG,CAAC;aACjD;QACH,CAAC,CAAC,CAAC;QAGH,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;YAC9D,OAAO,SAAS,CACd;gBACE,aAAa,EAAE;oBACb,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE;wBACJ,OAAO,EAAE,IAAI;wBACb,IAAI,EAAE,MAAM;qBACb;iBACF;aACF,EACD,YAAY,CACb,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;CACF","file":"rose-transformer.js","sourcesContent":["import { array, isNil } from '@visactor/vutils';\nimport type { IPolarAxisSpec, IPolarBandAxisSpec } from '../../component';\nimport { POLAR_DEFAULT_RADIUS } from '../../constant/polar';\nimport { RoseLikeChartSpecTransformer } from '../polar';\nimport type { IRoseChartSpec } from './interface';\nimport { mergeSpec } from '@visactor/vutils-extension';\n\nexport class RoseChartSpecTransformer<\n T extends IRoseChartSpec = IRoseChartSpec\n> extends RoseLikeChartSpecTransformer<T> {\n protected _getDefaultSeriesSpec(spec: T): any {\n const series = super._getDefaultSeriesSpec(spec);\n series.radius = spec.radius ?? POLAR_DEFAULT_RADIUS;\n series.outerRadius = spec.outerRadius ?? POLAR_DEFAULT_RADIUS;\n series.innerRadius = spec.innerRadius ?? 0;\n\n series.stack = spec.stack;\n series.percent = spec.percent;\n return series;\n }\n\n transformSpec(spec: T) {\n super.transformSpec(spec);\n //默认不显示轴\n (spec.axes ?? []).forEach((axis: IPolarAxisSpec) => {\n ['domainLine', 'grid', 'label', 'tick'].forEach(configName => {\n if (!axis[configName]) {\n axis[configName] = { visible: false };\n }\n });\n if (axis.orient === 'angle' && isNil((axis as IPolarBandAxisSpec).bandPosition)) {\n // 玫瑰图的中心点应该是带宽的中心,保证第一个扇形是从坐标系的 startAngle 开始的\n (axis as IPolarBandAxisSpec).bandPosition = 0.5;\n }\n });\n\n // set default config for crosshair\n spec.crosshair = array(spec.crosshair || {}).map(crosshairCfg => {\n return mergeSpec(\n {\n categoryField: {\n visible: true,\n line: {\n visible: true,\n type: 'rect'\n }\n }\n },\n crosshairCfg\n );\n });\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/chart/rose/rose-transformer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEhD,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,4BAA4B,EAAE,MAAM,UAAU,CAAC;AAExD,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAEvD,MAAM,OAAO,wBAEX,SAAQ,4BAA+B;IAC7B,qBAAqB,CAAC,IAAO;;QACrC,MAAM,MAAM,GAAG,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,CAAC,yBAAyB,CAAC,CAAC,QAAQ,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC;QACzE,MAAM,CAAC,MAAM,GAAG,MAAA,IAAI,CAAC,MAAM,mCAAI,oBAAoB,CAAC;QACpD,MAAM,CAAC,WAAW,GAAG,MAAA,IAAI,CAAC,WAAW,mCAAI,oBAAoB,CAAC;QAC9D,MAAM,CAAC,WAAW,GAAG,MAAA,IAAI,CAAC,WAAW,mCAAI,CAAC,CAAC;QAE3C,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC1B,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC9B,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,aAAa,CAAC,IAAO;;QACnB,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAE1B,CAAC,MAAA,IAAI,CAAC,IAAI,mCAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,IAAoB,EAAE,EAAE;YACjD,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;gBAC3D,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;oBACrB,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;iBACvC;YACH,CAAC,CAAC,CAAC;YACH,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,IAAI,KAAK,CAAE,IAA2B,CAAC,YAAY,CAAC,EAAE;gBAE9E,IAA2B,CAAC,YAAY,GAAG,GAAG,CAAC;aACjD;QACH,CAAC,CAAC,CAAC;QAGH,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;YAC9D,OAAO,SAAS,CACd;gBACE,aAAa,EAAE;oBACb,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE;wBACJ,OAAO,EAAE,IAAI;wBACb,IAAI,EAAE,MAAM;qBACb;iBACF;aACF,EACD,YAAY,CACb,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;CACF","file":"rose-transformer.js","sourcesContent":["import { array, isNil } from '@visactor/vutils';\nimport type { IPolarAxisSpec, IPolarBandAxisSpec } from '../../component';\nimport { POLAR_DEFAULT_RADIUS } from '../../constant/polar';\nimport { RoseLikeChartSpecTransformer } from '../polar';\nimport type { IRoseChartSpec } from './interface';\nimport { mergeSpec } from '@visactor/vutils-extension';\n\nexport class RoseChartSpecTransformer<\n T extends IRoseChartSpec = IRoseChartSpec\n> extends RoseLikeChartSpecTransformer<T> {\n protected _getDefaultSeriesSpec(spec: T): any {\n const series = super._getDefaultSeriesSpec(spec);\n this._addSeriesRelatedSpecKeys(['radius', 'outerRadius', 'innerRadius']);\n series.radius = spec.radius ?? POLAR_DEFAULT_RADIUS;\n series.outerRadius = spec.outerRadius ?? POLAR_DEFAULT_RADIUS;\n series.innerRadius = spec.innerRadius ?? 0;\n\n series.stack = spec.stack;\n series.percent = spec.percent;\n return series;\n }\n\n transformSpec(spec: T) {\n super.transformSpec(spec);\n //默认不显示轴\n (spec.axes ?? []).forEach((axis: IPolarAxisSpec) => {\n ['domainLine', 'grid', 'label', 'tick'].forEach(configName => {\n if (!axis[configName]) {\n axis[configName] = { visible: false };\n }\n });\n if (axis.orient === 'angle' && isNil((axis as IPolarBandAxisSpec).bandPosition)) {\n // 玫瑰图的中心点应该是带宽的中心,保证第一个扇形是从坐标系的 startAngle 开始的\n (axis as IPolarBandAxisSpec).bandPosition = 0.5;\n }\n });\n\n // set default config for crosshair\n spec.crosshair = array(spec.crosshair || {}).map(crosshairCfg => {\n return mergeSpec(\n {\n categoryField: {\n visible: true,\n line: {\n visible: true,\n type: 'rect'\n }\n }\n },\n crosshairCfg\n );\n });\n }\n}\n"]}
|
package/esm/chart/util.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { IChartSpec } from '../typings';
|
|
2
2
|
import type { ICartesianChartSpec } from './cartesian/interface';
|
|
3
3
|
import type { IChartOption } from './interface/common';
|
|
4
|
-
import type { IUpdateSpecResult } from '../model/interface';
|
|
4
|
+
import type { IUpdateSpecEffects, IUpdateSpecResult } from '../model/interface';
|
|
5
5
|
export declare function setDefaultCrosshairForCartesianChart(spec: ICartesianChartSpec): void;
|
|
6
6
|
export declare function calculateChartSize(spec: {
|
|
7
7
|
width?: number;
|
|
@@ -13,6 +13,9 @@ export declare function calculateChartSize(spec: {
|
|
|
13
13
|
width: number;
|
|
14
14
|
height: number;
|
|
15
15
|
};
|
|
16
|
+
export declare function normalizeUpdateSpecEffects(result: IUpdateSpecResult): IUpdateSpecEffects;
|
|
17
|
+
export declare function isUpdateSpecResultLocalOnly(result: IUpdateSpecResult): boolean;
|
|
18
|
+
export declare function isUpdateSpecResultComponentOnly(result: IUpdateSpecResult): boolean;
|
|
16
19
|
export declare function mergeUpdateResult(target: IUpdateSpecResult, ...sources: IUpdateSpecResult[]): IUpdateSpecResult;
|
|
17
20
|
export declare function getTrimPaddingConfig(chartType: string, spec: IChartSpec): {
|
|
18
21
|
paddingInner: number;
|
package/esm/chart/util.js
CHANGED
|
@@ -46,6 +46,39 @@ export function calculateChartSize(spec, option, defaultSize) {
|
|
|
46
46
|
};
|
|
47
47
|
}
|
|
48
48
|
|
|
49
|
+
const UPDATE_SPEC_EFFECT_KEYS = [ "remake", "compile", "render", "layout", "data", "scaleDomain", "series", "component", "animation", "localOnly" ];
|
|
50
|
+
|
|
51
|
+
function mergeUpdateSpecEffects(target, ...sources) {
|
|
52
|
+
sources.forEach((source => {
|
|
53
|
+
const sourceEffects = null == source ? void 0 : source.effects;
|
|
54
|
+
if (!sourceEffects) return;
|
|
55
|
+
target.effects || (target.effects = {});
|
|
56
|
+
const targetEffects = target.effects;
|
|
57
|
+
UPDATE_SPEC_EFFECT_KEYS.forEach((key => {
|
|
58
|
+
sourceEffects[key] && (targetEffects[key] = targetEffects[key] || sourceEffects[key]);
|
|
59
|
+
}));
|
|
60
|
+
}));
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
export function normalizeUpdateSpecEffects(result) {
|
|
64
|
+
var _a;
|
|
65
|
+
const effects = null !== (_a = result.effects) && void 0 !== _a ? _a : result.effects = {};
|
|
66
|
+
return result.reMake && (effects.remake = !0, effects.compile = !0, effects.data = !0,
|
|
67
|
+
effects.scaleDomain = !0, effects.layout = !0, effects.render = !0), result.reCompile && (effects.compile = !0,
|
|
68
|
+
effects.layout = !0, effects.render = !0), result.reRender && (effects.render = !0),
|
|
69
|
+
result.reSize && (effects.layout = !0, effects.render = !0), effects;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
export function isUpdateSpecResultLocalOnly(result) {
|
|
73
|
+
const effects = result.effects;
|
|
74
|
+
return !(!(null == effects ? void 0 : effects.localOnly) || result.reMake || result.reCompile || result.reRender || result.reSize || effects.remake || effects.compile || effects.render || effects.layout || effects.data || effects.scaleDomain || effects.series || result.reTransformSpec || result.reAnimate || result.changeTheme || result.changeBackground);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
export function isUpdateSpecResultComponentOnly(result) {
|
|
78
|
+
const effects = result.effects;
|
|
79
|
+
return !(!(null == effects ? void 0 : effects.component) || result.reMake || result.reCompile || result.reSize || effects.remake || effects.compile || effects.data || effects.scaleDomain || effects.series || effects.animation || result.reTransformSpec || result.reAnimate || result.changeTheme || result.changeBackground);
|
|
80
|
+
}
|
|
81
|
+
|
|
49
82
|
export function mergeUpdateResult(target, ...sources) {
|
|
50
83
|
const merge = key => sources.reduce(((value, cur) => value || (null == cur ? void 0 : cur[key])), target[key]);
|
|
51
84
|
return Object.assign(target, {
|
|
@@ -57,7 +90,7 @@ export function mergeUpdateResult(target, ...sources) {
|
|
|
57
90
|
reTransformSpec: merge("reTransformSpec"),
|
|
58
91
|
changeTheme: merge("changeTheme"),
|
|
59
92
|
changeBackground: merge("changeBackground")
|
|
60
|
-
}), target;
|
|
93
|
+
}), mergeUpdateSpecEffects(target, ...sources), target;
|
|
61
94
|
}
|
|
62
95
|
|
|
63
96
|
export function getTrimPaddingConfig(chartType, spec) {
|
package/esm/chart/util.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/chart/util.ts"],"names":[],"mappings":"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","file":"util.js","sourcesContent":["import { getContainerSize, isString } from '@visactor/vutils';\nimport type { IChartSpec } from '../typings';\n// eslint-disable-next-line no-duplicate-imports\nimport { Direction } from '../typings';\nimport { array, isMiniAppLikeMode, isTrueBrowser, isValid } from '../util';\nimport { mergeSpec } from '@visactor/vutils-extension';\nimport type { ICartesianChartSpec } from './cartesian/interface';\nimport type { IChartOption } from './interface/common';\nimport type { IUpdateSpecResult } from '../model/interface';\nimport { vglobal } from '@visactor/vrender-core';\n\nexport function setDefaultCrosshairForCartesianChart(spec: ICartesianChartSpec) {\n spec.crosshair = array(spec.crosshair || {}).map(crosshairCfg => {\n return mergeSpec(\n {\n [spec.direction === Direction.horizontal ? 'yField' : 'xField']: {\n visible: true,\n line: {\n visible: true,\n type: 'rect'\n }\n }\n },\n crosshairCfg\n );\n });\n}\n\nexport function calculateChartSize(\n spec: { width?: number; height?: number },\n option: Pick<IChartOption, 'canvas' | 'container' | 'mode' | 'modeParams'>,\n defaultSize: { width: number; height: number }\n) {\n const { width: userWidth, height: userHeight } = spec;\n if (isValid(userWidth) && isValid(userHeight)) {\n return {\n width: userWidth,\n height: userHeight\n };\n }\n let width = defaultSize.width;\n let height = defaultSize.height;\n const container = option.container;\n const canvas = option.canvas;\n if (container) {\n const { width: containerWidth, height: containerHeight } = getContainerSize(\n container,\n defaultSize.width,\n defaultSize.height\n );\n width = containerWidth;\n height = containerHeight;\n } else if (canvas && isTrueBrowser(option.mode)) {\n let canvasNode;\n if (isString(canvas)) {\n canvasNode = vglobal.getElementById(canvas);\n } else {\n canvasNode = canvas;\n }\n const { width: containerWidth, height: containerHeight } = getContainerSize(\n canvasNode as HTMLCanvasElement,\n defaultSize.width,\n defaultSize.height\n );\n width = containerWidth;\n height = containerHeight;\n } else if (isMiniAppLikeMode(option.mode) && (option.modeParams as any)?.domref) {\n const domRef = (option.modeParams as any).domref;\n width = domRef.width;\n height = domRef.height;\n }\n\n width = userWidth ?? width;\n height = userHeight ?? height;\n\n return {\n width,\n height\n };\n}\n\nexport function mergeUpdateResult(target: IUpdateSpecResult, ...sources: IUpdateSpecResult[]) {\n const merge = (key: keyof IUpdateSpecResult) => sources.reduce((value, cur) => value || cur?.[key], target[key]);\n\n Object.assign(target, {\n change: merge('change'),\n reCompile: merge('reCompile'),\n reMake: merge('reMake'),\n reRender: merge('reRender'),\n reSize: merge('reSize'),\n reTransformSpec: merge('reTransformSpec'),\n changeTheme: merge('changeTheme'),\n changeBackground: merge('changeBackground')\n } as Required<IUpdateSpecResult>);\n return target;\n}\n\nexport function getTrimPaddingConfig(chartType: string, spec: IChartSpec) {\n if (\n chartType === 'line' ||\n chartType === 'area' ||\n (chartType === 'common' && spec.series.every(item => item.type === 'area' || item.type === 'line'))\n ) {\n return {\n paddingInner: 1,\n paddingOuter: 0\n };\n }\n\n return {\n paddingOuter: 0\n };\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/chart/util.ts"],"names":[],"mappings":"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","file":"util.js","sourcesContent":["import { getContainerSize, isString } from '@visactor/vutils';\nimport type { IChartSpec } from '../typings';\n// eslint-disable-next-line no-duplicate-imports\nimport { Direction } from '../typings';\nimport { array, isMiniAppLikeMode, isTrueBrowser, isValid } from '../util';\nimport { mergeSpec } from '@visactor/vutils-extension';\nimport type { ICartesianChartSpec } from './cartesian/interface';\nimport type { IChartOption } from './interface/common';\nimport type { IUpdateSpecEffects, IUpdateSpecResult } from '../model/interface';\nimport { vglobal } from '@visactor/vrender-core';\n\nexport function setDefaultCrosshairForCartesianChart(spec: ICartesianChartSpec) {\n spec.crosshair = array(spec.crosshair || {}).map(crosshairCfg => {\n return mergeSpec(\n {\n [spec.direction === Direction.horizontal ? 'yField' : 'xField']: {\n visible: true,\n line: {\n visible: true,\n type: 'rect'\n }\n }\n },\n crosshairCfg\n );\n });\n}\n\nexport function calculateChartSize(\n spec: { width?: number; height?: number },\n option: Pick<IChartOption, 'canvas' | 'container' | 'mode' | 'modeParams'>,\n defaultSize: { width: number; height: number }\n) {\n const { width: userWidth, height: userHeight } = spec;\n if (isValid(userWidth) && isValid(userHeight)) {\n return {\n width: userWidth,\n height: userHeight\n };\n }\n let width = defaultSize.width;\n let height = defaultSize.height;\n const container = option.container;\n const canvas = option.canvas;\n if (container) {\n const { width: containerWidth, height: containerHeight } = getContainerSize(\n container,\n defaultSize.width,\n defaultSize.height\n );\n width = containerWidth;\n height = containerHeight;\n } else if (canvas && isTrueBrowser(option.mode)) {\n let canvasNode;\n if (isString(canvas)) {\n canvasNode = vglobal.getElementById(canvas);\n } else {\n canvasNode = canvas;\n }\n const { width: containerWidth, height: containerHeight } = getContainerSize(\n canvasNode as HTMLCanvasElement,\n defaultSize.width,\n defaultSize.height\n );\n width = containerWidth;\n height = containerHeight;\n } else if (isMiniAppLikeMode(option.mode) && (option.modeParams as any)?.domref) {\n const domRef = (option.modeParams as any).domref;\n width = domRef.width;\n height = domRef.height;\n }\n\n width = userWidth ?? width;\n height = userHeight ?? height;\n\n return {\n width,\n height\n };\n}\n\nconst UPDATE_SPEC_EFFECT_KEYS: (keyof IUpdateSpecEffects)[] = [\n 'remake',\n 'compile',\n 'render',\n 'layout',\n 'data',\n 'scaleDomain',\n 'series',\n 'component',\n 'animation',\n 'localOnly'\n];\n\nfunction mergeUpdateSpecEffects(target: IUpdateSpecResult, ...sources: IUpdateSpecResult[]) {\n sources.forEach(source => {\n const sourceEffects = source?.effects;\n\n if (!sourceEffects) {\n return;\n }\n if (!target.effects) {\n target.effects = {};\n }\n const targetEffects = target.effects;\n\n UPDATE_SPEC_EFFECT_KEYS.forEach(key => {\n if (sourceEffects[key]) {\n targetEffects[key] = targetEffects[key] || sourceEffects[key];\n }\n });\n });\n}\n\nexport function normalizeUpdateSpecEffects(result: IUpdateSpecResult): IUpdateSpecEffects {\n const effects = result.effects ?? (result.effects = {});\n\n if (result.reMake) {\n effects.remake = true;\n effects.compile = true;\n effects.data = true;\n effects.scaleDomain = true;\n effects.layout = true;\n effects.render = true;\n }\n if (result.reCompile) {\n effects.compile = true;\n effects.layout = true;\n effects.render = true;\n }\n if (result.reRender) {\n effects.render = true;\n }\n if (result.reSize) {\n effects.layout = true;\n effects.render = true;\n }\n\n return effects;\n}\n\nexport function isUpdateSpecResultLocalOnly(result: IUpdateSpecResult): boolean {\n const effects = result.effects;\n\n return (\n !!effects?.localOnly &&\n !result.reMake &&\n !result.reCompile &&\n !result.reRender &&\n !result.reSize &&\n !effects.remake &&\n !effects.compile &&\n !effects.render &&\n !effects.layout &&\n !effects.data &&\n !effects.scaleDomain &&\n !effects.series &&\n !result.reTransformSpec &&\n !result.reAnimate &&\n !result.changeTheme &&\n !result.changeBackground\n );\n}\n\nexport function isUpdateSpecResultComponentOnly(result: IUpdateSpecResult): boolean {\n const effects = result.effects;\n\n return (\n !!effects?.component &&\n !result.reMake &&\n !result.reCompile &&\n !result.reSize &&\n !effects.remake &&\n !effects.compile &&\n !effects.data &&\n !effects.scaleDomain &&\n !effects.series &&\n !effects.animation &&\n !result.reTransformSpec &&\n !result.reAnimate &&\n !result.changeTheme &&\n !result.changeBackground\n );\n}\n\nexport function mergeUpdateResult(target: IUpdateSpecResult, ...sources: IUpdateSpecResult[]) {\n type UpdateSpecResultFlag = Exclude<keyof IUpdateSpecResult, 'effects'>;\n const merge = (key: UpdateSpecResultFlag) => sources.reduce((value, cur) => value || cur?.[key], target[key]);\n\n Object.assign(target, {\n change: merge('change'),\n reCompile: merge('reCompile'),\n reMake: merge('reMake'),\n reRender: merge('reRender'),\n reSize: merge('reSize'),\n reTransformSpec: merge('reTransformSpec'),\n changeTheme: merge('changeTheme'),\n changeBackground: merge('changeBackground')\n } as Required<IUpdateSpecResult>);\n mergeUpdateSpecEffects(target, ...sources);\n return target;\n}\n\nexport function getTrimPaddingConfig(chartType: string, spec: IChartSpec) {\n if (\n chartType === 'line' ||\n chartType === 'area' ||\n (chartType === 'common' && spec.series.every(item => item.type === 'area' || item.type === 'line'))\n ) {\n return {\n paddingInner: 1,\n paddingOuter: 0\n };\n }\n\n return {\n paddingOuter: 0\n };\n}\n"]}
|
|
@@ -12,7 +12,8 @@ export class WaterfallChartSpecTransformer extends BarChartSpecTransformer {
|
|
|
12
12
|
}
|
|
13
13
|
_getDefaultSeriesSpec(spec) {
|
|
14
14
|
const series = super._getDefaultSeriesSpec(spec);
|
|
15
|
-
return
|
|
15
|
+
return this._addSeriesRelatedSpecKeys([ "bar", "stackLabel", "leaderLine", "total", "calculationMode" ]),
|
|
16
|
+
series.bar = spec.bar, series.stackLabel = spec.stackLabel, series.leaderLine = spec.leaderLine,
|
|
16
17
|
series.total = spec.total, series.calculationMode = spec.calculationMode, series;
|
|
17
18
|
}
|
|
18
19
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/chart/waterfall/waterfall-transformer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC,OAAO,EAAE,uBAAuB,EAAE,MAAM,QAAQ,CAAC;AACjD,OAAO,EAAE,oCAAoC,EAAE,MAAM,SAAS,CAAC;AAG/D,MAAM,OAAO,6BAEX,SAAQ,uBAAqE;IAC7E,aAAa,CAAC,IAAkD;QAC9D,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAM,EAAE,EAAE;gBACrC,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;gBACjB,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC;gBAChB,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;YACnB,CAAC,CAAC,CAAC;SACJ;QAED,oCAAoC,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;IAES,qBAAqB,CAAC,IAAkD;QAChF,MAAM,MAAM,GAAG,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;QACjD,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QACtB,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACpC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACpC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC1B,MAAM,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;QAE9C,OAAO,MAAM,CAAC;IAChB,CAAC;CACF","file":"waterfall-transformer.js","sourcesContent":["import { array } from '@visactor/vutils';\nimport type { AdaptiveSpec } from '../../typings';\nimport { BarChartSpecTransformer } from '../bar';\nimport { setDefaultCrosshairForCartesianChart } from '../util';\nimport type { IWaterfallChartSpec } from './interface';\n\nexport class WaterfallChartSpecTransformer<\n T extends IWaterfallChartSpec = IWaterfallChartSpec\n> extends BarChartSpecTransformer<AdaptiveSpec<T, 'type' | 'series' | 'label'>> {\n transformSpec(spec: AdaptiveSpec<T, 'type' | 'series' | 'label'>): void {\n super.transformSpec(spec);\n if (spec.legends) {\n array(spec.legends).forEach((l: any) => {\n l.select = false;\n l.hover = false;\n l.filter = false;\n });\n }\n\n setDefaultCrosshairForCartesianChart(spec);\n }\n\n protected _getDefaultSeriesSpec(spec: AdaptiveSpec<T, 'type' | 'series' | 'label'>): any {\n const series = super._getDefaultSeriesSpec(spec);\n series.bar = spec.bar;\n series.stackLabel = spec.stackLabel;\n series.leaderLine = spec.leaderLine;\n series.total = spec.total;\n series.calculationMode = spec.calculationMode;\n\n return series;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/chart/waterfall/waterfall-transformer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC,OAAO,EAAE,uBAAuB,EAAE,MAAM,QAAQ,CAAC;AACjD,OAAO,EAAE,oCAAoC,EAAE,MAAM,SAAS,CAAC;AAG/D,MAAM,OAAO,6BAEX,SAAQ,uBAAqE;IAC7E,aAAa,CAAC,IAAkD;QAC9D,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC1B,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAM,EAAE,EAAE;gBACrC,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;gBACjB,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC;gBAChB,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC;YACnB,CAAC,CAAC,CAAC;SACJ;QAED,oCAAoC,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC;IAES,qBAAqB,CAAC,IAAkD;QAChF,MAAM,MAAM,GAAG,KAAK,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,CAAC,yBAAyB,CAAC,CAAC,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC;QAChG,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QACtB,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACpC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACpC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC1B,MAAM,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;QAE9C,OAAO,MAAM,CAAC;IAChB,CAAC;CACF","file":"waterfall-transformer.js","sourcesContent":["import { array } from '@visactor/vutils';\nimport type { AdaptiveSpec } from '../../typings';\nimport { BarChartSpecTransformer } from '../bar';\nimport { setDefaultCrosshairForCartesianChart } from '../util';\nimport type { IWaterfallChartSpec } from './interface';\n\nexport class WaterfallChartSpecTransformer<\n T extends IWaterfallChartSpec = IWaterfallChartSpec\n> extends BarChartSpecTransformer<AdaptiveSpec<T, 'type' | 'series' | 'label'>> {\n transformSpec(spec: AdaptiveSpec<T, 'type' | 'series' | 'label'>): void {\n super.transformSpec(spec);\n if (spec.legends) {\n array(spec.legends).forEach((l: any) => {\n l.select = false;\n l.hover = false;\n l.filter = false;\n });\n }\n\n setDefaultCrosshairForCartesianChart(spec);\n }\n\n protected _getDefaultSeriesSpec(spec: AdaptiveSpec<T, 'type' | 'series' | 'label'>): any {\n const series = super._getDefaultSeriesSpec(spec);\n this._addSeriesRelatedSpecKeys(['bar', 'stackLabel', 'leaderLine', 'total', 'calculationMode']);\n series.bar = spec.bar;\n series.stackLabel = spec.stackLabel;\n series.leaderLine = spec.leaderLine;\n series.total = spec.total;\n series.calculationMode = spec.calculationMode;\n\n return series;\n }\n}\n"]}
|
package/esm/compile/compiler.js
CHANGED
|
@@ -202,15 +202,17 @@ export class Compiler {
|
|
|
202
202
|
}
|
|
203
203
|
renderMarks() {
|
|
204
204
|
var _a;
|
|
205
|
-
|
|
206
|
-
|
|
205
|
+
let hasCommitedMark = this._hasCommitedMark();
|
|
206
|
+
const needsLayout = this._layoutState === LayoutState.before;
|
|
207
|
+
(hasCommitedMark || needsLayout) && (log(`--- start of renderMarks(${this._count}) ---`),
|
|
208
|
+
this.clearProgressive(), hasCommitedMark && this._rootMarks.forEach((mark => {
|
|
207
209
|
mark.render();
|
|
208
|
-
})), this._layoutState
|
|
209
|
-
|
|
210
|
-
|
|
210
|
+
})), needsLayout && (this._layoutState = LayoutState.layouting, null === (_a = this._compileChart) || void 0 === _a || _a.onLayout(),
|
|
211
|
+
this._layoutState = LayoutState.reevaluate, hasCommitedMark = this._hasCommitedMark(),
|
|
212
|
+
hasCommitedMark && this._rootMarks.forEach((mark => {
|
|
211
213
|
mark.render();
|
|
212
|
-
})), this.handleLayoutEnd()), this.findProgressiveMarks(), this.updateStateAnimation(),
|
|
213
|
-
this._doRender(!0), this.doPreProgressive(), log(`--- start of renderMarks(${this._count}) ---`),
|
|
214
|
+
})), this.handleLayoutEnd()), hasCommitedMark && (this.findProgressiveMarks(), this.updateStateAnimation()),
|
|
215
|
+
this._doRender(!0), hasCommitedMark && this.doPreProgressive(), log(`--- start of renderMarks(${this._count}) ---`),
|
|
214
216
|
this._count++);
|
|
215
217
|
}
|
|
216
218
|
reuseOrMorphing(morphConfig = {}) {
|
|
@@ -388,7 +390,7 @@ export class Compiler {
|
|
|
388
390
|
}
|
|
389
391
|
release() {
|
|
390
392
|
const stage = this._stage, rootGroup = this._rootGroup, shouldReleaseStage = !!stage && !this._isExternalStage, releaseVRenderAppRef = this._releaseVRenderAppRef;
|
|
391
|
-
this.clearNextRender(), this.releaseEvent(), this.releaseGrammar(!0), stage && (shouldReleaseStage ? stage.release() : rootGroup && (stage.defaultLayer.removeChild(rootGroup),
|
|
393
|
+
this.clearNextRender(), this.releaseEvent(), this.releaseGrammar(!0), stage && (shouldReleaseStage ? stage.release() : rootGroup && (stage.defaultLayer.removeChild(rootGroup, !0),
|
|
392
394
|
rootGroup.release())), null == releaseVRenderAppRef || releaseVRenderAppRef(), this._stage = null,
|
|
393
395
|
this._rootGroup = null, this._isExternalStage = !1, this._releaseVRenderAppRef = void 0,
|
|
394
396
|
this._option = this._container = null, this.isInited = !1, this._compileChart = null,
|
|
@@ -397,7 +399,7 @@ export class Compiler {
|
|
|
397
399
|
releaseGrammar(removeGraphicItems = !1) {
|
|
398
400
|
removeGraphicItems ? this._rootMarks.forEach((g => {
|
|
399
401
|
traverseGroupMark(g, (m => {
|
|
400
|
-
m.removeProduct();
|
|
402
|
+
m.removeProduct(!0);
|
|
401
403
|
}), null, !0);
|
|
402
404
|
})) : this._cachedMarks = findSimpleMarks(this._rootMarks), this._rootMarks = [];
|
|
403
405
|
}
|