diff --git a/RELEASE-NOTES-1.43 b/RELEASE-NOTES-1.43 index 0997b05ea2a..de6cbe28c97 100644 --- a/RELEASE-NOTES-1.43 +++ b/RELEASE-NOTES-1.43 @@ -158,12 +158,14 @@ For notes on 1.42.x and older releases, see HISTORY. * (T251790) Some development-only external libraries have been added for the new testing tools for front-end Vue components: - * Added jest and jest-environment-jsdom at v29.7.0. - * Added @vue/test-utils v2.4.6. - * Added @vue/vue3-jest v29.2.6. - * Added @babel/preset-env v7.25.4. - * Codex, already available via ResourceLoader, now has the npm versions, i.e. - @wikimedia/codex and @wikimedia/codex-icons, also installed for this testing. + * Added jest and jest-environment-jsdom at v29.7.0. + * Added @vue/test-utils v2.4.6. + * Added @vue/vue3-jest v29.2.6. + * Added @babel/preset-env v7.25.4. + * Added pinia v2.0.16 (already available via ResourceLoader). + * Added @pinia/testing v0.0.12. + * Codex, already available via ResourceLoader, now has the npm versions, i.e. + @wikimedia/codex and @wikimedia/codex-icons, also installed for testing. * … ==== Changed external libraries ==== diff --git a/package-lock.json b/package-lock.json index 5fae5c35df3..17ead6707bd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,6 +8,7 @@ "devDependencies": { "@apidevtools/swagger-parser": "^10.1.0", "@babel/preset-env": "7.25.4", + "@pinia/testing": "0.0.12", "@vue/test-utils": "2.4.6", "@vue/vue3-jest": "29.2.6", "@wdio/cli": "7.33.0", @@ -36,6 +37,7 @@ "karma-chrome-launcher": "3.1.0", "karma-mocha-reporter": "2.2.5", "karma-qunit": "4.2.0", + "pinia": "2.0.16", "qunit": "2.20.0", "stylelint-config-wikimedia": "0.17.2", "svgo": "3.2.0", @@ -3504,6 +3506,47 @@ "integrity": "sha512-XuySG1E38YScSJoMlqovLru4KTUNSjgVTIjyh7qMX6aNN5HY5Ct5LhRJdxO79JtTzKfzV/bnWpz+zquYrISsvw==", "dev": true }, + "node_modules/@pinia/testing": { + "version": "0.0.12", + "resolved": "https://registry.npmjs.org/@pinia/testing/-/testing-0.0.12.tgz", + "integrity": "sha512-OGJ5kZihiuNua9trREAVLiv8wAlxT2+gZAz3Cen1L4ch51MbSgY5/nbo9htYsP2my9dhbggBhecgYWlhejhRcQ==", + "dev": true, + "dependencies": { + "vue-demi": "*" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "pinia": ">=2.0.14" + } + }, + "node_modules/@pinia/testing/node_modules/vue-demi": { + "version": "0.14.10", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.10.tgz", + "integrity": "sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==", + "dev": true, + "hasInstallScript": true, + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } + } + }, "node_modules/@pkgjs/parseargs": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", @@ -4222,6 +4265,12 @@ "@vue/shared": "3.4.27" } }, + "node_modules/@vue/devtools-api": { + "version": "6.6.4", + "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.6.4.tgz", + "integrity": "sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==", + "dev": true + }, "node_modules/@vue/reactivity": { "version": "3.4.27", "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.4.27.tgz", @@ -13839,6 +13888,58 @@ "node": ">=4" } }, + "node_modules/pinia": { + "version": "2.0.16", + "resolved": "https://registry.npmjs.org/pinia/-/pinia-2.0.16.tgz", + "integrity": "sha512-9/LMVO+/epny1NBfC77vnps4g3JRezxhhoF1xLUk8mZkUIxVnwfEAIRiAX8mYBTD/KCwZqnDMqXc8w3eU0FQGg==", + "dev": true, + "dependencies": { + "@vue/devtools-api": "^6.1.4", + "vue-demi": "*" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "@vue/composition-api": "^1.4.0", + "typescript": ">=4.4.4", + "vue": "^2.6.14 || ^3.2.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + }, + "typescript": { + "optional": true + } + } + }, + "node_modules/pinia/node_modules/vue-demi": { + "version": "0.14.10", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.10.tgz", + "integrity": "sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==", + "dev": true, + "hasInstallScript": true, + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } + } + }, "node_modules/pinkie": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", @@ -20028,6 +20129,24 @@ "integrity": "sha512-XuySG1E38YScSJoMlqovLru4KTUNSjgVTIjyh7qMX6aNN5HY5Ct5LhRJdxO79JtTzKfzV/bnWpz+zquYrISsvw==", "dev": true }, + "@pinia/testing": { + "version": "0.0.12", + "resolved": "https://registry.npmjs.org/@pinia/testing/-/testing-0.0.12.tgz", + "integrity": "sha512-OGJ5kZihiuNua9trREAVLiv8wAlxT2+gZAz3Cen1L4ch51MbSgY5/nbo9htYsP2my9dhbggBhecgYWlhejhRcQ==", + "dev": true, + "requires": { + "vue-demi": "*" + }, + "dependencies": { + "vue-demi": { + "version": "0.14.10", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.10.tgz", + "integrity": "sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==", + "dev": true, + "requires": {} + } + } + }, "@pkgjs/parseargs": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", @@ -20669,6 +20788,12 @@ "@vue/shared": "3.4.27" } }, + "@vue/devtools-api": { + "version": "6.6.4", + "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.6.4.tgz", + "integrity": "sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==", + "dev": true + }, "@vue/reactivity": { "version": "3.4.27", "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.4.27.tgz", @@ -28066,6 +28191,25 @@ "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", "dev": true }, + "pinia": { + "version": "2.0.16", + "resolved": "https://registry.npmjs.org/pinia/-/pinia-2.0.16.tgz", + "integrity": "sha512-9/LMVO+/epny1NBfC77vnps4g3JRezxhhoF1xLUk8mZkUIxVnwfEAIRiAX8mYBTD/KCwZqnDMqXc8w3eU0FQGg==", + "dev": true, + "requires": { + "@vue/devtools-api": "^6.1.4", + "vue-demi": "*" + }, + "dependencies": { + "vue-demi": { + "version": "0.14.10", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.10.tgz", + "integrity": "sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==", + "dev": true, + "requires": {} + } + } + }, "pinkie": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", diff --git a/package.json b/package.json index 13d68e473f1..14a176ab9e3 100644 --- a/package.json +++ b/package.json @@ -16,6 +16,7 @@ "devDependencies": { "@apidevtools/swagger-parser": "^10.1.0", "@babel/preset-env": "7.25.4", + "@pinia/testing": "0.0.12", "@vue/test-utils": "2.4.6", "@vue/vue3-jest": "29.2.6", "@wdio/cli": "7.33.0", @@ -44,6 +45,7 @@ "karma-chrome-launcher": "3.1.0", "karma-mocha-reporter": "2.2.5", "karma-qunit": "4.2.0", + "pinia": "2.0.16", "qunit": "2.20.0", "stylelint-config-wikimedia": "0.17.2", "svgo": "3.2.0",