UNPKG

threed-ai

Version:

'threed-ai' supporting Vite, Next, Nuxt, as a functioning, low-dependency app, a package supporting monorepos of workspaces that utilize 'ThreeJS, WebGL, React, TypeScript <r3Fiber>, GraphQL'.

36 lines (30 loc) 915 B
import { useEffect } from 'react' import { useRouter } from 'next/router' import dynamic from 'next/dynamic' import { setState } from '~/stores/store' import Header from '~/components/seo/config' import Dom from '~/components/layout/dom' import '~/styles/index.css' // ============================================================== // CUSTOM IMPORT (SSR true|false) const LCanvas = dynamic(() => import('~/components/layout/canvas'), { ssr: true, }) // ============================================================== // NEXT APP const App = ({ Component, pageProps = { title: 'index' } }) => { const router = useRouter() useEffect(() => { setState({ router }) }, [router]) return ( <> <Header title={pageProps.title} /> <Dom> <Component {...pageProps} /> </Dom> {Component?.r3f && <LCanvas>{Component.r3f(pageProps)}</LCanvas>} </> ) } export default App