summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Thanks/.eslintrc.json21
-rw-r--r--Thanks/.gitignore11
-rw-r--r--Thanks/.phan/config.php25
-rw-r--r--Thanks/.phpcs.xml1
-rw-r--r--Thanks/Doxyfile2
-rw-r--r--Thanks/Gruntfile.js23
-rw-r--r--Thanks/Thanks.php2
-rw-r--r--Thanks/composer.json17
-rw-r--r--Thanks/extension.json131
-rw-r--r--Thanks/gitinfo.json1
-rw-r--r--Thanks/i18n/ady-cyrl.json4
-rw-r--r--Thanks/i18n/api/ar.json18
-rw-r--r--Thanks/i18n/api/ast.json18
-rw-r--r--Thanks/i18n/api/ba.json16
-rw-r--r--Thanks/i18n/api/bg.json17
-rw-r--r--Thanks/i18n/api/bn.json13
-rw-r--r--Thanks/i18n/api/ca.json17
-rw-r--r--Thanks/i18n/api/ce.json11
-rw-r--r--Thanks/i18n/api/cs.json10
-rw-r--r--Thanks/i18n/api/cy.json8
-rw-r--r--Thanks/i18n/api/de.json19
-rw-r--r--Thanks/i18n/api/en.json17
-rw-r--r--Thanks/i18n/api/eo.json17
-rw-r--r--Thanks/i18n/api/es.json18
-rw-r--r--Thanks/i18n/api/et.json15
-rw-r--r--Thanks/i18n/api/fa.json19
-rw-r--r--Thanks/i18n/api/fi.json16
-rw-r--r--Thanks/i18n/api/fr.json21
-rw-r--r--Thanks/i18n/api/frr.json15
-rw-r--r--Thanks/i18n/api/gl.json20
-rw-r--r--Thanks/i18n/api/he.json19
-rw-r--r--Thanks/i18n/api/hr.json13
-rw-r--r--Thanks/i18n/api/hu.json20
-rw-r--r--Thanks/i18n/api/id.json20
-rw-r--r--Thanks/i18n/api/it.json16
-rw-r--r--Thanks/i18n/api/ja.json13
-rw-r--r--Thanks/i18n/api/jv.json8
-rw-r--r--Thanks/i18n/api/kk-cyrl.json10
-rw-r--r--Thanks/i18n/api/ko.json16
-rw-r--r--Thanks/i18n/api/ksh.json15
-rw-r--r--Thanks/i18n/api/lb.json9
-rw-r--r--Thanks/i18n/api/lki.json15
-rw-r--r--Thanks/i18n/api/lrc.json6
-rw-r--r--Thanks/i18n/api/lt.json17
-rw-r--r--Thanks/i18n/api/lv.json17
-rw-r--r--Thanks/i18n/api/mk.json18
-rw-r--r--Thanks/i18n/api/ml.json16
-rw-r--r--Thanks/i18n/api/mni.json9
-rw-r--r--Thanks/i18n/api/nap.json15
-rw-r--r--Thanks/i18n/api/nb.json19
-rw-r--r--Thanks/i18n/api/nds-nl.json15
-rw-r--r--Thanks/i18n/api/nl.json16
-rw-r--r--Thanks/i18n/api/pl.json18
-rw-r--r--Thanks/i18n/api/pt-br.json21
-rw-r--r--Thanks/i18n/api/pt.json19
-rw-r--r--Thanks/i18n/api/qqq.json28
-rw-r--r--Thanks/i18n/api/roa-tara.json17
-rw-r--r--Thanks/i18n/api/ru.json19
-rw-r--r--Thanks/i18n/api/sah.json15
-rw-r--r--Thanks/i18n/api/scn.json16
-rw-r--r--Thanks/i18n/api/sh.json15
-rw-r--r--Thanks/i18n/api/sv.json19
-rw-r--r--Thanks/i18n/api/szy.json10
-rw-r--r--Thanks/i18n/api/tr.json17
-rw-r--r--Thanks/i18n/api/uk.json19
-rw-r--r--Thanks/i18n/api/vi.json9
-rw-r--r--Thanks/i18n/api/yi.json8
-rw-r--r--Thanks/i18n/api/zh-hans.json18
-rw-r--r--Thanks/i18n/api/zh-hant.json20
-rw-r--r--Thanks/i18n/ar.json50
-rw-r--r--Thanks/i18n/ary.json9
-rw-r--r--Thanks/i18n/as.json4
-rw-r--r--Thanks/i18n/ast.json20
-rw-r--r--Thanks/i18n/avk.json9
-rw-r--r--Thanks/i18n/az.json25
-rw-r--r--Thanks/i18n/azb.json8
-rw-r--r--Thanks/i18n/ba.json17
-rw-r--r--Thanks/i18n/ban.json10
-rw-r--r--Thanks/i18n/bbc-latn.json9
-rw-r--r--Thanks/i18n/be-tarask.json44
-rw-r--r--Thanks/i18n/be.json15
-rw-r--r--Thanks/i18n/bg.json41
-rw-r--r--Thanks/i18n/bjn.json9
-rw-r--r--Thanks/i18n/bn.json22
-rw-r--r--Thanks/i18n/bqi.json18
-rw-r--r--Thanks/i18n/br.json8
-rw-r--r--Thanks/i18n/bs.json5
-rw-r--r--Thanks/i18n/ca.json23
-rw-r--r--Thanks/i18n/cdo.json4
-rw-r--r--Thanks/i18n/ce.json12
-rw-r--r--Thanks/i18n/ckb.json12
-rw-r--r--Thanks/i18n/cnr-latn.json9
-rw-r--r--Thanks/i18n/co.json8
-rw-r--r--Thanks/i18n/cs.json22
-rw-r--r--Thanks/i18n/cy.json9
-rw-r--r--Thanks/i18n/da.json20
-rw-r--r--Thanks/i18n/de-ch.json4
-rw-r--r--Thanks/i18n/de-formal.json6
-rw-r--r--Thanks/i18n/de.json36
-rw-r--r--Thanks/i18n/diq.json22
-rw-r--r--Thanks/i18n/el.json16
-rw-r--r--Thanks/i18n/en.json15
-rw-r--r--Thanks/i18n/eo.json44
-rw-r--r--Thanks/i18n/es.json23
-rw-r--r--Thanks/i18n/et.json17
-rw-r--r--Thanks/i18n/eu.json18
-rw-r--r--Thanks/i18n/fa.json63
-rw-r--r--Thanks/i18n/ff.json9
-rw-r--r--Thanks/i18n/fi.json26
-rw-r--r--Thanks/i18n/fit.json11
-rw-r--r--Thanks/i18n/fr.json53
-rw-r--r--Thanks/i18n/frr.json13
-rw-r--r--Thanks/i18n/fy.json60
-rw-r--r--Thanks/i18n/gcr.json2
-rw-r--r--Thanks/i18n/gd.json4
-rw-r--r--Thanks/i18n/gl.json25
-rw-r--r--Thanks/i18n/gom-deva.json2
-rw-r--r--Thanks/i18n/gom-latn.json4
-rw-r--r--Thanks/i18n/he.json28
-rw-r--r--Thanks/i18n/hi.json10
-rw-r--r--Thanks/i18n/hil.json8
-rw-r--r--Thanks/i18n/hr.json20
-rw-r--r--Thanks/i18n/hsb.json4
-rw-r--r--Thanks/i18n/hu.json29
-rw-r--r--Thanks/i18n/hy.json10
-rw-r--r--Thanks/i18n/hyw.json11
-rw-r--r--Thanks/i18n/id.json40
-rw-r--r--Thanks/i18n/ie.json8
-rw-r--r--Thanks/i18n/inh.json4
-rw-r--r--Thanks/i18n/io.json22
-rw-r--r--Thanks/i18n/is.json9
-rw-r--r--Thanks/i18n/it.json25
-rw-r--r--Thanks/i18n/ja.json29
-rw-r--r--Thanks/i18n/jv.json45
-rw-r--r--Thanks/i18n/ka.json4
-rw-r--r--Thanks/i18n/kjp.json9
-rw-r--r--Thanks/i18n/kk-cyrl.json5
-rw-r--r--Thanks/i18n/km.json3
-rw-r--r--Thanks/i18n/ko.json46
-rw-r--r--Thanks/i18n/krc.json4
-rw-r--r--Thanks/i18n/ksh.json13
-rw-r--r--Thanks/i18n/ksw.json9
-rw-r--r--Thanks/i18n/kum.json4
-rw-r--r--Thanks/i18n/la.json4
-rw-r--r--Thanks/i18n/lb.json7
-rw-r--r--Thanks/i18n/lij.json57
-rw-r--r--Thanks/i18n/lki.json11
-rw-r--r--Thanks/i18n/lld.json9
-rw-r--r--Thanks/i18n/lrc.json8
-rw-r--r--Thanks/i18n/lt.json24
-rw-r--r--Thanks/i18n/lv.json28
-rw-r--r--Thanks/i18n/lzh.json4
-rw-r--r--Thanks/i18n/lzz.json9
-rw-r--r--Thanks/i18n/min.json30
-rw-r--r--Thanks/i18n/mk.json20
-rw-r--r--Thanks/i18n/ml.json28
-rw-r--r--Thanks/i18n/mni.json12
-rw-r--r--Thanks/i18n/mr.json4
-rw-r--r--Thanks/i18n/mrh.json9
-rw-r--r--Thanks/i18n/ms.json4
-rw-r--r--Thanks/i18n/mt.json5
-rw-r--r--Thanks/i18n/mwl.json4
-rw-r--r--Thanks/i18n/my.json16
-rw-r--r--Thanks/i18n/myv.json3
-rw-r--r--Thanks/i18n/nap.json9
-rw-r--r--Thanks/i18n/nb.json23
-rw-r--r--Thanks/i18n/nds-nl.json24
-rw-r--r--Thanks/i18n/ne.json10
-rw-r--r--Thanks/i18n/nl.json43
-rw-r--r--Thanks/i18n/nn.json12
-rw-r--r--Thanks/i18n/nqo.json12
-rw-r--r--Thanks/i18n/olo.json4
-rw-r--r--Thanks/i18n/pcd.json9
-rw-r--r--Thanks/i18n/pl.json26
-rw-r--r--Thanks/i18n/pnb.json4
-rw-r--r--Thanks/i18n/pt-br.json30
-rw-r--r--Thanks/i18n/pt.json29
-rw-r--r--Thanks/i18n/qqq.json27
-rw-r--r--Thanks/i18n/ro.json11
-rw-r--r--Thanks/i18n/roa-tara.json31
-rw-r--r--Thanks/i18n/ru.json43
-rw-r--r--Thanks/i18n/sah.json13
-rw-r--r--Thanks/i18n/scn.json13
-rw-r--r--Thanks/i18n/sco.json4
-rw-r--r--Thanks/i18n/sd.json45
-rw-r--r--Thanks/i18n/sdc.json24
-rw-r--r--Thanks/i18n/sdh.json5
-rw-r--r--Thanks/i18n/se.json4
-rw-r--r--Thanks/i18n/ses.json9
-rw-r--r--Thanks/i18n/sh.json25
-rw-r--r--Thanks/i18n/shi.json3
-rw-r--r--Thanks/i18n/shy-latn.json9
-rw-r--r--Thanks/i18n/si.json2
-rw-r--r--Thanks/i18n/sk.json54
-rw-r--r--Thanks/i18n/sl.json33
-rw-r--r--Thanks/i18n/sma.json4
-rw-r--r--Thanks/i18n/smn.json9
-rw-r--r--Thanks/i18n/so.json3
-rw-r--r--Thanks/i18n/sq.json6
-rw-r--r--Thanks/i18n/sr-ec.json20
-rw-r--r--Thanks/i18n/sr-el.json8
-rw-r--r--Thanks/i18n/sv.json29
-rw-r--r--Thanks/i18n/szl.json6
-rw-r--r--Thanks/i18n/szy.json (renamed from Thanks/i18n/ais.json)4
-rw-r--r--Thanks/i18n/ta.json4
-rw-r--r--Thanks/i18n/tay.json4
-rw-r--r--Thanks/i18n/tcy.json10
-rw-r--r--Thanks/i18n/te.json9
-rw-r--r--Thanks/i18n/tg-cyrl.json3
-rw-r--r--Thanks/i18n/th.json14
-rw-r--r--Thanks/i18n/tl.json4
-rw-r--r--Thanks/i18n/tly.json8
-rw-r--r--Thanks/i18n/tr.json67
-rw-r--r--Thanks/i18n/trv.json10
-rw-r--r--Thanks/i18n/tt-cyrl.json21
-rw-r--r--Thanks/i18n/uk.json43
-rw-r--r--Thanks/i18n/ur.json37
-rw-r--r--Thanks/i18n/vec.json53
-rw-r--r--Thanks/i18n/vi.json16
-rw-r--r--Thanks/i18n/vo.json2
-rw-r--r--Thanks/i18n/xh.json8
-rw-r--r--Thanks/i18n/xsy.json11
-rw-r--r--Thanks/i18n/yi.json18
-rw-r--r--Thanks/i18n/yo.json4
-rw-r--r--Thanks/i18n/yue.json4
-rw-r--r--Thanks/i18n/zh-hans.json44
-rw-r--r--Thanks/i18n/zh-hant.json48
-rw-r--r--Thanks/includes/ApiCoreThank.php41
-rw-r--r--Thanks/includes/ApiFlowThank.php16
-rw-r--r--Thanks/includes/ApiThank.php49
-rw-r--r--Thanks/includes/EchoCoreThanksPresentationModel.php33
-rw-r--r--Thanks/includes/EchoFlowThanksPresentationModel.php2
-rw-r--r--Thanks/includes/SpecialThanks.php4
-rw-r--r--Thanks/includes/ThanksHooks.php180
-rw-r--r--Thanks/includes/ThanksLogFormatter.php1
-rw-r--r--Thanks/modules/ext.thanks.corethank.js13
-rw-r--r--Thanks/modules/ext.thanks.flowthank.js6
-rw-r--r--Thanks/modules/ext.thanks.mobilediff.js90
-rw-r--r--Thanks/modules/ext.thanks.thank.js15
-rw-r--r--Thanks/modules/jquery.findWithParent.js18
-rw-r--r--Thanks/package-lock.json2999
-rw-r--r--Thanks/package.json9
-rw-r--r--Thanks/tests/phan/config.php23
-rw-r--r--Thanks/tests/phpunit/ApiCoreThankIntegrationTest.php86
-rw-r--r--Thanks/tests/phpunit/ApiCoreThankUnitTest.php83
-rw-r--r--Thanks/tests/phpunit/ApiFlowThankIntegrationTest.php30
-rw-r--r--Thanks/tests/qunit/.eslintrc.json6
-rw-r--r--Thanks/tests/qunit/test_ext.thanks.mobilediff.js4
-rw-r--r--Thanks/tests/qunit/test_ext.thanks.thank.js62
-rw-r--r--Thanks/version4
250 files changed, 6234 insertions, 1424 deletions
diff --git a/Thanks/.eslintrc.json b/Thanks/.eslintrc.json
index 31380abc..618c5bda 100644
--- a/Thanks/.eslintrc.json
+++ b/Thanks/.eslintrc.json
@@ -1,13 +1,12 @@
{
- "extends": "wikimedia",
- "env": {
- "browser": true,
- "jquery": true,
- "qunit": true
- },
- "globals": {
- "mediaWiki": false,
- "OO": false
- },
- "rules": {}
+ "root": true,
+ "extends": [
+ "wikimedia/client",
+ "wikimedia/jquery",
+ "wikimedia/mediawiki"
+ ],
+ "rules": {
+ "max-len": "off",
+ "no-jquery/no-global-selector": "off"
+ }
}
diff --git a/Thanks/.gitignore b/Thanks/.gitignore
index 8f276ca5..c7f0bbc4 100644
--- a/Thanks/.gitignore
+++ b/Thanks/.gitignore
@@ -1,8 +1,8 @@
-node_modules
-docs
-composer.lock
-vendor
-doc
+/node_modules
+/docs
+/composer.lock
+/vendor
+/.eslintcache
# Editors
*.kate-swp
@@ -23,4 +23,3 @@ project.index
## Sublime
sublime-*
sftp-config.json
-tests/phan/issues
diff --git a/Thanks/.phan/config.php b/Thanks/.phan/config.php
new file mode 100644
index 00000000..7f7c0f37
--- /dev/null
+++ b/Thanks/.phan/config.php
@@ -0,0 +1,25 @@
+<?php
+
+$cfg = require __DIR__ . '/../vendor/mediawiki/mediawiki-phan-config/src/config.php';
+
+$cfg['directory_list'] = array_merge(
+ $cfg['directory_list'],
+ [
+ '../../extensions/Echo',
+ '../../extensions/Flow',
+ '../../extensions/MobileFrontend',
+ '../../extensions/CheckUser',
+ ]
+);
+
+$cfg['exclude_analysis_directory_list'] = array_merge(
+ $cfg['exclude_analysis_directory_list'],
+ [
+ '../../extensions/Echo',
+ '../../extensions/Flow',
+ '../../extensions/MobileFrontend',
+ '../../extensions/CheckUser',
+ ]
+);
+
+return $cfg;
diff --git a/Thanks/.phpcs.xml b/Thanks/.phpcs.xml
index d6c3b566..a9c1f665 100644
--- a/Thanks/.phpcs.xml
+++ b/Thanks/.phpcs.xml
@@ -1,6 +1,7 @@
<?xml version="1.0"?>
<ruleset>
<rule ref="./vendor/mediawiki/mediawiki-codesniffer/MediaWiki">
+ <exclude name="MediaWiki.Commenting.FunctionComment.MissingDocumentationPrivate" />
<exclude name="MediaWiki.Commenting.FunctionComment.MissingDocumentationProtected" />
<exclude name="MediaWiki.Commenting.FunctionComment.MissingDocumentationPublic" />
<exclude name="MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment" />
diff --git a/Thanks/Doxyfile b/Thanks/Doxyfile
index 38f26d80..4e5bdaf9 100644
--- a/Thanks/Doxyfile
+++ b/Thanks/Doxyfile
@@ -3,7 +3,7 @@
PROJECT_NAME = Thanks
PROJECT_BRIEF = "MediaWiki Thanks extension"
-OUTPUT_DIRECTORY = doc
+OUTPUT_DIRECTORY = docs
JAVADOC_AUTOBRIEF = YES
QT_AUTOBRIEF = YES
diff --git a/Thanks/Gruntfile.js b/Thanks/Gruntfile.js
index 7695dc6a..727c4405 100644
--- a/Thanks/Gruntfile.js
+++ b/Thanks/Gruntfile.js
@@ -6,38 +6,33 @@
/* eslint-env node, es6 */
module.exports = function ( grunt ) {
+ var conf = grunt.file.readJSON( 'extension.json' );
grunt.loadNpmTasks( 'grunt-banana-checker' );
grunt.loadNpmTasks( 'grunt-contrib-watch' );
grunt.loadNpmTasks( 'grunt-eslint' );
- grunt.loadNpmTasks( 'grunt-jsonlint' );
grunt.initConfig( {
eslint: {
+ options: {
+ cache: true,
+ fix: grunt.option( 'fix' )
+ },
all: [
- '*.js',
- 'modules/**/*.js',
- 'tests/qunit/**/*.js'
+ '**/*.{js,json}',
+ '!{vendor,node_modules}/**'
]
},
- banana: {
- all: 'i18n/'
- },
+ banana: conf.MessagesDirs,
watch: {
files: [
'.eslintrc.json',
'<%= eslint.all %>'
],
tasks: 'test'
- },
- jsonlint: {
- all: [
- '*.json',
- 'i18n/*.json'
- ]
}
} );
- grunt.registerTask( 'test', [ 'eslint', 'jsonlint', 'banana' ] );
+ grunt.registerTask( 'test', [ 'eslint', 'banana' ] );
grunt.registerTask( 'default', 'test' );
};
diff --git a/Thanks/Thanks.php b/Thanks/Thanks.php
index 1a888f08..b3d48056 100644
--- a/Thanks/Thanks.php
+++ b/Thanks/Thanks.php
@@ -4,7 +4,7 @@
*
* This extension adds 'thank' links that allow users to thank other users for
* specific revisions. It relies on the Echo extension to send the actual thanks.
- * For more info see http://mediawiki.org/wiki/Extension:Thanks
+ * For more info see https://mediawiki.org/wiki/Extension:Thanks
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
diff --git a/Thanks/composer.json b/Thanks/composer.json
index 14b63582..c24ccd32 100644
--- a/Thanks/composer.json
+++ b/Thanks/composer.json
@@ -1,10 +1,10 @@
{
"require-dev": {
- "jakub-onderka/php-parallel-lint": "1.0.0",
- "mediawiki/mediawiki-codesniffer": "22.0.0",
- "jakub-onderka/php-console-highlighter": "0.3.2",
- "mediawiki/minus-x": "0.3.1",
- "mediawiki/mediawiki-phan-config": "0.3.0"
+ "mediawiki/mediawiki-codesniffer": "31.0.0",
+ "mediawiki/mediawiki-phan-config": "0.10.2",
+ "mediawiki/minus-x": "1.1.0",
+ "php-parallel-lint/php-console-highlighter": "0.5.0",
+ "php-parallel-lint/php-parallel-lint": "1.2.0"
},
"scripts": {
"test": [
@@ -13,14 +13,11 @@
"minus-x check ."
],
"fix": [
- "phpcbf",
- "minus-x fix ."
+ "minus-x fix .",
+ "phpcbf"
],
"doc": [
"doxygen"
]
- },
- "extra": {
- "phan-taint-check-plugin": "1.5.0"
}
}
diff --git a/Thanks/extension.json b/Thanks/extension.json
index eb38268e..aff7b175 100644
--- a/Thanks/extension.json
+++ b/Thanks/extension.json
@@ -11,7 +11,7 @@
"license-name": "MIT",
"type": "other",
"requires": {
- "MediaWiki": ">= 1.31.0",
+ "MediaWiki": ">= 1.35.0",
"extensions": {
"Echo": "*"
}
@@ -45,7 +45,8 @@
},
"MessagesDirs": {
"Thanks": [
- "i18n"
+ "i18n",
+ "i18n/api"
]
},
"ExtensionMessagesFiles": {
@@ -64,7 +65,7 @@
"ResourceModules": {
"ext.thanks.images": {
"class": "ResourceLoaderImageModule",
- "selector": ".mw-ui-icon-{name}:before",
+ "selector": ".mw-ui-icon-thanks-{name}:before",
"defaultColor": "#fff",
"images": {
"userTalk": {
@@ -80,7 +81,7 @@
"ext.thanks.thank.js"
],
"dependencies": [
- "jquery.cookie",
+ "mediawiki.cookie",
"mediawiki.api"
]
},
@@ -115,6 +116,9 @@
"ext.thanks.mobilediff.js"
],
"messages": [
+ "thanks-button-action-queued",
+ "thanks-button-action-cancel",
+ "thanks-button-action-completed",
"thanks-button-thank",
"thanks-button-thanked",
"thanks-error-invalidrevision",
@@ -123,23 +127,19 @@
"thanks-thanked-notice"
],
"dependencies": [
+ "mobile.startup",
"ext.thanks.images",
"mediawiki.api",
- "mediawiki.jqueryMsg",
- "mediawiki.notify"
+ "mediawiki.jqueryMsg"
],
"targets": [
"desktop",
"mobile"
]
},
- "ext.thanks.jquery.findWithParent": {
- "scripts": [
- "jquery.findWithParent.js"
- ]
- },
"ext.thanks.flowthank": {
"scripts": [
+ "jquery.findWithParent.js",
"ext.thanks.flowthank.js"
],
"messages": [
@@ -152,7 +152,6 @@
"oojs-ui-windows",
"mediawiki.jqueryMsg",
"mediawiki.api",
- "ext.thanks.jquery.findWithParent",
"ext.thanks"
]
}
@@ -161,67 +160,59 @@
"localBasePath": "modules",
"remoteExtPath": "Thanks/modules"
},
- "Hooks": {
- "HistoryRevisionTools": [
- "ThanksHooks::insertThankLink"
- ],
- "DiffRevisionTools": [
- "ThanksHooks::insertThankLink"
- ],
- "PageHistoryBeforeList": [
- "ThanksHooks::onPageHistoryBeforeList"
- ],
- "DiffViewHeader": [
- "ThanksHooks::onDiffViewHeader"
- ],
- "BeforeCreateEchoEvent": [
- "ThanksHooks::onBeforeCreateEchoEvent"
- ],
- "EchoGetDefaultNotifiedUsers": [
- "ThanksHooks::onEchoGetDefaultNotifiedUsers"
- ],
- "LocalUserCreated": [
- "ThanksHooks::onAccountCreated"
- ],
- "BeforeSpecialMobileDiffDisplay": [
- "ThanksHooks::onBeforeSpecialMobileDiffDisplay"
+ "QUnitTestModule": {
+ "localBasePath": "tests/qunit",
+ "remoteExtPath": "Thanks/tests/qunit",
+ "scripts": [
+ "test_ext.thanks.thank.js",
+ "test_ext.thanks.mobilediff.js"
],
- "GetLogTypesOnUser": [
- "ThanksHooks::onGetLogTypesOnUser"
- ],
- "BeforePageDisplay": [
- "ThanksHooks::onBeforePageDisplay"
- ],
- "ResourceLoaderTestModules": [
- "ThanksHooks::onResourceLoaderTestModules"
- ],
- "ApiMain::moduleManager": [
- "ThanksHooks::onApiMainModuleManager"
- ],
- "EchoGetBundleRules": [
- "ThanksHooks::onEchoGetBundleRules"
- ],
- "LogEventsListLineEnding": [
- "ThanksHooks::onLogEventsListLineEnding"
+ "dependencies": [
+ "ext.thanks",
+ "ext.thanks.mobilediff"
]
},
+ "Hooks": {
+ "ApiMain::moduleManager": "ThanksHooks::onApiMainModuleManager",
+ "BeforeCreateEchoEvent": "ThanksHooks::onBeforeCreateEchoEvent",
+ "BeforePageDisplay": "ThanksHooks::onBeforePageDisplay",
+ "BeforeSpecialMobileDiffDisplay": "ThanksHooks::onBeforeSpecialMobileDiffDisplay",
+ "DiffTools": "ThanksHooks::insertThankLink",
+ "DifferenceEngineViewHeader": "ThanksHooks::onDifferenceEngineViewHeader",
+ "EchoGetBundleRules": "ThanksHooks::onEchoGetBundleRules",
+ "EchoGetDefaultNotifiedUsers": "ThanksHooks::onEchoGetDefaultNotifiedUsers",
+ "GetLogTypesOnUser": "ThanksHooks::onGetLogTypesOnUser",
+ "HistoryTools": "ThanksHooks::insertThankLink",
+ "LocalUserCreated": "ThanksHooks::onAccountCreated",
+ "LogEventsListLineEnding": "ThanksHooks::onLogEventsListLineEnding",
+ "PageHistoryBeforeList": "ThanksHooks::onPageHistoryBeforeList"
+ },
"config": {
- "ThanksSendToBots": false,
- "ThanksLogging": true,
- "ThanksConfirmationRequired": true,
- "ThanksLogTypeWhitelist": [
- "contentmodel",
- "delete",
- "import",
- "merge",
- "move",
- "patrol",
- "protect",
- "tag",
- "managetags",
- "rights",
- "lock"
- ]
+ "ThanksSendToBots": {
+ "value": false
+ },
+ "ThanksLogging": {
+ "value": true
+ },
+ "ThanksConfirmationRequired": {
+ "value": true
+ },
+ "ThanksLogTypeWhitelist": {
+ "value": [
+ "contentmodel",
+ "create",
+ "delete",
+ "import",
+ "merge",
+ "move",
+ "patrol",
+ "protect",
+ "tag",
+ "managetags",
+ "rights",
+ "lock"
+ ]
+ }
},
- "manifest_version": 1
+ "manifest_version": 2
}
diff --git a/Thanks/gitinfo.json b/Thanks/gitinfo.json
deleted file mode 100644
index d86c8a47..00000000
--- a/Thanks/gitinfo.json
+++ /dev/null
@@ -1 +0,0 @@
-{"headSHA1": "23858aaf392855a93a618423ba1f21848f12faa9\n", "head": "23858aaf392855a93a618423ba1f21848f12faa9\n", "remoteURL": "https://gerrit.wikimedia.org/r/mediawiki/extensions/Thanks", "branch": "23858aaf392855a93a618423ba1f21848f12faa9\n", "headCommitDate": "1539548740"} \ No newline at end of file
diff --git a/Thanks/i18n/ady-cyrl.json b/Thanks/i18n/ady-cyrl.json
index 8120d889..64752959 100644
--- a/Thanks/i18n/ady-cyrl.json
+++ b/Thanks/i18n/ady-cyrl.json
@@ -1,9 +1,9 @@
{
"@metadata": {
"authors": [
+ "Amire80",
"Highlander45temp",
- "Inyzh",
- "Amire80"
+ "Inyzh"
]
},
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|опсэу еӀожь}}}}",
diff --git a/Thanks/i18n/api/ar.json b/Thanks/i18n/api/ar.json
new file mode 100644
index 00000000..216f087d
--- /dev/null
+++ b/Thanks/i18n/api/ar.json
@@ -0,0 +1,18 @@
+{
+ "@metadata": {
+ "authors": [
+ "أحمد",
+ "ديفيد"
+ ]
+ },
+ "apihelp-flowthank-description": "أرسل إخطار شكر علني لتعليق Flow.",
+ "apihelp-flowthank-summary": "أرسل إخطار شكر علني لتعليق Flow.",
+ "apihelp-flowthank-param-postid": "UUID للمُداخلة للشكر عليها.",
+ "apihelp-flowthank-example-1": "أرسل شكرا للتعليق مع <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "أرسل إخطاراً بالشكر إلى محرر.",
+ "apihelp-thank-summary": "أرسل إخطار بالشكر لمحرر.",
+ "apihelp-thank-param-rev": "معرف المراجعة لشكر شخص ما عليه، يجب توفير هذا أو \"السجل\".",
+ "apihelp-thank-param-log": "معرف السجل لشكر شخص ما عليه، يجب توفير هذا أو \"rev\".",
+ "apihelp-thank-param-source": "نصّ قصير يصف مصدر الطلب، مثلا <kbd>diff</kbd> أو <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "أرسل الشكر للمراجعة <kbd>ID 456</kbd>، مع كون المصدر صفحة فرق"
+}
diff --git a/Thanks/i18n/api/ast.json b/Thanks/i18n/api/ast.json
new file mode 100644
index 00000000..6e50cdb5
--- /dev/null
+++ b/Thanks/i18n/api/ast.json
@@ -0,0 +1,18 @@
+{
+ "@metadata": {
+ "authors": [
+ "Macofe",
+ "Xuacu"
+ ]
+ },
+ "apihelp-flowthank-description": "Unviar una notificación pública d'agradecimientu por un comentariu en Flow.",
+ "apihelp-flowthank-summary": "Unviar una notificación pública d'agradecimientu por un comentariu en Flow.",
+ "apihelp-flowthank-param-postid": "La UUID de la publicación qu'agradecer.",
+ "apihelp-flowthank-example-1": "Unviar un agradecimientu pol comentariu con <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Unviar una notificación d'agradecimientu a un editor.",
+ "apihelp-thank-summary": "Unviar una notificación d'agradecimientu a un editor.",
+ "apihelp-thank-param-rev": "ID de la revisión pola que dar les gracies a dalguién. Tien de dase esto o 'log'.",
+ "apihelp-thank-param-log": "ID del rexistru pol que dar les gracies a dalguién. Tien de dase esto o 'rev'.",
+ "apihelp-thank-param-source": "Un testu curtiu que describa l'orixe de la solicitú. Por exemplu, <kbd>diff</kbd> o <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "Dar les gracies pola revisión con <kbd>ID 456</kbd>, siendo la fonte una páxina de diff"
+}
diff --git a/Thanks/i18n/api/ba.json b/Thanks/i18n/api/ba.json
new file mode 100644
index 00000000..632a8c2c
--- /dev/null
+++ b/Thanks/i18n/api/ba.json
@@ -0,0 +1,16 @@
+{
+ "@metadata": {
+ "authors": [
+ "Sagan",
+ "Гизатуллина",
+ "Янмурза Баки"
+ ]
+ },
+ "apihelp-flowthank-description": "Flow comment өсөн йәмәғәтселек алдында рәхмәт белдерергә",
+ "apihelp-flowthank-param-postid": "Ҡотлау кәрәк булған, UUID хәбәрҙәр.",
+ "apihelp-flowthank-example-1": "<kbd>UUID xyz789</kbd> комментарийға ҡотлау ебәрергә",
+ "apihelp-thank-description": "Мөхәрриргә ҡотлау хәбәре ебәрергә.",
+ "apihelp-thank-param-rev": "Авторға рәхмәт әйтергә кәрәк булған, ID версиялар.",
+ "apihelp-thank-param-source": "Сығанаҡҡа һылтанған ҡыҫҡа юл, мәҫәлән <kbd>diff</kbd> йәки <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "Версияларҙың айырмаһын күрһәткән битте сығанаҡ итеп алып, <kbd>ID 456</kbd> версияһы өсөн ҡотларға."
+}
diff --git a/Thanks/i18n/api/bg.json b/Thanks/i18n/api/bg.json
new file mode 100644
index 00000000..e3a539f2
--- /dev/null
+++ b/Thanks/i18n/api/bg.json
@@ -0,0 +1,17 @@
+{
+ "@metadata": {
+ "authors": [
+ "StanProg"
+ ]
+ },
+ "apihelp-flowthank-description": "Изпращане на публично известие за благодарност за коментар във Flow.",
+ "apihelp-flowthank-summary": "Изпращане на публично известие за благодарност за коментар във Flow.",
+ "apihelp-flowthank-param-postid": "UUID кода на съобщение, за което да се благодари.",
+ "apihelp-flowthank-example-1": "Изпращане на благодарност за коментар с <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Изпращане на известие за благодарност на редактор.",
+ "apihelp-thank-summary": "Изпращане на известие за благодарност на редактор.",
+ "apihelp-thank-param-rev": "ID на версията, за която да се благодари на някого. Трябва да се предостави или това, или „log“.",
+ "apihelp-thank-param-log": "ID на записа от дневника, за което да се благодари. Трябва да се предостави или това, или „rev“.",
+ "apihelp-thank-param-source": "Кратък низ, описващ източника на заявката, например <kbd>diff</kbd> или <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "Изпращане на благодарност за версия с <kbd>ID 456</kbd>, като за източник е указана разликата между версиите"
+}
diff --git a/Thanks/i18n/api/bn.json b/Thanks/i18n/api/bn.json
new file mode 100644
index 00000000..cec8e1e1
--- /dev/null
+++ b/Thanks/i18n/api/bn.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bodhisattwa",
+ "আজিজ",
+ "আফতাবুজ্জামান"
+ ]
+ },
+ "apihelp-flowthank-description": "একটি ফ্লো মন্তব্যের জন্য একটি প্রকাশ্য আপনাকে-ধন্যবাদ বিজ্ঞপ্তি পাঠায়।",
+ "apihelp-flowthank-summary": "একটি ফ্লো মন্তব্যের জন্য একটি প্রকাশ্য আপনাকে-ধন্যবাদ বিজ্ঞপ্তি পাঠায়।",
+ "apihelp-flowthank-example-1": "মন্তব্যের জন্য <kbd>UUID xyz789</kbd> সহ ধন্যবাদ পাঠান",
+ "apihelp-thank-description": "একজন সম্পাদককে ধন্যবাদ বিজ্ঞপ্তি পাঠান।"
+}
diff --git a/Thanks/i18n/api/ca.json b/Thanks/i18n/api/ca.json
new file mode 100644
index 00000000..b7255431
--- /dev/null
+++ b/Thanks/i18n/api/ca.json
@@ -0,0 +1,17 @@
+{
+ "@metadata": {
+ "authors": [
+ "Paucabot",
+ "Ssola"
+ ]
+ },
+ "apihelp-flowthank-description": "Envia una notificació pública d'agraïment per un comentari de Flow.",
+ "apihelp-flowthank-summary": "Envia una notificació pública d'agraïment per un comentari de Flow.",
+ "apihelp-flowthank-param-postid": "La UUID de l'apunt a agrair.",
+ "apihelp-flowthank-example-1": "Enviar un agraïment pel comentari amb <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Envia una notificació d'agraïment a un editor.",
+ "apihelp-thank-summary": "Envia una notificació d'agraïment a un editor.",
+ "apihelp-thank-param-rev": "Revisió ID per agrair a algú.",
+ "apihelp-thank-param-source": "Un breu comentari que descrigui l'origen de la petició, per exemple <kbd>diff</kbd> o <kbd>historial</kbd>.",
+ "apihelp-thank-example-1": "Doneu les gràcies per la revisió <kbd>ID 456</kbd>, i que la font sigui un diff de la pàgina"
+}
diff --git a/Thanks/i18n/api/ce.json b/Thanks/i18n/api/ce.json
new file mode 100644
index 00000000..584ad708
--- /dev/null
+++ b/Thanks/i18n/api/ce.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Умар"
+ ]
+ },
+ "apihelp-flowthank-param-postid": "Баркалла ала деза UUID хаам.",
+ "apihelp-thank-description": "Тадархочуна дӀахаийта баркаллах лаьцна.",
+ "apihelp-thank-param-rev": "Авторан баркалла ала деза ID верси.",
+ "apihelp-thank-example-1": "<kbd>ID 456</kbd> верси нисъярна баркалла дӀадахьийта, версийн башхалла гойтуш йолу хьажорг цани."
+}
diff --git a/Thanks/i18n/api/cs.json b/Thanks/i18n/api/cs.json
new file mode 100644
index 00000000..1e19638a
--- /dev/null
+++ b/Thanks/i18n/api/cs.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Matěj Suchánek",
+ "Mormegil"
+ ]
+ },
+ "apihelp-thank-param-rev": "ID revize, za kterou se má někomu poděkovat. Toto nebo 'log' musí být uvedeno.",
+ "apihelp-thank-param-log": "ID záznamu, za který se má poděkovat. Nutné uvést buď toto, nebo 'rev'."
+}
diff --git a/Thanks/i18n/api/cy.json b/Thanks/i18n/api/cy.json
new file mode 100644
index 00000000..938e522e
--- /dev/null
+++ b/Thanks/i18n/api/cy.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Robin Owain"
+ ]
+ },
+ "apihelp-thank-description": "Danfonwch air o ddiolch at y golygydd."
+}
diff --git a/Thanks/i18n/api/de.json b/Thanks/i18n/api/de.json
new file mode 100644
index 00000000..35bcd26c
--- /dev/null
+++ b/Thanks/i18n/api/de.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Geitost",
+ "Inkowik",
+ "Metalhead64"
+ ]
+ },
+ "apihelp-flowthank-description": "Ein öffentliches Dankeschön für einen Flow-Beitrag senden.",
+ "apihelp-flowthank-summary": "Sendet eine öffentliche Dankeschön-Benachrichtigung für einen Flow-Kommentar.",
+ "apihelp-flowthank-param-postid": "Die UUID des Beitrags, für den gedankt werden soll.",
+ "apihelp-flowthank-example-1": "Ein Dankeschön für den Kommentar mit der <kbd>UUID xyz789</kbd> senden",
+ "apihelp-thank-description": "Sendet eine Dankeschön-Benachrichtigung an einen Autor.",
+ "apihelp-thank-summary": "Sendet eine Dankeschön-Benachrichtigung an einen Bearbeiter.",
+ "apihelp-thank-param-rev": "Versionskennung, für die gedankt werden soll. Dies oder „log“ muss angegeben werden.",
+ "apihelp-thank-param-log": "Logbuchkennung, für die gedankt werden soll. Dies oder „rev“ muss angegeben werden.",
+ "apihelp-thank-param-source": "Eine kurze Zeichenfolge, die die Quelle der Anfrage beschreibt, zum Beispiel <kbd>diff</kbd> oder <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "Sendet ein Dankeschön für die Version mit der <kbd>Kennung 456</kbd>, deren Quelle ein Bearbeitungsunterschied ist."
+}
diff --git a/Thanks/i18n/api/en.json b/Thanks/i18n/api/en.json
new file mode 100644
index 00000000..db03a7c6
--- /dev/null
+++ b/Thanks/i18n/api/en.json
@@ -0,0 +1,17 @@
+{
+ "@metadata": {
+ "authors": [
+ "Shirayuki"
+ ]
+ },
+ "apihelp-flowthank-description": "Send a public thank-you notification for a Flow comment.",
+ "apihelp-flowthank-summary": "Send a public thank-you notification for a Flow comment.",
+ "apihelp-flowthank-param-postid": "The UUID of the post to thank for.",
+ "apihelp-flowthank-example-1": "Send thanks for the comment with <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Send a thank-you notification to an editor.",
+ "apihelp-thank-summary": "Send a thank-you notification to an editor.",
+ "apihelp-thank-param-rev": "Revision ID to thank someone for. This or 'log' must be provided.",
+ "apihelp-thank-param-log": "Log ID to thank someone for. This or 'rev' must be provided.",
+ "apihelp-thank-param-source": "A short string describing the source of the request, for example <kbd>diff</kbd> or <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "Send thanks for revision <kbd>ID 456</kbd>, with the source being a diff page"
+}
diff --git a/Thanks/i18n/api/eo.json b/Thanks/i18n/api/eo.json
new file mode 100644
index 00000000..0d59f2ce
--- /dev/null
+++ b/Thanks/i18n/api/eo.json
@@ -0,0 +1,17 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mirin"
+ ]
+ },
+ "apihelp-flowthank-description": "Publike danki pro Flow-komento.",
+ "apihelp-flowthank-summary": "Publike danki pro Flow-komento.",
+ "apihelp-flowthank-param-postid": "La UUID de la afiŝo kies afiŝinto estas dankota.",
+ "apihelp-flowthank-example-1": "Danki pro komento de <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Danki redaktinton.",
+ "apihelp-thank-summary": "Danki redaktinton.",
+ "apihelp-thank-param-rev": "Numero de versio kies redaktinto estas dankota. Aŭ tiu aŭ 'log' devas esti specifita.",
+ "apihelp-thank-param-log": "Numero de protokolero, kies protokolinto estas dankota. Aŭ tiu aŭ 'rev' devas esti specifita.",
+ "apihelp-thank-param-source": "Mallonga teksto priskribanta la fonton de la peto, ekzemple <kbd>diff</kbd> aŭ <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "Danki pro versio <kbd>ID 456</kbd>, kun la diferenco-paĝo kiel la fonto"
+}
diff --git a/Thanks/i18n/api/es.json b/Thanks/i18n/api/es.json
new file mode 100644
index 00000000..ec8a5f09
--- /dev/null
+++ b/Thanks/i18n/api/es.json
@@ -0,0 +1,18 @@
+{
+ "@metadata": {
+ "authors": [
+ "Fitoschido",
+ "Jelou",
+ "Macofe"
+ ]
+ },
+ "apihelp-flowthank-description": "Enviar una notificación pública de agradecimiento por un comentario en Flow.",
+ "apihelp-flowthank-summary": "Enviar una notificación pública de agradecimiento por un comentario en Flow.",
+ "apihelp-flowthank-param-postid": "El UUID de la publicación a la cual agradecer.",
+ "apihelp-flowthank-example-1": "Agradecer el comentario con <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Enviar una notificación de agradecimiento a un editor.",
+ "apihelp-thank-summary": "Enviar una notificación de agradecimiento a un editor.",
+ "apihelp-thank-param-rev": "Identificador de revisión del envío de agradecimiento. Se debe proporcionar el ID o el 'log'.",
+ "apihelp-thank-param-source": "Una cadena corta que describa el origen de la solicitud. Por ejemplo, <kbd>diff</kbd> o <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "Agradecer la revisión <kbd>ID 456</kbd, con la fuente siendo una página diff"
+}
diff --git a/Thanks/i18n/api/et.json b/Thanks/i18n/api/et.json
new file mode 100644
index 00000000..27598af9
--- /dev/null
+++ b/Thanks/i18n/api/et.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Macofe",
+ "Pikne"
+ ]
+ },
+ "apihelp-flowthank-description": "Avaliku tänuteavituse saatmine voogarutelu kommentaari eest.",
+ "apihelp-flowthank-param-postid": "Postitus, mille eest tänada, UUID.",
+ "apihelp-flowthank-example-1": "Täna postituse eest (<kbd>UUID xyz789</kbd>)",
+ "apihelp-thank-description": "Tänuteavituse saatmine toimetajale.",
+ "apihelp-thank-param-rev": "Redaktsioon, mille eest tänada, selle identifikaator. Tuleb ära tuua kas see või \"log\".",
+ "apihelp-thank-param-source": "Lühisõne, mis kirjeldab päringu allikat, näiteks <kbd>diff</kbd> või <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "Täna redaktsiooni <kbd>ID 456</kbd eest, allikas on erinevuste lehekülg"
+}
diff --git a/Thanks/i18n/api/fa.json b/Thanks/i18n/api/fa.json
new file mode 100644
index 00000000..32c04232
--- /dev/null
+++ b/Thanks/i18n/api/fa.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "4nn1l2",
+ "Huji",
+ "Macofe"
+ ]
+ },
+ "apihelp-flowthank-description": "تشکر کردن علنی در جریان از یک نظر",
+ "apihelp-flowthank-summary": "برای یک نظر در فلو، پیام تشکری ارسال کنید.",
+ "apihelp-flowthank-param-postid": "UUIDی پست مشکور",
+ "apihelp-flowthank-example-1": "تشکر کردن از نظر با <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "فرستادن یک اعلان تشکر به یک ویرایشگر.",
+ "apihelp-thank-summary": "پیام تشکری به یک ویرایشگر ارسال کنید.",
+ "apihelp-thank-param-rev": "شناسهٔ نسخه‌ای که بابت آن از کسی تشکر می‌کنید. یا این شناسه و یا مقدار متغیر «log» باید ارائه شود.",
+ "apihelp-thank-param-log": "شناسهٔ سیاهه‌ایی که بابت آن از کسی تشکر می‌کنید. یا این شناسه و یا مقدار متغیر «rev» باید ارائه شود.",
+ "apihelp-thank-param-source": "رشته متنی کوتاه برای شرخ مبدأ درخواست، برای مثال <kbd>diff</kbd> یا <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "تشکر کردن برای نسخهٔ شناسهٔ <kbd>ID 456</kbd، با صفحهٔ تفاوت به عنوان منبع"
+}
diff --git a/Thanks/i18n/api/fi.json b/Thanks/i18n/api/fi.json
new file mode 100644
index 00000000..8f314676
--- /dev/null
+++ b/Thanks/i18n/api/fi.json
@@ -0,0 +1,16 @@
+{
+ "@metadata": {
+ "authors": [
+ "Macofe",
+ "Pxos",
+ "Stryn"
+ ]
+ },
+ "apihelp-flowthank-description": "Lähetä näkyvä kiitoksesi kommentista Flow'ssa.",
+ "apihelp-flowthank-param-postid": "Viestin UUID, josta kiitetään.",
+ "apihelp-flowthank-example-1": "Lähetä kiitokset kommentista, jonka <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Lähetä kiitokset jollekulle muokkaajalle.",
+ "apihelp-thank-param-rev": "Sivuversion tunnistenumero, josta kiitetään. Sinun on annettava tämä tai 'loki'.",
+ "apihelp-thank-param-source": "Lyhyt merkkijono, joka kertoo pyynnön lähteestä. Esimerkiksi <kbd>diff</kbd>i tai <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "Lähetä kiitoksesi sivuversiosta <kbd>ID 456</kbd> niin, että lähteenä on vertailusivu"
+}
diff --git a/Thanks/i18n/api/fr.json b/Thanks/i18n/api/fr.json
new file mode 100644
index 00000000..39d449a1
--- /dev/null
+++ b/Thanks/i18n/api/fr.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Djiboun",
+ "Ltrlg",
+ "Macofe",
+ "Urhixidur",
+ "Wladek92"
+ ]
+ },
+ "apihelp-flowthank-description": "Envoyer des remerciements pour un « contenu Flow ».",
+ "apihelp-flowthank-summary": "Envoyer une notification publique de remerciement pour un commentaire Flow.",
+ "apihelp-flowthank-param-postid": "L’UUID du message pour lequel remercier.",
+ "apihelp-flowthank-example-1": "Remercier pour le commentaire ayant l’<kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Envoyer des remerciements à un éditeur.",
+ "apihelp-thank-summary": "Envoyer une notification de remerciement à un éditeur.",
+ "apihelp-thank-param-rev": "ID de révision pour laquelle remercier quelqu’un. Fournir obligatoirement celui-ci ou 'log' .",
+ "apihelp-thank-param-log": "ID de journal pour remercier quelqu’un. Cet ID ou 'rev' doit être fourni.",
+ "apihelp-thank-param-source": "Une chaîne courte décrivant la source de la requête. Par exemple, <kbd>diff</kbd> ou <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "Envoyer des remerciements pour l’ID de révision <kbd>ID 456</kbd, avec la source étant une page de différence"
+}
diff --git a/Thanks/i18n/api/frr.json b/Thanks/i18n/api/frr.json
new file mode 100644
index 00000000..bb4e2cf9
--- /dev/null
+++ b/Thanks/i18n/api/frr.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Macofe",
+ "Murma174"
+ ]
+ },
+ "apihelp-flowthank-description": "En öfentelk soonk-bööd för en komentaar schüür.",
+ "apihelp-flowthank-param-postid": "Det UUID faan det besoonket nooracht.",
+ "apihelp-flowthank-example-1": "Schüür en soonk för di komentaar mä det <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Schüür en soonk-bööd tu en skriiwer.",
+ "apihelp-thank-param-rev": "Werjuuns-ID huar hoker för soonket woort.",
+ "apihelp-thank-param-source": "En kurten beskriiwangs-tekst, t.b. <kbd>diff</kbd> of <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "Schüür en soonk för det werjuuns-<kbd>ID 456</kbd>, wan det am en ferskeel gongt."
+}
diff --git a/Thanks/i18n/api/gl.json b/Thanks/i18n/api/gl.json
new file mode 100644
index 00000000..62898c2f
--- /dev/null
+++ b/Thanks/i18n/api/gl.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Elisardojm",
+ "Iváns",
+ "Macofe",
+ "Toliño"
+ ]
+ },
+ "apihelp-flowthank-description": "Enviar unha notificación pública de agradecemento por un comentario en Flow.",
+ "apihelp-flowthank-summary": "Enviar unha notificación pública de agradecemento por un comentario en Flow.",
+ "apihelp-flowthank-param-postid": "O UUID da publicación que agradecer.",
+ "apihelp-flowthank-example-1": "Enviar un agradecemento ao comentario co <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Enviar unha notificación de agradecemento a un editor.",
+ "apihelp-thank-summary": "Enviar unha notificación de agradecemento a un editor.",
+ "apihelp-thank-param-rev": "Identificador (ID) da revisión a agradecer a alguén. Ten que ser fornecido este identificador, ou 'log'.",
+ "apihelp-thank-param-log": "Identificador (ID) do rexisto a agradecer a alguén. Ten que ser fornecido este identificador, ou 'rev'.",
+ "apihelp-thank-param-source": "Un texto breve que describa a orixe da solicitude. Por exemplo, <kbd>diff</kbd> ou <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "Enviar un agradecemento pola revisión con identificador <kbd>ID 456</kbd, cuxa orixe sexa unha páxina de diferenzas"
+}
diff --git a/Thanks/i18n/api/he.json b/Thanks/i18n/api/he.json
new file mode 100644
index 00000000..4cd4834f
--- /dev/null
+++ b/Thanks/i18n/api/he.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amire80",
+ "Guycn2",
+ "Macofe"
+ ]
+ },
+ "apihelp-flowthank-description": "לשלוח הודעת תודה פומבית על הערת זרימה.",
+ "apihelp-flowthank-summary": "שליחת התראת תודה ציבורית עבור הערת זרימה.",
+ "apihelp-flowthank-param-postid": "ה־UUID של הרשומה שעליה תישלח תודה.",
+ "apihelp-flowthank-example-1": "לשלוח תודה על הערה עם <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "שליחת הודעת תודה לעורך.",
+ "apihelp-thank-summary": "שליחת התראת תודה לעורך.",
+ "apihelp-thank-param-rev": "מזהה הגרסה שעליה תישלח תודה. יש לספק מזהה גרסה או מזהה של פעולת יומן.",
+ "apihelp-thank-param-log": "המזהה של פעולת היומן שעליה תישלח תודה. יש לספק מזהה של פעולת יומן או מזהה גרסה.",
+ "apihelp-thank-param-source": "מחרוזת קצרה שמתארת את מקור הבקשה, למשל <kbd>diff</kbd> או <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "שליחת תודה עבור מזהה גרסה <kbd>ID 456</kbd, שהמקור שלה הוא דף diff."
+}
diff --git a/Thanks/i18n/api/hr.json b/Thanks/i18n/api/hr.json
new file mode 100644
index 00000000..506cca99
--- /dev/null
+++ b/Thanks/i18n/api/hr.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bugoslav"
+ ]
+ },
+ "apihelp-flowthank-description": "Pošaljite javnu obavijest o zahvali za komentar Ustrojnih raspravica.",
+ "apihelp-flowthank-summary": "Šalji javnu obavijest o zahvali za komentar Ustrojnih raspravica.",
+ "apihelp-flowthank-param-postid": "UUID objave za koju zahvaljujete.",
+ "apihelp-flowthank-example-1": "Pošalji zahvalu za komentar s <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Pošalji obavijest o zahvali uređivaču.",
+ "apihelp-thank-summary": "Slanje obavijesti o zahvali uređivaču."
+}
diff --git a/Thanks/i18n/api/hu.json b/Thanks/i18n/api/hu.json
new file mode 100644
index 00000000..824f774a
--- /dev/null
+++ b/Thanks/i18n/api/hu.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Dj",
+ "Macofe",
+ "Tacsipacsi",
+ "Tgr"
+ ]
+ },
+ "apihelp-flowthank-description": "Nyilvános köszönet küldése egy Flow-hozzászólásért.",
+ "apihelp-flowthank-summary": "Nyilvános köszönet küldése egy Flow-hozzászólásért.",
+ "apihelp-flowthank-param-postid": "A megköszönendő hozzászólás UUID-je.",
+ "apihelp-flowthank-example-1": "Az <kbd>xyz789<kbd> UUID-jű komment megköszönése",
+ "apihelp-thank-description": "Köszönet küldése egy szerkesztőnek.",
+ "apihelp-thank-summary": "Köszönet küldése egy szerkesztőnek.",
+ "apihelp-thank-param-rev": "A megköszönendő lapváltozat-azonosító. Ezt vagy a <var>log</var> paramétert kötelező megadni.",
+ "apihelp-thank-param-log": "A megköszönendő naplóbejegyzés-azonosító. Ezt vagy a <var>rev</var> paramétert kötelező megadni.",
+ "apihelp-thank-param-source": "A forrás rövid megnevezése, pl. <kbd>diff</kbd> vagy <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "A <kbd>456</kbd>-os ID-jű lapváltozat megköszönése, ahol a köszönet forrása egy diff (változtatás) oldal"
+}
diff --git a/Thanks/i18n/api/id.json b/Thanks/i18n/api/id.json
new file mode 100644
index 00000000..435aa959
--- /dev/null
+++ b/Thanks/i18n/api/id.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Gombang",
+ "Macofe",
+ "Rachmat04",
+ "William Surya Permana"
+ ]
+ },
+ "apihelp-flowthank-description": "Kirim pemberitahuan terima kasih publik untuk komentar Flow.",
+ "apihelp-flowthank-summary": "Kirim pemberitahuan terima kasih publik untuk komentar Flow.",
+ "apihelp-flowthank-param-postid": "UUID dari kiriman yang ingin diberikan ucapan terima kasih.",
+ "apihelp-flowthank-example-1": "Kirim ucapan terima kasih atas komentar dengan <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Kirim pemberitahuan ucapan terima kasih kepada penyunting.",
+ "apihelp-thank-summary": "Kirim pemberitahuan terima kasih publik kepada seorang penyunting.",
+ "apihelp-thank-param-rev": "ID Revisi yang ingin diberikan ucapan terima kasih. Ini atau 'log' mesti diberikan.",
+ "apihelp-thank-param-log": "ID log yang ingin diucapkan terima kasih. Ini atau 'rev' harus diberikan.",
+ "apihelp-thank-param-source": "Sebuah kata singkat yang menjelaskan sumber permintaan, misalnya <kbd>diff</kbd> (beda) arau <kbd>history</kbd> (riwayat).",
+ "apihelp-thank-example-1": "Kirimkan terima kasih untuk revisi <kbd>ID 456</kbd>, dengan sumber menjadi halaman perbedaannya"
+}
diff --git a/Thanks/i18n/api/it.json b/Thanks/i18n/api/it.json
new file mode 100644
index 00000000..fe1ca0fe
--- /dev/null
+++ b/Thanks/i18n/api/it.json
@@ -0,0 +1,16 @@
+{
+ "@metadata": {
+ "authors": [
+ "Beta16",
+ "Macofe"
+ ]
+ },
+ "apihelp-flowthank-description": "Invia una notifica pubblica di ringraziamento per un commento Flow.",
+ "apihelp-flowthank-summary": "Invia una notifica pubblica di ringraziamento per un commento Flow.",
+ "apihelp-flowthank-param-postid": "L'UUID del messaggio per cui ringraziare.",
+ "apihelp-flowthank-example-1": "Ringrazia per il commento con <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Invia una notifica di ringraziamento a un contributore.",
+ "apihelp-thank-param-rev": "ID della versione per cui ringraziare qualcuno. Questo o 'log' deve essere fornito",
+ "apihelp-thank-param-source": "Una breve stringa che descrive l'origine della richiesta. Per esempio, <kbd>diff</kbd> o <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "Invia un ringraziamento per la versione <kbd>ID 456</kbd>, con la sorgente di una pagina confronto"
+}
diff --git a/Thanks/i18n/api/ja.json b/Thanks/i18n/api/ja.json
new file mode 100644
index 00000000..debd3f7b
--- /dev/null
+++ b/Thanks/i18n/api/ja.json
@@ -0,0 +1,13 @@
+{
+ "@metadata": {
+ "authors": [
+ "Afaz",
+ "Marine-Blue"
+ ]
+ },
+ "apihelp-flowthank-description": "以下のコメントに対して感謝の通知(記録は公開されます)を送信する。",
+ "apihelp-flowthank-summary": "コメントに対して感謝の通知を送信する。",
+ "apihelp-thank-description": "編集者に感謝の通知を送信する。",
+ "apihelp-thank-summary": "編集者に感謝の通知を送信する。",
+ "apihelp-thank-param-rev": "感謝する版のID。これか、または「log」を指定する必要があります。"
+}
diff --git a/Thanks/i18n/api/jv.json b/Thanks/i18n/api/jv.json
new file mode 100644
index 00000000..ec95db58
--- /dev/null
+++ b/Thanks/i18n/api/jv.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "NoiX180"
+ ]
+ },
+ "apihelp-flowthank-description": "Kirim pariwara atur panuwun tinarbuka tumrap tanggepan Flow."
+}
diff --git a/Thanks/i18n/api/kk-cyrl.json b/Thanks/i18n/api/kk-cyrl.json
new file mode 100644
index 00000000..ec1fd80e
--- /dev/null
+++ b/Thanks/i18n/api/kk-cyrl.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Arystanbek"
+ ]
+ },
+ "apihelp-flowthank-description": "Flow жұмыс легіндегі пікір үшін жария түрде рахмет ескертпесін жіберу.",
+ "apihelp-thank-description": "Өңдеушіге рахмет ескертпесін жіберу.",
+ "apihelp-thank-param-rev": "Әлдебіреуге жіберілген рахмет ескертпесінің нұсқа сәйкестендіргіші."
+}
diff --git a/Thanks/i18n/api/ko.json b/Thanks/i18n/api/ko.json
new file mode 100644
index 00000000..379d0192
--- /dev/null
+++ b/Thanks/i18n/api/ko.json
@@ -0,0 +1,16 @@
+{
+ "@metadata": {
+ "authors": [
+ "In2acous",
+ "Ykhwong"
+ ]
+ },
+ "apihelp-flowthank-param-postid": "감사를 표할 게시물의 UUID입니다.",
+ "apihelp-flowthank-example-1": "<kbd>UUID xyz789</kbd>와 함께 댓글에 대한 감사 표현을 보냅니다",
+ "apihelp-thank-description": "편집자에게 감사 알림을 보냅니다.",
+ "apihelp-thank-summary": "편집자에게 감사 알림을 보냅니다.",
+ "apihelp-thank-param-rev": "누군가에게 감사를 표할 판의 ID입니다. 이것 또는 'log'는 반드시 제공되어야 합니다.",
+ "apihelp-thank-param-log": "누군가에게 감사를 표하는 로그 ID입니다. 이것 또는 'rev'는 반드시 지정되어야 합니다.",
+ "apihelp-thank-param-source": "이를테면 <kbd>diff</kbd> 또는 <kbd>history</kbd>처럼 요청의 원본을 기술하는 짧은 문자열입니다.",
+ "apihelp-thank-example-1": "diff 문서의 원본과 함께 <kbd>ID 456</kbd> 판에 대해 감사를 보냅니다."
+}
diff --git a/Thanks/i18n/api/ksh.json b/Thanks/i18n/api/ksh.json
new file mode 100644
index 00000000..01a6e0d9
--- /dev/null
+++ b/Thanks/i18n/api/ksh.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Macofe",
+ "Purodha"
+ ]
+ },
+ "apihelp-flowthank-description": "Schegg en öffentlesche Nohreesch zom Bedanke för ene Flow Kommäntaa.",
+ "apihelp-flowthank-param-postid": "De <i lang=\"en\" xml:lang=\"en\" dir=\"ltr\" title=\"Universally unique identifier\">UUID</i> vun däm Beijdraach för devör ze dangke.",
+ "apihelp-flowthank-example-1": "Donn ene Dank schecke för dä Beijdraach met dä <i lang=\"en\" xml:lang=\"en\" dir=\"ltr\" title=\"\">UUID</i> „<kbd lang=\"en\" xml:lang=\"en\" dir=\"ltr\">xyz789</kbd>“",
+ "apihelp-thank-description": "Schegg ene Dangk aan ene Schrihver.",
+ "apihelp-thank-param-rev": "De Kännong vun ene Väsjohn för sesch bei einem för ze bedangke.",
+ "apihelp-thank-param-source": "Ene koote Täx öm ze sahre, woh di Frohch hehr küdd, <code lang=\"en\" xml:lang=\"en\" dir=\"ltr\"><kbd>diff</kbd></code> uddder <code lang=\"en\" xml:lang=\"en\" dir=\"ltr\"><kbd>history</kbd></code> för e Beijschpell.\n<!-- \nhttps://translatewiki.net/wiki/Thread:Support/About_MediaWiki:Apihelp-thank-param-source/en\n-->",
+ "apihelp-thank-example-1": "Scheck ene Dangk för de Väsjohn met dä Kännong 456, woh de Quäll en Sigg met Ongerscheide es."
+}
diff --git a/Thanks/i18n/api/lb.json b/Thanks/i18n/api/lb.json
new file mode 100644
index 00000000..a5b9de25
--- /dev/null
+++ b/Thanks/i18n/api/lb.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Robby"
+ ]
+ },
+ "apihelp-thank-description": "Engem Auteur e Merci-Message schécken.",
+ "apihelp-thank-param-rev": "Versiouns ID fir déi ee Merci gesot kréie soll. Déi oder 'log' muss ugi ginn."
+}
diff --git a/Thanks/i18n/api/lki.json b/Thanks/i18n/api/lki.json
new file mode 100644
index 00000000..669d4dc8
--- /dev/null
+++ b/Thanks/i18n/api/lki.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Hosseinblue",
+ "Macofe"
+ ]
+ },
+ "apihelp-flowthank-description": "تشکر کردن علنی در جریان از یک نظر",
+ "apihelp-flowthank-param-postid": "UUIDی پست مشکور",
+ "apihelp-flowthank-example-1": "تشکر کردن از نظر با <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "فرستادن یک اعلان تشکر به یک ویراستار.",
+ "apihelp-thank-param-rev": "شناسهٔ نسخهٔ مشکور.",
+ "apihelp-thank-param-source": "رشته متنی کوتاه برای شرخ مبدأ درخواست، برای مثال <kbd>diff</kbd> یا <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "تشکر کردن برای نسخهٔ شناسهٔ 456، با صفحهٔ تفاوت به عنوان منبع"
+}
diff --git a/Thanks/i18n/api/lrc.json b/Thanks/i18n/api/lrc.json
new file mode 100644
index 00000000..5037926c
--- /dev/null
+++ b/Thanks/i18n/api/lrc.json
@@ -0,0 +1,6 @@
+{
+ "@metadata": {
+ "authors": []
+ },
+ "apihelp-flowthank-example-1": "سی ای ویر و باور وا<kbd>UUID xyz789</kbd> یه گل منمونداری کل بکیت"
+}
diff --git a/Thanks/i18n/api/lt.json b/Thanks/i18n/api/lt.json
new file mode 100644
index 00000000..070b1121
--- /dev/null
+++ b/Thanks/i18n/api/lt.json
@@ -0,0 +1,17 @@
+{
+ "@metadata": {
+ "authors": [
+ "Albertas",
+ "Macofe",
+ "Manvydasz"
+ ]
+ },
+ "apihelp-flowthank-description": "Siųsti viešą padėkos pranešimą už Srauto komentarą.",
+ "apihelp-flowthank-param-postid": "Padėkos įrašo UUID.",
+ "apihelp-flowthank-example-1": "Siųsti padėką už komentarą su <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Siųsti padėkos pranešimą redaktoriui.",
+ "apihelp-thank-summary": "Siųsti padėkos pranešimą redaktoriui.",
+ "apihelp-thank-param-rev": "ID versijos, už kurią padėkoti.",
+ "apihelp-thank-param-source": "Trumpa eilutė, apibūdinanti užklausos šaltinį, pavyzdžiui <kbd>diff</kbd> arba <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "Siųsti padėką už versiją, kurios <kbd>ID 456</kbd> ir šaltinis yra skirtumų puslapis"
+}
diff --git a/Thanks/i18n/api/lv.json b/Thanks/i18n/api/lv.json
new file mode 100644
index 00000000..3f4ed469
--- /dev/null
+++ b/Thanks/i18n/api/lv.json
@@ -0,0 +1,17 @@
+{
+ "@metadata": {
+ "authors": [
+ "Papuass"
+ ]
+ },
+ "apihelp-flowthank-description": "Nosūtīt publisku pateicību par Flow komentāru.",
+ "apihelp-flowthank-summary": "Nosūtīt publisku pateicību par Flow komentāru.",
+ "apihelp-flowthank-param-postid": "Ieraksta UUID, par ko pateikties.",
+ "apihelp-flowthank-example-1": "Nosūtīt pateicību par komentāru ar <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Nosūtīt pateicības paziņojumu redaktoram.",
+ "apihelp-thank-summary": "Nosūtīt pateicības paziņojumu redaktoram.",
+ "apihelp-thank-param-rev": "Versijas ID, par ko kādam pateikties.",
+ "apihelp-thank-param-log": "Žurnāla ID par ko kādam pateikties. Jānorāda tas vai 'rev' vērtība.",
+ "apihelp-thank-param-source": "Īss teksts, kas apraksta pieprasījuma avotu, piemēram <kbd>diff</kbd> vai <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "Nosūtīt pateicību par versiju <kbd>ID 456</kbd>, kā avotu norādot diff lapu"
+}
diff --git a/Thanks/i18n/api/mk.json b/Thanks/i18n/api/mk.json
new file mode 100644
index 00000000..4798dc4e
--- /dev/null
+++ b/Thanks/i18n/api/mk.json
@@ -0,0 +1,18 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bjankuloski06",
+ "Macofe"
+ ]
+ },
+ "apihelp-flowthank-description": "Испратете јавна благодарница за коментар во Тек.",
+ "apihelp-flowthank-summary": "Испратете јавна благодарница за коментар во Тек.",
+ "apihelp-flowthank-param-postid": "UUID на објавата за која се заблагодарувате.",
+ "apihelp-flowthank-example-1": "Испрати благодарница за коментарот со <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Испрати благодарница на уредник.",
+ "apihelp-thank-summary": "Испрати благодарница на уредник.",
+ "apihelp-thank-param-rev": "Назнака на преработката за која се заблагодарувате. Мора да биде укажано ова или „log“.",
+ "apihelp-thank-param-log": "Назнака на дневникот за кој некому благодарите. Мора да биде укажано ова или „rev“.",
+ "apihelp-thank-param-source": "Кратка низа во која го опишувате изворот на барањето. На пр. <kbd>diff</kbd> или <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "Испрати благодарница за праработката со <kbd>назнака 456</kbd>, при што изворот е страница со разлика"
+}
diff --git a/Thanks/i18n/api/ml.json b/Thanks/i18n/api/ml.json
new file mode 100644
index 00000000..ce7c8ca1
--- /dev/null
+++ b/Thanks/i18n/api/ml.json
@@ -0,0 +1,16 @@
+{
+ "@metadata": {
+ "authors": [
+ "Macofe",
+ "Praveenp"
+ ]
+ },
+ "apihelp-flowthank-description": "ഫ്ലോ കുറിപ്പ് സംബന്ധിച്ച ഒരു പൊതു നന്ദി അറിയിപ്പ് അയയ്ക്കുക.",
+ "apihelp-flowthank-param-postid": "നന്ദി രേഖപ്പെടുത്തുന്ന പോസ്റ്റിന്റെ യു.യു.ഐ.ഡി.",
+ "apihelp-flowthank-example-1": "<kbd>UUID കചട789</kbd> ആയുള്ള കുറിപ്പിന് നന്ദിയറിയിക്കുക",
+ "apihelp-thank-description": "ഒരു ലേഖകന് നന്ദി അറിയിപ്പ് അയയ്ക്കുക.",
+ "apihelp-thank-summary": "ഒരു ലേഖകന് നന്ദി അറിയിപ്പ് അയയ്ക്കുക.",
+ "apihelp-thank-param-rev": "നന്ദി രേഖപ്പെടുത്താനുള്ള നാൾപ്പതിപ്പ് ഐ.ഡി. ഇതോ 'രേഖ'യോ നൽകിയിരിക്കണം.",
+ "apihelp-thank-param-source": "അഭ്യർത്ഥനയുടെ സ്രോതസ്സ് അടയാളപ്പെടുത്താനുള്ള ഒരു ചെറുപദം, ഉദാഹരണത്തിന് <kbd>diff</kbd> അല്ലെങ്കിൽ <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "നാൾപ്പതിപ്പ് <kbd>ഐ.ഡി. 456</kbd>-ന് നന്ദി രേഖപ്പെടുത്തുക, അഭ്യർത്ഥനാ സ്രോതസ്സ് വ്യത്യാസം താളാണ്"
+}
diff --git a/Thanks/i18n/api/mni.json b/Thanks/i18n/api/mni.json
new file mode 100644
index 00000000..c161f100
--- /dev/null
+++ b/Thanks/i18n/api/mni.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amire80",
+ "Laishram Lokendro"
+ ]
+ },
+ "apihelp-flowthank-description": "Flow comment-gidamak mayamda thagat-wahei khanghanwa thao"
+}
diff --git a/Thanks/i18n/api/nap.json b/Thanks/i18n/api/nap.json
new file mode 100644
index 00000000..f5dd811b
--- /dev/null
+++ b/Thanks/i18n/api/nap.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "C.R.",
+ "Ruthven"
+ ]
+ },
+ "apihelp-flowthank-description": "Manna 'e grazie pubbreche comm'a na notifica pe' nu cummento d' 'o Flow",
+ "apihelp-flowthank-param-postid": "Ll'UUID d' 'o post pe' ne puté da grazie.",
+ "apihelp-flowthank-example-1": "Manna grazie p' 'o cummento cu ll'<kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Manna 'e grazie a n'editore.",
+ "apihelp-thank-param-rev": "ID 'e verziona pe' putè dà grazie a coccheruno.",
+ "apihelp-thank-param-source": "Na stringa curta c' 'a descriziona d' 'o fonte d' 'a riquesta. Pe ne dà n'esempie, <kbd>diff</kbd> o <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "Manna 'e grazie 'a revisiona <kbd>ID 456</kbd>, c' 'o source facenno na diff"
+}
diff --git a/Thanks/i18n/api/nb.json b/Thanks/i18n/api/nb.json
new file mode 100644
index 00000000..5214bba8
--- /dev/null
+++ b/Thanks/i18n/api/nb.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Danmichaelo",
+ "Jon Harald Søby",
+ "Macofe"
+ ]
+ },
+ "apihelp-flowthank-description": "Send en offentlig takk for en Flow-kommentar.",
+ "apihelp-flowthank-summary": "Send en offentlig takk for en Flow-kommentar.",
+ "apihelp-flowthank-param-postid": "UUID-en til posten det skal takkes for.",
+ "apihelp-flowthank-example-1": "Send takk for kommentaren med <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Send en takk til en skribent.",
+ "apihelp-thank-summary": "Send et takkevarsel til en bidragsyter.",
+ "apihelp-thank-param-rev": "Revisjons-ID å takke noen for. Denne eller 'log' må oppgis.",
+ "apihelp-thank-param-log": "Logg-ID å takke noen for. Denne eller 'rev' må oppgis.",
+ "apihelp-thank-param-source": "En kort streng som beskriver kilden for forespørselen, for eksempel <kbd>diff</kbd> eller <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "Send takk for revisjonen med <kbd>ID 456</kbd>, der referansen blir en diff-side"
+}
diff --git a/Thanks/i18n/api/nds-nl.json b/Thanks/i18n/api/nds-nl.json
new file mode 100644
index 00000000..f0a94f9b
--- /dev/null
+++ b/Thanks/i18n/api/nds-nl.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Macofe",
+ "Servien"
+ ]
+ },
+ "apihelp-flowthank-description": "Stüür een oapenbåre dankbetüging vöär een Flow-reakty.",
+ "apihelp-flowthank-param-postid": "De UUID van t bericht um veur te bedanken.",
+ "apihelp-flowthank-example-1": "Stüür een dankbetüging vöär de reakty mid <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Stüür een dankbetüging nå een bewarker.",
+ "apihelp-thank-param-rev": "Versienummer um ene veur te bedanken.",
+ "apihelp-thank-param-source": "n Korte tekste waormee je de bron veur t verzeuk beschrieven, bieveurbeeld <kbd>diff</kbd> of <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "Stüür een dankbetüging vöär versy-<kbd>ID 456</kbd>, wårby de bron een bewarkingsverskil is"
+}
diff --git a/Thanks/i18n/api/nl.json b/Thanks/i18n/api/nl.json
new file mode 100644
index 00000000..7a142c8a
--- /dev/null
+++ b/Thanks/i18n/api/nl.json
@@ -0,0 +1,16 @@
+{
+ "@metadata": {
+ "authors": [
+ "Mar(c)"
+ ]
+ },
+ "apihelp-flowthank-description": "Stuur een openbaar bedankje voor een Flow-reactie.",
+ "apihelp-flowthank-summary": "Stuur een openbaar bedankje voor een Flow-reactie.",
+ "apihelp-flowthank-param-postid": "De UUID van het bericht waarvoor u wilt bedanken.",
+ "apihelp-flowthank-example-1": "Stuur een bedankje voor de reactie met <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Stuur een bedankje naar een bewerker.",
+ "apihelp-thank-summary": "Stuur een bedankje naar een bewerker.",
+ "apihelp-thank-param-rev": "Versie-ID waarvoor u iemand wilt bedanken.",
+ "apihelp-thank-param-source": "Een korte tekenreeks die de bron van het verzoek beschrijft, bijvoorbeeld <kbd>diff</kbd> of <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "Stuur een bedankje voor versie-<kbd>ID 456</kbd>, waarbij de bron een diff-pagina is"
+}
diff --git a/Thanks/i18n/api/pl.json b/Thanks/i18n/api/pl.json
new file mode 100644
index 00000000..5d6296e2
--- /dev/null
+++ b/Thanks/i18n/api/pl.json
@@ -0,0 +1,18 @@
+{
+ "@metadata": {
+ "authors": [
+ "Chrumps",
+ "Woytecr"
+ ]
+ },
+ "apihelp-flowthank-description": "Wysyła publiczne powiadomienie z podziękowaniem za komentarz Flow.",
+ "apihelp-flowthank-summary": "Wysyła publiczne powiadomienie z podziękowaniem za komentarz Flow.",
+ "apihelp-flowthank-param-postid": "UUID postu, za który chcesz podziękować.",
+ "apihelp-flowthank-example-1": "Wyślij podziękowanie za komentarz z <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Wysyła powiadomienie z podziękowaniem do edytującego.",
+ "apihelp-thank-summary": "Wysyła powiadomienie z podziękowaniem do edytującego.",
+ "apihelp-thank-param-rev": "ID wersji za którą podziękować. Musi być podany albo ten parametr albo parametr 'log'.",
+ "apihelp-thank-param-log": "Identyfikator wpisu rejestru czynności, którego tyczy się podziękowanie. Musi być podany albo ten parametr albo parametr 'rev'.",
+ "apihelp-thank-param-source": "Krótki ciąg znaków opisujący źródło żądania, na przykład <kbd>diff</kbd> lub <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "Wyślij podziękowanie za wersję o <kbd>ID 456</kbd>, z źródłem będącym stroną porównywania"
+}
diff --git a/Thanks/i18n/api/pt-br.json b/Thanks/i18n/api/pt-br.json
new file mode 100644
index 00000000..e7fb484c
--- /dev/null
+++ b/Thanks/i18n/api/pt-br.json
@@ -0,0 +1,21 @@
+{
+ "@metadata": {
+ "authors": [
+ "Eduardo Addad de Oliveira",
+ "Felipe L. Ewald",
+ "HenriqueCrang",
+ "Macofe",
+ "TheEduGobi"
+ ]
+ },
+ "apihelp-flowthank-description": "Enviar uma notificação de agradecimento pública por um comentário no Flow.",
+ "apihelp-flowthank-summary": "Enviar uma notificação de agradecimento pública por um comentário no Flow.",
+ "apihelp-flowthank-param-postid": "O UUID da postagem a ser agradecida.",
+ "apihelp-flowthank-example-1": "Enviar um agradecimento pelo comentário com <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Enviar uma notificação de agradecimento a um(a) editor(a).",
+ "apihelp-thank-summary": "Enviar uma notificação de agradecimento a um(a) editor(a).",
+ "apihelp-thank-param-rev": "Identificador da revisão a agradecer a alguém. Tem de ser fornecido este identificador, ou 'log'.",
+ "apihelp-thank-param-log": "Identificador do registo a agradecer a alguém. Tem de ser fornecido este identificador, ou 'rev'.",
+ "apihelp-thank-param-source": "Uma cadeia curta descrevendo a fonte da solicitação. Por exemplo, <kbd>diff</kbd> ou <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "Enviar um agradecimento pela revisão <kbd>ID 456</kbd, com uma página de comparação de edições como fonte"
+}
diff --git a/Thanks/i18n/api/pt.json b/Thanks/i18n/api/pt.json
new file mode 100644
index 00000000..e24fd3c2
--- /dev/null
+++ b/Thanks/i18n/api/pt.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Fúlvio",
+ "Hamilton Abreu",
+ "Vitorvicentevalente"
+ ]
+ },
+ "apihelp-flowthank-description": "Enviar notificação de agradecimento público por um comentário no Flow.",
+ "apihelp-flowthank-summary": "Enviar notificação de agradecimento público por um comentário no Flow.",
+ "apihelp-flowthank-param-postid": "O UUID da mensagem a agradecer.",
+ "apihelp-flowthank-example-1": "Agradeça o comentário com o <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Enviar uma notificação de agradecimento a um editor.",
+ "apihelp-thank-summary": "Enviar uma notificação de agradecimento a um editor.",
+ "apihelp-thank-param-rev": "Identificador da revisão a agradecer a alguém. Tem de ser fornecido este identificador, ou 'log'.",
+ "apihelp-thank-param-log": "Identificador do registo a agradecer a alguém. Tem de ser fornecido este identificador, ou 'rev'.",
+ "apihelp-thank-param-source": "Um texto breve que descreve a origem do pedido. Por exemplo, <kbd>diff</kbd> ou <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "Enviar um agradecimento pela revisão <kbd>ID 456</kbd>, com uma página de diferenças como fonte"
+}
diff --git a/Thanks/i18n/api/qqq.json b/Thanks/i18n/api/qqq.json
new file mode 100644
index 00000000..35f3d990
--- /dev/null
+++ b/Thanks/i18n/api/qqq.json
@@ -0,0 +1,28 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amire80",
+ "Djiboun",
+ "Liuxinyu970226",
+ "Mar(c)",
+ "Nemo bis",
+ "Nike",
+ "Pxos",
+ "Raymond",
+ "Shirayuki",
+ "Siebrand",
+ "Umherirrender",
+ "Verdy p"
+ ]
+ },
+ "apihelp-flowthank-description": "{{doc-apihelp-description|flowthank}}",
+ "apihelp-flowthank-summary": "{{doc-apihelp-summary|flowthank}}",
+ "apihelp-flowthank-param-postid": "{{doc-apihelp-param|flowthank|postid}}",
+ "apihelp-flowthank-example-1": "The \"[[w:Universally unique identifier|UUID]]\" in question is an [[w:alphanumeric|alphanumeric]] string which identifies a message (in the Flow extension).\n----\n{{doc-apihelp-example|flowthank}}",
+ "apihelp-thank-description": "{{doc-apihelp-description|thank}}",
+ "apihelp-thank-summary": "{{doc-apihelp-summary|thank}}",
+ "apihelp-thank-param-rev": "{{doc-apihelp-param|thank|rev}}",
+ "apihelp-thank-param-log": "{{doc-apihelp-param|thank|log}}",
+ "apihelp-thank-param-source": "{{doc-apihelp-param|thank|source}}",
+ "apihelp-thank-example-1": "{{doc-apihelp-example|thank}}"
+}
diff --git a/Thanks/i18n/api/roa-tara.json b/Thanks/i18n/api/roa-tara.json
new file mode 100644
index 00000000..e4c6a5ca
--- /dev/null
+++ b/Thanks/i18n/api/roa-tara.json
@@ -0,0 +1,17 @@
+{
+ "@metadata": {
+ "authors": [
+ "Joetaras"
+ ]
+ },
+ "apihelp-flowthank-description": "Manne 'na notifeche de rengraziamende pubbleche pe 'nu commende Flow.",
+ "apihelp-flowthank-summary": "Manne 'na notifeche de rengraziamende pubbleche pe 'nu commende Flow.",
+ "apihelp-flowthank-param-postid": "L'UUID d'u messàgge da rengrazià.",
+ "apihelp-flowthank-example-1": "Ringrazie pu commende cu <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Manne 'na notifeche de rengraziamenede a 'nu condrebbutore.",
+ "apihelp-thank-summary": "Manne 'na notifeche de rengraziamenede a 'nu condrebbutore.",
+ "apihelp-thank-param-rev": "ID d'a revisione pe rengrazià quacchedune. Quiste o 'log' adda essere date.",
+ "apihelp-thank-param-log": "ID de l'archivije pe rengrazià quacchedune. Quiste o 'rev' adda essere date.",
+ "apihelp-thank-param-source": "'Na stringa corte ca descrive l'origgene d'a richieste. Pe esembie, <kbd>diff</kbd> o <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "Manne 'nu rengraziamende pa revisione <kbd>ID 456</kbd>, cu 'a sorgende de 'na pàgene de combronde"
+}
diff --git a/Thanks/i18n/api/ru.json b/Thanks/i18n/api/ru.json
new file mode 100644
index 00000000..d547a8a5
--- /dev/null
+++ b/Thanks/i18n/api/ru.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Facenapalm",
+ "Okras",
+ "Stjn"
+ ]
+ },
+ "apihelp-flowthank-description": "Отправка публичной благодарности за комментарий Flow.",
+ "apihelp-flowthank-summary": "Отправить публичную благодарность за комментарий Flow.",
+ "apihelp-flowthank-param-postid": "UUID сообщения, за который необходимо поблагодарить.",
+ "apihelp-flowthank-example-1": "Отправить благодарность за комментарий с <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Отправка редактору уведомления о благодарности.",
+ "apihelp-thank-summary": "Отправка редактору уведомления о благодарности.",
+ "apihelp-thank-param-rev": "ID версии, за которую требуется поблагодарить автора. Должно быть дано это или «log».",
+ "apihelp-thank-param-log": "ID журнала, за которую требуется поблагодарить автора. Должно быть дано это или «rev».",
+ "apihelp-thank-param-source": "Короткая строка, описывающая источник запроса, например, <kbd>diff</kbd> или <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "Отправить благодарность за версию с <kbd>ID 456</kbd>, в качестве источника указав страницу различий между версиями."
+}
diff --git a/Thanks/i18n/api/sah.json b/Thanks/i18n/api/sah.json
new file mode 100644
index 00000000..c65266e1
--- /dev/null
+++ b/Thanks/i18n/api/sah.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "HalanTul",
+ "София"
+ ]
+ },
+ "apihelp-flowthank-description": "Сэҥээрбитин иһин аһаҕастык махтаныы.",
+ "apihelp-flowthank-param-postid": "Махтаныллыахтаах сурук UUID нүөмэрэ.",
+ "apihelp-flowthank-example-1": "<kbd>UUID xyz789</kbd> ырытыы иһин махтаныы",
+ "apihelp-thank-description": "Эрэдээктэргэ махтаныы туһунан биллэр.",
+ "apihelp-thank-param-rev": "Ааптарыгар махтанаары гынар торумуҥ ID-та.",
+ "apihelp-thank-param-source": "Ыйытык төрүтүн ойуулуур кылгас устуруока, холобур <kbd>Diff</kbd> эбэтэр <kbd> История </kbd> .",
+ "apihelp-thank-example-1": "Торум иһин махтанарга торумнар ыккардыларыгар баар уратыны көрдөрөр сирэйгэ <kbd>ID 456</kbd> сигэнии."
+}
diff --git a/Thanks/i18n/api/scn.json b/Thanks/i18n/api/scn.json
new file mode 100644
index 00000000..b8867dd1
--- /dev/null
+++ b/Thanks/i18n/api/scn.json
@@ -0,0 +1,16 @@
+{
+ "@metadata": {
+ "authors": [
+ "Macofe",
+ "Pippinu",
+ "Sarvaturi"
+ ]
+ },
+ "apihelp-flowthank-description": "Manna na nutìfica di ringrazziamentu pùbblica pûn cummentu Flow.",
+ "apihelp-flowthank-param-postid": "L'UUID dû missaggiu pû quali si ringrazzia.",
+ "apihelp-flowthank-example-1": "Manna ringrazziamenti pû cummentu cu <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Manna na nutìfica di ringrazziamentu pûn cuntribbuturi.",
+ "apihelp-thank-param-rev": "L'ID dâ virsioni pâ quali si ringrazzia a quarchidunu.",
+ "apihelp-thank-param-source": "Na stringa curta chi discrivi la fonti di l'addumannata. P'esempiu, <kbd>diff</kbd> o <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "Manna ringrazziamenti pâ virsioni di <kbd>ID 456</kbd>, unni la fonti è na pàggina di cunfrontu tra virsioni"
+}
diff --git a/Thanks/i18n/api/sh.json b/Thanks/i18n/api/sh.json
new file mode 100644
index 00000000..7007992a
--- /dev/null
+++ b/Thanks/i18n/api/sh.json
@@ -0,0 +1,15 @@
+{
+ "@metadata": {
+ "authors": [
+ "Vlad5250"
+ ]
+ },
+ "apihelp-flowthank-description": "Pošaljite javnu obavijest o zahvali za komentar Ustrojnih raspravica.",
+ "apihelp-flowthank-summary": "Pošaljite javnu obavijest o zahvali za komentar Ustrojnih raspravica.",
+ "apihelp-flowthank-param-postid": "UUID objave za koju zahvaljujete.",
+ "apihelp-flowthank-example-1": "Pošalji zahvalu za komentar s <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Pošalji obavijest o zahvali uređivaču.",
+ "apihelp-thank-summary": "Pošalji obavijest o zahvali uređivaču.",
+ "apihelp-thank-param-rev": "Naznaka inačice za koju zahvaljujete. Mora da bude ukazano ovo ili „log“.",
+ "apihelp-thank-param-log": "Naznaka evidencije za koju nekomu hvalite. Mora da bude ukazano ovo ili „rev“."
+}
diff --git a/Thanks/i18n/api/sv.json b/Thanks/i18n/api/sv.json
new file mode 100644
index 00000000..6973bde8
--- /dev/null
+++ b/Thanks/i18n/api/sv.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Lokal Profil",
+ "Macofe",
+ "WikiPhoenix"
+ ]
+ },
+ "apihelp-flowthank-description": "Skicka ett tack-meddelande för en Flow-kommentar.",
+ "apihelp-flowthank-summary": "Skicka en offentlig tack-avisering för en Flow-kommentar.",
+ "apihelp-flowthank-param-postid": "UUID:et för det inlägg du vill tacka för.",
+ "apihelp-flowthank-example-1": "Skicka tack för kommentaren med <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Skicka ett tack till en redigerare.",
+ "apihelp-thank-summary": "Skicka ett tack-avisering till en redigerare.",
+ "apihelp-thank-param-rev": "Sidversionens ID att tacka någon för. Detta eller \"log\" måste anges.",
+ "apihelp-thank-param-log": "Logg-ID att tacka någon för. Detta eller \"rev\" måste anges.",
+ "apihelp-thank-param-source": "En kort sträng som beskriver källan för begäran, till exempel, <kbd>diff</kbd> eller <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "Skicka tack för version med <kbd>ID 456</kbd>, med en diff-sida som källa"
+}
diff --git a/Thanks/i18n/api/szy.json b/Thanks/i18n/api/szy.json
new file mode 100644
index 00000000..fb5dadae
--- /dev/null
+++ b/Thanks/i18n/api/szy.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Benel",
+ "Bunukwiki"
+ ]
+ },
+ "apihelp-flowthank-description": "pabahel pabinawlan a patakus nu mikukayay pabeli Flow a buhci tu kamuㄡ",
+ "apihelp-thank-description": "pasayza cacay a mikawaway-kalumyitiay pabahel kukay patakus."
+}
diff --git a/Thanks/i18n/api/tr.json b/Thanks/i18n/api/tr.json
new file mode 100644
index 00000000..0f2afe8d
--- /dev/null
+++ b/Thanks/i18n/api/tr.json
@@ -0,0 +1,17 @@
+{
+ "@metadata": {
+ "authors": [
+ "BaRaN6161 TURK"
+ ]
+ },
+ "apihelp-flowthank-description": "Flow yorumu herkese açık bir teşekkür bildirimi gönderin.",
+ "apihelp-flowthank-summary": "Flow yorumu herkese açık bir teşekkür bildirimi gönderin.",
+ "apihelp-flowthank-param-postid": "Yazının UUID'si için teşekkürü.",
+ "apihelp-flowthank-example-1": "<kbd>UUID xyz789</kbd> ile yapılan yorum için teşekkür et",
+ "apihelp-thank-description": "Bir editöre teşekkür mesajı gönderin.",
+ "apihelp-thank-summary": "Bir editöre teşekkür mesajı gönderin.",
+ "apihelp-thank-param-rev": "Birine teşekkür revizyon kimliği. Bu veya 'log' sağlanmalıdır.",
+ "apihelp-thank-param-log": "Birine teşekkür için revizyon kimliği. Bu veya 'log' sağlanmalıdır.",
+ "apihelp-thank-param-source": "İsteğin kaynağını tanımlayan kısa bir dize, örneğin <kbd>diff</kbd> veya <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "<kbd>ID 456</kbd> revizyonu için teşekkürü, kaynak farklı bir sayfadır."
+}
diff --git a/Thanks/i18n/api/uk.json b/Thanks/i18n/api/uk.json
new file mode 100644
index 00000000..155cde94
--- /dev/null
+++ b/Thanks/i18n/api/uk.json
@@ -0,0 +1,19 @@
+{
+ "@metadata": {
+ "authors": [
+ "Macofe",
+ "Piramidion",
+ "Ата"
+ ]
+ },
+ "apihelp-flowthank-description": "Надіслати публічне сповіщення про подяку за коментар Flow.",
+ "apihelp-flowthank-summary": "Надіслати публічне сповіщення про подяку за коментар Flow.",
+ "apihelp-flowthank-param-postid": "UUID допису, за який дякувати.",
+ "apihelp-flowthank-example-1": "Надіслати подяку за коментар з <kbd>UUID xyz789</kbd>",
+ "apihelp-thank-description": "Надіслати редактору сповіщення про подяку.",
+ "apihelp-thank-summary": "Надіслати редактору сповіщення про подяку.",
+ "apihelp-thank-param-rev": "Ідентифікатор версії, за яку комусь треба подякувати. Треба вказати або його, або 'log'.",
+ "apihelp-thank-param-log": "Ідентифікатор версії, за яку комусь треба подякувати. Треба вказати або його, або 'rev'.",
+ "apihelp-thank-param-source": "Короткий рядок опису джерела запиту, наприклад, <kbd>diff</kbd> або <kbd>history</kbd>.",
+ "apihelp-thank-example-1": "Надіслати подяку за версію <kbd>ID 456</kbd> зі сторінкою дифу як джерело"
+}
diff --git a/Thanks/i18n/api/vi.json b/Thanks/i18n/api/vi.json
new file mode 100644
index 00000000..afacf975
--- /dev/null
+++ b/Thanks/i18n/api/vi.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Minh Nguyen"
+ ]
+ },
+ "apihelp-flowthank-description": "Gửi lời cảm ơn công khai vì một bình luận Flow.",
+ "apihelp-thank-param-rev": "Số thay đổi để cảm ơn ai đó. Cần cung cấp số này hoặc “log”."
+}
diff --git a/Thanks/i18n/api/yi.json b/Thanks/i18n/api/yi.json
new file mode 100644
index 00000000..bc456f1b
--- /dev/null
+++ b/Thanks/i18n/api/yi.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "פוילישער"
+ ]
+ },
+ "apihelp-thank-description": "שיקן א ייש״כ־מודעה צו א רעדאקטאר."
+}
diff --git a/Thanks/i18n/api/zh-hans.json b/Thanks/i18n/api/zh-hans.json
new file mode 100644
index 00000000..af787ac3
--- /dev/null
+++ b/Thanks/i18n/api/zh-hans.json
@@ -0,0 +1,18 @@
+{
+ "@metadata": {
+ "authors": [
+ "Liuxinyu970226",
+ "Macofe"
+ ]
+ },
+ "apihelp-flowthank-description": "为一条Flow评论公开发送感谢通知。",
+ "apihelp-flowthank-summary": "为一条Flow评论公开发送感谢通知。",
+ "apihelp-flowthank-param-postid": "要感谢的帖子的UUID。",
+ "apihelp-flowthank-example-1": "为<kbd>UUID xyz789</kbd>的评论发送感谢",
+ "apihelp-thank-description": "向一名编辑者发送感谢通知。",
+ "apihelp-thank-summary": "向一名编辑者发送感谢通知。",
+ "apihelp-thank-param-rev": "要感谢某人的修订版本ID。必须提供此参数或“log”参数。",
+ "apihelp-thank-param-log": "要感谢某人的日志ID。必须提供此参数或“rev”参数。",
+ "apihelp-thank-param-source": "一个描述请求来源的短字符串,例如<kbd>diff</kbd>或<kbd>history</kbd>。",
+ "apihelp-thank-example-1": "为修订<kbd>ID 456</kbd>发送感谢,将差异页面作为来源"
+}
diff --git a/Thanks/i18n/api/zh-hant.json b/Thanks/i18n/api/zh-hant.json
new file mode 100644
index 00000000..1a520f92
--- /dev/null
+++ b/Thanks/i18n/api/zh-hant.json
@@ -0,0 +1,20 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bowleerin",
+ "Cwlin0416",
+ "Kly",
+ "Xiplus"
+ ]
+ },
+ "apihelp-flowthank-description": "傳送公開感謝通知給 Flow 的評論。",
+ "apihelp-flowthank-summary": "傳送公開感謝通知給 Flow 的評論。",
+ "apihelp-flowthank-param-postid": "要感謝的發佈內容 UUID。",
+ "apihelp-flowthank-example-1": "向對於 <kbd>UUID xyz789</kbd> 的評論發送感謝",
+ "apihelp-thank-description": "向一名編輯者傳送感謝通知。",
+ "apihelp-thank-summary": "向一名編輯者傳送感謝通知。",
+ "apihelp-thank-param-rev": "感謝某人的修訂ID。必須提供此參數或「log」參數。",
+ "apihelp-thank-param-log": "感謝某人的日誌ID。必須提供此參數或「rev」參數。",
+ "apihelp-thank-param-source": "描述請求來源的簡短字串,例如 <kbd>diff</kbd> 或 <kbd>history</kbd>。",
+ "apihelp-thank-example-1": "為修訂 <kbd>ID 456</kbd> 發送感謝,以差異頁面作為來源"
+}
diff --git a/Thanks/i18n/ar.json b/Thanks/i18n/ar.json
index 68a6aa41..787d4772 100644
--- a/Thanks/i18n/ar.json
+++ b/Thanks/i18n/ar.json
@@ -1,28 +1,32 @@
{
"@metadata": {
"authors": [
- "Asaifm",
- "ترجمان05",
- "زكريا",
- "مشعل الحربي",
+ "ASammour",
"Abanima",
- "Meno25",
- "محمد أحمد عبد الفتاح",
+ "Asaifm",
"Macofe",
"Maroen1990",
- "بدارين",
+ "Meno25",
"Shbib Al-Subaie",
+ "Super ninja2",
+ "أحمد",
+ "بدارين",
+ "ترجمان05",
"ديفيد",
+ "زكريا",
"علاء",
- "أحمد",
- "ASammour"
+ "محمد أحمد عبد الفتاح",
+ "مشعل الحربي"
]
},
- "thanks-desc": "تضيف روابط لشكر المستخدمين على التعديلات والتعليقات، إلخ.",
+ "thanks-desc": "تضيف وصلات لشكر المستخدمين على التعديلات والتعليقات، إلخ.",
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|شكر}}}}",
- "thanks-thanked": "{{GENDER:$1|{{GENDER:$2|شكر|شكرت}}}}",
+ "thanks-thanked": "{{GENDER:$1|{{GENDER:$2|تم الشكر}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|شكر}}}}",
- "thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|شكر|شكرت}}}}",
+ "thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|تم الشكر}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|يشكر|تشكر}}}}",
+ "thanks-button-action-cancel": "إلغاء",
+ "thanks-button-action-completed": "أنت {{GENDER:$1|{{GENDER:$2|شكرت}}}} $1",
"thanks-error-undefined": "فشل الشكر، (رمز العطل: $1) {{GENDER:|حاول|حاولي|حاولوا}} مجددًا.",
"thanks-error-invalid-log-id": "إدخال السجل غير موجود",
"thanks-error-invalid-log-type": "نوع السجل '$1' ليس في القائمة البيضاء لأنواع السجلات المسموح بها.",
@@ -38,17 +42,17 @@
"thanks-error-api-params": "يجب توفير معامل 'revid' أو 'logid'",
"thanks-thank-tooltip": "{{GENDER:$1|أرسل|أرسلي}} إشعار شكر ل{{GENDER:$2|هذا المستخدم|هذه المستخدمة}}",
"thanks-thank-tooltip-no": "{{GENDER:$1|ألغ|ألغي}} إخطار الشكر",
- "thanks-thank-tooltip-yes": "{{GENDER:$1|أرسل}} إخطار الشكر",
+ "thanks-thank-tooltip-yes": "{{GENDER:$1|أرسل|أرسلي}} إخطار الشكر",
"thanks-confirmation2": "{{GENDER:$1|إرسال}} شكر علانية؟",
"thanks-thanked-notice": "{{GENDER:$3|أنت}} شكرت {{GENDER:$2|$1}}.",
"thanks": "إرسال شكر",
- "thanks-submit": "أرسل الشكر",
+ "thanks-submit": "إرسال الشكر",
"echo-pref-subscription-edit-thank": "شكري على تعديلي",
"echo-pref-tooltip-edit-thank": "أخطرني عندما يشكرني أحدهم على تعديل قمت به.",
"echo-category-title-edit-thank": "شكر",
"notification-thanks-diff-link": "تعديلك",
"notification-header-rev-thank": "$1 شكر{{GENDER:$2||ت}}ك على {{GENDER:$4|تعديلك}} في <strong>$3</strong>.",
- "notification-header-creation-thank": "$1 {{GENDER:$2|شكر|شكرت}}{{GENDER:$4|ك}} على إنشائك لـ<strong>$3</strong>.",
+ "notification-header-creation-thank": "$1 {{GENDER:$2|شكر|شكرت}}{{GENDER:$4|ك}} على إنشائك <strong>$3</strong>.",
"notification-header-log-thank": "$1 {{GENDER:$2|شكر|شكرت}}{{GENDER:$4|ك}} لفعلك المرتبط ب<strong>$3</strong>.",
"notification-compact-header-edit-thank": "$1 {{GENDER:$2|شكر}}{{GENDER:$3|ك}}.",
"notification-bundle-header-rev-thank": "{{PLURAL:$1|شخص واحد|$1 شخص|100=99+ شخص}} {{GENDER:$3|شكرك}} على تعديلك في <strong>$2</strong>.",
@@ -58,25 +62,15 @@
"logentry-thanks-thank": "$1 {{GENDER:$2|شكر|شكرت}} {{GENDER:$4|$3}}",
"logeventslist-thanks-log": "سجل الشكر",
"thanks-error-no-id-specified": "يجب عليك تحديد معرِّف مراجعة أو سجل لإرسال الشكر.",
- "thanks-confirmation-special-log": "هل ترغب في إرسال شكري علنيا إلى إجراء السجل هذا؟",
+ "thanks-confirmation-special-log": "هل تريد أن ترسل علانية شكرا على فعل السجل هذا؟",
"thanks-confirmation-special-rev": "هل تريد أن ترسل علانية شكرا على هذا التعديل؟",
"notification-link-text-view-post": "أظهر التعليق",
"notification-link-text-view-logentry": "عرض مدخلة السجل",
"thanks-error-invalidpostid": "مُعرِّف الرسالة غير صحيح.",
- "flow-thanks-confirmation-special": "هل تريد إرسال شكر بشكل علني على هذا التعليق؟",
+ "flow-thanks-confirmation-special": "هل تريد أن ترسل علانية شكرا على هذا التعليق؟",
"flow-thanks-thanked-notice": "{{GENDER:$3|أنت}} شكرت $1 على {{GENDER:$2|تعليقه|تعليقها|تعليقهم}}.",
"notification-flow-thanks-post-link": "تعليقك",
"notification-header-flow-thank": "{{GENDER:$2|شكرك|شكرتك}} $1 {{GENDER:$5|لتعليقك}} على \"<strong>$3</strong>\".",
"notification-compact-header-flow-thank": "$1 {{GENDER:$2|شكر}}{{GENDER:$3|ك}}.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|شخص واحد|$1 شخص|100=99+ شخص}} {{GENDER:$3|شكرك}} على تعليقك في \"<strong>$2</strong>\".",
- "apihelp-flowthank-description": "أرسل إخطار شكر علني لتعليق Flow.",
- "apihelp-flowthank-summary": "أرسل إخطار شكر علني لتعليق Flow.",
- "apihelp-flowthank-param-postid": "UUID للمُداخلة للشكر عليها.",
- "apihelp-flowthank-example-1": "أرسل شكرا للتعليق مع <kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "أرسل إخطاراً بالشكر إلى محرر.",
- "apihelp-thank-summary": "أرسل إخطار بالشكر لمحرر.",
- "apihelp-thank-param-rev": "معرف المراجعة لشكر شخص ما عليه، يجب توفير هذا أو \"السجل\".",
- "apihelp-thank-param-log": "معرف السجل لشكر شخص ما عليه، يجب توفير هذا أو \"rev\".",
- "apihelp-thank-param-source": "نصّ قصير يصف مصدر الطلب، مثلا <kbd>diff</kbd> أو <kbd>history</kbd>.",
- "apihelp-thank-example-1": "أرسل الشكر للمراجعة <kbd>ID 456</kbd>، مع كون المصدر صفحة فرق"
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|شخص واحد|$1 شخص|100=99+ شخص}} {{GENDER:$3|شكرك}} على تعليقك في \"<strong>$2</strong>\"."
}
diff --git a/Thanks/i18n/ary.json b/Thanks/i18n/ary.json
new file mode 100644
index 00000000..7709aa25
--- /dev/null
+++ b/Thanks/i18n/ary.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "SADIQUI"
+ ]
+ },
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|شكر}}}}",
+ "thanks-thank-tooltip": "{{GENDER:$1|صيفط|صيفطي}} إشعار شكر ل{{GENDER:$2|هاد المستخدم|هاد المستخدمة}}"
+}
diff --git a/Thanks/i18n/as.json b/Thanks/i18n/as.json
index 6833bb64..489d0607 100644
--- a/Thanks/i18n/as.json
+++ b/Thanks/i18n/as.json
@@ -2,8 +2,9 @@
"@metadata": {
"authors": [
"Bishnu Saikia",
+ "Dibya Dutta",
"Gitartha.bordoloi",
- "Dibya Dutta"
+ "Simbu123"
]
},
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|ধন্যবাদ}}}}",
@@ -12,6 +13,7 @@
"thanks-confirmation2": "সকলো ধন্যবাদ ৰাজহুৱা। ধন্যবাদ {{GENDER:$1|জনাব}}?",
"thanks": "ধন্যবাদ জ্ঞাপন কৰক",
"thanks-submit": "ধন্যবাদ জ্ঞাপন কৰক",
+ "echo-category-title-edit-thank": "ধন্যবাদ",
"thanks-error-no-id-specified": "ধন্যবাদ পঠিয়াবলৈ আপুনি এটা সংশোধন বা লগ আই ডি উল্লেখ কৰিব লাগিব।",
"thanks-confirmation-special-rev": "আপুনি এই সম্পাদনাটোৰ বাবে ৰাজহুৱাকৈ ধন্যবাদ জ্ঞাপন কৰিব খুজিছে?",
"notification-link-text-view-post": "মন্তব্য দেখুৱাওক",
diff --git a/Thanks/i18n/ast.json b/Thanks/i18n/ast.json
index 409a7f19..8c79eaaa 100644
--- a/Thanks/i18n/ast.json
+++ b/Thanks/i18n/ast.json
@@ -1,8 +1,9 @@
{
"@metadata": {
"authors": [
- "Xuacu",
- "Macofe"
+ "Fitoschido",
+ "Macofe",
+ "Xuacu"
]
},
"thanks-desc": "Amiesta enllaces d'agradecimientu a usuarios por ediciones, comentarios, etc.",
@@ -10,6 +11,9 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|agradecíu|agradecida}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Agradecer}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Agradecíu|Agradecida}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Agradeciendo}}}} a $1…",
+ "thanks-button-action-cancel": "Encaboxar",
+ "thanks-button-action-completed": "{{GENDER:$1|{{GENDER:$2|Agradecisti}}}} a $1",
"thanks-error-undefined": "Falló l'aición d'agradecimientu (códigu d'error: $1). Vuelve a probar.",
"thanks-error-invalid-log-id": "Nun s'alcontró la entrada del rexistru",
"thanks-error-invalid-log-type": "El tipu de rexistru '$1' nun ta na llista blanca de tipos de rexistru permitíos.",
@@ -55,15 +59,5 @@
"notification-flow-thanks-post-link": "el so comentariu",
"notification-header-flow-thank": "$1 {{GENDER:$5|dióte}} les {{GENDER:$2|gracies}} pol to comentariu en «<strong>$3</strong>».",
"notification-compact-header-flow-thank": "$1 {{GENDER:$3|dióte}} les {{GENDER:$2|gracies}}.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|Una persona|$1 persones|100=99+ persones}} {{GENDER:$3|diéronte les gracies}} pol to comentariu en <strong>$2</strong>.",
- "apihelp-flowthank-description": "Unviar una notificación pública d'agradecimientu por un comentariu en Flow.",
- "apihelp-flowthank-summary": "Unviar una notificación pública d'agradecimientu por un comentariu en Flow.",
- "apihelp-flowthank-param-postid": "La UUID de la publicación qu'agradecer.",
- "apihelp-flowthank-example-1": "Unviar un agradecimientu pol comentariu con <kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "Unviar una notificación d'agradecimientu a un editor.",
- "apihelp-thank-summary": "Unviar una notificación d'agradecimientu a un editor.",
- "apihelp-thank-param-rev": "ID de la revisión pola que dar les gracies a dalguién. Tien de dase esto o 'log'.",
- "apihelp-thank-param-log": "ID del rexistru pol que dar les gracies a dalguién. Tien de dase esto o 'rev'.",
- "apihelp-thank-param-source": "Un testu curtiu que describa l'orixe de la solicitú. Por exemplu, <kbd>diff</kbd> o <kbd>history</kbd>.",
- "apihelp-thank-example-1": "Dar les gracies pola revisión con <kbd>ID 456</kbd>, siendo la fonte una páxina de diff"
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Una persona|$1 persones|100=99+ persones}} {{GENDER:$3|diéronte les gracies}} pol to comentariu en <strong>$2</strong>."
}
diff --git a/Thanks/i18n/avk.json b/Thanks/i18n/avk.json
new file mode 100644
index 00000000..ad71fc16
--- /dev/null
+++ b/Thanks/i18n/avk.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Axel xadolik"
+ ]
+ },
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|grewar}}}}",
+ "thanks-thank-tooltip": "{{GENDER:$1|Stakser}} va grewasa staksa pu ban {{GENDER:$2|webesik}}"
+}
diff --git a/Thanks/i18n/az.json b/Thanks/i18n/az.json
index ccb83ea6..2f27c5e6 100644
--- a/Thanks/i18n/az.json
+++ b/Thanks/i18n/az.json
@@ -1,12 +1,13 @@
{
"@metadata": {
"authors": [
+ "Archaeodontosaurus",
+ "Dağlı95",
"Interfase",
"Khan27",
- "Dağlı95",
- "Wertuose",
"Serkanland",
- "Archaeodontosaurus"
+ "Toghrul Rahimli",
+ "Wertuose"
]
},
"thanks-desc": "İstifadəçilərin redaktələrinə, şərhlərinə və s. görə minnətdarlıq üçün keçidləri əlavə edir",
@@ -14,12 +15,24 @@
"thanks-thanked": "{{GENDER:$1|təşəkkür edildi}}",
"thanks-button-thank": "{{GENDER:$1|Təşəkkür}}",
"thanks-button-thanked": "{{GENDER:$1|Təşəkkür edildi}}",
+ "thanks-button-action-queued": "$1 adlı istifadəçiyə {{GENDER:$1|{{GENDER:$2|təşəkkür edilir}}}}…",
+ "thanks-button-action-cancel": "İmtina",
+ "thanks-button-action-completed": "Siz $1 adlı istifadəçiyə {{GENDER:$1|{{GENDER:$2|təşəkkür }}}} etdiniz",
"thanks-error-undefined": "Təşəkkür bildirişinin göndərilməsi alınmadı. Xahiş edirik, yenidən cəhd edin.",
"thanks-thank-tooltip": "Bu {{GENDER:$2|istifadəçiyə}} təşəkkür bildirişi {{GENDER:$1|göndər}}.",
"thanks-confirmation2": "Bu dəyişiklik üçün təşəkkür göndərilsin?",
- "thanks-thanked-notice": "$1 etdiyi dəyişikliyə görə sizin təşəkkürünüzü aldı.",
- "thanks": "Təşəkkür et",
+ "thanks-thanked-notice": "{{GENDER:$3|Siz}} {{GENDER:$2|$1}} adlı istifadəçiyə təşəkkür etdiniz.",
+ "thanks": "Təşəkkür göndər",
+ "thanks-submit": "Təşəkkür göndər",
+ "echo-pref-tooltip-edit-thank": "Etdiyim redaktəyə görə təşəkkür edildikdə mənə bildiriş göndər.",
+ "echo-category-title-edit-thank": "Təşəkkürlər",
"notification-thanks-diff-link": "redaktəniz",
"notification-header-rev-thank": "$1 '''$3''' səhifəsindəki redaktənizə görə {{GENDER:$4|sizə}} {{GENDER:$2|təşəkkür etdi}}.",
- "logentry-thanks-thank": "$1 {{GENDER:$2}}, {{GENDER:$4|$3}} istifadəçisinə təşəkkür etdi."
+ "notification-header-creation-thank": "$1 <strong>$3</strong> səhifəsini yaratdığınıza görə sizə {{GENDER:$2|təşəkkür etdi}}.",
+ "notification-header-log-thank": "$1 <strong>$3</strong> səhifəsi ilə əlaqəli etdiyiniz fəaliyyətə görə {{GENDER:$4|sizə}} {{GENDER:$2|təşəkkür etdi}}.",
+ "notification-bundle-header-log-thank": "{{PLURAL:$1|$1 nəfər|$1 nəfər|$1 nəfər|100=99+ nəfər}} <strong>$2</strong> səhifəsi ilə əlaqəli etdiyiniz fəaliyyətə görə {{GENDER:$4|sizə}} təşəkkür etdi..",
+ "logentry-thanks-thank": "$1 {{GENDER:$2}}, {{GENDER:$4|$3}} istifadəçisinə təşəkkür etdi.",
+ "thanks-confirmation-special-log": "Bu fəaliyyət üçün təşəkkür göndərilsin?",
+ "thanks-confirmation-special-rev": "Bu redaktə üçün təşəkkür göndərilsin?",
+ "flow-thanks-confirmation-special": "Bu şərh üçün təşəkkür göndərilsin?"
}
diff --git a/Thanks/i18n/azb.json b/Thanks/i18n/azb.json
index 375f9498..72a8c10f 100644
--- a/Thanks/i18n/azb.json
+++ b/Thanks/i18n/azb.json
@@ -1,11 +1,11 @@
{
"@metadata": {
"authors": [
+ "Alp Er Tunqa",
"Amir a57",
- "Koroğlu",
- "Mousa",
"Ilğım",
- "Alp Er Tunqa"
+ "Koroğlu",
+ "Mousa"
]
},
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|تشکور}}}}",
@@ -16,9 +16,11 @@
"thanks-submit": "تشکّور ائت",
"echo-category-title-edit-thank": "تشکرلر",
"notification-header-rev-thank": "$1 '''$3''' صفحه‌سینده ائتدیگینیز دییشیک‌لیک اۆچون {{GENDER:$4|سیزدن}} {{GENDER:$2|تشکّور ائتدی}}.",
+ "notification-header-creation-thank": "$1 {{GENDER:$4|سیزدن}} <strong>$3</strong> -صفحه‌سینی یاراتماق اوچون {{GENDER:$2|تشکور ائتدی}}.",
"log-name-thanks": "تشکورلر ژورنالی",
"log-description-thanks": "بو، ایشلدنلرین بیر-بیریلریندن تشکور ائتمه لیستیدیر.",
"logentry-thanks-thank": "$1، {{GENDER:$4|$3}}-دن {{GENDER:$2|تشکور ائتدی}}",
+ "logeventslist-thanks-log": "تشکورلر ژورنالی",
"flow-thanks-thanked-notice": "$1 {{GENDER:$2|بو}} باخیشی اۆچون سیزدن تشکّور مساژی آلدی.",
"notification-header-flow-thank": "$1 {{GENDER:$5|سیزدن}} \"<strong>$3</strong>\"-ده ائتدیگینیز دییشیک‌لیک اۆچون {{GENDER:$2|تشکّور}} ائتدی."
}
diff --git a/Thanks/i18n/ba.json b/Thanks/i18n/ba.json
index 920730cc..71e27b8f 100644
--- a/Thanks/i18n/ba.json
+++ b/Thanks/i18n/ba.json
@@ -1,14 +1,14 @@
{
"@metadata": {
"authors": [
- "Рустам Нурыев",
"Sagan",
- "Янмурза Баки",
"Азат Хәлилов",
+ "Айсар",
"Гизатуллина",
- "Танзиля Кутлугильдина",
"Ләйсән",
- "Айсар"
+ "Рустам Нурыев",
+ "Танзиля Кутлугильдина",
+ "Янмурза Баки"
]
},
"thanks-desc": "Ҡатнашыусыларға мөхәррирләгәнгә рәхмәт әйтергә һ.б., һылтанмалар өҫтәй.",
@@ -39,12 +39,5 @@
"flow-thanks-confirmation-special": "Был төҙәтеү өсөн рәхмәт әйтергә теләйһегеҙме?",
"flow-thanks-thanked-notice": "{{GENDER:$3|Һеҙ}} $1 {{GENDER:$2|уның}} аңлатмаһы өсөн рәхмәт әйттегеҙ.",
"notification-flow-thanks-post-link": "Һеҙҙең комментарий.",
- "notification-header-flow-thank": "$1 {{GENDER:$5|һеҙгә}} \"<strong>$3</strong>\" комментарий өсөн {{GENDER:$2|рәхмәт әйтте}}.",
- "apihelp-flowthank-description": "Flow comment өсөн йәмәғәтселек алдында рәхмәт белдерергә",
- "apihelp-flowthank-param-postid": "Ҡотлау кәрәк булған, UUID хәбәрҙәр.",
- "apihelp-flowthank-example-1": "<kbd>UUID xyz789</kbd> комментарийға ҡотлау ебәрергә",
- "apihelp-thank-description": "Мөхәрриргә ҡотлау хәбәре ебәрергә.",
- "apihelp-thank-param-rev": "Авторға рәхмәт әйтергә кәрәк булған, ID версиялар.",
- "apihelp-thank-param-source": "Сығанаҡҡа һылтанған ҡыҫҡа юл, мәҫәлән <kbd>diff</kbd> йәки <kbd>history</kbd>.",
- "apihelp-thank-example-1": "Версияларҙың айырмаһын күрһәткән битте сығанаҡ итеп алып, <kbd>ID 456</kbd> версияһы өсөн ҡотларға."
+ "notification-header-flow-thank": "$1 {{GENDER:$5|һеҙгә}} \"<strong>$3</strong>\" комментарий өсөн {{GENDER:$2|рәхмәт әйтте}}."
}
diff --git a/Thanks/i18n/ban.json b/Thanks/i18n/ban.json
new file mode 100644
index 00000000..8fb5007b
--- /dev/null
+++ b/Thanks/i18n/ban.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Luh Gede Krismayanti",
+ "NoiX180"
+ ]
+ },
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|matur suksema}}}}",
+ "thanks-thank-tooltip": "\n{{GENDER:$1|Kirim}} atur piuning ngaturang suksma majeng ring {{GENDER:$2|pangawi}}"
+}
diff --git a/Thanks/i18n/bbc-latn.json b/Thanks/i18n/bbc-latn.json
new file mode 100644
index 00000000..dd5affee
--- /dev/null
+++ b/Thanks/i18n/bbc-latn.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Salomo Christian Hutajulu"
+ ]
+ },
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|marhamauliateon}}}}",
+ "thanks-thank-tooltip": "{{GENDER:$1|Tongos}} sada hamauliateon tu {{GENDER:$2|pamangke}} ni on"
+}
diff --git a/Thanks/i18n/be-tarask.json b/Thanks/i18n/be-tarask.json
index 1ec87798..3c55eac2 100644
--- a/Thanks/i18n/be-tarask.json
+++ b/Thanks/i18n/be-tarask.json
@@ -1,10 +1,10 @@
{
"@metadata": {
"authors": [
- "Renessaince",
- "Zedlik",
+ "Macofe",
"Red Winged Duck",
- "Macofe"
+ "Renessaince",
+ "Zedlik"
]
},
"thanks-desc": "Дадае спасылкі для падзякаў удзельнікам за праўкі, камэнтары і г. д.",
@@ -12,19 +12,53 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|падзякаваў}}|{{GENDER:$2|падзякавала}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Дзякуй}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Падзякаваў}}|{{GENDER:$2|Падзякавала}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Дзякуем}}}} $1…",
+ "thanks-button-action-cancel": "Скасаваць",
+ "thanks-button-action-completed": "Вы {{GENDER:$1|{{GENDER:$2|падзякавалі}}}} $1",
"thanks-error-undefined": "Не атрымалася падзякаваць (код памылкі: $1). Калі ласка, паспрабуйце яшчэ раз.",
+ "thanks-error-invalid-log-id": "Запіс журналу ня знойдзены",
+ "thanks-error-invalid-log-type": "Тып журналу «$1» адсутнічае ў белым сьпісе дазволеных.",
+ "thanks-error-log-deleted": "Запытаны запіс журналу быў выдалены, і за яго немагчыма падзякаваць.",
"thanks-error-invalidrevision": "Няслушны ідэнтыфікатар вэрсіі",
+ "thanks-error-revdeleted": "Немагчыма адаслаць падзяку, бо вэрсія была выдаленая.",
+ "thanks-error-notitle": "Немагчыма атрымаць назву старонкі",
+ "thanks-error-invalidrecipient": "Ня знойдзены дзейны атрымальнік",
+ "thanks-error-invalidrecipient-bot": "Робатам падзякаць немагчыма",
+ "thanks-error-invalidrecipient-self": "Самім сабе дзякаваць нельга",
+ "thanks-error-notloggedin": "Ананімныя ўдзельнікі ня могуць адсылаць падзякі",
"thanks-error-ratelimited": "{{GENDER:$1|Вы}} перавысілі абмежаваньне хуткасьці выкананьня. Калі ласка, пачакайце крыху і паўтарыце спробу.",
+ "thanks-error-api-params": "Мусіць быць пададзены адзін з парамэтраў «revid» ці «logid»",
"thanks-thank-tooltip": "{{GENDER:$1|Адаслаць}} {{GENDER:$2|гэтаму карыстальніку|гэтай карыстальніцы}} падзяку",
+ "thanks-thank-tooltip-no": "{{GENDER:$1|Скасаваць}} паведамленьне пра падзяку",
+ "thanks-thank-tooltip-yes": "{{GENDER:$1|Адаслаць}} паведамленьне пра падзяку",
"thanks-confirmation2": "Публічна {{GENDER:$1|даслаць}} падзяку?",
"thanks-thanked-notice": "{{GENDER:$3|Вы}} падзякавалі {{GENDER:$2|$1}}.",
"thanks": "Даслаць падзяку",
+ "thanks-submit": "Даслаць падзяку",
"echo-pref-subscription-edit-thank": "Дзякуе мне за маю праўку",
"echo-pref-tooltip-edit-thank": "Паведаміць мне, калі нехта дзякуе за мае праўкі.",
- "echo-category-title-edit-thank": "Дзякуй",
+ "echo-category-title-edit-thank": "Падзякі",
"notification-thanks-diff-link": "вашае рэдагаваньне",
"notification-header-rev-thank": "$1 {{GENDER:$2|падзякаваў|падзякавала}} {{GENDER:$4|вам}} за вашую праўку на старонцы <strong>$3</strong>.",
+ "notification-header-creation-thank": "$1 {{GENDER:$2|падзякаваў|падзякавала}} {{GENDER:$4|вам}} за стварэньне старонкі <strong>$3</strong>.",
+ "notification-header-log-thank": "$1 {{GENDER:$2|падзякаваў|падзякавала}} {{GENDER:$4|вам}} за дзеяньне на старонцы <strong>$3</strong>.",
+ "notification-compact-header-edit-thank": "$1 {{GENDER:$2|падзякаваў|падзякавала}} {{GENDER:$3|вам}}.",
+ "notification-bundle-header-rev-thank": "{{PLURAL:$1|Адна асоба падзякавала|$1 асобаў падзякавалі|100=>99 асобаў падзякавалі}} {{GENDER:$3|вам}} за рэдагаваньне старонкі <strong>$2</strong>.",
+ "notification-bundle-header-log-thank": "{{PLURAL:$1|Адна асоба падзякавала|$1 асобаў падзякавалі|100=>99 асобаў падзякавалі}} {{GENDER:$3|вам}} за дзеяньне на старонцы <strong>$2</strong>.",
"log-name-thanks": "Журнал падзякаў",
"log-description-thanks": "Ніжэй знаходзіцца сьпіс удзельнікаў, якія атрымалі падзякі.",
- "logentry-thanks-thank": "$1 {{GENDER:$2|падзякаваў|падзякавала}} {{GENDER:$4|удзельніку|удзельніцы}} $3"
+ "logentry-thanks-thank": "$1 {{GENDER:$2|падзякаваў|падзякавала}} {{GENDER:$4|удзельніку|удзельніцы}} $3",
+ "logeventslist-thanks-log": "Журнал падзякаў",
+ "thanks-error-no-id-specified": "Дзеля адсылкі падзякі неабходна пазначыць ID вэрсіі ці журналу.",
+ "thanks-confirmation-special-log": "Вы хочаце даслаць публічную падзяку за гэтае дзеяньне?",
+ "thanks-confirmation-special-rev": "Вы хочаце даслаць публічную падзяку за гэтую праўку?",
+ "notification-link-text-view-post": "Пабачыць камэнтар",
+ "notification-link-text-view-logentry": "Пабачыць запіс у журнале",
+ "thanks-error-invalidpostid": "Ідэнтыфікатар допісу памылковы.",
+ "flow-thanks-confirmation-special": "Вы хочаце даслаць публічную падзяку за гэты камэнтар?",
+ "flow-thanks-thanked-notice": "{{GENDER:$3|Вы}} падзякавалі $1 за {{GENDER:$2|ягоны|ейны|іхні}} камэнтар.",
+ "notification-flow-thanks-post-link": "выш камэнтар",
+ "notification-header-flow-thank": "$1 {{GENDER:$2|падзякаваў|падзякавала}} {{GENDER:$5|вам}} за камэнтар у «<strong>$3</strong>».",
+ "notification-compact-header-flow-thank": "$1 {{GENDER:$2|падзякаваў|падзякавала}} {{GENDER:$3|вам}}.",
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Адна асоба падзякавала|$1 асобаў падзякавалі|100=>99 асобаў падзякавалі}} {{GENDER:$3|вам}} за камэнтар на «<strong>$2</strong>»."
}
diff --git a/Thanks/i18n/be.json b/Thanks/i18n/be.json
index a3087ed4..05527127 100644
--- a/Thanks/i18n/be.json
+++ b/Thanks/i18n/be.json
@@ -1,12 +1,13 @@
{
"@metadata": {
"authors": [
- "Дзяніс Тутэйшы",
- "Чаховіч Уладзіслаў",
- "Mikalai Udodau",
+ "Artsiom91",
"Macofe",
+ "Maksim L.",
"Mechanizatar",
- "Artsiom91"
+ "Mikalai Udodau",
+ "Дзяніс Тутэйшы",
+ "Чаховіч Уладзіслаў"
]
},
"thanks-desc": "Дадае спасылкі для падзякаў удзельнікам за праўкі, каментары і г. д.",
@@ -15,7 +16,7 @@
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Дзякуй}}}}",
"thanks-button-thanked": "{{GENDER:$2|{{GENDER:$1|Падзякаваў|Падзякавала}}}}",
"thanks-error-undefined": "На атрымалася падзякаваць (код памылкі: $1). Паспрабуйце зноў.",
- "thanks-error-invalidrevision": "Некарэктны нумар версіі.",
+ "thanks-error-invalidrevision": "Недапушчальны нумар версіі.",
"thanks-error-ratelimited": "{{GENDER:$1|Вы}} перавысілі абмежаванне хуткасці выканання такіх дзеянняў. Калі ласка, пачакайце некаторы час і паспрабуйце зноў.",
"thanks-thank-tooltip": "{{GENDER:$1|Адправіць}} {{GENDER:$2|гэтаму ўдзельніку|гэтай удзельніцы}} паведамленне з падзякай",
"thanks-thanked-notice": "$1 {{GENDER:$2|быў абвешчаны|была абвешчана|былі абвешчаны}}, што Вы падзякавалі за {{GENDER:$2|яго|яе|іх}} праўка.",
@@ -24,8 +25,12 @@
"echo-category-title-edit-thank": "Дзякуй",
"notification-thanks-diff-link": "вашу праўку",
"notification-header-rev-thank": "$1 {{GENDER:$2|падзякаваў|падзякавала}} {{GENDER:$4|вам}} за вашу праўку на старонцы <strong>$3</strong>.",
+ "notification-header-creation-thank": "$1 {{GENDER:$2|падзякаваў|падзякавала}} {{GENDER:$4|вам}} за стварэнне старонкі <strong>$3</strong>.",
+ "notification-header-log-thank": "$1 {{GENDER:$2|падзякаваў|падзякавала}} {{GENDER:$4|Вам}} за дзеянне на старонцы <strong>$3</strong>.",
+ "notification-bundle-header-log-thank": "{{PLURAL:$1|$1 чалавек падзякаваў|$1 чалавекі падзякавалі|$1 чалавек падзякавала|100=99+ чалавек падзякавала}} {{GENDER:$3|Вам}} за дзеянне, якое адносіцца да старонцы «<strong>$2</strong>».",
"log-name-thanks": "Журнал падзяк",
"log-description-thanks": "Ніжэй прыведзены спіс удзельнікаў, якія атрымалі падзякі ад іншых удзельнікаў.",
"logentry-thanks-thank": "$1 {{GENDER:$2|падзякаваў удзель|падзякавала ўдзель}}{{GENDER:$4|ніку|ніцы}} $3",
+ "logeventslist-thanks-log": "Журнал падзяк",
"notification-header-flow-thank": "$1 {{GENDER:$2|падзякаваў|падзякавала}} {{GENDER:$5|вам}} за ваш каментарый у <strong>$3</strong>."
}
diff --git a/Thanks/i18n/bg.json b/Thanks/i18n/bg.json
index e2e675f2..5d62d6c8 100644
--- a/Thanks/i18n/bg.json
+++ b/Thanks/i18n/bg.json
@@ -1,21 +1,42 @@
{
"@metadata": {
"authors": [
+ "Borislav",
"DCLXVI",
- "Termininja",
+ "ShockD",
"Spiritia",
- "Borislav",
"StanProg",
- "Vodnokon4e",
+ "Ted Masters",
+ "Termininja",
"V111P",
- "ShockD"
+ "Vlad5250",
+ "Vodnokon4e"
]
},
+ "thanks-desc": "Добавя препратки за благодарност на потребители за редакции, коментари и т.н.",
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|благодарност}}}}",
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|изказана благодарност}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Благодарност}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Изказана благодарност}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Благодарност към}}}} $1…",
+ "thanks-button-action-cancel": "Отказ",
+ "thanks-button-action-completed": "{{GENDER:$1|{{GENDER:$2|Изказахте благодарност на}}}} $1",
+ "thanks-error-undefined": "Изказването на благодарност се провали (код на грешката: $1). Моля, опитайте отново.",
+ "thanks-error-invalid-log-id": "Записът в дневника не беше открит",
+ "thanks-error-invalid-log-type": "Вид на дневника „$1 не е в списъка на позволените дневници.",
+ "thanks-error-log-deleted": "Заявеният запис от дневника е бил изтрит и следователно за него не може да се изпрати благодарност.",
+ "thanks-error-invalidrevision": "Невалиден номер на версия.",
+ "thanks-error-revdeleted": "Неуспешно изпращане на благодарност, поради изтрита версия.",
+ "thanks-error-notitle": "Заглавието на страницата не може да бъде получено",
+ "thanks-error-invalidrecipient": "Не е намерен валиден получател",
+ "thanks-error-invalidrecipient-bot": "На ботове не може да се благодари",
+ "thanks-error-invalidrecipient-self": "Не може да благодарите на себе си",
+ "thanks-error-notloggedin": "Анонимни потребители не могат да изпращат благодарности",
+ "thanks-error-ratelimited": "{{GENDER:$1|Превишили сте}} лимита си за благодарности. Моля, изчакайте известно време и опитайте пак.",
+ "thanks-error-api-params": "Трябва да установите параметър 'revid' или 'logid'",
"thanks-thank-tooltip": "С препратката „благодарност“ можете да {{GENDER:$1|изкажете}} на {{GENDER:$2|този потребител|тази потребителка|този потребител}} благодарност за редакцията.",
+ "thanks-thank-tooltip-no": "{{GENDER:$1|Отказ}} на известието за благодарност",
+ "thanks-thank-tooltip-yes": "{{GENDER:$1|Изпращане}} на известие за благодарност",
"thanks-confirmation2": "{{GENDER:$1|Ще изпратите ли}} благодарност публично?",
"thanks-thanked-notice": "{{GENDER:$3|Вие}} благодарихте на {{GENDER:$2|$1}}.",
"thanks": "Изпращане на благодарност",
@@ -25,15 +46,25 @@
"echo-category-title-edit-thank": "Благодарност",
"notification-thanks-diff-link": "вашата редакция",
"notification-header-rev-thank": "$1 {{GENDER:$4|Ви}} {{GENDER:$2|благодари}} за вашата редакция на <strong>$3</strong>.",
+ "notification-header-creation-thank": "$1 {{GENDER:$4|Ви}} {{GENDER:$2|благодари}} за създадената от Вас <strong>$3</strong>.",
"notification-header-log-thank": "$1 {{GENDER:$4|Ви}} {{GENDER:$2|благодари}} за действието свързано с <strong>$3</strong>.",
+ "notification-compact-header-edit-thank": "$1 {{GENDER:$3|Ви}} {{GENDER:$2|благодари}}.",
+ "notification-bundle-header-rev-thank": "{{PLURAL:$1|Един участник Ви благодари|$1 участника Ви благодариха|100=99+ участника Ви благодариха}} за {{GENDER:$3|}} редакцията на <strong>$2</strong>.",
"notification-bundle-header-log-thank": "{{PLURAL:$1|Един човек Ви благодари|$1 души {{GENDER:$3|Ви}} благодарят|100=над 99 души Ви благодарят}} за действието ви в <strong>$2</strong>.",
"log-name-thanks": "Дневник на благодарностите",
"log-description-thanks": "По-долу е показан списък с потребители, получили благодарност от други потребители.",
"logentry-thanks-thank": "$1 {{GENDER:$2|изпрати благодарност на}} {{GENDER:$4|$3}}",
"logeventslist-thanks-log": "Дневник на благодарностите",
+ "thanks-error-no-id-specified": "Трябва да укажете версия или номер на запис в дневника, за да изпратите благодарност.",
+ "thanks-confirmation-special-log": "Искате ли публично да благодарите за това действие в дневника?",
"thanks-confirmation-special-rev": "Искате ли да благодарите публично за тази редакция?",
"notification-link-text-view-post": "Виж коментар",
+ "notification-link-text-view-logentry": "Преглед на запис от дневника",
+ "thanks-error-invalidpostid": "Невалиден номер на страница.",
"flow-thanks-confirmation-special": "Искате ли публично да благодарите за този коментар?",
+ "flow-thanks-thanked-notice": "{{GENDER:$3|Вие}} благодарихте на $1 за коментара {{GENDER:$2|му|ѝ|им}}.",
+ "notification-flow-thanks-post-link": "вашия коментар",
"notification-header-flow-thank": "$1 {{GENDER:$5|ви}} {{GENDER:$2|благодари}} за коментара в „<strong>$3</strong>“.",
- "notification-compact-header-flow-thank": "$1 {{GENDER:$3|Ви}} {{GENDER:$2|благодари}}."
+ "notification-compact-header-flow-thank": "$1 {{GENDER:$3|Ви}} {{GENDER:$2|благодари}}.",
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Един участник Ви благодари|$1 участника Ви благодариха|100=99+ участника Ви благодариха}} за {{GENDER:$3|}} коментара в „<strong>$2</strong>“."
}
diff --git a/Thanks/i18n/bjn.json b/Thanks/i18n/bjn.json
new file mode 100644
index 00000000..c808cb98
--- /dev/null
+++ b/Thanks/i18n/bjn.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ezagren"
+ ]
+ },
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|batarima kasih}}}}",
+ "thanks-thank-tooltip": "{{GENDER:$1|Kirim}} sabuting pamadahan tarima kasih ka {{GENDER:$2|pamakai}} ngini"
+}
diff --git a/Thanks/i18n/bn.json b/Thanks/i18n/bn.json
index 004f5e60..a6c3ff18 100644
--- a/Thanks/i18n/bn.json
+++ b/Thanks/i18n/bn.json
@@ -2,13 +2,13 @@
"@metadata": {
"authors": [
"Aftab1995",
- "Bellayet",
- "Nasir8891",
"Aftabuzzaman",
- "Macofe",
+ "Bellayet",
"Bodhisattwa",
- "আজিজ",
"Elias Ahmmad",
+ "Macofe",
+ "Nasir8891",
+ "আজিজ",
"আফতাবুজ্জামান"
]
},
@@ -17,6 +17,9 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|ধন্যবাদ জানিয়েছেন}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|ধন্যবাদ}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|ধন্যবাদ জানিয়েছেন}}}}",
+ "thanks-button-action-queued": "$1 কে {{GENDER:$1|{{GENDER:$2|ধন্যবাদ জানানো হচ্ছে}}}}…",
+ "thanks-button-action-cancel": "বাতিল করুন",
+ "thanks-button-action-completed": "আপনি $1 কে {{GENDER:$1|{{GENDER:$2|ধন্যবাদ জানিয়েছেন}}}}",
"thanks-error-undefined": "ধন্যবাদ পদক্ষেপ ব্যর্থ (ত্রুটি কোড: $1)। অনুগ্রহ করে আবার চেষ্টা করুন।",
"thanks-error-invalid-log-id": "লগের ভুক্তি পাওয়া যায়নি",
"thanks-error-log-deleted": "অনুরোধ করা লগের ভুক্তি মুছে ফেলা হয়েছে এবং এটির জন্য ধন্যবাদ দেওয়া যাবে না।",
@@ -26,10 +29,10 @@
"thanks-error-invalidrecipient": "কোন বৈধ প্রাপক পাওয়া যায়নি",
"thanks-error-invalidrecipient-bot": "বটকে ধন্যবাদ দেয়া যাবে না",
"thanks-error-invalidrecipient-self": "আপনি নিজেকে নিজে ধন্যবাদ দিতে পারবেন না",
- "thanks-error-notloggedin": "বেনামী ব্যবহারকারীগণ ধন্যবাদ পাঠাতে পারবেন না",
+ "thanks-error-notloggedin": "বেনামী ব্যবহারকারীগণ ধন্যবাদ পাঠাতে পারবে না",
"thanks-error-ratelimited": "{{GENDER:$1|আপনি}} আপনার সর্বোচ্চ সীমা অতিক্রম করেছেন। অনুগ্রহ করে অপেক্ষা করুন এবং পুনরায় চেষ্টা করুন।",
"thanks-thank-tooltip": "এই {{GENDER:$2|ব্যবহারকারীকে}} ধন্যবাদ বিজ্ঞপ্তি {{GENDER:$1|পাঠান}}",
- "thanks-thank-tooltip-no": "আপনাকে ধন্যবাদ বিজ্ঞপ্তি {{GENDER:$1|বাতিল করুন}}",
+ "thanks-thank-tooltip-no": "ধন্যবাদ বিজ্ঞপ্তি {{GENDER:$1|বাতিল করুন}}",
"thanks-thank-tooltip-yes": "ধন্যবাদের বিজ্ঞপ্তি {{GENDER:$1|পাঠান}}",
"thanks-confirmation2": "প্রকাশ্য ধন্যবাদ {{GENDER:$1|দিবেন}}?",
"thanks-thanked-notice": "{{GENDER:$3|আপনি}} {{GENDER:$2|$1}} কে ধন্যবাদ দিয়েছেন।",
@@ -40,6 +43,7 @@
"echo-category-title-edit-thank": "ধন্যবাদসমূহ",
"notification-thanks-diff-link": "আপনার সম্পাদনা",
"notification-header-rev-thank": "$1 <strong>$3</strong>-এ আপনার সম্পাদনার জন্য {{GENDER:$4|আপনাকে}} {{GENDER:$2|ধন্যবাদ জানিয়েছেন}}।",
+ "notification-header-creation-thank": "$1 <strong>$3</strong> পাতাটি সৃষ্টির জন্য {{GENDER:$4|আপনাকে}} {{GENDER:$2|ধন্যবাদ জানিয়েছেন}}।",
"notification-header-log-thank": "<strong>$3</strong> সম্পর্কিত কর্মের জন্য $1 {{GENDER:$4|আপনাকে}} {{GENDER:$2|ধন্যবাদ জানিয়েছেন}}।",
"notification-compact-header-edit-thank": "$1 {{GENDER:$3|আপনাকে}} {{GENDER:$2|ধন্যবাদ দিয়েছেন}}।",
"notification-bundle-header-rev-thank": "<strong>$2</strong>-এ আপনার সম্পাদনার জন্য {{PLURAL:$1|একজন ব্যক্তি|$1 জন ব্যক্তি|100=৯৯+ জন ব্যক্তি}} {{GENDER:$3|আপনাকে}} ধন্যবাদ জানিয়েছেন।",
@@ -59,9 +63,5 @@
"notification-flow-thanks-post-link": "আপনার মন্তব্য",
"notification-header-flow-thank": "<strong>$3</strong>-এ আপনার মন্তব্যের জন্য $1 {{GENDER:$5|আপনাকে}} {{GENDER:$2|ধন্যবাদ}} জানিয়েছেন।",
"notification-compact-header-flow-thank": "$1 {{GENDER:$3|আপনাকে}} {{GENDER:$2|ধন্যবাদ দিয়েছেন}}।",
- "notification-bundle-header-flow-thank": "\"<strong>$2</strong>\"-এ আপনার মন্তব্যের জন্য {{PLURAL:$1|একজন ব্যক্তি|$1 জন ব্যক্তি|100=৯৯+ জন ব্যক্তি}} {{GENDER:$3|আপনাকে}} ধন্যবাদ জানিয়েছেন।",
- "apihelp-flowthank-description": "একটি ফ্লো মন্তব্যের জন্য একটি প্রকাশ্য আপনাকে-ধন্যবাদ বিজ্ঞপ্তি পাঠায়।",
- "apihelp-flowthank-summary": "একটি ফ্লো মন্তব্যের জন্য একটি প্রকাশ্য আপনাকে-ধন্যবাদ বিজ্ঞপ্তি পাঠায়।",
- "apihelp-flowthank-example-1": "মন্তব্যের জন্য <kbd>UUID xyz789</kbd> সহ ধন্যবাদ পাঠান",
- "apihelp-thank-description": "একজন সম্পাদককে ধন্যবাদ বিজ্ঞপ্তি পাঠান।"
+ "notification-bundle-header-flow-thank": "\"<strong>$2</strong>\"-এ আপনার মন্তব্যের জন্য {{PLURAL:$1|একজন ব্যক্তি|$1 জন ব্যক্তি|100=৯৯+ জন ব্যক্তি}} {{GENDER:$3|আপনাকে}} ধন্যবাদ জানিয়েছেন।"
}
diff --git a/Thanks/i18n/bqi.json b/Thanks/i18n/bqi.json
index 0c7bdd3f..a4be719a 100644
--- a/Thanks/i18n/bqi.json
+++ b/Thanks/i18n/bqi.json
@@ -1,9 +1,23 @@
{
"@metadata": {
"authors": [
+ "Kikumoron",
"Mogoeilor"
]
},
- "thanks-thank": "{{GENDER:$1|{{GENDER:$2|مأنمۈن}}}}",
- "thanks-thank-tooltip": "{{GENDER:$1|کل کرد}} یه گل منمونداری وارسیارکن سی ای {{GENDER:$2|کارور}}"
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|مٱنمۊن}}}}",
+ "thanks-button-action-cancel": "ٱنجومشیڤ کردن",
+ "thanks-error-invalid-log-id": "پهرستنوماْ ٱڤوڌن ڤامیٛن دیاری نکرد.",
+ "thanks-error-invalidrecipient-self": "ایسا نٱترین مٱنموندار خوتوݩ بۊین",
+ "thanks-error-notloggedin": "کاریارٱل نادیار نٱترن مٱنموندار بۊݩ",
+ "thanks-thank-tooltip": "{{GENDER:$1|بیٛسی کرد}} یٱ مٱنمونداری سی ڤارسیاری ایسا سی ای {{GENDER:$2|کاریار}}",
+ "thanks": "بیٛسی کردن مٱنمونداری",
+ "thanks-submit": "بیٛسی کردن مٱنمونداری",
+ "echo-category-title-edit-thank": "مٱنمۊنداریم!",
+ "notification-thanks-diff-link": "آلشدکاری ایسا",
+ "log-name-thanks": "پهرستنوماْ مٱنمونداری",
+ "logeventslist-thanks-log": "پهرستنوماْ مٱنمونداری",
+ "notification-link-text-view-post": "دیڌن ڤیر و باڤٱر",
+ "thanks-error-invalidpostid": "نشوݩ دیارکون فریشنار لیشاْ",
+ "notification-flow-thanks-post-link": "ڤیر و باڤٱر ایسا"
}
diff --git a/Thanks/i18n/br.json b/Thanks/i18n/br.json
index d16d1fc1..1cf79dca 100644
--- a/Thanks/i18n/br.json
+++ b/Thanks/i18n/br.json
@@ -1,11 +1,11 @@
{
"@metadata": {
"authors": [
- "VIGNERON",
- "Y-M D",
+ "Fulup",
"Gwenn-Ael",
"Pymouss",
- "Fulup"
+ "VIGNERON",
+ "Y-M D"
]
},
"thanks-desc": "Ouzhpenn trugarez liammoù en istor ha dif.",
@@ -19,6 +19,6 @@
"thanks-confirmation2": "{{GENDER:$1|Trugarekaat}} evit ar c'hemm-mañ ?",
"echo-category-title-edit-thank": "Trugarez",
"notification-thanks-diff-link": "ho kemm",
- "notification-header-rev-thank": "$1 {{GENDER:$2|en deus|he deus}} trugarekaet deoc'h evit ho kemmadenn war <strong>$3</strong>.",
+ "notification-header-rev-thank": "$1 a drugareka ac'hanoc'h evit ho kemm war <strong>$3</strong>.",
"logentry-thanks-thank": "$1 {{GENDER:$2|en deus|he deus}} trugarekaet {{GENDER:$4|$3}}"
}
diff --git a/Thanks/i18n/bs.json b/Thanks/i18n/bs.json
index 91d9a883..8ac657e8 100644
--- a/Thanks/i18n/bs.json
+++ b/Thanks/i18n/bs.json
@@ -4,8 +4,8 @@
"DzWiki",
"Edinwiki",
"KWiki",
- "Srdjan m",
- "Macofe"
+ "Macofe",
+ "Srdjan m"
]
},
"thanks-desc": "Dodaje mogućnost zahvaljivanja korisnicima za izmjene, komentare, itd.",
@@ -36,6 +36,7 @@
"log-name-thanks": "Zapisnik zahvalnica",
"log-description-thanks": "Ispod se nalazi spisak korisnika kojima su se drugi korisnici zahvalili.",
"logentry-thanks-thank": "$1 {{GENDER:$2|zahvalio|zahvalila}} se {{GENDER:$4|korisniku|korisnici}} {{GENDER:$4|$3}}",
+ "logeventslist-thanks-log": "Zapisnik zahvalnica",
"thanks-error-no-id-specified": "Morate navesti ID izmjene za koju se želite zahvaliti.",
"notification-link-text-view-post": "Pogledaj komentar",
"thanks-error-invalidpostid": "ID objave nije ispravan.",
diff --git a/Thanks/i18n/ca.json b/Thanks/i18n/ca.json
index fc0c7b54..65ad70c3 100644
--- a/Thanks/i18n/ca.json
+++ b/Thanks/i18n/ca.json
@@ -1,15 +1,15 @@
{
"@metadata": {
"authors": [
- "QuimGil",
- "Vriullop",
- "Pere prlpz",
+ "F3RaN",
+ "Fitoschido",
"KRLS",
- "Paucabot",
"Macofe",
- "F3RaN",
+ "Paucabot",
+ "Pere prlpz",
+ "QuimGil",
"Ssola",
- "Fitoschido"
+ "Vriullop"
]
},
"thanks-desc": "Afegeix enllaços per agrair els editors per les seves edicions, comentaris, etc.",
@@ -51,14 +51,5 @@
"notification-flow-thanks-post-link": "el vostre comentari",
"notification-header-flow-thank": "$1 {{GENDER:$5|us}} {{GENDER:$2|agraeix}} el comentari a «<strong>$3</strong>».",
"notification-compact-header-flow-thank": "$1 {{GENDER:$3|us}} {{GENDER:$2|ha agraït}}.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|Una persona|$1 persones|100=Més de 100 persones}} {{GENDER:$3|us}} {{PLURAL:$1|ha|han}} agraït el comentari a «<strong>$2</strong>».",
- "apihelp-flowthank-description": "Envia una notificació pública d'agraïment per un comentari de Flow.",
- "apihelp-flowthank-summary": "Envia una notificació pública d'agraïment per un comentari de Flow.",
- "apihelp-flowthank-param-postid": "La UUID de l'apunt a agrair.",
- "apihelp-flowthank-example-1": "Enviar un agraïment pel comentari amb <kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "Envia una notificació d'agraïment a un editor.",
- "apihelp-thank-summary": "Envia una notificació d'agraïment a un editor.",
- "apihelp-thank-param-rev": "Revisió ID per agrair a algú.",
- "apihelp-thank-param-source": "Un breu comentari que descrigui l'origen de la petició, per exemple <kbd>diff</kbd> o <kbd>historial</kbd>.",
- "apihelp-thank-example-1": "Doneu les gràcies per la revisió <kbd>ID 456</kbd>, i que la font sigui un diff de la pàgina"
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Una persona|$1 persones|100=Més de 100 persones}} {{GENDER:$3|us}} {{PLURAL:$1|ha|han}} agraït el comentari a «<strong>$2</strong>»."
}
diff --git a/Thanks/i18n/cdo.json b/Thanks/i18n/cdo.json
index 2a451502..da9b3932 100644
--- a/Thanks/i18n/cdo.json
+++ b/Thanks/i18n/cdo.json
@@ -1,8 +1,8 @@
{
"@metadata": {
"authors": [
- "Yejianfei",
- "Davidzdh"
+ "Davidzdh",
+ "Yejianfei"
]
},
"thanks-desc": "添加鏈接來感謝編輯、評論其用戶",
diff --git a/Thanks/i18n/ce.json b/Thanks/i18n/ce.json
index b233b66d..1d076907 100644
--- a/Thanks/i18n/ce.json
+++ b/Thanks/i18n/ce.json
@@ -1,8 +1,8 @@
{
"@metadata": {
"authors": [
- "Умар",
- "Исмаил Садуев"
+ "Исмаил Садуев",
+ "Умар"
]
},
"thanks-desc": "Истори чу а версин башхала хьожечухь а баркалла олу хьажоргаш тӀетуху",
@@ -23,17 +23,15 @@
"echo-category-title-edit-thank": "Баркалла",
"notification-thanks-diff-link": "нисдар",
"notification-header-rev-thank": "$1 {{GENDER:$2|хьуна}} {{GENDER:$4|баркалла аьлла}} $3 хӀара агӀо таярна.",
+ "notification-header-creation-thank": "$1 {{GENDER:$4|хьуна}} {{GENDER:$2|баркалла аьлла}} <strong>$3</strong> агӀо кхолларна.",
"log-name-thanks": "Баркаллийн тептар",
"log-description-thanks": "Кхечу декъашхоша баркалла аьлла болу декъашхой чохь болу тептар.",
"logentry-thanks-thank": "{{GENDER:$4|декъашхочуна}} $3 $1 {{GENDER:$2|баркалла аьла}}",
+ "logeventslist-thanks-log": "Баркаллийн тептар",
"thanks-error-no-id-specified": "Баркалла дӀадахьийта нисдаран ID билгаляккха еза.",
"notification-link-text-view-post": "Хьажа къамеле",
"thanks-error-invalidpostid": "Хааман магийна доцу ID.",
"flow-thanks-confirmation-special": "Лаьий хьуна баркалла ала?",
"flow-thanks-thanked-notice": "$1 {{GENDER:$2|хаам бина}}, хьуна {{GENDER:$2|цуна|цера}} къамел хаза хетта аьлла.",
- "notification-flow-thanks-post-link": "хьан коммент",
- "apihelp-flowthank-param-postid": "Баркалла ала деза UUID хаам.",
- "apihelp-thank-description": "Тадархочуна дӀахаийта баркаллах лаьцна.",
- "apihelp-thank-param-rev": "Авторан баркалла ала деза ID верси.",
- "apihelp-thank-example-1": "<kbd>ID 456</kbd> верси нисъярна баркалла дӀадахьийта, версийн башхалла гойтуш йолу хьажорг цани."
+ "notification-flow-thanks-post-link": "хьан коммент"
}
diff --git a/Thanks/i18n/ckb.json b/Thanks/i18n/ckb.json
index 821836a3..bc46d042 100644
--- a/Thanks/i18n/ckb.json
+++ b/Thanks/i18n/ckb.json
@@ -1,10 +1,11 @@
{
"@metadata": {
"authors": [
- "Calak",
"Asoxor",
+ "Calak",
"Macofe",
- "Épine"
+ "Épine",
+ "ئارام بکر"
]
},
"thanks-desc": "ھەندێک بەستەر زیاد دەکات بۆ سپاس کردنی بەکارھێنەران بۆ دەستکارییەکان، بۆچوونەکان و ھتد.",
@@ -12,6 +13,7 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|سپاسی لێ کرا}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|سپاس بکە}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|سپاسی لێ کرا}}}}",
+ "thanks-button-action-cancel": "ھەڵوەشاندنەوە",
"thanks-error-undefined": "سپاسکردن سەرکەوتوو نەبوو. تکایە دیسان ھەوڵ بدەوە.",
"thanks-error-invalidrevision": "پێداچوونەوەی پێناسە نادروستە.",
"thanks-error-ratelimited": "{{GENDER:$1|تۆ}} زیاتر لە سنووری خێرایی چووی. تکایە ھەندێک ڕاوەستە و دیسان ھەوڵ بدەوە.",
@@ -27,13 +29,17 @@
"echo-category-title-edit-thank": "سپاس",
"notification-thanks-diff-link": "دەستکارییەکەت",
"notification-header-rev-thank": "$1 {{GENDER:$2|سپاسی}} {{GENDER:$4|کردی}} بۆ دەستکارییەکەت لە '''$3''' دا.",
+ "notification-header-creation-thank": "$1 لەبەر دروستکردنی <strong>$3</strong> سوپاسی کردیت.",
"notification-header-log-thank": "$1 سپاسی کردیت بۆ کردارەکەت لەسەر <strong>$3</strong>.",
+ "notification-bundle-header-rev-thank": "$1 کەس سوپاسیان کردیت بۆ دەستکارییەکەت لە <strong>$2</strong>دا.",
"log-name-thanks": "لۆگی سپاس",
"log-description-thanks": "ژێرەوە پێرستێکی لەو بەکارھێنەرانەن کە لە لایەن بەکارھێنەرانی ترەوە سپاسیان لێ کراوە.",
"logentry-thanks-thank": "$1 {{GENDER:$2|سپاسی کرد}} لە {{GENDER:$4|$3}}",
+ "logeventslist-thanks-log": "لۆگی سپاس",
"notification-link-text-view-post": "بۆچوون ببینە",
"flow-thanks-confirmation-special": "دەتھەوێت بەئاشکرایی سپاسی ئەم بۆچوونە بکەیت؟",
"flow-thanks-thanked-notice": "$1 سپاسەکەتی وەرگرت لەبەر بۆچوونەکە{{GENDER:$2|ی|ی|ی}}.",
"notification-flow-thanks-post-link": "بۆچوونەکەت",
- "notification-header-flow-thank": "$1 {{GENDER:$5|سپاسی}} {{GENDER:$2|کردی}} بۆ بۆچوونەکەت لە '''$3'''ی '''$4'''دا."
+ "notification-header-flow-thank": "$1 {{GENDER:$5|سپاسی}} {{GENDER:$2|کردی}} بۆ بۆچوونەکەت لە '''$3'''ی '''$4'''دا.",
+ "notification-bundle-header-flow-thank": "$1 کەس سوپاسیان کردیت بۆ لێدوانەکەت لە «<strong>$2</strong>»دا."
}
diff --git a/Thanks/i18n/cnr-latn.json b/Thanks/i18n/cnr-latn.json
new file mode 100644
index 00000000..edff2b56
--- /dev/null
+++ b/Thanks/i18n/cnr-latn.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Bellatrix10"
+ ]
+ },
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|zahvalnica}}}}",
+ "thanks-thank-tooltip": "{{GENDER:$1|Pošalji}} zahvalnicu {{GENDER:$2|ovom saradniku|ovoj saradnici}}"
+}
diff --git a/Thanks/i18n/co.json b/Thanks/i18n/co.json
new file mode 100644
index 00000000..7893bb3f
--- /dev/null
+++ b/Thanks/i18n/co.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jun Misugi"
+ ]
+ },
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|ringrazià}}}}"
+}
diff --git a/Thanks/i18n/cs.json b/Thanks/i18n/cs.json
index 8fb405c8..ee539cad 100644
--- a/Thanks/i18n/cs.json
+++ b/Thanks/i18n/cs.json
@@ -1,14 +1,15 @@
{
"@metadata": {
"authors": [
- "Littledogboy",
- "Mormegil",
- "Matěj Suchánek",
- "Macofe",
"Dvorapa",
- "Tchoř",
"Ilimanaq29",
- "Martin Urbanec"
+ "Littledogboy",
+ "Macofe",
+ "Martin Urbanec",
+ "Matěj Suchánek",
+ "Mormegil",
+ "Patriccck",
+ "Tchoř"
]
},
"thanks-desc": "Přidává odkazy pro poděkování uživatelům za editace, komentáře apod.",
@@ -16,6 +17,9 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|poděkováno}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Poděkovat}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Poděkováno}}}}",
+ "thanks-button-action-queued": "{{GENDER:$2|Posílám}} poděkování {{GENDER:$1|uživateli|uživatelce}} $1…",
+ "thanks-button-action-cancel": "Zrušit",
+ "thanks-button-action-completed": "{{GENDER:$2|Poděkoval|Poděkovala|Poděkoval(a)}} jste {{GENDER:$1|uživateli|uživatelce}} $1",
"thanks-error-undefined": "Poděkování se nezdařilo (kód chyby: $1). Zkuste to prosím znovu.",
"thanks-error-invalid-log-id": "Protokolovací záznam nebyl nalezen",
"thanks-error-invalid-log-type": "Typ protokolovacích záznamů „$1“ není v seznamu dovolených typů.",
@@ -26,7 +30,7 @@
"thanks-error-invalidrecipient": "Nebyl nalezen platný příjemce",
"thanks-error-invalidrecipient-bot": "Robotům nelze děkovat",
"thanks-error-invalidrecipient-self": "Nemůžete děkovat {{GENDER:|sám|sama|sami}} sobě.",
- "thanks-error-notloggedin": "Anonymní uživatelé nemohou děkovat",
+ "thanks-error-notloggedin": "Neregistrovaní uživatelé nemohou děkovat",
"thanks-error-ratelimited": "{{GENDER:$1|Překročil|Překročila|Překročili}} jste rychlostní limit. Počkejte prosím chvíli a zkuste to znovu.",
"thanks-thank-tooltip": "{{GENDER:$1|Poslat}} {{GENDER:$2|tomuto uživateli|této uživatelce}} poděkování",
"thanks-thank-tooltip-no": "{{GENDER:$1|Stornovat}} oznámení o poděkování",
@@ -60,7 +64,5 @@
"notification-flow-thanks-post-link": "váš komentář",
"notification-header-flow-thank": "$1 {{GENDER:$5|vám}} {{GENDER:$2|poděkoval|poděkovala}} za komentář k tématu „<strong>$3</strong>“.",
"notification-compact-header-flow-thank": "$1 {{GENDER:$3|vám}} {{GENDER:$2|poděkoval|poděkovala}}.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|Jeden člověk|$1 lidé|$1 lidí|100=Více než 99 lidí}} {{GENDER:$3|vám}} {{PLURAL:$1|poděkoval|poděkovali|poděkovalo}} za váš komentář k tématu „<strong>$2</strong>“.",
- "apihelp-thank-param-rev": "ID revize, za kterou se má někomu poděkovat. Toto nebo 'log' musí být uvedeno.",
- "apihelp-thank-param-log": "ID záznamu, za který se má poděkovat. Nutné uvést buď toto, nebo 'rev'."
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Jeden člověk|$1 lidé|$1 lidí|100=Více než 99 lidí}} {{GENDER:$3|vám}} {{PLURAL:$1|poděkoval|poděkovali|poděkovalo}} za váš komentář k tématu „<strong>$2</strong>“."
}
diff --git a/Thanks/i18n/cy.json b/Thanks/i18n/cy.json
index b7ada868..bef29744 100644
--- a/Thanks/i18n/cy.json
+++ b/Thanks/i18n/cy.json
@@ -1,10 +1,10 @@
{
"@metadata": {
"authors": [
- "Lloffiwr",
- "Robin Owain",
"Diafol",
- "Macofe"
+ "Lloffiwr",
+ "Macofe",
+ "Robin Owain"
]
},
"thanks-desc": "Ychwanegu cysylltau er mwyn diolch i'r golygon",
@@ -32,6 +32,5 @@
"thanks-error-invalidpostid": "Dydy'r ID ddim yn ddilys.",
"flow-thanks-confirmation-special": "Ydych chi'n dymuno danfon gair o ddiolch am y sylw hwn?",
"flow-thanks-thanked-notice": "Derbyniodd $1 eich diolch am {{GENDER:$2|ei|ei|eu}} sylw.",
- "notification-flow-thanks-post-link": "eich sylw",
- "apihelp-thank-description": "Danfonwch air o ddiolch at y golygydd."
+ "notification-flow-thanks-post-link": "eich sylw"
}
diff --git a/Thanks/i18n/da.json b/Thanks/i18n/da.json
index 566c72cf..19b3431c 100644
--- a/Thanks/i18n/da.json
+++ b/Thanks/i18n/da.json
@@ -2,13 +2,15 @@
"@metadata": {
"authors": [
"Christian List",
+ "EeveeSylveon",
+ "Kranix",
"Palnatoke",
- "Thomsen",
+ "Saederup92",
"Sarrus",
"Simeondahl",
"SimmeD",
- "EeveeSylveon",
- "Saederup92"
+ "Thomsen",
+ "Weblars"
]
},
"thanks-desc": "Tilføjer links til at takke brugerne for ændringer, kommentarer, osv.",
@@ -16,9 +18,15 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|takkede}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Tak}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Takkede}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Takker}}}} $1…",
+ "thanks-button-action-cancel": "Annullér",
+ "thanks-button-action-completed": "Du {{GENDER:$1|{{GENDER:$2|takkede}}}} $1",
"thanks-error-undefined": "Takkehandlingen mislykkedes (fejlkode: $1). Prøv venligst igen.",
"thanks-error-invalidrevision": "Versions-ID er ikke gyldigt.",
+ "thanks-error-invalidrecipient": "Ingen gyldig modtager fundet",
+ "thanks-error-invalidrecipient-bot": "Botter kan ikke takkes",
"thanks-error-invalidrecipient-self": "Du kan ikke takke dig selv",
+ "thanks-error-notloggedin": "Anonyme brugere kan ikke sende tak",
"thanks-error-ratelimited": "{{GENDER:$1|Du}} har overskredet din frekvensgrænse. Vent et stykke tid og prøv igen.",
"thanks-thank-tooltip": "{{GENDER:$1|Send}} en takkemeddelelse til denne {{GENDER:$2|bruger}}",
"thanks-confirmation2": "Alle takker er offentlige. Vil du {{GENDER:$1|sende}} tak?",
@@ -30,6 +38,9 @@
"echo-category-title-edit-thank": "Tak!",
"notification-thanks-diff-link": "din redigering",
"notification-header-rev-thank": "$1 {{GENDER:$2|takkede}} {{GENDER:$4|dig}} for din redigering på '''$3'''.",
+ "notification-header-creation-thank": "$1 {{GENDER:$2|takkede}} {{GENDER:$4|dig}} for din oprettelse af <strong>$3</strong>.",
+ "notification-compact-header-edit-thank": "$1 {{GENDER:$2|takkede}} {{GENDER:$3|dig}}.",
+ "notification-bundle-header-rev-thank": "{{PLURAL:$1|En person|$1 personer|100=mere end 99 personer}} takkede {{GENDER:$3|dig}} for din redigering af <strong>$2</strong>.",
"log-name-thanks": "Takkelog",
"log-description-thanks": "Nedenfor er en liste over brugere, som er blevet takket af andre brugere.",
"logentry-thanks-thank": "$1 {{GENDER:$2|takkede}} {{GENDER:$4|$3}}",
@@ -37,5 +48,6 @@
"notification-link-text-view-post": "Vis kommentar",
"notification-flow-thanks-post-link": "din kommentar",
"notification-header-flow-thank": "$1 {{GENDER:$2|takkede}} {{GENDER:$5|dig}} for din kommentar i \"<strong>$3</strong>\".",
- "notification-compact-header-flow-thank": "$1 {{GENDER:$2|takkede}} {{GENDER:$3|dig}}."
+ "notification-compact-header-flow-thank": "$1 {{GENDER:$2|takkede}} {{GENDER:$3|dig}}.",
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|En person|$1 personer|100=mere end 99 personer}} takkede {{GENDER:$3|dig}} for din kommentar i \"<strong>$2</strong>\"."
}
diff --git a/Thanks/i18n/de-ch.json b/Thanks/i18n/de-ch.json
index 274fb85e..008ec34e 100644
--- a/Thanks/i18n/de-ch.json
+++ b/Thanks/i18n/de-ch.json
@@ -1,8 +1,8 @@
{
"@metadata": {
"authors": [
- "J. 'mach' wust",
- "Geitost"
+ "Geitost",
+ "J. 'mach' wust"
]
},
"flow-thanks-thanked-notice": "$1 erhielt dein Dankeschön für {{GENDER:$2|seinen|ihren|seinen/ihren}} Kommentar."
diff --git a/Thanks/i18n/de-formal.json b/Thanks/i18n/de-formal.json
index 6054e480..5a88ae48 100644
--- a/Thanks/i18n/de-formal.json
+++ b/Thanks/i18n/de-formal.json
@@ -1,13 +1,15 @@
{
"@metadata": {
"authors": [
- "Kghbln",
- "Geitost"
+ "Geitost",
+ "Kghbln"
]
},
"thanks-error-ratelimited": "{{GENDER:$1|Sie}} haben Ihr Aktionslimit überschritten. Bitte warten Sie etwas und versuchen Sie es erneut.",
"thanks-thanked-notice": "$1 erhielt Ihr Dankeschön für {{GENDER:$2|seine|ihre|seine/ihre}} Bearbeitung.",
"notification-thanks-diff-link": "Ihre Bearbeitung",
+ "thanks-confirmation-special-log": "Möchten Sie öffentlich ein Dankeschön für diese Aktion senden?",
+ "thanks-confirmation-special-rev": "Möchten Sie öffentlich ein Dankeschön für diese Bearbeitung senden?",
"flow-thanks-confirmation-special": "Möchten Sie ein Dankeschön für diesen Kommentar senden?",
"flow-thanks-thanked-notice": "$1 erhielt Ihr Dankeschön für {{GENDER:$2|seinen|ihren|seinen/ihren}} Kommentar.",
"notification-flow-thanks-post-link": "Ihren Kommentar"
diff --git a/Thanks/i18n/de.json b/Thanks/i18n/de.json
index 0f796cd2..8f044330 100644
--- a/Thanks/i18n/de.json
+++ b/Thanks/i18n/de.json
@@ -1,18 +1,19 @@
{
"@metadata": {
"authors": [
+ "Geitost",
+ "Inkowik",
+ "J. 'mach' wust",
"Kghbln",
+ "Luke081515",
"MF-Warburg",
"Metalhead64",
+ "Predatorix",
+ "Purodha",
+ "Schniggendiller",
"Suriyaa Kudo",
"TMg",
- "Wnme",
- "Schniggendiller",
- "Inkowik",
- "Purodha",
- "J. 'mach' wust",
- "Predatorix",
- "Geitost"
+ "Wnme"
]
},
"thanks-desc": "Stellt Links zum Bedanken bei Benutzern für Bearbeitungen, Kommentare und Ähnliches zur Verfügung",
@@ -20,6 +21,9 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|bereits bedankt}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Danken}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Bedankt}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Bedanken}}}} bei $1 …",
+ "thanks-button-action-cancel": "Abbrechen",
+ "thanks-button-action-completed": "Du hast $1 {{GENDER:$1|{{GENDER:$2|gedankt}}}}",
"thanks-error-undefined": "Bedanken fehlgeschlagen (Fehlercode: $1). Bitte erneut versuchen.",
"thanks-error-invalid-log-id": "Logbucheintrag nicht gefunden",
"thanks-error-invalid-log-type": "Der Logbuchtyp „$1“ ist nicht in der weißen Liste der erlaubten Logbuchtypen.",
@@ -36,7 +40,7 @@
"thanks-thank-tooltip": "{{GENDER:$2|Diesem Benutzer|Dieser Benutzerin}} ein Dankeschön {{GENDER:$1|senden}}",
"thanks-thank-tooltip-no": "Die Dankeschön-Benachrichtigung {{GENDER:$1|abbrechen}}",
"thanks-thank-tooltip-yes": "Die Dankeschön-Benachrichtigung {{GENDER:$1|senden}}",
- "thanks-confirmation2": "Dankeschöns öffentlich {{GENDER:$1|senden}}?",
+ "thanks-confirmation2": "Dan­ke­schön öffentlich {{GENDER:$1|senden}}?",
"thanks-thanked-notice": "{{GENDER:$3|Du}} danktest {{GENDER:$2|$1}}.",
"thanks": "Für diese Bearbeitung danken",
"thanks-submit": "Dankeschön senden",
@@ -55,8 +59,8 @@
"logentry-thanks-thank": "$1 {{GENDER:$2|dankte}} {{GENDER:$4|$3}}",
"logeventslist-thanks-log": "Dankeschön-Logbuch",
"thanks-error-no-id-specified": "Du musst eine Versions- oder Logbuchkennung angeben, um ein Dankeschön zu senden.",
- "thanks-confirmation-special-log": "Möchtest du öffentlich Dankeschöns für diese Logbuchaktion senden?",
- "thanks-confirmation-special-rev": "Möchtest du öffentlich Dankeschöns für diese Bearbeitung senden?",
+ "thanks-confirmation-special-log": "Möchtest du öffentlich ein Dankeschön für diese Aktion senden?",
+ "thanks-confirmation-special-rev": "Möchtest du öffentlich ein Dankeschön für diese Bearbeitung senden?",
"notification-link-text-view-post": "Kommentar anzeigen",
"notification-link-text-view-logentry": "Logbucheintrag ansehen",
"thanks-error-invalidpostid": "Die Beitragskennung ist nicht gültig.",
@@ -65,15 +69,5 @@
"notification-flow-thanks-post-link": "deinen Kommentar",
"notification-header-flow-thank": "$1 {{GENDER:$2|dankte}} {{GENDER:$5|dir}} für deinen Kommentar „<strong>$3</strong>“.",
"notification-compact-header-flow-thank": "$1 {{GENDER:$2|dankte}} {{GENDER:$3|dir}}.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|Eine Person dankte|$1 Personen dankten|100=Mehr als 99 Personen dankten}} {{GENDER:$3|dir}} für deinen Kommentar in „<strong>$2</strong>“.",
- "apihelp-flowthank-description": "Ein öffentliches Dankeschön für einen Flow-Beitrag senden.",
- "apihelp-flowthank-summary": "Sendet eine öffentliche Dankeschön-Benachrichtigung für einen Flow-Kommentar.",
- "apihelp-flowthank-param-postid": "Die UUID des Beitrags, für den gedankt werden soll.",
- "apihelp-flowthank-example-1": "Ein Dankeschön für den Kommentar mit der <kbd>UUID xyz789</kbd> senden",
- "apihelp-thank-description": "Sendet eine Dankeschön-Benachrichtigung an einen Autor.",
- "apihelp-thank-summary": "Sendet eine Dankeschön-Benachrichtigung an einen Bearbeiter.",
- "apihelp-thank-param-rev": "Versionskennung, für die gedankt werden soll. Dies oder „log“ muss angegeben werden.",
- "apihelp-thank-param-log": "Logbuchkennung, für die gedankt werden soll. Dies oder „rev“ muss angegeben werden.",
- "apihelp-thank-param-source": "Eine kurze Zeichenfolge, die die Quelle der Anfrage beschreibt, zum Beispiel <kbd>diff</kbd> oder <kbd>history</kbd>.",
- "apihelp-thank-example-1": "Sendet ein Dankeschön für die Version mit der <kbd>Kennung 456</kbd>, deren Quelle ein Bearbeitungsunterschied ist."
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Eine Person dankte|$1 Personen dankten|100=Mehr als 99 Personen dankten}} {{GENDER:$3|dir}} für deinen Kommentar in „<strong>$2</strong>“."
}
diff --git a/Thanks/i18n/diq.json b/Thanks/i18n/diq.json
index 33141b33..4ff3409d 100644
--- a/Thanks/i18n/diq.json
+++ b/Thanks/i18n/diq.json
@@ -1,28 +1,36 @@
{
"@metadata": {
"authors": [
+ "Gambollar",
"Gorizon",
+ "Gırd",
+ "Kumkumuk",
"Marmase",
"Mirzali",
- "Kumkumuk",
- "Gambollar",
- "Gırd"
+ "Orbot707"
]
},
- "thanks-thank": "{{GENDER:$1|{{GENDER:$2|teşekur ke}}}}",
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|teşekur bıkerê }}}}",
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|teşekur kerd}}}}",
- "thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Teşekur ke}}}}",
+ "thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Teşekur bıkerê}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Teşekur kerd}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Teşekur}}}} $1…",
+ "thanks-button-action-cancel": "Bıtexelne",
+ "thanks-button-action-completed": "To $1 rê {{GENDER:$1|{{GENDER:$2|teşekur kerd}}}}",
"thanks-thank-tooltip": "{{GENDER:$2|Karberi}} rê teşekur {{GENDER:$1|bırışe}}",
- "thanks-confirmation2": "Qandê ena vırnayış şıma qayılê teşekur {{GENDER:$1|bırışê}}?",
- "thanks": "Teşekur bırışe",
+ "thanks-confirmation2": "Şari rê akerde teşekuri {{GENDER:$1|bırışê}}?",
+ "thanks-thanked-notice": "Karberê {{GENDER:$2|$1}} rê {{GENDER:$3|şıma}} teşekur kerd",
+ "thanks": "Teşekur bıkerê",
"thanks-submit": "Teşekur bırışe",
+ "echo-pref-subscription-edit-thank": "Serva iştiraki mı rê teşekur biyo",
"echo-category-title-edit-thank": "Teşekuri",
"notification-thanks-diff-link": "vırnayışê şıma",
"notification-header-rev-thank": "$1, qandé vurnayışê pera <strong>$3</strong>i {{GENDER:$4|şıma}} rê {{GENDER:$2|teşekur kerd}}.",
+ "notification-header-creation-thank": "$1, serva vıraştışê pela <strong>$3</strong> {{GENDER:$4|şıma}} rê {{GENDER:$2|teşekur kerd}}.",
"notification-bundle-header-rev-thank": "{{PLURAL:$1|Yew merdım|$1 merdımi|100=99+ merduman}} qandé <strong>$2</strong> {{GENDER:$3|şıma }} rê teşekur kerd.",
"log-name-thanks": "Qeydê teşekuran",
"logentry-thanks-thank": "$1 {{GENDER:$4|$3}} rê {{GENDER:$2|teşekur kerd}}",
+ "logeventslist-thanks-log": "Roceke teşekuri",
"notification-link-text-view-post": "Tefsiri bıvêne",
"notification-flow-thanks-post-link": "raweyê şıma"
}
diff --git a/Thanks/i18n/el.json b/Thanks/i18n/el.json
index 38b6c09c..a2c0b0dc 100644
--- a/Thanks/i18n/el.json
+++ b/Thanks/i18n/el.json
@@ -3,21 +3,21 @@
"authors": [
"Geraki",
"Glavkos",
- "Protnet",
- "Nikosgranturismogt"
+ "Nikosgranturismogt",
+ "Protnet"
]
},
"thanks-desc": "Προσθέτει συνδέσμους για να ευχαριστείτε χρήστες για επεξεργασίες, σχόλια, κλπ.",
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|ευχαριστία}}}}",
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|δέχτηκε ευχαριστίες}}}}",
- "thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Ευχαριστώ}}}}",
+ "thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Ευχαριστία}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|δέχτηκε ευχαριστίες}}}}",
"thanks-error-undefined": "Η ενέργεια ευχαριστίας απέτυχε (σφάλμα κώδικα: $1). Παρακαλούμε δοκιμάστε ξανά.",
"thanks-error-invalidrevision": "Το ID αναθεώρησης δεν είναι έγκυρο.",
"thanks-error-ratelimited": "{{GENDER:$1|Έχετε}} υπερβεί το όριό σας. Παρακαλούμε περιμένετε κάποιο χρονικό διάστημα και προσπαθήστε ξανά.",
- "thanks-thank-tooltip": "{{GENDER:$1|Έστειλε}} μια ειδοποίηση ευχαριστίας σε {{GENDER:$2|αυτόν τον χρήστη|αυτή την χρήστη}}",
- "thanks-thank-tooltip-no": "{{GENDER:$1|Ακύρωση}} της κοινοποίησης ευχαριστίας",
- "thanks-thank-tooltip-yes": "{{GENDER:$1|Αποστολή}} της κοινοποίησης ευχαριστίας",
+ "thanks-thank-tooltip": "{{GENDER:$1|Αποστολή}} ευχαριστήριας ειδοποίησης σε {{GENDER:$2|αυτόν το χρήστη|αυτήν τη χρήστρια}}",
+ "thanks-thank-tooltip-no": "{{GENDER:$1|Ακύρωση}} της ευχαριστήριας ειδοποίησης",
+ "thanks-thank-tooltip-yes": "{{GENDER:$1|Αποστολή}} της ευχαριστήριας ειδοποίησης",
"thanks-confirmation2": "Όλες οι ευχαριστίες είναι δημόσιες. {{GENDER:$1|Αποστολή}} ευχαριστίας;",
"thanks-thanked-notice": "{{GENDER:$3|Εσείς}} ευχαριστήσατε τον {{GENDER:$2|$1}}.",
"thanks": "Αποστολή ευχαριστίας",
@@ -33,10 +33,10 @@
"log-description-thanks": "Παρακάτω είναι μια λίστα των χρηστών που ευχαριστήθηκαν από άλλους χρήστες.",
"logentry-thanks-thank": "{{GENDER:$2|Ο|Η}} $1 ευχαρίστησε {{GENDER:$4|τον|την}} $3",
"logeventslist-thanks-log": "Καταγραφή ευχαριστηρίων",
- "thanks-error-no-id-specified": "Πρέπει να καθορίσετε ένα ID αναθεώρησης ή μητρώου για να στείλετε ευχαριστία.",
+ "thanks-error-no-id-specified": "Πρέπει να καθορίσετε αναγνωριστικό αναθεώρησης ή αρχείου καταγραφών για να στείλετε ευχαριστίες.",
"notification-link-text-view-post": "Προβολή σχολίου",
"thanks-error-invalidpostid": "Το Post ID δεν είναι έγκυρο.",
- "flow-thanks-confirmation-special": "Θέλετε να στείλετε δημόσια ευχαριστία γι' αυτό το σχόλιο;",
+ "flow-thanks-confirmation-special": "Θέλετε να στείλετε δημόσια ευχαριστία για αυτό το σχόλιο;",
"flow-thanks-thanked-notice": "{{GENDER:$3|Εσείς}} ευχαριστήσατε τον $1 για το σχόλιο {{GENDER:$2|του|της}}.",
"notification-flow-thanks-post-link": "σχόλιό σας",
"notification-header-flow-thank": "{{GENDER:$2|Ο|Η}} $1 {{GENDER:$5|σας}} ευχαρίστησε για το σχόλιό σας στο «<strong>$3</strong>».",
diff --git a/Thanks/i18n/en.json b/Thanks/i18n/en.json
index 975ec965..a8ec42a7 100644
--- a/Thanks/i18n/en.json
+++ b/Thanks/i18n/en.json
@@ -9,6 +9,9 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|thanked}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Thank}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Thanked}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Thanking}}}} $1…",
+ "thanks-button-action-cancel": "Cancel",
+ "thanks-button-action-completed": "You {{GENDER:$1|{{GENDER:$2|thanked}}}} $1",
"thanks-error-undefined": "Thank action failed (error code: $1). Please try again.",
"thanks-error-invalid-log-id": "Log entry not found",
"thanks-error-invalid-log-type": "Log type '$1' is not in the whitelist of permitted log types.",
@@ -54,15 +57,5 @@
"notification-flow-thanks-post-link": "your comment",
"notification-header-flow-thank": "$1 {{GENDER:$2|thanked}} {{GENDER:$5|you}} for your comment in \"<strong>$3</strong>\".",
"notification-compact-header-flow-thank": "$1 {{GENDER:$2|thanked}} {{GENDER:$3|you}}.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|One person|$1 people|100=99+ people}} thanked {{GENDER:$3|you}} for your comment in \"<strong>$2</strong>\".",
- "apihelp-flowthank-description": "Send a public thank-you notification for a Flow comment.",
- "apihelp-flowthank-summary": "Send a public thank-you notification for a Flow comment.",
- "apihelp-flowthank-param-postid": "The UUID of the post to thank for.",
- "apihelp-flowthank-example-1": "Send thanks for the comment with <kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "Send a thank-you notification to an editor.",
- "apihelp-thank-summary": "Send a thank-you notification to an editor.",
- "apihelp-thank-param-rev": "Revision ID to thank someone for. This or 'log' must be provided.",
- "apihelp-thank-param-log": "Log ID to thank someone for. This or 'rev' must be provided.",
- "apihelp-thank-param-source": "A short string describing the source of the request, for example <kbd>diff</kbd> or <kbd>history</kbd>.",
- "apihelp-thank-example-1": "Send thanks for revision <kbd>ID 456</kbd>, with the source being a diff page"
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|One person|$1 people|100=99+ people}} thanked {{GENDER:$3|you}} for your comment in \"<strong>$2</strong>\"."
}
diff --git a/Thanks/i18n/eo.json b/Thanks/i18n/eo.json
index 83a8c7e7..7e83d312 100644
--- a/Thanks/i18n/eo.json
+++ b/Thanks/i18n/eo.json
@@ -1,10 +1,11 @@
{
"@metadata": {
"authors": [
- "KuboF",
- "Robin van der Vliet",
"Gamliel Fishkin",
- "Happy5214"
+ "Happy5214",
+ "KuboF",
+ "Mirin",
+ "Robin van der Vliet"
]
},
"thanks-desc": "Aldoni ligilon por danki al uzantoj pro ties redaktoj, komentoj ks.",
@@ -12,13 +13,27 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|dankita}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Danki}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|dankita}}}}",
- "thanks-error-undefined": "Danko malsukcesis. Reprovu poste.",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Dankante}}}} la uzanton $1…",
+ "thanks-button-action-cancel": "Nuligi",
+ "thanks-button-action-completed": "Vi {{GENDER:$1|{{GENDER:$2|dankis}}}} la uzanton $1",
+ "thanks-error-undefined": "Danko malsukcesis (erarkodo: $1). Reprovu poste.",
+ "thanks-error-invalid-log-id": "Protokolero ne troviĝis",
+ "thanks-error-invalid-log-type": "Protokoltipo '$1' ne estas en la listo de permesataj protokoltipoj.",
+ "thanks-error-log-deleted": "La petita protokolero estas foriĝinta, kaj vi ne povas danki pro ĝi.",
"thanks-error-invalidrevision": "Identigilo de revizio estas nevalida.",
+ "thanks-error-revdeleted": "Ne povas danki pro forigo de la versio.",
+ "thanks-error-notitle": "Paĝa titolo ne troviĝis",
+ "thanks-error-invalidrecipient": "Neniu valida ricevanto troviĝis",
+ "thanks-error-invalidrecipient-bot": "Oni ne povas danki roboton",
"thanks-error-invalidrecipient-self": "Vi ne povas danki sin",
+ "thanks-error-notloggedin": "Anonimulo ne povas danki",
"thanks-error-ratelimited": "{{GENDER:$1|Vi}} superis vian laŭtempan limon. Atendu kelkan tempon kaj reprovu.",
+ "thanks-error-api-params": "La peto devas esti provizita per nur unu el la parametroj 'revid' kaj 'logid'",
"thanks-thank-tooltip": "{{GENDER:$1|Danki}} al ĉi tiu {{GENDER:$2|uzanto}}",
- "thanks-confirmation2": "{{GENDER:$1|Ĉu sendi}} publikan dankon pro tiu ĉi redakto?",
- "thanks-thanked-notice": "$1 ricevis vian dankon pro {{GENDER:$2|sia}} redakto.",
+ "thanks-thank-tooltip-no": "{{GENDER:$1|Nuligi}} la dankon",
+ "thanks-thank-tooltip-yes": "{{GENDER:$1|Sendi}} la dankon",
+ "thanks-confirmation2": "Ĉu publike {{GENDER:$1|danki}}?",
+ "thanks-thanked-notice": "{{GENDER:$3|Vi}} dankis la uzanton {{GENDER:$2|$1}}.",
"thanks": "Sendi dankon",
"thanks-submit": "Danki",
"echo-pref-subscription-edit-thank": "Danki al mi pro miaj redaktoj",
@@ -26,12 +41,25 @@
"echo-category-title-edit-thank": "Dankoj",
"notification-thanks-diff-link": "via redakto",
"notification-header-rev-thank": "$1 {{GENDER:$2|dankis}} {{GENDER:$4|vin}} pro via redakto en <strong>$3</strong>.",
+ "notification-header-creation-thank": "$1 {{GENDER:$2|dankis}} {{GENDER:$4|vin}} pro via kreado de <strong>$3</strong>.",
+ "notification-header-log-thank": "$1 {{GENDER:$2|dankis}} {{GENDER:$4|vin}} pro via ago pri <strong>$3</strong>.",
+ "notification-compact-header-edit-thank": "$1 {{GENDER:$2|dankis}} {{GENDER:$3|vin}}.",
+ "notification-bundle-header-rev-thank": "{{PLURAL:$1|Unu homo|$1 homoj|100=99+ homoj}} dankis {{GENDER:$3|vin}} pro via redakto de <strong>$2</strong>.",
+ "notification-bundle-header-log-thank": "{{PLURAL:$1|Unu homo|$1 homoj|100=99+ homoj}} dankis {{GENDER:$3|vin}} pro via ago pri <strong>$2</strong>.",
"log-name-thanks": "Protokolo de dankoj",
"log-description-thanks": "Sube estas listo de uzantoj al kiuj aliaj uzantoj dankis.",
"logentry-thanks-thank": "$1 {{GENDER:$2|dankis}} al {{GENDER:$4|$3}}",
+ "logeventslist-thanks-log": "Dankprotokolo",
+ "thanks-error-no-id-specified": "Vi devas specifi numeron de versio aŭ protokolero por danki.",
+ "thanks-confirmation-special-log": "Ĉu vi volas publike sendi dankon pro ĉi tiu protokolago?",
+ "thanks-confirmation-special-rev": "Ĉu vi volas publike sendi dankon pro ĉi tiu redakto?",
"notification-link-text-view-post": "Montri komenton",
+ "notification-link-text-view-logentry": "Vidi protokoleron",
+ "thanks-error-invalidpostid": "Identigilo de afiŝo ne estas valida.",
"flow-thanks-confirmation-special": "Ĉu vi volas publike sendi dankon pro tiu ĉi komento?",
- "flow-thanks-thanked-notice": "$1 ricevis vian dankon pro {{GENDER:$2|sia}} komento.",
+ "flow-thanks-thanked-notice": "{{GENDER:$3|Vi}} dankis la uzanton $1 pro {{GENDER:$2|ties komento}}.",
"notification-flow-thanks-post-link": "via komento",
- "notification-header-flow-thank": "$1 {{GENDER:$2|dankis}} {{GENDER:$5|vin}} pro via komento en «<strong>$3</strong>»."
+ "notification-header-flow-thank": "$1 {{GENDER:$2|dankis}} {{GENDER:$5|vin}} pro via komento en «<strong>$3</strong>».",
+ "notification-compact-header-flow-thank": "$1 {{GENDER:$2|dankis}} {{GENDER:$3|vin}}.",
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Unu homo|$1 homoj|100=99+ homoj}} dankis {{GENDER:$3|vin}} pro via komento sur <strong>$2</strong>."
}
diff --git a/Thanks/i18n/es.json b/Thanks/i18n/es.json
index c1ef3643..115854cc 100644
--- a/Thanks/i18n/es.json
+++ b/Thanks/i18n/es.json
@@ -4,14 +4,15 @@
"Alan",
"Fitoschido",
"Hahc21",
+ "Jelou",
"Julian leonardo paez",
- "PoLuX124",
- "Sethladan",
- "Themasterriot",
"Macofe",
"MarcoAurelio",
+ "Peter Bowman",
+ "PoLuX124",
"Savh",
- "Jelou"
+ "Sethladan",
+ "Themasterriot"
]
},
"thanks-desc": "Añade enlaces para agradecer a los usuarios las ediciones, comentarios, etc.",
@@ -19,6 +20,8 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|agradecido|agradecida}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Agradecer}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Agradecido|Agradecida}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Agradeciendo}}}} a $1…",
+ "thanks-button-action-cancel": "Cancelar",
"thanks-error-undefined": "El agradecimiento falló (código de error: $1). Inténtalo de nuevo.",
"thanks-error-invalid-log-id": "No se ha encontrado la entrada en el registro",
"thanks-error-invalid-log-type": "El tipo de registro «$1» no se encuentra en la lista blanca de tipos permitidos.",
@@ -43,6 +46,7 @@
"echo-category-title-edit-thank": "Agradecimientos",
"notification-thanks-diff-link": "tu edición",
"notification-header-rev-thank": "$1 {{GENDER:$2|agradeció}} {{GENDER:$4|tu}} edición en <strong>$3</strong>.",
+ "notification-header-creation-thank": "$1 {{GENDER:$2|agradeció}} {{GENDER:$4|tu}} creación de <strong>$3</strong>.",
"notification-header-log-thank": "$1 {{GENDER:$2|agradeció}} {{GENDER:$4|tu}} acción relacionada con <strong>$3</strong>.",
"notification-compact-header-edit-thank": "$1 {{GENDER:$3|te}} {{GENDER:$2|lo agradeció}}.",
"notification-bundle-header-rev-thank": "{{PLURAL:$1|Una persona|$1 personas|100=Más de 99 personas}} {{PLURAL:$1|agradeció|agradecieron}} {{GENDER:$3|tu}} edición en <strong>$2</strong>.",
@@ -62,14 +66,5 @@
"notification-flow-thanks-post-link": "tu comentario",
"notification-header-flow-thank": "$1 {{GENDER:$2|agradeció}} {{GENDER:$5|tu}} comentario en \"<strong>$3</strong>\".",
"notification-compact-header-flow-thank": "$1 {{GENDER:$3|te}} {{GENDER:$2|lo agradeció}}.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|Una persona|$1 personas|100=99+ personas}} {{PLURAL:$1|agradeció|agradecieron}} {{GENDER:$3|tu}} comentario en \"<strong>$2</strong>\".",
- "apihelp-flowthank-description": "Enviar una notificación pública de agradecimiento por un comentario en Flow.",
- "apihelp-flowthank-summary": "Enviar una notificación pública de agradecimiento por un comentario en Flow.",
- "apihelp-flowthank-param-postid": "El UUID de la publicación a la cual agradecer.",
- "apihelp-flowthank-example-1": "Agradecer el comentario con <kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "Enviar una notificación de agradecimiento a un editor.",
- "apihelp-thank-summary": "Enviar una notificación de agradecimiento a un editor.",
- "apihelp-thank-param-rev": "Identificador de revisión del envío de agradecimiento. Se debe proporcionar el ID o el 'log'.",
- "apihelp-thank-param-source": "Una cadena corta que describa el origen de la solicitud. Por ejemplo, <kbd>diff</kbd> o <kbd>history</kbd>.",
- "apihelp-thank-example-1": "Agradecer la revisión <kbd>ID 456</kbd, con la fuente siendo una página diff"
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Una persona|$1 personas|100=99+ personas}} {{PLURAL:$1|agradeció|agradecieron}} {{GENDER:$3|tu}} comentario en \"<strong>$2</strong>\"."
}
diff --git a/Thanks/i18n/et.json b/Thanks/i18n/et.json
index 7db80293..2fe1d394 100644
--- a/Thanks/i18n/et.json
+++ b/Thanks/i18n/et.json
@@ -2,8 +2,8 @@
"@metadata": {
"authors": [
"Kyng",
- "Pikne",
- "Macofe"
+ "Macofe",
+ "Pikne"
]
},
"thanks-desc": "Lisab lingid kasutajate tänamiseks muudatuste, kommentaaride ja muu eest.",
@@ -11,6 +11,9 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|tänatud}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Täna}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Tänatud}}}}",
+ "thanks-button-action-queued": "Kasutaja $1 {{GENDER:$1|{{GENDER:$2|tänamine}}}}…",
+ "thanks-button-action-cancel": "Loobu",
+ "thanks-button-action-completed": "{{GENDER:$2|Tänasid}} kasutajat $1",
"thanks-error-undefined": "Tänamine ebaõnnestus (tõrkekood: $1). Palun proovi uuesti.",
"thanks-error-invalid-log-id": "Logisissekannet ei leidu",
"thanks-error-invalid-log-type": "Logitüüp \"$1\" pole lubatud logitüüpide valges nimekirjas.",
@@ -36,6 +39,7 @@
"echo-category-title-edit-thank": "Tänamine",
"notification-thanks-diff-link": "muudatuse",
"notification-header-rev-thank": "$1 {{GENDER:$2|tänas}} {{GENDER:$4|sind}} muudatuse eest leheküljel \"<strong>$3</strong>\".",
+ "notification-header-creation-thank": "$1 {{GENDER:$2|tänas}} {{GENDER:$4|sind}} lehekülje \"<strong>$3</strong>\" alustamise eest.",
"notification-header-log-thank": "$1 {{GENDER:$2|tänas}} {{GENDER:$4|sind}} lehekülje \"<strong>$3</strong>\" suhtes rakendatud toimingu eest.",
"notification-compact-header-edit-thank": "$1 {{GENDER:$2|tänas}} {{GENDER:$3|sind}}.",
"notification-bundle-header-rev-thank": "{{PLURAL:$1|Üks inimene|$1 inimest|100=Üle 99 inimese}} tänas {{GENDER:$3|sind}} muudatuse eest leheküljel \"<strong>$2</strong>\".",
@@ -55,12 +59,5 @@
"notification-flow-thanks-post-link": "kommentaari",
"notification-header-flow-thank": "$1 {{GENDER:$2|tänas}} {{GENDER:$5|sind}} kommentaari eest teemas \"<strong>$3</strong>\".",
"notification-compact-header-flow-thank": "$1 {{GENDER:$2|tänas}} {{GENDER:$3|sind}}.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|Üks inimene|$1 inimest|100=Üle 99 inimese}} tänas {{GENDER:$3|sind}} kommentaari eest arutelus \"<strong>$2</strong>\".",
- "apihelp-flowthank-description": "Avaliku tänuteavituse saatmine voogarutelu kommentaari eest.",
- "apihelp-flowthank-param-postid": "Postitus, mille eest tänada, UUID.",
- "apihelp-flowthank-example-1": "Täna postituse eest (<kbd>UUID xyz789</kbd>)",
- "apihelp-thank-description": "Tänuteavituse saatmine toimetajale.",
- "apihelp-thank-param-rev": "Redaktsioon, mille eest tänada, selle identifikaator. Tuleb ära tuua kas see või \"log\".",
- "apihelp-thank-param-source": "Lühisõne, mis kirjeldab päringu allikat, näiteks <kbd>diff</kbd> või <kbd>history</kbd>.",
- "apihelp-thank-example-1": "Täna redaktsiooni <kbd>ID 456</kbd eest, allikas on erinevuste lehekülg"
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Üks inimene|$1 inimest|100=Üle 99 inimese}} tänas {{GENDER:$3|sind}} kommentaari eest arutelus \"<strong>$2</strong>\"."
}
diff --git a/Thanks/i18n/eu.json b/Thanks/i18n/eu.json
index 6af12562..eced2737 100644
--- a/Thanks/i18n/eu.json
+++ b/Thanks/i18n/eu.json
@@ -1,32 +1,34 @@
{
"@metadata": {
"authors": [
- "Xabier Armendaritz",
- "Subi",
- "Sator",
+ "BaRaN6161 TURK",
+ "Joseba",
"Macofe",
- "Mikel Ibaiba"
+ "Mikel Ibaiba",
+ "Sator",
+ "Subi",
+ "Xabier Armendaritz"
]
},
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|eskertu}}}}",
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|eskertuta}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Eskertu}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Eskertuta}}}}",
- "thanks-error-undefined": "Ekertzeak akats egin du. Saiatu berriro mesedez.",
+ "thanks-error-undefined": "Ekertzeko ekintzak huts egin du (errorearen kodea: $1). Saiatu berriro mesedez.",
"thanks-thank-tooltip": "{{GENDER:$1|Bidali}} eskertze mezua {{GENDER:$2|lankide}} honi",
"thanks-confirmation2": "Eskerrak {{GENDER:$1|bidali}} edizio honengatik?",
- "thanks-thanked-notice": "{{GENDER:$3|You}} eskertzen du $1a {{GENDER:$2|his|her|their}} editatzeagatik.",
+ "thanks-thanked-notice": "$1 {{GENDER:$2|wikilariari}} eskerrak eman {{GENDER:$3|dizkiozu}}.",
"thanks": "Eman eskerrak",
"thanks-submit": "Bidali eskerrak",
"echo-pref-subscription-edit-thank": "Eskertu nire aldaketa",
"echo-pref-tooltip-edit-thank": "Abisatu norbaitek egin dudan aldaketa bat eskertzen duenean.",
"echo-category-title-edit-thank": "Eskerrak",
"notification-thanks-diff-link": "edizioa",
- "notification-header-rev-thank": "$1 lankideak '''$3''' orrian egin {{GENDER:$4|duzun}} aldaketa {{GENDER:$2|eskertzen}} dizu.",
+ "notification-header-rev-thank": "$1 lankideak '''$3''' orrian egin {{GENDER:$4|duzun}} aldaketa eskertu {{GENDER:$2|dizu}}.",
"log-name-thanks": "Eskertza erregistroa",
"logentry-thanks-thank": "$1 {{GENDER:$2|wikilariak}} eskerrak eman dizkio {{GENDER:$4|$3}} wikilariari",
"notification-link-text-view-post": "Erakutsi iruzkina",
"flow-thanks-confirmation-special": "Iruzkin hau eskertu nahi duzu?",
- "flow-thanks-thanked-notice": "{{GENEROA:$3|Zu}} eskerrak $1 {{GENEROA:$2|mutilarena|neskarena|haiena}}agatik oharra.",
+ "flow-thanks-thanked-notice": "{{GENDER:$3|Zu}} eskerrak $1 {{GENDER:$2|mutilarena|neskarena|haiena}}agatik oharra.",
"notification-flow-thanks-post-link": "Zure iruzkina"
}
diff --git a/Thanks/i18n/fa.json b/Thanks/i18n/fa.json
index 5aed8f5b..eb0308a2 100644
--- a/Thanks/i18n/fa.json
+++ b/Thanks/i18n/fa.json
@@ -1,47 +1,51 @@
{
"@metadata": {
"authors": [
+ "4nn1l2",
"A.R.Rostamzade",
+ "Alirezaaa",
+ "Alp Er Tunqa",
+ "Americophile",
+ "Amirsara",
"Armin1392",
+ "AzorAhai",
"Dalba",
"Ebraminio",
+ "Huji",
+ "Iriman",
"Ladsgroup",
+ "Macofe",
+ "Mardetanha",
+ "Mjbmr",
"Omidh",
"Reza1615",
"ZxxZxxZ",
- "درفش کاویانی",
- "Alirezaaa",
- "Mjbmr",
- "Huji",
- "Americophile",
- "Alp Er Tunqa",
- "Macofe",
- "4nn1l2",
- "Mardetanha"
+ "درفش کاویانی"
]
},
- "thanks-desc": "پیوندی برای تشکر کاربران برای ویرایش‌ها، توضیحات و ... اضافه می‌کند.",
+ "thanks-desc": "پیوندی برای تشکر از کاربران بابت ویرایش‌ها، نظرات و غیره اضافه می‌کند.",
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|تشکر}}}}",
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|تشکر شد}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|تشکر}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|تشکر شد}}}}",
+ "thanks-button-action-cancel": "لغو",
"thanks-error-undefined": "عمل تشکر ناموفق بود (پیام خطا: $1). لطفاً دوباره تلاش کنید.",
- "thanks-error-invalid-log-id": "سیاهه ورودی‌ها یافته نشد",
- "thanks-error-invalid-log-type": "نوع سیاههٔ «$1» در فهرست سفید نوع سیاهه‌های نیست.",
- "thanks-error-log-deleted": "سیاههٔ موضوع درخواست شده، حذف شده‌است و امکان تشکر برای آن وجود ندارد.",
+ "thanks-error-invalid-log-id": "مورد سیاهه یافته نشد",
+ "thanks-error-invalid-log-type": "نوع سیاههٔ «$1» در فهرست سفید انواع سیاههٔ مجاز نیست.",
+ "thanks-error-log-deleted": "مورد سیاههٔ درخواست شده، حذف شده‌است و امکان تشکر برای آن وجود ندارد.",
"thanks-error-invalidrevision": "شناسهٔ نسخه معتبر نیست.",
- "thanks-error-revdeleted": "امکان تشکر کردن نیست، چون ویرایش حذف شده‌است.",
+ "thanks-error-revdeleted": "تشکر کردن ممکن نیست، چون ویرایش حذف شده‌است.",
"thanks-error-notitle": "امکان دریافت عنوان صفحه وجود نداشت",
"thanks-error-invalidrecipient": "گیرندهٔ معتبری پیدا نشد",
"thanks-error-invalidrecipient-bot": "از ربات‌ها نمی‌توان تشکر کرد",
"thanks-error-invalidrecipient-self": "از خودتان نمی‌توانید تشکر کنید",
"thanks-error-notloggedin": "کاربران گمنام نمی‌توانند تشکر ارسال کنند",
"thanks-error-ratelimited": "{{GENDER:$1|شما}} از محدودهٔ سرعت مجاز فراتر رفته‌اید. لطفاً کمی صبر کنید و دوباره امتحان کنید.",
- "thanks-error-api-params": "یکی از متغییرهای 'revid' یا 'logid' باید ارائه شوند.",
+ "thanks-error-api-params": "یکی از متغیرهای «revid» یا «logid» باید ارائه شوند.",
"thanks-thank-tooltip": "{{GENDER:$1|فرستادن}} پیام تشکر به این {{GENDER:$2|کاربر}}",
"thanks-thank-tooltip-no": "آگاه‌سازی تشکر از شما را {{GENDER:$1|لغو کنید}}",
"thanks-thank-tooltip-yes": "آگاه‌سازی تشکر از شما را {{GENDER:$1|بفرستید}}",
- "thanks-confirmation2": "همه تشکرها علنی هستند. {{GENDER:$1|فرستادن}} تشکر؟",
+ "thanks-confirmation2": "{{GENDER:$1|فرستادن}} تشکر علنی؟",
"thanks-thanked-notice": "{{GENDER:$3|شما}} از {{GENDER:$2|$1}} تشکر کردید.",
"thanks": "ارسال تشکر",
"thanks-submit": "ارسال تشکر",
@@ -49,35 +53,26 @@
"echo-pref-tooltip-edit-thank": "وقتی کسی از ویرایش‌های من تشکر می‌کند مرا آگاه کن.",
"echo-category-title-edit-thank": "تشکرها",
"notification-thanks-diff-link": "ویرایش‌تان",
- "notification-header-rev-thank": "$1 از {{GENDER:$4|شما}}به خاطر ویرایشتان در <strong>$3</strong> {{GENDER:$2|تشکر کرد}}.",
+ "notification-header-rev-thank": "$1 از {{GENDER:$4|شما}} به‌خاطر ویرایشتان در <strong>$3</strong> {{GENDER:$2|تشکر کرد}}.",
+ "notification-header-creation-thank": "$1 از {{GENDER:$4|شما}} به خاطر ایجاد <strong>$3</strong> {{GENDER:$2|تشکر کرد}}.",
"notification-header-log-thank": "\n$1 {{GENDER:$2|از شما}} برای عمل مرتبط با <strong>$3</strong> {{GENDER:$4|تشکر کرد}}.",
"notification-compact-header-edit-thank": "$1 از {{GENDER:$3|شما}} {{GENDER:$2|تشکر کرد}}.",
- "notification-bundle-header-rev-thank": "{{PLURAL:$1|یک نفر|$1 نفر|بیش از ۹۹ نفر}} از {{GENDER:$3|شما}} برای ویرایشتان روی <strong>$2</strong> {{PLURAL:$1|تشکر کرد|تشکر کردند|100=تشکر کردند}}.",
- "notification-bundle-header-log-thank": "{{PLURAL:$1|یک نفر|$1 نفر|100=+۹۹ نفر}} از {{GENDER:$3|شما}} برای عمل مرتبط با <strong>$2</strong> تشکر کرد/کردند.",
+ "notification-bundle-header-rev-thank": "{{PLURAL:$1|یک نفر|$1 نفر|100=بیش از ۹۹ نفر}} از {{GENDER:$3|شما}} برای ویرایشتان روی <strong>$2</strong> {{PLURAL:$1|تشکر کرد|تشکر کردند|100=تشکر کردند}}.",
+ "notification-bundle-header-log-thank": "{{PLURAL:$1|یک نفر|$1 نفر|100=بیش از ۹۹ نفر}} از {{GENDER:$3|شما}} برای عمل مرتبط با <strong>$2</strong> تشکر کرد/کردند.",
"log-name-thanks": "سیاههٔ تشکرها",
"log-description-thanks": "این فهرستی است از کاربرانی که کاربران دیگر از آن‌ها تشکر کرده‌اند.",
"logentry-thanks-thank": "$1 از {{GENDER:$4|$3}} {{GENDER:$2|تشکر کرد}}",
"logeventslist-thanks-log": "سیاههٔ تشکرها",
- "thanks-error-no-id-specified": "شناسهٔ نسخه یا سیاهه برای فرستادن تشکر را مشخص کنید.",
- "thanks-confirmation-special-log": "آيا قصد دارید که به صورت عمومی برای عمل بر روی این سیاهه تشکر کنید؟",
- "thanks-confirmation-special-rev": "آيا قصد دارید که به صورت عمومی برای این ویرایش تشکر کنید؟",
+ "thanks-error-no-id-specified": "باید شناسهٔ نسخه یا سیاهه را برای فرستادن تشکر مشخص کنید.",
+ "thanks-confirmation-special-log": "آيا قصد دارید که به صورت عمومی برای این عمل موجود در سیاهه تشکر ارسال کنید؟",
+ "thanks-confirmation-special-rev": "آيا قصد دارید که به صورت عمومی برای این ویرایش تشکر ارسال کنید؟",
"notification-link-text-view-post": "مشاهده نظر",
- "notification-link-text-view-logentry": "مشاهده سیاهه ورودی",
+ "notification-link-text-view-logentry": "مشاهدهٔ مورد سیاهه",
"thanks-error-invalidpostid": "شناسهٔ پست معتبر نیست.",
"flow-thanks-confirmation-special": "می‌خواهید برای این نظر علناً تشکر بفرستید؟",
"flow-thanks-thanked-notice": "{{GENDER:$3|شما}} از $1 بابت {{GENDER:$2|نظرش}} تشکر کردید.",
"notification-flow-thanks-post-link": "نظر شما",
"notification-header-flow-thank": "$1 از {{GENDER:$5|شما}} به خاطر نظرتان در «<strong>$3</strong>» {{GENDER:$2|تشکر کرد}}.",
"notification-compact-header-flow-thank": "$1 از {{GENDER:$3|شما}} {{GENDER:$2|تشکر کرد}}.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|یک نفر|$1 نفر|100=بیش از ۹۹ نفر}} از شما برای نظرتان در «<strong>$2</strong>» {{GENDER:$3|تشکر}} {{PLURAL:$1|کرد|کردند}}.",
- "apihelp-flowthank-description": "تشکر کردن علنی در جریان از یک نظر",
- "apihelp-flowthank-summary": "برای یک نظر در فلو، پیام تشکری ارسال کنید.",
- "apihelp-flowthank-param-postid": "UUIDی پست مشکور",
- "apihelp-flowthank-example-1": "تشکر کردن از نظر با <kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "فرستادن یک اعلان تشکر به یک ویراستار.",
- "apihelp-thank-summary": "پیام تشکری به یک ویرایشگر ارسال کنید.",
- "apihelp-thank-param-rev": "شناسهٔ نسخه‌ای که بابت آن از کسی تشکر می‌کنید یا «سیاهه» باید ارائه شود.",
- "apihelp-thank-param-log": "شناسهٔ سیاهه برای تشکر از یک نفر یا 'rev' باید ارائه شود.",
- "apihelp-thank-param-source": "رشته متنی کوتاه برای شرخ مبدأ درخواست، برای مثال <kbd>diff</kbd> یا <kbd>history</kbd>.",
- "apihelp-thank-example-1": "تشکر کردن برای نسخهٔ شناسهٔ <kbd>ID 456</kbd، با صفحهٔ تفاوت به عنوان منبع"
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|یک نفر|$1 نفر|100=بیش از ۹۹ نفر}} از شما برای نظرتان در «<strong>$2</strong>» {{GENDER:$3|تشکر}} {{PLURAL:$1|کرد|کردند}}."
}
diff --git a/Thanks/i18n/ff.json b/Thanks/i18n/ff.json
new file mode 100644
index 00000000..19bc13c9
--- /dev/null
+++ b/Thanks/i18n/ff.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ibrahima"
+ ]
+ },
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|jaar}}}}",
+ "thanks-thank-tooltip": "{{GENDER:$1|Neldu}} tintinol jaaroore faade e oo {{GENDER:$2|kuutoro}}"
+}
diff --git a/Thanks/i18n/fi.json b/Thanks/i18n/fi.json
index ad0fa14d..85eb8baa 100644
--- a/Thanks/i18n/fi.json
+++ b/Thanks/i18n/fi.json
@@ -1,14 +1,16 @@
{
"@metadata": {
"authors": [
+ "01miki10",
"Crt",
+ "Macofe",
"Nike",
"Pxos",
+ "Pyscowicz",
"Samoasambia",
"Silvonen",
"Stryn",
- "Macofe",
- "Pyscowicz"
+ "Valtlait"
]
},
"thanks-desc": "Lisää linkkejä käyttäjien kiittämistä varten heidän muokkauksistaan, kommenteistaan ynnä muusta.",
@@ -16,6 +18,9 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|kiitetty}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Kiitä}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Kiitetty}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Kiitetään}}}} käyttäjää $1…",
+ "thanks-button-action-cancel": "Peruuta",
+ "thanks-button-action-completed": "{{GENDER:$1|{{GENDER:$2|Kiitit}}}} käyttäjää $1",
"thanks-error-undefined": "Kiittäminen epäonnistui. (virhekoodi: $1) Yritä uudelleen.",
"thanks-error-invalid-log-id": "Lokitapahtumaa ei löytynyt",
"thanks-error-invalidrevision": "Sivuversion tunniste ei kelpaa.",
@@ -29,7 +34,7 @@
"thanks-thank-tooltip": "{{GENDER:$1|Lähetä}} kiitoksesi tälle {{GENDER:$2|käyttäjälle}}",
"thanks-thank-tooltip-no": "{{GENDER:$1|Älä lähetä}} kiitoksia",
"thanks-thank-tooltip-yes": "{{GENDER:$1|Lähetä}} kiitokset käyttäjälle",
- "thanks-confirmation2": "Kaikki kiitokset ovat julkisia. {{GENDER:$1|Lähetetäänkö}} kiitokset?",
+ "thanks-confirmation2": "{{GENDER:$1|Lähetetäänkö}} kiitokset julkisesti?",
"thanks-thanked-notice": "{{GENDER:$3|Kiitit}} käyttäjää {{GENDER:$2|$1}}.",
"thanks": "Lähetä kiitokset",
"thanks-submit": "Lähetä kiitokset",
@@ -38,28 +43,25 @@
"echo-category-title-edit-thank": "Kiitokset",
"notification-thanks-diff-link": "muokkauksestasi",
"notification-header-rev-thank": "$1 {{GENDER:$2|kiitti}} {{GENDER:$4|sinua}} muokkauksestasi kohteessa <strong>$3</strong>.",
+ "notification-header-creation-thank": "$1 {{GENDER:$2|kiitti}} {{GENDER:$4|sinua}} sivun <strong>$3</strong> luonnista.",
"notification-header-log-thank": "$1 {{GENDER:$2|kiitti}} {{GENDER:$4|sinua}} toiminnastasi liittyen sivuun <strong>$3</strong>.",
"notification-compact-header-edit-thank": "$1 {{GENDER:$2|kiitti}} {{GENDER:$3|sinua}}.",
"notification-bundle-header-rev-thank": "{{PLURAL:$1|Yksi henkilö|$1 ihmistä|100=99+ ihmistä}} kiitti {{GENDER:$3|sinua}} muokkauksestasi artikkelissa <strong>$2</strong>.",
+ "notification-bundle-header-log-thank": "{{PLURAL:$1|Yksi henkilö|$1 henkilöä|100=Yli 99 henkilöä}} kiitti {{GENDER:$3|sinua}} sivuun <strong>$2</strong> liittyvästä toiminnostasi.",
"log-name-thanks": "Kiitosloki",
"log-description-thanks": "Alla on luettelo niistä käyttäjistä, jotka ovat saaneet kiitoksia toisilta käyttäjiltä.",
"logentry-thanks-thank": "$1 {{GENDER:$2|kiitti}} käyttäjää {{GENDER:$4|$3}}",
"logeventslist-thanks-log": "Kiitosloki",
"thanks-error-no-id-specified": "Sinun on määritettävä sivuversio tai lokin tunnistenumero, jotta voit lähettää kiitoksia.",
+ "thanks-confirmation-special-log": "Haluatko lähettää näkyvän kiitoksen tästä lokimerkinnästä?",
+ "thanks-confirmation-special-rev": "Haluatko lähettää näkyvän kiitoksen tästä muokkauksesta?",
"notification-link-text-view-post": "Näytä kommentti",
"notification-link-text-view-logentry": "Näytä lokitapahtuma",
"thanks-error-invalidpostid": "Viestin tunnistenumero ei ole kelvollinen.",
"flow-thanks-confirmation-special": "Haluatko lähettää näkyvän kiitoksen tästä kommentista?",
"flow-thanks-thanked-notice": "{{GENDER:$3|Kiitit}} käyttäjää $1 {{GENDER:$2|hänen}} kommentistaan.",
"notification-flow-thanks-post-link": "kommentistasi",
- "notification-header-flow-thank": "$1 {{GENDER:$2|kiitti}} {{GENDER:$5|sinua}} kommentistasi aiheessa \"<strong>$3</strong>\".",
+ "notification-header-flow-thank": "$1 {{GENDER:$2|kiitti}} {{GENDER:$5|sinua}} kommentistasi aiheessa ”<strong>$3</strong>”.",
"notification-compact-header-flow-thank": "$1 {{GENDER:$2|kiitti}} {{GENDER:$3|sinua}}.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|Yksi henkilö|$1 ihmistä|100=99+ ihmistä}} kiitti {{GENDER:$3|sinua}} kommentistasi aiheessa \"<strong>$2</strong>\".",
- "apihelp-flowthank-description": "Lähetä näkyvä kiitoksesi kommentista Flow'ssa.",
- "apihelp-flowthank-param-postid": "Viestin UUID, josta kiitetään.",
- "apihelp-flowthank-example-1": "Lähetä kiitokset kommentista, jonka <kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "Lähetä kiitokset jollekulle muokkaajalle.",
- "apihelp-thank-param-rev": "Sivuversion tunnistenumero, josta kiitetään. Sinun on annettava tämä tai 'loki'.",
- "apihelp-thank-param-source": "Lyhyt merkkijono, joka kertoo pyynnön lähteestä. Esimerkiksi <kbd>diff</kbd>i tai <kbd>history</kbd>.",
- "apihelp-thank-example-1": "Lähetä kiitoksesi sivuversiosta <kbd>ID 456</kbd> niin, että lähteenä on vertailusivu"
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Yksi henkilö|$1 ihmistä|100=99+ ihmistä}} kiitti {{GENDER:$3|sinua}} kommentistasi aiheessa ”<strong>$2</strong>”."
}
diff --git a/Thanks/i18n/fit.json b/Thanks/i18n/fit.json
new file mode 100644
index 00000000..a74a9e0a
--- /dev/null
+++ b/Thanks/i18n/fit.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Palmtree222",
+ "Pyscowicz"
+ ]
+ },
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|kiitä}}}}",
+ "thanks-button-action-cancel": "Lopeta",
+ "thanks-thank-tooltip": "{{GENDER:$1|Lähätä}} kiitoksesi täle {{GENDER:$2|käyttäjäle}}"
+}
diff --git a/Thanks/i18n/fr.json b/Thanks/i18n/fr.json
index 09ca0535..51e4fcf3 100644
--- a/Thanks/i18n/fr.json
+++ b/Thanks/i18n/fr.json
@@ -4,35 +4,38 @@
"Arkanosis",
"Automatik",
"Boniface",
+ "Dereckson",
+ "Djiboun",
"Gomoko",
+ "Jdforrester",
"Jean-Frédéric",
+ "Kvardek du",
"Ltrlg",
- "Maxim21",
- "Metroitendo",
- "Rmunn",
- "Urhixidur",
- "Wyz",
- "McDutchie",
- "Dereckson",
"Macofe",
- "Djiboun",
"Mattho69",
- "Jdforrester",
- "Kvardek du",
+ "Maxim21",
+ "McDutchie",
+ "Metroitendo",
"Orlodrim",
+ "Rmunn",
"The RedBurn",
- "Wladek92",
+ "Thibaut120094",
+ "Trial",
"Trizek (WMF)",
+ "Urhixidur",
"Verdy p",
- "Trial",
- "Thibaut120094"
+ "Wladek92",
+ "Wyz"
]
},
"thanks-desc": "Ajoute des liens pour remercier les utilisateurs pour des modifications, des commentaires, etc.",
- "thanks-thank": "{{GENDER:$1|{{GENDER:$2|remercier}}}}",
+ "thanks-thank": "{{GENDER:$1|}}remercier{{GENDER:$2|}}",
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|remercié|remerciée|remercié(e)}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Remercier}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Remercié|Remerciée|Remercié(e)}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Remercie}}}} $1…",
+ "thanks-button-action-cancel": "Annuler",
+ "thanks-button-action-completed": "Vous avez {{GENDER:$1|{{GENDER:$2|remercié}}}} $1",
"thanks-error-undefined": "Échec de l’action de remerciement (code d'erreur : $1). Veuillez réessayer.",
"thanks-error-invalid-log-id": "Entrée non trouvée dans le journal",
"thanks-error-invalid-log-type": "Le type de journal '$1' n’est pas dans la liste blanche des types de journaux autorisés.",
@@ -46,10 +49,10 @@
"thanks-error-notloggedin": "Les utilisateurs anonymes ne peuvent pas envoyer de merci",
"thanks-error-ratelimited": "{{GENDER:$1|Vous}} avez dépassé votre limite de débit. Veuillez attendre un peu et réessayer.",
"thanks-error-api-params": "Il faut fournir soit le paramètre 'revid', soit 'logid'",
- "thanks-thank-tooltip": "{{GENDER:$1|Envoyer}} une notification de remerciement à {{GENDER:$2|cet utilisateur|cette utilisatrice}}",
+ "thanks-thank-tooltip": "{{GENDER:$1|}}Envoyer une notification de remerciement à cet{{GENDER:$2||te}} utilisat{{GENDER:$2|eur|rice}}",
"thanks-thank-tooltip-no": "{{GENDER:$1|Annuler}} les remerciements",
"thanks-thank-tooltip-yes": "{{GENDER:$1|Envoyer}} les remerciements",
- "thanks-confirmation2": "{{GENDER:$1|Envoyer}} publiquement des remerciements ?",
+ "thanks-confirmation2": "{{GENDER:$1|Envoyer}} publiquement des remerciements ?",
"thanks-thanked-notice": "{{GENDER:$3|Vous}} avez remercié {{GENDER:$2|$1}}.",
"thanks": "Envoyer des remerciements",
"thanks-submit": "Remercier",
@@ -68,25 +71,15 @@
"logentry-thanks-thank": "$1 {{GENDER:$2|a remercié}} {{GENDER:$4|$3}}",
"logeventslist-thanks-log": "Journal des remerciements",
"thanks-error-no-id-specified": "Vous devez spécifier un ID de révision ou de journal pour envoyer des remerciements.",
- "thanks-confirmation-special-log": "Voulez-vous envoyer publiquement des remerciements pour cette action du journal ?",
+ "thanks-confirmation-special-log": "Voulez-vous envoyer publiquement des remerciements pour cette action du journal ?",
"thanks-confirmation-special-rev": "Voulez-vous envoyer publiquement des remerciements pour cette modification ?",
"notification-link-text-view-post": "Afficher le commentaire",
"notification-link-text-view-logentry": "Afficher l’entrée du journal",
"thanks-error-invalidpostid": "L’ID de la note n’est pas valide.",
- "flow-thanks-confirmation-special": "Voulez-vous envoyer publiquement des remerciements pour ce commentaire ?",
+ "flow-thanks-confirmation-special": "Voulez-vous envoyer publiquement des remerciements pour ce commentaire ?",
"flow-thanks-thanked-notice": "{{GENDER:$3|Vous}} avez remercié $1 pour {{GENDER:$2|sa|sa|sa}} modification.",
"notification-flow-thanks-post-link": "votre commentaire",
- "notification-header-flow-thank": "{{GENDER:$2|$1}} {{GENDER:$5|vous a remercié|vous a remerciée|vous a remercié(e)}} pour votre commentaire dans « <strong>$3</strong> ».",
+ "notification-header-flow-thank": "{{GENDER:$2|$1}} {{GENDER:$5|vous a remercié|vous a remerciée|vous a remercié(e)}} pour votre commentaire dans « <strong>$3</strong> ».",
"notification-compact-header-flow-thank": "$1 {{GENDER:$2|vous}} {{GENDER:$3|a remercié|a remerciée}}.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|Une personne|$1 personnes|100=Au moins 100 personnes}} vous {{PLURAL:$1|a|ont}} {{GENDER:$3|remercié|remerciée}} pour votre commentaire sur « <strong>$2</strong> ».",
- "apihelp-flowthank-description": "Envoyer des remerciements pour un « contenu Flow ».",
- "apihelp-flowthank-summary": "Envoyer une notification publique de remerciement pour un commentaire Flow.",
- "apihelp-flowthank-param-postid": "L’UUID du message pour lequel remercier.",
- "apihelp-flowthank-example-1": "Remercier pour le commentaire ayant l’<kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "Envoyer des remerciements à un éditeur.",
- "apihelp-thank-summary": "Envoyer une notification de remerciement à un éditeur.",
- "apihelp-thank-param-rev": "ID de révision pour laquelle remercier quelqu’un. Fournir obligatoirement celui-ci ou 'log' .",
- "apihelp-thank-param-log": "ID de journal pour remercier quelqu’un. Cet ID ou 'rev' doit être fourni.",
- "apihelp-thank-param-source": "Une chaîne courte décrivant la source de la requête. Par exemple, <kbd>diff</kbd> ou <kbd>history</kbd>.",
- "apihelp-thank-example-1": "Envoyer des remerciements pour l’ID de révision <kbd>ID 456</kbd, avec la source étant une page de différence"
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Une personne|$1 personnes|100=Au moins 100 personnes}} vous {{PLURAL:$1|a|ont}} {{GENDER:$3|remercié|remerciée}} pour votre commentaire sur « <strong>$2</strong> »."
}
diff --git a/Thanks/i18n/frr.json b/Thanks/i18n/frr.json
index 12594875..f4778de5 100644
--- a/Thanks/i18n/frr.json
+++ b/Thanks/i18n/frr.json
@@ -1,8 +1,8 @@
{
"@metadata": {
"authors": [
- "Murma174",
- "Macofe"
+ "Macofe",
+ "Murma174"
]
},
"thanks-desc": "Saat ferwisangen, am brükern tu soonkin för hör bidracher",
@@ -32,12 +32,5 @@
"thanks-error-invalidpostid": "Det ID faan di bidrach as ferkiard.",
"flow-thanks-confirmation-special": "Maadst dü öfentelk en soonk för didiar komentaar schüür?",
"flow-thanks-thanked-notice": "$1 hää bööd füngen, dat dü {{GENDER:$2|sin|hör|hör}} komentaar gud fanjst.",
- "notification-flow-thanks-post-link": "dan komentaar",
- "apihelp-flowthank-description": "En öfentelk soonk-bööd för en komentaar schüür.",
- "apihelp-flowthank-param-postid": "Det UUID faan det besoonket nooracht.",
- "apihelp-flowthank-example-1": "Schüür en soonk för di komentaar mä det <kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "Schüür en soonk-bööd tu en skriiwer.",
- "apihelp-thank-param-rev": "Werjuuns-ID huar hoker för soonket woort.",
- "apihelp-thank-param-source": "En kurten beskriiwangs-tekst, t.b. <kbd>diff</kbd> of <kbd>history</kbd>.",
- "apihelp-thank-example-1": "Schüür en soonk för det werjuuns-<kbd>ID 456</kbd>, wan det am en ferskeel gongt."
+ "notification-flow-thanks-post-link": "dan komentaar"
}
diff --git a/Thanks/i18n/fy.json b/Thanks/i18n/fy.json
index c90ada16..72e9cd18 100644
--- a/Thanks/i18n/fy.json
+++ b/Thanks/i18n/fy.json
@@ -1,9 +1,63 @@
{
"@metadata": {
"authors": [
- "Robin0van0der0vliet",
- "Robin van der Vliet"
+ "PiefPafPier",
+ "Robin van der Vliet",
+ "Robin0van0der0vliet"
]
},
- "thanks-thank": "{{GENDER:$1|{{GENDER:$2|betankje}}}}"
+ "thanks-desc": "Heakket keppelings ta om meidoggers te betankjen foar bewurkings, reäksjes, ensfh.",
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|betankje}}}}",
+ "thanks-thanked": "{{GENDER:$1|{{GENDER:$2|al betanke}}}}",
+ "thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Betankje}}}}",
+ "thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Al betanke}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Betankjen}}}} $1 …",
+ "thanks-button-action-cancel": "Annulearje",
+ "thanks-button-action-completed": "Jo {{GENDER:$1|{{GENDER:$2|hawwe}}}} $1 betanke",
+ "thanks-error-undefined": "Betankjen mislearre (flaterkoade: $1). Besykje it nochris.",
+ "thanks-error-invalid-log-id": "Lochrigel net fûn",
+ "thanks-error-invalid-log-type": "Lochtype '$1' stiet net op 'e wite list fan tastiene lochtypen.",
+ "thanks-error-log-deleted": "De oanfrege lochrigel is wiske, dat der kin net foar betanke wurde.",
+ "thanks-error-invalidrevision": "Ferzjenûmer is ûnjildich.",
+ "thanks-error-revdeleted": "Kin it betankje net ferstjoere, om't de ferzje wiske is.",
+ "thanks-error-notitle": "Sidetitel koe net opfrege wurde",
+ "thanks-error-invalidrecipient": "Gjin jildige ûntfanger fûn",
+ "thanks-error-invalidrecipient-bot": "Bots kinne net betanke wurde",
+ "thanks-error-invalidrecipient-self": "Jo kinne josels net betankje",
+ "thanks-error-notloggedin": "Anonime meidoggers kinne gjin betankjes stjoere",
+ "thanks-error-ratelimited": "{{GENDER:$1|Jo}} binne oer jo frekwinsjelimyt. Wachtsje in skoftke en besykje it nochris.",
+ "thanks-error-api-params": "Of de 'revid'- ôf de 'logid'-parameter moat opjûn wurde",
+ "thanks-thank-tooltip": "Dizze {{GENDER:$2|meidogger|meidochster}} in betankje {{GENDER:$1|stjoere}}",
+ "thanks-thank-tooltip-no": "De betankmelding {{GENDER:$1|annulearje}}",
+ "thanks-thank-tooltip-yes": "De betankmelding {{GENDER:$1|ferstjoere}}",
+ "thanks-confirmation2": "Publyklik in betankje {{GENDER:$1|stjoere}}?",
+ "thanks-thanked-notice": "{{GENDER:$3|Jo}} hawwe {{GENDER:$2|$1}} betanke.",
+ "thanks": "Betankje ferstjoere",
+ "thanks-submit": "Betankje stjoere",
+ "echo-pref-subscription-edit-thank": "Betankjen foar myn bewurking",
+ "echo-pref-tooltip-edit-thank": "Meld my wannear't immen my betanket foar in bewurking dy't ik dien haw.",
+ "echo-category-title-edit-thank": "Betankjes",
+ "notification-thanks-diff-link": "jo bewurking",
+ "notification-header-rev-thank": "$1 {{GENDER:$2|hat}} {{GENDER:$4|jo}} betanke foar jo bewurking oan <strong>$3</strong>.",
+ "notification-header-creation-thank": "$1 {{GENDER:$2|hat}} {{GENDER:$4|jo}} betanke foar it oanmeitsjen fan <strong>$3</strong>.",
+ "notification-header-log-thank": "$1 {{GENDER:$2|hat}} {{GENDER:$4|jo}} betanke foar jo hanneling oangeande <strong>$3</strong>.",
+ "notification-compact-header-edit-thank": "$1 {{GENDER:$2|hat}} {{GENDER:$3|jo}} betanke.",
+ "notification-bundle-header-rev-thank": "{{PLURAL:$1|Ien persoan hat|$1 lju hawwe|100=99+ lju hawwe}} {{GENDER:$3|jo}} betanke foar jo bewurking oan <strong>$2</strong>.",
+ "notification-bundle-header-log-thank": "{{PLURAL:$1|Ien persoan hat|$1 lju hawwe|100=99+ lju hawwe}} {{GENDER:$3|jo}} betanke foar jo hanneling oangeande <strong>$2</strong>.",
+ "log-name-thanks": "Betankloch",
+ "log-description-thanks": "Hjir folget in list fan meidoggers dy't betanke binne troch oare meidoggers.",
+ "logentry-thanks-thank": "$1 {{GENDER:$2|hat}} {{GENDER:$4|$3}} betanke",
+ "logeventslist-thanks-log": "Betankloch",
+ "thanks-error-no-id-specified": "Jo moatte in ferzje- of lochnûmer opjaan om in betankje stjoere te kinnen.",
+ "thanks-confirmation-special-log": "Wolle jo publyklik in betankje stjoere foar de hanneling oangeande dit loch?",
+ "thanks-confirmation-special-rev": "Wolle jo publyklik in betankje stjoere foar dizze bewurking?",
+ "notification-link-text-view-post": "Reäksje besjen",
+ "notification-link-text-view-logentry": "Lochrigel besjen",
+ "thanks-error-invalidpostid": "Berjochtnûmer is ûnjildich.",
+ "flow-thanks-confirmation-special": "Wolle jo publyklik in betankje stjoere foar dizze reäksje?",
+ "flow-thanks-thanked-notice": "{{GENDER:$3|Jo}} hawwe $1 betanke foar {{GENDER:$2|syn|har|meidoggers}} reäksje.",
+ "notification-flow-thanks-post-link": "jo reäksje",
+ "notification-header-flow-thank": "$1 {{GENDER:$2|hat}} {{GENDER:$5|jo}} betanke foar jo reäksje yn \"<strong>$3</strong>\".",
+ "notification-compact-header-flow-thank": "$1 {{GENDER:$2|hat}} {{GENDER:$3|jo}} betanke.",
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Ien persoan hat|$1 lju hawwe|100=99+ lju hawwe}} {{GENDER:$3|jo}} betanke foar jo reäksje yn \"<strong>$2</strong>\"."
}
diff --git a/Thanks/i18n/gcr.json b/Thanks/i18n/gcr.json
index f3b84608..e655433f 100644
--- a/Thanks/i18n/gcr.json
+++ b/Thanks/i18n/gcr.json
@@ -5,5 +5,5 @@
]
},
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|grémésyé}}}}",
- "thanks-thank-tooltip": "{{GENDER:$1|Voyé}} roun notifikasyon di grémésiman à {{GENDER:$2|sa itilizatò|sa itilizatris}}"
+ "thanks-thank-tooltip": "{{GENDER:$1|Voyé}} roun notifikasyon pou roumèrsyé sa {{GENDER:$2|itilizatò|itilizatris}}"
}
diff --git a/Thanks/i18n/gd.json b/Thanks/i18n/gd.json
index 5c241103..422fb7dd 100644
--- a/Thanks/i18n/gd.json
+++ b/Thanks/i18n/gd.json
@@ -1,9 +1,9 @@
{
"@metadata": {
"authors": [
- "Sionnach",
"Akerbeltz",
- "Caoimhin"
+ "Caoimhin",
+ "Sionnach"
]
},
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|thoir taing}}}}",
diff --git a/Thanks/i18n/gl.json b/Thanks/i18n/gl.json
index 073807cb..d1557dd3 100644
--- a/Thanks/i18n/gl.json
+++ b/Thanks/i18n/gl.json
@@ -1,12 +1,12 @@
{
"@metadata": {
"authors": [
- "Toliño",
"Agremon",
- "Elisardojm",
"Banjo",
+ "Elisardojm",
+ "Iváns",
"Macofe",
- "Navhy"
+ "Toliño"
]
},
"thanks-desc": "Engade ligazóns para agradecer aos usuarios as súas edicións, comentarios etc.",
@@ -27,7 +27,7 @@
"thanks-thank-tooltip": "{{GENDER:$1|Envía}} unha notificación de agradecemento a {{GENDER:$2|este usuario|esta usuaria}}",
"thanks-thank-tooltip-no": "{{GENDER:$1|Cancelar}} a notificación de agradecemento",
"thanks-thank-tooltip-yes": "{{GENDER:$1|Enviar}} a notificación de agradecemento",
- "thanks-confirmation2": "Os agradecementos son públicos. Quere {{GENDER:$1|enviar}} un agradecemento?",
+ "thanks-confirmation2": "{{GENDER:$1|Quere enviar}} un agradecemento público?",
"thanks-thanked-notice": "{{GENDER:$3|Agradeceu}} a {{GENDER:$2|$1}}.",
"thanks": "Enviar un agradecemento",
"thanks-submit": "Enviar un agradecemento",
@@ -36,12 +36,15 @@
"echo-category-title-edit-thank": "Agradecemento",
"notification-thanks-diff-link": "a súa edición",
"notification-header-rev-thank": "$1 {{GENDER:$2|agradeceu}} {{GENDER:$4|a súa edición}} en <strong>$3</strong>.",
+ "notification-header-creation-thank": "$1 {{GENDER:$2|agradeceu}}{{GENDER:$4|che}} a creación de <strong>$3</strong>.",
+ "notification-header-log-thank": "$1 {{GENDER:$2|agradeceu}}{{GENDER:$4|che}} a túa acción relacionada con <strong>$3</strong>.",
"notification-compact-header-edit-thank": "$1 {{GENDER:$2|agradeceu}}{{GENDER:$3|che}}.",
"notification-bundle-header-rev-thank": "{{PLURAL:$1|Unha persoa|$1 persoas|100=Máis de 99 persoas}} {{GENDER:$3|agradeceron}} a túa edición en <strong>$2</strong>.",
"log-name-thanks": "Rexistro de agradecementos",
"log-description-thanks": "A continuación hai unha lista dos usuarios que recibiron agradecementos doutros usuarios.",
"logentry-thanks-thank": "$1 {{GENDER:$2|deu as grazas a}} {{GENDER:$4|$3}}",
- "thanks-error-no-id-specified": "Cómpre especificar un identificador de revisión para enviar o agradecemento.",
+ "logeventslist-thanks-log": "Rexistro de agradecementos",
+ "thanks-error-no-id-specified": "Cómpre especificar un identificador de revisión ou ID de rexistro para enviar un agradecemento.",
"notification-link-text-view-post": "Amosar o comentario",
"notification-link-text-view-logentry": "Ollar entrada do rexistro",
"thanks-error-invalidpostid": "O identificador de publicación non é válido.",
@@ -50,15 +53,5 @@
"notification-flow-thanks-post-link": "o seu comentario",
"notification-header-flow-thank": "$1 {{GENDER:$2|agradeceu}} {{GENDER:$5|o seu comentario}} en \"<strong>$3</strong>\".",
"notification-compact-header-flow-thank": "$1 {{GENDER:$2|agradeceu}}{{GENDER:$3|che}}.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|Unha persoa|$1 persoas|100=Máis de 99 persoas}} {{GENDER:$3|agradeceron}} o teu comentario en en \"<strong>$2</strong>\".",
- "apihelp-flowthank-description": "Enviar unha notificación pública de agradecemento por un comentario en Flow.",
- "apihelp-flowthank-summary": "Enviar unha notificación pública de agradecemento por un comentario en Flow.",
- "apihelp-flowthank-param-postid": "O UUID da publicación que agradecer.",
- "apihelp-flowthank-example-1": "Enviar un agradecemento ao comentario co <kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "Enviar unha notificación de agradecemento a un editor.",
- "apihelp-thank-summary": "Enviar unha notificación de agradecemento a un editor.",
- "apihelp-thank-param-rev": "Identificador (ID) da revisión a agradecer a alguén. Ten que ser fornecido este identificador, ou 'log'.",
- "apihelp-thank-param-log": "Identificador (ID) do rexisto a agradecer a alguén. Ten que ser fornecido este identificador, ou 'rev'.",
- "apihelp-thank-param-source": "Un texto breve que describa a orixe da solicitude. Por exemplo, <kbd>diff</kbd> ou <kbd>history</kbd>.",
- "apihelp-thank-example-1": "Enviar un agradecemento pola revisión con identificador <kbd>ID 456</kbd, cuxa orixe sexa unha páxina de diferenzas"
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Unha persoa|$1 persoas|100=Máis de 99 persoas}} {{GENDER:$3|agradeceron}} o teu comentario en en \"<strong>$2</strong>\"."
}
diff --git a/Thanks/i18n/gom-deva.json b/Thanks/i18n/gom-deva.json
index d43ead19..205c8a4c 100644
--- a/Thanks/i18n/gom-deva.json
+++ b/Thanks/i18n/gom-deva.json
@@ -1,8 +1,8 @@
{
"@metadata": {
"authors": [
- "Supriya kankumbikar",
"Konknni mogi 24",
+ "Supriya kankumbikar",
"The Discoverer",
"राम प्रसाद जोशी"
]
diff --git a/Thanks/i18n/gom-latn.json b/Thanks/i18n/gom-latn.json
index 5872d3da..f3965cac 100644
--- a/Thanks/i18n/gom-latn.json
+++ b/Thanks/i18n/gom-latn.json
@@ -8,10 +8,10 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|Vangdiak dinvaslam}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Dinvas}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Vangdiak dinvaslam}}}}",
- "thanks-thank-tooltip": "Hea {{GENDER:$2|Vangdiak}} dinvas diupi kollovnni {{GENDER:$1|dhad}}",
+ "thanks-thank-tooltip": "Hea {{GENDER:$2|vaporpeak}} dinvas diupi kollovnni {{GENDER:$1|dhad}}",
"thanks": "Dinvasnim dhad",
"thanks-submit": "Dinvasnim dhad",
"echo-category-title-edit-thank": "Dev borem korum",
- "notification-thanks-diff-link": "Tujem bodlop",
+ "notification-thanks-diff-link": "tujem bodol",
"logentry-thanks-thank": "$1-an {{GENDER:$4|$3}}-ak {{GENDER:$2|dinvaslem}}"
}
diff --git a/Thanks/i18n/he.json b/Thanks/i18n/he.json
index c5f4d2a0..9b26f415 100644
--- a/Thanks/i18n/he.json
+++ b/Thanks/i18n/he.json
@@ -3,9 +3,10 @@
"authors": [
"Amire80",
"Guycn2",
+ "Macofe",
"Rotemliss",
- "ערן",
- "Macofe"
+ "Steeve815",
+ "ערן"
]
},
"thanks-desc": "הוספת קישורים לאמירת \"תודה\" למשתמשים על עריכות, הערות, וכו'.",
@@ -13,6 +14,9 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|אמרת תודה}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|תודה}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|אמרת תודה}}}}",
+ "thanks-button-action-queued": "שליחת {{GENDER:$2|תודה}} אל $1",
+ "thanks-button-action-cancel": "ביטול",
+ "thanks-button-action-completed": "{{GENDER:$1|{{GENDER:$2|הודית}}}} למשתמש $1",
"thanks-error-undefined": "פעולת תודה נכשלה (קוד שגיאה: $1). נא לנסות שוב.",
"thanks-error-invalid-log-id": "פעולת היומן לא נמצאה",
"thanks-error-invalid-log-type": "סוג היומן '$1' לא נמצא ברשימה הלבנה של סוגי היומן המותרים.",
@@ -45,28 +49,18 @@
"notification-bundle-header-log-thank": "{{PLURAL:$1|קיבלת הודעת \"תודה\"|$1 משתמשים הודו לך|100=99+ משתמשים הודו {{GENDER:$3|לך}}}} על פעולה שעשית בדף <strong>$2</strong>.",
"log-name-thanks": "יומן תודות",
"log-description-thanks": "להלן רשימת משתמשים שאנשים אחרים הודו להם.",
- "logentry-thanks-thank": "$1 {{GENDER:$2|הודה|הודתה}} ל{{GRAMMAR:תחילית|{{GENDER:$4|$3}}}}",
+ "logentry-thanks-thank": "$1 {{GENDER:$2|הודה|הודתה}} למשתמש {{GENDER:$4|$3}}",
"logeventslist-thanks-log": "יומן תודות",
"thanks-error-no-id-specified": "יש לציין מזהה גרסה או פעולת יומן כדי לשלוח תודה.",
- "thanks-confirmation-special-log": "האם ברצונך לשלוח תודה על פעולת היומן הזו באופן ציבורי?",
- "thanks-confirmation-special-rev": "האם ברצונך לשלוח תודה על העריכה הזו באופן ציבורי?",
+ "thanks-confirmation-special-log": "האם ברצונך לשלוח תודה על פעולת היומן הזאת באופן ציבורי?",
+ "thanks-confirmation-special-rev": "האם ברצונך לשלוח תודה על העריכה הזאת באופן ציבורי?",
"notification-link-text-view-post": "הצגת תגובה",
"notification-link-text-view-logentry": "הצגת רשומת יומן",
"thanks-error-invalidpostid": "מזהה הרשומה אינו תקין.",
"flow-thanks-confirmation-special": "האם ברצונך לשלוח תודה באופן ציבורי על ההערה הזאת?",
- "flow-thanks-thanked-notice": "{{GENDER:$3|הודית}} ל{{GRAMMAR:תחילית|$1}} על התגובה {{GENDER:$2|שלו|שלה}}",
+ "flow-thanks-thanked-notice": "{{GENDER:$3|הודית}} {{GENDER:$2|למשתמש|למשתמשת}} $1 על התגובה {{GENDER:$2|שלו|שלה}}",
"notification-flow-thanks-post-link": "התגובה שלך",
"notification-header-flow-thank": "$1 {{GENDER:$2|הודה|הודתה}} {{GENDER:$5|לך}} על הערתך בנושא \"<strong>$3</strong>\".",
"notification-compact-header-flow-thank": "$1 {{GENDER:$2|הודה|הודתה}} {{GENDER:$3|לך}}.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|קיבלת הודעת \"תודה\"|$1 משתמשים הודו לך|100=99+ משתמשים הודו לך}} על {{GENDER:$3|הערתך}} בנושא \"<strong>$2</strong>\".",
- "apihelp-flowthank-description": "לשלוח הודעת תודה פומבית על הערת זרימה.",
- "apihelp-flowthank-summary": "שליחת התראת תודה ציבורית עבור הערת זרימה.",
- "apihelp-flowthank-param-postid": "ה־UUID של הרשומה שעליה תישלח תודה.",
- "apihelp-flowthank-example-1": "לשלוח תודה על הערה עם <kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "שליחת הודעת תודה לעורך.",
- "apihelp-thank-summary": "שליחת התראת תודה לעורך.",
- "apihelp-thank-param-rev": "מזהה הגרסה שעליה תישלח תודה. יש לספק מזהה גרסה או מזהה של פעולת יומן.",
- "apihelp-thank-param-log": "המזהה של פעולת היומן שעליה תישלח תודה. יש לספק מזהה של פעולת יומן או מזהה גרסה.",
- "apihelp-thank-param-source": "מחרוזת קצרה שמתארת את מקור הבקשה, למשל <kbd>diff</kbd> או <kbd>history</kbd>.",
- "apihelp-thank-example-1": "שליחת תודה עבור מזהה גרסה <kbd>ID 456</kbd, שהמקור שלה הוא דף diff."
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|קיבלת הודעת \"תודה\"|$1 משתמשים הודו לך|100=99+ משתמשים הודו לך}} על {{GENDER:$3|הערתך}} בנושא \"<strong>$2</strong>\"."
}
diff --git a/Thanks/i18n/hi.json b/Thanks/i18n/hi.json
index b99dab4b..c336e452 100644
--- a/Thanks/i18n/hi.json
+++ b/Thanks/i18n/hi.json
@@ -1,14 +1,14 @@
{
"@metadata": {
"authors": [
+ "Angpradesh",
+ "Bhatakati aatma",
+ "Sachinkatiyar",
+ "Sfic",
"Shubhamkanodia",
"Siddhartha Ghai",
- "संजीव कुमार",
"राम प्रसाद जोशी",
- "Angpradesh",
- "Sfic",
- "Bhatakati aatma",
- "Sachinkatiyar"
+ "संजीव कुमार"
]
},
"thanks-desc": "सदस्यों को उनके सम्पादनों, टिप्पणियों आदि के लिए धन्यवाद देने कड़ियाँ जोड़ें।",
diff --git a/Thanks/i18n/hil.json b/Thanks/i18n/hil.json
new file mode 100644
index 00000000..1ba0d5f3
--- /dev/null
+++ b/Thanks/i18n/hil.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Pare Mo"
+ ]
+ },
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|pasalamatan}}}}"
+}
diff --git a/Thanks/i18n/hr.json b/Thanks/i18n/hr.json
index be4176ee..f579dc0b 100644
--- a/Thanks/i18n/hr.json
+++ b/Thanks/i18n/hr.json
@@ -1,12 +1,13 @@
{
"@metadata": {
"authors": [
+ "Bugoslav",
"MaGa",
+ "Macofe",
+ "Neptune, the Mystic",
"Roberta F.",
- "Teoo3",
"Srdjan m",
- "Macofe",
- "Bugoslav"
+ "Teoo3"
]
},
"thanks-desc": "Dodaje poveznice za zahvaljivanje suradnicima na njihovim uređivanjima, komentarima itd.",
@@ -14,6 +15,9 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|Zahvala je objavljena.}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Pošalji zahvalu}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Zahvala je objavljena}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Zahvaljivanje}}}} $1…",
+ "thanks-button-action-cancel": "Otkaži",
+ "thanks-button-action-completed": "Zahvalili {{GENDER:$2|ste}} {{GENDER:$1|suradniku|suradnici|suradnici/suradniku}} $1",
"thanks-error-undefined": "Zahvaljivanje nije uspjelo (kôd pogrješke: $1). Pokušajte ponovo.",
"thanks-error-invalid-log-id": "Evidencijska stavka nije pronađena",
"thanks-error-invalid-log-type": "Evidencijska vrsta »$1« nije na bijeloj listi dopuštenih vrsta evidencija.",
@@ -39,7 +43,7 @@
"echo-category-title-edit-thank": "Zahvala",
"notification-thanks-diff-link": "vaše uređivanje",
"notification-header-rev-thank": "$1 {{GENDER:$2|zahvalio|zahvalila}} je za {{GENDER:$4|Vaše}} uređivanje na stranici <strong>$3</strong>.",
- "notification-header-creation-thank": "$1 {{GENDER:$2|zahvalio|zahvalila}} je {{GENDER:$4|Vama}} za Vaše stvaranje stranice <strong>$3</strong>.",
+ "notification-header-creation-thank": "$1 {{GENDER:$2|zahvalio|zahvalila}} {{GENDER:$4|Vam}} je na stvaranju stranice <strong>$3</strong>.",
"notification-header-log-thank": "$1 {{GENDER:$2|zahvalio|zahvalila}} {{GENDER:$4|Vam}} je za Vašu radnju vezanu uz stranicu <strong>$3</strong>.",
"notification-compact-header-edit-thank": "$1 {{GENDER:$3|Vam}} je {{GENDER:$2|zahvalio|zahvalila}}.",
"notification-bundle-header-rev-thank": "{{PLURAL:$1|Jedna osoba poslala Vam je zahvalu|$1 osobe poslale su Vam zahvalu|$1 osoba poslale su Vam zahvalu|100=>&thinsp;Sto i više osoba Vam zahvaljuje}} za {{GENDER:$3|Vaše}} uređivanje na stranici <strong>$2</strong>.",
@@ -59,11 +63,5 @@
"notification-flow-thanks-post-link": "Vašem komentaru",
"notification-header-flow-thank": "$1 Vam {{GENDER:$2|je zahvalio|je zahvalila|zahvaljuje}} na {{GENDER:$5|Vašem}} komentaru u temi »<strong>$3</strong>«.",
"notification-compact-header-flow-thank": "$1 {{GENDER:$3|Vam}} šalje {{GENDER:$2|zahvalu}}.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|1=Jedna osoba zahvaljuje|$1 osoba zahvaljuje|$1 osobe zahvaljuju|$1 osoba zahvaljuju|100=99 i više osoba zahvaljuju}} {{GENDER:$3|Vam}} za Vaš komentar na »<strong>$2</strong>«.",
- "apihelp-flowthank-description": "Pošaljite javnu obavijest o zahvali za komentar Ustrojnih raspravica.",
- "apihelp-flowthank-summary": "Šalji javnu obavijest o zahvali za komentar Ustrojnih raspravica.",
- "apihelp-flowthank-param-postid": "UUID objave za koju zahvaljujete.",
- "apihelp-flowthank-example-1": "Pošalji zahvalu za komentar s <kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "Pošalji obavijest o zahvali uređivaču.",
- "apihelp-thank-summary": "Slanje obavijesti o zahvali uređivaču."
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|1=Jedna osoba zahvaljuje|$1 osoba zahvaljuje|$1 osobe zahvaljuju|$1 osoba zahvaljuju|100=99 i više osoba zahvaljuju}} {{GENDER:$3|Vam}} za Vaš komentar na »<strong>$2</strong>«."
}
diff --git a/Thanks/i18n/hsb.json b/Thanks/i18n/hsb.json
index 4e3bf530..42139b63 100644
--- a/Thanks/i18n/hsb.json
+++ b/Thanks/i18n/hsb.json
@@ -1,9 +1,9 @@
{
"@metadata": {
"authors": [
+ "J budissin",
"Michawiki",
- "Mikławš",
- "J budissin"
+ "Mikławš"
]
},
"thanks-desc": "Přidawa dźakne wotkazy historiji a wersijowym rozdźělam",
diff --git a/Thanks/i18n/hu.json b/Thanks/i18n/hu.json
index 8fb59c34..587a0885 100644
--- a/Thanks/i18n/hu.json
+++ b/Thanks/i18n/hu.json
@@ -1,18 +1,18 @@
{
"@metadata": {
"authors": [
+ "Bencemac",
+ "Csega",
+ "Dj",
+ "Macofe",
"Misibacsi",
+ "Rodrigo",
"Samat",
"Southparkfan",
- "Teemeah",
- "William915",
"Tacsipacsi",
- "Csega",
- "Dj",
+ "Teemeah",
"Tgr",
- "Macofe",
- "Rodrigo",
- "Bencemac"
+ "William915"
]
},
"thanks-desc": "Linkeket helyez el, amikkel meg lehet köszönni a szerkesztéseket, hozzászólásokat stb.",
@@ -20,6 +20,9 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|megköszönve}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Köszönet}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Megköszönve}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Köszönet küldése}}}} $1 részére...",
+ "thanks-button-action-cancel": "Mégse",
+ "thanks-button-action-completed": "{{GENDER:$1|{{GENDER:$2|Megköszönted}}}} $1-nak/nek",
"thanks-error-undefined": "A megköszönés sikertelen (hibakód: $1). Kérlek, próbáld meg újra!",
"thanks-error-invalid-log-id": "A naplóbejegyzés nem található",
"thanks-error-invalid-log-type": "A(z) „$1” naplótípus nem szerepel az engedélyezett naplótípusok listáján.",
@@ -65,15 +68,5 @@
"notification-flow-thanks-post-link": "a hozzászólásodat",
"notification-header-flow-thank": "$1 {{GENDER:$2|megköszönte}} a {{GENDER:$5|hozzászólásodat}} a(z) „<strong>$3</strong>” témában.",
"notification-compact-header-flow-thank": "$1 {{GENDER:$3|köszönetet}} {{GENDER:$2|küldött}}.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|Valaki köszönetet küldött|$1 felhasználó köszönetet küldött|100=Több mint 99 felhasználó küldött köszönetet}} a {{GENDER:$3|hozzászólásodért}} a(z) „<strong>$2</strong>” témában.",
- "apihelp-flowthank-description": "Nyilvános köszönet küldése egy Flow-hozzászólásért.",
- "apihelp-flowthank-summary": "Nyilvános köszönet küldése egy Flow-hozzászólásért.",
- "apihelp-flowthank-param-postid": "A megköszönendő hozzászólás UUID-je.",
- "apihelp-flowthank-example-1": "Az <kbd>xyz789<kbd> UUID-jű komment megköszönése",
- "apihelp-thank-description": "Köszönet küldése egy szerkesztőnek.",
- "apihelp-thank-summary": "Köszönet küldése egy szerkesztőnek.",
- "apihelp-thank-param-rev": "A megköszönendő lapváltozat-azonosító. Ezt vagy a <var>log</var> paramétert kötelező megadni.",
- "apihelp-thank-param-log": "A megköszönendő naplóbejegyzés-azonosító. Ezt vagy a <var>rev</var> paramétert kötelező megadni.",
- "apihelp-thank-param-source": "A forrás rövid megnevezése, pl. <kbd>diff</kbd> vagy <kbd>history</kbd>.",
- "apihelp-thank-example-1": "A <kbd>456</kbd>-os ID-jű lapváltozat megköszönése, ahol a köszönet forrása egy diff (változtatás) oldal"
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Valaki köszönetet küldött|$1 felhasználó köszönetet küldött|100=Több mint 99 felhasználó küldött köszönetet}} a {{GENDER:$3|hozzászólásodért}} a(z) „<strong>$2</strong>” témában."
}
diff --git a/Thanks/i18n/hy.json b/Thanks/i18n/hy.json
index 562bd89c..18889ef5 100644
--- a/Thanks/i18n/hy.json
+++ b/Thanks/i18n/hy.json
@@ -1,12 +1,13 @@
{
"@metadata": {
"authors": [
+ "Aram1985",
"Arman musikyan",
+ "Kareyac",
"Vacio",
"Xelgen",
- "Դավիթ Սարոյան",
"Աշոտ1997",
- "Aram1985"
+ "Դավիթ Սարոյան"
]
},
"thanks-desc": "Ավելացնում է «Շնորհակալ եմ» հղումը էջի պատմության և խմբագրումների տարբերությունների մեջ",
@@ -14,6 +15,7 @@
"thanks-thanked": "{{GENDER:$1|մասնակցին շնորհակալություն է հայտնված}}",
"thanks-button-thank": "{{GENDER:$1|Շնորհակալություն հայտնել}}",
"thanks-button-thanked": "{{GENDER:$1|մասնակցին շնորհակալություն է հայտնված:}}",
+ "thanks-button-action-cancel": "Չեղարկել",
"thanks-error-undefined": "Չստացվեց շնորհակալություն հայտնել։ Փորձեք կրկին։",
"thanks-error-invalidrevision": "Խմբագրման համարանիշը վավեր չէ։",
"thanks-error-ratelimited": "{{GENDER:$1|Դուք}} շատ եք շնորհակալություն հայտնել։ Սպասեք որոշ ժամանակ և նորից փորձեք։",
@@ -29,7 +31,9 @@
"log-name-thanks": "Շնորհակալությունների գրանցամատյան",
"log-description-thanks": "Ստորև «շնորհակալություներ» ստացած մասնակիցների ցանկն է։",
"logentry-thanks-thank": "$1 մասնակիցը {{GENDER:$2|շնորհակալություն է}} հայտնել {{GENDER:$4|$3}} մասնակցին",
+ "thanks-confirmation-special-rev": "Ուզո՞ւմ եք շնորհակալություն հայտնել այս խմբագրման համար:",
"notification-link-text-view-post": "Դիտել մեկնաբանությունը",
"flow-thanks-confirmation-special": "Ուզո՞ւմ եք շնորհակալություն հայտնել այս մեկնաբանման համար:",
- "notification-flow-thanks-post-link": "Ձեր մեկնաբանությունը"
+ "notification-flow-thanks-post-link": "Ձեր մեկնաբանությունը",
+ "notification-compact-header-flow-thank": "$1 մասնակիցը {{GENDER:$2|շնորհակալություն է}} հայտնել {{GENDER:$3|ձեզ}}"
}
diff --git a/Thanks/i18n/hyw.json b/Thanks/i18n/hyw.json
index 197227bf..76c7c2ba 100644
--- a/Thanks/i18n/hyw.json
+++ b/Thanks/i18n/hyw.json
@@ -1,9 +1,18 @@
{
"@metadata": {
"authors": [
+ "Azniv Stepanian",
"Rajemian"
]
},
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|շնորհակալութիւն}}}}",
- "thanks-thank-tooltip": "{{GENDER:$1|Ուղարկել}} շնորհակալական գիր մը այս {{GENDER:$2|մասնակիցին}}"
+ "thanks-button-action-cancel": "Չեղարկել",
+ "thanks-button-action-completed": "{{GENDER:$1|{{GENDER:$2|շնորհակալութիւն}}}}",
+ "thanks-thank-tooltip": "{{GENDER:$1|Ուղարկել}} շնորհակալական գիր մը այս {{GENDER:$2|մասնակիցին}}",
+ "thanks": "Շնորհակալութիւն յայտնել",
+ "echo-category-title-edit-thank": "Շնորհակալութիւն",
+ "notification-compact-header-edit-thank": "$1 մասնակիցը {{GENDER:$2|շնորհակալութիւն}} յայտնած է {{GENDER:$3|ձեզի}}։",
+ "thanks-confirmation-special-rev": "Կ'ուզէ՞ք շնորհակալութիւն յայտնել այս խմբագրումին համար։",
+ "flow-thanks-confirmation-special": "Կ'ուզէ՞ք շնորհակալութիւն յայտնել այս մեկնաբանումին համար։",
+ "notification-compact-header-flow-thank": "$1 մասնակիցը {{GENDER:$2|շնորհակալութիւն}} յայտնած է {{GENDER:$3|ձեզի}}։"
}
diff --git a/Thanks/i18n/id.json b/Thanks/i18n/id.json
index 3572520f..9c91d2c1 100644
--- a/Thanks/i18n/id.json
+++ b/Thanks/i18n/id.json
@@ -1,15 +1,15 @@
{
"@metadata": {
"authors": [
- "Iwan Novirion",
- "William Surya Permana",
- "Raynasution",
"Bennylin",
+ "Gombang",
+ "Iwan Novirion",
"Kenrick95",
- "WongKentir",
"Macofe",
"Rachmat04",
- "Gombang"
+ "Raynasution",
+ "William Surya Permana",
+ "WongKentir"
]
},
"thanks-desc": "Menambahkan pranala untuk berterima kasih kepada pengguna atas suntingan, komentar, dll.",
@@ -18,19 +18,23 @@
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Terima kasih}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Terima kasih}}}}",
"thanks-error-undefined": "Kiriman terima kasih gagal (kode galat: $1). Mohon coba kembali.",
+ "thanks-error-invalid-log-id": "Entri log tidak ditemukan",
+ "thanks-error-invalid-log-type": "Log jenis '$1' tidak ada dalam daftar putih jenis log yang diizinkan.",
+ "thanks-error-log-deleted": "Entri log yang diminta telah dihapus dan tidak dapat diberi terima kasih.",
"thanks-error-invalidrevision": "ID revisi tidak sah.",
- "thanks-error-revdeleted": "Revisi telah dihapus",
+ "thanks-error-revdeleted": "Tidak dapat mengirim terima kasih karena revisi telah dihapus.",
"thanks-error-notitle": "Judul halaman tidak dapat ditampilkan",
"thanks-error-invalidrecipient": "Tidak dapat menemukan penerima sah",
"thanks-error-invalidrecipient-bot": "Bot tidak dapat menerima terima kasih",
"thanks-error-invalidrecipient-self": "Anda tidak dapat mengirimkan terima kasih untuk diri sendiri",
"thanks-error-notloggedin": "Pengguna anonim tidak dapat mengirimkan terima kasih",
"thanks-error-ratelimited": "{{GENDER:$1|Anda}} telah melampaui batas Anda. Silakan tunggu beberapa saat dan coba lagi.",
+ "thanks-error-api-params": "Parameter 'revid' atau 'logid' harus diberikan",
"thanks-thank-tooltip": "{{GENDER:$1|Kirim}} sebuah pemberitahuan terima kasih kepada {{GENDER:$2|pengguna}} ini",
"thanks-thank-tooltip-no": "{{GENDER:$1|Batalkan}} notifikasi terima kasih",
"thanks-thank-tooltip-yes": "{{GENDER:$1|Kirimkan}} notifikasi terima kasih",
- "thanks-confirmation2": "{{GENDER:$1|Kirimkan}} ucapan terima kasih publik atas suntingan ini?",
- "thanks-thanked-notice": "{{GENDER:$3|Anda}} berterima kasih kepada $1 untuk suntingan{{GENDER:$2|nya|nya|nya}}",
+ "thanks-confirmation2": "{{GENDER:$1|Kirimkan}} ucapan terima kasih?",
+ "thanks-thanked-notice": "{{GENDER:$3|Anda}} berterima kasih kepada {{GENDER:$2|$1}}",
"thanks": "Kirim ucapan terima kasih",
"thanks-submit": "Kirim ucapan terima kasih",
"echo-pref-subscription-edit-thank": "Berterima kasih kepada saya atas suntingan saya",
@@ -38,27 +42,25 @@
"echo-category-title-edit-thank": "Terima kasih",
"notification-thanks-diff-link": "suntingan Anda",
"notification-header-rev-thank": "$1 {{GENDER:$2|mengucapkan terima kasih}} kepada {{GENDER:$4|Anda}} atas suntingan di <strong>$3</strong>.",
+ "notification-header-creation-thank": "$1 {{GENDER:$2|berterima kasih kepada}} {{GENDER:$4|Anda}} atas pembuatan <strong>$3</strong>.",
+ "notification-header-log-thank": "$1 {{GENDER:$2|berterima kasih kepada}} {{GENDER:$4|Anda}} atas aksi Anda terkait dengan <strong>$3</strong>.",
"notification-compact-header-edit-thank": "$1 {{GENDER:$2|mengirimkan terima kasih}} kepada {{GENDER:$3|Anda}}.",
"notification-bundle-header-rev-thank": "{{PLURAL:$1|Satu orang|$1 orang|100=99+ orang}} berterima kasih kepada {{GENDER:$3|Anda}} atas suntingan di <strong>$2</strong>.",
+ "notification-bundle-header-log-thank": "{{PLURAL:$1|Satu orang|$1 orang|100=99+ orang}} berterima kasih kepada {{GENDER:$3|Anda}} atas tindakan Anda terkait dengan <strong>$2</strong>/.",
"log-name-thanks": "Catatan ucapan terima kasih",
"log-description-thanks": "Di bawah ini adalah daftar pengguna yang menerima terima kasih dari pengguna lain.",
"logentry-thanks-thank": "$1 {{GENDER:$2|berterima kasih}} kepada {{GENDER:$4|$3}}",
- "thanks-error-no-id-specified": "Anda harus menentukan perubahan ID untuk mengirimkan ucapan terima kasih.",
+ "logeventslist-thanks-log": "Log terima kasih",
+ "thanks-error-no-id-specified": "Anda harus menentukan ID perubahan ataulog untuk mengirimkan ucapan terima kasih.",
+ "thanks-confirmation-special-log": "Apakah Anda ingin mengirimkan ucapan terima kasih publik atas aksi log ini?",
+ "thanks-confirmation-special-rev": "Apakah Anda ingin mengirimkan ucapan terima kasih secara publik atas suntingan ini?",
"notification-link-text-view-post": "Tampilkan komentar",
+ "notification-link-text-view-logentry": "Tinjau entri log",
"thanks-error-invalidpostid": "ID posting tidak sah.",
"flow-thanks-confirmation-special": "Apakah Anda ingin mengirimkan ucapan terima kasih publik atas komentar ini?",
"flow-thanks-thanked-notice": "{{GENDER:$3|Anda}} berterima kasih kepada $1 atas komentar{{GENDER:$2|nya|nya|nya}}.",
"notification-flow-thanks-post-link": "komentar Anda",
"notification-header-flow-thank": "$1 {{GENDER:$2|mengucapkan terima kasih}} kepada {{GENDER:$5|Anda}} atas komentar di \"<strong>$3</strong>\".",
"notification-compact-header-flow-thank": "$1 {{GENDER:$2|mengirimkan terima kasih}} kepada {{GENDER:$3|Anda}}.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|Satu orang|$1 orang|100=99+ orang}} berterima kasih kepada {{GENDER:$3|Anda}} atas komentar di \"<strong>$2</strong>\".",
- "apihelp-flowthank-description": "Kirim pemberitahuan terima kasih publik untuk komentar Flow.",
- "apihelp-flowthank-summary": "Kirim pemberitahuan terima kasih publik untuk komentar Flow.",
- "apihelp-flowthank-param-postid": "UUID dari kiriman yang ingin diberikan ucapan terima kasih.",
- "apihelp-flowthank-example-1": "Kirim ucapan terima kasih atas komentar dengan <kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "Kirim pemberitahuan ucapan terima kasih kepada penyunting.",
- "apihelp-thank-summary": "Kirim pemberitahuan terima kasih publik kepada seorang penyunting.",
- "apihelp-thank-param-rev": "ID Revisi yang ingin diberikan ucapan terima kasih.",
- "apihelp-thank-param-source": "Sebuah kata singkat yang menjelaskan sumber permintaan, misalnya <kbd>diff</kbd> (beda) arau <kbd>history</kbd> (riwayat).",
- "apihelp-thank-example-1": "Kirimkan terima kasih untuk revisi <kbd>ID 456</kbd>, dengan sumber menjadi halaman perbedaannya"
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Satu orang|$1 orang|100=99+ orang}} berterima kasih kepada {{GENDER:$3|Anda}} atas komentar di \"<strong>$2</strong>\"."
}
diff --git a/Thanks/i18n/ie.json b/Thanks/i18n/ie.json
new file mode 100644
index 00000000..9cab8772
--- /dev/null
+++ b/Thanks/i18n/ie.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "OIS"
+ ]
+ },
+ "thanks-thank": "mersiar"
+}
diff --git a/Thanks/i18n/inh.json b/Thanks/i18n/inh.json
index 431784a8..07b18e78 100644
--- a/Thanks/i18n/inh.json
+++ b/Thanks/i18n/inh.json
@@ -2,8 +2,8 @@
"@metadata": {
"authors": [
"Adam-Yourist",
- "Tusholi",
- "ElizaMag"
+ "ElizaMag",
+ "Tusholi"
]
},
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|баркал áла}}}}",
diff --git a/Thanks/i18n/io.json b/Thanks/i18n/io.json
index 62bcb042..ae7199b7 100644
--- a/Thanks/i18n/io.json
+++ b/Thanks/i18n/io.json
@@ -5,10 +5,24 @@
]
},
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|dankar}}}}",
+ "thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Dankar}}}}",
+ "thanks-button-action-cancel": "Nuligar",
"thanks-thank-tooltip": "{{GENDER:$1|Sendez}} avizo 'danko' ad ica {{GENDER:$2|uzero}}",
- "thanks-confirmation2": "Sendar {{GENDER:$1|publika}} danki?",
- "echo-category-title-edit-thank": "Danki",
- "notification-header-rev-thank": "$1 {{GENDER:$2|Dankis}} {{GENDER:$4|vu}} pro vua redakto en <strong>$3</strong>.",
+ "thanks-thank-tooltip-yes": "{{GENDER:$1|Sendar}} la danko",
+ "thanks-confirmation2": "Dankar {{GENDER:$1|publike}}?",
+ "thanks-thanked-notice": "{{GENDER:$3|Vu}} dankis {{GENDER:$2|$1}} publike.",
+ "thanks": "Dankar",
+ "echo-category-title-edit-thank": "Dankar",
+ "notification-header-rev-thank": "$1 {{GENDER:$2|dankis}} {{GENDER:$4|vu}} pro vua redakto en <strong>$3</strong>.",
+ "notification-header-creation-thank": "$1 {{GENDER:$2|dankis}} {{GENDER:$4|vu}} pro vua kreo di <strong>$3</strong>.",
+ "notification-header-log-thank": "$1 {{GENDER:$2|dankis}} {{GENDER:$4|vu}} pro vua agado pri <strong>$3</strong>.",
+ "notification-bundle-header-rev-thank": "{{PLURAL:$1|1 persono|$1 personi|100=plu kam 99 personi}} dankis {{GENDER:$3|vu}} pro vua redakto en <strong>$2</strong>.",
+ "notification-bundle-header-log-thank": "{{PLURAL:$1|Ulu|$1 personi|100= plu kam 99 personi}} dankis {{GENDER:$3|vu}} pro vua agado pri <strong>$2</strong>.",
"log-name-thanks": "Protokolo pri danko",
- "notification-link-text-view-post": "Videz komento"
+ "logentry-thanks-thank": "$1 {{GENDER:$2|dankis}} a {{GENDER:$4|$3}}",
+ "notification-link-text-view-post": "Videz komento",
+ "flow-thanks-confirmation-special": "Ka vu deziras dankar publike ca komento?",
+ "notification-header-flow-thank": "$1 {{GENDER:$2|dankis}} {{GENDER:$5|vu}} pro vua komento pri «<strong>$3</strong>».",
+ "notification-compact-header-flow-thank": "$1 {{GENDER:$2|dankis}} {{GENDER:$3|vu}}.",
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|1 persono|$1 personi|100=plu kam 99 personi}} dankis {{GENDER:$3|vu}} pro vua komento pri \"<strong>$2</strong>\"."
}
diff --git a/Thanks/i18n/is.json b/Thanks/i18n/is.json
index aff867d1..b7e3400a 100644
--- a/Thanks/i18n/is.json
+++ b/Thanks/i18n/is.json
@@ -1,9 +1,10 @@
{
"@metadata": {
"authors": [
+ "Macofe",
"Maxí",
"Snævar",
- "Macofe"
+ "Sveinn í Felli"
]
},
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|þakka}}}}",
@@ -12,7 +13,7 @@
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Þakkað}}}}",
"thanks-error-undefined": "Ekki tókst að skila þakkarboðinu (villukóði: $1). Reyndu aftur.",
"thanks-error-invalidrevision": "Breytingareinkennið er ógilt.",
- "thanks-error-revdeleted": "Breytingunni hefur verið eytt",
+ "thanks-error-revdeleted": "Tókst ekki að senda þakkir því útgáfunni hefur verið eytt.",
"thanks-error-notitle": "Ekki tókst að sækja titil síðunnar",
"thanks-error-invalidrecipient": "Enginn gildur viðtakandi fannst",
"thanks-error-invalidrecipient-bot": "Ekki er hægt þakka vélmennum",
@@ -21,8 +22,8 @@
"thanks-thank-tooltip": "{{GENDER:$1|Senda}} þakkar skilaboð á þennan {{GENDER:$2|notanda}}",
"thanks-thank-tooltip-no": "{{GENDER:$1|Hætta við}} þakkarboðinu",
"thanks-thank-tooltip-yes": "{{GENDER:$1|Senda}} þakkarboðið",
- "thanks-confirmation2": "Öll þakkarboð eru opinber. {{GENDER:$1|Senda}} þakkarboðið?",
- "thanks-thanked-notice": "{{GENDER:$3|Þú}} hefur þakkað $1 fyrir breytingu {{GENDER:$2|sína}}.",
+ "thanks-confirmation2": "{{GENDER:$1|Senda}} þakkirnar opinberlega?",
+ "thanks-thanked-notice": "{{GENDER:$3|Þú}} hefur þakkað {{GENDER:$2|$1}} fyrir.",
"thanks": "Senda þakkaboð",
"thanks-submit": "Senda þakkaboð",
"echo-pref-subscription-edit-thank": "Þakkar mér fyrir breytingu mína",
diff --git a/Thanks/i18n/it.json b/Thanks/i18n/it.json
index 262cc6fe..15bb657f 100644
--- a/Thanks/i18n/it.json
+++ b/Thanks/i18n/it.json
@@ -1,16 +1,16 @@
{
"@metadata": {
"authors": [
+ "Alexmar983",
"Beta16",
+ "Dragonòt",
"Elitre",
"FRacco",
- "Macofe",
- "Dragonòt",
- "Valepert",
- "Alexmar983",
"Fringio",
+ "Horcrux92",
+ "Macofe",
"Sakretsu",
- "Horcrux92"
+ "Valepert"
]
},
"thanks-desc": "Aggiunge un collegamento per ringraziare gli utenti per modifiche, commenti, ecc.",
@@ -18,8 +18,13 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|ringraziato|ringraziata|ringraziato/a}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Ringrazia}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Ringraziato|Ringraziata|Ringraziato/a}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Ringraziando}}}} $1…",
+ "thanks-button-action-cancel": "Annulla",
+ "thanks-button-action-completed": "Hai {{GENDER:$1|{{GENDER:$2|ringraziato}}}} $1",
"thanks-error-undefined": "Errore durante ringraziamento (codice errore: $1). Riprova ancora.",
"thanks-error-invalidrevision": "L'ID versione non è valido.",
+ "thanks-error-invalidrecipient-bot": "I bot non possono essere ringraziati",
+ "thanks-error-invalidrecipient-self": "Non puoi ringraziare te stesso",
"thanks-error-ratelimited": "{{GENDER:$1|Hai superato}} il limite massimo di ringraziamenti. Aspetta un po' di tempo e riprova.",
"thanks-thank-tooltip": "{{GENDER:$1|Invia}} una notifica di ringraziamento a {{GENDER:$2|questo|questa}} utente",
"thanks-thank-tooltip-no": "{{GENDER:$1|Annulla}} la notifica di ringraziamento",
@@ -52,13 +57,5 @@
"notification-flow-thanks-post-link": "il tuo commento",
"notification-header-flow-thank": "$1 {{GENDER:$5|ti}} {{GENDER:$2|ha ringraziato}} per il tuo commento in \"<strong>$3</strong>\".",
"notification-compact-header-flow-thank": "$1 {{GENDER:$3|ti}} {{GENDER:$2|ha ringraziato}}.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|Una persona ti ha|$1 persone ti hanno|100=Più di 99 persone ti hanno}} {{GENDER:$3|ringraziato|ringraziata|ringraziato/a}} per il tuo commento in \"<strong>$2</strong>\".",
- "apihelp-flowthank-description": "Invia una notifica pubblica di ringraziamento per un commento Flow.",
- "apihelp-flowthank-summary": "Invia una notifica pubblica di ringraziamento per un commento Flow.",
- "apihelp-flowthank-param-postid": "L'UUID del messaggio per cui ringraziare.",
- "apihelp-flowthank-example-1": "Ringrazia per il commento con <kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "Invia una notifica di ringraziamento a un contributore.",
- "apihelp-thank-param-rev": "ID della versione per cui ringraziare qualcuno. Questo o 'log' deve essere fornito",
- "apihelp-thank-param-source": "Una breve stringa che descrive l'origine della richiesta. Per esempio, <kbd>diff</kbd> o <kbd>history</kbd>.",
- "apihelp-thank-example-1": "Invia un ringraziamento per la versione <kbd>ID 456</kbd>, con la sorgente di una pagina confronto"
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Una persona ti ha|$1 persone ti hanno|100=Più di 99 persone ti hanno}} {{GENDER:$3|ringraziato|ringraziata|ringraziato/a}} per il tuo commento in \"<strong>$2</strong>\"."
}
diff --git a/Thanks/i18n/ja.json b/Thanks/i18n/ja.json
index 5f8c53b9..d2d529a0 100644
--- a/Thanks/i18n/ja.json
+++ b/Thanks/i18n/ja.json
@@ -1,18 +1,19 @@
{
"@metadata": {
"authors": [
+ "2nd-player",
+ "Afaz",
"Fryed-peach",
+ "Kkairri",
+ "Macofe",
+ "Marine-Blue",
+ "Omotecho",
+ "Otokoume",
"Penn Station",
"Shirayuki",
- "2nd-player",
"Sujiniku",
- "Otokoume",
- "Marine-Blue",
- "Macofe",
- "Omotecho",
- "Takot",
- "Kkairri",
- "Suyama"
+ "Suyama",
+ "Takot"
]
},
"thanks-desc": "利用者の編集やコメントなどに感謝を示すリンクを追加する",
@@ -20,18 +21,23 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|感謝を示しました}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|感謝}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|感謝を示しました}}}}",
+ "thanks-button-action-queued": "$1に{{GENDER:$1|{{GENDER:$2|感謝を示しています}}}}…",
+ "thanks-button-action-cancel": "キャンセル",
+ "thanks-button-action-completed": "$1に{{GENDER:$1|{{GENDER:$2|感謝を示しました}}}}",
"thanks-error-undefined": "感謝の操作に失敗しました (エラーコード: $1)。もう一度やり直してください。",
"thanks-error-invalidrevision": "版 ID が無効です。",
"thanks-error-revdeleted": "指定した版が削除されたため感謝を送れません",
"thanks-error-notitle": "ページ名を取得できませんでした",
+ "thanks-error-invalidrecipient": "無効な対象者",
"thanks-error-invalidrecipient-bot": "ボットに感謝することはできません",
"thanks-error-invalidrecipient-self": "自分自身を感謝することはできません",
"thanks-error-notloggedin": "匿名利用者に感謝することはできません",
"thanks-error-ratelimited": "{{GENDER:$1|}}速度制限を超えました。しばらくしてからもう一度やり直してください。",
+ "thanks-error-api-params": "「revid」または「logid」のいずれかを指定してください",
"thanks-thank-tooltip": "この{{GENDER:$2|利用者}}に感謝の通知を{{GENDER:$1|送信する}}",
"thanks-thank-tooltip-no": "感謝の通知の送信を{{GENDER:$1|取り消し}}ました。",
"thanks-thank-tooltip-yes": "感謝の通知を{{GENDER:$1|送信}}しました。",
- "thanks-confirmation2": "感謝はすべて公開です。感謝を{{GENDER:$1|示しますか}}?",
+ "thanks-confirmation2": "公開の場で感謝を{{GENDER:$1|示しますか}}?",
"thanks-thanked-notice": "{{GENDER:$3|あなた}}から{{GENDER:$2|$1}}の編集に感謝を示しました。",
"thanks": "感謝を示す",
"thanks-submit": "感謝を示す",
@@ -40,9 +46,11 @@
"echo-category-title-edit-thank": "感謝",
"notification-thanks-diff-link": "あなたの編集",
"notification-header-rev-thank": "$1 が <strong>$3</strong> での{{GENDER:$4|あなた}}の編集に{{GENDER:$2|感謝}}を示しました。",
+ "notification-header-creation-thank": "$1が<strong>$3</strong>の作成で{{GENDER:$4|あなた}}に{{GENDER:$2|感謝}}を示しました。",
"notification-header-log-thank": "$1が<strong>$3</strong>での{{GENDER:$4|あなた}}の編集に{{GENDER:$2|感謝}}を示しました。",
"notification-compact-header-edit-thank": "$1 が{{GENDER:$3|あなた}}に{{GENDER:$2|感謝}}を示しました。",
"notification-bundle-header-rev-thank": "{{PLURAL:$1|1人|$1人|100=99人以上}}が <strong>$2</strong> での{{GENDER:$3|あなた}}の編集に感謝を示しています。",
+ "notification-bundle-header-log-thank": "{{PLURAL:$1|1人|$1人|100=99人以上}}が <strong>$2</strong> での{{GENDER:$3|あなた}}の操作に感謝を示しています。",
"log-name-thanks": "感謝記録",
"log-description-thanks": "以下に、他の利用者から感謝を示された利用者を列挙します。",
"logentry-thanks-thank": "$1 が {{GENDER:$4|$3}} に{{GENDER:$2|感謝を示しました}}",
@@ -57,6 +65,5 @@
"notification-flow-thanks-post-link": "あなたのコメント",
"notification-header-flow-thank": "$1 が 話題「<strong>$3</strong>」での{{GENDER:$5|あなた}}のコメントに{{GENDER:$2|感謝}}を示しました。",
"notification-compact-header-flow-thank": "$1 が{{GENDER:$3|あなた}}に{{GENDER:$2|感謝}}を示しました。",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|1人|$1人|100=99人以上}}が話題「<strong>$2</strong>」での{{GENDER:$3|あなた}}のコメントに感謝を示しています。",
- "apihelp-flowthank-description": "以下のコメントに対して感謝の通知(記録は公開されます)を送信する。"
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|1人|$1人|100=99人以上}}が話題「<strong>$2</strong>」での{{GENDER:$3|あなた}}のコメントに感謝を示しています。"
}
diff --git a/Thanks/i18n/jv.json b/Thanks/i18n/jv.json
index bed034d1..bc9012e1 100644
--- a/Thanks/i18n/jv.json
+++ b/Thanks/i18n/jv.json
@@ -1,24 +1,32 @@
{
"@metadata": {
"authors": [
- "NoiX180"
+ "Diki Ananta",
+ "NoiX180",
+ "Sumbukompor"
]
},
- "thanks-desc": "Nambah pranala atur panuwun marang panganggo awit besutané, tanggapané, lsp.",
+ "thanks-desc": "Nambah pranala atur panuwun marang naraguna awit besutané, tanggapané, lsp.",
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|matur nuwun}}}}",
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|wis matur nuwun}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Matur nuwun}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Wis matur nuwun}}}}",
- "thanks-error-undefined": "Tumindak atur panuwun wurung (kodhe masalah: $1). Mangga jajalen manèh.",
- "thanks-error-invalidrevision": "ID révisian ora sah.",
- "thanks-error-revdeleted": "Révisian wis dibusak",
- "thanks-error-notitle": "Sesirah kaca ora bisa dijupuk",
- "thanks-error-invalidrecipient": "Ora ana rèsipièn sing sah",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Ngaturi panuwun}}}} $1…",
+ "thanks-button-action-cancel": "Wurung",
+ "thanks-button-action-completed": "Kowé {{GENDER:$1|{{GENDER:$2|matur nuwuni}}}} $1",
+ "thanks-error-undefined": "Laku atur panuwun wurung (kodhe masalah: $1). Mangga jajalen manèh.",
+ "thanks-error-invalid-log-id": "Èntri log ora tinemu",
+ "thanks-error-invalid-log-type": "Jinis log '$1' ora ana ing pratélan putih jinis-jinis log kang kaéntukaké.",
+ "thanks-error-log-deleted": "Èntri log kang kaarepaké wis kabusek lan ora bisa kawènèhan atur panuwun.",
+ "thanks-error-invalidrevision": "ID révisi ora trep.",
+ "thanks-error-revdeleted": "Ora bisa ngirim atur panuwun amarga révisi wis kabusek.",
+ "thanks-error-notitle": "Sesirah kaca ora bisa kajupuk",
+ "thanks-error-invalidrecipient": "Ora ana kang nampa kang trep",
"thanks-error-invalidrecipient-bot": "Ora bisa matur nuwun marang bot",
- "thanks-error-invalidrecipient-self": "Panjenengan ora bisa matur nuwun marang panjenengan dhéwé",
- "thanks-error-notloggedin": "Panganggo anonim ora bisa ngirimi atur panuwun",
- "thanks-error-ratelimited": "{{GENDER:$1|Panjenengan}} wis munjuli sing dicumpi kanggo panjenengan. Entènana sadhéla nuli jajalana manèh.",
- "thanks-thank-tooltip": "{{GENDER:$1|Kirim}} tandha panuwun marang {{GENDER:$2|panganggo}} iki",
+ "thanks-error-invalidrecipient-self": "Kowé ora bisa matur nuwun marang kowé dhéwé",
+ "thanks-error-notloggedin": "Naraguna anonim ora bisa ngirimi atur panuwun",
+ "thanks-error-ratelimited": "{{GENDER:$1|Kowé}} wis munjuli kang kacumpi kanggo kowé. Entènana sadhéla tumuli jajalana manèh.",
+ "thanks-thank-tooltip": "{{GENDER:$1|Kirim}} tandha panuwun marang {{GENDER:$2|naraguna}} iki",
"thanks-thank-tooltip-no": "{{GENDER:$1|Wurung}} ngirim pariwara atur panuwun",
"thanks-thank-tooltip-yes": "{{GENDER:$1|Kirim}} pariwara atur panuwun",
"thanks-confirmation2": "{{GENDER:$1|Kirim}} atur panuwun tinarbuka tumrap besutan iki?",
@@ -29,17 +37,16 @@
"echo-pref-tooltip-edit-thank": "Pariwarani aku nalika ana sing matur nuwun awit besutan sing dakgawé.",
"echo-category-title-edit-thank": "Matur nuwun",
"notification-thanks-diff-link": "besutanmu",
- "notification-header-rev-thank": "$1 {{GENDER:$2|matur nuwun}} {{GENDER:$4|marang panjenengan}} awit besutané panjenengan ing <strong>$3</strong>.",
- "notification-compact-header-edit-thank": "$1 {{GENDER:$2|matur nuwun}} {{GENDER:$3|marang panjenengan}}.",
- "notification-bundle-header-rev-thank": "{{PLURAL:$1|Sawong|$1 wong|100=99+ wong}} matur nuwun {{GENDER:$3|marang panjenengan}} awit besutané panjenengan ing <strong>$2</strong>.",
+ "notification-header-rev-thank": "$1 {{GENDER:$2|matur nuwun}} {{GENDER:$4|marang kowé}} awit besutanmu ing <strong>$3</strong>.",
+ "notification-compact-header-edit-thank": "$1 {{GENDER:$2|matur nuwun}} {{GENDER:$3|marang kowé}}.",
+ "notification-bundle-header-rev-thank": "{{PLURAL:$1|Sawong|$1 wong|100=99+ wong}} matur nuwun {{GENDER:$3|marang kowé}} awit besutanmu ing <strong>$2</strong>.",
"log-name-thanks": "Log atur panuwun",
- "log-description-thanks": "Ing ngisor iki pratélan panganggo sing katur panuwun déning panganggo liya.",
+ "log-description-thanks": "Ing ngisor iki pratélan naraguna sing katur panuwun déning naraguna liya.",
"logentry-thanks-thank": "$1 {{GENDER:$2|matur nuwun}} marang {{GENDER:$4|$3}}",
- "thanks-error-no-id-specified": "Panjenengan kudu nemtokaké ID révisian saperlu ngirim atur panuwun.",
+ "thanks-error-no-id-specified": "Kowé kudu nglebokaké ID log utawa révisi saperlu ngirim atur panuwun.",
"notification-link-text-view-post": "Deleng tanggepan",
"thanks-error-invalidpostid": "ID kiriman ora sah.",
"flow-thanks-confirmation-special": "Arep ngirim atur panuwun tinarbuka tumrap tanggepan iki?",
- "flow-thanks-thanked-notice": "{{GENDER:$3|Panjenengan}} matur nuwun marang $1 awit tanggepan{{GENDER:$2|é}}.",
- "notification-flow-thanks-post-link": "tanggapané panjenengan",
- "apihelp-flowthank-description": "Kirim pariwara atur panuwun tinarbuka tumrap tanggepan Flow."
+ "flow-thanks-thanked-notice": "{{GENDER:$3|Kowé}} matur nuwun marang $1 awit tanggepan{{GENDER:$2|é}}.",
+ "notification-flow-thanks-post-link": "tanggapanmu"
}
diff --git a/Thanks/i18n/ka.json b/Thanks/i18n/ka.json
index 8210e62b..14b7bfdc 100644
--- a/Thanks/i18n/ka.json
+++ b/Thanks/i18n/ka.json
@@ -3,10 +3,10 @@
"authors": [
"BRUTE",
"David1010",
- "Tokoko",
+ "Macofe",
"Nodar Kherkheulidze",
"Otogi",
- "Macofe"
+ "Tokoko"
]
},
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|მადლობა}}}}",
diff --git a/Thanks/i18n/kjp.json b/Thanks/i18n/kjp.json
index 3183cb0e..6c60373f 100644
--- a/Thanks/i18n/kjp.json
+++ b/Thanks/i18n/kjp.json
@@ -4,6 +4,11 @@
"Rul1902"
]
},
- "thanks-thank": "{{GENDER:$1|{{GENDER:$2|ဆ်ုခၠုံး}}}}",
- "thanks-thank-tooltip": "ယိုဝ်{{GENDER:$2|ဆ်ုသုံ့က်ုဆာ}}အိုဝ် ဆ်ုခၠုံးဆ်ုခၠါင် {{GENDER:$1|သုံ့ဖှ်ေဝေ့ဆေဝ်ႋလှ်}}"
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|ဆ်ုဂုဏ်}}}}",
+ "thanks-thanked": "{{GENDER:$1|{{GENDER:$2|ဆ်ုဂုဏ်ထဝေ့}}}}",
+ "thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|ဆ်ုဂုဏ်}}}}",
+ "thanks-button-thanked": "\n{{GENDER:$1|{{GENDER:$2|ဆ်ုဂုဏ်ဝေ့}}}}",
+ "thanks-thank-tooltip": "ယိုဝ်{{GENDER:$2|ဆ်ုသုံ့က်ုဆာ}}အိုဝ် ဆ်ုခၠုံးဆ်ုခၠါင် {{GENDER:$1|သုံ့ဖှ်ေဝေ့ဆေဝ်ႋလှ်}}",
+ "echo-category-title-edit-thank": "ဆ်ုဂုဏ်လ်ုဖး",
+ "logentry-thanks-thank": "$1 {{GENDER:$2|ဆ်ုဂုဏ်ဝေ့}} {{GENDER:$4|$3}}"
}
diff --git a/Thanks/i18n/kk-cyrl.json b/Thanks/i18n/kk-cyrl.json
index 3aff5307..8e693c24 100644
--- a/Thanks/i18n/kk-cyrl.json
+++ b/Thanks/i18n/kk-cyrl.json
@@ -38,8 +38,5 @@
"notification-flow-thanks-post-link": "пікіріңізге",
"notification-header-flow-thank": "$1 {{GENDER:$5|сізге}} \"<strong>$3</strong>\" бөліміндегі пікіріңізге {{GENDER:$2|рахметін}} білдірді.",
"notification-compact-header-flow-thank": "$1 {{GENDER:$3|сізге}} {{GENDER:$2|рахметін}} білдірді.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|Бір адам|$1 адам|100=99+ адам}} <strong>$2</strong> бетіндегі пікіріңіз үшін {{GENDER:$3|сізге}} рахметін білдірді.",
- "apihelp-flowthank-description": "Flow жұмыс легіндегі пікір үшін жария түрде рахмет ескертпесін жіберу.",
- "apihelp-thank-description": "Өңдеушіге рахмет ескертпесін жіберу.",
- "apihelp-thank-param-rev": "Әлдебіреуге жіберілген рахмет ескертпесінің нұсқа сәйкестендіргіші."
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Бір адам|$1 адам|100=99+ адам}} <strong>$2</strong> бетіндегі пікіріңіз үшін {{GENDER:$3|сізге}} рахметін білдірді."
}
diff --git a/Thanks/i18n/km.json b/Thanks/i18n/km.json
index b6622f22..64800b91 100644
--- a/Thanks/i18n/km.json
+++ b/Thanks/i18n/km.json
@@ -26,5 +26,6 @@
"notification-bundle-header-log-thank": "{{PLURAL:$1|មនុស្សម្នាក់|មនុស្ស$1នាក់|100=មនុស្សជាង១០០នាក់}}បានថ្លែងអំណរគុណ{{GENDER:$3|អ្នក}}សម្រាប់សកម្មភាពនានារបស់អ្នកនៅ<strong>$2</strong>។",
"log-name-thanks": "កំណត់ត្រាការថ្លែងអំណរគុណ",
"log-description-thanks": "ខាងក្រោយនេះជាបញ្ជីអ្នកប្រើប្រាស់ដែលទទួលការថ្លែងអំណរគុណពីអ្នកប្រើប្រាស់ដទៃ។",
- "logentry-thanks-thank": "$1 {{GENDER:$2|បានថ្លែងអំណរគុណ}} {{GENDER:$4|$3}}"
+ "logentry-thanks-thank": "$1 {{GENDER:$2|បានថ្លែងអំណរគុណ}} {{GENDER:$4|$3}}",
+ "logeventslist-thanks-log": "កំណត់ត្រាការថ្លែងអំណរគុណ"
}
diff --git a/Thanks/i18n/ko.json b/Thanks/i18n/ko.json
index d624fdae..d5390d6f 100644
--- a/Thanks/i18n/ko.json
+++ b/Thanks/i18n/ko.json
@@ -1,23 +1,24 @@
{
"@metadata": {
"authors": [
- "Hym411",
- "Priviet",
- "관인생략",
- "아라",
- "Miri-Nae",
+ "Alex00728",
"Bluemersen",
- "Revi",
+ "Ellif",
+ "Garam",
+ "HDNua",
+ "Hwangjy9",
+ "Hym411",
"IRTC1015",
+ "In2acous",
"Kwj2772",
- "Alex00728",
- "Hwangjy9",
- "HDNua",
+ "Miri-Nae",
+ "Nuevo Paso",
+ "Priviet",
+ "Revi",
"Ykhwong",
- "In2acous",
- "Garam",
- "Ellif",
- "Nuevo Paso"
+ "관인생략",
+ "렌즈",
+ "아라"
]
},
"thanks-desc": "편집, 댓글 등등에 사용자에게 감사를 표하기 위한 링크를 추가합니다",
@@ -25,6 +26,9 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|감사를 표했습니다}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|감사 표현}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|감사를 표했습니다}}}}",
+ "thanks-button-action-queued": "$1님에게 {{GENDER:$1|{{GENDER:$2|감사를 표하는 중}}}}…",
+ "thanks-button-action-cancel": "취소",
+ "thanks-button-action-completed": "당신은 $1님에게 {{GENDER:$1|{{GENDER:$2|감사를 표했습니다}}}}",
"thanks-error-undefined": "감사 표현의 동작(오류 코드: $1)이 실패했습니다. 다시 시도해주세요.",
"thanks-error-invalid-log-id": "기록 항목이 발견되지 않습니다",
"thanks-error-log-deleted": "요청된 기록 항목은 삭제되어 있으므로 이에 감사를 표할 수 없습니다.",
@@ -48,9 +52,11 @@
"echo-category-title-edit-thank": "감사 표현",
"notification-thanks-diff-link": "내 편집",
"notification-header-rev-thank": "$1님이 <strong>$3</strong> 문서에서의 {{GENDER:$4|당신}}의 편집에 {{GENDER:$2|감사를 표했습니다}}.",
+ "notification-header-creation-thank": "$1님이 {{GENDER:$4|당신의}} <strong>$3</strong>의 생성에 {{GENDER:$2|감사를 표했습니다}}.",
"notification-header-log-thank": "$1님이 <strong>$3</strong> 문서에 대한 {{GENDER:$4|당신}}의 행위에 {{GENDER:$2|감사를 표했습니다}}.",
"notification-compact-header-edit-thank": "$1님이 {{GENDER:$3|당신}}에게 {{GENDER:$2|감사를 표했습니다}}.",
"notification-bundle-header-rev-thank": "{{PLURAL:$1|한 명의 사용자|$1명의 사용자|100=99명 이상의 사용자}}가 <strong>$2</strong> 문서의 {{GENDER:$3|내}} 편집에 감사를 표했습니다.",
+ "notification-bundle-header-log-thank": "{{PLURAL:$1|한 명의 사람|$1명의 사람|100=99명 이상의 사람}}이 <strong>$2</strong>와 관련한 조치를 한 {{GENDER:$3|당신}}에게 감사를 표했습니다.",
"log-name-thanks": "감사 기록",
"log-description-thanks": "아래에는 다른 사용자가 감사를 표한 사용자의 목록입니다.",
"logentry-thanks-thank": "$1님이 {{GENDER:$4|$3}}님에게 {{GENDER:$2|감사를 표했습니다}}",
@@ -62,16 +68,8 @@
"notification-link-text-view-logentry": "기록 항목 보기",
"thanks-error-invalidpostid": "게시물 ID가 올바르지 않습니다.",
"flow-thanks-confirmation-special": "이 댓글에 공개적으로 감사를 표하겠습니까?",
- "flow-thanks-thanked-notice": "{{GENDER:$3|당신}}이 {{GENDER:$2|그의|그녀의|그들의}} 댓글에 감사를 표했습니다.",
+ "flow-thanks-thanked-notice": "{{GENDER:$3|당신}}이 {{GENDER:$2|그의|그녀의|그 사용자의}} 댓글에 감사를 표했습니다.",
"notification-flow-thanks-post-link": "당신의 의견",
- "notification-compact-header-flow-thank": "$1님이 {{GENDER:$3|당신}}에게 {{GENDER:$2|감사를 표했습니다}}.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|사람 한 명|사람 $1명|100=사람 99명 이상}}이 \"<strong>$2</strong>\"에 {{GENDER:$3|당신}}이 남긴 댓글에 감사를 표했습니다.",
- "apihelp-flowthank-param-postid": "감사를 표할 게시물의 UUID입니다.",
- "apihelp-flowthank-example-1": "<kbd>UUID xyz789</kbd>와 함께 댓글에 대한 감사 표현을 보냅니다",
- "apihelp-thank-description": "편집자에게 감사 알림을 보냅니다.",
- "apihelp-thank-summary": "편집자에게 감사 알림을 보냅니다.",
- "apihelp-thank-param-rev": "누군가에게 감사를 표할 판의 ID입니다. 이것 또는 'log'는 반드시 제공되어야 합니다.",
- "apihelp-thank-param-log": "누군가에게 감사를 표하는 로그 ID입니다. 이것 또는 'rev'는 반드시 지정되어야 합니다.",
- "apihelp-thank-param-source": "이를테면 <kbd>diff</kbd> 또는 <kbd>history</kbd>처럼 요청의 원본을 기술하는 짧은 문자열입니다.",
- "apihelp-thank-example-1": "diff 문서의 원본과 함께 <kbd>ID 456</kbd> 판에 대해 감사를 보냅니다."
+ "notification-compact-header-flow-thank": "$1 님이 {{GENDER:$3|당신}}에게 {{GENDER:$2|감사를 표했습니다}}.",
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|사람 한 명|사람 $1명|100=사람 99명 이상}}이 \"<strong>$2</strong>\"에 {{GENDER:$3|당신}}이 남긴 댓글에 감사를 표했습니다."
}
diff --git a/Thanks/i18n/krc.json b/Thanks/i18n/krc.json
index b26bdf75..e4d44aba 100644
--- a/Thanks/i18n/krc.json
+++ b/Thanks/i18n/krc.json
@@ -1,8 +1,8 @@
{
"@metadata": {
"authors": [
- "Iltever",
- "Ernác"
+ "Ernác",
+ "Iltever"
]
},
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|сау бол де}}}}",
diff --git a/Thanks/i18n/ksh.json b/Thanks/i18n/ksh.json
index f4b1ebf4..701e8758 100644
--- a/Thanks/i18n/ksh.json
+++ b/Thanks/i18n/ksh.json
@@ -1,8 +1,8 @@
{
"@metadata": {
"authors": [
- "Purodha",
- "Macofe"
+ "Macofe",
+ "Purodha"
]
},
"thanks-desc": "Määd lengks en et Wikki för sesch bei Metmaacher för jät ze bedangke.",
@@ -37,12 +37,5 @@
"notification-flow-thanks-post-link": "wat de jeschrevve häs",
"notification-header-flow-thank": "{{GENDER:$2|Dä|Dat|Dä Metmaacher|De|Dat}} $1 hät sesch bei Der bedangk för wat de em Affschnedd '''$3''' op dä Sigg '''$4''' aanjemärk häs.{{GENDER:$5|}}",
"notification-compact-header-flow-thank": "{{GENDER:$2|Dä|Dat|Dä Metmaacher|De|Dat}} $1 hät sesch beij Der bedangk.{{GENDER:$3|}}",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|Eijne|$1 Lük|100=mih wi 99 Lük}} han sesch beij Der bedangk för Dinge Bemärkong en dä Sigg <strong>$2</strong>.{{GENDER:$3|}}",
- "apihelp-flowthank-description": "Schegg en öffentlesche Nohreesch zom Bedanke för ene Flow Kommäntaa.",
- "apihelp-flowthank-param-postid": "De <i lang=\"en\" xml:lang=\"en\" dir=\"ltr\" title=\"Universally unique identifier\">UUID</i> vun däm Beijdraach för devör ze dangke.",
- "apihelp-flowthank-example-1": "Donn ene Dank schecke för dä Beijdraach met dä <i lang=\"en\" xml:lang=\"en\" dir=\"ltr\" title=\"\">UUID</i> „<kbdlang=\"en\" xml:lang=\"en\" dir=\"ltr\">xyz789</kbd>“",
- "apihelp-thank-description": "Schegg ene Dangk aan ene Schrihver.",
- "apihelp-thank-param-rev": "De Kännong vun ene Väsjohn för sesch bei einem för ze bedangke.",
- "apihelp-thank-param-source": "Ene koote Täx öm ze sahre, woh di Frohch hehr küdd, <code lang=\"en\" xml:lang=\"en\" dir=\"ltr\"><kbd>diff</kbd></code> uddder <code lang=\"en\" xml:lang=\"en\" dir=\"ltr\"><kbd>history</kbd></code> för e Beijschpell.\n<!-- \nhttps://translatewiki.net/wiki/Thread:Support/About_MediaWiki:Apihelp-thank-param-source/en\n-->",
- "apihelp-thank-example-1": "Scheck ene Dangk för de Väsjohn met dä Kännong 456, woh de Quäll en Sigg met Ongerscheide es."
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Eijne|$1 Lük|100=mih wi 99 Lük}} han sesch beij Der bedangk för Dinge Bemärkong en dä Sigg <strong>$2</strong>.{{GENDER:$3|}}"
}
diff --git a/Thanks/i18n/ksw.json b/Thanks/i18n/ksw.json
new file mode 100644
index 00000000..5cec70c5
--- /dev/null
+++ b/Thanks/i18n/ksw.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Khing"
+ ]
+ },
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|တၢ်ဘျုး}}}}",
+ "thanks-thank-tooltip": "{{GENDER:$1|ဆှၢ}} တၢ်ဘျုးလၢမၤနီၣထီၣတၢ်အံၤ {{GENDER:$2|ပှၤသူတၢ်}}"
+}
diff --git a/Thanks/i18n/kum.json b/Thanks/i18n/kum.json
index 337b7ce4..3b28179e 100644
--- a/Thanks/i18n/kum.json
+++ b/Thanks/i18n/kum.json
@@ -1,8 +1,8 @@
{
"@metadata": {
"authors": [
- "ArslanX",
- "Arsenekoumyk"
+ "Arsenekoumyk",
+ "ArslanX"
]
},
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|савбол этмек}}}}",
diff --git a/Thanks/i18n/la.json b/Thanks/i18n/la.json
index 1f6a202f..6e6bf5ef 100644
--- a/Thanks/i18n/la.json
+++ b/Thanks/i18n/la.json
@@ -2,9 +2,9 @@
"@metadata": {
"authors": [
"Autokrator",
- "UV",
"Laurentianus",
- "MarcoAurelio"
+ "MarcoAurelio",
+ "UV"
]
},
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|gratias agere}}}}",
diff --git a/Thanks/i18n/lb.json b/Thanks/i18n/lb.json
index 1776b8c3..4672dc9b 100644
--- a/Thanks/i18n/lb.json
+++ b/Thanks/i18n/lb.json
@@ -10,7 +10,8 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|Merci gesot}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Merci soen}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Merci gesot}}}}",
- "thanks-error-undefined": "'Merci soen' huet net funktionéiert (Feelercode: $1). Probéiert w.e.g. nach eng Kéier.",
+ "thanks-button-action-cancel": "Ofbriechen",
+ "thanks-error-undefined": "'Merci soen' huet net funktionéiert (Feelercode: $1). Probéiert wgl. nach eng Kéier.",
"thanks-error-invalidrevision": "Versiounsnummer (ID) ass net valabel.",
"thanks-error-revdeleted": "Merci konnt net geschéckt ginn, wëll d'Versioun geläscht gouf.",
"thanks-error-notitle": "Säitentitel konnt net ofgeruff ginn",
@@ -39,7 +40,5 @@
"flow-thanks-confirmation-special": "Wëllt Dir ëffentlech fir dës Bemierkung e 'Merci' schécken?",
"notification-flow-thanks-post-link": "Är Bemierkung",
"notification-header-flow-thank": "$1 {{GENDER:$2|huet}} {{GENDER:$5|Iech}} fir Är Bemierkung op \"<strong>$3</strong>\" Merci gesot.",
- "notification-compact-header-flow-thank": "$1 huet {{GENDER:$3|Iech}} {{GENDER:$2|Merci gesot}} .",
- "apihelp-thank-description": "Engem Auteur e Merci-Message schécken.",
- "apihelp-thank-param-rev": "Versiouns ID fir déi ee Merci gesot kréie soll. Déi oder 'log' muss ugi ginn."
+ "notification-compact-header-flow-thank": "$1 huet {{GENDER:$3|Iech}} {{GENDER:$2|Merci gesot}} ."
}
diff --git a/Thanks/i18n/lij.json b/Thanks/i18n/lij.json
index 0cb123ce..a6590b53 100644
--- a/Thanks/i18n/lij.json
+++ b/Thanks/i18n/lij.json
@@ -1,9 +1,62 @@
{
"@metadata": {
"authors": [
- "Giromin Cangiaxo"
+ "Giromin Cangiaxo",
+ "S4b1nuz E.656"
]
},
+ "thanks-desc": "A l'azonze un ingancio pe ringrassiâ i utenti pe de modiffiche, di commenti, ecc.",
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|ringrassia}}}}",
- "thanks-thank-tooltip": "{{GENDER:$1|Invia}} una notiffica de ringraçiamento a {{GENDER:$2|questo|questa}} utente"
+ "thanks-thanked": "{{GENDER:$1|{{GENDER:$2|ringrassiou|ringrassiâ|ringrassiou/â}}}}",
+ "thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Ringrassia}}}}",
+ "thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|ringrassiou|ringrassiâ|ringrassiou/â}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Ringrassiando}}}} $1…",
+ "thanks-button-action-cancel": "Anulla",
+ "thanks-button-action-completed": "T'hæ {{GENDER:$1|{{GENDER:$2|ringrassiou}}}} $1",
+ "thanks-error-undefined": "O ringrassiamento o l'ha fæto sciacca (coddiçe errô: $1). Pe piaxei proeuvighe ancon.",
+ "thanks-error-invalid-log-id": "Intrâ do registro non trovâ",
+ "thanks-error-invalid-log-type": "O tipo de registro '$1' o no l'è inta lista gianca di tipi de registro aotorizæ.",
+ "thanks-error-log-deleted": "L'intrâ de registro recesta a l'è stæta scassâ e ringrassiamenti pe quella no se ne poei mandâ.",
+ "thanks-error-invalidrevision": "L'ID da verscion o no l'è vallido.",
+ "thanks-error-revdeleted": "Imposcibbile mandâ i ringrassiamenti percose quella verscion a l'è stæta scassâ.",
+ "thanks-error-notitle": "O tittolo da paggina o no l'ha posciuo ese recuperou",
+ "thanks-error-invalidrecipient": "No l'è stæto trovou nisciun destinataio vallido",
+ "thanks-error-invalidrecipient-bot": "No se poeu ringrassiâ di robot",
+ "thanks-error-invalidrecipient-self": "No ti poeu ringrassiâ ti mæximo",
+ "thanks-error-notloggedin": "I utenti anonnimi no poeuan mandâ di ringrassiamenti",
+ "thanks-error-ratelimited": "{{GENDER:$1|T'hæ}} passou o limmite mascimo de ringrassiamenti. Aspeta 'n po' e dapoeu proeuvighe ancon.",
+ "thanks-error-api-params": "Bezougna fornî o parammetro 'revid' ò quello 'logid'",
+ "thanks-thank-tooltip": "{{GENDER:$1|Invia}} una notiffica de ringraçiamento a {{GENDER:$2|questo|questa}} utente",
+ "thanks-thank-tooltip-no": "{{GENDER:$1|Anulla}} a notiffica de ringrassiamento",
+ "thanks-thank-tooltip-yes": "{{GENDER:$1|Invia}} a notfifica de ringrassiamento",
+ "thanks-confirmation2": "{{GENDER:$1|Inviâ}} o ringrassiamento pubricamente?",
+ "thanks-thanked-notice": "{{GENDER:$3|T'hæ ringrassiou}} {{GENDER:$2|$1}}.",
+ "thanks": "Invia 'n ringrassiamento",
+ "thanks-submit": "Invia 'n ringrassiamento",
+ "echo-pref-subscription-edit-thank": "O me ringrassia pe 'na mæ modiffica",
+ "echo-pref-tooltip-edit-thank": "Famme savei quande quarcun o me ringrassia pe 'na modiffica ch'ho fæto.",
+ "echo-category-title-edit-thank": "Ringrassiamenti",
+ "notification-thanks-diff-link": "a to modiffica",
+ "notification-header-rev-thank": "$1 {{GENDER:$2|o|a}} {{GENDER:$4|t'}}{{GENDER:$2|ha ringrassiou}} pe-a to modiffica sciu <strong>$3</strong>.",
+ "notification-header-creation-thank": "$1 {{GENDER:$2|o|a}} t'ha {{GENDER:$4|ringrassiou|ringrassiâ|ringrassiou/â}} pi avei creou a paggina <strong>$3</strong>.",
+ "notification-header-log-thank": "$1 {{GENDER:$2|o|a}} t'ha {{GENDER:$4|ringrassiou|ringrassiâ|ringrassiou/â}} pe-a to assion sciu <strong>$3</strong>.",
+ "notification-compact-header-edit-thank": "$1 {{GENDER:$2|o|a}{{GENDER:$3|t'}}}ha ringrassiou.",
+ "notification-bundle-header-rev-thank": "{{PLURAL:$1|'Na person-a a t'ha|$1 person-e t'han|100=Ciù de 99 person-e t'han}} {{GENDER:$3|ringrassiou|ringrassiâ|ringrassiou/â}} pe-a to modiffica sciu <strong>$2</strong>.",
+ "notification-bundle-header-log-thank": "{{PLURAL:$1|'Na person-a a t'ha|$1 person-e t'han|100=Ciù de 99 person-e t'han}} {{GENDER:$3|ringrassiou|ringrassiâ|ringrassiou/â}} pe-a to assion sciu <strong>$2</strong>.",
+ "log-name-thanks": "Ringrassiamenti",
+ "log-description-thanks": "De sotta gh'è 'na lista d'utenti ringrassiæ da di atri utenti.",
+ "logentry-thanks-thank": "$1 {{GENDER:$2|ha ringrassiou}} {{GENDER:$4|$3}}",
+ "logeventslist-thanks-log": "Ringrassiamenti",
+ "thanks-error-no-id-specified": "Pe ringrassiâ ti g'hæ da specificâ 'na verscion ò 'n ID de registro.",
+ "thanks-confirmation-special-log": "Ti voeu ringrassiâ pubricamente pe questa assion do registro?",
+ "thanks-confirmation-special-rev": "Ti voeu ringrassiâ pubricamente pe questa modiffica?",
+ "notification-link-text-view-post": "Amia o commento",
+ "notification-link-text-view-logentry": "Amia l'intrâ do registro",
+ "thanks-error-invalidpostid": "L'ID do messaggio o no l'è vallido.",
+ "flow-thanks-confirmation-special": "Ti voeu ringrassiâ pubricamente pe questo commento?",
+ "flow-thanks-thanked-notice": "{{GENDER:$3|Ti t'hæ ringrassiou}} $1 pe {{GENDER:$2|o so}} commento.",
+ "notification-flow-thanks-post-link": "o to commento",
+ "notification-header-flow-thank": "$1 {{GENDER:$2|o|a}} {{GENDER:$5|t'}}{{GENDER:$2|ha ringrassiou}} pe-o to commento sciu \"<strong>$3</strong>\".",
+ "notification-compact-header-flow-thank": "$1 {{GENDER:$2|o|a} {{GENDER:$3|t'}}}ha ringrassiou.",
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|'Na person-a a t'ha|$1 person-e t'han|100=Ciù de 99 person-e t'han}} {{GENDER:$3|ringrassiou|ringrassiâ|ringrassiou/â}} pe-o to commento sciu <strong>$2</strong>."
}
diff --git a/Thanks/i18n/lki.json b/Thanks/i18n/lki.json
index 4384d5b0..d31d879f 100644
--- a/Thanks/i18n/lki.json
+++ b/Thanks/i18n/lki.json
@@ -1,8 +1,8 @@
{
"@metadata": {
"authors": [
- "Hosseinblue",
"Alp Er Tunqa",
+ "Hosseinblue",
"Macofe"
]
},
@@ -34,12 +34,5 @@
"thanks-error-invalidpostid": "شناسهٔ پست معتبر نیست.",
"flow-thanks-confirmation-special": "می‌خواهید برای این نظر علناً تشکر بفرستید؟",
"flow-thanks-thanked-notice": "$1 تشکر شما را برای دیدگاه {{GENDER:$2|او|او|آنها}} دریافت کرد.",
- "notification-flow-thanks-post-link": "گةپ/قِسة هؤمة",
- "apihelp-flowthank-description": "تشکر کردن علنی در جریان از یک نظر",
- "apihelp-flowthank-param-postid": "UUIDی پست مشکور",
- "apihelp-flowthank-example-1": "تشکر کردن از نظر با <kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "فرستادن یک اعلان تشکر به یک ویراستار.",
- "apihelp-thank-param-rev": "شناسهٔ نسخهٔ مشکور.",
- "apihelp-thank-param-source": "رشته متنی کوتاه برای شرخ مبدأ درخواست، برای مثال <kbd>diff</kbd> یا <kbd>history</kbd>.",
- "apihelp-thank-example-1": "تشکر کردن برای نسخهٔ شناسهٔ 456، با صفحهٔ تفاوت به عنوان منبع"
+ "notification-flow-thanks-post-link": "گةپ/قِسة هؤمة"
}
diff --git a/Thanks/i18n/lld.json b/Thanks/i18n/lld.json
new file mode 100644
index 00000000..3244aae9
--- /dev/null
+++ b/Thanks/i18n/lld.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Starladin"
+ ]
+ },
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|rengrazia}}}}",
+ "thanks-thank-tooltip": "{{GENDER:$1|Mëna}} na notificaziun de rengraziamënt a chësc {{GENDER:$2|utënt}}"
+}
diff --git a/Thanks/i18n/lrc.json b/Thanks/i18n/lrc.json
index f26e6687..f50f2b28 100644
--- a/Thanks/i18n/lrc.json
+++ b/Thanks/i18n/lrc.json
@@ -2,14 +2,15 @@
"@metadata": {
"authors": [
"Bonevarluri",
+ "Lorestani",
"Mogoeilor"
]
},
- "thanks-thank": "{{GENDER:$1|{{GENDER:$2|منمۊن}}}}",
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|مٱنمۊن}}}}",
"thanks-thanked": "{{GENDER:$1|منموندار بیه}}",
"thanks-button-thank": "{{GENDER:$1|منمون}}",
"thanks-button-thanked": "{{GENDER:$1|منموندار بیه}}",
- "thanks-thank-tooltip": "{{GENDER:$1|کل کرد}} یه گل منمونداری وارسیارکن سی ای {{GENDER:$2|کارور}}",
+ "thanks-thank-tooltip": "{{GENDER:$1|کلٛ کرد}} یاٛ مٱنمۊنداری ڤارسیارکن سی اؽ {{GENDER:$2|کاریار}}",
"thanks": "فرسنئن منمونداری",
"echo-pref-subscription-edit-thank": "منموندار مه سی ویرایشتم",
"echo-category-title-edit-thank": "منمون",
@@ -19,6 +20,5 @@
"logentry-thanks-thank": "$1 {{GENDER:$2|منموندار بیه}} {{GENDER:$4|$3}}",
"notification-link-text-view-post": "دیئن ویر و باور",
"flow-thanks-confirmation-special": "آیا میهایت سی ای ویر و باور یه گل تشکر کل بکیت؟",
- "notification-flow-thanks-post-link": "ویر و باور شما",
- "apihelp-flowthank-example-1": "سی ای ویر و باور وا<kbd>UUID xyz789</kbd> یه گل منمونداری کل بکیت"
+ "notification-flow-thanks-post-link": "ویر و باور شما"
}
diff --git a/Thanks/i18n/lt.json b/Thanks/i18n/lt.json
index e4972873..73cec76c 100644
--- a/Thanks/i18n/lt.json
+++ b/Thanks/i18n/lt.json
@@ -1,15 +1,16 @@
{
"@metadata": {
"authors": [
- "Garas",
- "Hugo.arg",
- "Pofka",
"Albertas",
- "Macofe",
- "Zygimantus",
"Eitvys200",
+ "Garas",
"Homo",
- "Manvydasz"
+ "Hugo.arg",
+ "Macofe",
+ "Manvydasz",
+ "Pofka",
+ "Tomasdd",
+ "Zygimantus"
]
},
"thanks-desc": "Prideda nuorodas, kad padėkotumėte naudotojams už pakeitimus, komentarus ir kt.",
@@ -17,6 +18,7 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|padėkojo}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Padėkoti}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Padėkojo}}}}",
+ "thanks-button-action-completed": "Jūs {{GENDER:$1|{{GENDER:$2|padėkojote}}}} $1",
"thanks-error-undefined": "Padėkoti nepavyko (klaidos kodas: $1). Prašome pabandyti dar kartą.",
"thanks-error-invalidrevision": "Netinkamas versijos ID",
"thanks-error-revdeleted": "Versija buvo ištrinta",
@@ -52,13 +54,5 @@
"notification-flow-thanks-post-link": "jūsų komentaras",
"notification-header-flow-thank": "$1 {{GENDER:$2|padėkojo}} {{GENDER:$5|jums}} už jūsų komentarą „<strong>$3</strong>“.",
"notification-compact-header-flow-thank": "$1 {{GENDER:$2|padėkojo}} {{GENDER:$3|jums}}.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|Vienas žmogus|$1 žmonės|100=99+ žmonės}} padėkojo {{GENDER:$3|jums}} už jūsų komentarą „<strong>$2</strong>“.",
- "apihelp-flowthank-description": "Siųsti viešą padėkos pranešimą už Srauto komentarą.",
- "apihelp-flowthank-param-postid": "Padėkos įrašo UUID.",
- "apihelp-flowthank-example-1": "Siųsti padėką už komentarą su <kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "Siųsti padėkos pranešimą redaktoriui.",
- "apihelp-thank-summary": "Siųsti padėkos pranešimą redaktoriui.",
- "apihelp-thank-param-rev": "ID versijos, už kurią padėkoti.",
- "apihelp-thank-param-source": "Trumpa eilutė, apibūdinanti užklausos šaltinį, pavyzdžiui <kbd>diff</kbd> arba <kbd>history</kbd>.",
- "apihelp-thank-example-1": "Siųsti padėką už versiją, kurios <kbd>ID 456</kbd> ir šaltinis yra skirtumų puslapis"
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Vienas žmogus|$1 žmonės|100=99+ žmonės}} padėkojo {{GENDER:$3|jums}} už jūsų komentarą „<strong>$2</strong>“."
}
diff --git a/Thanks/i18n/lv.json b/Thanks/i18n/lv.json
index dc10bee6..68254e11 100644
--- a/Thanks/i18n/lv.json
+++ b/Thanks/i18n/lv.json
@@ -2,10 +2,10 @@
"@metadata": {
"authors": [
"Edgars2007",
- "Papuass",
"Nitalynx",
- "Zuiks",
- "Silraks"
+ "Papuass",
+ "Silraks",
+ "Zuiks"
]
},
"thanks-desc": "Pievieno saites, lai pateiktos dalībniekiem par labojumiem, komentāriem, u.t.t.",
@@ -13,8 +13,13 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|pateicās}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Pateikties}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Pateicās}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Pasakās}}}} $1…",
+ "thanks-button-action-cancel": "Atcelt",
+ "thanks-button-action-completed": "Tu {{GENDER:$1|{{GENDER:$2|pateicies}}}} $1",
"thanks-error-undefined": "Pateicības darbība neizdevās (kļūdas kods: $1). Lūdzu, mēģini vēlreiz.",
"thanks-error-invalid-log-id": "Žurnāla ieraksts nav atrasts",
+ "thanks-error-invalid-log-type": "Žurnāla ieraksta veids '$1' nav atļauto veidu sarakstā.",
+ "thanks-error-log-deleted": "Pieprasītais žurnāla ieraksts ir dzēsts un par to nevar pateikties.",
"thanks-error-invalidrevision": "Versijas ID ir nederīgs.",
"thanks-error-revdeleted": "Neizdevās nosūtīt pateicību, jo versija ir tikusi izdzēsta.",
"thanks-error-notitle": "Nevarēja iegūt lapas nosaukumu",
@@ -23,6 +28,7 @@
"thanks-error-invalidrecipient-self": "Tu nevari pateikties sev",
"thanks-error-notloggedin": "Anonīmi dalībnieki nevar sūtīt pateicības",
"thanks-error-ratelimited": "{{GENDER:$1|Tu esi pārsniedzis|Tu esi pārsniegusi}} skaita ierobežojumu. Lūdzu, uzgaidi un mēģini vēlreiz.",
+ "thanks-error-api-params": "Jānorāda vai nu 'revid', vai arī 'logid' parametrs",
"thanks-thank-tooltip": "{{GENDER:$1|Nosūtīt}} pateicības ziņojumu {{GENDER:$2|šim dalībniekam|šai dalībniecei}}",
"thanks-thank-tooltip-no": "{{GENDER:$1|Atcelt}} pateicības paziņojumu",
"thanks-thank-tooltip-yes": "{{GENDER:$1|Nosūtīt}} pateicības paziņojumu",
@@ -32,16 +38,19 @@
"thanks-submit": "Sūtīt pateicību",
"echo-pref-subscription-edit-thank": "Pateicība par manu labojumu",
"echo-pref-tooltip-edit-thank": "Paziņot man, kad kāds man izsaka pateicību par labojumu.",
- "echo-category-title-edit-thank": "Paldies",
+ "echo-category-title-edit-thank": "Pateicības",
"notification-thanks-diff-link": "tavu labojumu",
"notification-header-rev-thank": "$1 {{GENDER:$2|pateicās}} {{GENDER:$4|tev}} par tavu labojumu rakstā <strong>$3</strong>.",
"notification-header-creation-thank": "$1 {{GENDER:$2|pateicās}} {{GENDER:$4|tev}} par <strong>$3</strong> izveidi.",
+ "notification-header-log-thank": "$1 {{GENDER:$2|pateicās}} {{GENDER:$4|tev}} par tavu darbību saistībā ar <strong>$3</strong>.",
"notification-compact-header-edit-thank": "$1 {{GENDER:$2|pateicās}} {{GENDER:$3|tev}}.",
"log-name-thanks": "Pateicību žurnāls",
"log-description-thanks": "Zemāk ir saraksts ar lietotājiem, kuriem citi lietotāji ir pateikušies.",
"logentry-thanks-thank": "$1 {{GENDER:$2|pateicās}} {{GENDER:$4|$3}}",
"logeventslist-thanks-log": "Pateicību žurnāls",
- "thanks-error-no-id-specified": "Tev jānorāda versijas ID, lai nosūtītu pateicību.",
+ "thanks-error-no-id-specified": "Tev jānorāda versijas vai žurnāla ieraksta ID, lai nosūtītu pateicību.",
+ "thanks-confirmation-special-log": "Vai vēlies publiski nosūtīt pateicību par šo žurnāla darbību?",
+ "thanks-confirmation-special-rev": "Vai vēlies publiski nosūtīt pateicību par šo labojumu?",
"notification-link-text-view-post": "Skatīt komentāru",
"notification-link-text-view-logentry": "Skatīt žurnāla ierakstu",
"thanks-error-invalidpostid": "Ieraksta ID nav derīgs.",
@@ -49,12 +58,5 @@
"flow-thanks-thanked-notice": "{{GENDER:$3|Tu}} pateicies $1 par {{GENDER:$2|viņa|viņas|viņa}} komentāru.",
"notification-flow-thanks-post-link": "tavs komentārs",
"notification-header-flow-thank": "$1 {{GENDER:$2|pateicās}} {{GENDER:$5|tev}} par tavu komentāru tēmā \"<strong>$3</strong>\".",
- "notification-compact-header-flow-thank": "$1 {{GENDER:$2|pateicās}} {{GENDER:$3|tev}}.",
- "apihelp-flowthank-description": "Nosūtīt publisku pateicību par Flow komentāru.",
- "apihelp-flowthank-summary": "Nosūtīt publisku pateicību par Flow komentāru.",
- "apihelp-flowthank-param-postid": "Ieraksta UUID, par ko pateikties.",
- "apihelp-flowthank-example-1": "Nosūtīt pateicību par komentāru ar <kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "Nosūtīt pateicības paziņojumu redaktoram.",
- "apihelp-thank-summary": "Nosūtīt pateicības paziņojumu redaktoram.",
- "apihelp-thank-param-rev": "Versijas ID, par ko kādam pateikties."
+ "notification-compact-header-flow-thank": "$1 {{GENDER:$2|pateicās}} {{GENDER:$3|tev}}."
}
diff --git a/Thanks/i18n/lzh.json b/Thanks/i18n/lzh.json
index 6d941aa7..393f7ee2 100644
--- a/Thanks/i18n/lzh.json
+++ b/Thanks/i18n/lzh.json
@@ -1,8 +1,8 @@
{
"@metadata": {
"authors": [
- "SolidBlock",
- "Itsmine"
+ "Itsmine",
+ "SolidBlock"
]
},
"thanks-thank-tooltip": "{{GENDER:$1|致謝}}{{GENDER:$2|於彼}}",
diff --git a/Thanks/i18n/lzz.json b/Thanks/i18n/lzz.json
new file mode 100644
index 00000000..86ebad55
--- /dev/null
+++ b/Thanks/i18n/lzz.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Cem Rize"
+ ]
+ },
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|teşekkür et}}}}",
+ "thanks-thank-tooltip": "Bu {{GENDER:$2|kullanıcıya}} {{GENDER:$1|teşekkürlerini}} ilet"
+}
diff --git a/Thanks/i18n/min.json b/Thanks/i18n/min.json
new file mode 100644
index 00000000..ba8a490e
--- /dev/null
+++ b/Thanks/i18n/min.json
@@ -0,0 +1,30 @@
+{
+ "@metadata": {
+ "authors": [
+ "Ardzun",
+ "Iwan Novirion"
+ ]
+ },
+ "thanks-desc": "Manambah pautan untuak batarimo kasih ka pangguno ateh suntiangan, komentar, dll.",
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|mokasih}}}}",
+ "thanks-thanked": "{{GENDER:$1|{{GENDER:$2|ucapan lah takirim}}}}",
+ "thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Tarimo kasih}}}}",
+ "thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Tarimo kasih}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Tarimo kasih}}}}",
+ "thanks-button-action-cancel": "Batal",
+ "thanks-button-action-completed": "{{GENDER:$1|{{GENDER:$2|ucapan takirim}}}}",
+ "thanks-error-undefined": "Kiriman ucapan gagal (kode galat: $1). Cubo lai.",
+ "thanks-error-invalid-log-id": "Entri log indak basobok",
+ "thanks-error-invalid-log-type": "Log jinih '$1' indak ado dalam daftar putiah jinis log nan diizinkan.",
+ "thanks-error-log-deleted": "Entri log nan dimintak alah dihapuih dan indak dapek diagiah ucapan.",
+ "thanks-error-invalidrevision": "ID revisi indak sah.",
+ "thanks-thank-tooltip": "{{GENDER:$1|Kirim}} pambaritauan tarimo kasih pado {{GENDER:$2|pangguno}} ko",
+ "thanks-thank-tooltip-yes": "{{GENDER:$1|Kirim}} pambaritauan tarimo kasih",
+ "thanks-confirmation2": "{{GENDER:$1|Kiriman}} ucapan tarimo kasih?",
+ "thanks": "Kirim tarimo kasih",
+ "thanks-submit": "Kirim tarimo kasih",
+ "echo-category-title-edit-thank": "Tarimo kasih",
+ "notification-thanks-diff-link": "suntiangan Sanak",
+ "thanks-confirmation-special-rev": "Apo Sanak ka mangirim tarimo kasih sacaro publik untuak suntiangan ko?",
+ "notification-link-text-view-post": "Caliak komentar"
+}
diff --git a/Thanks/i18n/mk.json b/Thanks/i18n/mk.json
index fe04c00d..49b2f50a 100644
--- a/Thanks/i18n/mk.json
+++ b/Thanks/i18n/mk.json
@@ -2,14 +2,18 @@
"@metadata": {
"authors": [
"Bjankuloski06",
- "Macofe"
+ "Macofe",
+ "Vlad5250"
]
},
- "thanks-desc": "Додава врски за заблагодарување кон корисници за уредувања, коментари и тн.",
+ "thanks-desc": "Додава врски за заблагодарување кон корисници за уредувања, коментари итн.",
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|заблагодари се}}}}",
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|заблагодарено}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Заблагодари се}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Заблагодарено}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Благодарност до}}}} $1…",
+ "thanks-button-action-cancel": "Откажи",
+ "thanks-button-action-completed": "{{GENDER:$1|{{GENDER:$2|Се заблагодаривте на}}}} $1",
"thanks-error-undefined": "Заблагодарувањето не успеа (код на грешката: $1). Обидете се повторно.",
"thanks-error-invalid-log-id": "Не ја пронајдов дневничката ставка",
"thanks-error-invalid-log-type": "Нема дневник од видот „$1“ на белиот список на дозволени видови дневници.",
@@ -55,15 +59,5 @@
"notification-flow-thanks-post-link": "вашиот коментар",
"notification-header-flow-thank": "$1 {{GENDER:$5|ви}} {{GENDER:$2|благодари}} за вашиот коментар на „<strong>$3</strong>“.",
"notification-compact-header-flow-thank": "$1 {{GENDER:$3|ви}} се {{GENDER:$2|заблагодари}}.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|Едно лице ви благодари|$1 луѓе ви благодарат|100=Преку 99 луѓе ви благодарат}} за {{GENDER:$3|вашиот}} коментар на „<strong>$2</strong>“.",
- "apihelp-flowthank-description": "Испратете јавна благодарница за коментар во Тек.",
- "apihelp-flowthank-summary": "Испратете јавна благодарница за коментар во Тек.",
- "apihelp-flowthank-param-postid": "UUID на објавата за која се заблагодарувате.",
- "apihelp-flowthank-example-1": "Испрати благодарница за коментарот со <kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "Испрати благодарница на уредник.",
- "apihelp-thank-summary": "Испрати благодарница на уредник.",
- "apihelp-thank-param-rev": "Назнака на преработката за која се заблагодарувате. Мора да биде укажано ова или „log“.",
- "apihelp-thank-param-log": "Назнака на дневникот за кој некому благодарите. Мора да биде укажано ова или „rev“.",
- "apihelp-thank-param-source": "Кратка низа во која го опишувате изворот на барањето. На пр. <kbd>diff</kbd> или <kbd>history</kbd>.",
- "apihelp-thank-example-1": "Испрати благодарница за праработката со <kbd>назнака 456</kbd>, при што изворот е страница со разлика"
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Едно лице ви благодари|$1 луѓе ви благодарат|100=Преку 99 луѓе ви благодарат}} за {{GENDER:$3|вашиот}} коментар на „<strong>$2</strong>“."
}
diff --git a/Thanks/i18n/ml.json b/Thanks/i18n/ml.json
index 2fb3ecf9..0f2a68e1 100644
--- a/Thanks/i18n/ml.json
+++ b/Thanks/i18n/ml.json
@@ -1,8 +1,8 @@
{
"@metadata": {
"authors": [
- "Praveenp",
- "Macofe"
+ "Macofe",
+ "Praveenp"
]
},
"thanks-desc": "തിരുത്തുകൾ, കുറിപ്പുകൾ തുടങ്ങിയവയ്ക്ക് നന്ദി രേഖപ്പെടുത്തുവാനുള്ള കണ്ണികൾ ചേർക്കുന്നു.",
@@ -10,8 +10,13 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|നന്ദി രേഖപ്പെടുത്തി}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|നന്ദി രേഖപ്പെടുത്തുക}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|നന്ദി രേഖപ്പെടുത്തി}}}}",
+ "thanks-button-action-queued": "$1 എന്ന ഉപയോക്താവിന് {{GENDER:$1|{{GENDER:$2|നന്ദി രേഖപ്പെടുത്തുന്നു}}}}…",
+ "thanks-button-action-cancel": "റദ്ദാക്കുക",
+ "thanks-button-action-completed": "താങ്കൾ $1 ഉപയോക്താവിന് {{GENDER:$1|{{GENDER:$2|നന്ദി രേഖപ്പെടുത്തി}}}}",
"thanks-error-undefined": "നന്ദി രേഖപ്പെടുത്തൽ പരാജയപ്പെട്ടു(പിഴവിന്റെ കോഡ്: $1). ദയവായി വീണ്ടും ശ്രമിക്കുക.",
"thanks-error-invalid-log-id": "രേഖയിലെ ഉൾപ്പെടുത്തൽ കണ്ടെത്താനായില്ല",
+ "thanks-error-invalid-log-type": "അനുവദിക്കപ്പെട്ട രേഖാ തരങ്ങളുടെ ധവളപട്ടികയിൽ '$1' രേഖാ തരം ഇല്ല.",
+ "thanks-error-log-deleted": "ആവശ്യപ്പെട്ട രേഖാ ഉൾപ്പെടുത്തൽ മായക്കപ്പെട്ടിരിക്കുന്നു, അതിന് നന്ദി നൽകാൻ കഴിയില്ല.",
"thanks-error-invalidrevision": "നാൾപ്പതിപ്പിന്റെ ഐ.ഡി. അസാധുവാണ്.",
"thanks-error-revdeleted": "നാൾപ്പതിപ്പ് മായ്ക്കപ്പെട്ടിരിക്കുന്നതിനാൽ നന്ദി രേഖപ്പെടുത്താൻ കഴിയില്ല.",
"thanks-error-notitle": "താളിന്റെ തലക്കെട്ട് എടുക്കാനായില്ല",
@@ -20,10 +25,11 @@
"thanks-error-invalidrecipient-self": "താങ്കൾക്ക് സ്വയം നന്ദി രേഖപ്പെടുത്താനാവില്ല",
"thanks-error-notloggedin": "അജ്ഞാത ഉപയോക്താക്കൾക്ക് നന്ദി രേഖപ്പെടുത്താനാവില്ല",
"thanks-error-ratelimited": "{{GENDER:$1|താങ്കളുടെ}} പരിധി അധികരിച്ചിരിക്കുന്നു. ദയവായി അല്പസമയം കാത്തിരുന്ന ശേഷം വീണ്ടും ശ്രമിക്കുക.",
+ "thanks-error-api-params": "ഒന്നുകിൽ 'revid' അല്ലെങ്കിൽ 'logid' ചരം നൽകിയിരിക്കണം",
"thanks-thank-tooltip": "ഈ {{GENDER:$2|ഉപയോക്താവിന്}} താങ്കളുടെ കൃതജ്ഞത {{GENDER:$1|അയയ്ക്കുക}}",
"thanks-thank-tooltip-no": "നന്ദി അറിയിപ്പ് {{GENDER:$1|റദ്ദാക്കുക}}",
"thanks-thank-tooltip-yes": "നന്ദി അറിയിപ്പ് {{GENDER:$1|അയക്കുക}}",
- "thanks-confirmation2": "നന്ദി രേഖപ്പെടുത്തലുകളെല്ലാം പരസ്യമായി കാണാവുന്നവയാണ്. നന്ദി {{GENDER:$1|അയയ്ക്കണോ}}?",
+ "thanks-confirmation2": "പരസ്യമായി നന്ദി {{GENDER:$1|അയയ്ക്കണോ}}?",
"thanks-thanked-notice": "{{GENDER:$2|$1}} എന്ന ഉപയോക്താവിന്, {{GENDER:$3|താങ്കൾ}} നന്ദി രേഖപ്പെടുത്തി.",
"thanks": "കൃതജ്ഞത അറിയിക്കുക",
"thanks-submit": "കൃതജ്ഞത അറിയിക്കുക",
@@ -32,25 +38,25 @@
"echo-category-title-edit-thank": "നന്ദി",
"notification-thanks-diff-link": "താങ്കൾ ചെയ്ത തിരുത്തിന്",
"notification-header-rev-thank": "'''$3''' താളിൽ താങ്കൾ ചെയ്ത തിരുത്തിന് $1 {{GENDER:$4|താങ്കൾക്ക്}} {{GENDER:$2|നന്ദി രേഖപ്പെടുത്തി}}.",
+ "notification-header-creation-thank": "<strong>$3</strong> സൃഷ്ടിച്ചതിന് $1 {{GENDER:$4|താങ്കൾക്ക്}} {{GENDER:$2|നന്ദി രേഖപ്പെടുത്തി}}.",
+ "notification-header-log-thank": "<strong>$3</strong> താളുമായി ബന്ധപ്പെട്ട പ്രവൃത്തിക്ക് $1 {{GENDER:$4|താങ്കൾക്ക്}} {{GENDER:$2|നന്ദി രേഖപ്പെടുത്തി}}.",
"notification-compact-header-edit-thank": "$1 {{GENDER:$3|താങ്കൾക്ക്}} {{GENDER:$2|നന്ദി രേഖപ്പെടുത്തി}}",
"notification-bundle-header-rev-thank": "<strong>$2</strong> താളിലെ തിരുത്തിന് {{PLURAL:$1|ഒരാൾ|$1 ആൾക്കാർ|100=99+ ആൾക്കാർ}} {{GENDER:$3|താങ്കൾക്ക്}} നന്ദി രേഖപ്പെടുത്തി.",
+ "notification-bundle-header-log-thank": "<strong>$2</strong> താളുമായി ബന്ധപ്പെട്ട പ്രവൃത്തിക്ക് {{PLURAL:$1|ഒരാൾ|$1 ആൾക്കാർ|100=99+ ആൾക്കാർ}} {{GENDER:$3|താങ്കൾക്ക്}} നന്ദി രേഖപ്പെടുത്തി.",
"log-name-thanks": "കൃതജ്ഞതാരേഖ",
"log-description-thanks": "മറ്റ് ഉപയോക്താക്കളുടെ കൃതജ്ഞത ലഭിച്ച ഉപയോക്താക്കളുടെ പട്ടിക താഴെ കാണാം.",
"logentry-thanks-thank": "{{GENDER:$4|$3}} എന്ന ഉപയോക്താവിന് $1 {{GENDER:$2|നന്ദി രേഖപ്പെടുത്തി}}",
+ "logeventslist-thanks-log": "കൃതജ്ഞതാരേഖ",
"thanks-error-no-id-specified": "നന്ദി രേഖപ്പെടുത്താൻ താങ്കൾ നാൾപ്പതിപ്പ് ഐ.ഡി. അല്ലെങ്കിൽ രേഖയുടെ ഐ.ഡി. വ്യക്തമാക്കിയിരിക്കണം.",
+ "thanks-confirmation-special-log": "ഈ രേഖയിലെ പ്രവൃത്തിക്ക് താങ്കളുടെ പരസ്യമായി കാണാവുന്ന നന്ദി അറിയിക്കണോ?",
+ "thanks-confirmation-special-rev": "ഈ തിരുത്തിന് പരസ്യമായി കാണാവുന്ന നന്ദി താങ്കൾക്ക് അറിയിക്കണോ?",
"notification-link-text-view-post": "അഭിപ്രായം കാണുക",
+ "notification-link-text-view-logentry": "രേഖയിലെ ഉൾപ്പെടുത്തൽ കാണുക",
"thanks-error-invalidpostid": "കുറിപ്പിന്റെ ഐ.ഡി. സാധുവല്ല.",
"flow-thanks-confirmation-special": "ഈ കുറിപ്പിന് താങ്കളുടെ പരസ്യമായി കാണാവുന്ന നന്ദി അറിയിക്കുക?",
"flow-thanks-thanked-notice": "{{GENDER:$3|താങ്കൾ}} $1 എന്ന ഉപയോക്താവിനെ {{GENDER:$2|അദ്ദേഹത്തിന്റെ}} അഭിപ്രായത്തിന് നന്ദി അറിയിച്ചു.",
"notification-flow-thanks-post-link": "താങ്കളുടെ അഭിപ്രായം",
"notification-header-flow-thank": "\"<strong>$3</strong>\" എന്ന ഭാഗത്ത് താങ്കൾ ഇട്ട കുറിപ്പിന് {{GENDER:$5|താങ്കൾക്ക്}} $1 {{GENDER:$2|നന്ദി രേഖപ്പെടുത്തി}}.",
"notification-compact-header-flow-thank": "$1 {{GENDER:$3|താങ്കൾക്ക്}} {{GENDER:$2|നന്ദി രേഖപ്പെടുത്തി}}",
- "notification-bundle-header-flow-thank": "\"<strong>$2</strong>\" താളിലെ അഭിപ്രായത്തിന് {{PLURAL:$1|ഒരാൾ|$1 ആൾക്കാർ|100=99+ ആൾക്കാർ}} {{GENDER:$3|താങ്കൾക്ക്}} നന്ദി രേഖപ്പെടുത്തി.",
- "apihelp-flowthank-description": "ഫ്ലോ കുറിപ്പ് സംബന്ധിച്ച ഒരു പൊതു നന്ദി അറിയിപ്പ് അയയ്ക്കുക.",
- "apihelp-flowthank-param-postid": "നന്ദി രേഖപ്പെടുത്തുന്ന പോസ്റ്റിന്റെ യു.യു.ഐ.ഡി.",
- "apihelp-flowthank-example-1": "<kbd>UUID കചട789</kbd> ആയുള്ള കുറിപ്പിന് നന്ദിയറിയിക്കുക",
- "apihelp-thank-description": "ഒരു ലേഖകന് നന്ദി അറിയിപ്പ് അയയ്ക്കുക.",
- "apihelp-thank-param-rev": "നന്ദി രേഖപ്പെടുത്താനുള്ള നാൾപ്പതിപ്പ് ഐ.ഡി. ഇതോ 'രേഖ'യോ നൽകിയിരിക്കണം.",
- "apihelp-thank-param-source": "അഭ്യർത്ഥനയുടെ സ്രോതസ്സ് അടയാളപ്പെടുത്താനുള്ള ഒരു ചെറുപദം, ഉദാഹരണത്തിന് <kbd>diff</kbd> അല്ലെങ്കിൽ <kbd>history</kbd>.",
- "apihelp-thank-example-1": "നാൾപ്പതിപ്പ് <kbd>ഐ.ഡി. 456</kbd>-ന് നന്ദി രേഖപ്പെടുത്തുക, അഭ്യർത്ഥനാ സ്രോതസ്സ് വ്യത്യാസം താളാണ്"
+ "notification-bundle-header-flow-thank": "\"<strong>$2</strong>\" താളിലെ അഭിപ്രായത്തിന് {{PLURAL:$1|ഒരാൾ|$1 ആൾക്കാർ|100=99+ ആൾക്കാർ}} {{GENDER:$3|താങ്കൾക്ക്}} നന്ദി രേഖപ്പെടുത്തി."
}
diff --git a/Thanks/i18n/mni.json b/Thanks/i18n/mni.json
index f8e83b5a..d2df5112 100644
--- a/Thanks/i18n/mni.json
+++ b/Thanks/i18n/mni.json
@@ -1,13 +1,13 @@
{
"@metadata": {
"authors": [
- "Laishram Lokendro",
- "Awangba Mangang"
+ "Amire80",
+ "Awangba Mangang",
+ "Laishram Lokendro"
]
},
- "thanks-thank": "{{GENDER:$1|{{GENDER:$2|thank}}}}",
- "thanks-thank-tooltip": "{{GENDER:$1|Send}} a thank you notification to this {{GENDER:$2|user}}",
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|ꯊꯥꯒꯠꯆꯔꯤ}}}}",
+ "thanks-thank-tooltip": "{{GENDER:$1|Send}} a thank you notification to this {{GENDER:$2|ꯁꯤꯖꯤꯟꯅꯔꯤꯕ}}",
"thanks-confirmation2": "{{GENDER:$1|Send}} public thanks for this edit?",
- "flow-thanks-confirmation-special": "nahak waphamsigidamak mayamda thagat-waheising piningbra?",
- "apihelp-flowthank-description": "Flow comment-gidamak mayamda thagat-wahei khanghanwa thao"
+ "flow-thanks-confirmation-special": "nahak waphamsigidamak mayamda thagat-waheising piningbra?"
}
diff --git a/Thanks/i18n/mr.json b/Thanks/i18n/mr.json
index 76fdfd10..6da0e49a 100644
--- a/Thanks/i18n/mr.json
+++ b/Thanks/i18n/mr.json
@@ -1,8 +1,8 @@
{
"@metadata": {
"authors": [
- "V.narsikar",
- "Macofe"
+ "Macofe",
+ "V.narsikar"
]
},
"thanks-desc": "एखाद्या सदस्यास,त्याच्या संपादनासाठी किंवा शेऱ्यासाठी धन्यवाद देण्यास दुवा जोडते",
diff --git a/Thanks/i18n/mrh.json b/Thanks/i18n/mrh.json
new file mode 100644
index 00000000..5316b5d5
--- /dev/null
+++ b/Thanks/i18n/mrh.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Teitei Para"
+ ]
+ },
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|alyna}}}}",
+ "thanks-thank-tooltip": "{{GENDER:$1|Paphao}} ta {{GENDER:$2|hmâhtuhpa}} lâta alyna pahnosana"
+}
diff --git a/Thanks/i18n/ms.json b/Thanks/i18n/ms.json
index fea2a17f..b0d63743 100644
--- a/Thanks/i18n/ms.json
+++ b/Thanks/i18n/ms.json
@@ -4,9 +4,9 @@
"Anakmalaysia",
"Aurora",
"Aviator",
- "Pizza1016",
+ "Jeluang Terluang",
"Kurniasan",
- "Jeluang Terluang"
+ "Pizza1016"
]
},
"thanks-desc": "Menambah pautan yang membolehkan pengguna mengirim ucapan terima kasih atas suntingan, ulasan, dan sebagainya.",
diff --git a/Thanks/i18n/mt.json b/Thanks/i18n/mt.json
index a9212104..03ac8a3f 100644
--- a/Thanks/i18n/mt.json
+++ b/Thanks/i18n/mt.json
@@ -22,6 +22,7 @@
"echo-category-title-edit-thank": "Ringrazzjamenti",
"notification-thanks-diff-link": "il-modifika tiegħek",
"log-name-thanks": "Reġistru ta' ringrazzjamenti",
- "log-description-thanks": "Taħt hawn lista ta' utenti irringrazzjati minn utenti oħra.",
- "logentry-thanks-thank": "$1 {{GENDER:$2|irringrazzja|irringrazzjat}} lil {{GENDER:$4|$3}}"
+ "log-description-thanks": "Hawn taħt hawn lista ta' utenti li ngħataw ringrazzjament minn utenti oħra.",
+ "logentry-thanks-thank": "$1 {{GENDER:$2|irringrazzja|irringrazzjat}} lil {{GENDER:$4|$3}}",
+ "logeventslist-thanks-log": "Ringrazzjamenti"
}
diff --git a/Thanks/i18n/mwl.json b/Thanks/i18n/mwl.json
index 5799da70..965013fa 100644
--- a/Thanks/i18n/mwl.json
+++ b/Thanks/i18n/mwl.json
@@ -1,8 +1,8 @@
{
"@metadata": {
"authors": [
- "MokaAkashiyaPT",
- "Athena in Wonderland"
+ "Athena in Wonderland",
+ "MokaAkashiyaPT"
]
},
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|agradecer}}}}",
diff --git a/Thanks/i18n/my.json b/Thanks/i18n/my.json
index 3b1baebb..c0a08403 100644
--- a/Thanks/i18n/my.json
+++ b/Thanks/i18n/my.json
@@ -1,14 +1,18 @@
{
"@metadata": {
"authors": [
- "Ninjastrikers",
- "Dr Lotus Black"
+ "Dr Lotus Black",
+ "Ninjastrikers"
]
},
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|ကျေးဇူးတင်}}}}",
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|ကျေးဇူးတင်ပြီးပြီ}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|ကျေးဇူးတင်}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|ကျေးဇူးတင်ခဲ့သည်}}}}",
+ "thanks-button-action-queued": "$1 အား {{GENDER:$1|{{GENDER:$2|ကျေးဇူးတင်နေသည်}}}}…",
+ "thanks-button-action-cancel": "မလုပ်တော့ပါ",
+ "thanks-button-action-completed": "သင် $1 အား {{GENDER:$1|{{GENDER:$2|ကျေးဇူးတင်ခဲ့သည်}}}}",
+ "thanks-error-undefined": "ကျေးဇူးတင်ခြင်းလုပ်ဆောင်ချက် မအောင်မြင်ပါ (မှားယွင်းမှုကုဒ်: $1)။ ကျေးဇူးပြု၍ ထပ်မံကြိုးစားကြည့်ပါ။",
"thanks-error-invalidrecipient-bot": "ဘော့များသည် ကျေးဇူးတင်မခံနိုင်ပါ",
"thanks-error-invalidrecipient-self": "သင့်ကိုယ်သင် ကျေးဇူးမတင်နိုင်ပါ",
"thanks-error-notloggedin": "အမည်မသိအသုံးပြုသူများ ကျေးဇူးတင်စကား မပို့နိုင်ပါ",
@@ -24,7 +28,11 @@
"echo-category-title-edit-thank": "ကျေးဇူးတင်မှုများ",
"notification-thanks-diff-link": "သင်၏ တည်းဖြတ်မှု",
"notification-header-rev-thank": "<strong>$3</strong> ရှိ သင့်တည်းဖြတ်မှုအတွက် {{GENDER:$4|သင့်အား}} $1 က {{GENDER:$2|ကျေးဇူးတင်ခဲ့သည်}}။",
+ "notification-header-creation-thank": "<strong>$3</strong> ၏ ဖန်တီးမှုအတွက် {{GENDER:$4|သင့်အား}} $1 က {{GENDER:$2|ကျေးဇူးတင်ခဲ့သည်}}။",
+ "notification-header-log-thank": "$1 က {{GENDER:$4|သင့်ကို}} <strong>$3</strong> နှင့်သက်ဆိုင်သောလုပ်ဆောင်ချက်အတွက် {{GENDER:$2|ကျေးဇူးတင်ခဲ့}}သည်။",
"notification-compact-header-edit-thank": "$1 က {{GENDER:$3|သင့်}}ကို {{GENDER:$2|ကျေးဇူးတင်ခဲ့}} သည်။",
+ "notification-bundle-header-rev-thank": "{{PLURAL:$1|လူတစ်ယောက်|လူ $1 ယောက်|100=99+ လူပေါင်း}} က {{GENDER:$3|သင့်ကို}} <strong>$2</strong> ပေါ်ရှိသင်၏တည်းဖြတ်မှုအတွက် ကျေးဇူးတင်ခဲ့သည်။",
+ "notification-bundle-header-log-thank": "{{PLURAL:$1|လူတစ်ယောက်|လူ $1 ယောက်|100=99+ လူပေါင်း}} က {{GENDER:$3|သင့်ကို}} <strong>$2</strong> နှင့်သက်ဆိုင်သောလုပ်ဆောင်ချက်အတွက် ကျေးဇူးတင်ခဲ့သည်။",
"log-name-thanks": "ကျေးဇူးတင်ခြင်း မှတ်တမ်း",
"log-description-thanks": "အောက်ပါ အသုံးပြုသူ စာရင်းသည် အခြားအသုံးပြုသူများက ကျေးဇူးတင်ခြင်း ခံခဲ့ရသူများ ဖြစ်သည်။",
"logentry-thanks-thank": "$1 သည် {{GENDER:$4|$3}} ကို {{GENDER:$2|ကျေးဇူးတင်ခဲ့သည်}}",
@@ -32,5 +40,7 @@
"notification-link-text-view-post": "မှတ်ချက်ကြည့်ရန်",
"flow-thanks-thanked-notice": "{{GENDER:$3|သင်}}သည် {{GENDER:$2|သူ၏|သူမ၏|သူတို့၏}} မှတ်ချက်အတွက် $1 ကို ကျေးဇူးတင်ခဲ့သည်။",
"notification-flow-thanks-post-link": "သင်၏မှတ်ချက်",
- "notification-header-flow-thank": "$1 က \"<strong>$3</strong>\" ရှိ သင်၏မှတ်ချက်အတွက် {{GENDER:$5|သင့်ကို}} {{GENDER:$2|ကျေးဇူးတင်ခဲ့သည်}}။"
+ "notification-header-flow-thank": "$1 က \"<strong>$3</strong>\" ရှိ သင်၏မှတ်ချက်အတွက် {{GENDER:$5|သင့်ကို}} {{GENDER:$2|ကျေးဇူးတင်ခဲ့သည်}}။",
+ "notification-compact-header-flow-thank": "$1 က {{GENDER:$3|သင်}}အား {{GENDER:$2|ကျေးဇူးတင်ခဲ့}}သည်။",
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|လူတစ်ယောက်|လူ $1 ယောက်|100=99+ လူပေါင်း}} က {{GENDER:$3|သင့်ကို}} <strong>$2</strong> ပေါ်ရှိသင်၏မှတ်ချက်အတွက် ကျေးဇူးတင်ခဲ့သည်။"
}
diff --git a/Thanks/i18n/myv.json b/Thanks/i18n/myv.json
index f4fbfc2d..501140be 100644
--- a/Thanks/i18n/myv.json
+++ b/Thanks/i18n/myv.json
@@ -4,5 +4,6 @@
"Rueter"
]
},
- "thanks-thank": "{{GENDER:$1|{{GENDER:$2|ёвтак сюкпря}}}}"
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|ёвтак сюкпря}}}}",
+ "thanks-thank-tooltip": "{{GENDER:$1|Кучомс}} шумбрат-парт сюконямо те {{GENDER:$2|теицянтень}}"
}
diff --git a/Thanks/i18n/nap.json b/Thanks/i18n/nap.json
index 301a2a5a..0dd37324 100644
--- a/Thanks/i18n/nap.json
+++ b/Thanks/i18n/nap.json
@@ -36,12 +36,5 @@
"flow-thanks-confirmation-special": "Vulite ringrazià pubbrecamente pe' stu cagnamiento?",
"flow-thanks-thanked-notice": "$1 ricevette 'e grazie voste p' 'e cummente {{GENDER:$2|suojo|suojo|lloro}}.",
"notification-flow-thanks-post-link": "'o cummento tujo",
- "notification-header-flow-thank": "$1 {{GENDER:$5|ve}} {{GENDER:$2|ringraziaje}} p' 'o cummento dint'a '''$3''' ncopp'a '''$4'''.",
- "apihelp-flowthank-description": "Manna 'e grazie pubbreche comm'a na notifica pe' nu cummento d' 'o Flow",
- "apihelp-flowthank-param-postid": "Ll'UUID d' 'o post pe' ne puté da grazie.",
- "apihelp-flowthank-example-1": "Manna grazie p' 'o cummento cu ll'<kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "Manna 'e grazie a n'editore.",
- "apihelp-thank-param-rev": "ID 'e verziona pe' putè dà grazie a coccheruno.",
- "apihelp-thank-param-source": "Na stringa curta c' 'a descriziona d' 'o fonte d' 'a riquesta. Pe ne dà n'esempie, <kbd>diff</kbd> o <kbd>history</kbd>.",
- "apihelp-thank-example-1": "Manna 'e grazie 'a revisiona <kbd>ID 456</kbd>, c' 'o source facenno na diff"
+ "notification-header-flow-thank": "$1 {{GENDER:$5|ve}} {{GENDER:$2|ringraziaje}} p' 'o cummento dint'a '''$3''' ncopp'a '''$4'''."
}
diff --git a/Thanks/i18n/nb.json b/Thanks/i18n/nb.json
index 38500411..539a4c7c 100644
--- a/Thanks/i18n/nb.json
+++ b/Thanks/i18n/nb.json
@@ -1,12 +1,13 @@
{
"@metadata": {
"authors": [
+ "AnB",
+ "Chameleon222",
"Danmichaelo",
"Jeblad",
- "Njardarlogar",
- "Chameleon222",
+ "Jon Harald Søby",
"Macofe",
- "Jon Harald Søby"
+ "Njardarlogar"
]
},
"thanks-desc": "Legger til lenker for å takke brukere for redigeringer, kommentarer, etc.",
@@ -14,6 +15,9 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|takket}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Takk}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Takket}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Takker}}}} $1...",
+ "thanks-button-action-cancel": "Avbryt",
+ "thanks-button-action-completed": "Du {{GENDER:$1|{{GENDER:$2|takket}}}} $1",
"thanks-error-undefined": "Takkehandlingen feilet (feilkode: $1). Prøv igjen.",
"thanks-error-invalid-log-id": "Loggpost ble ikke funnet",
"thanks-error-invalid-log-type": "Loggtypen '$1' er ikke i hvitelisten over tillatte loggtyper.",
@@ -39,6 +43,7 @@
"echo-category-title-edit-thank": "Takk",
"notification-thanks-diff-link": "redigeringen din",
"notification-header-rev-thank": "$1 {{GENDER:$2|takket}} for redigeringen {{GENDER:$4|din}} på <strong>$3</strong>.",
+ "notification-header-creation-thank": "$1 {{GENDER:$2|takket}} {{GENDER:$4|deg}} for at du opprettet <strong>$3</strong>.",
"notification-header-log-thank": "$1 {{GENDER:$2|takket}} {{GENDER:$4|deg}} for handlingen din knytta til <strong>$3</strong>.",
"notification-compact-header-edit-thank": "$1 {{GENDER:$2|takket}} {{GENDER:$3|deg}}.",
"notification-bundle-header-rev-thank": "{{PLURAL:$1|En person|$1 personer|100=99+ personer}} takket for redigeringen {{GENDER:$3|din}} på <strong>$2</strong>.",
@@ -58,15 +63,5 @@
"notification-flow-thanks-post-link": "kommentaren din",
"notification-header-flow-thank": "$1 {{GENDER:$2|takket}} for kommentaren {{GENDER:$5|din}} under overskriften «<strong>$3</strong>».",
"notification-compact-header-flow-thank": "$1 {{GENDER:$2|takket}} {{GENDER:$3|deg}}.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|Én person|$1 personer|100=99+ personer}} takket for kommentaren {{GENDER:$3|din}} under «<strong>$2</strong>».",
- "apihelp-flowthank-description": "Send en offentlig takk for en Flow-kommentar.",
- "apihelp-flowthank-summary": "Send en offentlig takk for en Flow-kommentar.",
- "apihelp-flowthank-param-postid": "UUID-en til posten det skal takkes for.",
- "apihelp-flowthank-example-1": "Send takk for kommentaren med <kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "Send en takk til en skribent.",
- "apihelp-thank-summary": "Send et takkevarsel til en bidragsyter.",
- "apihelp-thank-param-rev": "Revisjons-ID å takke noen for. Denne eller 'log' må oppgis.",
- "apihelp-thank-param-log": "Logg-ID å takke noen for. Denne eller 'rev' må oppgis.",
- "apihelp-thank-param-source": "En kort streng som beskriver kilden for forespørselen, for eksempel <kbd>diff</kbd> eller <kbd>history</kbd>.",
- "apihelp-thank-example-1": "Send takk for revisjonen med <kbd>ID 456</kbd>, der referansen blir en diff-side"
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Én person|$1 personer|100=99+ personer}} takket for kommentaren {{GENDER:$3|din}} under «<strong>$2</strong>»."
}
diff --git a/Thanks/i18n/nds-nl.json b/Thanks/i18n/nds-nl.json
index a8791ba2..16366552 100644
--- a/Thanks/i18n/nds-nl.json
+++ b/Thanks/i18n/nds-nl.json
@@ -1,20 +1,20 @@
{
"@metadata": {
"authors": [
- "Servien",
- "Macofe"
+ "Macofe",
+ "Servien"
]
},
"thanks-desc": "Voegt verwiezingen toe um gebrukers te bedanken veur bewarkingen, kommentaar, enz.",
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|bedanken}}}}",
- "thanks-thanked": "{{GENDER:$1|is bedankt}}",
+ "thanks-thanked": "{{GENDER:$1|{{GENDER:$2|is bedanked}}}}",
"thanks-button-thank": "{{GENDER:$1|Bedanken}}",
"thanks-button-thanked": "{{GENDER:$1|Is bedankt}}",
"thanks-error-undefined": "Bedanken is mislokt. Probeer t weer.",
"thanks-error-invalidrevision": "t Versienummer is niet geldig.",
"thanks-error-ratelimited": "{{GENDER:$1|Je}} hebben joew limiet veur bedankjes overschrejen. Wacht effen veurda'j verdan gaon.",
- "thanks-thank-tooltip": "{{GENDER:$1|Stuur}} n melding mit n bedankjen naor disse {{GENDER:$2|gebruker}}",
- "thanks-confirmation2": "n Bedankjen veur disse bewarking {{GENDER:$1|sturen}}?",
+ "thanks-thank-tooltip": "{{GENDER:$1|Stüür}} disse {{GENDER:$2|gebruker}} een bedankbericht",
+ "thanks-confirmation2": "Oapenbåre dankbetüging {{GENDER:$1|stüren}}?",
"thanks-thanked-notice": "$1 hef joew bedankjen ontvangen veur {{GENDER:$2|zien|heur|zien}} bewarking.",
"thanks": "Bedanken",
"echo-pref-subscription-edit-thank": "Bedank m'n veur mien bewarking",
@@ -25,17 +25,11 @@
"log-name-thanks": "Bedankjeslogboek",
"log-description-thanks": "Hieronder zie'j n lieste mit gebrukers die deur aandere gebrukers bedankt bin.",
"logentry-thanks-thank": "$1 {{GENDER:$2|hef}} {{GENDER:$4|$3}} bedankt",
- "thanks-error-no-id-specified": "Je mutten n versienummer opgeven um n bedankjen te sturen.",
+ "thanks-error-no-id-specified": "Jy müttet een versy- of logbooknummer upgeaven üm een dankbetüging te stüren.",
+ "thanks-confirmation-special-rev": "Wil jy oapenbår bedanken vöär disse bewarking?",
"notification-link-text-view-post": "Reaksie bekieken",
"thanks-error-invalidpostid": "Berichtnummer is niet geldig.",
- "flow-thanks-confirmation-special": "Wi'j n bedankjen sturen veur disse reaksie?",
+ "flow-thanks-confirmation-special": "Wil jy een oapenbåre dankbetüging stüren vöär disse reakty?",
"flow-thanks-thanked-notice": "$1 hef joew bedankjen ontvangen veur {{GENDER:$2|zien|heur|zien}} reaksie.",
- "notification-flow-thanks-post-link": "joew reaksie",
- "apihelp-flowthank-description": "Stuur n bedankjen veur n Flow-reaksie.",
- "apihelp-flowthank-param-postid": "De UUID van t bericht um veur te bedanken.",
- "apihelp-flowthank-example-1": "Stuur n bedankjen veur de reaksie mit <kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "Stuur n bedankjen naor n bewarker.",
- "apihelp-thank-param-rev": "Versienummer um ene veur te bedanken.",
- "apihelp-thank-param-source": "n Korte tekste waormee je de bron veur t verzeuk beschrieven, bieveurbeeld <kbd>diff</kbd> of <kbd>history</kbd>.",
- "apihelp-thank-example-1": "Stuur n bedankjen veur versienummer 456, mit n 'wiezig'-zied as bron"
+ "notification-flow-thanks-post-link": "joew reaksie"
}
diff --git a/Thanks/i18n/ne.json b/Thanks/i18n/ne.json
index 87b99d0f..e3541a47 100644
--- a/Thanks/i18n/ne.json
+++ b/Thanks/i18n/ne.json
@@ -1,11 +1,12 @@
{
"@metadata": {
"authors": [
- "बिप्लब आनन्द",
- "Nirjal stha",
"NehalDaveND",
+ "Nirjal stha",
+ "बिप्लब आनन्द",
"राम प्रसाद जोशी",
- "सरोज कुमार ढकाल"
+ "सरोज कुमार ढकाल",
+ "हिमाल सुबेदी"
]
},
"thanks-desc": "प्रयोगकर्ताहरूलाई तिनीहरूको सम्पादन, टिप्पणी आदिको लागि धन्यवाद दिने लिङ्क जोड्ने।",
@@ -25,6 +26,7 @@
"echo-category-title-edit-thank": "धन्यवाद",
"notification-thanks-diff-link": "तपाईंको सम्पादन",
"notification-header-rev-thank": "$1 ले {{GENDER:$4|तपाईंलाई}} तपाईंको सम्पादन <strong>$3</strong> को लागि {{GENDER:$2|धन्यवाद दिएका छन्}} ।",
+ "notification-header-creation-thank": "$1 {{GENDER:$2|धन्यवाद}} {{GENDER:$4|तपाईकाे}} सृजनाका लागि <strong>$3</strong> छ।",
"notification-bundle-header-rev-thank": "{{PLURAL:$1|एक व्यक्ति|$1 व्यक्तिहरू|100=99+ व्यक्तिहरू}}ले {{GENDER:$3|तपाईंलाई}} <strong>$2</strong>मा तपाईंले गरेको सम्पादनको लागि धन्यवाद दिएका छन् ।",
"log-name-thanks": "धन्यवाद लग",
"log-description-thanks": "अन्य प्रयोगकर्ताहरूद्वारा धन्यवाद पाउने प्रयोगकर्ताहरूको सूची निम्न रहेको छ।",
@@ -35,5 +37,5 @@
"flow-thanks-confirmation-special": "के तपाईं यस प्रतिक्रियाको लागि धन्यवाद पठाउन चाहनुहुन्छ?",
"flow-thanks-thanked-notice": "तपाईंलाई {{GENDER:$2|उसले|उनले|उनिहरूले}} दिएको प्रतिक्रिया मन परेको छ भन्ने सूचना $1लाई पठाइएको छ ।",
"notification-header-flow-thank": " \"<strong>$3</strong>\" मा तपाईँको प्रतिक्रियाको लागि $1 ले {{GENDER:$5|तपाईँलाई}} {{GENDER:$2|धन्यवाद}} दिनुभो ।",
- "notification-compact-header-flow-thank": "$1 ले {{GENDER:$3|तपाईं}}लाई {{GENDER:$2|धन्यवाद}} दिनुभो ।"
+ "notification-compact-header-flow-thank": "$1 ले {{GENDER:$3|तपाईँ}}लाई {{GENDER:$2|धन्यवाद}} दिनुभो ।"
}
diff --git a/Thanks/i18n/nl.json b/Thanks/i18n/nl.json
index d51318c3..4300459a 100644
--- a/Thanks/i18n/nl.json
+++ b/Thanks/i18n/nl.json
@@ -1,23 +1,26 @@
{
"@metadata": {
"authors": [
+ "Dinosaur918",
+ "Elroy",
+ "HanV",
"Hansmuller",
"JurgenNL",
+ "Klaas van Buiten",
+ "KlaasZ4usV",
"Konovalov",
- "SPQRobin",
- "Siebrand",
- "Sjoerddebruin",
- "Southparkfan",
- "Mar(c)",
- "Robin0van0der0vliet",
- "HanV",
- "Dinosaur918",
- "Robin van der Vliet",
"Macofe",
"Mainframe98",
- "Patio",
+ "Mar(c)",
"Mbch331",
- "KlaasZ4usV"
+ "Patio",
+ "PiefPafPier",
+ "Robin van der Vliet",
+ "Robin0van0der0vliet",
+ "SPQRobin",
+ "Siebrand",
+ "Sjoerddebruin",
+ "Southparkfan"
]
},
"thanks-desc": "Voegt koppelingen toe voor het bedanken van gebruikers voor bewerkingen, reacties, enzovoort.",
@@ -25,9 +28,13 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|is bedankt}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Bedanken}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Bedankt}}}}",
+ "thanks-button-action-queued": "$1 wordt {{GENDER:$1|{{GENDER:$2|bedankt}}}}...",
+ "thanks-button-action-cancel": "Annuleren",
+ "thanks-button-action-completed": "U hebt $1 {{GENDER:$1|{{GENDER:$2|bedankt}}}}",
"thanks-error-undefined": "Bedanken is mislukt (foutmelding: $1). Probeer het opnieuw.",
"thanks-error-invalid-log-id": "Logboekregel kon niet worden gevonden",
"thanks-error-invalid-log-type": "Logboektype '$1' bevindt zich niet in de lijst met toegestane logboektypes.",
+ "thanks-error-log-deleted": "De opgevraagde logboekregel is verwijderd en er kan daarom geen bedankje voor verstuurd worden.",
"thanks-error-invalidrevision": "Versie-ID is niet geldig.",
"thanks-error-revdeleted": "Kan bedankt niet sturen, omdat de versie gewist is",
"thanks-error-notitle": "Paginatitel kon niet worden bepaald",
@@ -36,6 +43,7 @@
"thanks-error-invalidrecipient-self": "U kunt niet uzelf bedanken",
"thanks-error-notloggedin": "Anonieme gebruikers kunnen geen bedankjes versturen",
"thanks-error-ratelimited": "{{GENDER:$1|U}} hebt uw limiet voor bedankjes overschreden. Wacht even en probeer het dan opnieuw.",
+ "thanks-error-api-params": "De 'revid' of de 'logid' parameter is verplicht",
"thanks-thank-tooltip": "Deze {{GENDER:$2|gebruiker}} een bedankje {{GENDER:$1|sturen}}",
"thanks-thank-tooltip-no": "Bedankje {{GENDER:$1|annuleren}}",
"thanks-thank-tooltip-yes": "Bedankje {{GENDER:$1|versturen}}",
@@ -44,7 +52,7 @@
"thanks": "Bedanken",
"thanks-submit": "Bedankje sturen",
"echo-pref-subscription-edit-thank": "als iemand u bedankt voor een bewerking",
- "echo-pref-tooltip-edit-thank": "Informeer mij wanneer iemand mij bedankt voor een bewerking van mij.",
+ "echo-pref-tooltip-edit-thank": "Meld mij wanneer iemand mij bedankt voor een bewerking die ik gedaan heb.",
"echo-category-title-edit-thank": "Bedankjes",
"notification-thanks-diff-link": "uw bewerking",
"notification-header-rev-thank": "$1 {{GENDER:$2|heeft}} {{GENDER:$4|u}} bedankt voor uw bewerking op <strong>$3</strong>.",
@@ -68,14 +76,5 @@
"notification-flow-thanks-post-link": "uw reactie",
"notification-header-flow-thank": "$1 {{GENDER:$2|heeft}} {{GENDER:$5|u}} bedankt voor uw reactie op \"<strong>$3</strong>\".",
"notification-compact-header-flow-thank": "$1 {{GENDER:$2|bedankte}} {{GENDER:$3|u}}.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|Eén persoon bedankte|$1 personen bedankten|100=99+ personen bedankten}} {{GENDER:$3|u}} voor uw reactie op \"<strong>$2</strong>\".",
- "apihelp-flowthank-description": "Stuur een openbaar bedankje voor een Flow-reactie.",
- "apihelp-flowthank-summary": "Stuur een openbaar bedankje voor een Flow-reactie.",
- "apihelp-flowthank-param-postid": "De UUID van het bericht waarvoor u wilt bedanken.",
- "apihelp-flowthank-example-1": "Stuur een bedankje voor de reactie met <kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "Stuur een bedankje naar een bewerker.",
- "apihelp-thank-summary": "Stuur een bedankje naar een bewerker.",
- "apihelp-thank-param-rev": "Versie-ID waarvoor u iemand wilt bedanken.",
- "apihelp-thank-param-source": "Een korte tekenreeks die de bron van het verzoek beschrijft, bijvoorbeeld <kbd>diff</kbd> of <kbd>history</kbd>.",
- "apihelp-thank-example-1": "Stuur een bedankje voor versie-<kbd>ID 456</kbd>, waarbij de bron een diff-pagina is"
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Eén persoon bedankte|$1 personen bedankten|100=99+ personen bedankten}} {{GENDER:$3|u}} voor uw reactie op \"<strong>$2</strong>\"."
}
diff --git a/Thanks/i18n/nn.json b/Thanks/i18n/nn.json
index 78252e1e..afa4c33c 100644
--- a/Thanks/i18n/nn.json
+++ b/Thanks/i18n/nn.json
@@ -1,15 +1,17 @@
{
"@metadata": {
"authors": [
- "Njardarlogar",
- "Chameleon222"
+ "Chameleon222",
+ "Njardarlogar"
]
},
- "thanks-desc": "Legg til takkelenkjer til historikk og skilnadsvising",
+ "thanks-desc": "Legg til lenkjer for å takka brukarar for endringar, kommentarar osb.",
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|takk}}}}",
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|takka}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Takk}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Takka}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Takkar}}}} $1 …",
+ "thanks-button-action-completed": "Du {{GENDER:$1|{{GENDER:$2|takka}}}} $1",
"thanks-error-undefined": "Takkehandlinga gjekk ikkje (feilkode: $1). Freist om att.",
"thanks-error-invalidrevision": "Versjons-ID-en er ikkje gild",
"thanks-error-invalidrecipient-bot": "Robotar kan ikkje takkast",
@@ -28,6 +30,7 @@
"echo-category-title-edit-thank": "Takk",
"notification-thanks-diff-link": "endringa di",
"notification-header-rev-thank": "$1 {{GENDER:$2|takka}} {{GENDER:$4|deg}} for endringa di på <strong>$3</strong>.",
+ "notification-header-creation-thank": "$1 {{GENDER:$2|takka}} {{GENDER:$4|deg}} for at du oppretta <strong>$3</strong>.",
"notification-header-log-thank": "$1 {{GENDER:$2|takka}} {{GENDER:$4|deg}} for handlinga di knytt til <strong>$3</strong>.",
"notification-compact-header-edit-thank": "$1 {{GENDER:$2|takka}} {{GENDER:$3|deg}}.",
"notification-bundle-header-rev-thank": "{{PLURAL:$1|Éin person|$1 personar|100=fleire enn 99 personar}} takka {{GENDER:$3|deg}} for endringa di på <strong>$2</strong>.",
@@ -36,6 +39,9 @@
"log-description-thanks": "Under er ei liste over brukarar som har vorte takka av andre brukarar.",
"logentry-thanks-thank": "$1 {{GENDER:$2|takka}} {{GENDER:$4|$3}}",
"logeventslist-thanks-log": "Takkelogg",
+ "thanks-confirmation-special-log": "Ynskjer du å offentleg senda ein takk for denne logghandlinga?",
+ "thanks-confirmation-special-rev": "Ynskjer du å offentleg senda ein takk for denne endringa?",
+ "flow-thanks-confirmation-special": "Ynskjer du å offentleg senda ein takk for denne kommentaren?",
"flow-thanks-thanked-notice": "{{GENDER:$3|Du}} takka $1 for kommentaren {{GENDER:$2|hans|hennar|deira}}.",
"notification-flow-thanks-post-link": "kommentaren din",
"notification-header-flow-thank": "$1 {{GENDER:$2|takka}} {{GENDER:$5|deg}} for kommentaren din på «<strong>$3</strong>».",
diff --git a/Thanks/i18n/nqo.json b/Thanks/i18n/nqo.json
new file mode 100644
index 00000000..6b6539a7
--- /dev/null
+++ b/Thanks/i18n/nqo.json
@@ -0,0 +1,12 @@
+{
+ "@metadata": {
+ "authors": [
+ "Amire80",
+ "Babamamadidianee",
+ "Lancine.kounfantoh.fofana",
+ "Lanciné.kounfantoh.fofana"
+ ]
+ },
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|ߌ ߣߌ߫ ߗߋ߫}}}}",
+ "thanks-thank-tooltip": "{{GENDER:$1|ߗߋ߫}} ߞߎ߲ߟߎ߲ߖߋߟߌ߫ ߗߋߛߓߍ ߗߋ߫ {{GENDER:$2|ߟߊ߬ߓߊ߰ߙߊ߬ߟߊ}} ߡߊ߬"
+}
diff --git a/Thanks/i18n/olo.json b/Thanks/i18n/olo.json
index 4afb758d..4170f686 100644
--- a/Thanks/i18n/olo.json
+++ b/Thanks/i18n/olo.json
@@ -1,8 +1,8 @@
{
"@metadata": {
"authors": [
- "Mashoi7",
- "Ilja.mos"
+ "Ilja.mos",
+ "Mashoi7"
]
},
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|passiboiče}}}}",
diff --git a/Thanks/i18n/pcd.json b/Thanks/i18n/pcd.json
new file mode 100644
index 00000000..c6a37f0c
--- /dev/null
+++ b/Thanks/i18n/pcd.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Geoleplubo"
+ ]
+ },
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|armércier}}}}",
+ "thanks-thank-tooltip": "{{GENDER:$1|Invoéyer}} eune notificacion d' remerciemint à {{GENDER:$2|échl' uzeu|chole utilisatriche}}"
+}
diff --git a/Thanks/i18n/pl.json b/Thanks/i18n/pl.json
index f0f707f4..25cf7f16 100644
--- a/Thanks/i18n/pl.json
+++ b/Thanks/i18n/pl.json
@@ -2,15 +2,16 @@
"@metadata": {
"authors": [
"Chrumps",
+ "Macofe",
"Matma Rex",
+ "Rail",
+ "Railfail536",
+ "Sethakill",
"Tar Lócesilion",
+ "The Polish",
"Ty221",
"WTM",
- "The Polish",
- "Macofe",
- "Sethakill",
- "Woytecr",
- "Railfail536"
+ "Woytecr"
]
},
"thanks-desc": "Dodaje link umożliwiający podziękowanie użytkownikowi za edycję, komentarz itp.",
@@ -18,6 +19,9 @@
"thanks-thanked": "{{GENDER:$2|{{GENDER:$1|podziękowałeś|podziękowałaś}}}}",
"thanks-button-thank": "{{GENDER:$2|{{GENDER:$1|Podziękuj}}}}",
"thanks-button-thanked": "{{GENDER:$2|{{GENDER:$1|Podziękowałeś|Podziękowałaś}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Dziękujesz}}}} $1…",
+ "thanks-button-action-cancel": "Anuluj",
+ "thanks-button-action-completed": "{{GENDER:$1|{{GENDER:$2|podziękowałeś|podziękowałaś}}}} $1",
"thanks-error-undefined": "Operacja podziękowania nie powiodła się (kod błędu: $1). Proszę spróbować ponownie.",
"thanks-error-invalid-log-id": "Nie znaleziono wpisu rejestru",
"thanks-error-invalid-log-type": "Rodzaj czynności z rejestru '$1' nie znajduje się na białej liście dozwolonych rodzajów akcji.",
@@ -63,15 +67,5 @@
"notification-flow-thanks-post-link": "twój komentarz",
"notification-header-flow-thank": "$1 {{GENDER:$2|podziękował|podziękowała|podziękował(a)}} {{GENDER:$5|ci}} za komentarz w \"<strong>$3</strong>\".",
"notification-compact-header-flow-thank": "$1 {{GENDER:$2|podziękował|podziękowała|podziękował(a)}} {{GENDER:$3|ci}}.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|Jedna osoba|$1 osoby|$1 osób|100=Co najmniej 100 osób}} podziękowało {{GENDER:$3|ci}} za twój komentarz w „<strong>$2</strong>”.",
- "apihelp-flowthank-description": "Wysyła publiczne powiadomienie z podziękowaniem za komentarz Flow.",
- "apihelp-flowthank-summary": "Wysyła publiczne powiadomienie z podziękowaniem za komentarz Flow.",
- "apihelp-flowthank-param-postid": "UUID postu, za który chcesz podziękować.",
- "apihelp-flowthank-example-1": "Wyślij podziękowanie za komentarz z <kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "Wysyła powiadomienie z podziękowaniem do edytującego.",
- "apihelp-thank-summary": "Wysyła powiadomienie z podziękowaniem do edytującego.",
- "apihelp-thank-param-rev": "ID wersji za którą podziękować. Musi być podany albo ten parametr albo parametr 'log'.",
- "apihelp-thank-param-log": "Identyfikator wpisu rejestru czynności, którego tyczy się podziękowanie. Musi być podany albo ten parametr albo parametr 'rev'.",
- "apihelp-thank-param-source": "Krótki ciąg znaków opisujący źródło żądania, na przykład <kbd>diff</kbd> lub <kbd>history</kbd>.",
- "apihelp-thank-example-1": "Wyślij podziękowanie za wersję o <kbd>ID 456</kbd>, z źródłem będącym stroną porównywania"
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Jedna osoba|$1 osoby|$1 osób|100=Co najmniej 100 osób}} podziękowało {{GENDER:$3|ci}} za twój komentarz w „<strong>$2</strong>”."
}
diff --git a/Thanks/i18n/pnb.json b/Thanks/i18n/pnb.json
index da017cca..9dc2ab0f 100644
--- a/Thanks/i18n/pnb.json
+++ b/Thanks/i18n/pnb.json
@@ -1,8 +1,8 @@
{
"@metadata": {
"authors": [
- "Khalid Mahmood",
- "Abbas dhothar"
+ "Abbas dhothar",
+ "Khalid Mahmood"
]
},
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|شکریہ}}}}",
diff --git a/Thanks/i18n/pt-br.json b/Thanks/i18n/pt-br.json
index e148f0d0..7c7c1e61 100644
--- a/Thanks/i18n/pt-br.json
+++ b/Thanks/i18n/pt-br.json
@@ -1,24 +1,28 @@
{
"@metadata": {
"authors": [
+ "Albertoleoncio",
"Cainamarques",
+ "Chicocvenancio",
"Dianakc",
+ "Eduardo Addad de Oliveira",
+ "Felipe L. Ewald",
"HenriqueCrang",
+ "Macofe",
"OTAVIO1981",
"Opraco",
"Teles",
- "TheEduGobi",
- "Macofe",
- "Chicocvenancio",
- "Felipe L. Ewald",
- "Eduardo Addad de Oliveira"
+ "TheEduGobi"
]
},
"thanks-desc": "Adiciona ligações para agradecer usuários por suas edições, comentários, etc.",
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|agradecer}}}}",
- "thanks-thanked": "{{GENDER:$1|{{GENDER:$2|agradecido|agradecida}}}}",
+ "thanks-thanked": "{{GENDER:$1|{{GENDER:$2|agradecimento enviado}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Agradecer}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Agradecido|Agradecida}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Agradecendo}}}}",
+ "thanks-button-action-cancel": "Cancelar",
+ "thanks-button-action-completed": "{{GENDER:$1|{{GENDER:$2|agradeceu|agradeceu}}}}",
"thanks-error-undefined": "O agradecimento falhou (erro: $1). Tente de novamente.",
"thanks-error-invalid-log-id": "A entrada do registo não foi encontrada",
"thanks-error-invalid-log-type": "O tipo de registo '$1' não consta da lista branca dos tipos de registo permitidos.",
@@ -35,7 +39,7 @@
"thanks-thank-tooltip": "{{GENDER:$1|Enviar}} uma notificação de agradecimento a {{GENDER:$2|este usuário|esta usuária}}",
"thanks-thank-tooltip-no": "{{GENDER:$1|Cancelar}} a notificação de agradecimento",
"thanks-thank-tooltip-yes": "{{GENDER:$1|Enviar}} a notificação de agradecimento",
- "thanks-confirmation2": "Publicamente, {{GENDER:$1|enviar}} obrigado?",
+ "thanks-confirmation2": "{{GENDER:$1|Enviar}} um agradecimento que será público?",
"thanks-thanked-notice": "{{GENDER:$3|Você}} agradeceu a {{GENDER:$2|$1}}.",
"thanks": "Enviar agradecimento",
"thanks-submit": "Enviar agradecimento",
@@ -64,15 +68,5 @@
"notification-flow-thanks-post-link": "seu comentário",
"notification-header-flow-thank": "$1 {{GENDER:$2|agradeceu}} {{GENDER:$5|você}} por seu comentário em <strong>$3</strong>.",
"notification-compact-header-flow-thank": "$1 {{GENDER:$2|agradeceu}} {{GENDER:$3|você}}.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|Uma pessoa agradeceu|$1 pessoas agradeceram|100=99+ pessoas agradeceram}} {{GENDER:$3|você}} por seu comentário em <strong>$2</strong>.",
- "apihelp-flowthank-description": "Enviar uma notificação de agradecimento pública por um comentário no Flow.",
- "apihelp-flowthank-summary": "Enviar uma notificação de agradecimento pública por um comentário no Flow.",
- "apihelp-flowthank-param-postid": "O UUID da postagem a ser agradecida.",
- "apihelp-flowthank-example-1": "Enviar um agradecimento pelo comentário com <kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "Enviar uma notificação de agradecimento a um(a) editor(a).",
- "apihelp-thank-summary": "Enviar uma notificação de agradecimento a um(a) editor(a).",
- "apihelp-thank-param-rev": "Identificador da revisão a agradecer a alguém. Tem de ser fornecido este identificador, ou 'log'.",
- "apihelp-thank-param-log": "Identificador do registo a agradecer a alguém. Tem de ser fornecido este identificador, ou 'rev'.",
- "apihelp-thank-param-source": "Uma cadeia curta descrevendo a fonte da solicitação. Por exemplo, <kbd>diff</kbd> ou <kbd>history</kbd>.",
- "apihelp-thank-example-1": "Enviar um agradecimento pela revisão <kbd>ID 456</kbd, com uma página de comparação de edições como fonte"
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Uma pessoa agradeceu|$1 pessoas agradeceram|100=99+ pessoas agradeceram}} {{GENDER:$3|você}} por seu comentário em <strong>$2</strong>."
}
diff --git a/Thanks/i18n/pt.json b/Thanks/i18n/pt.json
index f22c9dd3..97dc88fb 100644
--- a/Thanks/i18n/pt.json
+++ b/Thanks/i18n/pt.json
@@ -1,21 +1,21 @@
{
"@metadata": {
"authors": [
+ "Athena in Wonderland",
+ "Chicocvenancio",
+ "Fúlvio",
"GoEThe",
+ "Hamilton Abreu",
+ "He7d3r",
"Helder.wiki",
"Imperadeiro98",
+ "Macofe",
"Malafaya",
"OTAVIO1981",
"Oona",
"Opraco",
"Titoncio",
- "Vitorvicentevalente",
- "He7d3r",
- "Fúlvio",
- "Macofe",
- "Hamilton Abreu",
- "Chicocvenancio",
- "Athena in Wonderland"
+ "Vitorvicentevalente"
]
},
"thanks-desc": "Adiciona hiperligações para agradecer a utilizadores por edições, comentários, etc.",
@@ -23,6 +23,9 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|agradecimento enviado}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Agradecer}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Agradecimento enviado}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|A agradecer a}}}} $1…",
+ "thanks-button-action-cancel": "Cancelar",
+ "thanks-button-action-completed": "Você {{GENDER:$1|{{GENDER:$2|agradeceu a}}}} $1",
"thanks-error-undefined": "A ação de agradecimento falhou (código de erro: $1). Por favor, tente novamente.",
"thanks-error-invalid-log-id": "A entrada do registo não foi encontrada",
"thanks-error-invalid-log-type": "O tipo de registo '$1' não consta da lista branca dos tipos de registo permitidos.",
@@ -68,15 +71,5 @@
"notification-flow-thanks-post-link": "o seu comentário",
"notification-header-flow-thank": "$1 {{GENDER:$2|agradeceu-lhe}} {{GENDER:$5|pelo}} seu comentário em \"<strong>$3</strong>\".",
"notification-compact-header-flow-thank": "$1 {{GENDER:$2|agradeceu}}{{GENDER:$3|-lhe}}.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|Uma pessoa agradeceu-lhe|$1 pessoas agradeceram-lhe|100=Mais de 99 pessoas agradeceram-lhe}} pelo {{GENDER:$3|seu}} comentário em \"<strong>$2</strong>\".",
- "apihelp-flowthank-description": "Enviar notificação de agradecimento público por um comentário no Flow.",
- "apihelp-flowthank-summary": "Enviar notificação de agradecimento público por um comentário no Flow.",
- "apihelp-flowthank-param-postid": "O UUID da mensagem a agradecer.",
- "apihelp-flowthank-example-1": "Agradeça o comentário com o <kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "Enviar uma notificação de agradecimento a um editor.",
- "apihelp-thank-summary": "Enviar uma notificação de agradecimento a um editor.",
- "apihelp-thank-param-rev": "Identificador da revisão a agradecer a alguém. Tem de ser fornecido este identificador, ou 'log'.",
- "apihelp-thank-param-log": "Identificador do registo a agradecer a alguém. Tem de ser fornecido este identificador, ou 'rev'.",
- "apihelp-thank-param-source": "Um texto breve que descreve a origem do pedido. Por exemplo, <kbd>diff</kbd> ou <kbd>history</kbd>.",
- "apihelp-thank-example-1": "Enviar um agradecimento pela revisão <kbd>ID 456</kbd>, com uma página de diferenças como fonte"
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Uma pessoa agradeceu-lhe|$1 pessoas agradeceram-lhe|100=Mais de 99 pessoas agradeceram-lhe}} pelo {{GENDER:$3|seu}} comentário em \"<strong>$2</strong>\"."
}
diff --git a/Thanks/i18n/qqq.json b/Thanks/i18n/qqq.json
index cbc10177..399954b6 100644
--- a/Thanks/i18n/qqq.json
+++ b/Thanks/i18n/qqq.json
@@ -2,17 +2,19 @@
"@metadata": {
"authors": [
"Amire80",
+ "Djiboun",
+ "Liuxinyu970226",
+ "Mar(c)",
+ "Nemo bis",
"Nike",
"Pxos",
"Raymond",
+ "Robby",
"Shirayuki",
"Siebrand",
+ "Toghrul Rahimli",
"Umherirrender",
- "Liuxinyu970226",
- "Djiboun",
- "Nemo bis",
- "Verdy p",
- "Mar(c)"
+ "Verdy p"
]
},
"thanks-desc": "{{desc|name=Thanks|url=https://www.mediawiki.org/wiki/Extension:Thanks}}",
@@ -20,6 +22,9 @@
"thanks-thanked": "This message immediately replaces the message {{msg-mw|Thanks-thank}} after it's pressed. It means that the thanking operation has been completed. It can be translated as \"''thanked''\" in \"You ''thanked'' the user\" or \"The user has just been ''thanked''\" - whatever is appropriate to your language.\n\nFor languages that need it, the gender of each of the thanked and thanking users is available.\n\nParameters:\n* $1 - The user that is thanking\n* $2 - The user that has been thanked\n\n{{Identical|Thanked}}",
"thanks-button-thank": "Text of a button to thank another user. Same as {{msg-mw|Thanks-thank}}, but the context is in a button.\n\nFor languages that need it, the gender of each of the thanked and thanking users is available.\n\nParameters:\n* $1 - The user that is thanking\n* $2 - The user that is being thanked\n\n{{Identical|Thank}}",
"thanks-button-thanked": "This message immediately replaces the message {{msg-mw|Thanks-button-thank}} after it's pressed. It means that the thanking operation has been completed. Same as {{msg-mw|Thanks-thanked}}, but the context is in a button.\n\nFor languages that need it, the gender of each of the thanked and thanking users is available.\n\nParameters:\n* $1 - The user that is thanking\n* $2 - The user that has been thanked\n\n{{Identical|Thanked}}",
+ "thanks-button-action-queued": "Informs the user the thanks will happen ($1)\nParameters:\n$1 - username \n$2 - gender",
+ "thanks-button-action-cancel": "Follows {{msg-mw|thanks-button-action-queued}} and is clickable to cancel the action.\n{{Identical|Cancel}}",
+ "thanks-button-action-completed": "You {{GENDER:$1|{{GENDER:$2|thanked}}}} $1",
"thanks-error-undefined": "Error message that is displayed when the thank action fails. $1 is the error code returned by the API (an English string).",
"thanks-error-invalid-log-id": "Error message that is displayed when the thank action can't find the log entry it's supposed to thank for.",
"thanks-error-invalid-log-type": "Error message that is displayed when thanks is attempted for a log entry of a non-whitelisted type. $1 is the offending log type.",
@@ -65,15 +70,5 @@
"notification-flow-thanks-post-link": "The text of a link to the comment made by the user.\n\nUsed for <code>$2</code> in {{msg-mw|notification-flow-thanks}}. Should have capitalization appropriate for the middle of a sentence.\n\nThis is an object in a sentence so it should be in object case in languages where there is a special object form for words.",
"notification-header-flow-thank": "Header text for a notification when a user is thanked for their comment on a Flow board.\n\nParameters:\n* $1 – The username of the user sending the thanks (not suitable for GENDER).\n* $2 – Either unused by the translation, or the thanking user's name for use in GENDER.\n* $3 – The title of the topic the comment belongs to.\n* $4 – The title of the page where the comment is located.\n* $5 – Either unused by the translation, or the username of the user being thanked, for use in GENDER.\n\n{{related|Notification-header-flow}}",
"notification-compact-header-flow-thank": "Compact header text for a notification when a user is thanked for their comment on a Flow board.\n\nParameters:\n* $1 – The username of the user sending the thanks (not suitable for GENDER).\n* $2 – Either unused by the translation, or the thanking user's name for use in GENDER.\n* $3 – Either unused by the translation, or the username of the user being thanked, for use in GENDER.\n\n{{related|Notification-header-flow}}",
- "notification-bundle-header-flow-thank": "Bundle header text for a notification when a user is thanked for their comment on a Flow board.\n\nParameters:\n* $1 – The number of users who sent thanks for the same post. When used with PLURAL, the value 100 represents more than 99.\n* $2 – The title of the topic the comment belongs to.\n* $3 – Either unused by the translation, or the username of the user being thanked, for use in GENDER.\n\n{{related|Notification-header-flow}}",
- "apihelp-flowthank-description": "{{doc-apihelp-description|flowthank}}",
- "apihelp-flowthank-summary": "{{doc-apihelp-summary|flowthank}}",
- "apihelp-flowthank-param-postid": "{{doc-apihelp-param|flowthank|postid}}",
- "apihelp-flowthank-example-1": "The \"[[w:Universally unique identifier|UUID]]\" in question is an [[w:alphanumeric|alphanumeric]] string which identifies a message (in the Flow extension).\n----\n{{doc-apihelp-example|flowthank}}",
- "apihelp-thank-description": "{{doc-apihelp-description|thank}}",
- "apihelp-thank-summary": "{{doc-apihelp-summary|thank}}",
- "apihelp-thank-param-rev": "{{doc-apihelp-param|thank|rev}}",
- "apihelp-thank-param-log": "{{doc-apihelp-param|thank|log}}",
- "apihelp-thank-param-source": "{{doc-apihelp-param|thank|source}}",
- "apihelp-thank-example-1": "{{doc-apihelp-example|thank}}"
+ "notification-bundle-header-flow-thank": "Bundle header text for a notification when a user is thanked for their comment on a Flow board.\n\nParameters:\n* $1 – The number of users who sent thanks for the same post. When used with PLURAL, the value 100 represents more than 99.\n* $2 – The title of the topic the comment belongs to.\n* $3 – Either unused by the translation, or the username of the user being thanked, for use in GENDER.\n\n{{related|Notification-header-flow}}"
}
diff --git a/Thanks/i18n/ro.json b/Thanks/i18n/ro.json
index 59ee0374..96ade141 100644
--- a/Thanks/i18n/ro.json
+++ b/Thanks/i18n/ro.json
@@ -1,6 +1,7 @@
{
"@metadata": {
"authors": [
+ "Andrei Stroe",
"Minisarm"
]
},
@@ -9,14 +10,14 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|ați mulțumit}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Mulțumesc}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Ați mulțumit}}}}",
- "thanks-error-undefined": "Încercarea de a mulțumi a eșuat. Încercați din nou.",
+ "thanks-error-undefined": "Încercarea de a mulțumi a eșuat (cod de eroare: $1). Încercați din nou.",
"thanks-error-invalidrevision": "Codul versiunii nu este valid.",
"thanks-error-ratelimited": "{{GENDER:$1|V}}-ați depășit limita de evaluare. Așteptați un timp și reîncercați.",
"thanks-thank-tooltip": "{{GENDER:$1|Trimite}} o notificare de mulțumire {{GENDER:$2|acestui utilizator|acestei utilizatoare}}",
"thanks-thank-tooltip-no": "{{GENDER:$1|Revocă}} notificarea de mulțumire",
"thanks-thank-tooltip-yes": "{{GENDER:$1|Trimite}} notificarea de mulțumire",
- "thanks-confirmation2": "{{GENDER:$1|Trimiteți}} în mod public mulțumiri pentru această modificare?",
- "thanks-thanked-notice": "$1 a primit mulțumirea dumneavoastră pentru modificarea {{GENDER:$2|sa}}.",
+ "thanks-confirmation2": "{{GENDER:$1|Trimiteți}} în mod public mulțumiri?",
+ "thanks-thanked-notice": "$1 a primit mulțumirea {{GENDER:$3|dumneavoastră}} pentru modificarea {{GENDER:$2|lui|ei|sa}}.",
"thanks": "Trimitere mulțumiri",
"thanks-submit": "Trimite mulțumirea",
"echo-pref-subscription-edit-thank": "Mi se mulțumește pentru modificarea mea",
@@ -26,10 +27,10 @@
"log-name-thanks": "Jurnal mulțumiri",
"log-description-thanks": "Mai jos se află o listă a utilizatorilor cărora li s-a mulțumit de către alți utilizatori.",
"logentry-thanks-thank": "$1 {{GENDER:$2|i-a mulțumit}} {{GENDER:$4|utilizatorului $3|utilizatoarei $3}}",
- "thanks-error-no-id-specified": "Trebuie să precizați un ID de versiune pentru a trimite mulțumiri.",
+ "thanks-error-no-id-specified": "Trebuie să precizați un ID de versiune sau de înregistrare de jurnal pentru a trimite mulțumiri.",
"notification-link-text-view-post": "Vezi comentariul",
"thanks-error-invalidpostid": "ID-ul mesajului nu este valid.",
"flow-thanks-confirmation-special": "Doriți să trimiteți în mod public mulțumiri pentru acest comentariu?",
- "flow-thanks-thanked-notice": "$1 a primit mulțumirea dumneavoastră pentru comentariul {{GENDER:$2|său}}.",
+ "flow-thanks-thanked-notice": "$1 a primit mulțumirea dumneavoastră pentru comentariul {{GENDER:$2|lui|ei|său}}.",
"notification-flow-thanks-post-link": "comentariul dumneavoastră"
}
diff --git a/Thanks/i18n/roa-tara.json b/Thanks/i18n/roa-tara.json
index 7f89e084..869b4737 100644
--- a/Thanks/i18n/roa-tara.json
+++ b/Thanks/i18n/roa-tara.json
@@ -9,11 +9,25 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|ringraziate}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Grazie}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Ringraziate}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Ste ringrazie}}}} $1...",
+ "thanks-button-action-cancel": "Annulle",
+ "thanks-button-action-completed": "tu è {{GENDER:$1|{{GENDER:$2|ringraziate}}}} $1",
"thanks-error-undefined": "Azione de ringraziamende fallite (codece de errore: $1). Pe piacere pruéve arrete.",
"thanks-error-invalid-log-id": "Vôsce de l'archivije none acchiate",
+ "thanks-error-invalid-log-type": "'U tipe de archivije '$1' non ge ste jndr'à l'elenghe de le tipe de archivije conzendite.",
+ "thanks-error-log-deleted": "'A vôsce de l'archivije cercate ha state scangellate e non ge se ponne fà le rengraziaminde.",
"thanks-error-invalidrevision": "ID d'a revisione non g'è valide.",
+ "thanks-error-revdeleted": "Non ge se ponne mannà rengraziaminde purcé 'a revisione ha state scangellate.",
+ "thanks-error-notitle": "'U titole d'a pàgene non ge pò essere recuperate",
+ "thanks-error-invalidrecipient": "Nisciune recipiende valide acchiate",
+ "thanks-error-invalidrecipient-bot": "Le bot non ge ponne essere rengraziate",
+ "thanks-error-invalidrecipient-self": "Non ge te puè rengrazià da sule",
+ "thanks-error-notloggedin": "Le utinde anonime no ponne mannà rengraziaminde",
"thanks-error-ratelimited": "{{GENDER:$1|Tu}} è sbunnate le limite de valutazione tune. Pe piacere aspitte 'nu picche e pruève arrete.",
+ "thanks-error-api-params": "Tutte e doje le parametre 'revid' o 'logid' onna essere mise",
"thanks-thank-tooltip": "{{GENDER:$1|Manne}} 'na notifiche de rengraziamende a stu {{GENDER:$2|utende}}",
+ "thanks-thank-tooltip-no": "{{GENDER:$1|Annulle}} 'a notifeche de rengraziamende",
+ "thanks-thank-tooltip-yes": "{{GENDER:$1|Manne}} 'na notifeche de rengraziamende",
"thanks-confirmation2": "{{GENDER:$1|Manne}} le rengraziaminde pubblicamende?",
"thanks-thanked-notice": "{{GENDER:$3|E'}} ditte grazie a {{GENDER:$2|$1}}.",
"thanks": "Manne le rengraziaminde",
@@ -22,11 +36,26 @@
"echo-pref-tooltip-edit-thank": "Notificame quanne quacchedune me ringrazie pe 'nu cangiamende ca agghie fatte.",
"echo-category-title-edit-thank": "Grazie!",
"notification-thanks-diff-link": "le cangiaminde tune",
+ "notification-header-rev-thank": "$1 {{GENDER:$4|te}} {{GENDER:$2|ave rengraziate}} pu cangiamende sus a <strong>$3</strong>.",
+ "notification-header-creation-thank": "$1 {{GENDER:$4|te}} {{GENDER:$2|ave rengraziate}} pa ccrejazione de <strong>$3</strong>.",
+ "notification-header-log-thank": "$1 {{GENDER:$4|te}} {{GENDER:$2|ave rengraziate}} pe l'aziona toje referite a <strong>$3</strong>.",
+ "notification-compact-header-edit-thank": "$1 {{GENDER:$3|te}} {{GENDER:$2|ave ringraziate}}",
+ "notification-bundle-header-rev-thank": "{{PLURAL:$1|'Nu crestiane t'ave|$1 crestiane te onne|100=Cchiù de 99 crestiane te onne}} {{GENDER:$3|ringraziate}} pu cangiamende tune sus a <strong>$2</strong>.",
+ "notification-bundle-header-log-thank": "{{PLURAL:$1|'Nu crestiane t'ave|$1 crestiane te onne|100=Cchiù de 99 crestiane te onne}} {{GENDER:$3|ringraziate}} pe l'aziona toje referite a <strong>$2</strong>.",
"log-name-thanks": "Archivije de le rengraziaminde",
"log-description-thanks": "Sotte stè 'n'elenghe de utinde ca onne rengraziate otre utinde.",
"logentry-thanks-thank": "$1 {{GENDER:$2|ave ringraziate}} {{GENDER:$4|$3}}",
+ "logeventslist-thanks-log": "Archivije de le rengraziaminde",
+ "thanks-error-no-id-specified": "Ha specificà 'a revisione o l'ID de l'archivije pe rengrazià.",
+ "thanks-confirmation-special-log": "Vuè ccu manne 'nu grazie pubblecamende pe sta azione de l'archivije?",
+ "thanks-confirmation-special-rev": "Vuè ccu manne 'nu grazie pubblecamende pe stu cangiamende?",
"notification-link-text-view-post": "'Ndruche 'u commende",
+ "notification-link-text-view-logentry": "'Ndruche le vôsce de l'archivije",
"thanks-error-invalidpostid": "ID d'u messàgge jè invalide.",
"flow-thanks-confirmation-special": "Vuè ccu manne 'nu grazie pubblecamende pe stu commende?",
- "notification-flow-thanks-post-link": "'u commende tune"
+ "flow-thanks-thanked-notice": "{{GENDER:$3|E'}} rengraziate $1 pu commende {{GENDER:$2|sue}}.",
+ "notification-flow-thanks-post-link": "'u commende tune",
+ "notification-header-flow-thank": "$1 {{GENDER:$5|te}} {{GENDER:$2|ave rengraziate}} pu commende tune sus a \"<strong>$3</strong>\".",
+ "notification-compact-header-flow-thank": "$1 {{GENDER:$3|te}} {{GENDER:$2|ave ringraziate}}",
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|'Nu crestiane t'ave|$1 crestiane te onne|100=Cchiù de 99 crestiane te onne}} {{GENDER:$3|ringraziate}} pu commende tune sus a \"<strong>$2</strong>\"."
}
diff --git a/Thanks/i18n/ru.json b/Thanks/i18n/ru.json
index e6005176..b4725007 100644
--- a/Thanks/i18n/ru.json
+++ b/Thanks/i18n/ru.json
@@ -1,24 +1,26 @@
{
"@metadata": {
"authors": [
+ "Facenapalm",
+ "Happy13241",
"Kaganer",
- "Lockal",
- "Okras",
- "Чаховіч Уладзіслаў",
"Kopcap94",
- "Sealle",
- "Sagan",
- "Putnik",
+ "Lockal",
"Macofe",
"Mailman",
- "Facenapalm",
"Mouse21",
- "Smigles",
- "Sunpriat",
- "Happy13241",
+ "Movses",
+ "Okras",
"Ole Yves",
+ "Putnik",
+ "Romanko Mikhail",
+ "Sagan",
+ "Sealle",
+ "Smigles",
"Stjn",
- "Vlad5250"
+ "Sunpriat",
+ "Vlad5250",
+ "Чаховіч Уладзіслаў"
]
},
"thanks-desc": "Добавляет ссылки для благодарности участников за правки, комментарии и т.д.",
@@ -26,6 +28,9 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|отблагодарён|отблагодарена}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Поблагодарить}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Поблагодарён|Поблагодарена}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Отправка благодарности}}}} $1…",
+ "thanks-button-action-cancel": "Отмена",
+ "thanks-button-action-completed": "Вы {{GENDER:$1|{{GENDER:$2|поблагодарили}}}} $1",
"thanks-error-undefined": "Попытка поблагодарить не удалась (код ошибки: $1). Пожалуйста, пробуйте ещё раз.",
"thanks-error-invalid-log-id": "Запись журнала не найдена",
"thanks-error-invalid-log-type": "Тип журнала «$1» не находится в белом списке разрешённых.",
@@ -50,11 +55,11 @@
"echo-pref-tooltip-edit-thank": "Сообщать мне, когда кто-то благодарит меня за сделанную мной правку.",
"echo-category-title-edit-thank": "Благодарность",
"notification-thanks-diff-link": "вашу правку",
- "notification-header-rev-thank": "$1 {{GENDER:$2|поблагодарил|поблагодарила}} {{GENDER:$4|вас}} за вашу правку на странице <strong>$3</strong>.",
+ "notification-header-rev-thank": "$1 {{GENDER:$2|поблагодарил|поблагодарила}} {{GENDER:$4|вас}} за правку на странице <strong>$3</strong>.",
"notification-header-creation-thank": "$1 {{GENDER:$2|поблагодарил|поблагодарила}} {{GENDER:$4|вас}} за создание страницы <strong>$3</strong>.",
"notification-header-log-thank": "$1 {{GENDER:$2|поблагодарил|поблагодарила}} {{GENDER:$4|вас}} за действие на странице <strong>$3</strong>.",
"notification-compact-header-edit-thank": "$1 поблагодарил{{GENDER:$2||а}} {{GENDER:$3|вас}}.",
- "notification-bundle-header-rev-thank": "{{PLURAL:$1|Один участник|$1 участника|100=99+ участников}} поблагодарили {{GENDER:$3|вас}} за вашу правку на <strong>$2</strong>.",
+ "notification-bundle-header-rev-thank": "{{PLURAL:$1|Один участник|$1 участника|100=99+ участников}} поблагодарили {{GENDER:$3|вас}} за правку на <strong>$2</strong>.",
"notification-bundle-header-log-thank": "{{PLURAL:$1|$1 человек|$1 человека|$1 человек|100=99+ человек}} поблагодарило {{GENDER:$3|вас}} за действие, относящееся к « <strong>$2</strong>».",
"log-name-thanks": "Журнал благодарностей",
"log-description-thanks": "Ниже находится список участников, получивших благодарности от других участников.",
@@ -71,15 +76,5 @@
"notification-flow-thanks-post-link": "ваш комментарий",
"notification-header-flow-thank": "$1 поблагодарил{{GENDER:$2||а}} {{GENDER:$5|вас}} за комментарий в теме «<strong>$3</strong>».",
"notification-compact-header-flow-thank": "$1 поблагодарил{{GENDER:$2||а}} {{GENDER:$3|вас}}.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|Один участник|$1 участника|100=99+ участников}} поблагодарили {{GENDER:$3|вас}} за ваш комментарий в \"<strong>$2</strong>\".",
- "apihelp-flowthank-description": "Отправка публичной благодарности за комментарий Flow.",
- "apihelp-flowthank-summary": "Отправить публичную благодарность за комментарий Flow.",
- "apihelp-flowthank-param-postid": "UUID сообщения, за который необходимо поблагодарить.",
- "apihelp-flowthank-example-1": "Отправить благодарность за комментарий с <kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "Отправка редактору уведомления о благодарности.",
- "apihelp-thank-summary": "Отправка редактору уведомления о благодарности.",
- "apihelp-thank-param-rev": "ID версии, за которую требуется поблагодарить автора. Должно быть дано это или «log».",
- "apihelp-thank-param-log": "ID журнала, за которую требуется поблагодарить автора. Должно быть дано это или «rev».",
- "apihelp-thank-param-source": "Короткая строка, описывающая источник запроса, например, <kbd>diff</kbd> или <kbd>history</kbd>.",
- "apihelp-thank-example-1": "Отправить благодарность за версию с <kbd>ID 456</kbd>, в качестве источника указав страницу различий между версиями."
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Один участник|$1 участника|100=99+ участников}} поблагодарили {{GENDER:$3|вас}} за ваш комментарий в \"<strong>$2</strong>\"."
}
diff --git a/Thanks/i18n/sah.json b/Thanks/i18n/sah.json
index f55dc0f8..6f77f993 100644
--- a/Thanks/i18n/sah.json
+++ b/Thanks/i18n/sah.json
@@ -1,8 +1,8 @@
{
"@metadata": {
"authors": [
- "Kaganer",
"HalanTul",
+ "Kaganer",
"София",
"Туллук"
]
@@ -17,7 +17,7 @@
"thanks-error-ratelimited": "{{GENDER:$1|Эн}} маннык дьайыыны кылгас кэм иһигэр наһаа элбэхтэ оҥорбуккун. Бука диэн тохтуу түһэн баран хатылаан көрөөр.",
"thanks-thank-tooltip": "Бу {{GENDER:$2|кыттааччыга}} махтал сурук {{GENDER:$1|ыытарга}}",
"thanks-thank-tooltip-no": "Махтанар сиртэн {{GENDER:$1|таҕыс}}",
- "thanks-thank-tooltip-yes": "Махтал сурукта {{$1|ыыт}}",
+ "thanks-thank-tooltip-yes": "Махтал сурукта {{GENDER:$1|ыыт}}",
"thanks-confirmation2": "Махталы дьон көрөрүгэр {{GENDER:$1|ыытаҕын}} дуо?",
"thanks-thanked-notice": "$1 кыттааччы {{GENDER:$2|бэйэтин}} суруйуутун иһин эйигиттэн махталы тутта.",
"thanks": "Махтанарга",
@@ -40,12 +40,5 @@
"notification-flow-thanks-post-link": "эн ырытыыҥ",
"notification-header-flow-thank": "$1 {{GENDER:$4|эйиэхэ}} '''$3''' сирэйи көннөрбүтүҥ иһин {{GENDER:$2|махтаммыт}}.",
"notification-compact-header-flow-thank": "$1 {{GENDER:$3|кыттааччыга}} {{GENDER:$2|махтаммыт}}",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|Кыттааччы|$1 people|100=99+ кыттааччылар}} {{GENDER:$3|эйиэхэ}} <strong>$2</strong>ҥа көннөрүүн иһин махтаммыт/тар",
- "apihelp-flowthank-description": "Сэҥээрбитин иһин аһаҕастык махтаныы.",
- "apihelp-flowthank-param-postid": "Махтаныллыахтаах сурук UUID нүөмэрэ.",
- "apihelp-flowthank-example-1": "<kbd>UUID xyz789</kbd> ырытыы иһин махтаныы",
- "apihelp-thank-description": "Эрэдээктэргэ махтаныы туһунан биллэр.",
- "apihelp-thank-param-rev": "Ааптарыгар махтанаары гынар торумуҥ ID-та.",
- "apihelp-thank-param-source": "Ыйытык төрүтүн ойуулуур кылгас устуруока, холобур < KBD > Diff < / KBD > эбэтэр < KBD > История < / KBD > .",
- "apihelp-thank-example-1": "Торум иһин махтанарга торумнар ыккардыларыгар баар уратыны көрдөрөр сирэйгэ <kbd>ID 456</kbd> сигэнии."
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Кыттааччы|$1 people|100=99+ кыттааччылар}} {{GENDER:$3|эйиэхэ}} <strong>$2</strong>ҥа көннөрүүн иһин махтаммыт/тар"
}
diff --git a/Thanks/i18n/scn.json b/Thanks/i18n/scn.json
index eaa7db99..a4db8e57 100644
--- a/Thanks/i18n/scn.json
+++ b/Thanks/i18n/scn.json
@@ -2,9 +2,9 @@
"@metadata": {
"authors": [
"Gmelfi",
+ "Macofe",
"Pippinu",
- "Sarvaturi",
- "Macofe"
+ "Sarvaturi"
]
},
"thanks-desc": "Agghiunci culligamenti pi ringrazziari a l'utenti pî canciamenti, pî cummenti, ecc.",
@@ -31,12 +31,5 @@
"thanks-error-invalidpostid": "L'ID dû missaggiu nun è vàlidu.",
"flow-thanks-confirmation-special": "Voi ringrazziari pubblicamenti pi stu cummentu?",
"flow-thanks-thanked-notice": "$1 arricivìu lu tò ringrazziamentu pû {{GENDER:$2|sò}} cummentu.",
- "notification-flow-thanks-post-link": "lu tò cummentu",
- "apihelp-flowthank-description": "Manna na nutìfica di ringrazziamentu pùbblica pûn cummentu Flow.",
- "apihelp-flowthank-param-postid": "L'UUID dû missaggiu pû quali si ringrazzia.",
- "apihelp-flowthank-example-1": "Manna ringrazziamenti pû cummentu cu <kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "Manna na nutìfica di ringrazziamentu pûn cuntribbuturi.",
- "apihelp-thank-param-rev": "L'ID dâ virsioni pâ quali si ringrazzia a quarchidunu.",
- "apihelp-thank-param-source": "Na stringa curta chi discrivi la fonti di l'addumannata. P'esempiu, <kbd>diff</kbd> o <kbd>history</kbd>.",
- "apihelp-thank-example-1": "Manna ringrazziamenti pâ virsioni di <kbd>ID 456</kbd>, unni la fonti è na pàggina di cunfrontu tra virsioni"
+ "notification-flow-thanks-post-link": "lu tò cummentu"
}
diff --git a/Thanks/i18n/sco.json b/Thanks/i18n/sco.json
index 4a1ef502..f3279778 100644
--- a/Thanks/i18n/sco.json
+++ b/Thanks/i18n/sco.json
@@ -1,8 +1,8 @@
{
"@metadata": {
"authors": [
- "John Reid",
- "AmaryllisGardener"
+ "AmaryllisGardener",
+ "John Reid"
]
},
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|thank}}}}",
diff --git a/Thanks/i18n/sd.json b/Thanks/i18n/sd.json
index c16542c9..00ac26b0 100644
--- a/Thanks/i18n/sd.json
+++ b/Thanks/i18n/sd.json
@@ -1,18 +1,57 @@
{
"@metadata": {
"authors": [
- "Sindhu",
+ "Indus Asia",
"Mehtab ahmed",
- "Indus Asia"
+ "Sindhu"
]
},
+ "thanks-desc": "واپرائيندڙن کي سنوارن، تبصرن وغيرہ لاءِ مھرباني چوڻ لاءِ ڳنڍڻا وجھي ٿو",
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|مھرباني چئو}}}}",
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|مھرباني چيل}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|مھرباني چئو}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|مھرباني چئي}}}}",
+ "thanks-button-action-queued": "$1 کي {{GENDER:$1|{{GENDER:$2|مھرباني چوندي}}}}…",
+ "thanks-button-action-cancel": "رد",
+ "thanks-button-action-completed": "توھان $1 کي {{GENDER:$1|{{GENDER:$2|مھرباني چئي}}}}",
+ "thanks-error-undefined": "مھرباني چوڻ جو عمل ناڪام (چڪ ڪوڊ: $1). مھرباني ڪري ٻيھر ڪوشش ڪريو.",
+ "thanks-error-invalid-log-id": "لاگ داخلا نہ لڌي",
+ "thanks-error-log-deleted": "گھريل لاگ داخلا ڊاھي وئي آھي ۽ ان لاءِ مھرباني نٿي ڏئي سگھجي.",
+ "thanks-error-invalidrevision": "ورجاءُ آئِڊي قابلِڪار ناھي.",
+ "thanks-error-revdeleted": "مھرباني چوڻ ۾ ناڪامي ڇوتہ ورجاءُ ڊاھيو ويو آھي.",
+ "thanks-error-invalidrecipient": "ڪوبہ قابلِڪار وصول ڪندڙ نہ لڌو",
+ "thanks-error-invalidrecipient-bot": "بوٽن کي مھرباني نٿي چئي سگھجي",
+ "thanks-error-invalidrecipient-self": "توھان پنھنجو پاڻ کي مھرباني نٿا چئي سگھو",
+ "thanks-error-notloggedin": "گمنام واپرائيندڙ مھرباني نٿا موڪلي سگھن",
"thanks-thank-tooltip": "هن {{GENDER:$2|واپرائيندڙ}} ڏانهن '''توهان جي مهرباني''' جو اطلاع {{GENDER:$1|موڪليو}}",
+ "thanks-thank-tooltip-no": "توھان جي مھرباني اطلاع {{GENDER:$1|رد}} ڪريو",
+ "thanks-thank-tooltip-yes": "توھان جي مھرباني اطلاع {{GENDER:$1|موڪليو}}",
"thanks-confirmation2": "مھربانيون عوامي طور {{GENDER:$1|موڪليو}}؟",
+ "thanks-thanked-notice": "{{GENDER:$3|توھان}} {{GENDER:$2|$1}} کي مھرباني چئو",
+ "thanks": "مھربانيون موڪليو",
"thanks-submit": "مھربانيون موڪليو",
+ "echo-pref-subscription-edit-thank": "مونکي منھنجي سنوار لاءِ مھرباني چئو",
+ "echo-pref-tooltip-edit-thank": "جڏھن ڪو منھنجي سنوار لاءِ مونکي مھرباني چئي تہ مونکي اطلاع ڏيو.",
+ "echo-category-title-edit-thank": "مھرباني",
+ "notification-thanks-diff-link": "توھانجي سنوار",
"notification-header-rev-thank": "$1 {{GENDER:$4|توھان کي}} <strong>$3</strong>\nتي توھان جي سنوار لاءِ {{GENDER:$2|مھرباني چئي}}.",
- "notification-compact-header-edit-thank": "$1 {{GENDER:$3|توھان کي}} {{GENDER:$2|مھرباني چئي}}."
+ "notification-header-creation-thank": "$1 {{GENDER:$4|توھان}} کي <strong>$3</strong> کي سرجڻ لاءِ {{GENDER:$2|مھرباني چيو}}.",
+ "notification-header-log-thank": "$1 {{GENDER:$4|توھان}} کي <strong>$3</strong> سان لاڳاپيل عمل لاءِ {{GENDER:$2|مھرباني چئي}}.",
+ "notification-compact-header-edit-thank": "$1 {{GENDER:$3|توھان کي}} {{GENDER:$2|مھرباني چئي}}.",
+ "notification-bundle-header-rev-thank": "{{PLURAL:$1|ھڪ شخص|$1 ماڻھن|100=99+ ماڻھن}} {{GENDER:$3|توھان}} کي <strong>$2</strong> تي سنوار لاءِ مھرباني چئي.",
+ "notification-bundle-header-log-thank": "{{PLURAL:$1|ھڪ شخص|$1 ماڻھن|100=99+ ماڻھن}} {{GENDER:$3|توھان}} کي <strong>$2</strong> سان لاڳاپيل عمل لاءِ مھرباني چئي.",
+ "log-name-thanks": "مھرباني لاگ",
+ "log-description-thanks": "ھيٺ انھن واپرائيندڙن جي فھرست آھي جنکي ٻين واپرائيندڙن مھرباني چئي آھي.",
+ "logentry-thanks-thank": "$1 {{GENDER:$4|$3}} کي {{GENDER:$2|مھرباني چئي}}",
+ "logeventslist-thanks-log": "مھرباني لاگ",
+ "thanks-confirmation-special-log": "ڇا توھان ھن لاگ عمل لاءِ عوامي طور مھربانيون موڪلڻ چاھيو ٿا؟",
+ "thanks-confirmation-special-rev": "چا توھان ھن سنوار لاءِ عوامي طور مھربانيون موڪلڻ چاھيو ٿا؟",
+ "notification-link-text-view-post": "تبصرو ڏسو",
+ "notification-link-text-view-logentry": "لاگ داخلا ڏسو",
+ "flow-thanks-confirmation-special": "ڇا توھان ھن تبصري لاءِ عوامي طور مھربانيون موڪلڻ چاھيو ٿا؟",
+ "flow-thanks-thanked-notice": "{{GENDER:$3|توھان}} $1 کي {{GENDER:$2|ھن|ھن|انھن}} کي تبصري لاءِ مھرباني چئي.",
+ "notification-flow-thanks-post-link": "توھان جو تبصرو",
+ "notification-header-flow-thank": "$1 {{GENDER:$5|توھان}} کي \"<strong>$3</strong>\" ۾ تبصري لاءِ {{GENDER:$2|مھرباني چئي}}.",
+ "notification-compact-header-flow-thank": "$1 {{GENDER:$3|توھان}} کي {{GENDER:$2|مھرباني چئي}}.",
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|ھڪ شخص|$1 ماڻھن|100=99+ ماڻھن}} {{GENDER:$3|توھان}} کي \"<strong>$2</strong>\" ۾ تبصري لاءِ مھرباني چئي."
}
diff --git a/Thanks/i18n/sdc.json b/Thanks/i18n/sdc.json
new file mode 100644
index 00000000..226da08f
--- /dev/null
+++ b/Thanks/i18n/sdc.json
@@ -0,0 +1,24 @@
+{
+ "@metadata": {
+ "authors": [
+ "Jun Misugi"
+ ]
+ },
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|ringratzià}}}}",
+ "thanks-thanked": "{{GENDER:$1|{{GENDER:$2|ringratziaddu}}}}",
+ "thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Ringratzià}}}}",
+ "thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Ringratziaddu}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Ringratzià}}}} a $1…",
+ "thanks-button-action-cancel": "Annullà",
+ "thanks-button-action-completed": "Tu hài {{GENDER:$1|{{GENDER:$2|ringratziaddu}}}} a $1",
+ "thanks-error-invalidrecipient-bot": "Nò pói ringratzià unu bot.",
+ "thanks-error-invalidrecipient-self": "Nò pói ringratziatti a te.",
+ "thanks-error-notloggedin": "Utenti anònimi nò poni mandà li ringratziamenti.",
+ "thanks-thank-tooltip": "{{GENDER:$1|Ringratzià}} kisthu {{GENDER:$2|utenti}}",
+ "thanks-thanked-notice": "{{GENDER:$3|Tu}} hài ringratziaddu {{GENDER:$2|$1}}.",
+ "thanks": "Turrà li gratzi",
+ "thanks-submit": "Mandà li gratzi",
+ "echo-pref-subscription-edit-thank": "Ringratziamenti pai la mudìfigga mea",
+ "echo-category-title-edit-thank": "Ringratziamentu",
+ "notification-thanks-diff-link": "la mudìfigga tua"
+}
diff --git a/Thanks/i18n/sdh.json b/Thanks/i18n/sdh.json
index 5636ee10..765b5f15 100644
--- a/Thanks/i18n/sdh.json
+++ b/Thanks/i18n/sdh.json
@@ -1,8 +1,11 @@
{
"@metadata": {
"authors": [
- "Kurdbuddha"
+ "Kurdbuddha",
+ "Paraw2"
]
},
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|سپاس}}}}",
+ "thanks-thank-tooltip": "پەیامێگ ئەڕاێ سپاس ئەڕاێ ئەی {{GENDER:$2|ئەوکاربەرە}} {{GENDER:$1|بنارە}}",
"echo-category-title-edit-thank": "سپاس"
}
diff --git a/Thanks/i18n/se.json b/Thanks/i18n/se.json
index 15f0baa7..385f52ba 100644
--- a/Thanks/i18n/se.json
+++ b/Thanks/i18n/se.json
@@ -1,4 +1,6 @@
{
- "@metadata": [],
+ "@metadata": {
+ "authors": []
+ },
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|giitte}}}}"
}
diff --git a/Thanks/i18n/ses.json b/Thanks/i18n/ses.json
new file mode 100644
index 00000000..5bccbdb8
--- /dev/null
+++ b/Thanks/i18n/ses.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Songhay"
+ ]
+ },
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|foo nda goy}}}}",
+ "thanks-thank-tooltip": "{{GENDER:$1|Sanba}}foo nda goy alhabar {{GENDER:$2|goykaa}} se"
+}
diff --git a/Thanks/i18n/sh.json b/Thanks/i18n/sh.json
index 9cd61a4e..cb3bff1a 100644
--- a/Thanks/i18n/sh.json
+++ b/Thanks/i18n/sh.json
@@ -2,14 +2,31 @@
"@metadata": {
"authors": [
"Kolega2357",
- "OC Ripper"
+ "OC Ripper",
+ "Vlad5250"
]
},
- "thanks-desc": "Dodaje mogućnost zahvaljivanja u pregledu historije i pregledu razlika između izmena",
+ "thanks-desc": "Dodaje poveznice za zahvaljivanje ka korisnicima za njihove izmjene, komentare itd.",
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|zahvali}} se}}",
- "thanks-thanked": "{{GENDER:$1|zahvalio se|zahvalila se}}",
+ "thanks-thanked": "{{GENDER:$1|{{GENDER:$2|zahvaljeno}}}}",
+ "thanks-button-action-cancel": "Otkaži",
+ "thanks-error-undefined": "Zahvaljivanje nije uspjelo (kôd greške: $1). Pokušajte ponovo.",
+ "thanks-error-invalid-log-type": "Nema evidencije vrste »$1« na bijeloj listi dozvoljenih vrsta evidencija.",
+ "thanks-error-log-deleted": "Zahtijevani evidencijski unos bio je izbrisan i zato ne može da se zahvali za nju.",
+ "thanks-error-invalidrevision": "Inačica ima nevaljanu naznaku.",
+ "thanks-error-revdeleted": "Nije moguće hvaliti jer je inačica izbrisana.",
+ "thanks-error-invalidrecipient": "Nisam pronašao vrijedeći primalac",
+ "thanks-error-invalidrecipient-bot": "Ne možete zahvaljivati botovima",
+ "thanks-error-invalidrecipient-self": "Ne možete zahvaliti sami sebi",
+ "thanks-error-notloggedin": "Anonimni korisnici ne mogu slati zahvale",
"thanks-thank-tooltip": "{{GENDER:$1|Pošalji}} zahvalnicu {{GENDER:$2|ovom korisniku|оvoj korisnici}}",
+ "thanks-confirmation2": "{{GENDER:$1|Da pošaljem}} zahvalu javno?",
+ "echo-pref-subscription-edit-thank": "Će mi se zahvali za moju izmjenu",
+ "echo-category-title-edit-thank": "Hvala",
+ "notification-thanks-diff-link": "vašoj izmjeni",
"log-name-thanks": "Evidencija zahvaljivanja",
"log-description-thanks": "Ispod se nalazi spisak korisnika kojima su se drugi korisnici zahvalili.",
- "logentry-thanks-thank": "$1 se {{GENDER:$2|zahvalio|zahvalila}} {{GENDER:$4|korisniku|korisnici}} {{GENDER:$4|$3}}"
+ "logentry-thanks-thank": "$1 se {{GENDER:$2|zahvalio|zahvalila}} {{GENDER:$4|korisniku|korisnici}} {{GENDER:$4|$3}}",
+ "logeventslist-thanks-log": "Evidencija zahvaljivanja",
+ "notification-flow-thanks-post-link": "vašem komentaru"
}
diff --git a/Thanks/i18n/shi.json b/Thanks/i18n/shi.json
index c741ce2f..dd20d197 100644
--- a/Thanks/i18n/shi.json
+++ b/Thanks/i18n/shi.json
@@ -4,5 +4,6 @@
"Amara-Amaziɣ"
]
},
- "thanks-thank": "{{GENDER:$1|{{GENDER:$2|ⵙⵏⵉⵎⵎⵔ}}}}"
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|ⵙⵏⵉⵎⵎⵔ}}}}",
+ "thanks-thank-tooltip": "{{GENDER:$1|ⴰⵣⵏ ⵏⵏ}} ⵢⴰⵜ ⵜⵏⵖⵎⵉⵙⵜ ⵏ ⵓⵙⵏⵉⵎⵎⵔ ⵉ {{GENDER:$2|ⵓⵙⵎⵔⴰⵙ|ⵜⵙⵎⵔⴰⵙⵜ}} ⴰⴷ"
}
diff --git a/Thanks/i18n/shy-latn.json b/Thanks/i18n/shy-latn.json
new file mode 100644
index 00000000..13eb4d18
--- /dev/null
+++ b/Thanks/i18n/shy-latn.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Vikoula5"
+ ]
+ },
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|snemmer}}}}",
+ "thanks-thank-tooltip": "{{GENDER:$1|Azen}}alɣu n usnemmer i {{GENDER:$2|useqdac-agi|taseqdact-agi}}"
+}
diff --git a/Thanks/i18n/si.json b/Thanks/i18n/si.json
index f122fcce..6b470e10 100644
--- a/Thanks/i18n/si.json
+++ b/Thanks/i18n/si.json
@@ -1,8 +1,8 @@
{
"@metadata": {
"authors": [
- "හරිත",
"Susith Chandira Gts",
+ "හරිත",
1100100
]
},
diff --git a/Thanks/i18n/sk.json b/Thanks/i18n/sk.json
index 6f065648..be19bc66 100644
--- a/Thanks/i18n/sk.json
+++ b/Thanks/i18n/sk.json
@@ -1,25 +1,40 @@
{
"@metadata": {
"authors": [
- "Sudo77(new)",
- "Teslaton",
+ "Luky001",
+ "Macofe",
"Mikulas1",
- "Macofe"
+ "Robert Važan",
+ "Sudo77(new)",
+ "Teslaton"
]
},
- "thanks-desc": "Pridáva odkazy na poďakovanie do histórie a zobrazenia rozdielov",
+ "thanks-desc": "Pridáva odkazy na poďakovanie používateľom za úpravy, komentáre, atď.",
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|poďakovať}}}}",
- "thanks-thanked": "{{GENDER:$1|poďakoval}}",
- "thanks-button-thank": "{{GENDER:$1|Ďakujem}}",
- "thanks-button-thanked": "{{GENDER:$1|Poďakoval}}",
- "thanks-error-undefined": "Zlyhalo posielanie poďakovania. Skúste to prosím znova.",
+ "thanks-thanked": "{{GENDER:$1|{{GENDER:$2|poďakované}}}}",
+ "thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Poďakovať}}}}",
+ "thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Poďakované}}}}",
+ "thanks-button-action-queued": "{{GENDER:$2|Posielam}} poďakovanie {{GENDER:$1|používateľovi|používateľke}} $1…",
+ "thanks-button-action-cancel": "Zrušiť",
+ "thanks-button-action-completed": "{{GENDER:$2|Poďakovali}} ste {{GENDER:$1|používateľovi|používateľke}} $1",
+ "thanks-error-undefined": "Poďakovanie sa nepodarilo (kód chyby: $1). Skúste to, prosím, znova.",
+ "thanks-error-invalid-log-id": "Protokolovací záznam nebol nájdený",
+ "thanks-error-invalid-log-type": "Typ protokolovacích záznamov „$1“ nie je v zozname povolených typov.",
+ "thanks-error-log-deleted": "Požadovaný protokolovací záznam bol odstránený a nedá sa zaňho poďakovať.",
"thanks-error-invalidrevision": "ID revízie je neplatné.",
- "thanks-error-ratelimited": "Prekročili ste rýchlostný limit. Prosím počkajte chvíľu a skúste to znova.",
+ "thanks-error-revdeleted": "Nepodarilo sa odoslať poďakovanie, pretože revízia bola odstránená.",
+ "thanks-error-notitle": "Nepodarilo sa zistiť názov stránky",
+ "thanks-error-invalidrecipient": "Nebol nájdený platný príjemca",
+ "thanks-error-invalidrecipient-bot": "Botom sa nedá poďakovať",
+ "thanks-error-invalidrecipient-self": "Nemôžete poďakovať sami sebe.",
+ "thanks-error-notloggedin": "Anonymní používatelia nemôžu poďakovať",
+ "thanks-error-ratelimited": "{{GENDER:$1|Prekročili}} ste množstvový limit. Počkajte chvíľu, prosím, a skúste to znovu.",
+ "thanks-error-api-params": "Musíte zadať buď parameter „revid“ alebo „logid“",
"thanks-thank-tooltip": "{{GENDER:$1|Poslať}} {{GENDER:$2|tomuto redaktorovi|tejto redaktorke}} poďakovanie",
"thanks-thank-tooltip-no": "{{GENDER:$1|Zrušiť}} poslanie poďakovania",
"thanks-thank-tooltip-yes": "{{GENDER:$1|Poslať}} poďakovanie",
- "thanks-confirmation2": "{{GENDER:$1|Poďakovať}} za túto úpravu?",
- "thanks-thanked-notice": "$1 bol upozornený, že sa vám páčila {{GENDER:$2| jeho|jej|ich}} úprava.",
+ "thanks-confirmation2": "Verejne {{GENDER:$1|poďakovať}} za túto úpravu?",
+ "thanks-thanked-notice": "{{GENDER:$3|Poďakovali}} ste {{GENDER:$2|používateľovi|používateľke}} $1.",
"thanks": "Poslať poďakovanie",
"thanks-submit": "Poslať poďakovanie",
"echo-pref-subscription-edit-thank": "poďakuje mi niekto za moje úpravy",
@@ -27,18 +42,25 @@
"echo-category-title-edit-thank": "poďakovanie",
"notification-thanks-diff-link": "vašu úpravu",
"notification-header-rev-thank": "$1 {{GENDER:$4|vám}} {{GENDER:$2|poďakoval|poďakovala}} za úpravu stránky '''$3'''.",
+ "notification-header-creation-thank": "$1 {{GENDER:$4|vám}} {{GENDER:$2|poďakoval|poďakovala}} za vytvorenie stránky <strong>$3</strong>.",
"notification-header-log-thank": "$1 {{GENDER:$4|vám}} {{GENDER:$2|poďakoval|poďakovala}} za vašu akciu súvisiacu so stránkou <strong>$3</strong>.",
"notification-compact-header-edit-thank": "$1 {{GENDER:$3|vám}} {{GENDER:$2|poďakoval|poďakovala|poďakoval(a)}}.",
"notification-bundle-header-rev-thank": "{{PLURAL:$1|Jeden človek|$1 ľudia|$1 ľudí|100=Viac než 99 ľudí}} {{GENDER:$3|vám}} {{PLURAL:$1|poďakoval|poďakovali|poďakovalo}} za vašu úpravu stránky <strong>$2</strong>.",
+ "notification-bundle-header-log-thank": "{{PLURAL:$1|Jeden človek|$1 ľudia {{GENDER:$3|vám}} poďakovali|$1 ľudí vám poďakovalo|100=Viac ako 99 ľudí vám poďakovalo}} za vašu akciu súvisiacu so stránkou <strong>$2</strong>.",
"log-name-thanks": "Záznam poďakovaní",
"log-description-thanks": "Nižšie je uvedený zoznam redaktorov, ktorým ostatný redaktori poďakovali.",
"logentry-thanks-thank": "$1 {{GENDER:$2|poďakoval|poďakovala}} {{GENDER:$4|redaktorovi|redaktorke}} $3",
- "thanks-error-no-id-specified": "Aby ste {{GENDER:|mohol|mohla|mohli}} poďakovať, musíte zadať ID úpravy.",
+ "logeventslist-thanks-log": "Kniha poďakovaní",
+ "thanks-error-no-id-specified": "Aby ste {{GENDER:|mohli}} poďakovať, musíte zadať ID revízie alebo protokolovacieho záznamu.",
+ "thanks-confirmation-special-log": "Chcete verejne poďakovať za tento protokolovací záznam?",
+ "thanks-confirmation-special-rev": "Chcete verejne poďakovať za túto úpravu?",
"notification-link-text-view-post": "Zobraziť komentár",
+ "notification-link-text-view-logentry": "Zobraziť protokolovací záznam",
"thanks-error-invalidpostid": "ID komentára nie je platné.",
- "flow-thanks-confirmation-special": "Chcete poďakovať za tento komentár?",
- "flow-thanks-thanked-notice": "{{GENDER:$2|$1}} {{GENDER:$2|prijal|prijala}} vaše poďakovanie za komentár.",
+ "flow-thanks-confirmation-special": "Chcete verejne poďakovať za tento komentár?",
+ "flow-thanks-thanked-notice": "{{GENDER:$2|Používateľ|Používateľka|Používateľ(ka)}} $1 {{GENDER:$2|obdržal|obdržala|obdržal(a)}} {{GENDER:$3|vaše}} poďakovanie za svoj komentár.",
"notification-flow-thanks-post-link": "váš komentár",
- "notification-header-flow-thank": "$1 {{GENDER:$5|vám}} {{GENDER:$2|poďakoval|poďakovala}} za komentár k '''$3''' na stránke '''$4'''.",
- "notification-compact-header-flow-thank": "$1 {{GENDER:$3|vám}} {{GENDER:$2|poďakoval|poďakovala|poďakoval(a)}}."
+ "notification-header-flow-thank": "$1 {{GENDER:$5|vám}} {{GENDER:$2|poďakoval|poďakovala}} za komentár k téme „<strong>$3</strong>“.",
+ "notification-compact-header-flow-thank": "$1 {{GENDER:$3|vám}} {{GENDER:$2|poďakoval|poďakovala|poďakoval(a)}}.",
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Jeden človek|$1 ľudia|$1 ľudí|100=Viac ako 99 ľudí}} {{GENDER:$3|vám}} {{PLURAL:$1|poďakoval|poďakovali|poďakovalo}} za váš komentár k téme „<strong>$2</strong>“."
}
diff --git a/Thanks/i18n/sl.json b/Thanks/i18n/sl.json
index c6c826bb..7c7d3c7d 100644
--- a/Thanks/i18n/sl.json
+++ b/Thanks/i18n/sl.json
@@ -3,9 +3,9 @@
"authors": [
"Dbc334",
"Eleassar",
+ "Janezdrilc",
"Matej1234",
- "Yerpo",
- "Janezdrilc"
+ "Yerpo"
]
},
"thanks-desc": "Doda povezave za zahvalo uporabnikom za urejanja, pripombe itn.",
@@ -14,24 +14,49 @@
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Zahvala}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Zahvala je objavljena}}}}",
"thanks-error-undefined": "Dejanje zahvale je spodletelo (koda napake: $1). Prosimo, poskusite znova.",
+ "thanks-error-invalid-log-id": "Dnevniški vpis ni bil najden",
+ "thanks-error-invalid-log-type": "Vrste dnevnika '$1' ni na belem seznamu predvidenih vrst dnevnikov.",
+ "thanks-error-log-deleted": "Zahtevan dnevniški vpis je bil izbrisan, zato zanj ni mogoče dati zahvale.",
"thanks-error-invalidrevision": "ID-številka redakcije ni veljavna.",
+ "thanks-error-revdeleted": "Zahvale ni mogoče poslati, saj je bila redakcija izbrisana.",
+ "thanks-error-notitle": "Naslova strani ni bilo mogoče pridobiti",
+ "thanks-error-invalidrecipient": "Prejemnik ni bil najden",
+ "thanks-error-invalidrecipient-bot": "Botom se ni mogoče zahvaliti",
+ "thanks-error-invalidrecipient-self": "Sam sebi se ne moreš poslati zahvale",
+ "thanks-error-notloggedin": "Anonimni uporabniki ne morejo pošiljati zahval",
"thanks-error-ratelimited": "{{GENDER:$1|Presegli}} ste omejitev hitrosti. Prosimo, počakajte nekaj časa in nato poskusite znova.",
+ "thanks-error-api-params": "Obstajati mora parameter 'revid' ali 'logid'",
"thanks-thank-tooltip": "{{GENDER:$1|Pošljite}} {{GENDER:$2|temu uporabniku|tej uporabnici}} zahvalo",
+ "thanks-thank-tooltip-no": "{{GENDER:$1|Prekliči}} obvestilo zahvale",
+ "thanks-thank-tooltip-yes": "{{GENDER:$1|Pošlji}} obvestilo zahvale",
"thanks-confirmation2": "Se {{GENDER:$1|želiš}} javno zahvaliti?",
"thanks-thanked-notice": "{{GENDER:$3|Zahvalili}} ste se {{GENDER:$2|$1}}.",
"thanks": "Pošljite zahvalo",
+ "thanks-submit": "Zahvali se",
"echo-pref-subscription-edit-thank": "Se mi zahvali za urejanje",
"echo-pref-tooltip-edit-thank": "Obvesti me, kadar se mi kdo zahvali za katero od mojih urejanj.",
"echo-category-title-edit-thank": "Zahvala",
- "notification-thanks-diff-link": "tvoje urejanje",
+ "notification-thanks-diff-link": "vaše urejanje",
"notification-header-rev-thank": "$1 {{GENDER:$2|se}} {{GENDER:$4|ti}} zahvaljuje za urejanje <strong>$3</strong>.",
+ "notification-header-creation-thank": "$1 se {{GENDER:$4|ti}} {{GENDER:$2|zahvaljuje}} za ustvaritev <strong>$3</strong>.",
+ "notification-header-log-thank": "$1 se {{GENDER:$4|ti}} {{GENDER:$2|zahvaljuje}} za tvoj poseg glede <strong>$3</strong>.",
+ "notification-compact-header-edit-thank": "$1 se {{GENDER:$3|ti}} {{GENDER:$2|zahvaljuje}}.",
+ "notification-bundle-header-rev-thank": "{{PLURAL:$1|Ena oseba se {{GENDER:$3|ti}} zahvaljuje|$1 osebi se ti zahvaljujeta|$1 osebe se ti zahvaljujejo|100=99+ oseb se ti zahvaljuje}} za urejanje <strong>$2</strong>.",
+ "notification-bundle-header-log-thank": "{{PLURAL:$1|Ena oseba se {{GENDER:$3|ti}} zahvaljuje|$1 osebi se ti zahvaljujeta|$1 osebe se ti zahvaljujejo|100=99+ oseb se ti zahvaljuje}} za tvoj poseg glede <strong>$2</strong>.",
"log-name-thanks": "Dnevnik zahval",
"log-description-thanks": "Prikazan je dnevnik uporabnikov, ki se jim je kdo zahvalil.",
"logentry-thanks-thank": "$1 se je {{GENDER:$2|zahvalil|zahvalila}} {{GENDER:$4|uporabniku|uporabnici}} {{GENDER:$4|$3}}",
+ "logeventslist-thanks-log": "Dnevnik zahval",
"thanks-error-no-id-specified": "Določiti morate ID redakcije ali dnevnika, da se lahko zahvalite.",
+ "thanks-confirmation-special-log": "Ali želiš javno poslati zahvale za ta dnevniški poseg?",
+ "thanks-confirmation-special-rev": "Ali želiš javno poslati zahvale za to urejanje?",
"notification-link-text-view-post": "Ogled pripombe",
+ "notification-link-text-view-logentry": "Prikaži vpis v dnevnik",
"thanks-error-invalidpostid": "ID objave ni veljaven.",
"flow-thanks-confirmation-special": "Se želite javno zahvaliti za to pripombo?",
"flow-thanks-thanked-notice": "{{GENDER:$3|Zahvalili}} ste se $1 za {{GENDER:$2|njegovo|njeno}} pripombo.",
- "notification-flow-thanks-post-link": "tvojo pripombo"
+ "notification-flow-thanks-post-link": "tvojo pripombo",
+ "notification-header-flow-thank": "$1 se {{GENDER:$5|ti}} {{GENDER:$2|zahvaljuje}} za tvoj komentar v \"<strong>$3</strong>\".",
+ "notification-compact-header-flow-thank": "$1 se {{GENDER:$3|ti}} {{GENDER:$2|zahvaljuje}}.",
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Ena oseba se {{GENDER:$3|ti}} zahvaljuje|$1 osebi se ti zahvaljujeta|$1 osebe se ti zahvaljujejo|100=99+ oseb se ti zahvaljuje}} za tvoj komentar v »<strong>$2</strong>«."
}
diff --git a/Thanks/i18n/sma.json b/Thanks/i18n/sma.json
index 45b9f17e..347908c6 100644
--- a/Thanks/i18n/sma.json
+++ b/Thanks/i18n/sma.json
@@ -1,4 +1,6 @@
{
- "@metadata": [],
+ "@metadata": {
+ "authors": []
+ },
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|gijhtieh}}}}"
}
diff --git a/Thanks/i18n/smn.json b/Thanks/i18n/smn.json
new file mode 100644
index 00000000..9a704c0d
--- /dev/null
+++ b/Thanks/i18n/smn.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Trondtr"
+ ]
+ },
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|kijte}}}}",
+ "thanks-thank-tooltip": "{{GENDER:$1|Vuolgât}} kijttosijd taan {{GENDER:$2|kevttei}}"
+}
diff --git a/Thanks/i18n/so.json b/Thanks/i18n/so.json
index 21293fde..4296065b 100644
--- a/Thanks/i18n/so.json
+++ b/Thanks/i18n/so.json
@@ -1,9 +1,12 @@
{
"@metadata": {
"authors": [
+ "Abdullahi",
"Abshirdheere",
"Macofe"
]
},
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|mahadsanid}}}}",
+ "thanks-thank-tooltip": "{{GENDER:$1|Dir}} ogaysiis mahadsanid ah {{GENDER:$2|isticmaale}}",
"notification-header-rev-thank": "$1 {{GENDER:$2|waan}} {{GENDER:$4|kaaga}} mahad celinayaa bedelka aad ku samaysay '''$3'''."
}
diff --git a/Thanks/i18n/sq.json b/Thanks/i18n/sq.json
index 5b13da1d..9e5c7657 100644
--- a/Thanks/i18n/sq.json
+++ b/Thanks/i18n/sq.json
@@ -1,10 +1,10 @@
{
"@metadata": {
"authors": [
- "Liridon",
- "Olsi",
"Ammartivari",
- "Kosovastar"
+ "Kosovastar",
+ "Liridon",
+ "Olsi"
]
},
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|falëndero}}}}",
diff --git a/Thanks/i18n/sr-ec.json b/Thanks/i18n/sr-ec.json
index 67b811d7..4a940c1c 100644
--- a/Thanks/i18n/sr-ec.json
+++ b/Thanks/i18n/sr-ec.json
@@ -1,12 +1,13 @@
{
"@metadata": {
"authors": [
- "Milicevic01",
- "Милан Јелисавчић",
- "Сербијана",
+ "BadDog",
"Macofe",
+ "Milicevic01",
"Obsuser",
- "BadDog"
+ "Zoranzoki21",
+ "Милан Јелисавчић",
+ "Сербијана"
]
},
"thanks-desc": "Додаје линкове за захваљивање корисницима за њихове измене, коментаре итд.",
@@ -14,6 +15,9 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|захваљено}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Захвали се}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Захваљено}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Захваљивање}}}} $1…",
+ "thanks-button-action-cancel": "Откажи",
+ "thanks-button-action-completed": "Захвалили {{GENDER:$2|сте}} се {{GENDER:$1|кориснику|корисници|кориснику/ци}} $1",
"thanks-error-undefined": "Захваљивање није успело (кôд грешке: $1). Покушајте поново.",
"thanks-error-invalid-log-id": "Унос у дневнику није пронађен",
"thanks-error-invalidrevision": "ID измене није важећи.",
@@ -24,10 +28,10 @@
"thanks-error-invalidrecipient-self": "Не можете да се захвалите сами себи",
"thanks-error-notloggedin": "Анонимни корисници не могу да шаљу захвалнице.",
"thanks-error-ratelimited": "{{GENDER:$1|Прекорачили сте}} ваше ограничење за оцењивање. Сачекајте неко време, па покушајте поново.",
- "thanks-thank-tooltip": "{{GENDER:$1|Пошаљите}} захвалницу {{GENDER:$2|овом кориснику|овој корисници|овом кориснику/ци}}",
+ "thanks-thank-tooltip": "{{GENDER:$1|Пошаљите}} захвалницу {{GENDER:$2|овом кориснику|овој корисници}}",
"thanks-thank-tooltip-no": "{{GENDER:$1|Откажите}} захвалницу",
"thanks-thank-tooltip-yes": "{{GENDER:$1|Пошаљите}} захвалницу",
- "thanks-confirmation2": "Јавно {{GENDER:$1|пошаљите}} захвалницу?",
+ "thanks-confirmation2": "Желите ли заиста да се {{GENDER:$1|захвалите}}?",
"thanks-thanked-notice": "{{GENDER:$3|Захвалили}} сте се {{GENDER:$2|кориснику|корисници}} $1.",
"thanks": "Слање захвалница",
"thanks-submit": "Пошаљи захвалницу",
@@ -37,10 +41,10 @@
"notification-thanks-diff-link": "вашој измени",
"notification-header-rev-thank": "$1 вам се {{GENDER:$2|захвалио|захвалила|захвалио/ла}} на {{GENDER:$4|вашој}} измени странице <strong>$3</strong>.",
"notification-header-creation-thank": "$1 {{GENDER:$4|вам}} се {{GENDER:$2|захвалио|захвалила|захвалио/ла}} на вашем прављењу странице <strong>$3</strong>.",
- "notification-header-log-thank": "$1 вам се {{GENDER:$2|захвалио|захвалила|захвалио/ла}} на {{GENDER:$4|вашој}} радњи у вези <strong>$3</strong>.",
+ "notification-header-log-thank": "$1 вам се {{GENDER:$2|захвалио|захвалила|захвалио/ла}} на {{GENDER:$4|вашој}} радњи на страници <strong>$3</strong>.",
"notification-compact-header-edit-thank": "$1 {{GENDER:$3|вам}} се {{GENDER:$2|захвалио|захвалила|захвалио/ла}}.",
"notification-bundle-header-rev-thank": "{{PLURAL:$1|Једна особа вам се захвалила|$1 особе су вам се захвалиле|$1 особа вам се захвалило|100=>&thinsp;99 особа вам се захвалило}} на {{GENDER:$3|вашој}} измени странице <strong>$2</strong>.",
- "notification-bundle-header-log-thank": "{{PLURAL:$1|Једна особа вам се захвалила|$1 особе су вам се захвалиле|$1 особа вам се захвалило|100=>&thinsp;99 особа вам се захвалило}} на {{GENDER:$3|вашој}} радњи у вези <strong>$2</strong>.",
+ "notification-bundle-header-log-thank": "{{PLURAL:$1|Једна особа вам се захвалила|$1 особе су вам се захвалиле|$1 особа вам се захвалило|100=>&thinsp;99 особа вам се захвалило}} на {{GENDER:$3|вашој}} радњи на страници <strong>$2</strong>.",
"log-name-thanks": "Дневник захвалница",
"log-description-thanks": "Испод се налази списак корисника којима су се други корисници захвалили.",
"logentry-thanks-thank": "$1 се {{GENDER:$2|захвалио|захвалила|захвалио/ла}} {{GENDER:$4|кориснику|корисници|кориснику/ци}} {{GENDER:$4|$3}}",
diff --git a/Thanks/i18n/sr-el.json b/Thanks/i18n/sr-el.json
index 0d1e8d1d..7ff77674 100644
--- a/Thanks/i18n/sr-el.json
+++ b/Thanks/i18n/sr-el.json
@@ -1,10 +1,11 @@
{
"@metadata": {
"authors": [
+ "Macofe",
"Milicevic01",
+ "Obsuser",
"Srdjan m",
- "Macofe",
- "Obsuser"
+ "Zoranzoki21"
]
},
"thanks-desc": "Dodaje veze za zahvaljivanje korisnicima za njihove izmene, komentare itd.",
@@ -12,10 +13,11 @@
"thanks-thanked": "{{GENDER:$1|zahvaljeno}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Zahvali se}}}}",
"thanks-button-thanked": "{{GENDER:$1|Zahvalili ste se}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Zahvaljivanje}}}} $1…",
"thanks-error-undefined": "Zahvaljivanje nije uspelo (kod greške: $1). Pokušajte ponovo.",
"thanks-error-invalidrevision": "ID izmene je pogrešan.",
"thanks-error-ratelimited": "{{GENDER:$1|Prekoračili ste}} vaše ograničenje za ocenjivanje. Sačekajte neko vreme i zatim pokušajte ponovo.",
- "thanks-thank-tooltip": "{{GENDER:$1|Pošaljite}} zahvalnicu {{GENDER:$2|ovom korisniku|ovoj korisnici}}",
+ "thanks-thank-tooltip": "{{GENDER:$1|Pošaljite}} zahvalnicu {{GENDER:$2|ovom korisniku|ovoj korisnici|ovom korisniku/ci}}",
"thanks-thank-tooltip-no": "{{GENDER:$1|Otkaži}} zahvaljivanje",
"thanks-thank-tooltip-yes": "{{GENDER:$1|Pošalji}} zahvalnicu",
"thanks-confirmation2": "Želite li da se {{GENDER:$1|zahvalite}} za ovu izmenu?",
diff --git a/Thanks/i18n/sv.json b/Thanks/i18n/sv.json
index 7f70862d..90716b02 100644
--- a/Thanks/i18n/sv.json
+++ b/Thanks/i18n/sv.json
@@ -2,16 +2,16 @@
"@metadata": {
"authors": [
"Ainali",
- "Jopparn",
- "MagnusA",
- "Skalman",
- "WikiPhoenix",
- "Lokal Profil",
"Dan Koehl",
- "Hannibal-reserv",
"Hangsna",
+ "Hannibal-reserv",
+ "Jopparn",
+ "Lejonel",
+ "Lokal Profil",
"Macofe",
- "Lejonel"
+ "MagnusA",
+ "Skalman",
+ "WikiPhoenix"
]
},
"thanks-desc": "Lägger till länkar för att tacka användare för redigeringar, kommentarer, etc.",
@@ -19,6 +19,9 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|tackad}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Tacka}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Tackad}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Tackar}}}} $1…",
+ "thanks-button-action-cancel": "Avbryt",
+ "thanks-button-action-completed": "Du {{GENDER:$1|{{GENDER:$2|tackade}}}} $1",
"thanks-error-undefined": "Tackåtgärden misslyckades (felkod: $1). Var god försök igen.",
"thanks-error-invalid-log-id": "Loggpost hittades inte",
"thanks-error-invalid-log-type": "Loggtypen \"$1\" är inte i vitlistan över tillåtna loggtyper.",
@@ -64,15 +67,5 @@
"notification-flow-thanks-post-link": "din kommentar",
"notification-header-flow-thank": "$1 {{GENDER:$2|tackade}} {{GENDER:$5|dig}} för din kommentar på \"<strong>$3</strong>\".",
"notification-compact-header-flow-thank": "$1 {{GENDER:$2|tackade}} {{GENDER:$3|dig}}.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|En person|$1 personer|100=99+ personer}} tackade {{GENDER:$3|dig}} för din kommentar på \"<strong>$2</strong>\".",
- "apihelp-flowthank-description": "Skicka ett tack-meddelande för en Flow-kommentar.",
- "apihelp-flowthank-summary": "Skicka en offentlig tack-avisering för en Flow-kommentar.",
- "apihelp-flowthank-param-postid": "UUID:et för det inlägg du vill tacka för.",
- "apihelp-flowthank-example-1": "Skicka tack för kommentaren med <kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "Skicka ett tack till en redigerare.",
- "apihelp-thank-summary": "Skicka ett tack-avisering till en redigerare.",
- "apihelp-thank-param-rev": "Sidversionens ID att tacka någon för. Detta eller \"log\" måste anges.",
- "apihelp-thank-param-log": "Logg-ID att tacka någon för. Detta eller \"rev\" måste anges.",
- "apihelp-thank-param-source": "En kort sträng som beskriver källan för begäran, till exempel, <kbd>diff</kbd> eller <kbd>history</kbd>.",
- "apihelp-thank-example-1": "Skicka tack för version med <kbd>ID 456</kbd>, med en diff-sida som källa"
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|En person|$1 personer|100=99+ personer}} tackade {{GENDER:$3|dig}} för din kommentar på \"<strong>$2</strong>\"."
}
diff --git a/Thanks/i18n/szl.json b/Thanks/i18n/szl.json
index ef1f872e..990b34c6 100644
--- a/Thanks/i18n/szl.json
+++ b/Thanks/i18n/szl.json
@@ -2,8 +2,10 @@
"@metadata": {
"authors": [
"Krol111",
- "Przem(1)s"
+ "Przem(1)s",
+ "Uostofchuodnego"
]
},
- "thanks-thank-tooltip": "{{GENDER:$1|Poślij}} podziynkowaniy do {{GENDER:$2|tygo używŏcza}}"
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|podziynkuj}}}}",
+ "thanks-thank-tooltip": "{{GENDER:$1|Poślij}} podziynkowanie {{GENDER:$2|tymu używŏczowi|tyj używŏczce}}"
}
diff --git a/Thanks/i18n/ais.json b/Thanks/i18n/szy.json
index 4d3e35c0..472fbe8c 100644
--- a/Thanks/i18n/ais.json
+++ b/Thanks/i18n/szy.json
@@ -32,7 +32,5 @@
"flow-thanks-confirmation-special": "amikukay tina buhci tu kamu pabinawlan sakamu tu nizateng haw?",
"notification-flow-thanks-post-link": "u misuay a buhci tu kamu",
"notification-header-flow-thank": "$1{{GENDER:$2|mikukay tisuwan}} {{GENDER:$5|kisu}} i \"<strong>$3</strong>\" a buhci tu kamu.",
- "notification-compact-header-flow-thank": "$1{{GENDER:$2|makukay}} {{GENDER:$3|kisu}}.",
- "apihelp-flowthank-description": "pabahel pabinawlan a patakus nu mikukayay pabeli Flow a buhci tu kamuㄡ",
- "apihelp-thank-description": "pasayza cacay a mikawaway-kalumyitiay pabahel kukay patakus."
+ "notification-compact-header-flow-thank": "$1{{GENDER:$2|makukay}} {{GENDER:$3|kisu}}."
}
diff --git a/Thanks/i18n/ta.json b/Thanks/i18n/ta.json
index bab60593..7be98c21 100644
--- a/Thanks/i18n/ta.json
+++ b/Thanks/i18n/ta.json
@@ -1,10 +1,10 @@
{
"@metadata": {
"authors": [
+ "AntanO",
"Jayarathina",
"Kalyanasundar",
- "Shanmugamp7",
- "AntanO"
+ "Shanmugamp7"
]
},
"thanks-desc": "பயனர்களின் திருத்தங்கள், கருத்துகள் முதலியவற்றிற்கு நன்றி தெரிவிக்கும் இணைப்பை சேர்க்கும்.",
diff --git a/Thanks/i18n/tay.json b/Thanks/i18n/tay.json
index ee5b07f8..3449a824 100644
--- a/Thanks/i18n/tay.json
+++ b/Thanks/i18n/tay.json
@@ -1,8 +1,8 @@
{
"@metadata": {
"authors": [
- "Translatealcd",
- "Hitaypayan"
+ "Hitaypayan",
+ "Translatealcd"
]
},
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|gmnhway}}}}",
diff --git a/Thanks/i18n/tcy.json b/Thanks/i18n/tcy.json
index 9ea486de..5c5f033f 100644
--- a/Thanks/i18n/tcy.json
+++ b/Thanks/i18n/tcy.json
@@ -1,16 +1,20 @@
{
"@metadata": {
"authors": [
+ "BHARATHESHA ALASANDEMAJALU",
+ "Kiranpoojary",
+ "Ravi Mundkur",
"VASANTH S.N.",
- "రహ్మానుద్దీన్",
"Vishwanatha Badikana",
- "BHARATHESHA ALASANDEMAJALU",
- "Kiranpoojary"
+ "రహ్మానుద్దీన్"
]
},
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|ಸೊಲ್ಮೆಲು}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|ಸೊಲ್ಮೆಲು}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|ಸೊಲ್ಮೆಲು}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|ಧನ್ಯವಾದ ಸಲ್ಲಿಕೆ}}}} $1…",
+ "thanks-button-action-cancel": "ರದ್ದು ಮಲ್ಪುಲೆ",
+ "thanks-button-action-completed": "ಇರೆಗ್ {{GENDER:$1|{{GENDER:$2|ಧನ್ಯವಾದೊಲು}}}} $1",
"thanks-thank-tooltip": "ಈ {{GENDER:$2|ಸದಸ್ಯೆರ್‌ಗ್}} ಒಂಜಿ ಸೊಲ್ಮೆ ಸಂದಾಯಿನ ಸೂಚನೆನ್ {{GENDER:$1|ಕಡಪುಡ್ಲೆ}}",
"thanks": "ಸೊಲ್ಮೆ ಸಂದಲೇ",
"thanks-submit": "ಸೊಲ್ಮೆ ಸಂದಲೇ",
diff --git a/Thanks/i18n/te.json b/Thanks/i18n/te.json
index d17ae38a..2b5ed14a 100644
--- a/Thanks/i18n/te.json
+++ b/Thanks/i18n/te.json
@@ -2,15 +2,16 @@
"@metadata": {
"authors": [
"Arjunaraoc",
+ "Chaduvari",
+ "Kiranmayee",
+ "Naidugari Jayanna",
"Veeven",
"Visdaviva",
- "రహ్మానుద్దీన్",
- "Kiranmayee",
- "Naidugari Jayanna"
+ "రహ్మానుద్దీన్"
]
},
"thanks-desc": "చరిత్ర మరియు తేడా వీక్షణాలకు వాడుకరులకు ధన్యవాదములు తెలుపు లంకెలను జత చేస్తుంది",
- "thanks-thank": "{{GENDER:$1|{{GENDER:$2|ధన్యవాదాలు}}}}",
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|ధన్యవాదాలు పంపండి}}}}",
"thanks-thanked": "{{GENDER:$1|అభినందించారు}}",
"thanks-error-undefined": "కృతజ్ఞతల చర్య విఫలమైంది. దయచేసి మళ్ళీ ప్రయత్నించండి.",
"thanks-error-invalidrevision": "కూర్పుల ID చెల్లదు",
diff --git a/Thanks/i18n/tg-cyrl.json b/Thanks/i18n/tg-cyrl.json
index 0721011d..f4d1edae 100644
--- a/Thanks/i18n/tg-cyrl.json
+++ b/Thanks/i18n/tg-cyrl.json
@@ -5,10 +5,11 @@
"Vashgird"
]
},
- "thanks-thank": "ташаккур",
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|ташаккур}}}}",
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|ташаккур шуд‏}}}}",
"thanks-button-thank": "Ташаккур",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Ра‏ҳматро қабул кард‏}}}}",
+ "thanks-thank-tooltip": "{{GENDER:$1|Фиристодан}} {{GENDER:$2|ба ин корбар}} паёми ташаккурӣ.",
"echo-category-title-edit-thank": "Миннатдорам",
"logentry-thanks-thank": "Корбар $1 ба корбар $4 миннатдориашро баён кард"
}
diff --git a/Thanks/i18n/th.json b/Thanks/i18n/th.json
index 6c82d15b..75ca02b6 100644
--- a/Thanks/i18n/th.json
+++ b/Thanks/i18n/th.json
@@ -1,11 +1,14 @@
{
"@metadata": {
"authors": [
+ "Aefgh39622",
+ "Ans",
+ "B20180",
+ "Geonuch",
"Horus",
"Octahedron80",
- "Pilarbini",
- "Ans",
- "Aefgh39622"
+ "Patsagorn Y.",
+ "Pilarbini"
]
},
"thanks-desc": "เพิ่มลิงก์ขอบคุณผู้ใช้สำหรับการแก้ไข ความคิดเห็น ฯลฯ",
@@ -13,6 +16,7 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|กล่าวขอบคุณแล้ว}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|ขอบคุณ}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|กล่าวขอบคุณแล้ว}}}}",
+ "thanks-button-action-cancel": "ยกเลิก",
"thanks-error-undefined": "ปฏิบัติการขอบคุณล้มเหลว (รหัสข้อผิดพลาด: $1) โปรดลองอีกครั้ง",
"thanks-error-invalid-log-id": "ไม่พบรายการบันทึก",
"thanks-error-invalidrevision": "หมายเลขประจำรุ่นไม่ถูกต้อง",
@@ -26,7 +30,7 @@
"thanks-thank-tooltip": "{{GENDER:$1|ส่ง}}การแจ้งขอบคุณไปยัง{{GENDER:$2|ผู้ใช้}}นี้",
"thanks-thank-tooltip-no": "{{GENDER:$1|ยกเลิก}}การแจ้งขอบคุณ",
"thanks-thank-tooltip-yes": "{{GENDER:$1|ส่ง}}การแจ้งขอบคุณ",
- "thanks-confirmation2": "คำขอบคุณทั้งหมดจะเป็นแบบสาธารณะ {{GENDER:$1|ส่ง}}คำขอบคุณหรือไม่?",
+ "thanks-confirmation2": "ส่งคำขอบคุณแบบเปิดเผยต่อสาธารณะหรือไม่",
"thanks-thanked-notice": "{{GENDER:$3|คุณ}}กล่าวขอบคุณ {{GENDER:$2|$1}} แล้ว",
"thanks": "ส่งคำขอบคุณ",
"thanks-submit": "ส่งคำขอบคุณ",
@@ -35,6 +39,7 @@
"echo-category-title-edit-thank": "ขอบคุณ",
"notification-thanks-diff-link": "การแก้ไขของคุณ",
"notification-header-rev-thank": "$1 ได้{{GENDER:$2|กล่าวขอบคุณ}}{{GENDER:$4|คุณ}}สำหรับการแก้ไขของคุณบน <strong>$3</strong>",
+ "notification-header-creation-thank": "$1 ขอบคุณคุณสำหรับการสร้างหน้า <strong>$3</strong>",
"notification-header-log-thank": "$1 ได้{{GENDER:$2|กล่าวขอบคุณ}}{{GENDER:$4|คุณ}}สำหรับการกระทำของคุณเกี่ยวกับ <strong>$3</strong>",
"notification-compact-header-edit-thank": "$1 ได้{{GENDER:$2|กล่าวขอบคุณ}}{{GENDER:$3|คุณ}}",
"notification-bundle-header-rev-thank": "{{PLURAL:$1|1 คน|$1 คน|100=99+ คน}}ได้กล่าวขอบคุณ{{GENDER:$3|คุณ}}สำหรับการแก้ไขของคุณบน <strong>$2</strong>",
@@ -42,6 +47,7 @@
"log-name-thanks": "ปูมการขอบคุณ",
"log-description-thanks": "ด้านล่างนี้เป็นรายการผู้ใช้ที่ผู้ใช้อื่นกล่าวขอบคุณ",
"logentry-thanks-thank": "$1 ได้{{GENDER:$2|กล่าวขอบคุณ}} {{GENDER:$4|$3}}",
+ "logeventslist-thanks-log": "ปูมการขอบคุณ",
"thanks-error-no-id-specified": "คุณต้องเจาะจงเลขประจำรุ่นหรือปูมเพื่อส่งคำขอบคุณ",
"thanks-confirmation-special-log": "คุณต้องการส่งคำขอบคุณสำหรับการกระทำบันทึกนี้แบบสาธารณะหรือไม่",
"thanks-confirmation-special-rev": "คุณต้องการส่งคำขอบคุณสำหรับการแก้ไขนี้แบบสาธารณะหรือไม่",
diff --git a/Thanks/i18n/tl.json b/Thanks/i18n/tl.json
index f3082541..08a2d199 100644
--- a/Thanks/i18n/tl.json
+++ b/Thanks/i18n/tl.json
@@ -2,8 +2,8 @@
"@metadata": {
"authors": [
"AnakngAraw",
- "Sky Harbor",
- "LR Guanzon"
+ "LR Guanzon",
+ "Sky Harbor"
]
},
"thanks-desc": "Nagdaragdag ng mga kawing ng pasasalamat sa pagtanaw ng kasaysayan at pagkakaiba",
diff --git a/Thanks/i18n/tly.json b/Thanks/i18n/tly.json
new file mode 100644
index 00000000..e51ffc2a
--- /dev/null
+++ b/Thanks/i18n/tly.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Patriot Kur"
+ ]
+ },
+ "thanks-button-action-cancel": "Ləğv karde"
+}
diff --git a/Thanks/i18n/tr.json b/Thanks/i18n/tr.json
index f59671b5..23c5e4e2 100644
--- a/Thanks/i18n/tr.json
+++ b/Thanks/i18n/tr.json
@@ -1,16 +1,17 @@
{
"@metadata": {
"authors": [
- "Incelemeelemani",
- "Rapsar",
- "Stultiwikia",
- "Meelo",
- "Sayginer",
- "McAang",
- "Diyapazon",
+ "BaRaN6161 TURK",
"Cobija",
+ "Diyapazon",
"HakanIST",
+ "Incelemeelemani",
"Macofe",
+ "McAang",
+ "Meelo",
+ "Rapsar",
+ "Sayginer",
+ "Stultiwikia",
"Vito Genovese"
]
},
@@ -19,27 +20,53 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|teşekkür edildi}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Teşekkür et}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Teşekkür edildi}}}}",
- "thanks-error-undefined": "Teşekkür iletilemedi. Lütfen tekrar deneyin.",
- "thanks-error-invalidrevision": "Revizyon numarası geçerli değil.",
- "thanks-error-ratelimited": "{{GENDER:$1|Siz}} gönderme limitini aştınız. Lütfen bekleyin ve tekrar deneyin.",
- "thanks-thank-tooltip": "Bu {{GENDER:$2|kullanıcıya}} {{GENDER:$1|teşekkürlerini}} ilet",
- "thanks-thank-tooltip-no": "Teşekkür bildiriminiz iptal {{GENDER:$1|edildi}}",
- "thanks-thank-tooltip-yes": "Teşekkür bildiriminiz {{GENDER:$1|gönderildi}}",
- "thanks-confirmation2": "Bu değişiklik için {{GENDER:$1|teşekkür etmek}} istiyor musunuz?",
- "thanks-thanked-notice": "$1 kullanıcısına teşekkürleriniz iletildi.",
+ "thanks-button-action-queued": "$1 {{GENDER:$1|{{GENDER:$2|Teşekkür ediliyor}}}}…",
+ "thanks-button-action-cancel": "İptal",
+ "thanks-button-action-completed": "$1 kullanıcıya {{GENDER:$1|{{GENDER:$2|teşekkür}}}} ettiniz",
+ "thanks-error-undefined": "Teşekkür eylemi başarısız oldu (hata kodu: $1). Lütfen tekrar deneyin.",
+ "thanks-error-invalid-log-id": "Günlük girişi bulunamadı",
+ "thanks-error-invalid-log-type": "'$1' günlük türü, izin verilen günlük türlerinin beyaz listesinde değil.",
+ "thanks-error-log-deleted": "İstenen günlük girişi silindi ve giriş için teşekkür edilemiyor.",
+ "thanks-error-invalidrevision": "Revizyon kimliği geçerli değil.",
+ "thanks-error-revdeleted": "Revizyon silindiği için teşekkür gönderilemiyor.",
+ "thanks-error-notitle": "Sayfa başlığı alınamadı",
+ "thanks-error-invalidrecipient": "Geçerli alıcı bulunamadı",
+ "thanks-error-invalidrecipient-bot": "Botlara teşekkür edilemez",
+ "thanks-error-invalidrecipient-self": "Kendine teşekkür edemezsin",
+ "thanks-error-notloggedin": "Anonim kullanıcılar teşekkür gönderemez",
+ "thanks-error-ratelimited": "Gönderme limitini {{GENDER:$1|aştınız}}. Lütfen bekleyin ve tekrar deneyin.",
+ "thanks-error-api-params": "'revid' veya 'logid' parametresi sağlanmalıdır",
+ "thanks-thank-tooltip": "Bu {{GENDER:$2|kullanıcıya}} {{GENDER:$1|teşekkürlerini}} iletin",
+ "thanks-thank-tooltip-no": "Teşekkür bildirimini {{GENDER:$1|iptal et}}",
+ "thanks-thank-tooltip-yes": "Teşekkür bildiriminizi {{GENDER:$1|gönderin}}",
+ "thanks-confirmation2": "Herkese açık teşekkür {{GENDER:$1|gönderilsin}} mi?",
+ "thanks-thanked-notice": "{{GENDER:$2|$1}} kullanıcısına teşekkür {{GENDER:$3|ettiniz}}.",
"thanks": "Teşekkür et",
"thanks-submit": "Teşekkür et",
"echo-pref-subscription-edit-thank": "Katkım için bana teşekkür edildi",
"echo-pref-tooltip-edit-thank": "Yaptığım katkılar için yapılan teşekkürleri bana bildir.",
"echo-category-title-edit-thank": "Teşekkürler",
"notification-thanks-diff-link": "değişikliğiniz",
- "notification-header-rev-thank": "$1, '''$3''' sayfasındaki değişikliğiniz için {{GENDER:$4|size}} {{GENDER:$2|teşekkür etti}}.",
+ "notification-header-rev-thank": "$1 kullanıcısı <strong>$3</strong> sayfasındaki değişikliğiniz için {{GENDER:$4|size}} {{GENDER:$2|teşekkür etti}}.",
+ "notification-header-creation-thank": "$1, <strong>$3</strong> sayfasını oluşturduğunuz için {{GENDER:$4|size}} {{GENDER:$2|teşekkür etti}}.",
+ "notification-header-log-thank": "$1, <strong>$3</strong> ile ilgili eyleminiz için {{GENDER:$4|size}} {{GENDER:$2|teşekkür etti}}.",
+ "notification-compact-header-edit-thank": "$1 {{GENDER:$3|size}} {{GENDER:$2|teşekkür etti}}.",
+ "notification-bundle-header-rev-thank": "{{PLURAL:$1|Bir kişi|$1 kişi|100=99+ kişi}} <strong>$2</strong> sayfasındaki düzenlemeniz için {{GENDER:$3|size}} teşekkür etti.",
+ "notification-bundle-header-log-thank": "{{PLURAL:$1|Bir kişi|$1 kişi|100=99+ kişi}} <strong>$2</strong> ile ilgili işleminiz için {{GENDER:$3|size}} teşekkür etti.",
"log-name-thanks": "Teşekkür günlüğü",
"log-description-thanks": "Diğer teşekkür eden kullanıcılar aşağıda listelenmektedir.",
"logentry-thanks-thank": "$1 {{GENDER:$2}}, {{GENDER:$4|$3}} kullanıcısına teşekkür etti.",
"logeventslist-thanks-log": "Teşekkür günlüğü",
- "thanks-error-no-id-specified": "Teşekkür edebilmek için bir sürüm numarası belirtmeniz gerekmektedir.",
- "notification-link-text-view-post": "Yorum görüntüle",
- "thanks-error-invalidpostid": "Konu ID geçerli değil.",
- "flow-thanks-confirmation-special": "Bu yorum için herkese açık olarak teşekkür göndermek istiyor musunuz?"
+ "thanks-error-no-id-specified": "Teşekkür göndermek için bir revizyon veya günlük kimliği belirtmelisiniz.",
+ "thanks-confirmation-special-log": "Bu günlük işlemi için herkese açık olarak teşekkür etmek ister misiniz?",
+ "thanks-confirmation-special-rev": "Bu değişiklik için teşekkür etmek istiyor musunuz?",
+ "notification-link-text-view-post": "Yorumu görüntüle",
+ "notification-link-text-view-logentry": "Günlük girişini görüntüle",
+ "thanks-error-invalidpostid": "Gönderi kimliği geçersiz.",
+ "flow-thanks-confirmation-special": "Bu yorumu herkese açık olarak teşekkür göndermek istiyor musunuz?",
+ "flow-thanks-thanked-notice": "$1 {{GENDER:$2|kullanıcısına}} yorumuna {{GENDER:$3|teşekkür ettiniz}}.",
+ "notification-flow-thanks-post-link": "yorumunuz",
+ "notification-header-flow-thank": "$1, {{GENDER:$5|size}} \"<strong>$3</strong>\" yorumunuza {{GENDER:$2|teşekkür etti}}.",
+ "notification-compact-header-flow-thank": "$1 {{GENDER:$3|size}} {{GENDER:$2|teşekkür etti}}.",
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Bir kişi|$1 kişi|100=99+ kişi}} \"<strong>$2</strong>\" içindeki yorumunuz için {{GENDER:$3|size}} teşekkür etti."
}
diff --git a/Thanks/i18n/trv.json b/Thanks/i18n/trv.json
new file mode 100644
index 00000000..7325c884
--- /dev/null
+++ b/Thanks/i18n/trv.json
@@ -0,0 +1,10 @@
+{
+ "@metadata": {
+ "authors": [
+ "Iyuqciyang"
+ ]
+ },
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2| mqaras }}}}",
+ "thanks-button-thank": "{{GENDER:$1|{{GENDER:$2| mqaras }}}}",
+ "thanks-thank-tooltip": "{{GENDER:$1|Peadas}} kiya o mqaras pgkla bqani seejiq nii {{GENDER:$2|seejiq mduuy}}"
+}
diff --git a/Thanks/i18n/tt-cyrl.json b/Thanks/i18n/tt-cyrl.json
index 89c8f949..e4617d4f 100644
--- a/Thanks/i18n/tt-cyrl.json
+++ b/Thanks/i18n/tt-cyrl.json
@@ -1,16 +1,27 @@
{
"@metadata": {
"authors": [
- "Ilnur efende",
"Derslek",
+ "Ilnur efende",
+ "Ерней",
"Ильнар"
]
},
+ "thanks-desc": "Кулланучыларга төзәтмәләр, шәрехләр һ.б. өчен рәхмәт әйтергә сылтамаларны өсти",
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|рәхмәт әйтү}}}}",
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|рәхмәт әйтелде}}}}",
- "thanks-thank-tooltip": "{{GENDER:$2|Кулланучыга}} рәхмәт хаты {{GENDER:$1|җибәрү}}",
- "thanks-confirmation2": "Әлеге төзәтмә өчен рәхмәт {{GENDER:$1|әйтергәме}}?",
- "thanks": "Рәхмәт әйтү",
+ "thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Рәхмәт әйтү}}}}",
+ "thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Рәхмәт әйтелде}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Рәхмәт әйтелә}}}} $1…",
+ "thanks-button-action-cancel": "Кире алу",
+ "thanks-button-action-completed": "Сез $1 кулланучыга {{GENDER:$1|{{GENDER:$2|рәхмәт әйтегез}}}}",
+ "thanks-thank-tooltip": "Бу {{GENDER:$2|кулланучыга}} рәхмәт хаты {{GENDER:$1|җибәрү}}",
+ "thanks-confirmation2": "Халык алдында рәхмәт {{GENDER:$1|әйтергәме}}?",
+ "thanks": "Рәхмәт белдерү",
+ "thanks-submit": "Рәхмәт белдерү",
"echo-category-title-edit-thank": "Рәхмәтләр",
- "notification-header-rev-thank": "$1 {{GENDER:$4|сезгә}} <strong>$3</strong> битендә ясаган кертемегез өчен {{GENDER:$2|рәхмәт әйтте}}."
+ "notification-thanks-diff-link": "төзәтмәгез",
+ "notification-header-rev-thank": "$1 {{GENDER:$4|сезгә}} <strong>$3</strong> битендә ясаган кертемегез өчен {{GENDER:$2|рәхмәт әйтте}}.",
+ "log-name-thanks": "Рәхмәт әйтү көндәлеге",
+ "logeventslist-thanks-log": "Рәхмәт әйтү көндәлеге"
}
diff --git a/Thanks/i18n/uk.json b/Thanks/i18n/uk.json
index 64a5a45a..5576f3c2 100644
--- a/Thanks/i18n/uk.json
+++ b/Thanks/i18n/uk.json
@@ -1,25 +1,32 @@
{
"@metadata": {
"authors": [
+ "AS",
"Aced",
"Andriykopanytsia",
"Base",
- "Ата",
- "Olion",
- "AS",
+ "Green Zero",
+ "Macofe",
"NickK",
+ "Olion",
"Piramidion",
- "Macofe",
- "Green Zero",
- "Viiictorrr"
+ "Viiictorrr",
+ "Vlad5250",
+ "Ата"
]
},
"thanks-desc": "Додає посилання для дякування користувачам за редагування, коментарі тощо.",
- "thanks-thank": "{{GENDER:$1|{{GENDER:$2|дякую}}}}",
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|подякувати}}}}",
"thanks-thanked": "{{GENDER:$2|{{GENDER:$1|подякував|подякувала}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Подякувати}}}}",
"thanks-button-thanked": "{{GENDER:$2|{{GENDER:$1|Подякував|Подякувала}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Дякуємо}}}} $1…",
+ "thanks-button-action-cancel": "Скасувати",
+ "thanks-button-action-completed": "Ви {{GENDER:$1|{{GENDER:$2|подякували}}}} $1",
"thanks-error-undefined": "Не вдалось подякувати (код помилки: $1). Спробуйте знову.",
+ "thanks-error-invalid-log-id": "Запис журналу не знайдено",
+ "thanks-error-invalid-log-type": "Типу журналу «$1» немає у білому списку дозволених типів журналів.",
+ "thanks-error-log-deleted": "Запитаний запис журналу було вилучено, за нього не можна подякувати.",
"thanks-error-invalidrevision": "Неправильний ідентифікатор версії.",
"thanks-error-revdeleted": "Не вдалося надіслати подяку, бо версію вилучено.",
"thanks-error-notitle": "Не вдалося отримати назву сторінки",
@@ -28,10 +35,11 @@
"thanks-error-invalidrecipient-self": "Ви не можете подякувати собі",
"thanks-error-notloggedin": "Анонімні користувачі не можуть надсилати подяк",
"thanks-error-ratelimited": "{{GENDER:$1|Ви}} перевищили свій ліміт частоти. Будь ласка, зачекайте деякий час, і спробуйте знову.",
+ "thanks-error-api-params": "Має бути присутній один з параметрів «revid» або «logid»",
"thanks-thank-tooltip": "{{GENDER:$1|Надіслати}} сповіщення вдячності {{GENDER:$2|цьому користувачу|цій користувачці}}",
"thanks-thank-tooltip-no": "{{GENDER:$1|Скасувати}} сповіщення про подяку",
"thanks-thank-tooltip-yes": "{{GENDER:$1|Надіслати}} сповіщення про подяку",
- "thanks-confirmation2": "Усі подяки публічні. {{GENDER:$1|Подякувати}}?",
+ "thanks-confirmation2": "{{GENDER:$1|Надіслати}} подяку?",
"thanks-thanked-notice": "{{GENDER:$3|Ви}} подякували {{GENDER:$2|користувачу|користувачці}} $1.",
"thanks": "Надіслати подяку",
"thanks-submit": "Надіслати подяку",
@@ -40,28 +48,25 @@
"echo-category-title-edit-thank": "Вдячність",
"notification-thanks-diff-link": "Ваше редагування",
"notification-header-rev-thank": "$1 {{GENDER:$2|подякував|подякувала}} {{GENDER:$4|Вам}} за редагування на сторінці <strong>$3</strong>.",
+ "notification-header-creation-thank": "$1 {{GENDER:$2|подякував|подякувала}} {{GENDER:$4|Вам}} за створення <strong>$3</strong>.",
+ "notification-header-log-thank": "$1 {{GENDER:$2|подякував|подякувала}} {{GENDER:$4|Вам}} за Вашу дію щодо <strong>$3</strong>.",
"notification-compact-header-edit-thank": "$1 {{GENDER:$2|подякував|подякувала}} {{GENDER:$3|Вам}}.",
"notification-bundle-header-rev-thank": "{{PLURAL:$1|Одна людина подякувала|$1 людей подякувало|100=99+ людей подякували}} {{GENDER:$3|Вам}} за редагування сторінки <strong>$2</strong>.",
+ "notification-bundle-header-log-thank": "{{PLURAL:$1|Одна людина подякувала|$1 людей подякувало|100=99+ людей подякували}} {{GENDER:$3|Вам}} за вашу дію щодо <strong>$2</strong>.",
"log-name-thanks": "Журнал вдячностей",
"log-description-thanks": "Нижче наведено перелік користувачів, яким подякували інші користувачі.",
"logentry-thanks-thank": "$1 {{GENDER:$2|подякував|подякувала}} {{GENDER:$4|користувачу|користувачці}} $3",
"logeventslist-thanks-log": "Журнал подяк",
"thanks-error-no-id-specified": "Слід указати ID версії чи журналу, щоб відправити подяку.",
+ "thanks-confirmation-special-log": "Ви хочете надіслати подяку за цю дію в журналі?",
+ "thanks-confirmation-special-rev": "Ви хочете надіслати подяку за це редагування?",
"notification-link-text-view-post": "Перегляд коментаря",
+ "notification-link-text-view-logentry": "Переглянути запис у журналі",
"thanks-error-invalidpostid": "Неприпустимий ідентифікатор допису.",
- "flow-thanks-confirmation-special": "Ви хочете надіслати публічну подяку за цей коментар?",
+ "flow-thanks-confirmation-special": "Ви хочете надіслати подяку за цей коментар?",
"flow-thanks-thanked-notice": "{{GENDER:$3|Ви}} подякували $1 за {{GENDER:$2|його|її}} коментар.",
"notification-flow-thanks-post-link": "ваш коментар",
"notification-header-flow-thank": "$1 {{GENDER:$2|подякував|подякувала}} {{GENDER:$5|Вам}} за Ваш коментар у <strong>$3</strong>.",
"notification-compact-header-flow-thank": "$1 {{GENDER:$2|подякував|подякувала}} {{GENDER:$3|Вам}}.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|Одна людина подякувала|$1 людей подякувало|100=99+ людей подякували}} {{GENDER:$3|Вам}} за коментар на «<strong>$2</strong>».",
- "apihelp-flowthank-description": "Надіслати публічне сповіщення про подяку за коментар Flow.",
- "apihelp-flowthank-summary": "Надіслати публічне сповіщення про подяку за коментар Flow.",
- "apihelp-flowthank-param-postid": "UUID допису, за який дякувати.",
- "apihelp-flowthank-example-1": "Надіслати подяку за коментар з <kbd>UUID xyz789</kbd>",
- "apihelp-thank-description": "Надіслати редактору сповіщення про подяку.",
- "apihelp-thank-summary": "Надіслати редактору сповіщення про подяку.",
- "apihelp-thank-param-rev": "ID версії, за яку комусь подякувати.",
- "apihelp-thank-param-source": "Короткий рядок опису джерела запиту, наприклад, <kbd>diff</kbd> або <kbd>history</kbd>.",
- "apihelp-thank-example-1": "Надіслати подяку за версію <kbd>ID 456</kbd> зі сторінкою дифу як джерело"
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Одна людина подякувала|$1 людей подякувало|100=99+ людей подякували}} {{GENDER:$3|Вам}} за коментар на «<strong>$2</strong>»."
}
diff --git a/Thanks/i18n/ur.json b/Thanks/i18n/ur.json
index 899ee5f4..789e4f15 100644
--- a/Thanks/i18n/ur.json
+++ b/Thanks/i18n/ur.json
@@ -1,27 +1,35 @@
{
"@metadata": {
"authors": [
+ "BukhariSaeed",
+ "Muhammad Shuaib",
"Noor2020",
- "عثمان خان شاہ",
- "عرفان ارشد",
"Obaid Raza",
- "Muhammad Shuaib",
- "BukhariSaeed"
+ "Sajidkhan",
+ "عثمان خان شاہ",
+ "عرفان ارشد"
]
},
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|شکریہ}}}}",
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|شکریہ ادا کیا جاچکا}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|شکریہ}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|شکریہ ادا کیا جا چکا ہے}}}}",
+ "thanks-button-action-queued": "$1 کو {{GENDER:$1|{{GENDER:$2|شکریہ}}}} ادا کیا جا رہا ہے…",
+ "thanks-button-action-cancel": "منسوخ",
+ "thanks-button-action-completed": "آپ نے $1 کا {{GENDER:$1|{{GENDER:$2|شکریہ}}}} ادا کیا",
"thanks-error-undefined": "شکریہ ادا نہیں کیا جاسکا (خاص: $1)۔ براہ مہربانی دوبارہ کوشش کریں۔",
+ "thanks-error-invalid-log-id": "نوشتہ میں کوئی اندراج نہیں ملا",
"thanks-error-invalidrevision": "نسخے کا پتہ درست نہیں ہے",
- "thanks-error-revdeleted": "نظر ثانی حذف ہو چکی ہے۔",
+ "thanks-error-revdeleted": "شکریہ بھیجنے میں ناکامی کیونکہ نظر ثانی حذف ہو چکی ہے۔",
+ "thanks-error-invalidrecipient-bot": "بوٹس کو شکریہ ادا نہیں کیا جا سکتا۔",
+ "thanks-error-invalidrecipient-self": "آپ خود کا شکریہ ادا نہیں کر سکتے",
+ "thanks-error-notloggedin": "گمنام صارفین شکریہ ادا نہیں کر سکتے",
"thanks-error-ratelimited": "{{GENDER:$1|آپ}} ضرورت سے زیادہ کوشش کرچکے ہیں۔ براہ مہربانی کچھ دیر انتظار کے بعد دوبارہ کوشش کریں۔",
"thanks-thank-tooltip": "$1 نے $2 کا شکریہ ادا کیا",
"thanks-thank-tooltip-no": "شکریہ کی ادائیگی {{GENDER:$1|منسوخ}} کریں",
"thanks-thank-tooltip-yes": "شکریے کا پیغام {{GENDER:$1|ارسال}} کریں",
- "thanks-confirmation2": "اِس ترمیم کے لیے عوامی طور پر شکریہ {{GENDER:$1|ادا کرنا چاہتے ہیں}}؟",
- "thanks-thanked-notice": "$1 کو {{GENDER:$2|ان کو|ان کو|انہیں}} ترمیم پر {{GENDER:$3|آپ}} کا شکریہ موصول ہوچکا ہے۔",
+ "thanks-confirmation2": "سرعام شکریہ {{GENDER:$1|ادا کرنا چاہتے ہیں}}؟",
+ "thanks-thanked-notice": "{{GENDER:$3|آپ}} کی جانب سے {{GENDER:$2|$1}} کو شکریہ ادا کیا جا چکا ہے۔",
"thanks": "اظہار تشکر",
"thanks-submit": "شکریہ ارسال کریں",
"echo-pref-subscription-edit-thank": "میری ترمیم کے لیے شکریہ ادا کریں",
@@ -29,11 +37,22 @@
"echo-category-title-edit-thank": "شکریہ",
"notification-thanks-diff-link": "آپ کی ترمیم",
"notification-header-rev-thank": "$1 نے <strong>$3</strong> پر {{GENDER:$4|آپ}} کی ترمیم پر {{GENDER:$2|شکریہ!}} ادا کیا۔",
- "notification-header-log-thank": "$1 نے {{GENDER:$4|آپ}} کو <strong>$2</strong> سے متعلق عمل کے لیے {{GENDER:$2|شکریہ}} ادا کیا۔",
+ "notification-header-creation-thank": "$1 نے <strong>$3</strong> کو تخلیق کرنے کے لیے {{GENDER:$4|آپ}} کا {{GENDER:$2|شکریہ}} ادا کیا۔",
+ "notification-header-log-thank": "$1 نے {{GENDER:$4|آپ}} کو <strong>$3</strong> سے متعلق عمل کے لیے {{GENDER:$2|شکریہ}} ادا کیا۔",
+ "notification-compact-header-edit-thank": "$1 نے {{GENDER:$3|آپ}} کا {{GENDER:$2|شکریہ}} ادا کیا۔",
"notification-bundle-header-rev-thank": "{{GENDER:$3|آپ}} کی <strong>$2</strong> ترمیم پر {{PLURAL:$1|1 صارف|$1 صارف|100=99+ صارفین}} نے آپ کا شکریہ ادا کیا ہے۔",
"notification-bundle-header-log-thank": "{{PLURAL:$1|ایک شخص|$1 لوگوں|100=99+ لوگوں}} نے {{GENDER:$3|آپ}} کو <strong>$2</strong> سے متعلق عمل کے لیے شکریہ ادا کیا۔",
+ "log-name-thanks": "نوشتہ تشکر",
+ "logentry-thanks-thank": "$1 نے {{GENDER:$4|$3}} کا {{GENDER:$2|شکریہ}} ادا کیا",
+ "logeventslist-thanks-log": "نوشتہ تشکر",
+ "thanks-confirmation-special-log": "کیا آپ اس عمل کے لیے عوامی طور پر شکریہ ادا کرنا چاہتے ہیں؟",
"thanks-confirmation-special-rev": "اِس ترمیم کے لیے عوامی طور پر شکریہ ادا کرنا چاہتے ہیں؟",
+ "notification-link-text-view-post": "تبصرہ دیکھیں",
+ "notification-link-text-view-logentry": "نوشتہ کا اندراج دیکھیں",
"flow-thanks-confirmation-special": "کیا آپ عوامی طور پر اس بات کے لیے شکریہ ادا کرنا چاہتے ہیں؟",
+ "flow-thanks-thanked-notice": "{{GENDER:$3|آپ}} کی جانب سے «$1» کو {{GENDER:$2|ان کے}} تبصرے کے لیے شکریہ ادا کیا جا چکا ہے۔",
+ "notification-flow-thanks-post-link": "آپ کا تبصرہ",
"notification-header-flow-thank": "$1 نے {{GENDER:$5|آپ}} کی «<strong>$3</strong>» رائے پر {{GENDER:$5|آپ}} کا {{GENDER:$2|شکریہ}} ادا کیا ہے۔",
- "notification-compact-header-flow-thank": "$1 نے {{GENDER:$3|آپ}} کا {{GENDER:$2|شکریہ}} ادا کیا۔"
+ "notification-compact-header-flow-thank": "$1 نے {{GENDER:$3|آپ}} کا {{GENDER:$2|شکریہ}} ادا کیا۔",
+ "notification-bundle-header-flow-thank": "\"<strong>$2</strong>\" میں آپ کے تبصرے کے لیے {{PLURAL:$1|ایک فرد|$1 افراد|100=99+ افراد}} نے {{GENDER:$3|آپ}} کا شکریہ ادا کیا۔"
}
diff --git a/Thanks/i18n/vec.json b/Thanks/i18n/vec.json
index 9a25646a..f5473e17 100644
--- a/Thanks/i18n/vec.json
+++ b/Thanks/i18n/vec.json
@@ -1,25 +1,48 @@
{
"@metadata": {
"authors": [
- "Candalua"
+ "Candalua",
+ "Fierodelveneto"
]
},
- "thanks-thank": "{{GENDER:$1|{{GENDER:$2|ringràsia}}}}",
- "thanks-thanked": "{{GENDER:$1|ringrassià}}",
- "thanks-button-thank": "Ringrassia",
- "thanks-button-thanked": "{{GENDER:$1|Ringrassià}}",
- "thanks-error-undefined": "Eror durante el ringrassiamento. Próa da novo.",
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|ringrasia}}}}",
+ "thanks-thanked": "{{GENDER:$1|{{GENDER:$2|ringrasià|ringrasiada|ringrasià}}}}",
+ "thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|Ringrasia}}}}",
+ "thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|Ringrasià|Ringrasiada|Ringrasià}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|Ringrasiando}}}} $1…",
+ "thanks-button-action-cancel": "Descançełare",
+ "thanks-button-action-completed": "{{GENDER:$1|{{GENDER:$2|Ringrasià|Ringrasiada|Ringrasià}}}}",
+ "thanks-error-undefined": "(Còdaxe eror $1) Eror finmente a se jera drio ringrasiar. Riproa oncora.",
"thanks-error-invalidrevision": "L'ID de la version no'l xe mia valido.",
- "thanks-error-ratelimited": "Te ghè superà el limite massimo de ringrassiamenti. Speta un fià e ripróa.",
- "thanks-thank-tooltip": "{{GENDER:$1|Màndeghe}} na notifica de ringrassiamento a {{GENDER:$2|sto|sta}} utente qua",
- "thanks-thanked-notice": "Te ghè dito a $1 che te piase {{GENDER:$2|la so}} modifica.",
- "echo-pref-subscription-edit-thank": "I me ringrassia par na me modifica",
- "echo-pref-tooltip-edit-thank": "Avìseme co che qualcheduni me ringrassia par na modifica che gò fato.",
- "echo-category-title-edit-thank": "Ringrassiamenti",
+ "thanks-error-ratelimited": "{{GENDER:$1|A te si ndaxesto oltre}} al limite de ringrasiamenti. Speta on fià de tenpo e riproa.",
+ "thanks-thank-tooltip": "{{GENDER:$1|Enviaghe}} na notifega de ringrasiamento a {{GENDER:$2|sto|sta}} utente cuà.",
+ "thanks-confirmation2": "{{GENDER:$1|Inviar}} publegamente el ringrasiamento?",
+ "thanks-thanked-notice": "{{GENDER:$3|Te ghè ringrasià}} {{GENDER:$2|$1}}.",
+ "thanks": "Invia ringrasiamento",
+ "thanks-submit": "Invia ringrasiamento",
+ "echo-pref-subscription-edit-thank": "El me rengrasia par on me canbiamento",
+ "echo-pref-tooltip-edit-thank": "Avìxame co calcheduni me ringrasia par on canbiamento che go faxesto.",
+ "echo-category-title-edit-thank": "Rengrasiamenti",
"notification-thanks-diff-link": "la to modifica",
- "notification-header-rev-thank": "$1 {{GENDER:$4|el|la}} te gà {{GENDER:$2|ringrassià}} par la to modifica su <strong>$3</strong>.",
- "log-name-thanks": "Registro dei ringrassiamenti",
+ "notification-header-rev-thank": "$1 {{GENDER:$4|el|ła}} te ga {{GENDER:$2|ringrasià}} par ła to modìfega in <strong>$3</strong>.",
+ "notification-header-creation-thank": "$1 {{GENDER:$2|el|ła}} te ga {{GENDER:$4|ringrasià}} par ver creà ła pàjina <strong>$3</strong>.",
+ "notification-header-log-thank": "$1 {{GENDER:$2|el|ła}} te ga {{GENDER:$4|ringrasià}} par ła to asion in <strong>$3</strong>.",
+ "notification-compact-header-edit-thank": "$1 {{GENDER:$3|el|ła}} te ga {{GENDER:$2|ringrasià}}.",
+ "notification-bundle-header-rev-thank": "{{PLURAL:$1|Na persona ła te ga|$1 persone łe te ga|100=Pì de 99 persone łe te ga}} {{GENDER:$3|ringrasià}} par ła to modìfega in <strong>$2</strong>.",
+ "notification-bundle-header-log-thank": "{{PLURAL:$1|Na persona ła te ga|$1 persone łe te ga|100=Pì de 99 persone łe te ga}} {{GENDER:$3|ringrasià}} par ła to asion in <strong>$2</strong>.",
+ "log-name-thanks": "Rejistro dei rengrasiamenti",
"log-description-thanks": "Sta qua xe na lista dei utenti ringrassià da altri utenti.",
"logentry-thanks-thank": "$1 {{GENDER:$2|el|la}} gà ringrassià {{GENDER:$4|$3}}",
- "notification-header-flow-thank": "$1 {{GENDER:$1|el|la}} te gà {{GENDER:$5|ringrassià}} par el to comento in \"<strong>$3</strong>\"."
+ "logeventslist-thanks-log": "Rejistro dei rengrasiamenti",
+ "thanks-error-no-id-specified": "A xe nesesàrio spesìfegar on ID version o rejistro par ringrasiar.",
+ "thanks-confirmation-special-log": "Vuto ringrasiar publegamente par sta asion in tel rejistro?",
+ "thanks-confirmation-special-rev": "Vuto ringrasiar publegamente par sta modìfega?",
+ "notification-link-text-view-post": "Varda comento",
+ "thanks-error-invalidpostid": "El ID mesajo no el xe mija bon",
+ "flow-thanks-confirmation-special": "Vuto ringrasiar publegamente par sto comento?",
+ "flow-thanks-thanked-notice": "A {{GENDER:$3|te ghè ringrasià}} $1 par {{GENDER:$2|el so}} comento.",
+ "notification-flow-thanks-post-link": "el to comento",
+ "notification-header-flow-thank": "$1 {{GENDER:$2|el|ła}} te ga {{GENDER:$5|ringrasià}} par el to comento in <strong>$3</strong>.",
+ "notification-compact-header-flow-thank": "$1 {{GENDER:$3|el|ła}} te ga {{GENDER:$2|ringrasià}}.",
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Na persona ła te ga|$1 persone łe te ga|100=Pì de 99 persone łe te ga}} {{GENDER:$3|ringrasià}} par el to comento in <strong>$2</strong>."
}
diff --git a/Thanks/i18n/vi.json b/Thanks/i18n/vi.json
index 01a04014..f184818c 100644
--- a/Thanks/i18n/vi.json
+++ b/Thanks/i18n/vi.json
@@ -1,15 +1,15 @@
{
"@metadata": {
"authors": [
- "Minh Nguyen",
- "Prenn",
- "Trần Nguyễn Minh Huy",
- "Max20091",
"Dinhxuanduyet",
+ "Harriettruong3",
"KhangND",
- "Nguyên Lê",
"Macofe",
- "Harriettruong3"
+ "Max20091",
+ "Minh Nguyen",
+ "Nguyên Lê",
+ "Prenn",
+ "Trần Nguyễn Minh Huy"
]
},
"thanks-desc": "Thêm các liên kết để cảm ơn người dùng vì sửa đổi, bình luận, v.v.",
@@ -61,7 +61,5 @@
"notification-flow-thanks-post-link": "đã bình luận",
"notification-header-flow-thank": "$1 {{GENDER:$2}}đã cảm ơn {{GENDER:$5}}bạn vì bình luận ở “<strong>$3</strong>”.",
"notification-compact-header-flow-thank": "$1 {{GENDER:$2}}đã cảm ơn {{GENDER:$3}}bạn.",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|Một người|$1 người|100=99+ người}} đã cảm ơn {{GENDER:$3}}bạn vì lời bình luận của bạn trong “<strong>$2</strong>”.",
- "apihelp-flowthank-description": "Gửi lời cảm ơn công khai vì một bình luận Flow.",
- "apihelp-thank-param-rev": "Số thay đổi để cảm ơn ai đó. Cần cung cấp số này hoặc “log”."
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|Một người|$1 người|100=99+ người}} đã cảm ơn {{GENDER:$3}}bạn vì lời bình luận của bạn trong “<strong>$2</strong>”."
}
diff --git a/Thanks/i18n/vo.json b/Thanks/i18n/vo.json
index 83c89200..5f1fccd9 100644
--- a/Thanks/i18n/vo.json
+++ b/Thanks/i18n/vo.json
@@ -4,7 +4,7 @@
"Malafaya"
]
},
- "thanks-thank": "danön",
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2|danön}}}}",
"thanks-thanked": "{{GENDER:$1|pedanon}}",
"thanks-button-thank": "{{GENDER:$1|Danön}}",
"thanks-button-thanked": "{{GENDER:$1|Pedanon}}",
diff --git a/Thanks/i18n/xh.json b/Thanks/i18n/xh.json
new file mode 100644
index 00000000..2ac40d61
--- /dev/null
+++ b/Thanks/i18n/xh.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "Nomden"
+ ]
+ },
+ "thanks-thank-tooltip": "Thumela amazwi ombulelelo kulo mntu"
+}
diff --git a/Thanks/i18n/xsy.json b/Thanks/i18n/xsy.json
new file mode 100644
index 00000000..25cc4f02
--- /dev/null
+++ b/Thanks/i18n/xsy.json
@@ -0,0 +1,11 @@
+{
+ "@metadata": {
+ "authors": [
+ "Lalotahes"
+ ]
+ },
+ "thanks-thank": "{{GENDER:$1|{{GENDER:$2| ma’alo’ }}}}",
+ "thanks-button-thank": "{{GENDER:$1|{{GENDER:$2| ma’alo’ }}}}",
+ "thanks-button-action-cancel": "kayni’",
+ "thanks-thank-tooltip": "{{GENDER:$1| Somater}}’aehae’ hino’alo’ pinakra:am no hini ’aehae’ {{GENDER:$2| kamamatawaw }}"
+}
diff --git a/Thanks/i18n/yi.json b/Thanks/i18n/yi.json
index 7e318dbb..4fe7bff6 100644
--- a/Thanks/i18n/yi.json
+++ b/Thanks/i18n/yi.json
@@ -1,8 +1,8 @@
{
"@metadata": {
"authors": [
- "פוילישער",
- "Macofe"
+ "Macofe",
+ "פוילישער"
]
},
"thanks-desc": "שטעלט צו לינקען צו באדאנקען באניצער פאר רעדאקטירונגען, הערות, אא\"וו.",
@@ -10,12 +10,18 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|געדאַנקט}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|דאַנקען}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|געדאַנקט}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|דאַנקען}}}}…",
+ "thanks-button-action-cancel": "אַנולירן",
+ "thanks-button-action-completed": "איר האט {{GENDER:$1|{{GENDER:$2|געדאַנקט}}}}",
"thanks-error-undefined": "דאנק אקציע אדורכגעפאלן (פֿעלערקאד: $1). זייט אזוי גוט פרובירט נאכאמאל.",
"thanks-error-invalidrevision": "רעוויסיע אידענטיפיצורונג נישט גילטיק.",
+ "thanks-error-invalidrecipient-bot": "מען קען נישט דאנקען קיין באט",
+ "thanks-error-invalidrecipient-self": "מען קען נישט דאנקען זיך אליין",
+ "thanks-error-notloggedin": "אנאנימע באניצער קענען נישט שיקן דאנקען",
"thanks-thank-tooltip": "{{GENDER:$1|שיקן}} א דאנק מודעה צו {{GENDER:$2|דעם באניצער}}",
"thanks-thank-tooltip-no": "{{GENDER:$1|אנולירן}} די דאנק־מודעה",
"thanks-thank-tooltip-yes": "{{GENDER:$1|שיקן}} די דאנק־מודעה",
- "thanks-confirmation2": "אלע דאנקען זענען עפֿנטלעך. {{GENDER:$1|שיקן}}?",
+ "thanks-confirmation2": "עפֿנטלעך {{GENDER:$1|שיקן}} דאנקען. ?",
"thanks-thanked-notice": "{{GENDER:$3|איר}} האט געדאנקט {{GENDER:$2|$1}}.",
"thanks": "שיקן א דאנק",
"thanks-submit": "שיקן א דאנק",
@@ -24,8 +30,11 @@
"echo-category-title-edit-thank": "אַ דאַנק",
"notification-thanks-diff-link": "אײַער רעדאקטירונג",
"notification-header-rev-thank": "$1 {{GENDER:$2|האט}} {{GENDER:$4|אייך}} געדאַנקט פֿאר אייער רעדאקטירונג אויף <strong>$3</strong>.",
+ "notification-header-creation-thank": "$1 {{GENDER:$2|האט}} {{GENDER:$4|אייך}} געדאנקט פאר אייער שאפֿונג פון <strong>$3</strong>.",
+ "notification-header-log-thank": "$1 {{GENDER:$2|האט}} {{GENDER:$4|אייך}} געדאַנקט פֿאַר אייער פעולה בנוגע <strong>$3</strong>.",
"notification-compact-header-edit-thank": "$1 {{GENDER:$2|האט געדאנקט}} {{GENDER:$3|אייך}}",
"notification-bundle-header-rev-thank": "{{PLURAL:$1|איין מענטש|$1 מענטשן|100=99+ מענטשן}} האבן געדאנקט {{GENDER:$3|אייך}} פאר אייער רעדאקטירונג אויף <strong>$2</strong>.",
+ "notification-bundle-header-log-thank": "{{PLURAL:$1|איין מענטש|$1 מענטשן|100=99+ מענטשן}} האבן געדאנקט {{GENDER:$3|אייך}} פאר אייער פעולה וועגן <strong>$2</strong>.",
"log-name-thanks": "דאנק־לאגבוך",
"log-description-thanks": "אונטן איז רשימה פון באניצער געדאַנקט דורך אנדערע באניצער.",
"logentry-thanks-thank": "$1 {{GENDER:$2|האט געדאנקט}} {{GENDER:$4|$3}}",
@@ -34,6 +43,5 @@
"flow-thanks-thanked-notice": "{{GENDER:$3|איר}} האט געדאנקט $1 פאר {{GENDER:$2|זיין|איר|זייער}} הערה.",
"notification-flow-thanks-post-link": "אייער הערה",
"notification-header-flow-thank": "$1 {{GENDER:$2|האט}} {{GENDER:$5|אייך}} געדאַנקט פֿאר אייער הערה אין <strong>$3</strong>.",
- "notification-compact-header-flow-thank": "$1 {{GENDER:$2|האט געדאנקט}} {{GENDER:$3|אייך}}.",
- "apihelp-thank-description": "שיקן א ייש״כ־מודעה צו א רעדאקטאר."
+ "notification-compact-header-flow-thank": "$1 {{GENDER:$2|האט געדאנקט}} {{GENDER:$3|אייך}}."
}
diff --git a/Thanks/i18n/yo.json b/Thanks/i18n/yo.json
index e8609d47..db34718c 100644
--- a/Thanks/i18n/yo.json
+++ b/Thanks/i18n/yo.json
@@ -1,8 +1,8 @@
{
"@metadata": {
"authors": [
- "Wikicology",
- "Demmy"
+ "Demmy",
+ "Wikicology"
]
},
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|dúpẹ́ lọ́wọ́}}}}",
diff --git a/Thanks/i18n/yue.json b/Thanks/i18n/yue.json
index 320b945d..1e30372a 100644
--- a/Thanks/i18n/yue.json
+++ b/Thanks/i18n/yue.json
@@ -2,9 +2,9 @@
"@metadata": {
"authors": [
"Antonytse",
+ "CRCHF",
"William915",
- "Yueman",
- "CRCHF"
+ "Yueman"
]
},
"thanks-thank": "{{GENDER:$1|{{GENDER:$2|多謝}}}}",
diff --git a/Thanks/i18n/zh-hans.json b/Thanks/i18n/zh-hans.json
index 4e14577a..55438cad 100644
--- a/Thanks/i18n/zh-hans.json
+++ b/Thanks/i18n/zh-hans.json
@@ -1,23 +1,30 @@
{
"@metadata": {
"authors": [
+ "A Retired User",
+ "A2093064",
+ "Angrydog001",
"Chiefwei",
+ "EagerLin",
"Fantasticfears",
"Hzy980512",
+ "Impersonator 1",
"Liuxinyu970226",
+ "Macofe",
+ "Mywood",
+ "Northteam",
+ "Phenolla",
"Qiyue2001",
+ "WQL",
"Xiaomingyan",
+ "Xiplus",
"Yfdyh000",
"Zhuyifei1999",
- "Mywood",
- "Impersonator 1",
+ "予弦",
+ "沈澄心",
"王庭茂",
- "Northteam",
- "EagerLin",
- "Macofe",
- "飞舞回堂前",
- "A2093064",
- "Phenolla"
+ "神樂坂秀吉",
+ "飞舞回堂前"
]
},
"thanks-desc": "添加感谢用户进行编辑、评论等行为的链接。",
@@ -25,6 +32,9 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|已感谢}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|感谢}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|已感谢}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|正在感谢}}}} $1…",
+ "thanks-button-action-cancel": "取消",
+ "thanks-button-action-completed": "您已{{GENDER:$1|{{GENDER:$2|感谢}}}}$1",
"thanks-error-undefined": "感谢操作失败(错误代码:$1)。请重试。",
"thanks-error-invalid-log-id": "找不到日志记录",
"thanks-error-invalid-log-type": "日志类型“$1”没有在允许的日志类型白名单中。",
@@ -33,7 +43,7 @@
"thanks-error-revdeleted": "无法发送感谢,因为修订版本已删除。",
"thanks-error-notitle": "页面标题无法取回",
"thanks-error-invalidrecipient": "找不到有效的接收者",
- "thanks-error-invalidrecipient-bot": "机器人不能被感谢",
+ "thanks-error-invalidrecipient-bot": "不能感谢机器人",
"thanks-error-invalidrecipient-self": "您不能感谢您自己",
"thanks-error-notloggedin": "匿名用户不能发送感谢",
"thanks-error-ratelimited": "{{GENDER:$1|您}}已超过您的速率限制。请等待一段时间再试。",
@@ -50,7 +60,7 @@
"echo-category-title-edit-thank": "感谢",
"notification-thanks-diff-link": "编辑",
"notification-header-rev-thank": "$1{{GENDER:$2|感谢了}}{{GENDER:$4|您}}在<strong>$3</strong>的编辑。",
- "notification-header-creation-thank": "$1{{GENDER:$2|感谢了}}{{GENDER:$4|您}}在<strong>$3</strong>的编辑。",
+ "notification-header-creation-thank": "$1对于{{GENDER:$4|您}}所创建的<strong>$3</strong>表示{{GENDER:$2|感谢}}。",
"notification-header-log-thank": "$1{{GENDER:$2|感谢了}}{{GENDER:$4|您}}与<strong>$3</strong>相关的操作。",
"notification-compact-header-edit-thank": "$1{{GENDER:$2|感谢了}}{{GENDER:$3|您}}。",
"notification-bundle-header-rev-thank": "{{PLURAL:$1|$1个人|100=超过99个人}}对于{{GENDER:$3|您}}在<strong>$2</strong>所作出的编辑表示感谢。",
@@ -66,19 +76,9 @@
"notification-link-text-view-logentry": "查看日志记录",
"thanks-error-invalidpostid": "帖子ID无效。",
"flow-thanks-confirmation-special": "您希望对此评论公开发送感谢么?",
- "flow-thanks-thanked-notice": "$1已收到{{GENDER:$3|您}}对{{GENDER:$2|他|她|他}}的评论做出的感谢。",
+ "flow-thanks-thanked-notice": "$1已收到{{GENDER:$3|您}}对{{GENDER:$2|其}}评论做出的感谢。",
"notification-flow-thanks-post-link": "您的评论",
"notification-header-flow-thank": "$1{{GENDER:$2|感谢了}}{{GENDER:$5|您}}在“<strong>$3</strong>”发表的评论。",
"notification-compact-header-flow-thank": "$1{{GENDER:$2|感谢了}}{{GENDER:$3|您}}。",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|$1个人|100=超过99个人}}感谢了{{GENDER:$3|您}}在“<strong>$2</strong>”发表的评论。",
- "apihelp-flowthank-description": "为一条Flow评论公开发送感谢通知。",
- "apihelp-flowthank-summary": "为一条Flow评论公开发送感谢通知。",
- "apihelp-flowthank-param-postid": "要感谢的帖子的UUID。",
- "apihelp-flowthank-example-1": "为<kbd>UUID xyz789</kbd>的评论发送感谢",
- "apihelp-thank-description": "向一名编辑者发送感谢通知。",
- "apihelp-thank-summary": "向一名编辑者发送感谢通知。",
- "apihelp-thank-param-rev": "要感谢某人的修订版本ID。必须提供此参数或“log”参数。",
- "apihelp-thank-param-log": "要感谢某人的日志ID。必须提供此参数或“rev”参数。",
- "apihelp-thank-param-source": "一个描述请求来源的短字符串,例如<kbd>diff</kbd>或<kbd>history</kbd>。",
- "apihelp-thank-example-1": "为修订<kbd>ID 456</kbd>发送感谢,将差异页面作为来源"
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|$1个人|100=超过99个人}}感谢了{{GENDER:$3|您}}在“<strong>$2</strong>”发表的评论。"
}
diff --git a/Thanks/i18n/zh-hant.json b/Thanks/i18n/zh-hant.json
index 96d8a201..a504b342 100644
--- a/Thanks/i18n/zh-hant.json
+++ b/Thanks/i18n/zh-hant.json
@@ -1,19 +1,22 @@
{
"@metadata": {
"authors": [
+ "A2093064",
+ "Bowleerin",
"Ch.Andrew",
- "Fantasticfears",
- "Liuxinyu970226",
- "Simon Shek",
- "Waihorace",
"Cwlin0416",
- "LNDDYL",
"EagerLin",
- "飞舞回堂前",
- "Bowleerin",
+ "Fantasticfears",
"Hello903hello",
"Kly",
- "A2093064"
+ "LNDDYL",
+ "Liuxinyu970226",
+ "Simon Shek",
+ "WQL",
+ "Waihorace",
+ "Winston Sung",
+ "Xiplus",
+ "飞舞回堂前"
]
},
"thanks-desc": "提供可讓使用者感謝編輯、評論..等的連結。",
@@ -21,6 +24,9 @@
"thanks-thanked": "{{GENDER:$1|{{GENDER:$2|已感謝}}}}",
"thanks-button-thank": "{{GENDER:$1|{{GENDER:$2|感謝}}}}",
"thanks-button-thanked": "{{GENDER:$1|{{GENDER:$2|已感謝}}}}",
+ "thanks-button-action-queued": "{{GENDER:$1|{{GENDER:$2|正在感謝}}}}$1…",
+ "thanks-button-action-cancel": "取消",
+ "thanks-button-action-completed": "您{{GENDER:$1|{{GENDER:$2|已感謝}}}}$1",
"thanks-error-undefined": "感謝操作失敗 (錯誤代碼:$1),請再試一次。",
"thanks-error-invalid-log-id": "找不到日誌項目",
"thanks-error-invalid-log-type": "日誌類型「$1」未在允許的日誌類型白名單裡。",
@@ -46,35 +52,25 @@
"echo-category-title-edit-thank": "感謝",
"notification-thanks-diff-link": "您的編輯",
"notification-header-rev-thank": "$1對於{{GENDER:$4|您}}在<strong>$3</strong>所作出的編輯表示{{GENDER:$2|感謝}}。",
- "notification-header-creation-thank": "$1對於{{GENDER:$4|您}}所創建的<strong>$3</strong>表示{{GENDER:$2|感謝}}。",
- "notification-header-log-thank": "$1 {{GENDER:$2|已感謝}}{{GENDER:$4|您}}對於 <strong>$3</strong>」的相關操作。",
- "notification-compact-header-edit-thank": "$1 {{GENDER:$2|已感謝}}{{GENDER:$3|您}}。",
+ "notification-header-creation-thank": "$1對於{{GENDER:$4|您}}所建立的<strong>$3</strong>表示{{GENDER:$2|感謝}}。",
+ "notification-header-log-thank": "$1{{GENDER:$2|已感謝}}{{GENDER:$4|您}}對於<strong>$3</strong>的相關操作。",
+ "notification-compact-header-edit-thank": "$1{{GENDER:$2|已感謝}}{{GENDER:$3|您}}。",
"notification-bundle-header-rev-thank": "{{PLURAL:$1|有$1位|100=有99+位}}對於{{GENDER:$3|您}}在 <strong>$2</strong> 所作出的編輯表示感謝。",
"notification-bundle-header-log-thank": "{{PLURAL:$1|有 $1 位|100=有超過 99 位}}對於{{GENDER:$3|您}}向「<strong>$2</strong>」所作出的相關操作表示感謝。",
"log-name-thanks": "感謝日誌",
"log-description-thanks": "以下是得到其他人表示感謝的使用者清單。",
- "logentry-thanks-thank": "$1 {{GENDER:$2|已感謝}} {{GENDER:$4|$3}}",
+ "logentry-thanks-thank": "$1{{GENDER:$2|已感謝}}{{GENDER:$4|$3}}",
"logeventslist-thanks-log": "感謝日誌",
"thanks-error-no-id-specified": "您必須指定修訂或日誌 ID 以傳送感謝訊息。",
"thanks-confirmation-special-log": "您是否要對此日誌操作公開表達感謝?",
"thanks-confirmation-special-rev": "您是否要對此編輯公開表達感謝?",
"notification-link-text-view-post": "檢視評論",
"notification-link-text-view-logentry": "檢視日誌項目",
- "thanks-error-invalidpostid": "發佈 ID 無效。",
+ "thanks-error-invalidpostid": "貼文ID無效。",
"flow-thanks-confirmation-special": "您是否要對此評論公開表達感謝?",
- "flow-thanks-thanked-notice": "$1 已收到{{GENDER:$3|您}}對{{GENDER:$2|他的|她的|他的}}評論的感謝。",
+ "flow-thanks-thanked-notice": "$1已收到{{GENDER:$3|您}}對{{GENDER:$2|他的|她的|他的}}評論的感謝。",
"notification-flow-thanks-post-link": "您的評論",
"notification-header-flow-thank": "$1 {{GENDER:$2|已感謝}}{{GENDER:$5|您}}於「<strong>$3</strong>」中的評論。",
- "notification-compact-header-flow-thank": "$1 {{GENDER:$2|已感謝}}{{GENDER:$3|您}}。",
- "notification-bundle-header-flow-thank": "{{PLURAL:$1|有 $1 位|100=有超過 99 位}}對於{{GENDER:$3|您}}在「<strong>$2</strong>」所作出的評論表示感謝。",
- "apihelp-flowthank-description": "傳送公開感謝通知給 Flow 的評論。",
- "apihelp-flowthank-summary": "傳送公開感謝通知給 Flow 的評論。",
- "apihelp-flowthank-param-postid": "要感謝的發佈內容 UUID。",
- "apihelp-flowthank-example-1": "向對於 <kbd>UUID xyz789</kbd> 的評論發送感謝",
- "apihelp-thank-description": "向一名編輯者傳送感謝通知。",
- "apihelp-thank-summary": "向一名編輯者傳送感謝通知。",
- "apihelp-thank-param-rev": "感謝某人的修訂 ID。應提供「log」參數。",
- "apihelp-thank-param-log": "感謝某人的日誌 ID。應提供「rev」參數。",
- "apihelp-thank-param-source": "描述請求來源的簡短字串,例如 <kbd>diff</kbd> 或 <kbd>history</kbd>。",
- "apihelp-thank-example-1": "為修訂 <kbd>ID 456</kbd> 發送感謝,以差異頁面作為來源"
+ "notification-compact-header-flow-thank": "$1{{GENDER:$2|已感謝}}{{GENDER:$3|您}}。",
+ "notification-bundle-header-flow-thank": "{{PLURAL:$1|有$1位|100=有超過99位}}對於{{GENDER:$3|您}}在「<strong>$2</strong>」所作出的評論表示感謝。"
}
diff --git a/Thanks/includes/ApiCoreThank.php b/Thanks/includes/ApiCoreThank.php
index 38ac6c52..b9a2828c 100644
--- a/Thanks/includes/ApiCoreThank.php
+++ b/Thanks/includes/ApiCoreThank.php
@@ -1,5 +1,8 @@
<?php
+use MediaWiki\MediaWikiServices;
+use MediaWiki\Revision\RevisionRecord;
+
/**
* API module to send thanks notifications for revisions and log entries.
*
@@ -10,6 +13,8 @@ class ApiCoreThank extends ApiThank {
/**
* Perform the API request.
+ * @suppress PhanTypeMismatchArgumentNullable T240141
+ * @suppress PhanPossiblyUndeclaredVariable Phan get's confused by the badly arranged code
*/
public function execute() {
// Initial setup.
@@ -29,8 +34,10 @@ class ApiCoreThank extends ApiThank {
$id = $params['log'];
} else {
$this->dieWithError( 'thanks-error-api-params', 'thanks-error-api-params' );
+ throw new LogicException();
}
+ $recipientUsername = null;
// Determine thanks parameters.
if ( $type === 'log' ) {
$logEntry = $this->getLogEntryFromId( $id );
@@ -39,6 +46,8 @@ class ApiCoreThank extends ApiThank {
$type = 'rev';
$id = $logEntry->getAssociatedRevId();
} else {
+ // If there's no associated revision, die if the user is sitewide blocked
+ $this->dieOnSitewideBlockedUser( $user );
$excerpt = '';
$title = $logEntry->getTarget();
$recipient = $this->getUserFromLog( $logEntry );
@@ -49,11 +58,14 @@ class ApiCoreThank extends ApiThank {
$revision = $this->getRevisionFromId( $id );
$excerpt = EchoDiscussionParser::getEditExcerpt( $revision, $this->getLanguage() );
$title = $this->getTitleFromRevision( $revision );
+ $this->dieOnBlockedUser( $user, $title );
+
$recipient = $this->getUserFromRevision( $revision );
- $recipientUsername = $revision->getUserText();
+ $recipientUsername = $revision->getUser()->getName();
// If there is no parent revid of this revision, it's a page creation.
- if ( !(bool)$revision->getPrevious() ) {
+ $store = MediaWikiServices::getInstance()->getRevisionStore();
+ if ( !(bool)$store->getPreviousRevision( $revision ) ) {
$revcreation = true;
}
}
@@ -83,7 +95,7 @@ class ApiCoreThank extends ApiThank {
* @param int $id The revision or log ID.
* @return bool
*/
- protected function userAlreadySentThanks( User $user, $type, $id ) {
+ protected function userAlreadySentThanks( User $user, $type, $id ) {
if ( $type === 'rev' ) {
// For b/c with old-style keys
$type = '';
@@ -92,11 +104,12 @@ class ApiCoreThank extends ApiThank {
}
private function getRevisionFromId( $revId ) {
- $revision = Revision::newFromId( $revId );
+ $store = MediaWikiServices::getInstance()->getRevisionStore();
+ $revision = $store->getRevisionById( $revId );
// Revision ID 1 means an invalid argument was passed in.
if ( !$revision || $revision->getId() === 1 ) {
$this->dieWithError( 'thanks-error-invalidrevision', 'invalidrevision' );
- } elseif ( $revision->isDeleted( Revision::DELETED_TEXT ) ) {
+ } elseif ( $revision->isDeleted( RevisionRecord::DELETED_TEXT ) ) {
$this->dieWithError( 'thanks-error-revdeleted', 'revdeleted' );
}
return $revision;
@@ -126,11 +139,12 @@ class ApiCoreThank extends ApiThank {
$this->dieWithError( 'thanks-error-log-deleted', 'thanks-error-log-deleted' );
}
+ // @phan-suppress-next-line PhanTypeMismatchReturnNullable T240141
return $logEntry;
}
- private function getTitleFromRevision( Revision $revision ) {
- $title = Title::newFromID( $revision->getPage() );
+ private function getTitleFromRevision( RevisionRecord $revision ) {
+ $title = Title::newFromID( $revision->getPageId() );
if ( !$title instanceof Title ) {
$this->dieWithError( 'thanks-error-notitle', 'notitle' );
}
@@ -150,19 +164,28 @@ class ApiCoreThank extends ApiThank {
}
}
- private function getUserFromRevision( Revision $revision ) {
- $recipient = $revision->getUser();
+ /**
+ * @param RevisionRecord $revision
+ * @return User
+ */
+ private function getUserFromRevision( RevisionRecord $revision ) {
+ $recipient = $revision->getUser()->getId();
if ( !$recipient ) {
$this->dieWithError( 'thanks-error-invalidrecipient', 'invalidrecipient' );
}
return User::newFromId( $recipient );
}
+ /**
+ * @param LogEntry $logEntry
+ * @return User
+ */
private function getUserFromLog( LogEntry $logEntry ) {
$recipient = $logEntry->getPerformer();
if ( !$recipient ) {
$this->dieWithError( 'thanks-error-invalidrecipient', 'invalidrecipient' );
}
+ // @phan-suppress-next-line PhanTypeMismatchReturnNullable T240141
return $recipient;
}
diff --git a/Thanks/includes/ApiFlowThank.php b/Thanks/includes/ApiFlowThank.php
index c7e670ba..49fdf056 100644
--- a/Thanks/includes/ApiFlowThank.php
+++ b/Thanks/includes/ApiFlowThank.php
@@ -1,4 +1,11 @@
<?php
+
+use Flow\Container;
+use Flow\Conversion\Utils;
+use Flow\Exception\FlowException;
+use Flow\Model\PostRevision;
+use Flow\Model\UUID;
+
/**
* API module to send Flow thanks notifications
*
@@ -9,12 +16,6 @@
* @ingroup Extensions
*/
-use Flow\Container;
-use Flow\Conversion\Utils;
-use Flow\Exception\FlowException;
-use Flow\Model\PostRevision;
-use Flow\Model\UUID;
-
class ApiFlowThank extends ApiThank {
public function execute() {
$user = $this->getUser();
@@ -46,6 +47,7 @@ class ApiFlowThank extends ApiThank {
// Truncate the title text to prevent issues with database storage.
$topicTitleText = $this->getLanguage()->truncateForDatabase( $rawTopicTitleText, 200 );
$pageTitle = $this->getPageTitleFromRootPost( $rootPost );
+ $this->dieOnBlockedUser( $user, $pageTitle );
/** @var PostRevision $post */
$post = $data['post'];
@@ -76,6 +78,7 @@ class ApiFlowThank extends ApiThank {
*/
private function getFlowData( UUID $postId ) {
$rootPostLoader = Container::get( 'loader.root_post' );
+ '@phan-var \Flow\Repository\RootPostLoader $rootPostLoader';
try {
$data = $rootPostLoader->getWithRoot( $postId );
@@ -86,6 +89,7 @@ class ApiFlowThank extends ApiThank {
if ( $data['post'] === null ) {
$this->dieWithError( 'thanks-error-invalidpostid', 'invalidpostid' );
}
+ // @phan-suppress-next-line PhanTypeMismatchReturnNullable T240141
return $data;
}
diff --git a/Thanks/includes/ApiThank.php b/Thanks/includes/ApiThank.php
index 8b6cdf8b..9e99711f 100644
--- a/Thanks/includes/ApiThank.php
+++ b/Thanks/includes/ApiThank.php
@@ -1,4 +1,7 @@
<?php
+
+use MediaWiki\MediaWikiServices;
+
/**
* Base API module for Thanks
*
@@ -11,19 +14,47 @@ abstract class ApiThank extends ApiBase {
$this->dieWithError( 'thanks-error-notloggedin', 'notloggedin' );
} elseif ( $user->pingLimiter( 'thanks-notification' ) ) {
$this->dieWithError( [ 'thanks-error-ratelimited', $user->getName() ], 'ratelimited' );
- } elseif ( $user->isBlocked() ) {
- $this->dieBlocked( $user->getBlock() );
} elseif ( $user->isBlockedGlobally() ) {
$this->dieBlocked( $user->getGlobalBlock() );
}
}
- protected function dieOnBadRecipient( User $user, User $recipient ) {
- global $wgThanksSendToBots;
+ /**
+ * Check whether the user is blocked from this title. (This is not the same
+ * as checking whether they are sitewide blocked, because a sitewide blocked
+ * user may still be allowed to thank on their own talk page.)
+ *
+ * This is separate from dieOnBadUser because we need to know the title.
+ *
+ * @param User $user
+ * @param Title $title
+ */
+ protected function dieOnBlockedUser( User $user, Title $title ) {
+ $permissionManager = MediaWikiServices::getInstance()->getPermissionManager();
+ if ( $permissionManager->isBlockedFrom( $user, $title ) ) {
+ $this->dieBlocked( $user->getBlock() );
+ }
+ }
+ /**
+ * Check whether the user is sitewide blocked.
+ *
+ * This is separate from dieOnBlockedUser because we need to know if the thank
+ * is related to a revision. (If it is, then use dieOnBlockedUser instead.)
+ *
+ * @param User $user
+ */
+ protected function dieOnSitewideBlockedUser( User $user ) {
+ $block = $user->getBlock();
+ if ( $block && $block->isSitewide() ) {
+ $this->dieBlocked( $block );
+ }
+ }
+
+ protected function dieOnBadRecipient( User $user, User $recipient ) {
if ( $user->getId() === $recipient->getId() ) {
$this->dieWithError( 'thanks-error-invalidrecipient-self', 'invalidrecipient' );
- } elseif ( !$wgThanksSendToBots && $recipient->isBot() ) {
+ } elseif ( !$this->getConfig()->get( 'ThanksSendToBots' ) && $recipient->isBot() ) {
$this->dieWithError( 'thanks-error-invalidrecipient-bot', 'invalidrecipient' );
}
}
@@ -66,8 +97,7 @@ abstract class ApiThank extends ApiBase {
* when checking for duplicate thanks
*/
protected function logThanks( User $user, User $recipient, $uniqueId ) {
- global $wgThanksLogging;
- if ( !$wgThanksLogging ) {
+ if ( !$this->getConfig()->get( 'ThanksLogging' ) ) {
return;
}
$logEntry = new ManualLogEntry( 'thanks', 'thank' );
@@ -77,6 +107,11 @@ abstract class ApiThank extends ApiBase {
$logEntry->setTarget( $target );
$logId = $logEntry->insert();
$logEntry->publish( $logId, 'udp' );
+
+ if ( ExtensionRegistry::getInstance()->isLoaded( 'CheckUser' ) ) {
+ $recentChange = $logEntry->getRecentChange();
+ CheckUserHooks::updateCheckUserData( $recentChange );
+ }
}
public function needsToken() {
diff --git a/Thanks/includes/EchoCoreThanksPresentationModel.php b/Thanks/includes/EchoCoreThanksPresentationModel.php
index 514b14a8..7360cf84 100644
--- a/Thanks/includes/EchoCoreThanksPresentationModel.php
+++ b/Thanks/includes/EchoCoreThanksPresentationModel.php
@@ -1,13 +1,20 @@
<?php
+
+use MediaWiki\Revision\RevisionRecord;
+
class EchoCoreThanksPresentationModel extends EchoEventPresentationModel {
/** @var LogEntry|bool|null */
private $logEntry;
public function canRender() {
$hasTitle = (bool)$this->event->getTitle();
- if ( $this->getThankType() === 'log' ) {
+ if ( $hasTitle && $this->getThankType() === 'log' ) {
$logEntry = $this->getLogEntry();
- return $hasTitle && $logEntry && !$logEntry->getDeleted();
+ return $logEntry && !(
+ // the notification renders the message on Special:Log without the comment,
+ // so check $logEntry is not deleted, or only its comment is deleted
+ $logEntry->getDeleted() & ~LogPage::DELETED_COMMENT
+ );
}
return $hasTitle;
}
@@ -56,22 +63,17 @@ class EchoCoreThanksPresentationModel extends EchoEventPresentationModel {
}
private function getRevisionEditSummary() {
- if ( !$this->userCan( Revision::DELETED_COMMENT ) ) {
- return false;
- }
-
- $revId = $this->event->getExtraParam( 'revid', false );
- if ( !$revId ) {
+ if ( !$this->userCan( RevisionRecord::DELETED_COMMENT ) ) {
return false;
}
- $revision = Revision::newFromId( $revId );
+ $revision = $this->event->getRevision();
if ( !$revision ) {
return false;
}
- $summary = $revision->getComment( Revision::RAW );
- return $summary ?: false;
+ $summary = $revision->getComment( RevisionRecord::RAW );
+ return $summary ? $summary->text : false;
}
/**
@@ -98,7 +100,7 @@ class EchoCoreThanksPresentationModel extends EchoEventPresentationModel {
return $summary;
}
// Fallback on edit excerpt.
- if ( $this->userCan( Revision::DELETED_TEXT ) ) {
+ if ( $this->userCan( RevisionRecord::DELETED_TEXT ) ) {
return $this->event->getExtraParam( 'excerpt', false );
}
}
@@ -124,7 +126,7 @@ class EchoCoreThanksPresentationModel extends EchoEventPresentationModel {
}
public function getSecondaryLinks() {
- $pageLink = $this->getPageLink( $this->event->getTitle(), null, true );
+ $pageLink = $this->getPageLink( $this->event->getTitle(), '', true );
if ( $this->isBundled() ) {
return [ $pageLink ];
} else {
@@ -143,10 +145,7 @@ class EchoCoreThanksPresentationModel extends EchoEventPresentationModel {
if ( !$logId ) {
$this->logEntry = false;
} else {
- $this->logEntry = DatabaseLogEntry::newFromId( $logId, wfGetDB( DB_REPLICA ) );
- if ( !$this->logEntry ) {
- $this->logEntry = false;
- }
+ $this->logEntry = DatabaseLogEntry::newFromId( $logId, wfGetDB( DB_REPLICA ) ) ?: false;
}
return $this->logEntry;
}
diff --git a/Thanks/includes/EchoFlowThanksPresentationModel.php b/Thanks/includes/EchoFlowThanksPresentationModel.php
index 1f48d9d3..eb5050b5 100644
--- a/Thanks/includes/EchoFlowThanksPresentationModel.php
+++ b/Thanks/includes/EchoFlowThanksPresentationModel.php
@@ -1,6 +1,6 @@
<?php
-class EchoFlowThanksPresentationModel extends Flow\FlowPresentationModel {
+class EchoFlowThanksPresentationModel extends Flow\Notifications\FlowPresentationModel {
public function canRender() {
return (bool)$this->event->getTitle();
}
diff --git a/Thanks/includes/SpecialThanks.php b/Thanks/includes/SpecialThanks.php
index 43fd92e1..4b8e9c3a 100644
--- a/Thanks/includes/SpecialThanks.php
+++ b/Thanks/includes/SpecialThanks.php
@@ -11,7 +11,7 @@ class SpecialThanks extends FormSpecialPage {
/**
* 'rev' for revision, 'log' for log entry, or 'flow' for Flow comment,
* null if no ID is specified
- * @var string $type
+ * @var string|null $type
*/
protected $type;
@@ -146,7 +146,7 @@ class SpecialThanks extends FormSpecialPage {
} else {
$requestData = [
'action' => 'flowthank',
- 'postid' => $data['revid'],
+ 'postid' => $data['id'],
'token' => $this->getUser()->getEditToken(),
];
}
diff --git a/Thanks/includes/ThanksHooks.php b/Thanks/includes/ThanksHooks.php
index d2308a1a..34cadd69 100644
--- a/Thanks/includes/ThanksHooks.php
+++ b/Thanks/includes/ThanksHooks.php
@@ -1,6 +1,9 @@
<?php
+use MediaWiki\Linker\LinkTarget;
use MediaWiki\MediaWikiServices;
+use MediaWiki\Revision\RevisionRecord;
+use MediaWiki\User\UserIdentity;
/**
* Hooks for Thanks extension
@@ -11,43 +14,35 @@ use MediaWiki\MediaWikiServices;
class ThanksHooks {
/**
- * ResourceLoaderTestModules hook handler
- * @see https://www.mediawiki.org/wiki/Manual:Hooks/ResourceLoaderTestModules
+ * Handler for HistoryTools and DiffTools hooks.
*
- * @param array &$testModules The modules array to add to.
- * @param ResourceLoader &$resourceLoader The resource loader.
- * @return bool
+ * Insert a 'thank' link into revision interface, if the user is allowed to thank.
+ *
+ * @param RevisionRecord $revisionRecord RevisionRecord object to add the thank link for
+ * @param array &$links Links to add to the revision interface
+ * @param ?RevisionRecord $oldRevisionRecord RevisionRecord object of the "old" revision
+ * when viewing a diff
+ * @param UserIdentity $userIdentity The user performing the thanks.
*/
- public static function onResourceLoaderTestModules( array &$testModules,
- ResourceLoader &$resourceLoader
+ public static function insertThankLink(
+ RevisionRecord $revisionRecord,
+ array &$links,
+ ?RevisionRecord $oldRevisionRecord,
+ UserIdentity $userIdentity
) {
- if ( class_exists( 'SpecialMobileDiff' ) ) {
- $testModules['qunit']['tests.ext.thanks.mobilediff'] = [
- 'localBasePath' => dirname( __DIR__ ),
- 'remoteExtPath' => 'Thanks',
- 'dependencies' => [ 'ext.thanks.mobilediff' ],
- 'scripts' => [
- 'tests/qunit/test_ext.thanks.mobilediff.js',
- ],
- 'targets' => [ 'desktop', 'mobile' ],
- ];
+ $recipient = $revisionRecord->getUser();
+ if ( $recipient === null ) {
+ // Cannot see the user
+ return;
}
- return true;
- }
- /**
- * Handler for HistoryRevisionTools and DiffRevisionTools hooks.
- * Inserts 'thank' link into revision interface
- * @param Revision $rev Revision object to add the thank link for
- * @param array &$links Links to add to the revision interface
- * @param Revision|null $oldRev Revision object of the "old" revision when viewing a diff
- * @param User $user The user performing the thanks.
- * @return bool
- */
- public static function insertThankLink( $rev, &$links, $oldRev, User $user ) {
- $recipientId = $rev->getUser();
- $recipient = User::newFromId( $recipientId );
- $prev = $rev->getPrevious();
+ $recipient = User::newFromIdentity( $recipient );
+ $previous = MediaWikiServices::getInstance()
+ ->getRevisionLookup()
+ ->getPreviousRevision( $revisionRecord );
+
+ $user = User::newFromIdentity( $userIdentity );
+
// Don't let users thank themselves.
// Exclude anonymous users.
// Exclude users who are blocked.
@@ -56,16 +51,35 @@ class ThanksHooks {
// (It supports discontinuous history created by Import or CX but
// prevents thanking diff across multiple revisions)
if ( !$user->isAnon()
- && $recipientId !== $user->getId()
- && !$user->isBlocked()
+ && !$user->equals( $recipient )
+ && !self::isUserBlockedFromTitle( $user, $revisionRecord->getPageAsLinkTarget() )
&& !$user->isBlockedGlobally()
&& self::canReceiveThanks( $recipient )
- && !$rev->isDeleted( Revision::DELETED_TEXT )
- && ( !$oldRev || !$prev || $prev->getId() === $oldRev->getId() )
+ && !$revisionRecord->isDeleted( RevisionRecord::DELETED_TEXT )
+ && ( !$oldRevisionRecord || !$previous ||
+ $previous->getId() === $oldRevisionRecord->getId() )
) {
- $links[] = self::generateThankElement( $rev->getId(), $recipient );
+ $links[] = self::generateThankElement(
+ $revisionRecord->getId(),
+ $user,
+ $recipient
+ );
}
- return true;
+ }
+
+ /**
+ * Check whether the user is blocked from the title associated with the revision.
+ *
+ * This queries the replicas for a block; if 'no block' is incorrectly reported, it
+ * will be caught by ApiThank::dieOnBlockedUser when the user attempts to thank.
+ *
+ * @param User $user
+ * @param LinkTarget $title
+ * @return bool
+ */
+ private static function isUserBlockedFromTitle( User $user, LinkTarget $title ) {
+ return MediaWikiServices::getInstance()->getPermissionManager()
+ ->isBlockedFrom( $user, $title, true );
}
/**
@@ -77,7 +91,7 @@ class ThanksHooks {
protected static function canReceiveThanks( User $user ) {
global $wgThanksSendToBots;
- if ( $user->isAnon() ) {
+ if ( $user->isAnon() || $user->isSystemUser() ) {
return false;
}
@@ -92,28 +106,30 @@ class ThanksHooks {
* Helper for self::insertThankLink
* Creates either a thank link or thanked span based on users session
* @param int $id Revision or log ID to generate the thank element for.
+ * @param User $sender User who sends thanks notification.
* @param User $recipient User who receives thanks notification.
* @param string $type Either 'revision' or 'log'.
* @return string
*/
- protected static function generateThankElement( $id, $recipient, $type = 'revision' ) {
- global $wgUser;
+ protected static function generateThankElement(
+ $id, User $sender, User $recipient, $type = 'revision'
+ ) {
// Check if the user has already thanked for this revision or log entry.
// Session keys are backwards-compatible, and are also used in the ApiCoreThank class.
$sessionKey = ( $type === 'revision' ) ? $id : $type . $id;
- if ( $wgUser->getRequest()->getSessionData( "thanks-thanked-$sessionKey" ) ) {
+ if ( $sender->getRequest()->getSessionData( "thanks-thanked-$sessionKey" ) ) {
return Html::element(
'span',
[ 'class' => 'mw-thanks-thanked' ],
- wfMessage( 'thanks-thanked', $wgUser, $recipient->getName() )->text()
+ wfMessage( 'thanks-thanked', $sender->getName(), $recipient->getName() )->text()
);
}
$genderCache = MediaWikiServices::getInstance()->getGenderCache();
// Add 'thank' link
$tooltip = wfMessage( 'thanks-thank-tooltip' )
- ->params( $wgUser->getName(), $recipient->getName() )
- ->text();
+ ->params( $sender->getName(), $recipient->getName() )
+ ->text();
$subpage = ( $type === 'revision' ) ? '' : 'Log/';
return Html::element(
@@ -125,7 +141,7 @@ class ThanksHooks {
'data-' . $type . '-id' => $id,
'data-recipient-gender' => $genderCache->getGenderOf( $recipient->getName(), __METHOD__ ),
],
- wfMessage( 'thanks-thank', $wgUser, $recipient->getName() )->text()
+ wfMessage( 'thanks-thank', $sender->getName(), $recipient->getName() )->text()
);
}
@@ -142,32 +158,26 @@ class ThanksHooks {
/**
* Handler for PageHistoryBeforeList hook.
- * @see http://www.mediawiki.org/wiki/Manual:Hooks/PageHistoryBeforeList
- * @param WikiPage|Article|ImagePage|CategoryPage|Page &$page The page for which the history
- * is loading.
+ * @see https://www.mediawiki.org/wiki/Manual:Hooks/PageHistoryBeforeList
+ *
+ * @param WikiPage|Article|ImagePage|CategoryPage $page Not used
* @param RequestContext $context RequestContext object
- * @return bool true in all cases
*/
- public static function onPageHistoryBeforeList( &$page, $context ) {
+ public static function onPageHistoryBeforeList( $page, $context ) {
if ( $context->getUser()->isLoggedIn() ) {
static::addThanksModule( $context->getOutput() );
}
- return true;
}
/**
- * Handler for DiffViewHeader hook.
- * @see http://www.mediawiki.org/wiki/Manual:Hooks/DiffViewHeader
+ * Handler for DifferenceEngineViewHeader hook.
+ * @see https://www.mediawiki.org/wiki/Manual:Hooks/DifferenceEngineViewHeader
* @param DifferenceEngine $diff DifferenceEngine object that's calling.
- * @param Revision $oldRev Revision object of the "old" revision (may be null/invalid)
- * @param Revision $newRev Revision object of the "new" revision
- * @return bool true in all cases
*/
- public static function onDiffViewHeader( $diff, $oldRev, $newRev ) {
+ public static function onDifferenceEngineViewHeader( $diff ) {
if ( $diff->getUser()->isLoggedIn() ) {
static::addThanksModule( $diff->getOutput() );
}
- return true;
}
/**
@@ -176,7 +186,6 @@ class ThanksHooks {
* @param array &$notifications array of Echo notifications
* @param array &$notificationCategories array of Echo notification categories
* @param array &$icons array of icon details
- * @return bool
*/
public static function onBeforeCreateEchoEvent(
&$notifications, &$notificationCategories, &$icons
@@ -197,7 +206,7 @@ class ThanksHooks {
],
];
- if ( class_exists( Flow\FlowPresentationModel::class ) ) {
+ if ( ExtensionRegistry::getInstance()->isLoaded( 'Flow' ) ) {
$notifications['flow-thank'] = [
'category' => 'edit-thank',
'group' => 'positive',
@@ -216,15 +225,12 @@ class ThanksHooks {
'rtl' => 'Thanks/userTalk-constructive-rtl.svg'
]
];
-
- return true;
}
/**
* Add user to be notified on echo event
* @param EchoEvent $event The event.
* @param User[] &$users The user list to add to.
- * @return bool
*/
public static function onEchoGetDefaultNotifiedUsers( $event, &$users ) {
switch ( $event->getType() ) {
@@ -239,15 +245,13 @@ class ThanksHooks {
$users[$recipientId] = $recipient;
break;
}
- return true;
}
/**
* Handler for LocalUserCreated hook
- * @see http://www.mediawiki.org/wiki/Manual:Hooks/LocalUserCreated
+ * @see https://www.mediawiki.org/wiki/Manual:Hooks/LocalUserCreated
* @param User $user User object that was created.
* @param bool $autocreated True when account was auto-created
- * @return bool
*/
public static function onAccountCreated( $user, $autocreated ) {
// New users get echo preferences set that are not the default settings for existing users.
@@ -256,15 +260,14 @@ class ThanksHooks {
$user->setOption( 'echo-subscriptions-email-edit-thank', true );
$user->saveSettings();
}
- return true;
}
/**
* Add thanks button to SpecialMobileDiff page
* @param OutputPage &$output OutputPage object
* @param MobileContext $ctx MobileContext object
- * @param array $revisions Array of the two revisions that are being compared in the diff
- * @return bool true in all cases
+ * @param array $revisions Array with two elements, either nulls or RevisionRecord objects for
+ * the two revisions that are being compared in the diff
*/
public static function onBeforeSpecialMobileDiffDisplay( &$output, $ctx, $revisions ) {
$rev = $revisions[1];
@@ -272,8 +275,9 @@ class ThanksHooks {
// If the MobileFrontend extension is installed and the user is
// logged in or recipient is not a bot if bots cannot receive thanks, show a 'Thank' link.
if ( $rev
- && class_exists( 'SpecialMobileDiff' )
- && self::canReceiveThanks( User::newFromId( $rev->getUser() ) )
+ && ExtensionRegistry::getInstance()->isLoaded( 'MobileFrontend' )
+ && $rev->getUser()
+ && self::canReceiveThanks( User::newFromIdentity( $rev->getUser() ) )
&& $output->getUser()->isLoggedIn()
) {
$output->addModules( [ 'ext.thanks.mobilediff' ] );
@@ -284,7 +288,6 @@ class ThanksHooks {
}
}
- return true;
}
/**
@@ -292,11 +295,9 @@ class ThanksHooks {
* So users can just type in a username for target and it'll work.
* @link https://www.mediawiki.org/wiki/Manual:Hooks/GetLogTypesOnUser
* @param string[] &$types The list of log types, to add to.
- * @return bool
*/
public static function onGetLogTypesOnUser( array &$types ) {
$types[] = 'thanks';
- return true;
}
/**
@@ -306,7 +307,6 @@ class ThanksHooks {
* @link https://www.mediawiki.org/wiki/Manual:Hooks/BeforePageDisplay
* @param OutputPage $out OutputPage object
* @param Skin $skin The skin in use.
- * @return bool
*/
public static function onBeforePageDisplay( OutputPage $out, $skin ) {
$title = $out->getTitle();
@@ -318,7 +318,6 @@ class ThanksHooks {
if ( $title->isSpecial( 'Log' ) ) {
static::addThanksModule( $out );
}
- return true;
}
/**
@@ -326,17 +325,15 @@ class ThanksHooks {
* Flow is installed.
*
* @param ApiModuleManager $moduleManager Module manager instance
- * @return bool
*/
public static function onApiMainModuleManager( ApiModuleManager $moduleManager ) {
- if ( class_exists( 'FlowHooks' ) ) {
+ if ( ExtensionRegistry::getInstance()->isLoaded( 'Flow' ) ) {
$moduleManager->addModule(
'flowthank',
'action',
'ApiFlowThank'
);
}
- return true;
}
/**
@@ -344,7 +341,6 @@ class ThanksHooks {
*
* @param EchoEvent $event The event being notified.
* @param string &$bundleString Determines how the notification should be bundled.
- * @return bool True for success
*/
public static function onEchoGetBundleRules( $event, &$bundleString ) {
switch ( $event->getType() ) {
@@ -370,10 +366,11 @@ class ThanksHooks {
}
break;
}
- return true;
}
/**
+ * Insert a 'thank' link into the log interface, if the user is allowed to thank.
+ *
* @link https://www.mediawiki.org/wiki/Manual:Hooks/LogEventsListLineEnding
* @param LogEventsList $page The log events list.
* @param string &$ret The lineending HTML, to modify.
@@ -385,10 +382,15 @@ class ThanksHooks {
public static function onLogEventsListLineEnding(
LogEventsList $page, &$ret, DatabaseLogEntry $entry, &$classes, &$attribs
) {
- global $wgUser;
-
- // Don't thank if anonymous or blocked
- if ( $wgUser->isAnon() || $wgUser->isBlocked() || $wgUser->isBlockedGlobally() ) {
+ $user = $page->getUser();
+
+ // Don't thank if anonymous or blocked or if user is deleted from the log entry
+ if (
+ $user->isAnon()
+ || $entry->isDeleted( LogPage::DELETED_USER )
+ || self::isUserBlockedFromTitle( $user, $entry->getTarget() )
+ || $user->isBlockedGlobally()
+ ) {
return;
}
@@ -405,7 +407,7 @@ class ThanksHooks {
// Don't check for deleted revision (this avoids extraneous queries from Special:Log).
$recipient = $entry->getPerformer();
if ( !$recipient
- || $recipient->getId() === $wgUser->getId()
+ || $recipient->getId() === $user->getId()
|| !self::canReceiveThanks( $recipient )
) {
return;
@@ -414,8 +416,8 @@ class ThanksHooks {
// Create thank link either for the revision (if there is an associated revision ID)
// or the log entry.
$type = $entry->getAssociatedRevId() ? 'revision' : 'log';
- $id = $entry->getAssociatedRevId() ? $entry->getAssociatedRevId() : $entry->getId();
- $thankLink = self::generateThankElement( $id, $recipient, $type );
+ $id = $entry->getAssociatedRevId() ?: $entry->getId();
+ $thankLink = self::generateThankElement( $id, $user, $recipient, $type );
// Add parentheses to match what's done with Thanks in revision lists and diff displays.
$ret .= ' ' . wfMessage( 'parentheses' )->rawParams( $thankLink )->escaped();
diff --git a/Thanks/includes/ThanksLogFormatter.php b/Thanks/includes/ThanksLogFormatter.php
index 78c5e499..a67991c0 100644
--- a/Thanks/includes/ThanksLogFormatter.php
+++ b/Thanks/includes/ThanksLogFormatter.php
@@ -1,4 +1,5 @@
<?php
+
/**
* This class formats log entries for thanks
*/
diff --git a/Thanks/modules/ext.thanks.corethank.js b/Thanks/modules/ext.thanks.corethank.js
index c0546692..748d7a3c 100644
--- a/Thanks/modules/ext.thanks.corethank.js
+++ b/Thanks/modules/ext.thanks.corethank.js
@@ -1,11 +1,14 @@
-( function ( $, mw, OO ) {
+( function () {
'use strict';
function reloadThankedState() {
$( 'a.mw-thanks-thank-link' ).each( function ( idx, el ) {
var $thankLink = $( el );
if ( mw.thanks.thanked.contains( $thankLink ) ) {
- $thankLink.before( mw.message( 'thanks-thanked', mw.user, $thankLink.data( 'recipient-gender' ) ).escaped() );
+ $thankLink.before(
+ $( '<span>' ).addClass( 'mw-thanks-thank-confirmation' ).text(
+ mw.msg( 'thanks-thanked', mw.user, $thankLink.data( 'recipient-gender' ) ) )
+ );
$thankLink.remove();
}
} );
@@ -53,7 +56,7 @@
},
// Fail
function ( errorCode ) {
- // If error occured, enable attempting to thank again
+ // If error occurred, enable attempting to thank again
$thankLink.data( 'clickDisabled', false );
switch ( errorCode ) {
case 'invalidrevision':
@@ -97,7 +100,7 @@
} );
} );
} else {
- $thankLinks.click( function ( e ) {
+ $thankLinks.on( 'click', function ( e ) {
var $thankLink = $( this );
e.preventDefault();
sendThanks( $thankLink, $thankLink );
@@ -120,4 +123,4 @@
mw.hook( 'wikipage.diff' ).add( function ( $content ) {
addActionToLinks( $content );
} );
-}( jQuery, mediaWiki, OO ) );
+}() );
diff --git a/Thanks/modules/ext.thanks.flowthank.js b/Thanks/modules/ext.thanks.flowthank.js
index 64f8a0d4..af4e1fb4 100644
--- a/Thanks/modules/ext.thanks.flowthank.js
+++ b/Thanks/modules/ext.thanks.flowthank.js
@@ -1,7 +1,7 @@
-( function ( $, mw, OO ) {
+( function () {
'use strict';
- var $thankedLabel = $( '<span></span>' )
+ var $thankedLabel = $( '<span>' )
.addClass( 'mw-thanks-flow-thanked mw-ui-quiet' );
mw.thanks.thanked.cookieName = 'flow-thanked';
@@ -82,4 +82,4 @@
sendFlowThanks( $thankLink );
} );
-}( jQuery, mediaWiki, OO ) );
+}() );
diff --git a/Thanks/modules/ext.thanks.mobilediff.js b/Thanks/modules/ext.thanks.mobilediff.js
index ccb1ee9a..56764ff7 100644
--- a/Thanks/modules/ext.thanks.mobilediff.js
+++ b/Thanks/modules/ext.thanks.mobilediff.js
@@ -1,11 +1,20 @@
-( function ( mw, $ ) {
+( function () {
+ // To allow users to cancel a thanks in the event of an accident, the action is delayed.
+ var THANKS_DELAY = 2000,
+ mobile = mw.mobileFrontend.require( 'mobile.startup' ),
+ Button = mobile.Button,
+ Icon = mobile.Icon,
+ msgOptions = {
+ // tag ensures that only one message in workflow is shown at any time
+ tag: 'thanks'
+ };
/**
* Attempt to execute a thank operation for a given edit
*
* @param {string} name The username of the user who made the edit
* @param {string} revision The revision the user created
* @param {string} recipientGender The gender of the user who made the edit
- * @return {Promise} The thank operation's status.
+ * @return {jQuery.Promise} The thank operation's status.
*/
function thankUser( name, revision, recipientGender ) {
return ( new mw.Api() ).postWithToken( 'csrf', {
@@ -13,21 +22,19 @@
rev: revision,
source: 'mobilediff'
} ).then( function () {
- mw.notify( mw.msg( 'thanks-thanked-notice', name, recipientGender, mw.user ) );
+ mw.notify( mw.msg( 'thanks-button-action-completed', name, recipientGender, mw.user ),
+ msgOptions );
}, function ( errorCode ) {
- // FIXME: What is "popup" and where is it defined?
- /* eslint-disable no-undef */
switch ( errorCode ) {
case 'invalidrevision':
- popup.show( mw.msg( 'thanks-error-invalidrevision' ) );
+ mw.notify( mw.msg( 'thanks-error-invalidrevision' ), msgOptions );
break;
case 'ratelimited':
- popup.show( mw.msg( 'thanks-error-ratelimited', recipientGender ) );
+ mw.notify( mw.msg( 'thanks-error-ratelimited', recipientGender ), msgOptions );
break;
default:
- popup.show( mw.msg( 'thanks-error-undefined', errorCode ) );
+ mw.notify( mw.msg( 'thanks-error-undefined', errorCode ), msgOptions );
}
- /* eslint-enable no-undef */
} );
}
@@ -42,7 +49,7 @@
return $button
.addClass( 'thanked' )
.prop( 'disabled', true )
- .text( mw.message( 'thanks-button-thanked', mw.user, gender ).text() );
+ .text( mw.msg( 'thanks-button-thanked', mw.user, gender ) );
}
/**
@@ -54,10 +61,20 @@
* @return {jQuery|null} The HTML of the button.
*/
function createThankLink( name, rev, gender ) {
- var $button = $( '<button>' )
- .addClass(
- 'mw-mf-action-button mw-ui-button mw-ui-progressive mw-ui-icon mw-ui-icon-before mw-ui-icon-userTalk'
- ).text( mw.message( 'thanks-button-thank', mw.user, gender ).text() );
+ var timeout,
+ button = new Button( {
+ progressive: true,
+ additionalClassNames: 'mw-mf-action-button'
+ } ),
+ $button = button.$el;
+
+ // append icon
+ new Icon( {
+ name: 'userTalk',
+ glyphPrefix: 'thanks',
+ hasText: true,
+ label: mw.msg( 'thanks-button-thank', mw.user, gender )
+ } ).$el.appendTo( $button );
// Don't make thank button for self
if ( name === mw.config.get( 'wgUserName' ) ) {
@@ -67,15 +84,42 @@
if ( mw.config.get( 'wgThanksAlreadySent' ) ) {
return disableThanks( $button, gender );
}
- return $button
- .on( 'click', function () {
- var $this = $( this );
- if ( !$this.hasClass( 'thanked' ) ) {
- thankUser( name, rev, gender ).done( function () {
- disableThanks( $this, gender );
- } );
- }
+
+ function cancelThanks( $btn ) {
+ // Hide the notification
+ $( '.mw-notification' ).hide();
+ // Clear the queued thanks!
+ clearTimeout( timeout );
+ timeout = null;
+ $btn.prop( 'disabled', false );
+ }
+
+ function queueThanks( $btn ) {
+ var $msg = $( '<div>' ).addClass( 'mw-thanks-notification' ).text(
+ mw.msg( 'thanks-button-action-queued', name, gender )
+ );
+ $( '<a>' ).text( mw.msg( 'thanks-button-action-cancel' ) ).appendTo( $msg );
+ mw.notify( $msg, msgOptions );
+ // Make it possible to cancel
+ $msg.find( 'a' ).on( 'click', function () {
+ cancelThanks( $btn );
} );
+ timeout = setTimeout( function () {
+ timeout = null;
+ thankUser( name, rev, gender ).then( function () {
+ disableThanks( $btn, gender );
+ } );
+ }, THANKS_DELAY );
+ }
+
+ return $button.on( 'click', function () {
+ var $this = $( this );
+ $this.prop( 'disabled', true );
+ // eslint-disable-next-line no-jquery/no-class-state
+ if ( !$this.hasClass( 'thanked' ) && !timeout ) {
+ queueThanks( $this );
+ }
+ } );
}
/**
@@ -105,4 +149,4 @@
mw.thanks = $.extend( {}, mw.thanks || {}, {
_mobileDiffInit: init
} );
-}( mediaWiki, jQuery ) );
+}() );
diff --git a/Thanks/modules/ext.thanks.thank.js b/Thanks/modules/ext.thanks.thank.js
index 2a0deb58..ca5c46dd 100644
--- a/Thanks/modules/ext.thanks.thank.js
+++ b/Thanks/modules/ext.thanks.thank.js
@@ -1,4 +1,4 @@
-( function ( $, mw ) {
+( function () {
'use strict';
mw.thanks = {
@@ -9,7 +9,7 @@
attrName: 'data-revision-id',
load: function () {
- var cookie = $.cookie( this.cookieName );
+ var cookie = mw.cookie.get( this.cookieName );
if ( cookie === null ) {
return [];
}
@@ -22,16 +22,11 @@
if ( saved.length > this.maxHistory ) { // prevent forever growing
saved = saved.slice( saved.length - this.maxHistory );
}
- $.cookie( this.cookieName, escape( saved.join( ',' ) ) );
+ mw.cookie.set( this.cookieName, escape( saved.join( ',' ) ) );
},
contains: function ( $thankLink ) {
- // $.inArray returns the index position or -1 if non-existant
- if ( $.inArray( $thankLink.attr( this.attrName ), this.load() ) !== -1 ) {
- return true;
- } else {
- return false;
- }
+ return this.load().indexOf( $thankLink.attr( this.attrName ) ) !== -1;
}
},
@@ -62,4 +57,4 @@
}
};
-}( jQuery, mediaWiki ) );
+}() );
diff --git a/Thanks/modules/jquery.findWithParent.js b/Thanks/modules/jquery.findWithParent.js
index 79c09c71..c8ec6001 100644
--- a/Thanks/modules/jquery.findWithParent.js
+++ b/Thanks/modules/jquery.findWithParent.js
@@ -1,8 +1,8 @@
-( function ( $ ) {
+( function () {
/** @class jQuery */
/**
- * Gives support to find parent elements using .closest with less-than selector syntax.
+ * Adds support to find parent elements using .closest with less-than selector syntax.
*
* $.findWithParent( $div, "< html div < body" ); // find closest parent of $div "html", find child "div" of it, find closest parent "body" of that, return "body"
* $( '#foo' ).findWithParent( '.bar < .baz' ); // find child ".bar" of "#foo", return closest parent ".baz" from there
@@ -16,16 +16,16 @@
var matches;
$context = $( $context );
- selector = $.trim( selector );
+ selector = selector.trim();
while ( selector && ( matches = selector.match( /(.*?(?:^|[>\s+~]))(<\s*[^>\s+~]+)(.*?)$/ ) ) ) {
- if ( $.trim( matches[ 1 ] ) ) {
+ if ( matches[ 1 ].trim() ) {
$context = $context.find( matches[ 1 ] );
}
- if ( $.trim( matches[ 2 ] ) ) {
+ if ( matches[ 2 ].trim() ) {
$context = $context.closest( matches[ 2 ].substr( 1 ) );
}
- selector = $.trim( matches[ 3 ] );
+ selector = matches[ 3 ].trim();
}
if ( selector ) {
@@ -41,17 +41,17 @@
/**
* @param {string} selector
* @return {jQuery}
- * See {@link jQuery#findWithParent}
+ * @see jQuery#findWithParent
*/
$.fn.findWithParent = function ( selector ) {
var selectors = selector.split( ',' ),
$elements = $(),
self = this;
- $.each( selectors, function ( i, selector ) {
+ selectors.forEach( function ( selector ) {
$elements = $elements.add( jQueryFindWithParent( self, selector ) );
} );
return $elements;
};
-}( jQuery ) );
+}() );
diff --git a/Thanks/package-lock.json b/Thanks/package-lock.json
new file mode 100644
index 00000000..6d04d111
--- /dev/null
+++ b/Thanks/package-lock.json
@@ -0,0 +1,2999 @@
+{
+ "requires": true,
+ "lockfileVersion": 1,
+ "dependencies": {
+ "@babel/code-frame": {
+ "version": "7.10.4",
+ "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.4.tgz",
+ "integrity": "sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg==",
+ "dev": true,
+ "requires": {
+ "@babel/highlight": "^7.10.4"
+ }
+ },
+ "@babel/helper-validator-identifier": {
+ "version": "7.10.4",
+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz",
+ "integrity": "sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw==",
+ "dev": true
+ },
+ "@babel/highlight": {
+ "version": "7.10.4",
+ "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz",
+ "integrity": "sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA==",
+ "dev": true,
+ "requires": {
+ "@babel/helper-validator-identifier": "^7.10.4",
+ "chalk": "^2.0.0",
+ "js-tokens": "^4.0.0"
+ },
+ "dependencies": {
+ "chalk": {
+ "version": "2.4.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^3.2.1",
+ "escape-string-regexp": "^1.0.5",
+ "supports-color": "^5.3.0"
+ }
+ }
+ }
+ },
+ "@types/color-name": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz",
+ "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==",
+ "dev": true
+ },
+ "abbrev": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
+ "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==",
+ "dev": true
+ },
+ "acorn": {
+ "version": "7.3.1",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.3.1.tgz",
+ "integrity": "sha512-tLc0wSnatxAQHVHUapaHdz72pi9KUyHjq5KyHjGg9Y8Ifdc79pTh2XvI6I1/chZbnM7QtNKzh66ooDogPZSleA==",
+ "dev": true
+ },
+ "acorn-jsx": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.2.0.tgz",
+ "integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==",
+ "dev": true
+ },
+ "ajv": {
+ "version": "6.12.3",
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.3.tgz",
+ "integrity": "sha512-4K0cK3L1hsqk9xIb2z9vs/XU+PGJZ9PNpJRDS9YLzmNdX6jmVPfamLvTJr0aDAusnHyCHO6MjzlkAsgtqp9teA==",
+ "dev": true,
+ "requires": {
+ "fast-deep-equal": "^3.1.1",
+ "fast-json-stable-stringify": "^2.0.0",
+ "json-schema-traverse": "^0.4.1",
+ "uri-js": "^4.2.2"
+ }
+ },
+ "ansi-colors": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz",
+ "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==",
+ "dev": true
+ },
+ "ansi-regex": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz",
+ "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==",
+ "dev": true
+ },
+ "ansi-styles": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
+ "dev": true,
+ "requires": {
+ "color-convert": "^1.9.0"
+ }
+ },
+ "argparse": {
+ "version": "1.0.10",
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
+ "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
+ "dev": true,
+ "requires": {
+ "sprintf-js": "~1.0.2"
+ }
+ },
+ "arr-diff": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz",
+ "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=",
+ "dev": true
+ },
+ "arr-flatten": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz",
+ "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==",
+ "dev": true
+ },
+ "arr-union": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz",
+ "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=",
+ "dev": true
+ },
+ "array-each": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz",
+ "integrity": "sha1-p5SvDAWrF1KEbudTofIRoFugxE8=",
+ "dev": true
+ },
+ "array-slice": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz",
+ "integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==",
+ "dev": true
+ },
+ "array-unique": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz",
+ "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=",
+ "dev": true
+ },
+ "assign-symbols": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz",
+ "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=",
+ "dev": true
+ },
+ "astral-regex": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz",
+ "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==",
+ "dev": true
+ },
+ "async": {
+ "version": "1.5.2",
+ "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz",
+ "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=",
+ "dev": true
+ },
+ "atob": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz",
+ "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==",
+ "dev": true
+ },
+ "balanced-match": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
+ "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
+ "dev": true
+ },
+ "base": {
+ "version": "0.11.2",
+ "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz",
+ "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==",
+ "dev": true,
+ "requires": {
+ "cache-base": "^1.0.1",
+ "class-utils": "^0.3.5",
+ "component-emitter": "^1.2.1",
+ "define-property": "^1.0.0",
+ "isobject": "^3.0.1",
+ "mixin-deep": "^1.2.0",
+ "pascalcase": "^0.1.1"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
+ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
+ "dev": true,
+ "requires": {
+ "is-descriptor": "^1.0.0"
+ }
+ },
+ "is-accessor-descriptor": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
+ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^6.0.0"
+ }
+ },
+ "is-data-descriptor": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
+ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^6.0.0"
+ }
+ },
+ "is-descriptor": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
+ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
+ "dev": true,
+ "requires": {
+ "is-accessor-descriptor": "^1.0.0",
+ "is-data-descriptor": "^1.0.0",
+ "kind-of": "^6.0.2"
+ }
+ }
+ }
+ },
+ "body": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/body/-/body-5.1.0.tgz",
+ "integrity": "sha1-5LoM5BCkaTYyM2dgnstOZVMSUGk=",
+ "dev": true,
+ "requires": {
+ "continuable-cache": "^0.3.1",
+ "error": "^7.0.0",
+ "raw-body": "~1.1.0",
+ "safe-json-parse": "~1.0.1"
+ }
+ },
+ "brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "dev": true,
+ "requires": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "braces": {
+ "version": "2.3.2",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz",
+ "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==",
+ "dev": true,
+ "requires": {
+ "arr-flatten": "^1.1.0",
+ "array-unique": "^0.3.2",
+ "extend-shallow": "^2.0.1",
+ "fill-range": "^4.0.0",
+ "isobject": "^3.0.1",
+ "repeat-element": "^1.1.2",
+ "snapdragon": "^0.8.1",
+ "snapdragon-node": "^2.0.1",
+ "split-string": "^3.0.2",
+ "to-regex": "^3.0.1"
+ },
+ "dependencies": {
+ "extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "dev": true,
+ "requires": {
+ "is-extendable": "^0.1.0"
+ }
+ }
+ }
+ },
+ "bytes": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/bytes/-/bytes-1.0.0.tgz",
+ "integrity": "sha1-NWnt6Lo0MV+rmcPpLLBMciDeH6g=",
+ "dev": true
+ },
+ "cache-base": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz",
+ "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==",
+ "dev": true,
+ "requires": {
+ "collection-visit": "^1.0.0",
+ "component-emitter": "^1.2.1",
+ "get-value": "^2.0.6",
+ "has-value": "^1.0.0",
+ "isobject": "^3.0.1",
+ "set-value": "^2.0.0",
+ "to-object-path": "^0.3.0",
+ "union-value": "^1.0.0",
+ "unset-value": "^1.0.0"
+ }
+ },
+ "callsites": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
+ "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
+ "dev": true
+ },
+ "chalk": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
+ "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "dependencies": {
+ "ansi-styles": {
+ "version": "4.2.1",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz",
+ "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==",
+ "dev": true,
+ "requires": {
+ "@types/color-name": "^1.1.1",
+ "color-convert": "^2.0.1"
+ }
+ },
+ "color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "requires": {
+ "color-name": "~1.1.4"
+ }
+ },
+ "color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true
+ },
+ "supports-color": {
+ "version": "7.1.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz",
+ "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==",
+ "dev": true,
+ "requires": {
+ "has-flag": "^4.0.0"
+ }
+ }
+ }
+ },
+ "class-utils": {
+ "version": "0.3.6",
+ "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz",
+ "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==",
+ "dev": true,
+ "requires": {
+ "arr-union": "^3.1.0",
+ "define-property": "^0.2.5",
+ "isobject": "^3.0.0",
+ "static-extend": "^0.1.1"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
+ "dev": true,
+ "requires": {
+ "is-descriptor": "^0.1.0"
+ }
+ }
+ }
+ },
+ "collection-visit": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz",
+ "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=",
+ "dev": true,
+ "requires": {
+ "map-visit": "^1.0.0",
+ "object-visit": "^1.0.0"
+ }
+ },
+ "color-convert": {
+ "version": "1.9.3",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
+ "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
+ "dev": true,
+ "requires": {
+ "color-name": "1.1.3"
+ }
+ },
+ "color-name": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
+ "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
+ "dev": true
+ },
+ "colors": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz",
+ "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=",
+ "dev": true
+ },
+ "comment-parser": {
+ "version": "0.7.5",
+ "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-0.7.5.tgz",
+ "integrity": "sha512-iH9YA35ccw94nx5244GVkpyC9eVTsL71jZz6iz5w6RIf79JLF2AsXHXq9p6Oaohyl3sx5qSMnGsWUDFIAfWL4w==",
+ "dev": true
+ },
+ "component-emitter": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz",
+ "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==",
+ "dev": true
+ },
+ "concat-map": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
+ "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
+ "dev": true
+ },
+ "continuable-cache": {
+ "version": "0.3.1",
+ "resolved": "https://registry.npmjs.org/continuable-cache/-/continuable-cache-0.3.1.tgz",
+ "integrity": "sha1-vXJ6f67XfnH/OYWskzUakSczrQ8=",
+ "dev": true
+ },
+ "copy-descriptor": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz",
+ "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=",
+ "dev": true
+ },
+ "cross-spawn": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
+ "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
+ "dev": true,
+ "requires": {
+ "path-key": "^3.1.0",
+ "shebang-command": "^2.0.0",
+ "which": "^2.0.1"
+ }
+ },
+ "dateformat": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-3.0.3.tgz",
+ "integrity": "sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q==",
+ "dev": true
+ },
+ "debug": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
+ "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
+ "dev": true,
+ "requires": {
+ "ms": "^2.1.1"
+ }
+ },
+ "decode-uri-component": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz",
+ "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=",
+ "dev": true
+ },
+ "deep-is": {
+ "version": "0.1.3",
+ "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
+ "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
+ "dev": true
+ },
+ "define-property": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz",
+ "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==",
+ "dev": true,
+ "requires": {
+ "is-descriptor": "^1.0.2",
+ "isobject": "^3.0.1"
+ },
+ "dependencies": {
+ "is-accessor-descriptor": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
+ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^6.0.0"
+ }
+ },
+ "is-data-descriptor": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
+ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^6.0.0"
+ }
+ },
+ "is-descriptor": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
+ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
+ "dev": true,
+ "requires": {
+ "is-accessor-descriptor": "^1.0.0",
+ "is-data-descriptor": "^1.0.0",
+ "kind-of": "^6.0.2"
+ }
+ }
+ }
+ },
+ "detect-file": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz",
+ "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=",
+ "dev": true
+ },
+ "doctrine": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
+ "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
+ "dev": true,
+ "requires": {
+ "esutils": "^2.0.2"
+ }
+ },
+ "emoji-regex": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
+ "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
+ "dev": true
+ },
+ "enquirer": {
+ "version": "2.3.6",
+ "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz",
+ "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==",
+ "dev": true,
+ "requires": {
+ "ansi-colors": "^4.1.1"
+ }
+ },
+ "error": {
+ "version": "7.0.2",
+ "resolved": "https://registry.npmjs.org/error/-/error-7.0.2.tgz",
+ "integrity": "sha1-pfdf/02ZJhJt2sDqXcOOaJFTywI=",
+ "dev": true,
+ "requires": {
+ "string-template": "~0.2.1",
+ "xtend": "~4.0.0"
+ }
+ },
+ "escape-string-regexp": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
+ "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
+ "dev": true
+ },
+ "eslint": {
+ "version": "7.4.0",
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.4.0.tgz",
+ "integrity": "sha512-gU+lxhlPHu45H3JkEGgYhWhkR9wLHHEXC9FbWFnTlEkbKyZKWgWRLgf61E8zWmBuI6g5xKBph9ltg3NtZMVF8g==",
+ "dev": true,
+ "requires": {
+ "@babel/code-frame": "^7.0.0",
+ "ajv": "^6.10.0",
+ "chalk": "^4.0.0",
+ "cross-spawn": "^7.0.2",
+ "debug": "^4.0.1",
+ "doctrine": "^3.0.0",
+ "enquirer": "^2.3.5",
+ "eslint-scope": "^5.1.0",
+ "eslint-utils": "^2.0.0",
+ "eslint-visitor-keys": "^1.2.0",
+ "espree": "^7.1.0",
+ "esquery": "^1.2.0",
+ "esutils": "^2.0.2",
+ "file-entry-cache": "^5.0.1",
+ "functional-red-black-tree": "^1.0.1",
+ "glob-parent": "^5.0.0",
+ "globals": "^12.1.0",
+ "ignore": "^4.0.6",
+ "import-fresh": "^3.0.0",
+ "imurmurhash": "^0.1.4",
+ "is-glob": "^4.0.0",
+ "js-yaml": "^3.13.1",
+ "json-stable-stringify-without-jsonify": "^1.0.1",
+ "levn": "^0.4.1",
+ "lodash": "^4.17.14",
+ "minimatch": "^3.0.4",
+ "natural-compare": "^1.4.0",
+ "optionator": "^0.9.1",
+ "progress": "^2.0.0",
+ "regexpp": "^3.1.0",
+ "semver": "^7.2.1",
+ "strip-ansi": "^6.0.0",
+ "strip-json-comments": "^3.1.0",
+ "table": "^5.2.3",
+ "text-table": "^0.2.0",
+ "v8-compile-cache": "^2.0.3"
+ }
+ },
+ "eslint-config-wikimedia": {
+ "version": "0.16.2",
+ "resolved": "https://registry.npmjs.org/eslint-config-wikimedia/-/eslint-config-wikimedia-0.16.2.tgz",
+ "integrity": "sha512-tQikCZT2k3z9UzvRDFAUOpVSwE/MEmKIUQQraFh9tgyPOmRY6fVkMONcFqdEuz8eyg2syW9MNvT2d1SGSMLfBg==",
+ "dev": true,
+ "requires": {
+ "eslint": "^7.2.0",
+ "eslint-plugin-es": "^3.0.1",
+ "eslint-plugin-jsdoc": "^27.1.2",
+ "eslint-plugin-json": "^2.1.1",
+ "eslint-plugin-mediawiki": "^0.2.5",
+ "eslint-plugin-mocha": "^7.0.1",
+ "eslint-plugin-no-jquery": "^2.4.1",
+ "eslint-plugin-node": "^11.1.0",
+ "eslint-plugin-qunit": "^4.2.0",
+ "eslint-plugin-vue": "^6.2.2",
+ "eslint-plugin-wdio": "^6.0.12"
+ }
+ },
+ "eslint-plugin-es": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz",
+ "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==",
+ "dev": true,
+ "requires": {
+ "eslint-utils": "^2.0.0",
+ "regexpp": "^3.0.0"
+ }
+ },
+ "eslint-plugin-jsdoc": {
+ "version": "27.1.2",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-27.1.2.tgz",
+ "integrity": "sha512-iWrG2ZK4xrxamoMkoyzgkukdmfqWc5Ncd6K+CnwRgxrbwjQQpzmt5Kl8GB0l12R0oUK2AF+9tGFJKNGzuyz79Q==",
+ "dev": true,
+ "requires": {
+ "comment-parser": "^0.7.5",
+ "debug": "^4.1.1",
+ "jsdoctypeparser": "^6.1.0",
+ "lodash": "^4.17.15",
+ "regextras": "^0.7.1",
+ "semver": "^6.3.0",
+ "spdx-expression-parse": "^3.0.1"
+ },
+ "dependencies": {
+ "lodash": {
+ "version": "4.17.19",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz",
+ "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==",
+ "dev": true
+ },
+ "semver": {
+ "version": "6.3.0",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
+ "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+ "dev": true
+ }
+ }
+ },
+ "eslint-plugin-json": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-json/-/eslint-plugin-json-2.1.1.tgz",
+ "integrity": "sha512-Ktsab8ij33V2KFLhh4alC1FYztdmbV32DeMZYYUCZm4kKLW1s4DrleKKgtbAHSJsmshCK5QGOZtfyc2r3jCRsg==",
+ "dev": true,
+ "requires": {
+ "lodash": "^4.17.15",
+ "vscode-json-languageservice": "^3.5.1"
+ },
+ "dependencies": {
+ "lodash": {
+ "version": "4.17.19",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz",
+ "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==",
+ "dev": true
+ }
+ }
+ },
+ "eslint-plugin-mediawiki": {
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-mediawiki/-/eslint-plugin-mediawiki-0.2.5.tgz",
+ "integrity": "sha512-Xs5G4f1EnS6+9gFWkk28nWA9xcOEPx7YZEGsMYGLelZRAF+2DmV/PigF5N5VqoOkNBpwcbXqLD8wLfkg29aF8w==",
+ "dev": true,
+ "requires": {
+ "eslint-plugin-vue": "^6.2.2",
+ "upath": "^1.2.0"
+ }
+ },
+ "eslint-plugin-mocha": {
+ "version": "7.0.1",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-mocha/-/eslint-plugin-mocha-7.0.1.tgz",
+ "integrity": "sha512-zkQRW9UigRaayGm/pK9TD5RjccKXSgQksNtpsXbG9b6L5I+jNx7m98VUbZ4w1H1ArlNA+K7IOH+z8TscN6sOYg==",
+ "dev": true,
+ "requires": {
+ "eslint-utils": "^2.0.0",
+ "ramda": "^0.27.0"
+ }
+ },
+ "eslint-plugin-no-jquery": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-no-jquery/-/eslint-plugin-no-jquery-2.5.0.tgz",
+ "integrity": "sha512-RrQ380mUJJKdjgpQ/tZAJ3B3W1n3LbVmULooS2Pv5pUDcc5uVHVSJMTdUlsbvQyfo6hWP2LJ4FbOoDzENWcF7A==",
+ "dev": true
+ },
+ "eslint-plugin-node": {
+ "version": "11.1.0",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz",
+ "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==",
+ "dev": true,
+ "requires": {
+ "eslint-plugin-es": "^3.0.0",
+ "eslint-utils": "^2.0.0",
+ "ignore": "^5.1.1",
+ "minimatch": "^3.0.4",
+ "resolve": "^1.10.1",
+ "semver": "^6.1.0"
+ },
+ "dependencies": {
+ "ignore": {
+ "version": "5.1.8",
+ "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz",
+ "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==",
+ "dev": true
+ },
+ "semver": {
+ "version": "6.3.0",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
+ "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
+ "dev": true
+ }
+ }
+ },
+ "eslint-plugin-qunit": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-qunit/-/eslint-plugin-qunit-4.2.0.tgz",
+ "integrity": "sha512-UibPK0fSshPTJauyitsHjACixpf+I5BEKqXi6WJ/WGhW31WwP7flSdBW8+Y9B46v05KYH6MJg/uZVIaiaHO5Cg==",
+ "dev": true
+ },
+ "eslint-plugin-vue": {
+ "version": "6.2.2",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-6.2.2.tgz",
+ "integrity": "sha512-Nhc+oVAHm0uz/PkJAWscwIT4ijTrK5fqNqz9QB1D35SbbuMG1uB6Yr5AJpvPSWg+WOw7nYNswerYh0kOk64gqQ==",
+ "dev": true,
+ "requires": {
+ "natural-compare": "^1.4.0",
+ "semver": "^5.6.0",
+ "vue-eslint-parser": "^7.0.0"
+ },
+ "dependencies": {
+ "semver": {
+ "version": "5.7.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
+ "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
+ "dev": true
+ }
+ }
+ },
+ "eslint-plugin-wdio": {
+ "version": "6.0.12",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-wdio/-/eslint-plugin-wdio-6.0.12.tgz",
+ "integrity": "sha512-qZqcU1Z0bqrqhYM1MbwIvKQxcQEGIOEclOjcveavvLZAN4ezpXb1Ogw3xu+UK13iArregJOMI6uUt+JkFmER1A==",
+ "dev": true
+ },
+ "eslint-scope": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.0.tgz",
+ "integrity": "sha512-iiGRvtxWqgtx5m8EyQUJihBloE4EnYeGE/bz1wSPwJE6tZuJUtHlhqDM4Xj2ukE8Dyy1+HCZ4hE0fzIVMzb58w==",
+ "dev": true,
+ "requires": {
+ "esrecurse": "^4.1.0",
+ "estraverse": "^4.1.1"
+ }
+ },
+ "eslint-utils": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz",
+ "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==",
+ "dev": true,
+ "requires": {
+ "eslint-visitor-keys": "^1.1.0"
+ }
+ },
+ "eslint-visitor-keys": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz",
+ "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==",
+ "dev": true
+ },
+ "espree": {
+ "version": "7.1.0",
+ "resolved": "https://registry.npmjs.org/espree/-/espree-7.1.0.tgz",
+ "integrity": "sha512-dcorZSyfmm4WTuTnE5Y7MEN1DyoPYy1ZR783QW1FJoenn7RailyWFsq/UL6ZAAA7uXurN9FIpYyUs3OfiIW+Qw==",
+ "dev": true,
+ "requires": {
+ "acorn": "^7.2.0",
+ "acorn-jsx": "^5.2.0",
+ "eslint-visitor-keys": "^1.2.0"
+ }
+ },
+ "esprima": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
+ "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
+ "dev": true
+ },
+ "esquery": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.3.1.tgz",
+ "integrity": "sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==",
+ "dev": true,
+ "requires": {
+ "estraverse": "^5.1.0"
+ },
+ "dependencies": {
+ "estraverse": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.1.0.tgz",
+ "integrity": "sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw==",
+ "dev": true
+ }
+ }
+ },
+ "esrecurse": {
+ "version": "4.2.1",
+ "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz",
+ "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==",
+ "dev": true,
+ "requires": {
+ "estraverse": "^4.1.0"
+ }
+ },
+ "estraverse": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
+ "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
+ "dev": true
+ },
+ "esutils": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
+ "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
+ "dev": true
+ },
+ "eventemitter2": {
+ "version": "0.4.14",
+ "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz",
+ "integrity": "sha1-j2G3XN4BKy6esoTUVFWDtWQ7Yas=",
+ "dev": true
+ },
+ "exit": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz",
+ "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=",
+ "dev": true
+ },
+ "expand-brackets": {
+ "version": "2.1.4",
+ "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz",
+ "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=",
+ "dev": true,
+ "requires": {
+ "debug": "^2.3.3",
+ "define-property": "^0.2.5",
+ "extend-shallow": "^2.0.1",
+ "posix-character-classes": "^0.1.0",
+ "regex-not": "^1.0.0",
+ "snapdragon": "^0.8.1",
+ "to-regex": "^3.0.1"
+ },
+ "dependencies": {
+ "debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "dev": true,
+ "requires": {
+ "ms": "2.0.0"
+ }
+ },
+ "define-property": {
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
+ "dev": true,
+ "requires": {
+ "is-descriptor": "^0.1.0"
+ }
+ },
+ "extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "dev": true,
+ "requires": {
+ "is-extendable": "^0.1.0"
+ }
+ },
+ "ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
+ "dev": true
+ }
+ }
+ },
+ "expand-tilde": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz",
+ "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=",
+ "dev": true,
+ "requires": {
+ "homedir-polyfill": "^1.0.1"
+ }
+ },
+ "extend": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
+ "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==",
+ "dev": true
+ },
+ "extend-shallow": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz",
+ "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=",
+ "dev": true,
+ "requires": {
+ "assign-symbols": "^1.0.0",
+ "is-extendable": "^1.0.1"
+ },
+ "dependencies": {
+ "is-extendable": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
+ "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
+ "dev": true,
+ "requires": {
+ "is-plain-object": "^2.0.4"
+ }
+ }
+ }
+ },
+ "extglob": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz",
+ "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==",
+ "dev": true,
+ "requires": {
+ "array-unique": "^0.3.2",
+ "define-property": "^1.0.0",
+ "expand-brackets": "^2.1.4",
+ "extend-shallow": "^2.0.1",
+ "fragment-cache": "^0.2.1",
+ "regex-not": "^1.0.0",
+ "snapdragon": "^0.8.1",
+ "to-regex": "^3.0.1"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
+ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
+ "dev": true,
+ "requires": {
+ "is-descriptor": "^1.0.0"
+ }
+ },
+ "extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "dev": true,
+ "requires": {
+ "is-extendable": "^0.1.0"
+ }
+ },
+ "is-accessor-descriptor": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
+ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^6.0.0"
+ }
+ },
+ "is-data-descriptor": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
+ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^6.0.0"
+ }
+ },
+ "is-descriptor": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
+ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
+ "dev": true,
+ "requires": {
+ "is-accessor-descriptor": "^1.0.0",
+ "is-data-descriptor": "^1.0.0",
+ "kind-of": "^6.0.2"
+ }
+ }
+ }
+ },
+ "fast-deep-equal": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
+ "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
+ "dev": true
+ },
+ "fast-json-stable-stringify": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
+ "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
+ "dev": true
+ },
+ "fast-levenshtein": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
+ "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
+ "dev": true
+ },
+ "faye-websocket": {
+ "version": "0.10.0",
+ "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz",
+ "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=",
+ "dev": true,
+ "requires": {
+ "websocket-driver": ">=0.5.1"
+ }
+ },
+ "file-entry-cache": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz",
+ "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==",
+ "dev": true,
+ "requires": {
+ "flat-cache": "^2.0.1"
+ }
+ },
+ "fill-range": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz",
+ "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=",
+ "dev": true,
+ "requires": {
+ "extend-shallow": "^2.0.1",
+ "is-number": "^3.0.0",
+ "repeat-string": "^1.6.1",
+ "to-regex-range": "^2.1.0"
+ },
+ "dependencies": {
+ "extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "dev": true,
+ "requires": {
+ "is-extendable": "^0.1.0"
+ }
+ }
+ }
+ },
+ "findup-sync": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.3.0.tgz",
+ "integrity": "sha1-N5MKpdgWt3fANEXhlmzGeQpMCxY=",
+ "dev": true,
+ "requires": {
+ "glob": "~5.0.0"
+ },
+ "dependencies": {
+ "glob": {
+ "version": "5.0.15",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz",
+ "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=",
+ "dev": true,
+ "requires": {
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "2 || 3",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
+ }
+ }
+ }
+ },
+ "fined": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/fined/-/fined-1.2.0.tgz",
+ "integrity": "sha512-ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng==",
+ "dev": true,
+ "requires": {
+ "expand-tilde": "^2.0.2",
+ "is-plain-object": "^2.0.3",
+ "object.defaults": "^1.1.0",
+ "object.pick": "^1.2.0",
+ "parse-filepath": "^1.0.1"
+ }
+ },
+ "flagged-respawn": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.1.tgz",
+ "integrity": "sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q==",
+ "dev": true
+ },
+ "flat-cache": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz",
+ "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==",
+ "dev": true,
+ "requires": {
+ "flatted": "^2.0.0",
+ "rimraf": "2.6.3",
+ "write": "1.0.3"
+ }
+ },
+ "flatted": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz",
+ "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==",
+ "dev": true
+ },
+ "for-in": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz",
+ "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=",
+ "dev": true
+ },
+ "for-own": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz",
+ "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=",
+ "dev": true,
+ "requires": {
+ "for-in": "^1.0.1"
+ }
+ },
+ "fragment-cache": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz",
+ "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=",
+ "dev": true,
+ "requires": {
+ "map-cache": "^0.2.2"
+ }
+ },
+ "fs.realpath": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
+ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
+ "dev": true
+ },
+ "functional-red-black-tree": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
+ "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=",
+ "dev": true
+ },
+ "gaze": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz",
+ "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==",
+ "dev": true,
+ "requires": {
+ "globule": "^1.0.0"
+ }
+ },
+ "get-value": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz",
+ "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=",
+ "dev": true
+ },
+ "getobject": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/getobject/-/getobject-0.1.0.tgz",
+ "integrity": "sha1-BHpEl4n6Fg0Bj1SG7ZEyC27HiFw=",
+ "dev": true
+ },
+ "glob": {
+ "version": "7.1.4",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz",
+ "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==",
+ "dev": true,
+ "requires": {
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.0.4",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
+ }
+ },
+ "glob-parent": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz",
+ "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==",
+ "dev": true,
+ "requires": {
+ "is-glob": "^4.0.1"
+ }
+ },
+ "global-modules": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz",
+ "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==",
+ "dev": true,
+ "requires": {
+ "global-prefix": "^1.0.1",
+ "is-windows": "^1.0.1",
+ "resolve-dir": "^1.0.0"
+ }
+ },
+ "global-prefix": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz",
+ "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=",
+ "dev": true,
+ "requires": {
+ "expand-tilde": "^2.0.2",
+ "homedir-polyfill": "^1.0.1",
+ "ini": "^1.3.4",
+ "is-windows": "^1.0.1",
+ "which": "^1.2.14"
+ },
+ "dependencies": {
+ "which": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
+ "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
+ "dev": true,
+ "requires": {
+ "isexe": "^2.0.0"
+ }
+ }
+ }
+ },
+ "globals": {
+ "version": "12.4.0",
+ "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz",
+ "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==",
+ "dev": true,
+ "requires": {
+ "type-fest": "^0.8.1"
+ }
+ },
+ "globule": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/globule/-/globule-1.2.1.tgz",
+ "integrity": "sha512-g7QtgWF4uYSL5/dn71WxubOrS7JVGCnFPEnoeChJmBnyR9Mw8nGoEwOgJL/RC2Te0WhbsEUCejfH8SZNJ+adYQ==",
+ "dev": true,
+ "requires": {
+ "glob": "~7.1.1",
+ "lodash": "~4.17.10",
+ "minimatch": "~3.0.2"
+ }
+ },
+ "grunt": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/grunt/-/grunt-1.2.1.tgz",
+ "integrity": "sha512-zgJjn9N56tScvRt/y0+1QA+zDBnKTrkpyeSBqQPLcZvbqTD/oyGMrdZQXmm6I3828s+FmPvxc3Xv+lgKFtudOw==",
+ "dev": true,
+ "requires": {
+ "dateformat": "~3.0.3",
+ "eventemitter2": "~0.4.13",
+ "exit": "~0.1.2",
+ "findup-sync": "~0.3.0",
+ "glob": "~7.1.6",
+ "grunt-cli": "~1.3.2",
+ "grunt-known-options": "~1.1.0",
+ "grunt-legacy-log": "~2.0.0",
+ "grunt-legacy-util": "~1.1.1",
+ "iconv-lite": "~0.4.13",
+ "js-yaml": "~3.14.0",
+ "minimatch": "~3.0.4",
+ "mkdirp": "~1.0.4",
+ "nopt": "~3.0.6",
+ "rimraf": "~3.0.2"
+ },
+ "dependencies": {
+ "glob": {
+ "version": "7.1.6",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
+ "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
+ "dev": true,
+ "requires": {
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.0.4",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
+ }
+ },
+ "grunt-cli": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.3.2.tgz",
+ "integrity": "sha512-8OHDiZZkcptxVXtMfDxJvmN7MVJNE8L/yIcPb4HB7TlyFD1kDvjHrb62uhySsU14wJx9ORMnTuhRMQ40lH/orQ==",
+ "dev": true,
+ "requires": {
+ "grunt-known-options": "~1.1.0",
+ "interpret": "~1.1.0",
+ "liftoff": "~2.5.0",
+ "nopt": "~4.0.1",
+ "v8flags": "~3.1.1"
+ },
+ "dependencies": {
+ "nopt": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.3.tgz",
+ "integrity": "sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg==",
+ "dev": true,
+ "requires": {
+ "abbrev": "1",
+ "osenv": "^0.1.4"
+ }
+ }
+ }
+ },
+ "mkdirp": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
+ "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
+ "dev": true
+ },
+ "rimraf": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
+ "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
+ "dev": true,
+ "requires": {
+ "glob": "^7.1.3"
+ }
+ }
+ }
+ },
+ "grunt-banana-checker": {
+ "version": "0.9.0",
+ "resolved": "https://registry.npmjs.org/grunt-banana-checker/-/grunt-banana-checker-0.9.0.tgz",
+ "integrity": "sha512-SqPiB6OazWqR8USL0NymtuT5Br3mD9WBBsM1rHC/3wIi2SrZNM6/+j9CIeuEM5oCn+AtO2Y0+rzzFyOdC9afAg==",
+ "dev": true
+ },
+ "grunt-contrib-watch": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/grunt-contrib-watch/-/grunt-contrib-watch-1.1.0.tgz",
+ "integrity": "sha512-yGweN+0DW5yM+oo58fRu/XIRrPcn3r4tQx+nL7eMRwjpvk+rQY6R8o94BPK0i2UhTg9FN21hS+m8vR8v9vXfeg==",
+ "dev": true,
+ "requires": {
+ "async": "^2.6.0",
+ "gaze": "^1.1.0",
+ "lodash": "^4.17.10",
+ "tiny-lr": "^1.1.1"
+ },
+ "dependencies": {
+ "async": {
+ "version": "2.6.2",
+ "resolved": "https://registry.npmjs.org/async/-/async-2.6.2.tgz",
+ "integrity": "sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==",
+ "dev": true,
+ "requires": {
+ "lodash": "^4.17.11"
+ }
+ },
+ "lodash": {
+ "version": "4.17.19",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz",
+ "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==",
+ "dev": true
+ }
+ }
+ },
+ "grunt-eslint": {
+ "version": "23.0.0",
+ "resolved": "https://registry.npmjs.org/grunt-eslint/-/grunt-eslint-23.0.0.tgz",
+ "integrity": "sha512-QqHSAiGF08EVD7YlD4OSRWuLRaDvpsRdTptwy9WaxUXE+03mCLVA/lEaR6SHWehF7oUwIqCEjaNONeeeWlB4LQ==",
+ "dev": true,
+ "requires": {
+ "chalk": "^4.0.0",
+ "eslint": "^7.0.0"
+ }
+ },
+ "grunt-known-options": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/grunt-known-options/-/grunt-known-options-1.1.1.tgz",
+ "integrity": "sha512-cHwsLqoighpu7TuYj5RonnEuxGVFnztcUqTqp5rXFGYL4OuPFofwC4Ycg7n9fYwvK6F5WbYgeVOwph9Crs2fsQ==",
+ "dev": true
+ },
+ "grunt-legacy-log": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/grunt-legacy-log/-/grunt-legacy-log-2.0.0.tgz",
+ "integrity": "sha512-1m3+5QvDYfR1ltr8hjiaiNjddxGdQWcH0rw1iKKiQnF0+xtgTazirSTGu68RchPyh1OBng1bBUjLmX8q9NpoCw==",
+ "dev": true,
+ "requires": {
+ "colors": "~1.1.2",
+ "grunt-legacy-log-utils": "~2.0.0",
+ "hooker": "~0.2.3",
+ "lodash": "~4.17.5"
+ }
+ },
+ "grunt-legacy-log-utils": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/grunt-legacy-log-utils/-/grunt-legacy-log-utils-2.0.1.tgz",
+ "integrity": "sha512-o7uHyO/J+i2tXG8r2bZNlVk20vlIFJ9IEYyHMCQGfWYru8Jv3wTqKZzvV30YW9rWEjq0eP3cflQ1qWojIe9VFA==",
+ "dev": true,
+ "requires": {
+ "chalk": "~2.4.1",
+ "lodash": "~4.17.10"
+ },
+ "dependencies": {
+ "chalk": {
+ "version": "2.4.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^3.2.1",
+ "escape-string-regexp": "^1.0.5",
+ "supports-color": "^5.3.0"
+ }
+ }
+ }
+ },
+ "grunt-legacy-util": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/grunt-legacy-util/-/grunt-legacy-util-1.1.1.tgz",
+ "integrity": "sha512-9zyA29w/fBe6BIfjGENndwoe1Uy31BIXxTH3s8mga0Z5Bz2Sp4UCjkeyv2tI449ymkx3x26B+46FV4fXEddl5A==",
+ "dev": true,
+ "requires": {
+ "async": "~1.5.2",
+ "exit": "~0.1.1",
+ "getobject": "~0.1.0",
+ "hooker": "~0.2.3",
+ "lodash": "~4.17.10",
+ "underscore.string": "~3.3.4",
+ "which": "~1.3.0"
+ },
+ "dependencies": {
+ "which": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
+ "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
+ "dev": true,
+ "requires": {
+ "isexe": "^2.0.0"
+ }
+ }
+ }
+ },
+ "has-flag": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
+ "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
+ "dev": true
+ },
+ "has-value": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz",
+ "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=",
+ "dev": true,
+ "requires": {
+ "get-value": "^2.0.6",
+ "has-values": "^1.0.0",
+ "isobject": "^3.0.0"
+ }
+ },
+ "has-values": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz",
+ "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=",
+ "dev": true,
+ "requires": {
+ "is-number": "^3.0.0",
+ "kind-of": "^4.0.0"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz",
+ "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=",
+ "dev": true,
+ "requires": {
+ "is-buffer": "^1.1.5"
+ }
+ }
+ }
+ },
+ "homedir-polyfill": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz",
+ "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==",
+ "dev": true,
+ "requires": {
+ "parse-passwd": "^1.0.0"
+ }
+ },
+ "hooker": {
+ "version": "0.2.3",
+ "resolved": "https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz",
+ "integrity": "sha1-uDT3I8xKJCqmWWNFnfbZhMXT2Vk=",
+ "dev": true
+ },
+ "http-parser-js": {
+ "version": "0.5.0",
+ "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.0.tgz",
+ "integrity": "sha512-cZdEF7r4gfRIq7ezX9J0T+kQmJNOub71dWbgAXVHDct80TKP4MCETtZQ31xyv38UwgzkWPYF/Xc0ge55dW9Z9w==",
+ "dev": true
+ },
+ "iconv-lite": {
+ "version": "0.4.24",
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
+ "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
+ "dev": true,
+ "requires": {
+ "safer-buffer": ">= 2.1.2 < 3"
+ }
+ },
+ "ignore": {
+ "version": "4.0.6",
+ "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz",
+ "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==",
+ "dev": true
+ },
+ "import-fresh": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz",
+ "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==",
+ "dev": true,
+ "requires": {
+ "parent-module": "^1.0.0",
+ "resolve-from": "^4.0.0"
+ }
+ },
+ "imurmurhash": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
+ "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=",
+ "dev": true
+ },
+ "inflight": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
+ "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
+ "dev": true,
+ "requires": {
+ "once": "^1.3.0",
+ "wrappy": "1"
+ }
+ },
+ "inherits": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
+ "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
+ "dev": true
+ },
+ "ini": {
+ "version": "1.3.5",
+ "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz",
+ "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==",
+ "dev": true
+ },
+ "interpret": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz",
+ "integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ=",
+ "dev": true
+ },
+ "is-absolute": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz",
+ "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==",
+ "dev": true,
+ "requires": {
+ "is-relative": "^1.0.0",
+ "is-windows": "^1.0.1"
+ }
+ },
+ "is-accessor-descriptor": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
+ "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=",
+ "dev": true,
+ "requires": {
+ "kind-of": "^3.0.2"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "dev": true,
+ "requires": {
+ "is-buffer": "^1.1.5"
+ }
+ }
+ }
+ },
+ "is-buffer": {
+ "version": "1.1.6",
+ "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
+ "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
+ "dev": true
+ },
+ "is-data-descriptor": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
+ "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=",
+ "dev": true,
+ "requires": {
+ "kind-of": "^3.0.2"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "dev": true,
+ "requires": {
+ "is-buffer": "^1.1.5"
+ }
+ }
+ }
+ },
+ "is-descriptor": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
+ "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
+ "dev": true,
+ "requires": {
+ "is-accessor-descriptor": "^0.1.6",
+ "is-data-descriptor": "^0.1.4",
+ "kind-of": "^5.0.0"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
+ "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==",
+ "dev": true
+ }
+ }
+ },
+ "is-extendable": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
+ "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=",
+ "dev": true
+ },
+ "is-extglob": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
+ "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
+ "dev": true
+ },
+ "is-fullwidth-code-point": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
+ "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
+ "dev": true
+ },
+ "is-glob": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz",
+ "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^2.1.1"
+ }
+ },
+ "is-number": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
+ "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=",
+ "dev": true,
+ "requires": {
+ "kind-of": "^3.0.2"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "dev": true,
+ "requires": {
+ "is-buffer": "^1.1.5"
+ }
+ }
+ }
+ },
+ "is-plain-object": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
+ "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
+ "dev": true,
+ "requires": {
+ "isobject": "^3.0.1"
+ }
+ },
+ "is-relative": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz",
+ "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==",
+ "dev": true,
+ "requires": {
+ "is-unc-path": "^1.0.0"
+ }
+ },
+ "is-unc-path": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz",
+ "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==",
+ "dev": true,
+ "requires": {
+ "unc-path-regex": "^0.1.2"
+ }
+ },
+ "is-windows": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz",
+ "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==",
+ "dev": true
+ },
+ "isarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
+ "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
+ "dev": true
+ },
+ "isexe": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
+ "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
+ "dev": true
+ },
+ "isobject": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
+ "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=",
+ "dev": true
+ },
+ "js-tokens": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
+ "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
+ "dev": true
+ },
+ "js-yaml": {
+ "version": "3.14.0",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz",
+ "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==",
+ "dev": true,
+ "requires": {
+ "argparse": "^1.0.7",
+ "esprima": "^4.0.0"
+ }
+ },
+ "jsdoctypeparser": {
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/jsdoctypeparser/-/jsdoctypeparser-6.1.0.tgz",
+ "integrity": "sha512-UCQBZ3xCUBv/PLfwKAJhp6jmGOSLFNKzrotXGNgbKhWvz27wPsCsVeP7gIcHPElQw2agBmynAitXqhxR58XAmA==",
+ "dev": true
+ },
+ "json-schema-traverse": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
+ "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
+ "dev": true
+ },
+ "json-stable-stringify-without-jsonify": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
+ "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=",
+ "dev": true
+ },
+ "jsonc-parser": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-2.3.0.tgz",
+ "integrity": "sha512-b0EBt8SWFNnixVdvoR2ZtEGa9ZqLhbJnOjezn+WP+8kspFm+PFYDN8Z4Bc7pRlDjvuVcADSUkroIuTWWn/YiIA==",
+ "dev": true
+ },
+ "kind-of": {
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
+ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
+ "dev": true
+ },
+ "levn": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz",
+ "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==",
+ "dev": true,
+ "requires": {
+ "prelude-ls": "^1.2.1",
+ "type-check": "~0.4.0"
+ }
+ },
+ "liftoff": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-2.5.0.tgz",
+ "integrity": "sha1-IAkpG7Mc6oYbvxCnwVooyvdcMew=",
+ "dev": true,
+ "requires": {
+ "extend": "^3.0.0",
+ "findup-sync": "^2.0.0",
+ "fined": "^1.0.1",
+ "flagged-respawn": "^1.0.0",
+ "is-plain-object": "^2.0.4",
+ "object.map": "^1.0.0",
+ "rechoir": "^0.6.2",
+ "resolve": "^1.1.7"
+ },
+ "dependencies": {
+ "findup-sync": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz",
+ "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=",
+ "dev": true,
+ "requires": {
+ "detect-file": "^1.0.0",
+ "is-glob": "^3.1.0",
+ "micromatch": "^3.0.4",
+ "resolve-dir": "^1.0.1"
+ }
+ },
+ "is-glob": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz",
+ "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=",
+ "dev": true,
+ "requires": {
+ "is-extglob": "^2.1.0"
+ }
+ }
+ }
+ },
+ "livereload-js": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/livereload-js/-/livereload-js-2.4.0.tgz",
+ "integrity": "sha512-XPQH8Z2GDP/Hwz2PCDrh2mth4yFejwA1OZ/81Ti3LgKyhDcEjsSsqFWZojHG0va/duGd+WyosY7eXLDoOyqcPw==",
+ "dev": true
+ },
+ "lodash": {
+ "version": "4.17.19",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz",
+ "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==",
+ "dev": true
+ },
+ "make-iterator": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz",
+ "integrity": "sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^6.0.2"
+ }
+ },
+ "map-cache": {
+ "version": "0.2.2",
+ "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz",
+ "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=",
+ "dev": true
+ },
+ "map-visit": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz",
+ "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=",
+ "dev": true,
+ "requires": {
+ "object-visit": "^1.0.0"
+ }
+ },
+ "micromatch": {
+ "version": "3.1.10",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz",
+ "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==",
+ "dev": true,
+ "requires": {
+ "arr-diff": "^4.0.0",
+ "array-unique": "^0.3.2",
+ "braces": "^2.3.1",
+ "define-property": "^2.0.2",
+ "extend-shallow": "^3.0.2",
+ "extglob": "^2.0.4",
+ "fragment-cache": "^0.2.1",
+ "kind-of": "^6.0.2",
+ "nanomatch": "^1.2.9",
+ "object.pick": "^1.3.0",
+ "regex-not": "^1.0.0",
+ "snapdragon": "^0.8.1",
+ "to-regex": "^3.0.2"
+ }
+ },
+ "minimatch": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
+ "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
+ "dev": true,
+ "requires": {
+ "brace-expansion": "^1.1.7"
+ }
+ },
+ "minimist": {
+ "version": "1.2.5",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
+ "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==",
+ "dev": true
+ },
+ "mixin-deep": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz",
+ "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==",
+ "dev": true,
+ "requires": {
+ "for-in": "^1.0.2",
+ "is-extendable": "^1.0.1"
+ },
+ "dependencies": {
+ "is-extendable": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
+ "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
+ "dev": true,
+ "requires": {
+ "is-plain-object": "^2.0.4"
+ }
+ }
+ }
+ },
+ "mkdirp": {
+ "version": "0.5.5",
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
+ "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
+ "dev": true,
+ "requires": {
+ "minimist": "^1.2.5"
+ }
+ },
+ "ms": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
+ "dev": true
+ },
+ "nanomatch": {
+ "version": "1.2.13",
+ "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz",
+ "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==",
+ "dev": true,
+ "requires": {
+ "arr-diff": "^4.0.0",
+ "array-unique": "^0.3.2",
+ "define-property": "^2.0.2",
+ "extend-shallow": "^3.0.2",
+ "fragment-cache": "^0.2.1",
+ "is-windows": "^1.0.2",
+ "kind-of": "^6.0.2",
+ "object.pick": "^1.3.0",
+ "regex-not": "^1.0.0",
+ "snapdragon": "^0.8.1",
+ "to-regex": "^3.0.1"
+ }
+ },
+ "natural-compare": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
+ "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=",
+ "dev": true
+ },
+ "nopt": {
+ "version": "3.0.6",
+ "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz",
+ "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=",
+ "dev": true,
+ "requires": {
+ "abbrev": "1"
+ }
+ },
+ "object-assign": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
+ "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=",
+ "dev": true
+ },
+ "object-copy": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz",
+ "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=",
+ "dev": true,
+ "requires": {
+ "copy-descriptor": "^0.1.0",
+ "define-property": "^0.2.5",
+ "kind-of": "^3.0.3"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
+ "dev": true,
+ "requires": {
+ "is-descriptor": "^0.1.0"
+ }
+ },
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "dev": true,
+ "requires": {
+ "is-buffer": "^1.1.5"
+ }
+ }
+ }
+ },
+ "object-visit": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz",
+ "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=",
+ "dev": true,
+ "requires": {
+ "isobject": "^3.0.0"
+ }
+ },
+ "object.defaults": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz",
+ "integrity": "sha1-On+GgzS0B96gbaFtiNXNKeQ1/s8=",
+ "dev": true,
+ "requires": {
+ "array-each": "^1.0.1",
+ "array-slice": "^1.0.0",
+ "for-own": "^1.0.0",
+ "isobject": "^3.0.0"
+ }
+ },
+ "object.map": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz",
+ "integrity": "sha1-z4Plncj8wK1fQlDh94s7gb2AHTc=",
+ "dev": true,
+ "requires": {
+ "for-own": "^1.0.0",
+ "make-iterator": "^1.0.0"
+ }
+ },
+ "object.pick": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz",
+ "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=",
+ "dev": true,
+ "requires": {
+ "isobject": "^3.0.1"
+ }
+ },
+ "once": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
+ "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
+ "dev": true,
+ "requires": {
+ "wrappy": "1"
+ }
+ },
+ "optionator": {
+ "version": "0.9.1",
+ "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz",
+ "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==",
+ "dev": true,
+ "requires": {
+ "deep-is": "^0.1.3",
+ "fast-levenshtein": "^2.0.6",
+ "levn": "^0.4.1",
+ "prelude-ls": "^1.2.1",
+ "type-check": "^0.4.0",
+ "word-wrap": "^1.2.3"
+ }
+ },
+ "os-homedir": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
+ "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=",
+ "dev": true
+ },
+ "os-tmpdir": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
+ "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
+ "dev": true
+ },
+ "osenv": {
+ "version": "0.1.5",
+ "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz",
+ "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==",
+ "dev": true,
+ "requires": {
+ "os-homedir": "^1.0.0",
+ "os-tmpdir": "^1.0.0"
+ }
+ },
+ "parent-module": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
+ "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
+ "dev": true,
+ "requires": {
+ "callsites": "^3.0.0"
+ }
+ },
+ "parse-filepath": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz",
+ "integrity": "sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE=",
+ "dev": true,
+ "requires": {
+ "is-absolute": "^1.0.0",
+ "map-cache": "^0.2.0",
+ "path-root": "^0.1.1"
+ }
+ },
+ "parse-passwd": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz",
+ "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=",
+ "dev": true
+ },
+ "pascalcase": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz",
+ "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=",
+ "dev": true
+ },
+ "path-is-absolute": {
+ "version": "1.0.1",
+ "resolved": "http://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
+ "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
+ "dev": true
+ },
+ "path-key": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
+ "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
+ "dev": true
+ },
+ "path-parse": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz",
+ "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==",
+ "dev": true
+ },
+ "path-root": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz",
+ "integrity": "sha1-mkpoFMrBwM1zNgqV8yCDyOpHRbc=",
+ "dev": true,
+ "requires": {
+ "path-root-regex": "^0.1.0"
+ }
+ },
+ "path-root-regex": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz",
+ "integrity": "sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0=",
+ "dev": true
+ },
+ "posix-character-classes": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz",
+ "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=",
+ "dev": true
+ },
+ "prelude-ls": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
+ "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==",
+ "dev": true
+ },
+ "progress": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
+ "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==",
+ "dev": true
+ },
+ "punycode": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
+ "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
+ "dev": true
+ },
+ "qs": {
+ "version": "6.7.0",
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz",
+ "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==",
+ "dev": true
+ },
+ "ramda": {
+ "version": "0.27.0",
+ "resolved": "https://registry.npmjs.org/ramda/-/ramda-0.27.0.tgz",
+ "integrity": "sha512-pVzZdDpWwWqEVVLshWUHjNwuVP7SfcmPraYuqocJp1yo2U1R7P+5QAfDhdItkuoGqIBnBYrtPp7rEPqDn9HlZA==",
+ "dev": true
+ },
+ "raw-body": {
+ "version": "1.1.7",
+ "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-1.1.7.tgz",
+ "integrity": "sha1-HQJ8K/oRasxmI7yo8AAWVyqH1CU=",
+ "dev": true,
+ "requires": {
+ "bytes": "1",
+ "string_decoder": "0.10"
+ }
+ },
+ "rechoir": {
+ "version": "0.6.2",
+ "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz",
+ "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=",
+ "dev": true,
+ "requires": {
+ "resolve": "^1.1.6"
+ }
+ },
+ "regex-not": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz",
+ "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==",
+ "dev": true,
+ "requires": {
+ "extend-shallow": "^3.0.2",
+ "safe-regex": "^1.1.0"
+ }
+ },
+ "regexpp": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz",
+ "integrity": "sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==",
+ "dev": true
+ },
+ "regextras": {
+ "version": "0.7.1",
+ "resolved": "https://registry.npmjs.org/regextras/-/regextras-0.7.1.tgz",
+ "integrity": "sha512-9YXf6xtW+qzQ+hcMQXx95MOvfqXFgsKDZodX3qZB0x2n5Z94ioetIITsBtvJbiOyxa/6s9AtyweBLCdPmPko/w==",
+ "dev": true
+ },
+ "repeat-element": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz",
+ "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==",
+ "dev": true
+ },
+ "repeat-string": {
+ "version": "1.6.1",
+ "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz",
+ "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=",
+ "dev": true
+ },
+ "resolve": {
+ "version": "1.17.0",
+ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz",
+ "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==",
+ "dev": true,
+ "requires": {
+ "path-parse": "^1.0.6"
+ }
+ },
+ "resolve-dir": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz",
+ "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=",
+ "dev": true,
+ "requires": {
+ "expand-tilde": "^2.0.0",
+ "global-modules": "^1.0.0"
+ }
+ },
+ "resolve-from": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
+ "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
+ "dev": true
+ },
+ "resolve-url": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz",
+ "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=",
+ "dev": true
+ },
+ "ret": {
+ "version": "0.1.15",
+ "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz",
+ "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==",
+ "dev": true
+ },
+ "rimraf": {
+ "version": "2.6.3",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz",
+ "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==",
+ "dev": true,
+ "requires": {
+ "glob": "^7.1.3"
+ }
+ },
+ "safe-json-parse": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/safe-json-parse/-/safe-json-parse-1.0.1.tgz",
+ "integrity": "sha1-PnZyPjjf3aE8mx0poeB//uSzC1c=",
+ "dev": true
+ },
+ "safe-regex": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
+ "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=",
+ "dev": true,
+ "requires": {
+ "ret": "~0.1.10"
+ }
+ },
+ "safer-buffer": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
+ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
+ "dev": true
+ },
+ "semver": {
+ "version": "7.3.2",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz",
+ "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==",
+ "dev": true
+ },
+ "set-value": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz",
+ "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==",
+ "dev": true,
+ "requires": {
+ "extend-shallow": "^2.0.1",
+ "is-extendable": "^0.1.1",
+ "is-plain-object": "^2.0.3",
+ "split-string": "^3.0.1"
+ },
+ "dependencies": {
+ "extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "dev": true,
+ "requires": {
+ "is-extendable": "^0.1.0"
+ }
+ }
+ }
+ },
+ "shebang-command": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
+ "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
+ "dev": true,
+ "requires": {
+ "shebang-regex": "^3.0.0"
+ }
+ },
+ "shebang-regex": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
+ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
+ "dev": true
+ },
+ "slice-ansi": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz",
+ "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^3.2.0",
+ "astral-regex": "^1.0.0",
+ "is-fullwidth-code-point": "^2.0.0"
+ }
+ },
+ "snapdragon": {
+ "version": "0.8.2",
+ "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz",
+ "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==",
+ "dev": true,
+ "requires": {
+ "base": "^0.11.1",
+ "debug": "^2.2.0",
+ "define-property": "^0.2.5",
+ "extend-shallow": "^2.0.1",
+ "map-cache": "^0.2.2",
+ "source-map": "^0.5.6",
+ "source-map-resolve": "^0.5.0",
+ "use": "^3.1.0"
+ },
+ "dependencies": {
+ "debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "dev": true,
+ "requires": {
+ "ms": "2.0.0"
+ }
+ },
+ "define-property": {
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
+ "dev": true,
+ "requires": {
+ "is-descriptor": "^0.1.0"
+ }
+ },
+ "extend-shallow": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
+ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
+ "dev": true,
+ "requires": {
+ "is-extendable": "^0.1.0"
+ }
+ },
+ "ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
+ "dev": true
+ }
+ }
+ },
+ "snapdragon-node": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz",
+ "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==",
+ "dev": true,
+ "requires": {
+ "define-property": "^1.0.0",
+ "isobject": "^3.0.0",
+ "snapdragon-util": "^3.0.1"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
+ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
+ "dev": true,
+ "requires": {
+ "is-descriptor": "^1.0.0"
+ }
+ },
+ "is-accessor-descriptor": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
+ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^6.0.0"
+ }
+ },
+ "is-data-descriptor": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
+ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^6.0.0"
+ }
+ },
+ "is-descriptor": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
+ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
+ "dev": true,
+ "requires": {
+ "is-accessor-descriptor": "^1.0.0",
+ "is-data-descriptor": "^1.0.0",
+ "kind-of": "^6.0.2"
+ }
+ }
+ }
+ },
+ "snapdragon-util": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz",
+ "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==",
+ "dev": true,
+ "requires": {
+ "kind-of": "^3.2.0"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "dev": true,
+ "requires": {
+ "is-buffer": "^1.1.5"
+ }
+ }
+ }
+ },
+ "source-map": {
+ "version": "0.5.7",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
+ "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
+ "dev": true
+ },
+ "source-map-resolve": {
+ "version": "0.5.3",
+ "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz",
+ "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==",
+ "dev": true,
+ "requires": {
+ "atob": "^2.1.2",
+ "decode-uri-component": "^0.2.0",
+ "resolve-url": "^0.2.1",
+ "source-map-url": "^0.4.0",
+ "urix": "^0.1.0"
+ }
+ },
+ "source-map-url": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz",
+ "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=",
+ "dev": true
+ },
+ "spdx-exceptions": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz",
+ "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==",
+ "dev": true
+ },
+ "spdx-expression-parse": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz",
+ "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==",
+ "dev": true,
+ "requires": {
+ "spdx-exceptions": "^2.1.0",
+ "spdx-license-ids": "^3.0.0"
+ }
+ },
+ "spdx-license-ids": {
+ "version": "3.0.5",
+ "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz",
+ "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==",
+ "dev": true
+ },
+ "split-string": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz",
+ "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==",
+ "dev": true,
+ "requires": {
+ "extend-shallow": "^3.0.0"
+ }
+ },
+ "sprintf-js": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
+ "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
+ "dev": true
+ },
+ "static-extend": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz",
+ "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=",
+ "dev": true,
+ "requires": {
+ "define-property": "^0.2.5",
+ "object-copy": "^0.1.0"
+ },
+ "dependencies": {
+ "define-property": {
+ "version": "0.2.5",
+ "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
+ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
+ "dev": true,
+ "requires": {
+ "is-descriptor": "^0.1.0"
+ }
+ }
+ }
+ },
+ "string-template": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/string-template/-/string-template-0.2.1.tgz",
+ "integrity": "sha1-QpMuWYo1LQH8IuwzZ9nYTuxsmt0=",
+ "dev": true
+ },
+ "string-width": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
+ "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
+ "dev": true,
+ "requires": {
+ "emoji-regex": "^7.0.1",
+ "is-fullwidth-code-point": "^2.0.0",
+ "strip-ansi": "^5.1.0"
+ },
+ "dependencies": {
+ "ansi-regex": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
+ "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
+ "dev": true
+ },
+ "strip-ansi": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
+ "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^4.1.0"
+ }
+ }
+ }
+ },
+ "string_decoder": {
+ "version": "0.10.31",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
+ "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=",
+ "dev": true
+ },
+ "strip-ansi": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
+ "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^5.0.0"
+ }
+ },
+ "strip-json-comments": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.0.tgz",
+ "integrity": "sha512-e6/d0eBu7gHtdCqFt0xJr642LdToM5/cN4Qb9DbHjVx1CP5RyeM+zH7pbecEmDv/lBqb0QH+6Uqq75rxFPkM0w==",
+ "dev": true
+ },
+ "supports-color": {
+ "version": "5.5.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
+ "dev": true,
+ "requires": {
+ "has-flag": "^3.0.0"
+ }
+ },
+ "table": {
+ "version": "5.4.6",
+ "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz",
+ "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==",
+ "dev": true,
+ "requires": {
+ "ajv": "^6.10.2",
+ "lodash": "^4.17.14",
+ "slice-ansi": "^2.1.0",
+ "string-width": "^3.0.0"
+ }
+ },
+ "text-table": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
+ "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=",
+ "dev": true
+ },
+ "tiny-lr": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/tiny-lr/-/tiny-lr-1.1.1.tgz",
+ "integrity": "sha512-44yhA3tsaRoMOjQQ+5v5mVdqef+kH6Qze9jTpqtVufgYjYt08zyZAwNwwVBj3i1rJMnR52IxOW0LK0vBzgAkuA==",
+ "dev": true,
+ "requires": {
+ "body": "^5.1.0",
+ "debug": "^3.1.0",
+ "faye-websocket": "~0.10.0",
+ "livereload-js": "^2.3.0",
+ "object-assign": "^4.1.0",
+ "qs": "^6.4.0"
+ },
+ "dependencies": {
+ "debug": {
+ "version": "3.2.6",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz",
+ "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==",
+ "dev": true,
+ "requires": {
+ "ms": "^2.1.1"
+ }
+ }
+ }
+ },
+ "to-object-path": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz",
+ "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=",
+ "dev": true,
+ "requires": {
+ "kind-of": "^3.0.2"
+ },
+ "dependencies": {
+ "kind-of": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
+ "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
+ "dev": true,
+ "requires": {
+ "is-buffer": "^1.1.5"
+ }
+ }
+ }
+ },
+ "to-regex": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz",
+ "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==",
+ "dev": true,
+ "requires": {
+ "define-property": "^2.0.2",
+ "extend-shallow": "^3.0.2",
+ "regex-not": "^1.0.2",
+ "safe-regex": "^1.1.0"
+ }
+ },
+ "to-regex-range": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz",
+ "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=",
+ "dev": true,
+ "requires": {
+ "is-number": "^3.0.0",
+ "repeat-string": "^1.6.1"
+ }
+ },
+ "type-check": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
+ "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==",
+ "dev": true,
+ "requires": {
+ "prelude-ls": "^1.2.1"
+ }
+ },
+ "type-fest": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
+ "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
+ "dev": true
+ },
+ "unc-path-regex": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz",
+ "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=",
+ "dev": true
+ },
+ "underscore.string": {
+ "version": "3.3.5",
+ "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-3.3.5.tgz",
+ "integrity": "sha512-g+dpmgn+XBneLmXXo+sGlW5xQEt4ErkS3mgeN2GFbremYeMBSJKr9Wf2KJplQVaiPY/f7FN6atosWYNm9ovrYg==",
+ "dev": true,
+ "requires": {
+ "sprintf-js": "^1.0.3",
+ "util-deprecate": "^1.0.2"
+ }
+ },
+ "union-value": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz",
+ "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==",
+ "dev": true,
+ "requires": {
+ "arr-union": "^3.1.0",
+ "get-value": "^2.0.6",
+ "is-extendable": "^0.1.1",
+ "set-value": "^2.0.1"
+ }
+ },
+ "unset-value": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz",
+ "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=",
+ "dev": true,
+ "requires": {
+ "has-value": "^0.3.1",
+ "isobject": "^3.0.0"
+ },
+ "dependencies": {
+ "has-value": {
+ "version": "0.3.1",
+ "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz",
+ "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=",
+ "dev": true,
+ "requires": {
+ "get-value": "^2.0.3",
+ "has-values": "^0.1.4",
+ "isobject": "^2.0.0"
+ },
+ "dependencies": {
+ "isobject": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
+ "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=",
+ "dev": true,
+ "requires": {
+ "isarray": "1.0.0"
+ }
+ }
+ }
+ },
+ "has-values": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz",
+ "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=",
+ "dev": true
+ }
+ }
+ },
+ "upath": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz",
+ "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==",
+ "dev": true
+ },
+ "uri-js": {
+ "version": "4.2.2",
+ "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz",
+ "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==",
+ "dev": true,
+ "requires": {
+ "punycode": "^2.1.0"
+ }
+ },
+ "urix": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz",
+ "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=",
+ "dev": true
+ },
+ "use": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz",
+ "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==",
+ "dev": true
+ },
+ "util-deprecate": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
+ "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
+ "dev": true
+ },
+ "v8-compile-cache": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.1.tgz",
+ "integrity": "sha512-8OQ9CL+VWyt3JStj7HX7/ciTL2V3Rl1Wf5OL+SNTm0yK1KvtReVulksyeRnCANHHuUxHlQig+JJDlUhBt1NQDQ==",
+ "dev": true
+ },
+ "v8flags": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.1.3.tgz",
+ "integrity": "sha512-amh9CCg3ZxkzQ48Mhcb8iX7xpAfYJgePHxWMQCBWECpOSqJUXgY26ncA61UTV0BkPqfhcy6mzwCIoP4ygxpW8w==",
+ "dev": true,
+ "requires": {
+ "homedir-polyfill": "^1.0.1"
+ }
+ },
+ "vscode-json-languageservice": {
+ "version": "3.7.0",
+ "resolved": "https://registry.npmjs.org/vscode-json-languageservice/-/vscode-json-languageservice-3.7.0.tgz",
+ "integrity": "sha512-nGLqcBhTjdfkl8Dz9sYGK/ZCTjscYFoIjYw+qqkWB+vyNfM0k/AyIoT73DQvB/PArteCKjEVfQUF72GRZEDSbQ==",
+ "dev": true,
+ "requires": {
+ "jsonc-parser": "^2.2.1",
+ "vscode-languageserver-textdocument": "^1.0.1",
+ "vscode-languageserver-types": "^3.15.1",
+ "vscode-nls": "^4.1.2",
+ "vscode-uri": "^2.1.2"
+ }
+ },
+ "vscode-languageserver-textdocument": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.1.tgz",
+ "integrity": "sha512-UIcJDjX7IFkck7cSkNNyzIz5FyvpQfY7sdzVy+wkKN/BLaD4DQ0ppXQrKePomCxTS7RrolK1I0pey0bG9eh8dA==",
+ "dev": true
+ },
+ "vscode-languageserver-types": {
+ "version": "3.15.1",
+ "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.15.1.tgz",
+ "integrity": "sha512-+a9MPUQrNGRrGU630OGbYVQ+11iOIovjCkqxajPa9w57Sd5ruK8WQNsslzpa0x/QJqC8kRc2DUxWjIFwoNm4ZQ==",
+ "dev": true
+ },
+ "vscode-nls": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/vscode-nls/-/vscode-nls-4.1.2.tgz",
+ "integrity": "sha512-7bOHxPsfyuCqmP+hZXscLhiHwe7CSuFE4hyhbs22xPIhQ4jv99FcR4eBzfYYVLP356HNFpdvz63FFb/xw6T4Iw==",
+ "dev": true
+ },
+ "vscode-uri": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-2.1.2.tgz",
+ "integrity": "sha512-8TEXQxlldWAuIODdukIb+TR5s+9Ds40eSJrw+1iDDA9IFORPjMELarNQE3myz5XIkWWpdprmJjm1/SxMlWOC8A==",
+ "dev": true
+ },
+ "vue-eslint-parser": {
+ "version": "7.1.0",
+ "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-7.1.0.tgz",
+ "integrity": "sha512-Kr21uPfthDc63nDl27AGQEhtt9VrZ9nkYk/NTftJ2ws9XiJwzJJCnCr3AITQ2jpRMA0XPGDECxYH8E027qMK9Q==",
+ "dev": true,
+ "requires": {
+ "debug": "^4.1.1",
+ "eslint-scope": "^5.0.0",
+ "eslint-visitor-keys": "^1.1.0",
+ "espree": "^6.2.1",
+ "esquery": "^1.0.1",
+ "lodash": "^4.17.15"
+ },
+ "dependencies": {
+ "espree": {
+ "version": "6.2.1",
+ "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz",
+ "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==",
+ "dev": true,
+ "requires": {
+ "acorn": "^7.1.1",
+ "acorn-jsx": "^5.2.0",
+ "eslint-visitor-keys": "^1.1.0"
+ }
+ },
+ "lodash": {
+ "version": "4.17.19",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.19.tgz",
+ "integrity": "sha512-JNvd8XER9GQX0v2qJgsaN/mzFCNA5BRe/j8JN9d+tWyGLSodKQHKFicdwNYzWwI3wjRnaKPsGj1XkBjx/F96DQ==",
+ "dev": true
+ }
+ }
+ },
+ "websocket-driver": {
+ "version": "0.7.0",
+ "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.0.tgz",
+ "integrity": "sha1-DK+dLXVdk67gSdS90NP+LMoqJOs=",
+ "dev": true,
+ "requires": {
+ "http-parser-js": ">=0.4.0",
+ "websocket-extensions": ">=0.1.1"
+ }
+ },
+ "websocket-extensions": {
+ "version": "0.1.3",
+ "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.3.tgz",
+ "integrity": "sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg==",
+ "dev": true
+ },
+ "which": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
+ "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
+ "dev": true,
+ "requires": {
+ "isexe": "^2.0.0"
+ }
+ },
+ "word-wrap": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
+ "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
+ "dev": true
+ },
+ "wrappy": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
+ "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
+ "dev": true
+ },
+ "write": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz",
+ "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==",
+ "dev": true,
+ "requires": {
+ "mkdirp": "^0.5.1"
+ }
+ },
+ "xtend": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz",
+ "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=",
+ "dev": true
+ }
+ }
+}
diff --git a/Thanks/package.json b/Thanks/package.json
index a6953739..6d22960d 100644
--- a/Thanks/package.json
+++ b/Thanks/package.json
@@ -4,11 +4,10 @@
"test": "grunt test"
},
"devDependencies": {
- "eslint-config-wikimedia": "0.5.0",
- "grunt": "1.0.3",
- "grunt-banana-checker": "0.6.0",
+ "eslint-config-wikimedia": "0.16.2",
+ "grunt": "1.2.1",
+ "grunt-banana-checker": "0.9.0",
"grunt-contrib-watch": "1.1.0",
- "grunt-eslint": "20.1.0",
- "grunt-jsonlint": "1.1.0"
+ "grunt-eslint": "23.0.0"
}
}
diff --git a/Thanks/tests/phan/config.php b/Thanks/tests/phan/config.php
deleted file mode 100644
index 9f947545..00000000
--- a/Thanks/tests/phan/config.php
+++ /dev/null
@@ -1,23 +0,0 @@
-<?php
-
-$cfg = require __DIR__ . '/../../vendor/mediawiki/mediawiki-phan-config/src/config.php';
-
-$cfg['directory_list'] = array_merge(
- $cfg['directory_list'],
- [
- './../../extensions/Echo',
- './../../extensions/Flow',
- './../../extensions/MobileFrontend',
- ]
-);
-
-$cfg['exclude_analysis_directory_list'] = array_merge(
- $cfg['exclude_analysis_directory_list'],
- [
- './../../extensions/Echo',
- './../../extensions/Flow',
- './../../extensions/MobileFrontend',
- ]
-);
-
-return $cfg;
diff --git a/Thanks/tests/phpunit/ApiCoreThankIntegrationTest.php b/Thanks/tests/phpunit/ApiCoreThankIntegrationTest.php
index f38f8bc2..de2eeb2c 100644
--- a/Thanks/tests/phpunit/ApiCoreThankIntegrationTest.php
+++ b/Thanks/tests/phpunit/ApiCoreThankIntegrationTest.php
@@ -1,5 +1,8 @@
<?php
+use MediaWiki\Revision\RevisionRecord;
+use MediaWiki\Revision\SlotRecord;
+
/**
* Integration tests for the Thanks API module
*
@@ -20,15 +23,20 @@ class ApiCoreThankIntegrationTest extends ApiTestCase {
private $revId;
/**
+ * @var User filled in setUp
+ */
+ private $uploader;
+
+ /**
* @var int The ID of a deletion log entry.
*/
protected $logId;
- public function setUp() {
+ public function setUp() : void {
parent::setUp();
- // You can't thank yourself, kind of hacky but just use this other user
- $this->doLogin( 'uploader' );
+ $this->uploader = $this->getTestUser( [ 'uploader' ] )->getUser();
+ $user = $this->uploader;
$pageName = __CLASS__;
$content = __CLASS__;
@@ -36,40 +44,47 @@ class ApiCoreThankIntegrationTest extends ApiTestCase {
// If the page already exists, delete it, otherwise our edit will not result in a new revision
if ( $pageTitle->exists() ) {
$wikiPage = WikiPage::factory( $pageTitle );
- $wikiPage->doDeleteArticleReal( '' );
+ $wikiPage->doDeleteArticleReal( '', $user );
}
- $result = $this->editPage( $pageName, $content );
+ $result = $this->editPage( $pageName, $content, 'Summary', NS_MAIN, $user );
/** @var Status $result */
$result = $result->getValue();
- /** @var Revision $revision */
- $revision = $result['revision'];
- $this->revId = $revision->getId();
+ /** @var RevisionRecord $revisionRecord */
+ $revisionRecord = $result['revision-record'];
+ $this->revId = $revisionRecord->getId();
// Create a 2nd page and delete it, so we can thank for the log entry.
$pageToDeleteTitle = Title::newFromText( 'Page to delete' );
$pageToDelete = WikiPage::factory( $pageToDeleteTitle );
- $pageToDelete->doEditContent( ContentHandler::makeContent( '', $pageToDeleteTitle ), '' );
- $deleteStatus = $pageToDelete->doDeleteArticleReal( '' );
+
+ $updater = $pageToDelete->newPageUpdater( $user );
+ $updater->setcontent(
+ SlotRecord::MAIN,
+ ContentHandler::makeContent( '', $pageToDeleteTitle )
+ );
+ $updater->saveRevision( CommentStoreComment::newUnsavedComment( '' ) );
+
+ $deleteStatus = $pageToDelete->doDeleteArticleReal( '', $user );
$this->logId = $deleteStatus->getValue();
- $this->doLogin( 'sysop' );
DeferredUpdates::clearPendingUpdates();
}
public function testRequestWithoutToken() {
- $this->setExpectedException( 'ApiUsageException', 'The "token" parameter must be set.' );
+ $this->expectException( ApiUsageException::class );
+ $this->expectExceptionMessage( 'The "token" parameter must be set.' );
$this->doApiRequest( [
'action' => 'thank',
'source' => 'someSource',
'rev' => 1,
- ] );
+ ], null, false, $this->getTestSysop()->getUser() );
}
public function testValidRevRequest() {
list( $result,, ) = $this->doApiRequestWithToken( [
'action' => 'thank',
'rev' => $this->revId,
- ] );
+ ], null, $this->getTestSysop()->getUser() );
$this->assertSuccess( $result );
}
@@ -77,47 +92,50 @@ class ApiCoreThankIntegrationTest extends ApiTestCase {
list( $result,, ) = $this->doApiRequestWithToken( [
'action' => 'thank',
'log' => $this->logId,
- ] );
+ ], null, $this->getTestSysop()->getUser() );
$this->assertSuccess( $result );
}
public function testLogRequestWithDisallowedLogType() {
// Empty the log-type whitelist.
$this->setMwGlobals( [ 'wgThanksLogTypeWhitelist' => [] ] );
- $this->setExpectedException(
- ApiUsageException::class,
- "Log type 'delete' is not in the whitelist of permitted log types."
- );
+ $this->expectException( ApiUsageException::class );
+ $this->expectExceptionMessage(
+ "Log type 'delete' is not in the whitelist of permitted log types." );
$this->doApiRequestWithToken( [
'action' => 'thank',
'log' => $this->logId,
- ] );
+ ], null, $this->getTestSysop()->getUser() );
}
public function testLogThanksForADeletedLogEntry() {
- global $wgUser;
+ $this->mergeMwGlobalArrayValue( 'wgGroupPermissions', [
+ 'logdeleter' => [
+ 'read' => true,
+ 'writeapi' => true,
+ 'deletelogentry' => true
+ ]
+ ] );
// Mark our test log entry as deleted.
- // To do this we briefly switch back to our 'uploader' test user.
- $this->doLogin( 'uploader' );
- $wgUser->mRights[] = 'deletelogentry';
+ // To do this we briefly switch to a different test user.
+ $logdeleter = $this->getTestUser( [ 'logdeleter' ] )->getUser();
$this->doApiRequestWithToken( [
'action' => 'revisiondelete',
'type' => 'logging',
'ids' => $this->logId,
'hide' => 'content',
- ] );
- $this->doLogin( 'sysop' );
+ ], null, $logdeleter );
+ $sysop = $this->getTestSysop()->getUser();
// Then try to thank for it, and we should get an exception.
- $this->setExpectedException(
- ApiUsageException::class,
- "The requested log entry has been deleted and thanks cannot be given for it."
- );
+ $this->expectException( ApiUsageException::class );
+ $this->expectExceptionMessage(
+ "The requested log entry has been deleted and thanks cannot be given for it." );
$this->doApiRequestWithToken( [
'action' => 'thank',
'log' => $this->logId,
- ] );
+ ], null, $sysop );
}
public function testValidRequestWithSource() {
@@ -125,7 +143,7 @@ class ApiCoreThankIntegrationTest extends ApiTestCase {
'action' => 'thank',
'source' => 'someSource',
'rev' => $this->revId,
- ] );
+ ], null, $this->getTestSysop()->getUser() );
$this->assertSuccess( $result );
}
@@ -133,13 +151,13 @@ class ApiCoreThankIntegrationTest extends ApiTestCase {
$this->assertEquals( [
'result' => [
'success' => 1,
- 'recipient' => self::$users['uploader']->getUser()->getName(),
+ 'recipient' => $this->uploader->getName(),
],
], $result );
}
public function testInvalidRequest() {
- $this->setExpectedException( 'ApiUsageException' );
+ $this->expectException( ApiUsageException::class );
$this->doApiRequestWithToken( [ 'action' => 'thank' ] );
}
diff --git a/Thanks/tests/phpunit/ApiCoreThankUnitTest.php b/Thanks/tests/phpunit/ApiCoreThankUnitTest.php
index 7e3296ce..00a2b411 100644
--- a/Thanks/tests/phpunit/ApiCoreThankUnitTest.php
+++ b/Thanks/tests/phpunit/ApiCoreThankUnitTest.php
@@ -1,5 +1,7 @@
<?php
+use MediaWiki\Block\DatabaseBlock;
+
/**
* Unit tests for the Thanks API module
*
@@ -16,17 +18,30 @@ class ApiCoreThankUnitTest extends MediaWikiTestCase {
return new ApiCoreThank( new ApiMain(), self::$moduleName );
}
+ private function createBlock( $options ) {
+ $options = array_merge( [
+ 'address' => 'Test user',
+ 'by' => 1,
+ 'reason' => __METHOD__,
+ 'timestamp' => wfTimestamp( TS_MW ),
+ 'expiry' => 'infinity',
+ ], $options );
+ return new DatabaseBlock( $options );
+ }
+
/**
* @dataProvider provideDieOnBadUser
* @covers ApiThank::dieOnBadUser
+ * @covers ApiThank::dieOnSitewideBlockedUser
*/
- public function testDieOnBadUser( $user, $expectedError ) {
+ public function testDieOnBadUser( $user, $dieMethod, $expectedError ) {
$module = $this->getModule();
- $method = new ReflectionMethod( $module, 'dieOnBadUser' );
+ $method = new ReflectionMethod( $module, $dieMethod );
$method->setAccessible( true );
if ( $expectedError ) {
- $this->setExpectedException( 'ApiUsageException', $expectedError );
+ $this->expectException( ApiUsageException::class );
+ $this->expectExceptionMessage( $expectedError );
}
$method->invoke( $module, $user );
@@ -37,14 +52,18 @@ class ApiCoreThankUnitTest extends MediaWikiTestCase {
public function provideDieOnBadUser() {
$testCases = [];
- $mockUser = $this->getMock( 'User' );
+ $mockUser = $this->createMock( 'User' );
$mockUser->expects( $this->once() )
->method( 'isAnon' )
->will( $this->returnValue( true ) );
- $testCases[ 'anon' ] = [ $mockUser, 'Anonymous users cannot send thanks' ];
+ $testCases[ 'anon' ] = [
+ $mockUser,
+ 'dieOnBadUser',
+ 'Anonymous users cannot send thanks'
+ ];
- $mockUser = $this->getMock( 'User' );
+ $mockUser = $this->createMock( 'User' );
$mockUser->expects( $this->once() )
->method( 'isAnon' )
->will( $this->returnValue( false ) );
@@ -54,10 +73,11 @@ class ApiCoreThankUnitTest extends MediaWikiTestCase {
$testCases[ 'ping' ] = [
$mockUser,
+ 'dieOnBadUser',
"You've exceeded your rate limit. Please wait some time and try again"
];
- $mockUser = $this->getMock( 'User' );
+ $mockUser = $this->createMock( 'User' );
$mockUser->expects( $this->once() )
->method( 'isAnon' )
->will( $this->returnValue( false ) );
@@ -65,20 +85,47 @@ class ApiCoreThankUnitTest extends MediaWikiTestCase {
->method( 'pingLimiter' )
->will( $this->returnValue( false ) );
$mockUser->expects( $this->once() )
- ->method( 'isBlocked' )
+ ->method( 'isBlockedGlobally' )
->will( $this->returnValue( true ) );
$mockUser->expects( $this->once() )
+ ->method( 'getGlobalBlock' )
+ ->will( $this->returnValue(
+ $this->createBlock( [] )
+ ) );
+
+ $testCases[ 'globally blocked' ] = [
+ $mockUser,
+ 'dieOnBadUser',
+ 'You have been blocked from editing'
+ ];
+
+ $mockUser = $this->createMock( 'User' );
+ $mockUser->expects( $this->once() )
->method( 'getBlock' )
- ->will( $this->returnValue( new Block( [
- 'address' => 'Test user',
- 'by' => 1,
- 'byText' => 'UTSysop',
- 'reason' => __METHOD__,
- 'timestamp' => wfTimestamp( TS_MW ),
- 'expiry' => 'infinity',
- ] ) ) );
-
- $testCases[ 'blocked' ] = [ $mockUser, 'You have been blocked from editing' ];
+ ->will( $this->returnValue(
+ $this->createBlock( [] )
+ ) );
+
+ $testCases[ 'sitewide blocked' ] = [
+ $mockUser,
+ 'dieOnSitewideBlockedUser',
+ 'You have been blocked from editing'
+ ];
+
+ $mockUser = $this->createMock( 'User' );
+ $mockUser->expects( $this->once() )
+ ->method( 'getBlock' )
+ ->will( $this->returnValue(
+ $this->createBlock( [
+ 'sitewide' => false
+ ] )
+ ) );
+
+ $testCases[ 'partial blocked' ] = [
+ $mockUser,
+ 'dieOnSitewideBlockedUser',
+ false
+ ];
return $testCases;
}
diff --git a/Thanks/tests/phpunit/ApiFlowThankIntegrationTest.php b/Thanks/tests/phpunit/ApiFlowThankIntegrationTest.php
index 7dfb237b..b8185c8e 100644
--- a/Thanks/tests/phpunit/ApiFlowThankIntegrationTest.php
+++ b/Thanks/tests/phpunit/ApiFlowThankIntegrationTest.php
@@ -3,6 +3,7 @@
use Flow\Model\AbstractRevision;
use Flow\Model\PostRevision;
use Flow\Model\UUID;
+use Flow\Model\Workflow;
/**
* Integration tests for the Thanks Flow api module
@@ -34,10 +35,10 @@ class ApiFlowThankIntegrationTest extends ApiTestCase {
/** @var PostRevision */
public $postByMe;
- public function setUp() {
+ public function setUp() : void {
parent::setUp();
- if ( !class_exists( 'FlowHooks' ) ) {
+ if ( !ExtensionRegistry::getInstance()->isLoaded( 'Flow' ) ) {
$this->markTestSkipped( 'Flow is not installed' );
}
@@ -89,13 +90,13 @@ class ApiFlowThankIntegrationTest extends ApiTestCase {
}
) );
- $mockWorkflow = $this->getMock( '\Flow\Model\Workflow' );
+ $mockWorkflow = $this->createMock( Workflow::class );
$mockWorkflow->expects( $this->any() )
->method( 'getOwnerTitle' )
- ->will( $this->returnValue( new Title() ) );
+ ->willReturn( $this->createMock( Title::class ) );
$mockWorkflow->expects( $this->any() )
->method( 'getArticleTitle' )
- ->will( $this->returnValue( new Title() ) );
+ ->willReturn( $this->createMock( Title::class ) );
$mockStorage = $this->getMockBuilder( '\Flow\Data\ManagerGroup' )
->disableOriginalConstructor()
@@ -119,12 +120,12 @@ class ApiFlowThankIntegrationTest extends ApiTestCase {
$container[ 'storage' ] = $mockStorage;
$container[ 'templating' ] = $mockTemplating;
- $this->doLogin( 'sysop' );
\DeferredUpdates::clearPendingUpdates();
}
public function testRequestWithoutToken() {
- $this->setExpectedException( 'ApiUsageException', 'The "token" parameter must be set.' );
+ $this->expectException( ApiUsageException::class );
+ $this->expectExceptionMessage( 'The "token" parameter must be set.' );
$this->doApiRequest( [
'action' => 'flowthank',
'postid' => UUID::create( '42' )->getAlphadecimal(),
@@ -132,7 +133,8 @@ class ApiFlowThankIntegrationTest extends ApiTestCase {
}
public function testInvalidRequest() {
- $this->setExpectedException( 'ApiUsageException', 'The "postid" parameter must be set.' );
+ $this->expectException( ApiUsageException::class );
+ $this->expectExceptionMessage( 'The "postid" parameter must be set.' );
$this->doApiRequestWithToken( [ 'action' => 'flowthank' ] );
}
@@ -145,7 +147,8 @@ class ApiFlowThankIntegrationTest extends ApiTestCase {
}
public function testRequestWithInvalidId() {
- $this->setExpectedException( 'ApiUsageException', 'Post ID is not valid' );
+ $this->expectException( ApiUsageException::class );
+ $this->expectExceptionMessage( 'Post ID is not valid' );
list( $result,, ) = $this->doApiRequestWithToken( [
'action' => 'flowthank',
'postid' => UUID::create( '42' )->getAlphadecimal(),
@@ -153,7 +156,8 @@ class ApiFlowThankIntegrationTest extends ApiTestCase {
}
public function testRequestWithOwnId() {
- $this->setExpectedException( 'ApiUsageException', 'You cannot thank yourself' );
+ $this->expectException( ApiUsageException::class );
+ $this->expectExceptionMessage( 'You cannot thank yourself' );
list( $result,, ) = $this->doApiRequestWithToken( [
'action' => 'flowthank',
'postid' => $this->postByMe->getPostId()->getAlphadecimal(),
@@ -161,7 +165,7 @@ class ApiFlowThankIntegrationTest extends ApiTestCase {
}
protected function assertSuccess( $result ) {
- $this->assertEquals( 1, $result[ 'result' ][ 'success' ] );
+ $this->assertSame( 1, $result[ 'result' ][ 'success' ] );
}
/**
@@ -191,7 +195,7 @@ class ApiFlowThankIntegrationTest extends ApiTestCase {
'rev_type' => 'post',
'rev_user_id' => $userId,
'rev_user_ip' => $userIp,
- 'rev_user_wiki' => wfWikiId(),
+ 'rev_user_wiki' => wfWikiID(),
'rev_parent_id' => null,
'rev_flags' => 'html',
'rev_content' => 'test content',
@@ -214,7 +218,7 @@ class ApiFlowThankIntegrationTest extends ApiTestCase {
'tree_orig_create_time' => wfTimestampNow(),
'tree_orig_user_id' => $userId,
'tree_orig_user_ip' => $userIp,
- 'tree_orig_user_wiki' => wfWikiId(),
+ 'tree_orig_user_wiki' => wfWikiID(),
'tree_parent_id' => null,
];
}
diff --git a/Thanks/tests/qunit/.eslintrc.json b/Thanks/tests/qunit/.eslintrc.json
new file mode 100644
index 00000000..348a1b7f
--- /dev/null
+++ b/Thanks/tests/qunit/.eslintrc.json
@@ -0,0 +1,6 @@
+{
+ "extends": [
+ "wikimedia/qunit",
+ "../../.eslintrc.json"
+ ]
+}
diff --git a/Thanks/tests/qunit/test_ext.thanks.mobilediff.js b/Thanks/tests/qunit/test_ext.thanks.mobilediff.js
index 2c7911f4..0c0e6413 100644
--- a/Thanks/tests/qunit/test_ext.thanks.mobilediff.js
+++ b/Thanks/tests/qunit/test_ext.thanks.mobilediff.js
@@ -1,4 +1,4 @@
-( function ( $, mw ) {
+( function () {
QUnit.module( 'Thanks mobilediff' );
QUnit.test( 'render button for logged in users', function ( assert ) {
@@ -12,4 +12,4 @@
assert.strictEqual( $container.find( '.mw-ui-button' ).length, 1, 'Thanks button was created.' );
} );
-}( jQuery, mediaWiki ) );
+}() );
diff --git a/Thanks/tests/qunit/test_ext.thanks.thank.js b/Thanks/tests/qunit/test_ext.thanks.thank.js
new file mode 100644
index 00000000..c393267f
--- /dev/null
+++ b/Thanks/tests/qunit/test_ext.thanks.thank.js
@@ -0,0 +1,62 @@
+QUnit.module( 'Thanks thank', QUnit.newMwEnvironment( {
+ setup: function () {
+ this.server = this.sandbox.useFakeServer();
+ this.server.respondImmediately = true;
+ }
+} ) );
+
+QUnit.test( 'thanked cookie', function ( assert ) {
+ var $thankLink = $( '<a ' + mw.thanks.thanked.attrName + '="8" />' ),
+ $thankLinkNonExisting = $( '<a ' + mw.thanks.thanked.attrName + '="13" />' );
+ mw.cookie.set( mw.thanks.thanked.cookieName, escape( '17,11' ) );
+
+ assert.deepEqual( mw.thanks.thanked.load(), [ '17', '11' ], 'gets cookie with two values' );
+
+ // Makes the 0 100th element
+ // eslint-disable-next-line no-restricted-properties
+ mw.cookie.set( mw.thanks.thanked.cookieName, escape( '9,'.repeat( mw.thanks.thanked.maxHistory - 1 ) + '0' ) );
+
+ assert.strictEqual( mw.thanks.thanked.load()[ mw.thanks.thanked.maxHistory - 1 ], '0', 'loads ' + mw.thanks.thanked.maxHistory + ' ids from a cookie' );
+ mw.thanks.thanked.push( $thankLink );
+ assert.strictEqual( mw.thanks.thanked.load().length, mw.thanks.thanked.maxHistory, 'cuts a cookie to ' + mw.thanks.thanked.maxHistory + ' values' );
+ assert.strictEqual( mw.thanks.thanked.load()[ mw.thanks.thanked.maxHistory - 1 ], $thankLink.attr( mw.thanks.thanked.attrName ), 'adds a new value to cookie to the end' );
+
+ assert.strictEqual( mw.thanks.thanked.contains( $thankLink ), true, 'cookie contains id and returns true' );
+ assert.strictEqual( mw.thanks.thanked.contains( $thankLinkNonExisting ), false, 'cookie does not contains id and returns false' );
+} );
+QUnit.test( 'gets user gender', function ( assert ) {
+ this.server.respond( /user1/, function ( request ) {
+ request.respond( 200, { 'Content-Type': 'application/json' },
+ '{"batchcomplete":"","query":{"users":[{"userid":1,"name":"user1","gender":"male"}]}}'
+ );
+ } );
+ this.server.respond( /user2/, function ( request ) {
+ request.respond( 200, { 'Content-Type': 'application/json' },
+ '{"batchcomplete":"","query":{"users":[{"userid":2,"name":"user2","gender":"unknown"}]}}'
+ );
+ } );
+ this.server.respond( /user3/, function ( request ) {
+ request.respond( 200, { 'Content-Type': 'application/json' },
+ '{"batchcomplete":"","query":{"users":[{"name":"user3","missing":""}]}}'
+ );
+ } );
+
+ // eslint-disable-next-line vars-on-top
+ var maleUser = mw.thanks.getUserGender( 'user1' ),
+ unknownGenderUser = mw.thanks.getUserGender( 'user2' ),
+ nonExistingUser = mw.thanks.getUserGender( 'user3' ),
+ callbackDone = assert.async( 3 );
+
+ maleUser.then( function ( recipientGender ) {
+ assert.strictEqual( recipientGender, 'male', 'gets a proper gender for existing male user' );
+ callbackDone();
+ } );
+ unknownGenderUser.then( function ( recipientGender ) {
+ assert.strictEqual( recipientGender, 'unknown', 'gets a unknown gender for a existing unknown gender user' );
+ callbackDone();
+ } );
+ nonExistingUser.then( function ( recipientGender ) {
+ assert.strictEqual( recipientGender, 'unknown', 'gets a unknown gender for non-existing user' );
+ callbackDone();
+ } );
+} );
diff --git a/Thanks/version b/Thanks/version
deleted file mode 100644
index 0b320f55..00000000
--- a/Thanks/version
+++ /dev/null
@@ -1,4 +0,0 @@
-Thanks: REL1_32
-2018-10-17T02:38:03
-
-23858aa