mediawiki/extensions/Wikibase (master)

sourcepatches
$ date
Thu Mar  4 08:57:58 UTC 2021

$ git clone file:///srv/git/mediawiki-extensions-Wikibase.git repo --depth=1 -b master
Cloning into 'repo'...

$ git config user.name libraryupgrader

$ git config user.email tools.libraryupgrader@tools.wmflabs.org

$ git submodule update --init
Submodule 'lib/resources/wikibase-api' (https://gerrit.wikimedia.org/r/wikibase/javascript-api) registered for path 'lib/resources/wikibase-api'
Submodule 'view/lib/wikibase-data-model' (https://phabricator.wikimedia.org/source/wikibase-data-model.git) registered for path 'view/lib/wikibase-data-model'
Submodule 'view/lib/wikibase-data-values' (https://phabricator.wikimedia.org/source/datavalues-javascript.git) registered for path 'view/lib/wikibase-data-values'
Submodule 'view/lib/wikibase-data-values-value-view' (https://gerrit.wikimedia.org/r/data-values/value-view) registered for path 'view/lib/wikibase-data-values-value-view'
Submodule 'view/lib/wikibase-serialization' (https://phabricator.wikimedia.org/source/wikibase-serialization.git) registered for path 'view/lib/wikibase-serialization'
Submodule 'view/lib/wikibase-termbox' (https://gerrit.wikimedia.org/r/wikibase/termbox) registered for path 'view/lib/wikibase-termbox'
Cloning into '/src/repo/lib/resources/wikibase-api'...
Cloning into '/src/repo/view/lib/wikibase-data-model'...
Cloning into '/src/repo/view/lib/wikibase-data-values-value-view'...
Cloning into '/src/repo/view/lib/wikibase-data-values'...
Cloning into '/src/repo/view/lib/wikibase-termbox'...
Cloning into '/src/repo/view/lib/wikibase-serialization'...
Submodule path 'lib/resources/wikibase-api': checked out '2bdd34cbe4c31cf67f0bf72d968c289209ff6cc8'
Submodule path 'view/lib/wikibase-data-model': checked out 'b284d2e8d204d86515ebadd9b3fbe1b26e786099'
Submodule path 'view/lib/wikibase-data-values': checked out '59086c58bdb1b95a1c653b9cc4b7c1ebf69f117c'
Submodule path 'view/lib/wikibase-data-values-value-view': checked out '6cf115362f22024d5dd5549ce3c3a3e9bbef5b03'
Submodule path 'view/lib/wikibase-serialization': checked out '6b97c0fea57a217f95cea3f18cee80d9ce30f69d'
Submodule path 'view/lib/wikibase-termbox': checked out 'f967e7fce04a0babe8998160b73d9793ec1c2a0a'

$ grr init
Installed commit-msg hook.

$ git show-ref refs/heads/master
b437382643db90fe88567948bbdcd280a186ba28 refs/heads/master

$ composer install
Loading composer repositories with package information
Warning from https://repo.packagist.org: You are using an outdated version of Composer. Composer 2 is now available and you should upgrade. See https://getcomposer.org/2
Updating dependencies (including require-dev)
Package operations: 56 installs, 0 updates, 0 removals
  - Installing composer/installers (v1.10.0): Loading from cache
  - Installing squizlabs/php_codesniffer (3.5.8): Loading from cache
  - Installing dealerdirect/phpcodesniffer-composer-installer (v0.7.1): Loading from cache
  - Installing data-values/interfaces (0.2.5): Loading from cache
  - Installing data-values/data-values (2.3.0): Loading from cache
  - Installing data-values/common (0.4.3): Loading from cache
  - Installing data-values/number (0.10.1): Loading from cache
  - Installing data-values/time (1.0.2): Loading from cache
  - Installing wikimedia/purtle (v1.0.7): Loading from cache
  - Installing wikimedia/timestamp (v3.0.0): Loading from cache
  - Installing psr/simple-cache (1.0.1): Loading from cache
  - Installing psr/http-message (1.0.1): Loading from cache
  - Installing composer/spdx-licenses (1.5.5): Loading from cache
  - Installing composer/semver (3.2.4): Loading from cache
  - Installing mediawiki/mediawiki-codesniffer (v35.0.0): Loading from cache
  - Installing symfony/polyfill-php80 (v1.22.1): Loading from cache
  - Installing symfony/polyfill-mbstring (v1.22.1): Loading from cache
  - Installing symfony/polyfill-intl-normalizer (v1.22.1): Loading from cache
  - Installing symfony/polyfill-intl-grapheme (v1.22.1): Loading from cache
  - Installing symfony/polyfill-ctype (v1.22.1): Loading from cache
  - Installing symfony/string (v5.2.3): Loading from cache
  - Installing psr/container (1.0.0): Loading from cache
  - Installing symfony/service-contracts (v2.2.0): Loading from cache
  - Installing symfony/polyfill-php73 (v1.22.1): Loading from cache
  - Installing symfony/console (v5.2.3): Loading from cache
  - Installing psr/log (1.1.3): Loading from cache
  - Installing sabre/event (5.1.2): Loading from cache
  - Installing netresearch/jsonmapper (v2.1.0): Loading from cache
  - Installing microsoft/tolerant-php-parser (v0.0.23): Loading from cache
  - Installing phpdocumentor/reflection-common (2.2.0): Loading from cache
  - Installing webmozart/assert (1.9.1): Loading from cache
  - Installing phpdocumentor/type-resolver (1.4.0): Loading from cache
  - Installing phpdocumentor/reflection-docblock (5.2.2): Loading from cache
  - Installing felixfbecker/advanced-json-rpc (v3.2.0): Loading from cache
  - Installing composer/xdebug-handler (1.4.5): Loading from cache
  - Installing phan/phan (3.2.6): Loading from cache
  - Installing mediawiki/phan-taint-check-plugin (3.2.1): Loading from cache
  - Installing mediawiki/mediawiki-phan-config (0.10.6): Loading from cache
  - Installing mediawiki/minus-x (1.1.0): Loading from cache
  - Installing php-parallel-lint/php-console-color (v0.3): Loading from cache
  - Installing php-parallel-lint/php-console-highlighter (v0.5): Loading from cache
  - Installing php-parallel-lint/php-parallel-lint (v1.2.0): Loading from cache
  - Installing serialization/serialization (4.0.0): Loading from cache
  - Installing data-values/serialization (1.2.3): Loading from cache
  - Installing data-values/geo (4.2.2): Loading from cache
  - Installing monolog/monolog (2.2.0): Loading from cache
  - Installing wikimedia/assert (v0.5.0): Loading from cache
  - Installing wikibase/data-model (9.5.1): Loading from cache
  - Installing wikibase/data-model-serialization (2.9.1): Loading from cache
  - Installing wikibase/internal-serialization (2.10.0): Loading from cache
  - Installing diff/diff (3.2.0): Loading from cache
  - Installing wikibase/data-model-services (5.2.0): Loading from cache
  - Installing wikimedia/at-ease (v2.1.0): Downloading (connecting...)Downloading (100%)         
  - Installing onoi/message-reporter (1.4.2): Loading from cache
  - Installing phpstan/phpdoc-parser (0.4.9): Loading from cache
  - Installing slevomat/coding-standard (6.4.1): Loading from cache
symfony/service-contracts suggests installing symfony/service-implementation
symfony/console suggests installing symfony/event-dispatcher
symfony/console suggests installing symfony/lock
symfony/console suggests installing symfony/process
phan/phan suggests installing ext-ast (Needed for parsing ASTs (unless --use-fallback-parser is used). 1.0.1+ is needed, 1.0.8+ is recommended.)
monolog/monolog suggests installing graylog2/gelf-php (Allow sending log messages to a GrayLog2 server)
monolog/monolog suggests installing doctrine/couchdb (Allow sending log messages to a CouchDB server)
monolog/monolog suggests installing ruflin/elastica (Allow sending log messages to an Elastic Search server)
monolog/monolog suggests installing elasticsearch/elasticsearch (Allow sending log messages to an Elasticsearch server via official client)
monolog/monolog suggests installing php-amqplib/php-amqplib (Allow sending log messages to an AMQP server using php-amqplib)
monolog/monolog suggests installing ext-amqp (Allow sending log messages to an AMQP server (1.0+ required))
monolog/monolog suggests installing ext-mongodb (Allow sending log messages to a MongoDB server (via driver))
monolog/monolog suggests installing mongodb/mongodb (Allow sending log messages to a MongoDB server (via library))
monolog/monolog suggests installing aws/aws-sdk-php (Allow sending log messages to AWS services like DynamoDB)
monolog/monolog suggests installing rollbar/rollbar (Allow sending log messages to Rollbar)
monolog/monolog suggests installing php-console/php-console (Allow sending log messages to Google Chrome)
Writing lock file
Generating autoload files
17 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
PHP CodeSniffer Config installed_paths set to ../../mediawiki/mediawiki-codesniffer,../../slevomat/coding-standard

$ npm install
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated har-validator@5.1.5: this library is no longer supported

> fibers@4.0.3 install /src/repo/node_modules/fibers
> node build.js || nodejs build.js

`linux-x64-64-glibc` exists; testing
Binary is fine; exiting

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


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


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


> core-js@3.6.5 postinstall /src/repo/client/data-bridge/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"

Thank you for using core-js ( https://github.com/zloirock/core-js ) for polyfilling JavaScript standard library!

The project needs your help! Please consider supporting of core-js on Open Collective or Patreon: 
> https://opencollective.com/core-js 
> https://www.patreon.com/zloirock 

Also, the author of core-js ( https://github.com/zloirock ) is looking for a good job -)


> node-sass@4.14.1 install /src/repo/client/data-bridge/node_modules/node-sass
> node scripts/install.js

Cached binary found at /cache/_cacache/node-sass/4.14.1/linux-x64-64_binding.node

> node-sass@4.14.1 postinstall /src/repo/client/data-bridge/node_modules/node-sass
> node scripts/build.js

Binary found at /src/repo/client/data-bridge/node_modules/node-sass/vendor/linux-x64-64/binding.node
Testing binary
Binary is fine

> fibers_node_v8@3.1.5 preinstall /src/repo/client/data-bridge/node_modules/fibers_node_v8
> node preinstall.js


> fibers_node_v8@3.1.5 install /src/repo/client/data-bridge/node_modules/fibers_node_v8
> node build.js

ignore install

> fibers@4.0.3 install /src/repo/client/data-bridge/node_modules/fibers
> node build.js || nodejs build.js

`linux-x64-64-glibc` exists; testing
Binary is fine; exiting

> ejs@3.1.3 postinstall /src/repo/client/data-bridge/node_modules/@wdio/cli/node_modules/ejs
> node --harmony ./postinstall.js

Thank you for installing EJS: built with the Jake JavaScript build tool (https://jakejs.com/)


> fsevents@1.2.13 install /src/repo/client/data-bridge/node_modules/fsevents
> node install.js


Skipping 'fsevents' build as platform linux is not supported

> ejs@2.7.4 postinstall /src/repo/client/data-bridge/node_modules/ejs
> node ./postinstall.js

Thank you for installing EJS: built with the Jake JavaScript build tool (https://jakejs.com/)


> core-js@2.6.11 postinstall /src/repo/client/data-bridge/node_modules/babel-runtime/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> deasync@0.1.20 install /src/repo/client/data-bridge/node_modules/deasync
> node ./build.js

`linux-x64-node-10` exists; testing
Binary is fine; exiting

> yorkie@2.0.0 install /src/repo/client/data-bridge/node_modules/yorkie
> node bin/install.js

setting up Git hooks
can't find .git directory, skipping Git hooks installation

> core-js@2.6.11 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js-pure@3.6.5 postinstall /src/repo/client/data-bridge/node_modules/core-js-pure
> node -e "try{require('./postinstall')}catch(e){}"


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


> node-sass@4.14.1 install /src/repo/view/lib/wikibase-tainted-ref/node_modules/node-sass
> node scripts/install.js

added 3064 packages in 89.1s
Cached binary found at /cache/_cacache/node-sass/4.14.1/linux-x64-64_binding.node

> node-sass@4.14.1 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/node-sass
> node scripts/build.js

Binary found at /src/repo/view/lib/wikibase-tainted-ref/node_modules/node-sass/vendor/linux-x64-64/binding.node
Testing binary
Binary is fine

> fsevents@1.2.9 install /src/repo/view/lib/wikibase-tainted-ref/node_modules/fsevents
> node install


> fibers@4.0.3 install /src/repo/view/lib/wikibase-tainted-ref/node_modules/fibers
> node build.js || nodejs build.js

`linux-x64-64-glibc` exists; testing
Binary is fine; exiting

> fibers_node_v8@3.1.5 preinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/fibers_node_v8
> node preinstall.js


> fibers_node_v8@3.1.5 install /src/repo/view/lib/wikibase-tainted-ref/node_modules/fibers_node_v8
> node build.js

ignore install

> ejs@3.1.3 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@wdio/cli/node_modules/ejs
> node --harmony ./postinstall.js

Thank you for installing EJS: built with the Jake JavaScript build tool (https://jakejs.com/)


> ejs@2.7.4 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/ejs
> node ./postinstall.js

Thank you for installing EJS: built with the Jake JavaScript build tool (https://jakejs.com/)


> deasync@0.1.20 install /src/repo/view/lib/wikibase-tainted-ref/node_modules/deasync
> node ./build.js

`linux-x64-node-10` exists; testing
Binary is fine; exiting

> yorkie@2.0.0 install /src/repo/view/lib/wikibase-tainted-ref/node_modules/yorkie
> node bin/install.js

setting up Git hooks
can't find .git directory, skipping Git hooks installation

> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/api/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/theming/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/client-logger/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/router/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/core-events/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/channels/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/addons/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/vue/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/lazy-universal-dotenv/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> ejs@2.7.4 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/core/node_modules/ejs
> node ./postinstall.js

Thank you for installing EJS: built with the Jake JavaScript build tool (https://jakejs.com/)


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/core/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/simplebar/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/components/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js-pure@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/core-js-pure
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/ui/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/node-logger/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/channel-postmessage/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/client-api/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/addon-links/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/addon-actions/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/addon-a11y/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> tainted-ref@0.1.0 prepare /src/repo/view/lib/wikibase-tainted-ref
> node build/wikimedia-ui-base.js

added 3262 packages in 120s
npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@~2.3.1 (node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.3.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm WARN eslint-plugin-vue@6.2.2 requires a peer of eslint@^5.0.0 || ^6.0.0 but none is installed. You must install peer dependencies yourself.

added 1369 packages from 818 contributors and audited 1372 packages in 691.652s

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

found 0 vulnerabilities


Upgrading n:eslint-config-wikimedia from 0.17.0 -> 0.18.1
$ npm install

> core-js@3.9.1 postinstall /src/repo/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


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


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


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

npm WARN prepare removing existing node_modules/ before installation
npm WARN prepare removing existing node_modules/ before installation

> core-js@3.6.5 postinstall /src/repo/client/data-bridge/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"

Thank you for using core-js ( https://github.com/zloirock/core-js ) for polyfilling JavaScript standard library!

The project needs your help! Please consider supporting of core-js on Open Collective or Patreon: 
> https://opencollective.com/core-js 
> https://www.patreon.com/zloirock 

Also, the author of core-js ( https://github.com/zloirock ) is looking for a good job -)


> node-sass@4.14.1 install /src/repo/client/data-bridge/node_modules/node-sass
> node scripts/install.js

Cached binary found at /cache/_cacache/node-sass/4.14.1/linux-x64-64_binding.node

> node-sass@4.14.1 postinstall /src/repo/client/data-bridge/node_modules/node-sass
> node scripts/build.js

Binary found at /src/repo/client/data-bridge/node_modules/node-sass/vendor/linux-x64-64/binding.node
Testing binary
Binary is fine

> fibers_node_v8@3.1.5 preinstall /src/repo/client/data-bridge/node_modules/fibers_node_v8
> node preinstall.js


> fibers_node_v8@3.1.5 install /src/repo/client/data-bridge/node_modules/fibers_node_v8
> node build.js

ignore install

> fibers@4.0.3 install /src/repo/client/data-bridge/node_modules/fibers
> node build.js || nodejs build.js

`linux-x64-64-glibc` exists; testing
Binary is fine; exiting

> ejs@3.1.3 postinstall /src/repo/client/data-bridge/node_modules/@wdio/cli/node_modules/ejs
> node --harmony ./postinstall.js

Thank you for installing EJS: built with the Jake JavaScript build tool (https://jakejs.com/)


> fsevents@1.2.13 install /src/repo/client/data-bridge/node_modules/fsevents
> node install.js


Skipping 'fsevents' build as platform linux is not supported

> ejs@2.7.4 postinstall /src/repo/client/data-bridge/node_modules/ejs
> node ./postinstall.js

Thank you for installing EJS: built with the Jake JavaScript build tool (https://jakejs.com/)


> core-js@2.6.11 postinstall /src/repo/client/data-bridge/node_modules/babel-runtime/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> deasync@0.1.20 install /src/repo/client/data-bridge/node_modules/deasync
> node ./build.js

`linux-x64-node-10` exists; testing
Binary is fine; exiting

> yorkie@2.0.0 install /src/repo/client/data-bridge/node_modules/yorkie
> node bin/install.js

setting up Git hooks
can't find .git directory, skipping Git hooks installation

> core-js-pure@3.6.5 postinstall /src/repo/client/data-bridge/node_modules/core-js-pure
> node -e "try{require('./postinstall')}catch(e){}"


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

added 3064 packages in 147.893s

> core-js@2.6.11 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> node-sass@4.14.1 install /src/repo/view/lib/wikibase-tainted-ref/node_modules/node-sass
> node scripts/install.js

Cached binary found at /cache/_cacache/node-sass/4.14.1/linux-x64-64_binding.node

> node-sass@4.14.1 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/node-sass
> node scripts/build.js

Binary found at /src/repo/view/lib/wikibase-tainted-ref/node_modules/node-sass/vendor/linux-x64-64/binding.node
Testing binary
Binary is fine

> fsevents@1.2.9 install /src/repo/view/lib/wikibase-tainted-ref/node_modules/fsevents
> node install


> fibers@4.0.3 install /src/repo/view/lib/wikibase-tainted-ref/node_modules/fibers
> node build.js || nodejs build.js

`linux-x64-64-glibc` exists; testing
Binary is fine; exiting

> fibers_node_v8@3.1.5 preinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/fibers_node_v8
> node preinstall.js


> fibers_node_v8@3.1.5 install /src/repo/view/lib/wikibase-tainted-ref/node_modules/fibers_node_v8
> node build.js

ignore install

> ejs@3.1.3 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@wdio/cli/node_modules/ejs
> node --harmony ./postinstall.js

Thank you for installing EJS: built with the Jake JavaScript build tool (https://jakejs.com/)


> ejs@2.7.4 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/ejs
> node ./postinstall.js

Thank you for installing EJS: built with the Jake JavaScript build tool (https://jakejs.com/)


> deasync@0.1.20 install /src/repo/view/lib/wikibase-tainted-ref/node_modules/deasync
> node ./build.js

`linux-x64-node-10` exists; testing
Binary is fine; exiting

> yorkie@2.0.0 install /src/repo/view/lib/wikibase-tainted-ref/node_modules/yorkie
> node bin/install.js

setting up Git hooks
can't find .git directory, skipping Git hooks installation

> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/api/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/theming/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/client-logger/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/router/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/core-events/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/channels/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/addons/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/vue/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/lazy-universal-dotenv/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> ejs@2.7.4 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/core/node_modules/ejs
> node ./postinstall.js

Thank you for installing EJS: built with the Jake JavaScript build tool (https://jakejs.com/)


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/core/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/simplebar/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/components/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js-pure@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/core-js-pure
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/ui/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/node-logger/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/channel-postmessage/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/client-api/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/addon-links/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/addon-actions/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> core-js@3.6.5 postinstall /src/repo/view/lib/wikibase-tainted-ref/node_modules/@storybook/addon-a11y/node_modules/core-js
> node -e "try{require('./postinstall')}catch(e){}"


> tainted-ref@0.1.0 prepare /src/repo/view/lib/wikibase-tainted-ref
> node build/wikimedia-ui-base.js

added 3262 packages in 188.04s
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@2.3.2 (node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.3.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

added 9 packages from 11 contributors, removed 8 packages, updated 4 packages, moved 3 packages and audited 1373 packages in 248.712s

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

found 0 vulnerabilities


$ npm update eslint -depth 10

$ npm install grunt-eslint@23.0.0 --save-exact
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@2.3.2 (node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.3.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

+ grunt-eslint@23.0.0
updated 1 package and audited 1373 packages in 13.009s

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

found 0 vulnerabilities


$ ./node_modules/.bin/eslint client/i18n/gcr.json repo/i18n/lez.json client/i18n/nqo.json repo/tests/phpunit/data/api/setlabel-removed.json view/tests/qunit/jquery/wikibase/jquery.wikibase.itemview.tests.js repo/i18n/api/ce.json repo/i18n/ce.json view/tests/qunit/jquery/wikibase/toolbar/jquery.wikibase.toolbar.tests.js lib/i18n/lez.json lib/i18n/nn.json repo/tests/phpunit/data/federatedProperties/query-siteinfo-namespaces-wikibase.json client/i18n/et.json client/i18n/syl.json repo/tests/phpunit/data/federatedProperties/wbgetentities-property-datatype.json repo/i18n/api/si.json repo/i18n/api/lv.json view/resources/jquery/wikibase/jquery.wikibase.referenceview.js lib/resources/wikibase.Site.js view/resources/jquery/wikibase/jquery.wikibase.itemview.js repo/i18n/azb.json client/i18n/mui.json client/i18n/cop.json view/resources/jquery/wikibase/jquery.wikibase.entityview.js repo/i18n/ksw.json client/i18n/lfn.json repo/resources/wikibase.special/wikibase.special.mergeItems.js view/resources/jquery/wikibase/jquery.wikibase.siteselector.js repo/i18n/qwh.json client/i18n/pam.json view/tests/qunit/jquery/wikibase/jquery.wikibase.entitytermsview.tests.js client/i18n/lzh.json client/i18n/sdc.json lib/i18n/ht.json repo/i18n/ml.json view/tests/qunit/jquery/wikibase/jquery.wikibase.siteselector.tests.js repo/i18n/tl.json repo/resources/jquery.wikibase/jquery.wikibase.entitysearch.js client/i18n/avk.json client/i18n/kw.json lib/i18n/bjn.json repo/i18n/mad.json client/i18n/api/jv.json repo/i18n/ie.json lib/i18n/gom-deva.json repo/i18n/zgh.json client/i18n/lo.json lib/i18n/hr.json lib/i18n/got.json lib/i18n/ms.json repo/i18n/bjn.json repo/i18n/api/pam.json client/i18n/ig.json lib/i18n/din.json view/resources/wikibase/entityIdFormatter/DataValueBasedEntityIdPlainFormatter.js repo/i18n/mr.json repo/tests/phpunit/data/rdf/entities/Q7_no_prefixed_ids.json client/i18n/lzz.json lib/i18n/atj.json view/resources/wikibase/view/ViewFactoryFactory.js repo/i18n/te.json lib/i18n/mni.json repo/i18n/api/sa.json repo/i18n/cnr-latn.json client/i18n/api/es.json repo/i18n/war.json repo/resources/experts/__namespace.js view/tests/qunit/jquery/wikibase/jquery.wikibase.entitytermsforlanguagelistview.tests.js view/resources/jquery/wikibase/jquery.wikibase.badgeselector.js build/dist-size/analyze/queries/getCommits.js lib/i18n/ia.json client/i18n/hil.json repo/resources/wikibase.getUserLanguages.js repo/i18n/frr.json repo/i18n/gom-deva.json lib/i18n/khw.json client/i18n/th.json client/i18n/lag.json lib/i18n/tokipona.json lib/i18n/de-formal.json repo/i18n/ln.json repo/i18n/as.json view/tests/qunit/wikibase/entityChangers/LabelsChanger.tests.js repo/i18n/api/uk.json client/i18n/scn.json lib/i18n/nqo.json view/resources/jquery/wikibase/jquery.wikibase.entitytermsview.js view/tests/qunit/jquery/wikibase/jquery.wikibase.statementview.tests.js lib/i18n/mad.json lib/i18n/qwh.json repo/i18n/frp.json repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-p18-de.json view/tests/qunit/jquery/wikibase/toolbar/jquery.wikibase.singlebuttontoolbar.tests.js client/i18n/api/et.json repo/tests/phpunit/data/rdf/entities/Q1.json client/i18n/kl.json repo/i18n/ku-latn.json repo/i18n/ko.json client/i18n/tzm.json view/resources/wikibase/wikibase.ValueViewBuilder.js lib/i18n/te.json client/i18n/ary.json client/i18n/fit.json client/i18n/ilo.json repo/i18n/nb.json lib/i18n/az.json lib/i18n/tzm.json view/resources/wikibase/store/store.EntityStore.js client/i18n/zh-hant.json repo/i18n/tet.json client/i18n/bs.json repo/i18n/gl.json repo/i18n/api/ar.json lib/i18n/sw.json view/tests/qunit/jquery/wikibase/toolbar/jquery.wikibase.removetoolbar.tests.js repo/resources/formatters/ApiValueFormatter.js repo/i18n/gsw.json client/i18n/skr-arab.json view/resources/wikibase/entityChangers/LabelsChanger.js repo/i18n/kiu.json repo/i18n/api/br.json lib/i18n/ciw.json repo/i18n/nqo.json client/i18n/be-tarask.json view/tests/qunit/jquery/wikibase/jquery.wikibase.entitytermsforlanguageview.tests.js repo/i18n/hrx.json build/ci-scripts/composer.local.json repo/tests/phpunit/data/rdf/entities/Q3.json client/i18n/ceb.json view/resources/wikibase/view/ToolbarFactory.js repo/i18n/api/sr-ec.json lib/i18n/it.json repo/tests/phpunit/data/rdf/entities/Q6.json view/resources/jquery/wikibase/toolbar/jquery.wikibase.toolbar.js lib/i18n/eo.json lib/i18n/smn.json view/resources/jquery/wikibase/jquery.wikibase.statementgroupview.js repo/i18n/pa.json client/i18n/kum.json client/i18n/en-gb.json lib/i18n/sq.json client/i18n/arn.json client/i18n/api/zh-hant.json view/resources/wikibase/entityChangers/StatementsChanger.js lib/i18n/sm.json repo/i18n/da.json lib/i18n/ne.json client/i18n/tt-latn.json lib/i18n/csb.json repo/i18n/sah.json repo/i18n/kjh.json lib/i18n/is.json client/i18n/nia.json repo/i18n/kk-cyrl.json lib/i18n/inh.json repo/i18n/he.json repo/i18n/api/bcl.json client/i18n/luz.json lib/i18n/fo.json view/tests/qunit/jquery/ui/jquery.ui.TemplatedWidget.tests.js lib/i18n/uz.json lib/i18n/brx.json repo/i18n/nia.json client/i18n/de-ch.json client/i18n/pa.json repo/resources/formatters/ApiValueFormatterFactory.js lib/i18n/ug-arab.json lib/i18n/sco.json repo/i18n/api/lt.json client/i18n/api/pl.json client/i18n/btm.json view/tests/qunit/jquery/wikibase/jquery.wikibase.labelview.tests.js repo/i18n/bgn.json repo/tests/phpunit/data/rdf/entities/Q9.json repo/i18n/kbp.json view/tests/qunit/experts/wikibase.experts.modules.tests.js repo/i18n/api/hr.json client/i18n/hi.json lib/i18n/yi.json repo/i18n/abs.json lib/i18n/ta.json client/i18n/ka.json lib/i18n/fit.json client/i18n/lt.json lib/i18n/mk.json client/i18n/kjh.json view/tests/qunit/wikibase/view/testViewController.js lib/i18n/tl.json repo/i18n/ia.json client/i18n/ca.json view/resources/wikibase/view/ViewController.js lib/i18n/ie.json lib/i18n/lb.json view/resources/jquery/jquery.util.getDirectionality.js client/i18n/lmo.json client/i18n/ang.json client/i18n/bar.json repo/i18n/an.json repo/i18n/vep.json repo/i18n/api/is.json repo/i18n/sc.json view/tests/qunit/wikibase/entityIdFormatter/DataValueBasedEntityIdPlainFormatter.tests.js view/tests/qunit/jquery/wikibase/jquery.wikibase.sitelinkgroupview.tests.js client/i18n/ms.json client/i18n/api/io.json client/i18n/khw.json lib/i18n/br.json repo/i18n/en-gb.json lib/i18n/ru.json client/i18n/gom-deva.json client/i18n/zh-hk.json lib/i18n/ro.json repo/i18n/anp.json repo/i18n/alt.json lib/i18n/km.json lib/i18n/mwl.json repo/i18n/api/da.json lib/i18n/fy.json repo/i18n/ses.json client/i18n/ku.json repo/i18n/bdr.json client/i18n/ckb.json repo/i18n/wuu.json repo/i18n/map-bms.json lib/i18n/fr.json client/i18n/api/scn.json repo/i18n/api/ia.json repo/i18n/api/en.json lib/i18n/guc.json repo/tests/selenium/wdio.conf.js client/i18n/sty.json lib/i18n/kum.json repo/i18n/frc.json lib/i18n/zh-hant.json view/resources/wikibase/entityChangers/EntityChangersFactory.js repo/i18n/zh-hk.json repo/i18n/diq.json client/i18n/ln.json lib/i18n/sr-ec.json view/tests/qunit/wikibase/entityChangers/SiteLinkSetsChanger.tests.js lib/i18n/crh-latn.json lib/i18n/bbc-latn.json repo/i18n/vec.json lib/i18n/ann.json client/i18n/pih.json client/i18n/ia.json lib/i18n/szl.json repo/i18n/api/de.json client/i18n/ksh.json view/resources/jquery/wikibase/jquery.wikibase.statementview.RankSelector.js client/i18n/arz.json repo/i18n/sat.json lib/i18n/sty.json repo/i18n/ca.json view/resources/wikibase/entityChangers/namespace.js client/i18n/ciw.json client/i18n/smn.json client/i18n/api/uk.json lib/i18n/pcd.json client/i18n/aeb-arab.json repo/i18n/api/th.json repo/i18n/api/nl.json repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-p31-en.json lib/i18n/ami.json lib/i18n/bto.json repo/i18n/olo.json client/i18n/cv.json view/resources/jquery/wikibase/snakview/snakview.variations.Variation.js lib/i18n/zea.json repo/tests/phpunit/data/rdf/entities/Q4.json client/i18n/ie.json view/tests/qunit/jquery/wikibase/jquery.wikibase.entityview.tests.js lib/i18n/nl.json repo/i18n/sr-ec.json lib/i18n/sv.json repo/i18n/os.json client/i18n/api/ksh.json repo/i18n/din.json lib/i18n/tr.json repo/i18n/awa.json client/i18n/lez.json lib/i18n/ba.json lib/i18n/ang.json lib/i18n/el.json client/i18n/awa.json client/resources/wikibase.client.action.edit.collapsibleFooter.js lib/i18n/vep.json repo/i18n/de.json client/i18n/vi.json lib/i18n/sdc.json lib/i18n/nap.json extension-client.json client/i18n/crh-latn.json repo/i18n/yo.json repo/i18n/hy.json repo/i18n/sd.json composer.json client/i18n/zh-hans.json lib/i18n/en.json client/i18n/api/it.json repo/i18n/pl.json repo/i18n/mhr.json client/i18n/krl.json lib/i18n/da.json repo/tests/phpunit/data/rdf/entities/Q5.json repo/i18n/fa.json client/i18n/sah.json view/resources/wikibase/entityIdFormatter/EntityIdPlainFormatter.js lib/i18n/bho.json lib/i18n/as.json client/i18n/shi.json repo/i18n/jut.json repo/sql/abstract/wb_changes_subscription.json lib/i18n/pam.json lib/i18n/nan.json client/i18n/nl.json view/resources/jquery/wikibase/jquery.wikibase.propertyview.js repo/i18n/az.json repo/i18n/blc.json view/resources/jquery/wikibase/toolbar/jquery.wikibase.addtoolbar.js repo/i18n/api/yi.json client/i18n/bbc-latn.json client/i18n/ja.json repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-q42-en.json repo/i18n/api/ug-arab.json lib/i18n/ase.json client/i18n/nso.json view/resources/jquery/wikibase/toolbar/jquery.wikibase.edittoolbar.js client/i18n/pfl.json repo/i18n/bho.json lib/i18n/pl.json repo/i18n/be.json client/i18n/km.json repo/i18n/ig.json lib/i18n/arz.json client/i18n/myv.json repo/i18n/xsy.json lib/i18n/bgn.json repo/i18n/kea.json repo/i18n/tk.json client/i18n/jam.json client/i18n/hrx.json client/i18n/nds.json repo/i18n/api/oc.json client/i18n/api/mni.json repo/i18n/lbe.json view/tests/qunit/jquery/wikibase/toolbar/jquery.wikibase.toolbaritem.tests.js view/resources/wikibase/entityIdFormatter/CachingEntityIdPlainFormatter.js client/i18n/jv.json client/i18n/fi.json repo/i18n/api/fi.json repo/tests/phpunit/data/federatedProperties/api-entity-search-helper-test-data-emptyResponse.json lib/i18n/tg-cyrl.json client/i18n/sa.json client/i18n/qqq.json lib/i18n/xmf.json client/i18n/api/qqq.json client/i18n/es-formal.json lib/i18n/hyw.json repo/i18n/tay.json lib/i18n/gd.json repo/i18n/tt-cyrl.json repo/i18n/ja.json view/tests/qunit/jquery/wikibase/toolbar/jquery.wikibase.edittoolbar.tests.js repo/tests/qunit/dataTypes/DataType.tests.js repo/i18n/aeb-arab.json view/tests/qunit/wikibase/templates.tests.js repo/i18n/fit.json client/i18n/ses.json client/i18n/jbo.json client/i18n/nb.json repo/tests/phpunit/data/api/setlabel.json lib/i18n/mrh.json client/i18n/api/eu.json build/federated-properties/files/composer.local.json view/tests/qunit/jquery/jquery.util.EventSingletonManager.tests.js lib/i18n/ady-cyrl.json view/resources/jquery/wikibase/snakview/snakview.js lib/i18n/kk-cyrl.json repo/resources/parsers/getStore.js repo/i18n/sms.json repo/i18n/es.json repo/i18n/ht.json view/resources/jquery/wikibase/jquery.wikibase.sitelinkgrouplistview.js lib/i18n/xsy.json repo/i18n/krc.json view/tests/qunit/wikibase/entityChangers/StatementsChangerState.tests.js repo/i18n/brx.json lib/i18n/bn.json repo/i18n/mzn.json lib/i18n/mg.json client/resources/jquery.ui/jquery.ui.suggester.js client/i18n/got.json client/i18n/ml.json client/i18n/mni.json lib/i18n/wuu.json client/i18n/mwl.json repo/i18n/el.json repo/i18n/vro.json repo/i18n/nn.json repo/i18n/udm.json client/i18n/api/ml.json repo/i18n/api/lki.json repo/i18n/sr-el.json lib/i18n/lfn.json lib/i18n/frc.json client/i18n/sh.json client/i18n/api/cs.json client/resources/util.highlightSubstring.js repo/i18n/eo.json client/i18n/bn.json repo/i18n/api/hi.json repo/i18n/lad.json repo/i18n/arq.json view/tests/qunit/jquery/ui/jquery.ui.tagadata.tests.js client/resources/wikibase.client.data-bridge.app.js client/i18n/az.json lib/i18n/lad.json client/i18n/api/sr-ec.json lib/i18n/sat.json client/i18n/alt.json repo/i18n/si.json repo/i18n/cjy-hant.json lib/i18n/anp.json repo/i18n/api/pt-br.json view/resources/wikibase/wikibase.getLanguageNameByCode.js repo/i18n/guc.json client/i18n/ko.json repo/sql/abstract/wb_items_per_site.json lib/i18n/sd.json repo/i18n/kri.json client/i18n/mg.json view/tests/qunit/wikibase/wikibase.getLanguageNameByCode.tests.js repo/i18n/api/ja.json view/resources/wikibase/wikibase.ValueFormatterFactory.js repo/i18n/ilo.json client/i18n/anp.json repo/tests/selenium/specs/readmode.references.js repo/i18n/api/sw.json client/i18n/sli.json repo/i18n/rmc.json repo/resources/wikibase.ui.entitysearch.js lib/i18n/su.json lib/i18n/shi.json view/resources/wikibase/templates.js repo/i18n/gaa.json repo/i18n/ti.json repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-p31-en-de.json client/i18n/pap.json client/i18n/api/az.json repo/i18n/gcr.json repo/i18n/ceb.json client/i18n/kn.json client/i18n/sjd.json view/tests/qunit/wikibase/entityChangers/DescriptionsChanger.tests.js repo/i18n/xal.json client/i18n/sk.json client/i18n/wa.json repo/resources/wikibase.entityPage.entityLoaded.js client/i18n/sgs.json repo/i18n/api/ast.json lib/i18n/mt.json client/i18n/tet.json repo/i18n/szl.json client/i18n/gor.json client/i18n/mt.json lib/i18n/lmo.json view/resources/jquery/jquery.util.EventSingletonManager.js lib/i18n/sdh.json repo/i18n/gor.json view/resources/jquery/wikibase/jquery.wikibase.statementview.js lib/i18n/sc.json lib/i18n/krc.json lib/i18n/kcg.json repo/i18n/lt.json client/i18n/arq.json client/i18n/zu.json client/i18n/olo.json repo/tests/phpunit/data/federatedProperties/query-siteinfo-namespaces-wikidata.json client/i18n/frc.json repo/i18n/pms.json repo/i18n/nan.json lib/i18n/gu.json lib/i18n/ig.json repo/i18n/lki.json lib/i18n/nds-nl.json repo/i18n/mn.json repo/i18n/eml.json lib/i18n/bi.json repo/i18n/gcf.json client/i18n/api/ca.json view/resources/jquery/wikibase/jquery.wikibase.statementgrouplistview.js repo/tests/phpunit/data/rdf/entities/Q8.json repo/i18n/en.json client/i18n/tg-cyrl.json repo/i18n/yi.json view/tests/qunit/jquery/jquery.util.getDirectionality.tests.js repo/i18n/ext.json view/tests/qunit/wikibase/view/ViewFactory.tests.js client/i18n/frp.json repo/i18n/api/pl.json lib/i18n/zh-hans.json client/i18n/ro.json repo/i18n/av.json repo/i18n/mt.json view/resources/jquery/wikibase/toolbar/jquery.wikibase.toolbaritem.js lib/i18n/kbp.json repo/i18n/ur.json lib/i18n/av.json lib/i18n/ckb.json repo/i18n/sco.json lib/i18n/roa-tara.json client/i18n/frr.json lib/i18n/liv.json client/i18n/so.json client/i18n/bjn.json client/i18n/api/lt.json lib/i18n/rif.json repo/i18n/api/ksh.json repo/i18n/arz.json lib/i18n/gcr.json client/i18n/qwh.json repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-p18-p31-en-de.json repo/i18n/sw.json repo/i18n/ang.json repo/i18n/ro.json lib/i18n/en-ca.json lib/i18n/sli.json client/i18n/ug-arab.json client/resources/jquery.wikibase/jquery.wikibase.siteselector.js client/i18n/api/nb.json repo/i18n/aeb-latn.json repo/i18n/gd.json client/i18n/sdh.json lib/i18n/os.json repo/i18n/cak.json client/i18n/api/ru.json lib/i18n/hrx.json repo/i18n/tcy.json client/i18n/api/pt.json lib/i18n/ur.json repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-p31-de.json client/i18n/hy.json lib/i18n/tt-cyrl.json view/tests/qunit/wikibase/utilities/GuidGenerator.tests.js repo/i18n/kw.json client/resources/wikibase.client.getMwApiForRepo.js view/tests/qunit/jquery/wikibase/jquery.wikibase.pagesuggester.tests.js repo/i18n/ru.json repo/i18n/shi.json repo/i18n/prs.json client/i18n/nds-nl.json view/tests/qunit/wikibase/entityIdFormatter/testEntityIdHtmlFormatter.js repo/i18n/inh.json lib/i18n/vec.json view/resources/wikibase/view/ToolbarViewController.js repo/resources/dataTypes/DataType.js client/i18n/ar.json repo/i18n/cdo.json repo/tests/phpunit/data/rdf/entities/P2.json client/i18n/gn.json client/i18n/gsw.json client/i18n/zgh.json repo/i18n/api/ps.json repo/i18n/la.json lib/i18n/qu.json repo/i18n/mrh.json client/i18n/fr.json repo/i18n/api/hu.json lib/i18n/es.json repo/i18n/hr.json repo/i18n/arc.json repo/i18n/api/scn.json client/i18n/azb.json repo/i18n/api/ca.json client/i18n/sr-el.json client/i18n/cak.json client/i18n/xh.json client/i18n/he.json repo/i18n/so.json lib/i18n/ff.json client/i18n/gd.json repo/i18n/rm.json lib/i18n/id.json repo/tests/qunit/dataTypes/DataTypeStore.tests.js client/i18n/da.json repo/i18n/mk.json client/i18n/bgn.json lib/i18n/se.json repo/tests/phpunit/data/federatedProperties/api-entity-search-helper-test-data-entityIdResponse.json repo/i18n/api/lb.json view/tests/qunit/jquery/wikibase/snakview/snakview.tests.js client/resources/jquery.ui/jquery.ui.ooMenu.js lib/i18n/gsw.json view/tests/qunit/jquery/wikibase/jquery.wikibase.propertyview.tests.js lib/i18n/yo.json lib/packages/wikibase/changes/composer.json client/i18n/ff.json repo/i18n/khw.json lib/i18n/lzh.json repo/i18n/mwl.json view/tests/qunit/wikibase/wikibase.tests.js view/tests/qunit/wikibase/utilities/ClaimGuidGenerator.tests.js lib/i18n/ksh.json repo/i18n/api/ro.json client/i18n/udm.json client/sql/abstract/entity_usage.json lib/i18n/mnc.json build/dist-size/web/lib/main.js repo/i18n/pap.json lib/i18n/ca.json repo/i18n/gan-hans.json lib/i18n/pt-br.json repo/i18n/pt-br.json lib/i18n/aeb-latn.json client/i18n/uk.json lib/i18n/bcl.json lib/i18n/pa.json lib/i18n/udm.json lib/i18n/co.json repo/resources/wikibase.special/wikibase.special.languageLabelDescriptionAliases.js client/i18n/kk-cyrl.json client/i18n/ku-latn.json repo/i18n/api/sq.json client/i18n/ha.json view/resources/wikibase/entityChangers/EntityTermsChanger.js repo/i18n/ciw.json client/i18n/cs.json repo/i18n/api/my.json client/i18n/ce.json client/i18n/se.json repo/i18n/pam.json lib/i18n/lkt.json lib/i18n/sjd.json repo/i18n/pfl.json lib/i18n/kjp.json client/i18n/api/lv.json lib/i18n/war.json repo/i18n/id.json repo/i18n/csb.json repo/i18n/api/roa-tara.json lib/i18n/mn.json view/resources/jquery/wikibase/jquery.wikibase.entitytermsforlanguageview.js repo/i18n/api/zh-hans.json repo/i18n/osi.json lib/i18n/lt.json lib/i18n/pnb.json client/i18n/hif-latn.json repo/i18n/pih.json repo/i18n/bci.json repo/i18n/min.json repo/i18n/wa.json repo/i18n/ne.json repo/i18n/api/jv.json view/resources/jquery/wikibase/snakview/snakview.ViewState.js repo/i18n/krl.json repo/sql/abstract/wb_id_counters.json repo/i18n/fur.json client/i18n/api/sr-el.json client/i18n/co.json repo/sql/abstract/wb_changes.json repo/i18n/bi.json lib/i18n/bs.json client/i18n/yo.json repo/sql/abstract/term_store.json client/i18n/tl.json lib/i18n/dty.json view/tests/phpunit/Termbox/data/resources.json repo/i18n/sl.json repo/tests/selenium/specs/tainted-ref.js client/i18n/gcf.json repo/i18n/sm.json client/i18n/sc.json client/resources/wikibase.buildErrorOutput.js repo/i18n/bto.json lib/i18n/he.json lib/i18n/cnr-latn.json lib/i18n/ary.json view/resources/wikibase/entityIdFormatter/CachingEntityIdHtmlFormatter.js client/i18n/rif.json view/tests/qunit/jquery/wikibase/jquery.wikibase.badgeselector.tests.js view/resources/wikibase/utilities/wikibase.utilities.ui.js lib/i18n/bqi.json build/dist-size/analyze/getHistoryForFile.js repo/i18n/lzz.json view/resources/wikibase/entityChangers/SiteLinkSetsChanger.js repo/i18n/nl.json view/tests/qunit/jquery/wikibase/jquery.wikibase.statementgroupview.tests.js client/i18n/mn.json repo/i18n/lmo.json repo/i18n/api/szy.json repo/i18n/api/eu.json repo/i18n/hyw.json view/tests/qunit/wikibase/entityChangers/AliasesChanger.tests.js extension-repo.json repo/i18n/hif-latn.json repo/i18n/ky.json repo/i18n/ast.json repo/i18n/ary.json repo/i18n/rue.json client/i18n/ne.json client/i18n/blc.json client/i18n/ps.json repo/i18n/kab.json client/i18n/inh.json lib/i18n/cv.json lib/i18n/crh-cyrl.json client/i18n/api/sah.json client/i18n/os.json repo/i18n/api/et.json lib/i18n/lki.json repo/i18n/smn.json repo/i18n/uz.json repo/i18n/pcd.json client/i18n/hu.json repo/i18n/af.json repo/i18n/atj.json repo/sql/abstract/wb_property_info.json repo/i18n/mnw.json client/i18n/zea.json repo/tests/selenium/specs/item.js client/i18n/bci.json view/resources/jquery/wikibase/jquery.wikibase.pagesuggester.js repo/i18n/hi.json client/i18n/ady-cyrl.json repo/i18n/wo.json repo/i18n/lzh.json repo/i18n/gn.json lib/i18n/myv.json view/resources/wikibase/view/ControllerViewFactory.js lib/i18n/pag.json lib/i18n/uk.json client/i18n/su.json client/i18n/shy-latn.json lib/i18n/mr.json repo/i18n/ka.json client/i18n/api/fa.json client/i18n/lrc.json repo/i18n/mni.json repo/tests/qunit/wikibase.PropertyDataTypeStore.tests.js lib/i18n/grc.json lib/i18n/lld.json lib/i18n/si.json view/resources/wikibase/entityIdFormatter/DataValueBasedEntityIdHtmlFormatter.js repo/i18n/bs.json view/resources/jquery/wikibase/jquery.wikibase.sitelinklistview.js lib/i18n/nys.json repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-p18-en-de.json repo/i18n/sq.json repo/i18n/kum.json view/resources/wikibase/view/StructureEditorFactory.js client/i18n/arc.json lib/i18n/sa.json client/i18n/hsb.json client/i18n/war.json repo/i18n/ch.json client/i18n/trv.json lib/i18n/hsb.json repo/i18n/api/bg.json repo/tests/phpunit/data/api/setclaim.json view/tests/qunit/jquery/wikibase/jquery.wikibase.sitelinklistview.tests.js client/i18n/aeb-latn.json repo/i18n/lv.json client/i18n/tr.json client/i18n/ru.json client/i18n/lld.json client/i18n/rmc.json lib/i18n/ch.json lib/i18n/cu.json view/resources/jquery/wikibase/jquery.wikibase.sitelinkgroupview.js repo/i18n/api/fa.json repo/i18n/tr.json lib/i18n/la.json lib/i18n/rue.json client/i18n/api/krc.json repo/tests/phpunit/data/federatedProperties/api-entity-search-helper-test-data-oneResponse.json view/resources/jquery/wikibase/snakview/snakview.SnakTypeSelector.js repo/i18n/aeb.json repo/i18n/lij.json tests/api-testing/LuaWikibaseIntegrationTest.js repo/i18n/ff.json client/i18n/gan-hans.json lib/i18n/sk.json lib/i18n/alt.json repo/resources/experts/getStore.js client/i18n/mrh.json client/i18n/api/id.json client/i18n/grc.json repo/i18n/en-ca.json repo/sql/abstractSchemaChanges/patch-wb_changes_dispatch-make-chd_seen-unsigned.json lib/i18n/tly.json client/i18n/bto.json repo/i18n/api/sco.json repo/i18n/szy.json repo/i18n/api/qqq.json client/i18n/ga.json repo/i18n/nah.json repo/i18n/scn.json repo/i18n/api/id.json repo/i18n/tzm.json client/i18n/bxr.json repo/i18n/lkt.json view/tests/qunit/jquery/ui/jquery.ui.closeable.tests.js repo/i18n/fy.json repo/i18n/api/it.json client/i18n/api/pt-br.json repo/i18n/uk.json lib/i18n/dsb.json repo/i18n/syl.json lib/i18n/rm.json repo/tests/phpunit/data/rdf/entities/Q4_no_prefixed_ids.json client/i18n/sq.json repo/i18n/lrc.json lib/i18n/kw.json repo/i18n/hsb.json client/i18n/din.json repo/i18n/ami.json view/resources/jquery/wikibase/jquery.wikibase.labelview.js repo/i18n/api/mr.json lib/i18n/ka.json client/i18n/api/sv.json repo/i18n/dty.json view/resources/wikibase/view/ReadModeViewFactory.js view/tests/qunit/wikibase/view/ToolbarFactory.tests.js repo/i18n/api/bn.json client/i18n/api/bn.json repo/i18n/ksh.json lib/i18n/ilo.json view/resources/jquery/wikibase/snakview/snakview.variations.js repo/i18n/co.json view/resources/jquery/wikibase/jquery.wikibase.listview.ListItemAdapter.js repo/i18n/mg.json repo/i18n/pag.json client/i18n/aeb.json lib/i18n/avk.json view/resources/jquery/wikibase/jquery.wikibase.aliasesview.js client/i18n/hr.json lib/i18n/min.json view/resources/jquery/wikibase/snakview/snakview.variations.SomeValue.js lib/i18n/azb.json client/i18n/be.json lib/i18n/af.json repo/i18n/skr-arab.json repo/i18n/ga.json client/i18n/api/roa-tara.json lib/i18n/fur.json client/i18n/sat.json repo/tests/phpunit/data/federatedProperties/api-entity-search-helper-test-data-filteredResult.json lib/i18n/mo.json repo/i18n/ace.json repo/i18n/api/be-tarask.json repo/tests/phpunit/data/rdf/entities/Q10.json repo/tests/phpunit/data/rdf/entities/Q6_no_prefixed_ids.json view/resources/jquery/wikibase/jquery.wikibase.wbtooltip.js client/i18n/tyv.json repo/i18n/kip.json repo/i18n/api/sv.json client/i18n/api/nl.json view/resources/wikibase/entityChangers/DescriptionsChanger.js client/i18n/te.json client/i18n/tk.json repo/i18n/nso.json client/i18n/mr.json client/i18n/api/en.json client/i18n/api/lki.json lib/i18n/ps.json repo/i18n/api/fr.json client/i18n/kri.json client/i18n/xal.json lib/i18n/ast.json lib/i18n/tay.json client/i18n/ace.json lib/i18n/nb.json repo/i18n/ban.json client/i18n/api/be-tarask.json client/i18n/sl.json view/tests/qunit/jquery/wikibase/jquery.wikibase.referenceview.tabsenabled.tests.js lib/i18n/scn.json client/resources/jquery.event.special.eachchange.js repo/i18n/li.json repo/resources/dataTypes/DataTypeStore.js lib/i18n/sl.json view/resources/wikibase/store/store.CombiningEntityStore.js repo/i18n/mnc.json client/i18n/diq.json lib/i18n/frp.json client/i18n/ch.json client/i18n/gl.json lib/i18n/li.json repo/i18n/sty.json client/i18n/it.json client/i18n/bqi.json client/i18n/api/mk.json repo/tests/qunit/index.js lib/i18n/shn.json lib/i18n/ceb.json client/i18n/api/ko.json lib/i18n/btm.json lib/i18n/gaa.json view/resources/wikibase/view/namespace.js repo/i18n/ta.json lib/i18n/hoc.json repo/i18n/mui.json client/i18n/pl.json lib/i18n/pt.json lib/i18n/diq.json view/tests/qunit/jquery/jquery.sticknode.tests.js lib/i18n/olo.json client/i18n/ase.json client/i18n/af.json client/i18n/ee.json client/i18n/tcy.json client/i18n/api/yi.json view/resources/jquery/wikibase/jquery.wikibase.snaklistview.js client/i18n/api/he.json client/i18n/abs.json lib/tests/phpunit/Units/testunits.json client/i18n/is.json client/i18n/ksw.json client/i18n/api/vi.json lib/i18n/luz.json lib/i18n/vo.json repo/i18n/tyv.json repo/i18n/shy-latn.json repo/i18n/rej.json view/tests/qunit/jquery/wikibase/jquery.wikibase.statementview.RankSelector.tests.js lib/i18n/an.json client/i18n/lij.json repo/i18n/pt.json repo/i18n/xh.json lib/i18n/ti.json lib/i18n/cop.json lib/i18n/en-gb.json view/resources/wikibase/wikibase.buildErrorOutput.js client/i18n/yue.json client/i18n/gu.json view/resources/wikibase/utilities/wikibase.utilities.GuidGenerator.js client/i18n/yi.json client/i18n/lki.json client/i18n/nan.json view/resources/jquery/wikibase/toolbar/jquery.wikibase.toolbarbutton.js client/i18n/api/hu.json repo/i18n/cu.json lib/i18n/tcy.json client/i18n/api/zh-hans.json client/i18n/api/br.json lib/i18n/lzz.json view/resources/jquery/wikibase/jquery.wikibase.statementlistview.js repo/i18n/sk.json repo/resources/wikibase.PropertyDataTypeStore.js repo/tests/phpunit/data/federatedProperties/api-entity-search-helper-test-data-twoResponse.json client/i18n/cy.json repo/i18n/fo.json repo/tests/qunit/wikibase.EntityInitializer.tests.js repo/i18n/kcg.json lib/i18n/kri.json lib/i18n/rej.json repo/resources/experts/Property.js package.json lib/i18n/sgs.json repo/i18n/api/sr-el.json client/i18n/api/sq.json repo/tests/phpunit/data/federatedProperties/api-entity-search-helper-test-data-unexpectedResponse.json client/i18n/nap.json repo/i18n/grc.json client/i18n/de.json client/i18n/io.json client/i18n/lb.json repo/i18n/cop.json repo/i18n/nys.json client/resources/jquery.util.getscrollbarwidth.js view/tests/qunit/jquery/wikibase/toolbar/jquery.wikibase.toolbarbutton.tests.js repo/i18n/roa-tara.json client/i18n/bg.json repo/i18n/api/skr-arab.json lib/i18n/be.json client/i18n/fon.json lib/i18n/ce.json repo/i18n/shn.json repo/i18n/oc.json client/i18n/tay.json client/i18n/api/ar.json view/tests/qunit/jquery/ui/jquery.ui.EditableTemplatedWidget.tests.js repo/i18n/km.json package-lock.json client/i18n/ky.json client/i18n/nn.json lib/i18n/nia.json repo/i18n/api/nb.json lib/i18n/hif-latn.json lib/i18n/mui.json repo/resources/wikibase.federatedPropertiesEditRequestFailureNotice.js repo/i18n/sdh.json repo/i18n/bbc-latn.json client/i18n/vro.json repo/i18n/api/tcy.json lib/i18n/ar.json lib/i18n/mzn.json client/i18n/lv.json repo/tests/selenium/specs/blocked.js client/i18n/sco.json view/tests/qunit/jquery/wikibase/jquery.wikibase.sitelinkgrouplistview.tests.js lib/i18n/pih.json repo/i18n/api/ceb.json lib/i18n/kab.json repo/tests/phpunit/data/federatedProperties/api-entity-search-helper-test-data-multipleEntityIdResponse.json lib/i18n/bpy.json client/i18n/api/ce.json view/resources/jquery/jquery.sticknode.js lib/i18n/so.json repo/resources/parsers/getApiBasedValueParserConstructor.js lib/i18n/qqq.json client/i18n/sms.json repo/i18n/lb.json repo/i18n/mai.json repo/i18n/vi.json client/i18n/api/ast.json client/i18n/la.json client/i18n/xsy.json client/i18n/mnw.json client/i18n/fur.json client/i18n/gom-latn.json client/i18n/id.json lib/i18n/jv.json lib/i18n/sms.json client/resources/util.inherit.js client/i18n/cdo.json lib/i18n/kn.json view/tests/qunit/wikibase/entityIdFormatter/DataValueBasedEntityIdHtmlFormatter.tests.js repo/tests/phpunit/data/api/setreference.json client/i18n/mk.json lib/i18n/ace.json repo/i18n/ady-cyrl.json client/i18n/fo.json view/resources/wikibase/store/store.CachingEntityStore.js view/tests/qunit/wikibase/store/store.CombiningEntityStore.tests.js client/i18n/crh-cyrl.json client/i18n/bo.json client/i18n/pcd.json client/i18n/rue.json lib/i18n/hak.json client/i18n/mhr.json repo/i18n/liv.json repo/i18n/api/ko.json Gruntfile.js client/i18n/ast.json lib/i18n/gl.json client/i18n/api/fr.json view/tests/qunit/jquery/wikibase/jquery.wikibase.descriptionview.tests.js client/resources/wikibase.client.linkitem.init.js lib/i18n/trv.json repo/resources/wikibase.special/wikibase.special.newEntity.js lib/i18n/cdo.json client/i18n/lad.json repo/i18n/et.json client/i18n/br.json repo/i18n/api/ka.json lib/i18n/th.json view/tests/qunit/getMockListItemAdapter.js repo/i18n/jam.json client/i18n/my.json lib/i18n/pfl.json repo/i18n/be-tarask.json client/resources/jquery.wikibase/jquery.wikibase.linkitem.js repo/i18n/api/eo.json lib/i18n/de.json client/i18n/pnb.json repo/i18n/fon.json repo/i18n/gu.json repo/i18n/dsb.json view/tests/qunit/jquery/wikibase/jquery.wikibase.snaklistview.tests.js client/i18n/api/gcr.json client/i18n/ta.json view/tests/qunit/jquery/wikibase/jquery.wikibase.referenceview.tests.js client/i18n/cnr-latn.json client/i18n/ba.json lib/i18n/hy.json build/dist-size/analyze/index.js client/i18n/fy.json client/i18n/brx.json client/i18n/oc.json lib/i18n/jut.json lib/i18n/ksw.json repo/i18n/bqi.json client/i18n/or.json client/i18n/api/sco.json client/i18n/hyw.json client/i18n/en.json repo/i18n/api/nap.json repo/i18n/sxu.json repo/i18n/sdc.json repo/i18n/cy.json client/i18n/api/diq.json view/tests/qunit/wikibase/view/ToolbarViewController.tests.js client/i18n/qu.json lib/i18n/wa.json repo/i18n/api/he.json client/i18n/pt.json client/i18n/ht.json repo/i18n/gom-latn.json client/i18n/guc.json client/i18n/szl.json view/resources/wikibase/view/ViewFactory.js lib/i18n/gom-latn.json repo/i18n/nds-nl.json repo/i18n/bpy.json client/i18n/vep.json lib/i18n/mnw.json repo/sql/abstract/wb_changes_dispatch.json repo/i18n/api/nn.json repo/i18n/yue.json repo/resources/wikibase.sites.js client/i18n/atj.json repo/i18n/de-formal.json repo/resources/wikibase.federatedPropertiesLeavingSiteNotice.js repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-p18-p31-de.json repo/i18n/bn.json lib/i18n/eu.json client/i18n/to.json client/i18n/ext.json client/i18n/mzn.json repo/i18n/api/te.json lib/i18n/vi.json repo/resources/wikibase.ui.entityViewInit.js repo/i18n/hak.json lib/i18n/wo.json repo/i18n/api/pt.json repo/i18n/api/su.json view/tests/qunit/jquery/wikibase/toolbar/jquery.wikibase.addtoolbar.tests.js client/i18n/eu.json view/resources/wikibase/wikibase.RevisionStore.js lib/i18n/na.json client/i18n/bho.json repo/i18n/btm.json client/i18n/bdr.json build/dist-size/analyze/queries/getSizes.js lib/i18n/vro.json view/resources/jquery/wikibase/jquery.wikibase.entityselector.js client/i18n/ami.json repo/i18n/is.json client/i18n/es.json repo/i18n/fi.json client/i18n/rm.json view/resources/jquery/wikibase/jquery.wikibase.entitytermsforlanguagelistview.js repo/i18n/hil.json client/i18n/as.json repo/tests/qunit/jquery.wikibase/jquery.wikibase.entitysearch.tests.js repo/i18n/api/sl.json client/i18n/kcg.json client/i18n/si.json repo/i18n/it.json view/tests/qunit/jquery/wikibase/jquery.wikibase.listview.tests.js client/i18n/ban.json repo/i18n/sgs.json view/tests/qunit/wikibase/wikibase.WikibaseContentLanguages.tests.js repo/i18n/lag.json view/tests/qunit/jquery/wikibase/jquery.wikibase.aliasesview.tests.js client/i18n/dag.json view/tests/qunit/wikibase/entityChangers/SiteLinksChanger.tests.js repo/i18n/api/ms.json lib/i18n/ga.json lib/i18n/nah.json repo/i18n/myv.json view/resources/jquery/wikibase/toolbar/jquery.wikibase.removetoolbar.js client/i18n/liv.json lib/i18n/et.json repo/i18n/api/mk.json repo/resources/wikibase.WikibaseContentLanguages.js client/resources/wikibase.sites.js lib/i18n/krl.json lib/i18n/fi.json client/i18n/gld.json repo/i18n/su.json client/i18n/kjp.json repo/i18n/or.json client/i18n/mad.json repo/i18n/gv.json repo/i18n/bg.json view/tests/qunit/wikibase/wikibase.ValueViewBuilder.tests.js repo/i18n/qqq.json lib/i18n/glk.json view/tests/qunit/wikibase/view/ViewFactoryFactory.tests.js client/i18n/li.json repo/i18n/eu.json repo/i18n/crh-cyrl.json lib/i18n/lij.json lib/i18n/jam.json client/i18n/hoc.json repo/i18n/dv.json lib/i18n/bg.json client/i18n/prs.json client/i18n/pms.json client/i18n/pag.json repo/i18n/got.json view/tests/qunit/jquery/wikibase/jquery.wikibase.entityselector.tests.js lib/i18n/oc.json repo/i18n/rif.json repo/i18n/bar.json repo/i18n/th.json view/resources/jquery/wikibase/jquery.wikibase.descriptionview.js client/i18n/sv.json view/resources/wikibase/store/store.ApiEntityStore.js client/i18n/ann.json lib/i18n/lrc.json client/i18n/kiu.json client/i18n/min.json view/tests/qunit/wikibase/wikibase.getUserLanguages.tests.js view/resources/wikibase/entityIdFormatter/EntityIdHtmlFormatter.js lib/i18n/fa.json lib/i18n/ses.json repo/i18n/my.json client/i18n/tt-cyrl.json client/i18n/el.json repo/i18n/lld.json lib/i18n/tt-latn.json repo/tests/phpunit/data/api/getentities.json client/i18n/api/ms.json repo/i18n/api/kk-cyrl.json repo/i18n/kjp.json repo/i18n/br.json repo/i18n/ar.json lib/i18n/awa.json client/i18n/sxu.json client/i18n/lkt.json lib/i18n/shy-latn.json client/i18n/cu.json repo/i18n/ps.json client/i18n/eml.json client/i18n/om.json repo/i18n/ba.json repo/i18n/es-formal.json client/i18n/kea.json client/i18n/api/ta.json client/i18n/api/lb.json lib/i18n/cs.json repo/i18n/zh-hant.json lib/i18n/sah.json client/i18n/sd.json client/i18n/bpy.json client/i18n/eo.json repo/i18n/glk.json repo/i18n/se.json client/i18n/uz.json client/i18n/tly.json repo/i18n/api/tr.json repo/i18n/api/es.json view/resources/wikibase/entityChangers/SiteLinksChanger.js repo/i18n/bcl.json client/resources/wikibase.client.PageConnector.js lib/i18n/lv.json repo/i18n/luz.json lib/i18n/skr-arab.json client/i18n/pt-br.json client/i18n/dty.json client/i18n/wo.json client/i18n/api/tr.json repo/i18n/chr.json repo/i18n/tt-latn.json view/resources/jquery/wikibase/snakview/snakview.variations.Value.js lib/i18n/cy.json repo/tests/qunit/wikibase.sites.tests.js repo/tests/phpunit/data/federatedProperties/wbgetentities-p1-missing.json repo/i18n/avk.json repo/i18n/zu.json client/i18n/dsb.json repo/tests/phpunit/data/rdf/entities/Q2.json client/i18n/vec.json lib/i18n/be-tarask.json lib/i18n/ban.json view/tests/qunit/wikibase/store/store.CachingEntityStore.tests.js view/resources/jquery/wikibase/jquery.wikibase.sitelinkview.js repo/i18n/sv.json client/i18n/api/th.json repo/i18n/ha.json repo/i18n/ann.json repo/i18n/ase.json repo/i18n/qu.json repo/i18n/api/tl.json lib/i18n/sr-el.json repo/i18n/sjd.json client/i18n/bcl.json repo/i18n/api/zh-hant.json view/resources/wikibase/utilities/wikibase.utilities.ClaimGuidGenerator.js repo/resources/dataTypes/wikibase.dataTypeStore.js repo/i18n/xmf.json repo/i18n/tg-cyrl.json client/i18n/api/gl.json client/i18n/kip.json repo/i18n/api/tay.json repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-p18-p31-en.json repo/i18n/ckb.json repo/i18n/sa.json repo/i18n/hu.json lib/i18n/blc.json view/tests/qunit/wikibase/entityChangers/StatementsChanger.tests.js client/i18n/nys.json lib/i18n/arq.json client/i18n/kab.json repo/i18n/zh-hans.json client/i18n/vo.json repo/tests/qunit/experts/Item.tests.js view/tests/qunit/jquery/wikibase/jquery.wikibase.wbtooltip.tests.js view/resources/wikibase/entityChangers/AliasesChanger.js repo/i18n/ee.json client/i18n/dv.json repo/tests/selenium/specs/nonexisting.item.js view/resources/jquery/wikibase/jquery.wikibase.listview.js lib/i18n/ky.json lib/i18n/om.json repo/i18n/api/gl.json repo/i18n/om.json repo/i18n/trv.json client/resources/jquery.wikibase/jquery.wikibase.wbtooltip.js repo/tests/phpunit/data/rdf/entities/Q7.json repo/tests/phpunit/data/rdf/entities/Q9_no_prefixed_ids.json repo/i18n/cs.json repo/i18n/sh.json repo/i18n/ms.json lib/i18n/ku-latn.json client/i18n/roa-tara.json repo/i18n/vo.json repo/i18n/hoc.json repo/tests/qunit/experts/Property.tests.js repo/i18n/api/ku-latn.json client/i18n/an.json view/tests/qunit/wikibase/entityChangers/EntityTermsChanger.tests.js lib/i18n/frr.json client/i18n/glk.json repo/i18n/lfn.json client/i18n/av.json repo/i18n/gld.json lib/i18n/ml.json lib/i18n/zgh.json client/i18n/ti.json repo/i18n/api/diq.json view/resources/jquery/wikibase/snakview/snakview.variations.NoValue.js repo/i18n/api/ru.json repo/i18n/tly.json jsduck.json client/i18n/api/nap.json lib/i18n/mai.json lib/i18n/pms.json client/i18n/sr-ec.json repo/i18n/api/cs.json repo/resources/experts/Entity.js lib/i18n/ko.json view/tests/qunit/jquery/wikibase/jquery.wikibase.statementlistview.tests.js client/i18n/szy.json client/i18n/jut.json lib/i18n/abs.json repo/i18n/lo.json client/i18n/wuu.json repo/tests/phpunit/data/api/editentity.json client/i18n/krc.json repo/i18n/nap.json repo/resources/wikibase.EntityInitializer.js view/resources/jquery/wikibase/toolbar/jquery.wikibase.singlebuttontoolbar.js repo/i18n/cv.json view/resources/jquery/jquery.removeClassByRegex.js view/resources/wikibase.js client/i18n/api/de.json view/tests/qunit/jquery/wikibase/jquery.wikibase.statementgrouplistview.tests.js lib/i18n/hil.json client/i18n/rej.json repo/i18n/jv.json view/tests/qunit/jquery/jquery.removeClassByRegex.tests.js client/i18n/mo.json lib/tests/qunit/wikibase.Site.tests.js repo/i18n/fr.json client/i18n/mai.json repo/i18n/nds.json lib/i18n/gld.json repo/i18n/ug-arab.json repo/i18n/sli.json lib/i18n/or.json repo/i18n/mo.json lib/i18n/hu.json client/i18n/xmf.json client/i18n/fa.json client/i18n/kbp.json lib/i18n/tk.json lib/i18n/sh.json client/i18n/shn.json lib/i18n/io.json lib/i18n/nds.json repo/i18n/niu.json client/i18n/csb.json repo/i18n/pnb.json view/tests/qunit/jquery/wikibase/jquery.wikibase.sitelinkview.tests.js repo/tests/phpunit/data/federatedProperties/api-entity-search-helper-test-data-errorResponse.json client/i18n/gaa.json client/i18n/sw.json client/i18n/hak.json lib/i18n/yue.json lib/i18n/hi.json client/i18n/ur.json lib/i18n/szy.json lib/i18n/gor.json client/i18n/nah.json repo/i18n/kn.json repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-p18-en.json repo/i18n/crh-latn.json view/resources/wikibase/entityChangers/StatementsChangerState.js lib/i18n/ja.json repo/resources/experts/Item.js client/i18n/mnc.json lib/i18n/my.json repo/i18n/io.json --fix

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

/src/repo/client/resources/jquery.event.special.eachchange.js
   22:2   warning  Missing JSDoc @return declaration                                        jsdoc/require-returns
  202:49  warning  'eventData' is already declared in the upper scope on line 193 column 9  no-shadow

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

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

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

/src/repo/client/resources/jquery.wikibase/jquery.wikibase.siteselector.js
   17:0   warning  Invalid JSDoc tag name "option"                                      jsdoc/check-tag-names
   21:0   warning  Invalid JSDoc tag name "option"                                      jsdoc/check-tag-names
   54:35  warning  'event' is already declared in the upper scope on line 51 column 50  no-shadow
  135:3   warning  Missing JSDoc @return declaration                                    jsdoc/require-returns
  200:3   warning  Missing JSDoc @return declaration                                    jsdoc/require-returns
  211:3   warning  Missing JSDoc @return declaration                                    jsdoc/require-returns

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

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

/src/repo/client/resources/wikibase.client.getMwApiForRepo.js
  9:0  warning  The type 'mediaWiki' is undefined  jsdoc/no-undefined-types

/src/repo/extension-client.json
   77:3  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  101:3  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs

/src/repo/extension-repo.json
   25:3  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
   58:3  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
   59:3  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
   68:3  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  109:3  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  118:3  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  127:3  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  151:3  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  160:3  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  177:3  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  186:3  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs

/src/repo/jsduck.json
  10:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  11:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs

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

/src/repo/repo/resources/experts/getStore.js
  52:33  warning  'registeredExperts' is already declared in the upper scope on line 11 column 6  no-shadow

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

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

/src/repo/repo/resources/wikibase.PropertyDataTypeStore.js
   8:0  warning  The type 'EntityStore' is undefined  jsdoc/no-undefined-types
  28:0  warning  The type 'EntityStore' is undefined  jsdoc/no-undefined-types

/src/repo/repo/resources/wikibase.ui.entityViewInit.js
   40:0   warning  The type 'CachingEntityStore' is undefined                      jsdoc/no-undefined-types
   53:0   warning  The type 'datamodel' is undefined                               jsdoc/no-undefined-types
  359:23  error    performance is not supported in Safari 5.1, iOS Safari 6.0-6.1  compat/compat
  359:45  error    performance is not supported in Safari 5.1, iOS Safari 6.0-6.1  compat/compat
  412:2   error    performance is not supported in Safari 5.1, iOS Safari 6.0-6.1  compat/compat

/src/repo/repo/resources/wikibase.ui.entitysearch.js
  21:21  warning  '$form' is already declared in the upper scope on line 12 column 7  no-shadow

/src/repo/repo/sql/abstract/wb_id_counters.json
   7:3  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
   8:3  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
   9:3  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  12:3  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  13:3  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  14:3  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs

/src/repo/repo/sql/abstract/wb_property_info.json
   6:3  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
   7:3  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
   8:3  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  16:3  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  17:3  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  18:3  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  22:2  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs

/src/repo/repo/tests/phpunit/data/federatedProperties/api-entity-search-helper-test-data-multipleEntityIdResponse.json
   3:2  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
   7:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
   8:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
   9:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  10:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  11:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  12:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  13:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  14:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  15:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  16:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  17:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  18:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  19:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  20:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  21:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  22:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  25:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  26:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  27:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  28:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  29:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  30:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  31:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  32:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  33:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  34:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  35:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  36:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  37:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  38:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  39:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  40:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  41:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs

/src/repo/repo/tests/phpunit/data/federatedProperties/api-entity-search-helper-test-data-oneResponse.json
   7:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
   8:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
   9:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  10:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  11:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  12:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  13:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  14:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  15:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  16:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  20:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs

/src/repo/repo/tests/phpunit/data/federatedProperties/api-entity-search-helper-test-data-twoResponse.json
   3:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
   6:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  16:2  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  17:2  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  18:2  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  20:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  21:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  31:2  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  32:2  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  33:2  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  35:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs

/src/repo/repo/tests/phpunit/data/federatedProperties/wbgetentities-p1-missing.json
  4:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  5:1  error  Mixed spaces and tabs  no-mixed-spaces-and-tabs

/src/repo/repo/tests/phpunit/data/rdf/entities/Q4.json
   78:23  error  Unnecessary escape character: \/  no-useless-escape
   78:25  error  Unnecessary escape character: \/  no-useless-escape
   78:43  error  Unnecessary escape character: \/  no-useless-escape
   78:51  error  Unnecessary escape character: \/  no-useless-escape
  183:31  error  Unnecessary escape character: \/  no-useless-escape
  183:33  error  Unnecessary escape character: \/  no-useless-escape
  183:51  error  Unnecessary escape character: \/  no-useless-escape
  183:59  error  Unnecessary escape character: \/  no-useless-escape
  200:22  error  Unnecessary escape character: \/  no-useless-escape
  200:24  error  Unnecessary escape character: \/  no-useless-escape

/src/repo/repo/tests/phpunit/data/rdf/entities/Q4_no_prefixed_ids.json
   78:23  error  Unnecessary escape character: \/  no-useless-escape
   78:25  error  Unnecessary escape character: \/  no-useless-escape
   78:43  error  Unnecessary escape character: \/  no-useless-escape
   78:51  error  Unnecessary escape character: \/  no-useless-escape
  183:31  error  Unnecessary escape character: \/  no-useless-escape
  183:33  error  Unnecessary escape character: \/  no-useless-escape
  183:51  error  Unnecessary escape character: \/  no-useless-escape
  183:59  error  Unnecessary escape character: \/  no-useless-escape
  200:22  error  Unnecessary escape character: \/  no-useless-escape
  200:24  error  Unnecessary escape character: \/  no-useless-escape

/src/repo/repo/tests/phpunit/data/rdf/entities/Q6.json
   69:25  error  Unnecessary escape character: \/  no-useless-escape
   69:27  error  Unnecessary escape character: \/  no-useless-escape
   69:45  error  Unnecessary escape character: \/  no-useless-escape
   69:53  error  Unnecessary escape character: \/  no-useless-escape
  144:33  error  Unnecessary escape character: \/  no-useless-escape
  144:35  error  Unnecessary escape character: \/  no-useless-escape
  144:53  error  Unnecessary escape character: \/  no-useless-escape
  144:61  error  Unnecessary escape character: \/  no-useless-escape
  156:24  error  Unnecessary escape character: \/  no-useless-escape
  156:26  error  Unnecessary escape character: \/  no-useless-escape
  156:41  error  Unnecessary escape character: \/  no-useless-escape
  165:25  error  Unnecessary escape character: \/  no-useless-escape
  165:27  error  Unnecessary escape character: \/  no-useless-escape
  165:43  error  Unnecessary escape character: \/  no-useless-escape

/src/repo/repo/tests/phpunit/data/rdf/entities/Q6_no_prefixed_ids.json
   69:25  error  Unnecessary escape character: \/  no-useless-escape
   69:27  error  Unnecessary escape character: \/  no-useless-escape
   69:45  error  Unnecessary escape character: \/  no-useless-escape
   69:53  error  Unnecessary escape character: \/  no-useless-escape
  144:33  error  Unnecessary escape character: \/  no-useless-escape
  144:35  error  Unnecessary escape character: \/  no-useless-escape
  144:53  error  Unnecessary escape character: \/  no-useless-escape
  144:61  error  Unnecessary escape character: \/  no-useless-escape
  156:24  error  Unnecessary escape character: \/  no-useless-escape
  156:26  error  Unnecessary escape character: \/  no-useless-escape
  156:41  error  Unnecessary escape character: \/  no-useless-escape
  165:25  error  Unnecessary escape character: \/  no-useless-escape
  165:27  error  Unnecessary escape character: \/  no-useless-escape
  165:43  error  Unnecessary escape character: \/  no-useless-escape

/src/repo/repo/tests/phpunit/data/rdf/entities/Q7.json
   73:27  error  Unnecessary escape character: \/  no-useless-escape
   73:29  error  Unnecessary escape character: \/  no-useless-escape
   73:47  error  Unnecessary escape character: \/  no-useless-escape
   73:55  error  Unnecessary escape character: \/  no-useless-escape
  148:35  error  Unnecessary escape character: \/  no-useless-escape
  148:37  error  Unnecessary escape character: \/  no-useless-escape
  148:55  error  Unnecessary escape character: \/  no-useless-escape
  148:63  error  Unnecessary escape character: \/  no-useless-escape
  160:26  error  Unnecessary escape character: \/  no-useless-escape
  160:28  error  Unnecessary escape character: \/  no-useless-escape
  160:43  error  Unnecessary escape character: \/  no-useless-escape
  273:27  error  Unnecessary escape character: \/  no-useless-escape
  273:29  error  Unnecessary escape character: \/  no-useless-escape
  273:47  error  Unnecessary escape character: \/  no-useless-escape
  273:55  error  Unnecessary escape character: \/  no-useless-escape
  348:35  error  Unnecessary escape character: \/  no-useless-escape
  348:37  error  Unnecessary escape character: \/  no-useless-escape
  348:55  error  Unnecessary escape character: \/  no-useless-escape
  348:63  error  Unnecessary escape character: \/  no-useless-escape
  360:26  error  Unnecessary escape character: \/  no-useless-escape
  360:28  error  Unnecessary escape character: \/  no-useless-escape
  360:43  error  Unnecessary escape character: \/  no-useless-escape

/src/repo/repo/tests/phpunit/data/rdf/entities/Q7_no_prefixed_ids.json
   73:27  error  Unnecessary escape character: \/  no-useless-escape
   73:29  error  Unnecessary escape character: \/  no-useless-escape
   73:47  error  Unnecessary escape character: \/  no-useless-escape
   73:55  error  Unnecessary escape character: \/  no-useless-escape
  148:35  error  Unnecessary escape character: \/  no-useless-escape
  148:37  error  Unnecessary escape character: \/  no-useless-escape
  148:55  error  Unnecessary escape character: \/  no-useless-escape
  148:63  error  Unnecessary escape character: \/  no-useless-escape
  160:26  error  Unnecessary escape character: \/  no-useless-escape
  160:28  error  Unnecessary escape character: \/  no-useless-escape
  160:43  error  Unnecessary escape character: \/  no-useless-escape
  246:27  error  Unnecessary escape character: \/  no-useless-escape
  246:29  error  Unnecessary escape character: \/  no-useless-escape
  246:47  error  Unnecessary escape character: \/  no-useless-escape
  246:55  error  Unnecessary escape character: \/  no-useless-escape
  321:35  error  Unnecessary escape character: \/  no-useless-escape
  321:37  error  Unnecessary escape character: \/  no-useless-escape
  321:55  error  Unnecessary escape character: \/  no-useless-escape
  321:63  error  Unnecessary escape character: \/  no-useless-escape
  333:26  error  Unnecessary escape character: \/  no-useless-escape
  333:28  error  Unnecessary escape character: \/  no-useless-escape
  333:43  error  Unnecessary escape character: \/  no-useless-escape

/src/repo/repo/tests/phpunit/data/rdf/entities/Q8.json
   19:31  error  Unnecessary escape character: \/  no-useless-escape
   19:33  error  Unnecessary escape character: \/  no-useless-escape
   19:51  error  Unnecessary escape character: \/  no-useless-escape
   19:59  error  Unnecessary escape character: \/  no-useless-escape
   40:31  error  Unnecessary escape character: \/  no-useless-escape
   40:33  error  Unnecessary escape character: \/  no-useless-escape
   40:51  error  Unnecessary escape character: \/  no-useless-escape
   40:59  error  Unnecessary escape character: \/  no-useless-escape
   61:31  error  Unnecessary escape character: \/  no-useless-escape
   61:33  error  Unnecessary escape character: \/  no-useless-escape
   61:51  error  Unnecessary escape character: \/  no-useless-escape
   61:59  error  Unnecessary escape character: \/  no-useless-escape
   82:31  error  Unnecessary escape character: \/  no-useless-escape
   82:33  error  Unnecessary escape character: \/  no-useless-escape
   82:51  error  Unnecessary escape character: \/  no-useless-escape
   82:59  error  Unnecessary escape character: \/  no-useless-escape
  103:31  error  Unnecessary escape character: \/  no-useless-escape
  103:33  error  Unnecessary escape character: \/  no-useless-escape
  103:51  error  Unnecessary escape character: \/  no-useless-escape
  103:59  error  Unnecessary escape character: \/  no-useless-escape
  124:31  error  Unnecessary escape character: \/  no-useless-escape
  124:33  error  Unnecessary escape character: \/  no-useless-escape
  124:51  error  Unnecessary escape character: \/  no-useless-escape
  124:59  error  Unnecessary escape character: \/  no-useless-escape
  145:31  error  Unnecessary escape character: \/  no-useless-escape
  145:33  error  Unnecessary escape character: \/  no-useless-escape
  145:51  error  Unnecessary escape character: \/  no-useless-escape
  145:59  error  Unnecessary escape character: \/  no-useless-escape
  166:31  error  Unnecessary escape character: \/  no-useless-escape
  166:33  error  Unnecessary escape character: \/  no-useless-escape
  166:51  error  Unnecessary escape character: \/  no-useless-escape
  166:59  error  Unnecessary escape character: \/  no-useless-escape
  187:31  error  Unnecessary escape character: \/  no-useless-escape
  187:33  error  Unnecessary escape character: \/  no-useless-escape
  187:44  error  Unnecessary escape character: \/  no-useless-escape
  208:31  error  Unnecessary escape character: \/  no-useless-escape
  208:33  error  Unnecessary escape character: \/  no-useless-escape
  208:51  error  Unnecessary escape character: \/  no-useless-escape
  208:59  error  Unnecessary escape character: \/  no-useless-escape
  229:31  error  Unnecessary escape character: \/  no-useless-escape
  229:33  error  Unnecessary escape character: \/  no-useless-escape
  229:51  error  Unnecessary escape character: \/  no-useless-escape
  229:59  error  Unnecessary escape character: \/  no-useless-escape
  250:31  error  Unnecessary escape character: \/  no-useless-escape
  250:33  error  Unnecessary escape character: \/  no-useless-escape
  250:51  error  Unnecessary escape character: \/  no-useless-escape
  250:59  error  Unnecessary escape character: \/  no-useless-escape
  271:31  error  Unnecessary escape character: \/  no-useless-escape
  271:33  error  Unnecessary escape character: \/  no-useless-escape
  271:51  error  Unnecessary escape character: \/  no-useless-escape
  271:59  error  Unnecessary escape character: \/  no-useless-escape

/src/repo/repo/tests/phpunit/data/rdf/entities/Q9.json
   73:27  error  Unnecessary escape character: \/  no-useless-escape
   73:29  error  Unnecessary escape character: \/  no-useless-escape
   73:47  error  Unnecessary escape character: \/  no-useless-escape
   73:55  error  Unnecessary escape character: \/  no-useless-escape
  148:35  error  Unnecessary escape character: \/  no-useless-escape
  148:37  error  Unnecessary escape character: \/  no-useless-escape
  148:55  error  Unnecessary escape character: \/  no-useless-escape
  148:63  error  Unnecessary escape character: \/  no-useless-escape
  160:26  error  Unnecessary escape character: \/  no-useless-escape
  160:28  error  Unnecessary escape character: \/  no-useless-escape
  160:43  error  Unnecessary escape character: \/  no-useless-escape
  273:27  error  Unnecessary escape character: \/  no-useless-escape
  273:29  error  Unnecessary escape character: \/  no-useless-escape
  273:47  error  Unnecessary escape character: \/  no-useless-escape
  273:55  error  Unnecessary escape character: \/  no-useless-escape
  348:35  error  Unnecessary escape character: \/  no-useless-escape
  348:37  error  Unnecessary escape character: \/  no-useless-escape
  348:55  error  Unnecessary escape character: \/  no-useless-escape
  348:63  error  Unnecessary escape character: \/  no-useless-escape
  360:26  error  Unnecessary escape character: \/  no-useless-escape
  360:28  error  Unnecessary escape character: \/  no-useless-escape
  360:43  error  Unnecessary escape character: \/  no-useless-escape

/src/repo/repo/tests/phpunit/data/rdf/entities/Q9_no_prefixed_ids.json
   73:27  error  Unnecessary escape character: \/  no-useless-escape
   73:29  error  Unnecessary escape character: \/  no-useless-escape
   73:47  error  Unnecessary escape character: \/  no-useless-escape
   73:55  error  Unnecessary escape character: \/  no-useless-escape
  148:35  error  Unnecessary escape character: \/  no-useless-escape
  148:37  error  Unnecessary escape character: \/  no-useless-escape
  148:55  error  Unnecessary escape character: \/  no-useless-escape
  148:63  error  Unnecessary escape character: \/  no-useless-escape
  160:26  error  Unnecessary escape character: \/  no-useless-escape
  160:28  error  Unnecessary escape character: \/  no-useless-escape
  160:43  error  Unnecessary escape character: \/  no-useless-escape
  246:27  error  Unnecessary escape character: \/  no-useless-escape
  246:29  error  Unnecessary escape character: \/  no-useless-escape
  246:47  error  Unnecessary escape character: \/  no-useless-escape
  246:55  error  Unnecessary escape character: \/  no-useless-escape
  321:35  error  Unnecessary escape character: \/  no-useless-escape
  321:37  error  Unnecessary escape character: \/  no-useless-escape
  321:55  error  Unnecessary escape character: \/  no-useless-escape
  321:63  error  Unnecessary escape character: \/  no-useless-escape
  333:26  error  Unnecessary escape character: \/  no-useless-escape
  333:28  error  Unnecessary escape character: \/  no-useless-escape
  333:43  error  Unnecessary escape character: \/  no-useless-escape

/src/repo/repo/tests/qunit/wikibase.PropertyDataTypeStore.tests.js
  159:72  warning  'dataType' is already declared in the upper scope on line 156 column 71  no-shadow
  184:72  warning  'dataType' is already declared in the upper scope on line 181 column 71  no-shadow

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

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

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

/src/repo/tests/api-testing/LuaWikibaseIntegrationTest.js
  83:1  warning  This line has a length of 106. Maximum allowed is 100  max-len

/src/repo/view/resources/jquery/jquery.sticknode.js
  274:23  warning  'stickyNode' is already declared in the upper scope on line 268 column 8  no-shadow
  288:23  warning  'stickyNode' is already declared in the upper scope on line 268 column 8  no-shadow

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.aliasesview.js
   19:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  196:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  197:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.badgeselector.js
   22:0  warning  Invalid JSDoc tag name "option"                                     jsdoc/check-tag-names
   26:0  warning  Invalid JSDoc tag name "option"                                     jsdoc/check-tag-names
   31:0  warning  Invalid JSDoc tag name "option"                                     jsdoc/check-tag-names
   33:0  warning  Invalid JSDoc tag name "option"                                     jsdoc/check-tag-names
   37:0  warning  Invalid JSDoc tag name "option"                                     jsdoc/check-tag-names
  216:5  warning  '$menu' is already declared in the upper scope on line 15 column 6  no-shadow
  378:3  warning  Missing JSDoc @return declaration                                   jsdoc/require-returns
  419:3  warning  Missing JSDoc @return declaration                                   jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.descriptionview.js
   16:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   16:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
   18:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   95:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  175:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  195:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  196:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types

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

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.entitytermsforlanguagelistview.js
   17:0  warning  Invalid JSDoc tag name "option"      jsdoc/check-tag-names
   17:0  warning  The type 'Fingerprint' is undefined  jsdoc/no-undefined-types
   19:0  warning  Invalid JSDoc tag name "option"      jsdoc/check-tag-names
  237:3  warning  Missing JSDoc @return declaration    jsdoc/require-returns
  388:3  warning  Missing JSDoc @return declaration    jsdoc/require-returns
  451:0  warning  The type 'Fingerprint' is undefined  jsdoc/no-undefined-types
  452:0  warning  The type 'Fingerprint' is undefined  jsdoc/no-undefined-types
  496:3  warning  Missing JSDoc @return declaration    jsdoc/require-returns

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

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

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.labelview.js
   18:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  209:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  210:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types

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

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

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.referenceview.js
   21:0  warning  The type 'datamodel' is undefined        jsdoc/no-undefined-types
  174:0  warning  The type 'datamodel' is undefined        jsdoc/no-undefined-types
  190:0  warning  The type 'datamodel' is undefined        jsdoc/no-undefined-types
  191:0  warning  The type 'datamodel' is undefined        jsdoc/no-undefined-types
  222:3  warning  Missing JSDoc @return declaration        jsdoc/require-returns
  240:3  warning  Missing JSDoc @return declaration        jsdoc/require-returns
  281:3  warning  Found more than one @return declaration  jsdoc/require-returns
  281:3  warning  Found more than one @return declaration  jsdoc/require-returns-check

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.sitelinkgrouplistview.js
   18:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
   59:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  100:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  101:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  101:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  168:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.sitelinkgroupview.js
   29:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   30:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
   30:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   31:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
   33:0  warning  Invalid JSDoc tag name "option"    jsdoc/check-tag-names
  112:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns
  173:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  192:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  194:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  221:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  222:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  248:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.sitelinklistview.js
   26:0   warning  Invalid JSDoc tag name "option"                                     jsdoc/check-tag-names
   29:0   warning  Invalid JSDoc tag name "option"                                     jsdoc/check-tag-names
   32:0   warning  Invalid JSDoc tag name "option"                                     jsdoc/check-tag-names
   34:0   warning  Invalid JSDoc tag name "option"                                     jsdoc/check-tag-names
   34:0   warning  The type 'EventSingletonManager' is undefined                       jsdoc/no-undefined-types
   38:0   warning  Invalid JSDoc tag name "option"                                     jsdoc/check-tag-names
   41:0   warning  Invalid JSDoc tag name "option"                                     jsdoc/check-tag-names
   64:0   warning  The type 'EventSingletonManager' is undefined                       jsdoc/no-undefined-types
   97:3   warning  Missing JSDoc @return declaration                                   jsdoc/require-returns
  312:23  warning  'self' is already declared in the upper scope on line 306 column 8  no-shadow
  360:3   warning  Missing JSDoc @return declaration                                   jsdoc/require-returns
  467:3   warning  Missing JSDoc @return declaration                                   jsdoc/require-returns
  483:3   warning  Found more than one @return declaration                             jsdoc/require-returns
  483:3   warning  Found more than one @return declaration                             jsdoc/require-returns-check

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.sitelinkview.js
   18:0  warning  Invalid JSDoc tag name "option"                                     jsdoc/check-tag-names
   18:0  warning  The type 'datamodel' is undefined                                   jsdoc/no-undefined-types
   21:0  warning  Invalid JSDoc tag name "option"                                     jsdoc/check-tag-names
   25:0  warning  Invalid JSDoc tag name "option"                                     jsdoc/check-tag-names
  272:9  warning  'site' is already declared in the upper scope on line 213 column 9  no-shadow
  358:3  warning  Missing JSDoc @return declaration                                   jsdoc/require-returns
  400:0  warning  The type 'datamodel' is undefined                                   jsdoc/no-undefined-types
  401:0  warning  The type 'datamodel' is undefined                                   jsdoc/no-undefined-types
  437:3  warning  Missing JSDoc @return declaration                                   jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.siteselector.js
   14:0   warning  Invalid JSDoc tag name "option"                                      jsdoc/check-tag-names
   18:0   warning  Invalid JSDoc tag name "option"                                      jsdoc/check-tag-names
   51:35  warning  'event' is already declared in the upper scope on line 48 column 50  no-shadow
  132:3   warning  Missing JSDoc @return declaration                                    jsdoc/require-returns
  197:3   warning  Missing JSDoc @return declaration                                    jsdoc/require-returns
  208:3   warning  Missing JSDoc @return declaration                                    jsdoc/require-returns

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.snaklistview.js
   21:0  warning  The type 'datamodel' is undefined        jsdoc/no-undefined-types
  184:3  warning  Missing JSDoc @return declaration        jsdoc/require-returns
  213:0  warning  The type 'datamodel' is undefined        jsdoc/no-undefined-types
  214:0  warning  The type 'datamodel' is undefined        jsdoc/no-undefined-types
  234:3  warning  Found more than one @return declaration  jsdoc/require-returns
  234:3  warning  Found more than one @return declaration  jsdoc/require-returns-check

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.statementgrouplistview.js
   22:0   warning  The type 'jquery' is undefined                                                      jsdoc/no-undefined-types
   23:0   warning  The type 'datamodel' is undefined                                                   jsdoc/no-undefined-types
   94:3   warning  Missing JSDoc @return declaration                                                   jsdoc/require-returns
  115:0   warning  The type 'datamodel' is undefined                                                   jsdoc/no-undefined-types
  116:0   warning  The type 'datamodel' is undefined                                                   jsdoc/no-undefined-types
  124:3   warning  Found more than one @return declaration                                             jsdoc/require-returns
  124:3   warning  Found more than one @return declaration                                             jsdoc/require-returns-check
  147:12  warning  '$statementgroupview' is already declared in the upper scope on line 141 column 23  no-shadow
  169:0   warning  The type 'datamodel' is undefined                                                   jsdoc/no-undefined-types

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.statementgroupview.js
   20:0  warning  The type 'datamodel' is undefined        jsdoc/no-undefined-types
  173:0  warning  The type 'datamodel' is undefined        jsdoc/no-undefined-types
  174:0  warning  The type 'datamodel' is undefined        jsdoc/no-undefined-types
  225:3  warning  Found more than one @return declaration  jsdoc/require-returns
  225:3  warning  Found more than one @return declaration  jsdoc/require-returns-check

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.statementlistview.js
   24:0  warning  The type 'datamodel' is undefined        jsdoc/no-undefined-types
  166:0  warning  The type 'datamodel' is undefined        jsdoc/no-undefined-types
  167:0  warning  The type 'datamodel' is undefined        jsdoc/no-undefined-types
  188:3  warning  Found more than one @return declaration  jsdoc/require-returns
  188:3  warning  Found more than one @return declaration  jsdoc/require-returns-check

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.statementview.RankSelector.js
  138:30  warning  'event' is already declared in the upper scope on line 121 column 48  no-shadow
  149:17  warning  'event' is already declared in the upper scope on line 121 column 48  no-shadow
  209:5   warning  '$menu' is already declared in the upper scope on line 13 column 6    no-shadow

/src/repo/view/resources/jquery/wikibase/jquery.wikibase.statementview.js
   34:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  257:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  297:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  478:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  523:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  549:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  569:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  680:3  warning  Missing JSDoc @return declaration  jsdoc/require-returns

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

/src/repo/view/resources/jquery/wikibase/snakview/snakview.SnakTypeSelector.js
  83:30  warning  'event' is already declared in the upper scope on line 66 column 43  no-shadow
  90:37  warning  'event' is already declared in the upper scope on line 66 column 43  no-shadow

/src/repo/view/resources/jquery/wikibase/snakview/snakview.js
   30:0  warning  The type 'datamodel' is undefined              jsdoc/no-undefined-types
   46:0  warning  The type 'PropertyDataTypeStore' is undefined  jsdoc/no-undefined-types
  108:0  warning  The type 'Variation' is undefined              jsdoc/no-undefined-types
  341:3  warning  Missing JSDoc @return declaration              jsdoc/require-returns
  415:0  warning  The type 'datamodel' is undefined              jsdoc/no-undefined-types
  416:0  warning  The type 'datamodel' is undefined              jsdoc/no-undefined-types
  468:0  warning  The type 'datamodel' is undefined              jsdoc/no-undefined-types
  469:0  warning  The type 'datamodel' is undefined              jsdoc/no-undefined-types
  555:0  warning  The type 'Variation' is undefined              jsdoc/no-undefined-types
  646:3  warning  Found more than one @return declaration        jsdoc/require-returns
  646:3  warning  Found more than one @return declaration        jsdoc/require-returns-check
  679:3  warning  Found more than one @return declaration        jsdoc/require-returns
  679:3  warning  Found more than one @return declaration        jsdoc/require-returns-check

/src/repo/view/resources/jquery/wikibase/snakview/snakview.variations.Value.js
  37:0  warning  The type 'false' is undefined  jsdoc/no-undefined-types

/src/repo/view/resources/jquery/wikibase/snakview/snakview.variations.Variation.js
   18:0  warning  The type 'ViewState' is undefined              jsdoc/no-undefined-types
   24:0  warning  The type 'PropertyDataTypeStore' is undefined  jsdoc/no-undefined-types
   76:0  warning  The type 'datamodel' is undefined              jsdoc/no-undefined-types
   92:0  warning  The type 'PropertyDataTypeStore' is undefined  jsdoc/no-undefined-types
  102:0  warning  The type 'ViewState' is undefined              jsdoc/no-undefined-types
  142:0  warning  The type 'ViewState' is undefined              jsdoc/no-undefined-types

/src/repo/view/resources/jquery/wikibase/snakview/snakview.variations.js
  26:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  34:0  warning  The type 'Variation' is undefined  jsdoc/no-undefined-types
  86:0  warning  The type 'Variation' is undefined  jsdoc/no-undefined-types

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

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

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

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

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

/src/repo/view/resources/wikibase/entityChangers/AliasesChanger.js
   16:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
   26:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
   41:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
   82:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
   90:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
   91:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  109:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  110:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types

/src/repo/view/resources/wikibase/entityChangers/DescriptionsChanger.js
  14:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  24:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  39:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types

/src/repo/view/resources/wikibase/entityChangers/EntityTermsChanger.js
   20:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
   31:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
   51:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
   52:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  125:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  125:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  126:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  126:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types

/src/repo/view/resources/wikibase/entityChangers/LabelsChanger.js
  14:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  24:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  39:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types

/src/repo/view/resources/wikibase/entityChangers/SiteLinkSetsChanger.js
  20:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  29:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  39:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  40:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types

/src/repo/view/resources/wikibase/entityChangers/SiteLinksChanger.js
  13:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  23:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  38:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types

/src/repo/view/resources/wikibase/entityChangers/StatementsChanger.js
   70:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  133:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types
  192:0  warning  The type 'datamodel' is undefined  jsdoc/no-undefined-types

/src/repo/view/resources/wikibase/entityIdFormatter/CachingEntityIdHtmlFormatter.js
  7:0  warning  The type 'EntityIdHtmlFormatter' is undefined  jsdoc/no-undefined-types

/src/repo/view/resources/wikibase/entityIdFormatter/CachingEntityIdPlainFormatter.js
  7:0  warning  The type 'EntityIdPlainFormatter' is undefined  jsdoc/no-undefined-types

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

/src/repo/view/resources/wikibase/store/store.CachingEntityStore.js
  16:0  warning  The type 'EntityStore' is undefined  jsdoc/no-undefined-types
  32:0  warning  The type 'EntityStore' is undefined  jsdoc/no-undefined-types
  36:4  warning  Missing JSDoc @return declaration    jsdoc/require-returns

/src/repo/view/resources/wikibase/store/store.CombiningEntityStore.js
  10:2   warning  Missing JSDoc @return declaration                                       jsdoc/require-returns
  52:4   warning  Missing JSDoc @return declaration                                       jsdoc/require-returns
  57:24  warning  'entityId' is already declared in the upper scope on line 55 column 20  no-shadow

/src/repo/view/resources/wikibase/templates.js
   77:0   warning  The type 'mediaWiki' is undefined                                jsdoc/no-undefined-types
  229:61  warning  'i' is already declared in the upper scope on line 179 column 7  no-shadow

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

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

/src/repo/view/resources/wikibase/view/ViewFactory.js
   69:0   warning  The type 'PropertyDataTypeStore' is undefined                        jsdoc/no-undefined-types
  157:0   warning  The type 'PropertyDataTypeStore' is undefined                        jsdoc/no-undefined-types
  214:0   warning  The type 'datamodel' is undefined                                    jsdoc/no-undefined-types
  237:0   warning  The type 'datamodel' is undefined                                    jsdoc/no-undefined-types
  257:0   warning  The type 'datamodel' is undefined                                    jsdoc/no-undefined-types
  284:0   warning  The type 'datamodel' is undefined                                    jsdoc/no-undefined-types
  304:0   warning  The type 'datamodel' is undefined                                    jsdoc/no-undefined-types
  380:0   warning  The type 'datamodel' is undefined                                    jsdoc/no-undefined-types
  380:0   warning  The type 'datamodel' is undefined                                    jsdoc/no-undefined-types
  453:0   warning  The type 'datamodel' is undefined                                    jsdoc/no-undefined-types
  565:37  warning  '$dom' is already declared in the upper scope on line 552 column 92  no-shadow
  646:0   warning  The type 'datamodel' is undefined                                    jsdoc/no-undefined-types
  681:0   warning  The type 'ValueViewBuilder' is undefined                             jsdoc/no-undefined-types

/src/repo/view/tests/qunit/jquery/jquery.util.EventSingletonManager.tests.js
  22:15  warning  'event' is already declared in the upper scope on line 16 column 4  no-shadow
  49:25  warning  'event' is already declared in the upper scope on line 48 column 4  no-shadow

/src/repo/view/tests/qunit/jquery/wikibase/jquery.wikibase.aliasesview.tests.js
  139:24  warning  '$queue' is already declared in the upper scope on line 132 column 7  no-shadow

/src/repo/view/tests/qunit/jquery/wikibase/jquery.wikibase.entitytermsforlanguagelistview.tests.js
  11:0  warning  The type 'Fingerprint' is undefined  jsdoc/no-undefined-types

/src/repo/view/tests/qunit/jquery/wikibase/jquery.wikibase.entitytermsforlanguageview.tests.js
  135:24  warning  '$queue' is already declared in the upper scope on line 128 column 7  no-shadow

/src/repo/view/tests/qunit/jquery/wikibase/jquery.wikibase.entitytermsview.tests.js
  11:0  warning  The type 'Fingerprint' is undefined  jsdoc/no-undefined-types

/src/repo/view/tests/qunit/jquery/wikibase/jquery.wikibase.listview.tests.js
  21:34  warning  'value' is already declared in the upper scope on line 15 column 27   no-shadow
  71:32  warning  'assert' is already declared in the upper scope on line 63 column 51  no-shadow

/src/repo/view/tests/qunit/jquery/wikibase/jquery.wikibase.sitelinkgroupview.tests.js
  193:24  warning  '$queue' is already declared in the upper scope on line 186 column 7  no-shadow

/src/repo/view/tests/qunit/jquery/wikibase/jquery.wikibase.sitelinklistview.tests.js
  241:24  warning  '$queue' is already declared in the upper scope on line 234 column 7  no-shadow

/src/repo/view/tests/qunit/jquery/wikibase/jquery.wikibase.siteselector.tests.js
   77:13  warning  'i' is already declared in the upper scope on line 66 column 12       no-shadow
   99:47  warning  'i' is already declared in the upper scope on line 66 column 12       no-shadow
  201:33  warning  '$queue' is already declared in the upper scope on line 194 column 7  no-shadow
  208:13  warning  'i' is already declared in the upper scope on line 66 column 12       no-shadow

/src/repo/view/tests/qunit/jquery/wikibase/jquery.wikibase.snaklistview.tests.js
   46:0   warning  The type 'datamodel' is undefined                                           jsdoc/no-undefined-types
   68:0   warning  The type 'datamodel' is undefined                                           jsdoc/no-undefined-types
  543:31  warning  'snaklistview' is already declared in the upper scope on line 535 column 4  no-shadow
  612:41  warning  'assert' is already declared in the upper scope on line 603 column 50       no-shadow
  612:49  warning  'snaklistview' is already declared in the upper scope on line 605 column 4  no-shadow

/src/repo/view/tests/qunit/jquery/wikibase/jquery.wikibase.statementview.tests.js
  55:30  warning  'options' is already declared in the upper scope on line 30 column 39  no-shadow

/src/repo/view/tests/qunit/wikibase/entityChangers/EntityTermsChanger.tests.js
   19:0   warning  The type 'createFingerprint' is undefined                                  jsdoc/no-undefined-types
  473:25  warning  'revisionId' is already declared in the upper scope on line 472 column 35  no-shadow
  550:0   warning  Missing JSDoc @param "revisionId" type                                     jsdoc/require-param-type

/src/repo/view/tests/qunit/wikibase/entityChangers/StatementsChanger.tests.js
  149:7  warning  'statementsChangerState' is already declared in the upper scope on line 14 column 6  no-shadow
  324:7  warning  'statementsChangerState' is already declared in the upper scope on line 14 column 6  no-shadow

/src/repo/view/tests/qunit/wikibase/store/store.CachingEntityStore.tests.js
  54:8   warning  'promise' is already declared in the upper scope on line 51 column 7  no-shadow
  56:36  warning  'entity' is already declared in the upper scope on line 53 column 35  no-shadow

/src/repo/view/tests/qunit/wikibase/templates.tests.js
  164:35  warning  'params' is already declared in the upper scope on line 27 column 7  no-shadow
  223:50  warning  'params' is already declared in the upper scope on line 27 column 7  no-shadow

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

✖ 624 problems (276 errors, 348 warnings)


$ ./node_modules/.bin/eslint client/i18n/gcr.json repo/i18n/lez.json client/i18n/nqo.json repo/tests/phpunit/data/api/setlabel-removed.json view/tests/qunit/jquery/wikibase/jquery.wikibase.itemview.tests.js repo/i18n/api/ce.json repo/i18n/ce.json view/tests/qunit/jquery/wikibase/toolbar/jquery.wikibase.toolbar.tests.js lib/i18n/lez.json lib/i18n/nn.json repo/tests/phpunit/data/federatedProperties/query-siteinfo-namespaces-wikibase.json client/i18n/et.json client/i18n/syl.json repo/tests/phpunit/data/federatedProperties/wbgetentities-property-datatype.json repo/i18n/api/si.json repo/i18n/api/lv.json view/resources/jquery/wikibase/jquery.wikibase.referenceview.js lib/resources/wikibase.Site.js view/resources/jquery/wikibase/jquery.wikibase.itemview.js repo/i18n/azb.json client/i18n/mui.json client/i18n/cop.json view/resources/jquery/wikibase/jquery.wikibase.entityview.js repo/i18n/ksw.json client/i18n/lfn.json repo/resources/wikibase.special/wikibase.special.mergeItems.js view/resources/jquery/wikibase/jquery.wikibase.siteselector.js repo/i18n/qwh.json client/i18n/pam.json view/tests/qunit/jquery/wikibase/jquery.wikibase.entitytermsview.tests.js client/i18n/lzh.json client/i18n/sdc.json lib/i18n/ht.json repo/i18n/ml.json view/tests/qunit/jquery/wikibase/jquery.wikibase.siteselector.tests.js repo/i18n/tl.json repo/resources/jquery.wikibase/jquery.wikibase.entitysearch.js client/i18n/avk.json client/i18n/kw.json lib/i18n/bjn.json repo/i18n/mad.json client/i18n/api/jv.json repo/i18n/ie.json lib/i18n/gom-deva.json repo/i18n/zgh.json client/i18n/lo.json lib/i18n/hr.json lib/i18n/got.json lib/i18n/ms.json repo/i18n/bjn.json repo/i18n/api/pam.json client/i18n/ig.json lib/i18n/din.json view/resources/wikibase/entityIdFormatter/DataValueBasedEntityIdPlainFormatter.js repo/i18n/mr.json repo/tests/phpunit/data/rdf/entities/Q7_no_prefixed_ids.json client/i18n/lzz.json lib/i18n/atj.json view/resources/wikibase/view/ViewFactoryFactory.js repo/i18n/te.json lib/i18n/mni.json repo/i18n/api/sa.json repo/i18n/cnr-latn.json client/i18n/api/es.json repo/i18n/war.json repo/resources/experts/__namespace.js view/tests/qunit/jquery/wikibase/jquery.wikibase.entitytermsforlanguagelistview.tests.js view/resources/jquery/wikibase/jquery.wikibase.badgeselector.js build/dist-size/analyze/queries/getCommits.js lib/i18n/ia.json client/i18n/hil.json repo/resources/wikibase.getUserLanguages.js repo/i18n/frr.json repo/i18n/gom-deva.json lib/i18n/khw.json client/i18n/th.json client/i18n/lag.json lib/i18n/tokipona.json lib/i18n/de-formal.json repo/i18n/ln.json repo/i18n/as.json view/tests/qunit/wikibase/entityChangers/LabelsChanger.tests.js repo/i18n/api/uk.json client/i18n/scn.json lib/i18n/nqo.json view/resources/jquery/wikibase/jquery.wikibase.entitytermsview.js view/tests/qunit/jquery/wikibase/jquery.wikibase.statementview.tests.js lib/i18n/mad.json lib/i18n/qwh.json repo/i18n/frp.json repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-p18-de.json view/tests/qunit/jquery/wikibase/toolbar/jquery.wikibase.singlebuttontoolbar.tests.js client/i18n/api/et.json repo/tests/phpunit/data/rdf/entities/Q1.json client/i18n/kl.json repo/i18n/ku-latn.json repo/i18n/ko.json client/i18n/tzm.json view/resources/wikibase/wikibase.ValueViewBuilder.js lib/i18n/te.json client/i18n/ary.json client/i18n/fit.json client/i18n/ilo.json repo/i18n/nb.json lib/i18n/az.json lib/i18n/tzm.json view/resources/wikibase/store/store.EntityStore.js client/i18n/zh-hant.json repo/i18n/tet.json client/i18n/bs.json repo/i18n/gl.json repo/i18n/api/ar.json lib/i18n/sw.json view/tests/qunit/jquery/wikibase/toolbar/jquery.wikibase.removetoolbar.tests.js repo/resources/formatters/ApiValueFormatter.js repo/i18n/gsw.json client/i18n/skr-arab.json view/resources/wikibase/entityChangers/LabelsChanger.js repo/i18n/kiu.json repo/i18n/api/br.json lib/i18n/ciw.json repo/i18n/nqo.json client/i18n/be-tarask.json view/tests/qunit/jquery/wikibase/jquery.wikibase.entitytermsforlanguageview.tests.js repo/i18n/hrx.json build/ci-scripts/composer.local.json repo/tests/phpunit/data/rdf/entities/Q3.json client/i18n/ceb.json view/resources/wikibase/view/ToolbarFactory.js repo/i18n/api/sr-ec.json lib/i18n/it.json repo/tests/phpunit/data/rdf/entities/Q6.json view/resources/jquery/wikibase/toolbar/jquery.wikibase.toolbar.js lib/i18n/eo.json lib/i18n/smn.json view/resources/jquery/wikibase/jquery.wikibase.statementgroupview.js repo/i18n/pa.json client/i18n/kum.json client/i18n/en-gb.json lib/i18n/sq.json client/i18n/arn.json client/i18n/api/zh-hant.json view/resources/wikibase/entityChangers/StatementsChanger.js lib/i18n/sm.json repo/i18n/da.json lib/i18n/ne.json client/i18n/tt-latn.json lib/i18n/csb.json repo/i18n/sah.json repo/i18n/kjh.json lib/i18n/is.json client/i18n/nia.json repo/i18n/kk-cyrl.json lib/i18n/inh.json repo/i18n/he.json repo/i18n/api/bcl.json client/i18n/luz.json lib/i18n/fo.json view/tests/qunit/jquery/ui/jquery.ui.TemplatedWidget.tests.js lib/i18n/uz.json lib/i18n/brx.json repo/i18n/nia.json client/i18n/de-ch.json client/i18n/pa.json repo/resources/formatters/ApiValueFormatterFactory.js lib/i18n/ug-arab.json lib/i18n/sco.json repo/i18n/api/lt.json client/i18n/api/pl.json client/i18n/btm.json view/tests/qunit/jquery/wikibase/jquery.wikibase.labelview.tests.js repo/i18n/bgn.json repo/tests/phpunit/data/rdf/entities/Q9.json repo/i18n/kbp.json view/tests/qunit/experts/wikibase.experts.modules.tests.js repo/i18n/api/hr.json client/i18n/hi.json lib/i18n/yi.json repo/i18n/abs.json lib/i18n/ta.json client/i18n/ka.json lib/i18n/fit.json client/i18n/lt.json lib/i18n/mk.json client/i18n/kjh.json view/tests/qunit/wikibase/view/testViewController.js lib/i18n/tl.json repo/i18n/ia.json client/i18n/ca.json view/resources/wikibase/view/ViewController.js lib/i18n/ie.json lib/i18n/lb.json view/resources/jquery/jquery.util.getDirectionality.js client/i18n/lmo.json client/i18n/ang.json client/i18n/bar.json repo/i18n/an.json repo/i18n/vep.json repo/i18n/api/is.json repo/i18n/sc.json view/tests/qunit/wikibase/entityIdFormatter/DataValueBasedEntityIdPlainFormatter.tests.js view/tests/qunit/jquery/wikibase/jquery.wikibase.sitelinkgroupview.tests.js client/i18n/ms.json client/i18n/api/io.json client/i18n/khw.json lib/i18n/br.json repo/i18n/en-gb.json lib/i18n/ru.json client/i18n/gom-deva.json client/i18n/zh-hk.json lib/i18n/ro.json repo/i18n/anp.json repo/i18n/alt.json lib/i18n/km.json lib/i18n/mwl.json repo/i18n/api/da.json lib/i18n/fy.json repo/i18n/ses.json client/i18n/ku.json repo/i18n/bdr.json client/i18n/ckb.json repo/i18n/wuu.json repo/i18n/map-bms.json lib/i18n/fr.json client/i18n/api/scn.json repo/i18n/api/ia.json repo/i18n/api/en.json lib/i18n/guc.json repo/tests/selenium/wdio.conf.js client/i18n/sty.json lib/i18n/kum.json repo/i18n/frc.json lib/i18n/zh-hant.json view/resources/wikibase/entityChangers/EntityChangersFactory.js repo/i18n/zh-hk.json repo/i18n/diq.json client/i18n/ln.json lib/i18n/sr-ec.json view/tests/qunit/wikibase/entityChangers/SiteLinkSetsChanger.tests.js lib/i18n/crh-latn.json lib/i18n/bbc-latn.json repo/i18n/vec.json lib/i18n/ann.json client/i18n/pih.json client/i18n/ia.json lib/i18n/szl.json repo/i18n/api/de.json client/i18n/ksh.json view/resources/jquery/wikibase/jquery.wikibase.statementview.RankSelector.js client/i18n/arz.json repo/i18n/sat.json lib/i18n/sty.json repo/i18n/ca.json view/resources/wikibase/entityChangers/namespace.js client/i18n/ciw.json client/i18n/smn.json client/i18n/api/uk.json lib/i18n/pcd.json client/i18n/aeb-arab.json repo/i18n/api/th.json repo/i18n/api/nl.json repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-p31-en.json lib/i18n/ami.json lib/i18n/bto.json repo/i18n/olo.json client/i18n/cv.json view/resources/jquery/wikibase/snakview/snakview.variations.Variation.js lib/i18n/zea.json repo/tests/phpunit/data/rdf/entities/Q4.json client/i18n/ie.json view/tests/qunit/jquery/wikibase/jquery.wikibase.entityview.tests.js lib/i18n/nl.json repo/i18n/sr-ec.json lib/i18n/sv.json repo/i18n/os.json client/i18n/api/ksh.json repo/i18n/din.json lib/i18n/tr.json repo/i18n/awa.json client/i18n/lez.json lib/i18n/ba.json lib/i18n/ang.json lib/i18n/el.json client/i18n/awa.json client/resources/wikibase.client.action.edit.collapsibleFooter.js lib/i18n/vep.json repo/i18n/de.json client/i18n/vi.json lib/i18n/sdc.json lib/i18n/nap.json extension-client.json client/i18n/crh-latn.json repo/i18n/yo.json repo/i18n/hy.json repo/i18n/sd.json composer.json client/i18n/zh-hans.json lib/i18n/en.json client/i18n/api/it.json repo/i18n/pl.json repo/i18n/mhr.json client/i18n/krl.json lib/i18n/da.json repo/tests/phpunit/data/rdf/entities/Q5.json repo/i18n/fa.json client/i18n/sah.json view/resources/wikibase/entityIdFormatter/EntityIdPlainFormatter.js lib/i18n/bho.json lib/i18n/as.json client/i18n/shi.json repo/i18n/jut.json repo/sql/abstract/wb_changes_subscription.json lib/i18n/pam.json lib/i18n/nan.json client/i18n/nl.json view/resources/jquery/wikibase/jquery.wikibase.propertyview.js repo/i18n/az.json repo/i18n/blc.json view/resources/jquery/wikibase/toolbar/jquery.wikibase.addtoolbar.js repo/i18n/api/yi.json client/i18n/bbc-latn.json client/i18n/ja.json repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-q42-en.json repo/i18n/api/ug-arab.json lib/i18n/ase.json client/i18n/nso.json view/resources/jquery/wikibase/toolbar/jquery.wikibase.edittoolbar.js client/i18n/pfl.json repo/i18n/bho.json lib/i18n/pl.json repo/i18n/be.json client/i18n/km.json repo/i18n/ig.json lib/i18n/arz.json client/i18n/myv.json repo/i18n/xsy.json lib/i18n/bgn.json repo/i18n/kea.json repo/i18n/tk.json client/i18n/jam.json client/i18n/hrx.json client/i18n/nds.json repo/i18n/api/oc.json client/i18n/api/mni.json repo/i18n/lbe.json view/tests/qunit/jquery/wikibase/toolbar/jquery.wikibase.toolbaritem.tests.js view/resources/wikibase/entityIdFormatter/CachingEntityIdPlainFormatter.js client/i18n/jv.json client/i18n/fi.json repo/i18n/api/fi.json repo/tests/phpunit/data/federatedProperties/api-entity-search-helper-test-data-emptyResponse.json lib/i18n/tg-cyrl.json client/i18n/sa.json client/i18n/qqq.json lib/i18n/xmf.json client/i18n/api/qqq.json client/i18n/es-formal.json lib/i18n/hyw.json repo/i18n/tay.json lib/i18n/gd.json repo/i18n/tt-cyrl.json repo/i18n/ja.json view/tests/qunit/jquery/wikibase/toolbar/jquery.wikibase.edittoolbar.tests.js repo/tests/qunit/dataTypes/DataType.tests.js repo/i18n/aeb-arab.json view/tests/qunit/wikibase/templates.tests.js repo/i18n/fit.json client/i18n/ses.json client/i18n/jbo.json client/i18n/nb.json repo/tests/phpunit/data/api/setlabel.json lib/i18n/mrh.json client/i18n/api/eu.json build/federated-properties/files/composer.local.json view/tests/qunit/jquery/jquery.util.EventSingletonManager.tests.js lib/i18n/ady-cyrl.json view/resources/jquery/wikibase/snakview/snakview.js lib/i18n/kk-cyrl.json repo/resources/parsers/getStore.js repo/i18n/sms.json repo/i18n/es.json repo/i18n/ht.json view/resources/jquery/wikibase/jquery.wikibase.sitelinkgrouplistview.js lib/i18n/xsy.json repo/i18n/krc.json view/tests/qunit/wikibase/entityChangers/StatementsChangerState.tests.js repo/i18n/brx.json lib/i18n/bn.json repo/i18n/mzn.json lib/i18n/mg.json client/resources/jquery.ui/jquery.ui.suggester.js client/i18n/got.json client/i18n/ml.json client/i18n/mni.json lib/i18n/wuu.json client/i18n/mwl.json repo/i18n/el.json repo/i18n/vro.json repo/i18n/nn.json repo/i18n/udm.json client/i18n/api/ml.json repo/i18n/api/lki.json repo/i18n/sr-el.json lib/i18n/lfn.json lib/i18n/frc.json client/i18n/sh.json client/i18n/api/cs.json client/resources/util.highlightSubstring.js repo/i18n/eo.json client/i18n/bn.json repo/i18n/api/hi.json repo/i18n/lad.json repo/i18n/arq.json view/tests/qunit/jquery/ui/jquery.ui.tagadata.tests.js client/resources/wikibase.client.data-bridge.app.js client/i18n/az.json lib/i18n/lad.json client/i18n/api/sr-ec.json lib/i18n/sat.json client/i18n/alt.json repo/i18n/si.json repo/i18n/cjy-hant.json lib/i18n/anp.json repo/i18n/api/pt-br.json view/resources/wikibase/wikibase.getLanguageNameByCode.js repo/i18n/guc.json client/i18n/ko.json repo/sql/abstract/wb_items_per_site.json lib/i18n/sd.json repo/i18n/kri.json client/i18n/mg.json view/tests/qunit/wikibase/wikibase.getLanguageNameByCode.tests.js repo/i18n/api/ja.json view/resources/wikibase/wikibase.ValueFormatterFactory.js repo/i18n/ilo.json client/i18n/anp.json repo/tests/selenium/specs/readmode.references.js repo/i18n/api/sw.json client/i18n/sli.json repo/i18n/rmc.json repo/resources/wikibase.ui.entitysearch.js lib/i18n/su.json lib/i18n/shi.json view/resources/wikibase/templates.js repo/i18n/gaa.json repo/i18n/ti.json repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-p31-en-de.json client/i18n/pap.json client/i18n/api/az.json repo/i18n/gcr.json repo/i18n/ceb.json client/i18n/kn.json client/i18n/sjd.json view/tests/qunit/wikibase/entityChangers/DescriptionsChanger.tests.js repo/i18n/xal.json client/i18n/sk.json client/i18n/wa.json repo/resources/wikibase.entityPage.entityLoaded.js client/i18n/sgs.json repo/i18n/api/ast.json lib/i18n/mt.json client/i18n/tet.json repo/i18n/szl.json client/i18n/gor.json client/i18n/mt.json lib/i18n/lmo.json view/resources/jquery/jquery.util.EventSingletonManager.js lib/i18n/sdh.json repo/i18n/gor.json view/resources/jquery/wikibase/jquery.wikibase.statementview.js lib/i18n/sc.json lib/i18n/krc.json lib/i18n/kcg.json repo/i18n/lt.json client/i18n/arq.json client/i18n/zu.json client/i18n/olo.json repo/tests/phpunit/data/federatedProperties/query-siteinfo-namespaces-wikidata.json client/i18n/frc.json repo/i18n/pms.json repo/i18n/nan.json lib/i18n/gu.json lib/i18n/ig.json repo/i18n/lki.json lib/i18n/nds-nl.json repo/i18n/mn.json repo/i18n/eml.json lib/i18n/bi.json repo/i18n/gcf.json client/i18n/api/ca.json view/resources/jquery/wikibase/jquery.wikibase.statementgrouplistview.js repo/tests/phpunit/data/rdf/entities/Q8.json repo/i18n/en.json client/i18n/tg-cyrl.json repo/i18n/yi.json view/tests/qunit/jquery/jquery.util.getDirectionality.tests.js repo/i18n/ext.json view/tests/qunit/wikibase/view/ViewFactory.tests.js client/i18n/frp.json repo/i18n/api/pl.json lib/i18n/zh-hans.json client/i18n/ro.json repo/i18n/av.json repo/i18n/mt.json view/resources/jquery/wikibase/toolbar/jquery.wikibase.toolbaritem.js lib/i18n/kbp.json repo/i18n/ur.json lib/i18n/av.json lib/i18n/ckb.json repo/i18n/sco.json lib/i18n/roa-tara.json client/i18n/frr.json lib/i18n/liv.json client/i18n/so.json client/i18n/bjn.json client/i18n/api/lt.json lib/i18n/rif.json repo/i18n/api/ksh.json repo/i18n/arz.json lib/i18n/gcr.json client/i18n/qwh.json repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-p18-p31-en-de.json repo/i18n/sw.json repo/i18n/ang.json repo/i18n/ro.json lib/i18n/en-ca.json lib/i18n/sli.json client/i18n/ug-arab.json client/resources/jquery.wikibase/jquery.wikibase.siteselector.js client/i18n/api/nb.json repo/i18n/aeb-latn.json repo/i18n/gd.json client/i18n/sdh.json lib/i18n/os.json repo/i18n/cak.json client/i18n/api/ru.json lib/i18n/hrx.json repo/i18n/tcy.json client/i18n/api/pt.json lib/i18n/ur.json repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-p31-de.json client/i18n/hy.json lib/i18n/tt-cyrl.json view/tests/qunit/wikibase/utilities/GuidGenerator.tests.js repo/i18n/kw.json client/resources/wikibase.client.getMwApiForRepo.js view/tests/qunit/jquery/wikibase/jquery.wikibase.pagesuggester.tests.js repo/i18n/ru.json repo/i18n/shi.json repo/i18n/prs.json client/i18n/nds-nl.json view/tests/qunit/wikibase/entityIdFormatter/testEntityIdHtmlFormatter.js repo/i18n/inh.json lib/i18n/vec.json view/resources/wikibase/view/ToolbarViewController.js repo/resources/dataTypes/DataType.js client/i18n/ar.json repo/i18n/cdo.json repo/tests/phpunit/data/rdf/entities/P2.json client/i18n/gn.json client/i18n/gsw.json client/i18n/zgh.json repo/i18n/api/ps.json repo/i18n/la.json lib/i18n/qu.json repo/i18n/mrh.json client/i18n/fr.json repo/i18n/api/hu.json lib/i18n/es.json repo/i18n/hr.json repo/i18n/arc.json repo/i18n/api/scn.json client/i18n/azb.json repo/i18n/api/ca.json client/i18n/sr-el.json client/i18n/cak.json client/i18n/xh.json client/i18n/he.json repo/i18n/so.json lib/i18n/ff.json client/i18n/gd.json repo/i18n/rm.json lib/i18n/id.json repo/tests/qunit/dataTypes/DataTypeStore.tests.js client/i18n/da.json repo/i18n/mk.json client/i18n/bgn.json lib/i18n/se.json repo/tests/phpunit/data/federatedProperties/api-entity-search-helper-test-data-entityIdResponse.json repo/i18n/api/lb.json view/tests/qunit/jquery/wikibase/snakview/snakview.tests.js client/resources/jquery.ui/jquery.ui.ooMenu.js lib/i18n/gsw.json view/tests/qunit/jquery/wikibase/jquery.wikibase.propertyview.tests.js lib/i18n/yo.json lib/packages/wikibase/changes/composer.json client/i18n/ff.json repo/i18n/khw.json lib/i18n/lzh.json repo/i18n/mwl.json view/tests/qunit/wikibase/wikibase.tests.js view/tests/qunit/wikibase/utilities/ClaimGuidGenerator.tests.js lib/i18n/ksh.json repo/i18n/api/ro.json client/i18n/udm.json client/sql/abstract/entity_usage.json lib/i18n/mnc.json build/dist-size/web/lib/main.js repo/i18n/pap.json lib/i18n/ca.json repo/i18n/gan-hans.json lib/i18n/pt-br.json repo/i18n/pt-br.json lib/i18n/aeb-latn.json client/i18n/uk.json lib/i18n/bcl.json lib/i18n/pa.json lib/i18n/udm.json lib/i18n/co.json repo/resources/wikibase.special/wikibase.special.languageLabelDescriptionAliases.js client/i18n/kk-cyrl.json client/i18n/ku-latn.json repo/i18n/api/sq.json client/i18n/ha.json view/resources/wikibase/entityChangers/EntityTermsChanger.js repo/i18n/ciw.json client/i18n/cs.json repo/i18n/api/my.json client/i18n/ce.json client/i18n/se.json repo/i18n/pam.json lib/i18n/lkt.json lib/i18n/sjd.json repo/i18n/pfl.json lib/i18n/kjp.json client/i18n/api/lv.json lib/i18n/war.json repo/i18n/id.json repo/i18n/csb.json repo/i18n/api/roa-tara.json lib/i18n/mn.json view/resources/jquery/wikibase/jquery.wikibase.entitytermsforlanguageview.js repo/i18n/api/zh-hans.json repo/i18n/osi.json lib/i18n/lt.json lib/i18n/pnb.json client/i18n/hif-latn.json repo/i18n/pih.json repo/i18n/bci.json repo/i18n/min.json repo/i18n/wa.json repo/i18n/ne.json repo/i18n/api/jv.json view/resources/jquery/wikibase/snakview/snakview.ViewState.js repo/i18n/krl.json repo/sql/abstract/wb_id_counters.json repo/i18n/fur.json client/i18n/api/sr-el.json client/i18n/co.json repo/sql/abstract/wb_changes.json repo/i18n/bi.json lib/i18n/bs.json client/i18n/yo.json repo/sql/abstract/term_store.json client/i18n/tl.json lib/i18n/dty.json view/tests/phpunit/Termbox/data/resources.json repo/i18n/sl.json repo/tests/selenium/specs/tainted-ref.js client/i18n/gcf.json repo/i18n/sm.json client/i18n/sc.json client/resources/wikibase.buildErrorOutput.js repo/i18n/bto.json lib/i18n/he.json lib/i18n/cnr-latn.json lib/i18n/ary.json view/resources/wikibase/entityIdFormatter/CachingEntityIdHtmlFormatter.js client/i18n/rif.json view/tests/qunit/jquery/wikibase/jquery.wikibase.badgeselector.tests.js view/resources/wikibase/utilities/wikibase.utilities.ui.js lib/i18n/bqi.json build/dist-size/analyze/getHistoryForFile.js repo/i18n/lzz.json view/resources/wikibase/entityChangers/SiteLinkSetsChanger.js repo/i18n/nl.json view/tests/qunit/jquery/wikibase/jquery.wikibase.statementgroupview.tests.js client/i18n/mn.json repo/i18n/lmo.json repo/i18n/api/szy.json repo/i18n/api/eu.json repo/i18n/hyw.json view/tests/qunit/wikibase/entityChangers/AliasesChanger.tests.js extension-repo.json repo/i18n/hif-latn.json repo/i18n/ky.json repo/i18n/ast.json repo/i18n/ary.json repo/i18n/rue.json client/i18n/ne.json client/i18n/blc.json client/i18n/ps.json repo/i18n/kab.json client/i18n/inh.json lib/i18n/cv.json lib/i18n/crh-cyrl.json client/i18n/api/sah.json client/i18n/os.json repo/i18n/api/et.json lib/i18n/lki.json repo/i18n/smn.json repo/i18n/uz.json repo/i18n/pcd.json client/i18n/hu.json repo/i18n/af.json repo/i18n/atj.json repo/sql/abstract/wb_property_info.json repo/i18n/mnw.json client/i18n/zea.json repo/tests/selenium/specs/item.js client/i18n/bci.json view/resources/jquery/wikibase/jquery.wikibase.pagesuggester.js repo/i18n/hi.json client/i18n/ady-cyrl.json repo/i18n/wo.json repo/i18n/lzh.json repo/i18n/gn.json lib/i18n/myv.json view/resources/wikibase/view/ControllerViewFactory.js lib/i18n/pag.json lib/i18n/uk.json client/i18n/su.json client/i18n/shy-latn.json lib/i18n/mr.json repo/i18n/ka.json client/i18n/api/fa.json client/i18n/lrc.json repo/i18n/mni.json repo/tests/qunit/wikibase.PropertyDataTypeStore.tests.js lib/i18n/grc.json lib/i18n/lld.json lib/i18n/si.json view/resources/wikibase/entityIdFormatter/DataValueBasedEntityIdHtmlFormatter.js repo/i18n/bs.json view/resources/jquery/wikibase/jquery.wikibase.sitelinklistview.js lib/i18n/nys.json repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-p18-en-de.json repo/i18n/sq.json repo/i18n/kum.json view/resources/wikibase/view/StructureEditorFactory.js client/i18n/arc.json lib/i18n/sa.json client/i18n/hsb.json client/i18n/war.json repo/i18n/ch.json client/i18n/trv.json lib/i18n/hsb.json repo/i18n/api/bg.json repo/tests/phpunit/data/api/setclaim.json view/tests/qunit/jquery/wikibase/jquery.wikibase.sitelinklistview.tests.js client/i18n/aeb-latn.json repo/i18n/lv.json client/i18n/tr.json client/i18n/ru.json client/i18n/lld.json client/i18n/rmc.json lib/i18n/ch.json lib/i18n/cu.json view/resources/jquery/wikibase/jquery.wikibase.sitelinkgroupview.js repo/i18n/api/fa.json repo/i18n/tr.json lib/i18n/la.json lib/i18n/rue.json client/i18n/api/krc.json repo/tests/phpunit/data/federatedProperties/api-entity-search-helper-test-data-oneResponse.json view/resources/jquery/wikibase/snakview/snakview.SnakTypeSelector.js repo/i18n/aeb.json repo/i18n/lij.json tests/api-testing/LuaWikibaseIntegrationTest.js repo/i18n/ff.json client/i18n/gan-hans.json lib/i18n/sk.json lib/i18n/alt.json repo/resources/experts/getStore.js client/i18n/mrh.json client/i18n/api/id.json client/i18n/grc.json repo/i18n/en-ca.json repo/sql/abstractSchemaChanges/patch-wb_changes_dispatch-make-chd_seen-unsigned.json lib/i18n/tly.json client/i18n/bto.json repo/i18n/api/sco.json repo/i18n/szy.json repo/i18n/api/qqq.json client/i18n/ga.json repo/i18n/nah.json repo/i18n/scn.json repo/i18n/api/id.json repo/i18n/tzm.json client/i18n/bxr.json repo/i18n/lkt.json view/tests/qunit/jquery/ui/jquery.ui.closeable.tests.js repo/i18n/fy.json repo/i18n/api/it.json client/i18n/api/pt-br.json repo/i18n/uk.json lib/i18n/dsb.json repo/i18n/syl.json lib/i18n/rm.json repo/tests/phpunit/data/rdf/entities/Q4_no_prefixed_ids.json client/i18n/sq.json repo/i18n/lrc.json lib/i18n/kw.json repo/i18n/hsb.json client/i18n/din.json repo/i18n/ami.json view/resources/jquery/wikibase/jquery.wikibase.labelview.js repo/i18n/api/mr.json lib/i18n/ka.json client/i18n/api/sv.json repo/i18n/dty.json view/resources/wikibase/view/ReadModeViewFactory.js view/tests/qunit/wikibase/view/ToolbarFactory.tests.js repo/i18n/api/bn.json client/i18n/api/bn.json repo/i18n/ksh.json lib/i18n/ilo.json view/resources/jquery/wikibase/snakview/snakview.variations.js repo/i18n/co.json view/resources/jquery/wikibase/jquery.wikibase.listview.ListItemAdapter.js repo/i18n/mg.json repo/i18n/pag.json client/i18n/aeb.json lib/i18n/avk.json view/resources/jquery/wikibase/jquery.wikibase.aliasesview.js client/i18n/hr.json lib/i18n/min.json view/resources/jquery/wikibase/snakview/snakview.variations.SomeValue.js lib/i18n/azb.json client/i18n/be.json lib/i18n/af.json repo/i18n/skr-arab.json repo/i18n/ga.json client/i18n/api/roa-tara.json lib/i18n/fur.json client/i18n/sat.json repo/tests/phpunit/data/federatedProperties/api-entity-search-helper-test-data-filteredResult.json lib/i18n/mo.json repo/i18n/ace.json repo/i18n/api/be-tarask.json repo/tests/phpunit/data/rdf/entities/Q10.json repo/tests/phpunit/data/rdf/entities/Q6_no_prefixed_ids.json view/resources/jquery/wikibase/jquery.wikibase.wbtooltip.js client/i18n/tyv.json repo/i18n/kip.json repo/i18n/api/sv.json client/i18n/api/nl.json view/resources/wikibase/entityChangers/DescriptionsChanger.js client/i18n/te.json client/i18n/tk.json repo/i18n/nso.json client/i18n/mr.json client/i18n/api/en.json client/i18n/api/lki.json lib/i18n/ps.json repo/i18n/api/fr.json client/i18n/kri.json client/i18n/xal.json lib/i18n/ast.json lib/i18n/tay.json client/i18n/ace.json lib/i18n/nb.json repo/i18n/ban.json client/i18n/api/be-tarask.json client/i18n/sl.json view/tests/qunit/jquery/wikibase/jquery.wikibase.referenceview.tabsenabled.tests.js lib/i18n/scn.json client/resources/jquery.event.special.eachchange.js repo/i18n/li.json repo/resources/dataTypes/DataTypeStore.js lib/i18n/sl.json view/resources/wikibase/store/store.CombiningEntityStore.js repo/i18n/mnc.json client/i18n/diq.json lib/i18n/frp.json client/i18n/ch.json client/i18n/gl.json lib/i18n/li.json repo/i18n/sty.json client/i18n/it.json client/i18n/bqi.json client/i18n/api/mk.json repo/tests/qunit/index.js lib/i18n/shn.json lib/i18n/ceb.json client/i18n/api/ko.json lib/i18n/btm.json lib/i18n/gaa.json view/resources/wikibase/view/namespace.js repo/i18n/ta.json lib/i18n/hoc.json repo/i18n/mui.json client/i18n/pl.json lib/i18n/pt.json lib/i18n/diq.json view/tests/qunit/jquery/jquery.sticknode.tests.js lib/i18n/olo.json client/i18n/ase.json client/i18n/af.json client/i18n/ee.json client/i18n/tcy.json client/i18n/api/yi.json view/resources/jquery/wikibase/jquery.wikibase.snaklistview.js client/i18n/api/he.json client/i18n/abs.json lib/tests/phpunit/Units/testunits.json client/i18n/is.json client/i18n/ksw.json client/i18n/api/vi.json lib/i18n/luz.json lib/i18n/vo.json repo/i18n/tyv.json repo/i18n/shy-latn.json repo/i18n/rej.json view/tests/qunit/jquery/wikibase/jquery.wikibase.statementview.RankSelector.tests.js lib/i18n/an.json client/i18n/lij.json repo/i18n/pt.json repo/i18n/xh.json lib/i18n/ti.json lib/i18n/cop.json lib/i18n/en-gb.json view/resources/wikibase/wikibase.buildErrorOutput.js client/i18n/yue.json client/i18n/gu.json view/resources/wikibase/utilities/wikibase.utilities.GuidGenerator.js client/i18n/yi.json client/i18n/lki.json client/i18n/nan.json view/resources/jquery/wikibase/toolbar/jquery.wikibase.toolbarbutton.js client/i18n/api/hu.json repo/i18n/cu.json lib/i18n/tcy.json client/i18n/api/zh-hans.json client/i18n/api/br.json lib/i18n/lzz.json view/resources/jquery/wikibase/jquery.wikibase.statementlistview.js repo/i18n/sk.json repo/resources/wikibase.PropertyDataTypeStore.js repo/tests/phpunit/data/federatedProperties/api-entity-search-helper-test-data-twoResponse.json client/i18n/cy.json repo/i18n/fo.json repo/tests/qunit/wikibase.EntityInitializer.tests.js repo/i18n/kcg.json lib/i18n/kri.json lib/i18n/rej.json repo/resources/experts/Property.js package.json lib/i18n/sgs.json repo/i18n/api/sr-el.json client/i18n/api/sq.json repo/tests/phpunit/data/federatedProperties/api-entity-search-helper-test-data-unexpectedResponse.json client/i18n/nap.json repo/i18n/grc.json client/i18n/de.json client/i18n/io.json client/i18n/lb.json repo/i18n/cop.json repo/i18n/nys.json client/resources/jquery.util.getscrollbarwidth.js view/tests/qunit/jquery/wikibase/toolbar/jquery.wikibase.toolbarbutton.tests.js repo/i18n/roa-tara.json client/i18n/bg.json repo/i18n/api/skr-arab.json lib/i18n/be.json client/i18n/fon.json lib/i18n/ce.json repo/i18n/shn.json repo/i18n/oc.json client/i18n/tay.json client/i18n/api/ar.json view/tests/qunit/jquery/ui/jquery.ui.EditableTemplatedWidget.tests.js repo/i18n/km.json package-lock.json client/i18n/ky.json client/i18n/nn.json lib/i18n/nia.json repo/i18n/api/nb.json lib/i18n/hif-latn.json lib/i18n/mui.json repo/resources/wikibase.federatedPropertiesEditRequestFailureNotice.js repo/i18n/sdh.json repo/i18n/bbc-latn.json client/i18n/vro.json repo/i18n/api/tcy.json lib/i18n/ar.json lib/i18n/mzn.json client/i18n/lv.json repo/tests/selenium/specs/blocked.js client/i18n/sco.json view/tests/qunit/jquery/wikibase/jquery.wikibase.sitelinkgrouplistview.tests.js lib/i18n/pih.json repo/i18n/api/ceb.json lib/i18n/kab.json repo/tests/phpunit/data/federatedProperties/api-entity-search-helper-test-data-multipleEntityIdResponse.json lib/i18n/bpy.json client/i18n/api/ce.json view/resources/jquery/jquery.sticknode.js lib/i18n/so.json repo/resources/parsers/getApiBasedValueParserConstructor.js lib/i18n/qqq.json client/i18n/sms.json repo/i18n/lb.json repo/i18n/mai.json repo/i18n/vi.json client/i18n/api/ast.json client/i18n/la.json client/i18n/xsy.json client/i18n/mnw.json client/i18n/fur.json client/i18n/gom-latn.json client/i18n/id.json lib/i18n/jv.json lib/i18n/sms.json client/resources/util.inherit.js client/i18n/cdo.json lib/i18n/kn.json view/tests/qunit/wikibase/entityIdFormatter/DataValueBasedEntityIdHtmlFormatter.tests.js repo/tests/phpunit/data/api/setreference.json client/i18n/mk.json lib/i18n/ace.json repo/i18n/ady-cyrl.json client/i18n/fo.json view/resources/wikibase/store/store.CachingEntityStore.js view/tests/qunit/wikibase/store/store.CombiningEntityStore.tests.js client/i18n/crh-cyrl.json client/i18n/bo.json client/i18n/pcd.json client/i18n/rue.json lib/i18n/hak.json client/i18n/mhr.json repo/i18n/liv.json repo/i18n/api/ko.json Gruntfile.js client/i18n/ast.json lib/i18n/gl.json client/i18n/api/fr.json view/tests/qunit/jquery/wikibase/jquery.wikibase.descriptionview.tests.js client/resources/wikibase.client.linkitem.init.js lib/i18n/trv.json repo/resources/wikibase.special/wikibase.special.newEntity.js lib/i18n/cdo.json client/i18n/lad.json repo/i18n/et.json client/i18n/br.json repo/i18n/api/ka.json lib/i18n/th.json view/tests/qunit/getMockListItemAdapter.js repo/i18n/jam.json client/i18n/my.json lib/i18n/pfl.json repo/i18n/be-tarask.json client/resources/jquery.wikibase/jquery.wikibase.linkitem.js repo/i18n/api/eo.json lib/i18n/de.json client/i18n/pnb.json repo/i18n/fon.json repo/i18n/gu.json repo/i18n/dsb.json view/tests/qunit/jquery/wikibase/jquery.wikibase.snaklistview.tests.js client/i18n/api/gcr.json client/i18n/ta.json view/tests/qunit/jquery/wikibase/jquery.wikibase.referenceview.tests.js client/i18n/cnr-latn.json client/i18n/ba.json lib/i18n/hy.json build/dist-size/analyze/index.js client/i18n/fy.json client/i18n/brx.json client/i18n/oc.json lib/i18n/jut.json lib/i18n/ksw.json repo/i18n/bqi.json client/i18n/or.json client/i18n/api/sco.json client/i18n/hyw.json client/i18n/en.json repo/i18n/api/nap.json repo/i18n/sxu.json repo/i18n/sdc.json repo/i18n/cy.json client/i18n/api/diq.json view/tests/qunit/wikibase/view/ToolbarViewController.tests.js client/i18n/qu.json lib/i18n/wa.json repo/i18n/api/he.json client/i18n/pt.json client/i18n/ht.json repo/i18n/gom-latn.json client/i18n/guc.json client/i18n/szl.json view/resources/wikibase/view/ViewFactory.js lib/i18n/gom-latn.json repo/i18n/nds-nl.json repo/i18n/bpy.json client/i18n/vep.json lib/i18n/mnw.json repo/sql/abstract/wb_changes_dispatch.json repo/i18n/api/nn.json repo/i18n/yue.json repo/resources/wikibase.sites.js client/i18n/atj.json repo/i18n/de-formal.json repo/resources/wikibase.federatedPropertiesLeavingSiteNotice.js repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-p18-p31-de.json repo/i18n/bn.json lib/i18n/eu.json client/i18n/to.json client/i18n/ext.json client/i18n/mzn.json repo/i18n/api/te.json lib/i18n/vi.json repo/resources/wikibase.ui.entityViewInit.js repo/i18n/hak.json lib/i18n/wo.json repo/i18n/api/pt.json repo/i18n/api/su.json view/tests/qunit/jquery/wikibase/toolbar/jquery.wikibase.addtoolbar.tests.js client/i18n/eu.json view/resources/wikibase/wikibase.RevisionStore.js lib/i18n/na.json client/i18n/bho.json repo/i18n/btm.json client/i18n/bdr.json build/dist-size/analyze/queries/getSizes.js lib/i18n/vro.json view/resources/jquery/wikibase/jquery.wikibase.entityselector.js client/i18n/ami.json repo/i18n/is.json client/i18n/es.json repo/i18n/fi.json client/i18n/rm.json view/resources/jquery/wikibase/jquery.wikibase.entitytermsforlanguagelistview.js repo/i18n/hil.json client/i18n/as.json repo/tests/qunit/jquery.wikibase/jquery.wikibase.entitysearch.tests.js repo/i18n/api/sl.json client/i18n/kcg.json client/i18n/si.json repo/i18n/it.json view/tests/qunit/jquery/wikibase/jquery.wikibase.listview.tests.js client/i18n/ban.json repo/i18n/sgs.json view/tests/qunit/wikibase/wikibase.WikibaseContentLanguages.tests.js repo/i18n/lag.json view/tests/qunit/jquery/wikibase/jquery.wikibase.aliasesview.tests.js client/i18n/dag.json view/tests/qunit/wikibase/entityChangers/SiteLinksChanger.tests.js repo/i18n/api/ms.json lib/i18n/ga.json lib/i18n/nah.json repo/i18n/myv.json view/resources/jquery/wikibase/toolbar/jquery.wikibase.removetoolbar.js client/i18n/liv.json lib/i18n/et.json repo/i18n/api/mk.json repo/resources/wikibase.WikibaseContentLanguages.js client/resources/wikibase.sites.js lib/i18n/krl.json lib/i18n/fi.json client/i18n/gld.json repo/i18n/su.json client/i18n/kjp.json repo/i18n/or.json client/i18n/mad.json repo/i18n/gv.json repo/i18n/bg.json view/tests/qunit/wikibase/wikibase.ValueViewBuilder.tests.js repo/i18n/qqq.json lib/i18n/glk.json view/tests/qunit/wikibase/view/ViewFactoryFactory.tests.js client/i18n/li.json repo/i18n/eu.json repo/i18n/crh-cyrl.json lib/i18n/lij.json lib/i18n/jam.json client/i18n/hoc.json repo/i18n/dv.json lib/i18n/bg.json client/i18n/prs.json client/i18n/pms.json client/i18n/pag.json repo/i18n/got.json view/tests/qunit/jquery/wikibase/jquery.wikibase.entityselector.tests.js lib/i18n/oc.json repo/i18n/rif.json repo/i18n/bar.json repo/i18n/th.json view/resources/jquery/wikibase/jquery.wikibase.descriptionview.js client/i18n/sv.json view/resources/wikibase/store/store.ApiEntityStore.js client/i18n/ann.json lib/i18n/lrc.json client/i18n/kiu.json client/i18n/min.json view/tests/qunit/wikibase/wikibase.getUserLanguages.tests.js view/resources/wikibase/entityIdFormatter/EntityIdHtmlFormatter.js lib/i18n/fa.json lib/i18n/ses.json repo/i18n/my.json client/i18n/tt-cyrl.json client/i18n/el.json repo/i18n/lld.json lib/i18n/tt-latn.json repo/tests/phpunit/data/api/getentities.json client/i18n/api/ms.json repo/i18n/api/kk-cyrl.json repo/i18n/kjp.json repo/i18n/br.json repo/i18n/ar.json lib/i18n/awa.json client/i18n/sxu.json client/i18n/lkt.json lib/i18n/shy-latn.json client/i18n/cu.json repo/i18n/ps.json client/i18n/eml.json client/i18n/om.json repo/i18n/ba.json repo/i18n/es-formal.json client/i18n/kea.json client/i18n/api/ta.json client/i18n/api/lb.json lib/i18n/cs.json repo/i18n/zh-hant.json lib/i18n/sah.json client/i18n/sd.json client/i18n/bpy.json client/i18n/eo.json repo/i18n/glk.json repo/i18n/se.json client/i18n/uz.json client/i18n/tly.json repo/i18n/api/tr.json repo/i18n/api/es.json view/resources/wikibase/entityChangers/SiteLinksChanger.js repo/i18n/bcl.json client/resources/wikibase.client.PageConnector.js lib/i18n/lv.json repo/i18n/luz.json lib/i18n/skr-arab.json client/i18n/pt-br.json client/i18n/dty.json client/i18n/wo.json client/i18n/api/tr.json repo/i18n/chr.json repo/i18n/tt-latn.json view/resources/jquery/wikibase/snakview/snakview.variations.Value.js lib/i18n/cy.json repo/tests/qunit/wikibase.sites.tests.js repo/tests/phpunit/data/federatedProperties/wbgetentities-p1-missing.json repo/i18n/avk.json repo/i18n/zu.json client/i18n/dsb.json repo/tests/phpunit/data/rdf/entities/Q2.json client/i18n/vec.json lib/i18n/be-tarask.json lib/i18n/ban.json view/tests/qunit/wikibase/store/store.CachingEntityStore.tests.js view/resources/jquery/wikibase/jquery.wikibase.sitelinkview.js repo/i18n/sv.json client/i18n/api/th.json repo/i18n/ha.json repo/i18n/ann.json repo/i18n/ase.json repo/i18n/qu.json repo/i18n/api/tl.json lib/i18n/sr-el.json repo/i18n/sjd.json client/i18n/bcl.json repo/i18n/api/zh-hant.json view/resources/wikibase/utilities/wikibase.utilities.ClaimGuidGenerator.js repo/resources/dataTypes/wikibase.dataTypeStore.js repo/i18n/xmf.json repo/i18n/tg-cyrl.json client/i18n/api/gl.json client/i18n/kip.json repo/i18n/api/tay.json repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-p18-p31-en.json repo/i18n/ckb.json repo/i18n/sa.json repo/i18n/hu.json lib/i18n/blc.json view/tests/qunit/wikibase/entityChangers/StatementsChanger.tests.js client/i18n/nys.json lib/i18n/arq.json client/i18n/kab.json repo/i18n/zh-hans.json client/i18n/vo.json repo/tests/qunit/experts/Item.tests.js view/tests/qunit/jquery/wikibase/jquery.wikibase.wbtooltip.tests.js view/resources/wikibase/entityChangers/AliasesChanger.js repo/i18n/ee.json client/i18n/dv.json repo/tests/selenium/specs/nonexisting.item.js view/resources/jquery/wikibase/jquery.wikibase.listview.js lib/i18n/ky.json lib/i18n/om.json repo/i18n/api/gl.json repo/i18n/om.json repo/i18n/trv.json client/resources/jquery.wikibase/jquery.wikibase.wbtooltip.js repo/tests/phpunit/data/rdf/entities/Q7.json repo/tests/phpunit/data/rdf/entities/Q9_no_prefixed_ids.json repo/i18n/cs.json repo/i18n/sh.json repo/i18n/ms.json lib/i18n/ku-latn.json client/i18n/roa-tara.json repo/i18n/vo.json repo/i18n/hoc.json repo/tests/qunit/experts/Property.tests.js repo/i18n/api/ku-latn.json client/i18n/an.json view/tests/qunit/wikibase/entityChangers/EntityTermsChanger.tests.js lib/i18n/frr.json client/i18n/glk.json repo/i18n/lfn.json client/i18n/av.json repo/i18n/gld.json lib/i18n/ml.json lib/i18n/zgh.json client/i18n/ti.json repo/i18n/api/diq.json view/resources/jquery/wikibase/snakview/snakview.variations.NoValue.js repo/i18n/api/ru.json repo/i18n/tly.json jsduck.json client/i18n/api/nap.json lib/i18n/mai.json lib/i18n/pms.json client/i18n/sr-ec.json repo/i18n/api/cs.json repo/resources/experts/Entity.js lib/i18n/ko.json view/tests/qunit/jquery/wikibase/jquery.wikibase.statementlistview.tests.js client/i18n/szy.json client/i18n/jut.json lib/i18n/abs.json repo/i18n/lo.json client/i18n/wuu.json repo/tests/phpunit/data/api/editentity.json client/i18n/krc.json repo/i18n/nap.json repo/resources/wikibase.EntityInitializer.js view/resources/jquery/wikibase/toolbar/jquery.wikibase.singlebuttontoolbar.js repo/i18n/cv.json view/resources/jquery/jquery.removeClassByRegex.js view/resources/wikibase.js client/i18n/api/de.json view/tests/qunit/jquery/wikibase/jquery.wikibase.statementgrouplistview.tests.js lib/i18n/hil.json client/i18n/rej.json repo/i18n/jv.json view/tests/qunit/jquery/jquery.removeClassByRegex.tests.js client/i18n/mo.json lib/tests/qunit/wikibase.Site.tests.js repo/i18n/fr.json client/i18n/mai.json repo/i18n/nds.json lib/i18n/gld.json repo/i18n/ug-arab.json repo/i18n/sli.json lib/i18n/or.json repo/i18n/mo.json lib/i18n/hu.json client/i18n/xmf.json client/i18n/fa.json client/i18n/kbp.json lib/i18n/tk.json lib/i18n/sh.json client/i18n/shn.json lib/i18n/io.json lib/i18n/nds.json repo/i18n/niu.json client/i18n/csb.json repo/i18n/pnb.json view/tests/qunit/jquery/wikibase/jquery.wikibase.sitelinkview.tests.js repo/tests/phpunit/data/federatedProperties/api-entity-search-helper-test-data-errorResponse.json client/i18n/gaa.json client/i18n/sw.json client/i18n/hak.json lib/i18n/yue.json lib/i18n/hi.json client/i18n/ur.json lib/i18n/szy.json lib/i18n/gor.json client/i18n/nah.json repo/i18n/kn.json repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-p18-en.json repo/i18n/crh-latn.json view/resources/wikibase/entityChangers/StatementsChangerState.js lib/i18n/ja.json repo/resources/experts/Item.js client/i18n/mnc.json lib/i18n/my.json repo/i18n/io.json -f json
[{"filePath":"/src/repo/Gruntfile.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/build/ci-scripts/composer.local.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/build/dist-size/analyze/getHistoryForFile.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"no-new-require","replacedBy":[]}]},{"filePath":"/src/repo/build/dist-size/analyze/index.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"no-new-require","replacedBy":[]}]},{"filePath":"/src/repo/build/dist-size/analyze/queries/getCommits.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"no-new-require","replacedBy":[]}]},{"filePath":"/src/repo/build/dist-size/analyze/queries/getSizes.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"no-new-require","replacedBy":[]}]},{"filePath":"/src/repo/build/dist-size/web/lib/main.js","messages":[{"ruleId":"max-len","severity":1,"message":"This line has a length of 107. Maximum allowed is 100.","line":33,"column":1,"nodeType":"Program","messageId":"max","endLine":33,"endColumn":102}],"errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/* global Plotly */\n\nconst FIELDS = {\n\tDATE: 'date',\n\tSIZE: 'size',\n\tSHA: 'sha',\n\tSUBJECT: 'subject',\n};\nconst CUSTOM_FIELDS = {\n\tPREVIOUS_SIZE: 'previousSize',\n\tSIZE_DELTA_PERCENT: 'sizeDeltaPercent',\n};\n\nconst ANNOTATION_THRESHOLD_PERCENT = 8;\n\nfunction unpack( rows, key ) {\n\treturn rows.map( ( row ) => row[ key ] );\n}\n\nfunction sortByDate( first, second ) {\n\tconst a = new Date( first[ FIELDS.DATE ] ),\n\t\tb = new Date( second[ FIELDS.DATE ] );\n\treturn a > b ? 1 : a < b ? -1 : 0;\n}\n\nfunction augmentFileHistoryBySizeDelta( fileHistory ) {\n\tconst newHistory = JSON.parse( JSON.stringify( fileHistory ) );\n\tnewHistory.sort( sortByDate );\n\n\tlet previousRevision = null;\n\tnewHistory.forEach( ( revision ) => {\n\t\tconst previousSize = previousRevision ? previousRevision[ FIELDS.SIZE ] : null;\n\t\tconst deltaPercent = Math.round( ( revision[ FIELDS.SIZE ] - previousSize ) / previousSize * 100 );\n\t\trevision[ CUSTOM_FIELDS.PREVIOUS_SIZE ] = previousSize;\n\t\trevision[ CUSTOM_FIELDS.SIZE_DELTA_PERCENT ] = deltaPercent;\n\t\tpreviousRevision = revision;\n\t} );\n\n\treturn newHistory;\n}\n\nfunction showRevisionInformation( revision ) {\n\twindow.open(\n\t\t'https://github.com/wikimedia/mediawiki-extensions-Wikibase/commit/' + revision[ FIELDS.SHA ],\n\t\t'_blank',\n\t);\n}\n\n/**\n * Build an annotation if the size delta exceeds the configured threshold\n * Requires the revision to be augmented by `deltaPercent` and `previousSize` properties\n *\n * @param {Object} revision\n * @return {?Object}\n */\nfunction buildSizeDeltaAnnotation( revision ) {\n\tif ( revision[ CUSTOM_FIELDS.PREVIOUS_SIZE ] === null || revision[ FIELDS.SIZE ] === null ) {\n\t\t// inception & removal may be a notable but not with respect to size\n\t\treturn null;\n\t}\n\tconst sizeDeltaPercent = revision[ CUSTOM_FIELDS.SIZE_DELTA_PERCENT ];\n\tif ( Math.abs( sizeDeltaPercent ) <= ANNOTATION_THRESHOLD_PERCENT ) {\n\t\treturn null;\n\t}\n\treturn {\n\t\tx: revision[ FIELDS.DATE ],\n\t\ty: revision[ FIELDS.SIZE ],\n\t\txref: 'x',\n\t\tyref: 'y',\n\t\ttext: `∆${sizeDeltaPercent}%`,\n\t\thovertext: `<sub>${revision[ FIELDS.SHA ]}</sub><br>${revision[ FIELDS.SUBJECT ]}`,\n\t\tfont: {\n\t\t\tcolor: sizeDeltaPercent > 0 ? 'red' : 'green',\n\t\t\tsize: Math.max( 5, // minimum size\n\t\t\t\tMath.min( 18, // maximum size\n\t\t\t\t\tMath.round(\n\t\t\t\t\t\tMath.log( Math.abs( sizeDeltaPercent ) ) * 4, // derive size from delta\n\t\t\t\t\t) ) ),\n\t\t},\n\t\tshowarrow: true,\n\t\tarrowhead: 7,\n\t\tax: 0,\n\t\tay: -40,\n\t\tcaptureevents: true,\n\t\tcustomdata: revision,\n\t};\n}\n\nfunction buildScatterTrace( fileName, fileHistory ) {\n\treturn {\n\t\ttype: 'scatter',\n\t\tmode: 'lines+markers',\n\t\tname: fileName,\n\t\tx: unpack( fileHistory, FIELDS.DATE ),\n\t\ty: unpack( fileHistory, FIELDS.SIZE ),\n\t\tcustomdata: fileHistory,\n\t\thovertemplate:\n\t\t\t`%{y} = ∆%{customdata.${CUSTOM_FIELDS.SIZE_DELTA_PERCENT}}%<br>` +\n\t\t\t`<sup>%{customdata.${FIELDS.SHA}}</sup><br>` +\n\t\t\t`%{customdata.${FIELDS.SUBJECT}}`,\n\t\tmarker: { size: 4 },\n\t};\n}\n\nfunction plot( el, historyData ) {\n\tconst traces = [];\n\tconst annotations = [];\n\n\tfor ( const fileName in historyData ) {\n\t\tconst fileHistory = augmentFileHistoryBySizeDelta( historyData[ fileName ] );\n\n\t\ttraces.push( buildScatterTrace( fileName, fileHistory ) );\n\n\t\tfileHistory.forEach( ( revision ) => {\n\t\t\tconst annotation = buildSizeDeltaAnnotation( revision );\n\t\t\tif ( annotation ) {\n\t\t\t\tannotations.push( annotation );\n\t\t\t}\n\t\t} );\n\t}\n\n\tPlotly.newPlot(\n\t\tel,\n\t\ttraces,\n\t\t{\n\t\t\ttitle: 'File size over time',\n\t\t\tyaxis: {\n\t\t\t\ttitle: 'file size (bytes)',\n\t\t\t\tfixedrange: true,\n\t\t\t},\n\t\t\txaxis: {\n\t\t\t\ttitle: 'date (ctrl+click to go to revision)',\n\t\t\t},\n\t\t\tannotations,\n\t\t},\n\t\t{\n\t\t\tscrollZoom: true,\n\t\t},\n\t);\n\n\tel.on( 'plotly_click', function ( data ) {\n\t\tif ( !data.event.ctrlKey ) {\n\t\t\treturn;\n\t\t}\n\n\t\tshowRevisionInformation( data.points[ 0 ].customdata );\n\t} );\n\tel.on( 'plotly_clickannotation', function ( data ) {\n\t\tshowRevisionInformation( data.annotation.customdata );\n\t} );\n}\n\nfunction DistHist( el, historyDataFile ) {\n\tPlotly.d3.json( historyDataFile, ( error, historyData ) => {\n\t\tif ( error !== null ) {\n\t\t\tel.innerText = 'Data not found. Make sure to generate data.json by running the analyze script';\n\t\t\treturn;\n\t\t}\n\n\t\tplot( el, historyData );\n\t} );\n}\n\nexport {\n\tDistHist,\n};\n","usedDeprecatedRules":[{"ruleId":"no-new-require","replacedBy":[]}]},{"filePath":"/src/repo/build/federated-properties/files/composer.local.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/abs.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ace.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ady-cyrl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/aeb-arab.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/aeb-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/aeb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/af.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/alt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ami.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/an.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ang.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ann.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/anp.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/ar.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/ast.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/az.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/be-tarask.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/bn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/ca.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/ce.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/cs.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/de.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/diq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/en.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/es.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/et.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/eu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/fa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/fr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/gcr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/gl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/he.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/hu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/id.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/io.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/it.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/jv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/ko.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/krc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/ksh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/lb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/lki.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/lt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/lv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/mk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/ml.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/mni.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/ms.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/nap.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/nb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/nl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/pl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/pt-br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/pt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/qqq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/roa-tara.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/ru.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/sah.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/scn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/sco.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/sq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/sr-ec.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/sr-el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/sv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/ta.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/th.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/tr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/uk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/vi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/yi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/zh-hans.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/api/zh-hant.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ar.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/arc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/arn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/arq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ary.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/arz.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/as.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ase.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ast.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/atj.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/av.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/avk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/awa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/az.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/azb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ba.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ban.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/bar.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/bbc-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/bci.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/bcl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/bdr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/be-tarask.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/be.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/bg.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/bgn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/bho.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/bjn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/blc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/bn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/bo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/bpy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/bqi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/brx.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/bs.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/btm.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/bto.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/bxr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ca.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/cak.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/cdo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ce.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ceb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ch.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ciw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ckb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/cnr-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/co.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/cop.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/crh-cyrl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/crh-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/cs.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/csb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/cu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/cv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/cy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/da.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/dag.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/de-ch.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/de.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/din.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/diq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/dsb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/dty.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/dv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ee.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/eml.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/en-gb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/en.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/eo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/es-formal.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/es.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/et.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/eu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ext.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/fa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ff.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/fi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/fit.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/fo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/fon.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/fr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/frc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/frp.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/frr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/fur.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/fy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ga.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/gaa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/gan-hans.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/gcf.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/gcr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/gd.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/gl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/gld.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/glk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/gn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/gom-deva.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/gom-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/gor.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/got.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/grc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/gsw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/gu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/guc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ha.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/hak.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/he.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/hi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/hif-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/hil.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/hoc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/hr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/hrx.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/hsb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ht.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/hu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/hy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/hyw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ia.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/id.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ie.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ig.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ilo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/inh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/io.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/is.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/it.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ja.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/jam.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/jbo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/jut.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/jv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ka.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/kab.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/kbp.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/kcg.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/kea.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/khw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/kip.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/kiu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/kjh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/kjp.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/kk-cyrl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/kl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/km.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/kn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ko.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/krc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/kri.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/krl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ksh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ksw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ku-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ku.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/kum.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/kw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ky.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/la.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/lad.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/lag.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/lb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/lez.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/lfn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/li.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/lij.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/liv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/lki.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/lkt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/lld.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/lmo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ln.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/lo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/lrc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/lt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/luz.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/lv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/lzh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/lzz.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/mad.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/mai.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/mg.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/mhr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/min.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/mk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ml.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/mn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/mnc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/mni.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/mnw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/mo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/mr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/mrh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ms.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/mt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/mui.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/mwl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/my.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/myv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/mzn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/nah.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/nan.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/nap.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/nb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/nds-nl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/nds.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ne.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/nia.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/nl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/nn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/nqo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/nso.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/nys.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/oc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/olo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/om.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/or.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/os.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/pa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/pag.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/pam.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/pap.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/pcd.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/pfl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/pih.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/pl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/pms.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/pnb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/prs.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ps.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/pt-br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/pt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/qqq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/qu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/qwh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/rej.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/rif.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/rm.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/rmc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ro.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/roa-tara.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ru.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/rue.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/sa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/sah.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/sat.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/sc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/scn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/sco.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/sd.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/sdc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/sdh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/se.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ses.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/sgs.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/sh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/shi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/shn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/shy-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/si.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/sjd.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/sk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/skr-arab.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/sl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/sli.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/smn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/sms.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/so.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/sq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/sr-ec.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/sr-el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/sty.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/su.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/sv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/sw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/sxu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/syl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/szl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/szy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ta.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/tay.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/tcy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/te.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/tet.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/tg-cyrl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/th.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ti.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/tk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/tl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/tly.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/to.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/tr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/trv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/tt-cyrl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/tt-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/tyv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/tzm.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/udm.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ug-arab.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/uk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/ur.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/uz.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/vec.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/vep.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/vi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/vo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/vro.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/wa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/war.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/wo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/wuu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/xal.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/xh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/xmf.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/xsy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/yi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/yo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/yue.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/zea.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/zgh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/zh-hans.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/zh-hant.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/zh-hk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/i18n/zu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/resources/jquery.event.special.eachchange.js","messages":[{"ruleId":"jsdoc/require-returns","severity":1,"message":"Missing JSDoc @return declaration.","line":22,"column":2,"nodeType":"Block","endLine":30,"endColumn":5},{"ruleId":"no-shadow","severity":1,"message":"'eventData' is already declared in the upper scope on line 193 column 9.","line":202,"column":49,"nodeType":"Identifier","messageId":"noShadow","endLine":202,"endColumn":58}],"errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":"( function () {\n\t'use strict';\n\n\t/**\n\t * Event id used for data binding and as namespace.\n\t *\n\t * @property {string}\n\t * @ignore\n\t */\n\tvar EVENT_ID = 'jqueryEventSpecialEachchange';\n\n\t/**\n\t * Name(s) of events that are in fact supported by the client.\n\t *\n\t * @property {string}\n\t * @ignore\n\t */\n\tvar inputEvent = null;\n\n\tvar triggeredHandlers = [];\n\n\t/**\n\t * Checks whether a handler with a given event id has already been triggered.\n\t *\n\t * @ignore\n\t *\n\t * @param {string} eventId\n\t * @param {number} index Numeric index within the list of handlers attached with the same\n\t *        event id.\n\t */\n\tfunction alreadyTriggered( eventId, index ) {\n\t\tfor ( var i = 0; i < triggeredHandlers.length; i++ ) {\n\t\t\tif ( eventId === triggeredHandlers[ i ].id && index === triggeredHandlers[ i ].index ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\t/**\n\t * Returns the value of a jQuery element or null if the element does not feature retrieving its\n\t * value via .val().\n\t *\n\t * @ignore\n\t *\n\t * @param {jQuery} $elem\n\t * @return {*}\n\t */\n\tfunction getValue( $elem ) {\n\t\t// If the native element does not feature getting its value, an error is caused in the\n\t\t// jQuery mechanism trying to retrieve the value.\n\t\ttry {\n\t\t\treturn $elem.val();\n\t\t} catch ( e ) {\n\t\t\treturn null;\n\t\t}\n\t}\n\n\t/**\n\t * Assigns a namespace to a string of one or more event names separated by a space character.\n\t *\n\t * @ignore\n\t *\n\t * @param {string} eventNames\n\t * @param {string} namespace\n\t * @return {string}\n\t */\n\tfunction assignNamespace( eventNames, namespace ) {\n\t\tvar names = eventNames.split( ' ' ),\n\t\t\tnamespacedNames = [];\n\n\t\tfor ( var i = 0; i < names.length; i++ ) {\n\t\t\tnamespacedNames.push( names[ i ] + '.' + namespace );\n\t\t}\n\n\t\treturn namespacedNames.join( ' ' );\n\t}\n\n\t/**\n\t * Returns a string of on or more event names to be used for detecting any instant changes of an\n\t * input box. This should be just 'input' in recent browsers.\n\t *\n\t * @ignore\n\t *\n\t * @return {string}\n\t */\n\tfunction getInputEvent() {\n\t\t// IE (at least <= version 9) does not trigger input event when pressing backspace\n\t\t// (version <= 8 does not support input event at all anyway)\n\t\tif ( $.client.profile().name === 'msie' && $.client.profile().versionNumber >= 9 ) {\n\t\t\treturn 'input keyup';\n\t\t}\n\n\t\tvar fallbackEvents = 'keyup keydown blur cut paste mousedown mouseup mouseout',\n\t\t\t$input = $( '<input>' ),\n\t\t\tsupported = 'oninput' in $input[ 0 ];\n\t\treturn ( supported ) ? 'input' : fallbackEvents;\n\t}\n\n\t/**\n\t * eachchange jQuery event\n\t *\n\t * The `eachchange` event catches all designated input events. In recent browsers, it basically\n\t * delegates to the `input` event. Older browsers are supported by fallback events to achieve\n\t * some kind of simulation of the `input` event.\n\t *\n\t *     @example\n\t *     $( 'input' ).on( 'eachchange', function( event, previousValue ) {\n\t *         console.log( 'previous value: ' + previousValue );\n\t *         console.log( 'new value: ' + $( event.target ).val() );\n\t *     } );\n\t *\n\t * @see jQuery.event.special\n\t *\n\t * @class jQuery.event.special.eachchange\n\t * @extends jQuery.Event\n\t * @uses jQuery.client\n\t * @license GNU GPL v2+\n\t * @author H. Snater < mediawiki@snater.com >\n\t *\n\t * @param {jQuery.Event} event\n\t * @param {string} previousValue\n\t */\n\t$.event.special.eachchange = {\n\t\tsetup: function ( data, namespaces, eventHandle ) {\n\t\t\tinputEvent = getInputEvent();\n\t\t},\n\n\t\tadd: function ( handleObj ) {\n\t\t\tvar eventData = $.data( this, EVENT_ID + handleObj.namespace ),\n\t\t\t\t$elem = $( this ),\n\t\t\t\teventId = EVENT_ID + handleObj.namespace,\n\t\t\t\teventNameString = assignNamespace( inputEvent, eventId );\n\n\t\t\tif ( !eventData ) {\n\t\t\t\teventData = { handlers: [], prevVal: getValue( $elem ) };\n\t\t\t\t$( document ).on( eventNameString, function ( event ) {\n\t\t\t\t\teventData = $.data( $elem[ 0 ], eventId );\n\t\t\t\t\teventData.prevVal = getValue( $elem );\n\t\t\t\t\t$.data( $elem[ 0 ], eventId, eventData );\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\t// Store the handler to be able to determine whether handler has been triggered already\n\t\t\t// when issuing a .trigger(Handler)():\n\t\t\teventData.handlers.push( handleObj.handler );\n\t\t\t$.data( this, eventId, eventData );\n\n\t\t\t// Delegate the \"eachchange\" event to the supported input event(s):\n\t\t\t$elem.on( eventNameString, function ( event ) {\n\t\t\t\teventData = $.data( this, eventId );\n\n\t\t\t\tif ( !eventData ) {\n\t\t\t\t\t// Event has been removed but event handler is in the loop.\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tevent.origType = event.type;\n\t\t\t\tevent.type = 'eachchange';\n\n\t\t\t\thandleObj.handler.call( this, event, eventData.prevVal );\n\t\t\t} );\n\t\t},\n\n\t\tremove: function ( handleObj ) {\n\t\t\tvar eventId = EVENT_ID + handleObj.namespace;\n\t\t\t$( this ).off( '.' + eventId );\n\t\t\t$( document ).off( '.' + eventId );\n\t\t\t$.removeData( this, eventId );\n\t\t},\n\n\t\ttrigger: function ( event, data ) {\n\t\t\t// Since the value might have changed multiple times programmatically before calling\n\t\t\t// .trigger(Handlers)(), the previous value will be set to the current value and\n\t\t\t// forwarded to the handler(s) when issuing .trigger(Handler)().\n\t\t\tvar self = this,\n\t\t\t\tprevVal = getValue( $( this ) );\n\n\t\t\t// eslint-disable-next-line no-jquery/no-each-util\n\t\t\t$.each( $.data( this ), function ( eventId, eventData ) {\n\t\t\t\tif ( eventId.indexOf( EVENT_ID ) === 0 ) {\n\t\t\t\t\teventData.prevVal = prevVal;\n\t\t\t\t\t$.data( self, eventId, eventData );\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\t// Reset cache of already triggered handlers:\n\t\t\ttriggeredHandlers = [];\n\t\t},\n\n\t\thandle: function ( event, data ) {\n\t\t\tif ( event.namespace !== '' ) {\n\t\t\t\tvar eventData = $.data( this, EVENT_ID + event.namespace );\n\t\t\t\tif ( eventData ) {\n\t\t\t\t\tevent.handleObj.handler.call( this, event, eventData.prevVal );\n\t\t\t\t}\n\n\t\t\t} else {\n\t\t\t\tvar self = this;\n\n\t\t\t\t// eslint-disable-next-line no-jquery/no-each-util\n\t\t\t\t$.each( $.data( this ), function ( eventId, eventData ) {\n\t\t\t\t\tif ( eventId.indexOf( EVENT_ID ) !== 0 ) {\n\t\t\t\t\t\t// Event is not an eachchange event.\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\n\t\t\t\t\tvar handlers = $.data( self, eventId ).handlers;\n\n\t\t\t\t\tfor ( var i = 0; i < handlers.length; i++ ) {\n\t\t\t\t\t\tif ( !alreadyTriggered( eventId, i ) ) {\n\t\t\t\t\t\t\thandlers[ i ].call( self, event, eventData.prevVal );\n\n\t\t\t\t\t\t\ttriggeredHandlers.push( {\n\t\t\t\t\t\t\t\tid: eventId,\n\t\t\t\t\t\t\t\tindex: i\n\t\t\t\t\t\t\t} );\n\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\treturn event;\n\t\t}\n\t};\n\n}() );\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/client/resources/jquery.ui/jquery.ui.ooMenu.js","messages":[{"ruleId":"jsdoc/require-param-type","severity":1,"message":"Missing JSDoc @param \"key\" type.","line":85,"column":null,"nodeType":"Block","endLine":85,"endColumn":null},{"ruleId":"jsdoc/require-param-type","severity":1,"message":"Missing JSDoc @param \"value\" type.","line":86,"column":null,"nodeType":"Block","endLine":86,"endColumn":null},{"ruleId":"jsdoc/require-param-type","severity":1,"message":"Missing JSDoc @param \"event\" type.","line":382,"column":null,"nodeType":"Block","endLine":382,"endColumn":null},{"ruleId":"jsdoc/require-param-type","severity":1,"message":"Missing JSDoc @param \"menu\" type.","line":540,"column":null,"nodeType":"Block","endLine":540,"endColumn":null}],"errorCount":0,"warningCount":4,"fixableErrorCount":0,"fixableWarningCount":0,"source":"( function () {\n\t'use strict';\n\n\t/**\n\t * jQuery.ui.ooMenu provides an object-oriented menu structure. Menu items are managed using\n\t * specific objects instead of DOM elements.\n\t *\n\t * @class jQuery.ui.ooMenu\n\t * @extends jQuery.Widget\n\t * @license GNU GPL v2+\n\t * @author H. Snater < mediawiki@snater.com >\n\t *\n\t * @constructor\n\t *\n\t * @param {Object} [options]\n\t * @param {jQuery.ui.ooMenu.Item[]} [options.items=[]]\n\t *        List of items to display.\n\t * @param {jQuery.ui.ooMenu.CustomItem[]} [options.customItems=[]]\n\t *        List of custom items.\n\t * @param {Function|null} [options.manipulateLabel=null]\n\t *        Function applied to each label before rendering, expects {string} to be returned.\n\t *        Function parameter:\n\t *\n\t * - {string} options.manipulateLabel.label\n\t *\n\t * @param {number|null} [options.maxItems=10]\n\t *        Maximum number of visible items. If there are more items, scrollbars will be shown. Set\n\t *        to \"null\" to never have scrollbars on the menu.\n\t */\n\t/**\n\t * @event focus\n\t * Triggered when focusing/activating an item.\n\t * @param {jQuery.Event} event\n\t * @param {jQuery.ui.ooMenu.Item} item\n\t */\n\t/**\n\t * @event blur\n\t * Triggered when blurring/deactivating an item.\n\t * @param {jQuery.Event} event\n\t */\n\t/**\n\t * @event selected\n\t * Triggered when selecting an item.\n\t * @param {jQuery.Event} event\n\t * @param {jQuery.ui.ooMenu.Item|null} item\n\t */\n\t$.widget( 'ui.ooMenu', {\n\n\t\t/**\n\t\t * @see jQuery.Widget.options\n\t\t * @protected\n\t\t * @readonly\n\t\t */\n\t\toptions: {\n\t\t\titems: [],\n\t\t\tcustomItems: null,\n\t\t\tmanipulateLabel: null,\n\t\t\tmaxItems: 10\n\t\t},\n\n\t\t/**\n\t\t * @see jQuery.Widget._create\n\t\t * @protected\n\t\t */\n\t\t_create: function () {\n\t\t\tthis.options.customItems = this.options.customItems || [];\n\n\t\t\tthis.element.addClass( 'ui-ooMenu ui-widget ui-widget-content' );\n\n\t\t\tthis._refresh();\n\t\t},\n\n\t\t/**\n\t\t * @see jQuery.Widget.destroy\n\t\t */\n\t\tdestroy: function () {\n\t\t\tthis.element\n\t\t.removeClass( 'ui-ooMenu ui-widget ui-widget-content' )\n\t\t.empty();\n\n\t\t\t$.Widget.prototype.destroy.call( this );\n\t\t},\n\n\t\t/**\n\t\t * @param key\n\t\t * @param value\n\t\t * @see jQuery.Widget._setOption\n\t\t * @protected\n\t\t * @throws {Error} when trying to set `items` or `customItems` option with improper values.\n\t\t */\n\t\t_setOption: function ( key, value ) {\n\t\t\tif ( key === 'items' || key === 'customItems' ) {\n\t\t\t\tif ( !Array.isArray( value ) ) {\n\t\t\t\t\tthrow new Error( key + ' needs to be an array' );\n\t\t\t\t}\n\n\t\t\t\tfor ( var i = 0; i < value.length; i++ ) {\n\t\t\t\t\tif ( key === 'items' && !( value[ i ] instanceof $.ui.ooMenu.Item )\n\t\t\t\t\t|| key === 'customItems' && !( value[ i ] instanceof $.ui.ooMenu.CustomItem )\n\t\t\t\t\t) {\n\t\t\t\t\t\tthrow new Error( key + ' may only feature specific instances' );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t$.Widget.prototype._setOption.apply( this, arguments );\n\n\t\t\tif ( key === 'items' || key === 'customItems' ) {\n\t\t\t\tthis._refresh();\n\t\t\t} else if ( key === 'maxItems' ) {\n\t\t\t\tthis.scale();\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Updates the menu content.\n\t\t *\n\t\t * @protected\n\t\t */\n\t\t_refresh: function () {\n\t\t\tthis.element.empty();\n\t\t\tthis.element.scrollTop( 0 );\n\t\t\tfor ( var i = 0; i < this.options.items.length; i++ ) {\n\t\t\t\tthis._appendItem( this.options.items[ i ] );\n\t\t\t}\n\n\t\t\tfor ( var j = 0; j < this.options.customItems.length; j++ ) {\n\t\t\t\tif ( this._evaluateVisibility( this.options.customItems[ j ] ) ) {\n\t\t\t\t\tthis._appendItem( this.options.customItems[ j ] );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.scale();\n\t\t},\n\n\t\t/**\n\t\t * Evaluates whether a custom item is supposed to be visible or not.\n\t\t *\n\t\t * @protected\n\t\t *\n\t\t * @param {jQuery.ui.ooMenu.CustomItem} customItem\n\t\t * @return {boolean}\n\t\t */\n\t\t_evaluateVisibility: function ( customItem ) {\n\t\t\treturn customItem.getVisibility( this );\n\t\t},\n\n\t\t/**\n\t\t * Appends an item to the menu.\n\t\t *\n\t\t * @protected\n\t\t *\n\t\t * @param {jQuery.ui.ooMenu.Item} item\n\t\t */\n\t\t_appendItem: function ( item ) {\n\t\t\tvar self = this;\n\n\t\t\tvar label = this.options.manipulateLabel\n\t\t\t\t? this.options.manipulateLabel( item.getLabel() )\n\t\t\t\t: item.getLabel();\n\n\t\t\tvar $a = $( '<a>' )\n\t\t\t.attr( 'tabindex', -1 )\n\t\t\t.html( label );\n\n\t\t\tif ( item.getLink() ) {\n\t\t\t\t$a.attr( 'href', item.getLink() );\n\t\t\t}\n\n\t\t\tvar $item = $( '<li>' )\n\t\t\t.addClass( 'ui-ooMenu-item' )\n\t\t\t.attr( 'dir', 'auto' )\n\t\t\t.data( 'ui-ooMenu-item', item )\n\t\t\t.append( $a );\n\n\t\t\tif ( item instanceof $.ui.ooMenu.CustomItem ) {\n\t\t\t\t$item.addClass( 'ui-ooMenu-customItem' );\n\n\t\t\t\tif ( typeof item.getAction() === 'function' ) {\n\t\t\t\t\t$item.addClass( 'ui-ooMenu-customItem-action' );\n\t\t\t\t}\n\n\t\t\t\tif ( item.getCssClass() ) {\n\t\t\t\t\t$item.addClass( item.getCssClass() );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t$item\n\t\t.on( 'mouseenter.ooMenu', function () {\n\t\t\tself.activate( item );\n\t\t} )\n\t\t.on( 'mouseleave.ooMenu', function () {\n\t\t\tself.deactivate();\n\t\t} )\n\t\t.on( 'mousedown.ooMenu', function ( e ) {\n\t\t\tif ( !( e.which !== 1 || e.altKey || e.ctrlKey || e.shiftKey || e.metaKey ) ) {\n\t\t\t\tself.select( e );\n\t\t\t}\n\t\t} );\n\n\t\t\t$item.appendTo( this.element );\n\t\t},\n\n\t\t/**\n\t\t * Returns whether the menu currently features visible items.\n\t\t *\n\t\t * @param {boolean} [includeCustomItems]\n\t\t * @return {boolean}\n\t\t */\n\t\thasVisibleItems: function ( includeCustomItems ) {\n\t\t\tif ( this.options.items.length ) {\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\tif ( !includeCustomItems ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tfor ( var i = 0; i < this.options.customItems.length; i++ ) {\n\t\t\t\tif ( this._evaluateVisibility( this.options.customItems[ i ] ) ) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn false;\n\t\t},\n\n\t\t/**\n\t\t * Scales the menu's height to the height of maximum list items and takes care of the menu width\n\t\t * not reaching out of the browser viewport.\n\t\t */\n\t\tscale: function () {\n\t\t\tvar getscrollbarwidth = require( '../jquery.util.getscrollbarwidth.js' );\n\t\t\tthis.element\n\t\t.width( 'auto' )\n\t\t.height( 'auto' )\n\t\t.css( 'overflowY', 'visible' );\n\n\t\t\t// Constrain height:\n\t\t\tif ( this.options.maxItems ) {\n\t\t\t\tvar $children = this.element.children();\n\n\t\t\t\tif ( $children.length > this.options.maxItems ) {\n\t\t\t\t\tvar fixedHeight = 0;\n\n\t\t\t\t\tfor ( var i = 0; i < this.options.maxItems; i++ ) {\n\t\t\t\t\t\tfixedHeight += $children.eq( i ).outerHeight();\n\t\t\t\t\t}\n\n\t\t\t\t\tthis.element.width( this.element.outerWidth() + getscrollbarwidth() );\n\t\t\t\t\tthis.element.height( fixedHeight );\n\t\t\t\t\tthis.element.css( 'overflowY', 'scroll' );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Constrain width if menu reaches out of the browser viewport:\n\t\t\tif ( this.element.offset().left + this.element.outerWidth( true ) > $( window ).width() ) {\n\t\t\t\tthis.element.width(\n\t\t\t\t\t$( window ).width()\n\t\t\t\t\t- this.element.offset().left\n\t\t\t\t\t- ( this.element.outerWidth( true ) - this.element.width() )\n\t\t\t\t\t- 20 // safe space\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Returns the currently active item.\n\t\t *\n\t\t * @return {jQuery.ui.ooMenu.Item|null}\n\t\t */\n\t\tgetActiveItem: function () {\n\t\t\tvar $item = this.element.children( '.ui-state-hover' );\n\t\t\treturn !$item.length ? null : $item.data( 'ui-ooMenu-item' );\n\t\t},\n\n\t\t/**\n\t\t * Activates/focuses a specific item.\n\t\t *\n\t\t * @param {jQuery.ui.ooMenu.Item|jQuery} item\n\t\t *\n\t\t * @throws {Error} if the item is not specified correctly.\n\t\t */\n\t\tactivate: function ( item ) {\n\t\t\tvar $item;\n\n\t\t\tif ( item instanceof $.ui.ooMenu.Item ) {\n\t\t\t\t$item = this.element.children( '.ui-ooMenu-item' ).filter( function () {\n\t\t\t\t\treturn $( this ).data( 'ui-ooMenu-item' ) === item;\n\t\t\t\t} );\n\t\t\t} else if ( item instanceof $ && item.data( 'ui-ooMenu-item' ) ) {\n\t\t\t\t$item = item;\n\t\t\t} else {\n\t\t\t\tthrow new Error( 'Need $.ui.ooMenu.Item instance or menu item jQuery object to '\n\t\t\t\t+ 'activate' );\n\t\t\t}\n\n\t\t\tthis.element.children( '.ui-state-hover' ).removeClass( 'ui-state-hover' );\n\n\t\t\tvar offset = $item.offset().top - this.element.offset().top,\n\t\t\t\tscroll = this.element.scrollTop(),\n\t\t\t\telementHeight = this.element.height();\n\n\t\t\tif ( offset < 0 ) {\n\t\t\t\tthis.element.scrollTop( scroll + offset );\n\t\t\t} else if ( offset >= elementHeight ) {\n\t\t\t\tthis.element.scrollTop( scroll + offset - elementHeight + $item.height() );\n\t\t\t}\n\n\t\t\t$item.addClass( 'ui-state-hover' );\n\n\t\t\t$( this ).trigger( 'focus', [ $item.data( 'ui-ooMenu-item' ) ] );\n\t\t},\n\n\t\t/**\n\t\t * Deactivates the menu (resets activated item).\n\t\t */\n\t\tdeactivate: function () {\n\t\t\tif ( this._isActive() ) {\n\t\t\t\tthis.element.children( '.ui-state-hover' ).removeClass( 'ui-state-hover' );\n\t\t\t\t$( this ).trigger( 'blur' );\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Returns whether there is an active menu item.\n\t\t *\n\t\t * @protected\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\t_isActive: function () {\n\t\t\treturn !!this.element.children( '.ui-state-hover' ).length;\n\t\t},\n\n\t\t/**\n\t\t * Moves focus to the next item.\n\t\t */\n\t\tnext: function () {\n\t\t\tthis._move( 'next', this.element.children( '.ui-ooMenu-item' ).first() );\n\t\t},\n\n\t\t/**\n\t\t * Moves focus to the previous item.\n\t\t */\n\t\tprevious: function () {\n\t\t\tthis._move( 'prev', this.element.children( '.ui-ooMenu-item' ).last() );\n\t\t},\n\n\t\t/**\n\t\t * Moves focus in a specific direction.\n\t\t *\n\t\t * @protected\n\t\t *\n\t\t * @param {string} direction Either \"next\" or \"prev\".\n\t\t * @param {jQuery} $edge\n\t\t */\n\t\t_move: function ( direction, $edge ) {\n\t\t\tif ( !this.element.children().length ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar $active = this.element.children( '.ui-state-hover' );\n\n\t\t\tif ( !$active.length ) {\n\t\t\t\tthis.activate( $edge );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar $nextItem = $active[ direction + 'All' ]( '.ui-ooMenu-item' ).eq( 0 );\n\n\t\t\tif ( $nextItem.length ) {\n\t\t\t\tthis.activate( $nextItem );\n\t\t\t} else {\n\t\t\t\tthis.activate( $edge );\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Selects an item.\n\t\t *\n\t\t * @param event\n\t\t */\n\t\tselect: function ( event ) {\n\t\t\tvar $item = this.element.children( '.ui-state-hover' );\n\n\t\t\tvar item = !$item.length ? null : $item.data( 'ui-ooMenu-item' );\n\n\t\t\tif ( item instanceof $.ui.ooMenu.CustomItem ) {\n\t\t\t\tvar action = item.getAction();\n\t\t\t\tif ( typeof action === 'function' ) {\n\t\t\t\t\taction();\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tvar selectedEvent = $.Event( 'selected', {\n\t\t\t\toriginalEvent: event || null\n\t\t\t} );\n\n\t\t\t$( this ).trigger( selectedEvent, [ item ] );\n\t\t}\n\t} );\n\n\t/**\n\t * Default menu item.\n\t *\n\t * @class jQuery.ui.ooMenu.Item\n\t * @license GNU GPL v2+\n\t * @author H. Snater < mediawiki@snater.com >\n\t *\n\t * @constructor\n\t *\n\t * @param {string|jQuery} label The label to display in the menu.\n\t * @param {string|null} [value] The value to display in the input element if the item is selected.\n\t *        If no value is specified, the label text will be used.\n\t * @param {string|null} [link=null] Optional URL the item shall link to.\n\t *\n\t * @throws {Error} if any required parameter is not specified properly.\n\t */\n\tvar Item = function ( label, value, link ) {\n\t\tif ( !label ) {\n\t\t\tthrow new Error( 'Label needs to be specified' );\n\t\t}\n\n\t\tthis._label = label;\n\t\tthis._value = value || ( label instanceof $ ? label.text() : label );\n\t\tthis._link = link || null;\n\t};\n\n\t$.extend( Item.prototype, {\n\t/**\n\t * @property {jQuery|string}\n\t * @protected\n\t */\n\t\t_label: null,\n\n\t\t/**\n\t\t * @property {string}\n\t\t * @protected\n\t\t */\n\t\t_value: null,\n\n\t\t/**\n\t\t * @property {string|null}\n\t\t * @protected\n\t\t */\n\t\t_link: null,\n\n\t\t/**\n\t\t * @return {jQuery}\n\t\t */\n\t\tgetLabel: function () {\n\t\t\treturn this._label instanceof String\n\t\t\t\t? $( document.createTextNode( this._label ) )\n\t\t\t\t: this._label;\n\t\t},\n\n\t\t/**\n\t\t * @return {string}\n\t\t */\n\t\tgetValue: function () {\n\t\t\treturn this._value;\n\t\t},\n\n\t\t/**\n\t\t * @return {string|null}\n\t\t */\n\t\tgetLink: function () {\n\t\t\treturn this._link;\n\t\t}\n\t} );\n\n\t/**\n\t * Customizable menu item.\n\t *\n\t * @class jQuery.ui.ooMenu.CustomItem\n\t * @extends jQuery.ui.ooMenu.Item\n\t * @license GNU GPL v2+\n\t * @author H. Snater < mediawiki@snater.com >\n\t *\n\t * @constructor\n\t *\n\t * @param {string|jQuery} label\n\t * @param {Function|boolean|null} [visibility=null]\n\t *        Function to determine the item's visibility or boolean defining static visibility. If\n\t *        \"null\" or omitted, the item will always be visible. Function expects {boolean} to be\n\t *        returned. Function parameter:\n\t *\n\t * - {jQuery.ui.ooMenu} [visibility.menu]\n\t *\n\t * @param {Function|null} [action=null]\n\t * @param {string|null} [cssClass=null]\n\t * @param {string|null} [link=null]\n\t *\n\t * @throws {Error} if any required parameter is not specified properly.\n\t */\n\tvar CustomItem = function ( label, visibility, action, cssClass, link ) {\n\t\t\tif ( !label ) {\n\t\t\t\tthrow new Error( 'Label needs to be specified' );\n\t\t\t}\n\n\t\t\tthis._label = label;\n\t\t\tthis.setVisibility( visibility );\n\t\t\tthis.setAction( action );\n\t\t\tthis.setCssClass( cssClass );\n\t\t\tthis._link = link || null;\n\t\t},\n\t\tinherit = require( '../util.inherit.js' );\n\n\tCustomItem = inherit(\n\t\tItem,\n\t\tCustomItem,\n\t\t{\n\t\t/**\n\t\t * @property {Function|boolean|null}\n\t\t * @protected\n\t\t */\n\t\t\t_visibility: null,\n\n\t\t\t/**\n\t\t\t * @property {Function|null}\n\t\t\t * @protected\n\t\t\t */\n\t\t\t_action: null,\n\n\t\t\t/**\n\t\t\t * @property {string}\n\t\t\t * @protected\n\t\t\t */\n\t\t\t_cssClass: null,\n\n\t\t\t/**\n\t\t\t * @inheritdoc\n\t\t\t */\n\t\t\tgetValue: function () {\n\t\t\t\treturn '';\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * @param menu\n\t\t\t * @return {Function|boolean}\n\t\t\t */\n\t\t\tgetVisibility: function ( menu ) {\n\t\t\t\tif ( typeof this._visibility === 'function' ) {\n\t\t\t\t\treturn this._visibility( menu );\n\t\t\t\t}\n\t\t\t\treturn this._visibility !== false;\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * @param {Function|boolean|null} [visibility]\n\t\t\t */\n\t\t\tsetVisibility: function ( visibility ) {\n\t\t\t\tthis._visibility = typeof visibility === 'function' || typeof visibility === 'boolean'\n\t\t\t\t\t? visibility\n\t\t\t\t\t: null;\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * @return {Function|null}\n\t\t\t */\n\t\t\tgetAction: function () {\n\t\t\t\treturn this._action;\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * @param {Function|null} [action]\n\t\t\t */\n\t\t\tsetAction: function ( action ) {\n\t\t\t\tthis._action = typeof action === 'function' ? action : null;\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * @return {string}\n\t\t\t */\n\t\t\tgetCssClass: function () {\n\t\t\t\treturn this._cssClass;\n\t\t\t},\n\n\t\t\t/**\n\t\t\t * @param {string|null} [cssClass]\n\t\t\t */\n\t\t\tsetCssClass: function ( cssClass ) {\n\t\t\t\tthis._cssClass = typeof cssClass === 'string' ? cssClass : '';\n\t\t\t}\n\t\t}\n\t);\n\n\t$.extend( $.ui.ooMenu, {\n\t\tItem: Item,\n\t\tCustomItem: CustomItem\n\t} );\n\n}() );\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/client/resources/jquery.ui/jquery.ui.suggester.js","messages":[{"ruleId":"jsdoc/require-returns","severity":1,"message":"Missing JSDoc @return declaration.","line":241,"column":3,"nodeType":"Block","endLine":246,"endColumn":6},{"ruleId":"jsdoc/require-param-type","severity":1,"message":"Missing JSDoc @param \"key\" type.","line":242,"column":null,"nodeType":"Block","endLine":242,"endColumn":null},{"ruleId":"jsdoc/require-param-type","severity":1,"message":"Missing JSDoc @param \"value\" type.","line":243,"column":null,"nodeType":"Block","endLine":243,"endColumn":null},{"ruleId":"jsdoc/require-returns","severity":1,"message":"Found more than one @return declaration.","line":526,"column":3,"nodeType":"Block","endLine":534,"endColumn":6},{"ruleId":"jsdoc/require-returns-check","severity":1,"message":"Found more than one @return declaration.","line":526,"column":3,"nodeType":"Block","endLine":534,"endColumn":6},{"ruleId":"jsdoc/require-returns","severity":1,"message":"Found more than one @return declaration.","line":644,"column":3,"nodeType":"Block","endLine":656,"endColumn":6},{"ruleId":"jsdoc/require-returns-check","severity":1,"message":"Found more than one @return declaration.","line":644,"column":3,"nodeType":"Block","endLine":656,"endColumn":6},{"ruleId":"jsdoc/require-returns","severity":1,"message":"Found more than one @return declaration.","line":665,"column":3,"nodeType":"Block","endLine":678,"endColumn":6},{"ruleId":"jsdoc/require-returns-check","severity":1,"message":"Found more than one @return declaration.","line":665,"column":3,"nodeType":"Block","endLine":678,"endColumn":6}],"errorCount":0,"warningCount":9,"fixableErrorCount":0,"fixableWarningCount":0,"source":"( function () {\n\t'use strict';\n\n\trequire( './jquery.ui.ooMenu.js' );\n\n\t/**\n\t * Flips a complete position specification to be used by jQuery.ui.position (1.8).\n\t *\n\t * @ignore\n\t *\n\t * @param {Object} position\n\t * @return {Object}\n\t */\n\tfunction flipPosition( position ) {\n\t\tfunction flipOrientation( orientation ) {\n\t\t\tif ( /right/i.test( orientation ) ) {\n\t\t\t\treturn orientation.replace( /right/i, 'left' );\n\t\t\t} else {\n\t\t\t\treturn orientation.replace( /left/i, 'right' );\n\t\t\t}\n\t\t}\n\n\t\tfunction flipHorizontalOffset( offset ) {\n\t\t\tvar offsets = offset.split( ' ' ),\n\t\t\t\thOffset = parseInt( offsets[ 0 ], 10 );\n\n\t\t\thOffset = ( hOffset <= 0 ) ? Math.abs( hOffset ) : hOffset * -1;\n\t\t\treturn hOffset + ' ' + offsets[ 1 ];\n\t\t}\n\n\t\tposition.my = flipOrientation( position.my );\n\t\tposition.at = flipOrientation( position.at );\n\n\t\tif ( position.offset ) {\n\t\t\tposition.offset = flipHorizontalOffset( position.offset );\n\t\t}\n\n\t\treturn position;\n\t}\n\n\t/**\n\t * Enhances an input box by retrieving a list of suggestions that are displayed in a list below the\n\t * input box.\n\t * (uses `jQuery.ui.ooMenu`, `jQuery.ui.position`)\n\t *\n\t *     @example\n\t *     // Creates a simple suggester using an array as result set.\n\t *     $( 'input' ).suggester( { source: ['a', 'b', 'c'] } );\n\t *\n\t *     // Creates an auto-completion input element fetching suggestions via AJAX.\n\t *     $( 'input' ).suggester( {\n\t *         source: function( term ) {\n\t *             var deferred = $.Deferred();\n\t *\n\t *             $.ajax( {\n\t *                 url: 'https://commons.wikimedia.org/w/api.php',\n\t *                 dataType: 'jsonp',\n\t *                 data: {\n\t *                 search: term,\n\t *                 action: 'opensearch',\n\t *                 namespace: 6\n\t *             }, timeout: 8000 } )\n\t *             .done( function( response ) {\n\t *                 deferred.resolve( response[1], response[0] );\n\t *             } )\n\t *             .fail( function( jqXHR, textStatus ) {\n\t *                 deferred.reject( textStatus );\n\t *             } );\n\t *\n\t *             return deferred.promise();\n\t *         }\n\t *     } );\n\t *\n\t * @class jQuery.ui.suggester\n\t * @extends jQuery.Widget\n\t * @uses jQuery.ui\n\t * @license GNU GPL v2+\n\t * @author H. Snater < mediawiki@snater.com >\n\t *\n\t * @constructor\n\t *\n\t * @param {Object} options\n\t * @param {string[]|Function} options.source\n\t *        An array of strings that shall be used to provide suggestions. Alternatively, a function\n\t *        may be provided\n\t *        Parameters:\n\t *\n\t * - {string} Search term\n\t *\n\t * Expected return values:\n\t *\n\t * - {Object} jQuery promise\n\t *\n\t * Resolved parameters:\n\t *\n\t * - {string[]} Suggestions\n\t *\n\t * - {string} (optional) Search term corresponding to the suggestions. This allows checking whether\n\t *   the response belongs to the most current request.\n\t *\n\t * Rejected parameters:\n\t *\n\t * - {string} Plain text or HTML error message.\n\t *\n\t * @param {number} [options.minTermLength=1]\n\t *        Minimum number of characters to trigger a search with.\n\t * @param {number} [options.delay=300]\n\t *        Delay in milliseconds of the request querying for suggestions.\n\t * @param {jQuery.ui.ooMenu|null} [menu=null]\n\t *        A pre-initialized menu instance featuring one or more custom list item may be provided.\n\t *        This should be the preferred way to define custom items.\n\t * @param {Object} [position=Object]\n\t *        Object to be evaluated by `jQuery.ui.position` to set the suggestion list's position.\n\t *        In RTL context, the specified value is flipped automatically.\n\t *        Default: (position suggestion list's top left corner at input box's bottom left corner)\n\t * @param {jQuery|null} [confineMinWidthTo]\n\t *        The suggestion list's width shall not be smaller than the width of the referenced\n\t *        element. If `undefined`, the minimum width will be the width of the element the suggester\n\t *        is initialized on. Specifying `null` or `undefined` will prevent applying a minimum\n\t *        width.\n\t */\n\t/**\n\t * @event open\n\t * Triggered when the list of suggestions is opened.\n\t * @param {jQuery.Event} event\n\t */\n\t/**\n\t * @event close\n\t * Triggered when the list of suggestions is closed.\n\t * @param {jQuery.Event} event\n\t */\n\t/**\n\t * @event change\n\t * Triggered when the suggester's value has changed.\n\t * @param {jQuery.Event} event\n\t */\n\t/**\n\t * @event error\n\t * Triggered whenever an error occurred while gathering suggestions. This may happen only when using\n\t * a function as source. The {string} parameter is forwarded from the rejected promise returned by\n\t * the source function.\n\t * @param {jQuery.Event} event\n\t * @param {string} message\n\t */\n\t$.widget( 'ui.suggester', {\n\n\t\t/**\n\t\t * @see jQuery.Widget.options\n\t\t * @protected\n\t\t * @readonly\n\t\t */\n\t\toptions: {\n\t\t\tsource: null,\n\t\t\tminTermLength: 1,\n\t\t\tdelay: 300,\n\t\t\tmenu: null,\n\t\t\tposition: {\n\t\t\t\tmy: 'left top',\n\t\t\t\tat: 'left bottom',\n\t\t\t\tcollision: 'none'\n\t\t\t},\n\t\t\tconfineMinWidthTo: undefined\n\t\t},\n\n\t\t/**\n\t\t * Counter for the number of pending requests.\n\t\t *\n\t\t * @property {number}\n\t\t * @protected\n\t\t */\n\t\t_pending: null,\n\n\t\t/**\n\t\t * Current search term.\n\t\t *\n\t\t * @property {string}\n\t\t * @protected\n\t\t */\n\t\t_term: null,\n\n\t\t/**\n\t\t * Caches whether searching is in progress by either storing the ID of the timer used to delay\n\t\t * the actual search request or by storing a boolean \"true\" while the actual search request is\n\t\t * in progress.\n\t\t *\n\t\t * @property {number|boolean} [_searching=false]\n\t\t * @protected\n\t\t */\n\t\t_searching: false,\n\n\t\t/**\n\t\t * @see jQuery.Widget._create\n\t\t * @protected\n\t\t */\n\t\t_create: function () {\n\t\t\tvar self = this;\n\n\t\t\tthis._pending = 0;\n\t\t\tthis._term = this.element.val();\n\n\t\t\tthis.element\n\t\t.addClass( 'ui-suggester-input' )\n\t\t.on( 'blur.' + this.widgetName, function () {\n\t\t\tif ( !self.options.menu.element.is( ':focus' ) ) {\n\t\t\t\tself._close();\n\t\t\t}\n\t\t} );\n\n\t\t\tif ( !( this.options.menu instanceof $.ui.ooMenu ) ) {\n\t\t\t\tvar $menu = $( '<ul>' ).ooMenu();\n\t\t\t\tthis.options.menu = $menu.data( 'ooMenu' );\n\t\t\t}\n\n\t\t\tthis.options.menu = this._initMenu( this.options.menu );\n\n\t\t\tthis._attachInputEventHandlers();\n\t\t\tthis._attachWindowEventHandlers();\n\t\t},\n\n\t\t/**\n\t\t * @see jQuery.Widget.destroy\n\t\t */\n\t\tdestroy: function () {\n\t\t\tthis._clearTimeout();\n\n\t\t\tvar menu = this.option( 'menu' );\n\t\t\tmenu.destroy();\n\t\t\tmenu.element.remove();\n\t\t\tthis.option( 'menu', null );\n\n\t\t\t// About to remove the last suggester instance on the page:\n\t\t\tif ( $( ':' + this.widgetBaseClass ).length === 1 ) {\n\t\t\t\t$( window ).off( '.' + this.widgetBaseClass );\n\t\t\t}\n\n\t\t\tthis.element.removeClass( 'ui-suggester-input ui-suggester-loading ui-suggester-error' );\n\n\t\t\t$.Widget.prototype.destroy.call( this );\n\t\t},\n\n\t\t/**\n\t\t * @param key\n\t\t * @param value\n\t\t * @see jQuery.Widget._setOption\n\t\t * @protected\n\t\t */\n\t\t_setOption: function ( key, value ) {\n\t\t\tif ( key === 'menu' ) {\n\t\t\t\tthis.options.menu.destroy();\n\t\t\t\tthis.options.menu.element.remove();\n\t\t\t}\n\n\t\t\tvar response = $.Widget.prototype._setOption.apply( this, arguments );\n\n\t\t\tif ( key === 'menu' && value instanceof $.ui.ooMenu ) {\n\t\t\t\tthis.options.menu = this._initMenu( value );\n\t\t\t}\n\n\t\t\tif ( key === 'disabled' ) {\n\t\t\t\tif ( value ) {\n\t\t\t\t\tthis._close();\n\t\t\t\t}\n\t\t\t\tthis.element.prop( 'disabled', value );\n\t\t\t}\n\n\t\t\treturn response;\n\t\t},\n\n\t\t/**\n\t\t * Renders the menu and attaches the menu's event handlers.\n\t\t *\n\t\t * @protected\n\t\t *\n\t\t * @param {jQuery.ui.ooMenu} ooMenu\n\t\t * @return {jQuery.ui.ooMenu}\n\t\t */\n\t\t_initMenu: function ( ooMenu ) {\n\t\t\tvar self = this;\n\n\t\t\tooMenu.element\n\t\t.addClass( 'ui-suggester-list' )\n\t\t.hide()\n\t\t.appendTo( 'body' );\n\n\t\t\t$( ooMenu )\n\t\t.on( 'selected.suggester', function ( event, item ) {\n\t\t\tif ( item instanceof $.ui.ooMenu.Item && !( item instanceof $.ui.ooMenu.CustomItem ) ) {\n\t\t\t\tself._term = item.getValue();\n\t\t\t\tself.element.val( item.getValue() );\n\t\t\t\tself._close();\n\t\t\t\tself._trigger( 'change' );\n\n\t\t\t\tif ( !event.originalEvent || !/^key/.test( event.originalEvent.type ) ) {\n\t\t\t\t\tsetTimeout( function () {\n\t\t\t\t\t\t// Run refocusing out of the execution chain to allow redrawing in IE.\n\t\t\t\t\t\tself.element.trigger( 'focus' );\n\t\t\t\t\t}, 0 );\n\t\t\t\t}\n\t\t\t}\n\t\t} );\n\n\t\t\treturn ooMenu;\n\t\t},\n\n\t\t/**\n\t\t * Attaches input event handlers to the input element.\n\t\t *\n\t\t * @protected\n\t\t */\n\t\t_attachInputEventHandlers: function () {\n\t\t\tvar self = this,\n\t\t\t\tsuppressKeyPress = false;\n\n\t\t\tthis.element\n\t\t.on( 'click.suggester', function ( event ) {\n\t\t\tif ( !self.isSearching() ) {\n\t\t\t\tself._updateMenuVisibility();\n\t\t\t}\n\t\t} )\n\t\t.on( 'keydown.suggester', function ( event ) {\n\t\t\tvar isDisabled = self.element.hasClass( 'ui-state-disabled' );\n\n\t\t\tif ( isDisabled || self.element.prop( 'readOnly' ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tself.element.removeClass( 'ui-suggester-error' );\n\n\t\t\tsuppressKeyPress = false;\n\n\t\t\tvar keyCode = $.ui.keyCode;\n\n\t\t\tswitch ( event.keyCode ) {\n\t\t\t\tcase keyCode.UP:\n\t\t\t\t\tself._keyMove( 'previous', event );\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase keyCode.DOWN:\n\t\t\t\t\tself._keyMove( 'next', event );\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase keyCode.ENTER:\n\t\t\t\tcase keyCode.NUMPAD_ENTER:\n\t\t\t\t\tif ( self.options.menu.getActiveItem() ) {\n\t\t\t\t\t\t// Prevent form submission and select currently active item.\n\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\t\tsuppressKeyPress = true;\n\t\t\t\t\t\tself.options.menu.select( event );\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase keyCode.TAB:\n\t\t\t\t\tif ( !self.options.menu.getActiveItem() ) {\n\t\t\t\t\t\tself._close();\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tself.options.menu.select( event );\n\t\t\t\t\tbreak;\n\n\t\t\t\tcase keyCode.ESCAPE:\n\t\t\t\t\tself.element.val( self._term );\n\t\t\t\t\t// eslint-disable-next-line no-jquery/no-sizzle\n\t\t\t\t\tif ( self.options.menu.element.is( ':visible' ) ) {\n\t\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\t\tself._close();\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\n\t\t\t\tdefault:\n\t\t\t\t\tif ( self.element.val() === ''\n\t\t\t\t\t\t&& (\n\t\t\t\t\t\t\tevent.keyCode === keyCode.BACKSPACE\n\t\t\t\t\t\t\t|| event.keyCode === keyCode.DELETE\n\t\t\t\t\t\t)\n\t\t\t\t\t) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\n\t\t\t\t\tself._triggerSearch();\n\n\t\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tself._trigger( 'change' );\n\t\t} )\n\t\t.on( 'keypress.suggester', function ( event ) {\n\t\t\tif ( suppressKeyPress ) {\n\t\t\t\tsuppressKeyPress = false;\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\t\t} );\n\t\t},\n\n\t\t/**\n\t\t * Attaches event listeners to the `window` object.\n\t\t *\n\t\t * @protected\n\t\t */\n\t\t_attachWindowEventHandlers: function () {\n\t\t\tvar self = this;\n\n\t\t\t$( window )\n\t\t.off( '.' + this.widgetBaseClass )\n\t\t.on( 'resize.' + this.widgetBaseClass, function () {\n\t\t\t$( ':' + self.widgetBaseClass ).each( function ( i, node ) {\n\t\t\t\tvar suggester = $( node ).data( self.widgetName );\n\t\t\t\tsuggester.repositionMenu();\n\t\t\t\tsuggester.options.menu.scale();\n\t\t\t} );\n\t\t} )\n\t\t.on( 'click.' + this.widgetBaseClass, function ( event ) {\n\t\t\tvar $target = $( event.target );\n\t\t\t$( ':' + self.widgetBaseClass ).each( function ( i, node ) {\n\t\t\t\tvar suggester = $( node ).data( self.widgetName );\n\t\t\t\t// Close suggester if not clicked on suggester or corresponding list:\n\t\t\t\tif ( $target.closest( suggester.element ).length === 0\n\t\t\t\t\t&& $target.closest( suggester.options.menu.element ).length === 0\n\t\t\t\t) {\n\t\t\t\t\tsuggester._close();\n\t\t\t\t}\n\t\t\t} );\n\t\t} );\n\t\t},\n\n\t\t/**\n\t\t * @private\n\t\t */\n\t\t_triggerSearch: function () {\n\t\t\tvar self = this;\n\n\t\t\tthis._clearTimeout();\n\n\t\t\tthis._searching = setTimeout( function () {\n\t\t\t// Only search if the value has changed:\n\t\t\t\tif ( self._term !== self.element.val() ) {\n\t\t\t\t\tself.search()\n\t\t\t\t.done( function () {\n\t\t\t\t\t// Widget might have been destroyed in the meantime.\n\t\t\t\t\tif ( self.element.data( self.widgetName ) ) {\n\t\t\t\t\t\tself._trigger( 'change' );\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t\t}\n\t\t\t}, this.options.delay );\n\t\t},\n\n\t\t/**\n\t\t * Returns whether searching is in progress.\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tisSearching: function () {\n\t\t\treturn this._searching !== false;\n\t\t},\n\n\t\t/**\n\t\t * Handles moving through the list of suggestions using arrow keys.\n\t\t *\n\t\t * @protected\n\t\t *\n\t\t * @param {string} direction (either \"previous\" or \"next\")\n\t\t * @param {jQuery.Event} event\n\t\t */\n\t\t_keyMove: function ( direction, event ) {\n\t\t// Prevent moving cursor to beginning/end of the text field in some browsers:\n\t\t\tevent.preventDefault();\n\n\t\t\t// eslint-disable-next-line no-jquery/no-sizzle\n\t\t\tif ( !this.options.menu.element.is( ':visible' ) ) {\n\t\t\t\tthis.search();\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar allItems = $.merge( [], this.options.menu.option( 'items' ) );\n\t\t\t$.merge( allItems, this.options.menu.option( 'customItems' ) );\n\n\t\t\tif ( allItems.length > 0 ) {\n\t\t\t\tthis._move( direction, this.options.menu.getActiveItem(), allItems );\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Shifts the suggestions menu focus by one item.\n\t\t *\n\t\t * @protected\n\t\t *\n\t\t * @param {string} direction\n\t\t * @param {jQuery.ui.ooMenu.Item} activeItem\n\t\t * @param {jQuery.ui.ooMenu.Item[]} allItems\n\t\t */\n\t\t_move: function ( direction, activeItem, allItems ) {\n\t\t\tvar self = this,\n\t\t\t\tisFirst = activeItem === allItems[ 0 ],\n\t\t\t\tisLast = activeItem === allItems[ allItems.length - 1 ];\n\n\t\t\tif ( isFirst && direction === 'previous' || isLast && direction === 'next' ) {\n\t\t\t\tthis._moveOffEdge( direction );\n\t\t\t} else {\n\t\t\t\t$( this.options.menu ).one( 'focus.suggester', function ( event, item ) {\n\t\t\t\t\tvar isCustomMenuItem = item instanceof $.ui.ooMenu.CustomItem;\n\n\t\t\t\t\tif ( item instanceof $.ui.ooMenu.Item && !isCustomMenuItem ) {\n\t\t\t\t\t\tself.element.val( item.getValue() );\n\t\t\t\t\t} else if ( isCustomMenuItem ) {\n\t\t\t\t\t\tself.element.val( self._term );\n\t\t\t\t\t}\n\t\t\t\t\tself._trigger( 'change' );\n\t\t\t\t} );\n\t\t\t\tthis.options.menu[ direction ]();\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Handler called when the suggestion menu focus is to be shifted off the end of the list.\n\t\t *\n\t\t * @protected\n\t\t *\n\t\t * @param {string} direction\n\t\t */\n\t\t_moveOffEdge: function ( direction ) {\n\t\t\tthis.element.val( this._term );\n\t\t\tthis.options.menu.deactivate();\n\t\t},\n\n\t\t/**\n\t\t * Performs a search on the current input.\n\t\t *\n\t\t * @return {Object} jQuery.Promise\n\t\t * @return {Function} return.done\n\t\t * @return {string[]} return.done.suggestions\n\t\t * @return {Function} return.fail\n\t\t * @return {string} return.fail.message\n\t\t */\n\t\tsearch: function () {\n\t\t\tvar self = this,\n\t\t\t\tdeferred = $.Deferred();\n\n\t\t\tthis._clearTimeout();\n\t\t\tthis._searching = true;\n\n\t\t\tthis._term = this.element.val();\n\n\t\t\tif ( this._term.length < this.options.minTermLength ) {\n\t\t\t\tthis._close();\n\t\t\t\treturn deferred.resolve( [], this._term ).promise();\n\t\t\t}\n\n\t\t\tthis.element.addClass( 'ui-suggester-loading' );\n\t\t\tthis._pending++;\n\n\t\t\treturn this._getSuggestions( this._term )\n\t\t.done( function ( suggestions, requestTerm ) {\n\t\t\tself._searching = false;\n\n\t\t\tif ( typeof requestTerm === 'string' && requestTerm !== self._term ) {\n\t\t\t\t// Skip request since it does not correspond to the current search term.\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif ( self.options.menu ) {\n\t\t\t\t// Suggester (including the menu) might have been destroyed in the meantime.\n\t\t\t\tself._updateMenu( suggestions, requestTerm );\n\t\t\t}\n\t\t} )\n\t\t.fail( function ( message ) {\n\t\t\tself.element.addClass( 'ui-suggester-error' );\n\t\t\tself._trigger( 'error', null, [ message ] );\n\t\t} )\n\t\t.always( function () {\n\t\t\tif ( --self._pending === 0 ) {\n\t\t\t\tself.element.removeClass( 'ui-suggester-loading' );\n\t\t\t}\n\t\t} );\n\t\t},\n\n\t\t/**\n\t\t * Clears the timeout used to delay searching if there is an active timer.\n\t\t *\n\t\t * @protected\n\t\t */\n\t\t_clearTimeout: function () {\n\t\t\tif ( typeof this._searching !== 'boolean' ) {\n\t\t\t\tclearTimeout( this._searching );\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Updates the menu.\n\t\t *\n\t\t * @protected\n\t\t *\n\t\t * @param {string[]} suggestions\n\t\t * @param {string} requestTerm\n\t\t */\n\t\t_updateMenu: function ( suggestions, requestTerm ) {\n\t\t\tthis._updateMenuItems( suggestions, requestTerm );\n\t\t\tthis._updateMenuVisibility();\n\t\t},\n\n\t\t/**\n\t\t * Updates the suggestion menu with the received suggestions.\n\t\t *\n\t\t * @protected\n\t\t *\n\t\t * @param {string[]} suggestions\n\t\t * @param {string} requestTerm\n\t\t */\n\t\t_updateMenuItems: function ( suggestions, requestTerm ) {\n\t\t\tvar menuItems = [];\n\n\t\t\tfor ( var i = 0; i < suggestions.length; i++ ) {\n\t\t\t\tmenuItems.push( this._createMenuItemFromSuggestion( suggestions[ i ], requestTerm ) );\n\t\t\t}\n\n\t\t\tthis.options.menu.option( 'items', menuItems );\n\t\t},\n\n\t\t/**\n\t\t * Updates the menu's visibility.\n\t\t *\n\t\t * @protected\n\t\t */\n\t\t_updateMenuVisibility: function () {\n\t\t\tif ( !this.options.menu.hasVisibleItems( true ) ) {\n\t\t\t\tthis._close();\n\t\t\t} else {\n\t\t\t\tthis._open();\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Instantiates a menu item instance from a suggestion.\n\t\t *\n\t\t * @protected\n\t\t *\n\t\t * @param {string} suggestion\n\t\t * @param {string} requestTerm\n\t\t * @return {jQuery.ui.ooMenu.Item}\n\t\t */\n\t\t_createMenuItemFromSuggestion: function ( suggestion, requestTerm ) {\n\t\t\treturn new $.ui.ooMenu.Item( suggestion );\n\t\t},\n\n\t\t/**\n\t\t * Retrieves the suggestions for a specific search term.\n\t\t *\n\t\t * @protected\n\t\t *\n\t\t * @param {string} term\n\t\t * @return {Object} jQuery.Promise\n\t\t * @return {Function} return.done\n\t\t * @return {string[]} return.done.suggestions\n\t\t * @return {string} return.done.requestTerm\n\t\t * @return {Function} return.fail\n\t\t * @return {string} return.fail.message\n\t\t */\n\t\t_getSuggestions: function ( term ) {\n\t\t\tif ( typeof this.options.source === 'function' ) {\n\t\t\t\treturn this.options.source( term );\n\t\t\t}\n\n\t\t\treturn this._getSuggestionsFromArray( term, this.options.source );\n\t\t},\n\n\t\t/**\n\t\t * Filters an array using a specific search term.\n\t\t *\n\t\t * @protected\n\t\t *\n\t\t * @param {string} term\n\t\t * @param {string[]} source\n\t\t * @return {Object} jQuery.Promise\n\t\t * @return {Function} return.done\n\t\t * @return {string[]} return.done.suggestions\n\t\t * @return {string} return.done.requestTerm\n\t\t * @return {Function} return.fail\n\t\t * @return {string} return.fail.message\n\t\t */\n\t\t_getSuggestionsFromArray: function ( term, source ) {\n\t\t\tvar deferred = $.Deferred();\n\n\t\t\tvar matcher = new RegExp( this._escapeRegex( term ), 'i' );\n\n\t\t\t// eslint-disable-next-line no-jquery/no-grep\n\t\t\tdeferred.resolve( $.grep( source, function ( item ) {\n\t\t\t\treturn matcher.test( item );\n\t\t\t} ), term );\n\n\t\t\treturn deferred.promise();\n\t\t},\n\n\t\t/**\n\t\t * Escapes a string to be used in a regular expression.\n\t\t *\n\t\t * @protected\n\t\t *\n\t\t * @param {string} value\n\t\t * @return {string}\n\t\t */\n\t\t_escapeRegex: function ( value ) {\n\t\t\treturn value.replace( /[-[\\]{}()*+?.,\\\\^$|#\\s]/g, '\\\\$&' );\n\t\t},\n\n\t\t/**\n\t\t * Shows the suggester menu.\n\t\t *\n\t\t * @protected\n\t\t */\n\t\t_open: function () {\n\t\t\t// eslint-disable-next-line no-jquery/no-sizzle\n\t\t\tif ( this.options.menu.element.is( ':visible' ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.options.menu.element.show();\n\t\t\tthis.repositionMenu();\n\n\t\t\tthis._trigger( 'open' );\n\t\t},\n\n\t\t/**\n\t\t * Hides the suggester menu.\n\t\t *\n\t\t * @protected\n\t\t */\n\t\t_close: function () {\n\t\t\t// eslint-disable-next-line no-jquery/no-sizzle\n\t\t\tif ( !this.options.menu.element.is( ':visible' ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.options.menu.deactivate();\n\t\t\tthis.options.menu.element.hide();\n\n\t\t\tthis._trigger( 'close' );\n\t\t},\n\n\t\t/**\n\t\t * Aligns the menu to the input element.\n\t\t */\n\t\trepositionMenu: function () {\n\t\t\tvar dir = this.element.attr( 'dir' )\n\t\t\t|| $( document.documentElement ).css( 'direction' )\n\t\t\t|| 'auto';\n\n\t\t\tvar position = $.extend( {}, this.options.position ),\n\t\t\t\t$menu = this.options.menu.element;\n\n\t\t\tif ( dir === 'rtl' ) {\n\t\t\t\tposition = flipPosition( position );\n\t\t\t}\n\n\t\t\t$menu.position( $.extend( {\n\t\t\t\tof: this.element\n\t\t\t}, position ) );\n\n\t\t\t$menu.zIndex( this.element.zIndex() + 1 );\n\n\t\t\tif ( this.element.attr( 'lang' ) ) {\n\t\t\t\t$menu.attr( 'lang', this.element.attr( 'lang' ) );\n\t\t\t}\n\t\t\t$menu.attr( 'dir', dir );\n\n\t\t\tthis.options.menu.scale();\n\n\t\t\tif ( this.options.confineMinWidthTo !== null ) {\n\t\t\t\tvar $minWidthConfinement = this.options.confineMinWidthTo || this.element;\n\n\t\t\t\t$menu.css(\n\t\t\t\t\t'min-width',\n\t\t\t\t\t$minWidthConfinement.outerWidth() - ( $menu.outerWidth() - $menu.width() )\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t} );\n\n}() );\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/client/resources/jquery.util.getscrollbarwidth.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/resources/jquery.wikibase/jquery.wikibase.linkitem.js","messages":[{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"option\".","line":26,"column":null,"nodeType":"Block","endLine":26,"endColumn":null},{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"option\".","line":28,"column":null,"nodeType":"Block","endLine":28,"endColumn":null},{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"option\".","line":30,"column":null,"nodeType":"Block","endLine":30,"endColumn":null},{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"option\".","line":32,"column":null,"nodeType":"Block","endLine":32,"endColumn":null},{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"option\".","line":35,"column":null,"nodeType":"Block","endLine":35,"endColumn":null},{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"option\".","line":37,"column":null,"nodeType":"Block","endLine":37,"endColumn":null},{"ruleId":"jsdoc/valid-types","severity":1,"message":"Syntax error in namepath: dialogclose:","line":39,"column":null,"nodeType":"Block","endLine":39,"endColumn":null},{"ruleId":"jsdoc/valid-types","severity":1,"message":"Syntax error in namepath: success:","line":42,"column":null,"nodeType":"Block","endLine":42,"endColumn":null},{"ruleId":"jsdoc/valid-types","severity":1,"message":"Tag @type must have a type.","line":49,"column":null,"nodeType":"Block","endLine":49,"endColumn":null},{"ruleId":"jsdoc/valid-types","severity":1,"message":"Tag @type must have a type.","line":56,"column":null,"nodeType":"Block","endLine":56,"endColumn":null},{"ruleId":"jsdoc/valid-types","severity":1,"message":"Tag @type must have a type.","line":63,"column":null,"nodeType":"Block","endLine":63,"endColumn":null},{"ruleId":"jsdoc/no-undefined-types","severity":1,"message":"The type 'wb' is undefined.","line":537,"column":null,"nodeType":"Block","endLine":537,"endColumn":null}],"errorCount":0,"warningCount":12,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/**\n * @license GPL-2.0-or-later\n * @author Marius Hoch < hoo@online.de >\n */\n( function ( wb ) {\n\t'use strict';\n\tvar PageConnector = require( '../wikibase.client.PageConnector.js' ),\n\t\tgetMwApiForRepo = require( '../wikibase.client.getMwApiForRepo.js' );\n\n\trequire( './jquery.wikibase.siteselector.js' );\n\trequire( './jquery.wikibase.wbtooltip.js' );\n\trequire( '../jquery.event.special.eachchange.js' );\n\n\t// wikibase.api module\n\trequire( '../../../lib/resources/wikibase-api/src/namespace.js' );\n\trequire( '../../../lib/resources/wikibase-api/src/RepoApi.js' );\n\trequire( '../../../lib/resources/wikibase-api/src/getLocationAgnosticMwApi.js' );\n\trequire( '../../../lib/resources/wikibase-api/src/RepoApiError.js' );\n\n\t/**\n\t * This widget allows linking articles with Wikibase items or creating new wikibase items directly\n\t * in client wikis.\n\t * The widget can take a couple of arguments to make it work on pages and sites other than the\n\t * current one. All these options default to global state / the current page's attributes.\n\t *\n\t * @option mwApiForRep {mediaWiki.Api} A mw.Api instance configured to use the repo's API.\n\t *\n\t * @option pageTitle {string} Title of the page to link.\n\t *\n\t * @option globalSiteId {string} Id of the site the given page is on.\n\t *\n\t * @option namespaceNumber {number} Number of the namespace the given title is in.\n\t *         This is used to determine the linkable pages on the target wiki.\n\t *\n\t * @option repoArticlePath {string} Article path (like wgArticlePath) for the repo.\n\t *\n\t * @option langLinkSiteGroup {string} Group of sites we allow the user to link the given page with.\n\t *\n\t * @event dialogclose: Triggered when the interaction dialog is closed.\n\t *        (1) {jQuery.Event}\n\t *\n\t * @event success: Triggered when pages have been linked successfully.\n\t *        (1) {jQuery.Event}\n\t */\n\t$.widget( 'wikibase.linkitem', {\n\t\t_pageConnector: null,\n\n\t\t/**\n\t\t * @type jQuery\n\t\t */\n\t\t$dialog: null,\n\n\t\t/**\n\t\t * Spinner (set if there's something ongoing)\n\t\t *\n\t\t * @type jQuery\n\t\t */\n\t\t$spinner: null,\n\n\t\t/**\n\t\t * Button to go on (next step)\n\t\t *\n\t\t * @type jQuery\n\t\t */\n\t\t$goButton: null,\n\n\t\t/**\n\t\t * Global ID of the site to link with\n\t\t *\n\t\t * @type {string}\n\t\t */\n\t\ttargetSite: null,\n\n\t\t/**\n\t\t * Name of the page title to link with\n\t\t *\n\t\t * @type {string}\n\t\t */\n\t\ttargetArticle: null,\n\n\t\tmwApiForRepo: getMwApiForRepo(),\n\n\t\t/**\n\t\t * Options\n\t\t *\n\t\t * @see jQuery.Widget.options\n\t\t */\n\t\toptions: {\n\t\t\tpageTitle: null,\n\t\t\tglobalSiteId: null,\n\t\t\tnamespaceNumber: null,\n\t\t\trepoArticlePath: null,\n\t\t\tlangLinkSiteGroup: null\n\t\t},\n\n\t\t/**\n\t\t * Check whether the user is logged in on both the client and the repo\n\t\t * show the dialog if he is, error if not\n\t\t *\n\t\t * @see jQuery.Widget._create\n\t\t */\n\t\t_create: function () {\n\t\t\tvar self = this,\n\t\t\t\t$dialogSpinner = $.createSpinner();\n\n\t\t\tthis.element\n\t\t\t.hide()\n\t\t\t.after( $dialogSpinner );\n\n\t\t\tthis.mwApiForRepo.get( {\n\t\t\t\taction: 'query',\n\t\t\t\tmeta: 'userinfo'\n\t\t\t} )\n\t\t\t.done( function ( data ) {\n\t\t\t\t$dialogSpinner.remove();\n\n\t\t\t\tif ( data.query.userinfo.anon !== undefined ) {\n\t\t\t\t\t// User isn't logged into the repo\n\t\t\t\t\tself._notLoggedIn();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tself._createDialog();\n\t\t\t\t$( '#wbclient-linkItem-site' ).trigger( 'focus' );\n\t\t\t} )\n\t\t\t.fail( function ( errorCode, errorInfo ) {\n\t\t\t\t$dialogSpinner.remove();\n\t\t\t\tself.element.show();\n\n\t\t\t\tself.element.wbtooltip( {\n\t\t\t\t\tcontent: mw.msg( 'wikibase-error-unexpected',\n\t\t\t\t\t\t( errorInfo.error && errorInfo.error.info ) || errorInfo.exception ),\n\t\t\t\t\tgravity: 'w'\n\t\t\t\t} );\n\n\t\t\t\tself.element.data( 'wbtooltip' ).show();\n\t\t\t\tself.element.one( 'click.' + self.widgetName, function () {\n\t\t\t\t\t// Remove the tooltip by the time the user clicks the link again.\n\t\t\t\t\tself.element.data( 'wbtooltip' ).destroy();\n\t\t\t\t} );\n\t\t\t} );\n\t\t},\n\n\t\t/**\n\t\t * Show an error to the user in case he isn't logged in on both the client and the repo\n\t\t */\n\t\t_notLoggedIn: function () {\n\t\t\tvar self = this;\n\n\t\t\tvar userLogin = this._linkRepoTitle( 'Special:UserLogin' );\n\t\t\t$( '<div>' )\n\t\t\t.dialog( {\n\t\t\t\ttitle: mw.message( 'wikibase-linkitem-not-loggedin-title' ).escaped(),\n\t\t\t\twidth: 400,\n\t\t\t\theight: 200,\n\t\t\t\tresizable: true\n\t\t\t} )\n\t\t\t.on( 'dialogclose', function () {\n\t\t\t\tself._trigger( 'dialogclose' );\n\t\t\t} )\n\t\t\t.append(\n\t\t\t\t$( '<p>' )\n\t\t\t\t.addClass( 'wbclient-linkItem-not-loggedin-message' )\n\t\t\t\t.html( mw.message( 'wikibase-linkitem-not-loggedin', userLogin ).parse() )\n\t\t\t);\n\t\t},\n\n\t\t/**\n\t\t * Create the dialog asking for a page the user wants to link with the current one\n\t\t */\n\t\t_createDialog: function () {\n\t\t\tthis.$dialog = $( '<div>' )\n\t\t\t\t.attr( 'id', 'wbclient-linkItem-dialog' )\n\t\t\t\t.dialog( {\n\t\t\t\t\ttitle: mw.message( 'wikibase-linkitem-title' ).escaped(),\n\t\t\t\t\twidth: 500,\n\t\t\t\t\tresizable: false,\n\t\t\t\t\tposition: { my: 'top', at: 'top+50', of: window },\n\t\t\t\t\tbuttons: [ {\n\t\t\t\t\t\ttext: mw.msg( 'wikibase-linkitem-linkpage' ),\n\t\t\t\t\t\tid: 'wbclient-linkItem-goButton',\n\t\t\t\t\t\tdisabled: 'disabled',\n\t\t\t\t\t\tclick: this._secondStep.bind( this )\n\t\t\t\t\t} ],\n\t\t\t\t\tmodal: true\n\t\t\t\t} )\n\t\t\t\t// Use .on instead of passing this to dialog() as close as we want to be able to remove\n\t\t\t\t// it later:\n\t\t\t\t.on( 'dialogclose', function () {\n\t\t\t\t\tthis.element.show();\n\t\t\t\t\tthis._trigger( 'dialogclose' );\n\t\t\t\t}.bind( this ) )\n\t\t\t\t.append( $( '<p>' ).text( mw.msg( 'wikibase-linkitem-selectlink' ) ) )\n\t\t\t\t.append( this._createSiteLinkForm() );\n\n\t\t\tthis.$goButton = $( '#wbclient-linkItem-goButton' );\n\t\t},\n\n\t\t/**\n\t\t * @see jQuery.Widget.destroy\n\t\t */\n\t\tdestroy: function () {\n\t\t\tif ( this.$dialog && this.$dialog.length ) {\n\t\t\t\tthis.$dialog.remove();\n\t\t\t}\n\t\t\tif ( this.$spinner && this.$spinner.length ) {\n\t\t\t\tthis.$spinner.remove();\n\t\t\t}\n\t\t\tif ( this.$goButton && this.$goButton.length ) {\n\t\t\t\tthis.$goButton.remove();\n\t\t\t}\n\n\t\t\t$.Widget.prototype.destroy.call( this );\n\n\t\t\t// FIXME: The destroy() method should be final. Re-showing the element should be done\n\t\t\t// outside the scope of destroy().\n\t\t\tthis.element.show();\n\t\t},\n\n\t\t/**\n\t\t * Creates a form for selecting the site and the page to link in a user-friendly manner (with\n\t\t * auto-completion).\n\t\t *\n\t\t * @return {jQuery}\n\t\t */\n\t\t_createSiteLinkForm: function () {\n\t\t\treturn $( '<form>' )\n\t\t\t.attr( 'name', 'wikibase-linkItem-form' )\n\t\t\t.append( this._createSiteInput() )\n\t\t\t.append( $( '<br>' ) )\n\t\t\t.append( this._createPageInput() );\n\t\t},\n\n\t\t/**\n\t\t * Creates a labeled input box for selecting client sites.\n\t\t *\n\t\t * @return {jQuery}\n\t\t */\n\t\t_createSiteInput: function () {\n\t\t\treturn $( '<label>' )\n\t\t\t.attr( 'for', 'wbclient-linkItem-site' )\n\t\t\t.text( mw.msg( 'wikibase-linkitem-input-site' ) )\n\t\t\t.add(\n\t\t\t\t$( '<input>' )\n\t\t\t\t.attr( {\n\t\t\t\t\tname: 'wbclient-linkItem-site',\n\t\t\t\t\tid: 'wbclient-linkItem-site',\n\t\t\t\t\tclass: 'wbclient-linkItem-input'\n\t\t\t\t} )\n\t\t\t\t.siteselector( {\n\t\t\t\t\tsource: this._getLinkableSites()\n\t\t\t\t} )\n\t\t\t\t.on(\n\t\t\t\t\t'siteselectoropen siteselectorclose siteselectorautocomplete blur',\n\t\t\t\t\tthis._onSiteSelectorChangeHandler.bind( this )\n\t\t\t\t)\n\t\t\t);\n\t\t},\n\n\t\t/**\n\t\t * Gets an object with all linkable sites despite the current one (as pages on the same wiki\n\t\t * cannot be linked).\n\t\t *\n\t\t * @return {Object}\n\t\t */\n\t\t_getLinkableSites: function () {\n\t\t\tvar sites,\n\t\t\t\tlinkableSites = [],\n\t\t\t\tsite,\n\t\t\t\tcurrentSiteId,\n\t\t\t\tsitesModule = require( '../wikibase.sites.js' );\n\n\t\t\tcurrentSiteId = this.options.globalSiteId;\n\t\t\tsites = sitesModule.getSitesOfGroup( this.options.langLinkSiteGroup );\n\n\t\t\tfor ( site in sites ) {\n\t\t\t\tif ( sites[ site ].getId() !== currentSiteId ) {\n\t\t\t\t\tlinkableSites.push( sites[ site ] );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn linkableSites;\n\t\t},\n\n\t\t/**\n\t\t * Handles changes to the siteselector\n\t\t */\n\t\t_onSiteSelectorChangeHandler: function () {\n\t\t\tvar apiUrl,\n\t\t\t\t$page = $( '#wbclient-linkItem-page' );\n\n\t\t\t$page.val( '' );\n\n\t\t\ttry {\n\t\t\t\tapiUrl = $( '#wbclient-linkItem-site' ).siteselector( 'getSelectedSite' ).getApi();\n\t\t\t} catch ( e ) {\n\t\t\t\t// Invalid input (likely incomplete). Disable the page input an re-disable to button\n\t\t\t\t$page.prop( 'disabled', true );\n\t\t\t\tthis.$goButton.button( 'disable' );\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// If the language gets changed the yet selected page is no longer available so we clear the\n\t\t\t// input element. Furthermore, we remove the old suggestor (if there's one) and create a new\n\t\t\t// one working on the right wiki.\n\t\t\t$page\n\t\t\t.prop( 'disabled', false )\n\t\t\t.suggester( {\n\t\t\t\tsource: function ( term ) {\n\t\t\t\t\tvar deferred = $.Deferred();\n\n\t\t\t\t\t$.ajax( {\n\t\t\t\t\t\turl: apiUrl,\n\t\t\t\t\t\tdataType: 'jsonp',\n\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\tsearch: term,\n\t\t\t\t\t\t\taction: 'opensearch'\n\t\t\t\t\t\t},\n\t\t\t\t\t\ttimeout: 8000\n\t\t\t\t\t} )\n\t\t\t\t\t.done( function ( response ) {\n\t\t\t\t\t\tdeferred.resolve( response[ 1 ], response[ 0 ] );\n\t\t\t\t\t} )\n\t\t\t\t\t.fail( function ( jqXHR, textStatus ) {\n\t\t\t\t\t\tdeferred.reject( textStatus );\n\t\t\t\t\t} );\n\n\t\t\t\t\treturn deferred.promise();\n\t\t\t\t}\n\t\t\t} );\n\t\t},\n\n\t\t/**\n\t\t * Creates a labeled input box for selecting pages on a client site.\n\t\t *\n\t\t * @return {jQuery}\n\t\t */\n\t\t_createPageInput: function () {\n\t\t\tvar self = this;\n\n\t\t\treturn $( '<label>' )\n\t\t\t.attr( 'for', 'wbclient-linkItem-page' )\n\t\t\t.text( mw.msg( 'wikibase-linkitem-input-page' ) )\n\t\t\t.add(\n\t\t\t\t$( '<input>' )\n\t\t\t\t.attr( {\n\t\t\t\t\tname: 'wbclient-linkItem-page',\n\t\t\t\t\tid: 'wbclient-linkItem-page',\n\t\t\t\t\tclass: 'wbclient-linkItem-input'\n\t\t\t\t} )\n\t\t\t\t.prop( 'disabled', true )\n\t\t\t\t.on( 'eachchange', function () {\n\t\t\t\t\t// Enable the button if the field has a value\n\t\t\t\t\tself.$goButton.button( $( this ).val() === '' ? 'disable' : 'enable' );\n\t\t\t\t} )\n\t\t\t\t.on( 'keydown', function ( e ) {\n\t\t\t\t\tif ( !self.$goButton.prop( 'disabled' ) && e.which === 13 ) {\n\t\t\t\t\t\t// Enter should submit\n\t\t\t\t\t\tself.$goButton.trigger( 'click' );\n\t\t\t\t\t}\n\t\t\t\t} )\n\t\t\t);\n\t\t},\n\n\t\t/**\n\t\t * Called after the user specified site and a page name. Looks up any existing items or tries to\n\t\t * link the currently viewed page with an existing item.\n\t\t */\n\t\t_secondStep: function () {\n\t\t\tthis.targetSite = $( '#wbclient-linkItem-site' ).siteselector( 'getSelectedSite' ).getId();\n\t\t\tthis.targetArticle = $( '#wbclient-linkItem-page' ).val();\n\n\t\t\tthis._pageConnector = new PageConnector(\n\t\t\t\tnew wb.api.RepoApi( this.mwApiForRepo, mw.config.get( 'wgUserLanguage' ) ),\n\t\t\t\tthis.options.globalSiteId,\n\t\t\t\tthis.options.pageTitle,\n\t\t\t\tthis.targetSite,\n\t\t\t\tthis.targetArticle\n\t\t\t);\n\n\t\t\t// Show a spinning animation and do an API request\n\t\t\tthis._showSpinner();\n\n\t\t\tthis._pageConnector.getNewlyLinkedPages()\n\t\t\t.done( this._onConfirmationDataLoad.bind( this ) )\n\t\t\t// This will (as a side effect) also catch errors where the target page doesn't exist:\n\t\t\t.fail( this._onError.bind( this ) );\n\t\t},\n\n\t\t/**\n\t\t * Replaces the $goButton button with a loading spinner.\n\t\t */\n\t\t_showSpinner: function () {\n\t\t\tthis.$spinner = $.createSpinner();\n\t\t\tthis.$goButton\n\t\t\t\t.hide()\n\t\t\t\t.after( this.$spinner );\n\t\t},\n\n\t\t/**\n\t\t * Removes the spinner created with _showSpinner and shows the original button again.\n\t\t */\n\t\t_removeSpinner: function () {\n\t\t\tif ( !this.$spinner || !this.$spinner.length ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tthis.$spinner.remove();\n\t\t\tthis.$goButton.show();\n\t\t},\n\n\t\t/**\n\t\t * Handles the data from getNewlyLinkedPages and either creates a new item or shows the user a\n\t\t * confirmation form in case an item exists already.\n\t\t *\n\t\t * @param {Object} entity\n\t\t */\n\t\t_onConfirmationDataLoad: function ( entity ) {\n\t\t\tvar i, itemLink;\n\n\t\t\tif ( entity && entity.sitelinks ) {\n\t\t\t\tvar siteLinkCount = 0;\n\n\t\t\t\t// Show a table with links to the user and ask for confirmation\n\t\t\t\titemLink = this._linkRepoTitle( entity.title );\n\n\t\t\t\t// Count site links and abort in case the entity already is linked with a page on this\n\t\t\t\t// wiki:\n\t\t\t\tfor ( i in entity.sitelinks ) {\n\t\t\t\t\tif ( entity.sitelinks[ i ].site ) {\n\t\t\t\t\t\tsiteLinkCount += 1;\n\t\t\t\t\t\tif ( entity.sitelinks[ i ].site === this.options.globalSiteId ) {\n\t\t\t\t\t\t\t// Abort as the entity already is linked with a page on this wiki\n\t\t\t\t\t\t\tthis._onError( mw.message(\n\t\t\t\t\t\t\t\t'wikibase-linkitem-alreadylinked',\n\t\t\t\t\t\t\t\titemLink,\n\t\t\t\t\t\t\t\tentity.sitelinks[ i ].title\n\t\t\t\t\t\t\t).parse() );\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif ( siteLinkCount === 1 ) {\n\t\t\t\t\t// The item we want to link with only has a single sitelink so we don't have to ask\n\t\t\t\t\t// for confirmation:\n\t\t\t\t\tthis._pageConnector.linkPages()\n\t\t\t\t\t.done( this._onSuccess.bind( this ) )\n\t\t\t\t\t.fail( this._onError.bind( this ) );\n\t\t\t\t} else {\n\t\t\t\t\t// Let the user verify this is indeed the entity to link with and link it after.\n\t\t\t\t\tthis._removeSpinner();\n\t\t\t\t\tthis._userConfirmEntity( entity, siteLinkCount, itemLink );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tthis._pageConnector.linkPages()\n\t\t\t\t.done( this._onSuccess.bind( this ) )\n\t\t\t\t.fail( this._onError.bind( this ) );\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Let the user verify this is indeed the entity to link with and link it after.\n\t\t *\n\t\t * @param {Object} entity\n\t\t * @param {number} siteLinkCount Number of sitelinks attached to the entity\n\t\t * @param {string} itemLink Link to the entity on the repo\n\t\t */\n\t\t_userConfirmEntity: function ( entity, siteLinkCount, itemLink ) {\n\t\t\tvar self = this,\n\t\t\t\tconfirmationMsg = mw.message(\n\t\t\t\t\t'wikibase-linkitem-confirmitem-text',\n\t\t\t\t\titemLink,\n\t\t\t\t\tsiteLinkCount\n\t\t\t\t).parse();\n\n\t\t\tthis.$dialog\n\t\t\t\t.empty()\n\t\t\t\t.append( $( '<div>' ).html( confirmationMsg ) )\n\t\t\t\t.append( $( '<br>' ) )\n\t\t\t\t.append( this._createSiteLinkTable( entity ) );\n\n\t\t\tthis.$goButton\n\t\t\t\t.off( 'click' )\n\t\t\t\t.button( 'option', 'label', mw.msg( 'wikibase-linkitem-confirmitem-button' ) )\n\t\t\t\t.on( 'click', function () {\n\t\t\t\t\t// The user confirmed that this is the right item...\n\t\t\t\t\tself._showSpinner();\n\t\t\t\t\tself._pageConnector.linkPages()\n\t\t\t\t\t.done( self._onSuccess.bind( self ) )\n\t\t\t\t\t.fail( self._onError.bind( self ) );\n\t\t\t\t} );\n\t\t},\n\n\t\t/**\n\t\t * Creates a table with all sitelinks linked to an entity.\n\t\t *\n\t\t * @param {Object} entity\n\t\t *\n\t\t * @return {jQuery}\n\t\t */\n\t\t_createSiteLinkTable: function ( entity ) {\n\t\t\tvar i, $siteLinks, sites = require( '../wikibase.sites.js' );\n\n\t\t\t$siteLinks = $( '<div>' )\n\t\t\t\t.attr( 'id', 'wbclient-linkItem-siteLinks' )\n\t\t\t\t.append( $( '<table>' ) );\n\n\t\t\t// Table head\n\t\t\t$( '<thead>' )\n\t\t\t.append(\n\t\t\t\t$( '<tr>' )\n\t\t\t\t.append( $( '<th>' ).text( mw.msg( 'wikibase-sitelinks-sitename-columnheading' ) ) )\n\t\t\t\t.append( $( '<th>' ).text( mw.msg( 'wikibase-sitelinks-link-columnheading' ) ) )\n\t\t\t)\n\t\t\t.appendTo( $siteLinks.find( 'table' ) );\n\n\t\t\t// Table body\n\t\t\tfor ( i in entity.sitelinks ) {\n\t\t\t\tif ( entity.sitelinks[ i ].site ) {\n\t\t\t\t\t// Show a row for each page that is linked with the current entity\n\t\t\t\t\t$siteLinks\n\t\t\t\t\t.find( 'table' )\n\t\t\t\t\t.append(\n\t\t\t\t\t\tthis._createSiteLinkRow(\n\t\t\t\t\t\t\tsites.getSite( entity.sitelinks[ i ].site ),\n\t\t\t\t\t\t\tentity.sitelinks[ i ]\n\t\t\t\t\t\t)\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn $siteLinks;\n\t\t},\n\n\t\t/**\n\t\t * Creates a table row for a site link.\n\t\t *\n\t\t * @param {wb.Site} site\n\t\t * @param {Object} entitySitelinks\n\t\t *\n\t\t * @return {jQuery}\n\t\t */\n\t\t_createSiteLinkRow: function ( site, entitySitelinks ) {\n\t\t\treturn $( '<tr>' )\n\t\t\t\t.append(\n\t\t\t\t\t$( '<td>' )\n\t\t\t\t\t.addClass( 'wbclient-linkItem-column-site' )\n\t\t\t\t\t.text( site.getName() )\n\t\t\t\t\t.css( 'direction', site.getLanguageDirection() )\n\t\t\t\t)\n\t\t\t\t.append(\n\t\t\t\t\t$( '<td>' )\n\t\t\t\t\t.addClass( 'wbclient-linkItem-column-page' )\n\t\t\t\t\t.append( site.getLinkTo( entitySitelinks.title ) )\n\t\t\t\t\t.css( 'direction', site.getLanguageDirection() )\n\t\t\t\t);\n\t\t},\n\n\t\t/**\n\t\t * Called after an entity has successfully been linked or created. Replaces the dialog content\n\t\t * with a useful message linking the (new) item.\n\t\t */\n\t\t_onSuccess: function () {\n\t\t\tvar mwApi = new mw.Api(),\n\t\t\t\titemUri = this._linkRepoTitle(\n\t\t\t\t\t'Special:ItemByTitle/' + this.options.globalSiteId + '/' + this.options.pageTitle\n\t\t\t\t);\n\n\t\t\tthis.$dialog\n\t\t\t\t.empty()\n\t\t\t\t.append(\n\t\t\t\t\t$( '<p>' )\n\t\t\t\t\t.addClass( 'wbclient-linkItem-success-message' )\n\t\t\t\t\t.html( mw.message( 'wikibase-linkitem-success-link', itemUri ).parse() )\n\t\t\t\t)\n\t\t\t\t.append( $( '<p>' ).text( mw.msg( 'wikibase-replicationnote' ) ) );\n\n\t\t\tthis._removeSpinner();\n\n\t\t\t// Replace the button with one asking to close the dialog and reload the current page\n\t\t\tthis.$goButton\n\t\t\t\t.off( 'click' )\n\t\t\t\t.on( 'click', function () {\n\t\t\t\t\tthis._showSpinner();\n\t\t\t\t\twindow.location.reload( true );\n\t\t\t\t}.bind( this ) )\n\t\t\t\t.button( 'option', 'label', mw.msg( 'wikibase-linkitem-close' ) );\n\n\t\t\t// Purge this page in the background... we shouldn't confuse the user with the newly added\n\t\t\t// link(s) not being there:\n\t\t\tmwApi.post( {\n\t\t\t\tformatversion: 2,\n\t\t\t\taction: 'purge',\n\t\t\t\ttitles: this.options.pageTitle\n\t\t\t} );\n\n\t\t\tthis._trigger( 'success' );\n\t\t},\n\n\t\t/**\n\t\t * Called in case an error occurs and displays an error message.\n\t\t *\n\t\t * Can either show a given errorCode (as html) or use data from an\n\t\t * API failure (pass two parameters in this case).\n\t\t *\n\t\t * @param {string} errorCode\n\t\t * @param {Object} [errorInfo]\n\t\t */\n\t\t_onError: function ( errorCode, errorInfo ) {\n\t\t\tvar error = errorInfo\n\t\t\t\t? wb.api.RepoApiError.newFromApiResponse( errorInfo )\n\t\t\t\t: errorCode;\n\n\t\t\tvar $elem = $( '#wbclient-linkItem-page' );\n\n\t\t\tif ( $elem.length === 0 ) {\n\t\t\t\t$elem = $( '#wbclient-linkItem-siteLinks' );\n\t\t\t}\n\n\t\t\t$elem.wbtooltip( {\n\t\t\t\tcontent: error,\n\t\t\t\tpermanent: true\n\t\t\t} );\n\n\t\t\tthis._removeSpinner();\n\t\t\t$elem.data( 'wbtooltip' ).show();\n\n\t\t\t// Remove the tooltip if the user clicks onto the dialog trying to correct the input\n\t\t\t// Also remove the tooltip in case the dialog is getting closed\n\t\t\tthis.$dialog.one( 'dialogclose click', function () {\n\t\t\t\tif ( $elem.data( 'wbtooltip' ) ) {\n\t\t\t\t\t$elem.data( 'wbtooltip' ).destroy();\n\t\t\t\t}\n\t\t\t} );\n\t\t},\n\n\t\t/**\n\t\t * Returns a link to the given title on the repo.\n\t\t *\n\t\t * @param {string} title\n\t\t *\n\t\t * @return {string}\n\t\t */\n\t\t_linkRepoTitle: function ( title ) {\n\t\t\treturn this.options.repoArticlePath.replace( /\\$1/g, mw.util.wikiUrlencode( title ) );\n\t\t}\n\t} );\n\n}( wikibase ) );\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/client/resources/jquery.wikibase/jquery.wikibase.siteselector.js","messages":[{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"option\".","line":17,"column":null,"nodeType":"Block","endLine":17,"endColumn":null},{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"option\".","line":21,"column":null,"nodeType":"Block","endLine":21,"endColumn":null},{"ruleId":"no-shadow","severity":1,"message":"'event' is already declared in the upper scope on line 51 column 50.","line":54,"column":35,"nodeType":"Identifier","messageId":"noShadow","endLine":54,"endColumn":40},{"ruleId":"jsdoc/require-returns","severity":1,"message":"Missing JSDoc @return declaration.","line":135,"column":3,"nodeType":"Block","endLine":137,"endColumn":6},{"ruleId":"jsdoc/require-returns","severity":1,"message":"Missing JSDoc @return declaration.","line":200,"column":3,"nodeType":"Block","endLine":202,"endColumn":6},{"ruleId":"jsdoc/require-returns","severity":1,"message":"Missing JSDoc @return declaration.","line":211,"column":3,"nodeType":"Block","endLine":213,"endColumn":6}],"errorCount":0,"warningCount":6,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/**\n * @license GPL-2.0-or-later\n * @author H. Snater < mediawiki at snater.com >\n */\n( function () {\n\t'use strict';\n\n\trequire( '../jquery.ui/jquery.ui.suggester.js' );\n\trequire( '../jquery.ui/jquery.ui.ooMenu.js' );\n\n\t/**\n\t * Site selector\n\t * Enhances an input box with auto-complete and auto-suggestion functionality for site ids.\n\t *\n\t * @example $( 'input' ).siteselector( { source: <{wikibase.Site[]}> } );\n\t *\n\t * @option {wikibase.Site[]|Function} source\n\t *         An array of Site objects that shall be used to provide suggestions. Alternatively, a\n\t *         function dynamically retrieving an array of Site objects may be provided.\n\t *\n\t * @option {number} [delay=150]\n\t *         Delay in milliseconds of the request querying for suggestions.\n\t *\n\t * @event selected\n\t *        Triggered whenever a site is selected or de-selected.\n\t *        (1) {jQuery.Event}\n\t *        (2) {string|null}\n\t */\n\t$.widget( 'wikibase.siteselector', $.ui.suggester, {\n\t\t/**\n\t\t * @see jQuery.ui.suggester.options\n\t\t */\n\t\toptions: {\n\t\t\tdelay: 150\n\t\t},\n\n\t\t/**\n\t\t * @type {wikibase.Site}\n\t\t */\n\t\t_selectedSite: null,\n\n\t\t/**\n\t\t * @see jQuery.ui.suggester._create\n\t\t */\n\t\t_create: function () {\n\t\t\tvar self = this;\n\n\t\t\t$.ui.suggester.prototype._create.apply( this, arguments );\n\n\t\t\tthis.element\n\t\t\t.on( 'keydown.' + this.widgetName, function ( event ) {\n\t\t\t\tif ( event.keyCode === $.ui.keyCode.TAB ) {\n\t\t\t\t\t$( self.options.menu )\n\t\t\t\t\t.one( 'selected', function ( event, item ) {\n\t\t\t\t\t\tself.element.val( item.getValue() );\n\t\t\t\t\t} );\n\t\t\t\t} else if ( event.keyCode === $.ui.keyCode.ESCAPE ) {\n\t\t\t\t\tvar degrade = true,\n\t\t\t\t\t\tfirstItem = self.options.menu.option( 'items' )[ 0 ];\n\n\t\t\t\t\tif ( firstItem ) {\n\t\t\t\t\t\tvar site = firstItem.getSite(),\n\t\t\t\t\t\t\tlabel = self._createItemLabel( site, '' ),\n\t\t\t\t\t\t\tvalue = self._createItemValue( site );\n\n\t\t\t\t\t\tif ( self._term === label || self._term === value ) {\n\t\t\t\t\t\t\tdegrade = false;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tif ( degrade ) {\n\t\t\t\t\t\tself.options.menu.deactivate();\n\t\t\t\t\t\tself.element.val( self._term );\n\t\t\t\t\t\tself._selectedSite = null;\n\t\t\t\t\t\tself._trigger( 'selected', null, [ null ] );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} )\n\t\t\t.on( 'eachchange.' + this.widgetName, function ( event, previousValue ) {\n\t\t\t\tself._selectedSite = null;\n\t\t\t\tself._term = self.element.val();\n\n\t\t\t\tclearTimeout( self._searching );\n\t\t\t\tself._searching = setTimeout( function () {\n\t\t\t\t\tself.search()\n\t\t\t\t\t.done( function ( suggestions ) {\n\t\t\t\t\t\t// TODO: Store visibility in model\n\t\t\t\t\t\t// eslint-disable-next-line no-jquery/no-sizzle\n\t\t\t\t\t\tif ( self.options.menu.element.is( ':visible' ) ) {\n\t\t\t\t\t\t\tself._selectFirstSite();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tself._trigger( 'selected', null, [ null ] );\n\t\t\t\t\t\t}\n\t\t\t\t\t} );\n\t\t\t\t}, self.options.delay );\n\t\t\t} )\n\t\t\t.on( 'siteselectoropen.' + this.widgetName, function () {\n\t\t\t\tself._selectFirstSite();\n\t\t\t} );\n\t\t},\n\n\t\t/**\n\t\t * @see jQuery.ui.suggester.destroy\n\t\t */\n\t\tdestroy: function () {\n\t\t\t$( this.options.menu ).off( 'siteselector' );\n\t\t\t$.ui.suggester.prototype.destroy.call( this );\n\t\t},\n\n\t\t/**\n\t\t * Implicitly selects the first site from the suggested sites.\n\t\t */\n\t\t_selectFirstSite: function () {\n\t\t\tvar menu = this.options.menu,\n\t\t\t\tmenuItems = menu.option( 'items' ),\n\t\t\t\tsite = null;\n\n\t\t\t// TODO: Store visibility in model\n\t\t\t// eslint-disable-next-line no-jquery/no-sizzle\n\t\t\tif ( menuItems.length > 0 && menu.element.is( ':visible' ) ) {\n\t\t\t\tthis.options.menu.activate( menuItems[ 0 ] );\n\t\t\t\tsite = menuItems[ 0 ].getSite();\n\t\t\t}\n\n\t\t\tif ( this._selectedSite !== site ) {\n\t\t\t\tthis._selectedSite = site;\n\t\t\t\tthis._trigger(\n\t\t\t\t\t'selected',\n\t\t\t\t\tnull,\n\t\t\t\t\tsite ? [ site.getId() ] : [ null ]\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * @see jQuery.ui.suggester._initMenu\n\t\t */\n\t\t_initMenu: function ( ooMenu ) {\n\t\t\tvar self = this;\n\n\t\t\t$.ui.suggester.prototype._initMenu.apply( this, arguments );\n\n\t\t\tthis.options.menu.element.addClass( 'wikibase-siteselector-list' );\n\n\t\t\t$( this.options.menu )\n\t\t\t.on( 'selected.siteselector', function ( event, item ) {\n\t\t\t\tif ( item instanceof $.wikibase.siteselector.Item ) {\n\t\t\t\t\tself._selectedSite = item.getSite();\n\t\t\t\t\tself.element.val( self._createItemValue( self._selectedSite ) );\n\t\t\t\t\tself._trigger( 'selected', null, [ self._selectedSite.getId() ] );\n\t\t\t\t}\n\t\t\t} )\n\t\t\t.on( 'blur.siteselector', function () {\n\t\t\t\tif ( self._selectedSite ) {\n\t\t\t\t\tself.element.val( self._createItemValue( self._selectedSite ) );\n\t\t\t\t} else if ( self.element.val() !== '' ) {\n\t\t\t\t\tself._selectFirstSite();\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\tthis.options.menu.element\n\t\t\t.on( 'mouseleave', function () {\n\t\t\t\t// TODO: Store visibility in model\n\t\t\t\t// eslint-disable-next-line no-jquery/no-sizzle\n\t\t\t\tif ( self.options.menu.element.is( ':visible' ) ) {\n\t\t\t\t\tself._selectedSite = null;\n\t\t\t\t\tself._selectFirstSite();\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\treturn ooMenu;\n\t\t},\n\n\t\t/**\n\t\t * @see jQuery.ui.suggester._move\n\t\t */\n\t\t_move: function ( direction, activeItem, allItems ) {\n\t\t\t$.ui.suggester.prototype._move.apply( this, arguments );\n\t\t\tif ( this._selectedSite === this.options.menu.getActiveItem().getSite() ) {\n\t\t\t\tthis.element.val( this._term );\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * @see jQuery.ui.suggester._moveOffEdge\n\t\t */\n\t\t_moveOffEdge: function ( direction ) {\n\t\t\tif ( direction === 'previous' ) {\n\t\t\t\tvar menu = this.options.menu,\n\t\t\t\t\titems = menu.option( 'items' );\n\t\t\t\tmenu.activate( items[ items.length - 1 ] );\n\t\t\t\tthis.element.val( items[ items.length - 1 ].getValue() );\n\t\t\t} else {\n\t\t\t\t$.ui.suggester.prototype._moveOffEdge.apply( this, arguments );\n\t\t\t\tthis._selectedSite = null;\n\t\t\t\tthis._selectFirstSite();\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * @see jQuery.ui.suggester._getSuggestions\n\t\t */\n\t\t_getSuggestions: function ( term ) {\n\t\t\tvar source = typeof this.options.source === 'function'\n\t\t\t\t? this.options.source()\n\t\t\t\t: this.options.source;\n\n\t\t\treturn this._getSuggestionsFromArray( term, source );\n\t\t},\n\n\t\t/**\n\t\t * @see jQuery.ui.suggester._getSuggestionsFromArray\n\t\t */\n\t\t_getSuggestionsFromArray: function ( term, source ) {\n\t\t\tvar self = this,\n\t\t\t\tdeferred = $.Deferred();\n\n\t\t\tif ( term === '' ) {\n\t\t\t\treturn deferred.resolve( [], term ).promise();\n\t\t\t}\n\n\t\t\tvar suggestedSites = source.filter( function ( site ) {\n\t\t\t\treturn self._considerSuggestion( site );\n\t\t\t} );\n\n\t\t\tif ( suggestedSites.length === 0 ) {\n\t\t\t\tvar subDomain = this._grepSubDomainFromTerm();\n\n\t\t\t\tif ( subDomain ) {\n\t\t\t\t\tsuggestedSites = source.filter( function ( site ) {\n\t\t\t\t\t\tvar url = site.getUrlTo( '' ),\n\t\t\t\t\t\t\tindex = url.indexOf( '//' ) + 2;\n\n\t\t\t\t\t\treturn url.indexOf( subDomain, index ) === index;\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn deferred.resolve( suggestedSites, term ).promise();\n\t\t},\n\n\t\t/**\n\t\t * @protected\n\t\t *\n\t\t * @param {wikibase.Site} site\n\t\t * @return {boolean}\n\t\t */\n\t\t_considerSuggestion: function ( site ) {\n\t\t\tvar check = [\n\t\t\t\tsite.getId(),\n\t\t\t\tsite.getShortName(),\n\t\t\t\tsite.getName(),\n\t\t\t\tsite.getShortName() + ' (' + site.getId() + ')'\n\t\t\t];\n\n\t\t\tfor ( var i = 0; i < check.length; i++ ) {\n\t\t\t\tif ( check[ i ].toLowerCase().indexOf( this._term.toLowerCase() ) === 0 ) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn false;\n\t\t},\n\n\t\t/**\n\t\t * @return {string|null}\n\t\t * @private\n\t\t */\n\t\t_grepSubDomainFromTerm: function () {\n\t\t\t// Extract either a subdomain (the word after \"//\") or simply the first word.\n\t\t\tvar matches = /\\/\\/(\\w[\\w-]+)/.exec( this._term )\n\t\t\t\t|| /(\\w[\\w-]+)/.exec( this._term );\n\n\t\t\treturn matches ? matches[ 1 ].toLowerCase().replace( /[\\W_]+/g, '-' ) : null;\n\t\t},\n\n\t\t/**\n\t\t * @see jQuery.ui.suggester._createMenuItemFromSuggestion\n\t\t * @protected\n\t\t *\n\t\t * @param {wikibase.Site} site\n\t\t * @param {string} requestTerm\n\t\t * @return {jQuery.wikibase.siteselector.Item}\n\t\t */\n\t\t_createMenuItemFromSuggestion: function ( site, requestTerm ) {\n\t\t\treturn new $.wikibase.siteselector.Item(\n\t\t\t\tthis._createItemLabel( site, requestTerm ),\n\t\t\t\tthis._createItemValue( site ),\n\t\t\t\tsite\n\t\t\t);\n\t\t},\n\n\t\t/**\n\t\t * Creates the label of a suggestion item.\n\t\t *\n\t\t * @param {wikibase.Site} site\n\t\t * @param {string} requestTerm\n\t\t * @return {string}\n\t\t */\n\t\t_createItemLabel: function ( site, requestTerm ) {\n\t\t\tvar highlightSubstring = require( '../util.highlightSubstring.js' );\n\t\t\treturn highlightSubstring( requestTerm, site.getShortName() )\n\t\t\t+ ' (' + highlightSubstring( requestTerm, site.getId() ) + ')';\n\t\t},\n\n\t\t/**\n\t\t * Creates the value of a suggestion item.\n\t\t *\n\t\t * @param {wikibase.Site} site\n\t\t * @return {string}\n\t\t */\n\t\t_createItemValue: function ( site ) {\n\t\t\treturn site.getId();\n\t\t},\n\n\t\t/**\n\t\t * Returns the currently selected site.\n\t\t *\n\t\t * @return {wikibase.Site|null}\n\t\t */\n\t\tgetSelectedSite: function () {\n\t\t\treturn this._selectedSite;\n\t\t}\n\t} );\n\n\t/**\n\t * Default siteselector suggestion menu item.\n\t *\n\t * @constructor\n\t * @extends jQuery.ui.ooMenu.Item\n\t *\n\t * @param {string|jQuery} label\n\t * @param {string} value\n\t * @param {wikibase.Site} site\n\t *\n\t * @throws {Error} if a required parameter is not specified.\n\t */\n\tvar Item = function ( label, value, site ) {\n\t\t\tif ( !label || !value || !site ) {\n\t\t\t\tthrow new Error( 'Required parameter(s) not specified' );\n\t\t\t}\n\n\t\t\tthis._label = label;\n\t\t\tthis._value = value;\n\t\t\tthis._site = site;\n\t\t},\n\t\tinherit = require( '../util.inherit.js' );\n\n\tItem = inherit(\n\t\t$.ui.ooMenu.Item,\n\t\tItem,\n\t\t{\n\t\t\t/**\n\t\t\t * @type {wikibase.Site}\n\t\t\t */\n\t\t\t_site: null,\n\n\t\t\t/**\n\t\t\t * @return {wikibase.Site}\n\t\t\t */\n\t\t\tgetSite: function () {\n\t\t\t\treturn this._site;\n\t\t\t}\n\t\t}\n\t);\n\n\t$.extend( $.wikibase.siteselector, {\n\t\tItem: Item\n\t} );\n\n}() );\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/client/resources/jquery.wikibase/jquery.wikibase.wbtooltip.js","messages":[{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"option\".","line":14,"column":null,"nodeType":"Block","endLine":14,"endColumn":null},{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"option\".","line":17,"column":null,"nodeType":"Block","endLine":17,"endColumn":null},{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"option\".","line":21,"column":null,"nodeType":"Block","endLine":21,"endColumn":null},{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"option\".","line":27,"column":null,"nodeType":"Block","endLine":27,"endColumn":null},{"ruleId":"jsdoc/valid-types","severity":1,"message":"Syntax error in namepath: afterhide:","line":31,"column":null,"nodeType":"Block","endLine":31,"endColumn":null},{"ruleId":"jsdoc/require-returns","severity":1,"message":"Missing JSDoc @return declaration.","line":164,"column":3,"nodeType":"Block","endLine":169,"endColumn":6},{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"triggers\".","line":262,"column":null,"nodeType":"Block","endLine":262,"endColumn":null},{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"TODO:\".","line":283,"column":null,"nodeType":"Block","endLine":283,"endColumn":null},{"ruleId":"jsdoc/require-returns","severity":1,"message":"Missing JSDoc @return declaration.","line":291,"column":3,"nodeType":"Block","endLine":293,"endColumn":6}],"errorCount":0,"warningCount":9,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/**\n * @license GPL-2.0-or-later\n * @author H. Snater < mediawiki@snater.com >\n */\n( function () {\n\n\t'use strict';\n\n\tvar PARENT = $.Widget;\n\n\t/**\n\t * Tooltip widget enhancing jQuery.tipsy.\n\t *\n\t * @option content {string|jQuery|Error} The tooltip balloon's content.\n\t *         (REQUIRED)\n\t *\n\t * @option permanent {boolean} Whether the tooltip shall be visible permanently (only closing with a\n\t *         click outside of it) or when hovering.\n\t *         Default: false\n\t *\n\t * @option gravity {string} Two-letter string consisting out of a combination of the letter 'n', 's'\n\t *         and 'e', 'w'. This specifies the direction the tooltip balloon will be anchored to. The\n\t *         direction is to be specified assuming an left-to-right context and is mirrored when\n\t *         detecting an RTL context.\n\t *         Default: 'nw'\n\t *\n\t * @option $anchor {jQuery} An anchor where the tooltip's tip shall point on. By default (null), it\n\t *         is the node the tooltip widget is initialized on.\n\t *         Default: null\n\t *\n\t * @event afterhide: Triggered after the tooltip has been hidden.\n\t *        (1) jQuery.Event\n\t */\n\t$.widget( 'wikibase.wbtooltip', PARENT, {\n\t\t/**\n\t\t * Options.\n\t\t *\n\t\t * @type {Object}\n\t\t */\n\t\toptions: {\n\t\t\tcontent: null,\n\t\t\tpermanent: false,\n\t\t\tgravity: 'nw',\n\t\t\t$anchor: null\n\t\t},\n\n\t\t/**\n\t\t * Tipsy tooltip plugin object.\n\t\t *\n\t\t * @type {Object}\n\t\t */\n\t\t_tipsy: null,\n\n\t\t/**\n\t\t * @see jQuery.Widget._create\n\t\t * @throws {Error} when no content has been specified in the options.\n\t\t */\n\t\t_create: function () {\n\t\t\tvar self = this;\n\n\t\t\tPARENT.prototype._create.call( this );\n\n\t\t\tif ( typeof this.options.content === 'string' ) {\n\t\t\t\t// Tipsy, in general, makes use of the \"title\" attribute. Therefore, when setting a\n\t\t\t\t// plain string as content, just assign it to the \"title\" attribute:\n\t\t\t\tthis.element.attr( 'title', this.options.content );\n\t\t\t} else {\n\t\t\t\t// Init Tipsy with some placeholder since the tooltip message would not show without the\n\t\t\t\t// title attribute being set. However, setting a complex HTML structure cannot be done\n\t\t\t\t// via the title tag, so, the content is stored in a custom variable that will be\n\t\t\t\t// injected when the message is about to get displayed.\n\t\t\t\tthis.element.attr( 'title', '.' );\n\t\t\t}\n\n\t\t\t// Flip horizontal gravity when in RTL context:\n\t\t\tvar gravity = this._evaluateGravity( this.options.gravity );\n\n\t\t\t// Init tipsy:\n\t\t\tif ( !this.element.data( 'tipsy' ) ) {\n\t\t\t\tthis.element.tipsy( {\n\t\t\t\t\tgravity: gravity,\n\t\t\t\t\ttrigger: 'manual', // Prevent Tipsy's native hover handling.\n\t\t\t\t\thtml: true\n\t\t\t\t} );\n\t\t\t} else {\n\t\t\t\t// If Tipsy is initialised already, just overwrite the gravity:\n\t\t\t\tthis.element.data( 'tipsy' ).options.gravity = gravity;\n\t\t\t}\n\n\t\t\tthis._tipsy = this.element.data( 'tipsy' );\n\n\t\t\tthis.element.addClass( this.widgetFullName );\n\n\t\t\tif ( !this.options.permanent ) {\n\t\t\t\tthis.element\n\t\t\t\t.off( '.' + this.widgetName )\n\t\t\t\t.on( 'mouseenter.' + this.widgetName, function ( event ) {\n\t\t\t\t\tself.show();\n\t\t\t\t} )\n\t\t\t\t.on( 'mouseleave.' + this.widgetName, function ( event ) {\n\t\t\t\t\tself.hide();\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\t// Reposition tooltip when resizing the browser window:\n\t\t\t$( window )\n\t\t\t.off( '.' + this.widgetName ) // Never need that event more than once.\n\t\t\t.on( 'resize.' + this.widgetName, function ( event ) {\n\t\t\t\t$( ':' + self.widgetFullName ).each( function ( i, node ) {\n\t\t\t\t\tvar tooltip = $( node ).data( self.widgetName );\n\n\t\t\t\t\tif ( tooltip\n\t\t\t\t\t\t&& tooltip._tipsy.$tip\n\t\t\t\t\t\t// eslint-disable-next-line no-jquery/no-sizzle\n\t\t\t\t\t\t&& tooltip._tipsy.$tip.is( ':visible' )\n\t\t\t\t\t\t&& tooltip.option( 'permanent' )\n\t\t\t\t\t) {\n\t\t\t\t\t\ttooltip._tipsy.$tip.hide();\n\t\t\t\t\t\t// Trigger show() to reposition:\n\t\t\t\t\t\t// TODO: Implement option to show tooltip without a fade animation to prevent\n\t\t\t\t\t\t//  flickering.\n\t\t\t\t\t\ttooltip.show( tooltip._permanent );\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t} );\n\n\t\t},\n\n\t\t/**\n\t\t * @see jQuery.Widget.destroy\n\t\t */\n\t\tdestroy: function () {\n\t\t\tthis._tipsy.tip().remove();\n\t\t\tthis.element.off( 'mouseenter.' + this.widgetName + ' mouseleave.' + this.widgetName );\n\t\t\tthis.element.removeData( 'tipsy' );\n\t\t\tthis._tipsy = null;\n\n\t\t\t// Detach window event handler if no widget instances are left:\n\t\t\tif ( $( ':' + this.widgetFullName ).length === 0 ) {\n\t\t\t\t$( window ).off( '.' + this.widgetName );\n\t\t\t}\n\n\t\t\tPARENT.prototype.destroy.apply( this, arguments );\n\t\t},\n\n\t\t/**\n\t\t * Hides the tooltip balloon and destroys the tooltip object afterwards.\n\t\t *\n\t\t * @param {boolean} [remove] Whether to remove the tooltip's node from the DOM.\n\t\t */\n\t\tdegrade: function ( remove ) {\n\t\t\tvar self = this;\n\n\t\t\tthis.element.one( 'wbtooltipafterhide', function ( event ) {\n\t\t\t\tself.destroy();\n\t\t\t\tif ( remove ) {\n\t\t\t\t\tself.element.remove();\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\tthis.hide();\n\t\t},\n\n\t\t/**\n\t\t * Evaluates a given gravity string according to the language direction flipping the horizontal\n\t\t * gravity in RTL context.\n\t\t *\n\t\t * @param {string} gravity\n\t\t */\n\t\t_evaluateGravity: function ( gravity ) {\n\t\t\tif ( document.documentElement.dir === 'rtl' ) {\n\t\t\t\tif ( gravity.search( /e/ ) !== -1 ) {\n\t\t\t\t\tgravity = gravity.replace( /e/g, 'w' );\n\t\t\t\t} else {\n\t\t\t\t\tgravity = gravity.replace( /w/g, 'e' );\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn gravity;\n\t\t},\n\n\t\t/**\n\t\t * Shows the tooltip balloon.\n\t\t */\n\t\tshow: function () {\n\t\t\tvar self = this;\n\n\t\t\t// eslint-disable-next-line no-jquery/no-sizzle\n\t\t\tif ( this._tipsy.$tip && this._tipsy.$tip.is( ':visible' ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// The native Tipsy tooltip does not allow jQuery nodes to be set as content and when\n\t\t\t// triggering Tipsy's show() method, the $tip is removed from the DOM while the $tips\n\t\t\t// position is also set within the show() method. To work around that, we trigger showing\n\t\t\t// the tooltip before filling it with content and cache the initial position.\n\t\t\t// TODO: This is not the most elegant solution since the $tip might reach out of the\n\t\t\t// viewport.\n\t\t\t// The DOM content needs to be cloned since IE8 will lose the reference to the DOM content\n\t\t\t// when the inner HTML is removed within tipsy's native show() method.\n\t\t\tvar content = null;\n\n\t\t\tif ( this.options.content instanceof $ ) {\n\t\t\t\tcontent = this.options.content.clone( true, true );\n\t\t\t}\n\n\t\t\t// If a tooltip anchor is specified, use that for positioning the tip by overwriting the\n\t\t\t// element referenced by Tipsy. In order for Tipsy's show() method to not abort, the anchor\n\t\t\t// node needs to have the \"title\" attribute set.\n\t\t\tif ( this.options.$anchor ) {\n\t\t\t\tthis._tipsy.$element = this.options.$anchor;\n\t\t\t\tif ( !this._tipsy.$element.attr( 'title' ) ) {\n\t\t\t\t\tthis._tipsy.$element.attr( 'title', '.' );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis._tipsy.show();\n\n\t\t\tthis._tipsy.$tip.addClass( this.widgetFullName + '-tip' );\n\n\t\t\tvar offset = this._tipsy.$tip.offset(),\n\t\t\t\theight = this._tipsy.$tip.height();\n\n\t\t\tif ( this.options.content.code ) {\n\t\t\t\t// Content is an error object.\n\t\t\t\tthis._tipsy.tip().addClass( 'wb-error' );\n\n\t\t\t\t// If not re-constructed on showing, click event on inner element (e.g. Details link)\n\t\t\t\t// will be lost.\n\t\t\t\tcontent = this._buildErrorTooltip();\n\t\t\t}\n\n\t\t\tif ( this.options.permanent ) {\n\t\t\t\t// Hide error tooltip when clicking outside of it by suppressing clicks on the $tip from\n\t\t\t\t// bubbling:\n\t\t\t\tthis._tipsy.tip().on( 'mousedown.' + this.widgetName, function ( event ) {\n\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t} );\n\n\t\t\t\t$( window ).one( 'mousedown.' + this.widgetName, function ( event ) {\n\t\t\t\t\t// Tipsy might be destroyed already.\n\t\t\t\t\tif ( self._tipsy ) {\n\t\t\t\t\t\tself.hide();\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tif ( typeof this.options.content !== 'string' ) {\n\t\t\t\tthis._tipsy.tip().find( '.tipsy-inner' ).empty().append( content );\n\t\t\t}\n\n\t\t\t// Reposition $tip since Tipsy evaluated the position before we filled it with DOM content:\n\t\t\tif ( this._tipsy.options.gravity.charAt( 0 ) === 's' ) {\n\t\t\t\tthis._tipsy.$tip.offset(\n\t\t\t\t\t{ top: offset.top - this._tipsy.$tip.height() + height, left: offset.left }\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Hides the tooltip balloon.\n\t\t *\n\t\t * @triggers afterhide\n\t\t */\n\t\thide: function () {\n\t\t\t// eslint-disable-next-line no-jquery/no-sizzle\n\t\t\tif ( !this._tipsy || !this._tipsy.$tip || !this._tipsy.$tip.is( ':visible' ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis._tipsy.tip().off( '.' + this.widgetName );\n\t\t\tthis._tipsy.hide();\n\n\t\t\t// TODO: Implement afterHide properly to be called within some callback of tipsy.hide() or\n\t\t\t// (probably) overwrite tipsy's hide().\n\t\t\tthis._trigger( 'afterhide' );\n\t\t},\n\n\t\t/**\n\t\t * Constructs the DOM structure displayed within an error tooltip.\n\t\t *\n\t\t * @return {jQuery}\n\t\t *\n\t\t * @TODO: Error tooltip should be a separate tooltip derivative.\n\t\t */\n\t\t_buildErrorTooltip: function () {\n\t\t\tvar buildErrorOutput = require( '../wikibase.buildErrorOutput.js' );\n\t\t\treturn buildErrorOutput( this.options.content )\n\t\t\t\t.addClass( this.widgetFullName + '-error' );\n\t\t},\n\n\t\t/**\n\t\t * @see jQuery.Widget.option\n\t\t */\n\t\toption: function ( key, value ) {\n\t\t\tif ( key === 'gravity' ) {\n\t\t\t\t// Consider language direction:\n\t\t\t\tvalue = this._evaluateGravity( value );\n\t\t\t}\n\t\t\treturn PARENT.prototype.option.call( this, key, value );\n\t\t}\n\n\t} );\n\n}() );\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/client/resources/util.highlightSubstring.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/resources/util.inherit.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/resources/wikibase.buildErrorOutput.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/resources/wikibase.client.PageConnector.js","messages":[{"ruleId":"jsdoc/valid-types","severity":1,"message":"Tag @type must have a type.","line":36,"column":null,"nodeType":"Block","endLine":36,"endColumn":null},{"ruleId":"jsdoc/valid-types","severity":1,"message":"Tag @type must have a type.","line":41,"column":null,"nodeType":"Block","endLine":41,"endColumn":null},{"ruleId":"jsdoc/valid-types","severity":1,"message":"Tag @type must have a type.","line":46,"column":null,"nodeType":"Block","endLine":46,"endColumn":null},{"ruleId":"jsdoc/valid-types","severity":1,"message":"Tag @type must have a type.","line":51,"column":null,"nodeType":"Block","endLine":51,"endColumn":null},{"ruleId":"jsdoc/valid-types","severity":1,"message":"Tag @type must have a type.","line":56,"column":null,"nodeType":"Block","endLine":56,"endColumn":null}],"errorCount":0,"warningCount":5,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/**\n * @license GPL-2.0-or-later\n * @author Marius Hoch < hoo@online.de >\n */\n( function ( wb ) {\n\t'use strict';\n\n\t/**\n\t * PageConnector connects two articles easily.\n\t *\n\t * @constructor\n\t *\n\t * @param {wikibase.api.RepoApi} repoApi\n\t * @param {string} firstSiteId\n\t * @param {string} firstPageName\n\t * @param {string} secondSiteId\n\t * @param {string} secondPageName\n\t */\n\tvar PageConnector = function PageConnector(\n\t\trepoApi,\n\t\tfirstSiteId,\n\t\tfirstPageName,\n\t\tsecondSiteId,\n\t\tsecondPageName\n\t) {\n\t\tthis._repoApi = repoApi;\n\n\t\tthis._firstSiteId = firstSiteId;\n\t\tthis._firstPageName = firstPageName;\n\t\tthis._secondSiteId = secondSiteId;\n\t\tthis._secondPageName = secondPageName;\n\t};\n\n\t$.extend( PageConnector.prototype, {\n\t\t/**\n\t\t * @type wikibase.api.RepoApi\n\t\t */\n\t\t_repoApi: null,\n\n\t\t/**\n\t\t * @type string\n\t\t */\n\t\t_firstSiteId: null,\n\n\t\t/**\n\t\t * @type string\n\t\t */\n\t\t_firstPageName: null,\n\n\t\t/**\n\t\t * @type string\n\t\t */\n\t\t_secondSiteId: null,\n\n\t\t/**\n\t\t * @type string\n\t\t */\n\t\t_secondPageName: null,\n\n\t\t/**\n\t\t * Gets a list of pages that will also be linked with the first page. This may visualize\n\t\t * potential side effects of a merge to users.\n\t\t *\n\t\t * @return {jQuery.promise}\n\t\t */\n\t\tgetNewlyLinkedPages: function () {\n\t\t\tvar self = this,\n\t\t\t\tdeferred = new $.Deferred();\n\n\t\t\tthis._getEntityForPage( this._secondSiteId, this._secondPageName )\n\t\t\t.fail( deferred.reject )\n\t\t\t.done( function ( data ) {\n\t\t\t\tvar entity, siteLinkCount;\n\n\t\t\t\tif ( data.entities[ '-1' ] ) {\n\t\t\t\t\tdeferred.resolve( {} );\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tentity = self._extractEntity( data );\n\n\t\t\t\t// Count site links\n\t\t\t\tsiteLinkCount = self._countSiteLinks( entity );\n\n\t\t\t\tdeferred.resolve( siteLinkCount ? entity : {} );\n\t\t\t} );\n\n\t\t\treturn deferred.promise();\n\t\t},\n\n\t\t/**\n\t\t * Get the entity for a given page in case there is one\n\t\t *\n\t\t * @param {string} siteId\n\t\t * @param {string} pageName\n\t\t *\n\t\t * @return {jQuery.Promise}\n\t\t */\n\t\t_getEntityForPage: function ( siteId, pageName ) {\n\t\t\treturn this._repoApi.getEntitiesByPage(\n\t\t\t\tsiteId,\n\t\t\t\tpageName,\n\t\t\t\t[ 'info', 'sitelinks' ],\n\t\t\t\t'',\n\t\t\t\ttrue\n\t\t\t);\n\t\t},\n\n\t\t/**\n\t\t * Get the (first) entity object from an API response.\n\t\t *\n\t\t * @param {Object} apiResult\n\t\t *\n\t\t * @return {Object|undefined} Entity as returned by the API\n\t\t */\n\t\t_extractEntity: function ( apiResult ) {\n\t\t\tfor ( var i in apiResult.entities ) {\n\t\t\t\tif ( apiResult.entities[ i ].sitelinks ) {\n\t\t\t\t\treturn apiResult.entities[ i ];\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Counts the number of sites attached to a given entity.\n\t\t *\n\t\t * @param {Object} entity\n\t\t *\n\t\t * @return {number}\n\t\t */\n\t\t_countSiteLinks: function ( entity ) {\n\t\t\tvar siteLinkCount = 0,\n\t\t\t\ti;\n\n\t\t\tfor ( i in entity.sitelinks ) {\n\t\t\t\tif ( entity.sitelinks[ i ].site ) {\n\t\t\t\t\tsiteLinkCount += 1;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn siteLinkCount;\n\t\t},\n\n\t\t/**\n\t\t * Links the two articles by either creating a new item, updating an existing one or merging two\n\t\t * existing ones.\n\t\t *\n\t\t * @return {jQuery.Promise}\n\t\t */\n\t\tlinkPages: function () {\n\t\t\tvar self = this,\n\t\t\t\tdeferred = new $.Deferred();\n\n\t\t\tthis._getEntityForPage( self._firstSiteId, self._firstPageName )\n\t\t\t.done( function ( data ) {\n\t\t\t\t// Use the normalized title from now on (e.g. for creating a new item with proper\n\t\t\t\t// titles).\n\t\t\t\tif ( data.normalized ) {\n\t\t\t\t\tself._firstPageName = data.normalized.n.to;\n\t\t\t\t}\n\n\t\t\t\tif ( !data.entities[ '-1' ] ) {\n\t\t\t\t\tvar entity = self._extractEntity( data );\n\n\t\t\t\t\t// The first page has an entity attached, so link/ merge the second page with it\n\t\t\t\t\tself._linkOrMergeSecondPage( entity )\n\t\t\t\t\t.done( deferred.resolve )\n\t\t\t\t\t.fail( deferred.reject );\n\t\t\t\t} else {\n\t\t\t\t\t// There is no item for the first page ... maybe there's one for the second\n\t\t\t\t\tself._linkFirstPageOrCreateItem()\n\t\t\t\t\t.done( deferred.resolve )\n\t\t\t\t\t.fail( deferred.reject );\n\t\t\t\t}\n\t\t\t} )\n\t\t\t.fail( deferred.reject );\n\n\t\t\treturn deferred.promise();\n\t\t},\n\n\t\t/**\n\t\t * Links the second page with the given entity. If page is linked to an item already, a merge is\n\t\t * performed.\n\t\t *\n\t\t * @param {Object} entity\n\t\t *\n\t\t * @return {jQuery.Promise}\n\t\t */\n\t\t_linkOrMergeSecondPage: function ( entity ) {\n\t\t\tvar self = this,\n\t\t\t\tdeferred = new $.Deferred();\n\n\t\t\tthis._getEntityForPage( self._secondSiteId, self._secondPageName )\n\t\t\t.done( function ( data ) {\n\t\t\t\tif ( data.normalized ) {\n\t\t\t\t\t// Use the normalized title from now on (e.g. for creating a new item with proper\n\t\t\t\t\t// titles).\n\t\t\t\t\tself._secondPageName = data.normalized.n.to;\n\t\t\t\t}\n\n\t\t\t\tif ( data.entities[ '-1' ] ) {\n\t\t\t\t\t// The second page has no item yet, so just link it with the given entity\n\t\t\t\t\tself._setSiteLink( entity, self._secondSiteId, self._secondPageName )\n\t\t\t\t\t.done( deferred.resolve )\n\t\t\t\t\t.fail( deferred.reject );\n\t\t\t\t} else {\n\t\t\t\t\t// The page already has an item... this means we have to perform a merge\n\t\t\t\t\tself._mergeEntities( entity, self._extractEntity( data ) )\n\t\t\t\t\t.done( deferred.resolve )\n\t\t\t\t\t.fail( deferred.reject );\n\t\t\t\t}\n\t\t\t} )\n\t\t\t.fail( deferred.reject );\n\n\t\t\treturn deferred.promise();\n\t\t},\n\n\t\t/**\n\t\t * If the second page has an item, it links the first page with the item of the second page. If\n\t\t * not, a new item is created.\n\t\t *\n\t\t * @return {jQuery.Promise}\n\t\t */\n\t\t_linkFirstPageOrCreateItem: function () {\n\t\t\tvar self = this,\n\t\t\t\tdeferred = new $.Deferred();\n\n\t\t\tthis._getEntityForPage( self._secondSiteId, self._secondPageName )\n\t\t\t.fail( deferred.reject )\n\t\t\t.done( function ( data ) {\n\t\t\t\t// Use the normalized title from now on (e.g. for creating a new item with proper\n\t\t\t\t// titles).\n\t\t\t\tif ( data.normalized ) {\n\t\t\t\t\tself._secondPageName = data.normalized.n.to;\n\t\t\t\t}\n\n\t\t\t\tif ( data.entities[ '-1' ] ) {\n\t\t\t\t\t// Neither the first nor the second page have an item yet, create one\n\t\t\t\t\tself._createItem(\n\t\t\t\t\t\tself._firstSiteId,\n\t\t\t\t\t\tself._firstPageName,\n\t\t\t\t\t\tself._secondSiteId,\n\t\t\t\t\t\tself._secondPageName\n\t\t\t\t\t)\n\t\t\t\t\t.done( deferred.resolve )\n\t\t\t\t\t.fail( deferred.reject );\n\t\t\t\t} else {\n\t\t\t\t\t// There already is an entity with the second page linked, so just link the first\n\t\t\t\t\t// one\n\t\t\t\t\tvar entity = self._extractEntity( data );\n\n\t\t\t\t\tself._setSiteLink( entity, self._firstSiteId, self._firstPageName )\n\t\t\t\t\t.done( deferred.resolve )\n\t\t\t\t\t.fail( deferred.reject );\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\treturn deferred.promise();\n\t\t},\n\n\t\t/**\n\t\t * Links an item with a page.\n\t\t *\n\t\t * @param {Object} entity\n\t\t * @param {string} siteId\n\t\t * @param {string} pageName\n\t\t *\n\t\t * @return {jQuery.Promise}\n\t\t */\n\t\t_setSiteLink: function ( entity, siteId, pageName ) {\n\t\t\treturn this._repoApi.setSitelink(\n\t\t\t\tentity.id,\n\t\t\t\tentity.lastrevid,\n\t\t\t\tsiteId,\n\t\t\t\tpageName\n\t\t\t);\n\t\t},\n\n\t\t/**\n\t\t * Merges two entities.\n\t\t *\n\t\t * @param {Object} firstEntity\n\t\t * @param {Object} secondEntity\n\t\t *\n\t\t * @return {jQuery.Promise}\n\t\t */\n\t\t_mergeEntities: function ( firstEntity, secondEntity ) {\n\t\t\tvar firstSiteLinkCount = this._countSiteLinks( firstEntity ),\n\t\t\t\tsecondSiteLinkCount = this._countSiteLinks( secondEntity ),\n\t\t\t\tfromId,\n\t\t\t\ttoId;\n\n\t\t\t// XXX: We could get all properties above and then use a more complete\n\t\t\t// comparison, maybe by abusing JSON.stringify to get real item sizes. That\n\t\t\t// *might* be a better estimate?!\n\t\t\tif ( firstSiteLinkCount <= secondSiteLinkCount ) {\n\t\t\t\tfromId = firstEntity.id;\n\t\t\t\ttoId = secondEntity.id;\n\t\t\t} else {\n\t\t\t\ttoId = firstEntity.id;\n\t\t\t\tfromId = secondEntity.id;\n\t\t\t}\n\n\t\t\treturn this._repoApi.mergeItems(\n\t\t\t\tfromId,\n\t\t\t\ttoId,\n\t\t\t\t// Ignore label and description conflicts, but fail on link conflicts\n\t\t\t\t[ 'label', 'description' ]\n\t\t\t);\n\t\t},\n\n\t\t/**\n\t\t * Creates an item in the repository.\n\t\t *\n\t\t * @param {string} firstSiteId\n\t\t * @param {string} firstPageName\n\t\t * @param {string} secondSiteId\n\t\t * @param {string} secondPageName\n\t\t *\n\t\t * @return {jQuery.Promise}\n\t\t */\n\t\t_createItem: function ( firstSiteId, firstPageName, secondSiteId, secondPageName ) {\n\t\t\t// JSON data for the new entity\n\t\t\tvar entityData = {\n\t\t\t\t\tlabels: {},\n\t\t\t\t\tsitelinks: {}\n\t\t\t\t},\n\t\t\t\twbSites = require( './wikibase.sites.js' ),\n\t\t\t\tfirstSite = wbSites.getSite( firstSiteId ),\n\t\t\t\tsecondSite = wbSites.getSite( secondSiteId );\n\n\t\t\t// Labels (page titles)\n\t\t\tentityData.labels[ firstSite.getLanguageCode() ] = {\n\t\t\t\tlanguage: firstSite.getLanguageCode(),\n\t\t\t\tvalue: firstPageName\n\t\t\t};\n\t\t\tentityData.labels[ secondSite.getLanguageCode() ] = {\n\t\t\t\tlanguage: secondSite.getLanguageCode(),\n\t\t\t\tvalue: secondPageName\n\t\t\t};\n\n\t\t\t// Sitelinks\n\t\t\tentityData.sitelinks[ firstSite.getId() ] = {\n\t\t\t\tsite: firstSite.getId(),\n\t\t\t\ttitle: firstPageName\n\t\t\t};\n\t\t\tentityData.sitelinks[ secondSite.getId() ] = {\n\t\t\t\tsite: secondSite.getId(),\n\t\t\t\ttitle: secondPageName\n\t\t\t};\n\n\t\t\treturn this._repoApi.createEntity( 'item', entityData );\n\t\t}\n\n\t} );\n\n\tmodule.exports = wb.PageConnector = PageConnector;\n\n}( wikibase ) );\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/client/resources/wikibase.client.action.edit.collapsibleFooter.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/resources/wikibase.client.data-bridge.app.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/resources/wikibase.client.getMwApiForRepo.js","messages":[{"ruleId":"jsdoc/no-undefined-types","severity":1,"message":"The type 'mediaWiki' is undefined.","line":9,"column":null,"nodeType":"Block","endLine":9,"endColumn":null}],"errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/**\n * @license GPL-2.0-or-later\n * @author Adrian Heine <adrian.heine@wikimedia.de>\n */\n( function () {\n\t'use strict';\n\n\t/**\n\t * @return {mediaWiki.Api}\n\t */\n\tvar getMwApiForRepo = function () {\n\t\tvar repoConfig = mw.config.get( 'wbRepo' ),\n\t\t\trepoApiEndpoint = repoConfig.url + repoConfig.scriptPath + '/api.php';\n\n\t\treturn wikibase.api.getLocationAgnosticMwApi( repoApiEndpoint );\n\t};\n\n\tmodule.exports = getMwApiForRepo;\n}() );\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/client/resources/wikibase.client.linkitem.init.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/resources/wikibase.sites.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/client/sql/abstract/entity_usage.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/composer.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/extension-client.json","messages":[{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":77,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":77,"endColumn":5},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":101,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":101,"endColumn":5}],"errorCount":2,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"source":"{\n\t\"name\": \"WikibaseClient\",\n\t\"type\": \"wikibase\",\n\t\"author\": [\n\t\t\"The Wikidata team\"\n\t],\n\t\"url\": \"https://www.mediawiki.org/wiki/Extension:Wikibase_Client\",\n\t\"descriptionmsg\": \"wikibase-client-desc\",\n\t\"license-name\": \"GPL-2.0-or-later\",\n\t\"requires\": {\n\t\t\"MediaWiki\": \">= 1.35\"\n\t},\n\t\"APIListModules\": {\n\t\t\"wblistentityusage\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Client\\\\Api\\\\ApiListEntityUsage\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseClient.RepoLinker\"\n\t\t\t]\n\t\t}\n\t},\n\t\"APIMetaModules\": {\n\t\t\"wikibase\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Client\\\\Api\\\\ApiClientInfo\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseClient.Settings\"\n\t\t\t]\n\t\t}\n\t},\n\t\"APIPropModules\": {\n\t\t\"pageterms\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Client\\\\Api\\\\PageTerms\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Client\\\\Api\\\\PageTerms::factory\"\n\t\t},\n\t\t\"description\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Client\\\\Api\\\\Description\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Client\\\\Api\\\\Description::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseClient.Settings\"\n\t\t\t]\n\t\t},\n\t\t\"wbentityusage\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Client\\\\Api\\\\ApiPropsEntityUsage\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseClient.RepoLinker\"\n\t\t\t]\n\t\t}\n\t},\n\t\"ExtensionFunctions\": [\n\t\t\"\\\\Wikibase\\\\Client\\\\Hooks\\\\ExtensionLoadHandler::onExtensionLoad\"\n\t],\n\t\"ServiceWiringFiles\": [\n\t\t\"client/WikibaseClient.ServiceWiring.php\"\n\t],\n\t\"QUnitTestModule\": {\n\t\t\"remoteExtPath\": \"Wikibase/lib/tests/qunit\",\n\t\t\"localBasePath\": \"lib/tests/qunit\",\n\t\t\"scripts\": [\n\t\t\t\"wikibase.Site.tests.js\"\n\t\t],\n\t\t\"dependencies\": [\n\t\t\t\"wikibase.Site\"\n\t\t]\n\t},\n\t\"HookHandlers\": {\n\t\t\"BeforePageDisplay\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\BeforePageDisplayHandler\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\BeforePageDisplayHandler::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseClient.Settings\"\n\t\t\t]\n\t\t},\n\t\t\"ChangesListLines\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\ChangesListLinesHandler\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\ChangesListLinesHandler::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"UserNameUtils\",\n\t\t\t  \t\"WikibaseClient.EntityIdParser\",\n\t\t\t\t\"WikibaseClient.RepoLinker\",\n\t\t\t\t\"WikibaseClient.Settings\"\n\t\t\t]\n\t\t},\n\t\t\"ChangesListSpecialPage\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\ChangesListSpecialPageHookHandler\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\ChangesListSpecialPageHookHandler::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"DBLoadBalancer\",\n\t\t\t\t\"WikibaseClient.Settings\"\n\t\t\t]\n\t\t},\n\t\t\"ParserOutputUpdate\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\ParserOutputUpdateHookHandler\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\ParserOutputUpdateHookHandler::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseClient.EntityIdParser\"\n\t\t\t]\n\t\t},\n\t\t\"DataUpdate\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\DataUpdateHookHandler\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\DataUpdateHookHandler::factory\",\n\t\t\t\"services\": [\n\t\t\t  \t\"WikibaseClient.EntityIdParser\",\n\t\t\t\t\"WikibaseClient.Logger\"\n\t\t\t]\n\t\t},\n\t\t\"DeletePageNoticeCreator\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\DeletePageNoticeCreator\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\DeletePageNoticeCreator::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseClient.RepoLinker\",\n\t\t\t\t\"WikibaseClient.Settings\"\n\t\t\t]\n\t\t},\n\t\t\"LibHooks\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Lib\\\\LibHooks\"\n\t\t},\n\t\t\"DescriptionProvider\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\DescriptionProviderHookHandler\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\DescriptionProviderHookHandler::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseClient.Settings\"\n\t\t\t]\n\t\t},\n\t\t\"EditAction\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\EditActionHookHandler\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\EditActionHookHandler::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseClient.EntityIdParser\",\n\t\t\t\t\"WikibaseClient.RepoLinker\"\n\t\t\t]\n\t\t},\n\t\t\"InfoAction\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\InfoActionHookHandler\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\InfoActionHookHandler::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseClient.EntityIdParser\",\n\t\t\t\t\"WikibaseClient.RepoLinker\",\n\t\t\t\t\"WikibaseClient.Settings\"\n\t\t\t]\n\t\t},\n\t\t\"Magic\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\MagicWordHookHandler\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseClient.Settings\"\n\t\t\t]\n\t\t},\n\t\t\"MovePageNotice\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\MovePageNotice\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\MovePageNotice::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseClient.RepoLinker\",\n\t\t\t\t\"WikibaseClient.Settings\"\n\t\t\t]\n\t\t},\n\t\t\"ParserFunctionRegistrant\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\ParserFunctionRegistrant\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\ParserFunctionRegistrant::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseClient.Settings\"\n\t\t\t]\n\t\t},\n\t\t\"Parser\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\ParserHookHandler\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\ParserHookHandler::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseClient.Settings\"\n\t\t\t]\n\t\t},\n\t\t\"Sidebar\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\SidebarHookHandler\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\SidebarHookHandler::factory\"\n\t\t},\n\t\t\"SkinAfterPortlet\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\SkinAfterPortletHandler\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\SkinAfterPortletHandler::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseClient.EntityIdParser\",\n\t\t\t\t\"WikibaseClient.RepoLinker\",\n\t\t\t\t\"WikibaseClient.Settings\"\n\t\t\t]\n\t\t},\n\t\t\"SqlUsageTrackerSchemaUpdater\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Client\\\\Usage\\\\Sql\\\\SqlUsageTrackerSchemaUpdater\"\n\t\t},\n\t\t\"Trivial\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\TrivialHookHandler\"\n\t\t},\n\t\t\"UpdateRepo\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\UpdateRepoHookHandler\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\UpdateRepoHookHandler::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseClient.Settings\"\n\t\t\t]\n\t\t}\n\t},\n\t\"Hooks\": {\n\t\t\"AbortEmailNotification\": \"Trivial\",\n\t\t\"ArticleDeleteAfterSuccess\": \"DeletePageNoticeCreator\",\n\t\t\"ArticleDeleteComplete\": [\n\t\t\t\"UpdateRepo\",\n\t\t\t\"DataUpdate\"\n\t\t],\n\t\t\"BeforeCreateEchoEvent\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\EchoSetupHookHandlers::onBeforeCreateEchoEvent\",\n\t\t\"BeforePageDisplay\": [\n\t\t\t\"BeforePageDisplay\",\n\t\t\t\"Trivial\"\n\t\t],\n\t\t\"ContentAlterParserOutput\": \"ParserOutputUpdate\",\n\t\t\"ChangesListSpecialPageQuery\": \"ChangesListSpecialPage\",\n\t\t\"CirrusSearchAddQueryFeatures\": \"\\\\Wikibase\\\\Client\\\\ClientHooks::onCirrusSearchAddQueryFeatures\",\n\t\t\"EchoGetBundleRules\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\EchoNotificationsHandlers::onEchoGetBundleRules\",\n\t\t\"EditPage::showStandardInputs:options\": \"EditAction\",\n\t\t\"EnhancedChangesListModifyBlockLineData\": \"ChangesListLines\",\n\t\t\"EnhancedChangesListModifyLineData\": \"ChangesListLines\",\n\t\t\"ExtensionTypes\": \"LibHooks\",\n\t\t\"FormatAutocomments\": \"\\\\Wikibase\\\\Client\\\\ClientHooks::onFormat\",\n\t\t\"GetPreferences\": \"\\\\Wikibase\\\\Client\\\\ClientHooks::onGetPreferences\",\n\t\t\"InfoAction\": \"InfoAction\",\n\t\t\"LinksUpdateComplete\": \"DataUpdate\",\n\t\t\"LoadExtensionSchemaUpdates\": \"SqlUsageTrackerSchemaUpdater\",\n\t\t\"LoginFormValidErrorMessages\": \"\\\\Wikibase\\\\Client\\\\Hooks\\\\LoginFormValidErrorMessagesHandler::handle\",\n\t\t\"MagicWordwgVariableIDs\": \"Magic\",\n\t\t\"OldChangesListRecentChangesLine\": \"ChangesListLines\",\n\t\t\"OutputPageParserOutput\": \"Sidebar\",\n\t\t\"ParserCacheSaveComplete\": \"DataUpdate\",\n\t\t\"ParserClearState\": \"Parser\",\n\t\t\"ParserFirstCallInit\": \"ParserFunctionRegistrant\",\n\t\t\"ParserGetVariableValueSwitch\": \"Magic\",\n\t\t\"ParserLimitReportPrepare\": \"Parser\",\n\t\t\"ResourceLoaderJqueryMsgModuleMagicWords\": \"Magic\",\n\t\t\"ResourceLoaderRegisterModules\": \"LibHooks\",\n\t\t\"ScribuntoExternalLibraries\": \"\\\\Wikibase\\\\Client\\\\ClientHooks::onScribuntoExternalLibraries\",\n\t\t\"SearchDataForIndex\": \"Trivial\",\n\t\t\"SearchIndexFields\": \"Trivial\",\n\t\t\"SearchResultProvideDescription\": \"DescriptionProvider\",\n\t\t\"SidebarBeforeOutput\": \"Sidebar\",\n\t\t\"SkinAfterBottomScripts\": \"\\\\Wikibase\\\\Client\\\\ClientHooks::onSkinAfterBottomScripts\",\n\t\t\"SkinAfterPortlet\": \"SkinAfterPortlet\",\n\t\t\"SkinTemplateGetLanguageLink\": \"Sidebar\",\n\t\t\"SpecialMovepageAfterMove\": \"MovePageNotice\",\n\t\t\"PageMoveComplete\": \"UpdateRepo\",\n\t\t\"UnitTestsList\": [\n\t\t\t\"Trivial\",\n\t\t\t\"LibHooks\"\n\t\t],\n\t\t\"wgQueryPages\": \"Trivial\"\n\t},\n\t\"TrackingCategories\": [\n\t\t\"unresolved-property-category\",\n\t\t\"connected-redirect-category\"\n\t],\n\t\"AutoloadNamespaces\": {\n\t\t\"Wikibase\\\\Client\\\\\": \"client/includes/\",\n\t\t\"Wikibase\\\\Lib\\\\\": \"lib/includes/\",\n\t\t\"Wikibase\\\\Lib\\\\Changes\\\\\": \"lib/packages/wikibase/changes/src/\",\n\t\t\"Wikibase\\\\DataAccess\\\\\": \"data-access/src/\"\n\t},\n\t\"TestAutoloadNamespaces\": {\n\t\t\"Wikibase\\\\Client\\\\Tests\\\\Integration\\\\\": \"client/tests/phpunit/integration/includes/\",\n\t\t\"Wikibase\\\\Client\\\\Tests\\\\Unit\\\\\": \"client/tests/phpunit/unit/includes/\",\n\t\t\"Wikibase\\\\Client\\\\Tests\\\\Mocks\\\\\": \"client/tests/phpunit/mocks/\",\n\t\t\"Wikibase\\\\Lib\\\\Tests\\\\\": \"lib/tests/phpunit/\",\n\t\t\"Wikibase\\\\Lib\\\\Tests\\\\Changes\\\\\": \"lib/packages/wikibase/changes/tests/\",\n\t\t\"Wikibase\\\\DataAccess\\\\Tests\\\\\": \"data-access/tests/phpunit/\"\n\t},\n\t\"JobClasses\": {\n\t\t\"wikibase-addUsagesForPage\": \"\\\\Wikibase\\\\Client\\\\Store\\\\AddUsagesForPageJob\",\n\t\t\"ChangeNotification\": \"\\\\Wikibase\\\\Client\\\\ChangeNotificationJob\",\n\t\t\"ChangeVisibilityNotification\": \"\\\\Wikibase\\\\Client\\\\ChangeModification\\\\ChangeVisibilityNotificationJob::newFromGlobalState\",\n\t\t\"ChangeDeletionNotification\": \"\\\\Wikibase\\\\Client\\\\ChangeModification\\\\ChangeDeletionNotificationJob::newFromGlobalState\",\n\t\t\"wikibase-InjectRCRecords\": \"\\\\Wikibase\\\\Client\\\\Changes\\\\InjectRCRecordsJob::newFromGlobalState\"\n\t},\n\t\"RecentChangesFlags\": {\n\t\t\"wikibase-edit\": {\n\t\t\t\"letter\": \"wikibase-rc-wikibase-edit-letter\",\n\t\t\t\"title\": \"wikibase-rc-wikibase-edit-title\",\n\t\t\t\"legend\": \"wikibase-rc-wikibase-edit-legend\",\n\t\t\t\"grouping\": \"all\"\n\t\t}\n\t},\n\t\"ResourceFileModulePaths\": {\n\t\t\"localBasePath\": \"client/resources\",\n\t\t\"remoteExtPath\": \"Wikibase/client/resources\"\n\t},\n\t\"ResourceModules\": {\n\t\t\"wikibase.client.init\": {\n\t\t\t\"skinStyles\": {\n\t\t\t\t\"modern\": \"wikibase.client.css\",\n\t\t\t\t\"monobook\": \"wikibase.client.css\",\n\t\t\t\t\"timeless\": \"wikibase.client.css\",\n\t\t\t\t\"vector\": [\n\t\t\t\t\t\"wikibase.client.css\",\n\t\t\t\t\t\"wikibase.client.vector.css\"\n\t\t\t\t]\n\t\t\t}\n\t\t},\n\t\t\"wikibase.client.miscStyles\": {\n\t\t\t\"styles\": [\n\t\t\t\t\"wikibase.client.page-move.css\",\n\t\t\t\t\"wikibase.client.changeslist.css\"\n\t\t\t]\n\t\t},\n\t\t\"wikibase.client.linkitem.init\": {\n\t\t\t\"packageFiles\": [\n\t\t\t\t\"wikibase.client.linkitem.init.js\",\n\t\t\t\t{\n\t\t\t\t\t\"name\": \"config.json\",\n\t\t\t\t\t\"callback\": \"Wikibase\\\\Client\\\\ClientHooks::getSiteConfiguration\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"messages\": [\n\t\t\t\t\"unknown-error\"\n\t\t\t],\n\t\t\t\"dependencies\": [\n\t\t\t\t\"jquery.spinner\"\n\t\t\t]\n\t\t},\n\t\t\"jquery.wikibase.linkitem\": {\n\t\t\t\"packageFiles\": [\n\t\t\t\t\"client/resources/jquery.wikibase/jquery.wikibase.linkitem.js\",\n\t\t\t\t\"client/resources/wikibase.client.PageConnector.js\",\n\t\t\t\t\"client/resources/wikibase.client.getMwApiForRepo.js\",\n\t\t\t\t\"client/resources/wikibase.sites.js\",\n\t\t\t\t\"client/resources/jquery.wikibase/jquery.wikibase.siteselector.js\",\n\t\t\t\t\"client/resources/jquery.wikibase/jquery.wikibase.wbtooltip.js\",\n\t\t\t\t\"client/resources/wikibase.buildErrorOutput.js\",\n\t\t\t\t\"client/resources/util.highlightSubstring.js\",\n\t\t\t\t\"client/resources/jquery.ui/jquery.ui.suggester.js\",\n\t\t\t\t\"client/resources/jquery.ui/jquery.ui.ooMenu.js\",\n\t\t\t\t\"client/resources/jquery.util.getscrollbarwidth.js\",\n\t\t\t\t\"client/resources/util.inherit.js\",\n\t\t\t\t\"client/resources/jquery.event.special.eachchange.js\",\n\t\t\t\t\"lib/resources/wikibase-api/src/namespace.js\",\n\t\t\t\t\"lib/resources/wikibase-api/src/RepoApi.js\",\n\t\t\t\t\"lib/resources/wikibase-api/src/getLocationAgnosticMwApi.js\",\n\t\t\t\t\"lib/resources/wikibase-api/src/RepoApiError.js\"\n\t\t\t],\n\t\t\t\"styles\": [\n\t\t\t\t\"client/resources/jquery.wikibase/jquery.wikibase.linkitem.css\",\n\t\t\t\t\"client/resources/jquery.wikibase/jquery.wikibase.wbtooltip.css\",\n\t\t\t\t\"client/resources/jquery.ui/jquery.ui.suggester.css\",\n\t\t\t\t\"client/resources/jquery.ui/jquery.ui.ooMenu.css\"\n\t\t\t],\n\t\t\t\"dependencies\": [\n\t\t\t\t\"jquery.spinner\",\n\t\t\t\t\"jquery.ui\",\n\t\t\t\t\"jquery.tipsy\",\n\t\t\t\t\"mediawiki.api\",\n\t\t\t\t\"mediawiki.util\",\n\t\t\t\t\"mediawiki.jqueryMsg\",\n\t\t\t\t\"mw.config.values.wbRepo\",\n\t\t\t\t\"mw.config.values.wbSiteDetails\",\n\t\t\t\t\"wikibase.Site\",\n\t\t\t\t\"mediawiki.ForeignApi\"\n\t\t\t],\n\t\t\t\"messages\": [\n\t\t\t\t\"wikibase-error-unexpected\",\n\t\t\t\t\"wikibase-linkitem-alreadylinked\",\n\t\t\t\t\"wikibase-linkitem-title\",\n\t\t\t\t\"wikibase-linkitem-linkpage\",\n\t\t\t\t\"wikibase-linkitem-selectlink\",\n\t\t\t\t\"wikibase-linkitem-input-site\",\n\t\t\t\t\"wikibase-linkitem-input-page\",\n\t\t\t\t\"wikibase-linkitem-confirmitem-text\",\n\t\t\t\t\"wikibase-linkitem-confirmitem-button\",\n\t\t\t\t\"wikibase-linkitem-success-link\",\n\t\t\t\t\"wikibase-linkitem-close\",\n\t\t\t\t\"wikibase-linkitem-not-loggedin-title\",\n\t\t\t\t\"wikibase-linkitem-not-loggedin\",\n\t\t\t\t\"wikibase-linkitem-failure\",\n\t\t\t\t\"wikibase-linkitem-failed-modify\",\n\t\t\t\t\"wikibase-replicationnote\",\n\t\t\t\t\"wikibase-sitelinks-sitename-columnheading\",\n\t\t\t\t\"wikibase-sitelinks-link-columnheading\",\n\t\t\t\t\"wikibase-error-unexpected\",\n\t\t\t\t\"wikibase-error-unknown\",\n\t\t\t\t\"wikibase-error-save-generic\",\n\t\t\t\t\"wikibase-error-remove-generic\",\n\t\t\t\t\"wikibase-error-save-timeout\",\n\t\t\t\t\"wikibase-error-remove-timeout\",\n\t\t\t\t\"wikibase-error-ui-no-external-page\",\n\t\t\t\t\"wikibase-error-ui-edit-conflict\"\n\t\t\t],\n\t\t\t\"localBasePath\": \"\",\n\t\t\t\"remoteExtPath\": \"Wikibase/\"\n\t\t},\n\t\t\"wikibase.client.action.edit.collapsibleFooter\": {\n\t\t\t\"scripts\": \"wikibase.client.action.edit.collapsibleFooter.js\",\n\t\t\t\"dependencies\": [\n\t\t\t\t\"jquery.makeCollapsible\",\n\t\t\t\t\"mediawiki.storage\",\n\t\t\t\t\"mediawiki.icon\"\n\t\t\t]\n\t\t},\n\t\t\"wikibase.client.data-bridge.init\": {\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Client\\\\DataBridge\\\\DataBridgeResourceLoaderModules::initModule\"\n\t\t},\n\t\t\"wikibase.client.data-bridge.externalModifiers\": {\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Client\\\\DataBridge\\\\DataBridgeResourceLoaderModules::externalModifiersModule\"\n\t\t},\n\t\t\"mw.config.values.wbDataBridgeConfig\": {\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Client\\\\DataBridge\\\\DataBridgeResourceLoaderModules::configModule\"\n\t\t},\n\t\t\"wikibase.client.data-bridge.app\": {\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Client\\\\DataBridge\\\\DataBridgeResourceLoaderModules::appModule\"\n\t\t},\n\t\t\"wikibase.client.data-bridge.app.modern\": {\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Client\\\\DataBridge\\\\DataBridgeResourceLoaderModules::modernAppModule\"\n\t\t},\n\t\t\"wikibase.client.data-bridge.app.legacy\": {\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Client\\\\DataBridge\\\\DataBridgeResourceLoaderModules::legacyAppModule\"\n\t\t}\n\t},\n\t\"SpecialPages\": {\n\t\t\"UnconnectedPages\": \"Wikibase\\\\Client\\\\Specials\\\\SpecialUnconnectedPages\",\n\t\t\"PagesWithBadges\": {\n\t\t\t\"class\": \"Wikibase\\\\Client\\\\Specials\\\\SpecialPagesWithBadges\",\n\t\t\t\"factory\": \"Wikibase\\\\Client\\\\Specials\\\\SpecialPagesWithBadges::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseClient.Settings\"\n\t\t\t]\n\t\t},\n\t\t\"EntityUsage\": {\n\t\t\t\"class\": \"Wikibase\\\\Client\\\\Specials\\\\SpecialEntityUsage\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseClient.EntityIdParser\",\n\t\t\t\t\"LanguageConverterFactory\"\n\t\t\t]\n\t\t}\n\t},\n\t\"MessagesDirs\": {\n\t\t\"wikibaseclient\": \"client/i18n\",\n\t\t\"wikibaseclientapi\": \"client/i18n/api\",\n\t\t\"WikibaseLib\": \"lib/i18n\"\n\t},\n\t\"ExtensionMessagesFiles\": {\n\t\t\"Wikibaseclientalias\": \"client/WikibaseClient.i18n.alias.php\",\n\t\t\"wikibaseclientmagic\": \"client/WikibaseClient.i18n.magic.php\"\n\t},\n\t\"callback\": \"\\\\Wikibase\\\\Lib\\\\LibHooks::onRegistration\",\n\t\"manifest_version\": 2\n}\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/extension-repo.json","messages":[{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":25,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":25,"endColumn":5},{"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},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":59,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":59,"endColumn":5},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":68,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":68,"endColumn":5},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":109,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":109,"endColumn":5},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":118,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":118,"endColumn":5},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":127,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":127,"endColumn":5},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":151,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":151,"endColumn":5},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":160,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":160,"endColumn":5},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":177,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":177,"endColumn":5},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":186,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":186,"endColumn":5}],"errorCount":11,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"source":"{\n\t\"name\": \"WikibaseRepository\",\n\t\"type\": \"wikibase\",\n\t\"author\": [\n\t\t\"The Wikidata team\"\n\t],\n\t\"url\": \"https://www.mediawiki.org/wiki/Extension:Wikibase_Repository\",\n\t\"descriptionmsg\": \"wikibase-desc\",\n\t\"license-name\": \"GPL-2.0-or-later\",\n\t\"requires\": {\n\t\t\"MediaWiki\": \">= 1.36\"\n\t},\n\t\"APIModules\": {\n\t\t\"wbavailablebadges\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\AvailableBadges\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.Settings\"\n\t\t\t]\n\t\t},\n\t\t\"wbcreateclaim\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\CreateClaim\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\CreateClaim::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.EntityIdParser\",\n\t\t\t  \t\"WikibaseRepo.StatementGuidValidator\"\n\t\t\t]\n\t\t},\n\t\t\"wbeditentity\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\EditEntity\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\EditEntity::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.DataTypeDefinitions\",\n\t\t\t\t\"WikibaseRepo.EntityIdParser\"\n\t\t\t]\n\t\t},\n\t\t\"wbcreateredirect\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\CreateRedirect\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\CreateRedirect::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"PermissionManager\",\n\t\t\t\t\"WikibaseRepo.EntityIdParser\"\n\t\t\t]\n\t\t},\n\t\t\"wbformatentities\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\FormatEntities\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\FormatEntities::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"StatsdDataFactory\",\n\t\t\t\t\"WikibaseRepo.EntityIdParser\"\n\t\t\t]\n\t\t},\n\t\t\"wbformatvalue\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\FormatSnakValue\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\FormatSnakValue::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"StatsdDataFactory\",\n\t\t\t\t\"WikibaseRepo.DataTypeFactory\",\n\t\t\t  \t\"WikibaseRepo.DataValueFactory\",\n\t\t\t  \t\"WikibaseRepo.ValueFormatterFactory\"\n\t\t\t]\n\t\t},\n\t\t\"wbgetclaims\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\GetClaims\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\GetClaims::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.EntityIdParser\",\n\t\t\t\t\"WikibaseRepo.StatementGuidParser\",\n\t\t\t  \t\"WikibaseRepo.StatementGuidValidator\"\n\t\t\t]\n\t\t},\n\t\t\"wbgetentities\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\GetEntities\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\GetEntities::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"StatsdDataFactory\",\n\t\t\t\t\"WikibaseRepo.EntityIdParser\",\n\t\t\t\t\"WikibaseRepo.Settings\"\n\t\t\t]\n\t\t},\n\t\t\"wblinktitles\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\LinkTitles\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\LinkTitles::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.Settings\"\n\t\t\t]\n\t\t},\n\t\t\"wbmergeitems\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\MergeItems\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\MergeItems::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.EntityIdParser\"\n\t\t\t]\n\t\t},\n\t\t\"wbparsevalue\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\ParseValue\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\ParseValue::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"StatsdDataFactory\",\n\t\t\t\t\"WikibaseRepo.DataTypeFactory\",\n\t\t\t\t\"WikibaseRepo.ValueParserFactory\"\n\t\t\t]\n\t\t},\n\t\t\"wbremoveclaims\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\RemoveClaims\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\RemoveClaims::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.EntityIdParser\",\n\t\t\t\t\"WikibaseRepo.StatementGuidParser\",\n\t\t\t  \t\"WikibaseRepo.StatementGuidValidator\"\n\t\t\t]\n\t\t},\n\t\t\"wbremovequalifiers\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\RemoveQualifiers\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\RemoveQualifiers::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.EntityIdParser\",\n\t\t\t\t\"WikibaseRepo.StatementGuidParser\",\n\t\t\t  \t\"WikibaseRepo.StatementGuidValidator\"\n\t\t\t]\n\t\t},\n\t\t\"wbremovereferences\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\RemoveReferences\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\RemoveReferences::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.EntityIdParser\",\n\t\t\t\t\"WikibaseRepo.StatementGuidParser\",\n\t\t\t  \t\"WikibaseRepo.StatementGuidValidator\"\n\t\t\t]\n\t\t},\n\t\t\"wbsearchentities\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\SearchEntities\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\SearchEntities::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.EntitySourceDefinitions\"\n\t\t\t]\n\t\t},\n\t\t\"wbsetaliases\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\SetAliases\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\SetAliases::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"StatsdDataFactory\"\n\t\t\t]\n\t\t},\n\t\t\"wbsetclaim\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\SetClaim\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\SetClaim::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"StatsdDataFactory\",\n\t\t\t\t\"WikibaseRepo.EntityIdParser\",\n\t\t\t\t\"WikibaseRepo.StatementGuidParser\",\n\t\t\t  \t\"WikibaseRepo.StatementGuidValidator\"\n\t\t\t]\n\t\t},\n\t\t\"wbsetclaimvalue\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\SetClaimValue\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\SetClaimValue::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.EntityIdParser\",\n\t\t\t\t\"WikibaseRepo.StatementGuidParser\",\n\t\t\t  \t\"WikibaseRepo.StatementGuidValidator\"\n\t\t\t]\n\t\t},\n\t\t\"wbsetdescription\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\SetDescription\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\SetDescription::factory\"\n\t\t},\n\t\t\"wbsetlabel\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\SetLabel\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\SetLabel::factory\"\n\t\t},\n\t\t\"wbsetqualifier\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\SetQualifier\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\SetQualifier::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.EntityIdParser\",\n\t\t\t\t\"WikibaseRepo.StatementGuidParser\",\n\t\t\t  \t\"WikibaseRepo.StatementGuidValidator\"\n\t\t\t]\n\t\t},\n\t\t\"wbsetreference\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\SetReference\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\SetReference::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.EntityIdParser\",\n\t\t\t\t\"WikibaseRepo.StatementGuidParser\",\n\t\t\t  \t\"WikibaseRepo.StatementGuidValidator\"\n\t\t\t]\n\t\t},\n\t\t\"wbsetsitelink\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\SetSiteLink\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\SetSiteLink::factory\"\n\t\t}\n\t},\n\t\"APIListModules\": {\n\t\t\"wbsearch\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\QuerySearchEntities\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\QuerySearchEntities::factory\"\n\t\t},\n\t\t\"wbsubscribers\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\ListSubscribers\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\ListSubscribers::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"SiteLookup\",\n\t\t\t\t\"WikibaseRepo.EntityIdParser\"\n\t\t\t]\n\t\t}\n\t},\n\t\"APIMetaModules\": {\n\t\t\"wbcontentlanguages\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\MetaContentLanguages\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\MetaContentLanguages::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"LanguageNameUtils\"\n\t\t\t]\n\t\t}\n\t},\n\t\"APIPropModules\": {\n\t\t\"entityterms\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\EntityTerms\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Api\\\\EntityTerms::factory\"\n\t\t}\n\t},\n\t\"SpecialPages\": {\n\t\t\"NewItem\": {\n\t\t\t\"class\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialNewItem\",\n\t\t\t\"factory\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialNewItem::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.Settings\"\n\t\t\t]\n\t\t},\n\t\t\"NewProperty\": {\n\t\t\t\"class\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialNewProperty\",\n\t\t\t\"factory\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialNewProperty::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.DataTypeFactory\",\n\t\t\t\t\"WikibaseRepo.Settings\"\n\t\t\t]\n\t\t},\n\t\t\"ItemByTitle\": {\n\t\t\t\"class\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialItemByTitle\",\n\t\t\t\"factory\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialItemByTitle::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.Logger\",\n\t\t\t\t\"WikibaseRepo.Settings\"\n\t\t\t]\n\t\t},\n\t\t\"GoToLinkedPage\": {\n\t\t\t\"class\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialGoToLinkedPage\",\n\t\t\t\"factory\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialGoToLinkedPage::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.EntityIdParser\"\n\t\t\t]\n\t\t},\n\t\t\"ItemDisambiguation\": {\n\t\t\t\"class\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialItemDisambiguation\",\n\t\t\t\"factory\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialItemDisambiguation::factory\"\n\t\t},\n\t\t\"ItemsWithoutSitelinks\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialItemsWithoutSitelinks\",\n\t\t\"SetLabel\": {\n\t\t\t\"class\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialSetLabel\",\n\t\t\t\"factory\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialSetLabel::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.Settings\"\n\t\t\t]\n\t\t},\n\t\t\"SetDescription\": {\n\t\t\t\"class\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialSetDescription\",\n\t\t\t\"factory\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialSetDescription::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.Settings\"\n\t\t\t]\n\t\t},\n\t\t\"SetAliases\": {\n\t\t\t\"class\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialSetAliases\",\n\t\t\t\"factory\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialSetAliases::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.Settings\"\n\t\t\t]\n\t\t},\n\t\t\"SetLabelDescriptionAliases\": {\n\t\t\t\"class\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialSetLabelDescriptionAliases\",\n\t\t\t\"factory\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialSetLabelDescriptionAliases::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.Settings\"\n\t\t\t]\n\t\t},\n\t\t\"SetSiteLink\": {\n\t\t\t\"class\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialSetSiteLink\",\n\t\t\t\"factory\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialSetSiteLink::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.Settings\"\n\t\t\t]\n\t\t},\n\t\t\"ListDatatypes\": {\n\t\t\t\"class\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialListDatatypes\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.DataTypeDefinitions\"\n\t\t\t]\n\t\t},\n\t\t\"DispatchStats\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialDispatchStats\",\n\t\t\"EntityData\": {\n\t\t\t\"class\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialEntityData\",\n\t\t\t\"factory\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialEntityData::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"HtmlCacheUpdater\",\n\t\t\t\t\"WikibaseRepo.EntityContentFactory\",\n\t\t\t\t\"WikibaseRepo.EntityIdParser\",\n\t\t\t\t\"WikibaseRepo.Logger\",\n\t\t\t\t\"WikibaseRepo.RdfVocabulary\",\n\t\t\t\t\"WikibaseRepo.Settings\",\n\t\t\t\t\"WikibaseRepo.ValueSnakRdfBuilderFactory\"\n\t\t\t]\n\t\t},\n\t\t\"EntityPage\": {\n\t\t\t\"class\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialEntityPage\",\n\t\t\t\"factory\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialEntityPage::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.EntityIdParser\"\n\t\t\t]\n\t\t},\n\t\t\"MyLanguageFallbackChain\": {\n\t\t\t\"class\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialMyLanguageFallbackChain\",\n\t\t\t\"factory\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialMyLanguageFallbackChain::factory\"\n\t\t},\n\t\t\"MergeItems\": {\n\t\t\t\"class\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialMergeItems\",\n\t\t\t\"factory\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialMergeItems::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.EntityIdParser\"\n\t\t\t]\n\t\t},\n\t\t\"RedirectEntity\": {\n\t\t\t\"class\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialRedirectEntity\",\n\t\t\t\"factory\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialRedirectEntity::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.EntityIdParser\"\n\t\t\t]\n\t\t},\n\t\t\"AvailableBadges\": {\n\t\t\t\"class\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialAvailableBadges\",\n\t\t\t\"factory\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialAvailableBadges::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.Settings\"\n\t\t\t]\n\t\t},\n\t\t\"ListProperties\": {\n\t\t\t\"factory\": \"Wikibase\\\\Repo\\\\Specials\\\\SpecialListPropertiesDispatchingFactory::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.DataTypeFactory\",\n\t\t\t\t\"WikibaseRepo.Settings\"\n\t\t\t]\n\t\t}\n\t},\n\t\"GroupPermissions\": {\n\t\t\"*\": {\n\t\t\t\"item-term\": true,\n\t\t\t\"property-term\": true,\n\t\t\t\"item-merge\": true,\n\t\t\t\"item-redirect\": true,\n\t\t\t\"property-create\": true\n\t\t}\n\t},\n\t\"AvailableRights\": [\n\t\t\"item-term\",\n\t\t\"property-term\",\n\t\t\"item-merge\",\n\t\t\"item-redirect\",\n\t\t\"property-create\"\n\t],\n\t\"GrantPermissions\": {\n\t\t\"editpage\": {\n\t\t\t\"item-term\": true,\n\t\t\t\"property-term\": true,\n\t\t\t\"item-merge\": true,\n\t\t\t\"item-redirect\": true\n\t\t},\n\t\t\"createeditmovepage\": {\n\t\t\t\"property-create\": true\n\t\t}\n\t},\n\t\"JobClasses\": {\n\t\t\"CleanTermsIfUnused\": \"Wikibase\\\\Lib\\\\Store\\\\Sql\\\\Terms\\\\CleanTermsIfUnusedJob::getJobSpecification\",\n\t\t\"PurgeEntityData\": \"Wikibase\\\\Repo\\\\PurgeEntityDataJob::newFromGlobalState\",\n\t\t\"UpdateRepoOnMove\": \"Wikibase\\\\Repo\\\\UpdateRepo\\\\UpdateRepoOnMoveJob\",\n\t\t\"UpdateRepoOnDelete\": \"Wikibase\\\\Repo\\\\UpdateRepo\\\\UpdateRepoOnDeleteJob\",\n\t\t\"DispatchChangeDeletionNotification\": \"Wikibase\\\\Repo\\\\ChangeModification\\\\DispatchChangeDeletionNotificationJob\",\n\t\t\"DispatchChangeVisibilityNotification\": \"Wikibase\\\\Repo\\\\ChangeModification\\\\DispatchChangeVisibilityNotificationJob\"\n\t},\n\t\"AutoloadNamespaces\": {\n\t\t\"Wikibase\\\\Repo\\\\\": \"repo/includes/\",\n\t\t\"Wikibase\\\\Lib\\\\\": \"lib/includes/\",\n\t\t\"Wikibase\\\\Lib\\\\Changes\\\\\": \"lib/packages/wikibase/changes/src/\",\n\t\t\"Wikibase\\\\DataAccess\\\\\": \"data-access/src/\",\n\t\t\"Wikibase\\\\View\\\\\": \"view/src/\"\n\t},\n\t\"TestAutoloadNamespaces\": {\n\t\t\"Wikibase\\\\Repo\\\\Tests\\\\\": \"repo/tests/phpunit/includes/\",\n\t\t\"Wikibase\\\\Repo\\\\Tests\\\\Maintenance\\\\\": \"repo/tests/phpunit/maintenance/\",\n\t\t\"Wikibase\\\\Repo\\\\Tests\\\\Unit\\\\\": \"repo/tests/phpunit/unit/\",\n\t\t\"Wikibase\\\\Lib\\\\Tests\\\\\": \"lib/tests/phpunit/\",\n\t\t\"Wikibase\\\\Lib\\\\Tests\\\\Changes\\\\\": \"lib/packages/wikibase/changes/tests/\",\n\t\t\"Wikibase\\\\DataAccess\\\\Tests\\\\\": \"data-access/tests/phpunit/\",\n\t\t\"Wikibase\\\\View\\\\Tests\\\\\": \"view/tests/phpunit/\"\n\t},\n\t\"attributes\": {\n\t\t\"EventLogging\": {\n\t\t\t\"Schemas\": {\n\t\t\t\t\"WikibaseTermboxInteraction\": 18726648\n\t\t\t}\n\t\t}\n\t},\n\t\"MessagesDirs\": {\n\t\t\"Wikibase\": \"repo/i18n\",\n\t\t\"WikibaseApi\": \"repo/i18n/api\",\n\t\t\"WikibaseLib\": \"lib/i18n\",\n\t\t\"WikibaseView\": \"view/lib/wikibase-data-values-value-view/i18n\"\n\t},\n\t\"ExtensionMessagesFiles\": {\n\t\t\"WikibaseAlias\": \"repo/Wikibase.i18n.alias.php\",\n\t\t\"WikibaseNS\": \"repo/Wikibase.i18n.namespaces.php\",\n\t\t\"wikibaserepomagic\": \"repo/WikibaseRepo.i18n.magic.php\"\n\t},\n\t\"ServiceWiringFiles\": [\n\t\t\"repo/WikibaseRepo.ServiceWiring.php\"\n\t],\n\t\"QUnitTestModule\": {\n\t\t\"remoteExtPath\": \"Wikibase\",\n\t\t\"localBasePath\": \"\",\n\t\t\"packageFiles\": [\n\t\t\t\"repo/tests/qunit/index.js\",\n\t\t\t\"view/tests/qunit/wikibase/wikibase.tests.js\",\n\t\t\t\"view/tests/qunit/getMockListItemAdapter.js\",\n\t\t\t\"view/lib/wikibase-data-values-value-view/tests/src/jquery.valueview.tests.testExpert.js\",\n\t\t\t\"view/lib/wikibase-data-values-value-view/tests/src/jquery.valueview.tests.MockViewState.js\",\n\t\t\t\"lib/tests/qunit/wikibase.Site.tests.js\",\n\t\t\t\"view/tests/qunit/experts/wikibase.experts.modules.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/ui/jquery.ui.closeable.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/ui/jquery.ui.tagadata.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/ui/jquery.ui.EditableTemplatedWidget.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/ui/jquery.ui.TemplatedWidget.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/snakview/snakview.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/toolbar/jquery.wikibase.addtoolbar.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/toolbar/jquery.wikibase.edittoolbar.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/toolbar/jquery.wikibase.removetoolbar.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/toolbar/jquery.wikibase.singlebuttontoolbar.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/toolbar/jquery.wikibase.toolbar.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/toolbar/jquery.wikibase.toolbarbutton.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/toolbar/jquery.wikibase.toolbaritem.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/jquery.wikibase.aliasesview.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/jquery.wikibase.badgeselector.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/jquery.wikibase.statementgrouplistview.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/jquery.wikibase.statementgroupview.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/jquery.wikibase.statementlistview.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/jquery.wikibase.descriptionview.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/jquery.wikibase.entityselector.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/jquery.wikibase.entityview.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/jquery.wikibase.entitytermsview.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/jquery.wikibase.entitytermsforlanguagelistview.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/jquery.wikibase.entitytermsforlanguageview.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/jquery.wikibase.itemview.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/jquery.wikibase.labelview.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/jquery.wikibase.listview.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/jquery.wikibase.pagesuggester.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/jquery.wikibase.propertyview.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/jquery.wikibase.referenceview.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/jquery.wikibase.referenceview.tabsenabled.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/jquery.wikibase.sitelinkgrouplistview.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/jquery.wikibase.sitelinkgroupview.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/jquery.wikibase.sitelinklistview.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/jquery.wikibase.sitelinkview.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/jquery.wikibase.snaklistview.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/jquery.wikibase.statementview.RankSelector.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/jquery.wikibase.statementview.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/jquery.removeClassByRegex.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/jquery.sticknode.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/jquery.util.getDirectionality.tests.js\",\n\t\t\t\"view/tests/qunit/wikibase/entityChangers/AliasesChanger.tests.js\",\n\t\t\t\"view/tests/qunit/wikibase/entityChangers/StatementsChanger.tests.js\",\n\t\t\t\"view/tests/qunit/wikibase/entityChangers/StatementsChangerState.tests.js\",\n\t\t\t\"view/tests/qunit/wikibase/entityChangers/DescriptionsChanger.tests.js\",\n\t\t\t\"view/tests/qunit/wikibase/entityChangers/EntityTermsChanger.tests.js\",\n\t\t\t\"view/tests/qunit/wikibase/entityChangers/LabelsChanger.tests.js\",\n\t\t\t\"view/tests/qunit/wikibase/entityChangers/SiteLinksChanger.tests.js\",\n\t\t\t\"view/tests/qunit/wikibase/entityChangers/SiteLinkSetsChanger.tests.js\",\n\t\t\t\"view/tests/qunit/wikibase/utilities/ClaimGuidGenerator.tests.js\",\n\t\t\t\"view/tests/qunit/wikibase/view/testViewController.js\",\n\t\t\t\"view/tests/qunit/wikibase/wikibase.WikibaseContentLanguages.tests.js\",\n\t\t\t\"view/tests/qunit/wikibase/wikibase.getUserLanguages.tests.js\",\n\t\t\t\"view/tests/qunit/wikibase/wikibase.getLanguageNameByCode.tests.js\",\n\t\t\t\"view/tests/qunit/wikibase/templates.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/jquery.wikibase.wbtooltip.tests.js\",\n\t\t\t\"view/tests/qunit/jquery/wikibase/jquery.wikibase.siteselector.tests.js\",\n\t\t\t\"repo/tests/qunit/wikibase.sites.tests.js\",\n\t\t\t\"repo/tests/qunit/wikibase.EntityInitializer.tests.js\",\n\t\t\t\"repo/tests/qunit/experts/Property.tests.js\",\n\t\t\t\"repo/tests/qunit/experts/Item.tests.js\",\n\t\t\t\"repo/tests/qunit/jquery.wikibase/jquery.wikibase.entitysearch.tests.js\",\n\t\t\t\"repo/resources/jquery.wikibase/jquery.wikibase.entitysearch.js\",\n\t\t\t\"repo/tests/qunit/dataTypes/DataType.tests.js\",\n\t\t\t\"repo/resources/dataTypes/DataType.js\",\n\t\t\t\"repo/tests/qunit/dataTypes/DataTypeStore.tests.js\",\n\t\t\t\"repo/resources/dataTypes/DataTypeStore.js\",\n\t\t\t\"repo/tests/qunit/wikibase.PropertyDataTypeStore.tests.js\",\n\t\t\t\"repo/resources/wikibase.PropertyDataTypeStore.js\",\n\t\t\t\"view/tests/qunit/wikibase/view/ViewFactoryFactory.tests.js\",\n\t\t\t\"view/resources/wikibase/view/ViewFactoryFactory.js\",\n\t\t\t\"view/tests/qunit/wikibase/store/store.CachingEntityStore.tests.js\",\n\t\t\t\"view/resources/wikibase/store/store.CachingEntityStore.js\",\n\t\t\t\"view/resources/wikibase/store/store.EntityStore.js\",\n\t\t\t\"view/tests/qunit/wikibase/store/store.CombiningEntityStore.tests.js\",\n\t\t\t\"view/resources/wikibase/store/store.CombiningEntityStore.js\",\n\t\t\t\"view/tests/qunit/wikibase/entityIdFormatter/DataValueBasedEntityIdHtmlFormatter.tests.js\",\n\t\t\t\"view/resources/wikibase/entityIdFormatter/DataValueBasedEntityIdHtmlFormatter.js\",\n\t\t\t\"view/resources/wikibase/entityIdFormatter/EntityIdHtmlFormatter.js\",\n\t\t\t\"view/tests/qunit/wikibase/entityIdFormatter/testEntityIdHtmlFormatter.js\",\n\t\t\t\"view/tests/qunit/wikibase/entityIdFormatter/DataValueBasedEntityIdPlainFormatter.tests.js\",\n\t\t\t\"view/resources/wikibase/entityIdFormatter/DataValueBasedEntityIdPlainFormatter.js\",\n\t\t\t\"view/resources/wikibase/entityIdFormatter/EntityIdPlainFormatter.js\",\n\t\t\t\"view/tests/qunit/jquery/jquery.util.EventSingletonManager.tests.js\",\n\t\t\t\"view/resources/jquery/jquery.util.EventSingletonManager.js\",\n\t\t\t\"view/tests/qunit/wikibase/wikibase.ValueViewBuilder.tests.js\",\n\t\t\t\"view/resources/wikibase/wikibase.ValueViewBuilder.js\",\n\t\t\t\"view/tests/qunit/wikibase/view/ViewFactory.tests.js\",\n\t\t\t\"view/tests/qunit/wikibase/view/ToolbarViewController.tests.js\",\n\t\t\t\"view/resources/wikibase/view/ToolbarViewController.js\",\n\t\t\t\"view/resources/wikibase/view/ViewController.js\",\n\t\t\t\"view/tests/qunit/wikibase/utilities/GuidGenerator.tests.js\",\n\t\t\t\"view/resources/wikibase/utilities/wikibase.utilities.GuidGenerator.js\",\n\t\t\t\"view/tests/qunit/wikibase/view/ToolbarFactory.tests.js\",\n\t\t\t\"view/resources/jquery/wikibase/toolbar/jquery.wikibase.toolbaritem.js\",\n\t\t\t\"view/resources/jquery/wikibase/toolbar/jquery.wikibase.toolbarbutton.js\",\n\t\t\t\"view/resources/jquery/wikibase/toolbar/jquery.wikibase.toolbar.js\",\n\t\t\t\"view/resources/jquery/wikibase/toolbar/jquery.wikibase.singlebuttontoolbar.js\",\n\t\t\t\"view/resources/jquery/wikibase/toolbar/jquery.wikibase.addtoolbar.js\",\n\t\t\t\"view/resources/jquery/wikibase/toolbar/jquery.wikibase.edittoolbar.js\",\n\t\t\t\"view/resources/jquery/wikibase/toolbar/jquery.wikibase.removetoolbar.js\",\n\t\t\t\"view/resources/wikibase/view/ToolbarFactory.js\"\n\t\t],\n\t\t\"dependencies\": [\n\t\t\t\"wikibase.EntityInitializer\",\n\t\t\t\"wikibase.Site\",\n\t\t\t\"wikibase.sites\",\n\t\t\t\"dataValues.values\",\n\t\t\t\"jquery.util.getDirectionality\",\n\t\t\t\"jquery.valueview.Expert\",\n\t\t\t\"jquery.wikibase.entityselector\",\n\t\t\t\"jquery.wikibase.wbtooltip\",\n\t\t\t\"util.inherit\",\n\t\t\t\"util.Notifier\",\n\t\t\t\"wikibase\",\n\t\t\t\"wikibase.api.RepoApi\",\n\t\t\t\"wikibase.datamodel\",\n\t\t\t\"wikibase.entityChangers.EntityChangersFactory\",\n\t\t\t\"wikibase.experts.modules\",\n\t\t\t\"wikibase.experts.Item\",\n\t\t\t\"wikibase.experts.Property\",\n\t\t\t\"wikibase.getLanguageNameByCode\",\n\t\t\t\"wikibase.serialization\",\n\t\t\t\"wikibase.templates\",\n\t\t\t\"wikibase.utilities.ClaimGuidGenerator\",\n\t\t\t\"wikibase.ui.entityViewInit\",\n\t\t\t\"wikibase.view.__namespace\",\n\t\t\t\"wikibase.view.ControllerViewFactory\",\n\t\t\t\"wikibase.view.ReadModeViewFactory\",\n\t\t\t\"wikibase.WikibaseContentLanguages\",\n\t\t\t\"wikibase.getUserLanguages\"\n\t\t]\n\t},\n\t\"HookHandlers\": {\n\t\t\"ArticleRevisionVisibilitySet\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Hooks\\\\ArticleRevisionVisibilitySetHookHandler\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.LocalEntityNamespaceLookup\"\n\t\t\t]\n\t\t},\n\t\t\"DatabaseSchemaUpdater\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Store\\\\Sql\\\\DatabaseSchemaUpdater\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Store\\\\Sql\\\\DatabaseSchemaUpdater::factory\"\n\t\t},\n\t\t\"DifferenceEngineViewHeaderHookHandler\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Hooks\\\\DifferenceEngineViewHeaderHookHandler\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Hooks\\\\DifferenceEngineViewHeaderHookHandler::factory\"\n\t\t},\n\t\t\"DeleteDispatcher\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Hooks\\\\DeleteDispatcher\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Hooks\\\\DeleteDispatcher::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.EntityContentFactory\",\n\t\t\t\t\"WikibaseRepo.Settings\"\n\t\t\t]\n\t\t},\n\t\t\"EntityDataPurger\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Hooks\\\\EntityDataPurger\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Hooks\\\\EntityDataPurger::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"HtmlCacheUpdater\"\n\t\t\t]\n\t\t},\n\t\t\"FederatedPropertiesSpecialPage\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Hooks\\\\FederatedPropertiesSpecialPageHookHandler\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Hooks\\\\FederatedPropertiesSpecialPageHookHandler::factory\"\n\t\t},\n\t\t\"HtmlPageLinkRendererEnd\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Hooks\\\\HtmlPageLinkRendererEndHookHandler\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Hooks\\\\HtmlPageLinkRendererEndHookHandler::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"InterwikiLookup\",\n\t\t\t\t\"SpecialPageFactory\",\n\t\t\t\t\"WikibaseRepo.EntityIdParser\",\n\t\t\t\t\"WikibaseRepo.Settings\"\n\t\t\t]\n\t\t},\n\t\t\"LabelPrefetch\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Hooks\\\\LabelPrefetchHookHandler\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Hooks\\\\LabelPrefetchHookHandler::factory\"\n\t\t},\n\t\t\"LibHooks\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Lib\\\\LibHooks\"\n\t\t},\n\t\t\"OutputPageBeforeHTML\": {\n\t\t\t\"class\": \"Wikibase\\\\Repo\\\\Hooks\\\\OutputPageBeforeHTMLHookHandler\",\n\t\t\t\"factory\": \"Wikibase\\\\Repo\\\\Hooks\\\\OutputPageBeforeHTMLHookHandler::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"HttpRequestFactory\",\n\t\t\t\t\"ContentLanguage\",\n\t\t\t\t\"StatsdDataFactory\",\n\t\t\t\t\"WikibaseRepo.EntityContentFactory\",\n\t\t\t\t\"WikibaseRepo.EntityIdParser\",\n\t\t\t\t\"WikibaseRepo.Logger\",\n\t\t\t\t\"WikibaseRepo.Settings\"\n\t\t\t]\n\t\t},\n\t\t\"OutputPageJsConfig\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Hooks\\\\OutputPageJsConfigHookHandler\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Hooks\\\\OutputPageJsConfigHookHandler::factory\"\n\t\t},\n\t\t\"PageHistoryPagerHookHandler\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Hooks\\\\PageHistoryPagerHookHandler\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Hooks\\\\PageHistoryPagerHookHandler::factory\"\n\t\t},\n\t\t\"ShowSearchHit\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\Repo\\\\Hooks\\\\ShowSearchHitHandler\",\n\t\t\t\"factory\": \"\\\\Wikibase\\\\Repo\\\\Hooks\\\\ShowSearchHitHandler::factory\",\n\t\t\t\"services\": [\n\t\t\t\t\"WikibaseRepo.EntityContentFactory\"\n\t\t\t]\n\t\t},\n\t\t\"ViewHooks\": {\n\t\t\t\"class\": \"\\\\Wikibase\\\\View\\\\ViewHooks\"\n\t\t}\n\t},\n\t\"Hooks\": {\n\t\t\"APIQuerySiteInfoGeneralInfo\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onAPIQuerySiteInfoGeneralInfo\",\n\t\t\"APIQuerySiteInfoStatisticsInfo\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onAPIQuerySiteInfoStatisticsInfo\",\n\t\t\"AbuseFilter-contentToString\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onAbuseFilterContentToString\",\n\t\t\"ApiCheckCanExecute\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onApiCheckCanExecute\",\n\t\t\"ApiMaxLagInfo\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onApiMaxLagInfo\",\n\t\t\"ApiQuery::moduleManager\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onApiQueryModuleManager\",\n\t\t\"ArticleDeleteComplete\": [\n\t\t\t\"DeleteDispatcher\",\n\t\t\t\"EntityDataPurger\",\n\t\t\t\"\\\\Wikibase\\\\Repo\\\\RepoHooks::onArticleDeleteComplete\"\n\t\t],\n\t\t\"ArticleRevisionVisibilitySet\": [\n\t\t\t\"ArticleRevisionVisibilitySet\",\n\t\t\t\"EntityDataPurger\"\n\t\t],\n\t\t\"ArticleUndelete\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onArticleUndelete\",\n\t\t\"BeforeDisplayNoArticleText\": \"\\\\Wikibase\\\\Repo\\\\Actions\\\\ViewEntityAction::onBeforeDisplayNoArticleText\",\n\t\t\"BeforePageDisplay\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onBeforePageDisplay\",\n\t\t\"BeforePageDisplayMobile\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onBeforePageDisplayMobile\",\n\t\t\"ChangesListInitRows\": \"LabelPrefetch\",\n\t\t\"ContentModelCanBeUsedOn\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onContentModelCanBeUsedOn\",\n\t\t\"DifferenceEngineViewHeader\": \"DifferenceEngineViewHeaderHookHandler\",\n\t\t\"ExtensionTypes\": \"LibHooks\",\n\t\t\"FormatAutocomments\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onFormat\",\n\t\t\"GetPreferences\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onGetPreferences\",\n\t\t\"HtmlPageLinkRendererEnd\": \"HtmlPageLinkRendererEnd\",\n\t\t\"ImportHandleRevisionXMLTag\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onImportHandleRevisionXMLTag\",\n\t\t\"InfoAction\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onInfoAction\",\n\t\t\"LoadExtensionSchemaUpdates\": \"DatabaseSchemaUpdater\",\n\t\t\"MediaWikiPHPUnitTest::startTest\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onMediaWikiPHPUnitTestStartTest\",\n\t\t\"NamespaceIsMovable\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onNamespaceIsMovable\",\n\t\t\"OutputPageBeforeHTML\": [\n\t\t\t\"OutputPageBeforeHTML\",\n\t\t\t\"OutputPageJsConfig\"\n\t\t],\n\t\t\"OutputPageBodyAttributes\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onOutputPageBodyAttributes\",\n\t\t\"OutputPageParserOutput\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onOutputPageParserOutput\",\n\t\t\"PageHistoryLineEnding\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onPageHistoryLineEnding\",\n\t\t\"PageHistoryPager::doBatchLookups\": \"PageHistoryPagerHookHandler\",\n\t\t\"ParserFirstCallInit\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onParserFirstCallInit\",\n\t\t\"ParserOptionsRegister\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onParserOptionsRegister\",\n\t\t\"RecentChange_save\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onRecentChangeSave\",\n\t\t\"RejectParserCacheValue\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onRejectParserCacheValue\",\n\t\t\"ResourceLoaderRegisterModules\": [\n\t\t\t\"\\\\Wikibase\\\\Repo\\\\RepoHooks::onResourceLoaderRegisterModules\",\n\t\t\t\"LibHooks\",\n\t\t\t\"ViewHooks\"\n\t\t],\n\t\t\"RevisionFromEditComplete\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onRevisionFromEditComplete\",\n\t\t\"SetupAfterCache\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onSetupAfterCache\",\n\t\t\"ShowSearchHit\": \"ShowSearchHit\",\n\t\t\"ShowSearchHitTitle\": \"ShowSearchHit\",\n\t\t\"SidebarBeforeOutput\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onSidebarBeforeOutput\",\n\t\t\"SkinTemplateNavigation\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onPageTabs\",\n\t\t\"SpecialPage_initList\": \"FederatedPropertiesSpecialPage\",\n\t\t\"SpecialPage_reorderPages\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onSpecialPageReorderPages\",\n\t\t\"TitleGetRestrictionTypes\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onTitleGetRestrictionTypes\",\n\t\t\"UnitTestsList\": [\n\t\t\t\"\\\\Wikibase\\\\Repo\\\\RepoHooks::registerUnitTests\",\n\t\t\t\"LibHooks\",\n\t\t\t\"ViewHooks\"\n\t\t],\n\t\t\"WikibaseRepoEntityTypes\": \"\\\\Wikibase\\\\Repo\\\\Hooks\\\\FederatedPropertiesWikibaseRepoEntityTypesHookHandler::onWikibaseRepoEntityTypes\"\n\t},\n\t\"RateLimits\": {\n\t\t\"wikibase-idgenerator\": {\n\t\t\t\"&inherit-create-edit\": \"This marker value tells RepoHooks::onRegistration to copy the rate limits from 'create' or 'edit'.\"\n\t\t}\n\t},\n\t\"callback\": \"\\\\Wikibase\\\\Repo\\\\RepoHooks::onRegistration\",\n\t\"manifest_version\": 2\n}\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/jsduck.json","messages":[{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":10,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":10,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":11,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":11,"endColumn":3}],"errorCount":2,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"source":"{\n\t\"--title\": \"Wikibase View - Documentation\",\n\t\"--output\": \"docs\",\n\t\"--processes\": \"0\",\n\t\"--warnings-exit-nonzero\": true,\n\t\"--builtin-classes\": true,\n\t\"--external\": \"HTMLDocument,Window,MouseEvent,KeyboardEvent,File,jQuery,jQuery.Promise,jQuery.Event\",\n\t\"--warnings\": [ \"-all\" ],\n\t\"--exclude\": [\n\t  \"view/lib/wikibase-termbox\",\n\t  \"view/lib/wikibase-tainted-ref\"\n\t],\n\t\"--\": [\n\t\t\"view/\"\n\t]\n}\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/abs.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ace.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ady-cyrl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/aeb-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/af.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/alt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ami.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/an.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ang.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ann.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/anp.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ar.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/arq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ary.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/arz.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/as.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ase.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ast.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/atj.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/av.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/avk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/awa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/az.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/azb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ba.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ban.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/bbc-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/bcl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/be-tarask.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/be.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/bg.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/bgn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/bho.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/bi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/bjn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/blc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/bn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/bpy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/bqi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/brx.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/bs.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/btm.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/bto.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ca.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/cdo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ce.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ceb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ch.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ciw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ckb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/cnr-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/co.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/cop.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/crh-cyrl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/crh-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/cs.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/csb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/cu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/cv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/cy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/da.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/de-formal.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/de.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/din.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/diq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/dsb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/dty.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/en-ca.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/en-gb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/en.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/eo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/es.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/et.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/eu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/fa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ff.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/fi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/fit.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/fo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/fr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/frc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/frp.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/frr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/fur.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/fy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ga.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/gaa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/gcr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/gd.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/gl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/gld.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/glk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/gom-deva.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/gom-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/gor.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/got.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/grc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/gsw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/gu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/guc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/hak.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/he.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/hi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/hif-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/hil.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/hoc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/hr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/hrx.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/hsb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ht.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/hu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/hy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/hyw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ia.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/id.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ie.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ig.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ilo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/inh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/io.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/is.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/it.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ja.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/jam.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/jut.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/jv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ka.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/kab.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/kbp.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/kcg.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/khw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/kjp.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/kk-cyrl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/km.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/kn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ko.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/krc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/kri.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/krl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ksh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ksw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ku-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/kum.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/kw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ky.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/la.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/lad.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/lb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/lez.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/lfn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/li.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/lij.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/liv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/lki.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/lkt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/lld.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/lmo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/lrc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/lt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/luz.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/lv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/lzh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/lzz.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/mad.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/mai.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/mg.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/min.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/mk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ml.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/mn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/mnc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/mni.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/mnw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/mo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/mr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/mrh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ms.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/mt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/mui.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/mwl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/my.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/myv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/mzn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/na.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/nah.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/nan.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/nap.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/nb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/nds-nl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/nds.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ne.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/nia.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/nl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/nn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/nqo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/nys.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/oc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/olo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/om.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/or.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/os.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/pa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/pag.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/pam.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/pcd.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/pfl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/pih.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/pl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/pms.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/pnb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ps.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/pt-br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/pt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/qqq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/qu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/qwh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/rej.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/rif.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/rm.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ro.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/roa-tara.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ru.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/rue.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/sa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/sah.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/sat.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/sc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/scn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/sco.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/sd.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/sdc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/sdh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/se.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ses.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/sgs.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/sh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/shi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/shn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/shy-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/si.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/sjd.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/sk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/skr-arab.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/sl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/sli.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/sm.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/smn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/sms.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/so.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/sq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/sr-ec.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/sr-el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/sty.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/su.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/sv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/sw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/szl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/szy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ta.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/tay.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/tcy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/te.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/tg-cyrl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/th.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ti.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/tk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/tl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/tly.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/tokipona.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/tr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/trv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/tt-cyrl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/tt-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/tzm.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/udm.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ug-arab.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/uk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/ur.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/uz.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/vec.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/vep.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/vi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/vo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/vro.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/wa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/war.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/wo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/wuu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/xmf.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/xsy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/yi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/yo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/yue.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/zea.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/zgh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/zh-hans.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/i18n/zh-hant.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/packages/wikibase/changes/composer.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/resources/wikibase.Site.js","messages":[{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"note:\".","line":67,"column":null,"nodeType":"Block","endLine":67,"endColumn":null}],"errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/**\n * JavaScript giving information about a site of the 'Wikibase' extension.\n *\n * @see https://www.mediawiki.org/wiki/Extension:Wikibase\n *\n * @license GPL-2.0-or-later\n * @author Daniel Werner\n */\n\n// Defining the top level variables to be used in other places.\nthis.wikibase = this.wikibase || {};\nthis.wb = this.wikibase;\n\n( function ( wb ) {\n\t'use strict';\n\n\t/**\n\t * Offers information about a site known to the local Wikibase installation.\n\t *\n\t * @constructor\n\t */\n\tvar SELF = wb.Site = function WbSite( siteDetails ) {\n\t\t// TODO: Validate site details, throw error if invalid.\n\t\t// TODO: Keep copy of details, no reference.\n\t\tthis._siteDetails = siteDetails;\n\t};\n\t$.extend( SELF.prototype, {\n\t\t/**\n\t\t * Returns the sites id.\n\t\t *\n\t\t * @return {string}\n\t\t */\n\t\tgetId: function () {\n\t\t\treturn this._siteDetails.id;\n\t\t},\n\n\t\t/**\n\t\t * Returns the full name of the site. This will return the name in the users language.\n\t\t *\n\t\t * @return {string}\n\t\t */\n\t\tgetName: function () {\n\t\t\treturn this._siteDetails.name;\n\t\t},\n\n\t\t/**\n\t\t * Returns the short name of the site. This will return the name in the users language.\n\t\t *\n\t\t * @return {string}\n\t\t */\n\t\tgetShortName: function () {\n\t\t\treturn this._siteDetails.shortName;\n\t\t},\n\n\t\t/**\n\t\t * Returns the group of the site.\n\t\t *\n\t\t * @return {string}\n\t\t */\n\t\tgetGroup: function () {\n\t\t\treturn this._siteDetails.group;\n\t\t},\n\n\t\t/**\n\t\t * Returns the link to the API\n\t\t *\n\t\t * @note: this might not be necessary later since we might want to do only API call to the\n\t\t *        base wiki which will handle the calls to the sites.\n\t\t *\n\t\t * @return {string}\n\t\t */\n\t\tgetApi: function () {\n\t\t\treturn this._siteDetails.apiUrl;\n\t\t},\n\n\t\t/**\n\t\t * Returns the url to a page of the site. To get a full html ready link, use getLinkTo().\n\t\t *\n\t\t * @todo decide whether we want to stick with this method which relies on having some knowledge about the php\n\t\t *       Site stuff (e.g. that we have to replace $1 in this._siteDetails.pageUrl) or whether we want to replace\n\t\t *       this with a API call to the foreign site (even in that case we have to know which API module to call and\n\t\t *       what parameters to pass in case we have a non-MW installation!)\n\t\t *\n\t\t * @param {string} pageTitle title of the page within the site\n\t\t * @return {string}\n\t\t */\n\t\tgetUrlTo: function ( pageTitle ) {\n\t\t\tpageTitle = this._urlEncodeSite( pageTitle.trim() );\n\t\t\treturn this._siteDetails.pageUrl.replace( /\\$1/g, pageTitle );\n\t\t},\n\n\t\t/**\n\t\t * Returns a html link to a site of the site. To get the url only, use getUrlTo().\n\t\t *\n\t\t * @param {string} pageTitle title of the site within the site\n\t\t * @return {jQuery} link to the site\n\t\t */\n\t\tgetLinkTo: function ( pageTitle ) {\n\t\t\tvar url = this.getUrlTo( pageTitle );\n\t\t\treturn $( '<a>' ).attr( 'href', url ).text( pageTitle );\n\t\t},\n\n\t\t/**\n\t\t * Returns the site's language code.\n\t\t *\n\t\t * @return {string} language code\n\t\t */\n\t\tgetLanguageCode: function () {\n\t\t\treturn this._siteDetails.languageCode;\n\t\t},\n\n\t\t/**\n\t\t * Returns the site language's text direction.\n\t\t *\n\t\t * @return {string}\n\t\t */\n\t\tgetLanguageDirection: function () {\n\t\t\tvar languageCode = this.getLanguageCode();\n\t\t\treturn $.uls && $.uls.data.languages[ languageCode ]\n\t\t\t\t? $.uls.data.getDir( languageCode )\n\t\t\t\t: 'auto';\n\t\t},\n\n\t\t/**\n\t\t * Does the encoding for a site so it can be used within the url to the site.\n\t\t * This should propably be over written in case the site is not a MediaWiki installation.\n\t\t *\n\t\t * @param {string} pageTitle\n\t\t * @return {string}\n\t\t */\n\t\t_urlEncodeSite: function ( pageTitle ) {\n\t\t\t// we don't create a mw.Title here since the given title should be normalized and could be one from a foreign\n\t\t\t// wiki which has different namespace config!\n\t\t\treturn mw.util.wikiUrlencode( pageTitle );\n\t\t}\n\n\t} );\n}( wikibase ) );\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/tests/phpunit/Units/testunits.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/lib/tests/qunit/wikibase.Site.tests.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/package-lock.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/package.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/abs.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ace.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ady-cyrl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/aeb-arab.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/aeb-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/aeb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/af.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/alt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ami.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/an.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ang.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ann.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/anp.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/ar.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/ast.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/bcl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/be-tarask.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/bg.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/bn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/ca.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/ce.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/ceb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/cs.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/da.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/de.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/diq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/en.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/eo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/es.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/et.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/eu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/fa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/fi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/fr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/gl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/he.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/hi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/hr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/hu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/ia.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/id.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/is.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/it.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/ja.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/jv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/ka.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/kk-cyrl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/ko.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/ksh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/ku-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/lb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/lki.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/lt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/lv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/mk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/mr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/ms.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/my.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/nap.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/nb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/nl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/nn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/oc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/pam.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/pl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/ps.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/pt-br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/pt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/qqq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/ro.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/roa-tara.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/ru.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/sa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/scn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/sco.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/si.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/skr-arab.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/sl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/sq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/sr-ec.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/sr-el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/su.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/sv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/sw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/szy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/tay.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/tcy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/te.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/th.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/tl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/tr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/ug-arab.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/uk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/yi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/zh-hans.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/api/zh-hant.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ar.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/arc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/arq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ary.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/arz.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/as.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ase.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ast.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/atj.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/av.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/avk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/awa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/az.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/azb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ba.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ban.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/bar.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/bbc-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/bci.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/bcl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/bdr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/be-tarask.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/be.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/bg.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/bgn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/bho.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/bi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/bjn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/blc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/bn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/bpy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/bqi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/brx.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/bs.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/btm.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/bto.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ca.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/cak.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/cdo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ce.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ceb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ch.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/chr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ciw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/cjy-hant.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ckb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/cnr-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/co.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/cop.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/crh-cyrl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/crh-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/cs.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/csb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/cu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/cv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/cy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/da.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/de-formal.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/de.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/din.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/diq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/dsb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/dty.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/dv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ee.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/eml.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/en-ca.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/en-gb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/en.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/eo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/es-formal.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/es.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/et.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/eu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ext.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/fa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ff.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/fi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/fit.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/fo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/fon.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/fr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/frc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/frp.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/frr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/fur.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/fy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ga.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/gaa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/gan-hans.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/gcf.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/gcr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/gd.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/gl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/gld.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/glk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/gn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/gom-deva.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/gom-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/gor.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/got.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/grc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/gsw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/gu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/guc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/gv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ha.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/hak.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/he.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/hi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/hif-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/hil.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/hoc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/hr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/hrx.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/hsb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ht.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/hu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/hy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/hyw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ia.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/id.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ie.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ig.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ilo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/inh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/io.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/is.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/it.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ja.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/jam.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/jut.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/jv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ka.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/kab.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/kbp.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/kcg.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/kea.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/khw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/kip.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/kiu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/kjh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/kjp.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/kk-cyrl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/km.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/kn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ko.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/krc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/kri.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/krl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ksh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ksw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ku-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/kum.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/kw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ky.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/la.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/lad.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/lag.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/lb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/lbe.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/lez.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/lfn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/li.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/lij.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/liv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/lki.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/lkt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/lld.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/lmo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ln.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/lo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/lrc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/lt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/luz.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/lv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/lzh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/lzz.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/mad.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/mai.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/map-bms.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/mg.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/mhr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/min.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/mk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ml.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/mn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/mnc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/mni.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/mnw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/mo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/mr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/mrh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ms.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/mt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/mui.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/mwl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/my.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/myv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/mzn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/nah.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/nan.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/nap.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/nb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/nds-nl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/nds.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ne.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/nia.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/niu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/nl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/nn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/nqo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/nso.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/nys.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/oc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/olo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/om.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/or.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/os.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/osi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/pa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/pag.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/pam.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/pap.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/pcd.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/pfl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/pih.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/pl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/pms.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/pnb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/prs.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ps.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/pt-br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/pt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/qqq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/qu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/qwh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/rej.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/rif.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/rm.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/rmc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ro.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/roa-tara.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ru.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/rue.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/sa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/sah.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/sat.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/sc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/scn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/sco.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/sd.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/sdc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/sdh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/se.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ses.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/sgs.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/sh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/shi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/shn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/shy-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/si.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/sjd.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/sk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/skr-arab.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/sl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/sli.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/sm.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/smn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/sms.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/so.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/sq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/sr-ec.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/sr-el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/sty.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/su.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/sv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/sw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/sxu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/syl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/szl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/szy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ta.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/tay.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/tcy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/te.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/tet.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/tg-cyrl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/th.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ti.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/tk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/tl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/tly.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/tr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/trv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/tt-cyrl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/tt-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/tyv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/tzm.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/udm.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ug-arab.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/uk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/ur.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/uz.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/vec.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/vep.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/vi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/vo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/vro.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/wa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/war.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/wo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/wuu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/xal.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/xh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/xmf.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/xsy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/yi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/yo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/yue.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/zgh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/zh-hans.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/zh-hant.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/zh-hk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/i18n/zu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/resources/dataTypes/DataType.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/resources/dataTypes/DataTypeStore.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/resources/dataTypes/wikibase.dataTypeStore.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/resources/experts/Entity.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/resources/experts/Item.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/resources/experts/Property.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/resources/experts/__namespace.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/resources/experts/getStore.js","messages":[{"ruleId":"no-shadow","severity":1,"message":"'registeredExperts' is already declared in the upper scope on line 11 column 6.","line":52,"column":33,"nodeType":"Identifier","messageId":"noShadow","endLine":52,"endColumn":50}],"errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/**\n * @license GPL-2.0-or-later\n * @author H. Snater < mediawiki@snater.com >\n */\n( function ( vv, dv ) {\n\t'use strict';\n\n\t/**\n\t * @type {Object} Map from property type to expert module name\n\t */\n\tvar registeredExperts = require( 'wikibase.experts.modules' );\n\n\t/**\n\t * @param {dataTypes.DataTypeStore} dataTypeStore\n\t * @return {jQuery.valueview.ExpertStore}\n\t */\n\tmodule.exports = function ( dataTypeStore ) {\n\t\tvar expertStore = new vv.ExpertStore( vv.experts.UnsupportedValue );\n\n\t\texpertStore.registerDataValueExpert(\n\t\t\tvv.experts.StringValue,\n\t\t\tdv.StringValue.TYPE\n\t\t);\n\n\t\texpertStore.registerDataValueExpert(\n\t\t\tvv.experts.UnDeserializableValue,\n\t\t\tdv.UnDeserializableValue.TYPE\n\t\t);\n\n\t\t// Register experts for data types defined in Wikibase. Since those data types are defined by a\n\t\t// setting, it needs to be checked whether they are actually defined.\n\n\t\tvar dataTypeIdToExpertConstructor = resolveExpertModules( registeredExperts );\n\n\t\tfor ( var dataTypeId in dataTypeIdToExpertConstructor ) {\n\t\t\tvar dataType = dataTypeStore.getDataType( dataTypeId );\n\t\t\tif ( dataType ) {\n\t\t\t\texpertStore.registerDataTypeExpert(\n\t\t\t\t\tdataTypeIdToExpertConstructor[ dataTypeId ],\n\t\t\t\t\tdataType.getId()\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\n\t\treturn expertStore;\n\t};\n\n\t/**\n\t * @param {Object} registeredExperts Map from property type to expert module name\n\t * @return {Object} Map from property type to expert constructor\n\t */\n\tfunction resolveExpertModules( registeredExperts ) {\n\t\tvar constructors = {};\n\n\t\tfor ( var dataType in registeredExperts ) {\n\t\t\tif ( Object.prototype.hasOwnProperty.call( registeredExperts, dataType ) ) {\n\t\t\t\tconstructors[ dataType ] = require( registeredExperts[ dataType ] );\n\t\t\t}\n\t\t}\n\n\t\treturn constructors;\n\t}\n\n}( $.valueview, dataValues ) );\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/resources/formatters/ApiValueFormatter.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/resources/formatters/ApiValueFormatterFactory.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/resources/jquery.wikibase/jquery.wikibase.entitysearch.js","messages":[{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"option\".","line":15,"column":null,"nodeType":"Block","endLine":15,"endColumn":null},{"ruleId":"jsdoc/require-returns","severity":1,"message":"Missing JSDoc @return declaration.","line":66,"column":3,"nodeType":"Block","endLine":68,"endColumn":6},{"ruleId":"jsdoc/require-returns","severity":1,"message":"Missing JSDoc @return declaration.","line":84,"column":3,"nodeType":"Block","endLine":86,"endColumn":6},{"ruleId":"jsdoc/require-returns","severity":1,"message":"Missing JSDoc @return declaration.","line":122,"column":3,"nodeType":"Block","endLine":124,"endColumn":6}],"errorCount":0,"warningCount":4,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/**\n * @license GPL-2.0-or-later\n * @author H. Snater < mediawiki@snater.com >\n */\n( function () {\n\t'use strict';\n\n\tvar PARENT = $.wikibase.entityselector;\n\n\t/**\n\t * Entity selector widget enhanced to be used as global search element.\n\t *\n\t * @extends jQuery.wikibase.entityselector\n\t *\n\t * @option {jQuery.ui.ooMenu.CustomItem} [suggestionsPlaceholder]\n\t *         Suggestions list item to be displayed while suggestions are retrieved.\n\t */\n\t$.widget( 'wikibase.entitysearch', PARENT, {\n\n\t\t/**\n\t\t * @see jQuery.wikibase.entityselector.options\n\t\t */\n\t\toptions: {\n\t\t\tsuggestionsPlaceholder: null\n\t\t},\n\n\t\t/**\n\t\t * @see jQuery.wikibase.entityselector._create\n\t\t */\n\t\t_create: function () {\n\t\t\tvar self = this;\n\n\t\t\tPARENT.prototype._create.call( this );\n\n\t\t\tthis.element\n\t\t\t.on( 'eachchange.' + this.widgetName, function () {\n\t\t\t\tvar menu = self.options.menu;\n\t\t\t\tif (\n\t\t\t\t\tself.options.suggestionsPlaceholder\n\t\t\t\t\t// TODO: Store visibility in model\n\t\t\t\t\t// eslint-disable-next-line no-jquery/no-sizzle\n\t\t\t\t\t&& ( !menu.option( 'items' ).length || !menu.element.is( ':visible' ) )\n\t\t\t\t) {\n\t\t\t\t\tself.options.suggestionsPlaceholder.setVisibility( true );\n\t\t\t\t\t// Early update required for the suggestionsPlaceholder's visibility\n\t\t\t\t\tself._term = self.element.val();\n\t\t\t\t\tself._updateMenu( [] );\n\t\t\t\t}\n\t\t\t} );\n\t\t},\n\n\t\t/**\n\t\t * @see jQuery.wikibase.entityselector._createMenuItemFromSuggestion\n\t\t * @protected\n\t\t *\n\t\t * @param {Object} entityStub\n\t\t * @return {jQuery.wikibase.entityselector.Item}\n\t\t */\n\t\t_createMenuItemFromSuggestion: function ( entityStub ) {\n\t\t\tvar $label = this._createLabelFromSuggestion( entityStub ),\n\t\t\t\tvalue = entityStub.label || entityStub.id;\n\n\t\t\treturn new PARENT.Item( $label, value, entityStub );\n\t\t},\n\n\t\t/**\n\t\t * @see jQuery.ui.suggester._setOption\n\t\t */\n\t\t_setOption: function ( key, value ) {\n\t\t\tif ( key === 'suggestionsPlaceholder' ) {\n\t\t\t\tvar customItems = this.options.menu.option( 'customItems' );\n\n\t\t\t\tcustomItems.splice( customItems.indexOf( this.options.suggestionsPlaceholder ), 1 );\n\n\t\t\t\tif ( value instanceof $.ui.ooMenu.CustomItem ) {\n\t\t\t\t\tcustomItems.unshift( value );\n\t\t\t\t}\n\n\t\t\t\tthis._close();\n\t\t\t}\n\t\t\treturn PARENT.prototype._setOption.apply( this, arguments );\n\t\t},\n\n\t\t/**\n\t\t * @see jQuery.wikibase.entityselector._initMenu\n\t\t */\n\t\t_initMenu: function ( ooMenu ) {\n\t\t\tPARENT.prototype._initMenu.apply( this, arguments );\n\n\t\t\tif ( this.options.suggestionsPlaceholder ) {\n\t\t\t\tooMenu.option( 'customItems' ).unshift( this.options.suggestionsPlaceholder );\n\t\t\t}\n\n\t\t\tooMenu.element.addClass( 'wikibase-entitysearch-list' );\n\n\t\t\t$( ooMenu )\n\t\t\t.off( 'selected' )\n\t\t\t.on( 'selected.entitysearch', function ( event, item ) {\n\t\t\t\tif ( event.originalEvent\n\t\t\t\t\t&& /^key/.test( event.originalEvent.type )\n\t\t\t\t\t&& !( item instanceof $.ui.ooMenu.CustomItem )\n\t\t\t\t) {\n\t\t\t\t\twindow.location.href = item.getEntityStub().url;\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\treturn ooMenu;\n\t\t},\n\n\t\t/**\n\t\t * @see jQuery.ui.suggester._updateMenuVisibility\n\t\t */\n\t\t_updateMenuVisibility: function () {\n\t\t\tif ( this._term ) {\n\t\t\t\tthis._open();\n\t\t\t\tthis.repositionMenu();\n\t\t\t} else {\n\t\t\t\tthis._close();\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * @see jQuery.wikibase.entityselector._getSuggestions\n\t\t */\n\t\t_getSuggestions: function ( term ) {\n\t\t\tvar self = this,\n\t\t\t\tpromise = PARENT.prototype._getSuggestions.call( this, term );\n\n\t\t\treturn promise.done( function ( suggestions, searchTerm ) {\n\t\t\t\tif ( self.options.suggestionsPlaceholder ) {\n\t\t\t\t\tself.options.suggestionsPlaceholder.setVisibility( false );\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\n\t} );\n\n}() );\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/resources/parsers/getApiBasedValueParserConstructor.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/resources/parsers/getStore.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/resources/wikibase.EntityInitializer.js","messages":[{"ruleId":"jsdoc/no-undefined-types","severity":1,"message":"The type 'Thenable' is undefined.","line":20,"column":null,"nodeType":"Block","endLine":20,"endColumn":null},{"ruleId":"jsdoc/require-param-type","severity":1,"message":"Missing JSDoc @param \"configVarName\" type.","line":115,"column":null,"nodeType":"Block","endLine":115,"endColumn":null}],"errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/**\n * @license GPL-2.0-or-later\n *\n * @author Adrian Heine <adrian.heine@wikimedia.de>\n * @author H. Snater < mediawiki@snater.com >\n */\n( function ( wb ) {\n\t'use strict';\n\n\tvar config = require( './config.json' ),\n\t\tserialization = require( 'wikibase.serialization' );\n\n\t/**\n\t * Entity initializer.\n\t * Deserializes the entity passed to JavaScript via mw.config variable or\n\t * as entity object promise.\n\t *\n\t * @constructor\n\t *\n\t * @param {string|Thenable} arg Config variable name or entity object promise\n\t *\n\t * @throws {Error} if required parameter is not specified properly.\n\t */\n\tvar EntityInitializer = wb.EntityInitializer = function ( arg ) {\n\t\tvar entityPromise;\n\t\tif ( typeof arg === 'string' ) {\n\t\t\tentityPromise = getFromConfig( arg );\n\t\t} else if ( isThenable( arg ) ) {\n\t\t\tentityPromise = arg;\n\t\t} else {\n\t\t\tthrow new Error(\n\t\t\t\t'Config variable name or entity promise needs to be specified'\n\t\t\t);\n\t\t}\n\n\t\tthis._entityPromise = entityPromise;\n\t};\n\n\tEntityInitializer.newFromEntityLoadedHook = function () {\n\t\tvar entityPromise = $.Deferred( function ( deferred ) {\n\t\t\tmw.hook( 'wikibase.entityPage.entityLoaded' ).add( function ( entity ) {\n\t\t\t\tdeferred.resolve( entity );\n\t\t\t} );\n\t\t} ).promise();\n\n\t\treturn new EntityInitializer( entityPromise );\n\t};\n\n\t$.extend( EntityInitializer.prototype, {\n\n\t\t/**\n\t\t * @type {jQuery.Promise} Promise for serialized entity\n\t\t */\n\t\t_entityPromise: null,\n\n\t\t/**\n\t\t * Retrieves an entity from mw.config.\n\t\t *\n\t\t * @return {Object} jQuery Promise\n\t\t *         Resolved parameters:\n\t\t *         - {wikibase.datamodel.Entity}\n\t\t *         No rejected parameters.\n\t\t */\n\t\tgetEntity: function () {\n\t\t\tvar self = this;\n\n\t\t\treturn this._entityPromise.then( function ( entity ) {\n\t\t\t\treturn self._getDeserializer().then( function ( entityDeserializer ) {\n\t\t\t\t\treturn entityDeserializer.deserialize( entity );\n\t\t\t\t} );\n\t\t\t} );\n\t\t},\n\n\t\t/**\n\t\t * @return {Object} jQuery promise\n\t\t *         Resolved parameters:\n\t\t *         - {serialization.EntityDeserializer}\n\t\t *         No rejected parameters.\n\t\t */\n\t\t_getDeserializer: function () {\n\t\t\tvar entityDeserializer = new serialization.EntityDeserializer(),\n\t\t\t\tdeferred = $.Deferred();\n\n\t\t\tvar entityTypes = config.entityTypes;\n\t\t\tvar modules = [];\n\t\t\tvar typeNames = [];\n\t\t\tentityTypes.types.forEach( function ( type ) {\n\t\t\t\tvar deserializerFactoryFunction = entityTypes[ 'deserializer-factory-functions' ][ type ];\n\t\t\t\tif ( deserializerFactoryFunction ) {\n\t\t\t\t\tmodules.push( deserializerFactoryFunction );\n\t\t\t\t\ttypeNames.push( type );\n\t\t\t\t}\n\t\t\t} );\n\t\t\tmw.loader.using( modules, function ( require ) {\n\t\t\t\tmodules.forEach( function ( module, index ) {\n\t\t\t\t\tentityDeserializer.registerStrategy(\n\t\t\t\t\t\trequire( module )(),\n\t\t\t\t\t\ttypeNames[ index ]\n\t\t\t\t\t);\n\t\t\t\t} );\n\n\t\t\t\tdeferred.resolve( entityDeserializer );\n\t\t\t} );\n\t\t\treturn deferred.promise();\n\t\t}\n\t} );\n\n\tfunction isThenable( arg ) {\n\t\treturn typeof arg === 'object' && typeof arg.then === 'function';\n\t}\n\n\t/**\n\t * Get entity from config\n\t *\n\t * @param configVarName\n\t * @return {jQuery.Promise}\n\t *         Resolved parameters:\n\t *         - {object} Entity object\n\t *         No rejected parameters.\n\t */\n\tfunction getFromConfig( configVarName ) {\n\t\treturn $.Deferred( function ( deferred ) {\n\t\t\tmw.hook( 'wikipage.content' ).add( function () {\n\t\t\t\tvar serializedEntity = mw.config.get( configVarName );\n\n\t\t\t\tif ( serializedEntity === null ) {\n\t\t\t\t\tdeferred.reject();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tdeferred.resolve( JSON.parse( serializedEntity ) );\n\t\t\t} );\n\t\t} ).promise();\n\t}\n\n}( wikibase ) );\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/resources/wikibase.PropertyDataTypeStore.js","messages":[{"ruleId":"jsdoc/no-undefined-types","severity":1,"message":"The type 'EntityStore' is undefined.","line":8,"column":null,"nodeType":"Block","endLine":8,"endColumn":null},{"ruleId":"jsdoc/no-undefined-types","severity":1,"message":"The type 'EntityStore' is undefined.","line":28,"column":null,"nodeType":"Block","endLine":28,"endColumn":null}],"errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/**\n * @license GPL-2.0-or-later\n */\n( function () {\n\n\t/**\n\t * @param {Object} entityLoadedHook\n\t * @param {EntityStore} entityStore\n\t */\n\tfunction PropertyDataTypeStore( entityLoadedHook, entityStore ) {\n\t\tthis._entityLoadedHook = entityLoadedHook;\n\t\tthis._entityStore = entityStore;\n\t\tthis._propertyDataTypeMapping = {};\n\t}\n\n\t$.extend( PropertyDataTypeStore.prototype, {\n\t\t/**\n\t\t * @type {Object} map of property id to data type\n\t\t */\n\t\t_propertyDataTypeMapping: {},\n\n\t\t/**\n\t\t * @type {Object}\n\t\t */\n\t\t_entityLoadedHook: null,\n\n\t\t/**\n\t\t * @type {EntityStore}\n\t\t */\n\t\t_entityStore: null,\n\n\t\tsetDataTypeForProperty: function ( id, dataType ) {\n\t\t\tthis._propertyDataTypeMapping[ id ] = dataType;\n\t\t},\n\n\t\tgetDataTypeForProperty: function ( id ) {\n\t\t\tvar self = this;\n\n\t\t\tif ( this._propertyDataTypeMapping[ id ] ) {\n\t\t\t\treturn $.Deferred().resolve( this._propertyDataTypeMapping[ id ] );\n\t\t\t}\n\n\t\t\treturn this._getDataTypeFromExistingStatements( id )\n\t\t\t\t.catch( this._getDataTypeFromEntityStore.bind( this, id ) )\n\t\t\t\t.always( function ( dataType ) {\n\t\t\t\t\tself.setDataTypeForProperty( id, dataType );\n\t\t\t\t} );\n\t\t},\n\n\t\t_getDataTypeFromExistingStatements: function ( propertyId ) {\n\t\t\tvar dataTypePromise = $.Deferred(),\n\t\t\t\tself = this;\n\n\t\t\tthis._entityLoadedHook.add( function ( entity ) {\n\t\t\t\tvar dataType = self._findDataTypeInEntity( entity, propertyId );\n\t\t\t\tif ( dataType ) {\n\t\t\t\t\tdataTypePromise.resolve( dataType );\n\t\t\t\t} else {\n\t\t\t\t\tdataTypePromise.reject();\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\treturn dataTypePromise;\n\t\t},\n\n\t\t/**\n\t\t * Recursively traverses (pieces of) entity JSON and returns a property's data type if there is a statement for\n\t\t * it on the entity.\n\t\t *\n\t\t * @param {Object} node\n\t\t * @param {string} propertyId\n\t\t *\n\t\t * @return {null|string}\n\t\t */\n\t\t_findDataTypeInEntity: function ( node, propertyId ) {\n\t\t\tif ( !node || typeof node !== 'object' ) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tfor ( var i in node ) {\n\t\t\t\tif ( i === propertyId ) {\n\t\t\t\t\tvar dataTypeFromSnak = this._getDataTypeFromSnak( node[ i ][ 0 ] ); // may not exist (T249206)\n\t\t\t\t\tif ( dataTypeFromSnak ) {\n\t\t\t\t\t\treturn dataTypeFromSnak;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tvar dataType = this._findDataTypeInEntity( node[ i ], propertyId );\n\t\t\t\tif ( dataType ) {\n\t\t\t\t\treturn dataType;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn null;\n\t\t},\n\n\t\t_getDataTypeFromSnak: function ( snak ) {\n\t\t\treturn snak && snak.datatype || // if it's a qualifier/reference, the data type is at the top level\n\t\t\t\tsnak.mainsnak && snak.mainsnak.datatype; // main snak\n\t\t},\n\n\t\t_getDataTypeFromEntityStore: function ( propertyId ) {\n\t\t\treturn this._entityStore.get( propertyId ).then( function ( property ) {\n\t\t\t\tif ( !property ) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\n\t\t\t\treturn property.getDataTypeId();\n\t\t\t} );\n\t\t}\n\t} );\n\n\tmodule.exports = PropertyDataTypeStore;\n\n}() );\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/resources/wikibase.WikibaseContentLanguages.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/resources/wikibase.entityPage.entityLoaded.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/resources/wikibase.federatedPropertiesEditRequestFailureNotice.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/resources/wikibase.federatedPropertiesLeavingSiteNotice.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/resources/wikibase.getUserLanguages.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/resources/wikibase.sites.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/resources/wikibase.special/wikibase.special.languageLabelDescriptionAliases.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/resources/wikibase.special/wikibase.special.mergeItems.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/resources/wikibase.special/wikibase.special.newEntity.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/resources/wikibase.ui.entityViewInit.js","messages":[{"ruleId":"jsdoc/no-undefined-types","severity":1,"message":"The type 'CachingEntityStore' is undefined.","line":40,"column":null,"nodeType":"Block","endLine":40,"endColumn":null},{"ruleId":"jsdoc/no-undefined-types","severity":1,"message":"The type 'datamodel' is undefined.","line":53,"column":null,"nodeType":"Block","endLine":53,"endColumn":null},{"ruleId":"compat/compat","severity":2,"message":"performance is not supported in Safari 5.1, iOS Safari 6.0-6.1","line":359,"column":23,"nodeType":"MemberExpression","endLine":359,"endColumn":41},{"ruleId":"compat/compat","severity":2,"message":"performance is not supported in Safari 5.1, iOS Safari 6.0-6.1","line":359,"column":45,"nodeType":"MemberExpression","endLine":359,"endColumn":61},{"ruleId":"compat/compat","severity":2,"message":"performance is not supported in Safari 5.1, iOS Safari 6.0-6.1","line":412,"column":2,"nodeType":"MemberExpression","endLine":412,"endColumn":20}],"errorCount":3,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/**\n * @license GPL-2.0-or-later\n * @author H. Snater < mediawiki@snater.com >\n * @author Daniel Werner < daniel.a.r.werner@gmail.com >\n * @author Adrian Heine <adrian.heine@wikimedia.de>\n */\n( function ( wb, performance ) {\n\t'use strict';\n\n\tvar getExpertsStore = require( './experts/getStore.js' ),\n\t\tgetParserStore = require( './parsers/getStore.js' ),\n\t\tDefaultViewFactoryFactory = require( '../../view/resources/wikibase/view/ViewFactoryFactory.js' ),\n\t\tRevisionStore = require( '../../view/resources/wikibase/wikibase.RevisionStore.js' ),\n\t\tApiValueFormatterFactory = require( './formatters/ApiValueFormatterFactory.js' ),\n\t\tStructureEditorFactory = require( '../../view/resources/wikibase/view/StructureEditorFactory.js' ),\n\t\tCachingEntityStore = require( '../../view/resources/wikibase/store/store.CachingEntityStore.js' ),\n\t\tApiEntityStore = require( '../../view/resources/wikibase/store/store.ApiEntityStore.js' ),\n\t\tdataTypeStore = require( './dataTypes/wikibase.dataTypeStore.js' ),\n\t\tCachingEntityIdHtmlFormatter = require( '../../view/resources/wikibase/entityIdFormatter/CachingEntityIdHtmlFormatter.js' ),\n\t\tDataValueBasedEntityIdHtmlFormatter = require( '../../view/resources/wikibase/entityIdFormatter/DataValueBasedEntityIdHtmlFormatter.js' ),\n\t\tCachingEntityIdPlainFormatter = require( '../../view/resources/wikibase/entityIdFormatter/CachingEntityIdPlainFormatter.js' ),\n\t\tDataValueBasedEntityIdPlainFormatter = require( '../../view/resources/wikibase/entityIdFormatter/DataValueBasedEntityIdPlainFormatter.js' ),\n\t\tToolbarFactory = require( '../../view/resources/wikibase/view/ToolbarFactory.js' ),\n\t\tPropertyDataTypeStore = require( './wikibase.PropertyDataTypeStore.js' ),\n\t\tconfig = require( './config.json' ),\n\t\tdatamodel = require( 'wikibase.datamodel' ),\n\t\tserialization = require( 'wikibase.serialization' );\n\n\t/**\n\t * @return {boolean}\n\t */\n\tfunction isEditable() {\n\t\treturn mw.config.get( 'wbIsEditView' )\n\t\t\t&& mw.config.get( 'wgRelevantPageIsProbablyEditable' );\n\t}\n\n\t/**\n\t * @param {wikibase.api.RepoApi} repoApi\n\t * @param {string} languageCode The language code of the ui language\n\t * @return {CachingEntityStore}\n\t */\n\tfunction buildEntityStore( repoApi, languageCode ) {\n\t\treturn new CachingEntityStore(\n\t\t\tnew ApiEntityStore(\n\t\t\t\trepoApi,\n\t\t\t\tnew serialization.EntityDeserializer(),\n\t\t\t\t[ languageCode ]\n\t\t\t)\n\t\t);\n\t}\n\n\t/**\n\t * @param {datamodel.Entity} entity\n\t * @param {jQuery} $entityview\n\t * @return {string} The name of the entity view widget class\n\t *\n\t * @throws {Error} if no widget to render the entity exists.\n\t */\n\tfunction createEntityView( entity, $entityview ) {\n\t\tvar currentRevision, revisionStore, entityChangersFactory,\n\t\t\tviewFactoryArguments, ViewFactoryFactory, viewFactory, entityView,\n\t\t\trepoConfig = mw.config.get( 'wbRepo' ),\n\t\t\trepoApiUrl = repoConfig.url + repoConfig.scriptPath + '/api.php',\n\t\t\tmwApi = wb.api.getLocationAgnosticMwApi( repoApiUrl ),\n\t\t\trepoApi = new wb.api.RepoApi( mwApi, mw.config.get( 'wgUserLanguage' ) ),\n\t\t\tuserLanguages = wb.getUserLanguages(),\n\t\t\tentityStore = buildEntityStore( repoApi, userLanguages[ 0 ] ),\n\t\t\tcontentLanguages = new wikibase.WikibaseContentLanguages(),\n\t\t\tformatterFactory = new ApiValueFormatterFactory(\n\t\t\t\tnew wb.api.FormatValueCaller(\n\t\t\t\t\trepoApi,\n\t\t\t\t\tdataTypeStore\n\t\t\t\t),\n\t\t\t\tuserLanguages[ 0 ]\n\t\t\t),\n\t\t\tparserStore = getParserStore( repoApi ),\n\t\t\thtmlDataValueEntityIdFormatter = formatterFactory.getFormatter( null, null, 'text/html' ),\n\t\t\tplaintextDataValueEntityIdFormatter = formatterFactory.getFormatter( null, null, 'text/plain' ),\n\t\t\tentityIdParser = new ( parserStore.getParser( datamodel.EntityId.TYPE ) )( { lang: userLanguages[ 0 ] } ),\n\t\t\ttoolbarFactory = new ToolbarFactory(),\n\t\t\tstructureEditorFactory = new StructureEditorFactory( toolbarFactory ),\n\t\t\tstartEditingCallback = function () {\n\t\t\t\treturn $.Deferred().resolve().promise();\n\t\t\t},\n\t\t\tentityNamespace = entity.getType(),\n\t\t\twbCurRev = mw.config.get( 'wbCurrentRevision' );\n\n\t\tif ( wbCurRev === null ) {\n\t\t\tcurrentRevision = mw.config.get( 'wgCurRevisionId' );\n\t\t} else {\n\t\t\tcurrentRevision = wbCurRev;\n\t\t}\n\n\t\trevisionStore = new RevisionStore( currentRevision );\n\n\t\tentityChangersFactory = new wb.entityChangers.EntityChangersFactory(\n\t\t\trepoApi,\n\t\t\trevisionStore,\n\t\t\tentity,\n\t\t\tfunction ( hookName ) {\n\t\t\t\tvar hook = mw.hook( hookName );\n\t\t\t\thook.fire.apply( hook, Array.prototype.slice.call( arguments, 1 ) );\n\t\t\t}\n\t\t);\n\n\t\tviewFactoryArguments = [\n\t\t\ttoolbarFactory,\n\t\t\tentityChangersFactory,\n\t\t\tstructureEditorFactory,\n\t\t\tcontentLanguages,\n\t\t\tdataTypeStore,\n\t\t\tnew CachingEntityIdHtmlFormatter(\n\t\t\t\tnew DataValueBasedEntityIdHtmlFormatter( entityIdParser, htmlDataValueEntityIdFormatter )\n\t\t\t),\n\t\t\tnew CachingEntityIdPlainFormatter(\n\t\t\t\tnew DataValueBasedEntityIdPlainFormatter( entityIdParser, plaintextDataValueEntityIdFormatter )\n\t\t\t),\n\t\t\tnew PropertyDataTypeStore( mw.hook( 'wikibase.entityPage.entityLoaded' ), entityStore ),\n\t\t\tgetExpertsStore( dataTypeStore ),\n\t\t\tformatterFactory,\n\t\t\t{\n\t\t\t\tgetMessage: function ( key, params ) {\n\t\t\t\t\treturn mw.msg.apply( mw, [ key ].concat( params || [] ) );\n\t\t\t\t}\n\t\t\t},\n\t\t\tparserStore,\n\t\t\tuserLanguages,\n\t\t\trepoApiUrl,\n\t\t\tconfig.geoShapeStorageApiEndpoint\n\t\t];\n\t\tvar hookResults = [];\n\t\tmw.hook( 'wikibase.entityPage.entityView.viewFactoryFactory.required' ).fire(\n\t\t\tentityNamespace,\n\t\t\tfunction ( promise ) {\n\t\t\t\thookResults.push( promise );\n\t\t\t}\n\t\t);\n\n\t\treturn $.when.apply( $, hookResults ).then( function () {\n\t\t\tViewFactoryFactory = wb[ entityNamespace ] && wb[ entityNamespace ].view\n\t\t\t\t&& wb[ entityNamespace ].view.ViewFactoryFactory\n\t\t\t\t|| DefaultViewFactoryFactory;\n\n\t\t\tviewFactory = ( new ViewFactoryFactory() ).getViewFactory( isEditable(), viewFactoryArguments );\n\n\t\t\tentityView = viewFactory.getEntityView( startEditingCallback, entity, $entityview );\n\n\t\t\treturn entityView.widgetName;\n\t\t} );\n\n\t}\n\n\t/**\n\t * @param {jQuery.wikibase.entityview} $entityview\n\t * @param {string} viewName\n\t * @param {string} entityType\n\t */\n\tfunction attachAnonymousEditWarningTrigger( $entityview, viewName, entityType ) {\n\t\tif ( !mw.user || !mw.user.isAnon() ) {\n\t\t\treturn;\n\t\t}\n\n\t\t$entityview.on( viewName + 'afterstartediting', function () {\n\t\t\tif ( !$.find( '.mw-notification-content' ).length\n\t\t\t\t&& !mw.cookie.get( 'wikibase-no-anonymouseditwarning' )\n\t\t\t) {\n\t\t\t\tvar message = mw.message(\n\t\t\t\t\t'wikibase-anonymouseditwarning',\n\t\t\t\t\t// The following messages can be used here:\n\t\t\t\t\t// * wikibase-entity-item\n\t\t\t\t\t// * wikibase-entity-property\n\t\t\t\t\t// * wikibase-entity-query\n\t\t\t\t\tmw.msg( 'wikibase-entity-' + entityType )\n\t\t\t\t);\n\t\t\t\tmw.notify( message, { autoHide: false, type: 'warn', tag: 'wikibase-anonymouseditwarning' } );\n\t\t\t}\n\t\t} );\n\t}\n\n\t/**\n\t * Update the state of the watch link if the user has watchdefault enabled.\n\t */\n\tfunction attachWatchLinkUpdater( $entityview, viewName ) {\n\t\tvar update;\n\n\t\tif ( mw.loader.getState( 'mediawiki.page.watch.ajax' ) !== 'ready' || !mw.user.options.get( 'watchdefault' ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\tupdate = require( 'mediawiki.page.watch.ajax' ).updateWatchLink;\n\n\t\tfunction updateWatchLink() {\n\t\t\t// All four supported skins are using the same ID, the other selectors\n\t\t\t// in mediawiki.page.watch.ajax.js are undocumented and probably legacy stuff\n\t\t\tvar $link = $( '#ca-watch' ).find( 'a' );\n\n\t\t\t// Skip if page is already watched and there is no \"watch this page\" link\n\t\t\t// Note: The exposed function fails for empty jQuery collections\n\t\t\tif ( !$link.length ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tupdate( $link, 'watch', 'loading' );\n\n\t\t\tvar api = new mw.Api();\n\n\t\t\tapi.get( {\n\t\t\t\tformatversion: 2,\n\t\t\t\taction: 'query',\n\t\t\t\tprop: 'info',\n\t\t\t\tinprop: 'watched',\n\t\t\t\tpageids: mw.config.get( 'wgArticleId' )\n\t\t\t} ).done( function ( data ) {\n\t\t\t\tvar watched = data.query && data.query.pages[ 0 ]\n\t\t\t\t\t&& data.query.pages[ 0 ].watched;\n\t\t\t\tupdate( $link, watched ? 'unwatch' : 'watch' );\n\t\t\t} ).fail( function () {\n\t\t\t\tupdate( $link, 'watch' );\n\t\t\t} );\n\t\t}\n\n\t\t$entityview.on( viewName + 'afterstopediting', function ( event, dropValue ) {\n\t\t\tif ( !dropValue ) {\n\t\t\t\tupdateWatchLink();\n\t\t\t}\n\t\t} );\n\t}\n\n\t/**\n\t * @param {jQuery} $entityview\n\t * @param {jQuery} $origin\n\t * @param {string} gravity\n\t */\n\tfunction showCopyrightTooltip( $entityview, $origin, gravity ) {\n\t\tif ( !mw.config.exists( 'wbCopyright' ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\tgravity = gravity || 'nw';\n\n\t\tvar copyRight = mw.config.get( 'wbCopyright' ),\n\t\t\tcopyRightVersion = copyRight.version,\n\t\t\tcopyRightMessageHtml = copyRight.messageHtml,\n\t\t\tcookieKey = 'wikibase.acknowledgedcopyrightversion',\n\t\t\toptionsKey = 'wb-acknowledgedcopyrightversion';\n\n\t\tif ( mw.cookie.get( cookieKey ) === copyRightVersion\n\t\t\t|| mw.user.options.get( optionsKey ) === copyRightVersion\n\t\t) {\n\t\t\treturn;\n\t\t}\n\n\t\tvar $message = $( '<span><p>' + copyRightMessageHtml + '</p></span>' )\n\t\t\t\t.addClass( 'wikibase-copyrightnotification-container' ),\n\t\t\t$hideMessage = $( '<a>' )\n\t\t\t\t.text( mw.msg( 'wikibase-copyrighttooltip-acknowledge' ) )\n\t\t\t\t.appendTo( $message ),\n\t\t\teditableTemplatedWidget = $origin.data( 'EditableTemplatedWidget' );\n\n\t\t// TODO: Use notification system for copyright messages on all widgets.\n\t\tif ( editableTemplatedWidget\n\t\t\t&& !( editableTemplatedWidget instanceof $.wikibase.statementview )\n\t\t\t&& !( editableTemplatedWidget instanceof $.wikibase.aliasesview )\n\t\t) {\n\t\t\teditableTemplatedWidget.notification( $message, 'wb-edit' );\n\n\t\t\t$hideMessage.on( 'click', function ( event ) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\teditableTemplatedWidget.notification();\n\t\t\t\tif ( mw.user.isAnon() ) {\n\t\t\t\t\tmw.cookie.set( cookieKey, copyRightVersion, { expires: 3 * 365 * 24 * 60 * 60, path: '/' } );\n\t\t\t\t} else {\n\t\t\t\t\tvar api = new mw.Api();\n\t\t\t\t\tapi.saveOption( optionsKey, copyRightVersion );\n\t\t\t\t}\n\t\t\t} );\n\t\t\treturn;\n\t\t}\n\n\t\tvar edittoolbar = $origin.data( 'edittoolbar' );\n\n\t\tif ( !edittoolbar ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Tooltip gets its own anchor since other elements might have their own tooltip.\n\t\t// we don't even have to add this new toolbar element to the toolbar, we only use it\n\t\t// to manage the tooltip which will have the 'save' button as element to point to.\n\t\t// The 'save' button can still have its own tooltip though.\n\t\tvar $messageAnchor = $( '<span>' )\n\t\t\t.appendTo( document.body )\n\t\t\t.toolbaritem()\n\t\t\t.wbtooltip( {\n\t\t\t\tcontent: $message,\n\t\t\t\tpermanent: true,\n\t\t\t\tgravity: gravity,\n\t\t\t\t$anchor: edittoolbar.getContainer()\n\t\t\t} );\n\n\t\t$hideMessage.on( 'click', function ( event ) {\n\t\t\tevent.preventDefault();\n\t\t\t$messageAnchor.data( 'wbtooltip' ).degrade( true );\n\t\t\t$( window ).off( '.wbCopyrightTooltip' );\n\t\t\tif ( mw.user.isAnon() ) {\n\t\t\t\tmw.cookie.set( cookieKey, copyRightVersion, { expires: 3 * 365 * 24 * 60 * 60, path: '/' } );\n\t\t\t} else {\n\t\t\t\tvar api = new mw.Api();\n\t\t\t\tapi.saveOption( optionsKey, copyRightVersion );\n\t\t\t}\n\t\t} );\n\n\t\t$messageAnchor.data( 'wbtooltip' ).show();\n\n\t\t// destroy tooltip after edit mode gets closed again:\n\t\t$entityview\n\t\t.one( 'entityviewafterstopediting.wbCopyRightTooltip', function ( event, origin ) {\n\t\t\tvar tooltip = $messageAnchor.data( 'wbtooltip' );\n\t\t\tif ( tooltip ) {\n\t\t\t\ttooltip.degrade( true );\n\t\t\t}\n\t\t\t$( window ).off( '.wbCopyrightTooltip' );\n\t\t} );\n\n\t\t$( window ).one(\n\t\t\t'scroll.wbCopyrightTooltip touchmove.wbCopyrightTooltip resize.wbCopyrightTooltip',\n\t\t\tfunction () {\n\t\t\t\tvar tooltip = $messageAnchor.data( 'wbtooltip' );\n\t\t\t\tif ( tooltip ) {\n\t\t\t\t\t$messageAnchor.data( 'wbtooltip' ).hide();\n\t\t\t\t}\n\t\t\t\t$entityview.off( '.wbCopyRightTooltip' );\n\t\t\t}\n\t\t);\n\t}\n\n\t/**\n\t * @param {jQuery} $entityview\n\t */\n\tfunction attachCopyrightTooltip( $entityview ) {\n\t\t$entityview.on(\n\t\t\t'entitytermsafterstartediting sitelinkgroupviewafterstartediting statementviewafterstartediting',\n\t\t\tfunction ( event ) {\n\t\t\t\tvar $target = $( event.target ),\n\t\t\t\t\tgravity = 'sw';\n\n\t\t\t\tif ( $target.data( 'sitelinkgroupview' ) ) {\n\t\t\t\t\tgravity = 'nw';\n\t\t\t\t} else if ( $target.data( 'entitytermsview' ) ) {\n\t\t\t\t\tgravity = 'w';\n\t\t\t\t}\n\n\t\t\t\tshowCopyrightTooltip( $entityview, $target, gravity );\n\t\t\t}\n\t\t);\n\t}\n\n\tmw.hook( 'wikipage.content' ).add( function () {\n\t\t// This is copied from startup.js in MediaWiki core.\n\t\tvar mwPerformance = window.performance && performance.mark ? performance : {\n\t\t\tmark: function () {}\n\t\t};\n\t\tmwPerformance.mark( 'wbInitStart' );\n\n\t\tvar $entityview = $( '.wikibase-entityview' );\n\t\tvar canEdit = isEditable();\n\n\t\twb.EntityInitializer.newFromEntityLoadedHook().getEntity().done( function ( entity ) {\n\t\t\tvar viewNamePromise = createEntityView( entity, $entityview.first() );\n\t\t\tviewNamePromise.then( function ( viewName ) {\n\t\t\t\tif ( canEdit ) {\n\t\t\t\t\tattachAnonymousEditWarningTrigger( $entityview, viewName, entity.getType() );\n\t\t\t\t\tattachWatchLinkUpdater( $entityview, viewName );\n\t\t\t\t}\n\n\t\t\t\tmw.hook( 'wikibase.entityPage.entityView.rendered' ).fire();\n\n\t\t\t\tmwPerformance.mark( 'wbInitEnd' );\n\t\t\t} );\n\t\t} );\n\n\t\tif ( canEdit ) {\n\t\t\t$entityview\n\t\t\t.on( 'entitytermsviewchange entitytermsviewafterstopediting', function ( event, lang ) {\n\t\t\t\tvar userLanguage = mw.config.get( 'wgUserLanguage' );\n\n\t\t\t\tif ( typeof lang === 'string' && lang !== userLanguage ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tvar $entitytermsview = $( event.target ),\n\t\t\t\t\tentitytermsview = $entitytermsview.data( 'entitytermsview' ),\n\t\t\t\t\tfingerprint = entitytermsview.value(),\n\t\t\t\t\tlabel = fingerprint.getLabelFor( userLanguage ),\n\t\t\t\t\tisEmpty = !label || label.getText() === '';\n\n\t\t\t\t$( 'title' ).text(\n\t\t\t\t\tmw.msg( 'pagetitle', isEmpty ? mw.config.get( 'wgTitle' ) : label.getText() )\n\t\t\t\t);\n\n\t\t\t\t$( 'h1' ).find( '.wikibase-title' )\n\t\t\t\t\t.toggleClass( 'wb-empty', isEmpty )\n\t\t\t\t\t.find( '.wikibase-title-label' )\n\t\t\t\t\t.text( isEmpty ? mw.msg( 'wikibase-label-empty' ) : label.getText() );\n\t\t\t} );\n\n\t\t\tattachCopyrightTooltip( $entityview );\n\t\t}\n\t} );\n\n}(\n\twikibase,\n\twindow.performance\n) );\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/resources/wikibase.ui.entitysearch.js","messages":[{"ruleId":"no-shadow","severity":1,"message":"'$form' is already declared in the upper scope on line 12 column 7.","line":21,"column":21,"nodeType":"Identifier","messageId":"noShadow","endLine":21,"endColumn":26}],"errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/**\n * Replacing the native MediaWiki search suggestions with the jQuery.wikibase.entitysearch widget.\n *\n * @license GPL-2.0-or-later\n * @author H. Snater < mediawiki@snater.com >\n */\n( function () {\n\t'use strict';\n\trequire( './jquery.wikibase/jquery.wikibase.entitysearch.js' );\n\n\t$( function () {\n\t\tvar $form = $( '#searchform ' ),\n\t\t\t$input = $( '#searchInput' ),\n\t\t\t// Both inputs must be named \"search\" to support Firefox' smart keyword feature (T60467)\n\t\t\t$hiddenInput = $( '<input>' ).attr( { type: 'hidden', name: 'search' } );\n\n\t\t/**\n\t\t * @param {jQuery} $form\n\t\t * @return {string}\n\t\t */\n\t\tfunction getHref( $form ) {\n\t\t\tvar href = $form.attr( 'action' ),\n\t\t\t\tparams = {};\n\n\t\t\thref += href.indexOf( '?' ) === -1 ? '?' : '&';\n\n\t\t\t$form.serializeArray().forEach( function ( param ) {\n\t\t\t\tparams[ param.name ] = param.value;\n\t\t\t} );\n\n\t\t\tparams.search = $input.val();\n\n\t\t\treturn href + $.param( params );\n\t\t}\n\n\t\t/**\n\t\t * Updates the suggestion list special item that triggers a full-text search.\n\t\t *\n\t\t * @param {jQuery.ui.ooMenu.CustomItem} searchContaining\n\t\t */\n\t\tfunction updateSuggestionSpecial( searchContaining ) {\n\t\t\tvar $suggestionsSpecial = $( '.wb-entitysearch-suggestions .suggestions-special' );\n\t\t\t$suggestionsSpecial.find( '.special-query' ).text( $input.val() );\n\n\t\t\tsearchContaining.setLink( getHref( $form ) + '&fulltext=1' );\n\t\t}\n\n\t\t/**\n\t\t * Removes the native search box suggestion list.\n\t\t *\n\t\t * @param {HTMLElement} input Search box node\n\t\t */\n\t\tfunction removeSuggestionContext( input ) {\n\t\t\tvar context = $( input ).data( 'suggestionsContext' );\n\n\t\t\tif ( context && !context._wbDisabled ) {\n\t\t\t\t// Native fetch() updates/re-sets the data attribute with the suggestion context.\n\t\t\t\tcontext.config.fetch = function () {};\n\t\t\t\t// Flag as disabled so we don't keep overwriting `fetch`, but don't\n\t\t\t\t// delete context completely, in case there are some requests still\n\t\t\t\t// in-flight. T105637\n\t\t\t\tcontext._wbDisabled = true;\n\t\t\t}\n\t\t}\n\n\t\tvar suggestionsPlaceholder = new $.ui.ooMenu.CustomItem(\n\t\t\t$( '<div>' ).append( $.createSpinner() )\n\t\t);\n\n\t\tvar $searchContaining = $( '<div>' )\n\t\t\t.addClass( 'suggestions-special' )\n\t\t\t.append(\n\t\t\t\t$( '<div>' )\n\t\t\t\t\t.addClass( 'special-label' )\n\t\t\t\t\t.text( mw.msg( 'searchsuggest-containing' ) ),\n\t\t\t\t$( '<div>' )\n\t\t\t\t\t.addClass( 'special-query' )\n\t\t\t);\n\n\t\tvar searchContaining = new $.ui.ooMenu.CustomItem( $searchContaining, null, function () {\n\t\t\t$form.trigger( 'submit' );\n\t\t}, 'wb-entitysearch-suggestions' );\n\n\t\tvar $searchMenu = $( '<ul>' ).ooMenu( {\n\t\t\tcustomItems: [ searchContaining ]\n\t\t} );\n\n\t\t// Must be placed in that order to support Firefox' smart keyword feature (T60467)\n\t\t$input.before( $hiddenInput );\n\n\t\t$input\n\t\t.one( 'eachchange.entitysearch', function () {\n\t\t\tremoveSuggestionContext( this );\n\t\t} )\n\t\t.entitysearch( {\n\t\t\turl: mw.config.get( 'wgServer' ) + mw.config.get( 'wgScriptPath' ) + '/api.php',\n\t\t\tmenu: $searchMenu.data( 'ooMenu' ),\n\t\t\tposition: $.extend(\n\t\t\t\t{},\n\t\t\t\t$.wikibase.entityselector.prototype.options.position,\n\t\t\t\t{ offset: '-1 2' }\n\t\t\t),\n\t\t\tconfineMinWidthTo: $form,\n\t\t\tsuggestionsPlaceholder: suggestionsPlaceholder\n\t\t} )\n\t\t.on( 'entityselectoropen', function ( event ) {\n\t\t\tupdateSuggestionSpecial( searchContaining );\n\t\t} )\n\t\t.on( 'eachchange', function ( event, oldVal ) {\n\t\t\t$hiddenInput.val( '' );\n\t\t\tupdateSuggestionSpecial( searchContaining );\n\t\t} )\n\t\t.on( 'entityselectorselected', function ( event, entityId ) {\n\t\t\t$hiddenInput.val( entityId );\n\t\t} );\n\n\t\t// TODO: Re-evaluate entity selector input (e.g. hitting \"Go\" after having hit \"Search\"\n\t\t// before. However, this will require triggering the entity selector's API call and waiting\n\t\t// for its response.\n\n\t\t$( '#searchButton' ).on( 'click keydown', function ( event ) {\n\t\t\tif ( !$input.data( 'entityselector' ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// If an entity is selected, redirect to that entity's page.\n\t\t\tif ( event.type === 'click'\n\t\t\t\t|| event.keyCode === $.ui.keyCode.ENTER\n\t\t\t\t|| event.keyCode === $.ui.keyCode.SPACE\n\t\t\t) {\n\t\t\t\tvar entity = $input.data( 'entityselector' ).selectedEntity();\n\t\t\t\tif ( entity && entity.url ) {\n\t\t\t\t\tevent.preventDefault(); // Prevent default form submit action.\n\t\t\t\t\twindow.location.href = entity.url;\n\t\t\t\t}\n\t\t\t}\n\n\t\t} );\n\n\t\t// Default form submit action: Imitate full-text search.\n\t\t// Since we are using the entity selector, if an entity is selected, the entity id is stored\n\t\t// in a hidden input element (which has ripped the \"name\" attribute from the original search\n\t\t// box). Therefore, the entity id needs to be replaced by the actual search box (entity\n\t\t// selector) content.\n\t\t$form.on( 'submit', function ( event ) {\n\t\t\t$( this ).find( 'input[name=\"search\"]' ).val( $input.val() );\n\t\t} );\n\n\t} );\n\n}() );\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/sql/abstract/term_store.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/sql/abstract/wb_changes.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/sql/abstract/wb_changes_dispatch.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/sql/abstract/wb_changes_subscription.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/sql/abstract/wb_id_counters.json","messages":[{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":7,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":7,"endColumn":5},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":8,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":8,"endColumn":5},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":9,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":9,"endColumn":5},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":12,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":12,"endColumn":5},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":13,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":13,"endColumn":5},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":14,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":14,"endColumn":5}],"errorCount":6,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"source":"[\n\t{\n\t\t\"name\": \"wb_id_counters\",\n\t\t\"comment\": \"Unique ID generator.\",\n\t\t\"columns\": [\n\t\t\t{\n\t\t\t  \"name\": \"id_value\",\n\t\t\t  \"type\": \"integer\",\n\t\t\t  \"options\": { \"unsigned\": true, \"notnull\": true }\n\t\t\t},\n\t\t\t{\n\t\t\t  \"name\": \"id_type\",\n\t\t\t  \"type\": \"binary\",\n\t\t\t  \"options\": { \"length\": 32, \"notnull\": true }\n\t\t\t}\n\t\t],\n\t\t\"indexes\": [\n\t\t\t{ \"name\": \"wb_id_counters_type\", \"columns\": [ \"id_type\" ], \"unique\": true }\n\t\t],\n\t\t\"pk\": []\n\t}\n]\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/sql/abstract/wb_items_per_site.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/sql/abstract/wb_property_info.json","messages":[{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":6,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":6,"endColumn":5},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":7,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":7,"endColumn":5},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":8,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":8,"endColumn":5},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":16,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":16,"endColumn":5},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":17,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":17,"endColumn":5},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":18,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":18,"endColumn":5},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":22,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":22,"endColumn":4}],"errorCount":7,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"source":"[\n\t{\n\t\t\"name\": \"wb_property_info\",\n\t\t\"columns\": [\n\t\t\t{\n\t\t\t  \"name\": \"pi_property_id\",\n\t\t\t  \"type\": \"integer\",\n\t\t\t  \"options\": { \"unsigned\": true, \"notnull\": true }\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"name\": \"pi_type\",\n\t\t\t\t\"type\": \"binary\",\n\t\t\t\t\"options\": { \"length\": 32, \"notnull\": true }\n\t\t\t},\n\t\t\t{\n\t\t\t  \"name\": \"pi_info\",\n\t\t\t  \"type\": \"blob\",\n\t\t\t  \"options\": { \"length\": 65535, \"notnull\": true }\n\t\t\t}\n\t\t],\n\t\t\"indexes\": [\n\t\t  { \"name\": \"pi_type\", \"columns\": [ \"pi_type\" ], \"unique\": false }\n\t\t],\n\t\t\"pk\": [ \"pi_property_id\" ]\n\t}\n]\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/sql/abstractSchemaChanges/patch-wb_changes_dispatch-make-chd_seen-unsigned.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/api/editentity.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/api/getentities.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/api/setclaim.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/api/setlabel-removed.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/api/setlabel.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/api/setreference.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/federatedProperties/api-entity-search-helper-test-data-emptyResponse.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/federatedProperties/api-entity-search-helper-test-data-entityIdResponse.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/federatedProperties/api-entity-search-helper-test-data-errorResponse.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/federatedProperties/api-entity-search-helper-test-data-filteredResult.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/federatedProperties/api-entity-search-helper-test-data-multipleEntityIdResponse.json","messages":[{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":3,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":3,"endColumn":4},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":7,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":7,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":8,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":8,"endColumn":3},{"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},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":10,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":10,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":11,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":11,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":12,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":12,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":13,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":13,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":14,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":14,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":15,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":15,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":16,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":16,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":17,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":17,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":18,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":18,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":19,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":19,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":20,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":20,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":21,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":21,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":22,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":22,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":25,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":25,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":26,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":26,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":27,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":27,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":28,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":28,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":29,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":29,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":30,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":30,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":31,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":31,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":32,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":32,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":33,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":33,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":34,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":34,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":35,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":35,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":36,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":36,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":37,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":37,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":38,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":38,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":39,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":39,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":40,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":40,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":41,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":41,"endColumn":3}],"errorCount":34,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"source":"{\n\t\"searchinfo\": {\n  \t\"search\": \"P147\"\n\t},\n\t\"search\": [\n\t\t{\n\t  \"repository\": \"wikidata\",\n\t  \"id\": \"P147\",\n\t  \"concepturi\": \"https://wikidata.beta.wmflabs.org/entity/P147\",\n\t  \"title\": \"Property:P147\",\n\t  \"pageid\": 9721,\n\t  \"url\": \"https://wikidata.beta.wmflabs.org/wiki/Property:P147\",\n\t  \"datatype\": \"string\",\n\t  \"label\": \"FpznjfxN\",\n\t  \"description\": \"RqPBMCLjaaqtCUSfLxWU\",\n\t  \"match\": {\n\t  \"type\": \"entityId\",\n\t  \"text\": \"P147\"\n\t  },\n\t  \"aliases\": [\n\t  \t\"P147\"\n\t  ]\n\t\t},\n\t\t{\n\t  \"repository\": \"wikidata\",\n\t  \"id\": \"P160020\",\n\t  \"concepturi\": \"https://wikidata.beta.wmflabs.org/entity/P160020\",\n\t  \"title\": \"Property:P160020\",\n\t  \"pageid\": 511394,\n\t  \"url\": \"https://wikidata.beta.wmflabs.org/wiki/Property:P160020\",\n\t  \"datatype\": \"monolingualtext\",\n\t  \"label\": \"title\",\n\t  \"description\": \"+++ Used for testing data bridge reference rendering +++ published title of a work, such as a newspaper article, a literary work, a website, or a performance work.\",\n\t  \"match\": {\n\t  \"type\": \"alias\",\n\t  \"language\": \"en\",\n\t  \"text\": \"P1476\"\n\t  },\n\t  \"aliases\": [\n\t  \t\"P1476\"\n\t  ]\n\t\t}\n\t],\n\t\"success\": 1\n}\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/federatedProperties/api-entity-search-helper-test-data-oneResponse.json","messages":[{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":7,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":7,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":8,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":8,"endColumn":3},{"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},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":10,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":10,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":11,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":11,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":12,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":12,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":13,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":13,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":14,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":14,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":15,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":15,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":16,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":16,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":20,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":20,"endColumn":3}],"errorCount":11,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"source":"{\n\t\"searchinfo\": {\n\t\t\"search\": \"Publikationsdatum\"\n\t},\n\t\"search\": [\n\t\t{\n\t  \"repository\": \"local\",\n\t  \"id\": \"P14\",\n\t  \"concepturi\": \"https://wikidata.beta.wmflabs.org/entity/P14\",\n\t  \"title\": \"Property:P14\",\n\t  \"pageid\": 6426,\n\t  \"url\": \"https://wikidata.beta.wmflabs.org/wiki/Property:P14\",\n\t  \"datatype\": \"string\",\n\t  \"label\": \"Publikationsdatum\",\n\t  \"description\": \"Beschreibung deutsch\",\n\t  \"match\": {\n\t\t\t\t\"type\": \"label\",\n\t\t\t\t\"language\": \"de\",\n\t\t\t\t\"text\": \"Publikationsdatum\"\n\t  }\n\t\t}\n\t],\n\t\"success\": 1\n}\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/federatedProperties/api-entity-search-helper-test-data-twoResponse.json","messages":[{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":3,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":3,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":6,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":6,"endColumn":3},{"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},{"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},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":18,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":18,"endColumn":4},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":20,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":20,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":21,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":21,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":31,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":31,"endColumn":4},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":32,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":32,"endColumn":4},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":33,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":33,"endColumn":4},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":35,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":35,"endColumn":3}],"errorCount":11,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"source":"{\n\t\"searchinfo\": {\n\t  \"search\": \"publication date\"\n\t},\n\t\"search\": [\n\t  {\n\t\t\t\"repository\": \"local\",\n\t\t\t\"id\": \"P577\",\n\t\t\t\"concepturi\": \"http://www.wikidata.org/entity/P577\",\n\t\t\t\"title\": \"Property:P577\",\n\t\t\t\"pageid\": 15087952,\n\t\t\t\"url\": \"//www.wikidata.org/wiki/Property:P577\",\n\t\t\t\"datatype\": \"time\",\n\t\t\t\"label\": \"TEST: This result deliberately only has a label returned\",\n\t\t\t\"match\": {\n\t\t  \"type\": \"label\",\n\t\t  \"language\": \"en\",\n\t\t  \"text\": \"publication date\"\n\t\t\t}\n\t  },\n\t  {\n\t\t\t\"repository\": \"local\",\n\t\t\t\"id\": \"P14\",\n\t\t\t\"concepturi\": \"https://wikidata.beta.wmflabs.org/entity/P14\",\n\t\t\t\"title\": \"Property:P14\",\n\t\t\t\"pageid\": 6426,\n\t\t\t\"url\": \"https://wikidata.beta.wmflabs.org/wiki/Property:P14\",\n\t\t\t\"datatype\": \"string\",\n\t\t\t\"description\": \"TEST: This result deliberately only has a description returned\",\n\t\t\t\"match\": {\n\t\t  \"type\": \"label\",\n\t\t  \"language\": \"en\",\n\t\t  \"text\": \"publication date\"\n\t\t\t}\n\t  }\n\t],\n\t\"success\": 1\n}\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/federatedProperties/api-entity-search-helper-test-data-unexpectedResponse.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-p18-de.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-p18-en-de.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-p18-en.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-p18-p31-de.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-p18-p31-en-de.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-p18-p31-en.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-p31-de.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-p31-en-de.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-p31-en.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/federatedProperties/api-prefetching-term-lookup-test-data-q42-en.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/federatedProperties/query-siteinfo-namespaces-wikibase.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/federatedProperties/query-siteinfo-namespaces-wikidata.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/federatedProperties/wbgetentities-p1-missing.json","messages":[{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":4,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":4,"endColumn":3},{"ruleId":"no-mixed-spaces-and-tabs","severity":2,"message":"Mixed spaces and tabs.","line":5,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":5,"endColumn":3}],"errorCount":2,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"source":"{\n\t\"entities\": {\n\t\t\"P1\": {\n\t  \"id\": \"P1\",\n\t  \"missing\": \"\"\n\t\t}\n\t},\n\t\"success\": 1\n}\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/federatedProperties/wbgetentities-property-datatype.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/rdf/entities/P2.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/rdf/entities/Q1.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/rdf/entities/Q10.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/rdf/entities/Q2.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/rdf/entities/Q3.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/rdf/entities/Q4.json","messages":[{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":78,"column":23,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":78,"endColumn":24,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1688,1689],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1688,1688],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":78,"column":25,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":78,"endColumn":26,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1690,1691],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1690,1690],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":78,"column":43,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":78,"endColumn":44,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1708,1709],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1708,1708],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":78,"column":51,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":78,"endColumn":52,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1716,1717],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1716,1716],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":183,"column":31,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":183,"endColumn":32,"suggestions":[{"messageId":"removeEscape","fix":{"range":[4106,4107],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[4106,4106],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":183,"column":33,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":183,"endColumn":34,"suggestions":[{"messageId":"removeEscape","fix":{"range":[4108,4109],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[4108,4108],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":183,"column":51,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":183,"endColumn":52,"suggestions":[{"messageId":"removeEscape","fix":{"range":[4126,4127],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[4126,4126],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":183,"column":59,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":183,"endColumn":60,"suggestions":[{"messageId":"removeEscape","fix":{"range":[4134,4135],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[4134,4134],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":200,"column":22,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":200,"endColumn":23,"suggestions":[{"messageId":"removeEscape","fix":{"range":[4464,4465],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[4464,4464],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":200,"column":24,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":200,"endColumn":25,"suggestions":[{"messageId":"removeEscape","fix":{"range":[4466,4467],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[4466,4466],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]}],"errorCount":10,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"source":"{\n\t\"id\": \"Q4\",\n\t\"type\": \"item\",\n\t\"claims\": {\n\t\t\"P2\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-2-423614cd831ed4e8da1138c9229cb65cf96f9366\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P2\",\n\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\"numeric-id\": 42\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"preferred\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-2-475ae31b07cff4f0e33531030b1ba58f004fcd4b\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P2\",\n\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\"numeric-id\": 666\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t}\n\t\t],\n\t\t\"P3\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-3-b181ddac61642fe80bbf8e4a8eaa1da425cb0ac9\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P3\",\n\t\t\t\t\t\"datatype\": \"commonsMedia\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": \"Universe.svg\",\n\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-3-12914044e0dbab210aa9d81168bd50471bbde12d\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"novalue\",\n\t\t\t\t\t\"property\": \"P3\"\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t}\n\t\t],\n\t\t\"P4\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-4-8749fa158a249e1befa6ed077f648c56197a2b2d\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P4\",\n\t\t\t\t\t\"datatype\": \"globecoordinate\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\"latitude\": 12.125,\n\t\t\t\t\t\t\t\"longitude\": 67.25,\n\t\t\t\t\t\t\t\"precision\": 0.0625,\n\t\t\t\t\t\t\t\"globe\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q2\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"type\": \"globecoordinate\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t}\n\t\t],\n\t\t\"P5\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-5-93da31338cb80c2eb0f92a5459a186bd59579180\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P5\",\n\t\t\t\t\t\"datatype\": \"monolingualtext\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\"text\": \"\\u043f\\u0440\\u0435\\u0432\\u0435\\u0434\",\n\t\t\t\t\t\t\t\"language\": \"ru\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"type\": \"monolingualtext\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-5-8c5d9fe1bfe1fe52e5ab706ae3e5d62f4aaa8d5b\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"somevalue\",\n\t\t\t\t\t\"property\": \"P5\"\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-5-b27fe5a95fa506ca99acebd9e97c9c5a81e14f99\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P5\",\n\t\t\t\t\t\"datatype\": \"monolingualtext\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\"text\": \"\\u0431\\u0440\\u0435\\u0434\",\n\t\t\t\t\t\t\t\"language\": \"ru\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"type\": \"monolingualtext\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"deprecated\"\n\t\t\t}\n\t\t],\n\t\t\"P6\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-6-9ae284048af6d9ab0f2815ef104216cb8b22e8bc\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P6\",\n\t\t\t\t\t\"datatype\": \"quantity\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\"amount\": \"+19.768000000000000682121026329696178436279296875\",\n\t\t\t\t\t\t\t\"unit\": \"1\",\n\t\t\t\t\t\t\t\"upperBound\": \"+19.76899999999999835154085303656756877899169921875\",\n\t\t\t\t\t\t\t\"lowerBound\": \"+19.766999999999999459987520822323858737945556640625\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"type\": \"quantity\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t}\n\t\t],\n\t\t\"P7\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-7-6063d202e584b79a2e9f89ab92b51e7f22ef9886\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P7\",\n\t\t\t\t\t\"datatype\": \"string\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": \"simplestring\",\n\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t}\n\t\t],\n\t\t\"P8\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-8-5dd0f6624a7545401bc306a068ac1bbe8148bfac\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P8\",\n\t\t\t\t\t\"datatype\": \"time\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\"time\": \"-0200-00-00T00:00:00Z\",\n\t\t\t\t\t\t\t\"timezone\": 0,\n\t\t\t\t\t\t\t\"before\": 0,\n\t\t\t\t\t\t\t\"after\": 0,\n\t\t\t\t\t\t\t\"precision\": 9,\n\t\t\t\t\t\t\t\"calendarmodel\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q1985727\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"type\": \"time\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t}\n\t\t],\n\t\t\"P9\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-9-2669d541dfd2d6cc0105927bff02bbe0eec0e921\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P9\",\n\t\t\t\t\t\"datatype\": \"url\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": \"http:\\/\\/url.acme.test\\\\badurl?chars=\\\\привет< >\\\"\",\n\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t}\n\t\t],\n\t\t\"P10\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-10-geo-shape\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P10\",\n\t\t\t\t\t\"datatype\": \"geo-shape\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": \"Data:Berlin.map\",\n\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t}\n\t\t],\n\t\t\"P11\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-11-external-id\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P11\",\n\t\t\t\t\t\"datatype\": \"external-id\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": \"test-external-identifier\",\n\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t}\n\t\t],\n\t\t\"foreign:P12\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-12-foreign-property\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"foreign:P12\",\n\t\t\t\t\t\"datatype\": \"string\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": \"foo\",\n\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t}\n\t\t],\n\t\t\"foreign:P13\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-13-foreign-entities\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"foreign:P13\",\n\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\"id\": \"foreign:Q200\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t}\n\t\t]\n\t}\n}\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/rdf/entities/Q4_no_prefixed_ids.json","messages":[{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":78,"column":23,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":78,"endColumn":24,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1688,1689],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1688,1688],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":78,"column":25,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":78,"endColumn":26,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1690,1691],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1690,1690],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":78,"column":43,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":78,"endColumn":44,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1708,1709],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1708,1708],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":78,"column":51,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":78,"endColumn":52,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1716,1717],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1716,1716],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":183,"column":31,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":183,"endColumn":32,"suggestions":[{"messageId":"removeEscape","fix":{"range":[4106,4107],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[4106,4106],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":183,"column":33,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":183,"endColumn":34,"suggestions":[{"messageId":"removeEscape","fix":{"range":[4108,4109],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[4108,4108],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":183,"column":51,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":183,"endColumn":52,"suggestions":[{"messageId":"removeEscape","fix":{"range":[4126,4127],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[4126,4126],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":183,"column":59,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":183,"endColumn":60,"suggestions":[{"messageId":"removeEscape","fix":{"range":[4134,4135],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[4134,4134],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":200,"column":22,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":200,"endColumn":23,"suggestions":[{"messageId":"removeEscape","fix":{"range":[4464,4465],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[4464,4464],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":200,"column":24,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":200,"endColumn":25,"suggestions":[{"messageId":"removeEscape","fix":{"range":[4466,4467],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[4466,4466],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]}],"errorCount":10,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"source":"{\n\t\"id\": \"Q4\",\n\t\"type\": \"item\",\n\t\"claims\": {\n\t\t\"P2\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-2-423614cd831ed4e8da1138c9229cb65cf96f9366\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P2\",\n\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\"numeric-id\": 42\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"preferred\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-2-475ae31b07cff4f0e33531030b1ba58f004fcd4b\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P2\",\n\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\"numeric-id\": 666\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t}\n\t\t],\n\t\t\"P3\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-3-b181ddac61642fe80bbf8e4a8eaa1da425cb0ac9\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P3\",\n\t\t\t\t\t\"datatype\": \"commonsMedia\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": \"Universe.svg\",\n\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-3-12914044e0dbab210aa9d81168bd50471bbde12d\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"novalue\",\n\t\t\t\t\t\"property\": \"P3\"\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t}\n\t\t],\n\t\t\"P4\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-4-8749fa158a249e1befa6ed077f648c56197a2b2d\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P4\",\n\t\t\t\t\t\"datatype\": \"globecoordinate\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\"latitude\": 12.125,\n\t\t\t\t\t\t\t\"longitude\": 67.25,\n\t\t\t\t\t\t\t\"precision\": 0.0625,\n\t\t\t\t\t\t\t\"globe\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q2\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"type\": \"globecoordinate\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t}\n\t\t],\n\t\t\"P5\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-5-93da31338cb80c2eb0f92a5459a186bd59579180\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P5\",\n\t\t\t\t\t\"datatype\": \"monolingualtext\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\"text\": \"\\u043f\\u0440\\u0435\\u0432\\u0435\\u0434\",\n\t\t\t\t\t\t\t\"language\": \"ru\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"type\": \"monolingualtext\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-5-8c5d9fe1bfe1fe52e5ab706ae3e5d62f4aaa8d5b\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"somevalue\",\n\t\t\t\t\t\"property\": \"P5\"\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-5-b27fe5a95fa506ca99acebd9e97c9c5a81e14f99\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P5\",\n\t\t\t\t\t\"datatype\": \"monolingualtext\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\"text\": \"\\u0431\\u0440\\u0435\\u0434\",\n\t\t\t\t\t\t\t\"language\": \"ru\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"type\": \"monolingualtext\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"deprecated\"\n\t\t\t}\n\t\t],\n\t\t\"P6\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-6-9ae284048af6d9ab0f2815ef104216cb8b22e8bc\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P6\",\n\t\t\t\t\t\"datatype\": \"quantity\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\"amount\": \"+19.768000000000000682121026329696178436279296875\",\n\t\t\t\t\t\t\t\"unit\": \"1\",\n\t\t\t\t\t\t\t\"upperBound\": \"+19.76899999999999835154085303656756877899169921875\",\n\t\t\t\t\t\t\t\"lowerBound\": \"+19.766999999999999459987520822323858737945556640625\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"type\": \"quantity\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t}\n\t\t],\n\t\t\"P7\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-7-6063d202e584b79a2e9f89ab92b51e7f22ef9886\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P7\",\n\t\t\t\t\t\"datatype\": \"string\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": \"simplestring\",\n\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t}\n\t\t],\n\t\t\"P8\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-8-5dd0f6624a7545401bc306a068ac1bbe8148bfac\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P8\",\n\t\t\t\t\t\"datatype\": \"time\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\"time\": \"-0200-00-00T00:00:00Z\",\n\t\t\t\t\t\t\t\"timezone\": 0,\n\t\t\t\t\t\t\t\"before\": 0,\n\t\t\t\t\t\t\t\"after\": 0,\n\t\t\t\t\t\t\t\"precision\": 9,\n\t\t\t\t\t\t\t\"calendarmodel\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q1985727\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"type\": \"time\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t}\n\t\t],\n\t\t\"P9\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-9-2669d541dfd2d6cc0105927bff02bbe0eec0e921\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P9\",\n\t\t\t\t\t\"datatype\": \"url\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": \"http:\\/\\/url.acme.test\\\\badurl?chars=\\\\привет< >\\\"\",\n\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t}\n\t\t],\n\t\t\"P10\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-10-geo-shape\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P10\",\n\t\t\t\t\t\"datatype\": \"geo-shape\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": \"Data:Berlin.map\",\n\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t}\n\t\t],\n\t\t\"P11\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Statement-11-external-id\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P11\",\n\t\t\t\t\t\"datatype\": \"external-id\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": \"test-external-identifier\",\n\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t}\n\t\t]\n\t}\n}\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/rdf/entities/Q5.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/rdf/entities/Q6.json","messages":[{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":69,"column":25,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":69,"endColumn":26,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1386,1387],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1386,1386],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":69,"column":27,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":69,"endColumn":28,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1388,1389],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1388,1388],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":69,"column":45,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":69,"endColumn":46,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1406,1407],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1406,1406],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":69,"column":53,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":69,"endColumn":54,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1414,1415],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1414,1414],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":144,"column":33,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":144,"endColumn":34,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3118,3119],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3118,3118],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":144,"column":35,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":144,"endColumn":36,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3120,3121],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3120,3120],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":144,"column":53,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":144,"endColumn":54,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3138,3139],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3138,3138],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":144,"column":61,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":144,"endColumn":62,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3146,3147],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3146,3146],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":156,"column":24,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":156,"endColumn":25,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3362,3363],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3362,3362],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":156,"column":26,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":156,"endColumn":27,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3364,3365],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3364,3364],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":156,"column":41,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":156,"endColumn":42,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3379,3380],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3379,3379],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":165,"column":25,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":165,"endColumn":26,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3560,3561],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3560,3560],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":165,"column":27,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":165,"endColumn":28,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3562,3563],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3562,3562],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":165,"column":43,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":165,"endColumn":44,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3578,3579],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3578,3578],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]}],"errorCount":14,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"source":"{\n\t\"id\": \"Q6\",\n\t\"type\": \"item\",\n\t\"claims\": {\n\t\t\"P7\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Qualifiers\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P7\",\n\t\t\t\t\t\"datatype\": \"string\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": \"string\",\n\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"qualifiers\": {\n\t\t\t\t\t\"P2\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\"property\": \"P2\",\n\t\t\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\t\t\"numeric-id\": 42\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\"property\": \"P2\",\n\t\t\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\t\t\"numeric-id\": 666\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\t\"P3\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\"property\": \"P3\",\n\t\t\t\t\t\t\t\"datatype\": \"commonsMedia\",\n\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\"value\": \"Universe.svg\",\n\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"snaktype\": \"novalue\",\n\t\t\t\t\t\t\t\"property\": \"P3\"\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\t\"P4\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\"property\": \"P4\",\n\t\t\t\t\t\t\t\"datatype\": \"globecoordinate\",\n\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\"latitude\": 12.125,\n\t\t\t\t\t\t\t\t\t\"longitude\": 67.25,\n\t\t\t\t\t\t\t\t\t\"precision\": 0.0625,\n\t\t\t\t\t\t\t\t\t\"globe\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q2\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"type\": \"globecoordinate\"\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\t\"P5\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\"property\": \"P5\",\n\t\t\t\t\t\t\t\"datatype\": \"monolingualtext\",\n\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\"text\": \"\\u043f\\u0440\\u0435\\u0432\\u0435\\u0434\",\n\t\t\t\t\t\t\t\t\t\"language\": \"ru\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"type\": \"monolingualtext\"\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"snaktype\": \"somevalue\",\n\t\t\t\t\t\t\t\"property\": \"P5\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\"property\": \"P5\",\n\t\t\t\t\t\t\t\"datatype\": \"monolingualtext\",\n\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\"text\": \"\\u0431\\u0440\\u0435\\u0434\",\n\t\t\t\t\t\t\t\t\t\"language\": \"ru\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"type\": \"monolingualtext\"\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\t\"P6\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\"property\": \"P6\",\n\t\t\t\t\t\t\t\"datatype\": \"quantity\",\n\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\"amount\": \"+19.768000000000000682121026329696178436279296875\",\n\t\t\t\t\t\t\t\t\t\"unit\": \"1\",\n\t\t\t\t\t\t\t\t\t\"upperBound\": \"+19.76899999999999835154085303656756877899169921875\",\n\t\t\t\t\t\t\t\t\t\"lowerBound\": \"+19.766999999999999459987520822323858737945556640625\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"type\": \"quantity\"\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\t\"P7\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\"property\": \"P7\",\n\t\t\t\t\t\t\t\"datatype\": \"string\",\n\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\"value\": \"simplestring\",\n\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\t\"P8\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\"property\": \"P8\",\n\t\t\t\t\t\t\t\"datatype\": \"time\",\n\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\"time\": \"-0200-00-00T00:00:00Z\",\n\t\t\t\t\t\t\t\t\t\"timezone\": 0,\n\t\t\t\t\t\t\t\t\t\"before\": 0,\n\t\t\t\t\t\t\t\t\t\"after\": 0,\n\t\t\t\t\t\t\t\t\t\"precision\": 9,\n\t\t\t\t\t\t\t\t\t\"calendarmodel\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q1985727\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"type\": \"time\"\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\t\"P9\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\"property\": \"P9\",\n\t\t\t\t\t\t\t\"datatype\": \"url\",\n\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\"value\": \"http:\\/\\/url.acme.test\\/\",\n\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\"property\": \"P9\",\n\t\t\t\t\t\t\t\"datatype\": \"url\",\n\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\"value\": \" http:\\/\\/url.acme2.test\\/\\n\",\n\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\t\"foreign:P11\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\"property\": \"foreign:P11\",\n\t\t\t\t\t\t\t\"datatype\": \"string\",\n\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\"value\": \"simplestring\",\n\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\t\"foreign:P12\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\"property\": \"foreign:P12\",\n\t\t\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\t\t\"id\": \"foreign:Q1234\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"qualifiers-order\": [\n\t\t\t\t\t\"P2\",\n\t\t\t\t\t\"P3\",\n\t\t\t\t\t\"P4\",\n\t\t\t\t\t\"P5\",\n\t\t\t\t\t\"P6\",\n\t\t\t\t\t\"P7\",\n\t\t\t\t\t\"P8\",\n\t\t\t\t\t\"P9\",\n\t\t\t\t\t\"foreign:P11\",\n\t\t\t\t\t\"foreign:P12\"\n\t\t\t\t],\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t}\n\t\t]\n\t}\n}\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/rdf/entities/Q6_no_prefixed_ids.json","messages":[{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":69,"column":25,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":69,"endColumn":26,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1386,1387],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1386,1386],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":69,"column":27,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":69,"endColumn":28,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1388,1389],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1388,1388],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":69,"column":45,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":69,"endColumn":46,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1406,1407],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1406,1406],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":69,"column":53,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":69,"endColumn":54,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1414,1415],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1414,1414],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":144,"column":33,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":144,"endColumn":34,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3118,3119],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3118,3118],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":144,"column":35,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":144,"endColumn":36,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3120,3121],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3120,3120],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":144,"column":53,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":144,"endColumn":54,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3138,3139],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3138,3138],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":144,"column":61,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":144,"endColumn":62,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3146,3147],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3146,3146],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":156,"column":24,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":156,"endColumn":25,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3362,3363],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3362,3362],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":156,"column":26,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":156,"endColumn":27,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3364,3365],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3364,3364],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":156,"column":41,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":156,"endColumn":42,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3379,3380],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3379,3379],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":165,"column":25,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":165,"endColumn":26,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3560,3561],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3560,3560],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":165,"column":27,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":165,"endColumn":28,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3562,3563],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3562,3562],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":165,"column":43,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":165,"endColumn":44,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3578,3579],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3578,3578],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]}],"errorCount":14,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"source":"{\n\t\"id\": \"Q6\",\n\t\"type\": \"item\",\n\t\"claims\": {\n\t\t\"P7\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Qualifiers\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P7\",\n\t\t\t\t\t\"datatype\": \"string\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": \"string\",\n\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"qualifiers\": {\n\t\t\t\t\t\"P2\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\"property\": \"P2\",\n\t\t\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\t\t\"numeric-id\": 42\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\"property\": \"P2\",\n\t\t\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\t\t\"numeric-id\": 666\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\t\"P3\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\"property\": \"P3\",\n\t\t\t\t\t\t\t\"datatype\": \"commonsMedia\",\n\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\"value\": \"Universe.svg\",\n\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"snaktype\": \"novalue\",\n\t\t\t\t\t\t\t\"property\": \"P3\"\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\t\"P4\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\"property\": \"P4\",\n\t\t\t\t\t\t\t\"datatype\": \"globecoordinate\",\n\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\"latitude\": 12.125,\n\t\t\t\t\t\t\t\t\t\"longitude\": 67.25,\n\t\t\t\t\t\t\t\t\t\"precision\": 0.0625,\n\t\t\t\t\t\t\t\t\t\"globe\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q2\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"type\": \"globecoordinate\"\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\t\"P5\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\"property\": \"P5\",\n\t\t\t\t\t\t\t\"datatype\": \"monolingualtext\",\n\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\"text\": \"\\u043f\\u0440\\u0435\\u0432\\u0435\\u0434\",\n\t\t\t\t\t\t\t\t\t\"language\": \"ru\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"type\": \"monolingualtext\"\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"snaktype\": \"somevalue\",\n\t\t\t\t\t\t\t\"property\": \"P5\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\"property\": \"P5\",\n\t\t\t\t\t\t\t\"datatype\": \"monolingualtext\",\n\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\"text\": \"\\u0431\\u0440\\u0435\\u0434\",\n\t\t\t\t\t\t\t\t\t\"language\": \"ru\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"type\": \"monolingualtext\"\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\t\"P6\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\"property\": \"P6\",\n\t\t\t\t\t\t\t\"datatype\": \"quantity\",\n\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\"amount\": \"+19.768000000000000682121026329696178436279296875\",\n\t\t\t\t\t\t\t\t\t\"unit\": \"1\",\n\t\t\t\t\t\t\t\t\t\"upperBound\": \"+19.76899999999999835154085303656756877899169921875\",\n\t\t\t\t\t\t\t\t\t\"lowerBound\": \"+19.766999999999999459987520822323858737945556640625\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"type\": \"quantity\"\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\t\"P7\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\"property\": \"P7\",\n\t\t\t\t\t\t\t\"datatype\": \"string\",\n\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\"value\": \"simplestring\",\n\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\t\"P8\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\"property\": \"P8\",\n\t\t\t\t\t\t\t\"datatype\": \"time\",\n\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\"time\": \"-0200-00-00T00:00:00Z\",\n\t\t\t\t\t\t\t\t\t\"timezone\": 0,\n\t\t\t\t\t\t\t\t\t\"before\": 0,\n\t\t\t\t\t\t\t\t\t\"after\": 0,\n\t\t\t\t\t\t\t\t\t\"precision\": 9,\n\t\t\t\t\t\t\t\t\t\"calendarmodel\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q1985727\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\"type\": \"time\"\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t],\n\t\t\t\t\t\"P9\": [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\"property\": \"P9\",\n\t\t\t\t\t\t\t\"datatype\": \"url\",\n\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\"value\": \"http:\\/\\/url.acme.test\\/\",\n\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t},\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\"property\": \"P9\",\n\t\t\t\t\t\t\t\"datatype\": \"url\",\n\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\"value\": \" http:\\/\\/url.acme2.test\\/\\n\",\n\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t]\n\t\t\t\t},\n\t\t\t\t\"qualifiers-order\": [\n\t\t\t\t\t\"P2\",\n\t\t\t\t\t\"P3\",\n\t\t\t\t\t\"P4\",\n\t\t\t\t\t\"P5\",\n\t\t\t\t\t\"P6\",\n\t\t\t\t\t\"P7\",\n\t\t\t\t\t\"P8\",\n\t\t\t\t\t\"P9\"\n\t\t\t\t],\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t}\n\t\t]\n\t}\n}\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/rdf/entities/Q7.json","messages":[{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":73,"column":27,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":73,"endColumn":28,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1561,1562],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1561,1561],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":73,"column":29,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":73,"endColumn":30,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1563,1564],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1563,1563],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":73,"column":47,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":73,"endColumn":48,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1581,1582],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1581,1581],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":73,"column":55,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":73,"endColumn":56,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1589,1590],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1589,1589],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":148,"column":35,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":148,"endColumn":36,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3443,3444],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3443,3443],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":148,"column":37,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":148,"endColumn":38,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3445,3446],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3445,3445],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":148,"column":55,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":148,"endColumn":56,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3463,3464],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3463,3463],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":148,"column":63,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":148,"endColumn":64,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3471,3472],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3471,3471],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":160,"column":26,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":160,"endColumn":27,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3711,3712],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3711,3711],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":160,"column":28,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":160,"endColumn":29,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3713,3714],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3713,3713],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":160,"column":43,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":160,"endColumn":44,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3728,3729],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3728,3728],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":273,"column":27,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":273,"endColumn":28,"suggestions":[{"messageId":"removeEscape","fix":{"range":[6088,6089],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[6088,6088],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":273,"column":29,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":273,"endColumn":30,"suggestions":[{"messageId":"removeEscape","fix":{"range":[6090,6091],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[6090,6090],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":273,"column":47,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":273,"endColumn":48,"suggestions":[{"messageId":"removeEscape","fix":{"range":[6108,6109],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[6108,6108],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":273,"column":55,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":273,"endColumn":56,"suggestions":[{"messageId":"removeEscape","fix":{"range":[6116,6117],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[6116,6116],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":348,"column":35,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":348,"endColumn":36,"suggestions":[{"messageId":"removeEscape","fix":{"range":[7970,7971],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[7970,7970],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":348,"column":37,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":348,"endColumn":38,"suggestions":[{"messageId":"removeEscape","fix":{"range":[7972,7973],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[7972,7972],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":348,"column":55,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":348,"endColumn":56,"suggestions":[{"messageId":"removeEscape","fix":{"range":[7990,7991],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[7990,7990],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":348,"column":63,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":348,"endColumn":64,"suggestions":[{"messageId":"removeEscape","fix":{"range":[7998,7999],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[7998,7998],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":360,"column":26,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":360,"endColumn":27,"suggestions":[{"messageId":"removeEscape","fix":{"range":[8238,8239],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[8238,8238],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":360,"column":28,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":360,"endColumn":29,"suggestions":[{"messageId":"removeEscape","fix":{"range":[8240,8241],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[8240,8240],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":360,"column":43,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":360,"endColumn":44,"suggestions":[{"messageId":"removeEscape","fix":{"range":[8255,8256],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[8255,8255],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]}],"errorCount":22,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"source":"{\n\t\"id\": \"Q7\",\n\t\"type\": \"item\",\n\t\"claims\": {\n\t\t\"P7\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-References\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P7\",\n\t\t\t\t\t\"datatype\": \"string\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": \"string\",\n\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\",\n\t\t\t\t\"references\": [\n\t\t\t\t\t{\n\t\t\t\t\t\t\"snaks\": {\n\t\t\t\t\t\t\t\"P2\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P2\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\t\t\t\t\"numeric-id\": 42\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P2\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\t\t\t\t\"numeric-id\": 666\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P3\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P3\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"commonsMedia\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": \"Universe.svg\",\n\t\t\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"novalue\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P3\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P4\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P4\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"globecoordinate\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"latitude\": 12.125,\n\t\t\t\t\t\t\t\t\t\t\t\"longitude\": 67.25,\n\t\t\t\t\t\t\t\t\t\t\t\"precision\": 0.0625,\n\t\t\t\t\t\t\t\t\t\t\t\"globe\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q2\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"globecoordinate\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P5\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P5\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"monolingualtext\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"text\": \"\\u043f\\u0440\\u0435\\u0432\\u0435\\u0434\",\n\t\t\t\t\t\t\t\t\t\t\t\"language\": \"ru\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"monolingualtext\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"somevalue\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P5\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P5\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"monolingualtext\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"text\": \"\\u0431\\u0440\\u0435\\u0434\",\n\t\t\t\t\t\t\t\t\t\t\t\"language\": \"ru\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"monolingualtext\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P6\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P6\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"quantity\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"amount\": \"+19.768000000000000682121026329696178436279296875\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\": \"1\",\n\t\t\t\t\t\t\t\t\t\t\t\"upperBound\": \"+19.76899999999999835154085303656756877899169921875\",\n\t\t\t\t\t\t\t\t\t\t\t\"lowerBound\": \"+19.766999999999999459987520822323858737945556640625\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"quantity\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P7\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P7\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"string\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": \"simplestring\",\n\t\t\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P8\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P8\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"time\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"time\": \"-0200-00-00T00:00:00Z\",\n\t\t\t\t\t\t\t\t\t\t\t\"timezone\": 0,\n\t\t\t\t\t\t\t\t\t\t\t\"before\": 0,\n\t\t\t\t\t\t\t\t\t\t\t\"after\": 0,\n\t\t\t\t\t\t\t\t\t\t\t\"precision\": 9,\n\t\t\t\t\t\t\t\t\t\t\t\"calendarmodel\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q1985727\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"time\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P9\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P9\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"url\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": \"http:\\/\\/url.acme.test\\/\",\n\t\t\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"foreign:P11\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"foreign:P11\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"string\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": \"simplestring\",\n\t\t\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"foreign:P12\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"foreign:P12\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\t\t\t\t\"id\": \"foreign:Q303\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"snaks-order\": [\n\t\t\t\t\t\t\t\"P2\",\n\t\t\t\t\t\t\t\"P3\",\n\t\t\t\t\t\t\t\"P4\",\n\t\t\t\t\t\t\t\"P5\",\n\t\t\t\t\t\t\t\"P6\",\n\t\t\t\t\t\t\t\"P7\",\n\t\t\t\t\t\t\t\"P8\",\n\t\t\t\t\t\t\t\"P9\",\n\t\t\t\t\t\t\t\"foreign:P11\",\n\t\t\t\t\t\t\t\"foreign:P12\"\n\t\t\t\t\t\t]\n\t\t\t\t\t}\n\t\t\t\t]\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-References-2\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P7\",\n\t\t\t\t\t\"datatype\": \"string\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": \"string2\",\n\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\",\n\t\t\t\t\"references\": [\n\t\t\t\t\t{\n\t\t\t\t\t\t\"snaks\": {\n\t\t\t\t\t\t\t\"P2\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P2\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\t\t\t\t\"numeric-id\": 42\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P2\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\t\t\t\t\"numeric-id\": 666\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P3\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P3\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"commonsMedia\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": \"Universe.svg\",\n\t\t\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"novalue\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P3\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P4\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P4\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"globecoordinate\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"latitude\": 12.125,\n\t\t\t\t\t\t\t\t\t\t\t\"longitude\": 67.25,\n\t\t\t\t\t\t\t\t\t\t\t\"precision\": 0.0625,\n\t\t\t\t\t\t\t\t\t\t\t\"globe\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q2\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"globecoordinate\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P5\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P5\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"monolingualtext\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"text\": \"\\u043f\\u0440\\u0435\\u0432\\u0435\\u0434\",\n\t\t\t\t\t\t\t\t\t\t\t\"language\": \"ru\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"monolingualtext\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"somevalue\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P5\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P5\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"monolingualtext\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"text\": \"\\u0431\\u0440\\u0435\\u0434\",\n\t\t\t\t\t\t\t\t\t\t\t\"language\": \"ru\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"monolingualtext\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P6\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P6\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"quantity\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"amount\": \"+19.768000000000000682121026329696178436279296875\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\": \"1\",\n\t\t\t\t\t\t\t\t\t\t\t\"upperBound\": \"+19.76899999999999835154085303656756877899169921875\",\n\t\t\t\t\t\t\t\t\t\t\t\"lowerBound\": \"+19.766999999999999459987520822323858737945556640625\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"quantity\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P7\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P7\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"string\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": \"simplestring\",\n\t\t\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P8\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P8\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"time\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"time\": \"-0200-00-00T00:00:00Z\",\n\t\t\t\t\t\t\t\t\t\t\t\"timezone\": 0,\n\t\t\t\t\t\t\t\t\t\t\t\"before\": 0,\n\t\t\t\t\t\t\t\t\t\t\t\"after\": 0,\n\t\t\t\t\t\t\t\t\t\t\t\"precision\": 9,\n\t\t\t\t\t\t\t\t\t\t\t\"calendarmodel\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q1985727\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"time\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P9\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P9\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"url\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": \"http:\\/\\/url.acme.test\\/\",\n\t\t\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"foreign:P11\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"foreign:P11\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"string\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": \"simplestring\",\n\t\t\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"foreign:P12\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"foreign:P12\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\t\t\t\t\"id\": \"foreign:Q303\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"snaks-order\": [\n\t\t\t\t\t\t\t\"P2\",\n\t\t\t\t\t\t\t\"P3\",\n\t\t\t\t\t\t\t\"P4\",\n\t\t\t\t\t\t\t\"P5\",\n\t\t\t\t\t\t\t\"P6\",\n\t\t\t\t\t\t\t\"P7\",\n\t\t\t\t\t\t\t\"P8\",\n\t\t\t\t\t\t\t\"P9\",\n\t\t\t\t\t\t\t\"foreign:P11\",\n\t\t\t\t\t\t\t\"foreign:P12\"\n\t\t\t\t\t\t]\n\t\t\t\t\t}\n\t\t\t\t]\n\t\t\t}\n\t\t]\n\t}\n}\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/rdf/entities/Q7_no_prefixed_ids.json","messages":[{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":73,"column":27,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":73,"endColumn":28,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1561,1562],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1561,1561],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":73,"column":29,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":73,"endColumn":30,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1563,1564],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1563,1563],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":73,"column":47,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":73,"endColumn":48,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1581,1582],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1581,1581],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":73,"column":55,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":73,"endColumn":56,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1589,1590],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1589,1589],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":148,"column":35,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":148,"endColumn":36,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3443,3444],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3443,3443],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":148,"column":37,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":148,"endColumn":38,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3445,3446],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3445,3445],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":148,"column":55,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":148,"endColumn":56,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3463,3464],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3463,3463],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":148,"column":63,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":148,"endColumn":64,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3471,3472],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3471,3471],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":160,"column":26,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":160,"endColumn":27,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3711,3712],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3711,3711],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":160,"column":28,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":160,"endColumn":29,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3713,3714],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3713,3713],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":160,"column":43,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":160,"endColumn":44,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3728,3729],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3728,3728],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":246,"column":27,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":246,"endColumn":28,"suggestions":[{"messageId":"removeEscape","fix":{"range":[5461,5462],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[5461,5461],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":246,"column":29,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":246,"endColumn":30,"suggestions":[{"messageId":"removeEscape","fix":{"range":[5463,5464],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[5463,5463],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":246,"column":47,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":246,"endColumn":48,"suggestions":[{"messageId":"removeEscape","fix":{"range":[5481,5482],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[5481,5481],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":246,"column":55,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":246,"endColumn":56,"suggestions":[{"messageId":"removeEscape","fix":{"range":[5489,5490],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[5489,5489],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":321,"column":35,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":321,"endColumn":36,"suggestions":[{"messageId":"removeEscape","fix":{"range":[7343,7344],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[7343,7343],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":321,"column":37,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":321,"endColumn":38,"suggestions":[{"messageId":"removeEscape","fix":{"range":[7345,7346],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[7345,7345],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":321,"column":55,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":321,"endColumn":56,"suggestions":[{"messageId":"removeEscape","fix":{"range":[7363,7364],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[7363,7363],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":321,"column":63,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":321,"endColumn":64,"suggestions":[{"messageId":"removeEscape","fix":{"range":[7371,7372],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[7371,7371],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":333,"column":26,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":333,"endColumn":27,"suggestions":[{"messageId":"removeEscape","fix":{"range":[7611,7612],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[7611,7611],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":333,"column":28,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":333,"endColumn":29,"suggestions":[{"messageId":"removeEscape","fix":{"range":[7613,7614],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[7613,7613],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":333,"column":43,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":333,"endColumn":44,"suggestions":[{"messageId":"removeEscape","fix":{"range":[7628,7629],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[7628,7628],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]}],"errorCount":22,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"source":"{\n\t\"id\": \"Q7\",\n\t\"type\": \"item\",\n\t\"claims\": {\n\t\t\"P7\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-References\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P7\",\n\t\t\t\t\t\"datatype\": \"string\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": \"string\",\n\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\",\n\t\t\t\t\"references\": [\n\t\t\t\t\t{\n\t\t\t\t\t\t\"snaks\": {\n\t\t\t\t\t\t\t\"P2\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P2\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\t\t\t\t\"numeric-id\": 42\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P2\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\t\t\t\t\"numeric-id\": 666\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P3\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P3\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"commonsMedia\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": \"Universe.svg\",\n\t\t\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"novalue\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P3\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P4\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P4\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"globecoordinate\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"latitude\": 12.125,\n\t\t\t\t\t\t\t\t\t\t\t\"longitude\": 67.25,\n\t\t\t\t\t\t\t\t\t\t\t\"precision\": 0.0625,\n\t\t\t\t\t\t\t\t\t\t\t\"globe\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q2\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"globecoordinate\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P5\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P5\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"monolingualtext\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"text\": \"\\u043f\\u0440\\u0435\\u0432\\u0435\\u0434\",\n\t\t\t\t\t\t\t\t\t\t\t\"language\": \"ru\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"monolingualtext\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"somevalue\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P5\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P5\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"monolingualtext\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"text\": \"\\u0431\\u0440\\u0435\\u0434\",\n\t\t\t\t\t\t\t\t\t\t\t\"language\": \"ru\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"monolingualtext\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P6\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P6\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"quantity\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"amount\": \"+19.768000000000000682121026329696178436279296875\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\": \"1\",\n\t\t\t\t\t\t\t\t\t\t\t\"upperBound\": \"+19.76899999999999835154085303656756877899169921875\",\n\t\t\t\t\t\t\t\t\t\t\t\"lowerBound\": \"+19.766999999999999459987520822323858737945556640625\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"quantity\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P7\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P7\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"string\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": \"simplestring\",\n\t\t\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P8\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P8\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"time\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"time\": \"-0200-00-00T00:00:00Z\",\n\t\t\t\t\t\t\t\t\t\t\t\"timezone\": 0,\n\t\t\t\t\t\t\t\t\t\t\t\"before\": 0,\n\t\t\t\t\t\t\t\t\t\t\t\"after\": 0,\n\t\t\t\t\t\t\t\t\t\t\t\"precision\": 9,\n\t\t\t\t\t\t\t\t\t\t\t\"calendarmodel\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q1985727\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"time\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P9\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P9\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"url\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": \"http:\\/\\/url.acme.test\\/\",\n\t\t\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"snaks-order\": [\n\t\t\t\t\t\t\t\"P2\",\n\t\t\t\t\t\t\t\"P3\",\n\t\t\t\t\t\t\t\"P4\",\n\t\t\t\t\t\t\t\"P5\",\n\t\t\t\t\t\t\t\"P6\",\n\t\t\t\t\t\t\t\"P7\",\n\t\t\t\t\t\t\t\"P8\",\n\t\t\t\t\t\t\t\"P9\"\n\t\t\t\t\t\t]\n\t\t\t\t\t}\n\t\t\t\t]\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-References-2\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P7\",\n\t\t\t\t\t\"datatype\": \"string\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": \"string2\",\n\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\",\n\t\t\t\t\"references\": [\n\t\t\t\t\t{\n\t\t\t\t\t\t\"snaks\": {\n\t\t\t\t\t\t\t\"P2\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P2\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\t\t\t\t\"numeric-id\": 42\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P2\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\t\t\t\t\"numeric-id\": 666\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P3\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P3\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"commonsMedia\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": \"Universe.svg\",\n\t\t\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"novalue\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P3\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P4\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P4\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"globecoordinate\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"latitude\": 12.125,\n\t\t\t\t\t\t\t\t\t\t\t\"longitude\": 67.25,\n\t\t\t\t\t\t\t\t\t\t\t\"precision\": 0.0625,\n\t\t\t\t\t\t\t\t\t\t\t\"globe\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q2\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"globecoordinate\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P5\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P5\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"monolingualtext\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"text\": \"\\u043f\\u0440\\u0435\\u0432\\u0435\\u0434\",\n\t\t\t\t\t\t\t\t\t\t\t\"language\": \"ru\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"monolingualtext\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"somevalue\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P5\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P5\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"monolingualtext\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"text\": \"\\u0431\\u0440\\u0435\\u0434\",\n\t\t\t\t\t\t\t\t\t\t\t\"language\": \"ru\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"monolingualtext\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P6\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P6\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"quantity\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"amount\": \"+19.768000000000000682121026329696178436279296875\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\": \"1\",\n\t\t\t\t\t\t\t\t\t\t\t\"upperBound\": \"+19.76899999999999835154085303656756877899169921875\",\n\t\t\t\t\t\t\t\t\t\t\t\"lowerBound\": \"+19.766999999999999459987520822323858737945556640625\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"quantity\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P7\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P7\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"string\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": \"simplestring\",\n\t\t\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P8\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P8\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"time\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"time\": \"-0200-00-00T00:00:00Z\",\n\t\t\t\t\t\t\t\t\t\t\t\"timezone\": 0,\n\t\t\t\t\t\t\t\t\t\t\t\"before\": 0,\n\t\t\t\t\t\t\t\t\t\t\t\"after\": 0,\n\t\t\t\t\t\t\t\t\t\t\t\"precision\": 9,\n\t\t\t\t\t\t\t\t\t\t\t\"calendarmodel\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q1985727\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"time\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P9\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P9\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"url\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": \"http:\\/\\/url.acme.test\\/\",\n\t\t\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"snaks-order\": [\n\t\t\t\t\t\t\t\"P2\",\n\t\t\t\t\t\t\t\"P3\",\n\t\t\t\t\t\t\t\"P4\",\n\t\t\t\t\t\t\t\"P5\",\n\t\t\t\t\t\t\t\"P6\",\n\t\t\t\t\t\t\t\"P7\",\n\t\t\t\t\t\t\t\"P8\",\n\t\t\t\t\t\t\t\"P9\"\n\t\t\t\t\t\t]\n\t\t\t\t\t}\n\t\t\t\t]\n\t\t\t}\n\t\t]\n\t}\n}\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/rdf/entities/Q8.json","messages":[{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":19,"column":31,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":19,"endColumn":32,"suggestions":[{"messageId":"removeEscape","fix":{"range":[371,372],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[371,371],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":19,"column":33,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":19,"endColumn":34,"suggestions":[{"messageId":"removeEscape","fix":{"range":[373,374],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[373,373],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":19,"column":51,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":19,"endColumn":52,"suggestions":[{"messageId":"removeEscape","fix":{"range":[391,392],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[391,391],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":19,"column":59,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":19,"endColumn":60,"suggestions":[{"messageId":"removeEscape","fix":{"range":[399,400],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[399,399],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":40,"column":31,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":40,"endColumn":32,"suggestions":[{"messageId":"removeEscape","fix":{"range":[825,826],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[825,825],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":40,"column":33,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":40,"endColumn":34,"suggestions":[{"messageId":"removeEscape","fix":{"range":[827,828],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[827,827],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":40,"column":51,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":40,"endColumn":52,"suggestions":[{"messageId":"removeEscape","fix":{"range":[845,846],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[845,845],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":40,"column":59,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":40,"endColumn":60,"suggestions":[{"messageId":"removeEscape","fix":{"range":[853,854],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[853,853],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":61,"column":31,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":61,"endColumn":32,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1285,1286],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1285,1285],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":61,"column":33,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":61,"endColumn":34,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1287,1288],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1287,1287],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":61,"column":51,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":61,"endColumn":52,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1305,1306],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1305,1305],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":61,"column":59,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":61,"endColumn":60,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1313,1314],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1313,1313],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":82,"column":31,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":82,"endColumn":32,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1738,1739],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1738,1738],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":82,"column":33,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":82,"endColumn":34,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1740,1741],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1740,1740],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":82,"column":51,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":82,"endColumn":52,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1758,1759],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1758,1758],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":82,"column":59,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":82,"endColumn":60,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1766,1767],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1766,1766],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":103,"column":31,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":103,"endColumn":32,"suggestions":[{"messageId":"removeEscape","fix":{"range":[2191,2192],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[2191,2191],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":103,"column":33,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":103,"endColumn":34,"suggestions":[{"messageId":"removeEscape","fix":{"range":[2193,2194],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[2193,2193],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":103,"column":51,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":103,"endColumn":52,"suggestions":[{"messageId":"removeEscape","fix":{"range":[2211,2212],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[2211,2211],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":103,"column":59,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":103,"endColumn":60,"suggestions":[{"messageId":"removeEscape","fix":{"range":[2219,2220],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[2219,2219],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":124,"column":31,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":124,"endColumn":32,"suggestions":[{"messageId":"removeEscape","fix":{"range":[2643,2644],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[2643,2643],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":124,"column":33,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":124,"endColumn":34,"suggestions":[{"messageId":"removeEscape","fix":{"range":[2645,2646],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[2645,2645],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":124,"column":51,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":124,"endColumn":52,"suggestions":[{"messageId":"removeEscape","fix":{"range":[2663,2664],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[2663,2663],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":124,"column":59,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":124,"endColumn":60,"suggestions":[{"messageId":"removeEscape","fix":{"range":[2671,2672],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[2671,2671],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":145,"column":31,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":145,"endColumn":32,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3095,3096],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3095,3095],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":145,"column":33,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":145,"endColumn":34,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3097,3098],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3097,3097],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":145,"column":51,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":145,"endColumn":52,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3115,3116],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3115,3115],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":145,"column":59,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":145,"endColumn":60,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3123,3124],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3123,3123],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":166,"column":31,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":166,"endColumn":32,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3548,3549],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3548,3548],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":166,"column":33,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":166,"endColumn":34,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3550,3551],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3550,3550],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":166,"column":51,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":166,"endColumn":52,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3568,3569],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3568,3568],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":166,"column":59,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":166,"endColumn":60,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3576,3577],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3576,3576],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":187,"column":31,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":187,"endColumn":32,"suggestions":[{"messageId":"removeEscape","fix":{"range":[4001,4002],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[4001,4001],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":187,"column":33,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":187,"endColumn":34,"suggestions":[{"messageId":"removeEscape","fix":{"range":[4003,4004],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[4003,4003],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":187,"column":44,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":187,"endColumn":45,"suggestions":[{"messageId":"removeEscape","fix":{"range":[4014,4015],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[4014,4014],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":208,"column":31,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":208,"endColumn":32,"suggestions":[{"messageId":"removeEscape","fix":{"range":[4445,4446],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[4445,4445],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":208,"column":33,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":208,"endColumn":34,"suggestions":[{"messageId":"removeEscape","fix":{"range":[4447,4448],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[4447,4447],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":208,"column":51,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":208,"endColumn":52,"suggestions":[{"messageId":"removeEscape","fix":{"range":[4465,4466],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[4465,4465],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":208,"column":59,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":208,"endColumn":60,"suggestions":[{"messageId":"removeEscape","fix":{"range":[4473,4474],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[4473,4473],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":229,"column":31,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":229,"endColumn":32,"suggestions":[{"messageId":"removeEscape","fix":{"range":[4898,4899],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[4898,4898],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":229,"column":33,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":229,"endColumn":34,"suggestions":[{"messageId":"removeEscape","fix":{"range":[4900,4901],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[4900,4900],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":229,"column":51,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":229,"endColumn":52,"suggestions":[{"messageId":"removeEscape","fix":{"range":[4918,4919],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[4918,4918],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":229,"column":59,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":229,"endColumn":60,"suggestions":[{"messageId":"removeEscape","fix":{"range":[4926,4927],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[4926,4926],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":250,"column":31,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":250,"endColumn":32,"suggestions":[{"messageId":"removeEscape","fix":{"range":[5357,5358],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[5357,5357],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":250,"column":33,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":250,"endColumn":34,"suggestions":[{"messageId":"removeEscape","fix":{"range":[5359,5360],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[5359,5359],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":250,"column":51,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":250,"endColumn":52,"suggestions":[{"messageId":"removeEscape","fix":{"range":[5377,5378],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[5377,5377],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":250,"column":59,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":250,"endColumn":60,"suggestions":[{"messageId":"removeEscape","fix":{"range":[5385,5386],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[5385,5385],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":271,"column":31,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":271,"endColumn":32,"suggestions":[{"messageId":"removeEscape","fix":{"range":[5810,5811],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[5810,5810],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":271,"column":33,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":271,"endColumn":34,"suggestions":[{"messageId":"removeEscape","fix":{"range":[5812,5813],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[5812,5812],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":271,"column":51,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":271,"endColumn":52,"suggestions":[{"messageId":"removeEscape","fix":{"range":[5830,5831],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[5830,5830],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":271,"column":59,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":271,"endColumn":60,"suggestions":[{"messageId":"removeEscape","fix":{"range":[5838,5839],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[5838,5838],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]}],"errorCount":51,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"source":"{\n\t\"id\": \"Q8\",\n\t\"type\": \"item\",\n\t\"claims\": {\n\t\t\"P8\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Dates-8-1\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P8\",\n\t\t\t\t\t\"datatype\": \"time\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\"time\": \"-0200-00-00T00:00:00Z\",\n\t\t\t\t\t\t\t\"timezone\": 0,\n\t\t\t\t\t\t\t\"before\": 0,\n\t\t\t\t\t\t\t\"after\": 0,\n\t\t\t\t\t\t\t\"precision\": 9,\n\t\t\t\t\t\t\t\"calendarmodel\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q1985727\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"type\": \"time\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Dates-8-2\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P8\",\n\t\t\t\t\t\"datatype\": \"time\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\"time\": \"+0200-10-00T00:00:00Z\",\n\t\t\t\t\t\t\t\"timezone\": 60,\n\t\t\t\t\t\t\t\"before\": 0,\n\t\t\t\t\t\t\t\"after\": 0,\n\t\t\t\t\t\t\t\"precision\": 11,\n\t\t\t\t\t\t\t\"calendarmodel\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q1985727\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"type\": \"time\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Dates-8-3\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P8\",\n\t\t\t\t\t\"datatype\": \"time\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\"time\": \"-200000200-04-31T00:00:00Z\",\n\t\t\t\t\t\t\t\"timezone\": -60,\n\t\t\t\t\t\t\t\"before\": 0,\n\t\t\t\t\t\t\t\"after\": 0,\n\t\t\t\t\t\t\t\"precision\": 11,\n\t\t\t\t\t\t\t\"calendarmodel\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q1985727\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"type\": \"time\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Dates-8-4\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P8\",\n\t\t\t\t\t\"datatype\": \"time\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\"time\": \"+0200-02-30T00:00:00Z\",\n\t\t\t\t\t\t\t\"timezone\": 0,\n\t\t\t\t\t\t\t\"before\": 0,\n\t\t\t\t\t\t\t\"after\": 0,\n\t\t\t\t\t\t\t\"precision\": 11,\n\t\t\t\t\t\t\t\"calendarmodel\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q1985727\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"type\": \"time\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Dates-8-5\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P8\",\n\t\t\t\t\t\"datatype\": \"time\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\"time\": \"+2014-02-29T00:00:00Z\",\n\t\t\t\t\t\t\t\"timezone\": 0,\n\t\t\t\t\t\t\t\"before\": 0,\n\t\t\t\t\t\t\t\"after\": 0,\n\t\t\t\t\t\t\t\"precision\": 11,\n\t\t\t\t\t\t\t\"calendarmodel\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q1985727\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"type\": \"time\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Dates-8-6\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P8\",\n\t\t\t\t\t\"datatype\": \"time\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\"time\": \"+2014-04-31T00:00:00Z\",\n\t\t\t\t\t\t\t\"timezone\": 0,\n\t\t\t\t\t\t\t\"before\": 0,\n\t\t\t\t\t\t\t\"after\": 0,\n\t\t\t\t\t\t\t\"precision\": 9,\n\t\t\t\t\t\t\t\"calendarmodel\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q1985727\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"type\": \"time\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Dates-8-7\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P8\",\n\t\t\t\t\t\"datatype\": \"time\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\"time\": \"+2012-02-29T00:00:00Z\",\n\t\t\t\t\t\t\t\"timezone\": 0,\n\t\t\t\t\t\t\t\"before\": 0,\n\t\t\t\t\t\t\t\"after\": 0,\n\t\t\t\t\t\t\t\"precision\": 9,\n\t\t\t\t\t\t\t\"calendarmodel\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q1985727\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"type\": \"time\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Dates-8-8\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P8\",\n\t\t\t\t\t\"datatype\": \"time\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\"time\": \"+2012-02-29T00:00:00Z\",\n\t\t\t\t\t\t\t\"timezone\": 0,\n\t\t\t\t\t\t\t\"before\": 0,\n\t\t\t\t\t\t\t\"after\": 0,\n\t\t\t\t\t\t\t\"precision\": 11,\n\t\t\t\t\t\t\t\"calendarmodel\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q1985786\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"type\": \"time\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Dates-8-9\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P8\",\n\t\t\t\t\t\"datatype\": \"time\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\"time\": \"+2012-02-31T00:00:00Z\",\n\t\t\t\t\t\t\t\"timezone\": 0,\n\t\t\t\t\t\t\t\"before\": 0,\n\t\t\t\t\t\t\t\"after\": 0,\n\t\t\t\t\t\t\t\"precision\": 11,\n\t\t\t\t\t\t\t\"calendarmodel\": \"http:\\/\\/acme.test\\/calendar\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"type\": \"time\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Dates-8-10\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P8\",\n\t\t\t\t\t\"datatype\": \"time\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\"time\": \"+2000000200-10-00T00:00:00Z\",\n\t\t\t\t\t\t\t\"timezone\": 0,\n\t\t\t\t\t\t\t\"before\": 0,\n\t\t\t\t\t\t\t\"after\": 0,\n\t\t\t\t\t\t\t\"precision\": 5,\n\t\t\t\t\t\t\t\"calendarmodel\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q1985727\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"type\": \"time\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Dates-8-11\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P8\",\n\t\t\t\t\t\"datatype\": \"time\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\"time\": \"-2010-02-29T00:00:00Z\",\n\t\t\t\t\t\t\t\"timezone\": 0,\n\t\t\t\t\t\t\t\"before\": 0,\n\t\t\t\t\t\t\t\"after\": 0,\n\t\t\t\t\t\t\t\"precision\": 9,\n\t\t\t\t\t\t\t\"calendarmodel\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q1985786\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"type\": \"time\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Dates-8-12\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P8\",\n\t\t\t\t\t\"datatype\": \"time\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\"time\": \"-2000002010-02-29T00:00:00Z\",\n\t\t\t\t\t\t\t\"timezone\": 0,\n\t\t\t\t\t\t\t\"before\": 0,\n\t\t\t\t\t\t\t\"after\": 0,\n\t\t\t\t\t\t\t\"precision\": 8,\n\t\t\t\t\t\t\t\"calendarmodel\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q1985786\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"type\": \"time\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-Dates-8-13\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P8\",\n\t\t\t\t\t\"datatype\": \"time\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\"time\": \"+0000-02-29T00:00:00Z\",\n\t\t\t\t\t\t\t\"timezone\": 0,\n\t\t\t\t\t\t\t\"before\": 0,\n\t\t\t\t\t\t\t\"after\": 0,\n\t\t\t\t\t\t\t\"precision\": 9,\n\t\t\t\t\t\t\t\"calendarmodel\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q1985786\"\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"type\": \"time\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\"\n\t\t\t}\n\n\t\t]\n\t}\n}\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/rdf/entities/Q9.json","messages":[{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":73,"column":27,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":73,"endColumn":28,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1565,1566],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1565,1565],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":73,"column":29,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":73,"endColumn":30,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1567,1568],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1567,1567],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":73,"column":47,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":73,"endColumn":48,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1585,1586],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1585,1585],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":73,"column":55,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":73,"endColumn":56,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1593,1594],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1593,1593],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":148,"column":35,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":148,"endColumn":36,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3447,3448],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3447,3447],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":148,"column":37,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":148,"endColumn":38,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3449,3450],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3449,3449],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":148,"column":55,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":148,"endColumn":56,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3467,3468],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3467,3467],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":148,"column":63,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":148,"endColumn":64,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3475,3476],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3475,3475],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":160,"column":26,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":160,"endColumn":27,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3715,3716],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3715,3715],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":160,"column":28,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":160,"endColumn":29,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3717,3718],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3717,3717],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":160,"column":43,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":160,"endColumn":44,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3732,3733],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3732,3732],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":273,"column":27,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":273,"endColumn":28,"suggestions":[{"messageId":"removeEscape","fix":{"range":[6096,6097],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[6096,6096],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":273,"column":29,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":273,"endColumn":30,"suggestions":[{"messageId":"removeEscape","fix":{"range":[6098,6099],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[6098,6098],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":273,"column":47,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":273,"endColumn":48,"suggestions":[{"messageId":"removeEscape","fix":{"range":[6116,6117],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[6116,6116],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":273,"column":55,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":273,"endColumn":56,"suggestions":[{"messageId":"removeEscape","fix":{"range":[6124,6125],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[6124,6124],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":348,"column":35,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":348,"endColumn":36,"suggestions":[{"messageId":"removeEscape","fix":{"range":[7978,7979],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[7978,7978],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":348,"column":37,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":348,"endColumn":38,"suggestions":[{"messageId":"removeEscape","fix":{"range":[7980,7981],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[7980,7980],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":348,"column":55,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":348,"endColumn":56,"suggestions":[{"messageId":"removeEscape","fix":{"range":[7998,7999],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[7998,7998],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":348,"column":63,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":348,"endColumn":64,"suggestions":[{"messageId":"removeEscape","fix":{"range":[8006,8007],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[8006,8006],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":360,"column":26,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":360,"endColumn":27,"suggestions":[{"messageId":"removeEscape","fix":{"range":[8246,8247],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[8246,8246],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":360,"column":28,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":360,"endColumn":29,"suggestions":[{"messageId":"removeEscape","fix":{"range":[8248,8249],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[8248,8248],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":360,"column":43,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":360,"endColumn":44,"suggestions":[{"messageId":"removeEscape","fix":{"range":[8263,8264],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[8263,8263],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]}],"errorCount":22,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"source":"{\n\t\"id\": \"Q9\",\n\t\"type\": \"item\",\n\t\"claims\": {\n\t\t\"P7\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-References-Dup\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P7\",\n\t\t\t\t\t\"datatype\": \"string\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": \"string\",\n\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\",\n\t\t\t\t\"references\": [\n\t\t\t\t\t{\n\t\t\t\t\t\t\"snaks\": {\n\t\t\t\t\t\t\t\"P2\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P2\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\t\t\t\t\"numeric-id\": 42\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P2\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\t\t\t\t\"numeric-id\": 666\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P3\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P3\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"commonsMedia\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": \"Universe.svg\",\n\t\t\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"novalue\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P3\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P4\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P4\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"globecoordinate\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"latitude\": 12.125,\n\t\t\t\t\t\t\t\t\t\t\t\"longitude\": 67.25,\n\t\t\t\t\t\t\t\t\t\t\t\"precision\": 0.0625,\n\t\t\t\t\t\t\t\t\t\t\t\"globe\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q2\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"globecoordinate\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P5\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P5\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"monolingualtext\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"text\": \"\\u043f\\u0440\\u0435\\u0432\\u0435\\u0434\",\n\t\t\t\t\t\t\t\t\t\t\t\"language\": \"ru\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"monolingualtext\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"somevalue\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P5\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P5\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"monolingualtext\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"text\": \"\\u0431\\u0440\\u0435\\u0434\",\n\t\t\t\t\t\t\t\t\t\t\t\"language\": \"ru\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"monolingualtext\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P6\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P6\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"quantity\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"amount\": \"+19.768000000000000682121026329696178436279296875\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\": \"1\",\n\t\t\t\t\t\t\t\t\t\t\t\"upperBound\": \"+19.76899999999999835154085303656756877899169921875\",\n\t\t\t\t\t\t\t\t\t\t\t\"lowerBound\": \"+19.766999999999999459987520822323858737945556640625\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"quantity\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P7\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P7\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"string\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": \"simplestring\",\n\t\t\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P8\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P8\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"time\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"time\": \"-0200-00-00T00:00:00Z\",\n\t\t\t\t\t\t\t\t\t\t\t\"timezone\": 0,\n\t\t\t\t\t\t\t\t\t\t\t\"before\": 0,\n\t\t\t\t\t\t\t\t\t\t\t\"after\": 0,\n\t\t\t\t\t\t\t\t\t\t\t\"precision\": 9,\n\t\t\t\t\t\t\t\t\t\t\t\"calendarmodel\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q1985727\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"time\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P9\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P9\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"url\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": \"http:\\/\\/url.acme.test\\/\",\n\t\t\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"foreign:P11\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"foreign:P11\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"string\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": \"simplestring\",\n\t\t\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"foreign:P12\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"foreign:P12\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\t\t\t\t\"id\": \"foreign:Q303\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"snaks-order\": [\n\t\t\t\t\t\t\t\"P2\",\n\t\t\t\t\t\t\t\"P3\",\n\t\t\t\t\t\t\t\"P4\",\n\t\t\t\t\t\t\t\"P5\",\n\t\t\t\t\t\t\t\"P6\",\n\t\t\t\t\t\t\t\"P7\",\n\t\t\t\t\t\t\t\"P8\",\n\t\t\t\t\t\t\t\"P9\",\n\t\t\t\t\t\t\t\"foreign:P11\",\n\t\t\t\t\t\t\t\"foreign:P12\"\n\t\t\t\t\t\t]\n\t\t\t\t\t}\n\t\t\t\t]\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-References-2-Dup\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P7\",\n\t\t\t\t\t\"datatype\": \"string\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": \"string2\",\n\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\",\n\t\t\t\t\"references\": [\n\t\t\t\t\t{\n\t\t\t\t\t\t\"snaks\": {\n\t\t\t\t\t\t\t\"P2\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P2\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\t\t\t\t\"numeric-id\": 42\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P2\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\t\t\t\t\"numeric-id\": 666\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P3\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P3\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"commonsMedia\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": \"Universe.svg\",\n\t\t\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"novalue\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P3\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P4\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P4\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"globecoordinate\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"latitude\": 12.125,\n\t\t\t\t\t\t\t\t\t\t\t\"longitude\": 67.25,\n\t\t\t\t\t\t\t\t\t\t\t\"precision\": 0.0625,\n\t\t\t\t\t\t\t\t\t\t\t\"globe\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q2\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"globecoordinate\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P5\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P5\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"monolingualtext\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"text\": \"\\u043f\\u0440\\u0435\\u0432\\u0435\\u0434\",\n\t\t\t\t\t\t\t\t\t\t\t\"language\": \"ru\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"monolingualtext\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"somevalue\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P5\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P5\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"monolingualtext\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"text\": \"\\u0431\\u0440\\u0435\\u0434\",\n\t\t\t\t\t\t\t\t\t\t\t\"language\": \"ru\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"monolingualtext\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P6\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P6\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"quantity\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"amount\": \"+19.768000000000000682121026329696178436279296875\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\": \"1\",\n\t\t\t\t\t\t\t\t\t\t\t\"upperBound\": \"+19.76899999999999835154085303656756877899169921875\",\n\t\t\t\t\t\t\t\t\t\t\t\"lowerBound\": \"+19.766999999999999459987520822323858737945556640625\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"quantity\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P7\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P7\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"string\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": \"simplestring\",\n\t\t\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P8\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P8\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"time\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"time\": \"-0200-00-00T00:00:00Z\",\n\t\t\t\t\t\t\t\t\t\t\t\"timezone\": 0,\n\t\t\t\t\t\t\t\t\t\t\t\"before\": 0,\n\t\t\t\t\t\t\t\t\t\t\t\"after\": 0,\n\t\t\t\t\t\t\t\t\t\t\t\"precision\": 9,\n\t\t\t\t\t\t\t\t\t\t\t\"calendarmodel\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q1985727\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"time\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P9\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P9\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"url\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": \"http:\\/\\/url.acme.test\\/\",\n\t\t\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"foreign:P11\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"foreign:P11\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"string\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": \"simplestring\",\n\t\t\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"foreign:P12\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"foreign:P12\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\t\t\t\t\"id\": \"foreign:Q303\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"snaks-order\": [\n\t\t\t\t\t\t\t\"P2\",\n\t\t\t\t\t\t\t\"P3\",\n\t\t\t\t\t\t\t\"P4\",\n\t\t\t\t\t\t\t\"P5\",\n\t\t\t\t\t\t\t\"P6\",\n\t\t\t\t\t\t\t\"P7\",\n\t\t\t\t\t\t\t\"P8\",\n\t\t\t\t\t\t\t\"P9\",\n\t\t\t\t\t\t\t\"foreign:P11\",\n\t\t\t\t\t\t\t\"foreign:P12\"\n\t\t\t\t\t\t]\n\t\t\t\t\t}\n\t\t\t\t]\n\t\t\t}\n\t\t]\n\t}\n}\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/phpunit/data/rdf/entities/Q9_no_prefixed_ids.json","messages":[{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":73,"column":27,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":73,"endColumn":28,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1565,1566],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1565,1565],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":73,"column":29,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":73,"endColumn":30,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1567,1568],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1567,1567],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":73,"column":47,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":73,"endColumn":48,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1585,1586],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1585,1585],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":73,"column":55,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":73,"endColumn":56,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1593,1594],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1593,1593],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":148,"column":35,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":148,"endColumn":36,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3447,3448],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3447,3447],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":148,"column":37,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":148,"endColumn":38,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3449,3450],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3449,3449],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":148,"column":55,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":148,"endColumn":56,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3467,3468],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3467,3467],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":148,"column":63,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":148,"endColumn":64,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3475,3476],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3475,3475],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":160,"column":26,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":160,"endColumn":27,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3715,3716],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3715,3715],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":160,"column":28,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":160,"endColumn":29,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3717,3718],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3717,3717],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":160,"column":43,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":160,"endColumn":44,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3732,3733],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3732,3732],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":246,"column":27,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":246,"endColumn":28,"suggestions":[{"messageId":"removeEscape","fix":{"range":[5469,5470],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[5469,5469],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":246,"column":29,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":246,"endColumn":30,"suggestions":[{"messageId":"removeEscape","fix":{"range":[5471,5472],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[5471,5471],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":246,"column":47,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":246,"endColumn":48,"suggestions":[{"messageId":"removeEscape","fix":{"range":[5489,5490],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[5489,5489],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":246,"column":55,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":246,"endColumn":56,"suggestions":[{"messageId":"removeEscape","fix":{"range":[5497,5498],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[5497,5497],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":321,"column":35,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":321,"endColumn":36,"suggestions":[{"messageId":"removeEscape","fix":{"range":[7351,7352],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[7351,7351],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":321,"column":37,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":321,"endColumn":38,"suggestions":[{"messageId":"removeEscape","fix":{"range":[7353,7354],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[7353,7353],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":321,"column":55,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":321,"endColumn":56,"suggestions":[{"messageId":"removeEscape","fix":{"range":[7371,7372],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[7371,7371],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":321,"column":63,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":321,"endColumn":64,"suggestions":[{"messageId":"removeEscape","fix":{"range":[7379,7380],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[7379,7379],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":333,"column":26,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":333,"endColumn":27,"suggestions":[{"messageId":"removeEscape","fix":{"range":[7619,7620],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[7619,7619],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":333,"column":28,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":333,"endColumn":29,"suggestions":[{"messageId":"removeEscape","fix":{"range":[7621,7622],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[7621,7621],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":2,"message":"Unnecessary escape character: \\/.","line":333,"column":43,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":333,"endColumn":44,"suggestions":[{"messageId":"removeEscape","fix":{"range":[7636,7637],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[7636,7636],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]}],"errorCount":22,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"source":"{\n\t\"id\": \"Q9\",\n\t\"type\": \"item\",\n\t\"claims\": {\n\t\t\"P7\": [\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-References-Dup\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P7\",\n\t\t\t\t\t\"datatype\": \"string\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": \"string\",\n\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\",\n\t\t\t\t\"references\": [\n\t\t\t\t\t{\n\t\t\t\t\t\t\"snaks\": {\n\t\t\t\t\t\t\t\"P2\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P2\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\t\t\t\t\"numeric-id\": 42\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P2\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\t\t\t\t\"numeric-id\": 666\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P3\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P3\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"commonsMedia\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": \"Universe.svg\",\n\t\t\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"novalue\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P3\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P4\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P4\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"globecoordinate\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"latitude\": 12.125,\n\t\t\t\t\t\t\t\t\t\t\t\"longitude\": 67.25,\n\t\t\t\t\t\t\t\t\t\t\t\"precision\": 0.0625,\n\t\t\t\t\t\t\t\t\t\t\t\"globe\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q2\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"globecoordinate\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P5\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P5\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"monolingualtext\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"text\": \"\\u043f\\u0440\\u0435\\u0432\\u0435\\u0434\",\n\t\t\t\t\t\t\t\t\t\t\t\"language\": \"ru\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"monolingualtext\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"somevalue\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P5\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P5\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"monolingualtext\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"text\": \"\\u0431\\u0440\\u0435\\u0434\",\n\t\t\t\t\t\t\t\t\t\t\t\"language\": \"ru\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"monolingualtext\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P6\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P6\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"quantity\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"amount\": \"+19.768000000000000682121026329696178436279296875\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\": \"1\",\n\t\t\t\t\t\t\t\t\t\t\t\"upperBound\": \"+19.76899999999999835154085303656756877899169921875\",\n\t\t\t\t\t\t\t\t\t\t\t\"lowerBound\": \"+19.766999999999999459987520822323858737945556640625\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"quantity\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P7\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P7\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"string\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": \"simplestring\",\n\t\t\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P8\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P8\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"time\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"time\": \"-0200-00-00T00:00:00Z\",\n\t\t\t\t\t\t\t\t\t\t\t\"timezone\": 0,\n\t\t\t\t\t\t\t\t\t\t\t\"before\": 0,\n\t\t\t\t\t\t\t\t\t\t\t\"after\": 0,\n\t\t\t\t\t\t\t\t\t\t\t\"precision\": 9,\n\t\t\t\t\t\t\t\t\t\t\t\"calendarmodel\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q1985727\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"time\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P9\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P9\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"url\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": \"http:\\/\\/url.acme.test\\/\",\n\t\t\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"snaks-order\": [\n\t\t\t\t\t\t\t\"P2\",\n\t\t\t\t\t\t\t\"P3\",\n\t\t\t\t\t\t\t\"P4\",\n\t\t\t\t\t\t\t\"P5\",\n\t\t\t\t\t\t\t\"P6\",\n\t\t\t\t\t\t\t\"P7\",\n\t\t\t\t\t\t\t\"P8\",\n\t\t\t\t\t\t\t\"P9\"\n\t\t\t\t\t\t]\n\t\t\t\t\t}\n\t\t\t\t]\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"id\": \"TEST-References-2-Dup\",\n\t\t\t\t\"mainsnak\": {\n\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\"property\": \"P7\",\n\t\t\t\t\t\"datatype\": \"string\",\n\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\"value\": \"string2\",\n\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t\"type\": \"statement\",\n\t\t\t\t\"rank\": \"normal\",\n\t\t\t\t\"references\": [\n\t\t\t\t\t{\n\t\t\t\t\t\t\"snaks\": {\n\t\t\t\t\t\t\t\"P2\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P2\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\t\t\t\t\"numeric-id\": 42\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P2\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"wikibase-entityid\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"entity-type\": \"item\",\n\t\t\t\t\t\t\t\t\t\t\t\"numeric-id\": 666\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"wikibase-entityid\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P3\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P3\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"commonsMedia\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": \"Universe.svg\",\n\t\t\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"novalue\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P3\"\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P4\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P4\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"globecoordinate\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"latitude\": 12.125,\n\t\t\t\t\t\t\t\t\t\t\t\"longitude\": 67.25,\n\t\t\t\t\t\t\t\t\t\t\t\"precision\": 0.0625,\n\t\t\t\t\t\t\t\t\t\t\t\"globe\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q2\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"globecoordinate\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P5\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P5\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"monolingualtext\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"text\": \"\\u043f\\u0440\\u0435\\u0432\\u0435\\u0434\",\n\t\t\t\t\t\t\t\t\t\t\t\"language\": \"ru\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"monolingualtext\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"somevalue\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P5\"\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P5\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"monolingualtext\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"text\": \"\\u0431\\u0440\\u0435\\u0434\",\n\t\t\t\t\t\t\t\t\t\t\t\"language\": \"ru\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"monolingualtext\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P6\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P6\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"quantity\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"amount\": \"+19.768000000000000682121026329696178436279296875\",\n\t\t\t\t\t\t\t\t\t\t\t\"unit\": \"1\",\n\t\t\t\t\t\t\t\t\t\t\t\"upperBound\": \"+19.76899999999999835154085303656756877899169921875\",\n\t\t\t\t\t\t\t\t\t\t\t\"lowerBound\": \"+19.766999999999999459987520822323858737945556640625\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"quantity\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P7\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P7\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"string\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": \"simplestring\",\n\t\t\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P8\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P8\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"time\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": {\n\t\t\t\t\t\t\t\t\t\t\t\"time\": \"-0200-00-00T00:00:00Z\",\n\t\t\t\t\t\t\t\t\t\t\t\"timezone\": 0,\n\t\t\t\t\t\t\t\t\t\t\t\"before\": 0,\n\t\t\t\t\t\t\t\t\t\t\t\"after\": 0,\n\t\t\t\t\t\t\t\t\t\t\t\"precision\": 9,\n\t\t\t\t\t\t\t\t\t\t\t\"calendarmodel\": \"http:\\/\\/www.wikidata.org\\/entity\\/Q1985727\"\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\"type\": \"time\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"P9\": [\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\"snaktype\": \"value\",\n\t\t\t\t\t\t\t\t\t\"property\": \"P9\",\n\t\t\t\t\t\t\t\t\t\"datatype\": \"url\",\n\t\t\t\t\t\t\t\t\t\"datavalue\": {\n\t\t\t\t\t\t\t\t\t\t\"value\": \"http:\\/\\/url.acme.test\\/\",\n\t\t\t\t\t\t\t\t\t\t\"type\": \"string\"\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"snaks-order\": [\n\t\t\t\t\t\t\t\"P2\",\n\t\t\t\t\t\t\t\"P3\",\n\t\t\t\t\t\t\t\"P4\",\n\t\t\t\t\t\t\t\"P5\",\n\t\t\t\t\t\t\t\"P6\",\n\t\t\t\t\t\t\t\"P7\",\n\t\t\t\t\t\t\t\"P8\",\n\t\t\t\t\t\t\t\"P9\"\n\t\t\t\t\t\t]\n\t\t\t\t\t}\n\t\t\t\t]\n\t\t\t}\n\t\t]\n\t}\n}\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/qunit/dataTypes/DataType.tests.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/qunit/dataTypes/DataTypeStore.tests.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/qunit/experts/Item.tests.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/qunit/experts/Property.tests.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/qunit/index.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/qunit/jquery.wikibase/jquery.wikibase.entitysearch.tests.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/qunit/wikibase.EntityInitializer.tests.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/qunit/wikibase.PropertyDataTypeStore.tests.js","messages":[{"ruleId":"no-shadow","severity":1,"message":"'dataType' is already declared in the upper scope on line 156 column 71.","line":159,"column":72,"nodeType":"Identifier","messageId":"noShadow","endLine":159,"endColumn":80},{"ruleId":"no-shadow","severity":1,"message":"'dataType' is already declared in the upper scope on line 181 column 71.","line":184,"column":72,"nodeType":"Identifier","messageId":"noShadow","endLine":184,"endColumn":80}],"errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":"( function ( sinon ) {\n\t'use strict';\n\n\tvar PropertyDataTypeStore = require( '../../resources/wikibase.PropertyDataTypeStore.js' );\n\n\tQUnit.module( 'wikibase.PropertyDataTypeStore' );\n\n\tfunction newPropertyDataTypeStore( services ) {\n\t\tservices = services || {};\n\n\t\treturn new PropertyDataTypeStore(\n\t\t\tservices.entityLoadedHook || { add: sinon.stub().yields( { claims: {} } ) },\n\t\t\tservices.entityStore || { get: sinon.stub().returns( $.Deferred().resolve( null ) ) }\n\t\t);\n\t}\n\n\tQUnit.test( 'set/getDataTypeForProperty', function ( assert ) {\n\t\tvar done = assert.async(),\n\t\t\tdataTypeStore = newPropertyDataTypeStore();\n\n\t\tdataTypeStore.setDataTypeForProperty( 'P123', 'string' );\n\n\t\tdataTypeStore.getDataTypeForProperty( 'P123' ).done( function ( dataType ) {\n\t\t\tassert.strictEqual( dataType, 'string' );\n\t\t\tdone();\n\t\t} );\n\t} );\n\n\tQUnit.test( 'Checks existing statements for the requested property\\'s data type', function ( assert ) {\n\t\tvar testData = [\n\t\t\t\t{\n\t\t\t\t\tmessage: 'getting the data type from a main snak',\n\t\t\t\t\texpected: 'time',\n\t\t\t\t\tproperty: 'P123',\n\t\t\t\t\tentity: {\n\t\t\t\t\t\t// id, labels, etc not relevant for these tests\n\t\t\t\t\t\tclaims: {\n\t\t\t\t\t\t\tP123: [ {\n\t\t\t\t\t\t\t\tmainsnak: { datatype: 'time' }\n\t\t\t\t\t\t\t} ]\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tmessage: 'getting the data type from a qualifier',\n\t\t\t\t\texpected: 'string',\n\t\t\t\t\tproperty: 'P666',\n\t\t\t\t\tentity: {\n\t\t\t\t\t\tclaims: {\n\t\t\t\t\t\t\tP123: [ {\n\t\t\t\t\t\t\t\tqualifiers: {\n\t\t\t\t\t\t\t\t\tP666: [\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tdatatype: 'string'\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} ]\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t// This is a contrived example because at the time of writing the lexeme json is missing the data\n\t\t\t\t\t// type on statements on sub entities for some reason -> T249206.\n\t\t\t\t\tmessage: 'getting the data type from a statement on a sub entity',\n\t\t\t\t\texpected: 'quantity',\n\t\t\t\t\tproperty: 'P789',\n\t\t\t\t\tentity: {\n\t\t\t\t\t\tsenses: [ {\n\t\t\t\t\t\t\tclaims: {\n\t\t\t\t\t\t\t\tP789: [ {\n\t\t\t\t\t\t\t\t\tmainsnak: { datatype: 'quantity' }\n\t\t\t\t\t\t\t\t} ]\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} ]\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tmessage: 'returns null if a statement exists for the property but without data type',\n\t\t\t\t\texpected: null,\n\t\t\t\t\tproperty: 'P321',\n\t\t\t\t\tentity: {\n\t\t\t\t\t\tsenses: [ {\n\t\t\t\t\t\t\tclaims: {\n\t\t\t\t\t\t\t\tP321: [ {\n\t\t\t\t\t\t\t\t\tmainsnak: {\n\t\t\t\t\t\t\t\t\t\t// datatype: 'missing :('\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t} ]\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} ]\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t],\n\t\t\tdone = assert.async( testData.length );\n\n\t\ttestData.forEach( function ( test ) {\n\t\t\tvar entityLoadedHook = { add: sinon.stub().yields( test.entity ) },\n\t\t\t\tdataTypeStore = newPropertyDataTypeStore( { entityLoadedHook: entityLoadedHook } );\n\n\t\t\tdataTypeStore.getDataTypeForProperty( test.property ).done( function ( dataType ) {\n\t\t\t\tassert.strictEqual( dataType, test.expected, test.message );\n\t\t\t\tdone();\n\t\t\t} );\n\t\t} );\n\t} );\n\n\tQUnit.test( 'Given data type not set and no existing statement for the property, uses entity store', function ( assert ) {\n\t\tvar done = assert.async(),\n\t\t\texpectedType = 'quantity',\n\t\t\tpropertyId = 'P666',\n\t\t\tentityStore = {\n\t\t\t\tget: sinon.stub().returns( $.Deferred().resolve( {\n\t\t\t\t\tgetDataTypeId: function () {\n\t\t\t\t\t\treturn expectedType;\n\t\t\t\t\t}\n\t\t\t\t} ) )\n\t\t\t},\n\t\t\tdataTypeStore = newPropertyDataTypeStore( { entityStore: entityStore } );\n\n\t\tdataTypeStore.getDataTypeForProperty( propertyId ).done( function ( dataType ) {\n\t\t\tassert.strictEqual( dataType, expectedType );\n\t\t\tsinon.assert.calledWith( entityStore.get, propertyId );\n\n\t\t\tdone();\n\t\t} );\n\t} );\n\n\tQUnit.test( 'Given data type cannot be found, returns null', function ( assert ) {\n\t\tvar done = assert.async(),\n\t\t\tentityStore = {\n\t\t\t\tget: sinon.stub().returns( $.Deferred().resolve( null ) )\n\t\t\t},\n\t\t\tdataTypeStore = newPropertyDataTypeStore( { entityStore: entityStore } );\n\n\t\tdataTypeStore.getDataTypeForProperty( 'P777' ).done( function ( dataType ) {\n\t\t\tassert.strictEqual( dataType, null );\n\t\t\tdone();\n\t\t} );\n\t} );\n\n\tQUnit.test( 'Given previous successful entity JSON lookup, it remembers the result', function ( assert ) {\n\t\tvar done = assert.async(),\n\t\t\texpectedType = 'string',\n\t\t\tpropertyId = 'P123',\n\t\t\tentity = {\n\t\t\t\tclaims: {\n\t\t\t\t\tP123: [ {\n\t\t\t\t\t\tmainsnak: { datatype: expectedType }\n\t\t\t\t\t} ]\n\t\t\t\t}\n\t\t\t},\n\t\t\tentityLoadedHook = { add: sinon.stub().yields( entity ) },\n\t\t\tdataTypeStore = newPropertyDataTypeStore( { entityLoadedHook: entityLoadedHook } );\n\n\t\tdataTypeStore.getDataTypeForProperty( propertyId ).then( function ( dataType ) {\n\t\t\tassert.strictEqual( dataType, expectedType );\n\n\t\t\tdataTypeStore.getDataTypeForProperty( propertyId ).then( function ( dataType ) {\n\t\t\t\tassert.strictEqual( dataType, expectedType );\n\t\t\t\tsinon.assert.calledOnce( entityLoadedHook.add );\n\n\t\t\t\tdone();\n\t\t\t} );\n\t\t} );\n\t} );\n\n\tQUnit.test( 'Given previous successful entity entityStore lookup, it remembers the result', function ( assert ) {\n\t\tvar done = assert.async(),\n\t\t\texpectedType = 'quantity',\n\t\t\tpropertyId = 'P666',\n\t\t\tentityStore = {\n\t\t\t\tget: sinon.stub().returns( $.Deferred().resolve( {\n\t\t\t\t\tgetDataTypeId: function () {\n\t\t\t\t\t\treturn expectedType;\n\t\t\t\t\t}\n\t\t\t\t} ) )\n\t\t\t},\n\t\t\tdataTypeStore = newPropertyDataTypeStore( { entityStore: entityStore } );\n\n\t\tdataTypeStore.getDataTypeForProperty( propertyId ).then( function ( dataType ) {\n\t\t\tassert.strictEqual( dataType, expectedType );\n\n\t\t\tdataTypeStore.getDataTypeForProperty( propertyId ).then( function ( dataType ) {\n\t\t\t\tassert.strictEqual( dataType, expectedType );\n\t\t\t\tsinon.assert.calledOnce( entityStore.get );\n\n\t\t\t\tdone();\n\t\t\t} );\n\t\t} );\n\t} );\n\n}( sinon ) );\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/qunit/wikibase.sites.tests.js","messages":[{"ruleId":"jsdoc/valid-types","severity":1,"message":"Tag @type must have a type.","line":12,"column":null,"nodeType":"Block","endLine":12,"endColumn":null},{"ruleId":"jsdoc/valid-types","severity":1,"message":"Tag @type must have a type.","line":19,"column":null,"nodeType":"Block","endLine":19,"endColumn":null}],"errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/**\n * @license GPL-2.0-or-later\n * @author Daniel Werner < daniel.a.r.werner@gmail.com >\n */\n\n( function ( wb, Site ) {\n\t'use strict';\n\n\t/**\n\t * All site groups used in site definitions in TEST_SITE_DEFINITIONS.\n\t *\n\t * @type String[]\n\t */\n\tvar TEST_SITE_GROUPS = [ 'wikipedia', 'foo bar group' ];\n\n\t/**\n\t * Site definition loaded to mw.config var \"wbSiteDetails\" before each test.\n\t *\n\t * @type Object\n\t */\n\tvar TEST_SITE_DEFINITIONS = {\n\t\tnnwiki: {\n\t\t\tapiUrl: '//nn.wikipedia.org/w/api.php',\n\t\t\tid: 'nnwiki',\n\t\t\tgroup: TEST_SITE_GROUPS[ 0 ],\n\t\t\tlanguageCode: 'nn',\n\t\t\tname: null,\n\t\t\tpageUrl: '//nn.wikipedia.org/wiki/$1',\n\t\t\tshortName: 'norsk nynorsk'\n\t\t},\n\t\t'foo-site': {\n\t\t\tapiUrl: '//foo.site.bar/api.php',\n\t\t\tid: 'foo-site',\n\t\t\tgroup: TEST_SITE_GROUPS[ 1 ],\n\t\t\tlanguageCode: 'foo',\n\t\t\tname: null,\n\t\t\tpageUrl: '//foo.site.bar/pages/$1',\n\t\t\tshortName: 'foo site'\n\t\t},\n\t\tsiteInExistingGroup: {\n\t\t\tapiUrl: '//someSite/api.php',\n\t\t\tglobalSiteId: 'site-in-existing-group',\n\t\t\tgroup: TEST_SITE_GROUPS[ 1 ],\n\t\t\tid: 'siteInExistingGroup',\n\t\t\tlanguageCode: 'siteInExistingGroup',\n\t\t\tname: null,\n\t\t\tpageUrl: '//someSite/pages/$1',\n\t\t\tshortName: 'some site'\n\t\t}\n\t};\n\n\tQUnit.module( 'wikibase.sites', QUnit.newMwEnvironment( {\n\t\tsetup: function () {\n\t\t\t// empty cache of wikibases site details\n\t\t\twb.sites._siteList = null;\n\n\t\t\tmw.config.set( {\n\t\t\t\twbSiteDetails: TEST_SITE_DEFINITIONS\n\t\t\t} );\n\t\t}\n\t} ) );\n\n\tQUnit.test( 'basic', function ( assert ) {\n\t\tassert.ok(\n\t\t\twb.sites instanceof Object,\n\t\t\t'initiated wikibase object'\n\t\t);\n\t} );\n\n\t/**\n\t * Generic test for testing an object of sites as supposed to be returned by getSites() and\n\t * others.\n\t *\n\t * TODO: Another reason why there should be a SiteList object, much easier to verify that the\n\t *  returned value of different functions returning a list of sites is valid.\n\t *\n\t * @param {QUnit.assert} assert\n\t * @param {string} fnName\n\t * @param {Object} sites\n\t */\n\tfunction siteSetTest( assert, fnName, sites ) {\n\t\tassert.ok(\n\t\t\t$.isPlainObject( sites ),\n\t\t\tfnName + '() returns a plain object'\n\t\t);\n\n\t\tvar allSiteInstances = true;\n\t\t// eslint-disable-next-line no-jquery/no-each-util\n\t\t$.each( sites, function ( i, site ) {\n\t\t\tallSiteInstances = allSiteInstances && ( site instanceof Site );\n\t\t} );\n\n\t\tassert.ok(\n\t\t\tallSiteInstances,\n\t\t\tfnName + '() returned object fields only hold site objects'\n\t\t);\n\t}\n\n\tQUnit.test( 'wikibase.sites.getSites()', function ( assert ) {\n\t\tvar sites = wb.sites.getSites();\n\t\tsiteSetTest( assert, 'getSites', sites );\n\n\t\tassert.strictEqual(\n\t\t\tsites.length,\n\t\t\tTEST_SITE_DEFINITIONS.length,\n\t\t\t'getSites() returns expected number of sites'\n\t\t);\n\t} );\n\n\tQUnit.test( 'wikibase.sites.getSitesOfGroup()', function ( assert ) {\n\t\tTEST_SITE_GROUPS.forEach( function ( group ) {\n\t\t\tvar sites = wb.sites.getSitesOfGroup( group );\n\t\t\tsiteSetTest( assert, 'getSitesOfGroup', sites );\n\n\t\t\tvar allFromRightGroup = true;\n\t\t\t// eslint-disable-next-line no-jquery/no-each-util\n\t\t\t$.each( sites, function ( i, site ) {\n\t\t\t\tallFromRightGroup = allFromRightGroup && ( site.getGroup() === group );\n\t\t\t} );\n\n\t\t\tassert.ok(\n\t\t\t\tallFromRightGroup,\n\t\t\t\t'getSitesOfGroup( \"' + group + '\" ) only returned sites of group \"' + group + '\"'\n\t\t\t);\n\t\t} );\n\t} );\n\n\tQUnit.test( 'wikibase.sites.getSite()', function ( assert ) {\n\t\tassert.ok(\n\t\t\twb.sites.getSite( 'nnwiki' ) instanceof Site,\n\t\t\t'trying to get a known site by its ID returns a site object'\n\t\t);\n\n\t\tassert.strictEqual(\n\t\t\twb.sites.getSite( 'unknown-site' ),\n\t\t\tnull,\n\t\t\t'trying to get an unknown site returns null'\n\t\t);\n\t} );\n\n}( wikibase, wikibase.Site ) );\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/repo/tests/selenium/specs/blocked.js","messages":[{"ruleId":"mocha/no-setup-in-describe","severity":1,"message":"Unexpected member expression in describe block. Member expressions may call functions via getters.","line":61,"column":28,"nodeType":"MemberExpression","endLine":61,"endColumn":37}],"errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"'use strict';\n\nconst assert = require( 'assert' ),\n\tMWBot = require( 'mwbot' ),\n\tPage = require( 'wdio-mediawiki/Page' ),\n\tLoginPage = require( 'wdio-mediawiki/LoginPage' );\n\nconst bot = new MWBot( {\n\tapiUrl: browser.config.baseUrl + '/api.php'\n} );\n\ndescribe( 'blocked user cannot use', function () {\n\n\tbefore( function () {\n\t\tbot.loginGetEditToken( {\n\t\t\tusername: browser.config.mwUser,\n\t\t\tpassword: browser.config.mwPwd\n\t\t} );\n\n\t\tLoginPage.loginAdmin();\n\t} );\n\n\tbeforeEach( function blockUser() {\n\t\treturn bot.request( {\n\t\t\taction: 'block',\n\t\t\tuser: browser.config.mwUser,\n\t\t\texpiry: '1 minute',\n\t\t\treason: 'Wikibase browser test (T211120)',\n\t\t\ttoken: bot.editToken\n\t\t} );\n\t} );\n\n\tafterEach( function unblockUser() {\n\t\treturn bot.request( {\n\t\t\taction: 'unblock',\n\t\t\tuser: browser.config.mwUser,\n\t\t\treason: 'Wikibase browser test done (T211120)',\n\t\t\ttoken: bot.editToken\n\t\t} );\n\t} );\n\n\tfunction assertIsUserBlockedError() {\n\t\t$( '#mw-returnto' ).waitForDisplayed();\n\n\t\tassert.strictEqual( $( '#firstHeading' ).getText(), 'User is blocked' );\n\t}\n\n\tconst tests = [\n\t\t{ name: 'SetLabel', ids: [ 'wb-modifyentity-id', 'wb-setlabel-submit' ] },\n\t\t{ name: 'SetDescription', ids: [ 'wb-modifyentity-id', 'wb-setdescription-submit' ] },\n\t\t{ name: 'SetAliases', ids: [ 'wb-modifyentity-id', 'wb-setaliases-submit' ] },\n\t\t{ name: 'SetLabelDescriptionAliases', ids: [ 'wb-modifyentity-id', 'wb-setlabeldescriptionaliases-submit' ] },\n\t\t{ name: 'SetSiteLink', ids: [ 'wb-modifyentity-id', 'wb-setsitelink-submit' ] },\n\t\t{ name: 'NewItem', ids: [ 'wb-newentity-label', 'wb-newentity-submit' ] },\n\t\t{ name: 'NewProperty', ids: [ 'wb-newentity-label', 'wb-newentity-submit' ] },\n\t\t{ name: 'MergeItems', ids: [ 'wb-mergeitems-fromid', 'wb-mergeitems-submit' ] },\n\t\t{ name: 'RedirectEntity', ids: [ 'wb-redirectentity-fromid', 'wb-redirectentity-submit' ] }\n\t];\n\n\tfor ( const test of tests ) {\n\t\tconst title = `Special:${test.name}`;\n\t\tit( title, function () {\n\t\t\t( new Page() ).openTitle( title );\n\n\t\t\tassertIsUserBlockedError();\n\n\t\t\tfor ( const id of test.ids ) {\n\t\t\t\tconst selector = `#${id}`;\n\t\t\t\tassert(\n\t\t\t\t\t!$( selector ).isExisting(),\n\t\t\t\t\t`element \"${selector}\" should not exist`\n\t\t\t\t);\n\t\t\t}\n\t\t} );\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-process-exit","replacedBy":[]}]},{"filePath":"/src/repo/repo/tests/selenium/specs/item.js","messages":[{"ruleId":"max-len","severity":1,"message":"This line has a length of 103. Maximum allowed is 100.","line":12,"column":1,"nodeType":"Program","messageId":"max","endLine":12,"endColumn":98},{"ruleId":"max-len","severity":1,"message":"This line has a length of 113. Maximum allowed is 100.","line":47,"column":1,"nodeType":"Program","messageId":"max","endLine":47,"endColumn":108}],"errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":"'use strict';\n\nconst Util = require( 'wdio-mediawiki/Util' );\nconst assert = require( 'assert' );\nconst WikibaseApi = require( 'wdio-wikibase/wikibase.api' );\nconst EntityPage = require( 'wdio-wikibase/pageobjects/entity.page' );\nconst ItemPage = require( 'wdio-wikibase/pageobjects/item.page' );\n\ndescribe( 'item', function () {\n\n\tit( 'can add a statement using the keyboard', function () {\n\t\t// high-level overview: add statement, add qualifier, add second qualifier, add reference, save\n\n\t\tconst itemId = browser.call( () => WikibaseApi.createItem( Util.getTestString( 'T154869-' ) ) );\n\t\tconst propertyId = browser.call( () => WikibaseApi.getProperty( 'string' ) );\n\n\t\tEntityPage.open( itemId );\n\n\t\t// begin adding statement (using the mouse)\n\t\tItemPage.addStatementLink.waitForDisplayed();\n\t\tItemPage.addStatementLink.click();\n\t\t// enter the main value\n\t\tItemPage.propertyInputField.waitForDisplayed();\n\t\t// property field should be automatically focused\n\t\tbrowser.keys( propertyId );\n\t\tItemPage.selectFirstSuggestedEntityOnEntitySelector();\n\n\t\tItemPage.valueInputField.waitForDisplayed();\n\t\t// focus auto moved after selection\n\t\tbrowser.keys( 'main value' );\n\n\t\t// move focus to “add qualifier” and activate link\n\t\tbrowser.keys( [ 'Tab' ] );\n\t\tbrowser.keys( [ 'Enter' ] );\n\t\t// property input automatically focused\n\t\tconst statement = ItemPage.statements[ 0 ];\n\t\tItemPage.getNthQualifierPropertyInput( statement, 0 ).waitForDisplayed();\n\t\t// property field should be automatically focused\n\t\tbrowser.keys( propertyId );\n\t\tItemPage.selectFirstSuggestedEntityOnEntitySelector();\n\t\tItemPage.firstQualifier.waitForExist();\n\t\t// focus auto moved after selection\n\t\tbrowser.keys( 'qualifier 1' );\n\t\tbrowser.waitUntil( () => ItemPage.isSaveButtonEnabled() );\n\n\t\t// move focus to “add reference” and activate link\n\t\t// (first Tab skips over link to remove current qualifier, second one over link to add another qualifier)\n\t\tbrowser.keys( [ 'Tab', 'Tab', 'Tab' ] );\n\t\tbrowser.keys( [ 'Enter' ] ); // this should also not save the statement (T154869)\n\t\t// property input automatically focused\n\t\tItemPage.getNthReferencePropertyInput( statement, 0 ).waitForDisplayed();\n\t\t// property field should be automatically focused\n\t\tbrowser.keys( propertyId );\n\t\tItemPage.selectFirstSuggestedEntityOnEntitySelector();\n\n\t\tItemPage.firstReference.waitForExist();\n\t\t// focus auto moved after selection\n\t\tbrowser.keys( 'reference 1-1' );\n\t\tbrowser.waitUntil( () => {\n\t\t\treturn ItemPage.isSaveButtonEnabled();\n\t\t} );\n\n\t\t// focus still on reference value input, can save entire statement from there\n\t\tbrowser.keys( [ 'Enter' ] );\n\t\tItemPage.valueInputField.waitForExist( { reverse: true } );\n\t} );\n\n\t// skip this until further investigation of flakiness T227266\n\tit.skip( 'old revisions do not have an edit link', function () {\n\t\tconst itemId = browser.call( () => WikibaseApi.createItem( Util.getTestString( 'T95406-' ) ) );\n\n\t\tEntityPage.open( itemId );\n\t\tItemPage.editItemDescription( 'revision 1' );\n\t\tItemPage.goToPreviousRevision();\n\t\tassert( !ItemPage.editButton.isExisting() );\n\t} );\n} );\n","usedDeprecatedRules":[{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-process-exit","replacedBy":[]}]},{"filePath":"/src/repo/repo/tests/selenium/specs/nonexisting.item.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-process-exit","replacedBy":[]}]},{"filePath":"/src/repo/repo/tests/selenium/specs/readmode.references.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-process-exit","replacedBy":[]}]},{"filePath":"/src/repo/repo/tests/selenium/specs/tainted-ref.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-process-exit","replacedBy":[]}]},{"filePath":"/src/repo/repo/tests/selenium/wdio.conf.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-process-exit","replacedBy":[]}]},{"filePath":"/src/repo/tests/api-testing/LuaWikibaseIntegrationTest.js","messages":[{"ruleId":"max-len","severity":1,"message":"This line has a length of 106. Maximum allowed is 100.","line":83,"column":1,"nodeType":"Program","messageId":"max","endLine":83,"endColumn":104}],"errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"'use strict';\n\nconst { assert, action, utils } = require( 'api-testing' );\nconst germanLabel = 'a-German-label-' + utils.uniq();\nconst englishLabel = 'an-English-label-' + utils.uniq();\nconst englishDescription = 'an-English-description-' + utils.uniq();\n\ndescribe( 'Lua Wikibase integration', () => {\n\tlet mindy;\n\tlet testItemId;\n\tlet module;\n\n\tbefore( 'require extensions', async function () {\n\t\tconst requiredExtensions = [\n\t\t\t'Scribunto',\n\t\t\t'WikibaseRepository',\n\t\t\t'WikibaseClient',\n\t\t];\n\t\tconst installedExtensions = ( await action.getAnon().meta(\n\t\t\t'siteinfo',\n\t\t\t{ siprop: 'extensions' },\n\t\t\t'extensions',\n\t\t) ).map( ( extension ) => extension.name );\n\t\tconst missingExtensions = requiredExtensions.filter(\n\t\t\t( requiredExtension ) => installedExtensions.indexOf( requiredExtension ) === -1,\n\t\t);\n\t\tif ( missingExtensions.length ) {\n\t\t\tthis.skip();\n\t\t}\n\t} );\n\n\tbefore( 'set up admin', async () => {\n\t\tmindy = await action.mindy();\n\t} );\n\n\tbefore( 'create test item', async () => {\n\t\tconst response = await mindy.action( 'wbeditentity', {\n\t\t\tnew: 'item',\n\t\t\ttoken: await mindy.token( 'csrf' ),\n\t\t\tdata: JSON.stringify( {\n\t\t\t\tlabels: {\n\t\t\t\t\tde: { language: 'de', value: germanLabel },\n\t\t\t\t\ten: { language: 'en', value: englishLabel },\n\t\t\t\t},\n\t\t\t\tdescriptions: {\n\t\t\t\t\ten: { language: 'en', value: englishDescription },\n\t\t\t\t},\n\t\t\t} ),\n\t\t}, 'POST' );\n\t\ttestItemId = response.entity.id;\n\t} );\n\n\tbefore( 'create test module', async () => {\n\t\tmodule = utils.title( 'LuaWikibaseIntegrationTest-' );\n\t\tawait mindy.edit( `Module:${module}`, {\n\t\t\ttext: `\nlocal p = {}\nlocal dataValue = { type = 'wikibase-entityid', value = { ['entity-type'] = 'item', id = '${testItemId}' } }\nlocal snak = { datatype = 'wikibase-item', property = 'P435739845', snaktype = 'value', datavalue = dataValue }\np.getLabel = function() return mw.wikibase.getLabel( '${testItemId}' ) end\np.getLabelByLang = function() return mw.wikibase.getLabelByLang( '${testItemId}', 'en' ) end\np.getEntity_labels = function() return mw.wikibase.getEntity( '${testItemId}' ).labels.de.value end\np.getDescription = function() return mw.wikibase.getDescription( '${testItemId}' ) end\np.formatValue = function() return mw.wikibase.formatValue( snak ) end\nreturn p\n`,\n\t\t\tcontentmodel: 'Scribunto',\n\t\t} );\n\t} );\n\n\tit( 'getLabel can be invoked correctly', async () => {\n\t\tconst pageTitle = utils.title( 'WikibaseTestPageToParse-' );\n\t\tawait writeTextToPage( `{{#invoke:${module}|getLabel}}`, pageTitle );\n\t\tconst pageResponse = await parsePage( pageTitle );\n\t\tassert.match( pageResponse.parse.text, new RegExp( englishLabel + '|' + germanLabel ) );\n\t\tconst usageAspects = await getUsageAspects( pageTitle );\n\t\tassert.isNotEmpty( usageAspects );\n\t\tfor ( const usageAspect of usageAspects ) {\n\t\t\tassert.match( usageAspect, /^L(\\..*)?$/ );\n\t\t}\n\t} );\n\n\t// note: this test is only effective with $wgWBClientSettings['allowDataAccessInUserLanguage'] = true;\n\t// otherwise it still passes but doesn’t test anything in particular\n\tit( 'getLabel can be invoked correctly with strange uselang query param', async () => {\n\t\tconst pageTitle = utils.title( 'WikibaseTestPageToParse-' );\n\t\tawait writeTextToPage( `{{#invoke:${module}|getLabel}}`, pageTitle );\n\t\tawait parsePage( pageTitle, { uselang: '⧼Lang⧽' } ); // should not throw\n\t} );\n\n\tit( 'getLabelByLang can be invoked correctly', async () => {\n\t\tconst pageTitle = utils.title( 'WikibaseTestPageToParse-' );\n\t\tawait writeTextToPage( `{{#invoke:${module}|getLabelByLang}}`, pageTitle );\n\t\tconst pageResponse = await parsePage( pageTitle );\n\t\tassert.equal( pageResponse.parse.text, `<p>${englishLabel}\\n</p>` );\n\t\tconst usageAspects = await getUsageAspects( pageTitle );\n\t\tassert.equal( usageAspects, 'L.en' );\n\t} );\n\n\tit( 'getEntity_labels can be invoked correctly', async () => {\n\t\tconst pageTitle = utils.title( 'WikibaseTestPageToParse-' );\n\t\tawait writeTextToPage( `{{#invoke:${module}|getEntity_labels}}`, pageTitle );\n\t\tconst response = await parsePage( pageTitle );\n\t\tassert.equal( response.parse.text, `<p>${germanLabel}\\n</p>` );\n\t\tconst usageAspects = await getUsageAspects( pageTitle );\n\t\tassert.equal( usageAspects, 'L.de' );\n\t} );\n\n\tit( 'getDescription can be invoked correctly', async () => {\n\t\tconst pageTitle = utils.title( 'WikibaseTestPageToParse-' );\n\t\tawait writeTextToPage( `{{#invoke:${module}|getDescription}}`, pageTitle );\n\t\tconst response = await parsePage( pageTitle );\n\t\tassert.equal( response.parse.text, `<p>${englishDescription}\\n</p>` );\n\t\tconst usageAspects = await getUsageAspects( pageTitle );\n\t\tassert.isNotEmpty( usageAspects );\n\t\tfor ( const usageAspect of usageAspects ) {\n\t\t\tassert.match( usageAspect, /^D(\\..*)?$/ );\n\t\t}\n\t} );\n\n\tit( 'formatValue can be invoked correctly', async () => {\n\t\tconst pageTitle = utils.title( 'WikibaseTestPageToParse-' );\n\t\tawait writeTextToPage( `{{#invoke:${module}|formatValue}}`, pageTitle );\n\t\tconst response = await parsePage( pageTitle );\n\t\tassert.match( response.parse.text, new RegExp( englishLabel + '|' + germanLabel ) );\n\t\tconst usageAspects = await getUsageAspects( pageTitle );\n\t\tassert.include( usageAspects, 'T' );\n\t\tconst otherUsageAspects = usageAspects.filter( ( usageAspect ) => usageAspect !== 'T' );\n\t\tassert.isNotEmpty( otherUsageAspects );\n\t\tfor ( const usageAspect of otherUsageAspects ) {\n\t\t\tassert.match( usageAspect, /^L(\\..*)?$/ );\n\t\t}\n\t} );\n\n\tfunction writeTextToPage( text, pageTitle ) {\n\t\treturn action.getAnon().edit( pageTitle, { text }, 'post' );\n\t}\n\n\tfunction parsePage( pageTitle, extraParams = {} ) {\n\t\treturn action.getAnon().action( 'parse', {\n\t\t\tpage: pageTitle,\n\t\t\tdisablelimitreport: true,\n\t\t\tformatversion: 2,\n\t\t\twrapoutputclass: '',\n\t\t\t...extraParams,\n\t\t} );\n\t}\n\n\tasync function getUsageAspects( pageTitle ) {\n\t\tconst usageResponse = await action.getAnon().action( 'query', {\n\t\t\tprop: 'wbentityusage',\n\t\t\ttitles: pageTitle,\n\t\t\tindexpageids: true,\n\t\t} );\n\t\tconst pageId = usageResponse.query.pageids[ 0 ];\n\t\treturn usageResponse.query.pages[ pageId ].wbentityusage[ testItemId ].aspects;\n\t}\n\n} );\n","usedDeprecatedRules":[{"ruleId":"no-new-require","replacedBy":[]},{"ruleId":"no-process-exit","replacedBy":[]}]},{"filePath":"/src/repo/view/resources/jquery/jquery.removeClassByRegex.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/view/resources/jquery/jquery.sticknode.js","messages":[{"ruleId":"no-shadow","severity":1,"message":"'stickyNode' is already declared in the upper scope on line 268 column 8.","line":274,"column":23,"nodeType":"Identifier","messageId":"noShadow","endLine":274,"endColumn":33},{"ruleId":"no-shadow","severity":1,"message":"'stickyNode' is already declared in the upper scope on line 268 column 8.","line":288,"column":23,"nodeType":"Identifier","messageId":"noShadow","endLine":288,"endColumn":33}],"errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/**\n * @license GPL-2.0-or-later\n * @author H. Snater < mediawiki@snater.com >\n */\n( function () {\n\t'use strict';\n\n\tvar $window = $( window ),\n\t\tEventSingletonManager = require( './jquery.util.EventSingletonManager.js' ),\n\t\teventSingleton = new EventSingletonManager(),\n\t\tPLUGIN_NAME = 'sticknode';\n\n\t/**\n\t * @constructor\n\t *\n\t * @param {jQuery} $node\n\t * @param {Object} options\n\t */\n\tvar StickyNode = function ( $node, options ) {\n\t\tthis.$node = $node;\n\t\tthis.$node.data( PLUGIN_NAME, this );\n\n\t\tthis._options = $.extend( {\n\t\t\t$container: null,\n\t\t\tautoWidth: false,\n\t\t\tzIndex: 1\n\t\t}, options );\n\n\t\tthis._initialAttributes = {};\n\t};\n\n\t$.extend( StickyNode.prototype, {\n\t\t/**\n\t\t * @type {jQuery}\n\t\t */\n\t\t$node: null,\n\n\t\t/**\n\t\t * @type {jQuery|null}\n\t\t */\n\t\t_$clone: null,\n\n\t\t/**\n\t\t * @type {Object}\n\t\t */\n\t\t_options: null,\n\n\t\t/**\n\t\t * @type {Object}\n\t\t */\n\t\t_initialAttributes: null,\n\n\t\t/**\n\t\t * @type {boolean}\n\t\t */\n\t\t_changesDocumentHeight: false,\n\n\t\t/**\n\t\t * Destroys and unregisters the plugin.\n\t\t */\n\t\tdestroy: function () {\n\t\t\teventSingleton.unregister(\n\t\t\t\tthis.$node.data( PLUGIN_NAME ),\n\t\t\t\twindow,\n\t\t\t\t'.' + PLUGIN_NAME\n\t\t\t);\n\t\t\tthis.$node.removeData( PLUGIN_NAME );\n\n\t\t\tif ( this._$clone ) {\n\t\t\t\tthis._$clone.remove();\n\t\t\t\tthis._$clone = null;\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * @return {boolean}\n\t\t */\n\t\t_clipsContainer: function () {\n\t\t\tif ( !this._options.$container || !this.isFixed() ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tvar nodeBottom = this.$node.offset().top + this.$node.outerHeight();\n\n\t\t\tvar containerBottom = this._options.$container.offset().top\n\t\t\t\t+ this._options.$container.outerHeight();\n\n\t\t\treturn nodeBottom > containerBottom;\n\t\t},\n\n\t\t/**\n\t\t * @return {boolean}\n\t\t */\n\t\t_isScrolledAfterContainer: function () {\n\t\t\tif ( !this._options.$container ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tvar containerBottom = this._options.$container.offset().top\n\t\t\t\t+ this._options.$container.outerHeight();\n\n\t\t\treturn $window.scrollTop() + this.$node.outerHeight() > containerBottom;\n\t\t},\n\n\t\t/**\n\t\t * @param {number} scrollTop\n\t\t * @return {boolean}\n\t\t */\n\t\t_isScrolledBeforeContainer: function ( scrollTop ) {\n\t\t\tif ( !this._initialAttributes.offset ) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tvar initTopOffset = this._initialAttributes.offset.top;\n\n\t\t\treturn !this._changesDocumentHeight && scrollTop < initTopOffset\n\t\t\t\t|| this._changesDocumentHeight && scrollTop < initTopOffset - this.$node.outerHeight();\n\t\t},\n\n\t\t_fix: function () {\n\t\t\tif ( this.isFixed() ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis._initialAttributes = {\n\t\t\t\toffset: this.$node.offset(),\n\t\t\t\tposition: this.$node.css( 'position' ),\n\t\t\t\ttop: this.$node.css( 'top' ),\n\t\t\t\tleft: this.$node.css( 'left' ),\n\t\t\t\twidth: this.$node.css( 'width' )\n\t\t\t};\n\n\t\t\tvar width = this.$node.width();\n\n\t\t\t// Cannot fix the clone instead of the original node since the clone does not feature event\n\t\t\t// bindings.\n\t\t\tthis._$clone = this.$node.clone()\n\t\t\t\t.css( 'visibility', 'hidden' )\n\t\t\t\t.insertBefore( this.$node );\n\n\t\t\tthis.$node\n\t\t\t.css( 'left', this._initialAttributes.offset.left + 'px' )\n\t\t\t.css( 'top', this.$node.outerHeight() - this.$node.outerHeight( true ) )\n\t\t\t.css( 'width', width )\n\t\t\t.css( 'position', 'fixed' )\n\t\t\t.css( 'z-index', this._options.zIndex );\n\n\t\t\tif ( this._$clone.css( 'display' ) === 'table-header-group' ) {\n\t\t\t\tvar $original = this._$clone.find( '*' );\n\n\t\t\t\tthis.$node.find( '*' ).each( function ( i ) {\n\t\t\t\t\tvar $node = $( this );\n\t\t\t\t\tif ( $node.css( 'display' ) === 'table-cell' ) {\n\t\t\t\t\t\t$node.width( $original.eq( i ).width() + 'px' );\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t}\n\t\t},\n\n\t\t_unfix: function () {\n\t\t\tif ( !this.isFixed() ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( this._$clone ) {\n\t\t\t\tthis._$clone.remove();\n\t\t\t\tthis._$clone = null;\n\t\t\t}\n\n\t\t\tthis.$node\n\t\t\t.css( 'left', this._initialAttributes.left )\n\t\t\t.css( 'top', this._initialAttributes.top )\n\t\t\t.css( 'width', this._options.autoWidth ? 'auto' : this._initialAttributes.width )\n\t\t\t.css( 'position', this._initialAttributes.position );\n\n\t\t\tthis._initialAttributes.offset = null;\n\t\t},\n\n\t\t/**\n\t\t * Returns whether the node the plugin is initialized on is in \"fixed\" position.\n\t\t *\n\t\t * @return {boolean}\n\t\t */\n\t\tisFixed: function () {\n\t\t\treturn this.$node.css( 'position' ) === 'fixed';\n\t\t},\n\n\t\t/**\n\t\t * Updates the node's positioning behaviour according to a specific scroll offset.\n\t\t *\n\t\t * @param {number} scrollTop\n\t\t * @param {boolean} force\n\t\t * @return {boolean}\n\t\t */\n\t\tupdate: function ( scrollTop, force ) {\n\t\t\tvar changedState = false;\n\n\t\t\tif ( force && this.isFixed() ) {\n\t\t\t\tthis._unfix();\n\t\t\t}\n\n\t\t\tif ( !this.isFixed()\n\t\t\t\t&& scrollTop > this.$node.offset().top\n\t\t\t\t&& !this._isScrolledAfterContainer()\n\t\t\t) {\n\t\t\t\tthis._fix();\n\t\t\t\tchangedState = true;\n\t\t\t}\n\n\t\t\tif ( this.isFixed() && this._isScrolledBeforeContainer( scrollTop )\n\t\t\t\t|| this._clipsContainer()\n\t\t\t) {\n\t\t\t\tthis._unfix();\n\t\t\t\tchangedState = !changedState;\n\t\t\t}\n\n\t\t\treturn changedState;\n\t\t},\n\n\t\t/**\n\t\t * Re-fixes the node if it is fixed, properly updating scroll position. Should be called\n\t\t * whenever the node's content has been updated.\n\t\t */\n\t\trefresh: function () {\n\t\t\tif ( this.isFixed() ) {\n\t\t\t\tthis._unfix();\n\t\t\t\tthis._fix();\n\t\t\t\tthis.$node.triggerHandler( PLUGIN_NAME + 'update' );\n\t\t\t}\n\t\t}\n\t} );\n\n\t/**\n\t * jQuery sticknode plugin.\n\t * Sticks a node with \"position: fixed\" when vertically scrolling it out of the viewport.\n\t * Be aware that plugin does not handle dynamic height changes (e.g. if the node contains\n\t * interactive elements that wipe out additional content). The code applying the widget needs to be\n\t * aware of dynamic height changes. Consequently, whenever the height of the node the plugin is\n\t * initialized on changes, a call to the refresh() function should be made to avoid undesired\n\t * clipping.\n\t *\n\t * @param {Object} [options]\n\t * @param {jQuery} [options.$container]\n\t *        Node specifying the bottom boundary for the node the plugin is initialized on. If the\n\t *        node the plugin is initialized on clips out of the container, it is reset to static\n\t *        position.\n\t * @param {boolean} [options.autoWidth=false]\n\t *        When not fixed, apply \"auto\" width attribute instead of width computed from the unfixed\n\t *        state.\n\t * @param {number} [options.zIndex=1]\n\t *        Custom z-index attribute.\n\t * @return {jQuery}\n\t *\n\t * @event sticknodeupdate\n\t *        Triggered when the node the widget is initialized and updates its positioning behaviour.\n\t *        - {jQuery.Event}\n\t */\n\t$.fn.sticknode = function ( options ) {\n\t\toptions = options || {};\n\n\t\tthis.each( function () {\n\t\t\tvar $node = $( this );\n\n\t\t\tif ( $node.data( PLUGIN_NAME ) ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar stickyNode = new StickyNode( $( this ), options );\n\n\t\t\teventSingleton.register(\n\t\t\t\tstickyNode,\n\t\t\t\twindow,\n\t\t\t\t'scroll.' + PLUGIN_NAME + ' ' + 'touchmove.' + PLUGIN_NAME,\n\t\t\t\tfunction ( event, stickyNode ) {\n\t\t\t\t\tif ( stickyNode.update( $window.scrollTop() ) ) {\n\t\t\t\t\t\tstickyNode.$node.triggerHandler( PLUGIN_NAME + 'update' );\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tthrottle: 150\n\t\t\t\t}\n\t\t\t);\n\n\t\t\teventSingleton.register(\n\t\t\t\tstickyNode,\n\t\t\t\twindow,\n\t\t\t\t'resize.' + PLUGIN_NAME,\n\t\t\t\tfunction ( event, stickyNode ) {\n\t\t\t\t\tif ( stickyNode.update( $window.scrollTop(), true ) ) {\n\t\t\t\t\t\tstickyNode.$node.triggerHandler( PLUGIN_NAME + 'update' );\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tthrottle: 150\n\t\t\t\t}\n\t\t\t);\n\t\t} );\n\n\t\treturn this;\n\t};\n\n}() );\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/view/resources/jquery/jquery.util.EventSingletonManager.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/view/resources/jquery/jquery.util.getDirectionality.js","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[]},{"filePath":"/src/repo/view/resources/jquery/wikibase/jquery.wikibase.aliasesview.js","messages":[{"ruleId":"jsdoc/no-undefined-types","severity":1,"message":"The type 'datamodel' is undefined.","line":19,"column":null,"nodeType":"Block","endLine":19,"endColumn":null},{"ruleId":"jsdoc/no-undefined-types","severity":1,"message":"The type 'datamodel' is undefined.","line":196,"column":null,"nodeType":"Block","endLine":196,"endColumn":null},{"ruleId":"jsdoc/no-undefined-types","severity":1,"message":"The type 'datamodel' is undefined.","line":197,"column":null,"nodeType":"Block","endLine":197,"endColumn":null}],"errorCount":0,"warningCount":3,"fixableErrorCount":0,"fixableWarningCount":0,"source":"( function () {\n\t'use strict';\n\n\tvar PARENT = $.ui.EditableTemplatedWidget,\n\t\tdatamodel = require( 'wikibase.datamodel' );\n\n\t/**\n\t * Displays and allows editing of `datamodel.MultiTerm` objects.\n\t *\n\t * @see datamodel.MultiTerm\n\t * @class jQuery.wikibase.aliasesview\n\t * @extends jQuery.ui.EditableTemplatedWidget\n\t * @license GPL-2.0-or-later\n\t * @author H. Snater < mediawiki@snater.com >\n\t *\n\t * @constructor\n\t *\n\t * @param {Object} options\n\t * @param {datamodel.MultiTerm} options.value\n\t * @param {string} [options.helpMessage=mw.msg( 'wikibase-aliases-input-help-message' )]\n\t */\n\t$.widget( 'wikibase.aliasesview', PARENT, {\n\t\t/**\n\t\t * @inheritdoc\n\t\t * @protected\n\t\t */\n\t\toptions: {\n\t\t\ttemplate: 'wikibase-aliasesview',\n\t\t\ttemplateParams: [\n\t\t\t\tfunction () {\n\t\t\t\t\treturn this.options.value.getTexts().length === 0 ? 'wb-empty' : '';\n\t\t\t\t}, // additional class\n\t\t\t\t'', // list items\n\t\t\t\t'', // toolbar\n\t\t\t\tfunction () {\n\t\t\t\t\treturn $.util.getDirectionality( this.options.value.getLanguageCode() );\n\t\t\t\t},\n\t\t\t\tfunction () {\n\t\t\t\t\treturn this.options.value.getLanguageCode();\n\t\t\t\t}\n\t\t\t],\n\t\t\ttemplateShortCuts: {\n\t\t\t\t$list: 'ul'\n\t\t\t},\n\t\t\tvalue: null,\n\t\t\thelpMessage: mw.msg( 'wikibase-aliases-input-help-message' )\n\t\t},\n\n\t\t/**\n\t\t * @inheritdoc\n\t\t * @protected\n\t\t *\n\t\t * @throws {Error} if a required option is not specified properly.\n\t\t */\n\t\t_create: function () {\n\t\t\tif ( !( this.options.value instanceof datamodel.MultiTerm ) ) {\n\t\t\t\tthrow new Error( 'Required option not specified properly' );\n\t\t\t}\n\n\t\t\tPARENT.prototype._create.call( this );\n\n\t\t\tif ( this.$list.children( 'li' ).length !== this.options.value.getTexts().length ) {\n\t\t\t\tthis.draw();\n\t\t\t}\n\n\t\t\tthis.$list.addClass( this.widgetFullName + '-input' );\n\t\t},\n\n\t\t/**\n\t\t * @inheritdoc\n\t\t */\n\t\tdestroy: function () {\n\t\t\tif ( this.$list ) {\n\t\t\t\tthis.$list.removeClass( this.widgetFullName + '-input' );\n\t\t\t}\n\t\t\tPARENT.prototype.destroy.call( this );\n\t\t},\n\n\t\t/**\n\t\t * @inheritdoc\n\t\t */\n\t\tdraw: function () {\n\t\t\tthis.$list.off( '.' + this.widgetName );\n\n\t\t\tif ( this.isInEditMode() ) {\n\t\t\t\tthis._initTagadata();\n\t\t\t} else {\n\t\t\t\tvar self = this,\n\t\t\t\t\ttagadata = this.$list.data( 'tagadata' );\n\n\t\t\t\tif ( tagadata ) {\n\t\t\t\t\ttagadata.destroy();\n\t\t\t\t}\n\n\t\t\t\tthis.element.toggleClass( 'wb-empty', this.options.value.getTexts().length === 0 );\n\n\t\t\t\tthis.$list.empty();\n\n\t\t\t\tthis.options.value.getTexts().forEach( function ( text ) {\n\t\t\t\t\tself.$list.append( mw.wbTemplate( 'wikibase-aliasesview-list-item', text ) );\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\treturn $.Deferred().resolve().promise();\n\t\t},\n\n\t\t/**\n\t\t * Creates and initializes the `jQuery.ui.tagadata` widget.\n\t\t *\n\t\t * @private\n\t\t */\n\t\t_initTagadata: function () {\n\t\t\tvar self = this;\n\n\t\t\tthis.$list\n\t\t\t.tagadata( {\n\t\t\t\tplaceholderText: mw.msg( 'wikibase-alias-edit-placeholder' )\n\t\t\t} )\n\t\t\t.on(\n\t\t\t\t'tagadatatagremoved.' + this.widgetName\n\t\t\t\t+ ' tagadatatagchanged.' + this.widgetName\n\t\t\t\t+ ' tagadatatagremoved.' + this.widgetName, function ( event ) {\n\t\t\t\t\tself._trigger( 'change' );\n\t\t\t\t}\n\t\t\t);\n\n\t\t\tvar expansionOptions = {\n\t\t\t\texpandOnResize: false,\n\t\t\t\tcomfortZone: 16, // width of .ui-icon\n\t\t\t\tmaxWidth: function () {\n\t\t\t\t\t// TODO/FIXME: figure out why this requires at least -17, can't be because of padding + border\n\t\t\t\t\t// which is only 6 for both sides\n\t\t\t\t\treturn self.$list.width() - 20;\n\t\t\t\t}\n\t\t\t\t/*\n\t\t\t\t// TODO/FIXME: both solutions are not perfect, when tag larger than available space either the\n\t\t\t\t// input will be auto-resized and not show the whole text or we still show the whole tag but it\n\t\t\t\t// will break the site layout. A solution would be replacing input with textarea.\n\t\t\t\tmaxWidth: function() {\n\t\t\t\t\tvar tagList = self._getTagadata().tagList;\n\t\t\t\t\tvar origCssDisplay = tagList.css( 'display' );\n\t\t\t\t\ttagList.css( 'display', 'block' );\n\t\t\t\t\tvar width = tagList.width();\n\t\t\t\t\ttagList.css( 'display', origCssDisplay );\n\t\t\t\t\treturn width;\n\t\t\t\t}\n\t\t\t\t */\n\t\t\t};\n\n\t\t\tvar tagadata = this.$list.data( 'tagadata' );\n\n\t\t\t// calculate size for all input elements initially:\n\t\t\ttagadata.getTags().add( tagadata.getHelperTag() )\n\t\t\t\t.find( 'input' ).inputautoexpand( expansionOptions );\n\n\t\t\t// also make sure that new helper tags will calculate size correctly:\n\t\t\tthis.$list.on( 'tagadatahelpertagadded.' + this.widgetName, function ( event, tag ) {\n\t\t\t\t$( tag ).find( 'input' ).inputautoexpand( expansionOptions );\n\t\t\t} );\n\t\t},\n\n\t\t_startEditing: function () {\n\t\t\t// FIXME: This could be much faster\n\t\t\treturn this.draw();\n\t\t},\n\n\t\t_stopEditing: function () {\n\t\t\t// FIXME: This could be much faster\n\t\t\treturn this.draw();\n\t\t},\n\n\t\t/**\n\t\t * @inheritdoc\n\t\t * @protected\n\t\t *\n\t\t * @throws {Error} when trying to set the widget's value to something other than a\n\t\t *         `datamodel.MultiTerm` instance.\n\t\t */\n\t\t_setOption: function ( key, value ) {\n\t\t\tif ( key === 'value' && !( value instanceof datamodel.MultiTerm ) ) {\n\t\t\t\tthrow new Error( 'Value needs to be a datamodel.MultiTerm instance' );\n\t\t\t}\n\n\t\t\tvar response = PARENT.prototype._setOption.call( this, key, value );\n\n\t\t\tif ( key === 'disabled' && this.isInEditMode() ) {\n\t\t\t\tthis.$list.data( 'tagadata' ).option( 'disabled', value );\n\t\t\t}\n\n\t\t\treturn response;\n\t\t},\n\n\t\t/**\n\t\t * @inheritdoc\n\t\t *\n\t\t * @param {datamodel.MultiTerm} [value]\n\t\t * @return {datamodel.MultiTerm|undefined}\n\t\t */\n\t\tvalue: function ( value ) {\n\t\t\tif ( value !== undefined ) {\n\t\t\t\treturn this.option( 'value', value );\n\t\t\t}\n\n\t\t\tif ( !this.isInEditMode() ) {\n\t\t\t\treturn this.options.value;\n\t\t\t}\n\n\t\t\tvar tagadata = this.$list.data( 'tagadata' );\n\n\t\t\treturn new datamodel.MultiTerm(\n\t\t\t\tthis.options.value.getLanguageCode(),\n\t\t\t\t// tagadata.getTags() returns a jquery object of html nodes\n\t\t\t\t// eslint-disable-next-line no-jquery/no-map-util\n\t\t\t\t$.map( tagadata.getTags(), function ( tag ) {\n\t\t\t\t\treturn tagadata.getTagLabel( $( tag ) );\n\t\t\t\t} )\n\t\t\t);\n\t\t},\n\n\t\t/**\n\t\t * @inheritdoc\n\t\t */\n\t\tfocus: function () {\n\t\t\tif ( this.isInEditMode() ) {\n\t\t\t\tthis.$list.data( 'tagadata' ).getHelperTag().find( 'input' ).trigger( 'focus' );\n\t\t\t} else {\n\t\t\t\tthis.element.trigger( 'focus' );\n\t\t\t}\n\t\t}\n\n\t} );\n\n}() );\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/view/resources/jquery/wikibase/jquery.wikibase.badgeselector.js","messages":[{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"option\".","line":22,"column":null,"nodeType":"Block","endLine":22,"endColumn":null},{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"option\".","line":26,"column":null,"nodeType":"Block","endLine":26,"endColumn":null},{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"option\".","line":31,"column":null,"nodeType":"Block","endLine":31,"endColumn":null},{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"option\".","line":33,"column":null,"nodeType":"Block","endLine":33,"endColumn":null},{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"option\".","line":37,"column":null,"nodeType":"Block","endLine":37,"endColumn":null},{"ruleId":"no-shadow","severity":1,"message":"'$menu' is already declared in the upper scope on line 15 column 6.","line":216,"column":5,"nodeType":"Identifier","messageId":"noShadow","endLine":216,"endColumn":10},{"ruleId":"jsdoc/require-returns","severity":1,"message":"Missing JSDoc @return declaration.","line":378,"column":3,"nodeType":"Block","endLine":380,"endColumn":6},{"ruleId":"jsdoc/require-returns","severity":1,"message":"Missing JSDoc @return declaration.","line":419,"column":3,"nodeType":"Block","endLine":421,"endColumn":6}],"errorCount":0,"warningCount":8,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/**\n * @license GPL-2.0-or-later\n * @author H. Snater < mediawiki@snater.com >\n */\n( function () {\n\t'use strict';\n\n\tvar PARENT = $.ui.EditableTemplatedWidget;\n\n\t/**\n\t * References one single $menu instance that is reused for all badgeselector instances.\n\t *\n\t * @type {jQuery}\n\t */\n\tvar $menu = null;\n\n\t/**\n\t * Selector for toggling badges.\n\t *\n\t * @extends jQuery.ui.EditableTemplatedWidget\n\t *\n\t * @option {string[]} [value]\n\t *         Item ids of badges currently assigned.\n\t *         Default: []\n\t *\n\t * @option {Object} [badges]\n\t *         All badges that may be assigned.\n\t *         Structure: {<{string} item id>: <{string} custom badge css classes>}\n\t *         Default: {}\n\t *\n\t * @option {wikibase.entityIdFormatter.entityIdPlainFormatter} entityIdPlainFormatter\n\t *\n\t * @option {boolean} [isRtl]\n\t *         Whether the widget is displayed in right-to-left context.\n\t *         Default: false\n\t *\n\t * @option {Object} [messages]\n\t *         - badge-placeholder-title\n\t *           HTML title attribute of the placeholder displayed when no badge is selected.\n\t *\n\t * @event change\n\t *        - {jQuery.Event}\n\t *\n\t * @event afterstartediting\n\t *       - {jQuery.Event}\n\t *\n\t * @event afterstopediting\n\t *        - {jQuery.Event}\n\t *        - {boolean} Whether to drop the value.\n\t */\n\t$.widget( 'wikibase.badgeselector', PARENT, {\n\t\t/**\n\t\t * @see jQuery.ui.TemplatedWidget.options\n\t\t */\n\t\toptions: {\n\t\t\ttemplate: 'wikibase-badgeselector',\n\t\t\ttemplateParams: [\n\t\t\t\t''\n\t\t\t],\n\t\t\ttemplateShortCuts: {},\n\t\t\tvalue: [],\n\t\t\tbadges: {},\n\t\t\tentityIdPlainFormatter: null,\n\t\t\tisRtl: false,\n\t\t\tmessages: {\n\t\t\t\t'badge-placeholder-title': 'Click to assign a badge.'\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * @see jQuery.Widget._create\n\t\t */\n\t\t_create: function () {\n\t\t\tif ( !this.options.entityIdPlainFormatter ) {\n\t\t\t\tthrow new Error( 'Required option(s) missing' );\n\t\t\t}\n\n\t\t\tPARENT.prototype._create.call( this );\n\n\t\t\tthis._createBadges();\n\t\t\tthis._attachEventHandlers();\n\t\t},\n\n\t\t/**\n\t\t * @see jQuery.Widget.destroy\n\t\t */\n\t\tdestroy: function () {\n\t\t\tif ( $( '.' + this.widgetBaseClass ).length === 0 ) {\n\t\t\t\tthis._detachMenuEventListeners();\n\n\t\t\t\t$menu.data( 'menu' ).destroy();\n\t\t\t\t$menu.remove();\n\t\t\t\t$menu = null;\n\t\t\t} else if ( $menu && ( $menu.data( this.widgetName ) === this ) ) {\n\t\t\t\tthis._detachMenuEventListeners();\n\t\t\t}\n\t\t\tthis.element.removeClass( 'ui-state-active' );\n\n\t\t\tPARENT.prototype.destroy.call( this );\n\t\t},\n\n\t\t_attachEventHandlers: function () {\n\t\t\tvar self = this;\n\n\t\t\tthis.element\n\t\t\t.on( 'click.' + this.widgetName, function ( event ) {\n\t\t\t\tif ( !self.isInEditMode() || self.option( 'disabled' ) ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\t// If the menu is already visible, hide it\n\t\t\t\t// eslint-disable-next-line no-jquery/no-sizzle\n\t\t\t\tif ( $menu && $menu.data( self.widgetName ) === self && $menu.is( ':visible' ) ) {\n\t\t\t\t\tself._hideMenu();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tself._initMenu()\n\t\t\t\t\t.done( function () {\n\t\t\t\t\t\t// eslint-disable-next-line no-jquery/no-sizzle\n\t\t\t\t\t\tif ( self.option( 'disabled' ) || $menu.is( ':visible' ) ) {\n\t\t\t\t\t\t\t$menu.hide();\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t$menu.data( self.widgetName, self );\n\t\t\t\t\t\t$menu.show();\n\t\t\t\t\t\tself.repositionMenu();\n\t\t\t\t\t\tself._attachMenuEventListeners();\n\n\t\t\t\t\t\tself.element.addClass( 'ui-state-active' );\n\t\t\t\t\t} );\n\t\t\t} );\n\t\t},\n\n\t\t_hideMenu: function () {\n\t\t\t$menu.hide();\n\t\t\tthis._detachMenuEventListeners();\n\n\t\t\tthis.element.removeClass( 'ui-state-active' );\n\t\t},\n\n\t\t_attachMenuEventListeners: function () {\n\t\t\tvar self = this;\n\t\t\tvar degrade = function ( event ) {\n\t\t\t\tif ( !$( event.target ).closest( self.element ).length &&\n\t\t\t\t\t!$( event.target ).closest( $menu ).length ) {\n\t\t\t\t\tself._hideMenu();\n\t\t\t\t}\n\t\t\t};\n\n\t\t\t$( document ).on( 'mouseup.' + this.widgetName, degrade );\n\t\t\t$( window ).on(\n\t\t\t\t'resize.' + this.widgetName,\n\t\t\t\tfunction ( event ) {\n\t\t\t\t\tself.repositionMenu();\n\t\t\t\t}\n\t\t\t);\n\n\t\t\t$menu.on( 'click.' + this.widgetName, function ( event ) {\n\t\t\t\tvar $li = $( event.target ).closest( 'li' ),\n\t\t\t\t\tbadge = $li.data( self.widgetName + '-menuitem-badge' );\n\n\t\t\t\tif ( badge ) {\n\t\t\t\t\tself._toggleBadge( badge, $li.hasClass( 'ui-state-active' ) );\n\t\t\t\t\t$li.toggleClass( 'ui-state-active' );\n\t\t\t\t}\n\t\t\t} );\n\t\t},\n\n\t\t_detachMenuEventListeners: function () {\n\t\t\t$( document ).add( $( window ) ).off( '.' + this.widgetName );\n\t\t\t$menu.off( 'click.' + this.widgetName );\n\t\t},\n\n\t\t/**\n\t\t * Creates the individual badges' DOM structures.\n\t\t */\n\t\t_createBadges: function () {\n\t\t\tif ( this.element.children( '.wb-badge' ).length ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis._updateEmptyBadge();\n\t\t\tthis._addBadges();\n\t\t},\n\n\t\t/**\n\t\t * Returns the static $menu including its instantiation if it has not been performed already.\n\t\t *\n\t\t * @return {jQuery}\n\t\t */\n\t\t_getMenu: function () {\n\t\t\tif ( $menu ) {\n\t\t\t\treturn $menu;\n\t\t\t}\n\n\t\t\t$menu = $( '<ul>' )\n\t\t\t\t.text( '...' )\n\t\t\t\t.addClass( this.widgetFullName + '-menu' )\n\t\t\t\t.appendTo( document.body );\n\n\t\t\treturn $menu.menu();\n\t\t},\n\n\t\t/**\n\t\t * Fills the menu and activates the menu items of the badges already assigned.\n\t\t *\n\t\t * @return {jQuery.Promise}\n\t\t *         No resolved parameters.\n\t\t *         No rejected parameters.\n\t\t */\n\t\t_initMenu: function () {\n\t\t\tvar self = this,\n\t\t\t\tdeferred = $.Deferred(),\n\t\t\t\t$menu = this._getMenu();\n\n\t\t\tself.repositionMenu();\n\n\t\t\tthis._fillMenu()\n\t\t\t.done( function () {\n\t\t\t\t$menu.children( 'li' ).each( function () {\n\t\t\t\t\tvar $li = $( this ),\n\t\t\t\t\t\tbadgeId = $li.data( self.widgetName + '-menuitem-badge' );\n\n\t\t\t\t\t$li\n\t\t\t\t\t.addClass( 'ui-menu-item' )\n\t\t\t\t\t.toggleClass( 'ui-state-active', self.value().indexOf( badgeId ) !== -1 );\n\t\t\t\t} );\n\n\t\t\t\t$menu.hide();\n\n\t\t\t\tdeferred.resolve();\n\t\t\t} )\n\t\t\t.fail( function () {\n\t\t\t\tdeferred.reject();\n\t\t\t} );\n\n\t\t\treturn deferred.promise();\n\t\t},\n\n\t\t/**\n\t\t * Fills the menu with a menu item for each badge that may be assigned.\n\t\t *\n\t\t * @return {jQuery.Promise}\n\t\t *         No resolved parameters.\n\t\t *         No rejected parameters.\n\t\t */\n\t\t_fillMenu: function () {\n\t\t\tvar self = this,\n\t\t\t\tdeferred = $.Deferred(),\n\t\t\t\t// eslint-disable-next-line no-jquery/no-map-util\n\t\t\t\tbadgeIds = $.map( this.options.badges, function ( cssClasses, itemId ) {\n\t\t\t\t\treturn itemId;\n\t\t\t\t} );\n\n\t\t\t$.when.apply( $, badgeIds.map( function ( badgeId ) {\n\t\t\t\treturn self.options.entityIdPlainFormatter.format( badgeId );\n\t\t\t} ) ).done( function ( /* … */ ) {\n\t\t\t\tvar badgeLabels = arguments;\n\t\t\t\t$menu.empty();\n\n\t\t\t\tbadgeIds.forEach( function ( itemId, index ) {\n\t\t\t\t\tvar badgeLabel = badgeLabels[ index ];\n\t\t\t\t\tvar $item = $( '<a>' )\n\t\t\t\t\t\t.on( 'click.' + self.widgetName, function ( event ) {\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t} )\n\t\t\t\t\t\t.text( badgeLabel );\n\n\t\t\t\t\t$( '<li>' )\n\t\t\t\t\t.addClass( self.widgetFullName + '-menuitem-' + itemId )\n\t\t\t\t\t.data( self.widgetName + '-menuitem-badge', itemId )\n\t\t\t\t\t.append( $item\n\t\t\t\t\t\t.prepend( mw.wbTemplate( 'wb-badge',\n\t\t\t\t\t\t\titemId + ' ' + self.options.badges[ itemId ],\n\t\t\t\t\t\t\tbadgeLabel,\n\t\t\t\t\t\t\titemId\n\t\t\t\t\t\t) )\n\t\t\t\t\t)\n\t\t\t\t\t.appendTo( $menu );\n\t\t\t\t} );\n\n\t\t\t\tdeferred.resolve();\n\t\t\t} )\n\t\t\t.fail( function () {\n\t\t\t\t// TODO: Display error message.\n\t\t\t\tdeferred.reject();\n\t\t\t} );\n\n\t\t\treturn deferred.promise();\n\t\t},\n\n\t\t/**\n\t\t * (De-)Activates a badge.\n\t\t *\n\t\t * @param {string} badgeId\n\t\t * @param {boolean} targetState\n\t\t */\n\t\t_toggleBadge: function ( badgeId, targetState ) {\n\t\t\tif ( targetState ) {\n\t\t\t\tthis.element.children( '.wb-badge-' + badgeId ).remove();\n\t\t\t} else {\n\t\t\t\tthis._addBadge( badgeId );\n\t\t\t}\n\t\t\tthis._updateEmptyBadge();\n\t\t\tthis._trigger( 'change' );\n\t\t},\n\n\t\t_addBadges: function () {\n\t\t\tvar self = this;\n\t\t\tthis.options.value.forEach( function ( badgeId ) {\n\t\t\t\tself._addBadge( badgeId );\n\t\t\t} );\n\t\t},\n\n\t\t/**\n\t\t * Add the DOM for a badge with the given itemId.\n\t\t *\n\t\t * @param {string} badgeId\n\t\t */\n\t\t_addBadge: function ( badgeId ) {\n\t\t\tvar self = this,\n\t\t\t\t$badge;\n\n\t\t\tfunction addBadgeDom( badgeLabel ) {\n\t\t\t\tvar $oldBadge = $badge;\n\n\t\t\t\t$badge = mw.wbTemplate( 'wb-badge',\n\t\t\t\t\tbadgeId + ' ' + self.options.badges[ badgeId ],\n\t\t\t\t\tbadgeLabel,\n\t\t\t\t\tbadgeId\n\t\t\t\t);\n\n\t\t\t\tif ( $oldBadge ) {\n\t\t\t\t\t$oldBadge.replaceWith( $badge );\n\t\t\t\t} else {\n\t\t\t\t\tself.element.append( $badge );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// First add a placeholder without a nice label\n\t\t\taddBadgeDom( badgeId );\n\n\t\t\tthis.options.entityIdPlainFormatter.format( badgeId ).done( function ( badgeLabel ) {\n\t\t\t\t// Now add a badge with the right label\n\t\t\t\taddBadgeDom( badgeLabel );\n\t\t\t} );\n\t\t},\n\n\t\t/**\n\t\t * Make sure there is an empty badge exactly when there should be one.\n\t\t *\n\t\t * An empty badge is needed when in edit mode and no other badges are selected.\n\t\t * The empty badge acts as a menu anchor in this case.\n\t\t */\n\t\t_updateEmptyBadge: function () {\n\t\t\tvar $badges = this.element.children( '.wb-badge' ),\n\t\t\t\tneedEmptyBadge = this.isInEditMode() && $badges.length === 0,\n\t\t\t\t$emptyBadge = $badges.filter( '[data-wb-badge=\"\"]' );\n\n\t\t\tif ( needEmptyBadge && $emptyBadge.length === 0 ) {\n\t\t\t\tthis.element.append( mw.wbTemplate( 'wb-badge',\n\t\t\t\t\t'empty',\n\t\t\t\t\tthis.options.messages[ 'badge-placeholder-title' ],\n\t\t\t\t\t''\n\t\t\t\t) );\n\t\t\t} else if ( !needEmptyBadge && $emptyBadge.length !== 0 ) {\n\t\t\t\t$emptyBadge.remove();\n\t\t\t}\n\t\t},\n\n\t\t_startEditing: function () {\n\t\t\tthis._updateEmptyBadge();\n\t\t\treturn $.Deferred().resolve().promise();\n\t\t},\n\n\t\t/**\n\t\t * @param {boolean} dropValue\n\t\t */\n\t\t_stopEditing: function ( dropValue ) {\n\t\t\tif ( $menu ) {\n\t\t\t\t$menu.hide();\n\t\t\t}\n\n\t\t\tif ( !dropValue ) {\n\t\t\t\tthis._updateEmptyBadge();\n\n\t\t\t} else {\n\t\t\t\tthis.element.empty();\n\n\t\t\t\t// Reinitialize badges based on this.options.value\n\t\t\t\tthis._addBadges();\n\t\t\t}\n\t\t\treturn $.Deferred().resolve().promise();\n\t\t},\n\n\t\t/**\n\t\t * @param {string[]} value\n\t\t * @return {string[]|*}\n\t\t */\n\t\tvalue: function ( value ) {\n\t\t\tif ( value !== undefined ) {\n\t\t\t\treturn this.option( 'value', value );\n\t\t\t}\n\n\t\t\tvalue = [];\n\n\t\t\tthis.element.children( '.wb-badge' ).each( function () {\n\t\t\t\tvar v = $( this ).data( 'wb-badge' );\n\t\t\t\tif ( v ) {\n\t\t\t\t\tvalue.push( v );\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\treturn value;\n\t\t},\n\n\t\t/**\n\t\t * @see jQuery.ui.TemplatedWidget._setOption\n\t\t */\n\t\t_setOption: function ( key, value ) {\n\t\t\tvar response = PARENT.prototype._setOption.apply( this, arguments );\n\n\t\t\tif ( key === 'disabled' && $menu && $menu.data( this.widgetName ) === this ) {\n\t\t\t\t$menu.hide();\n\t\t\t} else if ( key === 'value' && this.isInEditMode() ) {\n\t\t\t\tthis._initMenu();\n\t\t\t}\n\n\t\t\treturn response;\n\t\t},\n\n\t\t/**\n\t\t * Aligns the menu to the element the widget is initialized on.\n\t\t */\n\t\trepositionMenu: function () {\n\t\t\t$menu.position( {\n\t\t\t\tof: this.element,\n\t\t\t\tmy: ( this.options.isRtl ? 'right' : 'left' ) + ' top',\n\t\t\t\tat: ( this.options.isRtl ? 'right' : 'left' ) + ' bottom',\n\t\t\t\toffset: '0 1',\n\t\t\t\tcollision: 'none'\n\t\t\t} );\n\t\t}\n\t} );\n\n}() );\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/view/resources/jquery/wikibase/jquery.wikibase.descriptionview.js","messages":[{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"option\".","line":16,"column":null,"nodeType":"Block","endLine":16,"endColumn":null},{"ruleId":"jsdoc/no-undefined-types","severity":1,"message":"The type 'datamodel' is undefined.","line":16,"column":null,"nodeType":"Block","endLine":16,"endColumn":null},{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"option\".","line":18,"column":null,"nodeType":"Block","endLine":18,"endColumn":null},{"ruleId":"jsdoc/require-returns","severity":1,"message":"Missing JSDoc @return declaration.","line":95,"column":3,"nodeType":"Block","endLine":97,"endColumn":6},{"ruleId":"jsdoc/require-returns","severity":1,"message":"Missing JSDoc @return declaration.","line":175,"column":3,"nodeType":"Block","endLine":177,"endColumn":6},{"ruleId":"jsdoc/no-undefined-types","severity":1,"message":"The type 'datamodel' is undefined.","line":195,"column":null,"nodeType":"Block","endLine":195,"endColumn":null},{"ruleId":"jsdoc/no-undefined-types","severity":1,"message":"The type 'datamodel' is undefined.","line":196,"column":null,"nodeType":"Block","endLine":196,"endColumn":null}],"errorCount":0,"warningCount":7,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/**\n * @license GPL-2.0-or-later\n * @author H. Snater < mediawiki@snater.com >\n */\n( function ( wb ) {\n\t'use strict';\n\n\tvar PARENT = $.ui.EditableTemplatedWidget,\n\t\tdatamodel = require( 'wikibase.datamodel' );\n\n\t/**\n\t * Manages a description.\n\t *\n\t * @extends jQuery.ui.EditableTemplatedWidget\n\t *\n\t * @option {datamodel.Term} value\n\t *\n\t * @option {string} [inputNodeName='TEXTAREA']\n\t *         Should either be 'TEXTAREA' or 'INPUT'.\n\t */\n\t$.widget( 'wikibase.descriptionview', PARENT, {\n\t\t/**\n\t\t * @see jQuery.ui.TemplatedWidget.options\n\t\t */\n\t\toptions: {\n\t\t\ttemplate: 'wikibase-descriptionview',\n\t\t\ttemplateParams: [\n\t\t\t\t'', // additional class\n\t\t\t\t'', // text\n\t\t\t\t'' // toolbar\n\t\t\t],\n\t\t\ttemplateShortCuts: {\n\t\t\t\t$text: '.wikibase-descriptionview-text'\n\t\t\t},\n\t\t\tvalue: null,\n\t\t\tinputNodeName: 'TEXTAREA'\n\t\t},\n\n\t\t/**\n\t\t * @see jQuery.ui.TemplatedWidget._create\n\t\t *\n\t\t * @throws {Error} if required parameters are not specified properly.\n\t\t */\n\t\t_create: function () {\n\t\t\tif ( !( this.options.value instanceof datamodel.Term )\n\t\t\t\t|| this.options.inputNodeName !== 'INPUT' && this.options.inputNodeName !== 'TEXTAREA'\n\t\t\t) {\n\t\t\t\tthrow new Error( 'Required parameter(s) missing' );\n\t\t\t}\n\n\t\t\tvar self = this;\n\n\t\t\tthis.element\n\t\t\t\t.on(\n\t\t\t\t\t'descriptionviewafterstartediting.' + this.widgetName\n\t\t\t\t\t+ ' eachchange.' + this.widgetName,\n\t\t\t\t\tfunction ( event ) {\n\t\t\t\t\t\tif ( self.value().getText() === '' ) {\n\t\t\t\t\t\t\t// Since the widget shall not be in view mode when there is no value, triggering\n\t\t\t\t\t\t\t// the event without a proper value is only done when creating the widget. Disabling\n\t\t\t\t\t\t\t// other edit buttons shall be avoided.\n\t\t\t\t\t\t\t// TODO: Move logic to a sensible place.\n\t\t\t\t\t\t\tself.element.addClass( 'wb-empty' );\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tself.element.removeClass( 'wb-empty' );\n\t\t\t\t\t}\n\t\t\t\t);\n\n\t\t\tPARENT.prototype._create.call( this );\n\n\t\t\tif ( this.$text.text() === '' ) {\n\t\t\t\tthis.draw();\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * @see jQuery.ui.TemplatedWidget.destroy\n\t\t */\n\t\tdestroy: function () {\n\t\t\tif ( this.isInEditMode() ) {\n\t\t\t\tvar self = this;\n\n\t\t\t\tthis.element.one( this.widgetEventPrefix + 'afterstopediting', function ( event ) {\n\t\t\t\t\tPARENT.prototype.destroy.call( self );\n\t\t\t\t} );\n\n\t\t\t\tthis.stopEditing( true );\n\t\t\t} else {\n\t\t\t\tPARENT.prototype.destroy.call( this );\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Main draw routine.\n\t\t */\n\t\tdraw: function () {\n\t\t\tvar done = $.Deferred().resolve().promise();\n\t\t\tvar self = this,\n\t\t\t\tlanguageCode = this.options.value.getLanguageCode(),\n\t\t\t\tdescriptionText = this.options.value.getText();\n\n\t\t\tif ( descriptionText === '' ) {\n\t\t\t\tdescriptionText = null;\n\t\t\t}\n\n\t\t\tthis.element[ descriptionText ? 'removeClass' : 'addClass' ]( 'wb-empty' );\n\n\t\t\tif ( !this.isInEditMode() && !descriptionText ) {\n\t\t\t\tthis.$text.text( mw.msg( 'wikibase-description-empty' ) );\n\t\t\t\t// Apply lang and dir of UI language\n\t\t\t\t// instead language of that row\n\t\t\t\tvar userLanguage = mw.config.get( 'wgUserLanguage' );\n\t\t\t\tthis.element\n\t\t\t\t.attr( 'lang', userLanguage )\n\t\t\t\t.attr( 'dir', $.util.getDirectionality( userLanguage ) );\n\t\t\t\treturn done;\n\t\t\t}\n\n\t\t\tthis.element\n\t\t\t.attr( 'lang', languageCode )\n\t\t\t.attr( 'dir', $.util.getDirectionality( languageCode ) );\n\n\t\t\tif ( !this.isInEditMode() ) {\n\t\t\t\tthis.$text.text( descriptionText );\n\t\t\t\treturn done;\n\t\t\t}\n\n\t\t\tvar $input = $( document.createElement( this.options.inputNodeName ) );\n\n\t\t\t$input\n\t\t\t.addClass( this.widgetFullName + '-input' )\n\t\t\t// TODO: Inject correct placeholder via options\n\t\t\t.attr( 'placeholder', mw.msg(\n\t\t\t\t'wikibase-description-edit-placeholder-language-aware',\n\t\t\t\twb.getLanguageNameByCode( languageCode )\n\t\t\t) )\n\t\t\t.attr( 'lang', languageCode )\n\t\t\t.attr( 'dir', $.util.getDirectionality( languageCode ) )\n\t\t\t.on( 'keydown.' + this.widgetName, function ( event ) {\n\t\t\t\tif ( event.keyCode === $.ui.keyCode.ENTER ) {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t}\n\t\t\t} )\n\t\t\t.on( 'eachchange.' + this.widgetName, function ( event ) {\n\t\t\t\tself._trigger( 'change' );\n\t\t\t} );\n\n\t\t\tif ( descriptionText ) {\n\t\t\t\t$input.val( descriptionText );\n\t\t\t}\n\n\t\t\tif ( $.fn.inputautoexpand ) {\n\t\t\t\t$input.inputautoexpand( {\n\t\t\t\t\texpandHeight: true,\n\t\t\t\t\tsuppressNewLine: true\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tthis.$text.empty().append( $input );\n\t\t\treturn done;\n\t\t},\n\n\t\t_startEditing: function () {\n\t\t\t// FIXME: This could be much faster\n\t\t\treturn this.draw();\n\t\t},\n\n\t\t_stopEditing: function () {\n\t\t\t// FIXME: This could be much faster\n\t\t\treturn this.draw();\n\t\t},\n\n\t\t/**\n\t\t * @see jQuery.ui.TemplatedWidget._setOption\n\t\t */\n\t\t_setOption: function ( key, value ) {\n\t\t\tif ( key === 'value' && !( value instanceof datamodel.Term ) ) {\n\t\t\t\tthrow new Error( 'Value needs to be a datamodel.Term instance' );\n\t\t\t}\n\n\t\t\tvar response = PARENT.prototype._setOption.call( this, key, value );\n\n\t\t\tif ( key === 'disabled' && this.isInEditMode() ) {\n\t\t\t\tthis.$text.children( '.' + this.widgetFullName + '-input' ).prop( 'disabled', value );\n\t\t\t}\n\n\t\t\treturn response;\n\t\t},\n\n\t\t/**\n\t\t * Gets/Sets the widget's value.\n\t\t *\n\t\t * @param {datamodel.Term} [value]\n\t\t * @return {datamodel.Term|undefined}\n\t\t */\n\t\tvalue: function ( value ) {\n\t\t\tif ( value !== undefined ) {\n\t\t\t\treturn this.option( 'value', value );\n\t\t\t}\n\n\t\t\tif ( !this.isInEditMode() ) {\n\t\t\t\treturn this.options.value;\n\t\t\t}\n\n\t\t\treturn new datamodel.Term(\n\t\t\t\tthis.options.value.getLanguageCode(),\n\t\t\t\tthis.$text.children( '.' + this.widgetFullName + '-input' ).val().trim()\n\t\t\t);\n\t\t},\n\n\t\t/**\n\t\t * @see jQuery.ui.TemplatedWidget.focus\n\t\t */\n\t\tfocus: function () {\n\t\t\tif ( this.isInEditMode() ) {\n\t\t\t\tthis.$text.children( '.' + this.widgetFullName + '-input' ).trigger( 'focus' );\n\t\t\t} else {\n\t\t\t\tthis.element.trigger( 'focus' );\n\t\t\t}\n\t\t}\n\n\t} );\n\n}( wikibase ) );\n","usedDeprecatedRules":[]},{"filePath":"/src/repo/view/resources/jquery/wikibase/jquery.wikibase.entityselector.js","messages":[{"ruleId":"jsdoc/require-returns","severity":1,"message":"Missing JSDoc @return declaration.","line":339,"column":3,"nodeType":"Block","endLine":341,"endColumn":6},{"ruleId":"jsdoc/require-returns","severity":1,"message":"Missing JSDoc @return declaration.","line":360,"column":3,"nodeType":"Block","endLine":362,"endColumn":6},{"ruleId":"jsdoc/require-returns","severity":1,"message":"Missing JSDoc @return declaration.","line":412,"column":3,"nodeType":"Block","endLine":414,"endColumn":6}],"errorCount":0,"warningCount":3,"fixableErrorCount":0,"fixableWarningCount":0,"source":"( function () {\n\t'use strict';\n\n\t// TODO: Get rid of MediaWiki context detection by submitting a message provider as option.\n\n\t/**\n\t * Whether loaded in MediaWiki context.\n\t *\n\t * @property {boolean}\n\t * @ignore\n\t */\n\tvar IS_MW_CONTEXT = mw !== undefined && mw.msg;\n\n\t/**\n\t * Whether actual `entityselector` resource loader module is loaded.\n\t *\n\t * @property {boolean}\n\t * @ignore\n\t */\n\tvar IS_MODULE_LOADED = (\n\t\tIS_MW_CONTEXT\n\t\t&& mw.loader.getModuleNames().indexOf( 'jquery.wikibase.entityselector' ) !== -1\n\t);\n\n\t/**\n\t * Returns a message from the MediaWiki context if the `entityselector` module has been loaded.\n\t * If it has not been loaded, the corresponding string defined in the options will be returned.\n\t *\n\t * @ignore\n\t *\n\t * @param {string} msgKey\n\t * @param {string} string\n\t * @return {string}\n\t */\n\tfunction mwMsgOrString( msgKey, string ) {\n\t\t// eslint-disable-next-line mediawiki/msg-doc\n\t\treturn IS_MODULE_LOADED ? mw.msg( msgKey ) : string;\n\t}\n\n\t/**\n\t * Enhances an input box with auto-complete and auto-suggestion functionality for Wikibase entities.\n\t *\n\t *     @example\n\t *     $( 'input' ).entityselector( {\n\t *         url: <{string} URL to the API of a MediaWiki instance running Wikibase repository>,\n\t *         language: <{string} language code of the language to fetch results in>\n\t *     } );\n\t *\n\t * @class jQuery.wikibase.entityselector\n\t * @extends jQuery.ui.suggester\n\t * @uses jQuery.event.special.eachchange\n\t * @uses jQuery.ui.ooMenu\n\t * @license GPL-2.0-or-later\n\t * @author H. Snater < mediawiki@snater.com >\n\t *\n\t * @constructor\n\t *\n\t * @param {Object} options\n\t * @param {string} options.url\n\t *        URL to retrieve results from.\n\t * @param {string} options.language\n\t *        (optional when in MediaWiki context)\n\t *        Language code of the language results shall be fetched in.\n\t *        Defaults to the user language (`mw.config.get( 'wgUserLanguage' )` when in MediaWiki\n\t *        context.\n\t * @param {string} [options.type='item']\n\t *        `Entity` type that will be queried for results.\n\t * @param {number|null} [options.limit=null]\n\t *         Number of results to query the API for. Will pick limit specified server-side if ´null´.\n\t * @param {boolean} [options.caseSensitive=false]\n\t *        Whether the widget shall consider letter case when determining if the first suggestion\n\t *        matches with the current input triggering the \"select\" mechanism.\n\t * @param {number} [options.timeout=8000]\n\t *        Default AJAX timeout in milliseconds.\n\t * @param {Object} [options.messages=Object]\n\t *        Strings used within the widget.\n\t *        Messages should be specified using `mwMsgOrString(<resource loader module message key>,\n\t *        <fallback message>)` in order to use the messages specified in the resource loader module\n\t *        (if loaded).\n\t * @param {string} [options.searchHookName='wikibase.entityselector.search']\n\t *        Name of the hook that fires when searching for entities.\n\t * @param {string} [options.messages.more='more']\n\t *        Label of the link to display more suggestions.\n\t * @param {string[]} [options.showErrorCodes=['failed-property-search']]\n\t *        Show errors with these error-codes in the ui.\n\t * @param {Function} [options.responseErrorFactory=null]\n\t *        Optional Callback to parse error message from response object\n\t *        @see wikibase.api.RepoApiError.newFromApiResponse\n\t */\n\t/**\n\t * @event selected\n\t * Triggered after having selected an entity.\n\t * @param {jQuery.Event} event\n\t * @param {string} entityId\n\t */\n\t$.widget( 'wikibase.entityselector', $.ui.suggester, {\n\n\t\t/**\n\t\t * @property {Object}\n\t\t */\n\t\toptions: {\n\t\t\turl: null,\n\t\t\tlanguage: ( IS_MW_CONTEXT ) ? mw.config.get( 'wgUserLanguage' ) : null,\n\t\t\ttype: 'item',\n\t\t\tlimit: null,\n\t\t\tcaseSensitive: false,\n\t\t\ttimeout: 8000,\n\t\t\tmessages: {\n\t\t\t\tmore: mwMsgOrString( 'wikibase-entityselector-more', 'more' ),\n\t\t\t\tnotfound: mwMsgOrString( 'wikibase-entityselector-notfound', 'Nothing found' ),\n\t\t\t\terror: null\n\t\t\t},\n\t\t\tsearchHookName: 'wikibase.entityselector.search',\n\t\t\tsearchApiParametersHookName: 'wikibase.entityselector.search.api-parameters',\n\t\t\tshowErrorCodes: [ 'failed-property-search' ],\n\t\t\tresponseErrorFactory: null\n\t\t},\n\n\t\t/**\n\t\t * Caching the most current entity returned from the API.\n\t\t *\n\t\t * @property {Object}\n\t\t * @private\n\t\t */\n\t\t_selectedEntity: null,\n\n\t\t/**\n\t\t * Caches retrieved results.\n\t\t *\n\t\t * Warning, PropertySuggester's EntitySelector accesses this!\n\t\t *\n\t\t * @property {Object} [_cache={}]\n\t\t * @protected\n\t\t */\n\t\t_cache: null,\n\n\t\t/**\n\t\t * Error object from last search.\n\t\t *\n\t\t * @property {Object} [_error={}]\n\t\t * @protected\n\t\t */\n\t\t_error: null,\n\n\t\t/**\n\t\t * Warning, PropertySuggester's EntitySelector overrides this!\n\t\t *\n\t\t * @inheritdoc\n\t\t * @protected\n\t\t */\n\t\t_create: function () {\n\t\t\tvar self = this;\n\n\t\t\tthis._cache = {};\n\n\t\t\tif ( !this.options.source ) {\n\t\t\t\tif ( this.options.url === null ) {\n\t\t\t\t\tthrow new Error( 'When not specifying a dedicated source, URL option needs to be '\n\t\t\t\t\t\t+ 'specified' );\n\t\t\t\t} else if ( this.options.language === null ) {\n\t\t\t\t\tthrow new Error( 'When not specifying a dedicated source, language option needs to '\n\t\t\t\t\t\t+ 'be specified.' );\n\t\t\t\t}\n\t\t\t\tthis.options.source = this._initDefaultSource();\n\t\t\t} else if ( typeof this.options.source !== 'function' && !Array.isArray( this.options.source ) ) {\n\t\t\t\tthrow new Error( 'Source needs to be a function or an array' );\n\t\t\t}\n\n\t\t\tif ( !this.options.messages.error ) {\n\t\t\t\tthis.options.messages.error = function () {\n\t\t\t\t\treturn self._error && self._error.detailedMessage ? self._error.detailedMessage : null;\n\t\t\t\t};\n\t\t\t}\n\n\t\t\t$.ui.suggester.prototype._create.call( this );\n\n\t\t\tthis.element\n\t\t\t\t.addClass( 'ui-entityselector-input' )\n\t\t\t\t.prop( 'dir', $( document ).prop( 'dir' ) );\n\n\t\t\tthis.options.menu.element.addClass( 'ui-entityselector-list' );\n\n\t\t\tthis.element\n\t\t\t.off( 'blur' )\n\t\t\t.on( 'eachchange.' + this.widgetName, function ( event ) {\n\t\t\t\tself._search( event );\n\t\t\t} )\n\t\t\t.on( 'focusout', function () {\n\t\t\t\tself._indicateRecognizedInput();\n\t\t\t} )\n\t\t\t.on( 'focusin', function () {\n\t\t\t\tself._inEditMode();\n\t\t\t\tself._showDefaultSuggestions();\n\t\t\t} );\n\t\t},\n\n\t\t_indicateRecognizedInput: function () {\n\t\t\tthis._resetInputHighlighting();\n\n\t\t\tif ( this._selectedEntity !== null ) {\n\t\t\t\tthis.element.addClass( 'ui-entityselector-input-recognized' );\n\t\t\t} else if ( this.element.val() !== '' ) {\n\t\t\t\tthis.element.addClass( 'ui-entityselector-input-unrecognized' );\n\t\t\t}\n\t\t},\n\n\t\t_inEditMode: function () {\n\t\t\tthis._resetInputHighlighting();\n\t\t},\n\n\t\t_resetInputHighlighting: function () {\n\t\t\tthis.element.removeClass(\n\t\t\t\t'ui-entityselector-input-recognized ui-entityselector-input-unrecognized'\n\t\t\t);\n\t\t},\n\n\t\t/**\n\t\t * @inheritdoc\n\t\t */\n\t\tdestroy: function () {\n\t\t\tthis.element.removeClass( 'ui-entityselector-input' );\n\n\t\t\tthis._cache = {};\n\n\t\t\t$.ui.suggester.prototype.destroy.call( this );\n\t\t},\n\n\t\t/**\n\t\t * @protected\n\t\t *\n\t\t * @param {jQuery.Event} event\n\t\t */\n\t\t_search: function ( event ) {\n\t\t\tvar self = this;\n\n\t\t\tthis._select( null );\n\n\t\t\tclearTimeout( this._searching );\n\t\t\tthis._searching = setTimeout( function () {\n\t\t\t\tself.search( event );\n\t\t\t}, this.options.delay );\n\t\t},\n\n\t\t/**\n\t\t * Create and return the data object for the api call.\n\t\t *\n\t\t * Warning, PropertySuggester's EntitySelector overrides this!\n\t\t *\n\t\t * @protected\n\t\t * @param {string} term\n\t\t * @return {Object}\n\t\t */\n\t\t_getSearchApiParameters: function ( term ) {\n\t\t\tvar data = {\n\t\t\t\taction: 'wbsearchentities',\n\t\t\t\tsearch: term,\n\t\t\t\tformat: 'json',\n\t\t\t\terrorformat: 'plaintext',\n\t\t\t\tlanguage: this.options.language,\n\t\t\t\tuselang: this.options.language,\n\t\t\t\ttype: this.options.type\n\t\t\t};\n\n\t\t\tif ( this._cache.term === term && this._cache.nextSuggestionOffset ) {\n\t\t\t\tdata.continue = this._cache.nextSuggestionOffset;\n\t\t\t}\n\n\t\t\tif ( this.options.limit ) {\n\t\t\t\tdata.limit = this.options.limit;\n\t\t\t}\n\n\t\t\tmw.hook( this.options.searchApiParametersHookName ).fire( data );\n\n\t\t\treturn data;\n\t\t},\n\n\t\t/**\n\t\t * Initializes the default source pointing to the `wbsearchentities` API module via the URL\n\t\t * provided in the options.\n\t\t *\n\t\t * @protected\n\t\t *\n\t\t * @return {Function}\n\t\t */\n\t\t_initDefaultSource: function () {\n\t\t\tvar self = this;\n\n\t\t\treturn function ( term ) {\n\t\t\t\tvar deferred = $.Deferred(),\n\t\t\t\t\thookResults = self._fireSearchHook( term );\n\n\t\t\t\t// clear previous error\n\t\t\t\tif ( self._error ) {\n\t\t\t\t\tself._error = null;\n\t\t\t\t\tself._cache.suggestions = null;\n\t\t\t\t\tself._updateMenu( [] );\n\t\t\t\t}\n\t\t\t\t$.ajax( {\n\t\t\t\t\turl: self.options.url,\n\t\t\t\t\ttimeout: self.options.timeout,\n\t\t\t\t\tdataType: 'json',\n\t\t\t\t\tdata: self._getSearchApiParameters( term )\n\t\t\t\t} )\n\t\t\t\t.done( function ( response, statusText, jqXHR ) {\n\t\t\t\t\t// T141955\n\t\t\t\t\tif ( response.error ) {\n\t\t\t\t\t\tdeferred.reject( response.error.info );\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\n\t\t\t\t\t// The default endpoint wbsearchentities responds with an array of errors.\n\t\t\t\t\tif ( response.errors && self.options.responseErrorFactory ) {\n\t\t\t\t\t\tvar error = self.options.responseErrorFactory( response, 'search' );\n\n\t\t\t\t\t\tif ( error && self.options.showErrorCodes.indexOf( error.code ) !== -1 ) {\n\t\t\t\t\t\t\tself._error = error;\n\t\t\t\t\t\t\tself._cache = {};\n\t\t\t\t\t\t\tself._updateMenu( [] );\n\t\t\t\t\t\t\tdeferred.reject( error.message );\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tself._combineResults( hookResults, response.search ).then( function ( results ) {\n\t\t\t\t\t\tdeferred.resolve(\n\t\t\t\t\t\t\tresults,\n\t\t\t\t\t\t\tterm,\n\t\t\t\t\t\t\tresponse[ 'search-continue' ],\n\t\t\t\t\t\t\tjqXHR.getResponseHeader( 'X-Search-ID' )\n\t\t\t\t\t\t);\n\t\t\t\t\t} );\n\t\t\t\t} )\n\t\t\t\t.fail( function ( jqXHR, textStatus ) {\n\t\t\t\t\tdeferred.reject( textStatus );\n\t\t\t\t} );\n\n\t\t\t\treturn deferred.promise();\n\t\t\t};\n\t\t},\n\t\t/**\n\t\t * @private\n\t\t */\n\t\t_fireSearchHook: function ( term ) {\n\t\t\tvar hookResults = [],\n\t\t\t\taddPromise = function ( p ) {\n\t\t\t\t\thookResults.push( p );\n\t\t\t\t};\n\n\t\t\tif ( this._cache.term === term ) {\n\t\t\t\treturn hookResults; // Don't fire hook when paginating\n\t\t\t}\n\n\t\t\tmw.hook( this.options.searchHookName ).fire( {\n\t\t\t\telement: this.element,\n\t\t\t\tterm: term,\n\t\t\t\toptions: this.options\n\t\t\t}, addPromise );\n\n\t\t\treturn hookResults;\n\t\t},\n\t\t/**\n\t\t * @private\n\t\t */\n\t\t_combineResults: function ( hookResults, searchResults ) {\n\t\t\tvar self = this,\n\t\t\t\tdeferred = $.Deferred(),\n\t\t\t\tids = {},\n\t\t\t\tresult = [],\n\t\t\t\tuniqueFilter = function ( item ) {\n\t\t\t\t\tif ( ids[ item.id ] ) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t\tids[ item.id ] = true;\n\t\t\t\t\treturn true;\n\t\t\t\t},\n\t\t\t\tratingSorter = function ( item1, item2 ) {\n\t\t\t\t\tif ( !item1.rating && !item2.rating ) {\n\t\t\t\t\t\treturn 0;\n\t\t\t\t\t}\n\t\t\t\t\tif ( !item1.rating ) {\n\t\t\t\t\t\treturn 1;\n\t\t\t\t\t}\n\t\t\t\t\tif ( !item2.rating ) {\n\t\t\t\t\t\treturn -1;\n\t\t\t\t\t}\n\t\t\t\t\tif ( item1.rating < item2.rating ) {\n\t\t\t\t\t\treturn 1;\n\t\t\t\t\t}\n\t\t\t\t\tif ( item1.rating === item2.rating ) {\n\t\t\t\t\t\treturn 0;\n\t\t\t\t\t}\n\t\t\t\t\treturn -1;\n\t\t\t\t};\n\n\t\t\tsearchResults = searchResults || [];\n\n\t\t\t$.when.apply( $, hookResults ).then( function () {\n\n\t\t\t\tvar args = Array.prototype.slice.call( arguments );\n\t\t\t\targs.forEach( function ( data ) {\n\t\t\t\t\tresult = data.concat( result );\n\t\t\t\t} );\n\n\t\t\t\tresult = self._stableSort( result, ratingSorter );\n\t\t\t\tresult = result.concat( searchResults );\n\t\t\t\tresult = result.filter( uniqueFilter );\n\t\t\t\tdeferred.resolve( result );\n\t\t\t} );\n\n\t\t\treturn deferred.promise();\n\t\t},\n\n\t\t/**\n\t\t * @private\n\t\t */\n\t\t_stableSort: function stableSort( items, compareFn ) {\n\t\t\tvar indices = Object.keys( items ).map( Number );\n\t\t\tindices.sort( function ( index1, index2 ) {\n\t\t\t\tvar compar