File "useConfetti.js"

Full path: /home/disqkgca/aqanet.org/wp-content/plugins/extendify/src/Launch/hooks/useConfetti.js
File size: 555 B
MIME-type: text/x-java
Charset: utf-8

Download   Open   Back

import { useEffect } from '@wordpress/element';
import confetti from 'canvas-confetti';

export const useConfetti = (config = {}, time = 0, ready = false) => {
	useEffect(() => {
		if (!ready) return;
		const secondsFromNow = Date.now() + time;
		const frame = () => {
			confetti({
				...config,
				disableForReducedMotion: true,
				zIndex: 100000,
			});
			if (Date.now() < secondsFromNow) {
				// run every two frames
				requestAnimationFrame(() => {
					requestAnimationFrame(frame);
				});
			}
		};
		frame();
	}, [config, time, ready]);
};

PHP File Manager