+
+ {{ value }}-{{ data }}
+
+
+
+
diff --git a/test/fixtures/basic/server/api/experimental/decorators.ts b/test/fixtures/basic/server/api/experimental/decorators.ts
new file mode 100644
index 0000000000..94de19fce7
--- /dev/null
+++ b/test/fixtures/basic/server/api/experimental/decorators.ts
@@ -0,0 +1,14 @@
+export default eventHandler((_event) => {
+ function something (_method: () => unknown) {
+ return () => 'decorated'
+ }
+
+ class SomeClass {
+ @something
+ public someMethod () {
+ return 'initial'
+ }
+ }
+
+ return new SomeClass().someMethod()
+})
diff --git a/test/fixtures/hmr/package.json b/test/fixtures/hmr/package.json
index 9901ba8b0c..b74ef3c44d 100644
--- a/test/fixtures/hmr/package.json
+++ b/test/fixtures/hmr/package.json
@@ -8,6 +8,6 @@
"nuxt": "workspace:*"
},
"engines": {
- "node": "^18.20.6 || ^20.9.0 || >=22.0.0"
+ "node": "^18.12.0 || ^20.9.0 || >=22.0.0"
}
}
diff --git a/test/fixtures/minimal-pages/package.json b/test/fixtures/minimal-pages/package.json
index b7e823a0fa..96d26034e2 100644
--- a/test/fixtures/minimal-pages/package.json
+++ b/test/fixtures/minimal-pages/package.json
@@ -8,6 +8,6 @@
"nuxt": "workspace:*"
},
"engines": {
- "node": "^18.20.6 || ^20.9.0 || >=22.0.0"
+ "node": "^18.12.0 || ^20.9.0 || >=22.0.0"
}
}
diff --git a/test/fixtures/minimal-types/package.json b/test/fixtures/minimal-types/package.json
index f2738601a0..01260993dd 100644
--- a/test/fixtures/minimal-types/package.json
+++ b/test/fixtures/minimal-types/package.json
@@ -9,6 +9,6 @@
"nuxt": "workspace:*"
},
"engines": {
- "node": "^18.20.6 || ^20.9.0 || >=22.0.0"
+ "node": "^18.12.0 || ^20.9.0 || >=22.0.0"
}
}
diff --git a/test/fixtures/minimal/package.json b/test/fixtures/minimal/package.json
index 676b1aade7..ec8752d986 100644
--- a/test/fixtures/minimal/package.json
+++ b/test/fixtures/minimal/package.json
@@ -8,6 +8,6 @@
"nuxt": "workspace:*"
},
"engines": {
- "node": "^18.20.6 || ^20.9.0 || >=22.0.0"
+ "node": "^18.12.0 || ^20.9.0 || >=22.0.0"
}
}
diff --git a/test/fixtures/runtime-compiler/package.json b/test/fixtures/runtime-compiler/package.json
index 49e9889c85..4c45c2f351 100644
--- a/test/fixtures/runtime-compiler/package.json
+++ b/test/fixtures/runtime-compiler/package.json
@@ -8,6 +8,6 @@
"nuxt": "workspace:*"
},
"engines": {
- "node": "^18.20.6 || ^20.9.0 || >=22.0.0"
+ "node": "^18.12.0 || ^20.9.0 || >=22.0.0"
}
}
diff --git a/test/fixtures/spa-loader/package.json b/test/fixtures/spa-loader/package.json
index 2988c53a6b..c6ded69cca 100644
--- a/test/fixtures/spa-loader/package.json
+++ b/test/fixtures/spa-loader/package.json
@@ -10,6 +10,6 @@
"nuxt": "workspace:*"
},
"engines": {
- "node": "^18.20.6 || ^20.9.0 || >=22.0.0"
+ "node": "^18.12.0 || ^20.9.0 || >=22.0.0"
}
}
diff --git a/test/fixtures/suspense/package.json b/test/fixtures/suspense/package.json
index fb3c5bbf74..ab5e89d39a 100644
--- a/test/fixtures/suspense/package.json
+++ b/test/fixtures/suspense/package.json
@@ -11,6 +11,6 @@
"typescript": "latest"
},
"engines": {
- "node": "^18.20.6 || ^20.9.0 || >=22.0.0"
+ "node": "^18.12.0 || ^20.9.0 || >=22.0.0"
}
}
diff --git a/test/nuxt/polyfills.test.ts b/test/nuxt/polyfills.test.ts
new file mode 100644
index 0000000000..6fb4b3ec75
--- /dev/null
+++ b/test/nuxt/polyfills.test.ts
@@ -0,0 +1,29 @@
+import { mount } from '@vue/test-utils'
+import { describe, expect, it, vi } from 'vitest'
+import { defineComponent, h } from 'vue'
+
+describe('app/compat', () => {
+ const Component = defineComponent({
+ setup () {
+ const visible = ref(false)
+ setInterval(() => {
+ visible.value = true
+ }, 1000)
+
+ return () => h('div', {}, visible.value ? h('span', { id: 'child' }) : {})
+ },
+ })
+ it('setInterval is not auto-imported', async () => {
+ vi.useFakeTimers()
+
+ const wrapper = mount(Component)
+
+ vi.advanceTimersByTime(1000)
+
+ await wrapper.vm.$nextTick()
+
+ expect(wrapper.find('#child').exists()).toBe(true)
+
+ vi.useRealTimers()
+ })
+})
diff --git a/vitest.nuxt.config.ts b/vitest.nuxt.config.ts
index 31f2c9e6a2..2aeda8d9eb 100644
--- a/vitest.nuxt.config.ts
+++ b/vitest.nuxt.config.ts
@@ -22,6 +22,9 @@ export default defineVitestConfig({
experimental: {
appManifest: process.env.TEST_MANIFEST !== 'manifest-off',
},
+ imports: {
+ polyfills: false,
+ },
},
},
},