@madeja-studio/telar
Version:
UI component library by Madeja Studio
2 lines • 1.62 kB
JavaScript
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.default=void 0;var _slicedToArray2=_interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));var _native=require("@react-spring/native");var _react=require("react");var useAnimatedSwitch=function useAnimatedSwitch(_ref){var visibleComponent=_ref.visibleComponent;var _useState=(0,_react.useState)(visibleComponent),_useState2=(0,_slicedToArray2.default)(_useState,2),prevVisibleComponent=_useState2[0],setPrevVisibleComponent=_useState2[1];var _useSpring=(0,_native.useSpring)(function(){return{from:{opacity:1,y:0}};}),_useSpring2=(0,_slicedToArray2.default)(_useSpring,2),aCompStyle=_useSpring2[0],aCompApi=_useSpring2[1];var _useSpring3=(0,_native.useSpring)(function(){return{from:{opacity:0,y:25}};}),_useSpring4=(0,_slicedToArray2.default)(_useSpring3,2),bCompStyle=_useSpring4[0],bCompApi=_useSpring4[1];if(prevVisibleComponent!==visibleComponent){switch(visibleComponent){case 0:aCompApi.start({to:{opacity:1,y:0}});bCompApi.start({to:{opacity:0,y:25}});break;case 1:aCompApi.start({to:{opacity:0,y:25}});bCompApi.start({to:{opacity:1,y:0}});break;}setPrevVisibleComponent(visibleComponent);}return{aCompStyle:Object.assign({},aCompStyle,{transform:[{translateY:(0,_native.to)(aCompStyle.y,function(t){return t;})}]}),bCompStyle:Object.assign({},bCompStyle,{transform:[{translateY:(0,_native.to)(bCompStyle.y,function(t){return t;})}]})};};var _default=exports.default=useAnimatedSwitch;
//# sourceMappingURL=useAnimatedSwitch.js.map