Files
2026-06-28 10:41:51 +02:00

27 lines
863 B
TypeScript

import { client } from '~/client'
import Layout from '~/layouts/default.vue'
import { createInertiaApp } from '@inertiajs/vue3'
import { TuyauProvider } from '@adonisjs/inertia/vue'
import { renderToString } from '@vue/server-renderer'
import { createSSRApp, h, type DefineComponent } from 'vue'
import { resolvePageComponent } from '@adonisjs/inertia/helpers'
export default function render(page: any) {
return createInertiaApp({
page,
render: renderToString,
resolve: (name) => {
return resolvePageComponent(
`./pages/${name}.vue`,
import.meta.glob<DefineComponent>('./pages/**/*.vue', { eager: true }),
Layout
)
},
setup: ({ App, props, plugin }) => {
return createSSRApp({
render: () => h(TuyauProvider, { client }, { default: () => h(App, props) }),
}).use(plugin)
},
})
}