import { createSSRApp, h } from 'vue'; import VueVirtualScroller from 'vue-virtual-scroller'; import { setPageContext } from './usePageContext.js'; import '../assets/css/style.css'; import Container from './container.vue'; import Link from '../components/link/link.vue'; import Icon from '../components/icon/icon.vue'; function createApp(Page, pageProps, pageContext) { const PageWithLayout = { render() { return h( Container, {}, { default() { return h(Page, pageProps || {}); }, }, ); }, }; const app = createSSRApp(PageWithLayout); // We make pageContext available from any Vue component setPageContext(app, pageContext); app.provide('pageContext', pageContext); app.use(VueVirtualScroller); app.component('Link', Link); app.component('Icon', Icon); return app; } export { createApp };