fix(module): resolve #build/app.config import for vue and nuxt

Resolves #2560
This commit is contained in:
Benjamin Canac
2024-11-10 16:45:46 +01:00
parent ddb46905e7
commit d6943e39c0
3 changed files with 13 additions and 13 deletions

View File

@@ -125,7 +125,7 @@ export default defineNuxtModule<ModuleOptions>({
addImportsDir(resolve('./runtime/composables'))
addTemplates(options, nuxt, resolve)
addTemplates(options, nuxt)
if (nuxt.options.dev && nuxt.options.devtools.enabled && options.devtools?.enabled) {
const templates = buildTemplates(options)

View File

@@ -1,6 +0,0 @@
declare module '#build/app.config' {
import type { AppConfig } from '@nuxt/schema'
const _default: AppConfig
export default _default
}

View File

@@ -2,7 +2,6 @@ import { fileURLToPath } from 'node:url'
import { kebabCase } from 'scule'
import { addTemplate, addTypeTemplate } from '@nuxt/kit'
import type { Nuxt, NuxtTemplate, NuxtTypeTemplate } from '@nuxt/schema'
import type { Resolver } from '@nuxt/kit'
import type { ModuleOptions } from './module'
import * as theme from './theme'
@@ -87,6 +86,17 @@ export {}
`
})
templates.push({
filename: 'types/ui.app.config.d.ts',
getContents: () => `declare module '#build/app.config' {
import type { AppConfig } from '@nuxt/schema'
const _default: AppConfig
export default _default
}
`
})
templates.push({
filename: 'ui-image-component.ts',
write: true,
@@ -100,7 +110,7 @@ export {}
return templates
}
export function addTemplates(options: ModuleOptions, nuxt: Nuxt, resolve: Resolver['resolve']) {
export function addTemplates(options: ModuleOptions, nuxt: Nuxt) {
const templates = getTemplates(options, nuxt.options.appConfig.ui)
for (const template of templates) {
if (template.filename!.endsWith('.d.ts')) {
@@ -109,8 +119,4 @@ export function addTemplates(options: ModuleOptions, nuxt: Nuxt, resolve: Resolv
addTemplate(template)
}
}
nuxt.hook('prepare:types', ({ references }) => {
references.push({ path: resolve('./runtime/types/app.config.d.ts') })
})
}