Skip to content

Commit

Permalink
fix(@anu-vue/nuxt): fixed import issue (jd-solanki#115)
Browse files Browse the repository at this point in the history
  • Loading branch information
cpreston321 committed Jan 3, 2023
1 parent 0e63d05 commit 4e53e40
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 19 deletions.
37 changes: 26 additions & 11 deletions packages/anu-nuxt/src/module.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
import { presetThemeDefault } from '@anu-vue/preset-theme-default'
import {
addPlugin,
createResolver,
addPluginTemplate,
defineNuxtModule,
} from '@nuxt/kit'
import presetIcons from '@unocss/preset-icons'
Expand Down Expand Up @@ -50,16 +49,11 @@ export default defineNuxtModule<ModuleOptions>({
},
},
setup(opts, nuxt) {
const { resolve } = createResolver(import.meta.url)
const enablePreset = opts.presetTheme === true || typeof opts.presetTheme === 'object'

nuxt.options.css.push('anu-vue/dist/style.css')

if (opts.presetTheme === true || typeof opts.presetTheme === 'object') {
if (enablePreset) {
nuxt.options.unocss = nuxt.options.unocss || {}

const ext = typeof opts.presetTheme === 'object' ? opts.presetTheme.style : 'css'
nuxt.options.css.push(`@anu-vue/preset-theme-default/dist/style.${ext}`)

const iconPreset = !!nuxt.options.unocss?.icons || true
nuxt.options.unocss.preflight = false

Expand Down Expand Up @@ -93,13 +87,34 @@ export default defineNuxtModule<ModuleOptions>({
}
}

// Add inline plugin template for Anu
// TODO: Look for reasons why import '#imports' doesn't work
addPluginTemplate({
filename: 'anu-vue.mjs',
getContents: () => {
const lines = [
'import { anu } from \'anu-vue\'',
`export default defineNuxtPlugin(nuxtApp => {
nuxtApp.vueApp.use(anu)
})`,
]

if (enablePreset) {
const styleExt = typeof opts.presetTheme === 'object' ? opts.presetTheme.style : 'css'
lines.unshift(`import '@anu-vue/preset-theme-default/dist/style.${styleExt}'`)
}

lines.unshift('import \'anu-vue/dist/style.css\'')

return lines.join('\n')
},
})

nuxt.hook('prepare:types', ({ tsConfig, references }) => {
tsConfig.compilerOptions!.types.push('anu-vue/volar')
references.push({
types: 'anu-vue/volar',
})
})

addPlugin({ src: resolve('./runtime/plugin') })
},
})
8 changes: 0 additions & 8 deletions packages/anu-nuxt/src/runtime/plugin.ts

This file was deleted.

0 comments on commit 4e53e40

Please sign in to comment.