mediawiki/extensions/Wikibase (REL1_39)

sourcepatches
From c581c82fc3c79c33d28b7a4afc54100b36346639 Mon Sep 17 00:00:00 2001
From: libraryupgrader <tools.libraryupgrader@tools.wmflabs.org>
Date: Sun, 28 Apr 2024 15:27:04 +0000
Subject: [PATCH] build: Updating npm dependencies
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

* grunt: 1.4.1 → 1.5.3
* @babel/traverse: 7.17.10 → 7.24.1
  * https://github.com/advisories/GHSA-67hx-6x53-jw92
* cookiejar: 2.1.3 → 2.1.4
  * https://github.com/advisories/GHSA-h452-7996-h45h
* get-func-name: 2.0.0 → 2.0.2
  * https://github.com/advisories/GHSA-4q6p-r6v2-jvc5
* got: 11.8.3 → 11.8.6
  * https://github.com/advisories/GHSA-pfrx-2q88-qq97
* http-cache-semantics: 4.1.0 → 4.1.1
  * https://github.com/advisories/GHSA-rc47-6667-2j5j
* json5: 2.2.1 → 2.2.3
  * https://github.com/advisories/GHSA-9c47-m6qq-7p4h
* minimatch: 3.0.4, 3.0.8, 3.1.2, 4.2.1, 5.0.1 → 3.0.8, 3.1.2, 4.2.1, 5.0.1
  * https://github.com/advisories/GHSA-f8q6-p94x-37v3
* recursive-readdir: 2.2.2 → 2.2.3
  * https://github.com/advisories/GHSA-f8q6-p94x-37v3
* ua-parser-js: 1.0.2 → 1.0.37
  * https://github.com/advisories/GHSA-fhg7-m89q-25r3
* word-wrap: 1.2.3 → 1.2.5
  * https://github.com/advisories/GHSA-j8xg-fqg3-53r7

Additional changes:
* Dropped default excluded folder(s) from .phpcs.xml (T274684).

Change-Id: I8c05aca451640d3f02382e2d6e74a32563487331
---
 .phpcs.xml        |   1 -
 package-lock.json | 936 ++++++++++++++++++++++++----------------------
 package.json      |   2 +-
 3 files changed, 485 insertions(+), 454 deletions(-)

diff --git a/.phpcs.xml b/.phpcs.xml
index e4cae46..754f0a8 100644
--- a/.phpcs.xml
+++ b/.phpcs.xml
@@ -142,6 +142,5 @@
 	<exclude-pattern>.phan/stubs</exclude-pattern>
 	<exclude-pattern>repo/tests/browser</exclude-pattern>
 	<exclude-pattern>view/lib/wikibase-api/WikibaseJavaScriptApi.php</exclude-pattern>
-	<exclude-pattern>node_modules/*</exclude-pattern>
 	<exclude-pattern type="relative">^extensions/</exclude-pattern>
 </ruleset>
diff --git a/package-lock.json b/package-lock.json
index 36d3d40..5f8d501 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -18,7 +18,7 @@
 				"apollo-boost": "^0.4.9",
 				"cross-fetch": "^3.1.5",
 				"eslint-config-wikimedia": "0.22.1",
-				"grunt": "1.4.1",
+				"grunt": "1.5.3",
 				"grunt-banana-checker": "0.9.0",
 				"grunt-eslint": "24.0.0",
 				"grunt-stylelint": "0.16.0",
@@ -45,12 +45,13 @@
 			}
 		},
 		"node_modules/@babel/code-frame": {
-			"version": "7.16.7",
-			"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz",
-			"integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==",
+			"version": "7.24.2",
+			"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz",
+			"integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==",
 			"dev": true,
 			"dependencies": {
-				"@babel/highlight": "^7.16.7"
+				"@babel/highlight": "^7.24.2",
+				"picocolors": "^1.0.0"
 			},
 			"engines": {
 				"node": ">=6.9.0"
@@ -96,28 +97,43 @@
 			}
 		},
 		"node_modules/@babel/core/node_modules/semver": {
-			"version": "6.3.0",
-			"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
-			"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+			"version": "6.3.1",
+			"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+			"integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
 			"dev": true,
 			"bin": {
 				"semver": "bin/semver.js"
 			}
 		},
 		"node_modules/@babel/generator": {
-			"version": "7.17.10",
-			"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.10.tgz",
-			"integrity": "sha512-46MJZZo9y3o4kmhBVc7zW7i8dtR1oIK/sdO5NcfcZRhTGYi+KKJRtHNgsU6c4VUcJmUNV/LQdebD/9Dlv4K+Tg==",
+			"version": "7.24.4",
+			"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz",
+			"integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==",
 			"dev": true,
 			"dependencies": {
-				"@babel/types": "^7.17.10",
-				"@jridgewell/gen-mapping": "^0.1.0",
+				"@babel/types": "^7.24.0",
+				"@jridgewell/gen-mapping": "^0.3.5",
+				"@jridgewell/trace-mapping": "^0.3.25",
 				"jsesc": "^2.5.1"
 			},
 			"engines": {
 				"node": ">=6.9.0"
 			}
 		},
+		"node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": {
+			"version": "0.3.5",
+			"resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
+			"integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
+			"dev": true,
+			"dependencies": {
+				"@jridgewell/set-array": "^1.2.1",
+				"@jridgewell/sourcemap-codec": "^1.4.10",
+				"@jridgewell/trace-mapping": "^0.3.24"
+			},
+			"engines": {
+				"node": ">=6.0.0"
+			}
+		},
 		"node_modules/@babel/helper-compilation-targets": {
 			"version": "7.17.10",
 			"resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.17.10.tgz",
@@ -137,46 +153,43 @@
 			}
 		},
 		"node_modules/@babel/helper-compilation-targets/node_modules/semver": {
-			"version": "6.3.0",
-			"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
-			"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+			"version": "6.3.1",
+			"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+			"integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
 			"dev": true,
 			"bin": {
 				"semver": "bin/semver.js"
 			}
 		},
 		"node_modules/@babel/helper-environment-visitor": {
-			"version": "7.16.7",
-			"resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz",
-			"integrity": "sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==",
+			"version": "7.22.20",
+			"resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz",
+			"integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==",
 			"dev": true,
-			"dependencies": {
-				"@babel/types": "^7.16.7"
-			},
 			"engines": {
 				"node": ">=6.9.0"
 			}
 		},
 		"node_modules/@babel/helper-function-name": {
-			"version": "7.17.9",
-			"resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.17.9.tgz",
-			"integrity": "sha512-7cRisGlVtiVqZ0MW0/yFB4atgpGLWEHUVYnb448hZK4x+vih0YO5UoS11XIYtZYqHd0dIPMdUSv8q5K4LdMnIg==",
+			"version": "7.23.0",
+			"resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz",
+			"integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==",
 			"dev": true,
 			"dependencies": {
-				"@babel/template": "^7.16.7",
-				"@babel/types": "^7.17.0"
+				"@babel/template": "^7.22.15",
+				"@babel/types": "^7.23.0"
 			},
 			"engines": {
 				"node": ">=6.9.0"
 			}
 		},
 		"node_modules/@babel/helper-hoist-variables": {
-			"version": "7.16.7",
-			"resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz",
-			"integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==",
+			"version": "7.22.5",
+			"resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz",
+			"integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==",
 			"dev": true,
 			"dependencies": {
-				"@babel/types": "^7.16.7"
+				"@babel/types": "^7.22.5"
 			},
 			"engines": {
 				"node": ">=6.9.0"
@@ -226,21 +239,30 @@
 			}
 		},
 		"node_modules/@babel/helper-split-export-declaration": {
-			"version": "7.16.7",
-			"resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz",
-			"integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==",
+			"version": "7.22.6",
+			"resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz",
+			"integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==",
 			"dev": true,
 			"dependencies": {
-				"@babel/types": "^7.16.7"
+				"@babel/types": "^7.22.5"
 			},
 			"engines": {
 				"node": ">=6.9.0"
 			}
 		},
+		"node_modules/@babel/helper-string-parser": {
+			"version": "7.24.1",
+			"resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz",
+			"integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==",
+			"dev": true,
+			"engines": {
+				"node": ">=6.9.0"
+			}
+		},
 		"node_modules/@babel/helper-validator-identifier": {
-			"version": "7.16.7",
-			"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz",
-			"integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==",
+			"version": "7.22.20",
+			"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz",
+			"integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==",
 			"dev": true,
 			"engines": {
 				"node": ">=6.9.0"
@@ -270,14 +292,15 @@
 			}
 		},
 		"node_modules/@babel/highlight": {
-			"version": "7.17.9",
-			"resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.9.tgz",
-			"integrity": "sha512-J9PfEKCbFIv2X5bjTMiZu6Vf341N05QIY+d6FvVKynkG1S7G0j3I0QoRtWIrXhZ+/Nlb5Q0MzqL7TokEJ5BNHg==",
+			"version": "7.24.2",
+			"resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz",
+			"integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==",
 			"dev": true,
 			"dependencies": {
-				"@babel/helper-validator-identifier": "^7.16.7",
-				"chalk": "^2.0.0",
-				"js-tokens": "^4.0.0"
+				"@babel/helper-validator-identifier": "^7.22.20",
+				"chalk": "^2.4.2",
+				"js-tokens": "^4.0.0",
+				"picocolors": "^1.0.0"
 			},
 			"engines": {
 				"node": ">=6.9.0"
@@ -321,13 +344,13 @@
 		"node_modules/@babel/highlight/node_modules/color-name": {
 			"version": "1.1.3",
 			"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
-			"integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
+			"integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==",
 			"dev": true
 		},
 		"node_modules/@babel/highlight/node_modules/escape-string-regexp": {
 			"version": "1.0.5",
 			"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
-			"integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
+			"integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
 			"dev": true,
 			"engines": {
 				"node": ">=0.8.0"
@@ -336,7 +359,7 @@
 		"node_modules/@babel/highlight/node_modules/has-flag": {
 			"version": "3.0.0",
 			"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
-			"integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
+			"integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
 			"dev": true,
 			"engines": {
 				"node": ">=4"
@@ -355,9 +378,9 @@
 			}
 		},
 		"node_modules/@babel/parser": {
-			"version": "7.17.10",
-			"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.10.tgz",
-			"integrity": "sha512-n2Q6i+fnJqzOaq2VkdXxy2TCPCWQZHiCo0XqmrCvDWcZQKRyZzYi4Z0yxlBuN0w+r2ZHmre+Q087DSrw3pbJDQ==",
+			"version": "7.24.4",
+			"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz",
+			"integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==",
 			"dev": true,
 			"bin": {
 				"parser": "bin/babel-parser.js"
@@ -367,34 +390,34 @@
 			}
 		},
 		"node_modules/@babel/template": {
-			"version": "7.16.7",
-			"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz",
-			"integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==",
+			"version": "7.24.0",
+			"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz",
+			"integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==",
 			"dev": true,
 			"dependencies": {
-				"@babel/code-frame": "^7.16.7",
-				"@babel/parser": "^7.16.7",
-				"@babel/types": "^7.16.7"
+				"@babel/code-frame": "^7.23.5",
+				"@babel/parser": "^7.24.0",
+				"@babel/types": "^7.24.0"
 			},
 			"engines": {
 				"node": ">=6.9.0"
 			}
 		},
 		"node_modules/@babel/traverse": {
-			"version": "7.17.10",
-			"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.10.tgz",
-			"integrity": "sha512-VmbrTHQteIdUUQNTb+zE12SHS/xQVIShmBPhlNP12hD5poF2pbITW1Z4172d03HegaQWhLffdkRJYtAzp0AGcw==",
-			"dev": true,
-			"dependencies": {
-				"@babel/code-frame": "^7.16.7",
-				"@babel/generator": "^7.17.10",
-				"@babel/helper-environment-visitor": "^7.16.7",
-				"@babel/helper-function-name": "^7.17.9",
-				"@babel/helper-hoist-variables": "^7.16.7",
-				"@babel/helper-split-export-declaration": "^7.16.7",
-				"@babel/parser": "^7.17.10",
-				"@babel/types": "^7.17.10",
-				"debug": "^4.1.0",
+			"version": "7.24.1",
+			"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz",
+			"integrity": "sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==",
+			"dev": true,
+			"dependencies": {
+				"@babel/code-frame": "^7.24.1",
+				"@babel/generator": "^7.24.1",
+				"@babel/helper-environment-visitor": "^7.22.20",
+				"@babel/helper-function-name": "^7.23.0",
+				"@babel/helper-hoist-variables": "^7.22.5",
+				"@babel/helper-split-export-declaration": "^7.22.6",
+				"@babel/parser": "^7.24.1",
+				"@babel/types": "^7.24.0",
+				"debug": "^4.3.1",
 				"globals": "^11.1.0"
 			},
 			"engines": {
@@ -411,12 +434,13 @@
 			}
 		},
 		"node_modules/@babel/types": {
-			"version": "7.17.10",
-			"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.17.10.tgz",
-			"integrity": "sha512-9O26jG0mBYfGkUYCYZRnBwbVLd1UZOICEr2Em6InB6jVfsAv1GKgwXHmrSg+WFWDmeKTA6vyTZiN8tCSM5Oo3A==",
+			"version": "7.24.0",
+			"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz",
+			"integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==",
 			"dev": true,
 			"dependencies": {
-				"@babel/helper-validator-identifier": "^7.16.7",
+				"@babel/helper-string-parser": "^7.23.4",
+				"@babel/helper-validator-identifier": "^7.22.20",
 				"to-fast-properties": "^2.0.0"
 			},
 			"engines": {
@@ -507,43 +531,43 @@
 			}
 		},
 		"node_modules/@jridgewell/resolve-uri": {
-			"version": "3.0.6",
-			"resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.6.tgz",
-			"integrity": "sha512-R7xHtBSNm+9SyvpJkdQl+qrM3Hm2fea3Ef197M3mUug+v+yR+Rhfbs7PBtcBUVnIWJ4JcAdjvij+c8hXS9p5aw==",
+			"version": "3.1.2",
+			"resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
+			"integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
 			"dev": true,
 			"engines": {
 				"node": ">=6.0.0"
 			}
 		},
 		"node_modules/@jridgewell/set-array": {
-			"version": "1.1.0",
-			"resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.0.tgz",
-			"integrity": "sha512-SfJxIxNVYLTsKwzB3MoOQ1yxf4w/E6MdkvTgrgAt1bfxjSrLUoHMKrDOykwN14q65waezZIdqDneUIPh4/sKxg==",
+			"version": "1.2.1",
+			"resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz",
+			"integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==",
 			"dev": true,
 			"engines": {
 				"node": ">=6.0.0"
 			}
 		},
 		"node_modules/@jridgewell/sourcemap-codec": {
-			"version": "1.4.11",
-			"resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz",
-			"integrity": "sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg==",
+			"version": "1.4.15",
+			"resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz",
+			"integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==",
 			"dev": true
 		},
 		"node_modules/@jridgewell/trace-mapping": {
-			"version": "0.3.9",
-			"resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz",
-			"integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==",
+			"version": "0.3.25",
+			"resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
+			"integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
 			"dev": true,
 			"dependencies": {
-				"@jridgewell/resolve-uri": "^3.0.3",
-				"@jridgewell/sourcemap-codec": "^1.4.10"
+				"@jridgewell/resolve-uri": "^3.1.0",
+				"@jridgewell/sourcemap-codec": "^1.4.14"
 			}
 		},
 		"node_modules/@mdn/browser-compat-data": {
-			"version": "4.1.18",
-			"resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-4.1.18.tgz",
-			"integrity": "sha512-Ap8MOYbyvEilK1+sNY6yh6LmsHSp7f5zzSGlY4AemhbTcoultcozEXPzx42OO6WjoriOsw88aW8TiqgYdXwsxg==",
+			"version": "5.5.23",
+			"resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-5.5.23.tgz",
+			"integrity": "sha512-nIy38qL3nfNcGOz5J2BJQpBXa7vM9QO1+wbyvqqS89lgNTWE8Q10whLsmE0sTVBooXiEaRc4fVME5IXjCYiHAw==",
 			"dev": true
 		},
 		"node_modules/@nodelib/fs.scandir": {
@@ -1640,20 +1664,14 @@
 			}
 		},
 		"node_modules/ast-metadata-inferer": {
-			"version": "0.7.0",
-			"resolved": "https://registry.npmjs.org/ast-metadata-inferer/-/ast-metadata-inferer-0.7.0.tgz",
-			"integrity": "sha512-OkMLzd8xelb3gmnp6ToFvvsHLtS6CbagTkFQvQ+ZYFe3/AIl9iKikNR9G7pY3GfOR/2Xc222hwBjzI7HLkE76Q==",
+			"version": "0.8.0",
+			"resolved": "https://registry.npmjs.org/ast-metadata-inferer/-/ast-metadata-inferer-0.8.0.tgz",
+			"integrity": "sha512-jOMKcHht9LxYIEQu+RVd22vtgrPaVCtDRQ/16IGmurdzxvYbDd5ynxjnyrzLnieG96eTcAyaoj/wN/4/1FyyeA==",
 			"dev": true,
 			"dependencies": {
-				"@mdn/browser-compat-data": "^3.3.14"
+				"@mdn/browser-compat-data": "^5.2.34"
 			}
 		},
-		"node_modules/ast-metadata-inferer/node_modules/@mdn/browser-compat-data": {
-			"version": "3.3.14",
-			"resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-3.3.14.tgz",
-			"integrity": "sha512-n2RC9d6XatVbWFdHLimzzUJxJ1KY8LdjqrW6YvGPiRmsHkhOUx74/Ct10x5Yo7bC/Jvqx7cDEW8IMPv/+vwEzA==",
-			"dev": true
-		},
 		"node_modules/astral-regex": {
 			"version": "2.0.0",
 			"resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz",
@@ -1833,9 +1851,9 @@
 			"dev": true
 		},
 		"node_modules/browserslist": {
-			"version": "4.20.3",
-			"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.3.tgz",
-			"integrity": "sha512-NBhymBQl1zM0Y5dQT/O+xiLP9/rzOIQdKM/eMJBAq7yBgaB6krIYLGejrwVYnSHZdqjscB1SPuAjHwxjvN6Wdg==",
+			"version": "4.23.0",
+			"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz",
+			"integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==",
 			"dev": true,
 			"funding": [
 				{
@@ -1845,14 +1863,17 @@
 				{
 					"type": "tidelift",
 					"url": "https://tidelift.com/funding/github/npm/browserslist"
+				},
+				{
+					"type": "github",
+					"url": "https://github.com/sponsors/ai"
 				}
 			],
 			"dependencies": {
-				"caniuse-lite": "^1.0.30001332",
-				"electron-to-chromium": "^1.4.118",
-				"escalade": "^3.1.1",
-				"node-releases": "^2.0.3",
-				"picocolors": "^1.0.0"
+				"caniuse-lite": "^1.0.30001587",
+				"electron-to-chromium": "^1.4.668",
+				"node-releases": "^2.0.14",
+				"update-browserslist-db": "^1.0.13"
 			},
 			"bin": {
 				"browserslist": "cli.js"
@@ -2228,9 +2249,9 @@
 			}
 		},
 		"node_modules/caniuse-lite": {
-			"version": "1.0.30001335",
-			"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001335.tgz",
-			"integrity": "sha512-ddP1Tgm7z2iIxu6QTtbZUv6HJxSaV/PZeSrWFZtbY4JZ69tOeNhBCl3HyRQgeNZKE5AOn1kpV7fhljigy0Ty3w==",
+			"version": "1.0.30001613",
+			"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001613.tgz",
+			"integrity": "sha512-BNjJULJfOONQERivfxte7alLfeLW4QnwHvNW4wEcLEbXfV6VSCYvr+REbf2Sojv8tC1THpjPXBxWgDbq4NtLWg==",
 			"dev": true,
 			"funding": [
 				{
@@ -2240,6 +2261,10 @@
 				{
 					"type": "tidelift",
 					"url": "https://tidelift.com/funding/github/npm/caniuse-lite"
+				},
+				{
+					"type": "github",
+					"url": "https://github.com/sponsors/ai"
 				}
 			]
 		},
@@ -2596,22 +2621,11 @@
 			"dev": true
 		},
 		"node_modules/cookiejar": {
-			"version": "2.1.3",
-			"resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.3.tgz",
-			"integrity": "sha512-JxbCBUdrfr6AQjOXrxoTvAMJO4HBTUIlBzslcJPAz+/KT8yk53fXun51u+RenNYvad/+Vc2DIz5o9UxlCDymFQ==",
+			"version": "2.1.4",
+			"resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.4.tgz",
+			"integrity": "sha512-LDx6oHrK+PhzLKJU9j5S7/Y3jM/mUHvD/DeI1WQmJn652iPC5Y4TBzC9l+5OMOXlyTTA+SmVUPm0HQUwpD5Jqw==",
 			"dev": true
 		},
-		"node_modules/core-js": {
-			"version": "3.22.3",
-			"resolved": "https://registry.npmjs.org/core-js/-/core-js-3.22.3.tgz",
-			"integrity": "sha512-1t+2a/d2lppW1gkLXx3pKPVGbBdxXAkqztvWb1EJ8oF8O2gIGiytzflNiFEehYwVK/t2ryUsGBoOFFvNx95mbg==",
-			"dev": true,
-			"hasInstallScript": true,
-			"funding": {
-				"type": "opencollective",
-				"url": "https://opencollective.com/core-js"
-			}
-		},
 		"node_modules/core-util-is": {
 			"version": "1.0.2",
 			"resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
@@ -3106,10 +3120,16 @@
 			}
 		},
 		"node_modules/doiuse/node_modules/nanoid": {
-			"version": "3.3.3",
-			"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz",
-			"integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==",
+			"version": "3.3.7",
+			"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz",
+			"integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==",
 			"dev": true,
+			"funding": [
+				{
+					"type": "github",
+					"url": "https://github.com/sponsors/ai"
+				}
+			],
 			"bin": {
 				"nanoid": "bin/nanoid.cjs"
 			},
@@ -3118,9 +3138,9 @@
 			}
 		},
 		"node_modules/doiuse/node_modules/postcss": {
-			"version": "8.4.13",
-			"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.13.tgz",
-			"integrity": "sha512-jtL6eTBrza5MPzy8oJLFuUscHDXTV5KcLlqAWHl5q5WYRfnNRGSmOZmOZ1T6Gy7A99mOZfqungmZMpMmCVJ8ZA==",
+			"version": "8.4.38",
+			"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz",
+			"integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==",
 			"dev": true,
 			"funding": [
 				{
@@ -3130,12 +3150,16 @@
 				{
 					"type": "tidelift",
 					"url": "https://tidelift.com/funding/github/npm/postcss"
+				},
+				{
+					"type": "github",
+					"url": "https://github.com/sponsors/ai"
 				}
 			],
 			"dependencies": {
-				"nanoid": "^3.3.3",
+				"nanoid": "^3.3.7",
 				"picocolors": "^1.0.0",
-				"source-map-js": "^1.0.2"
+				"source-map-js": "^1.2.0"
 			},
 			"engines": {
 				"node": "^10 || ^12 || >=14"
@@ -3305,9 +3329,9 @@
 			}
 		},
 		"node_modules/electron-to-chromium": {
-			"version": "1.4.129",
-			"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.129.tgz",
-			"integrity": "sha512-GgtN6bsDtHdtXJtlMYZWGB/uOyjZWjmRDumXTas7dGBaB9zUyCjzHet1DY2KhyHN8R0GLbzZWqm4efeddqqyRQ==",
+			"version": "1.4.750",
+			"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.750.tgz",
+			"integrity": "sha512-9ItEpeu15hW5m8jKdriL+BQrgwDTXEL9pn4SkillWFu73ZNNNQ2BKKLS+ZHv2vC9UkNhosAeyfxOf/5OSeTCPA==",
 			"dev": true
 		},
 		"node_modules/emoji-regex": {
@@ -3487,42 +3511,26 @@
 			}
 		},
 		"node_modules/eslint-plugin-compat": {
-			"version": "4.0.2",
-			"resolved": "https://registry.npmjs.org/eslint-plugin-compat/-/eslint-plugin-compat-4.0.2.tgz",
-			"integrity": "sha512-xqvoO54CLTVaEYGMzhu35Wzwk/As7rCvz/2dqwnFiWi0OJccEtGIn+5qq3zqIu9nboXlpdBN579fZcItC73Ycg==",
+			"version": "4.2.0",
+			"resolved": "https://registry.npmjs.org/eslint-plugin-compat/-/eslint-plugin-compat-4.2.0.tgz",
+			"integrity": "sha512-RDKSYD0maWy5r7zb5cWQS+uSPc26mgOzdORJ8hxILmWM7S/Ncwky7BcAtXVY5iRbKjBdHsWU8Yg7hfoZjtkv7w==",
 			"dev": true,
 			"dependencies": {
-				"@mdn/browser-compat-data": "^4.1.5",
-				"ast-metadata-inferer": "^0.7.0",
-				"browserslist": "^4.16.8",
-				"caniuse-lite": "^1.0.30001304",
-				"core-js": "^3.16.2",
+				"@mdn/browser-compat-data": "^5.3.13",
+				"ast-metadata-inferer": "^0.8.0",
+				"browserslist": "^4.21.10",
+				"caniuse-lite": "^1.0.30001524",
 				"find-up": "^5.0.0",
-				"lodash.memoize": "4.1.2",
-				"semver": "7.3.5"
+				"lodash.memoize": "^4.1.2",
+				"semver": "^7.5.4"
 			},
 			"engines": {
-				"node": ">=9.x"
+				"node": ">=14.x"
 			},
 			"peerDependencies": {
 				"eslint": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0"
 			}
 		},
-		"node_modules/eslint-plugin-compat/node_modules/semver": {
-			"version": "7.3.5",
-			"resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz",
-			"integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==",
-			"dev": true,
-			"dependencies": {
-				"lru-cache": "^6.0.0"
-			},
-			"bin": {
-				"semver": "bin/semver.js"
-			},
-			"engines": {
-				"node": ">=10"
-			}
-		},
 		"node_modules/eslint-plugin-es": {
 			"version": "4.1.0",
 			"resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-4.1.0.tgz",
@@ -3705,9 +3713,9 @@
 			}
 		},
 		"node_modules/eslint-plugin-mediawiki/node_modules/semver": {
-			"version": "6.3.0",
-			"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
-			"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+			"version": "6.3.1",
+			"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+			"integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
 			"dev": true,
 			"bin": {
 				"semver": "bin/semver.js"
@@ -3826,9 +3834,9 @@
 			}
 		},
 		"node_modules/eslint-plugin-node/node_modules/semver": {
-			"version": "6.3.0",
-			"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
-			"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+			"version": "6.3.1",
+			"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+			"integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
 			"dev": true,
 			"bin": {
 				"semver": "bin/semver.js"
@@ -4547,9 +4555,9 @@
 			}
 		},
 		"node_modules/get-func-name": {
-			"version": "2.0.0",
-			"resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz",
-			"integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=",
+			"version": "2.0.2",
+			"resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz",
+			"integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==",
 			"dev": true,
 			"engines": {
 				"node": "*"
@@ -4803,9 +4811,9 @@
 			}
 		},
 		"node_modules/got": {
-			"version": "11.8.3",
-			"resolved": "https://registry.npmjs.org/got/-/got-11.8.3.tgz",
-			"integrity": "sha512-7gtQ5KiPh1RtGS9/Jbv1ofDpBFuq42gyfEib+ejaRBJuj/3tQFeR5+gw57e4ipaU8c/rCjvX6fkQz2lyDlGAOg==",
+			"version": "11.8.6",
+			"resolved": "https://registry.npmjs.org/got/-/got-11.8.6.tgz",
+			"integrity": "sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==",
 			"dev": true,
 			"dependencies": {
 				"@sindresorhus/is": "^4.0.0",
@@ -4880,9 +4888,9 @@
 			}
 		},
 		"node_modules/grunt": {
-			"version": "1.4.1",
-			"resolved": "https://registry.npmjs.org/grunt/-/grunt-1.4.1.tgz",
-			"integrity": "sha512-ZXIYXTsAVrA7sM+jZxjQdrBOAg7DyMUplOMhTaspMRExei+fD0BTwdWXnn0W5SXqhb/Q/nlkzXclSi3IH55PIA==",
+			"version": "1.5.3",
+			"resolved": "https://registry.npmjs.org/grunt/-/grunt-1.5.3.tgz",
+			"integrity": "sha512-mKwmo4X2d8/4c/BmcOETHek675uOqw0RuA/zy12jaspWqvTp4+ZeQF1W+OTpcbncnaBsfbQJ6l0l4j+Sn/GmaQ==",
 			"dev": true,
 			"dependencies": {
 				"dateformat": "~3.0.3",
@@ -4890,7 +4898,7 @@
 				"exit": "~0.1.2",
 				"findup-sync": "~0.3.0",
 				"glob": "~7.1.6",
-				"grunt-cli": "~1.4.2",
+				"grunt-cli": "~1.4.3",
 				"grunt-known-options": "~2.0.0",
 				"grunt-legacy-log": "~3.0.0",
 				"grunt-legacy-util": "~2.0.1",
@@ -5286,9 +5294,9 @@
 			}
 		},
 		"node_modules/http-cache-semantics": {
-			"version": "4.1.0",
-			"resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz",
-			"integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==",
+			"version": "4.1.1",
+			"resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz",
+			"integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==",
 			"dev": true
 		},
 		"node_modules/http-signature": {
@@ -6111,9 +6119,9 @@
 			"dev": true
 		},
 		"node_modules/json5": {
-			"version": "2.2.1",
-			"resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz",
-			"integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==",
+			"version": "2.2.3",
+			"resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz",
+			"integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==",
 			"dev": true,
 			"bin": {
 				"json5": "lib/cli.js"
@@ -7094,9 +7102,9 @@
 			}
 		},
 		"node_modules/node-releases": {
-			"version": "2.0.4",
-			"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.4.tgz",
-			"integrity": "sha512-gbMzqQtTtDz/00jQzZ21PQzdI9PyLYqUSvD0p3naOhX4odFji0ZxYdnVwPTxmSwkmxhcFImpozceidSG+AgoPQ==",
+			"version": "2.0.14",
+			"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz",
+			"integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==",
 			"dev": true
 		},
 		"node_modules/nopt": {
@@ -7124,9 +7132,9 @@
 			}
 		},
 		"node_modules/normalize-package-data/node_modules/semver": {
-			"version": "5.7.1",
-			"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
-			"integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
+			"version": "5.7.2",
+			"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
+			"integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
 			"dev": true,
 			"bin": {
 				"semver": "bin/semver"
@@ -7278,9 +7286,9 @@
 			}
 		},
 		"node_modules/npm-run-all/node_modules/semver": {
-			"version": "5.7.1",
-			"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
-			"integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
+			"version": "5.7.2",
+			"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
+			"integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
 			"dev": true,
 			"bin": {
 				"semver": "bin/semver"
@@ -8412,27 +8420,15 @@
 			}
 		},
 		"node_modules/recursive-readdir": {
-			"version": "2.2.2",
-			"resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.2.tgz",
-			"integrity": "sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg==",
+			"version": "2.2.3",
+			"resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.3.tgz",
+			"integrity": "sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==",
 			"dev": true,
 			"dependencies": {
-				"minimatch": "3.0.4"
+				"minimatch": "^3.0.5"
 			},
 			"engines": {
-				"node": ">=0.10.0"
-			}
-		},
-		"node_modules/recursive-readdir/node_modules/minimatch": {
-			"version": "3.0.4",
-			"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
-			"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
-			"dev": true,
-			"dependencies": {
-				"brace-expansion": "^1.1.7"
-			},
-			"engines": {
-				"node": "*"
+				"node": ">=6.0.0"
 			}
 		},
 		"node_modules/redent": {
@@ -8908,9 +8904,9 @@
 			}
 		},
 		"node_modules/semver": {
-			"version": "7.3.7",
-			"resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz",
-			"integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==",
+			"version": "7.6.0",
+			"resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz",
+			"integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==",
 			"dev": true,
 			"dependencies": {
 				"lru-cache": "^6.0.0"
@@ -9029,9 +9025,9 @@
 			}
 		},
 		"node_modules/source-map-js": {
-			"version": "1.0.2",
-			"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
-			"integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
+			"version": "1.2.0",
+			"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz",
+			"integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==",
 			"dev": true,
 			"engines": {
 				"node": ">=0.10.0"
@@ -9359,10 +9355,16 @@
 			}
 		},
 		"node_modules/stylelint-no-unsupported-browser-features/node_modules/nanoid": {
-			"version": "3.3.3",
-			"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz",
-			"integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==",
+			"version": "3.3.7",
+			"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz",
+			"integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==",
 			"dev": true,
+			"funding": [
+				{
+					"type": "github",
+					"url": "https://github.com/sponsors/ai"
+				}
+			],
 			"bin": {
 				"nanoid": "bin/nanoid.cjs"
 			},
@@ -9371,9 +9373,9 @@
 			}
 		},
 		"node_modules/stylelint-no-unsupported-browser-features/node_modules/postcss": {
-			"version": "8.4.13",
-			"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.13.tgz",
-			"integrity": "sha512-jtL6eTBrza5MPzy8oJLFuUscHDXTV5KcLlqAWHl5q5WYRfnNRGSmOZmOZ1T6Gy7A99mOZfqungmZMpMmCVJ8ZA==",
+			"version": "8.4.38",
+			"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz",
+			"integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==",
 			"dev": true,
 			"funding": [
 				{
@@ -9383,12 +9385,16 @@
 				{
 					"type": "tidelift",
 					"url": "https://tidelift.com/funding/github/npm/postcss"
+				},
+				{
+					"type": "github",
+					"url": "https://github.com/sponsors/ai"
 				}
 			],
 			"dependencies": {
-				"nanoid": "^3.3.3",
+				"nanoid": "^3.3.7",
 				"picocolors": "^1.0.0",
-				"source-map-js": "^1.0.2"
+				"source-map-js": "^1.2.0"
 			},
 			"engines": {
 				"node": "^10 || ^12 || >=14"
@@ -9782,9 +9788,9 @@
 			}
 		},
 		"node_modules/ua-parser-js": {
-			"version": "1.0.2",
-			"resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.2.tgz",
-			"integrity": "sha512-00y/AXhx0/SsnI51fTc0rLRmafiGOM4/O+ny10Ps7f+j/b8p/ZY11ytMgznXkOVo4GQ+KwQG5UQLkLGirsACRg==",
+			"version": "1.0.37",
+			"resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.37.tgz",
+			"integrity": "sha512-bhTyI94tZofjo+Dn8SN6Zv8nBDvyXTymAdM3LDI/0IboIUwTu1rEhW7v2TfiVsoYWgkQ4kOVqnI8APUFbIQIFQ==",
 			"dev": true,
 			"funding": [
 				{
@@ -9794,6 +9800,10 @@
 				{
 					"type": "paypal",
 					"url": "https://paypal.me/faisalman"
+				},
+				{
+					"type": "github",
+					"url": "https://github.com/sponsors/faisalman"
 				}
 			],
 			"engines": {
@@ -9929,6 +9939,36 @@
 				"yarn": "*"
 			}
 		},
+		"node_modules/update-browserslist-db": {
+			"version": "1.0.13",
+			"resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz",
+			"integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==",
+			"dev": true,
+			"funding": [
+				{
+					"type": "opencollective",
+					"url": "https://opencollective.com/browserslist"
+				},
+				{
+					"type": "tidelift",
+					"url": "https://tidelift.com/funding/github/npm/browserslist"
+				},
+				{
+					"type": "github",
+					"url": "https://github.com/sponsors/ai"
+				}
+			],
+			"dependencies": {
+				"escalade": "^3.1.1",
+				"picocolors": "^1.0.0"
+			},
+			"bin": {
+				"update-browserslist-db": "cli.js"
+			},
+			"peerDependencies": {
+				"browserslist": ">= 4.21.0"
+			}
+		},
 		"node_modules/uri-js": {
 			"version": "4.4.1",
 			"resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
@@ -10218,9 +10258,9 @@
 			}
 		},
 		"node_modules/word-wrap": {
-			"version": "1.2.3",
-			"resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
-			"integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
+			"version": "1.2.5",
+			"resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz",
+			"integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==",
 			"dev": true,
 			"engines": {
 				"node": ">=0.10.0"
@@ -10614,12 +10654,13 @@
 			}
 		},
 		"@babel/code-frame": {
-			"version": "7.16.7",
-			"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz",
-			"integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==",
+			"version": "7.24.2",
+			"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz",
+			"integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==",
 			"dev": true,
 			"requires": {
-				"@babel/highlight": "^7.16.7"
+				"@babel/highlight": "^7.24.2",
+				"picocolors": "^1.0.0"
 			}
 		},
 		"@babel/compat-data": {
@@ -10652,22 +10693,36 @@
 			},
 			"dependencies": {
 				"semver": {
-					"version": "6.3.0",
-					"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
-					"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+					"version": "6.3.1",
+					"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+					"integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
 					"dev": true
 				}
 			}
 		},
 		"@babel/generator": {
-			"version": "7.17.10",
-			"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.10.tgz",
-			"integrity": "sha512-46MJZZo9y3o4kmhBVc7zW7i8dtR1oIK/sdO5NcfcZRhTGYi+KKJRtHNgsU6c4VUcJmUNV/LQdebD/9Dlv4K+Tg==",
+			"version": "7.24.4",
+			"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz",
+			"integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==",
 			"dev": true,
 			"requires": {
-				"@babel/types": "^7.17.10",
-				"@jridgewell/gen-mapping": "^0.1.0",
+				"@babel/types": "^7.24.0",
+				"@jridgewell/gen-mapping": "^0.3.5",
+				"@jridgewell/trace-mapping": "^0.3.25",
 				"jsesc": "^2.5.1"
+			},
+			"dependencies": {
+				"@jridgewell/gen-mapping": {
+					"version": "0.3.5",
+					"resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
+					"integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
+					"dev": true,
+					"requires": {
+						"@jridgewell/set-array": "^1.2.1",
+						"@jridgewell/sourcemap-codec": "^1.4.10",
+						"@jridgewell/trace-mapping": "^0.3.24"
+					}
+				}
 			}
 		},
 		"@babel/helper-compilation-targets": {
@@ -10683,39 +10738,36 @@
 			},
 			"dependencies": {
 				"semver": {
-					"version": "6.3.0",
-					"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
-					"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+					"version": "6.3.1",
+					"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+					"integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
 					"dev": true
 				}
 			}
 		},
 		"@babel/helper-environment-visitor": {
-			"version": "7.16.7",
-			"resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz",
-			"integrity": "sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==",
-			"dev": true,
-			"requires": {
-				"@babel/types": "^7.16.7"
-			}
+			"version": "7.22.20",
+			"resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz",
+			"integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==",
+			"dev": true
 		},
 		"@babel/helper-function-name": {
-			"version": "7.17.9",
-			"resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.17.9.tgz",
-			"integrity": "sha512-7cRisGlVtiVqZ0MW0/yFB4atgpGLWEHUVYnb448hZK4x+vih0YO5UoS11XIYtZYqHd0dIPMdUSv8q5K4LdMnIg==",
+			"version": "7.23.0",
+			"resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz",
+			"integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==",
 			"dev": true,
 			"requires": {
-				"@babel/template": "^7.16.7",
-				"@babel/types": "^7.17.0"
+				"@babel/template": "^7.22.15",
+				"@babel/types": "^7.23.0"
 			}
 		},
 		"@babel/helper-hoist-variables": {
-			"version": "7.16.7",
-			"resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz",
-			"integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==",
+			"version": "7.22.5",
+			"resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz",
+			"integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==",
 			"dev": true,
 			"requires": {
-				"@babel/types": "^7.16.7"
+				"@babel/types": "^7.22.5"
 			}
 		},
 		"@babel/helper-module-imports": {
@@ -10753,18 +10805,24 @@
 			}
 		},
 		"@babel/helper-split-export-declaration": {
-			"version": "7.16.7",
-			"resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz",
-			"integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==",
+			"version": "7.22.6",
+			"resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz",
+			"integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==",
 			"dev": true,
 			"requires": {
-				"@babel/types": "^7.16.7"
+				"@babel/types": "^7.22.5"
 			}
 		},
+		"@babel/helper-string-parser": {
+			"version": "7.24.1",
+			"resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz",
+			"integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==",
+			"dev": true
+		},
 		"@babel/helper-validator-identifier": {
-			"version": "7.16.7",
-			"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz",
-			"integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==",
+			"version": "7.22.20",
+			"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz",
+			"integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==",
 			"dev": true
 		},
 		"@babel/helper-validator-option": {
@@ -10785,14 +10843,15 @@
 			}
 		},
 		"@babel/highlight": {
-			"version": "7.17.9",
-			"resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.9.tgz",
-			"integrity": "sha512-J9PfEKCbFIv2X5bjTMiZu6Vf341N05QIY+d6FvVKynkG1S7G0j3I0QoRtWIrXhZ+/Nlb5Q0MzqL7TokEJ5BNHg==",
+			"version": "7.24.2",
+			"resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz",
+			"integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==",
 			"dev": true,
 			"requires": {
-				"@babel/helper-validator-identifier": "^7.16.7",
-				"chalk": "^2.0.0",
-				"js-tokens": "^4.0.0"
+				"@babel/helper-validator-identifier": "^7.22.20",
+				"chalk": "^2.4.2",
+				"js-tokens": "^4.0.0",
+				"picocolors": "^1.0.0"
 			},
 			"dependencies": {
 				"ansi-styles": {
@@ -10827,19 +10886,19 @@
 				"color-name": {
 					"version": "1.1.3",
 					"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
-					"integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
+					"integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==",
 					"dev": true
 				},
 				"escape-string-regexp": {
 					"version": "1.0.5",
 					"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
-					"integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
+					"integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
 					"dev": true
 				},
 				"has-flag": {
 					"version": "3.0.0",
 					"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
-					"integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
+					"integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
 					"dev": true
 				},
 				"supports-color": {
@@ -10854,37 +10913,37 @@
 			}
 		},
 		"@babel/parser": {
-			"version": "7.17.10",
-			"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.10.tgz",
-			"integrity": "sha512-n2Q6i+fnJqzOaq2VkdXxy2TCPCWQZHiCo0XqmrCvDWcZQKRyZzYi4Z0yxlBuN0w+r2ZHmre+Q087DSrw3pbJDQ==",
+			"version": "7.24.4",
+			"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz",
+			"integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==",
 			"dev": true
 		},
 		"@babel/template": {
-			"version": "7.16.7",
-			"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz",
-			"integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==",
+			"version": "7.24.0",
+			"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz",
+			"integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==",
 			"dev": true,
 			"requires": {
-				"@babel/code-frame": "^7.16.7",
-				"@babel/parser": "^7.16.7",
-				"@babel/types": "^7.16.7"
+				"@babel/code-frame": "^7.23.5",
+				"@babel/parser": "^7.24.0",
+				"@babel/types": "^7.24.0"
 			}
 		},
 		"@babel/traverse": {
-			"version": "7.17.10",
-			"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.10.tgz",
-			"integrity": "sha512-VmbrTHQteIdUUQNTb+zE12SHS/xQVIShmBPhlNP12hD5poF2pbITW1Z4172d03HegaQWhLffdkRJYtAzp0AGcw==",
-			"dev": true,
-			"requires": {
-				"@babel/code-frame": "^7.16.7",
-				"@babel/generator": "^7.17.10",
-				"@babel/helper-environment-visitor": "^7.16.7",
-				"@babel/helper-function-name": "^7.17.9",
-				"@babel/helper-hoist-variables": "^7.16.7",
-				"@babel/helper-split-export-declaration": "^7.16.7",
-				"@babel/parser": "^7.17.10",
-				"@babel/types": "^7.17.10",
-				"debug": "^4.1.0",
+			"version": "7.24.1",
+			"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz",
+			"integrity": "sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==",
+			"dev": true,
+			"requires": {
+				"@babel/code-frame": "^7.24.1",
+				"@babel/generator": "^7.24.1",
+				"@babel/helper-environment-visitor": "^7.22.20",
+				"@babel/helper-function-name": "^7.23.0",
+				"@babel/helper-hoist-variables": "^7.22.5",
+				"@babel/helper-split-export-declaration": "^7.22.6",
+				"@babel/parser": "^7.24.1",
+				"@babel/types": "^7.24.0",
+				"debug": "^4.3.1",
 				"globals": "^11.1.0"
 			},
 			"dependencies": {
@@ -10897,12 +10956,13 @@
 			}
 		},
 		"@babel/types": {
-			"version": "7.17.10",
-			"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.17.10.tgz",
-			"integrity": "sha512-9O26jG0mBYfGkUYCYZRnBwbVLd1UZOICEr2Em6InB6jVfsAv1GKgwXHmrSg+WFWDmeKTA6vyTZiN8tCSM5Oo3A==",
+			"version": "7.24.0",
+			"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz",
+			"integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==",
 			"dev": true,
 			"requires": {
-				"@babel/helper-validator-identifier": "^7.16.7",
+				"@babel/helper-string-parser": "^7.23.4",
+				"@babel/helper-validator-identifier": "^7.22.20",
 				"to-fast-properties": "^2.0.0"
 			}
 		},
@@ -10975,37 +11035,37 @@
 			}
 		},
 		"@jridgewell/resolve-uri": {
-			"version": "3.0.6",
-			"resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.6.tgz",
-			"integrity": "sha512-R7xHtBSNm+9SyvpJkdQl+qrM3Hm2fea3Ef197M3mUug+v+yR+Rhfbs7PBtcBUVnIWJ4JcAdjvij+c8hXS9p5aw==",
+			"version": "3.1.2",
+			"resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
+			"integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
 			"dev": true
 		},
 		"@jridgewell/set-array": {
-			"version": "1.1.0",
-			"resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.0.tgz",
-			"integrity": "sha512-SfJxIxNVYLTsKwzB3MoOQ1yxf4w/E6MdkvTgrgAt1bfxjSrLUoHMKrDOykwN14q65waezZIdqDneUIPh4/sKxg==",
+			"version": "1.2.1",
+			"resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz",
+			"integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==",
 			"dev": true
 		},
 		"@jridgewell/sourcemap-codec": {
-			"version": "1.4.11",
-			"resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz",
-			"integrity": "sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg==",
+			"version": "1.4.15",
+			"resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz",
+			"integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==",
 			"dev": true
 		},
 		"@jridgewell/trace-mapping": {
-			"version": "0.3.9",
-			"resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz",
-			"integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==",
+			"version": "0.3.25",
+			"resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
+			"integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
 			"dev": true,
 			"requires": {
-				"@jridgewell/resolve-uri": "^3.0.3",
-				"@jridgewell/sourcemap-codec": "^1.4.10"
+				"@jridgewell/resolve-uri": "^3.1.0",
+				"@jridgewell/sourcemap-codec": "^1.4.14"
 			}
 		},
 		"@mdn/browser-compat-data": {
-			"version": "4.1.18",
-			"resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-4.1.18.tgz",
-			"integrity": "sha512-Ap8MOYbyvEilK1+sNY6yh6LmsHSp7f5zzSGlY4AemhbTcoultcozEXPzx42OO6WjoriOsw88aW8TiqgYdXwsxg==",
+			"version": "5.5.23",
+			"resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-5.5.23.tgz",
+			"integrity": "sha512-nIy38qL3nfNcGOz5J2BJQpBXa7vM9QO1+wbyvqqS89lgNTWE8Q10whLsmE0sTVBooXiEaRc4fVME5IXjCYiHAw==",
 			"dev": true
 		},
 		"@nodelib/fs.scandir": {
@@ -11927,20 +11987,12 @@
 			"dev": true
 		},
 		"ast-metadata-inferer": {
-			"version": "0.7.0",
-			"resolved": "https://registry.npmjs.org/ast-metadata-inferer/-/ast-metadata-inferer-0.7.0.tgz",
-			"integrity": "sha512-OkMLzd8xelb3gmnp6ToFvvsHLtS6CbagTkFQvQ+ZYFe3/AIl9iKikNR9G7pY3GfOR/2Xc222hwBjzI7HLkE76Q==",
+			"version": "0.8.0",
+			"resolved": "https://registry.npmjs.org/ast-metadata-inferer/-/ast-metadata-inferer-0.8.0.tgz",
+			"integrity": "sha512-jOMKcHht9LxYIEQu+RVd22vtgrPaVCtDRQ/16IGmurdzxvYbDd5ynxjnyrzLnieG96eTcAyaoj/wN/4/1FyyeA==",
 			"dev": true,
 			"requires": {
-				"@mdn/browser-compat-data": "^3.3.14"
-			},
-			"dependencies": {
-				"@mdn/browser-compat-data": {
-					"version": "3.3.14",
-					"resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-3.3.14.tgz",
-					"integrity": "sha512-n2RC9d6XatVbWFdHLimzzUJxJ1KY8LdjqrW6YvGPiRmsHkhOUx74/Ct10x5Yo7bC/Jvqx7cDEW8IMPv/+vwEzA==",
-					"dev": true
-				}
+				"@mdn/browser-compat-data": "^5.2.34"
 			}
 		},
 		"astral-regex": {
@@ -12084,16 +12136,15 @@
 			"dev": true
 		},
 		"browserslist": {
-			"version": "4.20.3",
-			"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.3.tgz",
-			"integrity": "sha512-NBhymBQl1zM0Y5dQT/O+xiLP9/rzOIQdKM/eMJBAq7yBgaB6krIYLGejrwVYnSHZdqjscB1SPuAjHwxjvN6Wdg==",
+			"version": "4.23.0",
+			"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz",
+			"integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==",
 			"dev": true,
 			"requires": {
-				"caniuse-lite": "^1.0.30001332",
-				"electron-to-chromium": "^1.4.118",
-				"escalade": "^3.1.1",
-				"node-releases": "^2.0.3",
-				"picocolors": "^1.0.0"
+				"caniuse-lite": "^1.0.30001587",
+				"electron-to-chromium": "^1.4.668",
+				"node-releases": "^2.0.14",
+				"update-browserslist-db": "^1.0.13"
 			}
 		},
 		"buffer": {
@@ -12360,9 +12411,9 @@
 			}
 		},
 		"caniuse-lite": {
-			"version": "1.0.30001335",
-			"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001335.tgz",
-			"integrity": "sha512-ddP1Tgm7z2iIxu6QTtbZUv6HJxSaV/PZeSrWFZtbY4JZ69tOeNhBCl3HyRQgeNZKE5AOn1kpV7fhljigy0Ty3w==",
+			"version": "1.0.30001613",
+			"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001613.tgz",
+			"integrity": "sha512-BNjJULJfOONQERivfxte7alLfeLW4QnwHvNW4wEcLEbXfV6VSCYvr+REbf2Sojv8tC1THpjPXBxWgDbq4NtLWg==",
 			"dev": true
 		},
 		"caseless": {
@@ -12638,15 +12689,9 @@
 			}
 		},
 		"cookiejar": {
-			"version": "2.1.3",
-			"resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.3.tgz",
-			"integrity": "sha512-JxbCBUdrfr6AQjOXrxoTvAMJO4HBTUIlBzslcJPAz+/KT8yk53fXun51u+RenNYvad/+Vc2DIz5o9UxlCDymFQ==",
-			"dev": true
-		},
-		"core-js": {
-			"version": "3.22.3",
-			"resolved": "https://registry.npmjs.org/core-js/-/core-js-3.22.3.tgz",
-			"integrity": "sha512-1t+2a/d2lppW1gkLXx3pKPVGbBdxXAkqztvWb1EJ8oF8O2gIGiytzflNiFEehYwVK/t2ryUsGBoOFFvNx95mbg==",
+			"version": "2.1.4",
+			"resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.4.tgz",
+			"integrity": "sha512-LDx6oHrK+PhzLKJU9j5S7/Y3jM/mUHvD/DeI1WQmJn652iPC5Y4TBzC9l+5OMOXlyTTA+SmVUPm0HQUwpD5Jqw==",
 			"dev": true
 		},
 		"core-util-is": {
@@ -13041,20 +13086,20 @@
 			},
 			"dependencies": {
 				"nanoid": {
-					"version": "3.3.3",
-					"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz",
-					"integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==",
+					"version": "3.3.7",
+					"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz",
+					"integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==",
 					"dev": true
 				},
 				"postcss": {
-					"version": "8.4.13",
-					"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.13.tgz",
-					"integrity": "sha512-jtL6eTBrza5MPzy8oJLFuUscHDXTV5KcLlqAWHl5q5WYRfnNRGSmOZmOZ1T6Gy7A99mOZfqungmZMpMmCVJ8ZA==",
+					"version": "8.4.38",
+					"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz",
+					"integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==",
 					"dev": true,
 					"requires": {
-						"nanoid": "^3.3.3",
+						"nanoid": "^3.3.7",
 						"picocolors": "^1.0.0",
-						"source-map-js": "^1.0.2"
+						"source-map-js": "^1.2.0"
 					}
 				},
 				"source-map": {
@@ -13204,9 +13249,9 @@
 			}
 		},
 		"electron-to-chromium": {
-			"version": "1.4.129",
-			"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.129.tgz",
-			"integrity": "sha512-GgtN6bsDtHdtXJtlMYZWGB/uOyjZWjmRDumXTas7dGBaB9zUyCjzHet1DY2KhyHN8R0GLbzZWqm4efeddqqyRQ==",
+			"version": "1.4.750",
+			"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.750.tgz",
+			"integrity": "sha512-9ItEpeu15hW5m8jKdriL+BQrgwDTXEL9pn4SkillWFu73ZNNNQ2BKKLS+ZHv2vC9UkNhosAeyfxOf/5OSeTCPA==",
 			"dev": true
 		},
 		"emoji-regex": {
@@ -13367,30 +13412,18 @@
 			}
 		},
 		"eslint-plugin-compat": {
-			"version": "4.0.2",
-			"resolved": "https://registry.npmjs.org/eslint-plugin-compat/-/eslint-plugin-compat-4.0.2.tgz",
-			"integrity": "sha512-xqvoO54CLTVaEYGMzhu35Wzwk/As7rCvz/2dqwnFiWi0OJccEtGIn+5qq3zqIu9nboXlpdBN579fZcItC73Ycg==",
+			"version": "4.2.0",
+			"resolved": "https://registry.npmjs.org/eslint-plugin-compat/-/eslint-plugin-compat-4.2.0.tgz",
+			"integrity": "sha512-RDKSYD0maWy5r7zb5cWQS+uSPc26mgOzdORJ8hxILmWM7S/Ncwky7BcAtXVY5iRbKjBdHsWU8Yg7hfoZjtkv7w==",
 			"dev": true,
 			"requires": {
-				"@mdn/browser-compat-data": "^4.1.5",
-				"ast-metadata-inferer": "^0.7.0",
-				"browserslist": "^4.16.8",
-				"caniuse-lite": "^1.0.30001304",
-				"core-js": "^3.16.2",
+				"@mdn/browser-compat-data": "^5.3.13",
+				"ast-metadata-inferer": "^0.8.0",
+				"browserslist": "^4.21.10",
+				"caniuse-lite": "^1.0.30001524",
 				"find-up": "^5.0.0",
-				"lodash.memoize": "4.1.2",
-				"semver": "7.3.5"
-			},
-			"dependencies": {
-				"semver": {
-					"version": "7.3.5",
-					"resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz",
-					"integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==",
-					"dev": true,
-					"requires": {
-						"lru-cache": "^6.0.0"
-					}
-				}
+				"lodash.memoize": "^4.1.2",
+				"semver": "^7.5.4"
 			}
 		},
 		"eslint-plugin-es": {
@@ -13517,9 +13550,9 @@
 					"dev": true
 				},
 				"semver": {
-					"version": "6.3.0",
-					"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
-					"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+					"version": "6.3.1",
+					"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+					"integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
 					"dev": true
 				},
 				"vue-eslint-parser": {
@@ -13596,9 +13629,9 @@
 					"dev": true
 				},
 				"semver": {
-					"version": "6.3.0",
-					"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
-					"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+					"version": "6.3.1",
+					"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+					"integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
 					"dev": true
 				}
 			}
@@ -14136,9 +14169,9 @@
 			"dev": true
 		},
 		"get-func-name": {
-			"version": "2.0.0",
-			"resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz",
-			"integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=",
+			"version": "2.0.2",
+			"resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz",
+			"integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==",
 			"dev": true
 		},
 		"get-intrinsic": {
@@ -14321,9 +14354,9 @@
 			}
 		},
 		"got": {
-			"version": "11.8.3",
-			"resolved": "https://registry.npmjs.org/got/-/got-11.8.3.tgz",
-			"integrity": "sha512-7gtQ5KiPh1RtGS9/Jbv1ofDpBFuq42gyfEib+ejaRBJuj/3tQFeR5+gw57e4ipaU8c/rCjvX6fkQz2lyDlGAOg==",
+			"version": "11.8.6",
+			"resolved": "https://registry.npmjs.org/got/-/got-11.8.6.tgz",
+			"integrity": "sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==",
 			"dev": true,
 			"requires": {
 				"@sindresorhus/is": "^4.0.0",
@@ -14382,9 +14415,9 @@
 			"dev": true
 		},
 		"grunt": {
-			"version": "1.4.1",
-			"resolved": "https://registry.npmjs.org/grunt/-/grunt-1.4.1.tgz",
-			"integrity": "sha512-ZXIYXTsAVrA7sM+jZxjQdrBOAg7DyMUplOMhTaspMRExei+fD0BTwdWXnn0W5SXqhb/Q/nlkzXclSi3IH55PIA==",
+			"version": "1.5.3",
+			"resolved": "https://registry.npmjs.org/grunt/-/grunt-1.5.3.tgz",
+			"integrity": "sha512-mKwmo4X2d8/4c/BmcOETHek675uOqw0RuA/zy12jaspWqvTp4+ZeQF1W+OTpcbncnaBsfbQJ6l0l4j+Sn/GmaQ==",
 			"dev": true,
 			"requires": {
 				"dateformat": "~3.0.3",
@@ -14392,7 +14425,7 @@
 				"exit": "~0.1.2",
 				"findup-sync": "~0.3.0",
 				"glob": "~7.1.6",
-				"grunt-cli": "~1.4.2",
+				"grunt-cli": "~1.4.3",
 				"grunt-known-options": "~2.0.0",
 				"grunt-legacy-log": "~3.0.0",
 				"grunt-legacy-util": "~2.0.1",
@@ -14679,9 +14712,9 @@
 			}
 		},
 		"http-cache-semantics": {
-			"version": "4.1.0",
-			"resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz",
-			"integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==",
+			"version": "4.1.1",
+			"resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz",
+			"integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==",
 			"dev": true
 		},
 		"http-signature": {
@@ -15267,9 +15300,9 @@
 			"dev": true
 		},
 		"json5": {
-			"version": "2.2.1",
-			"resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz",
-			"integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==",
+			"version": "2.2.3",
+			"resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz",
+			"integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==",
 			"dev": true
 		},
 		"jsonfile": {
@@ -16043,9 +16076,9 @@
 			}
 		},
 		"node-releases": {
-			"version": "2.0.4",
-			"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.4.tgz",
-			"integrity": "sha512-gbMzqQtTtDz/00jQzZ21PQzdI9PyLYqUSvD0p3naOhX4odFji0ZxYdnVwPTxmSwkmxhcFImpozceidSG+AgoPQ==",
+			"version": "2.0.14",
+			"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz",
+			"integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==",
 			"dev": true
 		},
 		"nopt": {
@@ -16070,9 +16103,9 @@
 			},
 			"dependencies": {
 				"semver": {
-					"version": "5.7.1",
-					"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
-					"integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
+					"version": "5.7.2",
+					"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
+					"integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
 					"dev": true
 				}
 			}
@@ -16185,9 +16218,9 @@
 					"dev": true
 				},
 				"semver": {
-					"version": "5.7.1",
-					"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
-					"integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
+					"version": "5.7.2",
+					"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
+					"integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
 					"dev": true
 				},
 				"shebang-command": {
@@ -17040,23 +17073,12 @@
 			}
 		},
 		"recursive-readdir": {
-			"version": "2.2.2",
-			"resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.2.tgz",
-			"integrity": "sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg==",
+			"version": "2.2.3",
+			"resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.3.tgz",
+			"integrity": "sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==",
 			"dev": true,
 			"requires": {
-				"minimatch": "3.0.4"
-			},
-			"dependencies": {
-				"minimatch": {
-					"version": "3.0.4",
-					"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
-					"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
-					"dev": true,
-					"requires": {
-						"brace-expansion": "^1.1.7"
-					}
-				}
+				"minimatch": "^3.0.5"
 			}
 		},
 		"redent": {
@@ -17411,9 +17433,9 @@
 			}
 		},
 		"semver": {
-			"version": "7.3.7",
-			"resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz",
-			"integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==",
+			"version": "7.6.0",
+			"resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz",
+			"integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==",
 			"dev": true,
 			"requires": {
 				"lru-cache": "^6.0.0"
@@ -17499,9 +17521,9 @@
 			"dev": true
 		},
 		"source-map-js": {
-			"version": "1.0.2",
-			"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
-			"integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
+			"version": "1.2.0",
+			"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz",
+			"integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==",
 			"dev": true
 		},
 		"spdx-correct": {
@@ -17773,20 +17795,20 @@
 			},
 			"dependencies": {
 				"nanoid": {
-					"version": "3.3.3",
-					"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz",
-					"integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==",
+					"version": "3.3.7",
+					"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz",
+					"integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==",
 					"dev": true
 				},
 				"postcss": {
-					"version": "8.4.13",
-					"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.13.tgz",
-					"integrity": "sha512-jtL6eTBrza5MPzy8oJLFuUscHDXTV5KcLlqAWHl5q5WYRfnNRGSmOZmOZ1T6Gy7A99mOZfqungmZMpMmCVJ8ZA==",
+					"version": "8.4.38",
+					"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz",
+					"integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==",
 					"dev": true,
 					"requires": {
-						"nanoid": "^3.3.3",
+						"nanoid": "^3.3.7",
 						"picocolors": "^1.0.0",
-						"source-map-js": "^1.0.2"
+						"source-map-js": "^1.2.0"
 					}
 				}
 			}
@@ -18083,9 +18105,9 @@
 			"peer": true
 		},
 		"ua-parser-js": {
-			"version": "1.0.2",
-			"resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.2.tgz",
-			"integrity": "sha512-00y/AXhx0/SsnI51fTc0rLRmafiGOM4/O+ny10Ps7f+j/b8p/ZY11ytMgznXkOVo4GQ+KwQG5UQLkLGirsACRg==",
+			"version": "1.0.37",
+			"resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.37.tgz",
+			"integrity": "sha512-bhTyI94tZofjo+Dn8SN6Zv8nBDvyXTymAdM3LDI/0IboIUwTu1rEhW7v2TfiVsoYWgkQ4kOVqnI8APUFbIQIFQ==",
 			"dev": true
 		},
 		"unbox-primitive": {
@@ -18184,6 +18206,16 @@
 			"integrity": "sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w==",
 			"dev": true
 		},
+		"update-browserslist-db": {
+			"version": "1.0.13",
+			"resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz",
+			"integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==",
+			"dev": true,
+			"requires": {
+				"escalade": "^3.1.1",
+				"picocolors": "^1.0.0"
+			}
+		},
 		"uri-js": {
 			"version": "4.4.1",
 			"resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
@@ -18420,9 +18452,9 @@
 			}
 		},
 		"word-wrap": {
-			"version": "1.2.3",
-			"resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
-			"integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
+			"version": "1.2.5",
+			"resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz",
+			"integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==",
 			"dev": true
 		},
 		"workerpool": {
diff --git a/package.json b/package.json
index ce147cc..275bec6 100644
--- a/package.json
+++ b/package.json
@@ -45,7 +45,7 @@
 		"apollo-boost": "^0.4.9",
 		"cross-fetch": "^3.1.5",
 		"eslint-config-wikimedia": "0.22.1",
-		"grunt": "1.4.1",
+		"grunt": "1.5.3",
 		"grunt-banana-checker": "0.9.0",
 		"grunt-eslint": "24.0.0",
 		"grunt-stylelint": "0.16.0",
-- 
2.39.2

$ date
--- stdout ---
Sun Apr 28 15:05:30 UTC 2024

--- end ---
$ git clone file:///srv/git/mediawiki-extensions-Wikibase.git repo --depth=1 -b REL1_39
--- stderr ---
Cloning into '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
--- stderr ---
Submodule 'lib/resources/wikibase-api' (https://gerrit.wikimedia.org/r/wikibase/javascript-api) registered for path 'lib/resources/wikibase-api'
Submodule 'view/lib/wikibase-data-model' (https://phabricator.wikimedia.org/source/wikibase-data-model.git) registered for path 'view/lib/wikibase-data-model'
Submodule 'view/lib/wikibase-data-values' (https://phabricator.wikimedia.org/source/datavalues-javascript.git) registered for path 'view/lib/wikibase-data-values'
Submodule 'view/lib/wikibase-data-values-value-view' (https://gerrit.wikimedia.org/r/data-values/value-view) registered for path 'view/lib/wikibase-data-values-value-view'
Submodule 'view/lib/wikibase-serialization' (https://phabricator.wikimedia.org/source/wikibase-serialization.git) registered for path 'view/lib/wikibase-serialization'
Submodule 'view/lib/wikibase-termbox' (https://gerrit.wikimedia.org/r/wikibase/termbox) registered for path 'view/lib/wikibase-termbox'
Cloning into '/src/repo/lib/resources/wikibase-api'...
Cloning into '/src/repo/view/lib/wikibase-data-model'...
Cloning into '/src/repo/view/lib/wikibase-data-values'...
Cloning into '/src/repo/view/lib/wikibase-data-values-value-view'...
Cloning into '/src/repo/view/lib/wikibase-serialization'...
Cloning into '/src/repo/view/lib/wikibase-termbox'...
--- stdout ---
Submodule path 'lib/resources/wikibase-api': checked out 'b755658e33e23688e47e08fb8451c3c4ae029f8a'
Submodule path 'view/lib/wikibase-data-model': checked out '6b304daeb804591ddc4520925337429ac086515c'
Submodule path 'view/lib/wikibase-data-values': checked out '457733ebe7b0d090a67e2623350be2e4286077fe'
Submodule path 'view/lib/wikibase-data-values-value-view': checked out '48d970db55e38316f3fd00b8bd0851dfd40b4a61'
Submodule path 'view/lib/wikibase-serialization': checked out 'e9b9a736f19e42497bfe45cb6f323781b00b5023'
Submodule path 'view/lib/wikibase-termbox': checked out 'bc469e29fb445e066b50048287244e4dd5402927'

--- end ---
$ grr init
--- stdout ---
Installed commit-msg hook.

--- end ---
$ git show-ref refs/heads/REL1_39
--- stdout ---
a396986fb19bc29c010a468800d05613649ca5f2 refs/heads/REL1_39

--- end ---
$ /usr/bin/npm audit --json
--- stdout ---
{
  "auditReportVersion": 2,
  "vulnerabilities": {
    "@babel/traverse": {
      "name": "@babel/traverse",
      "severity": "critical",
      "isDirect": false,
      "via": [
        {
          "source": 1096886,
          "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.4,
            "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": [],
      "range": "<7.23.2",
      "nodes": [
        "node_modules/@babel/traverse"
      ],
      "fixAvailable": true
    },
    "autoprefixer": {
      "name": "autoprefixer",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "postcss"
      ],
      "effects": [
        "stylelint"
      ],
      "range": "1.0.20131222 - 9.8.8",
      "nodes": [
        "node_modules/autoprefixer"
      ],
      "fixAvailable": {
        "name": "stylelint-config-wikimedia",
        "version": "0.16.1",
        "isSemVerMajor": true
      }
    },
    "cookiejar": {
      "name": "cookiejar",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        {
          "source": 1088659,
          "name": "cookiejar",
          "dependency": "cookiejar",
          "title": "cookiejar Regular Expression Denial of Service via Cookie.parse function",
          "url": "https://github.com/advisories/GHSA-h452-7996-h45h",
          "severity": "moderate",
          "cwe": [
            "CWE-1333"
          ],
          "cvss": {
            "score": 5.3,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"
          },
          "range": "<2.1.4"
        }
      ],
      "effects": [],
      "range": "<2.1.4",
      "nodes": [
        "node_modules/cookiejar"
      ],
      "fixAvailable": true
    },
    "eslint-plugin-compat": {
      "name": "eslint-plugin-compat",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "semver"
      ],
      "effects": [],
      "range": "3.6.0-0 - 4.1.4",
      "nodes": [
        "node_modules/eslint-plugin-compat"
      ],
      "fixAvailable": true
    },
    "get-func-name": {
      "name": "get-func-name",
      "severity": "high",
      "isDirect": false,
      "via": [
        {
          "source": 1094574,
          "name": "get-func-name",
          "dependency": "get-func-name",
          "title": "Chaijs/get-func-name vulnerable to ReDoS",
          "url": "https://github.com/advisories/GHSA-4q6p-r6v2-jvc5",
          "severity": "high",
          "cwe": [
            "CWE-400",
            "CWE-1333"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
          },
          "range": "<2.0.1"
        }
      ],
      "effects": [],
      "range": "<2.0.1",
      "nodes": [
        "node_modules/get-func-name"
      ],
      "fixAvailable": true
    },
    "got": {
      "name": "got",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        {
          "source": 1088948,
          "name": "got",
          "dependency": "got",
          "title": "Got allows a redirect to a UNIX socket",
          "url": "https://github.com/advisories/GHSA-pfrx-2q88-qq97",
          "severity": "moderate",
          "cwe": [],
          "cvss": {
            "score": 5.3,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N"
          },
          "range": "<11.8.5"
        }
      ],
      "effects": [],
      "range": "<11.8.5",
      "nodes": [
        "node_modules/got"
      ],
      "fixAvailable": true
    },
    "grunt": {
      "name": "grunt",
      "severity": "high",
      "isDirect": true,
      "via": [
        {
          "source": 1091643,
          "name": "grunt",
          "dependency": "grunt",
          "title": "Race Condition in Grunt",
          "url": "https://github.com/advisories/GHSA-rm36-94g8-835r",
          "severity": "high",
          "cwe": [
            "CWE-367"
          ],
          "cvss": {
            "score": 7,
            "vectorString": "CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H"
          },
          "range": "<1.5.3"
        },
        {
          "source": 1091644,
          "name": "grunt",
          "dependency": "grunt",
          "title": "Path Traversal in Grunt",
          "url": "https://github.com/advisories/GHSA-j383-35pm-c5h4",
          "severity": "moderate",
          "cwe": [
            "CWE-22"
          ],
          "cvss": {
            "score": 5.5,
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N"
          },
          "range": "<1.5.2"
        }
      ],
      "effects": [],
      "range": "<=1.5.2",
      "nodes": [
        "node_modules/grunt"
      ],
      "fixAvailable": {
        "name": "grunt",
        "version": "1.6.1",
        "isSemVerMajor": false
      }
    },
    "grunt-stylelint": {
      "name": "grunt-stylelint",
      "severity": "moderate",
      "isDirect": true,
      "via": [
        "stylelint"
      ],
      "effects": [],
      "range": "<=0.16.0",
      "nodes": [
        "node_modules/grunt-stylelint"
      ],
      "fixAvailable": {
        "name": "grunt-stylelint",
        "version": "0.19.0",
        "isSemVerMajor": true
      }
    },
    "http-cache-semantics": {
      "name": "http-cache-semantics",
      "severity": "high",
      "isDirect": false,
      "via": [
        {
          "source": 1092316,
          "name": "http-cache-semantics",
          "dependency": "http-cache-semantics",
          "title": "http-cache-semantics vulnerable to Regular Expression Denial of Service",
          "url": "https://github.com/advisories/GHSA-rc47-6667-2j5j",
          "severity": "high",
          "cwe": [
            "CWE-1333"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
          },
          "range": "<4.1.1"
        }
      ],
      "effects": [],
      "range": "<4.1.1",
      "nodes": [
        "node_modules/http-cache-semantics"
      ],
      "fixAvailable": true
    },
    "json5": {
      "name": "json5",
      "severity": "high",
      "isDirect": false,
      "via": [
        {
          "source": 1096544,
          "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": ">=2.0.0 <2.2.2"
        }
      ],
      "effects": [],
      "range": "2.0.0 - 2.2.1",
      "nodes": [
        "node_modules/json5"
      ],
      "fixAvailable": true
    },
    "minimatch": {
      "name": "minimatch",
      "severity": "high",
      "isDirect": false,
      "via": [
        {
          "source": 1096485,
          "name": "minimatch",
          "dependency": "minimatch",
          "title": "minimatch ReDoS vulnerability",
          "url": "https://github.com/advisories/GHSA-f8q6-p94x-37v3",
          "severity": "high",
          "cwe": [
            "CWE-400",
            "CWE-1333"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
          },
          "range": "<3.0.5"
        }
      ],
      "effects": [
        "recursive-readdir"
      ],
      "range": "<3.0.5",
      "nodes": [
        "node_modules/recursive-readdir/node_modules/minimatch"
      ],
      "fixAvailable": true
    },
    "mwbot": {
      "name": "mwbot",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "request",
        "semver"
      ],
      "effects": [
        "wdio-mediawiki"
      ],
      "range": ">=0.1.6",
      "nodes": [
        "node_modules/mwbot"
      ],
      "fixAvailable": {
        "name": "wdio-mediawiki",
        "version": "2.5.0",
        "isSemVerMajor": true
      }
    },
    "postcss": {
      "name": "postcss",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        {
          "source": 1094544,
          "name": "postcss",
          "dependency": "postcss",
          "title": "PostCSS line return parsing error",
          "url": "https://github.com/advisories/GHSA-7fh5-64p2-3v2j",
          "severity": "moderate",
          "cwe": [
            "CWE-74",
            "CWE-144"
          ],
          "cvss": {
            "score": 5.3,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N"
          },
          "range": "<8.4.31"
        }
      ],
      "effects": [
        "autoprefixer",
        "postcss-less",
        "postcss-safe-parser",
        "postcss-sass",
        "postcss-scss",
        "stylelint",
        "sugarss"
      ],
      "range": "<8.4.31",
      "nodes": [
        "node_modules/doiuse/node_modules/postcss",
        "node_modules/postcss",
        "node_modules/stylelint-no-unsupported-browser-features/node_modules/postcss"
      ],
      "fixAvailable": {
        "name": "stylelint-config-wikimedia",
        "version": "0.16.1",
        "isSemVerMajor": true
      }
    },
    "postcss-less": {
      "name": "postcss-less",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "postcss"
      ],
      "effects": [
        "stylelint"
      ],
      "range": "<=3.1.4",
      "nodes": [
        "node_modules/postcss-less"
      ],
      "fixAvailable": {
        "name": "stylelint-config-wikimedia",
        "version": "0.16.1",
        "isSemVerMajor": true
      }
    },
    "postcss-safe-parser": {
      "name": "postcss-safe-parser",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "postcss"
      ],
      "effects": [
        "stylelint"
      ],
      "range": "<=4.0.2",
      "nodes": [
        "node_modules/postcss-safe-parser"
      ],
      "fixAvailable": {
        "name": "stylelint-config-wikimedia",
        "version": "0.16.1",
        "isSemVerMajor": true
      }
    },
    "postcss-sass": {
      "name": "postcss-sass",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "postcss"
      ],
      "effects": [
        "stylelint"
      ],
      "range": "<=0.4.4",
      "nodes": [
        "node_modules/postcss-sass"
      ],
      "fixAvailable": {
        "name": "stylelint-config-wikimedia",
        "version": "0.16.1",
        "isSemVerMajor": true
      }
    },
    "postcss-scss": {
      "name": "postcss-scss",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "postcss"
      ],
      "effects": [
        "stylelint"
      ],
      "range": "<=2.1.1",
      "nodes": [
        "node_modules/postcss-scss"
      ],
      "fixAvailable": {
        "name": "stylelint-config-wikimedia",
        "version": "0.16.1",
        "isSemVerMajor": true
      }
    },
    "recursive-readdir": {
      "name": "recursive-readdir",
      "severity": "high",
      "isDirect": false,
      "via": [
        "minimatch"
      ],
      "effects": [],
      "range": "1.2.0 - 2.2.2",
      "nodes": [
        "node_modules/recursive-readdir"
      ],
      "fixAvailable": true
    },
    "request": {
      "name": "request",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        {
          "source": 1096727,
          "name": "request",
          "dependency": "request",
          "title": "Server-Side Request Forgery in Request",
          "url": "https://github.com/advisories/GHSA-p8p7-x288-28g6",
          "severity": "moderate",
          "cwe": [
            "CWE-918"
          ],
          "cvss": {
            "score": 6.1,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N"
          },
          "range": "<=2.88.2"
        },
        "tough-cookie"
      ],
      "effects": [
        "mwbot"
      ],
      "range": "*",
      "nodes": [
        "node_modules/request"
      ],
      "fixAvailable": {
        "name": "wdio-mediawiki",
        "version": "2.5.0",
        "isSemVerMajor": true
      }
    },
    "semver": {
      "name": "semver",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        {
          "source": 1096482,
          "name": "semver",
          "dependency": "semver",
          "title": "semver vulnerable to Regular Expression Denial of Service",
          "url": "https://github.com/advisories/GHSA-c2qf-rxjj-qqgw",
          "severity": "moderate",
          "cwe": [
            "CWE-1333"
          ],
          "cvss": {
            "score": 5.3,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"
          },
          "range": ">=7.0.0 <7.5.2"
        },
        {
          "source": 1096483,
          "name": "semver",
          "dependency": "semver",
          "title": "semver vulnerable to Regular Expression Denial of Service",
          "url": "https://github.com/advisories/GHSA-c2qf-rxjj-qqgw",
          "severity": "moderate",
          "cwe": [
            "CWE-1333"
          ],
          "cvss": {
            "score": 5.3,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"
          },
          "range": "<5.7.2"
        },
        {
          "source": 1096484,
          "name": "semver",
          "dependency": "semver",
          "title": "semver vulnerable to Regular Expression Denial of Service",
          "url": "https://github.com/advisories/GHSA-c2qf-rxjj-qqgw",
          "severity": "moderate",
          "cwe": [
            "CWE-1333"
          ],
          "cvss": {
            "score": 5.3,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"
          },
          "range": ">=6.0.0 <6.3.1"
        }
      ],
      "effects": [
        "eslint-plugin-compat",
        "mwbot"
      ],
      "range": "<=5.7.1 || 6.0.0 - 6.3.0 || 7.0.0 - 7.5.1",
      "nodes": [
        "node_modules/@babel/core/node_modules/semver",
        "node_modules/@babel/helper-compilation-targets/node_modules/semver",
        "node_modules/eslint-plugin-compat/node_modules/semver",
        "node_modules/eslint-plugin-mediawiki/node_modules/semver",
        "node_modules/eslint-plugin-node/node_modules/semver",
        "node_modules/mwbot/node_modules/semver",
        "node_modules/normalize-package-data/node_modules/semver",
        "node_modules/npm-run-all/node_modules/semver",
        "node_modules/semver"
      ],
      "fixAvailable": {
        "name": "wdio-mediawiki",
        "version": "2.5.0",
        "isSemVerMajor": true
      }
    },
    "stylelint": {
      "name": "stylelint",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "autoprefixer",
        "postcss",
        "postcss-less",
        "postcss-safe-parser",
        "postcss-sass",
        "postcss-scss",
        "sugarss"
      ],
      "effects": [
        "grunt-stylelint",
        "stylelint-config-wikimedia"
      ],
      "range": "0.1.0 - 13.13.1",
      "nodes": [
        "node_modules/stylelint"
      ],
      "fixAvailable": {
        "name": "stylelint-config-wikimedia",
        "version": "0.16.1",
        "isSemVerMajor": true
      }
    },
    "stylelint-config-wikimedia": {
      "name": "stylelint-config-wikimedia",
      "severity": "moderate",
      "isDirect": true,
      "via": [
        "stylelint"
      ],
      "effects": [],
      "range": "<=0.11.1",
      "nodes": [
        "node_modules/stylelint-config-wikimedia"
      ],
      "fixAvailable": {
        "name": "stylelint-config-wikimedia",
        "version": "0.16.1",
        "isSemVerMajor": true
      }
    },
    "sugarss": {
      "name": "sugarss",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "postcss"
      ],
      "effects": [],
      "range": "<=2.0.0",
      "nodes": [
        "node_modules/sugarss"
      ],
      "fixAvailable": true
    },
    "tough-cookie": {
      "name": "tough-cookie",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        {
          "source": 1096643,
          "name": "tough-cookie",
          "dependency": "tough-cookie",
          "title": "tough-cookie Prototype Pollution vulnerability",
          "url": "https://github.com/advisories/GHSA-72xf-g2v4-qvf3",
          "severity": "moderate",
          "cwe": [
            "CWE-1321"
          ],
          "cvss": {
            "score": 6.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N"
          },
          "range": "<4.1.3"
        }
      ],
      "effects": [
        "request"
      ],
      "range": "<4.1.3",
      "nodes": [
        "node_modules/tough-cookie"
      ],
      "fixAvailable": {
        "name": "wdio-mediawiki",
        "version": "2.5.0",
        "isSemVerMajor": true
      }
    },
    "ua-parser-js": {
      "name": "ua-parser-js",
      "severity": "high",
      "isDirect": false,
      "via": [
        {
          "source": 1092302,
          "name": "ua-parser-js",
          "dependency": "ua-parser-js",
          "title": "ReDoS Vulnerability in ua-parser-js version",
          "url": "https://github.com/advisories/GHSA-fhg7-m89q-25r3",
          "severity": "high",
          "cwe": [
            "CWE-400",
            "CWE-1333"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
          },
          "range": ">=0.8.0 <1.0.33"
        }
      ],
      "effects": [],
      "range": "0.8.1 - 1.0.32",
      "nodes": [
        "node_modules/ua-parser-js"
      ],
      "fixAvailable": true
    },
    "wdio-mediawiki": {
      "name": "wdio-mediawiki",
      "severity": "moderate",
      "isDirect": true,
      "via": [
        "mwbot"
      ],
      "effects": [
        "wdio-wikibase"
      ],
      "range": "1.1.0 - 2.2.0",
      "nodes": [
        "node_modules/wdio-mediawiki"
      ],
      "fixAvailable": {
        "name": "wdio-mediawiki",
        "version": "2.5.0",
        "isSemVerMajor": true
      }
    },
    "wdio-wikibase": {
      "name": "wdio-wikibase",
      "severity": "moderate",
      "isDirect": true,
      "via": [
        "wdio-mediawiki"
      ],
      "effects": [],
      "range": "5.1.0 - 5.2.0",
      "nodes": [
        "node_modules/wdio-wikibase"
      ],
      "fixAvailable": {
        "name": "wdio-wikibase",
        "version": "6.0.1",
        "isSemVerMajor": true
      }
    },
    "word-wrap": {
      "name": "word-wrap",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        {
          "source": 1095091,
          "name": "word-wrap",
          "dependency": "word-wrap",
          "title": "word-wrap vulnerable to Regular Expression Denial of Service",
          "url": "https://github.com/advisories/GHSA-j8xg-fqg3-53r7",
          "severity": "moderate",
          "cwe": [
            "CWE-1333"
          ],
          "cvss": {
            "score": 5.3,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"
          },
          "range": "<1.2.4"
        }
      ],
      "effects": [],
      "range": "<1.2.4",
      "nodes": [
        "node_modules/word-wrap"
      ],
      "fixAvailable": true
    }
  },
  "metadata": {
    "vulnerabilities": {
      "info": 0,
      "low": 0,
      "moderate": 20,
      "high": 7,
      "critical": 1,
      "total": 28
    },
    "dependencies": {
      "prod": 1,
      "dev": 921,
      "optional": 2,
      "peer": 2,
      "peerOptional": 0,
      "total": 921
    }
  }
}

--- 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: 55 installs, 0 updates, 0 removals
  - Locking composer/installers (v1.12.0)
  - Locking composer/pcre (1.0.1)
  - Locking composer/semver (3.4.0)
  - Locking composer/spdx-licenses (1.5.8)
  - Locking composer/xdebug-handler (2.0.5)
  - Locking data-values/common (1.0.0)
  - Locking data-values/data-values (3.0.0)
  - Locking data-values/geo (4.2.3)
  - Locking data-values/interfaces (1.0.0)
  - Locking data-values/number (0.11.1)
  - Locking data-values/serialization (1.2.4)
  - Locking data-values/time (1.0.4)
  - Locking dealerdirect/phpcodesniffer-composer-installer (v0.7.2)
  - Locking diff/diff (3.3.1)
  - Locking felixfbecker/advanced-json-rpc (v3.2.1)
  - Locking mediawiki/mediawiki-codesniffer (v38.0.0)
  - Locking mediawiki/mediawiki-phan-config (0.11.1)
  - Locking mediawiki/minus-x (1.1.1)
  - Locking mediawiki/phan-taint-check-plugin (3.3.2)
  - Locking microsoft/tolerant-php-parser (v0.1.2)
  - Locking monolog/monolog (2.9.3)
  - Locking netresearch/jsonmapper (v4.4.1)
  - Locking onoi/message-reporter (1.4.2)
  - Locking phan/phan (5.2.0)
  - Locking php-parallel-lint/php-console-color (v0.3)
  - Locking php-parallel-lint/php-console-highlighter (v0.5)
  - Locking php-parallel-lint/php-parallel-lint (v1.3.1)
  - Locking phpdocumentor/reflection-common (2.2.0)
  - Locking phpdocumentor/reflection-docblock (5.3.0)
  - Locking phpdocumentor/type-resolver (1.6.2)
  - Locking phpstan/phpdoc-parser (0.4.9)
  - Locking psr/container (2.0.2)
  - Locking psr/http-message (1.1)
  - Locking psr/log (1.1.4)
  - Locking psr/simple-cache (1.0.1)
  - Locking sabre/event (5.1.4)
  - Locking serialization/serialization (4.0.0)
  - Locking slevomat/coding-standard (6.4.1)
  - Locking squizlabs/php_codesniffer (3.6.1)
  - Locking swaggest/json-diff (v3.10.5)
  - Locking symfony/console (v5.4.36)
  - Locking symfony/deprecation-contracts (v3.4.0)
  - Locking symfony/polyfill-ctype (v1.29.0)
  - Locking symfony/polyfill-intl-grapheme (v1.29.0)
  - Locking symfony/polyfill-intl-normalizer (v1.29.0)
  - Locking symfony/polyfill-mbstring (v1.29.0)
  - Locking symfony/polyfill-php73 (v1.29.0)
  - Locking symfony/polyfill-php80 (v1.29.0)
  - Locking symfony/service-contracts (v3.4.2)
  - Locking symfony/string (v6.4.4)
  - Locking tysonandre/var_representation_polyfill (0.1.3)
  - Locking webmozart/assert (1.11.0)
  - Locking wikimedia/at-ease (v2.1.0)
  - Locking wikimedia/purtle (v1.0.8)
  - Locking wikimedia/timestamp (v4.1.1)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 55 installs, 0 updates, 0 removals
  - Downloading data-values/data-values (3.0.0)
  - Downloading data-values/geo (4.2.3)
  - Downloading data-values/common (1.0.0)
  - Downloading data-values/number (0.11.1)
  - Downloading data-values/serialization (1.2.4)
  - Downloading data-values/time (1.0.4)
 0/6 [>---------------------------]   0%
 2/6 [=========>------------------]  33%
 6/6 [============================] 100%
  - Installing composer/installers (v1.12.0): Extracting archive
  - Installing squizlabs/php_codesniffer (3.6.1): Extracting archive
  - Installing dealerdirect/phpcodesniffer-composer-installer (v0.7.2): Extracting archive
  - Installing composer/pcre (1.0.1): Extracting archive
  - Installing data-values/interfaces (1.0.0): Extracting archive
  - Installing data-values/data-values (3.0.0): Extracting archive
  - Installing data-values/geo (4.2.3): Extracting archive
  - Installing data-values/common (1.0.0): Extracting archive
  - Installing data-values/number (0.11.1): Extracting archive
  - Installing serialization/serialization (4.0.0): Extracting archive
  - Installing data-values/serialization (1.2.4): Extracting archive
  - Installing data-values/time (1.0.4): Extracting archive
  - Installing diff/diff (3.3.1): Extracting archive
  - Installing symfony/polyfill-mbstring (v1.29.0): Extracting archive
  - Installing composer/spdx-licenses (1.5.8): Extracting archive
  - Installing composer/semver (3.4.0): Extracting archive
  - Installing mediawiki/mediawiki-codesniffer (v38.0.0): Extracting archive
  - Installing tysonandre/var_representation_polyfill (0.1.3): Extracting archive
  - Installing symfony/polyfill-php80 (v1.29.0): Extracting archive
  - Installing symfony/polyfill-intl-normalizer (v1.29.0): Extracting archive
  - Installing symfony/polyfill-intl-grapheme (v1.29.0): Extracting archive
  - Installing symfony/polyfill-ctype (v1.29.0): Extracting archive
  - Installing symfony/string (v6.4.4): Extracting archive
  - Installing psr/container (2.0.2): Extracting archive
  - Installing symfony/service-contracts (v3.4.2): Extracting archive
  - Installing symfony/polyfill-php73 (v1.29.0): Extracting archive
  - Installing symfony/deprecation-contracts (v3.4.0): Extracting archive
  - Installing symfony/console (v5.4.36): Extracting archive
  - Installing sabre/event (5.1.4): Extracting archive
  - Installing netresearch/jsonmapper (v4.4.1): Extracting archive
  - Installing microsoft/tolerant-php-parser (v0.1.2): Extracting archive
  - Installing webmozart/assert (1.11.0): Extracting archive
  - Installing phpdocumentor/reflection-common (2.2.0): Extracting archive
  - Installing phpdocumentor/type-resolver (1.6.2): Extracting archive
  - Installing phpdocumentor/reflection-docblock (5.3.0): Extracting archive
  - Installing felixfbecker/advanced-json-rpc (v3.2.1): Extracting archive
  - Installing psr/log (1.1.4): Extracting archive
  - Installing composer/xdebug-handler (2.0.5): Extracting archive
  - Installing phan/phan (5.2.0): Extracting archive
  - Installing mediawiki/phan-taint-check-plugin (3.3.2): Extracting archive
  - Installing mediawiki/mediawiki-phan-config (0.11.1): Extracting archive
  - Installing mediawiki/minus-x (1.1.1): Extracting archive
  - Installing monolog/monolog (2.9.3): Extracting archive
  - Installing onoi/message-reporter (1.4.2): Extracting archive
  - Installing php-parallel-lint/php-console-color (v0.3): Extracting archive
  - Installing php-parallel-lint/php-console-highlighter (v0.5): Extracting archive
  - Installing php-parallel-lint/php-parallel-lint (v1.3.1): Extracting archive
  - Installing psr/http-message (1.1): Extracting archive
  - Installing psr/simple-cache (1.0.1): Extracting archive
  - Installing phpstan/phpdoc-parser (0.4.9): Extracting archive
  - Installing slevomat/coding-standard (6.4.1): Extracting archive
  - Installing swaggest/json-diff (v3.10.5): Extracting archive
  - Installing wikimedia/at-ease (v2.1.0): Extracting archive
  - Installing wikimedia/purtle (v1.0.8): Extracting archive
  - Installing wikimedia/timestamp (v4.1.1): Extracting archive
  0/52 [>---------------------------]   0%
 20/52 [==========>-----------------]  38%
 36/52 [===================>--------]  69%
 49/52 [==========================>-]  94%
 52/52 [============================] 100%
13 package suggestions were added by new dependencies, use `composer suggest` to see details.
Generating autoload files
21 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 ../../../repo,../../mediawiki/mediawiki-codesniffer,../../slevomat/coding-standard

--- end ---
Upgrading n:grunt from 1.4.1 -> 1.5.3
$ /usr/bin/npm install
--- stderr ---
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@es-joy/jsdoccomment@0.20.1',
npm WARN EBADENGINE   required: { node: '^12 || ^14 || ^16 || ^17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'eslint-plugin-jsdoc@37.9.7',
npm WARN EBADENGINE   required: { node: '^12 || ^14 || ^16 || ^17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN deprecated @stylelint/postcss-markdown@0.36.2: Use the original unforked package instead: postcss-markdown
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated formidable@1.2.6: Please upgrade to latest, formidable@v2 or formidable@v3! Check these notes: https://bit.ly/2ZEqIau
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated superagent@6.1.0: Please upgrade to v7.0.2+ of superagent.  We have fixed numerous issues with streams, form-data, attach(), filesystem errors not bubbling up (ENOENT on attach()), and all tests are now passing.  See the releases tab for more information at <https://github.com/visionmedia/superagent/releases>.
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@es-joy/jsdoccomment@0.20.1',
npm WARN EBADENGINE   required: { node: '^12 || ^14 || ^16 || ^17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'eslint-plugin-jsdoc@37.9.7',
npm WARN EBADENGINE   required: { node: '^12 || ^14 || ^16 || ^17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'eslint-plugin-jsdoc@38.0.6',
npm WARN EBADENGINE   required: { node: '^12 || ^14 || ^16 || ^17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@es-joy/jsdoccomment@0.22.1',
npm WARN EBADENGINE   required: { node: '^12 || ^14 || ^16 || ^17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@achrinza/node-ipc@9.2.2',
npm WARN EBADENGINE   required: { node: '8 || 10 || 12 || 14 || 16 || 17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@es-joy/jsdoccomment@0.23.6',
npm WARN EBADENGINE   required: { node: '^12 || ^14 || ^16 || ^17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'eslint-plugin-jsdoc@39.2.2',
npm WARN EBADENGINE   required: { node: '^14 || ^16 || ^17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN ERESOLVE overriding peer dependency
npm WARN While resolving: cache-loader@4.1.0
npm WARN Found: webpack@5.66.0
npm WARN node_modules/webpack
npm WARN   peer webpack@"^4.0.0 || ^5.0.0" from @soda/friendly-errors-webpack-plugin@1.8.1
npm WARN   node_modules/@soda/friendly-errors-webpack-plugin
npm WARN     @soda/friendly-errors-webpack-plugin@"^1.8.0" from @vue/cli-service@5.0.0-rc.2
npm WARN     node_modules/@vue/cli-service
npm WARN   50 more (@storybook/addon-docs, @storybook/builder-webpack5, ...)
npm WARN 
npm WARN Could not resolve dependency:
npm WARN peer webpack@"^4.0.0" from cache-loader@4.1.0
npm WARN node_modules/cache-loader
npm WARN   cache-loader@"^4.1.0" from @vue/cli-plugin-typescript@5.0.0-rc.2
npm WARN   node_modules/@vue/cli-plugin-typescript
npm WARN   1 more (@vue/cli-service)
npm WARN 
npm WARN Conflicting peer dependency: webpack@4.47.0
npm WARN node_modules/webpack
npm WARN   peer webpack@"^4.0.0" from cache-loader@4.1.0
npm WARN   node_modules/cache-loader
npm WARN     cache-loader@"^4.1.0" from @vue/cli-plugin-typescript@5.0.0-rc.2
npm WARN     node_modules/@vue/cli-plugin-typescript
npm WARN     1 more (@vue/cli-service)
npm WARN deprecated formidable@1.2.6: Please upgrade to latest, formidable@v2 or formidable@v3! Check these notes: https://bit.ly/2ZEqIau
npm WARN deprecated querystring@0.2.0: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
npm WARN deprecated stylelint-processor-html@1.0.0: Please use stylelint-processor-arbitrary-tags https://github.com/mapbox/stylelint-processor-arbitrary-tags 
npm WARN deprecated source-map-url@0.4.1: See https://github.com/lydell/source-map-url#deprecated
npm WARN deprecated stable@0.1.8: Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility
npm WARN deprecated @babel/plugin-proposal-class-properties@7.18.6: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-properties instead.
npm WARN deprecated figgy-pudding@3.5.2: This module is no longer supported.
npm WARN deprecated @stylelint/postcss-markdown@0.36.2: Use the original unforked package instead: postcss-markdown
npm WARN deprecated @hapi/topo@3.1.6: This version has been deprecated and is no longer supported or maintained
npm WARN deprecated @hapi/bourne@1.3.2: This version has been deprecated and is no longer supported or maintained
npm WARN deprecated urix@0.1.0: Please see https://github.com/lydell/urix#deprecated
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated abab@2.0.6: Use your platform's native atob() and btoa() methods instead
npm WARN deprecated resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated
npm WARN deprecated consolidate@0.15.1: Please upgrade to consolidate v1.0.0+ as it has been modernized with several long-awaited fixes implemented. Maintenance is supported by Forward Email at https://forwardemail.net ; follow/watch https://github.com/ladjs/consolidate for updates and release changelog
npm WARN deprecated wikimedia-ui-base@0.15.0: Package no longer supported. Please use @wikimedia/codex-design-tokens instead.
npm WARN deprecated @types/webpack-dev-server@4.7.2: This is a stub types definition. webpack-dev-server provides its own type definitions, so you do not need this installed.
npm WARN deprecated domexception@2.0.1: Use your platform's native DOMException instead
npm WARN deprecated source-map-resolve@0.5.3: See https://github.com/lydell/source-map-resolve#deprecated
npm WARN deprecated w3c-hr-time@1.0.2: Use your platform's native performance.now() and performance.timeOrigin.
npm WARN deprecated sourcemap-codec@1.4.8: Please use @jridgewell/sourcemap-codec instead
npm WARN deprecated stylelint-processor-html@1.0.0: Please use stylelint-processor-arbitrary-tags https://github.com/mapbox/stylelint-processor-arbitrary-tags 
npm WARN deprecated superagent@6.1.0: Please upgrade to v7.0.2+ of superagent.  We have fixed numerous issues with streams, form-data, attach(), filesystem errors not bubbling up (ENOENT on attach()), and all tests are now passing.  See the releases tab for more information at <https://github.com/visionmedia/superagent/releases>.
npm WARN deprecated chokidar@2.1.8: Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies
npm WARN deprecated source-map-url@0.4.1: See https://github.com/lydell/source-map-url#deprecated
npm WARN deprecated html-webpack-plugin@3.2.0: 3.x is no longer supported
npm WARN deprecated babel-eslint@10.1.0: babel-eslint is now @babel/eslint-parser. This package will no longer receive updates.
npm WARN deprecated @hapi/address@2.1.4: Moved to 'npm install @sideway/address'
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated @stylelint/postcss-markdown@0.36.2: Use the original unforked package instead: postcss-markdown
npm WARN deprecated @stylelint/postcss-css-in-js@0.37.3: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.
npm WARN deprecated urix@0.1.0: Please see https://github.com/lydell/urix#deprecated
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated webpack-chain@6.5.1: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated @hapi/hoek@8.5.1: This version has been deprecated and is no longer supported or maintained
npm WARN deprecated resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated
npm WARN deprecated source-map-resolve@0.5.3: See https://github.com/lydell/source-map-resolve#deprecated
npm WARN deprecated querystring@0.2.1: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
npm WARN deprecated sane@4.1.0: some dependency vulnerabilities fixed, support for node < 10 dropped, and newer ECMAScript syntax/features added
npm WARN deprecated chokidar@2.1.8: Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies.
npm WARN deprecated querystring@0.2.0: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
npm WARN deprecated babel-eslint@10.1.0: babel-eslint is now @babel/eslint-parser. This package will no longer receive updates.
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated intl-messageformat-parser@1.8.1: We've written a new parser that's 6x faster and is backwards compatible. Please use @formatjs/icu-messageformat-parser
npm WARN deprecated uuid@3.3.2: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated @hapi/joi@15.1.1: Switch to 'npm install joi'
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated svgo@1.3.2: This SVGO version is no longer supported. Upgrade to v2.x.x.
npm WARN deprecated popper.js@1.16.1: You can find the new Popper v2 at @popperjs/core, this package is dedicated to the legacy v1
npm WARN deprecated popper.js@1.16.1: You can find the new Popper v2 at @popperjs/core, this package is dedicated to the legacy v1
--- stdout ---

> Wikibase@0.1.0 postinstall
> npm-run-all -p install:*


> Wikibase@0.1.0 install:bridge
> npm --prefix client/data-bridge ci


> Wikibase@0.1.0 install:rest-api
> npm --prefix repo/rest-api ci


> Wikibase@0.1.0 install:tainted-ref
> npm --prefix view/lib/wikibase-tainted-ref ci


added 911 packages, and audited 912 packages in 3m

145 packages are looking for funding
  run `npm fund` for details

22 vulnerabilities (13 moderate, 7 high, 2 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.

> tainted-ref@0.1.0 prepare
> node build/wikimedia-ui-base.js


added 2575 packages, and audited 2576 packages in 3m

241 packages are looking for funding
  run `npm fund` for details

90 vulnerabilities (1 low, 63 moderate, 21 high, 5 critical)

To address issues that do not require attention, run:
  npm audit fix

To address all issues possible (including breaking changes), run:
  npm audit fix --force

Some issues need review, and may require choosing
a different dependency.

Run `npm audit` for details.

> data-bridge@0.1.0 prepare
> node build/wikimedia-ui-base.js


added 3458 packages, and audited 3459 packages in 4m

341 packages are looking for funding
  run `npm fund` for details

97 vulnerabilities (41 moderate, 49 high, 7 critical)

To address issues that do not require attention, run:
  npm audit fix

To address all issues possible (including breaking changes), run:
  npm audit fix --force

Some issues need review, and may require choosing
a different dependency.

Run `npm audit` for details.

added 920 packages, and audited 921 packages in 4m

148 packages are looking for funding
  run `npm fund` for details

27 vulnerabilities (20 moderate, 6 high, 1 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 package-lock.json
--- stdout ---
Checking package-lock.json

--- end ---
$ /usr/bin/npm ci
--- stderr ---
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@es-joy/jsdoccomment@0.20.1',
npm WARN EBADENGINE   required: { node: '^12 || ^14 || ^16 || ^17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'eslint-plugin-jsdoc@37.9.7',
npm WARN EBADENGINE   required: { node: '^12 || ^14 || ^16 || ^17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN deprecated @stylelint/postcss-markdown@0.36.2: Use the original unforked package instead: postcss-markdown
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated formidable@1.2.6: Please upgrade to latest, formidable@v2 or formidable@v3! Check these notes: https://bit.ly/2ZEqIau
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated superagent@6.1.0: Please upgrade to v7.0.2+ of superagent.  We have fixed numerous issues with streams, form-data, attach(), filesystem errors not bubbling up (ENOENT on attach()), and all tests are now passing.  See the releases tab for more information at <https://github.com/visionmedia/superagent/releases>.
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@es-joy/jsdoccomment@0.20.1',
npm WARN EBADENGINE   required: { node: '^12 || ^14 || ^16 || ^17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'eslint-plugin-jsdoc@37.9.7',
npm WARN EBADENGINE   required: { node: '^12 || ^14 || ^16 || ^17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'eslint-plugin-jsdoc@38.0.6',
npm WARN EBADENGINE   required: { node: '^12 || ^14 || ^16 || ^17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@es-joy/jsdoccomment@0.22.1',
npm WARN EBADENGINE   required: { node: '^12 || ^14 || ^16 || ^17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@achrinza/node-ipc@9.2.2',
npm WARN EBADENGINE   required: { node: '8 || 10 || 12 || 14 || 16 || 17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@es-joy/jsdoccomment@0.23.6',
npm WARN EBADENGINE   required: { node: '^12 || ^14 || ^16 || ^17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'eslint-plugin-jsdoc@39.2.2',
npm WARN EBADENGINE   required: { node: '^14 || ^16 || ^17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN ERESOLVE overriding peer dependency
npm WARN While resolving: cache-loader@4.1.0
npm WARN Found: webpack@5.66.0
npm WARN node_modules/webpack
npm WARN   peer webpack@"^4.0.0 || ^5.0.0" from @soda/friendly-errors-webpack-plugin@1.8.1
npm WARN   node_modules/@soda/friendly-errors-webpack-plugin
npm WARN     @soda/friendly-errors-webpack-plugin@"^1.8.0" from @vue/cli-service@5.0.0-rc.2
npm WARN     node_modules/@vue/cli-service
npm WARN   50 more (@storybook/addon-docs, @storybook/builder-webpack5, ...)
npm WARN 
npm WARN Could not resolve dependency:
npm WARN peer webpack@"^4.0.0" from cache-loader@4.1.0
npm WARN node_modules/cache-loader
npm WARN   cache-loader@"^4.1.0" from @vue/cli-plugin-typescript@5.0.0-rc.2
npm WARN   node_modules/@vue/cli-plugin-typescript
npm WARN   1 more (@vue/cli-service)
npm WARN 
npm WARN Conflicting peer dependency: webpack@4.47.0
npm WARN node_modules/webpack
npm WARN   peer webpack@"^4.0.0" from cache-loader@4.1.0
npm WARN   node_modules/cache-loader
npm WARN     cache-loader@"^4.1.0" from @vue/cli-plugin-typescript@5.0.0-rc.2
npm WARN     node_modules/@vue/cli-plugin-typescript
npm WARN     1 more (@vue/cli-service)
npm WARN deprecated formidable@1.2.6: Please upgrade to latest, formidable@v2 or formidable@v3! Check these notes: https://bit.ly/2ZEqIau
npm WARN deprecated querystring@0.2.0: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
npm WARN deprecated superagent@6.1.0: Please upgrade to v7.0.2+ of superagent.  We have fixed numerous issues with streams, form-data, attach(), filesystem errors not bubbling up (ENOENT on attach()), and all tests are now passing.  See the releases tab for more information at <https://github.com/visionmedia/superagent/releases>.
npm WARN deprecated stylelint-processor-html@1.0.0: Please use stylelint-processor-arbitrary-tags https://github.com/mapbox/stylelint-processor-arbitrary-tags 
npm WARN deprecated stable@0.1.8: Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility
npm WARN deprecated source-map-url@0.4.1: See https://github.com/lydell/source-map-url#deprecated
npm WARN deprecated @babel/plugin-proposal-class-properties@7.18.6: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-properties instead.
npm WARN deprecated figgy-pudding@3.5.2: This module is no longer supported.
npm WARN deprecated @stylelint/postcss-markdown@0.36.2: Use the original unforked package instead: postcss-markdown
npm WARN deprecated @hapi/topo@3.1.6: This version has been deprecated and is no longer supported or maintained
npm WARN deprecated @hapi/bourne@1.3.2: This version has been deprecated and is no longer supported or maintained
npm WARN deprecated urix@0.1.0: Please see https://github.com/lydell/urix#deprecated
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated abab@2.0.6: Use your platform's native atob() and btoa() methods instead
npm WARN deprecated resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated
npm WARN deprecated consolidate@0.15.1: Please upgrade to consolidate v1.0.0+ as it has been modernized with several long-awaited fixes implemented. Maintenance is supported by Forward Email at https://forwardemail.net ; follow/watch https://github.com/ladjs/consolidate for updates and release changelog
npm WARN deprecated wikimedia-ui-base@0.15.0: Package no longer supported. Please use @wikimedia/codex-design-tokens instead.
npm WARN deprecated source-map-resolve@0.5.3: See https://github.com/lydell/source-map-resolve#deprecated
npm WARN deprecated domexception@2.0.1: Use your platform's native DOMException instead
npm WARN deprecated w3c-hr-time@1.0.2: Use your platform's native performance.now() and performance.timeOrigin.
npm WARN deprecated sourcemap-codec@1.4.8: Please use @jridgewell/sourcemap-codec instead
npm WARN deprecated chokidar@2.1.8: Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies
npm WARN deprecated html-webpack-plugin@3.2.0: 3.x is no longer supported
npm WARN deprecated babel-eslint@10.1.0: babel-eslint is now @babel/eslint-parser. This package will no longer receive updates.
npm WARN deprecated @hapi/address@2.1.4: Moved to 'npm install @sideway/address'
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated @stylelint/postcss-css-in-js@0.37.3: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.
npm WARN deprecated webpack-chain@6.5.1: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated @hapi/hoek@8.5.1: This version has been deprecated and is no longer supported or maintained
npm WARN deprecated @types/webpack-dev-server@4.7.2: This is a stub types definition. webpack-dev-server provides its own type definitions, so you do not need this installed.
npm WARN deprecated stylelint-processor-html@1.0.0: Please use stylelint-processor-arbitrary-tags https://github.com/mapbox/stylelint-processor-arbitrary-tags 
npm WARN deprecated source-map-url@0.4.1: See https://github.com/lydell/source-map-url#deprecated
npm WARN deprecated @hapi/joi@15.1.1: Switch to 'npm install joi'
npm WARN deprecated @stylelint/postcss-markdown@0.36.2: Use the original unforked package instead: postcss-markdown
npm WARN deprecated urix@0.1.0: Please see https://github.com/lydell/urix#deprecated
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated
npm WARN deprecated svgo@1.3.2: This SVGO version is no longer supported. Upgrade to v2.x.x.
npm WARN deprecated source-map-resolve@0.5.3: See https://github.com/lydell/source-map-resolve#deprecated
npm WARN deprecated querystring@0.2.1: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
npm WARN deprecated sane@4.1.0: some dependency vulnerabilities fixed, support for node < 10 dropped, and newer ECMAScript syntax/features added
npm WARN deprecated chokidar@2.1.8: Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies.
npm WARN deprecated querystring@0.2.0: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
npm WARN deprecated babel-eslint@10.1.0: babel-eslint is now @babel/eslint-parser. This package will no longer receive updates.
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated intl-messageformat-parser@1.8.1: We've written a new parser that's 6x faster and is backwards compatible. Please use @formatjs/icu-messageformat-parser
npm WARN deprecated uuid@3.3.2: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated popper.js@1.16.1: You can find the new Popper v2 at @popperjs/core, this package is dedicated to the legacy v1
npm WARN deprecated popper.js@1.16.1: You can find the new Popper v2 at @popperjs/core, this package is dedicated to the legacy v1
--- stdout ---

> Wikibase@0.1.0 postinstall
> npm-run-all -p install:*


> Wikibase@0.1.0 install:tainted-ref
> npm --prefix view/lib/wikibase-tainted-ref ci


> Wikibase@0.1.0 install:rest-api
> npm --prefix repo/rest-api ci


> Wikibase@0.1.0 install:bridge
> npm --prefix client/data-bridge ci


added 911 packages, and audited 912 packages in 6m

145 packages are looking for funding
  run `npm fund` for details

22 vulnerabilities (13 moderate, 7 high, 2 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.

> tainted-ref@0.1.0 prepare
> node build/wikimedia-ui-base.js


added 2575 packages, and audited 2576 packages in 6m

241 packages are looking for funding
  run `npm fund` for details

90 vulnerabilities (1 low, 63 moderate, 21 high, 5 critical)

To address issues that do not require attention, run:
  npm audit fix

To address all issues possible (including breaking changes), run:
  npm audit fix --force

Some issues need review, and may require choosing
a different dependency.

Run `npm audit` for details.

> data-bridge@0.1.0 prepare
> node build/wikimedia-ui-base.js


added 3458 packages, and audited 3459 packages in 7m

341 packages are looking for funding
  run `npm fund` for details

97 vulnerabilities (41 moderate, 49 high, 7 critical)

To address issues that do not require attention, run:
  npm audit fix

To address all issues possible (including breaking changes), run:
  npm audit fix --force

Some issues need review, and may require choosing
a different dependency.

Run `npm audit` for details.

added 920 packages, and audited 921 packages in 7m

148 packages are looking for funding
  run `npm fund` for details

27 vulnerabilities (20 moderate, 6 high, 1 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/unit/StatementTracker.spec.ts (7.753 s)
PASS tests/unit/MWHookHandler.spec.ts (7.708 s)
PASS tests/unit/store/actions.spec.ts
PASS tests/unit/store/mutations.spec.ts
PASS tests/unit/TaintedPopper.spec.ts (9.046 s)
PASS tests/unit/Popper.spec.ts
PASS tests/unit/store/getters.spec.ts
PASS tests/unit/TaintedIcon.spec.ts
PASS tests/unit/ReferenceListChangeCounter.spec.ts
PASS tests/unit/TaintedChecker.spec.ts
PASS tests/unit/App.spec.ts
PASS tests/unit/store/index.spec.ts

Test Suites: 12 passed, 12 total
Tests:       68 passed, 68 total
Snapshots:   0 total
Time:        19.333 s
Ran all test suites.
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/ErrorPermission.spec.ts:1:29 - error TS2307: Cannot find module '@/presentation/components/ErrorPermission.vue' or its corresponding type declarations.

1 import ErrorPermission from '@/presentation/components/ErrorPermission.vue';
                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ErrorPermission.spec.ts:2:33 - error TS2307: Cannot find module '@/presentation/components/ErrorPermissionInfo.vue' or its corresponding type declarations.

2 import ErrorPermissionInfo from '@/presentation/components/ErrorPermissionInfo.vue';
                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PASS tests/unit/store/getters.spec.ts (8.254 s)
PASS tests/unit/services/createServices.spec.ts
PASS tests/unit/store/actions.spec.ts (9.539 s)
PASS tests/unit/presentation/components/ErrorPermission.spec.ts (10.047 s)
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/AppHeader.spec.ts:3:33 - error TS2307: Cannot find module '@/presentation/components/ProcessDialogHeader.vue' or its corresponding type declarations.

3 import ProcessDialogHeader from '@/presentation/components/ProcessDialogHeader.vue';
                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/AppHeader.spec.ts:4:23 - error TS2307: Cannot find module '@/presentation/components/TermLabel.vue' or its corresponding type declarations.

4 import TermLabel from '@/presentation/components/TermLabel.vue';
                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/AppHeader.spec.ts:6:23 - error TS2307: Cannot find module '@/presentation/components/AppHeader.vue' or its corresponding type declarations.

6 import AppHeader from '@/presentation/components/AppHeader.vue';
                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/AppHeader.spec.ts:11:33 - error TS2307: Cannot find module '@/presentation/components/EventEmittingButton.vue' or its corresponding type declarations.

11 import EventEmittingButton from '@/presentation/components/EventEmittingButton.vue';
                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/AppHeader.spec.ts:85:19 - error TS2339: Property 'props' does not exist on type 'WrapperLike'.

85    expect( button.props( 'message' ) ).toBe( saveMessage );
                     ~~~~~
tests/unit/presentation/components/AppHeader.spec.ts:118:19 - error TS2339: Property 'props' does not exist on type 'WrapperLike'.

118    expect( button.props( 'message' ) ).toBe( publishMessage );
                      ~~~~~
tests/unit/presentation/components/AppHeader.spec.ts:195:19 - error TS2339: Property 'props' does not exist on type 'WrapperLike'.

195    expect( button.props( 'message' ) ).toBe( cancelMessage );
                      ~~~~~
tests/unit/presentation/components/AppHeader.spec.ts:214:10 - error TS2540: Cannot assign to 'getters' because it is a read-only property.

214    store.getters = {
             ~~~~~~~
tests/unit/presentation/components/AppHeader.spec.ts:233:10 - error TS2540: Cannot assign to 'getters' because it is a read-only property.

233    store.getters = {
             ~~~~~~~
tests/unit/presentation/components/AppHeader.spec.ts:256:10 - error TS2540: Cannot assign to 'getters' because it is a read-only property.

256    store.getters = {
             ~~~~~~~
tests/unit/presentation/components/AppHeader.spec.ts:280:23 - error TS2339: Property 'props' does not exist on type 'WrapperLike'.

280    expect( backButton.props( 'message' ) ).toBe( backMessage );
                          ~~~~~
tests/unit/presentation/components/AppHeader.spec.ts:284:10 - error TS2540: Cannot assign to 'getters' because it is a read-only property.

284    store.getters = {
             ~~~~~~~
tests/unit/presentation/components/AppHeader.spec.ts:314:15 - error TS2339: Property 'vm' does not exist on type 'WrapperLike'.

314    saveButton.vm.$emit( 'click' );
                  ~~
tests/unit/presentation/components/AppHeader.spec.ts:329:16 - error TS2339: Property 'vm' does not exist on type 'WrapperLike'.

329    closeButton.vm.$emit( 'click' );
                   ~~
tests/unit/presentation/components/AppHeader.spec.ts:335:10 - error TS2540: Cannot assign to 'getters' because it is a read-only property.

335    store.getters = {
             ~~~~~~~
tests/unit/presentation/components/AppHeader.spec.ts:349:15 - error TS2339: Property 'vm' does not exist on type 'WrapperLike'.

349    backButton.vm.$emit( 'click' );
                  ~~
ts-jest[ts-compiler] (WARN) tests/unit/presentation/App.spec.ts:3:22 - error TS2307: Cannot find module '@/presentation/components/ThankYou.vue' or its corresponding type declarations.

3 import ThankYou from '@/presentation/components/ThankYou.vue';
                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/App.spec.ts:4:34 - error TS2307: Cannot find module '@/presentation/components/WarningAnonymousEdit.vue' or its corresponding type declarations.

4 import WarningAnonymousEdit from '@/presentation/components/WarningAnonymousEdit.vue';
                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/App.spec.ts:12:17 - error TS2307: Cannot find module '@/presentation/App.vue' or its corresponding type declarations.

12 import App from '@/presentation/App.vue';
                   ~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/App.spec.ts:18:24 - error TS2307: Cannot find module '@/presentation/components/DataBridge.vue' or its corresponding type declarations.

18 import DataBridge from '@/presentation/components/DataBridge.vue';
                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/App.spec.ts:19:33 - error TS2307: Cannot find module '@/presentation/components/EventEmittingButton.vue' or its corresponding type declarations.

19 import EventEmittingButton from '@/presentation/components/EventEmittingButton.vue';
                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/App.spec.ts:20:21 - error TS2307: Cannot find module '@/presentation/components/Loading.vue' or its corresponding type declarations.

20 import Loading from '@/presentation/components/Loading.vue';
                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/App.spec.ts:21:26 - error TS2307: Cannot find module '@/presentation/components/ErrorWrapper.vue' or its corresponding type declarations.

21 import ErrorWrapper from '@/presentation/components/ErrorWrapper.vue';
                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/App.spec.ts:22:33 - error TS2307: Cannot find module '@/presentation/components/ProcessDialogHeader.vue' or its corresponding type declarations.

22 import ProcessDialogHeader from '@/presentation/components/ProcessDialogHeader.vue';
                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/App.spec.ts:26:21 - error TS2307: Cannot find module '@/presentation/components/License.vue' or its corresponding type declarations.

26 import License from '@/presentation/components/License.vue';
                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/App.spec.ts:27:23 - error TS2307: Cannot find module '@/presentation/components/AppHeader.vue' or its corresponding type declarations.

27 import AppHeader from '@/presentation/components/AppHeader.vue';
                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PASS tests/unit/data-access/ApiPageEditPermissionErrorsRepository.spec.ts
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/Loading.spec.ts:1:21 - error TS2307: Cannot find module '@/presentation/components/Loading.vue' or its corresponding type declarations.

1 import Loading from '@/presentation/components/Loading.vue';
                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/Loading.spec.ts:3:38 - error TS2307: Cannot find module '@/presentation/components/IndeterminateProgressBar.vue' or its corresponding type declarations.

3 import IndeterminateProgressBar from '@/presentation/components/IndeterminateProgressBar.vue';
                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PASS tests/unit/presentation/components/AppHeader.spec.ts
PASS tests/unit/presentation/components/Loading.spec.ts
PASS tests/unit/data-access/CombiningPermissionsRepository.spec.ts
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/EventEmittingButton.spec.ts:1:33 - error TS2307: Cannot find module '@/presentation/components/EventEmittingButton.vue' or its corresponding type declarations.

1 import EventEmittingButton from '@/presentation/components/EventEmittingButton.vue';
                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ts-jest[ts-compiler] (WARN) tests/unit/store/statements/getters.spec.ts:26:27 - error TS2769: No overload matches this call.
  Overload 1 of 3, '(Getters: Class<Getters<{ Q42: StatementMap; }>>, injection: { $init?: ((_store: Store<any>) => void) | undefined; state?: { Q42?: { [x: string]: ({ id?: string | undefined; ... 5 more ...; type?: "statement" | undefined; } | undefined)[] | undefined; } | undefined; } | undefined; getters?: ... | undefined; }): Getters<...>', gave the following error.
    Argument of type 'typeof StatementGetters' is not assignable to parameter of type 'Class<Getters<{ Q42: StatementMap; }>>'.
      Construct signature return types 'StatementGetters' and 'Getters<{ Q42: StatementMap; }>' are incompatible.
        The types of 'state' are incompatible between these types.
          Property 'Q42' is missing in type 'StatementState' but required in type '{ Q42: StatementMap; }'.
  Overload 2 of 3, '(Mutations: Class<Mutations<{ Q42: StatementMap; }>>, injection: { state?: { Q42?: { [x: string]: ({ id?: string | undefined; mainsnak?: { snaktype?: SnakType | undefined; property?: string | undefined; datatype?: "string" | undefined; datavalue?: { ...; } | undefined; hash?: string | undefined; } | undefined; ... 4 more ...; type?: "statement" | undefined; } | undefined)[] | undefined; } | undefined; } | undefined; }): Mutations<...>', gave the following error.
    Argument of type 'typeof StatementGetters' is not assignable to parameter of type 'Class<Mutations<{ Q42: StatementMap; }>>'.
      Type 'StatementGetters' is not assignable to type 'Mutations<{ Q42: StatementMap; }>'.
        Property 'state' is protected but type 'Getters<S>' is not a class derived from 'Mutations<S>'.
  Overload 3 of 3, '(Actions: Class<Actions<{ Q42: StatementMap; }, BG<{ Q42: StatementMap; }>, BM<{ Q42: StatementMap; }>, StatementGetters>>, injection: { ...; }): Actions<...>', gave the following error.
    Argument of type 'typeof StatementGetters' is not assignable to parameter of type 'Class<Actions<{ Q42: StatementMap; }, BG<{ Q42: StatementMap; }>, BM<{ Q42: StatementMap; }>, StatementGetters>>'.
      Type 'StatementGetters' is missing the following properties from type 'Actions<{ Q42: StatementMap; }, BG<{ Q42: StatementMap; }>, BM<{ Q42: StatementMap; }>, StatementGetters>': commit, dispatch, actions, mutations

26   const getters = inject( StatementGetters, {
                             ~~~~~~~~~~~~~~~~

  tests/unit/store/statements/getters.spec.ts:15:24
     15   const statements = { Q42: {
                               ~~~~~~
     16    P23: [ {
        ~~~~~~~~~~~
    ... 
     21    } ],
        ~~~~~~~
     22   } as StatementMap };
        ~~~~~~~~~~~~~~~~~~~
    'Q42' is declared here.
tests/unit/store/statements/getters.spec.ts:30:19 - error TS2339: Property 'containsEntity' does not exist on type 'Getters<{ Q42: StatementMap; }>'.

30   expect( getters.containsEntity( entityId ) ).toBe( true );
                     ~~~~~~~~~~~~~~
tests/unit/store/statements/getters.spec.ts:32:19 - error TS2339: Property 'containsEntity' does not exist on type 'Getters<{ Q42: StatementMap; }>'.

32   expect( getters.containsEntity( 'Q23' ) ).toBe( false );
                     ~~~~~~~~~~~~~~
[Vue warn]: Invalid prop: custom validator check failed for prop "type". 
  at <EventEmittingButton type="potato" size="L" message="click me"  ... > 
  at <VTUROOT>
PASS tests/unit/presentation/components/EventEmittingButton.spec.ts
PASS tests/unit/store/statements/getters.spec.ts
PASS tests/unit/presentation/App.spec.ts
PASS tests/unit/data-access/ApiWritingRepository.spec.ts
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/ErrorWrapper.spec.ts:3:26 - error TS2307: Cannot find module '@/presentation/components/ErrorWrapper.vue' or its corresponding type declarations.

3 import ErrorWrapper from '@/presentation/components/ErrorWrapper.vue';
                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ErrorWrapper.spec.ts:10:29 - error TS2307: Cannot find module '@/presentation/components/ErrorPermission.vue' or its corresponding type declarations.

10 import ErrorPermission from '@/presentation/components/ErrorPermission.vue';
                               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ErrorWrapper.spec.ts:11:26 - error TS2307: Cannot find module '@/presentation/components/ErrorUnknown.vue' or its corresponding type declarations.

11 import ErrorUnknown from '@/presentation/components/ErrorUnknown.vue';
                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ErrorWrapper.spec.ts:12:38 - error TS2307: Cannot find module '@/presentation/components/ErrorUnsupportedDatatype.vue' or its corresponding type declarations.

12 import ErrorUnsupportedDatatype from '@/presentation/components/ErrorUnsupportedDatatype.vue';
                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ErrorWrapper.spec.ts:13:38 - error TS2307: Cannot find module '@/presentation/components/ErrorDeprecatedStatement.vue' or its corresponding type declarations.

13 import ErrorDeprecatedStatement from '@/presentation/components/ErrorDeprecatedStatement.vue';
                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ErrorWrapper.spec.ts:14:37 - error TS2307: Cannot find module '@/presentation/components/ErrorAmbiguousStatement.vue' or its corresponding type declarations.

14 import ErrorAmbiguousStatement from '@/presentation/components/ErrorAmbiguousStatement.vue';
                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ErrorWrapper.spec.ts:15:38 - error TS2307: Cannot find module '@/presentation/components/ErrorUnsupportedSnakType.vue' or its corresponding type declarations.

15 import ErrorUnsupportedSnakType from '@/presentation/components/ErrorUnsupportedSnakType.vue';
                                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ErrorWrapper.spec.ts:16:25 - error TS2307: Cannot find module '@/presentation/components/ErrorSaving.vue' or its corresponding type declarations.

16 import ErrorSaving from '@/presentation/components/ErrorSaving.vue';
                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ErrorWrapper.spec.ts:17:35 - error TS2307: Cannot find module '@/presentation/components/ErrorSavingAssertUser.vue' or its corresponding type declarations.

17 import ErrorSavingAssertUser from '@/presentation/components/ErrorSavingAssertUser.vue';
                                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ErrorWrapper.spec.ts:18:37 - error TS2307: Cannot find module '@/presentation/components/ErrorSavingEditConflict.vue' or its corresponding type declarations.

18 import ErrorSavingEditConflict from '@/presentation/components/ErrorSavingEditConflict.vue';
                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PASS tests/unit/presentation/components/ErrorWrapper.spec.ts
PASS tests/unit/store/mutations.spec.ts
PASS tests/unit/mediawiki/init.spec.ts
PASS tests/unit/mediawiki/BridgeDomElementsSelector.spec.ts
PASS tests/unit/data-access/ApiCore.spec.ts
PASS tests/unit/data-access/TrimmingWritingRepository.spec.ts
PASS tests/unit/store/entity/actions.spec.ts
PASS tests/unit/data-access/ApiRenderReferencesRepository.spec.ts
PASS tests/unit/data-access/SpecialPageReadingEntityRepository.spec.ts
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/ErrorSavingAssertUser.spec.ts:2:35 - error TS2307: Cannot find module '@/presentation/components/ErrorSavingAssertUser.vue' or its corresponding type declarations.

2 import ErrorSavingAssertUser from '@/presentation/components/ErrorSavingAssertUser.vue';
                                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ErrorSavingAssertUser.spec.ts:64:16 - error TS2339: Property 'vm' does not exist on type 'WrapperLike'.

64   await button.vm.$emit( 'click' );
                  ~~
tests/unit/presentation/components/ErrorSavingAssertUser.spec.ts:92:10 - error TS2339: Property 'vm' does not exist on type 'WrapperLike'.

92   button.vm.$emit( 'click' );
            ~~
tests/unit/presentation/components/ErrorSavingAssertUser.spec.ts:128:18 - error TS2339: Property 'props' does not exist on type 'WrapperLike'.

128   expect( button.props( 'message' ) ).toBe( saveMessage );
                     ~~~~~
tests/unit/presentation/components/ErrorSavingAssertUser.spec.ts:171:18 - error TS2339: Property 'props' does not exist on type 'WrapperLike'.

171   expect( button.props( 'message' ) ).toBe( publishMessage );
                     ~~~~~
PASS tests/unit/data-access/BatchingApi.spec.ts
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/ErrorSaving.spec.ts:7:25 - error TS2307: Cannot find module '@/presentation/components/ErrorSaving.vue' or its corresponding type declarations.

7 import ErrorSaving from '@/presentation/components/ErrorSaving.vue';
                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ErrorSaving.spec.ts:8:33 - error TS2307: Cannot find module '@/presentation/components/EventEmittingButton.vue' or its corresponding type declarations.

8 import EventEmittingButton from '@/presentation/components/EventEmittingButton.vue';
                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ErrorSaving.spec.ts:9:28 - error TS2307: Cannot find module '@/presentation/components/IconMessageBox.vue' or its corresponding type declarations.

9 import IconMessageBox from '@/presentation/components/IconMessageBox.vue';
                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ErrorSaving.spec.ts:10:25 - error TS2307: Cannot find module '@/presentation/components/ReportIssue.vue' or its corresponding type declarations.

10 import ReportIssue from '@/presentation/components/ReportIssue.vue';
                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PASS tests/unit/presentation/components/ErrorSavingAssertUser.spec.ts
PASS tests/unit/presentation/components/ErrorSaving.spec.ts
PASS tests/unit/store/statements/MainSnakPath.spec.ts
PASS tests/unit/mediawiki/Dispatcher.spec.ts
PASS tests/unit/data-access/ApiRepoConfigRepository.spec.ts
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/ErrorUnsupportedSnakType.spec.ts:3:38 - error TS2307: Cannot find module '@/presentation/components/ErrorUnsupportedSnakType.vue' or its corresponding type declarations.

3 import ErrorUnsupportedSnakType from '@/presentation/components/ErrorUnsupportedSnakType.vue';
                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ErrorUnsupportedSnakType.spec.ts:4:28 - error TS2307: Cannot find module '@/presentation/components/IconMessageBox.vue' or its corresponding type declarations.

4 import IconMessageBox from '@/presentation/components/IconMessageBox.vue';
                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ErrorUnsupportedSnakType.spec.ts:5:28 - error TS2307: Cannot find module '@/presentation/components/BailoutActions.vue' or its corresponding type declarations.

5 import BailoutActions from '@/presentation/components/BailoutActions.vue';
                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PASS tests/unit/data-access/ApiEntityLabelRepository.spec.ts
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/StringDataValue.spec.ts:1:27 - error TS2307: Cannot find module '@/presentation/components/PropertyLabel.vue' or its corresponding type declarations.

1 import PropertyLabel from '@/presentation/components/PropertyLabel.vue';
                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/StringDataValue.spec.ts:2:29 - error TS2307: Cannot find module '@/presentation/components/StringDataValue.vue' or its corresponding type declarations.

2 import StringDataValue from '@/presentation/components/StringDataValue.vue';
                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/StringDataValue.spec.ts:3:31 - error TS2307: Cannot find module '@/presentation/components/ResizingTextField.vue' or its corresponding type declarations.

3 import ResizingTextField from '@/presentation/components/ResizingTextField.vue';
                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PASS tests/unit/presentation/components/StringDataValue.spec.ts
PASS tests/unit/presentation/components/ErrorUnsupportedSnakType.spec.ts
PASS tests/unit/change-op/statement-mutation/strategies/UpdateMutationStrategy.spec.ts
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/ErrorUnsupportedDatatype.spec.ts:2:38 - error TS2307: Cannot find module '@/presentation/components/ErrorUnsupportedDatatype.vue' or its corresponding type declarations.

2 import ErrorUnsupportedDatatype from '@/presentation/components/ErrorUnsupportedDatatype.vue';
                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ErrorUnsupportedDatatype.spec.ts:3:28 - error TS2307: Cannot find module '@/presentation/components/IconMessageBox.vue' or its corresponding type declarations.

3 import IconMessageBox from '@/presentation/components/IconMessageBox.vue';
                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ErrorUnsupportedDatatype.spec.ts:4:28 - error TS2307: Cannot find module '@/presentation/components/BailoutActions.vue' or its corresponding type declarations.

4 import BailoutActions from '@/presentation/components/BailoutActions.vue';
                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/EditDecision.spec.ts:2:26 - error TS2307: Cannot find module '@/presentation/components/EditDecision.vue' or its corresponding type declarations.

2 import EditDecision from '@/presentation/components/EditDecision.vue';
                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/EditDecision.spec.ts:3:24 - error TS2307: Cannot find module '@/presentation/components/RadioGroup.vue' or its corresponding type declarations.

3 import RadioGroup from '@/presentation/components/RadioGroup.vue';
                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/EditDecision.spec.ts:4:24 - error TS2307: Cannot find module '@/presentation/components/RadioInput.vue' or its corresponding type declarations.

4 import RadioInput from '@/presentation/components/RadioInput.vue';
                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/EditDecision.spec.ts:90:42 - error TS2341: Property 'setChecked' is private and only accessible within class 'DOMWrapper<NodeType>'.

90   wrapper.find( 'input[value=replace]' ).setChecked( true );
                                            ~~~~~~~~~~
PASS tests/unit/presentation/components/ErrorUnsupportedDatatype.spec.ts
PASS tests/unit/presentation/components/EditDecision.spec.ts
PASS tests/unit/change-op/statement-mutation/strategies/ReplaceMutationStrategy.spec.ts
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/ErrorUnknown.spec.ts:5:26 - error TS2307: Cannot find module '@/presentation/components/ErrorUnknown.vue' or its corresponding type declarations.

5 import ErrorUnknown from '@/presentation/components/ErrorUnknown.vue';
                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ErrorUnknown.spec.ts:6:33 - error TS2307: Cannot find module '@/presentation/components/EventEmittingButton.vue' or its corresponding type declarations.

6 import EventEmittingButton from '@/presentation/components/EventEmittingButton.vue';
                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ErrorUnknown.spec.ts:7:28 - error TS2307: Cannot find module '@/presentation/components/IconMessageBox.vue' or its corresponding type declarations.

7 import IconMessageBox from '@/presentation/components/IconMessageBox.vue';
                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ErrorUnknown.spec.ts:8:25 - error TS2307: Cannot find module '@/presentation/components/ReportIssue.vue' or its corresponding type declarations.

8 import ReportIssue from '@/presentation/components/ReportIssue.vue';
                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ErrorUnknown.spec.ts:61:61 - error TS2339: Property 'vm' does not exist on type 'WrapperLike'.

61   wrapper.findComponent( '.wb-db-error-unknown__relaunch' ).vm.$emit( 'click' );
                                                               ~~
PASS tests/unit/data-access/RepoRouter.spec.ts
PASS tests/unit/presentation/components/ErrorUnknown.spec.ts
ts-jest[ts-compiler] (WARN) src/main.ts:2:21 - error TS2307: Cannot find module '@/presentation/App.vue' or its corresponding type declarations.

2 import RootApp from '@/presentation/App.vue';
                      ~~~~~~~~~~~~~~~~~~~~~~~~
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/ErrorPermissionInfo.spec.ts:1:33 - error TS2307: Cannot find module '@/presentation/components/ErrorPermissionInfo.vue' or its corresponding type declarations.

1 import ErrorPermissionInfo from '@/presentation/components/ErrorPermissionInfo.vue';
                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PASS tests/unit/presentation/components/ErrorPermissionInfo.spec.ts
PASS tests/unit/main.spec.ts
PASS tests/unit/mediawiki/prepareContainer.spec.ts
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/ReportIssue.spec.ts:3:25 - error TS2307: Cannot find module '@/presentation/components/ReportIssue.vue' or its corresponding type declarations.

3 import ReportIssue from '@/presentation/components/ReportIssue.vue';
                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PASS tests/unit/mediawiki/MwInitTracker.spec.ts
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/DataBridge.spec.ts:1:24 - error TS2307: Cannot find module '@/presentation/components/DataBridge.vue' or its corresponding type declarations.

1 import DataBridge from '@/presentation/components/DataBridge.vue';
                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/DataBridge.spec.ts:7:29 - error TS2307: Cannot find module '@/presentation/components/StringDataValue.vue' or its corresponding type declarations.

7 import StringDataValue from '@/presentation/components/StringDataValue.vue';
                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/DataBridge.spec.ts:8:30 - error TS2307: Cannot find module '@/presentation/components/ReferenceSection.vue' or its corresponding type declarations.

8 import ReferenceSection from '@/presentation/components/ReferenceSection.vue';
                               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/DataBridge.spec.ts:9:26 - error TS2307: Cannot find module '@/presentation/components/EditDecision.vue' or its corresponding type declarations.

9 import EditDecision from '@/presentation/components/EditDecision.vue';
                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/DataBridge.spec.ts:19:9 - error TS2540: Cannot assign to 'getters' because it is a read-only property.

19   store.getters = {
           ~~~~~~~
PASS tests/unit/presentation/components/ReportIssue.spec.ts
PASS tests/unit/presentation/components/DataBridge.spec.ts
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/License.spec.ts:3:21 - error TS2307: Cannot find module '@/presentation/components/License.vue' or its corresponding type declarations.

3 import License from '@/presentation/components/License.vue';
                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/License.spec.ts:4:33 - error TS2307: Cannot find module '@/presentation/components/EventEmittingButton.vue' or its corresponding type declarations.

4 import EventEmittingButton from '@/presentation/components/EventEmittingButton.vue';
                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/ReferenceSection.spec.ts:1:30 - error TS2307: Cannot find module '@/presentation/components/ReferenceSection.vue' or its corresponding type declarations.

1 import ReferenceSection from '@/presentation/components/ReferenceSection.vue';
                               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ReferenceSection.spec.ts:29:9 - error TS2540: Cannot assign to 'getters' because it is a read-only property.

29   store.getters = { targetReferences: [] };
           ~~~~~~~
tests/unit/presentation/components/ReferenceSection.spec.ts:62:23 - error TS2339: Property 'at' does not exist on type 'DOMWrapper<Element>[]'.

62    expect( references.at( index ).element.innerHTML ).toBe( referenceHTML );
                         ~~
PASS tests/unit/presentation/components/License.spec.ts
PASS tests/unit/presentation/components/ReferenceSection.spec.ts
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/ErrorDeprecatedStatement.spec.ts:2:38 - error TS2307: Cannot find module '@/presentation/components/ErrorDeprecatedStatement.vue' or its corresponding type declarations.

2 import ErrorDeprecatedStatement from '@/presentation/components/ErrorDeprecatedStatement.vue';
                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ErrorDeprecatedStatement.spec.ts:3:28 - error TS2307: Cannot find module '@/presentation/components/IconMessageBox.vue' or its corresponding type declarations.

3 import IconMessageBox from '@/presentation/components/IconMessageBox.vue';
                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ErrorDeprecatedStatement.spec.ts:4:28 - error TS2307: Cannot find module '@/presentation/components/BailoutActions.vue' or its corresponding type declarations.

4 import BailoutActions from '@/presentation/components/BailoutActions.vue';
                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PASS tests/unit/presentation/components/ErrorDeprecatedStatement.spec.ts
PASS tests/unit/data-access/ApiWbgetentities.spec.ts
PASS tests/unit/data-access/ApiPropertyDataTypeRepository.spec.ts
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/ErrorAmbiguousStatement.spec.ts:2:37 - error TS2307: Cannot find module '@/presentation/components/ErrorAmbiguousStatement.vue' or its corresponding type declarations.

2 import ErrorAmbiguousStatement from '@/presentation/components/ErrorAmbiguousStatement.vue';
                                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ErrorAmbiguousStatement.spec.ts:3:28 - error TS2307: Cannot find module '@/presentation/components/IconMessageBox.vue' or its corresponding type declarations.

3 import IconMessageBox from '@/presentation/components/IconMessageBox.vue';
                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ErrorAmbiguousStatement.spec.ts:4:28 - error TS2307: Cannot find module '@/presentation/components/BailoutActions.vue' or its corresponding type declarations.

4 import BailoutActions from '@/presentation/components/BailoutActions.vue';
                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/ResizingTextField.spec.ts:2:31 - error TS2307: Cannot find module '@/presentation/components/ResizingTextField.vue' or its corresponding type declarations.

2 import ResizingTextField from '@/presentation/components/ResizingTextField.vue';
                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/RadioInput.spec.ts:2:24 - error TS2307: Cannot find module '@/presentation/components/RadioInput.vue' or its corresponding type declarations.

2 import RadioInput from '@/presentation/components/RadioInput.vue';
                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PASS tests/unit/presentation/components/ErrorAmbiguousStatement.spec.ts
PASS tests/unit/presentation/components/RadioInput.spec.ts
PASS tests/unit/presentation/components/ResizingTextField.spec.ts
PASS tests/unit/store/newMockableEntityRevision.spec.ts
PASS tests/unit/presentation/extendVueEnvironment.spec.ts
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/BailoutActions.spec.ts:2:28 - error TS2307: Cannot find module '@/presentation/components/BailoutActions.vue' or its corresponding type declarations.

2 import BailoutActions from '@/presentation/components/BailoutActions.vue';
                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/BailoutActions.spec.ts:3:33 - error TS2307: Cannot find module '@/presentation/components/EventEmittingButton.vue' or its corresponding type declarations.

3 import EventEmittingButton from '@/presentation/components/EventEmittingButton.vue';
                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PASS tests/unit/presentation/components/BailoutActions.spec.ts
PASS tests/unit/data-access/ApiReadingEntityRepository.spec.ts
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/ProcessDialogHeader.spec.ts:1:33 - error TS2307: Cannot find module '@/presentation/components/ProcessDialogHeader.vue' or its corresponding type declarations.

1 import ProcessDialogHeader from '@/presentation/components/ProcessDialogHeader.vue';
                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PASS tests/unit/presentation/components/ProcessDialogHeader.spec.ts
PASS tests/unit/data-access/MwLanguageInfoRepository.spec.ts
PASS tests/unit/data-access/DataBridgeTrackerService.spec.ts
PASS tests/unit/tracking/mutationsTrackerPlugin.spec.ts
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/ThankYou.spec.ts:1:22 - error TS2307: Cannot find module '@/presentation/components/ThankYou.vue' or its corresponding type declarations.

1 import ThankYou from '@/presentation/components/ThankYou.vue';
                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ThankYou.spec.ts:3:33 - error TS2307: Cannot find module '@/presentation/components/EventEmittingButton.vue' or its corresponding type declarations.

3 import EventEmittingButton from '@/presentation/components/EventEmittingButton.vue';
                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PASS tests/unit/presentation/components/ThankYou.spec.ts
PASS tests/unit/data-access/ApiQuery.spec.ts
PASS tests/unit/store/entity/mutations.spec.ts
PASS tests/unit/presentation/plugins/InLanguagePlugin/InLanguagePlugin.spec.ts
ts-jest[ts-compiler] (WARN) tests/unit/presentation/IconMessageBox.spec.ts:1:28 - error TS2307: Cannot find module '@/presentation/components/IconMessageBox.vue' or its corresponding type declarations.

1 import IconMessageBox from '@/presentation/components/IconMessageBox.vue';
                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[Vue warn]: Invalid prop: custom validator check failed for prop "type". 
  at <IconMessageBox type="potato" ref="VTU_COMPONENT" > 
  at <VTUROOT>
PASS tests/unit/presentation/IconMessageBox.spec.ts
PASS tests/unit/store/statements/mutations.spec.ts
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/PropertyLabel.spec.ts:2:27 - error TS2307: Cannot find module '@/presentation/components/PropertyLabel.vue' or its corresponding type declarations.

2 import PropertyLabel from '@/presentation/components/PropertyLabel.vue';
                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/PropertyLabel.spec.ts:3:23 - error TS2307: Cannot find module '@/presentation/components/TermLabel.vue' or its corresponding type declarations.

3 import TermLabel from '@/presentation/components/TermLabel.vue';
                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PASS tests/unit/data-access/MwMessagesRepository.spec.ts
PASS tests/unit/presentation/components/PropertyLabel.spec.ts
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/TermLabel.spec.ts:2:23 - error TS2307: Cannot find module '@/presentation/components/TermLabel.vue' or its corresponding type declarations.

2 import TermLabel from '@/presentation/components/TermLabel.vue';
                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PASS tests/unit/mediawiki/subscribeToEvents.spec.ts
PASS tests/unit/presentation/components/TermLabel.spec.ts
PASS tests/unit/data-access/ApiPurge.spec.ts
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/WarningAnonymousEdit.spec.ts:2:33 - error TS2307: Cannot find module '@/presentation/components/EventEmittingButton.vue' or its corresponding type declarations.

2 import EventEmittingButton from '@/presentation/components/EventEmittingButton.vue';
                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/WarningAnonymousEdit.spec.ts:3:34 - error TS2307: Cannot find module '@/presentation/components/WarningAnonymousEdit.vue' or its corresponding type declarations.

3 import WarningAnonymousEdit from '@/presentation/components/WarningAnonymousEdit.vue';
                                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PASS tests/unit/presentation/components/WarningAnonymousEdit.spec.ts
PASS tests/unit/presentation/plugins/MessagesPlugin/Messages.spec.ts
PASS tests/unit/store/statements/actions.spec.ts
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/PageList.spec.ts:3:22 - error TS2307: Cannot find module '@/presentation/components/PageList.vue' or its corresponding type declarations.

3 import PageList from '@/presentation/components/PageList.vue';
                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PASS tests/unit/presentation/components/PageList.spec.ts
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/UserLink.spec.ts:1:22 - error TS2307: Cannot find module '@/presentation/components/UserLink.vue' or its corresponding type declarations.

1 import UserLink from '@/presentation/components/UserLink.vue';
                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PASS tests/unit/presentation/components/UserLink.spec.ts
PASS tests/unit/services/ServiceContainer.spec.ts
PASS tests/unit/tracking/PrefixingEventTracker.spec.ts
PASS tests/unit/change-op/statement-mutation/statementMutationFactory.spec.ts
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/ErrorSavingEditConflict.spec.ts:2:37 - error TS2307: Cannot find module '@/presentation/components/ErrorSavingEditConflict.vue' or its corresponding type declarations.

2 import ErrorSavingEditConflict from '@/presentation/components/ErrorSavingEditConflict.vue';
                                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tests/unit/presentation/components/ErrorSavingEditConflict.spec.ts:3:33 - error TS2307: Cannot find module '@/presentation/components/EventEmittingButton.vue' or its corresponding type declarations.

3 import EventEmittingButton from '@/presentation/components/EventEmittingButton.vue';
                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PASS tests/unit/presentation/components/ErrorSavingEditConflict.spec.ts
PASS tests/unit/store/index.spec.ts
PASS tests/unit/mediawiki/facades/EventTracker.spec.ts
PASS tests/unit/utils/errorTypeFormatter.spec.ts
PASS tests/unit/presentation/plugins/RepoRouter/RepoRouterPlugin.spec.ts
PASS tests/unit/data-access/ClientRouter.spec.ts
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/RadioGroup.spec.ts:1:24 - error TS2307: Cannot find module '@/presentation/components/RadioGroup.vue' or its corresponding type declarations.

1 import RadioGroup from '@/presentation/components/RadioGroup.vue';
                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PASS tests/unit/presentation/components/RadioGroup.spec.ts
ts-jest[ts-compiler] (WARN) tests/unit/presentation/components/IndeterminateProgressBar.spec.ts:1:38 - error TS2307: Cannot find module '@/presentation/components/IndeterminateProgressBar.vue' or its corresponding type declarations.

1 import IndeterminateProgressBar from '@/presentation/components/IndeterminateProgressBar.vue';
                                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PASS tests/unit/presentation/components/IndeterminateProgressBar.spec.ts
PASS tests/unit/timer.spec.ts
PASS tests/unit/store/clone.spec.ts

Test Suites: 87 passed, 87 total
Tests:       615 passed, 615 total
Snapshots:   12 passed, 12 total
Time:        34.923 s
Ran all test suites.
PASS tests/integration/mediawiki/init.spec.ts (6.21 s)
PASS tests/integration/store/actions.spec.ts (6.564 s)

Test Suites: 2 passed, 2 total
Tests:       16 passed, 16 total
Snapshots:   0 total
Time:        8.584 s
Ran all test suites.
ts-jest[ts-compiler] (WARN) src/main.ts:2:21 - error TS2307: Cannot find module '@/presentation/App.vue' or its corresponding type declarations.

2 import RootApp from '@/presentation/App.vue';
                      ~~~~~~~~~~~~~~~~~~~~~~~~
ts-jest[ts-compiler] (WARN) src/main.ts:2:21 - error TS2307: Cannot find module '@/presentation/App.vue' or its corresponding type declarations.

2 import RootApp from '@/presentation/App.vue';
                      ~~~~~~~~~~~~~~~~~~~~~~~~
PASS tests/e2e/StringDataValue.spec.ts (10.48 s)
PASS tests/e2e/app.spec.ts (10.842 s)

Test Suites: 2 passed, 2 total
Tests:       29 passed, 29 total
Snapshots:   0 total
Time:        12.87 s
Ran all test suites.
-  Building for production...
(node:1467) [DEP_WEBPACK_COMPILATION_OPTIMIZE_CHUNK_ASSETS] DeprecationWarning: optimizeChunkAssets is deprecated (use Compilation.hooks.processAssets instead and use one of Compilation.PROCESS_ASSETS_STAGE_* as stage option)
(Use `node --trace-deprecation ...` to show where the warning was created)
(node:1467) [DEP_WEBPACK_COMPILATION_CACHE] DeprecationWarning: Compilation.cache was removed in favor of Compilation.getCache()
info @storybook/vue3 v6.4.13
info 
info => Loading presets
info => Using implicit CSS loaders
info => Loading custom Webpack config (full-control mode).
<i> [webpack-dev-middleware] wait until bundle finished
info => Ignoring cached manager due to change in manager config
<i> [webpack-dev-middleware] wait until bundle finished
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
--- stdout ---

> Wikibase@0.1.0 test
> npm-run-all -p test-fast:*


> Wikibase@0.1.0 test-fast:rest-api
> npm --prefix repo/rest-api test


> Wikibase@0.1.0 test-fast:mwlibs
> echo 'disabled (T297381)' # ZUUL_BRANCH=${ZUUL_BRANCH:-master} lib-version-check


> Wikibase@0.1.0 test-fast:grunt
> grunt test

disabled (T297381)

> Wikibase@0.1.0 test-fast:bridge
> npm --prefix client/data-bridge test


> Wikibase@0.1.0 test-fast:tainted-ref
> npm --prefix view/lib/wikibase-tainted-ref test

Running "eslint:all" (eslint) task

> wikibase-rest-api-specs@0.1.0 test
> npm run lint


> tainted-ref@0.1.0 test
> npm-run-all test:*


> data-bridge@0.1.0 test
> npm-run-all test:*


> wikibase-rest-api-specs@0.1.0 lint
> npm-run-all --parallel lint:*


> tainted-ref@0.1.0 test:unit
> vue-cli-service test:unit -c ./jest.config.js


> data-bridge@0.1.0 test:lint
> vue-cli-service lint --max-warnings 0 --no-fix . && stylelint --syntax scss 'src/**/*.(vue|scss)'


> wikibase-rest-api-specs@0.1.0 lint:eslint
> eslint . --max-warnings 0


> wikibase-rest-api-specs@0.1.0 lint:openapi
> swagger-cli validate specs/openapi.json

specs/openapi.json is valid

> tainted-ref@0.1.0 test:lint
> vue-cli-service lint --max-warnings 0 --no-fix . && stylelint --syntax scss 'src/**/*.(vue|scss)'

 DONE  No lint errors found!

> data-bridge@0.1.0 test:unit
> vue-cli-service test:unit -c ./jest.config.unit.js

 DONE  No lint errors found!

> tainted-ref@0.1.0 test:mwlibs
> echo 'disabled (T297381)' # ZUUL_BRANCH=${ZUUL_BRANCH:-master} lib-version-check

disabled (T297381)

/src/repo/build/dist-size/web/lib/main.js
  33:1  warning  This line has a length of 107. Maximum allowed is 100  max-len

/src/repo/client/resources/jquery.ui/jquery.ui.ooMenu.js
   85:0  warning  Missing JSDoc @param "key" type    jsdoc/require-param-type
   86:0  warning  Missing JSDoc @param "value" type  jsdoc/require-param-type
  382:0  warning  Missing JSDoc @param "event" type  jsdoc/require-param-type
  540:0  warning  Missing JSDoc @param "menu" type   jsdoc/require-param-type

/src/repo/client/resources/jquery.ui/jquery.ui.suggester.js
  241:3  warning  Missing JSDoc @return declaration        jsdoc/require-returns
  242:0  warning  Missing JSDoc @param "key" type          jsdoc/require-param-type
  243:0  warning  Missing JSDoc @param "value" type        jsdoc/require-param-type
  526:3  warning  Found more than one @return declaration  jsdoc/require-returns
  526:3  warning  Found more than one @return declaration  jsdoc/require-returns-check
  644:3  warning  Found more than one @return declaration  jsdoc/require-returns
  644:3  warning  Found more than one @return declaration  jsdoc/require-returns-check
  665:3  warning  Found more than one @return declaration  jsdoc/require-returns
  665:3  warning  Found more than one @return declaration  jsdoc/require-returns-check

/src/repo/client/resources/jquery.wikibase/jquery.wikibase.linkitem.js
  26:0  warning  Invalid JSDoc tag name "option"         jsdoc/check-tag-names
  28:0  warning  Invalid JSDoc tag name "option"         jsdoc/check-tag-names
  30:0  warning  Invalid JSDoc tag name "option"         jsdoc/check-tag-names
  32:0  warning  Invalid JSDoc tag name "option"         jsdoc/check-tag-names
  35:0  warning  Invalid JSDoc tag name "option"         jsdoc/check-tag-names
  37:0  warning  Invalid JSDoc tag name "option"         jsdoc/check-tag-names
  39:0  warning  Syntax error in namepath: dialogclose:  jsdoc/valid-types
  42:0  warning  Syntax error in namepath: success:      jsdoc/valid-types
  49:0  warning  Tag @type must have a type              jsdoc/valid-types
  56:0  warning  Tag @type must have a type              jsdoc/valid-types
  63:0  warning  Tag @type must have a type              jsdoc/valid-types

/src/repo/client/resources/jquery.wikibase/jquery.wikibase.siteselector.js
   17:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   21:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  135:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  200:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  211:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/client/resources/jquery.wikibase/jquery.wikibase.wbtooltip.js
   14:0  warning  Invalid JSDoc tag name "option"       jsdoc/check-tag-names
   17:0  warning  Invalid JSDoc tag name "option"       jsdoc/check-tag-names
   21:0  warning  Invalid JSDoc tag name "option"       jsdoc/check-tag-names
   27:0  warning  Invalid JSDoc tag name "option"       jsdoc/check-tag-names
   31:0  warning  Syntax error in namepath: afterhide:  jsdoc/valid-types
  164:3  warning  Missing JSDoc @return declaration     jsdoc/require-returns
  260:0  warning  Invalid JSDoc tag name "triggers"     jsdoc/check-tag-names
  281:0  warning  Invalid JSDoc tag name "TODO:"        jsdoc/check-tag-names
  289:3  warning  Missing JSDoc @return declaration     jsdoc/require-returns

/src/repo/client/resources/wikibase.client.PageConnector.js
  36:0  warning  Tag @type must have a type  jsdoc/valid-types
  41:0  warning  Tag @type must have a type  jsdoc/valid-types
  46:0  warning  Tag @type must have a type  jsdoc/valid-types
  51:0  warning  Tag @type must have a type  jsdoc/valid-types
  56:0  warning  Tag @type must have a type  jsdoc/valid-types

/src/repo/lib/resources/wikibase.Site.js
  67:0  warning  Invalid JSDoc tag name "note:"  jsdoc/check-tag-names

/src/repo/repo/resources/jquery.wikibase/jquery.wikibase.entitysearch.js
   15:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   66:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
   84:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  122:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/repo/resources/wikibase.EntityInitializer.js
   20:0  warning  The type 'Thenable' is undefined           jsdoc/no-undefined-types
  115:0  warning  Missing JSDoc @param "configVarName" type  jsdoc/require-param-type

/src/repo/repo/resources/wikibase.ui.entityViewInit.js
  40:0  warning  The type 'CachingEntityStore' is undefined  jsdoc/no-undefined-types

/src/repo/repo/tests/qunit/wikibase.sites.tests.js
  12:0  warning  Tag @type must have a type  jsdoc/valid-types
  19:0  warning  Tag @type must have a type  jsdoc/valid-types

/src/repo/repo/tests/selenium/specs/blocked.js
  61:28  warning  Unexpected member expression in describe block. Member expressions may call functions via getters  mocha/no-setup-in-describe

/src/repo/repo/tests/selenium/specs/item.js
  13:1  warning  This line has a length of 103. Maximum allowed is 100  max-len
  48:1  warning  This line has a length of 113. Maximum allowed is 100  max-len

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.badgeselector.js
   22:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   26:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   31:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   33:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   37:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  378:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  419:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.descriptionview.js
   16:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   18:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   95:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  175:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.entityselector.js
  339:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  360:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  412:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.entitytermsforlanguagelistview.js
   17:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   19:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  237:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  388:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.entitytermsforlanguageview.js
   15:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  177:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  187:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  216:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.entitytermsview.js
   16:0  warning  Invalid JSDoc tag name "option"      jsdoc/check-tag-names
   16:0  warning  The type 'Datamodel' is undefined    jsdoc/no-undefined-types
   18:0  warning  Invalid JSDoc tag name "option"      jsdoc/check-tag-names
   21:0  warning  Invalid JSDoc tag name "option"      jsdoc/check-tag-names
  364:3  warning  Missing JSDoc @return declaration    jsdoc/require-returns
  393:0  warning  The type 'Datamodel' is undefined    jsdoc/no-undefined-types
  394:0  warning  The type 'Fingerprint' is undefined  jsdoc/no-undefined-types

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.listview.js
  288:3  warning  Found more than one @return declaration  jsdoc/require-returns
  288:3  warning  Found more than one @return declaration  jsdoc/require-returns-check

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.pagesuggester.js
  11:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  13:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  65:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.referenceview.js
  228:3  warning  Missing JSDoc @return declaration        jsdoc/require-returns
  246:3  warning  Missing JSDoc @return declaration        jsdoc/require-returns
  287:3  warning  Found more than one @return declaration  jsdoc/require-returns
  287:3  warning  Found more than one @return declaration  jsdoc/require-returns-check

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.sitelinkgrouplistview.js
  100:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  101:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  168:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.sitelinkgroupview.js
   29:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   30:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   31:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   33:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  112:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  235:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.sitelinklistview.js
   26:0  warning  Invalid JSDoc tag name "option"          jsdoc/check-tag-names
   29:0  warning  Invalid JSDoc tag name "option"          jsdoc/check-tag-names
   32:0  warning  Invalid JSDoc tag name "option"          jsdoc/check-tag-names
   34:0  warning  Invalid JSDoc tag name "option"          jsdoc/check-tag-names
   38:0  warning  Invalid JSDoc tag name "option"          jsdoc/check-tag-names
   41:0  warning  Invalid JSDoc tag name "option"          jsdoc/check-tag-names
   97:3  warning  Missing JSDoc @return declaration        jsdoc/require-returns
  356:3  warning  Missing JSDoc @return declaration        jsdoc/require-returns
  463:3  warning  Missing JSDoc @return declaration        jsdoc/require-returns
  479:3  warning  Found more than one @return declaration  jsdoc/require-returns
  479:3  warning  Found more than one @return declaration  jsdoc/require-returns-check

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.sitelinkview.js
   18:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   21:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   25:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  358:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  437:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.siteselector.js
   14:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   18:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  132:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  197:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  208:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.snaklistview.js
  184:3  warning  Missing JSDoc @return declaration        jsdoc/require-returns
  234:3  warning  Found more than one @return declaration  jsdoc/require-returns
  234:3  warning  Found more than one @return declaration  jsdoc/require-returns-check

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.statementgrouplistview.js
   22:0  warning  The type 'jquery' is undefined           jsdoc/no-undefined-types
   94:3  warning  Missing JSDoc @return declaration        jsdoc/require-returns
  124:3  warning  Found more than one @return declaration  jsdoc/require-returns
  124:3  warning  Found more than one @return declaration  jsdoc/require-returns-check

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.statementgroupview.js
  225:3  warning  Found more than one @return declaration  jsdoc/require-returns
  225:3  warning  Found more than one @return declaration  jsdoc/require-returns-check

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.statementlistview.js
  188:3  warning  Found more than one @return declaration  jsdoc/require-returns
  188:3  warning  Found more than one @return declaration  jsdoc/require-returns-check

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.statementview.js
  680:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.wbtooltip.js
   14:0  warning  Invalid JSDoc tag name "option"       jsdoc/check-tag-names
   17:0  warning  Invalid JSDoc tag name "option"       jsdoc/check-tag-names
   21:0  warning  Invalid JSDoc tag name "option"       jsdoc/check-tag-names
   27:0  warning  Invalid JSDoc tag name "option"       jsdoc/check-tag-names
   31:0  warning  Syntax error in namepath: afterhide:  jsdoc/valid-types
  164:3  warning  Missing JSDoc @return declaration     jsdoc/require-returns
  260:0  warning  Invalid JSDoc tag name "triggers"     jsdoc/check-tag-names
  281:0  warning  Invalid JSDoc tag name "TODO:"        jsdoc/check-tag-names
  288:3  warning  Missing JSDoc @return declaration     jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/snakview/snakview.js
  341:3  warning  Missing JSDoc @return declaration        jsdoc/require-returns
  646:3  warning  Found more than one @return declaration  jsdoc/require-returns
  646:3  warning  Found more than one @return declaration  jsdoc/require-returns-check
  679:3  warning  Found more than one @return declaration  jsdoc/require-returns
  679:3  warning  Found more than one @return declaration  jsdoc/require-returns-check

/src/repo/view/resources/jquery/wikibase/toolbar/jquery.wikibase.addtoolbar.js
  17:0  warning  Invalid JSDoc tag name "option"  jsdoc/check-tag-names
  20:0  warning  Invalid JSDoc tag name "option"  jsdoc/check-tag-names

/src/repo/view/resources/jquery/wikibase/toolbar/jquery.wikibase.edittoolbar.js
   24:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   26:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  407:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/toolbar/jquery.wikibase.singlebuttontoolbar.js
  17:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  20:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  23:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  26:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  29:0  warning  Syntax error in namepath: <custom  jsdoc/valid-types

/src/repo/view/resources/jquery/wikibase/toolbar/jquery.wikibase.toolbar.js
   18:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  122:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/toolbar/jquery.wikibase.toolbarbutton.js
  17:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  86:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/wikibase/store/store.ApiEntityStore.js
  45:4  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/wikibase/store/store.CachingEntityStore.js
  36:4  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/wikibase/store/store.CombiningEntityStore.js
  10:2  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  52:4  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/wikibase/utilities/wikibase.utilities.GuidGenerator.js
  46:4  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/wikibase/view/ToolbarViewController.js
  161:2  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  211:2  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/tests/qunit/wikibase/entityChangers/EntityTermsChanger.tests.js
  19:0  warning  The type 'createFingerprint' is undefined  jsdoc/no-undefined-types

/src/repo/view/tests/qunit/wikibase/wikibase.tests.js
  16:0  warning  Tag @type must have a type  jsdoc/valid-types

✖ 174 problems (0 errors, 174 warnings)


Running "banana:all" (banana) task
>> 5 message directories checked.

Running "stylelint:all" (stylelint) task
>> Linted 36 files without errors

Done.

> data-bridge@0.1.0 test:integration
> vue-cli-service test:unit -c ./jest.config.integration.js


> data-bridge@0.1.0 test:e2e
> vue-cli-service test:unit -c ./jest.config.e2e.js


> data-bridge@0.1.0 test:distnodiff
> npm run build -- --dest /tmp/dist && diff -q ./dist/data-bridge.app.js /tmp/dist/data-bridge.app.js && diff -q ./dist/css/data-bridge.app.css /tmp/dist/css/data-bridge.app.css && diff -q ./dist/data-bridge.init.js /tmp/dist/data-bridge.init.js && diff -q ./dist/data-bridge.chunk-vendors.js /tmp/dist/data-bridge.chunk-vendors.js


> data-bridge@0.1.0 build
> NODE_ENV=production vue-cli-service build --no-clean --skip-plugins eslint --report --report-json --no-module --dest /tmp/dist


 DONE  Compiled successfully in 15493ms3:18:26 PM

  File                                      Size             Gzipped

  ../../../../tmp/dist/data-bridge.app.j    167.15 KiB       44.19 KiB
  s
  ../../../../tmp/dist/data-bridge.chunk    27.66 KiB        10.26 KiB
  -vendors.js
  ../../../../tmp/dist/data-bridge.init.    9.38 KiB         4.05 KiB
  js
  ../../../../tmp/dist/css/data-bridge.a    25.56 KiB        4.28 KiB
  pp.css

  Images and other types of assets omitted.

 DONE  Build complete. The ../../../../tmp/dist directory is ready to be deployed.
 INFO  Check out deployment instructions at https://cli.vuejs.org/guide/deployment.html
       

> data-bridge@0.1.0 test:storybook
> CHOKIDAR_USEPOLLING=1 start-storybook --ci --smoke-test --quiet


assets by chunk 5.06 MiB (id hint: vendors)
  assets by status 4.66 MiB [big]
    asset vendors-node_modules_storybook_addon-a11y_dist_esm_register_js-node_modules_storybook_addon-a-4840cb.manager.bundle.js 4.3 MiB [emitted] [big] (id hint: vendors)
    asset vendors-node_modules_storybook_components_dist_esm_ScrollArea_OverlayScrollbars_js.manager.bundle.js 372 KiB [emitted] [big] (id hint: vendors)
  asset vendors-node_modules_storybook_components_dist_esm_syntaxhighlighter_syntaxhighlighter_js.manager.bundle.js 195 KiB [emitted] (id hint: vendors)
  asset vendors-node_modules_storybook_components_dist_esm_tooltip_WithTooltip_js.manager.bundle.js 115 KiB [emitted] (id hint: vendors)
  asset vendors-node_modules_storybook_components_dist_esm_controls_Color_js.manager.bundle.js 81 KiB [emitted] (id hint: vendors)
  asset vendors-node_modules_storybook_components_dist_esm_ScrollArea_GlobalScrollAreaStyles_js.manager.bundle.js 15.6 KiB [emitted] (id hint: vendors)
asset runtime~main.manager.bundle.js 14.1 KiB [emitted] (name: runtime~main)
asset index.html 4.79 KiB [emitted]
asset node_modules_unfetch_dist_unfetch_js.manager.bundle.js 1.28 KiB [emitted]
asset main.manager.bundle.js 1.2 KiB [emitted] (name: main)
Entrypoint main [big] 4.31 MiB = runtime~main.manager.bundle.js 14.1 KiB vendors-node_modules_storybook_addon-a11y_dist_esm_register_js-node_modules_storybook_addon-a-4840cb.manager.bundle.js 4.3 MiB main.manager.bundle.js 1.2 KiB
orphan modules 1.49 MiB [orphan] 309 modules
runtime modules 8.68 KiB 14 modules
javascript modules 4.51 MiB 847 modules
json modules 1.52 KiB
  ./node_modules/character-entities-legacy/index.json 1.24 KiB [built] [code generated]
  ./node_modules/character-reference-invalid/index.json 289 bytes [built] [code generated]
manager (webpack 5.66.0) compiled successfully in 17897 ms
webpack built preview 255c51d194c63f8e42f9 in 20002ms

> data-bridge@0.1.0 test:mwlibs
> echo 'disabled (T297381)' # ZUUL_BRANCH=${ZUUL_BRANCH:-master} lib-version-check

disabled (T297381)

--- end ---
$ /usr/bin/npm audit --json
--- stdout ---
{
  "auditReportVersion": 2,
  "vulnerabilities": {
    "@babel/traverse": {
      "name": "@babel/traverse",
      "severity": "critical",
      "isDirect": false,
      "via": [
        {
          "source": 1096886,
          "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.4,
            "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": [],
      "range": "<7.23.2",
      "nodes": [
        "node_modules/@babel/traverse"
      ],
      "fixAvailable": true
    },
    "autoprefixer": {
      "name": "autoprefixer",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "postcss"
      ],
      "effects": [
        "stylelint"
      ],
      "range": "1.0.20131222 - 9.8.8",
      "nodes": [
        "node_modules/autoprefixer"
      ],
      "fixAvailable": {
        "name": "stylelint-config-wikimedia",
        "version": "0.16.1",
        "isSemVerMajor": true
      }
    },
    "cookiejar": {
      "name": "cookiejar",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        {
          "source": 1088659,
          "name": "cookiejar",
          "dependency": "cookiejar",
          "title": "cookiejar Regular Expression Denial of Service via Cookie.parse function",
          "url": "https://github.com/advisories/GHSA-h452-7996-h45h",
          "severity": "moderate",
          "cwe": [
            "CWE-1333"
          ],
          "cvss": {
            "score": 5.3,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"
          },
          "range": "<2.1.4"
        }
      ],
      "effects": [],
      "range": "<2.1.4",
      "nodes": [
        "node_modules/cookiejar"
      ],
      "fixAvailable": true
    },
    "eslint-plugin-compat": {
      "name": "eslint-plugin-compat",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "semver"
      ],
      "effects": [],
      "range": "3.6.0-0 - 4.1.4",
      "nodes": [
        "node_modules/eslint-plugin-compat"
      ],
      "fixAvailable": true
    },
    "get-func-name": {
      "name": "get-func-name",
      "severity": "high",
      "isDirect": false,
      "via": [
        {
          "source": 1094574,
          "name": "get-func-name",
          "dependency": "get-func-name",
          "title": "Chaijs/get-func-name vulnerable to ReDoS",
          "url": "https://github.com/advisories/GHSA-4q6p-r6v2-jvc5",
          "severity": "high",
          "cwe": [
            "CWE-400",
            "CWE-1333"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
          },
          "range": "<2.0.1"
        }
      ],
      "effects": [],
      "range": "<2.0.1",
      "nodes": [
        "node_modules/get-func-name"
      ],
      "fixAvailable": true
    },
    "got": {
      "name": "got",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        {
          "source": 1088948,
          "name": "got",
          "dependency": "got",
          "title": "Got allows a redirect to a UNIX socket",
          "url": "https://github.com/advisories/GHSA-pfrx-2q88-qq97",
          "severity": "moderate",
          "cwe": [],
          "cvss": {
            "score": 5.3,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N"
          },
          "range": "<11.8.5"
        }
      ],
      "effects": [],
      "range": "<11.8.5",
      "nodes": [
        "node_modules/got"
      ],
      "fixAvailable": true
    },
    "grunt-stylelint": {
      "name": "grunt-stylelint",
      "severity": "moderate",
      "isDirect": true,
      "via": [
        "stylelint"
      ],
      "effects": [],
      "range": "<=0.16.0",
      "nodes": [
        "node_modules/grunt-stylelint"
      ],
      "fixAvailable": {
        "name": "grunt-stylelint",
        "version": "0.19.0",
        "isSemVerMajor": true
      }
    },
    "http-cache-semantics": {
      "name": "http-cache-semantics",
      "severity": "high",
      "isDirect": false,
      "via": [
        {
          "source": 1092316,
          "name": "http-cache-semantics",
          "dependency": "http-cache-semantics",
          "title": "http-cache-semantics vulnerable to Regular Expression Denial of Service",
          "url": "https://github.com/advisories/GHSA-rc47-6667-2j5j",
          "severity": "high",
          "cwe": [
            "CWE-1333"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
          },
          "range": "<4.1.1"
        }
      ],
      "effects": [],
      "range": "<4.1.1",
      "nodes": [
        "node_modules/http-cache-semantics"
      ],
      "fixAvailable": true
    },
    "json5": {
      "name": "json5",
      "severity": "high",
      "isDirect": false,
      "via": [
        {
          "source": 1096544,
          "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": ">=2.0.0 <2.2.2"
        }
      ],
      "effects": [],
      "range": "2.0.0 - 2.2.1",
      "nodes": [
        "node_modules/json5"
      ],
      "fixAvailable": true
    },
    "minimatch": {
      "name": "minimatch",
      "severity": "high",
      "isDirect": false,
      "via": [
        {
          "source": 1096485,
          "name": "minimatch",
          "dependency": "minimatch",
          "title": "minimatch ReDoS vulnerability",
          "url": "https://github.com/advisories/GHSA-f8q6-p94x-37v3",
          "severity": "high",
          "cwe": [
            "CWE-400",
            "CWE-1333"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
          },
          "range": "<3.0.5"
        }
      ],
      "effects": [
        "recursive-readdir"
      ],
      "range": "<3.0.5",
      "nodes": [
        "node_modules/recursive-readdir/node_modules/minimatch"
      ],
      "fixAvailable": true
    },
    "mwbot": {
      "name": "mwbot",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "request",
        "semver"
      ],
      "effects": [
        "wdio-mediawiki"
      ],
      "range": ">=0.1.6",
      "nodes": [
        "node_modules/mwbot"
      ],
      "fixAvailable": {
        "name": "wdio-mediawiki",
        "version": "2.5.0",
        "isSemVerMajor": true
      }
    },
    "postcss": {
      "name": "postcss",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        {
          "source": 1094544,
          "name": "postcss",
          "dependency": "postcss",
          "title": "PostCSS line return parsing error",
          "url": "https://github.com/advisories/GHSA-7fh5-64p2-3v2j",
          "severity": "moderate",
          "cwe": [
            "CWE-74",
            "CWE-144"
          ],
          "cvss": {
            "score": 5.3,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N"
          },
          "range": "<8.4.31"
        }
      ],
      "effects": [
        "autoprefixer",
        "postcss-less",
        "postcss-safe-parser",
        "postcss-sass",
        "postcss-scss",
        "stylelint",
        "sugarss"
      ],
      "range": "<8.4.31",
      "nodes": [
        "node_modules/doiuse/node_modules/postcss",
        "node_modules/postcss",
        "node_modules/stylelint-no-unsupported-browser-features/node_modules/postcss"
      ],
      "fixAvailable": {
        "name": "stylelint-config-wikimedia",
        "version": "0.16.1",
        "isSemVerMajor": true
      }
    },
    "postcss-less": {
      "name": "postcss-less",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "postcss"
      ],
      "effects": [],
      "range": "<=3.1.4",
      "nodes": [
        "node_modules/postcss-less"
      ],
      "fixAvailable": true
    },
    "postcss-safe-parser": {
      "name": "postcss-safe-parser",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "postcss"
      ],
      "effects": [
        "stylelint"
      ],
      "range": "<=4.0.2",
      "nodes": [
        "node_modules/postcss-safe-parser"
      ],
      "fixAvailable": {
        "name": "stylelint-config-wikimedia",
        "version": "0.16.1",
        "isSemVerMajor": true
      }
    },
    "postcss-sass": {
      "name": "postcss-sass",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "postcss"
      ],
      "effects": [
        "stylelint"
      ],
      "range": "<=0.4.4",
      "nodes": [
        "node_modules/postcss-sass"
      ],
      "fixAvailable": {
        "name": "stylelint-config-wikimedia",
        "version": "0.16.1",
        "isSemVerMajor": true
      }
    },
    "postcss-scss": {
      "name": "postcss-scss",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "postcss"
      ],
      "effects": [
        "stylelint"
      ],
      "range": "<=2.1.1",
      "nodes": [
        "node_modules/postcss-scss"
      ],
      "fixAvailable": {
        "name": "stylelint-config-wikimedia",
        "version": "0.16.1",
        "isSemVerMajor": true
      }
    },
    "recursive-readdir": {
      "name": "recursive-readdir",
      "severity": "high",
      "isDirect": false,
      "via": [
        "minimatch"
      ],
      "effects": [],
      "range": "1.2.0 - 2.2.2",
      "nodes": [
        "node_modules/recursive-readdir"
      ],
      "fixAvailable": true
    },
    "request": {
      "name": "request",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        {
          "source": 1096727,
          "name": "request",
          "dependency": "request",
          "title": "Server-Side Request Forgery in Request",
          "url": "https://github.com/advisories/GHSA-p8p7-x288-28g6",
          "severity": "moderate",
          "cwe": [
            "CWE-918"
          ],
          "cvss": {
            "score": 6.1,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N"
          },
          "range": "<=2.88.2"
        },
        "tough-cookie"
      ],
      "effects": [
        "mwbot"
      ],
      "range": "*",
      "nodes": [
        "node_modules/request"
      ],
      "fixAvailable": {
        "name": "wdio-mediawiki",
        "version": "2.5.0",
        "isSemVerMajor": true
      }
    },
    "semver": {
      "name": "semver",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        {
          "source": 1096482,
          "name": "semver",
          "dependency": "semver",
          "title": "semver vulnerable to Regular Expression Denial of Service",
          "url": "https://github.com/advisories/GHSA-c2qf-rxjj-qqgw",
          "severity": "moderate",
          "cwe": [
            "CWE-1333"
          ],
          "cvss": {
            "score": 5.3,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"
          },
          "range": ">=7.0.0 <7.5.2"
        },
        {
          "source": 1096483,
          "name": "semver",
          "dependency": "semver",
          "title": "semver vulnerable to Regular Expression Denial of Service",
          "url": "https://github.com/advisories/GHSA-c2qf-rxjj-qqgw",
          "severity": "moderate",
          "cwe": [
            "CWE-1333"
          ],
          "cvss": {
            "score": 5.3,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"
          },
          "range": "<5.7.2"
        },
        {
          "source": 1096484,
          "name": "semver",
          "dependency": "semver",
          "title": "semver vulnerable to Regular Expression Denial of Service",
          "url": "https://github.com/advisories/GHSA-c2qf-rxjj-qqgw",
          "severity": "moderate",
          "cwe": [
            "CWE-1333"
          ],
          "cvss": {
            "score": 5.3,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"
          },
          "range": ">=6.0.0 <6.3.1"
        }
      ],
      "effects": [
        "eslint-plugin-compat",
        "mwbot"
      ],
      "range": "<=5.7.1 || 6.0.0 - 6.3.0 || 7.0.0 - 7.5.1",
      "nodes": [
        "node_modules/@babel/core/node_modules/semver",
        "node_modules/@babel/helper-compilation-targets/node_modules/semver",
        "node_modules/eslint-plugin-compat/node_modules/semver",
        "node_modules/eslint-plugin-mediawiki/node_modules/semver",
        "node_modules/eslint-plugin-node/node_modules/semver",
        "node_modules/mwbot/node_modules/semver",
        "node_modules/normalize-package-data/node_modules/semver",
        "node_modules/npm-run-all/node_modules/semver",
        "node_modules/semver"
      ],
      "fixAvailable": {
        "name": "wdio-mediawiki",
        "version": "2.5.0",
        "isSemVerMajor": true
      }
    },
    "stylelint": {
      "name": "stylelint",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "autoprefixer",
        "postcss",
        "postcss-less",
        "postcss-safe-parser",
        "postcss-sass",
        "postcss-scss",
        "sugarss"
      ],
      "effects": [
        "grunt-stylelint",
        "stylelint-config-wikimedia"
      ],
      "range": "0.1.0 - 13.13.1",
      "nodes": [
        "node_modules/stylelint"
      ],
      "fixAvailable": {
        "name": "stylelint-config-wikimedia",
        "version": "0.16.1",
        "isSemVerMajor": true
      }
    },
    "stylelint-config-wikimedia": {
      "name": "stylelint-config-wikimedia",
      "severity": "moderate",
      "isDirect": true,
      "via": [
        "stylelint"
      ],
      "effects": [],
      "range": "<=0.11.1",
      "nodes": [
        "node_modules/stylelint-config-wikimedia"
      ],
      "fixAvailable": {
        "name": "stylelint-config-wikimedia",
        "version": "0.16.1",
        "isSemVerMajor": true
      }
    },
    "sugarss": {
      "name": "sugarss",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "postcss"
      ],
      "effects": [
        "stylelint"
      ],
      "range": "<=2.0.0",
      "nodes": [
        "node_modules/sugarss"
      ],
      "fixAvailable": {
        "name": "stylelint-config-wikimedia",
        "version": "0.16.1",
        "isSemVerMajor": true
      }
    },
    "tough-cookie": {
      "name": "tough-cookie",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        {
          "source": 1096643,
          "name": "tough-cookie",
          "dependency": "tough-cookie",
          "title": "tough-cookie Prototype Pollution vulnerability",
          "url": "https://github.com/advisories/GHSA-72xf-g2v4-qvf3",
          "severity": "moderate",
          "cwe": [
            "CWE-1321"
          ],
          "cvss": {
            "score": 6.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N"
          },
          "range": "<4.1.3"
        }
      ],
      "effects": [
        "request"
      ],
      "range": "<4.1.3",
      "nodes": [
        "node_modules/tough-cookie"
      ],
      "fixAvailable": {
        "name": "wdio-mediawiki",
        "version": "2.5.0",
        "isSemVerMajor": true
      }
    },
    "ua-parser-js": {
      "name": "ua-parser-js",
      "severity": "high",
      "isDirect": false,
      "via": [
        {
          "source": 1092302,
          "name": "ua-parser-js",
          "dependency": "ua-parser-js",
          "title": "ReDoS Vulnerability in ua-parser-js version",
          "url": "https://github.com/advisories/GHSA-fhg7-m89q-25r3",
          "severity": "high",
          "cwe": [
            "CWE-400",
            "CWE-1333"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
          },
          "range": ">=0.8.0 <1.0.33"
        }
      ],
      "effects": [],
      "range": "0.8.1 - 1.0.32",
      "nodes": [
        "node_modules/ua-parser-js"
      ],
      "fixAvailable": true
    },
    "wdio-mediawiki": {
      "name": "wdio-mediawiki",
      "severity": "moderate",
      "isDirect": true,
      "via": [
        "mwbot"
      ],
      "effects": [
        "wdio-wikibase"
      ],
      "range": "1.1.0 - 2.2.0",
      "nodes": [
        "node_modules/wdio-mediawiki"
      ],
      "fixAvailable": {
        "name": "wdio-mediawiki",
        "version": "2.5.0",
        "isSemVerMajor": true
      }
    },
    "wdio-wikibase": {
      "name": "wdio-wikibase",
      "severity": "moderate",
      "isDirect": true,
      "via": [
        "wdio-mediawiki"
      ],
      "effects": [],
      "range": "5.1.0 - 5.2.0",
      "nodes": [
        "node_modules/wdio-wikibase"
      ],
      "fixAvailable": {
        "name": "wdio-wikibase",
        "version": "6.0.1",
        "isSemVerMajor": true
      }
    },
    "word-wrap": {
      "name": "word-wrap",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        {
          "source": 1095091,
          "name": "word-wrap",
          "dependency": "word-wrap",
          "title": "word-wrap vulnerable to Regular Expression Denial of Service",
          "url": "https://github.com/advisories/GHSA-j8xg-fqg3-53r7",
          "severity": "moderate",
          "cwe": [
            "CWE-1333"
          ],
          "cvss": {
            "score": 5.3,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"
          },
          "range": "<1.2.4"
        }
      ],
      "effects": [],
      "range": "<1.2.4",
      "nodes": [
        "node_modules/word-wrap"
      ],
      "fixAvailable": true
    }
  },
  "metadata": {
    "vulnerabilities": {
      "info": 0,
      "low": 0,
      "moderate": 20,
      "high": 6,
      "critical": 1,
      "total": 27
    },
    "dependencies": {
      "prod": 1,
      "dev": 921,
      "optional": 2,
      "peer": 2,
      "peerOptional": 0,
      "total": 921
    }
  }
}

--- 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: '@es-joy/jsdoccomment@0.20.1',
npm WARN EBADENGINE   required: { node: '^12 || ^14 || ^16 || ^17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'eslint-plugin-jsdoc@37.9.7',
npm WARN EBADENGINE   required: { node: '^12 || ^14 || ^16 || ^17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
--- stdout ---
{
  "added": 4,
  "removed": 4,
  "changed": 46,
  "audited": 921,
  "funding": 149,
  "audit": {
    "auditReportVersion": 2,
    "vulnerabilities": {
      "@babel/traverse": {
        "name": "@babel/traverse",
        "severity": "critical",
        "isDirect": false,
        "via": [
          {
            "source": 1096886,
            "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.4,
              "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": [],
        "range": "<7.23.2",
        "nodes": [
          ""
        ],
        "fixAvailable": true
      },
      "autoprefixer": {
        "name": "autoprefixer",
        "severity": "moderate",
        "isDirect": false,
        "via": [
          "postcss"
        ],
        "effects": [
          "stylelint"
        ],
        "range": "1.0.20131222 - 9.8.8",
        "nodes": [
          "node_modules/autoprefixer"
        ],
        "fixAvailable": {
          "name": "grunt-stylelint",
          "version": "0.19.0",
          "isSemVerMajor": true
        }
      },
      "cookiejar": {
        "name": "cookiejar",
        "severity": "moderate",
        "isDirect": false,
        "via": [
          {
            "source": 1088659,
            "name": "cookiejar",
            "dependency": "cookiejar",
            "title": "cookiejar Regular Expression Denial of Service via Cookie.parse function",
            "url": "https://github.com/advisories/GHSA-h452-7996-h45h",
            "severity": "moderate",
            "cwe": [
              "CWE-1333"
            ],
            "cvss": {
              "score": 5.3,
              "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"
            },
            "range": "<2.1.4"
          }
        ],
        "effects": [],
        "range": "<2.1.4",
        "nodes": [
          ""
        ],
        "fixAvailable": true
      },
      "eslint-plugin-compat": {
        "name": "eslint-plugin-compat",
        "severity": "moderate",
        "isDirect": false,
        "via": [
          "semver"
        ],
        "effects": [],
        "range": "3.6.0-0 - 4.1.4",
        "nodes": [
          ""
        ],
        "fixAvailable": true
      },
      "get-func-name": {
        "name": "get-func-name",
        "severity": "high",
        "isDirect": false,
        "via": [
          {
            "source": 1094574,
            "name": "get-func-name",
            "dependency": "get-func-name",
            "title": "Chaijs/get-func-name vulnerable to ReDoS",
            "url": "https://github.com/advisories/GHSA-4q6p-r6v2-jvc5",
            "severity": "high",
            "cwe": [
              "CWE-400",
              "CWE-1333"
            ],
            "cvss": {
              "score": 7.5,
              "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
            },
            "range": "<2.0.1"
          }
        ],
        "effects": [],
        "range": "<2.0.1",
        "nodes": [
          ""
        ],
        "fixAvailable": true
      },
      "got": {
        "name": "got",
        "severity": "moderate",
        "isDirect": false,
        "via": [
          {
            "source": 1088948,
            "name": "got",
            "dependency": "got",
            "title": "Got allows a redirect to a UNIX socket",
            "url": "https://github.com/advisories/GHSA-pfrx-2q88-qq97",
            "severity": "moderate",
            "cwe": [],
            "cvss": {
              "score": 5.3,
              "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N"
            },
            "range": "<11.8.5"
          }
        ],
        "effects": [],
        "range": "<11.8.5",
        "nodes": [
          ""
        ],
        "fixAvailable": true
      },
      "grunt-stylelint": {
        "name": "grunt-stylelint",
        "severity": "moderate",
        "isDirect": true,
        "via": [
          "stylelint"
        ],
        "effects": [],
        "range": "<=0.16.0",
        "nodes": [
          "node_modules/grunt-stylelint"
        ],
        "fixAvailable": {
          "name": "grunt-stylelint",
          "version": "0.19.0",
          "isSemVerMajor": true
        }
      },
      "http-cache-semantics": {
        "name": "http-cache-semantics",
        "severity": "high",
        "isDirect": false,
        "via": [
          {
            "source": 1092316,
            "name": "http-cache-semantics",
            "dependency": "http-cache-semantics",
            "title": "http-cache-semantics vulnerable to Regular Expression Denial of Service",
            "url": "https://github.com/advisories/GHSA-rc47-6667-2j5j",
            "severity": "high",
            "cwe": [
              "CWE-1333"
            ],
            "cvss": {
              "score": 7.5,
              "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
            },
            "range": "<4.1.1"
          }
        ],
        "effects": [],
        "range": "<4.1.1",
        "nodes": [
          ""
        ],
        "fixAvailable": true
      },
      "json5": {
        "name": "json5",
        "severity": "high",
        "isDirect": false,
        "via": [
          {
            "source": 1096544,
            "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": ">=2.0.0 <2.2.2"
          }
        ],
        "effects": [],
        "range": "2.0.0 - 2.2.1",
        "nodes": [
          ""
        ],
        "fixAvailable": true
      },
      "minimatch": {
        "name": "minimatch",
        "severity": "high",
        "isDirect": false,
        "via": [
          {
            "source": 1096485,
            "name": "minimatch",
            "dependency": "minimatch",
            "title": "minimatch ReDoS vulnerability",
            "url": "https://github.com/advisories/GHSA-f8q6-p94x-37v3",
            "severity": "high",
            "cwe": [
              "CWE-400",
              "CWE-1333"
            ],
            "cvss": {
              "score": 7.5,
              "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
            },
            "range": "<3.0.5"
          }
        ],
        "effects": [
          "recursive-readdir"
        ],
        "range": "<3.0.5",
        "nodes": [
          ""
        ],
        "fixAvailable": true
      },
      "mwbot": {
        "name": "mwbot",
        "severity": "moderate",
        "isDirect": false,
        "via": [
          "request",
          "semver"
        ],
        "effects": [
          "wdio-mediawiki"
        ],
        "range": ">=0.1.6",
        "nodes": [
          "node_modules/mwbot"
        ],
        "fixAvailable": {
          "name": "wdio-mediawiki",
          "version": "2.5.0",
          "isSemVerMajor": true
        }
      },
      "postcss": {
        "name": "postcss",
        "severity": "moderate",
        "isDirect": false,
        "via": [
          {
            "source": 1094544,
            "name": "postcss",
            "dependency": "postcss",
            "title": "PostCSS line return parsing error",
            "url": "https://github.com/advisories/GHSA-7fh5-64p2-3v2j",
            "severity": "moderate",
            "cwe": [
              "CWE-74",
              "CWE-144"
            ],
            "cvss": {
              "score": 5.3,
              "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N"
            },
            "range": "<8.4.31"
          }
        ],
        "effects": [
          "autoprefixer",
          "postcss-less",
          "postcss-safe-parser",
          "postcss-sass",
          "postcss-scss",
          "stylelint",
          "sugarss"
        ],
        "range": "<8.4.31",
        "nodes": [
          "",
          "",
          "node_modules/postcss"
        ],
        "fixAvailable": {
          "name": "grunt-stylelint",
          "version": "0.19.0",
          "isSemVerMajor": true
        }
      },
      "postcss-less": {
        "name": "postcss-less",
        "severity": "moderate",
        "isDirect": false,
        "via": [
          "postcss"
        ],
        "effects": [
          "stylelint"
        ],
        "range": "<=3.1.4",
        "nodes": [
          "node_modules/postcss-less"
        ],
        "fixAvailable": {
          "name": "grunt-stylelint",
          "version": "0.19.0",
          "isSemVerMajor": true
        }
      },
      "postcss-safe-parser": {
        "name": "postcss-safe-parser",
        "severity": "moderate",
        "isDirect": false,
        "via": [
          "postcss"
        ],
        "effects": [
          "stylelint"
        ],
        "range": "<=4.0.2",
        "nodes": [
          "node_modules/postcss-safe-parser"
        ],
        "fixAvailable": {
          "name": "grunt-stylelint",
          "version": "0.19.0",
          "isSemVerMajor": true
        }
      },
      "postcss-sass": {
        "name": "postcss-sass",
        "severity": "moderate",
        "isDirect": false,
        "via": [
          "postcss"
        ],
        "effects": [
          "stylelint"
        ],
        "range": "<=0.4.4",
        "nodes": [
          "node_modules/postcss-sass"
        ],
        "fixAvailable": {
          "name": "grunt-stylelint",
          "version": "0.19.0",
          "isSemVerMajor": true
        }
      },
      "postcss-scss": {
        "name": "postcss-scss",
        "severity": "moderate",
        "isDirect": false,
        "via": [
          "postcss"
        ],
        "effects": [
          "stylelint"
        ],
        "range": "<=2.1.1",
        "nodes": [
          "node_modules/postcss-scss"
        ],
        "fixAvailable": {
          "name": "grunt-stylelint",
          "version": "0.19.0",
          "isSemVerMajor": true
        }
      },
      "recursive-readdir": {
        "name": "recursive-readdir",
        "severity": "high",
        "isDirect": false,
        "via": [
          "minimatch"
        ],
        "effects": [],
        "range": "1.2.0 - 2.2.2",
        "nodes": [
          ""
        ],
        "fixAvailable": true
      },
      "request": {
        "name": "request",
        "severity": "moderate",
        "isDirect": false,
        "via": [
          {
            "source": 1096727,
            "name": "request",
            "dependency": "request",
            "title": "Server-Side Request Forgery in Request",
            "url": "https://github.com/advisories/GHSA-p8p7-x288-28g6",
            "severity": "moderate",
            "cwe": [
              "CWE-918"
            ],
            "cvss": {
              "score": 6.1,
              "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N"
            },
            "range": "<=2.88.2"
          },
          "tough-cookie"
        ],
        "effects": [
          "mwbot"
        ],
        "range": "*",
        "nodes": [
          "node_modules/request"
        ],
        "fixAvailable": {
          "name": "wdio-mediawiki",
          "version": "2.5.0",
          "isSemVerMajor": true
        }
      },
      "semver": {
        "name": "semver",
        "severity": "moderate",
        "isDirect": false,
        "via": [
          {
            "source": 1096482,
            "name": "semver",
            "dependency": "semver",
            "title": "semver vulnerable to Regular Expression Denial of Service",
            "url": "https://github.com/advisories/GHSA-c2qf-rxjj-qqgw",
            "severity": "moderate",
            "cwe": [
              "CWE-1333"
            ],
            "cvss": {
              "score": 5.3,
              "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"
            },
            "range": ">=7.0.0 <7.5.2"
          },
          {
            "source": 1096483,
            "name": "semver",
            "dependency": "semver",
            "title": "semver vulnerable to Regular Expression Denial of Service",
            "url": "https://github.com/advisories/GHSA-c2qf-rxjj-qqgw",
            "severity": "moderate",
            "cwe": [
              "CWE-1333"
            ],
            "cvss": {
              "score": 5.3,
              "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"
            },
            "range": "<5.7.2"
          },
          {
            "source": 1096484,
            "name": "semver",
            "dependency": "semver",
            "title": "semver vulnerable to Regular Expression Denial of Service",
            "url": "https://github.com/advisories/GHSA-c2qf-rxjj-qqgw",
            "severity": "moderate",
            "cwe": [
              "CWE-1333"
            ],
            "cvss": {
              "score": 5.3,
              "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"
            },
            "range": ">=6.0.0 <6.3.1"
          }
        ],
        "effects": [
          "eslint-plugin-compat",
          "mwbot"
        ],
        "range": "<=5.7.1 || 6.0.0 - 6.3.0 || 7.0.0 - 7.5.1",
        "nodes": [
          "",
          "",
          "",
          "",
          "",
          "",
          "",
          "",
          "node_modules/mwbot/node_modules/semver"
        ],
        "fixAvailable": {
          "name": "wdio-mediawiki",
          "version": "2.5.0",
          "isSemVerMajor": true
        }
      },
      "stylelint": {
        "name": "stylelint",
        "severity": "moderate",
        "isDirect": false,
        "via": [
          "autoprefixer",
          "postcss",
          "postcss-less",
          "postcss-safe-parser",
          "postcss-sass",
          "postcss-scss",
          "sugarss"
        ],
        "effects": [
          "grunt-stylelint",
          "stylelint-config-wikimedia"
        ],
        "range": "0.1.0 - 13.13.1",
        "nodes": [
          "node_modules/stylelint"
        ],
        "fixAvailable": {
          "name": "grunt-stylelint",
          "version": "0.19.0",
          "isSemVerMajor": true
        }
      },
      "stylelint-config-wikimedia": {
        "name": "stylelint-config-wikimedia",
        "severity": "moderate",
        "isDirect": true,
        "via": [
          "stylelint"
        ],
        "effects": [],
        "range": "<=0.11.1",
        "nodes": [
          "node_modules/stylelint-config-wikimedia"
        ],
        "fixAvailable": {
          "name": "stylelint-config-wikimedia",
          "version": "0.16.1",
          "isSemVerMajor": true
        }
      },
      "sugarss": {
        "name": "sugarss",
        "severity": "moderate",
        "isDirect": false,
        "via": [
          "postcss"
        ],
        "effects": [],
        "range": "<=2.0.0",
        "nodes": [
          "node_modules/sugarss"
        ],
        "fixAvailable": true
      },
      "tough-cookie": {
        "name": "tough-cookie",
        "severity": "moderate",
        "isDirect": false,
        "via": [
          {
            "source": 1096643,
            "name": "tough-cookie",
            "dependency": "tough-cookie",
            "title": "tough-cookie Prototype Pollution vulnerability",
            "url": "https://github.com/advisories/GHSA-72xf-g2v4-qvf3",
            "severity": "moderate",
            "cwe": [
              "CWE-1321"
            ],
            "cvss": {
              "score": 6.5,
              "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N"
            },
            "range": "<4.1.3"
          }
        ],
        "effects": [
          "request"
        ],
        "range": "<4.1.3",
        "nodes": [
          "node_modules/tough-cookie"
        ],
        "fixAvailable": {
          "name": "wdio-mediawiki",
          "version": "2.5.0",
          "isSemVerMajor": true
        }
      },
      "ua-parser-js": {
        "name": "ua-parser-js",
        "severity": "high",
        "isDirect": false,
        "via": [
          {
            "source": 1092302,
            "name": "ua-parser-js",
            "dependency": "ua-parser-js",
            "title": "ReDoS Vulnerability in ua-parser-js version",
            "url": "https://github.com/advisories/GHSA-fhg7-m89q-25r3",
            "severity": "high",
            "cwe": [
              "CWE-400",
              "CWE-1333"
            ],
            "cvss": {
              "score": 7.5,
              "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
            },
            "range": ">=0.8.0 <1.0.33"
          }
        ],
        "effects": [],
        "range": "0.8.1 - 1.0.32",
        "nodes": [
          ""
        ],
        "fixAvailable": true
      },
      "wdio-mediawiki": {
        "name": "wdio-mediawiki",
        "severity": "moderate",
        "isDirect": true,
        "via": [
          "mwbot"
        ],
        "effects": [
          "wdio-wikibase"
        ],
        "range": "1.1.0 - 2.2.0",
        "nodes": [
          "node_modules/wdio-mediawiki"
        ],
        "fixAvailable": {
          "name": "wdio-mediawiki",
          "version": "2.5.0",
          "isSemVerMajor": true
        }
      },
      "wdio-wikibase": {
        "name": "wdio-wikibase",
        "severity": "moderate",
        "isDirect": true,
        "via": [
          "wdio-mediawiki"
        ],
        "effects": [],
        "range": "5.1.0 - 5.2.0",
        "nodes": [
          "node_modules/wdio-wikibase"
        ],
        "fixAvailable": {
          "name": "wdio-wikibase",
          "version": "6.0.1",
          "isSemVerMajor": true
        }
      },
      "word-wrap": {
        "name": "word-wrap",
        "severity": "moderate",
        "isDirect": false,
        "via": [
          {
            "source": 1095091,
            "name": "word-wrap",
            "dependency": "word-wrap",
            "title": "word-wrap vulnerable to Regular Expression Denial of Service",
            "url": "https://github.com/advisories/GHSA-j8xg-fqg3-53r7",
            "severity": "moderate",
            "cwe": [
              "CWE-1333"
            ],
            "cvss": {
              "score": 5.3,
              "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"
            },
            "range": "<1.2.4"
          }
        ],
        "effects": [],
        "range": "<1.2.4",
        "nodes": [
          ""
        ],
        "fixAvailable": true
      }
    },
    "metadata": {
      "vulnerabilities": {
        "info": 0,
        "low": 0,
        "moderate": 20,
        "high": 6,
        "critical": 1,
        "total": 27
      },
      "dependencies": {
        "prod": 1,
        "dev": 920,
        "optional": 2,
        "peer": 2,
        "peerOptional": 0,
        "total": 920
      }
    }
  }
}

--- end ---
{"added": 4, "removed": 4, "changed": 46, "audited": 921, "funding": 149, "audit": {"auditReportVersion": 2, "vulnerabilities": {"@babel/traverse": {"name": "@babel/traverse", "severity": "critical", "isDirect": false, "via": [{"source": 1096886, "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.4, "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": [], "range": "<7.23.2", "nodes": [""], "fixAvailable": true}, "autoprefixer": {"name": "autoprefixer", "severity": "moderate", "isDirect": false, "via": ["postcss"], "effects": ["stylelint"], "range": "1.0.20131222 - 9.8.8", "nodes": ["node_modules/autoprefixer"], "fixAvailable": {"name": "grunt-stylelint", "version": "0.19.0", "isSemVerMajor": true}}, "cookiejar": {"name": "cookiejar", "severity": "moderate", "isDirect": false, "via": [{"source": 1088659, "name": "cookiejar", "dependency": "cookiejar", "title": "cookiejar Regular Expression Denial of Service via Cookie.parse function", "url": "https://github.com/advisories/GHSA-h452-7996-h45h", "severity": "moderate", "cwe": ["CWE-1333"], "cvss": {"score": 5.3, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"}, "range": "<2.1.4"}], "effects": [], "range": "<2.1.4", "nodes": [""], "fixAvailable": true}, "eslint-plugin-compat": {"name": "eslint-plugin-compat", "severity": "moderate", "isDirect": false, "via": ["semver"], "effects": [], "range": "3.6.0-0 - 4.1.4", "nodes": [""], "fixAvailable": true}, "get-func-name": {"name": "get-func-name", "severity": "high", "isDirect": false, "via": [{"source": 1094574, "name": "get-func-name", "dependency": "get-func-name", "title": "Chaijs/get-func-name vulnerable to ReDoS", "url": "https://github.com/advisories/GHSA-4q6p-r6v2-jvc5", "severity": "high", "cwe": ["CWE-400", "CWE-1333"], "cvss": {"score": 7.5, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"}, "range": "<2.0.1"}], "effects": [], "range": "<2.0.1", "nodes": [""], "fixAvailable": true}, "got": {"name": "got", "severity": "moderate", "isDirect": false, "via": [{"source": 1088948, "name": "got", "dependency": "got", "title": "Got allows a redirect to a UNIX socket", "url": "https://github.com/advisories/GHSA-pfrx-2q88-qq97", "severity": "moderate", "cwe": [], "cvss": {"score": 5.3, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N"}, "range": "<11.8.5"}], "effects": [], "range": "<11.8.5", "nodes": [""], "fixAvailable": true}, "grunt-stylelint": {"name": "grunt-stylelint", "severity": "moderate", "isDirect": true, "via": ["stylelint"], "effects": [], "range": "<=0.16.0", "nodes": ["node_modules/grunt-stylelint"], "fixAvailable": {"name": "grunt-stylelint", "version": "0.19.0", "isSemVerMajor": true}}, "http-cache-semantics": {"name": "http-cache-semantics", "severity": "high", "isDirect": false, "via": [{"source": 1092316, "name": "http-cache-semantics", "dependency": "http-cache-semantics", "title": "http-cache-semantics vulnerable to Regular Expression Denial of Service", "url": "https://github.com/advisories/GHSA-rc47-6667-2j5j", "severity": "high", "cwe": ["CWE-1333"], "cvss": {"score": 7.5, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"}, "range": "<4.1.1"}], "effects": [], "range": "<4.1.1", "nodes": [""], "fixAvailable": true}, "json5": {"name": "json5", "severity": "high", "isDirect": false, "via": [{"source": 1096544, "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": ">=2.0.0 <2.2.2"}], "effects": [], "range": "2.0.0 - 2.2.1", "nodes": [""], "fixAvailable": true}, "minimatch": {"name": "minimatch", "severity": "high", "isDirect": false, "via": [{"source": 1096485, "name": "minimatch", "dependency": "minimatch", "title": "minimatch ReDoS vulnerability", "url": "https://github.com/advisories/GHSA-f8q6-p94x-37v3", "severity": "high", "cwe": ["CWE-400", "CWE-1333"], "cvss": {"score": 7.5, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"}, "range": "<3.0.5"}], "effects": ["recursive-readdir"], "range": "<3.0.5", "nodes": [""], "fixAvailable": true}, "mwbot": {"name": "mwbot", "severity": "moderate", "isDirect": false, "via": ["request", "semver"], "effects": ["wdio-mediawiki"], "range": ">=0.1.6", "nodes": ["node_modules/mwbot"], "fixAvailable": {"name": "wdio-mediawiki", "version": "2.5.0", "isSemVerMajor": true}}, "postcss": {"name": "postcss", "severity": "moderate", "isDirect": false, "via": [{"source": 1094544, "name": "postcss", "dependency": "postcss", "title": "PostCSS line return parsing error", "url": "https://github.com/advisories/GHSA-7fh5-64p2-3v2j", "severity": "moderate", "cwe": ["CWE-74", "CWE-144"], "cvss": {"score": 5.3, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N"}, "range": "<8.4.31"}], "effects": ["autoprefixer", "postcss-less", "postcss-safe-parser", "postcss-sass", "postcss-scss", "stylelint", "sugarss"], "range": "<8.4.31", "nodes": ["", "", "node_modules/postcss"], "fixAvailable": {"name": "grunt-stylelint", "version": "0.19.0", "isSemVerMajor": true}}, "postcss-less": {"name": "postcss-less", "severity": "moderate", "isDirect": false, "via": ["postcss"], "effects": ["stylelint"], "range": "<=3.1.4", "nodes": ["node_modules/postcss-less"], "fixAvailable": {"name": "grunt-stylelint", "version": "0.19.0", "isSemVerMajor": true}}, "postcss-safe-parser": {"name": "postcss-safe-parser", "severity": "moderate", "isDirect": false, "via": ["postcss"], "effects": ["stylelint"], "range": "<=4.0.2", "nodes": ["node_modules/postcss-safe-parser"], "fixAvailable": {"name": "grunt-stylelint", "version": "0.19.0", "isSemVerMajor": true}}, "postcss-sass": {"name": "postcss-sass", "severity": "moderate", "isDirect": false, "via": ["postcss"], "effects": ["stylelint"], "range": "<=0.4.4", "nodes": ["node_modules/postcss-sass"], "fixAvailable": {"name": "grunt-stylelint", "version": "0.19.0", "isSemVerMajor": true}}, "postcss-scss": {"name": "postcss-scss", "severity": "moderate", "isDirect": false, "via": ["postcss"], "effects": ["stylelint"], "range": "<=2.1.1", "nodes": ["node_modules/postcss-scss"], "fixAvailable": {"name": "grunt-stylelint", "version": "0.19.0", "isSemVerMajor": true}}, "recursive-readdir": {"name": "recursive-readdir", "severity": "high", "isDirect": false, "via": ["minimatch"], "effects": [], "range": "1.2.0 - 2.2.2", "nodes": [""], "fixAvailable": true}, "request": {"name": "request", "severity": "moderate", "isDirect": false, "via": [{"source": 1096727, "name": "request", "dependency": "request", "title": "Server-Side Request Forgery in Request", "url": "https://github.com/advisories/GHSA-p8p7-x288-28g6", "severity": "moderate", "cwe": ["CWE-918"], "cvss": {"score": 6.1, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N"}, "range": "<=2.88.2"}, "tough-cookie"], "effects": ["mwbot"], "range": "*", "nodes": ["node_modules/request"], "fixAvailable": {"name": "wdio-mediawiki", "version": "2.5.0", "isSemVerMajor": true}}, "semver": {"name": "semver", "severity": "moderate", "isDirect": false, "via": [{"source": 1096482, "name": "semver", "dependency": "semver", "title": "semver vulnerable to Regular Expression Denial of Service", "url": "https://github.com/advisories/GHSA-c2qf-rxjj-qqgw", "severity": "moderate", "cwe": ["CWE-1333"], "cvss": {"score": 5.3, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"}, "range": ">=7.0.0 <7.5.2"}, {"source": 1096483, "name": "semver", "dependency": "semver", "title": "semver vulnerable to Regular Expression Denial of Service", "url": "https://github.com/advisories/GHSA-c2qf-rxjj-qqgw", "severity": "moderate", "cwe": ["CWE-1333"], "cvss": {"score": 5.3, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"}, "range": "<5.7.2"}, {"source": 1096484, "name": "semver", "dependency": "semver", "title": "semver vulnerable to Regular Expression Denial of Service", "url": "https://github.com/advisories/GHSA-c2qf-rxjj-qqgw", "severity": "moderate", "cwe": ["CWE-1333"], "cvss": {"score": 5.3, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"}, "range": ">=6.0.0 <6.3.1"}], "effects": ["eslint-plugin-compat", "mwbot"], "range": "<=5.7.1 || 6.0.0 - 6.3.0 || 7.0.0 - 7.5.1", "nodes": ["", "", "", "", "", "", "", "", "node_modules/mwbot/node_modules/semver"], "fixAvailable": {"name": "wdio-mediawiki", "version": "2.5.0", "isSemVerMajor": true}}, "stylelint": {"name": "stylelint", "severity": "moderate", "isDirect": false, "via": ["autoprefixer", "postcss", "postcss-less", "postcss-safe-parser", "postcss-sass", "postcss-scss", "sugarss"], "effects": ["grunt-stylelint", "stylelint-config-wikimedia"], "range": "0.1.0 - 13.13.1", "nodes": ["node_modules/stylelint"], "fixAvailable": {"name": "grunt-stylelint", "version": "0.19.0", "isSemVerMajor": true}}, "stylelint-config-wikimedia": {"name": "stylelint-config-wikimedia", "severity": "moderate", "isDirect": true, "via": ["stylelint"], "effects": [], "range": "<=0.11.1", "nodes": ["node_modules/stylelint-config-wikimedia"], "fixAvailable": {"name": "stylelint-config-wikimedia", "version": "0.16.1", "isSemVerMajor": true}}, "sugarss": {"name": "sugarss", "severity": "moderate", "isDirect": false, "via": ["postcss"], "effects": [], "range": "<=2.0.0", "nodes": ["node_modules/sugarss"], "fixAvailable": true}, "tough-cookie": {"name": "tough-cookie", "severity": "moderate", "isDirect": false, "via": [{"source": 1096643, "name": "tough-cookie", "dependency": "tough-cookie", "title": "tough-cookie Prototype Pollution vulnerability", "url": "https://github.com/advisories/GHSA-72xf-g2v4-qvf3", "severity": "moderate", "cwe": ["CWE-1321"], "cvss": {"score": 6.5, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N"}, "range": "<4.1.3"}], "effects": ["request"], "range": "<4.1.3", "nodes": ["node_modules/tough-cookie"], "fixAvailable": {"name": "wdio-mediawiki", "version": "2.5.0", "isSemVerMajor": true}}, "ua-parser-js": {"name": "ua-parser-js", "severity": "high", "isDirect": false, "via": [{"source": 1092302, "name": "ua-parser-js", "dependency": "ua-parser-js", "title": "ReDoS Vulnerability in ua-parser-js version", "url": "https://github.com/advisories/GHSA-fhg7-m89q-25r3", "severity": "high", "cwe": ["CWE-400", "CWE-1333"], "cvss": {"score": 7.5, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"}, "range": ">=0.8.0 <1.0.33"}], "effects": [], "range": "0.8.1 - 1.0.32", "nodes": [""], "fixAvailable": true}, "wdio-mediawiki": {"name": "wdio-mediawiki", "severity": "moderate", "isDirect": true, "via": ["mwbot"], "effects": ["wdio-wikibase"], "range": "1.1.0 - 2.2.0", "nodes": ["node_modules/wdio-mediawiki"], "fixAvailable": {"name": "wdio-mediawiki", "version": "2.5.0", "isSemVerMajor": true}}, "wdio-wikibase": {"name": "wdio-wikibase", "severity": "moderate", "isDirect": true, "via": ["wdio-mediawiki"], "effects": [], "range": "5.1.0 - 5.2.0", "nodes": ["node_modules/wdio-wikibase"], "fixAvailable": {"name": "wdio-wikibase", "version": "6.0.1", "isSemVerMajor": true}}, "word-wrap": {"name": "word-wrap", "severity": "moderate", "isDirect": false, "via": [{"source": 1095091, "name": "word-wrap", "dependency": "word-wrap", "title": "word-wrap vulnerable to Regular Expression Denial of Service", "url": "https://github.com/advisories/GHSA-j8xg-fqg3-53r7", "severity": "moderate", "cwe": ["CWE-1333"], "cvss": {"score": 5.3, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"}, "range": "<1.2.4"}], "effects": [], "range": "<1.2.4", "nodes": [""], "fixAvailable": true}}, "metadata": {"vulnerabilities": {"info": 0, "low": 0, "moderate": 20, "high": 6, "critical": 1, "total": 27}, "dependencies": {"prod": 1, "dev": 920, "optional": 2, "peer": 2, "peerOptional": 0, "total": 920}}}}
$ /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: '@es-joy/jsdoccomment@0.20.1',
npm WARN EBADENGINE   required: { node: '^12 || ^14 || ^16 || ^17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'eslint-plugin-jsdoc@37.9.7',
npm WARN EBADENGINE   required: { node: '^12 || ^14 || ^16 || ^17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
--- stdout ---

added 3 packages, removed 4 packages, changed 46 packages, and audited 920 packages in 4s

149 packages are looking for funding
  run `npm fund` for details

# npm audit report

postcss  <8.4.31
Severity: moderate
PostCSS line return parsing error - https://github.com/advisories/GHSA-7fh5-64p2-3v2j
fix available via `npm audit fix --force`
Will install grunt-stylelint@0.19.0, which is a breaking change
node_modules/postcss
  autoprefixer  1.0.20131222 - 9.8.8
  Depends on vulnerable versions of postcss
  node_modules/autoprefixer
    stylelint  0.1.0 - 13.13.1
    Depends on vulnerable versions of autoprefixer
    Depends on vulnerable versions of postcss
    Depends on vulnerable versions of postcss-less
    Depends on vulnerable versions of postcss-safe-parser
    Depends on vulnerable versions of postcss-sass
    Depends on vulnerable versions of postcss-scss
    Depends on vulnerable versions of sugarss
    node_modules/stylelint
      grunt-stylelint  <=0.16.0
      Depends on vulnerable versions of stylelint
      node_modules/grunt-stylelint
      stylelint-config-wikimedia  <=0.11.1
      Depends on vulnerable versions of stylelint
      node_modules/stylelint-config-wikimedia
  postcss-less  <=3.1.4
  Depends on vulnerable versions of postcss
  node_modules/postcss-less
  postcss-safe-parser  <=4.0.2
  Depends on vulnerable versions of postcss
  node_modules/postcss-safe-parser
  postcss-sass  <=0.4.4
  Depends on vulnerable versions of postcss
  node_modules/postcss-sass
  postcss-scss  <=2.1.1
  Depends on vulnerable versions of postcss
  node_modules/postcss-scss
  sugarss  <=2.0.0
  Depends on vulnerable versions of postcss
  node_modules/sugarss

request  *
Severity: moderate
Server-Side Request Forgery in Request - https://github.com/advisories/GHSA-p8p7-x288-28g6
Depends on vulnerable versions of tough-cookie
fix available via `npm audit fix --force`
Will install wdio-mediawiki@2.5.0, which is a breaking change
node_modules/request
  mwbot  >=0.1.6
  Depends on vulnerable versions of request
  Depends on vulnerable versions of semver
  node_modules/mwbot
    wdio-mediawiki  1.1.0 - 2.2.0
    Depends on vulnerable versions of mwbot
    node_modules/wdio-mediawiki
      wdio-wikibase  5.1.0 - 5.2.0
      Depends on vulnerable versions of wdio-mediawiki
      node_modules/wdio-wikibase

semver  7.0.0 - 7.5.1
Severity: moderate
semver vulnerable to Regular Expression Denial of Service - https://github.com/advisories/GHSA-c2qf-rxjj-qqgw
fix available via `npm audit fix --force`
Will install wdio-mediawiki@2.5.0, which is a breaking change
node_modules/mwbot/node_modules/semver

tough-cookie  <4.1.3
Severity: moderate
tough-cookie Prototype Pollution vulnerability - https://github.com/advisories/GHSA-72xf-g2v4-qvf3
fix available via `npm audit fix --force`
Will install wdio-mediawiki@2.5.0, which is a breaking change
node_modules/tough-cookie

16 moderate severity vulnerabilities

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 ---
$ package-lock-lint package-lock.json
--- stdout ---
Checking package-lock.json

--- end ---
Verifying that tests still pass
$ /usr/bin/npm ci
--- stderr ---
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@es-joy/jsdoccomment@0.20.1',
npm WARN EBADENGINE   required: { node: '^12 || ^14 || ^16 || ^17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'eslint-plugin-jsdoc@37.9.7',
npm WARN EBADENGINE   required: { node: '^12 || ^14 || ^16 || ^17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN deprecated @stylelint/postcss-markdown@0.36.2: Use the original unforked package instead: postcss-markdown
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated formidable@1.2.6: Please upgrade to latest, formidable@v2 or formidable@v3! Check these notes: https://bit.ly/2ZEqIau
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated superagent@6.1.0: Please upgrade to v7.0.2+ of superagent.  We have fixed numerous issues with streams, form-data, attach(), filesystem errors not bubbling up (ENOENT on attach()), and all tests are now passing.  See the releases tab for more information at <https://github.com/visionmedia/superagent/releases>.
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@es-joy/jsdoccomment@0.20.1',
npm WARN EBADENGINE   required: { node: '^12 || ^14 || ^16 || ^17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'eslint-plugin-jsdoc@37.9.7',
npm WARN EBADENGINE   required: { node: '^12 || ^14 || ^16 || ^17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'eslint-plugin-jsdoc@38.0.6',
npm WARN EBADENGINE   required: { node: '^12 || ^14 || ^16 || ^17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@es-joy/jsdoccomment@0.22.1',
npm WARN EBADENGINE   required: { node: '^12 || ^14 || ^16 || ^17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@achrinza/node-ipc@9.2.2',
npm WARN EBADENGINE   required: { node: '8 || 10 || 12 || 14 || 16 || 17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@es-joy/jsdoccomment@0.23.6',
npm WARN EBADENGINE   required: { node: '^12 || ^14 || ^16 || ^17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: 'eslint-plugin-jsdoc@39.2.2',
npm WARN EBADENGINE   required: { node: '^14 || ^16 || ^17' },
npm WARN EBADENGINE   current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN ERESOLVE overriding peer dependency
npm WARN While resolving: cache-loader@4.1.0
npm WARN Found: webpack@5.66.0
npm WARN node_modules/webpack
npm WARN   peer webpack@"^4.0.0 || ^5.0.0" from @soda/friendly-errors-webpack-plugin@1.8.1
npm WARN   node_modules/@soda/friendly-errors-webpack-plugin
npm WARN     @soda/friendly-errors-webpack-plugin@"^1.8.0" from @vue/cli-service@5.0.0-rc.2
npm WARN     node_modules/@vue/cli-service
npm WARN   50 more (@storybook/addon-docs, @storybook/builder-webpack5, ...)
npm WARN 
npm WARN Could not resolve dependency:
npm WARN peer webpack@"^4.0.0" from cache-loader@4.1.0
npm WARN node_modules/cache-loader
npm WARN   cache-loader@"^4.1.0" from @vue/cli-plugin-typescript@5.0.0-rc.2
npm WARN   node_modules/@vue/cli-plugin-typescript
npm WARN   1 more (@vue/cli-service)
npm WARN 
npm WARN Conflicting peer dependency: webpack@4.47.0
npm WARN node_modules/webpack
npm WARN   peer webpack@"^4.0.0" from cache-loader@4.1.0
npm WARN   node_modules/cache-loader
npm WARN     cache-loader@"^4.1.0" from @vue/cli-plugin-typescript@5.0.0-rc.2
npm WARN     node_modules/@vue/cli-plugin-typescript
npm WARN     1 more (@vue/cli-service)
npm WARN deprecated formidable@1.2.6: Please upgrade to latest, formidable@v2 or formidable@v3! Check these notes: https://bit.ly/2ZEqIau
npm WARN deprecated querystring@0.2.0: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
npm WARN deprecated superagent@6.1.0: Please upgrade to v7.0.2+ of superagent.  We have fixed numerous issues with streams, form-data, attach(), filesystem errors not bubbling up (ENOENT on attach()), and all tests are now passing.  See the releases tab for more information at <https://github.com/visionmedia/superagent/releases>.
npm WARN deprecated stylelint-processor-html@1.0.0: Please use stylelint-processor-arbitrary-tags https://github.com/mapbox/stylelint-processor-arbitrary-tags 
npm WARN deprecated stable@0.1.8: Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility
npm WARN deprecated source-map-url@0.4.1: See https://github.com/lydell/source-map-url#deprecated
npm WARN deprecated @babel/plugin-proposal-class-properties@7.18.6: This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-properties instead.
npm WARN deprecated figgy-pudding@3.5.2: This module is no longer supported.
npm WARN deprecated @stylelint/postcss-markdown@0.36.2: Use the original unforked package instead: postcss-markdown
npm WARN deprecated @hapi/topo@3.1.6: This version has been deprecated and is no longer supported or maintained
npm WARN deprecated @hapi/bourne@1.3.2: This version has been deprecated and is no longer supported or maintained
npm WARN deprecated urix@0.1.0: Please see https://github.com/lydell/urix#deprecated
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated abab@2.0.6: Use your platform's native atob() and btoa() methods instead
npm WARN deprecated resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated
npm WARN deprecated consolidate@0.15.1: Please upgrade to consolidate v1.0.0+ as it has been modernized with several long-awaited fixes implemented. Maintenance is supported by Forward Email at https://forwardemail.net ; follow/watch https://github.com/ladjs/consolidate for updates and release changelog
npm WARN deprecated wikimedia-ui-base@0.15.0: Package no longer supported. Please use @wikimedia/codex-design-tokens instead.
npm WARN deprecated source-map-resolve@0.5.3: See https://github.com/lydell/source-map-resolve#deprecated
npm WARN deprecated domexception@2.0.1: Use your platform's native DOMException instead
npm WARN deprecated w3c-hr-time@1.0.2: Use your platform's native performance.now() and performance.timeOrigin.
npm WARN deprecated sourcemap-codec@1.4.8: Please use @jridgewell/sourcemap-codec instead
npm WARN deprecated chokidar@2.1.8: Chokidar 2 does not receive security updates since 2019. Upgrade to chokidar 3 with 15x fewer dependencies
npm WARN deprecated html-webpack-plugin@3.2.0: 3.x is no longer supported
npm WARN deprecated babel-eslint@10.1.0: babel-eslint is now @babel/eslint-parser. This package will no longer receive updates.
npm WARN deprecated @hapi/address@2.1.4: Moved to 'npm install @sideway/address'
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated @stylelint/postcss-css-in-js@0.37.3: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.
npm WARN deprecated webpack-chain@6.5.1: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated @hapi/hoek@8.5.1: This version has been deprecated and is no longer supported or maintained
npm WARN deprecated @hapi/joi@15.1.1: Switch to 'npm install joi'
npm WARN deprecated svgo@1.3.2: This SVGO version is no longer supported. Upgrade to v2.x.x.
npm WARN deprecated popper.js@1.16.1: You can find the new Popper v2 at @popperjs/core, this package is dedicated to the legacy v1
npm WARN deprecated @types/webpack-dev-server@4.7.2: This is a stub types definition. webpack-dev-server provides its own type definitions, so you do not need this installed.
npm WARN deprecated stylelint-processor-html@1.0.0: Please use stylelint-processor-arbitrary-tags https://github.com/mapbox/stylelint-processor-arbitrary-tags 
npm WARN deprecated source-map-url@0.4.1: See https://github.com/lydell/source-map-url#deprecated
npm WARN deprecated @stylelint/postcss-markdown@0.36.2: Use the original unforked package instead: postcss-markdown
npm WARN deprecated urix@0.1.0: Please see https://github.com/lydell/urix#deprecated
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated resolve-url@0.2.1: https://github.com/lydell/resolve-url#deprecated
npm WARN deprecated source-map-resolve@0.5.3: See https://github.com/lydell/source-map-resolve#deprecated
npm WARN deprecated querystring@0.2.1: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
npm WARN deprecated sane@4.1.0: some dependency vulnerabilities fixed, support for node < 10 dropped, and newer ECMAScript syntax/features added
npm WARN deprecated chokidar@2.1.8: Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies.
npm WARN deprecated querystring@0.2.0: The querystring API is considered Legacy. new code should use the URLSearchParams API instead.
npm WARN deprecated babel-eslint@10.1.0: babel-eslint is now @babel/eslint-parser. This package will no longer receive updates.
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated intl-messageformat-parser@1.8.1: We've written a new parser that's 6x faster and is backwards compatible. Please use @formatjs/icu-messageformat-parser
npm WARN deprecated uuid@3.3.2: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated popper.js@1.16.1: You can find the new Popper v2 at @popperjs/core, this package is dedicated to the legacy v1
--- stdout ---

> Wikibase@0.1.0 postinstall
> npm-run-all -p install:*


> Wikibase@0.1.0 install:rest-api
> npm --prefix repo/rest-api ci


> Wikibase@0.1.0 install:tainted-ref
> npm --prefix view/lib/wikibase-tainted-ref ci


> Wikibase@0.1.0 install:bridge
> npm --prefix client/data-bridge ci


added 911 packages, and audited 912 packages in 4m

145 packages are looking for funding
  run `npm fund` for details

22 vulnerabilities (13 moderate, 7 high, 2 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.

> tainted-ref@0.1.0 prepare
> node build/wikimedia-ui-base.js


added 2575 packages, and audited 2576 packages in 5m

241 packages are looking for funding
  run `npm fund` for details

90 vulnerabilities (1 low, 63 moderate, 21 high, 5 critical)

To address issues that do not require attention, run:
  npm audit fix

To address all issues possible (including breaking changes), run:
  npm audit fix --force

Some issues need review, and may require choosing
a different dependency.

Run `npm audit` for details.

> data-bridge@0.1.0 prepare
> node build/wikimedia-ui-base.js


added 3458 packages, and audited 3459 packages in 6m

341 packages are looking for funding
  run `npm fund` for details

97 vulnerabilities (41 moderate, 49 high, 7 critical)

To address issues that do not require attention, run:
  npm audit fix

To address all issues possible (including breaking changes), run:
  npm audit fix --force

Some issues need review, and may require choosing
a different dependency.

Run `npm audit` for details.

added 919 packages, and audited 920 packages in 6m

149 packages are looking for funding
  run `npm fund` for details

16 moderate severity vulnerabilities

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/unit/StatementTracker.spec.ts
PASS tests/unit/MWHookHandler.spec.ts
PASS tests/unit/TaintedIcon.spec.ts
PASS tests/unit/TaintedPopper.spec.ts
PASS tests/unit/store/getters.spec.ts
PASS tests/unit/store/index.spec.ts
PASS tests/unit/App.spec.ts
PASS tests/unit/Popper.spec.ts
PASS tests/unit/ReferenceListChangeCounter.spec.ts
PASS tests/unit/TaintedChecker.spec.ts
PASS tests/unit/store/mutations.spec.ts
PASS tests/unit/store/actions.spec.ts

Test Suites: 12 passed, 12 total
Tests:       68 passed, 68 total
Snapshots:   0 total
Time:        13.201 s
Ran all test suites.
PASS tests/unit/store/getters.spec.ts
PASS tests/unit/presentation/components/ErrorPermission.spec.ts (5.072 s)
PASS tests/unit/store/actions.spec.ts (5.106 s)
PASS tests/unit/mediawiki/init.spec.ts
PASS tests/unit/presentation/components/ErrorWrapper.spec.ts
PASS tests/unit/store/mutations.spec.ts
PASS tests/unit/presentation/App.spec.ts
PASS tests/unit/data-access/ApiEntityLabelRepository.spec.ts
PASS tests/unit/presentation/components/AppHeader.spec.ts
PASS tests/unit/presentation/components/ErrorSaving.spec.ts
PASS tests/unit/data-access/ApiRepoConfigRepository.spec.ts
PASS tests/unit/presentation/components/ErrorSavingAssertUser.spec.ts
PASS tests/unit/presentation/components/ErrorDeprecatedStatement.spec.ts
PASS tests/unit/presentation/components/ErrorUnsupportedSnakType.spec.ts
PASS tests/unit/mediawiki/Dispatcher.spec.ts
PASS tests/unit/presentation/components/Loading.spec.ts
PASS tests/unit/data-access/BatchingApi.spec.ts
PASS tests/unit/main.spec.ts
PASS tests/unit/presentation/components/EditDecision.spec.ts
PASS tests/unit/data-access/ApiPageEditPermissionErrorsRepository.spec.ts
PASS tests/unit/data-access/ApiPropertyDataTypeRepository.spec.ts
[Vue warn]: Invalid prop: custom validator check failed for prop "type". 
  at <EventEmittingButton type="potato" size="L" message="click me"  ... > 
  at <VTUROOT>
PASS tests/unit/presentation/components/EventEmittingButton.spec.ts
PASS tests/unit/presentation/components/ReferenceSection.spec.ts
PASS tests/unit/data-access/ApiCore.spec.ts
PASS tests/unit/presentation/components/ErrorUnknown.spec.ts
PASS tests/unit/presentation/components/ErrorAmbiguousStatement.spec.ts
PASS tests/unit/timer.spec.ts
PASS tests/unit/data-access/ApiWbgetentities.spec.ts
PASS tests/unit/services/createServices.spec.ts
PASS tests/unit/mediawiki/prepareContainer.spec.ts
PASS tests/unit/store/statements/getters.spec.ts
PASS tests/unit/presentation/components/ResizingTextField.spec.ts
PASS tests/unit/mediawiki/BridgeDomElementsSelector.spec.ts
PASS tests/unit/change-op/statement-mutation/strategies/UpdateMutationStrategy.spec.ts
PASS tests/unit/presentation/components/StringDataValue.spec.ts
PASS tests/unit/data-access/TrimmingWritingRepository.spec.ts
PASS tests/unit/presentation/components/ReportIssue.spec.ts
PASS tests/unit/data-access/ApiWritingRepository.spec.ts
PASS tests/unit/presentation/components/ErrorUnsupportedDatatype.spec.ts
PASS tests/unit/presentation/components/PropertyLabel.spec.ts
PASS tests/unit/presentation/components/ErrorPermissionInfo.spec.ts
PASS tests/unit/presentation/components/DataBridge.spec.ts
PASS tests/unit/store/entity/actions.spec.ts
PASS tests/unit/data-access/ApiPurge.spec.ts
PASS tests/unit/presentation/components/License.spec.ts
PASS tests/unit/data-access/SpecialPageReadingEntityRepository.spec.ts
PASS tests/unit/presentation/components/RadioInput.spec.ts
PASS tests/unit/data-access/ApiRenderReferencesRepository.spec.ts
PASS tests/unit/data-access/CombiningPermissionsRepository.spec.ts
PASS tests/unit/presentation/components/TermLabel.spec.ts
PASS tests/unit/presentation/plugins/MessagesPlugin/Messages.spec.ts
PASS tests/unit/store/statements/mutations.spec.ts
PASS tests/unit/mediawiki/MwInitTracker.spec.ts
PASS tests/unit/store/statements/MainSnakPath.spec.ts
[Vue warn]: Invalid prop: custom validator check failed for prop "type". 
  at <IconMessageBox type="potato" ref="VTU_COMPONENT" > 
  at <VTUROOT>
PASS tests/unit/presentation/IconMessageBox.spec.ts
PASS tests/unit/data-access/RepoRouter.spec.ts
PASS tests/unit/store/entity/mutations.spec.ts
PASS tests/unit/data-access/ApiQuery.spec.ts
PASS tests/unit/presentation/components/WarningAnonymousEdit.spec.ts
PASS tests/unit/mediawiki/subscribeToEvents.spec.ts
PASS tests/unit/presentation/components/ProcessDialogHeader.spec.ts
PASS tests/unit/presentation/components/BailoutActions.spec.ts
PASS tests/unit/presentation/components/UserLink.spec.ts
PASS tests/unit/presentation/components/ThankYou.spec.ts
PASS tests/unit/presentation/components/PageList.spec.ts
PASS tests/unit/store/statements/actions.spec.ts
PASS tests/unit/change-op/statement-mutation/strategies/ReplaceMutationStrategy.spec.ts
PASS tests/unit/presentation/components/ErrorSavingEditConflict.spec.ts
PASS tests/unit/presentation/components/RadioGroup.spec.ts
PASS tests/unit/presentation/extendVueEnvironment.spec.ts
PASS tests/unit/presentation/components/IndeterminateProgressBar.spec.ts
PASS tests/unit/store/newMockableEntityRevision.spec.ts
PASS tests/unit/presentation/plugins/InLanguagePlugin/InLanguagePlugin.spec.ts
PASS tests/unit/services/ServiceContainer.spec.ts
PASS tests/unit/tracking/mutationsTrackerPlugin.spec.ts
PASS tests/unit/store/index.spec.ts
PASS tests/unit/mediawiki/facades/EventTracker.spec.ts
PASS tests/unit/tracking/PrefixingEventTracker.spec.ts
PASS tests/unit/utils/errorTypeFormatter.spec.ts
PASS tests/unit/data-access/ClientRouter.spec.ts
PASS tests/unit/data-access/MwMessagesRepository.spec.ts
PASS tests/unit/presentation/plugins/RepoRouter/RepoRouterPlugin.spec.ts
PASS tests/unit/data-access/MwLanguageInfoRepository.spec.ts
PASS tests/unit/data-access/ApiReadingEntityRepository.spec.ts
PASS tests/unit/change-op/statement-mutation/statementMutationFactory.spec.ts
PASS tests/unit/store/clone.spec.ts
PASS tests/unit/data-access/DataBridgeTrackerService.spec.ts

Test Suites: 87 passed, 87 total
Tests:       615 passed, 615 total
Snapshots:   12 passed, 12 total
Time:        19.018 s, estimated 32 s
Ran all test suites.
PASS tests/integration/mediawiki/init.spec.ts
PASS tests/integration/store/actions.spec.ts

Test Suites: 2 passed, 2 total
Tests:       16 passed, 16 total
Snapshots:   0 total
Time:        5.32 s, estimated 7 s
Ran all test suites.
PASS tests/e2e/app.spec.ts
PASS tests/e2e/StringDataValue.spec.ts

Test Suites: 2 passed, 2 total
Tests:       29 passed, 29 total
Snapshots:   0 total
Time:        5.859 s, estimated 11 s
Ran all test suites.
-  Building for production...
(node:2407) [DEP_WEBPACK_COMPILATION_OPTIMIZE_CHUNK_ASSETS] DeprecationWarning: optimizeChunkAssets is deprecated (use Compilation.hooks.processAssets instead and use one of Compilation.PROCESS_ASSETS_STAGE_* as stage option)
(Use `node --trace-deprecation ...` to show where the warning was created)
(node:2407) [DEP_WEBPACK_COMPILATION_CACHE] DeprecationWarning: Compilation.cache was removed in favor of Compilation.getCache()
info @storybook/vue3 v6.4.13
info 
info => Loading presets
info => Using implicit CSS loaders
info => Loading custom Webpack config (full-control mode).
<i> [webpack-dev-middleware] wait until bundle finished
info => Ignoring cached manager due to change in manager config
<i> [webpack-dev-middleware] wait until bundle finished
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
Though the "loose" option was set to "false" in your @babel/preset-env config, it will not be used for @babel/plugin-proposal-private-property-in-object since the "loose" mode option was set to "true" for @babel/plugin-proposal-private-methods.
The "loose" option must be the same for @babel/plugin-proposal-class-properties, @babel/plugin-proposal-private-methods and @babel/plugin-proposal-private-property-in-object (when they are enabled): you can silence this warning by explicitly adding
	["@babel/plugin-proposal-private-property-in-object", { "loose": true }]
to the "plugins" section of your Babel config.
--- stdout ---

> Wikibase@0.1.0 test
> npm-run-all -p test-fast:*


> Wikibase@0.1.0 test-fast:bridge
> npm --prefix client/data-bridge test


> Wikibase@0.1.0 test-fast:tainted-ref
> npm --prefix view/lib/wikibase-tainted-ref test


> Wikibase@0.1.0 test-fast:grunt
> grunt test


> Wikibase@0.1.0 test-fast:mwlibs
> echo 'disabled (T297381)' # ZUUL_BRANCH=${ZUUL_BRANCH:-master} lib-version-check

disabled (T297381)

> Wikibase@0.1.0 test-fast:rest-api
> npm --prefix repo/rest-api test


> data-bridge@0.1.0 test
> npm-run-all test:*


> tainted-ref@0.1.0 test
> npm-run-all test:*


> wikibase-rest-api-specs@0.1.0 test
> npm run lint


> wikibase-rest-api-specs@0.1.0 lint
> npm-run-all --parallel lint:*

Running "eslint:all" (eslint) task

> data-bridge@0.1.0 test:lint
> vue-cli-service lint --max-warnings 0 --no-fix . && stylelint --syntax scss 'src/**/*.(vue|scss)'


> wikibase-rest-api-specs@0.1.0 lint:openapi
> swagger-cli validate specs/openapi.json


> tainted-ref@0.1.0 test:unit
> vue-cli-service test:unit -c ./jest.config.js


> wikibase-rest-api-specs@0.1.0 lint:eslint
> eslint . --max-warnings 0

specs/openapi.json is valid

/src/repo/build/dist-size/web/lib/main.js
  33:1  warning  This line has a length of 107. Maximum allowed is 100  max-len

/src/repo/client/resources/jquery.ui/jquery.ui.ooMenu.js
   85:0  warning  Missing JSDoc @param "key" type    jsdoc/require-param-type
   86:0  warning  Missing JSDoc @param "value" type  jsdoc/require-param-type
  382:0  warning  Missing JSDoc @param "event" type  jsdoc/require-param-type
  540:0  warning  Missing JSDoc @param "menu" type   jsdoc/require-param-type

/src/repo/client/resources/jquery.ui/jquery.ui.suggester.js
  241:3  warning  Missing JSDoc @return declaration        jsdoc/require-returns
  242:0  warning  Missing JSDoc @param "key" type          jsdoc/require-param-type
  243:0  warning  Missing JSDoc @param "value" type        jsdoc/require-param-type
  526:3  warning  Found more than one @return declaration  jsdoc/require-returns
  526:3  warning  Found more than one @return declaration  jsdoc/require-returns-check
  644:3  warning  Found more than one @return declaration  jsdoc/require-returns
  644:3  warning  Found more than one @return declaration  jsdoc/require-returns-check
  665:3  warning  Found more than one @return declaration  jsdoc/require-returns
  665:3  warning  Found more than one @return declaration  jsdoc/require-returns-check

/src/repo/client/resources/jquery.wikibase/jquery.wikibase.linkitem.js
  26:0  warning  Invalid JSDoc tag name "option"         jsdoc/check-tag-names
  28:0  warning  Invalid JSDoc tag name "option"         jsdoc/check-tag-names
  30:0  warning  Invalid JSDoc tag name "option"         jsdoc/check-tag-names
  32:0  warning  Invalid JSDoc tag name "option"         jsdoc/check-tag-names
  35:0  warning  Invalid JSDoc tag name "option"         jsdoc/check-tag-names
  37:0  warning  Invalid JSDoc tag name "option"         jsdoc/check-tag-names
  39:0  warning  Syntax error in namepath: dialogclose:  jsdoc/valid-types
  42:0  warning  Syntax error in namepath: success:      jsdoc/valid-types
  49:0  warning  Tag @type must have a type              jsdoc/valid-types
  56:0  warning  Tag @type must have a type              jsdoc/valid-types
  63:0  warning  Tag @type must have a type              jsdoc/valid-types

/src/repo/client/resources/jquery.wikibase/jquery.wikibase.siteselector.js
   17:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   21:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  135:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  200:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  211:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/client/resources/jquery.wikibase/jquery.wikibase.wbtooltip.js
   14:0  warning  Invalid JSDoc tag name "option"       jsdoc/check-tag-names
   17:0  warning  Invalid JSDoc tag name "option"       jsdoc/check-tag-names
   21:0  warning  Invalid JSDoc tag name "option"       jsdoc/check-tag-names
   27:0  warning  Invalid JSDoc tag name "option"       jsdoc/check-tag-names
   31:0  warning  Syntax error in namepath: afterhide:  jsdoc/valid-types
  164:3  warning  Missing JSDoc @return declaration     jsdoc/require-returns
  260:0  warning  Invalid JSDoc tag name "triggers"     jsdoc/check-tag-names
  281:0  warning  Invalid JSDoc tag name "TODO:"        jsdoc/check-tag-names
  289:3  warning  Missing JSDoc @return declaration     jsdoc/require-returns

/src/repo/client/resources/wikibase.client.PageConnector.js
  36:0  warning  Tag @type must have a type  jsdoc/valid-types
  41:0  warning  Tag @type must have a type  jsdoc/valid-types
  46:0  warning  Tag @type must have a type  jsdoc/valid-types
  51:0  warning  Tag @type must have a type  jsdoc/valid-types
  56:0  warning  Tag @type must have a type  jsdoc/valid-types

/src/repo/lib/resources/wikibase.Site.js
  67:0  warning  Invalid JSDoc tag name "note:"  jsdoc/check-tag-names

/src/repo/repo/resources/jquery.wikibase/jquery.wikibase.entitysearch.js
   15:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   66:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
   84:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  122:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/repo/resources/wikibase.EntityInitializer.js
   20:0  warning  The type 'Thenable' is undefined           jsdoc/no-undefined-types
  115:0  warning  Missing JSDoc @param "configVarName" type  jsdoc/require-param-type

/src/repo/repo/resources/wikibase.ui.entityViewInit.js
  40:0  warning  The type 'CachingEntityStore' is undefined  jsdoc/no-undefined-types

/src/repo/repo/tests/qunit/wikibase.sites.tests.js
  12:0  warning  Tag @type must have a type  jsdoc/valid-types
  19:0  warning  Tag @type must have a type  jsdoc/valid-types

/src/repo/repo/tests/selenium/specs/blocked.js
  61:28  warning  Unexpected member expression in describe block. Member expressions may call functions via getters  mocha/no-setup-in-describe

/src/repo/repo/tests/selenium/specs/item.js
  13:1  warning  This line has a length of 103. Maximum allowed is 100  max-len
  48:1  warning  This line has a length of 113. Maximum allowed is 100  max-len

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.badgeselector.js
   22:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   26:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   31:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   33:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   37:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  378:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  419:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.descriptionview.js
   16:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   18:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   95:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  175:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.entityselector.js
  339:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  360:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  412:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.entitytermsforlanguagelistview.js
   17:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   19:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  237:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  388:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.entitytermsforlanguageview.js
   15:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  177:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  187:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  216:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.entitytermsview.js
   16:0  warning  Invalid JSDoc tag name "option"      jsdoc/check-tag-names
   16:0  warning  The type 'Datamodel' is undefined    jsdoc/no-undefined-types
   18:0  warning  Invalid JSDoc tag name "option"      jsdoc/check-tag-names
   21:0  warning  Invalid JSDoc tag name "option"      jsdoc/check-tag-names
  364:3  warning  Missing JSDoc @return declaration    jsdoc/require-returns
  393:0  warning  The type 'Datamodel' is undefined    jsdoc/no-undefined-types
  394:0  warning  The type 'Fingerprint' is undefined  jsdoc/no-undefined-types

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.listview.js
  288:3  warning  Found more than one @return declaration  jsdoc/require-returns
  288:3  warning  Found more than one @return declaration  jsdoc/require-returns-check

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.pagesuggester.js
  11:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  13:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  65:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.referenceview.js
  228:3  warning  Missing JSDoc @return declaration        jsdoc/require-returns
  246:3  warning  Missing JSDoc @return declaration        jsdoc/require-returns
  287:3  warning  Found more than one @return declaration  jsdoc/require-returns
  287:3  warning  Found more than one @return declaration  jsdoc/require-returns-check

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.sitelinkgrouplistview.js
  100:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  101:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  168:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.sitelinkgroupview.js
   29:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   30:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   31:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   33:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  112:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  235:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.sitelinklistview.js
   26:0  warning  Invalid JSDoc tag name "option"          jsdoc/check-tag-names
   29:0  warning  Invalid JSDoc tag name "option"          jsdoc/check-tag-names
   32:0  warning  Invalid JSDoc tag name "option"          jsdoc/check-tag-names
   34:0  warning  Invalid JSDoc tag name "option"          jsdoc/check-tag-names
   38:0  warning  Invalid JSDoc tag name "option"          jsdoc/check-tag-names
   41:0  warning  Invalid JSDoc tag name "option"          jsdoc/check-tag-names
   97:3  warning  Missing JSDoc @return declaration        jsdoc/require-returns
  356:3  warning  Missing JSDoc @return declaration        jsdoc/require-returns
  463:3  warning  Missing JSDoc @return declaration        jsdoc/require-returns
  479:3  warning  Found more than one @return declaration  jsdoc/require-returns
  479:3  warning  Found more than one @return declaration  jsdoc/require-returns-check

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.sitelinkview.js
   18:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   21:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   25:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  358:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  437:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.siteselector.js
   14:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   18:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  132:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  197:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  208:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.snaklistview.js
  184:3  warning  Missing JSDoc @return declaration        jsdoc/require-returns
  234:3  warning  Found more than one @return declaration  jsdoc/require-returns
  234:3  warning  Found more than one @return declaration  jsdoc/require-returns-check

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.statementgrouplistview.js
   22:0  warning  The type 'jquery' is undefined           jsdoc/no-undefined-types
   94:3  warning  Missing JSDoc @return declaration        jsdoc/require-returns
  124:3  warning  Found more than one @return declaration  jsdoc/require-returns
  124:3  warning  Found more than one @return declaration  jsdoc/require-returns-check

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.statementgroupview.js
  225:3  warning  Found more than one @return declaration  jsdoc/require-returns
  225:3  warning  Found more than one @return declaration  jsdoc/require-returns-check

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.statementlistview.js
  188:3  warning  Found more than one @return declaration  jsdoc/require-returns
  188:3  warning  Found more than one @return declaration  jsdoc/require-returns-check

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.statementview.js
  680:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.wbtooltip.js
   14:0  warning  Invalid JSDoc tag name "option"       jsdoc/check-tag-names
   17:0  warning  Invalid JSDoc tag name "option"       jsdoc/check-tag-names
   21:0  warning  Invalid JSDoc tag name "option"       jsdoc/check-tag-names
   27:0  warning  Invalid JSDoc tag name "option"       jsdoc/check-tag-names
   31:0  warning  Syntax error in namepath: afterhide:  jsdoc/valid-types
  164:3  warning  Missing JSDoc @return declaration     jsdoc/require-returns
  260:0  warning  Invalid JSDoc tag name "triggers"     jsdoc/check-tag-names
  281:0  warning  Invalid JSDoc tag name "TODO:"        jsdoc/check-tag-names
  288:3  warning  Missing JSDoc @return declaration     jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/snakview/snakview.js
  341:3  warning  Missing JSDoc @return declaration        jsdoc/require-returns
  646:3  warning  Found more than one @return declaration  jsdoc/require-returns
  646:3  warning  Found more than one @return declaration  jsdoc/require-returns-check
  679:3  warning  Found more than one @return declaration  jsdoc/require-returns
  679:3  warning  Found more than one @return declaration  jsdoc/require-returns-check

/src/repo/view/resources/jquery/wikibase/toolbar/jquery.wikibase.addtoolbar.js
  17:0  warning  Invalid JSDoc tag name "option"  jsdoc/check-tag-names
  20:0  warning  Invalid JSDoc tag name "option"  jsdoc/check-tag-names

/src/repo/view/resources/jquery/wikibase/toolbar/jquery.wikibase.edittoolbar.js
   24:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   26:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  407:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/toolbar/jquery.wikibase.singlebuttontoolbar.js
  17:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  20:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  23:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  26:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  29:0  warning  Syntax error in namepath: <custom  jsdoc/valid-types

/src/repo/view/resources/jquery/wikibase/toolbar/jquery.wikibase.toolbar.js
   18:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  122:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/toolbar/jquery.wikibase.toolbarbutton.js
  17:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  86:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/wikibase/store/store.ApiEntityStore.js
  45:4  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/wikibase/store/store.CachingEntityStore.js
  36:4  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/wikibase/store/store.CombiningEntityStore.js
  10:2  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  52:4  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/wikibase/utilities/wikibase.utilities.GuidGenerator.js
  46:4  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/wikibase/view/ToolbarViewController.js
  161:2  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  211:2  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/tests/qunit/wikibase/entityChangers/EntityTermsChanger.tests.js
  19:0  warning  The type 'createFingerprint' is undefined  jsdoc/no-undefined-types

/src/repo/view/tests/qunit/wikibase/wikibase.tests.js
  16:0  warning  Tag @type must have a type  jsdoc/valid-types

✖ 174 problems (0 errors, 174 warnings)


Running "banana:all" (banana) task
>> 5 message directories checked.

Running "stylelint:all" (stylelint) task

> tainted-ref@0.1.0 test:lint
> vue-cli-service lint --max-warnings 0 --no-fix . && stylelint --syntax scss 'src/**/*.(vue|scss)'

 DONE  No lint errors found!

> data-bridge@0.1.0 test:unit
> vue-cli-service test:unit -c ./jest.config.unit.js

 DONE  No lint errors found!
>> Linted 36 files without errors

Done.

> tainted-ref@0.1.0 test:mwlibs
> echo 'disabled (T297381)' # ZUUL_BRANCH=${ZUUL_BRANCH:-master} lib-version-check

disabled (T297381)

> data-bridge@0.1.0 test:integration
> vue-cli-service test:unit -c ./jest.config.integration.js


> data-bridge@0.1.0 test:e2e
> vue-cli-service test:unit -c ./jest.config.e2e.js


> data-bridge@0.1.0 test:distnodiff
> npm run build -- --dest /tmp/dist && diff -q ./dist/data-bridge.app.js /tmp/dist/data-bridge.app.js && diff -q ./dist/css/data-bridge.app.css /tmp/dist/css/data-bridge.app.css && diff -q ./dist/data-bridge.init.js /tmp/dist/data-bridge.init.js && diff -q ./dist/data-bridge.chunk-vendors.js /tmp/dist/data-bridge.chunk-vendors.js


> data-bridge@0.1.0 build
> NODE_ENV=production vue-cli-service build --no-clean --skip-plugins eslint --report --report-json --no-module --dest /tmp/dist


 DONE  Compiled successfully in 15228ms3:26:30 PM

  File                                      Size             Gzipped

  ../../../../tmp/dist/data-bridge.app.j    167.15 KiB       44.19 KiB
  s
  ../../../../tmp/dist/data-bridge.chunk    27.66 KiB        10.26 KiB
  -vendors.js
  ../../../../tmp/dist/data-bridge.init.    9.38 KiB         4.05 KiB
  js
  ../../../../tmp/dist/css/data-bridge.a    25.56 KiB        4.28 KiB
  pp.css

  Images and other types of assets omitted.

 DONE  Build complete. The ../../../../tmp/dist directory is ready to be deployed.
 INFO  Check out deployment instructions at https://cli.vuejs.org/guide/deployment.html
       

> data-bridge@0.1.0 test:storybook
> CHOKIDAR_USEPOLLING=1 start-storybook --ci --smoke-test --quiet


assets by chunk 5.06 MiB (id hint: vendors)
  assets by status 4.66 MiB [big]
    asset vendors-node_modules_storybook_addon-a11y_dist_esm_register_js-node_modules_storybook_addon-a-4840cb.manager.bundle.js 4.3 MiB [emitted] [big] (id hint: vendors)
    asset vendors-node_modules_storybook_components_dist_esm_ScrollArea_OverlayScrollbars_js.manager.bundle.js 372 KiB [emitted] [big] (id hint: vendors)
  asset vendors-node_modules_storybook_components_dist_esm_syntaxhighlighter_syntaxhighlighter_js.manager.bundle.js 195 KiB [emitted] (id hint: vendors)
  asset vendors-node_modules_storybook_components_dist_esm_tooltip_WithTooltip_js.manager.bundle.js 115 KiB [emitted] (id hint: vendors)
  asset vendors-node_modules_storybook_components_dist_esm_controls_Color_js.manager.bundle.js 81 KiB [emitted] (id hint: vendors)
  asset vendors-node_modules_storybook_components_dist_esm_ScrollArea_GlobalScrollAreaStyles_js.manager.bundle.js 15.6 KiB [emitted] (id hint: vendors)
asset runtime~main.manager.bundle.js 14.1 KiB [emitted] (name: runtime~main)
asset index.html 4.79 KiB [emitted]
asset node_modules_unfetch_dist_unfetch_js.manager.bundle.js 1.28 KiB [emitted]
asset main.manager.bundle.js 1.2 KiB [emitted] (name: main)
Entrypoint main [big] 4.31 MiB = runtime~main.manager.bundle.js 14.1 KiB vendors-node_modules_storybook_addon-a11y_dist_esm_register_js-node_modules_storybook_addon-a-4840cb.manager.bundle.js 4.3 MiB main.manager.bundle.js 1.2 KiB
orphan modules 1.49 MiB [orphan] 309 modules
runtime modules 8.68 KiB 14 modules
javascript modules 4.51 MiB 847 modules
json modules 1.52 KiB
  ./node_modules/character-entities-legacy/index.json 1.24 KiB [built] [code generated]
  ./node_modules/character-reference-invalid/index.json 289 bytes [built] [code generated]
manager (webpack 5.66.0) compiled successfully in 18596 ms
webpack built preview 255c51d194c63f8e42f9 in 20914ms

> data-bridge@0.1.0 test:mwlibs
> echo 'disabled (T297381)' # ZUUL_BRANCH=${ZUUL_BRANCH:-master} lib-version-check

disabled (T297381)

--- end ---
{"1096886": {"source": 1096886, "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.4, "vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H"}, "range": "<7.23.2"}}
Upgrading n:@babel/traverse from 7.17.10 -> 7.24.1
{"1088659": {"source": 1088659, "name": "cookiejar", "dependency": "cookiejar", "title": "cookiejar Regular Expression Denial of Service via Cookie.parse function", "url": "https://github.com/advisories/GHSA-h452-7996-h45h", "severity": "moderate", "cwe": ["CWE-1333"], "cvss": {"score": 5.3, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"}, "range": "<2.1.4"}}
Upgrading n:cookiejar from 2.1.3 -> 2.1.4
{}
{"1094574": {"source": 1094574, "name": "get-func-name", "dependency": "get-func-name", "title": "Chaijs/get-func-name vulnerable to ReDoS", "url": "https://github.com/advisories/GHSA-4q6p-r6v2-jvc5", "severity": "high", "cwe": ["CWE-400", "CWE-1333"], "cvss": {"score": 7.5, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"}, "range": "<2.0.1"}}
Upgrading n:get-func-name from 2.0.0 -> 2.0.2
{"1088948": {"source": 1088948, "name": "got", "dependency": "got", "title": "Got allows a redirect to a UNIX socket", "url": "https://github.com/advisories/GHSA-pfrx-2q88-qq97", "severity": "moderate", "cwe": [], "cvss": {"score": 5.3, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N"}, "range": "<11.8.5"}}
Upgrading n:got from 11.8.3 -> 11.8.6
{"1092316": {"source": 1092316, "name": "http-cache-semantics", "dependency": "http-cache-semantics", "title": "http-cache-semantics vulnerable to Regular Expression Denial of Service", "url": "https://github.com/advisories/GHSA-rc47-6667-2j5j", "severity": "high", "cwe": ["CWE-1333"], "cvss": {"score": 7.5, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"}, "range": "<4.1.1"}}
Upgrading n:http-cache-semantics from 4.1.0 -> 4.1.1
{"1096544": {"source": 1096544, "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": ">=2.0.0 <2.2.2"}}
Upgrading n:json5 from 2.2.1 -> 2.2.3
{"1096485": {"source": 1096485, "name": "minimatch", "dependency": "minimatch", "title": "minimatch ReDoS vulnerability", "url": "https://github.com/advisories/GHSA-f8q6-p94x-37v3", "severity": "high", "cwe": ["CWE-400", "CWE-1333"], "cvss": {"score": 7.5, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"}, "range": "<3.0.5"}}
Upgrading n:minimatch from 3.0.4, 3.0.8, 3.1.2, 4.2.1, 5.0.1 -> 3.0.8, 3.1.2, 4.2.1, 5.0.1
{"1096485": {"source": 1096485, "name": "minimatch", "dependency": "minimatch", "title": "minimatch ReDoS vulnerability", "url": "https://github.com/advisories/GHSA-f8q6-p94x-37v3", "severity": "high", "cwe": ["CWE-400", "CWE-1333"], "cvss": {"score": 7.5, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"}, "range": "<3.0.5"}}
Upgrading n:recursive-readdir from 2.2.2 -> 2.2.3
{}
{"1092302": {"source": 1092302, "name": "ua-parser-js", "dependency": "ua-parser-js", "title": "ReDoS Vulnerability in ua-parser-js version", "url": "https://github.com/advisories/GHSA-fhg7-m89q-25r3", "severity": "high", "cwe": ["CWE-400", "CWE-1333"], "cvss": {"score": 7.5, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"}, "range": ">=0.8.0 <1.0.33"}}
Upgrading n:ua-parser-js from 1.0.2 -> 1.0.37
{"1095091": {"source": 1095091, "name": "word-wrap", "dependency": "word-wrap", "title": "word-wrap vulnerable to Regular Expression Denial of Service", "url": "https://github.com/advisories/GHSA-j8xg-fqg3-53r7", "severity": "moderate", "cwe": ["CWE-1333"], "cvss": {"score": 5.3, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"}, "range": "<1.2.4"}}
Upgrading n:word-wrap from 1.2.3 -> 1.2.5
$ package-lock-lint package-lock.json
--- stdout ---
Checking package-lock.json

--- end ---
build: Updating npm dependencies

* grunt: 1.4.1 → 1.5.3
* @babel/traverse: 7.17.10 → 7.24.1
  * https://github.com/advisories/GHSA-67hx-6x53-jw92
* cookiejar: 2.1.3 → 2.1.4
  * https://github.com/advisories/GHSA-h452-7996-h45h
* get-func-name: 2.0.0 → 2.0.2
  * https://github.com/advisories/GHSA-4q6p-r6v2-jvc5
* got: 11.8.3 → 11.8.6
  * https://github.com/advisories/GHSA-pfrx-2q88-qq97
* http-cache-semantics: 4.1.0 → 4.1.1
  * https://github.com/advisories/GHSA-rc47-6667-2j5j
* json5: 2.2.1 → 2.2.3
  * https://github.com/advisories/GHSA-9c47-m6qq-7p4h
* minimatch: 3.0.4, 3.0.8, 3.1.2, 4.2.1, 5.0.1 → 3.0.8, 3.1.2, 4.2.1, 5.0.1
  * https://github.com/advisories/GHSA-f8q6-p94x-37v3
* recursive-readdir: 2.2.2 → 2.2.3
  * https://github.com/advisories/GHSA-f8q6-p94x-37v3
* ua-parser-js: 1.0.2 → 1.0.37
  * https://github.com/advisories/GHSA-fhg7-m89q-25r3
* word-wrap: 1.2.3 → 1.2.5
  * https://github.com/advisories/GHSA-j8xg-fqg3-53r7

Additional changes:
* Dropped default excluded folder(s) from .phpcs.xml (T274684).

$ git add .
--- stdout ---

--- end ---
$ git commit -F /tmp/tmpoyzsgu8l
--- stdout ---
[REL1_39 c581c82] build: Updating npm dependencies
 3 files changed, 485 insertions(+), 454 deletions(-)

--- end ---
$ git format-patch HEAD~1 --stdout
--- stdout ---
From c581c82fc3c79c33d28b7a4afc54100b36346639 Mon Sep 17 00:00:00 2001
From: libraryupgrader <tools.libraryupgrader@tools.wmflabs.org>
Date: Sun, 28 Apr 2024 15:27:04 +0000
Subject: [PATCH] build: Updating npm dependencies
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

* grunt: 1.4.1 → 1.5.3
* @babel/traverse: 7.17.10 → 7.24.1
  * https://github.com/advisories/GHSA-67hx-6x53-jw92
* cookiejar: 2.1.3 → 2.1.4
  * https://github.com/advisories/GHSA-h452-7996-h45h
* get-func-name: 2.0.0 → 2.0.2
  * https://github.com/advisories/GHSA-4q6p-r6v2-jvc5
* got: 11.8.3 → 11.8.6
  * https://github.com/advisories/GHSA-pfrx-2q88-qq97
* http-cache-semantics: 4.1.0 → 4.1.1
  * https://github.com/advisories/GHSA-rc47-6667-2j5j
* json5: 2.2.1 → 2.2.3
  * https://github.com/advisories/GHSA-9c47-m6qq-7p4h
* minimatch: 3.0.4, 3.0.8, 3.1.2, 4.2.1, 5.0.1 → 3.0.8, 3.1.2, 4.2.1, 5.0.1
  * https://github.com/advisories/GHSA-f8q6-p94x-37v3
* recursive-readdir: 2.2.2 → 2.2.3
  * https://github.com/advisories/GHSA-f8q6-p94x-37v3
* ua-parser-js: 1.0.2 → 1.0.37
  * https://github.com/advisories/GHSA-fhg7-m89q-25r3
* word-wrap: 1.2.3 → 1.2.5
  * https://github.com/advisories/GHSA-j8xg-fqg3-53r7

Additional changes:
* Dropped default excluded folder(s) from .phpcs.xml (T274684).

Change-Id: I8c05aca451640d3f02382e2d6e74a32563487331
---
 .phpcs.xml        |   1 -
 package-lock.json | 936 ++++++++++++++++++++++++----------------------
 package.json      |   2 +-
 3 files changed, 485 insertions(+), 454 deletions(-)

diff --git a/.phpcs.xml b/.phpcs.xml
index e4cae46..754f0a8 100644
--- a/.phpcs.xml
+++ b/.phpcs.xml
@@ -142,6 +142,5 @@
 	<exclude-pattern>.phan/stubs</exclude-pattern>
 	<exclude-pattern>repo/tests/browser</exclude-pattern>
 	<exclude-pattern>view/lib/wikibase-api/WikibaseJavaScriptApi.php</exclude-pattern>
-	<exclude-pattern>node_modules/*</exclude-pattern>
 	<exclude-pattern type="relative">^extensions/</exclude-pattern>
 </ruleset>
diff --git a/package-lock.json b/package-lock.json
index 36d3d40..5f8d501 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -18,7 +18,7 @@
 				"apollo-boost": "^0.4.9",
 				"cross-fetch": "^3.1.5",
 				"eslint-config-wikimedia": "0.22.1",
-				"grunt": "1.4.1",
+				"grunt": "1.5.3",
 				"grunt-banana-checker": "0.9.0",
 				"grunt-eslint": "24.0.0",
 				"grunt-stylelint": "0.16.0",
@@ -45,12 +45,13 @@
 			}
 		},
 		"node_modules/@babel/code-frame": {
-			"version": "7.16.7",
-			"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz",
-			"integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==",
+			"version": "7.24.2",
+			"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz",
+			"integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==",
 			"dev": true,
 			"dependencies": {
-				"@babel/highlight": "^7.16.7"
+				"@babel/highlight": "^7.24.2",
+				"picocolors": "^1.0.0"
 			},
 			"engines": {
 				"node": ">=6.9.0"
@@ -96,28 +97,43 @@
 			}
 		},
 		"node_modules/@babel/core/node_modules/semver": {
-			"version": "6.3.0",
-			"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
-			"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+			"version": "6.3.1",
+			"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+			"integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
 			"dev": true,
 			"bin": {
 				"semver": "bin/semver.js"
 			}
 		},
 		"node_modules/@babel/generator": {
-			"version": "7.17.10",
-			"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.10.tgz",
-			"integrity": "sha512-46MJZZo9y3o4kmhBVc7zW7i8dtR1oIK/sdO5NcfcZRhTGYi+KKJRtHNgsU6c4VUcJmUNV/LQdebD/9Dlv4K+Tg==",
+			"version": "7.24.4",
+			"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz",
+			"integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==",
 			"dev": true,
 			"dependencies": {
-				"@babel/types": "^7.17.10",
-				"@jridgewell/gen-mapping": "^0.1.0",
+				"@babel/types": "^7.24.0",
+				"@jridgewell/gen-mapping": "^0.3.5",
+				"@jridgewell/trace-mapping": "^0.3.25",
 				"jsesc": "^2.5.1"
 			},
 			"engines": {
 				"node": ">=6.9.0"
 			}
 		},
+		"node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": {
+			"version": "0.3.5",
+			"resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
+			"integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
+			"dev": true,
+			"dependencies": {
+				"@jridgewell/set-array": "^1.2.1",
+				"@jridgewell/sourcemap-codec": "^1.4.10",
+				"@jridgewell/trace-mapping": "^0.3.24"
+			},
+			"engines": {
+				"node": ">=6.0.0"
+			}
+		},
 		"node_modules/@babel/helper-compilation-targets": {
 			"version": "7.17.10",
 			"resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.17.10.tgz",
@@ -137,46 +153,43 @@
 			}
 		},
 		"node_modules/@babel/helper-compilation-targets/node_modules/semver": {
-			"version": "6.3.0",
-			"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
-			"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+			"version": "6.3.1",
+			"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+			"integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
 			"dev": true,
 			"bin": {
 				"semver": "bin/semver.js"
 			}
 		},
 		"node_modules/@babel/helper-environment-visitor": {
-			"version": "7.16.7",
-			"resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz",
-			"integrity": "sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==",
+			"version": "7.22.20",
+			"resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz",
+			"integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==",
 			"dev": true,
-			"dependencies": {
-				"@babel/types": "^7.16.7"
-			},
 			"engines": {
 				"node": ">=6.9.0"
 			}
 		},
 		"node_modules/@babel/helper-function-name": {
-			"version": "7.17.9",
-			"resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.17.9.tgz",
-			"integrity": "sha512-7cRisGlVtiVqZ0MW0/yFB4atgpGLWEHUVYnb448hZK4x+vih0YO5UoS11XIYtZYqHd0dIPMdUSv8q5K4LdMnIg==",
+			"version": "7.23.0",
+			"resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz",
+			"integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==",
 			"dev": true,
 			"dependencies": {
-				"@babel/template": "^7.16.7",
-				"@babel/types": "^7.17.0"
+				"@babel/template": "^7.22.15",
+				"@babel/types": "^7.23.0"
 			},
 			"engines": {
 				"node": ">=6.9.0"
 			}
 		},
 		"node_modules/@babel/helper-hoist-variables": {
-			"version": "7.16.7",
-			"resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz",
-			"integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==",
+			"version": "7.22.5",
+			"resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz",
+			"integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==",
 			"dev": true,
 			"dependencies": {
-				"@babel/types": "^7.16.7"
+				"@babel/types": "^7.22.5"
 			},
 			"engines": {
 				"node": ">=6.9.0"
@@ -226,21 +239,30 @@
 			}
 		},
 		"node_modules/@babel/helper-split-export-declaration": {
-			"version": "7.16.7",
-			"resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz",
-			"integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==",
+			"version": "7.22.6",
+			"resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz",
+			"integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==",
 			"dev": true,
 			"dependencies": {
-				"@babel/types": "^7.16.7"
+				"@babel/types": "^7.22.5"
 			},
 			"engines": {
 				"node": ">=6.9.0"
 			}
 		},
+		"node_modules/@babel/helper-string-parser": {
+			"version": "7.24.1",
+			"resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz",
+			"integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==",
+			"dev": true,
+			"engines": {
+				"node": ">=6.9.0"
+			}
+		},
 		"node_modules/@babel/helper-validator-identifier": {
-			"version": "7.16.7",
-			"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz",
-			"integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==",
+			"version": "7.22.20",
+			"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz",
+			"integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==",
 			"dev": true,
 			"engines": {
 				"node": ">=6.9.0"
@@ -270,14 +292,15 @@
 			}
 		},
 		"node_modules/@babel/highlight": {
-			"version": "7.17.9",
-			"resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.9.tgz",
-			"integrity": "sha512-J9PfEKCbFIv2X5bjTMiZu6Vf341N05QIY+d6FvVKynkG1S7G0j3I0QoRtWIrXhZ+/Nlb5Q0MzqL7TokEJ5BNHg==",
+			"version": "7.24.2",
+			"resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz",
+			"integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==",
 			"dev": true,
 			"dependencies": {
-				"@babel/helper-validator-identifier": "^7.16.7",
-				"chalk": "^2.0.0",
-				"js-tokens": "^4.0.0"
+				"@babel/helper-validator-identifier": "^7.22.20",
+				"chalk": "^2.4.2",
+				"js-tokens": "^4.0.0",
+				"picocolors": "^1.0.0"
 			},
 			"engines": {
 				"node": ">=6.9.0"
@@ -321,13 +344,13 @@
 		"node_modules/@babel/highlight/node_modules/color-name": {
 			"version": "1.1.3",
 			"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
-			"integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
+			"integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==",
 			"dev": true
 		},
 		"node_modules/@babel/highlight/node_modules/escape-string-regexp": {
 			"version": "1.0.5",
 			"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
-			"integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
+			"integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
 			"dev": true,
 			"engines": {
 				"node": ">=0.8.0"
@@ -336,7 +359,7 @@
 		"node_modules/@babel/highlight/node_modules/has-flag": {
 			"version": "3.0.0",
 			"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
-			"integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
+			"integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
 			"dev": true,
 			"engines": {
 				"node": ">=4"
@@ -355,9 +378,9 @@
 			}
 		},
 		"node_modules/@babel/parser": {
-			"version": "7.17.10",
-			"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.10.tgz",
-			"integrity": "sha512-n2Q6i+fnJqzOaq2VkdXxy2TCPCWQZHiCo0XqmrCvDWcZQKRyZzYi4Z0yxlBuN0w+r2ZHmre+Q087DSrw3pbJDQ==",
+			"version": "7.24.4",
+			"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz",
+			"integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==",
 			"dev": true,
 			"bin": {
 				"parser": "bin/babel-parser.js"
@@ -367,34 +390,34 @@
 			}
 		},
 		"node_modules/@babel/template": {
-			"version": "7.16.7",
-			"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz",
-			"integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==",
+			"version": "7.24.0",
+			"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz",
+			"integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==",
 			"dev": true,
 			"dependencies": {
-				"@babel/code-frame": "^7.16.7",
-				"@babel/parser": "^7.16.7",
-				"@babel/types": "^7.16.7"
+				"@babel/code-frame": "^7.23.5",
+				"@babel/parser": "^7.24.0",
+				"@babel/types": "^7.24.0"
 			},
 			"engines": {
 				"node": ">=6.9.0"
 			}
 		},
 		"node_modules/@babel/traverse": {
-			"version": "7.17.10",
-			"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.10.tgz",
-			"integrity": "sha512-VmbrTHQteIdUUQNTb+zE12SHS/xQVIShmBPhlNP12hD5poF2pbITW1Z4172d03HegaQWhLffdkRJYtAzp0AGcw==",
-			"dev": true,
-			"dependencies": {
-				"@babel/code-frame": "^7.16.7",
-				"@babel/generator": "^7.17.10",
-				"@babel/helper-environment-visitor": "^7.16.7",
-				"@babel/helper-function-name": "^7.17.9",
-				"@babel/helper-hoist-variables": "^7.16.7",
-				"@babel/helper-split-export-declaration": "^7.16.7",
-				"@babel/parser": "^7.17.10",
-				"@babel/types": "^7.17.10",
-				"debug": "^4.1.0",
+			"version": "7.24.1",
+			"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz",
+			"integrity": "sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==",
+			"dev": true,
+			"dependencies": {
+				"@babel/code-frame": "^7.24.1",
+				"@babel/generator": "^7.24.1",
+				"@babel/helper-environment-visitor": "^7.22.20",
+				"@babel/helper-function-name": "^7.23.0",
+				"@babel/helper-hoist-variables": "^7.22.5",
+				"@babel/helper-split-export-declaration": "^7.22.6",
+				"@babel/parser": "^7.24.1",
+				"@babel/types": "^7.24.0",
+				"debug": "^4.3.1",
 				"globals": "^11.1.0"
 			},
 			"engines": {
@@ -411,12 +434,13 @@
 			}
 		},
 		"node_modules/@babel/types": {
-			"version": "7.17.10",
-			"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.17.10.tgz",
-			"integrity": "sha512-9O26jG0mBYfGkUYCYZRnBwbVLd1UZOICEr2Em6InB6jVfsAv1GKgwXHmrSg+WFWDmeKTA6vyTZiN8tCSM5Oo3A==",
+			"version": "7.24.0",
+			"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz",
+			"integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==",
 			"dev": true,
 			"dependencies": {
-				"@babel/helper-validator-identifier": "^7.16.7",
+				"@babel/helper-string-parser": "^7.23.4",
+				"@babel/helper-validator-identifier": "^7.22.20",
 				"to-fast-properties": "^2.0.0"
 			},
 			"engines": {
@@ -507,43 +531,43 @@
 			}
 		},
 		"node_modules/@jridgewell/resolve-uri": {
-			"version": "3.0.6",
-			"resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.6.tgz",
-			"integrity": "sha512-R7xHtBSNm+9SyvpJkdQl+qrM3Hm2fea3Ef197M3mUug+v+yR+Rhfbs7PBtcBUVnIWJ4JcAdjvij+c8hXS9p5aw==",
+			"version": "3.1.2",
+			"resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
+			"integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
 			"dev": true,
 			"engines": {
 				"node": ">=6.0.0"
 			}
 		},
 		"node_modules/@jridgewell/set-array": {
-			"version": "1.1.0",
-			"resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.0.tgz",
-			"integrity": "sha512-SfJxIxNVYLTsKwzB3MoOQ1yxf4w/E6MdkvTgrgAt1bfxjSrLUoHMKrDOykwN14q65waezZIdqDneUIPh4/sKxg==",
+			"version": "1.2.1",
+			"resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz",
+			"integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==",
 			"dev": true,
 			"engines": {
 				"node": ">=6.0.0"
 			}
 		},
 		"node_modules/@jridgewell/sourcemap-codec": {
-			"version": "1.4.11",
-			"resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz",
-			"integrity": "sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg==",
+			"version": "1.4.15",
+			"resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz",
+			"integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==",
 			"dev": true
 		},
 		"node_modules/@jridgewell/trace-mapping": {
-			"version": "0.3.9",
-			"resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz",
-			"integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==",
+			"version": "0.3.25",
+			"resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
+			"integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
 			"dev": true,
 			"dependencies": {
-				"@jridgewell/resolve-uri": "^3.0.3",
-				"@jridgewell/sourcemap-codec": "^1.4.10"
+				"@jridgewell/resolve-uri": "^3.1.0",
+				"@jridgewell/sourcemap-codec": "^1.4.14"
 			}
 		},
 		"node_modules/@mdn/browser-compat-data": {
-			"version": "4.1.18",
-			"resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-4.1.18.tgz",
-			"integrity": "sha512-Ap8MOYbyvEilK1+sNY6yh6LmsHSp7f5zzSGlY4AemhbTcoultcozEXPzx42OO6WjoriOsw88aW8TiqgYdXwsxg==",
+			"version": "5.5.23",
+			"resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-5.5.23.tgz",
+			"integrity": "sha512-nIy38qL3nfNcGOz5J2BJQpBXa7vM9QO1+wbyvqqS89lgNTWE8Q10whLsmE0sTVBooXiEaRc4fVME5IXjCYiHAw==",
 			"dev": true
 		},
 		"node_modules/@nodelib/fs.scandir": {
@@ -1640,20 +1664,14 @@
 			}
 		},
 		"node_modules/ast-metadata-inferer": {
-			"version": "0.7.0",
-			"resolved": "https://registry.npmjs.org/ast-metadata-inferer/-/ast-metadata-inferer-0.7.0.tgz",
-			"integrity": "sha512-OkMLzd8xelb3gmnp6ToFvvsHLtS6CbagTkFQvQ+ZYFe3/AIl9iKikNR9G7pY3GfOR/2Xc222hwBjzI7HLkE76Q==",
+			"version": "0.8.0",
+			"resolved": "https://registry.npmjs.org/ast-metadata-inferer/-/ast-metadata-inferer-0.8.0.tgz",
+			"integrity": "sha512-jOMKcHht9LxYIEQu+RVd22vtgrPaVCtDRQ/16IGmurdzxvYbDd5ynxjnyrzLnieG96eTcAyaoj/wN/4/1FyyeA==",
 			"dev": true,
 			"dependencies": {
-				"@mdn/browser-compat-data": "^3.3.14"
+				"@mdn/browser-compat-data": "^5.2.34"
 			}
 		},
-		"node_modules/ast-metadata-inferer/node_modules/@mdn/browser-compat-data": {
-			"version": "3.3.14",
-			"resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-3.3.14.tgz",
-			"integrity": "sha512-n2RC9d6XatVbWFdHLimzzUJxJ1KY8LdjqrW6YvGPiRmsHkhOUx74/Ct10x5Yo7bC/Jvqx7cDEW8IMPv/+vwEzA==",
-			"dev": true
-		},
 		"node_modules/astral-regex": {
 			"version": "2.0.0",
 			"resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz",
@@ -1833,9 +1851,9 @@
 			"dev": true
 		},
 		"node_modules/browserslist": {
-			"version": "4.20.3",
-			"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.3.tgz",
-			"integrity": "sha512-NBhymBQl1zM0Y5dQT/O+xiLP9/rzOIQdKM/eMJBAq7yBgaB6krIYLGejrwVYnSHZdqjscB1SPuAjHwxjvN6Wdg==",
+			"version": "4.23.0",
+			"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz",
+			"integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==",
 			"dev": true,
 			"funding": [
 				{
@@ -1845,14 +1863,17 @@
 				{
 					"type": "tidelift",
 					"url": "https://tidelift.com/funding/github/npm/browserslist"
+				},
+				{
+					"type": "github",
+					"url": "https://github.com/sponsors/ai"
 				}
 			],
 			"dependencies": {
-				"caniuse-lite": "^1.0.30001332",
-				"electron-to-chromium": "^1.4.118",
-				"escalade": "^3.1.1",
-				"node-releases": "^2.0.3",
-				"picocolors": "^1.0.0"
+				"caniuse-lite": "^1.0.30001587",
+				"electron-to-chromium": "^1.4.668",
+				"node-releases": "^2.0.14",
+				"update-browserslist-db": "^1.0.13"
 			},
 			"bin": {
 				"browserslist": "cli.js"
@@ -2228,9 +2249,9 @@
 			}
 		},
 		"node_modules/caniuse-lite": {
-			"version": "1.0.30001335",
-			"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001335.tgz",
-			"integrity": "sha512-ddP1Tgm7z2iIxu6QTtbZUv6HJxSaV/PZeSrWFZtbY4JZ69tOeNhBCl3HyRQgeNZKE5AOn1kpV7fhljigy0Ty3w==",
+			"version": "1.0.30001613",
+			"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001613.tgz",
+			"integrity": "sha512-BNjJULJfOONQERivfxte7alLfeLW4QnwHvNW4wEcLEbXfV6VSCYvr+REbf2Sojv8tC1THpjPXBxWgDbq4NtLWg==",
 			"dev": true,
 			"funding": [
 				{
@@ -2240,6 +2261,10 @@
 				{
 					"type": "tidelift",
 					"url": "https://tidelift.com/funding/github/npm/caniuse-lite"
+				},
+				{
+					"type": "github",
+					"url": "https://github.com/sponsors/ai"
 				}
 			]
 		},
@@ -2596,22 +2621,11 @@
 			"dev": true
 		},
 		"node_modules/cookiejar": {
-			"version": "2.1.3",
-			"resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.3.tgz",
-			"integrity": "sha512-JxbCBUdrfr6AQjOXrxoTvAMJO4HBTUIlBzslcJPAz+/KT8yk53fXun51u+RenNYvad/+Vc2DIz5o9UxlCDymFQ==",
+			"version": "2.1.4",
+			"resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.4.tgz",
+			"integrity": "sha512-LDx6oHrK+PhzLKJU9j5S7/Y3jM/mUHvD/DeI1WQmJn652iPC5Y4TBzC9l+5OMOXlyTTA+SmVUPm0HQUwpD5Jqw==",
 			"dev": true
 		},
-		"node_modules/core-js": {
-			"version": "3.22.3",
-			"resolved": "https://registry.npmjs.org/core-js/-/core-js-3.22.3.tgz",
-			"integrity": "sha512-1t+2a/d2lppW1gkLXx3pKPVGbBdxXAkqztvWb1EJ8oF8O2gIGiytzflNiFEehYwVK/t2ryUsGBoOFFvNx95mbg==",
-			"dev": true,
-			"hasInstallScript": true,
-			"funding": {
-				"type": "opencollective",
-				"url": "https://opencollective.com/core-js"
-			}
-		},
 		"node_modules/core-util-is": {
 			"version": "1.0.2",
 			"resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
@@ -3106,10 +3120,16 @@
 			}
 		},
 		"node_modules/doiuse/node_modules/nanoid": {
-			"version": "3.3.3",
-			"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz",
-			"integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==",
+			"version": "3.3.7",
+			"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz",
+			"integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==",
 			"dev": true,
+			"funding": [
+				{
+					"type": "github",
+					"url": "https://github.com/sponsors/ai"
+				}
+			],
 			"bin": {
 				"nanoid": "bin/nanoid.cjs"
 			},
@@ -3118,9 +3138,9 @@
 			}
 		},
 		"node_modules/doiuse/node_modules/postcss": {
-			"version": "8.4.13",
-			"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.13.tgz",
-			"integrity": "sha512-jtL6eTBrza5MPzy8oJLFuUscHDXTV5KcLlqAWHl5q5WYRfnNRGSmOZmOZ1T6Gy7A99mOZfqungmZMpMmCVJ8ZA==",
+			"version": "8.4.38",
+			"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz",
+			"integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==",
 			"dev": true,
 			"funding": [
 				{
@@ -3130,12 +3150,16 @@
 				{
 					"type": "tidelift",
 					"url": "https://tidelift.com/funding/github/npm/postcss"
+				},
+				{
+					"type": "github",
+					"url": "https://github.com/sponsors/ai"
 				}
 			],
 			"dependencies": {
-				"nanoid": "^3.3.3",
+				"nanoid": "^3.3.7",
 				"picocolors": "^1.0.0",
-				"source-map-js": "^1.0.2"
+				"source-map-js": "^1.2.0"
 			},
 			"engines": {
 				"node": "^10 || ^12 || >=14"
@@ -3305,9 +3329,9 @@
 			}
 		},
 		"node_modules/electron-to-chromium": {
-			"version": "1.4.129",
-			"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.129.tgz",
-			"integrity": "sha512-GgtN6bsDtHdtXJtlMYZWGB/uOyjZWjmRDumXTas7dGBaB9zUyCjzHet1DY2KhyHN8R0GLbzZWqm4efeddqqyRQ==",
+			"version": "1.4.750",
+			"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.750.tgz",
+			"integrity": "sha512-9ItEpeu15hW5m8jKdriL+BQrgwDTXEL9pn4SkillWFu73ZNNNQ2BKKLS+ZHv2vC9UkNhosAeyfxOf/5OSeTCPA==",
 			"dev": true
 		},
 		"node_modules/emoji-regex": {
@@ -3487,42 +3511,26 @@
 			}
 		},
 		"node_modules/eslint-plugin-compat": {
-			"version": "4.0.2",
-			"resolved": "https://registry.npmjs.org/eslint-plugin-compat/-/eslint-plugin-compat-4.0.2.tgz",
-			"integrity": "sha512-xqvoO54CLTVaEYGMzhu35Wzwk/As7rCvz/2dqwnFiWi0OJccEtGIn+5qq3zqIu9nboXlpdBN579fZcItC73Ycg==",
+			"version": "4.2.0",
+			"resolved": "https://registry.npmjs.org/eslint-plugin-compat/-/eslint-plugin-compat-4.2.0.tgz",
+			"integrity": "sha512-RDKSYD0maWy5r7zb5cWQS+uSPc26mgOzdORJ8hxILmWM7S/Ncwky7BcAtXVY5iRbKjBdHsWU8Yg7hfoZjtkv7w==",
 			"dev": true,
 			"dependencies": {
-				"@mdn/browser-compat-data": "^4.1.5",
-				"ast-metadata-inferer": "^0.7.0",
-				"browserslist": "^4.16.8",
-				"caniuse-lite": "^1.0.30001304",
-				"core-js": "^3.16.2",
+				"@mdn/browser-compat-data": "^5.3.13",
+				"ast-metadata-inferer": "^0.8.0",
+				"browserslist": "^4.21.10",
+				"caniuse-lite": "^1.0.30001524",
 				"find-up": "^5.0.0",
-				"lodash.memoize": "4.1.2",
-				"semver": "7.3.5"
+				"lodash.memoize": "^4.1.2",
+				"semver": "^7.5.4"
 			},
 			"engines": {
-				"node": ">=9.x"
+				"node": ">=14.x"
 			},
 			"peerDependencies": {
 				"eslint": "^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0"
 			}
 		},
-		"node_modules/eslint-plugin-compat/node_modules/semver": {
-			"version": "7.3.5",
-			"resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz",
-			"integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==",
-			"dev": true,
-			"dependencies": {
-				"lru-cache": "^6.0.0"
-			},
-			"bin": {
-				"semver": "bin/semver.js"
-			},
-			"engines": {
-				"node": ">=10"
-			}
-		},
 		"node_modules/eslint-plugin-es": {
 			"version": "4.1.0",
 			"resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-4.1.0.tgz",
@@ -3705,9 +3713,9 @@
 			}
 		},
 		"node_modules/eslint-plugin-mediawiki/node_modules/semver": {
-			"version": "6.3.0",
-			"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
-			"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+			"version": "6.3.1",
+			"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+			"integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
 			"dev": true,
 			"bin": {
 				"semver": "bin/semver.js"
@@ -3826,9 +3834,9 @@
 			}
 		},
 		"node_modules/eslint-plugin-node/node_modules/semver": {
-			"version": "6.3.0",
-			"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
-			"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+			"version": "6.3.1",
+			"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+			"integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
 			"dev": true,
 			"bin": {
 				"semver": "bin/semver.js"
@@ -4547,9 +4555,9 @@
 			}
 		},
 		"node_modules/get-func-name": {
-			"version": "2.0.0",
-			"resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz",
-			"integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=",
+			"version": "2.0.2",
+			"resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz",
+			"integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==",
 			"dev": true,
 			"engines": {
 				"node": "*"
@@ -4803,9 +4811,9 @@
 			}
 		},
 		"node_modules/got": {
-			"version": "11.8.3",
-			"resolved": "https://registry.npmjs.org/got/-/got-11.8.3.tgz",
-			"integrity": "sha512-7gtQ5KiPh1RtGS9/Jbv1ofDpBFuq42gyfEib+ejaRBJuj/3tQFeR5+gw57e4ipaU8c/rCjvX6fkQz2lyDlGAOg==",
+			"version": "11.8.6",
+			"resolved": "https://registry.npmjs.org/got/-/got-11.8.6.tgz",
+			"integrity": "sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==",
 			"dev": true,
 			"dependencies": {
 				"@sindresorhus/is": "^4.0.0",
@@ -4880,9 +4888,9 @@
 			}
 		},
 		"node_modules/grunt": {
-			"version": "1.4.1",
-			"resolved": "https://registry.npmjs.org/grunt/-/grunt-1.4.1.tgz",
-			"integrity": "sha512-ZXIYXTsAVrA7sM+jZxjQdrBOAg7DyMUplOMhTaspMRExei+fD0BTwdWXnn0W5SXqhb/Q/nlkzXclSi3IH55PIA==",
+			"version": "1.5.3",
+			"resolved": "https://registry.npmjs.org/grunt/-/grunt-1.5.3.tgz",
+			"integrity": "sha512-mKwmo4X2d8/4c/BmcOETHek675uOqw0RuA/zy12jaspWqvTp4+ZeQF1W+OTpcbncnaBsfbQJ6l0l4j+Sn/GmaQ==",
 			"dev": true,
 			"dependencies": {
 				"dateformat": "~3.0.3",
@@ -4890,7 +4898,7 @@
 				"exit": "~0.1.2",
 				"findup-sync": "~0.3.0",
 				"glob": "~7.1.6",
-				"grunt-cli": "~1.4.2",
+				"grunt-cli": "~1.4.3",
 				"grunt-known-options": "~2.0.0",
 				"grunt-legacy-log": "~3.0.0",
 				"grunt-legacy-util": "~2.0.1",
@@ -5286,9 +5294,9 @@
 			}
 		},
 		"node_modules/http-cache-semantics": {
-			"version": "4.1.0",
-			"resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz",
-			"integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==",
+			"version": "4.1.1",
+			"resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz",
+			"integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==",
 			"dev": true
 		},
 		"node_modules/http-signature": {
@@ -6111,9 +6119,9 @@
 			"dev": true
 		},
 		"node_modules/json5": {
-			"version": "2.2.1",
-			"resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz",
-			"integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==",
+			"version": "2.2.3",
+			"resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz",
+			"integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==",
 			"dev": true,
 			"bin": {
 				"json5": "lib/cli.js"
@@ -7094,9 +7102,9 @@
 			}
 		},
 		"node_modules/node-releases": {
-			"version": "2.0.4",
-			"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.4.tgz",
-			"integrity": "sha512-gbMzqQtTtDz/00jQzZ21PQzdI9PyLYqUSvD0p3naOhX4odFji0ZxYdnVwPTxmSwkmxhcFImpozceidSG+AgoPQ==",
+			"version": "2.0.14",
+			"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz",
+			"integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==",
 			"dev": true
 		},
 		"node_modules/nopt": {
@@ -7124,9 +7132,9 @@
 			}
 		},
 		"node_modules/normalize-package-data/node_modules/semver": {
-			"version": "5.7.1",
-			"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
-			"integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
+			"version": "5.7.2",
+			"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
+			"integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
 			"dev": true,
 			"bin": {
 				"semver": "bin/semver"
@@ -7278,9 +7286,9 @@
 			}
 		},
 		"node_modules/npm-run-all/node_modules/semver": {
-			"version": "5.7.1",
-			"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
-			"integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
+			"version": "5.7.2",
+			"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
+			"integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
 			"dev": true,
 			"bin": {
 				"semver": "bin/semver"
@@ -8412,27 +8420,15 @@
 			}
 		},
 		"node_modules/recursive-readdir": {
-			"version": "2.2.2",
-			"resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.2.tgz",
-			"integrity": "sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg==",
+			"version": "2.2.3",
+			"resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.3.tgz",
+			"integrity": "sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==",
 			"dev": true,
 			"dependencies": {
-				"minimatch": "3.0.4"
+				"minimatch": "^3.0.5"
 			},
 			"engines": {
-				"node": ">=0.10.0"
-			}
-		},
-		"node_modules/recursive-readdir/node_modules/minimatch": {
-			"version": "3.0.4",
-			"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
-			"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
-			"dev": true,
-			"dependencies": {
-				"brace-expansion": "^1.1.7"
-			},
-			"engines": {
-				"node": "*"
+				"node": ">=6.0.0"
 			}
 		},
 		"node_modules/redent": {
@@ -8908,9 +8904,9 @@
 			}
 		},
 		"node_modules/semver": {
-			"version": "7.3.7",
-			"resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz",
-			"integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==",
+			"version": "7.6.0",
+			"resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz",
+			"integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==",
 			"dev": true,
 			"dependencies": {
 				"lru-cache": "^6.0.0"
@@ -9029,9 +9025,9 @@
 			}
 		},
 		"node_modules/source-map-js": {
-			"version": "1.0.2",
-			"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
-			"integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
+			"version": "1.2.0",
+			"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz",
+			"integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==",
 			"dev": true,
 			"engines": {
 				"node": ">=0.10.0"
@@ -9359,10 +9355,16 @@
 			}
 		},
 		"node_modules/stylelint-no-unsupported-browser-features/node_modules/nanoid": {
-			"version": "3.3.3",
-			"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz",
-			"integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==",
+			"version": "3.3.7",
+			"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz",
+			"integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==",
 			"dev": true,
+			"funding": [
+				{
+					"type": "github",
+					"url": "https://github.com/sponsors/ai"
+				}
+			],
 			"bin": {
 				"nanoid": "bin/nanoid.cjs"
 			},
@@ -9371,9 +9373,9 @@
 			}
 		},
 		"node_modules/stylelint-no-unsupported-browser-features/node_modules/postcss": {
-			"version": "8.4.13",
-			"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.13.tgz",
-			"integrity": "sha512-jtL6eTBrza5MPzy8oJLFuUscHDXTV5KcLlqAWHl5q5WYRfnNRGSmOZmOZ1T6Gy7A99mOZfqungmZMpMmCVJ8ZA==",
+			"version": "8.4.38",
+			"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz",
+			"integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==",
 			"dev": true,
 			"funding": [
 				{
@@ -9383,12 +9385,16 @@
 				{
 					"type": "tidelift",
 					"url": "https://tidelift.com/funding/github/npm/postcss"
+				},
+				{
+					"type": "github",
+					"url": "https://github.com/sponsors/ai"
 				}
 			],
 			"dependencies": {
-				"nanoid": "^3.3.3",
+				"nanoid": "^3.3.7",
 				"picocolors": "^1.0.0",
-				"source-map-js": "^1.0.2"
+				"source-map-js": "^1.2.0"
 			},
 			"engines": {
 				"node": "^10 || ^12 || >=14"
@@ -9782,9 +9788,9 @@
 			}
 		},
 		"node_modules/ua-parser-js": {
-			"version": "1.0.2",
-			"resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.2.tgz",
-			"integrity": "sha512-00y/AXhx0/SsnI51fTc0rLRmafiGOM4/O+ny10Ps7f+j/b8p/ZY11ytMgznXkOVo4GQ+KwQG5UQLkLGirsACRg==",
+			"version": "1.0.37",
+			"resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.37.tgz",
+			"integrity": "sha512-bhTyI94tZofjo+Dn8SN6Zv8nBDvyXTymAdM3LDI/0IboIUwTu1rEhW7v2TfiVsoYWgkQ4kOVqnI8APUFbIQIFQ==",
 			"dev": true,
 			"funding": [
 				{
@@ -9794,6 +9800,10 @@
 				{
 					"type": "paypal",
 					"url": "https://paypal.me/faisalman"
+				},
+				{
+					"type": "github",
+					"url": "https://github.com/sponsors/faisalman"
 				}
 			],
 			"engines": {
@@ -9929,6 +9939,36 @@
 				"yarn": "*"
 			}
 		},
+		"node_modules/update-browserslist-db": {
+			"version": "1.0.13",
+			"resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz",
+			"integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==",
+			"dev": true,
+			"funding": [
+				{
+					"type": "opencollective",
+					"url": "https://opencollective.com/browserslist"
+				},
+				{
+					"type": "tidelift",
+					"url": "https://tidelift.com/funding/github/npm/browserslist"
+				},
+				{
+					"type": "github",
+					"url": "https://github.com/sponsors/ai"
+				}
+			],
+			"dependencies": {
+				"escalade": "^3.1.1",
+				"picocolors": "^1.0.0"
+			},
+			"bin": {
+				"update-browserslist-db": "cli.js"
+			},
+			"peerDependencies": {
+				"browserslist": ">= 4.21.0"
+			}
+		},
 		"node_modules/uri-js": {
 			"version": "4.4.1",
 			"resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
@@ -10218,9 +10258,9 @@
 			}
 		},
 		"node_modules/word-wrap": {
-			"version": "1.2.3",
-			"resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
-			"integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
+			"version": "1.2.5",
+			"resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz",
+			"integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==",
 			"dev": true,
 			"engines": {
 				"node": ">=0.10.0"
@@ -10614,12 +10654,13 @@
 			}
 		},
 		"@babel/code-frame": {
-			"version": "7.16.7",
-			"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz",
-			"integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==",
+			"version": "7.24.2",
+			"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.2.tgz",
+			"integrity": "sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==",
 			"dev": true,
 			"requires": {
-				"@babel/highlight": "^7.16.7"
+				"@babel/highlight": "^7.24.2",
+				"picocolors": "^1.0.0"
 			}
 		},
 		"@babel/compat-data": {
@@ -10652,22 +10693,36 @@
 			},
 			"dependencies": {
 				"semver": {
-					"version": "6.3.0",
-					"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
-					"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+					"version": "6.3.1",
+					"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+					"integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
 					"dev": true
 				}
 			}
 		},
 		"@babel/generator": {
-			"version": "7.17.10",
-			"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.17.10.tgz",
-			"integrity": "sha512-46MJZZo9y3o4kmhBVc7zW7i8dtR1oIK/sdO5NcfcZRhTGYi+KKJRtHNgsU6c4VUcJmUNV/LQdebD/9Dlv4K+Tg==",
+			"version": "7.24.4",
+			"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.4.tgz",
+			"integrity": "sha512-Xd6+v6SnjWVx/nus+y0l1sxMOTOMBkyL4+BIdbALyatQnAe/SRVjANeDPSCYaX+i1iJmuGSKf3Z+E+V/va1Hvw==",
 			"dev": true,
 			"requires": {
-				"@babel/types": "^7.17.10",
-				"@jridgewell/gen-mapping": "^0.1.0",
+				"@babel/types": "^7.24.0",
+				"@jridgewell/gen-mapping": "^0.3.5",
+				"@jridgewell/trace-mapping": "^0.3.25",
 				"jsesc": "^2.5.1"
+			},
+			"dependencies": {
+				"@jridgewell/gen-mapping": {
+					"version": "0.3.5",
+					"resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
+					"integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
+					"dev": true,
+					"requires": {
+						"@jridgewell/set-array": "^1.2.1",
+						"@jridgewell/sourcemap-codec": "^1.4.10",
+						"@jridgewell/trace-mapping": "^0.3.24"
+					}
+				}
 			}
 		},
 		"@babel/helper-compilation-targets": {
@@ -10683,39 +10738,36 @@
 			},
 			"dependencies": {
 				"semver": {
-					"version": "6.3.0",
-					"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
-					"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+					"version": "6.3.1",
+					"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+					"integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
 					"dev": true
 				}
 			}
 		},
 		"@babel/helper-environment-visitor": {
-			"version": "7.16.7",
-			"resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz",
-			"integrity": "sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag==",
-			"dev": true,
-			"requires": {
-				"@babel/types": "^7.16.7"
-			}
+			"version": "7.22.20",
+			"resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz",
+			"integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==",
+			"dev": true
 		},
 		"@babel/helper-function-name": {
-			"version": "7.17.9",
-			"resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.17.9.tgz",
-			"integrity": "sha512-7cRisGlVtiVqZ0MW0/yFB4atgpGLWEHUVYnb448hZK4x+vih0YO5UoS11XIYtZYqHd0dIPMdUSv8q5K4LdMnIg==",
+			"version": "7.23.0",
+			"resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz",
+			"integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==",
 			"dev": true,
 			"requires": {
-				"@babel/template": "^7.16.7",
-				"@babel/types": "^7.17.0"
+				"@babel/template": "^7.22.15",
+				"@babel/types": "^7.23.0"
 			}
 		},
 		"@babel/helper-hoist-variables": {
-			"version": "7.16.7",
-			"resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz",
-			"integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==",
+			"version": "7.22.5",
+			"resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz",
+			"integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==",
 			"dev": true,
 			"requires": {
-				"@babel/types": "^7.16.7"
+				"@babel/types": "^7.22.5"
 			}
 		},
 		"@babel/helper-module-imports": {
@@ -10753,18 +10805,24 @@
 			}
 		},
 		"@babel/helper-split-export-declaration": {
-			"version": "7.16.7",
-			"resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz",
-			"integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==",
+			"version": "7.22.6",
+			"resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz",
+			"integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==",
 			"dev": true,
 			"requires": {
-				"@babel/types": "^7.16.7"
+				"@babel/types": "^7.22.5"
 			}
 		},
+		"@babel/helper-string-parser": {
+			"version": "7.24.1",
+			"resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.1.tgz",
+			"integrity": "sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==",
+			"dev": true
+		},
 		"@babel/helper-validator-identifier": {
-			"version": "7.16.7",
-			"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz",
-			"integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==",
+			"version": "7.22.20",
+			"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz",
+			"integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==",
 			"dev": true
 		},
 		"@babel/helper-validator-option": {
@@ -10785,14 +10843,15 @@
 			}
 		},
 		"@babel/highlight": {
-			"version": "7.17.9",
-			"resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.17.9.tgz",
-			"integrity": "sha512-J9PfEKCbFIv2X5bjTMiZu6Vf341N05QIY+d6FvVKynkG1S7G0j3I0QoRtWIrXhZ+/Nlb5Q0MzqL7TokEJ5BNHg==",
+			"version": "7.24.2",
+			"resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.2.tgz",
+			"integrity": "sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==",
 			"dev": true,
 			"requires": {
-				"@babel/helper-validator-identifier": "^7.16.7",
-				"chalk": "^2.0.0",
-				"js-tokens": "^4.0.0"
+				"@babel/helper-validator-identifier": "^7.22.20",
+				"chalk": "^2.4.2",
+				"js-tokens": "^4.0.0",
+				"picocolors": "^1.0.0"
 			},
 			"dependencies": {
 				"ansi-styles": {
@@ -10827,19 +10886,19 @@
 				"color-name": {
 					"version": "1.1.3",
 					"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
-					"integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
+					"integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==",
 					"dev": true
 				},
 				"escape-string-regexp": {
 					"version": "1.0.5",
 					"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
-					"integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
+					"integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
 					"dev": true
 				},
 				"has-flag": {
 					"version": "3.0.0",
 					"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
-					"integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
+					"integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
 					"dev": true
 				},
 				"supports-color": {
@@ -10854,37 +10913,37 @@
 			}
 		},
 		"@babel/parser": {
-			"version": "7.17.10",
-			"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.17.10.tgz",
-			"integrity": "sha512-n2Q6i+fnJqzOaq2VkdXxy2TCPCWQZHiCo0XqmrCvDWcZQKRyZzYi4Z0yxlBuN0w+r2ZHmre+Q087DSrw3pbJDQ==",
+			"version": "7.24.4",
+			"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.4.tgz",
+			"integrity": "sha512-zTvEBcghmeBma9QIGunWevvBAp4/Qu9Bdq+2k0Ot4fVMD6v3dsC9WOcRSKk7tRRyBM/53yKMJko9xOatGQAwSg==",
 			"dev": true
 		},
 		"@babel/template": {
-			"version": "7.16.7",
-			"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz",
-			"integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==",
+			"version": "7.24.0",
+			"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.0.tgz",
+			"integrity": "sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==",
 			"dev": true,
 			"requires": {
-				"@babel/code-frame": "^7.16.7",
-				"@babel/parser": "^7.16.7",
-				"@babel/types": "^7.16.7"
+				"@babel/code-frame": "^7.23.5",
+				"@babel/parser": "^7.24.0",
+				"@babel/types": "^7.24.0"
 			}
 		},
 		"@babel/traverse": {
-			"version": "7.17.10",
-			"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.17.10.tgz",
-			"integrity": "sha512-VmbrTHQteIdUUQNTb+zE12SHS/xQVIShmBPhlNP12hD5poF2pbITW1Z4172d03HegaQWhLffdkRJYtAzp0AGcw==",
-			"dev": true,
-			"requires": {
-				"@babel/code-frame": "^7.16.7",
-				"@babel/generator": "^7.17.10",
-				"@babel/helper-environment-visitor": "^7.16.7",
-				"@babel/helper-function-name": "^7.17.9",
-				"@babel/helper-hoist-variables": "^7.16.7",
-				"@babel/helper-split-export-declaration": "^7.16.7",
-				"@babel/parser": "^7.17.10",
-				"@babel/types": "^7.17.10",
-				"debug": "^4.1.0",
+			"version": "7.24.1",
+			"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.1.tgz",
+			"integrity": "sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==",
+			"dev": true,
+			"requires": {
+				"@babel/code-frame": "^7.24.1",
+				"@babel/generator": "^7.24.1",
+				"@babel/helper-environment-visitor": "^7.22.20",
+				"@babel/helper-function-name": "^7.23.0",
+				"@babel/helper-hoist-variables": "^7.22.5",
+				"@babel/helper-split-export-declaration": "^7.22.6",
+				"@babel/parser": "^7.24.1",
+				"@babel/types": "^7.24.0",
+				"debug": "^4.3.1",
 				"globals": "^11.1.0"
 			},
 			"dependencies": {
@@ -10897,12 +10956,13 @@
 			}
 		},
 		"@babel/types": {
-			"version": "7.17.10",
-			"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.17.10.tgz",
-			"integrity": "sha512-9O26jG0mBYfGkUYCYZRnBwbVLd1UZOICEr2Em6InB6jVfsAv1GKgwXHmrSg+WFWDmeKTA6vyTZiN8tCSM5Oo3A==",
+			"version": "7.24.0",
+			"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.0.tgz",
+			"integrity": "sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==",
 			"dev": true,
 			"requires": {
-				"@babel/helper-validator-identifier": "^7.16.7",
+				"@babel/helper-string-parser": "^7.23.4",
+				"@babel/helper-validator-identifier": "^7.22.20",
 				"to-fast-properties": "^2.0.0"
 			}
 		},
@@ -10975,37 +11035,37 @@
 			}
 		},
 		"@jridgewell/resolve-uri": {
-			"version": "3.0.6",
-			"resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.6.tgz",
-			"integrity": "sha512-R7xHtBSNm+9SyvpJkdQl+qrM3Hm2fea3Ef197M3mUug+v+yR+Rhfbs7PBtcBUVnIWJ4JcAdjvij+c8hXS9p5aw==",
+			"version": "3.1.2",
+			"resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
+			"integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
 			"dev": true
 		},
 		"@jridgewell/set-array": {
-			"version": "1.1.0",
-			"resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.0.tgz",
-			"integrity": "sha512-SfJxIxNVYLTsKwzB3MoOQ1yxf4w/E6MdkvTgrgAt1bfxjSrLUoHMKrDOykwN14q65waezZIdqDneUIPh4/sKxg==",
+			"version": "1.2.1",
+			"resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz",
+			"integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==",
 			"dev": true
 		},
 		"@jridgewell/sourcemap-codec": {
-			"version": "1.4.11",
-			"resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz",
-			"integrity": "sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg==",
+			"version": "1.4.15",
+			"resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz",
+			"integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==",
 			"dev": true
 		},
 		"@jridgewell/trace-mapping": {
-			"version": "0.3.9",
-			"resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz",
-			"integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==",
+			"version": "0.3.25",
+			"resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
+			"integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
 			"dev": true,
 			"requires": {
-				"@jridgewell/resolve-uri": "^3.0.3",
-				"@jridgewell/sourcemap-codec": "^1.4.10"
+				"@jridgewell/resolve-uri": "^3.1.0",
+				"@jridgewell/sourcemap-codec": "^1.4.14"
 			}
 		},
 		"@mdn/browser-compat-data": {
-			"version": "4.1.18",
-			"resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-4.1.18.tgz",
-			"integrity": "sha512-Ap8MOYbyvEilK1+sNY6yh6LmsHSp7f5zzSGlY4AemhbTcoultcozEXPzx42OO6WjoriOsw88aW8TiqgYdXwsxg==",
+			"version": "5.5.23",
+			"resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-5.5.23.tgz",
+			"integrity": "sha512-nIy38qL3nfNcGOz5J2BJQpBXa7vM9QO1+wbyvqqS89lgNTWE8Q10whLsmE0sTVBooXiEaRc4fVME5IXjCYiHAw==",
 			"dev": true
 		},
 		"@nodelib/fs.scandir": {
@@ -11927,20 +11987,12 @@
 			"dev": true
 		},
 		"ast-metadata-inferer": {
-			"version": "0.7.0",
-			"resolved": "https://registry.npmjs.org/ast-metadata-inferer/-/ast-metadata-inferer-0.7.0.tgz",
-			"integrity": "sha512-OkMLzd8xelb3gmnp6ToFvvsHLtS6CbagTkFQvQ+ZYFe3/AIl9iKikNR9G7pY3GfOR/2Xc222hwBjzI7HLkE76Q==",
+			"version": "0.8.0",
+			"resolved": "https://registry.npmjs.org/ast-metadata-inferer/-/ast-metadata-inferer-0.8.0.tgz",
+			"integrity": "sha512-jOMKcHht9LxYIEQu+RVd22vtgrPaVCtDRQ/16IGmurdzxvYbDd5ynxjnyrzLnieG96eTcAyaoj/wN/4/1FyyeA==",
 			"dev": true,
 			"requires": {
-				"@mdn/browser-compat-data": "^3.3.14"
-			},
-			"dependencies": {
-				"@mdn/browser-compat-data": {
-					"version": "3.3.14",
-					"resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-3.3.14.tgz",
-					"integrity": "sha512-n2RC9d6XatVbWFdHLimzzUJxJ1KY8LdjqrW6YvGPiRmsHkhOUx74/Ct10x5Yo7bC/Jvqx7cDEW8IMPv/+vwEzA==",
-					"dev": true
-				}
+				"@mdn/browser-compat-data": "^5.2.34"
 			}
 		},
 		"astral-regex": {
@@ -12084,16 +12136,15 @@
 			"dev": true
 		},
 		"browserslist": {
-			"version": "4.20.3",
-			"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.3.tgz",
-			"integrity": "sha512-NBhymBQl1zM0Y5dQT/O+xiLP9/rzOIQdKM/eMJBAq7yBgaB6krIYLGejrwVYnSHZdqjscB1SPuAjHwxjvN6Wdg==",
+			"version": "4.23.0",
+			"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz",
+			"integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==",
 			"dev": true,
 			"requires": {
-				"caniuse-lite": "^1.0.30001332",
-				"electron-to-chromium": "^1.4.118",
-				"escalade": "^3.1.1",
-				"node-releases": "^2.0.3",
-				"picocolors": "^1.0.0"
+				"caniuse-lite": "^1.0.30001587",
+				"electron-to-chromium": "^1.4.668",
+				"node-releases": "^2.0.14",
+				"update-browserslist-db": "^1.0.13"
 			}
 		},
 		"buffer": {
@@ -12360,9 +12411,9 @@
 			}
 		},
 		"caniuse-lite": {
-			"version": "1.0.30001335",
-			"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001335.tgz",
-			"integrity": "sha512-ddP1Tgm7z2iIxu6QTtbZUv6HJxSaV/PZeSrWFZtbY4JZ69tOeNhBCl3HyRQgeNZKE5AOn1kpV7fhljigy0Ty3w==",
+			"version": "1.0.30001613",
+			"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001613.tgz",
+			"integrity": "sha512-BNjJULJfOONQERivfxte7alLfeLW4QnwHvNW4wEcLEbXfV6VSCYvr+REbf2Sojv8tC1THpjPXBxWgDbq4NtLWg==",
 			"dev": true
 		},
 		"caseless": {
@@ -12638,15 +12689,9 @@
 			}
 		},
 		"cookiejar": {
-			"version": "2.1.3",
-			"resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.3.tgz",
-			"integrity": "sha512-JxbCBUdrfr6AQjOXrxoTvAMJO4HBTUIlBzslcJPAz+/KT8yk53fXun51u+RenNYvad/+Vc2DIz5o9UxlCDymFQ==",
-			"dev": true
-		},
-		"core-js": {
-			"version": "3.22.3",
-			"resolved": "https://registry.npmjs.org/core-js/-/core-js-3.22.3.tgz",
-			"integrity": "sha512-1t+2a/d2lppW1gkLXx3pKPVGbBdxXAkqztvWb1EJ8oF8O2gIGiytzflNiFEehYwVK/t2ryUsGBoOFFvNx95mbg==",
+			"version": "2.1.4",
+			"resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.4.tgz",
+			"integrity": "sha512-LDx6oHrK+PhzLKJU9j5S7/Y3jM/mUHvD/DeI1WQmJn652iPC5Y4TBzC9l+5OMOXlyTTA+SmVUPm0HQUwpD5Jqw==",
 			"dev": true
 		},
 		"core-util-is": {
@@ -13041,20 +13086,20 @@
 			},
 			"dependencies": {
 				"nanoid": {
-					"version": "3.3.3",
-					"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz",
-					"integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==",
+					"version": "3.3.7",
+					"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz",
+					"integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==",
 					"dev": true
 				},
 				"postcss": {
-					"version": "8.4.13",
-					"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.13.tgz",
-					"integrity": "sha512-jtL6eTBrza5MPzy8oJLFuUscHDXTV5KcLlqAWHl5q5WYRfnNRGSmOZmOZ1T6Gy7A99mOZfqungmZMpMmCVJ8ZA==",
+					"version": "8.4.38",
+					"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz",
+					"integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==",
 					"dev": true,
 					"requires": {
-						"nanoid": "^3.3.3",
+						"nanoid": "^3.3.7",
 						"picocolors": "^1.0.0",
-						"source-map-js": "^1.0.2"
+						"source-map-js": "^1.2.0"
 					}
 				},
 				"source-map": {
@@ -13204,9 +13249,9 @@
 			}
 		},
 		"electron-to-chromium": {
-			"version": "1.4.129",
-			"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.129.tgz",
-			"integrity": "sha512-GgtN6bsDtHdtXJtlMYZWGB/uOyjZWjmRDumXTas7dGBaB9zUyCjzHet1DY2KhyHN8R0GLbzZWqm4efeddqqyRQ==",
+			"version": "1.4.750",
+			"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.750.tgz",
+			"integrity": "sha512-9ItEpeu15hW5m8jKdriL+BQrgwDTXEL9pn4SkillWFu73ZNNNQ2BKKLS+ZHv2vC9UkNhosAeyfxOf/5OSeTCPA==",
 			"dev": true
 		},
 		"emoji-regex": {
@@ -13367,30 +13412,18 @@
 			}
 		},
 		"eslint-plugin-compat": {
-			"version": "4.0.2",
-			"resolved": "https://registry.npmjs.org/eslint-plugin-compat/-/eslint-plugin-compat-4.0.2.tgz",
-			"integrity": "sha512-xqvoO54CLTVaEYGMzhu35Wzwk/As7rCvz/2dqwnFiWi0OJccEtGIn+5qq3zqIu9nboXlpdBN579fZcItC73Ycg==",
+			"version": "4.2.0",
+			"resolved": "https://registry.npmjs.org/eslint-plugin-compat/-/eslint-plugin-compat-4.2.0.tgz",
+			"integrity": "sha512-RDKSYD0maWy5r7zb5cWQS+uSPc26mgOzdORJ8hxILmWM7S/Ncwky7BcAtXVY5iRbKjBdHsWU8Yg7hfoZjtkv7w==",
 			"dev": true,
 			"requires": {
-				"@mdn/browser-compat-data": "^4.1.5",
-				"ast-metadata-inferer": "^0.7.0",
-				"browserslist": "^4.16.8",
-				"caniuse-lite": "^1.0.30001304",
-				"core-js": "^3.16.2",
+				"@mdn/browser-compat-data": "^5.3.13",
+				"ast-metadata-inferer": "^0.8.0",
+				"browserslist": "^4.21.10",
+				"caniuse-lite": "^1.0.30001524",
 				"find-up": "^5.0.0",
-				"lodash.memoize": "4.1.2",
-				"semver": "7.3.5"
-			},
-			"dependencies": {
-				"semver": {
-					"version": "7.3.5",
-					"resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz",
-					"integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==",
-					"dev": true,
-					"requires": {
-						"lru-cache": "^6.0.0"
-					}
-				}
+				"lodash.memoize": "^4.1.2",
+				"semver": "^7.5.4"
 			}
 		},
 		"eslint-plugin-es": {
@@ -13517,9 +13550,9 @@
 					"dev": true
 				},
 				"semver": {
-					"version": "6.3.0",
-					"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
-					"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+					"version": "6.3.1",
+					"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+					"integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
 					"dev": true
 				},
 				"vue-eslint-parser": {
@@ -13596,9 +13629,9 @@
 					"dev": true
 				},
 				"semver": {
-					"version": "6.3.0",
-					"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
-					"integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+					"version": "6.3.1",
+					"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+					"integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
 					"dev": true
 				}
 			}
@@ -14136,9 +14169,9 @@
 			"dev": true
 		},
 		"get-func-name": {
-			"version": "2.0.0",
-			"resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz",
-			"integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=",
+			"version": "2.0.2",
+			"resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz",
+			"integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==",
 			"dev": true
 		},
 		"get-intrinsic": {
@@ -14321,9 +14354,9 @@
 			}
 		},
 		"got": {
-			"version": "11.8.3",
-			"resolved": "https://registry.npmjs.org/got/-/got-11.8.3.tgz",
-			"integrity": "sha512-7gtQ5KiPh1RtGS9/Jbv1ofDpBFuq42gyfEib+ejaRBJuj/3tQFeR5+gw57e4ipaU8c/rCjvX6fkQz2lyDlGAOg==",
+			"version": "11.8.6",
+			"resolved": "https://registry.npmjs.org/got/-/got-11.8.6.tgz",
+			"integrity": "sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==",
 			"dev": true,
 			"requires": {
 				"@sindresorhus/is": "^4.0.0",
@@ -14382,9 +14415,9 @@
 			"dev": true
 		},
 		"grunt": {
-			"version": "1.4.1",
-			"resolved": "https://registry.npmjs.org/grunt/-/grunt-1.4.1.tgz",
-			"integrity": "sha512-ZXIYXTsAVrA7sM+jZxjQdrBOAg7DyMUplOMhTaspMRExei+fD0BTwdWXnn0W5SXqhb/Q/nlkzXclSi3IH55PIA==",
+			"version": "1.5.3",
+			"resolved": "https://registry.npmjs.org/grunt/-/grunt-1.5.3.tgz",
+			"integrity": "sha512-mKwmo4X2d8/4c/BmcOETHek675uOqw0RuA/zy12jaspWqvTp4+ZeQF1W+OTpcbncnaBsfbQJ6l0l4j+Sn/GmaQ==",
 			"dev": true,
 			"requires": {
 				"dateformat": "~3.0.3",
@@ -14392,7 +14425,7 @@
 				"exit": "~0.1.2",
 				"findup-sync": "~0.3.0",
 				"glob": "~7.1.6",
-				"grunt-cli": "~1.4.2",
+				"grunt-cli": "~1.4.3",
 				"grunt-known-options": "~2.0.0",
 				"grunt-legacy-log": "~3.0.0",
 				"grunt-legacy-util": "~2.0.1",
@@ -14679,9 +14712,9 @@
 			}
 		},
 		"http-cache-semantics": {
-			"version": "4.1.0",
-			"resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz",
-			"integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==",
+			"version": "4.1.1",
+			"resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz",
+			"integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==",
 			"dev": true
 		},
 		"http-signature": {
@@ -15267,9 +15300,9 @@
 			"dev": true
 		},
 		"json5": {
-			"version": "2.2.1",
-			"resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz",
-			"integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==",
+			"version": "2.2.3",
+			"resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz",
+			"integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==",
 			"dev": true
 		},
 		"jsonfile": {
@@ -16043,9 +16076,9 @@
 			}
 		},
 		"node-releases": {
-			"version": "2.0.4",
-			"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.4.tgz",
-			"integrity": "sha512-gbMzqQtTtDz/00jQzZ21PQzdI9PyLYqUSvD0p3naOhX4odFji0ZxYdnVwPTxmSwkmxhcFImpozceidSG+AgoPQ==",
+			"version": "2.0.14",
+			"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz",
+			"integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==",
 			"dev": true
 		},
 		"nopt": {
@@ -16070,9 +16103,9 @@
 			},
 			"dependencies": {
 				"semver": {
-					"version": "5.7.1",
-					"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
-					"integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
+					"version": "5.7.2",
+					"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
+					"integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
 					"dev": true
 				}
 			}
@@ -16185,9 +16218,9 @@
 					"dev": true
 				},
 				"semver": {
-					"version": "5.7.1",
-					"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
-					"integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
+					"version": "5.7.2",
+					"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
+					"integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
 					"dev": true
 				},
 				"shebang-command": {
@@ -17040,23 +17073,12 @@
 			}
 		},
 		"recursive-readdir": {
-			"version": "2.2.2",
-			"resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.2.tgz",
-			"integrity": "sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg==",
+			"version": "2.2.3",
+			"resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.3.tgz",
+			"integrity": "sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==",
 			"dev": true,
 			"requires": {
-				"minimatch": "3.0.4"
-			},
-			"dependencies": {
-				"minimatch": {
-					"version": "3.0.4",
-					"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
-					"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
-					"dev": true,
-					"requires": {
-						"brace-expansion": "^1.1.7"
-					}
-				}
+				"minimatch": "^3.0.5"
 			}
 		},
 		"redent": {
@@ -17411,9 +17433,9 @@
 			}
 		},
 		"semver": {
-			"version": "7.3.7",
-			"resolved": "https://registry.npmjs.org/semver/-/semver-7.3.7.tgz",
-			"integrity": "sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g==",
+			"version": "7.6.0",
+			"resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz",
+			"integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==",
 			"dev": true,
 			"requires": {
 				"lru-cache": "^6.0.0"
@@ -17499,9 +17521,9 @@
 			"dev": true
 		},
 		"source-map-js": {
-			"version": "1.0.2",
-			"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
-			"integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
+			"version": "1.2.0",
+			"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz",
+			"integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==",
 			"dev": true
 		},
 		"spdx-correct": {
@@ -17773,20 +17795,20 @@
 			},
 			"dependencies": {
 				"nanoid": {
-					"version": "3.3.3",
-					"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz",
-					"integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==",
+					"version": "3.3.7",
+					"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz",
+					"integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==",
 					"dev": true
 				},
 				"postcss": {
-					"version": "8.4.13",
-					"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.13.tgz",
-					"integrity": "sha512-jtL6eTBrza5MPzy8oJLFuUscHDXTV5KcLlqAWHl5q5WYRfnNRGSmOZmOZ1T6Gy7A99mOZfqungmZMpMmCVJ8ZA==",
+					"version": "8.4.38",
+					"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.38.tgz",
+					"integrity": "sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==",
 					"dev": true,
 					"requires": {
-						"nanoid": "^3.3.3",
+						"nanoid": "^3.3.7",
 						"picocolors": "^1.0.0",
-						"source-map-js": "^1.0.2"
+						"source-map-js": "^1.2.0"
 					}
 				}
 			}
@@ -18083,9 +18105,9 @@
 			"peer": true
 		},
 		"ua-parser-js": {
-			"version": "1.0.2",
-			"resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.2.tgz",
-			"integrity": "sha512-00y/AXhx0/SsnI51fTc0rLRmafiGOM4/O+ny10Ps7f+j/b8p/ZY11ytMgznXkOVo4GQ+KwQG5UQLkLGirsACRg==",
+			"version": "1.0.37",
+			"resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.37.tgz",
+			"integrity": "sha512-bhTyI94tZofjo+Dn8SN6Zv8nBDvyXTymAdM3LDI/0IboIUwTu1rEhW7v2TfiVsoYWgkQ4kOVqnI8APUFbIQIFQ==",
 			"dev": true
 		},
 		"unbox-primitive": {
@@ -18184,6 +18206,16 @@
 			"integrity": "sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w==",
 			"dev": true
 		},
+		"update-browserslist-db": {
+			"version": "1.0.13",
+			"resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz",
+			"integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==",
+			"dev": true,
+			"requires": {
+				"escalade": "^3.1.1",
+				"picocolors": "^1.0.0"
+			}
+		},
 		"uri-js": {
 			"version": "4.4.1",
 			"resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
@@ -18420,9 +18452,9 @@
 			}
 		},
 		"word-wrap": {
-			"version": "1.2.3",
-			"resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
-			"integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
+			"version": "1.2.5",
+			"resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz",
+			"integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==",
 			"dev": true
 		},
 		"workerpool": {
diff --git a/package.json b/package.json
index ce147cc..275bec6 100644
--- a/package.json
+++ b/package.json
@@ -45,7 +45,7 @@
 		"apollo-boost": "^0.4.9",
 		"cross-fetch": "^3.1.5",
 		"eslint-config-wikimedia": "0.22.1",
-		"grunt": "1.4.1",
+		"grunt": "1.5.3",
 		"grunt-banana-checker": "0.9.0",
 		"grunt-eslint": "24.0.0",
 		"grunt-stylelint": "0.16.0",
-- 
2.39.2


--- end ---

composer dependencies

Dependencies
Development dependencies

npm dependencies

Development dependencies

Logs

Source code is licensed under the AGPL.