mylingo3d
Version:
Lingo3D is a React/Vue 3d game development framework that ships with a complete visual editor
20 lines • 878 B
JavaScript
import { jsx as _jsx } from "preact/jsx-runtime";
import { useEffect, useState } from "preact/hooks";
import TreeItem from "./TreeItem";
import Object3DTreeItem from "./Object3DTreeItem";
const ModelTreeItem = ({ appendable }) => {
const [loadedObject3d, setLoadedObject3d] = useState();
const { loaded } = appendable;
useEffect(() => {
setLoadedObject3d(undefined);
const handle = loaded.then(() => {
setLoadedObject3d(appendable.loadedGroup.children[0]);
});
return () => {
handle.cancel();
};
}, [loaded]);
return (_jsx(TreeItem, { appendable: appendable, expandable: !!loadedObject3d, children: loadedObject3d && (_jsx(Object3DTreeItem, { appendable: appendable, object3d: loadedObject3d })) }));
};
export default ModelTreeItem;
//# sourceMappingURL=ModelTreeItem.js.map