tweb/src/helpers/dom/shake.ts

22 lines
519 B
TypeScript
Raw Normal View History

2023-01-06 20:27:29 +01:00
import rootScope from '../../lib/rootScope';
2023-03-01 11:20:49 +01:00
import liteMode from '../liteMode';
2023-01-06 20:27:29 +01:00
export default function shake(element: HTMLElement) {
2023-03-01 11:20:49 +01:00
if(!liteMode.isAvailable('animations')) {
2023-01-06 20:27:29 +01:00
return;
}
const keyframes: Keyframe[] = [
{transform: 'translateX(0)'},
{transform: 'translateX(.25rem)'},
{transform: 'translateX(-.25rem)'},
{transform: 'translateX(0)'}
];
element.animate([...keyframes, ...keyframes, ...keyframes], {
duration: 300,
iterations: 1,
easing: 'ease-in-out'
});
}