$ date
--- stdout ---
Sun Jan 19 16:30:56 UTC 2025
--- end ---
$ git clone file:///srv/git/mediawiki-skins-Vector.git repo --depth=1 -b master
--- 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
--- stdout ---
--- end ---
$ grr init
--- stdout ---
Installed commit-msg hook.
--- end ---
$ git show-ref refs/heads/master
--- stdout ---
55b6958ec4052255fb015a6a1632e63c5a9663b0 refs/heads/master
--- end ---
$ /usr/bin/npm audit --json
--- stdout ---
{
"auditReportVersion": 2,
"vulnerabilities": {
"cross-spawn": {
"name": "cross-spawn",
"severity": "high",
"isDirect": false,
"via": [
{
"source": 1100562,
"name": "cross-spawn",
"dependency": "cross-spawn",
"title": "Regular Expression Denial of Service (ReDoS) in cross-spawn",
"url": "https://github.com/advisories/GHSA-3xgq-45jj-v275",
"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": "<6.0.6"
},
{
"source": 1100563,
"name": "cross-spawn",
"dependency": "cross-spawn",
"title": "Regular Expression Denial of Service (ReDoS) in cross-spawn",
"url": "https://github.com/advisories/GHSA-3xgq-45jj-v275",
"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": ">=7.0.0 <7.0.5"
}
],
"effects": [
"pre-commit"
],
"range": "<6.0.6 || >=7.0.0 <7.0.5",
"nodes": [
"node_modules/cross-spawn",
"node_modules/pre-commit/node_modules/cross-spawn"
],
"fixAvailable": {
"name": "pre-commit",
"version": "1.0.10",
"isSemVerMajor": true
}
},
"nanoid": {
"name": "nanoid",
"severity": "moderate",
"isDirect": false,
"via": [
{
"source": 1101163,
"name": "nanoid",
"dependency": "nanoid",
"title": "Predictable results in nanoid generation when given non-integer values",
"url": "https://github.com/advisories/GHSA-mwcw-c2x4-8c55",
"severity": "moderate",
"cwe": [
"CWE-835"
],
"cvss": {
"score": 4.3,
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N"
},
"range": "<3.3.8"
}
],
"effects": [],
"range": "<3.3.8",
"nodes": [
"node_modules/nanoid"
],
"fixAvailable": true
},
"pre-commit": {
"name": "pre-commit",
"severity": "high",
"isDirect": true,
"via": [
"cross-spawn"
],
"effects": [],
"range": ">=1.1.0",
"nodes": [
"node_modules/pre-commit"
],
"fixAvailable": {
"name": "pre-commit",
"version": "1.0.10",
"isSemVerMajor": true
}
}
},
"metadata": {
"vulnerabilities": {
"info": 0,
"low": 0,
"moderate": 1,
"high": 2,
"critical": 0,
"total": 3
},
"dependencies": {
"prod": 1,
"dev": 902,
"optional": 2,
"peer": 0,
"peerOptional": 0,
"total": 902
}
}
}
--- 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: 39 installs, 0 updates, 0 removals
- Locking composer/installers (v2.3.0)
- Locking composer/pcre (3.3.2)
- Locking composer/semver (3.4.3)
- Locking composer/spdx-licenses (1.5.8)
- Locking composer/xdebug-handler (3.0.5)
- Locking dealerdirect/phpcodesniffer-composer-installer (v1.0.0)
- Locking doctrine/deprecations (1.1.4)
- Locking felixfbecker/advanced-json-rpc (v3.2.1)
- Locking mediawiki/mediawiki-codesniffer (v45.0.0)
- Locking mediawiki/mediawiki-phan-config (0.15.0)
- Locking mediawiki/minus-x (1.1.3)
- Locking mediawiki/phan-taint-check-plugin (6.1.0)
- Locking microsoft/tolerant-php-parser (v0.1.2)
- Locking netresearch/jsonmapper (v4.5.0)
- Locking phan/phan (5.4.5)
- Locking php-parallel-lint/php-console-color (v1.0.1)
- Locking php-parallel-lint/php-console-highlighter (v1.0.0)
- Locking php-parallel-lint/php-parallel-lint (v1.4.0)
- Locking phpcsstandards/phpcsextra (1.2.1)
- Locking phpcsstandards/phpcsutils (1.0.12)
- Locking phpdocumentor/reflection-common (2.2.0)
- Locking phpdocumentor/reflection-docblock (5.6.1)
- Locking phpdocumentor/type-resolver (1.10.0)
- Locking phpstan/phpdoc-parser (2.0.0)
- Locking psr/container (2.0.2)
- Locking psr/log (3.0.2)
- Locking sabre/event (5.1.7)
- Locking squizlabs/php_codesniffer (3.10.3)
- Locking symfony/console (v7.2.1)
- Locking symfony/deprecation-contracts (v3.5.1)
- Locking symfony/polyfill-ctype (v1.31.0)
- Locking symfony/polyfill-intl-grapheme (v1.31.0)
- Locking symfony/polyfill-intl-normalizer (v1.31.0)
- Locking symfony/polyfill-mbstring (v1.31.0)
- Locking symfony/polyfill-php80 (v1.31.0)
- Locking symfony/service-contracts (v3.5.1)
- Locking symfony/string (v7.2.0)
- Locking tysonandre/var_representation_polyfill (0.1.3)
- Locking webmozart/assert (1.11.0)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 39 installs, 0 updates, 0 removals
0 [>---------------------------] 0 [->--------------------------]
- Installing composer/installers (v2.3.0): Extracting archive
- Installing squizlabs/php_codesniffer (3.10.3): Extracting archive
- Installing dealerdirect/phpcodesniffer-composer-installer (v1.0.0): Extracting archive
- Installing composer/pcre (3.3.2): Extracting archive
- Installing symfony/polyfill-php80 (v1.31.0): Extracting archive
- Installing phpcsstandards/phpcsutils (1.0.12): Extracting archive
- Installing phpcsstandards/phpcsextra (1.2.1): Extracting archive
- Installing symfony/polyfill-mbstring (v1.31.0): Extracting archive
- Installing composer/spdx-licenses (1.5.8): Extracting archive
- Installing composer/semver (3.4.3): Extracting archive
- Installing mediawiki/mediawiki-codesniffer (v45.0.0): Extracting archive
- Installing tysonandre/var_representation_polyfill (0.1.3): Extracting archive
- Installing symfony/polyfill-intl-normalizer (v1.31.0): Extracting archive
- Installing symfony/polyfill-intl-grapheme (v1.31.0): Extracting archive
- Installing symfony/polyfill-ctype (v1.31.0): Extracting archive
- Installing symfony/string (v7.2.0): Extracting archive
- Installing symfony/deprecation-contracts (v3.5.1): Extracting archive
- Installing psr/container (2.0.2): Extracting archive
- Installing symfony/service-contracts (v3.5.1): Extracting archive
- Installing symfony/console (v7.2.1): Extracting archive
- Installing sabre/event (5.1.7): Extracting archive
- Installing netresearch/jsonmapper (v4.5.0): Extracting archive
- Installing microsoft/tolerant-php-parser (v0.1.2): Extracting archive
- Installing webmozart/assert (1.11.0): Extracting archive
- Installing phpstan/phpdoc-parser (2.0.0): Extracting archive
- Installing phpdocumentor/reflection-common (2.2.0): Extracting archive
- Installing doctrine/deprecations (1.1.4): Extracting archive
- Installing phpdocumentor/type-resolver (1.10.0): Extracting archive
- Installing phpdocumentor/reflection-docblock (5.6.1): Extracting archive
- Installing felixfbecker/advanced-json-rpc (v3.2.1): Extracting archive
- Installing psr/log (3.0.2): Extracting archive
- Installing composer/xdebug-handler (3.0.5): Extracting archive
- Installing phan/phan (5.4.5): Extracting archive
- Installing mediawiki/phan-taint-check-plugin (6.1.0): Extracting archive
- Installing mediawiki/mediawiki-phan-config (0.15.0): Extracting archive
- Installing mediawiki/minus-x (1.1.3): Extracting archive
- Installing php-parallel-lint/php-console-color (v1.0.1): Extracting archive
- Installing php-parallel-lint/php-console-highlighter (v1.0.0): Extracting archive
- Installing php-parallel-lint/php-parallel-lint (v1.4.0): Extracting archive
0/36 [>---------------------------] 0%
20/36 [===============>------------] 55%
35/36 [===========================>] 97%
36/36 [============================] 100%
1 package suggestions were added by new dependencies, use `composer suggest` to see details.
Generating autoload files
17 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
--- stdout ---
PHP CodeSniffer Config installed_paths set to ../../mediawiki/mediawiki-codesniffer,../../phpcsstandards/phpcsextra,../../phpcsstandards/phpcsutils
--- end ---
Upgrading n:stylelint-config-wikimedia from 0.17.2 -> 0.18.0
Upgrading n:vue from 3.4.27 -> 3.4.28
Upgrading n:@vue/test-utils from 2.4.1 -> 2.4.6
Upgrading n:jest from 27.4.7 -> 29.7.0
Upgrading n:@vue/vue3-jest from 27.0.0 -> 29.2.6
Upgrading n:@wikimedia/codex from 1.16.0 -> 1.19.1
Upgrading n:@wikimedia/codex-icons from 1.16.0 -> 1.19.1
Upgrading n:ts-jest from 27.1.5 -> 29.2.5
$ /usr/bin/npm install
--- stderr ---
npm ERR! code ERESOLVE
npm ERR! ERESOLVE could not resolve
npm ERR!
npm ERR! While resolving: Vector@undefined
npm ERR! Found: @wikimedia/codex@1.16.0
npm ERR! node_modules/@wikimedia/codex
npm ERR! dev @wikimedia/codex@"1.19.1" from the root project
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! dev @wikimedia/codex@"1.19.1" from the root project
npm ERR!
npm ERR! Conflicting peer dependency: vue@3.4.28
npm ERR! node_modules/vue
npm ERR! peer vue@"3.4.28" from @wikimedia/codex@1.19.1
npm ERR! node_modules/@wikimedia/codex
npm ERR! dev @wikimedia/codex@"1.19.1" from the root project
npm ERR!
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.
npm ERR!
npm ERR!
npm ERR! For a full report see:
npm ERR! /cache/_logs/2025-01-19T16_31_02_094Z-eresolve-report.txt
npm ERR! A complete log of this run can be found in:
npm ERR! /cache/_logs/2025-01-19T16_31_02_094Z-debug-0.log
--- stdout ---
--- end ---
$ rm -rf package-lock.json node_modules
--- stdout ---
--- end ---
$ /usr/bin/npm install
--- stderr ---
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: '@wikimedia/codex@1.19.1',
npm WARN EBADENGINE required: { npm: '>=10.8.1', node: '>=20' },
npm WARN EBADENGINE current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: '@wikimedia/codex-icons@1.19.1',
npm WARN EBADENGINE required: { npm: '>=10.8.1', node: '>=20' },
npm WARN EBADENGINE current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN deprecated inflight@1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
npm WARN deprecated @humanwhocodes/config-array@0.13.0: Use @eslint/config-array instead
npm WARN deprecated abab@2.0.6: Use your platform's native atob() and btoa() methods instead
npm WARN deprecated rimraf@3.0.2: Rimraf versions prior to v4 are no longer supported
npm WARN deprecated @humanwhocodes/object-schema@2.0.3: Use @eslint/object-schema instead
npm WARN deprecated glob@7.2.0: Glob versions prior to v9 are no longer supported
npm WARN deprecated domexception@4.0.0: Use your platform's native DOMException instead
npm WARN deprecated mkdirp@0.3.0: Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)
npm WARN deprecated sinon@12.0.1: 16.1.1
npm WARN deprecated eslint@8.57.1: This version is no longer supported. Please see https://eslint.org/version-support for other options.
--- stdout ---
added 940 packages, and audited 941 packages in 27s
126 packages are looking for funding
run `npm fund` for details
2 high severity vulnerabilities
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 ---
$ ./node_modules/.bin/stylelint resources/skins.vector.js/stickyHeader.less resources/skins.vector.styles.legacy/components/Menu.less resources/skins.vector.js/index.less resources/skins.vector.styles/components/PageToolbar.less resources/skins.vector.styles/components/Header.less resources/skins.vector.styles/components/Dropdown.less resources/skins.vector.styles.legacy/normalize.less resources/skins.vector.styles.legacy/layouts/print.less resources/skins.vector.styles.legacy/typography.less resources/skins.vector.styles/mixins.less resources/skins.vector.styles/components/Appearance.less resources/skins.vector.styles.legacy/skin-legacy.less resources/skins.vector.styles.legacy/components/SearchBox.less skinStyles/jquery.ui/jquery.ui.datepicker.css resources/skins.vector.styles.legacy/print.less resources/skins.vector.styles.legacy/components/LegacySidebar.less resources/skins.vector.styles.legacy/components/MenuTabs.less skinStyles/mediawiki.action.view.redirectPage.less skinStyles/mediawiki.notification.less resources/skins.vector.styles/links.less resources/mediawiki.less resources/skins.vector.styles/components/TableOfContents.less resources/skins.vector.styles.legacy/components/TabWatchstarLink.less resources/skins.vector.styles/variables.less resources/skins.vector.search/App.vue skinStyles/jquery.ui/jquery.ui.theme.css resources/skins.vector.styles/components/SiteNotice.less resources/skins.vector.styles/components/Footer.less resources/skins.vector.js/tableOfContents.less resources/skins.vector.styles/components/Menu.less resources/skins.vector.js/popupNotification.less skinStyles/ext.echo.styles.badge.less skinStyles/jquery.ui/jquery.ui.resizable.css skinStyles/ext.uls.compactlinks.less resources/skins.vector.styles/components/PinnableHeader.less resources/skins.vector.styles.legacy/variables.less resources/skins.vector.styles/components/LanguageDropdown.less resources/skins.vector.styles/components/PinnableElement.less skinStyles/ext.uls.interface.less skinStyles/jquery.ui/jquery.ui.menu.css resources/skins.vector.styles/components/Watchstar.less skinStyles/ext.visualEditor.less resources/skins.vector.styles.legacy/components/MenuDropdown.less resources/skins.vector.clientPreferences/clientPreferences.less resources/skins.vector.styles.legacy/components/SiteNotice.less skinStyles/jquery.ui/jquery.ui.autocomplete.css resources/skins.vector.styles/components/BottomDock.less resources/skins.vector.styles/print.less resources/skins.vector.styles/normalize.less resources/skins.vector.js/bottomDock.less skinStyles/teleportTarget.less resources/skins.vector.styles.legacy/components/Footer.less resources/skins.vector.styles/skin.less resources/skins.vector.styles/components/UserLinks.less resources/skins.vector.styles.legacy/components/Indicators.less skinStyles/ext.relatedArticles.readMore.less resources/mediawiki.less/vector/mediawiki.skin.variables.less skinStyles/ext.echo.styles.alert.less skinStyles/jquery.ui/jquery.ui.button.css resources/skins.vector.styles/components/MainMenu.less resources/skins.vector.styles/CSSCustomProperties.less skinStyles/vector/mediawiki.notification.less resources/skins.vector.styles.legacy/mixins.less resources/skins.vector.styles.legacy/components/UserLinks.less resources/skins.vector.styles/components/Button.less resources/skins.vector.styles.legacy/layouts/screen.less skinStyles/jquery.ui/jquery.ui.tooltip.css skinStyles/vector/ext.echo.styles.badge.less resources/skins.vector.styles/components/PageTitlebar.less skinStyles/ooui.less resources/skins.vector.styles/layouts/screen.less resources/skins.vector.styles/components/Indicators.less resources/skins.vector.styles/media.less skinStyles/jquery.ui/jquery.ui.core.css resources/skins.vector.styles/components/Logo.less skinStyles/jquery.ui/jquery.ui.tabs.css resources/skins.vector.styles.legacy/components/SidebarLogo.less resources/skins.vector.styles/components/PageTools.less skinStyles/jquery.ui/jquery.ui.progressbar.css skinStyles/jquery.ui/jquery.ui.dialog.css resources/skins.vector.styles/components/SearchBox.less skinStyles/jquery.ui/jquery.ui.selectable.css skinStyles/mediawiki.special.search.interwikiwidget.less skinStyles/jquery.ui/jquery.ui.slider.css resources/skins.vector.styles/components/MenuTabs.less resources/skins.vector.styles/layouts/grid.less resources/skins.vector.styles/typography.less skinStyles/mediawiki.action.edit.less resources/mediawiki.less/vector-2022/mediawiki.skin.variables.less resources/skins.vector.styles/layouts/toc/pinned.less resources/skins.vector.styles/layouts/print.less skinStyles/ext.uls.pt.less resources/skins.vector.styles/components/Icon.less skinStyles/jquery.ui/jquery.ui.accordion.css resources/skins.vector.styles/layouts/toc/unpinned.less --fix
--- stderr ---
resources/skins.vector.styles/variables.less
45:1 ⚠ Unexpected browser feature "css-container-queries" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 plugin/no-unsupported-browser-features
45:1 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
136:1 ⚠ Unexpected browser feature "css-container-queries" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 plugin/no-unsupported-browser-features
136:1 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
137:1 ⚠ Unexpected browser feature "css-container-queries" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 plugin/no-unsupported-browser-features
138:1 ⚠ Unexpected browser feature "css-container-queries" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 plugin/no-unsupported-browser-features
138:1 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
139:1 ⚠ Unexpected browser feature "css-container-queries" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 plugin/no-unsupported-browser-features
139:1 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
140:1 ⚠ Unexpected browser feature "css-container-queries" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 plugin/no-unsupported-browser-features
140:1 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
151:1 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
resources/skins.vector.styles.legacy/variables.less
63:1 ⚠ Unexpected browser feature "css-container-queries" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 plugin/no-unsupported-browser-features
63:1 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
102:1 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
161:1 ⚠ Unexpected browser feature "css-container-queries" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 plugin/no-unsupported-browser-features
161:1 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
162:1 ⚠ Unexpected browser feature "css-container-queries" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 plugin/no-unsupported-browser-features
163:1 ⚠ Unexpected browser feature "css-container-queries" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 plugin/no-unsupported-browser-features
163:1 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
164:1 ⚠ Unexpected browser feature "css-container-queries" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 plugin/no-unsupported-browser-features
164:1 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
165:1 ⚠ Unexpected browser feature "css-container-queries" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 plugin/no-unsupported-browser-features
165:1 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
176:1 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
resources/skins.vector.styles/components/PinnableElement.less
28:2 ⚠ Unexpected browser feature "css-containment" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3 plugin/no-unsupported-browser-features
skinStyles/ext.visualEditor.less
16:2 ⚠ Unexpected browser feature "prefers-color-scheme" is not supported by Safari 12,11.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5 plugin/no-unsupported-browser-features
resources/skins.vector.clientPreferences/clientPreferences.less
25:1 ⚠ Unexpected browser feature "prefers-color-scheme" is not supported by Safari 12,11.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5 plugin/no-unsupported-browser-features
resources/skins.vector.js/bottomDock.less
8:2 ⚠ Unexpected browser feature "flexbox-gap" is not supported by Safari 12,13,14,11.1,12.1,13.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4 plugin/no-unsupported-browser-features
resources/skins.vector.styles/CSSCustomProperties.less
106:1 ⚠ Unexpected browser feature "prefers-color-scheme" is not supported by Safari 12,11.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5 plugin/no-unsupported-browser-features
resources/skins.vector.styles/layouts/screen.less
102:2 ⚠ Unexpected browser feature "css-container-queries" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 plugin/no-unsupported-browser-features
102:2 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
147:2 ⚠ Unexpected browser feature "css-container-queries" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 plugin/no-unsupported-browser-features
147:2 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
165:2 ⚠ Unexpected browser feature "css-touch-action" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1,18.2 plugin/no-unsupported-browser-features
165:2 ⚠ Unexpected browser feature "pointer" is not supported by Safari 12,11.1,12.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5 plugin/no-unsupported-browser-features
resources/skins.vector.styles/components/Indicators.less
1:1 ⚠ Unexpected browser feature "flexbox-gap" is not supported by Safari 12,13,14,11.1,12.1,13.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4 plugin/no-unsupported-browser-features
resources/skins.vector.styles/media.less
29:1 ⚠ Unexpected browser feature "prefers-color-scheme" is not supported by Safari 12,11.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5 plugin/no-unsupported-browser-features
resources/skins.vector.styles/layouts/grid.less
23:3 ⚠ Unexpected browser feature "css-overflow-anchor" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1,18.2, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1,18.2 plugin/no-unsupported-browser-features
121:4 ⚠ Unexpected browser feature "css-overflow-anchor" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1,18.2, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1,18.2 plugin/no-unsupported-browser-features
resources/skins.vector.styles/layouts/toc/unpinned.less
42:4 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
61:5 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
⚠ 42 problems (0 errors, 42 warnings)
--- stdout ---
--- end ---
$ ./node_modules/.bin/stylelint resources/skins.vector.js/stickyHeader.less resources/skins.vector.styles.legacy/components/Menu.less resources/skins.vector.js/index.less resources/skins.vector.styles/components/PageToolbar.less resources/skins.vector.styles/components/Header.less resources/skins.vector.styles/components/Dropdown.less resources/skins.vector.styles.legacy/normalize.less resources/skins.vector.styles.legacy/layouts/print.less resources/skins.vector.styles.legacy/typography.less resources/skins.vector.styles/mixins.less resources/skins.vector.styles/components/Appearance.less resources/skins.vector.styles.legacy/skin-legacy.less resources/skins.vector.styles.legacy/components/SearchBox.less skinStyles/jquery.ui/jquery.ui.datepicker.css resources/skins.vector.styles.legacy/print.less resources/skins.vector.styles.legacy/components/LegacySidebar.less resources/skins.vector.styles.legacy/components/MenuTabs.less skinStyles/mediawiki.action.view.redirectPage.less skinStyles/mediawiki.notification.less resources/skins.vector.styles/links.less resources/mediawiki.less resources/skins.vector.styles/components/TableOfContents.less resources/skins.vector.styles.legacy/components/TabWatchstarLink.less resources/skins.vector.styles/variables.less resources/skins.vector.search/App.vue skinStyles/jquery.ui/jquery.ui.theme.css resources/skins.vector.styles/components/SiteNotice.less resources/skins.vector.styles/components/Footer.less resources/skins.vector.js/tableOfContents.less resources/skins.vector.styles/components/Menu.less resources/skins.vector.js/popupNotification.less skinStyles/ext.echo.styles.badge.less skinStyles/jquery.ui/jquery.ui.resizable.css skinStyles/ext.uls.compactlinks.less resources/skins.vector.styles/components/PinnableHeader.less resources/skins.vector.styles.legacy/variables.less resources/skins.vector.styles/components/LanguageDropdown.less resources/skins.vector.styles/components/PinnableElement.less skinStyles/ext.uls.interface.less skinStyles/jquery.ui/jquery.ui.menu.css resources/skins.vector.styles/components/Watchstar.less skinStyles/ext.visualEditor.less resources/skins.vector.styles.legacy/components/MenuDropdown.less resources/skins.vector.clientPreferences/clientPreferences.less resources/skins.vector.styles.legacy/components/SiteNotice.less skinStyles/jquery.ui/jquery.ui.autocomplete.css resources/skins.vector.styles/components/BottomDock.less resources/skins.vector.styles/print.less resources/skins.vector.styles/normalize.less resources/skins.vector.js/bottomDock.less skinStyles/teleportTarget.less resources/skins.vector.styles.legacy/components/Footer.less resources/skins.vector.styles/skin.less resources/skins.vector.styles/components/UserLinks.less resources/skins.vector.styles.legacy/components/Indicators.less skinStyles/ext.relatedArticles.readMore.less resources/mediawiki.less/vector/mediawiki.skin.variables.less skinStyles/ext.echo.styles.alert.less skinStyles/jquery.ui/jquery.ui.button.css resources/skins.vector.styles/components/MainMenu.less resources/skins.vector.styles/CSSCustomProperties.less skinStyles/vector/mediawiki.notification.less resources/skins.vector.styles.legacy/mixins.less resources/skins.vector.styles.legacy/components/UserLinks.less resources/skins.vector.styles/components/Button.less resources/skins.vector.styles.legacy/layouts/screen.less skinStyles/jquery.ui/jquery.ui.tooltip.css skinStyles/vector/ext.echo.styles.badge.less resources/skins.vector.styles/components/PageTitlebar.less skinStyles/ooui.less resources/skins.vector.styles/layouts/screen.less resources/skins.vector.styles/components/Indicators.less resources/skins.vector.styles/media.less skinStyles/jquery.ui/jquery.ui.core.css resources/skins.vector.styles/components/Logo.less skinStyles/jquery.ui/jquery.ui.tabs.css resources/skins.vector.styles.legacy/components/SidebarLogo.less resources/skins.vector.styles/components/PageTools.less skinStyles/jquery.ui/jquery.ui.progressbar.css skinStyles/jquery.ui/jquery.ui.dialog.css resources/skins.vector.styles/components/SearchBox.less skinStyles/jquery.ui/jquery.ui.selectable.css skinStyles/mediawiki.special.search.interwikiwidget.less skinStyles/jquery.ui/jquery.ui.slider.css resources/skins.vector.styles/components/MenuTabs.less resources/skins.vector.styles/layouts/grid.less resources/skins.vector.styles/typography.less skinStyles/mediawiki.action.edit.less resources/mediawiki.less/vector-2022/mediawiki.skin.variables.less resources/skins.vector.styles/layouts/toc/pinned.less resources/skins.vector.styles/layouts/print.less skinStyles/ext.uls.pt.less resources/skins.vector.styles/components/Icon.less skinStyles/jquery.ui/jquery.ui.accordion.css resources/skins.vector.styles/layouts/toc/unpinned.less -f json
--- stdout ---
[{"source":"/src/repo/resources/skins.vector.js/stickyHeader.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles.legacy/components/Menu.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.js/index.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/components/PageToolbar.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/components/Header.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/components/Dropdown.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles.legacy/normalize.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles.legacy/layouts/print.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles.legacy/typography.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/mixins.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/components/Appearance.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles.legacy/skin-legacy.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles.legacy/components/SearchBox.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles.legacy/print.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles.legacy/components/LegacySidebar.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles.legacy/components/MenuTabs.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/skinStyles/mediawiki.action.view.redirectPage.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/skinStyles/mediawiki.notification.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/links.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/mediawiki.less/vector/mediawiki.skin.variables.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/mediawiki.less/vector-2022/mediawiki.skin.variables.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/components/TableOfContents.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles.legacy/components/TabWatchstarLink.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/variables.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[{"line":45,"column":1,"endLine":45,"endColumn":59,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-container-queries\" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 (plugin/no-unsupported-browser-features)"},{"line":45,"column":1,"endLine":45,"endColumn":59,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-paged-media\" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 (plugin/no-unsupported-browser-features)"},{"line":136,"column":1,"endLine":136,"endColumn":70,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-container-queries\" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 (plugin/no-unsupported-browser-features)"},{"line":136,"column":1,"endLine":136,"endColumn":70,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-paged-media\" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 (plugin/no-unsupported-browser-features)"},{"line":137,"column":1,"endLine":137,"endColumn":72,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-container-queries\" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 (plugin/no-unsupported-browser-features)"},{"line":138,"column":1,"endLine":138,"endColumn":77,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-container-queries\" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 (plugin/no-unsupported-browser-features)"},{"line":138,"column":1,"endLine":138,"endColumn":77,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-paged-media\" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 (plugin/no-unsupported-browser-features)"},{"line":139,"column":1,"endLine":139,"endColumn":85,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-container-queries\" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 (plugin/no-unsupported-browser-features)"},{"line":139,"column":1,"endLine":139,"endColumn":85,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-paged-media\" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 (plugin/no-unsupported-browser-features)"},{"line":140,"column":1,"endLine":140,"endColumn":90,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-container-queries\" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 (plugin/no-unsupported-browser-features)"},{"line":140,"column":1,"endLine":140,"endColumn":90,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-paged-media\" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 (plugin/no-unsupported-browser-features)"},{"line":151,"column":1,"endLine":151,"endColumn":38,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-paged-media\" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 (plugin/no-unsupported-browser-features)"}]},{"source":"/src/repo/resources/skins.vector.search/App.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/components/SiteNotice.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/components/Footer.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.js/tableOfContents.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/components/Menu.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.js/popupNotification.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/skinStyles/ext.echo.styles.badge.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/skinStyles/ext.uls.compactlinks.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/components/PinnableHeader.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles.legacy/variables.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[{"line":63,"column":1,"endLine":63,"endColumn":59,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-container-queries\" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 (plugin/no-unsupported-browser-features)"},{"line":63,"column":1,"endLine":63,"endColumn":59,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-paged-media\" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 (plugin/no-unsupported-browser-features)"},{"line":102,"column":1,"endLine":102,"endColumn":112,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-paged-media\" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 (plugin/no-unsupported-browser-features)"},{"line":161,"column":1,"endLine":161,"endColumn":69,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-container-queries\" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 (plugin/no-unsupported-browser-features)"},{"line":161,"column":1,"endLine":161,"endColumn":69,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-paged-media\" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 (plugin/no-unsupported-browser-features)"},{"line":162,"column":1,"endLine":162,"endColumn":71,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-container-queries\" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 (plugin/no-unsupported-browser-features)"},{"line":163,"column":1,"endLine":163,"endColumn":76,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-container-queries\" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 (plugin/no-unsupported-browser-features)"},{"line":163,"column":1,"endLine":163,"endColumn":76,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-paged-media\" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 (plugin/no-unsupported-browser-features)"},{"line":164,"column":1,"endLine":164,"endColumn":84,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-container-queries\" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 (plugin/no-unsupported-browser-features)"},{"line":164,"column":1,"endLine":164,"endColumn":84,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-paged-media\" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 (plugin/no-unsupported-browser-features)"},{"line":165,"column":1,"endLine":165,"endColumn":89,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-container-queries\" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 (plugin/no-unsupported-browser-features)"},{"line":165,"column":1,"endLine":165,"endColumn":89,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-paged-media\" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 (plugin/no-unsupported-browser-features)"},{"line":176,"column":1,"endLine":176,"endColumn":38,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-paged-media\" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 (plugin/no-unsupported-browser-features)"}]},{"source":"/src/repo/resources/skins.vector.styles/components/LanguageDropdown.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/components/PinnableElement.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[{"line":28,"column":2,"endLine":28,"endColumn":17,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-containment\" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3 (plugin/no-unsupported-browser-features)"}]},{"source":"/src/repo/skinStyles/ext.uls.interface.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/components/Watchstar.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/skinStyles/ext.visualEditor.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[{"line":16,"column":2,"endLine":23,"endColumn":3,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"prefers-color-scheme\" is not supported by Safari 12,11.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5 (plugin/no-unsupported-browser-features)"}]},{"source":"/src/repo/resources/skins.vector.styles.legacy/components/MenuDropdown.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.clientPreferences/clientPreferences.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[{"line":25,"column":1,"endLine":29,"endColumn":2,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"prefers-color-scheme\" is not supported by Safari 12,11.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5 (plugin/no-unsupported-browser-features)"}]},{"source":"/src/repo/resources/skins.vector.styles.legacy/components/SiteNotice.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/components/BottomDock.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/print.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/normalize.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.js/bottomDock.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[{"line":8,"column":2,"endLine":15,"endColumn":3,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"flexbox-gap\" is not supported by Safari 12,13,14,11.1,12.1,13.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4 (plugin/no-unsupported-browser-features)"}]},{"source":"/src/repo/skinStyles/teleportTarget.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles.legacy/components/Footer.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/skin.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/components/UserLinks.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles.legacy/components/Indicators.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/skinStyles/ext.relatedArticles.readMore.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/skinStyles/ext.echo.styles.alert.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/components/MainMenu.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/CSSCustomProperties.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[{"line":106,"column":1,"endLine":125,"endColumn":2,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"prefers-color-scheme\" is not supported by Safari 12,11.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5 (plugin/no-unsupported-browser-features)"}]},{"source":"/src/repo/skinStyles/vector/mediawiki.notification.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles.legacy/mixins.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles.legacy/components/UserLinks.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/components/Button.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles.legacy/layouts/screen.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/skinStyles/vector/ext.echo.styles.badge.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/components/PageTitlebar.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/skinStyles/ooui.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/layouts/screen.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[{"line":102,"column":2,"endLine":102,"endColumn":41,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-container-queries\" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 (plugin/no-unsupported-browser-features)"},{"line":102,"column":2,"endLine":102,"endColumn":41,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-paged-media\" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 (plugin/no-unsupported-browser-features)"},{"line":147,"column":2,"endLine":147,"endColumn":41,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-container-queries\" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 (plugin/no-unsupported-browser-features)"},{"line":147,"column":2,"endLine":147,"endColumn":41,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-paged-media\" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 (plugin/no-unsupported-browser-features)"},{"line":165,"column":2,"endLine":165,"endColumn":30,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-touch-action\" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1,18.2 (plugin/no-unsupported-browser-features)"},{"line":165,"column":2,"endLine":165,"endColumn":30,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"pointer\" is not supported by Safari 12,11.1,12.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5 (plugin/no-unsupported-browser-features)"}]},{"source":"/src/repo/resources/skins.vector.styles/components/Indicators.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[{"line":1,"column":1,"endLine":9,"endColumn":2,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"flexbox-gap\" is not supported by Safari 12,13,14,11.1,12.1,13.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4 (plugin/no-unsupported-browser-features)"}]},{"source":"/src/repo/resources/skins.vector.styles/media.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[{"line":29,"column":1,"endLine":33,"endColumn":2,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"prefers-color-scheme\" is not supported by Safari 12,11.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5 (plugin/no-unsupported-browser-features)"}]},{"source":"/src/repo/resources/skins.vector.styles/components/Logo.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles.legacy/components/SidebarLogo.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/components/PageTools.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/components/SearchBox.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/skinStyles/mediawiki.special.search.interwikiwidget.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/components/MenuTabs.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/layouts/grid.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[{"line":23,"column":3,"endLine":23,"endColumn":25,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-overflow-anchor\" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1,18.2, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1,18.2 (plugin/no-unsupported-browser-features)"},{"line":121,"column":4,"endLine":121,"endColumn":26,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-overflow-anchor\" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1,18.2, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1,18.2 (plugin/no-unsupported-browser-features)"}]},{"source":"/src/repo/resources/skins.vector.styles/typography.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/skinStyles/mediawiki.action.edit.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/layouts/toc/pinned.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/layouts/print.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/skinStyles/ext.uls.pt.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/components/Icon.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/resources/skins.vector.styles/layouts/toc/unpinned.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[{"line":42,"column":4,"endLine":42,"endColumn":34,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-paged-media\" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 (plugin/no-unsupported-browser-features)"},{"line":61,"column":5,"endLine":61,"endColumn":35,"rule":"plugin/no-unsupported-browser-features","severity":"warning","text":"Unexpected browser feature \"css-paged-media\" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 (plugin/no-unsupported-browser-features)"}]}]
--- end ---
$ /usr/bin/npm install jest-environment-jsdom@29.7.0 --save-dev --save-exact
--- stderr ---
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: '@wikimedia/codex@1.19.1',
npm WARN EBADENGINE required: { node: '>=20', npm: '>=10.8.1' },
npm WARN EBADENGINE current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: '@wikimedia/codex-icons@1.19.1',
npm WARN EBADENGINE required: { node: '>=20', npm: '>=10.8.1' },
npm WARN EBADENGINE current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
--- stdout ---
added 14 packages, and audited 955 packages in 2s
126 packages are looking for funding
run `npm fund` for details
2 high severity vulnerabilities
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: '@wikimedia/codex@1.19.1',
npm WARN EBADENGINE required: { node: '>=20', npm: '>=10.8.1' },
npm WARN EBADENGINE current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE package: '@wikimedia/codex-icons@1.19.1',
npm WARN EBADENGINE required: { node: '>=20', npm: '>=10.8.1' },
npm WARN EBADENGINE current: { node: 'v18.19.0', npm: '9.2.0' }
npm WARN EBADENGINE }
npm WARN deprecated inflight@1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
npm WARN deprecated @humanwhocodes/config-array@0.13.0: Use @eslint/config-array instead
npm WARN deprecated rimraf@3.0.2: Rimraf versions prior to v4 are no longer supported
npm WARN deprecated abab@2.0.6: Use your platform's native atob() and btoa() methods instead
npm WARN deprecated glob@7.2.0: Glob versions prior to v9 are no longer supported
npm WARN deprecated @humanwhocodes/object-schema@2.0.3: Use @eslint/object-schema instead
npm WARN deprecated domexception@4.0.0: Use your platform's native DOMException instead
npm WARN deprecated mkdirp@0.3.0: Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)
npm WARN deprecated sinon@12.0.1: 16.1.1
npm WARN deprecated eslint@8.57.1: This version is no longer supported. Please see https://eslint.org/version-support for other options.
--- stdout ---
added 954 packages, and audited 955 packages in 11s
126 packages are looking for funding
run `npm fund` for details
2 high severity vulnerabilities
To address all issues (including breaking changes), run:
npm audit fix --force
Run `npm audit` for details.
--- end ---
$ /usr/bin/npm test
--- stderr ---
skinStyles/ext.visualEditor.less
16:2 ⚠ Unexpected browser feature "prefers-color-scheme" is not supported by Safari 12,11.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5 plugin/no-unsupported-browser-features
resources/skins.vector.clientPreferences/clientPreferences.less
25:1 ⚠ Unexpected browser feature "prefers-color-scheme" is not supported by Safari 12,11.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5 plugin/no-unsupported-browser-features
resources/skins.vector.js/bottomDock.less
8:2 ⚠ Unexpected browser feature "flexbox-gap" is not supported by Safari 12,13,14,11.1,12.1,13.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4 plugin/no-unsupported-browser-features
resources/skins.vector.styles/CSSCustomProperties.less
106:1 ⚠ Unexpected browser feature "prefers-color-scheme" is not supported by Safari 12,11.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5 plugin/no-unsupported-browser-features
resources/skins.vector.styles/media.less
29:1 ⚠ Unexpected browser feature "prefers-color-scheme" is not supported by Safari 12,11.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5 plugin/no-unsupported-browser-features
resources/skins.vector.styles/variables.less
45:1 ⚠ Unexpected browser feature "css-container-queries" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 plugin/no-unsupported-browser-features
45:1 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
136:1 ⚠ Unexpected browser feature "css-container-queries" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 plugin/no-unsupported-browser-features
136:1 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
137:1 ⚠ Unexpected browser feature "css-container-queries" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 plugin/no-unsupported-browser-features
138:1 ⚠ Unexpected browser feature "css-container-queries" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 plugin/no-unsupported-browser-features
138:1 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
139:1 ⚠ Unexpected browser feature "css-container-queries" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 plugin/no-unsupported-browser-features
139:1 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
140:1 ⚠ Unexpected browser feature "css-container-queries" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 plugin/no-unsupported-browser-features
140:1 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
151:1 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
resources/skins.vector.styles.legacy/variables.less
63:1 ⚠ Unexpected browser feature "css-container-queries" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 plugin/no-unsupported-browser-features
63:1 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
102:1 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
161:1 ⚠ Unexpected browser feature "css-container-queries" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 plugin/no-unsupported-browser-features
161:1 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
162:1 ⚠ Unexpected browser feature "css-container-queries" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 plugin/no-unsupported-browser-features
163:1 ⚠ Unexpected browser feature "css-container-queries" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 plugin/no-unsupported-browser-features
163:1 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
164:1 ⚠ Unexpected browser feature "css-container-queries" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 plugin/no-unsupported-browser-features
164:1 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
165:1 ⚠ Unexpected browser feature "css-container-queries" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 plugin/no-unsupported-browser-features
165:1 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
176:1 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
resources/skins.vector.styles/components/Indicators.less
1:1 ⚠ Unexpected browser feature "flexbox-gap" is not supported by Safari 12,13,14,11.1,12.1,13.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4 plugin/no-unsupported-browser-features
resources/skins.vector.styles/components/PinnableElement.less
28:2 ⚠ Unexpected browser feature "css-containment" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3 plugin/no-unsupported-browser-features
resources/skins.vector.styles/layouts/grid.less
23:3 ⚠ Unexpected browser feature "css-overflow-anchor" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1,18.2, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1,18.2 plugin/no-unsupported-browser-features
121:4 ⚠ Unexpected browser feature "css-overflow-anchor" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1,18.2, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1,18.2 plugin/no-unsupported-browser-features
resources/skins.vector.styles/layouts/screen.less
102:2 ⚠ Unexpected browser feature "css-container-queries" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 plugin/no-unsupported-browser-features
102:2 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
147:2 ⚠ Unexpected browser feature "css-container-queries" is not supported by Edge 98,99,100,101,102,103,104, Firefox 97,98,99,100,101,102,103,104,105,106,107,108,109, Chrome 98,99,100,101,102,103,104, Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8 plugin/no-unsupported-browser-features
147:2 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
165:2 ⚠ Unexpected browser feature "css-touch-action" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1,18.2 plugin/no-unsupported-browser-features
165:2 ⚠ Unexpected browser feature "pointer" is not supported by Safari 12,11.1,12.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5 plugin/no-unsupported-browser-features
resources/skins.vector.styles/layouts/toc/unpinned.less
42:4 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
61:5 ⚠ Unexpected browser feature "css-paged-media" is not supported by Safari 12,13,14,15,11.1,12.1,13.1,14.1,15.1,15.2-15.3,15.4,15.5,15.6,16.0,16.1,16.2,16.3,16.4,16.5,16.6,17.0,17.1,17.2,17.3,17.4,17.5,17.6,18.0,18.1, Safari on iOS 11.3-11.4,12.0-12.1,12.2-12.5,13.0-13.1,13.2,13.3,13.4-13.7,14.0-14.4,14.5-14.8,15.0-15.1,15.2-15.3,15.4,15.5,15.6-15.8,16.0,16.1,16.2,16.3,16.4,16.5,16.6-16.7,17.0,17.1,17.2,17.3,17.4,17.5,17.6-17.7,18.0,18.1, Android Browser 131 plugin/no-unsupported-browser-features
⚠ 42 problems (0 errors, 42 warnings)
The "se" translation has 2 translations with trailing whitespace:
* vector-opt-out
* vector-opt-out-tooltip
PASS tests/jest/AB.test.js
FAIL tests/jest/tableOfContents.test.js
● Test suite failed to run
● Invalid return value:
`process()` or/and `processAsync()` method of code transformer found at
"/src/repo/node_modules/mustache-jest/index.js"
should return an object or a Promise resolving to an object. The object
must have `code` property with a string of processed code.
This error may be caused by a breaking change in Jest 28:
https://jestjs.io/docs/28.x/upgrading-to-jest28#transformer
Code Transformation Documentation:
https://jestjs.io/docs/code-transformation
4 | * TableOfContents Mustache templates
5 | */
> 6 | const templateTocContents = require( /** @type {string} */ ( './templates/TableOfContents__list.mustache' ) );
| ^
7 | const templateTocLine = require( /** @type {string} */ ( './templates/TableOfContents__line.mustache' ) );
8 | /**
9 | * TableOfContents Config object for filling mustache templates
at ScriptTransformer._buildTransformResult (node_modules/@jest/transform/build/ScriptTransformer.js:442:15)
at ScriptTransformer.transformSource (node_modules/@jest/transform/build/ScriptTransformer.js:554:17)
at ScriptTransformer._transformAndBuildScript (node_modules/@jest/transform/build/ScriptTransformer.js:674:40)
at ScriptTransformer.transform (node_modules/@jest/transform/build/ScriptTransformer.js:726:19)
at Object.require (resources/skins.vector.js/tableOfContents.js:6:29)
at Object.<anonymous> (tests/jest/tableOfContents.test.js:9:29)
FAIL tests/jest/pinnableElement.test.js
● Pinnable header › renders
expect(received).toMatchSnapshot()
Snapshot name: `Pinnable header renders 1`
- Snapshot - 11
+ Received + 11
@@ -1,19 +1,19 @@
- "<div id=\"pinned-container\">
+ "<div id="pinned-container">
</div>
- <div class=\"vector-dropdown\">
+ <div class="vector-dropdown">
- <input type=\"checkbox\" id=\"checkbox\" class=\"vector-menu-checkbox\">
+ <input type="checkbox" id="checkbox" class="vector-menu-checkbox">
- <label for=\"checkbox\" class=\"vector-menu-heading \">
+ <label for="checkbox" class="vector-menu-heading ">
- <span class=\"vector-menu-heading-label\">Dropdown</span>
+ <span class="vector-menu-heading-label">Dropdown</span>
</label>
- <div class=\"vector-menu-content\">
+ <div class="vector-menu-content">
- <div id=\"unpinned-container\">
+ <div id="unpinned-container">
- <div id=\"pinnable-element\"><div class=\"vector-pinnable-header pinnable-element-pinnable-header vector-pinnable-header-unpinned\" data-feature-name=\"pinned\" data-pinnable-element-id=\"pinnable-element\">
+ <div id="pinnable-element"><div class="vector-pinnable-header pinnable-element-pinnable-header vector-pinnable-header-unpinned" data-feature-name="pinned" data-pinnable-element-id="pinnable-element">
- <div class=\"vector-pinnable-header-label\">simple pinnable element</div>
+ <div class="vector-pinnable-header-label">simple pinnable element</div>
- <button class=\"vector-pinnable-header-toggle-button vector-pinnable-header-pin-button\" data-event-name=\"pinnable-header.pinnable-element.pin\">pin</button>
+ <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.pinnable-element.pin">pin</button>
- <button class=\"vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button\" data-event-name=\"pinnable-header.pinnable-element.unpin\">unpin</button>
+ <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.pinnable-element.unpin">unpin</button>
</div>
</div>
</div>
</div>
</div>
71 | test( 'renders', () => {
72 | initializeHTML( simpleData );
> 73 | expect( document.body.innerHTML ).toMatchSnapshot();
| ^
74 | } );
75 |
76 | test( 'updates pinnable header classes when toggle is pressed', () => {
at Object.<anonymous> (tests/jest/pinnableElement.test.js:73:37)
› 1 snapshot failed.
FAIL tests/jest/skins.vector.js/dropdownMenus.test.js
● addPortletLinkHandler › Adds a span with icon class to menus
expect(received).toMatchSnapshot()
Snapshot name: `addPortletLinkHandler Adds a span with icon class to menus 1`
- Snapshot - 3
+ Received + 3
@@ -1,9 +1,9 @@
"
- <ul class=\"vector-menu\">
+ <ul class="vector-menu">
- <li class=\"mw-list-item mw-list-item-js\" id=\"test-id\">
+ <li class="mw-list-item mw-list-item-js" id="test-id">
- <a href=\"#test-href\">
+ <a href="#test-href">
<span>
test link content
</span>
</a>
</li>
53 | const mockPortletItem = document.getElementById( 'test-id' );
54 | addPortletLinkHandler( mockPortletItem, { id: 'test-id' } );
> 55 | expect( document.body.innerHTML ).toMatchSnapshot();
| ^
56 | } );
57 |
58 | test( 'Does not add an icon when noicon class is present', () => {
at Object.<anonymous> (tests/jest/skins.vector.js/dropdownMenus.test.js:55:37)
● addPortletLinkHandler › Does not add an icon when noicon class is present
expect(received).toMatchSnapshot()
Snapshot name: `addPortletLinkHandler Does not add an icon when noicon class is present 1`
- Snapshot - 3
+ Received + 3
@@ -1,9 +1,9 @@
"
- <ul class=\"vector-menu\">
+ <ul class="vector-menu">
- <li class=\"mw-list-item mw-list-item-js\" id=\"test-id\">
+ <li class="mw-list-item mw-list-item-js" id="test-id">
- <a href=\"#test-href\">
+ <a href="#test-href">
<span>
test link content
</span>
</a>
</li>
72 | const mockPortletItem = document.getElementById( 'test-id' );
73 | addPortletLinkHandler( mockPortletItem, { id: 'test-id' } );
> 74 | expect( document.body.innerHTML ).toMatchSnapshot();
| ^
75 | } );
76 |
77 | test( 'JS portlet should be moved to more menu (#p-cactions) at narrow widths', () => {
at Object.<anonymous> (tests/jest/skins.vector.js/dropdownMenus.test.js:74:37)
› 2 snapshots failed.
FAIL tests/jest/skins.vector.es6/main.test.js
● Test suite failed to run
● Invalid return value:
`process()` or/and `processAsync()` method of code transformer found at
"/src/repo/node_modules/mustache-jest/index.js"
should return an object or a Promise resolving to an object. The object
must have `code` property with a string of processed code.
This error may be caused by a breaking change in Jest 28:
https://jestjs.io/docs/28.x/upgrading-to-jest28#transformer
Code Transformation Documentation:
https://jestjs.io/docs/code-transformation
4 | * TableOfContents Mustache templates
5 | */
> 6 | const templateTocContents = require( /** @type {string} */ ( './templates/TableOfContents__list.mustache' ) );
| ^
7 | const templateTocLine = require( /** @type {string} */ ( './templates/TableOfContents__line.mustache' ) );
8 | /**
9 | * TableOfContents Config object for filling mustache templates
at ScriptTransformer._buildTransformResult (node_modules/@jest/transform/build/ScriptTransformer.js:442:15)
at ScriptTransformer.transformSource (node_modules/@jest/transform/build/ScriptTransformer.js:554:17)
at ScriptTransformer._transformAndBuildScript (node_modules/@jest/transform/build/ScriptTransformer.js:674:40)
at ScriptTransformer.transform (node_modules/@jest/transform/build/ScriptTransformer.js:726:19)
at Object.require (resources/skins.vector.js/tableOfContents.js:6:29)
at Object.require (resources/skins.vector.js/setupIntersectionObservers.js:7:24)
at Object.<anonymous> (tests/jest/skins.vector.es6/main.test.js:8:18)
FAIL tests/jest/stickyHeader.test.js
● Sticky header renders
expect(received).toMatchSnapshot()
Snapshot name: `Sticky header renders 1`
- Snapshot - 23
+ Received + 23
- "<div id=\"vector-sticky-header\" class=\"vector-sticky-header\">
+ "<div id="vector-sticky-header" class="vector-sticky-header">
- <div class=\"vector-sticky-header-start\">
+ <div class="vector-sticky-header-start">
- <div class=\"vector-sticky-header-icon-start vector-button-flush-left vector-button-flush-right\" aria-hidden=\"true\">
+ <div class="vector-sticky-header-icon-start vector-button-flush-left vector-button-flush-right" aria-hidden="true">
- <button class=\"cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-sticky-header-search-toggle\" data-event-name=\"ui.vector-sticky-search-form.icon\" tabindex=\"-1\"><span class=\"vector-icon mw-ui-icon-search mw-ui-icon-wikimedia-search\"></span>
+ <button class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-sticky-header-search-toggle" data-event-name="ui.vector-sticky-search-form.icon" tabindex="-1"><span class="vector-icon mw-ui-icon-search mw-ui-icon-wikimedia-search"></span>
<span>search</span>
</button>
</div>
- <div> </div> <div class=\"vector-sticky-header-context-bar\">
+ <div> </div> <div class="vector-sticky-header-context-bar">
- <nav aria-label=\"\" class=\"vector-toc-landmark\">
+ <nav aria-label="" class="vector-toc-landmark">
- <div id=\"vector-sticky-header-toc\" class=\"vector-dropdown mw-portlet mw-portlet-sticky-header-toc vector-sticky-header-toc\">
+ <div id="vector-sticky-header-toc" class="vector-dropdown mw-portlet mw-portlet-sticky-header-toc vector-sticky-header-toc">
- <input type=\"checkbox\" id=\"vector-sticky-header-toc-checkbox\" role=\"button\" aria-haspopup=\"true\" data-event-name=\"ui.dropdown-vector-sticky-header-toc\" class=\"vector-dropdown-checkbox\" aria-label=\"\" tabindex=\"-1\">
+ <input type="checkbox" id="vector-sticky-header-toc-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-sticky-header-toc" class="vector-dropdown-checkbox" aria-label="" tabindex="-1">
- <label id=\"vector-sticky-header-toc-label\" for=\"vector-sticky-header-toc-checkbox\" class=\"vector-dropdown-label cdx-button cdx-button--weight-quiet cdx-button--icon-only\" aria-hidden=\"true\" tabindex=\"-1\"><span class=\"vector-dropdown-label-text\"></span>
+ <label id="vector-sticky-header-toc-label" for="vector-sticky-header-toc-checkbox" class="vector-dropdown-label cdx-button cdx-button--weight-quiet cdx-button--icon-only" aria-hidden="true" tabindex="-1"><span class="vector-dropdown-label-text"></span>
</label>
- <div class=\"vector-dropdown-content\">
+ <div class="vector-dropdown-content">
</div>
</div>
</nav>
- <div class=\"vector-sticky-header-context-bar-primary\" aria-hidden=\"true\"></div>
+ <div class="vector-sticky-header-context-bar-primary" aria-hidden="true"></div>
</div>
</div>
- <div class=\"vector-sticky-header-end\" aria-hidden=\"true\">
+ <div class="vector-sticky-header-end" aria-hidden="true">
- <div class=\"vector-sticky-header-icons\">
+ <div class="vector-sticky-header-icons">
- <a href=\"#\" class=\"cdx-button cdx-button--weight-quiet cdx-button--icon-only sticky-header-icon\" id=\"ca-talk-sticky-header\" data-event-name=\"talk-sticky-header\" tabindex=\"-1\"><span class=\"vector-icon mw-ui-icon-speechBubbles mw-ui-icon-wikimedia-speechBubbles\"></span>
+ <a href="#" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only sticky-header-icon" id="ca-talk-sticky-header" data-event-name="talk-sticky-header" tabindex="-1"><span class="vector-icon mw-ui-icon-speechBubbles mw-ui-icon-wikimedia-speechBubbles"></span>
<span></span>
</a>
- <a href=\"#\" class=\"cdx-button cdx-button--weight-quiet cdx-button--icon-only sticky-header-icon\" id=\"ca-history-sticky-header\" data-event-name=\"history-sticky-header\" tabindex=\"-1\"><span class=\"vector-icon mw-ui-icon-history mw-ui-icon-wikimedia-history\"></span>
+ <a href="#" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only sticky-header-icon" id="ca-history-sticky-header" data-event-name="history-sticky-header" tabindex="-1"><span class="vector-icon mw-ui-icon-history mw-ui-icon-wikimedia-history"></span>
<span></span>
</a>
- <a href=\"#\" class=\"cdx-button cdx-button--weight-quiet cdx-button--icon-only sticky-header-icon mw-watchlink\" id=\"ca-watchstar-sticky-header\" data-event-name=\"watch-sticky-header\" tabindex=\"-1\"><span class=\"vector-icon mw-ui-icon-star mw-ui-icon-wikimedia-star\"></span>
+ <a href="#" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only sticky-header-icon mw-watchlink" id="ca-watchstar-sticky-header" data-event-name="watch-sticky-header" tabindex="-1"><span class="vector-icon mw-ui-icon-star mw-ui-icon-wikimedia-star"></span>
<span></span>
</a>
- <a href=\"#\" class=\"cdx-button cdx-button--weight-quiet cdx-button--icon-only sticky-header-icon\" id=\"ca-ve-edit-sticky-header\" data-event-name=\"ve-edit-sticky-header\" tabindex=\"-1\"><span class=\"vector-icon mw-ui-icon-edit mw-ui-icon-wikimedia-edit\"></span>
+ <a href="#" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only sticky-header-icon" id="ca-ve-edit-sticky-header" data-event-name="ve-edit-sticky-header" tabindex="-1"><span class="vector-icon mw-ui-icon-edit mw-ui-icon-wikimedia-edit"></span>
<span></span>
</a>
- <a href=\"#\" class=\"cdx-button cdx-button--weight-quiet cdx-button--icon-only sticky-header-icon\" id=\"ca-edit-sticky-header\" data-event-name=\"wikitext-edit-sticky-header\" tabindex=\"-1\"><span class=\"vector-icon mw-ui-icon-wikiText mw-ui-icon-wikimedia-wikiText\"></span>
+ <a href="#" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only sticky-header-icon" id="ca-edit-sticky-header" data-event-name="wikitext-edit-sticky-header" tabindex="-1"><span class="vector-icon mw-ui-icon-wikiText mw-ui-icon-wikimedia-wikiText"></span>
<span></span>
</a>
- <a href=\"#\" class=\"cdx-button cdx-button--weight-quiet cdx-button--icon-only sticky-header-icon\" id=\"ca-viewsource-sticky-header\" data-event-name=\"editLock\" tabindex=\"-1\"><span class=\"vector-icon mw-ui-icon-star mw-ui-icon-wikimedia-star\"></span>
+ <a href="#" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only sticky-header-icon" id="ca-viewsource-sticky-header" data-event-name="editLock" tabindex="-1"><span class="vector-icon mw-ui-icon-star mw-ui-icon-wikimedia-star"></span>
<span></span>
</a>
</div>
- <div class=\"vector-sticky-header-buttons\">
+ <div class="vector-sticky-header-buttons">
- <button class=\"cdx-button cdx-button--weight-quiet mw-interlanguage-selector\" id=\"p-lang-btn-sticky-header\" data-event-name=\"ui.dropdown-p-lang-btn-sticky-header\" tabindex=\"-1\"><span>0 languages</span>
+ <button class="cdx-button cdx-button--weight-quiet mw-interlanguage-selector" id="p-lang-btn-sticky-header" data-event-name="ui.dropdown-p-lang-btn-sticky-header" tabindex="-1"><span>0 languages</span>
</button>
</div>
- <div class=\"vector-sticky-header-icon-end\">
+ <div class="vector-sticky-header-icon-end">
- <div class=\"vector-user-links\">
+ <div class="vector-user-links">
</div>
</div>
</div>
</div>
"
135 |
136 | test( 'Sticky header renders', () => {
> 137 | expect( document.body.innerHTML ).toMatchSnapshot();
| ^
138 | } );
139 |
140 | describe( 'sticky header', () => {
at Object.<anonymous> (tests/jest/stickyHeader.test.js:137:36)
› 1 snapshot failed.
PASS tests/jest/skins.vector.legacy.js/portlets.test.js
PASS tests/jest/skins.vector.js/disableNightModeIfGadget.test.js
PASS tests/jest/restSearchClient.test.js
PASS tests/jest/skins.vector.js/portlets.test.js
FAIL tests/jest/skins.vector.js/tables.test.js
● tables › wraps table with div
expect(received).toMatchSnapshot()
Snapshot name: `tables wraps table with div 1`
- Snapshot - 2
+ Received + 2
"
- <div class=\"mw-parser-output\">
+ <div class="mw-parser-output">
- <div class=\"noresize\"><table class=\"wikitable\">
+ <div class="noresize"><table class="wikitable">
<tbody><tr><th>table table table</th></tr></tbody>
</table></div>
</div>
"
12 | tables();
13 |
> 14 | expect( document.body.innerHTML ).toMatchSnapshot();
| ^
15 | } );
16 |
17 | test( 'wraps multiple table with div', () => {
at Object.<anonymous> (tests/jest/skins.vector.js/tables.test.js:14:37)
● tables › wraps multiple table with div
expect(received).toMatchSnapshot()
Snapshot name: `tables wraps multiple table with div 1`
- Snapshot - 5
+ Received + 5
"
- <div class=\"mw-parser-output\">
+ <div class="mw-parser-output">
- <div class=\"noresize\"><table class=\"wikitable\">
+ <div class="noresize"><table class="wikitable">
<tbody><tr><th>table table table</th></tr></tbody>
</table></div>
- <div class=\"noresize\"><table class=\"wikitable\">
+ <div class="noresize"><table class="wikitable">
- </table></div><div class=\"noresize\"><table class=\"wikitable\">
+ </table></div><div class="noresize"><table class="wikitable">
<tbody><tr><th>table table table</th></tr></tbody>
</table></div>
- <div class=\"noresize\"><table class=\"wikitable\">
+ <div class="noresize"><table class="wikitable">
<tbody><tr><th>table table table</th></tr></tbody>
</table></div>
</div>
"
32 | tables();
33 |
> 34 | expect( document.body.innerHTML ).toMatchSnapshot();
| ^
35 | } );
36 |
37 | test( 'doesnt wrap nested tables', () => {
at Object.<anonymous> (tests/jest/skins.vector.js/tables.test.js:34:37)
● tables › doesnt wrap nested tables
expect(received).toMatchSnapshot()
Snapshot name: `tables doesnt wrap nested tables 1`
- Snapshot - 3
+ Received + 3
"
- <div class=\"mw-parser-output\">
+ <div class="mw-parser-output">
- <div class=\"noresize\"><table class=\"wikitable\">
+ <div class="noresize"><table class="wikitable">
<tbody>
<tr><th>table table table</th></tr>
- <tr><td><table class=\"wikitable\"><tbody><tr><th>table table table</th></tr></tbody></table></td><td></td></tr>
+ <tr><td><table class="wikitable"><tbody><tr><th>table table table</th></tr></tbody></table></td><td></td></tr>
</tbody>
</table></div>
</div>
"
48 | tables();
49 |
> 50 | expect( document.body.innerHTML ).toMatchSnapshot();
| ^
51 | } );
52 |
53 | test( 'doesnt wrap tables that are not wikitables', () => {
at Object.<anonymous> (tests/jest/skins.vector.js/tables.test.js:50:37)
● tables › doesnt wrap tables that are not wikitables
expect(received).toMatchSnapshot()
Snapshot name: `tables doesnt wrap tables that are not wikitables 1`
- Snapshot - 1
+ Received + 1
@@ -1,7 +1,7 @@
"
- <div class=\"mw-parser-output\">
+ <div class="mw-parser-output">
<table>
<tbody>
<tr><th>table table table</th></tr>
<tr><td><table><tbody><tr><th>table table table</th></tr></tbody></table></td><td></td></tr>
</tbody>
64 | tables();
65 |
> 66 | expect( document.body.innerHTML ).toMatchSnapshot();
| ^
67 | } );
68 |
69 | test( 'doesnt wrap tables that already have noresize', () => {
at Object.<anonymous> (tests/jest/skins.vector.js/tables.test.js:66:37)
● tables › doesnt wrap tables that already have noresize
expect(received).toMatchSnapshot()
Snapshot name: `tables doesnt wrap tables that already have noresize 1`
- Snapshot - 3
+ Received + 3
@@ -1,9 +1,9 @@
"
- <div class=\"mw-parser-output\">
+ <div class="mw-parser-output">
- <div class=\"noresize\">
+ <div class="noresize">
- <table class=\"wikitable\">
+ <table class="wikitable">
<tbody>
<tr><th>table table table</th></tr>
</tbody>
</table>
</div>
81 | tables();
82 |
> 83 | expect( document.body.innerHTML ).toMatchSnapshot();
| ^
84 | } );
85 |
86 | test( 'doesnt wrap tables that are already wrapped', () => {
at Object.<anonymous> (tests/jest/skins.vector.js/tables.test.js:83:37)
● tables › doesnt wrap tables that are already wrapped
expect(received).toMatchSnapshot()
Snapshot name: `tables doesnt wrap tables that are already wrapped 1`
- Snapshot - 2
+ Received + 2
@@ -1,9 +1,9 @@
"
- <div class=\"mw-parser-output\">
+ <div class="mw-parser-output">
<div>
- <table class=\"wikitable\">
+ <table class="wikitable">
<tbody>
<tr><th>table table table</th></tr>
</tbody>
</table>
</div>
98 | tables();
99 |
> 100 | expect( document.body.innerHTML ).toMatchSnapshot();
| ^
101 | } );
102 |
103 | test( 'doesnt wrap floated tables', () => {
at Object.<anonymous> (tests/jest/skins.vector.js/tables.test.js:100:37)
● tables › doesnt wrap floated tables
expect(received).toMatchSnapshot()
Snapshot name: `tables doesnt wrap floated tables 1`
- Snapshot - 2
+ Received + 2
@@ -1,8 +1,8 @@
"
- <div class=\"mw-parser-output\">
+ <div class="mw-parser-output">
- <table class=\"wikitable\" style=\"float:right\">
+ <table class="wikitable" style="float:right">
<tbody>
<tr><th>table table table</th></tr>
</tbody>
</table>
<div>
113 | tables();
114 |
> 115 | expect( document.body.innerHTML ).toMatchSnapshot();
| ^
116 | } );
117 | } );
118 |
at Object.<anonymous> (tests/jest/skins.vector.js/tables.test.js:115:37)
› 7 snapshots failed.
PASS tests/jest/popupNotification.test.js
PASS tests/jest/fetch.test.js
PASS tests/jest/instrumentation.test.js
FAIL tests/jest/skins.vector.clientPreferences.test.js
● clientPreferences › render font size
expect(received).toMatchSnapshot()
Snapshot name: `clientPreferences render font size 1`
- Snapshot - 5
+ Received + 5
"<div>
- <div class=\"vector-menu-heading\">Width</div>
+ <div class="vector-menu-heading">Width</div>
- <div class=\"vector-menu-content\">
+ <div class="vector-menu-content">
- <ul class=\"vector-menu-content-list\"></ul>
+ <ul class="vector-menu-content-list"></ul>
- <span class=\"skin-client-pref-exclusion-notice\">msg:vector-feature-custom-font-size-exclusion-notice</span></div>
+ <span class="skin-client-pref-exclusion-notice">msg:vector-feature-custom-font-size-exclusion-notice</span></div>
- <li><div class=\"\"><form><div class=\"cdx-radio\"><input name=\"skin-client-pref-vector-feature-custom-font-size-group\" id=\"skin-client-pref-vector-feature-custom-font-size-value-0\" type=\"radio\" value=\"0\" data-event-name=\"skin-client-pref-vector-feature-custom-font-size-value-0\" class=\"cdx-radio__input\"><span class=\"cdx-radio__icon\"></span><label for=\"skin-client-pref-vector-feature-custom-font-size-value-0\" class=\"cdx-radio__label\">vector-feature-custom-font-size-0-label</label></div><div class=\"cdx-radio\"><input name=\"skin-client-pref-vector-feature-custom-font-size-group\" id=\"skin-client-pref-vector-feature-custom-font-size-value-1\" type=\"radio\" value=\"1\" data-event-name=\"skin-client-pref-vector-feature-custom-font-size-value-1\" class=\"cdx-radio__input\"><span class=\"cdx-radio__icon\"></span><label for=\"skin-client-pref-vector-feature-custom-font-size-value-1\" class=\"cdx-radio__label\">vector-feature-custom-font-size-1-label</label></div><div class=\"cdx-radio\"><input name=\"skin-client-pref-vector-feature-custom-font-size-group\" id=\"skin-client-pref-vector-feature-custom-font-size-value-2\" type=\"radio\" value=\"2\" data-event-name=\"skin-client-pref-vector-feature-custom-font-size-value-2\" class=\"cdx-radio__input\"><span class=\"cdx-radio__icon\"></span><label for=\"skin-client-pref-vector-feature-custom-font-size-value-2\" class=\"cdx-radio__label\">vector-feature-custom-font-size-2-label</label></div></form></div></li></div>"
+ <li><div class=""><form><div class="cdx-radio"><input name="skin-client-pref-vector-feature-custom-font-size-group" id="skin-client-pref-vector-feature-custom-font-size-value-0" type="radio" value="0" data-event-name="skin-client-pref-vector-feature-custom-font-size-value-0" class="cdx-radio__input"><span class="cdx-radio__icon"></span><label for="skin-client-pref-vector-feature-custom-font-size-value-0" class="cdx-radio__label">vector-feature-custom-font-size-0-label</label></div><div class="cdx-radio"><input name="skin-client-pref-vector-feature-custom-font-size-group" id="skin-client-pref-vector-feature-custom-font-size-value-1" type="radio" value="1" data-event-name="skin-client-pref-vector-feature-custom-font-size-value-1" class="cdx-radio__input"><span class="cdx-radio__icon"></span><label for="skin-client-pref-vector-feature-custom-font-size-value-1" class="cdx-radio__label">vector-feature-custom-font-size-1-label</label></div><div class="cdx-radio"><input name="skin-client-pref-vector-feature-custom-font-size-group" id="skin-client-pref-vector-feature-custom-font-size-value-2" type="radio" value="2" data-event-name="skin-client-pref-vector-feature-custom-font-size-value-2" class="cdx-radio__input"><span class="cdx-radio__icon"></span><label for="skin-client-pref-vector-feature-custom-font-size-value-2" class="cdx-radio__label">vector-feature-custom-font-size-2-label</label></div></form></div></li></div>"
45 | }
46 | } ).then( () => {
> 47 | expect( cp.innerHTML ).toMatchSnapshot();
| ^
48 | } );
49 | } );
50 |
at tests/jest/skins.vector.clientPreferences.test.js:47:27
● clientPreferences › doesnt render exclusion notice if the msg key doesnt exist
expect(received).toMatchSnapshot()
Snapshot name: `clientPreferences doesnt render exclusion notice if the msg key doesnt exist 1`
- Snapshot - 4
+ Received + 4
"<div>
- <div class=\"vector-menu-heading\">Width</div>
+ <div class="vector-menu-heading">Width</div>
- <div class=\"vector-menu-content\">
+ <div class="vector-menu-content">
- <ul class=\"vector-menu-content-list\"></ul>
+ <ul class="vector-menu-content-list"></ul>
</div>
- <li><div class=\"\"><form><div class=\"cdx-radio\"><input name=\"skin-client-pref-vector-feature-limited-width-group\" id=\"skin-client-pref-vector-feature-limited-width-value-1\" type=\"radio\" value=\"1\" data-event-name=\"skin-client-pref-vector-feature-limited-width-value-1\" class=\"cdx-radio__input\"><span class=\"cdx-radio__icon\"></span><label for=\"skin-client-pref-vector-feature-limited-width-value-1\" class=\"cdx-radio__label\">vector-feature-limited-width-1-label</label></div><div class=\"cdx-radio\"><input name=\"skin-client-pref-vector-feature-limited-width-group\" id=\"skin-client-pref-vector-feature-limited-width-value-0\" type=\"radio\" value=\"0\" data-event-name=\"skin-client-pref-vector-feature-limited-width-value-0\" class=\"cdx-radio__input\"><span class=\"cdx-radio__icon\"></span><label for=\"skin-client-pref-vector-feature-limited-width-value-0\" class=\"cdx-radio__label\">vector-feature-limited-width-0-label</label></div></form></div></li></div>"
+ <li><div class=""><form><div class="cdx-radio"><input name="skin-client-pref-vector-feature-limited-width-group" id="skin-client-pref-vector-feature-limited-width-value-1" type="radio" value="1" data-event-name="skin-client-pref-vector-feature-limited-width-value-1" class="cdx-radio__input"><span class="cdx-radio__icon"></span><label for="skin-client-pref-vector-feature-limited-width-value-1" class="cdx-radio__label">vector-feature-limited-width-1-label</label></div><div class="cdx-radio"><input name="skin-client-pref-vector-feature-limited-width-group" id="skin-client-pref-vector-feature-limited-width-value-0" type="radio" value="0" data-event-name="skin-client-pref-vector-feature-limited-width-value-0" class="cdx-radio__input"><span class="cdx-radio__icon"></span><label for="skin-client-pref-vector-feature-limited-width-value-0" class="cdx-radio__label">vector-feature-limited-width-0-label</label></div></form></div></li></div>"
61 | }
62 | } ).then( () => {
> 63 | expect( cp.innerHTML ).toMatchSnapshot();
| ^
64 | } );
65 | } );
66 |
at tests/jest/skins.vector.clientPreferences.test.js:63:27
● clientPreferences › render toggle
expect(received).toMatchSnapshot()
Snapshot name: `clientPreferences render toggle 1`
- Snapshot - 5
+ Received + 5
"<div>
- <div class=\"vector-menu-heading\">Width</div>
+ <div class="vector-menu-heading">Width</div>
- <div class=\"vector-menu-content\">
+ <div class="vector-menu-content">
- <ul class=\"vector-menu-content-list\"></ul>
+ <ul class="vector-menu-content-list"></ul>
- <span class=\"skin-client-pref-exclusion-notice\">msg:expandAll-exclusion-notice</span></div>
+ <span class="skin-client-pref-exclusion-notice">msg:expandAll-exclusion-notice</span></div>
- <li><div class=\"\"><form><span class=\"cdx-toggle-switch\"><input name=\"skin-client-pref-expandAll-group\" id=\"skin-client-pref-expandAll-value-1\" type=\"checkbox\" data-event-name=\"skin-client-pref-expandAll-value-1\" class=\"cdx-toggle-switch__input\"><span class=\"cdx-toggle-switch__switch\"><span class=\"cdx-toggle-switch__switch__grip\"></span></span><label class=\"cdx-toggle-switch__label\">msg:expandAll-name</label></span></form></div></li></div>"
+ <li><div class=""><form><span class="cdx-toggle-switch"><input name="skin-client-pref-expandAll-group" id="skin-client-pref-expandAll-value-1" type="checkbox" data-event-name="skin-client-pref-expandAll-value-1" class="cdx-toggle-switch__input"><span class="cdx-toggle-switch__switch"><span class="cdx-toggle-switch__switch__grip"></span></span><label class="cdx-toggle-switch__label">msg:expandAll-name</label></span></form></div></li></div>"
74 | }
75 | } ).then( () => {
> 76 | expect( cp.innerHTML ).toMatchSnapshot();
| ^
77 | } );
78 | } );
79 | } );
at tests/jest/skins.vector.clientPreferences.test.js:76:27
› 3 snapshots failed.
FAIL tests/jest/skins.vector.js/menuTabs.test.js
● menuTabs › adds vector-tab-noicon class to li element when part of tabs
expect(received).toMatchSnapshot()
Snapshot name: `menuTabs adds vector-tab-noicon class to li element when part of tabs 1`
- Snapshot - 5
+ Received + 5
@@ -1,11 +1,11 @@
"
- <div id=\"p-views\" class=\"vector-menu mw-portlet mw-portlet-views vector-menu-tabs\">
+ <div id="p-views" class="vector-menu mw-portlet mw-portlet-views vector-menu-tabs">
- <div class=\"vector-menu-content\">
+ <div class="vector-menu-content">
- <ul class=\"vector-menu-content-list\">
+ <ul class="vector-menu-content-list">
- <li class=\"mw-list-item mw-list-item-js vector-tab-noicon\" id=\"test-id\">
+ <li class="mw-list-item mw-list-item-js vector-tab-noicon" id="test-id">
- <a href=\"#test-href\">
+ <a href="#test-href">
<span>
test link content
</span>
</a>
</li>
44 | mw.hook( 'util' ).fire( menuItem, { id: 'test-id' } );
45 |
> 46 | expect( document.body.innerHTML ).toMatchSnapshot();
| ^
47 | } );
48 |
49 | test( 'does not add vector-tab-noicon class to li element when not part of tabs', () => {
at Object.<anonymous> (tests/jest/skins.vector.js/menuTabs.test.js:46:37)
● menuTabs › does not add vector-tab-noicon class to li element when not part of tabs
expect(received).toMatchSnapshot()
Snapshot name: `menuTabs does not add vector-tab-noicon class to li element when not part of tabs 1`
- Snapshot - 5
+ Received + 5
@@ -1,11 +1,11 @@
"
- <div id=\"p-variants\" class=\"vector-menu mw-portlet mw-portlet-variants\">
+ <div id="p-variants" class="vector-menu mw-portlet mw-portlet-variants">
- <div class=\"vector-menu-content\">
+ <div class="vector-menu-content">
- <ul class=\"vector-menu-content-list\">
+ <ul class="vector-menu-content-list">
- <li class=\"mw-list-item mw-list-item-js\" id=\"test-id\">
+ <li class="mw-list-item mw-list-item-js" id="test-id">
- <a href=\"#test-href\">
+ <a href="#test-href">
<span>
test link content
</span>
</a>
</li>
67 | mw.hook( 'util' ).fire( menuItem, { id: 'test-id' } );
68 |
> 69 | expect( document.body.innerHTML ).toMatchSnapshot();
| ^
70 | } );
71 | } );
72 |
at Object.<anonymous> (tests/jest/skins.vector.js/menuTabs.test.js:69:37)
› 2 snapshots failed.
PASS tests/jest/urlGenerator.test.js
PASS tests/jest/skins.vector.es6/features.test.js
PASS tests/jest/deferUntilFrame.test.js
FAIL tests/jest/userLinks.test.js
● UserLinks renders
expect(received).toMatchSnapshot()
Snapshot name: `UserLinks renders 1`
- Snapshot - 41
+ Received + 41
@@ -1,83 +1,83 @@
- "<nav class=\"vector-user-links\" aria-label=\"\">
+ "<nav class="vector-user-links" aria-label="">
- <div class=\"vector-user-links-main\">
+ <div class="vector-user-links-main">
- <div id=\"p-personal-preferences\" class=\"vector-menu\">
+ <div id="p-personal-preferences" class="vector-menu">
- <div class=\"vector-menu-content\">
+ <div class="vector-menu-content">
- <ul class=\"vector-menu-content-list\">
+ <ul class="vector-menu-content-list">
- <li id=\"ca-uls\" class=\"user-links-collapsible-item mw-list-item active\"><a href=\"#\" class=\"uls-trigger cdx-button cdx-button--weight-quiet\"><span class=\"vector-icon mw-ui-icon-wikimedia-language\"></span> <span>English</span></a></li>
+ <li id="ca-uls" class="user-links-collapsible-item mw-list-item active"><a href="#" class="uls-trigger cdx-button cdx-button--weight-quiet"><span class="vector-icon mw-ui-icon-wikimedia-language"></span> <span>English</span></a></li>
</ul>
</div>
</div>
- <div id=\"p-personal-user-page\" class=\"vector-menu\">
+ <div id="p-personal-user-page" class="vector-menu">
- <div class=\"vector-menu-content\">
+ <div class="vector-menu-content">
- <ul class=\"vector-menu-content-list\">
+ <ul class="vector-menu-content-list">
- <li id=\"pt-userpage-2\" class=\"user-links-collapsible-item mw-list-item\"><a href=\"/wiki/User:Admin\" class=\"cdx-button cdx-button--weight-quiet\" title=\"Your user page [⌃⌥.]\" accesskey=\".\"><span>Admin</span></a></li>
+ <li id="pt-userpage-2" class="user-links-collapsible-item mw-list-item"><a href="/wiki/User:Admin" class="cdx-button cdx-button--weight-quiet" title="Your user page [⌃⌥.]" accesskey="."><span>Admin</span></a></li>
</ul>
</div>
</div>
- <nav class=\"vector-appearance-landmark\" aria-label=\"\">
+ <nav class="vector-appearance-landmark" aria-label="">
</nav>
- <div id=\"p-personal-notifications\" class=\"vector-menu\">
+ <div id="p-personal-notifications" class="vector-menu">
- <div class=\"vector-menu-content\">
+ <div class="vector-menu-content">
- <ul class=\"vector-menu-content-list\">
+ <ul class="vector-menu-content-list">
- <li id=\"pt-notifications-alert\" class=\"mw-list-item\"><a href=\"/wiki/Special:Notifications\" class=\"mw-echo-notifications-badge mw-echo-notification-badge-nojs oo-ui-icon-bell mw-echo-notifications-badge-all-read\" data-counter-num=\"0\" data-counter-text=\"0\" title=\"Your alerts\"><span>Alerts (0)</span></a></li>
+ <li id="pt-notifications-alert" class="mw-list-item"><a href="/wiki/Special:Notifications" class="mw-echo-notifications-badge mw-echo-notification-badge-nojs oo-ui-icon-bell mw-echo-notifications-badge-all-read" data-counter-num="0" data-counter-text="0" title="Your alerts"><span>Alerts (0)</span></a></li>
- <li id=\"pt-notifications-notice\" class=\"mw-list-item\"><a href=\"/wiki/Special:Notifications\" class=\"mw-echo-notifications-badge mw-echo-notification-badge-nojs oo-ui-icon-tray mw-echo-notifications-badge-all-read\" data-counter-num=\"0\" data-counter-text=\"0\" title=\"Your notices\"><span>Notices (0)</span></a></li>
+ <li id="pt-notifications-notice" class="mw-list-item"><a href="/wiki/Special:Notifications" class="mw-echo-notifications-badge mw-echo-notification-badge-nojs oo-ui-icon-tray mw-echo-notifications-badge-all-read" data-counter-num="0" data-counter-text="0" title="Your notices"><span>Notices (0)</span></a></li>
</ul>
</div>
</div>
- <div id=\"p-personal-more\" class=\"vector-menu mw-portlet mw-portlet-vector-user-menu-overflow vector-user-menu-overflow\">
+ <div id="p-personal-more" class="vector-menu mw-portlet mw-portlet-vector-user-menu-overflow vector-user-menu-overflow">
- <div class=\"vector-menu-heading\">
+ <div class="vector-menu-heading">
Toggle sidebar
</div>
- <div class=\"vector-menu-content\">
+ <div class="vector-menu-content">
- <ul class=\"vector-menu-content-list\">
+ <ul class="vector-menu-content-list">
- <li id=\"pt-watchlist-2\" class=\"user-links-collapsible-item mw-list-item\"><a href=\"/wiki/Special:Watchlist\" class=\"cdx-button cdx-button--weight-quiet vector-icon cdx-button--icon-only mw-ui-icon-watchlist mw-ui-icon-wikimedia-watchlist\" title=\"A list of pages you are monitoring for changes [⌃⌥l]\" accesskey=\"l\"><span>Watchlist</span></a></li>
+ <li id="pt-watchlist-2" class="user-links-collapsible-item mw-list-item"><a href="/wiki/Special:Watchlist" class="cdx-button cdx-button--weight-quiet vector-icon cdx-button--icon-only mw-ui-icon-watchlist mw-ui-icon-wikimedia-watchlist" title="A list of pages you are monitoring for changes [⌃⌥l]" accesskey="l"><span>Watchlist</span></a></li>
</ul>
</div>
</div>
</div>
- <div id=\"vector-user-links-dropdown\" class=\"vector-dropdown vector-user-menu vector-user-menu-logged-in\">
+ <div id="vector-user-links-dropdown" class="vector-dropdown vector-user-menu vector-user-menu-logged-in">
- <input type=\"checkbox\" id=\"vector-user-links-dropdown-checkbox\" role=\"button\" aria-haspopup=\"true\" data-event-name=\"ui.dropdown-vector-user-links-dropdown\" class=\"vector-dropdown-checkbox\" aria-label=\"Personal tools\">
+ <input type="checkbox" id="vector-user-links-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-user-links-dropdown" class="vector-dropdown-checkbox" aria-label="Personal tools">
- <label id=\"vector-user-links-dropdown-label\" for=\"vector-user-links-dropdown-checkbox\" class=\"vector-dropdown-label\" aria-hidden=\"true\"><span class=\"vector-dropdown-label-text\">Personal tools</span>
+ <label id="vector-user-links-dropdown-label" for="vector-user-links-dropdown-checkbox" class="vector-dropdown-label" aria-hidden="true"><span class="vector-dropdown-label-text">Personal tools</span>
</label>
- <div class=\"vector-dropdown-content\">
+ <div class="vector-dropdown-content">
- <div id=\"p-personal\" class=\"vector-menu mw-portlet mw-portlet-personal\">
+ <div id="p-personal" class="vector-menu mw-portlet mw-portlet-personal">
- <div class=\"vector-menu-content\">
+ <div class="vector-menu-content">
- <ul class=\"vector-menu-content-list\">
+ <ul class="vector-menu-content-list">
- <li id=\"pt-userpage\" class=\"user-links-collapsible-item mw-list-item\"><a href=\"/wiki/User:Admin\" title=\"Your user page [.]\" accesskey=\".\"><span class=\"vector-icon mw-ui-icon-userAvatar mw-ui-icon-wikimedia-userAvatar\"></span> <span>Admin</span></a></li>
+ <li id="pt-userpage" class="user-links-collapsible-item mw-list-item"><a href="/wiki/User:Admin" title="Your user page [.]" accesskey="."><span class="vector-icon mw-ui-icon-userAvatar mw-ui-icon-wikimedia-userAvatar"></span> <span>Admin</span></a></li>
- <li id=\"pt-mytalk\" class=\"mw-list-item\"><a href=\"/wiki/User_talk:Admin\" title=\"Your talk page [n]\" accesskey=\"n\"><span class=\"vector-icon mw-ui-icon-userTalk mw-ui-icon-wikimedia-userTalk\"></span> <span>Talk</span></a></li>
+ <li id="pt-mytalk" class="mw-list-item"><a href="/wiki/User_talk:Admin" title="Your talk page [n]" accesskey="n"><span class="vector-icon mw-ui-icon-userTalk mw-ui-icon-wikimedia-userTalk"></span> <span>Talk</span></a></li>
- <li id=\"pt-sandbox\" class=\"new mw-list-item\"><a href=\"/w/index.php?title=User:Admin/sandbox&action=edit&redlink=1\" title=\"Your sandbox (page does not exist)\"><span class=\"vector-icon mw-ui-icon-sandbox mw-ui-icon-wikimedia-sandbox\"></span> <span>Sandbox</span></a></li>
+ <li id="pt-sandbox" class="new mw-list-item"><a href="/w/index.php?title=User:Admin/sandbox&action=edit&redlink=1" title="Your sandbox (page does not exist)"><span class="vector-icon mw-ui-icon-sandbox mw-ui-icon-wikimedia-sandbox"></span> <span>Sandbox</span></a></li>
- <li id=\"pt-preferences\" class=\"mw-list-item\"><a href=\"/wiki/Special:Preferences\" title=\"Your preferences\"><span class=\"vector-icon mw-ui-icon-appearance mw-ui-icon-wikimedia-appearance\"></span> <span>Preferences</span></a></li>
+ <li id="pt-preferences" class="mw-list-item"><a href="/wiki/Special:Preferences" title="Your preferences"><span class="vector-icon mw-ui-icon-appearance mw-ui-icon-wikimedia-appearance"></span> <span>Preferences</span></a></li>
- <li id=\"pt-betafeatures\" class=\"mw-list-item\"><a href=\"/wiki/Special:Preferences#mw-prefsection-betafeatures\" title=\"Beta features\"><span class=\"vector-icon mw-ui-icon-labFlask mw-ui-icon-wikimedia-labFlask\"></span> <span>Beta</span></a></li>
+ <li id="pt-betafeatures" class="mw-list-item"><a href="/wiki/Special:Preferences#mw-prefsection-betafeatures" title="Beta features"><span class="vector-icon mw-ui-icon-labFlask mw-ui-icon-wikimedia-labFlask"></span> <span>Beta</span></a></li>
- <li id=\"pt-watchlist\" class=\"user-links-collapsible-item mw-list-item\"><a href=\"/wiki/Special:Watchlist\" title=\"A list of pages you are monitoring for changes [l]\" accesskey=\"l\"><span class=\"vector-icon mw-ui-icon-watchlist mw-ui-icon-wikimedia-watchlist\"></span> <span>Watchlist</span></a></li>
+ <li id="pt-watchlist" class="user-links-collapsible-item mw-list-item"><a href="/wiki/Special:Watchlist" title="A list of pages you are monitoring for changes [l]" accesskey="l"><span class="vector-icon mw-ui-icon-watchlist mw-ui-icon-wikimedia-watchlist"></span> <span>Watchlist</span></a></li>
- <li id=\"pt-uploads\" class=\"mw-list-item\"><a href=\"/w/index.php?title=Special:ListFiles/Admin&ilshowall=1\" title=\"List of files you have uploaded\"><span class=\"vector-icon mw-ui-icon-imageGallery mw-ui-icon-wikimedia-imageGallery\"></span> <span>Uploads</span></a></li>
+ <li id="pt-uploads" class="mw-list-item"><a href="/w/index.php?title=Special:ListFiles/Admin&ilshowall=1" title="List of files you have uploaded"><span class="vector-icon mw-ui-icon-imageGallery mw-ui-icon-wikimedia-imageGallery"></span> <span>Uploads</span></a></li>
- <li id=\"pt-mycontris\" class=\"mw-list-item\"><a href=\"/wiki/Special:Contributions/Admin\" title=\"A list of your contributions [y]\" accesskey=\"y\"><span class=\"vector-icon mw-ui-icon-userContributions mw-ui-icon-wikimedia-userContributions\"></span> <span>Contributions</span></a></li>
+ <li id="pt-mycontris" class="mw-list-item"><a href="/wiki/Special:Contributions/Admin" title="A list of your contributions [y]" accesskey="y"><span class="vector-icon mw-ui-icon-userContributions mw-ui-icon-wikimedia-userContributions"></span> <span>Contributions</span></a></li>
- <li id=\"pt-custom\" class=\"mw-list-item mw-list-item-js\">Gadget added item</li>
+ <li id="pt-custom" class="mw-list-item mw-list-item-js">Gadget added item</li>
</ul>
</div>
</div>
- <div id=\"p-user-menu-logout\" class=\"vector-menu mw-portlet mw-portlet-user-menu-logout\">
+ <div id="p-user-menu-logout" class="vector-menu mw-portlet mw-portlet-user-menu-logout">
- <div class=\"vector-menu-content\">
+ <div class="vector-menu-content">
- <ul class=\"vector-menu-content-list\">
+ <ul class="vector-menu-content-list">
- <li id=\"ca-logout\" class=\"mw-list-item\"><a data-mw=\"interface\" href=\"/w/index.php?title=Special:UserLogout&returnto=Main+Page\" title=\"Log out\"><span class=\"vector-icon mw-ui-icon-logOut mw-ui-icon-wikimedia-logOut\"></span> <span>Log out</span></a></li>
+ <li id="ca-logout" class="mw-list-item"><a data-mw="interface" href="/w/index.php?title=Special:UserLogout&returnto=Main+Page" title="Log out"><span class="vector-icon mw-ui-icon-logOut mw-ui-icon-wikimedia-logOut"></span> <span>Log out</span></a></li>
</ul>
</div>
</div>
6 |
7 | test( 'UserLinks renders', () => {
> 8 | expect( document.body.innerHTML ).toMatchSnapshot();
| ^
9 | } );
10 |
at Object.<anonymous> (tests/jest/userLinks.test.js:8:36)
› 1 snapshot failed.
PASS tests/jest/App.test.js
Jest: "global" coverage threshold for statements (48%) not met: 36.35%
Jest: "global" coverage threshold for branches (35%) not met: 28.69%
Jest: "global" coverage threshold for lines (48%) not met: 36.46%
Jest: "global" coverage threshold for functions (45%) not met: 32.49%
Summary of all failing tests
FAIL tests/jest/tableOfContents.test.js
● Test suite failed to run
● Invalid return value:
`process()` or/and `processAsync()` method of code transformer found at
"/src/repo/node_modules/mustache-jest/index.js"
should return an object or a Promise resolving to an object. The object
must have `code` property with a string of processed code.
This error may be caused by a breaking change in Jest 28:
https://jestjs.io/docs/28.x/upgrading-to-jest28#transformer
Code Transformation Documentation:
https://jestjs.io/docs/code-transformation
4 | * TableOfContents Mustache templates
5 | */
> 6 | const templateTocContents = require( /** @type {string} */ ( './templates/TableOfContents__list.mustache' ) );
| ^
7 | const templateTocLine = require( /** @type {string} */ ( './templates/TableOfContents__line.mustache' ) );
8 | /**
9 | * TableOfContents Config object for filling mustache templates
at ScriptTransformer._buildTransformResult (node_modules/@jest/transform/build/ScriptTransformer.js:442:15)
at ScriptTransformer.transformSource (node_modules/@jest/transform/build/ScriptTransformer.js:554:17)
at ScriptTransformer._transformAndBuildScript (node_modules/@jest/transform/build/ScriptTransformer.js:674:40)
at ScriptTransformer.transform (node_modules/@jest/transform/build/ScriptTransformer.js:726:19)
at Object.require (resources/skins.vector.js/tableOfContents.js:6:29)
at Object.<anonymous> (tests/jest/tableOfContents.test.js:9:29)
FAIL tests/jest/pinnableElement.test.js
● Pinnable header › renders
expect(received).toMatchSnapshot()
Snapshot name: `Pinnable header renders 1`
- Snapshot - 11
+ Received + 11
@@ -1,19 +1,19 @@
- "<div id=\"pinned-container\">
+ "<div id="pinned-container">
</div>
- <div class=\"vector-dropdown\">
+ <div class="vector-dropdown">
- <input type=\"checkbox\" id=\"checkbox\" class=\"vector-menu-checkbox\">
+ <input type="checkbox" id="checkbox" class="vector-menu-checkbox">
- <label for=\"checkbox\" class=\"vector-menu-heading \">
+ <label for="checkbox" class="vector-menu-heading ">
- <span class=\"vector-menu-heading-label\">Dropdown</span>
+ <span class="vector-menu-heading-label">Dropdown</span>
</label>
- <div class=\"vector-menu-content\">
+ <div class="vector-menu-content">
- <div id=\"unpinned-container\">
+ <div id="unpinned-container">
- <div id=\"pinnable-element\"><div class=\"vector-pinnable-header pinnable-element-pinnable-header vector-pinnable-header-unpinned\" data-feature-name=\"pinned\" data-pinnable-element-id=\"pinnable-element\">
+ <div id="pinnable-element"><div class="vector-pinnable-header pinnable-element-pinnable-header vector-pinnable-header-unpinned" data-feature-name="pinned" data-pinnable-element-id="pinnable-element">
- <div class=\"vector-pinnable-header-label\">simple pinnable element</div>
+ <div class="vector-pinnable-header-label">simple pinnable element</div>
- <button class=\"vector-pinnable-header-toggle-button vector-pinnable-header-pin-button\" data-event-name=\"pinnable-header.pinnable-element.pin\">pin</button>
+ <button class="vector-pinnable-header-toggle-button vector-pinnable-header-pin-button" data-event-name="pinnable-header.pinnable-element.pin">pin</button>
- <button class=\"vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button\" data-event-name=\"pinnable-header.pinnable-element.unpin\">unpin</button>
+ <button class="vector-pinnable-header-toggle-button vector-pinnable-header-unpin-button" data-event-name="pinnable-header.pinnable-element.unpin">unpin</button>
</div>
</div>
</div>
</div>
</div>
71 | test( 'renders', () => {
72 | initializeHTML( simpleData );
> 73 | expect( document.body.innerHTML ).toMatchSnapshot();
| ^
74 | } );
75 |
76 | test( 'updates pinnable header classes when toggle is pressed', () => {
at Object.<anonymous> (tests/jest/pinnableElement.test.js:73:37)
FAIL tests/jest/skins.vector.js/dropdownMenus.test.js
● addPortletLinkHandler › Adds a span with icon class to menus
expect(received).toMatchSnapshot()
Snapshot name: `addPortletLinkHandler Adds a span with icon class to menus 1`
- Snapshot - 3
+ Received + 3
@@ -1,9 +1,9 @@
"
- <ul class=\"vector-menu\">
+ <ul class="vector-menu">
- <li class=\"mw-list-item mw-list-item-js\" id=\"test-id\">
+ <li class="mw-list-item mw-list-item-js" id="test-id">
- <a href=\"#test-href\">
+ <a href="#test-href">
<span>
test link content
</span>
</a>
</li>
53 | const mockPortletItem = document.getElementById( 'test-id' );
54 | addPortletLinkHandler( mockPortletItem, { id: 'test-id' } );
> 55 | expect( document.body.innerHTML ).toMatchSnapshot();
| ^
56 | } );
57 |
58 | test( 'Does not add an icon when noicon class is present', () => {
at Object.<anonymous> (tests/jest/skins.vector.js/dropdownMenus.test.js:55:37)
● addPortletLinkHandler › Does not add an icon when noicon class is present
expect(received).toMatchSnapshot()
Snapshot name: `addPortletLinkHandler Does not add an icon when noicon class is present 1`
- Snapshot - 3
+ Received + 3
@@ -1,9 +1,9 @@
"
- <ul class=\"vector-menu\">
+ <ul class="vector-menu">
- <li class=\"mw-list-item mw-list-item-js\" id=\"test-id\">
+ <li class="mw-list-item mw-list-item-js" id="test-id">
- <a href=\"#test-href\">
+ <a href="#test-href">
<span>
test link content
</span>
</a>
</li>
72 | const mockPortletItem = document.getElementById( 'test-id' );
73 | addPortletLinkHandler( mockPortletItem, { id: 'test-id' } );
> 74 | expect( document.body.innerHTML ).toMatchSnapshot();
| ^
75 | } );
76 |
77 | test( 'JS portlet should be moved to more menu (#p-cactions) at narrow widths', () => {
at Object.<anonymous> (tests/jest/skins.vector.js/dropdownMenus.test.js:74:37)
FAIL tests/jest/skins.vector.es6/main.test.js
● Test suite failed to run
● Invalid return value:
`process()` or/and `processAsync()` method of code transformer found at
"/src/repo/node_modules/mustache-jest/index.js"
should return an object or a Promise resolving to an object. The object
must have `code` property with a string of processed code.
This error may be caused by a breaking change in Jest 28:
https://jestjs.io/docs/28.x/upgrading-to-jest28#transformer
Code Transformation Documentation:
https://jestjs.io/docs/code-transformation
4 | * TableOfContents Mustache templates
5 | */
> 6 | const templateTocContents = require( /** @type {string} */ ( './templates/TableOfContents__list.mustache' ) );
| ^
7 | const templateTocLine = require( /** @type {string} */ ( './templates/TableOfContents__line.mustache' ) );
8 | /**
9 | * TableOfContents Config object for filling mustache templates
at ScriptTransformer._buildTransformResult (node_modules/@jest/transform/build/ScriptTransformer.js:442:15)
at ScriptTransformer.transformSource (node_modules/@jest/transform/build/ScriptTransformer.js:554:17)
at ScriptTransformer._transformAndBuildScript (node_modules/@jest/transform/build/ScriptTransformer.js:674:40)
at ScriptTransformer.transform (node_modules/@jest/transform/build/ScriptTransformer.js:726:19)
at Object.require (resources/skins.vector.js/tableOfContents.js:6:29)
at Object.require (resources/skins.vector.js/setupIntersectionObservers.js:7:24)
at Object.<anonymous> (tests/jest/skins.vector.es6/main.test.js:8:18)
FAIL tests/jest/stickyHeader.test.js
● Sticky header renders
expect(received).toMatchSnapshot()
Snapshot name: `Sticky header renders 1`
- Snapshot - 23
+ Received + 23
- "<div id=\"vector-sticky-header\" class=\"vector-sticky-header\">
+ "<div id="vector-sticky-header" class="vector-sticky-header">
- <div class=\"vector-sticky-header-start\">
+ <div class="vector-sticky-header-start">
- <div class=\"vector-sticky-header-icon-start vector-button-flush-left vector-button-flush-right\" aria-hidden=\"true\">
+ <div class="vector-sticky-header-icon-start vector-button-flush-left vector-button-flush-right" aria-hidden="true">
- <button class=\"cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-sticky-header-search-toggle\" data-event-name=\"ui.vector-sticky-search-form.icon\" tabindex=\"-1\"><span class=\"vector-icon mw-ui-icon-search mw-ui-icon-wikimedia-search\"></span>
+ <button class="cdx-button cdx-button--weight-quiet cdx-button--icon-only vector-sticky-header-search-toggle" data-event-name="ui.vector-sticky-search-form.icon" tabindex="-1"><span class="vector-icon mw-ui-icon-search mw-ui-icon-wikimedia-search"></span>
<span>search</span>
</button>
</div>
- <div> </div> <div class=\"vector-sticky-header-context-bar\">
+ <div> </div> <div class="vector-sticky-header-context-bar">
- <nav aria-label=\"\" class=\"vector-toc-landmark\">
+ <nav aria-label="" class="vector-toc-landmark">
- <div id=\"vector-sticky-header-toc\" class=\"vector-dropdown mw-portlet mw-portlet-sticky-header-toc vector-sticky-header-toc\">
+ <div id="vector-sticky-header-toc" class="vector-dropdown mw-portlet mw-portlet-sticky-header-toc vector-sticky-header-toc">
- <input type=\"checkbox\" id=\"vector-sticky-header-toc-checkbox\" role=\"button\" aria-haspopup=\"true\" data-event-name=\"ui.dropdown-vector-sticky-header-toc\" class=\"vector-dropdown-checkbox\" aria-label=\"\" tabindex=\"-1\">
+ <input type="checkbox" id="vector-sticky-header-toc-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-sticky-header-toc" class="vector-dropdown-checkbox" aria-label="" tabindex="-1">
- <label id=\"vector-sticky-header-toc-label\" for=\"vector-sticky-header-toc-checkbox\" class=\"vector-dropdown-label cdx-button cdx-button--weight-quiet cdx-button--icon-only\" aria-hidden=\"true\" tabindex=\"-1\"><span class=\"vector-dropdown-label-text\"></span>
+ <label id="vector-sticky-header-toc-label" for="vector-sticky-header-toc-checkbox" class="vector-dropdown-label cdx-button cdx-button--weight-quiet cdx-button--icon-only" aria-hidden="true" tabindex="-1"><span class="vector-dropdown-label-text"></span>
</label>
- <div class=\"vector-dropdown-content\">
+ <div class="vector-dropdown-content">
</div>
</div>
</nav>
- <div class=\"vector-sticky-header-context-bar-primary\" aria-hidden=\"true\"></div>
+ <div class="vector-sticky-header-context-bar-primary" aria-hidden="true"></div>
</div>
</div>
- <div class=\"vector-sticky-header-end\" aria-hidden=\"true\">
+ <div class="vector-sticky-header-end" aria-hidden="true">
- <div class=\"vector-sticky-header-icons\">
+ <div class="vector-sticky-header-icons">
- <a href=\"#\" class=\"cdx-button cdx-button--weight-quiet cdx-button--icon-only sticky-header-icon\" id=\"ca-talk-sticky-header\" data-event-name=\"talk-sticky-header\" tabindex=\"-1\"><span class=\"vector-icon mw-ui-icon-speechBubbles mw-ui-icon-wikimedia-speechBubbles\"></span>
+ <a href="#" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only sticky-header-icon" id="ca-talk-sticky-header" data-event-name="talk-sticky-header" tabindex="-1"><span class="vector-icon mw-ui-icon-speechBubbles mw-ui-icon-wikimedia-speechBubbles"></span>
<span></span>
</a>
- <a href=\"#\" class=\"cdx-button cdx-button--weight-quiet cdx-button--icon-only sticky-header-icon\" id=\"ca-history-sticky-header\" data-event-name=\"history-sticky-header\" tabindex=\"-1\"><span class=\"vector-icon mw-ui-icon-history mw-ui-icon-wikimedia-history\"></span>
+ <a href="#" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only sticky-header-icon" id="ca-history-sticky-header" data-event-name="history-sticky-header" tabindex="-1"><span class="vector-icon mw-ui-icon-history mw-ui-icon-wikimedia-history"></span>
<span></span>
</a>
- <a href=\"#\" class=\"cdx-button cdx-button--weight-quiet cdx-button--icon-only sticky-header-icon mw-watchlink\" id=\"ca-watchstar-sticky-header\" data-event-name=\"watch-sticky-header\" tabindex=\"-1\"><span class=\"vector-icon mw-ui-icon-star mw-ui-icon-wikimedia-star\"></span>
+ <a href="#" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only sticky-header-icon mw-watchlink" id="ca-watchstar-sticky-header" data-event-name="watch-sticky-header" tabindex="-1"><span class="vector-icon mw-ui-icon-star mw-ui-icon-wikimedia-star"></span>
<span></span>
</a>
- <a href=\"#\" class=\"cdx-button cdx-button--weight-quiet cdx-button--icon-only sticky-header-icon\" id=\"ca-ve-edit-sticky-header\" data-event-name=\"ve-edit-sticky-header\" tabindex=\"-1\"><span class=\"vector-icon mw-ui-icon-edit mw-ui-icon-wikimedia-edit\"></span>
+ <a href="#" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only sticky-header-icon" id="ca-ve-edit-sticky-header" data-event-name="ve-edit-sticky-header" tabindex="-1"><span class="vector-icon mw-ui-icon-edit mw-ui-icon-wikimedia-edit"></span>
<span></span>
</a>
- <a href=\"#\" class=\"cdx-button cdx-button--weight-quiet cdx-button--icon-only sticky-header-icon\" id=\"ca-edit-sticky-header\" data-event-name=\"wikitext-edit-sticky-header\" tabindex=\"-1\"><span class=\"vector-icon mw-ui-icon-wikiText mw-ui-icon-wikimedia-wikiText\"></span>
+ <a href="#" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only sticky-header-icon" id="ca-edit-sticky-header" data-event-name="wikitext-edit-sticky-header" tabindex="-1"><span class="vector-icon mw-ui-icon-wikiText mw-ui-icon-wikimedia-wikiText"></span>
<span></span>
</a>
- <a href=\"#\" class=\"cdx-button cdx-button--weight-quiet cdx-button--icon-only sticky-header-icon\" id=\"ca-viewsource-sticky-header\" data-event-name=\"editLock\" tabindex=\"-1\"><span class=\"vector-icon mw-ui-icon-star mw-ui-icon-wikimedia-star\"></span>
+ <a href="#" class="cdx-button cdx-button--weight-quiet cdx-button--icon-only sticky-header-icon" id="ca-viewsource-sticky-header" data-event-name="editLock" tabindex="-1"><span class="vector-icon mw-ui-icon-star mw-ui-icon-wikimedia-star"></span>
<span></span>
</a>
</div>
- <div class=\"vector-sticky-header-buttons\">
+ <div class="vector-sticky-header-buttons">
- <button class=\"cdx-button cdx-button--weight-quiet mw-interlanguage-selector\" id=\"p-lang-btn-sticky-header\" data-event-name=\"ui.dropdown-p-lang-btn-sticky-header\" tabindex=\"-1\"><span>0 languages</span>
+ <button class="cdx-button cdx-button--weight-quiet mw-interlanguage-selector" id="p-lang-btn-sticky-header" data-event-name="ui.dropdown-p-lang-btn-sticky-header" tabindex="-1"><span>0 languages</span>
</button>
</div>
- <div class=\"vector-sticky-header-icon-end\">
+ <div class="vector-sticky-header-icon-end">
- <div class=\"vector-user-links\">
+ <div class="vector-user-links">
</div>
</div>
</div>
</div>
"
135 |
136 | test( 'Sticky header renders', () => {
> 137 | expect( document.body.innerHTML ).toMatchSnapshot();
| ^
138 | } );
139 |
140 | describe( 'sticky header', () => {
at Object.<anonymous> (tests/jest/stickyHeader.test.js:137:36)
FAIL tests/jest/skins.vector.js/tables.test.js
● tables › wraps table with div
expect(received).toMatchSnapshot()
Snapshot name: `tables wraps table with div 1`
- Snapshot - 2
+ Received + 2
"
- <div class=\"mw-parser-output\">
+ <div class="mw-parser-output">
- <div class=\"noresize\"><table class=\"wikitable\">
+ <div class="noresize"><table class="wikitable">
<tbody><tr><th>table table table</th></tr></tbody>
</table></div>
</div>
"
12 | tables();
13 |
> 14 | expect( document.body.innerHTML ).toMatchSnapshot();
| ^
15 | } );
16 |
17 | test( 'wraps multiple table with div', () => {
at Object.<anonymous> (tests/jest/skins.vector.js/tables.test.js:14:37)
● tables › wraps multiple table with div
expect(received).toMatchSnapshot()
Snapshot name: `tables wraps multiple table with div 1`
- Snapshot - 5
+ Received + 5
"
- <div class=\"mw-parser-output\">
+ <div class="mw-parser-output">
- <div class=\"noresize\"><table class=\"wikitable\">
+ <div class="noresize"><table class="wikitable">
<tbody><tr><th>table table table</th></tr></tbody>
</table></div>
- <div class=\"noresize\"><table class=\"wikitable\">
+ <div class="noresize"><table class="wikitable">
- </table></div><div class=\"noresize\"><table class=\"wikitable\">
+ </table></div><div class="noresize"><table class="wikitable">
<tbody><tr><th>table table table</th></tr></tbody>
</table></div>
- <div class=\"noresize\"><table class=\"wikitable\">
+ <div class="noresize"><table class="wikitable">
<tbody><tr><th>table table table</th></tr></tbody>
</table></div>
</div>
"
32 | tables();
33 |
> 34 | expect( document.body.innerHTML ).toMatchSnapshot();
| ^
35 | } );
36 |
37 | test( 'doesnt wrap nested tables', () => {
at Object.<anonymous> (tests/jest/skins.vector.js/tables.test.js:34:37)
● tables › doesnt wrap nested tables
expect(received).toMatchSnapshot()
Snapshot name: `tables doesnt wrap nested tables 1`
- Snapshot - 3
+ Received + 3
"
- <div class=\"mw-parser-output\">
+ <div class="mw-parser-output">
- <div class=\"noresize\"><table class=\"wikitable\">
+ <div class="noresize"><table class="wikitable">
<tbody>
<tr><th>table table table</th></tr>
- <tr><td><table class=\"wikitable\"><tbody><tr><th>table table table</th></tr></tbody></table></td><td></td></tr>
+ <tr><td><table class="wikitable"><tbody><tr><th>table table table</th></tr></tbody></table></td><td></td></tr>
</tbody>
</table></div>
</div>
"
48 | tables();
49 |
> 50 | expect( document.body.innerHTML ).toMatchSnapshot();
| ^
51 | } );
52 |
53 | test( 'doesnt wrap tables that are not wikitables', () => {
at Object.<anonymous> (tests/jest/skins.vector.js/tables.test.js:50:37)
● tables › doesnt wrap tables that are not wikitables
expect(received).toMatchSnapshot()
Snapshot name: `tables doesnt wrap tables that are not wikitables 1`
- Snapshot - 1
+ Received + 1
@@ -1,7 +1,7 @@
"
- <div class=\"mw-parser-output\">
+ <div class="mw-parser-output">
<table>
<tbody>
<tr><th>table table table</th></tr>
<tr><td><table><tbody><tr><th>table table table</th></tr></tbody></table></td><td></td></tr>
</tbody>
64 | tables();
65 |
> 66 | expect( document.body.innerHTML ).toMatchSnapshot();
| ^
67 | } );
68 |
69 | test( 'doesnt wrap tables that already have noresize', () => {
at Object.<anonymous> (tests/jest/skins.vector.js/tables.test.js:66:37)
● tables › doesnt wrap tables that already have noresize
expect(received).toMatchSnapshot()
Snapshot name: `tables doesnt wrap tables that already have noresize 1`
- Snapshot - 3
+ Received + 3
@@ -1,9 +1,9 @@
"
- <div class=\"mw-parser-output\">
+ <div class="mw-parser-output">
- <div class=\"noresize\">
+ <div class="noresize">
- <table class=\"wikitable\">
+ <table class="wikitable">
<tbody>
<tr><th>table table table</th></tr>
</tbody>
</table>
</div>
81 | tables();
82 |
> 83 | expect( document.body.innerHTML ).toMatchSnapshot();
| ^
84 | } );
85 |
86 | test( 'doesnt wrap tables that are already wrapped', () => {
at Object.<anonymous> (tests/jest/skins.vector.js/tables.test.js:83:37)
● tables › doesnt wrap tables that are already wrapped
expect(received).toMatchSnapshot()
Snapshot name: `tables doesnt wrap tables that are already wrapped 1`
- Snapshot - 2
+ Received + 2
@@ -1,9 +1,9 @@
"
- <div class=\"mw-parser-output\">
+ <div class="mw-parser-output">
<div>
- <table class=\"wikitable\">
+ <table class="wikitable">
<tbody>
<tr><th>table table table</th></tr>
</tbody>
</table>
</div>
98 | tables();
99 |
> 100 | expect( document.body.innerHTML ).toMatchSnapshot();
| ^
101 | } );
102 |
103 | test( 'doesnt wrap floated tables', () => {
at Object.<anonymous> (tests/jest/skins.vector.js/tables.test.js:100:37)
● tables › doesnt wrap floated tables
expect(received).toMatchSnapshot()
Snapshot name: `tables doesnt wrap floated tables 1`
- Snapshot - 2
+ Received + 2
@@ -1,8 +1,8 @@
"
- <div class=\"mw-parser-output\">
+ <div class="mw-parser-output">
- <table class=\"wikitable\" style=\"float:right\">
+ <table class="wikitable" style="float:right">
<tbody>
<tr><th>table table table</th></tr>
</tbody>
</table>
<div>
113 | tables();
114 |
> 115 | expect( document.body.innerHTML ).toMatchSnapshot();
| ^
116 | } );
117 | } );
118 |
at Object.<anonymous> (tests/jest/skins.vector.js/tables.test.js:115:37)
FAIL tests/jest/skins.vector.clientPreferences.test.js
● clientPreferences › render font size
expect(received).toMatchSnapshot()
Snapshot name: `clientPreferences render font size 1`
- Snapshot - 5
+ Received + 5
"<div>
- <div class=\"vector-menu-heading\">Width</div>
+ <div class="vector-menu-heading">Width</div>
- <div class=\"vector-menu-content\">
+ <div class="vector-menu-content">
- <ul class=\"vector-menu-content-list\"></ul>
+ <ul class="vector-menu-content-list"></ul>
- <span class=\"skin-client-pref-exclusion-notice\">msg:vector-feature-custom-font-size-exclusion-notice</span></div>
+ <span class="skin-client-pref-exclusion-notice">msg:vector-feature-custom-font-size-exclusion-notice</span></div>
- <li><div class=\"\"><form><div class=\"cdx-radio\"><input name=\"skin-client-pref-vector-feature-custom-font-size-group\" id=\"skin-client-pref-vector-feature-custom-font-size-value-0\" type=\"radio\" value=\"0\" data-event-name=\"skin-client-pref-vector-feature-custom-font-size-value-0\" class=\"cdx-radio__input\"><span class=\"cdx-radio__icon\"></span><label for=\"skin-client-pref-vector-feature-custom-font-size-value-0\" class=\"cdx-radio__label\">vector-feature-custom-font-size-0-label</label></div><div class=\"cdx-radio\"><input name=\"skin-client-pref-vector-feature-custom-font-size-group\" id=\"skin-client-pref-vector-feature-custom-font-size-value-1\" type=\"radio\" value=\"1\" data-event-name=\"skin-client-pref-vector-feature-custom-font-size-value-1\" class=\"cdx-radio__input\"><span class=\"cdx-radio__icon\"></span><label for=\"skin-client-pref-vector-feature-custom-font-size-value-1\" class=\"cdx-radio__label\">vector-feature-custom-font-size-1-label</label></div><div class=\"cdx-radio\"><input name=\"skin-client-pref-vector-feature-custom-font-size-group\" id=\"skin-client-pref-vector-feature-custom-font-size-value-2\" type=\"radio\" value=\"2\" data-event-name=\"skin-client-pref-vector-feature-custom-font-size-value-2\" class=\"cdx-radio__input\"><span class=\"cdx-radio__icon\"></span><label for=\"skin-client-pref-vector-feature-custom-font-size-value-2\" class=\"cdx-radio__label\">vector-feature-custom-font-size-2-label</label></div></form></div></li></div>"
+ <li><div class=""><form><div class="cdx-radio"><input name="skin-client-pref-vector-feature-custom-font-size-group" id="skin-client-pref-vector-feature-custom-font-size-value-0" type="radio" value="0" data-event-name="skin-client-pref-vector-feature-custom-font-size-value-0" class="cdx-radio__input"><span class="cdx-radio__icon"></span><label for="skin-client-pref-vector-feature-custom-font-size-value-0" class="cdx-radio__label">vector-feature-custom-font-size-0-label</label></div><div class="cdx-radio"><input name="skin-client-pref-vector-feature-custom-font-size-group" id="skin-client-pref-vector-feature-custom-font-size-value-1" type="radio" value="1" data-event-name="skin-client-pref-vector-feature-custom-font-size-value-1" class="cdx-radio__input"><span class="cdx-radio__icon"></span><label for="skin-client-pref-vector-feature-custom-font-size-value-1" class="cdx-radio__label">vector-feature-custom-font-size-1-label</label></div><div class="cdx-radio"><input name="skin-client-pref-vector-feature-custom-font-size-group" id="skin-client-pref-vector-feature-custom-font-size-value-2" type="radio" value="2" data-event-name="skin-client-pref-vector-feature-custom-font-size-value-2" class="cdx-radio__input"><span class="cdx-radio__icon"></span><label for="skin-client-pref-vector-feature-custom-font-size-value-2" class="cdx-radio__label">vector-feature-custom-font-size-2-label</label></div></form></div></li></div>"
45 | }
46 | } ).then( () => {
> 47 | expect( cp.innerHTML ).toMatchSnapshot();
| ^
48 | } );
49 | } );
50 |
at tests/jest/skins.vector.clientPreferences.test.js:47:27
● clientPreferences › doesnt render exclusion notice if the msg key doesnt exist
expect(received).toMatchSnapshot()
Snapshot name: `clientPreferences doesnt render exclusion notice if the msg key doesnt exist 1`
- Snapshot - 4
+ Received + 4
"<div>
- <div class=\"vector-menu-heading\">Width</div>
+ <div class="vector-menu-heading">Width</div>
- <div class=\"vector-menu-content\">
+ <div class="vector-menu-content">
- <ul class=\"vector-menu-content-list\"></ul>
+ <ul class="vector-menu-content-list"></ul>
</div>
- <li><div class=\"\"><form><div class=\"cdx-radio\"><input name=\"skin-client-pref-vector-feature-limited-width-group\" id=\"skin-client-pref-vector-feature-limited-width-value-1\" type=\"radio\" value=\"1\" data-event-name=\"skin-client-pref-vector-feature-limited-width-value-1\" class=\"cdx-radio__input\"><span class=\"cdx-radio__icon\"></span><label for=\"skin-client-pref-vector-feature-limited-width-value-1\" class=\"cdx-radio__label\">vector-feature-limited-width-1-label</label></div><div class=\"cdx-radio\"><input name=\"skin-client-pref-vector-feature-limited-width-group\" id=\"skin-client-pref-vector-feature-limited-width-value-0\" type=\"radio\" value=\"0\" data-event-name=\"skin-client-pref-vector-feature-limited-width-value-0\" class=\"cdx-radio__input\"><span class=\"cdx-radio__icon\"></span><label for=\"skin-client-pref-vector-feature-limited-width-value-0\" class=\"cdx-radio__label\">vector-feature-limited-width-0-label</label></div></form></div></li></div>"
+ <li><div class=""><form><div class="cdx-radio"><input name="skin-client-pref-vector-feature-limited-width-group" id="skin-client-pref-vector-feature-limited-width-value-1" type="radio" value="1" data-event-name="skin-client-pref-vector-feature-limited-width-value-1" class="cdx-radio__input"><span class="cdx-radio__icon"></span><label for="skin-client-pref-vector-feature-limited-width-value-1" class="cdx-radio__label">vector-feature-limited-width-1-label</label></div><div class="cdx-radio"><input name="skin-client-pref-vector-feature-limited-width-group" id="skin-client-pref-vector-feature-limited-width-value-0" type="radio" value="0" data-event-name="skin-client-pref-vector-feature-limited-width-value-0" class="cdx-radio__input"><span class="cdx-radio__icon"></span><label for="skin-client-pref-vector-feature-limited-width-value-0" class="cdx-radio__label">vector-feature-limited-width-0-label</label></div></form></div></li></div>"
61 | }
62 | } ).then( () => {
> 63 | expect( cp.innerHTML ).toMatchSnapshot();
| ^
64 | } );
65 | } );
66 |
at tests/jest/skins.vector.clientPreferences.test.js:63:27
● clientPreferences › render toggle
expect(received).toMatchSnapshot()
Snapshot name: `clientPreferences render toggle 1`
- Snapshot - 5
+ Received + 5
"<div>
- <div class=\"vector-menu-heading\">Width</div>
+ <div class="vector-menu-heading">Width</div>
- <div class=\"vector-menu-content\">
+ <div class="vector-menu-content">
- <ul class=\"vector-menu-content-list\"></ul>
+ <ul class="vector-menu-content-list"></ul>
- <span class=\"skin-client-pref-exclusion-notice\">msg:expandAll-exclusion-notice</span></div>
+ <span class="skin-client-pref-exclusion-notice">msg:expandAll-exclusion-notice</span></div>
- <li><div class=\"\"><form><span class=\"cdx-toggle-switch\"><input name=\"skin-client-pref-expandAll-group\" id=\"skin-client-pref-expandAll-value-1\" type=\"checkbox\" data-event-name=\"skin-client-pref-expandAll-value-1\" class=\"cdx-toggle-switch__input\"><span class=\"cdx-toggle-switch__switch\"><span class=\"cdx-toggle-switch__switch__grip\"></span></span><label class=\"cdx-toggle-switch__label\">msg:expandAll-name</label></span></form></div></li></div>"
+ <li><div class=""><form><span class="cdx-toggle-switch"><input name="skin-client-pref-expandAll-group" id="skin-client-pref-expandAll-value-1" type="checkbox" data-event-name="skin-client-pref-expandAll-value-1" class="cdx-toggle-switch__input"><span class="cdx-toggle-switch__switch"><span class="cdx-toggle-switch__switch__grip"></span></span><label class="cdx-toggle-switch__label">msg:expandAll-name</label></span></form></div></li></div>"
74 | }
75 | } ).then( () => {
> 76 | expect( cp.innerHTML ).toMatchSnapshot();
| ^
77 | } );
78 | } );
79 | } );
at tests/jest/skins.vector.clientPreferences.test.js:76:27
FAIL tests/jest/skins.vector.js/menuTabs.test.js
● menuTabs › adds vector-tab-noicon class to li element when part of tabs
expect(received).toMatchSnapshot()
Snapshot name: `menuTabs adds vector-tab-noicon class to li element when part of tabs 1`
- Snapshot - 5
+ Received + 5
@@ -1,11 +1,11 @@
"
- <div id=\"p-views\" class=\"vector-menu mw-portlet mw-portlet-views vector-menu-tabs\">
+ <div id="p-views" class="vector-menu mw-portlet mw-portlet-views vector-menu-tabs">
- <div class=\"vector-menu-content\">
+ <div class="vector-menu-content">
- <ul class=\"vector-menu-content-list\">
+ <ul class="vector-menu-content-list">
- <li class=\"mw-list-item mw-list-item-js vector-tab-noicon\" id=\"test-id\">
+ <li class="mw-list-item mw-list-item-js vector-tab-noicon" id="test-id">
- <a href=\"#test-href\">
+ <a href="#test-href">
<span>
test link content
</span>
</a>
</li>
44 | mw.hook( 'util' ).fire( menuItem, { id: 'test-id' } );
45 |
> 46 | expect( document.body.innerHTML ).toMatchSnapshot();
| ^
47 | } );
48 |
49 | test( 'does not add vector-tab-noicon class to li element when not part of tabs', () => {
at Object.<anonymous> (tests/jest/skins.vector.js/menuTabs.test.js:46:37)
● menuTabs › does not add vector-tab-noicon class to li element when not part of tabs
expect(received).toMatchSnapshot()
Snapshot name: `menuTabs does not add vector-tab-noicon class to li element when not part of tabs 1`
- Snapshot - 5
+ Received + 5
@@ -1,11 +1,11 @@
"
- <div id=\"p-variants\" class=\"vector-menu mw-portlet mw-portlet-variants\">
+ <div id="p-variants" class="vector-menu mw-portlet mw-portlet-variants">
- <div class=\"vector-menu-content\">
+ <div class="vector-menu-content">
- <ul class=\"vector-menu-content-list\">
+ <ul class="vector-menu-content-list">
- <li class=\"mw-list-item mw-list-item-js\" id=\"test-id\">
+ <li class="mw-list-item mw-list-item-js" id="test-id">
- <a href=\"#test-href\">
+ <a href="#test-href">
<span>
test link content
</span>
</a>
</li>
67 | mw.hook( 'util' ).fire( menuItem, { id: 'test-id' } );
68 |
> 69 | expect( document.body.innerHTML ).toMatchSnapshot();
| ^
70 | } );
71 | } );
72 |
at Object.<anonymous> (tests/jest/skins.vector.js/menuTabs.test.js:69:37)
FAIL tests/jest/userLinks.test.js
● UserLinks renders
expect(received).toMatchSnapshot()
Snapshot name: `UserLinks renders 1`
- Snapshot - 41
+ Received + 41
@@ -1,83 +1,83 @@
- "<nav class=\"vector-user-links\" aria-label=\"\">
+ "<nav class="vector-user-links" aria-label="">
- <div class=\"vector-user-links-main\">
+ <div class="vector-user-links-main">
- <div id=\"p-personal-preferences\" class=\"vector-menu\">
+ <div id="p-personal-preferences" class="vector-menu">
- <div class=\"vector-menu-content\">
+ <div class="vector-menu-content">
- <ul class=\"vector-menu-content-list\">
+ <ul class="vector-menu-content-list">
- <li id=\"ca-uls\" class=\"user-links-collapsible-item mw-list-item active\"><a href=\"#\" class=\"uls-trigger cdx-button cdx-button--weight-quiet\"><span class=\"vector-icon mw-ui-icon-wikimedia-language\"></span> <span>English</span></a></li>
+ <li id="ca-uls" class="user-links-collapsible-item mw-list-item active"><a href="#" class="uls-trigger cdx-button cdx-button--weight-quiet"><span class="vector-icon mw-ui-icon-wikimedia-language"></span> <span>English</span></a></li>
</ul>
</div>
</div>
- <div id=\"p-personal-user-page\" class=\"vector-menu\">
+ <div id="p-personal-user-page" class="vector-menu">
- <div class=\"vector-menu-content\">
+ <div class="vector-menu-content">
- <ul class=\"vector-menu-content-list\">
+ <ul class="vector-menu-content-list">
- <li id=\"pt-userpage-2\" class=\"user-links-collapsible-item mw-list-item\"><a href=\"/wiki/User:Admin\" class=\"cdx-button cdx-button--weight-quiet\" title=\"Your user page [⌃⌥.]\" accesskey=\".\"><span>Admin</span></a></li>
+ <li id="pt-userpage-2" class="user-links-collapsible-item mw-list-item"><a href="/wiki/User:Admin" class="cdx-button cdx-button--weight-quiet" title="Your user page [⌃⌥.]" accesskey="."><span>Admin</span></a></li>
</ul>
</div>
</div>
- <nav class=\"vector-appearance-landmark\" aria-label=\"\">
+ <nav class="vector-appearance-landmark" aria-label="">
</nav>
- <div id=\"p-personal-notifications\" class=\"vector-menu\">
+ <div id="p-personal-notifications" class="vector-menu">
- <div class=\"vector-menu-content\">
+ <div class="vector-menu-content">
- <ul class=\"vector-menu-content-list\">
+ <ul class="vector-menu-content-list">
- <li id=\"pt-notifications-alert\" class=\"mw-list-item\"><a href=\"/wiki/Special:Notifications\" class=\"mw-echo-notifications-badge mw-echo-notification-badge-nojs oo-ui-icon-bell mw-echo-notifications-badge-all-read\" data-counter-num=\"0\" data-counter-text=\"0\" title=\"Your alerts\"><span>Alerts (0)</span></a></li>
+ <li id="pt-notifications-alert" class="mw-list-item"><a href="/wiki/Special:Notifications" class="mw-echo-notifications-badge mw-echo-notification-badge-nojs oo-ui-icon-bell mw-echo-notifications-badge-all-read" data-counter-num="0" data-counter-text="0" title="Your alerts"><span>Alerts (0)</span></a></li>
- <li id=\"pt-notifications-notice\" class=\"mw-list-item\"><a href=\"/wiki/Special:Notifications\" class=\"mw-echo-notifications-badge mw-echo-notification-badge-nojs oo-ui-icon-tray mw-echo-notifications-badge-all-read\" data-counter-num=\"0\" data-counter-text=\"0\" title=\"Your notices\"><span>Notices (0)</span></a></li>
+ <li id="pt-notifications-notice" class="mw-list-item"><a href="/wiki/Special:Notifications" class="mw-echo-notifications-badge mw-echo-notification-badge-nojs oo-ui-icon-tray mw-echo-notifications-badge-all-read" data-counter-num="0" data-counter-text="0" title="Your notices"><span>Notices (0)</span></a></li>
</ul>
</div>
</div>
- <div id=\"p-personal-more\" class=\"vector-menu mw-portlet mw-portlet-vector-user-menu-overflow vector-user-menu-overflow\">
+ <div id="p-personal-more" class="vector-menu mw-portlet mw-portlet-vector-user-menu-overflow vector-user-menu-overflow">
- <div class=\"vector-menu-heading\">
+ <div class="vector-menu-heading">
Toggle sidebar
</div>
- <div class=\"vector-menu-content\">
+ <div class="vector-menu-content">
- <ul class=\"vector-menu-content-list\">
+ <ul class="vector-menu-content-list">
- <li id=\"pt-watchlist-2\" class=\"user-links-collapsible-item mw-list-item\"><a href=\"/wiki/Special:Watchlist\" class=\"cdx-button cdx-button--weight-quiet vector-icon cdx-button--icon-only mw-ui-icon-watchlist mw-ui-icon-wikimedia-watchlist\" title=\"A list of pages you are monitoring for changes [⌃⌥l]\" accesskey=\"l\"><span>Watchlist</span></a></li>
+ <li id="pt-watchlist-2" class="user-links-collapsible-item mw-list-item"><a href="/wiki/Special:Watchlist" class="cdx-button cdx-button--weight-quiet vector-icon cdx-button--icon-only mw-ui-icon-watchlist mw-ui-icon-wikimedia-watchlist" title="A list of pages you are monitoring for changes [⌃⌥l]" accesskey="l"><span>Watchlist</span></a></li>
</ul>
</div>
</div>
</div>
- <div id=\"vector-user-links-dropdown\" class=\"vector-dropdown vector-user-menu vector-user-menu-logged-in\">
+ <div id="vector-user-links-dropdown" class="vector-dropdown vector-user-menu vector-user-menu-logged-in">
- <input type=\"checkbox\" id=\"vector-user-links-dropdown-checkbox\" role=\"button\" aria-haspopup=\"true\" data-event-name=\"ui.dropdown-vector-user-links-dropdown\" class=\"vector-dropdown-checkbox\" aria-label=\"Personal tools\">
+ <input type="checkbox" id="vector-user-links-dropdown-checkbox" role="button" aria-haspopup="true" data-event-name="ui.dropdown-vector-user-links-dropdown" class="vector-dropdown-checkbox" aria-label="Personal tools">
- <label id=\"vector-user-links-dropdown-label\" for=\"vector-user-links-dropdown-checkbox\" class=\"vector-dropdown-label\" aria-hidden=\"true\"><span class=\"vector-dropdown-label-text\">Personal tools</span>
+ <label id="vector-user-links-dropdown-label" for="vector-user-links-dropdown-checkbox" class="vector-dropdown-label" aria-hidden="true"><span class="vector-dropdown-label-text">Personal tools</span>
</label>
- <div class=\"vector-dropdown-content\">
+ <div class="vector-dropdown-content">
- <div id=\"p-personal\" class=\"vector-menu mw-portlet mw-portlet-personal\">
+ <div id="p-personal" class="vector-menu mw-portlet mw-portlet-personal">
- <div class=\"vector-menu-content\">
+ <div class="vector-menu-content">
- <ul class=\"vector-menu-content-list\">
+ <ul class="vector-menu-content-list">
- <li id=\"pt-userpage\" class=\"user-links-collapsible-item mw-list-item\"><a href=\"/wiki/User:Admin\" title=\"Your user page [.]\" accesskey=\".\"><span class=\"vector-icon mw-ui-icon-userAvatar mw-ui-icon-wikimedia-userAvatar\"></span> <span>Admin</span></a></li>
+ <li id="pt-userpage" class="user-links-collapsible-item mw-list-item"><a href="/wiki/User:Admin" title="Your user page [.]" accesskey="."><span class="vector-icon mw-ui-icon-userAvatar mw-ui-icon-wikimedia-userAvatar"></span> <span>Admin</span></a></li>
- <li id=\"pt-mytalk\" class=\"mw-list-item\"><a href=\"/wiki/User_talk:Admin\" title=\"Your talk page [n]\" accesskey=\"n\"><span class=\"vector-icon mw-ui-icon-userTalk mw-ui-icon-wikimedia-userTalk\"></span> <span>Talk</span></a></li>
+ <li id="pt-mytalk" class="mw-list-item"><a href="/wiki/User_talk:Admin" title="Your talk page [n]" accesskey="n"><span class="vector-icon mw-ui-icon-userTalk mw-ui-icon-wikimedia-userTalk"></span> <span>Talk</span></a></li>
- <li id=\"pt-sandbox\" class=\"new mw-list-item\"><a href=\"/w/index.php?title=User:Admin/sandbox&action=edit&redlink=1\" title=\"Your sandbox (page does not exist)\"><span class=\"vector-icon mw-ui-icon-sandbox mw-ui-icon-wikimedia-sandbox\"></span> <span>Sandbox</span></a></li>
+ <li id="pt-sandbox" class="new mw-list-item"><a href="/w/index.php?title=User:Admin/sandbox&action=edit&redlink=1" title="Your sandbox (page does not exist)"><span class="vector-icon mw-ui-icon-sandbox mw-ui-icon-wikimedia-sandbox"></span> <span>Sandbox</span></a></li>
- <li id=\"pt-preferences\" class=\"mw-list-item\"><a href=\"/wiki/Special:Preferences\" title=\"Your preferences\"><span class=\"vector-icon mw-ui-icon-appearance mw-ui-icon-wikimedia-appearance\"></span> <span>Preferences</span></a></li>
+ <li id="pt-preferences" class="mw-list-item"><a href="/wiki/Special:Preferences" title="Your preferences"><span class="vector-icon mw-ui-icon-appearance mw-ui-icon-wikimedia-appearance"></span> <span>Preferences</span></a></li>
- <li id=\"pt-betafeatures\" class=\"mw-list-item\"><a href=\"/wiki/Special:Preferences#mw-prefsection-betafeatures\" title=\"Beta features\"><span class=\"vector-icon mw-ui-icon-labFlask mw-ui-icon-wikimedia-labFlask\"></span> <span>Beta</span></a></li>
+ <li id="pt-betafeatures" class="mw-list-item"><a href="/wiki/Special:Preferences#mw-prefsection-betafeatures" title="Beta features"><span class="vector-icon mw-ui-icon-labFlask mw-ui-icon-wikimedia-labFlask"></span> <span>Beta</span></a></li>
- <li id=\"pt-watchlist\" class=\"user-links-collapsible-item mw-list-item\"><a href=\"/wiki/Special:Watchlist\" title=\"A list of pages you are monitoring for changes [l]\" accesskey=\"l\"><span class=\"vector-icon mw-ui-icon-watchlist mw-ui-icon-wikimedia-watchlist\"></span> <span>Watchlist</span></a></li>
+ <li id="pt-watchlist" class="user-links-collapsible-item mw-list-item"><a href="/wiki/Special:Watchlist" title="A list of pages you are monitoring for changes [l]" accesskey="l"><span class="vector-icon mw-ui-icon-watchlist mw-ui-icon-wikimedia-watchlist"></span> <span>Watchlist</span></a></li>
- <li id=\"pt-uploads\" class=\"mw-list-item\"><a href=\"/w/index.php?title=Special:ListFiles/Admin&ilshowall=1\" title=\"List of files you have uploaded\"><span class=\"vector-icon mw-ui-icon-imageGallery mw-ui-icon-wikimedia-imageGallery\"></span> <span>Uploads</span></a></li>
+ <li id="pt-uploads" class="mw-list-item"><a href="/w/index.php?title=Special:ListFiles/Admin&ilshowall=1" title="List of files you have uploaded"><span class="vector-icon mw-ui-icon-imageGallery mw-ui-icon-wikimedia-imageGallery"></span> <span>Uploads</span></a></li>
- <li id=\"pt-mycontris\" class=\"mw-list-item\"><a href=\"/wiki/Special:Contributions/Admin\" title=\"A list of your contributions [y]\" accesskey=\"y\"><span class=\"vector-icon mw-ui-icon-userContributions mw-ui-icon-wikimedia-userContributions\"></span> <span>Contributions</span></a></li>
+ <li id="pt-mycontris" class="mw-list-item"><a href="/wiki/Special:Contributions/Admin" title="A list of your contributions [y]" accesskey="y"><span class="vector-icon mw-ui-icon-userContributions mw-ui-icon-wikimedia-userContributions"></span> <span>Contributions</span></a></li>
- <li id=\"pt-custom\" class=\"mw-list-item mw-list-item-js\">Gadget added item</li>
+ <li id="pt-custom" class="mw-list-item mw-list-item-js">Gadget added item</li>
</ul>
</div>
</div>
- <div id=\"p-user-menu-logout\" class=\"vector-menu mw-portlet mw-portlet-user-menu-logout\">
+ <div id="p-user-menu-logout" class="vector-menu mw-portlet mw-portlet-user-menu-logout">
- <div class=\"vector-menu-content\">
+ <div class="vector-menu-content">
- <ul class=\"vector-menu-content-list\">
+ <ul class="vector-menu-content-list">
- <li id=\"ca-logout\" class=\"mw-list-item\"><a data-mw=\"interface\" href=\"/w/index.php?title=Special:UserLogout&returnto=Main+Page\" title=\"Log out\"><span class=\"vector-icon mw-ui-icon-logOut mw-ui-icon-wikimedia-logOut\"></span> <span>Log out</span></a></li>
+ <li id="ca-logout" class="mw-list-item"><a data-mw="interface" href="/w/index.php?title=Special:UserLogout&returnto=Main+Page" title="Log out"><span class="vector-icon mw-ui-icon-logOut mw-ui-icon-wikimedia-logOut"></span> <span>Log out</span></a></li>
</ul>
</div>
</div>
6 |
7 | test( 'UserLinks renders', () => {
> 8 | expect( document.body.innerHTML ).toMatchSnapshot();
| ^
9 | } );
10 |
at Object.<anonymous> (tests/jest/userLinks.test.js:8:36)
Snapshot Summary
› 17 snapshots failed from 7 test suites. Inspect your code changes or run `npm run test:unit -- -u` to update them.
Test Suites: 9 failed, 12 passed, 21 total
Tests: 17 failed, 74 passed, 91 total
Snapshots: 17 failed, 2 passed, 19 total
Time: 10.732 s
--- stdout ---
> test
> npm -s run lint && tsc && npm run test:unit
Checked 1 message directory.
> test:unit
> jest --silent
--------------------------------|---------|----------|---------|---------|---------------------------------------------------------------------------------------
File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s
--------------------------------|---------|----------|---------|---------|---------------------------------------------------------------------------------------
All files | 36.35 | 28.69 | 32.49 | 36.46 |
skins.vector.clientPreferences | 60.51 | 43.66 | 58.82 | 60.2 |
clientPreferences.js | 60.51 | 43.66 | 58.82 | 60.2 | 60-88,143-160,179,193-228,257,294,300,321,326-327,343,350-353,367,397-403,420,440-459
skins.vector.js | 32.32 | 27.75 | 28.11 | 32.58 |
AB.js | 100 | 93.33 | 100 | 100 | 198
deferUntilFrame.js | 100 | 100 | 100 | 100 |
disableNightModeIfGadget.js | 70 | 70 | 60 | 70 | 59-77,89
dropdownMenus.js | 90.38 | 80 | 83.33 | 90.38 | 26,89,99,132,161
echo.js | 0 | 0 | 0 | 0 | 6-36
features.js | 71.42 | 55.55 | 50 | 71.42 | 19-20,26-27,85-103
languageButton.js | 0 | 0 | 0 | 0 | 9-52
menuTabs.js | 100 | 100 | 100 | 100 |
pinnableElement.js | 78.94 | 76.31 | 75 | 79.78 | 25,29-30,34-35,82-86,134,184,208,231,278-294
popupNotification.js | 91.66 | 64.28 | 75 | 91.66 | 74,77
portlets.js | 85.52 | 58.06 | 60 | 85.52 | 20,35-37,60,113,126-132
scrollObserver.js | 0 | 0 | 0 | 0 | 2-52
searchLoader.js | 0 | 0 | 0 | 0 | 12-123
searchToggle.js | 13.33 | 0 | 0 | 13.33 | 18-94,110-125
sectionObserver.js | 0 | 0 | 0 | 0 | 46-187
setupIntersectionObservers.js | 0 | 0 | 0 | 0 | 3-369
skin.js | 0 | 0 | 0 | 0 | 1-160
stickyHeader.js | 16.9 | 3.5 | 19.44 | 16.99 | 27-66,94-111,128-140,169-390,427-429,449-586
stickyHeaderAB.js | 0 | 0 | 0 | 0 |
tableOfContents.js | 0 | 0 | 0 | 0 | 6-633
tables.js | 86.36 | 81.25 | 100 | 86.36 | 4,28,34
userPreferences.js | 33.33 | 0 | 0 | 33.33 | 8-10
watchstar.js | 20 | 0 | 0 | 20 | 7-24,29-36
skins.vector.legacy.js | 22.22 | 12.16 | 6.66 | 22.22 |
collapsibleTabs.js | 0 | 0 | 0 | 0 | 13-236
portlets.js | 83.33 | 64.28 | 66.66 | 83.33 | 18,35-37,47,85-88
skin-legacy.js | 0 | 100 | 0 | 0 | 4-19
vector.js | 0 | 0 | 0 | 0 | 7-118
skins.vector.search | 58.33 | 46.51 | 55.55 | 58.33 |
App.vue | 42.3 | 16.66 | 35.29 | 42.3 | 121-180,185-187,242-246
fetch.js | 100 | 75 | 75 | 100 | 28
instrumentation.js | 80 | 100 | 60 | 80 | 11-25
restSearchClient.js | 100 | 75 | 100 | 100 | 26-48
skins.vector.search.js | 0 | 0 | 0 | 0 | 4-51
types.js | 0 | 0 | 0 | 0 |
urlGenerator.js | 100 | 100 | 100 | 100 |
--------------------------------|---------|----------|---------|---------|---------------------------------------------------------------------------------------
--- end ---
$ node_modules/.bin/jest -u
--- stderr ---
PASS tests/jest/skins.vector.js/dropdownMenus.test.js
› 2 snapshots updated.
PASS tests/jest/stickyHeader.test.js
› 1 snapshot updated.
PASS tests/jest/pinnableElement.test.js
› 1 snapshot updated.
PASS tests/jest/skins.vector.js/tables.test.js
› 7 snapshots updated.
PASS tests/jest/skins.vector.clientPreferences.test.js
› 3 snapshots updated.
PASS tests/jest/userLinks.test.js
› 1 snapshot updated.
PASS tests/jest/skins.vector.js/menuTabs.test.js
› 2 snapshots updated.
PASS tests/jest/skins.vector.js/disableNightModeIfGadget.test.js
PASS tests/jest/App.test.js
● Console
console.warn
[Vue warn]: Failed to resolve component: cdx-typeahead-search
If this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement.
at <App id="searchform" searchAccessKey="f" searchTitle="search" ... >
at <VTUROOT>
200 | restClient.loadMore(
201 | this.currentSearchQuery,
> 202 | this.suggestions.length,
| ^
203 | 10,
204 | this.showDescription
205 | ),
at warn$1 (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:50:13)
at resolveAsset (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:1175:7)
at resolveComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:1137:10)
at Proxy.render (resources/skins.vector.search/App.vue:202:66)
at renderComponentRoot (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:886:16)
at ReactiveEffect.componentUpdateFn [as fn] (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5086:46)
at ReactiveEffect.run (node_modules/@vue/reactivity/dist/reactivity.cjs.js:181:19)
at instance.update (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5217:16)
at setupRenderEffect (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5227:5)
at mountComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4995:7)
at processComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4949:9)
at patch (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4429:11)
at ReactiveEffect.componentUpdateFn [as fn] (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5093:11)
at ReactiveEffect.run (node_modules/@vue/reactivity/dist/reactivity.cjs.js:181:19)
at instance.update (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5217:16)
at setupRenderEffect (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5227:5)
at mountComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4995:7)
at processComponent (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4949:9)
at patch (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:4429:11)
at render (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:5743:7)
at mount (node_modules/@vue/runtime-core/dist/runtime-core.cjs.js:3058:13)
at Object.app.mount (node_modules/@vue/runtime-dom/dist/runtime-dom.cjs.js:1470:19)
at mount (node_modules/@vue/test-utils/dist/vue-test-utils.cjs.js:8415:18)
at Object.shallowMount (node_modules/@vue/test-utils/dist/vue-test-utils.cjs.js:8434:12)
at mount (tests/jest/App.test.js:15:69)
at Object.<anonymous> (tests/jest/App.test.js:33:19)
PASS tests/jest/skins.vector.legacy.js/portlets.test.js
PASS tests/jest/restSearchClient.test.js
PASS tests/jest/skins.vector.js/portlets.test.js
PASS tests/jest/AB.test.js
PASS tests/jest/popupNotification.test.js
PASS tests/jest/urlGenerator.test.js
PASS tests/jest/fetch.test.js
PASS tests/jest/skins.vector.es6/features.test.js
PASS tests/jest/instrumentation.test.js
PASS tests/jest/deferUntilFrame.test.js
FAIL tests/jest/skins.vector.es6/main.test.js
● Test suite failed to run
● Invalid return value:
`process()` or/and `processAsync()` method of code transformer found at
"/src/repo/node_modules/mustache-jest/index.js"
should return an object or a Promise resolving to an object. The object
must have `code` property with a string of processed code.
This error may be caused by a breaking change in Jest 28:
https://jestjs.io/docs/28.x/upgrading-to-jest28#transformer
Code Transformation Documentation:
https://jestjs.io/docs/code-transformation
4 | * TableOfContents Mustache templates
5 | */
> 6 | const templateTocContents = require( /** @type {string} */ ( './templates/TableOfContents__list.mustache' ) );
| ^
7 | const templateTocLine = require( /** @type {string} */ ( './templates/TableOfContents__line.mustache' ) );
8 | /**
9 | * TableOfContents Config object for filling mustache templates
at ScriptTransformer._buildTransformResult (node_modules/@jest/transform/build/ScriptTransformer.js:442:15)
at ScriptTransformer.transformSource (node_modules/@jest/transform/build/ScriptTransformer.js:554:17)
at ScriptTransformer._transformAndBuildScript (node_modules/@jest/transform/build/ScriptTransformer.js:674:40)
at ScriptTransformer.transform (node_modules/@jest/transform/build/ScriptTransformer.js:726:19)
at Object.require (resources/skins.vector.js/tableOfContents.js:6:29)
at Object.require (resources/skins.vector.js/setupIntersectionObservers.js:7:24)
at Object.<anonymous> (tests/jest/skins.vector.es6/main.test.js:8:18)
FAIL tests/jest/tableOfContents.test.js
● Test suite failed to run
● Invalid return value:
`process()` or/and `processAsync()` method of code transformer found at
"/src/repo/node_modules/mustache-jest/index.js"
should return an object or a Promise resolving to an object. The object
must have `code` property with a string of processed code.
This error may be caused by a breaking change in Jest 28:
https://jestjs.io/docs/28.x/upgrading-to-jest28#transformer
Code Transformation Documentation:
https://jestjs.io/docs/code-transformation
4 | * TableOfContents Mustache templates
5 | */
> 6 | const templateTocContents = require( /** @type {string} */ ( './templates/TableOfContents__list.mustache' ) );
| ^
7 | const templateTocLine = require( /** @type {string} */ ( './templates/TableOfContents__line.mustache' ) );
8 | /**
9 | * TableOfContents Config object for filling mustache templates
at ScriptTransformer._buildTransformResult (node_modules/@jest/transform/build/ScriptTransformer.js:442:15)
at ScriptTransformer.transformSource (node_modules/@jest/transform/build/ScriptTransformer.js:554:17)
at ScriptTransformer._transformAndBuildScript (node_modules/@jest/transform/build/ScriptTransformer.js:674:40)
at ScriptTransformer.transform (node_modules/@jest/transform/build/ScriptTransformer.js:726:19)
at Object.require (resources/skins.vector.js/tableOfContents.js:6:29)
at Object.<anonymous> (tests/jest/tableOfContents.test.js:9:29)
Jest: "global" coverage threshold for statements (48%) not met: 36.35%
Jest: "global" coverage threshold for branches (35%) not met: 28.69%
Jest: "global" coverage threshold for lines (48%) not met: 36.46%
Jest: "global" coverage threshold for functions (45%) not met: 32.49%
Summary of all failing tests
FAIL tests/jest/skins.vector.es6/main.test.js
● Test suite failed to run
● Invalid return value:
`process()` or/and `processAsync()` method of code transformer found at
"/src/repo/node_modules/mustache-jest/index.js"
should return an object or a Promise resolving to an object. The object
must have `code` property with a string of processed code.
This error may be caused by a breaking change in Jest 28:
https://jestjs.io/docs/28.x/upgrading-to-jest28#transformer
Code Transformation Documentation:
https://jestjs.io/docs/code-transformation
4 | * TableOfContents Mustache templates
5 | */
> 6 | const templateTocContents = require( /** @type {string} */ ( './templates/TableOfContents__list.mustache' ) );
| ^
7 | const templateTocLine = require( /** @type {string} */ ( './templates/TableOfContents__line.mustache' ) );
8 | /**
9 | * TableOfContents Config object for filling mustache templates
at ScriptTransformer._buildTransformResult (node_modules/@jest/transform/build/ScriptTransformer.js:442:15)
at ScriptTransformer.transformSource (node_modules/@jest/transform/build/ScriptTransformer.js:554:17)
at ScriptTransformer._transformAndBuildScript (node_modules/@jest/transform/build/ScriptTransformer.js:674:40)
at ScriptTransformer.transform (node_modules/@jest/transform/build/ScriptTransformer.js:726:19)
at Object.require (resources/skins.vector.js/tableOfContents.js:6:29)
at Object.require (resources/skins.vector.js/setupIntersectionObservers.js:7:24)
at Object.<anonymous> (tests/jest/skins.vector.es6/main.test.js:8:18)
FAIL tests/jest/tableOfContents.test.js
● Test suite failed to run
● Invalid return value:
`process()` or/and `processAsync()` method of code transformer found at
"/src/repo/node_modules/mustache-jest/index.js"
should return an object or a Promise resolving to an object. The object
must have `code` property with a string of processed code.
This error may be caused by a breaking change in Jest 28:
https://jestjs.io/docs/28.x/upgrading-to-jest28#transformer
Code Transformation Documentation:
https://jestjs.io/docs/code-transformation
4 | * TableOfContents Mustache templates
5 | */
> 6 | const templateTocContents = require( /** @type {string} */ ( './templates/TableOfContents__list.mustache' ) );
| ^
7 | const templateTocLine = require( /** @type {string} */ ( './templates/TableOfContents__line.mustache' ) );
8 | /**
9 | * TableOfContents Config object for filling mustache templates
at ScriptTransformer._buildTransformResult (node_modules/@jest/transform/build/ScriptTransformer.js:442:15)
at ScriptTransformer.transformSource (node_modules/@jest/transform/build/ScriptTransformer.js:554:17)
at ScriptTransformer._transformAndBuildScript (node_modules/@jest/transform/build/ScriptTransformer.js:674:40)
at ScriptTransformer.transform (node_modules/@jest/transform/build/ScriptTransformer.js:726:19)
at Object.require (resources/skins.vector.js/tableOfContents.js:6:29)
at Object.<anonymous> (tests/jest/tableOfContents.test.js:9:29)
Snapshot Summary
› 17 snapshots updated from 7 test suites.
Test Suites: 2 failed, 19 passed, 21 total
Tests: 91 passed, 91 total
Snapshots: 17 updated, 2 passed, 19 total
Time: 5.605 s
Ran all test suites.
--- stdout ---
--------------------------------|---------|----------|---------|---------|---------------------------------------------------------------------------------------
File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s
--------------------------------|---------|----------|---------|---------|---------------------------------------------------------------------------------------
All files | 36.35 | 28.69 | 32.49 | 36.46 |
skins.vector.clientPreferences | 60.51 | 43.66 | 58.82 | 60.2 |
clientPreferences.js | 60.51 | 43.66 | 58.82 | 60.2 | 60-88,143-160,179,193-228,257,294,300,321,326-327,343,350-353,367,397-403,420,440-459
skins.vector.js | 32.32 | 27.75 | 28.11 | 32.58 |
AB.js | 100 | 93.33 | 100 | 100 | 198
deferUntilFrame.js | 100 | 100 | 100 | 100 |
disableNightModeIfGadget.js | 70 | 70 | 60 | 70 | 59-77,89
dropdownMenus.js | 90.38 | 80 | 83.33 | 90.38 | 26,89,99,132,161
echo.js | 0 | 0 | 0 | 0 | 6-36
features.js | 71.42 | 55.55 | 50 | 71.42 | 19-20,26-27,85-103
languageButton.js | 0 | 0 | 0 | 0 | 9-52
menuTabs.js | 100 | 100 | 100 | 100 |
pinnableElement.js | 78.94 | 76.31 | 75 | 79.78 | 25,29-30,34-35,82-86,134,184,208,231,278-294
popupNotification.js | 91.66 | 64.28 | 75 | 91.66 | 74,77
portlets.js | 85.52 | 58.06 | 60 | 85.52 | 20,35-37,60,113,126-132
scrollObserver.js | 0 | 0 | 0 | 0 | 2-52
searchLoader.js | 0 | 0 | 0 | 0 | 12-123
searchToggle.js | 13.33 | 0 | 0 | 13.33 | 18-94,110-125
sectionObserver.js | 0 | 0 | 0 | 0 | 46-187
setupIntersectionObservers.js | 0 | 0 | 0 | 0 | 3-369
skin.js | 0 | 0 | 0 | 0 | 1-160
stickyHeader.js | 16.9 | 3.5 | 19.44 | 16.99 | 27-66,94-111,128-140,169-390,427-429,449-586
stickyHeaderAB.js | 0 | 0 | 0 | 0 |
tableOfContents.js | 0 | 0 | 0 | 0 | 6-633
tables.js | 86.36 | 81.25 | 100 | 86.36 | 4,28,34
userPreferences.js | 33.33 | 0 | 0 | 33.33 | 8-10
watchstar.js | 20 | 0 | 0 | 20 | 7-24,29-36
skins.vector.legacy.js | 22.22 | 12.16 | 6.66 | 22.22 |
collapsibleTabs.js | 0 | 0 | 0 | 0 | 13-236
portlets.js | 83.33 | 64.28 | 66.66 | 83.33 | 18,35-37,47,85-88
skin-legacy.js | 0 | 100 | 0 | 0 | 4-19
vector.js | 0 | 0 | 0 | 0 | 7-118
skins.vector.search | 58.33 | 46.51 | 55.55 | 58.33 |
App.vue | 42.3 | 16.66 | 35.29 | 42.3 | 121-180,185-187,242-246
fetch.js | 100 | 75 | 75 | 100 | 28
instrumentation.js | 80 | 100 | 60 | 80 | 11-25
restSearchClient.js | 100 | 75 | 100 | 100 | 26-48
skins.vector.search.js | 0 | 0 | 0 | 0 | 4-51
types.js | 0 | 0 | 0 | 0 |
urlGenerator.js | 100 | 100 | 100 | 100 |
--------------------------------|---------|----------|---------|---------|---------------------------------------------------------------------------------------
--- end ---
Traceback (most recent call last):
File "/venv/lib/python3.11/site-packages/runner-0.1.0-py3.11.egg/runner/__init__.py", line 325, in npm_test
self.check_call(["npm", "test"])
File "/venv/lib/python3.11/site-packages/runner-0.1.0-py3.11.egg/runner/shell2.py", line 59, in check_call
res.check_returncode()
File "/usr/lib/python3.11/subprocess.py", line 502, in check_returncode
raise CalledProcessError(self.returncode, self.args, self.stdout,
subprocess.CalledProcessError: Command '['/usr/bin/npm', 'test']' returned non-zero exit status 1.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/venv/lib/python3.11/site-packages/runner-0.1.0-py3.11.egg/runner/__init__.py", line 1964, in main
libup.run(args.repo, args.output, args.branch)
File "/venv/lib/python3.11/site-packages/runner-0.1.0-py3.11.egg/runner/__init__.py", line 1902, in run
self.npm_upgrade(plan)
File "/venv/lib/python3.11/site-packages/runner-0.1.0-py3.11.egg/runner/__init__.py", line 1252, in npm_upgrade
self.npm_test()
File "/venv/lib/python3.11/site-packages/runner-0.1.0-py3.11.egg/runner/__init__.py", line 330, in npm_test
self.check_call(["node_modules/.bin/jest", "-u"])
File "/venv/lib/python3.11/site-packages/runner-0.1.0-py3.11.egg/runner/shell2.py", line 59, in check_call
res.check_returncode()
File "/usr/lib/python3.11/subprocess.py", line 502, in check_returncode
raise CalledProcessError(self.returncode, self.args, self.stdout,
subprocess.CalledProcessError: Command '['node_modules/.bin/jest', '-u']' returned non-zero exit status 1.