From 8964192d55119c5f18a79e2c9057d13a0a6ae880 Mon Sep 17 00:00:00 2001 From: Liam Mitchell Date: Wed, 19 Jan 2022 17:48:40 +0100 Subject: [PATCH] Defer default fire creation Fixes #112, #131 --- src/confetti.js | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/src/confetti.js b/src/confetti.js index bbfc171..3081f7d 100644 --- a/src/confetti.js +++ b/src/confetti.js @@ -577,7 +577,21 @@ return fire; } - module.exports = confettiCannon(null, { useWorker: true, resize: true }); + // Make default export lazy to defer worker creation until called. + var defaultFire; + function getDefaultFire() { + if (!defaultFire) { + defaultFire = confettiCannon(null, { useWorker: true, resize: true }); + } + return defaultFire; + } + + module.exports = function() { + return getDefaultFire().apply(this, arguments); + }; + module.exports.reset = function() { + getDefaultFire().reset(); + }; module.exports.create = confettiCannon; }((function () { if (typeof window !== 'undefined') {