43 lines
1021 B
JavaScript
43 lines
1021 B
JavaScript
'use strict';
|
|
|
|
import { Easing } from '../../../Easing';
|
|
export function JumpingTransition(name, transitionData) {
|
|
const {
|
|
translateX,
|
|
translateY,
|
|
scaleX,
|
|
scaleY
|
|
} = transitionData;
|
|
const d = Math.max(Math.abs(translateX), Math.abs(translateY)) / 2;
|
|
const peakTranslateY = translateY <= 0 ? translateY - d : -translateY + d;
|
|
const jumpingTransition = {
|
|
name,
|
|
style: {
|
|
0: {
|
|
transform: [{
|
|
translateX: `${translateX}px`,
|
|
translateY: `${translateY}px`,
|
|
scale: `${scaleX},${scaleY}`
|
|
}],
|
|
easing: Easing.exp
|
|
},
|
|
50: {
|
|
transform: [{
|
|
translateX: `${translateX / 2}px`,
|
|
translateY: `${peakTranslateY}px`,
|
|
scale: `${scaleX},${scaleY}`
|
|
}]
|
|
},
|
|
100: {
|
|
transform: [{
|
|
translateX: '0px',
|
|
translateY: '0px',
|
|
scale: '1,1'
|
|
}]
|
|
}
|
|
},
|
|
duration: 300
|
|
};
|
|
return jumpingTransition;
|
|
}
|
|
//# sourceMappingURL=Jumping.web.js.map
|