@visactor/vchart 1.0.1-alpha.1 → 1.1.0-beta.0
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/index.js +65046 -64871
- package/build/index.min.js +2 -2
- package/chart.d.ts +1 -1
- package/chart.js +1 -1
- package/cjs/chart/area/area.d.ts +1 -0
- package/cjs/chart/area/area.js +6 -1
- package/cjs/chart/area/area.js.map +1 -1
- package/cjs/chart/bar/bar-3d.d.ts +7 -0
- package/cjs/chart/bar/bar-3d.js +19 -0
- package/cjs/chart/bar/bar-3d.js.map +1 -0
- package/cjs/chart/bar/bar.d.ts +1 -6
- package/cjs/chart/bar/bar.js +7 -11
- package/cjs/chart/bar/bar.js.map +1 -1
- package/cjs/chart/bar/index.d.ts +1 -0
- package/cjs/chart/bar/index.js +2 -1
- package/cjs/chart/bar/index.js.map +1 -1
- package/cjs/chart/base-chart.d.ts +1 -1
- package/cjs/chart/base-chart.js +2 -1
- package/cjs/chart/base-chart.js.map +1 -1
- package/cjs/chart/box-plot/box-plot.js +4 -2
- package/cjs/chart/box-plot/box-plot.js.map +1 -1
- package/cjs/chart/circle-packing/circle-packing.js +3 -1
- package/cjs/chart/circle-packing/circle-packing.js.map +1 -1
- package/cjs/chart/funnel/base.d.ts +9 -0
- package/cjs/chart/funnel/base.js +47 -0
- package/cjs/chart/funnel/base.js.map +1 -0
- package/cjs/chart/funnel/funnel-3d.d.ts +7 -0
- package/cjs/chart/funnel/funnel-3d.js +19 -0
- package/cjs/chart/funnel/funnel-3d.js.map +1 -0
- package/cjs/chart/funnel/funnel.d.ts +1 -16
- package/cjs/chart/funnel/funnel.js +4 -48
- package/cjs/chart/funnel/funnel.js.map +1 -1
- package/cjs/chart/funnel/index.d.ts +1 -0
- package/cjs/chart/funnel/index.js +2 -1
- package/cjs/chart/funnel/index.js.map +1 -1
- package/cjs/chart/gauge/gauge.js +3 -1
- package/cjs/chart/gauge/gauge.js.map +1 -1
- package/cjs/chart/heatmap/heatmap.js +3 -1
- package/cjs/chart/heatmap/heatmap.js.map +1 -1
- package/cjs/chart/histogram/base.d.ts +5 -0
- package/cjs/chart/histogram/base.js +22 -0
- package/cjs/chart/histogram/base.js.map +1 -0
- package/cjs/chart/histogram/histogram-3d.d.ts +7 -0
- package/cjs/chart/histogram/histogram-3d.js +19 -0
- package/cjs/chart/histogram/histogram-3d.js.map +1 -0
- package/cjs/chart/histogram/histogram.d.ts +2 -12
- package/cjs/chart/histogram/histogram.js +7 -23
- package/cjs/chart/histogram/histogram.js.map +1 -1
- package/cjs/chart/histogram/index.d.ts +1 -0
- package/cjs/chart/histogram/index.js +2 -1
- package/cjs/chart/histogram/index.js.map +1 -1
- package/cjs/chart/index.d.ts +57 -22
- package/cjs/chart/index.js +293 -26
- package/cjs/chart/index.js.map +1 -1
- package/cjs/chart/line/line.d.ts +1 -0
- package/cjs/chart/line/line.js +6 -1
- package/cjs/chart/line/line.js.map +1 -1
- package/cjs/chart/map/map.js +3 -1
- package/cjs/chart/map/map.js.map +1 -1
- package/cjs/chart/pie/base.d.ts +5 -0
- package/cjs/chart/pie/base.js +26 -0
- package/cjs/chart/pie/base.js.map +1 -0
- package/cjs/chart/pie/index.d.ts +1 -0
- package/cjs/chart/pie/index.js +2 -1
- package/cjs/chart/pie/index.js.map +1 -1
- package/cjs/chart/pie/pie-3d.d.ts +8 -0
- package/cjs/chart/pie/pie-3d.js +24 -0
- package/cjs/chart/pie/pie-3d.js.map +1 -0
- package/cjs/chart/pie/pie.d.ts +1 -13
- package/cjs/chart/pie/pie.js +4 -32
- package/cjs/chart/pie/pie.js.map +1 -1
- package/cjs/chart/progress/circular/circular.js +3 -1
- package/cjs/chart/progress/circular/circular.js.map +1 -1
- package/cjs/chart/progress/linear/linear.js +3 -1
- package/cjs/chart/progress/linear/linear.js.map +1 -1
- package/cjs/chart/radar/radar.js +3 -1
- package/cjs/chart/radar/radar.js.map +1 -1
- package/cjs/chart/range-area/range-area.d.ts +1 -0
- package/cjs/chart/range-area/range-area.js +6 -1
- package/cjs/chart/range-area/range-area.js.map +1 -1
- package/cjs/chart/range-column/index.d.ts +2 -1
- package/cjs/chart/range-column/index.js +2 -1
- package/cjs/chart/range-column/index.js.map +1 -1
- package/cjs/chart/range-column/{rangeColumn.d.ts → range-column-3d.d.ts} +0 -7
- package/cjs/chart/range-column/{rangeColumn.js → range-column-3d.js} +4 -17
- package/cjs/chart/range-column/range-column-3d.js.map +1 -0
- package/cjs/chart/range-column/range-column.d.ts +9 -0
- package/cjs/chart/range-column/range-column.js +28 -0
- package/cjs/chart/range-column/range-column.js.map +1 -0
- package/cjs/chart/rose/rose.js +3 -1
- package/cjs/chart/rose/rose.js.map +1 -1
- package/cjs/chart/sankey/sankey.js +3 -1
- package/cjs/chart/sankey/sankey.js.map +1 -1
- package/cjs/chart/scatter/scatter.js +3 -1
- package/cjs/chart/scatter/scatter.js.map +1 -1
- package/cjs/chart/sequence/sequence.js +3 -1
- package/cjs/chart/sequence/sequence.js.map +1 -1
- package/cjs/chart/sunburst/sunburst.js +3 -1
- package/cjs/chart/sunburst/sunburst.js.map +1 -1
- package/cjs/chart/treemap/treemap.js +3 -1
- package/cjs/chart/treemap/treemap.js.map +1 -1
- package/cjs/chart/util.d.ts +2 -0
- package/cjs/chart/util.js +23 -0
- package/cjs/chart/util.js.map +1 -0
- package/cjs/chart/waterfall/waterfall.js +4 -2
- package/cjs/chart/waterfall/waterfall.js.map +1 -1
- package/cjs/chart/word-cloud/base.d.ts +6 -0
- package/cjs/chart/word-cloud/base.js +25 -0
- package/cjs/chart/word-cloud/base.js.map +1 -0
- package/cjs/chart/word-cloud/index.d.ts +1 -0
- package/cjs/chart/word-cloud/index.js +2 -1
- package/cjs/chart/word-cloud/index.js.map +1 -1
- package/cjs/chart/word-cloud/word-cloud-3d.d.ts +9 -0
- package/cjs/chart/word-cloud/word-cloud-3d.js +46 -0
- package/cjs/chart/word-cloud/word-cloud-3d.js.map +1 -0
- package/cjs/chart/word-cloud/word-cloud.d.ts +2 -15
- package/cjs/chart/word-cloud/word-cloud.js +4 -53
- package/cjs/chart/word-cloud/word-cloud.js.map +1 -1
- package/cjs/component/axis/cartesian/axis.js +1 -1
- package/cjs/component/axis/cartesian/axis.js.map +1 -1
- package/cjs/component/crosshair/base.js +1 -2
- package/cjs/component/crosshair/base.js.map +1 -1
- package/cjs/component/crosshair/interface/spec.d.ts +1 -1
- package/cjs/component/crosshair/interface/spec.js.map +1 -1
- package/cjs/component/custom-mark/custom-mark.js.map +1 -1
- package/cjs/component/index.d.ts +39 -1
- package/cjs/component/index.js +202 -17
- package/cjs/component/index.js.map +1 -1
- package/cjs/component/legend/base-legend.d.ts +1 -1
- package/cjs/component/legend/base-legend.js +7 -3
- package/cjs/component/legend/base-legend.js.map +1 -1
- package/cjs/component/legend/util.d.ts +3 -3
- package/cjs/component/player/utils/transform.js +1 -3
- package/cjs/component/player/utils/transform.js.map +1 -1
- package/cjs/component/tooltip/handler/base.d.ts +5 -4
- package/cjs/component/tooltip/handler/base.js +44 -34
- package/cjs/component/tooltip/handler/base.js.map +1 -1
- package/cjs/component/tooltip/handler/canvas/canvas-tooltip-handler.d.ts +2 -2
- package/cjs/component/tooltip/handler/canvas/canvas-tooltip-handler.js +2 -2
- package/cjs/component/tooltip/handler/canvas/canvas-tooltip-handler.js.map +1 -1
- package/cjs/component/tooltip/handler/constants.d.ts +4 -0
- package/cjs/component/tooltip/handler/constants.js +5 -2
- package/cjs/component/tooltip/handler/constants.js.map +1 -1
- package/cjs/component/tooltip/handler/dom/dom-tooltip-handler.d.ts +6 -2
- package/cjs/component/tooltip/handler/dom/dom-tooltip-handler.js +20 -13
- package/cjs/component/tooltip/handler/dom/dom-tooltip-handler.js.map +1 -1
- package/cjs/component/tooltip/handler/dom/interface.d.ts +16 -5
- package/cjs/component/tooltip/handler/dom/interface.js.map +1 -1
- package/cjs/component/tooltip/handler/dom/model/base-tooltip-model.d.ts +7 -13
- package/cjs/component/tooltip/handler/dom/model/base-tooltip-model.js +12 -27
- package/cjs/component/tooltip/handler/dom/model/base-tooltip-model.js.map +1 -1
- package/cjs/component/tooltip/handler/dom/model/content-column-model.d.ts +13 -3
- package/cjs/component/tooltip/handler/dom/model/content-column-model.js +46 -26
- package/cjs/component/tooltip/handler/dom/model/content-column-model.js.map +1 -1
- package/cjs/component/tooltip/handler/dom/model/content-model.d.ts +4 -3
- package/cjs/component/tooltip/handler/dom/model/content-model.js +4 -4
- package/cjs/component/tooltip/handler/dom/model/content-model.js.map +1 -1
- package/cjs/component/tooltip/handler/dom/model/interface.d.ts +4 -0
- package/cjs/component/tooltip/handler/dom/model/interface.js.map +1 -1
- package/cjs/component/tooltip/handler/dom/model/shape-model.d.ts +5 -5
- package/cjs/component/tooltip/handler/dom/model/shape-model.js +4 -4
- package/cjs/component/tooltip/handler/dom/model/shape-model.js.map +1 -1
- package/cjs/component/tooltip/handler/dom/model/style-constants.d.ts +4 -4
- package/cjs/component/tooltip/handler/dom/model/style-constants.js +16 -18
- package/cjs/component/tooltip/handler/dom/model/style-constants.js.map +1 -1
- package/cjs/component/tooltip/handler/dom/model/text-model.js +1 -0
- package/cjs/component/tooltip/handler/dom/model/text-model.js.map +1 -1
- package/cjs/component/tooltip/handler/dom/model/title-model.d.ts +3 -2
- package/cjs/component/tooltip/handler/dom/model/title-model.js +15 -19
- package/cjs/component/tooltip/handler/dom/model/title-model.js.map +1 -1
- package/cjs/component/tooltip/handler/dom/model/tooltip-model.d.ts +1 -2
- package/cjs/component/tooltip/handler/dom/model/tooltip-model.js +21 -16
- package/cjs/component/tooltip/handler/dom/model/tooltip-model.js.map +1 -1
- package/cjs/component/tooltip/handler/dom/util.d.ts +5 -0
- package/cjs/component/tooltip/handler/dom/{utils/style.js → util.js} +32 -20
- package/cjs/component/tooltip/handler/dom/util.js.map +1 -0
- package/cjs/component/tooltip/handler/interface/index.d.ts +0 -1
- package/cjs/component/tooltip/handler/interface/index.js +1 -1
- package/cjs/component/tooltip/handler/interface/index.js.map +1 -1
- package/cjs/component/tooltip/handler/utils/attribute.js +12 -8
- package/cjs/component/tooltip/handler/utils/attribute.js.map +1 -1
- package/cjs/component/tooltip/handler/utils/common.d.ts +6 -2
- package/cjs/component/tooltip/handler/utils/common.js +30 -5
- package/cjs/component/tooltip/handler/utils/common.js.map +1 -1
- package/cjs/component/tooltip/handler/utils/compose.d.ts +3 -2
- package/cjs/component/tooltip/handler/utils/compose.js +56 -45
- package/cjs/component/tooltip/handler/utils/compose.js.map +1 -1
- package/cjs/component/tooltip/handler/utils/get-spec.js +64 -28
- package/cjs/component/tooltip/handler/utils/get-spec.js.map +1 -1
- package/cjs/component/tooltip/handler/utils/style.d.ts +2 -1
- package/cjs/component/tooltip/handler/utils/style.js +4 -4
- package/cjs/component/tooltip/handler/utils/style.js.map +1 -1
- package/cjs/component/tooltip/tooltip.d.ts +3 -1
- package/cjs/component/tooltip/tooltip.js +33 -18
- package/cjs/component/tooltip/tooltip.js.map +1 -1
- package/cjs/component/tooltip/utils/common.js +4 -2
- package/cjs/component/tooltip/utils/common.js.map +1 -1
- package/cjs/constant/word-cloud.js +2 -1
- package/cjs/core/factory.js +1 -2
- package/cjs/{export/core.d.ts → core/index.d.ts} +4 -4
- package/cjs/{export/core.js → core/index.js} +5 -5
- package/cjs/core/index.js.map +1 -0
- package/cjs/core/instance-manager.d.ts +1 -1
- package/cjs/core/instance-manager.js +1 -1
- package/cjs/core/instance-manager.js.map +1 -1
- package/cjs/core/interface.js +1 -1
- package/cjs/core/vchart.d.ts +1 -0
- package/cjs/core/vchart.js +11 -3
- package/cjs/core/vchart.js.map +1 -1
- package/cjs/data/initialize.js +2 -1
- package/cjs/index.d.ts +6 -6
- package/cjs/index.js +4 -4
- package/cjs/index.js.map +1 -1
- package/cjs/layout/base-layout.d.ts +24 -0
- package/cjs/layout/base-layout.js +123 -0
- package/cjs/layout/base-layout.js.map +1 -0
- package/cjs/layout/grid-layout/grid-layout.d.ts +5 -35
- package/cjs/layout/grid-layout/grid-layout.js +2 -1
- package/cjs/layout/grid-layout/grid-layout.js.map +1 -1
- package/cjs/layout/index.d.ts +6 -24
- package/cjs/layout/index.js +25 -115
- package/cjs/layout/index.js.map +1 -1
- package/cjs/layout/interface.d.ts +31 -3
- package/cjs/layout/interface.js.map +1 -1
- package/cjs/layout/layout3d/index.d.ts +1 -1
- package/cjs/layout/layout3d/index.js +2 -2
- package/cjs/layout/layout3d/index.js.map +1 -1
- package/cjs/mark/arc-3d.d.ts +9 -0
- package/cjs/mark/arc-3d.js +16 -0
- package/cjs/mark/arc-3d.js.map +1 -0
- package/cjs/mark/arc.d.ts +5 -9
- package/cjs/mark/arc.js +12 -22
- package/cjs/mark/arc.js.map +1 -1
- package/cjs/mark/area.js +1 -1
- package/cjs/mark/base/base-line.js +3 -3
- package/cjs/mark/base/base-line.js.map +1 -1
- package/cjs/mark/base/base-mark.d.ts +7 -0
- package/cjs/mark/base/base-mark.js +10 -6
- package/cjs/mark/base/base-mark.js.map +1 -1
- package/cjs/mark/box-plot.js +1 -1
- package/cjs/mark/cell.js +1 -1
- package/cjs/mark/index.d.ts +21 -0
- package/cjs/{export/mark.js → mark/index.js} +49 -37
- package/cjs/mark/index.js.map +1 -0
- package/cjs/mark/{linkPath.js → link-path.js} +1 -1
- package/cjs/mark/link-path.js.map +1 -0
- package/cjs/mark/polygon/base-polygon.d.ts +6 -0
- package/cjs/mark/polygon/base-polygon.js +18 -0
- package/cjs/mark/polygon/base-polygon.js.map +1 -0
- package/cjs/mark/polygon/polygon.d.ts +9 -0
- package/cjs/mark/polygon/polygon.js +16 -0
- package/cjs/mark/polygon/polygon.js.map +1 -0
- package/cjs/mark/polygon/pyramid-3d.d.ts +9 -0
- package/cjs/mark/polygon/pyramid-3d.js +16 -0
- package/cjs/mark/polygon/pyramid-3d.js.map +1 -0
- package/cjs/mark/rect-3d.d.ts +10 -0
- package/cjs/mark/rect-3d.js +23 -0
- package/cjs/mark/rect-3d.js.map +1 -0
- package/cjs/mark/rect.d.ts +1 -7
- package/cjs/mark/rect.js +1 -16
- package/cjs/mark/rect.js.map +1 -1
- package/cjs/mark/utils/common.d.ts +0 -12
- package/cjs/mark/utils/common.js +2 -13
- package/cjs/mark/utils/common.js.map +1 -1
- package/cjs/model/base-model.js +1 -1
- package/cjs/model/interface.js +1 -1
- package/cjs/model/layout-item.js +1 -1
- package/cjs/model/model-state-manager.js +1 -1
- package/cjs/model/tooltip-helper.d.ts +3 -4
- package/cjs/model/tooltip-helper.js +5 -10
- package/cjs/model/tooltip-helper.js.map +1 -1
- package/cjs/region/interface.js +1 -1
- package/cjs/region/region.js +5 -10
- package/cjs/region/region.js.map +1 -1
- package/cjs/series/area/area.js +3 -1
- package/cjs/series/area/area.js.map +1 -1
- package/cjs/series/bar/bar-3d.d.ts +11 -0
- package/cjs/series/bar/bar-3d.js +25 -0
- package/cjs/series/bar/bar-3d.js.map +1 -0
- package/cjs/series/bar/bar.d.ts +0 -7
- package/cjs/series/bar/bar.js +3 -18
- package/cjs/series/bar/bar.js.map +1 -1
- package/cjs/series/base/base-series.js +1 -1
- package/cjs/series/base/base-series.js.map +1 -1
- package/cjs/series/base/tooltip-helper.d.ts +9 -8
- package/cjs/series/base/tooltip-helper.js +23 -12
- package/cjs/series/base/tooltip-helper.js.map +1 -1
- package/cjs/series/box-plot/box-plot.js +5 -1
- package/cjs/series/box-plot/box-plot.js.map +1 -1
- package/cjs/series/circle-packing/circle-packing.js +3 -1
- package/cjs/series/circle-packing/circle-packing.js.map +1 -1
- package/cjs/series/dot/dot.js +3 -1
- package/cjs/series/dot/dot.js.map +1 -1
- package/cjs/series/dot/tooltip-helper.d.ts +1 -2
- package/cjs/series/dot/tooltip-helper.js +6 -5
- package/cjs/series/dot/tooltip-helper.js.map +1 -1
- package/cjs/series/funnel/funnel-3d.d.ts +18 -0
- package/cjs/series/funnel/funnel-3d.js +104 -0
- package/cjs/series/funnel/funnel-3d.js.map +1 -0
- package/cjs/series/funnel/funnel.d.ts +3 -15
- package/cjs/series/funnel/funnel.js +12 -104
- package/cjs/series/funnel/funnel.js.map +1 -1
- package/cjs/series/funnel/tooltip-helper.d.ts +5 -3
- package/cjs/series/funnel/tooltip-helper.js +10 -8
- package/cjs/series/funnel/tooltip-helper.js.map +1 -1
- package/cjs/series/gauge/gauge-pointer.js +3 -1
- package/cjs/series/gauge/gauge-pointer.js.map +1 -1
- package/cjs/series/gauge/gauge.js +3 -1
- package/cjs/series/gauge/gauge.js.map +1 -1
- package/cjs/series/heatmap/heatmap.js +2 -2
- package/cjs/series/heatmap/heatmap.js.map +1 -1
- package/cjs/series/index.d.ts +66 -0
- package/cjs/{export/series.js → series/index.js} +70 -50
- package/cjs/series/index.js.map +1 -0
- package/cjs/series/interface/series.d.ts +2 -1
- package/cjs/series/interface/series.js.map +1 -1
- package/cjs/series/interface/tooltip-helper.d.ts +6 -6
- package/cjs/series/interface/tooltip-helper.js.map +1 -1
- package/cjs/series/line/line.js +3 -1
- package/cjs/series/line/line.js.map +1 -1
- package/cjs/series/link/link.js +3 -1
- package/cjs/series/link/link.js.map +1 -1
- package/cjs/series/map/map.js +2 -2
- package/cjs/series/map/map.js.map +1 -1
- package/cjs/series/pie/pie-3d.d.ts +16 -0
- package/cjs/series/pie/pie-3d.js +97 -0
- package/cjs/series/pie/pie-3d.js.map +1 -0
- package/cjs/series/pie/pie.d.ts +1 -11
- package/cjs/series/pie/pie.js +4 -89
- package/cjs/series/pie/pie.js.map +1 -1
- package/cjs/series/polar/animation.d.ts +1 -1
- package/cjs/series/polar/animation.js.map +1 -1
- package/cjs/series/progress/circular/circular.js +3 -1
- package/cjs/series/progress/circular/circular.js.map +1 -1
- package/cjs/series/progress/linear/linear.js +3 -1
- package/cjs/series/progress/linear/linear.js.map +1 -1
- package/cjs/series/radar/animation.d.ts +1 -1
- package/cjs/series/radar/animation.js.map +1 -1
- package/cjs/series/radar/radar.js +3 -1
- package/cjs/series/radar/radar.js.map +1 -1
- package/cjs/series/range-column/rangeColumn-3d.d.ts +10 -0
- package/cjs/series/range-column/rangeColumn-3d.js +19 -0
- package/cjs/series/range-column/rangeColumn-3d.js.map +1 -0
- package/cjs/series/range-column/rangeColumn.d.ts +0 -6
- package/cjs/series/range-column/rangeColumn.js +1 -10
- package/cjs/series/range-column/rangeColumn.js.map +1 -1
- package/cjs/series/rose/rose.js +2 -2
- package/cjs/series/rose/rose.js.map +1 -1
- package/cjs/series/sankey/sankey.js +2 -1
- package/cjs/series/sankey/sankey.js.map +1 -1
- package/cjs/series/scatter/scatter.js +3 -1
- package/cjs/series/scatter/scatter.js.map +1 -1
- package/cjs/series/sunburst/sunburst.js +3 -1
- package/cjs/series/sunburst/sunburst.js.map +1 -1
- package/cjs/series/treemap/treemap.js +3 -1
- package/cjs/series/treemap/treemap.js.map +1 -1
- package/cjs/series/waterfall/waterfall.js +2 -2
- package/cjs/series/waterfall/waterfall.js.map +1 -1
- package/cjs/series/word-cloud/base.d.ts +60 -0
- package/cjs/series/word-cloud/base.js +254 -0
- package/cjs/series/word-cloud/base.js.map +1 -0
- package/cjs/series/word-cloud/word-cloud-3d.d.ts +11 -0
- package/cjs/series/word-cloud/word-cloud-3d.js +199 -0
- package/cjs/series/word-cloud/word-cloud-3d.js.map +1 -0
- package/cjs/series/word-cloud/word-cloud.d.ts +2 -69
- package/cjs/series/word-cloud/word-cloud.js +5 -441
- package/cjs/series/word-cloud/word-cloud.js.map +1 -1
- package/cjs/theme/buildin-theme/index.d.ts +0 -1
- package/cjs/theme/buildin-theme/index.js +3 -3
- package/cjs/theme/buildin-theme/index.js.map +1 -1
- package/cjs/theme/buildin-theme/light/component/crosshair.js +4 -4
- package/cjs/theme/buildin-theme/light/component/crosshair.js.map +1 -1
- package/cjs/theme/buildin-theme/light/component/tooltip.js +1 -0
- package/cjs/theme/buildin-theme/light/component/tooltip.js.map +1 -1
- package/cjs/typings/spec/common.d.ts +1 -1
- package/cjs/typings/spec/common.js.map +1 -1
- package/cjs/typings/tooltip/common.d.ts +7 -1
- package/cjs/typings/tooltip/common.js.map +1 -1
- package/cjs/typings/tooltip/handler.d.ts +1 -1
- package/cjs/typings/tooltip/handler.js.map +1 -1
- package/cjs/typings/tooltip/line.d.ts +6 -4
- package/cjs/typings/tooltip/line.js.map +1 -1
- package/cjs/typings/tooltip/shape.d.ts +3 -3
- package/cjs/typings/tooltip/shape.js.map +1 -1
- package/cjs/typings/tooltip/tooltip.d.ts +11 -8
- package/cjs/typings/tooltip/tooltip.js.map +1 -1
- package/cjs/typings/visual.d.ts +4 -11
- package/cjs/typings/visual.js.map +1 -1
- package/cjs/util/debug.d.ts +3 -3
- package/cjs/util/debug.js +11 -20
- package/cjs/util/debug.js.map +1 -1
- package/cjs/util/index.d.ts +1 -0
- package/cjs/util/index.js +2 -1
- package/cjs/util/index.js.map +1 -1
- package/cjs/util/style.js +3 -7
- package/cjs/util/style.js.map +1 -1
- package/cjs/vchart-all.d.ts +1 -1
- package/cjs/vchart-all.js +3 -5
- package/cjs/vchart-all.js.map +1 -1
- package/cjs/vchart-simple.d.ts +1 -1
- package/cjs/vchart-simple.js +2 -4
- package/cjs/vchart-simple.js.map +1 -1
- package/component.d.ts +1 -1
- package/component.js +1 -1
- package/core.d.ts +1 -1
- package/core.js +1 -1
- package/esm/chart/area/area.d.ts +1 -0
- package/esm/chart/area/area.js +11 -0
- package/esm/chart/area/area.js.map +1 -1
- package/esm/chart/bar/bar-3d.d.ts +7 -0
- package/esm/chart/bar/bar-3d.js +20 -0
- package/esm/chart/bar/bar-3d.js.map +1 -0
- package/esm/chart/bar/bar.d.ts +1 -6
- package/esm/chart/bar/bar.js +11 -8
- package/esm/chart/bar/bar.js.map +1 -1
- package/esm/chart/bar/index.d.ts +1 -0
- package/esm/chart/bar/index.js +2 -0
- package/esm/chart/bar/index.js.map +1 -1
- package/esm/chart/base-chart.d.ts +1 -1
- package/esm/chart/base-chart.js +2 -1
- package/esm/chart/base-chart.js.map +1 -1
- package/esm/chart/box-plot/box-plot.js +9 -1
- package/esm/chart/box-plot/box-plot.js.map +1 -1
- package/esm/chart/circle-packing/circle-packing.js +6 -0
- package/esm/chart/circle-packing/circle-packing.js.map +1 -1
- package/esm/chart/funnel/base.d.ts +9 -0
- package/esm/chart/funnel/base.js +39 -0
- package/esm/chart/funnel/base.js.map +1 -0
- package/esm/chart/funnel/funnel-3d.d.ts +7 -0
- package/esm/chart/funnel/funnel-3d.js +20 -0
- package/esm/chart/funnel/funnel-3d.js.map +1 -0
- package/esm/chart/funnel/funnel.d.ts +1 -16
- package/esm/chart/funnel/funnel.js +7 -46
- package/esm/chart/funnel/funnel.js.map +1 -1
- package/esm/chart/funnel/index.d.ts +1 -0
- package/esm/chart/funnel/index.js +2 -0
- package/esm/chart/funnel/index.js.map +1 -1
- package/esm/chart/gauge/gauge.js +6 -0
- package/esm/chart/gauge/gauge.js.map +1 -1
- package/esm/chart/heatmap/heatmap.js +6 -0
- package/esm/chart/heatmap/heatmap.js.map +1 -1
- package/esm/chart/histogram/base.d.ts +5 -0
- package/esm/chart/histogram/base.js +14 -0
- package/esm/chart/histogram/base.js.map +1 -0
- package/esm/chart/histogram/histogram-3d.d.ts +7 -0
- package/esm/chart/histogram/histogram-3d.js +20 -0
- package/esm/chart/histogram/histogram-3d.js.map +1 -0
- package/esm/chart/histogram/histogram.d.ts +2 -12
- package/esm/chart/histogram/histogram.js +12 -21
- package/esm/chart/histogram/histogram.js.map +1 -1
- package/esm/chart/histogram/index.d.ts +1 -0
- package/esm/chart/histogram/index.js +2 -0
- package/esm/chart/histogram/index.js.map +1 -1
- package/esm/chart/index.d.ts +57 -22
- package/esm/chart/index.js +36 -22
- package/esm/chart/index.js.map +1 -1
- package/esm/chart/line/line.d.ts +1 -0
- package/esm/chart/line/line.js +11 -0
- package/esm/chart/line/line.js.map +1 -1
- package/esm/chart/map/map.js +6 -0
- package/esm/chart/map/map.js.map +1 -1
- package/esm/chart/pie/base.d.ts +5 -0
- package/esm/chart/pie/base.js +18 -0
- package/esm/chart/pie/base.js.map +1 -0
- package/esm/chart/pie/index.d.ts +1 -0
- package/esm/chart/pie/index.js +2 -0
- package/esm/chart/pie/index.js.map +1 -1
- package/esm/chart/pie/pie-3d.d.ts +8 -0
- package/esm/chart/pie/pie-3d.js +25 -0
- package/esm/chart/pie/pie-3d.js.map +1 -0
- package/esm/chart/pie/pie.d.ts +1 -13
- package/esm/chart/pie/pie.js +6 -29
- package/esm/chart/pie/pie.js.map +1 -1
- package/esm/chart/progress/circular/circular.js +6 -0
- package/esm/chart/progress/circular/circular.js.map +1 -1
- package/esm/chart/progress/linear/linear.js +6 -0
- package/esm/chart/progress/linear/linear.js.map +1 -1
- package/esm/chart/radar/radar.js +6 -0
- package/esm/chart/radar/radar.js.map +1 -1
- package/esm/chart/range-area/range-area.d.ts +1 -0
- package/esm/chart/range-area/range-area.js +11 -0
- package/esm/chart/range-area/range-area.js.map +1 -1
- package/esm/chart/range-column/index.d.ts +2 -1
- package/esm/chart/range-column/index.js +3 -1
- package/esm/chart/range-column/index.js.map +1 -1
- package/esm/chart/range-column/{rangeColumn.d.ts → range-column-3d.d.ts} +0 -7
- package/esm/chart/range-column/{rangeColumn.js → range-column-3d.js} +5 -13
- package/esm/chart/range-column/range-column-3d.js.map +1 -0
- package/esm/chart/range-column/range-column.d.ts +9 -0
- package/esm/chart/range-column/range-column.js +33 -0
- package/esm/chart/range-column/range-column.js.map +1 -0
- package/esm/chart/rose/rose.js +6 -0
- package/esm/chart/rose/rose.js.map +1 -1
- package/esm/chart/sankey/sankey.js +6 -0
- package/esm/chart/sankey/sankey.js.map +1 -1
- package/esm/chart/scatter/scatter.js +6 -0
- package/esm/chart/scatter/scatter.js.map +1 -1
- package/esm/chart/sequence/sequence.js +6 -0
- package/esm/chart/sequence/sequence.js.map +1 -1
- package/esm/chart/sunburst/sunburst.js +6 -0
- package/esm/chart/sunburst/sunburst.js.map +1 -1
- package/esm/chart/treemap/treemap.js +6 -0
- package/esm/chart/treemap/treemap.js.map +1 -1
- package/esm/chart/util.d.ts +2 -0
- package/esm/chart/util.js +16 -0
- package/esm/chart/util.js.map +1 -0
- package/esm/chart/waterfall/waterfall.js +9 -1
- package/esm/chart/waterfall/waterfall.js.map +1 -1
- package/esm/chart/word-cloud/base.d.ts +6 -0
- package/esm/chart/word-cloud/base.js +21 -0
- package/esm/chart/word-cloud/base.js.map +1 -0
- package/esm/chart/word-cloud/index.d.ts +1 -0
- package/esm/chart/word-cloud/index.js +2 -0
- package/esm/chart/word-cloud/index.js.map +1 -1
- package/esm/chart/word-cloud/word-cloud-3d.d.ts +9 -0
- package/esm/chart/word-cloud/word-cloud-3d.js +47 -0
- package/esm/chart/word-cloud/word-cloud-3d.js.map +1 -0
- package/esm/chart/word-cloud/word-cloud.d.ts +2 -15
- package/esm/chart/word-cloud/word-cloud.js +6 -50
- package/esm/chart/word-cloud/word-cloud.js.map +1 -1
- package/esm/component/axis/cartesian/axis.js +2 -2
- package/esm/component/axis/cartesian/axis.js.map +1 -1
- package/esm/component/crosshair/base.js +1 -2
- package/esm/component/crosshair/base.js.map +1 -1
- package/esm/component/crosshair/interface/spec.d.ts +1 -1
- package/esm/component/crosshair/interface/spec.js.map +1 -1
- package/esm/component/custom-mark/custom-mark.js.map +1 -1
- package/esm/component/index.d.ts +39 -1
- package/esm/component/index.js +39 -2
- package/esm/component/index.js.map +1 -1
- package/esm/component/legend/base-legend.d.ts +1 -1
- package/esm/component/legend/base-legend.js +7 -3
- package/esm/component/legend/base-legend.js.map +1 -1
- package/esm/component/legend/util.d.ts +3 -3
- package/esm/component/player/utils/transform.js +1 -3
- package/esm/component/player/utils/transform.js.map +1 -1
- package/esm/component/tooltip/handler/base.d.ts +5 -4
- package/esm/component/tooltip/handler/base.js +45 -35
- package/esm/component/tooltip/handler/base.js.map +1 -1
- package/esm/component/tooltip/handler/canvas/canvas-tooltip-handler.d.ts +2 -2
- package/esm/component/tooltip/handler/canvas/canvas-tooltip-handler.js +2 -3
- package/esm/component/tooltip/handler/canvas/canvas-tooltip-handler.js.map +1 -1
- package/esm/component/tooltip/handler/constants.d.ts +4 -0
- package/esm/component/tooltip/handler/constants.js +9 -0
- package/esm/component/tooltip/handler/constants.js.map +1 -1
- package/esm/component/tooltip/handler/dom/dom-tooltip-handler.d.ts +6 -2
- package/esm/component/tooltip/handler/dom/dom-tooltip-handler.js +20 -12
- package/esm/component/tooltip/handler/dom/dom-tooltip-handler.js.map +1 -1
- package/esm/component/tooltip/handler/dom/interface.d.ts +16 -5
- package/esm/component/tooltip/handler/dom/interface.js.map +1 -1
- package/esm/component/tooltip/handler/dom/model/base-tooltip-model.d.ts +7 -13
- package/esm/component/tooltip/handler/dom/model/base-tooltip-model.js +11 -29
- package/esm/component/tooltip/handler/dom/model/base-tooltip-model.js.map +1 -1
- package/esm/component/tooltip/handler/dom/model/content-column-model.d.ts +13 -3
- package/esm/component/tooltip/handler/dom/model/content-column-model.js +46 -24
- package/esm/component/tooltip/handler/dom/model/content-column-model.js.map +1 -1
- package/esm/component/tooltip/handler/dom/model/content-model.d.ts +4 -3
- package/esm/component/tooltip/handler/dom/model/content-model.js +5 -5
- package/esm/component/tooltip/handler/dom/model/content-model.js.map +1 -1
- package/esm/component/tooltip/handler/dom/model/interface.d.ts +4 -0
- package/esm/component/tooltip/handler/dom/model/interface.js.map +1 -1
- package/esm/component/tooltip/handler/dom/model/shape-model.d.ts +5 -5
- package/esm/component/tooltip/handler/dom/model/shape-model.js +4 -4
- package/esm/component/tooltip/handler/dom/model/shape-model.js.map +1 -1
- package/esm/component/tooltip/handler/dom/model/style-constants.d.ts +4 -4
- package/esm/component/tooltip/handler/dom/model/style-constants.js +18 -20
- package/esm/component/tooltip/handler/dom/model/style-constants.js.map +1 -1
- package/esm/component/tooltip/handler/dom/model/text-model.js +1 -0
- package/esm/component/tooltip/handler/dom/model/text-model.js.map +1 -1
- package/esm/component/tooltip/handler/dom/model/title-model.d.ts +3 -2
- package/esm/component/tooltip/handler/dom/model/title-model.js +15 -19
- package/esm/component/tooltip/handler/dom/model/title-model.js.map +1 -1
- package/esm/component/tooltip/handler/dom/model/tooltip-model.d.ts +1 -2
- package/esm/component/tooltip/handler/dom/model/tooltip-model.js +22 -16
- package/esm/component/tooltip/handler/dom/model/tooltip-model.js.map +1 -1
- package/esm/component/tooltip/handler/dom/util.d.ts +5 -0
- package/esm/component/tooltip/handler/dom/util.js +71 -0
- package/esm/component/tooltip/handler/dom/util.js.map +1 -0
- package/esm/component/tooltip/handler/interface/index.d.ts +0 -1
- package/esm/component/tooltip/handler/interface/index.js +0 -2
- package/esm/component/tooltip/handler/interface/index.js.map +1 -1
- package/esm/component/tooltip/handler/utils/attribute.js +11 -7
- package/esm/component/tooltip/handler/utils/attribute.js.map +1 -1
- package/esm/component/tooltip/handler/utils/common.d.ts +6 -2
- package/esm/component/tooltip/handler/utils/common.js +25 -2
- package/esm/component/tooltip/handler/utils/common.js.map +1 -1
- package/esm/component/tooltip/handler/utils/compose.d.ts +3 -2
- package/esm/component/tooltip/handler/utils/compose.js +52 -43
- package/esm/component/tooltip/handler/utils/compose.js.map +1 -1
- package/esm/component/tooltip/handler/utils/get-spec.js +60 -23
- package/esm/component/tooltip/handler/utils/get-spec.js.map +1 -1
- package/esm/component/tooltip/handler/utils/style.d.ts +2 -1
- package/esm/component/tooltip/handler/utils/style.js +4 -4
- package/esm/component/tooltip/handler/utils/style.js.map +1 -1
- package/esm/component/tooltip/tooltip.d.ts +3 -1
- package/esm/component/tooltip/tooltip.js +33 -18
- package/esm/component/tooltip/tooltip.js.map +1 -1
- package/esm/component/tooltip/utils/common.js +4 -2
- package/esm/component/tooltip/utils/common.js.map +1 -1
- package/esm/constant/word-cloud.js +2 -1
- package/esm/core/factory.js +1 -2
- package/esm/{export/core.d.ts → core/index.d.ts} +4 -4
- package/esm/{export/core.js → core/index.js} +5 -5
- package/esm/core/index.js.map +1 -0
- package/esm/core/instance-manager.d.ts +1 -1
- package/esm/core/instance-manager.js +1 -1
- package/esm/core/instance-manager.js.map +1 -1
- package/esm/core/interface.js +1 -1
- package/esm/core/vchart.d.ts +1 -0
- package/esm/core/vchart.js +10 -3
- package/esm/core/vchart.js.map +1 -1
- package/esm/data/initialize.js +2 -1
- package/esm/index.d.ts +6 -6
- package/esm/index.js +6 -6
- package/esm/index.js.map +1 -1
- package/esm/layout/base-layout.d.ts +24 -0
- package/esm/layout/base-layout.js +115 -0
- package/esm/layout/base-layout.js.map +1 -0
- package/esm/layout/grid-layout/grid-layout.d.ts +5 -35
- package/esm/layout/grid-layout/grid-layout.js +2 -1
- package/esm/layout/grid-layout/grid-layout.js.map +1 -1
- package/esm/layout/index.d.ts +6 -24
- package/esm/layout/index.js +8 -115
- package/esm/layout/index.js.map +1 -1
- package/esm/layout/interface.d.ts +31 -3
- package/esm/layout/interface.js.map +1 -1
- package/esm/layout/layout3d/index.d.ts +1 -1
- package/esm/layout/layout3d/index.js +1 -1
- package/esm/layout/layout3d/index.js.map +1 -1
- package/esm/mark/arc-3d.d.ts +9 -0
- package/esm/mark/arc-3d.js +12 -0
- package/esm/mark/arc-3d.js.map +1 -0
- package/esm/mark/arc.d.ts +5 -9
- package/esm/mark/arc.js +11 -21
- package/esm/mark/arc.js.map +1 -1
- package/esm/mark/area.js +1 -1
- package/esm/mark/base/base-line.js +2 -4
- package/esm/mark/base/base-line.js.map +1 -1
- package/esm/mark/base/base-mark.d.ts +7 -0
- package/esm/mark/base/base-mark.js +9 -7
- package/esm/mark/base/base-mark.js.map +1 -1
- package/esm/mark/box-plot.js +1 -1
- package/esm/mark/cell.js +1 -1
- package/esm/mark/index.d.ts +21 -0
- package/esm/mark/index.js +40 -0
- package/esm/mark/index.js.map +1 -0
- package/esm/mark/{linkPath.js → link-path.js} +1 -1
- package/esm/mark/link-path.js.map +1 -0
- package/esm/mark/polygon/base-polygon.d.ts +6 -0
- package/esm/mark/polygon/base-polygon.js +10 -0
- package/esm/mark/polygon/base-polygon.js.map +1 -0
- package/esm/mark/polygon/polygon.d.ts +9 -0
- package/esm/mark/polygon/polygon.js +12 -0
- package/esm/mark/polygon/polygon.js.map +1 -0
- package/esm/mark/polygon/pyramid-3d.d.ts +9 -0
- package/esm/mark/polygon/pyramid-3d.js +12 -0
- package/esm/mark/polygon/pyramid-3d.js.map +1 -0
- package/esm/mark/rect-3d.d.ts +10 -0
- package/esm/mark/rect-3d.js +19 -0
- package/esm/mark/rect-3d.js.map +1 -0
- package/esm/mark/rect.d.ts +1 -7
- package/esm/mark/rect.js +0 -15
- package/esm/mark/rect.js.map +1 -1
- package/esm/mark/utils/common.d.ts +0 -12
- package/esm/mark/utils/common.js +0 -13
- package/esm/mark/utils/common.js.map +1 -1
- package/esm/model/base-model.js +1 -1
- package/esm/model/interface.js +1 -1
- package/esm/model/layout-item.js +1 -1
- package/esm/model/model-state-manager.js +1 -1
- package/esm/model/tooltip-helper.d.ts +3 -4
- package/esm/model/tooltip-helper.js +5 -10
- package/esm/model/tooltip-helper.js.map +1 -1
- package/esm/region/interface.js +1 -1
- package/esm/region/region.js +6 -10
- package/esm/region/region.js.map +1 -1
- package/esm/series/area/area.js +12 -0
- package/esm/series/area/area.js.map +1 -1
- package/esm/series/bar/bar-3d.d.ts +11 -0
- package/esm/series/bar/bar-3d.js +30 -0
- package/esm/series/bar/bar-3d.js.map +1 -0
- package/esm/series/bar/bar.d.ts +0 -7
- package/esm/series/bar/bar.js +8 -14
- package/esm/series/bar/bar.js.map +1 -1
- package/esm/series/base/base-series.js +1 -1
- package/esm/series/base/base-series.js.map +1 -1
- package/esm/series/base/tooltip-helper.d.ts +9 -8
- package/esm/series/base/tooltip-helper.js +23 -12
- package/esm/series/base/tooltip-helper.js.map +1 -1
- package/esm/series/box-plot/box-plot.js +8 -0
- package/esm/series/box-plot/box-plot.js.map +1 -1
- package/esm/series/circle-packing/circle-packing.js +8 -0
- package/esm/series/circle-packing/circle-packing.js.map +1 -1
- package/esm/series/dot/dot.js +12 -0
- package/esm/series/dot/dot.js.map +1 -1
- package/esm/series/dot/tooltip-helper.d.ts +1 -2
- package/esm/series/dot/tooltip-helper.js +7 -4
- package/esm/series/dot/tooltip-helper.js.map +1 -1
- package/esm/series/funnel/funnel-3d.d.ts +18 -0
- package/esm/series/funnel/funnel-3d.js +113 -0
- package/esm/series/funnel/funnel-3d.js.map +1 -0
- package/esm/series/funnel/funnel.d.ts +3 -15
- package/esm/series/funnel/funnel.js +18 -101
- package/esm/series/funnel/funnel.js.map +1 -1
- package/esm/series/funnel/tooltip-helper.d.ts +5 -3
- package/esm/series/funnel/tooltip-helper.js +11 -7
- package/esm/series/funnel/tooltip-helper.js.map +1 -1
- package/esm/series/gauge/gauge-pointer.js +8 -0
- package/esm/series/gauge/gauge-pointer.js.map +1 -1
- package/esm/series/gauge/gauge.js +6 -0
- package/esm/series/gauge/gauge.js.map +1 -1
- package/esm/series/heatmap/heatmap.js +8 -0
- package/esm/series/heatmap/heatmap.js.map +1 -1
- package/esm/series/index.d.ts +66 -0
- package/esm/series/index.js +70 -0
- package/esm/series/index.js.map +1 -0
- package/esm/series/interface/series.d.ts +2 -1
- package/esm/series/interface/series.js.map +1 -1
- package/esm/series/interface/tooltip-helper.d.ts +6 -6
- package/esm/series/interface/tooltip-helper.js.map +1 -1
- package/esm/series/line/line.js +10 -0
- package/esm/series/line/line.js.map +1 -1
- package/esm/series/link/link.js +8 -0
- package/esm/series/link/link.js.map +1 -1
- package/esm/series/map/map.js +7 -1
- package/esm/series/map/map.js.map +1 -1
- package/esm/series/pie/pie-3d.d.ts +16 -0
- package/esm/series/pie/pie-3d.js +107 -0
- package/esm/series/pie/pie-3d.js.map +1 -0
- package/esm/series/pie/pie.d.ts +1 -11
- package/esm/series/pie/pie.js +10 -83
- package/esm/series/pie/pie.js.map +1 -1
- package/esm/series/polar/animation.d.ts +1 -1
- package/esm/series/polar/animation.js.map +1 -1
- package/esm/series/progress/circular/circular.js +8 -0
- package/esm/series/progress/circular/circular.js.map +1 -1
- package/esm/series/progress/linear/linear.js +6 -0
- package/esm/series/progress/linear/linear.js.map +1 -1
- package/esm/series/radar/animation.d.ts +1 -1
- package/esm/series/radar/animation.js.map +1 -1
- package/esm/series/radar/radar.js +12 -0
- package/esm/series/radar/radar.js.map +1 -1
- package/esm/series/range-column/rangeColumn-3d.d.ts +10 -0
- package/esm/series/range-column/rangeColumn-3d.js +23 -0
- package/esm/series/range-column/rangeColumn-3d.js.map +1 -0
- package/esm/series/range-column/rangeColumn.d.ts +0 -6
- package/esm/series/range-column/rangeColumn.js +0 -9
- package/esm/series/range-column/rangeColumn.js.map +1 -1
- package/esm/series/rose/rose.js +8 -0
- package/esm/series/rose/rose.js.map +1 -1
- package/esm/series/sankey/sankey.js +9 -1
- package/esm/series/sankey/sankey.js.map +1 -1
- package/esm/series/scatter/scatter.js +8 -0
- package/esm/series/scatter/scatter.js.map +1 -1
- package/esm/series/sunburst/sunburst.js +8 -0
- package/esm/series/sunburst/sunburst.js.map +1 -1
- package/esm/series/treemap/treemap.js +8 -0
- package/esm/series/treemap/treemap.js.map +1 -1
- package/esm/series/waterfall/waterfall.js +6 -0
- package/esm/series/waterfall/waterfall.js.map +1 -1
- package/esm/series/word-cloud/base.d.ts +60 -0
- package/esm/series/word-cloud/base.js +278 -0
- package/esm/series/word-cloud/base.js.map +1 -0
- package/esm/series/word-cloud/word-cloud-3d.d.ts +11 -0
- package/esm/series/word-cloud/word-cloud-3d.js +205 -0
- package/esm/series/word-cloud/word-cloud-3d.js.map +1 -0
- package/esm/series/word-cloud/word-cloud.d.ts +2 -69
- package/esm/series/word-cloud/word-cloud.js +2 -461
- package/esm/series/word-cloud/word-cloud.js.map +1 -1
- package/esm/theme/buildin-theme/index.d.ts +0 -1
- package/esm/theme/buildin-theme/index.js +1 -5
- package/esm/theme/buildin-theme/index.js.map +1 -1
- package/esm/theme/buildin-theme/light/component/crosshair.js +4 -4
- package/esm/theme/buildin-theme/light/component/crosshair.js.map +1 -1
- package/esm/theme/buildin-theme/light/component/tooltip.js +1 -0
- package/esm/theme/buildin-theme/light/component/tooltip.js.map +1 -1
- package/esm/typings/spec/common.d.ts +1 -1
- package/esm/typings/spec/common.js.map +1 -1
- package/esm/typings/tooltip/common.d.ts +7 -1
- package/esm/typings/tooltip/common.js.map +1 -1
- package/esm/typings/tooltip/handler.d.ts +1 -1
- package/esm/typings/tooltip/handler.js.map +1 -1
- package/esm/typings/tooltip/line.d.ts +6 -4
- package/esm/typings/tooltip/line.js.map +1 -1
- package/esm/typings/tooltip/shape.d.ts +3 -3
- package/esm/typings/tooltip/shape.js.map +1 -1
- package/esm/typings/tooltip/tooltip.d.ts +11 -8
- package/esm/typings/tooltip/tooltip.js.map +1 -1
- package/esm/typings/visual.d.ts +4 -11
- package/esm/typings/visual.js.map +1 -1
- package/esm/util/debug.d.ts +3 -3
- package/esm/util/debug.js +11 -14
- package/esm/util/debug.js.map +1 -1
- package/esm/util/index.d.ts +1 -0
- package/esm/util/index.js +2 -0
- package/esm/util/index.js.map +1 -1
- package/esm/util/style.js +3 -8
- package/esm/util/style.js.map +1 -1
- package/esm/vchart-all.d.ts +1 -1
- package/esm/vchart-all.js +4 -12
- package/esm/vchart-all.js.map +1 -1
- package/esm/vchart-simple.d.ts +1 -1
- package/esm/vchart-simple.js +4 -10
- package/esm/vchart-simple.js.map +1 -1
- package/layout.d.ts +1 -1
- package/layout.js +1 -1
- package/mark.d.ts +1 -1
- package/mark.js +1 -1
- package/package.json +35 -39
- package/series.d.ts +1 -1
- package/series.js +1 -1
- package/cjs/chart/range-column/rangeColumn.js.map +0 -1
- package/cjs/component/tooltip/handler/dom/utils/style.d.ts +0 -3
- package/cjs/component/tooltip/handler/dom/utils/style.js.map +0 -1
- package/cjs/component/tooltip/handler/interface/cache.d.ts +0 -28
- package/cjs/component/tooltip/handler/interface/cache.js +0 -6
- package/cjs/component/tooltip/handler/interface/cache.js.map +0 -1
- package/cjs/export/chart.d.ts +0 -57
- package/cjs/export/chart.js +0 -298
- package/cjs/export/chart.js.map +0 -1
- package/cjs/export/component.d.ts +0 -39
- package/cjs/export/component.js +0 -207
- package/cjs/export/component.js.map +0 -1
- package/cjs/export/core.js.map +0 -1
- package/cjs/export/layout.d.ts +0 -7
- package/cjs/export/layout.js +0 -33
- package/cjs/export/layout.js.map +0 -1
- package/cjs/export/mark.d.ts +0 -18
- package/cjs/export/mark.js.map +0 -1
- package/cjs/export/series.d.ts +0 -61
- package/cjs/export/series.js.map +0 -1
- package/cjs/mark/linkPath.js.map +0 -1
- package/cjs/mark/polygon.d.ts +0 -18
- package/cjs/mark/polygon.js +0 -32
- package/cjs/mark/polygon.js.map +0 -1
- package/cjs/theme/buildin-theme/dark.d.ts +0 -2
- package/cjs/theme/buildin-theme/dark.js +0 -16
- package/cjs/theme/buildin-theme/dark.js.map +0 -1
- package/esm/chart/range-column/rangeColumn.js.map +0 -1
- package/esm/component/tooltip/handler/dom/utils/style.d.ts +0 -3
- package/esm/component/tooltip/handler/dom/utils/style.js +0 -59
- package/esm/component/tooltip/handler/dom/utils/style.js.map +0 -1
- package/esm/component/tooltip/handler/interface/cache.d.ts +0 -28
- package/esm/component/tooltip/handler/interface/cache.js +0 -2
- package/esm/component/tooltip/handler/interface/cache.js.map +0 -1
- package/esm/export/chart.d.ts +0 -57
- package/esm/export/chart.js +0 -58
- package/esm/export/chart.js.map +0 -1
- package/esm/export/component.d.ts +0 -39
- package/esm/export/component.js +0 -40
- package/esm/export/component.js.map +0 -1
- package/esm/export/core.js.map +0 -1
- package/esm/export/layout.d.ts +0 -7
- package/esm/export/layout.js +0 -8
- package/esm/export/layout.js.map +0 -1
- package/esm/export/mark.d.ts +0 -18
- package/esm/export/mark.js +0 -34
- package/esm/export/mark.js.map +0 -1
- package/esm/export/series.d.ts +0 -61
- package/esm/export/series.js +0 -60
- package/esm/export/series.js.map +0 -1
- package/esm/mark/linkPath.js.map +0 -1
- package/esm/mark/polygon.d.ts +0 -18
- package/esm/mark/polygon.js +0 -28
- package/esm/mark/polygon.js.map +0 -1
- package/esm/theme/buildin-theme/dark.d.ts +0 -2
- package/esm/theme/buildin-theme/dark.js +0 -12
- package/esm/theme/buildin-theme/dark.js.map +0 -1
- /package/cjs/mark/{linkPath.d.ts → link-path.d.ts} +0 -0
- /package/esm/mark/{linkPath.d.ts → link-path.d.ts} +0 -0
|
@@ -17,23 +17,16 @@ class Tooltip extends base_1.BaseComponent {
|
|
|
17
17
|
}, this.handleMouseOut = params => {
|
|
18
18
|
if (this._alwaysShow) return;
|
|
19
19
|
const {clientX: clientX, clientY: clientY} = params.event;
|
|
20
|
-
(0, util_1.isTrueBrowser)(this._option.mode) && this.
|
|
20
|
+
(0, util_1.isTrueBrowser)(this._option.mode) && (this._isPointerInChart({
|
|
21
21
|
x: clientX,
|
|
22
22
|
y: clientY
|
|
23
|
-
}) || this.handleChartMouseOut(params);
|
|
23
|
+
}) || this._isPointerOnTooltip(params)) || this.handleChartMouseOut(params);
|
|
24
24
|
}, this.handleChartMouseOut = params => {
|
|
25
25
|
this._alwaysShow || "none" !== this._spec.triggerOff && (this._hideTooltipByHandler(Object.assign({}, params)),
|
|
26
26
|
this._cacheInfo = void 0);
|
|
27
27
|
}, this.handleMouseMove = params => {
|
|
28
|
-
var _a, _b;
|
|
29
28
|
if (this._alwaysShow) return;
|
|
30
|
-
if (this.
|
|
31
|
-
const nativeEvent = params.event.nativeEvent;
|
|
32
|
-
let target = nativeEvent.target;
|
|
33
|
-
nativeEvent.composedPath && nativeEvent.composedPath().length > 0 && (target = nativeEvent.composedPath()[0]);
|
|
34
|
-
const container = null === (_b = null === (_a = this.tooltipHandler) || void 0 === _a ? void 0 : _a.getTooltipContainer) || void 0 === _b ? void 0 : _b.call(_a);
|
|
35
|
-
if ((0, util_1.isValid)(container) && (0, vutils_1.hasParentElement)(target, container)) return;
|
|
36
|
-
}
|
|
29
|
+
if (this._isPointerOnTooltip(params)) return;
|
|
37
30
|
const mouseEventData = this._getMouseEventData(params), {tooltipInfo: {dimension: dimensionInfo}, ignore: {mark: ignoreMark, dimension: ignoreDimension}} = mouseEventData;
|
|
38
31
|
let markTooltipSuccess = !1, dimensionTooltipSuccess = !1;
|
|
39
32
|
markTooltipSuccess = this._showTooltipByMouseEvent("mark", mouseEventData, params),
|
|
@@ -104,7 +97,7 @@ class Tooltip extends base_1.BaseComponent {
|
|
|
104
97
|
const renderMode = null !== (_a = this._spec.renderMode) && void 0 !== _a ? _a : "html", userTooltipHandler = this._option.globalInstance.getTooltipHandlerByUser();
|
|
105
98
|
if (userTooltipHandler) this.tooltipHandler = userTooltipHandler; else {
|
|
106
99
|
const Handler = "canvas" === renderMode ? handler_1.CanvasTooltipHandler : handler_1.DomTooltipHandler, id = `${this._spec.className}-${null !== (_b = this._option.globalInstance.id) && void 0 !== _b ? _b : 0}-${null !== (_c = this._option.specIndex) && void 0 !== _c ? _c : 0}`;
|
|
107
|
-
this.tooltipHandler = new Handler(
|
|
100
|
+
this.tooltipHandler = new Handler(id, this);
|
|
108
101
|
}
|
|
109
102
|
}
|
|
110
103
|
initProcessor() {
|
|
@@ -118,17 +111,25 @@ class Tooltip extends base_1.BaseComponent {
|
|
|
118
111
|
const trigger = null !== (_a = this._spec.trigger) && void 0 !== _a ? _a : "hover", mode = this._option.mode;
|
|
119
112
|
"hover" === trigger ? (this.mountEvent("pointermove", {
|
|
120
113
|
level: constant_1.Event_Bubble_Level.chart
|
|
121
|
-
}, this.handleMouseMove), this.mountEvent("
|
|
122
|
-
level: constant_1.Event_Bubble_Level.chart
|
|
123
|
-
}, this.handleMouseOut), ((0, util_1.isMobileLikeMode)(mode) || (0, util_1.isMiniAppLikeMode)(mode)) && this.mountEvent("pointerdown", {
|
|
114
|
+
}, this.handleMouseMove), ((0, util_1.isMobileLikeMode)(mode) || (0, util_1.isMiniAppLikeMode)(mode)) && (this.mountEvent("pointerdown", {
|
|
124
115
|
level: constant_1.Event_Bubble_Level.chart
|
|
125
|
-
}, this.handleMouseMove)
|
|
116
|
+
}, this.handleMouseMove), this.mountEvent("pointerup", {
|
|
117
|
+
source: "window"
|
|
118
|
+
}, this.handleMouseOut)), this.mountEvent("pointermove", {
|
|
119
|
+
source: "window"
|
|
120
|
+
}, this.handleMouseOut)) : "click" === trigger && (this.mountEvent("pointertap", {
|
|
126
121
|
level: constant_1.Event_Bubble_Level.chart
|
|
127
|
-
}, this.handleMouseMove)
|
|
122
|
+
}, this.handleMouseMove), this.mountEvent("pointerup", {
|
|
123
|
+
source: "window"
|
|
124
|
+
}, this.handleMouseOut));
|
|
128
125
|
}
|
|
129
126
|
_initTheme(theme) {
|
|
130
127
|
super._initTheme(theme), this._spec.style = (0, util_1.merge)({}, this._theme, this._originalSpec.style);
|
|
131
128
|
}
|
|
129
|
+
reInit(theme) {
|
|
130
|
+
var _a, _b;
|
|
131
|
+
super.reInit(theme), null === (_b = null === (_a = this.tooltipHandler) || void 0 === _a ? void 0 : _a.reInit) || void 0 === _b || _b.call(_a);
|
|
132
|
+
}
|
|
132
133
|
setAttrFromSpec() {
|
|
133
134
|
var _a;
|
|
134
135
|
super.setAttrFromSpec();
|
|
@@ -181,9 +182,9 @@ class Tooltip extends base_1.BaseComponent {
|
|
|
181
182
|
}
|
|
182
183
|
if ((0, processor_1.isDimensionInfo)(this._cacheInfo)) return !1;
|
|
183
184
|
const prevInfo = this._cacheInfo;
|
|
184
|
-
return nextInfo.datum === prevInfo.datum && nextInfo.mark === prevInfo.mark && nextInfo.series === prevInfo.series;
|
|
185
|
+
return (null == nextInfo ? void 0 : nextInfo.datum) === prevInfo.datum && (null == nextInfo ? void 0 : nextInfo.mark) === prevInfo.mark && (null == nextInfo ? void 0 : nextInfo.series) === prevInfo.series;
|
|
185
186
|
}
|
|
186
|
-
|
|
187
|
+
_isPointerInChart(point) {
|
|
187
188
|
const globalInstance = this._option.globalInstance, chart = globalInstance.getChart();
|
|
188
189
|
if (!chart) return !1;
|
|
189
190
|
const {x: x, y: y} = point, container = globalInstance.getContainer(), {x: chartX, y: chartY} = (0,
|
|
@@ -191,6 +192,20 @@ class Tooltip extends base_1.BaseComponent {
|
|
|
191
192
|
vutils_1.getElementAbsoluteScrollOffset)(container), canvasRect = chart.getCanvasRect(), chartWidth = null == canvasRect ? void 0 : canvasRect.width, chartHeight = null == canvasRect ? void 0 : canvasRect.height;
|
|
192
193
|
return x >= chartX - scrollOffsetX && x <= chartX + chartWidth - scrollOffsetX && y >= chartY - scrollOffsetY && y <= chartY + chartHeight - scrollOffsetY;
|
|
193
194
|
}
|
|
195
|
+
_isPointerOnTooltip(params) {
|
|
196
|
+
var _a, _b;
|
|
197
|
+
if (this._spec.enterable && "html" === this._spec.renderMode) {
|
|
198
|
+
const {event: event} = params;
|
|
199
|
+
let target;
|
|
200
|
+
if ((0, util_1.isValid)(event.nativeEvent)) {
|
|
201
|
+
const nativeEvent = event.nativeEvent;
|
|
202
|
+
target = nativeEvent.target, nativeEvent.composedPath && nativeEvent.composedPath().length > 0 && (target = nativeEvent.composedPath()[0]);
|
|
203
|
+
} else target = event.target;
|
|
204
|
+
const container = null === (_b = null === (_a = this.tooltipHandler) || void 0 === _a ? void 0 : _a.getTooltipContainer) || void 0 === _b ? void 0 : _b.call(_a);
|
|
205
|
+
if ((0, util_1.isValid)(container) && (0, util_1.isValid)(target) && (0, vutils_1.hasParentElement)(target, container)) return !0;
|
|
206
|
+
}
|
|
207
|
+
return !1;
|
|
208
|
+
}
|
|
194
209
|
}
|
|
195
210
|
|
|
196
211
|
exports.Tooltip = Tooltip, Tooltip.type = interface_1.ComponentTypeEnum.tooltip;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/component/tooltip/tooltip.ts"],"names":[],"mappings":"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","file":"tooltip.js","sourcesContent":["import type { IComponentOption } from '../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { ComponentTypeEnum } from '../interface';\nimport type { IModelLayoutOption, IModelRenderOption, ILayoutItem } from '../../model/interface';\nimport type { IRegion } from '../../region/interface';\nimport { BaseComponent } from '../base';\nimport type { BaseEventParams, EventCallback, EventQuery, EventType } from '../../event/interface';\nimport type { ITooltipHandler, IToolTipLineActual, TooltipActiveType } from '../../typings/tooltip';\nimport { DomTooltipHandler, CanvasTooltipHandler } from './handler';\nimport type { Datum, IPoint, IShowTooltipOption } from '../../typings';\nimport {\n cloneDeep,\n isArray,\n isValid,\n merge,\n isMobileLikeMode,\n isTrueBrowser,\n isNil,\n isMiniAppLikeMode\n} from '../../util';\nimport type {\n ITooltipActiveTypeAsKeys,\n ITooltipSpec,\n ITooltipTheme,\n TooltipHandlerParams,\n TotalMouseEventData\n} from './interface';\nimport { TOOLTIP_EL_CLASS_NAME } from './handler/constants';\n// eslint-disable-next-line no-duplicate-imports\nimport { getTooltipActualActiveType, showTooltip, isEmptyPos } from './utils';\nimport { isSameDimensionInfo } from '../../event/events/dimension/util';\nimport { Event_Bubble_Level, Event_Source_Type } from '../../constant';\nimport type { DimensionTooltipInfo, MarkTooltipInfo, TooltipInfo } from './processor';\n// eslint-disable-next-line no-duplicate-imports\nimport { isDimensionInfo, isMarkInfo, MarkTooltipProcessor, DimensionTooltipProcessor } from './processor';\nimport { getElementAbsolutePosition, getElementAbsoluteScrollOffset, hasParentElement } from '@visactor/vutils';\n\nexport type TooltipContent = {\n title?: IToolTipLineActual;\n content?: IToolTipLineActual[];\n};\n\nexport class Tooltip extends BaseComponent {\n static type = ComponentTypeEnum.tooltip;\n type = ComponentTypeEnum.tooltip;\n name: string = ComponentTypeEnum.tooltip;\n\n layoutType: ILayoutItem['layoutType'] = 'absolute';\n\n static createComponent(spec: any, options: IComponentOption) {\n const tooltipSpec = spec.tooltip;\n if (!tooltipSpec) {\n return null;\n }\n if (!isArray(tooltipSpec)) {\n return new Tooltip(tooltipSpec, { ...options, specKey: 'tooltip' });\n }\n const tooltips: Tooltip[] = [];\n tooltipSpec.forEach((s: any, i: number) => {\n tooltips.push(new Tooltip(s, { ...options, specIndex: i, specKey: 'tooltip' }));\n });\n return tooltips;\n }\n\n tooltipHandler?: ITooltipHandler;\n\n private _alwaysShow: boolean = false;\n\n private _cacheInfo: TooltipInfo | undefined;\n\n private _eventList: {\n eventType: EventType;\n handler: any;\n }[] = [];\n\n protected declare _spec: ITooltipSpec;\n\n protected declare _theme: ITooltipTheme;\n\n protected _processor: ITooltipActiveTypeAsKeys<MarkTooltipProcessor, DimensionTooltipProcessor>;\n\n changeRegions(regions: IRegion[]) {\n /* do nothing */\n }\n protected registerEvent() {\n /* do nothing */\n }\n protected releaseEvent() {\n /* do nothing */\n }\n onLayout(ctx: IModelLayoutOption) {\n /* do nothing */\n }\n onLayoutEnd(ctx: IModelLayoutOption) {\n /* do nothing */\n }\n onRender(ctx: IModelRenderOption) {\n /* do nothing */\n }\n\n created() {\n super.created();\n this._regions = this._option.getAllRegions();\n // handler\n this.initHandler();\n // processor\n this.initProcessor();\n // event\n this.initEvent();\n }\n\n release() {\n super.release();\n\n this._eventList.forEach(({ eventType, handler }) => {\n this.event.off(eventType, handler);\n });\n this._eventList = [];\n this.tooltipHandler?.release?.();\n }\n\n protected initHandler() {\n const renderMode = this._spec.renderMode ?? 'html';\n\n const userTooltipHandler = this._option.globalInstance.getTooltipHandlerByUser();\n if (userTooltipHandler) {\n this.tooltipHandler = userTooltipHandler;\n } else {\n // 构造内部默认 handler\n const Handler = renderMode === 'canvas' ? CanvasTooltipHandler : DomTooltipHandler;\n const id = `${this._spec.className}-${this._option.globalInstance.id ?? 0}-${this._option.specIndex ?? 0}`;\n this.tooltipHandler = new Handler(this._spec, id, this);\n }\n }\n\n protected initProcessor() {\n // 初始化 tooltip 类型\n this._processor = {\n mark: new MarkTooltipProcessor(this),\n dimension: new DimensionTooltipProcessor(this)\n };\n }\n\n protected initEvent() {\n const trigger = this._spec.trigger ?? 'hover';\n // TODO: triggerOff完整支持\n // const triggerOff = this._spec.triggerOff ?? trigger;\n const mode = this._option.mode;\n\n if (trigger === 'hover') {\n this.mountEvent('pointermove', { level: Event_Bubble_Level.chart }, this.handleMouseMove);\n this.mountEvent('pointerleave', { level: Event_Bubble_Level.chart }, this.handleMouseOut);\n // TODO: 需要封装一个复合事件,用于移动端的点按+滑动触发\n if (isMobileLikeMode(mode) || isMiniAppLikeMode(mode)) {\n this.mountEvent('pointerdown', { level: Event_Bubble_Level.chart }, this.handleMouseMove);\n }\n } else if (trigger === 'click') {\n this.mountEvent('pointertap', { level: Event_Bubble_Level.chart }, this.handleMouseMove);\n }\n }\n\n protected mountEvent = (eType: EventType, query: EventQuery, callback: EventCallback<any>) => {\n this.event.on(eType, query, callback);\n this._eventList.push({\n eventType: eType,\n handler: callback\n });\n };\n\n protected handleMouseOut = (params: BaseEventParams) => {\n if (this._alwaysShow) {\n return;\n }\n\n // 当 enterable 为true,同时鼠标移入 tooltip 时 pointerleave 事件也会触发,所以这里做一个判断\n const { clientX, clientY } = params.event as MouseEvent;\n if (isTrueBrowser(this._option.mode) && this._isPointInChart({ x: clientX, y: clientY })) {\n return;\n }\n\n this.handleChartMouseOut(params);\n };\n\n protected handleChartMouseOut = (params: BaseEventParams) => {\n if (this._alwaysShow) {\n return;\n }\n\n if (this._spec.triggerOff !== 'none') {\n this._hideTooltipByHandler({\n ...params\n });\n this._cacheInfo = undefined;\n }\n };\n\n protected handleMouseMove = (params: BaseEventParams) => {\n if (this._alwaysShow) {\n return;\n }\n\n // TODO:后续支持 renderMode === 'canvas' 场景\n if (this._spec.enterable && this._spec.renderMode === 'html') {\n // get native event object\n const nativeEvent = params.event.nativeEvent;\n let target = nativeEvent.target;\n // if in shadow DOM use composedPath to access target\n if (nativeEvent.composedPath && nativeEvent.composedPath().length > 0) {\n target = nativeEvent.composedPath()[0];\n }\n\n const container = this.tooltipHandler?.getTooltipContainer?.();\n if (isValid(container) && hasParentElement(target, container)) {\n return;\n }\n }\n\n /* 获取 tooltip 原始数据 */\n const mouseEventData = this._getMouseEventData(params);\n const {\n tooltipInfo: { dimension: dimensionInfo },\n ignore: { mark: ignoreMark, dimension: ignoreDimension }\n } = mouseEventData;\n\n let markTooltipSuccess: boolean = false;\n let dimensionTooltipSuccess: boolean = false;\n\n /* 显示常规tooltip */\n markTooltipSuccess = this._showTooltipByMouseEvent('mark', mouseEventData, params);\n if (!markTooltipSuccess) {\n dimensionTooltipSuccess = this._showTooltipByMouseEvent('dimension', mouseEventData, params);\n }\n\n /* 如果不是常规情况,进行一些特殊情况tooltip处理 */\n if (!markTooltipSuccess && !dimensionTooltipSuccess && !isEmptyPos(params)) {\n // 用户手动配置ignore,则继续显示缓存tooltip\n if (ignoreMark && isMarkInfo(this._cacheInfo)) {\n markTooltipSuccess = this._showTooltipByMouseEvent('mark', mouseEventData, params, true);\n } else if (ignoreDimension && isDimensionInfo(this._cacheInfo)) {\n dimensionTooltipSuccess = this._showTooltipByMouseEvent('dimension', mouseEventData, params, true);\n } else if (isValid(dimensionInfo)) {\n // 用户没有手动配置ignore的话,默认显示dimension tooltip\n dimensionTooltipSuccess = this._showTooltipByMouseEvent('dimension', mouseEventData, params);\n }\n }\n\n /* 如果还是不应该显示tooltip,则隐藏上一次tooltip */\n if (!markTooltipSuccess && (!dimensionTooltipSuccess || isNil(dimensionInfo))) {\n this.handleChartMouseOut(params);\n }\n };\n\n /**\n * 通过鼠标事件触发 tooltip,返回是否成功\n * @param activeType tooltip 类型\n * @param mouseEventData tooltip 相关数据\n * @param params 事件参数\n * @param useCache 是否直接显示缓存 tooltip\n * @returns 是否成功执行\n */\n protected _showTooltipByMouseEvent = (\n activeType: TooltipActiveType,\n mouseEventData: TotalMouseEventData,\n params: BaseEventParams,\n useCache?: boolean\n ): boolean => {\n const processor = this._processor[activeType];\n // 判断是否应该触发 tooltip\n if (\n !processor.shouldHandleTooltip(params, {\n tooltipInfo: mouseEventData.tooltipInfo[activeType],\n ignore: mouseEventData.ignore[activeType]\n })\n ) {\n return false;\n }\n\n let success: boolean;\n if (useCache) {\n // 直接显示缓存 tooltip\n success = !processor.showTooltip(this._cacheInfo as any, params, true);\n } else {\n const tooltipInfo = mouseEventData.tooltipInfo[activeType];\n const isSameAsCache = this._isSameAsCacheInfo(tooltipInfo);\n success = !processor.showTooltip(tooltipInfo as any, params, isSameAsCache);\n if (success) {\n // 成功显示 tooltip,则更新缓存\n this._cacheInfo = tooltipInfo;\n }\n }\n return success;\n };\n\n protected _getMouseEventData = (params: BaseEventParams): TotalMouseEventData => {\n const result: TotalMouseEventData = {\n tooltipInfo: {},\n ignore: {}\n };\n Object.keys(this._processor).forEach(activeType => {\n const { tooltipInfo, ignore } = this._processor[activeType].getMouseEventData(params);\n result.tooltipInfo[activeType] = tooltipInfo;\n result.ignore[activeType] = ignore;\n });\n return result;\n };\n\n protected _hideTooltipByHandler = (params: TooltipHandlerParams) => {\n if (this.tooltipHandler?.hideTooltip) {\n this.tooltipHandler.hideTooltip(params);\n }\n };\n\n protected _initTheme(theme?: any) {\n super._initTheme(theme);\n this._spec.style = merge({}, this._theme, this._originalSpec.style);\n }\n\n setAttrFromSpec() {\n super.setAttrFromSpec();\n const userSpec = this._spec as ITooltipSpec;\n this._spec = {\n ...userSpec,\n visible: isValid(userSpec.visible) ? userSpec.visible : true,\n activeType: getTooltipActualActiveType(userSpec),\n renderMode: 'html',\n trigger: isValid(userSpec.trigger) ? userSpec.trigger : 'hover',\n className: isValid(userSpec.className) ? userSpec.className : TOOLTIP_EL_CLASS_NAME,\n enterable: isValid(userSpec.enterable) ? userSpec.enterable : false,\n transitionDuration: isValid(userSpec.transitionDuration) ? userSpec.transitionDuration : 150\n } as ITooltipSpec;\n this._spec.triggerOff = isValid(userSpec.triggerOff) ? userSpec.triggerOff : this._spec.trigger;\n\n if (isValid(userSpec.renderMode)) {\n this._spec.renderMode = userSpec.renderMode;\n } else if (isMiniAppLikeMode(this._option.mode)) {\n // 小程序环境下,默认使用canvas渲染\n this._spec.renderMode = 'canvas';\n }\n\n if (isValid(userSpec.mark)) {\n this._spec.mark = {\n ...cloneDeep(userSpec.mark),\n activeType: 'mark'\n };\n }\n if (isValid(userSpec.dimension)) {\n this._spec.dimension = {\n ...cloneDeep(userSpec.dimension),\n activeType: 'dimension'\n };\n }\n\n if (isValid(userSpec.parentElement)) {\n this._spec.parentElement = userSpec.parentElement;\n } else if (isTrueBrowser(this._option.mode)) {\n this._spec.parentElement = globalThis.document?.body;\n }\n\n if (isValid(userSpec.confine)) {\n this._spec.confine = userSpec.confine;\n } else {\n this._spec.confine = this._spec.renderMode === 'canvas';\n }\n }\n\n showTooltip(datum: Datum, options: IShowTooltipOption) {\n if (!this.tooltipHandler?.showTooltip) {\n return false;\n }\n const result = showTooltip(datum, options, this.tooltipHandler, this._option);\n if (result !== 'none') {\n this._alwaysShow = !!options?.alwaysShow;\n }\n return result;\n }\n\n hideTooltip() {\n if (!this.tooltipHandler?.hideTooltip) {\n return false;\n }\n this._alwaysShow = false;\n this.tooltipHandler.hideTooltip({\n changePositionOnly: false,\n item: undefined,\n datum: undefined,\n source: Event_Source_Type.chart\n } as any);\n return true;\n }\n\n private _isSameAsCacheInfo(nextInfo?: TooltipInfo): boolean {\n if (nextInfo === this._cacheInfo) {\n return true;\n }\n if (isNil(this._cacheInfo) || isNil(nextInfo)) {\n return false;\n }\n\n if (isDimensionInfo(nextInfo)) {\n if (isMarkInfo(this._cacheInfo)) {\n return false;\n }\n\n const prevInfo = this._cacheInfo as DimensionTooltipInfo;\n return prevInfo.length === nextInfo.length && nextInfo.every((info, i) => isSameDimensionInfo(info, prevInfo[i]));\n }\n if (isDimensionInfo(this._cacheInfo)) {\n return false;\n }\n\n const prevInfo = this._cacheInfo as MarkTooltipInfo;\n return nextInfo.datum === prevInfo.datum && nextInfo.mark === prevInfo.mark && nextInfo.series === prevInfo.series;\n }\n\n private _isPointInChart(point: IPoint): boolean {\n const globalInstance = this._option.globalInstance;\n const chart = globalInstance.getChart();\n if (!chart) {\n return false;\n }\n const { x, y } = point;\n const container = globalInstance.getContainer();\n const { x: chartX, y: chartY } = getElementAbsolutePosition(container);\n const { x: scrollOffsetX, y: scrollOffsetY } = getElementAbsoluteScrollOffset(container);\n const canvasRect = chart.getCanvasRect();\n const chartWidth = canvasRect?.width;\n const chartHeight = canvasRect?.height;\n // 鼠标仍在图表范围内,则不处理\n if (\n x >= chartX - scrollOffsetX &&\n x <= chartX + chartWidth - scrollOffsetX &&\n y >= chartY - scrollOffsetY &&\n y <= chartY + chartHeight - scrollOffsetY\n ) {\n return true;\n }\n\n return false;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/component/tooltip/tooltip.ts"],"names":[],"mappings":"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","file":"tooltip.js","sourcesContent":["import type { IComponentOption } from '../interface';\n// eslint-disable-next-line no-duplicate-imports\nimport { ComponentTypeEnum } from '../interface';\nimport type { IModelLayoutOption, IModelRenderOption, ILayoutItem } from '../../model/interface';\nimport type { IRegion } from '../../region/interface';\nimport { BaseComponent } from '../base';\nimport type { BaseEventParams, EventCallback, EventQuery, EventType } from '../../event/interface';\nimport type { ITooltipHandler, IToolTipLineActual, TooltipActiveType } from '../../typings/tooltip';\nimport { DomTooltipHandler, CanvasTooltipHandler } from './handler';\nimport type { Datum, IPoint, IShowTooltipOption } from '../../typings';\nimport {\n cloneDeep,\n isArray,\n isValid,\n merge,\n isMobileLikeMode,\n isTrueBrowser,\n isNil,\n isMiniAppLikeMode\n} from '../../util';\nimport type {\n ITooltipActiveTypeAsKeys,\n ITooltipSpec,\n ITooltipTheme,\n TooltipHandlerParams,\n TotalMouseEventData\n} from './interface';\nimport { TOOLTIP_EL_CLASS_NAME } from './handler/constants';\n// eslint-disable-next-line no-duplicate-imports\nimport { getTooltipActualActiveType, showTooltip, isEmptyPos } from './utils';\nimport { isSameDimensionInfo } from '../../event/events/dimension/util';\nimport { Event_Bubble_Level, Event_Source_Type } from '../../constant';\nimport type { DimensionTooltipInfo, MarkTooltipInfo, TooltipInfo } from './processor';\n// eslint-disable-next-line no-duplicate-imports\nimport { isDimensionInfo, isMarkInfo, MarkTooltipProcessor, DimensionTooltipProcessor } from './processor';\nimport { getElementAbsolutePosition, getElementAbsoluteScrollOffset, hasParentElement } from '@visactor/vutils';\n\nexport type TooltipContent = {\n title?: IToolTipLineActual;\n content?: IToolTipLineActual[];\n};\n\nexport class Tooltip extends BaseComponent {\n static type = ComponentTypeEnum.tooltip;\n type = ComponentTypeEnum.tooltip;\n name: string = ComponentTypeEnum.tooltip;\n\n layoutType: ILayoutItem['layoutType'] = 'absolute';\n\n static createComponent(spec: any, options: IComponentOption) {\n const tooltipSpec = spec.tooltip;\n if (!tooltipSpec) {\n return null;\n }\n if (!isArray(tooltipSpec)) {\n return new Tooltip(tooltipSpec, { ...options, specKey: 'tooltip' });\n }\n const tooltips: Tooltip[] = [];\n tooltipSpec.forEach((s: any, i: number) => {\n tooltips.push(new Tooltip(s, { ...options, specIndex: i, specKey: 'tooltip' }));\n });\n return tooltips;\n }\n\n tooltipHandler?: ITooltipHandler;\n\n private _alwaysShow: boolean = false;\n\n private _cacheInfo: TooltipInfo | undefined;\n\n private _eventList: {\n eventType: EventType;\n handler: any;\n }[] = [];\n\n protected declare _spec: ITooltipSpec;\n\n protected declare _theme: ITooltipTheme;\n\n protected _processor: ITooltipActiveTypeAsKeys<MarkTooltipProcessor, DimensionTooltipProcessor>;\n\n changeRegions(regions: IRegion[]) {\n /* do nothing */\n }\n protected registerEvent() {\n /* do nothing */\n }\n protected releaseEvent() {\n /* do nothing */\n }\n onLayout(ctx: IModelLayoutOption) {\n /* do nothing */\n }\n onLayoutEnd(ctx: IModelLayoutOption) {\n /* do nothing */\n }\n onRender(ctx: IModelRenderOption) {\n /* do nothing */\n }\n\n created() {\n super.created();\n this._regions = this._option.getAllRegions();\n // handler\n this.initHandler();\n // processor\n this.initProcessor();\n // event\n this.initEvent();\n }\n\n release() {\n super.release();\n\n this._eventList.forEach(({ eventType, handler }) => {\n this.event.off(eventType, handler);\n });\n this._eventList = [];\n this.tooltipHandler?.release?.();\n }\n\n protected initHandler() {\n const renderMode = this._spec.renderMode ?? 'html';\n\n const userTooltipHandler = this._option.globalInstance.getTooltipHandlerByUser();\n if (userTooltipHandler) {\n this.tooltipHandler = userTooltipHandler;\n } else {\n // 构造内部默认 handler\n const Handler = renderMode === 'canvas' ? CanvasTooltipHandler : DomTooltipHandler;\n const id = `${this._spec.className}-${this._option.globalInstance.id ?? 0}-${this._option.specIndex ?? 0}`;\n this.tooltipHandler = new Handler(id, this);\n }\n }\n\n protected initProcessor() {\n // 初始化 tooltip 类型\n this._processor = {\n mark: new MarkTooltipProcessor(this),\n dimension: new DimensionTooltipProcessor(this)\n };\n }\n\n protected initEvent() {\n const trigger = this._spec.trigger ?? 'hover';\n // TODO: triggerOff完整支持\n // const triggerOff = this._spec.triggerOff ?? trigger;\n const mode = this._option.mode;\n\n if (trigger === 'hover') {\n this.mountEvent('pointermove', { level: Event_Bubble_Level.chart }, this.handleMouseMove);\n // 移动端的点按 + 滑动触发\n if (isMobileLikeMode(mode) || isMiniAppLikeMode(mode)) {\n this.mountEvent('pointerdown', { level: Event_Bubble_Level.chart }, this.handleMouseMove);\n this.mountEvent('pointerup', { source: 'window' }, this.handleMouseOut);\n }\n this.mountEvent('pointermove', { source: 'window' }, this.handleMouseOut);\n } else if (trigger === 'click') {\n this.mountEvent('pointertap', { level: Event_Bubble_Level.chart }, this.handleMouseMove);\n this.mountEvent('pointerup', { source: 'window' }, this.handleMouseOut);\n }\n }\n\n protected mountEvent = (eType: EventType, query: EventQuery, callback: EventCallback<any>) => {\n this.event.on(eType, query, callback);\n this._eventList.push({\n eventType: eType,\n handler: callback\n });\n };\n\n protected handleMouseOut = (params: BaseEventParams) => {\n if (this._alwaysShow) {\n return;\n }\n\n // 当 enterable 为 true,同时鼠标移入 tooltip 时 pointerleave 事件也会触发,所以这里做一个判断\n const { clientX, clientY } = params.event as MouseEvent;\n if (\n isTrueBrowser(this._option.mode) &&\n (this._isPointerInChart({ x: clientX, y: clientY }) || this._isPointerOnTooltip(params))\n ) {\n return;\n }\n\n this.handleChartMouseOut(params);\n };\n\n protected handleChartMouseOut = (params: BaseEventParams) => {\n if (this._alwaysShow) {\n return;\n }\n\n if (this._spec.triggerOff !== 'none') {\n this._hideTooltipByHandler({\n ...params\n });\n this._cacheInfo = undefined;\n }\n };\n\n protected handleMouseMove = (params: BaseEventParams) => {\n if (this._alwaysShow) {\n return;\n }\n if (this._isPointerOnTooltip(params)) {\n return;\n }\n\n /* 获取 tooltip 原始数据 */\n const mouseEventData = this._getMouseEventData(params);\n const {\n tooltipInfo: { dimension: dimensionInfo },\n ignore: { mark: ignoreMark, dimension: ignoreDimension }\n } = mouseEventData;\n\n let markTooltipSuccess: boolean = false;\n let dimensionTooltipSuccess: boolean = false;\n\n /* 显示常规tooltip */\n markTooltipSuccess = this._showTooltipByMouseEvent('mark', mouseEventData, params);\n if (!markTooltipSuccess) {\n dimensionTooltipSuccess = this._showTooltipByMouseEvent('dimension', mouseEventData, params);\n }\n\n /* 如果不是常规情况,进行一些特殊情况tooltip处理 */\n if (!markTooltipSuccess && !dimensionTooltipSuccess && !isEmptyPos(params)) {\n // 用户手动配置ignore,则继续显示缓存tooltip\n if (ignoreMark && isMarkInfo(this._cacheInfo)) {\n markTooltipSuccess = this._showTooltipByMouseEvent('mark', mouseEventData, params, true);\n } else if (ignoreDimension && isDimensionInfo(this._cacheInfo)) {\n dimensionTooltipSuccess = this._showTooltipByMouseEvent('dimension', mouseEventData, params, true);\n } else if (isValid(dimensionInfo)) {\n // 用户没有手动配置ignore的话,默认显示dimension tooltip\n dimensionTooltipSuccess = this._showTooltipByMouseEvent('dimension', mouseEventData, params);\n }\n }\n\n /* 如果还是不应该显示tooltip,则隐藏上一次tooltip */\n if (!markTooltipSuccess && (!dimensionTooltipSuccess || isNil(dimensionInfo))) {\n this.handleChartMouseOut(params);\n }\n };\n\n /**\n * 通过鼠标事件触发 tooltip,返回是否成功\n * @param activeType tooltip 类型\n * @param mouseEventData tooltip 相关数据\n * @param params 事件参数\n * @param useCache 是否直接显示缓存 tooltip\n * @returns 是否成功执行\n */\n protected _showTooltipByMouseEvent = (\n activeType: TooltipActiveType,\n mouseEventData: TotalMouseEventData,\n params: BaseEventParams,\n useCache?: boolean\n ): boolean => {\n const processor = this._processor[activeType];\n // 判断是否应该触发 tooltip\n if (\n !processor.shouldHandleTooltip(params, {\n tooltipInfo: mouseEventData.tooltipInfo[activeType],\n ignore: mouseEventData.ignore[activeType]\n })\n ) {\n return false;\n }\n\n let success: boolean;\n if (useCache) {\n // 直接显示缓存 tooltip\n success = !processor.showTooltip(this._cacheInfo as any, params, true);\n } else {\n const tooltipInfo = mouseEventData.tooltipInfo[activeType];\n const isSameAsCache = this._isSameAsCacheInfo(tooltipInfo);\n success = !processor.showTooltip(tooltipInfo as any, params, isSameAsCache);\n if (success) {\n // 成功显示 tooltip,则更新缓存\n this._cacheInfo = tooltipInfo;\n }\n }\n return success;\n };\n\n protected _getMouseEventData = (params: BaseEventParams): TotalMouseEventData => {\n const result: TotalMouseEventData = {\n tooltipInfo: {},\n ignore: {}\n };\n Object.keys(this._processor).forEach(activeType => {\n const { tooltipInfo, ignore } = this._processor[activeType].getMouseEventData(params);\n result.tooltipInfo[activeType] = tooltipInfo;\n result.ignore[activeType] = ignore;\n });\n return result;\n };\n\n protected _hideTooltipByHandler = (params: TooltipHandlerParams) => {\n if (this.tooltipHandler?.hideTooltip) {\n this.tooltipHandler.hideTooltip(params);\n }\n };\n\n protected _initTheme(theme?: any) {\n super._initTheme(theme);\n this._spec.style = merge({}, this._theme, this._originalSpec.style);\n }\n\n reInit(theme?: any) {\n super.reInit(theme);\n this.tooltipHandler?.reInit?.();\n }\n\n setAttrFromSpec() {\n super.setAttrFromSpec();\n const userSpec = this._spec as ITooltipSpec;\n this._spec = {\n ...userSpec,\n visible: isValid(userSpec.visible) ? userSpec.visible : true,\n activeType: getTooltipActualActiveType(userSpec),\n renderMode: 'html',\n trigger: isValid(userSpec.trigger) ? userSpec.trigger : 'hover',\n className: isValid(userSpec.className) ? userSpec.className : TOOLTIP_EL_CLASS_NAME,\n enterable: isValid(userSpec.enterable) ? userSpec.enterable : false,\n transitionDuration: isValid(userSpec.transitionDuration) ? userSpec.transitionDuration : 150\n } as ITooltipSpec;\n this._spec.triggerOff = isValid(userSpec.triggerOff) ? userSpec.triggerOff : this._spec.trigger;\n\n if (isValid(userSpec.renderMode)) {\n this._spec.renderMode = userSpec.renderMode;\n } else if (isMiniAppLikeMode(this._option.mode)) {\n // 小程序环境下,默认使用canvas渲染\n this._spec.renderMode = 'canvas';\n }\n\n if (isValid(userSpec.mark)) {\n this._spec.mark = {\n ...cloneDeep(userSpec.mark),\n activeType: 'mark'\n };\n }\n if (isValid(userSpec.dimension)) {\n this._spec.dimension = {\n ...cloneDeep(userSpec.dimension),\n activeType: 'dimension'\n };\n }\n\n if (isValid(userSpec.parentElement)) {\n this._spec.parentElement = userSpec.parentElement;\n } else if (isTrueBrowser(this._option.mode)) {\n this._spec.parentElement = globalThis.document?.body;\n }\n\n if (isValid(userSpec.confine)) {\n this._spec.confine = userSpec.confine;\n } else {\n this._spec.confine = this._spec.renderMode === 'canvas';\n }\n }\n\n showTooltip(datum: Datum, options: IShowTooltipOption) {\n if (!this.tooltipHandler?.showTooltip) {\n return false;\n }\n const result = showTooltip(datum, options, this.tooltipHandler, this._option);\n if (result !== 'none') {\n this._alwaysShow = !!options?.alwaysShow;\n }\n return result;\n }\n\n hideTooltip() {\n if (!this.tooltipHandler?.hideTooltip) {\n return false;\n }\n this._alwaysShow = false;\n this.tooltipHandler.hideTooltip({\n changePositionOnly: false,\n item: undefined,\n datum: undefined,\n source: Event_Source_Type.chart\n } as any);\n return true;\n }\n\n private _isSameAsCacheInfo(nextInfo?: TooltipInfo): boolean {\n if (nextInfo === this._cacheInfo) {\n return true;\n }\n if (isNil(this._cacheInfo) || isNil(nextInfo)) {\n return false;\n }\n\n if (isDimensionInfo(nextInfo)) {\n if (isMarkInfo(this._cacheInfo)) {\n return false;\n }\n\n const prevInfo = this._cacheInfo as DimensionTooltipInfo;\n return prevInfo.length === nextInfo.length && nextInfo.every((info, i) => isSameDimensionInfo(info, prevInfo[i]));\n }\n if (isDimensionInfo(this._cacheInfo)) {\n return false;\n }\n\n const prevInfo = this._cacheInfo as MarkTooltipInfo;\n return (\n nextInfo?.datum === prevInfo.datum && nextInfo?.mark === prevInfo.mark && nextInfo?.series === prevInfo.series\n );\n }\n\n private _isPointerInChart(point: IPoint): boolean {\n const globalInstance = this._option.globalInstance;\n const chart = globalInstance.getChart();\n if (!chart) {\n return false;\n }\n const { x, y } = point;\n const container = globalInstance.getContainer();\n const { x: chartX, y: chartY } = getElementAbsolutePosition(container);\n const { x: scrollOffsetX, y: scrollOffsetY } = getElementAbsoluteScrollOffset(container);\n const canvasRect = chart.getCanvasRect();\n const chartWidth = canvasRect?.width;\n const chartHeight = canvasRect?.height;\n // 鼠标仍在图表范围内,则不处理\n if (\n x >= chartX - scrollOffsetX &&\n x <= chartX + chartWidth - scrollOffsetX &&\n y >= chartY - scrollOffsetY &&\n y <= chartY + chartHeight - scrollOffsetY\n ) {\n return true;\n }\n\n return false;\n }\n\n private _isPointerOnTooltip(params: BaseEventParams): boolean {\n // TODO:后续支持 renderMode === 'canvas' 场景\n if (this._spec.enterable && this._spec.renderMode === 'html') {\n const { event } = params;\n let target: any;\n if (isValid(event.nativeEvent)) {\n // get native event object\n const nativeEvent = event.nativeEvent as Event;\n target = nativeEvent.target;\n // if in shadow DOM use composedPath to access target\n if (nativeEvent.composedPath && nativeEvent.composedPath().length > 0) {\n target = nativeEvent.composedPath()[0];\n }\n } else {\n target = event.target;\n }\n\n const container = this.tooltipHandler?.getTooltipContainer?.();\n if (isValid(container) && isValid(target) && hasParentElement(target, container)) {\n return true;\n }\n }\n return false;\n }\n}\n"]}
|
|
@@ -11,8 +11,10 @@ const util_1 = require("../../../util"), getTooltipActualActiveType = spec => {
|
|
|
11
11
|
mark: !1 !== (null === (_a = null == spec ? void 0 : spec.mark) || void 0 === _a ? void 0 : _a.visible),
|
|
12
12
|
dimension: !1 !== (null === (_b = null == spec ? void 0 : spec.dimension) || void 0 === _b ? void 0 : _b.visible)
|
|
13
13
|
};
|
|
14
|
-
return (0, util_1.isValid)(null == spec ? void 0 : spec.activeType) && Object.keys(activeTypeMap).forEach((t =>
|
|
15
|
-
|
|
14
|
+
return (0, util_1.isValid)(null == spec ? void 0 : spec.activeType) && Object.keys(activeTypeMap).forEach((t => {
|
|
15
|
+
var _a;
|
|
16
|
+
activeTypeMap[t] = null === (_a = null == spec ? void 0 : spec.activeType) || void 0 === _a ? void 0 : _a.includes(t);
|
|
17
|
+
})), Object.keys(activeTypeMap).filter((t => activeTypeMap[t]));
|
|
16
18
|
};
|
|
17
19
|
|
|
18
20
|
function isEmptyPos(params) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/component/tooltip/utils/common.ts"],"names":[],"mappings":";;;AAAA,wCAA+C;AAKxC,MAAM,0BAA0B,GAAG,CAAC,IAAmB,EAAuB,EAAE;;IACrF,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,MAAK,KAAK,EAAE;QAC3B,OAAO,EAAE,CAAC;KACX;IAED,MAAM,aAAa,GAA+C;QAChE,IAAI,EAAE,CAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,0CAAE,OAAO,MAAK,KAAK;QACnC,SAAS,EAAE,CAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,SAAS,0CAAE,OAAO,MAAK,KAAK;KAC9C,CAAC;IAEF,IAAI,IAAA,cAAO,EAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU,CAAC,EAAE;QAC7B,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,
|
|
1
|
+
{"version":3,"sources":["../src/component/tooltip/utils/common.ts"],"names":[],"mappings":";;;AAAA,wCAA+C;AAKxC,MAAM,0BAA0B,GAAG,CAAC,IAAmB,EAAuB,EAAE;;IACrF,IAAI,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,MAAK,KAAK,EAAE;QAC3B,OAAO,EAAE,CAAC;KACX;IAED,MAAM,aAAa,GAA+C;QAChE,IAAI,EAAE,CAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,0CAAE,OAAO,MAAK,KAAK;QACnC,SAAS,EAAE,CAAA,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,SAAS,0CAAE,OAAO,MAAK,KAAK;KAC9C,CAAC;IAEF,IAAI,IAAA,cAAO,EAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU,CAAC,EAAE;QAC7B,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;;YACrC,aAAa,CAAC,CAAC,CAAC,GAAG,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU,0CAAE,QAAQ,CAAC,CAAsB,CAAC,CAAC;QACxE,CAAC,CAAC,CAAC;KACJ;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAwB,CAAC;AACzF,CAAC,CAAC;AAjBW,QAAA,0BAA0B,8BAiBrC;AAEF,SAAgB,UAAU,CAAC,MAAuB;IAChD,OAAO,IAAA,YAAK,EAAC,MAAM,CAAC,IAAI,CAAC,IAAI,IAAA,YAAK,EAAC,MAAM,CAAC,KAAK,CAAC,IAAI,IAAA,YAAK,EAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC1E,CAAC;AAFD,gCAEC","file":"common.js","sourcesContent":["import { isNil, isValid } from '../../../util';\nimport type { TooltipActiveType } from '../../../typings';\nimport type { ITooltipActiveTypeAsKeys, ITooltipSpec } from '../interface';\nimport type { BaseEventParams } from '../../../event/interface';\n\nexport const getTooltipActualActiveType = (spec?: ITooltipSpec): TooltipActiveType[] => {\n if (spec?.visible === false) {\n return [];\n }\n\n const activeTypeMap: ITooltipActiveTypeAsKeys<boolean, boolean> = {\n mark: spec?.mark?.visible !== false,\n dimension: spec?.dimension?.visible !== false\n };\n\n if (isValid(spec?.activeType)) {\n Object.keys(activeTypeMap).forEach(t => {\n activeTypeMap[t] = spec?.activeType?.includes(t as TooltipActiveType);\n });\n }\n\n return Object.keys(activeTypeMap).filter(t => activeTypeMap[t]) as TooltipActiveType[];\n};\n\nexport function isEmptyPos(params: BaseEventParams): boolean {\n return isNil(params.mark) && isNil(params.model) && isNil(params.datum);\n}\n"]}
|
|
@@ -9,4 +9,5 @@ const base_1 = require("./base");
|
|
|
9
9
|
exports.WORD_CLOUD_ANGLE = `${base_1.PREFIX}_WORD_CLOUD_ANGLE`, exports.WORD_CLOUD_FILLING_ANGLE = `${base_1.PREFIX}_WORD_CLOUD_FILLING_ANGLE`,
|
|
10
10
|
exports.WORD_CLOUD_WEIGHT = `${base_1.PREFIX}_WORD_CLOUD_WEIGHT`, exports.WORDCLOUD_COLOR = `${base_1.PREFIX}_WORDCLOUD_COLOR`,
|
|
11
11
|
exports.WORDCLOUD_DATA_TOTAL = `${base_1.PREFIX}_WORDCLOUD_DATA_TOTAL`, exports.WORD_CLOUD_TEXT = `${base_1.PREFIX}_WORD_CLOUD_TEXT`,
|
|
12
|
-
exports.WORDCLOUD_SHAPE_DATA_TOTAL = `${base_1.PREFIX}_WORDCLOUD_SHAPE_DATA_TOTAL`;
|
|
12
|
+
exports.WORDCLOUD_SHAPE_DATA_TOTAL = `${base_1.PREFIX}_WORDCLOUD_SHAPE_DATA_TOTAL`;
|
|
13
|
+
//# sourceMappingURL=word-cloud.js.map
|
package/cjs/core/factory.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { VChart } from '
|
|
2
|
-
import { Factory } from '
|
|
1
|
+
import { VChart } from './vchart';
|
|
2
|
+
import { Factory } from './factory';
|
|
3
3
|
export { VChart, Factory };
|
|
4
|
-
export declare const version = "1.0
|
|
5
|
-
export type { IVChart } from '
|
|
4
|
+
export declare const version = "1.1.0-beta.0";
|
|
5
|
+
export type { IVChart } from './interface';
|
|
6
6
|
export * from '../event/interface';
|
|
7
7
|
export * from '../typings/spec/common';
|
|
8
8
|
export type { IStateSpec, StateValueType } from '../compile/mark';
|
|
@@ -19,7 +19,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
19
19
|
value: !0
|
|
20
20
|
}), exports.version = exports.Factory = exports.VChart = void 0;
|
|
21
21
|
|
|
22
|
-
const vchart_1 = require("
|
|
22
|
+
const vchart_1 = require("./vchart");
|
|
23
23
|
|
|
24
24
|
Object.defineProperty(exports, "VChart", {
|
|
25
25
|
enumerable: !0,
|
|
@@ -28,7 +28,7 @@ Object.defineProperty(exports, "VChart", {
|
|
|
28
28
|
}
|
|
29
29
|
});
|
|
30
30
|
|
|
31
|
-
const factory_1 = require("
|
|
31
|
+
const factory_1 = require("./factory");
|
|
32
32
|
|
|
33
33
|
Object.defineProperty(exports, "Factory", {
|
|
34
34
|
enumerable: !0,
|
|
@@ -37,10 +37,10 @@ Object.defineProperty(exports, "Factory", {
|
|
|
37
37
|
}
|
|
38
38
|
});
|
|
39
39
|
|
|
40
|
-
const region_1 = require("../region/region"),
|
|
40
|
+
const region_1 = require("../region/region"), base_layout_1 = require("../layout/base-layout"), group_1 = require("../mark/group"), component_1 = require("../mark/component");
|
|
41
41
|
|
|
42
42
|
vchart_1.VChart.useMark([ component_1.ComponentMark, group_1.GroupMark ]), factory_1.Factory.registerRegion("region", region_1.Region),
|
|
43
|
-
factory_1.Factory.registerLayout("base",
|
|
43
|
+
factory_1.Factory.registerLayout("base", base_layout_1.Layout), exports.version = "1.1.0-beta.0",
|
|
44
44
|
__exportStar(require("../event/interface"), exports), __exportStar(require("../typings/spec/common"), exports),
|
|
45
45
|
__exportStar(require("../theme/interface"), exports);
|
|
46
|
-
//# sourceMappingURL=
|
|
46
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/core/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAIA,qCAAkC;AAgBzB,uFAhBA,eAAM,OAgBA;AAff,uCAAoC;AAenB,wFAfR,iBAAO,OAeQ;AAdxB,6CAA0C;AAC1C,uDAA+C;AAC/C,yCAA0C;AAC1C,iDAAkD;AAGlD,eAAM,CAAC,OAAO,CAAC,CAAC,yBAAa,EAAE,iBAAS,CAAC,CAAC,CAAC;AAG3C,iBAAO,CAAC,cAAc,CAAC,QAAQ,EAAE,eAAa,CAAC,CAAC;AAGhD,iBAAO,CAAC,cAAc,CAAC,MAAM,EAAE,oBAAa,CAAC,CAAC;AAKjC,QAAA,OAAO,GAAG,cAAc,CAAC;AAKtC,qDAAmC;AACnC,yDAAuC;AAEvC,qDAAmC","file":"index.js","sourcesContent":["/**\n * @description The core module of VChart, containing the necessary interfaces for using VChart.\n */\n\nimport { VChart } from './vchart';\nimport { Factory } from './factory';\nimport { Region } from '../region/region';\nimport { Layout } from '../layout/base-layout';\nimport { GroupMark } from '../mark/group';\nimport { ComponentMark } from '../mark/component';\n\n// register groupMark and componentMark\nVChart.useMark([ComponentMark, GroupMark]);\n\n// install region module\nFactory.registerRegion('region', Region as any);\n\n// install layout module\nFactory.registerLayout('base', Layout as any);\n\nexport { VChart, Factory };\n\n// export the version\nexport const version = \"1.1.0-beta.0\";\n\n// export necessary types\nexport type { IVChart } from './interface';\n// the event types\nexport * from '../event/interface';\nexport * from '../typings/spec/common';\nexport type { IStateSpec, StateValueType } from '../compile/mark';\nexport * from '../theme/interface';\n"]}
|
|
@@ -5,5 +5,5 @@ export declare class InstanceManager {
|
|
|
5
5
|
static unregisterInstance(instance: IVChart): void;
|
|
6
6
|
static getInstance(id: number): IVChart | undefined;
|
|
7
7
|
static instanceExist(id: number): boolean;
|
|
8
|
-
static forEach(callbackfn: (
|
|
8
|
+
static forEach(callbackfn: (instance: IVChart, id: number, map: Map<number, IVChart>) => void, thisArg?: any): void;
|
|
9
9
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/core/instance-manager.ts"],"names":[],"mappings":";;;AAGA,MAAa,eAAe;IAI1B,MAAM,CAAC,gBAAgB,CAAC,QAAiB;QACvC,eAAe,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;IACvD,CAAC;IAED,MAAM,CAAC,kBAAkB,CAAC,QAAiB;QACzC,eAAe,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAChD,CAAC;IAMD,MAAM,CAAC,WAAW,CAAC,EAAU;QAC3B,OAAO,eAAe,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC3C,CAAC;IAMD,MAAM,CAAC,aAAa,CAAC,EAAU;QAC7B,OAAO,eAAe,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"sources":["../src/core/instance-manager.ts"],"names":[],"mappings":";;;AAGA,MAAa,eAAe;IAI1B,MAAM,CAAC,gBAAgB,CAAC,QAAiB;QACvC,eAAe,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;IACvD,CAAC;IAED,MAAM,CAAC,kBAAkB,CAAC,QAAiB;QACzC,eAAe,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAChD,CAAC;IAMD,MAAM,CAAC,WAAW,CAAC,EAAU;QAC3B,OAAO,eAAe,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC3C,CAAC;IAMD,MAAM,CAAC,aAAa,CAAC,EAAU;QAC7B,OAAO,eAAe,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,UAA8E,EAAE,OAAa;QAC1G,OAAO,eAAe,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAChE,CAAC;;AA9BH,0CA+BC;AA7BiB,yBAAS,GAAyB,IAAI,GAAG,EAAE,CAAC","file":"instance-manager.js","sourcesContent":["import type { IVChart } from './interface';\n\n/** vchart 全局实例管理类,为了防止与 ThemeManager 循环依赖,单独从 VChart 类抽出 */\nexport class InstanceManager {\n /** 全局实例 map */\n static readonly instances: Map<number, IVChart> = new Map();\n /** 注册实例 */\n static registerInstance(instance: IVChart) {\n InstanceManager.instances.set(instance.id, instance);\n }\n /** 注销实例 */\n static unregisterInstance(instance: IVChart) {\n InstanceManager.instances.delete(instance.id);\n }\n /**\n * 根据 vChart 实例的 id 获取 vChart 实例\n * @param id VChart 实例的 id,通过 vChart.id 获取\n * @returns\n */\n static getInstance(id: number): IVChart | undefined {\n return InstanceManager.instances.get(id);\n }\n /**\n * 根据图表 id 判断实例是否存在\n * @param id VChart 实例的 id,通过 vChart.id 获取\n * @returns\n */\n static instanceExist(id: number): boolean {\n return InstanceManager.instances.has(id);\n }\n\n static forEach(callbackfn: (instance: IVChart, id: number, map: Map<number, IVChart>) => void, thisArg?: any) {\n return InstanceManager.instances.forEach(callbackfn, thisArg);\n }\n}\n"]}
|
package/cjs/core/interface.js
CHANGED
package/cjs/core/vchart.d.ts
CHANGED
|
@@ -33,6 +33,7 @@ export declare class VChart implements IVChart {
|
|
|
33
33
|
static registerMap(key: string, source: GeoSourceType, option?: GeoSourceOption): void;
|
|
34
34
|
static unregisterMap(key: string): void;
|
|
35
35
|
static getMap(key: string): GeoSourceType;
|
|
36
|
+
static hideTooltip(): void;
|
|
36
37
|
static readonly InstanceManager: typeof InstanceManager;
|
|
37
38
|
static readonly ThemeManager: typeof ThemeManager;
|
|
38
39
|
protected _spec: any;
|
package/cjs/core/vchart.js
CHANGED
|
@@ -71,6 +71,12 @@ class VChart {
|
|
|
71
71
|
static getMap(key) {
|
|
72
72
|
return (0, geo_source_1.getMapSource)(key);
|
|
73
73
|
}
|
|
74
|
+
static hideTooltip() {
|
|
75
|
+
instance_manager_1.InstanceManager.forEach((instance => {
|
|
76
|
+
var _a;
|
|
77
|
+
return null === (_a = null == instance ? void 0 : instance.hideTooltip) || void 0 === _a ? void 0 : _a.call(instance);
|
|
78
|
+
}));
|
|
79
|
+
}
|
|
74
80
|
getDataSet() {
|
|
75
81
|
return this._dataSet;
|
|
76
82
|
}
|
|
@@ -332,8 +338,10 @@ class VChart {
|
|
|
332
338
|
this._chart && this._chart.setHovered(datum, filter, region);
|
|
333
339
|
}
|
|
334
340
|
_updateCurrentTheme() {
|
|
335
|
-
var _a, _b;
|
|
336
|
-
|
|
341
|
+
var _a, _b, _c;
|
|
342
|
+
(0, util_1.isString)(null === (_a = this._spec) || void 0 === _a ? void 0 : _a.theme) ? (this._currentTheme = (0,
|
|
343
|
+
util_1.merge)({}, theme_manager_1.ThemeManager.getTheme(this._spec.theme)), this._currentThemeName = this._spec.theme) : this._currentTheme = (0,
|
|
344
|
+
util_1.merge)({}, theme_manager_1.ThemeManager.getTheme(this._currentThemeName), null !== (_c = null === (_b = this._spec) || void 0 === _b ? void 0 : _b.theme) && void 0 !== _c ? _c : {});
|
|
337
345
|
}
|
|
338
346
|
getCurrentTheme() {
|
|
339
347
|
return this._currentTheme;
|
|
@@ -474,4 +482,4 @@ class VChart {
|
|
|
474
482
|
|
|
475
483
|
exports.VChart = VChart, VChart.InstanceManager = instance_manager_1.InstanceManager,
|
|
476
484
|
VChart.ThemeManager = theme_manager_1.ThemeManager;
|
|
477
|
-
//# sourceMappingURL=vchart.js.map
|
|
485
|
+
//# sourceMappingURL=vchart.js.map
|