# extendify/0.11.0/src/Onboarding/hooks/useConfetti.js

Extendify, version 0.11.0. 21 lines.

- Page: https://pluginprobe.com/plugins/extendify/0.11.0/code/src/Onboarding/hooks/useConfetti.js
- Raw: https://pluginprobe.com/plugins/extendify/0.11.0/raw/src/Onboarding/hooks/useConfetti.js
- Modified: 2022-08-25T21:16:32+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/extendify/0.11.0/code/src/Onboarding/hooks/useConfetti.js#L10-L20`.

```javascript
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) {
                requestAnimationFrame(frame)
            }
        }
        frame()
    }, [config, time, ready])
}

```
