addimated
Version:
An always interruptable, declarative animation library for React
99 lines (82 loc) • 2.64 kB
JavaScript
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
import _createClass from "@babel/runtime/helpers/esm/createClass";
import _possibleConstructorReturn from "@babel/runtime/helpers/esm/possibleConstructorReturn";
import _getPrototypeOf from "@babel/runtime/helpers/esm/getPrototypeOf";
import _inherits from "@babel/runtime/helpers/esm/inherits";
import { Animated } from "./Animated";
import { AnimatedWithChildren } from "./AnimatedWithChildren";
var AnimatedTransform =
/*#__PURE__*/
function (_AnimatedWithChildren) {
_inherits(AnimatedTransform, _AnimatedWithChildren);
function AnimatedTransform(transforms) {
var _this;
_classCallCheck(this, AnimatedTransform);
_this = _possibleConstructorReturn(this, _getPrototypeOf(AnimatedTransform).call(this));
_this.transforms = transforms;
return _this;
}
_createClass(AnimatedTransform, [{
key: "__getValue",
value: function __getValue() {
return this.transforms.map(function (transform) {
var result = {};
for (var key in transform) {
var value = transform[key];
if (value instanceof Animated) {
result[key] = value.__getValue();
} else {
result[key] = value;
}
}
return result;
});
}
}, {
key: "__getAnimatedValue",
value: function __getAnimatedValue() {
return this.transforms.map(function (transform) {
var result = {};
for (var key in transform) {
var value = transform[key];
if (value instanceof Animated) {
result[key] = value.__getAnimatedValue();
} else {
// All transform components needed to recompose matrix
result[key] = value;
}
}
return result;
});
}
}, {
key: "__attach",
value: function __attach() {
var _this2 = this;
this.transforms.forEach(function (transform) {
for (var key in transform) {
var value = transform[key];
if (value instanceof Animated) {
value.__addChild(_this2);
}
}
});
}
}, {
key: "__detach",
value: function __detach() {
var _this3 = this;
this.transforms.forEach(function (transform) {
for (var key in transform) {
var value = transform[key];
if (value instanceof Animated) {
value.__removeChild(_this3);
}
}
});
}
}]);
return AnimatedTransform;
}(AnimatedWithChildren);
export { AnimatedTransform };
//# sourceMappingURL=AnimatedTransform.js.map