@visactor/vchart 2.0.7-alpha.0 → 2.0.7-alpha.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/es5/index.js +1 -1
- package/build/index.es.js +5225 -928
- package/build/index.js +5630 -946
- package/build/index.min.js +2 -3
- package/build/tsconfig.tsbuildinfo +1 -1
- package/cjs/animation/interface.js +1 -2
- package/cjs/chart/box-plot/box-plot.js +3 -2
- package/cjs/chart/box-plot/box-plot.js.map +1 -1
- package/cjs/chart/histogram/histogram.js +2 -2
- package/cjs/chart/histogram/histogram.js.map +1 -1
- package/cjs/compile/grammar-item.js +2 -1
- package/cjs/component/crosshair/base.d.ts +1 -1
- package/cjs/component/crosshair/base.js +10 -6
- package/cjs/component/crosshair/base.js.map +1 -1
- package/cjs/component/geo/geo-coordinate.js.map +1 -1
- package/cjs/component/legend/discrete/util.js +5 -1
- package/cjs/component/legend/discrete/util.js.map +1 -1
- package/cjs/constant/attribute.js +1 -2
- package/cjs/constant/gradient.js +2 -1
- package/cjs/constant/sunburst.js +1 -1
- package/cjs/constant/waterfall.js +1 -2
- package/cjs/constant/word-cloud.js +1 -1
- package/cjs/core/expression-function.js +2 -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/core/vchart.js +3 -2
- package/cjs/core/vchart.js.map +1 -1
- package/cjs/data/initialize.js +1 -1
- package/cjs/data/register.js +1 -1
- package/cjs/index.d.ts +8 -0
- package/cjs/index.js +141 -1
- package/cjs/index.js.map +1 -1
- package/cjs/layout/base-layout.d.ts +2 -2
- package/cjs/layout/base-layout.js +12 -7
- package/cjs/layout/base-layout.js.map +1 -1
- package/cjs/layout/interface.d.ts +1 -0
- package/cjs/layout/interface.js.map +1 -1
- package/cjs/plugin/chart/index.d.ts +1 -0
- package/cjs/plugin/chart/index.js +2 -1
- package/cjs/plugin/chart/index.js.map +1 -1
- package/cjs/plugin/chart/interface.d.ts +2 -0
- package/cjs/plugin/chart/interface.js.map +1 -1
- package/cjs/plugin/chart/plugin-service.d.ts +1 -0
- package/cjs/plugin/chart/plugin-service.js +5 -0
- package/cjs/plugin/chart/plugin-service.js.map +1 -1
- package/cjs/plugin/chart/resize-zoom/index.d.ts +1 -0
- package/cjs/plugin/chart/resize-zoom/index.js +21 -0
- package/cjs/plugin/chart/resize-zoom/index.js.map +1 -0
- package/cjs/plugin/chart/resize-zoom/zoom.d.ts +21 -0
- package/cjs/plugin/chart/resize-zoom/zoom.js +62 -0
- package/cjs/plugin/chart/resize-zoom/zoom.js.map +1 -0
- package/cjs/series/index.d.ts +2 -2
- package/cjs/series/index.js +6 -1
- package/cjs/series/index.js.map +1 -1
- package/cjs/series/waterfall/waterfall.d.ts +1 -0
- package/cjs/series/waterfall/waterfall.js +7 -3
- package/cjs/series/waterfall/waterfall.js.map +1 -1
- package/esm/animation/interface.js +1 -2
- package/esm/chart/box-plot/box-plot.js +4 -1
- package/esm/chart/box-plot/box-plot.js.map +1 -1
- package/esm/chart/histogram/histogram.js +4 -1
- package/esm/chart/histogram/histogram.js.map +1 -1
- package/esm/compile/grammar-item.js +2 -1
- package/esm/component/crosshair/base.d.ts +1 -1
- package/esm/component/crosshair/base.js +10 -6
- package/esm/component/crosshair/base.js.map +1 -1
- package/esm/component/geo/geo-coordinate.js.map +1 -1
- package/esm/component/legend/discrete/util.js +5 -2
- package/esm/component/legend/discrete/util.js.map +1 -1
- package/esm/constant/attribute.js +1 -2
- package/esm/constant/gradient.js +2 -1
- package/esm/constant/sunburst.js +1 -1
- package/esm/constant/waterfall.js +1 -2
- package/esm/constant/word-cloud.js +1 -1
- package/esm/core/expression-function.js +2 -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/core/vchart.js +3 -2
- package/esm/core/vchart.js.map +1 -1
- package/esm/data/initialize.js +1 -1
- package/esm/data/register.js +1 -1
- package/esm/index.d.ts +8 -0
- package/esm/index.js +14 -0
- package/esm/index.js.map +1 -1
- package/esm/layout/base-layout.d.ts +2 -2
- package/esm/layout/base-layout.js +12 -7
- package/esm/layout/base-layout.js.map +1 -1
- package/esm/layout/interface.d.ts +1 -0
- package/esm/layout/interface.js.map +1 -1
- package/esm/plugin/chart/index.d.ts +1 -0
- package/esm/plugin/chart/index.js +2 -0
- package/esm/plugin/chart/index.js.map +1 -1
- package/esm/plugin/chart/interface.d.ts +2 -0
- package/esm/plugin/chart/interface.js.map +1 -1
- package/esm/plugin/chart/plugin-service.d.ts +1 -0
- package/esm/plugin/chart/plugin-service.js +5 -0
- package/esm/plugin/chart/plugin-service.js.map +1 -1
- package/esm/plugin/chart/resize-zoom/index.d.ts +1 -0
- package/esm/plugin/chart/resize-zoom/index.js +2 -0
- package/esm/plugin/chart/resize-zoom/index.js.map +1 -0
- package/esm/plugin/chart/resize-zoom/zoom.d.ts +21 -0
- package/esm/plugin/chart/resize-zoom/zoom.js +59 -0
- package/esm/plugin/chart/resize-zoom/zoom.js.map +1 -0
- package/esm/series/index.d.ts +2 -2
- package/esm/series/index.js +2 -2
- package/esm/series/index.js.map +1 -1
- package/esm/series/waterfall/waterfall.d.ts +1 -0
- package/esm/series/waterfall/waterfall.js +8 -2
- package/esm/series/waterfall/waterfall.js.map +1 -1
- package/package.json +12 -12
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { IChartPlugin, IChartPluginService } from '../interface';
|
|
2
|
+
import { BasePlugin } from '../../base/base-plugin';
|
|
3
|
+
import type { IPoint } from '../../../typings';
|
|
4
|
+
export declare class ChartResizeZoomPlugin extends BasePlugin<IChartPluginService> implements IChartPlugin {
|
|
5
|
+
static readonly pluginType: 'chart';
|
|
6
|
+
static readonly specKey = "resizeZoom";
|
|
7
|
+
static readonly type: string;
|
|
8
|
+
readonly type: string;
|
|
9
|
+
protected _container?: HTMLElement;
|
|
10
|
+
protected _triggerEvent?: string;
|
|
11
|
+
protected _minZoom?: number;
|
|
12
|
+
protected _maxZoom?: number;
|
|
13
|
+
protected _zoom: number;
|
|
14
|
+
protected _rate?: number;
|
|
15
|
+
constructor();
|
|
16
|
+
onAfterInitChart(service: IChartPluginService, chartSpec: any): void;
|
|
17
|
+
protected _onWheel: (e: WheelEvent) => void;
|
|
18
|
+
zoom(zoom: number, pointerPos?: IPoint): void;
|
|
19
|
+
release(): void;
|
|
20
|
+
}
|
|
21
|
+
export declare const registerChartResizeZoomPlugin: () => void;
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: !0
|
|
5
|
+
}), exports.registerChartResizeZoomPlugin = exports.ChartResizeZoomPlugin = void 0;
|
|
6
|
+
|
|
7
|
+
const base_plugin_1 = require("../../base/base-plugin"), register_1 = require("../register"), config_1 = require("../../../component/common/trigger/config"), MIN_ZOOM = .1, MAX_ZOOM = 10;
|
|
8
|
+
|
|
9
|
+
class ChartResizeZoomPlugin extends base_plugin_1.BasePlugin {
|
|
10
|
+
constructor() {
|
|
11
|
+
super(ChartResizeZoomPlugin.type), this.type = "ChartResizeZoomPlugin", this._zoom = 1,
|
|
12
|
+
this._onWheel = e => {
|
|
13
|
+
e.preventDefault(), e.stopImmediatePropagation();
|
|
14
|
+
const zoom = Math.pow(1.005, -e.deltaY * Math.pow(16, e.deltaMode) * .2 * this._rate), center = {
|
|
15
|
+
x: e.offsetX,
|
|
16
|
+
y: e.offsetY
|
|
17
|
+
};
|
|
18
|
+
this.zoom(zoom, center);
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
onAfterInitChart(service, chartSpec) {
|
|
22
|
+
var _a, _b, _c, _d, _e;
|
|
23
|
+
const chart = service.globalInstance, spec = null !== (_b = null === (_a = chart.getSpec()) || void 0 === _a ? void 0 : _a[ChartResizeZoomPlugin.specKey]) && void 0 !== _b ? _b : {
|
|
24
|
+
enabled: !1
|
|
25
|
+
};
|
|
26
|
+
!0 === spec.enabled && (this._minZoom = null !== (_c = spec.min) && void 0 !== _c ? _c : .1,
|
|
27
|
+
this._maxZoom = null !== (_d = spec.max) && void 0 !== _d ? _d : 10, this._rate = null !== (_e = spec.rate) && void 0 !== _e ? _e : .1,
|
|
28
|
+
this._container = chart.getContainer(), this._triggerEvent = (0, config_1.getDefaultTriggerEventByMode)(service.globalInstance.getChart().getOption().mode).zoom,
|
|
29
|
+
this._container && this._triggerEvent && this._container.addEventListener(this._triggerEvent, this._onWheel));
|
|
30
|
+
}
|
|
31
|
+
zoom(zoom, pointerPos) {
|
|
32
|
+
const vchart = this.service.globalInstance;
|
|
33
|
+
if (!vchart) return;
|
|
34
|
+
const oldZoom = this._zoom;
|
|
35
|
+
let tempZoom = this._zoom * zoom;
|
|
36
|
+
if (tempZoom <= this._minZoom && zoom < 1 || tempZoom >= this._maxZoom && zoom > 1) if (tempZoom <= this._minZoom && this._zoom > this._minZoom) tempZoom = this._minZoom; else {
|
|
37
|
+
if (!(tempZoom >= this._maxZoom && this._zoom < this._maxZoom)) return;
|
|
38
|
+
tempZoom = this._maxZoom;
|
|
39
|
+
}
|
|
40
|
+
if (tempZoom === oldZoom) return;
|
|
41
|
+
const actualZoomRatio = tempZoom / oldZoom;
|
|
42
|
+
if (this._zoom = tempZoom, vchart.resize(vchart.getCurrentSize().width * this._zoom, vchart.getCurrentSize().height * this._zoom),
|
|
43
|
+
pointerPos && this._container) {
|
|
44
|
+
const {scrollLeft: scrollLeft, scrollTop: scrollTop} = this._container;
|
|
45
|
+
this._container.scrollLeft = scrollLeft + pointerPos.x * (actualZoomRatio - 1),
|
|
46
|
+
this._container.scrollTop = scrollTop + pointerPos.y * (actualZoomRatio - 1);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
release() {
|
|
50
|
+
this._container && this._triggerEvent && this._container.removeEventListener(this._triggerEvent, this._onWheel);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
exports.ChartResizeZoomPlugin = ChartResizeZoomPlugin, ChartResizeZoomPlugin.specKey = "resizeZoom",
|
|
55
|
+
ChartResizeZoomPlugin.type = "ChartResizeZoomPlugin";
|
|
56
|
+
|
|
57
|
+
const registerChartResizeZoomPlugin = () => {
|
|
58
|
+
(0, register_1.registerChartPlugin)(ChartResizeZoomPlugin);
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
exports.registerChartResizeZoomPlugin = registerChartResizeZoomPlugin;
|
|
62
|
+
//# sourceMappingURL=zoom.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/plugin/chart/resize-zoom/zoom.ts"],"names":[],"mappings":"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","file":"zoom.js","sourcesContent":["import type { IChartPlugin, IChartPluginService } from '../interface';\nimport { BasePlugin } from '../../base/base-plugin';\nimport { registerChartPlugin } from '../register';\nimport type { IPoint } from '../../../typings';\nimport { getDefaultTriggerEventByMode } from '../../../component/common/trigger/config';\n\nconst MIN_ZOOM = 0.1;\nconst MAX_ZOOM = 10;\n\nexport class ChartResizeZoomPlugin extends BasePlugin<IChartPluginService> implements IChartPlugin {\n static readonly pluginType: 'chart';\n static readonly specKey = 'resizeZoom';\n static readonly type: string = 'ChartResizeZoomPlugin';\n readonly type: string = 'ChartResizeZoomPlugin';\n\n protected _container?: HTMLElement;\n protected _triggerEvent?: string;\n protected _minZoom?: number;\n protected _maxZoom?: number;\n protected _zoom: number = 1;\n protected _rate?: number;\n\n constructor() {\n super(ChartResizeZoomPlugin.type);\n }\n\n onAfterInitChart(service: IChartPluginService, chartSpec: any) {\n const chart = service.globalInstance;\n const spec = chart.getSpec()?.[ChartResizeZoomPlugin.specKey] ?? { enabled: false };\n if (spec.enabled !== true) {\n return;\n }\n this._minZoom = spec.min ?? MIN_ZOOM;\n this._maxZoom = spec.max ?? MAX_ZOOM;\n this._rate = spec.rate ?? 0.1;\n this._container = chart.getContainer();\n this._triggerEvent = getDefaultTriggerEventByMode(service.globalInstance.getChart().getOption().mode).zoom;\n if (this._container && this._triggerEvent) {\n this._container.addEventListener(this._triggerEvent as keyof HTMLElementEventMap, this._onWheel as EventListener);\n }\n }\n\n protected _onWheel = (e: WheelEvent) => {\n e.preventDefault();\n e.stopImmediatePropagation();\n\n const zoom = Math.pow(1.005, -e.deltaY * Math.pow(16, e.deltaMode) * 0.2 * this._rate);\n const center = { x: e.offsetX, y: e.offsetY };\n this.zoom(zoom, center);\n };\n\n /**\n * 缩放图表\n * @param zoom 缩放比例\n * @param pointerPos 缩放中心,即鼠标位置\n */\n zoom(zoom: number, pointerPos?: IPoint) {\n const vchart = this.service.globalInstance;\n if (!vchart) {\n return;\n }\n const oldZoom = this._zoom;\n let tempZoom = this._zoom * zoom;\n if ((tempZoom <= this._minZoom && zoom < 1) || (tempZoom >= this._maxZoom && zoom > 1)) {\n if (tempZoom <= this._minZoom && this._zoom > this._minZoom) {\n tempZoom = this._minZoom;\n } else if (tempZoom >= this._maxZoom && this._zoom < this._maxZoom) {\n tempZoom = this._maxZoom;\n } else {\n return;\n }\n }\n\n if (tempZoom === oldZoom) {\n return;\n }\n\n const actualZoomRatio = tempZoom / oldZoom;\n this._zoom = tempZoom;\n\n vchart.resize(vchart.getCurrentSize().width * this._zoom, vchart.getCurrentSize().height * this._zoom);\n // 滚动容器滚动, 保持当前鼠标位置在缩放后不变\n if (pointerPos && this._container) {\n const { scrollLeft, scrollTop } = this._container;\n this._container.scrollLeft = scrollLeft + pointerPos.x * (actualZoomRatio - 1);\n this._container.scrollTop = scrollTop + pointerPos.y * (actualZoomRatio - 1);\n }\n }\n\n release(): void {\n if (this._container && this._triggerEvent) {\n this._container.removeEventListener(\n this._triggerEvent as keyof HTMLElementEventMap,\n this._onWheel as EventListener\n );\n }\n }\n}\n\nexport const registerChartResizeZoomPlugin = () => {\n registerChartPlugin(ChartResizeZoomPlugin);\n};\n"]}
|
package/cjs/series/index.d.ts
CHANGED
|
@@ -66,7 +66,7 @@ import { VennSeries, registerVennSeries } from './venn/venn';
|
|
|
66
66
|
import type { IMosaicSeriesSpec } from './mosaic/interface';
|
|
67
67
|
import { MosaicSeries, registerMosaicSeries } from './mosaic/mosaic';
|
|
68
68
|
import type { ISeries, ICartesianSeries, IPolarSeries, IGeoSeries } from './interface';
|
|
69
|
-
import { barGrowIn, barGrowOut, barPresetAnimation } from './bar/animation';
|
|
69
|
+
import { barGrowIn, barGrowOut, barPresetAnimation, registerBarAnimation } from './bar/animation';
|
|
70
70
|
import { BaseWordCloudSeries } from './word-cloud/base';
|
|
71
71
|
import { RangeColumnSeriesSpecTransformer } from './range-column/range-column-transformer';
|
|
72
72
|
import { pieDisappear, pieEnter, pieExit, piePresetAnimation } from './pie/animation/animation';
|
|
@@ -78,7 +78,7 @@ import { BaseSeriesSpecTransformer } from './base/base-series-transformer';
|
|
|
78
78
|
import { GeoSeries } from './geo/geo';
|
|
79
79
|
export { PositionEnum, barPresetAnimation, barGrowIn, barGrowOut, piePresetAnimation, pieEnter, pieExit, pieDisappear, baseSeriesMark };
|
|
80
80
|
export { GeoSeries, BaseSeriesSpecTransformer, BaseSeriesTooltipHelper, WaterfallSeries, BarSeries, BarSeriesSpecTransformer, BoxPlotSeries, LineSeries, RadarSeries, RangeAreaSeries, RangeColumnSeriesSpecTransformer, RangeColumnSeries, MapSeries, PieSeriesSpecTransformer, BasePieSeries, PieSeries, SankeySeries, ScatterSeries, SunburstSeries, RoseLikeSeries, RoseSeries, AreaSeries, DotSeries, LinearProgressSeries, LinkSeries, CirclePackingSeries, CircularProgressSeries, BaseWordCloudSeries, WordCloudSeries, FunnelSeriesSpecTransformer, FunnelSeries, TreemapSeries, GaugePointerSeries, GaugeSeries, HeatmapSeries, BaseSeries, CartesianSeries, PolarSeries, ProgressLikeSeries, CorrelationSeries, LiquidSeries, VennSeries, MosaicSeries };
|
|
81
|
-
export { registerAreaSeries, registerBarSeries, registerBoxplotSeries, registerCirclePackingSeries, registerCircularProgressSeries, registerDotSeries, registerFunnelSeries, registerGaugePointerSeries, registerGaugeSeries, registerHeatmapSeries, registerLineSeries, registerLinearProgressSeries, registerLinkSeries, registerMapSeries, registerPieSeries, registerRadarSeries, registerRangeAreaSeries, registerRangeColumnSeries, registerRoseSeries, registerSankeySeries, registerScatterSeries, registerSunBurstSeries, registerTreemapSeries, registerWaterfallSeries, registerWordCloudSeries, registerLiquidSeries, registerVennSeries, registerMosaicSeries };
|
|
81
|
+
export { registerAreaSeries, registerBarSeries, registerBarAnimation, registerBoxplotSeries, registerCirclePackingSeries, registerCircularProgressSeries, registerDotSeries, registerFunnelSeries, registerGaugePointerSeries, registerGaugeSeries, registerHeatmapSeries, registerLineSeries, registerLinearProgressSeries, registerLinkSeries, registerMapSeries, registerPieSeries, registerRadarSeries, registerRangeAreaSeries, registerRangeColumnSeries, registerRoseSeries, registerSankeySeries, registerScatterSeries, registerSunBurstSeries, registerTreemapSeries, registerWaterfallSeries, registerWordCloudSeries, registerLiquidSeries, registerVennSeries, registerMosaicSeries };
|
|
82
82
|
export type { ICartesianSeriesTheme, IPolarSeriesTheme, IArcLabelSpec, IBarAnimationParams, BarAppearPreset, ISeries, ICartesianSeries, IPolarSeries, IGeoSeries, IRoseLikeSeriesSpec, IAreaSeriesSpec, IBarSeriesSpec, IBoxPlotSeriesSpec, ICartesianSeriesSpec, ICirclePackingSeriesSpec, ICircularProgressSeriesSpec, IDotSeriesSpec, IFunnelSeriesSpec, IGaugePointerSeriesSpec, IGaugeSeriesSpec, IHeatmapSeriesSpec, ILineSeriesSpec, ILinearProgressSeriesSpec, ILinkSeriesSpec, IMapSeriesSpec, IPieAnimationParams, PieAppearPreset, IPieSeriesSpec, IPolarSeriesSpec, IProgressLikeSeriesSpec, IRadarSeriesSpec, IRangeAreaSeriesSpec, IRangeColumnSeriesTheme, IRangeColumnSeriesSpec, IRoseSeriesSpec, ISankeySeriesSpec, IScatterSeriesSpec, ISunburstSeriesSpec, ITreemapSeriesSpec, IWaterfallSeriesSpec, IWordCloudSeriesBaseSpec, IWordCloudSeriesSpec, ICorrelationSeriesSpec, ILiquidSeriesSpec, IVennSeriesSpec, IMosaicSeriesSpec };
|
|
83
83
|
export * from './interface';
|
|
84
84
|
export * from './util/utils';
|
package/cjs/series/index.js
CHANGED
|
@@ -18,7 +18,7 @@ var __createBinding = this && this.__createBinding || (Object.create ? function(
|
|
|
18
18
|
Object.defineProperty(exports, "__esModule", {
|
|
19
19
|
value: !0
|
|
20
20
|
}), exports.LiquidSeries = exports.CorrelationSeries = exports.ProgressLikeSeries = exports.PolarSeries = exports.CartesianSeries = exports.BaseSeries = exports.HeatmapSeries = exports.GaugeSeries = exports.GaugePointerSeries = exports.TreemapSeries = exports.FunnelSeries = exports.FunnelSeriesSpecTransformer = exports.WordCloudSeries = exports.BaseWordCloudSeries = exports.CircularProgressSeries = exports.CirclePackingSeries = exports.LinkSeries = exports.LinearProgressSeries = exports.DotSeries = exports.AreaSeries = exports.RoseSeries = exports.RoseLikeSeries = exports.SunburstSeries = exports.ScatterSeries = exports.SankeySeries = exports.PieSeries = exports.BasePieSeries = exports.PieSeriesSpecTransformer = exports.MapSeries = exports.RangeColumnSeries = exports.RangeColumnSeriesSpecTransformer = exports.RangeAreaSeries = exports.RadarSeries = exports.LineSeries = exports.BoxPlotSeries = exports.BarSeriesSpecTransformer = exports.BarSeries = exports.WaterfallSeries = exports.BaseSeriesTooltipHelper = exports.BaseSeriesSpecTransformer = exports.GeoSeries = exports.baseSeriesMark = exports.pieDisappear = exports.pieExit = exports.pieEnter = exports.piePresetAnimation = exports.barGrowOut = exports.barGrowIn = exports.barPresetAnimation = exports.PositionEnum = void 0,
|
|
21
|
-
exports.registerMosaicSeries = exports.registerVennSeries = exports.registerLiquidSeries = exports.registerWordCloudSeries = exports.registerWaterfallSeries = exports.registerTreemapSeries = exports.registerSunBurstSeries = exports.registerScatterSeries = exports.registerSankeySeries = exports.registerRoseSeries = exports.registerRangeColumnSeries = exports.registerRangeAreaSeries = exports.registerRadarSeries = exports.registerPieSeries = exports.registerMapSeries = exports.registerLinkSeries = exports.registerLinearProgressSeries = exports.registerLineSeries = exports.registerHeatmapSeries = exports.registerGaugeSeries = exports.registerGaugePointerSeries = exports.registerFunnelSeries = exports.registerDotSeries = exports.registerCircularProgressSeries = exports.registerCirclePackingSeries = exports.registerBoxplotSeries = exports.registerBarSeries = exports.registerAreaSeries = exports.MosaicSeries = exports.VennSeries = void 0;
|
|
21
|
+
exports.registerMosaicSeries = exports.registerVennSeries = exports.registerLiquidSeries = exports.registerWordCloudSeries = exports.registerWaterfallSeries = exports.registerTreemapSeries = exports.registerSunBurstSeries = exports.registerScatterSeries = exports.registerSankeySeries = exports.registerRoseSeries = exports.registerRangeColumnSeries = exports.registerRangeAreaSeries = exports.registerRadarSeries = exports.registerPieSeries = exports.registerMapSeries = exports.registerLinkSeries = exports.registerLinearProgressSeries = exports.registerLineSeries = exports.registerHeatmapSeries = exports.registerGaugeSeries = exports.registerGaugePointerSeries = exports.registerFunnelSeries = exports.registerDotSeries = exports.registerCircularProgressSeries = exports.registerCirclePackingSeries = exports.registerBoxplotSeries = exports.registerBarAnimation = exports.registerBarSeries = exports.registerAreaSeries = exports.MosaicSeries = exports.VennSeries = void 0;
|
|
22
22
|
|
|
23
23
|
const waterfall_1 = require("./waterfall/waterfall");
|
|
24
24
|
|
|
@@ -502,6 +502,11 @@ Object.defineProperty(exports, "barGrowIn", {
|
|
|
502
502
|
get: function() {
|
|
503
503
|
return animation_1.barPresetAnimation;
|
|
504
504
|
}
|
|
505
|
+
}), Object.defineProperty(exports, "registerBarAnimation", {
|
|
506
|
+
enumerable: !0,
|
|
507
|
+
get: function() {
|
|
508
|
+
return animation_1.registerBarAnimation;
|
|
509
|
+
}
|
|
505
510
|
});
|
|
506
511
|
|
|
507
512
|
const base_1 = require("./word-cloud/base");
|
package/cjs/series/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/series/index.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\n/**\n * @description export all mark modules\n */\nimport { WaterfallSeries, registerWaterfallSeries } from './waterfall/waterfall';\nimport type { IWaterfallSeriesSpec } from './waterfall/interface';\nimport { BoxPlotSeries, registerBoxplotSeries } from './box-plot/box-plot';\nimport type { IBoxPlotSeriesSpec } from './box-plot/interface';\nimport { LineSeries, registerLineSeries } from './line/line';\nimport type { ILineSeriesSpec } from './line/interface';\nimport { BarSeries, registerBarSeries } from './bar/bar';\nimport type { BarAppearPreset, IBarAnimationParams, IBarSeriesSpec } from './bar/interface';\nimport { BarSeriesSpecTransformer } from './bar/bar-transformer';\nimport { RangeColumnSeries, registerRangeColumnSeries } from './range-column/range-column';\nimport type { IRangeColumnSeriesSpec, IRangeColumnSeriesTheme } from './range-column/interface';\nimport { PositionEnum } from './range-column/interface';\nimport { RangeAreaSeries, registerRangeAreaSeries } from './range-area/range-area';\nimport type { IRangeAreaSeriesSpec } from './range-area/interface';\nimport { MapSeries, registerMapSeries } from './map/map';\nimport type { IMapSeriesSpec } from './map/interface';\nimport { BasePieSeries, PieSeries, registerPieSeries } from './pie/pie';\nimport type { IArcLabelSpec, IPieAnimationParams, IPieSeriesSpec, PieAppearPreset } from './pie/interface';\nimport { ScatterSeries, registerScatterSeries } from './scatter/scatter';\nimport type { IScatterSeriesSpec } from './scatter/interface';\nimport { RoseSeries, registerRoseSeries } from './rose/rose';\nimport type { IRoseSeriesSpec } from './rose/interface';\nimport { RadarSeries, registerRadarSeries } from './radar/radar';\nimport type { IRadarSeriesSpec } from './radar/interface';\nimport { AreaSeries, registerAreaSeries } from './area/area';\nimport type { IAreaSeriesSpec } from './area/interface';\nimport { DotSeries, registerDotSeries } from './dot/dot';\nimport type { IDotSeriesSpec } from './dot/interface';\nimport { LinkSeries, registerLinkSeries } from './link/link';\nimport type { ILinkSeriesSpec } from './link/interface';\nimport { CircularProgressSeries, registerCircularProgressSeries } from './progress/circular/circular';\nimport type { ICircularProgressSeriesSpec } from './progress/circular/interface';\nimport { LinearProgressSeries, registerLinearProgressSeries } from './progress/linear/linear';\nimport type { ILinearProgressSeriesSpec } from './progress/linear/interface';\nimport { WordCloudSeries, registerWordCloudSeries } from './word-cloud/word-cloud';\nimport type { IWordCloudSeriesBaseSpec, IWordCloudSeriesSpec } from './word-cloud/interface';\nimport { FunnelSeries, registerFunnelSeries } from './funnel/funnel';\nimport type { IFunnelSeriesSpec } from './funnel/interface';\nimport { SunburstSeries, registerSunBurstSeries } from './sunburst/sunburst';\nimport type { ISunburstSeriesSpec } from './sunburst/interface';\nimport { CirclePackingSeries, registerCirclePackingSeries } from './circle-packing/circle-packing';\nimport type { ICirclePackingSeriesSpec } from './circle-packing/interface';\nimport { SankeySeries, registerSankeySeries } from './sankey/sankey';\nimport type { ISankeySeriesSpec } from './sankey/interface';\nimport { TreemapSeries, registerTreemapSeries } from './treemap/treemap';\nimport type { ITreemapSeriesSpec } from './treemap/interface';\nimport type { IGaugePointerSeriesSpec, IGaugeSeriesSpec } from './gauge';\nimport { GaugePointerSeries, GaugeSeries, registerGaugePointerSeries, registerGaugeSeries } from './gauge';\nimport { HeatmapSeries, registerHeatmapSeries } from './heatmap/heatmap';\nimport type { IHeatmapSeriesSpec } from './heatmap/interface';\nimport { CorrelationSeries } from './correlation/correlation';\nimport type { ICorrelationSeriesSpec } from './correlation/interface';\nimport { BaseSeries } from './base/base-series';\nimport type { ICartesianSeriesSpec, ICartesianSeriesTheme } from './cartesian';\nimport { CartesianSeries } from './cartesian';\nimport { PolarSeries } from './polar/polar';\nimport type { IPolarSeriesSpec, IPolarSeriesTheme } from './polar/interface';\nimport type { IProgressLikeSeriesSpec } from './polar/progress-like';\nimport { ProgressLikeSeries } from './polar/progress-like';\nimport type { IRoseLikeSeriesSpec } from './polar/rose-like';\nimport { RoseLikeSeries } from './polar/rose-like';\nimport type { ILiquidSeriesSpec } from './liquid/interface';\nimport { LiquidSeries, registerLiquidSeries } from './liquid/liquid';\nimport type { IVennSeriesSpec } from './venn/interface';\nimport { VennSeries, registerVennSeries } from './venn/venn';\nimport type { IMosaicSeriesSpec } from './mosaic/interface';\nimport { MosaicSeries, registerMosaicSeries } from './mosaic/mosaic';\n\nimport type { ISeries, ICartesianSeries, IPolarSeries, IGeoSeries } from './interface';\nimport { barGrowIn, barGrowOut, barPresetAnimation } from './bar/animation';\nimport { BaseWordCloudSeries } from './word-cloud/base';\nimport { RangeColumnSeriesSpecTransformer } from './range-column/range-column-transformer';\nimport { pieDisappear, pieEnter, pieExit, piePresetAnimation } from './pie/animation/animation';\nimport { PieSeriesSpecTransformer } from './pie/pie-transformer';\nimport { baseSeriesMark } from './base/constant';\nimport { FunnelSeriesSpecTransformer } from './funnel/funnel-transformer';\nimport { BaseSeriesTooltipHelper } from './base/tooltip-helper';\nimport { BaseSeriesSpecTransformer } from './base/base-series-transformer';\nimport { GeoSeries } from './geo/geo';\n\nexport {\n PositionEnum,\n barPresetAnimation,\n barGrowIn,\n barGrowOut,\n piePresetAnimation,\n pieEnter,\n pieExit,\n pieDisappear,\n baseSeriesMark\n};\n\nexport {\n GeoSeries,\n BaseSeriesSpecTransformer,\n BaseSeriesTooltipHelper,\n WaterfallSeries,\n BarSeries,\n BarSeriesSpecTransformer,\n BoxPlotSeries,\n LineSeries,\n RadarSeries,\n RangeAreaSeries,\n RangeColumnSeriesSpecTransformer,\n RangeColumnSeries,\n MapSeries,\n PieSeriesSpecTransformer,\n BasePieSeries,\n PieSeries,\n SankeySeries,\n ScatterSeries,\n SunburstSeries,\n RoseLikeSeries,\n RoseSeries,\n AreaSeries,\n DotSeries,\n LinearProgressSeries,\n LinkSeries,\n CirclePackingSeries,\n CircularProgressSeries,\n BaseWordCloudSeries,\n WordCloudSeries,\n FunnelSeriesSpecTransformer,\n FunnelSeries,\n TreemapSeries,\n GaugePointerSeries,\n GaugeSeries,\n HeatmapSeries,\n BaseSeries,\n CartesianSeries,\n PolarSeries,\n ProgressLikeSeries,\n CorrelationSeries,\n LiquidSeries,\n VennSeries,\n MosaicSeries\n};\n\nexport {\n registerAreaSeries,\n registerBarSeries,\n registerBoxplotSeries,\n registerCirclePackingSeries,\n registerCircularProgressSeries,\n registerDotSeries,\n registerFunnelSeries,\n registerGaugePointerSeries,\n registerGaugeSeries,\n registerHeatmapSeries,\n registerLineSeries,\n registerLinearProgressSeries,\n registerLinkSeries,\n registerMapSeries,\n registerPieSeries,\n registerRadarSeries,\n registerRangeAreaSeries,\n registerRangeColumnSeries,\n registerRoseSeries,\n registerSankeySeries,\n registerScatterSeries,\n registerSunBurstSeries,\n registerTreemapSeries,\n registerWaterfallSeries,\n registerWordCloudSeries,\n registerLiquidSeries,\n registerVennSeries,\n registerMosaicSeries\n};\n\nexport type {\n ICartesianSeriesTheme,\n IPolarSeriesTheme,\n IArcLabelSpec,\n IBarAnimationParams,\n BarAppearPreset,\n ISeries,\n ICartesianSeries,\n IPolarSeries,\n IGeoSeries,\n IRoseLikeSeriesSpec,\n IAreaSeriesSpec,\n IBarSeriesSpec,\n IBoxPlotSeriesSpec,\n ICartesianSeriesSpec,\n ICirclePackingSeriesSpec,\n ICircularProgressSeriesSpec,\n IDotSeriesSpec,\n IFunnelSeriesSpec,\n IGaugePointerSeriesSpec,\n IGaugeSeriesSpec,\n IHeatmapSeriesSpec,\n ILineSeriesSpec,\n ILinearProgressSeriesSpec,\n ILinkSeriesSpec,\n IMapSeriesSpec,\n IPieAnimationParams,\n PieAppearPreset,\n IPieSeriesSpec,\n IPolarSeriesSpec,\n IProgressLikeSeriesSpec,\n IRadarSeriesSpec,\n IRangeAreaSeriesSpec,\n IRangeColumnSeriesTheme,\n IRangeColumnSeriesSpec,\n IRoseSeriesSpec,\n ISankeySeriesSpec,\n IScatterSeriesSpec,\n ISunburstSeriesSpec,\n ITreemapSeriesSpec,\n IWaterfallSeriesSpec,\n IWordCloudSeriesBaseSpec,\n IWordCloudSeriesSpec,\n ICorrelationSeriesSpec,\n ILiquidSeriesSpec,\n IVennSeriesSpec,\n IMosaicSeriesSpec\n};\n\nexport * from './interface';\nexport * from './util/utils';\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/series/index.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\n/**\n * @description export all mark modules\n */\nimport { WaterfallSeries, registerWaterfallSeries } from './waterfall/waterfall';\nimport type { IWaterfallSeriesSpec } from './waterfall/interface';\nimport { BoxPlotSeries, registerBoxplotSeries } from './box-plot/box-plot';\nimport type { IBoxPlotSeriesSpec } from './box-plot/interface';\nimport { LineSeries, registerLineSeries } from './line/line';\nimport type { ILineSeriesSpec } from './line/interface';\nimport { BarSeries, registerBarSeries } from './bar/bar';\nimport type { BarAppearPreset, IBarAnimationParams, IBarSeriesSpec } from './bar/interface';\nimport { BarSeriesSpecTransformer } from './bar/bar-transformer';\nimport { RangeColumnSeries, registerRangeColumnSeries } from './range-column/range-column';\nimport type { IRangeColumnSeriesSpec, IRangeColumnSeriesTheme } from './range-column/interface';\nimport { PositionEnum } from './range-column/interface';\nimport { RangeAreaSeries, registerRangeAreaSeries } from './range-area/range-area';\nimport type { IRangeAreaSeriesSpec } from './range-area/interface';\nimport { MapSeries, registerMapSeries } from './map/map';\nimport type { IMapSeriesSpec } from './map/interface';\nimport { BasePieSeries, PieSeries, registerPieSeries } from './pie/pie';\nimport type { IArcLabelSpec, IPieAnimationParams, IPieSeriesSpec, PieAppearPreset } from './pie/interface';\nimport { ScatterSeries, registerScatterSeries } from './scatter/scatter';\nimport type { IScatterSeriesSpec } from './scatter/interface';\nimport { RoseSeries, registerRoseSeries } from './rose/rose';\nimport type { IRoseSeriesSpec } from './rose/interface';\nimport { RadarSeries, registerRadarSeries } from './radar/radar';\nimport type { IRadarSeriesSpec } from './radar/interface';\nimport { AreaSeries, registerAreaSeries } from './area/area';\nimport type { IAreaSeriesSpec } from './area/interface';\nimport { DotSeries, registerDotSeries } from './dot/dot';\nimport type { IDotSeriesSpec } from './dot/interface';\nimport { LinkSeries, registerLinkSeries } from './link/link';\nimport type { ILinkSeriesSpec } from './link/interface';\nimport { CircularProgressSeries, registerCircularProgressSeries } from './progress/circular/circular';\nimport type { ICircularProgressSeriesSpec } from './progress/circular/interface';\nimport { LinearProgressSeries, registerLinearProgressSeries } from './progress/linear/linear';\nimport type { ILinearProgressSeriesSpec } from './progress/linear/interface';\nimport { WordCloudSeries, registerWordCloudSeries } from './word-cloud/word-cloud';\nimport type { IWordCloudSeriesBaseSpec, IWordCloudSeriesSpec } from './word-cloud/interface';\nimport { FunnelSeries, registerFunnelSeries } from './funnel/funnel';\nimport type { IFunnelSeriesSpec } from './funnel/interface';\nimport { SunburstSeries, registerSunBurstSeries } from './sunburst/sunburst';\nimport type { ISunburstSeriesSpec } from './sunburst/interface';\nimport { CirclePackingSeries, registerCirclePackingSeries } from './circle-packing/circle-packing';\nimport type { ICirclePackingSeriesSpec } from './circle-packing/interface';\nimport { SankeySeries, registerSankeySeries } from './sankey/sankey';\nimport type { ISankeySeriesSpec } from './sankey/interface';\nimport { TreemapSeries, registerTreemapSeries } from './treemap/treemap';\nimport type { ITreemapSeriesSpec } from './treemap/interface';\nimport type { IGaugePointerSeriesSpec, IGaugeSeriesSpec } from './gauge';\nimport { GaugePointerSeries, GaugeSeries, registerGaugePointerSeries, registerGaugeSeries } from './gauge';\nimport { HeatmapSeries, registerHeatmapSeries } from './heatmap/heatmap';\nimport type { IHeatmapSeriesSpec } from './heatmap/interface';\nimport { CorrelationSeries } from './correlation/correlation';\nimport type { ICorrelationSeriesSpec } from './correlation/interface';\nimport { BaseSeries } from './base/base-series';\nimport type { ICartesianSeriesSpec, ICartesianSeriesTheme } from './cartesian';\nimport { CartesianSeries } from './cartesian';\nimport { PolarSeries } from './polar/polar';\nimport type { IPolarSeriesSpec, IPolarSeriesTheme } from './polar/interface';\nimport type { IProgressLikeSeriesSpec } from './polar/progress-like';\nimport { ProgressLikeSeries } from './polar/progress-like';\nimport type { IRoseLikeSeriesSpec } from './polar/rose-like';\nimport { RoseLikeSeries } from './polar/rose-like';\nimport type { ILiquidSeriesSpec } from './liquid/interface';\nimport { LiquidSeries, registerLiquidSeries } from './liquid/liquid';\nimport type { IVennSeriesSpec } from './venn/interface';\nimport { VennSeries, registerVennSeries } from './venn/venn';\nimport type { IMosaicSeriesSpec } from './mosaic/interface';\nimport { MosaicSeries, registerMosaicSeries } from './mosaic/mosaic';\n\nimport type { ISeries, ICartesianSeries, IPolarSeries, IGeoSeries } from './interface';\nimport { barGrowIn, barGrowOut, barPresetAnimation, registerBarAnimation } from './bar/animation';\nimport { BaseWordCloudSeries } from './word-cloud/base';\nimport { RangeColumnSeriesSpecTransformer } from './range-column/range-column-transformer';\nimport { pieDisappear, pieEnter, pieExit, piePresetAnimation } from './pie/animation/animation';\nimport { PieSeriesSpecTransformer } from './pie/pie-transformer';\nimport { baseSeriesMark } from './base/constant';\nimport { FunnelSeriesSpecTransformer } from './funnel/funnel-transformer';\nimport { BaseSeriesTooltipHelper } from './base/tooltip-helper';\nimport { BaseSeriesSpecTransformer } from './base/base-series-transformer';\nimport { GeoSeries } from './geo/geo';\n\nexport {\n PositionEnum,\n barPresetAnimation,\n barGrowIn,\n barGrowOut,\n piePresetAnimation,\n pieEnter,\n pieExit,\n pieDisappear,\n baseSeriesMark\n};\n\nexport {\n GeoSeries,\n BaseSeriesSpecTransformer,\n BaseSeriesTooltipHelper,\n WaterfallSeries,\n BarSeries,\n BarSeriesSpecTransformer,\n BoxPlotSeries,\n LineSeries,\n RadarSeries,\n RangeAreaSeries,\n RangeColumnSeriesSpecTransformer,\n RangeColumnSeries,\n MapSeries,\n PieSeriesSpecTransformer,\n BasePieSeries,\n PieSeries,\n SankeySeries,\n ScatterSeries,\n SunburstSeries,\n RoseLikeSeries,\n RoseSeries,\n AreaSeries,\n DotSeries,\n LinearProgressSeries,\n LinkSeries,\n CirclePackingSeries,\n CircularProgressSeries,\n BaseWordCloudSeries,\n WordCloudSeries,\n FunnelSeriesSpecTransformer,\n FunnelSeries,\n TreemapSeries,\n GaugePointerSeries,\n GaugeSeries,\n HeatmapSeries,\n BaseSeries,\n CartesianSeries,\n PolarSeries,\n ProgressLikeSeries,\n CorrelationSeries,\n LiquidSeries,\n VennSeries,\n MosaicSeries\n};\n\nexport {\n registerAreaSeries,\n registerBarSeries,\n registerBarAnimation,\n registerBoxplotSeries,\n registerCirclePackingSeries,\n registerCircularProgressSeries,\n registerDotSeries,\n registerFunnelSeries,\n registerGaugePointerSeries,\n registerGaugeSeries,\n registerHeatmapSeries,\n registerLineSeries,\n registerLinearProgressSeries,\n registerLinkSeries,\n registerMapSeries,\n registerPieSeries,\n registerRadarSeries,\n registerRangeAreaSeries,\n registerRangeColumnSeries,\n registerRoseSeries,\n registerSankeySeries,\n registerScatterSeries,\n registerSunBurstSeries,\n registerTreemapSeries,\n registerWaterfallSeries,\n registerWordCloudSeries,\n registerLiquidSeries,\n registerVennSeries,\n registerMosaicSeries\n};\n\nexport type {\n ICartesianSeriesTheme,\n IPolarSeriesTheme,\n IArcLabelSpec,\n IBarAnimationParams,\n BarAppearPreset,\n ISeries,\n ICartesianSeries,\n IPolarSeries,\n IGeoSeries,\n IRoseLikeSeriesSpec,\n IAreaSeriesSpec,\n IBarSeriesSpec,\n IBoxPlotSeriesSpec,\n ICartesianSeriesSpec,\n ICirclePackingSeriesSpec,\n ICircularProgressSeriesSpec,\n IDotSeriesSpec,\n IFunnelSeriesSpec,\n IGaugePointerSeriesSpec,\n IGaugeSeriesSpec,\n IHeatmapSeriesSpec,\n ILineSeriesSpec,\n ILinearProgressSeriesSpec,\n ILinkSeriesSpec,\n IMapSeriesSpec,\n IPieAnimationParams,\n PieAppearPreset,\n IPieSeriesSpec,\n IPolarSeriesSpec,\n IProgressLikeSeriesSpec,\n IRadarSeriesSpec,\n IRangeAreaSeriesSpec,\n IRangeColumnSeriesTheme,\n IRangeColumnSeriesSpec,\n IRoseSeriesSpec,\n ISankeySeriesSpec,\n IScatterSeriesSpec,\n ISunburstSeriesSpec,\n ITreemapSeriesSpec,\n IWaterfallSeriesSpec,\n IWordCloudSeriesBaseSpec,\n IWordCloudSeriesSpec,\n ICorrelationSeriesSpec,\n ILiquidSeriesSpec,\n IVennSeriesSpec,\n IMosaicSeriesSpec\n};\n\nexport * from './interface';\nexport * from './util/utils';\n"]}
|
|
@@ -28,6 +28,7 @@ export declare class WaterfallSeries<T extends IWaterfallSeriesSpec = IWaterfall
|
|
|
28
28
|
setAttrFromSpec(): void;
|
|
29
29
|
getSeriesKeys(): string[];
|
|
30
30
|
protected initData(): void;
|
|
31
|
+
protected _reStackTotal: () => void;
|
|
31
32
|
compileData(): void;
|
|
32
33
|
initAnimation(): void;
|
|
33
34
|
viewDataUpdate(d: DataView): void;
|
|
@@ -4,14 +4,18 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: !0
|
|
5
5
|
}), exports.registerWaterfallSeries = exports.WaterfallSeries = exports.DefaultBandWidth = void 0;
|
|
6
6
|
|
|
7
|
-
const vutils_1 = require("@visactor/vutils"), data_1 = require("../../constant/data"), waterfall_1 = require("../../data/transforms/waterfall"), bar_1 = require("../bar/bar"), scale_1 = require("../../util/scale"), animation_1 = require("./animation"), utils_1 = require("../../animation/utils"), type_1 = require("../interface/type"), config_1 = require("../../animation/config"), register_1 = require("../../data/register"), initialize_1 = require("../../data/initialize"), rule_1 = require("../../mark/rule"), constant_1 = require("./constant"), group_1 = require("../base/group"), factory_1 = require("../../core/factory"), rect_1 = require("../../mark/rect"), utils_2 = require("../util/utils"), waterfall_transformer_1 = require("./waterfall-transformer"), cartesian_1 = require("../../component/axis/cartesian"), util_1 = require("../../component/label/util"), waterfall_2 = require("../../constant/waterfall"), base_1 = require("../../constant/base"), attribute_1 = require("../../constant/attribute"), data_2 = require("../../compile/data"), waterfall_3 = require("../../theme/builtin/common/series/waterfall");
|
|
7
|
+
const vutils_1 = require("@visactor/vutils"), data_1 = require("../../constant/data"), waterfall_1 = require("../../data/transforms/waterfall"), bar_1 = require("../bar/bar"), scale_1 = require("../../util/scale"), animation_1 = require("./animation"), utils_1 = require("../../animation/utils"), type_1 = require("../interface/type"), config_1 = require("../../animation/config"), register_1 = require("../../data/register"), initialize_1 = require("../../data/initialize"), rule_1 = require("../../mark/rule"), constant_1 = require("./constant"), group_1 = require("../base/group"), factory_1 = require("../../core/factory"), rect_1 = require("../../mark/rect"), utils_2 = require("../util/utils"), waterfall_transformer_1 = require("./waterfall-transformer"), cartesian_1 = require("../../component/axis/cartesian"), util_1 = require("../../component/label/util"), waterfall_2 = require("../../constant/waterfall"), base_1 = require("../../constant/base"), attribute_1 = require("../../constant/attribute"), data_2 = require("../../compile/data"), waterfall_3 = require("../../theme/builtin/common/series/waterfall"), util_2 = require("../../util");
|
|
8
8
|
|
|
9
9
|
exports.DefaultBandWidth = 6;
|
|
10
10
|
|
|
11
11
|
class WaterfallSeries extends bar_1.BarSeries {
|
|
12
12
|
constructor() {
|
|
13
13
|
super(...arguments), this.type = type_1.SeriesTypeEnum.waterfall, this.transformerConstructor = waterfall_transformer_1.WaterfallSeriesSpecTransformer,
|
|
14
|
-
this._leaderLineMark = null, this._stackLabelMark = null, this._labelMark = null
|
|
14
|
+
this._leaderLineMark = null, this._stackLabelMark = null, this._labelMark = null,
|
|
15
|
+
this._reStackTotal = () => {
|
|
16
|
+
const stackData = this.getStackData(), stackValueField = this.getStackValueField();
|
|
17
|
+
stackData && (0, util_2.stackTotal)(stackData, stackValueField);
|
|
18
|
+
};
|
|
15
19
|
}
|
|
16
20
|
getTotalData() {
|
|
17
21
|
var _a;
|
|
@@ -63,7 +67,7 @@ class WaterfallSeries extends bar_1.BarSeries {
|
|
|
63
67
|
groupData: () => this.getGroups().groupData,
|
|
64
68
|
stackInverse: this.getRegion().getStackInverse()
|
|
65
69
|
}
|
|
66
|
-
}, !1);
|
|
70
|
+
}, !1), totalData.target.addListener("change", this._reStackTotal);
|
|
67
71
|
}
|
|
68
72
|
compileData() {
|
|
69
73
|
var _a;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/series/waterfall/waterfall.ts"],"names":[],"mappings":"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","file":"waterfall.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\nimport { isNil, precisionSub } from '@visactor/vutils';\nimport { STACK_FIELD_END, STACK_FIELD_START } from '../../constant/data';\nimport { waterfall, waterfallFillTotal } from '../../data/transforms/waterfall';\nimport { BarSeries } from '../bar/bar';\nimport { isValueInScaleDomain, valueInScaleRange } from '../../util/scale';\nimport { registerWaterfallAnimation } from './animation';\nimport { animationConfig, userAnimationConfig } from '../../animation/utils';\nimport type { IWaterfallSeriesSpec, WaterfallAppearPreset } from './interface';\nimport type { SeriesMarkMap } from '../interface';\nimport { SeriesMarkNameEnum, SeriesTypeEnum } from '../interface/type';\nimport { registerFadeInOutAnimation } from '../../animation/config';\nimport type { ITransformOptions, DataView } from '@visactor/vdataset';\nimport { registerDataSetInstanceTransform } from '../../data/register';\nimport { dataViewFromDataView } from '../../data/initialize';\nimport type { IStateAnimateSpec } from '../../animation/spec';\nimport type { IModelEvaluateOption } from '../../model/interface';\nimport type { Datum } from '../../typings';\nimport { Direction } from '../../typings/space';\nimport { registerRuleMark } from '../../mark/rule';\nimport { waterfallSeriesMark } from './constant';\nimport { Group } from '../base/group';\nimport { Factory } from '../../core/factory';\nimport { registerRectMark } from '../../mark/rect';\nimport { getGroupAnimationParams } from '../util/utils';\nimport { WaterfallSeriesSpecTransformer } from './waterfall-transformer';\nimport { registerCartesianLinearAxis, registerCartesianBandAxis } from '../../component/axis/cartesian';\nimport { stackLabel } from '../../component/label/util';\nimport { WaterfallDefaultSeriesField } from '../../constant/waterfall';\nimport { PREFIX } from '../../constant/base';\nimport { AttributeLevel } from '../../constant/attribute';\nimport type { ILabelMark, IRuleMark, ITextMark } from '../../mark/interface';\nimport type { IBarAnimationParams } from '../bar/interface';\nimport type { ILabelInfo } from '../../component/label/interface';\nimport { CompilableData, type ICompilableData } from '../../compile/data';\nimport { waterfall as waterfallTheme } from '../../theme/builtin/common/series/waterfall';\n\nexport const DefaultBandWidth = 6; // 默认的bandWidth,避免连续轴没有bandWidth\n\nexport class WaterfallSeries<T extends IWaterfallSeriesSpec = IWaterfallSeriesSpec> extends BarSeries<any> {\n static readonly type: string = SeriesTypeEnum.waterfall;\n type = SeriesTypeEnum.waterfall;\n\n static readonly mark: SeriesMarkMap = waterfallSeriesMark;\n static readonly builtInTheme = { waterfall: waterfallTheme };\n static readonly transformerConstructor = WaterfallSeriesSpecTransformer as any;\n readonly transformerConstructor = WaterfallSeriesSpecTransformer as any;\n\n protected _totalData?: ICompilableData;\n getTotalData() {\n return this._totalData?.getLatestData();\n }\n\n protected declare _spec: T;\n\n protected _leaderLineMark: IRuleMark = null;\n protected _stackLabelMark: ITextMark = null;\n protected _labelMark: ITextMark = null;\n\n protected initGroups() {\n const groupFields = this.getGroupFields();\n if (groupFields && groupFields.length) {\n this._groups = new Group(groupFields);\n this._data && this._groups.initData(this._data.getDataView(), this._dataSet);\n }\n }\n\n setAttrFromSpec() {\n super.setAttrFromSpec();\n // waterfall data stack data\n this.setValueFieldToStack();\n // 不支持多维度;\n this._fieldX = [this._fieldX[0]];\n this._fieldY = [this._fieldY[0]];\n if (isNil(this._seriesField)) {\n this._seriesField = WaterfallDefaultSeriesField;\n }\n }\n\n getSeriesKeys(): string[] {\n if (this._seriesField === WaterfallDefaultSeriesField) {\n return [\n this._theme.seriesFieldName.increase,\n this._theme.seriesFieldName.decrease,\n this._theme.seriesFieldName.total\n ];\n }\n return super.getSeriesKeys();\n }\n\n protected initData(): void {\n super.initData();\n registerDataSetInstanceTransform(this._dataSet, 'waterfallFillTotal', waterfallFillTotal);\n registerDataSetInstanceTransform(this._dataSet, 'waterfall', waterfall);\n // 如果要在最后添加总计\n if (isNil(this._spec.total) || this._spec.total.type === 'end') {\n this._rawData?.transform(\n {\n type: 'waterfallFillTotal',\n options: {\n indexField: this.getGroupFields()[0],\n valueField: this.getStackValueField(),\n seriesField: this.getSeriesField(),\n seriesFieldName: this._theme.seriesFieldName,\n total: this._spec.total,\n calculationMode: this._spec.calculationMode ?? 'increase',\n stackInverse: this.getRegion().getStackInverse()\n }\n },\n false\n );\n }\n // 总计数据\n const totalData = dataViewFromDataView(this.getViewData(), this._dataSet, {\n name: `${PREFIX}_series_${this.id}_totalData`\n });\n this.getViewData().target.removeListener('change', totalData.reRunAllTransform);\n this._totalData = new CompilableData(this._option, totalData);\n totalData.transform(\n {\n type: 'waterfall',\n options: {\n indexField: this.getGroupFields()[0],\n valueField: this.getStackValueField(),\n seriesField: this.getSeriesField(),\n seriesFieldName: this._theme.seriesFieldName,\n startAs: STACK_FIELD_START,\n endAs: STACK_FIELD_END,\n total: this._spec.total,\n calculationMode: this._spec.calculationMode ?? 'increase',\n groupData: () => this.getGroups().groupData,\n stackInverse: this.getRegion().getStackInverse()\n }\n },\n false\n );\n }\n\n compileData() {\n super.compileData();\n this._totalData?.compile();\n }\n\n initAnimation() {\n // 这个数据在这个时候拿不到,因为组件还没创建结束,统计和筛选也还没添加。\n // 而且这个值理论上是动态的,建议 监听 viewDataStatisticsUpdate 消息动态更新\n const waterfallAnimationParams: IBarAnimationParams = {\n yField: this.direction === 'horizontal' ? this._fieldY[0] : this.getStackValueField(),\n xField: this.direction === 'horizontal' ? this.getStackValueField() : this._fieldX[0],\n direction: this.direction,\n growFrom: () =>\n this.direction === 'horizontal'\n ? this._xAxisHelper?.getScale(0).scale(0)\n : this._yAxisHelper?.getScale(0).scale(0)\n };\n const appearPreset = (this._spec?.animationAppear as IStateAnimateSpec<WaterfallAppearPreset>)?.preset;\n const animationParams = getGroupAnimationParams(this);\n\n this._barMark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('waterfall')?.(waterfallAnimationParams, appearPreset),\n userAnimationConfig(SeriesMarkNameEnum.bar, this._spec, this._markAttributeContext),\n animationParams\n )\n );\n\n if (this._leaderLineMark) {\n this._leaderLineMark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('fadeInOut')?.(),\n userAnimationConfig(SeriesMarkNameEnum.leaderLine, this._spec, this._markAttributeContext)\n )\n );\n }\n }\n\n viewDataUpdate(d: DataView): void {\n this._totalData.getDataView().reRunAllTransform();\n this._totalData.updateData();\n super.viewDataUpdate(d);\n }\n /**\n * data\n */\n // waterfall 不支持任何的 data filter\n addViewDataFilter(_option: ITransformOptions) {\n // do nothing\n }\n reFilterViewData() {\n // do nothing\n }\n\n onEvaluateEnd(ctx: IModelEvaluateOption): void {\n super.onEvaluateEnd(ctx);\n this._totalData.updateData();\n }\n\n initMark(): void {\n super.initMark();\n const leaderLine = this._createMark(WaterfallSeries.mark.leaderLine, {\n key: 'index'\n }) as IRuleMark;\n if (leaderLine) {\n this._leaderLineMark = leaderLine;\n leaderLine.setData(this._totalData);\n }\n }\n\n initLabelMarkStyle(labelMark: ILabelMark): void {\n if (!labelMark) {\n return;\n }\n\n if (!this._labelMark && this._spec.label?.visible) {\n super.initLabelMarkStyle(labelMark);\n this._labelMark = labelMark;\n return;\n }\n }\n\n initStackLabelMarkStyle(labelMark: ILabelMark): void {\n if (!labelMark) {\n return;\n }\n this._stackLabelMark = labelMark;\n // 瀑布图标签 encode 在自定义布局中计算\n labelMark.skipEncode = true;\n labelMark.setRule('stackLabel');\n labelMark.setData(this._totalData);\n\n this.setMarkStyle(labelMark, {\n text: (datum: Datum) => {\n return this._spec.stackLabel?.valueType === 'absolute' ? datum.end : precisionSub(datum.end, datum.start);\n }\n });\n }\n\n // 样式设置在这里的原因是执行顺序的问题\n // 首先执行这里的 mark.style\n // 然后执行用户的 formatMethod\n // 最后执行下方的 getTotalLabelComponentStyle 。如果在下方实现值函数,就会导致用户format无法生效\n initTotalLabelMarkStyle(labelMark: ILabelMark) {\n this.setMarkStyle(labelMark, {\n text: (datum: Datum) => {\n if (!('end' in datum)) {\n return this.direction === Direction.horizontal ? datum[this._fieldX[0]] : datum[this._fieldY[0]];\n }\n return this._spec.totalLabel?.valueType === 'absolute' ? datum.end : precisionSub(datum.end, datum.start);\n }\n });\n }\n\n getTotalLabelComponentStyle(info: Pick<ILabelInfo, 'baseMark' | 'labelMark'>) {\n return stackLabel(\n {\n ...info,\n series: this,\n // @ts-ignore\n labelSpec: this._spec.totalLabel\n },\n d => {\n const index = this.direction === Direction.vertical ? d[this._fieldX[0]] : d[this._fieldY[0]];\n return this._totalData.getLatestData().find((_d: Datum) => _d.index === index);\n }\n );\n }\n\n totalPositionX(datum: Datum, field: string, pos: number = 0.5) {\n const { dataToPosition, getBandwidth } = this._xAxisHelper;\n if (this._direction === Direction.horizontal) {\n return valueInScaleRange(\n dataToPosition([datum[field]], {\n bandPosition: this._bandPosition\n })\n );\n }\n return (\n dataToPosition([datum[field]], {\n bandPosition: this._bandPosition\n }) +\n getBandwidth(0) * 0.5 -\n (this._barMark.getAttribute('width', datum) as number) * (0.5 - pos)\n );\n }\n\n totalPositionY(datum: Datum, field: string, pos: number = 0.5) {\n const { dataToPosition, getBandwidth } = this._yAxisHelper;\n if (this._direction === Direction.horizontal) {\n return (\n dataToPosition([datum[field]], {\n bandPosition: this._bandPosition\n }) +\n getBandwidth(0) * 0.5 -\n (this._barMark.getAttribute('height', datum) as number) * (0.5 - pos)\n );\n }\n return valueInScaleRange(\n dataToPosition([datum[field]], {\n bandPosition: this._bandPosition\n })\n );\n }\n\n initMarkStyle(): void {\n super.initMarkStyle();\n const isDecrease = this._spec.calculationMode === 'decrease';\n if (this._leaderLineMark) {\n if (this._direction === Direction.horizontal) {\n this.setMarkStyle(\n this._leaderLineMark,\n {\n visible: (datum: Datum) => this.isVisibleLeaderLine(datum),\n x: (datum: Datum) => this.totalPositionX(datum, 'lastEnd', 0),\n x1: (datum: Datum) => this.totalPositionX(datum, datum.isTotal ? 'end' : 'start', 0),\n y: (datum: Datum) => {\n if (!datum.lastIndex) {\n return 0;\n }\n return this.totalPositionY(datum, 'lastIndex', isDecrease ? 0 : 1);\n },\n y1: (datum: Datum) => this.totalPositionY(datum, 'index', isDecrease ? 1 : 0)\n },\n 'normal',\n AttributeLevel.Series\n );\n } else {\n this.setMarkStyle(\n this._leaderLineMark,\n {\n visible: (datum: Datum) => this.isVisibleLeaderLine(datum),\n x: (datum: Datum) => {\n if (!datum.lastIndex) {\n return 0;\n }\n return this.totalPositionX(datum, 'lastIndex', isDecrease ? 0 : 1);\n },\n x1: (datum: Datum) => this.totalPositionX(datum, 'index', isDecrease ? 1 : 0),\n y: (datum: Datum) => this.totalPositionY(datum, 'lastEnd', 0),\n y1: (datum: Datum) => this.totalPositionY(datum, datum.isTotal ? 'end' : 'start', 0)\n },\n 'normal',\n AttributeLevel.Series\n );\n }\n }\n }\n\n protected isVisibleLeaderLine(datum: Datum): boolean {\n if (isNil(datum.lastIndex)) {\n return false;\n }\n return isValueInScaleDomain(\n [datum.lastEnd, datum[datum.isTotal ? 'end' : 'start']],\n this.direction === Direction.horizontal ? this._xAxisHelper.getScale(0) : this._yAxisHelper.getScale(0)\n );\n }\n}\n\nexport const registerWaterfallSeries = () => {\n registerRuleMark();\n registerRectMark();\n registerWaterfallAnimation();\n registerFadeInOutAnimation();\n registerCartesianBandAxis();\n registerCartesianLinearAxis();\n Factory.registerSeries(WaterfallSeries.type, WaterfallSeries);\n};\n"]}
|
|
1
|
+
{"version":3,"sources":["../src/series/waterfall/waterfall.ts"],"names":[],"mappings":"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","file":"waterfall.js","sourcesContent":["/* eslint-disable no-duplicate-imports */\nimport { isNil, precisionSub } from '@visactor/vutils';\nimport { STACK_FIELD_END, STACK_FIELD_START } from '../../constant/data';\nimport { waterfall, waterfallFillTotal } from '../../data/transforms/waterfall';\nimport { BarSeries } from '../bar/bar';\nimport { isValueInScaleDomain, valueInScaleRange } from '../../util/scale';\nimport { registerWaterfallAnimation } from './animation';\nimport { animationConfig, userAnimationConfig } from '../../animation/utils';\nimport type { IWaterfallSeriesSpec, WaterfallAppearPreset } from './interface';\nimport type { SeriesMarkMap } from '../interface';\nimport { SeriesMarkNameEnum, SeriesTypeEnum } from '../interface/type';\nimport { registerFadeInOutAnimation } from '../../animation/config';\nimport type { ITransformOptions, DataView } from '@visactor/vdataset';\nimport { registerDataSetInstanceTransform } from '../../data/register';\nimport { dataViewFromDataView } from '../../data/initialize';\nimport type { IStateAnimateSpec } from '../../animation/spec';\nimport type { IModelEvaluateOption } from '../../model/interface';\nimport type { Datum } from '../../typings';\nimport { Direction } from '../../typings/space';\nimport { registerRuleMark } from '../../mark/rule';\nimport { waterfallSeriesMark } from './constant';\nimport { Group } from '../base/group';\nimport { Factory } from '../../core/factory';\nimport { registerRectMark } from '../../mark/rect';\nimport { getGroupAnimationParams } from '../util/utils';\nimport { WaterfallSeriesSpecTransformer } from './waterfall-transformer';\nimport { registerCartesianLinearAxis, registerCartesianBandAxis } from '../../component/axis/cartesian';\nimport { stackLabel } from '../../component/label/util';\nimport { WaterfallDefaultSeriesField } from '../../constant/waterfall';\nimport { PREFIX } from '../../constant/base';\nimport { AttributeLevel } from '../../constant/attribute';\nimport type { ILabelMark, IRuleMark, ITextMark } from '../../mark/interface';\nimport type { IBarAnimationParams } from '../bar/interface';\nimport type { ILabelInfo } from '../../component/label/interface';\nimport { CompilableData, type ICompilableData } from '../../compile/data';\nimport { waterfall as waterfallTheme } from '../../theme/builtin/common/series/waterfall';\nimport type { IStackCacheNode } from '../../util';\nimport { getRegionStackGroup, stackTotal } from '../../util';\n\nexport const DefaultBandWidth = 6; // 默认的bandWidth,避免连续轴没有bandWidth\n\nexport class WaterfallSeries<T extends IWaterfallSeriesSpec = IWaterfallSeriesSpec> extends BarSeries<any> {\n static readonly type: string = SeriesTypeEnum.waterfall;\n type = SeriesTypeEnum.waterfall;\n\n static readonly mark: SeriesMarkMap = waterfallSeriesMark;\n static readonly builtInTheme = { waterfall: waterfallTheme };\n static readonly transformerConstructor = WaterfallSeriesSpecTransformer as any;\n readonly transformerConstructor = WaterfallSeriesSpecTransformer as any;\n\n protected _totalData?: ICompilableData;\n getTotalData() {\n return this._totalData?.getLatestData();\n }\n\n protected declare _spec: T;\n\n protected _leaderLineMark: IRuleMark = null;\n protected _stackLabelMark: ITextMark = null;\n protected _labelMark: ITextMark = null;\n\n protected initGroups() {\n const groupFields = this.getGroupFields();\n if (groupFields && groupFields.length) {\n this._groups = new Group(groupFields);\n this._data && this._groups.initData(this._data.getDataView(), this._dataSet);\n }\n }\n\n setAttrFromSpec() {\n super.setAttrFromSpec();\n // waterfall data stack data\n this.setValueFieldToStack();\n // 不支持多维度;\n this._fieldX = [this._fieldX[0]];\n this._fieldY = [this._fieldY[0]];\n if (isNil(this._seriesField)) {\n this._seriesField = WaterfallDefaultSeriesField;\n }\n }\n\n getSeriesKeys(): string[] {\n if (this._seriesField === WaterfallDefaultSeriesField) {\n return [\n this._theme.seriesFieldName.increase,\n this._theme.seriesFieldName.decrease,\n this._theme.seriesFieldName.total\n ];\n }\n return super.getSeriesKeys();\n }\n\n protected initData(): void {\n super.initData();\n registerDataSetInstanceTransform(this._dataSet, 'waterfallFillTotal', waterfallFillTotal);\n registerDataSetInstanceTransform(this._dataSet, 'waterfall', waterfall);\n // 如果要在最后添加总计\n if (isNil(this._spec.total) || this._spec.total.type === 'end') {\n this._rawData?.transform(\n {\n type: 'waterfallFillTotal',\n options: {\n indexField: this.getGroupFields()[0],\n valueField: this.getStackValueField(),\n seriesField: this.getSeriesField(),\n seriesFieldName: this._theme.seriesFieldName,\n total: this._spec.total,\n calculationMode: this._spec.calculationMode ?? 'increase',\n stackInverse: this.getRegion().getStackInverse()\n }\n },\n false\n );\n }\n // 总计数据\n const totalData = dataViewFromDataView(this.getViewData(), this._dataSet, {\n name: `${PREFIX}_series_${this.id}_totalData`\n });\n this.getViewData().target.removeListener('change', totalData.reRunAllTransform);\n this._totalData = new CompilableData(this._option, totalData);\n totalData.transform(\n {\n type: 'waterfall',\n options: {\n indexField: this.getGroupFields()[0],\n valueField: this.getStackValueField(),\n seriesField: this.getSeriesField(),\n seriesFieldName: this._theme.seriesFieldName,\n startAs: STACK_FIELD_START,\n endAs: STACK_FIELD_END,\n total: this._spec.total,\n calculationMode: this._spec.calculationMode ?? 'increase',\n groupData: () => this.getGroups().groupData,\n stackInverse: this.getRegion().getStackInverse()\n }\n },\n false\n );\n totalData.target.addListener('change', this._reStackTotal);\n }\n\n protected _reStackTotal = () => {\n const stackData = this.getStackData();\n const stackValueField = this.getStackValueField();\n if (stackData) {\n stackTotal(stackData as IStackCacheNode, stackValueField);\n }\n };\n\n compileData() {\n super.compileData();\n this._totalData?.compile();\n }\n\n initAnimation() {\n // 这个数据在这个时候拿不到,因为组件还没创建结束,统计和筛选也还没添加。\n // 而且这个值理论上是动态的,建议 监听 viewDataStatisticsUpdate 消息动态更新\n const waterfallAnimationParams: IBarAnimationParams = {\n yField: this.direction === 'horizontal' ? this._fieldY[0] : this.getStackValueField(),\n xField: this.direction === 'horizontal' ? this.getStackValueField() : this._fieldX[0],\n direction: this.direction,\n growFrom: () =>\n this.direction === 'horizontal'\n ? this._xAxisHelper?.getScale(0).scale(0)\n : this._yAxisHelper?.getScale(0).scale(0)\n };\n const appearPreset = (this._spec?.animationAppear as IStateAnimateSpec<WaterfallAppearPreset>)?.preset;\n const animationParams = getGroupAnimationParams(this);\n\n this._barMark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('waterfall')?.(waterfallAnimationParams, appearPreset),\n userAnimationConfig(SeriesMarkNameEnum.bar, this._spec, this._markAttributeContext),\n animationParams\n )\n );\n\n if (this._leaderLineMark) {\n this._leaderLineMark.setAnimationConfig(\n animationConfig(\n Factory.getAnimationInKey('fadeInOut')?.(),\n userAnimationConfig(SeriesMarkNameEnum.leaderLine, this._spec, this._markAttributeContext)\n )\n );\n }\n }\n\n viewDataUpdate(d: DataView): void {\n this._totalData.getDataView().reRunAllTransform();\n this._totalData.updateData();\n super.viewDataUpdate(d);\n }\n /**\n * data\n */\n // waterfall 不支持任何的 data filter\n addViewDataFilter(_option: ITransformOptions) {\n // do nothing\n }\n reFilterViewData() {\n // do nothing\n }\n\n onEvaluateEnd(ctx: IModelEvaluateOption): void {\n super.onEvaluateEnd(ctx);\n this._totalData.updateData();\n }\n\n initMark(): void {\n super.initMark();\n const leaderLine = this._createMark(WaterfallSeries.mark.leaderLine, {\n key: 'index'\n }) as IRuleMark;\n if (leaderLine) {\n this._leaderLineMark = leaderLine;\n leaderLine.setData(this._totalData);\n }\n }\n\n initLabelMarkStyle(labelMark: ILabelMark): void {\n if (!labelMark) {\n return;\n }\n\n if (!this._labelMark && this._spec.label?.visible) {\n super.initLabelMarkStyle(labelMark);\n this._labelMark = labelMark;\n return;\n }\n }\n\n initStackLabelMarkStyle(labelMark: ILabelMark): void {\n if (!labelMark) {\n return;\n }\n this._stackLabelMark = labelMark;\n // 瀑布图标签 encode 在自定义布局中计算\n labelMark.skipEncode = true;\n labelMark.setRule('stackLabel');\n labelMark.setData(this._totalData);\n\n this.setMarkStyle(labelMark, {\n text: (datum: Datum) => {\n return this._spec.stackLabel?.valueType === 'absolute' ? datum.end : precisionSub(datum.end, datum.start);\n }\n });\n }\n\n // 样式设置在这里的原因是执行顺序的问题\n // 首先执行这里的 mark.style\n // 然后执行用户的 formatMethod\n // 最后执行下方的 getTotalLabelComponentStyle 。如果在下方实现值函数,就会导致用户format无法生效\n initTotalLabelMarkStyle(labelMark: ILabelMark) {\n this.setMarkStyle(labelMark, {\n text: (datum: Datum) => {\n if (!('end' in datum)) {\n return this.direction === Direction.horizontal ? datum[this._fieldX[0]] : datum[this._fieldY[0]];\n }\n return this._spec.totalLabel?.valueType === 'absolute' ? datum.end : precisionSub(datum.end, datum.start);\n }\n });\n }\n\n getTotalLabelComponentStyle(info: Pick<ILabelInfo, 'baseMark' | 'labelMark'>) {\n return stackLabel(\n {\n ...info,\n series: this,\n // @ts-ignore\n labelSpec: this._spec.totalLabel\n },\n d => {\n const index = this.direction === Direction.vertical ? d[this._fieldX[0]] : d[this._fieldY[0]];\n return this._totalData.getLatestData().find((_d: Datum) => _d.index === index);\n }\n );\n }\n\n totalPositionX(datum: Datum, field: string, pos: number = 0.5) {\n const { dataToPosition, getBandwidth } = this._xAxisHelper;\n if (this._direction === Direction.horizontal) {\n return valueInScaleRange(\n dataToPosition([datum[field]], {\n bandPosition: this._bandPosition\n })\n );\n }\n return (\n dataToPosition([datum[field]], {\n bandPosition: this._bandPosition\n }) +\n getBandwidth(0) * 0.5 -\n (this._barMark.getAttribute('width', datum) as number) * (0.5 - pos)\n );\n }\n\n totalPositionY(datum: Datum, field: string, pos: number = 0.5) {\n const { dataToPosition, getBandwidth } = this._yAxisHelper;\n if (this._direction === Direction.horizontal) {\n return (\n dataToPosition([datum[field]], {\n bandPosition: this._bandPosition\n }) +\n getBandwidth(0) * 0.5 -\n (this._barMark.getAttribute('height', datum) as number) * (0.5 - pos)\n );\n }\n return valueInScaleRange(\n dataToPosition([datum[field]], {\n bandPosition: this._bandPosition\n })\n );\n }\n\n initMarkStyle(): void {\n super.initMarkStyle();\n const isDecrease = this._spec.calculationMode === 'decrease';\n if (this._leaderLineMark) {\n if (this._direction === Direction.horizontal) {\n this.setMarkStyle(\n this._leaderLineMark,\n {\n visible: (datum: Datum) => this.isVisibleLeaderLine(datum),\n x: (datum: Datum) => this.totalPositionX(datum, 'lastEnd', 0),\n x1: (datum: Datum) => this.totalPositionX(datum, datum.isTotal ? 'end' : 'start', 0),\n y: (datum: Datum) => {\n if (!datum.lastIndex) {\n return 0;\n }\n return this.totalPositionY(datum, 'lastIndex', isDecrease ? 0 : 1);\n },\n y1: (datum: Datum) => this.totalPositionY(datum, 'index', isDecrease ? 1 : 0)\n },\n 'normal',\n AttributeLevel.Series\n );\n } else {\n this.setMarkStyle(\n this._leaderLineMark,\n {\n visible: (datum: Datum) => this.isVisibleLeaderLine(datum),\n x: (datum: Datum) => {\n if (!datum.lastIndex) {\n return 0;\n }\n return this.totalPositionX(datum, 'lastIndex', isDecrease ? 0 : 1);\n },\n x1: (datum: Datum) => this.totalPositionX(datum, 'index', isDecrease ? 1 : 0),\n y: (datum: Datum) => this.totalPositionY(datum, 'lastEnd', 0),\n y1: (datum: Datum) => this.totalPositionY(datum, datum.isTotal ? 'end' : 'start', 0)\n },\n 'normal',\n AttributeLevel.Series\n );\n }\n }\n }\n\n protected isVisibleLeaderLine(datum: Datum): boolean {\n if (isNil(datum.lastIndex)) {\n return false;\n }\n return isValueInScaleDomain(\n [datum.lastEnd, datum[datum.isTotal ? 'end' : 'start']],\n this.direction === Direction.horizontal ? this._xAxisHelper.getScale(0) : this._yAxisHelper.getScale(0)\n );\n }\n}\n\nexport const registerWaterfallSeries = () => {\n registerRuleMark();\n registerRectMark();\n registerWaterfallAnimation();\n registerFadeInOutAnimation();\n registerCartesianBandAxis();\n registerCartesianLinearAxis();\n Factory.registerSeries(WaterfallSeries.type, WaterfallSeries);\n};\n"]}
|
|
@@ -4,5 +4,4 @@ export var AnimationStateEnum;
|
|
|
4
4
|
AnimationStateEnum.appear = "appear", AnimationStateEnum.disappear = "disappear",
|
|
5
5
|
AnimationStateEnum.enter = "enter", AnimationStateEnum.update = "update", AnimationStateEnum.state = "state",
|
|
6
6
|
AnimationStateEnum.exit = "exit", AnimationStateEnum.normal = "normal", AnimationStateEnum.none = "none";
|
|
7
|
-
}(AnimationStateEnum || (AnimationStateEnum = {}));
|
|
8
|
-
//# sourceMappingURL=interface.js.map
|
|
7
|
+
}(AnimationStateEnum || (AnimationStateEnum = {}));
|
|
@@ -20,6 +20,8 @@ import { registerDimensionTooltipProcessor } from "../../component/tooltip/proce
|
|
|
20
20
|
|
|
21
21
|
import { registerMarkTooltipProcessor } from "../../component/tooltip/processor/mark-tooltip";
|
|
22
22
|
|
|
23
|
+
import { boxplot } from "@visactor/vdataset";
|
|
24
|
+
|
|
23
25
|
export class BoxPlotChart extends BaseChart {
|
|
24
26
|
constructor() {
|
|
25
27
|
super(...arguments), this.transformerConstructor = BoxPlotChartSpecTransformer,
|
|
@@ -36,6 +38,7 @@ BoxPlotChart.transformerConstructor = BoxPlotChartSpecTransformer;
|
|
|
36
38
|
|
|
37
39
|
export const registerBoxplotChart = () => {
|
|
38
40
|
registerDimensionTooltipProcessor(), registerMarkTooltipProcessor(), registerDimensionEvents(),
|
|
39
|
-
registerDimensionHover(), registerBoxplotSeries(), Factory.
|
|
41
|
+
registerDimensionHover(), registerBoxplotSeries(), Factory.registerTransform("boxplot", boxplot),
|
|
42
|
+
Factory.registerChart(BoxPlotChart.type, BoxPlotChart);
|
|
40
43
|
};
|
|
41
44
|
//# sourceMappingURL=box-plot.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/chart/box-plot/box-plot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAG7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AACpF,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AACjH,OAAO,EAAE,yBAAyB,EAAE,MAAM,2CAA2C,CAAC;AACtF,OAAO,EAAE,iCAAiC,EAAE,MAAM,qDAAqD,CAAC;AACxG,OAAO,EAAE,4BAA4B,EAAE,MAAM,gDAAgD,CAAC;
|
|
1
|
+
{"version":3,"sources":["../src/chart/box-plot/box-plot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAG7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AACpF,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AACjH,OAAO,EAAE,yBAAyB,EAAE,MAAM,2CAA2C,CAAC;AACtF,OAAO,EAAE,iCAAiC,EAAE,MAAM,qDAAqD,CAAC;AACxG,OAAO,EAAE,4BAA4B,EAAE,MAAM,gDAAgD,CAAC;AAC9F,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE7C,MAAM,OAAO,YAA8D,SAAQ,SAAY;IAA/F;;QAIW,2BAAsB,GAAG,2BAA2B,CAAC;QACrD,SAAI,aAAiC;QACrC,eAAU,GAAW,cAAc,CAAC,OAAO,CAAC;IAOvD,CAAC;IALW,eAAe;QACvB,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,yBAAyB,CAAC;QAC/D,IAAI,CAAC,YAAY,CAAC,uBAAuB,GAAG,uBAAuB,CAAC;QACpE,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,yBAAyB,CAAC;IACvE,CAAC;;AAXe,iBAAI,aAAiC;AACrC,uBAAU,GAAW,cAAc,CAAC,OAAO,CAAC;AAC5C,mCAAsB,GAAG,2BAA2B,CAAC;AAYvE,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,EAAE;IACvC,iCAAiC,EAAE,CAAC;IACpC,4BAA4B,EAAE,CAAC;IAC/B,uBAAuB,EAAE,CAAC;IAC1B,sBAAsB,EAAE,CAAC;IACzB,qBAAqB,EAAE,CAAC;IACxB,OAAO,CAAC,iBAAiB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC9C,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;AACzD,CAAC,CAAC","file":"box-plot.js","sourcesContent":["import { SeriesTypeEnum } from '../../series/interface/type';\nimport { ChartTypeEnum } from '../interface/type';\nimport type { IBoxPlotChartSpec } from './interface';\nimport { registerBoxplotSeries } from '../../series/box-plot/box-plot';\nimport { Factory } from '../../core/factory';\nimport { BoxPlotChartSpecTransformer } from './box-plot-transformer';\nimport { BaseChart } from '../base';\nimport { registerDimensionHover } from '../../interaction/triggers/dimension-hover';\nimport { registerDimensionEvents } from '../../event/events';\nimport { getCartesianDimensionInfo, getDimensionInfoByValue } from '../../event/events/dimension/util/cartesian';\nimport { getCartesianCrosshairRect } from '../../component/crosshair/utils/cartesian';\nimport { registerDimensionTooltipProcessor } from '../../component/tooltip/processor/dimension-tooltip';\nimport { registerMarkTooltipProcessor } from '../../component/tooltip/processor/mark-tooltip';\nimport { boxplot } from '@visactor/vdataset';\n\nexport class BoxPlotChart<T extends IBoxPlotChartSpec = IBoxPlotChartSpec> extends BaseChart<T> {\n static readonly type: string = ChartTypeEnum.boxPlot;\n static readonly seriesType: string = SeriesTypeEnum.boxPlot;\n static readonly transformerConstructor = BoxPlotChartSpecTransformer;\n readonly transformerConstructor = BoxPlotChartSpecTransformer;\n readonly type: string = ChartTypeEnum.boxPlot;\n readonly seriesType: string = SeriesTypeEnum.boxPlot;\n\n protected _setModelOption() {\n this._modelOption.getDimensionInfo = getCartesianDimensionInfo;\n this._modelOption.getDimensionInfoByValue = getDimensionInfoByValue;\n this._modelOption.getRectByDimensionData = getCartesianCrosshairRect;\n }\n}\n\nexport const registerBoxplotChart = () => {\n registerDimensionTooltipProcessor();\n registerMarkTooltipProcessor();\n registerDimensionEvents();\n registerDimensionHover();\n registerBoxplotSeries();\n Factory.registerTransform('boxplot', boxplot);\n Factory.registerChart(BoxPlotChart.type, BoxPlotChart);\n};\n"]}
|
|
@@ -22,6 +22,8 @@ import { registerMarkTooltipProcessor } from "../../component/tooltip/processor/
|
|
|
22
22
|
|
|
23
23
|
import { registerGroupTooltipProcessor } from "../../component/tooltip/processor/group-tooltip";
|
|
24
24
|
|
|
25
|
+
import { bin } from "@visactor/vdataset";
|
|
26
|
+
|
|
25
27
|
export class HistogramChart extends BaseHistogramChart {
|
|
26
28
|
constructor() {
|
|
27
29
|
super(...arguments), this.transformerConstructor = HistogramChartSpecTransformer,
|
|
@@ -38,6 +40,7 @@ HistogramChart.transformerConstructor = HistogramChartSpecTransformer;
|
|
|
38
40
|
|
|
39
41
|
export const registerHistogramChart = () => {
|
|
40
42
|
registerDimensionTooltipProcessor(), registerMarkTooltipProcessor(), registerGroupTooltipProcessor(),
|
|
41
|
-
registerDimensionEvents(), registerDimensionHover(), registerBarSeries(), Factory.
|
|
43
|
+
registerDimensionEvents(), registerDimensionHover(), registerBarSeries(), Factory.registerTransform("bin", bin),
|
|
44
|
+
Factory.registerChart(HistogramChart.type, HistogramChart);
|
|
42
45
|
};
|
|
43
46
|
//# sourceMappingURL=histogram.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/chart/histogram/histogram.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE7C,OAAO,EAAE,6BAA6B,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AACpF,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AACjH,OAAO,EAAE,yBAAyB,EAAE,MAAM,2CAA2C,CAAC;AACtF,OAAO,EAAE,iCAAiC,EAAE,MAAM,qDAAqD,CAAC;AACxG,OAAO,EAAE,4BAA4B,EAAE,MAAM,gDAAgD,CAAC;AAC9F,OAAO,EAAE,6BAA6B,EAAE,MAAM,iDAAiD,CAAC;
|
|
1
|
+
{"version":3,"sources":["../src/chart/histogram/histogram.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE7C,OAAO,EAAE,6BAA6B,EAAE,MAAM,yBAAyB,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AACpF,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AACjH,OAAO,EAAE,yBAAyB,EAAE,MAAM,2CAA2C,CAAC;AACtF,OAAO,EAAE,iCAAiC,EAAE,MAAM,qDAAqD,CAAC;AACxG,OAAO,EAAE,4BAA4B,EAAE,MAAM,gDAAgD,CAAC;AAC9F,OAAO,EAAE,6BAA6B,EAAE,MAAM,iDAAiD,CAAC;AAChG,OAAO,EAAE,GAAG,EAAE,MAAM,oBAAoB,CAAC;AAEzC,MAAM,OAAO,cAAoE,SAAQ,kBAAqB;IAA9G;;QAIW,2BAAsB,GAAG,6BAA6B,CAAC;QACvD,SAAI,eAAmC;QACvC,eAAU,GAAW,cAAc,CAAC,GAAG,CAAC;IAOnD,CAAC;IALW,eAAe;QACvB,IAAI,CAAC,YAAY,CAAC,gBAAgB,GAAG,yBAAyB,CAAC;QAC/D,IAAI,CAAC,YAAY,CAAC,uBAAuB,GAAG,uBAAuB,CAAC;QACpE,IAAI,CAAC,YAAY,CAAC,sBAAsB,GAAG,yBAAyB,CAAC;IACvE,CAAC;;AAXe,mBAAI,eAAmC;AACvC,yBAAU,GAAW,cAAc,CAAC,GAAG,CAAC;AACxC,qCAAsB,GAAG,6BAA6B,CAAC;AAYzE,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,EAAE;IACzC,iCAAiC,EAAE,CAAC;IACpC,4BAA4B,EAAE,CAAC;IAC/B,6BAA6B,EAAE,CAAC;IAChC,uBAAuB,EAAE,CAAC;IAC1B,sBAAsB,EAAE,CAAC;IACzB,iBAAiB,EAAE,CAAC;IACpB,OAAO,CAAC,iBAAiB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACtC,OAAO,CAAC,aAAa,CAAC,cAAc,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;AAC7D,CAAC,CAAC","file":"histogram.js","sourcesContent":["import { registerBarSeries } from '../../series/bar/bar';\nimport { SeriesTypeEnum } from '../../series/interface/type';\nimport { ChartTypeEnum } from '../interface/type';\nimport { BaseHistogramChart } from './base/base';\nimport { Factory } from '../../core/factory';\nimport type { IHistogramChartSpec } from './interface';\nimport { HistogramChartSpecTransformer } from './histogram-transformer';\nimport { registerDimensionHover } from '../../interaction/triggers/dimension-hover';\nimport { registerDimensionEvents } from '../../event/events';\nimport { getCartesianDimensionInfo, getDimensionInfoByValue } from '../../event/events/dimension/util/cartesian';\nimport { getCartesianCrosshairRect } from '../../component/crosshair/utils/cartesian';\nimport { registerDimensionTooltipProcessor } from '../../component/tooltip/processor/dimension-tooltip';\nimport { registerMarkTooltipProcessor } from '../../component/tooltip/processor/mark-tooltip';\nimport { registerGroupTooltipProcessor } from '../../component/tooltip/processor/group-tooltip';\nimport { bin } from '@visactor/vdataset';\n\nexport class HistogramChart<T extends IHistogramChartSpec = IHistogramChartSpec> extends BaseHistogramChart<T> {\n static readonly type: string = ChartTypeEnum.histogram;\n static readonly seriesType: string = SeriesTypeEnum.bar;\n static readonly transformerConstructor = HistogramChartSpecTransformer;\n readonly transformerConstructor = HistogramChartSpecTransformer;\n readonly type: string = ChartTypeEnum.histogram;\n readonly seriesType: string = SeriesTypeEnum.bar;\n\n protected _setModelOption() {\n this._modelOption.getDimensionInfo = getCartesianDimensionInfo;\n this._modelOption.getDimensionInfoByValue = getDimensionInfoByValue;\n this._modelOption.getRectByDimensionData = getCartesianCrosshairRect;\n }\n}\n\nexport const registerHistogramChart = () => {\n registerDimensionTooltipProcessor();\n registerMarkTooltipProcessor();\n registerGroupTooltipProcessor();\n registerDimensionEvents();\n registerDimensionHover();\n registerBarSeries();\n Factory.registerTransform('bin', bin);\n Factory.registerChart(HistogramChart.type, HistogramChart);\n};\n"]}
|
|
@@ -36,7 +36,7 @@ export declare abstract class BaseCrossHair<T extends ICartesianCrosshairSpec |
|
|
|
36
36
|
value: string | number;
|
|
37
37
|
}[]): void;
|
|
38
38
|
protected _getLimitBounds(): IBoundsLike;
|
|
39
|
-
protected _showDefaultCrosshairBySpec():
|
|
39
|
+
protected _showDefaultCrosshairBySpec(): boolean;
|
|
40
40
|
protected _updateVisibleCrosshair(): void;
|
|
41
41
|
protected _showDefaultCrosshair(): void;
|
|
42
42
|
setAttrFromSpec(): void;
|
|
@@ -58,7 +58,7 @@ export class BaseCrossHair extends BaseComponent {
|
|
|
58
58
|
this._clickLock || this._handleIn(params);
|
|
59
59
|
}), 10), this._handleOutEvent = () => {
|
|
60
60
|
this.enableRemain || this._clickLock || !this._hasActive || (this.clearOutEvent(),
|
|
61
|
-
this.
|
|
61
|
+
this.hideCrosshair());
|
|
62
62
|
}, this._handleTooltipShow = params => {
|
|
63
63
|
const tooltipData = params.tooltipData;
|
|
64
64
|
if (params.isEmptyTooltip || !tooltipData || !tooltipData.length) return void this._handleTooltipHideOrRelease();
|
|
@@ -68,7 +68,7 @@ export class BaseCrossHair extends BaseComponent {
|
|
|
68
68
|
const components = this._getNeedClearVRenderComponents();
|
|
69
69
|
this._hasActive = components.some((comp => comp && !1 !== comp.attribute.visible));
|
|
70
70
|
}, this._handleTooltipHideOrRelease = () => {
|
|
71
|
-
this.clearOutEvent(), this.
|
|
71
|
+
this.clearOutEvent(), this.hideCrosshair();
|
|
72
72
|
}, this.enable = !0, this.showDefault = !0;
|
|
73
73
|
}
|
|
74
74
|
_setAllAxisValues(axisMap, point, field) {
|
|
@@ -116,16 +116,18 @@ export class BaseCrossHair extends BaseComponent {
|
|
|
116
116
|
return this._limitBounds;
|
|
117
117
|
}
|
|
118
118
|
_showDefaultCrosshairBySpec() {
|
|
119
|
-
|
|
119
|
+
let hasDefaultCrosshair = !1;
|
|
120
|
+
return Object.keys(this._stateByField).forEach((field => {
|
|
120
121
|
const fieldSpec = this._spec[field];
|
|
121
122
|
if (fieldSpec && fieldSpec.visible && fieldSpec.defaultSelect) {
|
|
122
123
|
const {axisIndex: axisIndex = 0, datum: datum} = fieldSpec.defaultSelect, axis = this._option.getComponentsByKey("axes").find((c => c.getSpecIndex() === axisIndex));
|
|
123
|
-
axis && (this._stateByField[field].currentValue.clear(),
|
|
124
|
+
axis && (hasDefaultCrosshair = !0, this._stateByField[field].currentValue.clear(),
|
|
125
|
+
this._stateByField[field].currentValue.set(axisIndex, {
|
|
124
126
|
axis: axis,
|
|
125
127
|
datum: datum
|
|
126
128
|
}));
|
|
127
129
|
}
|
|
128
|
-
}));
|
|
130
|
+
})), hasDefaultCrosshair;
|
|
129
131
|
}
|
|
130
132
|
_updateVisibleCrosshair() {
|
|
131
133
|
let hasVisible = !1;
|
|
@@ -135,7 +137,9 @@ export class BaseCrossHair extends BaseComponent {
|
|
|
135
137
|
})), hasVisible && this.layoutByValue(!1);
|
|
136
138
|
}
|
|
137
139
|
_showDefaultCrosshair() {
|
|
138
|
-
|
|
140
|
+
if (this.showDefault) {
|
|
141
|
+
this._showDefaultCrosshairBySpec() && this.layoutByValue(!1);
|
|
142
|
+
} else this._updateVisibleCrosshair();
|
|
139
143
|
}
|
|
140
144
|
setAttrFromSpec() {
|
|
141
145
|
super.setAttrFromSpec(), this._parseCrosshairSpec();
|