diff --git a/examples/devtools-test/nuxt.config.ts b/examples/devtools-test/nuxt.config.ts index 439d7cac..a77feb0e 100644 --- a/examples/devtools-test/nuxt.config.ts +++ b/examples/devtools-test/nuxt.config.ts @@ -5,6 +5,10 @@ export default defineNuxtConfig({ ], devtools: { enabled: true }, pergel: { - text: 'Hello World!', + projects: { + test: { + S3: true, + }, + }, }, }) diff --git a/examples/devtools-test/package.json b/examples/devtools-test/package.json index 6d79a21e..1e858f64 100644 --- a/examples/devtools-test/package.json +++ b/examples/devtools-test/package.json @@ -10,7 +10,7 @@ "postinstall": "nuxt prepare" }, "dependencies": { - "@pergel/nuxt": "0.0.1-beta.3" + "@pergel/nuxt": "0.0.1-beta.4" }, "devDependencies": { "@nuxt/devtools": "latest", diff --git a/examples/devtools-test/pnpm-lock.yaml b/examples/devtools-test/pnpm-lock.yaml index aa0779a3..9a44ed4d 100644 --- a/examples/devtools-test/pnpm-lock.yaml +++ b/examples/devtools-test/pnpm-lock.yaml @@ -9,8 +9,8 @@ importers: .: dependencies: '@pergel/nuxt': - specifier: 0.0.1-beta.3 - version: 0.0.1-beta.3(nuxt@3.8.2)(vite@5.0.7)(vue@3.3.11) + specifier: 0.0.1-beta.4 + version: 0.0.1-beta.4(nuxt@3.8.2)(vite@5.0.7)(vue@3.3.11) devDependencies: '@nuxt/devtools': specifier: latest @@ -1228,8 +1228,8 @@ packages: '@parcel/watcher-win32-ia32': 2.3.0 '@parcel/watcher-win32-x64': 2.3.0 - /@pergel/nuxt@0.0.1-beta.3(nuxt@3.8.2)(vite@5.0.7)(vue@3.3.11): - resolution: {integrity: sha512-Slj9wAJboo4yz+/71RSdAO5KURZN4B45e7c7RBkooZpNJKVerL8yasMNWbsMTn97cAvGcveXzg7/aYHhZ11bvw==} + /@pergel/nuxt@0.0.1-beta.4(nuxt@3.8.2)(vite@5.0.7)(vue@3.3.11): + resolution: {integrity: sha512-a8VtHaMOUhZFyHGlAnUROIJHDh1vNLm8RFn+bCsTSfpfEusBbgr19sNJ4AKtzR/JIS4aSdvRlLCTcLPFtuRLuA==} dependencies: '@nuxt/devtools': 1.0.5(nuxt@3.8.2)(vite@5.0.7) '@nuxt/devtools-kit': 1.0.5(nuxt@3.8.2)(vite@5.0.7) diff --git a/packages/nuxt/playground/nuxt.config.ts b/packages/nuxt/playground/nuxt.config.ts index f5898069..7d866e94 100644 --- a/packages/nuxt/playground/nuxt.config.ts +++ b/packages/nuxt/playground/nuxt.config.ts @@ -47,6 +47,10 @@ export default defineNuxtConfig({ }), ], pergel: { - devtools: true, + projects: { + test: { + S3: true, + }, + }, }, }) diff --git a/packages/nuxt/src/core/setupModules.ts b/packages/nuxt/src/core/setupModules.ts index 30e3104c..55a8ed3d 100644 --- a/packages/nuxt/src/core/setupModules.ts +++ b/packages/nuxt/src/core/setupModules.ts @@ -55,7 +55,7 @@ export async function setupModules(data: { try { const getIndexExt = () => { - const datas = readdirSync(data.resolver.resolve(join('runtime/modules', moduleName))) + const datas = readdirSync(data.resolver.resolve(join('modules', moduleName))) const indexExt = datas.find(file => file.includes('index') && !file.includes('.d.')) if (!indexExt) throw new Error(`Module ${moduleName} does not have index file`) diff --git a/packages/nuxt/src/module.ts b/packages/nuxt/src/module.ts index 41d2aafe..ad2f7ffa 100644 --- a/packages/nuxt/src/module.ts +++ b/packages/nuxt/src/module.ts @@ -31,20 +31,6 @@ export default defineNuxtModule({ }, async setup(options, nuxt) { const _resolver = createResolver(import.meta.url) - - const { status } = await checkOptions(options) - if (!status) - return - - const { saveNitroImports } = useNitroImports(nuxt) - const { saveNuxtImports } = useNuxtImports(nuxt) - - const { resolvedPergelOptions } = await setupPergel(options, nuxt) - - nuxt.options.vite.optimizeDeps ??= {} - nuxt.options.vite.optimizeDeps.include ??= [] - nuxt.options.vite.optimizeDeps.include.push('@nuxt/devtools-kit/iframe-client') - // Pergel _pergel default options nuxt._pergel = { nitroImports: {}, @@ -61,6 +47,19 @@ export default defineNuxtModule({ resolver: _resolver, } + const { status } = await checkOptions(options) + if (!status) + return + + const { saveNitroImports } = useNitroImports(nuxt) + const { saveNuxtImports } = useNuxtImports(nuxt) + + const { resolvedPergelOptions } = await setupPergel(options, nuxt) + + nuxt.options.vite.optimizeDeps ??= {} + nuxt.options.vite.optimizeDeps.include ??= [] + nuxt.options.vite.optimizeDeps.include.push('@nuxt/devtools-kit/iframe-client') + if (options.esnext) { nuxt.options.vite.build ??= {} nuxt.options.vite.build.target = 'esnext'