UNPKG

@visactor/vchart

Version:

charts lib based @visactor/VGrammar

42 lines (37 loc) 2.82 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: !0 }), exports.AreaSeriesSpecTransformer = void 0; const vutils_1 = require("@visactor/vutils"), line_mixin_transformer_1 = require("../mixin/line-mixin-transformer"), vutils_extension_1 = require("@visactor/vutils-extension"); class AreaSeriesSpecTransformer extends line_mixin_transformer_1.LineLikeSeriesSpecTransformer { constructor() { super(...arguments), this._supportStack = !0; } _transformLabelSpec(spec) { var _a, _b, _c; const isPointVisible = !1 !== (null === (_a = spec.point) || void 0 === _a ? void 0 : _a.visible) && !1 !== (null === (_c = null === (_b = spec.point) || void 0 === _b ? void 0 : _b.style) || void 0 === _c ? void 0 : _c.visible); this._addMarkLabelSpec(spec, (spec => { const isAreaMiddle = "inside-middle" === spec.position; return !isPointVisible || isAreaMiddle ? "area" : "point"; })), this._addMarkLabelSpec(spec, "area", "areaLabel", "initLineLabelMarkStyle", void 0, !0); } _transformSpecAfterMergingTheme(spec, chartSpec, chartSpecInfo) { var _a, _b, _c, _d, _e; super._transformSpecAfterMergingTheme(spec, chartSpec, chartSpecInfo); const {area: area = {}, line: line = {}, seriesMark: seriesMark} = spec, isAreaVisible = !1 !== area.visible && !1 !== (null === (_a = area.style) || void 0 === _a ? void 0 : _a.visible), isLineVisible = !1 !== line.visible && !1 !== (null === (_b = line.style) || void 0 === _b ? void 0 : _b.visible); area.support3d = !(!area.support3d && !line.support3d), area.zIndex = (0, vutils_1.isValid)(area.zIndex) || (0, vutils_1.isValid)(line.zIndex) ? Math.max(null !== (_c = area.zIndex) && void 0 !== _c ? _c : 0, null !== (_d = line.zIndex) && void 0 !== _d ? _d : 0) : void 0, area.style && delete area.style.stroke, area.state && Object.keys(area.state).forEach((state => { "style" in area.state[state] ? delete area.state[state].style.stroke : delete area.state[state].stroke; })); let mainSpec = area, subSpec = line; ("line" === seriesMark || isLineVisible && !isAreaVisible) && (mainSpec = line, subSpec = area), area.style = (0, vutils_extension_1.mergeSpec)({}, subSpec.style, mainSpec.style), area.state = (0, vutils_extension_1.mergeSpec)({}, subSpec.state, mainSpec.state), !1 === area.interactive && (area.style.fillPickable = !1), !1 === line.interactive && (line.style.strokePickable = !1), area.interactive = !(!area.interactive && null !== (_e = line.interactive) && void 0 !== _e && !_e), spec.area = area, spec.line = line; } } exports.AreaSeriesSpecTransformer = AreaSeriesSpecTransformer; //# sourceMappingURL=area-transformer.js.map