@visactor/vchart 1.8.10-alpha.0 → 1.8.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 +1 -1
- package/build/index.js +989 -782
- package/build/index.min.js +1 -1
- package/build/tsconfig.tsbuildinfo +1 -1
- package/cjs/animation/utils.js +6 -1
- package/cjs/animation/utils.js.map +1 -1
- package/cjs/chart/area/area.js +3 -4
- package/cjs/chart/area/area.js.map +1 -1
- package/cjs/chart/bar/3d/bar-3d.js +3 -3
- package/cjs/chart/bar/3d/bar-3d.js.map +1 -1
- package/cjs/chart/bar/bar.js +3 -4
- package/cjs/chart/bar/bar.js.map +1 -1
- package/cjs/chart/base/base-chart.js +4 -4
- package/cjs/chart/base/base-chart.js.map +1 -1
- package/cjs/chart/box-plot/box-plot-transformer.js +3 -3
- package/cjs/chart/box-plot/box-plot-transformer.js.map +1 -1
- package/cjs/chart/box-plot/box-plot.js +4 -5
- package/cjs/chart/box-plot/box-plot.js.map +1 -1
- package/cjs/chart/circle-packing/circle-packing.js +3 -3
- package/cjs/chart/circle-packing/circle-packing.js.map +1 -1
- package/cjs/chart/common/common.js +4 -4
- package/cjs/chart/common/common.js.map +1 -1
- package/cjs/chart/correlation/correlation.js +4 -4
- package/cjs/chart/correlation/correlation.js.map +1 -1
- package/cjs/chart/funnel/3d/funnel-3d.js +4 -5
- package/cjs/chart/funnel/3d/funnel-3d.js.map +1 -1
- package/cjs/chart/funnel/funnel.js +4 -5
- package/cjs/chart/funnel/funnel.js.map +1 -1
- package/cjs/chart/gauge/gauge.js +3 -3
- package/cjs/chart/gauge/gauge.js.map +1 -1
- package/cjs/chart/heatmap/heatmap.js +4 -5
- package/cjs/chart/heatmap/heatmap.js.map +1 -1
- package/cjs/chart/histogram/3d/histogram-3d.js +3 -3
- package/cjs/chart/histogram/3d/histogram-3d.js.map +1 -1
- package/cjs/chart/histogram/histogram.js +4 -5
- package/cjs/chart/histogram/histogram.js.map +1 -1
- package/cjs/chart/interface/type.d.ts +1 -1
- package/cjs/chart/interface/type.js.map +1 -1
- package/cjs/chart/line/line.js +3 -4
- package/cjs/chart/line/line.js.map +1 -1
- package/cjs/chart/map/map.js +3 -3
- package/cjs/chart/map/map.js.map +1 -1
- package/cjs/chart/pie/3d/pie-3d.js +3 -3
- package/cjs/chart/pie/3d/pie-3d.js.map +1 -1
- package/cjs/chart/pie/pie.js +3 -3
- package/cjs/chart/pie/pie.js.map +1 -1
- package/cjs/chart/polar/polar-transformer.js +2 -2
- package/cjs/chart/polar/polar-transformer.js.map +1 -1
- package/cjs/chart/progress/circular/circular.js +3 -3
- package/cjs/chart/progress/circular/circular.js.map +1 -1
- package/cjs/chart/progress/linear/linear.js +3 -3
- package/cjs/chart/progress/linear/linear.js.map +1 -1
- package/cjs/chart/radar/radar.js +3 -4
- package/cjs/chart/radar/radar.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/range-area/range-area.js +4 -5
- package/cjs/chart/range-area/range-area.js.map +1 -1
- package/cjs/chart/range-column/3d/range-column-3d-transformer.js +2 -2
- package/cjs/chart/range-column/3d/range-column-3d-transformer.js.map +1 -1
- package/cjs/chart/range-column/3d/range-column-3d.js +4 -4
- package/cjs/chart/range-column/3d/range-column-3d.js.map +1 -1
- package/cjs/chart/range-column/range-column-transformer.js +2 -2
- package/cjs/chart/range-column/range-column-transformer.js.map +1 -1
- package/cjs/chart/range-column/range-column.js +4 -4
- package/cjs/chart/range-column/range-column.js.map +1 -1
- package/cjs/chart/rose/rose.js +3 -4
- package/cjs/chart/rose/rose.js.map +1 -1
- package/cjs/chart/sankey/sankey.js +4 -5
- package/cjs/chart/sankey/sankey.js.map +1 -1
- package/cjs/chart/scatter/scatter.js +4 -6
- package/cjs/chart/scatter/scatter.js.map +1 -1
- package/cjs/chart/sequence/sequence-transformer.js +3 -3
- package/cjs/chart/sequence/sequence-transformer.js.map +1 -1
- package/cjs/chart/sequence/sequence.js +4 -4
- package/cjs/chart/sequence/sequence.js.map +1 -1
- package/cjs/chart/sunburst/sunburst.js +4 -5
- package/cjs/chart/sunburst/sunburst.js.map +1 -1
- package/cjs/chart/treemap/treemap.js +4 -5
- package/cjs/chart/treemap/treemap.js.map +1 -1
- package/cjs/chart/util.js +2 -2
- package/cjs/chart/util.js.map +1 -1
- package/cjs/chart/waterfall/waterfall.js +4 -5
- package/cjs/chart/waterfall/waterfall.js.map +1 -1
- package/cjs/chart/word-cloud/3d/word-cloud-3d.js +3 -3
- package/cjs/chart/word-cloud/3d/word-cloud-3d.js.map +1 -1
- package/cjs/chart/word-cloud/base/base.js +2 -2
- package/cjs/chart/word-cloud/base/base.js.map +1 -1
- package/cjs/chart/word-cloud/word-cloud.js +4 -5
- package/cjs/chart/word-cloud/word-cloud.js.map +1 -1
- package/cjs/compile/grammar-item.js +2 -1
- package/cjs/compile/interface/compiler.d.ts +2 -0
- package/cjs/compile/interface/compiler.js.map +1 -1
- package/cjs/compile/mark/interface.d.ts +0 -9
- package/cjs/compile/mark/interface.js +3 -10
- package/cjs/compile/mark/interface.js.map +1 -1
- package/cjs/component/axis/cartesian/axis.js +19 -12
- package/cjs/component/axis/cartesian/axis.js.map +1 -1
- package/cjs/component/axis/cartesian/util/common.js +3 -3
- package/cjs/component/axis/cartesian/util/common.js.map +1 -1
- package/cjs/component/axis/mixin/band-axis-mixin.js +1 -0
- package/cjs/component/axis/mixin/band-axis-mixin.js.map +1 -1
- package/cjs/component/axis/mixin/linear-axis-mixin.js +3 -3
- package/cjs/component/axis/mixin/linear-axis-mixin.js.map +1 -1
- package/cjs/component/axis/polar/axis.js +19 -11
- package/cjs/component/axis/polar/axis.js.map +1 -1
- package/cjs/component/crosshair/cartesian.js +8 -8
- package/cjs/component/crosshair/cartesian.js.map +1 -1
- package/cjs/component/crosshair/config.d.ts +1 -1
- package/cjs/component/crosshair/config.js.map +1 -1
- package/cjs/component/crosshair/polar.js +9 -9
- package/cjs/component/crosshair/polar.js.map +1 -1
- package/cjs/component/data-zoom/constant.d.ts +1 -1
- package/cjs/component/data-zoom/constant.js.map +1 -1
- package/cjs/component/data-zoom/data-filter-base-component.js +8 -8
- package/cjs/component/data-zoom/data-filter-base-component.js.map +1 -1
- package/cjs/component/data-zoom/data-zoom/data-zoom.js +3 -3
- package/cjs/component/data-zoom/data-zoom/data-zoom.js.map +1 -1
- package/cjs/component/data-zoom/scroll-bar/scroll-bar.js +3 -3
- package/cjs/component/data-zoom/scroll-bar/scroll-bar.js.map +1 -1
- package/cjs/component/data-zoom/util.js +2 -3
- package/cjs/component/data-zoom/util.js.map +1 -1
- package/cjs/component/label/label.js +4 -4
- package/cjs/component/label/label.js.map +1 -1
- package/cjs/component/label/total-label.js +4 -4
- package/cjs/component/label/total-label.js.map +1 -1
- package/cjs/component/label/util.js +4 -4
- package/cjs/component/label/util.js.map +1 -1
- package/cjs/component/legend/base-legend.d.ts +1 -1
- package/cjs/component/legend/util.d.ts +2 -2
- package/cjs/component/marker/base-marker.d.ts +5 -1
- package/cjs/component/marker/base-marker.js.map +1 -1
- package/cjs/component/marker/mark-area/mark-area.js +7 -3
- package/cjs/component/marker/mark-area/mark-area.js.map +1 -1
- package/cjs/component/marker/mark-line/mark-line.js +6 -2
- package/cjs/component/marker/mark-line/mark-line.js.map +1 -1
- package/cjs/component/marker/mark-point/mark-point.js +6 -2
- package/cjs/component/marker/mark-point/mark-point.js.map +1 -1
- package/cjs/component/marker/utils.js +2 -2
- package/cjs/component/marker/utils.js.map +1 -1
- package/cjs/component/tooltip/handler/base.js +15 -15
- package/cjs/component/tooltip/handler/base.js.map +1 -1
- package/cjs/component/tooltip/handler/dom/model/shape-model.js +15 -10
- package/cjs/component/tooltip/handler/dom/model/shape-model.js.map +1 -1
- package/cjs/component/tooltip/handler/utils/position.js +14 -14
- package/cjs/component/tooltip/handler/utils/position.js.map +1 -1
- package/cjs/component/util.js +1 -2
- package/cjs/core/factory.js +2 -3
- package/cjs/core/factory.js.map +1 -1
- package/cjs/core/index.d.ts +1 -1
- package/cjs/core/index.js +1 -1
- package/cjs/core/index.js.map +1 -1
- package/cjs/data/transforms/marker-filter.d.ts +5 -0
- package/cjs/data/transforms/marker-filter.js +17 -0
- package/cjs/data/transforms/marker-filter.js.map +1 -0
- package/cjs/event/event-dispatcher.js +2 -1
- package/cjs/event/events/dimension/util/cartesian.js +2 -2
- package/cjs/event/events/dimension/util/cartesian.js.map +1 -1
- package/cjs/event/index.js +1 -2
- package/cjs/interaction/drill/drillable.d.ts +1 -1
- package/cjs/interaction/drill/drillable.js +2 -2
- package/cjs/interaction/drill/drillable.js.map +1 -1
- package/cjs/interaction/zoom/zoomable.d.ts +1 -1
- package/cjs/interaction/zoom/zoomable.js +10 -10
- package/cjs/interaction/zoom/zoomable.js.map +1 -1
- package/cjs/layout/interface.d.ts +2 -0
- package/cjs/layout/interface.js.map +1 -1
- package/cjs/layout/layout-item.d.ts +2 -1
- package/cjs/layout/layout-item.js +2 -1
- package/cjs/layout/layout-item.js.map +1 -1
- package/cjs/layout/util.js +91 -77
- package/cjs/layout/util.js.map +1 -1
- package/cjs/mark/arc-3d.js +2 -2
- package/cjs/mark/arc-3d.js.map +1 -1
- package/cjs/mark/arc.js +2 -2
- package/cjs/mark/arc.js.map +1 -1
- package/cjs/mark/area.js +2 -2
- package/cjs/mark/area.js.map +1 -1
- package/cjs/mark/box-plot.js +2 -2
- package/cjs/mark/box-plot.js.map +1 -1
- package/cjs/mark/cell.js +2 -2
- package/cjs/mark/cell.js.map +1 -1
- package/cjs/mark/component.js +2 -2
- package/cjs/mark/component.js.map +1 -1
- package/cjs/mark/group.js +2 -2
- package/cjs/mark/group.js.map +1 -1
- package/cjs/mark/image.js +2 -2
- package/cjs/mark/image.js.map +1 -1
- package/cjs/mark/interface/type.d.ts +1 -1
- package/cjs/mark/interface/type.js.map +1 -1
- package/cjs/mark/label.js +2 -2
- package/cjs/mark/label.js.map +1 -1
- package/cjs/mark/line.js +2 -2
- package/cjs/mark/line.js.map +1 -1
- package/cjs/mark/link-path.js +2 -2
- package/cjs/mark/link-path.js.map +1 -1
- package/cjs/mark/path.js +2 -2
- package/cjs/mark/path.js.map +1 -1
- package/cjs/mark/polygon/polygon.js +2 -2
- package/cjs/mark/polygon/polygon.js.map +1 -1
- package/cjs/mark/polygon/pyramid-3d.js +2 -2
- package/cjs/mark/polygon/pyramid-3d.js.map +1 -1
- package/cjs/mark/progress-arc.js +2 -3
- package/cjs/mark/progress-arc.js.map +1 -1
- package/cjs/mark/rect-3d.js +2 -2
- package/cjs/mark/rect-3d.js.map +1 -1
- package/cjs/mark/rect.js +2 -2
- package/cjs/mark/rect.js.map +1 -1
- package/cjs/mark/ripple.js +2 -2
- package/cjs/mark/ripple.js.map +1 -1
- package/cjs/mark/rule.js +2 -2
- package/cjs/mark/rule.js.map +1 -1
- package/cjs/mark/symbol.js +3 -3
- package/cjs/mark/symbol.js.map +1 -1
- package/cjs/mark/text.js +2 -2
- package/cjs/mark/text.js.map +1 -1
- package/cjs/mark/utils/common.js +3 -7
- package/cjs/mark/utils/common.js.map +1 -1
- package/cjs/region/region.js +6 -6
- package/cjs/region/region.js.map +1 -1
- package/cjs/series/area/animation.js +3 -3
- package/cjs/series/area/animation.js.map +1 -1
- package/cjs/series/area/area-transformer.js +3 -3
- package/cjs/series/area/area-transformer.js.map +1 -1
- package/cjs/series/area/area.js +6 -6
- package/cjs/series/area/area.js.map +1 -1
- package/cjs/series/area/constant.js +4 -4
- package/cjs/series/area/constant.js.map +1 -1
- package/cjs/series/bar/animation.js +3 -3
- package/cjs/series/bar/animation.js.map +1 -1
- package/cjs/series/bar/bar-3d.js +4 -4
- package/cjs/series/bar/bar-3d.js.map +1 -1
- package/cjs/series/bar/bar-transformer.js +2 -2
- package/cjs/series/bar/bar-transformer.js.map +1 -1
- package/cjs/series/bar/bar.js +15 -15
- package/cjs/series/bar/bar.js.map +1 -1
- package/cjs/series/bar/constant.js +10 -10
- package/cjs/series/bar/constant.js.map +1 -1
- package/cjs/series/base/base-series.js +9 -5
- package/cjs/series/base/base-series.js.map +1 -1
- package/cjs/series/base/constant.js +4 -4
- package/cjs/series/base/constant.js.map +1 -1
- package/cjs/series/box-plot/box-plot.js +7 -7
- package/cjs/series/box-plot/box-plot.js.map +1 -1
- package/cjs/series/box-plot/constant.js +7 -7
- package/cjs/series/box-plot/constant.js.map +1 -1
- package/cjs/series/cartesian/cartesian.js +9 -10
- package/cjs/series/cartesian/cartesian.js.map +1 -1
- package/cjs/series/circle-packing/circle-packing.js +3 -3
- package/cjs/series/circle-packing/circle-packing.js.map +1 -1
- package/cjs/series/circle-packing/constant.js +4 -4
- package/cjs/series/circle-packing/constant.js.map +1 -1
- package/cjs/series/correlation/constant.js +13 -13
- package/cjs/series/correlation/constant.js.map +1 -1
- package/cjs/series/correlation/correlation-transformer.js +2 -2
- package/cjs/series/correlation/correlation-transformer.js.map +1 -1
- package/cjs/series/correlation/correlation.js +1 -1
- package/cjs/series/correlation/correlation.js.map +1 -1
- package/cjs/series/dot/constant.js +22 -22
- package/cjs/series/dot/constant.js.map +1 -1
- package/cjs/series/dot/dot.js +4 -4
- package/cjs/series/dot/dot.js.map +1 -1
- package/cjs/series/funnel/3d/funnel-3d-transformer.js +2 -2
- package/cjs/series/funnel/3d/funnel-3d-transformer.js.map +1 -1
- package/cjs/series/funnel/3d/funnel-3d.js +5 -5
- package/cjs/series/funnel/3d/funnel-3d.js.map +1 -1
- package/cjs/series/funnel/constant.js +31 -31
- package/cjs/series/funnel/constant.js.map +1 -1
- package/cjs/series/funnel/funnel-transformer.js +2 -2
- package/cjs/series/funnel/funnel-transformer.js.map +1 -1
- package/cjs/series/funnel/funnel.js +7 -7
- package/cjs/series/funnel/funnel.js.map +1 -1
- package/cjs/series/funnel/tooltip-helper.js +4 -4
- package/cjs/series/funnel/tooltip-helper.js.map +1 -1
- package/cjs/series/gauge/constant.js +16 -16
- package/cjs/series/gauge/constant.js.map +1 -1
- package/cjs/series/gauge/gauge-pointer.js +6 -6
- package/cjs/series/gauge/gauge-pointer.js.map +1 -1
- package/cjs/series/gauge/gauge-transformer.js +2 -2
- package/cjs/series/gauge/gauge-transformer.js.map +1 -1
- package/cjs/series/gauge/gauge.js +1 -1
- package/cjs/series/gauge/gauge.js.map +1 -1
- package/cjs/series/heatmap/constant.js +7 -7
- package/cjs/series/heatmap/constant.js.map +1 -1
- package/cjs/series/heatmap/heatmap-transformer.js +2 -2
- package/cjs/series/heatmap/heatmap-transformer.js.map +1 -1
- package/cjs/series/heatmap/heatmap.js +1 -1
- package/cjs/series/heatmap/heatmap.js.map +1 -1
- package/cjs/series/interface/type.d.ts +1 -2
- package/cjs/series/interface/type.js +2 -4
- package/cjs/series/interface/type.js.map +1 -1
- package/cjs/series/line/animation.js +3 -3
- package/cjs/series/line/animation.js.map +1 -1
- package/cjs/series/line/line.js +2 -2
- package/cjs/series/line/line.js.map +1 -1
- package/cjs/series/link/constant.js +10 -10
- package/cjs/series/link/constant.js.map +1 -1
- package/cjs/series/link/link.js +2 -2
- package/cjs/series/link/link.js.map +1 -1
- package/cjs/series/map/constant.js +4 -4
- package/cjs/series/map/constant.js.map +1 -1
- package/cjs/series/map/map-transformer.js +2 -2
- package/cjs/series/map/map-transformer.js.map +1 -1
- package/cjs/series/map/map.js +1 -1
- package/cjs/series/map/map.js.map +1 -1
- package/cjs/series/mixin/constant.js +7 -11
- package/cjs/series/mixin/constant.js.map +1 -1
- package/cjs/series/mixin/line-mixin-transformer.js +3 -3
- package/cjs/series/mixin/line-mixin-transformer.js.map +1 -1
- package/cjs/series/mixin/line-mixin.js +6 -6
- package/cjs/series/mixin/line-mixin.js.map +1 -1
- package/cjs/series/pie/3d/pie-3d-transformer.js +2 -2
- package/cjs/series/pie/3d/pie-3d-transformer.js.map +1 -1
- package/cjs/series/pie/3d/pie-3d.js +4 -4
- package/cjs/series/pie/3d/pie-3d.js.map +1 -1
- package/cjs/series/pie/constant.js +13 -13
- package/cjs/series/pie/constant.js.map +1 -1
- package/cjs/series/pie/pie-transformer.js +2 -2
- package/cjs/series/pie/pie-transformer.js.map +1 -1
- package/cjs/series/pie/pie.js +7 -7
- package/cjs/series/pie/pie.js.map +1 -1
- package/cjs/series/polar/progress-like/constant.js +4 -4
- package/cjs/series/polar/progress-like/constant.js.map +1 -1
- package/cjs/series/progress/circular/circular.js +2 -2
- package/cjs/series/progress/circular/circular.js.map +1 -1
- package/cjs/series/progress/circular/constant.js +7 -7
- package/cjs/series/progress/circular/constant.js.map +1 -1
- package/cjs/series/progress/linear/animation.js +3 -3
- package/cjs/series/progress/linear/animation.js.map +1 -1
- package/cjs/series/progress/linear/constant.js +10 -10
- package/cjs/series/progress/linear/constant.js.map +1 -1
- package/cjs/series/progress/linear/linear.js +2 -2
- package/cjs/series/progress/linear/linear.js.map +1 -1
- package/cjs/series/radar/constant.js +4 -4
- package/cjs/series/radar/constant.js.map +1 -1
- package/cjs/series/radar/radar.js +1 -1
- package/cjs/series/radar/radar.js.map +1 -1
- package/cjs/series/range-area/range-area.js +3 -3
- package/cjs/series/range-area/range-area.js.map +1 -1
- package/cjs/series/range-area/tooltip-helper.js +2 -2
- package/cjs/series/range-area/tooltip-helper.js.map +1 -1
- package/cjs/series/range-column/3d/range-column-3d-transformer.js +2 -2
- package/cjs/series/range-column/3d/range-column-3d-transformer.js.map +1 -1
- package/cjs/series/range-column/3d/range-column-3d.js +4 -4
- package/cjs/series/range-column/3d/range-column-3d.js.map +1 -1
- package/cjs/series/range-column/constant.js +13 -13
- package/cjs/series/range-column/constant.js.map +1 -1
- package/cjs/series/range-column/interface.d.ts +2 -2
- package/cjs/series/range-column/interface.js.map +1 -1
- package/cjs/series/range-column/range-column-transformer.js +2 -2
- package/cjs/series/range-column/range-column-transformer.js.map +1 -1
- package/cjs/series/range-column/range-column.js +11 -11
- package/cjs/series/range-column/range-column.js.map +1 -1
- package/cjs/series/range-column/tooltip-helper.js +2 -2
- package/cjs/series/range-column/tooltip-helper.js.map +1 -1
- package/cjs/series/rose/constant.js +4 -4
- package/cjs/series/rose/constant.js.map +1 -1
- package/cjs/series/rose/rose-transformer.js +2 -2
- package/cjs/series/rose/rose-transformer.js.map +1 -1
- package/cjs/series/rose/rose.js +1 -1
- package/cjs/series/rose/rose.js.map +1 -1
- package/cjs/series/sankey/animation.js +5 -5
- package/cjs/series/sankey/animation.js.map +1 -1
- package/cjs/series/sankey/constant.js +7 -7
- package/cjs/series/sankey/constant.js.map +1 -1
- package/cjs/series/sankey/sankey.js +3 -3
- package/cjs/series/sankey/sankey.js.map +1 -1
- package/cjs/series/scatter/constant.js +4 -4
- package/cjs/series/scatter/constant.js.map +1 -1
- package/cjs/series/scatter/scatter-transformer.js +2 -2
- package/cjs/series/scatter/scatter-transformer.js.map +1 -1
- package/cjs/series/scatter/scatter.js +1 -1
- package/cjs/series/scatter/scatter.js.map +1 -1
- package/cjs/series/sunburst/constant.js +4 -4
- package/cjs/series/sunburst/constant.js.map +1 -1
- package/cjs/series/sunburst/sunburst.js +3 -3
- package/cjs/series/sunburst/sunburst.js.map +1 -1
- package/cjs/series/treemap/constant.js +10 -10
- package/cjs/series/treemap/constant.js.map +1 -1
- package/cjs/series/treemap/treemap-transform.js +3 -3
- package/cjs/series/treemap/treemap-transform.js.map +1 -1
- package/cjs/series/treemap/treemap.js +7 -7
- package/cjs/series/treemap/treemap.js.map +1 -1
- package/cjs/series/util/label-mark.js +5 -5
- package/cjs/series/util/label-mark.js.map +1 -1
- package/cjs/series/waterfall/constant.js +7 -7
- package/cjs/series/waterfall/constant.js.map +1 -1
- package/cjs/series/waterfall/waterfall-transformer.js +2 -2
- package/cjs/series/waterfall/waterfall-transformer.js.map +1 -1
- package/cjs/series/waterfall/waterfall.js +6 -6
- package/cjs/series/waterfall/waterfall.js.map +1 -1
- package/cjs/series/word-cloud/base.js +2 -2
- package/cjs/series/word-cloud/base.js.map +1 -1
- package/cjs/series/word-cloud/constant.js +7 -7
- package/cjs/series/word-cloud/constant.js.map +1 -1
- package/cjs/series/word-cloud/interface.d.ts +2 -11
- package/cjs/series/word-cloud/interface.js +1 -8
- package/cjs/series/word-cloud/interface.js.map +1 -1
- package/cjs/series/word-cloud/word-cloud-3d.js +2 -2
- package/cjs/series/word-cloud/word-cloud-3d.js.map +1 -1
- package/cjs/theme/builtin/common/series/rangeColumn.js +3 -7
- package/cjs/theme/builtin/common/series/rangeColumn.js.map +1 -1
- package/cjs/typings/layout.d.ts +1 -0
- package/cjs/typings/layout.js.map +1 -1
- package/cjs/typings/shape.d.ts +0 -21
- package/cjs/typings/shape.js +1 -12
- package/cjs/typings/shape.js.map +1 -1
- package/cjs/typings/space.d.ts +1 -1
- package/cjs/typings/space.js.map +1 -1
- package/cjs/typings/tooltip/position.d.ts +2 -2
- package/cjs/typings/tooltip/position.js.map +1 -1
- package/esm/animation/utils.js +6 -1
- package/esm/animation/utils.js.map +1 -1
- package/esm/chart/area/area.js +3 -5
- package/esm/chart/area/area.js.map +1 -1
- package/esm/chart/bar/3d/bar-3d.js +3 -5
- package/esm/chart/bar/3d/bar-3d.js.map +1 -1
- package/esm/chart/bar/bar.js +2 -4
- package/esm/chart/bar/bar.js.map +1 -1
- package/esm/chart/base/base-chart.js +1 -3
- package/esm/chart/base/base-chart.js.map +1 -1
- package/esm/chart/box-plot/box-plot-transformer.js +2 -4
- package/esm/chart/box-plot/box-plot-transformer.js.map +1 -1
- package/esm/chart/box-plot/box-plot.js +2 -4
- package/esm/chart/box-plot/box-plot.js.map +1 -1
- package/esm/chart/circle-packing/circle-packing.js +2 -4
- package/esm/chart/circle-packing/circle-packing.js.map +1 -1
- package/esm/chart/common/common.js +2 -4
- package/esm/chart/common/common.js.map +1 -1
- package/esm/chart/correlation/correlation.js +2 -4
- package/esm/chart/correlation/correlation.js.map +1 -1
- package/esm/chart/funnel/3d/funnel-3d.js +2 -4
- package/esm/chart/funnel/3d/funnel-3d.js.map +1 -1
- package/esm/chart/funnel/funnel.js +3 -5
- package/esm/chart/funnel/funnel.js.map +1 -1
- package/esm/chart/gauge/gauge.js +2 -4
- package/esm/chart/gauge/gauge.js.map +1 -1
- package/esm/chart/heatmap/heatmap.js +2 -4
- package/esm/chart/heatmap/heatmap.js.map +1 -1
- package/esm/chart/histogram/3d/histogram-3d.js +2 -4
- package/esm/chart/histogram/3d/histogram-3d.js.map +1 -1
- package/esm/chart/histogram/histogram.js +2 -4
- package/esm/chart/histogram/histogram.js.map +1 -1
- package/esm/chart/interface/type.d.ts +1 -1
- package/esm/chart/interface/type.js.map +1 -1
- package/esm/chart/line/line.js +3 -5
- package/esm/chart/line/line.js.map +1 -1
- package/esm/chart/map/map.js +2 -4
- package/esm/chart/map/map.js.map +1 -1
- package/esm/chart/pie/3d/pie-3d.js +3 -5
- package/esm/chart/pie/3d/pie-3d.js.map +1 -1
- package/esm/chart/pie/pie.js +2 -4
- package/esm/chart/pie/pie.js.map +1 -1
- package/esm/chart/polar/polar-transformer.js +1 -3
- package/esm/chart/polar/polar-transformer.js.map +1 -1
- package/esm/chart/progress/circular/circular.js +2 -4
- package/esm/chart/progress/circular/circular.js.map +1 -1
- package/esm/chart/progress/linear/linear.js +2 -5
- package/esm/chart/progress/linear/linear.js.map +1 -1
- package/esm/chart/radar/radar.js +3 -5
- package/esm/chart/radar/radar.js.map +1 -1
- package/esm/chart/range-area/range-area-transformer.js +1 -3
- package/esm/chart/range-area/range-area-transformer.js.map +1 -1
- package/esm/chart/range-area/range-area.js +2 -4
- package/esm/chart/range-area/range-area.js.map +1 -1
- package/esm/chart/range-column/3d/range-column-3d-transformer.js +1 -3
- package/esm/chart/range-column/3d/range-column-3d-transformer.js.map +1 -1
- package/esm/chart/range-column/3d/range-column-3d.js +2 -4
- package/esm/chart/range-column/3d/range-column-3d.js.map +1 -1
- package/esm/chart/range-column/range-column-transformer.js +1 -3
- package/esm/chart/range-column/range-column-transformer.js.map +1 -1
- package/esm/chart/range-column/range-column.js +2 -4
- package/esm/chart/range-column/range-column.js.map +1 -1
- package/esm/chart/rose/rose.js +3 -5
- package/esm/chart/rose/rose.js.map +1 -1
- package/esm/chart/sankey/sankey.js +3 -5
- package/esm/chart/sankey/sankey.js.map +1 -1
- package/esm/chart/scatter/scatter.js +2 -4
- package/esm/chart/scatter/scatter.js.map +1 -1
- package/esm/chart/sequence/sequence-transformer.js +2 -4
- package/esm/chart/sequence/sequence-transformer.js.map +1 -1
- package/esm/chart/sequence/sequence.js +2 -5
- package/esm/chart/sequence/sequence.js.map +1 -1
- package/esm/chart/sunburst/sunburst.js +2 -4
- package/esm/chart/sunburst/sunburst.js.map +1 -1
- package/esm/chart/treemap/treemap.js +2 -4
- package/esm/chart/treemap/treemap.js.map +1 -1
- package/esm/chart/util.js +1 -3
- package/esm/chart/util.js.map +1 -1
- package/esm/chart/waterfall/waterfall.js +2 -4
- package/esm/chart/waterfall/waterfall.js.map +1 -1
- package/esm/chart/word-cloud/3d/word-cloud-3d.js +2 -4
- package/esm/chart/word-cloud/3d/word-cloud-3d.js.map +1 -1
- package/esm/chart/word-cloud/base/base.js +1 -3
- package/esm/chart/word-cloud/base/base.js.map +1 -1
- package/esm/chart/word-cloud/word-cloud.js +2 -4
- package/esm/chart/word-cloud/word-cloud.js.map +1 -1
- package/esm/compile/grammar-item.js +2 -1
- package/esm/compile/interface/compiler.d.ts +2 -0
- package/esm/compile/interface/compiler.js.map +1 -1
- package/esm/compile/mark/interface.d.ts +0 -9
- package/esm/compile/mark/interface.js +0 -9
- package/esm/compile/mark/interface.js.map +1 -1
- package/esm/component/axis/cartesian/axis.js +16 -12
- package/esm/component/axis/cartesian/axis.js.map +1 -1
- package/esm/component/axis/cartesian/util/common.js +1 -3
- package/esm/component/axis/cartesian/util/common.js.map +1 -1
- package/esm/component/axis/mixin/band-axis-mixin.js +1 -0
- package/esm/component/axis/mixin/band-axis-mixin.js.map +1 -1
- package/esm/component/axis/mixin/linear-axis-mixin.js +3 -3
- package/esm/component/axis/mixin/linear-axis-mixin.js.map +1 -1
- package/esm/component/axis/polar/axis.js +19 -10
- package/esm/component/axis/polar/axis.js.map +1 -1
- package/esm/component/crosshair/cartesian.js +7 -9
- package/esm/component/crosshair/cartesian.js.map +1 -1
- package/esm/component/crosshair/config.d.ts +1 -1
- package/esm/component/crosshair/config.js.map +1 -1
- package/esm/component/crosshair/polar.js +7 -9
- package/esm/component/crosshair/polar.js.map +1 -1
- package/esm/component/data-zoom/constant.d.ts +1 -1
- package/esm/component/data-zoom/constant.js.map +1 -1
- package/esm/component/data-zoom/data-filter-base-component.js +5 -9
- package/esm/component/data-zoom/data-filter-base-component.js.map +1 -1
- package/esm/component/data-zoom/data-zoom/data-zoom.js +2 -4
- package/esm/component/data-zoom/data-zoom/data-zoom.js.map +1 -1
- package/esm/component/data-zoom/scroll-bar/scroll-bar.js +2 -4
- package/esm/component/data-zoom/scroll-bar/scroll-bar.js.map +1 -1
- package/esm/component/data-zoom/util.js +1 -4
- package/esm/component/data-zoom/util.js.map +1 -1
- package/esm/component/label/label.js +3 -5
- package/esm/component/label/label.js.map +1 -1
- package/esm/component/label/total-label.js +3 -5
- package/esm/component/label/total-label.js.map +1 -1
- package/esm/component/label/util.js +3 -5
- package/esm/component/label/util.js.map +1 -1
- package/esm/component/legend/base-legend.d.ts +1 -1
- package/esm/component/legend/util.d.ts +2 -2
- package/esm/component/marker/base-marker.d.ts +5 -1
- package/esm/component/marker/base-marker.js.map +1 -1
- package/esm/component/marker/mark-area/mark-area.js +8 -2
- package/esm/component/marker/mark-area/mark-area.js.map +1 -1
- package/esm/component/marker/mark-line/mark-line.js +7 -1
- package/esm/component/marker/mark-line/mark-line.js.map +1 -1
- package/esm/component/marker/mark-point/mark-point.js +7 -1
- package/esm/component/marker/mark-point/mark-point.js.map +1 -1
- package/esm/component/marker/utils.js +2 -2
- package/esm/component/marker/utils.js.map +1 -1
- package/esm/component/tooltip/handler/base.js +1 -3
- package/esm/component/tooltip/handler/base.js.map +1 -1
- package/esm/component/tooltip/handler/dom/model/shape-model.js +12 -8
- package/esm/component/tooltip/handler/dom/model/shape-model.js.map +1 -1
- package/esm/component/tooltip/handler/utils/position.js +13 -15
- package/esm/component/tooltip/handler/utils/position.js.map +1 -1
- package/esm/component/util.js +1 -2
- package/esm/core/factory.js +1 -4
- package/esm/core/factory.js.map +1 -1
- package/esm/core/index.d.ts +1 -1
- package/esm/core/index.js +1 -1
- package/esm/core/index.js.map +1 -1
- package/esm/data/transforms/marker-filter.d.ts +5 -0
- package/esm/data/transforms/marker-filter.js +11 -0
- package/esm/data/transforms/marker-filter.js.map +1 -0
- package/esm/event/event-dispatcher.js +2 -1
- package/esm/event/events/dimension/util/cartesian.js +1 -3
- package/esm/event/events/dimension/util/cartesian.js.map +1 -1
- package/esm/event/index.js +1 -2
- package/esm/interaction/drill/drillable.d.ts +1 -1
- package/esm/interaction/drill/drillable.js +2 -2
- package/esm/interaction/drill/drillable.js.map +1 -1
- package/esm/interaction/zoom/zoomable.d.ts +1 -1
- package/esm/interaction/zoom/zoomable.js +10 -10
- package/esm/interaction/zoom/zoomable.js.map +1 -1
- package/esm/layout/interface.d.ts +2 -0
- package/esm/layout/interface.js.map +1 -1
- package/esm/layout/layout-item.d.ts +2 -1
- package/esm/layout/layout-item.js +2 -1
- package/esm/layout/layout-item.js.map +1 -1
- package/esm/layout/util.js +91 -77
- package/esm/layout/util.js.map +1 -1
- package/esm/mark/arc-3d.js +1 -3
- package/esm/mark/arc-3d.js.map +1 -1
- package/esm/mark/arc.js +1 -3
- package/esm/mark/arc.js.map +1 -1
- package/esm/mark/area.js +1 -3
- package/esm/mark/area.js.map +1 -1
- package/esm/mark/box-plot.js +1 -3
- package/esm/mark/box-plot.js.map +1 -1
- package/esm/mark/cell.js +1 -3
- package/esm/mark/cell.js.map +1 -1
- package/esm/mark/component.js +1 -3
- package/esm/mark/component.js.map +1 -1
- package/esm/mark/group.js +1 -3
- package/esm/mark/group.js.map +1 -1
- package/esm/mark/image.js +1 -3
- package/esm/mark/image.js.map +1 -1
- package/esm/mark/interface/type.d.ts +1 -1
- package/esm/mark/interface/type.js.map +1 -1
- package/esm/mark/label.js +1 -3
- package/esm/mark/label.js.map +1 -1
- package/esm/mark/line.js +1 -3
- package/esm/mark/line.js.map +1 -1
- package/esm/mark/link-path.js +1 -3
- package/esm/mark/link-path.js.map +1 -1
- package/esm/mark/path.js +1 -3
- package/esm/mark/path.js.map +1 -1
- package/esm/mark/polygon/polygon.js +1 -3
- package/esm/mark/polygon/polygon.js.map +1 -1
- package/esm/mark/polygon/pyramid-3d.js +1 -3
- package/esm/mark/polygon/pyramid-3d.js.map +1 -1
- package/esm/mark/progress-arc.js +1 -3
- package/esm/mark/progress-arc.js.map +1 -1
- package/esm/mark/rect-3d.js +1 -3
- package/esm/mark/rect-3d.js.map +1 -1
- package/esm/mark/rect.js +1 -3
- package/esm/mark/rect.js.map +1 -1
- package/esm/mark/ripple.js +1 -3
- package/esm/mark/ripple.js.map +1 -1
- package/esm/mark/rule.js +1 -3
- package/esm/mark/rule.js.map +1 -1
- package/esm/mark/symbol.js +2 -6
- package/esm/mark/symbol.js.map +1 -1
- package/esm/mark/text.js +1 -3
- package/esm/mark/text.js.map +1 -1
- package/esm/mark/utils/common.js +1 -3
- package/esm/mark/utils/common.js.map +1 -1
- package/esm/region/region.js +5 -9
- package/esm/region/region.js.map +1 -1
- package/esm/series/area/animation.js +2 -4
- package/esm/series/area/animation.js.map +1 -1
- package/esm/series/area/area-transformer.js +2 -4
- package/esm/series/area/area-transformer.js.map +1 -1
- package/esm/series/area/area.js +6 -8
- package/esm/series/area/area.js.map +1 -1
- package/esm/series/area/constant.js +3 -7
- package/esm/series/area/constant.js.map +1 -1
- package/esm/series/bar/animation.js +2 -4
- package/esm/series/bar/animation.js.map +1 -1
- package/esm/series/bar/bar-3d.js +3 -5
- package/esm/series/bar/bar-3d.js.map +1 -1
- package/esm/series/bar/bar-transformer.js +1 -3
- package/esm/series/bar/bar-transformer.js.map +1 -1
- package/esm/series/bar/bar.js +9 -13
- package/esm/series/bar/bar.js.map +1 -1
- package/esm/series/bar/constant.js +9 -13
- package/esm/series/bar/constant.js.map +1 -1
- package/esm/series/base/base-series.js +7 -6
- package/esm/series/base/base-series.js.map +1 -1
- package/esm/series/base/constant.js +3 -7
- package/esm/series/base/constant.js.map +1 -1
- package/esm/series/box-plot/box-plot.js +7 -9
- package/esm/series/box-plot/box-plot.js.map +1 -1
- package/esm/series/box-plot/constant.js +6 -10
- package/esm/series/box-plot/constant.js.map +1 -1
- package/esm/series/cartesian/cartesian.js +8 -11
- package/esm/series/cartesian/cartesian.js.map +1 -1
- package/esm/series/circle-packing/circle-packing.js +2 -4
- package/esm/series/circle-packing/circle-packing.js.map +1 -1
- package/esm/series/circle-packing/constant.js +3 -7
- package/esm/series/circle-packing/constant.js.map +1 -1
- package/esm/series/correlation/constant.js +12 -16
- package/esm/series/correlation/constant.js.map +1 -1
- package/esm/series/correlation/correlation-transformer.js +1 -3
- package/esm/series/correlation/correlation-transformer.js.map +1 -1
- package/esm/series/correlation/correlation.js +2 -2
- package/esm/series/correlation/correlation.js.map +1 -1
- package/esm/series/dot/constant.js +21 -25
- package/esm/series/dot/constant.js.map +1 -1
- package/esm/series/dot/dot.js +1 -3
- package/esm/series/dot/dot.js.map +1 -1
- package/esm/series/funnel/3d/funnel-3d-transformer.js +1 -3
- package/esm/series/funnel/3d/funnel-3d-transformer.js.map +1 -1
- package/esm/series/funnel/3d/funnel-3d.js +4 -6
- package/esm/series/funnel/3d/funnel-3d.js.map +1 -1
- package/esm/series/funnel/constant.js +30 -34
- package/esm/series/funnel/constant.js.map +1 -1
- package/esm/series/funnel/funnel-transformer.js +1 -3
- package/esm/series/funnel/funnel-transformer.js.map +1 -1
- package/esm/series/funnel/funnel.js +7 -11
- package/esm/series/funnel/funnel.js.map +1 -1
- package/esm/series/funnel/tooltip-helper.js +3 -5
- package/esm/series/funnel/tooltip-helper.js.map +1 -1
- package/esm/series/gauge/constant.js +15 -19
- package/esm/series/gauge/constant.js.map +1 -1
- package/esm/series/gauge/gauge-pointer.js +4 -6
- package/esm/series/gauge/gauge-pointer.js.map +1 -1
- package/esm/series/gauge/gauge-transformer.js +1 -3
- package/esm/series/gauge/gauge-transformer.js.map +1 -1
- package/esm/series/gauge/gauge.js +2 -2
- package/esm/series/gauge/gauge.js.map +1 -1
- package/esm/series/heatmap/constant.js +6 -10
- package/esm/series/heatmap/constant.js.map +1 -1
- package/esm/series/heatmap/heatmap-transformer.js +1 -3
- package/esm/series/heatmap/heatmap-transformer.js.map +1 -1
- package/esm/series/heatmap/heatmap.js +2 -2
- package/esm/series/heatmap/heatmap.js.map +1 -1
- package/esm/series/interface/type.d.ts +1 -2
- package/esm/series/interface/type.js +0 -2
- package/esm/series/interface/type.js.map +1 -1
- package/esm/series/line/animation.js +2 -4
- package/esm/series/line/animation.js.map +1 -1
- package/esm/series/line/line.js +3 -3
- package/esm/series/line/line.js.map +1 -1
- package/esm/series/link/constant.js +9 -13
- package/esm/series/link/constant.js.map +1 -1
- package/esm/series/link/link.js +1 -3
- package/esm/series/link/link.js.map +1 -1
- package/esm/series/map/constant.js +3 -7
- package/esm/series/map/constant.js.map +1 -1
- package/esm/series/map/map-transformer.js +1 -3
- package/esm/series/map/map-transformer.js.map +1 -1
- package/esm/series/map/map.js +2 -2
- package/esm/series/map/map.js.map +1 -1
- package/esm/series/mixin/constant.js +6 -10
- package/esm/series/mixin/constant.js.map +1 -1
- package/esm/series/mixin/line-mixin-transformer.js +2 -4
- package/esm/series/mixin/line-mixin-transformer.js.map +1 -1
- package/esm/series/mixin/line-mixin.js +5 -9
- package/esm/series/mixin/line-mixin.js.map +1 -1
- package/esm/series/pie/3d/pie-3d-transformer.js +1 -3
- package/esm/series/pie/3d/pie-3d-transformer.js.map +1 -1
- package/esm/series/pie/3d/pie-3d.js +3 -5
- package/esm/series/pie/3d/pie-3d.js.map +1 -1
- package/esm/series/pie/constant.js +12 -16
- package/esm/series/pie/constant.js.map +1 -1
- package/esm/series/pie/pie-transformer.js +1 -3
- package/esm/series/pie/pie-transformer.js.map +1 -1
- package/esm/series/pie/pie.js +4 -6
- package/esm/series/pie/pie.js.map +1 -1
- package/esm/series/polar/progress-like/constant.js +3 -7
- package/esm/series/polar/progress-like/constant.js.map +1 -1
- package/esm/series/progress/circular/circular.js +3 -3
- package/esm/series/progress/circular/circular.js.map +1 -1
- package/esm/series/progress/circular/constant.js +6 -10
- package/esm/series/progress/circular/constant.js.map +1 -1
- package/esm/series/progress/linear/animation.js +2 -4
- package/esm/series/progress/linear/animation.js.map +1 -1
- package/esm/series/progress/linear/constant.js +9 -13
- package/esm/series/progress/linear/constant.js.map +1 -1
- package/esm/series/progress/linear/linear.js +3 -3
- package/esm/series/progress/linear/linear.js.map +1 -1
- package/esm/series/radar/constant.js +3 -7
- package/esm/series/radar/constant.js.map +1 -1
- package/esm/series/radar/radar.js +2 -2
- package/esm/series/radar/radar.js.map +1 -1
- package/esm/series/range-area/range-area.js +2 -4
- package/esm/series/range-area/range-area.js.map +1 -1
- package/esm/series/range-area/tooltip-helper.js +1 -3
- package/esm/series/range-area/tooltip-helper.js.map +1 -1
- package/esm/series/range-column/3d/range-column-3d-transformer.js +1 -5
- package/esm/series/range-column/3d/range-column-3d-transformer.js.map +1 -1
- package/esm/series/range-column/3d/range-column-3d.js +1 -3
- package/esm/series/range-column/3d/range-column-3d.js.map +1 -1
- package/esm/series/range-column/constant.js +12 -16
- package/esm/series/range-column/constant.js.map +1 -1
- package/esm/series/range-column/interface.d.ts +2 -2
- package/esm/series/range-column/interface.js.map +1 -1
- package/esm/series/range-column/range-column-transformer.js +1 -5
- package/esm/series/range-column/range-column-transformer.js.map +1 -1
- package/esm/series/range-column/range-column.js +9 -15
- package/esm/series/range-column/range-column.js.map +1 -1
- package/esm/series/range-column/tooltip-helper.js +1 -3
- package/esm/series/range-column/tooltip-helper.js.map +1 -1
- package/esm/series/rose/constant.js +3 -7
- package/esm/series/rose/constant.js.map +1 -1
- package/esm/series/rose/rose-transformer.js +1 -3
- package/esm/series/rose/rose-transformer.js.map +1 -1
- package/esm/series/rose/rose.js +2 -2
- package/esm/series/rose/rose.js.map +1 -1
- package/esm/series/sankey/animation.js +4 -6
- package/esm/series/sankey/animation.js.map +1 -1
- package/esm/series/sankey/constant.js +6 -10
- package/esm/series/sankey/constant.js.map +1 -1
- package/esm/series/sankey/sankey.js +4 -4
- package/esm/series/sankey/sankey.js.map +1 -1
- package/esm/series/scatter/constant.js +3 -7
- package/esm/series/scatter/constant.js.map +1 -1
- package/esm/series/scatter/scatter-transformer.js +1 -3
- package/esm/series/scatter/scatter-transformer.js.map +1 -1
- package/esm/series/scatter/scatter.js +2 -2
- package/esm/series/scatter/scatter.js.map +1 -1
- package/esm/series/sunburst/constant.js +3 -7
- package/esm/series/sunburst/constant.js.map +1 -1
- package/esm/series/sunburst/sunburst.js +2 -4
- package/esm/series/sunburst/sunburst.js.map +1 -1
- package/esm/series/treemap/constant.js +9 -13
- package/esm/series/treemap/constant.js.map +1 -1
- package/esm/series/treemap/treemap-transform.js +2 -4
- package/esm/series/treemap/treemap-transform.js.map +1 -1
- package/esm/series/treemap/treemap.js +4 -6
- package/esm/series/treemap/treemap.js.map +1 -1
- package/esm/series/util/label-mark.js +4 -6
- package/esm/series/util/label-mark.js.map +1 -1
- package/esm/series/waterfall/constant.js +6 -10
- package/esm/series/waterfall/constant.js.map +1 -1
- package/esm/series/waterfall/waterfall-transformer.js +1 -3
- package/esm/series/waterfall/waterfall-transformer.js.map +1 -1
- package/esm/series/waterfall/waterfall.js +6 -8
- package/esm/series/waterfall/waterfall.js.map +1 -1
- package/esm/series/word-cloud/base.js +1 -3
- package/esm/series/word-cloud/base.js.map +1 -1
- package/esm/series/word-cloud/constant.js +6 -10
- package/esm/series/word-cloud/constant.js.map +1 -1
- package/esm/series/word-cloud/interface.d.ts +2 -11
- package/esm/series/word-cloud/interface.js +1 -8
- package/esm/series/word-cloud/interface.js.map +1 -1
- package/esm/series/word-cloud/word-cloud-3d.js +3 -4
- package/esm/series/word-cloud/word-cloud-3d.js.map +1 -1
- package/esm/theme/builtin/common/series/rangeColumn.js +2 -4
- package/esm/theme/builtin/common/series/rangeColumn.js.map +1 -1
- package/esm/typings/layout.d.ts +1 -0
- package/esm/typings/layout.js.map +1 -1
- package/esm/typings/shape.d.ts +0 -21
- package/esm/typings/shape.js +1 -14
- package/esm/typings/shape.js.map +1 -1
- package/esm/typings/space.d.ts +1 -1
- package/esm/typings/space.js.map +1 -1
- package/esm/typings/tooltip/position.d.ts +2 -2
- package/esm/typings/tooltip/position.js.map +1 -1
- package/package.json +14 -13
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/series/box-plot/box-plot.ts"],"names":[],"mappings":";;;AAEA,6CAA4E;AAI5E,+CAAgD;AAChD,4CAAqD;AACrD,sDAAyD;AAEzD,4CAAuE;AAEvE,4DAAgE;AAChE,kDAAuE;AACvE,iDAA8C;AAC9C,qDAAiD;AACjD,6DAAiE;AACjE,sDAAuE;AACvE,qDAA8D;AAC9D,qEAAuE;AACvE,6DAAwE;AACxE,iDAA6E;AAC7E,mDAAqE;AAErE,kDAAuE;AACvE,8CAAmE;AACnE,yCAA+C;AAC/C,gDAA6C;AAE7C,6CAAmD;AACnD,yCAAwD;AAExD,MAAM,oBAAoB,GAAG,CAAC,CAAC;AAC/B,MAAM,0BAA0B,GAAG,GAAG,CAAC;AACvC,MAAM,mBAAmB,GAAG,MAAM,CAAC;AACtB,QAAA,kBAAkB,GAAG,MAAM,CAAC;AAC5B,QAAA,oBAAoB,GAAG,MAAM,CAAC;AAE3C,MAAM,oBAAoB,GAAG,EAAE,CAAC;AAEhC,MAAa,aAAiE,SAAQ,2BAAkB;IAAxG;;QAEE,SAAI,GAAG,qBAAc,CAAC,OAAO,CAAC;IAwWhC,CAAC;IAnWC,WAAW;QACT,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAID,aAAa;QACX,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAGD,eAAe;QACb,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAGD,gBAAgB;QACd,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAQD,eAAe;;QACb,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,MAAM,YAAY,GAAQ,MAAA,MAAA,IAAI,CAAC,KAAK,CAAC,OAAO,0CAAE,KAAK,mCAAI,EAAE,CAAC;QAC1D,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;QACrC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;QACrC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;QACnC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;QAC3C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;QACnC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;QAC/C,IAAI,CAAC,UAAU,GAAG,MAAA,YAAY,CAAC,SAAS,mCAAI,oBAAoB,CAAC;QACjE,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC,QAAQ,CAAC;QACvC,IAAI,CAAC,WAAW,GAAG,MAAA,YAAY,CAAC,UAAU,mCAAI,mBAAmB,CAAC;QAClE,IAAI,CAAC,WAAW,GAAG,YAAY,CAAC,UAAU,CAAC;QAC3C,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC,OAAO,CAAC;QAC1C,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC,MAAM,CAAC;QAExC,IAAI,CAAC,iBAAiB;YACpB,IAAI,CAAC,WAAW,KAAK,KAAK,CAAC,CAAC,CAAC,MAAA,YAAY,CAAC,gBAAgB,mCAAI,0BAA0B,CAAC,CAAC,CAAC,SAAS,CAAC;QAEvG,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;IACjD,CAAC;IAKD,QAAQ;QACN,MAAM,WAAW,GAAG;YAClB,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe;YAC3C,oBAAoB,EAAE,IAAI,CAAC,KAAK,CAAC,oBAAoB;YACrD,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;YACvB,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc;SAC1C,CAAC;QAEF,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE;YAC/D,YAAY,EAAE,IAAI;YAClB,WAAW;SACZ,CAAiB,CAAC;QACnB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE;YAC/D,WAAW;YACX,GAAG,EAAE,6BAAkB;YACvB,QAAQ,EAAE,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE;YAC7C,aAAa,EAAE,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE;SACpD,CAAgB,CAAC;IACpB,CAAC;IAED,aAAa;;QACX,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC;QACtC,IAAI,WAAW,EAAE;YACf,MAAM,mBAAmB,GAAG;gBAC1B,SAAS,EAAE,IAAI,CAAC,UAAU;gBAC1B,SAAS,EAAE,IAAI,CAAC,UAAU;gBAC1B,UAAU,EAAE,IAAI,CAAC,WAAW;gBAC5B,IAAI,EAAE,MAAA,IAAI,CAAC,aAAa,mCAAI,CAAC,IAAI,CAAC,WAAW,KAAK,MAAM,CAAC,CAAC,CAAC,0BAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACzG,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;gBACzC,MAAM,EAAE,MAAA,IAAI,CAAC,YAAY,mCAAI,CAAC,IAAI,CAAC,WAAW,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,4BAAoB,CAAC;aAC7G,CAAC;YAEF,MAAM,iBAAiB,GACrB,IAAI,CAAC,UAAU,KAAK,iBAAS,CAAC,QAAQ;gBACpC,CAAC,+BACG,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,IAC/B,mBAAmB,KACtB,QAAQ,EAAE,GAAG,EAAE,WAAC,OAAA,MAAA,IAAI,CAAC,SAAS,mCAAI,IAAI,CAAC,aAAa,EAAE,CAAA,EAAA,EACtD,SAAS,EAAE,GAAG,EAAE,WAAC,OAAA,MAAA,IAAI,CAAC,WAAW,mCAAI,IAAI,CAAC,aAAa,EAAE,CAAA,EAAA,EACzD,SAAS,EAAE,GAAG,EAAE,WAAC,OAAA,MAAA,IAAI,CAAC,SAAS,mCAAI,IAAI,CAAC,aAAa,EAAE,CAAA,EAAA,EACvD,WAAW,EAAE,GAAG,EAAE,WAAC,OAAA,MAAA,IAAI,CAAC,WAAW,mCAAI,IAAI,CAAC,aAAa,EAAE,CAAA,EAAA,IAE/D,CAAC,+BACG,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,IAC/B,mBAAmB,KACtB,SAAS,EAAE,GAAG,EAAE,WAAC,OAAA,MAAA,IAAI,CAAC,SAAS,mCAAI,IAAI,CAAC,aAAa,EAAE,CAAA,EAAA,EACvD,UAAU,EAAE,GAAG,EAAE,WAAC,OAAA,MAAA,IAAI,CAAC,WAAW,mCAAI,IAAI,CAAC,aAAa,EAAE,CAAA,EAAA,EAC1D,UAAU,EAAE,GAAG,EAAE,WAAC,OAAA,MAAA,IAAI,CAAC,SAAS,mCAAI,IAAI,CAAC,aAAa,EAAE,CAAA,EAAA,EACxD,YAAY,EAAE,GAAG,EAAE,WAAC,OAAA,MAAA,IAAI,CAAC,WAAW,mCAAI,IAAI,CAAC,aAAa,EAAE,CAAA,EAAA,GAC7D,CAAC;YAER,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,iBAAiB,EAAE,4BAAgB,CAAC,YAAY,EAAE,yBAAc,CAAC,MAAM,CAAC,CAAC;YAExG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;SACzC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC;QACtC,IAAI,WAAW,EAAE;YACf,IAAI,CAAC,YAAY,CACf,WAAW,EACX;gBACE,IAAI,EAAE,MAAA,MAAA,IAAI,CAAC,cAAc,0CAAE,IAAI,mCAAI,IAAI,CAAC,iBAAiB,EAAE;gBAC3D,IAAI,EAAE,IAAA,iBAAQ,EAAC,MAAA,IAAI,CAAC,cAAc,0CAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,oBAAoB;gBAC3F,UAAU,EAAE,QAAQ;aACrB,EACD,4BAAgB,CAAC,YAAY,EAC7B,yBAAc,CAAC,MAAM,CACtB,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;SACzC;IACH,CAAC;IAED,oBAAoB;;QAClB,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC;QACtC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,KAAK,iBAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC;QAClG,IAAI,WAAW,IAAI,UAAU,EAAE;YAC7B,MAAM,EAAE,cAAc,EAAE,GAAG,UAAU,CAAC;YACtC,MAAM,KAAK,GAAG,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,QAAQ,2DAAG,CAAC,CAAC,CAAC;YACxC,IAAI,CAAC,YAAY,CACf,WAAW,EACX;gBACE,GAAG,EAAE,CAAC,KAAY,EAAE,EAAE,CACpB,IAAA,yBAAiB,EACf,cAAc,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE;oBACjE,YAAY,EAAE,IAAI,CAAC,aAAa;iBACjC,CAAC,EACF,KAAK,CACN;gBACH,EAAE,EAAE,CAAC,KAAY,EAAE,EAAE,CACnB,IAAA,yBAAiB,EACf,cAAc,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE;oBAChE,YAAY,EAAE,IAAI,CAAC,aAAa;iBACjC,CAAC,EACF,KAAK,CACN;gBACH,MAAM,EAAE,CAAC,KAAY,EAAE,EAAE,CACvB,IAAA,yBAAiB,EACf,cAAc,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,EAAE;oBACpE,YAAY,EAAE,IAAI,CAAC,aAAa;iBACjC,CAAC,EACF,KAAK,CACN;gBACH,EAAE,EAAE,CAAC,KAAY,EAAE,EAAE,CACnB,IAAA,yBAAiB,EACf,cAAc,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE;oBAChE,YAAY,EAAE,IAAI,CAAC,aAAa;iBACjC,CAAC,EACF,KAAK,CACN;gBACH,GAAG,EAAE,CAAC,KAAY,EAAE,EAAE,CACpB,IAAA,yBAAiB,EACf,cAAc,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE;oBACjE,YAAY,EAAE,IAAI,CAAC,aAAa;iBACjC,CAAC,EACF,KAAK,CACN;aACJ,EACD,4BAAgB,CAAC,YAAY,EAC7B,yBAAc,CAAC,MAAM,CACtB,CAAC;SACH;QACD,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC;QACtC,IAAI,WAAW,IAAI,UAAU,EAAE;YAC7B,MAAM,EAAE,cAAc,EAAE,GAAG,UAAU,CAAC;YACtC,MAAM,KAAK,GAAG,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,QAAQ,2DAAG,CAAC,CAAC,CAAC;YACxC,MAAM,0BAA0B,GAC9B,IAAI,CAAC,UAAU,KAAK,iBAAS,CAAC,QAAQ;gBACpC,CAAC,CAAC;oBACE,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;oBAClC,CAAC,EAAE,CAAC,KAAY,EAAE,EAAE,CAClB,IAAA,yBAAiB,EACf,cAAc,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,uCAA4B,CAAC,EAAE;wBAC/E,YAAY,EAAE,IAAI,CAAC,aAAa;qBACjC,CAAC,EACF,KAAK,CACN;iBACJ;gBACH,CAAC,CAAC;oBACE,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;oBAClC,CAAC,EAAE,CAAC,KAAY,EAAE,EAAE,CAClB,IAAA,yBAAiB,EACf,cAAc,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,uCAA4B,CAAC,EAAE;wBAC/E,YAAY,EAAE,IAAI,CAAC,aAAa;qBACjC,CAAC,EACF,KAAK,CACN;iBACJ,CAAC;YACR,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,0BAA0B,EAAE,4BAAgB,CAAC,YAAY,EAAE,yBAAc,CAAC,MAAM,CAAC,CAAC;SAClH;IACH,CAAC;IAED,QAAQ;QACN,KAAK,CAAC,QAAQ,EAAE,CAAC;QACjB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACf,OAAO;SACR;QAED,IAAA,2CAAgC,EAAC,IAAI,CAAC,QAAQ,EAAE,iBAAiB,EAAE,0BAAe,CAAC,CAAC;QACpF,IAAA,2CAAgC,EAAC,IAAI,CAAC,QAAQ,EAAE,mBAAmB,EAAE,gCAAiB,CAAC,CAAC;QAExF,MAAM,eAAe,GAAG,IAAI,mBAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,IAAI,YAAY,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QACtG,eAAe,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAAE;YAC1C,IAAI,EAAE,UAAU;SACjB,CAAC,CAAC;QACH,eAAe,CAAC,IAAI,GAAG,GAAG,iBAAM,WAAW,IAAI,CAAC,EAAE,cAAc,CAAC;QACjE,eAAe,CAAC,SAAS,CAAC;YACxB,IAAI,EAAE,iBAAiB;YACvB,OAAO,EAAE;gBACP,cAAc,EAAE,IAAI,CAAC,UAAU,KAAK,iBAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO;gBACpF,aAAa,EAAE,IAAI,CAAC,cAAc;aACnC;SACF,CAAC,CAAC;QAEH,eAAe,CAAC,SAAS,CACvB;YACE,IAAI,EAAE,mBAAmB;YACzB,OAAO,EAAE;gBACP,UAAU,EAAE,qBAAU,CAAC,IAAI,CAAC,IAAI,CAAC;gBACjC,IAAI,EAAE,qBAAU;aACjB;SACF,EACD,KAAK,CACN,CAAC;QAEF,IAAI,CAAC,gBAAgB,GAAG,IAAI,wBAAU,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;IACxE,CAAC;IAED,IAAI,CAAC,MAAwB;QAC3B,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAEnB,IAAI,CAAC,oBAAoB,EAAE,CAAC;IAC9B,CAAC;IAEO,aAAa;QACnB,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,OAAO,IAAI,CAAC,aAAa,CAAC;SAC3B;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,UAAU,KAAK,iBAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC;QACtG,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,KAAK,iBAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;QAEpF,MAAM,cAAc,GAAG,cAAc,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACtE,MAAM,YAAY,GAAG,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC;QACpD,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;QAElC,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,WAAW,CAAC,GAAQ;QAClB,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAEvB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;IAC5B,CAAC;IAEO,kBAAkB,CAAC,SAAc,EAAE;QAEzC,MAAM,SAAS,GAAG,IAAA,cAAK,EAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QACpC,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACjE,IAAI,SAAS,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,SAAS,EAAE;gBAC3D,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,KAAK,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,mBAAmB,CAAC;aAC9F;iBAAM,IAAI,SAAS,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,UAAU,EAAE;gBACnE,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,KAAK,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,oBAAoB,CAAC;aAChG;QACH,CAAC,CAAC,CAAC;QACH,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,aAAa;;QACX,MAAM,eAAe,GAAG,IAAA,+BAAuB,EAAC,IAAI,CAAC,CAAC;QAEtD,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,MAAM,gBAAgB,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAA,iBAAO,CAAC,iBAAiB,CAAC,YAAY,CAAC,2CAAI,CAAC,CAAC;YAC9F,MAAM,SAAS,GAAG,IAAI,CAAC,kBAAkB,CACvC,IAAA,2BAAmB,EAAC,yBAAkB,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,qBAAqB,CAAC,CACxF,CAAC;YACF,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,IAAA,uBAAe,EAAC,gBAAgB,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC,CAAC;SACrG;QAED,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,MAAM,wBAAwB,GAAG;gBAC/B,MAAM,EAAE,MAAC,IAAI,CAAC,KAAK,CAAC,eAA4C,0CAAE,MAAM;gBACxE,SAAS,EAAE,MAAC,IAAI,CAAC,KAAK,CAAC,kBAA+C,0CAAE,MAAM;gBAC9E,KAAK,EAAE,MAAC,IAAI,CAAC,KAAK,CAAC,cAA2C,0CAAE,MAAM;gBACtE,IAAI,EAAE,MAAC,IAAI,CAAC,KAAK,CAAC,aAA0C,0CAAE,MAAM;gBACpE,MAAM,EAAE,MAAC,IAAI,CAAC,KAAK,CAAC,eAA4C,0CAAE,MAAM;aACzE,CAAC;YACF,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAClC,IAAA,uBAAe,EAAC,MAAA,iBAAO,CAAC,iBAAiB,CAAC,YAAY,CAAC,2CAAI,EAAE,wBAAwB,EAAE,eAAe,CAAC,CACxG,CAAC;SACH;IACH,CAAC;IAES,WAAW;QACnB,IAAI,CAAC,cAAc,GAAG,IAAI,2CAA0B,CAAC,IAAI,CAAC,CAAC;QAC3D,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACtF,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACxF,CAAC;IAED,kBAAkB;QAChB,MAAM,MAAM,GAAG,KAAK,CAAC,kBAAkB,EAAE,CAAC;QAC1C,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,CAAC,cAAc,CAAC,CAAC;QACtE,IAAI,aAAa,EAAE;YACjB,aAAa,CAAC,UAAU,GAAG,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;SACvD;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,aAAa,CAAC,GAAyB;QAErC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QACzB,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC;IACrC,CAAC;IAED,mBAAmB;QACjB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,cAAc;QACZ,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC7B,CAAC;;AAzWH,sCA0WC;AAzWiB,kBAAI,GAAW,qBAAc,CAAC,OAAO,CAAC;AAGtC,kBAAI,GAAkB,4BAAiB,CAAC;AAwWnD,MAAM,qBAAqB,GAAG,GAAG,EAAE;IACxC,IAAA,8BAAmB,GAAE,CAAC;IACtB,IAAA,2BAAkB,GAAE,CAAC;IACrB,IAAA,oCAA2B,GAAE,CAAC;IAC9B,iBAAO,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;AAC5D,CAAC,CAAC;AALW,QAAA,qBAAqB,yBAKhC","file":"box-plot.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\nimport type { ISymbolMark } from '../../mark/symbol';\nimport { AttributeLevel, DEFAULT_DATA_INDEX, PREFIX } from '../../constant';\nimport type { IBoxPlotMark } from '../../mark/box-plot';\nimport type { IModelEvaluateOption, IModelInitOption } from '../../model/interface';\nimport type { BoxPlotShaftShape, IOutlierMarkSpec, Maybe, Datum } from '../../typings';\nimport { Direction } from '../../typings/space';\nimport { valueInScaleRange } from '../../util/scale';\nimport { CartesianSeries } from '../cartesian/cartesian';\nimport type { SeriesMarkMap } from '../interface';\nimport { SeriesMarkNameEnum, SeriesTypeEnum } from '../interface/type';\nimport type { IBoxPlotSeriesSpec, IBoxPlotSeriesTheme } from './interface';\nimport { STATE_VALUE_ENUM } from '../../compile/mark/interface';\nimport { registerDataSetInstanceTransform } from '../../data/register';\nimport { DataView } from '@visactor/vdataset';\nimport { SeriesData } from '../base/series-data';\nimport { foldOutlierData } from '../../data/transforms/box-plot';\nimport { BOX_PLOT_OUTLIER_VALUE_FIELD } from '../../constant/box-plot';\nimport { BoxPlotSeriesTooltipHelper } from './tooltip-helper';\nimport { addVChartProperty } from '../../data/transforms/add-property';\nimport { addDataKey, initKeyMap } from '../../data/transforms/data-key';\nimport { animationConfig, userAnimationConfig } from '../../animation/utils';\nimport { registerScaleInOutAnimation } from '../../animation/config';\nimport type { IMarkAnimateSpec } from '../../animation/spec';\nimport { BoxPlotMark, registerBoxPlotMark } from '../../mark/box-plot';\nimport { SymbolMark, registerSymbolMark } from '../../mark/symbol';\nimport { boxPlotSeriesMark } from './constant';\nimport { Factory } from '../../core/factory';\nimport type { IMark } from '../../mark/interface';\nimport { merge, isNumber } from '@visactor/vutils';\nimport { getGroupAnimationParams } from '../util/utils';\n\nconst DEFAULT_STROKE_WIDTH = 2;\nconst DEFAULT_SHAFT_FILL_OPACITY = 0.5;\nconst DEFAULT_SHAFT_SHAPE = 'line';\nexport const DEFAULT_FILL_COLOR = '#FFF';\nexport const DEFAULT_STROKE_COLOR = '#000';\n\nconst DEFAULT_OUTLIER_SIZE = 10;\n\nexport class BoxPlotSeries<T extends IBoxPlotSeriesSpec = IBoxPlotSeriesSpec> extends CartesianSeries<T> {\n static readonly type: string = SeriesTypeEnum.boxPlot;\n type = SeriesTypeEnum.boxPlot;\n\n static readonly mark: SeriesMarkMap = boxPlotSeriesMark;\n\n protected _minField: string;\n getMinField() {\n return this._minField;\n }\n protected _maxField: string;\n getMaxField() {\n return this._maxField;\n }\n protected _q1Field: string;\n getQ1Field() {\n return this._q1Field;\n }\n protected _medianField: string;\n getMedianField() {\n return this._medianField;\n }\n protected _q3Field: string;\n getQ3Field() {\n return this._q3Field;\n }\n protected _outliersField: string;\n getOutliersField() {\n return this._outliersField;\n }\n protected _lineWidth: number;\n protected _boxWidth: number;\n protected _shaftShape: BoxPlotShaftShape;\n getShaftShape() {\n return this._shaftShape;\n }\n protected _shaftWidth: number;\n protected _boxFillColor: string;\n getBoxFillColor() {\n return this._boxFillColor;\n }\n protected _strokeColor: string;\n getStrokeColor() {\n return this._strokeColor;\n }\n protected _shaftFillOpacity: number;\n protected _outliersStyle: IOutlierMarkSpec;\n getOutliersStyle() {\n return this._outliersStyle;\n }\n protected _outlierDataView: SeriesData;\n\n private _autoBoxWidth: number;\n\n /**\n * @override\n */\n setAttrFromSpec() {\n super.setAttrFromSpec();\n const boxPlotStyle: any = this._spec.boxPlot?.style ?? {};\n this._minField = this._spec.minField;\n this._maxField = this._spec.maxField;\n this._q1Field = this._spec.q1Field;\n this._medianField = this._spec.medianField;\n this._q3Field = this._spec.q3Field;\n this._outliersField = this._spec.outliersField;\n this._lineWidth = boxPlotStyle.lineWidth ?? DEFAULT_STROKE_WIDTH;\n this._boxWidth = boxPlotStyle.boxWidth;\n this._shaftShape = boxPlotStyle.shaftShape ?? DEFAULT_SHAFT_SHAPE;\n this._shaftWidth = boxPlotStyle.shaftWidth;\n this._boxFillColor = boxPlotStyle.boxFill;\n this._strokeColor = boxPlotStyle.stroke;\n\n this._shaftFillOpacity =\n this._shaftShape === 'bar' ? boxPlotStyle.shaftFillOpacity ?? DEFAULT_SHAFT_FILL_OPACITY : undefined;\n\n this._outliersStyle = this._spec.outliersStyle;\n }\n\n private _boxPlotMark?: IBoxPlotMark;\n private _outlierMark?: ISymbolMark;\n\n initMark(): void {\n const progressive = {\n progressiveStep: this._spec.progressiveStep,\n progressiveThreshold: this._spec.progressiveThreshold,\n large: this._spec.large,\n largeThreshold: this._spec.largeThreshold\n };\n\n this._boxPlotMark = this._createMark(BoxPlotSeries.mark.boxPlot, {\n isSeriesMark: true,\n progressive\n }) as IBoxPlotMark;\n this._outlierMark = this._createMark(BoxPlotSeries.mark.outlier, {\n progressive,\n key: DEFAULT_DATA_INDEX,\n dataView: this._outlierDataView.getDataView(),\n dataProductId: this._outlierDataView.getProductId()\n }) as ISymbolMark;\n }\n\n initMarkStyle(): void {\n const boxPlotMark = this._boxPlotMark;\n if (boxPlotMark) {\n const commonBoxplotStyles = {\n direction: this._direction,\n lineWidth: this._lineWidth,\n shaftShape: this._shaftShape,\n fill: this._boxFillColor ?? (this._shaftShape === 'line' ? DEFAULT_FILL_COLOR : this.getColorAttribute()),\n minMaxFillOpacity: this._shaftFillOpacity,\n stroke: this._strokeColor ?? (this._shaftShape === 'line' ? this.getColorAttribute() : DEFAULT_STROKE_COLOR)\n };\n\n const boxPlotMarkStyles =\n this._direction === Direction.vertical\n ? {\n x: this.dataToPositionX.bind(this),\n ...commonBoxplotStyles,\n boxWidth: () => this._boxWidth ?? this._getMarkWidth(),\n ruleWidth: () => this._shaftWidth ?? this._getMarkWidth(),\n q1q3Width: () => this._boxWidth ?? this._getMarkWidth(),\n minMaxWidth: () => this._shaftWidth ?? this._getMarkWidth()\n }\n : {\n y: this.dataToPositionY.bind(this),\n ...commonBoxplotStyles,\n boxHeight: () => this._boxWidth ?? this._getMarkWidth(),\n ruleHeight: () => this._shaftWidth ?? this._getMarkWidth(),\n q1q3Height: () => this._boxWidth ?? this._getMarkWidth(),\n minMaxHeight: () => this._shaftWidth ?? this._getMarkWidth()\n };\n\n this.setMarkStyle(boxPlotMark, boxPlotMarkStyles, STATE_VALUE_ENUM.STATE_NORMAL, AttributeLevel.Series);\n\n this._trigger.registerMark(boxPlotMark);\n }\n\n const outlierMark = this._outlierMark;\n if (outlierMark) {\n this.setMarkStyle(\n outlierMark,\n {\n fill: this._outliersStyle?.fill ?? this.getColorAttribute(),\n size: isNumber(this._outliersStyle?.size) ? this._outliersStyle.size : DEFAULT_OUTLIER_SIZE,\n symbolType: 'circle'\n },\n STATE_VALUE_ENUM.STATE_NORMAL,\n AttributeLevel.Series\n );\n this._trigger.registerMark(outlierMark);\n }\n }\n\n initBoxPlotMarkStyle(): void {\n const boxPlotMark = this._boxPlotMark;\n const axisHelper = this._direction === Direction.vertical ? this._yAxisHelper : this._xAxisHelper;\n if (boxPlotMark && axisHelper) {\n const { dataToPosition } = axisHelper;\n const scale = axisHelper?.getScale?.(0);\n this.setMarkStyle(\n boxPlotMark,\n {\n min: (datum: Datum) =>\n valueInScaleRange(\n dataToPosition(this.getDatumPositionValues(datum, this._minField), {\n bandPosition: this._bandPosition\n }),\n scale\n ),\n q1: (datum: Datum) =>\n valueInScaleRange(\n dataToPosition(this.getDatumPositionValues(datum, this._q1Field), {\n bandPosition: this._bandPosition\n }),\n scale\n ),\n median: (datum: Datum) =>\n valueInScaleRange(\n dataToPosition(this.getDatumPositionValues(datum, this._medianField), {\n bandPosition: this._bandPosition\n }),\n scale\n ),\n q3: (datum: Datum) =>\n valueInScaleRange(\n dataToPosition(this.getDatumPositionValues(datum, this._q3Field), {\n bandPosition: this._bandPosition\n }),\n scale\n ),\n max: (datum: Datum) =>\n valueInScaleRange(\n dataToPosition(this.getDatumPositionValues(datum, this._maxField), {\n bandPosition: this._bandPosition\n }),\n scale\n )\n },\n STATE_VALUE_ENUM.STATE_NORMAL,\n AttributeLevel.Series\n );\n }\n const outlierMark = this._outlierMark;\n if (outlierMark && axisHelper) {\n const { dataToPosition } = axisHelper;\n const scale = axisHelper?.getScale?.(0);\n const outlierMarkPositionChannel =\n this._direction === Direction.vertical\n ? {\n x: this.dataToPositionX.bind(this),\n y: (datum: Datum) =>\n valueInScaleRange(\n dataToPosition(this.getDatumPositionValues(datum, BOX_PLOT_OUTLIER_VALUE_FIELD), {\n bandPosition: this._bandPosition\n }),\n scale\n )\n }\n : {\n y: this.dataToPositionY.bind(this),\n x: (datum: Datum) =>\n valueInScaleRange(\n dataToPosition(this.getDatumPositionValues(datum, BOX_PLOT_OUTLIER_VALUE_FIELD), {\n bandPosition: this._bandPosition\n }),\n scale\n )\n };\n this.setMarkStyle(outlierMark, outlierMarkPositionChannel, STATE_VALUE_ENUM.STATE_NORMAL, AttributeLevel.Series);\n }\n }\n\n initData(): void {\n super.initData();\n if (!this._data) {\n return;\n }\n\n registerDataSetInstanceTransform(this._dataSet, 'foldOutlierData', foldOutlierData);\n registerDataSetInstanceTransform(this._dataSet, 'addVChartProperty', addVChartProperty);\n\n const outlierDataView = new DataView(this._dataSet, { name: `${this.type}_outlier_${this.id}_data` });\n outlierDataView.parse([this.getViewData()], {\n type: 'dataview'\n });\n outlierDataView.name = `${PREFIX}_series_${this.id}_outlierData`;\n outlierDataView.transform({\n type: 'foldOutlierData',\n options: {\n dimensionField: this._direction === Direction.vertical ? this._fieldX : this._fieldY,\n outliersField: this._outliersField\n }\n });\n\n outlierDataView.transform(\n {\n type: 'addVChartProperty',\n options: {\n beforeCall: initKeyMap.bind(this),\n call: addDataKey\n }\n },\n false\n );\n\n this._outlierDataView = new SeriesData(this._option, outlierDataView);\n }\n\n init(option: IModelInitOption): void {\n super.init(option);\n //init在axis初始化之后才被执行,此时axisHelper不为空\n this.initBoxPlotMarkStyle();\n }\n\n private _getMarkWidth() {\n if (this._autoBoxWidth) {\n return this._autoBoxWidth;\n }\n //获取自适应的图元宽度\n const bandAxisHelper = this._direction === Direction.vertical ? this._xAxisHelper : this._yAxisHelper;\n const xField = this._direction === Direction.vertical ? this._fieldX : this._fieldY;\n\n const innerBandWidth = bandAxisHelper.getBandwidth(xField.length - 1);\n const autoBoxWidth = innerBandWidth / xField.length;\n this._autoBoxWidth = autoBoxWidth;\n\n return this._autoBoxWidth;\n }\n\n onLayoutEnd(ctx: any) {\n super.onLayoutEnd(ctx);\n //每次布局结束,清除自适应宽度缓存\n this._autoBoxWidth = null;\n }\n\n private _initAnimationSpec(config: any = {}) {\n //将spec中的animation的type替换为箱型图的type\n const newConfig = merge({}, config);\n ['appear', 'enter', 'update', 'exit', 'disappear'].forEach(state => {\n if (newConfig[state] && newConfig[state].type === 'scaleIn') {\n newConfig[state].type = this._shaftShape === 'line' ? 'boxplotScaleIn' : 'barBoxplotScaleIn';\n } else if (newConfig[state] && newConfig[state].type === 'scaleOut') {\n newConfig[state].type = this._shaftShape === 'line' ? 'boxplotScaleOut' : 'barBoxplotScaleOut';\n }\n });\n return newConfig;\n }\n\n initAnimation() {\n const animationParams = getGroupAnimationParams(this);\n\n if (this._boxPlotMark) {\n const newDefaultConfig = this._initAnimationSpec(Factory.getAnimationInKey('scaleInOut')?.());\n const newConfig = this._initAnimationSpec(\n userAnimationConfig(SeriesMarkNameEnum.boxPlot, this._spec, this._markAttributeContext)\n );\n this._boxPlotMark.setAnimationConfig(animationConfig(newDefaultConfig, newConfig, animationParams));\n }\n\n if (this._outlierMark) {\n const outlierMarkUserAnimation = {\n appear: (this._spec.animationAppear as IMarkAnimateSpec<string>)?.symbol,\n disappear: (this._spec.animationDisappear as IMarkAnimateSpec<string>)?.symbol,\n enter: (this._spec.animationEnter as IMarkAnimateSpec<string>)?.symbol,\n exit: (this._spec.animationExit as IMarkAnimateSpec<string>)?.symbol,\n update: (this._spec.animationUpdate as IMarkAnimateSpec<string>)?.symbol\n };\n this._outlierMark.setAnimationConfig(\n animationConfig(Factory.getAnimationInKey('scaleInOut')?.(), outlierMarkUserAnimation, animationParams)\n );\n }\n }\n\n protected initTooltip() {\n this._tooltipHelper = new BoxPlotSeriesTooltipHelper(this);\n this._boxPlotMark && this._tooltipHelper.activeTriggerSet.mark.add(this._boxPlotMark);\n this._outlierMark && this._tooltipHelper.activeTriggerSet.mark.add(this._outlierMark);\n }\n\n getStatisticFields() {\n const fields = super.getStatisticFields();\n const outliersField = fields.find(f => f.key === this._outliersField);\n if (outliersField) {\n outliersField.operations = ['array-min', 'array-max'];\n }\n return fields;\n }\n\n onEvaluateEnd(ctx: IModelEvaluateOption): void {\n //初次编译时,会传入空数据;待所有计算完成后,需要重新执行updateData更新数据\n super.onEvaluateEnd(ctx);\n this._outlierDataView.updateData();\n }\n\n getDefaultShapeType(): string {\n return 'square';\n }\n\n getActiveMarks(): IMark[] {\n return [this._boxPlotMark];\n }\n}\n\nexport const registerBoxplotSeries = () => {\n registerBoxPlotMark();\n registerSymbolMark();\n registerScaleInOutAnimation();\n Factory.registerSeries(BoxPlotSeries.type, BoxPlotSeries);\n};\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/series/box-plot/box-plot.ts"],"names":[],"mappings":";;;AAEA,6CAA4E;AAK5E,4CAAqD;AACrD,sDAAyD;AAEzD,4CAAuE;AAEvE,4DAAgE;AAChE,kDAAuE;AACvE,iDAA8C;AAC9C,qDAAiD;AACjD,6DAAiE;AACjE,sDAAuE;AACvE,qDAA8D;AAC9D,qEAAuE;AACvE,6DAAwE;AACxE,iDAA6E;AAC7E,mDAAqE;AAErE,kDAAuE;AACvE,8CAAmE;AACnE,yCAA+C;AAC/C,gDAA6C;AAE7C,6CAAmD;AACnD,yCAAwD;AAExD,MAAM,oBAAoB,GAAG,CAAC,CAAC;AAC/B,MAAM,0BAA0B,GAAG,GAAG,CAAC;AACvC,MAAM,mBAAmB,GAAG,MAAM,CAAC;AACtB,QAAA,kBAAkB,GAAG,MAAM,CAAC;AAC5B,QAAA,oBAAoB,GAAG,MAAM,CAAC;AAE3C,MAAM,oBAAoB,GAAG,EAAE,CAAC;AAEhC,MAAa,aAAiE,SAAQ,2BAAkB;IAAxG;;QAEE,SAAI,GAAG,qBAAc,CAAC,OAAO,CAAC;IAwWhC,CAAC;IAnWC,WAAW;QACT,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,WAAW;QACT,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAID,aAAa;QACX,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAGD,eAAe;QACb,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAGD,gBAAgB;QACd,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAQD,eAAe;;QACb,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,MAAM,YAAY,GAAQ,MAAA,MAAA,IAAI,CAAC,KAAK,CAAC,OAAO,0CAAE,KAAK,mCAAI,EAAE,CAAC;QAC1D,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;QACrC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;QACrC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;QACnC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;QAC3C,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;QACnC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;QAC/C,IAAI,CAAC,UAAU,GAAG,MAAA,YAAY,CAAC,SAAS,mCAAI,oBAAoB,CAAC;QACjE,IAAI,CAAC,SAAS,GAAG,YAAY,CAAC,QAAQ,CAAC;QACvC,IAAI,CAAC,WAAW,GAAG,MAAA,YAAY,CAAC,UAAU,mCAAI,mBAAmB,CAAC;QAClE,IAAI,CAAC,WAAW,GAAG,YAAY,CAAC,UAAU,CAAC;QAC3C,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC,OAAO,CAAC;QAC1C,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC,MAAM,CAAC;QAExC,IAAI,CAAC,iBAAiB;YACpB,IAAI,CAAC,WAAW,KAAK,KAAK,CAAC,CAAC,CAAC,MAAA,YAAY,CAAC,gBAAgB,mCAAI,0BAA0B,CAAC,CAAC,CAAC,SAAS,CAAC;QAEvG,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;IACjD,CAAC;IAKD,QAAQ;QACN,MAAM,WAAW,GAAG;YAClB,eAAe,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe;YAC3C,oBAAoB,EAAE,IAAI,CAAC,KAAK,CAAC,oBAAoB;YACrD,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;YACvB,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc;SAC1C,CAAC;QAEF,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE;YAC/D,YAAY,EAAE,IAAI;YAClB,WAAW;SACZ,CAAiB,CAAC;QACnB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE;YAC/D,WAAW;YACX,GAAG,EAAE,6BAAkB;YACvB,QAAQ,EAAE,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE;YAC7C,aAAa,EAAE,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE;SACpD,CAAgB,CAAC;IACpB,CAAC;IAED,aAAa;;QACX,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC;QACtC,IAAI,WAAW,EAAE;YACf,MAAM,mBAAmB,GAAG;gBAC1B,SAAS,EAAE,IAAI,CAAC,UAAU;gBAC1B,SAAS,EAAE,IAAI,CAAC,UAAU;gBAC1B,UAAU,EAAE,IAAI,CAAC,WAAW;gBAC5B,IAAI,EAAE,MAAA,IAAI,CAAC,aAAa,mCAAI,CAAC,IAAI,CAAC,WAAW,KAAK,MAAM,CAAC,CAAC,CAAC,0BAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACzG,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;gBACzC,MAAM,EAAE,MAAA,IAAI,CAAC,YAAY,mCAAI,CAAC,IAAI,CAAC,WAAW,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,4BAAoB,CAAC;aAC7G,CAAC;YAEF,MAAM,iBAAiB,GACrB,IAAI,CAAC,UAAU,eAAuB;gBACpC,CAAC,+BACG,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,IAC/B,mBAAmB,KACtB,QAAQ,EAAE,GAAG,EAAE,WAAC,OAAA,MAAA,IAAI,CAAC,SAAS,mCAAI,IAAI,CAAC,aAAa,EAAE,CAAA,EAAA,EACtD,SAAS,EAAE,GAAG,EAAE,WAAC,OAAA,MAAA,IAAI,CAAC,WAAW,mCAAI,IAAI,CAAC,aAAa,EAAE,CAAA,EAAA,EACzD,SAAS,EAAE,GAAG,EAAE,WAAC,OAAA,MAAA,IAAI,CAAC,SAAS,mCAAI,IAAI,CAAC,aAAa,EAAE,CAAA,EAAA,EACvD,WAAW,EAAE,GAAG,EAAE,WAAC,OAAA,MAAA,IAAI,CAAC,WAAW,mCAAI,IAAI,CAAC,aAAa,EAAE,CAAA,EAAA,IAE/D,CAAC,+BACG,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,IAC/B,mBAAmB,KACtB,SAAS,EAAE,GAAG,EAAE,WAAC,OAAA,MAAA,IAAI,CAAC,SAAS,mCAAI,IAAI,CAAC,aAAa,EAAE,CAAA,EAAA,EACvD,UAAU,EAAE,GAAG,EAAE,WAAC,OAAA,MAAA,IAAI,CAAC,WAAW,mCAAI,IAAI,CAAC,aAAa,EAAE,CAAA,EAAA,EAC1D,UAAU,EAAE,GAAG,EAAE,WAAC,OAAA,MAAA,IAAI,CAAC,SAAS,mCAAI,IAAI,CAAC,aAAa,EAAE,CAAA,EAAA,EACxD,YAAY,EAAE,GAAG,EAAE,WAAC,OAAA,MAAA,IAAI,CAAC,WAAW,mCAAI,IAAI,CAAC,aAAa,EAAE,CAAA,EAAA,GAC7D,CAAC;YAER,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,iBAAiB,EAAE,4BAAgB,CAAC,YAAY,EAAE,yBAAc,CAAC,MAAM,CAAC,CAAC;YAExG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;SACzC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC;QACtC,IAAI,WAAW,EAAE;YACf,IAAI,CAAC,YAAY,CACf,WAAW,EACX;gBACE,IAAI,EAAE,MAAA,MAAA,IAAI,CAAC,cAAc,0CAAE,IAAI,mCAAI,IAAI,CAAC,iBAAiB,EAAE;gBAC3D,IAAI,EAAE,IAAA,iBAAQ,EAAC,MAAA,IAAI,CAAC,cAAc,0CAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,oBAAoB;gBAC3F,UAAU,EAAE,QAAQ;aACrB,EACD,4BAAgB,CAAC,YAAY,EAC7B,yBAAc,CAAC,MAAM,CACtB,CAAC;YACF,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;SACzC;IACH,CAAC;IAED,oBAAoB;;QAClB,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC;QACtC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,eAAuB,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC;QAClG,IAAI,WAAW,IAAI,UAAU,EAAE;YAC7B,MAAM,EAAE,cAAc,EAAE,GAAG,UAAU,CAAC;YACtC,MAAM,KAAK,GAAG,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,QAAQ,2DAAG,CAAC,CAAC,CAAC;YACxC,IAAI,CAAC,YAAY,CACf,WAAW,EACX;gBACE,GAAG,EAAE,CAAC,KAAY,EAAE,EAAE,CACpB,IAAA,yBAAiB,EACf,cAAc,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE;oBACjE,YAAY,EAAE,IAAI,CAAC,aAAa;iBACjC,CAAC,EACF,KAAK,CACN;gBACH,EAAE,EAAE,CAAC,KAAY,EAAE,EAAE,CACnB,IAAA,yBAAiB,EACf,cAAc,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE;oBAChE,YAAY,EAAE,IAAI,CAAC,aAAa;iBACjC,CAAC,EACF,KAAK,CACN;gBACH,MAAM,EAAE,CAAC,KAAY,EAAE,EAAE,CACvB,IAAA,yBAAiB,EACf,cAAc,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,EAAE;oBACpE,YAAY,EAAE,IAAI,CAAC,aAAa;iBACjC,CAAC,EACF,KAAK,CACN;gBACH,EAAE,EAAE,CAAC,KAAY,EAAE,EAAE,CACnB,IAAA,yBAAiB,EACf,cAAc,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE;oBAChE,YAAY,EAAE,IAAI,CAAC,aAAa;iBACjC,CAAC,EACF,KAAK,CACN;gBACH,GAAG,EAAE,CAAC,KAAY,EAAE,EAAE,CACpB,IAAA,yBAAiB,EACf,cAAc,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE;oBACjE,YAAY,EAAE,IAAI,CAAC,aAAa;iBACjC,CAAC,EACF,KAAK,CACN;aACJ,EACD,4BAAgB,CAAC,YAAY,EAC7B,yBAAc,CAAC,MAAM,CACtB,CAAC;SACH;QACD,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC;QACtC,IAAI,WAAW,IAAI,UAAU,EAAE;YAC7B,MAAM,EAAE,cAAc,EAAE,GAAG,UAAU,CAAC;YACtC,MAAM,KAAK,GAAG,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,QAAQ,2DAAG,CAAC,CAAC,CAAC;YACxC,MAAM,0BAA0B,GAC9B,IAAI,CAAC,UAAU,eAAuB;gBACpC,CAAC,CAAC;oBACE,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;oBAClC,CAAC,EAAE,CAAC,KAAY,EAAE,EAAE,CAClB,IAAA,yBAAiB,EACf,cAAc,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,uCAA4B,CAAC,EAAE;wBAC/E,YAAY,EAAE,IAAI,CAAC,aAAa;qBACjC,CAAC,EACF,KAAK,CACN;iBACJ;gBACH,CAAC,CAAC;oBACE,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;oBAClC,CAAC,EAAE,CAAC,KAAY,EAAE,EAAE,CAClB,IAAA,yBAAiB,EACf,cAAc,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,uCAA4B,CAAC,EAAE;wBAC/E,YAAY,EAAE,IAAI,CAAC,aAAa;qBACjC,CAAC,EACF,KAAK,CACN;iBACJ,CAAC;YACR,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,0BAA0B,EAAE,4BAAgB,CAAC,YAAY,EAAE,yBAAc,CAAC,MAAM,CAAC,CAAC;SAClH;IACH,CAAC;IAED,QAAQ;QACN,KAAK,CAAC,QAAQ,EAAE,CAAC;QACjB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACf,OAAO;SACR;QAED,IAAA,2CAAgC,EAAC,IAAI,CAAC,QAAQ,EAAE,iBAAiB,EAAE,0BAAe,CAAC,CAAC;QACpF,IAAA,2CAAgC,EAAC,IAAI,CAAC,QAAQ,EAAE,mBAAmB,EAAE,gCAAiB,CAAC,CAAC;QAExF,MAAM,eAAe,GAAG,IAAI,mBAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,IAAI,YAAY,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;QACtG,eAAe,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAAE;YAC1C,IAAI,EAAE,UAAU;SACjB,CAAC,CAAC;QACH,eAAe,CAAC,IAAI,GAAG,GAAG,iBAAM,WAAW,IAAI,CAAC,EAAE,cAAc,CAAC;QACjE,eAAe,CAAC,SAAS,CAAC;YACxB,IAAI,EAAE,iBAAiB;YACvB,OAAO,EAAE;gBACP,cAAc,EAAE,IAAI,CAAC,UAAU,eAAuB,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO;gBACpF,aAAa,EAAE,IAAI,CAAC,cAAc;aACnC;SACF,CAAC,CAAC;QAEH,eAAe,CAAC,SAAS,CACvB;YACE,IAAI,EAAE,mBAAmB;YACzB,OAAO,EAAE;gBACP,UAAU,EAAE,qBAAU,CAAC,IAAI,CAAC,IAAI,CAAC;gBACjC,IAAI,EAAE,qBAAU;aACjB;SACF,EACD,KAAK,CACN,CAAC;QAEF,IAAI,CAAC,gBAAgB,GAAG,IAAI,wBAAU,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;IACxE,CAAC;IAED,IAAI,CAAC,MAAwB;QAC3B,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAEnB,IAAI,CAAC,oBAAoB,EAAE,CAAC;IAC9B,CAAC;IAEO,aAAa;QACnB,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,OAAO,IAAI,CAAC,aAAa,CAAC;SAC3B;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,UAAU,eAAuB,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC;QACtG,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,eAAuB,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;QAEpF,MAAM,cAAc,GAAG,cAAc,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACtE,MAAM,YAAY,GAAG,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC;QACpD,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;QAElC,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,WAAW,CAAC,GAAQ;QAClB,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAEvB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;IAC5B,CAAC;IAEO,kBAAkB,CAAC,SAAc,EAAE;QAEzC,MAAM,SAAS,GAAG,IAAA,cAAK,EAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QACpC,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACjE,IAAI,SAAS,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,SAAS,EAAE;gBAC3D,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,KAAK,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,mBAAmB,CAAC;aAC9F;iBAAM,IAAI,SAAS,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,UAAU,EAAE;gBACnE,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,KAAK,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,oBAAoB,CAAC;aAChG;QACH,CAAC,CAAC,CAAC;QACH,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,aAAa;;QACX,MAAM,eAAe,GAAG,IAAA,+BAAuB,EAAC,IAAI,CAAC,CAAC;QAEtD,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,MAAM,gBAAgB,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAA,iBAAO,CAAC,iBAAiB,CAAC,YAAY,CAAC,2CAAI,CAAC,CAAC;YAC9F,MAAM,SAAS,GAAG,IAAI,CAAC,kBAAkB,CACvC,IAAA,2BAAmB,aAA6B,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,qBAAqB,CAAC,CACxF,CAAC;YACF,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,IAAA,uBAAe,EAAC,gBAAgB,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC,CAAC;SACrG;QAED,IAAI,IAAI,CAAC,YAAY,EAAE;YACrB,MAAM,wBAAwB,GAAG;gBAC/B,MAAM,EAAE,MAAC,IAAI,CAAC,KAAK,CAAC,eAA4C,0CAAE,MAAM;gBACxE,SAAS,EAAE,MAAC,IAAI,CAAC,KAAK,CAAC,kBAA+C,0CAAE,MAAM;gBAC9E,KAAK,EAAE,MAAC,IAAI,CAAC,KAAK,CAAC,cAA2C,0CAAE,MAAM;gBACtE,IAAI,EAAE,MAAC,IAAI,CAAC,KAAK,CAAC,aAA0C,0CAAE,MAAM;gBACpE,MAAM,EAAE,MAAC,IAAI,CAAC,KAAK,CAAC,eAA4C,0CAAE,MAAM;aACzE,CAAC;YACF,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAClC,IAAA,uBAAe,EAAC,MAAA,iBAAO,CAAC,iBAAiB,CAAC,YAAY,CAAC,2CAAI,EAAE,wBAAwB,EAAE,eAAe,CAAC,CACxG,CAAC;SACH;IACH,CAAC;IAES,WAAW;QACnB,IAAI,CAAC,cAAc,GAAG,IAAI,2CAA0B,CAAC,IAAI,CAAC,CAAC;QAC3D,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACtF,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACxF,CAAC;IAED,kBAAkB;QAChB,MAAM,MAAM,GAAG,KAAK,CAAC,kBAAkB,EAAE,CAAC;QAC1C,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,KAAK,IAAI,CAAC,cAAc,CAAC,CAAC;QACtE,IAAI,aAAa,EAAE;YACjB,aAAa,CAAC,UAAU,GAAG,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;SACvD;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,aAAa,CAAC,GAAyB;QAErC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QACzB,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,CAAC;IACrC,CAAC;IAED,mBAAmB;QACjB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,cAAc;QACZ,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC7B,CAAC;;AAzWH,sCA0WC;AAzWiB,kBAAI,GAAW,qBAAc,CAAC,OAAO,CAAC;AAGtC,kBAAI,GAAkB,4BAAiB,CAAC;AAwWnD,MAAM,qBAAqB,GAAG,GAAG,EAAE;IACxC,IAAA,8BAAmB,GAAE,CAAC;IACtB,IAAA,2BAAkB,GAAE,CAAC;IACrB,IAAA,oCAA2B,GAAE,CAAC;IAC9B,iBAAO,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;AAC5D,CAAC,CAAC;AALW,QAAA,qBAAqB,yBAKhC","file":"box-plot.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\nimport type { ISymbolMark } from '../../mark/symbol';\nimport { AttributeLevel, DEFAULT_DATA_INDEX, PREFIX } from '../../constant';\nimport type { IBoxPlotMark } from '../../mark/box-plot';\nimport type { IModelEvaluateOption, IModelInitOption } from '../../model/interface';\nimport type { BoxPlotShaftShape, IOutlierMarkSpec, Maybe, Datum } from '../../typings';\nimport { Direction } from '../../typings/space';\nimport { valueInScaleRange } from '../../util/scale';\nimport { CartesianSeries } from '../cartesian/cartesian';\nimport type { SeriesMarkMap } from '../interface';\nimport { SeriesMarkNameEnum, SeriesTypeEnum } from '../interface/type';\nimport type { IBoxPlotSeriesSpec, IBoxPlotSeriesTheme } from './interface';\nimport { STATE_VALUE_ENUM } from '../../compile/mark/interface';\nimport { registerDataSetInstanceTransform } from '../../data/register';\nimport { DataView } from '@visactor/vdataset';\nimport { SeriesData } from '../base/series-data';\nimport { foldOutlierData } from '../../data/transforms/box-plot';\nimport { BOX_PLOT_OUTLIER_VALUE_FIELD } from '../../constant/box-plot';\nimport { BoxPlotSeriesTooltipHelper } from './tooltip-helper';\nimport { addVChartProperty } from '../../data/transforms/add-property';\nimport { addDataKey, initKeyMap } from '../../data/transforms/data-key';\nimport { animationConfig, userAnimationConfig } from '../../animation/utils';\nimport { registerScaleInOutAnimation } from '../../animation/config';\nimport type { IMarkAnimateSpec } from '../../animation/spec';\nimport { BoxPlotMark, registerBoxPlotMark } from '../../mark/box-plot';\nimport { SymbolMark, registerSymbolMark } from '../../mark/symbol';\nimport { boxPlotSeriesMark } from './constant';\nimport { Factory } from '../../core/factory';\nimport type { IMark } from '../../mark/interface';\nimport { merge, isNumber } from '@visactor/vutils';\nimport { getGroupAnimationParams } from '../util/utils';\n\nconst DEFAULT_STROKE_WIDTH = 2;\nconst DEFAULT_SHAFT_FILL_OPACITY = 0.5;\nconst DEFAULT_SHAFT_SHAPE = 'line';\nexport const DEFAULT_FILL_COLOR = '#FFF';\nexport const DEFAULT_STROKE_COLOR = '#000';\n\nconst DEFAULT_OUTLIER_SIZE = 10;\n\nexport class BoxPlotSeries<T extends IBoxPlotSeriesSpec = IBoxPlotSeriesSpec> extends CartesianSeries<T> {\n static readonly type: string = SeriesTypeEnum.boxPlot;\n type = SeriesTypeEnum.boxPlot;\n\n static readonly mark: SeriesMarkMap = boxPlotSeriesMark;\n\n protected _minField: string;\n getMinField() {\n return this._minField;\n }\n protected _maxField: string;\n getMaxField() {\n return this._maxField;\n }\n protected _q1Field: string;\n getQ1Field() {\n return this._q1Field;\n }\n protected _medianField: string;\n getMedianField() {\n return this._medianField;\n }\n protected _q3Field: string;\n getQ3Field() {\n return this._q3Field;\n }\n protected _outliersField: string;\n getOutliersField() {\n return this._outliersField;\n }\n protected _lineWidth: number;\n protected _boxWidth: number;\n protected _shaftShape: BoxPlotShaftShape;\n getShaftShape() {\n return this._shaftShape;\n }\n protected _shaftWidth: number;\n protected _boxFillColor: string;\n getBoxFillColor() {\n return this._boxFillColor;\n }\n protected _strokeColor: string;\n getStrokeColor() {\n return this._strokeColor;\n }\n protected _shaftFillOpacity: number;\n protected _outliersStyle: IOutlierMarkSpec;\n getOutliersStyle() {\n return this._outliersStyle;\n }\n protected _outlierDataView: SeriesData;\n\n private _autoBoxWidth: number;\n\n /**\n * @override\n */\n setAttrFromSpec() {\n super.setAttrFromSpec();\n const boxPlotStyle: any = this._spec.boxPlot?.style ?? {};\n this._minField = this._spec.minField;\n this._maxField = this._spec.maxField;\n this._q1Field = this._spec.q1Field;\n this._medianField = this._spec.medianField;\n this._q3Field = this._spec.q3Field;\n this._outliersField = this._spec.outliersField;\n this._lineWidth = boxPlotStyle.lineWidth ?? DEFAULT_STROKE_WIDTH;\n this._boxWidth = boxPlotStyle.boxWidth;\n this._shaftShape = boxPlotStyle.shaftShape ?? DEFAULT_SHAFT_SHAPE;\n this._shaftWidth = boxPlotStyle.shaftWidth;\n this._boxFillColor = boxPlotStyle.boxFill;\n this._strokeColor = boxPlotStyle.stroke;\n\n this._shaftFillOpacity =\n this._shaftShape === 'bar' ? boxPlotStyle.shaftFillOpacity ?? DEFAULT_SHAFT_FILL_OPACITY : undefined;\n\n this._outliersStyle = this._spec.outliersStyle;\n }\n\n private _boxPlotMark?: IBoxPlotMark;\n private _outlierMark?: ISymbolMark;\n\n initMark(): void {\n const progressive = {\n progressiveStep: this._spec.progressiveStep,\n progressiveThreshold: this._spec.progressiveThreshold,\n large: this._spec.large,\n largeThreshold: this._spec.largeThreshold\n };\n\n this._boxPlotMark = this._createMark(BoxPlotSeries.mark.boxPlot, {\n isSeriesMark: true,\n progressive\n }) as IBoxPlotMark;\n this._outlierMark = this._createMark(BoxPlotSeries.mark.outlier, {\n progressive,\n key: DEFAULT_DATA_INDEX,\n dataView: this._outlierDataView.getDataView(),\n dataProductId: this._outlierDataView.getProductId()\n }) as ISymbolMark;\n }\n\n initMarkStyle(): void {\n const boxPlotMark = this._boxPlotMark;\n if (boxPlotMark) {\n const commonBoxplotStyles = {\n direction: this._direction,\n lineWidth: this._lineWidth,\n shaftShape: this._shaftShape,\n fill: this._boxFillColor ?? (this._shaftShape === 'line' ? DEFAULT_FILL_COLOR : this.getColorAttribute()),\n minMaxFillOpacity: this._shaftFillOpacity,\n stroke: this._strokeColor ?? (this._shaftShape === 'line' ? this.getColorAttribute() : DEFAULT_STROKE_COLOR)\n };\n\n const boxPlotMarkStyles =\n this._direction === Direction.vertical\n ? {\n x: this.dataToPositionX.bind(this),\n ...commonBoxplotStyles,\n boxWidth: () => this._boxWidth ?? this._getMarkWidth(),\n ruleWidth: () => this._shaftWidth ?? this._getMarkWidth(),\n q1q3Width: () => this._boxWidth ?? this._getMarkWidth(),\n minMaxWidth: () => this._shaftWidth ?? this._getMarkWidth()\n }\n : {\n y: this.dataToPositionY.bind(this),\n ...commonBoxplotStyles,\n boxHeight: () => this._boxWidth ?? this._getMarkWidth(),\n ruleHeight: () => this._shaftWidth ?? this._getMarkWidth(),\n q1q3Height: () => this._boxWidth ?? this._getMarkWidth(),\n minMaxHeight: () => this._shaftWidth ?? this._getMarkWidth()\n };\n\n this.setMarkStyle(boxPlotMark, boxPlotMarkStyles, STATE_VALUE_ENUM.STATE_NORMAL, AttributeLevel.Series);\n\n this._trigger.registerMark(boxPlotMark);\n }\n\n const outlierMark = this._outlierMark;\n if (outlierMark) {\n this.setMarkStyle(\n outlierMark,\n {\n fill: this._outliersStyle?.fill ?? this.getColorAttribute(),\n size: isNumber(this._outliersStyle?.size) ? this._outliersStyle.size : DEFAULT_OUTLIER_SIZE,\n symbolType: 'circle'\n },\n STATE_VALUE_ENUM.STATE_NORMAL,\n AttributeLevel.Series\n );\n this._trigger.registerMark(outlierMark);\n }\n }\n\n initBoxPlotMarkStyle(): void {\n const boxPlotMark = this._boxPlotMark;\n const axisHelper = this._direction === Direction.vertical ? this._yAxisHelper : this._xAxisHelper;\n if (boxPlotMark && axisHelper) {\n const { dataToPosition } = axisHelper;\n const scale = axisHelper?.getScale?.(0);\n this.setMarkStyle(\n boxPlotMark,\n {\n min: (datum: Datum) =>\n valueInScaleRange(\n dataToPosition(this.getDatumPositionValues(datum, this._minField), {\n bandPosition: this._bandPosition\n }),\n scale\n ),\n q1: (datum: Datum) =>\n valueInScaleRange(\n dataToPosition(this.getDatumPositionValues(datum, this._q1Field), {\n bandPosition: this._bandPosition\n }),\n scale\n ),\n median: (datum: Datum) =>\n valueInScaleRange(\n dataToPosition(this.getDatumPositionValues(datum, this._medianField), {\n bandPosition: this._bandPosition\n }),\n scale\n ),\n q3: (datum: Datum) =>\n valueInScaleRange(\n dataToPosition(this.getDatumPositionValues(datum, this._q3Field), {\n bandPosition: this._bandPosition\n }),\n scale\n ),\n max: (datum: Datum) =>\n valueInScaleRange(\n dataToPosition(this.getDatumPositionValues(datum, this._maxField), {\n bandPosition: this._bandPosition\n }),\n scale\n )\n },\n STATE_VALUE_ENUM.STATE_NORMAL,\n AttributeLevel.Series\n );\n }\n const outlierMark = this._outlierMark;\n if (outlierMark && axisHelper) {\n const { dataToPosition } = axisHelper;\n const scale = axisHelper?.getScale?.(0);\n const outlierMarkPositionChannel =\n this._direction === Direction.vertical\n ? {\n x: this.dataToPositionX.bind(this),\n y: (datum: Datum) =>\n valueInScaleRange(\n dataToPosition(this.getDatumPositionValues(datum, BOX_PLOT_OUTLIER_VALUE_FIELD), {\n bandPosition: this._bandPosition\n }),\n scale\n )\n }\n : {\n y: this.dataToPositionY.bind(this),\n x: (datum: Datum) =>\n valueInScaleRange(\n dataToPosition(this.getDatumPositionValues(datum, BOX_PLOT_OUTLIER_VALUE_FIELD), {\n bandPosition: this._bandPosition\n }),\n scale\n )\n };\n this.setMarkStyle(outlierMark, outlierMarkPositionChannel, STATE_VALUE_ENUM.STATE_NORMAL, AttributeLevel.Series);\n }\n }\n\n initData(): void {\n super.initData();\n if (!this._data) {\n return;\n }\n\n registerDataSetInstanceTransform(this._dataSet, 'foldOutlierData', foldOutlierData);\n registerDataSetInstanceTransform(this._dataSet, 'addVChartProperty', addVChartProperty);\n\n const outlierDataView = new DataView(this._dataSet, { name: `${this.type}_outlier_${this.id}_data` });\n outlierDataView.parse([this.getViewData()], {\n type: 'dataview'\n });\n outlierDataView.name = `${PREFIX}_series_${this.id}_outlierData`;\n outlierDataView.transform({\n type: 'foldOutlierData',\n options: {\n dimensionField: this._direction === Direction.vertical ? this._fieldX : this._fieldY,\n outliersField: this._outliersField\n }\n });\n\n outlierDataView.transform(\n {\n type: 'addVChartProperty',\n options: {\n beforeCall: initKeyMap.bind(this),\n call: addDataKey\n }\n },\n false\n );\n\n this._outlierDataView = new SeriesData(this._option, outlierDataView);\n }\n\n init(option: IModelInitOption): void {\n super.init(option);\n //init在axis初始化之后才被执行,此时axisHelper不为空\n this.initBoxPlotMarkStyle();\n }\n\n private _getMarkWidth() {\n if (this._autoBoxWidth) {\n return this._autoBoxWidth;\n }\n //获取自适应的图元宽度\n const bandAxisHelper = this._direction === Direction.vertical ? this._xAxisHelper : this._yAxisHelper;\n const xField = this._direction === Direction.vertical ? this._fieldX : this._fieldY;\n\n const innerBandWidth = bandAxisHelper.getBandwidth(xField.length - 1);\n const autoBoxWidth = innerBandWidth / xField.length;\n this._autoBoxWidth = autoBoxWidth;\n\n return this._autoBoxWidth;\n }\n\n onLayoutEnd(ctx: any) {\n super.onLayoutEnd(ctx);\n //每次布局结束,清除自适应宽度缓存\n this._autoBoxWidth = null;\n }\n\n private _initAnimationSpec(config: any = {}) {\n //将spec中的animation的type替换为箱型图的type\n const newConfig = merge({}, config);\n ['appear', 'enter', 'update', 'exit', 'disappear'].forEach(state => {\n if (newConfig[state] && newConfig[state].type === 'scaleIn') {\n newConfig[state].type = this._shaftShape === 'line' ? 'boxplotScaleIn' : 'barBoxplotScaleIn';\n } else if (newConfig[state] && newConfig[state].type === 'scaleOut') {\n newConfig[state].type = this._shaftShape === 'line' ? 'boxplotScaleOut' : 'barBoxplotScaleOut';\n }\n });\n return newConfig;\n }\n\n initAnimation() {\n const animationParams = getGroupAnimationParams(this);\n\n if (this._boxPlotMark) {\n const newDefaultConfig = this._initAnimationSpec(Factory.getAnimationInKey('scaleInOut')?.());\n const newConfig = this._initAnimationSpec(\n userAnimationConfig(SeriesMarkNameEnum.boxPlot, this._spec, this._markAttributeContext)\n );\n this._boxPlotMark.setAnimationConfig(animationConfig(newDefaultConfig, newConfig, animationParams));\n }\n\n if (this._outlierMark) {\n const outlierMarkUserAnimation = {\n appear: (this._spec.animationAppear as IMarkAnimateSpec<string>)?.symbol,\n disappear: (this._spec.animationDisappear as IMarkAnimateSpec<string>)?.symbol,\n enter: (this._spec.animationEnter as IMarkAnimateSpec<string>)?.symbol,\n exit: (this._spec.animationExit as IMarkAnimateSpec<string>)?.symbol,\n update: (this._spec.animationUpdate as IMarkAnimateSpec<string>)?.symbol\n };\n this._outlierMark.setAnimationConfig(\n animationConfig(Factory.getAnimationInKey('scaleInOut')?.(), outlierMarkUserAnimation, animationParams)\n );\n }\n }\n\n protected initTooltip() {\n this._tooltipHelper = new BoxPlotSeriesTooltipHelper(this);\n this._boxPlotMark && this._tooltipHelper.activeTriggerSet.mark.add(this._boxPlotMark);\n this._outlierMark && this._tooltipHelper.activeTriggerSet.mark.add(this._outlierMark);\n }\n\n getStatisticFields() {\n const fields = super.getStatisticFields();\n const outliersField = fields.find(f => f.key === this._outliersField);\n if (outliersField) {\n outliersField.operations = ['array-min', 'array-max'];\n }\n return fields;\n }\n\n onEvaluateEnd(ctx: IModelEvaluateOption): void {\n //初次编译时,会传入空数据;待所有计算完成后,需要重新执行updateData更新数据\n super.onEvaluateEnd(ctx);\n this._outlierDataView.updateData();\n }\n\n getDefaultShapeType(): string {\n return 'square';\n }\n\n getActiveMarks(): IMark[] {\n return [this._boxPlotMark];\n }\n}\n\nexport const registerBoxplotSeries = () => {\n registerBoxPlotMark();\n registerSymbolMark();\n registerScaleInOutAnimation();\n Factory.registerSeries(BoxPlotSeries.type, BoxPlotSeries);\n};\n"]}
|
|
@@ -4,16 +4,16 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: !0
|
|
5
5
|
}), exports.boxPlotSeriesMark = void 0;
|
|
6
6
|
|
|
7
|
-
const
|
|
7
|
+
const constant_1 = require("../base/constant");
|
|
8
8
|
|
|
9
9
|
exports.boxPlotSeriesMark = Object.assign(Object.assign({}, constant_1.baseSeriesMark), {
|
|
10
|
-
|
|
11
|
-
name:
|
|
12
|
-
type:
|
|
10
|
+
boxPlot: {
|
|
11
|
+
name: "boxPlot",
|
|
12
|
+
type: "boxPlot"
|
|
13
13
|
},
|
|
14
|
-
|
|
15
|
-
name:
|
|
16
|
-
type:
|
|
14
|
+
outlier: {
|
|
15
|
+
name: "outlier",
|
|
16
|
+
type: "symbol"
|
|
17
17
|
}
|
|
18
18
|
});
|
|
19
19
|
//# sourceMappingURL=constant.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/series/box-plot/constant.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"sources":["../src/series/box-plot/constant.ts"],"names":[],"mappings":";;;AACA,+CAAkD;AAIrC,QAAA,iBAAiB,mCACzB,yBAAc,KACjB,WAA4B,EAAE,EAAE,IAAI,WAA4B,EAAE,IAAI,WAAsB,EAAE,EAC9F,WAA4B,EAAE,EAAE,IAAI,WAA4B,EAAE,IAAI,UAAqB,EAAE,IAC7F","file":"constant.js","sourcesContent":["import { MarkTypeEnum } from '../../mark/interface/type';\nimport { baseSeriesMark } from '../base/constant';\nimport type { SeriesMarkMap } from '../interface/common';\nimport { SeriesMarkNameEnum } from '../interface/type';\n\nexport const boxPlotSeriesMark: SeriesMarkMap = {\n ...baseSeriesMark,\n [SeriesMarkNameEnum.boxPlot]: { name: SeriesMarkNameEnum.boxPlot, type: MarkTypeEnum.boxPlot },\n [SeriesMarkNameEnum.outlier]: { name: SeriesMarkNameEnum.outlier, type: MarkTypeEnum.symbol }\n};\n"]}
|
|
@@ -4,13 +4,13 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: !0
|
|
5
5
|
}), exports.CartesianSeries = void 0;
|
|
6
6
|
|
|
7
|
-
const base_series_1 = require("../base/base-series"), constant_1 = require("../../constant"),
|
|
7
|
+
const base_series_1 = require("../base/base-series"), constant_1 = require("../../constant"), type_1 = require("../../util/type"), vutils_1 = require("@visactor/vutils"), vscale_1 = require("@visactor/vscale"), utils_1 = require("../util/utils");
|
|
8
8
|
|
|
9
9
|
class CartesianSeries extends base_series_1.BaseSeries {
|
|
10
10
|
constructor() {
|
|
11
11
|
super(...arguments), this.coordinate = "cartesian", this._bandPosition = .5, this._scaleConfig = {
|
|
12
12
|
bandPosition: this._bandPosition
|
|
13
|
-
}, this._direction =
|
|
13
|
+
}, this._direction = "vertical", this._sortDataByAxis = !1, this._getInvalidDefined = datum => {
|
|
14
14
|
var _a, _b;
|
|
15
15
|
return !((null === (_a = this._xAxisHelper) || void 0 === _a ? void 0 : _a.isContinuous) && !(0,
|
|
16
16
|
type_1.couldBeValidNumber)(datum[this._specXField[0]])) && !((null === (_b = this._yAxisHelper) || void 0 === _b ? void 0 : _b.isContinuous) && !(0,
|
|
@@ -130,21 +130,20 @@ class CartesianSeries extends base_series_1.BaseSeries {
|
|
|
130
130
|
return this.getGroupFields();
|
|
131
131
|
}
|
|
132
132
|
getStackValueField() {
|
|
133
|
-
return
|
|
133
|
+
return "vertical" === this.direction ? (0, vutils_1.array)(this._spec.yField)[0] : (0,
|
|
134
134
|
vutils_1.array)(this._spec.xField)[0];
|
|
135
135
|
}
|
|
136
136
|
setValueFieldToStack() {
|
|
137
|
-
this.direction
|
|
138
|
-
this.setFieldY2(constant_1.STACK_FIELD_START)) : (this.setFieldX(constant_1.STACK_FIELD_END),
|
|
137
|
+
"vertical" === this.direction ? (this.setFieldY(constant_1.STACK_FIELD_END), this.setFieldY2(constant_1.STACK_FIELD_START)) : (this.setFieldX(constant_1.STACK_FIELD_END),
|
|
139
138
|
this.setFieldX2(constant_1.STACK_FIELD_START));
|
|
140
139
|
}
|
|
141
140
|
setValueFieldToPercent() {
|
|
142
|
-
|
|
141
|
+
"vertical" === this.direction ? (this.setFieldY(constant_1.STACK_FIELD_END_PERCENT),
|
|
143
142
|
this.setFieldY2(constant_1.STACK_FIELD_START_PERCENT)) : (this.setFieldX(constant_1.STACK_FIELD_END_PERCENT),
|
|
144
143
|
this.setFieldX2(constant_1.STACK_FIELD_START_PERCENT));
|
|
145
144
|
}
|
|
146
145
|
setValueFieldToStackOffsetSilhouette() {
|
|
147
|
-
|
|
146
|
+
"vertical" === this.direction ? (this.setFieldY(constant_1.STACK_FIELD_END_OffsetSilhouette),
|
|
148
147
|
this.setFieldY2(constant_1.STACK_FIELD_START_OffsetSilhouette)) : (this.setFieldX(constant_1.STACK_FIELD_END_OffsetSilhouette),
|
|
149
148
|
this.setFieldX2(constant_1.STACK_FIELD_START_OffsetSilhouette));
|
|
150
149
|
}
|
|
@@ -258,10 +257,10 @@ class CartesianSeries extends base_series_1.BaseSeries {
|
|
|
258
257
|
this._trigger.setStateKeys([ ...this._fieldX, ...this._fieldY ]), this._buildScaleConfig();
|
|
259
258
|
}
|
|
260
259
|
getDimensionField() {
|
|
261
|
-
return
|
|
260
|
+
return "vertical" === this._direction ? this._specXField : this._specYField;
|
|
262
261
|
}
|
|
263
262
|
getMeasureField() {
|
|
264
|
-
return
|
|
263
|
+
return "vertical" === this._direction ? this._specYField : this._specXField;
|
|
265
264
|
}
|
|
266
265
|
viewDataUpdate(d) {
|
|
267
266
|
super.viewDataUpdate(d), this.sortDataByAxis && this._sortDataInAxisDomain();
|
|
@@ -269,7 +268,7 @@ class CartesianSeries extends base_series_1.BaseSeries {
|
|
|
269
268
|
_sortDataInAxisDomain() {
|
|
270
269
|
var _a, _b, _c;
|
|
271
270
|
(null === (_b = null === (_a = this.getViewData()) || void 0 === _a ? void 0 : _a.latestData) || void 0 === _b ? void 0 : _b.length) && ((0,
|
|
272
|
-
utils_1.sortDataInAxisHelper)(
|
|
271
|
+
utils_1.sortDataInAxisHelper)("horizontal" === this._direction ? this._yAxisHelper : this._xAxisHelper, "horizontal" === this._direction ? this._fieldY[0] : this._fieldX[0], this.getViewData().latestData),
|
|
273
272
|
null === (_c = this._data) || void 0 === _c || _c.updateData(!0));
|
|
274
273
|
}
|
|
275
274
|
reInit(spec) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/series/cartesian/cartesian.ts"],"names":[],"mappings":";;;AAEA,qDAAiD;AAGjD,6CAOwB;AAIxB,+CAAgD;AAEhD,0CAAqD;AACrD,6CAAkD;AAElD,6CAAgD;AAGhD,yCAAqD;AAGrD,MAAsB,eACpB,SAAQ,wBAAa;IADvB;;QAIW,eAAU,GAAgB,WAAW,CAAC;QACrC,kBAAa,GAAG,GAAG,CAAC;QACpB,iBAAY,GAAqB;YACzC,YAAY,EAAE,IAAI,CAAC,aAAa;SACjC,CAAC;QAkDQ,eAAU,GAAkB,iBAAS,CAAC,QAAQ,CAAC;QAwD/C,oBAAe,GAAY,KAAK,CAAC;QAgWjC,uBAAkB,GAAG,CAAC,KAAY,EAAE,EAAE;;YAC9C,IAAI,MAAA,IAAI,CAAC,YAAY,0CAAE,YAAY,EAAE;gBACnC,IAAI,CAAC,IAAA,yBAAkB,EAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;oBACnD,OAAO,KAAK,CAAC;iBACd;aACF;YACD,IAAI,MAAA,IAAI,CAAC,YAAY,0CAAE,YAAY,EAAE;gBACnC,IAAI,CAAC,IAAA,yBAAkB,EAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;oBACnD,OAAO,KAAK,CAAC;iBACd;aACF;YACD,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;IAYJ,CAAC;IAjeW,iBAAiB;QACzB,IAAI,CAAC,YAAY,GAAG;YAClB,YAAY,EAAE,IAAI,CAAC,aAAa;SACjC,CAAC;IACJ,CAAC;IAGD,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IACD,SAAS,CAAC,CAAoB;QAC5B,IAAI,CAAC,OAAO,GAAG,IAAA,cAAK,EAAC,CAAC,CAAC,CAAC;IAC1B,CAAC;IAGD,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IACD,SAAS,CAAC,CAAoB;QAC5B,IAAI,CAAC,OAAO,GAAG,IAAA,cAAK,EAAC,CAAC,CAAC,CAAC;IAC1B,CAAC;IAGD,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IACD,SAAS,CAAC,CAAqB;QAC7B,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,IAAA,cAAK,EAAC,CAAC,CAAC,CAAC;IAC/B,CAAC;IAGD,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IACD,UAAU,CAAC,CAAS;QAClB,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;IACpB,CAAC;IAGD,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IACD,UAAU,CAAC,CAAS;QAClB,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;IACpB,CAAC;IAMD,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAGD,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IACD,SAAS,CAAC,CAAa;QACrB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;IACnB,CAAC;IAGD,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IACD,SAAS,CAAC,CAAa;QACrB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;IACnB,CAAC;IAGD,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IACD,SAAS,CAAC,CAAa;QACrB,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;IACnB,CAAC;IAGD,cAAc;QACZ,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IACD,cAAc,CAAC,CAAc;QAC3B,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC7B,CAAC;IAGD,cAAc;QACZ,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IACD,cAAc,CAAC,CAAc;QAC3B,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC7B,CAAC;IAGD,cAAc;QACZ,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IACD,cAAc,CAAC,CAAc;QAC3B,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC7B,CAAC;IAGD,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED,kBAAkB;;QAChB,MAAM,MAAM,GAAuD,EAAE,CAAC;QACtE,IAAI,MAAA,IAAI,CAAC,cAAc,EAAE,0CAAE,QAAQ,EAAE;YACnC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBAC5E,MAAM,MAAM,GAAiE,EAAE,GAAG,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;gBACxG,IAAI,IAAA,qBAAY,EAAC,IAAI,CAAC,cAAc,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;oBACxD,MAAM,CAAC,UAAU,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;iBACpC;qBAAM;oBACL,MAAM,CAAC,UAAU,GAAG,CAAC,QAAQ,CAAC,CAAC;iBAChC;gBACD,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACtB,CAAC,CAAC,CAAC;SACJ;QACD,IAAI,MAAA,IAAI,CAAC,cAAc,EAAE,0CAAE,QAAQ,EAAE;YACnC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBAC5E,MAAM,MAAM,GAAiE,EAAE,GAAG,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;gBACxG,IAAI,IAAA,qBAAY,EAAC,IAAI,CAAC,cAAc,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;oBACxD,MAAM,CAAC,UAAU,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;iBACpC;qBAAM;oBACL,MAAM,CAAC,UAAU,GAAG,CAAC,QAAQ,CAAC,CAAC;iBAChC;gBACD,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACtB,CAAC,CAAC,CAAC;SACJ;QACD,IAAI,IAAI,CAAC,OAAO,KAAI,MAAA,IAAI,CAAC,cAAc,EAAE,0CAAE,QAAQ,CAAA,EAAE;YACnD,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBACvB,MAAM,MAAM,GAAiE,EAAE,GAAG,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;gBACxG,IAAI,IAAA,qBAAY,EAAC,IAAI,CAAC,cAAc,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE;oBACxD,MAAM,CAAC,UAAU,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;iBACpC;qBAAM;oBACL,MAAM,CAAC,UAAU,GAAG,CAAC,QAAQ,CAAC,CAAC;iBAChC;gBACD,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACtB,CAAC,CAAC,CAAC;SACJ;QACD,IAAI,IAAI,CAAC,QAAQ,EAAE,EAAE;YACnB,MAAM,CAAC,IAAI,CAAC;gBACV,GAAG,EAAE,IAAI,CAAC,kBAAkB,EAAE;gBAC9B,UAAU,EAAE,CAAC,UAAU,CAAC;aACzB,CAAC,CAAC;SACJ;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,cAAc;QACZ,OAAO,IAAI,CAAC,SAAS,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;IACrE,CAAC;IAED,mBAAmB;QACjB,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC;IAC/B,CAAC;IAED,kBAAkB;QAEhB,IAAI,IAAI,CAAC,SAAS,KAAK,iBAAS,CAAC,QAAQ,EAAE;YACzC,OAAO,IAAA,cAAK,EAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;SACpC;QACD,OAAO,IAAA,cAAK,EAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACrC,CAAC;IAED,oBAAoB;QAClB,IAAI,IAAI,CAAC,SAAS,KAAK,iBAAS,CAAC,QAAQ,EAAE;YACzC,IAAI,CAAC,SAAS,CAAC,0BAAe,CAAC,CAAC;YAChC,IAAI,CAAC,UAAU,CAAC,4BAAiB,CAAC,CAAC;SACpC;aAAM;YACL,IAAI,CAAC,SAAS,CAAC,0BAAe,CAAC,CAAC;YAChC,IAAI,CAAC,UAAU,CAAC,4BAAiB,CAAC,CAAC;SACpC;IACH,CAAC;IAED,sBAAsB;QACpB,IAAI,IAAI,CAAC,SAAS,KAAK,iBAAS,CAAC,QAAQ,EAAE;YACzC,IAAI,CAAC,SAAS,CAAC,kCAAuB,CAAC,CAAC;YACxC,IAAI,CAAC,UAAU,CAAC,oCAAyB,CAAC,CAAC;SAC5C;aAAM;YACL,IAAI,CAAC,SAAS,CAAC,kCAAuB,CAAC,CAAC;YACxC,IAAI,CAAC,UAAU,CAAC,oCAAyB,CAAC,CAAC;SAC5C;IACH,CAAC;IAED,oCAAoC;QAClC,IAAI,IAAI,CAAC,SAAS,KAAK,iBAAS,CAAC,QAAQ,EAAE;YACzC,IAAI,CAAC,SAAS,CAAC,2CAAgC,CAAC,CAAC;YACjD,IAAI,CAAC,UAAU,CAAC,6CAAkC,CAAC,CAAC;SACrD;aAAM;YACL,IAAI,CAAC,SAAS,CAAC,2CAAgC,CAAC,CAAC;YACjD,IAAI,CAAC,UAAU,CAAC,6CAAkC,CAAC,CAAC;SACrD;IACH,CAAC;IAED,mBAAmB;QACjB,IAAI,CAAC,oBAAoB,EAAE,CAAC;IAC9B,CAAC;IAED,mBAAmB;QACjB,IAAI,CAAC,oBAAoB,EAAE,CAAC;IAC9B,CAAC;IAED,mBAAmB;QACjB,IAAI,CAAC,oBAAoB,EAAE,CAAC;IAC9B,CAAC;IAED,eAAe;;QACb,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAClC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAClC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAClC,IAAI,CAAC,WAAW,GAAG,IAAA,cAAK,EAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC5C,IAAI,CAAC,WAAW,GAAG,IAAA,cAAK,EAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC5C,IAAI,IAAA,gBAAO,EAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE;YACjC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;SACxC;QAED,IAAI,CAAC,UAAU,CAAC,MAAA,IAAI,CAAC,KAAK,0CAAE,OAAO,CAAC,CAAC;QACrC,IAAI,CAAC,UAAU,CAAC,MAAA,IAAI,CAAC,KAAK,0CAAE,OAAO,CAAC,CAAC;QAErC,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,IAAI,CAAC,oBAAoB,EAAE,CAAC;SAC7B;QACD,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,IAAI,CAAC,sBAAsB,EAAE,CAAC;SAC/B;QACD,IAAI,IAAI,CAAC,sBAAsB,EAAE;YAC/B,IAAI,CAAC,oCAAoC,EAAE,CAAC;SAC7C;QAED,IAAI,IAAA,gBAAO,EAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE;YACtC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,KAAK,IAAI,CAAC;SAC3D;IACH,CAAC;IAED,cAAc,CAAC,KAAY;QACzB,IAAI,CAAC,KAAK,EAAE;YACV,OAAO,IAAI,CAAC;SACb;QACD,OAAO;YACL,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;YAC9B,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;SACrB,CAAC;IACd,CAAC;IAES,0BAA0B;QAClC,KAAK,CAAC,0BAA0B,EAAE,CAAC;QAEnC,IAAI,CAAC,qBAAqB,CAAC,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvE,IAAI,CAAC,qBAAqB,CAAC,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvE,IAAI,CAAC,qBAAqB,CAAC,UAAU,GAAG,CAAC,QAAgB,CAAC,EAAE,EAAE,mBAAC,OAAA,MAAA,MAAA,MAAA,IAAI,CAAC,cAAc,EAAE,EAAC,YAAY,mDAAG,KAAK,CAAC,mCAAI,CAAC,CAAA,EAAA,CAAC;QAChH,IAAI,CAAC,qBAAqB,CAAC,UAAU,GAAG,CAAC,QAAgB,CAAC,EAAE,EAAE,mBAAC,OAAA,MAAA,MAAA,MAAA,IAAI,CAAC,cAAc,EAAE,EAAC,YAAY,mDAAG,KAAK,CAAC,mCAAI,CAAC,CAAA,EAAA,CAAC;QAChH,IAAI,CAAC,qBAAqB,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/E,CAAC;IAED,eAAe,CAAC,MAAyC,EAAE,MAAyC;QAClG,OAAO;YACL,CAAC,EAAE,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC;YAChC,CAAC,EAAE,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC;SACjC,CAAC;IACJ,CAAC;IAES,aAAa,CAAC,MAAmB,EAAE,KAAwC,EAAE,KAAW;QAChG,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,KAAK,CAAC;QAChC,IAAI,MAAM,CAAC,YAAY,EAAE;YACvB,OAAO,MAAM,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;SACzD;QACD,OAAO,MAAM,CAAC,cAAc,CAAC,IAAA,cAAK,EAAC,KAAK,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IAChE,CAAC;IAED,gBAAgB,CAAC,KAAwC,EAAE,KAAW;QACpE,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAC7D,CAAC;IACD,gBAAgB,CAAC,KAAwC,EAAE,KAAW;QACpE,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAC7D,CAAC;IAID,eAAe,CAAC,KAAY;QAC1B,IAAI,IAAI,CAAC,iBAAiB,EAAE;YAC1B,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;SACtC;QAED,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACtB,IAAI,CAAC,iBAAiB,GAAG,CAAC,KAAY,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC;YAEtD,OAAO,MAAM,CAAC,GAAG,CAAC;SACnB;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;QAC1F,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YAClC,IAAI,CAAC,iBAAiB,GAAG,CAAC,KAAY,EAAE,EAAE,CAAC,IAAI,CAAC;YAChD,OAAO,IAAI,CAAC;SACb;QAED,IAAI,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE;YAClC,IAAI,CAAC,iBAAiB,GAAG,CAAC,KAAY,EAAE,EAAE;gBACxC,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,KAAK,CAAC;gBAChC,OAAO,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAC5G,CAAC,CAAC;SACH;aAAM;YACL,IAAI,CAAC,iBAAiB,GAAG,CAAC,KAAY,EAAE,EAAE;gBACxC,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,KAAK,CAAC;gBAChC,OAAO,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,IAAA,cAAK,EAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAChH,CAAC,CAAC;SACH;QAED,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;IAID,eAAe,CAAC,KAAY;QAC1B,IAAI,IAAI,CAAC,iBAAiB,EAAE;YAC1B,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;SACtC;QAED,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACtB,IAAI,CAAC,iBAAiB,GAAG,CAAC,KAAY,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC;YACtD,OAAO,MAAM,CAAC,GAAG,CAAC;SACnB;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC;QAC1F,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YAClC,IAAI,CAAC,iBAAiB,GAAG,CAAC,KAAY,EAAE,EAAE,CAAC,IAAI,CAAC;YAChD,OAAO,IAAI,CAAC;SACb;QAED,IAAI,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE;YAClC,IAAI,CAAC,iBAAiB,GAAG,CAAC,KAAY,EAAE,EAAE;gBACxC,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,KAAK,CAAC;gBAChC,OAAO,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAC5G,CAAC,CAAC;SACH;aAAM;YACL,IAAI,CAAC,iBAAiB,GAAG,CAAC,KAAY,EAAE,EAAE;gBACxC,IAAI,CAAC,YAAY,CAAC,KAAK,GAAG,KAAK,CAAC;gBAChC,OAAO,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,IAAA,cAAK,EAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAChH,CAAC,CAAC;SACH;QAED,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;IAED,eAAe,CAAC,KAAY;QAC1B,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACtB,OAAO,MAAM,CAAC,GAAG,CAAC;SACnB;QACD,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC;QAE7C,OAAO,cAAc,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE;YACtE,YAAY,EAAE,IAAI,CAAC,aAAa;SACjC,CAAC,CAAC;IACL,CAAC;IAED,gBAAgB,CAAC,KAAY;QAC3B,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACtB,OAAO,MAAM,CAAC,GAAG,CAAC;SACnB;QACD,OAAO,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,IAAI,KAAK;YAC5C,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC1E,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;IAC/B,CAAC;IAED,gBAAgB,CAAC,KAAY;QAC3B,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACtB,OAAO,MAAM,CAAC,GAAG,CAAC;SACnB;QACD,OAAO,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,IAAI,KAAK;YAC5C,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,sBAAsB,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC1E,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;IAC/B,CAAC;IAED,cAAc,CAAC,CAAS;QACtB,IAAI,CAAC,CAAC,EAAE;YACN,OAAO,IAAI,CAAC;SACb;QACD,OAAO;YACL,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5B,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;SAC7B,CAAC;IACJ,CAAC;IAED,eAAe,CAAC,IAAY;QAC1B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,OAAO,IAAI,CAAC;SACb;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAED,eAAe,CAAC,IAAY;QAC1B,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,OAAO,IAAI,CAAC;SACb;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAED,iBAAiB;QACf,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACtB,OAAO,MAAM,CAAC,GAAG,CAAC;SACnB;QACD,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC;QACvC,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IAChC,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;YACtB,OAAO,MAAM,CAAC,GAAG,CAAC;SACnB;QACD,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC;QACvC,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IAChC,CAAC;IAED,aAAa;QACX,KAAK,CAAC,aAAa,EAAE,CAAC;QACtB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7B,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QAC/D,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IAED,iBAAiB;QACf,IAAI,IAAI,CAAC,UAAU,KAAK,iBAAS,CAAC,QAAQ,EAAE;YAC1C,OAAO,IAAI,CAAC,WAAW,CAAC;SACzB;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,eAAe;QACb,IAAI,IAAI,CAAC,UAAU,KAAK,iBAAS,CAAC,QAAQ,EAAE;YAC1C,OAAO,IAAI,CAAC,WAAW,CAAC;SACzB;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,cAAc,CAAC,CAAW;QACxB,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,IAAI,CAAC,cAAc,EAAE;YACvB,IAAI,CAAC,qBAAqB,EAAE,CAAC;SAC9B;IACH,CAAC;IAED,qBAAqB;;QACnB,IAAI,MAAA,MAAA,IAAI,CAAC,WAAW,EAAE,0CAAE,UAAU,0CAAE,MAAM,EAAE;YAC1C,IAAA,4BAAoB,EAClB,IAAI,CAAC,UAAU,KAAK,iBAAS,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,EAChF,IAAI,CAAC,UAAU,KAAK,iBAAS,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAC5E,IAAI,CAAC,WAAW,EAAE,CAAC,UAAU,CAC9B,CAAC;YACF,MAAA,IAAI,CAAC,KAAK,0CAAE,UAAU,CAAC,IAAI,CAAC,CAAC;SAC9B;IACH,CAAC;IAgBD,MAAM,CAAC,IAAO;QACZ,IAAI,IAAI,CAAC,iBAAiB,EAAE;YAC1B,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;SAC/B;QACD,IAAI,IAAI,CAAC,iBAAiB,EAAE;YAC1B,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;SAC/B;QAED,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;CACF;AA1eD,0CA0eC","file":"cartesian.js","sourcesContent":["import type { DataView } from '@visactor/vdataset';\nimport type { ICartesianSeries } from '../interface';\nimport { BaseSeries } from '../base/base-series';\nimport type { IPoint } from '../../typings/coordinate';\nimport type { IBaseScale } from '@visactor/vscale';\nimport {\n STACK_FIELD_END,\n STACK_FIELD_END_PERCENT,\n STACK_FIELD_END_OffsetSilhouette,\n STACK_FIELD_START,\n STACK_FIELD_START_PERCENT,\n STACK_FIELD_START_OffsetSilhouette\n} from '../../constant';\nimport type { IAxisHelper } from '../../component/axis/cartesian/interface';\nimport type { DirectionType } from '../../typings/space';\n// eslint-disable-next-line no-duplicate-imports\nimport { Direction } from '../../typings/space';\nimport type { Datum, StringOrNumber } from '../../typings';\nimport { couldBeValidNumber } from '../../util/type';\nimport { array, isValid } from '@visactor/vutils';\n// eslint-disable-next-line no-duplicate-imports\nimport { isContinuous } from '@visactor/vscale';\nimport type { StatisticOperations } from '../../data/transforms/dimension-statistics';\nimport type { ICartesianSeriesSpec } from './interface';\nimport { sortDataInAxisHelper } from '../util/utils';\nimport type { IAxisLocationCfg } from '../../component/axis';\n\nexport abstract class CartesianSeries<T extends ICartesianSeriesSpec = ICartesianSeriesSpec>\n extends BaseSeries<T>\n implements ICartesianSeries\n{\n readonly coordinate: 'cartesian' = 'cartesian';\n protected _bandPosition = 0.5;\n protected _scaleConfig: IAxisLocationCfg = {\n bandPosition: this._bandPosition\n };\n protected _buildScaleConfig() {\n this._scaleConfig = {\n bandPosition: this._bandPosition\n };\n }\n\n protected _fieldX!: string[];\n get fieldX() {\n return this._fieldX;\n }\n setFieldX(f: string | string[]) {\n this._fieldX = array(f);\n }\n\n protected _fieldY!: string[];\n get fieldY() {\n return this._fieldY;\n }\n setFieldY(f: string | string[]) {\n this._fieldY = array(f);\n }\n\n protected _fieldZ?: string[];\n get fieldZ(): string[] | undefined {\n return this._fieldZ;\n }\n setFieldZ(f?: string | string[]) {\n this._fieldZ = f && array(f);\n }\n\n protected _fieldX2!: string;\n get fieldX2() {\n return this._fieldX2;\n }\n setFieldX2(f: string) {\n this._fieldX2 = f;\n }\n\n protected _fieldY2!: string;\n get fieldY2() {\n return this._fieldY2;\n }\n setFieldY2(f: string) {\n this._fieldY2 = f;\n }\n\n protected _specXField: string[];\n protected _specYField: string[];\n\n protected _direction: DirectionType = Direction.vertical;\n get direction() {\n return this._direction;\n }\n\n protected _scaleX!: IBaseScale;\n get scaleX() {\n return this._scaleX;\n }\n setScaleX(s: IBaseScale) {\n this._scaleX = s;\n }\n\n protected _scaleY!: IBaseScale;\n get scaleY() {\n return this._scaleY;\n }\n setScaleY(s: IBaseScale) {\n this._scaleY = s;\n }\n\n protected _scaleZ?: IBaseScale;\n get scaleZ() {\n return this._scaleZ;\n }\n setScaleZ(s: IBaseScale) {\n this._scaleZ = s;\n }\n\n _xAxisHelper!: IAxisHelper;\n getXAxisHelper() {\n return this._xAxisHelper;\n }\n setXAxisHelper(h: IAxisHelper) {\n this._xAxisHelper = h;\n this.onXAxisHelperUpdate();\n }\n\n _yAxisHelper!: IAxisHelper;\n getYAxisHelper() {\n return this._yAxisHelper;\n }\n setYAxisHelper(h: IAxisHelper) {\n this._yAxisHelper = h;\n this.onYAxisHelperUpdate();\n }\n\n _zAxisHelper?: IAxisHelper;\n getZAxisHelper() {\n return this._zAxisHelper;\n }\n setZAxisHelper(h: IAxisHelper) {\n this._zAxisHelper = h;\n this.onYAxisHelperUpdate();\n }\n\n protected _sortDataByAxis: boolean = false;\n get sortDataByAxis() {\n return this._sortDataByAxis;\n }\n\n getStatisticFields() {\n const fields: { key: string; operations: StatisticOperations }[] = [];\n if (this.getXAxisHelper()?.getScale) {\n (this._fieldX2 ? [...this._fieldX, this._fieldX2] : this._fieldX).forEach(f => {\n const result: { key: string; operations: Array<'max' | 'min' | 'values'> } = { key: f, operations: [] };\n if (isContinuous(this.getXAxisHelper().getScale(0).type)) {\n result.operations = ['max', 'min'];\n } else {\n result.operations = ['values'];\n }\n fields.push(result);\n });\n }\n if (this.getYAxisHelper()?.getScale) {\n (this._fieldY2 ? [...this._fieldY, this._fieldY2] : this._fieldY).forEach(f => {\n const result: { key: string; operations: Array<'max' | 'min' | 'values'> } = { key: f, operations: [] };\n if (isContinuous(this.getYAxisHelper().getScale(0).type)) {\n result.operations = ['max', 'min'];\n } else {\n result.operations = ['values'];\n }\n fields.push(result);\n });\n }\n if (this._fieldZ && this.getZAxisHelper()?.getScale) {\n this._fieldZ.forEach(f => {\n const result: { key: string; operations: Array<'max' | 'min' | 'values'> } = { key: f, operations: [] };\n if (isContinuous(this.getZAxisHelper().getScale(0).type)) {\n result.operations = ['max', 'min'];\n } else {\n result.operations = ['values'];\n }\n fields.push(result);\n });\n }\n if (this.getStack()) {\n fields.push({\n key: this.getStackValueField(),\n operations: ['allValid']\n });\n }\n return fields;\n }\n\n getGroupFields() {\n return this.direction === 'vertical' ? this._fieldX : this._fieldY;\n }\n\n getStackGroupFields(): string[] {\n return this.getGroupFields();\n }\n\n getStackValueField() {\n // TODO: hack\n if (this.direction === Direction.vertical) {\n return array(this._spec.yField)[0];\n }\n return array(this._spec.xField)[0];\n }\n\n setValueFieldToStack(): void {\n if (this.direction === Direction.vertical) {\n this.setFieldY(STACK_FIELD_END);\n this.setFieldY2(STACK_FIELD_START);\n } else {\n this.setFieldX(STACK_FIELD_END);\n this.setFieldX2(STACK_FIELD_START);\n }\n }\n\n setValueFieldToPercent(): void {\n if (this.direction === Direction.vertical) {\n this.setFieldY(STACK_FIELD_END_PERCENT);\n this.setFieldY2(STACK_FIELD_START_PERCENT);\n } else {\n this.setFieldX(STACK_FIELD_END_PERCENT);\n this.setFieldX2(STACK_FIELD_START_PERCENT);\n }\n }\n\n setValueFieldToStackOffsetSilhouette(): void {\n if (this.direction === Direction.vertical) {\n this.setFieldY(STACK_FIELD_END_OffsetSilhouette);\n this.setFieldY2(STACK_FIELD_START_OffsetSilhouette);\n } else {\n this.setFieldX(STACK_FIELD_END_OffsetSilhouette);\n this.setFieldX2(STACK_FIELD_START_OffsetSilhouette);\n }\n }\n\n onXAxisHelperUpdate(): void {\n this.onMarkPositionUpdate();\n }\n\n onYAxisHelperUpdate(): void {\n this.onMarkPositionUpdate();\n }\n\n onZAxisHelperUpdate(): void {\n this.onMarkPositionUpdate();\n }\n\n setAttrFromSpec() {\n super.setAttrFromSpec();\n this.setFieldX(this._spec.xField);\n this.setFieldY(this._spec.yField);\n this.setFieldZ(this._spec.zField);\n this._specXField = array(this._spec.xField);\n this._specYField = array(this._spec.yField);\n if (isValid(this._spec.direction)) {\n this._direction = this._spec.direction;\n }\n\n this.setFieldX2(this._spec?.x2Field);\n this.setFieldY2(this._spec?.y2Field);\n\n if (this._stack) {\n this.setValueFieldToStack();\n }\n if (this._percent) {\n this.setValueFieldToPercent();\n }\n if (this._stackOffsetSilhouette) {\n this.setValueFieldToStackOffsetSilhouette();\n }\n\n if (isValid(this._spec.sortDataByAxis)) {\n this._sortDataByAxis = this._spec.sortDataByAxis === true;\n }\n }\n\n dataToPosition(datum: Datum): IPoint | null {\n if (!datum) {\n return null;\n }\n return {\n x: this.dataToPositionX(datum),\n y: this.dataToPositionY(datum)\n } as IPoint;\n }\n\n protected _buildMarkAttributeContext() {\n super._buildMarkAttributeContext();\n // position\n this._markAttributeContext.valueToX = this.valueToPositionX.bind(this);\n this._markAttributeContext.valueToY = this.valueToPositionY.bind(this);\n this._markAttributeContext.xBandwidth = (depth: number = 0) => this.getXAxisHelper().getBandwidth?.(depth) ?? 0;\n this._markAttributeContext.yBandwidth = (depth: number = 0) => this.getYAxisHelper().getBandwidth?.(depth) ?? 0;\n this._markAttributeContext.valueToPosition = this.valueToPosition.bind(this);\n }\n\n valueToPosition(xValue: StringOrNumber | StringOrNumber[], yValue: StringOrNumber | StringOrNumber[]) {\n return {\n x: this.valueToPositionX(xValue),\n y: this.valueToPositionY(yValue)\n };\n }\n\n protected _axisPosition(helper: IAxisHelper, value: StringOrNumber | StringOrNumber[], datum?: any) {\n this._scaleConfig.datum = datum;\n if (helper.isContinuous) {\n return helper.valueToPosition(value, this._scaleConfig);\n }\n return helper.dataToPosition(array(value), this._scaleConfig);\n }\n\n valueToPositionX(value: StringOrNumber | StringOrNumber[], datum?: any) {\n return this._axisPosition(this._xAxisHelper, value, datum);\n }\n valueToPositionY(value: StringOrNumber | StringOrNumber[], datum?: any) {\n return this._axisPosition(this._yAxisHelper, value, datum);\n }\n\n protected _positionXEncoder?: (datum: Datum) => number;\n\n dataToPositionX(datum: Datum): number {\n if (this._positionXEncoder) {\n return this._positionXEncoder(datum);\n }\n\n if (!this._xAxisHelper) {\n this._positionXEncoder = (datum: Datum) => Number.NaN;\n\n return Number.NaN;\n }\n const fields = this._xAxisHelper.getFields ? this._xAxisHelper.getFields() : this._fieldX;\n if (!fields || fields.length === 0) {\n this._positionXEncoder = (datum: Datum) => null;\n return null;\n }\n\n if (this._xAxisHelper.isContinuous) {\n this._positionXEncoder = (datum: Datum) => {\n this._scaleConfig.datum = datum;\n return this._xAxisHelper.valueToPosition(this.getDatumPositionValue(datum, fields[0]), this._scaleConfig);\n };\n } else {\n this._positionXEncoder = (datum: Datum) => {\n this._scaleConfig.datum = datum;\n return this._xAxisHelper.dataToPosition(array(this.getDatumPositionValues(datum, fields)), this._scaleConfig);\n };\n }\n\n return this._positionXEncoder(datum);\n }\n\n protected _positionYEncoder?: (datum: Datum) => number;\n\n dataToPositionY(datum: Datum): number {\n if (this._positionYEncoder) {\n return this._positionYEncoder(datum);\n }\n\n if (!this._yAxisHelper) {\n this._positionYEncoder = (datum: Datum) => Number.NaN;\n return Number.NaN;\n }\n const fields = this._yAxisHelper.getFields ? this._yAxisHelper.getFields() : this._fieldY;\n if (!fields || fields.length === 0) {\n this._positionYEncoder = (datum: Datum) => null;\n return null;\n }\n\n if (this._yAxisHelper.isContinuous) {\n this._positionYEncoder = (datum: Datum) => {\n this._scaleConfig.datum = datum;\n return this._yAxisHelper.valueToPosition(this.getDatumPositionValue(datum, fields[0]), this._scaleConfig);\n };\n } else {\n this._positionYEncoder = (datum: Datum) => {\n this._scaleConfig.datum = datum;\n return this._yAxisHelper.dataToPosition(array(this.getDatumPositionValues(datum, fields)), this._scaleConfig);\n };\n }\n\n return this._positionYEncoder(datum);\n }\n\n dataToPositionZ(datum: Datum): number {\n if (!this._zAxisHelper) {\n return Number.NaN;\n }\n const { dataToPosition } = this._zAxisHelper;\n\n return dataToPosition(this.getDatumPositionValues(datum, this._fieldZ), {\n bandPosition: this._bandPosition\n });\n }\n\n dataToPositionX1(datum: Datum): number {\n if (!this._xAxisHelper) {\n return Number.NaN;\n }\n return this._fieldX2 && this._fieldX2 in datum\n ? this.valueToPositionX(this.getDatumPositionValues(datum, this._fieldX2))\n : this.valueToPositionX(0);\n }\n\n dataToPositionY1(datum: Datum): number {\n if (!this._yAxisHelper) {\n return Number.NaN;\n }\n return this._fieldY2 && this._fieldY2 in datum\n ? this.valueToPositionY(this.getDatumPositionValues(datum, this._fieldY2))\n : this.valueToPositionY(0);\n }\n\n positionToData(p: IPoint): IPoint | null {\n if (!p) {\n return null;\n }\n return {\n x: this.positionToDataX(p.x),\n y: this.positionToDataY(p.y)\n };\n }\n\n positionToDataX(xPos: number): any | null {\n if (!this._scaleX) {\n return null;\n }\n return this._scaleX.invert(xPos);\n }\n\n positionToDataY(yPos: number): any | null {\n if (!this._scaleY) {\n return null;\n }\n return this._scaleY.invert(yPos);\n }\n\n getRegionRectLeft(): number {\n if (!this._xAxisHelper) {\n return Number.NaN;\n }\n const { getScale } = this._xAxisHelper;\n return getScale(0).range()[0];\n }\n\n getRegionRectRight(): number {\n if (!this._xAxisHelper) {\n return Number.NaN;\n }\n const { getScale } = this._xAxisHelper;\n return getScale(0).range()[1];\n }\n\n afterInitMark(): void {\n super.afterInitMark();\n this.setFieldX(this._fieldX);\n this.setFieldY(this._fieldY);\n this._trigger.setStateKeys([...this._fieldX, ...this._fieldY]);\n this._buildScaleConfig();\n }\n\n getDimensionField(): string[] {\n if (this._direction === Direction.vertical) {\n return this._specXField;\n }\n return this._specYField;\n }\n\n getMeasureField(): string[] {\n if (this._direction === Direction.vertical) {\n return this._specYField;\n }\n return this._specXField;\n }\n\n viewDataUpdate(d: DataView): void {\n super.viewDataUpdate(d);\n if (this.sortDataByAxis) {\n this._sortDataInAxisDomain();\n }\n }\n\n _sortDataInAxisDomain() {\n if (this.getViewData()?.latestData?.length) {\n sortDataInAxisHelper(\n this._direction === Direction.horizontal ? this._yAxisHelper : this._xAxisHelper,\n this._direction === Direction.horizontal ? this._fieldY[0] : this._fieldX[0],\n this.getViewData().latestData\n );\n this._data?.updateData(true);\n }\n }\n\n protected _getInvalidDefined = (datum: Datum) => {\n if (this._xAxisHelper?.isContinuous) {\n if (!couldBeValidNumber(datum[this._specXField[0]])) {\n return false;\n }\n }\n if (this._yAxisHelper?.isContinuous) {\n if (!couldBeValidNumber(datum[this._specYField[0]])) {\n return false;\n }\n }\n return true;\n };\n\n reInit(spec: T) {\n if (this._positionXEncoder) {\n this._positionXEncoder = null;\n }\n if (this._positionYEncoder) {\n this._positionYEncoder = null;\n }\n\n super.reInit(spec);\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/series/cartesian/cartesian.ts"],"names":[],"mappings":"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","file":"cartesian.js","sourcesContent":["import type { DataView } from '@visactor/vdataset';\nimport type { ICartesianSeries } from '../interface';\nimport { BaseSeries } from '../base/base-series';\nimport type { IPoint } from '../../typings/coordinate';\nimport type { IBaseScale } from '@visactor/vscale';\nimport {\n STACK_FIELD_END,\n STACK_FIELD_END_PERCENT,\n STACK_FIELD_END_OffsetSilhouette,\n STACK_FIELD_START,\n STACK_FIELD_START_PERCENT,\n STACK_FIELD_START_OffsetSilhouette\n} from '../../constant';\nimport type { IAxisHelper } from '../../component/axis/cartesian/interface';\nimport type { DirectionType } from '../../typings/space';\n// eslint-disable-next-line no-duplicate-imports\nimport { Direction } from '../../typings/space';\nimport type { Datum, StringOrNumber } from '../../typings';\nimport { couldBeValidNumber } from '../../util/type';\nimport { array, isValid } from '@visactor/vutils';\n// eslint-disable-next-line no-duplicate-imports\nimport { isContinuous } from '@visactor/vscale';\nimport type { StatisticOperations } from '../../data/transforms/dimension-statistics';\nimport type { ICartesianSeriesSpec } from './interface';\nimport { sortDataInAxisHelper } from '../util/utils';\nimport type { IAxisLocationCfg } from '../../component/axis';\n\nexport abstract class CartesianSeries<T extends ICartesianSeriesSpec = ICartesianSeriesSpec>\n extends BaseSeries<T>\n implements ICartesianSeries\n{\n readonly coordinate: 'cartesian' = 'cartesian';\n protected _bandPosition = 0.5;\n protected _scaleConfig: IAxisLocationCfg = {\n bandPosition: this._bandPosition\n };\n protected _buildScaleConfig() {\n this._scaleConfig = {\n bandPosition: this._bandPosition\n };\n }\n\n protected _fieldX!: string[];\n get fieldX() {\n return this._fieldX;\n }\n setFieldX(f: string | string[]) {\n this._fieldX = array(f);\n }\n\n protected _fieldY!: string[];\n get fieldY() {\n return this._fieldY;\n }\n setFieldY(f: string | string[]) {\n this._fieldY = array(f);\n }\n\n protected _fieldZ?: string[];\n get fieldZ(): string[] | undefined {\n return this._fieldZ;\n }\n setFieldZ(f?: string | string[]) {\n this._fieldZ = f && array(f);\n }\n\n protected _fieldX2!: string;\n get fieldX2() {\n return this._fieldX2;\n }\n setFieldX2(f: string) {\n this._fieldX2 = f;\n }\n\n protected _fieldY2!: string;\n get fieldY2() {\n return this._fieldY2;\n }\n setFieldY2(f: string) {\n this._fieldY2 = f;\n }\n\n protected _specXField: string[];\n protected _specYField: string[];\n\n protected _direction: DirectionType = Direction.vertical;\n get direction() {\n return this._direction;\n }\n\n protected _scaleX!: IBaseScale;\n get scaleX() {\n return this._scaleX;\n }\n setScaleX(s: IBaseScale) {\n this._scaleX = s;\n }\n\n protected _scaleY!: IBaseScale;\n get scaleY() {\n return this._scaleY;\n }\n setScaleY(s: IBaseScale) {\n this._scaleY = s;\n }\n\n protected _scaleZ?: IBaseScale;\n get scaleZ() {\n return this._scaleZ;\n }\n setScaleZ(s: IBaseScale) {\n this._scaleZ = s;\n }\n\n _xAxisHelper!: IAxisHelper;\n getXAxisHelper() {\n return this._xAxisHelper;\n }\n setXAxisHelper(h: IAxisHelper) {\n this._xAxisHelper = h;\n this.onXAxisHelperUpdate();\n }\n\n _yAxisHelper!: IAxisHelper;\n getYAxisHelper() {\n return this._yAxisHelper;\n }\n setYAxisHelper(h: IAxisHelper) {\n this._yAxisHelper = h;\n this.onYAxisHelperUpdate();\n }\n\n _zAxisHelper?: IAxisHelper;\n getZAxisHelper() {\n return this._zAxisHelper;\n }\n setZAxisHelper(h: IAxisHelper) {\n this._zAxisHelper = h;\n this.onYAxisHelperUpdate();\n }\n\n protected _sortDataByAxis: boolean = false;\n get sortDataByAxis() {\n return this._sortDataByAxis;\n }\n\n getStatisticFields() {\n const fields: { key: string; operations: StatisticOperations }[] = [];\n if (this.getXAxisHelper()?.getScale) {\n (this._fieldX2 ? [...this._fieldX, this._fieldX2] : this._fieldX).forEach(f => {\n const result: { key: string; operations: Array<'max' | 'min' | 'values'> } = { key: f, operations: [] };\n if (isContinuous(this.getXAxisHelper().getScale(0).type)) {\n result.operations = ['max', 'min'];\n } else {\n result.operations = ['values'];\n }\n fields.push(result);\n });\n }\n if (this.getYAxisHelper()?.getScale) {\n (this._fieldY2 ? [...this._fieldY, this._fieldY2] : this._fieldY).forEach(f => {\n const result: { key: string; operations: Array<'max' | 'min' | 'values'> } = { key: f, operations: [] };\n if (isContinuous(this.getYAxisHelper().getScale(0).type)) {\n result.operations = ['max', 'min'];\n } else {\n result.operations = ['values'];\n }\n fields.push(result);\n });\n }\n if (this._fieldZ && this.getZAxisHelper()?.getScale) {\n this._fieldZ.forEach(f => {\n const result: { key: string; operations: Array<'max' | 'min' | 'values'> } = { key: f, operations: [] };\n if (isContinuous(this.getZAxisHelper().getScale(0).type)) {\n result.operations = ['max', 'min'];\n } else {\n result.operations = ['values'];\n }\n fields.push(result);\n });\n }\n if (this.getStack()) {\n fields.push({\n key: this.getStackValueField(),\n operations: ['allValid']\n });\n }\n return fields;\n }\n\n getGroupFields() {\n return this.direction === 'vertical' ? this._fieldX : this._fieldY;\n }\n\n getStackGroupFields(): string[] {\n return this.getGroupFields();\n }\n\n getStackValueField() {\n // TODO: hack\n if (this.direction === Direction.vertical) {\n return array(this._spec.yField)[0];\n }\n return array(this._spec.xField)[0];\n }\n\n setValueFieldToStack(): void {\n if (this.direction === Direction.vertical) {\n this.setFieldY(STACK_FIELD_END);\n this.setFieldY2(STACK_FIELD_START);\n } else {\n this.setFieldX(STACK_FIELD_END);\n this.setFieldX2(STACK_FIELD_START);\n }\n }\n\n setValueFieldToPercent(): void {\n if (this.direction === Direction.vertical) {\n this.setFieldY(STACK_FIELD_END_PERCENT);\n this.setFieldY2(STACK_FIELD_START_PERCENT);\n } else {\n this.setFieldX(STACK_FIELD_END_PERCENT);\n this.setFieldX2(STACK_FIELD_START_PERCENT);\n }\n }\n\n setValueFieldToStackOffsetSilhouette(): void {\n if (this.direction === Direction.vertical) {\n this.setFieldY(STACK_FIELD_END_OffsetSilhouette);\n this.setFieldY2(STACK_FIELD_START_OffsetSilhouette);\n } else {\n this.setFieldX(STACK_FIELD_END_OffsetSilhouette);\n this.setFieldX2(STACK_FIELD_START_OffsetSilhouette);\n }\n }\n\n onXAxisHelperUpdate(): void {\n this.onMarkPositionUpdate();\n }\n\n onYAxisHelperUpdate(): void {\n this.onMarkPositionUpdate();\n }\n\n onZAxisHelperUpdate(): void {\n this.onMarkPositionUpdate();\n }\n\n setAttrFromSpec() {\n super.setAttrFromSpec();\n this.setFieldX(this._spec.xField);\n this.setFieldY(this._spec.yField);\n this.setFieldZ(this._spec.zField);\n this._specXField = array(this._spec.xField);\n this._specYField = array(this._spec.yField);\n if (isValid(this._spec.direction)) {\n this._direction = this._spec.direction;\n }\n\n this.setFieldX2(this._spec?.x2Field);\n this.setFieldY2(this._spec?.y2Field);\n\n if (this._stack) {\n this.setValueFieldToStack();\n }\n if (this._percent) {\n this.setValueFieldToPercent();\n }\n if (this._stackOffsetSilhouette) {\n this.setValueFieldToStackOffsetSilhouette();\n }\n\n if (isValid(this._spec.sortDataByAxis)) {\n this._sortDataByAxis = this._spec.sortDataByAxis === true;\n }\n }\n\n dataToPosition(datum: Datum): IPoint | null {\n if (!datum) {\n return null;\n }\n return {\n x: this.dataToPositionX(datum),\n y: this.dataToPositionY(datum)\n } as IPoint;\n }\n\n protected _buildMarkAttributeContext() {\n super._buildMarkAttributeContext();\n // position\n this._markAttributeContext.valueToX = this.valueToPositionX.bind(this);\n this._markAttributeContext.valueToY = this.valueToPositionY.bind(this);\n this._markAttributeContext.xBandwidth = (depth: number = 0) => this.getXAxisHelper().getBandwidth?.(depth) ?? 0;\n this._markAttributeContext.yBandwidth = (depth: number = 0) => this.getYAxisHelper().getBandwidth?.(depth) ?? 0;\n this._markAttributeContext.valueToPosition = this.valueToPosition.bind(this);\n }\n\n valueToPosition(xValue: StringOrNumber | StringOrNumber[], yValue: StringOrNumber | StringOrNumber[]) {\n return {\n x: this.valueToPositionX(xValue),\n y: this.valueToPositionY(yValue)\n };\n }\n\n protected _axisPosition(helper: IAxisHelper, value: StringOrNumber | StringOrNumber[], datum?: any) {\n this._scaleConfig.datum = datum;\n if (helper.isContinuous) {\n return helper.valueToPosition(value, this._scaleConfig);\n }\n return helper.dataToPosition(array(value), this._scaleConfig);\n }\n\n valueToPositionX(value: StringOrNumber | StringOrNumber[], datum?: any) {\n return this._axisPosition(this._xAxisHelper, value, datum);\n }\n valueToPositionY(value: StringOrNumber | StringOrNumber[], datum?: any) {\n return this._axisPosition(this._yAxisHelper, value, datum);\n }\n\n protected _positionXEncoder?: (datum: Datum) => number;\n\n dataToPositionX(datum: Datum): number {\n if (this._positionXEncoder) {\n return this._positionXEncoder(datum);\n }\n\n if (!this._xAxisHelper) {\n this._positionXEncoder = (datum: Datum) => Number.NaN;\n\n return Number.NaN;\n }\n const fields = this._xAxisHelper.getFields ? this._xAxisHelper.getFields() : this._fieldX;\n if (!fields || fields.length === 0) {\n this._positionXEncoder = (datum: Datum) => null;\n return null;\n }\n\n if (this._xAxisHelper.isContinuous) {\n this._positionXEncoder = (datum: Datum) => {\n this._scaleConfig.datum = datum;\n return this._xAxisHelper.valueToPosition(this.getDatumPositionValue(datum, fields[0]), this._scaleConfig);\n };\n } else {\n this._positionXEncoder = (datum: Datum) => {\n this._scaleConfig.datum = datum;\n return this._xAxisHelper.dataToPosition(array(this.getDatumPositionValues(datum, fields)), this._scaleConfig);\n };\n }\n\n return this._positionXEncoder(datum);\n }\n\n protected _positionYEncoder?: (datum: Datum) => number;\n\n dataToPositionY(datum: Datum): number {\n if (this._positionYEncoder) {\n return this._positionYEncoder(datum);\n }\n\n if (!this._yAxisHelper) {\n this._positionYEncoder = (datum: Datum) => Number.NaN;\n return Number.NaN;\n }\n const fields = this._yAxisHelper.getFields ? this._yAxisHelper.getFields() : this._fieldY;\n if (!fields || fields.length === 0) {\n this._positionYEncoder = (datum: Datum) => null;\n return null;\n }\n\n if (this._yAxisHelper.isContinuous) {\n this._positionYEncoder = (datum: Datum) => {\n this._scaleConfig.datum = datum;\n return this._yAxisHelper.valueToPosition(this.getDatumPositionValue(datum, fields[0]), this._scaleConfig);\n };\n } else {\n this._positionYEncoder = (datum: Datum) => {\n this._scaleConfig.datum = datum;\n return this._yAxisHelper.dataToPosition(array(this.getDatumPositionValues(datum, fields)), this._scaleConfig);\n };\n }\n\n return this._positionYEncoder(datum);\n }\n\n dataToPositionZ(datum: Datum): number {\n if (!this._zAxisHelper) {\n return Number.NaN;\n }\n const { dataToPosition } = this._zAxisHelper;\n\n return dataToPosition(this.getDatumPositionValues(datum, this._fieldZ), {\n bandPosition: this._bandPosition\n });\n }\n\n dataToPositionX1(datum: Datum): number {\n if (!this._xAxisHelper) {\n return Number.NaN;\n }\n return this._fieldX2 && this._fieldX2 in datum\n ? this.valueToPositionX(this.getDatumPositionValues(datum, this._fieldX2))\n : this.valueToPositionX(0);\n }\n\n dataToPositionY1(datum: Datum): number {\n if (!this._yAxisHelper) {\n return Number.NaN;\n }\n return this._fieldY2 && this._fieldY2 in datum\n ? this.valueToPositionY(this.getDatumPositionValues(datum, this._fieldY2))\n : this.valueToPositionY(0);\n }\n\n positionToData(p: IPoint): IPoint | null {\n if (!p) {\n return null;\n }\n return {\n x: this.positionToDataX(p.x),\n y: this.positionToDataY(p.y)\n };\n }\n\n positionToDataX(xPos: number): any | null {\n if (!this._scaleX) {\n return null;\n }\n return this._scaleX.invert(xPos);\n }\n\n positionToDataY(yPos: number): any | null {\n if (!this._scaleY) {\n return null;\n }\n return this._scaleY.invert(yPos);\n }\n\n getRegionRectLeft(): number {\n if (!this._xAxisHelper) {\n return Number.NaN;\n }\n const { getScale } = this._xAxisHelper;\n return getScale(0).range()[0];\n }\n\n getRegionRectRight(): number {\n if (!this._xAxisHelper) {\n return Number.NaN;\n }\n const { getScale } = this._xAxisHelper;\n return getScale(0).range()[1];\n }\n\n afterInitMark(): void {\n super.afterInitMark();\n this.setFieldX(this._fieldX);\n this.setFieldY(this._fieldY);\n this._trigger.setStateKeys([...this._fieldX, ...this._fieldY]);\n this._buildScaleConfig();\n }\n\n getDimensionField(): string[] {\n if (this._direction === Direction.vertical) {\n return this._specXField;\n }\n return this._specYField;\n }\n\n getMeasureField(): string[] {\n if (this._direction === Direction.vertical) {\n return this._specYField;\n }\n return this._specXField;\n }\n\n viewDataUpdate(d: DataView): void {\n super.viewDataUpdate(d);\n if (this.sortDataByAxis) {\n this._sortDataInAxisDomain();\n }\n }\n\n _sortDataInAxisDomain() {\n if (this.getViewData()?.latestData?.length) {\n sortDataInAxisHelper(\n this._direction === Direction.horizontal ? this._yAxisHelper : this._xAxisHelper,\n this._direction === Direction.horizontal ? this._fieldY[0] : this._fieldX[0],\n this.getViewData().latestData\n );\n this._data?.updateData(true);\n }\n }\n\n protected _getInvalidDefined = (datum: Datum) => {\n if (this._xAxisHelper?.isContinuous) {\n if (!couldBeValidNumber(datum[this._specXField[0]])) {\n return false;\n }\n }\n if (this._yAxisHelper?.isContinuous) {\n if (!couldBeValidNumber(datum[this._specYField[0]])) {\n return false;\n }\n }\n return true;\n };\n\n reInit(spec: T) {\n if (this._positionXEncoder) {\n this._positionXEncoder = null;\n }\n if (this._positionYEncoder) {\n this._positionYEncoder = null;\n }\n\n super.reInit(spec);\n }\n}\n"]}
|
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: !0
|
|
5
5
|
}), exports.registerCirclePackingSeries = exports.CirclePackingSeries = void 0;
|
|
6
6
|
|
|
7
|
-
const vutils_1 = require("@visactor/vutils"), factory_1 = require("../../core/factory"), type_1 = require("../interface/type"), cartesian_1 = require("../cartesian/cartesian"), register_1 = require("../../data/register"), circle_packing_1 = require("../../data/transforms/circle-packing"),
|
|
7
|
+
const vutils_1 = require("@visactor/vutils"), factory_1 = require("../../core/factory"), type_1 = require("../interface/type"), cartesian_1 = require("../cartesian/cartesian"), register_1 = require("../../data/register"), circle_packing_1 = require("../../data/transforms/circle-packing"), interface_1 = require("../../compile/mark/interface"), constant_1 = require("../../constant"), hierarchy_1 = require("../../constant/hierarchy"), flatten_1 = require("../../data/transforms/flatten"), tooltip_helper_1 = require("./tooltip-helper"), data_key_1 = require("../../data/transforms/data-key"), add_property_1 = require("../../data/transforms/add-property"), utils_1 = require("../../animation/utils"), config_1 = require("../../animation/config"), animation_1 = require("./animation"), drillable_1 = require("../../interaction/drill/drillable"), arc_1 = require("../../mark/arc"), text_1 = require("../../mark/text"), constant_2 = require("./constant");
|
|
8
8
|
|
|
9
9
|
class CirclePackingSeries extends cartesian_1.CartesianSeries {
|
|
10
10
|
constructor() {
|
|
@@ -148,11 +148,11 @@ class CirclePackingSeries extends cartesian_1.CartesianSeries {
|
|
|
148
148
|
initAnimation() {
|
|
149
149
|
var _a;
|
|
150
150
|
const appearPreset = null === (_a = this._spec.animationAppear) || void 0 === _a ? void 0 : _a.preset;
|
|
151
|
-
this.getMarksInType(
|
|
151
|
+
this.getMarksInType("arc").forEach((mark => {
|
|
152
152
|
var _a;
|
|
153
153
|
mark.setAnimationConfig((0, utils_1.animationConfig)(null === (_a = factory_1.Factory.getAnimationInKey("circlePacking")) || void 0 === _a ? void 0 : _a(void 0, appearPreset), (0,
|
|
154
154
|
utils_1.userAnimationConfig)(mark.name, this._spec, this._markAttributeContext)));
|
|
155
|
-
})), this.getMarksInType(
|
|
155
|
+
})), this.getMarksInType("text").forEach((mark => {
|
|
156
156
|
var _a;
|
|
157
157
|
mark.setAnimationConfig((0, utils_1.animationConfig)(null === (_a = factory_1.Factory.getAnimationInKey("scaleInOut")) || void 0 === _a ? void 0 : _a(), (0,
|
|
158
158
|
utils_1.userAnimationConfig)(mark.name, this._spec, this._markAttributeContext)));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/series/circle-packing/circle-packing.ts"],"names":[],"mappings":"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","file":"circle-packing.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\nimport { isNil, mixin } from '@visactor/vutils';\n\nimport type { ICirclePackingOpt } from '../../data/transforms/circle-packing';\nimport type { ICirclePackingSeriesSpec } from './interface';\n\nimport type { IMarkSpec } from '../../typings/spec/common';\nimport { Factory } from '../../core/factory';\nimport type { Datum, IArcMarkSpec, ITextMarkSpec } from '../../typings';\n\nimport type { SeriesMarkMap } from '../interface';\nimport { SeriesTypeEnum } from '../interface/type';\n\nimport { CartesianSeries } from '../cartesian/cartesian';\nimport { registerDataSetInstanceTransform } from '../../data/register';\nimport { circlePackingLayout } from '../../data/transforms/circle-packing';\nimport type { IMark } from '../../mark/interface';\nimport { MarkTypeEnum } from '../../mark/interface/type';\nimport type { IArcMark } from '../../mark/arc';\nimport { STATE_VALUE_ENUM } from '../../compile/mark/interface';\nimport { AttributeLevel, DEFAULT_DATA_KEY } from '../../constant';\nimport { DEFAULT_HIERARCHY_DEPTH, DEFAULT_HIERARCHY_ROOT } from '../../constant/hierarchy';\nimport type { CirclePackingNodeElement } from '@visactor/vgrammar-hierarchy';\nimport { flatten } from '../../data/transforms/flatten';\nimport { CirclePackingTooltipHelper } from './tooltip-helper';\nimport type { ITextMark } from '../../mark/text';\nimport { addHierarchyDataKey, initHierarchyKeyMap } from '../../data/transforms/data-key';\nimport { addVChartProperty } from '../../data/transforms/add-property';\nimport { animationConfig, userAnimationConfig } from '../../animation/utils';\nimport { registerScaleInOutAnimation } from '../../animation/config';\nimport type { IStateAnimateSpec } from '../../animation/spec';\nimport { registerCirclePackingAnimation, type CirclePackingAppearPreset } from './animation';\nimport type { IDrillable } from '../../interaction/drill/drillable';\nimport { Drillable } from '../../interaction/drill/drillable';\nimport { ArcMark, registerArcMark } from '../../mark/arc';\nimport { TextMark, registerTextMark } from '../../mark/text';\nimport { circlePackingSeriesMark } from './constant';\n\nexport class CirclePackingSeries<\n T extends ICirclePackingSeriesSpec = ICirclePackingSeriesSpec\n> extends CartesianSeries<T> {\n static readonly type: string = SeriesTypeEnum.circlePacking;\n type = SeriesTypeEnum.circlePacking;\n\n static readonly mark: SeriesMarkMap = circlePackingSeriesMark;\n\n // 映射字段\n protected _categoryField!: string;\n protected _valueField!: string;\n // 配置\n private _layoutPadding: number | number[];\n private _circlePacking: IMarkSpec<IArcMarkSpec>;\n private _label: IMarkSpec<ITextMarkSpec>;\n // Mark\n private _circlePackingMark: IArcMark;\n private _labelMark: ITextMark;\n\n // 钻取功能开启\n private _drill?: boolean;\n\n setCategoryField(f: string): string {\n this._categoryField = f;\n return this._categoryField;\n }\n\n getCategoryField() {\n return this._categoryField;\n }\n\n setValueField(f: string): string {\n this._valueField = f;\n return this._valueField;\n }\n\n getValueField() {\n return this._valueField;\n }\n\n getDimensionField() {\n return [this._categoryField];\n }\n\n getMeasureField(): string[] {\n return [this._valueField];\n }\n\n setAttrFromSpec(): void {\n super.setAttrFromSpec();\n\n this.setCategoryField(this._spec.categoryField);\n this.setValueField(this._spec.valueField);\n this.setSeriesField(this._spec.seriesField ?? DEFAULT_HIERARCHY_ROOT);\n\n if (this._spec.drill) {\n (this as unknown as IDrillable).initDrillable({\n event: this.event,\n mode: this._option.mode,\n drillField: () => this._spec.drillField ?? DEFAULT_DATA_KEY,\n getRawData: () => this.getRawData()\n });\n }\n\n this._circlePacking = this._spec.circlePacking;\n this._label = this._spec.label;\n this._layoutPadding = this._spec.layoutPadding;\n }\n\n protected initData(): void {\n super.initData();\n\n const rawData = this.getRawData();\n\n if (isNil(rawData)) {\n return;\n }\n\n if (this._spec.drill) {\n // 对原始数据进行上卷下钻筛选\n (this as unknown as IDrillable).initDrillableData(this._dataSet);\n }\n\n // 注册布局算法\n registerDataSetInstanceTransform(this._dataSet, 'circlePackingLayout', circlePackingLayout);\n // 注册扁平化算法\n registerDataSetInstanceTransform(this._dataSet, 'flatten', flatten);\n\n // 布局算法\n rawData.transform({\n type: 'circlePackingLayout',\n options: (): ICirclePackingOpt => {\n return {\n nodeKey: this._categoryField,\n padding: this._layoutPadding,\n includeRoot: false,\n width: this.getLayoutRect().width || 1,\n height: this.getLayoutRect().height || 1\n };\n }\n });\n\n // 布局结果进行扁平化处理\n rawData.transform({\n type: 'flatten',\n options: {\n callback: (node: CirclePackingNodeElement) => {\n if (node.datum) {\n const nodeData = node.datum[node.depth];\n return { ...node, ...nodeData };\n }\n return node;\n }\n }\n });\n }\n\n protected _addDataIndexAndKey() {\n const rawData = this.getRawData();\n if (isNil(rawData?.dataSet)) {\n return;\n }\n // 为原始数据, 添加层级属性\n registerDataSetInstanceTransform(rawData.dataSet, 'addVChartProperty', addVChartProperty);\n rawData.transform({\n type: 'addVChartProperty',\n options: {\n beforeCall: initHierarchyKeyMap.bind(this),\n call: addHierarchyDataKey\n }\n });\n }\n\n initMark(): void {\n this._initCirclePackingMark();\n this._initLabelMark();\n }\n\n initMarkStyle(): void {\n this._initCirclePackingMarkStyle();\n this._initLabelMarkStyle();\n }\n\n private _initCirclePackingMark() {\n if (this._circlePacking?.visible === false) {\n return;\n }\n\n const circlePacking = this._createMark(CirclePackingSeries.mark.circlePacking, {\n isSeriesMark: true,\n customShape: this._spec.circlePacking?.customShape\n }) as IArcMark;\n\n this._circlePackingMark = circlePacking;\n this._trigger.registerMark(circlePacking);\n }\n\n private _initCirclePackingMarkStyle() {\n if (isNil(this._circlePackingMark)) {\n return;\n }\n\n this.setMarkStyle(\n this._circlePackingMark,\n {\n x: d => d.x,\n y: d => d.y,\n outerRadius: d => d.radius,\n innerRadius: 0,\n startAngle: 0,\n endAngle: Math.PI * 2,\n fill: this.getColorAttribute(),\n zIndex: d => d.depth\n // Todo 内置根节点和叶节点透明度\n },\n STATE_VALUE_ENUM.STATE_NORMAL,\n AttributeLevel.Series\n );\n }\n\n private _initLabelMark() {\n if (this._label?.visible === false) {\n return;\n }\n const labelMark = this._createMark(CirclePackingSeries.mark.label, {\n isSeriesMark: false\n }) as IArcMark;\n\n this._labelMark = labelMark;\n this._trigger.registerMark(labelMark);\n }\n\n private _initLabelMarkStyle() {\n if (isNil(this._labelMark)) {\n return;\n }\n\n this.setMarkStyle(\n this._labelMark,\n {\n x: d => d.x,\n y: d => d.y,\n text: d => {\n return d.key;\n },\n cursor: 'pointer'\n },\n STATE_VALUE_ENUM.STATE_NORMAL,\n AttributeLevel.Series\n );\n }\n\n getStatisticFields() {\n const fields = super.getStatisticFields();\n return fields.concat([\n {\n key: this._categoryField,\n operations: ['values']\n },\n {\n key: this._valueField,\n operations: ['max', 'min']\n },\n {\n key: DEFAULT_HIERARCHY_DEPTH,\n operations: ['max', 'min', 'values']\n },\n {\n key: DEFAULT_HIERARCHY_ROOT,\n operations: ['values']\n }\n ]);\n }\n\n protected initTooltip() {\n this._tooltipHelper = new CirclePackingTooltipHelper(this);\n this._tooltipHelper.updateTooltipSpec();\n this._circlePackingMark && this._tooltipHelper.activeTriggerSet.mark.add(this._circlePackingMark);\n this._labelMark && this._tooltipHelper.activeTriggerSet.mark.add(this._labelMark);\n }\n\n initAnimation(): void {\n const appearPreset = (this._spec.animationAppear as IStateAnimateSpec<CirclePackingAppearPreset>)?.preset;\n\n this.getMarksInType(MarkTypeEnum.arc).forEach(mark => {\n mark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('circlePacking')?.(undefined, appearPreset),\n userAnimationConfig(mark.name, this._spec, this._markAttributeContext)\n )\n );\n });\n\n this.getMarksInType(MarkTypeEnum.text).forEach(mark => {\n mark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('scaleInOut')?.(),\n userAnimationConfig(mark.name, this._spec, this._markAttributeContext)\n )\n );\n });\n }\n\n initEvent() {\n super.initEvent();\n if (this._spec.drill) {\n (this as unknown as IDrillable).bindDrillEvent();\n }\n }\n\n onLayoutEnd(ctx: any): void {\n super.onLayoutEnd(ctx);\n this._rawData.reRunAllTransform();\n }\n\n // make sure this function fast\n protected _noAnimationDataKey(datum: Datum, index: number): unknown | undefined {\n return undefined;\n }\n\n getActiveMarks(): IMark[] {\n return [this._circlePackingMark];\n }\n}\n\nmixin(CirclePackingSeries, Drillable);\n\nexport const registerCirclePackingSeries = () => {\n Factory.registerSeries(CirclePackingSeries.type, CirclePackingSeries);\n registerArcMark();\n registerTextMark();\n registerScaleInOutAnimation();\n registerCirclePackingAnimation();\n};\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/series/circle-packing/circle-packing.ts"],"names":[],"mappings":";;;AACA,6CAAgD;AAMhD,gDAA6C;AAI7C,4CAAmD;AAEnD,sDAAyD;AACzD,kDAAuE;AACvE,yEAA2E;AAI3E,4DAAgE;AAChE,6CAAkE;AAClE,wDAA2F;AAE3F,2DAAwD;AACxD,qDAA8D;AAE9D,6DAA0F;AAC1F,qEAAuE;AACvE,iDAA6E;AAC7E,mDAAqE;AAErE,2CAA6F;AAE7F,iEAA8D;AAC9D,wCAA0D;AAC1D,0CAA6D;AAC7D,yCAAqD;AAErD,MAAa,mBAEX,SAAQ,2BAAkB;IAF5B;;QAIE,SAAI,GAAG,qBAAc,CAAC,aAAa,CAAC;IAuRtC,CAAC;IArQC,gBAAgB,CAAC,CAAS;QACxB,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;QACxB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IAED,aAAa,CAAC,CAAS;QACrB,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;QACrB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,aAAa;QACX,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,iBAAiB;QACf,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC/B,CAAC;IAED,eAAe;QACb,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC5B,CAAC;IAED,eAAe;;QACb,KAAK,CAAC,eAAe,EAAE,CAAC;QAExB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAChD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC1C,IAAI,CAAC,cAAc,CAAC,MAAA,IAAI,CAAC,KAAK,CAAC,WAAW,mCAAI,kCAAsB,CAAC,CAAC;QAEtE,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;YACnB,IAA8B,CAAC,aAAa,CAAC;gBAC5C,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;gBACvB,UAAU,EAAE,GAAG,EAAE,WAAC,OAAA,MAAA,IAAI,CAAC,KAAK,CAAC,UAAU,mCAAI,2BAAgB,CAAA,EAAA;gBAC3D,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,EAAE;aACpC,CAAC,CAAC;SACJ;QAED,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;QAC/C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;QAC/B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;IACjD,CAAC;IAES,QAAQ;QAChB,KAAK,CAAC,QAAQ,EAAE,CAAC;QAEjB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAElC,IAAI,IAAA,cAAK,EAAC,OAAO,CAAC,EAAE;YAClB,OAAO;SACR;QAED,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;YAEnB,IAA8B,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SAClE;QAGD,IAAA,2CAAgC,EAAC,IAAI,CAAC,QAAQ,EAAE,qBAAqB,EAAE,oCAAmB,CAAC,CAAC;QAE5F,IAAA,2CAAgC,EAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,iBAAO,CAAC,CAAC;QAGpE,OAAO,CAAC,SAAS,CAAC;YAChB,IAAI,EAAE,qBAAqB;YAC3B,OAAO,EAAE,GAAsB,EAAE;gBAC/B,OAAO;oBACL,OAAO,EAAE,IAAI,CAAC,cAAc;oBAC5B,OAAO,EAAE,IAAI,CAAC,cAAc;oBAC5B,WAAW,EAAE,KAAK;oBAClB,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,KAAK,IAAI,CAAC;oBACtC,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,MAAM,IAAI,CAAC;iBACzC,CAAC;YACJ,CAAC;SACF,CAAC,CAAC;QAGH,OAAO,CAAC,SAAS,CAAC;YAChB,IAAI,EAAE,SAAS;YACf,OAAO,EAAE;gBACP,QAAQ,EAAE,CAAC,IAA8B,EAAE,EAAE;oBAC3C,IAAI,IAAI,CAAC,KAAK,EAAE;wBACd,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;wBACxC,uCAAY,IAAI,GAAK,QAAQ,EAAG;qBACjC;oBACD,OAAO,IAAI,CAAC;gBACd,CAAC;aACF;SACF,CAAC,CAAC;IACL,CAAC;IAES,mBAAmB;QAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAClC,IAAI,IAAA,cAAK,EAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC,EAAE;YAC3B,OAAO;SACR;QAED,IAAA,2CAAgC,EAAC,OAAO,CAAC,OAAO,EAAE,mBAAmB,EAAE,gCAAiB,CAAC,CAAC;QAC1F,OAAO,CAAC,SAAS,CAAC;YAChB,IAAI,EAAE,mBAAmB;YACzB,OAAO,EAAE;gBACP,UAAU,EAAE,8BAAmB,CAAC,IAAI,CAAC,IAAI,CAAC;gBAC1C,IAAI,EAAE,8BAAmB;aAC1B;SACF,CAAC,CAAC;IACL,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC9B,IAAI,CAAC,cAAc,EAAE,CAAC;IACxB,CAAC;IAED,aAAa;QACX,IAAI,CAAC,2BAA2B,EAAE,CAAC;QACnC,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC7B,CAAC;IAEO,sBAAsB;;QAC5B,IAAI,CAAA,MAAA,IAAI,CAAC,cAAc,0CAAE,OAAO,MAAK,KAAK,EAAE;YAC1C,OAAO;SACR;QAED,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,IAAI,CAAC,aAAa,EAAE;YAC7E,YAAY,EAAE,IAAI;YAClB,WAAW,EAAE,MAAA,IAAI,CAAC,KAAK,CAAC,aAAa,0CAAE,WAAW;SACnD,CAAa,CAAC;QAEf,IAAI,CAAC,kBAAkB,GAAG,aAAa,CAAC;QACxC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;IAC5C,CAAC;IAEO,2BAA2B;QACjC,IAAI,IAAA,cAAK,EAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE;YAClC,OAAO;SACR;QAED,IAAI,CAAC,YAAY,CACf,IAAI,CAAC,kBAAkB,EACvB;YACE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACX,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACX,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM;YAC1B,WAAW,EAAE,CAAC;YACd,UAAU,EAAE,CAAC;YACb,QAAQ,EAAE,IAAI,CAAC,EAAE,GAAG,CAAC;YACrB,IAAI,EAAE,IAAI,CAAC,iBAAiB,EAAE;YAC9B,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK;SAErB,EACD,4BAAgB,CAAC,YAAY,EAC7B,yBAAc,CAAC,MAAM,CACtB,CAAC;IACJ,CAAC;IAEO,cAAc;;QACpB,IAAI,CAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,OAAO,MAAK,KAAK,EAAE;YAClC,OAAO;SACR;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,EAAE;YACjE,YAAY,EAAE,KAAK;SACpB,CAAa,CAAC;QAEf,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IACxC,CAAC;IAEO,mBAAmB;QACzB,IAAI,IAAA,cAAK,EAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YAC1B,OAAO;SACR;QAED,IAAI,CAAC,YAAY,CACf,IAAI,CAAC,UAAU,EACf;YACE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACX,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACX,IAAI,EAAE,CAAC,CAAC,EAAE;gBACR,OAAO,CAAC,CAAC,GAAG,CAAC;YACf,CAAC;YACD,MAAM,EAAE,SAAS;SAClB,EACD,4BAAgB,CAAC,YAAY,EAC7B,yBAAc,CAAC,MAAM,CACtB,CAAC;IACJ,CAAC;IAED,kBAAkB;QAChB,MAAM,MAAM,GAAG,KAAK,CAAC,kBAAkB,EAAE,CAAC;QAC1C,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB;gBACE,GAAG,EAAE,IAAI,CAAC,cAAc;gBACxB,UAAU,EAAE,CAAC,QAAQ,CAAC;aACvB;YACD;gBACE,GAAG,EAAE,IAAI,CAAC,WAAW;gBACrB,UAAU,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC;aAC3B;YACD;gBACE,GAAG,EAAE,mCAAuB;gBAC5B,UAAU,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC;aACrC;YACD;gBACE,GAAG,EAAE,kCAAsB;gBAC3B,UAAU,EAAE,CAAC,QAAQ,CAAC;aACvB;SACF,CAAC,CAAC;IACL,CAAC;IAES,WAAW;QACnB,IAAI,CAAC,cAAc,GAAG,IAAI,2CAA0B,CAAC,IAAI,CAAC,CAAC;QAC3D,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,CAAC;QACxC,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAClG,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACpF,CAAC;IAED,aAAa;;QACX,MAAM,YAAY,GAAG,MAAC,IAAI,CAAC,KAAK,CAAC,eAAgE,0CAAE,MAAM,CAAC;QAE1G,IAAI,CAAC,cAAc,OAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;;YACnD,IAAI,CAAC,kBAAkB,CACrB,IAAA,uBAAe,EACb,MAAA,iBAAO,CAAC,iBAAiB,CAAC,eAAe,CAAC,0CAAG,SAAS,EAAE,YAAY,CAAC,EACrE,IAAA,2BAAmB,EAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,qBAAqB,CAAC,CACvE,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,cAAc,QAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;;YACpD,IAAI,CAAC,kBAAkB,CACrB,IAAA,uBAAe,EACb,MAAA,iBAAO,CAAC,iBAAiB,CAAC,YAAY,CAAC,2CAAI,EAC3C,IAAA,2BAAmB,EAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,qBAAqB,CAAC,CACvE,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED,SAAS;QACP,KAAK,CAAC,SAAS,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE;YACnB,IAA8B,CAAC,cAAc,EAAE,CAAC;SAClD;IACH,CAAC;IAED,WAAW,CAAC,GAAQ;QAClB,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACvB,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,CAAC;IACpC,CAAC;IAGS,mBAAmB,CAAC,KAAY,EAAE,KAAa;QACvD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,cAAc;QACZ,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IACnC,CAAC;;AA1RH,kDA2RC;AAxRiB,wBAAI,GAAW,qBAAc,CAAC,aAAa,CAAC;AAG5C,wBAAI,GAAkB,kCAAuB,CAAC;AAuRhE,IAAA,cAAK,EAAC,mBAAmB,EAAE,qBAAS,CAAC,CAAC;AAE/B,MAAM,2BAA2B,GAAG,GAAG,EAAE;IAC9C,iBAAO,CAAC,cAAc,CAAC,mBAAmB,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;IACtE,IAAA,qBAAe,GAAE,CAAC;IAClB,IAAA,uBAAgB,GAAE,CAAC;IACnB,IAAA,oCAA2B,GAAE,CAAC;IAC9B,IAAA,0CAA8B,GAAE,CAAC;AACnC,CAAC,CAAC;AANW,QAAA,2BAA2B,+BAMtC","file":"circle-packing.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\nimport { isNil, mixin } from '@visactor/vutils';\n\nimport type { ICirclePackingOpt } from '../../data/transforms/circle-packing';\nimport type { ICirclePackingSeriesSpec } from './interface';\n\nimport type { IMarkSpec } from '../../typings/spec/common';\nimport { Factory } from '../../core/factory';\nimport type { Datum, IArcMarkSpec, ITextMarkSpec } from '../../typings';\n\nimport type { SeriesMarkMap } from '../interface';\nimport { SeriesTypeEnum } from '../interface/type';\n\nimport { CartesianSeries } from '../cartesian/cartesian';\nimport { registerDataSetInstanceTransform } from '../../data/register';\nimport { circlePackingLayout } from '../../data/transforms/circle-packing';\nimport type { IMark } from '../../mark/interface';\nimport { MarkTypeEnum } from '../../mark/interface/type';\nimport type { IArcMark } from '../../mark/arc';\nimport { STATE_VALUE_ENUM } from '../../compile/mark/interface';\nimport { AttributeLevel, DEFAULT_DATA_KEY } from '../../constant';\nimport { DEFAULT_HIERARCHY_DEPTH, DEFAULT_HIERARCHY_ROOT } from '../../constant/hierarchy';\nimport type { CirclePackingNodeElement } from '@visactor/vgrammar-hierarchy';\nimport { flatten } from '../../data/transforms/flatten';\nimport { CirclePackingTooltipHelper } from './tooltip-helper';\nimport type { ITextMark } from '../../mark/text';\nimport { addHierarchyDataKey, initHierarchyKeyMap } from '../../data/transforms/data-key';\nimport { addVChartProperty } from '../../data/transforms/add-property';\nimport { animationConfig, userAnimationConfig } from '../../animation/utils';\nimport { registerScaleInOutAnimation } from '../../animation/config';\nimport type { IStateAnimateSpec } from '../../animation/spec';\nimport { registerCirclePackingAnimation, type CirclePackingAppearPreset } from './animation';\nimport type { IDrillable } from '../../interaction/drill/drillable';\nimport { Drillable } from '../../interaction/drill/drillable';\nimport { ArcMark, registerArcMark } from '../../mark/arc';\nimport { TextMark, registerTextMark } from '../../mark/text';\nimport { circlePackingSeriesMark } from './constant';\n\nexport class CirclePackingSeries<\n T extends ICirclePackingSeriesSpec = ICirclePackingSeriesSpec\n> extends CartesianSeries<T> {\n static readonly type: string = SeriesTypeEnum.circlePacking;\n type = SeriesTypeEnum.circlePacking;\n\n static readonly mark: SeriesMarkMap = circlePackingSeriesMark;\n\n // 映射字段\n protected _categoryField!: string;\n protected _valueField!: string;\n // 配置\n private _layoutPadding: number | number[];\n private _circlePacking: IMarkSpec<IArcMarkSpec>;\n private _label: IMarkSpec<ITextMarkSpec>;\n // Mark\n private _circlePackingMark: IArcMark;\n private _labelMark: ITextMark;\n\n // 钻取功能开启\n private _drill?: boolean;\n\n setCategoryField(f: string): string {\n this._categoryField = f;\n return this._categoryField;\n }\n\n getCategoryField() {\n return this._categoryField;\n }\n\n setValueField(f: string): string {\n this._valueField = f;\n return this._valueField;\n }\n\n getValueField() {\n return this._valueField;\n }\n\n getDimensionField() {\n return [this._categoryField];\n }\n\n getMeasureField(): string[] {\n return [this._valueField];\n }\n\n setAttrFromSpec(): void {\n super.setAttrFromSpec();\n\n this.setCategoryField(this._spec.categoryField);\n this.setValueField(this._spec.valueField);\n this.setSeriesField(this._spec.seriesField ?? DEFAULT_HIERARCHY_ROOT);\n\n if (this._spec.drill) {\n (this as unknown as IDrillable).initDrillable({\n event: this.event,\n mode: this._option.mode,\n drillField: () => this._spec.drillField ?? DEFAULT_DATA_KEY,\n getRawData: () => this.getRawData()\n });\n }\n\n this._circlePacking = this._spec.circlePacking;\n this._label = this._spec.label;\n this._layoutPadding = this._spec.layoutPadding;\n }\n\n protected initData(): void {\n super.initData();\n\n const rawData = this.getRawData();\n\n if (isNil(rawData)) {\n return;\n }\n\n if (this._spec.drill) {\n // 对原始数据进行上卷下钻筛选\n (this as unknown as IDrillable).initDrillableData(this._dataSet);\n }\n\n // 注册布局算法\n registerDataSetInstanceTransform(this._dataSet, 'circlePackingLayout', circlePackingLayout);\n // 注册扁平化算法\n registerDataSetInstanceTransform(this._dataSet, 'flatten', flatten);\n\n // 布局算法\n rawData.transform({\n type: 'circlePackingLayout',\n options: (): ICirclePackingOpt => {\n return {\n nodeKey: this._categoryField,\n padding: this._layoutPadding,\n includeRoot: false,\n width: this.getLayoutRect().width || 1,\n height: this.getLayoutRect().height || 1\n };\n }\n });\n\n // 布局结果进行扁平化处理\n rawData.transform({\n type: 'flatten',\n options: {\n callback: (node: CirclePackingNodeElement) => {\n if (node.datum) {\n const nodeData = node.datum[node.depth];\n return { ...node, ...nodeData };\n }\n return node;\n }\n }\n });\n }\n\n protected _addDataIndexAndKey() {\n const rawData = this.getRawData();\n if (isNil(rawData?.dataSet)) {\n return;\n }\n // 为原始数据, 添加层级属性\n registerDataSetInstanceTransform(rawData.dataSet, 'addVChartProperty', addVChartProperty);\n rawData.transform({\n type: 'addVChartProperty',\n options: {\n beforeCall: initHierarchyKeyMap.bind(this),\n call: addHierarchyDataKey\n }\n });\n }\n\n initMark(): void {\n this._initCirclePackingMark();\n this._initLabelMark();\n }\n\n initMarkStyle(): void {\n this._initCirclePackingMarkStyle();\n this._initLabelMarkStyle();\n }\n\n private _initCirclePackingMark() {\n if (this._circlePacking?.visible === false) {\n return;\n }\n\n const circlePacking = this._createMark(CirclePackingSeries.mark.circlePacking, {\n isSeriesMark: true,\n customShape: this._spec.circlePacking?.customShape\n }) as IArcMark;\n\n this._circlePackingMark = circlePacking;\n this._trigger.registerMark(circlePacking);\n }\n\n private _initCirclePackingMarkStyle() {\n if (isNil(this._circlePackingMark)) {\n return;\n }\n\n this.setMarkStyle(\n this._circlePackingMark,\n {\n x: d => d.x,\n y: d => d.y,\n outerRadius: d => d.radius,\n innerRadius: 0,\n startAngle: 0,\n endAngle: Math.PI * 2,\n fill: this.getColorAttribute(),\n zIndex: d => d.depth\n // Todo 内置根节点和叶节点透明度\n },\n STATE_VALUE_ENUM.STATE_NORMAL,\n AttributeLevel.Series\n );\n }\n\n private _initLabelMark() {\n if (this._label?.visible === false) {\n return;\n }\n const labelMark = this._createMark(CirclePackingSeries.mark.label, {\n isSeriesMark: false\n }) as IArcMark;\n\n this._labelMark = labelMark;\n this._trigger.registerMark(labelMark);\n }\n\n private _initLabelMarkStyle() {\n if (isNil(this._labelMark)) {\n return;\n }\n\n this.setMarkStyle(\n this._labelMark,\n {\n x: d => d.x,\n y: d => d.y,\n text: d => {\n return d.key;\n },\n cursor: 'pointer'\n },\n STATE_VALUE_ENUM.STATE_NORMAL,\n AttributeLevel.Series\n );\n }\n\n getStatisticFields() {\n const fields = super.getStatisticFields();\n return fields.concat([\n {\n key: this._categoryField,\n operations: ['values']\n },\n {\n key: this._valueField,\n operations: ['max', 'min']\n },\n {\n key: DEFAULT_HIERARCHY_DEPTH,\n operations: ['max', 'min', 'values']\n },\n {\n key: DEFAULT_HIERARCHY_ROOT,\n operations: ['values']\n }\n ]);\n }\n\n protected initTooltip() {\n this._tooltipHelper = new CirclePackingTooltipHelper(this);\n this._tooltipHelper.updateTooltipSpec();\n this._circlePackingMark && this._tooltipHelper.activeTriggerSet.mark.add(this._circlePackingMark);\n this._labelMark && this._tooltipHelper.activeTriggerSet.mark.add(this._labelMark);\n }\n\n initAnimation(): void {\n const appearPreset = (this._spec.animationAppear as IStateAnimateSpec<CirclePackingAppearPreset>)?.preset;\n\n this.getMarksInType(MarkTypeEnum.arc).forEach(mark => {\n mark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('circlePacking')?.(undefined, appearPreset),\n userAnimationConfig(mark.name, this._spec, this._markAttributeContext)\n )\n );\n });\n\n this.getMarksInType(MarkTypeEnum.text).forEach(mark => {\n mark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('scaleInOut')?.(),\n userAnimationConfig(mark.name, this._spec, this._markAttributeContext)\n )\n );\n });\n }\n\n initEvent() {\n super.initEvent();\n if (this._spec.drill) {\n (this as unknown as IDrillable).bindDrillEvent();\n }\n }\n\n onLayoutEnd(ctx: any): void {\n super.onLayoutEnd(ctx);\n this._rawData.reRunAllTransform();\n }\n\n // make sure this function fast\n protected _noAnimationDataKey(datum: Datum, index: number): unknown | undefined {\n return undefined;\n }\n\n getActiveMarks(): IMark[] {\n return [this._circlePackingMark];\n }\n}\n\nmixin(CirclePackingSeries, Drillable);\n\nexport const registerCirclePackingSeries = () => {\n Factory.registerSeries(CirclePackingSeries.type, CirclePackingSeries);\n registerArcMark();\n registerTextMark();\n registerScaleInOutAnimation();\n registerCirclePackingAnimation();\n};\n"]}
|
|
@@ -4,12 +4,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: !0
|
|
5
5
|
}), exports.circlePackingSeriesMark = void 0;
|
|
6
6
|
|
|
7
|
-
const
|
|
7
|
+
const constant_1 = require("../base/constant");
|
|
8
8
|
|
|
9
9
|
exports.circlePackingSeriesMark = Object.assign(Object.assign({}, constant_1.baseSeriesMark), {
|
|
10
|
-
|
|
11
|
-
name:
|
|
12
|
-
type:
|
|
10
|
+
circlePacking: {
|
|
11
|
+
name: "circlePacking",
|
|
12
|
+
type: "arc"
|
|
13
13
|
}
|
|
14
14
|
});
|
|
15
15
|
//# sourceMappingURL=constant.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/series/circle-packing/constant.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"sources":["../src/series/circle-packing/constant.ts"],"names":[],"mappings":";;;AACA,+CAAkD;AAIrC,QAAA,uBAAuB,mCAC/B,yBAAc,KACjB,iBAAkC,EAAE,EAAE,IAAI,iBAAkC,EAAE,IAAI,OAAkB,EAAE,IACtG","file":"constant.js","sourcesContent":["import { MarkTypeEnum } from '../../mark/interface/type';\nimport { baseSeriesMark } from '../base/constant';\nimport type { SeriesMarkMap } from '../interface/common';\nimport { SeriesMarkNameEnum } from '../interface/type';\n\nexport const circlePackingSeriesMark: SeriesMarkMap = {\n ...baseSeriesMark,\n [SeriesMarkNameEnum.circlePacking]: { name: SeriesMarkNameEnum.circlePacking, type: MarkTypeEnum.arc }\n};\n"]}
|
|
@@ -4,24 +4,24 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: !0
|
|
5
5
|
}), exports.correlationSeriesMark = void 0;
|
|
6
6
|
|
|
7
|
-
const
|
|
7
|
+
const constant_1 = require("../base/constant");
|
|
8
8
|
|
|
9
9
|
exports.correlationSeriesMark = Object.assign(Object.assign({}, constant_1.baseSeriesMark), {
|
|
10
|
-
|
|
11
|
-
name:
|
|
12
|
-
type:
|
|
10
|
+
nodePoint: {
|
|
11
|
+
name: "nodePoint",
|
|
12
|
+
type: "symbol"
|
|
13
13
|
},
|
|
14
|
-
|
|
15
|
-
name:
|
|
16
|
-
type:
|
|
14
|
+
ripplePoint: {
|
|
15
|
+
name: "ripplePoint",
|
|
16
|
+
type: "ripple"
|
|
17
17
|
},
|
|
18
|
-
|
|
19
|
-
name:
|
|
20
|
-
type:
|
|
18
|
+
centerPoint: {
|
|
19
|
+
name: "centerPoint",
|
|
20
|
+
type: "symbol"
|
|
21
21
|
},
|
|
22
|
-
|
|
23
|
-
name:
|
|
24
|
-
type:
|
|
22
|
+
centerLabel: {
|
|
23
|
+
name: "centerLabel",
|
|
24
|
+
type: "text"
|
|
25
25
|
}
|
|
26
26
|
});
|
|
27
27
|
//# sourceMappingURL=constant.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/series/correlation/constant.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"sources":["../src/series/correlation/constant.ts"],"names":[],"mappings":";;;AACA,+CAAkD;AAIrC,QAAA,qBAAqB,mCAC7B,yBAAc,KACjB,aAA8B,EAAE,EAAE,IAAI,aAA8B,EAAE,IAAI,UAAqB,EAAE,EACjG,eAAgC,EAAE,EAAE,IAAI,eAAgC,EAAE,IAAI,UAAqB,EAAE,EACrG,eAAgC,EAAE,EAAE,IAAI,eAAgC,EAAE,IAAI,UAAqB,EAAE,EACrG,eAAgC,EAAE,EAAE,IAAI,eAAgC,EAAE,IAAI,QAAmB,EAAE,IACnG","file":"constant.js","sourcesContent":["import { MarkTypeEnum } from '../../mark/interface/type';\nimport { baseSeriesMark } from '../base/constant';\nimport type { SeriesMarkMap } from '../interface/common';\nimport { SeriesMarkNameEnum } from '../interface/type';\n\nexport const correlationSeriesMark: SeriesMarkMap = {\n ...baseSeriesMark,\n [SeriesMarkNameEnum.nodePoint]: { name: SeriesMarkNameEnum.nodePoint, type: MarkTypeEnum.symbol },\n [SeriesMarkNameEnum.ripplePoint]: { name: SeriesMarkNameEnum.ripplePoint, type: MarkTypeEnum.ripple },\n [SeriesMarkNameEnum.centerPoint]: { name: SeriesMarkNameEnum.centerPoint, type: MarkTypeEnum.symbol },\n [SeriesMarkNameEnum.centerLabel]: { name: SeriesMarkNameEnum.centerLabel, type: MarkTypeEnum.text }\n};\n"]}
|
|
@@ -4,11 +4,11 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: !0
|
|
5
5
|
}), exports.CorrelationSeriesSpecTransformer = void 0;
|
|
6
6
|
|
|
7
|
-
const base_1 = require("../base")
|
|
7
|
+
const base_1 = require("../base");
|
|
8
8
|
|
|
9
9
|
class CorrelationSeriesSpecTransformer extends base_1.BaseSeriesSpecTransformer {
|
|
10
10
|
_transformLabelSpec(spec) {
|
|
11
|
-
this._addMarkLabelSpec(spec,
|
|
11
|
+
this._addMarkLabelSpec(spec, "nodePoint"), this._addMarkLabelSpec(spec, "centerPoint", "centerLabel");
|
|
12
12
|
}
|
|
13
13
|
}
|
|
14
14
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/series/correlation/correlation-transformer.ts"],"names":[],"mappings":";;;AAAA,kCAAoD;
|
|
1
|
+
{"version":3,"sources":["../src/series/correlation/correlation-transformer.ts"],"names":[],"mappings":";;;AAAA,kCAAoD;AAIpD,MAAa,gCAGX,SAAQ,gCAA+B;IAC7B,mBAAmB,CAAC,IAAO;QACnC,IAAI,CAAC,iBAAiB,CAAC,IAAI,cAA+B,CAAC;QAC3D,IAAI,CAAC,iBAAiB,CAAC,IAAI,iBAAkC,aAAoB,CAAC,CAAC;IACrF,CAAC;CACF;AARD,4EAQC","file":"correlation-transformer.js","sourcesContent":["import { BaseSeriesSpecTransformer } from '../base';\nimport { SeriesMarkNameEnum } from '../interface';\nimport type { ICorrelationSeriesSpec, ICorrelationSeriesTheme } from './interface';\n\nexport class CorrelationSeriesSpecTransformer<\n T extends ICorrelationSeriesSpec = ICorrelationSeriesSpec,\n K extends ICorrelationSeriesTheme = ICorrelationSeriesTheme\n> extends BaseSeriesSpecTransformer<T, K> {\n protected _transformLabelSpec(spec: T): void {\n this._addMarkLabelSpec(spec, SeriesMarkNameEnum.nodePoint);\n this._addMarkLabelSpec(spec, SeriesMarkNameEnum.centerPoint, 'centerLabel' as any);\n }\n}\n"]}
|
|
@@ -180,7 +180,7 @@ class CorrelationSeries extends polar_1.PolarSeries {
|
|
|
180
180
|
var _a, _b;
|
|
181
181
|
const appearPreset = null === (_a = this._spec.animationAppear) || void 0 === _a ? void 0 : _a.preset;
|
|
182
182
|
this._nodePointMark.setAnimationConfig((0, utils_1.animationConfig)(null === (_b = factory_1.Factory.getAnimationInKey("correlation")) || void 0 === _b ? void 0 : _b({}, appearPreset), (0,
|
|
183
|
-
utils_1.userAnimationConfig)(
|
|
183
|
+
utils_1.userAnimationConfig)("nodePoint", this._spec, this._markAttributeContext)));
|
|
184
184
|
}
|
|
185
185
|
getGroupFields() {
|
|
186
186
|
return [];
|