suoqiu-f2
Version:
Charts for mobile visualization.
60 lines (59 loc) • 1.92 kB
JavaScript
;
exports.__esModule = true;
exports["default"] = void 0;
var _common = require("../util/common");
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); } /**
* Animate configuration and register
* @author sima.zhang1990@gmail.com
*/
var defaultAnimationCfg = {
appear: {
duration: 450,
easing: 'quadraticOut'
},
// 'appear' animation options
update: {
duration: 300,
easing: 'quadraticOut'
},
// 'update' animation options
enter: {
duration: 300,
easing: 'quadraticOut'
},
// 'enter' animation options
leave: {
duration: 350,
easing: 'quadraticIn'
} // 'leave' animation options
};
var Animate = {
defaultCfg: {},
Action: {},
getAnimation: function getAnimation(geomType, coord, animationType) {
var geomAnimateCfg = this.defaultCfg[geomType];
if (geomAnimateCfg) {
var animation = geomAnimateCfg[animationType];
if ((0, _common.isFunction)(animation)) {
return animation(coord);
}
}
return false;
},
getAnimateCfg: function getAnimateCfg(geomType, animationType) {
var defaultCfg = defaultAnimationCfg[animationType];
var geomConfig = this.defaultCfg[geomType];
if (geomConfig && geomConfig.cfg && geomConfig.cfg[animationType]) {
return (0, _common.deepMix)({}, defaultCfg, geomConfig.cfg[animationType]);
}
return defaultCfg;
},
registerAnimation: function registerAnimation(animationName, animationFun) {
var _extends2;
if (!this.Action) {
this.Action = {};
}
this.Action = _extends({}, this.Action, (_extends2 = {}, _extends2[animationName] = animationFun, _extends2));
}
};
var _default = exports["default"] = Animate;