UNPKG

svelte-typewriter

Version:

A simple and reusable typewriter effect for your Svelte applications

19 lines (16 loc) 529 B
/** @type {import(types').OnAnimationEnd} */ const onAnimationEnd = (element, callback) => { const observer = new MutationObserver(mutations => { mutations.forEach(mutation => { const elementAttributeChanged = mutation.type === 'attributes' const elementFinishedTyping = mutation.target.classList.contains('finished-typing') if (elementAttributeChanged && elementFinishedTyping) callback() }) }) observer.observe(element, { attributes: true, childList: true, subtree: true }) } export { onAnimationEnd }