delete component type, clean types in app.ts

This commit is contained in:
Ulf Gebhardt 2023-12-14 00:21:34 +01:00
parent b4115348ba
commit 9504eed56b
Signed by: ulfgebhardt
GPG Key ID: DA6B843E748679C9
2 changed files with 4 additions and 8 deletions

View File

@ -1,5 +1,5 @@
import piniaPluginPersistedstate from 'pinia-plugin-persistedstate' import piniaPluginPersistedstate from 'pinia-plugin-persistedstate'
import { createSSRApp, defineComponent, h, markRaw, reactive } from 'vue' import { createSSRApp, defineComponent, h, markRaw, reactive, Component } from 'vue'
import PageShell from '#components/PageShell.vue' import PageShell from '#components/PageShell.vue'
import { setPageContext } from '#context/usePageContext' import { setPageContext } from '#context/usePageContext'
@ -7,13 +7,13 @@ import i18n from '#plugins/i18n'
import pinia from '#plugins/pinia' import pinia from '#plugins/pinia'
import CreateVuetify from '#plugins/vuetify' import CreateVuetify from '#plugins/vuetify'
import type { Component } from '#types/Component'
import type { PageContext, VikePageContext } from '#types/PageContext' import type { PageContext, VikePageContext } from '#types/PageContext'
const vuetify = CreateVuetify(i18n) const vuetify = CreateVuetify(i18n)
function createApp(pageContext: VikePageContext & PageContext, isClient = true) { function createApp(pageContext: VikePageContext & PageContext, isClient = true) {
let rootComponent: Component // eslint-disable-next-line no-use-before-define
let rootComponent: InstanceType<typeof PageWithWrapper>
const PageWithWrapper = defineComponent({ const PageWithWrapper = defineComponent({
data: () => ({ data: () => ({
Page: markRaw(pageContext.Page), Page: markRaw(pageContext.Page),
@ -26,7 +26,7 @@ function createApp(pageContext: VikePageContext & PageContext, isClient = true)
}, },
render() { render() {
return h( return h(
PageShell, PageShell as Component,
{}, {},
{ {
default: () => { default: () => {
@ -49,9 +49,7 @@ function createApp(pageContext: VikePageContext & PageContext, isClient = true)
objectAssign(app, { objectAssign(app, {
changePage: (pageContext: VikePageContext & PageContext) => { changePage: (pageContext: VikePageContext & PageContext) => {
Object.assign(pageContextReactive, pageContext) Object.assign(pageContextReactive, pageContext)
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
rootComponent.Page = markRaw(pageContext.Page) rootComponent.Page = markRaw(pageContext.Page)
// eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
rootComponent.pageProps = markRaw(pageContext.pageProps || {}) rootComponent.pageProps = markRaw(pageContext.pageProps || {})
}, },
}) })

View File

@ -1,2 +0,0 @@
// eslint-disable-next-line @typescript-eslint/no-explicit-any
export type Component = any