This run took 140 seconds.
From f84b9d133c200eb5a8ac94eb2009f55905e9d0c8 Mon Sep 17 00:00:00 2001
From: libraryupgrader <tools.libraryupgrader@tools.wmflabs.org>
Date: Sun, 14 Jun 2026 06:01:33 +0000
Subject: [PATCH] build: Updating npm dependencies
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
* grunt-stylelint: 0.20.1 → 0.21.0
* stylelint-config-wikimedia: 0.18.0 → 0.19.2
* @wikimedia/codex: 2.4.0 → 2.6.0
* @wikimedia/codex-icons: 2.4.0 → 2.6.0
Change-Id: I6de5cface5f36b2405026670a7a64ee000f005b1
---
gateway_forms/mustache/forms.css | 1 -
package-lock.json | 1049 ++++++++++++++++++++----------
package.json | 8 +-
3 files changed, 719 insertions(+), 339 deletions(-)
diff --git a/gateway_forms/mustache/forms.css b/gateway_forms/mustache/forms.css
index ab8546b..99ecb9b 100644
--- a/gateway_forms/mustache/forms.css
+++ b/gateway_forms/mustache/forms.css
@@ -83,7 +83,6 @@ select#bank_account_type {
/* NEW STUFF */
ul#moreinfolinks li {
list-style: none;
- list-style-image: none;
}
.form .options-h {
diff --git a/package-lock.json b/package-lock.json
index 4d71d66..7c0cf05 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -11,20 +11,20 @@
"@vue/compiler-sfc": "3.5.13",
"@vue/test-utils": "2.4.6",
"@vue/vue3-jest": "29.2.6",
- "@wikimedia/codex": "2.4.0",
- "@wikimedia/codex-icons": "2.4.0",
+ "@wikimedia/codex": "2.6.0",
+ "@wikimedia/codex-icons": "2.6.0",
"babel-core": "^6.26.3",
"eslint-config-wikimedia": "0.32.4",
"eslint-plugin-jest": "27.2.1",
"grunt": "1.6.2",
"grunt-banana-checker": "0.13.0",
"grunt-eslint": "24.3.0",
- "grunt-stylelint": "0.20.1",
+ "grunt-stylelint": "0.21.0",
"jest": "29.7.0",
"jest-environment-jsdom": "29.7.0",
"jest-when": "^3.2.1",
"jquery": "^3.7.1",
- "stylelint-config-wikimedia": "0.18.0",
+ "stylelint-config-wikimedia": "0.19.2",
"vue": "3.5.13",
"vue-router": "4.5.1"
}
@@ -1680,10 +1680,89 @@
"integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==",
"dev": true
},
+ "node_modules/@cacheable/memory": {
+ "version": "2.0.9",
+ "resolved": "https://registry.npmjs.org/@cacheable/memory/-/memory-2.0.9.tgz",
+ "integrity": "sha512-HdMx6DoGywB30vacDbBsITbIX4pgFqj1zsrV58jZBUw3klzkNoXhj7qOqAgledhxG7YZI5rBSJg7Zp8/VG0DuA==",
+ "dev": true,
+ "dependencies": {
+ "@cacheable/utils": "^2.4.1",
+ "@keyv/bigmap": "^1.3.1",
+ "hookified": "^1.15.1",
+ "keyv": "^5.6.0"
+ }
+ },
+ "node_modules/@cacheable/memory/node_modules/@keyv/bigmap": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/@keyv/bigmap/-/bigmap-1.3.1.tgz",
+ "integrity": "sha512-WbzE9sdmQtKy8vrNPa9BRnwZh5UF4s1KTmSK0KUVLo3eff5BlQNNWDnFOouNpKfPKDnms9xynJjsMYjMaT/aFQ==",
+ "dev": true,
+ "dependencies": {
+ "hashery": "^1.4.0",
+ "hookified": "^1.15.0"
+ },
+ "engines": {
+ "node": ">= 18"
+ },
+ "peerDependencies": {
+ "keyv": "^5.6.0"
+ }
+ },
+ "node_modules/@cacheable/memory/node_modules/keyv": {
+ "version": "5.6.0",
+ "resolved": "https://registry.npmjs.org/keyv/-/keyv-5.6.0.tgz",
+ "integrity": "sha512-CYDD3SOtsHtyXeEORYRx2qBtpDJFjRTGXUtmNEMGyzYOKj1TE3tycdlho7kA1Ufx9OYWZzg52QFBGALTirzDSw==",
+ "dev": true,
+ "dependencies": {
+ "@keyv/serialize": "^1.1.1"
+ }
+ },
+ "node_modules/@cacheable/utils": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/@cacheable/utils/-/utils-2.4.1.tgz",
+ "integrity": "sha512-eiFgzCbIneyMlLOmNG4g9xzF7Hv3Mga4LjxjcSC/ues6VYq2+gUbQI8JqNuw/ZM8tJIeIaBGpswAsqV2V7ApgA==",
+ "dev": true,
+ "dependencies": {
+ "hashery": "^1.5.1",
+ "keyv": "^5.6.0"
+ }
+ },
+ "node_modules/@cacheable/utils/node_modules/keyv": {
+ "version": "5.6.0",
+ "resolved": "https://registry.npmjs.org/keyv/-/keyv-5.6.0.tgz",
+ "integrity": "sha512-CYDD3SOtsHtyXeEORYRx2qBtpDJFjRTGXUtmNEMGyzYOKj1TE3tycdlho7kA1Ufx9OYWZzg52QFBGALTirzDSw==",
+ "dev": true,
+ "dependencies": {
+ "@keyv/serialize": "^1.1.1"
+ }
+ },
+ "node_modules/@csstools/css-calc": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/@csstools/css-calc/-/css-calc-3.2.1.tgz",
+ "integrity": "sha512-DtdHlgXh5ZkA43cwBcAm+huzgJiwx3ZTWVjBs94kwz2xKqSimDA3lBgCjphYgwgVUMWatSM0pDd8TILB1yrVVg==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/csstools"
+ },
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/csstools"
+ }
+ ],
+ "engines": {
+ "node": ">=20.19.0"
+ },
+ "peerDependencies": {
+ "@csstools/css-parser-algorithms": "^4.0.0",
+ "@csstools/css-tokenizer": "^4.0.0"
+ }
+ },
"node_modules/@csstools/css-parser-algorithms": {
- "version": "3.0.5",
- "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-3.0.5.tgz",
- "integrity": "sha512-DaDeUkXZKjdGhgYaHNJTV9pV7Y9B3b644jCLs9Upc3VeNGg6LWARAT6O+Q+/COo+2gg/bM5rhpMAtf70WqfBdQ==",
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-4.0.0.tgz",
+ "integrity": "sha512-+B87qS7fIG3L5h3qwJ/IFbjoVoOe/bpOdh9hAjXbvx0o8ImEmUsGXN0inFOnk2ChCFgqkkGFQ+TpM5rbhkKe4w==",
"dev": true,
"funding": [
{
@@ -1696,16 +1775,16 @@
}
],
"engines": {
- "node": ">=18"
+ "node": ">=20.19.0"
},
"peerDependencies": {
- "@csstools/css-tokenizer": "^3.0.4"
+ "@csstools/css-tokenizer": "^4.0.0"
}
},
"node_modules/@csstools/css-tokenizer": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-3.0.4.tgz",
- "integrity": "sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==",
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-4.0.0.tgz",
+ "integrity": "sha512-QxULHAm7cNu72w97JUNCBFODFaXpbDg+dP8b/oWFAZ2MTRppA3U00Y2L1HqaS4J6yBqxwa/Y3nMBaxVKbB/NsA==",
"dev": true,
"funding": [
{
@@ -1718,13 +1797,13 @@
}
],
"engines": {
- "node": ">=18"
+ "node": ">=20.19.0"
}
},
"node_modules/@csstools/media-query-list-parser": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/@csstools/media-query-list-parser/-/media-query-list-parser-4.0.3.tgz",
- "integrity": "sha512-HAYH7d3TLRHDOUQK4mZKf9k9Ph/m8Akstg66ywKR4SFAigjs3yBiUeZtFxywiTm5moZMAp/5W/ZuFnNXXYLuuQ==",
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/@csstools/media-query-list-parser/-/media-query-list-parser-5.0.0.tgz",
+ "integrity": "sha512-T9lXmZOfnam3eMERPsszjY5NK0jX8RmThmmm99FZ8b7z8yMaFZWKwLWGZuTwdO3ddRY5fy13GmmEYZXB4I98Eg==",
"dev": true,
"funding": [
{
@@ -1737,21 +1816,11 @@
}
],
"engines": {
- "node": ">=18"
+ "node": ">=20.19.0"
},
"peerDependencies": {
- "@csstools/css-parser-algorithms": "^3.0.5",
- "@csstools/css-tokenizer": "^3.0.4"
- }
- },
- "node_modules/@dual-bundle/import-meta-resolve": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/@dual-bundle/import-meta-resolve/-/import-meta-resolve-4.1.0.tgz",
- "integrity": "sha512-+nxncfwHM5SgAtrVzgpzJOI1ol0PkumhVo469KCf9lUi21IGcY90G98VuHm9VRrUypmAzawAHO9bs6hqeADaVg==",
- "dev": true,
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/wooorm"
+ "@csstools/css-parser-algorithms": "^4.0.0",
+ "@csstools/css-tokenizer": "^4.0.0"
}
},
"node_modules/@es-joy/jsdoccomment": {
@@ -2866,9 +2935,9 @@
}
},
"node_modules/@keyv/serialize": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@keyv/serialize/-/serialize-1.1.0.tgz",
- "integrity": "sha512-RlDgexML7Z63Q8BSaqhXdCYNBy/JQnqYIwxofUrNLGCblOMHp+xux2Q8nLMLlPpgHQPoU0Do8Z6btCpRBEqZ8g==",
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/@keyv/serialize/-/serialize-1.1.1.tgz",
+ "integrity": "sha512-dXn3FZhPv0US+7dtJsIi2R+c7qWYiReoEh5zUntWCf4oSpMNib8FDhSoed6m3QyZdx5hK7iLFkYk3rNxwt8vTA==",
"dev": true
},
"node_modules/@mdn/browser-compat-data": {
@@ -2946,6 +3015,18 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
+ "node_modules/@sindresorhus/merge-streams": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-4.0.0.tgz",
+ "integrity": "sha512-tlqY9xq5ukxTUZBmoOp+m61cqwQD5pHJtFY3Mn8CA8ps6yghLH/Hw8UPdqg4OLmFW3IFlcXnQNmo/dh8HzXYIQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
"node_modules/@sinonjs/commons": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz",
@@ -3158,72 +3239,52 @@
}
},
"node_modules/@stylistic/stylelint-config": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@stylistic/stylelint-config/-/stylelint-config-2.0.0.tgz",
- "integrity": "sha512-8J4YAxggy2Nzkb8KJIOLbtMXTPZ5gpKVmyhiiuKEUgCl9XFND5lM0e/ZZBMGEYZ68h5qcsS/jgg1wh235erRAw==",
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/@stylistic/stylelint-config/-/stylelint-config-5.0.0.tgz",
+ "integrity": "sha512-AW6S27wEm4DzB+uOZMvRkONIu0ba50VRbFte7qYJgGP4dacS8kAuj8HZJ+s+8kE4GK3XXBcSKLb75a+NfJlbiQ==",
"dev": true,
"dependencies": {
- "@stylistic/stylelint-plugin": "^3.0.0"
+ "@stylistic/stylelint-plugin": "^5.1.0"
},
"engines": {
- "node": "^18.12 || >=20.9"
+ "node": ">=20.19.0"
},
"peerDependencies": {
- "stylelint": "^16.8.0"
+ "stylelint": "^17.6.0"
}
},
"node_modules/@stylistic/stylelint-plugin": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/@stylistic/stylelint-plugin/-/stylelint-plugin-3.1.1.tgz",
- "integrity": "sha512-XagAHHIa528EvyGybv8EEYGK5zrVW74cHpsjhtovVATbhDRuJYfE+X4HCaAieW9lCkwbX6L+X0I4CiUG3w/hFw==",
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/@stylistic/stylelint-plugin/-/stylelint-plugin-5.1.0.tgz",
+ "integrity": "sha512-TFvKCbJUEWUYCD+rDv45qhnStO6nRtbBngaCblS2JGh8c95S3jJi3fIotfF6EDo4IVM15UPa65WP+kp6GNvXRA==",
"dev": true,
"dependencies": {
- "@csstools/css-parser-algorithms": "^3.0.1",
- "@csstools/css-tokenizer": "^3.0.1",
- "@csstools/media-query-list-parser": "^3.0.1",
- "is-plain-object": "^5.0.0",
- "postcss-selector-parser": "^6.1.2",
+ "@csstools/css-parser-algorithms": "^4.0.0",
+ "@csstools/css-tokenizer": "^4.0.0",
+ "@csstools/media-query-list-parser": "^5.0.0",
+ "postcss": "^8.5.8",
+ "postcss-selector-parser": "^7.1.1",
"postcss-value-parser": "^4.2.0",
- "style-search": "^0.1.0",
- "stylelint": "^16.8.2"
+ "style-search": "^0.1.0"
},
"engines": {
- "node": "^18.12 || >=20.9"
+ "node": ">=20.19.0"
},
"peerDependencies": {
- "stylelint": "^16.8.0"
+ "stylelint": "^17.6.0"
}
},
- "node_modules/@stylistic/stylelint-plugin/node_modules/@csstools/media-query-list-parser": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@csstools/media-query-list-parser/-/media-query-list-parser-3.0.1.tgz",
- "integrity": "sha512-HNo8gGD02kHmcbX6PvCoUuOQvn4szyB9ca63vZHKX5A81QytgDG4oxG4IaEfHTlEZSZ6MjPEMWIVU+zF2PZcgw==",
+ "node_modules/@stylistic/stylelint-plugin/node_modules/postcss-selector-parser": {
+ "version": "7.1.4",
+ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.4.tgz",
+ "integrity": "sha512-HeP7D2wyhkR+XaK6v4W8oRF62Dsz4flyuczALJp61GckGm42u1saSSJ/0auvcBqxs3jMRFEcPK34At/0JBKdOg==",
"dev": true,
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/csstools"
- },
- {
- "type": "opencollective",
- "url": "https://opencollective.com/csstools"
- }
- ],
- "engines": {
- "node": ">=18"
+ "dependencies": {
+ "cssesc": "^3.0.0",
+ "util-deprecate": "^1.0.2"
},
- "peerDependencies": {
- "@csstools/css-parser-algorithms": "^3.0.1",
- "@csstools/css-tokenizer": "^3.0.1"
- }
- },
- "node_modules/@stylistic/stylelint-plugin/node_modules/is-plain-object": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz",
- "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==",
- "dev": true,
"engines": {
- "node": ">=0.10.0"
+ "node": ">=4"
}
},
"node_modules/@tootallnate/once": {
@@ -3831,16 +3892,16 @@
"dev": true
},
"node_modules/@wikimedia/codex": {
- "version": "2.4.0",
- "resolved": "https://registry.npmjs.org/@wikimedia/codex/-/codex-2.4.0.tgz",
- "integrity": "sha512-j/I1gGbTo6pttjmwyYw9/3CeInK6mpBm2FVfABJk+B1Ylw5DskX+TqeCdKghwxSkxBt0ODbUTBYdFyafk+7ajg==",
+ "version": "2.6.0",
+ "resolved": "https://registry.npmjs.org/@wikimedia/codex/-/codex-2.6.0.tgz",
+ "integrity": "sha512-ul/WXyxZbMV3PrWd0tGATuhTwUijRhHQxEJ+k+NukzcbY4MTItU3zEiw0Ye3wgNGQBMcCDt34pRGF3tXQwwDgA==",
"dev": true,
"dependencies": {
"@floating-ui/vue": "1.0.6",
- "@wikimedia/codex-icons": "2.4.0"
+ "@wikimedia/codex-icons": "2.6.0"
},
"engines": {
- "node": ">=20.19.1",
+ "node": ">=20.20.2",
"npm": ">=10.8.2"
},
"peerDependencies": {
@@ -3848,12 +3909,12 @@
}
},
"node_modules/@wikimedia/codex-icons": {
- "version": "2.4.0",
- "resolved": "https://registry.npmjs.org/@wikimedia/codex-icons/-/codex-icons-2.4.0.tgz",
- "integrity": "sha512-BBtrzLR7r9ShxCMYfsx9XaKJu/peqt5Y/jtvWx3E2G5aL/Y/pIWAkv8NIvU+ztKklbHySLH5jSvVZVKxxvU0Ew==",
+ "version": "2.6.0",
+ "resolved": "https://registry.npmjs.org/@wikimedia/codex-icons/-/codex-icons-2.6.0.tgz",
+ "integrity": "sha512-U0FK8kxhIrX5hAkFGZ0uWsR4arYjWw6GLCMZmrG1qvbX7+CFoVrhJQL7alogRdCrBiQBr8CUQOquOP5fUXPIBQ==",
"dev": true,
"engines": {
- "node": ">=20.19.1",
+ "node": ">=20.20.2",
"npm": ">=10.8.2"
}
},
@@ -4708,22 +4769,25 @@
}
},
"node_modules/cacheable": {
- "version": "1.10.3",
- "resolved": "https://registry.npmjs.org/cacheable/-/cacheable-1.10.3.tgz",
- "integrity": "sha512-M6p10iJ/VT0wT7TLIGUnm958oVrU2cUK8pQAVU21Zu7h8rbk/PeRtRWrvHJBql97Bhzk3g1N6+2VKC+Rjxna9Q==",
+ "version": "2.3.5",
+ "resolved": "https://registry.npmjs.org/cacheable/-/cacheable-2.3.5.tgz",
+ "integrity": "sha512-EQfaKe09tl615iNvq/TBRWTFf1AKJNXYQSsMx0Z3EI0nA+pVsVPS8wJhnRlkbdacKPh1d0qVIhwTc2zsQNFEEg==",
"dev": true,
"dependencies": {
- "hookified": "^1.10.0",
- "keyv": "^5.4.0"
+ "@cacheable/memory": "^2.0.8",
+ "@cacheable/utils": "^2.4.1",
+ "hookified": "^1.15.0",
+ "keyv": "^5.6.0",
+ "qified": "^0.10.1"
}
},
"node_modules/cacheable/node_modules/keyv": {
- "version": "5.5.0",
- "resolved": "https://registry.npmjs.org/keyv/-/keyv-5.5.0.tgz",
- "integrity": "sha512-QG7qR2tijh1ftOvClut4YKKg1iW6cx3GZsKoGyJPxHkGWK9oJhG9P3j5deP0QQOGDowBMVQFaP+Vm4NpGYvmIQ==",
+ "version": "5.6.0",
+ "resolved": "https://registry.npmjs.org/keyv/-/keyv-5.6.0.tgz",
+ "integrity": "sha512-CYDD3SOtsHtyXeEORYRx2qBtpDJFjRTGXUtmNEMGyzYOKj1TE3tycdlho7kA1Ufx9OYWZzg52QFBGALTirzDSw==",
"dev": true,
"dependencies": {
- "@keyv/serialize": "^1.1.0"
+ "@keyv/serialize": "^1.1.1"
}
},
"node_modules/call-bind-apply-helpers": {
@@ -4973,9 +5037,9 @@
"dev": true
},
"node_modules/cosmiconfig": {
- "version": "9.0.0",
- "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-9.0.0.tgz",
- "integrity": "sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==",
+ "version": "9.0.2",
+ "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-9.0.2.tgz",
+ "integrity": "sha512-gtTZxTDau1wL7Y7zifc2dd8jHSK/k6BTx/2Xp/BpdlAdnlYWFVt7qhJqgwi7637yRwRQ3qL4ZidbB4I8tA5VOg==",
"dev": true,
"dependencies": {
"env-paths": "^2.2.1",
@@ -5005,10 +5069,20 @@
"dev": true
},
"node_modules/cosmiconfig/node_modules/js-yaml": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz",
- "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==",
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.2.0.tgz",
+ "integrity": "sha512-ePWsvanv0DWuDRsW8dnt+R4jQ31SCRCQ7hhNcPXZPsoBZiemuZNYGf7adZdqX2D86j6rvKp3RpCxVTSb8WQlOw==",
"dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/puzrin"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/nodeca"
+ }
+ ],
"dependencies": {
"argparse": "^2.0.1"
},
@@ -5122,12 +5196,12 @@
}
},
"node_modules/css-functions-list": {
- "version": "3.2.3",
- "resolved": "https://registry.npmjs.org/css-functions-list/-/css-functions-list-3.2.3.tgz",
- "integrity": "sha512-IQOkD3hbR5KrN93MtcYuad6YPuTSUhntLHDuLEbFWE+ff2/XSZNdZG+LcbbIW5AXKg/WFIfYItIzVoHngHXZzA==",
+ "version": "3.3.3",
+ "resolved": "https://registry.npmjs.org/css-functions-list/-/css-functions-list-3.3.3.tgz",
+ "integrity": "sha512-8HFEBPKhOpJPEPu70wJJetjKta86Gw9+CCyCnB3sui2qQfOvRyqBy4IKLKKAwdMpWb2lHXWk9Wb4Z6AmaUT1Pg==",
"dev": true,
"engines": {
- "node": ">=12 || >=16"
+ "node": ">=12"
}
},
"node_modules/css-tokenize": {
@@ -7439,6 +7513,18 @@
"node": "6.* || 8.* || >= 10.*"
}
},
+ "node_modules/get-east-asian-width": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.6.0.tgz",
+ "integrity": "sha512-QRbvDIbx6YklUe6RxeTeleMR0yv3cYH6PsPZHcnVn7xv7zO1BHN8r0XETu8n6Ye3Q+ahtSarc3WgtNWmehIBfA==",
+ "dev": true,
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
"node_modules/get-intrinsic": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz",
@@ -8025,18 +8111,18 @@
}
},
"node_modules/grunt-stylelint": {
- "version": "0.20.1",
- "resolved": "https://registry.npmjs.org/grunt-stylelint/-/grunt-stylelint-0.20.1.tgz",
- "integrity": "sha512-tDep9ceEerB+fK6CkzPBXu5qPM7RuwCRgfrtwugEyYYnxINreMZktqQU5eoTW+MhhFj81uWQQnxf+c4geyAmQg==",
+ "version": "0.21.0",
+ "resolved": "https://registry.npmjs.org/grunt-stylelint/-/grunt-stylelint-0.21.0.tgz",
+ "integrity": "sha512-iQBZY3mqd43LyFFY5QeUZI+VblZaS/6u7X8ed55qdYNLcPoku9JnAjzNONzlUq61bEKKqJKD7Zw/IpodDLro8Q==",
"dev": true,
"dependencies": {
"chalk": "^4.1.2"
},
"engines": {
- "node": ">=18.12.0"
+ "node": ">=20.19.5"
},
"peerDependencies": {
- "stylelint": "16.x"
+ "stylelint": "17.x"
}
},
"node_modules/grunt-stylelint/node_modules/ansi-styles": {
@@ -8166,6 +8252,18 @@
"url": "https://github.com/sponsors/ljharb"
}
},
+ "node_modules/hashery": {
+ "version": "1.5.1",
+ "resolved": "https://registry.npmjs.org/hashery/-/hashery-1.5.1.tgz",
+ "integrity": "sha512-iZyKG96/JwPz1N55vj2Ie2vXbhu440zfUfJvSwEqEbeLluk7NnapfGqa7LH0mOsnDxTF85Mx8/dyR6HfqcbmbQ==",
+ "dev": true,
+ "dependencies": {
+ "hookified": "^1.15.0"
+ },
+ "engines": {
+ "node": ">=20"
+ }
+ },
"node_modules/hasown": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz",
@@ -8213,9 +8311,9 @@
}
},
"node_modules/hookified": {
- "version": "1.11.0",
- "resolved": "https://registry.npmjs.org/hookified/-/hookified-1.11.0.tgz",
- "integrity": "sha512-aDdIN3GyU5I6wextPplYdfmWCo+aLmjjVbntmX6HLD5RCi/xKsivYEBhnRD+d9224zFf008ZpLMPlWF0ZodYZw==",
+ "version": "1.15.1",
+ "resolved": "https://registry.npmjs.org/hookified/-/hookified-1.15.1.tgz",
+ "integrity": "sha512-MvG/clsADq1GPM2KGo2nyfaWVyn9naPiXrqIe4jYjXNZQt238kWyOGrsyc/DmRAQ+Re6yeo6yX/yoNCG5KAEVg==",
"dev": true
},
"node_modules/hosted-git-info": {
@@ -8259,12 +8357,12 @@
"dev": true
},
"node_modules/html-tags": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.3.1.tgz",
- "integrity": "sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==",
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-5.1.0.tgz",
+ "integrity": "sha512-n6l5uca7/y5joxZ3LUePhzmBFUJ+U2YWzhMa8XUTecSeSlQiZdF5XAd/Q3/WUl0VsXgUwWi8I7CNIwdI5WN1SQ==",
"dev": true,
"engines": {
- "node": ">=8"
+ "node": ">=20.10"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
@@ -8390,6 +8488,16 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
+ "node_modules/import-meta-resolve": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/import-meta-resolve/-/import-meta-resolve-4.2.0.tgz",
+ "integrity": "sha512-Iqv2fzaTQN28s/FwZAoFq0ZSs/7hMAHJVX+w8PZl3cY19Pxk6jFFalxQoIfW2826i/fDLXv8IiEZRIT0lDuWcg==",
+ "dev": true,
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/wooorm"
+ }
+ },
"node_modules/imurmurhash": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
@@ -10709,12 +10817,6 @@
"node": ">=6"
}
},
- "node_modules/known-css-properties": {
- "version": "0.37.0",
- "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.37.0.tgz",
- "integrity": "sha512-JCDrsP4Z1Sb9JwG0aJ8Eo2r7k4Ou5MwmThS/6lcIe1ICyb7UBJKGRIUUdqc2ASdE/42lgz6zFUnzAIhtXnBVrQ==",
- "dev": true
- },
"node_modules/leven": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz",
@@ -10916,9 +11018,9 @@
}
},
"node_modules/mathml-tag-names": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz",
- "integrity": "sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==",
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-4.0.0.tgz",
+ "integrity": "sha512-aa6AU2Pcx0VP/XWnh8IGL0SYSgQHDT6Ucror2j2mXeFAlN3ahaNs8EZtG1YiticMkSLj3Gt6VPFfZogt7G5iFQ==",
"dev": true,
"funding": {
"type": "github",
@@ -10932,12 +11034,12 @@
"dev": true
},
"node_modules/meow": {
- "version": "13.2.0",
- "resolved": "https://registry.npmjs.org/meow/-/meow-13.2.0.tgz",
- "integrity": "sha512-pxQJQzB6djGPXh08dacEloMFopsOqGVRKFPYvPOt9XDZ1HasbgDZA74CJGreSU4G3Ak7EFJGoiH2auq+yXISgA==",
+ "version": "14.1.0",
+ "resolved": "https://registry.npmjs.org/meow/-/meow-14.1.0.tgz",
+ "integrity": "sha512-EDYo6VlmtnumlcBCbh1gLJ//9jvM/ndXHfVXIFrZVr6fGcwTUyCTFNTLCKuY3ffbK8L/+3Mzqnd58RojiZqHVw==",
"dev": true,
"engines": {
- "node": ">=18"
+ "node": ">=20"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
@@ -11090,9 +11192,9 @@
}
},
"node_modules/nanoid": {
- "version": "3.3.11",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz",
- "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==",
+ "version": "3.3.12",
+ "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.12.tgz",
+ "integrity": "sha512-ZB9RH/39qpq5Vu6Y+NmUaFhQR6pp+M2Xt76XBnEwDaGcVAqhlvxrl3B2bKS5D3NH3QR76v3aSrKaF/Kiy7lEtQ==",
"dev": true,
"funding": [
{
@@ -11605,9 +11707,9 @@
}
},
"node_modules/postcss": {
- "version": "8.5.12",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.12.tgz",
- "integrity": "sha512-W62t/Se6rA0Az3DfCL0AqJwXuKwBeYg6nOaIgzP+xZ7N5BFCI7DYi1qs6ygUYT6rvfi6t9k65UMLJC+PHZpDAA==",
+ "version": "8.5.15",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.15.tgz",
+ "integrity": "sha512-FfR8sjd4em2T6fb3I2MwAJU7HWVMr9zba+enmQeeWFfCbm+UOC/0X4DS8XtpUTMwWMGbjKYP7xjfNekzyGmB3A==",
"dev": true,
"funding": [
{
@@ -11624,7 +11726,7 @@
}
],
"dependencies": {
- "nanoid": "^3.3.11",
+ "nanoid": "^3.3.12",
"picocolors": "^1.1.1",
"source-map-js": "^1.2.1"
},
@@ -11633,14 +11735,14 @@
}
},
"node_modules/postcss-html": {
- "version": "1.7.0",
- "resolved": "https://registry.npmjs.org/postcss-html/-/postcss-html-1.7.0.tgz",
- "integrity": "sha512-MfcMpSUIaR/nNgeVS8AyvyDugXlADjN9AcV7e5rDfrF1wduIAGSkL4q2+wgrZgA3sHVAHLDO9FuauHhZYW2nBw==",
+ "version": "1.8.1",
+ "resolved": "https://registry.npmjs.org/postcss-html/-/postcss-html-1.8.1.tgz",
+ "integrity": "sha512-OLF6P7qctfAWayOhLpcVnTGqVeJzu2W3WpIYelfz2+JV5oGxfkcEvweN9U4XpeqE0P98dcD9ssusGwlF0TK0uQ==",
"dev": true,
"dependencies": {
"htmlparser2": "^8.0.0",
"js-tokens": "^9.0.0",
- "postcss": "^8.4.0",
+ "postcss": "^8.5.0",
"postcss-safe-parser": "^6.0.0"
},
"engines": {
@@ -11681,12 +11783,6 @@
"postcss": "^8.3.5"
}
},
- "node_modules/postcss-resolve-nested-selector": {
- "version": "0.1.6",
- "resolved": "https://registry.npmjs.org/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.6.tgz",
- "integrity": "sha512-0sglIs9Wmkzbr8lQwEyIzlDOOC9bGmfVKcJTaxv3vMmd3uo4o4DerC3En0bnmgceeql9BfC8hRkp7cg0fjdVqw==",
- "dev": true
- },
"node_modules/postcss-safe-parser": {
"version": "7.0.1",
"resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-7.0.1.tgz",
@@ -11832,6 +11928,24 @@
}
]
},
+ "node_modules/qified": {
+ "version": "0.10.1",
+ "resolved": "https://registry.npmjs.org/qified/-/qified-0.10.1.tgz",
+ "integrity": "sha512-+Owyggi9IxT1ePKGafcI87ubSmxol6smwJ+RAHDQlx9+9cPwFWDiKFFCPuWhr9ignlGpZ9vDQLw67N4dcTVFEA==",
+ "dev": true,
+ "dependencies": {
+ "hookified": "^2.1.1"
+ },
+ "engines": {
+ "node": ">=20"
+ }
+ },
+ "node_modules/qified/node_modules/hookified": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/hookified/-/hookified-2.2.0.tgz",
+ "integrity": "sha512-p/LgFzRN5FeoD3DLS6bkUapeye6E4SI6yJs6KetENd18S+FBthqYq2amJUWpt5z0EQwwHemidjY5OqJGEKm5uA==",
+ "dev": true
+ },
"node_modules/querystringify": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz",
@@ -12595,9 +12709,9 @@
"dev": true
},
"node_modules/stylelint": {
- "version": "16.23.1",
- "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-16.23.1.tgz",
- "integrity": "sha512-dNvDTsKV1U2YtiUDfe9d2gp902veFeo3ecCWdGlmLm2WFrAV0+L5LoOj/qHSBABQwMsZPJwfC4bf39mQm1S5zw==",
+ "version": "17.13.0",
+ "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-17.13.0.tgz",
+ "integrity": "sha512-G1WYzMerp7ihOaIe9VJCHLt12MoAD2QLf1AFerYP37+BCRBUK5UCpq8e/mN+zCIaJPKQcaxhE4WlPmqdiOx/gw==",
"dev": true,
"funding": [
{
@@ -12609,57 +12723,55 @@
"url": "https://github.com/sponsors/stylelint"
}
],
+ "peer": true,
"dependencies": {
- "@csstools/css-parser-algorithms": "^3.0.5",
- "@csstools/css-tokenizer": "^3.0.4",
- "@csstools/media-query-list-parser": "^4.0.3",
- "@csstools/selector-specificity": "^5.0.0",
- "@dual-bundle/import-meta-resolve": "^4.1.0",
- "balanced-match": "^2.0.0",
+ "@csstools/css-calc": "^3.2.1",
+ "@csstools/css-parser-algorithms": "^4.0.0",
+ "@csstools/css-syntax-patches-for-csstree": "^1.1.4",
+ "@csstools/css-tokenizer": "^4.0.0",
+ "@csstools/media-query-list-parser": "^5.0.0",
+ "@csstools/selector-resolve-nested": "^4.0.0",
+ "@csstools/selector-specificity": "^6.0.0",
"colord": "^2.9.3",
- "cosmiconfig": "^9.0.0",
- "css-functions-list": "^3.2.3",
- "css-tree": "^3.1.0",
- "debug": "^4.4.1",
+ "cosmiconfig": "^9.0.1",
+ "css-functions-list": "^3.3.3",
+ "css-tree": "^3.2.1",
+ "debug": "^4.4.3",
"fast-glob": "^3.3.3",
"fastest-levenshtein": "^1.0.16",
- "file-entry-cache": "^10.1.3",
+ "file-entry-cache": "^11.1.3",
"global-modules": "^2.0.0",
- "globby": "^11.1.0",
+ "globby": "^16.2.0",
"globjoin": "^0.1.4",
- "html-tags": "^3.3.1",
+ "html-tags": "^5.1.0",
"ignore": "^7.0.5",
- "imurmurhash": "^0.1.4",
- "is-plain-object": "^5.0.0",
- "known-css-properties": "^0.37.0",
- "mathml-tag-names": "^2.1.3",
- "meow": "^13.2.0",
+ "import-meta-resolve": "^4.2.0",
+ "mathml-tag-names": "^4.0.0",
+ "meow": "^14.1.0",
"micromatch": "^4.0.8",
"normalize-path": "^3.0.0",
"picocolors": "^1.1.1",
- "postcss": "^8.5.6",
- "postcss-resolve-nested-selector": "^0.1.6",
+ "postcss": "^8.5.15",
"postcss-safe-parser": "^7.0.1",
- "postcss-selector-parser": "^7.1.0",
+ "postcss-selector-parser": "^7.1.1",
"postcss-value-parser": "^4.2.0",
- "resolve-from": "^5.0.0",
- "string-width": "^4.2.3",
- "supports-hyperlinks": "^3.2.0",
+ "string-width": "^8.2.1",
+ "supports-hyperlinks": "^4.4.0",
"svg-tags": "^1.0.0",
"table": "^6.9.0",
- "write-file-atomic": "^5.0.1"
+ "write-file-atomic": "^7.0.1"
},
"bin": {
"stylelint": "bin/stylelint.mjs"
},
"engines": {
- "node": ">=18.12.0"
+ "node": ">=20.19.0"
}
},
"node_modules/stylelint-config-recommended": {
- "version": "14.0.1",
- "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-14.0.1.tgz",
- "integrity": "sha512-bLvc1WOz/14aPImu/cufKAZYfXs/A/owZfSMZ4N+16WGXLoX5lOir53M6odBxvhgmgdxCVnNySJmZKx73T93cg==",
+ "version": "18.0.0",
+ "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-18.0.0.tgz",
+ "integrity": "sha512-mxgT2XY6YZ3HWWe3Di8umG6aBmWmHTblTgu/f10rqFXnyWxjKWwNdjSWkgkwCtxIKnqjSJzvFmPT5yabVIRxZg==",
"dev": true,
"funding": [
{
@@ -12672,35 +12784,84 @@
}
],
"engines": {
- "node": ">=18.12.0"
+ "node": ">=20.19.0"
},
"peerDependencies": {
- "stylelint": "^16.1.0"
+ "stylelint": "^17.0.0"
}
},
"node_modules/stylelint-config-wikimedia": {
- "version": "0.18.0",
- "resolved": "https://registry.npmjs.org/stylelint-config-wikimedia/-/stylelint-config-wikimedia-0.18.0.tgz",
- "integrity": "sha512-Lr45NIe7pG8i7BPcMc6EddO1pRK8/KNG8gp4o/oOG1Ez10hglJuJb/QT17BlzX8NPkhtP2KdY63NS2f/Wcj6Ww==",
+ "version": "0.19.2",
+ "resolved": "https://registry.npmjs.org/stylelint-config-wikimedia/-/stylelint-config-wikimedia-0.19.2.tgz",
+ "integrity": "sha512-GTz6SmNbbrjXJpEVussRBtsE2703BSUo5R4PRR3f+o1j1h6ngyyH3/qKJ7oZzlkRMHpJHVtAS9h1emIAvc/XWw==",
"dev": true,
"dependencies": {
- "@stylistic/stylelint-config": "2.0.0",
- "@stylistic/stylelint-plugin": "3.1.1",
+ "@stylistic/stylelint-config": "5.0.0",
+ "@stylistic/stylelint-plugin": "5.1.0",
"browserslist-config-wikimedia": "0.7.0",
- "postcss-html": "1.7.0",
+ "postcss-html": "1.8.1",
"postcss-less": "6.0.0",
- "stylelint": "16.12.0",
- "stylelint-config-recommended": "14.0.1",
- "stylelint-no-unsupported-browser-features": "8.0.2"
+ "stylelint": "17.6.0",
+ "stylelint-config-recommended": "18.0.0",
+ "stylelint-no-unsupported-browser-features": "8.1.1"
+ },
+ "engines": {
+ "node": ">=20.19.0"
},
"peerDependencies": {
"postcss-less": "^6.0.0"
}
},
+ "node_modules/stylelint-config-wikimedia/node_modules/@csstools/css-syntax-patches-for-csstree": {
+ "version": "1.1.5",
+ "resolved": "https://registry.npmjs.org/@csstools/css-syntax-patches-for-csstree/-/css-syntax-patches-for-csstree-1.1.5.tgz",
+ "integrity": "sha512-oNjBvzLq2GPZtJphCjLqXow/cHySHSgtxvKZb7OqSZ/xHgw6NWNhfad+6AB9cLeVm6eA9d/qMll3JdEHjy6M+A==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/csstools"
+ },
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/csstools"
+ }
+ ],
+ "peerDependencies": {
+ "css-tree": "^3.2.1"
+ },
+ "peerDependenciesMeta": {
+ "css-tree": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/stylelint-config-wikimedia/node_modules/@csstools/selector-resolve-nested": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/@csstools/selector-resolve-nested/-/selector-resolve-nested-4.0.0.tgz",
+ "integrity": "sha512-9vAPxmp+Dx3wQBIUwc1v7Mdisw1kbbaGqXUM8QLTgWg7SoPGYtXBsMXvsFs/0Bn5yoFhcktzxNZGNaUt0VjgjA==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/csstools"
+ },
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/csstools"
+ }
+ ],
+ "engines": {
+ "node": ">=20.19.0"
+ },
+ "peerDependencies": {
+ "postcss-selector-parser": "^7.1.1"
+ }
+ },
"node_modules/stylelint-config-wikimedia/node_modules/@csstools/selector-specificity": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-5.0.0.tgz",
- "integrity": "sha512-PCqQV3c4CoVm3kdPhyeZ07VmBRdH2EpMFA/pd9OASpOEC3aXNGoqPDAZ80D0cLpMBxnmk0+yNhGsEx31hq7Gtw==",
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-6.0.0.tgz",
+ "integrity": "sha512-4sSgl78OtOXEX/2d++8A83zHNTgwCJMaR24FvsYL7Uf/VS8HZk9PTwR51elTbGqMuwH3szLvvOXEaVnqn0Z3zA==",
"dev": true,
"funding": [
{
@@ -12713,54 +12874,55 @@
}
],
"engines": {
- "node": ">=18"
+ "node": ">=20.19.0"
},
"peerDependencies": {
- "postcss-selector-parser": "^7.0.0"
+ "postcss-selector-parser": "^7.1.1"
}
},
- "node_modules/stylelint-config-wikimedia/node_modules/balanced-match": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-2.0.0.tgz",
- "integrity": "sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==",
- "dev": true
+ "node_modules/stylelint-config-wikimedia/node_modules/ansi-regex": {
+ "version": "6.2.2",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz",
+ "integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==",
+ "dev": true,
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-regex?sponsor=1"
+ }
},
"node_modules/stylelint-config-wikimedia/node_modules/css-tree": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-3.1.0.tgz",
- "integrity": "sha512-0eW44TGN5SQXU1mWSkKwFstI/22X2bG1nYzZTYMAWjylYURhse752YgbE4Cx46AC+bAvI+/dYTPRk1LqSUnu6w==",
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-3.2.1.tgz",
+ "integrity": "sha512-X7sjQzceUhu1u7Y/ylrRZFU2FS6LRiFVp6rKLPg23y3x3c3DOKAwuXGDp+PAGjh6CSnCjYeAul8pcT8bAl+lSA==",
"dev": true,
"dependencies": {
- "mdn-data": "2.12.2",
- "source-map-js": "^1.0.1"
+ "mdn-data": "2.27.1",
+ "source-map-js": "^1.2.1"
},
"engines": {
"node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0"
}
},
"node_modules/stylelint-config-wikimedia/node_modules/file-entry-cache": {
- "version": "9.1.0",
- "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-9.1.0.tgz",
- "integrity": "sha512-/pqPFG+FdxWQj+/WSuzXSDaNzxgTLr/OrR1QuqfEZzDakpdYE70PwUxL7BPUa8hpjbvY1+qvCl8k+8Tq34xJgg==",
+ "version": "11.1.3",
+ "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-11.1.3.tgz",
+ "integrity": "sha512-oMbq0PD6VIiIwMF6LIa7MEwd/l9huKwmqRKXqmrkqIZv8CvRbfowL+L0ryAl8h//HfAS0zS+4SbYoRyAoA6BJA==",
"dev": true,
"dependencies": {
- "flat-cache": "^5.0.0"
- },
- "engines": {
- "node": ">=18"
+ "flat-cache": "^6.1.22"
}
},
"node_modules/stylelint-config-wikimedia/node_modules/flat-cache": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-5.0.0.tgz",
- "integrity": "sha512-JrqFmyUl2PnPi1OvLyTVHnQvwQ0S+e6lGSwu8OkAZlSaNIZciTY2H/cOOROxsBA1m/LZNHDsqAgDZt6akWcjsQ==",
+ "version": "6.1.22",
+ "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-6.1.22.tgz",
+ "integrity": "sha512-N2dnzVJIphnNsjHcrxGW7DePckJ6haPrSFqpsBUhHYgwtKGVq4JrBGielEGD2fCVnsGm1zlBVZ8wGhkyuetgug==",
"dev": true,
"dependencies": {
- "flatted": "^3.3.1",
- "keyv": "^4.5.4"
- },
- "engines": {
- "node": ">=18"
+ "cacheable": "^2.3.4",
+ "flatted": "^3.4.2",
+ "hookified": "^1.15.0"
}
},
"node_modules/stylelint-config-wikimedia/node_modules/global-modules": {
@@ -12789,15 +12951,47 @@
"node": ">=6"
}
},
+ "node_modules/stylelint-config-wikimedia/node_modules/globby": {
+ "version": "16.2.0",
+ "resolved": "https://registry.npmjs.org/globby/-/globby-16.2.0.tgz",
+ "integrity": "sha512-QrJia2qDf5BB/V6HYlDTs0I0lBahyjLzpGQg3KT7FnCdTonAyPy2RtY802m2k4ALx6Dp752f82WsOczEVr3l6Q==",
+ "dev": true,
+ "dependencies": {
+ "@sindresorhus/merge-streams": "^4.0.0",
+ "fast-glob": "^3.3.3",
+ "ignore": "^7.0.5",
+ "is-path-inside": "^4.0.0",
+ "slash": "^5.1.0",
+ "unicorn-magic": "^0.4.0"
+ },
+ "engines": {
+ "node": ">=20"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
"node_modules/stylelint-config-wikimedia/node_modules/ignore": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/ignore/-/ignore-6.0.2.tgz",
- "integrity": "sha512-InwqeHHN2XpumIkMvpl/DCJVrAHgCsG5+cn1XlnLWGwtZBm8QJfSusItfrwx81CTp5agNZqpKU2J/ccC5nGT4A==",
+ "version": "7.0.5",
+ "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz",
+ "integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==",
"dev": true,
"engines": {
"node": ">= 4"
}
},
+ "node_modules/stylelint-config-wikimedia/node_modules/is-path-inside": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-4.0.0.tgz",
+ "integrity": "sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==",
+ "dev": true,
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
"node_modules/stylelint-config-wikimedia/node_modules/is-plain-object": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz",
@@ -12807,22 +13001,16 @@
"node": ">=0.10.0"
}
},
- "node_modules/stylelint-config-wikimedia/node_modules/known-css-properties": {
- "version": "0.35.0",
- "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.35.0.tgz",
- "integrity": "sha512-a/RAk2BfKk+WFGhhOCAYqSiFLc34k8Mt/6NWRI4joER0EYUzXIcFivjjnoD3+XU1DggLn/tZc3DOAgke7l8a4A==",
- "dev": true
- },
"node_modules/stylelint-config-wikimedia/node_modules/mdn-data": {
- "version": "2.12.2",
- "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.12.2.tgz",
- "integrity": "sha512-IEn+pegP1aManZuckezWCO+XZQDplx1366JoVhTpMpBB1sPey/SbveZQUosKiKiGYjg1wH4pMlNgXbCiYgihQA==",
+ "version": "2.27.1",
+ "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.27.1.tgz",
+ "integrity": "sha512-9Yubnt3e8A0OKwxYSXyhLymGW4sCufcLG6VdiDdUGVkPhpqLxlvP5vl1983gQjJl3tqbrM731mjaZaP68AgosQ==",
"dev": true
},
"node_modules/stylelint-config-wikimedia/node_modules/postcss-selector-parser": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz",
- "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==",
+ "version": "7.1.4",
+ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.4.tgz",
+ "integrity": "sha512-HeP7D2wyhkR+XaK6v4W8oRF62Dsz4flyuczALJp61GckGm42u1saSSJ/0auvcBqxs3jMRFEcPK34At/0JBKdOg==",
"dev": true,
"dependencies": {
"cssesc": "^3.0.0",
@@ -12844,10 +13032,53 @@
"url": "https://github.com/sponsors/isaacs"
}
},
+ "node_modules/stylelint-config-wikimedia/node_modules/slash": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/slash/-/slash-5.1.0.tgz",
+ "integrity": "sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==",
+ "dev": true,
+ "engines": {
+ "node": ">=14.16"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/stylelint-config-wikimedia/node_modules/string-width": {
+ "version": "8.2.1",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-8.2.1.tgz",
+ "integrity": "sha512-IIaP0g3iy9Cyy18w3M9YcaDudujEAVHKt3a3QJg1+sr/oX96TbaGUubG0hJyCjCBThFH+tFpcIyoUHUn1ogaLA==",
+ "dev": true,
+ "dependencies": {
+ "get-east-asian-width": "^1.5.0",
+ "strip-ansi": "^7.1.2"
+ },
+ "engines": {
+ "node": ">=20"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/stylelint-config-wikimedia/node_modules/strip-ansi": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.2.0.tgz",
+ "integrity": "sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==",
+ "dev": true,
+ "dependencies": {
+ "ansi-regex": "^6.2.2"
+ },
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/strip-ansi?sponsor=1"
+ }
+ },
"node_modules/stylelint-config-wikimedia/node_modules/stylelint": {
- "version": "16.12.0",
- "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-16.12.0.tgz",
- "integrity": "sha512-F8zZ3L/rBpuoBZRvI4JVT20ZanPLXfQLzMOZg1tzPflRVh9mKpOZ8qcSIhh1my3FjAjZWG4T2POwGnmn6a6hbg==",
+ "version": "17.6.0",
+ "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-17.6.0.tgz",
+ "integrity": "sha512-tokrsMIVAR9vAQ/q3UVEr7S0dGXCi7zkCezPRnS2kqPUulvUh5Vgfwngrk4EoAoW7wnrThqTdnTFN5Ra7CaxIg==",
"dev": true,
"funding": [
{
@@ -12860,50 +13091,48 @@
}
],
"dependencies": {
- "@csstools/css-parser-algorithms": "^3.0.4",
- "@csstools/css-tokenizer": "^3.0.3",
- "@csstools/media-query-list-parser": "^4.0.2",
- "@csstools/selector-specificity": "^5.0.0",
- "@dual-bundle/import-meta-resolve": "^4.1.0",
- "balanced-match": "^2.0.0",
+ "@csstools/css-calc": "^3.1.1",
+ "@csstools/css-parser-algorithms": "^4.0.0",
+ "@csstools/css-syntax-patches-for-csstree": "^1.1.1",
+ "@csstools/css-tokenizer": "^4.0.0",
+ "@csstools/media-query-list-parser": "^5.0.0",
+ "@csstools/selector-resolve-nested": "^4.0.0",
+ "@csstools/selector-specificity": "^6.0.0",
"colord": "^2.9.3",
- "cosmiconfig": "^9.0.0",
- "css-functions-list": "^3.2.3",
- "css-tree": "^3.0.1",
- "debug": "^4.3.7",
- "fast-glob": "^3.3.2",
+ "cosmiconfig": "^9.0.1",
+ "css-functions-list": "^3.3.3",
+ "css-tree": "^3.2.1",
+ "debug": "^4.4.3",
+ "fast-glob": "^3.3.3",
"fastest-levenshtein": "^1.0.16",
- "file-entry-cache": "^9.1.0",
+ "file-entry-cache": "^11.1.2",
"global-modules": "^2.0.0",
- "globby": "^11.1.0",
+ "globby": "^16.1.1",
"globjoin": "^0.1.4",
- "html-tags": "^3.3.1",
- "ignore": "^6.0.2",
- "imurmurhash": "^0.1.4",
+ "html-tags": "^5.1.0",
+ "ignore": "^7.0.5",
+ "import-meta-resolve": "^4.2.0",
"is-plain-object": "^5.0.0",
- "known-css-properties": "^0.35.0",
- "mathml-tag-names": "^2.1.3",
- "meow": "^13.2.0",
+ "mathml-tag-names": "^4.0.0",
+ "meow": "^14.1.0",
"micromatch": "^4.0.8",
"normalize-path": "^3.0.0",
"picocolors": "^1.1.1",
- "postcss": "^8.4.49",
- "postcss-resolve-nested-selector": "^0.1.6",
+ "postcss": "^8.5.8",
"postcss-safe-parser": "^7.0.1",
- "postcss-selector-parser": "^7.0.0",
+ "postcss-selector-parser": "^7.1.1",
"postcss-value-parser": "^4.2.0",
- "resolve-from": "^5.0.0",
- "string-width": "^4.2.3",
- "supports-hyperlinks": "^3.1.0",
+ "string-width": "^8.2.0",
+ "supports-hyperlinks": "^4.4.0",
"svg-tags": "^1.0.0",
"table": "^6.9.0",
- "write-file-atomic": "^5.0.1"
+ "write-file-atomic": "^7.0.1"
},
"bin": {
"stylelint": "bin/stylelint.mjs"
},
"engines": {
- "node": ">=18.12.0"
+ "node": ">=20.19.0"
}
},
"node_modules/stylelint-config-wikimedia/node_modules/which": {
@@ -12919,38 +13148,86 @@
}
},
"node_modules/stylelint-config-wikimedia/node_modules/write-file-atomic": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz",
- "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==",
+ "version": "7.0.1",
+ "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-7.0.1.tgz",
+ "integrity": "sha512-OTIk8iR8/aCRWBqvxrzxR0hgxWpnYBblY1S5hDWBQfk/VFmJwzmJgQFN3WsoUKHISv2eAwe+PpbUzyL1CKTLXg==",
"dev": true,
"dependencies": {
- "imurmurhash": "^0.1.4",
"signal-exit": "^4.0.1"
},
"engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ "node": "^20.17.0 || >=22.9.0"
}
},
"node_modules/stylelint-no-unsupported-browser-features": {
- "version": "8.0.2",
- "resolved": "https://registry.npmjs.org/stylelint-no-unsupported-browser-features/-/stylelint-no-unsupported-browser-features-8.0.2.tgz",
- "integrity": "sha512-4PY2qJ3ZTEje9RgGfaQ82eJoPioXxs6hazeKpji/wzLNVzTX2wd4b0Ds3ewdLkH3ID+o63IInuTquU2MNJO3YQ==",
+ "version": "8.1.1",
+ "resolved": "https://registry.npmjs.org/stylelint-no-unsupported-browser-features/-/stylelint-no-unsupported-browser-features-8.1.1.tgz",
+ "integrity": "sha512-sLEe6NUFoWL2vGt6IKKllQEKfKgVxmvTBFs1JVMHKKLWzxtWAXaqSxJvH+j0URM4vLQQqzC/wXc9Kp3XBNKdBw==",
"dev": true,
"dependencies": {
- "doiuse": "^6.0.5",
+ "browserslist": "^4.26.3",
+ "doiuse": "^6.0.6",
"postcss": "^8.4.32"
},
"engines": {
"node": ">=18.12.0"
},
"peerDependencies": {
- "stylelint": "^16.0.2"
+ "stylelint": ">=16.0.2"
+ }
+ },
+ "node_modules/stylelint/node_modules/@csstools/css-syntax-patches-for-csstree": {
+ "version": "1.1.5",
+ "resolved": "https://registry.npmjs.org/@csstools/css-syntax-patches-for-csstree/-/css-syntax-patches-for-csstree-1.1.5.tgz",
+ "integrity": "sha512-oNjBvzLq2GPZtJphCjLqXow/cHySHSgtxvKZb7OqSZ/xHgw6NWNhfad+6AB9cLeVm6eA9d/qMll3JdEHjy6M+A==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/csstools"
+ },
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/csstools"
+ }
+ ],
+ "peer": true,
+ "peerDependencies": {
+ "css-tree": "^3.2.1"
+ },
+ "peerDependenciesMeta": {
+ "css-tree": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/stylelint/node_modules/@csstools/selector-resolve-nested": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/@csstools/selector-resolve-nested/-/selector-resolve-nested-4.0.0.tgz",
+ "integrity": "sha512-9vAPxmp+Dx3wQBIUwc1v7Mdisw1kbbaGqXUM8QLTgWg7SoPGYtXBsMXvsFs/0Bn5yoFhcktzxNZGNaUt0VjgjA==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/csstools"
+ },
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/csstools"
+ }
+ ],
+ "peer": true,
+ "engines": {
+ "node": ">=20.19.0"
+ },
+ "peerDependencies": {
+ "postcss-selector-parser": "^7.1.1"
}
},
"node_modules/stylelint/node_modules/@csstools/selector-specificity": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-5.0.0.tgz",
- "integrity": "sha512-PCqQV3c4CoVm3kdPhyeZ07VmBRdH2EpMFA/pd9OASpOEC3aXNGoqPDAZ80D0cLpMBxnmk0+yNhGsEx31hq7Gtw==",
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-6.0.0.tgz",
+ "integrity": "sha512-4sSgl78OtOXEX/2d++8A83zHNTgwCJMaR24FvsYL7Uf/VS8HZk9PTwR51elTbGqMuwH3szLvvOXEaVnqn0Z3zA==",
"dev": true,
"funding": [
{
@@ -12962,50 +13239,61 @@
"url": "https://opencollective.com/csstools"
}
],
+ "peer": true,
"engines": {
- "node": ">=18"
+ "node": ">=20.19.0"
},
"peerDependencies": {
- "postcss-selector-parser": "^7.0.0"
+ "postcss-selector-parser": "^7.1.1"
}
},
- "node_modules/stylelint/node_modules/balanced-match": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-2.0.0.tgz",
- "integrity": "sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==",
- "dev": true
+ "node_modules/stylelint/node_modules/ansi-regex": {
+ "version": "6.2.2",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz",
+ "integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==",
+ "dev": true,
+ "peer": true,
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-regex?sponsor=1"
+ }
},
"node_modules/stylelint/node_modules/css-tree": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-3.1.0.tgz",
- "integrity": "sha512-0eW44TGN5SQXU1mWSkKwFstI/22X2bG1nYzZTYMAWjylYURhse752YgbE4Cx46AC+bAvI+/dYTPRk1LqSUnu6w==",
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-3.2.1.tgz",
+ "integrity": "sha512-X7sjQzceUhu1u7Y/ylrRZFU2FS6LRiFVp6rKLPg23y3x3c3DOKAwuXGDp+PAGjh6CSnCjYeAul8pcT8bAl+lSA==",
"dev": true,
+ "peer": true,
"dependencies": {
- "mdn-data": "2.12.2",
- "source-map-js": "^1.0.1"
+ "mdn-data": "2.27.1",
+ "source-map-js": "^1.2.1"
},
"engines": {
"node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0"
}
},
"node_modules/stylelint/node_modules/file-entry-cache": {
- "version": "10.1.3",
- "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-10.1.3.tgz",
- "integrity": "sha512-D+w75Ub8T55yor7fPgN06rkCAUbAYw2vpxJmmjv/GDAcvCnv9g7IvHhIZoxzRZThrXPFI2maeY24pPbtyYU7Lg==",
+ "version": "11.1.3",
+ "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-11.1.3.tgz",
+ "integrity": "sha512-oMbq0PD6VIiIwMF6LIa7MEwd/l9huKwmqRKXqmrkqIZv8CvRbfowL+L0ryAl8h//HfAS0zS+4SbYoRyAoA6BJA==",
"dev": true,
+ "peer": true,
"dependencies": {
- "flat-cache": "^6.1.12"
+ "flat-cache": "^6.1.22"
}
},
"node_modules/stylelint/node_modules/flat-cache": {
- "version": "6.1.12",
- "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-6.1.12.tgz",
- "integrity": "sha512-U+HqqpZPPXP5d24bWuRzjGqVqUcw64k4nZAbruniDwdRg0H10tvN7H6ku1tjhA4rg5B9GS3siEvwO2qjJJ6f8Q==",
+ "version": "6.1.22",
+ "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-6.1.22.tgz",
+ "integrity": "sha512-N2dnzVJIphnNsjHcrxGW7DePckJ6haPrSFqpsBUhHYgwtKGVq4JrBGielEGD2fCVnsGm1zlBVZ8wGhkyuetgug==",
"dev": true,
+ "peer": true,
"dependencies": {
- "cacheable": "^1.10.3",
- "flatted": "^3.3.3",
- "hookified": "^1.10.0"
+ "cacheable": "^2.3.4",
+ "flatted": "^3.4.2",
+ "hookified": "^1.15.0"
}
},
"node_modules/stylelint/node_modules/global-modules": {
@@ -13013,6 +13301,7 @@
"resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz",
"integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==",
"dev": true,
+ "peer": true,
"dependencies": {
"global-prefix": "^3.0.0"
},
@@ -13025,6 +13314,7 @@
"resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz",
"integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==",
"dev": true,
+ "peer": true,
"dependencies": {
"ini": "^1.3.5",
"kind-of": "^6.0.2",
@@ -13034,35 +13324,63 @@
"node": ">=6"
}
},
+ "node_modules/stylelint/node_modules/globby": {
+ "version": "16.2.0",
+ "resolved": "https://registry.npmjs.org/globby/-/globby-16.2.0.tgz",
+ "integrity": "sha512-QrJia2qDf5BB/V6HYlDTs0I0lBahyjLzpGQg3KT7FnCdTonAyPy2RtY802m2k4ALx6Dp752f82WsOczEVr3l6Q==",
+ "dev": true,
+ "peer": true,
+ "dependencies": {
+ "@sindresorhus/merge-streams": "^4.0.0",
+ "fast-glob": "^3.3.3",
+ "ignore": "^7.0.5",
+ "is-path-inside": "^4.0.0",
+ "slash": "^5.1.0",
+ "unicorn-magic": "^0.4.0"
+ },
+ "engines": {
+ "node": ">=20"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
"node_modules/stylelint/node_modules/ignore": {
"version": "7.0.5",
"resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz",
"integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==",
"dev": true,
+ "peer": true,
"engines": {
"node": ">= 4"
}
},
- "node_modules/stylelint/node_modules/is-plain-object": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz",
- "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==",
+ "node_modules/stylelint/node_modules/is-path-inside": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-4.0.0.tgz",
+ "integrity": "sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==",
"dev": true,
+ "peer": true,
"engines": {
- "node": ">=0.10.0"
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/stylelint/node_modules/mdn-data": {
- "version": "2.12.2",
- "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.12.2.tgz",
- "integrity": "sha512-IEn+pegP1aManZuckezWCO+XZQDplx1366JoVhTpMpBB1sPey/SbveZQUosKiKiGYjg1wH4pMlNgXbCiYgihQA==",
- "dev": true
+ "version": "2.27.1",
+ "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.27.1.tgz",
+ "integrity": "sha512-9Yubnt3e8A0OKwxYSXyhLymGW4sCufcLG6VdiDdUGVkPhpqLxlvP5vl1983gQjJl3tqbrM731mjaZaP68AgosQ==",
+ "dev": true,
+ "peer": true
},
"node_modules/stylelint/node_modules/postcss-selector-parser": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz",
- "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==",
+ "version": "7.1.4",
+ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.4.tgz",
+ "integrity": "sha512-HeP7D2wyhkR+XaK6v4W8oRF62Dsz4flyuczALJp61GckGm42u1saSSJ/0auvcBqxs3jMRFEcPK34At/0JBKdOg==",
"dev": true,
+ "peer": true,
"dependencies": {
"cssesc": "^3.0.0",
"util-deprecate": "^1.0.2"
@@ -13076,6 +13394,7 @@
"resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
"integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==",
"dev": true,
+ "peer": true,
"engines": {
"node": ">=14"
},
@@ -13083,11 +13402,58 @@
"url": "https://github.com/sponsors/isaacs"
}
},
+ "node_modules/stylelint/node_modules/slash": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/slash/-/slash-5.1.0.tgz",
+ "integrity": "sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==",
+ "dev": true,
+ "peer": true,
+ "engines": {
+ "node": ">=14.16"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/stylelint/node_modules/string-width": {
+ "version": "8.2.1",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-8.2.1.tgz",
+ "integrity": "sha512-IIaP0g3iy9Cyy18w3M9YcaDudujEAVHKt3a3QJg1+sr/oX96TbaGUubG0hJyCjCBThFH+tFpcIyoUHUn1ogaLA==",
+ "dev": true,
+ "peer": true,
+ "dependencies": {
+ "get-east-asian-width": "^1.5.0",
+ "strip-ansi": "^7.1.2"
+ },
+ "engines": {
+ "node": ">=20"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/stylelint/node_modules/strip-ansi": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.2.0.tgz",
+ "integrity": "sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==",
+ "dev": true,
+ "peer": true,
+ "dependencies": {
+ "ansi-regex": "^6.2.2"
+ },
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/strip-ansi?sponsor=1"
+ }
+ },
"node_modules/stylelint/node_modules/which": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
"integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
"dev": true,
+ "peer": true,
"dependencies": {
"isexe": "^2.0.0"
},
@@ -13096,16 +13462,16 @@
}
},
"node_modules/stylelint/node_modules/write-file-atomic": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz",
- "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==",
+ "version": "7.0.1",
+ "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-7.0.1.tgz",
+ "integrity": "sha512-OTIk8iR8/aCRWBqvxrzxR0hgxWpnYBblY1S5hDWBQfk/VFmJwzmJgQFN3WsoUKHISv2eAwe+PpbUzyL1CKTLXg==",
"dev": true,
+ "peer": true,
"dependencies": {
- "imurmurhash": "^0.1.4",
"signal-exit": "^4.0.1"
},
"engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ "node": "^20.17.0 || >=22.9.0"
}
},
"node_modules/supports-color": {
@@ -13121,40 +13487,43 @@
}
},
"node_modules/supports-hyperlinks": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-3.2.0.tgz",
- "integrity": "sha512-zFObLMyZeEwzAoKCyu1B91U79K2t7ApXuQfo8OuxwXLDgcKxuwM+YvcbIhm6QWqz7mHUH1TVytR1PwVVjEuMig==",
+ "version": "4.4.0",
+ "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-4.4.0.tgz",
+ "integrity": "sha512-UKbpT93hN5Nr9go5UY7bopIB9YQlMz9nm/ct4IXt/irb5YRkn9WaqrOBJGZ5Pwvsd5FQzSVeYlGdXoCAPQZrPg==",
"dev": true,
"dependencies": {
- "has-flag": "^4.0.0",
- "supports-color": "^7.0.0"
+ "has-flag": "^5.0.1",
+ "supports-color": "^10.2.2"
},
"engines": {
- "node": ">=14.18"
+ "node": ">=20"
},
"funding": {
"url": "https://github.com/chalk/supports-hyperlinks?sponsor=1"
}
},
"node_modules/supports-hyperlinks/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-5.0.1.tgz",
+ "integrity": "sha512-CsNUt5x9LUdx6hnk/E2SZLsDyvfqANZSUq4+D3D8RzDJ2M+HDTIkF60ibS1vHaK55vzgiZw1bEPFG9yH7l33wA==",
"dev": true,
"engines": {
- "node": ">=8"
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/supports-hyperlinks/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "version": "10.2.2",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-10.2.2.tgz",
+ "integrity": "sha512-SS+jx45GF1QjgEXQx4NJZV9ImqmO2NPz5FNsIHrsDjh2YsHnawpan7SNQ1o8NuhrbHZy9AZhIoCUiCeaW/C80g==",
"dev": true,
- "dependencies": {
- "has-flag": "^4.0.0"
- },
"engines": {
- "node": ">=8"
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/supports-color?sponsor=1"
}
},
"node_modules/supports-preserve-symlinks-flag": {
@@ -13553,6 +13922,18 @@
"node": ">=4"
}
},
+ "node_modules/unicorn-magic": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.4.0.tgz",
+ "integrity": "sha512-wH590V9VNgYH9g3lH9wWjTrUoKsjLF6sGLjhR4sH1LWpLmCOH0Zf7PukhDA8BiS7KHe4oPNkcTHqYkj7SOGUOw==",
+ "dev": true,
+ "engines": {
+ "node": ">=20"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
"node_modules/universalify": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz",
diff --git a/package.json b/package.json
index d684b0d..7bdf9b8 100644
--- a/package.json
+++ b/package.json
@@ -16,20 +16,20 @@
"@vue/compiler-sfc": "3.5.13",
"@vue/test-utils": "2.4.6",
"@vue/vue3-jest": "29.2.6",
- "@wikimedia/codex": "2.4.0",
- "@wikimedia/codex-icons": "2.4.0",
+ "@wikimedia/codex": "2.6.0",
+ "@wikimedia/codex-icons": "2.6.0",
"babel-core": "^6.26.3",
"eslint-config-wikimedia": "0.32.4",
"eslint-plugin-jest": "27.2.1",
"grunt": "1.6.2",
"grunt-banana-checker": "0.13.0",
"grunt-eslint": "24.3.0",
- "grunt-stylelint": "0.20.1",
+ "grunt-stylelint": "0.21.0",
"jest": "29.7.0",
"jest-environment-jsdom": "29.7.0",
"jest-when": "^3.2.1",
"jquery": "^3.7.1",
- "stylelint-config-wikimedia": "0.18.0",
+ "stylelint-config-wikimedia": "0.19.2",
"vue": "3.5.13",
"vue-router": "4.5.1"
}
--
2.47.3
$ date
--- stdout ---
Sun Jun 14 05:59:22 UTC 2026
--- end ---
$ git clone file:///srv/git/mediawiki-extensions-DonationInterface.git /src/repo --depth=1 -b master
--- stderr ---
Cloning into '/src/repo'...
--- stdout ---
--- end ---
$ git config user.name libraryupgrader
--- stdout ---
--- end ---
$ git config user.email tools.libraryupgrader@tools.wmflabs.org
--- stdout ---
--- end ---
$ git submodule update --init
--- stdout ---
--- end ---
$ grr init
--- stdout ---
Installed commit-msg hook.
--- end ---
$ git show-ref refs/heads/master
--- stdout ---
73994a98cf62c233978a38808deee59929f912e6 refs/heads/master
--- end ---
$ /usr/bin/npm audit --json
--- stdout ---
{
"auditReportVersion": 2,
"vulnerabilities": {
"babel-core": {
"name": "babel-core",
"severity": "critical",
"isDirect": true,
"via": [
"babel-helpers",
"babel-register",
"babel-template",
"babel-traverse",
"json5"
],
"effects": [
"babel-register"
],
"range": "5.8.20 - 7.0.0-beta.3",
"nodes": [
"node_modules/babel-core"
],
"fixAvailable": {
"name": "babel-core",
"version": "4.7.16",
"isSemVerMajor": true
}
},
"babel-helpers": {
"name": "babel-helpers",
"severity": "critical",
"isDirect": false,
"via": [
"babel-template"
],
"effects": [],
"range": "*",
"nodes": [
"node_modules/babel-helpers"
],
"fixAvailable": true
},
"babel-register": {
"name": "babel-register",
"severity": "high",
"isDirect": false,
"via": [
"babel-core"
],
"effects": [
"babel-core"
],
"range": "*",
"nodes": [
"node_modules/babel-register"
],
"fixAvailable": {
"name": "babel-core",
"version": "4.7.16",
"isSemVerMajor": true
}
},
"babel-template": {
"name": "babel-template",
"severity": "critical",
"isDirect": false,
"via": [
"babel-traverse"
],
"effects": [
"babel-helpers"
],
"range": "*",
"nodes": [
"node_modules/babel-template"
],
"fixAvailable": true
},
"babel-traverse": {
"name": "babel-traverse",
"severity": "critical",
"isDirect": false,
"via": [
{
"source": 1117412,
"name": "babel-traverse",
"dependency": "babel-traverse",
"title": "Babel vulnerable to arbitrary code execution when compiling specifically crafted malicious code",
"url": "https://github.com/advisories/GHSA-67hx-6x53-jw92",
"severity": "critical",
"cwe": [
"CWE-184",
"CWE-697"
],
"cvss": {
"score": 9.3,
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H"
},
"range": "<7.23.2"
}
],
"effects": [
"babel-core",
"babel-template"
],
"range": "*",
"nodes": [
"node_modules/babel-traverse"
],
"fixAvailable": {
"name": "babel-core",
"version": "4.7.16",
"isSemVerMajor": true
}
},
"json5": {
"name": "json5",
"severity": "high",
"isDirect": false,
"via": [
{
"source": 1096543,
"name": "json5",
"dependency": "json5",
"title": "Prototype Pollution in JSON5 via Parse Method",
"url": "https://github.com/advisories/GHSA-9c47-m6qq-7p4h",
"severity": "high",
"cwe": [
"CWE-1321"
],
"cvss": {
"score": 7.1,
"vectorString": "CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:L/A:H"
},
"range": "<1.0.2"
}
],
"effects": [
"babel-core"
],
"range": "<1.0.2",
"nodes": [
"node_modules/babel-core/node_modules/json5"
],
"fixAvailable": {
"name": "babel-core",
"version": "4.7.16",
"isSemVerMajor": true
}
}
},
"metadata": {
"vulnerabilities": {
"info": 0,
"low": 0,
"moderate": 0,
"high": 2,
"critical": 4,
"total": 6
},
"dependencies": {
"prod": 1,
"dev": 1116,
"optional": 3,
"peer": 2,
"peerOptional": 0,
"total": 1116
}
}
}
--- end ---
$ /usr/bin/composer install
--- stderr ---
No composer.lock file present. Updating dependencies to latest instead of installing from lock file. See https://getcomposer.org/install for more information.
Loading composer repositories with package information
Updating dependencies
Lock file operations: 78 installs, 0 updates, 0 removals
- Locking addshore/psr-6-mediawiki-bagostuff-adapter (0.2)
- Locking brick/math (0.14.8)
- Locking brick/money (0.10.3)
- Locking clio/clio (0.1.8)
- Locking coderkungfu/php-queue (1.0.3)
- Locking composer/ca-bundle (1.5.12)
- Locking composer/pcre (3.4.0)
- Locking composer/semver (3.4.4)
- Locking composer/spdx-licenses (1.6.0)
- Locking composer/xdebug-handler (3.0.5)
- Locking corneltek/getoptionkit (2.7.3)
- Locking danog/advanced-json-rpc (v3.2.3)
- Locking dealerdirect/phpcodesniffer-composer-installer (v1.2.1)
- Locking doctrine/deprecations (1.1.6)
- Locking geoip2/geoip2 (v2.13.0)
- Locking gr4vy/gr4vy-php (v0.27.0)
- Locking guzzlehttp/guzzle (7.11.1)
- Locking guzzlehttp/promises (2.5.0)
- Locking guzzlehttp/psr7 (2.11.0)
- Locking lcobucci/clock (3.3.1)
- Locking lcobucci/jwt (4.3.0)
- Locking maxmind-db/reader (v1.13.1)
- Locking maxmind/minfraud (v1.23.0)
- Locking maxmind/web-service-common (v0.9.0)
- Locking mediawiki/mediawiki-codesniffer (v51.0.0)
- Locking mediawiki/mediawiki-phan-config (0.20.0)
- Locking mediawiki/minus-x (2.0.1)
- Locking mediawiki/phan-taint-check-plugin (9.1.0)
- Locking monolog/monolog (3.10.0)
- Locking netresearch/jsonmapper (v5.0.1)
- Locking paragonie/constant_time_encoding (v3.1.3)
- Locking paragonie/random_compat (v9.99.100)
- Locking phan/phan (6.0.2)
- Locking phan/tolerant-php-parser (v0.2.0)
- Locking phan/var_representation_polyfill (0.1.4)
- Locking php-parallel-lint/php-console-color (v1.0.1)
- Locking php-parallel-lint/php-console-highlighter (v1.0.0)
- Locking php-parallel-lint/php-parallel-lint (v1.4.0)
- Locking phpcsstandards/phpcsextra (1.5.0)
- Locking phpcsstandards/phpcsutils (1.2.2)
- Locking phpdocumentor/reflection-common (2.2.0)
- Locking phpdocumentor/reflection-docblock (6.0.3)
- Locking phpdocumentor/type-resolver (2.0.0)
- Locking phpmailer/phpmailer (v6.12.0)
- Locking phpseclib/phpseclib (3.0.53)
- Locking phpstan/phpdoc-parser (2.3.2)
- Locking predis/predis (v3.5.1)
- Locking psr/cache (3.0.0)
- Locking psr/clock (1.0.0)
- Locking psr/container (2.0.2)
- Locking psr/http-client (1.0.3)
- Locking psr/http-factory (1.1.0)
- Locking psr/http-message (2.0)
- Locking psr/log (3.0.2)
- Locking ralouphie/getallheaders (3.0.3)
- Locking relisten/forceutf8 (1.1.0)
- Locking respect/stringifier (1.0.0)
- Locking respect/validation (2.4.12)
- Locking sabre/event (6.1.0)
- Locking squizlabs/php_codesniffer (3.13.5)
- Locking symfony/console (v7.4.13)
- Locking symfony/deprecation-contracts (v3.7.0)
- Locking symfony/http-foundation (v6.4.41)
- Locking symfony/polyfill-ctype (v1.37.0)
- Locking symfony/polyfill-intl-grapheme (v1.38.1)
- Locking symfony/polyfill-intl-normalizer (v1.38.0)
- Locking symfony/polyfill-mbstring (v1.38.2)
- Locking symfony/polyfill-php80 (v1.37.0)
- Locking symfony/polyfill-php83 (v1.38.2)
- Locking symfony/service-contracts (v3.7.0)
- Locking symfony/string (v7.4.13)
- Locking symfony/yaml (v7.4.13)
- Locking webmozart/assert (2.4.0)
- Locking whichbrowser/parser (v2.1.8)
- Locking wikimedia/remex-html (5.1.0)
- Locking wikimedia/smash-pig (v1.2.4.11)
- Locking wikimedia/testing-access-wrapper (4.0.0)
- Locking wikimedia/utfnormal (4.0.0)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 78 installs, 0 updates, 0 removals
- Downloading addshore/psr-6-mediawiki-bagostuff-adapter (0.2)
- Downloading predis/predis (v3.5.1)
- Downloading wikimedia/smash-pig (v1.2.4.11)
0/3 [>---------------------------] 0%
1/3 [=========>------------------] 33%
2/3 [==================>---------] 66%
3/3 [============================] 100%
- Installing squizlabs/php_codesniffer (3.13.5): Extracting archive
- Installing dealerdirect/phpcodesniffer-composer-installer (v1.2.1): Extracting archive
- Installing psr/cache (3.0.0): Extracting archive
- Installing addshore/psr-6-mediawiki-bagostuff-adapter (0.2): Extracting archive
- Installing brick/math (0.14.8): Extracting archive
- Installing clio/clio (0.1.8): Extracting archive
- Installing composer/pcre (3.4.0): Extracting archive
- Installing symfony/polyfill-php80 (v1.37.0): Extracting archive
- Installing symfony/deprecation-contracts (v3.7.0): Extracting archive
- Installing psr/http-message (2.0): Extracting archive
- Installing psr/http-client (1.0.3): Extracting archive
- Installing ralouphie/getallheaders (3.0.3): Extracting archive
- Installing psr/http-factory (1.1.0): Extracting archive
- Installing guzzlehttp/psr7 (2.11.0): Extracting archive
- Installing guzzlehttp/promises (2.5.0): Extracting archive
- Installing guzzlehttp/guzzle (7.11.1): Extracting archive
- Installing psr/clock (1.0.0): Extracting archive
- Installing lcobucci/clock (3.3.1): Extracting archive
- Installing symfony/polyfill-mbstring (v1.38.2): Extracting archive
- Installing lcobucci/jwt (4.3.0): Extracting archive
- Installing maxmind-db/reader (v1.13.1): Extracting archive
- Installing respect/stringifier (1.0.0): Extracting archive
- Installing respect/validation (2.4.12): Extracting archive
- Installing composer/ca-bundle (1.5.12): Extracting archive
- Installing maxmind/web-service-common (v0.9.0): Extracting archive
- Installing geoip2/geoip2 (v2.13.0): Extracting archive
- Installing maxmind/minfraud (v1.23.0): Extracting archive
- Installing phpcsstandards/phpcsutils (1.2.2): Extracting archive
- Installing phpcsstandards/phpcsextra (1.5.0): Extracting archive
- Installing composer/spdx-licenses (1.6.0): Extracting archive
- Installing composer/semver (3.4.4): Extracting archive
- Installing mediawiki/mediawiki-codesniffer (v51.0.0): Extracting archive
- Installing symfony/polyfill-intl-normalizer (v1.38.0): Extracting archive
- Installing symfony/polyfill-intl-grapheme (v1.38.1): Extracting archive
- Installing symfony/polyfill-ctype (v1.37.0): Extracting archive
- Installing symfony/string (v7.4.13): Extracting archive
- Installing psr/container (2.0.2): Extracting archive
- Installing symfony/service-contracts (v3.7.0): Extracting archive
- Installing symfony/console (v7.4.13): Extracting archive
- Installing sabre/event (6.1.0): Extracting archive
- Installing phan/var_representation_polyfill (0.1.4): Extracting archive
- Installing phan/tolerant-php-parser (v0.2.0): Extracting archive
- Installing netresearch/jsonmapper (v5.0.1): Extracting archive
- Installing webmozart/assert (2.4.0): Extracting archive
- Installing phpstan/phpdoc-parser (2.3.2): Extracting archive
- Installing phpdocumentor/reflection-common (2.2.0): Extracting archive
- Installing doctrine/deprecations (1.1.6): Extracting archive
- Installing phpdocumentor/type-resolver (2.0.0): Extracting archive
- Installing phpdocumentor/reflection-docblock (6.0.3): Extracting archive
- Installing danog/advanced-json-rpc (v3.2.3): Extracting archive
- Installing psr/log (3.0.2): Extracting archive
- Installing composer/xdebug-handler (3.0.5): Extracting archive
- Installing phan/phan (6.0.2): Extracting archive
- Installing mediawiki/phan-taint-check-plugin (9.1.0): Extracting archive
- Installing mediawiki/mediawiki-phan-config (0.20.0): Extracting archive
- Installing mediawiki/minus-x (2.0.1): Extracting archive
- Installing monolog/monolog (3.10.0): Extracting archive
- Installing paragonie/constant_time_encoding (v3.1.3): Extracting archive
- Installing paragonie/random_compat (v9.99.100): Extracting archive
- Installing php-parallel-lint/php-console-color (v1.0.1): Extracting archive
- Installing php-parallel-lint/php-console-highlighter (v1.0.0): Extracting archive
- Installing php-parallel-lint/php-parallel-lint (v1.4.0): Extracting archive
- Installing relisten/forceutf8 (1.1.0): Extracting archive
- Installing symfony/polyfill-php83 (v1.38.2): Extracting archive
- Installing whichbrowser/parser (v2.1.8): Extracting archive
- Installing wikimedia/utfnormal (4.0.0): Extracting archive
- Installing wikimedia/remex-html (5.1.0): Extracting archive
- Installing symfony/yaml (v7.4.13): Extracting archive
- Installing symfony/http-foundation (v6.4.41): Extracting archive
- Installing predis/predis (v3.5.1): Extracting archive
- Installing phpseclib/phpseclib (3.0.53): Extracting archive
- Installing phpmailer/phpmailer (v6.12.0): Extracting archive
- Installing gr4vy/gr4vy-php (v0.27.0): Extracting archive
- Installing corneltek/getoptionkit (2.7.3): Extracting archive
- Installing coderkungfu/php-queue (1.0.3): Extracting archive
- Installing brick/money (0.10.3): Extracting archive
- Installing wikimedia/smash-pig (v1.2.4.11): Extracting archive
- Installing wikimedia/testing-access-wrapper (4.0.0): Extracting archive
0/76 [>---------------------------] 0%
27/76 [=========>------------------] 35%
39/76 [==============>-------------] 51%
51/76 [==================>---------] 67%
65/76 [=======================>----] 85%
75/76 [===========================>] 98%
76/76 [============================] 100%
34 package suggestions were added by new dependencies, use `composer suggest` to see details.
Generating optimized autoload files
32 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
--- stdout ---
PHP CodeSniffer Config installed_paths set to ../../mediawiki/mediawiki-codesniffer,../../phpcsstandards/phpcsextra,../../phpcsstandards/phpcsutils
--- end ---
Upgrading n:grunt-stylelint from 0.20.1 -> 0.21.0
Upgrading n:stylelint-config-wikimedia from 0.18.0 -> 0.19.2
Upgrading n:@wikimedia/codex from 2.4.0 -> 2.6.0
Upgrading n:@wikimedia/codex-icons from 2.4.0 -> 2.6.0
$ /usr/bin/npm install
--- stderr ---
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: '@wikimedia/codex@2.6.0',
npm WARN EBADENGINE required: { npm: '>=10.8.2', node: '>=20.20.2' },
npm WARN EBADENGINE current: { node: 'v20.19.2', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: '@wikimedia/codex-icons@2.6.0',
npm WARN EBADENGINE required: { npm: '>=10.8.2', node: '>=20.20.2' },
npm WARN EBADENGINE current: { node: 'v20.19.2', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: 'grunt-stylelint@0.21.0',
npm WARN EBADENGINE required: { node: '>=20.19.5' },
npm WARN EBADENGINE current: { node: 'v20.19.2', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN deprecated osenv@0.1.5: This package is no longer supported.
npm WARN deprecated inflight@1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
npm WARN deprecated @humanwhocodes/config-array@0.13.0: Use @eslint/config-array instead
npm WARN deprecated rimraf@3.0.2: Rimraf versions prior to v4 are no longer supported
npm WARN deprecated abab@2.0.6: Use your platform's native atob() and btoa() methods instead
npm WARN deprecated @humanwhocodes/object-schema@2.0.3: Use @eslint/object-schema instead
npm WARN deprecated glob@7.1.7: Glob versions prior to v9 are no longer supported
npm WARN deprecated domexception@4.0.0: Use your platform's native DOMException instead
npm WARN deprecated eslint@8.57.1: This version is no longer supported. Please see https://eslint.org/version-support for other options.
npm WARN deprecated core-js@2.6.12: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.
--- stdout ---
added 1136 packages, and audited 1137 packages in 15s
174 packages are looking for funding
run `npm fund` for details
6 vulnerabilities (2 high, 4 critical)
To address issues that do not require attention, run:
npm audit fix
To address all issues (including breaking changes), run:
npm audit fix --force
Run `npm audit` for details.
--- end ---
$ package-lock-lint /src/repo/package-lock.json
--- stdout ---
Checking /src/repo/package-lock.json
--- end ---
$ ./node_modules/.bin/grunt stylelint
--- stdout ---
Running "stylelint:all" (stylelint) task
gateway_forms/mustache/forms.css
86:2 ✖ Redundant longhand property "list-style-image" after shorthand property "list-style" declaration-block-no-redundant-longhand-properties
✖ 1 problem (1 error, 0 warnings)
1 error potentially fixable with the "--fix" option.
⚠ 1 warning
Warning: Task "stylelint:all" failed. Use --force to continue.
Aborted due to warnings.
--- end ---
$ ./node_modules/.bin/stylelint modules/css/monthlyConvert.css modules/css/skinOverride.css modules/css/monthlyConvert_015.css ingenico_gateway/forms/css/ingenico.css modules/css/monthlyConvert_011.css modules/css/singleColumnForm.css modules/css/donorPortal.less modules/css/gateway.css modules/css/noCardSelect.css modules/css/monthlyConvert_annual.css amazon_gateway/amazon.css modules/css/jaVariants.css modules/css/secureCardInput.css modules/css/monthlyConvert_006.css modules/css/emailPreferences.css gateway_forms/mustache/forms.css modules/css/monthlyConvert_001.css --fix
--- stdout ---
--- end ---
$ ./node_modules/.bin/stylelint modules/css/monthlyConvert.css modules/css/skinOverride.css modules/css/monthlyConvert_015.css ingenico_gateway/forms/css/ingenico.css modules/css/monthlyConvert_011.css modules/css/singleColumnForm.css modules/css/donorPortal.less modules/css/gateway.css modules/css/noCardSelect.css modules/css/monthlyConvert_annual.css amazon_gateway/amazon.css modules/css/jaVariants.css modules/css/secureCardInput.css modules/css/monthlyConvert_006.css modules/css/emailPreferences.css gateway_forms/mustache/forms.css modules/css/monthlyConvert_001.css -f json
--- stdout ---
[{"source":"/src/repo/modules/css/monthlyConvert.css","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/css/skinOverride.css","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/css/monthlyConvert_015.css","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/css/monthlyConvert_011.css","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/css/singleColumnForm.css","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/css/donorPortal.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/css/gateway.css","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/css/noCardSelect.css","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/css/monthlyConvert_annual.css","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/css/jaVariants.css","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/css/secureCardInput.css","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/css/monthlyConvert_006.css","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/css/emailPreferences.css","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/css/monthlyConvert_001.css","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/ingenico_gateway/forms/css/ingenico.css","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/amazon_gateway/amazon.css","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/gateway_forms/mustache/forms.css","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]}]
--- end ---
$ /usr/bin/npm ci
--- stderr ---
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: '@wikimedia/codex@2.6.0',
npm WARN EBADENGINE required: { node: '>=20.20.2', npm: '>=10.8.2' },
npm WARN EBADENGINE current: { node: 'v20.19.2', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: '@wikimedia/codex-icons@2.6.0',
npm WARN EBADENGINE required: { node: '>=20.20.2', npm: '>=10.8.2' },
npm WARN EBADENGINE current: { node: 'v20.19.2', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: 'grunt-stylelint@0.21.0',
npm WARN EBADENGINE required: { node: '>=20.19.5' },
npm WARN EBADENGINE current: { node: 'v20.19.2', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN deprecated osenv@0.1.5: This package is no longer supported.
npm WARN deprecated inflight@1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
npm WARN deprecated @humanwhocodes/config-array@0.13.0: Use @eslint/config-array instead
npm WARN deprecated rimraf@3.0.2: Rimraf versions prior to v4 are no longer supported
npm WARN deprecated abab@2.0.6: Use your platform's native atob() and btoa() methods instead
npm WARN deprecated @humanwhocodes/object-schema@2.0.3: Use @eslint/object-schema instead
npm WARN deprecated glob@7.1.7: Glob versions prior to v9 are no longer supported
npm WARN deprecated domexception@4.0.0: Use your platform's native DOMException instead
npm WARN deprecated eslint@8.57.1: This version is no longer supported. Please see https://eslint.org/version-support for other options.
npm WARN deprecated core-js@2.6.12: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.
--- stdout ---
added 1136 packages, and audited 1137 packages in 16s
174 packages are looking for funding
run `npm fund` for details
6 vulnerabilities (2 high, 4 critical)
To address issues that do not require attention, run:
npm audit fix
To address all issues (including breaking changes), run:
npm audit fix --force
Run `npm audit` for details.
--- end ---
$ /usr/bin/npm test
--- stderr ---
PASS tests/jest/views/update-donations.test.js (5.237 s)
PASS tests/jest/views/annual-conversion.test.js (5.47 s)
● Console
console.warn
[Vue warn]: Invalid prop: type check failed for prop "errorCode". Expected String with value "[object Object]", got Object
at <ErrorComponent key=2 error-code= { message: 'API error' } >
at <AnnualConversionView ref="VTU_COMPONENT" >
at <VTUROOT>
at warn$1 (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:53:13)
at validateProp (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4363:7)
at validateProps (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4335:5)
at initProps (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4036:5)
at setupComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:7807:3)
at mountComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5159:7)
at processComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5125:9)
at patch (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4654:11)
at patchBlockChildren (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5008:7)
at patchElement (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4926:7)
at processElement (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4785:7)
at patch (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4642:11)
at ReactiveEffect.componentUpdateFn [as fn] (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5349:9)
at ReactiveEffect.run (node_modules/@vue/reactivity/dist/reactivity.cjs.js:229:19)
at ReactiveEffect.runIfDirty (node_modules/@vue/reactivity/dist/reactivity.cjs.js:267:12)
at callWithErrorHandling (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:200:33)
at flushJobs (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:405:9)
console.warn
[Vue warn]: Invalid prop: type check failed for prop "errorCode". Expected String with value "[object Object]", got Object
at <ErrorComponent key=2 error-code= { message: 'API error' } >
at <AnnualConversionView ref="VTU_COMPONENT" >
at <VTUROOT>
at warn$1 (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:53:13)
at validateProp (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4363:7)
at validateProps (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4335:5)
at initProps (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4036:5)
at setupComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:7807:3)
at mountComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5159:7)
at processComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5125:9)
at patch (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4654:11)
at patchBlockChildren (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5008:7)
at patchElement (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4926:7)
at processElement (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4785:7)
at patch (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4642:11)
at ReactiveEffect.componentUpdateFn [as fn] (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5349:9)
at ReactiveEffect.run (node_modules/@vue/reactivity/dist/reactivity.cjs.js:229:19)
at ReactiveEffect.runIfDirty (node_modules/@vue/reactivity/dist/reactivity.cjs.js:267:12)
at callWithErrorHandling (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:200:33)
at flushJobs (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:405:9)
PASS tests/jest/views/cancel-donations.test.js (5.609 s)
PASS tests/jest/views/amount-downgrade.test.js
● Console
console.warn
[Vue warn]: Invalid prop: type check failed for prop "errorCode". Expected String with value "[object Object]", got Object
at <ErrorComponent key=2 error-code= { message: 'API error' } >
at <AmountDowngradeView ref="VTU_COMPONENT" >
at <VTUROOT>
at warn$1 (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:53:13)
at validateProp (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4363:7)
at validateProps (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4335:5)
at initProps (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4036:5)
at setupComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:7807:3)
at mountComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5159:7)
at processComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5125:9)
at patch (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4654:11)
at patchBlockChildren (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5008:7)
at patchElement (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4926:7)
at processElement (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4785:7)
at patch (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4642:11)
at ReactiveEffect.componentUpdateFn [as fn] (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5349:9)
at ReactiveEffect.run (node_modules/@vue/reactivity/dist/reactivity.cjs.js:229:19)
at ReactiveEffect.runIfDirty (node_modules/@vue/reactivity/dist/reactivity.cjs.js:267:12)
at callWithErrorHandling (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:200:33)
at flushJobs (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:405:9)
PASS tests/jest/views/pause-donations.test.js
PASS tests/jest/views/login.test.js
PASS tests/jest/components/donations_list_table.test.js
PASS tests/jest/components/recurring_contribution.test.js
PASS tests/jest/views/manage-donations.test.js
PASS tests/jest/components/recurring-cancel-form.test.js
PASS tests/jest/components/recurring-cancel-confirmation.test.js
PASS tests/jest/components/donations_history.test.js
PASS tests/jest/views/home.test.js
PASS tests/jest/components/recurring-update-form.test.js
PASS tests/jest/components/recurring_contribution_summary.test.js
PASS tests/jest/components/header.test.js
PASS tests/jest/components/recurring-pause-form.test.js
PASS tests/jest/components/app.test.js
PASS tests/jest/routes/router.test.js
PASS tests/jest/components/recurring-cancel-success.test.js
PASS tests/jest/components/popup_link.test.js
PASS tests/jest/components/recurring-update-success.test.js
PASS tests/jest/components/contact_details.test.js
PASS tests/jest/components/recurring-cancel-option-container.test.js
PASS tests/jest/components/onetime_contribution.test.js
PASS tests/jest/components/greeting_component.test.js
PASS tests/jest/components/recurring-pause-success.test.js
PASS tests/jest/components/feedback-survey_component.test.js
PASS tests/jest/components/error-component.test.js
Test Suites: 29 passed, 29 total
Tests: 98 passed, 98 total
Snapshots: 0 total
Time: 11.102 s
Ran all test suites.
--- stdout ---
> test
> grunt test && npm run test:unit
Running "eslint:all" (eslint) task
/src/repo/Gruntfile.js
37:11 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
/src/repo/adyen_gateway/forms/adyen.js
1:26 warning 'Promise' is already defined as a built-in global variable no-redeclare
5:3 warning 'configFromServer' is never reassigned. Use 'const' instead prefer-const
6:3 warning 'payment_method' is never reassigned. Use 'const' instead prefer-const
8:3 warning 'country' is never reassigned. Use 'const' instead prefer-const
9:3 warning 'language' is never reassigned. Use 'const' instead prefer-const
17:3 warning 'GOOGLEPAY_COMPONENT_TYPE' is never reassigned. Use 'const' instead prefer-const
18:3 warning 'ACH_GET_DONOR_ADDRESS' is never reassigned. Use 'const' instead prefer-const
25:1 warning Missing JSDoc @return type jsdoc/require-returns-type
66:5 warning Unexpected var, use let or const instead no-var
82:23 warning ES2015 'Promise' class is forbidden es-x/no-promise
84:11 warning 'bContact' is never reassigned. Use 'const' instead prefer-const
85:8 warning 'sContact' is never reassigned. Use 'const' instead prefer-const
133:5 warning Unexpected var, use let or const instead no-var
164:23 warning ES2015 'Promise' class is forbidden es-x/no-promise
223:34 warning ES2015 'Promise' class is forbidden es-x/no-promise
227:14 warning ES2015 'Promise' class is forbidden es-x/no-promise
313:2 warning 'submitPromise' is never reassigned. Use 'const' instead prefer-const
313:22 warning ES2015 'Promise' class is forbidden es-x/no-promise
401:6 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
540:4 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
550:4 warning 'containerName' is never reassigned. Use 'const' instead prefer-const
554:3 warning 'component_type' is never reassigned. Use 'const' instead prefer-const
573:3 warning 'oldShowErrors' is never reassigned. Use 'const' instead prefer-const
595:3 warning 'config' is never reassigned. Use 'const' instead prefer-const
603:3 warning 'checkoutPromise' is never reassigned. Use 'const' instead prefer-const
627:4 warning ES2015 'Promise' class is forbidden es-x/no-promise
654:4 warning ES2015 'Promise' class is forbidden es-x/no-promise
/src/repo/amazon_gateway/amazon.js
3:6 warning 'clientId' is never reassigned. Use 'const' instead prefer-const
4:3 warning 'sellerId' is never reassigned. Use 'const' instead prefer-const
5:3 warning 'sandbox' is never reassigned. Use 'const' instead prefer-const
6:3 warning 'returnUrl' is never reassigned. Use 'const' instead prefer-const
7:3 warning 'widgetScript' is never reassigned. Use 'const' instead prefer-const
8:3 warning 'loginScript' is never reassigned. Use 'const' instead prefer-const
9:3 warning 'failPage' is never reassigned. Use 'const' instead prefer-const
10:3 warning 'isRecurring' is never reassigned. Use 'const' instead prefer-const
14:3 warning 'validTokenPattern' is never reassigned. Use 'const' instead prefer-const
14:23 warning Use a regular expression literal instead of the 'RegExp' constructor prefer-regex-literals
22:3 warning 'CARD_SELECT_DELAY' is never reassigned. Use 'const' instead prefer-const
98:2 warning 'accessToken' is never reassigned. Use 'const' instead prefer-const
99:2 warning 'loginError' is never reassigned. Use 'const' instead prefer-const
129:12 warning Avoid direct access to document.cookie. Use mw.cookie instead mediawiki/no-cookie
268:8 warning Selector extensions are not allowed no-jquery/no-sizzle
/src/repo/braintree_gateway/forms/braintree.js
10:6 warning 'di' is never reassigned. Use 'const' instead prefer-const
12:3 warning 'payment_method' is never reassigned. Use 'const' instead prefer-const
13:3 warning 'scripts' is never reassigned. Use 'const' instead prefer-const
/src/repo/dlocal_gateway/forms/dlocal.js
27:7 warning 'dlocalInstance' is never reassigned. Use 'const' instead prefer-const
28:4 warning 'fields' is never reassigned. Use 'const' instead prefer-const
33:4 warning 'commonStyle' is never reassigned. Use 'const' instead prefer-const
49:3 warning 'cardField' is never reassigned. Use 'const' instead prefer-const
55:3 warning 'expirationField' is never reassigned. Use 'const' instead prefer-const
61:3 warning 'cvvField' is never reassigned. Use 'const' instead prefer-const
/src/repo/gravy_gateway/forms/gravy.js
454:43 warning 'appleSession' is already declared in the upper scope on line 14 column 3 no-shadow
/src/repo/modules/ext.donationInterface.donorPortal/ApiUtils.js
13:16 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
/src/repo/modules/ext.donationInterface.donorPortal/components/DonationsDisclaimerComponent.vue
4:34 warning 'v-html' directive can lead to XSS attack vue/no-v-html
6:34 warning 'v-html' directive can lead to XSS attack vue/no-v-html
/src/repo/modules/ext.donationInterface.donorPortal/components/DonationsHistory.vue
128:25 warning 'panel' is already declared in the upper scope on line 138 column 10 no-shadow
/src/repo/modules/ext.donationInterface.donorPortal/components/DonationsListTable.vue
21:22 warning 'v-html' directive can lead to XSS attack vue/no-v-html
41:37 warning 'v-html' directive can lead to XSS attack vue/no-v-html
/src/repo/modules/ext.donationInterface.donorPortal/components/RecurringContributionAnnualConversionForm.vue
35:37 warning 'v-html' directive can lead to XSS attack vue/no-v-html
55:37 warning 'v-html' directive can lead to XSS attack vue/no-v-html
100:34 warning 'v-html' directive can lead to XSS attack vue/no-v-html
/src/repo/modules/ext.donationInterface.donorPortal/components/RecurringContributionAnnualConversionSuccess.vue
13:33 warning 'v-html' directive can lead to XSS attack vue/no-v-html
15:33 warning 'v-html' directive can lead to XSS attack vue/no-v-html
/src/repo/modules/ext.donationInterface.donorPortal/components/RecurringContributionCancelSuccess.vue
13:33 warning 'v-html' directive can lead to XSS attack vue/no-v-html
/src/repo/modules/ext.donationInterface.donorPortal/components/RecurringContributionComponent.vue
16:28 warning Unexpected usage of 'this' vue/this-in-template
27:31 warning 'v-html' directive can lead to XSS attack vue/no-v-html
46:20 warning Unexpected usage of 'this' vue/this-in-template
/src/repo/modules/ext.donationInterface.donorPortal/components/RecurringContributionPauseSuccess.vue
13:31 warning 'v-html' directive can lead to XSS attack vue/no-v-html
/src/repo/modules/ext.donationInterface.donorPortal/components/RecurringContributionUpdateSuccess.vue
15:33 warning 'v-html' directive can lead to XSS attack vue/no-v-html
/src/repo/modules/ext.donationInterface.donorPortal/views/LoginView.vue
8:6 warning 'v-html' directive can lead to XSS attack vue/no-v-html
37:7 warning 'v-html' directive can lead to XSS attack vue/no-v-html
66:8 warning 'v-html' directive can lead to XSS attack vue/no-v-html
76:17 warning 'v-html' directive can lead to XSS attack vue/no-v-html
/src/repo/modules/iframe.liberator.js
1:10 warning 'self' is already defined as a built-in global variable no-redeclare
/src/repo/modules/js/ext.donationInterface.applePayHelper.js
4:1 warning Missing JSDoc @param "$" type jsdoc/require-param-type
5:1 warning Missing JSDoc @param "mw" type jsdoc/require-param-type
/src/repo/modules/js/ext.donationInterface.employerAutoComplete.js
28:21 warning Prefer .then to .done no-jquery/no-done-fail
/src/repo/modules/js/ext.donationInterface.errorLog.js
16:3 warning 'postdata' is never reassigned. Use 'const' instead prefer-const
/src/repo/modules/js/ext.donationInterface.forms.js
4:1 warning Missing JSDoc @param "$" type jsdoc/require-param-type
5:1 warning Missing JSDoc @param "mw" type jsdoc/require-param-type
74:27 warning Selector extensions are not allowed no-jquery/no-sizzle
90:12 warning '$element' is never reassigned. Use 'const' instead prefer-const
107:1 warning Missing JSDoc @param "checkboxName" type jsdoc/require-param-type
111:12 warning '$element' is never reassigned. Use 'const' instead prefer-const
126:1 warning The type 'result' is undefined jsdoc/no-undefined-types
148:3 warning 'sendData' is never reassigned. Use 'const' instead prefer-const
187:4 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
239:14 warning ES2015 'Promise' class is forbidden es-x/no-promise
269:10 warning ES2015 'Promise' class is forbidden es-x/no-promise
283:4 warning ES2015 'Promise' class is forbidden es-x/no-promise
321:10 warning Selector extensions are not allowed no-jquery/no-sizzle
325:30 warning Selector extensions are not allowed no-jquery/no-sizzle
/src/repo/modules/js/ext.donationInterface.jaVariant02.js
8:1 warning Missing JSDoc @param "mw" type jsdoc/require-param-type
9:1 warning Missing JSDoc @param "$" type jsdoc/require-param-type
/src/repo/modules/js/ext.donationInterface.monthlyConvert.js
2:6 warning 'mc' is never reassigned. Use 'const' instead prefer-const
6:3 warning 'tyUrl' is never reassigned. Use 'const' instead prefer-const
9:3 warning 'convertAmounts' is never reassigned. Use 'const' instead prefer-const
17:3 warning 'numAmounts' is never reassigned. Use 'const' instead prefer-const
37:49 warning 'currency' is already declared in the upper scope on line 3 column 3 no-shadow
78:39 warning 'currency' is already declared in the upper scope on line 3 column 3 no-shadow
147:51 warning 'currency' is already declared in the upper scope on line 3 column 3 no-shadow
148:7 warning 'rates' is never reassigned. Use 'const' instead prefer-const
149:4 warning 'amountRules' is never reassigned. Use 'const' instead prefer-const
151:4 warning '$smallAmountMessage' is never reassigned. Use 'const' instead prefer-const
161:3 warning 'formattedMin' is never reassigned. Use 'const' instead prefer-const
177:4 warning 'locale' is never reassigned. Use 'const' instead prefer-const
180:3 warning 'presetAmount' is never reassigned. Use 'const' instead prefer-const
/src/repo/modules/js/ext.donationInterface.monthlyConvertAnnual.js
3:7 warning 'mc' is never reassigned. Use 'const' instead prefer-const
3:31 warning 'originalGetSendData' is never reassigned. Use 'const' instead prefer-const
4:4 warning 'originalAmount' is never reassigned. Use 'const' instead prefer-const
5:4 warning '$otherAmountMonthlyInput' is never reassigned. Use 'const' instead prefer-const
5:62 warning '$otherAmountAnnualInput' is never reassigned. Use 'const' instead prefer-const
6:4 warning '$otherMonthlySubmit' is never reassigned. Use 'const' instead prefer-const
6:60 warning '$otherAnnualSubmit' is never reassigned. Use 'const' instead prefer-const
7:4 warning '$smallAmountMessage' is never reassigned. Use 'const' instead prefer-const
15:3 warning 'originalAmountFormatted' is never reassigned. Use 'const' instead prefer-const
/src/repo/modules/js/ext.donationInterface.monthlyConvertMultiplier.js
3:7 warning 'mc' is never reassigned. Use 'const' instead prefer-const
4:3 warning 'originalAmount' is never reassigned. Use 'const' instead prefer-const
/src/repo/modules/js/ext.donationInterface.monthlyConvert_011.js
3:7 warning 'mc' is never reassigned. Use 'const' instead prefer-const
4:4 warning 'locale' is never reassigned. Use 'const' instead prefer-const
5:3 warning 'originalAmount' is never reassigned. Use 'const' instead prefer-const
6:3 warning 'currency' is never reassigned. Use 'const' instead prefer-const
7:3 warning 'presetAmount' is never reassigned. Use 'const' instead prefer-const
8:3 warning 'formattedAsk' is never reassigned. Use 'const' instead prefer-const
/src/repo/modules/js/ext.donationInterface.recurUpgrade.js
3:7 warning '$submitButton' is never reassigned. Use 'const' instead prefer-const
4:4 warning '$amountField' is never reassigned. Use 'const' instead prefer-const
5:4 warning '$otherAmountField' is never reassigned. Use 'const' instead prefer-const
6:4 warning '$totalMessage' is never reassigned. Use 'const' instead prefer-const
7:4 warning '$newTotalAmount' is never reassigned. Use 'const' instead prefer-const
8:4 warning '$form' is never reassigned. Use 'const' instead prefer-const
9:4 warning 'originalAmount' is never reassigned. Use 'const' instead prefer-const
10:4 warning 'currency' is never reassigned. Use 'const' instead prefer-const
11:4 warning 'maximum' is never reassigned. Use 'const' instead prefer-const
12:4 warning 'nextDateFormatted' is never reassigned. Use 'const' instead prefer-const
14:4 warning 'preSelectAmount' is never reassigned. Use 'const' instead prefer-const
38:4 warning 'valueIsValid' is never reassigned. Use 'const' instead prefer-const
/src/repo/modules/js/ext.donationInterface.validation.js
7:1 warning Missing JSDoc @param "$" type jsdoc/require-param-type
8:1 warning Missing JSDoc @param "mw" type jsdoc/require-param-type
11:6 warning 'di' is never reassigned. Use 'const' instead prefer-const
13:3 warning 'mcDomains' is never reassigned. Use 'const' instead prefer-const
33:3 warning 'multiCountrySubdomains' is never reassigned. Use 'const' instead prefer-const
34:3 warning 'countryTlds' is never reassigned. Use 'const' instead prefer-const
40:26 warning 'i' is already declared in the upper scope on line 39 column 36 no-shadow
/src/repo/modules/validate_input.js
1:1 warning Missing JSDoc @return declaration jsdoc/require-returns
9:3 warning 'rates' is never reassigned. Use 'const' instead prefer-const
10:3 warning 'amountRules' is never reassigned. Use 'const' instead prefer-const
14:3 warning '$amountMsg' is never reassigned. Use 'const' instead prefer-const
15:3 warning 'threeDecimalCurrencies' is never reassigned. Use 'const' instead prefer-const
86:3 warning 'invalids' is never reassigned. Use 'const' instead prefer-const
87:3 warning 'rules' is never reassigned. Use 'const' instead prefer-const
105:27 warning 'value' is already declared in the upper scope on line 82 column 6 no-shadow
107:14 warning All possible message keys should be documented. See https://w.wiki/4r9a for details mediawiki/msg-doc
113:23 warning 'i' is already declared in the upper scope on line 85 column 3 no-shadow
145:2 warning 'countryField' is never reassigned. Use 'const' instead prefer-const
168:2 warning 'emailAdd' is never reassigned. Use 'const' instead prefer-const
220:2 warning 'phoneAdd' is never reassigned. Use 'const' instead prefer-const
241:11 warning Avoid direct access to document.cookie. Use mw.cookie instead mediawiki/no-cookie
242:16 warning Avoid direct access to document.cookie. Use mw.cookie instead mediawiki/no-cookie
243:12 warning Avoid direct access to document.cookie. Use mw.cookie instead mediawiki/no-cookie
/src/repo/paypal_ec_gateway/forms/js/paypal.js
2:6 warning 'di' is never reassigned. Use 'const' instead prefer-const
3:3 warning 'rules' is never reassigned. Use 'const' instead prefer-const
/src/repo/tests/jest/components/recurring_contribution.test.js
58:19 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
72:19 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
108:19 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
/src/repo/tests/jest/views/amount-downgrade.test.js
5:34 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
/src/repo/tests/jest/views/annual-conversion.test.js
5:34 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
/src/repo/tests/jest/views/cancel-donations.test.js
5:34 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
/src/repo/tests/jest/views/home.test.js
2:34 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
/src/repo/tests/jest/views/manage-donations.test.js
4:34 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
/src/repo/tests/jest/views/pause-donations.test.js
5:34 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
/src/repo/tests/jest/views/update-donations.test.js
5:34 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
✖ 172 problems (0 errors, 172 warnings)
0 errors and 2 warnings potentially fixable with the `--fix` option.
Running "stylelint:all" (stylelint) task
>> Linted 17 files without errors
Running "banana:DonationInterface" (banana) task
>> The "fr" translation has 1 translation with trailing whitespace:
>> * donorportal-coming-soon
>> 10 message directories checked.
Done.
> test:unit
> jest
----------------------------------------------------|---------|----------|---------|---------|-----------------------
File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s
----------------------------------------------------|---------|----------|---------|---------|-----------------------
All files | 94.34 | 85.6 | 88.02 | 94.31 |
ext.donationInterface.donorPortal | 77.38 | 63.63 | 86.66 | 77.38 |
ApiUtils.js | 93.75 | 50 | 100 | 93.75 | 41
normalizeInput.js | 63.88 | 59.45 | 75 | 63.88 | 4,21,32-35,54-66
router.js | 80.76 | 71.42 | 50 | 80.76 | 13-14,20-21,54
trackingParams.js | 100 | 100 | 100 | 100 |
ext.donationInterface.donorPortal/components | 95.14 | 90.76 | 84.77 | 95.14 |
App.vue | 100 | 100 | 100 | 100 |
DonationsDisclaimerComponent.vue | 100 | 100 | 100 | 100 |
DonationsHistory.vue | 94.44 | 100 | 75 | 94.44 | 16-23
DonationsListTable.vue | 89.28 | 94.44 | 73.33 | 89.28 | 23,40,137-153,183-199
DonorCardComponent.vue | 100 | 90 | 100 | 100 | 78
DonorContactDetails.vue | 93.93 | 86.36 | 100 | 93.93 | 46,48
EndowmentInformationComponent.vue | 100 | 100 | 100 | 100 |
ErrorComponent.vue | 100 | 100 | 100 | 100 |
FeedbackSurveyComponent.vue | 100 | 100 | 100 | 100 |
GreetingComponent.vue | 100 | 100 | 100 | 100 |
Header.vue | 87.17 | 88.23 | 66.66 | 87.17 | 30-37,134
OnetimeContribution.vue | 100 | 100 | 100 | 100 |
PopupLink.vue | 100 | 100 | 100 | 100 |
RadioButtonInput.vue | 94.44 | 100 | 75 | 94.44 | 63
RecurringContributionAnnualConversionForm.vue | 93.02 | 78.04 | 70 | 93.02 | 19,50,217-245,262
RecurringContributionAnnualConversionSuccess.vue | 96 | 100 | 83.33 | 96 | 17
RecurringContributionCancelAltOptionContainer.vue | 100 | 100 | 83.33 | 100 |
RecurringContributionCancelConfirmation.vue | 97.22 | 90 | 90 | 97.22 | 22
RecurringContributionCancelForm.vue | 94.23 | 91.66 | 85.71 | 94.23 | 24,52,55
RecurringContributionCancelSuccess.vue | 96.42 | 50 | 100 | 96.42 | 28
RecurringContributionComponent.vue | 89.55 | 89.65 | 88.88 | 89.55 | 42-45,51,56,182
RecurringContributionPauseForm.vue | 97.14 | 100 | 87.5 | 97.14 | 22
RecurringContributionPauseSuccess.vue | 94.44 | 100 | 75 | 94.44 | 17
RecurringContributionSummary.vue | 100 | 100 | 100 | 100 |
RecurringContributionUpdateForm.vue | 96.72 | 89.18 | 83.33 | 96.72 | 85,183
RecurringContributionUpdateSuccess.vue | 100 | 100 | 100 | 100 |
RelatedContentComponent.vue | 94.11 | 100 | 60 | 94.11 | 102-108
ext.donationInterface.donorPortal/views | 96.31 | 81.66 | 97.22 | 96.25 |
AmountDowngrade.vue | 97.61 | 70 | 100 | 97.56 | 31
AnnualConversion.vue | 97.5 | 70 | 100 | 97.43 | 32
CancelDonations.vue | 98.38 | 77.77 | 100 | 98.36 | 35
Home.vue | 96.77 | 90 | 100 | 96.77 | 38
LoginView.vue | 90 | 89.47 | 90.47 | 90 | 36-38,60-62,94,207
ManageDonations.vue | 98.07 | 91.66 | 100 | 98.03 | 21
PauseDonations.vue | 97.61 | 70 | 100 | 97.56 | 29
UpdateDonations.vue | 97.56 | 75 | 100 | 97.5 | 30
----------------------------------------------------|---------|----------|---------|---------|-----------------------
--- end ---
$ /usr/bin/npm audit --json
--- stdout ---
{
"auditReportVersion": 2,
"vulnerabilities": {
"babel-core": {
"name": "babel-core",
"severity": "critical",
"isDirect": true,
"via": [
"babel-helpers",
"babel-register",
"babel-template",
"babel-traverse",
"json5"
],
"effects": [
"babel-register"
],
"range": "5.8.20 - 7.0.0-beta.3",
"nodes": [
"node_modules/babel-core"
],
"fixAvailable": {
"name": "babel-core",
"version": "4.7.16",
"isSemVerMajor": true
}
},
"babel-helpers": {
"name": "babel-helpers",
"severity": "critical",
"isDirect": false,
"via": [
"babel-template"
],
"effects": [],
"range": "*",
"nodes": [
"node_modules/babel-helpers"
],
"fixAvailable": true
},
"babel-register": {
"name": "babel-register",
"severity": "high",
"isDirect": false,
"via": [
"babel-core"
],
"effects": [
"babel-core"
],
"range": "*",
"nodes": [
"node_modules/babel-register"
],
"fixAvailable": {
"name": "babel-core",
"version": "4.7.16",
"isSemVerMajor": true
}
},
"babel-template": {
"name": "babel-template",
"severity": "critical",
"isDirect": false,
"via": [
"babel-traverse"
],
"effects": [
"babel-helpers"
],
"range": "*",
"nodes": [
"node_modules/babel-template"
],
"fixAvailable": true
},
"babel-traverse": {
"name": "babel-traverse",
"severity": "critical",
"isDirect": false,
"via": [
{
"source": 1117412,
"name": "babel-traverse",
"dependency": "babel-traverse",
"title": "Babel vulnerable to arbitrary code execution when compiling specifically crafted malicious code",
"url": "https://github.com/advisories/GHSA-67hx-6x53-jw92",
"severity": "critical",
"cwe": [
"CWE-184",
"CWE-697"
],
"cvss": {
"score": 9.3,
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H"
},
"range": "<7.23.2"
}
],
"effects": [
"babel-core",
"babel-template"
],
"range": "*",
"nodes": [
"node_modules/babel-traverse"
],
"fixAvailable": {
"name": "babel-core",
"version": "4.7.16",
"isSemVerMajor": true
}
},
"json5": {
"name": "json5",
"severity": "high",
"isDirect": false,
"via": [
{
"source": 1096543,
"name": "json5",
"dependency": "json5",
"title": "Prototype Pollution in JSON5 via Parse Method",
"url": "https://github.com/advisories/GHSA-9c47-m6qq-7p4h",
"severity": "high",
"cwe": [
"CWE-1321"
],
"cvss": {
"score": 7.1,
"vectorString": "CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:L/A:H"
},
"range": "<1.0.2"
}
],
"effects": [
"babel-core"
],
"range": "<1.0.2",
"nodes": [
"node_modules/babel-core/node_modules/json5"
],
"fixAvailable": {
"name": "babel-core",
"version": "4.7.16",
"isSemVerMajor": true
}
}
},
"metadata": {
"vulnerabilities": {
"info": 0,
"low": 0,
"moderate": 0,
"high": 2,
"critical": 4,
"total": 6
},
"dependencies": {
"prod": 1,
"dev": 1137,
"optional": 3,
"peer": 23,
"peerOptional": 0,
"total": 1137
}
}
}
--- end ---
Attempting to npm audit fix
$ /usr/bin/npm audit fix --dry-run --only=dev --json
--- stderr ---
npm WARN invalid config only="dev" set in command line options
npm WARN invalid config Must be one of: null, prod, production
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: '@wikimedia/codex@2.6.0',
npm WARN EBADENGINE required: { node: '>=20.20.2', npm: '>=10.8.2' },
npm WARN EBADENGINE current: { node: 'v20.19.2', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: '@wikimedia/codex-icons@2.6.0',
npm WARN EBADENGINE required: { node: '>=20.20.2', npm: '>=10.8.2' },
npm WARN EBADENGINE current: { node: 'v20.19.2', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: 'grunt-stylelint@0.21.0',
npm WARN EBADENGINE required: { node: '>=20.19.5' },
npm WARN EBADENGINE current: { node: 'v20.19.2', npm: '9.2.0' }
npm WARN EBADENGINE }
--- stdout ---
{
"added": 1,
"removed": 0,
"changed": 0,
"audited": 1138,
"funding": 174,
"audit": {
"auditReportVersion": 2,
"vulnerabilities": {
"babel-core": {
"name": "babel-core",
"severity": "critical",
"isDirect": true,
"via": [
"babel-helpers",
"babel-register",
"babel-template",
"babel-traverse",
"json5"
],
"effects": [
"babel-register"
],
"range": "5.8.20 - 7.0.0-beta.3",
"nodes": [
"node_modules/babel-core"
],
"fixAvailable": {
"name": "babel-core",
"version": "4.7.16",
"isSemVerMajor": true
}
},
"babel-helpers": {
"name": "babel-helpers",
"severity": "critical",
"isDirect": false,
"via": [
"babel-template"
],
"effects": [],
"range": "*",
"nodes": [
"node_modules/babel-helpers"
],
"fixAvailable": true
},
"babel-register": {
"name": "babel-register",
"severity": "high",
"isDirect": false,
"via": [
"babel-core"
],
"effects": [
"babel-core"
],
"range": "*",
"nodes": [
"node_modules/babel-register"
],
"fixAvailable": {
"name": "babel-core",
"version": "4.7.16",
"isSemVerMajor": true
}
},
"babel-template": {
"name": "babel-template",
"severity": "critical",
"isDirect": false,
"via": [
"babel-traverse"
],
"effects": [
"babel-helpers"
],
"range": "*",
"nodes": [
"node_modules/babel-template"
],
"fixAvailable": true
},
"babel-traverse": {
"name": "babel-traverse",
"severity": "critical",
"isDirect": false,
"via": [
{
"source": 1117412,
"name": "babel-traverse",
"dependency": "babel-traverse",
"title": "Babel vulnerable to arbitrary code execution when compiling specifically crafted malicious code",
"url": "https://github.com/advisories/GHSA-67hx-6x53-jw92",
"severity": "critical",
"cwe": [
"CWE-184",
"CWE-697"
],
"cvss": {
"score": 9.3,
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H"
},
"range": "<7.23.2"
}
],
"effects": [
"babel-core",
"babel-template"
],
"range": "*",
"nodes": [
"node_modules/babel-traverse"
],
"fixAvailable": {
"name": "babel-core",
"version": "4.7.16",
"isSemVerMajor": true
}
},
"json5": {
"name": "json5",
"severity": "high",
"isDirect": false,
"via": [
{
"source": 1096543,
"name": "json5",
"dependency": "json5",
"title": "Prototype Pollution in JSON5 via Parse Method",
"url": "https://github.com/advisories/GHSA-9c47-m6qq-7p4h",
"severity": "high",
"cwe": [
"CWE-1321"
],
"cvss": {
"score": 7.1,
"vectorString": "CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:L/A:H"
},
"range": "<1.0.2"
}
],
"effects": [
"babel-core"
],
"range": "<1.0.2",
"nodes": [
"node_modules/babel-core/node_modules/json5"
],
"fixAvailable": {
"name": "babel-core",
"version": "4.7.16",
"isSemVerMajor": true
}
}
},
"metadata": {
"vulnerabilities": {
"info": 0,
"low": 0,
"moderate": 0,
"high": 2,
"critical": 4,
"total": 6
},
"dependencies": {
"prod": 1,
"dev": 1137,
"optional": 3,
"peer": 23,
"peerOptional": 0,
"total": 1137
}
}
}
}
--- end ---
{"added": 1, "removed": 0, "changed": 0, "audited": 1138, "funding": 174, "audit": {"auditReportVersion": 2, "vulnerabilities": {"babel-core": {"name": "babel-core", "severity": "critical", "isDirect": true, "via": ["babel-helpers", "babel-register", "babel-template", "babel-traverse", "json5"], "effects": ["babel-register"], "range": "5.8.20 - 7.0.0-beta.3", "nodes": ["node_modules/babel-core"], "fixAvailable": {"name": "babel-core", "version": "4.7.16", "isSemVerMajor": true}}, "babel-helpers": {"name": "babel-helpers", "severity": "critical", "isDirect": false, "via": ["babel-template"], "effects": [], "range": "*", "nodes": ["node_modules/babel-helpers"], "fixAvailable": true}, "babel-register": {"name": "babel-register", "severity": "high", "isDirect": false, "via": ["babel-core"], "effects": ["babel-core"], "range": "*", "nodes": ["node_modules/babel-register"], "fixAvailable": {"name": "babel-core", "version": "4.7.16", "isSemVerMajor": true}}, "babel-template": {"name": "babel-template", "severity": "critical", "isDirect": false, "via": ["babel-traverse"], "effects": ["babel-helpers"], "range": "*", "nodes": ["node_modules/babel-template"], "fixAvailable": true}, "babel-traverse": {"name": "babel-traverse", "severity": "critical", "isDirect": false, "via": [{"source": 1117412, "name": "babel-traverse", "dependency": "babel-traverse", "title": "Babel vulnerable to arbitrary code execution when compiling specifically crafted malicious code", "url": "https://github.com/advisories/GHSA-67hx-6x53-jw92", "severity": "critical", "cwe": ["CWE-184", "CWE-697"], "cvss": {"score": 9.3, "vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H"}, "range": "<7.23.2"}], "effects": ["babel-core", "babel-template"], "range": "*", "nodes": ["node_modules/babel-traverse"], "fixAvailable": {"name": "babel-core", "version": "4.7.16", "isSemVerMajor": true}}, "json5": {"name": "json5", "severity": "high", "isDirect": false, "via": [{"source": 1096543, "name": "json5", "dependency": "json5", "title": "Prototype Pollution in JSON5 via Parse Method", "url": "https://github.com/advisories/GHSA-9c47-m6qq-7p4h", "severity": "high", "cwe": ["CWE-1321"], "cvss": {"score": 7.1, "vectorString": "CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:L/A:H"}, "range": "<1.0.2"}], "effects": ["babel-core"], "range": "<1.0.2", "nodes": ["node_modules/babel-core/node_modules/json5"], "fixAvailable": {"name": "babel-core", "version": "4.7.16", "isSemVerMajor": true}}}, "metadata": {"vulnerabilities": {"info": 0, "low": 0, "moderate": 0, "high": 2, "critical": 4, "total": 6}, "dependencies": {"prod": 1, "dev": 1137, "optional": 3, "peer": 23, "peerOptional": 0, "total": 1137}}}}
$ /usr/bin/npm audit fix --only=dev
--- stderr ---
npm WARN invalid config only="dev" set in command line options
npm WARN invalid config Must be one of: null, prod, production
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: '@wikimedia/codex@2.6.0',
npm WARN EBADENGINE required: { node: '>=20.20.2', npm: '>=10.8.2' },
npm WARN EBADENGINE current: { node: 'v20.19.2', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: '@wikimedia/codex-icons@2.6.0',
npm WARN EBADENGINE required: { node: '>=20.20.2', npm: '>=10.8.2' },
npm WARN EBADENGINE current: { node: 'v20.19.2', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: 'grunt-stylelint@0.21.0',
npm WARN EBADENGINE required: { node: '>=20.19.5' },
npm WARN EBADENGINE current: { node: 'v20.19.2', npm: '9.2.0' }
npm WARN EBADENGINE }
--- stdout ---
up to date, audited 1137 packages in 4s
174 packages are looking for funding
run `npm fund` for details
# npm audit report
babel-traverse *
Severity: critical
Babel vulnerable to arbitrary code execution when compiling specifically crafted malicious code - https://github.com/advisories/GHSA-67hx-6x53-jw92
fix available via `npm audit fix --force`
Will install babel-core@4.7.16, which is a breaking change
node_modules/babel-traverse
babel-core 5.8.20 - 7.0.0-beta.3
Depends on vulnerable versions of babel-helpers
Depends on vulnerable versions of babel-register
Depends on vulnerable versions of babel-template
Depends on vulnerable versions of babel-traverse
Depends on vulnerable versions of json5
node_modules/babel-core
babel-register *
Depends on vulnerable versions of babel-core
node_modules/babel-register
babel-template *
Depends on vulnerable versions of babel-traverse
node_modules/babel-template
babel-helpers *
Depends on vulnerable versions of babel-template
node_modules/babel-helpers
json5 <1.0.2
Severity: high
Prototype Pollution in JSON5 via Parse Method - https://github.com/advisories/GHSA-9c47-m6qq-7p4h
fix available via `npm audit fix --force`
Will install babel-core@4.7.16, which is a breaking change
node_modules/babel-core/node_modules/json5
6 vulnerabilities (2 high, 4 critical)
To address issues that do not require attention, run:
npm audit fix
To address all issues (including breaking changes), run:
npm audit fix --force
--- end ---
Verifying that tests still pass
$ /usr/bin/npm ci
--- stderr ---
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: '@wikimedia/codex@2.6.0',
npm WARN EBADENGINE required: { node: '>=20.20.2', npm: '>=10.8.2' },
npm WARN EBADENGINE current: { node: 'v20.19.2', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: '@wikimedia/codex-icons@2.6.0',
npm WARN EBADENGINE required: { node: '>=20.20.2', npm: '>=10.8.2' },
npm WARN EBADENGINE current: { node: 'v20.19.2', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: 'grunt-stylelint@0.21.0',
npm WARN EBADENGINE required: { node: '>=20.19.5' },
npm WARN EBADENGINE current: { node: 'v20.19.2', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN deprecated osenv@0.1.5: This package is no longer supported.
npm WARN deprecated inflight@1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
npm WARN deprecated @humanwhocodes/config-array@0.13.0: Use @eslint/config-array instead
npm WARN deprecated rimraf@3.0.2: Rimraf versions prior to v4 are no longer supported
npm WARN deprecated abab@2.0.6: Use your platform's native atob() and btoa() methods instead
npm WARN deprecated @humanwhocodes/object-schema@2.0.3: Use @eslint/object-schema instead
npm WARN deprecated glob@7.1.7: Glob versions prior to v9 are no longer supported
npm WARN deprecated domexception@4.0.0: Use your platform's native DOMException instead
npm WARN deprecated eslint@8.57.1: This version is no longer supported. Please see https://eslint.org/version-support for other options.
npm WARN deprecated core-js@2.6.12: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.
--- stdout ---
added 1136 packages, and audited 1137 packages in 15s
174 packages are looking for funding
run `npm fund` for details
6 vulnerabilities (2 high, 4 critical)
To address issues that do not require attention, run:
npm audit fix
To address all issues (including breaking changes), run:
npm audit fix --force
Run `npm audit` for details.
--- end ---
$ /usr/bin/npm test
--- stderr ---
PASS tests/jest/views/update-donations.test.js
PASS tests/jest/views/annual-conversion.test.js
● Console
console.warn
[Vue warn]: Invalid prop: type check failed for prop "errorCode". Expected String with value "[object Object]", got Object
at <ErrorComponent key=2 error-code= { message: 'API error' } >
at <AnnualConversionView ref="VTU_COMPONENT" >
at <VTUROOT>
at warn$1 (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:53:13)
at validateProp (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4363:7)
at validateProps (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4335:5)
at initProps (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4036:5)
at setupComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:7807:3)
at mountComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5159:7)
at processComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5125:9)
at patch (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4654:11)
at patchBlockChildren (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5008:7)
at patchElement (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4926:7)
at processElement (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4785:7)
at patch (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4642:11)
at ReactiveEffect.componentUpdateFn [as fn] (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5349:9)
at ReactiveEffect.run (node_modules/@vue/reactivity/dist/reactivity.cjs.js:229:19)
at ReactiveEffect.runIfDirty (node_modules/@vue/reactivity/dist/reactivity.cjs.js:267:12)
at callWithErrorHandling (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:200:33)
at flushJobs (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:405:9)
console.warn
[Vue warn]: Invalid prop: type check failed for prop "errorCode". Expected String with value "[object Object]", got Object
at <ErrorComponent key=2 error-code= { message: 'API error' } >
at <AnnualConversionView ref="VTU_COMPONENT" >
at <VTUROOT>
at warn$1 (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:53:13)
at validateProp (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4363:7)
at validateProps (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4335:5)
at initProps (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4036:5)
at setupComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:7807:3)
at mountComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5159:7)
at processComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5125:9)
at patch (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4654:11)
at patchBlockChildren (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5008:7)
at patchElement (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4926:7)
at processElement (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4785:7)
at patch (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4642:11)
at ReactiveEffect.componentUpdateFn [as fn] (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5349:9)
at ReactiveEffect.run (node_modules/@vue/reactivity/dist/reactivity.cjs.js:229:19)
at ReactiveEffect.runIfDirty (node_modules/@vue/reactivity/dist/reactivity.cjs.js:267:12)
at callWithErrorHandling (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:200:33)
at flushJobs (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:405:9)
PASS tests/jest/views/cancel-donations.test.js
PASS tests/jest/views/home.test.js
PASS tests/jest/views/login.test.js
PASS tests/jest/components/recurring-cancel-form.test.js
PASS tests/jest/routes/router.test.js
PASS tests/jest/views/amount-downgrade.test.js
● Console
console.warn
[Vue warn]: Invalid prop: type check failed for prop "errorCode". Expected String with value "[object Object]", got Object
at <ErrorComponent key=2 error-code= { message: 'API error' } >
at <AmountDowngradeView ref="VTU_COMPONENT" >
at <VTUROOT>
at warn$1 (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:53:13)
at validateProp (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4363:7)
at validateProps (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4335:5)
at initProps (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4036:5)
at setupComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:7807:3)
at mountComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5159:7)
at processComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5125:9)
at patch (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4654:11)
at patchBlockChildren (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5008:7)
at patchElement (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4926:7)
at processElement (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4785:7)
at patch (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4642:11)
at ReactiveEffect.componentUpdateFn [as fn] (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5349:9)
at ReactiveEffect.run (node_modules/@vue/reactivity/dist/reactivity.cjs.js:229:19)
at ReactiveEffect.runIfDirty (node_modules/@vue/reactivity/dist/reactivity.cjs.js:267:12)
at callWithErrorHandling (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:200:33)
at flushJobs (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:405:9)
PASS tests/jest/components/donations_history.test.js
PASS tests/jest/components/recurring-cancel-confirmation.test.js
PASS tests/jest/components/donations_list_table.test.js
PASS tests/jest/views/pause-donations.test.js
PASS tests/jest/components/recurring-update-form.test.js
PASS tests/jest/views/manage-donations.test.js
PASS tests/jest/components/header.test.js
PASS tests/jest/components/recurring_contribution.test.js
PASS tests/jest/components/recurring_contribution_summary.test.js
PASS tests/jest/components/recurring-cancel-success.test.js
PASS tests/jest/components/recurring-pause-form.test.js
PASS tests/jest/components/error-component.test.js
PASS tests/jest/components/app.test.js
PASS tests/jest/components/recurring-pause-success.test.js
PASS tests/jest/components/recurring-update-success.test.js
PASS tests/jest/components/feedback-survey_component.test.js
PASS tests/jest/components/contact_details.test.js
PASS tests/jest/components/onetime_contribution.test.js
PASS tests/jest/components/popup_link.test.js
PASS tests/jest/components/recurring-cancel-option-container.test.js
PASS tests/jest/components/greeting_component.test.js
Test Suites: 29 passed, 29 total
Tests: 98 passed, 98 total
Snapshots: 0 total
Time: 8.97 s
Ran all test suites.
--- stdout ---
> test
> grunt test && npm run test:unit
Running "eslint:all" (eslint) task
/src/repo/Gruntfile.js
37:11 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
/src/repo/adyen_gateway/forms/adyen.js
1:26 warning 'Promise' is already defined as a built-in global variable no-redeclare
5:3 warning 'configFromServer' is never reassigned. Use 'const' instead prefer-const
6:3 warning 'payment_method' is never reassigned. Use 'const' instead prefer-const
8:3 warning 'country' is never reassigned. Use 'const' instead prefer-const
9:3 warning 'language' is never reassigned. Use 'const' instead prefer-const
17:3 warning 'GOOGLEPAY_COMPONENT_TYPE' is never reassigned. Use 'const' instead prefer-const
18:3 warning 'ACH_GET_DONOR_ADDRESS' is never reassigned. Use 'const' instead prefer-const
25:1 warning Missing JSDoc @return type jsdoc/require-returns-type
66:5 warning Unexpected var, use let or const instead no-var
82:23 warning ES2015 'Promise' class is forbidden es-x/no-promise
84:11 warning 'bContact' is never reassigned. Use 'const' instead prefer-const
85:8 warning 'sContact' is never reassigned. Use 'const' instead prefer-const
133:5 warning Unexpected var, use let or const instead no-var
164:23 warning ES2015 'Promise' class is forbidden es-x/no-promise
223:34 warning ES2015 'Promise' class is forbidden es-x/no-promise
227:14 warning ES2015 'Promise' class is forbidden es-x/no-promise
313:2 warning 'submitPromise' is never reassigned. Use 'const' instead prefer-const
313:22 warning ES2015 'Promise' class is forbidden es-x/no-promise
401:6 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
540:4 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
550:4 warning 'containerName' is never reassigned. Use 'const' instead prefer-const
554:3 warning 'component_type' is never reassigned. Use 'const' instead prefer-const
573:3 warning 'oldShowErrors' is never reassigned. Use 'const' instead prefer-const
595:3 warning 'config' is never reassigned. Use 'const' instead prefer-const
603:3 warning 'checkoutPromise' is never reassigned. Use 'const' instead prefer-const
627:4 warning ES2015 'Promise' class is forbidden es-x/no-promise
654:4 warning ES2015 'Promise' class is forbidden es-x/no-promise
/src/repo/amazon_gateway/amazon.js
3:6 warning 'clientId' is never reassigned. Use 'const' instead prefer-const
4:3 warning 'sellerId' is never reassigned. Use 'const' instead prefer-const
5:3 warning 'sandbox' is never reassigned. Use 'const' instead prefer-const
6:3 warning 'returnUrl' is never reassigned. Use 'const' instead prefer-const
7:3 warning 'widgetScript' is never reassigned. Use 'const' instead prefer-const
8:3 warning 'loginScript' is never reassigned. Use 'const' instead prefer-const
9:3 warning 'failPage' is never reassigned. Use 'const' instead prefer-const
10:3 warning 'isRecurring' is never reassigned. Use 'const' instead prefer-const
14:3 warning 'validTokenPattern' is never reassigned. Use 'const' instead prefer-const
14:23 warning Use a regular expression literal instead of the 'RegExp' constructor prefer-regex-literals
22:3 warning 'CARD_SELECT_DELAY' is never reassigned. Use 'const' instead prefer-const
98:2 warning 'accessToken' is never reassigned. Use 'const' instead prefer-const
99:2 warning 'loginError' is never reassigned. Use 'const' instead prefer-const
129:12 warning Avoid direct access to document.cookie. Use mw.cookie instead mediawiki/no-cookie
268:8 warning Selector extensions are not allowed no-jquery/no-sizzle
/src/repo/braintree_gateway/forms/braintree.js
10:6 warning 'di' is never reassigned. Use 'const' instead prefer-const
12:3 warning 'payment_method' is never reassigned. Use 'const' instead prefer-const
13:3 warning 'scripts' is never reassigned. Use 'const' instead prefer-const
/src/repo/dlocal_gateway/forms/dlocal.js
27:7 warning 'dlocalInstance' is never reassigned. Use 'const' instead prefer-const
28:4 warning 'fields' is never reassigned. Use 'const' instead prefer-const
33:4 warning 'commonStyle' is never reassigned. Use 'const' instead prefer-const
49:3 warning 'cardField' is never reassigned. Use 'const' instead prefer-const
55:3 warning 'expirationField' is never reassigned. Use 'const' instead prefer-const
61:3 warning 'cvvField' is never reassigned. Use 'const' instead prefer-const
/src/repo/gravy_gateway/forms/gravy.js
454:43 warning 'appleSession' is already declared in the upper scope on line 14 column 3 no-shadow
/src/repo/modules/ext.donationInterface.donorPortal/ApiUtils.js
13:16 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
/src/repo/modules/ext.donationInterface.donorPortal/components/DonationsDisclaimerComponent.vue
4:34 warning 'v-html' directive can lead to XSS attack vue/no-v-html
6:34 warning 'v-html' directive can lead to XSS attack vue/no-v-html
/src/repo/modules/ext.donationInterface.donorPortal/components/DonationsHistory.vue
128:25 warning 'panel' is already declared in the upper scope on line 138 column 10 no-shadow
/src/repo/modules/ext.donationInterface.donorPortal/components/DonationsListTable.vue
21:22 warning 'v-html' directive can lead to XSS attack vue/no-v-html
41:37 warning 'v-html' directive can lead to XSS attack vue/no-v-html
/src/repo/modules/ext.donationInterface.donorPortal/components/RecurringContributionAnnualConversionForm.vue
35:37 warning 'v-html' directive can lead to XSS attack vue/no-v-html
55:37 warning 'v-html' directive can lead to XSS attack vue/no-v-html
100:34 warning 'v-html' directive can lead to XSS attack vue/no-v-html
/src/repo/modules/ext.donationInterface.donorPortal/components/RecurringContributionAnnualConversionSuccess.vue
13:33 warning 'v-html' directive can lead to XSS attack vue/no-v-html
15:33 warning 'v-html' directive can lead to XSS attack vue/no-v-html
/src/repo/modules/ext.donationInterface.donorPortal/components/RecurringContributionCancelSuccess.vue
13:33 warning 'v-html' directive can lead to XSS attack vue/no-v-html
/src/repo/modules/ext.donationInterface.donorPortal/components/RecurringContributionComponent.vue
16:28 warning Unexpected usage of 'this' vue/this-in-template
27:31 warning 'v-html' directive can lead to XSS attack vue/no-v-html
46:20 warning Unexpected usage of 'this' vue/this-in-template
/src/repo/modules/ext.donationInterface.donorPortal/components/RecurringContributionPauseSuccess.vue
13:31 warning 'v-html' directive can lead to XSS attack vue/no-v-html
/src/repo/modules/ext.donationInterface.donorPortal/components/RecurringContributionUpdateSuccess.vue
15:33 warning 'v-html' directive can lead to XSS attack vue/no-v-html
/src/repo/modules/ext.donationInterface.donorPortal/views/LoginView.vue
8:6 warning 'v-html' directive can lead to XSS attack vue/no-v-html
37:7 warning 'v-html' directive can lead to XSS attack vue/no-v-html
66:8 warning 'v-html' directive can lead to XSS attack vue/no-v-html
76:17 warning 'v-html' directive can lead to XSS attack vue/no-v-html
/src/repo/modules/iframe.liberator.js
1:10 warning 'self' is already defined as a built-in global variable no-redeclare
/src/repo/modules/js/ext.donationInterface.applePayHelper.js
4:1 warning Missing JSDoc @param "$" type jsdoc/require-param-type
5:1 warning Missing JSDoc @param "mw" type jsdoc/require-param-type
/src/repo/modules/js/ext.donationInterface.employerAutoComplete.js
28:21 warning Prefer .then to .done no-jquery/no-done-fail
/src/repo/modules/js/ext.donationInterface.errorLog.js
16:3 warning 'postdata' is never reassigned. Use 'const' instead prefer-const
/src/repo/modules/js/ext.donationInterface.forms.js
4:1 warning Missing JSDoc @param "$" type jsdoc/require-param-type
5:1 warning Missing JSDoc @param "mw" type jsdoc/require-param-type
74:27 warning Selector extensions are not allowed no-jquery/no-sizzle
90:12 warning '$element' is never reassigned. Use 'const' instead prefer-const
107:1 warning Missing JSDoc @param "checkboxName" type jsdoc/require-param-type
111:12 warning '$element' is never reassigned. Use 'const' instead prefer-const
126:1 warning The type 'result' is undefined jsdoc/no-undefined-types
148:3 warning 'sendData' is never reassigned. Use 'const' instead prefer-const
187:4 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
239:14 warning ES2015 'Promise' class is forbidden es-x/no-promise
269:10 warning ES2015 'Promise' class is forbidden es-x/no-promise
283:4 warning ES2015 'Promise' class is forbidden es-x/no-promise
321:10 warning Selector extensions are not allowed no-jquery/no-sizzle
325:30 warning Selector extensions are not allowed no-jquery/no-sizzle
/src/repo/modules/js/ext.donationInterface.jaVariant02.js
8:1 warning Missing JSDoc @param "mw" type jsdoc/require-param-type
9:1 warning Missing JSDoc @param "$" type jsdoc/require-param-type
/src/repo/modules/js/ext.donationInterface.monthlyConvert.js
2:6 warning 'mc' is never reassigned. Use 'const' instead prefer-const
6:3 warning 'tyUrl' is never reassigned. Use 'const' instead prefer-const
9:3 warning 'convertAmounts' is never reassigned. Use 'const' instead prefer-const
17:3 warning 'numAmounts' is never reassigned. Use 'const' instead prefer-const
37:49 warning 'currency' is already declared in the upper scope on line 3 column 3 no-shadow
78:39 warning 'currency' is already declared in the upper scope on line 3 column 3 no-shadow
147:51 warning 'currency' is already declared in the upper scope on line 3 column 3 no-shadow
148:7 warning 'rates' is never reassigned. Use 'const' instead prefer-const
149:4 warning 'amountRules' is never reassigned. Use 'const' instead prefer-const
151:4 warning '$smallAmountMessage' is never reassigned. Use 'const' instead prefer-const
161:3 warning 'formattedMin' is never reassigned. Use 'const' instead prefer-const
177:4 warning 'locale' is never reassigned. Use 'const' instead prefer-const
180:3 warning 'presetAmount' is never reassigned. Use 'const' instead prefer-const
/src/repo/modules/js/ext.donationInterface.monthlyConvertAnnual.js
3:7 warning 'mc' is never reassigned. Use 'const' instead prefer-const
3:31 warning 'originalGetSendData' is never reassigned. Use 'const' instead prefer-const
4:4 warning 'originalAmount' is never reassigned. Use 'const' instead prefer-const
5:4 warning '$otherAmountMonthlyInput' is never reassigned. Use 'const' instead prefer-const
5:62 warning '$otherAmountAnnualInput' is never reassigned. Use 'const' instead prefer-const
6:4 warning '$otherMonthlySubmit' is never reassigned. Use 'const' instead prefer-const
6:60 warning '$otherAnnualSubmit' is never reassigned. Use 'const' instead prefer-const
7:4 warning '$smallAmountMessage' is never reassigned. Use 'const' instead prefer-const
15:3 warning 'originalAmountFormatted' is never reassigned. Use 'const' instead prefer-const
/src/repo/modules/js/ext.donationInterface.monthlyConvertMultiplier.js
3:7 warning 'mc' is never reassigned. Use 'const' instead prefer-const
4:3 warning 'originalAmount' is never reassigned. Use 'const' instead prefer-const
/src/repo/modules/js/ext.donationInterface.monthlyConvert_011.js
3:7 warning 'mc' is never reassigned. Use 'const' instead prefer-const
4:4 warning 'locale' is never reassigned. Use 'const' instead prefer-const
5:3 warning 'originalAmount' is never reassigned. Use 'const' instead prefer-const
6:3 warning 'currency' is never reassigned. Use 'const' instead prefer-const
7:3 warning 'presetAmount' is never reassigned. Use 'const' instead prefer-const
8:3 warning 'formattedAsk' is never reassigned. Use 'const' instead prefer-const
/src/repo/modules/js/ext.donationInterface.recurUpgrade.js
3:7 warning '$submitButton' is never reassigned. Use 'const' instead prefer-const
4:4 warning '$amountField' is never reassigned. Use 'const' instead prefer-const
5:4 warning '$otherAmountField' is never reassigned. Use 'const' instead prefer-const
6:4 warning '$totalMessage' is never reassigned. Use 'const' instead prefer-const
7:4 warning '$newTotalAmount' is never reassigned. Use 'const' instead prefer-const
8:4 warning '$form' is never reassigned. Use 'const' instead prefer-const
9:4 warning 'originalAmount' is never reassigned. Use 'const' instead prefer-const
10:4 warning 'currency' is never reassigned. Use 'const' instead prefer-const
11:4 warning 'maximum' is never reassigned. Use 'const' instead prefer-const
12:4 warning 'nextDateFormatted' is never reassigned. Use 'const' instead prefer-const
14:4 warning 'preSelectAmount' is never reassigned. Use 'const' instead prefer-const
38:4 warning 'valueIsValid' is never reassigned. Use 'const' instead prefer-const
/src/repo/modules/js/ext.donationInterface.validation.js
7:1 warning Missing JSDoc @param "$" type jsdoc/require-param-type
8:1 warning Missing JSDoc @param "mw" type jsdoc/require-param-type
11:6 warning 'di' is never reassigned. Use 'const' instead prefer-const
13:3 warning 'mcDomains' is never reassigned. Use 'const' instead prefer-const
33:3 warning 'multiCountrySubdomains' is never reassigned. Use 'const' instead prefer-const
34:3 warning 'countryTlds' is never reassigned. Use 'const' instead prefer-const
40:26 warning 'i' is already declared in the upper scope on line 39 column 36 no-shadow
/src/repo/modules/validate_input.js
1:1 warning Missing JSDoc @return declaration jsdoc/require-returns
9:3 warning 'rates' is never reassigned. Use 'const' instead prefer-const
10:3 warning 'amountRules' is never reassigned. Use 'const' instead prefer-const
14:3 warning '$amountMsg' is never reassigned. Use 'const' instead prefer-const
15:3 warning 'threeDecimalCurrencies' is never reassigned. Use 'const' instead prefer-const
86:3 warning 'invalids' is never reassigned. Use 'const' instead prefer-const
87:3 warning 'rules' is never reassigned. Use 'const' instead prefer-const
105:27 warning 'value' is already declared in the upper scope on line 82 column 6 no-shadow
107:14 warning All possible message keys should be documented. See https://w.wiki/4r9a for details mediawiki/msg-doc
113:23 warning 'i' is already declared in the upper scope on line 85 column 3 no-shadow
145:2 warning 'countryField' is never reassigned. Use 'const' instead prefer-const
168:2 warning 'emailAdd' is never reassigned. Use 'const' instead prefer-const
220:2 warning 'phoneAdd' is never reassigned. Use 'const' instead prefer-const
241:11 warning Avoid direct access to document.cookie. Use mw.cookie instead mediawiki/no-cookie
242:16 warning Avoid direct access to document.cookie. Use mw.cookie instead mediawiki/no-cookie
243:12 warning Avoid direct access to document.cookie. Use mw.cookie instead mediawiki/no-cookie
/src/repo/paypal_ec_gateway/forms/js/paypal.js
2:6 warning 'di' is never reassigned. Use 'const' instead prefer-const
3:3 warning 'rules' is never reassigned. Use 'const' instead prefer-const
/src/repo/tests/jest/components/recurring_contribution.test.js
58:19 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
72:19 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
108:19 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
/src/repo/tests/jest/views/amount-downgrade.test.js
5:34 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
/src/repo/tests/jest/views/annual-conversion.test.js
5:34 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
/src/repo/tests/jest/views/cancel-donations.test.js
5:34 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
/src/repo/tests/jest/views/home.test.js
2:34 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
/src/repo/tests/jest/views/manage-donations.test.js
4:34 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
/src/repo/tests/jest/views/pause-donations.test.js
5:34 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
/src/repo/tests/jest/views/update-donations.test.js
5:34 warning ES2015 'Object.assign' method is forbidden es-x/no-object-assign
✖ 172 problems (0 errors, 172 warnings)
0 errors and 2 warnings potentially fixable with the `--fix` option.
Running "stylelint:all" (stylelint) task
>> Linted 17 files without errors
Running "banana:DonationInterface" (banana) task
>> The "fr" translation has 1 translation with trailing whitespace:
>> * donorportal-coming-soon
>> 10 message directories checked.
Done.
> test:unit
> jest
----------------------------------------------------|---------|----------|---------|---------|-----------------------
File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s
----------------------------------------------------|---------|----------|---------|---------|-----------------------
All files | 94.34 | 85.6 | 88.02 | 94.31 |
ext.donationInterface.donorPortal | 77.38 | 63.63 | 86.66 | 77.38 |
ApiUtils.js | 93.75 | 50 | 100 | 93.75 | 41
normalizeInput.js | 63.88 | 59.45 | 75 | 63.88 | 4,21,32-35,54-66
router.js | 80.76 | 71.42 | 50 | 80.76 | 13-14,20-21,54
trackingParams.js | 100 | 100 | 100 | 100 |
ext.donationInterface.donorPortal/components | 95.14 | 90.76 | 84.77 | 95.14 |
App.vue | 100 | 100 | 100 | 100 |
DonationsDisclaimerComponent.vue | 100 | 100 | 100 | 100 |
DonationsHistory.vue | 94.44 | 100 | 75 | 94.44 | 16-23
DonationsListTable.vue | 89.28 | 94.44 | 73.33 | 89.28 | 23,40,137-153,183-199
DonorCardComponent.vue | 100 | 90 | 100 | 100 | 78
DonorContactDetails.vue | 93.93 | 86.36 | 100 | 93.93 | 46,48
EndowmentInformationComponent.vue | 100 | 100 | 100 | 100 |
ErrorComponent.vue | 100 | 100 | 100 | 100 |
FeedbackSurveyComponent.vue | 100 | 100 | 100 | 100 |
GreetingComponent.vue | 100 | 100 | 100 | 100 |
Header.vue | 87.17 | 88.23 | 66.66 | 87.17 | 30-37,134
OnetimeContribution.vue | 100 | 100 | 100 | 100 |
PopupLink.vue | 100 | 100 | 100 | 100 |
RadioButtonInput.vue | 94.44 | 100 | 75 | 94.44 | 63
RecurringContributionAnnualConversionForm.vue | 93.02 | 78.04 | 70 | 93.02 | 19,50,217-245,262
RecurringContributionAnnualConversionSuccess.vue | 96 | 100 | 83.33 | 96 | 17
RecurringContributionCancelAltOptionContainer.vue | 100 | 100 | 83.33 | 100 |
RecurringContributionCancelConfirmation.vue | 97.22 | 90 | 90 | 97.22 | 22
RecurringContributionCancelForm.vue | 94.23 | 91.66 | 85.71 | 94.23 | 24,52,55
RecurringContributionCancelSuccess.vue | 96.42 | 50 | 100 | 96.42 | 28
RecurringContributionComponent.vue | 89.55 | 89.65 | 88.88 | 89.55 | 42-45,51,56,182
RecurringContributionPauseForm.vue | 97.14 | 100 | 87.5 | 97.14 | 22
RecurringContributionPauseSuccess.vue | 94.44 | 100 | 75 | 94.44 | 17
RecurringContributionSummary.vue | 100 | 100 | 100 | 100 |
RecurringContributionUpdateForm.vue | 96.72 | 89.18 | 83.33 | 96.72 | 85,183
RecurringContributionUpdateSuccess.vue | 100 | 100 | 100 | 100 |
RelatedContentComponent.vue | 94.11 | 100 | 60 | 94.11 | 102-108
ext.donationInterface.donorPortal/views | 96.31 | 81.66 | 97.22 | 96.25 |
AmountDowngrade.vue | 97.61 | 70 | 100 | 97.56 | 31
AnnualConversion.vue | 97.5 | 70 | 100 | 97.43 | 32
CancelDonations.vue | 98.38 | 77.77 | 100 | 98.36 | 35
Home.vue | 96.77 | 90 | 100 | 96.77 | 38
LoginView.vue | 90 | 89.47 | 90.47 | 90 | 36-38,60-62,94,207
ManageDonations.vue | 98.07 | 91.66 | 100 | 98.03 | 21
PauseDonations.vue | 97.61 | 70 | 100 | 97.56 | 29
UpdateDonations.vue | 97.56 | 75 | 100 | 97.5 | 30
----------------------------------------------------|---------|----------|---------|---------|-----------------------
--- end ---
{}
{}
$ package-lock-lint /src/repo/package-lock.json
--- stdout ---
Checking /src/repo/package-lock.json
--- end ---
build: Updating npm dependencies
* grunt-stylelint: 0.20.1 → 0.21.0
* stylelint-config-wikimedia: 0.18.0 → 0.19.2
* @wikimedia/codex: 2.4.0 → 2.6.0
* @wikimedia/codex-icons: 2.4.0 → 2.6.0
$ git add .
--- stdout ---
--- end ---
$ git commit -F /tmp/tmplkljdb7b
--- stdout ---
[master f84b9d1] build: Updating npm dependencies
3 files changed, 719 insertions(+), 339 deletions(-)
--- end ---
$ git format-patch HEAD~1 --stdout
--- stdout ---
From f84b9d133c200eb5a8ac94eb2009f55905e9d0c8 Mon Sep 17 00:00:00 2001
From: libraryupgrader <tools.libraryupgrader@tools.wmflabs.org>
Date: Sun, 14 Jun 2026 06:01:33 +0000
Subject: [PATCH] build: Updating npm dependencies
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
* grunt-stylelint: 0.20.1 → 0.21.0
* stylelint-config-wikimedia: 0.18.0 → 0.19.2
* @wikimedia/codex: 2.4.0 → 2.6.0
* @wikimedia/codex-icons: 2.4.0 → 2.6.0
Change-Id: I6de5cface5f36b2405026670a7a64ee000f005b1
---
gateway_forms/mustache/forms.css | 1 -
package-lock.json | 1049 ++++++++++++++++++++----------
package.json | 8 +-
3 files changed, 719 insertions(+), 339 deletions(-)
diff --git a/gateway_forms/mustache/forms.css b/gateway_forms/mustache/forms.css
index ab8546b..99ecb9b 100644
--- a/gateway_forms/mustache/forms.css
+++ b/gateway_forms/mustache/forms.css
@@ -83,7 +83,6 @@ select#bank_account_type {
/* NEW STUFF */
ul#moreinfolinks li {
list-style: none;
- list-style-image: none;
}
.form .options-h {
diff --git a/package-lock.json b/package-lock.json
index 4d71d66..7c0cf05 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -11,20 +11,20 @@
"@vue/compiler-sfc": "3.5.13",
"@vue/test-utils": "2.4.6",
"@vue/vue3-jest": "29.2.6",
- "@wikimedia/codex": "2.4.0",
- "@wikimedia/codex-icons": "2.4.0",
+ "@wikimedia/codex": "2.6.0",
+ "@wikimedia/codex-icons": "2.6.0",
"babel-core": "^6.26.3",
"eslint-config-wikimedia": "0.32.4",
"eslint-plugin-jest": "27.2.1",
"grunt": "1.6.2",
"grunt-banana-checker": "0.13.0",
"grunt-eslint": "24.3.0",
- "grunt-stylelint": "0.20.1",
+ "grunt-stylelint": "0.21.0",
"jest": "29.7.0",
"jest-environment-jsdom": "29.7.0",
"jest-when": "^3.2.1",
"jquery": "^3.7.1",
- "stylelint-config-wikimedia": "0.18.0",
+ "stylelint-config-wikimedia": "0.19.2",
"vue": "3.5.13",
"vue-router": "4.5.1"
}
@@ -1680,10 +1680,89 @@
"integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==",
"dev": true
},
+ "node_modules/@cacheable/memory": {
+ "version": "2.0.9",
+ "resolved": "https://registry.npmjs.org/@cacheable/memory/-/memory-2.0.9.tgz",
+ "integrity": "sha512-HdMx6DoGywB30vacDbBsITbIX4pgFqj1zsrV58jZBUw3klzkNoXhj7qOqAgledhxG7YZI5rBSJg7Zp8/VG0DuA==",
+ "dev": true,
+ "dependencies": {
+ "@cacheable/utils": "^2.4.1",
+ "@keyv/bigmap": "^1.3.1",
+ "hookified": "^1.15.1",
+ "keyv": "^5.6.0"
+ }
+ },
+ "node_modules/@cacheable/memory/node_modules/@keyv/bigmap": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/@keyv/bigmap/-/bigmap-1.3.1.tgz",
+ "integrity": "sha512-WbzE9sdmQtKy8vrNPa9BRnwZh5UF4s1KTmSK0KUVLo3eff5BlQNNWDnFOouNpKfPKDnms9xynJjsMYjMaT/aFQ==",
+ "dev": true,
+ "dependencies": {
+ "hashery": "^1.4.0",
+ "hookified": "^1.15.0"
+ },
+ "engines": {
+ "node": ">= 18"
+ },
+ "peerDependencies": {
+ "keyv": "^5.6.0"
+ }
+ },
+ "node_modules/@cacheable/memory/node_modules/keyv": {
+ "version": "5.6.0",
+ "resolved": "https://registry.npmjs.org/keyv/-/keyv-5.6.0.tgz",
+ "integrity": "sha512-CYDD3SOtsHtyXeEORYRx2qBtpDJFjRTGXUtmNEMGyzYOKj1TE3tycdlho7kA1Ufx9OYWZzg52QFBGALTirzDSw==",
+ "dev": true,
+ "dependencies": {
+ "@keyv/serialize": "^1.1.1"
+ }
+ },
+ "node_modules/@cacheable/utils": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/@cacheable/utils/-/utils-2.4.1.tgz",
+ "integrity": "sha512-eiFgzCbIneyMlLOmNG4g9xzF7Hv3Mga4LjxjcSC/ues6VYq2+gUbQI8JqNuw/ZM8tJIeIaBGpswAsqV2V7ApgA==",
+ "dev": true,
+ "dependencies": {
+ "hashery": "^1.5.1",
+ "keyv": "^5.6.0"
+ }
+ },
+ "node_modules/@cacheable/utils/node_modules/keyv": {
+ "version": "5.6.0",
+ "resolved": "https://registry.npmjs.org/keyv/-/keyv-5.6.0.tgz",
+ "integrity": "sha512-CYDD3SOtsHtyXeEORYRx2qBtpDJFjRTGXUtmNEMGyzYOKj1TE3tycdlho7kA1Ufx9OYWZzg52QFBGALTirzDSw==",
+ "dev": true,
+ "dependencies": {
+ "@keyv/serialize": "^1.1.1"
+ }
+ },
+ "node_modules/@csstools/css-calc": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/@csstools/css-calc/-/css-calc-3.2.1.tgz",
+ "integrity": "sha512-DtdHlgXh5ZkA43cwBcAm+huzgJiwx3ZTWVjBs94kwz2xKqSimDA3lBgCjphYgwgVUMWatSM0pDd8TILB1yrVVg==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/csstools"
+ },
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/csstools"
+ }
+ ],
+ "engines": {
+ "node": ">=20.19.0"
+ },
+ "peerDependencies": {
+ "@csstools/css-parser-algorithms": "^4.0.0",
+ "@csstools/css-tokenizer": "^4.0.0"
+ }
+ },
"node_modules/@csstools/css-parser-algorithms": {
- "version": "3.0.5",
- "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-3.0.5.tgz",
- "integrity": "sha512-DaDeUkXZKjdGhgYaHNJTV9pV7Y9B3b644jCLs9Upc3VeNGg6LWARAT6O+Q+/COo+2gg/bM5rhpMAtf70WqfBdQ==",
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-4.0.0.tgz",
+ "integrity": "sha512-+B87qS7fIG3L5h3qwJ/IFbjoVoOe/bpOdh9hAjXbvx0o8ImEmUsGXN0inFOnk2ChCFgqkkGFQ+TpM5rbhkKe4w==",
"dev": true,
"funding": [
{
@@ -1696,16 +1775,16 @@
}
],
"engines": {
- "node": ">=18"
+ "node": ">=20.19.0"
},
"peerDependencies": {
- "@csstools/css-tokenizer": "^3.0.4"
+ "@csstools/css-tokenizer": "^4.0.0"
}
},
"node_modules/@csstools/css-tokenizer": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-3.0.4.tgz",
- "integrity": "sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==",
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-4.0.0.tgz",
+ "integrity": "sha512-QxULHAm7cNu72w97JUNCBFODFaXpbDg+dP8b/oWFAZ2MTRppA3U00Y2L1HqaS4J6yBqxwa/Y3nMBaxVKbB/NsA==",
"dev": true,
"funding": [
{
@@ -1718,13 +1797,13 @@
}
],
"engines": {
- "node": ">=18"
+ "node": ">=20.19.0"
}
},
"node_modules/@csstools/media-query-list-parser": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/@csstools/media-query-list-parser/-/media-query-list-parser-4.0.3.tgz",
- "integrity": "sha512-HAYH7d3TLRHDOUQK4mZKf9k9Ph/m8Akstg66ywKR4SFAigjs3yBiUeZtFxywiTm5moZMAp/5W/ZuFnNXXYLuuQ==",
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/@csstools/media-query-list-parser/-/media-query-list-parser-5.0.0.tgz",
+ "integrity": "sha512-T9lXmZOfnam3eMERPsszjY5NK0jX8RmThmmm99FZ8b7z8yMaFZWKwLWGZuTwdO3ddRY5fy13GmmEYZXB4I98Eg==",
"dev": true,
"funding": [
{
@@ -1737,21 +1816,11 @@
}
],
"engines": {
- "node": ">=18"
+ "node": ">=20.19.0"
},
"peerDependencies": {
- "@csstools/css-parser-algorithms": "^3.0.5",
- "@csstools/css-tokenizer": "^3.0.4"
- }
- },
- "node_modules/@dual-bundle/import-meta-resolve": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/@dual-bundle/import-meta-resolve/-/import-meta-resolve-4.1.0.tgz",
- "integrity": "sha512-+nxncfwHM5SgAtrVzgpzJOI1ol0PkumhVo469KCf9lUi21IGcY90G98VuHm9VRrUypmAzawAHO9bs6hqeADaVg==",
- "dev": true,
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/wooorm"
+ "@csstools/css-parser-algorithms": "^4.0.0",
+ "@csstools/css-tokenizer": "^4.0.0"
}
},
"node_modules/@es-joy/jsdoccomment": {
@@ -2866,9 +2935,9 @@
}
},
"node_modules/@keyv/serialize": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@keyv/serialize/-/serialize-1.1.0.tgz",
- "integrity": "sha512-RlDgexML7Z63Q8BSaqhXdCYNBy/JQnqYIwxofUrNLGCblOMHp+xux2Q8nLMLlPpgHQPoU0Do8Z6btCpRBEqZ8g==",
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/@keyv/serialize/-/serialize-1.1.1.tgz",
+ "integrity": "sha512-dXn3FZhPv0US+7dtJsIi2R+c7qWYiReoEh5zUntWCf4oSpMNib8FDhSoed6m3QyZdx5hK7iLFkYk3rNxwt8vTA==",
"dev": true
},
"node_modules/@mdn/browser-compat-data": {
@@ -2946,6 +3015,18 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
+ "node_modules/@sindresorhus/merge-streams": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-4.0.0.tgz",
+ "integrity": "sha512-tlqY9xq5ukxTUZBmoOp+m61cqwQD5pHJtFY3Mn8CA8ps6yghLH/Hw8UPdqg4OLmFW3IFlcXnQNmo/dh8HzXYIQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
"node_modules/@sinonjs/commons": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz",
@@ -3158,72 +3239,52 @@
}
},
"node_modules/@stylistic/stylelint-config": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@stylistic/stylelint-config/-/stylelint-config-2.0.0.tgz",
- "integrity": "sha512-8J4YAxggy2Nzkb8KJIOLbtMXTPZ5gpKVmyhiiuKEUgCl9XFND5lM0e/ZZBMGEYZ68h5qcsS/jgg1wh235erRAw==",
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/@stylistic/stylelint-config/-/stylelint-config-5.0.0.tgz",
+ "integrity": "sha512-AW6S27wEm4DzB+uOZMvRkONIu0ba50VRbFte7qYJgGP4dacS8kAuj8HZJ+s+8kE4GK3XXBcSKLb75a+NfJlbiQ==",
"dev": true,
"dependencies": {
- "@stylistic/stylelint-plugin": "^3.0.0"
+ "@stylistic/stylelint-plugin": "^5.1.0"
},
"engines": {
- "node": "^18.12 || >=20.9"
+ "node": ">=20.19.0"
},
"peerDependencies": {
- "stylelint": "^16.8.0"
+ "stylelint": "^17.6.0"
}
},
"node_modules/@stylistic/stylelint-plugin": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/@stylistic/stylelint-plugin/-/stylelint-plugin-3.1.1.tgz",
- "integrity": "sha512-XagAHHIa528EvyGybv8EEYGK5zrVW74cHpsjhtovVATbhDRuJYfE+X4HCaAieW9lCkwbX6L+X0I4CiUG3w/hFw==",
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/@stylistic/stylelint-plugin/-/stylelint-plugin-5.1.0.tgz",
+ "integrity": "sha512-TFvKCbJUEWUYCD+rDv45qhnStO6nRtbBngaCblS2JGh8c95S3jJi3fIotfF6EDo4IVM15UPa65WP+kp6GNvXRA==",
"dev": true,
"dependencies": {
- "@csstools/css-parser-algorithms": "^3.0.1",
- "@csstools/css-tokenizer": "^3.0.1",
- "@csstools/media-query-list-parser": "^3.0.1",
- "is-plain-object": "^5.0.0",
- "postcss-selector-parser": "^6.1.2",
+ "@csstools/css-parser-algorithms": "^4.0.0",
+ "@csstools/css-tokenizer": "^4.0.0",
+ "@csstools/media-query-list-parser": "^5.0.0",
+ "postcss": "^8.5.8",
+ "postcss-selector-parser": "^7.1.1",
"postcss-value-parser": "^4.2.0",
- "style-search": "^0.1.0",
- "stylelint": "^16.8.2"
+ "style-search": "^0.1.0"
},
"engines": {
- "node": "^18.12 || >=20.9"
+ "node": ">=20.19.0"
},
"peerDependencies": {
- "stylelint": "^16.8.0"
+ "stylelint": "^17.6.0"
}
},
- "node_modules/@stylistic/stylelint-plugin/node_modules/@csstools/media-query-list-parser": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@csstools/media-query-list-parser/-/media-query-list-parser-3.0.1.tgz",
- "integrity": "sha512-HNo8gGD02kHmcbX6PvCoUuOQvn4szyB9ca63vZHKX5A81QytgDG4oxG4IaEfHTlEZSZ6MjPEMWIVU+zF2PZcgw==",
+ "node_modules/@stylistic/stylelint-plugin/node_modules/postcss-selector-parser": {
+ "version": "7.1.4",
+ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.4.tgz",
+ "integrity": "sha512-HeP7D2wyhkR+XaK6v4W8oRF62Dsz4flyuczALJp61GckGm42u1saSSJ/0auvcBqxs3jMRFEcPK34At/0JBKdOg==",
"dev": true,
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/csstools"
- },
- {
- "type": "opencollective",
- "url": "https://opencollective.com/csstools"
- }
- ],
- "engines": {
- "node": ">=18"
+ "dependencies": {
+ "cssesc": "^3.0.0",
+ "util-deprecate": "^1.0.2"
},
- "peerDependencies": {
- "@csstools/css-parser-algorithms": "^3.0.1",
- "@csstools/css-tokenizer": "^3.0.1"
- }
- },
- "node_modules/@stylistic/stylelint-plugin/node_modules/is-plain-object": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz",
- "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==",
- "dev": true,
"engines": {
- "node": ">=0.10.0"
+ "node": ">=4"
}
},
"node_modules/@tootallnate/once": {
@@ -3831,16 +3892,16 @@
"dev": true
},
"node_modules/@wikimedia/codex": {
- "version": "2.4.0",
- "resolved": "https://registry.npmjs.org/@wikimedia/codex/-/codex-2.4.0.tgz",
- "integrity": "sha512-j/I1gGbTo6pttjmwyYw9/3CeInK6mpBm2FVfABJk+B1Ylw5DskX+TqeCdKghwxSkxBt0ODbUTBYdFyafk+7ajg==",
+ "version": "2.6.0",
+ "resolved": "https://registry.npmjs.org/@wikimedia/codex/-/codex-2.6.0.tgz",
+ "integrity": "sha512-ul/WXyxZbMV3PrWd0tGATuhTwUijRhHQxEJ+k+NukzcbY4MTItU3zEiw0Ye3wgNGQBMcCDt34pRGF3tXQwwDgA==",
"dev": true,
"dependencies": {
"@floating-ui/vue": "1.0.6",
- "@wikimedia/codex-icons": "2.4.0"
+ "@wikimedia/codex-icons": "2.6.0"
},
"engines": {
- "node": ">=20.19.1",
+ "node": ">=20.20.2",
"npm": ">=10.8.2"
},
"peerDependencies": {
@@ -3848,12 +3909,12 @@
}
},
"node_modules/@wikimedia/codex-icons": {
- "version": "2.4.0",
- "resolved": "https://registry.npmjs.org/@wikimedia/codex-icons/-/codex-icons-2.4.0.tgz",
- "integrity": "sha512-BBtrzLR7r9ShxCMYfsx9XaKJu/peqt5Y/jtvWx3E2G5aL/Y/pIWAkv8NIvU+ztKklbHySLH5jSvVZVKxxvU0Ew==",
+ "version": "2.6.0",
+ "resolved": "https://registry.npmjs.org/@wikimedia/codex-icons/-/codex-icons-2.6.0.tgz",
+ "integrity": "sha512-U0FK8kxhIrX5hAkFGZ0uWsR4arYjWw6GLCMZmrG1qvbX7+CFoVrhJQL7alogRdCrBiQBr8CUQOquOP5fUXPIBQ==",
"dev": true,
"engines": {
- "node": ">=20.19.1",
+ "node": ">=20.20.2",
"npm": ">=10.8.2"
}
},
@@ -4708,22 +4769,25 @@
}
},
"node_modules/cacheable": {
- "version": "1.10.3",
- "resolved": "https://registry.npmjs.org/cacheable/-/cacheable-1.10.3.tgz",
- "integrity": "sha512-M6p10iJ/VT0wT7TLIGUnm958oVrU2cUK8pQAVU21Zu7h8rbk/PeRtRWrvHJBql97Bhzk3g1N6+2VKC+Rjxna9Q==",
+ "version": "2.3.5",
+ "resolved": "https://registry.npmjs.org/cacheable/-/cacheable-2.3.5.tgz",
+ "integrity": "sha512-EQfaKe09tl615iNvq/TBRWTFf1AKJNXYQSsMx0Z3EI0nA+pVsVPS8wJhnRlkbdacKPh1d0qVIhwTc2zsQNFEEg==",
"dev": true,
"dependencies": {
- "hookified": "^1.10.0",
- "keyv": "^5.4.0"
+ "@cacheable/memory": "^2.0.8",
+ "@cacheable/utils": "^2.4.1",
+ "hookified": "^1.15.0",
+ "keyv": "^5.6.0",
+ "qified": "^0.10.1"
}
},
"node_modules/cacheable/node_modules/keyv": {
- "version": "5.5.0",
- "resolved": "https://registry.npmjs.org/keyv/-/keyv-5.5.0.tgz",
- "integrity": "sha512-QG7qR2tijh1ftOvClut4YKKg1iW6cx3GZsKoGyJPxHkGWK9oJhG9P3j5deP0QQOGDowBMVQFaP+Vm4NpGYvmIQ==",
+ "version": "5.6.0",
+ "resolved": "https://registry.npmjs.org/keyv/-/keyv-5.6.0.tgz",
+ "integrity": "sha512-CYDD3SOtsHtyXeEORYRx2qBtpDJFjRTGXUtmNEMGyzYOKj1TE3tycdlho7kA1Ufx9OYWZzg52QFBGALTirzDSw==",
"dev": true,
"dependencies": {
- "@keyv/serialize": "^1.1.0"
+ "@keyv/serialize": "^1.1.1"
}
},
"node_modules/call-bind-apply-helpers": {
@@ -4973,9 +5037,9 @@
"dev": true
},
"node_modules/cosmiconfig": {
- "version": "9.0.0",
- "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-9.0.0.tgz",
- "integrity": "sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==",
+ "version": "9.0.2",
+ "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-9.0.2.tgz",
+ "integrity": "sha512-gtTZxTDau1wL7Y7zifc2dd8jHSK/k6BTx/2Xp/BpdlAdnlYWFVt7qhJqgwi7637yRwRQ3qL4ZidbB4I8tA5VOg==",
"dev": true,
"dependencies": {
"env-paths": "^2.2.1",
@@ -5005,10 +5069,20 @@
"dev": true
},
"node_modules/cosmiconfig/node_modules/js-yaml": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz",
- "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==",
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.2.0.tgz",
+ "integrity": "sha512-ePWsvanv0DWuDRsW8dnt+R4jQ31SCRCQ7hhNcPXZPsoBZiemuZNYGf7adZdqX2D86j6rvKp3RpCxVTSb8WQlOw==",
"dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/puzrin"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/nodeca"
+ }
+ ],
"dependencies": {
"argparse": "^2.0.1"
},
@@ -5122,12 +5196,12 @@
}
},
"node_modules/css-functions-list": {
- "version": "3.2.3",
- "resolved": "https://registry.npmjs.org/css-functions-list/-/css-functions-list-3.2.3.tgz",
- "integrity": "sha512-IQOkD3hbR5KrN93MtcYuad6YPuTSUhntLHDuLEbFWE+ff2/XSZNdZG+LcbbIW5AXKg/WFIfYItIzVoHngHXZzA==",
+ "version": "3.3.3",
+ "resolved": "https://registry.npmjs.org/css-functions-list/-/css-functions-list-3.3.3.tgz",
+ "integrity": "sha512-8HFEBPKhOpJPEPu70wJJetjKta86Gw9+CCyCnB3sui2qQfOvRyqBy4IKLKKAwdMpWb2lHXWk9Wb4Z6AmaUT1Pg==",
"dev": true,
"engines": {
- "node": ">=12 || >=16"
+ "node": ">=12"
}
},
"node_modules/css-tokenize": {
@@ -7439,6 +7513,18 @@
"node": "6.* || 8.* || >= 10.*"
}
},
+ "node_modules/get-east-asian-width": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.6.0.tgz",
+ "integrity": "sha512-QRbvDIbx6YklUe6RxeTeleMR0yv3cYH6PsPZHcnVn7xv7zO1BHN8r0XETu8n6Ye3Q+ahtSarc3WgtNWmehIBfA==",
+ "dev": true,
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
"node_modules/get-intrinsic": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz",
@@ -8025,18 +8111,18 @@
}
},
"node_modules/grunt-stylelint": {
- "version": "0.20.1",
- "resolved": "https://registry.npmjs.org/grunt-stylelint/-/grunt-stylelint-0.20.1.tgz",
- "integrity": "sha512-tDep9ceEerB+fK6CkzPBXu5qPM7RuwCRgfrtwugEyYYnxINreMZktqQU5eoTW+MhhFj81uWQQnxf+c4geyAmQg==",
+ "version": "0.21.0",
+ "resolved": "https://registry.npmjs.org/grunt-stylelint/-/grunt-stylelint-0.21.0.tgz",
+ "integrity": "sha512-iQBZY3mqd43LyFFY5QeUZI+VblZaS/6u7X8ed55qdYNLcPoku9JnAjzNONzlUq61bEKKqJKD7Zw/IpodDLro8Q==",
"dev": true,
"dependencies": {
"chalk": "^4.1.2"
},
"engines": {
- "node": ">=18.12.0"
+ "node": ">=20.19.5"
},
"peerDependencies": {
- "stylelint": "16.x"
+ "stylelint": "17.x"
}
},
"node_modules/grunt-stylelint/node_modules/ansi-styles": {
@@ -8166,6 +8252,18 @@
"url": "https://github.com/sponsors/ljharb"
}
},
+ "node_modules/hashery": {
+ "version": "1.5.1",
+ "resolved": "https://registry.npmjs.org/hashery/-/hashery-1.5.1.tgz",
+ "integrity": "sha512-iZyKG96/JwPz1N55vj2Ie2vXbhu440zfUfJvSwEqEbeLluk7NnapfGqa7LH0mOsnDxTF85Mx8/dyR6HfqcbmbQ==",
+ "dev": true,
+ "dependencies": {
+ "hookified": "^1.15.0"
+ },
+ "engines": {
+ "node": ">=20"
+ }
+ },
"node_modules/hasown": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz",
@@ -8213,9 +8311,9 @@
}
},
"node_modules/hookified": {
- "version": "1.11.0",
- "resolved": "https://registry.npmjs.org/hookified/-/hookified-1.11.0.tgz",
- "integrity": "sha512-aDdIN3GyU5I6wextPplYdfmWCo+aLmjjVbntmX6HLD5RCi/xKsivYEBhnRD+d9224zFf008ZpLMPlWF0ZodYZw==",
+ "version": "1.15.1",
+ "resolved": "https://registry.npmjs.org/hookified/-/hookified-1.15.1.tgz",
+ "integrity": "sha512-MvG/clsADq1GPM2KGo2nyfaWVyn9naPiXrqIe4jYjXNZQt238kWyOGrsyc/DmRAQ+Re6yeo6yX/yoNCG5KAEVg==",
"dev": true
},
"node_modules/hosted-git-info": {
@@ -8259,12 +8357,12 @@
"dev": true
},
"node_modules/html-tags": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.3.1.tgz",
- "integrity": "sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==",
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-5.1.0.tgz",
+ "integrity": "sha512-n6l5uca7/y5joxZ3LUePhzmBFUJ+U2YWzhMa8XUTecSeSlQiZdF5XAd/Q3/WUl0VsXgUwWi8I7CNIwdI5WN1SQ==",
"dev": true,
"engines": {
- "node": ">=8"
+ "node": ">=20.10"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
@@ -8390,6 +8488,16 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
+ "node_modules/import-meta-resolve": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/import-meta-resolve/-/import-meta-resolve-4.2.0.tgz",
+ "integrity": "sha512-Iqv2fzaTQN28s/FwZAoFq0ZSs/7hMAHJVX+w8PZl3cY19Pxk6jFFalxQoIfW2826i/fDLXv8IiEZRIT0lDuWcg==",
+ "dev": true,
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/wooorm"
+ }
+ },
"node_modules/imurmurhash": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
@@ -10709,12 +10817,6 @@
"node": ">=6"
}
},
- "node_modules/known-css-properties": {
- "version": "0.37.0",
- "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.37.0.tgz",
- "integrity": "sha512-JCDrsP4Z1Sb9JwG0aJ8Eo2r7k4Ou5MwmThS/6lcIe1ICyb7UBJKGRIUUdqc2ASdE/42lgz6zFUnzAIhtXnBVrQ==",
- "dev": true
- },
"node_modules/leven": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz",
@@ -10916,9 +11018,9 @@
}
},
"node_modules/mathml-tag-names": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz",
- "integrity": "sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==",
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-4.0.0.tgz",
+ "integrity": "sha512-aa6AU2Pcx0VP/XWnh8IGL0SYSgQHDT6Ucror2j2mXeFAlN3ahaNs8EZtG1YiticMkSLj3Gt6VPFfZogt7G5iFQ==",
"dev": true,
"funding": {
"type": "github",
@@ -10932,12 +11034,12 @@
"dev": true
},
"node_modules/meow": {
- "version": "13.2.0",
- "resolved": "https://registry.npmjs.org/meow/-/meow-13.2.0.tgz",
- "integrity": "sha512-pxQJQzB6djGPXh08dacEloMFopsOqGVRKFPYvPOt9XDZ1HasbgDZA74CJGreSU4G3Ak7EFJGoiH2auq+yXISgA==",
+ "version": "14.1.0",
+ "resolved": "https://registry.npmjs.org/meow/-/meow-14.1.0.tgz",
+ "integrity": "sha512-EDYo6VlmtnumlcBCbh1gLJ//9jvM/ndXHfVXIFrZVr6fGcwTUyCTFNTLCKuY3ffbK8L/+3Mzqnd58RojiZqHVw==",
"dev": true,
"engines": {
- "node": ">=18"
+ "node": ">=20"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
@@ -11090,9 +11192,9 @@
}
},
"node_modules/nanoid": {
- "version": "3.3.11",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz",
- "integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==",
+ "version": "3.3.12",
+ "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.12.tgz",
+ "integrity": "sha512-ZB9RH/39qpq5Vu6Y+NmUaFhQR6pp+M2Xt76XBnEwDaGcVAqhlvxrl3B2bKS5D3NH3QR76v3aSrKaF/Kiy7lEtQ==",
"dev": true,
"funding": [
{
@@ -11605,9 +11707,9 @@
}
},
"node_modules/postcss": {
- "version": "8.5.12",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.12.tgz",
- "integrity": "sha512-W62t/Se6rA0Az3DfCL0AqJwXuKwBeYg6nOaIgzP+xZ7N5BFCI7DYi1qs6ygUYT6rvfi6t9k65UMLJC+PHZpDAA==",
+ "version": "8.5.15",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.15.tgz",
+ "integrity": "sha512-FfR8sjd4em2T6fb3I2MwAJU7HWVMr9zba+enmQeeWFfCbm+UOC/0X4DS8XtpUTMwWMGbjKYP7xjfNekzyGmB3A==",
"dev": true,
"funding": [
{
@@ -11624,7 +11726,7 @@
}
],
"dependencies": {
- "nanoid": "^3.3.11",
+ "nanoid": "^3.3.12",
"picocolors": "^1.1.1",
"source-map-js": "^1.2.1"
},
@@ -11633,14 +11735,14 @@
}
},
"node_modules/postcss-html": {
- "version": "1.7.0",
- "resolved": "https://registry.npmjs.org/postcss-html/-/postcss-html-1.7.0.tgz",
- "integrity": "sha512-MfcMpSUIaR/nNgeVS8AyvyDugXlADjN9AcV7e5rDfrF1wduIAGSkL4q2+wgrZgA3sHVAHLDO9FuauHhZYW2nBw==",
+ "version": "1.8.1",
+ "resolved": "https://registry.npmjs.org/postcss-html/-/postcss-html-1.8.1.tgz",
+ "integrity": "sha512-OLF6P7qctfAWayOhLpcVnTGqVeJzu2W3WpIYelfz2+JV5oGxfkcEvweN9U4XpeqE0P98dcD9ssusGwlF0TK0uQ==",
"dev": true,
"dependencies": {
"htmlparser2": "^8.0.0",
"js-tokens": "^9.0.0",
- "postcss": "^8.4.0",
+ "postcss": "^8.5.0",
"postcss-safe-parser": "^6.0.0"
},
"engines": {
@@ -11681,12 +11783,6 @@
"postcss": "^8.3.5"
}
},
- "node_modules/postcss-resolve-nested-selector": {
- "version": "0.1.6",
- "resolved": "https://registry.npmjs.org/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.6.tgz",
- "integrity": "sha512-0sglIs9Wmkzbr8lQwEyIzlDOOC9bGmfVKcJTaxv3vMmd3uo4o4DerC3En0bnmgceeql9BfC8hRkp7cg0fjdVqw==",
- "dev": true
- },
"node_modules/postcss-safe-parser": {
"version": "7.0.1",
"resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-7.0.1.tgz",
@@ -11832,6 +11928,24 @@
}
]
},
+ "node_modules/qified": {
+ "version": "0.10.1",
+ "resolved": "https://registry.npmjs.org/qified/-/qified-0.10.1.tgz",
+ "integrity": "sha512-+Owyggi9IxT1ePKGafcI87ubSmxol6smwJ+RAHDQlx9+9cPwFWDiKFFCPuWhr9ignlGpZ9vDQLw67N4dcTVFEA==",
+ "dev": true,
+ "dependencies": {
+ "hookified": "^2.1.1"
+ },
+ "engines": {
+ "node": ">=20"
+ }
+ },
+ "node_modules/qified/node_modules/hookified": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/hookified/-/hookified-2.2.0.tgz",
+ "integrity": "sha512-p/LgFzRN5FeoD3DLS6bkUapeye6E4SI6yJs6KetENd18S+FBthqYq2amJUWpt5z0EQwwHemidjY5OqJGEKm5uA==",
+ "dev": true
+ },
"node_modules/querystringify": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz",
@@ -12595,9 +12709,9 @@
"dev": true
},
"node_modules/stylelint": {
- "version": "16.23.1",
- "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-16.23.1.tgz",
- "integrity": "sha512-dNvDTsKV1U2YtiUDfe9d2gp902veFeo3ecCWdGlmLm2WFrAV0+L5LoOj/qHSBABQwMsZPJwfC4bf39mQm1S5zw==",
+ "version": "17.13.0",
+ "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-17.13.0.tgz",
+ "integrity": "sha512-G1WYzMerp7ihOaIe9VJCHLt12MoAD2QLf1AFerYP37+BCRBUK5UCpq8e/mN+zCIaJPKQcaxhE4WlPmqdiOx/gw==",
"dev": true,
"funding": [
{
@@ -12609,57 +12723,55 @@
"url": "https://github.com/sponsors/stylelint"
}
],
+ "peer": true,
"dependencies": {
- "@csstools/css-parser-algorithms": "^3.0.5",
- "@csstools/css-tokenizer": "^3.0.4",
- "@csstools/media-query-list-parser": "^4.0.3",
- "@csstools/selector-specificity": "^5.0.0",
- "@dual-bundle/import-meta-resolve": "^4.1.0",
- "balanced-match": "^2.0.0",
+ "@csstools/css-calc": "^3.2.1",
+ "@csstools/css-parser-algorithms": "^4.0.0",
+ "@csstools/css-syntax-patches-for-csstree": "^1.1.4",
+ "@csstools/css-tokenizer": "^4.0.0",
+ "@csstools/media-query-list-parser": "^5.0.0",
+ "@csstools/selector-resolve-nested": "^4.0.0",
+ "@csstools/selector-specificity": "^6.0.0",
"colord": "^2.9.3",
- "cosmiconfig": "^9.0.0",
- "css-functions-list": "^3.2.3",
- "css-tree": "^3.1.0",
- "debug": "^4.4.1",
+ "cosmiconfig": "^9.0.1",
+ "css-functions-list": "^3.3.3",
+ "css-tree": "^3.2.1",
+ "debug": "^4.4.3",
"fast-glob": "^3.3.3",
"fastest-levenshtein": "^1.0.16",
- "file-entry-cache": "^10.1.3",
+ "file-entry-cache": "^11.1.3",
"global-modules": "^2.0.0",
- "globby": "^11.1.0",
+ "globby": "^16.2.0",
"globjoin": "^0.1.4",
- "html-tags": "^3.3.1",
+ "html-tags": "^5.1.0",
"ignore": "^7.0.5",
- "imurmurhash": "^0.1.4",
- "is-plain-object": "^5.0.0",
- "known-css-properties": "^0.37.0",
- "mathml-tag-names": "^2.1.3",
- "meow": "^13.2.0",
+ "import-meta-resolve": "^4.2.0",
+ "mathml-tag-names": "^4.0.0",
+ "meow": "^14.1.0",
"micromatch": "^4.0.8",
"normalize-path": "^3.0.0",
"picocolors": "^1.1.1",
- "postcss": "^8.5.6",
- "postcss-resolve-nested-selector": "^0.1.6",
+ "postcss": "^8.5.15",
"postcss-safe-parser": "^7.0.1",
- "postcss-selector-parser": "^7.1.0",
+ "postcss-selector-parser": "^7.1.1",
"postcss-value-parser": "^4.2.0",
- "resolve-from": "^5.0.0",
- "string-width": "^4.2.3",
- "supports-hyperlinks": "^3.2.0",
+ "string-width": "^8.2.1",
+ "supports-hyperlinks": "^4.4.0",
"svg-tags": "^1.0.0",
"table": "^6.9.0",
- "write-file-atomic": "^5.0.1"
+ "write-file-atomic": "^7.0.1"
},
"bin": {
"stylelint": "bin/stylelint.mjs"
},
"engines": {
- "node": ">=18.12.0"
+ "node": ">=20.19.0"
}
},
"node_modules/stylelint-config-recommended": {
- "version": "14.0.1",
- "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-14.0.1.tgz",
- "integrity": "sha512-bLvc1WOz/14aPImu/cufKAZYfXs/A/owZfSMZ4N+16WGXLoX5lOir53M6odBxvhgmgdxCVnNySJmZKx73T93cg==",
+ "version": "18.0.0",
+ "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-18.0.0.tgz",
+ "integrity": "sha512-mxgT2XY6YZ3HWWe3Di8umG6aBmWmHTblTgu/f10rqFXnyWxjKWwNdjSWkgkwCtxIKnqjSJzvFmPT5yabVIRxZg==",
"dev": true,
"funding": [
{
@@ -12672,35 +12784,84 @@
}
],
"engines": {
- "node": ">=18.12.0"
+ "node": ">=20.19.0"
},
"peerDependencies": {
- "stylelint": "^16.1.0"
+ "stylelint": "^17.0.0"
}
},
"node_modules/stylelint-config-wikimedia": {
- "version": "0.18.0",
- "resolved": "https://registry.npmjs.org/stylelint-config-wikimedia/-/stylelint-config-wikimedia-0.18.0.tgz",
- "integrity": "sha512-Lr45NIe7pG8i7BPcMc6EddO1pRK8/KNG8gp4o/oOG1Ez10hglJuJb/QT17BlzX8NPkhtP2KdY63NS2f/Wcj6Ww==",
+ "version": "0.19.2",
+ "resolved": "https://registry.npmjs.org/stylelint-config-wikimedia/-/stylelint-config-wikimedia-0.19.2.tgz",
+ "integrity": "sha512-GTz6SmNbbrjXJpEVussRBtsE2703BSUo5R4PRR3f+o1j1h6ngyyH3/qKJ7oZzlkRMHpJHVtAS9h1emIAvc/XWw==",
"dev": true,
"dependencies": {
- "@stylistic/stylelint-config": "2.0.0",
- "@stylistic/stylelint-plugin": "3.1.1",
+ "@stylistic/stylelint-config": "5.0.0",
+ "@stylistic/stylelint-plugin": "5.1.0",
"browserslist-config-wikimedia": "0.7.0",
- "postcss-html": "1.7.0",
+ "postcss-html": "1.8.1",
"postcss-less": "6.0.0",
- "stylelint": "16.12.0",
- "stylelint-config-recommended": "14.0.1",
- "stylelint-no-unsupported-browser-features": "8.0.2"
+ "stylelint": "17.6.0",
+ "stylelint-config-recommended": "18.0.0",
+ "stylelint-no-unsupported-browser-features": "8.1.1"
+ },
+ "engines": {
+ "node": ">=20.19.0"
},
"peerDependencies": {
"postcss-less": "^6.0.0"
}
},
+ "node_modules/stylelint-config-wikimedia/node_modules/@csstools/css-syntax-patches-for-csstree": {
+ "version": "1.1.5",
+ "resolved": "https://registry.npmjs.org/@csstools/css-syntax-patches-for-csstree/-/css-syntax-patches-for-csstree-1.1.5.tgz",
+ "integrity": "sha512-oNjBvzLq2GPZtJphCjLqXow/cHySHSgtxvKZb7OqSZ/xHgw6NWNhfad+6AB9cLeVm6eA9d/qMll3JdEHjy6M+A==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/csstools"
+ },
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/csstools"
+ }
+ ],
+ "peerDependencies": {
+ "css-tree": "^3.2.1"
+ },
+ "peerDependenciesMeta": {
+ "css-tree": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/stylelint-config-wikimedia/node_modules/@csstools/selector-resolve-nested": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/@csstools/selector-resolve-nested/-/selector-resolve-nested-4.0.0.tgz",
+ "integrity": "sha512-9vAPxmp+Dx3wQBIUwc1v7Mdisw1kbbaGqXUM8QLTgWg7SoPGYtXBsMXvsFs/0Bn5yoFhcktzxNZGNaUt0VjgjA==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/csstools"
+ },
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/csstools"
+ }
+ ],
+ "engines": {
+ "node": ">=20.19.0"
+ },
+ "peerDependencies": {
+ "postcss-selector-parser": "^7.1.1"
+ }
+ },
"node_modules/stylelint-config-wikimedia/node_modules/@csstools/selector-specificity": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-5.0.0.tgz",
- "integrity": "sha512-PCqQV3c4CoVm3kdPhyeZ07VmBRdH2EpMFA/pd9OASpOEC3aXNGoqPDAZ80D0cLpMBxnmk0+yNhGsEx31hq7Gtw==",
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-6.0.0.tgz",
+ "integrity": "sha512-4sSgl78OtOXEX/2d++8A83zHNTgwCJMaR24FvsYL7Uf/VS8HZk9PTwR51elTbGqMuwH3szLvvOXEaVnqn0Z3zA==",
"dev": true,
"funding": [
{
@@ -12713,54 +12874,55 @@
}
],
"engines": {
- "node": ">=18"
+ "node": ">=20.19.0"
},
"peerDependencies": {
- "postcss-selector-parser": "^7.0.0"
+ "postcss-selector-parser": "^7.1.1"
}
},
- "node_modules/stylelint-config-wikimedia/node_modules/balanced-match": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-2.0.0.tgz",
- "integrity": "sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==",
- "dev": true
+ "node_modules/stylelint-config-wikimedia/node_modules/ansi-regex": {
+ "version": "6.2.2",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz",
+ "integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==",
+ "dev": true,
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-regex?sponsor=1"
+ }
},
"node_modules/stylelint-config-wikimedia/node_modules/css-tree": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-3.1.0.tgz",
- "integrity": "sha512-0eW44TGN5SQXU1mWSkKwFstI/22X2bG1nYzZTYMAWjylYURhse752YgbE4Cx46AC+bAvI+/dYTPRk1LqSUnu6w==",
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-3.2.1.tgz",
+ "integrity": "sha512-X7sjQzceUhu1u7Y/ylrRZFU2FS6LRiFVp6rKLPg23y3x3c3DOKAwuXGDp+PAGjh6CSnCjYeAul8pcT8bAl+lSA==",
"dev": true,
"dependencies": {
- "mdn-data": "2.12.2",
- "source-map-js": "^1.0.1"
+ "mdn-data": "2.27.1",
+ "source-map-js": "^1.2.1"
},
"engines": {
"node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0"
}
},
"node_modules/stylelint-config-wikimedia/node_modules/file-entry-cache": {
- "version": "9.1.0",
- "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-9.1.0.tgz",
- "integrity": "sha512-/pqPFG+FdxWQj+/WSuzXSDaNzxgTLr/OrR1QuqfEZzDakpdYE70PwUxL7BPUa8hpjbvY1+qvCl8k+8Tq34xJgg==",
+ "version": "11.1.3",
+ "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-11.1.3.tgz",
+ "integrity": "sha512-oMbq0PD6VIiIwMF6LIa7MEwd/l9huKwmqRKXqmrkqIZv8CvRbfowL+L0ryAl8h//HfAS0zS+4SbYoRyAoA6BJA==",
"dev": true,
"dependencies": {
- "flat-cache": "^5.0.0"
- },
- "engines": {
- "node": ">=18"
+ "flat-cache": "^6.1.22"
}
},
"node_modules/stylelint-config-wikimedia/node_modules/flat-cache": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-5.0.0.tgz",
- "integrity": "sha512-JrqFmyUl2PnPi1OvLyTVHnQvwQ0S+e6lGSwu8OkAZlSaNIZciTY2H/cOOROxsBA1m/LZNHDsqAgDZt6akWcjsQ==",
+ "version": "6.1.22",
+ "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-6.1.22.tgz",
+ "integrity": "sha512-N2dnzVJIphnNsjHcrxGW7DePckJ6haPrSFqpsBUhHYgwtKGVq4JrBGielEGD2fCVnsGm1zlBVZ8wGhkyuetgug==",
"dev": true,
"dependencies": {
- "flatted": "^3.3.1",
- "keyv": "^4.5.4"
- },
- "engines": {
- "node": ">=18"
+ "cacheable": "^2.3.4",
+ "flatted": "^3.4.2",
+ "hookified": "^1.15.0"
}
},
"node_modules/stylelint-config-wikimedia/node_modules/global-modules": {
@@ -12789,15 +12951,47 @@
"node": ">=6"
}
},
+ "node_modules/stylelint-config-wikimedia/node_modules/globby": {
+ "version": "16.2.0",
+ "resolved": "https://registry.npmjs.org/globby/-/globby-16.2.0.tgz",
+ "integrity": "sha512-QrJia2qDf5BB/V6HYlDTs0I0lBahyjLzpGQg3KT7FnCdTonAyPy2RtY802m2k4ALx6Dp752f82WsOczEVr3l6Q==",
+ "dev": true,
+ "dependencies": {
+ "@sindresorhus/merge-streams": "^4.0.0",
+ "fast-glob": "^3.3.3",
+ "ignore": "^7.0.5",
+ "is-path-inside": "^4.0.0",
+ "slash": "^5.1.0",
+ "unicorn-magic": "^0.4.0"
+ },
+ "engines": {
+ "node": ">=20"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
"node_modules/stylelint-config-wikimedia/node_modules/ignore": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/ignore/-/ignore-6.0.2.tgz",
- "integrity": "sha512-InwqeHHN2XpumIkMvpl/DCJVrAHgCsG5+cn1XlnLWGwtZBm8QJfSusItfrwx81CTp5agNZqpKU2J/ccC5nGT4A==",
+ "version": "7.0.5",
+ "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz",
+ "integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==",
"dev": true,
"engines": {
"node": ">= 4"
}
},
+ "node_modules/stylelint-config-wikimedia/node_modules/is-path-inside": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-4.0.0.tgz",
+ "integrity": "sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==",
+ "dev": true,
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
"node_modules/stylelint-config-wikimedia/node_modules/is-plain-object": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz",
@@ -12807,22 +13001,16 @@
"node": ">=0.10.0"
}
},
- "node_modules/stylelint-config-wikimedia/node_modules/known-css-properties": {
- "version": "0.35.0",
- "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.35.0.tgz",
- "integrity": "sha512-a/RAk2BfKk+WFGhhOCAYqSiFLc34k8Mt/6NWRI4joER0EYUzXIcFivjjnoD3+XU1DggLn/tZc3DOAgke7l8a4A==",
- "dev": true
- },
"node_modules/stylelint-config-wikimedia/node_modules/mdn-data": {
- "version": "2.12.2",
- "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.12.2.tgz",
- "integrity": "sha512-IEn+pegP1aManZuckezWCO+XZQDplx1366JoVhTpMpBB1sPey/SbveZQUosKiKiGYjg1wH4pMlNgXbCiYgihQA==",
+ "version": "2.27.1",
+ "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.27.1.tgz",
+ "integrity": "sha512-9Yubnt3e8A0OKwxYSXyhLymGW4sCufcLG6VdiDdUGVkPhpqLxlvP5vl1983gQjJl3tqbrM731mjaZaP68AgosQ==",
"dev": true
},
"node_modules/stylelint-config-wikimedia/node_modules/postcss-selector-parser": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz",
- "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==",
+ "version": "7.1.4",
+ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.4.tgz",
+ "integrity": "sha512-HeP7D2wyhkR+XaK6v4W8oRF62Dsz4flyuczALJp61GckGm42u1saSSJ/0auvcBqxs3jMRFEcPK34At/0JBKdOg==",
"dev": true,
"dependencies": {
"cssesc": "^3.0.0",
@@ -12844,10 +13032,53 @@
"url": "https://github.com/sponsors/isaacs"
}
},
+ "node_modules/stylelint-config-wikimedia/node_modules/slash": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/slash/-/slash-5.1.0.tgz",
+ "integrity": "sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==",
+ "dev": true,
+ "engines": {
+ "node": ">=14.16"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/stylelint-config-wikimedia/node_modules/string-width": {
+ "version": "8.2.1",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-8.2.1.tgz",
+ "integrity": "sha512-IIaP0g3iy9Cyy18w3M9YcaDudujEAVHKt3a3QJg1+sr/oX96TbaGUubG0hJyCjCBThFH+tFpcIyoUHUn1ogaLA==",
+ "dev": true,
+ "dependencies": {
+ "get-east-asian-width": "^1.5.0",
+ "strip-ansi": "^7.1.2"
+ },
+ "engines": {
+ "node": ">=20"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/stylelint-config-wikimedia/node_modules/strip-ansi": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.2.0.tgz",
+ "integrity": "sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==",
+ "dev": true,
+ "dependencies": {
+ "ansi-regex": "^6.2.2"
+ },
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/strip-ansi?sponsor=1"
+ }
+ },
"node_modules/stylelint-config-wikimedia/node_modules/stylelint": {
- "version": "16.12.0",
- "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-16.12.0.tgz",
- "integrity": "sha512-F8zZ3L/rBpuoBZRvI4JVT20ZanPLXfQLzMOZg1tzPflRVh9mKpOZ8qcSIhh1my3FjAjZWG4T2POwGnmn6a6hbg==",
+ "version": "17.6.0",
+ "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-17.6.0.tgz",
+ "integrity": "sha512-tokrsMIVAR9vAQ/q3UVEr7S0dGXCi7zkCezPRnS2kqPUulvUh5Vgfwngrk4EoAoW7wnrThqTdnTFN5Ra7CaxIg==",
"dev": true,
"funding": [
{
@@ -12860,50 +13091,48 @@
}
],
"dependencies": {
- "@csstools/css-parser-algorithms": "^3.0.4",
- "@csstools/css-tokenizer": "^3.0.3",
- "@csstools/media-query-list-parser": "^4.0.2",
- "@csstools/selector-specificity": "^5.0.0",
- "@dual-bundle/import-meta-resolve": "^4.1.0",
- "balanced-match": "^2.0.0",
+ "@csstools/css-calc": "^3.1.1",
+ "@csstools/css-parser-algorithms": "^4.0.0",
+ "@csstools/css-syntax-patches-for-csstree": "^1.1.1",
+ "@csstools/css-tokenizer": "^4.0.0",
+ "@csstools/media-query-list-parser": "^5.0.0",
+ "@csstools/selector-resolve-nested": "^4.0.0",
+ "@csstools/selector-specificity": "^6.0.0",
"colord": "^2.9.3",
- "cosmiconfig": "^9.0.0",
- "css-functions-list": "^3.2.3",
- "css-tree": "^3.0.1",
- "debug": "^4.3.7",
- "fast-glob": "^3.3.2",
+ "cosmiconfig": "^9.0.1",
+ "css-functions-list": "^3.3.3",
+ "css-tree": "^3.2.1",
+ "debug": "^4.4.3",
+ "fast-glob": "^3.3.3",
"fastest-levenshtein": "^1.0.16",
- "file-entry-cache": "^9.1.0",
+ "file-entry-cache": "^11.1.2",
"global-modules": "^2.0.0",
- "globby": "^11.1.0",
+ "globby": "^16.1.1",
"globjoin": "^0.1.4",
- "html-tags": "^3.3.1",
- "ignore": "^6.0.2",
- "imurmurhash": "^0.1.4",
+ "html-tags": "^5.1.0",
+ "ignore": "^7.0.5",
+ "import-meta-resolve": "^4.2.0",
"is-plain-object": "^5.0.0",
- "known-css-properties": "^0.35.0",
- "mathml-tag-names": "^2.1.3",
- "meow": "^13.2.0",
+ "mathml-tag-names": "^4.0.0",
+ "meow": "^14.1.0",
"micromatch": "^4.0.8",
"normalize-path": "^3.0.0",
"picocolors": "^1.1.1",
- "postcss": "^8.4.49",
- "postcss-resolve-nested-selector": "^0.1.6",
+ "postcss": "^8.5.8",
"postcss-safe-parser": "^7.0.1",
- "postcss-selector-parser": "^7.0.0",
+ "postcss-selector-parser": "^7.1.1",
"postcss-value-parser": "^4.2.0",
- "resolve-from": "^5.0.0",
- "string-width": "^4.2.3",
- "supports-hyperlinks": "^3.1.0",
+ "string-width": "^8.2.0",
+ "supports-hyperlinks": "^4.4.0",
"svg-tags": "^1.0.0",
"table": "^6.9.0",
- "write-file-atomic": "^5.0.1"
+ "write-file-atomic": "^7.0.1"
},
"bin": {
"stylelint": "bin/stylelint.mjs"
},
"engines": {
- "node": ">=18.12.0"
+ "node": ">=20.19.0"
}
},
"node_modules/stylelint-config-wikimedia/node_modules/which": {
@@ -12919,38 +13148,86 @@
}
},
"node_modules/stylelint-config-wikimedia/node_modules/write-file-atomic": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz",
- "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==",
+ "version": "7.0.1",
+ "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-7.0.1.tgz",
+ "integrity": "sha512-OTIk8iR8/aCRWBqvxrzxR0hgxWpnYBblY1S5hDWBQfk/VFmJwzmJgQFN3WsoUKHISv2eAwe+PpbUzyL1CKTLXg==",
"dev": true,
"dependencies": {
- "imurmurhash": "^0.1.4",
"signal-exit": "^4.0.1"
},
"engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ "node": "^20.17.0 || >=22.9.0"
}
},
"node_modules/stylelint-no-unsupported-browser-features": {
- "version": "8.0.2",
- "resolved": "https://registry.npmjs.org/stylelint-no-unsupported-browser-features/-/stylelint-no-unsupported-browser-features-8.0.2.tgz",
- "integrity": "sha512-4PY2qJ3ZTEje9RgGfaQ82eJoPioXxs6hazeKpji/wzLNVzTX2wd4b0Ds3ewdLkH3ID+o63IInuTquU2MNJO3YQ==",
+ "version": "8.1.1",
+ "resolved": "https://registry.npmjs.org/stylelint-no-unsupported-browser-features/-/stylelint-no-unsupported-browser-features-8.1.1.tgz",
+ "integrity": "sha512-sLEe6NUFoWL2vGt6IKKllQEKfKgVxmvTBFs1JVMHKKLWzxtWAXaqSxJvH+j0URM4vLQQqzC/wXc9Kp3XBNKdBw==",
"dev": true,
"dependencies": {
- "doiuse": "^6.0.5",
+ "browserslist": "^4.26.3",
+ "doiuse": "^6.0.6",
"postcss": "^8.4.32"
},
"engines": {
"node": ">=18.12.0"
},
"peerDependencies": {
- "stylelint": "^16.0.2"
+ "stylelint": ">=16.0.2"
+ }
+ },
+ "node_modules/stylelint/node_modules/@csstools/css-syntax-patches-for-csstree": {
+ "version": "1.1.5",
+ "resolved": "https://registry.npmjs.org/@csstools/css-syntax-patches-for-csstree/-/css-syntax-patches-for-csstree-1.1.5.tgz",
+ "integrity": "sha512-oNjBvzLq2GPZtJphCjLqXow/cHySHSgtxvKZb7OqSZ/xHgw6NWNhfad+6AB9cLeVm6eA9d/qMll3JdEHjy6M+A==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/csstools"
+ },
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/csstools"
+ }
+ ],
+ "peer": true,
+ "peerDependencies": {
+ "css-tree": "^3.2.1"
+ },
+ "peerDependenciesMeta": {
+ "css-tree": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/stylelint/node_modules/@csstools/selector-resolve-nested": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/@csstools/selector-resolve-nested/-/selector-resolve-nested-4.0.0.tgz",
+ "integrity": "sha512-9vAPxmp+Dx3wQBIUwc1v7Mdisw1kbbaGqXUM8QLTgWg7SoPGYtXBsMXvsFs/0Bn5yoFhcktzxNZGNaUt0VjgjA==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/csstools"
+ },
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/csstools"
+ }
+ ],
+ "peer": true,
+ "engines": {
+ "node": ">=20.19.0"
+ },
+ "peerDependencies": {
+ "postcss-selector-parser": "^7.1.1"
}
},
"node_modules/stylelint/node_modules/@csstools/selector-specificity": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-5.0.0.tgz",
- "integrity": "sha512-PCqQV3c4CoVm3kdPhyeZ07VmBRdH2EpMFA/pd9OASpOEC3aXNGoqPDAZ80D0cLpMBxnmk0+yNhGsEx31hq7Gtw==",
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/@csstools/selector-specificity/-/selector-specificity-6.0.0.tgz",
+ "integrity": "sha512-4sSgl78OtOXEX/2d++8A83zHNTgwCJMaR24FvsYL7Uf/VS8HZk9PTwR51elTbGqMuwH3szLvvOXEaVnqn0Z3zA==",
"dev": true,
"funding": [
{
@@ -12962,50 +13239,61 @@
"url": "https://opencollective.com/csstools"
}
],
+ "peer": true,
"engines": {
- "node": ">=18"
+ "node": ">=20.19.0"
},
"peerDependencies": {
- "postcss-selector-parser": "^7.0.0"
+ "postcss-selector-parser": "^7.1.1"
}
},
- "node_modules/stylelint/node_modules/balanced-match": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-2.0.0.tgz",
- "integrity": "sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==",
- "dev": true
+ "node_modules/stylelint/node_modules/ansi-regex": {
+ "version": "6.2.2",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz",
+ "integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==",
+ "dev": true,
+ "peer": true,
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-regex?sponsor=1"
+ }
},
"node_modules/stylelint/node_modules/css-tree": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-3.1.0.tgz",
- "integrity": "sha512-0eW44TGN5SQXU1mWSkKwFstI/22X2bG1nYzZTYMAWjylYURhse752YgbE4Cx46AC+bAvI+/dYTPRk1LqSUnu6w==",
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-3.2.1.tgz",
+ "integrity": "sha512-X7sjQzceUhu1u7Y/ylrRZFU2FS6LRiFVp6rKLPg23y3x3c3DOKAwuXGDp+PAGjh6CSnCjYeAul8pcT8bAl+lSA==",
"dev": true,
+ "peer": true,
"dependencies": {
- "mdn-data": "2.12.2",
- "source-map-js": "^1.0.1"
+ "mdn-data": "2.27.1",
+ "source-map-js": "^1.2.1"
},
"engines": {
"node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0"
}
},
"node_modules/stylelint/node_modules/file-entry-cache": {
- "version": "10.1.3",
- "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-10.1.3.tgz",
- "integrity": "sha512-D+w75Ub8T55yor7fPgN06rkCAUbAYw2vpxJmmjv/GDAcvCnv9g7IvHhIZoxzRZThrXPFI2maeY24pPbtyYU7Lg==",
+ "version": "11.1.3",
+ "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-11.1.3.tgz",
+ "integrity": "sha512-oMbq0PD6VIiIwMF6LIa7MEwd/l9huKwmqRKXqmrkqIZv8CvRbfowL+L0ryAl8h//HfAS0zS+4SbYoRyAoA6BJA==",
"dev": true,
+ "peer": true,
"dependencies": {
- "flat-cache": "^6.1.12"
+ "flat-cache": "^6.1.22"
}
},
"node_modules/stylelint/node_modules/flat-cache": {
- "version": "6.1.12",
- "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-6.1.12.tgz",
- "integrity": "sha512-U+HqqpZPPXP5d24bWuRzjGqVqUcw64k4nZAbruniDwdRg0H10tvN7H6ku1tjhA4rg5B9GS3siEvwO2qjJJ6f8Q==",
+ "version": "6.1.22",
+ "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-6.1.22.tgz",
+ "integrity": "sha512-N2dnzVJIphnNsjHcrxGW7DePckJ6haPrSFqpsBUhHYgwtKGVq4JrBGielEGD2fCVnsGm1zlBVZ8wGhkyuetgug==",
"dev": true,
+ "peer": true,
"dependencies": {
- "cacheable": "^1.10.3",
- "flatted": "^3.3.3",
- "hookified": "^1.10.0"
+ "cacheable": "^2.3.4",
+ "flatted": "^3.4.2",
+ "hookified": "^1.15.0"
}
},
"node_modules/stylelint/node_modules/global-modules": {
@@ -13013,6 +13301,7 @@
"resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz",
"integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==",
"dev": true,
+ "peer": true,
"dependencies": {
"global-prefix": "^3.0.0"
},
@@ -13025,6 +13314,7 @@
"resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz",
"integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==",
"dev": true,
+ "peer": true,
"dependencies": {
"ini": "^1.3.5",
"kind-of": "^6.0.2",
@@ -13034,35 +13324,63 @@
"node": ">=6"
}
},
+ "node_modules/stylelint/node_modules/globby": {
+ "version": "16.2.0",
+ "resolved": "https://registry.npmjs.org/globby/-/globby-16.2.0.tgz",
+ "integrity": "sha512-QrJia2qDf5BB/V6HYlDTs0I0lBahyjLzpGQg3KT7FnCdTonAyPy2RtY802m2k4ALx6Dp752f82WsOczEVr3l6Q==",
+ "dev": true,
+ "peer": true,
+ "dependencies": {
+ "@sindresorhus/merge-streams": "^4.0.0",
+ "fast-glob": "^3.3.3",
+ "ignore": "^7.0.5",
+ "is-path-inside": "^4.0.0",
+ "slash": "^5.1.0",
+ "unicorn-magic": "^0.4.0"
+ },
+ "engines": {
+ "node": ">=20"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
"node_modules/stylelint/node_modules/ignore": {
"version": "7.0.5",
"resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz",
"integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==",
"dev": true,
+ "peer": true,
"engines": {
"node": ">= 4"
}
},
- "node_modules/stylelint/node_modules/is-plain-object": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz",
- "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==",
+ "node_modules/stylelint/node_modules/is-path-inside": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-4.0.0.tgz",
+ "integrity": "sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==",
"dev": true,
+ "peer": true,
"engines": {
- "node": ">=0.10.0"
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/stylelint/node_modules/mdn-data": {
- "version": "2.12.2",
- "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.12.2.tgz",
- "integrity": "sha512-IEn+pegP1aManZuckezWCO+XZQDplx1366JoVhTpMpBB1sPey/SbveZQUosKiKiGYjg1wH4pMlNgXbCiYgihQA==",
- "dev": true
+ "version": "2.27.1",
+ "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.27.1.tgz",
+ "integrity": "sha512-9Yubnt3e8A0OKwxYSXyhLymGW4sCufcLG6VdiDdUGVkPhpqLxlvP5vl1983gQjJl3tqbrM731mjaZaP68AgosQ==",
+ "dev": true,
+ "peer": true
},
"node_modules/stylelint/node_modules/postcss-selector-parser": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.0.tgz",
- "integrity": "sha512-8sLjZwK0R+JlxlYcTuVnyT2v+htpdrjDOKuMcOVdYjt52Lh8hWRYpxBPoKx/Zg+bcjc3wx6fmQevMmUztS/ccA==",
+ "version": "7.1.4",
+ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.4.tgz",
+ "integrity": "sha512-HeP7D2wyhkR+XaK6v4W8oRF62Dsz4flyuczALJp61GckGm42u1saSSJ/0auvcBqxs3jMRFEcPK34At/0JBKdOg==",
"dev": true,
+ "peer": true,
"dependencies": {
"cssesc": "^3.0.0",
"util-deprecate": "^1.0.2"
@@ -13076,6 +13394,7 @@
"resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
"integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==",
"dev": true,
+ "peer": true,
"engines": {
"node": ">=14"
},
@@ -13083,11 +13402,58 @@
"url": "https://github.com/sponsors/isaacs"
}
},
+ "node_modules/stylelint/node_modules/slash": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/slash/-/slash-5.1.0.tgz",
+ "integrity": "sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==",
+ "dev": true,
+ "peer": true,
+ "engines": {
+ "node": ">=14.16"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/stylelint/node_modules/string-width": {
+ "version": "8.2.1",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-8.2.1.tgz",
+ "integrity": "sha512-IIaP0g3iy9Cyy18w3M9YcaDudujEAVHKt3a3QJg1+sr/oX96TbaGUubG0hJyCjCBThFH+tFpcIyoUHUn1ogaLA==",
+ "dev": true,
+ "peer": true,
+ "dependencies": {
+ "get-east-asian-width": "^1.5.0",
+ "strip-ansi": "^7.1.2"
+ },
+ "engines": {
+ "node": ">=20"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/stylelint/node_modules/strip-ansi": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.2.0.tgz",
+ "integrity": "sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==",
+ "dev": true,
+ "peer": true,
+ "dependencies": {
+ "ansi-regex": "^6.2.2"
+ },
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/strip-ansi?sponsor=1"
+ }
+ },
"node_modules/stylelint/node_modules/which": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
"integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
"dev": true,
+ "peer": true,
"dependencies": {
"isexe": "^2.0.0"
},
@@ -13096,16 +13462,16 @@
}
},
"node_modules/stylelint/node_modules/write-file-atomic": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz",
- "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==",
+ "version": "7.0.1",
+ "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-7.0.1.tgz",
+ "integrity": "sha512-OTIk8iR8/aCRWBqvxrzxR0hgxWpnYBblY1S5hDWBQfk/VFmJwzmJgQFN3WsoUKHISv2eAwe+PpbUzyL1CKTLXg==",
"dev": true,
+ "peer": true,
"dependencies": {
- "imurmurhash": "^0.1.4",
"signal-exit": "^4.0.1"
},
"engines": {
- "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ "node": "^20.17.0 || >=22.9.0"
}
},
"node_modules/supports-color": {
@@ -13121,40 +13487,43 @@
}
},
"node_modules/supports-hyperlinks": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-3.2.0.tgz",
- "integrity": "sha512-zFObLMyZeEwzAoKCyu1B91U79K2t7ApXuQfo8OuxwXLDgcKxuwM+YvcbIhm6QWqz7mHUH1TVytR1PwVVjEuMig==",
+ "version": "4.4.0",
+ "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-4.4.0.tgz",
+ "integrity": "sha512-UKbpT93hN5Nr9go5UY7bopIB9YQlMz9nm/ct4IXt/irb5YRkn9WaqrOBJGZ5Pwvsd5FQzSVeYlGdXoCAPQZrPg==",
"dev": true,
"dependencies": {
- "has-flag": "^4.0.0",
- "supports-color": "^7.0.0"
+ "has-flag": "^5.0.1",
+ "supports-color": "^10.2.2"
},
"engines": {
- "node": ">=14.18"
+ "node": ">=20"
},
"funding": {
"url": "https://github.com/chalk/supports-hyperlinks?sponsor=1"
}
},
"node_modules/supports-hyperlinks/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-5.0.1.tgz",
+ "integrity": "sha512-CsNUt5x9LUdx6hnk/E2SZLsDyvfqANZSUq4+D3D8RzDJ2M+HDTIkF60ibS1vHaK55vzgiZw1bEPFG9yH7l33wA==",
"dev": true,
"engines": {
- "node": ">=8"
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/supports-hyperlinks/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "version": "10.2.2",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-10.2.2.tgz",
+ "integrity": "sha512-SS+jx45GF1QjgEXQx4NJZV9ImqmO2NPz5FNsIHrsDjh2YsHnawpan7SNQ1o8NuhrbHZy9AZhIoCUiCeaW/C80g==",
"dev": true,
- "dependencies": {
- "has-flag": "^4.0.0"
- },
"engines": {
- "node": ">=8"
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/supports-color?sponsor=1"
}
},
"node_modules/supports-preserve-symlinks-flag": {
@@ -13553,6 +13922,18 @@
"node": ">=4"
}
},
+ "node_modules/unicorn-magic": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.4.0.tgz",
+ "integrity": "sha512-wH590V9VNgYH9g3lH9wWjTrUoKsjLF6sGLjhR4sH1LWpLmCOH0Zf7PukhDA8BiS7KHe4oPNkcTHqYkj7SOGUOw==",
+ "dev": true,
+ "engines": {
+ "node": ">=20"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
"node_modules/universalify": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz",
diff --git a/package.json b/package.json
index d684b0d..7bdf9b8 100644
--- a/package.json
+++ b/package.json
@@ -16,20 +16,20 @@
"@vue/compiler-sfc": "3.5.13",
"@vue/test-utils": "2.4.6",
"@vue/vue3-jest": "29.2.6",
- "@wikimedia/codex": "2.4.0",
- "@wikimedia/codex-icons": "2.4.0",
+ "@wikimedia/codex": "2.6.0",
+ "@wikimedia/codex-icons": "2.6.0",
"babel-core": "^6.26.3",
"eslint-config-wikimedia": "0.32.4",
"eslint-plugin-jest": "27.2.1",
"grunt": "1.6.2",
"grunt-banana-checker": "0.13.0",
"grunt-eslint": "24.3.0",
- "grunt-stylelint": "0.20.1",
+ "grunt-stylelint": "0.21.0",
"jest": "29.7.0",
"jest-environment-jsdom": "29.7.0",
"jest-when": "^3.2.1",
"jquery": "^3.7.1",
- "stylelint-config-wikimedia": "0.18.0",
+ "stylelint-config-wikimedia": "0.19.2",
"vue": "3.5.13",
"vue-router": "4.5.1"
}
--
2.47.3
--- end ---