From ab6e03adacc72e51072f7fe2705752a8b1c36458 Mon Sep 17 00:00:00 2001 From: Benji Grant Date: Sun, 18 Jun 2023 17:24:46 +1000 Subject: [PATCH] Don't load worker while loading event --- frontend/src/app/[id]/EventAvailabilities.tsx | 22 ++++++++++--------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/frontend/src/app/[id]/EventAvailabilities.tsx b/frontend/src/app/[id]/EventAvailabilities.tsx index ddf6dfd..54dfbe7 100644 --- a/frontend/src/app/[id]/EventAvailabilities.tsx +++ b/frontend/src/app/[id]/EventAvailabilities.tsx @@ -44,16 +44,18 @@ const EventAvailabilities = ({ event }: EventAvailabilitiesProps) => { const [table, setTable] = useState>() useEffect(() => { - if (!tableWorker.current) { - tableWorker.current = window.Worker ? new Worker(new URL('/src/workers/calculateTable', import.meta.url)) : undefined - } - const args = { times: expandedTimes, locale: i18n.language, timeFormat, timezone } - if (tableWorker.current) { - tableWorker.current.onmessage = (e: MessageEvent>) => setTable(e.data) - tableWorker.current.postMessage(args) - setTable(undefined) - } else { - setTable(calculateTable(args)) + if (event && expandTimes.length > 0) { + if (!tableWorker.current) { + tableWorker.current = window.Worker ? new Worker(new URL('/src/workers/calculateTable', import.meta.url)) : undefined + } + const args = { times: expandedTimes, locale: i18n.language, timeFormat, timezone } + if (tableWorker.current) { + tableWorker.current.onmessage = (e: MessageEvent>) => setTable(e.data) + tableWorker.current.postMessage(args) + setTable(undefined) + } else { + setTable(calculateTable(args)) + } } }, [expandedTimes, i18n.language, timeFormat, timezone])