From 29029714eef6dee2961e85767a39c96ee1d84eee Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Tue, 23 Aug 2022 21:22:28 +0200 Subject: [PATCH] expose pattern form useStrudel --- packages/react/src/hooks/useStrudel.mjs | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/packages/react/src/hooks/useStrudel.mjs b/packages/react/src/hooks/useStrudel.mjs index 6fb7b5b8..a6653f24 100644 --- a/packages/react/src/hooks/useStrudel.mjs +++ b/packages/react/src/hooks/useStrudel.mjs @@ -7,6 +7,7 @@ function useStrudel({ defaultOutput, interval, getTime, code, evalOnMount = fals const [schedulerError, setSchedulerError] = useState(); const [evalError, setEvalError] = useState(); const [activeCode, setActiveCode] = useState(code); + const [pattern, setPattern] = useState(); const isDirty = code !== activeCode; // TODO: how / when to remove schedulerError? const scheduler = useMemo( @@ -20,9 +21,10 @@ function useStrudel({ defaultOutput, interval, getTime, code, evalOnMount = fals } try { // TODO: let user inject custom eval function? - const { pattern } = await _evaluate(code); + const { pattern: _pattern } = await _evaluate(code); setActiveCode(code); - scheduler?.setPattern(pattern); + scheduler?.setPattern(_pattern); + setPattern(_pattern); setEvalError(); } catch (err) { setEvalError(err); @@ -38,7 +40,7 @@ function useStrudel({ defaultOutput, interval, getTime, code, evalOnMount = fals } }, [evaluate, evalOnMount]); - return { schedulerError, scheduler, evalError, evaluate, activeCode, isDirty }; + return { schedulerError, scheduler, evalError, evaluate, activeCode, isDirty, pattern }; } export default useStrudel;