Use `happy-dom` again in vitest as it has caught up recently to `jsdom` in terms of features and it is a much more lightweight solution. I encountered [one bug](https://github.com/capricorn86/happy-dom/issues/1342), but it's an easy workaround until fixed. I regenerated the lockfile to get rid of the transitive dependencies so that's why the diff also has some upgrades in it. In total, this change removes 39 npm dependencies.tags/v1.22.0-rc0
@@ -84,7 +84,7 @@ | |||
"eslint-plugin-vue": "9.23.0", | |||
"eslint-plugin-vue-scoped-css": "2.7.2", | |||
"eslint-plugin-wc": "2.0.4", | |||
"jsdom": "24.0.0", | |||
"happy-dom": "14.2.0", | |||
"markdownlint-cli": "0.39.0", | |||
"postcss-html": "1.6.0", | |||
"stylelint": "16.2.1", |
@@ -6,7 +6,7 @@ export default defineConfig({ | |||
test: { | |||
include: ['web_src/**/*.test.js'], | |||
setupFiles: ['web_src/js/vitest.setup.js'], | |||
environment: 'jsdom', | |||
environment: 'happy-dom', | |||
testTimeout: 20000, | |||
open: false, | |||
allowOnly: true, |
@@ -205,7 +205,7 @@ export const SvgIcon = { | |||
// make the <SvgIcon class="foo" class-name="bar"> classes work together | |||
const classes = []; | |||
for (const cls of svgOuter.classList) { | |||
for (const cls of svgOuter.classList.values()) { | |||
classes.push(cls); | |||
} | |||
// TODO: drop the `className/class-name` prop in the future, only use "class" prop |