respond-framework
Version:
create as fast you think
24 lines (23 loc) • 766 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = require("react");
var _reactNative = require("react-native");
var _utils = require("../../../utils.js");
const useSlide = (open, width) => {
const [state, set] = (0, _react.useState)(open);
const distance = (0, _react.useRef)(new _reactNative.Animated.Value(open ? width : 0)).current;
(0, _react.useEffect)(() => {
if (open === state) return;
_reactNative.Animated.timing(distance, {
toValue: open ? width : 0,
duration: 120,
easing: _reactNative.Easing.sin,
useNativeDriver: _utils.useNativeDriver
}).start(() => set(open));
}, [open]);
return distance;
};
var _default = exports.default = useSlide;