refactor: init CLI
This commit is contained in:
parent
384c87a91c
commit
f54b42af0a
|
|
@ -4,7 +4,7 @@ import { Command } from 'commander'
|
||||||
import { consola } from 'consola'
|
import { consola } from 'consola'
|
||||||
import { colors } from 'consola/utils'
|
import { colors } from 'consola/utils'
|
||||||
import { template } from 'lodash-es'
|
import { template } from 'lodash-es'
|
||||||
import { addDependency } from 'nypm'
|
import { addDependency, addDevDependency } from 'nypm'
|
||||||
import ora from 'ora'
|
import ora from 'ora'
|
||||||
import path from 'pathe'
|
import path from 'pathe'
|
||||||
import prompts from 'prompts'
|
import prompts from 'prompts'
|
||||||
|
|
@ -39,6 +39,9 @@ const PROJECT_DEPENDENCIES = {
|
||||||
'tailwind-merge',
|
'tailwind-merge',
|
||||||
'radix-vue',
|
'radix-vue',
|
||||||
],
|
],
|
||||||
|
nuxt: [
|
||||||
|
'shadcn-nuxt',
|
||||||
|
],
|
||||||
}
|
}
|
||||||
|
|
||||||
const initOptionsSchema = z.object({
|
const initOptionsSchema = z.object({
|
||||||
|
|
@ -309,10 +312,21 @@ export async function runInit(cwd: string, config: Config) {
|
||||||
const iconsDep = config.style === 'new-york' ? ['@radix-icons/vue'] : ['lucide-vue-next']
|
const iconsDep = config.style === 'new-york' ? ['@radix-icons/vue'] : ['lucide-vue-next']
|
||||||
const deps = PROJECT_DEPENDENCIES.base.concat(iconsDep).filter(Boolean)
|
const deps = PROJECT_DEPENDENCIES.base.concat(iconsDep).filter(Boolean)
|
||||||
|
|
||||||
|
await Promise.allSettled(
|
||||||
|
[
|
||||||
|
config.framework === 'nuxt' && await addDevDependency(
|
||||||
|
[...PROJECT_DEPENDENCIES.nuxt, ...deps],
|
||||||
|
{
|
||||||
|
cwd,
|
||||||
|
silent: true,
|
||||||
|
},
|
||||||
|
),
|
||||||
await addDependency(deps, {
|
await addDependency(deps, {
|
||||||
cwd,
|
cwd,
|
||||||
silent: true,
|
silent: true,
|
||||||
})
|
}),
|
||||||
|
],
|
||||||
|
)
|
||||||
|
|
||||||
dependenciesSpinner?.succeed()
|
dependenciesSpinner?.succeed()
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -63,7 +63,7 @@ export default defineNuxtModule<ModuleOptions>({
|
||||||
await installModule('@nuxtjs/tailwindcss')
|
await installModule('@nuxtjs/tailwindcss')
|
||||||
|
|
||||||
// Installs the `@nuxtjs/color-mode` module.
|
// Installs the `@nuxtjs/color-mode` module.
|
||||||
await installModule('@nuxtjs/color-mode')
|
await installModule('@nuxtjs/color-mode', { classSuffix: '' })
|
||||||
|
|
||||||
// Manually scan `componentsDir` for components and register them for auto imports
|
// Manually scan `componentsDir` for components and register them for auto imports
|
||||||
try {
|
try {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user