UNPKG

mylingo3d

Version:

Lingo3D is a React/Vue 3d game development framework that ships with a complete visual editor

43 lines (39 loc) 1.14 kB
import setupStruct from "../engine/setupStruct" import ISetup, { setupSchema } from "../interface/ISetup" import { AutoMount, getAutoMount, setAutoMount } from "../states/useAutoMount" import { getFirstLoadBeforeRender, setFirstLoadBeforeRender } from "../states/useFirstLoadBeforeRender" import { refreshSetupStack } from "../states/useSetupStack" const settings: Partial<ISetup> & { autoMount: AutoMount firstLoadBeforeRender: boolean } = { get autoMount() { return getAutoMount() }, set autoMount(value) { setAutoMount(value) }, get firstLoadBeforeRender() { return getFirstLoadBeforeRender() }, set firstLoadBeforeRender(value) { setFirstLoadBeforeRender(value) } } export default settings export const finalSetup: Record<string, any> = {} for (const key of Object.keys(setupSchema)) Object.defineProperty(settings, key, { get() { // @ts-ignore return setupStruct[key] }, set(value) { finalSetup[key] = value refreshSetupStack() }, enumerable: true })