chore(module): update theming

This commit is contained in:
Benjamin Canac
2024-03-07 15:33:53 +01:00
parent 0d1e17ef74
commit c79e6f188d
12 changed files with 231 additions and 211 deletions

View File

@@ -1,6 +1,9 @@
import { useNuxt, addTemplate } from '@nuxt/kit'
import { addTemplate, addTypeTemplate } from '@nuxt/kit'
import type { Nuxt } from '@nuxt/schema'
import type { ModuleOptions } from './module'
import * as theme from './theme'
export default function createTemplates (nuxt = useNuxt()) {
export default function createTemplates (options: ModuleOptions, nuxt: Nuxt) {
const shades = [50, 100, 200, 300, 400, 500, 600, 700, 800, 900, 950]
const template = addTemplate({
@@ -23,7 +26,6 @@ export default function createTemplates (nuxt = useNuxt()) {
--color-cool-900: #111827;
--color-cool-950: #030712;
${shades.map(shade => `--color-current-${shade}: var(--color-${nuxt.options.appConfig.ui.primary}-${shade});`).join('\n')}
${shades.map(shade => `--color-primary-${shade}: var(--color-${nuxt.options.appConfig.ui.primary}-${shade});`).join('\n')}
${shades.map(shade => `--color-gray-${shade}: var(--color-${nuxt.options.appConfig.ui.gray}-${shade});`).join('\n')}
}
@@ -31,4 +33,21 @@ export default function createTemplates (nuxt = useNuxt()) {
})
nuxt.options.css.push(template.dst)
for (const component in theme) {
addTemplate({
filename: `ui/${component}.ts`,
write: true,
getContents: () => `export default ${JSON.stringify((theme as any)[component]({ colors: options.colors }), null, 2)}`
})
// addTypeTemplate({
// filename: `ui/${component}.d.ts`,
// write: true,
// getContents: () => `import ${component} from './${component}'
// type T = typeof ${component}
// export default T`
// })
}
}