@pyreon/charts 0.6.0 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/analysis/index.js.html +1 -1
- package/lib/analysis/manual.js.html +1 -1
- package/lib/index.js +7 -7
- package/lib/index.js.map +1 -1
- package/lib/manual.js +7 -7
- package/lib/manual.js.map +1 -1
- package/lib/types/index.d.ts +2204 -238
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/manual.d.ts +2217 -258
- package/lib/types/manual.d.ts.map +1 -1
- package/package.json +3 -9
- package/src/chart-component.tsx +2 -2
- package/src/use-chart.ts +6 -4
- package/lib/types/charts.d.ts +0 -7968
- package/lib/types/charts.d.ts.map +0 -1
- package/lib/types/components.d.ts +0 -4074
- package/lib/types/components.d.ts.map +0 -1
- package/lib/types/core.d.ts +0 -98
- package/lib/types/core.d.ts.map +0 -1
- package/lib/types/createSeriesData.d.ts +0 -325
- package/lib/types/createSeriesData.d.ts.map +0 -1
- package/lib/types/customGraphicKeyframeAnimation.d.ts +0 -3531
- package/lib/types/customGraphicKeyframeAnimation.d.ts.map +0 -1
- package/lib/types/graphic.d.ts +0 -4043
- package/lib/types/graphic.d.ts.map +0 -1
- package/lib/types/index2.d.ts +0 -2221
- package/lib/types/index2.d.ts.map +0 -1
- package/lib/types/manual2.d.ts +0 -2238
- package/lib/types/manual2.d.ts.map +0 -1
- package/lib/types/parseGeoJson.d.ts +0 -8695
- package/lib/types/parseGeoJson.d.ts.map +0 -1
- package/lib/types/renderers.d.ts +0 -995
- package/lib/types/renderers.d.ts.map +0 -1
package/lib/types/renderers.d.ts
DELETED
|
@@ -1,995 +0,0 @@
|
|
|
1
|
-
import { $ as hasShadow, A as ZRImage, An as isArray, Fn as isImagePatternObject, G as TEXT_ALIGN_TO_ANCHOR, H as devicePixelRatio, Hn as logError, In as isNumber, J as getIdURL, K as adjustTextY, Ln as isObject, M as DEFAULT_PATH_STYLE, N as Path, Nn as isFunction, On as indexOf, Ot as copyTransform, Pn as isGradientObject, Q as getShadowKey, Qt as BoundingRect, R as PathProxy, Rn as isString, Sn as each, T as parseFontSize, Tn as filter, U as Eventful, Un as map, Vn as keys, Wn as merge, X as getPathPrecision, Xt as getLineHeight, Y as getMatrixStr, Z as getSRTTransformString, Zn as retrieve2, a as getCanvasGradient, ar as platformApi, at as isRadialGradient, dn as createOrUpdateImage, et as isAroundZero, f as requestAnimationFrame, ft as liftColor, gn as clone, i as getLineDash, ir as DEFAULT_FONT_FAMILY, it as isPattern, j as TSpan, mn as assert, n as brushSingle, nt as isImagePattern, o as getSize, ot as normalizeColor, pn as env, q as encodeBase64, qn as noop, r as createCanvasPattern, rr as DEFAULT_FONT, rt as isLinearGradient, s as getElementSSRData, sr as __extends, st as round4, t as brush$1, tt as isGradient, v as encodeHTML, vt as createCubicEasingFunc, w as hasSeparateFont, wn as extend, x as CompoundPath, xn as disableUserSelect } from "./graphic.js";
|
|
2
|
-
|
|
3
|
-
//#region ../../node_modules/.bun/zrender@6.0.0/node_modules/zrender/lib/svg/SVGPathRebuilder.js
|
|
4
|
-
|
|
5
|
-
function pathHasFill(style) {
|
|
6
|
-
var fill = style.fill;
|
|
7
|
-
return fill != null && fill !== NONE;
|
|
8
|
-
}
|
|
9
|
-
function pathHasStroke(style) {
|
|
10
|
-
var stroke = style.stroke;
|
|
11
|
-
return stroke != null && stroke !== NONE;
|
|
12
|
-
}
|
|
13
|
-
function mapStyleToAttrs(updateAttr, style, el, forceUpdate) {
|
|
14
|
-
var opacity = style.opacity == null ? 1 : style.opacity;
|
|
15
|
-
if (el instanceof ZRImage) {
|
|
16
|
-
updateAttr("opacity", opacity);
|
|
17
|
-
return;
|
|
18
|
-
}
|
|
19
|
-
if (pathHasFill(style)) {
|
|
20
|
-
var fill = normalizeColor(style.fill);
|
|
21
|
-
updateAttr("fill", fill.color);
|
|
22
|
-
var fillOpacity = style.fillOpacity != null ? style.fillOpacity * fill.opacity * opacity : fill.opacity * opacity;
|
|
23
|
-
if (forceUpdate || fillOpacity < 1) updateAttr("fill-opacity", fillOpacity);
|
|
24
|
-
} else updateAttr("fill", NONE);
|
|
25
|
-
if (pathHasStroke(style)) {
|
|
26
|
-
var stroke = normalizeColor(style.stroke);
|
|
27
|
-
updateAttr("stroke", stroke.color);
|
|
28
|
-
var strokeScale = style.strokeNoScale ? el.getLineScale() : 1;
|
|
29
|
-
var strokeWidth = strokeScale ? (style.lineWidth || 0) / strokeScale : 0;
|
|
30
|
-
var strokeOpacity = style.strokeOpacity != null ? style.strokeOpacity * stroke.opacity * opacity : stroke.opacity * opacity;
|
|
31
|
-
var strokeFirst = style.strokeFirst;
|
|
32
|
-
if (forceUpdate || strokeWidth !== 1) updateAttr("stroke-width", strokeWidth);
|
|
33
|
-
if (forceUpdate || strokeFirst) updateAttr("paint-order", strokeFirst ? "stroke" : "fill");
|
|
34
|
-
if (forceUpdate || strokeOpacity < 1) updateAttr("stroke-opacity", strokeOpacity);
|
|
35
|
-
if (style.lineDash) {
|
|
36
|
-
var _a = getLineDash(el),
|
|
37
|
-
lineDash = _a[0],
|
|
38
|
-
lineDashOffset = _a[1];
|
|
39
|
-
if (lineDash) {
|
|
40
|
-
lineDashOffset = mathRound(lineDashOffset || 0);
|
|
41
|
-
updateAttr("stroke-dasharray", lineDash.join(","));
|
|
42
|
-
if (lineDashOffset || forceUpdate) updateAttr("stroke-dashoffset", lineDashOffset);
|
|
43
|
-
}
|
|
44
|
-
} else if (forceUpdate) updateAttr("stroke-dasharray", NONE);
|
|
45
|
-
for (var i = 0; i < strokeProps.length; i++) {
|
|
46
|
-
var propName = strokeProps[i];
|
|
47
|
-
if (forceUpdate || style[propName] !== DEFAULT_PATH_STYLE[propName]) {
|
|
48
|
-
var val = style[propName] || DEFAULT_PATH_STYLE[propName];
|
|
49
|
-
val && updateAttr(svgStrokeProps[i], val);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
} else if (forceUpdate) updateAttr("stroke", NONE);
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
//#endregion
|
|
56
|
-
//#region ../../node_modules/.bun/zrender@6.0.0/node_modules/zrender/lib/svg/core.js
|
|
57
|
-
|
|
58
|
-
function createElement(name) {
|
|
59
|
-
return document.createElementNS(SVGNS, name);
|
|
60
|
-
}
|
|
61
|
-
function createVNode(tag, key, attrs, children, text) {
|
|
62
|
-
return {
|
|
63
|
-
tag,
|
|
64
|
-
attrs: attrs || {},
|
|
65
|
-
children,
|
|
66
|
-
text,
|
|
67
|
-
key
|
|
68
|
-
};
|
|
69
|
-
}
|
|
70
|
-
function createElementOpen(name, attrs) {
|
|
71
|
-
var attrsStr = [];
|
|
72
|
-
if (attrs) for (var key in attrs) {
|
|
73
|
-
var val = attrs[key];
|
|
74
|
-
var part = key;
|
|
75
|
-
if (val === false) continue;else if (val !== true && val != null) part += "=\"" + val + "\"";
|
|
76
|
-
attrsStr.push(part);
|
|
77
|
-
}
|
|
78
|
-
return "<" + name + " " + attrsStr.join(" ") + ">";
|
|
79
|
-
}
|
|
80
|
-
function createElementClose(name) {
|
|
81
|
-
return "</" + name + ">";
|
|
82
|
-
}
|
|
83
|
-
function vNodeToString(el, opts) {
|
|
84
|
-
opts = opts || {};
|
|
85
|
-
var S = opts.newline ? "\n" : "";
|
|
86
|
-
function convertElToString(el) {
|
|
87
|
-
var children = el.children,
|
|
88
|
-
tag = el.tag,
|
|
89
|
-
attrs = el.attrs,
|
|
90
|
-
text = el.text;
|
|
91
|
-
return createElementOpen(tag, attrs) + (tag !== "style" ? encodeHTML(text) : text || "") + (children ? "" + S + map(children, function (child) {
|
|
92
|
-
return convertElToString(child);
|
|
93
|
-
}).join(S) + S : "") + createElementClose(tag);
|
|
94
|
-
}
|
|
95
|
-
return convertElToString(el);
|
|
96
|
-
}
|
|
97
|
-
function getCssString(selectorNodes, animationNodes, opts) {
|
|
98
|
-
opts = opts || {};
|
|
99
|
-
var S = opts.newline ? "\n" : "";
|
|
100
|
-
var bracketBegin = " {" + S;
|
|
101
|
-
var bracketEnd = S + "}";
|
|
102
|
-
var selectors = map(keys(selectorNodes), function (className) {
|
|
103
|
-
return className + bracketBegin + map(keys(selectorNodes[className]), function (attrName) {
|
|
104
|
-
return attrName + ":" + selectorNodes[className][attrName] + ";";
|
|
105
|
-
}).join(S) + bracketEnd;
|
|
106
|
-
}).join(S);
|
|
107
|
-
var animations = map(keys(animationNodes), function (animationName) {
|
|
108
|
-
return "@keyframes " + animationName + bracketBegin + map(keys(animationNodes[animationName]), function (percent) {
|
|
109
|
-
return percent + bracketBegin + map(keys(animationNodes[animationName][percent]), function (attrName) {
|
|
110
|
-
var val = animationNodes[animationName][percent][attrName];
|
|
111
|
-
if (attrName === "d") val = "path(\"" + val + "\")";
|
|
112
|
-
return attrName + ":" + val + ";";
|
|
113
|
-
}).join(S) + bracketEnd;
|
|
114
|
-
}).join(S) + bracketEnd;
|
|
115
|
-
}).join(S);
|
|
116
|
-
if (!selectors && !animations) return "";
|
|
117
|
-
return ["<![CDATA[", selectors, animations, "]]>"].join(S);
|
|
118
|
-
}
|
|
119
|
-
function createBrushScope(zrId) {
|
|
120
|
-
return {
|
|
121
|
-
zrId,
|
|
122
|
-
shadowCache: {},
|
|
123
|
-
patternCache: {},
|
|
124
|
-
gradientCache: {},
|
|
125
|
-
clipPathCache: {},
|
|
126
|
-
defs: {},
|
|
127
|
-
cssNodes: {},
|
|
128
|
-
cssAnims: {},
|
|
129
|
-
cssStyleCache: {},
|
|
130
|
-
cssAnimIdx: 0,
|
|
131
|
-
shadowIdx: 0,
|
|
132
|
-
gradientIdx: 0,
|
|
133
|
-
patternIdx: 0,
|
|
134
|
-
clipPathIdx: 0
|
|
135
|
-
};
|
|
136
|
-
}
|
|
137
|
-
function createSVGVNode(width, height, children, useViewBox) {
|
|
138
|
-
return createVNode("svg", "root", {
|
|
139
|
-
"width": width,
|
|
140
|
-
"height": height,
|
|
141
|
-
"xmlns": SVGNS,
|
|
142
|
-
"xmlns:xlink": XLINKNS,
|
|
143
|
-
"version": "1.1",
|
|
144
|
-
"baseProfile": "full",
|
|
145
|
-
"viewBox": useViewBox ? "0 0 " + width + " " + height : false
|
|
146
|
-
}, children);
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
//#endregion
|
|
150
|
-
//#region ../../node_modules/.bun/zrender@6.0.0/node_modules/zrender/lib/svg/cssClassId.js
|
|
151
|
-
|
|
152
|
-
function getClassId() {
|
|
153
|
-
return cssClassIdx++;
|
|
154
|
-
}
|
|
155
|
-
|
|
156
|
-
//#endregion
|
|
157
|
-
//#region ../../node_modules/.bun/zrender@6.0.0/node_modules/zrender/lib/svg/cssAnimation.js
|
|
158
|
-
|
|
159
|
-
function buildPathString(el, kfShape, path) {
|
|
160
|
-
var shape = extend({}, el.shape);
|
|
161
|
-
extend(shape, kfShape);
|
|
162
|
-
el.buildPath(path, shape);
|
|
163
|
-
var svgPathBuilder = new SVGPathRebuilder();
|
|
164
|
-
svgPathBuilder.reset(getPathPrecision(el));
|
|
165
|
-
path.rebuildPath(svgPathBuilder, 1);
|
|
166
|
-
svgPathBuilder.generateStr();
|
|
167
|
-
return svgPathBuilder.getStr();
|
|
168
|
-
}
|
|
169
|
-
function setTransformOrigin(target, transform) {
|
|
170
|
-
var originX = transform.originX,
|
|
171
|
-
originY = transform.originY;
|
|
172
|
-
if (originX || originY) target[transformOriginKey] = originX + "px " + originY + "px";
|
|
173
|
-
}
|
|
174
|
-
function addAnimation(cssAnim, scope) {
|
|
175
|
-
var animationName = scope.zrId + "-ani-" + scope.cssAnimIdx++;
|
|
176
|
-
scope.cssAnims[animationName] = cssAnim;
|
|
177
|
-
return animationName;
|
|
178
|
-
}
|
|
179
|
-
function createCompoundPathCSSAnimation(el, attrs, scope) {
|
|
180
|
-
var paths = el.shape.paths;
|
|
181
|
-
var composedAnim = {};
|
|
182
|
-
var cssAnimationCfg;
|
|
183
|
-
var cssAnimationName;
|
|
184
|
-
each(paths, function (path) {
|
|
185
|
-
var subScope = createBrushScope(scope.zrId);
|
|
186
|
-
subScope.animation = true;
|
|
187
|
-
createCSSAnimation(path, {}, subScope, true);
|
|
188
|
-
var cssAnims = subScope.cssAnims;
|
|
189
|
-
var cssNodes = subScope.cssNodes;
|
|
190
|
-
var animNames = keys(cssAnims);
|
|
191
|
-
var len = animNames.length;
|
|
192
|
-
if (!len) return;
|
|
193
|
-
cssAnimationName = animNames[len - 1];
|
|
194
|
-
var lastAnim = cssAnims[cssAnimationName];
|
|
195
|
-
for (var percent in lastAnim) {
|
|
196
|
-
var kf = lastAnim[percent];
|
|
197
|
-
composedAnim[percent] = composedAnim[percent] || {
|
|
198
|
-
d: ""
|
|
199
|
-
};
|
|
200
|
-
composedAnim[percent].d += kf.d || "";
|
|
201
|
-
}
|
|
202
|
-
for (var className in cssNodes) {
|
|
203
|
-
var val = cssNodes[className].animation;
|
|
204
|
-
if (val.indexOf(cssAnimationName) >= 0) cssAnimationCfg = val;
|
|
205
|
-
}
|
|
206
|
-
});
|
|
207
|
-
if (!cssAnimationCfg) return;
|
|
208
|
-
attrs.d = false;
|
|
209
|
-
var animationName = addAnimation(composedAnim, scope);
|
|
210
|
-
return cssAnimationCfg.replace(cssAnimationName, animationName);
|
|
211
|
-
}
|
|
212
|
-
function getEasingFunc(easing) {
|
|
213
|
-
return isString(easing) ? EASING_MAP[easing] ? "cubic-bezier(" + EASING_MAP[easing] + ")" : createCubicEasingFunc(easing) ? easing : "" : "";
|
|
214
|
-
}
|
|
215
|
-
function createCSSAnimation(el, attrs, scope, onlyShape) {
|
|
216
|
-
var animators = el.animators;
|
|
217
|
-
var len = animators.length;
|
|
218
|
-
var cssAnimations = [];
|
|
219
|
-
if (el instanceof CompoundPath) {
|
|
220
|
-
var animationCfg = createCompoundPathCSSAnimation(el, attrs, scope);
|
|
221
|
-
if (animationCfg) cssAnimations.push(animationCfg);else if (!len) return;
|
|
222
|
-
} else if (!len) return;
|
|
223
|
-
var groupAnimators = {};
|
|
224
|
-
for (var i = 0; i < len; i++) {
|
|
225
|
-
var animator = animators[i];
|
|
226
|
-
var cfgArr = [animator.getMaxTime() / 1e3 + "s"];
|
|
227
|
-
var easing = getEasingFunc(animator.getClip().easing);
|
|
228
|
-
var delay = animator.getDelay();
|
|
229
|
-
if (easing) cfgArr.push(easing);else cfgArr.push("linear");
|
|
230
|
-
if (delay) cfgArr.push(delay / 1e3 + "s");
|
|
231
|
-
if (animator.getLoop()) cfgArr.push("infinite");
|
|
232
|
-
var cfg = cfgArr.join(" ");
|
|
233
|
-
groupAnimators[cfg] = groupAnimators[cfg] || [cfg, []];
|
|
234
|
-
groupAnimators[cfg][1].push(animator);
|
|
235
|
-
}
|
|
236
|
-
function createSingleCSSAnimation(groupAnimator) {
|
|
237
|
-
var animators = groupAnimator[1];
|
|
238
|
-
var len = animators.length;
|
|
239
|
-
var transformKfs = {};
|
|
240
|
-
var shapeKfs = {};
|
|
241
|
-
var finalKfs = {};
|
|
242
|
-
var animationTimingFunctionAttrName = "animation-timing-function";
|
|
243
|
-
function saveAnimatorTrackToCssKfs(animator, cssKfs, toCssAttrName) {
|
|
244
|
-
var tracks = animator.getTracks();
|
|
245
|
-
var maxTime = animator.getMaxTime();
|
|
246
|
-
for (var k = 0; k < tracks.length; k++) {
|
|
247
|
-
var track = tracks[k];
|
|
248
|
-
if (track.needsAnimate()) {
|
|
249
|
-
var kfs = track.keyframes;
|
|
250
|
-
var attrName = track.propName;
|
|
251
|
-
toCssAttrName && (attrName = toCssAttrName(attrName));
|
|
252
|
-
if (attrName) for (var i = 0; i < kfs.length; i++) {
|
|
253
|
-
var kf = kfs[i];
|
|
254
|
-
var percent = Math.round(kf.time / maxTime * 100) + "%";
|
|
255
|
-
var kfEasing = getEasingFunc(kf.easing);
|
|
256
|
-
var rawValue = kf.rawValue;
|
|
257
|
-
if (isString(rawValue) || isNumber(rawValue)) {
|
|
258
|
-
cssKfs[percent] = cssKfs[percent] || {};
|
|
259
|
-
cssKfs[percent][attrName] = kf.rawValue;
|
|
260
|
-
if (kfEasing) cssKfs[percent][animationTimingFunctionAttrName] = kfEasing;
|
|
261
|
-
}
|
|
262
|
-
}
|
|
263
|
-
}
|
|
264
|
-
}
|
|
265
|
-
}
|
|
266
|
-
for (var i = 0; i < len; i++) {
|
|
267
|
-
var animator = animators[i];
|
|
268
|
-
var targetProp = animator.targetName;
|
|
269
|
-
if (!targetProp) !onlyShape && saveAnimatorTrackToCssKfs(animator, transformKfs);else if (targetProp === "shape") saveAnimatorTrackToCssKfs(animator, shapeKfs);
|
|
270
|
-
}
|
|
271
|
-
for (var percent in transformKfs) {
|
|
272
|
-
var transform = {};
|
|
273
|
-
copyTransform(transform, el);
|
|
274
|
-
extend(transform, transformKfs[percent]);
|
|
275
|
-
var str = getSRTTransformString(transform);
|
|
276
|
-
var timingFunction = transformKfs[percent][animationTimingFunctionAttrName];
|
|
277
|
-
finalKfs[percent] = str ? {
|
|
278
|
-
transform: str
|
|
279
|
-
} : {};
|
|
280
|
-
setTransformOrigin(finalKfs[percent], transform);
|
|
281
|
-
if (timingFunction) finalKfs[percent][animationTimingFunctionAttrName] = timingFunction;
|
|
282
|
-
}
|
|
283
|
-
var path;
|
|
284
|
-
var canAnimateShape = true;
|
|
285
|
-
for (var percent in shapeKfs) {
|
|
286
|
-
finalKfs[percent] = finalKfs[percent] || {};
|
|
287
|
-
var isFirst = !path;
|
|
288
|
-
var timingFunction = shapeKfs[percent][animationTimingFunctionAttrName];
|
|
289
|
-
if (isFirst) path = new PathProxy();
|
|
290
|
-
var len_1 = path.len();
|
|
291
|
-
path.reset();
|
|
292
|
-
finalKfs[percent].d = buildPathString(el, shapeKfs[percent], path);
|
|
293
|
-
var newLen = path.len();
|
|
294
|
-
if (!isFirst && len_1 !== newLen) {
|
|
295
|
-
canAnimateShape = false;
|
|
296
|
-
break;
|
|
297
|
-
}
|
|
298
|
-
if (timingFunction) finalKfs[percent][animationTimingFunctionAttrName] = timingFunction;
|
|
299
|
-
}
|
|
300
|
-
if (!canAnimateShape) for (var percent in finalKfs) delete finalKfs[percent].d;
|
|
301
|
-
if (!onlyShape) for (var i = 0; i < len; i++) {
|
|
302
|
-
var animator = animators[i];
|
|
303
|
-
var targetProp = animator.targetName;
|
|
304
|
-
if (targetProp === "style") saveAnimatorTrackToCssKfs(animator, finalKfs, function (propName) {
|
|
305
|
-
return ANIMATE_STYLE_MAP[propName];
|
|
306
|
-
});
|
|
307
|
-
}
|
|
308
|
-
var percents = keys(finalKfs);
|
|
309
|
-
var allTransformOriginSame = true;
|
|
310
|
-
var transformOrigin;
|
|
311
|
-
for (var i = 1; i < percents.length; i++) {
|
|
312
|
-
var p0 = percents[i - 1];
|
|
313
|
-
var p1 = percents[i];
|
|
314
|
-
if (finalKfs[p0][transformOriginKey] !== finalKfs[p1][transformOriginKey]) {
|
|
315
|
-
allTransformOriginSame = false;
|
|
316
|
-
break;
|
|
317
|
-
}
|
|
318
|
-
transformOrigin = finalKfs[p0][transformOriginKey];
|
|
319
|
-
}
|
|
320
|
-
if (allTransformOriginSame && transformOrigin) {
|
|
321
|
-
for (var percent in finalKfs) if (finalKfs[percent][transformOriginKey]) delete finalKfs[percent][transformOriginKey];
|
|
322
|
-
attrs[transformOriginKey] = transformOrigin;
|
|
323
|
-
}
|
|
324
|
-
if (filter(percents, function (percent) {
|
|
325
|
-
return keys(finalKfs[percent]).length > 0;
|
|
326
|
-
}).length) return addAnimation(finalKfs, scope) + " " + groupAnimator[0] + " both";
|
|
327
|
-
}
|
|
328
|
-
for (var key in groupAnimators) {
|
|
329
|
-
var animationCfg = createSingleCSSAnimation(groupAnimators[key]);
|
|
330
|
-
if (animationCfg) cssAnimations.push(animationCfg);
|
|
331
|
-
}
|
|
332
|
-
if (cssAnimations.length) {
|
|
333
|
-
var className = scope.zrId + "-cls-" + getClassId();
|
|
334
|
-
scope.cssNodes["." + className] = {
|
|
335
|
-
animation: cssAnimations.join(",")
|
|
336
|
-
};
|
|
337
|
-
attrs["class"] = className;
|
|
338
|
-
}
|
|
339
|
-
}
|
|
340
|
-
|
|
341
|
-
//#endregion
|
|
342
|
-
//#region ../../node_modules/.bun/zrender@6.0.0/node_modules/zrender/lib/svg/cssEmphasis.js
|
|
343
|
-
function createCSSEmphasis(el, attrs, scope) {
|
|
344
|
-
if (!el.ignore) if (el.isSilent()) {
|
|
345
|
-
var style = {
|
|
346
|
-
"pointer-events": "none"
|
|
347
|
-
};
|
|
348
|
-
setClassAttribute(style, attrs, scope, true);
|
|
349
|
-
} else {
|
|
350
|
-
var emphasisStyle = el.states.emphasis && el.states.emphasis.style ? el.states.emphasis.style : {};
|
|
351
|
-
var fill = emphasisStyle.fill;
|
|
352
|
-
if (!fill) {
|
|
353
|
-
var normalFill = el.style && el.style.fill;
|
|
354
|
-
var selectFill = el.states.select && el.states.select.style && el.states.select.style.fill;
|
|
355
|
-
var fromFill = el.currentStates.indexOf("select") >= 0 ? selectFill || normalFill : normalFill;
|
|
356
|
-
if (fromFill) fill = liftColor(fromFill);
|
|
357
|
-
}
|
|
358
|
-
var lineWidth = emphasisStyle.lineWidth;
|
|
359
|
-
if (lineWidth) {
|
|
360
|
-
var scaleX = !emphasisStyle.strokeNoScale && el.transform ? el.transform[0] : 1;
|
|
361
|
-
lineWidth = lineWidth / scaleX;
|
|
362
|
-
}
|
|
363
|
-
var style = {
|
|
364
|
-
cursor: "pointer"
|
|
365
|
-
};
|
|
366
|
-
if (fill) style.fill = fill;
|
|
367
|
-
if (emphasisStyle.stroke) style.stroke = emphasisStyle.stroke;
|
|
368
|
-
if (lineWidth) style["stroke-width"] = lineWidth;
|
|
369
|
-
setClassAttribute(style, attrs, scope, true);
|
|
370
|
-
}
|
|
371
|
-
}
|
|
372
|
-
function setClassAttribute(style, attrs, scope, withHover) {
|
|
373
|
-
var styleKey = JSON.stringify(style);
|
|
374
|
-
var className = scope.cssStyleCache[styleKey];
|
|
375
|
-
if (!className) {
|
|
376
|
-
className = scope.zrId + "-cls-" + getClassId();
|
|
377
|
-
scope.cssStyleCache[styleKey] = className;
|
|
378
|
-
scope.cssNodes["." + className + (withHover ? ":hover" : "")] = style;
|
|
379
|
-
}
|
|
380
|
-
attrs["class"] = attrs["class"] ? attrs["class"] + " " + className : className;
|
|
381
|
-
}
|
|
382
|
-
|
|
383
|
-
//#endregion
|
|
384
|
-
//#region ../../node_modules/.bun/zrender@6.0.0/node_modules/zrender/lib/svg/graphic.js
|
|
385
|
-
|
|
386
|
-
function isImageLike(val) {
|
|
387
|
-
return val && isString(val.src);
|
|
388
|
-
}
|
|
389
|
-
function isCanvasLike(val) {
|
|
390
|
-
return val && isFunction(val.toDataURL);
|
|
391
|
-
}
|
|
392
|
-
function setStyleAttrs(attrs, style, el, scope) {
|
|
393
|
-
mapStyleToAttrs(function (key, val) {
|
|
394
|
-
var isFillStroke = key === "fill" || key === "stroke";
|
|
395
|
-
if (isFillStroke && isGradient(val)) setGradient(style, attrs, key, scope);else if (isFillStroke && isPattern(val)) setPattern(el, attrs, key, scope);else attrs[key] = val;
|
|
396
|
-
if (isFillStroke && scope.ssr && val === "none") attrs["pointer-events"] = "visible";
|
|
397
|
-
}, style, el, false);
|
|
398
|
-
setShadow(el, attrs, scope);
|
|
399
|
-
}
|
|
400
|
-
function setMetaData(attrs, el) {
|
|
401
|
-
var metaData = getElementSSRData(el);
|
|
402
|
-
if (metaData) {
|
|
403
|
-
metaData.each(function (val, key) {
|
|
404
|
-
val != null && (attrs[("ecmeta_" + key).toLowerCase()] = val + "");
|
|
405
|
-
});
|
|
406
|
-
if (el.isSilent()) attrs[META_DATA_PREFIX + "silent"] = "true";
|
|
407
|
-
}
|
|
408
|
-
}
|
|
409
|
-
function noRotateScale(m) {
|
|
410
|
-
return isAroundZero(m[0] - 1) && isAroundZero(m[1]) && isAroundZero(m[2]) && isAroundZero(m[3] - 1);
|
|
411
|
-
}
|
|
412
|
-
function noTranslate(m) {
|
|
413
|
-
return isAroundZero(m[4]) && isAroundZero(m[5]);
|
|
414
|
-
}
|
|
415
|
-
function setTransform(attrs, m, compress) {
|
|
416
|
-
if (m && !(noTranslate(m) && noRotateScale(m))) {
|
|
417
|
-
var mul = compress ? 10 : 1e4;
|
|
418
|
-
attrs.transform = noRotateScale(m) ? "translate(" + round(m[4] * mul) / mul + " " + round(m[5] * mul) / mul + ")" : getMatrixStr(m);
|
|
419
|
-
}
|
|
420
|
-
}
|
|
421
|
-
function convertPolyShape(shape, attrs, mul) {
|
|
422
|
-
var points = shape.points;
|
|
423
|
-
var strArr = [];
|
|
424
|
-
for (var i = 0; i < points.length; i++) {
|
|
425
|
-
strArr.push(round(points[i][0] * mul) / mul);
|
|
426
|
-
strArr.push(round(points[i][1] * mul) / mul);
|
|
427
|
-
}
|
|
428
|
-
attrs.points = strArr.join(" ");
|
|
429
|
-
}
|
|
430
|
-
function validatePolyShape(shape) {
|
|
431
|
-
return !shape.smooth;
|
|
432
|
-
}
|
|
433
|
-
function createAttrsConvert(desc) {
|
|
434
|
-
var normalizedDesc = map(desc, function (item) {
|
|
435
|
-
return typeof item === "string" ? [item, item] : item;
|
|
436
|
-
});
|
|
437
|
-
return function (shape, attrs, mul) {
|
|
438
|
-
for (var i = 0; i < normalizedDesc.length; i++) {
|
|
439
|
-
var item = normalizedDesc[i];
|
|
440
|
-
var val = shape[item[0]];
|
|
441
|
-
if (val != null) attrs[item[1]] = round(val * mul) / mul;
|
|
442
|
-
}
|
|
443
|
-
};
|
|
444
|
-
}
|
|
445
|
-
function hasShapeAnimation(el) {
|
|
446
|
-
var animators = el.animators;
|
|
447
|
-
for (var i = 0; i < animators.length; i++) if (animators[i].targetName === "shape") return true;
|
|
448
|
-
return false;
|
|
449
|
-
}
|
|
450
|
-
function brushSVGPath(el, scope) {
|
|
451
|
-
var style = el.style;
|
|
452
|
-
var shape = el.shape;
|
|
453
|
-
var builtinShpDef = builtinShapesDef[el.type];
|
|
454
|
-
var attrs = {};
|
|
455
|
-
var needsAnimate = scope.animation;
|
|
456
|
-
var svgElType = "path";
|
|
457
|
-
var strokePercent = el.style.strokePercent;
|
|
458
|
-
var precision = scope.compress && getPathPrecision(el) || 4;
|
|
459
|
-
if (builtinShpDef && !scope.willUpdate && !(builtinShpDef[1] && !builtinShpDef[1](shape)) && !(needsAnimate && hasShapeAnimation(el)) && !(strokePercent < 1)) {
|
|
460
|
-
svgElType = el.type;
|
|
461
|
-
var mul = Math.pow(10, precision);
|
|
462
|
-
builtinShpDef[0](shape, attrs, mul);
|
|
463
|
-
} else {
|
|
464
|
-
var needBuildPath = !el.path || el.shapeChanged();
|
|
465
|
-
if (!el.path) el.createPathProxy();
|
|
466
|
-
var path = el.path;
|
|
467
|
-
if (needBuildPath) {
|
|
468
|
-
path.beginPath();
|
|
469
|
-
el.buildPath(path, el.shape);
|
|
470
|
-
el.pathUpdated();
|
|
471
|
-
}
|
|
472
|
-
var pathVersion = path.getVersion();
|
|
473
|
-
var elExt = el;
|
|
474
|
-
var svgPathBuilder = elExt.__svgPathBuilder;
|
|
475
|
-
if (elExt.__svgPathVersion !== pathVersion || !svgPathBuilder || strokePercent !== elExt.__svgPathStrokePercent) {
|
|
476
|
-
if (!svgPathBuilder) svgPathBuilder = elExt.__svgPathBuilder = new SVGPathRebuilder();
|
|
477
|
-
svgPathBuilder.reset(precision);
|
|
478
|
-
path.rebuildPath(svgPathBuilder, strokePercent);
|
|
479
|
-
svgPathBuilder.generateStr();
|
|
480
|
-
elExt.__svgPathVersion = pathVersion;
|
|
481
|
-
elExt.__svgPathStrokePercent = strokePercent;
|
|
482
|
-
}
|
|
483
|
-
attrs.d = svgPathBuilder.getStr();
|
|
484
|
-
}
|
|
485
|
-
setTransform(attrs, el.transform);
|
|
486
|
-
setStyleAttrs(attrs, style, el, scope);
|
|
487
|
-
setMetaData(attrs, el);
|
|
488
|
-
scope.animation && createCSSAnimation(el, attrs, scope);
|
|
489
|
-
scope.emphasis && createCSSEmphasis(el, attrs, scope);
|
|
490
|
-
return createVNode(svgElType, el.id + "", attrs);
|
|
491
|
-
}
|
|
492
|
-
function brushSVGImage(el, scope) {
|
|
493
|
-
var style = el.style;
|
|
494
|
-
var image = style.image;
|
|
495
|
-
if (image && !isString(image)) {
|
|
496
|
-
if (isImageLike(image)) image = image.src;else if (isCanvasLike(image)) image = image.toDataURL();
|
|
497
|
-
}
|
|
498
|
-
if (!image) return;
|
|
499
|
-
var x = style.x || 0;
|
|
500
|
-
var y = style.y || 0;
|
|
501
|
-
var dw = style.width;
|
|
502
|
-
var dh = style.height;
|
|
503
|
-
var attrs = {
|
|
504
|
-
href: image,
|
|
505
|
-
width: dw,
|
|
506
|
-
height: dh
|
|
507
|
-
};
|
|
508
|
-
if (x) attrs.x = x;
|
|
509
|
-
if (y) attrs.y = y;
|
|
510
|
-
setTransform(attrs, el.transform);
|
|
511
|
-
setStyleAttrs(attrs, style, el, scope);
|
|
512
|
-
setMetaData(attrs, el);
|
|
513
|
-
scope.animation && createCSSAnimation(el, attrs, scope);
|
|
514
|
-
return createVNode("image", el.id + "", attrs);
|
|
515
|
-
}
|
|
516
|
-
function brushSVGTSpan(el, scope) {
|
|
517
|
-
var style = el.style;
|
|
518
|
-
var text = style.text;
|
|
519
|
-
text != null && (text += "");
|
|
520
|
-
if (!text || isNaN(style.x) || isNaN(style.y)) return;
|
|
521
|
-
var font = style.font || "12px sans-serif";
|
|
522
|
-
var x = style.x || 0;
|
|
523
|
-
var y = adjustTextY(style.y || 0, getLineHeight(font), style.textBaseline);
|
|
524
|
-
var textAlign = TEXT_ALIGN_TO_ANCHOR[style.textAlign] || style.textAlign;
|
|
525
|
-
var attrs = {
|
|
526
|
-
"dominant-baseline": "central",
|
|
527
|
-
"text-anchor": textAlign
|
|
528
|
-
};
|
|
529
|
-
if (hasSeparateFont(style)) {
|
|
530
|
-
var separatedFontStr = "";
|
|
531
|
-
var fontStyle = style.fontStyle;
|
|
532
|
-
var fontSize = parseFontSize(style.fontSize);
|
|
533
|
-
if (!parseFloat(fontSize)) return;
|
|
534
|
-
var fontFamily = style.fontFamily || "sans-serif";
|
|
535
|
-
var fontWeight = style.fontWeight;
|
|
536
|
-
separatedFontStr += "font-size:" + fontSize + ";font-family:" + fontFamily + ";";
|
|
537
|
-
if (fontStyle && fontStyle !== "normal") separatedFontStr += "font-style:" + fontStyle + ";";
|
|
538
|
-
if (fontWeight && fontWeight !== "normal") separatedFontStr += "font-weight:" + fontWeight + ";";
|
|
539
|
-
attrs.style = separatedFontStr;
|
|
540
|
-
} else attrs.style = "font: " + font;
|
|
541
|
-
if (text.match(/\s/)) attrs["xml:space"] = "preserve";
|
|
542
|
-
if (x) attrs.x = x;
|
|
543
|
-
if (y) attrs.y = y;
|
|
544
|
-
setTransform(attrs, el.transform);
|
|
545
|
-
setStyleAttrs(attrs, style, el, scope);
|
|
546
|
-
setMetaData(attrs, el);
|
|
547
|
-
scope.animation && createCSSAnimation(el, attrs, scope);
|
|
548
|
-
return createVNode("text", el.id + "", attrs, void 0, text);
|
|
549
|
-
}
|
|
550
|
-
function brush(el, scope) {
|
|
551
|
-
if (el instanceof Path) return brushSVGPath(el, scope);else if (el instanceof ZRImage) return brushSVGImage(el, scope);else if (el instanceof TSpan) return brushSVGTSpan(el, scope);
|
|
552
|
-
}
|
|
553
|
-
function setShadow(el, attrs, scope) {
|
|
554
|
-
var style = el.style;
|
|
555
|
-
if (hasShadow(style)) {
|
|
556
|
-
var shadowKey = getShadowKey(el);
|
|
557
|
-
var shadowCache = scope.shadowCache;
|
|
558
|
-
var shadowId = shadowCache[shadowKey];
|
|
559
|
-
if (!shadowId) {
|
|
560
|
-
var globalScale = el.getGlobalScale();
|
|
561
|
-
var scaleX = globalScale[0];
|
|
562
|
-
var scaleY = globalScale[1];
|
|
563
|
-
if (!scaleX || !scaleY) return;
|
|
564
|
-
var offsetX = style.shadowOffsetX || 0;
|
|
565
|
-
var offsetY = style.shadowOffsetY || 0;
|
|
566
|
-
var blur_1 = style.shadowBlur;
|
|
567
|
-
var _a = normalizeColor(style.shadowColor),
|
|
568
|
-
opacity = _a.opacity,
|
|
569
|
-
color = _a.color;
|
|
570
|
-
var stdDx = blur_1 / 2 / scaleX;
|
|
571
|
-
var stdDy = blur_1 / 2 / scaleY;
|
|
572
|
-
var stdDeviation = stdDx + " " + stdDy;
|
|
573
|
-
shadowId = scope.zrId + "-s" + scope.shadowIdx++;
|
|
574
|
-
scope.defs[shadowId] = createVNode("filter", shadowId, {
|
|
575
|
-
"id": shadowId,
|
|
576
|
-
"x": "-100%",
|
|
577
|
-
"y": "-100%",
|
|
578
|
-
"width": "300%",
|
|
579
|
-
"height": "300%"
|
|
580
|
-
}, [createVNode("feDropShadow", "", {
|
|
581
|
-
"dx": offsetX / scaleX,
|
|
582
|
-
"dy": offsetY / scaleY,
|
|
583
|
-
"stdDeviation": stdDeviation,
|
|
584
|
-
"flood-color": color,
|
|
585
|
-
"flood-opacity": opacity
|
|
586
|
-
})]);
|
|
587
|
-
shadowCache[shadowKey] = shadowId;
|
|
588
|
-
}
|
|
589
|
-
attrs.filter = getIdURL(shadowId);
|
|
590
|
-
}
|
|
591
|
-
}
|
|
592
|
-
function setGradient(style, attrs, target, scope) {
|
|
593
|
-
var val = style[target];
|
|
594
|
-
var gradientTag;
|
|
595
|
-
var gradientAttrs = {
|
|
596
|
-
"gradientUnits": val.global ? "userSpaceOnUse" : "objectBoundingBox"
|
|
597
|
-
};
|
|
598
|
-
if (isLinearGradient(val)) {
|
|
599
|
-
gradientTag = "linearGradient";
|
|
600
|
-
gradientAttrs.x1 = val.x;
|
|
601
|
-
gradientAttrs.y1 = val.y;
|
|
602
|
-
gradientAttrs.x2 = val.x2;
|
|
603
|
-
gradientAttrs.y2 = val.y2;
|
|
604
|
-
} else if (isRadialGradient(val)) {
|
|
605
|
-
gradientTag = "radialGradient";
|
|
606
|
-
gradientAttrs.cx = retrieve2(val.x, .5);
|
|
607
|
-
gradientAttrs.cy = retrieve2(val.y, .5);
|
|
608
|
-
gradientAttrs.r = retrieve2(val.r, .5);
|
|
609
|
-
} else return;
|
|
610
|
-
var colors = val.colorStops;
|
|
611
|
-
var colorStops = [];
|
|
612
|
-
for (var i = 0, len = colors.length; i < len; ++i) {
|
|
613
|
-
var offset = round4(colors[i].offset) * 100 + "%";
|
|
614
|
-
var stopColor = colors[i].color;
|
|
615
|
-
var _a = normalizeColor(stopColor),
|
|
616
|
-
color = _a.color,
|
|
617
|
-
opacity = _a.opacity;
|
|
618
|
-
var stopsAttrs = {
|
|
619
|
-
"offset": offset
|
|
620
|
-
};
|
|
621
|
-
stopsAttrs["stop-color"] = color;
|
|
622
|
-
if (opacity < 1) stopsAttrs["stop-opacity"] = opacity;
|
|
623
|
-
colorStops.push(createVNode("stop", i + "", stopsAttrs));
|
|
624
|
-
}
|
|
625
|
-
var gradientKey = vNodeToString(createVNode(gradientTag, "", gradientAttrs, colorStops));
|
|
626
|
-
var gradientCache = scope.gradientCache;
|
|
627
|
-
var gradientId = gradientCache[gradientKey];
|
|
628
|
-
if (!gradientId) {
|
|
629
|
-
gradientId = scope.zrId + "-g" + scope.gradientIdx++;
|
|
630
|
-
gradientCache[gradientKey] = gradientId;
|
|
631
|
-
gradientAttrs.id = gradientId;
|
|
632
|
-
scope.defs[gradientId] = createVNode(gradientTag, gradientId, gradientAttrs, colorStops);
|
|
633
|
-
}
|
|
634
|
-
attrs[target] = getIdURL(gradientId);
|
|
635
|
-
}
|
|
636
|
-
function setPattern(el, attrs, target, scope) {
|
|
637
|
-
var val = el.style[target];
|
|
638
|
-
var boundingRect = el.getBoundingRect();
|
|
639
|
-
var patternAttrs = {};
|
|
640
|
-
var repeat = val.repeat;
|
|
641
|
-
var noRepeat = repeat === "no-repeat";
|
|
642
|
-
var repeatX = repeat === "repeat-x";
|
|
643
|
-
var repeatY = repeat === "repeat-y";
|
|
644
|
-
var child;
|
|
645
|
-
if (isImagePattern(val)) {
|
|
646
|
-
var imageWidth_1 = val.imageWidth;
|
|
647
|
-
var imageHeight_1 = val.imageHeight;
|
|
648
|
-
var imageSrc = void 0;
|
|
649
|
-
var patternImage = val.image;
|
|
650
|
-
if (isString(patternImage)) imageSrc = patternImage;else if (isImageLike(patternImage)) imageSrc = patternImage.src;else if (isCanvasLike(patternImage)) imageSrc = patternImage.toDataURL();
|
|
651
|
-
if (typeof Image === "undefined") {
|
|
652
|
-
var errMsg = "Image width/height must been given explictly in svg-ssr renderer.";
|
|
653
|
-
assert(imageWidth_1, errMsg);
|
|
654
|
-
assert(imageHeight_1, errMsg);
|
|
655
|
-
} else if (imageWidth_1 == null || imageHeight_1 == null) {
|
|
656
|
-
var setSizeToVNode_1 = function (vNode, img) {
|
|
657
|
-
if (vNode) {
|
|
658
|
-
var svgEl = vNode.elm;
|
|
659
|
-
var width = imageWidth_1 || img.width;
|
|
660
|
-
var height = imageHeight_1 || img.height;
|
|
661
|
-
if (vNode.tag === "pattern") {
|
|
662
|
-
if (repeatX) {
|
|
663
|
-
height = 1;
|
|
664
|
-
width /= boundingRect.width;
|
|
665
|
-
} else if (repeatY) {
|
|
666
|
-
width = 1;
|
|
667
|
-
height /= boundingRect.height;
|
|
668
|
-
}
|
|
669
|
-
}
|
|
670
|
-
vNode.attrs.width = width;
|
|
671
|
-
vNode.attrs.height = height;
|
|
672
|
-
if (svgEl) {
|
|
673
|
-
svgEl.setAttribute("width", width);
|
|
674
|
-
svgEl.setAttribute("height", height);
|
|
675
|
-
}
|
|
676
|
-
}
|
|
677
|
-
};
|
|
678
|
-
var createdImage = createOrUpdateImage(imageSrc, null, el, function (img) {
|
|
679
|
-
noRepeat || setSizeToVNode_1(patternVNode, img);
|
|
680
|
-
setSizeToVNode_1(child, img);
|
|
681
|
-
});
|
|
682
|
-
if (createdImage && createdImage.width && createdImage.height) {
|
|
683
|
-
imageWidth_1 = imageWidth_1 || createdImage.width;
|
|
684
|
-
imageHeight_1 = imageHeight_1 || createdImage.height;
|
|
685
|
-
}
|
|
686
|
-
}
|
|
687
|
-
child = createVNode("image", "img", {
|
|
688
|
-
href: imageSrc,
|
|
689
|
-
width: imageWidth_1,
|
|
690
|
-
height: imageHeight_1
|
|
691
|
-
});
|
|
692
|
-
patternAttrs.width = imageWidth_1;
|
|
693
|
-
patternAttrs.height = imageHeight_1;
|
|
694
|
-
} else if (val.svgElement) {
|
|
695
|
-
child = clone(val.svgElement);
|
|
696
|
-
patternAttrs.width = val.svgWidth;
|
|
697
|
-
patternAttrs.height = val.svgHeight;
|
|
698
|
-
}
|
|
699
|
-
if (!child) return;
|
|
700
|
-
var patternWidth;
|
|
701
|
-
var patternHeight;
|
|
702
|
-
if (noRepeat) patternWidth = patternHeight = 1;else if (repeatX) {
|
|
703
|
-
patternHeight = 1;
|
|
704
|
-
patternWidth = patternAttrs.width / boundingRect.width;
|
|
705
|
-
} else if (repeatY) {
|
|
706
|
-
patternWidth = 1;
|
|
707
|
-
patternHeight = patternAttrs.height / boundingRect.height;
|
|
708
|
-
} else patternAttrs.patternUnits = "userSpaceOnUse";
|
|
709
|
-
if (patternWidth != null && !isNaN(patternWidth)) patternAttrs.width = patternWidth;
|
|
710
|
-
if (patternHeight != null && !isNaN(patternHeight)) patternAttrs.height = patternHeight;
|
|
711
|
-
var patternTransform = getSRTTransformString(val);
|
|
712
|
-
patternTransform && (patternAttrs.patternTransform = patternTransform);
|
|
713
|
-
var patternVNode = createVNode("pattern", "", patternAttrs, [child]);
|
|
714
|
-
var patternKey = vNodeToString(patternVNode);
|
|
715
|
-
var patternCache = scope.patternCache;
|
|
716
|
-
var patternId = patternCache[patternKey];
|
|
717
|
-
if (!patternId) {
|
|
718
|
-
patternId = scope.zrId + "-p" + scope.patternIdx++;
|
|
719
|
-
patternCache[patternKey] = patternId;
|
|
720
|
-
patternAttrs.id = patternId;
|
|
721
|
-
patternVNode = scope.defs[patternId] = createVNode("pattern", patternId, patternAttrs, [child]);
|
|
722
|
-
}
|
|
723
|
-
attrs[target] = getIdURL(patternId);
|
|
724
|
-
}
|
|
725
|
-
function setClipPath(clipPath, attrs, scope) {
|
|
726
|
-
var clipPathCache = scope.clipPathCache,
|
|
727
|
-
defs = scope.defs;
|
|
728
|
-
var clipPathId = clipPathCache[clipPath.id];
|
|
729
|
-
if (!clipPathId) {
|
|
730
|
-
clipPathId = scope.zrId + "-c" + scope.clipPathIdx++;
|
|
731
|
-
var clipPathAttrs = {
|
|
732
|
-
id: clipPathId
|
|
733
|
-
};
|
|
734
|
-
clipPathCache[clipPath.id] = clipPathId;
|
|
735
|
-
defs[clipPathId] = createVNode("clipPath", clipPathId, clipPathAttrs, [brushSVGPath(clipPath, scope)]);
|
|
736
|
-
}
|
|
737
|
-
attrs["clip-path"] = getIdURL(clipPathId);
|
|
738
|
-
}
|
|
739
|
-
|
|
740
|
-
//#endregion
|
|
741
|
-
//#region ../../node_modules/.bun/zrender@6.0.0/node_modules/zrender/lib/svg/domapi.js
|
|
742
|
-
function createTextNode(text) {
|
|
743
|
-
return document.createTextNode(text);
|
|
744
|
-
}
|
|
745
|
-
function insertBefore(parentNode, newNode, referenceNode) {
|
|
746
|
-
parentNode.insertBefore(newNode, referenceNode);
|
|
747
|
-
}
|
|
748
|
-
function removeChild(node, child) {
|
|
749
|
-
node.removeChild(child);
|
|
750
|
-
}
|
|
751
|
-
function appendChild(node, child) {
|
|
752
|
-
node.appendChild(child);
|
|
753
|
-
}
|
|
754
|
-
function parentNode(node) {
|
|
755
|
-
return node.parentNode;
|
|
756
|
-
}
|
|
757
|
-
function nextSibling(node) {
|
|
758
|
-
return node.nextSibling;
|
|
759
|
-
}
|
|
760
|
-
function setTextContent(node, text) {
|
|
761
|
-
node.textContent = text;
|
|
762
|
-
}
|
|
763
|
-
|
|
764
|
-
//#endregion
|
|
765
|
-
//#region ../../node_modules/.bun/zrender@6.0.0/node_modules/zrender/lib/svg/patch.js
|
|
766
|
-
|
|
767
|
-
function isUndef(s) {
|
|
768
|
-
return s === void 0;
|
|
769
|
-
}
|
|
770
|
-
function isDef(s) {
|
|
771
|
-
return s !== void 0;
|
|
772
|
-
}
|
|
773
|
-
function createKeyToOldIdx(children, beginIdx, endIdx) {
|
|
774
|
-
var map = {};
|
|
775
|
-
for (var i = beginIdx; i <= endIdx; ++i) {
|
|
776
|
-
var key = children[i].key;
|
|
777
|
-
if (key !== void 0) map[key] = i;
|
|
778
|
-
}
|
|
779
|
-
return map;
|
|
780
|
-
}
|
|
781
|
-
function sameVnode(vnode1, vnode2) {
|
|
782
|
-
var isSameKey = vnode1.key === vnode2.key;
|
|
783
|
-
return vnode1.tag === vnode2.tag && isSameKey;
|
|
784
|
-
}
|
|
785
|
-
function createElm(vnode) {
|
|
786
|
-
var i;
|
|
787
|
-
var children = vnode.children;
|
|
788
|
-
var tag = vnode.tag;
|
|
789
|
-
if (isDef(tag)) {
|
|
790
|
-
var elm = vnode.elm = createElement(tag);
|
|
791
|
-
updateAttrs(emptyNode, vnode);
|
|
792
|
-
if (isArray(children)) for (i = 0; i < children.length; ++i) {
|
|
793
|
-
var ch = children[i];
|
|
794
|
-
if (ch != null) appendChild(elm, createElm(ch));
|
|
795
|
-
} else if (isDef(vnode.text) && !isObject(vnode.text)) appendChild(elm, createTextNode(vnode.text));
|
|
796
|
-
} else vnode.elm = createTextNode(vnode.text);
|
|
797
|
-
return vnode.elm;
|
|
798
|
-
}
|
|
799
|
-
function addVnodes(parentElm, before, vnodes, startIdx, endIdx) {
|
|
800
|
-
for (; startIdx <= endIdx; ++startIdx) {
|
|
801
|
-
var ch = vnodes[startIdx];
|
|
802
|
-
if (ch != null) insertBefore(parentElm, createElm(ch), before);
|
|
803
|
-
}
|
|
804
|
-
}
|
|
805
|
-
function removeVnodes(parentElm, vnodes, startIdx, endIdx) {
|
|
806
|
-
for (; startIdx <= endIdx; ++startIdx) {
|
|
807
|
-
var ch = vnodes[startIdx];
|
|
808
|
-
if (ch != null) if (isDef(ch.tag)) {
|
|
809
|
-
var parent_1 = parentNode(ch.elm);
|
|
810
|
-
removeChild(parent_1, ch.elm);
|
|
811
|
-
} else removeChild(parentElm, ch.elm);
|
|
812
|
-
}
|
|
813
|
-
}
|
|
814
|
-
function updateAttrs(oldVnode, vnode) {
|
|
815
|
-
var key;
|
|
816
|
-
var elm = vnode.elm;
|
|
817
|
-
var oldAttrs = oldVnode && oldVnode.attrs || {};
|
|
818
|
-
var attrs = vnode.attrs || {};
|
|
819
|
-
if (oldAttrs === attrs) return;
|
|
820
|
-
for (key in attrs) {
|
|
821
|
-
var cur = attrs[key];
|
|
822
|
-
if (oldAttrs[key] !== cur) if (cur === true) elm.setAttribute(key, "");else if (cur === false) elm.removeAttribute(key);else if (key === "style") elm.style.cssText = cur;else if (key.charCodeAt(0) !== xChar) elm.setAttribute(key, cur);else if (key === "xmlns:xlink" || key === "xmlns") elm.setAttributeNS(XMLNS, key, cur);else if (key.charCodeAt(3) === colonChar) elm.setAttributeNS(XML_NAMESPACE, key, cur);else if (key.charCodeAt(5) === colonChar) elm.setAttributeNS(XLINKNS, key, cur);else elm.setAttribute(key, cur);
|
|
823
|
-
}
|
|
824
|
-
for (key in oldAttrs) if (!(key in attrs)) elm.removeAttribute(key);
|
|
825
|
-
}
|
|
826
|
-
function updateChildren(parentElm, oldCh, newCh) {
|
|
827
|
-
var oldStartIdx = 0;
|
|
828
|
-
var newStartIdx = 0;
|
|
829
|
-
var oldEndIdx = oldCh.length - 1;
|
|
830
|
-
var oldStartVnode = oldCh[0];
|
|
831
|
-
var oldEndVnode = oldCh[oldEndIdx];
|
|
832
|
-
var newEndIdx = newCh.length - 1;
|
|
833
|
-
var newStartVnode = newCh[0];
|
|
834
|
-
var newEndVnode = newCh[newEndIdx];
|
|
835
|
-
var oldKeyToIdx;
|
|
836
|
-
var idxInOld;
|
|
837
|
-
var elmToMove;
|
|
838
|
-
var before;
|
|
839
|
-
while (oldStartIdx <= oldEndIdx && newStartIdx <= newEndIdx) if (oldStartVnode == null) oldStartVnode = oldCh[++oldStartIdx];else if (oldEndVnode == null) oldEndVnode = oldCh[--oldEndIdx];else if (newStartVnode == null) newStartVnode = newCh[++newStartIdx];else if (newEndVnode == null) newEndVnode = newCh[--newEndIdx];else if (sameVnode(oldStartVnode, newStartVnode)) {
|
|
840
|
-
patchVnode(oldStartVnode, newStartVnode);
|
|
841
|
-
oldStartVnode = oldCh[++oldStartIdx];
|
|
842
|
-
newStartVnode = newCh[++newStartIdx];
|
|
843
|
-
} else if (sameVnode(oldEndVnode, newEndVnode)) {
|
|
844
|
-
patchVnode(oldEndVnode, newEndVnode);
|
|
845
|
-
oldEndVnode = oldCh[--oldEndIdx];
|
|
846
|
-
newEndVnode = newCh[--newEndIdx];
|
|
847
|
-
} else if (sameVnode(oldStartVnode, newEndVnode)) {
|
|
848
|
-
patchVnode(oldStartVnode, newEndVnode);
|
|
849
|
-
insertBefore(parentElm, oldStartVnode.elm, nextSibling(oldEndVnode.elm));
|
|
850
|
-
oldStartVnode = oldCh[++oldStartIdx];
|
|
851
|
-
newEndVnode = newCh[--newEndIdx];
|
|
852
|
-
} else if (sameVnode(oldEndVnode, newStartVnode)) {
|
|
853
|
-
patchVnode(oldEndVnode, newStartVnode);
|
|
854
|
-
insertBefore(parentElm, oldEndVnode.elm, oldStartVnode.elm);
|
|
855
|
-
oldEndVnode = oldCh[--oldEndIdx];
|
|
856
|
-
newStartVnode = newCh[++newStartIdx];
|
|
857
|
-
} else {
|
|
858
|
-
if (isUndef(oldKeyToIdx)) oldKeyToIdx = createKeyToOldIdx(oldCh, oldStartIdx, oldEndIdx);
|
|
859
|
-
idxInOld = oldKeyToIdx[newStartVnode.key];
|
|
860
|
-
if (isUndef(idxInOld)) insertBefore(parentElm, createElm(newStartVnode), oldStartVnode.elm);else {
|
|
861
|
-
elmToMove = oldCh[idxInOld];
|
|
862
|
-
if (elmToMove.tag !== newStartVnode.tag) insertBefore(parentElm, createElm(newStartVnode), oldStartVnode.elm);else {
|
|
863
|
-
patchVnode(elmToMove, newStartVnode);
|
|
864
|
-
oldCh[idxInOld] = void 0;
|
|
865
|
-
insertBefore(parentElm, elmToMove.elm, oldStartVnode.elm);
|
|
866
|
-
}
|
|
867
|
-
}
|
|
868
|
-
newStartVnode = newCh[++newStartIdx];
|
|
869
|
-
}
|
|
870
|
-
if (oldStartIdx <= oldEndIdx || newStartIdx <= newEndIdx) if (oldStartIdx > oldEndIdx) {
|
|
871
|
-
before = newCh[newEndIdx + 1] == null ? null : newCh[newEndIdx + 1].elm;
|
|
872
|
-
addVnodes(parentElm, before, newCh, newStartIdx, newEndIdx);
|
|
873
|
-
} else removeVnodes(parentElm, oldCh, oldStartIdx, oldEndIdx);
|
|
874
|
-
}
|
|
875
|
-
function patchVnode(oldVnode, vnode) {
|
|
876
|
-
var elm = vnode.elm = oldVnode.elm;
|
|
877
|
-
var oldCh = oldVnode.children;
|
|
878
|
-
var ch = vnode.children;
|
|
879
|
-
if (oldVnode === vnode) return;
|
|
880
|
-
updateAttrs(oldVnode, vnode);
|
|
881
|
-
if (isUndef(vnode.text)) {
|
|
882
|
-
if (isDef(oldCh) && isDef(ch)) {
|
|
883
|
-
if (oldCh !== ch) updateChildren(elm, oldCh, ch);
|
|
884
|
-
} else if (isDef(ch)) {
|
|
885
|
-
if (isDef(oldVnode.text)) setTextContent(elm, "");
|
|
886
|
-
addVnodes(elm, null, ch, 0, ch.length - 1);
|
|
887
|
-
} else if (isDef(oldCh)) removeVnodes(elm, oldCh, 0, oldCh.length - 1);else if (isDef(oldVnode.text)) setTextContent(elm, "");
|
|
888
|
-
} else if (oldVnode.text !== vnode.text) {
|
|
889
|
-
if (isDef(oldCh)) removeVnodes(elm, oldCh, 0, oldCh.length - 1);
|
|
890
|
-
setTextContent(elm, vnode.text);
|
|
891
|
-
}
|
|
892
|
-
}
|
|
893
|
-
function patch(oldVnode, vnode) {
|
|
894
|
-
if (sameVnode(oldVnode, vnode)) patchVnode(oldVnode, vnode);else {
|
|
895
|
-
var elm = oldVnode.elm;
|
|
896
|
-
var parent_2 = parentNode(elm);
|
|
897
|
-
createElm(vnode);
|
|
898
|
-
if (parent_2 !== null) {
|
|
899
|
-
insertBefore(parent_2, vnode.elm, nextSibling(elm));
|
|
900
|
-
removeVnodes(parent_2, [oldVnode], 0, 0);
|
|
901
|
-
}
|
|
902
|
-
}
|
|
903
|
-
return vnode;
|
|
904
|
-
}
|
|
905
|
-
|
|
906
|
-
//#endregion
|
|
907
|
-
//#region ../../node_modules/.bun/zrender@6.0.0/node_modules/zrender/lib/svg/Painter.js
|
|
908
|
-
|
|
909
|
-
function createMethodNotSupport(method) {
|
|
910
|
-
return function () {};
|
|
911
|
-
}
|
|
912
|
-
function createBackgroundVNode(width, height, backgroundColor, scope) {
|
|
913
|
-
var bgVNode;
|
|
914
|
-
if (backgroundColor && backgroundColor !== "none") {
|
|
915
|
-
bgVNode = createVNode("rect", "bg", {
|
|
916
|
-
width,
|
|
917
|
-
height,
|
|
918
|
-
x: "0",
|
|
919
|
-
y: "0"
|
|
920
|
-
});
|
|
921
|
-
if (isGradient(backgroundColor)) setGradient({
|
|
922
|
-
fill: backgroundColor
|
|
923
|
-
}, bgVNode.attrs, "fill", scope);else if (isPattern(backgroundColor)) setPattern({
|
|
924
|
-
style: {
|
|
925
|
-
fill: backgroundColor
|
|
926
|
-
},
|
|
927
|
-
dirty: noop,
|
|
928
|
-
getBoundingRect: function () {
|
|
929
|
-
return {
|
|
930
|
-
width,
|
|
931
|
-
height
|
|
932
|
-
};
|
|
933
|
-
}
|
|
934
|
-
}, bgVNode.attrs, "fill", scope);else {
|
|
935
|
-
var _a = normalizeColor(backgroundColor),
|
|
936
|
-
color = _a.color,
|
|
937
|
-
opacity = _a.opacity;
|
|
938
|
-
bgVNode.attrs.fill = color;
|
|
939
|
-
opacity < 1 && (bgVNode.attrs["fill-opacity"] = opacity);
|
|
940
|
-
}
|
|
941
|
-
}
|
|
942
|
-
return bgVNode;
|
|
943
|
-
}
|
|
944
|
-
|
|
945
|
-
//#endregion
|
|
946
|
-
//#region ../../node_modules/.bun/echarts@6.0.0/node_modules/echarts/lib/renderer/installSVGRenderer.js
|
|
947
|
-
/**
|
|
948
|
-
* AUTO-GENERATED FILE. DO NOT MODIFY.
|
|
949
|
-
*/
|
|
950
|
-
function install$1(registers) {
|
|
951
|
-
registers.registerPainter("svg", SVGPainter);
|
|
952
|
-
}
|
|
953
|
-
|
|
954
|
-
//#endregion
|
|
955
|
-
//#region ../../node_modules/.bun/zrender@6.0.0/node_modules/zrender/lib/canvas/Layer.js
|
|
956
|
-
function createDom(id, painter, dpr) {
|
|
957
|
-
var newDom = platformApi.createCanvas();
|
|
958
|
-
var width = painter.getWidth();
|
|
959
|
-
var height = painter.getHeight();
|
|
960
|
-
var newDomStyle = newDom.style;
|
|
961
|
-
if (newDomStyle) {
|
|
962
|
-
newDomStyle.position = "absolute";
|
|
963
|
-
newDomStyle.left = "0";
|
|
964
|
-
newDomStyle.top = "0";
|
|
965
|
-
newDomStyle.width = width + "px";
|
|
966
|
-
newDomStyle.height = height + "px";
|
|
967
|
-
newDom.setAttribute("data-zr-dom-id", id);
|
|
968
|
-
}
|
|
969
|
-
newDom.width = width * dpr;
|
|
970
|
-
newDom.height = height * dpr;
|
|
971
|
-
return newDom;
|
|
972
|
-
}
|
|
973
|
-
function isLayerValid(layer) {
|
|
974
|
-
if (!layer) return false;
|
|
975
|
-
if (layer.__builtin__) return true;
|
|
976
|
-
if (typeof layer.resize !== "function" || typeof layer.refresh !== "function") return false;
|
|
977
|
-
return true;
|
|
978
|
-
}
|
|
979
|
-
function createRoot(width, height) {
|
|
980
|
-
var domRoot = document.createElement("div");
|
|
981
|
-
domRoot.style.cssText = ["position:relative", "width:" + width + "px", "height:" + height + "px", "padding:0", "margin:0", "border-width:0"].join(";") + ";";
|
|
982
|
-
return domRoot;
|
|
983
|
-
}
|
|
984
|
-
//#endregion
|
|
985
|
-
//#region ../../node_modules/.bun/echarts@6.0.0/node_modules/echarts/lib/renderer/installCanvasRenderer.js
|
|
986
|
-
/**
|
|
987
|
-
* AUTO-GENERATED FILE. DO NOT MODIFY.
|
|
988
|
-
*/
|
|
989
|
-
function install(registers) {
|
|
990
|
-
registers.registerPainter("canvas", CanvasPainter);
|
|
991
|
-
}
|
|
992
|
-
|
|
993
|
-
//#endregion
|
|
994
|
-
export { install as CanvasRenderer, install$1 as SVGRenderer };
|
|
995
|
-
//# sourceMappingURL=renderers.d.ts.map
|