UNPKG

@pmndrs/uikit

Version:

Build performant 3D user interfaces with Three.js and yoga.

19 lines (18 loc) 678 B
import { signal } from '@preact/signals-core'; import { ExperimentalFeature, loadYoga } from 'yoga-layout/load'; export const PointScaleFactor = 100; export function createDefaultConfig(Config) { const config = Config.create(); config.setUseWebDefaults(true); config.setPointScaleFactor(PointScaleFactor); config.setExperimentalFeatureEnabled(ExperimentalFeature.WebFlexBasis, true); return config; } const create = signal(undefined); loadYoga() .then(({ Node, Config }) => { const config = createDefaultConfig(Config); create.value = () => Node.create(config); }) .catch(console.error); export const createYogaNode = () => create.value?.();