diff --git a/src/templates.ts b/src/templates.ts index 47b9c505..f5042937 100644 --- a/src/templates.ts +++ b/src/templates.ts @@ -1,6 +1,5 @@ -import { fileURLToPath } from 'node:url' import { kebabCase } from 'scule' -import { addTemplate, addTypeTemplate } from '@nuxt/kit' +import { addTemplate, addTypeTemplate, updateTemplates } from '@nuxt/kit' import type { Nuxt, NuxtTemplate, NuxtTypeTemplate } from '@nuxt/schema' import type { Resolver } from '@nuxt/kit' import type { ModuleOptions } from './module' @@ -50,20 +49,6 @@ export function getTemplates(options: ModuleOptions, uiConfig: Record { + await updateTemplates({ + filter: (template) => { + if (template.filename.startsWith('ui/') && template.filename !== 'ui/index.ts') { + const templatePath = template.filename.replace(/^ui/, 'src/theme') + + if (path.endsWith(templatePath)) { + console.log(`[nuxt-ui] template ${templatePath} changed`) + return true + } + } + return false + } + }) + }) + } + nuxt.hook('prepare:types', ({ references }) => { references.push({ path: resolve('./runtime/types/app.config.d.ts') }) })