$ date
--- stdout ---
Mon Mar 31 06:19:07 UTC 2025
--- end ---
$ git clone file:///srv/git/mediawiki-extensions-TEI.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 ---
8318e843e5d6f2f148e01eb3ec05cdcf74811dfa refs/heads/master
--- end ---
$ /usr/bin/npm audit --json
--- stdout ---
{
"auditReportVersion": 2,
"vulnerabilities": {},
"metadata": {
"vulnerabilities": {
"info": 0,
"low": 0,
"moderate": 0,
"high": 0,
"critical": 0,
"total": 0
},
"dependencies": {
"prod": 1,
"dev": 437,
"optional": 0,
"peer": 1,
"peerOptional": 0,
"total": 437
}
}
}
--- end ---
$ /usr/bin/composer install
--- stderr ---
No composer.lock file present. Updating dependencies to latest instead of installing from lock file. See https://getcomposer.org/install for more information.
Loading composer repositories with package information
Updating dependencies
Lock file operations: 39 installs, 0 updates, 0 removals
- Locking composer/installers (v1.12.0)
- Locking composer/pcre (3.3.2)
- Locking composer/semver (3.4.3)
- Locking composer/spdx-licenses (1.5.8)
- Locking composer/xdebug-handler (3.0.5)
- Locking dealerdirect/phpcodesniffer-composer-installer (v1.0.0)
- Locking doctrine/deprecations (1.1.4)
- Locking felixfbecker/advanced-json-rpc (v3.2.1)
- Locking mediawiki/mediawiki-codesniffer (v46.0.0)
- Locking mediawiki/mediawiki-phan-config (0.15.1)
- 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.1.0)
- Locking psr/container (2.0.2)
- Locking psr/log (3.0.2)
- Locking sabre/event (5.1.7)
- Locking squizlabs/php_codesniffer (3.11.3)
- Locking symfony/console (v7.2.5)
- Locking symfony/deprecation-contracts (v3.5.1)
- Locking symfony/polyfill-ctype (v1.31.0)
- Locking symfony/polyfill-intl-grapheme (v1.31.0)
- Locking symfony/polyfill-intl-normalizer (v1.31.0)
- Locking symfony/polyfill-mbstring (v1.31.0)
- Locking symfony/polyfill-php80 (v1.31.0)
- Locking symfony/service-contracts (v3.5.1)
- Locking symfony/string (v7.2.0)
- Locking tysonandre/var_representation_polyfill (0.1.3)
- Locking webmozart/assert (1.11.0)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 39 installs, 0 updates, 0 removals
0 [>---------------------------] 0 [->--------------------------]
- Installing composer/installers (v1.12.0): Extracting archive
- Installing squizlabs/php_codesniffer (3.11.3): Extracting archive
- Installing dealerdirect/phpcodesniffer-composer-installer (v1.0.0): Extracting archive
- Installing composer/pcre (3.3.2): Extracting archive
- Installing symfony/polyfill-php80 (v1.31.0): Extracting archive
- Installing phpcsstandards/phpcsutils (1.0.12): Extracting archive
- Installing phpcsstandards/phpcsextra (1.2.1): Extracting archive
- Installing symfony/polyfill-mbstring (v1.31.0): Extracting archive
- Installing composer/spdx-licenses (1.5.8): Extracting archive
- Installing composer/semver (3.4.3): Extracting archive
- Installing mediawiki/mediawiki-codesniffer (v46.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.5): 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.1.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.1): Extracting archive
- Installing mediawiki/minus-x (1.1.3): Extracting archive
- Installing php-parallel-lint/php-console-color (v1.0.1): Extracting archive
- Installing php-parallel-lint/php-console-highlighter (v1.0.0): Extracting archive
- Installing php-parallel-lint/php-parallel-lint (v1.4.0): Extracting archive
0/36 [>---------------------------] 0%
20/36 [===============>------------] 55%
30/36 [=======================>----] 83%
36/36 [============================] 100%
1 package suggestions were added by new dependencies, use `composer suggest` to see details.
Generating autoload files
17 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
--- stdout ---
PHP CodeSniffer Config installed_paths set to ../../mediawiki/mediawiki-codesniffer,../../phpcsstandards/phpcsextra,../../phpcsstandards/phpcsutils
--- end ---
Upgrading n:eslint-config-wikimedia from 0.28.2 -> 0.29.1
$ /usr/bin/npm install
--- stdout ---
added 437 packages, and audited 438 packages in 5s
89 packages are looking for funding
run `npm fund` for details
found 0 vulnerabilities
--- end ---
$ package-lock-lint package-lock.json
--- stdout ---
Checking package-lock.json
--- end ---
$ /usr/bin/npm install grunt-eslint@24.3.0 --save-exact
--- stdout ---
up to date, audited 438 packages in 1s
89 packages are looking for funding
run `npm fund` for details
found 0 vulnerabilities
--- end ---
$ package-lock-lint package-lock.json
--- stdout ---
Checking package-lock.json
--- end ---
$ ./node_modules/.bin/eslint . --fix
--- stdout ---
/src/repo/modules/edit/Editor.js
151:9 error Prefer .then to .done no-jquery/no-done-fail
✖ 1 problem (1 error, 0 warnings)
--- end ---
$ ./node_modules/.bin/eslint . -f json
--- stdout ---
[{"filePath":"/src/repo/.eslintrc.json","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"arrow-parens","replacedBy":[]},{"ruleId":"arrow-spacing","replacedBy":[]},{"ruleId":"lines-between-class-members","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"template-curly-spacing","replacedBy":[]},{"ruleId":"implicit-arrow-linebreak","replacedBy":[]},{"ruleId":"indent","replacedBy":[]},{"ruleId":"comma-dangle","replacedBy":[]},{"ruleId":"no-extra-parens","replacedBy":[]},{"ruleId":"quotes","replacedBy":[]},{"ruleId":"quote-props","replacedBy":[]},{"ruleId":"array-bracket-spacing","replacedBy":[]},{"ruleId":"block-spacing","replacedBy":[]},{"ruleId":"brace-style","replacedBy":[]},{"ruleId":"comma-spacing","replacedBy":[]},{"ruleId":"comma-style","replacedBy":[]},{"ruleId":"computed-property-spacing","replacedBy":[]},{"ruleId":"dot-location","replacedBy":[]},{"ruleId":"eol-last","replacedBy":[]},{"ruleId":"func-call-spacing","replacedBy":[]},{"ruleId":"key-spacing","replacedBy":[]},{"ruleId":"keyword-spacing","replacedBy":[]},{"ruleId":"linebreak-style","replacedBy":[]},{"ruleId":"max-statements-per-line","replacedBy":[]},{"ruleId":"new-parens","replacedBy":[]},{"ruleId":"no-floating-decimal","replacedBy":[]},{"ruleId":"no-multi-spaces","replacedBy":[]},{"ruleId":"no-multiple-empty-lines","replacedBy":[]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"no-tabs","replacedBy":[]},{"ruleId":"no-trailing-spaces","replacedBy":[]},{"ruleId":"no-whitespace-before-property","replacedBy":[]},{"ruleId":"object-curly-spacing","replacedBy":[]},{"ruleId":"operator-linebreak","replacedBy":[]},{"ruleId":"semi","replacedBy":[]},{"ruleId":"semi-spacing","replacedBy":[]},{"ruleId":"semi-style","replacedBy":[]},{"ruleId":"space-before-blocks","replacedBy":[]},{"ruleId":"space-before-function-paren","replacedBy":[]},{"ruleId":"space-in-parens","replacedBy":[]},{"ruleId":"space-infix-ops","replacedBy":[]},{"ruleId":"space-unary-ops","replacedBy":[]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"switch-colon-spacing","replacedBy":[]},{"ruleId":"wrap-iife","replacedBy":[]},{"ruleId":"no-extra-semi","replacedBy":[]},{"ruleId":"no-mixed-spaces-and-tabs","replacedBy":[]}]},{"filePath":"/src/repo/.stylelintrc.json","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"arrow-parens","replacedBy":[]},{"ruleId":"arrow-spacing","replacedBy":[]},{"ruleId":"lines-between-class-members","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"template-curly-spacing","replacedBy":[]},{"ruleId":"implicit-arrow-linebreak","replacedBy":[]},{"ruleId":"indent","replacedBy":[]},{"ruleId":"comma-dangle","replacedBy":[]},{"ruleId":"no-extra-parens","replacedBy":[]},{"ruleId":"quotes","replacedBy":[]},{"ruleId":"quote-props","replacedBy":[]},{"ruleId":"array-bracket-spacing","replacedBy":[]},{"ruleId":"block-spacing","replacedBy":[]},{"ruleId":"brace-style","replacedBy":[]},{"ruleId":"comma-spacing","replacedBy":[]},{"ruleId":"comma-style","replacedBy":[]},{"ruleId":"computed-property-spacing","replacedBy":[]},{"ruleId":"dot-location","replacedBy":[]},{"ruleId":"eol-last","replacedBy":[]},{"ruleId":"func-call-spacing","replacedBy":[]},{"ruleId":"key-spacing","replacedBy":[]},{"ruleId":"keyword-spacing","replacedBy":[]},{"ruleId":"linebreak-style","replacedBy":[]},{"ruleId":"max-statements-per-line","replacedBy":[]},{"ruleId":"new-parens","replacedBy":[]},{"ruleId":"no-floating-decimal","replacedBy":[]},{"ruleId":"no-multi-spaces","replacedBy":[]},{"ruleId":"no-multiple-empty-lines","replacedBy":[]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"no-tabs","replacedBy":[]},{"ruleId":"no-trailing-spaces","replacedBy":[]},{"ruleId":"no-whitespace-before-property","replacedBy":[]},{"ruleId":"object-curly-spacing","replacedBy":[]},{"ruleId":"operator-linebreak","replacedBy":[]},{"ruleId":"semi","replacedBy":[]},{"ruleId":"semi-spacing","replacedBy":[]},{"ruleId":"semi-style","replacedBy":[]},{"ruleId":"space-before-blocks","replacedBy":[]},{"ruleId":"space-before-function-paren","replacedBy":[]},{"ruleId":"space-in-parens","replacedBy":[]},{"ruleId":"space-infix-ops","replacedBy":[]},{"ruleId":"space-unary-ops","replacedBy":[]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"switch-colon-spacing","replacedBy":[]},{"ruleId":"wrap-iife","replacedBy":[]},{"ruleId":"no-extra-semi","replacedBy":[]},{"ruleId":"no-mixed-spaces-and-tabs","replacedBy":[]}]},{"filePath":"/src/repo/Gruntfile.js","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"arrow-parens","replacedBy":[]},{"ruleId":"arrow-spacing","replacedBy":[]},{"ruleId":"lines-between-class-members","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"template-curly-spacing","replacedBy":[]},{"ruleId":"implicit-arrow-linebreak","replacedBy":[]},{"ruleId":"array-bracket-spacing","replacedBy":[]},{"ruleId":"block-spacing","replacedBy":[]},{"ruleId":"brace-style","replacedBy":[]},{"ruleId":"comma-dangle","replacedBy":[]},{"ruleId":"comma-spacing","replacedBy":[]},{"ruleId":"comma-style","replacedBy":[]},{"ruleId":"computed-property-spacing","replacedBy":[]},{"ruleId":"dot-location","replacedBy":[]},{"ruleId":"eol-last","replacedBy":[]},{"ruleId":"func-call-spacing","replacedBy":[]},{"ruleId":"indent","replacedBy":[]},{"ruleId":"key-spacing","replacedBy":[]},{"ruleId":"keyword-spacing","replacedBy":[]},{"ruleId":"linebreak-style","replacedBy":[]},{"ruleId":"max-len","replacedBy":[]},{"ruleId":"max-statements-per-line","replacedBy":[]},{"ruleId":"new-parens","replacedBy":[]},{"ruleId":"no-floating-decimal","replacedBy":[]},{"ruleId":"no-multi-spaces","replacedBy":[]},{"ruleId":"no-multiple-empty-lines","replacedBy":[]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"no-tabs","replacedBy":[]},{"ruleId":"no-trailing-spaces","replacedBy":[]},{"ruleId":"no-whitespace-before-property","replacedBy":[]},{"ruleId":"object-curly-spacing","replacedBy":[]},{"ruleId":"operator-linebreak","replacedBy":[]},{"ruleId":"quote-props","replacedBy":[]},{"ruleId":"quotes","replacedBy":[]},{"ruleId":"semi","replacedBy":[]},{"ruleId":"semi-spacing","replacedBy":[]},{"ruleId":"semi-style","replacedBy":[]},{"ruleId":"space-before-blocks","replacedBy":[]},{"ruleId":"space-before-function-paren","replacedBy":[]},{"ruleId":"space-in-parens","replacedBy":[]},{"ruleId":"space-infix-ops","replacedBy":[]},{"ruleId":"space-unary-ops","replacedBy":[]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"switch-colon-spacing","replacedBy":[]},{"ruleId":"wrap-iife","replacedBy":[]},{"ruleId":"no-extra-semi","replacedBy":[]},{"ruleId":"no-mixed-spaces-and-tabs","replacedBy":[]}]},{"filePath":"/src/repo/composer.json","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"arrow-parens","replacedBy":[]},{"ruleId":"arrow-spacing","replacedBy":[]},{"ruleId":"lines-between-class-members","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"template-curly-spacing","replacedBy":[]},{"ruleId":"implicit-arrow-linebreak","replacedBy":[]},{"ruleId":"indent","replacedBy":[]},{"ruleId":"comma-dangle","replacedBy":[]},{"ruleId":"no-extra-parens","replacedBy":[]},{"ruleId":"quotes","replacedBy":[]},{"ruleId":"quote-props","replacedBy":[]},{"ruleId":"array-bracket-spacing","replacedBy":[]},{"ruleId":"block-spacing","replacedBy":[]},{"ruleId":"brace-style","replacedBy":[]},{"ruleId":"comma-spacing","replacedBy":[]},{"ruleId":"comma-style","replacedBy":[]},{"ruleId":"computed-property-spacing","replacedBy":[]},{"ruleId":"dot-location","replacedBy":[]},{"ruleId":"eol-last","replacedBy":[]},{"ruleId":"func-call-spacing","replacedBy":[]},{"ruleId":"key-spacing","replacedBy":[]},{"ruleId":"keyword-spacing","replacedBy":[]},{"ruleId":"linebreak-style","replacedBy":[]},{"ruleId":"max-statements-per-line","replacedBy":[]},{"ruleId":"new-parens","replacedBy":[]},{"ruleId":"no-floating-decimal","replacedBy":[]},{"ruleId":"no-multi-spaces","replacedBy":[]},{"ruleId":"no-multiple-empty-lines","replacedBy":[]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"no-tabs","replacedBy":[]},{"ruleId":"no-trailing-spaces","replacedBy":[]},{"ruleId":"no-whitespace-before-property","replacedBy":[]},{"ruleId":"object-curly-spacing","replacedBy":[]},{"ruleId":"operator-linebreak","replacedBy":[]},{"ruleId":"semi","replacedBy":[]},{"ruleId":"semi-spacing","replacedBy":[]},{"ruleId":"semi-style","replacedBy":[]},{"ruleId":"space-before-blocks","replacedBy":[]},{"ruleId":"space-before-function-paren","replacedBy":[]},{"ruleId":"space-in-parens","replacedBy":[]},{"ruleId":"space-infix-ops","replacedBy":[]},{"ruleId":"space-unary-ops","replacedBy":[]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"switch-colon-spacing","replacedBy":[]},{"ruleId":"wrap-iife","replacedBy":[]},{"ruleId":"no-extra-semi","replacedBy":[]},{"ruleId":"no-mixed-spaces-and-tabs","replacedBy":[]}]},{"filePath":"/src/repo/data/mw_tei_json_definition.json","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"arrow-parens","replacedBy":[]},{"ruleId":"arrow-spacing","replacedBy":[]},{"ruleId":"lines-between-class-members","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"template-curly-spacing","replacedBy":[]},{"ruleId":"implicit-arrow-linebreak","replacedBy":[]},{"ruleId":"indent","replacedBy":[]},{"ruleId":"comma-dangle","replacedBy":[]},{"ruleId":"no-extra-parens","replacedBy":[]},{"ruleId":"quotes","replacedBy":[]},{"ruleId":"quote-props","replacedBy":[]},{"ruleId":"array-bracket-spacing","replacedBy":[]},{"ruleId":"block-spacing","replacedBy":[]},{"ruleId":"brace-style","replacedBy":[]},{"ruleId":"comma-spacing","replacedBy":[]},{"ruleId":"comma-style","replacedBy":[]},{"ruleId":"computed-property-spacing","replacedBy":[]},{"ruleId":"dot-location","replacedBy":[]},{"ruleId":"eol-last","replacedBy":[]},{"ruleId":"func-call-spacing","replacedBy":[]},{"ruleId":"key-spacing","replacedBy":[]},{"ruleId":"keyword-spacing","replacedBy":[]},{"ruleId":"linebreak-style","replacedBy":[]},{"ruleId":"max-statements-per-line","replacedBy":[]},{"ruleId":"new-parens","replacedBy":[]},{"ruleId":"no-floating-decimal","replacedBy":[]},{"ruleId":"no-multi-spaces","replacedBy":[]},{"ruleId":"no-multiple-empty-lines","replacedBy":[]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"no-tabs","replacedBy":[]},{"ruleId":"no-trailing-spaces","replacedBy":[]},{"ruleId":"no-whitespace-before-property","replacedBy":[]},{"ruleId":"object-curly-spacing","replacedBy":[]},{"ruleId":"operator-linebreak","replacedBy":[]},{"ruleId":"semi","replacedBy":[]},{"ruleId":"semi-spacing","replacedBy":[]},{"ruleId":"semi-style","replacedBy":[]},{"ruleId":"space-before-blocks","replacedBy":[]},{"ruleId":"space-before-function-paren","replacedBy":[]},{"ruleId":"space-in-parens","replacedBy":[]},{"ruleId":"space-infix-ops","replacedBy":[]},{"ruleId":"space-unary-ops","replacedBy":[]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"switch-colon-spacing","replacedBy":[]},{"ruleId":"wrap-iife","replacedBy":[]},{"ruleId":"no-extra-semi","replacedBy":[]},{"ruleId":"no-mixed-spaces-and-tabs","replacedBy":[]}]},{"filePath":"/src/repo/extension.json","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"arrow-parens","replacedBy":[]},{"ruleId":"arrow-spacing","replacedBy":[]},{"ruleId":"lines-between-class-members","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"template-curly-spacing","replacedBy":[]},{"ruleId":"implicit-arrow-linebreak","replacedBy":[]},{"ruleId":"indent","replacedBy":[]},{"ruleId":"comma-dangle","replacedBy":[]},{"ruleId":"no-extra-parens","replacedBy":[]},{"ruleId":"quotes","replacedBy":[]},{"ruleId":"quote-props","replacedBy":[]},{"ruleId":"array-bracket-spacing","replacedBy":[]},{"ruleId":"block-spacing","replacedBy":[]},{"ruleId":"brace-style","replacedBy":[]},{"ruleId":"comma-spacing","replacedBy":[]},{"ruleId":"comma-style","replacedBy":[]},{"ruleId":"computed-property-spacing","replacedBy":[]},{"ruleId":"dot-location","replacedBy":[]},{"ruleId":"eol-last","replacedBy":[]},{"ruleId":"func-call-spacing","replacedBy":[]},{"ruleId":"key-spacing","replacedBy":[]},{"ruleId":"keyword-spacing","replacedBy":[]},{"ruleId":"linebreak-style","replacedBy":[]},{"ruleId":"max-statements-per-line","replacedBy":[]},{"ruleId":"new-parens","replacedBy":[]},{"ruleId":"no-floating-decimal","replacedBy":[]},{"ruleId":"no-multi-spaces","replacedBy":[]},{"ruleId":"no-multiple-empty-lines","replacedBy":[]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"no-tabs","replacedBy":[]},{"ruleId":"no-trailing-spaces","replacedBy":[]},{"ruleId":"no-whitespace-before-property","replacedBy":[]},{"ruleId":"object-curly-spacing","replacedBy":[]},{"ruleId":"operator-linebreak","replacedBy":[]},{"ruleId":"semi","replacedBy":[]},{"ruleId":"semi-spacing","replacedBy":[]},{"ruleId":"semi-style","replacedBy":[]},{"ruleId":"space-before-blocks","replacedBy":[]},{"ruleId":"space-before-function-paren","replacedBy":[]},{"ruleId":"space-in-parens","replacedBy":[]},{"ruleId":"space-infix-ops","replacedBy":[]},{"ruleId":"space-unary-ops","replacedBy":[]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"switch-colon-spacing","replacedBy":[]},{"ruleId":"wrap-iife","replacedBy":[]},{"ruleId":"no-extra-semi","replacedBy":[]},{"ruleId":"no-mixed-spaces-and-tabs","replacedBy":[]}]},{"filePath":"/src/repo/i18n/en.json","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"arrow-parens","replacedBy":[]},{"ruleId":"arrow-spacing","replacedBy":[]},{"ruleId":"lines-between-class-members","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"template-curly-spacing","replacedBy":[]},{"ruleId":"implicit-arrow-linebreak","replacedBy":[]},{"ruleId":"indent","replacedBy":[]},{"ruleId":"comma-dangle","replacedBy":[]},{"ruleId":"no-extra-parens","replacedBy":[]},{"ruleId":"quotes","replacedBy":[]},{"ruleId":"quote-props","replacedBy":[]},{"ruleId":"array-bracket-spacing","replacedBy":[]},{"ruleId":"block-spacing","replacedBy":[]},{"ruleId":"brace-style","replacedBy":[]},{"ruleId":"comma-spacing","replacedBy":[]},{"ruleId":"comma-style","replacedBy":[]},{"ruleId":"computed-property-spacing","replacedBy":[]},{"ruleId":"dot-location","replacedBy":[]},{"ruleId":"eol-last","replacedBy":[]},{"ruleId":"func-call-spacing","replacedBy":[]},{"ruleId":"key-spacing","replacedBy":[]},{"ruleId":"keyword-spacing","replacedBy":[]},{"ruleId":"linebreak-style","replacedBy":[]},{"ruleId":"max-statements-per-line","replacedBy":[]},{"ruleId":"new-parens","replacedBy":[]},{"ruleId":"no-floating-decimal","replacedBy":[]},{"ruleId":"no-multi-spaces","replacedBy":[]},{"ruleId":"no-multiple-empty-lines","replacedBy":[]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"no-tabs","replacedBy":[]},{"ruleId":"no-trailing-spaces","replacedBy":[]},{"ruleId":"no-whitespace-before-property","replacedBy":[]},{"ruleId":"object-curly-spacing","replacedBy":[]},{"ruleId":"operator-linebreak","replacedBy":[]},{"ruleId":"semi","replacedBy":[]},{"ruleId":"semi-spacing","replacedBy":[]},{"ruleId":"semi-style","replacedBy":[]},{"ruleId":"space-before-blocks","replacedBy":[]},{"ruleId":"space-before-function-paren","replacedBy":[]},{"ruleId":"space-in-parens","replacedBy":[]},{"ruleId":"space-infix-ops","replacedBy":[]},{"ruleId":"space-unary-ops","replacedBy":[]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"switch-colon-spacing","replacedBy":[]},{"ruleId":"wrap-iife","replacedBy":[]},{"ruleId":"no-extra-semi","replacedBy":[]},{"ruleId":"no-mixed-spaces-and-tabs","replacedBy":[]}]},{"filePath":"/src/repo/i18n/qqq.json","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"arrow-parens","replacedBy":[]},{"ruleId":"arrow-spacing","replacedBy":[]},{"ruleId":"lines-between-class-members","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"template-curly-spacing","replacedBy":[]},{"ruleId":"implicit-arrow-linebreak","replacedBy":[]},{"ruleId":"indent","replacedBy":[]},{"ruleId":"comma-dangle","replacedBy":[]},{"ruleId":"no-extra-parens","replacedBy":[]},{"ruleId":"quotes","replacedBy":[]},{"ruleId":"quote-props","replacedBy":[]},{"ruleId":"array-bracket-spacing","replacedBy":[]},{"ruleId":"block-spacing","replacedBy":[]},{"ruleId":"brace-style","replacedBy":[]},{"ruleId":"comma-spacing","replacedBy":[]},{"ruleId":"comma-style","replacedBy":[]},{"ruleId":"computed-property-spacing","replacedBy":[]},{"ruleId":"dot-location","replacedBy":[]},{"ruleId":"eol-last","replacedBy":[]},{"ruleId":"func-call-spacing","replacedBy":[]},{"ruleId":"key-spacing","replacedBy":[]},{"ruleId":"keyword-spacing","replacedBy":[]},{"ruleId":"linebreak-style","replacedBy":[]},{"ruleId":"max-statements-per-line","replacedBy":[]},{"ruleId":"new-parens","replacedBy":[]},{"ruleId":"no-floating-decimal","replacedBy":[]},{"ruleId":"no-multi-spaces","replacedBy":[]},{"ruleId":"no-multiple-empty-lines","replacedBy":[]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"no-tabs","replacedBy":[]},{"ruleId":"no-trailing-spaces","replacedBy":[]},{"ruleId":"no-whitespace-before-property","replacedBy":[]},{"ruleId":"object-curly-spacing","replacedBy":[]},{"ruleId":"operator-linebreak","replacedBy":[]},{"ruleId":"semi","replacedBy":[]},{"ruleId":"semi-spacing","replacedBy":[]},{"ruleId":"semi-style","replacedBy":[]},{"ruleId":"space-before-blocks","replacedBy":[]},{"ruleId":"space-before-function-paren","replacedBy":[]},{"ruleId":"space-in-parens","replacedBy":[]},{"ruleId":"space-infix-ops","replacedBy":[]},{"ruleId":"space-unary-ops","replacedBy":[]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"switch-colon-spacing","replacedBy":[]},{"ruleId":"wrap-iife","replacedBy":[]},{"ruleId":"no-extra-semi","replacedBy":[]},{"ruleId":"no-mixed-spaces-and-tabs","replacedBy":[]}]},{"filePath":"/src/repo/modules/.eslintrc.json","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"indent","replacedBy":[]},{"ruleId":"comma-dangle","replacedBy":[]},{"ruleId":"no-extra-parens","replacedBy":[]},{"ruleId":"quotes","replacedBy":[]},{"ruleId":"quote-props","replacedBy":[]},{"ruleId":"arrow-parens","replacedBy":[]},{"ruleId":"arrow-spacing","replacedBy":[]},{"ruleId":"lines-between-class-members","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"template-curly-spacing","replacedBy":[]},{"ruleId":"implicit-arrow-linebreak","replacedBy":[]},{"ruleId":"array-bracket-spacing","replacedBy":[]},{"ruleId":"block-spacing","replacedBy":[]},{"ruleId":"brace-style","replacedBy":[]},{"ruleId":"comma-spacing","replacedBy":[]},{"ruleId":"comma-style","replacedBy":[]},{"ruleId":"computed-property-spacing","replacedBy":[]},{"ruleId":"dot-location","replacedBy":[]},{"ruleId":"eol-last","replacedBy":[]},{"ruleId":"func-call-spacing","replacedBy":[]},{"ruleId":"key-spacing","replacedBy":[]},{"ruleId":"keyword-spacing","replacedBy":[]},{"ruleId":"linebreak-style","replacedBy":[]},{"ruleId":"max-statements-per-line","replacedBy":[]},{"ruleId":"new-parens","replacedBy":[]},{"ruleId":"no-floating-decimal","replacedBy":[]},{"ruleId":"no-multi-spaces","replacedBy":[]},{"ruleId":"no-multiple-empty-lines","replacedBy":[]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"no-tabs","replacedBy":[]},{"ruleId":"no-trailing-spaces","replacedBy":[]},{"ruleId":"no-whitespace-before-property","replacedBy":[]},{"ruleId":"object-curly-spacing","replacedBy":[]},{"ruleId":"operator-linebreak","replacedBy":[]},{"ruleId":"semi","replacedBy":[]},{"ruleId":"semi-spacing","replacedBy":[]},{"ruleId":"semi-style","replacedBy":[]},{"ruleId":"space-before-blocks","replacedBy":[]},{"ruleId":"space-before-function-paren","replacedBy":[]},{"ruleId":"space-in-parens","replacedBy":[]},{"ruleId":"space-infix-ops","replacedBy":[]},{"ruleId":"space-unary-ops","replacedBy":[]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"switch-colon-spacing","replacedBy":[]},{"ruleId":"wrap-iife","replacedBy":[]},{"ruleId":"no-extra-semi","replacedBy":[]},{"ruleId":"no-mixed-spaces-and-tabs","replacedBy":[]}]},{"filePath":"/src/repo/modules/edit/Editor.js","messages":[{"ruleId":"no-jquery/no-done-fail","severity":2,"message":"Prefer .then to .done","line":151,"column":9,"nodeType":"CallExpression","endLine":161,"endColumn":5}],"suppressedMessages":[],"errorCount":1,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/**\n * The TEI XML editor\n *\n * @class\n *\n * @constructor\n * @param {Object} [config] Configuration options\n * @cfg {jQuery} [$textarea] The <textarea> to edit\n */\nmw.teiEditor.Editor = function ( config ) {\n\tvar textarea = config.$textarea[ 0 ],\n\t\tdir = textarea.dir,\n\t\treadOnly = textarea.readOnly,\n\t\tcodeMirror,\n\t\ttoolGroupFactory = new OO.ui.ToolGroupFactory(),\n\t\ttoolbar = new OO.ui.Toolbar( mw.teiEditor.toolFactory, toolGroupFactory, {\n\t\t\tactions: true\n\t\t} ),\n\t\tactions = new OO.ui.Toolbar( mw.teiEditor.toolFactory, toolGroupFactory );\n\n\tmw.teiEditor.Editor.super.bind( this )( {\n\t\tdisabled: readOnly\n\t} );\n\n\tthis.api = new mw.Api();\n\n\t// Toolbar\n\tconfig.$textarea.before( toolbar.$element );\n\ttoolbar.setup( mw.teiEditor.Editor.static.toolbarGroups );\n\ttoolbar.initialize();\n\ttoolbar.emit( 'updateState' );\n\ttoolbar.$actions.append( actions.$element );\n\tactions.setup( mw.teiEditor.Editor.static.actionGroups );\n\tactions.initialize();\n\tactions.emit( 'updateState' );\n\n\t// Code mirror autocomplete\n\tfunction completeAfter( cm, pred ) {\n\t\tif ( !pred || pred() ) {\n\t\t\tsetTimeout( () => {\n\t\t\t\tif ( !cm.state.completionActive ) {\n\t\t\t\t\tcm.showHint( { completeSingle: false } );\n\t\t\t\t}\n\t\t\t}, 100 );\n\t\t}\n\t\treturn CodeMirror.Pass;\n\t}\n\n\tfunction completeIfAfterLt( cm ) {\n\t\treturn completeAfter( cm, () => {\n\t\t\tvar cur = cm.getCursor();\n\t\t\treturn cm.getRange( CodeMirror.Pos( cur.line, cur.ch - 1 ), cur ) === '<';\n\t\t} );\n\t}\n\n\tfunction completeIfInTag( cm ) {\n\t\treturn completeAfter( cm, () => {\n\t\t\tvar tok = cm.getTokenAt( cm.getCursor() ),\n\t\t\t\tinner = CodeMirror.innerMode( cm.getMode(), tok.state ).state;\n\t\t\tif ( tok.type === 'string' && ( !/['\"]/.test( tok.string.charAt( tok.string.length - 1 ) ) || tok.string.length === 1 ) ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\treturn inner.tagName;\n\t\t} );\n\t}\n\n\t// CodeMirror itself\n\tcodeMirror = CodeMirror.fromTextArea( textarea, {\n\t\tmode: 'xml',\n\t\tlineNumbers: true,\n\t\tdirection: dir,\n\t\treadOnly: readOnly,\n\t\tspellcheck: true,\n\t\textraKeys: {\n\t\t\t\"'<'\": completeAfter,\n\t\t\t\"'/'\": completeIfAfterLt,\n\t\t\t\"' '\": completeIfInTag,\n\t\t\t\"'='\": completeIfInTag,\n\t\t\t'Ctrl-Space': 'autocomplete'\n\t\t},\n\t\tgutters: [ 'CodeMirror-lint-markers' ],\n\t\thintOptions: {\n\t\t\tschemaInfo: mw.teiEditorSchema\n\t\t},\n\t\tlint: {\n\t\t\tgetAnnotations: mw.teiEditor.Editor.prototype.lint.bind( this ),\n\t\t\tasync: true\n\t\t}\n\t} );\n\tconfig.$textarea.textSelection( 'register', {\n\t\tgetContents: function () {\n\t\t\treturn codeMirror.doc.getValue();\n\t\t},\n\t\tsetContents: function ( content ) {\n\t\t\tcodeMirror.doc.setValue( content );\n\t\t\treturn this;\n\t\t},\n\t\tgetSelection: function () {\n\t\t\treturn codeMirror.doc.getSelection();\n\t\t},\n\t\tsetSelection: function ( options ) {\n\t\t\tcodeMirror.focus();\n\t\t\tcodeMirror.doc.setSelection( codeMirror.doc.posFromIndex( options.start ), codeMirror.doc.posFromIndex( options.end ) );\n\t\t\treturn this;\n\t\t},\n\t\treplaceSelection: function ( value ) {\n\t\t\tcodeMirror.doc.replaceSelection( value );\n\t\t\treturn this;\n\t\t},\n\t\tgetCaretPosition: function ( options ) {\n\t\t\tvar caretPos = codeMirror.doc.indexFromPos( codeMirror.doc.getCursor( true ) ),\n\t\t\t\tendPos = codeMirror.doc.indexFromPos( codeMirror.doc.getCursor( false ) );\n\t\t\tif ( options.startAndEnd ) {\n\t\t\t\treturn [ caretPos, endPos ];\n\t\t\t}\n\t\t\treturn caretPos;\n\t\t},\n\t\tscrollToCaretPosition: function () {\n\t\t\tcodeMirror.scrollIntoView( null );\n\t\t\treturn this;\n\t\t}\n\t} );\n};\n\nOO.inheritClass( mw.teiEditor.Editor, OO.ui.Widget );\n\nmw.teiEditor.Editor.static.toolbarGroups = [\n\t{\n\t\tname: 'style',\n\t\ttype: 'list',\n\t\ticon: 'textStyle',\n\t\ttitle: OO.ui.deferMsg( 'visualeditor-toolbar-style-tooltip' ),\n\t\tinclude: [ { group: 'textStyle' } ],\n\t\tforceExpand: [ 'bold', 'italic' ],\n\t\tpromote: [ 'bold', 'italic' ],\n\t\tdemote: [ 'strikethrough', 'code', 'underline', 'language', 'big', 'small', 'clear' ]\n\t}\n];\n\nmw.teiEditor.Editor.static.actionGroups = [\n\t{\n\t\tname: 'editMode',\n\t\ttype: 'list',\n\t\ticon: 'edit',\n\t\ttitle: OO.ui.deferMsg( 'visualeditor-mweditmode-tooltip' ),\n\t\tinclude: [ 'teiEditModeVisual', 'teiEditModeSource' ]\n\t}\n];\n\nmw.teiEditor.Editor.prototype.lint = function ( text, callback ) {\n\treturn this.api.post( {\n\t\taction: 'teivalidate',\n\t\ttext: text\n\t} ).done( ( data ) => {\n\t\tcallback( data.validation.map( ( message ) => ( {\n\t\t\tfrom: CodeMirror.Pos( ( message.line || 1 ) - 1, 0 ),\n\t\t\tto: CodeMirror.Pos( ( message.line || 1 ) - 1, 0 ),\n\t\t\tmessage: message.message,\n\t\t\tseverity: message.type\n\t\t} ) ) );\n\t} );\n};\nmw.teiEditor.Editor.prototype.lint.async = true;\n","usedDeprecatedRules":[{"ruleId":"arrow-parens","replacedBy":[]},{"ruleId":"arrow-spacing","replacedBy":[]},{"ruleId":"lines-between-class-members","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"template-curly-spacing","replacedBy":[]},{"ruleId":"implicit-arrow-linebreak","replacedBy":[]},{"ruleId":"array-bracket-spacing","replacedBy":[]},{"ruleId":"block-spacing","replacedBy":[]},{"ruleId":"brace-style","replacedBy":[]},{"ruleId":"comma-dangle","replacedBy":[]},{"ruleId":"comma-spacing","replacedBy":[]},{"ruleId":"comma-style","replacedBy":[]},{"ruleId":"computed-property-spacing","replacedBy":[]},{"ruleId":"dot-location","replacedBy":[]},{"ruleId":"eol-last","replacedBy":[]},{"ruleId":"func-call-spacing","replacedBy":[]},{"ruleId":"indent","replacedBy":[]},{"ruleId":"key-spacing","replacedBy":[]},{"ruleId":"keyword-spacing","replacedBy":[]},{"ruleId":"linebreak-style","replacedBy":[]},{"ruleId":"max-statements-per-line","replacedBy":[]},{"ruleId":"new-parens","replacedBy":[]},{"ruleId":"no-floating-decimal","replacedBy":[]},{"ruleId":"no-multi-spaces","replacedBy":[]},{"ruleId":"no-multiple-empty-lines","replacedBy":[]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"no-tabs","replacedBy":[]},{"ruleId":"no-trailing-spaces","replacedBy":[]},{"ruleId":"no-whitespace-before-property","replacedBy":[]},{"ruleId":"object-curly-spacing","replacedBy":[]},{"ruleId":"operator-linebreak","replacedBy":[]},{"ruleId":"quote-props","replacedBy":[]},{"ruleId":"quotes","replacedBy":[]},{"ruleId":"semi","replacedBy":[]},{"ruleId":"semi-spacing","replacedBy":[]},{"ruleId":"semi-style","replacedBy":[]},{"ruleId":"space-before-blocks","replacedBy":[]},{"ruleId":"space-before-function-paren","replacedBy":[]},{"ruleId":"space-in-parens","replacedBy":[]},{"ruleId":"space-infix-ops","replacedBy":[]},{"ruleId":"space-unary-ops","replacedBy":[]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"switch-colon-spacing","replacedBy":[]},{"ruleId":"wrap-iife","replacedBy":[]},{"ruleId":"no-extra-semi","replacedBy":[]},{"ruleId":"no-mixed-spaces-and-tabs","replacedBy":[]}]},{"filePath":"/src/repo/modules/edit/EncapsulationTool.js","messages":[],"suppressedMessages":[{"ruleId":"no-jquery/no-global-selector","severity":2,"message":"Avoid queries which search the entire DOM. Keep DOM nodes in memory where possible.","line":35,"column":2,"nodeType":"CallExpression","endLine":35,"endColumn":20,"suppressions":[{"kind":"directive","justification":""}]}],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"arrow-parens","replacedBy":[]},{"ruleId":"arrow-spacing","replacedBy":[]},{"ruleId":"lines-between-class-members","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"template-curly-spacing","replacedBy":[]},{"ruleId":"implicit-arrow-linebreak","replacedBy":[]},{"ruleId":"array-bracket-spacing","replacedBy":[]},{"ruleId":"block-spacing","replacedBy":[]},{"ruleId":"brace-style","replacedBy":[]},{"ruleId":"comma-dangle","replacedBy":[]},{"ruleId":"comma-spacing","replacedBy":[]},{"ruleId":"comma-style","replacedBy":[]},{"ruleId":"computed-property-spacing","replacedBy":[]},{"ruleId":"dot-location","replacedBy":[]},{"ruleId":"eol-last","replacedBy":[]},{"ruleId":"func-call-spacing","replacedBy":[]},{"ruleId":"indent","replacedBy":[]},{"ruleId":"key-spacing","replacedBy":[]},{"ruleId":"keyword-spacing","replacedBy":[]},{"ruleId":"linebreak-style","replacedBy":[]},{"ruleId":"max-statements-per-line","replacedBy":[]},{"ruleId":"new-parens","replacedBy":[]},{"ruleId":"no-floating-decimal","replacedBy":[]},{"ruleId":"no-multi-spaces","replacedBy":[]},{"ruleId":"no-multiple-empty-lines","replacedBy":[]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"no-tabs","replacedBy":[]},{"ruleId":"no-trailing-spaces","replacedBy":[]},{"ruleId":"no-whitespace-before-property","replacedBy":[]},{"ruleId":"object-curly-spacing","replacedBy":[]},{"ruleId":"operator-linebreak","replacedBy":[]},{"ruleId":"quote-props","replacedBy":[]},{"ruleId":"quotes","replacedBy":[]},{"ruleId":"semi","replacedBy":[]},{"ruleId":"semi-spacing","replacedBy":[]},{"ruleId":"semi-style","replacedBy":[]},{"ruleId":"space-before-blocks","replacedBy":[]},{"ruleId":"space-before-function-paren","replacedBy":[]},{"ruleId":"space-in-parens","replacedBy":[]},{"ruleId":"space-infix-ops","replacedBy":[]},{"ruleId":"space-unary-ops","replacedBy":[]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"switch-colon-spacing","replacedBy":[]},{"ruleId":"wrap-iife","replacedBy":[]},{"ruleId":"no-extra-semi","replacedBy":[]},{"ruleId":"no-mixed-spaces-and-tabs","replacedBy":[]}]},{"filePath":"/src/repo/modules/edit/MWEditModeSourceTool.js","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"arrow-parens","replacedBy":[]},{"ruleId":"arrow-spacing","replacedBy":[]},{"ruleId":"lines-between-class-members","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"template-curly-spacing","replacedBy":[]},{"ruleId":"implicit-arrow-linebreak","replacedBy":[]},{"ruleId":"array-bracket-spacing","replacedBy":[]},{"ruleId":"block-spacing","replacedBy":[]},{"ruleId":"brace-style","replacedBy":[]},{"ruleId":"comma-dangle","replacedBy":[]},{"ruleId":"comma-spacing","replacedBy":[]},{"ruleId":"comma-style","replacedBy":[]},{"ruleId":"computed-property-spacing","replacedBy":[]},{"ruleId":"dot-location","replacedBy":[]},{"ruleId":"eol-last","replacedBy":[]},{"ruleId":"func-call-spacing","replacedBy":[]},{"ruleId":"indent","replacedBy":[]},{"ruleId":"key-spacing","replacedBy":[]},{"ruleId":"keyword-spacing","replacedBy":[]},{"ruleId":"linebreak-style","replacedBy":[]},{"ruleId":"max-statements-per-line","replacedBy":[]},{"ruleId":"new-parens","replacedBy":[]},{"ruleId":"no-floating-decimal","replacedBy":[]},{"ruleId":"no-multi-spaces","replacedBy":[]},{"ruleId":"no-multiple-empty-lines","replacedBy":[]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"no-tabs","replacedBy":[]},{"ruleId":"no-trailing-spaces","replacedBy":[]},{"ruleId":"no-whitespace-before-property","replacedBy":[]},{"ruleId":"object-curly-spacing","replacedBy":[]},{"ruleId":"operator-linebreak","replacedBy":[]},{"ruleId":"quote-props","replacedBy":[]},{"ruleId":"quotes","replacedBy":[]},{"ruleId":"semi","replacedBy":[]},{"ruleId":"semi-spacing","replacedBy":[]},{"ruleId":"semi-style","replacedBy":[]},{"ruleId":"space-before-blocks","replacedBy":[]},{"ruleId":"space-before-function-paren","replacedBy":[]},{"ruleId":"space-in-parens","replacedBy":[]},{"ruleId":"space-infix-ops","replacedBy":[]},{"ruleId":"space-unary-ops","replacedBy":[]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"switch-colon-spacing","replacedBy":[]},{"ruleId":"wrap-iife","replacedBy":[]},{"ruleId":"no-extra-semi","replacedBy":[]},{"ruleId":"no-mixed-spaces-and-tabs","replacedBy":[]}]},{"filePath":"/src/repo/modules/edit/MWEditModeVisualTool.js","messages":[],"suppressedMessages":[{"ruleId":"no-jquery/no-global-selector","severity":2,"message":"Avoid queries which search the entire DOM. Keep DOM nodes in memory where possible.","line":22,"column":16,"nodeType":"CallExpression","endLine":22,"endColumn":34,"suppressions":[{"kind":"directive","justification":""}]}],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"arrow-parens","replacedBy":[]},{"ruleId":"arrow-spacing","replacedBy":[]},{"ruleId":"lines-between-class-members","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"template-curly-spacing","replacedBy":[]},{"ruleId":"implicit-arrow-linebreak","replacedBy":[]},{"ruleId":"array-bracket-spacing","replacedBy":[]},{"ruleId":"block-spacing","replacedBy":[]},{"ruleId":"brace-style","replacedBy":[]},{"ruleId":"comma-dangle","replacedBy":[]},{"ruleId":"comma-spacing","replacedBy":[]},{"ruleId":"comma-style","replacedBy":[]},{"ruleId":"computed-property-spacing","replacedBy":[]},{"ruleId":"dot-location","replacedBy":[]},{"ruleId":"eol-last","replacedBy":[]},{"ruleId":"func-call-spacing","replacedBy":[]},{"ruleId":"indent","replacedBy":[]},{"ruleId":"key-spacing","replacedBy":[]},{"ruleId":"keyword-spacing","replacedBy":[]},{"ruleId":"linebreak-style","replacedBy":[]},{"ruleId":"max-statements-per-line","replacedBy":[]},{"ruleId":"new-parens","replacedBy":[]},{"ruleId":"no-floating-decimal","replacedBy":[]},{"ruleId":"no-multi-spaces","replacedBy":[]},{"ruleId":"no-multiple-empty-lines","replacedBy":[]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"no-tabs","replacedBy":[]},{"ruleId":"no-trailing-spaces","replacedBy":[]},{"ruleId":"no-whitespace-before-property","replacedBy":[]},{"ruleId":"object-curly-spacing","replacedBy":[]},{"ruleId":"operator-linebreak","replacedBy":[]},{"ruleId":"quote-props","replacedBy":[]},{"ruleId":"quotes","replacedBy":[]},{"ruleId":"semi","replacedBy":[]},{"ruleId":"semi-spacing","replacedBy":[]},{"ruleId":"semi-style","replacedBy":[]},{"ruleId":"space-before-blocks","replacedBy":[]},{"ruleId":"space-before-function-paren","replacedBy":[]},{"ruleId":"space-in-parens","replacedBy":[]},{"ruleId":"space-infix-ops","replacedBy":[]},{"ruleId":"space-unary-ops","replacedBy":[]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"switch-colon-spacing","replacedBy":[]},{"ruleId":"wrap-iife","replacedBy":[]},{"ruleId":"no-extra-semi","replacedBy":[]},{"ruleId":"no-mixed-spaces-and-tabs","replacedBy":[]}]},{"filePath":"/src/repo/modules/edit/teiEditor.init.js","messages":[],"suppressedMessages":[{"ruleId":"no-jquery/no-global-selector","severity":2,"message":"Avoid queries which search the entire DOM. Keep DOM nodes in memory where possible.","line":3,"column":18,"nodeType":"CallExpression","endLine":3,"endColumn":36,"suppressions":[{"kind":"directive","justification":""}]}],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"arrow-parens","replacedBy":[]},{"ruleId":"arrow-spacing","replacedBy":[]},{"ruleId":"lines-between-class-members","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"template-curly-spacing","replacedBy":[]},{"ruleId":"implicit-arrow-linebreak","replacedBy":[]},{"ruleId":"array-bracket-spacing","replacedBy":[]},{"ruleId":"block-spacing","replacedBy":[]},{"ruleId":"brace-style","replacedBy":[]},{"ruleId":"comma-dangle","replacedBy":[]},{"ruleId":"comma-spacing","replacedBy":[]},{"ruleId":"comma-style","replacedBy":[]},{"ruleId":"computed-property-spacing","replacedBy":[]},{"ruleId":"dot-location","replacedBy":[]},{"ruleId":"eol-last","replacedBy":[]},{"ruleId":"func-call-spacing","replacedBy":[]},{"ruleId":"indent","replacedBy":[]},{"ruleId":"key-spacing","replacedBy":[]},{"ruleId":"keyword-spacing","replacedBy":[]},{"ruleId":"linebreak-style","replacedBy":[]},{"ruleId":"max-statements-per-line","replacedBy":[]},{"ruleId":"new-parens","replacedBy":[]},{"ruleId":"no-floating-decimal","replacedBy":[]},{"ruleId":"no-multi-spaces","replacedBy":[]},{"ruleId":"no-multiple-empty-lines","replacedBy":[]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"no-tabs","replacedBy":[]},{"ruleId":"no-trailing-spaces","replacedBy":[]},{"ruleId":"no-whitespace-before-property","replacedBy":[]},{"ruleId":"object-curly-spacing","replacedBy":[]},{"ruleId":"operator-linebreak","replacedBy":[]},{"ruleId":"quote-props","replacedBy":[]},{"ruleId":"quotes","replacedBy":[]},{"ruleId":"semi","replacedBy":[]},{"ruleId":"semi-spacing","replacedBy":[]},{"ruleId":"semi-style","replacedBy":[]},{"ruleId":"space-before-blocks","replacedBy":[]},{"ruleId":"space-before-function-paren","replacedBy":[]},{"ruleId":"space-in-parens","replacedBy":[]},{"ruleId":"space-infix-ops","replacedBy":[]},{"ruleId":"space-unary-ops","replacedBy":[]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"switch-colon-spacing","replacedBy":[]},{"ruleId":"wrap-iife","replacedBy":[]},{"ruleId":"no-extra-semi","replacedBy":[]},{"ruleId":"no-mixed-spaces-and-tabs","replacedBy":[]}]},{"filePath":"/src/repo/modules/edit/teiEditor.js","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"arrow-parens","replacedBy":[]},{"ruleId":"arrow-spacing","replacedBy":[]},{"ruleId":"lines-between-class-members","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"template-curly-spacing","replacedBy":[]},{"ruleId":"implicit-arrow-linebreak","replacedBy":[]},{"ruleId":"array-bracket-spacing","replacedBy":[]},{"ruleId":"block-spacing","replacedBy":[]},{"ruleId":"brace-style","replacedBy":[]},{"ruleId":"comma-dangle","replacedBy":[]},{"ruleId":"comma-spacing","replacedBy":[]},{"ruleId":"comma-style","replacedBy":[]},{"ruleId":"computed-property-spacing","replacedBy":[]},{"ruleId":"dot-location","replacedBy":[]},{"ruleId":"eol-last","replacedBy":[]},{"ruleId":"func-call-spacing","replacedBy":[]},{"ruleId":"indent","replacedBy":[]},{"ruleId":"key-spacing","replacedBy":[]},{"ruleId":"keyword-spacing","replacedBy":[]},{"ruleId":"linebreak-style","replacedBy":[]},{"ruleId":"max-statements-per-line","replacedBy":[]},{"ruleId":"new-parens","replacedBy":[]},{"ruleId":"no-floating-decimal","replacedBy":[]},{"ruleId":"no-multi-spaces","replacedBy":[]},{"ruleId":"no-multiple-empty-lines","replacedBy":[]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"no-tabs","replacedBy":[]},{"ruleId":"no-trailing-spaces","replacedBy":[]},{"ruleId":"no-whitespace-before-property","replacedBy":[]},{"ruleId":"object-curly-spacing","replacedBy":[]},{"ruleId":"operator-linebreak","replacedBy":[]},{"ruleId":"quote-props","replacedBy":[]},{"ruleId":"quotes","replacedBy":[]},{"ruleId":"semi","replacedBy":[]},{"ruleId":"semi-spacing","replacedBy":[]},{"ruleId":"semi-style","replacedBy":[]},{"ruleId":"space-before-blocks","replacedBy":[]},{"ruleId":"space-before-function-paren","replacedBy":[]},{"ruleId":"space-in-parens","replacedBy":[]},{"ruleId":"space-infix-ops","replacedBy":[]},{"ruleId":"space-unary-ops","replacedBy":[]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"switch-colon-spacing","replacedBy":[]},{"ruleId":"wrap-iife","replacedBy":[]},{"ruleId":"no-extra-semi","replacedBy":[]},{"ruleId":"no-mixed-spaces-and-tabs","replacedBy":[]}]},{"filePath":"/src/repo/modules/lib/codemirror/lint.js","messages":[],"suppressedMessages":[{"ruleId":"no-shadow","severity":2,"message":"'e' is already declared in the upper scope on line 9 column 24.","line":15,"column":22,"nodeType":"Identifier","messageId":"noShadow","endLine":15,"endColumn":23,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":16,"column":26,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":16,"endColumn":27,"fix":{"range":[500,500],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":16,"column":28,"nodeType":"ReturnStatement","messageId":"exceed","endLine":16,"endColumn":85,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":16,"column":86,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":16,"endColumn":87,"fix":{"range":[559,559],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '!==' and instead saw '!='.","line":22,"column":25,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":22,"endColumn":27,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":22,"column":35,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":22,"endColumn":36,"fix":{"range":[787,787],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":22,"column":37,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":22,"endColumn":58,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":22,"column":59,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":22,"endColumn":60,"fix":{"range":[810,810],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":26,"column":25,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":26,"endColumn":26,"fix":{"range":[875,875],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":26,"column":27,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":26,"endColumn":61,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":26,"column":62,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":26,"endColumn":63,"fix":{"range":[911,911],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":29,"column":25,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":29,"endColumn":26,"fix":{"range":[971,971],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":29,"column":27,"nodeType":"ReturnStatement","messageId":"exceed","endLine":29,"endColumn":34,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":29,"column":35,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":29,"endColumn":36,"fix":{"range":[980,980],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '===' and instead saw '=='.","line":30,"column":25,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":30,"endColumn":27,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":30,"column":35,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":30,"endColumn":36,"fix":{"range":[1017,1017],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":30,"column":37,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":30,"endColumn":46,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":30,"column":47,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":30,"endColumn":48,"fix":{"range":[1028,1028],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"prefer-arrow-callback","severity":2,"message":"Unexpected function expression.","line":32,"column":15,"nodeType":"FunctionExpression","messageId":"preferArrowCallback","endLine":32,"endColumn":40,"fix":{"range":[1068,1079],"text":"() =>"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":32,"column":27,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":32,"endColumn":28,"fix":{"range":[1081,1081],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":32,"column":29,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":32,"endColumn":38,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":32,"column":39,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":32,"endColumn":40,"fix":{"range":[1092,1092],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":39,"column":19,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":39,"endColumn":20,"fix":{"range":[1280,1280],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 3 statements. Maximum allowed is 1.","line":39,"column":21,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":39,"endColumn":44,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":39,"column":61,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":39,"endColumn":62,"fix":{"range":[1321,1321],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"prefer-arrow-callback","severity":2,"message":"Unexpected function expression.","line":41,"column":27,"nodeType":"FunctionExpression","messageId":"preferArrowCallback","endLine":50,"endColumn":4,"fix":{"range":[1353,1364],"text":"() =>"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '===' and instead saw '=='.","line":44,"column":27,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":44,"endColumn":29,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":44,"column":35,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":44,"endColumn":36,"fix":{"range":[1469,1469],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":44,"column":37,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":44,"endColumn":48,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":44,"column":49,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":44,"endColumn":50,"fix":{"range":[1482,1482],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '===' and instead saw '=='.","line":45,"column":13,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":45,"endColumn":15,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":45,"column":32,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":45,"endColumn":33,"fix":{"range":[1516,1516],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":45,"column":34,"nodeType":"ReturnStatement","messageId":"exceed","endLine":45,"endColumn":41,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":45,"column":42,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":45,"endColumn":43,"fix":{"range":[1525,1525],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":46,"column":16,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":46,"endColumn":17,"fix":{"range":[1543,1543],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 3 statements. Maximum allowed is 1.","line":46,"column":18,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":46,"endColumn":25,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":46,"column":33,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":46,"endColumn":34,"fix":{"range":[1559,1559],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":49,"column":20,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":49,"endColumn":21,"fix":{"range":[1592,1592],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":49,"column":22,"nodeType":"ReturnStatement","messageId":"exceed","endLine":49,"endColumn":51,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":49,"column":52,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":49,"endColumn":53,"fix":{"range":[1623,1623],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":59,"column":37,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":59,"endColumn":38,"fix":{"range":[1868,1868],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":59,"column":39,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":59,"endColumn":60,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":59,"column":61,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":59,"endColumn":62,"fix":{"range":[1891,1891],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":64,"column":38,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":64,"endColumn":39,"fix":{"range":[2000,2000],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":64,"column":40,"nodeType":"ReturnStatement","messageId":"exceed","endLine":64,"endColumn":75,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":64,"column":76,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":64,"endColumn":77,"fix":{"range":[2037,2037],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":65,"column":39,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":65,"endColumn":40,"fix":{"range":[2078,2078],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":65,"column":41,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":65,"endColumn":54,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":65,"column":55,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":65,"endColumn":56,"fix":{"range":[2093,2093],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":71,"column":26,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":71,"endColumn":27,"fix":{"range":[2201,2201],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":71,"column":28,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":71,"endColumn":56,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":71,"column":57,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":71,"endColumn":58,"fix":{"range":[2231,2231],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":72,"column":51,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":72,"endColumn":52,"fix":{"range":[2284,2284],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":72,"column":53,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":72,"endColumn":79,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":72,"column":80,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":72,"endColumn":81,"fix":{"range":[2312,2312],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"mediawiki/class-doc","severity":2,"message":"All possible CSS classes should be documented. See https://w.wiki/PS2 for details.","line":78,"column":3,"nodeType":"AssignmentExpression","endLine":78,"endColumn":58,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '!==' and instead saw '!='.","line":84,"column":17,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":84,"endColumn":19,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"prefer-arrow-callback","severity":2,"message":"Unexpected function expression.","line":85,"column":39,"nodeType":"FunctionExpression","messageId":"preferArrowCallback","endLine":87,"endColumn":5,"fix":{"range":[2745,2759],"text":"( e ) =>"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '===' and instead saw '=='.","line":94,"column":10,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":94,"endColumn":12,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":94,"column":23,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":94,"endColumn":24,"fix":{"range":[2894,2894],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 3 statements. Maximum allowed is 1.","line":94,"column":25,"nodeType":"ReturnStatement","messageId":"exceed","endLine":94,"endColumn":34,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":94,"column":35,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":94,"endColumn":36,"fix":{"range":[2905,2905],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":94,"column":42,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":94,"endColumn":43,"fix":{"range":[2913,2913],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":94,"column":54,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":94,"endColumn":55,"fix":{"range":[2924,2924],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":108,"column":20,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":108,"endColumn":21,"fix":{"range":[3263,3263],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":108,"column":22,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":108,"endColumn":41,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":108,"column":42,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":108,"endColumn":43,"fix":{"range":[3284,3284],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"mediawiki/class-doc","severity":2,"message":"All possible CSS classes should be documented. See https://w.wiki/PS2 for details.","line":110,"column":3,"nodeType":"AssignmentExpression","endLine":110,"endColumn":56,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":123,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":123,"endColumn":4,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"prefer-arrow-callback","severity":2,"message":"Unexpected function expression.","line":129,"column":34,"nodeType":"FunctionExpression","messageId":"preferArrowCallback","endLine":134,"endColumn":4,"fix":{"range":[3858,3888],"text":"( annotations, arg2 ) =>"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '!==' and instead saw '!='.","line":131,"column":26,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":131,"endColumn":28,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":131,"column":34,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":131,"endColumn":35,"fix":{"range":[3955,3955],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":131,"column":36,"nodeType":"ReturnStatement","messageId":"exceed","endLine":131,"endColumn":43,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":131,"column":44,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":131,"endColumn":45,"fix":{"range":[3964,3964],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":132,"column":53,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":132,"endColumn":54,"fix":{"range":[4019,4019],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":132,"column":55,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":132,"endColumn":74,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":132,"column":75,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":132,"endColumn":76,"fix":{"range":[4040,4040],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"prefer-arrow-callback","severity":2,"message":"Unexpected function expression.","line":133,"column":18,"nodeType":"FunctionExpression","messageId":"preferArrowCallback","endLine":133,"endColumn":67,"fix":{"range":[4059,4070],"text":"() =>"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":133,"column":30,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":133,"endColumn":31,"fix":{"range":[4072,4072],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":133,"column":32,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":133,"endColumn":65,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":133,"column":66,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":133,"endColumn":67,"fix":{"range":[4107,4107],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":143,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":143,"endColumn":4,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":144,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":144,"endColumn":4,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":145,"column":26,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":145,"endColumn":27,"fix":{"range":[4580,4580],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":145,"column":28,"nodeType":"ReturnStatement","messageId":"exceed","endLine":145,"endColumn":35,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":145,"column":36,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":145,"endColumn":37,"fix":{"range":[4589,4589],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":150,"column":24,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":150,"endColumn":25,"fix":{"range":[4795,4795],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":150,"column":26,"nodeType":"ReturnStatement","messageId":"exceed","endLine":150,"endColumn":33,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":150,"column":34,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":150,"endColumn":35,"fix":{"range":[4804,4804],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"prefer-arrow-callback","severity":2,"message":"Unexpected function expression.","line":152,"column":23,"nodeType":"FunctionExpression","messageId":"preferArrowCallback","endLine":154,"endColumn":6,"fix":{"range":[4857,4876],"text":"( issues ) =>"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"prefer-arrow-callback","severity":2,"message":"Unexpected function expression.","line":153,"column":20,"nodeType":"FunctionExpression","messageId":"preferArrowCallback","endLine":153,"endColumn":64,"fix":{"range":[4898,4909],"text":"() =>"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":153,"column":32,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":153,"endColumn":33,"fix":{"range":[4911,4911],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":153,"column":34,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":153,"endColumn":62,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":153,"column":63,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":153,"endColumn":64,"fix":{"range":[4941,4941],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":155,"column":11,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":155,"endColumn":12,"fix":{"range":[4966,4966],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"prefer-arrow-callback","severity":2,"message":"Unexpected function expression.","line":155,"column":27,"nodeType":"FunctionExpression","messageId":"preferArrowCallback","endLine":155,"endColumn":76,"fix":{"range":[4981,4992],"text":"() =>"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":155,"column":39,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":155,"endColumn":40,"fix":{"range":[4994,4994],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":155,"column":41,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":155,"endColumn":74,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":155,"column":75,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":155,"endColumn":76,"fix":{"range":[5029,5029],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":155,"column":80,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":155,"endColumn":81,"fix":{"range":[5034,5034],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":163,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":163,"endColumn":4,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":167,"column":17,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":167,"endColumn":18,"fix":{"range":[5340,5340],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":167,"column":19,"nodeType":"ContinueStatement","messageId":"exceed","endLine":167,"endColumn":28,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":167,"column":29,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":167,"endColumn":30,"fix":{"range":[5351,5351],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":170,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":170,"endColumn":5,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":174,"column":4,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":174,"endColumn":6,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":175,"column":22,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":175,"endColumn":23,"fix":{"range":[5573,5573],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":175,"column":24,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":175,"endColumn":43,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":175,"column":44,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":175,"endColumn":45,"fix":{"range":[5594,5594],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":178,"column":37,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":178,"endColumn":38,"fix":{"range":[5693,5693],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":178,"column":39,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":178,"endColumn":77,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":178,"column":78,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":178,"endColumn":79,"fix":{"range":[5733,5733],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":179,"column":28,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":179,"endColumn":29,"fix":{"range":[5763,5763],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":179,"column":30,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":179,"endColumn":79,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":179,"column":80,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":179,"endColumn":81,"fix":{"range":[5814,5814],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":194,"column":34,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":194,"endColumn":35,"fix":{"range":[6192,6192],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":194,"column":36,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":194,"endColumn":101,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":194,"column":102,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":194,"endColumn":103,"fix":{"range":[6259,6259],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":199,"column":17,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":199,"endColumn":18,"fix":{"range":[6338,6338],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":199,"column":19,"nodeType":"ReturnStatement","messageId":"exceed","endLine":199,"endColumn":26,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":199,"column":27,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":199,"endColumn":28,"fix":{"range":[6347,6347],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"prefer-arrow-callback","severity":2,"message":"Unexpected function expression.","line":201,"column":31,"nodeType":"FunctionExpression","messageId":"preferArrowCallback","endLine":201,"endColumn":66,"fix":{"range":[6412,6423],"text":"() =>"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":201,"column":43,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":201,"endColumn":44,"fix":{"range":[6425,6425],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":201,"column":45,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":201,"endColumn":64,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":201,"column":65,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":201,"endColumn":66,"fix":{"range":[6446,6446],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":206,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":206,"endColumn":4,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":216,"column":62,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":216,"endColumn":63,"fix":{"range":[6934,6934],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":216,"column":64,"nodeType":"ReturnStatement","messageId":"exceed","endLine":216,"endColumn":71,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":216,"column":72,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":216,"endColumn":73,"fix":{"range":[6943,6943],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":218,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":218,"endColumn":4,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":220,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":220,"endColumn":4,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-underscore-dangle","severity":2,"message":"Unexpected dangling '_' in '__annotation'.","line":222,"column":14,"nodeType":"MemberExpression","messageId":"unexpectedUnderscore","endLine":222,"endColumn":37,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":223,"column":15,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":223,"endColumn":16,"fix":{"range":[7254,7254],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":223,"column":17,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":223,"endColumn":41,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":223,"column":42,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":223,"endColumn":43,"fix":{"range":[7280,7280],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":225,"column":29,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":225,"endColumn":30,"fix":{"range":[7315,7315],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":225,"column":31,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":225,"endColumn":63,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":225,"column":64,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":225,"endColumn":65,"fix":{"range":[7349,7349],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"prefer-arrow-callback","severity":2,"message":"Unexpected function expression.","line":228,"column":42,"nodeType":"FunctionExpression","messageId":"preferArrowCallback","endLine":246,"endColumn":3,"fix":{"range":[7396,7421],"text":"( cm, val, old ) =>"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '!==' and instead saw '!='.","line":229,"column":19,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":229,"endColumn":21,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":231,"column":56,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":231,"endColumn":57,"fix":{"range":[7542,7542],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":231,"column":58,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":231,"endColumn":87,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":231,"column":88,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":231,"endColumn":89,"fix":{"range":[7573,7573],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":239,"column":47,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":239,"endColumn":48,"fix":{"range":[7861,7861],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 3 statements. Maximum allowed is 1.","line":239,"column":49,"nodeType":"IfStatement","messageId":"exceed","endLine":239,"endColumn":107,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '===' and instead saw '=='.","line":239,"column":67,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":239,"endColumn":69,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":239,"column":82,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":239,"endColumn":83,"fix":{"range":[7896,7896],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":239,"column":106,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":239,"endColumn":107,"fix":{"range":[7919,7919],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":239,"column":108,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":239,"endColumn":109,"fix":{"range":[7921,7921],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":241,"column":48,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":241,"endColumn":49,"fix":{"range":[8063,8063],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":241,"column":50,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":241,"endColumn":78,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":241,"column":79,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":241,"endColumn":80,"fix":{"range":[8093,8093],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '!==' and instead saw '!='.","line":242,"column":32,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":242,"endColumn":34,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '!==' and instead saw '!='.","line":242,"column":67,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":242,"endColumn":69,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":242,"column":81,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":242,"endColumn":82,"fix":{"range":[8176,8176],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":242,"column":83,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":242,"endColumn":155,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":242,"column":156,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":242,"endColumn":157,"fix":{"range":[8250,8250],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":249,"column":26,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":249,"endColumn":27,"fix":{"range":[8371,8371],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":249,"column":28,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":249,"endColumn":49,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":249,"column":50,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":249,"endColumn":51,"fix":{"range":[8394,8394],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]}],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"arrow-parens","replacedBy":[]},{"ruleId":"arrow-spacing","replacedBy":[]},{"ruleId":"lines-between-class-members","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"template-curly-spacing","replacedBy":[]},{"ruleId":"implicit-arrow-linebreak","replacedBy":[]},{"ruleId":"array-bracket-spacing","replacedBy":[]},{"ruleId":"block-spacing","replacedBy":[]},{"ruleId":"brace-style","replacedBy":[]},{"ruleId":"comma-dangle","replacedBy":[]},{"ruleId":"comma-spacing","replacedBy":[]},{"ruleId":"comma-style","replacedBy":[]},{"ruleId":"computed-property-spacing","replacedBy":[]},{"ruleId":"dot-location","replacedBy":[]},{"ruleId":"eol-last","replacedBy":[]},{"ruleId":"func-call-spacing","replacedBy":[]},{"ruleId":"indent","replacedBy":[]},{"ruleId":"key-spacing","replacedBy":[]},{"ruleId":"keyword-spacing","replacedBy":[]},{"ruleId":"linebreak-style","replacedBy":[]},{"ruleId":"max-statements-per-line","replacedBy":[]},{"ruleId":"new-parens","replacedBy":[]},{"ruleId":"no-floating-decimal","replacedBy":[]},{"ruleId":"no-multi-spaces","replacedBy":[]},{"ruleId":"no-multiple-empty-lines","replacedBy":[]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"no-tabs","replacedBy":[]},{"ruleId":"no-trailing-spaces","replacedBy":[]},{"ruleId":"no-whitespace-before-property","replacedBy":[]},{"ruleId":"object-curly-spacing","replacedBy":[]},{"ruleId":"operator-linebreak","replacedBy":[]},{"ruleId":"quote-props","replacedBy":[]},{"ruleId":"quotes","replacedBy":[]},{"ruleId":"semi","replacedBy":[]},{"ruleId":"semi-spacing","replacedBy":[]},{"ruleId":"semi-style","replacedBy":[]},{"ruleId":"space-before-blocks","replacedBy":[]},{"ruleId":"space-before-function-paren","replacedBy":[]},{"ruleId":"space-in-parens","replacedBy":[]},{"ruleId":"space-infix-ops","replacedBy":[]},{"ruleId":"space-unary-ops","replacedBy":[]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"switch-colon-spacing","replacedBy":[]},{"ruleId":"wrap-iife","replacedBy":[]},{"ruleId":"no-extra-semi","replacedBy":[]},{"ruleId":"no-mixed-spaces-and-tabs","replacedBy":[]}]},{"filePath":"/src/repo/modules/lib/codemirror/show-hint.js","messages":[],"suppressedMessages":[{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":9,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":9,"endColumn":3,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":14,"column":20,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":14,"endColumn":21,"fix":{"range":[461,461],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":14,"column":22,"nodeType":"ReturnStatement","messageId":"exceed","endLine":14,"endColumn":52,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":14,"column":53,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":14,"endColumn":54,"fix":{"range":[493,493],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":15,"column":35,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":15,"endColumn":36,"fix":{"range":[530,530],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":15,"column":37,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":15,"endColumn":59,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":15,"column":60,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":15,"endColumn":61,"fix":{"range":[554,554],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":17,"column":18,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":17,"endColumn":19,"fix":{"range":[610,610],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 3 statements. Maximum allowed is 1.","line":17,"column":20,"nodeType":"ForInStatement","messageId":"exceed","endLine":17,"endColumn":86,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":17,"column":48,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":17,"endColumn":49,"fix":{"range":[640,640],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":17,"column":85,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":17,"endColumn":86,"fix":{"range":[676,676],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":17,"column":87,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":17,"endColumn":88,"fix":{"range":[678,678],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":24,"column":32,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":24,"endColumn":33,"fix":{"range":[926,926],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":24,"column":34,"nodeType":"ReturnStatement","messageId":"exceed","endLine":24,"endColumn":41,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":24,"column":42,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":24,"endColumn":43,"fix":{"range":[935,935],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":29,"column":43,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":29,"endColumn":44,"fix":{"range":[1193,1193],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":29,"column":45,"nodeType":"ReturnStatement","messageId":"exceed","endLine":29,"endColumn":52,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":29,"column":53,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":29,"endColumn":54,"fix":{"range":[1202,1202],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":31,"column":50,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":31,"endColumn":51,"fix":{"range":[1297,1297],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 3 statements. Maximum allowed is 1.","line":31,"column":52,"nodeType":"IfStatement","messageId":"exceed","endLine":31,"endColumn":127,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '!==' and instead saw '!='.","line":31,"column":83,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":31,"endColumn":85,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":31,"column":116,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":31,"endColumn":117,"fix":{"range":[1363,1363],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":31,"column":126,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":31,"endColumn":127,"fix":{"range":[1372,1372],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":31,"column":128,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":31,"endColumn":129,"fix":{"range":[1374,1374],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":34,"column":38,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":34,"endColumn":39,"fix":{"range":[1419,1419],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":34,"column":40,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":34,"endColumn":76,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":34,"column":77,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":34,"endColumn":78,"fix":{"range":[1457,1457],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":36,"column":35,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":36,"endColumn":36,"fix":{"range":[1576,1576],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":36,"column":37,"nodeType":"ReturnStatement","messageId":"exceed","endLine":36,"endColumn":44,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":36,"column":45,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":36,"endColumn":46,"fix":{"range":[1585,1585],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":43,"column":38,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":43,"endColumn":39,"fix":{"range":[1772,1772],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":43,"column":40,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":43,"endColumn":76,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":43,"column":77,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":43,"endColumn":78,"fix":{"range":[1810,1810],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":56,"column":60,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":56,"endColumn":61,"fix":{"range":[2183,2183],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":56,"column":62,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":56,"endColumn":84,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":56,"column":85,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":56,"endColumn":86,"fix":{"range":[2207,2207],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":62,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":62,"endColumn":3,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":66,"column":26,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":66,"endColumn":27,"fix":{"range":[2485,2485],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":66,"column":28,"nodeType":"ReturnStatement","messageId":"exceed","endLine":66,"endColumn":35,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":66,"column":36,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":66,"endColumn":37,"fix":{"range":[2494,2494],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":71,"column":36,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":71,"endColumn":37,"fix":{"range":[2651,2651],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":71,"column":38,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":71,"endColumn":78,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":71,"column":79,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":71,"endColumn":80,"fix":{"range":[2693,2693],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":72,"column":23,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":72,"endColumn":24,"fix":{"range":[2718,2718],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":72,"column":25,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":72,"endColumn":45,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":72,"column":46,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":72,"endColumn":47,"fix":{"range":[2740,2740],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '===' and instead saw '=='.","line":77,"column":42,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":77,"endColumn":44,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":82,"column":27,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":82,"endColumn":28,"fix":{"range":[2981,2981],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":82,"column":29,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":82,"endColumn":74,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":82,"column":75,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":82,"endColumn":76,"fix":{"range":[3028,3028],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '!==' and instead saw '!='.","line":97,"column":18,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":97,"endColumn":20,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '!==' and instead saw '!='.","line":97,"column":64,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":97,"endColumn":66,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"prefer-arrow-callback","severity":2,"message":"Unexpected function expression.","line":103,"column":44,"nodeType":"FunctionExpression","messageId":"preferArrowCallback","endLine":103,"endColumn":74,"fix":{"range":[3785,3796],"text":"() =>"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":103,"column":56,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":103,"endColumn":57,"fix":{"range":[3798,3798],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":103,"column":58,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":103,"endColumn":72,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":103,"column":73,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":103,"endColumn":74,"fix":{"range":[3814,3814],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":104,"column":24,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":104,"endColumn":25,"fix":{"range":[3843,3843],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":104,"column":26,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":104,"endColumn":48,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":104,"column":49,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":104,"endColumn":50,"fix":{"range":[3867,3867],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '===' and instead saw '=='.","line":109,"column":19,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":109,"endColumn":21,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":109,"column":29,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":109,"endColumn":30,"fix":{"range":[3940,3940],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":109,"column":31,"nodeType":"ReturnStatement","messageId":"exceed","endLine":109,"endColumn":38,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":109,"column":39,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":109,"endColumn":40,"fix":{"range":[3949,3949],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"prefer-arrow-callback","severity":2,"message":"Unexpected function expression.","line":111,"column":58,"nodeType":"FunctionExpression","messageId":"preferArrowCallback","endLine":113,"endColumn":5,"fix":{"range":[4050,4067],"text":"( data ) =>"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '===' and instead saw '=='.","line":112,"column":20,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":112,"endColumn":22,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":112,"column":32,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":112,"endColumn":33,"fix":{"range":[4102,4102],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":112,"column":34,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":112,"endColumn":67,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":112,"column":68,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":112,"endColumn":69,"fix":{"range":[4137,4137],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":117,"column":21,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":117,"endColumn":22,"fix":{"range":[4217,4217],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":117,"column":23,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":117,"endColumn":64,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":117,"column":65,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":117,"endColumn":66,"fix":{"range":[4260,4260],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":120,"column":23,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":120,"endColumn":24,"fix":{"range":[4385,4385],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":120,"column":25,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":120,"endColumn":45,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":120,"column":46,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":120,"endColumn":47,"fix":{"range":[4407,4407],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '===' and instead saw '=='.","line":125,"column":37,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":125,"endColumn":39,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":137,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":137,"endColumn":4,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'prop' declared on line 140 column 14 is used outside of binding context.","line":138,"column":13,"nodeType":"Identifier","messageId":"outOfScope","endLine":138,"endColumn":17,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'prop' declared on line 143 column 14 is used outside of binding context.","line":138,"column":13,"nodeType":"Identifier","messageId":"outOfScope","endLine":138,"endColumn":17,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-use-before-define","severity":2,"message":"'defaultOptions' was used before it was defined.","line":138,"column":21,"nodeType":"Identifier","messageId":"usedBeforeDefined","endLine":138,"endColumn":35,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":138,"column":38,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":138,"endColumn":39,"fix":{"range":[4795,4795],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":138,"column":40,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":138,"endColumn":77,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'prop' declared on line 140 column 14 is used outside of binding context.","line":138,"column":45,"nodeType":"Identifier","messageId":"outOfScope","endLine":138,"endColumn":49,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'prop' declared on line 143 column 14 is used outside of binding context.","line":138,"column":45,"nodeType":"Identifier","messageId":"outOfScope","endLine":138,"endColumn":49,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-use-before-define","severity":2,"message":"'defaultOptions' was used before it was defined.","line":138,"column":54,"nodeType":"Identifier","messageId":"usedBeforeDefined","endLine":138,"endColumn":68,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'prop' declared on line 140 column 14 is used outside of binding context.","line":138,"column":70,"nodeType":"Identifier","messageId":"outOfScope","endLine":138,"endColumn":74,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'prop' declared on line 143 column 14 is used outside of binding context.","line":138,"column":70,"nodeType":"Identifier","messageId":"outOfScope","endLine":138,"endColumn":74,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":138,"column":78,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":138,"endColumn":79,"fix":{"range":[4834,4834],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-redeclare","severity":2,"message":"'prop' is already defined.","line":140,"column":14,"nodeType":"Identifier","messageId":"redeclared","endLine":140,"endColumn":18,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'prop' declared on line 138 column 13 is used outside of binding context.","line":140,"column":14,"nodeType":"Identifier","messageId":"outOfScope","endLine":140,"endColumn":18,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'prop' declared on line 143 column 14 is used outside of binding context.","line":140,"column":14,"nodeType":"Identifier","messageId":"outOfScope","endLine":140,"endColumn":18,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":140,"column":31,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":140,"endColumn":32,"fix":{"range":[4885,4885],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 3 statements. Maximum allowed is 1.","line":140,"column":33,"nodeType":"IfStatement","messageId":"exceed","endLine":140,"endColumn":102,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'prop' declared on line 138 column 13 is used outside of binding context.","line":140,"column":46,"nodeType":"Identifier","messageId":"outOfScope","endLine":140,"endColumn":50,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'prop' declared on line 143 column 14 is used outside of binding context.","line":140,"column":46,"nodeType":"Identifier","messageId":"outOfScope","endLine":140,"endColumn":50,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":140,"column":69,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":140,"endColumn":70,"fix":{"range":[4923,4923],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'prop' declared on line 138 column 13 is used outside of binding context.","line":140,"column":76,"nodeType":"Identifier","messageId":"outOfScope","endLine":140,"endColumn":80,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'prop' declared on line 143 column 14 is used outside of binding context.","line":140,"column":76,"nodeType":"Identifier","messageId":"outOfScope","endLine":140,"endColumn":80,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'prop' declared on line 138 column 13 is used outside of binding context.","line":140,"column":93,"nodeType":"Identifier","messageId":"outOfScope","endLine":140,"endColumn":97,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'prop' declared on line 143 column 14 is used outside of binding context.","line":140,"column":93,"nodeType":"Identifier","messageId":"outOfScope","endLine":140,"endColumn":97,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":140,"column":101,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":140,"endColumn":102,"fix":{"range":[4954,4954],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":140,"column":103,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":140,"endColumn":104,"fix":{"range":[4956,4956],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-redeclare","severity":2,"message":"'prop' is already defined.","line":143,"column":14,"nodeType":"Identifier","messageId":"redeclared","endLine":143,"endColumn":18,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'prop' declared on line 138 column 13 is used outside of binding context.","line":143,"column":14,"nodeType":"Identifier","messageId":"outOfScope","endLine":143,"endColumn":18,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'prop' declared on line 140 column 14 is used outside of binding context.","line":143,"column":14,"nodeType":"Identifier","messageId":"outOfScope","endLine":143,"endColumn":18,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":143,"column":32,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":143,"endColumn":33,"fix":{"range":[5013,5013],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 3 statements. Maximum allowed is 1.","line":143,"column":34,"nodeType":"IfStatement","messageId":"exceed","endLine":143,"endColumn":105,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'prop' declared on line 138 column 13 is used outside of binding context.","line":143,"column":48,"nodeType":"Identifier","messageId":"outOfScope","endLine":143,"endColumn":52,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'prop' declared on line 140 column 14 is used outside of binding context.","line":143,"column":48,"nodeType":"Identifier","messageId":"outOfScope","endLine":143,"endColumn":52,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":143,"column":71,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":143,"endColumn":72,"fix":{"range":[5052,5052],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'prop' declared on line 138 column 13 is used outside of binding context.","line":143,"column":78,"nodeType":"Identifier","messageId":"outOfScope","endLine":143,"endColumn":82,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'prop' declared on line 140 column 14 is used outside of binding context.","line":143,"column":78,"nodeType":"Identifier","messageId":"outOfScope","endLine":143,"endColumn":82,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'prop' declared on line 138 column 13 is used outside of binding context.","line":143,"column":96,"nodeType":"Identifier","messageId":"outOfScope","endLine":143,"endColumn":100,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'prop' declared on line 140 column 14 is used outside of binding context.","line":143,"column":96,"nodeType":"Identifier","messageId":"outOfScope","endLine":143,"endColumn":100,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":143,"column":104,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":143,"endColumn":105,"fix":{"range":[5084,5084],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":143,"column":106,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":143,"endColumn":107,"fix":{"range":[5086,5086],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":145,"column":27,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":145,"endColumn":28,"fix":{"range":[5119,5119],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":145,"column":29,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":145,"endColumn":68,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":145,"column":69,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":145,"endColumn":70,"fix":{"range":[5160,5160],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":150,"column":41,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":150,"endColumn":42,"fix":{"range":[5255,5255],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 3 statements. Maximum allowed is 1.","line":150,"column":43,"nodeType":"ReturnStatement","messageId":"exceed","endLine":150,"endColumn":61,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":150,"column":62,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":150,"endColumn":63,"fix":{"range":[5275,5275],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":150,"column":69,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":150,"endColumn":70,"fix":{"range":[5283,5283],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":150,"column":95,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":150,"endColumn":96,"fix":{"range":[5308,5308],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":155,"column":21,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":155,"endColumn":22,"fix":{"range":[5399,5399],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":155,"column":47,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":155,"endColumn":48,"fix":{"range":[5424,5424],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":156,"column":23,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":156,"endColumn":24,"fix":{"range":[5450,5450],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":156,"column":48,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":156,"endColumn":49,"fix":{"range":[5474,5474],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":157,"column":25,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":157,"endColumn":26,"fix":{"range":[5502,5502],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":157,"column":77,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":157,"endColumn":78,"fix":{"range":[5553,5553],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":158,"column":27,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":158,"endColumn":28,"fix":{"range":[5583,5583],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":158,"column":78,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":158,"endColumn":79,"fix":{"range":[5633,5633],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":159,"column":23,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":159,"endColumn":24,"fix":{"range":[5659,5659],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":159,"column":47,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":159,"endColumn":48,"fix":{"range":[5682,5682],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":160,"column":22,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":160,"endColumn":23,"fix":{"range":[5707,5707],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":160,"column":62,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":160,"endColumn":63,"fix":{"range":[5746,5746],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":166,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":166,"endColumn":4,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":169,"column":38,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":169,"endColumn":39,"fix":{"range":[5921,5921],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":169,"column":40,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":169,"endColumn":63,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":169,"column":64,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":169,"endColumn":65,"fix":{"range":[5946,5946],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":170,"column":38,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":170,"endColumn":39,"fix":{"range":[5987,5987],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":170,"column":40,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":170,"endColumn":62,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":170,"column":63,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":170,"endColumn":64,"fix":{"range":[6011,6011],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":174,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":174,"endColumn":4,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-shadow","severity":2,"message":"'key' is already declared in the upper scope on line 183 column 14.","line":175,"column":24,"nodeType":"Identifier","messageId":"noShadow","endLine":175,"endColumn":27,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":177,"column":35,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":177,"endColumn":36,"fix":{"range":[6185,6185],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 3 statements. Maximum allowed is 1.","line":177,"column":37,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":177,"endColumn":91,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":177,"column":61,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":177,"endColumn":62,"fix":{"range":[6211,6211],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":177,"column":89,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":177,"endColumn":90,"fix":{"range":[6238,6238],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace does not appear on the same line as the subsequent block.","line":177,"column":92,"nodeType":"Punctuator","messageId":"nextLineClose","endLine":177,"endColumn":93,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":177,"column":92,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":177,"endColumn":93,"fix":{"range":[6241,6241],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-prototype-builtins","severity":2,"message":"Do not access Object.prototype method 'hasOwnProperty' from target object.","line":179,"column":22,"nodeType":"CallExpression","messageId":"prototypeBuildIn","endLine":179,"endColumn":36,"suggestions":[{"messageId":"callObjectPrototype","data":{"prop":"hasOwnProperty"},"fix":{"range":[6291,6314],"text":"Object.prototype.hasOwnProperty.call(baseMap, "},"desc":"Call Object.prototype.hasOwnProperty explicitly."}],"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":179,"column":46,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":179,"endColumn":47,"fix":{"range":[6324,6324],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 3 statements. Maximum allowed is 1.","line":179,"column":48,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":179,"endColumn":71,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":179,"column":72,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":179,"endColumn":73,"fix":{"range":[6349,6349],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":179,"column":79,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":179,"endColumn":80,"fix":{"range":[6357,6357],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":179,"column":94,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":179,"endColumn":95,"fix":{"range":[6371,6371],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'key' declared on line 189 column 14 is used outside of binding context.","line":183,"column":14,"nodeType":"Identifier","messageId":"outOfScope","endLine":183,"endColumn":17,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-prototype-builtins","severity":2,"message":"Do not access Object.prototype method 'hasOwnProperty' from target object.","line":184,"column":17,"nodeType":"CallExpression","messageId":"prototypeBuildIn","endLine":184,"endColumn":31,"suggestions":[{"messageId":"callObjectPrototype","data":{"prop":"hasOwnProperty"},"fix":{"range":[6461,6483],"text":"Object.prototype.hasOwnProperty.call(custom, "},"desc":"Call Object.prototype.hasOwnProperty explicitly."}],"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'key' declared on line 189 column 14 is used outside of binding context.","line":184,"column":33,"nodeType":"Identifier","messageId":"outOfScope","endLine":184,"endColumn":36,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":184,"column":41,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":184,"endColumn":42,"fix":{"range":[6493,6493],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":184,"column":43,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":184,"endColumn":76,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'key' declared on line 189 column 14 is used outside of binding context.","line":184,"column":55,"nodeType":"Identifier","messageId":"outOfScope","endLine":184,"endColumn":58,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'key' declared on line 189 column 14 is used outside of binding context.","line":184,"column":68,"nodeType":"Identifier","messageId":"outOfScope","endLine":184,"endColumn":71,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":184,"column":77,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":184,"endColumn":78,"fix":{"range":[6528,6528],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-redeclare","severity":2,"message":"'key' is already defined.","line":189,"column":14,"nodeType":"Identifier","messageId":"redeclared","endLine":189,"endColumn":17,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'key' declared on line 183 column 14 is used outside of binding context.","line":189,"column":14,"nodeType":"Identifier","messageId":"outOfScope","endLine":189,"endColumn":17,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-prototype-builtins","severity":2,"message":"Do not access Object.prototype method 'hasOwnProperty' from target object.","line":190,"column":16,"nodeType":"CallExpression","messageId":"prototypeBuildIn","endLine":190,"endColumn":30,"suggestions":[{"messageId":"callObjectPrototype","data":{"prop":"hasOwnProperty"},"fix":{"range":[6639,6660],"text":"Object.prototype.hasOwnProperty.call(extra, "},"desc":"Call Object.prototype.hasOwnProperty explicitly."}],"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'key' declared on line 183 column 14 is used outside of binding context.","line":190,"column":32,"nodeType":"Identifier","messageId":"outOfScope","endLine":190,"endColumn":35,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":190,"column":40,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":190,"endColumn":41,"fix":{"range":[6670,6670],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":190,"column":42,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":190,"endColumn":74,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'key' declared on line 183 column 14 is used outside of binding context.","line":190,"column":54,"nodeType":"Identifier","messageId":"outOfScope","endLine":190,"endColumn":57,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'key' declared on line 183 column 14 is used outside of binding context.","line":190,"column":66,"nodeType":"Identifier","messageId":"outOfScope","endLine":190,"endColumn":69,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":190,"column":75,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":190,"endColumn":76,"fix":{"range":[6704,6704],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '!==' and instead saw '!='.","line":197,"column":20,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":197,"endColumn":22,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '===' and instead saw '=='.","line":198,"column":61,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":198,"endColumn":63,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":198,"column":79,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":198,"endColumn":80,"fix":{"range":[6901,6901],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":198,"column":81,"nodeType":"ReturnStatement","messageId":"exceed","endLine":198,"endColumn":91,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":198,"column":92,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":198,"endColumn":93,"fix":{"range":[6913,6913],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":208,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":208,"endColumn":4,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":209,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":209,"endColumn":4,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":211,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":211,"endColumn":4,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":212,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":212,"endColumn":4,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"mediawiki/class-doc","severity":2,"message":"All possible CSS classes should be documented. See https://w.wiki/PS2 for details.","line":213,"column":3,"nodeType":"AssignmentExpression","endLine":213,"endColumn":48,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":219,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":219,"endColumn":5,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '!==' and instead saw '!='.","line":219,"column":42,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":219,"endColumn":44,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '!==' and instead saw '!='.","line":220,"column":23,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":220,"endColumn":25,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":220,"column":33,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":220,"endColumn":34,"fix":{"range":[7741,7741],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":220,"column":35,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":220,"endColumn":79,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":220,"column":80,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":220,"endColumn":81,"fix":{"range":[7787,7787],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"mediawiki/class-doc","severity":2,"message":"All possible CSS classes should be documented. See https://w.wiki/PS2 for details.","line":221,"column":4,"nodeType":"AssignmentExpression","endLine":221,"endColumn":29,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":222,"column":22,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":222,"endColumn":23,"fix":{"range":[7841,7841],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 3 statements. Maximum allowed is 1.","line":222,"column":24,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":222,"endColumn":53,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":222,"column":54,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":222,"endColumn":55,"fix":{"range":[7872,7872],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":222,"column":61,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":222,"endColumn":62,"fix":{"range":[7880,7880],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":222,"column":149,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":222,"endColumn":150,"fix":{"range":[7967,7967],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":227,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":227,"endColumn":4,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":232,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":232,"endColumn":4,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":235,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":235,"endColumn":4,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":236,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":236,"endColumn":4,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '!==' and instead saw '!='.","line":247,"column":23,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":247,"endColumn":25,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":263,"column":71,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":263,"endColumn":72,"fix":{"range":[9745,9745],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":263,"column":73,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":263,"endColumn":132,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":263,"column":133,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":263,"endColumn":134,"fix":{"range":[9806,9806],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":267,"column":41,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":267,"endColumn":42,"fix":{"range":[9911,9911],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":267,"column":102,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":267,"endColumn":103,"fix":{"range":[9971,9971],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":268,"column":29,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":268,"endColumn":30,"fix":{"range":[10003,10003],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":268,"column":57,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":268,"endColumn":58,"fix":{"range":[10030,10030],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":269,"column":26,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":269,"endColumn":27,"fix":{"range":[10059,10059],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":269,"column":58,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":269,"endColumn":59,"fix":{"range":[10090,10090],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":271,"column":23,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":271,"endColumn":24,"fix":{"range":[10147,10147],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":271,"column":45,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":271,"endColumn":46,"fix":{"range":[10168,10168],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":272,"column":22,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":272,"endColumn":23,"fix":{"range":[10193,10193],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":272,"column":39,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":272,"endColumn":40,"fix":{"range":[10209,10209],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":278,"column":45,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":278,"endColumn":46,"fix":{"range":[10348,10348],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 3 statements. Maximum allowed is 1.","line":278,"column":47,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":278,"endColumn":118,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"prefer-arrow-callback","severity":2,"message":"Unexpected function expression.","line":278,"column":75,"nodeType":"FunctionExpression","messageId":"preferArrowCallback","endLine":278,"endColumn":110,"fix":{"range":[10377,10388],"text":"() =>"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":278,"column":87,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":278,"endColumn":88,"fix":{"range":[10390,10390],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":278,"column":109,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":278,"endColumn":110,"fix":{"range":[10411,10411],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":278,"column":119,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":278,"endColumn":120,"fix":{"range":[10421,10421],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":279,"column":47,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":279,"endColumn":48,"fix":{"range":[10473,10473],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":279,"column":49,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":279,"endColumn":79,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":279,"column":80,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":279,"endColumn":81,"fix":{"range":[10505,10505],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":284,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":284,"endColumn":5,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":285,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":285,"endColumn":5,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":286,"column":18,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":286,"endColumn":19,"fix":{"range":[10850,10850],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":286,"column":20,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":286,"endColumn":48,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":286,"column":49,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":286,"endColumn":50,"fix":{"range":[10880,10880],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":287,"column":57,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":287,"endColumn":58,"fix":{"range":[10939,10939],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":287,"column":59,"nodeType":"ReturnStatement","messageId":"exceed","endLine":287,"endColumn":85,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":287,"column":86,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":287,"endColumn":87,"fix":{"range":[10967,10967],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"prefer-arrow-callback","severity":2,"message":"Unexpected function expression.","line":292,"column":37,"nodeType":"FunctionExpression","messageId":"preferArrowCallback","endLine":295,"endColumn":4,"fix":{"range":[11124,11138],"text":"( e ) =>"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '!==' and instead saw '!='.","line":294,"column":23,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":294,"endColumn":25,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":294,"column":33,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":294,"endColumn":34,"fix":{"range":[11236,11236],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 3 statements. Maximum allowed is 1.","line":294,"column":35,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":294,"endColumn":67,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":294,"column":83,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":294,"endColumn":84,"fix":{"range":[11285,11285],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"prefer-arrow-callback","severity":2,"message":"Unexpected function expression.","line":297,"column":34,"nodeType":"FunctionExpression","messageId":"preferArrowCallback","endLine":303,"endColumn":4,"fix":{"range":[11328,11342],"text":"( e ) =>"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '!==' and instead saw '!='.","line":299,"column":23,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":299,"endColumn":25,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":301,"column":53,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":301,"endColumn":54,"fix":{"range":[11531,11531],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":301,"column":55,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":301,"endColumn":69,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":301,"column":70,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":301,"endColumn":71,"fix":{"range":[11547,11547],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"prefer-arrow-callback","severity":2,"message":"Unexpected function expression.","line":305,"column":38,"nodeType":"FunctionExpression","messageId":"preferArrowCallback","endLine":307,"endColumn":4,"fix":{"range":[11599,11610],"text":"() =>"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"prefer-arrow-callback","severity":2,"message":"Unexpected function expression.","line":306,"column":16,"nodeType":"FunctionExpression","messageId":"preferArrowCallback","endLine":306,"endColumn":43,"fix":{"range":[11628,11639],"text":"() =>"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":306,"column":28,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":306,"endColumn":29,"fix":{"range":[11641,11641],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":306,"column":30,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":306,"endColumn":41,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":306,"column":42,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":306,"endColumn":43,"fix":{"range":[11654,11654],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '!==' and instead saw '!='.","line":315,"column":32,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":315,"endColumn":34,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":315,"column":42,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":315,"endColumn":43,"fix":{"range":[11889,11889],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":315,"column":44,"nodeType":"ReturnStatement","messageId":"exceed","endLine":315,"endColumn":51,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":315,"column":52,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":315,"endColumn":53,"fix":{"range":[11898,11898],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":331,"column":39,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":331,"endColumn":40,"fix":{"range":[12379,12379],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":331,"column":41,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":331,"endColumn":62,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":331,"column":63,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":331,"endColumn":64,"fix":{"range":[12402,12402],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":340,"column":38,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":340,"endColumn":39,"fix":{"range":[12628,12628],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 4 statements. Maximum allowed is 1.","line":340,"column":40,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":340,"endColumn":86,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":340,"column":87,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":340,"endColumn":88,"fix":{"range":[12676,12676],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":340,"column":107,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":340,"endColumn":108,"fix":{"range":[12697,12697],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":340,"column":156,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":340,"endColumn":157,"fix":{"range":[12745,12745],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '===' and instead saw '=='.","line":341,"column":27,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":341,"endColumn":29,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":341,"column":34,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":341,"endColumn":35,"fix":{"range":[12781,12781],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":341,"column":36,"nodeType":"ReturnStatement","messageId":"exceed","endLine":341,"endColumn":43,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":341,"column":44,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":341,"endColumn":45,"fix":{"range":[12790,12790],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":343,"column":16,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":343,"endColumn":17,"fix":{"range":[12866,12866],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"mediawiki/class-doc","severity":2,"message":"All possible CSS classes should be documented. See https://w.wiki/PS2 for details.","line":343,"column":18,"nodeType":"AssignmentExpression","endLine":343,"endColumn":96,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":343,"column":18,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":343,"endColumn":97,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":343,"column":98,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":343,"endColumn":99,"fix":{"range":[12947,12947],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"mediawiki/class-doc","severity":2,"message":"All possible CSS classes should be documented. See https://w.wiki/PS2 for details.","line":345,"column":4,"nodeType":"AssignmentExpression","endLine":345,"endColumn":53,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":346,"column":49,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":346,"endColumn":50,"fix":{"range":[13110,13110],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 4 statements. Maximum allowed is 1.","line":346,"column":51,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":346,"endColumn":93,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":346,"column":94,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":346,"endColumn":95,"fix":{"range":[13154,13154],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":346,"column":192,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":346,"endColumn":193,"fix":{"range":[13253,13253],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":346,"column":283,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":346,"endColumn":284,"fix":{"range":[13343,13343],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":356,"column":34,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":356,"endColumn":35,"fix":{"range":[13648,13648],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":356,"column":36,"nodeType":"ReturnStatement","messageId":"exceed","endLine":356,"endColumn":51,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":356,"column":52,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":356,"endColumn":53,"fix":{"range":[13665,13665],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":358,"column":46,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":358,"endColumn":47,"fix":{"range":[13732,13732],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 3 statements. Maximum allowed is 1.","line":358,"column":48,"nodeType":"IfStatement","messageId":"exceed","endLine":358,"endColumn":118,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":358,"column":86,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":358,"endColumn":87,"fix":{"range":[13772,13772],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":358,"column":117,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":358,"endColumn":118,"fix":{"range":[13802,13802],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":358,"column":119,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":358,"endColumn":120,"fix":{"range":[13804,13804],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":367,"column":33,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":367,"endColumn":34,"fix":{"range":[14018,14018],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 3 statements. Maximum allowed is 1.","line":367,"column":35,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":367,"endColumn":59,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":367,"column":60,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":367,"endColumn":61,"fix":{"range":[14044,14044],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":367,"column":67,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":367,"endColumn":68,"fix":{"range":[14052,14052],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":367,"column":89,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":367,"endColumn":90,"fix":{"range":[14073,14073],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-shadow","severity":2,"message":"'cm' is already declared in the upper scope on line 371 column 29.","line":374,"column":30,"nodeType":"Identifier","messageId":"noShadow","endLine":374,"endColumn":32,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '===' and instead saw '=='.","line":377,"column":13,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":377,"endColumn":15,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":377,"column":29,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":377,"endColumn":30,"fix":{"range":[14358,14358],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":377,"column":31,"nodeType":"ReturnStatement","messageId":"exceed","endLine":377,"endColumn":55,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":377,"column":56,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":377,"endColumn":57,"fix":{"range":[14384,14384],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"prefer-arrow-callback","severity":2,"message":"Unexpected function expression.","line":378,"column":41,"nodeType":"FunctionExpression","messageId":"preferArrowCallback","endLine":380,"endColumn":7,"fix":{"range":[14426,14445],"text":"( result ) =>"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":379,"column":47,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":379,"endColumn":48,"fix":{"range":[14495,14495],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 3 statements. Maximum allowed is 1.","line":379,"column":49,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":379,"endColumn":68,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":379,"column":69,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":379,"endColumn":70,"fix":{"range":[14516,14516],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":379,"column":76,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":379,"endColumn":77,"fix":{"range":[14524,14524],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":379,"column":92,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":379,"endColumn":93,"fix":{"range":[14539,14539],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-cond-assign","severity":2,"message":"Expected a conditional expression and instead saw an assignment.","line":387,"column":15,"nodeType":"AssignmentExpression","messageId":"missing","endLine":387,"endColumn":66,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-shadow","severity":2,"message":"'cm' is already declared in the upper scope on line 371 column 29.","line":388,"column":22,"nodeType":"Identifier","messageId":"noShadow","endLine":388,"endColumn":24,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":388,"column":27,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":388,"endColumn":28,"fix":{"range":[14758,14758],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":388,"column":29,"nodeType":"ReturnStatement","messageId":"exceed","endLine":388,"endColumn":85,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":388,"column":86,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":388,"endColumn":87,"fix":{"range":[14816,14816],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-shadow","severity":2,"message":"'cm' is already declared in the upper scope on line 371 column 29.","line":390,"column":22,"nodeType":"Identifier","messageId":"noShadow","endLine":390,"endColumn":24,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":390,"column":36,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":390,"endColumn":37,"fix":{"range":[14897,14897],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":390,"column":38,"nodeType":"ReturnStatement","messageId":"exceed","endLine":390,"endColumn":84,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":390,"column":85,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":390,"endColumn":86,"fix":{"range":[14945,14945],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"prefer-arrow-callback","severity":2,"message":"Unexpected function expression.","line":400,"column":49,"nodeType":"FunctionExpression","messageId":"preferArrowCallback","endLine":416,"endColumn":3,"fix":{"range":[15122,15146],"text":"( cm, options ) =>"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":402,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":402,"endColumn":4,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"unicorn/prefer-string-slice","severity":2,"message":"Prefer `String#slice()` over `String#substr()`.","line":404,"column":11,"nodeType":"CallExpression","messageId":"substr","endLine":404,"endColumn":57,"fix":{"range":[15393,15424],"text":"slice( 0, Math.max(0, cur.ch - token.start)"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '===' and instead saw '=='.","line":412,"column":38,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":412,"endColumn":40,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":412,"column":48,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":412,"endColumn":49,"fix":{"range":[15625,15625],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":412,"column":50,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":412,"endColumn":69,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":412,"column":70,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":412,"endColumn":71,"fix":{"range":[15646,15646],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":415,"column":23,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":415,"endColumn":24,"fix":{"range":[15676,15676],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":415,"column":25,"nodeType":"ReturnStatement","messageId":"exceed","endLine":415,"endColumn":68,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":415,"column":69,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":415,"endColumn":70,"fix":{"range":[15721,15721],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\[.","line":424,"column":26,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":424,"endColumn":27,"suggestions":[{"messageId":"removeEscape","fix":{"range":[15914,15915],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[15914,15914],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}],"suppressions":[{"kind":"directive","justification":""}]}],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"arrow-parens","replacedBy":[]},{"ruleId":"arrow-spacing","replacedBy":[]},{"ruleId":"lines-between-class-members","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"template-curly-spacing","replacedBy":[]},{"ruleId":"implicit-arrow-linebreak","replacedBy":[]},{"ruleId":"array-bracket-spacing","replacedBy":[]},{"ruleId":"block-spacing","replacedBy":[]},{"ruleId":"brace-style","replacedBy":[]},{"ruleId":"comma-dangle","replacedBy":[]},{"ruleId":"comma-spacing","replacedBy":[]},{"ruleId":"comma-style","replacedBy":[]},{"ruleId":"computed-property-spacing","replacedBy":[]},{"ruleId":"dot-location","replacedBy":[]},{"ruleId":"eol-last","replacedBy":[]},{"ruleId":"func-call-spacing","replacedBy":[]},{"ruleId":"indent","replacedBy":[]},{"ruleId":"key-spacing","replacedBy":[]},{"ruleId":"keyword-spacing","replacedBy":[]},{"ruleId":"linebreak-style","replacedBy":[]},{"ruleId":"max-statements-per-line","replacedBy":[]},{"ruleId":"new-parens","replacedBy":[]},{"ruleId":"no-floating-decimal","replacedBy":[]},{"ruleId":"no-multi-spaces","replacedBy":[]},{"ruleId":"no-multiple-empty-lines","replacedBy":[]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"no-tabs","replacedBy":[]},{"ruleId":"no-trailing-spaces","replacedBy":[]},{"ruleId":"no-whitespace-before-property","replacedBy":[]},{"ruleId":"object-curly-spacing","replacedBy":[]},{"ruleId":"operator-linebreak","replacedBy":[]},{"ruleId":"quote-props","replacedBy":[]},{"ruleId":"quotes","replacedBy":[]},{"ruleId":"semi","replacedBy":[]},{"ruleId":"semi-spacing","replacedBy":[]},{"ruleId":"semi-style","replacedBy":[]},{"ruleId":"space-before-blocks","replacedBy":[]},{"ruleId":"space-before-function-paren","replacedBy":[]},{"ruleId":"space-in-parens","replacedBy":[]},{"ruleId":"space-infix-ops","replacedBy":[]},{"ruleId":"space-unary-ops","replacedBy":[]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"switch-colon-spacing","replacedBy":[]},{"ruleId":"wrap-iife","replacedBy":[]},{"ruleId":"no-extra-semi","replacedBy":[]},{"ruleId":"no-mixed-spaces-and-tabs","replacedBy":[]}]},{"filePath":"/src/repo/modules/lib/codemirror/xml-hint.js","messages":[],"suppressedMessages":[{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":11,"column":24,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":11,"endColumn":25,"fix":{"range":[296,296],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 3 statements. Maximum allowed is 1.","line":11,"column":26,"nodeType":"ReturnStatement","messageId":"exceed","endLine":11,"endColumn":60,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"unicorn/prefer-includes","severity":2,"message":"Use `.includes()`, rather than `.indexOf()`, when checking for existence.","line":11,"column":38,"nodeType":"Identifier","messageId":"prefer-includes","endLine":11,"endColumn":45,"fix":{"range":[304,330],"text":"hint.includes(typed)"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":11,"column":61,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":11,"endColumn":62,"fix":{"range":[332,332],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":11,"column":68,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":11,"endColumn":69,"fix":{"range":[340,340],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '===' and instead saw '=='.","line":11,"column":106,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":11,"endColumn":108,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":11,"column":112,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":11,"endColumn":113,"fix":{"range":[383,383],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":16,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":16,"endColumn":4,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":17,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":17,"endColumn":4,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":18,"column":16,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":18,"endColumn":17,"fix":{"range":[590,590],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":18,"column":18,"nodeType":"ReturnStatement","messageId":"exceed","endLine":18,"endColumn":25,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":18,"column":26,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":18,"endColumn":27,"fix":{"range":[599,599],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '!==' and instead saw '!='.","line":25,"column":24,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":25,"endColumn":26,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":25,"column":35,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":25,"endColumn":36,"fix":{"range":[881,881],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":25,"column":37,"nodeType":"ReturnStatement","messageId":"exceed","endLine":25,"endColumn":44,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":25,"column":45,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":25,"endColumn":46,"fix":{"range":[890,890],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":27,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":27,"endColumn":4,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":28,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":28,"endColumn":4,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'before' declared on line 69 column 9 is used outside of binding context.","line":31,"column":8,"nodeType":"Identifier","messageId":"outOfScope","endLine":31,"endColumn":14,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":32,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":32,"endColumn":5,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'before' declared on line 69 column 9 is used outside of binding context.","line":32,"column":28,"nodeType":"Identifier","messageId":"outOfScope","endLine":32,"endColumn":34,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'before' declared on line 69 column 9 is used outside of binding context.","line":32,"column":60,"nodeType":"Identifier","messageId":"outOfScope","endLine":32,"endColumn":66,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":33,"column":19,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":33,"endColumn":20,"fix":{"range":[1285,1285],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":33,"column":21,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":33,"endColumn":77,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '===' and instead saw '=='.","line":33,"column":56,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":33,"endColumn":58,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":33,"column":78,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":33,"endColumn":79,"fix":{"range":[1343,1343],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '===' and instead saw '=='.","line":34,"column":35,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":34,"endColumn":37,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'tagType' declared on line 32 column 5 is used outside of binding context.","line":35,"column":4,"nodeType":"Identifier","messageId":"outOfScope","endLine":35,"endColumn":11,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '===' and instead saw '=='.","line":36,"column":35,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":36,"endColumn":37,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'tagType' declared on line 32 column 5 is used outside of binding context.","line":37,"column":4,"nodeType":"Identifier","messageId":"outOfScope","endLine":37,"endColumn":11,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'tagType' declared on line 32 column 5 is used outside of binding context.","line":40,"column":40,"nodeType":"Identifier","messageId":"outOfScope","endLine":40,"endColumn":47,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":41,"column":19,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":41,"endColumn":20,"fix":{"range":[1554,1554],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":41,"column":21,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":41,"endColumn":43,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":41,"column":44,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":41,"endColumn":45,"fix":{"range":[1578,1578],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'tagType' declared on line 32 column 5 is used outside of binding context.","line":42,"column":19,"nodeType":"Identifier","messageId":"outOfScope","endLine":42,"endColumn":26,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'curTag' declared on line 57 column 8 is used outside of binding context.","line":43,"column":34,"nodeType":"Identifier","messageId":"outOfScope","endLine":43,"endColumn":40,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":44,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":44,"endColumn":5,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'curTag' declared on line 57 column 8 is used outside of binding context.","line":44,"column":22,"nodeType":"Identifier","messageId":"outOfScope","endLine":44,"endColumn":28,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'curTag' declared on line 57 column 8 is used outside of binding context.","line":44,"column":32,"nodeType":"Identifier","messageId":"outOfScope","endLine":44,"endColumn":38,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'tagType' declared on line 32 column 5 is used outside of binding context.","line":45,"column":22,"nodeType":"Identifier","messageId":"outOfScope","endLine":45,"endColumn":29,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '!==' and instead saw '!='.","line":45,"column":30,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":45,"endColumn":32,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'i' declared on line 93 column 15 is used outside of binding context.","line":46,"column":15,"nodeType":"Identifier","messageId":"outOfScope","endLine":46,"endColumn":16,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'i' declared on line 93 column 15 is used outside of binding context.","line":46,"column":22,"nodeType":"Identifier","messageId":"outOfScope","endLine":46,"endColumn":23,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'i' declared on line 93 column 15 is used outside of binding context.","line":46,"column":46,"nodeType":"Identifier","messageId":"outOfScope","endLine":46,"endColumn":47,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'i' declared on line 93 column 15 is used outside of binding context.","line":47,"column":42,"nodeType":"Identifier","messageId":"outOfScope","endLine":47,"endColumn":43,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":47,"column":73,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":47,"endColumn":74,"fix":{"range":[1908,1908],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":47,"column":75,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":47,"endColumn":111,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'i' declared on line 93 column 15 is used outside of binding context.","line":47,"column":105,"nodeType":"Identifier","messageId":"outOfScope","endLine":47,"endColumn":106,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":47,"column":112,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":47,"endColumn":113,"fix":{"range":[1946,1946],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'tagType' declared on line 32 column 5 is used outside of binding context.","line":49,"column":16,"nodeType":"Identifier","messageId":"outOfScope","endLine":49,"endColumn":23,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '!==' and instead saw '!='.","line":49,"column":24,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":49,"endColumn":26,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-prototype-builtins","severity":2,"message":"Do not access Object.prototype method 'hasOwnProperty' from target object.","line":51,"column":16,"nodeType":"CallExpression","messageId":"prototypeBuildIn","endLine":51,"endColumn":30,"suggestions":[{"messageId":"callObjectPrototype","data":{"prop":"hasOwnProperty"},"fix":{"range":[2033,2053],"text":"Object.prototype.hasOwnProperty.call(tags, "},"desc":"Call Object.prototype.hasOwnProperty explicitly."}],"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '!==' and instead saw '!='.","line":51,"column":47,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":51,"endColumn":49,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '!==' and instead saw '!='.","line":51,"column":65,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":51,"endColumn":67,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":51,"column":136,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":51,"endColumn":137,"fix":{"range":[2159,2159],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":51,"column":138,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":51,"endColumn":164,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":51,"column":165,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":51,"endColumn":166,"fix":{"range":[2187,2187],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'tagType' declared on line 32 column 5 is used outside of binding context.","line":54,"column":28,"nodeType":"Identifier","messageId":"outOfScope","endLine":54,"endColumn":35,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '===' and instead saw '=='.","line":54,"column":36,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":54,"endColumn":38,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":54,"column":99,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":54,"endColumn":100,"fix":{"range":[2299,2299],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":54,"column":101,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":54,"endColumn":140,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":54,"column":141,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":54,"endColumn":142,"fix":{"range":[2340,2340],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-redeclare","severity":2,"message":"'curTag' is already defined.","line":57,"column":8,"nodeType":"Identifier","messageId":"redeclared","endLine":57,"endColumn":14,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'curTag' declared on line 43 column 34 is used outside of binding context.","line":57,"column":8,"nodeType":"Identifier","messageId":"outOfScope","endLine":57,"endColumn":14,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'curTag' declared on line 43 column 34 is used outside of binding context.","line":57,"column":54,"nodeType":"Identifier","messageId":"outOfScope","endLine":57,"endColumn":60,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'curTag' declared on line 43 column 34 is used outside of binding context.","line":57,"column":64,"nodeType":"Identifier","messageId":"outOfScope","endLine":57,"endColumn":70,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":58,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":58,"endColumn":5,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":59,"column":34,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":59,"endColumn":35,"fix":{"range":[2527,2527],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":59,"column":36,"nodeType":"ReturnStatement","messageId":"exceed","endLine":59,"endColumn":43,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":59,"column":44,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":59,"endColumn":45,"fix":{"range":[2536,2536],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'nm' declared on line 65 column 15 is used outside of binding context.","line":64,"column":15,"nodeType":"Identifier","messageId":"outOfScope","endLine":64,"endColumn":17,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":64,"column":35,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":64,"endColumn":36,"fix":{"range":[2709,2709],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 3 statements. Maximum allowed is 1.","line":64,"column":37,"nodeType":"IfStatement","messageId":"exceed","endLine":64,"endColumn":111,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-prototype-builtins","severity":2,"message":"Do not access Object.prototype method 'hasOwnProperty' from target object.","line":64,"column":54,"nodeType":"CallExpression","messageId":"prototypeBuildIn","endLine":64,"endColumn":68,"suggestions":[{"messageId":"callObjectPrototype","data":{"prop":"hasOwnProperty"},"fix":{"range":[2715,2742],"text":"Object.prototype.hasOwnProperty.call(globalAttrs, "},"desc":"Call Object.prototype.hasOwnProperty explicitly."}],"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'nm' declared on line 65 column 15 is used outside of binding context.","line":64,"column":70,"nodeType":"Identifier","messageId":"outOfScope","endLine":64,"endColumn":72,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":64,"column":77,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":64,"endColumn":78,"fix":{"range":[2751,2751],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'nm' declared on line 65 column 15 is used outside of binding context.","line":64,"column":84,"nodeType":"Identifier","messageId":"outOfScope","endLine":64,"endColumn":86,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'nm' declared on line 65 column 15 is used outside of binding context.","line":64,"column":104,"nodeType":"Identifier","messageId":"outOfScope","endLine":64,"endColumn":106,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":64,"column":110,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":64,"endColumn":111,"fix":{"range":[2783,2783],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":64,"column":112,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":64,"endColumn":113,"fix":{"range":[2785,2785],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-redeclare","severity":2,"message":"'nm' is already defined.","line":65,"column":15,"nodeType":"Identifier","messageId":"redeclared","endLine":65,"endColumn":17,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'nm' declared on line 64 column 15 is used outside of binding context.","line":65,"column":15,"nodeType":"Identifier","messageId":"outOfScope","endLine":65,"endColumn":17,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":65,"column":29,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":65,"endColumn":30,"fix":{"range":[2816,2816],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 3 statements. Maximum allowed is 1.","line":65,"column":31,"nodeType":"IfStatement","messageId":"exceed","endLine":65,"endColumn":93,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-prototype-builtins","severity":2,"message":"Do not access Object.prototype method 'hasOwnProperty' from target object.","line":65,"column":42,"nodeType":"CallExpression","messageId":"prototypeBuildIn","endLine":65,"endColumn":56,"suggestions":[{"messageId":"callObjectPrototype","data":{"prop":"hasOwnProperty"},"fix":{"range":[2822,2843],"text":"Object.prototype.hasOwnProperty.call(attrs, "},"desc":"Call Object.prototype.hasOwnProperty explicitly."}],"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'nm' declared on line 64 column 15 is used outside of binding context.","line":65,"column":58,"nodeType":"Identifier","messageId":"outOfScope","endLine":65,"endColumn":60,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":65,"column":65,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":65,"endColumn":66,"fix":{"range":[2852,2852],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'nm' declared on line 64 column 15 is used outside of binding context.","line":65,"column":72,"nodeType":"Identifier","messageId":"outOfScope","endLine":65,"endColumn":74,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'nm' declared on line 64 column 15 is used outside of binding context.","line":65,"column":86,"nodeType":"Identifier","messageId":"outOfScope","endLine":65,"endColumn":88,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":65,"column":92,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":65,"endColumn":93,"fix":{"range":[2878,2878],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":65,"column":94,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":65,"endColumn":95,"fix":{"range":[2880,2880],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '===' and instead saw '=='.","line":68,"column":20,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":68,"endColumn":22,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '===' and instead saw '=='.","line":68,"column":48,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":68,"endColumn":50,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-redeclare","severity":2,"message":"'before' is already defined.","line":69,"column":9,"nodeType":"Identifier","messageId":"redeclared","endLine":69,"endColumn":15,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'before' declared on line 31 column 8 is used outside of binding context.","line":69,"column":9,"nodeType":"Identifier","messageId":"outOfScope","endLine":69,"endColumn":15,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '===' and instead saw '=='.","line":70,"column":33,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":70,"endColumn":35,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":71,"column":4,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":71,"endColumn":6,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'before' declared on line 31 column 8 is used outside of binding context.","line":71,"column":15,"nodeType":"Identifier","messageId":"outOfScope","endLine":71,"endColumn":21,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\\".","line":71,"column":44,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":71,"endColumn":45,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3166,3167],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3166,3166],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}],"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\'.","line":71,"column":46,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":71,"endColumn":47,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3168,3169],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3168,3168],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}],"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-prototype-builtins","severity":2,"message":"Do not access Object.prototype method 'hasOwnProperty' from target object.","line":72,"column":28,"nodeType":"CallExpression","messageId":"prototypeBuildIn","endLine":72,"endColumn":42,"suggestions":[{"messageId":"callObjectPrototype","data":{"prop":"hasOwnProperty"},"fix":{"range":[3211,3232],"text":"Object.prototype.hasOwnProperty.call(attrs, "},"desc":"Call Object.prototype.hasOwnProperty explicitly."}],"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":72,"column":100,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":72,"endColumn":101,"fix":{"range":[3290,3290],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":72,"column":102,"nodeType":"ReturnStatement","messageId":"exceed","endLine":72,"endColumn":109,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":72,"column":110,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":72,"endColumn":111,"fix":{"range":[3299,3299],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":73,"column":43,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":73,"endColumn":44,"fix":{"range":[3344,3344],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":73,"column":45,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":73,"endColumn":82,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":73,"column":83,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":73,"endColumn":84,"fix":{"range":[3383,3383],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '===' and instead saw '=='.","line":74,"column":21,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":74,"endColumn":23,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"unicorn/prefer-string-slice","severity":2,"message":"Prefer `String#slice()` over `String#substr()`.","line":85,"column":16,"nodeType":"CallExpression","messageId":"substr","endLine":85,"endColumn":49,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '===' and instead saw '=='.","line":89,"column":64,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":89,"endColumn":66,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":89,"column":75,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":89,"endColumn":76,"fix":{"range":[4034,4034],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":89,"column":77,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":89,"endColumn":89,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":89,"column":90,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":89,"endColumn":91,"fix":{"range":[4048,4048],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-redeclare","severity":2,"message":"'i' is already defined.","line":93,"column":15,"nodeType":"Identifier","messageId":"redeclared","endLine":93,"endColumn":16,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'i' declared on line 46 column 15 is used outside of binding context.","line":93,"column":15,"nodeType":"Identifier","messageId":"outOfScope","endLine":93,"endColumn":16,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'i' declared on line 46 column 15 is used outside of binding context.","line":93,"column":22,"nodeType":"Identifier","messageId":"outOfScope","endLine":93,"endColumn":23,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'i' declared on line 46 column 15 is used outside of binding context.","line":93,"column":45,"nodeType":"Identifier","messageId":"outOfScope","endLine":93,"endColumn":46,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'i' declared on line 46 column 15 is used outside of binding context.","line":94,"column":41,"nodeType":"Identifier","messageId":"outOfScope","endLine":94,"endColumn":42,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":94,"column":72,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":94,"endColumn":73,"fix":{"range":[4238,4238],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":94,"column":74,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":94,"endColumn":119,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"block-scoped-var","severity":2,"message":"'i' declared on line 46 column 15 is used outside of binding context.","line":94,"column":105,"nodeType":"Identifier","messageId":"outOfScope","endLine":94,"endColumn":106,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":94,"column":120,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":94,"endColumn":121,"fix":{"range":[4285,4285],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '===' and instead saw '=='.","line":97,"column":21,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":97,"endColumn":23,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"no-prototype-builtins","severity":2,"message":"Do not access Object.prototype method 'hasOwnProperty' from target object.","line":102,"column":17,"nodeType":"CallExpression","messageId":"prototypeBuildIn","endLine":102,"endColumn":31,"suggestions":[{"messageId":"callObjectPrototype","data":{"prop":"hasOwnProperty"},"fix":{"range":[4467,4488],"text":"Object.prototype.hasOwnProperty.call(attrs, "},"desc":"Call Object.prototype.hasOwnProperty explicitly."}],"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Statement inside of curly braces should be on next line.","line":102,"column":99,"nodeType":"Punctuator","messageId":"blockSameLine","endLine":102,"endColumn":100,"fix":{"range":[4556,4556],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"max-statements-per-line","severity":2,"message":"This line has 2 statements. Maximum allowed is 1.","line":102,"column":101,"nodeType":"ExpressionStatement","messageId":"exceed","endLine":102,"endColumn":121,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"brace-style","severity":2,"message":"Closing curly brace should be on the same line as opening curly brace or on the line after the previous block.","line":102,"column":122,"nodeType":"Punctuator","messageId":"singleLineClose","endLine":102,"endColumn":123,"fix":{"range":[4578,4578],"text":"\n"},"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"eqeqeq","severity":2,"message":"Expected '===' and instead saw '=='.","line":108,"column":49,"nodeType":"BinaryExpression","messageId":"unexpected","endLine":108,"endColumn":51,"suppressions":[{"kind":"directive","justification":""}]}],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"arrow-parens","replacedBy":[]},{"ruleId":"arrow-spacing","replacedBy":[]},{"ruleId":"lines-between-class-members","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"template-curly-spacing","replacedBy":[]},{"ruleId":"implicit-arrow-linebreak","replacedBy":[]},{"ruleId":"array-bracket-spacing","replacedBy":[]},{"ruleId":"block-spacing","replacedBy":[]},{"ruleId":"brace-style","replacedBy":[]},{"ruleId":"comma-dangle","replacedBy":[]},{"ruleId":"comma-spacing","replacedBy":[]},{"ruleId":"comma-style","replacedBy":[]},{"ruleId":"computed-property-spacing","replacedBy":[]},{"ruleId":"dot-location","replacedBy":[]},{"ruleId":"eol-last","replacedBy":[]},{"ruleId":"func-call-spacing","replacedBy":[]},{"ruleId":"indent","replacedBy":[]},{"ruleId":"key-spacing","replacedBy":[]},{"ruleId":"keyword-spacing","replacedBy":[]},{"ruleId":"linebreak-style","replacedBy":[]},{"ruleId":"max-statements-per-line","replacedBy":[]},{"ruleId":"new-parens","replacedBy":[]},{"ruleId":"no-floating-decimal","replacedBy":[]},{"ruleId":"no-multi-spaces","replacedBy":[]},{"ruleId":"no-multiple-empty-lines","replacedBy":[]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"no-tabs","replacedBy":[]},{"ruleId":"no-trailing-spaces","replacedBy":[]},{"ruleId":"no-whitespace-before-property","replacedBy":[]},{"ruleId":"object-curly-spacing","replacedBy":[]},{"ruleId":"operator-linebreak","replacedBy":[]},{"ruleId":"quote-props","replacedBy":[]},{"ruleId":"quotes","replacedBy":[]},{"ruleId":"semi","replacedBy":[]},{"ruleId":"semi-spacing","replacedBy":[]},{"ruleId":"semi-style","replacedBy":[]},{"ruleId":"space-before-blocks","replacedBy":[]},{"ruleId":"space-before-function-paren","replacedBy":[]},{"ruleId":"space-in-parens","replacedBy":[]},{"ruleId":"space-infix-ops","replacedBy":[]},{"ruleId":"space-unary-ops","replacedBy":[]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"switch-colon-spacing","replacedBy":[]},{"ruleId":"wrap-iife","replacedBy":[]},{"ruleId":"no-extra-semi","replacedBy":[]},{"ruleId":"no-mixed-spaces-and-tabs","replacedBy":[]}]},{"filePath":"/src/repo/modules/ve/init/ve.init.tei.TEIContentConverter.js","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"arrow-parens","replacedBy":[]},{"ruleId":"arrow-spacing","replacedBy":[]},{"ruleId":"lines-between-class-members","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"template-curly-spacing","replacedBy":[]},{"ruleId":"implicit-arrow-linebreak","replacedBy":[]},{"ruleId":"array-bracket-spacing","replacedBy":[]},{"ruleId":"block-spacing","replacedBy":[]},{"ruleId":"brace-style","replacedBy":[]},{"ruleId":"comma-dangle","replacedBy":[]},{"ruleId":"comma-spacing","replacedBy":[]},{"ruleId":"comma-style","replacedBy":[]},{"ruleId":"computed-property-spacing","replacedBy":[]},{"ruleId":"dot-location","replacedBy":[]},{"ruleId":"eol-last","replacedBy":[]},{"ruleId":"func-call-spacing","replacedBy":[]},{"ruleId":"indent","replacedBy":[]},{"ruleId":"key-spacing","replacedBy":[]},{"ruleId":"keyword-spacing","replacedBy":[]},{"ruleId":"linebreak-style","replacedBy":[]},{"ruleId":"max-statements-per-line","replacedBy":[]},{"ruleId":"new-parens","replacedBy":[]},{"ruleId":"no-floating-decimal","replacedBy":[]},{"ruleId":"no-multi-spaces","replacedBy":[]},{"ruleId":"no-multiple-empty-lines","replacedBy":[]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"no-tabs","replacedBy":[]},{"ruleId":"no-trailing-spaces","replacedBy":[]},{"ruleId":"no-whitespace-before-property","replacedBy":[]},{"ruleId":"object-curly-spacing","replacedBy":[]},{"ruleId":"operator-linebreak","replacedBy":[]},{"ruleId":"quote-props","replacedBy":[]},{"ruleId":"quotes","replacedBy":[]},{"ruleId":"semi","replacedBy":[]},{"ruleId":"semi-spacing","replacedBy":[]},{"ruleId":"semi-style","replacedBy":[]},{"ruleId":"space-before-blocks","replacedBy":[]},{"ruleId":"space-before-function-paren","replacedBy":[]},{"ruleId":"space-in-parens","replacedBy":[]},{"ruleId":"space-infix-ops","replacedBy":[]},{"ruleId":"space-unary-ops","replacedBy":[]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"switch-colon-spacing","replacedBy":[]},{"ruleId":"wrap-iife","replacedBy":[]},{"ruleId":"no-extra-semi","replacedBy":[]},{"ruleId":"no-mixed-spaces-and-tabs","replacedBy":[]}]},{"filePath":"/src/repo/modules/ve/init/ve.init.tei.TEIPageEditDialog.js","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"arrow-parens","replacedBy":[]},{"ruleId":"arrow-spacing","replacedBy":[]},{"ruleId":"lines-between-class-members","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"template-curly-spacing","replacedBy":[]},{"ruleId":"implicit-arrow-linebreak","replacedBy":[]},{"ruleId":"array-bracket-spacing","replacedBy":[]},{"ruleId":"block-spacing","replacedBy":[]},{"ruleId":"brace-style","replacedBy":[]},{"ruleId":"comma-dangle","replacedBy":[]},{"ruleId":"comma-spacing","replacedBy":[]},{"ruleId":"comma-style","replacedBy":[]},{"ruleId":"computed-property-spacing","replacedBy":[]},{"ruleId":"dot-location","replacedBy":[]},{"ruleId":"eol-last","replacedBy":[]},{"ruleId":"func-call-spacing","replacedBy":[]},{"ruleId":"indent","replacedBy":[]},{"ruleId":"key-spacing","replacedBy":[]},{"ruleId":"keyword-spacing","replacedBy":[]},{"ruleId":"linebreak-style","replacedBy":[]},{"ruleId":"max-statements-per-line","replacedBy":[]},{"ruleId":"new-parens","replacedBy":[]},{"ruleId":"no-floating-decimal","replacedBy":[]},{"ruleId":"no-multi-spaces","replacedBy":[]},{"ruleId":"no-multiple-empty-lines","replacedBy":[]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"no-tabs","replacedBy":[]},{"ruleId":"no-trailing-spaces","replacedBy":[]},{"ruleId":"no-whitespace-before-property","replacedBy":[]},{"ruleId":"object-curly-spacing","replacedBy":[]},{"ruleId":"operator-linebreak","replacedBy":[]},{"ruleId":"quote-props","replacedBy":[]},{"ruleId":"quotes","replacedBy":[]},{"ruleId":"semi","replacedBy":[]},{"ruleId":"semi-spacing","replacedBy":[]},{"ruleId":"semi-style","replacedBy":[]},{"ruleId":"space-before-blocks","replacedBy":[]},{"ruleId":"space-before-function-paren","replacedBy":[]},{"ruleId":"space-in-parens","replacedBy":[]},{"ruleId":"space-infix-ops","replacedBy":[]},{"ruleId":"space-unary-ops","replacedBy":[]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"switch-colon-spacing","replacedBy":[]},{"ruleId":"wrap-iife","replacedBy":[]},{"ruleId":"no-extra-semi","replacedBy":[]},{"ruleId":"no-mixed-spaces-and-tabs","replacedBy":[]}]},{"filePath":"/src/repo/modules/ve/init/ve.init.tei.TEIPageTarget.init.js","messages":[],"suppressedMessages":[{"ruleId":"no-jquery/no-global-selector","severity":2,"message":"Avoid queries which search the entire DOM. Keep DOM nodes in memory where possible.","line":30,"column":14,"nodeType":"CallExpression","endLine":30,"endColumn":29,"suppressions":[{"kind":"directive","justification":""}]}],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"arrow-parens","replacedBy":[]},{"ruleId":"arrow-spacing","replacedBy":[]},{"ruleId":"lines-between-class-members","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"template-curly-spacing","replacedBy":[]},{"ruleId":"implicit-arrow-linebreak","replacedBy":[]},{"ruleId":"array-bracket-spacing","replacedBy":[]},{"ruleId":"block-spacing","replacedBy":[]},{"ruleId":"brace-style","replacedBy":[]},{"ruleId":"comma-dangle","replacedBy":[]},{"ruleId":"comma-spacing","replacedBy":[]},{"ruleId":"comma-style","replacedBy":[]},{"ruleId":"computed-property-spacing","replacedBy":[]},{"ruleId":"dot-location","replacedBy":[]},{"ruleId":"eol-last","replacedBy":[]},{"ruleId":"func-call-spacing","replacedBy":[]},{"ruleId":"indent","replacedBy":[]},{"ruleId":"key-spacing","replacedBy":[]},{"ruleId":"keyword-spacing","replacedBy":[]},{"ruleId":"linebreak-style","replacedBy":[]},{"ruleId":"max-statements-per-line","replacedBy":[]},{"ruleId":"new-parens","replacedBy":[]},{"ruleId":"no-floating-decimal","replacedBy":[]},{"ruleId":"no-multi-spaces","replacedBy":[]},{"ruleId":"no-multiple-empty-lines","replacedBy":[]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"no-tabs","replacedBy":[]},{"ruleId":"no-trailing-spaces","replacedBy":[]},{"ruleId":"no-whitespace-before-property","replacedBy":[]},{"ruleId":"object-curly-spacing","replacedBy":[]},{"ruleId":"operator-linebreak","replacedBy":[]},{"ruleId":"quote-props","replacedBy":[]},{"ruleId":"quotes","replacedBy":[]},{"ruleId":"semi","replacedBy":[]},{"ruleId":"semi-spacing","replacedBy":[]},{"ruleId":"semi-style","replacedBy":[]},{"ruleId":"space-before-blocks","replacedBy":[]},{"ruleId":"space-before-function-paren","replacedBy":[]},{"ruleId":"space-in-parens","replacedBy":[]},{"ruleId":"space-infix-ops","replacedBy":[]},{"ruleId":"space-unary-ops","replacedBy":[]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"switch-colon-spacing","replacedBy":[]},{"ruleId":"wrap-iife","replacedBy":[]},{"ruleId":"no-extra-semi","replacedBy":[]},{"ruleId":"no-mixed-spaces-and-tabs","replacedBy":[]}]},{"filePath":"/src/repo/modules/ve/init/ve.init.tei.TEIPageTarget.init.mw.js","messages":[],"suppressedMessages":[{"ruleId":"no-jquery/no-global-selector","severity":2,"message":"Avoid queries which search the entire DOM. Keep DOM nodes in memory where possible.","line":4,"column":17,"nodeType":"CallExpression","endLine":4,"endColumn":32,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"mediawiki/msg-doc","severity":2,"message":"All possible message keys should be documented. See https://w.wiki/4r9a for details.","line":6,"column":32,"nodeType":"CallExpression","endLine":6,"endColumn":57,"suppressions":[{"kind":"directive","justification":""}]},{"ruleId":"mediawiki/msg-doc","severity":2,"message":"All possible message keys should be documented. See https://w.wiki/4r9a for details.","line":11,"column":32,"nodeType":"CallExpression","endLine":11,"endColumn":89,"suppressions":[{"kind":"directive","justification":""}]}],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"arrow-parens","replacedBy":[]},{"ruleId":"arrow-spacing","replacedBy":[]},{"ruleId":"lines-between-class-members","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"template-curly-spacing","replacedBy":[]},{"ruleId":"implicit-arrow-linebreak","replacedBy":[]},{"ruleId":"array-bracket-spacing","replacedBy":[]},{"ruleId":"block-spacing","replacedBy":[]},{"ruleId":"brace-style","replacedBy":[]},{"ruleId":"comma-dangle","replacedBy":[]},{"ruleId":"comma-spacing","replacedBy":[]},{"ruleId":"comma-style","replacedBy":[]},{"ruleId":"computed-property-spacing","replacedBy":[]},{"ruleId":"dot-location","replacedBy":[]},{"ruleId":"eol-last","replacedBy":[]},{"ruleId":"func-call-spacing","replacedBy":[]},{"ruleId":"indent","replacedBy":[]},{"ruleId":"key-spacing","replacedBy":[]},{"ruleId":"keyword-spacing","replacedBy":[]},{"ruleId":"linebreak-style","replacedBy":[]},{"ruleId":"max-statements-per-line","replacedBy":[]},{"ruleId":"new-parens","replacedBy":[]},{"ruleId":"no-floating-decimal","replacedBy":[]},{"ruleId":"no-multi-spaces","replacedBy":[]},{"ruleId":"no-multiple-empty-lines","replacedBy":[]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"no-tabs","replacedBy":[]},{"ruleId":"no-trailing-spaces","replacedBy":[]},{"ruleId":"no-whitespace-before-property","replacedBy":[]},{"ruleId":"object-curly-spacing","replacedBy":[]},{"ruleId":"operator-linebreak","replacedBy":[]},{"ruleId":"quote-props","replacedBy":[]},{"ruleId":"quotes","replacedBy":[]},{"ruleId":"semi","replacedBy":[]},{"ruleId":"semi-spacing","replacedBy":[]},{"ruleId":"semi-style","replacedBy":[]},{"ruleId":"space-before-blocks","replacedBy":[]},{"ruleId":"space-before-function-paren","replacedBy":[]},{"ruleId":"space-in-parens","replacedBy":[]},{"ruleId":"space-infix-ops","replacedBy":[]},{"ruleId":"space-unary-ops","replacedBy":[]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"switch-colon-spacing","replacedBy":[]},{"ruleId":"wrap-iife","replacedBy":[]},{"ruleId":"no-extra-semi","replacedBy":[]},{"ruleId":"no-mixed-spaces-and-tabs","replacedBy":[]}]},{"filePath":"/src/repo/modules/ve/init/ve.init.tei.TEIPageTarget.js","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"arrow-parens","replacedBy":[]},{"ruleId":"arrow-spacing","replacedBy":[]},{"ruleId":"lines-between-class-members","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"template-curly-spacing","replacedBy":[]},{"ruleId":"implicit-arrow-linebreak","replacedBy":[]},{"ruleId":"array-bracket-spacing","replacedBy":[]},{"ruleId":"block-spacing","replacedBy":[]},{"ruleId":"brace-style","replacedBy":[]},{"ruleId":"comma-dangle","replacedBy":[]},{"ruleId":"comma-spacing","replacedBy":[]},{"ruleId":"comma-style","replacedBy":[]},{"ruleId":"computed-property-spacing","replacedBy":[]},{"ruleId":"dot-location","replacedBy":[]},{"ruleId":"eol-last","replacedBy":[]},{"ruleId":"func-call-spacing","replacedBy":[]},{"ruleId":"indent","replacedBy":[]},{"ruleId":"key-spacing","replacedBy":[]},{"ruleId":"keyword-spacing","replacedBy":[]},{"ruleId":"linebreak-style","replacedBy":[]},{"ruleId":"max-statements-per-line","replacedBy":[]},{"ruleId":"new-parens","replacedBy":[]},{"ruleId":"no-floating-decimal","replacedBy":[]},{"ruleId":"no-multi-spaces","replacedBy":[]},{"ruleId":"no-multiple-empty-lines","replacedBy":[]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"no-tabs","replacedBy":[]},{"ruleId":"no-trailing-spaces","replacedBy":[]},{"ruleId":"no-whitespace-before-property","replacedBy":[]},{"ruleId":"object-curly-spacing","replacedBy":[]},{"ruleId":"operator-linebreak","replacedBy":[]},{"ruleId":"quote-props","replacedBy":[]},{"ruleId":"quotes","replacedBy":[]},{"ruleId":"semi","replacedBy":[]},{"ruleId":"semi-spacing","replacedBy":[]},{"ruleId":"semi-style","replacedBy":[]},{"ruleId":"space-before-blocks","replacedBy":[]},{"ruleId":"space-before-function-paren","replacedBy":[]},{"ruleId":"space-in-parens","replacedBy":[]},{"ruleId":"space-infix-ops","replacedBy":[]},{"ruleId":"space-unary-ops","replacedBy":[]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"switch-colon-spacing","replacedBy":[]},{"ruleId":"wrap-iife","replacedBy":[]},{"ruleId":"no-extra-semi","replacedBy":[]},{"ruleId":"no-mixed-spaces-and-tabs","replacedBy":[]}]},{"filePath":"/src/repo/modules/ve/init/ve.init.tei.js","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"arrow-parens","replacedBy":[]},{"ruleId":"arrow-spacing","replacedBy":[]},{"ruleId":"lines-between-class-members","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"template-curly-spacing","replacedBy":[]},{"ruleId":"implicit-arrow-linebreak","replacedBy":[]},{"ruleId":"array-bracket-spacing","replacedBy":[]},{"ruleId":"block-spacing","replacedBy":[]},{"ruleId":"brace-style","replacedBy":[]},{"ruleId":"comma-dangle","replacedBy":[]},{"ruleId":"comma-spacing","replacedBy":[]},{"ruleId":"comma-style","replacedBy":[]},{"ruleId":"computed-property-spacing","replacedBy":[]},{"ruleId":"dot-location","replacedBy":[]},{"ruleId":"eol-last","replacedBy":[]},{"ruleId":"func-call-spacing","replacedBy":[]},{"ruleId":"indent","replacedBy":[]},{"ruleId":"key-spacing","replacedBy":[]},{"ruleId":"keyword-spacing","replacedBy":[]},{"ruleId":"linebreak-style","replacedBy":[]},{"ruleId":"max-statements-per-line","replacedBy":[]},{"ruleId":"new-parens","replacedBy":[]},{"ruleId":"no-floating-decimal","replacedBy":[]},{"ruleId":"no-multi-spaces","replacedBy":[]},{"ruleId":"no-multiple-empty-lines","replacedBy":[]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"no-tabs","replacedBy":[]},{"ruleId":"no-trailing-spaces","replacedBy":[]},{"ruleId":"no-whitespace-before-property","replacedBy":[]},{"ruleId":"object-curly-spacing","replacedBy":[]},{"ruleId":"operator-linebreak","replacedBy":[]},{"ruleId":"quote-props","replacedBy":[]},{"ruleId":"quotes","replacedBy":[]},{"ruleId":"semi","replacedBy":[]},{"ruleId":"semi-spacing","replacedBy":[]},{"ruleId":"semi-style","replacedBy":[]},{"ruleId":"space-before-blocks","replacedBy":[]},{"ruleId":"space-before-function-paren","replacedBy":[]},{"ruleId":"space-in-parens","replacedBy":[]},{"ruleId":"space-infix-ops","replacedBy":[]},{"ruleId":"space-unary-ops","replacedBy":[]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"switch-colon-spacing","replacedBy":[]},{"ruleId":"wrap-iife","replacedBy":[]},{"ruleId":"no-extra-semi","replacedBy":[]},{"ruleId":"no-mixed-spaces-and-tabs","replacedBy":[]}]},{"filePath":"/src/repo/modules/ve/ui/MWEditModeSourceTool.js","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"arrow-parens","replacedBy":[]},{"ruleId":"arrow-spacing","replacedBy":[]},{"ruleId":"lines-between-class-members","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"template-curly-spacing","replacedBy":[]},{"ruleId":"implicit-arrow-linebreak","replacedBy":[]},{"ruleId":"array-bracket-spacing","replacedBy":[]},{"ruleId":"block-spacing","replacedBy":[]},{"ruleId":"brace-style","replacedBy":[]},{"ruleId":"comma-dangle","replacedBy":[]},{"ruleId":"comma-spacing","replacedBy":[]},{"ruleId":"comma-style","replacedBy":[]},{"ruleId":"computed-property-spacing","replacedBy":[]},{"ruleId":"dot-location","replacedBy":[]},{"ruleId":"eol-last","replacedBy":[]},{"ruleId":"func-call-spacing","replacedBy":[]},{"ruleId":"indent","replacedBy":[]},{"ruleId":"key-spacing","replacedBy":[]},{"ruleId":"keyword-spacing","replacedBy":[]},{"ruleId":"linebreak-style","replacedBy":[]},{"ruleId":"max-statements-per-line","replacedBy":[]},{"ruleId":"new-parens","replacedBy":[]},{"ruleId":"no-floating-decimal","replacedBy":[]},{"ruleId":"no-multi-spaces","replacedBy":[]},{"ruleId":"no-multiple-empty-lines","replacedBy":[]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"no-tabs","replacedBy":[]},{"ruleId":"no-trailing-spaces","replacedBy":[]},{"ruleId":"no-whitespace-before-property","replacedBy":[]},{"ruleId":"object-curly-spacing","replacedBy":[]},{"ruleId":"operator-linebreak","replacedBy":[]},{"ruleId":"quote-props","replacedBy":[]},{"ruleId":"quotes","replacedBy":[]},{"ruleId":"semi","replacedBy":[]},{"ruleId":"semi-spacing","replacedBy":[]},{"ruleId":"semi-style","replacedBy":[]},{"ruleId":"space-before-blocks","replacedBy":[]},{"ruleId":"space-before-function-paren","replacedBy":[]},{"ruleId":"space-in-parens","replacedBy":[]},{"ruleId":"space-infix-ops","replacedBy":[]},{"ruleId":"space-unary-ops","replacedBy":[]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"switch-colon-spacing","replacedBy":[]},{"ruleId":"wrap-iife","replacedBy":[]},{"ruleId":"no-extra-semi","replacedBy":[]},{"ruleId":"no-mixed-spaces-and-tabs","replacedBy":[]}]},{"filePath":"/src/repo/modules/ve/ui/MWEditModeVisualTool.js","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"arrow-parens","replacedBy":[]},{"ruleId":"arrow-spacing","replacedBy":[]},{"ruleId":"lines-between-class-members","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"template-curly-spacing","replacedBy":[]},{"ruleId":"implicit-arrow-linebreak","replacedBy":[]},{"ruleId":"array-bracket-spacing","replacedBy":[]},{"ruleId":"block-spacing","replacedBy":[]},{"ruleId":"brace-style","replacedBy":[]},{"ruleId":"comma-dangle","replacedBy":[]},{"ruleId":"comma-spacing","replacedBy":[]},{"ruleId":"comma-style","replacedBy":[]},{"ruleId":"computed-property-spacing","replacedBy":[]},{"ruleId":"dot-location","replacedBy":[]},{"ruleId":"eol-last","replacedBy":[]},{"ruleId":"func-call-spacing","replacedBy":[]},{"ruleId":"indent","replacedBy":[]},{"ruleId":"key-spacing","replacedBy":[]},{"ruleId":"keyword-spacing","replacedBy":[]},{"ruleId":"linebreak-style","replacedBy":[]},{"ruleId":"max-statements-per-line","replacedBy":[]},{"ruleId":"new-parens","replacedBy":[]},{"ruleId":"no-floating-decimal","replacedBy":[]},{"ruleId":"no-multi-spaces","replacedBy":[]},{"ruleId":"no-multiple-empty-lines","replacedBy":[]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"no-tabs","replacedBy":[]},{"ruleId":"no-trailing-spaces","replacedBy":[]},{"ruleId":"no-whitespace-before-property","replacedBy":[]},{"ruleId":"object-curly-spacing","replacedBy":[]},{"ruleId":"operator-linebreak","replacedBy":[]},{"ruleId":"quote-props","replacedBy":[]},{"ruleId":"quotes","replacedBy":[]},{"ruleId":"semi","replacedBy":[]},{"ruleId":"semi-spacing","replacedBy":[]},{"ruleId":"semi-style","replacedBy":[]},{"ruleId":"space-before-blocks","replacedBy":[]},{"ruleId":"space-before-function-paren","replacedBy":[]},{"ruleId":"space-in-parens","replacedBy":[]},{"ruleId":"space-infix-ops","replacedBy":[]},{"ruleId":"space-unary-ops","replacedBy":[]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"switch-colon-spacing","replacedBy":[]},{"ruleId":"wrap-iife","replacedBy":[]},{"ruleId":"no-extra-semi","replacedBy":[]},{"ruleId":"no-mixed-spaces-and-tabs","replacedBy":[]}]},{"filePath":"/src/repo/package-lock.json","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"arrow-parens","replacedBy":[]},{"ruleId":"arrow-spacing","replacedBy":[]},{"ruleId":"lines-between-class-members","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"template-curly-spacing","replacedBy":[]},{"ruleId":"implicit-arrow-linebreak","replacedBy":[]},{"ruleId":"indent","replacedBy":[]},{"ruleId":"comma-dangle","replacedBy":[]},{"ruleId":"no-extra-parens","replacedBy":[]},{"ruleId":"quotes","replacedBy":[]},{"ruleId":"quote-props","replacedBy":[]},{"ruleId":"array-bracket-spacing","replacedBy":[]},{"ruleId":"block-spacing","replacedBy":[]},{"ruleId":"brace-style","replacedBy":[]},{"ruleId":"comma-spacing","replacedBy":[]},{"ruleId":"comma-style","replacedBy":[]},{"ruleId":"computed-property-spacing","replacedBy":[]},{"ruleId":"dot-location","replacedBy":[]},{"ruleId":"eol-last","replacedBy":[]},{"ruleId":"func-call-spacing","replacedBy":[]},{"ruleId":"key-spacing","replacedBy":[]},{"ruleId":"keyword-spacing","replacedBy":[]},{"ruleId":"linebreak-style","replacedBy":[]},{"ruleId":"max-statements-per-line","replacedBy":[]},{"ruleId":"new-parens","replacedBy":[]},{"ruleId":"no-floating-decimal","replacedBy":[]},{"ruleId":"no-multi-spaces","replacedBy":[]},{"ruleId":"no-multiple-empty-lines","replacedBy":[]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"no-tabs","replacedBy":[]},{"ruleId":"no-trailing-spaces","replacedBy":[]},{"ruleId":"no-whitespace-before-property","replacedBy":[]},{"ruleId":"object-curly-spacing","replacedBy":[]},{"ruleId":"operator-linebreak","replacedBy":[]},{"ruleId":"semi","replacedBy":[]},{"ruleId":"semi-spacing","replacedBy":[]},{"ruleId":"semi-style","replacedBy":[]},{"ruleId":"space-before-blocks","replacedBy":[]},{"ruleId":"space-before-function-paren","replacedBy":[]},{"ruleId":"space-in-parens","replacedBy":[]},{"ruleId":"space-infix-ops","replacedBy":[]},{"ruleId":"space-unary-ops","replacedBy":[]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"switch-colon-spacing","replacedBy":[]},{"ruleId":"wrap-iife","replacedBy":[]},{"ruleId":"no-extra-semi","replacedBy":[]},{"ruleId":"no-mixed-spaces-and-tabs","replacedBy":[]}]},{"filePath":"/src/repo/package.json","messages":[],"suppressedMessages":[],"errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"arrow-parens","replacedBy":[]},{"ruleId":"arrow-spacing","replacedBy":[]},{"ruleId":"lines-between-class-members","replacedBy":[]},{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"template-curly-spacing","replacedBy":[]},{"ruleId":"implicit-arrow-linebreak","replacedBy":[]},{"ruleId":"indent","replacedBy":[]},{"ruleId":"comma-dangle","replacedBy":[]},{"ruleId":"no-extra-parens","replacedBy":[]},{"ruleId":"quotes","replacedBy":[]},{"ruleId":"quote-props","replacedBy":[]},{"ruleId":"array-bracket-spacing","replacedBy":[]},{"ruleId":"block-spacing","replacedBy":[]},{"ruleId":"brace-style","replacedBy":[]},{"ruleId":"comma-spacing","replacedBy":[]},{"ruleId":"comma-style","replacedBy":[]},{"ruleId":"computed-property-spacing","replacedBy":[]},{"ruleId":"dot-location","replacedBy":[]},{"ruleId":"eol-last","replacedBy":[]},{"ruleId":"func-call-spacing","replacedBy":[]},{"ruleId":"key-spacing","replacedBy":[]},{"ruleId":"keyword-spacing","replacedBy":[]},{"ruleId":"linebreak-style","replacedBy":[]},{"ruleId":"max-statements-per-line","replacedBy":[]},{"ruleId":"new-parens","replacedBy":[]},{"ruleId":"no-floating-decimal","replacedBy":[]},{"ruleId":"no-multi-spaces","replacedBy":[]},{"ruleId":"no-multiple-empty-lines","replacedBy":[]},{"ruleId":"no-new-object","replacedBy":["no-object-constructor"]},{"ruleId":"no-tabs","replacedBy":[]},{"ruleId":"no-trailing-spaces","replacedBy":[]},{"ruleId":"no-whitespace-before-property","replacedBy":[]},{"ruleId":"object-curly-spacing","replacedBy":[]},{"ruleId":"operator-linebreak","replacedBy":[]},{"ruleId":"semi","replacedBy":[]},{"ruleId":"semi-spacing","replacedBy":[]},{"ruleId":"semi-style","replacedBy":[]},{"ruleId":"space-before-blocks","replacedBy":[]},{"ruleId":"space-before-function-paren","replacedBy":[]},{"ruleId":"space-in-parens","replacedBy":[]},{"ruleId":"space-infix-ops","replacedBy":[]},{"ruleId":"space-unary-ops","replacedBy":[]},{"ruleId":"spaced-comment","replacedBy":[]},{"ruleId":"switch-colon-spacing","replacedBy":[]},{"ruleId":"wrap-iife","replacedBy":[]},{"ruleId":"no-extra-semi","replacedBy":[]},{"ruleId":"no-mixed-spaces-and-tabs","replacedBy":[]}]}]
--- end ---
Disabling eslint rule 'no-jquery/no-done-fail' (broken in modules/.eslintrc.json) on modules/.eslintrc.json
$ /usr/bin/npm ci
--- stdout ---
added 437 packages, and audited 438 packages in 5s
89 packages are looking for funding
run `npm fund` for details
found 0 vulnerabilities
--- end ---
$ /usr/bin/npm test
--- stdout ---
> test
> grunt test
Running "eslint:all" (eslint) task
/src/repo/modules/edit/Editor.js
151:9 warning Prefer .then to .done no-jquery/no-done-fail
✖ 1 problem (0 errors, 1 warning)
Running "stylelint:all" (stylelint) task
>> Linted 5 files without errors
Running "banana:TEI" (banana) task
>> 1 message directory checked.
Done.
--- end ---
$ /usr/bin/npm audit --json
--- stdout ---
{
"auditReportVersion": 2,
"vulnerabilities": {},
"metadata": {
"vulnerabilities": {
"info": 0,
"low": 0,
"moderate": 0,
"high": 0,
"critical": 0,
"total": 0
},
"dependencies": {
"prod": 1,
"dev": 437,
"optional": 0,
"peer": 1,
"peerOptional": 0,
"total": 437
}
}
}
--- end ---
$ package-lock-lint package-lock.json
--- stdout ---
Checking package-lock.json
--- end ---
build: Updating eslint-config-wikimedia to 0.29.1
The following rules are failing and were disabled:
* modules:
* no-jquery/no-done-fail
$ git add .
--- stdout ---
--- end ---
$ git commit -F /tmp/tmps3yx5g2a
--- stdout ---
[master c3146bd] build: Updating eslint-config-wikimedia to 0.29.1
3 files changed, 21 insertions(+), 17 deletions(-)
--- end ---
$ git format-patch HEAD~1 --stdout
--- stdout ---
From c3146bdcb51755667d5a42760434609dfac4c30a Mon Sep 17 00:00:00 2001
From: libraryupgrader <tools.libraryupgrader@tools.wmflabs.org>
Date: Mon, 31 Mar 2025 06:19:56 +0000
Subject: [PATCH] build: Updating eslint-config-wikimedia to 0.29.1
The following rules are failing and were disabled:
* modules:
* no-jquery/no-done-fail
Change-Id: I10b2c1a8fad412ca049540ce83e3c3a052273734
---
modules/.eslintrc.json | 3 ++-
package-lock.json | 33 ++++++++++++++++++---------------
package.json | 2 +-
3 files changed, 21 insertions(+), 17 deletions(-)
diff --git a/modules/.eslintrc.json b/modules/.eslintrc.json
index d46c8c2..24c2a2b 100644
--- a/modules/.eslintrc.json
+++ b/modules/.eslintrc.json
@@ -11,6 +11,7 @@
},
"rules": {
"no-var": "off",
- "max-len": "off"
+ "max-len": "off",
+ "no-jquery/no-done-fail": "warn"
}
}
diff --git a/package-lock.json b/package-lock.json
index 7fdcfe7..53beef4 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -6,7 +6,7 @@
"": {
"name": "TEI",
"devDependencies": {
- "eslint-config-wikimedia": "0.28.2",
+ "eslint-config-wikimedia": "0.29.1",
"grunt": "1.6.1",
"grunt-banana-checker": "0.13.0",
"grunt-eslint": "24.3.0",
@@ -1346,9 +1346,9 @@
}
},
"node_modules/eslint-config-wikimedia": {
- "version": "0.28.2",
- "resolved": "https://registry.npmjs.org/eslint-config-wikimedia/-/eslint-config-wikimedia-0.28.2.tgz",
- "integrity": "sha512-5+rdnT7wH1gpKAO6tHYThg78eMhZMruJzvqku3Y5iaEY/A7kSKLFpA/vOj/snys9fKjDHC9BXmArQh+agkOoJQ==",
+ "version": "0.29.1",
+ "resolved": "https://registry.npmjs.org/eslint-config-wikimedia/-/eslint-config-wikimedia-0.29.1.tgz",
+ "integrity": "sha512-4dbL5o3hKGSvreyrGZWLPoTDLFubZ575IQOPhUaTcpbTsi0u05TBEMsOyYkthTaK21vsFQqhSYtxp/xU93BSdA==",
"dev": true,
"dependencies": {
"browserslist-config-wikimedia": "^0.7.0",
@@ -1361,13 +1361,16 @@
"eslint-plugin-mediawiki": "^0.7.0",
"eslint-plugin-mocha": "^10.4.3",
"eslint-plugin-n": "^17.7.0",
- "eslint-plugin-no-jquery": "^3.0.1",
+ "eslint-plugin-no-jquery": "^3.1.1",
"eslint-plugin-qunit": "^8.1.1",
"eslint-plugin-security": "^1.7.1",
"eslint-plugin-unicorn": "^53.0.0",
"eslint-plugin-vue": "^9.26.0",
"eslint-plugin-wdio": "^8.24.12",
"eslint-plugin-yml": "^1.14.0"
+ },
+ "engines": {
+ "node": ">=18 <23"
}
},
"node_modules/eslint-plugin-compat": {
@@ -1565,9 +1568,9 @@
}
},
"node_modules/eslint-plugin-no-jquery": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/eslint-plugin-no-jquery/-/eslint-plugin-no-jquery-3.0.2.tgz",
- "integrity": "sha512-n/+6p6PFhWDNPVLJj1463hw4OTIRBbROGcbhmtOHTgw7yihSKzkwZiQ00EJTneyeR3jRiw5lpWSMCCBhtb8t2g==",
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-no-jquery/-/eslint-plugin-no-jquery-3.1.1.tgz",
+ "integrity": "sha512-LTLO3jH/Tjr1pmxCEqtV6qmt+OChv8La4fwgG470JRpgxyFF4NOzoC9CRy92GIWD3Yjl0qLEgPmD2FLQWcNEjg==",
"dev": true,
"peerDependencies": {
"eslint": ">=8.0.0"
@@ -6259,9 +6262,9 @@
}
},
"eslint-config-wikimedia": {
- "version": "0.28.2",
- "resolved": "https://registry.npmjs.org/eslint-config-wikimedia/-/eslint-config-wikimedia-0.28.2.tgz",
- "integrity": "sha512-5+rdnT7wH1gpKAO6tHYThg78eMhZMruJzvqku3Y5iaEY/A7kSKLFpA/vOj/snys9fKjDHC9BXmArQh+agkOoJQ==",
+ "version": "0.29.1",
+ "resolved": "https://registry.npmjs.org/eslint-config-wikimedia/-/eslint-config-wikimedia-0.29.1.tgz",
+ "integrity": "sha512-4dbL5o3hKGSvreyrGZWLPoTDLFubZ575IQOPhUaTcpbTsi0u05TBEMsOyYkthTaK21vsFQqhSYtxp/xU93BSdA==",
"dev": true,
"requires": {
"browserslist-config-wikimedia": "^0.7.0",
@@ -6274,7 +6277,7 @@
"eslint-plugin-mediawiki": "^0.7.0",
"eslint-plugin-mocha": "^10.4.3",
"eslint-plugin-n": "^17.7.0",
- "eslint-plugin-no-jquery": "^3.0.1",
+ "eslint-plugin-no-jquery": "^3.1.1",
"eslint-plugin-qunit": "^8.1.1",
"eslint-plugin-security": "^1.7.1",
"eslint-plugin-unicorn": "^53.0.0",
@@ -6409,9 +6412,9 @@
}
},
"eslint-plugin-no-jquery": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/eslint-plugin-no-jquery/-/eslint-plugin-no-jquery-3.0.2.tgz",
- "integrity": "sha512-n/+6p6PFhWDNPVLJj1463hw4OTIRBbROGcbhmtOHTgw7yihSKzkwZiQ00EJTneyeR3jRiw5lpWSMCCBhtb8t2g==",
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-no-jquery/-/eslint-plugin-no-jquery-3.1.1.tgz",
+ "integrity": "sha512-LTLO3jH/Tjr1pmxCEqtV6qmt+OChv8La4fwgG470JRpgxyFF4NOzoC9CRy92GIWD3Yjl0qLEgPmD2FLQWcNEjg==",
"dev": true,
"requires": {}
},
diff --git a/package.json b/package.json
index 0c00a8c..51bf423 100644
--- a/package.json
+++ b/package.json
@@ -5,7 +5,7 @@
"test": "grunt test"
},
"devDependencies": {
- "eslint-config-wikimedia": "0.28.2",
+ "eslint-config-wikimedia": "0.29.1",
"grunt": "1.6.1",
"grunt-banana-checker": "0.13.0",
"grunt-eslint": "24.3.0",
--
2.39.2
--- end ---