@visactor/vchart 1.13.21-alpha.1 → 1.13.21-alpha.3
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 +267 -20
- package/build/index.js +268 -19
- package/build/index.min.js +1 -1
- package/build/tsconfig.tsbuildinfo +1 -1
- package/cjs/chart/sankey/sankey-transformer.js +1 -1
- package/cjs/chart/sankey/sankey-transformer.js.map +1 -1
- package/cjs/constant/funnel.js +2 -1
- package/cjs/constant/sunburst.js +1 -2
- 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/interface.js +2 -1
- package/cjs/core/vchart.d.ts +2 -0
- package/cjs/core/vchart.js +4 -2
- package/cjs/core/vchart.js.map +1 -1
- package/cjs/data/transforms/sankey.d.ts +2 -0
- package/cjs/data/transforms/sankey.js +2 -1
- package/cjs/data/transforms/sankey.js.map +1 -1
- package/cjs/plugin/chart/index.d.ts +1 -0
- package/cjs/plugin/chart/index.js +1 -1
- package/cjs/plugin/chart/index.js.map +1 -1
- package/cjs/plugin/chart/plugin-service.d.ts +1 -0
- package/cjs/plugin/chart/plugin-service.js +3 -0
- package/cjs/plugin/chart/plugin-service.js.map +1 -1
- package/cjs/plugin/chart/scroll/index.js.map +1 -1
- package/cjs/plugin/chart/scroll/scroll.d.ts +16 -2
- package/cjs/plugin/chart/scroll/scroll.js +98 -23
- package/cjs/plugin/chart/scroll/scroll.js.map +1 -1
- package/cjs/series/sankey/interface.d.ts +4 -0
- package/cjs/series/sankey/interface.js.map +1 -1
- package/cjs/series/sankey/sankey.js +3 -1
- package/cjs/series/sankey/sankey.js.map +1 -1
- package/esm/chart/sankey/sankey-transformer.js +1 -1
- package/esm/chart/sankey/sankey-transformer.js.map +1 -1
- package/esm/constant/funnel.js +2 -1
- package/esm/constant/sunburst.js +1 -2
- 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/interface.js +2 -1
- package/esm/core/vchart.d.ts +2 -0
- package/esm/core/vchart.js +4 -2
- package/esm/core/vchart.js.map +1 -1
- package/esm/data/transforms/sankey.d.ts +2 -0
- package/esm/data/transforms/sankey.js +2 -1
- package/esm/data/transforms/sankey.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/plugin-service.d.ts +1 -0
- package/esm/plugin/chart/plugin-service.js +3 -0
- package/esm/plugin/chart/plugin-service.js.map +1 -1
- package/esm/plugin/chart/scroll/index.js.map +1 -1
- package/esm/plugin/chart/scroll/scroll.d.ts +16 -2
- package/esm/plugin/chart/scroll/scroll.js +102 -23
- package/esm/plugin/chart/scroll/scroll.js.map +1 -1
- package/esm/series/sankey/interface.d.ts +4 -0
- package/esm/series/sankey/interface.js.map +1 -1
- package/esm/series/sankey/sankey.js +3 -1
- package/esm/series/sankey/sankey.js.map +1 -1
- package/package.json +10 -10
package/build/index.es.js
CHANGED
|
@@ -31833,8 +31833,8 @@ const DEFAULT_HTML_TEXT_SPEC = {
|
|
|
31833
31833
|
style: {}
|
|
31834
31834
|
};
|
|
31835
31835
|
const SCROLLBAR_START_EVENT = "scrollDown";
|
|
31836
|
-
const SCROLLBAR_EVENT$
|
|
31837
|
-
const SCROLLBAR_END_EVENT$
|
|
31836
|
+
const SCROLLBAR_EVENT$2 = "scrollDrag";
|
|
31837
|
+
const SCROLLBAR_END_EVENT$2 = "scrollUp";
|
|
31838
31838
|
|
|
31839
31839
|
function getEndTriggersOfDrag() {
|
|
31840
31840
|
return "browser" === vglobal.env ? ["pointerup", "pointerleave", "pointercancel"] : ["pointerup", "pointerleave", "pointerupoutside"];
|
|
@@ -31929,7 +31929,7 @@ let ScrollBar$1 = class ScrollBar extends AbstractComponent {
|
|
|
31929
31929
|
preScrollRange = this.getScrollRange(),
|
|
31930
31930
|
[currentPos, currentScrollValue] = this._computeScrollValue(e),
|
|
31931
31931
|
range = [preScrollRange[0] + currentScrollValue, preScrollRange[1] + currentScrollValue];
|
|
31932
|
-
this._prePos = null, this._dispatchEvent(SCROLLBAR_END_EVENT$
|
|
31932
|
+
this._prePos = null, this._dispatchEvent(SCROLLBAR_END_EVENT$2, {
|
|
31933
31933
|
pre: preRange,
|
|
31934
31934
|
value: clampRange$1(range, limitRange[0], limitRange[1])
|
|
31935
31935
|
}), this._clearDragEvents();
|
|
@@ -31957,7 +31957,7 @@ let ScrollBar$1 = class ScrollBar extends AbstractComponent {
|
|
|
31957
31957
|
}, !0), this.stage && !this.stage.autoRender && this.stage.renderNextFrame();
|
|
31958
31958
|
}
|
|
31959
31959
|
}
|
|
31960
|
-
this.attribute.range = currScrollRange, realTime && this._dispatchEvent(SCROLLBAR_EVENT$
|
|
31960
|
+
this.attribute.range = currScrollRange, realTime && this._dispatchEvent(SCROLLBAR_EVENT$2, {
|
|
31961
31961
|
pre: preRange,
|
|
31962
31962
|
value: currScrollRange
|
|
31963
31963
|
});
|
|
@@ -32196,7 +32196,7 @@ let ScrollBarPlugin = ScrollBarPlugin_1 = class {
|
|
|
32196
32196
|
scrollbar.setAttribute("visibleAll", !0);
|
|
32197
32197
|
}), scrollbar.addEventListener("pointerout", () => {
|
|
32198
32198
|
scrollbar.setAttribute("visibleAll", !0);
|
|
32199
|
-
}), scrollbar.addEventListener("scrollUp", this.handleScrollBarChange), scrollbar.addEventListener(SCROLLBAR_EVENT$
|
|
32199
|
+
}), scrollbar.addEventListener("scrollUp", this.handleScrollBarChange), scrollbar.addEventListener(SCROLLBAR_EVENT$2, this.handleScrollBarChange);
|
|
32200
32200
|
}
|
|
32201
32201
|
addOrUpdateScroll(showH, showV, container, scrollContainer) {
|
|
32202
32202
|
if (showH) {
|
|
@@ -62888,6 +62888,9 @@ class ChartPluginService extends BasePluginService {
|
|
|
62888
62888
|
super();
|
|
62889
62889
|
this.globalInstance = globalInstance;
|
|
62890
62890
|
}
|
|
62891
|
+
getPlugin(name) {
|
|
62892
|
+
return this._plugins.find(plugin => plugin.name === name);
|
|
62893
|
+
}
|
|
62891
62894
|
onInit(chartSpec) {
|
|
62892
62895
|
this._plugins.forEach(plugin => {
|
|
62893
62896
|
plugin.onInit && plugin.onInit(this, chartSpec);
|
|
@@ -63048,6 +63051,9 @@ class VChart {
|
|
|
63048
63051
|
getDataSet() {
|
|
63049
63052
|
return this._dataSet;
|
|
63050
63053
|
}
|
|
63054
|
+
get chartPlugin() {
|
|
63055
|
+
return this._chartPlugin;
|
|
63056
|
+
}
|
|
63051
63057
|
constructor(spec, options) {
|
|
63052
63058
|
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
63053
63059
|
this.id = createID();
|
|
@@ -64268,7 +64274,7 @@ const registerVChartCore = () => {
|
|
|
64268
64274
|
};
|
|
64269
64275
|
registerVChartCore();
|
|
64270
64276
|
|
|
64271
|
-
const version = "1.13.21-alpha.
|
|
64277
|
+
const version = "1.13.21-alpha.3";
|
|
64272
64278
|
|
|
64273
64279
|
const addVChartProperty = (data, op) => {
|
|
64274
64280
|
const context = op.beforeCall();
|
|
@@ -85797,7 +85803,10 @@ class SankeyLayout {
|
|
|
85797
85803
|
this._ascendingSourceBreadth = (a, b) => ascendingNodeBreadth(this._nodeMap[a.source], this._nodeMap[b.source]) || a.index - b.index, this._ascendingTargetBreadth = (a, b) => ascendingNodeBreadth(this._nodeMap[a.target], this._nodeMap[b.target]) || a.index - b.index, this.options = Object.assign({}, SankeyLayout.defaultOptions, options);
|
|
85798
85804
|
const keyOption = this.options.nodeKey,
|
|
85799
85805
|
keyFunc = isFunction$1(keyOption) ? keyOption : keyOption ? field$3(keyOption) : null;
|
|
85800
|
-
this._getNodeKey = keyFunc
|
|
85806
|
+
this._getNodeKey = keyFunc;
|
|
85807
|
+
const depthOption = this.options.depthKey,
|
|
85808
|
+
depthFunc = isFunction$1(depthOption) ? depthOption : depthOption ? field$3(depthOption) : null;
|
|
85809
|
+
this._getNodeDepth = depthFunc, this._logger = Logger.getInstance(), this._alignFunc = isFunction$1(this.options.setNodeLayer) ? node => this.options.setNodeLayer(node.datum) : alignFunctions[this.options.nodeAlign];
|
|
85801
85810
|
}
|
|
85802
85811
|
layout(data, config) {
|
|
85803
85812
|
if (!data) return null;
|
|
@@ -85902,11 +85911,12 @@ class SankeyLayout {
|
|
|
85902
85911
|
calculateNodeValue(originalNodes);
|
|
85903
85912
|
const doSubTree = (subTree, depth, parents) => {
|
|
85904
85913
|
subTree.forEach((node, index) => {
|
|
85914
|
+
var _a;
|
|
85905
85915
|
const nodeKey = this._getNodeKey ? this._getNodeKey(node) : parents ? `${parents[parents.length - 1].key}-${index}` : `${depth}-${index}`,
|
|
85906
85916
|
nodeValue = isNil$1(node.value) ? 0 : toValidNumber$1(node.value);
|
|
85907
85917
|
if (nodeMap[nodeKey]) nodeMap[nodeKey].value = void 0;else {
|
|
85908
85918
|
const nodeElement = {
|
|
85909
|
-
depth: depth,
|
|
85919
|
+
depth: this._getNodeDepth && null !== (_a = this._getNodeDepth(node)) && void 0 !== _a ? _a : depth,
|
|
85910
85920
|
datum: node,
|
|
85911
85921
|
index: index,
|
|
85912
85922
|
key: nodeKey,
|
|
@@ -86024,7 +86034,7 @@ class SankeyLayout {
|
|
|
86024
86034
|
}
|
|
86025
86035
|
}
|
|
86026
86036
|
computeNodeDepths(nodes) {
|
|
86027
|
-
var _a;
|
|
86037
|
+
var _a, _b;
|
|
86028
86038
|
const n = nodes.length;
|
|
86029
86039
|
let next,
|
|
86030
86040
|
nextMap,
|
|
@@ -86036,9 +86046,12 @@ class SankeyLayout {
|
|
|
86036
86046
|
next = [], nextMap = {};
|
|
86037
86047
|
for (let i = 0, curLen = current.length; i < curLen; i++) {
|
|
86038
86048
|
const node = current[i];
|
|
86039
|
-
if (node
|
|
86040
|
-
const
|
|
86041
|
-
|
|
86049
|
+
if (node) {
|
|
86050
|
+
const tempDepth = setNodeLayer && null !== (_a = setNodeLayer(node.datum)) && void 0 !== _a ? _a : depth;
|
|
86051
|
+
if (node.depth = this._getNodeDepth && null !== (_b = this._getNodeDepth(node.datum)) && void 0 !== _b ? _b : tempDepth, setNodeLayer && (maxDepth = Math.max(node.depth, maxDepth)), node.sourceLinks && node.sourceLinks.length) for (let j = 0, linkLen = node.sourceLinks.length; j < linkLen; j++) {
|
|
86052
|
+
const link = node.sourceLinks[j];
|
|
86053
|
+
nextMap[link.target] || (next.push(this._nodeMap[link.target]), nextMap[link.target] = !0);
|
|
86054
|
+
}
|
|
86042
86055
|
}
|
|
86043
86056
|
}
|
|
86044
86057
|
current = next, depth += 1;
|
|
@@ -86442,7 +86455,12 @@ const sankeyLayout = (data, op) => {
|
|
|
86442
86455
|
}
|
|
86443
86456
|
const layout = new SankeyLayout(op);
|
|
86444
86457
|
const result = [];
|
|
86445
|
-
|
|
86458
|
+
if (op.customLayout) {
|
|
86459
|
+
result.push(op.customLayout(layout, originalData, view, op));
|
|
86460
|
+
}
|
|
86461
|
+
else {
|
|
86462
|
+
result.push(layout.layout(originalData, view));
|
|
86463
|
+
}
|
|
86446
86464
|
return result;
|
|
86447
86465
|
};
|
|
86448
86466
|
|
|
@@ -86762,6 +86780,7 @@ class SankeySeries extends CartesianSeries {
|
|
|
86762
86780
|
maxLinkHeight: this._spec.maxLinkHeight,
|
|
86763
86781
|
iterations: this._spec.iterations,
|
|
86764
86782
|
nodeKey: this._spec.nodeKey,
|
|
86783
|
+
depthKey: this._spec.depthKey,
|
|
86765
86784
|
linkSortBy: this._spec.linkSortBy,
|
|
86766
86785
|
nodeSortBy: this._spec.nodeSortBy,
|
|
86767
86786
|
setNodeLayer: this._spec.setNodeLayer,
|
|
@@ -86770,7 +86789,8 @@ class SankeySeries extends CartesianSeries {
|
|
|
86770
86789
|
linkHeight: this._spec.linkHeight,
|
|
86771
86790
|
equalNodeHeight: this._spec.equalNodeHeight,
|
|
86772
86791
|
linkOverlap: this._spec.linkOverlap,
|
|
86773
|
-
inverse: this._spec.inverse
|
|
86792
|
+
inverse: this._spec.inverse,
|
|
86793
|
+
customLayout: this._spec.customLayout
|
|
86774
86794
|
},
|
|
86775
86795
|
level: TransformLevel.sankeyLayout
|
|
86776
86796
|
});
|
|
@@ -92704,6 +92724,7 @@ class SankeyChartSpecTransformer extends BaseChartSpecTransformer {
|
|
|
92704
92724
|
'linkOverlap',
|
|
92705
92725
|
'iterations',
|
|
92706
92726
|
'nodeKey',
|
|
92727
|
+
'depthKey',
|
|
92707
92728
|
'linkSortBy',
|
|
92708
92729
|
'nodeSortBy',
|
|
92709
92730
|
'setNodeLayer',
|
|
@@ -92711,7 +92732,8 @@ class SankeyChartSpecTransformer extends BaseChartSpecTransformer {
|
|
|
92711
92732
|
'link',
|
|
92712
92733
|
'emphasis',
|
|
92713
92734
|
'inverse',
|
|
92714
|
-
'overflow'
|
|
92735
|
+
'overflow',
|
|
92736
|
+
'customLayout'
|
|
92715
92737
|
]);
|
|
92716
92738
|
return series;
|
|
92717
92739
|
}
|
|
@@ -97494,8 +97516,8 @@ const registerDataZoom = () => {
|
|
|
97494
97516
|
Factory$1.registerComponent(DataZoom.type, DataZoom);
|
|
97495
97517
|
};
|
|
97496
97518
|
|
|
97497
|
-
const SCROLLBAR_EVENT = 'scrollDrag';
|
|
97498
|
-
const SCROLLBAR_END_EVENT = 'scrollUp';
|
|
97519
|
+
const SCROLLBAR_EVENT$1 = 'scrollDrag';
|
|
97520
|
+
const SCROLLBAR_END_EVENT$1 = 'scrollUp';
|
|
97499
97521
|
class ScrollBar extends DataFilterBaseComponent {
|
|
97500
97522
|
constructor(spec, options) {
|
|
97501
97523
|
var _a;
|
|
@@ -97565,11 +97587,11 @@ class ScrollBar extends DataFilterBaseComponent {
|
|
|
97565
97587
|
else {
|
|
97566
97588
|
const container = this.getContainer();
|
|
97567
97589
|
this._component = new ScrollBar$1(attrs);
|
|
97568
|
-
this._component.addEventListener(SCROLLBAR_EVENT, (e) => {
|
|
97590
|
+
this._component.addEventListener(SCROLLBAR_EVENT$1, (e) => {
|
|
97569
97591
|
const value = e.detail.value;
|
|
97570
97592
|
this._handleChange(value[0], value[1]);
|
|
97571
97593
|
});
|
|
97572
|
-
this._component.addEventListener(SCROLLBAR_END_EVENT, (e) => {
|
|
97594
|
+
this._component.addEventListener(SCROLLBAR_END_EVENT$1, (e) => {
|
|
97573
97595
|
const value = e.detail.value;
|
|
97574
97596
|
this._handleChange(value[0], value[1]);
|
|
97575
97597
|
});
|
|
@@ -104663,4 +104685,229 @@ const registerMediaQuery = () => {
|
|
|
104663
104685
|
registerChartPlugin(MediaQuery);
|
|
104664
104686
|
};
|
|
104665
104687
|
|
|
104666
|
-
|
|
104688
|
+
const SCROLLBAR_EVENT = 'scrollDrag';
|
|
104689
|
+
const SCROLLBAR_END_EVENT = 'scrollUp';
|
|
104690
|
+
const DefaultTheme = {
|
|
104691
|
+
size: 10,
|
|
104692
|
+
railStyle: undefined,
|
|
104693
|
+
sliderStyle: undefined
|
|
104694
|
+
};
|
|
104695
|
+
class ScrollPlugin extends BasePlugin {
|
|
104696
|
+
constructor() {
|
|
104697
|
+
super(ScrollPlugin.type);
|
|
104698
|
+
this.type = 'chartScroll';
|
|
104699
|
+
this.name = ScrollPlugin.type;
|
|
104700
|
+
this._lastScrollX = 0;
|
|
104701
|
+
this._lastScrollY = 0;
|
|
104702
|
+
this._scrollLimit = {
|
|
104703
|
+
x: {
|
|
104704
|
+
min: 0,
|
|
104705
|
+
max: 0,
|
|
104706
|
+
size: 0,
|
|
104707
|
+
percent: 0
|
|
104708
|
+
},
|
|
104709
|
+
y: {
|
|
104710
|
+
min: 0,
|
|
104711
|
+
max: 0,
|
|
104712
|
+
size: 0,
|
|
104713
|
+
percent: 0
|
|
104714
|
+
}
|
|
104715
|
+
};
|
|
104716
|
+
this.onWheel = (e) => {
|
|
104717
|
+
var _a, _b;
|
|
104718
|
+
const scrollX = e.deltaX;
|
|
104719
|
+
const scrollY = e.deltaY;
|
|
104720
|
+
const rootMark = this.getRootMark();
|
|
104721
|
+
if (!rootMark) {
|
|
104722
|
+
return;
|
|
104723
|
+
}
|
|
104724
|
+
const { percent: yPercent, y } = (_a = this._computeFinalScrollY(rootMark.attribute.y - scrollY)) !== null && _a !== void 0 ? _a : {};
|
|
104725
|
+
const { percent: xPercent, x } = (_b = this._computeFinalScrollX(rootMark.attribute.x - scrollX)) !== null && _b !== void 0 ? _b : {};
|
|
104726
|
+
const eventResult = {};
|
|
104727
|
+
if (isValidNumber$1(x)) {
|
|
104728
|
+
this._updateScrollX(rootMark, x, xPercent);
|
|
104729
|
+
eventResult.x = x;
|
|
104730
|
+
}
|
|
104731
|
+
if (isValidNumber$1(y)) {
|
|
104732
|
+
this._updateScrollY(rootMark, y, yPercent);
|
|
104733
|
+
eventResult.y = y;
|
|
104734
|
+
}
|
|
104735
|
+
this._event.emit('chartScroll', eventResult);
|
|
104736
|
+
};
|
|
104737
|
+
}
|
|
104738
|
+
onInit(service, chartSpec) {
|
|
104739
|
+
var _a;
|
|
104740
|
+
this._spec = (_a = chartSpec[ScrollPlugin.type]) !== null && _a !== void 0 ? _a : {};
|
|
104741
|
+
this._service = service;
|
|
104742
|
+
this._bindEvent(service);
|
|
104743
|
+
}
|
|
104744
|
+
onLayoutRectUpdate(service) {
|
|
104745
|
+
const viewBoxSize = service.globalInstance.getChart().getViewRect();
|
|
104746
|
+
const canvasSize = service.globalInstance.getChart().getCanvasRect();
|
|
104747
|
+
this._scrollLimit.x.min = Math.min(canvasSize.width - viewBoxSize.width, 0);
|
|
104748
|
+
this._scrollLimit.x.percent = Math.abs(canvasSize.width / viewBoxSize.width);
|
|
104749
|
+
this._scrollLimit.x.size = viewBoxSize.width;
|
|
104750
|
+
this._scrollLimit.y.min = Math.min(canvasSize.height - viewBoxSize.height, 0);
|
|
104751
|
+
this._scrollLimit.y.percent = Math.abs(canvasSize.height / viewBoxSize.height);
|
|
104752
|
+
this._scrollLimit.y.size = viewBoxSize.height;
|
|
104753
|
+
if (!this._event) {
|
|
104754
|
+
this._event = new Event$1(this._service.globalInstance.getChart().getOption().eventDispatcher, null);
|
|
104755
|
+
}
|
|
104756
|
+
}
|
|
104757
|
+
onAfterRender() {
|
|
104758
|
+
const rootMark = this.getRootMark();
|
|
104759
|
+
if (rootMark) {
|
|
104760
|
+
if (!this._xScrollComponent) {
|
|
104761
|
+
this._updateScrollX(rootMark, 0, 0);
|
|
104762
|
+
}
|
|
104763
|
+
if (!this._yScrollComponent) {
|
|
104764
|
+
this._updateScrollY(rootMark, 0, 0);
|
|
104765
|
+
}
|
|
104766
|
+
}
|
|
104767
|
+
}
|
|
104768
|
+
release() {
|
|
104769
|
+
var _a;
|
|
104770
|
+
(_a = this._service.globalInstance.getStage()) === null || _a === void 0 ? void 0 : _a.off('wheel', this.onWheel);
|
|
104771
|
+
}
|
|
104772
|
+
_bindEvent(service) {
|
|
104773
|
+
var _a;
|
|
104774
|
+
(_a = service.globalInstance.getStage()) === null || _a === void 0 ? void 0 : _a.on('wheel', this.onWheel);
|
|
104775
|
+
}
|
|
104776
|
+
getRootMark() {
|
|
104777
|
+
var _a;
|
|
104778
|
+
return (_a = this._service.globalInstance.getStage()) === null || _a === void 0 ? void 0 : _a.find(node => node.name === 'root', true);
|
|
104779
|
+
}
|
|
104780
|
+
_computeFinalScrollY(y) {
|
|
104781
|
+
var _a;
|
|
104782
|
+
if (this._lastScrollY === y) {
|
|
104783
|
+
return null;
|
|
104784
|
+
}
|
|
104785
|
+
this._lastScrollY = y;
|
|
104786
|
+
if (((_a = this._spec.y) === null || _a === void 0 ? void 0 : _a.enable) === false) {
|
|
104787
|
+
return null;
|
|
104788
|
+
}
|
|
104789
|
+
const finalY = Math.max(this._scrollLimit.y.min, Math.min(y, this._scrollLimit.y.max));
|
|
104790
|
+
const percent = Math.abs(finalY / this._scrollLimit.y.size);
|
|
104791
|
+
return {
|
|
104792
|
+
y: finalY,
|
|
104793
|
+
percent
|
|
104794
|
+
};
|
|
104795
|
+
}
|
|
104796
|
+
_computeFinalScrollX(x) {
|
|
104797
|
+
var _a;
|
|
104798
|
+
if (this._lastScrollX === x) {
|
|
104799
|
+
return null;
|
|
104800
|
+
}
|
|
104801
|
+
this._lastScrollX = x;
|
|
104802
|
+
if (((_a = this._spec.x) === null || _a === void 0 ? void 0 : _a.enable) === false) {
|
|
104803
|
+
return null;
|
|
104804
|
+
}
|
|
104805
|
+
const finalX = Math.max(this._scrollLimit.x.min, Math.min(x, this._scrollLimit.x.max));
|
|
104806
|
+
const percent = Math.abs(finalX / this._scrollLimit.x.size);
|
|
104807
|
+
return {
|
|
104808
|
+
x: finalX,
|
|
104809
|
+
percent
|
|
104810
|
+
};
|
|
104811
|
+
}
|
|
104812
|
+
_updateScrollY(rootMark, y, percent) {
|
|
104813
|
+
const yScrollComponent = this._getYScrollComponent();
|
|
104814
|
+
yScrollComponent.setAttribute('range', [percent, percent + this._scrollLimit.y.percent]);
|
|
104815
|
+
rootMark.setAttributes({
|
|
104816
|
+
y: y
|
|
104817
|
+
});
|
|
104818
|
+
}
|
|
104819
|
+
_getYScrollComponent() {
|
|
104820
|
+
var _a, _b, _c, _d, _e;
|
|
104821
|
+
if (!this._yScrollComponent) {
|
|
104822
|
+
const canvasSize = this._service.globalInstance.getChart().getCanvasRect();
|
|
104823
|
+
const viewSize = this._service.globalInstance.getChart().getViewRect();
|
|
104824
|
+
const _f = (_b = (_a = this._spec) === null || _a === void 0 ? void 0 : _a.y) !== null && _b !== void 0 ? _b : {}, rest = __rest$e(_f, ["enable"]);
|
|
104825
|
+
this._yScrollComponent = new ScrollBar$1(Object.assign(Object.assign({}, rest), { zIndex: 9999, x: canvasSize.width - DefaultTheme.size, y: 0, width: DefaultTheme.size, height: canvasSize.height, range: [0, canvasSize.height / viewSize.height], direction: 'vertical', delayTime: (_c = rest === null || rest === void 0 ? void 0 : rest.delayTime) !== null && _c !== void 0 ? _c : 30, realTime: (_d = rest === null || rest === void 0 ? void 0 : rest.realTime) !== null && _d !== void 0 ? _d : true, railStyle: DefaultTheme.railStyle, sliderStyle: DefaultTheme.sliderStyle }));
|
|
104826
|
+
this._yScrollComponent.addEventListener(SCROLLBAR_EVENT, (e) => {
|
|
104827
|
+
var _a;
|
|
104828
|
+
const value = e.detail.value;
|
|
104829
|
+
const { percent, y } = (_a = this._computeFinalScrollY(-value[0] * this._scrollLimit.y.size)) !== null && _a !== void 0 ? _a : {};
|
|
104830
|
+
if (percent !== undefined && y !== undefined) {
|
|
104831
|
+
this._updateScrollY(this.getRootMark(), y, percent);
|
|
104832
|
+
this._event.emit('chartScroll', { y });
|
|
104833
|
+
}
|
|
104834
|
+
});
|
|
104835
|
+
this._yScrollComponent.addEventListener(SCROLLBAR_END_EVENT, (e) => {
|
|
104836
|
+
var _a;
|
|
104837
|
+
const value = e.detail.value;
|
|
104838
|
+
const { percent, y } = (_a = this._computeFinalScrollY(-value[0] * this._scrollLimit.y.size)) !== null && _a !== void 0 ? _a : {};
|
|
104839
|
+
if (percent !== undefined && y !== undefined) {
|
|
104840
|
+
this._updateScrollY(this.getRootMark(), y, percent);
|
|
104841
|
+
this._event.emit('chartScroll', { y });
|
|
104842
|
+
}
|
|
104843
|
+
});
|
|
104844
|
+
(_e = this.getRootMark().parent) === null || _e === void 0 ? void 0 : _e.addChild(this._yScrollComponent);
|
|
104845
|
+
}
|
|
104846
|
+
return this._yScrollComponent;
|
|
104847
|
+
}
|
|
104848
|
+
_updateScrollX(rootMark, x, percent) {
|
|
104849
|
+
const xScrollComponent = this._getXScrollComponent();
|
|
104850
|
+
xScrollComponent.setAttribute('range', [percent, percent + this._scrollLimit.x.percent]);
|
|
104851
|
+
rootMark.setAttributes({
|
|
104852
|
+
x: x
|
|
104853
|
+
});
|
|
104854
|
+
}
|
|
104855
|
+
_getXScrollComponent() {
|
|
104856
|
+
var _a, _b, _c, _d, _e;
|
|
104857
|
+
if (!this._xScrollComponent) {
|
|
104858
|
+
const canvasSize = this._service.globalInstance.getChart().getCanvasRect();
|
|
104859
|
+
const viewSize = this._service.globalInstance.getChart().getViewRect();
|
|
104860
|
+
const _f = (_b = (_a = this._spec) === null || _a === void 0 ? void 0 : _a.x) !== null && _b !== void 0 ? _b : {}, rest = __rest$e(_f, ["enable"]);
|
|
104861
|
+
this._xScrollComponent = new ScrollBar$1(Object.assign(Object.assign({}, rest), { zIndex: 9999, x: 0, y: canvasSize.height - DefaultTheme.size, width: canvasSize.width, height: DefaultTheme.size, range: [0, canvasSize.width / viewSize.width], direction: 'horizontal', delayTime: (_c = rest === null || rest === void 0 ? void 0 : rest.delayTime) !== null && _c !== void 0 ? _c : 30, realTime: (_d = rest === null || rest === void 0 ? void 0 : rest.realTime) !== null && _d !== void 0 ? _d : true, sliderStyle: DefaultTheme.sliderStyle, railStyle: DefaultTheme.railStyle }));
|
|
104862
|
+
this._xScrollComponent.addEventListener(SCROLLBAR_EVENT, (e) => {
|
|
104863
|
+
var _a;
|
|
104864
|
+
const value = e.detail.value;
|
|
104865
|
+
const { percent, x } = (_a = this._computeFinalScrollX(-value[0] * this._scrollLimit.x.size)) !== null && _a !== void 0 ? _a : {};
|
|
104866
|
+
if (percent !== undefined && x !== undefined) {
|
|
104867
|
+
this._updateScrollX(this.getRootMark(), x, percent);
|
|
104868
|
+
this._event.emit('chartScroll', { x });
|
|
104869
|
+
}
|
|
104870
|
+
});
|
|
104871
|
+
this._xScrollComponent.addEventListener(SCROLLBAR_END_EVENT, (e) => {
|
|
104872
|
+
var _a;
|
|
104873
|
+
const value = e.detail.value;
|
|
104874
|
+
const { percent, x } = (_a = this._computeFinalScrollX(-value[0] * this._scrollLimit.x.size)) !== null && _a !== void 0 ? _a : {};
|
|
104875
|
+
if (percent !== undefined && x !== undefined) {
|
|
104876
|
+
this._updateScrollX(this.getRootMark(), x, percent);
|
|
104877
|
+
this._event.emit('chartScroll', { x });
|
|
104878
|
+
}
|
|
104879
|
+
});
|
|
104880
|
+
(_e = this.getRootMark().parent) === null || _e === void 0 ? void 0 : _e.addChild(this._xScrollComponent);
|
|
104881
|
+
}
|
|
104882
|
+
return this._xScrollComponent;
|
|
104883
|
+
}
|
|
104884
|
+
scrollTo({ x, y }) {
|
|
104885
|
+
var _a, _b;
|
|
104886
|
+
const rootMark = this.getRootMark();
|
|
104887
|
+
if (rootMark) {
|
|
104888
|
+
if (x !== undefined) {
|
|
104889
|
+
const { x: finalX, percent } = (_a = this._computeFinalScrollX(x)) !== null && _a !== void 0 ? _a : {};
|
|
104890
|
+
if (finalX !== undefined && percent !== undefined) {
|
|
104891
|
+
this._updateScrollX(rootMark, finalX, percent);
|
|
104892
|
+
}
|
|
104893
|
+
}
|
|
104894
|
+
if (y !== undefined) {
|
|
104895
|
+
const { y: finalY, percent } = (_b = this._computeFinalScrollY(y)) !== null && _b !== void 0 ? _b : {};
|
|
104896
|
+
if (finalY !== undefined && percent !== undefined) {
|
|
104897
|
+
this._updateScrollY(rootMark, finalY, percent);
|
|
104898
|
+
}
|
|
104899
|
+
}
|
|
104900
|
+
}
|
|
104901
|
+
}
|
|
104902
|
+
}
|
|
104903
|
+
ScrollPlugin.pluginType = 'chart';
|
|
104904
|
+
ScrollPlugin.type = 'chartScroll';
|
|
104905
|
+
const registerScrollPlugin = (theme) => {
|
|
104906
|
+
var _a, _b, _c, _d, _e;
|
|
104907
|
+
DefaultTheme.size = (_a = theme === null || theme === void 0 ? void 0 : theme.size) !== null && _a !== void 0 ? _a : DefaultTheme.size;
|
|
104908
|
+
DefaultTheme.railStyle = merge$1({}, (_b = DefaultTheme.railStyle) !== null && _b !== void 0 ? _b : {}, (_c = theme === null || theme === void 0 ? void 0 : theme.railStyle) !== null && _c !== void 0 ? _c : {});
|
|
104909
|
+
DefaultTheme.sliderStyle = merge$1({}, (_d = DefaultTheme.sliderStyle) !== null && _d !== void 0 ? _d : {}, (_e = theme === null || theme === void 0 ? void 0 : theme.sliderStyle) !== null && _e !== void 0 ? _e : {});
|
|
104910
|
+
registerChartPlugin(ScrollPlugin);
|
|
104911
|
+
};
|
|
104912
|
+
|
|
104913
|
+
export { Arc3dMark, ArcMark, AreaChart, AreaMark, AreaSeries, AttributeLevel, AxisSyncPlugin, Bar3dChart, Bar3dSeries, BarChart, BarSeries, BaseChart, BaseChartSpecTransformer, BaseMark, BaseSeries, BoxPlotChart, BoxPlotSeries, Brush, CanvasTooltipHandler, CartesianAxis, CartesianBandAxis, CartesianChartSpecTransformer, CartesianCrossHair, CartesianLinearAxis, CartesianLogAxis, CartesianMarkArea, CartesianMarkLine, CartesianMarkPoint, CartesianSeries, CartesianSymlogAxis, CartesianTimeAxis, CirclePackingChart, CirclePackingSeries, CircularProgressChart, CircularProgressSeries, CommonChart, CommonChartSpecTransformer, ComponentMark, ComposedEventMapper, ContinuousLegend, CorrelationChart, CorrelationSeries, CustomMark, DEFAULT_CHART_HEIGHT, DEFAULT_CHART_WIDTH, DEFAULT_DATA_INDEX, DEFAULT_DATA_KEY, DEFAULT_DATA_SERIES_FIELD, DEFAULT_MEASURE_CANVAS_ID, DEFAULT_SERIES_STYLE_NAME, DataZoom, DimensionClickEvent, DimensionEventEnum, DimensionHoverEvent, DiscreteLegend, DomTooltipHandler, DotSeries, Event$1 as Event, Factory$1 as Factory, FormatterPlugin, Funnel3dChart, Funnel3dSeries, FunnelChart, FunnelSeries, GaugeChart, GaugePointerSeries, GaugeSeries, GeoCoordinate, GeoMarkPoint, GridLayout, GroupMark, HeatmapChart, HeatmapSeries, Histogram3dChart, HistogramChart, ImageMark, Indicator, Label, Layout$1 as Layout, Layout3d, LineChart, LineMark, LineSeries, LinearProgressChart, LinearProgressSeries, LinkPathMark, LinkSeries, LiquidChart, LiquidSeries, MOSAIC_CAT_END_PERCENT, MOSAIC_CAT_START_PERCENT, MOSAIC_VALUE_END_PERCENT, MOSAIC_VALUE_START_PERCENT, ManualTicker, MapChart, MapLabelComponent, MapSeries, MediaQuery, MosaicChart, MosaicSeries, PREFIX, PathMark, PictogramChart, PictogramSeries, Pie3dChart, Pie3dSeries, PieChart, PieSeries, Player, PolarAxis, PolarBandAxis, PolarCrossHair, PolarLinearAxis, PolarMarkArea, PolarMarkLine, PolarMarkPoint, PolarSeries, PolygonMark, ProgressLikeSeries, Pyramid3dMark, RadarChart, RadarSeries, RangeAreaChart, RangeAreaSeries, RangeColumn3dChart, RangeColumn3dSeries, RangeColumnChart, RangeColumnSeries, Rect3dMark, RectMark, RenderModeEnum, RippleMark, RoseChart, RoseLikeSeries, RoseSeries, RuleMark, SEGMENT_FIELD_END, SEGMENT_FIELD_START, STACK_FIELD_END, STACK_FIELD_END_OffsetSilhouette, STACK_FIELD_END_PERCENT, STACK_FIELD_KEY, STACK_FIELD_START, STACK_FIELD_START_OffsetSilhouette, STACK_FIELD_START_PERCENT, STACK_FIELD_TOTAL, STACK_FIELD_TOTAL_BOTTOM, STACK_FIELD_TOTAL_PERCENT, STACK_FIELD_TOTAL_TOP, STATE_VALUE_ENUM, STATE_VALUE_ENUM_REVERSE, SankeyChart, SankeyChartSpecTransformer, SankeySeries, ScatterChart, ScatterSeries, ScrollBar, ScrollPlugin, SequenceChart, SeriesMarkNameEnum, SeriesTypeEnum, SeriesTypeForThemeEnum, StreamLight, SunburstChart, SunburstSeries, SymbolMark, TextMark, ThemeManager$1 as ThemeManager, Title, Tooltip, TooltipResult, TotalLabel, TreemapChart, TreemapSeries, VChart, VennChart, VennSeries, WaterfallChart, WaterfallSeries, WordCloud3dChart, WordCloud3dSeries, WordCloudChart, WordCloudSeries, alternatingWave, builtinThemes, centerToCorner, columnCenterToEdge, columnEdgeToCenter, columnLeftToRight, columnRightToLeft, computeActualDataScheme, cornerToCenter, createArc, createArea, createGroup, createLine, createRect, createRichText, createSymbol, createText, darkTheme$1 as darkTheme, dataScheme, VChart as default, defaultThemeName, diagonalCenterToEdge, diagonalTopLeftToBottomRight, functionTransform, getActualColor, getCartesianDimensionInfo, getColorSchemeBySeries, getDataScheme, getFieldAlias, getMergedTheme, getPolarDimensionInfo, getRegionStackGroup, getTheme, hasThemeMerged, isColorKey, isProgressiveDataColorScheme, isTokenKey, lightTheme, mergeFields, particleEffect, pulseWave, queryColorFromColorScheme, queryToken, randomOpacity, register3DPlugin, registerAllEnv, registerAllMarks, registerAnimate, registerArc3dMark, registerArcMark, registerAreaChart, registerAreaMark, registerAreaSeries, registerBar3dChart, registerBar3dSeries, registerBarChart, registerBarSeries, registerBoxplotChart, registerBoxplotSeries, registerBrowserEnv, registerBrush, registerCanvasTooltipHandler, registerCartesianBandAxis, registerCartesianCrossHair, registerCartesianLinearAxis, registerCartesianLogAxis, registerCartesianSymlogAxis, registerCartesianTimeAxis, registerChartPlugin, registerCirclePackingChart, registerCirclePackingSeries, registerCircularProgressChart, registerCircularProgressSeries, registerCommonChart, registerComponentMark, registerContinuousLegend, registerCorrelationChart, registerCustomMark, registerDataSetInstanceParser, registerDataSetInstanceTransform, registerDataZoom, registerDiscreteLegend, registerDomTooltipHandler, registerDotSeries, registerDragPlugin, registerFormatPlugin, registerFunnel3dChart, registerFunnel3dSeries, registerFunnelChart, registerFunnelSeries, registerGaugeChart, registerGaugePointerSeries, registerGaugeSeries, registerGeoCoordinate, registerGeoMarkPoint, registerGesturePlugin, registerGridLayout, registerGroupMark, registerHarmonyEnv, registerHeatmapChart, registerHeatmapSeries, registerHistogram3dChart, registerHistogramChart, registerHtmlAttributePlugin, registerImageMark, registerIndicator, registerLabel, registerLarkEnv, registerLayout3d, registerLineChart, registerLineMark, registerLineSeries, registerLinearProgressChart, registerLinearProgressSeries, registerLinkPathMark, registerLinkSeries, registerLiquidChart, registerLiquidSeries, registerLynxEnv, registerMapChart, registerMapLabel, registerMapSeries, registerMarkArea, registerMarkLine, registerMarkPoint, registerMediaQuery, registerMorph, registerMosaicChart, registerMosaicSeries, registerNodeEnv, registerPathMark, registerPictogramChart, registerPictogramSeries, registerPie3dChart, registerPie3dSeries, registerPieChart, registerPieSeries, registerPlayer, registerPolarBandAxis, registerPolarCrossHair, registerPolarLinearAxis, registerPolarMarkArea, registerPolarMarkLine, registerPolarMarkPoint, registerPolygonMark, registerPoptip, registerPyramid3dMark, registerRadarChart, registerRadarSeries, registerRangeAreaChart, registerRangeAreaSeries, registerRangeColumn3dChart, registerRangeColumn3dSeries, registerRangeColumnChart, registerRangeColumnSeries, registerReactAttributePlugin, registerRect3dMark, registerRectMark, registerRippleMark, registerRoseChart, registerRoseSeries, registerRuleMark, registerSankeyChart, registerSankeySeries, registerScatterChart, registerScatterSeries, registerScrollBar, registerScrollPlugin, registerSequenceChart, registerSunBurstSeries, registerSunburstChart, registerSymbolMark, registerTTEnv, registerTaroEnv, registerTextMark, registerTheme, registerTitle, registerTooltip, registerTotalLabel, registerTreemapChart, registerTreemapSeries, registerVennChart, registerVennSeries, registerWXEnv, registerWaterfallChart, registerWaterfallSeries, registerWordCloud3dChart, registerWordCloud3dSeries, registerWordCloudChart, registerWordCloudSeries, registerWordCloudShapeChart, removeTheme, rippleEffect, rotationScan, rowBottomToTop, rowCenterToEdge, rowEdgeToCenter, rowTopToBottom, snakeWave, sortStackValueGroup, specTransform, spiralEffect, stack, stackGroup, stackMosaic, stackMosaicTotal, stackOffsetSilhouette, stackTotal, themeExist, themes, token, transformColorSchemeToStandardStruct, version, vglobal };
|