/// import type {} from '@unocss/nuxt' import { dirname, join } from 'node:path' import { fileURLToPath } from 'node:url' import { createResolver } from 'nuxt/kit' const currentDir = dirname(fileURLToPath(import.meta.url)) const { resolve } = createResolver(import.meta.url) export default defineNuxtConfig({ compatibilityDate: '2024-11-13', devtools: { enabled: true }, modules: [ '@unocss/nuxt', '@vueuse/nuxt', 'motion-v/nuxt', resolve('./modules/tela-build-docs'), ], imports: { dirs: [ './composables', './utils', ], }, components: { dirs: [ 'components', { path: 'composables', pattern: '**/*.vue' }, ], }, vue: { runtimeCompiler: 'STORYBOOK' in process.env, }, pages: !process.env.STORYBOOK, unocss: { attributify: true, icons: { scale: 1.2, collections: { custom: { command: '', return: '', variable: '', variableUnassigned: '', variableReference: '', variableOutput: '', outputFormat: '', loader: '', variableOutputError: '', splitter: '', favorited: '', google: '', microsoft: '', }, }, }, configFile: join(currentDir, './unocss.config.ts'), content: { filesystem: [join(currentDir, './utils/design-tokens.ts')], pipeline: { include: [ /composables\/.+\.ts($|\?)/, /\.stories\.ts($|\?)/, /\.(vue|svelte|[jt]sx|mdx?|astro|elm|php|phtml|html)($|\?)/, ].filter(Boolean), }, }, }, css: [ // Local font files from @fontsource (no external network requests needed) '@fontsource-variable/inter', '@fontsource-variable/geist-mono', join(currentDir, './css/reset.css'), join(currentDir, './css/text.css'), ], vite: { vue: { script: { defineModel: true, }, }, }, } as any)