UNPKG

@tamagui/react-native-web-lite

Version:
60 lines (59 loc) 2.67 kB
import NativeAnimatedHelper from "../NativeAnimatedHelper.native.js"; function _class_call_check(instance, Constructor) { if (!(instance instanceof Constructor)) throw new TypeError("Cannot call a class as a function"); } function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || !1, descriptor.configurable = !0, "value" in descriptor && (descriptor.writable = !0), Object.defineProperty(target, descriptor.key, descriptor); } } function _create_class(Constructor, protoProps, staticProps) { return protoProps && _defineProperties(Constructor.prototype, protoProps), staticProps && _defineProperties(Constructor, staticProps), Constructor; } var startNativeAnimationNextId = 1, Animation = /* @__PURE__ */function () { function Animation2() { _class_call_check(this, Animation2); } return _create_class(Animation2, [{ key: "start", value: function (fromValue, onUpdate, onEnd, previousAnimation, animatedValue) {} }, { key: "stop", value: function () { this.__nativeId && NativeAnimatedHelper.API.stopAnimation(this.__nativeId); } }, { key: "__getNativeAnimationConfig", value: function () { throw new Error("This animation type cannot be offloaded to native"); } }, { // Helper function for subclasses to make sure onEnd is only called once. key: "__debouncedOnEnd", value: function (result) { var onEnd = this.__onEnd; this.__onEnd = null, onEnd && onEnd(result); } }, { key: "__startNativeAnimation", value: function (animatedValue) { var startNativeAnimationWaitId = startNativeAnimationNextId + ":startAnimation"; startNativeAnimationNextId += 1, NativeAnimatedHelper.API.setWaitingForIdentifier(startNativeAnimationWaitId); try { var config = this.__getNativeAnimationConfig(); animatedValue.__makeNative(config.platformConfig), this.__nativeId = NativeAnimatedHelper.generateNewAnimationId(), NativeAnimatedHelper.API.startAnimatingNode(this.__nativeId, animatedValue.__getNativeTag(), config, // $FlowFixMe[method-unbinding] added when improving typing for this parameters this.__debouncedOnEnd.bind(this)); } catch (e) { throw e; } finally { NativeAnimatedHelper.API.unsetWaitingForIdentifier(startNativeAnimationWaitId); } } }]), Animation2; }(), Animation_default = Animation; export { Animation_default as default }; //# sourceMappingURL=Animation.native.js.map