UNPKG

@tamagui/react-native-web-lite

Version:
87 lines (86 loc) 2.43 kB
import Platform from "../../../exports/Platform"; import UIManager from "../../../exports/UIManager"; var __DEV__ = process.env.NODE_ENV !== "production"; function configureNext(config, onAnimationDidEnd) { Platform.isTesting || UIManager.configureNextLayoutAnimation(config, onAnimationDidEnd ?? function () {}, function () {}); } function create(duration, type, property) { return { duration, create: { type, property }, update: { type }, delete: { type, property } }; } var Presets = { easeInEaseOut: create(300, "easeInEaseOut", "opacity"), linear: create(500, "linear", "opacity"), spring: { duration: 700, create: { type: "linear", property: "opacity" }, update: { type: "spring", springDamping: 0.4 }, delete: { type: "linear", property: "opacity" } } }, LayoutAnimation = { /** * Schedules an animation to happen on the next layout. * * @param config Specifies animation properties: * * - `duration` in milliseconds * - `create`, `AnimationConfig` for animating in new views * - `update`, `AnimationConfig` for animating views that have been updated * * @param onAnimationDidEnd Called when the animation finished. * Only supported on iOS. * @param onError Called on error. Only supported on iOS. */ configureNext, /** * Helper for creating a config for `configureNext`. */ create, Types: Object.freeze({ spring: "spring", linear: "linear", easeInEaseOut: "easeInEaseOut", easeIn: "easeIn", easeOut: "easeOut", keyboard: "keyboard" }), Properties: Object.freeze({ opacity: "opacity", scaleX: "scaleX", scaleY: "scaleY", scaleXY: "scaleXY" }), checkConfig() { for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) args[_key] = arguments[_key]; console.error("LayoutAnimation.checkConfig(...) has been disabled."); }, Presets, easeInEaseOut: configureNext.bind(null, Presets.easeInEaseOut), linear: configureNext.bind(null, Presets.linear), spring: configureNext.bind(null, Presets.spring) }, LayoutAnimation_default = LayoutAnimation; export { LayoutAnimation_default as default }; //# sourceMappingURL=index.native.js.map