react-native-micro-interactions
Version:
Effortlessly enhance your React Native components with subtle micro-interactions and animations.
33 lines (32 loc) • 1.09 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.click = void 0;
var _reactNativeReanimated = require("react-native-reanimated");
var _animOptionsFilter = require("../utils/animOptionsFilter.js");
var _react = require("react");
const click = (config, props) => {
const animationOptions = (0, _animOptionsFilter.filterClickAnimOptions)(config, props);
let size = (0, _reactNativeReanimated.useSharedValue)(1);
const runIndividualAnimation = (0, _react.useCallback)(() => {
size.value = (0, _reactNativeReanimated.withSequence)((0, _reactNativeReanimated.withTiming)(animationOptions.shrink, {
duration: animationOptions.shrinkDuration
}), (0, _reactNativeReanimated.withTiming)(1, {
duration: 100
}));
}, [animationOptions, size]);
const animatedStyle = (0, _reactNativeReanimated.useAnimatedStyle)(() => {
return {
transform: [{
scale: size.value
}]
};
}, [size]);
return {
animatedStyle,
runIndividualAnimation
};
};
exports.click = click;
//# sourceMappingURL=click.js.map