@visactor/vchart
Version:
charts lib based @visactor/VGrammar
82 lines (67 loc) • 2.59 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: !0
}), exports.registerRoseAnimation = exports.rosePresetAnimation = exports.roseDisappear = exports.roseExit = exports.roseEnter = exports.Appear_FadeIn = exports.Appear_Grow = void 0;
const factory_1 = require("../../core/factory"), Appear_Grow = params => {
const from = "angle" === params.growField ? 0 : params.innerRadius;
return "angle" === params.growField ? {
type: "angle" === params.growField ? "growAngleIn" : "growRadiusIn"
} : {
channel: {
innerRadius: {
from: from,
to: (datum, element) => {
var _a;
return null === (_a = element.getFinalGraphicAttributes()) || void 0 === _a ? void 0 : _a.innerRadius;
}
},
outerRadius: {
from: from,
to: (datum, element) => {
var _a;
return null === (_a = element.getFinalGraphicAttributes()) || void 0 === _a ? void 0 : _a.outerRadius;
}
}
}
};
};
exports.Appear_Grow = Appear_Grow, exports.Appear_FadeIn = {
type: "fadeIn"
};
const roseEnter = params => ({
type: "angle" === params.growField ? "growAngleIn" : "growRadiusIn"
});
exports.roseEnter = roseEnter;
const roseExit = params => ({
type: "angle" === params.growField ? "growAngleOut" : "growRadiusOut"
});
exports.roseExit = roseExit;
const roseDisappear = params => ({
type: "angle" === params.growField ? "growAngleOut" : "growRadiusOut"
});
function rosePresetAnimation(params, preset) {
if (!1 === preset) return {};
switch (preset) {
case "fadeIn":
return exports.Appear_FadeIn;
case "growAngle":
return (0, exports.Appear_Grow)(Object.assign(Object.assign({}, params), {
growField: "angle"
}));
default:
return (0, exports.Appear_Grow)(Object.assign(Object.assign({}, params), {
growField: "radius"
}));
}
}
exports.roseDisappear = roseDisappear, exports.rosePresetAnimation = rosePresetAnimation;
const registerRoseAnimation = () => {
factory_1.Factory.registerAnimation("rose", ((params, preset) => ({
appear: rosePresetAnimation(params, preset),
enter: (0, exports.roseEnter)(params),
exit: (0, exports.roseExit)(params),
disappear: (0, exports.roseDisappear)(params)
})));
};
exports.registerRoseAnimation = registerRoseAnimation;
//# sourceMappingURL=animation.js.map