import {createInertiaApp} from '@inertiajs/vue3'
import {DefineComponent, h} from 'vue'
import createServer from "@inertiajs/vue3/server";
import {renderToString} from "@vue/server-renderer";
import {createApp} from "@/app";

createServer(page =>
    createInertiaApp({
        page,
        render: renderToString,
        resolve: name => {
            const pages = import.meta.glob('./Pages/**/*.vue', {eager: true});
            return pages[`./Pages/${name}.vue`] as Promise<DefineComponent>;
        },
        setup({el, App, props, plugin}) {
            return createApp(App, props, plugin);
        },
    })
);
