From d6943e39c096169ea65d4a172f57814f42e53e6a Mon Sep 17 00:00:00 2001 From: Benjamin Canac Date: Sun, 10 Nov 2024 16:45:46 +0100 Subject: [PATCH] fix(module): resolve `#build/app.config` import for vue and nuxt Resolves #2560 --- src/module.ts | 2 +- src/runtime/types/app.config.d.ts | 6 ------ src/templates.ts | 18 ++++++++++++------ 3 files changed, 13 insertions(+), 13 deletions(-) delete mode 100644 src/runtime/types/app.config.d.ts diff --git a/src/module.ts b/src/module.ts index 788c67ee..26365d9e 100644 --- a/src/module.ts +++ b/src/module.ts @@ -125,7 +125,7 @@ export default defineNuxtModule({ 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) diff --git a/src/runtime/types/app.config.d.ts b/src/runtime/types/app.config.d.ts deleted file mode 100644 index aa2b8ced..00000000 --- a/src/runtime/types/app.config.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -declare module '#build/app.config' { - import type { AppConfig } from '@nuxt/schema' - - const _default: AppConfig - export default _default -} diff --git a/src/templates.ts b/src/templates.ts index cf247f98..cd4d1f9c 100644 --- a/src/templates.ts +++ b/src/templates.ts @@ -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') }) - }) }