Fix stale inputs reference (#92)
* Add `onMount` to Renderer to share inputs * Removes brush updater * Update brush.test.tsx
This commit is contained in:
parent
cdb7c74f8e
commit
8ae625baef
13 changed files with 77 additions and 81 deletions
|
@ -55,6 +55,10 @@ export interface RendererProps<T extends TLShape, E extends Element = any, M = a
|
|||
* An object of custom options that should be passed to rendered shapes.
|
||||
*/
|
||||
meta?: M
|
||||
/**
|
||||
* A callback that receives the renderer's inputs manager.
|
||||
*/
|
||||
onMount?: (inputs: Inputs) => void
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -74,6 +78,7 @@ export function Renderer<T extends TLShape, E extends Element, M extends Record<
|
|||
hideHandles = false,
|
||||
hideIndicators = false,
|
||||
hideBounds = false,
|
||||
onMount,
|
||||
...rest
|
||||
}: RendererProps<T, E, M>): JSX.Element {
|
||||
useTLTheme(theme)
|
||||
|
@ -96,6 +101,10 @@ export function Renderer<T extends TLShape, E extends Element, M extends Record<
|
|||
inputs: new Inputs(),
|
||||
}))
|
||||
|
||||
React.useEffect(() => {
|
||||
onMount?.(context.inputs)
|
||||
}, [context])
|
||||
|
||||
return (
|
||||
<TLContext.Provider value={context as unknown as TLContextType<TLShape, Element>}>
|
||||
<Canvas
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue