Skip to content

Commit f1a9b8e

Browse files
committed
fix(ContentRenderer): async loader types
1 parent 52659d0 commit f1a9b8e

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

src/runtime/components/ContentRenderer.vue

+5-4
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<script setup lang="ts">
22
import { kebabCase, pascalCase } from 'scule'
3-
import { resolveComponent, toRaw, defineAsyncComponent, computed } from 'vue'
3+
import { resolveComponent, toRaw, defineAsyncComponent, computed, type AsyncComponentLoader } from 'vue'
44
import type { MDCComment, MDCElement, MDCRoot, MDCText } from '@nuxtjs/mdc'
55
import htmlTags from '@nuxtjs/mdc/runtime/parser/utils/html-tags-list'
66
import MDCRenderer from '@nuxtjs/mdc/runtime/components/MDCRenderer.vue'
@@ -133,13 +133,14 @@ function resolveVueComponent(component: string | Renderable) {
133133
_component = resolveComponent(component, false)
134134
}
135135
else if (localComponents.includes(pascalCase(component))) {
136-
_component = defineAsyncComponent(() => {
136+
const loader: AsyncComponentLoader = () => {
137137
return import('#content/components')
138138
.then((m) => {
139-
const comp = m[pascalCase(component)] as unknown as () => unknown
139+
const comp = m[pascalCase(component) as keyof typeof m] as unknown as () => unknown
140140
return comp ? comp() : undefined
141141
})
142-
})
142+
}
143+
_component = defineAsyncComponent(loader)
143144
}
144145
if (typeof _component === 'string') {
145146
return _component

0 commit comments

Comments
 (0)