mediawiki/extensions/ContentTranslation (main)

sourcepatches
$ date
--- stdout ---
Wed Jan 29 00:49:09 UTC 2025

--- end ---
$ git clone file:///srv/git/mediawiki-extensions-ContentTranslation.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 ---
900bf5080d2926b46c431ad8de7b7d654550ff37 refs/heads/master

--- end ---
$ /usr/bin/npm audit --json
--- stdout ---
{
  "auditReportVersion": 2,
  "vulnerabilities": {
    "@wdio/cli": {
      "name": "@wdio/cli",
      "severity": "high",
      "isDirect": true,
      "via": [
        "webdriverio",
        "yarn-install"
      ],
      "effects": [
        "@wdio/junit-reporter",
        "@wdio/local-runner",
        "@wdio/spec-reporter"
      ],
      "range": "5.4.10 - 8.41.0",
      "nodes": [
        "node_modules/@wdio/cli"
      ],
      "fixAvailable": {
        "name": "@wdio/cli",
        "version": "9.7.1",
        "isSemVerMajor": true
      }
    },
    "@wdio/junit-reporter": {
      "name": "@wdio/junit-reporter",
      "severity": "high",
      "isDirect": true,
      "via": [
        "@wdio/cli"
      ],
      "effects": [],
      "range": "6.0.4 - 8.0.0-alpha.631",
      "nodes": [
        "node_modules/@wdio/junit-reporter"
      ],
      "fixAvailable": {
        "name": "@wdio/junit-reporter",
        "version": "9.6.3",
        "isSemVerMajor": true
      }
    },
    "@wdio/local-runner": {
      "name": "@wdio/local-runner",
      "severity": "high",
      "isDirect": true,
      "via": [
        "@wdio/cli",
        "@wdio/runner"
      ],
      "effects": [],
      "range": "6.0.4 - 8.41.0",
      "nodes": [
        "node_modules/@wdio/local-runner"
      ],
      "fixAvailable": {
        "name": "@wdio/local-runner",
        "version": "9.7.1",
        "isSemVerMajor": true
      }
    },
    "@wdio/mocha-framework": {
      "name": "@wdio/mocha-framework",
      "severity": "moderate",
      "isDirect": true,
      "via": [
        "mocha"
      ],
      "effects": [],
      "range": "7.7.4 - 7.19.5",
      "nodes": [
        "node_modules/@wdio/mocha-framework"
      ],
      "fixAvailable": {
        "name": "@wdio/mocha-framework",
        "version": "7.40.0",
        "isSemVerMajor": false
      }
    },
    "@wdio/runner": {
      "name": "@wdio/runner",
      "severity": "high",
      "isDirect": false,
      "via": [
        "webdriverio"
      ],
      "effects": [
        "@wdio/local-runner"
      ],
      "range": "7.16.5 - 8.41.0",
      "nodes": [
        "node_modules/@wdio/runner"
      ],
      "fixAvailable": {
        "name": "@wdio/local-runner",
        "version": "9.7.1",
        "isSemVerMajor": true
      }
    },
    "@wdio/spec-reporter": {
      "name": "@wdio/spec-reporter",
      "severity": "high",
      "isDirect": true,
      "via": [
        "@wdio/cli"
      ],
      "effects": [],
      "range": "6.0.4 - 8.0.0-alpha.631",
      "nodes": [
        "node_modules/@wdio/spec-reporter"
      ],
      "fixAvailable": {
        "name": "@wdio/spec-reporter",
        "version": "9.6.3",
        "isSemVerMajor": true
      }
    },
    "braces": {
      "name": "braces",
      "severity": "high",
      "isDirect": false,
      "via": [
        {
          "source": 1098094,
          "name": "braces",
          "dependency": "braces",
          "title": "Uncontrolled resource consumption in braces",
          "url": "https://github.com/advisories/GHSA-grv7-fg5c-xmjg",
          "severity": "high",
          "cwe": [
            "CWE-400",
            "CWE-1050"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
          },
          "range": "<3.0.3"
        }
      ],
      "effects": [],
      "range": "<3.0.3",
      "nodes": [
        "node_modules/braces"
      ],
      "fixAvailable": true
    },
    "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",
        "yarn-install"
      ],
      "range": "<6.0.6 || >=7.0.0 <7.0.5",
      "nodes": [
        "node_modules/cross-spawn",
        "node_modules/pre-commit/node_modules/cross-spawn",
        "node_modules/yarn-install/node_modules/cross-spawn"
      ],
      "fixAvailable": {
        "name": "pre-commit",
        "version": "1.0.10",
        "isSemVerMajor": true
      }
    },
    "devtools": {
      "name": "devtools",
      "severity": "high",
      "isDirect": false,
      "via": [
        "puppeteer-core"
      ],
      "effects": [],
      "range": ">=7.16.5",
      "nodes": [
        "node_modules/@wdio/cli/node_modules/devtools",
        "node_modules/@wdio/runner/node_modules/devtools",
        "node_modules/devtools"
      ],
      "fixAvailable": true
    },
    "micromatch": {
      "name": "micromatch",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        {
          "source": 1098681,
          "name": "micromatch",
          "dependency": "micromatch",
          "title": "Regular Expression Denial of Service (ReDoS) in micromatch",
          "url": "https://github.com/advisories/GHSA-952p-6rrq-rcjv",
          "severity": "moderate",
          "cwe": [
            "CWE-1333"
          ],
          "cvss": {
            "score": 5.3,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L"
          },
          "range": "<4.0.8"
        }
      ],
      "effects": [],
      "range": "<4.0.8",
      "nodes": [
        "node_modules/micromatch"
      ],
      "fixAvailable": true
    },
    "mocha": {
      "name": "mocha",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "nanoid"
      ],
      "effects": [
        "@wdio/mocha-framework"
      ],
      "range": "8.2.0 - 10.2.0",
      "nodes": [
        "node_modules/mocha"
      ],
      "fixAvailable": {
        "name": "@wdio/mocha-framework",
        "version": "7.40.0",
        "isSemVerMajor": false
      }
    },
    "mwbot": {
      "name": "mwbot",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        "request"
      ],
      "effects": [
        "wdio-mediawiki"
      ],
      "range": ">=0.1.6",
      "nodes": [
        "node_modules/mwbot"
      ],
      "fixAvailable": false
    },
    "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": [
        "mocha"
      ],
      "range": "<3.3.8",
      "nodes": [
        "node_modules/nanoid",
        "node_modules/postcss/node_modules/nanoid"
      ],
      "fixAvailable": {
        "name": "@wdio/mocha-framework",
        "version": "7.40.0",
        "isSemVerMajor": false
      }
    },
    "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
      }
    },
    "puppeteer-core": {
      "name": "puppeteer-core",
      "severity": "high",
      "isDirect": false,
      "via": [
        "ws"
      ],
      "effects": [
        "devtools",
        "webdriverio"
      ],
      "range": "11.0.0 - 22.11.1",
      "nodes": [
        "node_modules/@wdio/cli/node_modules/devtools/node_modules/puppeteer-core",
        "node_modules/@wdio/cli/node_modules/puppeteer-core",
        "node_modules/@wdio/runner/node_modules/devtools/node_modules/puppeteer-core",
        "node_modules/@wdio/runner/node_modules/puppeteer-core",
        "node_modules/devtools/node_modules/puppeteer-core",
        "node_modules/puppeteer-core"
      ],
      "fixAvailable": {
        "name": "@wdio/cli",
        "version": "9.7.1",
        "isSemVerMajor": true
      }
    },
    "request": {
      "name": "request",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        {
          "source": 1096727,
          "name": "request",
          "dependency": "request",
          "title": "Server-Side Request Forgery in Request",
          "url": "https://github.com/advisories/GHSA-p8p7-x288-28g6",
          "severity": "moderate",
          "cwe": [
            "CWE-918"
          ],
          "cvss": {
            "score": 6.1,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N"
          },
          "range": "<=2.88.2"
        },
        "tough-cookie"
      ],
      "effects": [
        "mwbot"
      ],
      "range": "*",
      "nodes": [
        "node_modules/request"
      ],
      "fixAvailable": false
    },
    "tough-cookie": {
      "name": "tough-cookie",
      "severity": "moderate",
      "isDirect": false,
      "via": [
        {
          "source": 1097682,
          "name": "tough-cookie",
          "dependency": "tough-cookie",
          "title": "tough-cookie Prototype Pollution vulnerability",
          "url": "https://github.com/advisories/GHSA-72xf-g2v4-qvf3",
          "severity": "moderate",
          "cwe": [
            "CWE-1321"
          ],
          "cvss": {
            "score": 6.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N"
          },
          "range": "<4.1.3"
        }
      ],
      "effects": [
        "request"
      ],
      "range": "<4.1.3",
      "nodes": [
        "node_modules/tough-cookie"
      ],
      "fixAvailable": false
    },
    "wdio-mediawiki": {
      "name": "wdio-mediawiki",
      "severity": "moderate",
      "isDirect": true,
      "via": [
        "mwbot"
      ],
      "effects": [],
      "range": "*",
      "nodes": [
        "node_modules/wdio-mediawiki"
      ],
      "fixAvailable": false
    },
    "webdriverio": {
      "name": "webdriverio",
      "severity": "high",
      "isDirect": false,
      "via": [
        "devtools",
        "puppeteer-core"
      ],
      "effects": [
        "@wdio/cli",
        "@wdio/runner"
      ],
      "range": "7.16.5 - 8.41.0",
      "nodes": [
        "node_modules/@wdio/cli/node_modules/webdriverio",
        "node_modules/@wdio/runner/node_modules/webdriverio",
        "node_modules/webdriverio"
      ],
      "fixAvailable": {
        "name": "@wdio/cli",
        "version": "9.7.1",
        "isSemVerMajor": true
      }
    },
    "ws": {
      "name": "ws",
      "severity": "high",
      "isDirect": false,
      "via": [
        {
          "source": 1098392,
          "name": "ws",
          "dependency": "ws",
          "title": "ws affected by a DoS when handling a request with many HTTP headers",
          "url": "https://github.com/advisories/GHSA-3h5v-q93c-6h6q",
          "severity": "high",
          "cwe": [
            "CWE-476"
          ],
          "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": ">=8.0.0 <8.17.1"
        }
      ],
      "effects": [
        "puppeteer-core"
      ],
      "range": "8.0.0 - 8.17.0",
      "nodes": [
        "node_modules/@wdio/cli/node_modules/devtools/node_modules/ws",
        "node_modules/@wdio/cli/node_modules/ws",
        "node_modules/@wdio/runner/node_modules/devtools/node_modules/ws",
        "node_modules/@wdio/runner/node_modules/ws",
        "node_modules/ws"
      ],
      "fixAvailable": {
        "name": "@wdio/cli",
        "version": "9.7.1",
        "isSemVerMajor": true
      }
    },
    "yarn-install": {
      "name": "yarn-install",
      "severity": "high",
      "isDirect": false,
      "via": [
        "cross-spawn"
      ],
      "effects": [
        "@wdio/cli"
      ],
      "range": "*",
      "nodes": [
        "node_modules/yarn-install"
      ],
      "fixAvailable": {
        "name": "@wdio/cli",
        "version": "9.7.1",
        "isSemVerMajor": true
      }
    }
  },
  "metadata": {
    "vulnerabilities": {
      "info": 0,
      "low": 0,
      "moderate": 8,
      "high": 13,
      "critical": 0,
      "total": 21
    },
    "dependencies": {
      "prod": 1,
      "dev": 1058,
      "optional": 42,
      "peer": 199,
      "peerOptional": 0,
      "total": 1058
    }
  }
}

--- 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: 40 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 firebase/php-jwt (v6.11.0)
  - 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: 40 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 firebase/php-jwt (v6.11.0): 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/37 [>---------------------------]   0%
 20/37 [===============>------------]  54%
 33/37 [========================>---]  89%
 37/37 [============================] 100%
2 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
$ /usr/bin/npm install
--- stderr ---
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
--- stdout ---

added 1062 packages, and audited 1063 packages in 27s

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

19 vulnerabilities (7 moderate, 12 high)

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

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

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

Run `npm audit` for details.

--- end ---
$ package-lock-lint package-lock.json
--- stdout ---
Checking package-lock.json

--- end ---
$ ./node_modules/.bin/stylelint modules/ui/styles/mw.cx.ui.TranslationView.less modules/entrypoints/styles/ext.cx.entrypoints.mffrequentlanguages.less modules/ui/styles/widgets/mw.cx.ui.TranslationToolWidget.less app/src/components/SXContentComparator/NewSectionPlaceholder.vue modules/entrypoints/ext.cx.entrypoints.newbytranslation/NewByTranslationPopup.vue app/src/components/SXPublisher/SXPublisherCaptchaDialog.vue app/src/components/SXSentenceSelector/RetryMtCard.vue modules/ui/styles/mw.cx.ui.SourceColumn.less app/src/lib/mediawiki.ui/components/MWDivider/MWDivider.vue app/src/components/SXSentenceSelector/SXBlockTemplateStatusDialog.vue app/src/lib/mediawiki.ui/components/MWExpandableContent/MWExpandableContent.vue app/src/components/SXTranslationConfirmer/SXTranslationConfirmerArticleInformation.vue modules/ui/styles/mw.cx.common.less modules/ui/styles/widgets/mw.cx.ui.PageTitleWidget.less modules/dashboard/styles/mw.cx.TranslationList.less modules/ve-cx/ce/styles/ve.ce.CXReferenceNode.less app/src/components/SXContentComparator/SXContentComparatorContentHeader.vue app/src/components/MWLanguageSelector/MWLanguageSelector.vue app/src/lib/mediawiki.ui/components/MWSelect/MWSelect.vue app/src/components/CXDashboard/SXConfirmTranslationStartDialog.vue app/src/components/CXDashboard/CXTranslationWorkPublished.vue app/src/components/SXSectionSelector/SXSectionSelector.vue modules/ui/styles/grid/agora-grid.less modules/ui/styles/mw.cx.ui.LanguageFilter.less modules/ui/styles/mw.cx.ui.TranslationHeader.less app/src/views/SXTranslationConfirmer.vue app/src/components/CXDashboard/CXStatsPanel.vue app/src/components/CXDashboard/CXTranslationWorkDraft.vue modules/ui/styles/mw.cx.ui.Header.less app/dist/style.css app/src/lib/mediawiki.ui/components/MWLayout/MWCol.vue modules/ui/styles/mw.cx.ui.CaptchaDialog.less modules/entrypoints/styles/ext.cx.entrypoints.contributionsmenu.less app/src/components/SXContentComparator/SXContentComparatorHeaderNavigation.vue modules/ui/styles/widgets/mw.cx.ui.CategoryTagItemWidget.monobook.less modules/widgets/callout/ext.cx.callout.vector.less modules/ve-cx/ui/styles/ve.ui.CXSurface.less app/src/components/SXEditor/SXEditor.vue app/src/components/SXTranslationConfirmer/UnreviewedTranslationDialog.vue modules/ve-cx/ui/styles/ve.ui.CXDesktopContext.less modules/entrypoints/styles/ext.cx.contributions.vector.less modules/ui/styles/mw.cx.init.Translation.less app/src/components/SXArticleSearch/SXSearchArticleSuggestion.vue minT/styles/mint.less modules/ui/styles/widgets/mw.cx.ui.FeatureDiscoveryWidget.less minT/src/ExploreLanguagesPage.vue app/src/views/SXEditor.vue app/src/components/SXPublisher/SXPublisherReviewInfo.vue app/src/components/SXSentenceSelector/TranslatedSegmentCardActionButtons.vue app/src/plugins/ve/components/VisualEditor.vue minT/entrypoints/ArticleFooterEntrypointCard.vue app/src/components/SXSentenceSelector/SXConfirmBackNavigationDialog.vue app/src/components/CXDashboard/MWBottomNavigation.vue app/src/components/SXSentenceSelector/ProposedTranslationHeader.vue app/src/lib/mediawiki.ui/components/MWDialog/MWDialog.vue modules/source/styles/mw.cx.SelectedSourcePage.less app/src/components/SXTranslationConfirmer/SXTranslationConfirmerActionPanel.vue app/src/components/CXDashboard/SXSuggestionsFiltersDialog.vue app/src/components/SXSentenceSelector/SXSentenceSelectorContentHeader.vue app/src/components/CXDashboard/CXTranslationSuggestion.vue modules/ui/styles/mw.cx.ui.TargetColumn.less modules/ve-cx/ce/mixins/ve.ce.CXPendingNode.less modules/ve-cx/ui/tools/ve.ui.CXSaveMTPreferenceTool.less modules/stats/styles/ext.cx.stats.less modules/entrypoints/styles/ext.cx.entrypoints.newbytranslation.less app/src/views/SXSectionSelector.vue app/src/components/CXDashboard/CustomInfoChip.vue app/src/components/SXArticleLanguageSelector.vue app/src/lib/mediawiki.ui/components/MWButton/buttons.less app/src/components/SXSentenceSelector/SubSection.vue modules/ve-cx/ce/styles/ve.ce.CXLinkAnnotation.less modules/ui/styles/widgets/mw.cx.ui.CategoryTagItemWidget.less app/src/views/SXSentenceSelector.vue app/src/lib/mediawiki.ui/components/MWCircularProgressBar/MWCircleProgressBar.vue app/src/components/SXPublisher/SXPublisherHeader.vue modules/dashboard/styles/ext.cx.dashboard.monobook.less app/src/App.vue app/src/lib/mediawiki.ui/components/MWButton/MWButton.vue modules/dashboard/styles/ext.cx.dashboard.less app/src/lib/mediawiki.ui/components/MWMessage/MWMessage.vue app/src/components/CXDashboard/CXSuggestionList.vue app/src/components/CXDashboard/CXTranslationWork.vue minT/src/ConfirmTopicPage.vue app/src/components/SXSentenceSelector/SXSentenceSelector.vue app/src/components/CXDashboard/CXSuggestionListFilters.vue app/src/components/CXDashboard/CXTranslationList.vue modules/ve-cx/ce/styles/ve.ce.CXSentenceSegmentAnnotation.less modules/tools/styles/mw.cx.tools.InstructionsTool.less app/src/components/CXDashboard/CXHelpPanel.vue app/src/components/SXSectionSelector/SXSectionSelectorHeader.vue app/src/views/SXContentComparator.vue app/src/components/SXArticleSearch/SXArticleSearch.vue app/src/components/SXArticleSearch/SearchResultsCard.vue app/src/components/CXDashboard/SXTranslationListLanguageSelector.vue app/src/components/SXSentenceSelector/BlockTemplateStatusIndicator.vue app/src/components/SXArticleSearch/ArticleSuggestionsCard.vue modules/ve-cx/ui/styles/ve.ui.CXTranslationToolbar.less modules/ui/styles/mw.cx.variables.less app/src/lib/mediawiki.ui/components/MWInput/MWInput.vue minT/src/ViewTranslationPage.vue app/src/components/SXTranslationConfirmer/SXTranslationConfirmer.vue modules/ui/styles/widgets/mw.cx.ui.TitleOptionWidget.less app/src/components/SXContentComparator/SXContentComparatorHeaderMappedSection.vue app/src/components/SXQuickTutorial/SXQuickTutorial.vue modules/ve-cx/ce/styles/ve.ce.CXLintableNode.less modules/entrypoints/styles/ext.cx.entrypoints.recenttranslation.less app/src/components/SXEditor/EditCompleteFeedback.vue app/src/lib/mediawiki.ui/components/MWLayout/MWGrid.vue modules/ui/styles/mw.cx.highlight.less modules/ui/styles/mw.cx.ui.Infobar.less app/src/lib/mediawiki.ui/components/MWLayout/MWRow.vue minT/src/MWLanguageSelector.vue app/src/views/SXQuickTutorial.vue app/src/lib/mediawiki.ui/components/MWCard/MWCard.vue modules/entrypoints/styles/ext.cx.entrypoints.uls.relevantlanguages.less modules/ve-cx/ui/tools/ve.ui.CXResetSectionTool.less app/src/components/SXPublisher/SXPublishOptionSelector.vue app/src/components/SXSentenceSelector/TranslatedSegmentCard.vue app/src/styles/page.less app/src/lib/mediawiki.ui/components/MWSpinner/MWSpinner.vue app/src/lib/mediawiki.ui/components/MWLayout/animations.less app/src/lib/mediawiki.ui/components/MWButtonGroup/MWButtonGroup.vue app/src/components/SXEditor/SXEditorOriginalContent.vue app/src/components/SXSectionSelector/SXSectionSelectorSectionListPresent.vue app/src/lib/mediawiki.ui/components/MWIcon/MWIcon.vue modules/entrypoints/styles/ext.cx.contributions.less app/src/lib/mediawiki.ui/components/MWLayout/grid-story.less app/src/lib/mediawiki.ui/components/MWRadioGroup/MWRadioGroup.vue app/src/components/SXContentComparator/SourceVsTargetSelector.vue modules/entrypoints/styles/ext.cx.interlanguagelink.less modules/entrypoints/ext.cx.entrypoints.uls.relevantlanguages/CxUlsEntrypoint.vue modules/dashboard/styles/ext.cx.lists.common.less modules/widgets/spinner/ext.cx.spinner.less modules/widgets/feedback/styles/ext.cx.feedback.less app/src/lib/mediawiki.ui/components/MWRadioGroup/MWRadio.vue app/src/components/SXSentenceSelector/BlockTemplateAdaptationCard.vue minT/src/MwSpinner.vue modules/ve-cx/ui/styles/ve.ui.CXLinkContextItem.less modules/ui/styles/widgets/mw.cx.ui.CategoryMultiselectWidget.less modules/tools/styles/mw.cx.tools.IssueTrackingTool.less modules/entrypoints/ext.cx.entrypoints.recentedit/RecentEditEntrypointInvitation.vue modules/ui/styles/mw.cx.ui.Categories.less modules/ve-cx/ce/styles/ve.ce.CXPlaceholderNode.less modules/ui/styles/mw.cx.ui.Columns.less skin/styles/menu.less modules/widgets/progressbar/ext.cx.progressbar.less minT/src/SearchTopicPage.vue app/src/components/CXDashboard/CXDashboard.vue app/src/components/SXSectionSelector/SXSectionSelectorSectionList.vue app/src/views/SXArticleSearch.vue app/src/lib/mediawiki.ui/styles/common.less modules/ui/styles/grid/grid-responsive.less modules/entrypoints/ext.cx.entrypoints.publishingfollowup/PublishFeedback.vue modules/ui/styles/widgets/mw.cx.ui.MessageWidget.less modules/ui/styles/mw.cx.ui.ToolsColumn.less app/src/components/CXDashboard/CXFavoriteList.vue modules/widgets/translator/ext.cx.translator.less modules/source/styles/mw.cx.SourcePageSelector.less modules/widgets/callout/ext.cx.callout.less modules/entrypoints/ext.cx.entrypoints.recenttranslation/RecentTranslationEntrypointDialog.vue modules/ui/styles/mw.cx.mixins.less minT/src/SkeletonLoader.vue minT/src/ViewTranslationPageOptions.vue app/src/components/SXPublisher/SXPublisherAnimationDialog.vue app/src/views/SXPublisher.vue app/src/views/Dashboard.vue modules/dashboard/styles/mw.cx.SuggestionList.less modules/tools/styles/mw.cx.tools.SearchTool.less minT/src/SearchResultItem.vue app/src/lib/mediawiki.ui/components/MWProgressBar/MWProgressBar.vue app/src/components/SXSentenceSelector/ProposedTranslationCard.vue app/src/components/CXDashboard/SXConfirmTranslationDeletionDialog.vue modules/entrypoints/ext.cx.entrypoints.languagesearcher/LanguageSearcherCardContainer.vue app/src/components/SXSentenceSelector/TranslatedSegmentCardHeader.vue skin/styles/skin.less modules/ve-cx/ce/styles/ve.ce.CXSectionNode.less modules/entrypoints/styles/ext.cx.entrypoints.newbytranslation.mobile.less app/src/components/SXSectionSelector/SXSectionSelectorSectionListMissing.vue app/src/components/SXSectionSelector/SXSectionSelectorViewArticleItem.vue app/src/components/SXSentenceSelector/SXTranslationSelector.vue modules/ui/styles/grid/grid-settings.less app/src/components/SXSentenceSelector/ProposedTranslationActionButtons.vue modules/entrypoints/styles/ext.cx.entrypoints.newarticle.less app/src/components/SXContentComparator/SXContentComparator.vue app/src/components/SXContentComparator/SXContentComparatorHeader.vue modules/ui/styles/widgets/mw.cx.ui.TranslationIssueWidget.less app/src/components/SXPublisher/SXPublisher.vue modules/entrypoints/styles/ext.cx.entrypoints.languagesearcher.less app/src/lib/mediawiki.ui/components/MWThumbnail/MWThumbnail.vue modules/ve-cx/ui/styles/ve.ui.CXPublishSettingsDialog.less modules/ui/styles/grid/grid-core.less app/src/components/SXLoginDialog.vue --fix
--- stderr ---
modules/entrypoints/ext.cx.entrypoints.newbytranslation/NewByTranslationPopup.vue
  218:7  ✖  Expected ".cdx-thumbnail__image" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"  selector-class-pattern
  246:7  ✖  Expected ".cdx-icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"              selector-class-pattern

minT/src/ExploreLanguagesPage.vue
  284:1  ✖  Expected ".explore-languages" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"        selector-class-pattern
  293:5  ✖  Expected ".explore-languages-title" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"  selector-class-pattern
  300:5  ✖  Expected ".cdx-icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                 selector-class-pattern
  373:7  ✖  Expected ".cdx-icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                 selector-class-pattern

minT/src/ConfirmTopicPage.vue
  314:1  ✖  Expected ".confirm-topic-header" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                             selector-class-pattern
  317:3  ✖  Expected ".cdx-icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                                         selector-class-pattern
  322:1  ✖  Expected ".confirm-topic-preview" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                            selector-class-pattern
  337:9  ✖  Expected ".cdx-icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                                         selector-class-pattern
  368:7  ✖  Expected ".cdx-icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                                         selector-class-pattern
  378:1  ✖  Expected ".confirm-topic-language-selector" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                  selector-class-pattern
  381:3  ✖  Expected ".cdx-icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                                         selector-class-pattern
  386:1  ✖  Expected ".confirm-topic-go-back-link-container" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"             selector-class-pattern
  391:1  ✖  Expected ".confirm-topic-original-target-article-container" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"  selector-class-pattern
  399:5  ✖  Expected ".confirm-topic-original-target-article" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"            selector-class-pattern
  402:5  ✖  Expected ".cdx-menu-item" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                                    selector-class-pattern
  412:9  ✖  Expected ".cdx-icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                                         selector-class-pattern

minT/src/ViewTranslationPage.vue
  409:1   ✖  Expected ".translation-viewer" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                    selector-class-pattern
  428:5   ✖  Expected ".cdx-icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                              selector-class-pattern
  440:36  ✖  Expected ".firstHeading" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                          selector-class-pattern
  440:76  ✖  Expected ".section-heading" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                       selector-class-pattern
  442:37  ✖  Unexpected !important                                                                                                                               declaration-no-important
  451:6   ✖  Expected ".translation-viewer__source-page-link" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"  selector-class-pattern
  452:7   ✖  Expected ".cdx-icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                              selector-class-pattern
  468:7   ✖  Expected ".cdx-icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                              selector-class-pattern
  488:5   ✖  Expected ".cdx-icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                              selector-class-pattern
  502:15  ✖  Unexpected value "none" for property "border"                                                                                                       declaration-property-value-disallowed-list
  520:1   ✖  Expected ".infobox-skeleton-loader" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"               selector-class-pattern
  523:3   ✖  Expected ".skeleton" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                              selector-class-pattern

minT/src/MWLanguageSelector.vue
  308:5   ✖  Expected ".cdx-text-input__input" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"           selector-class-pattern
  333:3   ✖  Expected ".no-results" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                      selector-class-pattern
  333:17  ✖  Expected ".results" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                         selector-class-pattern
  340:3   ✖  Expected ".results-languages" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"               selector-class-pattern
  340:24  ✖  Expected ".results-languages--suggestions" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"  selector-class-pattern
  343:5   ✖  Expected ".language" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                        selector-class-pattern
  352:6   ✖  Expected ".few-results" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                     selector-class-pattern
  355:6   ✖  Expected ".some-results" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                    selector-class-pattern
  358:6   ✖  Expected ".many-results" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                    selector-class-pattern
  362:3   ✖  Expected ".results-languages--suggestions" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"  selector-class-pattern
  372:5   ✖  Expected ".results-languages" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"               selector-class-pattern
  373:8   ✖  Expected ".few-results" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                     selector-class-pattern
  373:26  ✖  Expected ".some-results" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                    selector-class-pattern
  373:45  ✖  Expected ".many-results" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                    selector-class-pattern
  379:5   ✖  Expected ".results-languages--suggestions" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"  selector-class-pattern
  382:5   ✖  Expected ".col-break" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                       selector-class-pattern
  387:3   ✖  Expected ".language" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                        selector-class-pattern

modules/entrypoints/ext.cx.entrypoints.uls.relevantlanguages/CxUlsEntrypoint.vue
  129:2   ✖  Expected ".row" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"     selector-class-pattern
  136:2   ✖  Expected ".col" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"     selector-class-pattern
  142:2   ✖  Expected ".shrink" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"  selector-class-pattern
  143:16  ✖  Unexpected !important                                                                                                 declaration-no-important
  144:18  ✖  Unexpected !important                                                                                                 declaration-no-important
  166:11  ✖  Unexpected value "none" for property "border"                                                                         declaration-property-value-disallowed-list
  192:12  ✖  Unexpected value "none" for property "border"                                                                         declaration-property-value-disallowed-list

modules/entrypoints/ext.cx.entrypoints.recentedit/RecentEditEntrypointInvitation.vue
  186:2   ✖  Expected ".row" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"     selector-class-pattern
  193:2   ✖  Expected ".col" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"     selector-class-pattern
  199:2   ✖  Expected ".pa-4" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"    selector-class-pattern
  203:2   ✖  Expected ".shrink" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"  selector-class-pattern
  204:16  ✖  Unexpected !important                                                                                                 declaration-no-important
  205:18  ✖  Unexpected !important                                                                                                 declaration-no-important

minT/src/SearchTopicPage.vue
  189:1  ✖  Expected ".search-topic-header" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                 selector-class-pattern
  193:3  ✖  Expected ".cdx-icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                            selector-class-pattern
  197:1  ✖  Expected ".search-topic-input" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                  selector-class-pattern
  201:1  ✖  Expected ".search-language-tabs" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                selector-class-pattern
  205:1  ✖  Expected ".search-language-result-empty-state" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"  selector-class-pattern
  210:1  ✖  Expected ".search-language-result" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"              selector-class-pattern

modules/entrypoints/ext.cx.entrypoints.publishingfollowup/PublishFeedback.vue
  182:15  ✖  Unexpected named color "white"                                                                                        color-named
  184:3   ✖  Expected ".row" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"     selector-class-pattern
  190:3   ✖  Expected ".col" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"     selector-class-pattern
  195:3   ✖  Expected ".pa-4" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"    selector-class-pattern
  198:3   ✖  Expected ".shrink" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"  selector-class-pattern
  199:18  ✖  Unexpected !important                                                                                                 declaration-no-important
  200:20  ✖  Unexpected !important                                                                                                 declaration-no-important

modules/entrypoints/ext.cx.entrypoints.recenttranslation/RecentTranslationEntrypointDialog.vue
  213:2   ✖  Expected ".row" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"               selector-class-pattern
  220:2   ✖  Expected ".col" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"               selector-class-pattern
  226:2   ✖  Expected ".shrink" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"            selector-class-pattern
  227:16  ✖  Unexpected !important                                                                                                           declaration-no-important
  228:18  ✖  Unexpected !important                                                                                                           declaration-no-important
  277:11  ✖  Unexpected value "none" for property "border"                                                                                   declaration-property-value-disallowed-list
  351:18  ✖  Expected ".cdx-button" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"        selector-class-pattern
  372:51  ✖  Expected ".cdx-button__icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"  selector-class-pattern

minT/src/ViewTranslationPageOptions.vue
  195:1  ✖  Expected ".translation-viewer__options-overlay" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"  selector-class-pattern
  222:9  ✖  Expected ".cdx-icon" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"                             selector-class-pattern

minT/src/SearchResultItem.vue
  102:5  ✖  Expected ".thumbnail-placeholder" to match pattern "(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)"  selector-class-pattern

✖ 84 problems (84 errors, 0 warnings)
--- stdout ---

--- end ---
$ ./node_modules/.bin/stylelint modules/ui/styles/mw.cx.ui.TranslationView.less modules/entrypoints/styles/ext.cx.entrypoints.mffrequentlanguages.less modules/ui/styles/widgets/mw.cx.ui.TranslationToolWidget.less app/src/components/SXContentComparator/NewSectionPlaceholder.vue modules/entrypoints/ext.cx.entrypoints.newbytranslation/NewByTranslationPopup.vue app/src/components/SXPublisher/SXPublisherCaptchaDialog.vue app/src/components/SXSentenceSelector/RetryMtCard.vue modules/ui/styles/mw.cx.ui.SourceColumn.less app/src/lib/mediawiki.ui/components/MWDivider/MWDivider.vue app/src/components/SXSentenceSelector/SXBlockTemplateStatusDialog.vue app/src/lib/mediawiki.ui/components/MWExpandableContent/MWExpandableContent.vue app/src/components/SXTranslationConfirmer/SXTranslationConfirmerArticleInformation.vue modules/ui/styles/mw.cx.common.less modules/ui/styles/widgets/mw.cx.ui.PageTitleWidget.less modules/dashboard/styles/mw.cx.TranslationList.less modules/ve-cx/ce/styles/ve.ce.CXReferenceNode.less app/src/components/SXContentComparator/SXContentComparatorContentHeader.vue app/src/components/MWLanguageSelector/MWLanguageSelector.vue app/src/lib/mediawiki.ui/components/MWSelect/MWSelect.vue app/src/components/CXDashboard/SXConfirmTranslationStartDialog.vue app/src/components/CXDashboard/CXTranslationWorkPublished.vue app/src/components/SXSectionSelector/SXSectionSelector.vue modules/ui/styles/grid/agora-grid.less modules/ui/styles/mw.cx.ui.LanguageFilter.less modules/ui/styles/mw.cx.ui.TranslationHeader.less app/src/views/SXTranslationConfirmer.vue app/src/components/CXDashboard/CXStatsPanel.vue app/src/components/CXDashboard/CXTranslationWorkDraft.vue modules/ui/styles/mw.cx.ui.Header.less app/dist/style.css app/src/lib/mediawiki.ui/components/MWLayout/MWCol.vue modules/ui/styles/mw.cx.ui.CaptchaDialog.less modules/entrypoints/styles/ext.cx.entrypoints.contributionsmenu.less app/src/components/SXContentComparator/SXContentComparatorHeaderNavigation.vue modules/ui/styles/widgets/mw.cx.ui.CategoryTagItemWidget.monobook.less modules/widgets/callout/ext.cx.callout.vector.less modules/ve-cx/ui/styles/ve.ui.CXSurface.less app/src/components/SXEditor/SXEditor.vue app/src/components/SXTranslationConfirmer/UnreviewedTranslationDialog.vue modules/ve-cx/ui/styles/ve.ui.CXDesktopContext.less modules/entrypoints/styles/ext.cx.contributions.vector.less modules/ui/styles/mw.cx.init.Translation.less app/src/components/SXArticleSearch/SXSearchArticleSuggestion.vue minT/styles/mint.less modules/ui/styles/widgets/mw.cx.ui.FeatureDiscoveryWidget.less minT/src/ExploreLanguagesPage.vue app/src/views/SXEditor.vue app/src/components/SXPublisher/SXPublisherReviewInfo.vue app/src/components/SXSentenceSelector/TranslatedSegmentCardActionButtons.vue app/src/plugins/ve/components/VisualEditor.vue minT/entrypoints/ArticleFooterEntrypointCard.vue app/src/components/SXSentenceSelector/SXConfirmBackNavigationDialog.vue app/src/components/CXDashboard/MWBottomNavigation.vue app/src/components/SXSentenceSelector/ProposedTranslationHeader.vue app/src/lib/mediawiki.ui/components/MWDialog/MWDialog.vue modules/source/styles/mw.cx.SelectedSourcePage.less app/src/components/SXTranslationConfirmer/SXTranslationConfirmerActionPanel.vue app/src/components/CXDashboard/SXSuggestionsFiltersDialog.vue app/src/components/SXSentenceSelector/SXSentenceSelectorContentHeader.vue app/src/components/CXDashboard/CXTranslationSuggestion.vue modules/ui/styles/mw.cx.ui.TargetColumn.less modules/ve-cx/ce/mixins/ve.ce.CXPendingNode.less modules/ve-cx/ui/tools/ve.ui.CXSaveMTPreferenceTool.less modules/stats/styles/ext.cx.stats.less modules/entrypoints/styles/ext.cx.entrypoints.newbytranslation.less app/src/views/SXSectionSelector.vue app/src/components/CXDashboard/CustomInfoChip.vue app/src/components/SXArticleLanguageSelector.vue app/src/lib/mediawiki.ui/components/MWButton/buttons.less app/src/components/SXSentenceSelector/SubSection.vue modules/ve-cx/ce/styles/ve.ce.CXLinkAnnotation.less modules/ui/styles/widgets/mw.cx.ui.CategoryTagItemWidget.less app/src/views/SXSentenceSelector.vue app/src/lib/mediawiki.ui/components/MWCircularProgressBar/MWCircleProgressBar.vue app/src/components/SXPublisher/SXPublisherHeader.vue modules/dashboard/styles/ext.cx.dashboard.monobook.less app/src/App.vue app/src/lib/mediawiki.ui/components/MWButton/MWButton.vue modules/dashboard/styles/ext.cx.dashboard.less app/src/lib/mediawiki.ui/components/MWMessage/MWMessage.vue app/src/components/CXDashboard/CXSuggestionList.vue app/src/components/CXDashboard/CXTranslationWork.vue minT/src/ConfirmTopicPage.vue app/src/components/SXSentenceSelector/SXSentenceSelector.vue app/src/components/CXDashboard/CXSuggestionListFilters.vue app/src/components/CXDashboard/CXTranslationList.vue modules/ve-cx/ce/styles/ve.ce.CXSentenceSegmentAnnotation.less modules/tools/styles/mw.cx.tools.InstructionsTool.less app/src/components/CXDashboard/CXHelpPanel.vue app/src/components/SXSectionSelector/SXSectionSelectorHeader.vue app/src/views/SXContentComparator.vue app/src/components/SXArticleSearch/SXArticleSearch.vue app/src/components/SXArticleSearch/SearchResultsCard.vue app/src/components/CXDashboard/SXTranslationListLanguageSelector.vue app/src/components/SXSentenceSelector/BlockTemplateStatusIndicator.vue app/src/components/SXArticleSearch/ArticleSuggestionsCard.vue modules/ve-cx/ui/styles/ve.ui.CXTranslationToolbar.less modules/ui/styles/mw.cx.variables.less app/src/lib/mediawiki.ui/components/MWInput/MWInput.vue minT/src/ViewTranslationPage.vue app/src/components/SXTranslationConfirmer/SXTranslationConfirmer.vue modules/ui/styles/widgets/mw.cx.ui.TitleOptionWidget.less app/src/components/SXContentComparator/SXContentComparatorHeaderMappedSection.vue app/src/components/SXQuickTutorial/SXQuickTutorial.vue modules/ve-cx/ce/styles/ve.ce.CXLintableNode.less modules/entrypoints/styles/ext.cx.entrypoints.recenttranslation.less app/src/components/SXEditor/EditCompleteFeedback.vue app/src/lib/mediawiki.ui/components/MWLayout/MWGrid.vue modules/ui/styles/mw.cx.highlight.less modules/ui/styles/mw.cx.ui.Infobar.less app/src/lib/mediawiki.ui/components/MWLayout/MWRow.vue minT/src/MWLanguageSelector.vue app/src/views/SXQuickTutorial.vue app/src/lib/mediawiki.ui/components/MWCard/MWCard.vue modules/entrypoints/styles/ext.cx.entrypoints.uls.relevantlanguages.less modules/ve-cx/ui/tools/ve.ui.CXResetSectionTool.less app/src/components/SXPublisher/SXPublishOptionSelector.vue app/src/components/SXSentenceSelector/TranslatedSegmentCard.vue app/src/styles/page.less app/src/lib/mediawiki.ui/components/MWSpinner/MWSpinner.vue app/src/lib/mediawiki.ui/components/MWLayout/animations.less app/src/lib/mediawiki.ui/components/MWButtonGroup/MWButtonGroup.vue app/src/components/SXEditor/SXEditorOriginalContent.vue app/src/components/SXSectionSelector/SXSectionSelectorSectionListPresent.vue app/src/lib/mediawiki.ui/components/MWIcon/MWIcon.vue modules/entrypoints/styles/ext.cx.contributions.less app/src/lib/mediawiki.ui/components/MWLayout/grid-story.less app/src/lib/mediawiki.ui/components/MWRadioGroup/MWRadioGroup.vue app/src/components/SXContentComparator/SourceVsTargetSelector.vue modules/entrypoints/styles/ext.cx.interlanguagelink.less modules/entrypoints/ext.cx.entrypoints.uls.relevantlanguages/CxUlsEntrypoint.vue modules/dashboard/styles/ext.cx.lists.common.less modules/widgets/spinner/ext.cx.spinner.less modules/widgets/feedback/styles/ext.cx.feedback.less app/src/lib/mediawiki.ui/components/MWRadioGroup/MWRadio.vue app/src/components/SXSentenceSelector/BlockTemplateAdaptationCard.vue minT/src/MwSpinner.vue modules/ve-cx/ui/styles/ve.ui.CXLinkContextItem.less modules/ui/styles/widgets/mw.cx.ui.CategoryMultiselectWidget.less modules/tools/styles/mw.cx.tools.IssueTrackingTool.less modules/entrypoints/ext.cx.entrypoints.recentedit/RecentEditEntrypointInvitation.vue modules/ui/styles/mw.cx.ui.Categories.less modules/ve-cx/ce/styles/ve.ce.CXPlaceholderNode.less modules/ui/styles/mw.cx.ui.Columns.less skin/styles/menu.less modules/widgets/progressbar/ext.cx.progressbar.less minT/src/SearchTopicPage.vue app/src/components/CXDashboard/CXDashboard.vue app/src/components/SXSectionSelector/SXSectionSelectorSectionList.vue app/src/views/SXArticleSearch.vue app/src/lib/mediawiki.ui/styles/common.less modules/ui/styles/grid/grid-responsive.less modules/entrypoints/ext.cx.entrypoints.publishingfollowup/PublishFeedback.vue modules/ui/styles/widgets/mw.cx.ui.MessageWidget.less modules/ui/styles/mw.cx.ui.ToolsColumn.less app/src/components/CXDashboard/CXFavoriteList.vue modules/widgets/translator/ext.cx.translator.less modules/source/styles/mw.cx.SourcePageSelector.less modules/widgets/callout/ext.cx.callout.less modules/entrypoints/ext.cx.entrypoints.recenttranslation/RecentTranslationEntrypointDialog.vue modules/ui/styles/mw.cx.mixins.less minT/src/SkeletonLoader.vue minT/src/ViewTranslationPageOptions.vue app/src/components/SXPublisher/SXPublisherAnimationDialog.vue app/src/views/SXPublisher.vue app/src/views/Dashboard.vue modules/dashboard/styles/mw.cx.SuggestionList.less modules/tools/styles/mw.cx.tools.SearchTool.less minT/src/SearchResultItem.vue app/src/lib/mediawiki.ui/components/MWProgressBar/MWProgressBar.vue app/src/components/SXSentenceSelector/ProposedTranslationCard.vue app/src/components/CXDashboard/SXConfirmTranslationDeletionDialog.vue modules/entrypoints/ext.cx.entrypoints.languagesearcher/LanguageSearcherCardContainer.vue app/src/components/SXSentenceSelector/TranslatedSegmentCardHeader.vue skin/styles/skin.less modules/ve-cx/ce/styles/ve.ce.CXSectionNode.less modules/entrypoints/styles/ext.cx.entrypoints.newbytranslation.mobile.less app/src/components/SXSectionSelector/SXSectionSelectorSectionListMissing.vue app/src/components/SXSectionSelector/SXSectionSelectorViewArticleItem.vue app/src/components/SXSentenceSelector/SXTranslationSelector.vue modules/ui/styles/grid/grid-settings.less app/src/components/SXSentenceSelector/ProposedTranslationActionButtons.vue modules/entrypoints/styles/ext.cx.entrypoints.newarticle.less app/src/components/SXContentComparator/SXContentComparator.vue app/src/components/SXContentComparator/SXContentComparatorHeader.vue modules/ui/styles/widgets/mw.cx.ui.TranslationIssueWidget.less app/src/components/SXPublisher/SXPublisher.vue modules/entrypoints/styles/ext.cx.entrypoints.languagesearcher.less app/src/lib/mediawiki.ui/components/MWThumbnail/MWThumbnail.vue modules/ve-cx/ui/styles/ve.ui.CXPublishSettingsDialog.less modules/ui/styles/grid/grid-core.less app/src/components/SXLoginDialog.vue -f json
--- stdout ---
[{"source":"/src/repo/modules/ui/styles/mw.cx.ui.TranslationView.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/styles/ext.cx.entrypoints.mffrequentlanguages.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/widgets/mw.cx.ui.TranslationToolWidget.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/ext.cx.entrypoints.newbytranslation/NewByTranslationPopup.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":true,"warnings":[{"line":239,"column":22,"endLine":239,"endColumn":23,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 2 tabs (@stylistic/indentation)"},{"line":218,"column":4,"endLine":218,"endColumn":25,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-thumbnail__image\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":247,"column":4,"endLine":247,"endColumn":13,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"}]},{"source":"/src/repo/modules/ui/styles/mw.cx.ui.SourceColumn.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/mw.cx.common.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/widgets/mw.cx.ui.PageTitleWidget.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/dashboard/styles/mw.cx.TranslationList.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ve-cx/ce/styles/ve.ce.CXReferenceNode.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/grid/agora-grid.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/mw.cx.ui.LanguageFilter.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/mw.cx.ui.TranslationHeader.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/mw.cx.ui.Header.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/mw.cx.ui.CaptchaDialog.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/styles/ext.cx.entrypoints.contributionsmenu.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/widgets/mw.cx.ui.CategoryTagItemWidget.monobook.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/widgets/callout/ext.cx.callout.vector.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ve-cx/ui/styles/ve.ui.CXSurface.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ve-cx/ui/styles/ve.ui.CXDesktopContext.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/styles/ext.cx.contributions.vector.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/mw.cx.init.Translation.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/minT/styles/mint.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/widgets/mw.cx.ui.FeatureDiscoveryWidget.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/minT/src/ExploreLanguagesPage.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":true,"warnings":[{"line":284,"column":1,"endLine":284,"endColumn":19,"rule":"selector-class-pattern","severity":"error","text":"Expected \".explore-languages\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":293,"column":3,"endLine":293,"endColumn":27,"rule":"selector-class-pattern","severity":"error","text":"Expected \".explore-languages-title\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":300,"column":3,"endLine":300,"endColumn":12,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":375,"column":4,"endLine":375,"endColumn":13,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"}]},{"source":"/src/repo/minT/entrypoints/ArticleFooterEntrypointCard.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/source/styles/mw.cx.SelectedSourcePage.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/mw.cx.ui.TargetColumn.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ve-cx/ce/mixins/ve.ce.CXPendingNode.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ve-cx/ui/tools/ve.ui.CXSaveMTPreferenceTool.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/stats/styles/ext.cx.stats.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/styles/ext.cx.entrypoints.newbytranslation.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ve-cx/ce/styles/ve.ce.CXLinkAnnotation.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/widgets/mw.cx.ui.CategoryTagItemWidget.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/dashboard/styles/ext.cx.dashboard.monobook.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/dashboard/styles/ext.cx.dashboard.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/minT/src/ConfirmTopicPage.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":true,"warnings":[{"line":314,"column":1,"endLine":314,"endColumn":22,"rule":"selector-class-pattern","severity":"error","text":"Expected \".confirm-topic-header\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":318,"column":2,"endLine":318,"endColumn":11,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":323,"column":1,"endLine":323,"endColumn":23,"rule":"selector-class-pattern","severity":"error","text":"Expected \".confirm-topic-preview\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":339,"column":5,"endLine":339,"endColumn":14,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":374,"column":4,"endLine":374,"endColumn":13,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":384,"column":1,"endLine":384,"endColumn":33,"rule":"selector-class-pattern","severity":"error","text":"Expected \".confirm-topic-language-selector\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":388,"column":2,"endLine":388,"endColumn":11,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":393,"column":1,"endLine":393,"endColumn":38,"rule":"selector-class-pattern","severity":"error","text":"Expected \".confirm-topic-go-back-link-container\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":398,"column":1,"endLine":398,"endColumn":49,"rule":"selector-class-pattern","severity":"error","text":"Expected \".confirm-topic-original-target-article-container\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":408,"column":4,"endLine":408,"endColumn":42,"rule":"selector-class-pattern","severity":"error","text":"Expected \".confirm-topic-original-target-article\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":412,"column":3,"endLine":412,"endColumn":17,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-menu-item\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":423,"column":6,"endLine":423,"endColumn":15,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"}]},{"source":"/src/repo/modules/ve-cx/ce/styles/ve.ce.CXSentenceSegmentAnnotation.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/tools/styles/mw.cx.tools.InstructionsTool.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ve-cx/ui/styles/ve.ui.CXTranslationToolbar.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/mw.cx.variables.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/minT/src/ViewTranslationPage.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":true,"warnings":[{"line":471,"column":16,"endLine":471,"endColumn":17,"rule":"@stylistic/indentation","severity":"error","text":"Expected indentation of 3 tabs (@stylistic/indentation)"},{"line":442,"column":35,"endLine":442,"endColumn":45,"rule":"declaration-no-important","severity":"error","text":"Unexpected !important (declaration-no-important)"},{"line":509,"column":12,"endLine":509,"endColumn":16,"rule":"declaration-property-value-disallowed-list","severity":"error","text":"Unexpected value \"none\" for property \"border\" (declaration-property-value-disallowed-list)"},{"line":409,"column":1,"endLine":409,"endColumn":20,"rule":"selector-class-pattern","severity":"error","text":"Expected \".translation-viewer\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":428,"column":3,"endLine":428,"endColumn":12,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":440,"column":35,"endLine":440,"endColumn":48,"rule":"selector-class-pattern","severity":"error","text":"Expected \".firstHeading\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":440,"column":75,"endLine":440,"endColumn":91,"rule":"selector-class-pattern","severity":"error","text":"Expected \".section-heading\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":452,"column":4,"endLine":452,"endColumn":41,"rule":"selector-class-pattern","severity":"error","text":"Expected \".translation-viewer__source-page-link\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":453,"column":4,"endLine":453,"endColumn":13,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":471,"column":4,"endLine":471,"endColumn":13,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":493,"column":3,"endLine":493,"endColumn":12,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":529,"column":1,"endLine":529,"endColumn":25,"rule":"selector-class-pattern","severity":"error","text":"Expected \".infobox-skeleton-loader\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":532,"column":2,"endLine":532,"endColumn":11,"rule":"selector-class-pattern","severity":"error","text":"Expected \".skeleton\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"}]},{"source":"/src/repo/modules/ui/styles/widgets/mw.cx.ui.TitleOptionWidget.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ve-cx/ce/styles/ve.ce.CXLintableNode.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/styles/ext.cx.entrypoints.recenttranslation.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/mw.cx.highlight.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/mw.cx.ui.Infobar.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/minT/src/MWLanguageSelector.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":true,"warnings":[{"line":311,"column":3,"endLine":311,"endColumn":25,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-text-input__input\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":338,"column":2,"endLine":338,"endColumn":13,"rule":"selector-class-pattern","severity":"error","text":"Expected \".no-results\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":338,"column":16,"endLine":338,"endColumn":24,"rule":"selector-class-pattern","severity":"error","text":"Expected \".results\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":345,"column":2,"endLine":345,"endColumn":20,"rule":"selector-class-pattern","severity":"error","text":"Expected \".results-languages\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":345,"column":23,"endLine":345,"endColumn":54,"rule":"selector-class-pattern","severity":"error","text":"Expected \".results-languages--suggestions\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":349,"column":3,"endLine":349,"endColumn":12,"rule":"selector-class-pattern","severity":"error","text":"Expected \".language\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":360,"column":4,"endLine":360,"endColumn":16,"rule":"selector-class-pattern","severity":"error","text":"Expected \".few-results\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":364,"column":4,"endLine":364,"endColumn":17,"rule":"selector-class-pattern","severity":"error","text":"Expected \".some-results\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":368,"column":4,"endLine":368,"endColumn":17,"rule":"selector-class-pattern","severity":"error","text":"Expected \".many-results\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":373,"column":2,"endLine":373,"endColumn":33,"rule":"selector-class-pattern","severity":"error","text":"Expected \".results-languages--suggestions\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":383,"column":3,"endLine":383,"endColumn":21,"rule":"selector-class-pattern","severity":"error","text":"Expected \".results-languages\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":384,"column":5,"endLine":384,"endColumn":17,"rule":"selector-class-pattern","severity":"error","text":"Expected \".few-results\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":384,"column":23,"endLine":384,"endColumn":36,"rule":"selector-class-pattern","severity":"error","text":"Expected \".some-results\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":384,"column":42,"endLine":384,"endColumn":55,"rule":"selector-class-pattern","severity":"error","text":"Expected \".many-results\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":391,"column":3,"endLine":391,"endColumn":34,"rule":"selector-class-pattern","severity":"error","text":"Expected \".results-languages--suggestions\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":395,"column":3,"endLine":395,"endColumn":13,"rule":"selector-class-pattern","severity":"error","text":"Expected \".col-break\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":400,"column":2,"endLine":400,"endColumn":11,"rule":"selector-class-pattern","severity":"error","text":"Expected \".language\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"}]},{"source":"/src/repo/modules/entrypoints/styles/ext.cx.entrypoints.uls.relevantlanguages.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ve-cx/ui/tools/ve.ui.CXResetSectionTool.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/styles/ext.cx.contributions.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/styles/ext.cx.interlanguagelink.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/ext.cx.entrypoints.uls.relevantlanguages/CxUlsEntrypoint.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":true,"warnings":[{"line":143,"column":16,"endLine":143,"endColumn":26,"rule":"declaration-no-important","severity":"error","text":"Unexpected !important (declaration-no-important)"},{"line":144,"column":18,"endLine":144,"endColumn":28,"rule":"declaration-no-important","severity":"error","text":"Unexpected !important (declaration-no-important)"},{"line":166,"column":11,"endLine":166,"endColumn":15,"rule":"declaration-property-value-disallowed-list","severity":"error","text":"Unexpected value \"none\" for property \"border\" (declaration-property-value-disallowed-list)"},{"line":192,"column":12,"endLine":192,"endColumn":16,"rule":"declaration-property-value-disallowed-list","severity":"error","text":"Unexpected value \"none\" for property \"border\" (declaration-property-value-disallowed-list)"},{"line":129,"column":2,"endLine":129,"endColumn":6,"rule":"selector-class-pattern","severity":"error","text":"Expected \".row\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":136,"column":2,"endLine":136,"endColumn":6,"rule":"selector-class-pattern","severity":"error","text":"Expected \".col\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":142,"column":2,"endLine":142,"endColumn":9,"rule":"selector-class-pattern","severity":"error","text":"Expected \".shrink\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"}]},{"source":"/src/repo/modules/dashboard/styles/ext.cx.lists.common.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/widgets/spinner/ext.cx.spinner.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/widgets/feedback/styles/ext.cx.feedback.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/minT/src/MwSpinner.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ve-cx/ui/styles/ve.ui.CXLinkContextItem.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/widgets/mw.cx.ui.CategoryMultiselectWidget.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/tools/styles/mw.cx.tools.IssueTrackingTool.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/ext.cx.entrypoints.recentedit/RecentEditEntrypointInvitation.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":true,"warnings":[{"line":204,"column":16,"endLine":204,"endColumn":26,"rule":"declaration-no-important","severity":"error","text":"Unexpected !important (declaration-no-important)"},{"line":205,"column":18,"endLine":205,"endColumn":28,"rule":"declaration-no-important","severity":"error","text":"Unexpected !important (declaration-no-important)"},{"line":186,"column":2,"endLine":186,"endColumn":6,"rule":"selector-class-pattern","severity":"error","text":"Expected \".row\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":193,"column":2,"endLine":193,"endColumn":6,"rule":"selector-class-pattern","severity":"error","text":"Expected \".col\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":199,"column":2,"endLine":199,"endColumn":7,"rule":"selector-class-pattern","severity":"error","text":"Expected \".pa-4\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":203,"column":2,"endLine":203,"endColumn":9,"rule":"selector-class-pattern","severity":"error","text":"Expected \".shrink\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"}]},{"source":"/src/repo/modules/ui/styles/mw.cx.ui.Categories.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ve-cx/ce/styles/ve.ce.CXPlaceholderNode.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/mw.cx.ui.Columns.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/skin/styles/menu.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/widgets/progressbar/ext.cx.progressbar.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/minT/src/SearchTopicPage.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":true,"warnings":[{"line":189,"column":1,"endLine":189,"endColumn":21,"rule":"selector-class-pattern","severity":"error","text":"Expected \".search-topic-header\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":194,"column":2,"endLine":194,"endColumn":11,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":199,"column":1,"endLine":199,"endColumn":20,"rule":"selector-class-pattern","severity":"error","text":"Expected \".search-topic-input\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":203,"column":1,"endLine":203,"endColumn":22,"rule":"selector-class-pattern","severity":"error","text":"Expected \".search-language-tabs\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":207,"column":1,"endLine":207,"endColumn":36,"rule":"selector-class-pattern","severity":"error","text":"Expected \".search-language-result-empty-state\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":212,"column":1,"endLine":212,"endColumn":24,"rule":"selector-class-pattern","severity":"error","text":"Expected \".search-language-result\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"}]},{"source":"/src/repo/modules/ui/styles/grid/grid-responsive.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/ext.cx.entrypoints.publishingfollowup/PublishFeedback.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":true,"warnings":[{"line":182,"column":14,"endLine":182,"endColumn":19,"rule":"color-named","severity":"error","text":"Unexpected named color \"white\" (color-named)"},{"line":203,"column":16,"endLine":203,"endColumn":26,"rule":"declaration-no-important","severity":"error","text":"Unexpected !important (declaration-no-important)"},{"line":204,"column":18,"endLine":204,"endColumn":28,"rule":"declaration-no-important","severity":"error","text":"Unexpected !important (declaration-no-important)"},{"line":185,"column":2,"endLine":185,"endColumn":6,"rule":"selector-class-pattern","severity":"error","text":"Expected \".row\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":192,"column":2,"endLine":192,"endColumn":6,"rule":"selector-class-pattern","severity":"error","text":"Expected \".col\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":198,"column":2,"endLine":198,"endColumn":7,"rule":"selector-class-pattern","severity":"error","text":"Expected \".pa-4\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":202,"column":2,"endLine":202,"endColumn":9,"rule":"selector-class-pattern","severity":"error","text":"Expected \".shrink\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"}]},{"source":"/src/repo/modules/ui/styles/widgets/mw.cx.ui.MessageWidget.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/mw.cx.ui.ToolsColumn.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/widgets/translator/ext.cx.translator.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/source/styles/mw.cx.SourcePageSelector.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/widgets/callout/ext.cx.callout.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/ext.cx.entrypoints.recenttranslation/RecentTranslationEntrypointDialog.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":true,"warnings":[{"line":227,"column":16,"endLine":227,"endColumn":26,"rule":"declaration-no-important","severity":"error","text":"Unexpected !important (declaration-no-important)"},{"line":228,"column":18,"endLine":228,"endColumn":28,"rule":"declaration-no-important","severity":"error","text":"Unexpected !important (declaration-no-important)"},{"line":277,"column":11,"endLine":277,"endColumn":15,"rule":"declaration-property-value-disallowed-list","severity":"error","text":"Unexpected value \"none\" for property \"border\" (declaration-property-value-disallowed-list)"},{"line":213,"column":2,"endLine":213,"endColumn":6,"rule":"selector-class-pattern","severity":"error","text":"Expected \".row\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":220,"column":2,"endLine":220,"endColumn":6,"rule":"selector-class-pattern","severity":"error","text":"Expected \".col\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":226,"column":2,"endLine":226,"endColumn":9,"rule":"selector-class-pattern","severity":"error","text":"Expected \".shrink\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":351,"column":18,"endLine":351,"endColumn":29,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-button\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":372,"column":51,"endLine":372,"endColumn":68,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-button__icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"}]},{"source":"/src/repo/modules/ui/styles/mw.cx.mixins.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/minT/src/SkeletonLoader.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/minT/src/ViewTranslationPageOptions.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":true,"warnings":[{"line":196,"column":1,"endLine":196,"endColumn":37,"rule":"selector-class-pattern","severity":"error","text":"Expected \".translation-viewer__options-overlay\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"},{"line":224,"column":4,"endLine":224,"endColumn":13,"rule":"selector-class-pattern","severity":"error","text":"Expected \".cdx-icon\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"}]},{"source":"/src/repo/modules/dashboard/styles/mw.cx.SuggestionList.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/tools/styles/mw.cx.tools.SearchTool.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/minT/src/SearchResultItem.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":true,"warnings":[{"line":103,"column":3,"endLine":103,"endColumn":25,"rule":"selector-class-pattern","severity":"error","text":"Expected \".thumbnail-placeholder\" to match pattern \"(^(mw|oo-ui|cx|sx|mint|ve|skin|uls|client|card)-|printfooter|card|card__|new$)\" (selector-class-pattern)"}]},{"source":"/src/repo/modules/entrypoints/ext.cx.entrypoints.languagesearcher/LanguageSearcherCardContainer.vue","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/skin/styles/skin.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ve-cx/ce/styles/ve.ce.CXSectionNode.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/styles/ext.cx.entrypoints.newbytranslation.mobile.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/grid/grid-settings.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/styles/ext.cx.entrypoints.newarticle.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/widgets/mw.cx.ui.TranslationIssueWidget.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/entrypoints/styles/ext.cx.entrypoints.languagesearcher.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ve-cx/ui/styles/ve.ui.CXPublishSettingsDialog.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]},{"source":"/src/repo/modules/ui/styles/grid/grid-core.less","deprecations":[],"invalidOptionWarnings":[],"parseErrors":[],"errored":false,"warnings":[]}]
--- end ---
$ /usr/bin/npm ci
--- stderr ---
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
--- stdout ---

added 1062 packages, and audited 1063 packages in 27s

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

19 vulnerabilities (7 moderate, 12 high)

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

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

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

Run `npm audit` for details.

--- end ---
$ /usr/bin/npm test
--- stderr ---
minT/styles/mint.less
   3:1  ✖  Needless disable for "selector-class-pattern"  --report-needless-disables
   5:2  ✖  Needless disable for "selector-class-pattern"  --report-needless-disables
  10:2  ✖  Needless disable for "selector-class-pattern"  --report-needless-disables

modules/dashboard/styles/mw.cx.SuggestionList.less
   70:30  ✖  Needless disable for "declaration-no-important"  --report-needless-disables
   74:38  ✖  Needless disable for "declaration-no-important"  --report-needless-disables
  191:31  ✖  Needless disable for "declaration-no-important"  --report-needless-disables
  194:26  ✖  Needless disable for "declaration-no-important"  --report-needless-disables

modules/entrypoints/styles/ext.cx.entrypoints.contributionsmenu.less
  1:1  ✖  Needless disable for "selector-class-pattern"  --report-needless-disables

modules/entrypoints/styles/ext.cx.interlanguagelink.less
   5:3  ✖  Needless disable for "declaration-no-important"  --report-needless-disables
  29:4  ✖  Needless disable for "declaration-no-important"  --report-needless-disables

modules/source/styles/mw.cx.SourcePageSelector.less
  88:31  ✖  Needless disable for "all"  --report-needless-disables

modules/ui/styles/mw.cx.mixins.less
  49:1  ✖  Needless disable for "selector-class-pattern"  --report-needless-disables

modules/ui/styles/mw.cx.ui.LanguageFilter.less
  37:25  ✖  Needless disable for "declaration-no-important"  --report-needless-disables
  46:31  ✖  Needless disable for "declaration-no-important"  --report-needless-disables
  58:30  ✖  Needless disable for "declaration-no-important"  --report-needless-disables

modules/ui/styles/mw.cx.ui.TranslationHeader.less
  31:25  ✖  Needless disable for "declaration-no-important"  --report-needless-disables

modules/ui/styles/mw.cx.ui.TranslationView.less
  90:31  ✖  Needless disable for "declaration-no-important"  --report-needless-disables
  91:38  ✖  Needless disable for "declaration-no-important"  --report-needless-disables

modules/ui/styles/widgets/mw.cx.ui.CategoryTagItemWidget.less
   6:31  ✖  Needless disable for "declaration-no-important"  --report-needless-disables
  10:31  ✖  Needless disable for "declaration-no-important"  --report-needless-disables
  15:40  ✖  Needless disable for "declaration-no-important"  --report-needless-disables
  19:34  ✖  Needless disable for "declaration-no-important"  --report-needless-disables

modules/ui/styles/widgets/mw.cx.ui.FeatureDiscoveryWidget.less
  14:4  ✖  Needless disable for "declaration-no-important"  --report-needless-disables

✖ 23 problems (23 errors, 0 warnings)
--- stdout ---

> test
> npm run test:cx2 && npm run test:cx3


> test:cx2
> npm -s run lint

Checked 1 message directory.

/src/repo/minT/src/SearchTopicPage.vue
  157:1  warning  The type 'PageSearchResult' is undefined  jsdoc/no-undefined-types

/src/repo/minT/src/useEventLogging.js
  12:1  warning  This line has a length of 208. Maximum allowed is 100  max-len

/src/repo/minT/src/useUrlHelper.js
  20:1  warning  The type 'PageSearchResult' is undefined  jsdoc/no-undefined-types

✖ 3 problems (0 errors, 3 warnings)


--- end ---
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 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 2.

composer dependencies

Dependencies
Development dependencies

npm dependencies

Development dependencies

Logs

Source code is licensed under the AGPL.