@pbroom/color-kit/reactPlane renderer
ColorPlaneRendererHandle
Return value of useColorPlaneRenderer. Destructure it: passing handle.ref straight to JSX makes the React Compiler treat the whole handle as a ref, so reading handle.renderer in render is flagged.
import type { ColorPlaneRendererHandle } from '@pbroom/color-kit/react';use-color-plane-renderer.ts:101interface ColorPlaneRendererHandle {
ref: RefCallback<HTMLCanvasElement>;
canvasKey: number;
renderer: ActiveColorPlaneRenderer;
edgeBehavior: ColorPlaneEdgeBehavior;
}Properties
- ref
RefCallback<HTMLCanvasElement> - Callback ref for the
<canvas>element; stable across renders. - canvasKey
number - Pass as the canvas
key. A canvas is locked to the first context kind requested from it, so switching between WebGL and the CPU fallback needs a fresh element; the hook bumps this value when it does. - renderer
ActiveColorPlaneRenderer - Rasterizer currently painting the canvas.
- edgeBehavior
ColorPlaneEdgeBehavior - Resolved out-of-gamut behavior.