diff --git a/.github/workflows/autofix-docs.yml b/.github/workflows/autofix-docs.yml index 44f5ede60fcb..137d5bab6a3c 100644 --- a/.github/workflows/autofix-docs.yml +++ b/.github/workflows/autofix-docs.yml @@ -5,6 +5,8 @@ on: paths: - "docs/**" - ".github/workflows/docs.yml" + branches: + - "renovate/**" permissions: contents: read diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml index f83eecede68f..fbf88268f322 100644 --- a/.github/workflows/docs.yml +++ b/.github/workflows/docs.yml @@ -8,6 +8,7 @@ on: # autofix workflow will be triggered instead for PRs branches: - main + - "renovate/**" - "!v[0-9]*" # Remove default permissions of GITHUB_TOKEN for security diff --git a/docs/3.api/1.composables/use-fetch.md b/docs/3.api/1.composables/use-fetch.md index 364ff36684c5..9541b15ad951 100644 --- a/docs/3.api/1.composables/use-fetch.md +++ b/docs/3.api/1.composables/use-fetch.md @@ -114,7 +114,7 @@ const { data, pending, error, refresh } = await useFetch('/api/auth/login', { }, onResponse({ request, response, options }) { // Process the response data - return response._data + localStorage.setItem('token', response._data.token) }, onResponseError({ request, response, options }) { // Handle the response errors diff --git a/examples/other/use-custom-fetch-composable/composables/useCustomFetch.ts b/examples/other/use-custom-fetch-composable/composables/useCustomFetch.ts index 56365292b7b8..2464b3cd45ff 100644 --- a/examples/other/use-custom-fetch-composable/composables/useCustomFetch.ts +++ b/examples/other/use-custom-fetch-composable/composables/useCustomFetch.ts @@ -15,12 +15,12 @@ export function useCustomFetch (url: string, options: UseFetchOptions = {} ? { Authorization: `Bearer ${userAuth.value}` } : {}, - onResponse (__ctx) { - // return new myBusinessResponse(response._data) + onResponse (_ctx) { + // _ctx.response._data = new myBusinessResponse(_ctx.response._data) }, - onResponseError (__ctx) { - // return new myBusinessError(error) + onResponseError (_ctx) { + // throw new myBusinessError() } } diff --git a/packages/nuxt/src/app/components/utils.ts b/packages/nuxt/src/app/components/utils.ts index 5865558278e5..8fe1ec3c2ca9 100644 --- a/packages/nuxt/src/app/components/utils.ts +++ b/packages/nuxt/src/app/components/utils.ts @@ -1,22 +1,16 @@ -import { defineComponent, h } from 'vue' +import { h } from 'vue' import type { Component } from 'vue' // eslint-disable-next-line import { isString, isPromise, isArray } from '@vue/shared' -const Fragment = defineComponent({ - name: 'FragmentWrapper', - setup (_props, { slots }) { - return () => slots.default?.() - } -}) - /** * Internal utility * * @private */ export const _wrapIf = (component: Component, props: any, slots: any) => { - return { default: () => props ? h(component, props === true ? {} : props, slots) : h(Fragment, {}, slots) } + props = props === true ? {} : props + return { default: () => props ? h(component, props, slots) : slots.default?.() } } // eslint-disable-next-line no-use-before-define diff --git a/packages/nuxt/src/components/module.ts b/packages/nuxt/src/components/module.ts index def1f3385114..ae5b128110ec 100644 --- a/packages/nuxt/src/components/module.ts +++ b/packages/nuxt/src/components/module.ts @@ -114,14 +114,14 @@ export default defineNuxtModule({ }) // components.d.ts - addTemplate({ ...componentsTypeTemplate, options: { getComponents } }) + addTemplate({ ...componentsTypeTemplate }) // components.plugin.mjs - addPluginTemplate({ ...componentsPluginTemplate, options: { getComponents } } as any) + addPluginTemplate({ ...componentsPluginTemplate } as any) // component-names.mjs - addTemplate({ ...componentNamesTemplate, options: { getComponents, mode: 'all' } }) + addTemplate({ ...componentNamesTemplate, options: { mode: 'all' } }) // components.islands.mjs if (nuxt.options.experimental.componentIslands) { - addTemplate({ ...componentsIslandsTemplate, filename: 'components.islands.mjs', options: { getComponents } }) + addTemplate({ ...componentsIslandsTemplate, filename: 'components.islands.mjs' }) } else { addTemplate({ filename: 'components.islands.mjs', getContents: () => 'export default {}' }) } @@ -178,7 +178,7 @@ export default defineNuxtModule({ }) // Scan components and add to plugin - nuxt.hook('app:templates', async () => { + nuxt.hook('app:templates', async (app) => { const newComponents = await scanComponents(componentDirs, nuxt.options.srcDir!) await nuxt.callHook('components:extend', newComponents) // add server placeholder for .client components server side. issue: #7085 @@ -193,6 +193,7 @@ export default defineNuxtModule({ } } context.components = newComponents + app.components = newComponents }) nuxt.hook('prepare:types', ({ references, tsConfig }) => { diff --git a/packages/nuxt/src/components/templates.ts b/packages/nuxt/src/components/templates.ts index b91ba871c60b..fa2c7eb6d1ce 100644 --- a/packages/nuxt/src/components/templates.ts +++ b/packages/nuxt/src/components/templates.ts @@ -1,8 +1,9 @@ import { isAbsolute, relative } from 'pathe' import { genDynamicImport } from 'knitwork' -import type { Component, Nuxt, NuxtPluginTemplate, NuxtTemplate } from 'nuxt/schema' +import type { Component, Nuxt, NuxtApp, NuxtPluginTemplate, NuxtTemplate } from 'nuxt/schema' export interface ComponentsTemplateContext { + app: NuxtApp nuxt: Nuxt options: { getComponents: (mode?: 'client' | 'server' | 'all') => Component[] @@ -34,8 +35,8 @@ export default defineNuxtPlugin({ export const componentsPluginTemplate: NuxtPluginTemplate = { filename: 'components.plugin.mjs', - getContents ({ options }) { - const globalComponents = options.getComponents().filter(c => c.global) + getContents ({ app }) { + const globalComponents = app.components.filter(c => c.global) if (!globalComponents.length) { return emptyComponentsPlugin } return `import { defineNuxtPlugin } from '#app/nuxt' @@ -59,15 +60,15 @@ export default defineNuxtPlugin({ export const componentNamesTemplate: NuxtPluginTemplate = { filename: 'component-names.mjs', - getContents ({ options }) { - return `export const componentNames = ${JSON.stringify(options.getComponents().filter(c => !c.island).map(c => c.pascalName))}` + getContents ({ app }) { + return `export const componentNames = ${JSON.stringify(app.components.filter(c => !c.island).map(c => c.pascalName))}` } } export const componentsIslandsTemplate: NuxtTemplate = { // components.islands.mjs' - getContents ({ options }) { - const components = options.getComponents() + getContents ({ app }) { + const components = app.components const islands = components.filter(component => component.island || // .server components without a corresponding .client component will need to be rendered as an island @@ -85,9 +86,9 @@ export const componentsIslandsTemplate: NuxtTemplate export const componentsTypeTemplate: NuxtTemplate = { filename: 'components.d.ts', - getContents: ({ options, nuxt }) => { + getContents: ({ app, nuxt }) => { const buildDir = nuxt.options.buildDir - const componentTypes = options.getComponents().filter(c => !c.island).map(c => [ + const componentTypes = app.components.filter(c => !c.island).map(c => [ c.pascalName, `typeof ${genDynamicImport(isAbsolute(c.filePath) ? relative(buildDir, c.filePath).replace(/(?<=\w)\.(?!vue)\w+$/g, '') diff --git a/packages/nuxt/src/core/app.ts b/packages/nuxt/src/core/app.ts index e20b5da32fb2..38bef2b1cc3c 100644 --- a/packages/nuxt/src/core/app.ts +++ b/packages/nuxt/src/core/app.ts @@ -12,6 +12,7 @@ export function createApp (nuxt: Nuxt, options: Partial = {}): NuxtApp dir: nuxt.options.srcDir, extensions: nuxt.options.extensions, plugins: [], + components: [], templates: [] } as unknown as NuxtApp) as NuxtApp } diff --git a/packages/nuxt/src/core/nitro.ts b/packages/nuxt/src/core/nitro.ts index 0f225b984644..82492b3e4109 100644 --- a/packages/nuxt/src/core/nitro.ts +++ b/packages/nuxt/src/core/nitro.ts @@ -130,7 +130,7 @@ export async function initNitro (nuxt: Nuxt & { _nitro?: Nitro }) { ], traceInclude: [ // force include files used in generated code from the runtime-compiler - ...(nuxt.options.experimental.runtimeVueCompiler && !nuxt.options.experimental.externalVue) + ...(nuxt.options.vue.runtimeCompiler && !nuxt.options.experimental.externalVue) ? [ ...nuxt.options.modulesDir.reduce((targets, path) => { const serverRendererPath = resolve(path, 'vue/server-renderer/index.js') @@ -150,7 +150,7 @@ export async function initNitro (nuxt: Nuxt & { _nitro?: Nitro }) { vue: await resolvePath(`vue/dist/vue.cjs${nuxt.options.dev ? '' : '.prod'}.js`) }, // Vue 3 mocks - ...nuxt.options.experimental.runtimeVueCompiler || nuxt.options.experimental.externalVue + ...nuxt.options.vue.runtimeCompiler || nuxt.options.experimental.externalVue ? {} : { 'estree-walker': 'unenv/runtime/mock/proxy', @@ -253,7 +253,7 @@ export async function initNitro (nuxt: Nuxt & { _nitro?: Nitro }) { }) // Enable runtime compiler client side - if (nuxt.options.experimental.runtimeVueCompiler) { + if (nuxt.options.vue.runtimeCompiler) { nuxt.hook('vite:extendConfig', (config, { isClient }) => { if (isClient) { if (Array.isArray(config.resolve!.alias)) { diff --git a/packages/schema/src/config/app.ts b/packages/schema/src/config/app.ts index c9a42f37db7f..357e937ad97c 100644 --- a/packages/schema/src/config/app.ts +++ b/packages/schema/src/config/app.ts @@ -13,6 +13,13 @@ export default defineUntypedSchema({ * @type {typeof import('@vue/compiler-core').CompilerOptions} */ compilerOptions: {}, + + /** + * Include Vue compiler in runtime bundle. + */ + runtimeCompiler: { + $resolve: async (val, get) => val ?? await get('experimental.runtimeVueCompiler') ?? false, + }, }, /** diff --git a/packages/schema/src/config/experimental.ts b/packages/schema/src/config/experimental.ts index ab0023d52063..f5227d9ed9e1 100644 --- a/packages/schema/src/config/experimental.ts +++ b/packages/schema/src/config/experimental.ts @@ -23,12 +23,6 @@ export default defineUntypedSchema({ */ externalVue: true, - // TODO: move to `vue.runtimeCompiler` in v3.5 - /** - * Include Vue compiler in runtime bundle. - */ - runtimeVueCompiler: false, - /** * Tree shakes contents of client-only components from server bundle. * @see https://github.com/nuxt/framework/pull/5750 diff --git a/packages/schema/src/types/nuxt.ts b/packages/schema/src/types/nuxt.ts index 85e40e367869..9e6de7833571 100644 --- a/packages/schema/src/types/nuxt.ts +++ b/packages/schema/src/types/nuxt.ts @@ -1,6 +1,7 @@ import type { Hookable } from 'hookable' import type { Ignore } from 'ignore' import type { NuxtHooks, NuxtLayout, NuxtMiddleware } from './hooks' +import type { Component } from './components' import type { NuxtOptions } from './config' export interface Nuxt { @@ -58,6 +59,7 @@ export interface NuxtApp { dir: string extensions: string[] plugins: NuxtPlugin[] + components: Component[] layouts: Record middleware: NuxtMiddleware[] templates: NuxtTemplate[] diff --git a/packages/vite/package.json b/packages/vite/package.json index d829e7fb871b..b10d48675a95 100644 --- a/packages/vite/package.json +++ b/packages/vite/package.json @@ -30,7 +30,7 @@ "@vitejs/plugin-vue-jsx": "^3.0.1", "autoprefixer": "^10.4.14", "clear": "^0.1.0", - "cssnano": "^6.0.0", + "cssnano": "^6.0.1", "defu": "^6.1.2", "esbuild": "^0.17.18", "escape-string-regexp": "^5.0.0", @@ -56,7 +56,7 @@ "unplugin": "^1.3.1", "vite": "~4.3.3", "vite-node": "^0.30.1", - "vite-plugin-checker": "^0.5.6", + "vite-plugin-checker": "^0.6.0", "vue-bundle-renderer": "^1.0.3" }, "peerDependencies": { diff --git a/packages/webpack/package.json b/packages/webpack/package.json index be0d63e0368d..c9be9c27dc25 100644 --- a/packages/webpack/package.json +++ b/packages/webpack/package.json @@ -24,7 +24,7 @@ "autoprefixer": "^10.4.14", "css-loader": "^6.7.3", "css-minimizer-webpack-plugin": "^5.0.0", - "cssnano": "^6.0.0", + "cssnano": "^6.0.1", "esbuild-loader": "^3.0.1", "escape-string-regexp": "^5.0.0", "estree-walker": "^3.0.3", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3872cca27b2f..b81838677435 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -870,8 +870,8 @@ importers: specifier: ^0.1.0 version: 0.1.0 cssnano: - specifier: ^6.0.0 - version: 6.0.0(postcss@8.4.23) + specifier: ^6.0.1 + version: 6.0.1(postcss@8.4.23) defu: specifier: ^6.1.2 version: 6.1.2 @@ -948,8 +948,8 @@ importers: specifier: ^0.30.1 version: 0.30.1(@types/node@18.16.3) vite-plugin-checker: - specifier: ^0.5.6 - version: 0.5.6(eslint@8.39.0)(typescript@5.0.4)(vite@4.3.3)(vue-tsc@1.6.1) + specifier: ^0.6.0 + version: 0.6.0(eslint@8.39.0)(typescript@5.0.4)(vite@4.3.3)(vue-tsc@1.6.1) vue-bundle-renderer: specifier: ^1.0.3 version: 1.0.3 @@ -985,8 +985,8 @@ importers: specifier: ^5.0.0 version: 5.0.0(webpack@5.81.0) cssnano: - specifier: ^6.0.0 - version: 6.0.0(postcss@8.4.23) + specifier: ^6.0.1 + version: 6.0.1(postcss@8.4.23) esbuild-loader: specifier: ^3.0.1 version: 3.0.1(webpack@5.81.0) @@ -2151,6 +2151,13 @@ packages: node-gyp-build: 4.6.0 dev: true + /@pkgjs/parseargs@0.11.0: + resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} + engines: {node: '>=14'} + requiresBuild: true + dev: true + optional: true + /@pkgr/utils@2.3.1: resolution: {integrity: sha512-wfzX8kc1PMyUILA+1Z/EqoE4UCXGy0iRGMhPwdfae1+f0OXlLqCk+By+aMzgJBzR9AzS4CDizioG6Ss1gvAFJw==} engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} @@ -4219,7 +4226,7 @@ packages: lightningcss: optional: true dependencies: - cssnano: 6.0.0(postcss@8.4.23) + cssnano: 6.0.1(postcss@8.4.23) jest-worker: 29.5.0 postcss: 8.4.23 schema-utils: 4.0.0 @@ -4276,8 +4283,8 @@ packages: engines: {node: '>=4'} hasBin: true - /cssnano-preset-default@6.0.0(postcss@8.4.23): - resolution: {integrity: sha512-BDxlaFzObRDXUiCCBQUNQcI+f1/aX2mgoNtXGjV6PG64POcHoDUoX+LgMWw+Q4609QhxwkcSnS65YFs42RA6qQ==} + /cssnano-preset-default@6.0.1(postcss@8.4.23): + resolution: {integrity: sha512-7VzyFZ5zEB1+l1nToKyrRkuaJIx0zi/1npjvZfbBwbtNTzhLtlvYraK/7/uqmX2Wb2aQtd983uuGw79jAjLSuQ==} engines: {node: ^14 || ^16 || >=18.0} peerDependencies: postcss: ^8.2.15 @@ -4285,7 +4292,7 @@ packages: css-declaration-sorter: 6.3.1(postcss@8.4.23) cssnano-utils: 4.0.0(postcss@8.4.23) postcss: 8.4.23 - postcss-calc: 8.2.4(postcss@8.4.23) + postcss-calc: 9.0.0(postcss@8.4.23) postcss-colormin: 6.0.0(postcss@8.4.23) postcss-convert-values: 6.0.0(postcss@8.4.23) postcss-discard-comments: 6.0.0(postcss@8.4.23) @@ -4293,7 +4300,7 @@ packages: postcss-discard-empty: 6.0.0(postcss@8.4.23) postcss-discard-overridden: 6.0.0(postcss@8.4.23) postcss-merge-longhand: 6.0.0(postcss@8.4.23) - postcss-merge-rules: 6.0.0(postcss@8.4.23) + postcss-merge-rules: 6.0.1(postcss@8.4.23) postcss-minify-font-values: 6.0.0(postcss@8.4.23) postcss-minify-gradients: 6.0.0(postcss@8.4.23) postcss-minify-params: 6.0.0(postcss@8.4.23) @@ -4323,13 +4330,13 @@ packages: postcss: 8.4.23 dev: false - /cssnano@6.0.0(postcss@8.4.23): - resolution: {integrity: sha512-RGlcbzGhzEBCHuQe3k+Udyj5M00z0pm9S+VurHXFEOXxH+y0sVrJH2sMzoyz2d8N1EScazg+DVvmgyx0lurwwA==} + /cssnano@6.0.1(postcss@8.4.23): + resolution: {integrity: sha512-fVO1JdJ0LSdIGJq68eIxOqFpIJrZqXUsBt8fkrBcztCQqAjQD51OhZp7tc0ImcbwXD4k7ny84QTV90nZhmqbkg==} engines: {node: ^14 || ^16 || >=18.0} peerDependencies: postcss: ^8.2.15 dependencies: - cssnano-preset-default: 6.0.0(postcss@8.4.23) + cssnano-preset-default: 6.0.1(postcss@8.4.23) lilconfig: 2.1.0 postcss: 8.4.23 dev: false @@ -5591,6 +5598,14 @@ packages: is-callable: 1.2.7 dev: true + /foreground-child@3.1.1: + resolution: {integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==} + engines: {node: '>=14'} + dependencies: + cross-spawn: 7.0.3 + signal-exit: 4.0.1 + dev: true + /forever-agent@0.6.1: resolution: {integrity: sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==} dev: true @@ -5809,14 +5824,16 @@ packages: /glob-to-regexp@0.4.1: resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==} - /glob@10.0.0: - resolution: {integrity: sha512-zmp9ZDC6NpDNLujV2W2n+3lH+BafIVZ4/ct+Yj3BMZTH/+bgm/eVjHzeFLwxJrrIGgjjS2eiQLlpurHsNlEAtQ==} + /glob@10.2.2: + resolution: {integrity: sha512-Xsa0BcxIC6th9UwNjZkhrMtNo/MnyRL8jGCP+uEwhA5oFOCY1f2s1/oNKY47xQ0Bg5nkjsfAEIej1VeH62bDDQ==} engines: {node: '>=16 || 14 >=14.17'} + hasBin: true dependencies: - fs.realpath: 1.0.0 + foreground-child: 3.1.1 + jackspeak: 2.1.1 minimatch: 9.0.0 minipass: 5.0.0 - path-scurry: 1.6.4 + path-scurry: 1.7.0 dev: true /glob@7.2.3: @@ -6406,6 +6423,15 @@ packages: - supports-color dev: true + /jackspeak@2.1.1: + resolution: {integrity: sha512-juf9stUEwUaILepraGOWIJTLwg48bUnBmRqd2ln2Os1sW987zeoj/hzhbvRB95oMuS2ZTpjULmdwHNX4rzZIZw==} + engines: {node: '>=14'} + dependencies: + cliui: 8.0.1 + optionalDependencies: + '@pkgjs/parseargs': 0.11.0 + dev: true + /jest-diff@29.5.0: resolution: {integrity: sha512-LtxijLLZBduXnHSniy0WMdaHjmQnt3g5sa16W4p0HqukYTTsyTW3GD1q41TyGl5YFXj/5B2U6dlh5FM1LIMgxw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -7541,8 +7567,8 @@ packages: /path-parse@1.0.7: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} - /path-scurry@1.6.4: - resolution: {integrity: sha512-Qp/9IHkdNiXJ3/Kon++At2nVpnhRiPq/aSvQN+H3U1WZbvNRK0RIQK/o4HMqPoXjpuGJUEWpHSs6Mnjxqh3TQg==} + /path-scurry@1.7.0: + resolution: {integrity: sha512-UkZUeDjczjYRE495+9thsgcVgsaCPkaw80slmfVFgllxY+IO8ubTsOpFVjDPROBqJdHfVPUFRHPBV/WciOVfWg==} engines: {node: '>=16 || 14 >=14.17'} dependencies: lru-cache: 9.0.0 @@ -7620,8 +7646,9 @@ packages: engines: {node: '>=4'} dev: true - /postcss-calc@8.2.4(postcss@8.4.23): - resolution: {integrity: sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==} + /postcss-calc@9.0.0(postcss@8.4.23): + resolution: {integrity: sha512-B9BNW/SVh4SMJfoCQ6D9h1Wo7Yjqks7UdbiARJ16J5TIsQn5NEqwMF5joSgOYb26oJPUR5Uv3fCQ/4PvmZWeJQ==} + engines: {node: ^14 || ^16 || >=18.0} peerDependencies: postcss: ^8.2.2 dependencies: @@ -7734,8 +7761,8 @@ packages: stylehacks: 6.0.0(postcss@8.4.23) dev: false - /postcss-merge-rules@6.0.0(postcss@8.4.23): - resolution: {integrity: sha512-rCXkklftzEkniyv3f4mRCQzxD6oE4Quyh61uyWTUbCJ26Pv2hoz+fivJSsSBWxDBeScR4fKCfF3HHTcD7Ybqnw==} + /postcss-merge-rules@6.0.1(postcss@8.4.23): + resolution: {integrity: sha512-a4tlmJIQo9SCjcfiCcCMg/ZCEe0XTkl/xK0XHBs955GWg9xDX3NwP9pwZ78QUOWB8/0XCjZeJn98Dae0zg6AAw==} engines: {node: ^14 || ^16 || >=18.0} peerDependencies: postcss: ^8.2.15 @@ -8260,7 +8287,7 @@ packages: engines: {node: '>=14'} hasBin: true dependencies: - glob: 10.0.0 + glob: 10.2.2 dev: true /rollup-plugin-dts@5.3.0(rollup@3.21.0)(typescript@5.0.4): @@ -8477,6 +8504,11 @@ packages: /signal-exit@3.0.7: resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} + /signal-exit@4.0.1: + resolution: {integrity: sha512-uUWsN4aOxJAS8KOuf3QMyFtgm1pkb6I+KRZbRF/ghdf5T7sM+B1lLLzPDxswUjkmHyxQAVzEgG35E3NzDM9GVw==} + engines: {node: '>=14'} + dev: true + /sirv@1.0.19: resolution: {integrity: sha512-JuLThK3TnZG1TAKDwNIqNq6QA2afLOCcm+iE8D1Kj3GA40pSPsxQjjJl0J8X3tsR7T+CP1GavpzLwYkgVLWrZQ==} engines: {node: '>= 10'} @@ -9333,8 +9365,8 @@ packages: - supports-color - terser - /vite-plugin-checker@0.5.6(eslint@8.39.0)(typescript@5.0.4)(vite@4.3.3)(vue-tsc@1.6.1): - resolution: {integrity: sha512-ftRyON0gORUHDxcDt2BErmsikKSkfvl1i2DoP6Jt2zDO9InfvM6tqO1RkXhSjkaXEhKPea6YOnhFaZxW3BzudQ==} + /vite-plugin-checker@0.6.0(eslint@8.39.0)(typescript@5.0.4)(vite@4.3.3)(vue-tsc@1.6.1): + resolution: {integrity: sha512-DWZ9Hv2TkpjviPxAelNUt4Q3IhSGrx7xrwdM64NI+Q4dt8PaMWJJh4qGNtSrfEuiuIzWWo00Ksvh5It4Y3L9xQ==} engines: {node: '>=14.16'} peerDependencies: eslint: '>=7' @@ -9345,7 +9377,7 @@ packages: vite: '>=2.0.0' vls: '*' vti: '*' - vue-tsc: '*' + vue-tsc: '>=1.3.9' peerDependenciesMeta: eslint: optional: true @@ -9375,6 +9407,7 @@ packages: lodash.debounce: 4.0.8 lodash.pick: 4.4.0 npm-run-path: 4.0.1 + semver: 7.5.0 strip-ansi: 6.0.1 tiny-invariant: 1.3.1 typescript: 5.0.4 diff --git a/test/fixtures/runtime-compiler/nuxt.config.ts b/test/fixtures/runtime-compiler/nuxt.config.ts index 604986a3fccf..d321af9c18e0 100644 --- a/test/fixtures/runtime-compiler/nuxt.config.ts +++ b/test/fixtures/runtime-compiler/nuxt.config.ts @@ -1,8 +1,10 @@ // https://nuxt.com/docs/api/configuration/nuxt-config export default defineNuxtConfig({ experimental: { - runtimeVueCompiler: true, externalVue: false }, + vue: { + runtimeCompiler: true + }, builder: process.env.TEST_BUILDER as 'webpack' | 'vite' ?? 'vite' })