Pure helpers for the layers panel — kept here so the blending-mode
mapping and live-attrs derivation can be unit-tested without
instantiating a LayersPanel (which needs a real DOM container,
AnimationController, and zarr-backed scene graph).
The DOM-facing LayersPanel calls these and applies the returned
shape to its THREE.Material instances.
Pure helpers for the layers panel — kept here so the blending-mode mapping and live-attrs derivation can be unit-tested without instantiating a
LayersPanel(which needs a real DOM container, AnimationController, and zarr-backed scene graph).The DOM-facing
LayersPanelcalls these and applies the returned shape to its THREE.Material instances.