Files
ntspi-app/resources/js/ssr.js
T
2025-05-06 10:47:12 +05:00

32 lines
1014 B
JavaScript

import '../css/app.css';
import { createInertiaApp } from '@inertiajs/vue3'
import createServer from '@inertiajs/vue3/server'
import { renderToString } from '@vue/server-renderer'
import { createSSRApp, h } from 'vue'
import { ZiggyVue } from '../../vendor/tightenco/ziggy/dist/vue.m';
createServer(page =>
createInertiaApp({
page,
render: renderToString,
resolve: name => {
const pages = import.meta.glob('./Pages/**/*.vue')
return pages[`./Pages/${name}.vue`]()
},
setup({ App, props, plugin }) {
const ssrApp = createSSRApp({
render: () => h(App, props),
});
ssrApp.config.errorHandler = () => null;
ssrApp.config.warnHandler = () => null;
return ssrApp
.use(plugin)
.use(ZiggyVue, {
...page.props.ziggy,
location: new URL(page.props.ziggy.location),
});
},
}),
);