summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'UserMerge')
-rw-r--r--UserMerge/.eslintrc.json7
-rw-r--r--UserMerge/.gitignore2
-rw-r--r--UserMerge/.phan/config.php3
-rw-r--r--UserMerge/.phpcs.xml2
-rw-r--r--UserMerge/Gruntfile.js30
-rw-r--r--UserMerge/composer.json17
-rw-r--r--UserMerge/extension.json24
-rw-r--r--UserMerge/gitinfo.json1
-rw-r--r--UserMerge/i18n/af.json3
-rw-r--r--UserMerge/i18n/aln.json3
-rw-r--r--UserMerge/i18n/ar.json14
-rw-r--r--UserMerge/i18n/arz.json7
-rw-r--r--UserMerge/i18n/as.json9
-rw-r--r--UserMerge/i18n/ast.json18
-rw-r--r--UserMerge/i18n/be-tarask.json7
-rw-r--r--UserMerge/i18n/bg.json14
-rw-r--r--UserMerge/i18n/bn.json11
-rw-r--r--UserMerge/i18n/br.json3
-rw-r--r--UserMerge/i18n/bs.json5
-rw-r--r--UserMerge/i18n/ca.json2
-rw-r--r--UserMerge/i18n/ce.json7
-rw-r--r--UserMerge/i18n/cs.json19
-rw-r--r--UserMerge/i18n/da.json4
-rw-r--r--UserMerge/i18n/de.json12
-rw-r--r--UserMerge/i18n/diq.json35
-rw-r--r--UserMerge/i18n/dsb.json3
-rw-r--r--UserMerge/i18n/el.json7
-rw-r--r--UserMerge/i18n/en.json1
-rw-r--r--UserMerge/i18n/eo.json14
-rw-r--r--UserMerge/i18n/es.json19
-rw-r--r--UserMerge/i18n/et.json1
-rw-r--r--UserMerge/i18n/eu.json10
-rw-r--r--UserMerge/i18n/fa.json9
-rw-r--r--UserMerge/i18n/fi.json16
-rw-r--r--UserMerge/i18n/fr.json14
-rw-r--r--UserMerge/i18n/frp.json3
-rw-r--r--UserMerge/i18n/fy.json8
-rw-r--r--UserMerge/i18n/gl.json7
-rw-r--r--UserMerge/i18n/gsw.json3
-rw-r--r--UserMerge/i18n/gu.json1
-rw-r--r--UserMerge/i18n/he.json15
-rw-r--r--UserMerge/i18n/hi.json1
-rw-r--r--UserMerge/i18n/hsb.json3
-rw-r--r--UserMerge/i18n/ht.json3
-rw-r--r--UserMerge/i18n/hu.json3
-rw-r--r--UserMerge/i18n/ia.json18
-rw-r--r--UserMerge/i18n/id.json7
-rw-r--r--UserMerge/i18n/ie.json2
-rw-r--r--UserMerge/i18n/it.json8
-rw-r--r--UserMerge/i18n/ja.json9
-rw-r--r--UserMerge/i18n/jv.json29
-rw-r--r--UserMerge/i18n/ka.json6
-rw-r--r--UserMerge/i18n/km.json11
-rw-r--r--UserMerge/i18n/ko.json20
-rw-r--r--UserMerge/i18n/ksh.json3
-rw-r--r--UserMerge/i18n/lb.json3
-rw-r--r--UserMerge/i18n/mk.json16
-rw-r--r--UserMerge/i18n/ml.json3
-rw-r--r--UserMerge/i18n/mr.json3
-rw-r--r--UserMerge/i18n/ms.json3
-rw-r--r--UserMerge/i18n/my.json4
-rw-r--r--UserMerge/i18n/nah.json4
-rw-r--r--UserMerge/i18n/nb.json14
-rw-r--r--UserMerge/i18n/nds-nl.json7
-rw-r--r--UserMerge/i18n/nl.json22
-rw-r--r--UserMerge/i18n/nn.json3
-rw-r--r--UserMerge/i18n/oc.json3
-rw-r--r--UserMerge/i18n/pl.json27
-rw-r--r--UserMerge/i18n/pms.json3
-rw-r--r--UserMerge/i18n/pt-br.json24
-rw-r--r--UserMerge/i18n/pt.json20
-rw-r--r--UserMerge/i18n/qqq.json5
-rw-r--r--UserMerge/i18n/ro.json10
-rw-r--r--UserMerge/i18n/roa-tara.json18
-rw-r--r--UserMerge/i18n/ru.json18
-rw-r--r--UserMerge/i18n/rue.json3
-rw-r--r--UserMerge/i18n/sh.json29
-rw-r--r--UserMerge/i18n/si.json3
-rw-r--r--UserMerge/i18n/sk.json16
-rw-r--r--UserMerge/i18n/sl.json3
-rw-r--r--UserMerge/i18n/sr-ec.json32
-rw-r--r--UserMerge/i18n/sr-el.json50
-rw-r--r--UserMerge/i18n/stq.json3
-rw-r--r--UserMerge/i18n/sv.json9
-rw-r--r--UserMerge/i18n/szl.json12
-rw-r--r--UserMerge/i18n/te.json3
-rw-r--r--UserMerge/i18n/tg-cyrl.json2
-rw-r--r--UserMerge/i18n/tg-latn.json2
-rw-r--r--UserMerge/i18n/tl.json3
-rw-r--r--UserMerge/i18n/tr.json24
-rw-r--r--UserMerge/i18n/uk.json21
-rw-r--r--UserMerge/i18n/ur.json6
-rw-r--r--UserMerge/i18n/uz.json2
-rw-r--r--UserMerge/i18n/vep.json1
-rw-r--r--UserMerge/i18n/vi.json3
-rw-r--r--UserMerge/i18n/vo.json4
-rw-r--r--UserMerge/i18n/yue.json5
-rw-r--r--UserMerge/i18n/zh-hans.json7
-rw-r--r--UserMerge/i18n/zh-hant.json21
-rw-r--r--UserMerge/includes/IUserMergeLogger.php4
-rw-r--r--UserMerge/includes/MergeUser.php215
-rw-r--r--UserMerge/includes/SpecialUserMerge.php13
-rw-r--r--UserMerge/package-lock.json1756
-rw-r--r--UserMerge/package.json8
-rw-r--r--UserMerge/tests/phan/config.php3
-rw-r--r--UserMerge/tests/phpunit/MergeUserTest.php55
-rw-r--r--UserMerge/version4
107 files changed, 2424 insertions, 621 deletions
diff --git a/UserMerge/.eslintrc.json b/UserMerge/.eslintrc.json
new file mode 100644
index 00000000..1a97f6e1
--- /dev/null
+++ b/UserMerge/.eslintrc.json
@@ -0,0 +1,7 @@
+{
+ "root": true,
+ "extends": [
+ "wikimedia/client",
+ "wikimedia/jquery"
+ ]
+}
diff --git a/UserMerge/.gitignore b/UserMerge/.gitignore
index 466fb70e..24f8c141 100644
--- a/UserMerge/.gitignore
+++ b/UserMerge/.gitignore
@@ -2,7 +2,7 @@
node_modules/
composer.lock
vendor/
-tests/phan/issues/
+.eslintcache
# Editors
*.kate-swp
diff --git a/UserMerge/.phan/config.php b/UserMerge/.phan/config.php
new file mode 100644
index 00000000..76efd06d
--- /dev/null
+++ b/UserMerge/.phan/config.php
@@ -0,0 +1,3 @@
+<?php
+
+return require __DIR__ . '/../vendor/mediawiki/mediawiki-phan-config/src/config.php';
diff --git a/UserMerge/.phpcs.xml b/UserMerge/.phpcs.xml
index 2b0ed1bb..06fadff9 100644
--- a/UserMerge/.phpcs.xml
+++ b/UserMerge/.phpcs.xml
@@ -1,7 +1,9 @@
<?xml version="1.0"?>
<ruleset>
<rule ref="./vendor/mediawiki/mediawiki-codesniffer/MediaWiki">
+ <exclude name="MediaWiki.Commenting.FunctionComment.MissingDocumentationPrivate" />
<exclude name="MediaWiki.WhiteSpace.SpaceBeforeSingleLineComment.NewLineComment" />
+ <exclude name="PSR12.Properties.ConstantVisibility.NotFound" />
</rule>
<rule ref="Generic.Files.LineLength">
<exclude-pattern>UserMerge\.alias\.php</exclude-pattern>
diff --git a/UserMerge/Gruntfile.js b/UserMerge/Gruntfile.js
index c07280d8..a40e8ab4 100644
--- a/UserMerge/Gruntfile.js
+++ b/UserMerge/Gruntfile.js
@@ -4,31 +4,27 @@
* @package UserMerge
*/
-/*jshint node:true */
+/* eslint-env node, es6 */
module.exports = function ( grunt ) {
+ var conf = grunt.file.readJSON( 'extension.json' );
+
grunt.loadNpmTasks( 'grunt-banana-checker' );
- grunt.loadNpmTasks( 'grunt-jsonlint' );
- grunt.loadNpmTasks( 'grunt-contrib-jshint' );
+ grunt.loadNpmTasks( 'grunt-eslint' );
- var conf = grunt.file.readJSON( 'extension.json' );
grunt.initConfig( {
- banana: conf.MessagesDirs,
- jshint: {
+ eslint: {
+ options: {
+ extensions: [ '.js', '.json' ],
+ cache: true
+ },
all: [
- '**/*.js',
- '!node_modules/**',
- '!vendor/**'
+ '**/*.js{,on}',
+ '!{vendor,node_modules}/**'
]
},
- jsonlint: {
- all: [
- '**/*.json',
- '!node_modules/**',
- '!vendor/**'
- ]
- }
+ banana: conf.MessagesDirs
} );
- grunt.registerTask( 'test', [ 'jsonlint', 'banana', 'jshint' ] );
+ grunt.registerTask( 'test', [ 'eslint', 'banana' ] );
grunt.registerTask( 'default', 'test' );
};
diff --git a/UserMerge/composer.json b/UserMerge/composer.json
index 0ec61337..4f693aca 100644
--- a/UserMerge/composer.json
+++ b/UserMerge/composer.json
@@ -1,23 +1,20 @@
{
"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": {
"fix": [
- "phpcbf",
- "minus-x fix ."
+ "minus-x fix .",
+ "phpcbf"
],
"test": [
"parallel-lint . --exclude vendor --exclude node_modules",
"phpcs -p -s",
"minus-x check ."
]
- },
- "extra": {
- "phan-taint-check-plugin": "1.5.0"
}
}
diff --git a/UserMerge/extension.json b/UserMerge/extension.json
index 8a22bc6d..701c111d 100644
--- a/UserMerge/extension.json
+++ b/UserMerge/extension.json
@@ -10,7 +10,7 @@
"descriptionmsg": "usermerge-desc",
"license-name": "GPL-2.0-or-later",
"requires": {
- "MediaWiki": ">= 1.31.0"
+ "MediaWiki": ">= 1.34.0"
},
"type": "specialpage",
"AvailableRights": [
@@ -30,8 +30,12 @@
},
"ActionFilteredLogs": {
"usermerge": {
- "mergeuser": [ "mergeuser" ],
- "deleteuser": [ "deleteuser" ]
+ "mergeuser": [
+ "mergeuser"
+ ],
+ "deleteuser": [
+ "deleteuser"
+ ]
}
},
"LogActionsHandlers": {
@@ -53,10 +57,14 @@
"UserMergeLogFormatter": "includes/UserMergeLogFormatter.php"
},
"config": {
- "UserMergeEnableDelete": true,
- "UserMergeProtectedGroups": [
- "sysop"
- ]
+ "UserMergeEnableDelete": {
+ "value": true
+ },
+ "UserMergeProtectedGroups": {
+ "value": [
+ "sysop"
+ ]
+ }
},
- "manifest_version": 1
+ "manifest_version": 2
}
diff --git a/UserMerge/gitinfo.json b/UserMerge/gitinfo.json
deleted file mode 100644
index 4a8958d5..00000000
--- a/UserMerge/gitinfo.json
+++ /dev/null
@@ -1 +0,0 @@
-{"remoteURL": "https://gerrit.wikimedia.org/r/mediawiki/extensions/UserMerge", "headCommitDate": "1547405747", "branch": "66c703068fa0089cb5644129158a8c50b0b12fef\n", "head": "66c703068fa0089cb5644129158a8c50b0b12fef\n", "headSHA1": "66c703068fa0089cb5644129158a8c50b0b12fef\n"} \ No newline at end of file
diff --git a/UserMerge/i18n/af.json b/UserMerge/i18n/af.json
index 0d4f2d60..15d2f296 100644
--- a/UserMerge/i18n/af.json
+++ b/UserMerge/i18n/af.json
@@ -6,7 +6,6 @@
},
"usermerge": "Versmelt en verwyder gebruikers",
"usermerge-desc": "Maak 'n [[Special:UserMerge|spesiale bladsy]] beskikbaar om gebruikers te versmelt en die ou gebruiker(s) te verwyder (hiervoor is die ''usermerge''-reg nodig)",
- "usermerge-badolduser": "Ongeldige ou gebruiker",
"usermerge-badnewuser": "Ongeldige nuwe gebruiker",
"usermerge-nonewuser": "Die nuwe gebruikersnaam is nie ingevoer nie - daar word aangeneem dat dit met $1 versmelt moet word.<br />\nKliek \"{{int:usermerge-submit}}\" om die handeling uit te voer.",
"usermerge-noolduser": "Ou gebruikersnaam is leeg",
@@ -17,9 +16,7 @@
"usermerge-submit": "Versmelt gebruiker",
"usermerge-badtoken": "Ongeldige wysigingsteken (\"edit token\")",
"usermerge-userdeleted": "$1 ($2) is verwyder.",
- "usermerge-userdeleted-log": "Verwyderde gebruiker: $2 ($3)",
"usermerge-success": "Versmelting van $1 ($2) na $3 ($4) is voltooi.",
- "usermerge-success-log": "Gebruiker $2 ($3) is versmelt na $4 ($5)",
"usermerge-logpage": "Logboek van gebruikersversmeltings",
"usermerge-logpagetext": "Die is 'n logboek van gebruikersversmeltings.",
"usermerge-noselfdelete": "U kan nie uself verwyder of versmelt nie!",
diff --git a/UserMerge/i18n/aln.json b/UserMerge/i18n/aln.json
index 991ad581..c3f97e6a 100644
--- a/UserMerge/i18n/aln.json
+++ b/UserMerge/i18n/aln.json
@@ -6,7 +6,6 @@
},
"usermerge": "Përziej dhe fshini përdoruesit",
"usermerge-desc": "[[Special:UserMerge|referencat bashkohet nga një user në një përdorues tjetër]] në bazën e të dhënave wiki - do të fshini gjithashtu përdoruesit e vjetër pas bashkohen. Kërkon''''usermerge privilegje",
- "usermerge-badolduser": "emrin e pavlefshme të vjetra",
"usermerge-badnewuser": "emrin e pavlefshme të reja",
"usermerge-nonewuser": "Bosh emrin e re - duke supozuar të bashkohen për të \"\" $1 \". <br /> Kliko \"{{int:usermerge-submit}}\" për të pranuar.",
"usermerge-noolduser": "Bosh emrin e vjetër",
@@ -17,9 +16,7 @@
"usermerge-submit": "Merge përdorues",
"usermerge-badtoken": "Pavlefshme redakto shenjë",
"usermerge-userdeleted": "$1 ($2) është fshirë.",
- "usermerge-userdeleted-log": "përdorues Deleted: $2 ($3)",
"usermerge-success": "Merge nga $1 ($2) për $3 ($4), është i kompletuar.",
- "usermerge-success-log": "User $2 ($3) bashkohen në $4 ($5)",
"usermerge-logpage": "Përdoruesi bashkojë log",
"usermerge-logpagetext": "Ky është një regjistër i përdoruesit bashkojë veprimet.",
"usermerge-noselfdelete": "Ju nuk mund të fshini ose përpuqni nga vetë!",
diff --git a/UserMerge/i18n/ar.json b/UserMerge/i18n/ar.json
index d6323b45..53018d1b 100644
--- a/UserMerge/i18n/ar.json
+++ b/UserMerge/i18n/ar.json
@@ -3,14 +3,13 @@
"authors": [
"Meno25",
"OsamaK",
+ "ديفيد",
"روخو",
- "محمد أحمد عبد الفتاح",
- "ديفيد"
+ "محمد أحمد عبد الفتاح"
]
},
"usermerge": "دمج وحذف المستخدمين",
"usermerge-desc": "[[Special:UserMerge|يدمج المراجع من مستخدم إلى آخر]] في قاعدة بيانات الويكي - سيحذف أيضا المستخدمين القدامى بعد الدمج. يتطلب صلاحيات ''usermerge''",
- "usermerge-badolduser": "اسم المستخدم القديم غير صحيح",
"usermerge-badnewuser": "اسم المستخدم الجديد غير صحيح",
"usermerge-nonewuser": "اسم مستخدم جديد فارغ - افتراض الدمج إلى \"$1\".<br />\nاضغط \"{{int:usermerge-submit}}\" للقبول.",
"usermerge-noolduser": "اسم المستخدم القديم فارغ",
@@ -22,9 +21,7 @@
"usermerge-submit": "دمج المستخدم",
"usermerge-badtoken": "نص تعديل غير صحيح",
"usermerge-userdeleted": "$1 ($2) تم حذفه.",
- "usermerge-userdeleted-log": "تم حذف حساب المستخدم: $2($3)",
"usermerge-success": "الدمج من $1 ($2) إلى $3 ($4) اكتمل.",
- "usermerge-success-log": "تم دمج المستخدم \"$2\" ($3) إلى \"[[User:$4|$4]]\" ($5)",
"usermerge-logpage": "سجل دمج المستخدم",
"usermerge-logpagetext": "هذا سجل بأفعال دمج المستخدمين.",
"usermerge-noselfdelete": "لا يمكنك حذف أو دمج {{GENDER:$1|نفسك}}!",
@@ -33,5 +30,10 @@
"action-usermerge": "دمج المستخدمين",
"usermerge-autopagedelete": "تم حذف الصفحة تلقائيا أثناء دمج المستخدمين",
"usermerge-page-unmoved": "تعذر نقل الصفحة $1 إلى $2.",
- "usermerge-move-log": "تم نقل الصفحة تلقائيا عند دمج الحساب \"$1\" إلى \"[[User:$2|$2]]\""
+ "usermerge-move-log": "تم نقل الصفحة تلقائيا عند دمج الحساب \"$1\" إلى \"[[User:$2|$2]]\"",
+ "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|دمج|دمجت}} حساب المستخدم \"$4\" ($5) إلى {{GENDER:$8|$6}} ($7)",
+ "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|حذف|حذفت}} حساب المستخدم \"$4\" ($5)",
+ "log-action-filter-usermerge": "نوع الفعل:",
+ "log-action-filter-usermerge-mergeuser": "دمج حساب المستخدم",
+ "log-action-filter-usermerge-deleteuser": "حذف حساب المستخدم"
}
diff --git a/UserMerge/i18n/arz.json b/UserMerge/i18n/arz.json
index 4b1854e9..d9ebc823 100644
--- a/UserMerge/i18n/arz.json
+++ b/UserMerge/i18n/arz.json
@@ -7,7 +7,6 @@
},
"usermerge": "دمج وحذف اليوزرز",
"usermerge-desc": "[[Special:UserMerge|يدمج المراجع من يوزر ليوزر]] فى قاعدة بيانات الويكى - يحذف اليوزرز القدام بعد الدمج. يتطلب صلاحيات ''usermerge''",
- "usermerge-badolduser": "اسم اليوزر القديم مش صحيح",
"usermerge-badnewuser": "اسم اليوزر الجديد مش صحيح",
"usermerge-nonewuser": "اسم يوزر جديد فارغ - افتراض الدمج إلى $1.<br />\nاضغط \"{{int:usermerge-submit}}\" للقبول.",
"usermerge-noolduser": "اسم اليوزر القديم فارغ",
@@ -18,12 +17,10 @@
"usermerge-submit": "دمج اليوزر",
"usermerge-badtoken": "نص تعديل غير صحيح",
"usermerge-userdeleted": "$1($2) تم حذفه.",
- "usermerge-userdeleted-log": "حذف اليوزر: $2($3)",
"usermerge-success": "الدمج من $1($2) إلى $3($4) اكتمل.",
- "usermerge-success-log": "اليوزر $2($3) تم دمجه مع $4($5)",
"usermerge-logpage": "سجل دمج اليوزر",
"usermerge-logpagetext": "ده سجل بأفعال دمج اليوزرز.",
- "usermerge-noselfdelete": "لا يمكنك حذف أو دمج من نفسك!",
- "usermerge-protectedgroup": "مش قادر يدمج من اليوزر - اليوزر فى مجموعة محمية.",
+ "usermerge-noselfdelete": "لا يمكنك حذف أو دمج من {{GENDER:$1|نفسك}}!",
+ "usermerge-protectedgroup": "مش قادر يدمج من {{GENDER:$1|ليوزر}}: اليوزر فى مجموعة محمية.",
"right-usermerge": "دمج اليوزرز"
}
diff --git a/UserMerge/i18n/as.json b/UserMerge/i18n/as.json
new file mode 100644
index 00000000..ed4e341b
--- /dev/null
+++ b/UserMerge/i18n/as.json
@@ -0,0 +1,9 @@
+{
+ "@metadata": {
+ "authors": [
+ "Onubadok",
+ "Paradox"
+ ]
+ },
+ "log-action-filter-usermerge-deleteuser": "ব্যৱহাৰকাৰীৰ একাউণ্ট বিলোপন"
+}
diff --git a/UserMerge/i18n/ast.json b/UserMerge/i18n/ast.json
index bdcbcf14..04fba672 100644
--- a/UserMerge/i18n/ast.json
+++ b/UserMerge/i18n/ast.json
@@ -6,7 +6,6 @@
},
"usermerge": "Fusionar y desaniciar usuarios",
"usermerge-desc": "[[Special:UserMerge|Fusiona les referencies d'un usuariu n'otru usuariu]] na base de datos de la wiki (tamién desaniciará l'usuariu antiguu darréu de la fusión). Requier permisos d'''usermerge''",
- "usermerge-badolduser": "Nome d'usuariu antiguu inválidu.",
"usermerge-badnewuser": "Nome d'usuariu nuevu inválidu",
"usermerge-nonewuser": "Nome d'usuariu nuevu baleru. Asumese la fusión en \"{{GENDER:$1|$1}}\".<br />\nCalque \"{{int:usermerge-submit}}\" p'aceutar.",
"usermerge-noolduser": "Nome d'usuariu antiguu baleru",
@@ -17,17 +16,20 @@
"usermerge-deleteolduser": "Desaniciar l'usuariu antiguu",
"usermerge-submit": "Fusionar usuariu",
"usermerge-badtoken": "Pase d'edición inválidu",
- "usermerge-userdeleted": "Desanicióse {{GENDER:$1|l'usuariu|la usuaria}} $1 ($2).",
- "usermerge-userdeleted-log": "Usuariu desaniciáu: $2 ($3)",
- "usermerge-success": "La fusión dende {{GENDER:$1|$1}} ($2) a {{GENDER:$3|$3}} ($4) ta completa.",
- "usermerge-success-log": "{{GENDER:$2|L'usuariu|La usuaria}} $2 ($3) fusionóse con {{GENDER:$4|$4}} ($5)",
+ "usermerge-userdeleted": "$1 ($2) desanicióse.",
+ "usermerge-success": "La fusión dende $1 ($2) a $3 ($4) ta completa.",
"usermerge-logpage": "Rexistru de fusión d'usuarios",
"usermerge-logpagetext": "Esti ye un rexistru d'aiciones de fusión d'usuarios.",
"usermerge-noselfdelete": "¡Nun pues desaniciate o fusionate dende {{GENDER:$1|tu mesmu}}!",
- "usermerge-protectedgroup": "Nun puede fusionase dende {{GENDER:$1|l'usuariu|la usuaria}}: Ta nun grupu protexíu.",
+ "usermerge-protectedgroup": "Nun puede fusionase dende {{GENDER:$1|l'usuariu|la usuaria}}: ta nun grupu protexíu.",
"right-usermerge": "Fusionar usuarios",
"action-usermerge": "fusionar usuarios",
- "usermerge-autopagedelete": "Desaniciao automáticamente al fusionar usuarios",
+ "usermerge-autopagedelete": "Páxina desaniciada automáticamente al fusionar usuarios",
"usermerge-page-unmoved": "La páxina $1 nun pudo treslladase a $2.",
- "usermerge-move-log": "Treslladóse la páxina automáticamente al fusionar al usuariu \"[[User:$1|$1]]\" en \"[[User:$2|{{GENDER:$2|$2}}]]\""
+ "usermerge-move-log": "Treslladóse la páxina automáticamente al fusionar la cuenta «$1» en «[[User:$2|$2]]»",
+ "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|fusionó}} la cuenta d'usuariu «$4» ($5) en {{GENDER:$8|$6}} ($7)",
+ "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|desanició}} la cuenta d'usuariu «$4» ($5)",
+ "log-action-filter-usermerge": "Tipu d'aición:",
+ "log-action-filter-usermerge-mergeuser": "Fusiones de cuentes d'usuariu",
+ "log-action-filter-usermerge-deleteuser": "Desaniciu de cuentes d'usuariu"
}
diff --git a/UserMerge/i18n/be-tarask.json b/UserMerge/i18n/be-tarask.json
index 8514d286..43dcd229 100644
--- a/UserMerge/i18n/be-tarask.json
+++ b/UserMerge/i18n/be-tarask.json
@@ -1,17 +1,16 @@
{
"@metadata": {
"authors": [
+ "Artsiom91",
"EugeneZelenko",
"Jim-by",
"Red Winged Duck",
"Renessaince",
- "Wizardist",
- "Artsiom91"
+ "Wizardist"
]
},
"usermerge": "Аб'яднаньне і выдаленьне рахункаў удзельнікаў",
"usermerge-desc": "[[Special:UserMerge|Аб'ядноўвае спасылкі аднаго ўдзельніка на іншага]] ў базе зьвестак вікі — адначасова выдаляе старыя рахункі пасьля аб'яднаньня. Патрабуе правы на ''аб'яданьне рахункаў удзельнікаў''",
- "usermerge-badolduser": "Няслушнае старое імя ўдзельніка",
"usermerge-badnewuser": "Няслушнае новае імя ўдзельніка",
"usermerge-nonewuser": "Пустое новае імя ўдзельніка. Мяркуецца аб'яднаньне з «{{GENDER:$1|$1}}».<br />\nНацісьніце «{{int:usermerge-submit}}», каб пагадзіцца.",
"usermerge-noolduser": "Пустое старое імя ўдзельніка",
@@ -23,9 +22,7 @@
"usermerge-submit": "Аб’яднаць уліковыя запісы ўдзельнікаў",
"usermerge-badtoken": "Няслушны знак рэдагаваньня",
"usermerge-userdeleted": "$1 ($2) быў выдалены.",
- "usermerge-userdeleted-log": "выдалены рахунак удзельніка «$2» ($3)",
"usermerge-success": "Аб’яднаньне $1 ($2) з $3 ($4) завершанае.",
- "usermerge-success-log": "далучаны рахунак «$2» ($3) да «[[User:$4|$4]]» ($5)",
"usermerge-logpage": "Журнал аб’яднаньня рахункаў удзельнікаў",
"usermerge-logpagetext": "Гэта журнал аб’яднаньня рахункаў удзельнікаў.",
"usermerge-noselfdelete": "Вы ня можаце выдаліць ці аб’яднаць {{GENDER:$1|уласны рахунак}}!",
diff --git a/UserMerge/i18n/bg.json b/UserMerge/i18n/bg.json
index bc9c9079..6f493269 100644
--- a/UserMerge/i18n/bg.json
+++ b/UserMerge/i18n/bg.json
@@ -2,29 +2,29 @@
"@metadata": {
"authors": [
"DCLXVI",
- "Termininja",
"StanProg",
+ "Termininja",
"Vlad5250"
]
},
"usermerge": "Сливане и изтриване на потребители",
"usermerge-desc": "[[Special:UserMerge|Сливане на приносите от един потребител в друг]] в базата от данни - след сливането изтрива стария потребител. Изисква права ''usermerge''",
- "usermerge-badolduser": "Невалиден стар потребител",
- "usermerge-badnewuser": "Невалиден нов потребител",
- "usermerge-noolduser": "Изчистване на старото потребителско име",
+ "usermerge-badnewuser": "Невалидно ново потребителско име.",
+ "usermerge-noolduser": "Изчистване на старото потребителско име.",
"usermerge-fieldset": "Потребителски имена за сливане",
"usermerge-olduser": "Стар потребител (за сливане от):",
"usermerge-newuser": "Нов потребител (за сливане в):",
"usermerge-deleteolduser": "Изтриване на стария потребител",
"usermerge-submit": "Сливане",
"usermerge-userdeleted": "$1 ($2) беше изтрит.",
- "usermerge-userdeleted-log": "изтри потребителска сметка „$2“ ($3)",
"usermerge-success": "Сливането от $1 ($2) към $3 ($4) приключи.",
- "usermerge-success-log": "сля сметка „$2“ ($3) в „[[User:$4|$4]]“ ($5)",
"usermerge-logpage": "Дневник на потребителските сливания",
"usermerge-logpagetext": "Тази страница съдържа дневник на потребителските сливания.",
"usermerge-noselfdelete": "Не е възможно да изтривате или сливате от {{GENDER:$1|себе си}}!",
"usermerge-protectedgroup": "Невъзможно е да се извърши сливане от {{GENDER:$1|потребител}}: потребителят е в защитена група.",
"right-usermerge": "Сливане на потребители",
- "action-usermerge": "сливане на потребителски сметки"
+ "action-usermerge": "сливане на потребителски сметки",
+ "log-action-filter-usermerge": "Вид на действието:",
+ "log-action-filter-usermerge-mergeuser": "Сливане на потребителска сметка",
+ "log-action-filter-usermerge-deleteuser": "Изтриване на потребителска сметка"
}
diff --git a/UserMerge/i18n/bn.json b/UserMerge/i18n/bn.json
index 748ce1ef..a8827c1e 100644
--- a/UserMerge/i18n/bn.json
+++ b/UserMerge/i18n/bn.json
@@ -1,17 +1,17 @@
{
"@metadata": {
"authors": [
- "Bellayet",
- "Zaheen",
"Aftab1995",
"Aftabuzzaman",
+ "Bellayet",
"Rasal Lia",
+ "Tahmid02016",
+ "Zaheen",
"আফতাবুজ্জামান"
]
},
"usermerge": "ব্যবহারকারী একত্রীকরণ এবং মুছে ফেলা",
"usermerge-desc": "উইকি ডাটাবেজে [[Special:UserMerge|একজন ব্যবহারকারী থেকে অপর ব্যবহারকারীর প্রতি নির্দেশনাগুলি একত্রিত করে]] - এছাড়া একত্রীকরণের পরে পুরনো ব্যবহারকারীদের মুছে দেবে। বিশেষ ''usermerge'' অধিকার আবশ্যক",
- "usermerge-badolduser": "পুরনো ব্যবহারকারী নাম অবৈধ।",
"usermerge-badnewuser": "নতুন ব্যবহারকারী নাম অবৈধ।",
"usermerge-nonewuser": "নতুন ব্যবহারকারী নাম খালি। \"{{GENDER:$1|$1}}\"-এর সাথে একত্রীকরণ করা হচ্ছে ধরা হল।<br />সম্মতি দিতে \"{{int:usermerge-submit}}\" ক্লিক করুন।",
"usermerge-noolduser": "পুরনো ব্যবহারকারী নাম খালি।",
@@ -23,9 +23,7 @@
"usermerge-submit": "ব্যবহারকারী একত্রীত করুন",
"usermerge-badtoken": "সম্পাদনা টোকেন অবৈধ।",
"usermerge-userdeleted": "$1 ($2) মুছে ফেলা হয়েছে।",
- "usermerge-userdeleted-log": "ব্যবহারকারী এক্যাউন্ট \"$2\" ($3) বাতিল হয়েছে",
"usermerge-success": "$1 ($2) থেকে $3 ($4)-এ একত্রীকরণ সম্পন্ন হয়েছে।",
- "usermerge-success-log": "\"$2\" ($3) এক্যাউন্টটি \"[[User:$4|$4]]\" ($5) এর সাথে একত্রিত হয়েছে",
"usermerge-logpage": "ব্যবহারকারী একত্রীকরণ লগ",
"usermerge-logpagetext": "এটি ব্যবহারকারী একত্রীকরনের একটি লগ।",
"usermerge-noselfdelete": "আপনি {{GENDER:$1|নিজের}} ব্যবহারকারী নাম মুছে ফেলতে বা এটি থেকে অন্য নামে একত্রিত করতে পারবেন না!",
@@ -34,5 +32,6 @@
"action-usermerge": "ব্যবহারকারী একত্রিত করার",
"usermerge-autopagedelete": "ব্যবহারকারী একত্রীত করার সময় স্বয়ংক্রিয়ভাবে অপসারিত",
"usermerge-page-unmoved": "$1 পাতাটি $2-এ সরিয়ে নেওয়া সম্ভব নয়।",
- "usermerge-move-log": "\"$1\" অ্যাকাউন্টটি \"[[User:$2|$2]]\"-এ একত্রীত করার সময় স্বয়ংক্রিয়ভাবে পাতা স্থানান্তরিত"
+ "usermerge-move-log": "\"$1\" অ্যাকাউন্টটি \"[[User:$2|$2]]\"-এ একত্রীত করার সময় স্বয়ংক্রিয়ভাবে পাতা স্থানান্তরিত",
+ "log-action-filter-usermerge-deleteuser": "ব্যবহারকারী অ্যাকাউন্ট অপসারণ"
}
diff --git a/UserMerge/i18n/br.json b/UserMerge/i18n/br.json
index 0708be67..d2131f73 100644
--- a/UserMerge/i18n/br.json
+++ b/UserMerge/i18n/br.json
@@ -7,7 +7,6 @@
},
"usermerge": "Kendeuziñ an implijer ha diverkañ",
"usermerge-desc": "[[Special:UserMerge|Kendeuziñ a ra daveennoù un implijer gant re unan bennak all]] e diaz titouroù ar wiki - diverkañ a raio ivez ar c'hendeuzadennoù implijer kozh da zont. Rekis eo kaout aotreoù ''kendeuziñ''",
- "usermerge-badolduser": "Anv implijer kozh direizh",
"usermerge-badnewuser": "Anv implijer nevez direizh",
"usermerge-nonewuser": "Anv implijer nevez goullo - soñjal a ra deomp e fell deoc'h kendeuziñ davet \"$1\".<br />\nKlikañ war \"{{int:usermerge-submit}}\" evit asantiñ.",
"usermerge-noolduser": "Anv implijer kozh goullo",
@@ -18,9 +17,7 @@
"usermerge-submit": "Kendeuziñ implijer",
"usermerge-badtoken": "Jedouer aozañ direizh",
"usermerge-userdeleted": "Diverket eo bet $1 ($2).",
- "usermerge-userdeleted-log": "Implijer diverket : $2($3)",
"usermerge-success": "Kendeuzadenn adal $1 ($2) davet $3 ($4) kaset da benn vat.",
- "usermerge-success-log": "Implijer $2 ($3) kendeuzet davet $4 ($5)",
"usermerge-logpage": "Marilh kendeuzadennoù an implijerien",
"usermerge-logpagetext": "Setu aze marilh kendeuzadennoù an implijerien.",
"usermerge-noselfdelete": "N'hallit ket diverkañ pe kendeuziñ adal pe davedoc'h hoc'h-unan",
diff --git a/UserMerge/i18n/bs.json b/UserMerge/i18n/bs.json
index 05a3376f..dd35a496 100644
--- a/UserMerge/i18n/bs.json
+++ b/UserMerge/i18n/bs.json
@@ -7,7 +7,6 @@
},
"usermerge": "Spajanje i brisanje korisnika",
"usermerge-desc": "[[Special:UserMerge|Spaja doprinose jednog korisnika na drugog]] u bazi podataka wikija – obrisat će i stare korisnike po spajanju. Zahtijeva pravo ''usermerge''",
- "usermerge-badolduser": "Nevaljano staro korisničko ime",
"usermerge-badnewuser": "Nevaljano novo korisničko ime",
"usermerge-nonewuser": "Upišite novo korisničko ime. Pretpostavljam da se spaja na \"{{GENDER:$1|$1}}\".<br />\nKliknite na \"{{int:usermerge-submit}}\" za prihvatanje.",
"usermerge-noolduser": "Prazno staro korisničko ime",
@@ -17,10 +16,8 @@
"usermerge-deleteolduser": "Obriši starog korisnika",
"usermerge-submit": "Spoji korisnika",
"usermerge-badtoken": "Nevaljan token izmjene",
- "usermerge-userdeleted": "{{GENDER:$1|Korisnik|Korisnica}} $1 ($2) {{GENDER:$1|obrisan|obrisana}} je.",
- "usermerge-userdeleted-log": "Obrisani korisnik: $2 ($3)",
+ "usermerge-userdeleted": "{{GENDER:$1|Korisnik|Korisnica}} $1 ($2) {{GENDER:$1|izbrisan|izbrisana}} je.",
"usermerge-success": "Spajanje sa {{GENDER:$1|$1}} ($2) na {{GENDER:$3|$3}} ($4) je završeno.",
- "usermerge-success-log": "{{GENDER:$2|Korisnik|Korisnica}} $2 ($3) {{GENDER:$2|spojen|spojena}} je sa {{GENDER:$4|$4}} ($5)",
"usermerge-logpage": "Zapisnik spajanja korisnika",
"usermerge-logpagetext": "Ovo je zapisnik akcija spajanja korisnika.",
"usermerge-noselfdelete": "Ne možete se obrisati niti spojiti {{GENDER:$1|sami sa sobom}}!",
diff --git a/UserMerge/i18n/ca.json b/UserMerge/i18n/ca.json
index 1e810b80..ba116b6a 100644
--- a/UserMerge/i18n/ca.json
+++ b/UserMerge/i18n/ca.json
@@ -6,14 +6,12 @@
"Solde"
]
},
- "usermerge-badolduser": "Nom d'usuari antic no vàlid",
"usermerge-badnewuser": "Nom d'usuari nou no vàlid",
"usermerge-noolduser": "Nom d'usuari antic sense especificar",
"usermerge-olduser": "Antic usuari (barreja des de):",
"usermerge-newuser": "Nou usuari (barreja a):",
"usermerge-deleteolduser": "Elimina l'antic usuari",
"usermerge-submit": "Combina els usuaris",
- "usermerge-userdeleted-log": "Usuari eliminat: $2 ($3)",
"usermerge-logpage": "Registre de fusions d'usuaris",
"right-usermerge": "Fusionar usuaris"
}
diff --git a/UserMerge/i18n/ce.json b/UserMerge/i18n/ce.json
index c109c09a..b9d0565f 100644
--- a/UserMerge/i18n/ce.json
+++ b/UserMerge/i18n/ce.json
@@ -6,10 +6,9 @@
},
"usermerge": "Декъашхойн дӀаяздарш вовшахтохар а, дӀадаха а",
"usermerge-desc": "[[Special:UserMerge|Декъашхочун тӀера кхечун тӀе]] викин базан чохь, шира декъашхой дӀабохар бу. Оьшу бакъо ''usermerge''",
- "usermerge-badolduser": "Нийса йоцу декъашхочун шира цӀе",
"usermerge-badnewuser": "Нийса йоцу декъашхочун керла цӀе",
- "usermerge-nonewuser": "Декъашхочун керла цӀе еса ю — вовшахтухучу хенахь «{{GENDER:$1|$1}}».<br />\nТӀетаӀае «{{int:usermerge-submit}}», дешдерг кхочушдан.",
- "usermerge-noolduser": "Декъашхочун шира цӀе еса ю",
+ "usermerge-nonewuser": "Декъашхочун керла цӀе яьсса ю — вовшахтухучу хенахь «{{GENDER:$1|$1}}».<br />\nТӀетаӀае «{{int:usermerge-submit}}», дешдерг кхочушдан.",
+ "usermerge-noolduser": "Декъашхочун шира цӀе яьсса ю",
"usermerge-same-old-and-new-user": "Шира а керла цӀе башха хела еза.",
"usermerge-fieldset": "Вовшахтухуш долу декъашхойн дӀяздарш",
"usermerge-olduser": "Шира декъашхочун дӀаяздар (вовшахтоха):",
@@ -18,9 +17,7 @@
"usermerge-submit": "декъашхой вовшахтохар",
"usermerge-badtoken": "Нисдаран билгало нийса яц",
"usermerge-userdeleted": "$1 ($2) {{GENDER:$1|дӀаяьккхина хилла}}.",
- "usermerge-userdeleted-log": "Декъашхочун дӀаяздар $2 ($3) дӀадаьккхина",
"usermerge-success": "Вовшахтохар {{GENDER:$1|$1}} ($2) {{GENDER:$3|$3}} ($4) чекхдели.",
- "usermerge-success-log": "{{GENDER:$2|Декъашхочун дӀаяздар}} $2 ($3) {{GENDER:$2|тоьхна}} {{GENDER:$4|$4}} ($5) тӀе",
"usermerge-logpage": "Декъашхой вовшахтохаран тептар",
"usermerge-logpagetext": "ХӀара декъашхой вовшахтохаран тептар ду.",
"usermerge-noselfdelete": "{{GENDER:$1|Хьайн декъашхочун дӀаяздар}} дӀадаккха я вовшахтоха хьа таро яц!",
diff --git a/UserMerge/i18n/cs.json b/UserMerge/i18n/cs.json
index 929542fd..12c42f34 100644
--- a/UserMerge/i18n/cs.json
+++ b/UserMerge/i18n/cs.json
@@ -2,12 +2,12 @@
"@metadata": {
"authors": [
"Matěj Grabovský",
+ "Matěj Suchánek",
"Mormegil"
]
},
"usermerge": "Slučování a mazání uživatelů",
"usermerge-desc": "[[Special:UserMerge|Slučuje odkazy na jednoho uživatele na odkazy na druhého]] v databázi wiki; také následně smaže starého uživatele. Vyžaduje oprávnění ''usermerge''.",
- "usermerge-badolduser": "Původní uživatelské jméno je neplatné",
"usermerge-badnewuser": "Neplatné nové uživatelské jmnéo",
"usermerge-nonewuser": "Nové uživatelské jméno je prázdné – předpokládá se sloučení do „$1“.<br />\nPotvrdit můžete kliknutím na „{{int:usermerge-submit}}“.",
"usermerge-noolduser": "Původní uživatelské jméno je prázdné",
@@ -18,17 +18,20 @@
"usermerge-deleteolduser": "Smazat původního uživatele",
"usermerge-submit": "Sloučit uživatele",
"usermerge-badtoken": "Neplatný editační token",
- "usermerge-userdeleted": "$1 ($2) {{GENDER:$1|byl smazán|byla smazána}}.",
- "usermerge-userdeleted-log": "Smazaný uživatel: $2 ($3)",
- "usermerge-success": "Sloučení z {{GENDER:$1|$1}} ($2) do {{GENDER:$3|$3}} ($4) je dokončeno.",
- "usermerge-success-log": "{{GENDER:$2|Uživatel|Uživatelka}} $2 ($3) {{GENDER:$2|byl sloučen|byla sloučena}} do {{GENDER:$4|uživatele|uživatelky}} $4 ($5)",
+ "usermerge-userdeleted": "Účet $1 ($2) byl smazán.",
+ "usermerge-success": "Sloučení účtu $1 ($2) do $3 ($4) je dokončeno.",
"usermerge-logpage": "Kniha slučování uživatelů",
"usermerge-logpagetext": "Toto je záznam slučování uživatelů.",
"usermerge-noselfdelete": "{{GENDER:$1|Nemůžete}} smazat nebo sloučit svůj vlastní účet!",
- "usermerge-protectedgroup": "Nebylo možné sloučit {{GENDER:$1|uvedeného uživatele|uvedenou uživatelku}} – uživatel je v chráněné skupině.",
+ "usermerge-protectedgroup": "Nebylo možné sloučit {{GENDER:$1|uvedeného uživatele|uvedenou uživatelku}} – {{GENDER:$1|uživatel|uživatelka}} je v chráněné skupině.",
"right-usermerge": "Slučování uživatelů",
"action-usermerge": "slučovat uživatele",
- "usermerge-autopagedelete": "Automaticky smazáno při sloučení uživatelů",
+ "usermerge-autopagedelete": "Automaticky smazaná stránka při sloučení uživatelů",
"usermerge-page-unmoved": "Stránku $1 nebylo možno přesunout na $2.",
- "usermerge-move-log": "Automaticky přesunuto při sloučení {{GENDER:$1|uživatele|uživatelky}} „[[User:$1|$1]]“ do [[User:$2|$2]]“"
+ "usermerge-move-log": "Automaticky přesunutá stránka při sloučení účtu „$1“ do „[[User:$2|$2]]“",
+ "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|sloučil|sloučila}} účet „$4“ ($5) do {{GENDER:$8|$6}} ($7)",
+ "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|smazal|smazala}} účet „$4“ ($5)",
+ "log-action-filter-usermerge": "Typ akce:",
+ "log-action-filter-usermerge-mergeuser": "Sloučení uživatelského účtu",
+ "log-action-filter-usermerge-deleteuser": "Smazání uživatelského účtu"
}
diff --git a/UserMerge/i18n/da.json b/UserMerge/i18n/da.json
index a8877633..0887fe77 100644
--- a/UserMerge/i18n/da.json
+++ b/UserMerge/i18n/da.json
@@ -4,5 +4,7 @@
"Saederup92"
]
},
- "usermerge-deleteolduser": "Slet gammel bruger"
+ "usermerge-deleteolduser": "Slet gammel bruger",
+ "log-action-filter-usermerge": "Handlingstype:",
+ "log-action-filter-usermerge-deleteuser": "Sletning af brugerkonto"
}
diff --git a/UserMerge/i18n/de.json b/UserMerge/i18n/de.json
index 81ed2886..650551da 100644
--- a/UserMerge/i18n/de.json
+++ b/UserMerge/i18n/de.json
@@ -11,8 +11,7 @@
]
},
"usermerge": "Benutzerkonten zusammenführen und löschen",
- "usermerge-desc": "Ergänzt eine [[Special:UserMerge|Spezialseite]] zum Zusammenführen von Benutzerkonten und der anschließenden Löschung des alten Benutzerkontos",
- "usermerge-badolduser": "Der alte Benutzername ist ungültig.",
+ "usermerge-desc": "Erweitert das Wiki um eine [[Special:UserMerge|Spezialseite]] zum Zusammenführen von Benutzerkonten mit anschließender Löschung des alten Benutzerkontos",
"usermerge-badnewuser": "Der neue Benutzername ist ungültig.",
"usermerge-nonewuser": "Es wurde kein neuer Benutzername angegeben. Daher wird eine Zusammenführung mit „{{GENDER:$1|$1}}“ angenommen.<br />\nZum Ausführen auf „{{int:usermerge-submit}}“ klicken.",
"usermerge-noolduser": "Es wurde kein neuer Benutzername angegeben.",
@@ -24,9 +23,7 @@
"usermerge-submit": "Benutzerkonten zusammenführen",
"usermerge-badtoken": "Ungültiges Bearbeitungstoken",
"usermerge-userdeleted": "„$1“ ($2) wurde gelöscht.",
- "usermerge-userdeleted-log": "hat das Benutzerkonto „$2“ ($3) gelöscht",
"usermerge-success": "Die Zusammenführung von „$1“ ($2) nach „$3“ ($4) war erfolgreich.",
- "usermerge-success-log": "hat das Benutzerkonto „$2“ ($3) in „[[User:$4|$4]]“ ($5) zusammengeführt",
"usermerge-logpage": "Benutzerkontenzusammenführungs-Logbuch",
"usermerge-logpagetext": "Dies ist das Logbuch der Benutzerkontenzusammenführungen.",
"usermerge-noselfdelete": "Die Zusammenführung mit {{GENDER:$1|dem eigenen Benutzerkonto}} ist nicht möglich.",
@@ -35,5 +32,10 @@
"action-usermerge": "Benutzer zusammenzuführen",
"usermerge-autopagedelete": "Bei der Zusammenführung der Benutzer automatisch gelöschte Seite",
"usermerge-page-unmoved": "Die Seite „$1“ konnte nicht nach „$2“ verschoben werden.",
- "usermerge-move-log": "Die Seite wurde während der Benutzerkontenzusammenführung von „$1“ nach „[[User:$2|$2]]“ automatisch verschoben"
+ "usermerge-move-log": "Die Seite wurde während der Benutzerkontenzusammenführung von „$1“ nach „[[User:$2|$2]]“ automatisch verschoben",
+ "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|führte}} das Benutzerkonto „$4“ ($5) in {{GENDER:$8|$6}} zusammen ($7)",
+ "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|löschte}} das Benutzerkonto „$4“ ($5)",
+ "log-action-filter-usermerge": "Aktionstyp:",
+ "log-action-filter-usermerge-mergeuser": "Benutzerkontenzusammenführung",
+ "log-action-filter-usermerge-deleteuser": "Benutzerkontenlöschung"
}
diff --git a/UserMerge/i18n/diq.json b/UserMerge/i18n/diq.json
index 4b474479..35518618 100644
--- a/UserMerge/i18n/diq.json
+++ b/UserMerge/i18n/diq.json
@@ -1,17 +1,40 @@
{
"@metadata": {
"authors": [
+ "1917 Ekim Devrimi",
+ "Asmen",
"Erdemaslancan",
- "Marmase",
- "Mirzali",
"Kumkumuk",
- "Asmen"
+ "Marmase",
+ "Mirzali"
]
},
+ "usermerge": "Karbera pêtewr kerê ya zi bıesternê",
+ "usermerge-desc": "Viki database de [[Special:UserMerge|referansan yew karberi ra ê bini tewr kerış]] - Tewr kerdışi dıme karberanê verênan zi esterneno. Bağseyiya ''karberapêtewrkerdış'' lazıma",
+ "usermerge-badnewuser": "Nameyê kerberiyo neweyo nêvêrde.",
+ "usermerge-nonewuser": "Veng namey karberiyo newe. Zey \"{{GENDER:$1|$1}}\" pêtewr kerdış hesabêno.<br />\nSeba qebul kerdışi buttona \"{{int:usermerge-submit}}\" bıploğnê .",
+ "usermerge-noolduser": "Nameyê karberiyo kehano veng.",
+ "usermerge-same-old-and-new-user": "Namey karberê verêni u neweyêni wa ca bo",
+ "usermerge-fieldset": "Nameyê karberanê ke yew bê",
+ "usermerge-olduser": "Karbero kehan (ra yew kerê):",
+ "usermerge-newuser": "Karbero newe (de biya pê):",
+ "usermerge-deleteolduser": "Karberê kehani bestere",
"usermerge-submit": "Karbera zewkerden",
- "usermerge-userdeleted": "$1 ($2) besterna.",
- "usermerge-userdeleted-log": "Karbero ke besteriya: $2 ($3)",
+ "usermerge-badtoken": "Ratnoğe xırab vırnayışi",
+ "usermerge-userdeleted": "$1 ($2) esteriya .",
+ "usermerge-success": "Karberê $1 ($2) ra hetê $3 ($4) ra kerber biyo tewr.",
"usermerge-logpage": "Qeydê bestnayışê karberi",
+ "usermerge-logpagetext": "No yew rocekê karbera pêtewr kerışo",
+ "usermerge-noselfdelete": "{{GENDER:$1|Şıma }} nêşenê xo pêtewr kerê ya zi bıesternê !",
+ "usermerge-protectedgroup": "{{GENDER:$1|Karbero}} pêtewr nêbeno: Karber şeveknaye yew grube miyan dero.",
"right-usermerge": "Karberan zewkerden",
- "action-usermerge": "Karberan zewkerden"
+ "action-usermerge": "Karberan zewkerden",
+ "usermerge-autopagedelete": "Karbera pêtewr kerdış de esteriyaye pela",
+ "usermerge-page-unmoved": "Pela $1 ra $2 nêwegêriyê.",
+ "usermerge-move-log": "Hesabê \"$1\" hesabê \"[[User:$2|$2]]\" ya pêtewr kerdış de pela otomatikmen berd.",
+ "logentry-usermerge-mergeuser": "$1 hesabê karberi \"$4\" ($5) ze {{GENDER:$8|$6}} ($7) {{GENDER:$2|biya pêtewr }}",
+ "logentry-usermerge-deleteuser": "$1 hesabê karberi {{GENDER:$2|esteriya}} \"$4\" ($5)",
+ "log-action-filter-usermerge": "Tipê fealiyeti:",
+ "log-action-filter-usermerge-mergeuser": "Pêrabestışê hesabê karberi",
+ "log-action-filter-usermerge-deleteuser": "Esterıtışê hesabê karberi"
}
diff --git a/UserMerge/i18n/dsb.json b/UserMerge/i18n/dsb.json
index 67fd7961..6f54c576 100644
--- a/UserMerge/i18n/dsb.json
+++ b/UserMerge/i18n/dsb.json
@@ -6,7 +6,6 @@
},
"usermerge": "Wužywarjow zjadnośiś a wulašowaś",
"usermerge-desc": "[[Special:UserMerge|Zjadnośujo reference wót jadnogo wužywarja k drugemu wužywarjeju]] we wikijowej datowej bance - buźo teke wšych starych wužywarjow pó zjadnosénju lašowaś. Pomina se pšawa ''usermerge''",
- "usermerge-badolduser": "Njepłaśiwe stare wužywarske mě",
"usermerge-badnewuser": "Njepłaśiwe nowe wužywarske mě",
"usermerge-nonewuser": "Prozne nowe wužywarske mě - góda se zjadnośenje k \"{{GENDER:$1|$1}}\".<br />\nKlikni na \"{{int:usermerge-submit}}\", aby akceptěrował.",
"usermerge-noolduser": "Prozne stare wužywarske mě",
@@ -18,9 +17,7 @@
"usermerge-submit": "Wužywarja zjadnośiś",
"usermerge-badtoken": "Njepłaśiwy wobźěłowański token",
"usermerge-userdeleted": "$1 ($2) jo se wulašował.",
- "usermerge-userdeleted-log": "Wulašowany wužywaŕ: $2 ($3)",
"usermerge-success": "Zjadnosénje wot $1 ($2) z {{GENDER:$3|$3}} ($4) jo skóńcone.",
- "usermerge-success-log": "Wužywaŕ $2 ($3) jo se z {{GENDER:$4|$4}} ($5) zjadnośił",
"usermerge-logpage": "Protokol wužywarskich zjadnośenjow",
"usermerge-logpagetext": "To jo protokol akcijow wužywarskich zjadnośenjow.",
"usermerge-noselfdelete": "Njamóžoš se ze sobu zjadnośiś!",
diff --git a/UserMerge/i18n/el.json b/UserMerge/i18n/el.json
index 4d1ea3df..bf9a5878 100644
--- a/UserMerge/i18n/el.json
+++ b/UserMerge/i18n/el.json
@@ -3,15 +3,14 @@
"authors": [
"Consta",
"Crazymadlover",
+ "KATRINE1992",
"Omnipaedista",
"Protnet",
- "ZaDiak",
- "KATRINE1992"
+ "ZaDiak"
]
},
"usermerge": "Συγχώνευση και διαγραφή χρηστών",
"usermerge-desc": "[[Special:UserMerge|Συγχωνεύει αναφορές από ένα χρήστη σε έναν άλλο χρήστη]] στη βάση δεδομένων του wiki - μπορεί να διαγράψει επίσης τους παλιούς χρήστες μετά τη συγχώνευση. Απαιτεί δικαιώματα ''usermerge''",
- "usermerge-badolduser": "Μη έγκυρο παλιό όνομα χρήστη",
"usermerge-badnewuser": "Μη έγκυρο νέο όνομα χρήστη",
"usermerge-nonewuser": "Το νέο όνομα χρήστη είναι κενό. Θεωρείται αυτόματα ότι η συγχώνευση θα γίνει {{GENDER:$1|στον|στην}} \"$1\".<br />\nΚάντε κλικ στο κουμπί \"{{int:usermerge-submit}}\" για αποδοχή.",
"usermerge-noolduser": "Το παλιό όνομα χρήστη είναι κενό.",
@@ -23,9 +22,7 @@
"usermerge-submit": "Συγχώνευση χρήστη",
"usermerge-badtoken": "Άκυρο δείγμα επεξεργασίας",
"usermerge-userdeleted": "{{GENDER:$1|Ο|Η}} $1 ($2) έχει διαγραφεί.",
- "usermerge-userdeleted-log": "Διαγεγραμμένος χρήστης: $2 ($3)",
"usermerge-success": "Η συγχώνευση από {{GENDER:$1|τον|την}} $1 ($2) {{GENDER:$3|στον|στην}} $3 ($4) ολοκληρώθηκε.",
- "usermerge-success-log": "{{GENDER:$2|Ο χρήστης|Η χρήστρια}} $2 ($3) συγχωνεύθηκε {{GENDER:$4|στον|στην}} $4 ($5)",
"usermerge-logpage": "Αρχείο καταγραφής συγχωνεύσεων χρηστών",
"usermerge-logpagetext": "Αυτό είναι ένα αρχείο καταγραφής συγχωνεύσεων.",
"usermerge-noselfdelete": "Δεν μπορείτε να διαγραφείτε ή να συγχωνευτείτε από {{GENDER:$1|μόνος|μόνη}} σας!",
diff --git a/UserMerge/i18n/en.json b/UserMerge/i18n/en.json
index ad8cb139..96c2b042 100644
--- a/UserMerge/i18n/en.json
+++ b/UserMerge/i18n/en.json
@@ -4,7 +4,6 @@
},
"usermerge": "Merge and delete users",
"usermerge-desc": "[[Special:UserMerge|Merges references from one user to another user]] in the wiki database - will also delete old users following merge. Requires ''usermerge'' privileges",
- "usermerge-badolduser": "Invalid old username.",
"usermerge-badnewuser": "Invalid new username.",
"usermerge-nonewuser": "Empty new username. Assuming merge to \"{{GENDER:$1|$1}}\".<br />\nClick \"{{int:usermerge-submit}}\" to accept.",
"usermerge-noolduser": "Empty old username.",
diff --git a/UserMerge/i18n/eo.json b/UserMerge/i18n/eo.json
index 88b0ec60..6af81011 100644
--- a/UserMerge/i18n/eo.json
+++ b/UserMerge/i18n/eo.json
@@ -1,26 +1,24 @@
{
"@metadata": {
"authors": [
+ "KuboF",
"Melancholie",
"Michawiki",
- "Yekrats",
- "KuboF"
+ "Robin van der Vliet",
+ "Yekrats"
]
},
"usermerge": "Kunigi kaj forigi uzantojn",
- "usermerge-badolduser": "Nevalida malnova salutnomo",
- "usermerge-badnewuser": "Nevalida nova salutnomo",
- "usermerge-noolduser": "Malplena malnova salutnomo",
- "usermerge-fieldset": "Kunigotaj salutnomoj",
+ "usermerge-badnewuser": "Nevalida nova uzantnomo",
+ "usermerge-noolduser": "Malplena malnova uzantnomo",
+ "usermerge-fieldset": "Kunigotaj uzantnomoj",
"usermerge-olduser": "Malnova uzanto (kunigante de):",
"usermerge-newuser": "Nova uzanto (kunigante al):",
"usermerge-deleteolduser": "Forigi malnovan uzanton",
"usermerge-submit": "Kunigi uzanton",
"usermerge-badtoken": "Nevalida redakta ĵetono",
"usermerge-userdeleted": "$1 ($2) estis forigita.",
- "usermerge-userdeleted-log": "Forigis uzanton: $2 ($3)",
"usermerge-success": "Kunigado de $1 ($2) al $3 ($4) kompletiĝis.",
- "usermerge-success-log": "Uzanto $2 ($3) kunigita al $4 ($5)",
"usermerge-logpage": "Protokolo pri kunigado de uzantoj",
"usermerge-logpagetext": "Jen protokolo de kunigadoj de uzantoj",
"usermerge-noselfdelete": "Vi ne povas forigi aŭ kunigi de vi mem!",
diff --git a/UserMerge/i18n/es.json b/UserMerge/i18n/es.json
index 93ccd946..928067e5 100644
--- a/UserMerge/i18n/es.json
+++ b/UserMerge/i18n/es.json
@@ -4,18 +4,18 @@
"Armando-Martin",
"Crazymadlover",
"Dferg",
+ "Dgstranz",
+ "Fitoschido",
"Imre",
+ "Macofe",
"MarcoAurelio",
- "Sanbec",
- "Fitoschido",
"Nemo bis",
- "Macofe",
- "Dgstranz"
+ "Sanbec",
+ "Tiberius1701"
]
},
"usermerge": "Fusionar y borrar usuarios",
"usermerge-desc": "[[Special:UserMerge|Fusiona referencias de un usuario a otro usuario]] en la base de datos wiki - también borrará los usuarios antiguos como consecuencia de la fusión. Se requieren los permisos de ''usermerge''",
- "usermerge-badolduser": "El nombre de usuario anterior no es válido.",
"usermerge-badnewuser": "El nombre de usuario nuevo no es válido.",
"usermerge-nonewuser": "Nuevo nombre de usuario vacío - asumiendo fusión en «$1».<br />\nHaga clic en «{{int:usermerge-submit}}» para aceptar.",
"usermerge-noolduser": "Nombre de usuario antiguo vacío",
@@ -27,9 +27,7 @@
"usermerge-submit": "Fusionar usuario",
"usermerge-badtoken": "Ficha de edición inválida",
"usermerge-userdeleted": "Se borró a $1 ($2).",
- "usermerge-userdeleted-log": "borró la cuenta de usuario «$2» ($3)",
"usermerge-success": "Se completó la combinación de $1 ($2) a $3 ($4).",
- "usermerge-success-log": "fusionó la cuenta «$2» ($3) con «[[User:$4|$4]]» ($5)",
"usermerge-logpage": "Registro de fusiones del usuario",
"usermerge-logpagetext": "Este es un registro de fusiones de cuentas de usuario.",
"usermerge-noselfdelete": "No puedes borrarte o fusionarte tú {{GENDER:$1|mismo|misma}}.",
@@ -38,5 +36,10 @@
"action-usermerge": "fusionar usuarios",
"usermerge-autopagedelete": "Borrada automáticamente al fusionar usuarios",
"usermerge-page-unmoved": "La página $1 no pudo trasladarse a $2.",
- "usermerge-move-log": "Página trasladada automáticamente al fusionar la cuenta «$1» con «[[User:$2|$2]]»"
+ "usermerge-move-log": "Página trasladada automáticamente al fusionar la cuenta «$1» con «[[User:$2|$2]]»",
+ "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|fusionó}} la cuenta de usuario «$4» ($5) en la cuenta {{GENDER:$8|$6}} ($7)",
+ "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|borró}} la cuenta de usuario «$4» ($5)",
+ "log-action-filter-usermerge": "Tipo de acción:",
+ "log-action-filter-usermerge-mergeuser": "Fusiones de cuentas de usuario",
+ "log-action-filter-usermerge-deleteuser": "Borrado de cuentas de usuario"
}
diff --git a/UserMerge/i18n/et.json b/UserMerge/i18n/et.json
index 41b13f05..4132fa55 100644
--- a/UserMerge/i18n/et.json
+++ b/UserMerge/i18n/et.json
@@ -5,7 +5,6 @@
]
},
"usermerge-desc": "[[Special:UserMerge|Ühendab vikiandmebaasis kasutaja nimetamised teise kasutajaga]]. Ühendamise järel kustutab vanad kasutajad. Nõuab õigust \"usermerge\".",
- "usermerge-badolduser": "Vigane vana kasutajanimi",
"usermerge-badnewuser": "Vigane uus kasutajanimi",
"usermerge-userdeleted": "$1 ($2) on kustutatud.",
"usermerge-logpage": "Kasutajate ühendamislogi",
diff --git a/UserMerge/i18n/eu.json b/UserMerge/i18n/eu.json
index a5fe1784..6761eec6 100644
--- a/UserMerge/i18n/eu.json
+++ b/UserMerge/i18n/eu.json
@@ -2,12 +2,12 @@
"@metadata": {
"authors": [
"An13sa",
+ "Joseba",
+ "Mikel Ibaiba",
"Theklan",
- "Xabier Armendaritz",
- "Mikel Ibaiba"
+ "Xabier Armendaritz"
]
},
- "usermerge-badolduser": "Baliogabeko lankide izen zaharra",
"usermerge-badnewuser": "Baliogabeko lankide izen berria",
"usermerge-noolduser": "Lankide izen zahar hutsa",
"usermerge-olduser": "Lankide zaharra (nondik batu):",
@@ -15,10 +15,8 @@
"usermerge-deleteolduser": "Ezabatu lankide zaharra",
"usermerge-submit": "Lankidea batu",
"usermerge-badtoken": "Aldaketa token ez baliagarria",
- "usermerge-userdeleted": "{{GENDER:$1|$1}} ($2) ezabatua izan da.",
- "usermerge-userdeleted-log": "Ezabatutako lankidea: $2 ($3)",
+ "usermerge-userdeleted": "$1 ($2) ezabatu da.",
"usermerge-success": "$1(e)tik ($2) $3(e)ra ($4) batzea burutu da.",
- "usermerge-success-log": "$2 ($3) lankidea $4 ($5) lankidera batu da",
"usermerge-logpage": "Lankide batze loga",
"usermerge-logpagetext": "Log hau lankide batze ekintzena da.",
"usermerge-noselfdelete": "Ezin duzu zure burua ezabatu edo batu!",
diff --git a/UserMerge/i18n/fa.json b/UserMerge/i18n/fa.json
index ab7bc888..665aa60c 100644
--- a/UserMerge/i18n/fa.json
+++ b/UserMerge/i18n/fa.json
@@ -1,21 +1,20 @@
{
"@metadata": {
"authors": [
+ "Alirezaaa",
"Armin1392",
"BlueDevil",
"Ebraminio",
"Huji",
+ "Ladsgroup",
"Meisam",
"Mjbmr",
"Reza1615",
- "ZxxZxxZ",
- "Alirezaaa",
- "Ladsgroup"
+ "ZxxZxxZ"
]
},
"usermerge": "ادغام و حذف‌کردن کاربران",
"usermerge-desc": "[[Special:UserMerge|ادغام منابع از یک کاربر به کاربر دیگر]] در پایگاه اطلاعاتی ویکی - همچنین کاربران قدیمی ادغام زیر حذف خواهند شد. نیازمند امتیازات ''ادغام کاربر''",
- "usermerge-badolduser": "نام کاربری قدیمی نامعتبر",
"usermerge-badnewuser": "نام کاربری تازه نامعتبر",
"usermerge-nonewuser": "نام کاربری جدید خالی. فرض بر ادغام به \"{{GENDER:$1|$1}}\".<br /> برای قبول کردن \"{{int:usermerge-submit}}\" را کلیک کنید.",
"usermerge-noolduser": "نام کاربری قدیمی خالی",
@@ -27,9 +26,7 @@
"usermerge-submit": "یکی کردن کاربر",
"usermerge-badtoken": "نشانهٔ ویرایش نامعتبر.",
"usermerge-userdeleted": "$1 ($2) پاک شد.",
- "usermerge-userdeleted-log": "کاربر «$2» حذف شد ($3)",
"usermerge-success": "یکی‌کردن از $1 ($2) به $3 ($4) کامل شد.",
- "usermerge-success-log": "کاربر «$2» ($3) با «[[User:$4|$4]]» ($5) یکی شد",
"usermerge-logpage": "سیاههٔ ادغام کاربر",
"usermerge-logpagetext": "این سیاهه‌ی ادغام فعالیت‌های کاربر است.",
"usermerge-noselfdelete": "شما نمی‌توانید {{GENDER:$1|خودتان}} را یکی یا حذف کنید!",
diff --git a/UserMerge/i18n/fi.json b/UserMerge/i18n/fi.json
index 27f5c610..e709f55f 100644
--- a/UserMerge/i18n/fi.json
+++ b/UserMerge/i18n/fi.json
@@ -1,22 +1,22 @@
{
"@metadata": {
"authors": [
+ "01miki10",
"Cimon Avaro",
"Crt",
"Nike",
"Silvonen",
"Str4nd",
"Stryn",
+ "Valtlait",
"VezonThunder",
- "Vililikku",
- "01miki10"
+ "Vililikku"
]
},
"usermerge": "Käyttäjätunnusten yhdistys ja poisto",
- "usermerge-desc": "[[Special:UserMerge|Yhdistää viittaukset yhdestä käyttäjästä toiseen]] wikin tietokannassa - poistaa myös vanhat käyttäjät yhdistämisen jälkeen. Vaatii oikeuden \"usermerge\"",
- "usermerge-badolduser": "Vanha käyttäjätunnus ei kelpaa",
+ "usermerge-desc": "[[Special:UserMerge|Yhdistää viittaukset yhdestä käyttäjästä toiseen]] wikin tietokannassa - poistaa myös vanhat käyttäjät yhdistämisen jälkeen. Vaatii oikeuden ”usermerge”",
"usermerge-badnewuser": "Uusi käyttäjätunnus ei kelpaa",
- "usermerge-nonewuser": "Uusi käyttäjätunnus -kenttä on tyhjä. Oletetaan yhdistäminen tunnukseen \"{{GENDER:$1|$1}}\". <br /> \nNapsauta \"{{int:usermerge-submit}}\" hyväksyäksesi.",
+ "usermerge-nonewuser": "Uusi käyttäjätunnus -kenttä on tyhjä. Oletetaan yhdistäminen tunnukseen ”{{GENDER:$1|$1}}”. <br /> \nNapsauta \"{{int:usermerge-submit}}\" hyväksyäksesi.",
"usermerge-noolduser": "Vanha käyttäjätunnus ei voi olla tyhjä.",
"usermerge-same-old-and-new-user": "Vanhan ja uuden käyttäjänimen on oltava eroavat.",
"usermerge-fieldset": "Yhdistettävät käyttäjänimet",
@@ -24,11 +24,9 @@
"usermerge-newuser": "Uusi käyttäjä (mihin yhdistetään)",
"usermerge-deleteolduser": "Poista vanha käyttäjä",
"usermerge-submit": "Yhdistä käyttäjä",
- "usermerge-badtoken": "Virheellinen muokkauslipuke",
+ "usermerge-badtoken": "Virheellinen muokkauspoletti.",
"usermerge-userdeleted": "$1 ($2) on poistettu.",
- "usermerge-userdeleted-log": "poisti käyttäjätunnuksen \"$2\" ($3)",
"usermerge-success": "Yhdistäminen tunnuksesta $1 ($2) tunnukseen $3 ($4) on suoritettu.",
- "usermerge-success-log": "yhdisti käyttäjän \"$2\" ($3) käyttäjään \"[[User:$4|$4]]\" ($5)",
"usermerge-logpage": "Käyttäjien yhdistämisloki",
"usermerge-logpagetext": "Tämä on loki käyttäjätunnuksien yhdistämistoimista.",
"usermerge-noselfdelete": "Et voi poistaa tai yhdistää {{GENDER:$1|itseäsi}}!",
@@ -37,5 +35,5 @@
"action-usermerge": "yhdistää käyttäjiä",
"usermerge-autopagedelete": "Sivu poistettiin automaattisesti käyttäjien yhdistämisessä",
"usermerge-page-unmoved": "Sivua $1 ei voitu siirtää nimelle $2.",
- "usermerge-move-log": "Sivu siirrettiin automaattisesti yhdistettäessä käyttäjä \"$1\" käyttäjään \"[[User:$2|$2]]\""
+ "usermerge-move-log": "Sivu siirrettiin automaattisesti yhdistettäessä käyttäjä ”$1” käyttäjään ”[[User:$2|$2]]”"
}
diff --git a/UserMerge/i18n/fr.json b/UserMerge/i18n/fr.json
index d81c2a7b..d71116e5 100644
--- a/UserMerge/i18n/fr.json
+++ b/UserMerge/i18n/fr.json
@@ -2,6 +2,7 @@
"@metadata": {
"authors": [
"Crochet.david",
+ "DSwissK",
"Gomoko",
"Grondin",
"Guillom",
@@ -10,13 +11,13 @@
"PieRRoMaN",
"Seb35",
"Sherbrooke",
+ "Thibaut120094",
"Urhixidur",
"Wladek92"
]
},
"usermerge": "Fusionner et supprimer des utilisateurs",
"usermerge-desc": "[[Special:UserMerge|Fusionne les références d’un utilisateur vers un autre]] dans la base de données wiki - supprimera aussi les anciens utilisateurs après la fusion. Nécessite le privilège ''usermerge''",
- "usermerge-badolduser": "Ancien nom d’utilisateur invalide",
"usermerge-badnewuser": "Nouveau nom d’utilisateur invalide",
"usermerge-nonewuser": "Nouveau nom d’utilisateur vide. Nous supposons que vous voulez fusionner dans \"{{GENDER:$1|$1}}\".<br />\nCliquez sur \"{{int:usermerge-submit}}\" pour accepter.",
"usermerge-noolduser": "Ancien nom d’utilisateur vide",
@@ -28,16 +29,19 @@
"usermerge-submit": "Fusionner l’utilisateur",
"usermerge-badtoken": "Jeton de modification invalide",
"usermerge-userdeleted": "$1 ($2) a été supprimé{{GENDER:$1||e}}.",
- "usermerge-userdeleted-log": "contributeur supprimé : « $2 » ($3)",
"usermerge-success": "La fusion de $1 ($2) avec $3 ($4) est terminée.",
- "usermerge-success-log": "compte « $2 » ($3) fusionné avec « [[User:$4|$4]] » ($5)",
"usermerge-logpage": "Journal des fusions de comptes d’utilisateurs",
"usermerge-logpagetext": "Voici un journal des actions de fusions d’utilisateurs.",
- "usermerge-noselfdelete": "Vous ne pouvez pas vous supprimer ou vous fusionner {{GENDER:$1|vous-même}} !",
+ "usermerge-noselfdelete": "Vous ne pouvez pas vous supprimer ou vous fusionner {{GENDER:$1|vous-même}} !",
"usermerge-protectedgroup": "Impossible de fusionner l’{{GENDER:$1|utilisateur|utilisatrice}} : l’{{GENDER:$1|il|elle}} est dans un groupe protégé.",
"right-usermerge": "Fusionner des utilisateurs",
"action-usermerge": "fusionner les utilisateurs",
"usermerge-autopagedelete": "Page supprimée automatiquement lors de la fusion des utilisateurs",
"usermerge-page-unmoved": "Cette page $1 ne peut pas être déplacée vers $2.",
- "usermerge-move-log": "Page renommée automatiquement lors de la fusion du compte d’utilisat{{GENDER:$1|eur|rice}} « $1 » en « [[User:$2|]] »"
+ "usermerge-move-log": "Page renommée automatiquement lors de la fusion du compte d’utilisat{{GENDER:$1|eur|rice}} « $1 » en « [[User:$2|]] »",
+ "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|a fusionné}} le compte utilisateur « $4 » ($5) dans {{GENDER:$8|$6}} ($7)",
+ "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|a supprimé}} le compte utilisateur « $4 » ($5)",
+ "log-action-filter-usermerge": "Type d'action :",
+ "log-action-filter-usermerge-mergeuser": "Fusion de compte utilisateur",
+ "log-action-filter-usermerge-deleteuser": "Suppression de compte utilisateur"
}
diff --git a/UserMerge/i18n/frp.json b/UserMerge/i18n/frp.json
index ad9795fd..19355735 100644
--- a/UserMerge/i18n/frp.json
+++ b/UserMerge/i18n/frp.json
@@ -5,7 +5,6 @@
]
},
"usermerge": "Fusionar et suprimar des usanciérs",
- "usermerge-badolduser": "Viely nom d’usanciér envalido",
"usermerge-badnewuser": "Novél nom d’usanciér envalido",
"usermerge-noolduser": "Viely nom d’usanciér vouedo",
"usermerge-fieldset": "Noms d’usanciér a fusionar",
@@ -15,9 +14,7 @@
"usermerge-submit": "Fusionar l’usanciér",
"usermerge-badtoken": "Jeton de changement envalido",
"usermerge-userdeleted": "$1 ($2) at étâ suprimâ.",
- "usermerge-userdeleted-log": "Contributor suprimâ : $2 ($3)",
"usermerge-success": "La fusion de $1 ($2) a $3 ($4) est chavonâ.",
- "usermerge-success-log": "Usanciér $2 ($3) fusionâ avouéc $4 ($5)",
"usermerge-logpage": "Jornal de les fusions d’usanciérs",
"usermerge-logpagetext": "O est un jornal de les accions de fusions d’usanciérs.",
"usermerge-noselfdelete": "Vos vos pouede pas suprimar ou ben fusionar vos-mémo !",
diff --git a/UserMerge/i18n/fy.json b/UserMerge/i18n/fy.json
new file mode 100644
index 00000000..eaeedbff
--- /dev/null
+++ b/UserMerge/i18n/fy.json
@@ -0,0 +1,8 @@
+{
+ "@metadata": {
+ "authors": [
+ "PiefPafPier"
+ ]
+ },
+ "usermerge-move-log": "Side automatysk omneamd by it gearfoegjen fan it akkount \"$1\" mei \"[[User:$2|$2]]\""
+}
diff --git a/UserMerge/i18n/gl.json b/UserMerge/i18n/gl.json
index 8127ef55..5b86fa00 100644
--- a/UserMerge/i18n/gl.json
+++ b/UserMerge/i18n/gl.json
@@ -2,14 +2,13 @@
"@metadata": {
"authors": [
"Alma",
- "Toliño",
+ "Banjo",
"Elisardojm",
- "Banjo"
+ "Toliño"
]
},
"usermerge": "Fusionar e eliminar usuario",
"usermerge-desc": "[[Special:UserMerge|Fusiona as referencias dun usuario noutro usuario]] na base de datos do wiki (tamén borrará as fusións vellas dos usuarios seguintes. Require privilexios ''usermerge'')",
- "usermerge-badolduser": "Antigo nome de usuario non válido",
"usermerge-badnewuser": "Novo nome de usuario non válido",
"usermerge-nonewuser": "Nome de usuario baleiro. Asúmese que quere fusionalo con \"{{GENDER:$1|$1}}\".<br />\nPrema en \"{{int:usermerge-submit}}\" para aceptar.",
"usermerge-noolduser": "Antigo nome de usuario baleiro",
@@ -21,9 +20,7 @@
"usermerge-submit": "Fusionar o usuario",
"usermerge-badtoken": "Sinal de edición non válido",
"usermerge-userdeleted": "$1 ($2) foi eliminado.",
- "usermerge-userdeleted-log": "eliminouse a conta de usuario \"$2\" ($3)",
"usermerge-success": "Completouse a fusión desde $1 ($2) a $3 ($4).",
- "usermerge-success-log": "Fusionouse a conta \"$2\" ($3) con \"[[User:$4|$4]]\" ($5)",
"usermerge-logpage": "Rexistro de fusión de usuarios",
"usermerge-logpagetext": "Este é un rexistro das accións de fusión de usuarios.",
"usermerge-noselfdelete": "Non se pode eliminar ou fusionar a si {{GENDER:$1|mesmo|mesma}}!",
diff --git a/UserMerge/i18n/gsw.json b/UserMerge/i18n/gsw.json
index 546e5a69..67e8dfbf 100644
--- a/UserMerge/i18n/gsw.json
+++ b/UserMerge/i18n/gsw.json
@@ -7,7 +7,6 @@
},
"usermerge": "Benutzerkonte zämmefiere un lesche",
"usermerge-desc": "[[Special:UserMerge|Fiert Benutzerkonte in dr Wiki-Datebank zämme]] - s alt Benutzerkonto wird no dr Zämmefierig glescht. Bruucht s ''usermerge''-Rächt.",
- "usermerge-badolduser": "Uugiltiger alter Benutzername",
"usermerge-badnewuser": "Uugiltiger nejer Benutzername",
"usermerge-nonewuser": "Läärer nejer Benutzername - s wird e Zämmefierig mit „$1“ vermuetet.<br />\nKlick uf \"{{int:usermerge-submit}}\" go s Uusfiere.",
"usermerge-noolduser": "Läärer alter Benutzername",
@@ -18,9 +17,7 @@
"usermerge-submit": "Benutzerkonte zämmefiere",
"usermerge-badtoken": "Uugiltig Bearbeite-Token",
"usermerge-userdeleted": "„$1“ ($2) isch glescht wore.",
- "usermerge-userdeleted-log": "Gleschter Benutzername: „$2“ ($3)",
"usermerge-success": "D Zämmefierig vu „$1“ ($2) noch „$3“ ($4) isch vollständig.",
- "usermerge-success-log": "Benutzername „$2“ ($3) zämmegfiert mit „$4“ ($5)",
"usermerge-logpage": "Benutzerkonte-Zämmefierigs-Logbuech",
"usermerge-logpagetext": "Des isch s Logbuech vu dr Benutzerkonte-Zämmefierige.",
"usermerge-noselfdelete": "Zämmefierig mit sich sälber isch nit megli!",
diff --git a/UserMerge/i18n/gu.json b/UserMerge/i18n/gu.json
index 678df534..32b70614 100644
--- a/UserMerge/i18n/gu.json
+++ b/UserMerge/i18n/gu.json
@@ -5,7 +5,6 @@
]
},
"usermerge": "સભ્યોને ભેળવો અને રદ કરો",
- "usermerge-badolduser": "અમાન્ય જુનું સભ્યનામ",
"usermerge-badnewuser": "અમાન્ય નવું સભ્યનામ",
"usermerge-noolduser": "જુનું સભ્યનામ ખાલી કરો",
"usermerge-fieldset": "ભેળવવા માટેનાં સભ્યનામો",
diff --git a/UserMerge/i18n/he.json b/UserMerge/i18n/he.json
index 8b42dd5b..087b8467 100644
--- a/UserMerge/i18n/he.json
+++ b/UserMerge/i18n/he.json
@@ -2,14 +2,14 @@
"@metadata": {
"authors": [
"Amire80",
+ "Guycn2",
"Rotemliss",
- "YaronSh",
- "Guycn2"
+ "Strayblues",
+ "YaronSh"
]
},
"usermerge": "מיזוג ומחיקת משתמשים",
"usermerge-desc": "[[Special:UserMerge|מיזוג התייחסויות ממשתמש אחד לאחר]] בבסיס הנתונים של הוויקי, כולל מחיקת המשתמשים הישנים לאחר המיזוג. נדרשת הרשאת ''usermerge''",
- "usermerge-badolduser": "שם המשתמש הישן אינו תקין",
"usermerge-badnewuser": "שם המשתמש החדש אינו תקין",
"usermerge-nonewuser": "שם המשתמש החדש ריק. כנראה שהמיזוג הוא אל \"$1\".<br />\nנא ללחוץ על \"{{int:usermerge-submit}}\" לאישור.",
"usermerge-noolduser": "שם המשתמש הישן ריק",
@@ -21,9 +21,7 @@
"usermerge-submit": "מיזוג משתמש",
"usermerge-badtoken": "אסימון עריכה שגוי.",
"usermerge-userdeleted": "$1 ($2) {{GENDER:$1|נמחק|נמחקה}}.",
- "usermerge-userdeleted-log": "מחק את החשבון \"$2\" ($3)",
"usermerge-success": "המיזוג של $1‏ ($2) לתוך $3‏ ($4) הושלם.",
- "usermerge-success-log": "החשבון \"$2\" ($3) מוזג לתוך \"[[User:$4|$4]]\" ($5)",
"usermerge-logpage": "יומן מיזוג משתמשים",
"usermerge-logpagetext": "זהו יומן של פעולות מיזוג המשתמשים.",
"usermerge-noselfdelete": "לא ניתן למחוק או למזג מ{{GENDER:$1|עצמך}}!",
@@ -32,5 +30,10 @@
"action-usermerge": "למזג משתמשים",
"usermerge-autopagedelete": "הדף נמחק אוטומטית בזמן מיזוג חשבונות",
"usermerge-page-unmoved": "לא ניתן להעביר את הדף $1 לשם $2.",
- "usermerge-move-log": "הדף הועבר אוטומטית בזמן מיזוג חשבון \"$1\" אל \"[[User:$2|$2]]\""
+ "usermerge-move-log": "הדף הועבר אוטומטית בזמן מיזוג חשבון \"$1\" אל \"[[User:$2|$2]]\"",
+ "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|מיזג|מיזגה}} את חשבון המשתמש \"$4\" ($5) אל {{GENDER:$8|$6}} ($7)",
+ "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|מחק|מחקה}} את חשבון המשתמש \"$4\" ($5)",
+ "log-action-filter-usermerge": "סוג הפעולה:",
+ "log-action-filter-usermerge-mergeuser": "מיזוג חשבונות משתמש",
+ "log-action-filter-usermerge-deleteuser": "מחיקת חשבון משתמש"
}
diff --git a/UserMerge/i18n/hi.json b/UserMerge/i18n/hi.json
index 092e0c89..090978ed 100644
--- a/UserMerge/i18n/hi.json
+++ b/UserMerge/i18n/hi.json
@@ -7,7 +7,6 @@
},
"usermerge": "सदस्य खाते विलय करें और हटाएँ",
"usermerge-desc": "विकि डाटाबेस में [[Special:UserMerge|सदस्य खाते विलय करें]]। विलय के बाद पुराने खाते हटा दिए जाएँगे। ''usermerge'' अधिकार आवश्यक है।",
- "usermerge-badolduser": "अमान्य पुराना सदस्यनाम।",
"usermerge-badnewuser": "अमान्य नया सदस्यनाम।",
"usermerge-badtoken": "गलत एडिट टोकन"
}
diff --git a/UserMerge/i18n/hsb.json b/UserMerge/i18n/hsb.json
index bc5a0cc9..42be3c81 100644
--- a/UserMerge/i18n/hsb.json
+++ b/UserMerge/i18n/hsb.json
@@ -6,7 +6,6 @@
},
"usermerge": "Wužiwarske konta zjednoćić a zničić",
"usermerge-desc": "[[Special:UserMerge|Zjednoća referency wužiwarjow]] we wikowej datowej bance - stare wužiwarske konto so po zjednoćenju wušmórnje. Žada sej prawa ''usermerge''.",
- "usermerge-badolduser": "Njepłaćiwe stare wužiwarske mjeno",
"usermerge-badnewuser": "Njepłaćiwe nowe wužiwarske mjeno",
"usermerge-nonewuser": "Falowace nowe wužiwarske mjeno - najskerje zjednoćenje do \"{{GENDER:$1|$1}}\".<br />\nKlikń na \"{{int:usermerge-submit}}\", zo by akceptował.",
"usermerge-noolduser": "Falowace stare wužiwarske mjeno",
@@ -18,9 +17,7 @@
"usermerge-submit": "Wužiwarske konta zjednoćić",
"usermerge-badtoken": "Njepłaćiwe wobdźěłanske znamjo",
"usermerge-userdeleted": "$1($2) bu zničeny.",
- "usermerge-userdeleted-log": "Wušmórnjeny wužiwar: $2($3)",
"usermerge-success": "Zjednoćenje wot $1 ($2) do {{GENDER:$3|$3}} ($4) je dokónčene.",
- "usermerge-success-log": "Wužiwar $2 ($3) je so z {{GENDER:$4|$4}} ($5) zjednoćił",
"usermerge-logpage": "Protokol wužiwarskich zjednoćenjow",
"usermerge-logpagetext": "To je protokol wužiwarskich zjednoćenjow.",
"usermerge-noselfdelete": "Njemóžeš sam wušmórnyć abo zjednoćić!",
diff --git a/UserMerge/i18n/ht.json b/UserMerge/i18n/ht.json
index 789f16dc..f20cf6cc 100644
--- a/UserMerge/i18n/ht.json
+++ b/UserMerge/i18n/ht.json
@@ -7,7 +7,6 @@
},
"usermerge": "Mete ansanm ak efase kont itilizatè yo",
"usermerge-desc": "[[Special:UserMerge|Mèt ansanm referans yo depi yon itilizatè nan referans yon lòt itilizatè]] nan baz done wiki a - l ap efase tou vye non itilizatè yo apre fizyon fin fèt. Ou bezwen genyen dwa ''usermerge'' pou fè fizyon sa.",
- "usermerge-badolduser": "Ansyen non itilizatè a pa bon.",
"usermerge-badnewuser": "Nouvo non itilizatè a pa bon.",
"usermerge-nonewuser": "Nouvo non itilizatè ki vid - nou kwè ou vle mete l ansanm ak $1.<br />\nKlike \"{{int:usermerge-submit}}\" pou aksepte operasyon an.",
"usermerge-noolduser": "Ansyen non itilizatè a vid",
@@ -17,9 +16,7 @@
"usermerge-submit": "Mèt ansanm kont itilizatè yo",
"usermerge-badtoken": "Tikè pou modifikasyon pa bon",
"usermerge-userdeleted": "$1 ($2) efase.",
- "usermerge-userdeleted-log": "Non itilizatè ki efase a: $2 ($3)",
"usermerge-success": "Nou rive mèt ansanm $1 ($2) ak $3 ($4), depi premye kont an.",
- "usermerge-success-log": "Itilizatè $2 ($3) fizyone ak $4 ($5)",
"usermerge-logpage": "Jounal pou fizyon kont itilizatè",
"usermerge-logpagetext": "Men jounal ki dekri tout aksyon ki te fèt pou fizyon kont itilizatè yo.",
"usermerge-noselfdelete": "Ou pa kapab efase tèt ou oubyen fizyone tèt ou.",
diff --git a/UserMerge/i18n/hu.json b/UserMerge/i18n/hu.json
index d51b5f04..fc2f85c2 100644
--- a/UserMerge/i18n/hu.json
+++ b/UserMerge/i18n/hu.json
@@ -8,7 +8,6 @@
},
"usermerge": "Felhasználói fiókok összevonása és törlése",
"usermerge-desc": "[[Special:UserMerge|Beolvasztja egy felhasználó közreműködéseit egy másikéba]] a wiki adatbázisában, majd törli a beolvasztott felhasználói fiókot. ''Szerkesztők egyesítése'' jogosultság kell hozzá",
- "usermerge-badolduser": "Érvénytelen régi felhasználói név",
"usermerge-badnewuser": "Érvénytelen új felhasználói név",
"usermerge-nonewuser": "Üres új felhasználónév. Feltételezett cél: „$1”<br />\nKattints a „{{int:usermerge-submit}}”-ra az elfogadáshoz.",
"usermerge-noolduser": "A régi felhasználói név üres",
@@ -20,9 +19,7 @@
"usermerge-submit": "Felhasználói fiók összevonása",
"usermerge-badtoken": "Érvénytelen szerkesztési token",
"usermerge-userdeleted": "„$1” ($2) törölve.",
- "usermerge-userdeleted-log": "törölte a(z) „$2” ($3) felhasználói fiókot",
"usermerge-success": "„$1” ($2) fiók beolvasztása a(z) „$3” ($4) felhasználói fiókba elkészült.",
- "usermerge-success-log": "„$2” ($3) felhasználó beolvasztva a(z) „[[User:$4|$4]]” ($5) felhasználói fiókba",
"usermerge-logpage": "Felhasználói nevek egyesítésének naplója",
"usermerge-logpagetext": "Ez a felhasználó nevek összevonásának naplója.",
"usermerge-noselfdelete": "Nem tudsz törölni vagy összevonni a saját {{GENDER:$1|fiókodból}}!",
diff --git a/UserMerge/i18n/ia.json b/UserMerge/i18n/ia.json
index e23ac464..5b0fb5c8 100644
--- a/UserMerge/i18n/ia.json
+++ b/UserMerge/i18n/ia.json
@@ -6,7 +6,6 @@
},
"usermerge": "Fusionar e deler usatores",
"usermerge-desc": "[[Special:UserMerge|Fusiona le referentias ab un usator verso un altere usator]] in le base de datos wiki - delera equalmente le ancian usatores post le fusion. Require le privilegio ''usermerge''",
- "usermerge-badolduser": "Nomine de usator ancian invalide",
"usermerge-badnewuser": "Nomine de nove usator invalide",
"usermerge-nonewuser": "Nomine de nove usator vacue. Es assumite un fusion in \"{{GENDER:$1|$1}}\".<br />\nClicca sur \"{{int:usermerge-submit}}\" pro acceptar.",
"usermerge-noolduser": "Nomine de usator ancian vacue",
@@ -15,17 +14,20 @@
"usermerge-newuser": "Nove usator (fusionar con):",
"usermerge-deleteolduser": "Deler ancian usator",
"usermerge-submit": "Fusionar usator",
- "usermerge-badtoken": "Indicio de modification invalide",
- "usermerge-userdeleted": "{{GENDER:$1|$1}} ($2) ha essite delite.",
- "usermerge-userdeleted-log": "Usator delite: $2 ($3)",
- "usermerge-success": "Le fusion de {{GENDER:$1|$1}} ($2) in {{GENDER:$3|$3}} ($4) ha succedite.",
- "usermerge-success-log": "Le usator {{GENDER:$2|$2}} ($3) ha essite fusionate in {{GENDER:$4|$4}} ($5)",
+ "usermerge-badtoken": "Token de modification invalide",
+ "usermerge-userdeleted": "$1 ($2) ha essite delite.",
+ "usermerge-success": "Le fusion de $1 ($2) in $3 ($4) ha succedite.",
"usermerge-logpage": "Registro de fusiones de usatores",
"usermerge-logpagetext": "Isto es un registro de actiones de fusion de usatores.",
"usermerge-noselfdelete": "Tu non pote deler o fusionar ab {{GENDER:$1|te mesme}}!",
"usermerge-protectedgroup": "Impossibile fusionar ab iste {{GENDER:$1|usator}}: le usator es in un gruppo protegite.",
"right-usermerge": "Fusionar usatores",
- "usermerge-autopagedelete": "Automaticamente delite durante le fusion de usatores",
+ "usermerge-autopagedelete": "Pagina automaticamente delite durante le fusion de usatores",
"usermerge-page-unmoved": "Le pagina $1 non poteva esser renominate a $2.",
- "usermerge-move-log": "Le pagina ha essite automaticamente renominate durante le fusion del usator \"[[User:$1|$1]]\" in \"[[User:$2|{{GENDER:$2|$2}}]]\""
+ "usermerge-move-log": "Le pagina ha essite automaticamente renominate durante le fusion del usator \"$1\" in \"[[User:$2|$2]]\"",
+ "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|fusionava}} le conto de usator \"$4\" ($5) in {{GENDER:$8|$6}} ($7)",
+ "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|deleva}} le conto de usator \"$4\" ($5)",
+ "log-action-filter-usermerge": "Typo de action:",
+ "log-action-filter-usermerge-mergeuser": "Fusion de contos de usator",
+ "log-action-filter-usermerge-deleteuser": "Deletion del conto de usator"
}
diff --git a/UserMerge/i18n/id.json b/UserMerge/i18n/id.json
index b0f2a222..054a870f 100644
--- a/UserMerge/i18n/id.json
+++ b/UserMerge/i18n/id.json
@@ -1,14 +1,13 @@
{
"@metadata": {
"authors": [
+ "Bennylin",
"IvanLanin",
- "Rex",
- "Bennylin"
+ "Rex"
]
},
"usermerge": "Penggabungan dan penghapusan Pengguna",
"usermerge-desc": "[[Special:UserMerge|Menggabungkan rekam jejak dari suatu pengguna ke pengguna lain]] di basis data wiki - sekaligus menghapus pengguna lama setelah selesai digabungkan. Tindakan ini memerlukan hak ''usermerge''.",
- "usermerge-badolduser": "Nama pengguna lama tidak sah",
"usermerge-badnewuser": "Nama pengguna baru tidak sah",
"usermerge-nonewuser": "Nama pengguna baru tidak dituliskan - diasumsikan akan digabungkan ke \"$1\".<br />\nKlik \"{{int:usermerge-submit}}\" untuk melanjutkan.",
"usermerge-noolduser": "Nama pengguna lama tidak diisi",
@@ -19,9 +18,7 @@
"usermerge-submit": "Gabungkan pengguna",
"usermerge-badtoken": "Token penyuntingan tidak sah",
"usermerge-userdeleted": "$1 ($2) telah dihapuskan.",
- "usermerge-userdeleted-log": "Pengguna telah dihapuskan: $2 ($3)",
"usermerge-success": "$1 ($2) telah selesai digabungkan ke $3 ($4).",
- "usermerge-success-log": "Pengguna $2 ($3) telah digabungkan ke $4 ($5)",
"usermerge-logpage": "Catatan penggabungan pengguna",
"usermerge-logpagetext": "Ini adalah catatan tindakan penggabungan pengguna.",
"usermerge-noselfdelete": "Anda tidak dapat menghapus atau menggabungkan dari Anda sendiri!",
diff --git a/UserMerge/i18n/ie.json b/UserMerge/i18n/ie.json
index 66b50ff4..75e54cb2 100644
--- a/UserMerge/i18n/ie.json
+++ b/UserMerge/i18n/ie.json
@@ -6,7 +6,6 @@
},
"usermerge": "Fuser se e deleter usatores",
"usermerge-desc": "[[Special:UserMerge|Referenties de fusion de un usator por altri usator]] in li funde de data del wiki - anc va deleter usatores antiqui succedent fusion. Exige avantages de ''fusion de usator''",
- "usermerge-badolduser": "Antiqui nómine de usator ínvalid",
"usermerge-badnewuser": "Nov nómine de usator ínvalid",
"usermerge-nonewuser": "Nov nómine de usator vacui - acceptant fusion por \"$1\".<br />\nClacca \"{{int:usermerge-submit}}\" por acceptar.",
"usermerge-noolduser": "Antiqui nómine de usator vacui",
@@ -17,7 +16,6 @@
"usermerge-submit": "Fuser usator",
"usermerge-badtoken": "Simbol de redaction ínvalid",
"usermerge-userdeleted": "$1 ($2) ha esset deletet.",
- "usermerge-userdeleted-log": "Usator deletet: $2 ($3)",
"usermerge-success": "Fuser se de $1 ($2) por $3 ($4) es complet.",
"usermerge-logpage": "Diarium de fusion de usator",
"usermerge-logpagetext": "Ti es un diarium de actiones de fusion de usator.",
diff --git a/UserMerge/i18n/it.json b/UserMerge/i18n/it.json
index 96a51b6a..72400eb2 100644
--- a/UserMerge/i18n/it.json
+++ b/UserMerge/i18n/it.json
@@ -9,7 +9,6 @@
},
"usermerge": "Unione e cancellazione utenti",
"usermerge-desc": "[[Special:UserMerge|Unisce i riferimenti di un utente con quelli di un altro]] nel database della wiki e inoltre cancellerà il vecchio utente dopo l'unione. Richiede privilegi ''usermerge''",
- "usermerge-badolduser": "Vecchio nome utente non valido",
"usermerge-badnewuser": "Nuovo nome utente non valido",
"usermerge-nonewuser": "Nuovo nome utente vuoto - l'unione verrà effettuata con l'utente \"{{GENDER:$1|$1}}\".<br />\nFare clic su \"{{int:usermerge-submit}}\" per accettare.",
"usermerge-noolduser": "Vecchio nome utente vuoto",
@@ -21,9 +20,7 @@
"usermerge-submit": "Unisci utente",
"usermerge-badtoken": "Token di modifica non valido.",
"usermerge-userdeleted": "$1 ($2) è stato cancellato.",
- "usermerge-userdeleted-log": "cancellato l'utenza \"$2\" ($3)",
"usermerge-success": "L'unione di $1 ($2) a $3 ($4) è completa.",
- "usermerge-success-log": "unito l'utente \"$2\" ($3) in \"[[User:$4|$4]]\" ($5)",
"usermerge-logpage": "Unioni delle utenze",
"usermerge-logpagetext": "Di seguito sono elencate le azioni di unione di utenti.",
"usermerge-noselfdelete": "Non puoi cancellare o unire la {{GENDER:$1|tua}} stessa utenza!",
@@ -32,5 +29,8 @@
"action-usermerge": "unire utenti",
"usermerge-autopagedelete": "Cancellata automaticamente durante l'unione di utenti",
"usermerge-page-unmoved": "La pagina $1 non può essere spostata a $2.",
- "usermerge-move-log": "Spostata automaticamente la pagina durante l'unione dell'utente \"$1\" a \"[[User:$2|$2]]\""
+ "usermerge-move-log": "Spostata automaticamente la pagina durante l'unione dell'utente \"$1\" a \"[[User:$2|$2]]\"",
+ "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|ha unito}} l'utente \"$4\" ($5) in {{GENDER:$8|$6}} ($7)",
+ "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|ha cancellato}} l'utente \"$4\" ($5)",
+ "log-action-filter-usermerge": "Tipo di azione:"
}
diff --git a/UserMerge/i18n/ja.json b/UserMerge/i18n/ja.json
index 256f08b4..49fb73cb 100644
--- a/UserMerge/i18n/ja.json
+++ b/UserMerge/i18n/ja.json
@@ -2,17 +2,16 @@
"@metadata": {
"authors": [
"Aotake",
+ "Azeha",
"Fievarsty",
"Fryed-peach",
"Mzm5zbC3",
- "Shirayuki",
- "Azeha",
- "Omotecho"
+ "Omotecho",
+ "Shirayuki"
]
},
"usermerge": "利用者の統合と削除",
"usermerge-desc": "ウィキデータベース上における[[Special:UserMerge|ある利用者を別の利用者へ統合し]]、また統合元の利用者を削除する (「{{int:right-usermerge}}」できる権限 ''usermerge'' が必要)",
- "usermerge-badolduser": "旧利用者名が無効です。",
"usermerge-badnewuser": "新利用者名が無効です。",
"usermerge-nonewuser": "新しい利用者名の欄が空です。「{{GENDER:$1|$1}}」への統合と見なします。<br />\n「{{int:usermerge-submit}}」をクリックして承認してください。",
"usermerge-noolduser": "旧利用者名の欄が空です。",
@@ -24,9 +23,7 @@
"usermerge-submit": "利用者の統合",
"usermerge-badtoken": "編集トークンが無効です。",
"usermerge-userdeleted": "$1 ($2) は削除されました。",
- "usermerge-userdeleted-log": "利用者アカウント「$2」 ($3) を削除しました",
"usermerge-success": "$1 ($2) の $3 ($4) への統合が完了しました。",
- "usermerge-success-log": "利用者「$2」($3) を「[[User:$4|$4]]」($5) へ統合しました",
"usermerge-logpage": "利用者統合記録",
"usermerge-logpagetext": "これは、利用者の統合を記録したものです。",
"usermerge-noselfdelete": "{{GENDER:$1|自分自身}}の削除や{{GENDER:$1|自分自身}}との統合はできません。",
diff --git a/UserMerge/i18n/jv.json b/UserMerge/i18n/jv.json
index a4c3cef9..360cb654 100644
--- a/UserMerge/i18n/jv.json
+++ b/UserMerge/i18n/jv.json
@@ -1,30 +1,29 @@
{
"@metadata": {
"authors": [
+ "Diki Ananta",
"Meursault2004",
+ "NoiX180",
"Pras",
- "NoiX180"
+ "Sumbukompor"
]
},
- "usermerge": "Panggabungan lan pambusakan panganggo",
- "usermerge-desc": "[[Special:UserMerge|Nggabungaké rèferènsi saka panganggo siji menyang liyané]] ing basis data wiki - bakal sekaligus mbusak panganggo lawas sawisé rampung panggabungan. Tindakan iki merlokaké hak ''usermerge''.",
- "usermerge-badolduser": "Jeneng panganggo lawas ora sah",
- "usermerge-badnewuser": "Jeneng panganggo anyar ora absah",
+ "usermerge": "Panggabungan lan pambusakan naraguna",
+ "usermerge-desc": "[[Special:UserMerge|Nggabungaké rèferènsi saka naraguna siji menyang liyané]] ing basis data wiki - bakal sekaligus mbusak naraguna lawas sawisé rampung panggabungan. Tindakan iki merlokaké hak ''usermerge''.",
+ "usermerge-badnewuser": "Jeneng naraguna anyar ora absah",
"usermerge-nonewuser": "Jeneng panganggo kothong - dianggep bakal digabungaké menyang $1.<br />\nKlik \"{{int:usermerge-submit}}\" kanggo nerusaké.",
- "usermerge-noolduser": "Jeneng panganggo sing lawas kosong",
- "usermerge-olduser": "Panganggo lawas (digabungaké saka):",
- "usermerge-newuser": "Panganggo anyar (digabungaké menyang):",
- "usermerge-deleteolduser": "Busak panganggo lawas",
- "usermerge-submit": "Gabung panganggo",
+ "usermerge-noolduser": "Jeneng naraguna sing lawas kosong",
+ "usermerge-olduser": "Naraguna lawas (digabungaké saka):",
+ "usermerge-newuser": "Naraguna anyar (digabungaké menyang):",
+ "usermerge-deleteolduser": "Busak naraguna lawas",
+ "usermerge-submit": "Gabung naraguna",
"usermerge-badtoken": "Token panyuntingan ora absah",
"usermerge-userdeleted": "$1 ($2) wis dibusak.",
- "usermerge-userdeleted-log": "Panganggo dibusak: $2 ($3)",
"usermerge-success": "$1 ($2) wis rampung digabungaké menyang $3 ($4).",
- "usermerge-success-log": "Panganggo $2 ($3) wis digabungaké menyang $4 ($5)",
- "usermerge-logpage": "Log panggabungan panganggo",
- "usermerge-logpagetext": "Iki sawijining log aksi panggabungan panganggo.",
+ "usermerge-logpage": "Log panggabungan naraguna",
+ "usermerge-logpagetext": "Iki sawijining log aksi panggabungan naraguna.",
"usermerge-noselfdelete": "Panjenengan ora bisa mbusak utawa nggabung saka panjenengan dhéwé!",
"usermerge-protectedgroup": "Ora bisa nggabungaké saka panganggo iki - panganggo ana jroning klompok kareksa.",
- "right-usermerge": "Gabung panganggo",
+ "right-usermerge": "Gabung naraguna",
"usermerge-move-log": "Otomatis ngalih kaca nalika nggabungaké panganggo \"[[User:$1|$1]]\" karo \"[[User:$2|{{GENDER:$2|$2}}]]\""
}
diff --git a/UserMerge/i18n/ka.json b/UserMerge/i18n/ka.json
index 0faa25cc..5b411c5b 100644
--- a/UserMerge/i18n/ka.json
+++ b/UserMerge/i18n/ka.json
@@ -2,10 +2,10 @@
"@metadata": {
"authors": [
"David1010",
+ "Mehman97",
"Otogi"
]
},
- "usermerge-badolduser": "არასწორი ძველი მომხმარებლის სახელი",
"usermerge-badnewuser": "არასწორი ახალი მომხმარებლის სახელი",
"usermerge-noolduser": "ცარიელი ძველი მომხმარებლის სახელი",
"usermerge-fieldset": "მომხმარებლის სახელები გასაერთიანებლად",
@@ -14,7 +14,7 @@
"usermerge-deleteolduser": "ძველი მომხმარებლის წაშლა",
"usermerge-submit": "მომხმარებლების გაერთიანება",
"usermerge-userdeleted": "მომხმარებელი {{GENDER:$1|$1}} ($2) წაიშალა.",
- "usermerge-userdeleted-log": "წაშლილი მომხმარებელი: $2 ($3)",
"usermerge-logpage": "მომხმარებელთა შერწყმის ჟურნალი",
- "right-usermerge": "მომხმარებლების გაერთიანება"
+ "right-usermerge": "მომხმარებლების გაერთიანება",
+ "log-action-filter-usermerge-deleteuser": "მომხმარებლის ანგარიშის წაშლა"
}
diff --git a/UserMerge/i18n/km.json b/UserMerge/i18n/km.json
index 4c98dbb8..c6c3426c 100644
--- a/UserMerge/i18n/km.json
+++ b/UserMerge/i18n/km.json
@@ -8,19 +8,16 @@
]
},
"usermerge": "បញ្ចូលរួមគ្នានិង​លុបអ្នកប្រើប្រាស់",
- "usermerge-badolduser": "អត្តនាមចាស់មិនត្រឹមត្រូវទេ",
"usermerge-badnewuser": "អត្តនាមថ្មីមិនត្រឹមត្រូវទេ",
"usermerge-olduser": "អ្នកប្រើប្រាស់ចាស់(បញ្ចូលរួមគ្នាពី)៖",
"usermerge-newuser": "អ្នកប្រើប្រាស់ថ្មី(បញ្ចូលរួមគ្នាទៅ)៖",
"usermerge-deleteolduser": "លុបអ្នកប្រើប្រាស់ចាស់ចោល",
"usermerge-submit": "បញ្ចូលរួមគ្នា អ្នកប្រើប្រាស់",
- "usermerge-userdeleted": "$1 ($2) ត្រូវបានលុបហើយ។",
- "usermerge-userdeleted-log": "បានលុបអ្នកប្រើប្រាស់៖ $2($3)",
- "usermerge-success": "ការបញ្ចូលរួមគ្នាពី$1($2)ទៅ$3($4)បានបញ្ចប់ដោយពេញលេញ។",
- "usermerge-success-log": "អ្នកប្រើប្រាស់ $2 ($3) បញ្ចូលរួមគ្នាទៅ $4 ($5)",
+ "usermerge-userdeleted": "$1 ($2) ត្រូវបានលុបចោលហើយ។",
+ "usermerge-success": "ការច្របាច់បញ្ចូលគ្នាពី$1($2)ទៅ$3($4)បានសម្រេចហើយ។",
"usermerge-logpage": "កំណត់ហេតុនៃការបញ្ចួលអ្នកប្រើប្រាស់រួមគ្នា",
"usermerge-logpagetext": "នេះជាកំណត់ហេតុនៃសកម្មភាពបញ្ចូលអ្នកប្រើប្រាស់រួមគ្នា។",
- "usermerge-noselfdelete": "អ្នកមិនអាច លុបចេញ ឬ បញ្ចូលរួមគ្នា ពីខ្លួនអ្នកផ្ទាល់ !",
- "usermerge-protectedgroup": "មិនអាចបញ្ចូលអ្នកប្រើប្រាស់រួមគ្នាបានទេ - អ្នកប្រើប្រាស់ស្ថិតនៅក្នុងក្រុមដែលបានការពារ។",
+ "usermerge-noselfdelete": "អ្នកមិនអាចលុបចោលឬច្របាច់បញ្ចូលគ្នាពី{{GENDER:$1|ខ្លួនអ្នកផ្ទាល់}}ទេ!",
+ "usermerge-protectedgroup": "មិនអាចច្របាច់បញ្ចូល{{GENDER:$1|អ្នកប្រើប្រាស់}}រួមគ្នាបានទេ។ អ្នកប្រើប្រាស់ស្ថិតនៅក្នុងក្រុមដែលបានការពារ។",
"right-usermerge": "បញ្ចូលអ្នកប្រើប្រាស់រួមគ្នា"
}
diff --git a/UserMerge/i18n/ko.json b/UserMerge/i18n/ko.json
index de93be72..b3936529 100644
--- a/UserMerge/i18n/ko.json
+++ b/UserMerge/i18n/ko.json
@@ -1,15 +1,16 @@
{
"@metadata": {
"authors": [
- "Kwj2772",
- "아라",
"Hwangjy9",
- "Ykhwong"
+ "Kwj2772",
+ "Nuevo Paso",
+ "Ykhwong",
+ "렌즈",
+ "아라"
]
},
"usermerge": "사용자 합치기 및 삭제",
"usermerge-desc": "위키 데이터베이스에서 [[Special:UserMerge|참고한 한 사용자에서 다른 사용자로 합치며]], 합치고 나서 이에 따라 이전 사용자는 삭제됩니다. '''usermerge''' 권한 필요",
- "usermerge-badolduser": "잘못된 이전 사용자 이름입니다.",
"usermerge-badnewuser": "잘못된 새 사용자 이름입니다.",
"usermerge-nonewuser": "빈 새 사용자 이름입니다. \"{{GENDER:$1|$1}}\"(으)로 가정하여 합칩니다.<br />\n동의하면 \"{{int:usermerge-submit}}\"을 클릭하세요.",
"usermerge-noolduser": "이전 사용자 이름이 비어 있음",
@@ -20,10 +21,8 @@
"usermerge-deleteolduser": "이전 사용자를 삭제하기",
"usermerge-submit": "사용자 합치기",
"usermerge-badtoken": "잘못된 편집 토큰",
- "usermerge-userdeleted": "$1 ($2)님이 삭제되었습니다.",
- "usermerge-userdeleted-log": "님이 \"$2\" ($3) 사용자 계정을 삭제했습니다",
+ "usermerge-userdeleted": "$1 ($2) 님이 삭제되었습니다.",
"usermerge-success": "$1 ($2)님을 $3 ($4)에 합치는 것을 완료했습니다.",
- "usermerge-success-log": "님이 \"$2\" ($3) 계정을 \"[[User:$4|$4]]\" ($5) 계정으로 합쳤습니다",
"usermerge-logpage": "사용자 병합 기록",
"usermerge-logpagetext": "사용자 병합 동작의 기록입니다.",
"usermerge-noselfdelete": "{{GENDER:$1|자신}}으로부터 삭제나 합치기를 할 수 없습니다!",
@@ -32,5 +31,10 @@
"action-usermerge": "사용자 합치기",
"usermerge-autopagedelete": "사용자를 합치는 동안 자동으로 문서를 삭제했습니다",
"usermerge-page-unmoved": "$1 문서를 $2 문서로 이동하지 못했습니다.",
- "usermerge-move-log": "\"$1\" 계정을 \"[[User:$2|$2]]\"(으)로 합치면서 문서를 자동으로 이동했습니다"
+ "usermerge-move-log": "\"$1\" 계정을 \"[[User:$2|$2]]\"(으)로 합치면서 문서를 자동으로 이동했습니다",
+ "logentry-usermerge-mergeuser": "$1님이 \"$4\" ($5) 계정을 {{GENDER:$8|$6}} ($7)으로 {{GENDER:$2|합쳤습니다}}",
+ "logentry-usermerge-deleteuser": "$1님이 \"$4\"($5) 사용자 계정을 {{GENDER:$2|삭제했습니다}}",
+ "log-action-filter-usermerge": "조치 유형:",
+ "log-action-filter-usermerge-mergeuser": "사용자 계정 병합",
+ "log-action-filter-usermerge-deleteuser": "사용자 계정 삭제"
}
diff --git a/UserMerge/i18n/ksh.json b/UserMerge/i18n/ksh.json
index 5e970e42..a983f65a 100644
--- a/UserMerge/i18n/ksh.json
+++ b/UserMerge/i18n/ksh.json
@@ -6,7 +6,6 @@
},
"usermerge": "Metmaacher zosammelääje un fott schmiiße",
"usermerge-desc": "[[Special:UserMerge|Läät de Date fun einem Metmaacher met anem andere Metmaacher komplät zosamme]] en dem Wiki singe Datebank, un kann donoh och de övverhollte Metmaacher fottschmieße. Doför bruch mer et „{{int:right-usermerge}}“ Rääsch (<em lang=\"en\">usermerge</em>)",
- "usermerge-badolduser": "Dä ahle Metmaachername es nit jöltesch",
"usermerge-badnewuser": "Dä neue Metmaachername es nit jöltesch",
"usermerge-nonewuser": "Keine neue Metmaachername aanjejovve. Mer vermoode, dat De {{GENDER:$1|mem|mem|med dämm Metmaacher|met dä|mem}} „$1“ zosamme lääje wells.<br />\nKleck op „{{int:usermerge-submit}}“ öm dat esu ze maache.",
"usermerge-noolduser": "Keine ahle Metmaachername aanjejovve",
@@ -18,9 +17,7 @@
"usermerge-submit": "Zosammelääje",
"usermerge-badtoken": "Onjöltesch Kennzeiche",
"usermerge-userdeleted": "{{GENDER:$1|Dä|Dat|Dä Metmaacher|De|Dat}} „$1“ ($2) es jetz fott jeschmeße.",
- "usermerge-userdeleted-log": "Fott jeschmeße Metmaacherame: „$2“ ($3)",
"usermerge-success": "Et Zosammelääje {{GENDER:$1|vum|vum|vumm Metmaacher|vun dä|vum}} „$1“ ($2) {{GENDER:$3|mem|mem|med dämm Metmaacher|met dä|mem}} „$3“ {{GENDER:$3|nohm|nohm|nohm|noh dä|nohm}} „$3“ ($4) es komplätt.",
- "usermerge-success-log": "{{GENDER:$2|Dä Metmaacher|De Metmaacherėn|Dä Metmaacher|De Metmaacherėn|Dä Metmaacher}} mem Nahme „$2“ ($3) es zosammejelaat met {{GENDER:$4|däm Metmaacher|dä Metmaacherėn|däm Metmaacher|dä Metmaacherėn|däm Metmaacher}} mem Name „$4“ ($5)",
"usermerge-logpage": "Logbohch övver et Metmaacher_Zosammelähje",
"usermerge-logpagetext": "Dat heh es et Logbohch övver de zosammejelaate Metmaachere.",
"usermerge-noselfdelete": "Ene Metmaacher met sesch sellver zosamme ze lääje, wat ene Quatsch! Dat jeiht nit.{{GENDER:$1|}}",
diff --git a/UserMerge/i18n/lb.json b/UserMerge/i18n/lb.json
index bfea9173..45df9349 100644
--- a/UserMerge/i18n/lb.json
+++ b/UserMerge/i18n/lb.json
@@ -8,7 +8,6 @@
},
"usermerge": "Benotzerkonten zesummeféieren a läschen",
"usermerge-desc": "[[Special:UserMerge|Féiert Benotzerkonte vun engem Benotzer mat engem anere Benotzer]] an der Wiki-Datebank zesummen - déi al Benotzerkonte ginn no der Zesummeféierung och geläscht. Erfuedert ''usermerge''-Rechter.",
- "usermerge-badolduser": "Ongëltegen ale Benotzernumm",
"usermerge-badnewuser": "Ongëltegen neie Benotzernumm",
"usermerge-nonewuser": "Eidelen neie Benotzernumm - wahrscheinlech eng Zesummeféierung mat \"{{GENDER:$1|$1}}.<br />\nKlickt op \"{{int:usermerge-submit}}\" wann Dir d'accord sidd.",
"usermerge-noolduser": "Eidelen ale Benotzernumm",
@@ -20,9 +19,7 @@
"usermerge-submit": "Benotzerkonten zesummeféieren",
"usermerge-badtoken": "Ännerungs-Jeton net valabel",
"usermerge-userdeleted": "$1 ($2) gouf geläscht.",
- "usermerge-userdeleted-log": "huet de Benotzerkont \"$2\" ($3) geläscht",
"usermerge-success": "D'Zesummeféierung vum {{GENDER:$1|$1}} ($2) op {{GENDER:$3|$3}} ($4) ass net komplett.",
- "usermerge-success-log": "huet de Benotzer \"$2\" ($3) zesummegeféiert mam \"[[User:$4|$4]]\" ($5)",
"usermerge-logpage": "Lëscht vun de Benotzerkonten déi zesummegeféiert goufen",
"usermerge-logpagetext": "Dëst ass eng Lëscht vun de Benotzerkonten, déi zesummegeféiert goufen.",
"usermerge-noselfdelete": "Dir kënnt {{GENDER:$1|Iech net selwer}} läschen oder mat {{GENDER:$1|Iech selwer}} zesummeféieren!",
diff --git a/UserMerge/i18n/mk.json b/UserMerge/i18n/mk.json
index 2afa8b5b..8151c571 100644
--- a/UserMerge/i18n/mk.json
+++ b/UserMerge/i18n/mk.json
@@ -7,7 +7,6 @@
},
"usermerge": "Спојување и бришење корисници",
"usermerge-desc": "[[Special:UserMerge|Спојува наводи од еден корисник во друг]] во вики базата на податици - ги брише и старите корисници по спојувањето. Бара ''usermerge'' привилегии",
- "usermerge-badolduser": "Погрешно старо корисничко име",
"usermerge-badnewuser": "Погрешно ново корисничко име",
"usermerge-nonewuser": "Празно ново корисничко име. Се подразбира спојување со „{{GENDER:$1|$1}}“.<br />\nСтиснете на „{{int:usermerge-submit}}“ за да прифатите.",
"usermerge-noolduser": "Празно старо корисничко име",
@@ -18,17 +17,20 @@
"usermerge-deleteolduser": "Избриши стар корисник",
"usermerge-submit": "Спој го корисникот",
"usermerge-badtoken": "Погрешна шифра за уредување",
- "usermerge-userdeleted": "$1 ($2) е {{GENDER:$1|избришан|избришана}}",
- "usermerge-userdeleted-log": "Избришан корисник: $2 ($3)",
- "usermerge-success": "Спојувањето на {{GENDER:$1|$1}} ($2) со {{GENDER:$3|$3}} ($4) е готово.",
- "usermerge-success-log": "Корисникот {{GENDER:$2|$2}} ($3) е споен со {{GENDER:$4|$4}} ($5)",
+ "usermerge-userdeleted": "$1 ($2) е избришан.",
+ "usermerge-success": "Спојувањето на $1 ($2) во $3 ($4) е готово.",
"usermerge-logpage": "Дневник на спојувања на кориснички сметки",
"usermerge-logpagetext": "Ова е дневник на спојувања на кориснички имиња.",
"usermerge-noselfdelete": "Не можете да се избришете или споите {{GENDER:$1|самите себеси}}!",
"usermerge-protectedgroup": "Не можам да ги спојам {{GENDER:$1|корисниците}}: корисникот е во заштитена група.",
"right-usermerge": "Спојување на корисници",
"action-usermerge": "спојување на корисници",
- "usermerge-autopagedelete": "Се брише автоматски, при спојување на корисници",
+ "usermerge-autopagedelete": "Автоматски избришана страница при спојување на корисници",
"usermerge-page-unmoved": "Не моежев да ја преместам страницата $1 на $2.",
- "usermerge-move-log": "Автоматско преместување на страница при припојувањето на корисникот „[[User:$1|$1]]“ кон „[[User:$2|{{GENDER:$2|$2}}]]“"
+ "usermerge-move-log": "Автоматски преместена страница при спојувањето на сметката „$1“ во „[[User:$2|$2]]“",
+ "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|ја спои}} корисничката сметка „$4“ ($5) во {{GENDER:$8|$6}} ($7)",
+ "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|ја избриша}} корисничката сметка „$4“ ($5)",
+ "log-action-filter-usermerge": "Вид дејство:",
+ "log-action-filter-usermerge-mergeuser": "Спојување на корисничка сметка",
+ "log-action-filter-usermerge-deleteuser": "Бришење на корисничка сметка"
}
diff --git a/UserMerge/i18n/ml.json b/UserMerge/i18n/ml.json
index 811f7bb4..bef7564b 100644
--- a/UserMerge/i18n/ml.json
+++ b/UserMerge/i18n/ml.json
@@ -7,7 +7,6 @@
},
"usermerge": "ഉപയോക്താക്കളെ ലയിപ്പിക്കുക, മായ്ക്കുക",
"usermerge-desc": "വിക്കി ഡേറ്റാബേസിൽ [[Special:UserMerge|ഒരു ഉപയോക്താവിന്റെ വിവരങ്ങൾ മറ്റൊരു ഉപയോക്താവിന്റേതുമായി സംയോജിപ്പിക്കുന്നു]] - സംയോജനത്തിനു ശേഷം പഴയ ഉപയോക്താക്കളെ മായ്ക്കുകയും ചെയ്യും. ''usermerge'' പദവി ആവശ്യമാണ്.",
- "usermerge-badolduser": "അസാധുവായ പഴയ ഉപയോക്തൃനാമം",
"usermerge-badnewuser": "അസാധുവായ പുതിയ ഉപയോക്തൃനാമം",
"usermerge-nonewuser": "ശൂന്യമായ പുതിയ ഉപയോക്തൃനാമം. \"{{GENDER:$1|$1}}\" എന്നതിലേക്കാണ് ലയിപ്പിക്കേണ്ടതെന്ന് ഊഹിക്കുന്നു.<br />\nസ്വീകാര്യമെങ്കിൽ \"{{int:usermerge-submit}}\" ഞെക്കുക.",
"usermerge-noolduser": "പഴയ ഉപയോക്തൃനാമം ശൂന്യമാക്കുക.",
@@ -19,9 +18,7 @@
"usermerge-submit": "ഉപയോക്താവിനെ സം‌യോജിപ്പിക്കുക",
"usermerge-badtoken": "അസാധുവായ തിരുത്തൽ ചീട്ട്.",
"usermerge-userdeleted": "{{GENDER:$1|$1}} ($2) മായ്ച്ചു.",
- "usermerge-userdeleted-log": "ഉപയോക്താവിനെ മായ്ച്ചു: $2 ($3)",
"usermerge-success": "$1 ($2) നെ $3 ($4) ലേക്കു സം‌യോജിപ്പിക്കുന്ന പ്രക്രിയ പൂർത്തിയായി.",
- "usermerge-success-log": "$2 ($3) എന്ന ഉപയോക്താവിനെ $4 ($5)ലേക്കു സം‌യോജിപ്പിച്ചു",
"usermerge-logpage": "ഉപയോക്തൃസം‌യോജന പ്രവർത്തനരേഖ",
"usermerge-logpagetext": "ഉപയോക്താക്കളെ സം‌യോജിപ്പിച്ചതിന്റെ പ്രവർത്തനരേഖയാണിത്",
"usermerge-noselfdelete": "താങ്കൾക്ക് താങ്കളെത്തന്നെ മായ്ക്കാനോ, മറ്റൊരു അക്കുണ്ടിലേക്കു സം‌യോജിപ്പിക്കാനോ പറ്റില്ല!",
diff --git a/UserMerge/i18n/mr.json b/UserMerge/i18n/mr.json
index 3540980f..ba726a92 100644
--- a/UserMerge/i18n/mr.json
+++ b/UserMerge/i18n/mr.json
@@ -7,7 +7,6 @@
]
},
"usermerge": "सदस्य एकत्रीकरण व वगळणे",
- "usermerge-badolduser": "चुकीचे जुने सदस्यनाव",
"usermerge-badnewuser": "चुकीचे नवे सदस्यनाव",
"usermerge-noolduser": "रिकामे जुने सदस्यनाव",
"usermerge-same-old-and-new-user": "जूने व नविन सदस्यनाम हे एकमेकापेक्षा वेगळेच असावयास हवे.",
@@ -17,8 +16,6 @@
"usermerge-submit": "सदस्य एकत्र करा",
"usermerge-badtoken": "चुकीचे एडीट टोकन",
"usermerge-userdeleted": "$1 ($2) ला वगळण्यात आलेले आहे.",
- "usermerge-userdeleted-log": "सदस्य वगळला: $2 ($3)",
- "usermerge-success-log": "सदस्य $2 ($3) ला $4 ($5) मध्ये एकत्र केले",
"usermerge-logpage": "सदस्य एकत्रीकरण नोंद",
"usermerge-logpagetext": "ही सदस्य एकत्रीकरणाची सूची आहे",
"usermerge-noselfdelete": "तुम्ही स्वत:लाच वगळू किंवा एकत्र करू शकत नाही.",
diff --git a/UserMerge/i18n/ms.json b/UserMerge/i18n/ms.json
index 6f54efc2..8e6b651a 100644
--- a/UserMerge/i18n/ms.json
+++ b/UserMerge/i18n/ms.json
@@ -6,7 +6,6 @@
},
"usermerge": "Gabungkan dan gugurkan pengguna",
"usermerge-desc": "[[Special:UserMerge|Menggabungkan rujukan daripada seorang pengguna kepada seorang pengguna yang lain]] di dalam pangkalan data wiki - juga akan menggugurkan pengguna-pengguna lama ekoran penggabungan. Memerlukan keistimewaan ''usermerge''",
- "usermerge-badolduser": "Nama pengguna lama tidak sah",
"usermerge-badnewuser": "Nama pengguna baru tidak sah",
"usermerge-nonewuser": "Nama pengguna baru kosong, dianggap hendak digabungkan dengan \"{{GENDER:$1|$1}}\".<br />\n\nKlik \"{{int:usermerge-submit}}\" untuk menerima.",
"usermerge-noolduser": "Nama pengguna lama kosong",
@@ -18,9 +17,7 @@
"usermerge-submit": "Gabungkan pengguna",
"usermerge-badtoken": "Token penyuntingan tidak sah",
"usermerge-userdeleted": "$1 ($2) telah dihapuskan.",
- "usermerge-userdeleted-log": "Pengguna terhapus: $2 ($3)",
"usermerge-success": "Penggabungan dari $1 ($2) kepada {{GENDER:$3|$3}} ($4) selesai.",
- "usermerge-success-log": "Pengguna $2 ($3) digabungkan kepada {{GENDER:$4|$4}} ($5)",
"usermerge-logpage": "Log penggabungan pengguna",
"usermerge-logpagetext": "Ini merupakan log tindakan menggabungkan pengguna.",
"usermerge-noselfdelete": "Anda tidak boleh menghapuskan atau menggabungkan diri anda sendiri!",
diff --git a/UserMerge/i18n/my.json b/UserMerge/i18n/my.json
index b17487c2..5749c73b 100644
--- a/UserMerge/i18n/my.json
+++ b/UserMerge/i18n/my.json
@@ -5,7 +5,6 @@
]
},
"usermerge": "အသုံးပြုသူများကို ပေါင်းစပ်/ဖျက်ပစ်ရန်",
- "usermerge-badolduser": "မဆီလျော်သော အသုံးပြုသူအမည်ဟောင်း။",
"usermerge-badnewuser": "မဆီလျော်သော အသုံးပြုသူအမည်သစ်။",
"usermerge-fieldset": "ပေါင်းစပ်ရန် အသုံးပြုသူအမည်များ",
"usermerge-submit": "အသုံးပြုသူ ပေါင်းစပ်ရန်",
@@ -14,5 +13,6 @@
"usermerge-logpage": "အသုံးပြုသူ ပေါင်းစပ်ခြင်း မှတ်တမ်း",
"usermerge-logpagetext": "အသုံးပြုသူ ပေါင်းစပ်ခြင်း လုပ်ဆောင်ချက်များအတွက် မှတ်တမ်းဖြစ်သည်။",
"right-usermerge": "အသုံးပြုသူများ ပေါင်းစပ်ရန်",
- "usermerge-page-unmoved": "စာမျက်နှာ $1 ကို $2 သို့ မရွေ့ပြောင်းနိုင်ခဲ့ပါ။"
+ "usermerge-page-unmoved": "စာမျက်နှာ $1 ကို $2 သို့ မရွေ့ပြောင်းနိုင်ခဲ့ပါ။",
+ "log-action-filter-usermerge-deleteuser": "အသုံးပြုသူအကောင့် ဖျက်ပစ်ခြင်း"
}
diff --git a/UserMerge/i18n/nah.json b/UserMerge/i18n/nah.json
index 66fe90bc..8d5e736a 100644
--- a/UserMerge/i18n/nah.json
+++ b/UserMerge/i18n/nah.json
@@ -4,8 +4,6 @@
"Fluence"
]
},
- "usermerge-badolduser": "Ahcualli huēhuehtlatequitiltilīltōcāitl",
"usermerge-badnewuser": "Ahcualli yancuīc tlatequitiltilīltōcāitl",
- "usermerge-userdeleted": "$1 ($2) ōmopolo",
- "usermerge-userdeleted-log": "Tlapoloc tlatequitiltilīlli: $2 ($3)"
+ "usermerge-userdeleted": "$1 ($2) ōmopolo"
}
diff --git a/UserMerge/i18n/nb.json b/UserMerge/i18n/nb.json
index cf7d5a65..069ab955 100644
--- a/UserMerge/i18n/nb.json
+++ b/UserMerge/i18n/nb.json
@@ -2,13 +2,12 @@
"@metadata": {
"authors": [
"Event",
- "Nghtwlkr",
- "Jon Harald Søby"
+ "Jon Harald Søby",
+ "Nghtwlkr"
]
},
"usermerge": "Brukersammenslåing og -sletting",
"usermerge-desc": "Gir muligheten til å [[Special:UserMerge|slå sammen kontoer]] ved at alle referanser til en bruker byttes ut til en annen bruker i databasen, for så å slette den ene kontoen. Trenger rettigheten ''usermerge''.",
- "usermerge-badolduser": "Gammelt brukernavn ugyldig",
"usermerge-badnewuser": "Nytt brukernavn ugyldig",
"usermerge-nonewuser": "Nytt brukernavn tomt &ndash; antar sammenslåing til «{{GENDER:$1|$1}}».<br />\nKlikk «{{int:usermerge-submit}}» for å godta.",
"usermerge-noolduser": "Gammelt brukernavn tomt",
@@ -20,9 +19,7 @@
"usermerge-submit": "Slå sammen brukere",
"usermerge-badtoken": "Ugyldig redigeringsnøkkel.",
"usermerge-userdeleted": "$1 ($2) har blitt slettet.",
- "usermerge-userdeleted-log": "slettet brukerkontoen «$2» ($3)",
"usermerge-success": "Sammenslåing fra $1 ($2) til $3 ($4) er fullført.",
- "usermerge-success-log": "slo brukerkontoen «$2» ($3) sammen med «[[User:$4|$4]]» ($5)",
"usermerge-logpage": "Brukersammenslåingslogg",
"usermerge-logpagetext": "Dette er en logg over brukersammenslåinger.",
"usermerge-noselfdelete": "Du kan ikke slette eller slå sammen {{GENDER:$1|din}} egen konto!",
@@ -31,5 +28,10 @@
"action-usermerge": "slå sammen brukere",
"usermerge-autopagedelete": "Siden ble automatisk slettet ved kontosammenslåing",
"usermerge-page-unmoved": "Siden $1 kunne ikke flyttes til $2.",
- "usermerge-move-log": "Flyttet siden automatisk i forbindelse med sammenslåing av kontoen «$1» til «[[User:$2|$2]]»"
+ "usermerge-move-log": "Flyttet siden automatisk i forbindelse med sammenslåing av kontoen «$1» til «[[User:$2|$2]]»",
+ "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|slo sammen}} brukerkontoen «$4» ($5) til {{GENDER:$8|$6}} ($7)",
+ "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|slettet}} brukerkontoen «$4» ($5)",
+ "log-action-filter-usermerge": "Type handling:",
+ "log-action-filter-usermerge-mergeuser": "Kontosammenslåing",
+ "log-action-filter-usermerge-deleteuser": "Kontosletting"
}
diff --git a/UserMerge/i18n/nds-nl.json b/UserMerge/i18n/nds-nl.json
index c5225216..4e4c7f0e 100644
--- a/UserMerge/i18n/nds-nl.json
+++ b/UserMerge/i18n/nds-nl.json
@@ -4,22 +4,19 @@
"Servien"
]
},
- "usermerge": "Gebrukers samenvoegen en vortdoon",
+ "usermerge": "Gebrukerskontos samenvogen en vordsmyten",
"usermerge-desc": "Zet n [[Special:UserMerge|spesiale zied]] derbie um gebrukers samen te voegen en de ouwe gebruker(s) vort te doon (hierveur is t recht ''usermerge'' neudig)",
- "usermerge-badolduser": "Ongeldige ouwe gebrukersnaam",
"usermerge-badnewuser": "Ongeldige nieje gebrukersnaam",
"usermerge-nonewuser": "De nieje gebrukersnaam is niet op-egeven. Der wörden vanuut egaon dat der samenevoegd mut wörden naor \"{{GENDER:$1|$1}}\".<br />\nKlik \"{{int:usermerge-submit}}\" um de haandeling uut te voeren.",
"usermerge-noolduser": "Ouwe gebrukersnaam is niet op-egeven",
"usermerge-fieldset": "Gebrukersnamen die samenevoegen mutten wörden",
"usermerge-olduser": "Ouwe gebruker (samenvoegen van):",
"usermerge-newuser": "Nieje gebruker (samenvoegen naor):",
- "usermerge-deleteolduser": "Ouwe gebruker vortdoon",
+ "usermerge-deleteolduser": "Olde gebruker vordsmyten",
"usermerge-submit": "Gebruker samenvoegen",
"usermerge-badtoken": "Ongeldig bewarkingstoken",
"usermerge-userdeleted": "$1 ($2) is vort-edaon.",
- "usermerge-userdeleted-log": "Vort-edaone gebruker: $2 ($3)",
"usermerge-success": "Samenvoegen van $1 ($2) naor {{GENDER:$3|$3}} ($4) is aoferond.",
- "usermerge-success-log": "Gebruker $2 ($3) samenevoegd naor {{GENDER:$4|$4}} ($5)",
"usermerge-logpage": "Logboek gebrukerssamenvoegingen",
"usermerge-logpagetext": "Dit is t logboek van gebrukerssamenvoegingen.",
"usermerge-noselfdelete": "Je kunnen je eigen niet vortdoon of samenvoegen!",
diff --git a/UserMerge/i18n/nl.json b/UserMerge/i18n/nl.json
index 414044cf..409f6108 100644
--- a/UserMerge/i18n/nl.json
+++ b/UserMerge/i18n/nl.json
@@ -1,19 +1,18 @@
{
"@metadata": {
"authors": [
+ "HanV",
+ "Mainframe98",
"McDutchie",
+ "Nemo bis",
"SPQRobin",
"Siebrand",
- "Southparkfan",
"Sjoerddebruin",
- "Nemo bis",
- "HanV",
- "Mainframe98"
+ "Southparkfan"
]
},
"usermerge": "Gebruikers samenvoegen en verwijderen",
"usermerge-desc": "Voegt een [[Special:UserMerge|speciale pagina]] toe om gebruikers samen te voegen en de oude gebruiker(s) te verwijderen. Hiervoor is het recht ''usermerge'' nodig.",
- "usermerge-badolduser": "Ongeldige oude gebruiker",
"usermerge-badnewuser": "Ongeldige nieuwe gebruiker",
"usermerge-nonewuser": "De nieuwe gebruikersnaam is niet opgegeven.\nEr wordt aangenomen dat er samengevoegd moet worden naar \"{{GENDER:$1|$1}}\".<br />\nKlik \"{{int:usermerge-submit}}\" om de handeling uit te voeren.",
"usermerge-noolduser": "De oude gebruiker is niet opgegeven.",
@@ -24,10 +23,8 @@
"usermerge-deleteolduser": "Oude gebruiker verwijderen",
"usermerge-submit": "Gebruiker samenvoegen",
"usermerge-badtoken": "Ongeldig bewerkingstoken",
- "usermerge-userdeleted": "{{GENDER:$1|$1}} ($2) is verwijderd.",
- "usermerge-userdeleted-log": "Verwijderde gebruiker: $2 ($3)",
- "usermerge-success": "Samenvoegen van {{GENDER:$1|$1}} ($2) naar {{GENDER:$3|$3}} ($4) is afgerond.",
- "usermerge-success-log": "Gebruiker {{GENDER:$2|$2}} ($3) samengevoegd naar {{GENDER:$4|$4}} ($5)",
+ "usermerge-userdeleted": "$1 ($2) is verwijderd.",
+ "usermerge-success": "Samenvoegen van $1 ($2) naar $3 ($4) is afgerond.",
"usermerge-logpage": "Logboek gebruikerssamenvoegingen",
"usermerge-logpagetext": "Dit is het logboek van gebruikerssamenvoegingen.",
"usermerge-noselfdelete": "U kunt niet verwijderen of samenvoegen van {{GENDER:$1|uzelf}}!",
@@ -36,5 +33,10 @@
"action-usermerge": "gebruikers samen te voegen",
"usermerge-autopagedelete": "Automatisch verwijderd bij het samenvoegen van gebruikers",
"usermerge-page-unmoved": "De pagina $1 kon niet hernoemd worden naar $2.",
- "usermerge-move-log": "Pagina automatisch hernoemd bij het samenvoegen van gebruiker \"[[User:$1|$1]]\" naar \"[[User:$2|{{GENDER:$2|$2}}]]\""
+ "usermerge-move-log": "Pagina automatisch hernoemd bij het samenvoegen van gebruiker \"$1\" naar \"[[User:$2|$2]]\"",
+ "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|heeft}} het gebruikersaccount \"$4\" ($5) in {{GENDER:$8|$6}} samengevoegd ($7)",
+ "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|verwijderde}} het gebruikersaccount \"$4\" ($5)",
+ "log-action-filter-usermerge": "Soort handeling:",
+ "log-action-filter-usermerge-mergeuser": "Samenvoegen van een account",
+ "log-action-filter-usermerge-deleteuser": "Verwijderen van een account"
}
diff --git a/UserMerge/i18n/nn.json b/UserMerge/i18n/nn.json
index 1d916547..f4246fae 100644
--- a/UserMerge/i18n/nn.json
+++ b/UserMerge/i18n/nn.json
@@ -9,7 +9,6 @@
},
"usermerge": "Slå saman og slett brukarar",
"usermerge-desc": "Gjev høve til å [[Special:UserMerge|slå saman kontoar]] ved at alle referansar til ein brukar vert bytta ut til ein annen brukar i databasen, for så å slette den eine kontoen. Krev rett til ''usermerge''.",
- "usermerge-badolduser": "Gammalt brukernamn ugyldig",
"usermerge-badnewuser": "Nytt brukernamn ugyldig",
"usermerge-nonewuser": "Nytt brukarnamn tomt &ndash; går ut frå samanslåing til $1.<br />Klikk \"{{int:usermerge-submit}}\" for å godta",
"usermerge-noolduser": "Gammalt brukarnamn tomt",
@@ -20,9 +19,7 @@
"usermerge-submit": "Slå saman brukarar",
"usermerge-badtoken": "Ugyldig redigeringsteikn",
"usermerge-userdeleted": "$1 ($2) er sletta.",
- "usermerge-userdeleted-log": "Sletta brukar: $2 ($3)",
"usermerge-success": "Samanslåing frå $1 ($2) til $3 ($4) er ferdig.",
- "usermerge-success-log": "Brukaren $2 ($3) slått saman med $4 ($5)",
"usermerge-logpage": "Brukarsamanslåingslogg",
"usermerge-logpagetext": "Dette er ein logg over brukarsamanslåingar.",
"usermerge-noselfdelete": "Du kan ikkje slette eller slå saman din eigen konto!",
diff --git a/UserMerge/i18n/oc.json b/UserMerge/i18n/oc.json
index b12f6f6e..9b033d0b 100644
--- a/UserMerge/i18n/oc.json
+++ b/UserMerge/i18n/oc.json
@@ -6,7 +6,6 @@
},
"usermerge": "Fusionar utilizaire e destruire",
"usermerge-desc": "[[Special:UserMerge|Fusiona las referéncias d'un utilizaire cap a un autre]] dins la basa de donadas wiki - suprimirà tanben las fusions d'utilizaires ancianas seguentas.",
- "usermerge-badolduser": "Nom d'utilizaire ancian invalid",
"usermerge-badnewuser": "Nom d'utilizaire novèl invalid",
"usermerge-nonewuser": "Nom d'utilizaire novèl void. Supausam que volètz fusionar dins \"{{GENDER:$1|$1}}\".<br />\nClicatz sus « {{int:usermerge-submit}} » per acceptar.",
"usermerge-noolduser": "Nom d'utilizaire ancian void",
@@ -17,9 +16,7 @@
"usermerge-submit": "Fusionar utilizaire",
"usermerge-badtoken": "Geton d'edicion invalid",
"usermerge-userdeleted": "$1 ($2) es estat suprimi{{GENDER:$1|t|da}}.",
- "usermerge-userdeleted-log": "Contributor escafat : $2($3)",
"usermerge-success": "La fusion de {{GENDER:$1|$1}} ($2) amb {{GENDER:$3|$3}} ($4) es acabada.",
- "usermerge-success-log": "{{GENDER:$2|Utilizator|Utilizatritz}} $2 ($3) fusiona{{GENDER:$2|t|da}} amb {{GENDER:$4|$4}} ($5)",
"usermerge-logpage": "Jornal de las fusions de contributors",
"usermerge-logpagetext": "Aquò es un jornal de las accions de fusions de contributors.",
"usermerge-noselfdelete": "Podètz pas, vos-{{GENDER:$1|meteis|meteissa}}, vos suprimir ni vos fusionar !",
diff --git a/UserMerge/i18n/pl.json b/UserMerge/i18n/pl.json
index 593b0dcd..a7f48e5d 100644
--- a/UserMerge/i18n/pl.json
+++ b/UserMerge/i18n/pl.json
@@ -1,23 +1,25 @@
{
"@metadata": {
"authors": [
+ "Alan ffm",
"BeginaFelicysym",
+ "Chrumps",
"Derbeth",
"Masti",
- "Sp5uhe",
- "Wpedzich",
- "Alan ffm",
- "Chrumps",
+ "Matma Rex",
"Michał Sobkowski",
- "Matma Rex"
+ "Rail",
+ "Railfail536",
+ "Sp5uhe",
+ "Wpedzich"
]
},
"usermerge": "Integruj i usuń użytkowników",
"usermerge-desc": "[[Special:UserMerge|Integruje odwołania dla jednego użytkownika do drugiego]] w bazie danych wiki – usuwa również dotychczasowego użytkownika po integracji. Wymaga uprawnienia ''usermerge''",
- "usermerge-badolduser": "Nieprawidłowa nazwa dotychczasowego użytkownika",
"usermerge-badnewuser": "Nieprawidłowa nazwa nowego użytkownika",
- "usermerge-nonewuser": "Pusta nazwa nowego użytkownika – integracja nastąpi z $1.<br />\nKliknij „{{int:usermerge-submit}}”, aby zaakceptować.",
+ "usermerge-nonewuser": "Pusta nazwa nowego użytkownika – nastąpi integracja z kontem $1.<br />\nKliknij „{{int:usermerge-submit}}”, aby zaakceptować.",
"usermerge-noolduser": "Pusta nazwa dotychczasowego użytkownika",
+ "usermerge-same-old-and-new-user": "Nowa nazwa użytkownika musi różnic się od starej.",
"usermerge-fieldset": "Nazwy kont użytkowników do integracji",
"usermerge-olduser": "Dotychczasowy użytkownik (do integracji)",
"usermerge-newuser": "Nowy użytkownik (integruj z)",
@@ -25,9 +27,7 @@
"usermerge-submit": "Integruj użytkowników",
"usermerge-badtoken": "Nieprawidłowy kod weryfikacyjny (token).",
"usermerge-userdeleted": "$1 ($2) {{GENDER:$1|został usunięty|została usunięta}}.",
- "usermerge-userdeleted-log": "usunął użytkownika „$2” ($3)",
- "usermerge-success": "Integracja {{GENDER:$1|$1}} ($2) z {{GENDER:$3|$3}} ($4) została zakończona.",
- "usermerge-success-log": "zintegrował użytkownika „$2” ($3) do „$4” ($5)",
+ "usermerge-success": "Integracja $1 ($2) z $3 ($4) została zakończona.",
"usermerge-logpage": "Rejestr integracji użytkowników",
"usermerge-logpagetext": "To jest rejestr operacji integracji użytkowników.",
"usermerge-noselfdelete": "Nie możesz usunąć lub zintegrować {{GENDER:$1|samego|samej}} siebie!",
@@ -36,5 +36,10 @@
"action-usermerge": "łączenie kont użytkowników",
"usermerge-autopagedelete": "Automatycznie usuwane strony podczas scalania użytkowników",
"usermerge-page-unmoved": "Strona $1 nie mogła zostać przeniesiona pod nazwę $2.",
- "usermerge-move-log": "Automatyczne przeniesiono stronę po zmianie nazwy konta z \"[[User:$1|$1]]\" na \"[[User:$2|$2]]\""
+ "usermerge-move-log": "Automatyczne przeniesiono stronę po zintegrowaniu konta „$1” z „[[User:$2|$2]]”",
+ "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|zintegrował|zintegrowała}} konto „$4” ($5) z {{GENDER:$8|$6}} ($7)",
+ "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|usunął|usunęła}} konto użytkownika „$4” ($5)",
+ "log-action-filter-usermerge": "Rodzaj działania:",
+ "log-action-filter-usermerge-mergeuser": "Integracja konta",
+ "log-action-filter-usermerge-deleteuser": "Usuwanie konta"
}
diff --git a/UserMerge/i18n/pms.json b/UserMerge/i18n/pms.json
index 92fbb4f7..205851b5 100644
--- a/UserMerge/i18n/pms.json
+++ b/UserMerge/i18n/pms.json
@@ -8,7 +8,6 @@
},
"usermerge": "Union e scancelament d'utent",
"usermerge-desc": "[[Special:UserMerge|A uniss j'arferiment da n'utent a n'àutr utent]] ant ël database wiki - a scanselerà ëdcò ij vej utent d'apress l'union. A veul ij pribilegi ''usermerge''",
- "usermerge-badolduser": "Vej stranòm nen bon",
"usermerge-badnewuser": "Neuv stranòm nen bon",
"usermerge-nonewuser": "Neuv stranòm veujd. I chërdoma ch'a veula gionz-se an «{{GENDER:$1|$1}}».<br />\nCh'a sgnaca \"{{int:usermerge-submit}}\" për aceté.",
"usermerge-noolduser": "Vej stranòm veujd",
@@ -19,9 +18,7 @@
"usermerge-submit": "Unì Utent",
"usermerge-badtoken": "Geton d'edission nen bon",
"usermerge-userdeleted": "$1($2) a l'é stàit scancelà.",
- "usermerge-userdeleted-log": "Utent scanselà: $2 ($3)",
"usermerge-success": "Union da $1($2) a {{GENDER:$3}} ($4) completà.",
- "usermerge-success-log": "Utent $2 ($3) unì a {{GENDER:$4}} ($5)",
"usermerge-logpage": "Registr dle union utent",
"usermerge-logpagetext": "Sto sì a l'é un registr ëd le assion d'union utent.",
"usermerge-noselfdelete": "It peule pa scanselé o unì ti midem!",
diff --git a/UserMerge/i18n/pt-br.json b/UserMerge/i18n/pt-br.json
index d3cfd4b2..7b8f0066 100644
--- a/UserMerge/i18n/pt-br.json
+++ b/UserMerge/i18n/pt-br.json
@@ -1,23 +1,22 @@
{
"@metadata": {
"authors": [
+ "!Silent",
+ "Araceletorres",
"Crazymadlover",
+ "Eduardo Addad de Oliveira",
"Eduardo.mps",
+ "Felipe L. Ewald",
+ "He7d3r",
+ "Helder.wiki",
"Jorge Morais",
"Luckas",
- "Helder.wiki",
- "He7d3r",
"Nemo bis",
- "Araceletorres",
- "Opraco",
- "!Silent",
- "Felipe L. Ewald",
- "Eduardo Addad de Oliveira"
+ "Opraco"
]
},
"usermerge": "Fusão e eliminação de utilizadores",
"usermerge-desc": "[[Special:UserMerge|Unifica as referências de um usuário em outro usuário]] no banco de dados da wiki - também apagará o antigo usuário após a fusão. Requer privilégio ''usermerge''",
- "usermerge-badolduser": "Nome antigo inválido.",
"usermerge-badnewuser": "Nome novo inválido.",
"usermerge-nonewuser": "Novo nome de usuário vazio. Assumida fusão com \"{{GENDER:$1|$1}}\".<br />\nClique \"{{int:usermerge-submit}}\" para aceitar.",
"usermerge-noolduser": "Limpar nome antigo.",
@@ -29,9 +28,7 @@
"usermerge-submit": "Fundir usuário",
"usermerge-badtoken": "Token de edição inválido.",
"usermerge-userdeleted": "$1 ($2) foi eliminado.",
- "usermerge-userdeleted-log": "apagou a conta do usuário \"$2\" ($3)",
"usermerge-success": "A fusão de $1 ($2) com $3 ($4) está completa.",
- "usermerge-success-log": "a conta \"$2\" ($3) foi fundida no usuário \"[[User:$4|$4]]\" ($5)",
"usermerge-logpage": "Registro de fusão de usuários",
"usermerge-logpagetext": "Este é um registro de ações de fusão de utilizadores.",
"usermerge-noselfdelete": "Não pode apagar ou fundir a sua {{GENDER:$1|própria}} conta!",
@@ -40,5 +37,10 @@
"action-usermerge": "fundir usuários",
"usermerge-autopagedelete": "Página eliminada automaticamente ao fundir usuários",
"usermerge-page-unmoved": "A página $1 não pode ser movida para $2.",
- "usermerge-move-log": "Página movida automaticamente ao fundir a conta \"$1\" no usuário\"[[User:$2|$2]]\""
+ "usermerge-move-log": "Página movida automaticamente ao fundir a conta \"$1\" no usuário\"[[User:$2|$2]]\"",
+ "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|fundiu}} a conta de usuário \"$4\" ($5) com {{GENDER:$8|$6}} ($7)",
+ "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|eliminou}} a conta de usuário \"$4\" ($5)",
+ "log-action-filter-usermerge": "Tipo de ação:",
+ "log-action-filter-usermerge-mergeuser": "Mesclagem de conta de usuário",
+ "log-action-filter-usermerge-deleteuser": "Exclusão de conta do usuário"
}
diff --git a/UserMerge/i18n/pt.json b/UserMerge/i18n/pt.json
index 41964197..4eb426a0 100644
--- a/UserMerge/i18n/pt.json
+++ b/UserMerge/i18n/pt.json
@@ -1,24 +1,23 @@
{
"@metadata": {
"authors": [
+ "Athena in Wonderland",
"Crazymadlover",
"Hamilton Abreu",
+ "He7d3r",
+ "Helder.wiki",
"Jorge Morais",
"Lijealso",
"Luckas",
"Malafaya",
+ "MokaAkashiyaPT",
"Sir Lestaty de Lioncourt",
- "Waldir",
"Vitorvicentevalente",
- "Helder.wiki",
- "He7d3r",
- "MokaAkashiyaPT",
- "Athena in Wonderland"
+ "Waldir"
]
},
"usermerge": "Fusão e eliminação de utilizadores",
"usermerge-desc": "[[Special:UserMerge|Faz a fusão das referências a um utilizador com as de outro utilizador]] na base de dados da wiki - também apaga o utilizador antigo após a fusão. Requer o privilégio ''usermerge''",
- "usermerge-badolduser": "Nome antigo inválido.",
"usermerge-badnewuser": "Nome novo inválido.",
"usermerge-nonewuser": "O nome de utilizador novo está vazio. Será assumida a fusão com {{GENDER:$1|$1}}.<br />\nClique \"{{int:usermerge-submit}}\" para aceitar.",
"usermerge-noolduser": "O nome de utilizador antigo está vazio.",
@@ -30,9 +29,7 @@
"usermerge-submit": "Fundir utilizador",
"usermerge-badtoken": "Chave de edição inválida.",
"usermerge-userdeleted": "$1 ($2) foi eliminado.",
- "usermerge-userdeleted-log": "apagou a conta do utilizador \"$2\" ($3)",
"usermerge-success": "A fusão de $1 ($2) com $3 ($4) está completa.",
- "usermerge-success-log": "a conta \"$2\" ($3) foi fundida no utilizador \"[[User:$4|$4]]\" ($5)",
"usermerge-logpage": "Registo de fusão de utilizadores",
"usermerge-logpagetext": "Este é um registo de ações de fusão de utilizadores.",
"usermerge-noselfdelete": "Não pode apagar ou fundir a sua {{GENDER:$1|própria}} conta!",
@@ -41,5 +38,10 @@
"action-usermerge": "fundir utilizadores",
"usermerge-autopagedelete": "Página eliminada automaticamente ao fundir utilizadores",
"usermerge-page-unmoved": "Não foi possível mover a página $1 para $2.",
- "usermerge-move-log": "Página movida automaticamente ao fundir a conta \"$1\" no utilizador \"[[User:$2|$2]]\""
+ "usermerge-move-log": "Página movida automaticamente ao fundir a conta \"$1\" no utilizador \"[[User:$2|$2]]\"",
+ "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|fundiu}} a conta de utilizador \"$4\" ($5) com {{GENDER:$8|$6}} ($7)",
+ "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|eliminou}} a conta de utilizador \"$4\" ($5)",
+ "log-action-filter-usermerge": "Tipo de operação:",
+ "log-action-filter-usermerge-mergeuser": "Fusão de conta de utilizador",
+ "log-action-filter-usermerge-deleteuser": "Eliminação de conta de utilizador"
}
diff --git a/UserMerge/i18n/qqq.json b/UserMerge/i18n/qqq.json
index fde37cc5..e05a64b8 100644
--- a/UserMerge/i18n/qqq.json
+++ b/UserMerge/i18n/qqq.json
@@ -3,18 +3,17 @@
"authors": [
"Fryed-peach",
"Jon Harald Søby",
+ "Legoktm",
"Meno25",
"Nemo bis",
"Purodha",
"Shirayuki",
"Siebrand",
- "Umherirrender",
- "Legoktm"
+ "Umherirrender"
]
},
"usermerge": "{{doc-special|UserMerge}}",
"usermerge-desc": "{{desc|name=User Merge|url=https://www.mediawiki.org/wiki/Extension:User_Merge_and_Delete}}",
- "usermerge-badolduser": "Used as error message.",
"usermerge-badnewuser": "Used as error message.",
"usermerge-nonewuser": "{{doc-important|Do not translate <code><nowiki>{{int:usermerge-submit}}</nowiki></code>.}}\nUsed as error message.\n\nRefers to {{msg-mw|Usermerge-submit}}.\n\nParameters:\n* $1 - username \"Anonymous\" (hard-coded)",
"usermerge-noolduser": "Used as warning when merging users.",
diff --git a/UserMerge/i18n/ro.json b/UserMerge/i18n/ro.json
index 34da2827..a94c5397 100644
--- a/UserMerge/i18n/ro.json
+++ b/UserMerge/i18n/ro.json
@@ -1,6 +1,7 @@
{
"@metadata": {
"authors": [
+ "Andrei Stroe",
"KlaudiuMihaila",
"Mihai",
"XXN"
@@ -8,9 +9,8 @@
},
"usermerge": "Contopire și ștergere utilizatori",
"usermerge-desc": "[[Special:UserMerge|Contopește două conturi diferite de utilizatori]] totodată șterge din baza de date wiki contul de utilizator vechi ca urmare a contopirii. Necesită drepturi speciale (''usermerge'')",
- "usermerge-badolduser": "Nume de utilizator vechi incorect",
"usermerge-badnewuser": "Nume de utilizator nou incorect",
- "usermerge-nonewuser": "Noul nume de utilizator nu este introdus - Este presupusă fuzionarea în \"$1\".<br />\nApasă \"{{int:usermerge-submit}}\" pentru a accepta.",
+ "usermerge-nonewuser": "Nume de utilizator nou gol. Presupun fuziune cu „{{GENDER:$1|S1}}”<br />\nApasă „{{int:usermerge-submit}}” pentru a accepta.",
"usermerge-noolduser": "Nume de utilizator vechi gol",
"usermerge-fieldset": "Nume de utilizator de contopit",
"usermerge-olduser": "Utilizator vechi (redenumește din):",
@@ -19,12 +19,10 @@
"usermerge-submit": "Contopește utilizatorul",
"usermerge-badtoken": "Jetonul de modificare este invalid",
"usermerge-userdeleted": "$1 ($2) a fost șters.",
- "usermerge-userdeleted-log": "Șters utilizator: $2 ($3)",
- "usermerge-success": "Contopirea din $1 ($2) în $3 ($4) este completă.",
- "usermerge-success-log": "Utilizatorul $2 ($3) a fost contopit în $4 ($5)",
+ "usermerge-success": "Fuziunea din $1 ($2) cu $3 ($4) este finalizată.",
"usermerge-logpage": "Jurnal contopire utilizatori",
"usermerge-logpagetext": "Acesta este jurnalul acțiunilor de contopire a conturilor de utilizator.",
- "usermerge-noselfdelete": "Nu poate fi șters sau contopit contul propriu!",
+ "usermerge-noselfdelete": "Nu poate fi șters sau contopit {{GENDER:$1|contul propriu}}!",
"usermerge-protectedgroup": "Nu poate fi contopit utilizatorul - utilizatorul face parte dintr-un grup protejat.",
"right-usermerge": "Contopire conturi de utilizator"
}
diff --git a/UserMerge/i18n/roa-tara.json b/UserMerge/i18n/roa-tara.json
index 2b7c2cd5..3595a67b 100644
--- a/UserMerge/i18n/roa-tara.json
+++ b/UserMerge/i18n/roa-tara.json
@@ -6,7 +6,6 @@
},
"usermerge": "Scuagghie e scangille le utinde",
"usermerge-desc": "[[Special:UserMerge|Scuagghie le refereminde da 'n'utende a 'n'otre utende]] jndr'à 'u database de uicchi - avènene scangellate pure le vicchie utinde apprisse 'u scuagghiamende. A tenè le deritte de ''usermerge''",
- "usermerge-badolduser": "Nome utende vecchije invalide",
"usermerge-badnewuser": "Nome utende nuève invalide",
"usermerge-nonewuser": "Nome utende nuève vacande. Se decide de scuagghiarle jndr'à \"{{GENDER:$1|$1}}\".<br />\nCazze \"{{int:usermerge-submit}}\" pe accettà.",
"usermerge-noolduser": "Vacande 'u nome utende vecchie.",
@@ -17,17 +16,20 @@
"usermerge-deleteolduser": "Scangellate vecchie utende",
"usermerge-submit": "Scuagghie l'utende",
"usermerge-badtoken": "Gettone de cangiamende invalide.",
- "usermerge-userdeleted": "{{GENDER:$1|$1}} ($2) ha state scangellate.",
- "usermerge-userdeleted-log": "Utende scangellate: $2 ($3)",
- "usermerge-success": "'U scuagghiamende da {{GENDER:$1|$1}} ($2) a {{GENDER:$3|$3}} ($4) ha state combletate.",
- "usermerge-success-log": "Utende {{GENDER:$2|$2}} ($3) scuagghiate jndr'à {{GENDER:$4|$4}} ($5)",
+ "usermerge-userdeleted": "$1 ($2) ha state scangellate.",
+ "usermerge-success": "'U scuagghiamende da $1 ($2) a $3 ($4) ha state combletate.",
"usermerge-logpage": "Archivije de le scuagghiaminde de le utinde",
"usermerge-logpagetext": "Quiste jè 'n'archivie de le aziune de scuagghiamende de l'utende.",
"usermerge-noselfdelete": "Non ge puà scangellarte o scuagghiarte {{GENDER:$1|da sule}}!",
- "usermerge-protectedgroup": "Non ge pozze scuagghia cu {{GENDER:$1|l'utende}}: L'utende ste jndr'à 'nu gruppe prutette.",
+ "usermerge-protectedgroup": "Non ge pozze scuagghia cu {{GENDER:$1|l'utende}}: l'utende ste jndr'à 'nu gruppe prutette.",
"right-usermerge": "Scuagghie le utinde",
"action-usermerge": "scuagghie le utinde",
- "usermerge-autopagedelete": "Automaticamende scangellate quanne onne state scuagghiate le utinde",
+ "usermerge-autopagedelete": "Automaticamende pàgene scangellate quanne onne state scuagghiate le utinde",
"usermerge-page-unmoved": "'A pàgene $1 non ge pò essere spustate sus a $2.",
- "usermerge-move-log": "Automaticamende spustate 'a pàgene quanne ha state scuagghiate l'utende \"[[User:$1|$1]]\" jndr'à \"[[User:$2|{{GENDER:$2|$2}}]]\""
+ "usermerge-move-log": "Automaticamende spustate 'a pàgene quanne ha state scuagghiate l'utende \"$1\" jndr'à \"[[User:$2|$2]]\"",
+ "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|avevscuagghiate}} 'u cunde utende \"$4\" ($5) jndr'à {{GENDER:$8|$6}} ($7)",
+ "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|ave scangellate}} 'u cunde utende \"$4\" ($5)",
+ "log-action-filter-usermerge": "Tipe de azione:",
+ "log-action-filter-usermerge-mergeuser": "Scuagghiamende d'u cunde utende",
+ "log-action-filter-usermerge-deleteuser": "Scangellazzione d'u cunde utende"
}
diff --git a/UserMerge/i18n/ru.json b/UserMerge/i18n/ru.json
index c470fcdc..0547cc5a 100644
--- a/UserMerge/i18n/ru.json
+++ b/UserMerge/i18n/ru.json
@@ -2,19 +2,20 @@
"@metadata": {
"authors": [
"Askarmuk",
+ "Diman Russkov",
"Ferrer",
"Illusion",
"Innv",
"Kaganer",
+ "Movses",
"Okras",
"Ole Yves",
- "Александр Сигачёв",
- "Movses"
+ "Vlad5250",
+ "Александр Сигачёв"
]
},
"usermerge": "Объединение и удаление учётных записей",
"usermerge-desc": "[[Special:UserMerge|Переводит связи с одного участника на другого]] в базе данных вики, старые пользователи будут удаляться. Требует прав ''usermerge''",
- "usermerge-badolduser": "Неправильное старое имя участника",
"usermerge-badnewuser": "Неправильное новое имя участника",
"usermerge-nonewuser": "Пустое новое имя участника — при слиянии с «{{GENDER:$1|$1}}».<br />\nНажмите «{{int:usermerge-submit}}», чтобы подтвердить действие.",
"usermerge-noolduser": "Пустое старое имя участника",
@@ -26,16 +27,19 @@
"usermerge-submit": "Объединить участников",
"usermerge-badtoken": "Недействительный маркер правки",
"usermerge-userdeleted": "$1 ($2) {{GENDER:$1|был удалён|была удалена}}.",
- "usermerge-userdeleted-log": "удалена учётная запись участника «$2» ($3)",
"usermerge-success": "Объединение $1 ($2) с $3 ($4) завершено.",
- "usermerge-success-log": "Учётная запись {{GENDER:$2|участника|участницы}} $2 ($3) присоединена к учётной записи {{GENDER:$4|участника|участницы}} \"[[User:$4|$4]]\" ($5)",
"usermerge-logpage": "Журнал объединения участников",
"usermerge-logpagetext": "Это журнал объединения учётных записей.",
"usermerge-noselfdelete": "Вы не можете удалять или объединять {{GENDER:$1|себя самого}}!",
"usermerge-protectedgroup": "Невозможно объединить {{GENDER:$1|участников}} — участник относится к защищённой группе.",
- "right-usermerge": "объединение участников",
+ "right-usermerge": "Объединение участников",
"action-usermerge": "объединение участников",
"usermerge-autopagedelete": "Автоматически удалённая страница при объединении участников",
"usermerge-page-unmoved": "Страница $1 не может быть переименована в $2.",
- "usermerge-move-log": "Автоматически переименованная страница во время объединения учётной записи «$1» с «[[User:$2|$2]]»"
+ "usermerge-move-log": "Автоматически переименованная страница во время объединения учётной записи «$1» с «[[User:$2|$2]]»",
+ "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|объединил|объединила}} учётную запись \"$4\" ($5) с {{GENDER:$8|$6}} ($7)",
+ "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|удалил|удалила}} учётную запись \"$4\" ($5)",
+ "log-action-filter-usermerge": "Тип действия:",
+ "log-action-filter-usermerge-mergeuser": "Объединение учётных записей",
+ "log-action-filter-usermerge-deleteuser": "Удаление учётной записи"
}
diff --git a/UserMerge/i18n/rue.json b/UserMerge/i18n/rue.json
index 2ef808b3..ada70eda 100644
--- a/UserMerge/i18n/rue.json
+++ b/UserMerge/i18n/rue.json
@@ -6,6 +6,5 @@
},
"usermerge-noolduser": "Порожнє старе мено хоснователя",
"usermerge-deleteolduser": "Змазати старого хоснователя",
- "usermerge-userdeleted": "$1 ($2) быв змазаный.",
- "usermerge-userdeleted-log": "Змазаный хоснователь: $2 ($3)"
+ "usermerge-userdeleted": "$1 ($2) быв змазаный."
}
diff --git a/UserMerge/i18n/sh.json b/UserMerge/i18n/sh.json
new file mode 100644
index 00000000..448b90fd
--- /dev/null
+++ b/UserMerge/i18n/sh.json
@@ -0,0 +1,29 @@
+{
+ "@metadata": {
+ "authors": [
+ "Vlad5250"
+ ]
+ },
+ "usermerge": "Spajanje i brisanje korisnika",
+ "usermerge-badnewuser": "Nevaljano novo korisničko ime",
+ "usermerge-nonewuser": "Prazno novo korisničko ime. Pretpostavlja se spajanje na \"{{GENDER:$1|$1}}\".<br />\nKliknite na \"{{int:usermerge-submit}}\" za prihvatanje.",
+ "usermerge-noolduser": "Prazno staro korisničko ime",
+ "usermerge-same-old-and-new-user": "Staro i novo korisničko ime treba da se razlikovati.",
+ "usermerge-fieldset": "Korisnička imena za spajanje",
+ "usermerge-olduser": "Stari korisnik (za spajanje od):",
+ "usermerge-newuser": "Novi korisnik (za spajanje sa):",
+ "usermerge-deleteolduser": "Obriši starog korisnika",
+ "usermerge-submit": "Spoji korisnika",
+ "usermerge-badtoken": "Nevaljan token izmjene",
+ "usermerge-userdeleted": "$1 ($2) je obrisan.",
+ "usermerge-success": "Spajanje $1 ($2) u $3 ($4) je gotovo.",
+ "usermerge-logpage": "Evidencija spajanja korisnika",
+ "usermerge-logpagetext": "Ovo je evidencija spajanja korisničkih imena.",
+ "usermerge-noselfdelete": "Ne možete se obrisati niti spojiti {{GENDER:$1|sami sa sobom}}!",
+ "usermerge-protectedgroup": "Nije moguće spojiti {{GENDER:$1|korisnike}}: korisnik je u zaštićenoj grupi.",
+ "right-usermerge": "Spajanje korisnika",
+ "action-usermerge": "spajanje korisnika",
+ "usermerge-autopagedelete": "Automatski obrisana stranica prilikom spajanja korisnika",
+ "usermerge-page-unmoved": "Nisam moegao premjestiti stranicu $1 na $2.",
+ "log-action-filter-usermerge": "Vrsta radnje:"
+}
diff --git a/UserMerge/i18n/si.json b/UserMerge/i18n/si.json
index 0cd89c6c..11423a8a 100644
--- a/UserMerge/i18n/si.json
+++ b/UserMerge/i18n/si.json
@@ -7,7 +7,6 @@
},
"usermerge": "පරිශීලකයින් මුසු කිරීම හා මැකීම",
"usermerge-desc": "විකිදත්ත ගබඩාවේ ඇති [[Special:UserMerge|එක් පරිශීලකයකුගෙන් තවත් පරිශිලකයෙකුට යොමුවන් මුසු කරයි]] පැරණි පරිශීලකයින්වද මකයි,පහත මුසු කිරීමට ''usermerge'' වරප්‍රසාද අවශ්‍යවේ.",
- "usermerge-badolduser": "වලංගු නොවන පැරණි පරිශීලක නාමය",
"usermerge-badnewuser": "වලංගු නොවන නව පරිශීලක නාමය",
"usermerge-nonewuser": "හිස් නව පරිශීලක නාමය - \"$1\" ට මුසු කිරීමට උපකල්පනය කරමින්.<br />\nපිළිගැනීමට \"{{int:usermerge-submit}}\" ක්ලික් කරන්න.",
"usermerge-noolduser": "හිස් පැරණි පරිශීලක නාමය",
@@ -18,9 +17,7 @@
"usermerge-submit": "පරිශීලකයා මුසු කරන්න",
"usermerge-badtoken": "වලංගු නොවන සංස්කරණ සංඥාව",
"usermerge-userdeleted": "$1 ($2) මකනු ලැබ ඇත.",
- "usermerge-userdeleted-log": "මකනු ලැබූ පරිශීලක: $2 ($3)",
"usermerge-success": "$1 ($2) සිට $3 ($4) දක්වා මුසු කිරීම සම්පූර්ණ විය.",
- "usermerge-success-log": "$2 ($3) පරිශීලකයා $4 ($5) ට මුසු කරන ලදී",
"usermerge-logpage": "පරිශීලක මුසු කිරීම් ලඝු සටහන",
"usermerge-logpagetext": "මෙය පරිශීලක මුසු කිරීම් කාර්යයන්වල ලඝු සටහනකි.",
"usermerge-noselfdelete": "ඔබ විසින්ම මැකීම හෝ මුසු කිරීම සිදු කරනු ලැබිය නොහැකිය!",
diff --git a/UserMerge/i18n/sk.json b/UserMerge/i18n/sk.json
index fcd79e95..e6e135d3 100644
--- a/UserMerge/i18n/sk.json
+++ b/UserMerge/i18n/sk.json
@@ -1,14 +1,14 @@
{
"@metadata": {
"authors": [
- "Helix84"
+ "Helix84",
+ "Luky001"
]
},
"usermerge": "Zlúčenie a zmazanie používateľov",
"usermerge-desc": "[[Special:UserMerge|Zlučuje odkazy na jedného používateľa na odkazy na druhého]] v databáze wiki; tiež následne zmaže starého používateľa. Vyžaduje oprávnenie ''usermerge''.",
- "usermerge-badolduser": "Neplatné staré používateľské meno",
"usermerge-badnewuser": "Neplatné nové používateľské meno",
- "usermerge-nonewuser": "Prázdne nové používateľské meno - predpokladá sa zlúčenie do „$1“.<br />\nKliknutím na „{{int:usermerge-submit}}“ prijmete.",
+ "usermerge-nonewuser": "Nové používateľské meno je prázdne. Predpokladá sa zlúčenie do „$1“.<br />\nPotvrdiť môžete kliknutím na „{{int:usermerge-submit}}“.",
"usermerge-noolduser": "Prázdne staré používateľské meno",
"usermerge-fieldset": "Zlúčiť používateľov",
"usermerge-olduser": "Starý používateľ (zlúčiť odtiaľto)",
@@ -16,13 +16,11 @@
"usermerge-deleteolduser": "Zmazať starého používateľa",
"usermerge-submit": "Zlúčiť používateľov",
"usermerge-badtoken": "Neplatný token úprav",
- "usermerge-userdeleted": "$1($2) bol zmazaný.",
- "usermerge-userdeleted-log": "Zmazaný používateľ: $2($3)",
- "usermerge-success": "Zlúčenie z $1($2) do $3($4) je dokončené.",
- "usermerge-success-log": "Používateľ $2($3) bol zlúčený do $4($5)",
+ "usermerge-userdeleted": "Účet $1 ($2) bol zmazaný.",
+ "usermerge-success": "Zlúčenie účtu $1 ($2) do $3 ($4) je dokončené.",
"usermerge-logpage": "Záznam zlúčení používateľov",
"usermerge-logpagetext": "Toto je záznam zlúčení používateľov.",
- "usermerge-noselfdelete": "Nemôžete zmazať alebo zlúčiť svoj účet!",
- "usermerge-protectedgroup": "Nebolo možné zlúčiť uvedeného používateľa - používateľ je v chránenej skupine.",
+ "usermerge-noselfdelete": "{{GENDER:$1|Nemôžete}} zmazať alebo zlúčiť svoj účet!",
+ "usermerge-protectedgroup": "Nebolo možné zlúčiť {{GENDER:$1|uvedeného používateľa|uvedenú používateľku}}: {{GENDER:$1|používateľ|používateľka}} je v chránenej skupine.",
"right-usermerge": "Zlučovať používateľov"
}
diff --git a/UserMerge/i18n/sl.json b/UserMerge/i18n/sl.json
index 37358a94..547a6c55 100644
--- a/UserMerge/i18n/sl.json
+++ b/UserMerge/i18n/sl.json
@@ -6,7 +6,6 @@
},
"usermerge": "Spoji in izbriši uporabnike",
"usermerge-desc": "[[Special:UserMerge|Združi sklice iz enega uporabnika na drugega]] v zbirki podatkov wikija – prav tako po združitvi izbriše stare uporabnika. Potrebuje pravico ''usermerge''",
- "usermerge-badolduser": "Neveljavno staro uporabniško ime",
"usermerge-badnewuser": "Neveljavno novo uporabniško ime",
"usermerge-nonewuser": "Prazno novo uporabniško ime. Predpostavljam združitev z »{{GENDER:$1|$1}}«.<br />\nKliknite »{{int:usermerge-submit}}« za sprejetje.",
"usermerge-noolduser": "Prazno staro uporabniško ime",
@@ -18,9 +17,7 @@
"usermerge-submit": "Spoji uporabnika",
"usermerge-badtoken": "Neveljavni žeton urejanja",
"usermerge-userdeleted": "$1 ($2) smo izbrisali.",
- "usermerge-userdeleted-log": "izbrisal(-a) uporabnika »$2« ($3)",
"usermerge-success": "Združitev iz $1 ($2) v $3 ($4) je končana.",
- "usermerge-success-log": "spojil(-a) račun »$2« ($3) z »[[User:$4|$4]]« ($5)",
"usermerge-logpage": "Dnevnik spajanja uporabnikov",
"usermerge-logpagetext": "To je dnevnik dejanj spajanja uporabnikov.",
"usermerge-noselfdelete": "Ne morete izbrisati ali združevati {{GENDER:$1|sebe}}!",
diff --git a/UserMerge/i18n/sr-ec.json b/UserMerge/i18n/sr-ec.json
index ac7fd751..41c3643c 100644
--- a/UserMerge/i18n/sr-ec.json
+++ b/UserMerge/i18n/sr-ec.json
@@ -1,38 +1,40 @@
{
"@metadata": {
"authors": [
+ "BadDog",
"Milicevic01",
"Rancher",
+ "Zoranzoki21",
"Жељко Тодоровић",
- "Михајло Анђелковић",
- "BadDog",
- "Zoranzoki21"
+ "Михајло Анђелковић"
]
},
"usermerge": "Обједињавање и брисање налога",
- "usermerge-desc": "[[Special:UserMerge|Преноси доприносе једног корисника на другог]] у бази викија; биће избрисани и стари корисници. Потребно је право ''usermerge''.",
- "usermerge-badolduser": "Неважеће старо корисничко име.",
- "usermerge-badnewuser": "Неисправно ново корисничко име.",
- "usermerge-nonewuser": "Ново корисничко име је празно. Претпостављам са се спаја на „{{GENDER:$1|$1}}“.<br />\nКликните на „{{int:usermerge-submit}}“ да бисте прихватили.",
+ "usermerge-desc": "[[Special:UserMerge|Обједињава доприносе једног корисника на другог]] у бази података викија — биће избрисани и стари корисници. Потребно је право ''usermerge''.",
+ "usermerge-badnewuser": "Неважеће ново корисничко име.",
+ "usermerge-nonewuser": "Ново корисничко име је празно. Претпоставља се да се обједињава на „{{GENDER:$1|$1}}”.<br />\nКликните на „{{int:usermerge-submit}}” да бисте прихватили.",
"usermerge-noolduser": "Старо корисничко име је празно.",
"usermerge-same-old-and-new-user": "Ново име налога се мора разликовати од старог.",
"usermerge-fieldset": "Налози за обједињавање",
"usermerge-olduser": "Стари налог:",
"usermerge-newuser": "Нови налог:",
"usermerge-deleteolduser": "Избриши стари налог",
- "usermerge-submit": "Споји корисника",
+ "usermerge-submit": "Обједини налоге",
"usermerge-badtoken": "Неважећи токен измене.",
"usermerge-userdeleted": "$1 ($2) је {{GENDER:$1|избрисан|избрисана}}.",
- "usermerge-userdeleted-log": "избрисан кориснички налог: „$2“ ($3)",
"usermerge-success": "Обједињавање корисника $1 ($2) и $3 ($4) је завршено.",
- "usermerge-success-log": "Налози корисника $2 ($3) и \"[[User:$4|$4]]\" ($5) су обједињени.",
- "usermerge-logpage": "Дневник спајања корисника",
- "usermerge-logpagetext": "Ово је дневник радња спајања корисника.",
+ "usermerge-logpage": "Дневник обједињавања налога",
+ "usermerge-logpagetext": "Ово је дневник радња обједињавања налога.",
"usermerge-noselfdelete": "Не можете избрисати или објединити {{GENDER:$1|сами себе}}!",
"usermerge-protectedgroup": "Не могу да објединим налоге {{GENDER:$1|корисника|кориснице}}: Корисник је у заштићеној групи.",
- "right-usermerge": "спајање корисника",
- "action-usermerge": "спајате кориснике",
+ "right-usermerge": "обједињавање налога",
+ "action-usermerge": "обједињавање налога",
"usermerge-autopagedelete": "Аутоматски се брише при обједињавању налога.",
"usermerge-page-unmoved": "Не могу да преместим страницу $1 у $2.",
- "usermerge-move-log": "Аутоматски премештено при обједињавању налога „$1“ и „[[User:$2|$2]]“."
+ "usermerge-move-log": "Аутоматски премештено при обједињавању налога „$1“ и „[[User:$2|$2]]“.",
+ "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|објединио|објединила}} је кориснички налог „$4” ($5) у {{GENDER:$8|$6}} ($7)",
+ "logentry-usermerge-deleteuser": "$1 је {{GENDER:$2|избрисао|избрисала}} кориснички налог „$4” ($5)",
+ "log-action-filter-usermerge": "Тип радње:",
+ "log-action-filter-usermerge-mergeuser": "Обједињавање корисничког налога",
+ "log-action-filter-usermerge-deleteuser": "Брисање корисничког налога"
}
diff --git a/UserMerge/i18n/sr-el.json b/UserMerge/i18n/sr-el.json
index 4ae50131..b85e6a8b 100644
--- a/UserMerge/i18n/sr-el.json
+++ b/UserMerge/i18n/sr-el.json
@@ -6,26 +6,32 @@
"Rancher"
]
},
- "usermerge": "Spaja i briše korisnike",
- "usermerge-badolduser": "Neispravno staro korisničko ime",
- "usermerge-badnewuser": "Neispravno novo korisničko ime",
- "usermerge-noolduser": "Isprazni staro korisničko ime",
- "usermerge-same-old-and-new-user": "Staro i novo korisničko ime se moraju razlikovati.",
- "usermerge-fieldset": "Korisnička imena za spajanje",
- "usermerge-olduser": "Stari korisnik (spajanje od):",
- "usermerge-newuser": "Novi korisnik (spajanje sa):",
- "usermerge-deleteolduser": "Obriši starog korisnika",
- "usermerge-submit": "Spoji korisnika",
- "usermerge-userdeleted": "$1 ($2) je {{GENDER:$1|obrisan|obrisana}}.",
- "usermerge-userdeleted-log": "Obrisan korisnik: $2 ($3)",
- "usermerge-success": "Spajanje {{GENDER:$1|$1}} ($2) sa {{GENDER:$3|$3}} ($4) je završeno.",
- "usermerge-success-log": "{{GENDER:$2|Korisnik|Korisnica}} $2 ($3) je {{GENDER:$2|spojen|spojena}} sa {{GENDER:$4|$4}} ($5)",
- "usermerge-logpage": "Dnevnik spajanja korisnika",
- "usermerge-logpagetext": "Ovo je dnevnik spajanja korisnika.",
- "usermerge-noselfdelete": "Ne možete da se obrišete ili spojite sa {{GENDER:$1|samim sobom}}!",
- "usermerge-protectedgroup": "Nije moguđe spojiti ovog korisnika sa drugim — nalazi se u zaštićenoj grupi.",
- "right-usermerge": "spajanje korisnika",
- "action-usermerge": "spajanje korisnika",
- "usermerge-autopagedelete": "Automatski obrisano zbog spajanja korisnika",
- "usermerge-move-log": "Automatsko premeštanje stranice zbog spajanja korisnika „[[User:$1|$1]]“ u „[[User:$2|{{GENDER:$2|$2}}]]“"
+ "usermerge": "Objedinjavanje i brisanje naloga",
+ "usermerge-desc": "[[Special:UserMerge|Objedinjava doprinose jednog korisnika na drugog]] u bazi podataka vikija — biće izbrisani i stari korisnici. Potrebno je pravo ''usermerge''.",
+ "usermerge-badnewuser": "Nevažeće novo korisničko ime.",
+ "usermerge-nonewuser": "Novo korisničko ime je prazno. Pretpostavlja se da se objedinjava na „{{GENDER:$1|$1}}”.<br />\nKliknite na „{{int:usermerge-submit}}” da biste prihvatili.",
+ "usermerge-noolduser": "Staro korisničko ime je prazno.",
+ "usermerge-same-old-and-new-user": "Novo ime naloga se mora razlikovati od starog.",
+ "usermerge-fieldset": "Nalozi za objedinjavanje",
+ "usermerge-olduser": "Stari nalog:",
+ "usermerge-newuser": "Novi nalog:",
+ "usermerge-deleteolduser": "Izbriši stari nalog",
+ "usermerge-submit": "Objedini naloge",
+ "usermerge-badtoken": "Nevažeći token izmene.",
+ "usermerge-userdeleted": "$1 ($2) je {{GENDER:$1|izbrisan|izbrisana}}.",
+ "usermerge-success": "Objedinjavanje korisnika $1 ($2) i $3 ($4) je završeno.",
+ "usermerge-logpage": "Dnevnik objedinjavanja naloga",
+ "usermerge-logpagetext": "Ovo je dnevnik radnja objedinjavanja naloga.",
+ "usermerge-noselfdelete": "Ne možete izbrisati ili objediniti {{GENDER:$1|sami sebe}}!",
+ "usermerge-protectedgroup": "Ne mogu da objedinim naloge {{GENDER:$1|korisnika|korisnice}}: Korisnik je u zaštićenoj grupi.",
+ "right-usermerge": "objedinjavanje naloga",
+ "action-usermerge": "objedinjavanje naloga",
+ "usermerge-autopagedelete": "Automatski se briše pri objedinjavanju naloga.",
+ "usermerge-page-unmoved": "Ne mogu da premestim stranicu $1 u $2.",
+ "usermerge-move-log": "Automatski premešteno pri objedinjavanju naloga „$1“ i „[[User:$2|$2]]“.",
+ "logentry-usermerge-mergeuser": "$1 je {{GENDER:$2|objedinio|objedinila}} korisnički nalog „$4” ($5) u {{GENDER:$8|$6}} ($7)",
+ "logentry-usermerge-deleteuser": "$1 je {{GENDER:$2|izbrisao|izbrisala}} korisnički nalog „$4” ($5)",
+ "log-action-filter-usermerge": "Tip radnje:",
+ "log-action-filter-usermerge-mergeuser": "Objedinjavanje korisničkog naloga",
+ "log-action-filter-usermerge-deleteuser": "Brisanje korisničkog naloga"
}
diff --git a/UserMerge/i18n/stq.json b/UserMerge/i18n/stq.json
index 10d95a42..4fd66243 100644
--- a/UserMerge/i18n/stq.json
+++ b/UserMerge/i18n/stq.json
@@ -6,7 +6,6 @@
},
"usermerge": "Benutserkonten touhoopefiere un läskje",
"usermerge-desc": "[[Special:UserMerge|Fiert Benutserkonten in ju Wiki-Doatenbank touhoope]] - dät oolde Benutserkonto wäd ätter ju Touhoopefierenge läsked. Ärfoardert dät ''usermerge''-Gjucht.",
- "usermerge-badolduser": "Uungultigen oolden Benutsernoome",
"usermerge-badnewuser": "Uungultigen näien Benutsernoome",
"usermerge-nonewuser": "Loosen näien Benutsernoome - der is ne Touhoopefierenge mäd „$1“ fermoudjen.<br />\nKlik ap „{{int:usermerge-submit}}“ toun Uutfieren.",
"usermerge-noolduser": "Loosen oolden Benutsernoome",
@@ -16,9 +15,7 @@
"usermerge-submit": "Benutserkonten touhoopefiere",
"usermerge-badtoken": "Uungultich Beoarbaidjen-Token",
"usermerge-userdeleted": "„$1“ ($2) wuud läsked.",
- "usermerge-userdeleted-log": "Läskeden Benutsernoome: „$2“ ($3)",
"usermerge-success": "Ju Touhoopefierenge fon „$1“ ($2) ätter „$3“ ($4) is fulboodich.",
- "usermerge-success-log": "Benutsernoome „$2“ ($3) touhoopefierd mäd „$4“ ($5)",
"usermerge-logpage": "Benutserkonten-Touhoopefierenge-Logbouk",
"usermerge-logpagetext": "Dit is dät Logbouk fon do Benutserkonten-Touhoopefierengen.",
"usermerge-noselfdelete": "Touhoopefierenge mäd aan sälwen is nit muugelk!",
diff --git a/UserMerge/i18n/sv.json b/UserMerge/i18n/sv.json
index a19db006..b695b4d9 100644
--- a/UserMerge/i18n/sv.json
+++ b/UserMerge/i18n/sv.json
@@ -12,7 +12,6 @@
},
"usermerge": "Slå ihop och radera användarkonton",
"usermerge-desc": "Ger möjlighet att [[Special:UserMerge|slå samman användarkonton]] genom att alla referenser till en användare byts ut till en annan användare i databasen, samt att efter sammanslagning radera gamla konton. Kräver behörigheten ''usermerge''.",
- "usermerge-badolduser": "Ogiltigt gammalt användarnamn",
"usermerge-badnewuser": "Ogiltigt nytt användarnamn",
"usermerge-nonewuser": "Tomt nytt användarnamn. Antar sammanslagning till \"{{GENDER:$1|$1}}\".<br />\nKlicka på \"{{int:usermerge-submit}}\" för att godkänna.",
"usermerge-noolduser": "Gammalt användarnamn tomt",
@@ -24,9 +23,7 @@
"usermerge-submit": "Förena konton",
"usermerge-badtoken": "Ogiltigt redigeringstecken",
"usermerge-userdeleted": "$1 ($2) har raderats.",
- "usermerge-userdeleted-log": "raderade användarkontot \"$2\" ($3)",
"usermerge-success": "Sammanslagning från $1 ($2) till $3 ($4) har slutförts.",
- "usermerge-success-log": "slog samman användare \"$2\" ($3) med \"[[User:$4|$4]]\" ($5)",
"usermerge-logpage": "Användarsammanslagningslogg",
"usermerge-logpagetext": "Det här är en logg över sammanslagningar av användarkonton.",
"usermerge-noselfdelete": "Du kan inte radera eller slå samman {{GENDER:$1|ditt}} eget konto!",
@@ -35,5 +32,9 @@
"action-usermerge": "slå ihop användarkonton",
"usermerge-autopagedelete": "Ta bort sida automatiskt när användare sammanfogas",
"usermerge-page-unmoved": "Sidan $1 kan inte tas bort till $2",
- "usermerge-move-log": "Ta automatiskt bort sidan när du slår ihop användare \"$1\" med \"[[User:$2|]]\""
+ "usermerge-move-log": "Ta automatiskt bort sidan när du slår ihop användare \"$1\" med \"[[User:$2|]]\"",
+ "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|slog samman}} användarkontot \"$4\" ($5) till {{GENDER:$8|$6}} ($7)",
+ "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|raderade}} användarkonto \"$4\" ($5)",
+ "log-action-filter-usermerge": "Typ av åtgärd:",
+ "log-action-filter-usermerge-deleteuser": "Radering av användarkonto"
}
diff --git a/UserMerge/i18n/szl.json b/UserMerge/i18n/szl.json
index c410313a..5bfc0a12 100644
--- a/UserMerge/i18n/szl.json
+++ b/UserMerge/i18n/szl.json
@@ -1,12 +1,12 @@
{
"@metadata": {
"authors": [
- "Lajsikonik"
+ "Lajsikonik",
+ "Uostofchuodnego"
]
},
"usermerge": "Skupluj a wyćep użytkowńikůw",
"usermerge-desc": "[[Special:UserMerge|Kupluje odwołańo lů jednygo użytkowńika do drugigo]] we baźe danych wiki – wyćepuje tyż starygo użytkowńika po skuplowańu. Wymogo uprowńyńo ''usermerge''",
- "usermerge-badolduser": "Felerne stare mjano użytkowńika",
"usermerge-badnewuser": "Felerne nowe mjano użytkowńika",
"usermerge-nonewuser": "Puste mjano nowygo użytkowńika – przyjynto, aże nastůmpi integracyjo do $1. <br />Naciś \"{{int:usermerge-submit}}\", coby zaakceptować.",
"usermerge-noolduser": "Puste stare mjano użytkowńika",
@@ -14,13 +14,11 @@
"usermerge-newuser": "Nowy użytkowńik (kupluj s)",
"usermerge-deleteolduser": "Wyćepać starygo użytkowńika?",
"usermerge-submit": "Kupluj użytkowńikůw",
- "usermerge-badtoken": "Ńyprowidłowy żetůn sprowjyńo",
+ "usermerge-badtoken": "Niynŏleżny tokyn edycyje.",
"usermerge-userdeleted": "$1 ($2) zostoł wyćepany.",
- "usermerge-userdeleted-log": "wyćepoł użytkowńika „$2” ($3)",
"usermerge-success": "Kuplowańy $1 ($2) s $3 ($4) zakończůne.",
- "usermerge-success-log": "skuplowoł użytkowńika „$2” ($3) do „$4” ($5)",
- "usermerge-logpage": "Rejer kuplowańo użytkowńików",
- "usermerge-logpagetext": "To je rejer uoperacyji kuplowańo użytkowńikůw.",
+ "usermerge-logpage": "Regest kuplowaniŏ używŏczōw",
+ "usermerge-logpagetext": "To je regest kuplowań używŏczōw.",
"usermerge-noselfdelete": "Ńy idźe wyćepać abo kuplować samygo śebje!",
"usermerge-protectedgroup": "Ńy idźe skulować użytkowńika - je uůn człůnkym zabezpjeczůnyj grupy.",
"right-usermerge": "Kuplowańy użytkowńikůw"
diff --git a/UserMerge/i18n/te.json b/UserMerge/i18n/te.json
index ba4fa51b..9061597f 100644
--- a/UserMerge/i18n/te.json
+++ b/UserMerge/i18n/te.json
@@ -5,7 +5,6 @@
]
},
"usermerge": "వాడుకరి విలీనం మరియు తొలగింపు",
- "usermerge-badolduser": "తప్పుడు పాత వాడుకరిపేరు",
"usermerge-badnewuser": "తప్పుడు కొత్త వాడుకరిపేరు",
"usermerge-noolduser": "పాత వాడుకరిపేరు ఖాళీగా ఉంది",
"usermerge-fieldset": "విలీనించాల్సిన వాడుకరిపేర్లు",
@@ -14,9 +13,7 @@
"usermerge-deleteolduser": "పాత వాడుకరిని తొలగించు",
"usermerge-submit": "వాడుకరిని విలీనం చేయ్యండి",
"usermerge-userdeleted": "$1 ($2)ని తొలగించాం.",
- "usermerge-userdeleted-log": "వాడుకరిని తొలగించాం: $2 ($3)",
"usermerge-success": "$1 ($2) నుండి $3 ($4) కి విలీనం పూర్తయ్యింది.",
- "usermerge-success-log": "$2 ($3) వాడుకరి $4 ($5)లో విలీనమయ్యారు",
"usermerge-logpage": "వాడుకరి విలీనాల చిట్టా",
"usermerge-logpagetext": "ఇది వాడుకరి విలీనాల చిట్టా.",
"usermerge-noselfdelete": "మిమ్మల్ని మీరే తొలగించుకోలేరు లేదా మీలో విలీనం కాలేరు!",
diff --git a/UserMerge/i18n/tg-cyrl.json b/UserMerge/i18n/tg-cyrl.json
index b359b4d6..a6422e4a 100644
--- a/UserMerge/i18n/tg-cyrl.json
+++ b/UserMerge/i18n/tg-cyrl.json
@@ -5,14 +5,12 @@
]
},
"usermerge": "Идгом ва ҳафзи корбар",
- "usermerge-badolduser": "Номи корбарии кӯҳнаи номӯътабар",
"usermerge-badnewuser": "Номи корбарии ҷадидӣ номӯътабар",
"usermerge-noolduser": "Холӣ кардани номи корбарии кӯҳна",
"usermerge-olduser": "Корбари кӯҳна (идғом аз)",
"usermerge-newuser": "Корбари ҷадид (идғом ба)",
"usermerge-deleteolduser": "Ҳазви корбари кӯҳна",
"usermerge-submit": "Идғоми корбар",
- "usermerge-userdeleted-log": "Корбари ҳазфшуда: $2 ($3)",
"usermerge-logpage": "Гузориши идғоми корбар",
"usermerge-logpagetext": "Ин гузориши амалҳои идғоми корбар аст."
}
diff --git a/UserMerge/i18n/tg-latn.json b/UserMerge/i18n/tg-latn.json
index fc646421..60fbb835 100644
--- a/UserMerge/i18n/tg-latn.json
+++ b/UserMerge/i18n/tg-latn.json
@@ -5,11 +5,9 @@
]
},
"usermerge": "Idgom va hafzi korbar",
- "usermerge-badolduser": "Nomi korbariji kūhnai nomū'tabar",
"usermerge-badnewuser": "Nomi korbariji çadidī nomū'tabar",
"usermerge-noolduser": "Xolī kardani nomi korbariji kūhna",
"usermerge-submit": "Idƣomi korbar",
- "usermerge-userdeleted-log": "Korbari hazfşuda: $2 ($3)",
"usermerge-logpage": "Guzorişi idƣomi korbar",
"usermerge-logpagetext": "In guzorişi amalhoi idƣomi korbar ast."
}
diff --git a/UserMerge/i18n/tl.json b/UserMerge/i18n/tl.json
index 5db9754f..21d6a9e4 100644
--- a/UserMerge/i18n/tl.json
+++ b/UserMerge/i18n/tl.json
@@ -6,7 +6,6 @@
},
"usermerge": "Pagsanibin at burahin ang mga tagagamit",
"usermerge-desc": "[[Special:UserMerge|Nagsasanib ng mga sanggunian mula sa isang tagagamit patungo sa ibang tagagamit]] sa loob ng kalipunan ng dato ng wiki - magbubura din ng lumang mga tagagamit kasunod ng pagsasanib. Nangangailangan ng mga karapatang \"tagagamitpagsasanib\"",
- "usermerge-badolduser": "Hindi tanggap na lumang pangalan ng tagagamit",
"usermerge-badnewuser": "Hindi tanggap na bagong pangalan ng tagagamit",
"usermerge-nonewuser": "Tanggalan ng laman ang bagong pangalan ng tagagamit - ipinapalagay na isasanib sa $1.<br />\nPindutin ang \"{{int:usermerge-submit}}\" upang tanggapin.",
"usermerge-noolduser": "Tanggalan ng laman ang lumang pangalan ng tagagamit",
@@ -17,9 +16,7 @@
"usermerge-submit": "Isanib ang tagagamit",
"usermerge-badtoken": "Hindi tanggap na pananda ng pagbabago",
"usermerge-userdeleted": "Nabura na ang $1 ($2).",
- "usermerge-userdeleted-log": "Binurang tagagamit: $2 ($3)",
"usermerge-success": "Ganap na ang pagsanib mula sa $1 ($2) patungo sa $3 ($4).",
- "usermerge-success-log": "Tagagamit na $2 ($3) isinanib sa $4 ($5)",
"usermerge-logpage": "Talaan ng pagsasanib ng tagagamit",
"usermerge-logpagetext": "Isa itong talaan ng mga galaw na pangpagsasanib ng tagagamit.",
"usermerge-noselfdelete": "Hindi ka maaaring magbura o sumanib mula sa sarili mo!",
diff --git a/UserMerge/i18n/tr.json b/UserMerge/i18n/tr.json
index e12a614b..4b86c261 100644
--- a/UserMerge/i18n/tr.json
+++ b/UserMerge/i18n/tr.json
@@ -1,6 +1,7 @@
{
"@metadata": {
"authors": [
+ "BaRaN6161 TURK",
"Joseph",
"Karduelis",
"Srhat",
@@ -9,23 +10,30 @@
},
"usermerge": "Kullanıcıları birleştir ve sil",
"usermerge-desc": "Viki veritabanında [[Special:UserMerge|referansları bir kullanıcıdan diğerine birleştirir]] - birleşmeyi mütakip eski kullanıcıları da siler. ''Kullanıcıbirleştir'' ayrıcalığı gerekir",
- "usermerge-badolduser": "Geçersiz eski kullanıcı adı",
"usermerge-badnewuser": "Geçersiz yeni kullanıcı",
- "usermerge-nonewuser": "Yeni boş kullanıcıadı - \"$1\" ile birleştirme varsayılıyor.<br />\nKabul etmek için \"{{int:usermerge-submit}}\"e tıklayın.",
+ "usermerge-nonewuser": "Boş yeni kullanıcı adı. \"{{GENDER:$1|$1}}\" şeklinde birleştirme varsayılıyor.<br />\nKabul etmek için \"{{int:usermerge-submit}}\" düğmesini tıklayın.",
"usermerge-noolduser": "Boş eski kullanıcı adı",
+ "usermerge-same-old-and-new-user": "Eski ve yeni kullanıcı adlarının farklı olması gerekir.",
"usermerge-fieldset": "Birleştirilecek kullanıcı adları",
"usermerge-olduser": "Eski kullanıcı (dan birleştir):",
"usermerge-newuser": "Yeni kullanıcı (e birleştir):",
"usermerge-deleteolduser": "Eski kullanıcıyı sil",
"usermerge-submit": "Kullanıcıyı birleştir",
"usermerge-badtoken": "Geçersiz değişiklik dizgeciği",
- "usermerge-userdeleted": "{{GENDER:$1|$1}} ($2) silindi.",
- "usermerge-userdeleted-log": "Silinen kullanıcı: $2 ($3)",
- "usermerge-success": "{{GENDER:$1|$1}} ($2) kullanıcısından {{GENDER:$3|$3}} ($4) kullanıcısına birleştirme tamamlandı.",
- "usermerge-success-log": "{{GENDER:$2|$2}} ($3) kullanıcısı {{GENDER:$4|$4}} ($5) kullanıcısıyla birleştirildi",
+ "usermerge-userdeleted": "$1 ($2) silindi.",
+ "usermerge-success": "$1 ($2) kullanıcısından $3 ($4) kullanıcısına birleştirme tamamlandı.",
"usermerge-logpage": "Kullanıcı birleştirme günlüğü",
"usermerge-logpagetext": "Bu bir kullanıcı birleştirme eylemleri günlüğüdür.",
"usermerge-noselfdelete": "{{GENDER:$1|kendinizi}} birleştiremez ya da silemezsiniz!",
- "usermerge-protectedgroup": "{{GENDER:$1|kullanıcısından}}:birleştirilemiyor: Kullanıcı korunan bir grupta bulunuyor.",
- "right-usermerge": "Kullanıcıları birleştir"
+ "usermerge-protectedgroup": "{{GENDER:$1|Kullanıcısından}} birleştirilemiyor: kullanıcı korunan bir grupta bulunuyor.",
+ "right-usermerge": "Kullanıcıları birleştir",
+ "action-usermerge": "kullanıcıları birleştir",
+ "usermerge-autopagedelete": "Kullanıcıları birleştirirken otomatik olarak silinen sayfa",
+ "usermerge-page-unmoved": "$1 sayfası $2 taşınamadı.",
+ "usermerge-move-log": "\"$1\" hesabı \"[[User:$2|$2]]\" ile birleştirilirken otomatik olarak sayfa taşındı",
+ "logentry-usermerge-mergeuser": "$1 kullanıcı hesabını \"$4\" ($5) {{GENDER:$8|$6}} olarak ($7) {{GENDER:$2|birleştirildi}}",
+ "logentry-usermerge-deleteuser": "$1 kullanıcı hesabı {{GENDER:$2|sildi}} \"$4\" ($5)",
+ "log-action-filter-usermerge": "Faaliyet türü:",
+ "log-action-filter-usermerge-mergeuser": "Kullanıcı hesabı birleştirme",
+ "log-action-filter-usermerge-deleteuser": "Kullanıcı hesabı silme"
}
diff --git a/UserMerge/i18n/uk.json b/UserMerge/i18n/uk.json
index 5e5f02f5..5c2d2035 100644
--- a/UserMerge/i18n/uk.json
+++ b/UserMerge/i18n/uk.json
@@ -3,6 +3,7 @@
"authors": [
"Ahonc",
"Andriykopanytsia",
+ "Piramidion",
"Steve.rusyn",
"SteveR",
"Ата"
@@ -10,7 +11,6 @@
},
"usermerge": "Об'єднання і вилучення облікових записів",
"usermerge-desc": "[[Special:UserMerge|Переводить зв'язки з одного користувача на іншого]] у базі даних вікі, старі користувачі будуть вилучатися. Вимагає прав ''usermerge''",
- "usermerge-badolduser": "Неправильне старе ім'я користувача",
"usermerge-badnewuser": "Неправильне нове ім'я користувача",
"usermerge-nonewuser": "Порожнє ім'я користувача. Припускається злиття з «{{GENDER:$1|$1}}».<br />\nНатисніть «{{int:usermerge-submit}}», щоб підтвердити дію.",
"usermerge-noolduser": "Порожнє старе ім'я користувача",
@@ -21,17 +21,20 @@
"usermerge-deleteolduser": "Вилучити старий обліковий запис",
"usermerge-submit": "Об'єднати користувачів",
"usermerge-badtoken": "Недійсний маркер редагування",
- "usermerge-userdeleted": "$1 ($2) {{GENDER:$1|був вилучений|була вилучена}}.",
- "usermerge-userdeleted-log": "Вилучений користувач: $2 ($3)",
- "usermerge-success": "Об'єднання {{GENDER:$1|$1}} ($2) з {{GENDER:$3|$3}} ($4) завершене.",
- "usermerge-success-log": "{{GENDER:$2|Користувач|Користувачка}} $2 ($3) {{GENDER:$2|приєднаний|приєднана}} до {{GENDER:$4|$4}} ($5)",
+ "usermerge-userdeleted": "$1 ($2) вилучено.",
+ "usermerge-success": "Приєднання $1 ($2) до $3 ($4) завершено.",
"usermerge-logpage": "Журнал об'єднання користувачів",
"usermerge-logpagetext": "Це журнал об'єднання облікових записів.",
"usermerge-noselfdelete": "Ви не можете вилучати або приєднувати {{GENDER:$1|самого себе|саму себе}}!",
- "usermerge-protectedgroup": "Неможливо об'єднати {{GENDER:$1|користувача|користувачку}} — користувач належить до захищеної групи.",
- "right-usermerge": "об'єднування користувачів",
+ "usermerge-protectedgroup": "Неможливо приєднати {{GENDER:$1|користувача|користувачку}}: {{GENDER:$1|користувач|користувачка}} належить до захищеної групи.",
+ "right-usermerge": "Об'єднування користувачів",
"action-usermerge": "об'єднування користувачів",
- "usermerge-autopagedelete": "Автоматично видаляються при об'єднанні користувачів",
+ "usermerge-autopagedelete": "Автоматичне вилучення сторінки при об'єднанні користувачів",
"usermerge-page-unmoved": "Сторінка $1 не може бути перейменована на $2.",
- "usermerge-move-log": "Автоматичне перейменування сторінки при об'єднанні користувача «[[User:$1|$1]]» з «[[User:$2|{{GENDER:$2|$2}}]]»"
+ "usermerge-move-log": "Автоматичне перейменування сторінки при приєднанні облікового запису «$1» до «[[User:$2|$2]]»",
+ "logentry-usermerge-mergeuser": "$1 {{GENDER:$2|приєднав|приєднала}} обліковий запис користувача «$4» ($5) до {{GENDER:$8|$6}} ($7)",
+ "logentry-usermerge-deleteuser": "$1 {{GENDER:$2|вилучив|вилучила}} обліковий запис користувача «$4» ($5)",
+ "log-action-filter-usermerge": "Тип дії:",
+ "log-action-filter-usermerge-mergeuser": "Об'єднання облікових записів користувачів",
+ "log-action-filter-usermerge-deleteuser": "Вилучення облікових записів користувачів"
}
diff --git a/UserMerge/i18n/ur.json b/UserMerge/i18n/ur.json
index 90eaf0dd..82936533 100644
--- a/UserMerge/i18n/ur.json
+++ b/UserMerge/i18n/ur.json
@@ -1,14 +1,12 @@
{
"@metadata": {
"authors": [
- "Zainab Meher",
- "BukhariSaeed"
+ "BukhariSaeed",
+ "Zainab Meher"
]
},
"usermerge-userdeleted": "$1 ($2) حذف کیا جا چکا ہے۔",
- "usermerge-userdeleted-log": "\"$2\" ($3) صارف کا کھاتہ حذف کر دیا گیا",
"usermerge-success": " $1 ($2) کا $3 ($4) میں حذف مکمل ہو گیا ہے۔",
- "usermerge-success-log": " \"$2\" ($3) کا کھاتہ \"[[User:$4|$4]]\" ($5) میں ضم کر دیا گیا",
"usermerge-autopagedelete": "صارفین کو ضم کرنے کے دوران میں صفحہ خودکار طریقے سے حذف کر دیا گیا",
"usermerge-move-log": "\"$1\" کھاتے کو ضم کرنے کے دوران صفحے کو خودکار طور پر \"[[User:$2|$2]]\"میں منتقل کر دیا گیا"
}
diff --git a/UserMerge/i18n/uz.json b/UserMerge/i18n/uz.json
index 6c8a665b..4311aab6 100644
--- a/UserMerge/i18n/uz.json
+++ b/UserMerge/i18n/uz.json
@@ -5,7 +5,5 @@
"Sociologist"
]
},
- "usermerge-userdeleted-log": "Foydalanuvchi $2 ($3) chetlatilgan",
- "usermerge-success-log": "Foydalanuvchi $2 ($3) {{GENDER:$4|$4}} ($5) bilan birlashtirilgan",
"usermerge-logpage": "Foydalanuvchilarni birlashtirish qaydlari"
}
diff --git a/UserMerge/i18n/vep.json b/UserMerge/i18n/vep.json
index f0dde01c..83a706b5 100644
--- a/UserMerge/i18n/vep.json
+++ b/UserMerge/i18n/vep.json
@@ -4,7 +4,6 @@
"Игорь Бродский"
]
},
- "usermerge-badolduser": "Vär vanh kävutajan nimi",
"usermerge-badnewuser": "Vär uz' kävutajan nimi",
"usermerge-deleteolduser": "Čuta poiš vanh kävutajan nimi",
"right-usermerge": "Ühtenzoitta kävutajid"
diff --git a/UserMerge/i18n/vi.json b/UserMerge/i18n/vi.json
index d138d462..5523e799 100644
--- a/UserMerge/i18n/vi.json
+++ b/UserMerge/i18n/vi.json
@@ -7,7 +7,6 @@
},
"usermerge": "Trộn và xóa thành viên",
"usermerge-desc": "[[Special:UserMerge|Trộn các tham chiếu từ thành viên này sang một thành viên khác]] trong cơ sở dữ liệu wiki – đồng thời xóa thành viên cũ sau khi trộn. Cần phải có quyền ''usermerge''",
- "usermerge-badolduser": "Tên thành viên cũ không hợp lệ",
"usermerge-badnewuser": "Tên thành viên mới không hợp lệ",
"usermerge-nonewuser": "Tên thành viên mới đã để trống. Có lẽ nên trộn với với “$1”.<br />\nNhấn “{{int:usermerge-submit}}” để chấp nhận.",
"usermerge-noolduser": "Tên thành viên cũ trống",
@@ -19,9 +18,7 @@
"usermerge-submit": "Trộn thành viên",
"usermerge-badtoken": "Thẻ sửa đổi không hợp lệ",
"usermerge-userdeleted": "$1 ($2) đã bị xóa.",
- "usermerge-userdeleted-log": "Người đã xóa: $2 ($3)",
"usermerge-success": "Việc trộn từ $1 ($2) đến $3 ($4) đã hoàn thành.",
- "usermerge-success-log": "Thành viên $2 ($3) đã được trộn sang $4 ($5)",
"usermerge-logpage": "Nhật trình trộn thành viên",
"usermerge-logpagetext": "Đây là nhật trình ghi lại các tác vụ trộn thành viên.",
"usermerge-noselfdelete": "Bạn không thể xóa hoặc trộn từ {{GENDER:$1}}chính bạn!",
diff --git a/UserMerge/i18n/vo.json b/UserMerge/i18n/vo.json
index 3cc4b23d..e1346f1c 100644
--- a/UserMerge/i18n/vo.json
+++ b/UserMerge/i18n/vo.json
@@ -5,10 +5,8 @@
"Smeira"
]
},
- "usermerge-badolduser": "Gebananem büik no lonöfon",
"usermerge-badnewuser": "Gebananem nulik no lonöfon",
"usermerge-noolduser": "Vagükön gebananemi büik",
"usermerge-deleteolduser": "Moükön gebani vönedik",
- "usermerge-userdeleted": "$1 ($2) pemoükon.",
- "usermerge-userdeleted-log": "Moükön gebani: $2 ($3)"
+ "usermerge-userdeleted": "$1 ($2) pemoükon."
}
diff --git a/UserMerge/i18n/yue.json b/UserMerge/i18n/yue.json
index f8630a49..15d47b65 100644
--- a/UserMerge/i18n/yue.json
+++ b/UserMerge/i18n/yue.json
@@ -1,7 +1,8 @@
{
- "@metadata": [],
+ "@metadata": {
+ "authors": []
+ },
"usermerge": "用戶合併同刪除",
- "usermerge-badolduser": "無效嘅舊用戶名",
"usermerge-badnewuser": "無效嘅新用戶名",
"usermerge-nonewuser": "清除新用戶名 - 假設合併到$1。<br />撳<em>{{int:usermerge-submit}}</em>去接受。",
"usermerge-noolduser": "清除舊用戶名",
diff --git a/UserMerge/i18n/zh-hans.json b/UserMerge/i18n/zh-hans.json
index d17b0646..def2296f 100644
--- a/UserMerge/i18n/zh-hans.json
+++ b/UserMerge/i18n/zh-hans.json
@@ -6,14 +6,13 @@
"Gzdavidwong",
"Hzy980512",
"Liangent",
+ "Liuxinyu970226",
"Yfdyh000",
- "乌拉跨氪",
- "Liuxinyu970226"
+ "乌拉跨氪"
]
},
"usermerge": "用户合并和删除",
"usermerge-desc": "将在wiki数据库中[[Special:UserMerge|合并一个用户到另一个用户]] - 合并后删除旧用户。需要''usermerge''权限",
- "usermerge-badolduser": "无效的旧用户名",
"usermerge-badnewuser": "无效的新用户名",
"usermerge-nonewuser": "新用户名为空,将假设合并到{{GENDER:$1|$1}},<br />点击“{{int:usermerge-submit}}”以确定。",
"usermerge-noolduser": "清除旧用户名",
@@ -25,9 +24,7 @@
"usermerge-submit": "合并用户",
"usermerge-badtoken": "无效的编辑令牌。",
"usermerge-userdeleted": "$1($2)已删除。",
- "usermerge-userdeleted-log": "已删除用户账户“$2”($3)",
"usermerge-success": "由$1($2)到$3($4)的合并已经完成。",
- "usermerge-success-log": "账户“$2”($3)已合并到“[[User:$4|$4]]”($5)",
"usermerge-logpage": "用户合并日志",
"usermerge-logpagetext": "这是一份用户合并动作的记录。",
"usermerge-noselfdelete": "您不能将{{GENDER:$1|自己}}删除或者合并!",
diff --git a/UserMerge/i18n/zh-hant.json b/UserMerge/i18n/zh-hant.json
index c1edcbe3..1b16ff04 100644
--- a/UserMerge/i18n/zh-hant.json
+++ b/UserMerge/i18n/zh-hant.json
@@ -1,18 +1,20 @@
{
"@metadata": {
"authors": [
+ "Cwlin0416",
+ "Hello903hello",
+ "Kly",
+ "LNDDYL",
"Liangent",
"Liuxinyu970226",
"Mark85296341",
+ "Winston Sung",
"Wrightbus",
- "Cwlin0416",
- "LNDDYL",
- "Hello903hello"
+ "Xiplus"
]
},
"usermerge": "合併並刪除使用者",
- "usermerge-desc": "可 [[Special:UserMerge|合併一位使用者至另一位使用者]],在合併之後會同時刪除舊使用者。 需要開啟 ''usermerge'' 權限",
- "usermerge-badolduser": "無效的舊使用者名稱。",
+ "usermerge-desc": "可[[Special:UserMerge|合併一位使用者至另一位使用者]],在合併之後會同時刪除舊使用者。需要開啟 ''usermerge'' 權限",
"usermerge-badnewuser": "無效的新使用者名稱。",
"usermerge-nonewuser": "未填寫新使用者名稱。預設合併至 \"{{GENDER:$1|$1}}\"。<br />\n點選 {{int:usermerge-submit}} 繼續。",
"usermerge-noolduser": "未填寫舊使用者名稱。",
@@ -24,9 +26,7 @@
"usermerge-submit": "合併使用者",
"usermerge-badtoken": "無效的編輯權杖。",
"usermerge-userdeleted": "$1($2)已刪除。",
- "usermerge-userdeleted-log": "已刪除使用者賬戶「$2」($3)",
"usermerge-success": "已完成由 $1($2)至 $3($4)的合併。",
- "usermerge-success-log": "使用者賬戶「$2」($3)已合併至「[[User:$4|$4]]」($5)",
"usermerge-logpage": "使用者合併日誌",
"usermerge-logpagetext": "此頁為使用者合併動作的記錄。",
"usermerge-noselfdelete": "您無法刪除或合併{{GENDER:$1|自己}}!",
@@ -35,5 +35,10 @@
"action-usermerge": "合併使用者",
"usermerge-autopagedelete": "合併使用者時自動刪除頁面",
"usermerge-page-unmoved": "頁面 $1 無法移動至 $2。",
- "usermerge-move-log": "合併賬戶「$1」到「[[User:$2|$2]]」時已自動移動頁面"
+ "usermerge-move-log": "合併帳號「$1」到「[[User:$2|$2]]」時已自動移動頁面",
+ "logentry-usermerge-mergeuser": "$1{{GENDER:$2|已合併}}使用者帳號「$4」($5)至{{GENDER:$8|$6}}($7)",
+ "logentry-usermerge-deleteuser": "$1{{GENDER:$2|已刪除}}使用者帳號「$4」($5)",
+ "log-action-filter-usermerge": "操作類型:",
+ "log-action-filter-usermerge-mergeuser": "使用者帳號合併",
+ "log-action-filter-usermerge-deleteuser": "使用者帳號刪除"
}
diff --git a/UserMerge/includes/IUserMergeLogger.php b/UserMerge/includes/IUserMergeLogger.php
index da9febc7..09db6a48 100644
--- a/UserMerge/includes/IUserMergeLogger.php
+++ b/UserMerge/includes/IUserMergeLogger.php
@@ -14,8 +14,8 @@ interface IUserMergeLogger {
/**
* Adds a user deletion log entry
*
- * @param User $perfomer
+ * @param User $performer
* @param User $oldUser
*/
- public function addDeleteEntry( User $perfomer, User $oldUser );
+ public function addDeleteEntry( User $performer, User $oldUser );
}
diff --git a/UserMerge/includes/MergeUser.php b/UserMerge/includes/MergeUser.php
index 6a959c2f..07e3b7a4 100644
--- a/UserMerge/includes/MergeUser.php
+++ b/UserMerge/includes/MergeUser.php
@@ -1,10 +1,11 @@
<?php
+
+use MediaWiki\Block\DatabaseBlock;
use MediaWiki\MediaWikiServices;
use Wikimedia\Rdbms\IDatabase;
/**
* Contains the actual database backend logic for merging users
- *
*/
class MergeUser {
/**
@@ -103,19 +104,21 @@ class MergeUser {
/**
* @param IDatabase $dbw
* @return void
- * @suppress PhanTypeMismatchArgument Phan thinks that $newBlock and $oldBlock are both null when
- * Block::newFromRow is called, although the previous if/elseif returns if any of them is null.
*/
private function mergeBlocks( IDatabase $dbw ) {
$dbw->startAtomic( __METHOD__ );
// Pull blocks directly from master
+ $qi = DatabaseBlock::getQueryInfo();
$rows = $dbw->select(
- 'ipblocks',
- '*',
+ $qi['tables'],
+ array_merge( $qi['fields'], [ 'ipb_user' ] ),
[
'ipb_user' => [ $this->oldUser->getId(), $this->newUser->getId() ],
- ]
+ ],
+ __METHOD__,
+ [],
+ $qi['joins']
);
$newBlock = null;
@@ -128,15 +131,13 @@ class MergeUser {
}
}
- if ( !$newBlock && !$oldBlock ) {
- // No one is blocked, yaaay
- $dbw->endAtomic( __METHOD__ );
- return;
- } elseif ( $newBlock && !$oldBlock ) {
+ if ( !$oldBlock ) {
+ // No one is blocked or
// Only the new user is blocked, so nothing to do.
$dbw->endAtomic( __METHOD__ );
return;
- } elseif ( $oldBlock && !$newBlock ) {
+ }
+ if ( !$newBlock ) {
// Just move the old block to the new username
$dbw->update(
'ipblocks',
@@ -150,8 +151,8 @@ class MergeUser {
// Okay, let's pick the "strongest" block, and re-apply it to
// the new user.
- $oldBlockObj = Block::newFromRow( $oldBlock );
- $newBlockObj = Block::newFromRow( $newBlock );
+ $oldBlockObj = DatabaseBlock::newFromRow( $oldBlock );
+ $newBlockObj = DatabaseBlock::newFromRow( $newBlock );
$winner = $this->chooseBlock( $oldBlockObj, $newBlockObj );
if ( $winner->getId() === $newBlockObj->getId() ) {
@@ -170,11 +171,11 @@ class MergeUser {
}
/**
- * @param Block $b1
- * @param Block $b2
- * @return Block
+ * @param DatabaseBlock $b1
+ * @param DatabaseBlock $b2
+ * @return DatabaseBlock
*/
- private function chooseBlock( Block $b1, Block $b2 ) {
+ private function chooseBlock( DatabaseBlock $b1, DatabaseBlock $b2 ) {
// First, see if one is longer than the other.
if ( $b1->getExpiry() !== $b2->getExpiry() ) {
// This works for infinite blocks because:
@@ -187,12 +188,21 @@ class MergeUser {
}
// Next check what they block, in order
+ $blockProps = [];
+ foreach ( [ $b1, $b2 ] as $block ) {
+ $blockProps[] = [
+ 'block' => $block,
+ 'createaccount' => $block->isCreateAccountBlocked(),
+ 'sendemail' => $block->isEmailBlocked(),
+ 'editownusertalk' => !$block->isUsertalkEditAllowed(),
+ ];
+ }
foreach ( [ 'createaccount', 'sendemail', 'editownusertalk' ] as $action ) {
- if ( $b1->prevents( $action ) xor $b2->prevents( $action ) ) {
- if ( $b1->prevents( $action ) ) {
- return $b1;
+ if ( $blockProps[0][$action] xor $blockProps[1][$action] ) {
+ if ( $blockProps[0][$action] ) {
+ return $blockProps[0]['block'];
} else {
- return $b2;
+ return $blockProps[1]['block'];
}
}
}
@@ -210,7 +220,7 @@ class MergeUser {
}
if ( defined( 'ActorMigration::MIGRATION_STAGE_SCHEMA_COMPAT' ) ) {
- return (bool)( $stage & SCHEMA_COMPAT_WRITE_OLD );
+ return (bool)( (int)$stage & SCHEMA_COMPAT_WRITE_OLD );
} else {
return $stage < MIGRATION_NEW;
}
@@ -240,43 +250,38 @@ class MergeUser {
* @param string $fnameTrxOwner
*/
private function mergeDatabaseTables( $fnameTrxOwner ) {
- global $wgActorTableSchemaMigrationStage;
-
// Fields to update with the format:
// [
// tableName, idField, textField,
// 'batchKey' => unique field, 'options' => array(), 'db' => IDatabase
// 'actorId' => actor ID field,
+ // 'actorStage' => actor schema migration stage
// ];
// textField, batchKey, db, and options are optional
$updateFields = [
[ 'archive', 'ar_user', 'ar_user_text', 'batchKey' => 'ar_id', 'actorId' => 'ar_actor',
- 'actorStage' => $wgActorTableSchemaMigrationStage ],
+ 'actorStage' => SCHEMA_COMPAT_NEW ],
[ 'revision', 'rev_user', 'rev_user_text', 'batchKey' => 'rev_id', 'actorId' => '',
- 'actorStage' => $wgActorTableSchemaMigrationStage ],
+ 'actorStage' => SCHEMA_COMPAT_NEW ],
[ 'filearchive', 'fa_user', 'fa_user_text', 'batchKey' => 'fa_id', 'actorId' => 'fa_actor',
- 'actorStage' => $wgActorTableSchemaMigrationStage ],
+ 'actorStage' => SCHEMA_COMPAT_NEW ],
[ 'image', 'img_user', 'img_user_text', 'batchKey' => 'img_name', 'actorId' => 'img_actor',
- 'actorStage' => $wgActorTableSchemaMigrationStage ],
+ 'actorStage' => SCHEMA_COMPAT_NEW ],
[ 'oldimage', 'oi_user', 'oi_user_text', 'batchKey' => 'oi_archive_name',
- 'actorId' => 'oi_actor', 'actorStage' => $wgActorTableSchemaMigrationStage ],
+ 'actorId' => 'oi_actor', 'actorStage' => SCHEMA_COMPAT_NEW ],
[ 'recentchanges', 'rc_user', 'rc_user_text', 'batchKey' => 'rc_id', 'actorId' => 'rc_actor',
- 'actorStage' => $wgActorTableSchemaMigrationStage ],
+ 'actorStage' => SCHEMA_COMPAT_NEW ],
[ 'logging', 'log_user', 'log_user_text', 'batchKey' => 'log_id', 'actorId' => 'log_actor',
- 'actorStage' => $wgActorTableSchemaMigrationStage ],
+ 'actorStage' => SCHEMA_COMPAT_NEW ],
[ 'ipblocks', 'ipb_by', 'ipb_by_text', 'batchKey' => 'ipb_id', 'actorId' => 'ipb_by_actor',
- 'actorStage' => $wgActorTableSchemaMigrationStage ],
+ 'actorStage' => SCHEMA_COMPAT_NEW ],
[ 'watchlist', 'wl_user', 'batchKey' => 'wl_title' ],
[ 'user_groups', 'ug_user', 'options' => [ 'IGNORE' ] ],
[ 'user_properties', 'up_user', 'options' => [ 'IGNORE' ] ],
[ 'user_former_groups', 'ufg_user', 'options' => [ 'IGNORE' ] ],
+ [ 'revision_actor_temp', 'batchKey' => 'revactor_rev', 'actorId' => 'revactor_actor',
+ 'actorStage' => SCHEMA_COMPAT_NEW ],
];
- if ( $this->stageNeedsActor( $wgActorTableSchemaMigrationStage ) ) {
- $updateFields[] = [
- 'revision_actor_temp', 'batchKey' => 'revactor_rev', 'actorId' => 'revactor_actor',
- 'actorStage' => $wgActorTableSchemaMigrationStage
- ];
- }
Hooks::run( 'UserMergeAccountFields', [ &$updateFields ] );
@@ -298,16 +303,18 @@ class MergeUser {
continue;
}
- $options = isset( $fieldInfo['options'] ) ? $fieldInfo['options'] : [];
+ $options = $fieldInfo['options'] ?? [];
unset( $fieldInfo['options'] );
- $db = isset( $fieldInfo['db'] ) ? $fieldInfo['db'] : $dbw;
+ $db = $fieldInfo['db'] ?? $dbw;
unset( $fieldInfo['db'] );
$tableName = array_shift( $fieldInfo );
$idField = array_shift( $fieldInfo );
- $keyField = isset( $fieldInfo['batchKey'] ) ? $fieldInfo['batchKey'] : null;
+ $keyField = $fieldInfo['batchKey'] ?? null;
unset( $fieldInfo['batchKey'] );
- if ( isset( $fieldInfo['actorId'] ) && !$this->stageNeedsUser( $fieldInfo['actorStage'] ) ) {
+ if ( isset( $fieldInfo['actorId'] ) && isset( $fieldInfo['actorStage'] ) &&
+ !$this->stageNeedsUser( $fieldInfo['actorStage'] )
+ ) {
continue;
}
unset( $fieldInfo['actorId'], $fieldInfo['actorStage'] );
@@ -357,22 +364,22 @@ class MergeUser {
}
}
- if ( $this->stageNeedsActor( $wgActorTableSchemaMigrationStage ) &&
- $this->oldUser->getActorId()
- ) {
+ if ( $this->oldUser->getActorId() ) {
$oldActorId = $this->oldUser->getActorId();
- $newActorId = $this->newUser->getActorId( $db );
+ $newActorId = $this->newUser->getActorId( $dbw );
foreach ( $updateFields as $fieldInfo ) {
- if ( empty( $fieldInfo['actorId'] ) || !$this->stageNeedsActor( $fieldInfo['actorStage'] ) ) {
+ if ( empty( $fieldInfo['actorId'] ) || empty( $fieldInfo['actorStage'] ) ||
+ !$this->stageNeedsActor( $fieldInfo['actorStage'] )
+ ) {
continue;
}
- $options = isset( $fieldInfo['options'] ) ? $fieldInfo['options'] : [];
- $db = isset( $fieldInfo['db'] ) ? $fieldInfo['db'] : $dbw;
+ $options = $fieldInfo['options'] ?? [];
+ $db = $fieldInfo['db'] ?? $dbw;
$tableName = array_shift( $fieldInfo );
$idField = $fieldInfo['actorId'];
- $keyField = isset( $fieldInfo['batchKey'] ) ? $fieldInfo['batchKey'] : null;
+ $keyField = $fieldInfo['batchKey'] ?? null;
if ( $db->trxLevel() || $keyField === null ) {
// Can't batch/wait when in a transaction or when no batch key is given
@@ -418,7 +425,9 @@ class MergeUser {
}
}
- $dbw->delete( 'user_newtalk', [ 'user_id' => $this->oldUser->getId() ] );
+ $dbw->delete( 'user_newtalk', [ 'user_id' => $this->oldUser->getId() ], __METHOD__ );
+ $this->oldUser->clearInstanceCache();
+ $this->newUser->clearInstanceCache();
Hooks::run( 'MergeAccountFromTo', [ &$this->oldUser, &$this->newUser ] );
}
@@ -496,18 +505,17 @@ class MergeUser {
* Deletes the old user page when the target user page exists
*
* @todo This code is a duplicate of Renameuser and GlobalRename
- * @suppress PhanParamTooMany Several calls to $message, which is a variadic closure
*
* @param User $performer
* @param callable $msg Function that returns a Message object
* @return array Array of old name (string) => new name (Title) where the move failed
*/
private function movePages( User $performer, /* callable */ $msg ) {
- global $wgContLang, $wgUser;
+ $contLang = MediaWikiServices::getInstance()->getContentLanguage();
$oldusername = trim( str_replace( '_', ' ', $this->oldUser->getName() ) );
$oldusername = Title::makeTitle( NS_USER, $oldusername );
- $newusername = Title::makeTitleSafe( NS_USER, $wgContLang->ucfirst( $this->newUser->getName() ) );
+ $newusername = Title::makeTitleSafe( NS_USER, $contLang->ucfirst( $this->newUser->getName() ) );
# select all user pages and sub-pages
$dbr = wfGetDB( DB_REPLICA );
@@ -518,17 +526,14 @@ class MergeUser {
'page_namespace' => [ NS_USER, NS_USER_TALK ],
'page_title' . $dbr->buildLike( $oldusername->getDBkey() . '/', $dbr->anyString() )
. ' OR page_title = ' . $dbr->addQuotes( $oldusername->getDBkey() ),
- ]
+ ],
+ __METHOD__
);
$message = function ( /* ... */ ) use ( $msg ) {
return call_user_func_array( $msg, func_get_args() );
};
- // Need to set $wgUser to attribute log properly.
- $oldUser = $wgUser;
- $wgUser = $performer;
-
$failedMoves = [];
foreach ( $pages as $row ) {
$oldPage = Title::makeTitleSafe( $row->page_namespace, $row->page_title );
@@ -537,46 +542,36 @@ class MergeUser {
if ( $this->newUser->getName() === 'Anonymous' ) { # delete ALL old pages
if ( $oldPage->exists() ) {
- $error = '';
- $oldPageArticle = new Article( $oldPage, 0 );
- $oldPageArticle->doDeleteArticle(
- $message( 'usermerge-autopagedelete' )->inContentLanguage()->text(),
- false, null, null, $error, true
- );
+ $this->deletePage( $message, $performer, $oldPage );
}
} elseif ( $newPage->exists()
- && !$oldPage->isValidMoveTarget( $newPage )
+ && !MediaWikiServices::getInstance()
+ ->getMovePageFactory()
+ ->newMovePage( $oldPage, $newPage )
+ ->isValidMove()
+ ->isOk()
&& $newPage->getLength() > 0
) {
# delete old pages that can't be moved
- $error = '';
- $oldPageArticle = new Article( $oldPage, 0 );
- $oldPageArticle->doDeleteArticle(
- $message( 'usermerge-autopagedelete' )->inContentLanguage()->text(),
- false, null, null, $error, true
- );
-
+ $this->deletePage( $message, $performer, $oldPage );
} else { # move content to new page
# delete target page if it exists and is blank
if ( $newPage->exists() ) {
- $error = '';
- $newPageArticle = new Article( $newPage, 0 );
- $newPageArticle->doDeleteArticle(
- $message( 'usermerge-autopagedelete' )->inContentLanguage()->text(),
- false, null, null, $error, true
- );
+ $this->deletePage( $message, $performer, $newPage );
}
# move to target location
- $errors = $oldPage->moveTo(
- $newPage,
- false,
- $message(
- 'usermerge-move-log',
- $oldusername->getText(),
- $newusername->getText() )->inContentLanguage()->text()
- );
- if ( $errors !== true ) {
+ $status = MediaWikiServices::getInstance()
+ ->getMovePageFactory()
+ ->newMovePage( $oldPage, $newPage )
+ ->move(
+ $performer,
+ $message(
+ 'usermerge-move-log',
+ $oldusername->getText(),
+ $newusername->getText() )->inContentLanguage()->text()
+ );
+ if ( !$status->isOk() ) {
$failedMoves[$oldPage->getPrefixedText()] = $newPage;
}
@@ -588,22 +583,43 @@ class MergeUser {
);
if ( !$dbr->numRows( $res ) ) {
# nothing links here, so delete unmoved page/redirect
- $error = '';
- $oldPageArticle = new Article( $oldPage, 0 );
- $oldPageArticle->doDeleteArticle(
- $message( 'usermerge-autopagedelete' )->inContentLanguage()->text(),
- false, null, null, $error, true
- );
+ $this->deletePage( $message, $performer, $oldPage );
}
}
}
- $wgUser = $oldUser;
-
return $failedMoves;
}
/**
+ * Helper to delete pages
+ *
+ * @param callable $msg
+ * @param User $user
+ * @param Title $title
+ */
+ private function deletePage( $msg, User $user, Title $title ) {
+ $wikipage = WikiPage::factory( $title );
+ $reason = $msg( 'usermerge-autopagedelete' )->inContentLanguage()->text();
+ $error = '';
+ if ( version_compare( MW_VERSION, '1.35', '<' ) ) {
+ $wikipage->doDeleteArticle( $reason, false, null, null, $error, $user, true );
+ } else {
+ $wikipage->doDeleteArticleReal(
+ $reason,
+ $user,
+ false,
+ null, // Unused
+ $error,
+ null, // Unused
+ [],
+ 'delete',
+ true
+ );
+ }
+ }
+
+ /**
* Function to delete users following a successful mergeUser call.
*
* Removes rows from the user, user_groups, user_properties
@@ -635,14 +651,15 @@ class MergeUser {
foreach ( $tablesToDelete as $table => $field ) {
// Check if a different database object was passed (Echo or Flow)
if ( is_array( $field ) ) {
- $db = isset( $field['db'] ) ? $field['db'] : $dbw;
+ $db = $field['db'] ?? $dbw;
$field = $field[0];
} else {
$db = $dbw;
}
$db->delete(
$table,
- [ $field => $this->oldUser->getId() ]
+ [ $field => $this->oldUser->getId() ],
+ __METHOD__
);
}
diff --git a/UserMerge/includes/SpecialUserMerge.php b/UserMerge/includes/SpecialUserMerge.php
index 76f2b96c..a4c171bf 100644
--- a/UserMerge/includes/SpecialUserMerge.php
+++ b/UserMerge/includes/SpecialUserMerge.php
@@ -26,15 +26,11 @@ class SpecialUserMerge extends FormSpecialPage {
protected function getFormFields() {
return [
'olduser' => [
- 'type' => 'text',
+ 'type' => 'user',
+ 'exists' => true,
'label-message' => 'usermerge-olduser',
'required' => true,
'validation-callback' => function ( $val ) {
- // only pass strings to User::newFromName
- if ( !is_string( $val ) ) {
- return true;
- }
-
$key = $this->validateOldUser( $val );
if ( is_string( $key ) || is_array( $key ) ) {
return $this->msg( $key )->escaped();
@@ -43,7 +39,7 @@ class SpecialUserMerge extends FormSpecialPage {
},
],
'newuser' => [
- 'type' => 'text',
+ 'type' => 'user',
'required' => true,
'label-message' => 'usermerge-newuser',
'validation-callback' => function ( $val ) {
@@ -73,9 +69,6 @@ class SpecialUserMerge extends FormSpecialPage {
*/
public function validateOldUser( $val ) {
$oldUser = User::newFromName( $val );
- if ( !$oldUser || $oldUser->getId() === 0 ) {
- return 'usermerge-badolduser';
- }
if ( $this->getUser()->getId() === $oldUser->getId() ) {
return [ 'usermerge-noselfdelete', $this->getUser()->getName() ];
}
diff --git a/UserMerge/package-lock.json b/UserMerge/package-lock.json
new file mode 100644
index 00000000..fb7680bd
--- /dev/null
+++ b/UserMerge/package-lock.json
@@ -0,0 +1,1756 @@
+{
+ "name": "usermerge",
+ "version": "0.0.0",
+ "lockfileVersion": 1,
+ "requires": true,
+ "dependencies": {
+ "@babel/code-frame": {
+ "version": "7.5.5",
+ "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.5.5.tgz",
+ "integrity": "sha512-27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw==",
+ "dev": true,
+ "requires": {
+ "@babel/highlight": "^7.0.0"
+ }
+ },
+ "@babel/highlight": {
+ "version": "7.5.0",
+ "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.5.0.tgz",
+ "integrity": "sha512-7dV4eu9gBxoM0dAnj/BCFDW9LFU0zvTrkq0ugM7pnHEgguOEeOz1so2ZghEdzviYzQEED0r4EAgpsBChKy1TRQ==",
+ "dev": true,
+ "requires": {
+ "chalk": "^2.0.0",
+ "esutils": "^2.0.2",
+ "js-tokens": "^4.0.0"
+ }
+ },
+ "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.1.1",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.1.1.tgz",
+ "integrity": "sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg==",
+ "dev": true
+ },
+ "acorn-jsx": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.1.0.tgz",
+ "integrity": "sha512-tMUqwBWfLFbJbizRmEcWSLw6HnFzfdJs2sOJEOwwtVPMoH/0Ay+E703oZz78VSXZiiDcZrQ5XKjPIUQixhmgVw==",
+ "dev": true
+ },
+ "ajv": {
+ "version": "6.10.2",
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz",
+ "integrity": "sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==",
+ "dev": true,
+ "requires": {
+ "fast-deep-equal": "^2.0.1",
+ "fast-json-stable-stringify": "^2.0.0",
+ "json-schema-traverse": "^0.4.1",
+ "uri-js": "^4.2.2"
+ }
+ },
+ "ansi-escapes": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.0.tgz",
+ "integrity": "sha512-EiYhwo0v255HUL6eDyuLrXEkTi7WwVCLAw+SeOQ7M7qdun1z1pum4DEm/nuqIVbPvi9RPPc9k9LbyBv6H0DwVg==",
+ "dev": true,
+ "requires": {
+ "type-fest": "^0.8.1"
+ }
+ },
+ "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"
+ }
+ },
+ "array-find-index": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz",
+ "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=",
+ "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
+ },
+ "balanced-match": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
+ "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
+ "dev": true
+ },
+ "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"
+ }
+ },
+ "callsites": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
+ "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
+ "dev": true
+ },
+ "camelcase": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz",
+ "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=",
+ "dev": true
+ },
+ "camelcase-keys": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
+ "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=",
+ "dev": true,
+ "requires": {
+ "camelcase": "^2.0.0",
+ "map-obj": "^1.0.0"
+ }
+ },
+ "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"
+ }
+ },
+ "chardet": {
+ "version": "0.7.0",
+ "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz",
+ "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==",
+ "dev": true
+ },
+ "cli-cursor": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz",
+ "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==",
+ "dev": true,
+ "requires": {
+ "restore-cursor": "^3.1.0"
+ }
+ },
+ "cli-width": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz",
+ "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=",
+ "dev": true
+ },
+ "coffeescript": {
+ "version": "1.10.0",
+ "resolved": "https://registry.npmjs.org/coffeescript/-/coffeescript-1.10.0.tgz",
+ "integrity": "sha1-56qDAZF+9iGzXYo580jc3R234z4=",
+ "dev": true
+ },
+ "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
+ },
+ "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
+ },
+ "cross-spawn": {
+ "version": "6.0.5",
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz",
+ "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==",
+ "dev": true,
+ "requires": {
+ "nice-try": "^1.0.4",
+ "path-key": "^2.0.1",
+ "semver": "^5.5.0",
+ "shebang-command": "^1.2.0",
+ "which": "^1.2.9"
+ }
+ },
+ "currently-unhandled": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz",
+ "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=",
+ "dev": true,
+ "requires": {
+ "array-find-index": "^1.0.1"
+ }
+ },
+ "dateformat": {
+ "version": "1.0.12",
+ "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.12.tgz",
+ "integrity": "sha1-nxJLZ1lMk3/3BpMuSmQsyo27/uk=",
+ "dev": true,
+ "requires": {
+ "get-stdin": "^4.0.1",
+ "meow": "^3.3.0"
+ }
+ },
+ "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"
+ }
+ },
+ "decamelize": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
+ "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=",
+ "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
+ },
+ "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": "8.0.0",
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
+ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
+ "dev": true
+ },
+ "error-ex": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
+ "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
+ "dev": true,
+ "requires": {
+ "is-arrayish": "^0.2.1"
+ }
+ },
+ "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": "6.8.0",
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz",
+ "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==",
+ "dev": true,
+ "requires": {
+ "@babel/code-frame": "^7.0.0",
+ "ajv": "^6.10.0",
+ "chalk": "^2.1.0",
+ "cross-spawn": "^6.0.5",
+ "debug": "^4.0.1",
+ "doctrine": "^3.0.0",
+ "eslint-scope": "^5.0.0",
+ "eslint-utils": "^1.4.3",
+ "eslint-visitor-keys": "^1.1.0",
+ "espree": "^6.1.2",
+ "esquery": "^1.0.1",
+ "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",
+ "inquirer": "^7.0.0",
+ "is-glob": "^4.0.0",
+ "js-yaml": "^3.13.1",
+ "json-stable-stringify-without-jsonify": "^1.0.1",
+ "levn": "^0.3.0",
+ "lodash": "^4.17.14",
+ "minimatch": "^3.0.4",
+ "mkdirp": "^0.5.1",
+ "natural-compare": "^1.4.0",
+ "optionator": "^0.8.3",
+ "progress": "^2.0.0",
+ "regexpp": "^2.0.1",
+ "semver": "^6.1.2",
+ "strip-ansi": "^5.2.0",
+ "strip-json-comments": "^3.0.1",
+ "table": "^5.2.3",
+ "text-table": "^0.2.0",
+ "v8-compile-cache": "^2.0.3"
+ },
+ "dependencies": {
+ "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-config-wikimedia": {
+ "version": "0.15.3",
+ "resolved": "https://registry.npmjs.org/eslint-config-wikimedia/-/eslint-config-wikimedia-0.15.3.tgz",
+ "integrity": "sha512-MGfUwNoW2IckRismX3L8a/CI1CKkYyXHiIyAqiu27TCQwrDubryI+rtuuFYozauB3LC5WSIOnW2m1ZljtPvPPg==",
+ "dev": true,
+ "requires": {
+ "eslint": "^6.8.0",
+ "eslint-plugin-es": "^3.0.0",
+ "eslint-plugin-json": "^2.1.1",
+ "eslint-plugin-mediawiki": "^0.2.3",
+ "eslint-plugin-no-jquery": "^2.3.2",
+ "eslint-plugin-qunit": "^4.0.0",
+ "eslint-plugin-vue": "^6.1.2"
+ }
+ },
+ "eslint-plugin-es": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.0.tgz",
+ "integrity": "sha512-6/Jb/J/ZvSebydwbBJO1R9E5ky7YeElfK56Veh7e4QGFHCXoIXGH9HhVz+ibJLM3XJ1XjP+T7rKBLUa/Y7eIng==",
+ "dev": true,
+ "requires": {
+ "eslint-utils": "^2.0.0",
+ "regexpp": "^3.0.0"
+ },
+ "dependencies": {
+ "eslint-utils": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.0.0.tgz",
+ "integrity": "sha512-0HCPuJv+7Wv1bACm8y5/ECVfYdfsAm9xmVb7saeFlxjPYALefjhbYoCkBjPdPzGH8wWyTpAez82Fh3VKYEZ8OA==",
+ "dev": true,
+ "requires": {
+ "eslint-visitor-keys": "^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
+ }
+ }
+ },
+ "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.3",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-mediawiki/-/eslint-plugin-mediawiki-0.2.3.tgz",
+ "integrity": "sha512-/6CB/VdwZHIsPZ5gZJ3amwHUbEgbL6DZULXWTRwKoS+2q5t8TS1hu+EX83a1hPrxGWFusfV+bvgOi15aXVXi4Q==",
+ "dev": true,
+ "requires": {
+ "eslint-plugin-vue": "^6.2.2"
+ }
+ },
+ "eslint-plugin-no-jquery": {
+ "version": "2.3.2",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-no-jquery/-/eslint-plugin-no-jquery-2.3.2.tgz",
+ "integrity": "sha512-8M9GByb/JOO+dktgbFeC/YAMaqlscInO3fH3A9fLxZduH1NTXsIAUrimas6zDwOLBvEXpRaEZycc2QAl+W+Agw==",
+ "dev": true
+ },
+ "eslint-plugin-qunit": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-qunit/-/eslint-plugin-qunit-4.0.0.tgz",
+ "integrity": "sha512-+0i2xcYryUoLawi47Lp0iJKzkP931G5GXwIOq1KBKQc2pknV1VPjfE6b4mI2mR2RnL7WRoS30YjwC9SjQgJDXQ==",
+ "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"
+ }
+ },
+ "eslint-scope": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.0.0.tgz",
+ "integrity": "sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw==",
+ "dev": true,
+ "requires": {
+ "esrecurse": "^4.1.0",
+ "estraverse": "^4.1.1"
+ }
+ },
+ "eslint-utils": {
+ "version": "1.4.3",
+ "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz",
+ "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==",
+ "dev": true,
+ "requires": {
+ "eslint-visitor-keys": "^1.1.0"
+ }
+ },
+ "eslint-visitor-keys": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz",
+ "integrity": "sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==",
+ "dev": true
+ },
+ "espree": {
+ "version": "6.1.2",
+ "resolved": "https://registry.npmjs.org/espree/-/espree-6.1.2.tgz",
+ "integrity": "sha512-2iUPuuPP+yW1PZaMSDM9eyVf8D5P0Hi8h83YtZ5bPc/zHYjII5khoixIUTMO794NOY8F/ThF1Bo8ncZILarUTA==",
+ "dev": true,
+ "requires": {
+ "acorn": "^7.1.0",
+ "acorn-jsx": "^5.1.0",
+ "eslint-visitor-keys": "^1.1.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.0.1",
+ "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz",
+ "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==",
+ "dev": true,
+ "requires": {
+ "estraverse": "^4.0.0"
+ }
+ },
+ "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
+ },
+ "external-editor": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz",
+ "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==",
+ "dev": true,
+ "requires": {
+ "chardet": "^0.7.0",
+ "iconv-lite": "^0.4.24",
+ "tmp": "^0.0.33"
+ }
+ },
+ "fast-deep-equal": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz",
+ "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=",
+ "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
+ },
+ "figures": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/figures/-/figures-3.1.0.tgz",
+ "integrity": "sha512-ravh8VRXqHuMvZt/d8GblBeqDMkdJMBdv/2KntFH+ra5MXkO7nxNKpzQ3n6QD/2da1kH0aWmNISdvhM7gl2gVg==",
+ "dev": true,
+ "requires": {
+ "escape-string-regexp": "^1.0.5"
+ }
+ },
+ "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"
+ }
+ },
+ "find-up": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz",
+ "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=",
+ "dev": true,
+ "requires": {
+ "path-exists": "^2.0.0",
+ "pinkie-promise": "^2.0.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"
+ }
+ }
+ }
+ },
+ "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.1",
+ "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.1.tgz",
+ "integrity": "sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K+0GhF3NBgmJCc3ma+WOgX8Jg==",
+ "dev": true
+ },
+ "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
+ },
+ "get-stdin": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
+ "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=",
+ "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.0",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.0.tgz",
+ "integrity": "sha512-qjtRgnIVmOfnKUE3NJAQEdk+lKrxfw8t5ke7SXtfMTHcjsBfOfWXCQfdb30zfDoZQ2IRSIiidmjtbHZPZ++Ihw==",
+ "dev": true,
+ "requires": {
+ "is-glob": "^4.0.1"
+ }
+ },
+ "globals": {
+ "version": "12.3.0",
+ "resolved": "https://registry.npmjs.org/globals/-/globals-12.3.0.tgz",
+ "integrity": "sha512-wAfjdLgFsPZsklLJvOBUBmzYE8/CwhEqSBEMRXA3qxIiNtyqvjYurAtIfDh6chlEPUfmTY3MnZh5Hfh4q0UlIw==",
+ "dev": true,
+ "requires": {
+ "type-fest": "^0.8.1"
+ }
+ },
+ "graceful-fs": {
+ "version": "4.2.3",
+ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz",
+ "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==",
+ "dev": true
+ },
+ "grunt": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/grunt/-/grunt-1.1.0.tgz",
+ "integrity": "sha512-+NGod0grmviZ7Nzdi9am7vuRS/h76PcWDsV635mEXF0PEQMUV6Kb+OjTdsVxbi0PZmfQOjCMKb3w8CVZcqsn1g==",
+ "dev": true,
+ "requires": {
+ "coffeescript": "~1.10.0",
+ "dateformat": "~1.0.12",
+ "eventemitter2": "~0.4.13",
+ "exit": "~0.1.1",
+ "findup-sync": "~0.3.0",
+ "glob": "~7.0.0",
+ "grunt-cli": "~1.2.0",
+ "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.13.1",
+ "minimatch": "~3.0.2",
+ "mkdirp": "~1.0.3",
+ "nopt": "~3.0.6",
+ "path-is-absolute": "~1.0.0",
+ "rimraf": "~2.6.2"
+ },
+ "dependencies": {
+ "glob": {
+ "version": "7.0.6",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.0.6.tgz",
+ "integrity": "sha1-IRuvr0nlJbjNkyYNFKsTYVKz9Xo=",
+ "dev": true,
+ "requires": {
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.0.2",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
+ }
+ },
+ "grunt-cli": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.2.0.tgz",
+ "integrity": "sha1-VisRnrsGndtGSs4oRVAb6Xs1tqg=",
+ "dev": true,
+ "requires": {
+ "findup-sync": "~0.3.0",
+ "grunt-known-options": "~1.1.0",
+ "nopt": "~3.0.6",
+ "resolve": "~1.1.0"
+ }
+ },
+ "mkdirp": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.3.tgz",
+ "integrity": "sha512-6uCP4Qc0sWsgMLy1EOqqS/3rjDHOEnsStVr/4vtAIK2Y5i2kA7lFFejYrpIyiN9w0pYf4ckeCYT9f1r1P9KX5g==",
+ "dev": true
+ },
+ "resolve": {
+ "version": "1.1.7",
+ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz",
+ "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=",
+ "dev": true
+ }
+ }
+ },
+ "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-eslint": {
+ "version": "22.0.0",
+ "resolved": "https://registry.npmjs.org/grunt-eslint/-/grunt-eslint-22.0.0.tgz",
+ "integrity": "sha512-I7vIU4x/mb20fmA6TAmLx6Wzn7mfs8ZXeuk7LbP2ujKVFV7KZmJ3qXUyqe2wnD+v/74Rs5uYOZrLL8EoBmlG9Q==",
+ "dev": true,
+ "requires": {
+ "chalk": "^2.1.0",
+ "eslint": "^6.0.1"
+ }
+ },
+ "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"
+ }
+ },
+ "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"
+ }
+ },
+ "has-flag": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
+ "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
+ "dev": true
+ },
+ "hooker": {
+ "version": "0.2.3",
+ "resolved": "https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz",
+ "integrity": "sha1-uDT3I8xKJCqmWWNFnfbZhMXT2Vk=",
+ "dev": true
+ },
+ "hosted-git-info": {
+ "version": "2.8.8",
+ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz",
+ "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==",
+ "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
+ },
+ "indent-string": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz",
+ "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=",
+ "dev": true,
+ "requires": {
+ "repeating": "^2.0.0"
+ }
+ },
+ "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.4",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
+ "dev": true
+ },
+ "inquirer": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.0.3.tgz",
+ "integrity": "sha512-+OiOVeVydu4hnCGLCSX+wedovR/Yzskv9BFqUNNKq9uU2qg7LCcCo3R86S2E7WLo0y/x2pnEZfZe1CoYnORUAw==",
+ "dev": true,
+ "requires": {
+ "ansi-escapes": "^4.2.1",
+ "chalk": "^2.4.2",
+ "cli-cursor": "^3.1.0",
+ "cli-width": "^2.0.0",
+ "external-editor": "^3.0.3",
+ "figures": "^3.0.0",
+ "lodash": "^4.17.15",
+ "mute-stream": "0.0.8",
+ "run-async": "^2.2.0",
+ "rxjs": "^6.5.3",
+ "string-width": "^4.1.0",
+ "strip-ansi": "^5.1.0",
+ "through": "^2.3.6"
+ },
+ "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
+ }
+ }
+ },
+ "is-arrayish": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
+ "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=",
+ "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-finite": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz",
+ "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==",
+ "dev": true
+ },
+ "is-fullwidth-code-point": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
+ "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
+ "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-promise": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz",
+ "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=",
+ "dev": true
+ },
+ "is-utf8": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz",
+ "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=",
+ "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
+ },
+ "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.13.1",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz",
+ "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==",
+ "dev": true,
+ "requires": {
+ "argparse": "^1.0.7",
+ "esprima": "^4.0.0"
+ }
+ },
+ "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.2.1",
+ "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-2.2.1.tgz",
+ "integrity": "sha512-o6/yDBYccGvTz1+QFevz6l6OBZ2+fMVu2JZ9CIhzsYRX4mjaK5IyX9eldUdCmga16zlgQxyrj5pt9kzuj2C02w==",
+ "dev": true
+ },
+ "levn": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
+ "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=",
+ "dev": true,
+ "requires": {
+ "prelude-ls": "~1.1.2",
+ "type-check": "~0.3.2"
+ }
+ },
+ "load-json-file": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz",
+ "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.1.2",
+ "parse-json": "^2.2.0",
+ "pify": "^2.0.0",
+ "pinkie-promise": "^2.0.0",
+ "strip-bom": "^2.0.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
+ },
+ "loud-rejection": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz",
+ "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=",
+ "dev": true,
+ "requires": {
+ "currently-unhandled": "^0.4.1",
+ "signal-exit": "^3.0.0"
+ }
+ },
+ "map-obj": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz",
+ "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=",
+ "dev": true
+ },
+ "meow": {
+ "version": "3.7.0",
+ "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
+ "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=",
+ "dev": true,
+ "requires": {
+ "camelcase-keys": "^2.0.0",
+ "decamelize": "^1.1.2",
+ "loud-rejection": "^1.0.0",
+ "map-obj": "^1.0.1",
+ "minimist": "^1.1.3",
+ "normalize-package-data": "^2.3.4",
+ "object-assign": "^4.0.1",
+ "read-pkg-up": "^1.0.1",
+ "redent": "^1.0.0",
+ "trim-newlines": "^1.0.0"
+ },
+ "dependencies": {
+ "minimist": {
+ "version": "1.2.5",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
+ "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==",
+ "dev": true
+ }
+ }
+ },
+ "mimic-fn": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
+ "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
+ "dev": true
+ },
+ "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
+ },
+ "mkdirp": {
+ "version": "0.5.3",
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.3.tgz",
+ "integrity": "sha512-P+2gwrFqx8lhew375MQHHeTlY8AuOJSrGf0R5ddkEndUkmwpgUob/vQuBD1V22/Cw1/lJr4x+EjllSezBThzBg==",
+ "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
+ },
+ "mute-stream": {
+ "version": "0.0.8",
+ "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz",
+ "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==",
+ "dev": true
+ },
+ "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
+ },
+ "nice-try": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz",
+ "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==",
+ "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"
+ }
+ },
+ "normalize-package-data": {
+ "version": "2.5.0",
+ "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
+ "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
+ "dev": true,
+ "requires": {
+ "hosted-git-info": "^2.1.4",
+ "resolve": "^1.10.0",
+ "semver": "2 || 3 || 4 || 5",
+ "validate-npm-package-license": "^3.0.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
+ },
+ "once": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
+ "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
+ "dev": true,
+ "requires": {
+ "wrappy": "1"
+ }
+ },
+ "onetime": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.0.tgz",
+ "integrity": "sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==",
+ "dev": true,
+ "requires": {
+ "mimic-fn": "^2.1.0"
+ }
+ },
+ "optionator": {
+ "version": "0.8.3",
+ "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz",
+ "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==",
+ "dev": true,
+ "requires": {
+ "deep-is": "~0.1.3",
+ "fast-levenshtein": "~2.0.6",
+ "levn": "~0.3.0",
+ "prelude-ls": "~1.1.2",
+ "type-check": "~0.3.2",
+ "word-wrap": "~1.2.3"
+ }
+ },
+ "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
+ },
+ "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-json": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz",
+ "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=",
+ "dev": true,
+ "requires": {
+ "error-ex": "^1.2.0"
+ }
+ },
+ "path-exists": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz",
+ "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=",
+ "dev": true,
+ "requires": {
+ "pinkie-promise": "^2.0.0"
+ }
+ },
+ "path-is-absolute": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
+ "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
+ "dev": true
+ },
+ "path-key": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
+ "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=",
+ "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-type": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz",
+ "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.1.2",
+ "pify": "^2.0.0",
+ "pinkie-promise": "^2.0.0"
+ }
+ },
+ "pify": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
+ "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
+ "dev": true
+ },
+ "pinkie": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz",
+ "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=",
+ "dev": true
+ },
+ "pinkie-promise": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz",
+ "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=",
+ "dev": true,
+ "requires": {
+ "pinkie": "^2.0.0"
+ }
+ },
+ "prelude-ls": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
+ "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=",
+ "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
+ },
+ "read-pkg": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz",
+ "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=",
+ "dev": true,
+ "requires": {
+ "load-json-file": "^1.0.0",
+ "normalize-package-data": "^2.3.2",
+ "path-type": "^1.0.0"
+ }
+ },
+ "read-pkg-up": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz",
+ "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=",
+ "dev": true,
+ "requires": {
+ "find-up": "^1.0.0",
+ "read-pkg": "^1.0.0"
+ }
+ },
+ "redent": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz",
+ "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=",
+ "dev": true,
+ "requires": {
+ "indent-string": "^2.1.0",
+ "strip-indent": "^1.0.1"
+ }
+ },
+ "regexpp": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz",
+ "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==",
+ "dev": true
+ },
+ "repeating": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz",
+ "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=",
+ "dev": true,
+ "requires": {
+ "is-finite": "^1.0.0"
+ }
+ },
+ "resolve": {
+ "version": "1.15.1",
+ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.1.tgz",
+ "integrity": "sha512-84oo6ZTtoTUpjgNEr5SJyzQhzL72gaRodsSfyxC/AXRvwu0Yse9H8eF9IpGo7b8YetZhlI6v7ZQ6bKBFV/6S7w==",
+ "dev": true,
+ "requires": {
+ "path-parse": "^1.0.6"
+ }
+ },
+ "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
+ },
+ "restore-cursor": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz",
+ "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==",
+ "dev": true,
+ "requires": {
+ "onetime": "^5.1.0",
+ "signal-exit": "^3.0.2"
+ }
+ },
+ "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"
+ }
+ },
+ "run-async": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz",
+ "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=",
+ "dev": true,
+ "requires": {
+ "is-promise": "^2.1.0"
+ }
+ },
+ "rxjs": {
+ "version": "6.5.4",
+ "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz",
+ "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==",
+ "dev": true,
+ "requires": {
+ "tslib": "^1.9.0"
+ }
+ },
+ "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": "5.7.0",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz",
+ "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==",
+ "dev": true
+ },
+ "shebang-command": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
+ "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=",
+ "dev": true,
+ "requires": {
+ "shebang-regex": "^1.0.0"
+ }
+ },
+ "shebang-regex": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
+ "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=",
+ "dev": true
+ },
+ "signal-exit": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz",
+ "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=",
+ "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"
+ },
+ "dependencies": {
+ "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
+ }
+ }
+ },
+ "spdx-correct": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz",
+ "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==",
+ "dev": true,
+ "requires": {
+ "spdx-expression-parse": "^3.0.0",
+ "spdx-license-ids": "^3.0.0"
+ }
+ },
+ "spdx-exceptions": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz",
+ "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==",
+ "dev": true
+ },
+ "spdx-expression-parse": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz",
+ "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==",
+ "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
+ },
+ "sprintf-js": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
+ "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
+ "dev": true
+ },
+ "string-width": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz",
+ "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==",
+ "dev": true,
+ "requires": {
+ "emoji-regex": "^8.0.0",
+ "is-fullwidth-code-point": "^3.0.0",
+ "strip-ansi": "^6.0.0"
+ },
+ "dependencies": {
+ "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-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"
+ },
+ "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-bom": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz",
+ "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=",
+ "dev": true,
+ "requires": {
+ "is-utf8": "^0.2.0"
+ }
+ },
+ "strip-indent": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz",
+ "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=",
+ "dev": true,
+ "requires": {
+ "get-stdin": "^4.0.1"
+ }
+ },
+ "strip-json-comments": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz",
+ "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==",
+ "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"
+ },
+ "dependencies": {
+ "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
+ },
+ "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
+ },
+ "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"
+ }
+ }
+ }
+ },
+ "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
+ },
+ "through": {
+ "version": "2.3.8",
+ "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
+ "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=",
+ "dev": true
+ },
+ "tmp": {
+ "version": "0.0.33",
+ "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
+ "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
+ "dev": true,
+ "requires": {
+ "os-tmpdir": "~1.0.2"
+ }
+ },
+ "trim-newlines": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz",
+ "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=",
+ "dev": true
+ },
+ "tslib": {
+ "version": "1.10.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz",
+ "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==",
+ "dev": true
+ },
+ "type-check": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
+ "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=",
+ "dev": true,
+ "requires": {
+ "prelude-ls": "~1.1.2"
+ }
+ },
+ "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
+ },
+ "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"
+ }
+ },
+ "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"
+ }
+ },
+ "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.0",
+ "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz",
+ "integrity": "sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==",
+ "dev": true
+ },
+ "validate-npm-package-license": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz",
+ "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==",
+ "dev": true,
+ "requires": {
+ "spdx-correct": "^3.0.0",
+ "spdx-expression-parse": "^3.0.0"
+ }
+ },
+ "vscode-json-languageservice": {
+ "version": "3.5.2",
+ "resolved": "https://registry.npmjs.org/vscode-json-languageservice/-/vscode-json-languageservice-3.5.2.tgz",
+ "integrity": "sha512-9cUvBq00O08lpWVVOx6tQ1yLxCHss79nsUdEAVYGomRyMbnPBmc0AkYPcXI9WK1EM6HBo0R9Zo3NjFhcICpy4A==",
+ "dev": true,
+ "requires": {
+ "jsonc-parser": "^2.2.1",
+ "vscode-languageserver-textdocument": "^1.0.1",
+ "vscode-languageserver-types": "^3.15.1",
+ "vscode-nls": "^4.1.1",
+ "vscode-uri": "^2.1.1"
+ }
+ },
+ "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.1",
+ "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-2.1.1.tgz",
+ "integrity": "sha512-eY9jmGoEnVf8VE8xr5znSah7Qt1P/xsCdErz+g8HYZtJ7bZqKH5E3d+6oVNm1AC/c6IHUDokbmVXKOi4qPAC9A==",
+ "dev": true
+ },
+ "vue-eslint-parser": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-7.0.0.tgz",
+ "integrity": "sha512-yR0dLxsTT7JfD2YQo9BhnQ6bUTLsZouuzt9SKRP7XNaZJV459gvlsJo4vT2nhZ/2dH9j3c53bIx9dnqU2prM9g==",
+ "dev": true,
+ "requires": {
+ "debug": "^4.1.1",
+ "eslint-scope": "^5.0.0",
+ "eslint-visitor-keys": "^1.1.0",
+ "espree": "^6.1.2",
+ "esquery": "^1.0.1",
+ "lodash": "^4.17.15"
+ },
+ "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
+ }
+ }
+ },
+ "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"
+ }
+ },
+ "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"
+ }
+ }
+ }
+}
diff --git a/UserMerge/package.json b/UserMerge/package.json
index 48588196..bd2382f4 100644
--- a/UserMerge/package.json
+++ b/UserMerge/package.json
@@ -7,9 +7,9 @@
"test": "grunt test"
},
"devDependencies": {
- "grunt": "1.0.3",
- "grunt-banana-checker": "0.6.0",
- "grunt-contrib-jshint": "1.1.0",
- "grunt-jsonlint": "1.1.0"
+ "eslint-config-wikimedia": "0.15.3",
+ "grunt": "1.1.0",
+ "grunt-banana-checker": "0.9.0",
+ "grunt-eslint": "22.0.0"
}
}
diff --git a/UserMerge/tests/phan/config.php b/UserMerge/tests/phan/config.php
deleted file mode 100644
index f2660b8a..00000000
--- a/UserMerge/tests/phan/config.php
+++ /dev/null
@@ -1,3 +0,0 @@
-<?php
-
-return require __DIR__ . '/../../vendor/mediawiki/mediawiki-phan-config/src/config.php';
diff --git a/UserMerge/tests/phpunit/MergeUserTest.php b/UserMerge/tests/phpunit/MergeUserTest.php
index 06d8a287..fd60d335 100644
--- a/UserMerge/tests/phpunit/MergeUserTest.php
+++ b/UserMerge/tests/phpunit/MergeUserTest.php
@@ -1,7 +1,8 @@
<?php
/**
- * @todo this should use the Database group
+ * @todo this should better use the Database group
+ * @group Database
*/
class MergeUserTest extends MediaWikiTestCase {
@@ -20,6 +21,15 @@ class MergeUserTest extends MediaWikiTestCase {
return $user;
}
+ public function setUp() : void {
+ parent::setUp();
+
+ $this->tablesUsed[] = 'page';
+ $this->tablesUsed[] = 'revision';
+ $this->tablesUsed[] = 'comment';
+ $this->tablesUsed[] = 'user';
+ }
+
/**
* Clear all instance caches
*
@@ -40,12 +50,12 @@ class MergeUserTest extends MediaWikiTestCase {
$user2 = $this->getNewTestUser();
$user2->addToDatabase();
- $mu = new MergeUser( $user1, $user2, $this->getMock( 'UserMergeLogger' ) );
- $mu->merge( $this->getMock( 'User' ) );
+ $mu = new MergeUser( $user1, $user2, $this->createMock( UserMergeLogger::class ) );
+ $mu->merge( $this->createMock( User::class ) );
$this->reallyClearInstanceCache( $user1 );
$this->reallyClearInstanceCache( $user2 );
- $this->assertEquals( null, $user1->getOption( 'foo' ) );
+ $this->assertNull( $user1->getOption( 'foo' ) );
$this->assertEquals( 'baz', $user2->getOption( 'foo' ) );
}
@@ -59,8 +69,8 @@ class MergeUserTest extends MediaWikiTestCase {
$user2 = $this->getNewTestUser();
$user2->addGroup( 'group2' );
- $mu = new MergeUser( $user1, $user2, $this->getMock( 'UserMergeLogger' ) );
- $mu->merge( $this->getMock( 'User' ) );
+ $mu = new MergeUser( $user1, $user2, $this->createMock( UserMergeLogger::class ) );
+ $mu->merge( $this->createMock( User::class ) );
$this->reallyClearInstanceCache( $user1 );
$this->reallyClearInstanceCache( $user2 );
@@ -79,11 +89,11 @@ class MergeUserTest extends MediaWikiTestCase {
$this->reallyClearInstanceCache( $user1 );
$this->assertGreaterThan( 0, $user1->getId() );
- $mu = new MergeUser( $user1, $user2, $this->getMock( 'UserMergeLogger' ) );
- $mu->delete( $this->getMock( 'User' ), 'wfMessage' );
+ $mu = new MergeUser( $user1, $user2, $this->createMock( UserMergeLogger::class ) );
+ $mu->delete( $this->createMock( User::class ), 'wfMessage' );
$this->reallyClearInstanceCache( $user1 );
- $this->assertEquals( 0, $user1->getId() );
+ $this->assertSame( 0, $user1->getId() );
}
/**
@@ -100,12 +110,33 @@ class MergeUserTest extends MediaWikiTestCase {
$count++;
}
- $mu = new MergeUser( $user1, $user2, $this->getMock( 'UserMergeLogger' ) );
- $mu->merge( $this->getMock( 'User' ) );
+ $mu = new MergeUser( $user1, $user2, $this->createMock( UserMergeLogger::class ) );
+ $mu->merge( $this->createMock( User::class ) );
$this->reallyClearInstanceCache( $user1 );
$this->reallyClearInstanceCache( $user2 );
- $this->assertEquals( 0, $user1->getEditCount() );
+ $this->assertSame( 0, $user1->getEditCount() );
$this->assertEquals( 21, $user2->getEditCount() );
}
+
+ /**
+ * @covers MergeUser::movePages
+ */
+ public function testMovePages() {
+ $user1 = $this->getNewTestUser();
+ $user1->addToDatabase();
+ $user2 = $this->getNewTestUser();
+ $user2->addToDatabase();
+
+ $userpage1 = $user1->getUserPage();
+ $this->getExistingTestPage( $userpage1 );
+
+ $userpage2 = $user2->getUserPage();
+ $this->assertFalse( $userpage2->exists( Title::READ_LATEST ) );
+
+ $mu = new MergeUser( $user1, $user2, $this->createMock( UserMergeLogger::class ) );
+ $mu->delete( $this->getTestSysop()->getUser(), 'wfMessage' );
+
+ $this->assertTrue( $userpage2->exists( Title::READ_LATEST ) );
+ }
}
diff --git a/UserMerge/version b/UserMerge/version
deleted file mode 100644
index d117710b..00000000
--- a/UserMerge/version
+++ /dev/null
@@ -1,4 +0,0 @@
-UserMerge: REL1_32
-2019-01-13T20:10:45
-
-66c7030