mediawiki/extensions/BlueSpiceFoundation (master)

sourcepatches
From 18e8c09719682059cff972fa22512f30e3b10d6d Mon Sep 17 00:00:00 2001
From: libraryupgrader <tools.libraryupgrader@tools.wmflabs.org>
Date: Sat, 6 Mar 2021 02:27:13 +0000
Subject: [PATCH] build: Updating eslint-config-wikimedia to 0.18.2

Change-Id: I6e23ea6bedb5d7ee9907f11647309117955bc4c5
---
 package-lock.json | 622 +++++++++++++++++++++-------------------------
 package.json      |   2 +-
 2 files changed, 289 insertions(+), 335 deletions(-)

diff --git a/package-lock.json b/package-lock.json
index 84c9e21..7cb4310 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -3,29 +3,48 @@
 	"lockfileVersion": 1,
 	"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==",
+			"version": "7.12.11",
+			"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz",
+			"integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==",
 			"dev": true,
 			"requires": {
-				"@babel/highlight": "^7.0.0"
+				"@babel/highlight": "^7.10.4"
 			}
 		},
+		"@babel/helper-validator-identifier": {
+			"version": "7.12.11",
+			"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz",
+			"integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==",
+			"dev": true
+		},
 		"@babel/highlight": {
-			"version": "7.5.0",
-			"resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.5.0.tgz",
-			"integrity": "sha512-7dV4eu9gBxoM0dAnj/BCFDW9LFU0zvTrkq0ugM7pnHEgguOEeOz1so2ZghEdzviYzQEED0r4EAgpsBChKy1TRQ==",
+			"version": "7.13.8",
+			"resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.13.8.tgz",
+			"integrity": "sha512-4vrIhfJyfNf+lCtXC2ck1rKSzDwciqF7IWFhXXrSOUC2O5DrVp+w4c6ed4AllTxhTkUP5x2tYj41VaxdVMMRDw==",
 			"dev": true,
 			"requires": {
+				"@babel/helper-validator-identifier": "^7.12.11",
 				"chalk": "^2.0.0",
-				"esutils": "^2.0.2",
 				"js-tokens": "^4.0.0"
+			},
+			"dependencies": {
+				"chalk": {
+					"version": "2.4.2",
+					"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
+					"integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
+					"dev": true,
+					"requires": {
+						"ansi-styles": "^3.2.1",
+						"escape-string-regexp": "^1.0.5",
+						"supports-color": "^5.3.0"
+					}
+				}
 			}
 		},
 		"@eslint/eslintrc": {
-			"version": "0.3.0",
-			"resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.3.0.tgz",
-			"integrity": "sha512-1JTKgrOKAHVivSvOYw+sJOunkBjUOvjqWk1DPja7ZFhIS2mX/4EgTT8M7eTK9jrKhL/FvXXEbQwIs3pg1xp3dg==",
+			"version": "0.4.0",
+			"resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.0.tgz",
+			"integrity": "sha512-2ZPCc+uNbjV5ERJr+aKSPRwZgKd2z11x0EgLvb1PURmUrn9QNRXFqje0Ldq454PfAVyaJYyrDvvIKSFP4NnBog==",
 			"dev": true,
 			"requires": {
 				"ajv": "^6.12.4",
@@ -35,35 +54,8 @@
 				"ignore": "^4.0.6",
 				"import-fresh": "^3.2.1",
 				"js-yaml": "^3.13.1",
-				"lodash": "^4.17.20",
 				"minimatch": "^3.0.4",
 				"strip-json-comments": "^3.1.1"
-			},
-			"dependencies": {
-				"ajv": {
-					"version": "6.12.6",
-					"resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
-					"integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
-					"dev": true,
-					"requires": {
-						"fast-deep-equal": "^3.1.1",
-						"fast-json-stable-stringify": "^2.0.0",
-						"json-schema-traverse": "^0.4.1",
-						"uri-js": "^4.2.2"
-					}
-				},
-				"fast-deep-equal": {
-					"version": "3.1.3",
-					"resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
-					"integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
-					"dev": true
-				},
-				"lodash": {
-					"version": "4.17.20",
-					"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz",
-					"integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==",
-					"dev": true
-				}
 			}
 		},
 		"@mdn/browser-compat-data": {
@@ -100,12 +92,12 @@
 			"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==",
+			"version": "6.12.6",
+			"resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
+			"integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
 			"dev": true,
 			"requires": {
-				"fast-deep-equal": "^2.0.1",
+				"fast-deep-equal": "^3.1.1",
 				"fast-json-stable-stringify": "^2.0.0",
 				"json-schema-traverse": "^0.4.1",
 				"uri-js": "^4.2.2"
@@ -197,6 +189,12 @@
 			"integrity": "sha512-tKHdBe8N/Vq2nLAm4YPBVREVZjMux6KrqyPfNQgIbDl0t7HaNSmy8w4OyVHYg/cvyn5BW7o7pVwpjPte89Zhcg==",
 			"dev": true
 		},
+		"astral-regex": {
+			"version": "2.0.0",
+			"resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz",
+			"integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==",
+			"dev": true
+		},
 		"async": {
 			"version": "1.5.2",
 			"resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz",
@@ -346,20 +344,60 @@
 			"dev": true
 		},
 		"caniuse-lite": {
-			"version": "1.0.30001183",
-			"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001183.tgz",
-			"integrity": "sha512-7JkwTEE1hlRKETbCFd8HDZeLiQIUcl8rC6JgNjvHCNaxOeNmQ9V4LvQXRUsKIV2CC73qKxljwVhToaA3kLRqTw==",
+			"version": "1.0.30001196",
+			"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001196.tgz",
+			"integrity": "sha512-CPvObjD3ovWrNBaXlAIGWmg2gQQuJ5YhuciUOjPRox6hIQttu8O+b51dx6VIpIY9ESd2d0Vac1RKpICdG4rGUg==",
 			"dev": true
 		},
 		"chalk": {
-			"version": "2.4.2",
-			"resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
-			"integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
+			"version": "4.1.0",
+			"resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
+			"integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
 			"dev": true,
 			"requires": {
-				"ansi-styles": "^3.2.1",
-				"escape-string-regexp": "^1.0.5",
-				"supports-color": "^5.3.0"
+				"ansi-styles": "^4.1.0",
+				"supports-color": "^7.1.0"
+			},
+			"dependencies": {
+				"ansi-styles": {
+					"version": "4.3.0",
+					"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+					"integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+					"dev": true,
+					"requires": {
+						"color-convert": "^2.0.1"
+					}
+				},
+				"color-convert": {
+					"version": "2.0.1",
+					"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+					"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+					"dev": true,
+					"requires": {
+						"color-name": "~1.1.4"
+					}
+				},
+				"color-name": {
+					"version": "1.1.4",
+					"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+					"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+					"dev": true
+				},
+				"has-flag": {
+					"version": "4.0.0",
+					"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+					"integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+					"dev": true
+				},
+				"supports-color": {
+					"version": "7.2.0",
+					"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+					"integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+					"dev": true,
+					"requires": {
+						"has-flag": "^4.0.0"
+					}
+				}
 			}
 		},
 		"class-utils": {
@@ -411,9 +449,9 @@
 			"dev": true
 		},
 		"colorette": {
-			"version": "1.2.1",
-			"resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.1.tgz",
-			"integrity": "sha512-puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw==",
+			"version": "1.2.2",
+			"resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz",
+			"integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==",
 			"dev": true
 		},
 		"colors": {
@@ -447,9 +485,9 @@
 			"dev": true
 		},
 		"core-js": {
-			"version": "3.8.3",
-			"resolved": "https://registry.npmjs.org/core-js/-/core-js-3.8.3.tgz",
-			"integrity": "sha512-KPYXeVZYemC2TkNEkX/01I+7yd+nX3KddKwZ1Ww7SKWdI2wQprSgLmrTddT8nw92AjEklTsPBoSdQBhbI1bQ6Q==",
+			"version": "3.9.1",
+			"resolved": "https://registry.npmjs.org/core-js/-/core-js-3.9.1.tgz",
+			"integrity": "sha512-gSjRvzkxQc1zjM/5paAmL4idJBFzuJoo+jDjF1tStYFMV2ERfD02HhahhCGXUyHxQRG4yFKVSdO6g62eoRMcDg==",
 			"dev": true
 		},
 		"cross-spawn": {
@@ -547,9 +585,9 @@
 			}
 		},
 		"electron-to-chromium": {
-			"version": "1.3.652",
-			"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.652.tgz",
-			"integrity": "sha512-85J5D0Ksxjq2MIHfgwOURRej72UMlexbaa7t+oKTJan3Pa/RBE8vJ4/JzwaQjLCElPvd0XeLWi7+xYTVrq96aA==",
+			"version": "1.3.681",
+			"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.681.tgz",
+			"integrity": "sha512-W6uYvSUTHuyX2DZklIESAqx57jfmGjUkd7Z3RWqLdj9Mmt39ylhBuvFXlskQnvBHj0MYXIeQI+mjiwVddZLSvA==",
 			"dev": true
 		},
 		"emoji-regex": {
@@ -580,13 +618,13 @@
 			"dev": true
 		},
 		"eslint": {
-			"version": "7.19.0",
-			"resolved": "https://registry.npmjs.org/eslint/-/eslint-7.19.0.tgz",
-			"integrity": "sha512-CGlMgJY56JZ9ZSYhJuhow61lMPPjUzWmChFya71Z/jilVos7mR/jPgaEfVGgMBY5DshbKdG8Ezb8FDCHcoMEMg==",
+			"version": "7.21.0",
+			"resolved": "https://registry.npmjs.org/eslint/-/eslint-7.21.0.tgz",
+			"integrity": "sha512-W2aJbXpMNofUp0ztQaF40fveSsJBjlSCSWpy//gzfTvwC+USs/nceBrKmlJOiM8r1bLwP2EuYkCqArn/6QTIgg==",
 			"dev": true,
 			"requires": {
-				"@babel/code-frame": "^7.0.0",
-				"@eslint/eslintrc": "^0.3.0",
+				"@babel/code-frame": "7.12.11",
+				"@eslint/eslintrc": "^0.4.0",
 				"ajv": "^6.10.0",
 				"chalk": "^4.0.0",
 				"cross-spawn": "^7.0.2",
@@ -597,9 +635,9 @@
 				"eslint-utils": "^2.1.0",
 				"eslint-visitor-keys": "^2.0.0",
 				"espree": "^7.3.1",
-				"esquery": "^1.2.0",
+				"esquery": "^1.4.0",
 				"esutils": "^2.0.2",
-				"file-entry-cache": "^6.0.0",
+				"file-entry-cache": "^6.0.1",
 				"functional-red-black-tree": "^1.0.1",
 				"glob-parent": "^5.0.0",
 				"globals": "^12.1.0",
@@ -624,156 +662,18 @@
 				"v8-compile-cache": "^2.0.3"
 			},
 			"dependencies": {
-				"ansi-styles": {
-					"version": "4.3.0",
-					"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
-					"integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
-					"dev": true,
-					"requires": {
-						"color-convert": "^2.0.1"
-					}
-				},
-				"astral-regex": {
-					"version": "2.0.0",
-					"resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz",
-					"integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==",
-					"dev": true
-				},
-				"chalk": {
-					"version": "4.1.0",
-					"resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
-					"integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
-					"dev": true,
-					"requires": {
-						"ansi-styles": "^4.1.0",
-						"supports-color": "^7.1.0"
-					}
-				},
-				"color-convert": {
-					"version": "2.0.1",
-					"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
-					"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
-					"dev": true,
-					"requires": {
-						"color-name": "~1.1.4"
-					}
-				},
-				"color-name": {
-					"version": "1.1.4",
-					"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
-					"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
-					"dev": true
-				},
-				"fast-deep-equal": {
-					"version": "3.1.3",
-					"resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
-					"integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
-					"dev": true
-				},
-				"file-entry-cache": {
-					"version": "6.0.0",
-					"resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.0.tgz",
-					"integrity": "sha512-fqoO76jZ3ZnYrXLDRxBR1YvOvc0k844kcOg40bgsPrE25LAb/PDqTY+ho64Xh2c8ZXgIKldchCFHczG2UVRcWA==",
-					"dev": true,
-					"requires": {
-						"flat-cache": "^3.0.4"
-					}
-				},
-				"flat-cache": {
-					"version": "3.0.4",
-					"resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz",
-					"integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==",
-					"dev": true,
-					"requires": {
-						"flatted": "^3.1.0",
-						"rimraf": "^3.0.2"
-					}
-				},
-				"flatted": {
-					"version": "3.1.1",
-					"resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz",
-					"integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==",
-					"dev": true
-				},
-				"has-flag": {
-					"version": "4.0.0",
-					"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
-					"integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
-					"dev": true
-				},
-				"json-schema-traverse": {
-					"version": "1.0.0",
-					"resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
-					"integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
-					"dev": true
-				},
 				"lodash": {
-					"version": "4.17.20",
-					"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz",
-					"integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==",
+					"version": "4.17.21",
+					"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
+					"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
 					"dev": true
-				},
-				"rimraf": {
-					"version": "3.0.2",
-					"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
-					"integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
-					"dev": true,
-					"requires": {
-						"glob": "^7.1.3"
-					}
-				},
-				"slice-ansi": {
-					"version": "4.0.0",
-					"resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz",
-					"integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==",
-					"dev": true,
-					"requires": {
-						"ansi-styles": "^4.0.0",
-						"astral-regex": "^2.0.0",
-						"is-fullwidth-code-point": "^3.0.0"
-					}
-				},
-				"supports-color": {
-					"version": "7.2.0",
-					"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
-					"integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
-					"dev": true,
-					"requires": {
-						"has-flag": "^4.0.0"
-					}
-				},
-				"table": {
-					"version": "6.0.7",
-					"resolved": "https://registry.npmjs.org/table/-/table-6.0.7.tgz",
-					"integrity": "sha512-rxZevLGTUzWna/qBLObOe16kB2RTnnbhciwgPbMMlazz1yZGVEgnZK762xyVdVznhqxrfCeBMmMkgOOaPwjH7g==",
-					"dev": true,
-					"requires": {
-						"ajv": "^7.0.2",
-						"lodash": "^4.17.20",
-						"slice-ansi": "^4.0.0",
-						"string-width": "^4.2.0"
-					},
-					"dependencies": {
-						"ajv": {
-							"version": "7.0.4",
-							"resolved": "https://registry.npmjs.org/ajv/-/ajv-7.0.4.tgz",
-							"integrity": "sha512-xzzzaqgEQfmuhbhAoqjJ8T/1okb6gAzXn/eQRNpAN1AEUoHJTNF9xCDRTtf/s3SKldtZfa+RJeTs+BQq+eZ/sw==",
-							"dev": true,
-							"requires": {
-								"fast-deep-equal": "^3.1.1",
-								"json-schema-traverse": "^1.0.0",
-								"require-from-string": "^2.0.2",
-								"uri-js": "^4.2.2"
-							}
-						}
-					}
 				}
 			}
 		},
 		"eslint-config-wikimedia": {
-			"version": "0.18.1",
-			"resolved": "https://registry.npmjs.org/eslint-config-wikimedia/-/eslint-config-wikimedia-0.18.1.tgz",
-			"integrity": "sha512-93nHVH4CGxYwelbTjJQLr0xqn4XIe9WwWeGL4wMnELZW/Aceg52aT7AgIdV0659ReLzrCgxLPDvbeqB47LjBTQ==",
+			"version": "0.18.2",
+			"resolved": "https://registry.npmjs.org/eslint-config-wikimedia/-/eslint-config-wikimedia-0.18.2.tgz",
+			"integrity": "sha512-OllUgce2qODU/6481jg/a1kT/dygBDY1xhxXuAiQdYxJARV6LXyuiJw+wl1QBQz+huV9NXRxoJGC3L6x/NzC4g==",
 			"dev": true,
 			"requires": {
 				"eslint": "^7.17.0",
@@ -781,12 +681,12 @@
 				"eslint-plugin-es": "^4.1.0",
 				"eslint-plugin-jsdoc": "^30.7.13",
 				"eslint-plugin-json-es": "^1.5.1",
-				"eslint-plugin-mediawiki": "^0.2.6",
+				"eslint-plugin-mediawiki": "^0.2.7",
 				"eslint-plugin-mocha": "^8.0.0",
 				"eslint-plugin-no-jquery": "^2.5.0",
 				"eslint-plugin-node": "^11.1.0",
 				"eslint-plugin-qunit": "^5.2.0",
-				"eslint-plugin-vue": "^7.4.1",
+				"eslint-plugin-vue": "^7.7.0",
 				"eslint-plugin-wdio": "^6.0.12"
 			}
 		},
@@ -849,17 +749,17 @@
 					}
 				},
 				"lodash": {
-					"version": "4.17.20",
-					"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz",
-					"integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==",
+					"version": "4.17.21",
+					"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
+					"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
 					"dev": true
 				}
 			}
 		},
 		"eslint-plugin-json-es": {
-			"version": "1.5.2",
-			"resolved": "https://registry.npmjs.org/eslint-plugin-json-es/-/eslint-plugin-json-es-1.5.2.tgz",
-			"integrity": "sha512-N6G+q9R5MeXtr40tXYjfGKJAioSpLZA+VfZulKFVJuE6y8rPlja2IN6x5Xi4f/yQ/OWMJK7T1akfJ+3lcMhqyg==",
+			"version": "1.5.3",
+			"resolved": "https://registry.npmjs.org/eslint-plugin-json-es/-/eslint-plugin-json-es-1.5.3.tgz",
+			"integrity": "sha512-9wWjwhoN+ipMel70ktkWy0H7jj9sm5OAbAy3N3F3AT0swpIofVsIjDXyjGZJwSzy9tZzDtI/aKIj2WsqMHw2QA==",
 			"dev": true,
 			"requires": {
 				"eslint-visitor-keys": "^2.0.0",
@@ -867,38 +767,19 @@
 			}
 		},
 		"eslint-plugin-mediawiki": {
-			"version": "0.2.6",
-			"resolved": "https://registry.npmjs.org/eslint-plugin-mediawiki/-/eslint-plugin-mediawiki-0.2.6.tgz",
-			"integrity": "sha512-e7gx15H39ceam9AnSr6DDyfhMM9L43PVagHzclH3CF33DvWKi/OA+j2dqzJTuJcl5P/EmVIQHG5qoTaepkADsw==",
+			"version": "0.2.7",
+			"resolved": "https://registry.npmjs.org/eslint-plugin-mediawiki/-/eslint-plugin-mediawiki-0.2.7.tgz",
+			"integrity": "sha512-2ZvPvLEwCIqrJxV1349bdX5Q03c30WccuUMCfB1Gh2IVxbBSrY0gbzOk/gPZeYigVhODt9xoFWUCIz8jwTWfrA==",
 			"dev": true,
 			"requires": {
-				"eslint-plugin-vue": "^6.2.2",
+				"eslint-plugin-vue": "^7.7.0",
 				"upath": "^1.2.0"
-			},
-			"dependencies": {
-				"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"
-					}
-				},
-				"semver": {
-					"version": "5.7.1",
-					"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
-					"integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
-					"dev": true
-				}
 			}
 		},
 		"eslint-plugin-mocha": {
-			"version": "8.0.0",
-			"resolved": "https://registry.npmjs.org/eslint-plugin-mocha/-/eslint-plugin-mocha-8.0.0.tgz",
-			"integrity": "sha512-n67etbWDz6NQM+HnTwZHyBwz/bLlYPOxUbw7bPuCyFujv7ZpaT/Vn6KTAbT02gf7nRljtYIjWcTxK/n8a57rQQ==",
+			"version": "8.1.0",
+			"resolved": "https://registry.npmjs.org/eslint-plugin-mocha/-/eslint-plugin-mocha-8.1.0.tgz",
+			"integrity": "sha512-1EgHvXKRl7W3mq3sntZAi5T24agRMyiTPL4bSXe+B4GksYOjAPEWYx+J3eJg4It1l2NMNZJtk0gQyQ6mfiPhQg==",
 			"dev": true,
 			"requires": {
 				"eslint-utils": "^2.1.0",
@@ -960,15 +841,15 @@
 			}
 		},
 		"eslint-plugin-vue": {
-			"version": "7.5.0",
-			"resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-7.5.0.tgz",
-			"integrity": "sha512-QnMMTcyV8PLxBz7QQNAwISSEs6LYk2LJvGlxalXvpCtfKnqo7qcY0aZTIxPe8QOnHd7WCwiMZLOJzg6A03T0Gw==",
+			"version": "7.7.0",
+			"resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-7.7.0.tgz",
+			"integrity": "sha512-mYz4bpLGv5jx6YG/GvKkqbGSfV7uma2u1P3mLA41Q5vQl8W1MeuTneB8tfsLq6xxxesFubcrOC0BZBJ5R+eaCQ==",
 			"dev": true,
 			"requires": {
 				"eslint-utils": "^2.1.0",
 				"natural-compare": "^1.4.0",
 				"semver": "^7.3.2",
-				"vue-eslint-parser": "^7.4.1"
+				"vue-eslint-parser": "^7.6.0"
 			}
 		},
 		"eslint-plugin-wdio": {
@@ -1055,9 +936,9 @@
 			"dev": true
 		},
 		"esquery": {
-			"version": "1.3.1",
-			"resolved": "https://registry.npmjs.org/esquery/-/esquery-1.3.1.tgz",
-			"integrity": "sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==",
+			"version": "1.4.0",
+			"resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz",
+			"integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==",
 			"dev": true,
 			"requires": {
 				"estraverse": "^5.1.0"
@@ -1247,9 +1128,9 @@
 			}
 		},
 		"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=",
+			"version": "3.1.3",
+			"resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
+			"integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
 			"dev": true
 		},
 		"fast-json-stable-stringify": {
@@ -1264,6 +1145,15 @@
 			"integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
 			"dev": true
 		},
+		"file-entry-cache": {
+			"version": "6.0.1",
+			"resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
+			"integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==",
+			"dev": true,
+			"requires": {
+				"flat-cache": "^3.0.4"
+			}
+		},
 		"fill-range": {
 			"version": "4.0.0",
 			"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz",
@@ -1340,6 +1230,22 @@
 			"integrity": "sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q==",
 			"dev": true
 		},
+		"flat-cache": {
+			"version": "3.0.4",
+			"resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz",
+			"integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==",
+			"dev": true,
+			"requires": {
+				"flatted": "^3.1.0",
+				"rimraf": "^3.0.2"
+			}
+		},
+		"flatted": {
+			"version": "3.1.1",
+			"resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz",
+			"integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==",
+			"dev": true
+		},
 		"for-in": {
 			"version": "1.0.2",
 			"resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz",
@@ -1403,9 +1309,9 @@
 			}
 		},
 		"glob-parent": {
-			"version": "5.1.0",
-			"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.0.tgz",
-			"integrity": "sha512-qjtRgnIVmOfnKUE3NJAQEdk+lKrxfw8t5ke7SXtfMTHcjsBfOfWXCQfdb30zfDoZQ2IRSIiidmjtbHZPZ++Ihw==",
+			"version": "5.1.1",
+			"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz",
+			"integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==",
 			"dev": true,
 			"requires": {
 				"is-glob": "^4.0.1"
@@ -1447,9 +1353,9 @@
 			}
 		},
 		"globals": {
-			"version": "12.3.0",
-			"resolved": "https://registry.npmjs.org/globals/-/globals-12.3.0.tgz",
-			"integrity": "sha512-wAfjdLgFsPZsklLJvOBUBmzYE8/CwhEqSBEMRXA3qxIiNtyqvjYurAtIfDh6chlEPUfmTY3MnZh5Hfh4q0UlIw==",
+			"version": "12.4.0",
+			"resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz",
+			"integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==",
 			"dev": true,
 			"requires": {
 				"type-fest": "^0.8.1"
@@ -1544,57 +1450,6 @@
 			"requires": {
 				"chalk": "^4.0.0",
 				"eslint": "^7.0.0"
-			},
-			"dependencies": {
-				"ansi-styles": {
-					"version": "4.3.0",
-					"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
-					"integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
-					"dev": true,
-					"requires": {
-						"color-convert": "^2.0.1"
-					}
-				},
-				"chalk": {
-					"version": "4.1.0",
-					"resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
-					"integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
-					"dev": true,
-					"requires": {
-						"ansi-styles": "^4.1.0",
-						"supports-color": "^7.1.0"
-					}
-				},
-				"color-convert": {
-					"version": "2.0.1",
-					"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
-					"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
-					"dev": true,
-					"requires": {
-						"color-name": "~1.1.4"
-					}
-				},
-				"color-name": {
-					"version": "1.1.4",
-					"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
-					"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
-					"dev": true
-				},
-				"has-flag": {
-					"version": "4.0.0",
-					"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
-					"integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
-					"dev": true
-				},
-				"supports-color": {
-					"version": "7.2.0",
-					"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
-					"integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
-					"dev": true,
-					"requires": {
-						"has-flag": "^4.0.0"
-					}
-				}
 			}
 		},
 		"grunt-known-options": {
@@ -1778,9 +1633,9 @@
 			"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==",
+			"version": "3.3.0",
+			"resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
+			"integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
 			"dev": true,
 			"requires": {
 				"parent-module": "^1.0.0",
@@ -2001,9 +1856,9 @@
 			"dev": true
 		},
 		"js-yaml": {
-			"version": "3.13.1",
-			"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz",
-			"integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==",
+			"version": "3.14.1",
+			"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz",
+			"integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==",
 			"dev": true,
 			"requires": {
 				"argparse": "^1.0.7",
@@ -2220,9 +2075,9 @@
 			"dev": true
 		},
 		"node-releases": {
-			"version": "1.1.70",
-			"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.70.tgz",
-			"integrity": "sha512-Slf2s69+2/uAD79pVVQo8uSiC34+g8GWY8UH2Qtqv34ZfhYrxpYpfzs9Js9d6O0mbDmALuxaTlplnBTnSELcrw==",
+			"version": "1.1.71",
+			"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.71.tgz",
+			"integrity": "sha512-zR6HoT6LrLCRBwukmrVbHv0EpEQjksO6GmFcZQQuCAy139BEsoVKPYnf3jongYW83fAa1torLGYwxxky/p28sg==",
 			"dev": true
 		},
 		"nopt": {
@@ -2567,6 +2422,15 @@
 			"integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==",
 			"dev": true
 		},
+		"rimraf": {
+			"version": "3.0.2",
+			"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
+			"integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
+			"dev": true,
+			"requires": {
+				"glob": "^7.1.3"
+			}
+		},
 		"safe-regex": {
 			"version": "1.1.0",
 			"resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
@@ -2629,6 +2493,43 @@
 			"integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
 			"dev": true
 		},
+		"slice-ansi": {
+			"version": "4.0.0",
+			"resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz",
+			"integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==",
+			"dev": true,
+			"requires": {
+				"ansi-styles": "^4.0.0",
+				"astral-regex": "^2.0.0",
+				"is-fullwidth-code-point": "^3.0.0"
+			},
+			"dependencies": {
+				"ansi-styles": {
+					"version": "4.3.0",
+					"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+					"integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+					"dev": true,
+					"requires": {
+						"color-convert": "^2.0.1"
+					}
+				},
+				"color-convert": {
+					"version": "2.0.1",
+					"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+					"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+					"dev": true,
+					"requires": {
+						"color-name": "~1.1.4"
+					}
+				},
+				"color-name": {
+					"version": "1.1.4",
+					"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+					"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+					"dev": true
+				}
+			}
+		},
 		"snapdragon": {
 			"version": "0.8.2",
 			"resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz",
@@ -2835,9 +2736,9 @@
 			}
 		},
 		"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==",
+			"version": "4.2.2",
+			"resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.2.tgz",
+			"integrity": "sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==",
 			"dev": true,
 			"requires": {
 				"emoji-regex": "^8.0.0",
@@ -2869,6 +2770,44 @@
 				"has-flag": "^3.0.0"
 			}
 		},
+		"table": {
+			"version": "6.0.7",
+			"resolved": "https://registry.npmjs.org/table/-/table-6.0.7.tgz",
+			"integrity": "sha512-rxZevLGTUzWna/qBLObOe16kB2RTnnbhciwgPbMMlazz1yZGVEgnZK762xyVdVznhqxrfCeBMmMkgOOaPwjH7g==",
+			"dev": true,
+			"requires": {
+				"ajv": "^7.0.2",
+				"lodash": "^4.17.20",
+				"slice-ansi": "^4.0.0",
+				"string-width": "^4.2.0"
+			},
+			"dependencies": {
+				"ajv": {
+					"version": "7.1.1",
+					"resolved": "https://registry.npmjs.org/ajv/-/ajv-7.1.1.tgz",
+					"integrity": "sha512-ga/aqDYnUy/o7vbsRTFhhTsNeXiYb5JWDIcRIeZfwRNCefwjNTVYCGdGSUrEmiu3yDK3vFvNbgJxvrQW4JXrYQ==",
+					"dev": true,
+					"requires": {
+						"fast-deep-equal": "^3.1.1",
+						"json-schema-traverse": "^1.0.0",
+						"require-from-string": "^2.0.2",
+						"uri-js": "^4.2.2"
+					}
+				},
+				"json-schema-traverse": {
+					"version": "1.0.0",
+					"resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
+					"integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
+					"dev": true
+				},
+				"lodash": {
+					"version": "4.17.21",
+					"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
+					"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
+					"dev": true
+				}
+			}
+		},
 		"text-table": {
 			"version": "0.2.0",
 			"resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
@@ -3007,9 +2946,9 @@
 			"dev": true
 		},
 		"uri-js": {
-			"version": "4.2.2",
-			"resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz",
-			"integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==",
+			"version": "4.4.1",
+			"resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
+			"integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
 			"dev": true,
 			"requires": {
 				"punycode": "^2.1.0"
@@ -3034,9 +2973,9 @@
 			"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==",
+			"version": "2.3.0",
+			"resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz",
+			"integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==",
 			"dev": true
 		},
 		"v8flags": {
@@ -3049,16 +2988,16 @@
 			}
 		},
 		"vue-eslint-parser": {
-			"version": "7.4.1",
-			"resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-7.4.1.tgz",
-			"integrity": "sha512-AFvhdxpFvliYq1xt/biNBslTHE/zbEvSnr1qfHA/KxRIpErmEDrQZlQnvEexednRHmLfDNOMuDYwZL5xkLzIXQ==",
+			"version": "7.6.0",
+			"resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-7.6.0.tgz",
+			"integrity": "sha512-QXxqH8ZevBrtiZMZK0LpwaMfevQi9UL7lY6Kcp+ogWHC88AuwUPwwCIzkOUc1LR4XsYAt/F9yHXAB/QoD17QXA==",
 			"dev": true,
 			"requires": {
 				"debug": "^4.1.1",
 				"eslint-scope": "^5.0.0",
 				"eslint-visitor-keys": "^1.1.0",
 				"espree": "^6.2.1",
-				"esquery": "^1.0.1",
+				"esquery": "^1.4.0",
 				"lodash": "^4.17.15"
 			},
 			"dependencies": {
@@ -3078,6 +3017,21 @@
 						"acorn-jsx": "^5.2.0",
 						"eslint-visitor-keys": "^1.1.0"
 					}
+				},
+				"esquery": {
+					"version": "1.4.0",
+					"resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz",
+					"integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==",
+					"dev": true,
+					"requires": {
+						"estraverse": "^5.1.0"
+					}
+				},
+				"estraverse": {
+					"version": "5.2.0",
+					"resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz",
+					"integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==",
+					"dev": true
 				}
 			}
 		},
diff --git a/package.json b/package.json
index 7f7b61c..0a5a347 100644
--- a/package.json
+++ b/package.json
@@ -4,7 +4,7 @@
 		"test": "grunt test"
 	},
 	"devDependencies": {
-		"eslint-config-wikimedia": "0.18.1",
+		"eslint-config-wikimedia": "0.18.2",
 		"grunt": "1.3.0",
 		"grunt-banana-checker": "0.9.0",
 		"grunt-eslint": "23.0.0"
-- 
2.20.1

$ date
Sat Mar  6 02:17:59 UTC 2021

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

$ git config user.name libraryupgrader

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

$ git submodule update --init

$ grr init
Installed commit-msg hook.

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

$ composer install
Loading composer repositories with package information
Warning from https://repo.packagist.org: You are using an outdated version of Composer. Composer 2 is now available and you should upgrade. See https://getcomposer.org/2
Updating dependencies (including require-dev)
Package operations: 25 installs, 0 updates, 0 removals
  - Installing composer/installers (v1.10.0): Loading from cache
  - Installing data-values/interfaces (0.2.5): Loading from cache
  - Installing data-values/data-values (2.3.0): Loading from cache
  - Installing data-values/validators (0.1.3): Loading from cache
  - Installing data-values/common (0.4.3): Loading from cache
  - Installing param-processor/param-processor (1.10.0): Loading from cache
  - Installing squizlabs/php_codesniffer (3.5.8): Loading from cache
  - Installing composer/spdx-licenses (1.5.5): Loading from cache
  - Installing composer/semver (3.2.4): Loading from cache
  - Installing mediawiki/mediawiki-codesniffer (v35.0.0): Loading from cache
  - Installing symfony/polyfill-php80 (v1.22.1): Loading from cache
  - Installing symfony/polyfill-mbstring (v1.22.1): Loading from cache
  - Installing symfony/polyfill-intl-normalizer (v1.22.1): Loading from cache
  - Installing symfony/polyfill-intl-grapheme (v1.22.1): Loading from cache
  - Installing symfony/polyfill-ctype (v1.22.1): Loading from cache
  - Installing symfony/string (v5.2.4): Loading from cache
  - Installing psr/container (1.1.1): Loading from cache
  - Installing symfony/service-contracts (v2.2.0): Loading from cache
  - Installing symfony/polyfill-php73 (v1.22.1): Loading from cache
  - Installing symfony/console (v5.2.4): Loading from cache
  - Installing mediawiki/minus-x (1.1.1): Loading from cache
  - Installing php-parallel-lint/php-console-color (v0.3): Loading from cache
  - Installing php-parallel-lint/php-console-highlighter (v0.5): Loading from cache
  - Installing php-parallel-lint/php-parallel-lint (v1.2.0): Loading from cache
  - Installing mwstake/mediawiki-component-commonuserinterface (1.1): Loading from cache
symfony/service-contracts suggests installing symfony/service-implementation
symfony/console suggests installing symfony/event-dispatcher
symfony/console suggests installing symfony/lock
symfony/console suggests installing symfony/process
symfony/console suggests installing psr/log (For using the console logger)
Writing lock file
Generating autoload files
12 packages you are using are looking for funding.
Use the `composer fund` command to find out more!

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

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

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

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

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

added 351 packages from 242 contributors and audited 351 packages in 59.176s

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

found 0 vulnerabilities


$ npm update eslint -depth 10
+ eslint@7.21.0
added 8 packages from 7 contributors, removed 7 packages, updated 16 packages, moved 12 packages and audited 352 packages in 96.328s

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

found 0 vulnerabilities


$ npm install grunt-eslint@23.0.0 --save-exact
+ grunt-eslint@23.0.0
removed 6 packages, updated 1 package and audited 346 packages in 3.916s

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

found 0 vulnerabilities


$ ./node_modules/.bin/eslint i18n/extjs/ku-latn.json i18n/api/sr-el.json i18n/upload/hr.json resources/bluespice/bluespice.wikiText.js i18n/core/tcy.json i18n/validator/el.json i18n/core/hy.json i18n/extjs/bn.json i18n/core/roa-tara.json i18n/upload/sv.json i18n/installer/qqq.json i18n/extjs-portal/ar.json i18n/deferred/roa-tara.json i18n/installer/ru.json i18n/filerepo/inh.json i18n/core/ig.json i18n/credits/pt.json i18n/extjs/en-gb.json i18n/validator/nl.json i18n/credits/av.json i18n/filerepo/pl.json i18n/core/ne.json resources/bluespice/bluespice.deferredNotifications.js i18n/extjs/my.json i18n/extjs/rmf.json i18n/extjs/aeb-arab.json resources/bluespice.extjs/BS/form/field/ItemList.js i18n/core/bs.json i18n/diagnostics/id.json i18n/core/es.json i18n/ooui/zgh.json i18n/credits/inh.json i18n/credits/diq.json i18n/settings/pt.json i18n/core/nah.json i18n/core/qqq.json i18n/filerepo/got.json i18n/extjs/sms.json i18n/diagnostics/bg.json i18n/settings/uk.json i18n/core/eu.json resources/bluespice.extjs/BS/form/field/TitleCombo.js i18n/extjs-portal/fa.json i18n/filerepo/gl.json i18n/installer/lt.json i18n/extjs/ksh.json i18n/core/min.json i18n/diagnostics/es.json i18n/filerepo/sl.json i18n/api/it.json resources/bluespice.extjs/BS/portal/PortletConfig.js i18n/extjs/lfn.json i18n/upload/hy.json i18n/filerepo/fr.json i18n/extjs/vi.json i18n/settings/sr-ec.json i18n/installer/it.json i18n/extjs-portal/ta.json i18n/credits/zh-hant.json i18n/upload/fa.json i18n/diagnostics/sr-el.json i18n/credits/be-tarask.json i18n/validator/sl.json i18n/deferred/fa.json i18n/extjs-portal/hu.json i18n/api/ru.json i18n/api/diq.json resources/bluespice.extjs/BS/AlertDialog.js i18n/core/lki.json i18n/settings/be-tarask.json resources/bluespice.extjs/BS/store/ApiRecentChanges.js i18n/filerepo/ja.json i18n/api/pt.json i18n/filerepo/zh-hans.json i18n/validator/zh-hans.json i18n/validator/ug-arab.json i18n/upload/lv.json i18n/filerepo/az.json i18n/credits/ba.json i18n/settings/ast.json i18n/filerepo/sr-el.json i18n/extjs/ar.json i18n/settings/bn.json i18n/extjs/qqq.json i18n/ooui/fr.json i18n/deferred/te.json i18n/credits/ja.json i18n/credits/fi.json i18n/extjs/ig.json i18n/deferred/pt.json i18n/core/tt-cyrl.json i18n/deferred/eo.json resources/bluespice.extjs/BS/action/Base.js i18n/ooui/gl.json i18n/deferred/en.json i18n/extjs/kiu.json i18n/filerepo/it.json i18n/core/yi.json i18n/ooui/zh-hans.json i18n/deferred/atj.json i18n/validator/da.json i18n/validator/sco.json i18n/core/cv.json i18n/deferred/zgh.json i18n/extjs-portal/my.json i18n/ooui/pt-br.json i18n/core/krc.json i18n/validator/en.json i18n/extjs/lrc.json i18n/core/nds-nl.json i18n/diagnostics/br.json resources/bluespice.extjs/BS/form/action/MediaWikiApiCall.js i18n/filerepo/be-tarask.json i18n/ooui/it.json i18n/validator/fa.json i18n/api/de.json i18n/api/eu.json i18n/api/sr-ec.json i18n/validator/ba.json i18n/core/ur.json i18n/upload/zh-hans.json i18n/ooui/ko.json i18n/extjs/arz.json i18n/extjs/nl.json i18n/ooui/de-formal.json i18n/upload/ga.json i18n/extjs-portal/be-tarask.json i18n/api/gl.json i18n/installer/ja.json resources/bluespice.oojs/ui/widget/ObjectInputWidget.js i18n/extjs/br.json i18n/core/nb.json i18n/filerepo/sms.json i18n/core/sd.json i18n/settings/he.json i18n/extjs/kn.json i18n/installer/li.json i18n/extjs-portal/oc.json i18n/filerepo/kjp.json i18n/deferred/ko.json i18n/extjs/tay.json i18n/filerepo/qqq.json i18n/installer/zh-hant.json i18n/installer/lb.json i18n/core/ar.json i18n/diagnostics/qqq.json i18n/upload/mwl.json i18n/ooui/zh-hant.json i18n/core/af.json i18n/api/da.json i18n/credits/te.json i18n/extjs/da.json i18n/core/sl.json i18n/core/gl.json i18n/upload/nah.json i18n/core/vi.json i18n/core/bn.json i18n/upload/fr.json i18n/core/fi.json i18n/diagnostics/ast.json resources/bluespice.extjs/BS/dialog/UploadWarnings.js i18n/settings/nb.json resources/bluespice.extjs/BS/portal/ChartPortlet.js i18n/filerepo/lt.json i18n/extjs/zgh.json i18n/extjs-portal/ps.json i18n/api/uk.json i18n/ooui/nl.json i18n/validator/uk.json i18n/core/ku-latn.json i18n/settings/qqq.json i18n/api/bn.json i18n/core/fy.json i18n/core/am.json i18n/extjs-portal/qqq.json i18n/core/ka.json i18n/validator/ar.json i18n/api/be-tarask.json i18n/core/tay.json i18n/core/io.json i18n/diagnostics/nb.json i18n/upload/it.json i18n/upload/ckb.json i18n/installer/sr-ec.json i18n/api/ne.json resources/bluespice.extjs/BS/Window.js i18n/core/inh.json i18n/deferred/fr.json i18n/upload/lb.json i18n/extjs/fit.json i18n/core/diq.json i18n/ooui/de.json i18n/diagnostics/ar.json i18n/credits/ce.json i18n/core/lkt.json i18n/core/ti.json i18n/upload/sl.json i18n/credits/pl.json i18n/core/sr-ec.json resources/bluespice.extjs/BS/CRUDGridPanel.js i18n/extjs/om.json i18n/deferred/de.json i18n/ooui/sv.json i18n/settings/pt-br.json i18n/filerepo/ar.json i18n/extjs/ko.json i18n/validator/br.json i18n/credits/lt.json i18n/extjs-portal/ia.json i18n/filerepo/uk.json i18n/ooui/diq.json i18n/upload/vi.json i18n/api/el.json i18n/extjs/zh-hk.json resources/bluespice.extjs/BS/action/APICategoryOperation.js i18n/ooui/fi.json i18n/settings/da.json i18n/core/sms.json i18n/extjs/tt-cyrl.json i18n/extjs/bg.json i18n/deferred/ps.json i18n/ooui/lt.json i18n/extjs-portal/roa-tara.json i18n/ooui/roa-tara.json tests/phpunit/json/runJobsTriggerData.json i18n/filerepo/he.json i18n/validator/it.json resources/bluespice/bluespice.api.js i18n/extjs/lki.json i18n/core/ko.json i18n/credits/ko.json i18n/extjs-portal/ru.json resources/bluespice.extjs/BS/Panel.js i18n/extjs/be-tarask.json i18n/installer/pt.json i18n/extjs/nb.json i18n/credits/kjp.json i18n/diagnostics/hi.json i18n/filerepo/roa-tara.json i18n/credits/br.json i18n/filerepo/szy.json i18n/extjs/nah.json resources/bluespice.oojs/bluespice.ui.js i18n/validator/lb.json i18n/credits/ru.json composer.json i18n/extjs/af.json resources/bluespice.extjs/BS/action/APIAddCategories.js i18n/deferred/tly.json i18n/credits/en.json i18n/diagnostics/av.json i18n/settings/es.json i18n/validator/ast.json resources/bluespice.oojs/ui/widget/KeyObjectInputWidget.js i18n/deferred/zh-hant.json i18n/upload/ur.json i18n/api/ar.json resources/bluespice.extjs/BS/form/SimpleSelectBox.js resources/bluespice/bluespice.xhr.js i18n/diagnostics/sl.json i18n/filerepo/mr.json i18n/filerepo/ig.json i18n/core/pl.json i18n/core/ja.json i18n/diagnostics/gl.json i18n/extjs/tr.json i18n/extjs-portal/he.json i18n/upload/mr.json i18n/core/ca.json i18n/core/is.json i18n/deferred/ht.json i18n/validator/eo.json i18n/installer/ast.json i18n/credits/zh-hans.json i18n/credits/vi.json i18n/extjs/it.json i18n/deferred/uk.json resources/bluespice.extjs/BS/form/UserCombo.js i18n/api/lb.json i18n/extjs/inh.json i18n/core/de.json i18n/ooui/ja.json i18n/credits/hy.json i18n/core/ta.json i18n/upload/sco.json i18n/filerepo/kiu.json i18n/deferred/szy.json i18n/credits/kn.json resources/bluespice/bluespice.testsystem.js i18n/validator/sv.json i18n/deferred/ast.json i18n/diagnostics/be-tarask.json i18n/extjs-portal/fi.json i18n/upload/ig.json i18n/deferred/da.json i18n/diagnostics/hu.json i18n/diagnostics/ba.json i18n/extjs/tl.json i18n/extjs/ne.json i18n/extjs/fr.json i18n/api/jv.json i18n/extjs/hr.json i18n/filerepo/id.json i18n/extjs/lt.json i18n/extjs-portal/krc.json i18n/upload/kab.json i18n/ooui/qqq.json i18n/core/sv.json i18n/diagnostics/vi.json i18n/filerepo/zh-hk.json i18n/core/fit.json i18n/settings/id.json i18n/settings/mk.json i18n/diagnostics/ksh.json resources/bluespice.extjs/BS/ConfirmDialog.js i18n/upload/io.json resources/bluespice/bluespice.string.js resources/bluespice.oojs/ui/widget/KeyValueInputWidget.js i18n/api/qqq.json i18n/core/udm.json i18n/diagnostics/sv.json i18n/diagnostics/nl.json i18n/deferred/el.json i18n/settings/my.json i18n/installer/be-tarask.json i18n/deferred/mk.json i18n/upload/de-formal.json i18n/extjs/ro.json i18n/upload/ja.json i18n/upload/sms.json i18n/core/nds.json i18n/diagnostics/ko.json resources/bluespice.extjs/BS/portal/PortalDropZone.js i18n/deferred/pt-br.json i18n/core/bg.json i18n/extjs/pt-br.json i18n/credits/tt-cyrl.json i18n/extjs/sco.json i18n/api/zh-hant.json i18n/upload/eo.json i18n/extjs-portal/lb.json i18n/extjs-portal/sw.json i18n/core/ckb.json i18n/extjs/eml.json i18n/filerepo/lfn.json resources/bluespice.extjs/BS/dialog/BatchActions.js i18n/upload/hi.json i18n/credits/cv.json i18n/settings/tr.json i18n/settings/sv.json i18n/diagnostics/en.json i18n/extjs/hu.json resources/bluespice.extjs/BS/form/field/UserTag.js i18n/extjs-portal/ast.json i18n/credits/th.json i18n/extjs/udm.json i18n/ooui/ru.json i18n/credits/lb.json i18n/filerepo/tr.json i18n/upload/inh.json i18n/filerepo/es.json i18n/api/su.json i18n/core/tyv.json i18n/extjs-portal/tr.json i18n/installer/oc.json i18n/upload/da.json i18n/core/be-tarask.json i18n/core/jbo.json i18n/api/sl.json extension.json i18n/extjs/fa.json i18n/ooui/sw.json i18n/api/pl.json i18n/upload/gl.json i18n/extjs/azb.json resources/bluespice.extjs/BS/tree/Categories.js i18n/filerepo/tg-cyrl.json i18n/extjs/ur.json i18n/filerepo/sco.json i18n/ooui/es.json i18n/extjs-portal/lag.json i18n/extjs/cv.json i18n/api/sv.json i18n/extjs/shn.json i18n/core/crh-latn.json i18n/installer/es.json i18n/validator/de.json i18n/filerepo/pt.json i18n/filerepo/ast.json i18n/filerepo/ko.json i18n/core/bgn.json i18n/settings/sr-el.json i18n/deferred/br.json i18n/ooui/he.json i18n/extjs-portal/hy.json i18n/credits/szy.json i18n/extjs-portal/ba.json i18n/extjs/mk.json i18n/core/atj.json i18n/credits/pt-br.json resources/bluespice/bluespice.treepanel.js i18n/deferred/nb.json i18n/deferred/li.json i18n/core/kiu.json i18n/filerepo/atj.json i18n/upload/fi.json i18n/extjs/ca.json i18n/credits/eu.json i18n/credits/li.json i18n/upload/pt-br.json i18n/extjs-portal/li.json i18n/credits/nah.json i18n/validator/es.json i18n/extjs/ug-arab.json resources/bluespice.extjs/BS/action/APICopyPage.js i18n/validator/ne.json i18n/installer/diq.json i18n/installer/nb.json i18n/validator/ksh.json i18n/diagnostics/it.json resources/bluespice.extjs/BS/flyout/TwoColumnsBase.js i18n/installer/gl.json i18n/deferred/pnb.json resources/bluespice/bluespice.loadIndicator.js i18n/core/lzh.json i18n/settings/eo.json i18n/upload/ti.json resources/bluespice.extjs/BS/model/File.js i18n/upload/ast.json i18n/credits/lv.json i18n/upload/he.json i18n/core/kk-cyrl.json i18n/core/ba.json i18n/ooui/lb.json i18n/core/da.json i18n/validator/tr.json i18n/api/ast.json i18n/ooui/io.json i18n/upload/mt.json i18n/ooui/en.json i18n/extjs-portal/zh-hans.json i18n/settings/de.json i18n/upload/es.json resources/bluespice.oojs/ui/widget/StoreComboBoxInput.js i18n/deferred/tcy.json i18n/credits/bn.json i18n/credits/sk.json i18n/core/uz.json i18n/deferred/ku-latn.json i18n/core/smn.json resources/bluespice/bluespice.tooltip.js i18n/core/hyw.json i18n/extjs/ta.json i18n/filerepo/de.json i18n/extjs/te.json i18n/settings/fi.json i18n/api/mk.json i18n/extjs/hyw.json i18n/upload/szy.json i18n/diagnostics/sco.json i18n/extjs/ky.json i18n/credits/se.json i18n/extjs-portal/da.json i18n/credits/id.json i18n/extjs/roa-tara.json i18n/upload/th.json i18n/settings/ti.json i18n/extjs-portal/gl.json i18n/extjs-portal/nb.json i18n/settings/li.json i18n/extjs/bgn.json i18n/ooui/id.json i18n/validator/ia.json i18n/extjs/la.json i18n/diagnostics/he.json i18n/core/ro.json i18n/core/crh-cyrl.json i18n/ooui/nb.json i18n/filerepo/bgn.json i18n/core/vec.json i18n/deferred/ja.json i18n/filerepo/ce.json i18n/credits/nl.json i18n/upload/mk.json i18n/extjs/szy.json resources/bluespice.extjs/BS/action/APISetCategories.js i18n/credits/he.json package-lock.json resources/bluespice/bluespice.ping.js i18n/extjs/kk-cyrl.json i18n/validator/pl.json i18n/credits/lki.json i18n/deferred/th.json i18n/core/en.json i18n/installer/fr.json i18n/upload/uk.json i18n/ooui/sr-ec.json resources/bluespice.extjs/BS/flyout/TabbedDataViewBase.js i18n/core/sw.json i18n/core/pnb.json i18n/api/hu.json i18n/credits/sr-ec.json i18n/core/sr-el.json i18n/validator/ja.json i18n/installer/sv.json i18n/upload/ar.json i18n/core/pt-br.json i18n/extjs/crh-cyrl.json i18n/credits/sd.json i18n/diagnostics/eo.json i18n/settings/cs.json i18n/deferred/fi.json i18n/extjs-portal/mk.json i18n/core/uk.json i18n/ooui/sr-el.json resources/bluespice/bluespice.extensionManager.js i18n/diagnostics/pms.json i18n/filerepo/yue.json i18n/credits/gcr.json resources/bluespice.extjs/BS/form/NamespaceCombo.js i18n/diagnostics/fr.json i18n/core/sh.json i18n/ooui/ne.json resources/bluespice.extjs/BS/model/User.js i18n/filerepo/mt.json i18n/api/fr.json i18n/api/zh-hans.json i18n/extjs/diq.json i18n/extjs/be.json resources/bluespice.extjs/BS/model/Category.js i18n/extjs/cu.json resources/bluespice.extjs/BS/action/APIDeletePage.js resources/bluespice.extjs/BS/form/CategoryTree.js resources/bluespice/bluespice.html.formfields.sortable.js i18n/validator/fr.json i18n/filerepo/yo.json i18n/settings/gl.json i18n/extjs/uk.json i18n/settings/sl.json i18n/validator/roa-tara.json i18n/core/lag.json i18n/core/el.json i18n/extjs/nqo.json i18n/extjs/ia.json i18n/upload/eu.json i18n/settings/fit.json resources/bluespice.extjs/BS/dialog/Upload.js i18n/extjs-portal/pt.json i18n/upload/pl.json resources/bluespice/bluespice.js resources/bluespice.extjs/BS/portal/HTMLPortlet.js i18n/filerepo/ku-latn.json i18n/filerepo/hyw.json i18n/core/zgh.json resources/bluespice.extjs/BS/form/UploadPanel.js i18n/ooui/da.json i18n/installer/roa-tara.json i18n/installer/eo.json i18n/credits/ia.json i18n/extjs-portal/eo.json i18n/ooui/be-tarask.json i18n/extjs/rmc.json i18n/upload/bg.json i18n/api/pt-br.json i18n/api/bg.json i18n/extjs/pa.json i18n/diagnostics/pl.json i18n/credits/ta.json i18n/core/az.json i18n/api/tcy.json i18n/upload/smn.json i18n/installer/pl.json i18n/api/fi.json i18n/filerepo/oc.json i18n/extjs/ja.json i18n/credits/qqq.json i18n/deferred/diq.json i18n/filerepo/nb.json i18n/upload/diq.json i18n/core/tr.json i18n/extjs/ka.json i18n/extjs-portal/lv.json i18n/upload/pt.json i18n/ooui/ast.json i18n/core/cs.json i18n/api/nl.json i18n/extjs-portal/ksh.json i18n/filerepo/smn.json i18n/upload/ku-latn.json i18n/credits/de.json i18n/upload/ia.json i18n/filerepo/skr-arab.json i18n/settings/bg.json i18n/core/be.json i18n/deferred/sco.json resources/bluespice.oojs/ui/widget/UserPicker.js i18n/api/en.json i18n/validator/he.json i18n/ooui/bg.json i18n/extjs/crh-latn.json i18n/core/gcr.json i18n/validator/pt.json i18n/settings/dty.json i18n/credits/lfn.json i18n/upload/wuu.json i18n/extjs/se.json i18n/deferred/lfn.json i18n/core/ru.json i18n/deferred/sr-el.json i18n/deferred/sl.json i18n/installer/ba.json i18n/api/ba.json i18n/upload/en-gb.json i18n/deferred/aeb-arab.json i18n/diagnostics/mk.json i18n/extjs/zh-hans.json i18n/extjs/tcy.json i18n/extjs-portal/vi.json i18n/filerepo/su.json i18n/extjs/lb.json i18n/extjs/skr-arab.json i18n/extjs/si.json i18n/deferred/ti.json i18n/settings/it.json i18n/ooui/hr.json i18n/filerepo/li.json i18n/core/yua.json i18n/settings/zh-hans.json i18n/extjs/tly.json i18n/filerepo/fa.json i18n/extjs-portal/bg.json i18n/diagnostics/pt-br.json i18n/core/br.json i18n/core/rmf.json i18n/filerepo/te.json i18n/validator/pt-br.json i18n/deferred/hu.json i18n/installer/de.json i18n/filerepo/bn.json i18n/core/pt.json i18n/api/mr.json i18n/upload/zh-hant.json i18n/installer/tr.json i18n/diagnostics/fa.json i18n/extjs/bs.json i18n/extjs/tg-cyrl.json i18n/deferred/lb.json i18n/deferred/gl.json i18n/deferred/lt.json i18n/ooui/uk.json i18n/core/bto.json i18n/settings/hy.json i18n/filerepo/sv.json i18n/settings/ca.json i18n/deferred/cs.json i18n/extjs/mt.json i18n/upload/en.json i18n/upload/sr-ec.json i18n/credits/gl.json resources/bluespice.oojs/ui/widget/util/UserMenuOption.js resources/bluespice.extjs/BS/panel/BatchActions.js i18n/upload/el.json i18n/deferred/ca.json i18n/filerepo/eo.json i18n/deferred/qqq.json resources/bluespice.extjs/BS/portal/Portlet.js resources/bluespice.extjs/BS/store/ApiCategory.js i18n/extjs-portal/br.json i18n/diagnostics/ia.json i18n/extjs-portal/ko.json i18n/core/fr.json i18n/core/dty.json i18n/api/lt.json i18n/deferred/ru.json i18n/extjs/en.json i18n/extjs/es.json i18n/extjs/de-formal.json i18n/upload/tg-cyrl.json i18n/api/ja.json i18n/api/te.json i18n/diagnostics/el.json i18n/extjs/hy.json i18n/core/tg-cyrl.json i18n/extjs-portal/uk.json i18n/deferred/kjp.json i18n/diagnostics/mg.json i18n/extjs/smn.json Gruntfile.js resources/bluespice.extjs/BS/SimpleDialog.js i18n/extjs/eo.json i18n/filerepo/bg.json i18n/extjs/pl.json i18n/core/av.json i18n/installer/ksh.json i18n/deferred/de-formal.json i18n/settings/ar.json i18n/deferred/be-tarask.json i18n/filerepo/el.json i18n/extjs/su.json i18n/credits/mwl.json i18n/filerepo/ka.json i18n/diagnostics/pt.json i18n/installer/ar.json i18n/core/ce.json i18n/extjs-portal/rmf.json i18n/core/ast.json i18n/filerepo/io.json i18n/filerepo/tt-cyrl.json i18n/settings/el.json i18n/filerepo/diq.json i18n/upload/de.json i18n/deferred/ms.json i18n/extjs-portal/kn.json i18n/settings/te.json i18n/credits/pnb.json i18n/credits/hu.json i18n/core/kn.json i18n/credits/ast.json i18n/filerepo/mk.json i18n/settings/pl.json i18n/filerepo/zh-hant.json i18n/core/trv.json resources/bluespice/bluespice.util.js i18n/core/sco.json resources/bluespice/bluespice.alerts.js i18n/extjs/ast.json i18n/deferred/sr-ec.json i18n/extjs-portal/sr-el.json i18n/validator/vi.json i18n/filerepo/lb.json i18n/deferred/mt.json i18n/api/de-formal.json i18n/credits/sr-el.json i18n/upload/hyw.json i18n/core/so.json i18n/credits/ur.json i18n/extjs/atj.json i18n/credits/uk.json i18n/extjs/nds-nl.json i18n/api/lij.json i18n/extjs/cs.json i18n/upload/sr-el.json i18n/validator/hi.json resources/bluespice.extjs/BS/store/ApiGroup.js i18n/api/nb.json i18n/extjs/ru.json i18n/extjs-portal/eu.json i18n/credits/sco.json resources/bluespice.oojs/ui/widget/StoreApiBoundComboBoxInput.js i18n/deferred/tay.json i18n/extjs/lzh.json i18n/filerepo/eu.json i18n/extjs-portal/sr-ec.json i18n/api/fa.json i18n/extjs-portal/ja.json resources/bluespice.extjs/BS/portal/PortalPanel.js i18n/settings/skr-arab.json i18n/credits/io.json i18n/credits/fa.json i18n/extjs-portal/bgn.json i18n/ooui/wuu.json i18n/filerepo/da.json i18n/core/as.json i18n/settings/nl.json i18n/extjs-portal/es.json resources/bluespice.extjs/BS/form/field/NamespaceTag.js i18n/filerepo/pt-br.json i18n/extjs/yi.json i18n/core/mwl.json i18n/upload/nb.json i18n/extjs-portal/tcy.json i18n/upload/nl.json i18n/settings/ja.json i18n/credits/bg.json i18n/settings/fr.json i18n/core/lb.json resources/bluespice.extjs/BS/store/LocalNamespaces.js i18n/extjs/vec.json i18n/extjs-portal/zh-hant.json i18n/credits/mk.json i18n/core/tly.json i18n/extjs/sdh.json i18n/api/ko.json i18n/credits/el.json i18n/validator/sr-ec.json i18n/diagnostics/yi.json i18n/core/skr-arab.json i18n/deferred/id.json resources/bluespice.extjs/BS/portal/PortalColumn.js resources/bluespice.extjs/BS/model/Title.js i18n/credits/tr.json i18n/core/fa.json i18n/deferred/hyw.json i18n/filerepo/ru.json i18n/upload/roa-tara.json i18n/extjs-portal/sd.json i18n/extjs/gl.json i18n/validator/ko.json i18n/deferred/ksh.json i18n/upload/hu.json i18n/deferred/es.json i18n/extjs-portal/lt.json i18n/installer/fi.json i18n/extjs/pt.json i18n/upload/pnb.json i18n/credits/nb.json i18n/credits/ti.json i18n/extjs/ce.json resources/bluespice/bluespice.config.js i18n/filerepo/th.json i18n/upload/my.json i18n/settings/ckb.json i18n/ooui/th.json i18n/ooui/ar.json i18n/validator/ce.json i18n/credits/ar.json i18n/deferred/sv.json i18n/diagnostics/tr.json i18n/installer/mk.json resources/bluespice.extjs/bluespice.extjs.js resources/bluespice.extjs/BS/store/BSApi.js i18n/diagnostics/roa-tara.json i18n/core/id.json i18n/diagnostics/diq.json resources/bluespice.extjs/BS/store/ApiUser.js i18n/deferred/ne.json i18n/validator/bn.json i18n/deferred/nl.json i18n/ooui/eo.json i18n/filerepo/zgh.json i18n/settings/roa-tara.json i18n/extjs/sl.json resources/bluespice.extjs/BS/form/CategoryBoxSelect.js i18n/deferred/bn.json i18n/extjs/ckb.json i18n/extjs/he.json i18n/deferred/vec.json i18n/extjs/ti.json i18n/extjs-portal/cv.json i18n/core/oc.json i18n/credits/my.json i18n/core/ug-arab.json i18n/settings/lv.json i18n/settings/zh-hant.json i18n/credits/bgn.json i18n/settings/diq.json i18n/credits/sv.json i18n/ooui/bn.json i18n/diagnostics/lij.json i18n/extjs/fi.json i18n/ooui/mk.json i18n/extjs/bcl.json i18n/extjs-portal/id.json resources/bluespice.extjs/BS/model/Namespace.js i18n/ooui/skr-arab.json i18n/upload/lt.json i18n/upload/tly.json i18n/extjs/mn.json i18n/deferred/bs.json i18n/api/roa-tara.json i18n/core/cnh.json i18n/deferred/pl.json i18n/deferred/he.json i18n/extjs-portal/lki.json i18n/core/mk.json i18n/core/eo.json i18n/ooui/pl.json i18n/core/lt.json i18n/settings/lb.json i18n/core/mr.json i18n/installer/de-formal.json i18n/extjs/so.json i18n/upload/qqq.json i18n/settings/ru.json i18n/extjs-portal/it.json i18n/api/es.json i18n/extjs/kjp.json i18n/core/te.json i18n/extjs-portal/te.json i18n/extjs-portal/sv.json i18n/extjs-portal/diq.json i18n/filerepo/la.json i18n/settings/en.json i18n/extjs/oc.json package.json i18n/extjs/zh-hant.json i18n/core/csb.json i18n/extjs-portal/sco.json i18n/extjs/id.json i18n/core/olo.json i18n/installer/en.json resources/bluespice.extjs/BS/tree/WikiSubPages.js i18n/validator/zh-hant.json i18n/extjs/li.json i18n/extjs-portal/el.json i18n/upload/id.json i18n/filerepo/nds-nl.json i18n/ooui/hy.json i18n/installer/ko.json i18n/credits/ksh.json i18n/extjs/mr.json i18n/core/hu.json i18n/upload/got.json i18n/credits/es.json i18n/diagnostics/oc.json i18n/core/th.json i18n/filerepo/lv.json i18n/extjs-portal/ce.json i18n/extjs-portal/de.json i18n/upload/fit.json i18n/extjs/sr-ec.json resources/bluespice.extjs/BS/form/field/CategoryTag.js i18n/filerepo/nl.json i18n/extjs/el.json i18n/credits/lzh.json i18n/api/eo.json i18n/extjs/pnb.json i18n/core/tl.json i18n/deferred/bcl.json i18n/upload/tr.json i18n/installer/zh-hans.json i18n/core/kjp.json i18n/validator/qqq.json i18n/upload/be-tarask.json i18n/installer/pt-br.json i18n/filerepo/be.json resources/bluespice.extjs/BS/form/CategoryCombo.js resources/bluespice.extjs/BS/override/grid/column/Action.js i18n/core/lv.json i18n/filerepo/sw.json i18n/filerepo/br.json i18n/installer/hi.json i18n/installer/fa.json i18n/credits/de-formal.json i18n/credits/da.json resources/bluespice.extjs/BS/form/field/GroupTag.js i18n/core/he.json i18n/installer/lij.json i18n/validator/ru.json i18n/deferred/hy.json i18n/extjs-portal/io.json i18n/installer/el.json i18n/settings/ka.json i18n/core/my.json i18n/credits/yi.json i18n/extjs/ban.json i18n/validator/mk.json i18n/credits/azb.json i18n/ooui/tr.json i18n/credits/eo.json i18n/extjs-portal/pt-br.json i18n/deferred/my.json i18n/diagnostics/ja.json i18n/credits/tcy.json i18n/core/ps.json i18n/core/km.json i18n/extjs/sv.json i18n/extjs/sd.json i18n/deferred/ba.json i18n/deferred/it.json i18n/deferred/io.json i18n/core/zh-hant.json i18n/extjs/eu.json i18n/core/myv.json resources/bluespice.extjs/BS/PromptDialog.js i18n/deferred/bg.json i18n/diagnostics/lt.json i18n/diagnostics/zh-hans.json i18n/installer/bg.json i18n/extjs/xmf.json i18n/settings/io.json i18n/api/ksh.json i18n/upload/lfn.json i18n/core/zh-hans.json i18n/api/tr.json i18n/core/szy.json i18n/validator/sr-el.json i18n/credits/it.json resources/bluespice.oojs/ui/widget/JsonArrayInputWidget.js resources/bluespice.extjs/BS/dialog/PageExport.js i18n/credits/oc.json i18n/upload/li.json i18n/validator/cs.json i18n/validator/lt.json resources/bluespice.extjs/BS/portal/GridPortlet.js i18n/extjs/ba.json i18n/filerepo/sr-ec.json i18n/core/mo.json i18n/ooui/pt.json i18n/deferred/eu.json resources/bluespice.extjs/BS/portal/APIPortlet.js i18n/core/de-formal.json i18n/upload/bn.json i18n/extjs/bho.json i18n/settings/be.json i18n/core/nl.json i18n/deferred/ig.json i18n/core/ksh.json tests/phpunit/json/pages.json i18n/installer/nl.json i18n/extjs/kab.json i18n/ooui/te.json i18n/extjs/fy.json i18n/validator/gl.json i18n/core/ia.json i18n/extjs/io.json i18n/credits/km.json i18n/diagnostics/uk.json i18n/ooui/el.json i18n/deferred/zh-hans.json i18n/core/ary.json i18n/extjs/sr-el.json i18n/installer/mg.json i18n/extjs-portal/fr.json i18n/filerepo/my.json i18n/diagnostics/ce.json i18n/filerepo/fi.json i18n/credits/roa-tara.json i18n/validator/nb.json resources/bluespice.extjs/BS/CRUDPanel.js i18n/core/or.json i18n/credits/smn.json i18n/extjs/ht.json i18n/deferred/tr.json i18n/extjs-portal/en.json i18n/extjs-portal/fy.json i18n/credits/be.json i18n/deferred/ar.json i18n/installer/hu.json i18n/extjs/sh.json i18n/extjs/ps.json i18n/settings/ko.json resources/bluespice.extjs/BS/action/APIMovePage.js i18n/diagnostics/eu.json i18n/installer/uk.json i18n/core/qu.json tests/phpunit/json/users.json i18n/credits/sl.json i18n/core/it.json i18n/installer/sl.json i18n/filerepo/hy.json i18n/filerepo/pnb.json i18n/credits/fy.json i18n/extjs-portal/pl.json resources/bluespice/bluespice.html.formfields.multiselect.js i18n/installer/br.json i18n/extjs-portal/sl.json i18n/ooui/fa.json i18n/diagnostics/sr-ec.json resources/bluespice.extjs/BS/grid/FileRepo.js i18n/core/hi.json i18n/installer/pms.json i18n/extjs-portal/nds-nl.json i18n/extjs/lv.json resources/bluespice-logo/bluespice-logo.json i18n/extjs-portal/pnb.json i18n/diagnostics/li.json i18n/settings/fa.json i18n/settings/th.json i18n/credits/ps.json i18n/extjs/as.json i18n/api/br.json i18n/extjs/de.json resources/bluespice.extjs/BS/action/APIRemoveCategories.js i18n/upload/ko.json resources/bluespice/bluespice.html.formfields.namespacemultiselect.js i18n/core/lrc.json i18n/api/he.json i18n/credits/fr.json i18n/extjs-portal/nl.json i18n/extjs/hi.json i18n/deferred/ia.json i18n/extjs/krc.json i18n/upload/ru.json i18n/diagnostics/de.json i18n/diagnostics/zh-hant.json resources/bluespice.extjs/BS/action/APIEditPage.js i18n/settings/kjp.json i18n/core/zh-hk.json resources/bluespice.oojs/ui/widget/TitleComboBoxInput.js i18n/upload/te.json resources/bluespice.extjs/BS/panel/Upload.js i18n/api/hsn.json i18n/filerepo/nah.json i18n/filerepo/en.json i18n/core/ms.json i18n/upload/atj.json resources/bluespice.extjs/BS/form/field/GroupCombo.js resources/bluespice.extjs/bluespice.extjs.loadPlaceholder.js i18n/upload/yo.json i18n/diagnostics/ru.json i18n/installer/sr-el.json i18n/extjs/th.json --fix

/src/repo/Gruntfile.js
   5:2   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
  20:11  warning  Object.assign() is not supported in Safari 5.1, iOS Safari 6.0-6.1, IE 11  compat/compat

/src/repo/resources/bluespice.extjs/BS/AlertDialog.js
   1:1   warning  'Ext' is not defined                                                                no-undef
  11:3   warning  All 'var' declarations must be at the top of the function scope                     vars-on-top
  13:11  warning  All possible message keys should be documented. See https://w.wiki/PRw for details  mediawiki/msg-doc

/src/repo/resources/bluespice.extjs/BS/CRUDGridPanel.js
    9:0   warning  Invalid JSDoc tag name "subpackage"                              jsdoc/check-tag-names
   12:0   warning  Invalid JSDoc tag name "filesource"                              jsdoc/check-tag-names
   15:1   warning  'Ext' is not defined                                             no-undef
   22:12  warning  'config' is assigned a value but never used                      no-unused-vars
   48:36  warning  'Ext' is not defined                                             no-undef
   67:15  warning  'Ext' is not defined                                             no-undef
   68:22  warning  'Ext' is not defined                                             no-undef
  124:3   warning  Combine this with the previous 'var' statement                   one-var
  124:3   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  124:26  warning  'Ext' is not defined                                             no-undef
  143:1   warning  This line has a length of 121. Maximum allowed is 100            max-len
  164:36  warning  'Ext' is not defined                                             no-undef
  200:56  warning  'opts' is defined but never used                                 no-unused-vars
  222:32  warning  'oSender' is defined but never used                              no-unused-vars
  222:41  warning  'iRowIndex' is defined but never used                            no-unused-vars
  222:52  warning  'oEvent' is defined but never used                               no-unused-vars
  231:75  warning  'row' is defined but never used                                  no-unused-vars
  236:77  warning  'row' is defined but never used                                  no-unused-vars
  241:28  warning  'oButton' is defined but never used                              no-unused-vars
  241:37  warning  'oEvent' is defined but never used                               no-unused-vars
  245:29  warning  'oButton' is defined but never used                              no-unused-vars
  245:38  warning  'oEvent' is defined but never used                               no-unused-vars
  249:31  warning  'oButton' is defined but never used                              no-unused-vars
  249:40  warning  'oEvent' is defined but never used                               no-unused-vars

/src/repo/resources/bluespice.extjs/BS/CRUDPanel.js
    9:0   warning  Invalid JSDoc tag name "subpackage"                    jsdoc/check-tag-names
   12:0   warning  Invalid JSDoc tag name "filesource"                    jsdoc/check-tag-names
   15:1   warning  'Ext' is not defined                                   no-undef
   23:1   warning  This line has a length of 132. Maximum allowed is 100  max-len
   34:27  warning  'Ext' is not defined                                   no-undef
   44:3   warning  '$' is not defined                                     no-undef
   56:14  warning  'Ext' is not defined                                   no-undef
   65:22  warning  'Ext' is not defined                                   no-undef
   78:23  warning  'Ext' is not defined                                   no-undef
   92:25  warning  'Ext' is not defined                                   no-undef
  108:33  warning  'arguments' is defined but never used                  no-unused-vars
  108:33  warning  Shadowing of global property 'arguments'               no-shadow-restricted-names
  112:28  warning  'oButton' is defined but never used                    no-unused-vars
  112:37  warning  'oEvent' is defined but never used                     no-unused-vars
  116:29  warning  'oButton' is defined but never used                    no-unused-vars
  116:38  warning  'oEvent' is defined but never used                     no-unused-vars
  120:31  warning  'oButton' is defined but never used                    no-unused-vars
  120:40  warning  'oEvent' is defined but never used                     no-unused-vars
  132:2   warning  Missing JSDoc return type                              valid-jsdoc
  133:5   warning  Missing JSDoc parameter description for 'operation'    valid-jsdoc
  133:5   warning  Missing JSDoc parameter type for 'operation'           valid-jsdoc
  133:0   warning  Missing JSDoc @param "operation" type                  jsdoc/require-param-type
  134:0   warning  Missing JSDoc @return type                             jsdoc/require-returns-type

/src/repo/resources/bluespice.extjs/BS/ConfirmDialog.js
  1:1  warning  'Ext' is not defined  no-undef

/src/repo/resources/bluespice.extjs/BS/Panel.js
  1:1  warning  'Ext' is not defined  no-undef

/src/repo/resources/bluespice.extjs/BS/PromptDialog.js
   1:1   warning  'Ext' is not defined  no-undef
  10:19  warning  'Ext' is not defined  no-undef

/src/repo/resources/bluespice.extjs/BS/SimpleDialog.js
   1:1   warning  'Ext' is not defined                                                                no-undef
  17:19  warning  All possible message keys should be documented. See https://w.wiki/PRw for details  mediawiki/msg-doc
  20:18  warning  'Ext' is not defined                                                                no-undef
  29:16  warning  'Ext' is not defined                                                                no-undef
  35:20  warning  'Ext' is not defined                                                                no-undef

/src/repo/resources/bluespice.extjs/BS/Window.js
    9:0   warning  Invalid JSDoc tag name "subpackage"           jsdoc/check-tag-names
   12:0   warning  Invalid JSDoc tag name "filesource"           jsdoc/check-tag-names
   15:1   warning  'Ext' is not defined                          no-undef
   58:9   warning  Identifier 'original_x' is not in camel case  camelcase
   61:9   warning  Identifier 'original_y' is not in camel case  camelcase
  116:16  warning  'Ext' is not defined                          no-undef
  123:20  warning  'Ext' is not defined                          no-undef
  139:8   warning  'Ext' is not defined                          no-undef

/src/repo/resources/bluespice.extjs/BS/action/APIAddCategories.js
  1:1  warning  'Ext' is not defined  no-undef

/src/repo/resources/bluespice.extjs/BS/action/APICategoryOperation.js
   1:1   warning  'Ext' is not defined                                                       no-undef
   9:13  warning  '$' is not defined                                                         no-undef
  10:23  warning  'BS' is not defined                                                        no-undef
  12:3   warning  Combine this with the previous 'var' statement                             one-var
  12:3   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
  16:8   warning  Identifier 'page_id' is not in camel case                                  camelcase
  18:8   warning  Identifier 'page_title' is not in camel case                               camelcase
  35:3   warning  'bs' is not defined                                                        no-undef
  44:22  warning  'BS' is not defined                                                        no-undef
  49:24  warning  'BS' is not defined                                                        no-undef
  52:23  warning  'BS' is not defined                                                        no-undef
  63:12  warning  Do not access Object.prototype method 'hasOwnProperty' from target object  no-prototype-builtins
  68:12  warning  Do not access Object.prototype method 'hasOwnProperty' from target object  no-prototype-builtins

/src/repo/resources/bluespice.extjs/BS/action/APICopyPage.js
   1:1   warning  'Ext' is not defined                                             no-undef
  10:2   warning  Mixed spaces and tabs                                            no-mixed-spaces-and-tabs
  10:10  warning  '$' is not defined                                               no-undef
  11:23  warning  'BS' is not defined                                              no-undef
  12:3   warning  Combine this with the previous 'var' statement                   one-var
  12:3   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  25:23  warning  'BS' is not defined                                              no-undef
  28:28  warning  'jqXHR' is defined but never used                                no-unused-vars
  32:24  warning  'BS' is not defined                                              no-undef
  38:5   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  38:5   warning  Combine this with the previous 'var' statement                   one-var

/src/repo/resources/bluespice.extjs/BS/action/APIDeletePage.js
   1:1   warning  'Ext' is not defined               no-undef
   8:13  warning  '$' is not defined                 no-undef
   9:23  warning  'BS' is not defined                no-undef
  24:23  warning  'BS' is not defined                no-undef
  27:28  warning  'jqXHR' is defined but never used  no-unused-vars
  29:24  warning  'BS' is not defined                no-undef
  34:23  warning  'BS' is not defined                no-undef

/src/repo/resources/bluespice.extjs/BS/action/APIEditPage.js
   1:1   warning  'Ext' is not defined                                             no-undef
   9:13  warning  '$' is not defined                                               no-undef
  10:23  warning  'BS' is not defined                                              no-undef
  12:3   warning  Combine this with the previous 'var' statement                   one-var
  12:3   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  26:3   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  26:3   warning  Combine this with the previous 'var' statement                   one-var
  34:23  warning  'BS' is not defined                                              no-undef
  37:28  warning  'jqXHR' is defined but never used                                no-unused-vars
  39:24  warning  'BS' is not defined                                              no-undef
  45:24  warning  'BS' is not defined                                              no-undef
  50:23  warning  'BS' is not defined                                              no-undef

/src/repo/resources/bluespice.extjs/BS/action/APIMovePage.js
   1:1   warning  'Ext' is not defined                                               no-undef
  11:10  warning  '$' is not defined                                                 no-undef
  12:23  warning  'BS' is not defined                                                no-undef
  13:3   warning  Combine this with the previous 'var' statement                     one-var
  13:3   warning  All 'var' declarations must be at the top of the function scope    vars-on-top
  27:22  warning  'move' is already declared in the upper scope on line 13 column 7  no-shadow
  28:23  warning  'BS' is not defined                                                no-undef
  31:28  warning  'jqXHR' is defined but never used                                  no-unused-vars
  33:24  warning  'BS' is not defined                                                no-undef
  38:23  warning  'BS' is not defined                                                no-undef

/src/repo/resources/bluespice.extjs/BS/action/APIRemoveCategories.js
  1:1  warning  'Ext' is not defined  no-undef

/src/repo/resources/bluespice.extjs/BS/action/APISetCategories.js
  1:1  warning  'Ext' is not defined  no-undef

/src/repo/resources/bluespice.extjs/BS/action/Base.js
   1:1   warning  'Ext' is not defined                                                               no-undef
  12:2   warning  JSDoc @return declaration present but return expression not available in function  jsdoc/require-returns-check
  12:2   warning  Missing JSDoc return type                                                          valid-jsdoc
  14:0   warning  Missing JSDoc @return type                                                         jsdoc/require-returns-type
  21:10  warning  'Ext' is not defined                                                               no-undef
  41:2   warning  Mixed spaces and tabs                                                              no-mixed-spaces-and-tabs
  42:19  warning  'BS' is not defined                                                                no-undef
  44:26  warning  'BS' is not defined                                                                no-undef
  46:26  warning  'BS' is not defined                                                                no-undef
  48:26  warning  'BS' is not defined                                                                no-undef

/src/repo/resources/bluespice.extjs/BS/dialog/BatchActions.js
   1:1   warning  'Ext' is not defined  no-undef
  12:30  warning  'BS' is not defined   no-undef

/src/repo/resources/bluespice.extjs/BS/dialog/PageExport.js
    1:1   warning  'Ext' is not defined                                                                no-undef
   18:17  warning  'Ext' is not defined                                                                no-undef
   23:19  warning  'Ext' is not defined                                                                no-undef
   43:23  warning  'Ext' is not defined                                                                no-undef
   72:3   warning  '$' is not defined                                                                  no-undef
   82:16  warning  'Ext' is not defined                                                                no-undef
   96:18  warning  'Ext' is not defined                                                                no-undef
  124:4   warning  'bs' is not defined                                                                 no-undef
  136:4   warning  'bs' is not defined                                                                 no-undef
  147:3   warning  Combine this with the previous 'var' statement                                      one-var
  147:3   warning  All 'var' declarations must be at the top of the function scope                     vars-on-top
  151:4   warning  'bs' is not defined                                                                 no-undef
  161:34  warning  'response' is defined but never used                                                no-unused-vars
  163:4   warning  All 'var' declarations must be at the top of the function scope                     vars-on-top
  163:15  warning  '$' is not defined                                                                  no-undef
  168:4   warning  'linkHtml' is not defined                                                           no-undef
  168:4   warning  Global variable leak, declare the variable if it is intended to be local            no-implicit-globals
  168:15  warning  '$' is not defined                                                                  no-undef
  170:4   warning  'bs' is not defined                                                                 no-undef
  176:7   warning  'linkHtml' is not defined                                                           no-undef
  185:14  warning  All possible message keys should be documented. See https://w.wiki/PRw for details  mediawiki/msg-doc
  194:10  warning  '$' is not defined                                                                  no-undef
  208:3   warning  Mixed spaces and tabs                                                               no-mixed-spaces-and-tabs
  213:5   warning  Combine this with the previous 'var' statement                                      one-var
  213:5   warning  All 'var' declarations must be at the top of the function scope                     vars-on-top
  217:34  warning  'response' is already declared in the upper scope on line 206 column 22             no-shadow
  228:10  warning  '$' is not defined                                                                  no-undef
  258:3   warning  '$' is not defined                                                                  no-undef
  273:3   warning  '$' is not defined                                                                  no-undef
  280:3   warning  All 'var' declarations must be at the top of the function scope                     vars-on-top
  280:3   warning  Combine this with the previous 'var' statement                                      one-var

/src/repo/resources/bluespice.extjs/BS/dialog/Upload.js
   1:1   warning  'Ext' is not defined  no-undef
  16:21  warning  'BS' is not defined   no-undef
  16:38  warning  '$' is not defined    no-undef

/src/repo/resources/bluespice.extjs/BS/dialog/UploadWarnings.js
    1:1   warning  'Ext' is not defined                                             no-undef
   52:9   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
   53:4   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
   53:4   warning  Combine this with the previous 'var' statement                   one-var
   75:23  warning  'Ext' is not defined                                             no-undef
   95:2   warning  Mixed spaces and tabs                                            no-mixed-spaces-and-tabs
   96:2   warning  Mixed spaces and tabs                                            no-mixed-spaces-and-tabs
  105:2   warning  Mixed spaces and tabs                                            no-mixed-spaces-and-tabs
  108:21  warning  '$' is not defined                                               no-undef
  109:10  warning  Combine this with the previous 'var' statement                   one-var
  109:10  warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  113:5   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  113:5   warning  Combine this with the previous 'var' statement                   one-var
  113:17  warning  '$' is not defined                                               no-undef
  116:5   warning  Combine this with the previous 'var' statement                   one-var
  116:5   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  117:4   warning  Mixed spaces and tabs                                            no-mixed-spaces-and-tabs
  118:4   warning  Mixed spaces and tabs                                            no-mixed-spaces-and-tabs

/src/repo/resources/bluespice.extjs/BS/flyout/TabbedDataViewBase.js
    1:1   warning  'Ext' is not defined                                             no-undef
   19:10  warning  '$' is not defined                                               no-undef
   29:23  warning  'parentNode' is defined but never used                           no-unused-vars
   29:35  warning  'containerIdx' is defined but never used                         no-unused-vars
   31:3   warning  '$' is not defined                                               no-undef
   31:55  warning  '$' is not defined                                               no-undef
   34:4   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
   34:20  warning  '$' is not defined                                               no-undef
   41:3   warning  '$' is not defined                                               no-undef
   41:54  warning  '$' is not defined                                               no-undef
   45:9   warning  '$' is not defined                                               no-undef
   70:14  warning  'Ext' is not defined                                             no-undef
   75:17  warning  'Ext' is not defined                                             no-undef
   81:9   warning  'Ext' is not defined                                             no-undef
   95:14  warning  'Ext' is not defined                                             no-undef
  167:2   warning  Missing JSDoc return description                                 valid-jsdoc
  170:5   warning  Missing JSDoc parameter description for 'values'                 valid-jsdoc
  185:3   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  185:3   warning  Combine this with the previous 'var' statement                   one-var
  185:58  warning  '$' is not defined                                               no-undef
  197:47  warning  'values' is defined but never used                               no-unused-vars
  213:34  warning  'values' is defined but never used                               no-unused-vars
  217:40  warning  'values' is defined but never used                               no-unused-vars
  235:2   warning  Unexpected tab character                                         no-tabs
  236:2   warning  Unexpected tab character                                         no-tabs
  237:2   warning  Unexpected tab character                                         no-tabs
  238:2   warning  Unexpected tab character                                         no-tabs
  239:2   warning  Unexpected tab character                                         no-tabs
  264:25  warning  'Ext' is not defined                                             no-undef
  272:22  warning  'Ext' is not defined                                             no-undef
  283:26  warning  'Ext' is not defined                                             no-undef
  291:14  warning  'Ext' is not defined                                             no-undef
  331:4   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  331:4   warning  Combine this with the previous 'var' statement                   one-var
  331:17  warning  '$' is not defined                                               no-undef
  332:30  warning  '$' is not defined                                               no-undef
  337:2   warning  Missing JSDoc return description                                 valid-jsdoc
  341:4   warning  Unexpected tab character                                         no-tabs
  342:4   warning  Unexpected tab character                                         no-tabs
  343:4   warning  Unexpected tab character                                         no-tabs
  344:4   warning  Unexpected tab character                                         no-tabs
  345:4   warning  Unexpected tab character                                         no-tabs
  346:4   warning  Unexpected tab character                                         no-tabs
  347:4   warning  Unexpected tab character                                         no-tabs
  348:4   warning  Unexpected tab character                                         no-tabs
  350:5   warning  Missing JSDoc parameter description for 'record'                 valid-jsdoc
  351:0   warning  The type 'Ext' is undefined                                      jsdoc/no-undefined-types
  353:28  warning  'record' is defined but never used                               no-unused-vars
  357:2   warning  Missing JSDoc return type                                        valid-jsdoc
  360:0   warning  Missing JSDoc @return type                                       jsdoc/require-returns-type
  363:14  warning  'BS' is not defined                                              no-undef
  370:0   warning  The type 'Ext' is undefined                                      jsdoc/no-undefined-types

/src/repo/resources/bluespice.extjs/BS/flyout/TwoColumnsBase.js
    1:1  warning  'Ext' is not defined                                   no-undef
  104:2  warning  Missing JSDoc return description                       valid-jsdoc
  137:1  warning  This line has a length of 111. Maximum allowed is 100  max-len
  138:1  warning  This line has a length of 133. Maximum allowed is 100  max-len
  139:1  warning  This line has a length of 144. Maximum allowed is 100  max-len
  156:2  warning  Missing JSDoc return description                       valid-jsdoc

/src/repo/resources/bluespice.extjs/BS/form/CategoryBoxSelect.js
  1:1  warning  'Ext' is not defined  no-undef

/src/repo/resources/bluespice.extjs/BS/form/CategoryCombo.js
   1:1   warning  'Ext' is not defined  no-undef
  18:15  warning  'Ext' is not defined  no-undef
  21:10  warning  'bs' is not defined   no-undef

/src/repo/resources/bluespice.extjs/BS/form/CategoryTree.js
    1:1   warning  Global variable leak, declare the variable if it is intended to be local  no-implicit-globals
    1:1   warning  'BsCategoryChooser' is not defined                                        no-undef
    1:21  warning  'Ext' is not defined                                                      no-undef
    1:33  warning  'Ext' is not defined                                                      no-undef
    7:3   warning  'BsCategoryChooser' is not defined                                        no-undef
    9:36  warning  'Ext' is not defined                                                      no-undef
   18:3   warning  'BsCategoryChooser' is not defined                                        no-undef
   20:3   warning  All 'var' declarations must be at the top of the function scope           vars-on-top
   20:26  warning  'Ext' is not defined                                                      no-undef
   30:35  warning  'Ext' is not defined                                                      no-undef
   44:13  warning  'stylepath' is not defined                                                no-undef
   57:38  warning  'Ext' is not defined                                                      no-undef
   65:13  warning  'BsCore' is not defined                                                   no-undef
   78:28  warning  'Ext' is not defined                                                      no-undef
   82:21  warning  'BsCategoryChooserI18N' is not defined                                    no-undef
   87:30  warning  'Ext' is not defined                                                      no-undef
   90:21  warning  'BsCategoryChooserI18N' is not defined                                    no-undef
   95:29  warning  'Ext' is not defined                                                      no-undef
   98:10  warning  'BsCategoryChooserI18N' is not defined                                    no-undef
  102:28  warning  'Ext' is not defined                                                      no-undef
  108:31  warning  'Ext' is not defined                                                      no-undef
  118:9   warning  'Ext' is not defined                                                      no-undef
  119:12  warning  'BsCategoryChooserI18N' is not defined                                    no-undef
  127:19  warning  'Ext' is not defined                                                      no-undef
  146:36  warning  'btn' is defined but never used                                           no-unused-vars
  146:41  warning  'event' is defined but never used                                         no-unused-vars
  151:3   warning  Combine this with the previous 'var' statement                            one-var
  151:3   warning  All 'var' declarations must be at the top of the function scope           vars-on-top
  157:3   warning  Combine this with the previous 'var' statement                            one-var
  157:3   warning  All 'var' declarations must be at the top of the function scope           vars-on-top
  158:2   warning  Mixed spaces and tabs                                                     no-mixed-spaces-and-tabs
  161:47  warning  A constructor name should not start with a lowercase letter               new-cap
  166:49  warning  'noIdeaWhatThisParamIs' is defined but never used                         no-unused-vars
  166:72  warning  'btn' is defined but never used                                           no-unused-vars
  166:77  warning  'event' is defined but never used                                         no-unused-vars
  170:32  warning  'event' is defined but never used                                         no-unused-vars
  178:3   warning  Combine this with the previous 'var' statement                            one-var
  178:3   warning  All 'var' declarations must be at the top of the function scope           vars-on-top
  182:47  warning  A constructor name should not start with a lowercase letter               new-cap
  187:23  warning  'valueField' is defined but never used                                    no-unused-vars
  202:26  warning  'valueField' is defined but never used                                    no-unused-vars
  206:3   warning  'setValue' is not defined                                                 no-undef
  209:28  warning  'value' is defined but never used                                         no-unused-vars

/src/repo/resources/bluespice.extjs/BS/form/NamespaceCombo.js
   1:1   warning  'Ext' is not defined                                             no-undef
  17:16  warning  'bs' is not defined                                              no-undef
  29:8   warning  'Ext' is not defined                                             no-undef
  30:4   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  31:3   warning  Mixed spaces and tabs                                            no-mixed-spaces-and-tabs

/src/repo/resources/bluespice.extjs/BS/form/SimpleSelectBox.js
   1:1   warning  'Ext' is not defined  no-undef
  14:16  warning  'Ext' is not defined  no-undef

/src/repo/resources/bluespice.extjs/BS/form/UploadPanel.js
   1:1   warning  'Ext' is not defined                                             no-undef
  10:17  warning  'Ext' is not defined                                             no-undef
  21:19  warning  'Ext' is not defined                                             no-undef
  28:20  warning  'Ext' is not defined                                             no-undef
  37:4   warning  'Ext' is not defined                                             no-undef
  45:4   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  76:30  warning  'btn' is defined but never used                                  no-unused-vars
  76:35  warning  'e' is defined but never used                                    no-unused-vars
  79:31  warning  'btn' is defined but never used                                  no-unused-vars
  79:36  warning  'e' is defined but never used                                    no-unused-vars

/src/repo/resources/bluespice.extjs/BS/form/UserCombo.js
   1:1   warning  'Ext' is not defined                                             no-undef
  25:17  warning  'Ext' is not defined                                             no-undef
  58:26  warning  'store' is defined but never used                                no-unused-vars
  58:33  warning  'records' is defined but never used                              no-unused-vars
  58:42  warning  'successful' is defined but never used                           no-unused-vars
  58:54  warning  'eOpts' is defined but never used                                no-unused-vars
  67:31  warning  Identifier 'user_id' is not in camel case                        camelcase
  73:3   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  74:2   warning  Mixed spaces and tabs                                            no-mixed-spaces-and-tabs
  78:33  warning  Identifier 'user_name' is not in camel case                      camelcase
  83:3   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  84:2   warning  Mixed spaces and tabs                                            no-mixed-spaces-and-tabs
  95:7   warning  Identifier 'user_id' is not in camel case                        camelcase

/src/repo/resources/bluespice.extjs/BS/form/action/MediaWikiApiCall.js
  1:1  warning  'Ext' is not defined  no-undef

/src/repo/resources/bluespice.extjs/BS/form/field/CategoryTag.js
    1:1   warning  'Ext' is not defined                                             no-undef
   23:4   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
   24:28  warning  'Ext' is not defined                                             no-undef
   25:10  warning  'Ext' is not defined                                             no-undef
   33:16  warning  'Ext' is not defined                                             no-undef
   36:10  warning  'bs' is not defined                                              no-undef
   54:26  warning  'store' is defined but never used                                no-unused-vars
   54:33  warning  'records' is defined but never used                              no-unused-vars
   54:42  warning  'successful' is defined but never used                           no-unused-vars
   54:54  warning  'eOpts' is defined but never used                                no-unused-vars
   56:5   warning  Unexpected tab character                                         no-tabs
   57:5   warning  Unexpected tab character                                         no-tabs
   58:5   warning  Unexpected tab character                                         no-tabs
   59:5   warning  Unexpected tab character                                         no-tabs
   60:5   warning  Unexpected tab character                                         no-tabs
   61:5   warning  Unexpected tab character                                         no-tabs
   63:23  warning  'value' is defined but never used                                no-unused-vars
   66:23  warning  'value' is defined but never used                                no-unused-vars
   67:5   warning  Unexpected tab character                                         no-tabs
   68:5   warning  Unexpected tab character                                         no-tabs
   69:5   warning  Unexpected tab character                                         no-tabs
   70:5   warning  Unexpected tab character                                         no-tabs
   95:30  warning  'event' is defined but never used                                no-unused-vars
   97:3   warning  'Ext' is not defined                                             no-undef
  103:4   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  103:27  warning  'BS' is not defined                                              no-undef
  106:22  warning  'Ext' is not defined                                             no-undef
  126:44  warning  'item' is defined but never used                                 no-unused-vars
  126:50  warning  'index' is defined but never used                                no-unused-vars
  126:57  warning  'e' is defined but never used                                    no-unused-vars
  126:60  warning  'eOpts' is defined but never used                                no-unused-vars
  142:2   warning  Missing JSDoc @returns for function                              valid-jsdoc
  143:1   warning  This line has a length of 111. Maximum allowed is 100            max-len
  144:1   warning  This line has a length of 113. Maximum allowed is 100            max-len

/src/repo/resources/bluespice.extjs/BS/form/field/GroupCombo.js
   1:1   warning  'Ext' is not defined  no-undef
  19:14  warning  'BS' is not defined   no-undef

/src/repo/resources/bluespice.extjs/BS/form/field/GroupTag.js
   1:1   warning  'Ext' is not defined  no-undef
  13:14  warning  'BS' is not defined   no-undef

/src/repo/resources/bluespice.extjs/BS/form/field/ItemList.js
    1:1   warning  'Ext' is not defined                                             no-undef
   42:32  warning  'Ext' is not defined                                             no-undef
   45:31  warning  'bs' is not defined                                              no-undef
   50:16  warning  'Ext' is not defined                                             no-undef
   63:16  warning  'BS' is not defined                                              no-undef
   73:23  warning  'Ext' is not defined                                             no-undef
   79:1   warning  This line has a length of 124. Maximum allowed is 100            max-len
   84:15  warning  'Ext' is not defined                                             no-undef
   85:5   warning  'Ext' is not defined                                             no-undef
  120:14  warning  'Ext' is not defined                                             no-undef
  120:18  warning  A constructor name should not start with a lowercase letter      new-cap
  133:49  warning  'eOpts' is defined but never used                                no-unused-vars
  140:29  warning  'id' is defined but never used                                   no-unused-vars
  158:72  warning  'eOpts' is defined but never used                                no-unused-vars
  160:4   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  165:44  warning  'colIndex' is defined but never used                             no-unused-vars
  165:54  warning  'item' is defined but never used                                 no-unused-vars
  165:60  warning  'e' is defined but never used                                    no-unused-vars
  165:63  warning  'record' is defined but never used                               no-unused-vars
  165:71  warning  'row' is defined but never used                                  no-unused-vars
  173:9   warning  Combine this with the previous 'var' statement                   one-var
  173:9   warning  All 'var' declarations must be at the top of the function scope  vars-on-top

/src/repo/resources/bluespice.extjs/BS/form/field/NamespaceTag.js
   1:1   warning  'Ext' is not defined  no-undef
  19:16  warning  'bs' is not defined   no-undef

/src/repo/resources/bluespice.extjs/BS/form/field/TitleCombo.js
    1:1   warning  'Ext' is not defined                                                       no-undef
   61:36  warning  'rowIndex' is defined but never used                                       no-unused-vars
   61:46  warning  'rowParams' is defined but never used                                      no-unused-vars
   61:57  warning  'store' is defined but never used                                          no-unused-vars
   82:30  warning  Do not access Object.prototype method 'hasOwnProperty' from target object  no-prototype-builtins
  103:17  warning  'bs' is not defined                                                        no-undef
  105:3   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
  105:3   warning  Combine this with the previous 'var' statement                             one-var
  109:16  warning  'BS' is not defined                                                        no-undef
  113:16  warning  'Ext' is not defined                                                       no-undef
  122:38  warning  'store' is already declared in the upper scope on line 109 column 4        no-shadow
  122:56  warning  'eOpts' is defined but never used                                          no-unused-vars
  133:27  warning  'BS' is not defined                                                        no-undef
  147:8   warning  'Ext' is not defined                                                       no-undef
  151:3   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
  151:3   warning  Combine this with the previous 'var' statement                             one-var
  152:25  warning  'BS' is not defined                                                        no-undef
  156:16  warning  'Ext' is not defined                                                       no-undef
  159:3   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
  159:3   warning  Combine this with the previous 'var' statement                             one-var

/src/repo/resources/bluespice.extjs/BS/form/field/UserTag.js
  1:1   warning  'Ext' is not defined  no-undef
  7:20  warning  'BS' is not defined   no-undef

/src/repo/resources/bluespice.extjs/BS/grid/FileRepo.js
    1:1   warning  'Ext' is not defined                                             no-undef
   14:20  warning  'BS' is not defined                                              no-undef
   35:3   warning  '$' is not defined                                               no-undef
   36:3   warning  '$' is not defined                                               no-undef
   42:10  warning  'Ext' is not defined                                             no-undef
   69:4   warning  Combine this with the previous 'var' statement                   one-var
   69:4   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
   95:29  warning  'sender' is defined but never used                               no-unused-vars
   95:37  warning  'event' is defined but never used                                no-unused-vars
   99:31  warning  'sender' is defined but never used                               no-unused-vars
   99:39  warning  'event' is defined but never used                                no-unused-vars
  103:31  warning  'sender' is defined but never used                               no-unused-vars
  103:39  warning  'event' is defined but never used                                no-unused-vars
  111:23  warning  'Ext' is not defined                                             no-undef
  120:28  warning  'Ext' is not defined                                             no-undef
  131:23  warning  'Ext' is not defined                                             no-undef
  141:24  warning  'Ext' is not defined                                             no-undef
  151:26  warning  'Ext' is not defined                                             no-undef
  161:26  warning  'Ext' is not defined                                             no-undef
  171:27  warning  'Ext' is not defined                                             no-undef
  180:27  warning  'Ext' is not defined                                             no-undef
  191:27  warning  'Ext' is not defined                                             no-undef
  201:29  warning  'Ext' is not defined                                             no-undef
  210:22  warning  'Ext' is not defined                                             no-undef
  221:22  warning  'Ext' is not defined                                             no-undef
  271:23  warning  'MWExt' is not defined                                           no-undef
  278:31  warning  'newValue' is defined but never used                             no-unused-vars
  278:41  warning  'oldValue' is defined but never used                             no-unused-vars
  278:51  warning  'eOpts' is defined but never used                                no-unused-vars
  285:3   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  295:20  warning  'Ext' is not defined                                             no-undef
  306:25  warning  'Ext' is not defined                                             no-undef
  313:15  warning  'Ext' is not defined                                             no-undef
  333:8   warning  'Ext' is not defined                                             no-undef
  345:24  warning  'Ext' is not defined                                             no-undef
  352:24  warning  'BS' is not defined                                              no-undef

/src/repo/resources/bluespice.extjs/BS/model/Category.js
   1:1  warning  'Ext' is not defined      no-undef
   6:5  warning  Unexpected tab character  no-tabs
   7:5  warning  Unexpected tab character  no-tabs
   8:5  warning  Unexpected tab character  no-tabs
   9:5  warning  Unexpected tab character  no-tabs
  10:5  warning  Unexpected tab character  no-tabs

/src/repo/resources/bluespice.extjs/BS/model/File.js
   6:1   warning  'Ext' is not defined                                             no-undef
  41:3   warning  Mixed spaces and tabs                                            no-mixed-spaces-and-tabs
  42:10  warning  Combine this with the previous 'var' statement                   one-var
  42:10  warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  43:5   warning  Combine this with the previous 'var' statement                   one-var
  43:5   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  44:38  warning  'bs' is not defined                                              no-undef
  85:62  warning  'bs' is not defined                                              no-undef

/src/repo/resources/bluespice.extjs/BS/model/Namespace.js
   1:1  warning  'Ext' is not defined        no-undef
  34:2  warning  Missing JSDoc return type   valid-jsdoc
  37:0  warning  Missing JSDoc @return type  jsdoc/require-returns-type

/src/repo/resources/bluespice.extjs/BS/model/Title.js
   6:1   warning  'Ext' is not defined   no-undef
  27:2   warning  Mixed spaces and tabs  no-mixed-spaces-and-tabs
  50:10  warning  'bs' is not defined    no-undef

/src/repo/resources/bluespice.extjs/BS/model/User.js
  1:1  warning  'Ext' is not defined  no-undef

/src/repo/resources/bluespice.extjs/BS/override/grid/column/Action.js
   4:1    warning  'Ext' is not defined                                   no-undef
   9:13   warning  'Ext' is not defined                                   no-undef
  16:1    warning  This line has a length of 117. Maximum allowed is 100  max-len
  17:1    warning  This line has a length of 115. Maximum allowed is 100  max-len
  19:9    warning  'Ext' is not defined                                   no-undef
  21:29   warning  'Ext' is not defined                                   no-undef
  25:1    warning  This line has a length of 150. Maximum allowed is 100  max-len
  26:1    warning  This line has a length of 137. Maximum allowed is 100  max-len
  27:9    warning  'Ext' is not defined                                   no-undef
  37:20   warning  'Ext' is not defined                                   no-undef
  38:19   warning  'Ext' is not defined                                   no-undef
  47:24   warning  Unexpected dangling '_' in '_glyphFontFamily'          no-underscore-dangle
  47:24   warning  'Ext' is not defined                                   no-undef
  57:14   warning  'Ext' is not defined                                   no-undef
  61:101  warning  'Ext' is not defined                                   no-undef
  63:8    warning  'Ext' is not defined                                   no-undef

/src/repo/resources/bluespice.extjs/BS/panel/BatchActions.js
    1:1   warning  'Ext' is not defined                                             no-undef
    5:24  warning  'Ext' is not defined                                             no-undef
    9:24  warning  'Ext' is not defined                                             no-undef
   29:9   warning  'Ext' is not defined                                             no-undef
   30:22  warning  'Ext' is not defined                                             no-undef
   36:15  warning  'Ext' is not defined                                             no-undef
   41:24  warning  'Ext' is not defined                                             no-undef
   64:3   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
   65:9   warning  Combine this with the previous 'var' statement                   one-var
   65:9   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
   93:3   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  115:3   warning  All 'var' declarations must be at the top of the function scope  vars-on-top

/src/repo/resources/bluespice.extjs/BS/panel/Upload.js
    1:1    warning  'Ext' is not defined                                             no-undef
   23:21   warning  'Ext' is not defined                                             no-undef
   37:25   warning  'Ext' is not defined                                             no-undef
   41:27   warning  Unnecessary escape character: \/                                 no-useless-escape
   41:29   warning  Unnecessary escape character: \?                                 no-useless-escape
   41:31   warning  Unnecessary escape character: \*                                 no-useless-escape
   41:33   warning  Unnecessary escape character: \"                                 no-useless-escape
   41:35   warning  Unnecessary escape character: \#                                 no-useless-escape
   41:37   warning  Unnecessary escape character: \<                                 no-useless-escape
   41:39   warning  Unnecessary escape character: \>                                 no-useless-escape
   41:41   warning  Unnecessary escape character: \|                                 no-useless-escape
   41:43   warning  Unnecessary escape character: \ö                                 no-useless-escape
   41:45   warning  Unnecessary escape character: \ä                                 no-useless-escape
   41:47   warning  Unnecessary escape character: \ü                                 no-useless-escape
   41:49   warning  Unnecessary escape character: \Ö                                 no-useless-escape
   41:51   warning  Unnecessary escape character: \Ä                                 no-useless-escape
   41:53   warning  Unnecessary escape character: \Ü                                 no-useless-escape
   41:55   warning  Unnecessary escape character: \á                                 no-useless-escape
   41:57   warning  Unnecessary escape character: \à                                 no-useless-escape
   41:59   warning  Unnecessary escape character: \â                                 no-useless-escape
   41:61   warning  Unnecessary escape character: \é                                 no-useless-escape
   41:63   warning  Unnecessary escape character: \è                                 no-useless-escape
   41:65   warning  Unnecessary escape character: \ê                                 no-useless-escape
   41:67   warning  Unnecessary escape character: \ú                                 no-useless-escape
   41:69   warning  Unnecessary escape character: \ù                                 no-useless-escape
   41:71   warning  Unnecessary escape character: \û                                 no-useless-escape
   41:73   warning  Unnecessary escape character: \ó                                 no-useless-escape
   41:75   warning  Unnecessary escape character: \ò                                 no-useless-escape
   41:77   warning  Unnecessary escape character: \ô                                 no-useless-escape
   41:79   warning  Unnecessary escape character: \Á                                 no-useless-escape
   41:81   warning  Unnecessary escape character: \À                                 no-useless-escape
   41:83   warning  Unnecessary escape character: \Â                                 no-useless-escape
   41:85   warning  Unnecessary escape character: \É                                 no-useless-escape
   41:87   warning  Unnecessary escape character: \È                                 no-useless-escape
   41:89   warning  Unnecessary escape character: \Ê                                 no-useless-escape
   41:91   warning  Unnecessary escape character: \Ú                                 no-useless-escape
   41:93   warning  Unnecessary escape character: \Ù                                 no-useless-escape
   41:95   warning  Unnecessary escape character: \Û                                 no-useless-escape
   41:97   warning  Unnecessary escape character: \Ó                                 no-useless-escape
   41:99   warning  Unnecessary escape character: \Ò                                 no-useless-escape
   41:101  warning  Unnecessary escape character: \Ô                                 no-useless-escape
   41:103  warning  Unnecessary escape character: \ß                                 no-useless-escape
   47:28   warning  'Ext' is not defined                                             no-undef
   54:28   warning  'BS' is not defined                                              no-undef
   60:25   warning  'Ext' is not defined                                             no-undef
   66:13   warning  'Ext' is not defined                                             no-undef
   68:4    warning  Mixed spaces and tabs                                            no-mixed-spaces-and-tabs
   69:4    warning  Mixed spaces and tabs                                            no-mixed-spaces-and-tabs
   70:4    warning  Mixed spaces and tabs                                            no-mixed-spaces-and-tabs
   71:4    warning  Mixed spaces and tabs                                            no-mixed-spaces-and-tabs
   72:4    warning  Mixed spaces and tabs                                            no-mixed-spaces-and-tabs
   73:4    warning  Mixed spaces and tabs                                            no-mixed-spaces-and-tabs
   74:4    warning  Mixed spaces and tabs                                            no-mixed-spaces-and-tabs
   75:4    warning  Mixed spaces and tabs                                            no-mixed-spaces-and-tabs
   88:23   warning  'Ext' is not defined                                             no-undef
   95:26   warning  'Ext' is not defined                                             no-undef
  102:27   warning  'BS' is not defined                                              no-undef
  110:24   warning  'Ext' is not defined                                             no-undef
  127:3    warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  135:3    warning  '$' is not defined                                               no-undef
  144:41   warning  'eOpts' is defined but never used                                no-unused-vars
  146:36   warning  Unnecessary escape character: \/                                 no-useless-escape
  151:4    warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  170:27   warning  Unexpected control character(s) in regular expression: \x00      no-control-regex
  181:49   warning  'oldValue' is defined but never used                             no-unused-vars
  181:59   warning  'eOpts' is defined but never used                                no-unused-vars
  185:3    warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  199:1    warning  This line has a length of 102. Maximum allowed is 100            max-len
  200:4    warning  'bs' is not defined                                              no-undef
  218:28   warning  'ExtCmpId' is defined but never used                             no-unused-vars
  224:3    warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  229:3    warning  Combine this with the previous 'var' statement                   one-var
  229:3    warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  261:6    warning  Unnecessary '.apply()'                                           no-useless-call
  270:4    warning  'Ext' is not defined                                             no-undef
  290:3    warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  290:3    warning  Combine this with the previous 'var' statement                   one-var
  313:3    warning  'bs' is not defined                                              no-undef
  331:3    warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  336:9    warning  Combine this with the previous 'var' statement                   one-var
  336:9    warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  357:3    warning  Combine this with the previous 'var' statement                   one-var
  357:3    warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  362:3    warning  Combine this with the previous 'var' statement                   one-var
  362:3    warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  364:3    warning  Combine this with the previous 'var' statement                   one-var
  364:3    warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  365:9    warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  365:9    warning  Combine this with the previous 'var' statement                   one-var
  366:4    warning  Combine this with the previous 'var' statement                   one-var
  366:4    warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  366:27   warning  'bs' is not defined                                              no-undef
  368:34   warning  'bs' is not defined                                              no-undef
  387:3    warning  'bs' is not defined                                              no-undef
  401:21   warning  'BS' is not defined                                              no-undef
  406:32   warning  'sender' is defined but never used                               no-unused-vars
  406:40   warning  'response' is defined but never used                             no-unused-vars

/src/repo/resources/bluespice.extjs/BS/portal/APIPortlet.js
   1:1   warning  'Ext' is not defined                 no-undef
  11:19  warning  'Ext' is not defined                 no-undef
  15:44  warning  'active' is defined but never used   no-unused-vars
  16:24  warning  'Ext' is not defined                 no-undef
  32:29  warning  'oConfig' is defined but never used  no-unused-vars
  38:3   warning  'bs' is not defined                  no-undef

/src/repo/resources/bluespice.extjs/BS/portal/ChartPortlet.js
   1:1   warning  'Ext' is not defined                                   no-undef
  10:21  warning  'Ext' is not defined                                   no-undef
  40:11  warning  'Ext' is not defined                                   no-undef
  47:1   warning  This line has a length of 144. Maximum allowed is 100  max-len
  48:1   warning  This line has a length of 141. Maximum allowed is 100  max-len
  94:5   warning  Mixed spaces and tabs                                  no-mixed-spaces-and-tabs

/src/repo/resources/bluespice.extjs/BS/portal/GridPortlet.js
   1:1   warning  'Ext' is not defined  no-undef
   9:11  warning  'Ext' is not defined  no-undef
  41:17  warning  'Ext' is not defined  no-undef

/src/repo/resources/bluespice.extjs/BS/portal/HTMLPortlet.js
   1:1   warning  'Ext' is not defined  no-undef
  10:19  warning  'Ext' is not defined  no-undef

/src/repo/resources/bluespice.extjs/BS/portal/PortalColumn.js
  6:1  warning  'Ext' is not defined  no-undef

/src/repo/resources/bluespice.extjs/BS/portal/PortalDropZone.js
    6:1  warning  'Ext' is not defined                                             no-undef
   11:3  warning  'Ext' is not defined                                             no-undef
   12:3  warning  'BS' is not defined                                              no-undef
   48:3  warning  All 'var' declarations must be at the top of the function scope  vars-on-top
   48:3  warning  Combine this with the previous 'var' statement                   one-var
   60:3  warning  Combine this with the previous 'var' statement                   one-var
   60:3  warning  All 'var' declarations must be at the top of the function scope  vars-on-top
   79:3  warning  Combine this with the previous 'var' statement                   one-var
   79:3  warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  100:3  warning  Combine this with the previous 'var' statement                   one-var
  100:3  warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  107:1  warning  This line has a length of 108. Maximum allowed is 100            max-len
  136:3  warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  140:1  warning  This line has a length of 106. Maximum allowed is 100            max-len
  145:4  warning  'Ext' is not defined                                             no-undef
  158:4  warning  'Ext' is not defined                                             no-undef
  163:4  warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  163:4  warning  Combine this with the previous 'var' statement                   one-var
  165:5  warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  165:5  warning  Combine this with the previous 'var' statement                   one-var
  192:3  warning  'Ext' is not defined                                             no-undef
  193:3  warning  'BS' is not defined                                              no-undef

/src/repo/resources/bluespice.extjs/BS/portal/PortalPanel.js
   6:1   warning  'Ext' is not defined                     no-undef
  26:7   warning  'me' is assigned a value but never used  no-unused-vars
  69:13  warning  'Ext' is not defined                     no-undef

/src/repo/resources/bluespice.extjs/BS/portal/Portlet.js
   6:1   warning  'Ext' is not defined                                   no-undef
  27:21  warning  'Ext' is not defined                                   no-undef
  32:1   warning  This line has a length of 116. Maximum allowed is 100  max-len
  48:32  warning  'tool' is defined but never used                       no-unused-vars
  48:38  warning  'event' is defined but never used                      no-unused-vars
  48:45  warning  'eventOpts' is defined but never used                  no-unused-vars
  50:20  warning  'Ext' is not defined                                   no-undef

/src/repo/resources/bluespice.extjs/BS/portal/PortletConfig.js
   1:1   warning  'Ext' is not defined  no-undef
  14:18  warning  'Ext' is not defined  no-undef
  18:19  warning  'Ext' is not defined  no-undef
  23:18  warning  'Ext' is not defined  no-undef
  28:18  warning  'Ext' is not defined  no-undef
  36:21  warning  'Ext' is not defined  no-undef

/src/repo/resources/bluespice.extjs/BS/store/ApiCategory.js
  1:1  warning  'Ext' is not defined  no-undef

/src/repo/resources/bluespice.extjs/BS/store/ApiGroup.js
  1:1  warning  'Ext' is not defined  no-undef

/src/repo/resources/bluespice.extjs/BS/store/ApiRecentChanges.js
  1:1  warning  'Ext' is not defined  no-undef

/src/repo/resources/bluespice.extjs/BS/store/ApiUser.js
  1:1  warning  'Ext' is not defined  no-undef

/src/repo/resources/bluespice.extjs/BS/store/BSApi.js
   1:1   warning  'Ext' is not defined                                                               no-undef
   6:9   warning  'Ext' is not defined                                                               no-undef
  12:31  warning  'bs' is not defined                                                                no-undef
  31:2   warning  JSDoc @return declaration present but return expression not available in function  jsdoc/require-returns-check
  31:2   warning  Missing JSDoc return type                                                          valid-jsdoc
  35:0   warning  The type 'BS' is undefined                                                         jsdoc/no-undefined-types
  35:5   warning  Missing JSDoc parameter description for 'sender'                                   valid-jsdoc
  36:5   warning  Missing JSDoc parameter description for 'records'                                  valid-jsdoc
  36:0   warning  The type 'Ext' is undefined                                                        jsdoc/no-undefined-types
  37:5   warning  Missing JSDoc parameter description for 'successful'                               valid-jsdoc
  38:5   warning  Missing JSDoc parameter description for 'eOpts'                                    valid-jsdoc
  39:0   warning  Missing JSDoc @return type                                                         jsdoc/require-returns-type
  41:49  warning  'successful' is defined but never used                                             no-unused-vars
  41:61  warning  'eOpts' is defined but never used                                                  no-unused-vars
  53:1   warning  This line has a length of 108. Maximum allowed is 100                              max-len

/src/repo/resources/bluespice.extjs/BS/store/LocalNamespaces.js
   1:1  warning  'Ext' is not defined                                             no-undef
  27:3  warning  Combine this with the previous 'var' statement                   one-var
  27:3  warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  28:9  warning  Combine this with the previous 'var' statement                   one-var
  28:9  warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  32:4  warning  Combine this with the previous 'var' statement                   one-var
  32:4  warning  All 'var' declarations must be at the top of the function scope  vars-on-top

/src/repo/resources/bluespice.extjs/BS/tree/Categories.js
   1:1   warning  'Ext' is not defined  no-undef
   9:20  warning  'Ext' is not defined  no-undef
  12:10  warning  'bs' is not defined   no-undef

/src/repo/resources/bluespice.extjs/BS/tree/WikiSubPages.js
   1:1   warning  'Ext' is not defined  no-undef
  11:20  warning  'Ext' is not defined  no-undef

/src/repo/resources/bluespice.extjs/bluespice.extjs.js
   1:22  warning  '$' is defined but never used                                    no-unused-vars
   1:25  warning  'd' is defined but never used                                    no-unused-vars
   1:28  warning  'undefined' is defined but never used                            no-unused-vars
   1:28  warning  Shadowing of global property 'undefined'                         no-shadow-restricted-names
   4:2   warning  'Ext' is not defined                                             no-undef
   5:2   warning  'Ext' is not defined                                             no-undef
   9:2   warning  'Ext' is not defined                                             no-undef
  10:2   warning  Combine this with the previous 'var' statement                   one-var
  10:2   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  11:1   warning  Mixed spaces and tabs                                            no-mixed-spaces-and-tabs
  12:8   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  12:8   warning  Combine this with the previous 'var' statement                   one-var
  15:3   warning  'Ext' is not defined                                             no-undef
  16:3   warning  'Ext' is not defined                                             no-undef
  20:2   warning  'Ext' is not defined                                             no-undef
  23:2   warning  'Ext' is not defined                                             no-undef
  23:37  warning  'Ext' is not defined                                             no-undef
  25:2   warning  'Ext' is not defined                                             no-undef
  25:16  warning  'Ext' is not defined                                             no-undef
  27:4   warning  Unexpected dangling '_' in '_lastRequest'                        no-underscore-dangle
  28:11  warning  Unexpected dangling '_' in '_lastRequest'                        no-underscore-dangle
  32:11  warning  Unexpected dangling '_' in '_lastRequest'                        no-underscore-dangle
  38:2   warning  'Ext' is not defined                                             no-undef
  38:16  warning  'Ext' is not defined                                             no-undef
  46:2   warning  Unexpected dangling '_' in '_newLocalNamespacesStore'            no-underscore-dangle
  47:10  warning  'Ext' is not defined                                             no-undef
  50:2   warning  Combine this with the previous 'var' statement                   one-var
  50:2   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  55:4   warning  'mediaWiki' is not defined                                       no-undef
  55:15  warning  'blueSpice' is not defined                                       no-undef
  55:26  warning  'jQuery' is not defined                                          no-undef

/src/repo/resources/bluespice.extjs/bluespice.extjs.loadPlaceholder.js
   1:25  warning  'd' is defined but never used                                          no-unused-vars
   1:28  warning  Shadowing of global property 'undefined'                               no-shadow-restricted-names
   1:28  warning  'undefined' is defined but never used                                  no-unused-vars
  24:39  warning  'observer' is defined but never used                                   no-unused-vars
  24:39  warning  'observer' is already declared in the upper scope on line 4 column 31  no-shadow
  31:14  warning  MutationObserver is not supported in Safari 5.1, iOS Safari 6.0-6.1    compat/compat
  34:4   warning  'mediaWiki' is not defined                                             no-undef
  34:15  warning  'blueSpice' is not defined                                             no-undef
  34:26  warning  'jQuery' is not defined                                                no-undef

/src/repo/resources/bluespice.oojs/bluespice.ui.js
  1:1   warning  Global variable leak, declare the variable if it is intended to be local  no-implicit-globals
  1:1   warning  'bs' is not defined                                                       no-undef
  1:6   warning  'bs' is not defined                                                       no-undef
  2:1   warning  'bs' is not defined                                                       no-undef
  2:9   warning  'bs' is not defined                                                       no-undef
  3:1   warning  'bs' is not defined                                                       no-undef
  3:15  warning  'bs' is not defined                                                       no-undef
  4:1   warning  'bs' is not defined                                                       no-undef
  4:23  warning  'bs' is not defined                                                       no-undef
  5:1   warning  'bs' is not defined                                                       no-undef
  5:16  warning  'bs' is not defined                                                       no-undef
  6:1   warning  'bs' is not defined                                                       no-undef
  6:21  warning  'bs' is not defined                                                       no-undef

/src/repo/resources/bluespice.oojs/ui/widget/JsonArrayInputWidget.js
   1:22  warning  '$' is defined but never used         no-unused-vars
   1:25  warning  'document' is defined but never used  no-unused-vars
  43:4   warning  'mediaWiki' is not defined            no-undef
  43:15  warning  'blueSpice' is not defined            no-undef
  43:26  warning  'jQuery' is not defined               no-undef

/src/repo/resources/bluespice.oojs/ui/widget/KeyObjectInputWidget.js
   1:22  warning  '$' is defined but never used                                    no-unused-vars
   1:25  warning  'document' is defined but never used                             no-unused-vars
  13:9   warning  Combine this with the previous 'var' statement                   one-var
  13:9   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  14:4   warning  Combine this with the previous 'var' statement                   one-var
  14:4   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  26:86  warning  'cfg' is defined but never used                                  no-unused-vars
  60:4   warning  'mediaWiki' is not defined                                       no-undef
  60:15  warning  'blueSpice' is not defined                                       no-undef
  60:26  warning  'jQuery' is not defined                                          no-undef

/src/repo/resources/bluespice.oojs/ui/widget/KeyValueInputWidget.js
    1:25  warning  'document' is defined but never used                                       no-unused-vars
   47:9   warning  Combine this with the previous 'var' statement                             one-var
   47:9   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
   48:4   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
   48:4   warning  Combine this with the previous 'var' statement                             one-var
   59:4   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
   59:4   warning  Combine this with the previous 'var' statement                             one-var
   81:1   warning  This line has a length of 101. Maximum allowed is 100                      max-len
  101:3   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
  104:9   warning  Combine this with the previous 'var' statement                             one-var
  104:9   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
  146:9   warning  Combine this with the previous 'var' statement                             one-var
  146:9   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
  160:74  warning  'valid' is defined but never used                                          no-unused-vars
  169:3   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
  228:3   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
  249:69  warning  'e' is defined but never used                                              no-unused-vars
  253:3   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
  259:4   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
  304:9   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
  304:9   warning  Combine this with the previous 'var' statement                             one-var
  305:28  warning  Do not access Object.prototype method 'hasOwnProperty' from target object  no-prototype-builtins
  308:4   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
  308:4   warning  Combine this with the previous 'var' statement                             one-var
  323:3   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
  336:9   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
  337:4   warning  Combine this with the previous 'var' statement                             one-var
  337:4   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
  346:4   warning  'mediaWiki' is not defined                                                 no-undef
  346:15  warning  'blueSpice' is not defined                                                 no-undef
  346:26  warning  'jQuery' is not defined                                                    no-undef

/src/repo/resources/bluespice.oojs/ui/widget/ObjectInputWidget.js
    1:25  warning  'document' is defined but never used                                       no-unused-vars
   17:9   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
   18:22  warning  Do not access Object.prototype method 'hasOwnProperty' from target object  no-prototype-builtins
   21:4   warning  Combine this with the previous 'var' statement                             one-var
   21:4   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
   30:1   warning  This line has a length of 102. Maximum allowed is 100                      max-len
   39:21  warning  Do not access Object.prototype method 'hasOwnProperty' from target object  no-prototype-builtins
   57:9   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
   57:9   warning  Combine this with the previous 'var' statement                             one-var
   58:23  warning  Do not access Object.prototype method 'hasOwnProperty' from target object  no-prototype-builtins
   75:3   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
   89:9   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
   90:23  warning  Do not access Object.prototype method 'hasOwnProperty' from target object  no-prototype-builtins
  103:9   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
  104:23  warning  Do not access Object.prototype method 'hasOwnProperty' from target object  no-prototype-builtins
  107:47  warning  Do not access Object.prototype method 'hasOwnProperty' from target object  no-prototype-builtins
  138:9   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
  138:9   warning  Combine this with the previous 'var' statement                             one-var
  139:23  warning  Do not access Object.prototype method 'hasOwnProperty' from target object  no-prototype-builtins
  142:4   warning  Combine this with the previous 'var' statement                             one-var
  142:4   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
  151:4   warning  'mediaWiki' is not defined                                                 no-undef
  151:15  warning  'blueSpice' is not defined                                                 no-undef
  151:26  warning  'jQuery' is not defined                                                    no-undef

/src/repo/resources/bluespice.oojs/ui/widget/StoreApiBoundComboBoxInput.js
   8:1   warning  This line has a length of 119. Maximum allowed is 100            max-len
   9:1   warning  This line has a length of 110. Maximum allowed is 100            max-len
  10:1   warning  This line has a length of 112. Maximum allowed is 100            max-len
  13:1   warning  'bs' is not defined                                              no-undef
  17:2   warning  'bs' is not defined                                              no-undef
  21:2   warning  'bs' is not defined                                              no-undef
  22:2   warning  'bs' is not defined                                              no-undef
  29:1   warning  'bs' is not defined                                              no-undef
  31:14  warning  '$' is not defined                                               no-undef
  37:2   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  37:2   warning  Combine this with the previous 'var' statement                   one-var
  42:31  warning  'jqXHR' is defined but never used                                no-unused-vars

/src/repo/resources/bluespice.oojs/ui/widget/StoreComboBoxInput.js
    8:1   warning  This line has a length of 119. Maximum allowed is 100            max-len
    9:1   warning  This line has a length of 110. Maximum allowed is 100            max-len
   10:1   warning  This line has a length of 112. Maximum allowed is 100            max-len
   13:1   warning  'bs' is not defined                                              no-undef
   26:18  warning  'bs' is not defined                                              no-undef
   27:16  warning  'bs' is not defined                                              no-undef
   33:1   warning  'bs' is not defined                                              no-undef
   35:14  warning  '$' is not defined                                               no-undef
   41:3   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
   41:3   warning  Combine this with the previous 'var' statement                   one-var
   42:9   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
   42:9   warning  Combine this with the previous 'var' statement                   one-var
   43:4   warning  Combine this with the previous 'var' statement                   one-var
   43:4   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
   60:1   warning  'bs' is not defined                                              no-undef
   62:8   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
   62:8   warning  Combine this with the previous 'var' statement                   one-var
   63:3   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
   63:3   warning  Combine this with the previous 'var' statement                   one-var
   77:1   warning  'bs' is not defined                                              no-undef
   85:1   warning  'bs' is not defined                                              no-undef
   87:2   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
   92:2   warning  'bs' is not defined                                              no-undef
  105:1   warning  'bs' is not defined                                              no-undef
  109:9   warning  'bs' is not defined                                              no-undef
  116:1   warning  'bs' is not defined                                              no-undef
  120:1   warning  Missing JSDoc @return declaration                                jsdoc/require-returns
  120:1   warning  Missing JSDoc @returns for function                              valid-jsdoc
  124:1   warning  'bs' is not defined                                              no-undef
  128:2   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  132:1   warning  Missing JSDoc @returns for function                              valid-jsdoc
  135:4   warning  Missing JSDoc parameter description for 'data'                   valid-jsdoc
  137:1   warning  'bs' is not defined                                              no-undef

/src/repo/resources/bluespice.oojs/ui/widget/TitleComboBoxInput.js
   8:1   warning  This line has a length of 119. Maximum allowed is 100  max-len
   9:1   warning  This line has a length of 110. Maximum allowed is 100  max-len
  10:1   warning  This line has a length of 112. Maximum allowed is 100  max-len
  13:1   warning  'bs' is not defined                                    no-undef
  14:2   warning  'bs' is not defined                                    no-undef
  20:18  warning  'bs' is not defined                                    no-undef
  20:51  warning  'bs' is not defined                                    no-undef

/src/repo/resources/bluespice.oojs/ui/widget/UserPicker.js
   8:1   warning  This line has a length of 104. Maximum allowed is 100  max-len
  75:4   warning  'mediaWiki' is not defined                             no-undef
  75:15  warning  'jQuery' is not defined                                no-undef
  75:23  warning  'blueSpice' is not defined                             no-undef

/src/repo/resources/bluespice.oojs/ui/widget/util/UserMenuOption.js
  10:4   warning  Combine this with the previous 'var' statement                   one-var
  10:4   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  14:3   warning  Combine this with the previous 'var' statement                   one-var
  14:3   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  27:4   warning  'mediaWiki' is not defined                                       no-undef
  27:15  warning  'jQuery' is not defined                                          no-undef
  27:23  warning  'blueSpice' is not defined                                       no-undef

/src/repo/resources/bluespice/bluespice.alerts.js
   1:25  warning  'd' is defined but never used                                    no-unused-vars
   1:28  warning  Shadowing of global property 'undefined'                         no-shadow-restricted-names
   1:28  warning  'undefined' is defined but never used                            no-unused-vars
   3:6   warning  Unexpected dangling '_' in '_alerts'                             no-underscore-dangle
   9:5   warning  Missing JSDoc parameter description for 'id'                     valid-jsdoc
  10:5   warning  Missing JSDoc parameter description for '$elem'                  valid-jsdoc
  14:2   warning  Unexpected dangling '_' in '_add'                                no-underscore-dangle
  18:4   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  22:3   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  22:3   warning  Combine this with the previous 'var' statement                   one-var
  24:3   warning  Combine this with the previous 'var' statement                   one-var
  24:3   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  24:20  warning  '_getContainer' was used before it was defined                   no-use-before-define
  32:2   warning  Unexpected dangling '_' in '_remove'                             no-underscore-dangle
  40:2   warning  Unexpected dangling '_' in '_getContainer'                       no-underscore-dangle
  51:3   warning  Mixed spaces and tabs                                            no-mixed-spaces-and-tabs
  55:3   warning  'wireDismissableAlertButtons' was used before it was defined     no-use-before-define
  83:4   warning  'mediaWiki' is not defined                                       no-undef
  83:15  warning  'jQuery' is not defined                                          no-undef
  83:23  warning  'blueSpice' is not defined                                       no-undef

/src/repo/resources/bluespice/bluespice.api.js
    5:25  warning  'undefined' is defined but never used                                      no-unused-vars
    5:25  warning  Shadowing of global property 'undefined'                                   no-shadow-restricted-names
    7:2   warning  Missing JSDoc return description                                           valid-jsdoc
   10:5   warning  Missing JSDoc parameter description for 'module'                           valid-jsdoc
   11:5   warning  Missing JSDoc parameter description for 'task'                             valid-jsdoc
   12:5   warning  Missing JSDoc parameter description for 'data'                             valid-jsdoc
   13:5   warning  Missing JSDoc parameter description for 'cfg'                              valid-jsdoc
   16:2   warning  Unexpected dangling '_' in '_execTaskSilent'                               no-underscore-dangle
   19:34  warning  'module' is already declared in the upper scope on line 16 column 28       no-shadow
   19:42  warning  'task' is already declared in the upper scope on line 16 column 36         no-shadow
   19:54  warning  'cfg' is already declared in the upper scope on line 16 column 48          no-shadow
   19:54  warning  'cfg' is defined but never used                                            no-unused-vars
   22:34  warning  'module' is already declared in the upper scope on line 16 column 28       no-shadow
   22:42  warning  'task' is already declared in the upper scope on line 16 column 36         no-shadow
   22:54  warning  'cfg' is defined but never used                                            no-unused-vars
   22:54  warning  'cfg' is already declared in the upper scope on line 16 column 48          no-shadow
   28:10  warning  '_execTask' was used before it was defined                                 no-use-before-define
   30:2   warning  Missing JSDoc return description                                           valid-jsdoc
   38:5   warning  Missing JSDoc parameter description for 'module'                           valid-jsdoc
   39:5   warning  Missing JSDoc parameter description for 'task'                             valid-jsdoc
   40:5   warning  Missing JSDoc parameter description for 'data'                             valid-jsdoc
   44:2   warning  Unexpected dangling '_' in '_execTask'                                     no-underscore-dangle
   49:13  warning  '_msgSuccess' was used before it was defined                               no-use-before-define
   50:13  warning  '_msgFailure' was used before it was defined                               no-use-before-define
   54:3   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
   59:3   warning  Combine this with the previous 'var' statement                             one-var
   59:3   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
   66:6   warning  '_getContext' was used before it was defined                               no-use-before-define
   99:2   warning  Missing JSDoc return description                                           valid-jsdoc
  105:5   warning  Missing JSDoc parameter description for 'module'                           valid-jsdoc
  106:5   warning  Missing JSDoc parameter description for 'cfg'                              valid-jsdoc
  109:2   warning  Unexpected dangling '_' in '_getStoreData'                                 no-underscore-dangle
  117:3   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
  122:3   warning  Combine this with the previous 'var' statement                             one-var
  122:3   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
  127:6   warning  '_getContext' was used before it was defined                               no-use-before-define
  147:2   warning  Unexpected dangling '_' in '_configGet'                                    no-underscore-dangle
  153:10  warning  '_configRemote' was used before it was defined                             no-use-before-define
  160:2   warning  Unexpected dangling '_' in '_configHas'                                    no-underscore-dangle
  161:10  warning  '_configRemote' was used before it was defined                             no-use-before-define
  167:2   warning  Unexpected dangling '_' in '_configRemote'                                 no-underscore-dangle
  177:6   warning  '_getContext' was used before it was defined                               no-use-before-define
  182:38  warning  Do not access Object.prototype method 'hasOwnProperty' from target object  no-prototype-builtins
  186:4   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
  186:25  warning  Do not access Object.prototype method 'hasOwnProperty' from target object  no-prototype-builtins
  195:2   warning  Unexpected dangling '_' in '_msgSuccess'                                   no-underscore-dangle
  195:54  warning  'cfg' is defined but never used                                            no-unused-vars
  204:2   warning  Unexpected dangling '_' in '_msgFailure'                                   no-underscore-dangle
  204:54  warning  'cfg' is defined but never used                                            no-unused-vars
  207:10  warning  Combine this with the previous 'var' statement                             one-var
  207:10  warning  All 'var' declarations must be at the top of the function scope            vars-on-top
  248:2   warning  Unexpected dangling '_' in '_makeTaskUrl'                                  no-underscore-dangle
  256:10  warning  '_makeUrl' was used before it was defined                                  no-use-before-define
  263:2   warning  Unexpected dangling '_' in '_makeUrl'                                      no-underscore-dangle
  269:41  warning  '_getContext' was used before it was defined                               no-use-before-define
  272:3   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
  272:3   warning  Combine this with the previous 'var' statement                             one-var
  280:2   warning  Unexpected dangling '_' in '_getContext'                                   no-underscore-dangle
  314:4   warning  'mediaWiki' is not defined                                                 no-undef
  314:15  warning  'blueSpice' is not defined                                                 no-undef
  314:26  warning  'jQuery' is not defined                                                    no-undef

/src/repo/resources/bluespice/bluespice.config.js
    1:25  warning  'undefined' is defined but never used                                      no-unused-vars
    1:25  warning  Shadowing of global property 'undefined'                                   no-shadow-restricted-names
    2:2   warning  Missing JSDoc @returns for function                                        valid-jsdoc
   19:2   warning  Missing JSDoc return description                                           valid-jsdoc
   22:5   warning  Missing JSDoc parameter description for 'name'                             valid-jsdoc
   31:20  warning  Do not access Object.prototype method 'hasOwnProperty' from target object  no-prototype-builtins
   36:2   warning  Missing JSDoc @returns for function                                        valid-jsdoc
   42:9   warning  Combine this with the previous 'var' statement                             one-var
   42:9   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
   43:15  warning  Do not access Object.prototype method 'hasOwnProperty' from target object  no-prototype-builtins
   56:2   warning  Missing JSDoc return description                                           valid-jsdoc
   59:5   warning  Missing JSDoc parameter description for 'name'                             valid-jsdoc
   62:0   warning  The type 'Promise' is undefined                                            jsdoc/no-undefined-types
   68:3   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
  102:2   warning  Missing JSDoc return description                                           valid-jsdoc
  105:5   warning  Missing JSDoc parameter description for 'name'                             valid-jsdoc
  107:0   warning  The type 'Promise' is undefined                                            jsdoc/no-undefined-types
  113:3   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
  113:33  warning  Do not access Object.prototype method 'hasOwnProperty' from target object  no-prototype-builtins
  125:5   warning  Missing JSDoc parameter description for 'name'                             valid-jsdoc
  126:1   warning  This line has a length of 104. Maximum allowed is 100                      max-len
  135:2   warning  Missing JSDoc return description                                           valid-jsdoc
  138:5   warning  Missing JSDoc parameter description for 'name'                             valid-jsdoc
  173:15  warning  Do not access Object.prototype method 'hasOwnProperty' from target object  no-prototype-builtins
  185:4   warning  All 'var' declarations must be at the top of the function scope            vars-on-top
  185:4   warning  Combine this with the previous 'var' statement                             one-var
  193:4   warning  'mediaWiki' is not defined                                                 no-undef
  193:15  warning  'blueSpice' is not defined                                                 no-undef
  193:26  warning  'jQuery' is not defined                                                    no-undef

/src/repo/resources/bluespice/bluespice.deferredNotifications.js
   1:25  warning  Shadowing of global property 'undefined'                         no-shadow-restricted-names
   1:25  warning  'undefined' is defined but never used                            no-unused-vars
   3:2   warning  Unexpected dangling '_' in '_push'                               no-underscore-dangle
   5:3   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  15:2   warning  Unexpected dangling '_' in '_outputDeferredNotifications'        no-underscore-dangle
  25:9   warning  Combine this with the previous 'var' statement                   one-var
  25:9   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  39:4   warning  'mediaWiki' is not defined                                       no-undef
  39:15  warning  'blueSpice' is not defined                                       no-undef
  39:26  warning  'jQuery' is not defined                                          no-undef

/src/repo/resources/bluespice/bluespice.extensionManager.js
   5:22  warning  '$' is defined but never used                    no-unused-vars
   5:25  warning  Shadowing of global property 'undefined'         no-shadow-restricted-names
   5:25  warning  'undefined' is defined but never used            no-unused-vars
   7:2   warning  Missing JSDoc @returns for function              valid-jsdoc
  10:0   warning  Missing JSDoc @param "paths" type                jsdoc/require-param-type
  10:5   warning  Missing JSDoc parameter type for 'paths'         valid-jsdoc
  10:5   warning  Missing JSDoc parameter description for 'paths'  valid-jsdoc
  23:4   warning  'mediaWiki' is not defined                       no-undef
  23:15  warning  'blueSpice' is not defined                       no-undef
  23:26  warning  'jQuery' is not defined                          no-undef

/src/repo/resources/bluespice/bluespice.html.formfields.multiselect.js
  1:25  warning  Shadowing of global property 'undefined'                                  no-shadow-restricted-names
  1:25  warning  'undefined' is defined but never used                                     no-unused-vars
  4:10  warning  Global variable leak, declare the variable if it is intended to be local  no-implicit-globals
  4:10  warning  'i' is not defined                                                        no-undef
  4:31  warning  'i' is not defined                                                        no-undef
  4:39  warning  'i' is not defined                                                        no-undef
  5:19  warning  'i' is not defined                                                        no-undef
  9:4   warning  'mediaWiki' is not defined                                                no-undef
  9:15  warning  'blueSpice' is not defined                                                no-undef
  9:26  warning  'jQuery' is not defined                                                   no-undef

/src/repo/resources/bluespice/bluespice.html.formfields.namespacemultiselect.js
   2:2   warning  'Ext' is not defined                  no-undef
   3:3   warning  '$' is not defined                    no-undef
   5:22  warning  '$' is not defined                    no-undef
   6:17  warning  '$' is not defined                    no-undef
   8:17  warning  'Ext' is not defined                  no-undef
  21:53  warning  'oldValue' is defined but never used  no-unused-vars
  21:63  warning  'eOpts' is defined but never used     no-unused-vars

/src/repo/resources/bluespice/bluespice.html.formfields.sortable.js
   1:25  warning  Shadowing of global property 'undefined'               no-shadow-restricted-names
   1:25  warning  'undefined' is defined but never used                  no-unused-vars
   5:1   warning  This line has a length of 114. Maximum allowed is 100  max-len
   9:1   warning  This line has a length of 164. Maximum allowed is 100  max-len
  14:4   warning  'mediaWiki' is not defined                             no-undef
  14:15  warning  'blueSpice' is not defined                             no-undef
  14:26  warning  'jQuery' is not defined                                no-undef

/src/repo/resources/bluespice/bluespice.js
   5:5   warning  Unexpected 'var' declaration in the global scope, wrap in an IIFE for a local variable, assign as global property for a global variable  no-implicit-globals
   5:27  warning  '$' is defined but never used                                                                                                            no-unused-vars
   5:30  warning  'undefined' is defined but never used                                                                                                    no-unused-vars
   5:30  warning  Shadowing of global property 'undefined'                                                                                                 no-shadow-restricted-names
   7:6   warning  'bs' is already declared in the upper scope on line 5 column 5                                                                           no-shadow
  18:8   warning  Combine this with the previous 'var' statement                                                                                           one-var
  18:8   warning  All 'var' declarations must be at the top of the function scope                                                                          vars-on-top
  19:3   warning  All 'var' declarations must be at the top of the function scope                                                                          vars-on-top
  19:3   warning  Combine this with the previous 'var' statement                                                                                           one-var
  41:7   warning  'namespaceIds' is already declared in the upper scope on line 17 column 3                                                                no-shadow
  43:9   warning  Combine this with the previous 'var' statement                                                                                           one-var
  43:9   warning  All 'var' declarations must be at the top of the function scope                                                                          vars-on-top
  43:13  warning  'lcNamespaceName' is already declared in the upper scope on line 18 column 12                                                            no-shadow
  44:4   warning  All 'var' declarations must be at the top of the function scope                                                                          vars-on-top
  44:4   warning  Combine this with the previous 'var' statement                                                                                           one-var
  44:8   warning  'namespaceId' is already declared in the upper scope on line 19 column 7                                                                 no-shadow
  55:4   warning  'mediaWiki' is not defined                                                                                                               no-undef
  55:15  warning  'jQuery' is not defined                                                                                                                  no-undef

/src/repo/resources/bluespice/bluespice.loadIndicator.js
   1:25  warning  'd' is defined but never used             no-unused-vars
   1:28  warning  Shadowing of global property 'undefined'  no-shadow-restricted-names
   1:28  warning  'undefined' is defined but never used     no-unused-vars
  97:4   warning  'mediaWiki' is not defined                no-undef
  97:15  warning  'jQuery' is not defined                   no-undef
  97:23  warning  'blueSpice' is not defined                no-undef

/src/repo/resources/bluespice/bluespice.ping.js
    1:1   warning  Global variable leak, declare the variable if it is intended to be local  no-implicit-globals
    1:1   warning  'BSPing' is not defined                                                   no-undef
    7:3   warning  '$' is not defined                                                        no-undef
    7:49  warning  'BSPing' is not defined                                                   no-undef
    8:3   warning  'BSPing' is not defined                                                   no-undef
    9:8   warning  'BSPing' is not defined                                                   no-undef
   13:3   warning  'BSPing' is not defined                                                   no-undef
   16:24  warning  'BSPing' is not defined                                                   no-undef
   19:5   warning  '$' is not defined                                                        no-undef
   24:5   warning  'BSPing' is not defined                                                   no-undef
   24:34  warning  'BSPing' is not defined                                                   no-undef
   24:47  warning  'BSPing' is not defined                                                   no-undef
   30:3   warning  All 'var' declarations must be at the top of the function scope           vars-on-top
   30:3   warning  Combine this with the previous 'var' statement                            one-var
   31:9   warning  All 'var' declarations must be at the top of the function scope           vars-on-top
   31:9   warning  Combine this with the previous 'var' statement                            one-var
   37:3   warning  'bs' is not defined                                                       no-undef
   43:13  warning  'BSPing' is not defined                                                   no-undef
   50:3   warning  All 'var' declarations must be at the top of the function scope           vars-on-top
   56:3   warning  'BSPing' is not defined                                                   no-undef
   61:8   warning  'BSPing' is not defined                                                   no-undef
   64:3   warning  Combine this with the previous 'var' statement                            one-var
   64:3   warning  All 'var' declarations must be at the top of the function scope           vars-on-top
   66:9   warning  All 'var' declarations must be at the top of the function scope           vars-on-top
   66:9   warning  Combine this with the previous 'var' statement                            one-var
   66:24  warning  'BSPing' is not defined                                                   no-undef
   67:1   warning  This line has a length of 102. Maximum allowed is 100                     max-len
   67:4   warning  'BSPing' is not defined                                                   no-undef
   67:41  warning  'BSPing' is not defined                                                   no-undef
   67:76  warning  'BSPing' is not defined                                                   no-undef
   68:25  warning  'BSPing' is not defined                                                   no-undef
   69:28  warning  'BSPing' is not defined                                                   no-undef
   72:18  warning  'BSPing' is not defined                                                   no-undef
   75:3   warning  'BSPing' is not defined                                                   no-undef
   85:10  warning  All 'var' declarations must be at the top of the function scope           vars-on-top
   87:6   warning  All 'var' declarations must be at the top of the function scope           vars-on-top
   87:6   warning  Combine this with the previous 'var' statement                            one-var
   88:6   warning  '$' is not defined                                                        no-undef
  105:4   warning  'BSPing' is not defined                                                   no-undef
  105:33  warning  'BSPing' is not defined                                                   no-undef
  105:46  warning  'BSPing' is not defined                                                   no-undef
  110:1   warning  'BSPing' is not defined                                                   no-undef

/src/repo/resources/bluespice/bluespice.string.js
   2:1   warning  String prototype is read only, properties should not be added                                            no-extend-native
  10:1   warning  'startsWith' is restricted from being used. Unsupported method String.prototype.startsWith requires ES6  no-restricted-properties
  10:1   warning  String prototype is read only, properties should not be added                                            no-extend-native
  14:1   warning  'endsWith' is restricted from being used. Unsupported method String.prototype.endsWith requires ES6      no-restricted-properties
  14:1   warning  String prototype is read only, properties should not be added                                            no-extend-native
  18:1   warning  String prototype is read only, properties should not be added                                            no-extend-native
  26:1   warning  String prototype is read only, properties should not be added                                            no-extend-native
  39:2   warning  Array prototype is read only, properties should not be added                                             no-extend-native
  40:13  warning  Unexpected use of '>>>'                                                                                  no-bitwise
  42:2   warning  Mixed spaces and tabs                                                                                    no-mixed-spaces-and-tabs

/src/repo/resources/bluespice/bluespice.testsystem.js
   2:21  warning  'bs' is defined but never used                                   no-unused-vars
   2:25  warning  'd' is defined but never used                                    no-unused-vars
   2:28  warning  Shadowing of global property 'undefined'                         no-shadow-restricted-names
   2:28  warning  'undefined' is defined but never used                            no-unused-vars
  17:3   warning  Combine this with the previous 'var' statement                   one-var
  17:3   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  19:4   warning  All 'var' declarations must be at the top of the function scope  vars-on-top
  19:4   warning  Combine this with the previous 'var' statement                   one-var
  25:4   warning  'mediaWiki' is not defined                                       no-undef
  25:15  warning  'jQuery' is not defined                                          no-undef
  25:23  warning  'blueSpice' is not defined                                       no-undef

/src/repo/resources/bluespice/bluespice.tooltip.js
   1:28  warning  Shadowing of global property 'undefined'  no-shadow-restricted-names
   1:28  warning  'undefined' is defined but never used     no-unused-vars
  25:20  warning  'Ext' is not defined                      no-undef
  32:4   warning  'mediaWiki' is not defined                no-undef
  32:15  warning  'jQuery' is not defined                   no-undef
  32:23  warning  'blueSpice' is not defined                no-undef

/src/repo/resources/bluespice/bluespice.treepanel.js
   1:24  warning  Shadowing of global property 'undefined'            no-shadow-restricted-names
   1:24  warning  'undefined' is defined but never used               no-unused-vars
  11:3   warning  '_updatePathCookie' was used before it was defined  no-use-before-define
  18:5   warning  Missing JSDoc parameter description for '$node'     valid-jsdoc
  21:2   warning  Unexpected dangling '_' in '_updatePathCookie'      no-underscore-dangle
  50:4   warning  'mediaWiki' is not defined                          no-undef
  50:15  warning  'jQuery' is not defined                             no-undef

/src/repo/resources/bluespice/bluespice.util.js
    1:25  warning  Shadowing of global property 'undefined'                                                                                        no-shadow-restricted-names
    8:2   warning  Unexpected dangling '_' in '_prepareSimpleDialogWindowCfg'                                                                      no-underscore-dangle
   10:10  warning  'Ext' is not defined                                                                                                            no-undef
   18:2   warning  Unexpected dangling '_' in '_prepareSimpleDialogCallbackCfg'                                                                    no-underscore-dangle
   20:10  warning  'Ext' is not defined                                                                                                            no-undef
   33:0   warning  The type 'BS' is undefined                                                                                                      jsdoc/no-undefined-types
   35:2   warning  Unexpected dangling '_' in '_alert'                                                                                             no-underscore-dangle
   47:3   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
   47:21  warning  'Ext' is not defined                                                                                                            no-undef
   58:2   warning  Unexpected dangling '_' in '_confirm'                                                                                           no-underscore-dangle
   70:3   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
   70:23  warning  'Ext' is not defined                                                                                                            no-undef
   82:2   warning  Unexpected dangling '_' in '_prompt'                                                                                            no-underscore-dangle
   90:3   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
   90:22  warning  'Ext' is not defined                                                                                                            no-undef
  102:2   warning  Unexpected dangling '_' in '_confirmNavigation'                                                                                 no-underscore-dangle
  117:2   warning  Unexpected dangling '_' in '_getRemoteHandlerUrl'                                                                               no-underscore-dangle
  121:3   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
  125:4   warning  Combine this with the previous 'var' statement                                                                                  one-var
  125:4   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
  134:3   warning  Combine this with the previous 'var' statement                                                                                  one-var
  134:3   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
  139:2   warning  Unexpected dangling '_' in '_getAjaxDispatcherUrl'                                                                              no-underscore-dangle
  148:3   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
  148:3   warning  Combine this with the previous 'var' statement                                                                                  one-var
  159:2   warning  Unexpected dangling '_' in '_getCAIUrl'                                                                                         no-underscore-dangle
  163:2   warning  Unexpected dangling '_' in '_getCAIContext'                                                                                     no-underscore-dangle
  180:2   warning  Unexpected dangling '_' in '_getNamespaceText'                                                                                  no-underscore-dangle
  185:2   warning  Unexpected dangling '_' in '_selection'                                                                                         no-underscore-dangle
  186:7   warning  Unexpected dangling '_' in '_textbox'                                                                                           no-underscore-dangle
  187:4   warning  Unexpected dangling '_' in '_selectedText'                                                                                      no-underscore-dangle
  188:4   warning  Unexpected dangling '_' in '_origText'                                                                                          no-underscore-dangle
  189:4   warning  Unexpected dangling '_' in '_startPos'                                                                                          no-underscore-dangle
  203:4   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
  277:2   warning  Unexpected dangling '_' in '_linker'                                                                                            no-underscore-dangle
  279:3   warning  Missing JSDoc return description                                                                                                valid-jsdoc
  290:6   warning  Expected JSDoc for 'linkDescs' but found 'object'                                                                               valid-jsdoc
  290:6   warning  Missing JSDoc parameter type for 'object'                                                                                       valid-jsdoc
  290:0   warning  Missing JSDoc @param "object" type                                                                                              jsdoc/require-param-type
  290:0   warning  Expected @param names to be "linkDescs". Got "object, linkDescs"                                                                jsdoc/check-param-names
  291:0   warning  Missing JSDoc @param "linkDescs" type                                                                                           jsdoc/require-param-type
  291:6   warning  Missing JSDoc parameter type for 'linkDescs'                                                                                    valid-jsdoc
  291:6   warning  Missing JSDoc parameter description for 'linkDescs'                                                                             valid-jsdoc
  292:0   warning  The type 'Promise' is undefined                                                                                                 jsdoc/no-undefined-types
  311:5   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
  311:5   warning  Combine this with the previous 'var' statement                                                                                  one-var
  333:3   warning  Missing JSDoc return description                                                                                                valid-jsdoc
  334:6   warning  Missing JSDoc parameter description for 'target'                                                                                valid-jsdoc
  335:6   warning  Missing JSDoc parameter description for 'text'                                                                                  valid-jsdoc
  336:6   warning  Missing JSDoc parameter description for 'attribs'                                                                               valid-jsdoc
  337:6   warning  Missing JSDoc parameter description for 'query'                                                                                 valid-jsdoc
  338:0   warning  The type 'Promise' is undefined                                                                                                 jsdoc/no-undefined-types
  362:2   warning  Unexpected dangling '_' in '_timestampToAgeString'                                                                              no-underscore-dangle
  363:1   warning  This line has a length of 102. Maximum allowed is 100                                                                           max-len
  378:3   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
  378:3   warning  Combine this with the previous 'var' statement                                                                                  one-var
  380:3   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
  380:3   warning  Combine this with the previous 'var' statement                                                                                  one-var
  382:3   warning  Combine this with the previous 'var' statement                                                                                  one-var
  382:3   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
  384:3   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
  384:3   warning  Combine this with the previous 'var' statement                                                                                  one-var
  386:3   warning  Combine this with the previous 'var' statement                                                                                  one-var
  386:3   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
  432:2   warning  Unexpected dangling '_' in '_convertDateToMWTimestamp'                                                                          no-underscore-dangle
  434:7   warning  Identifier 'curr_year' is not in camel case                                                                                     camelcase
  435:4   warning  Identifier 'curr_month' is not in camel case                                                                                    camelcase
  436:8   warning  Identifier 'curr_month' is not in camel case                                                                                    camelcase
  437:4   warning  Identifier 'curr_month' is not in camel case                                                                                    camelcase
  437:23  warning  Identifier 'curr_month' is not in camel case                                                                                    camelcase
  439:3   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
  439:3   warning  Combine this with the previous 'var' statement                                                                                  one-var
  439:7   warning  Identifier 'curr_date' is not in camel case                                                                                     camelcase
  440:8   warning  Identifier 'curr_date' is not in camel case                                                                                     camelcase
  441:4   warning  Identifier 'curr_date' is not in camel case                                                                                     camelcase
  441:22  warning  Identifier 'curr_date' is not in camel case                                                                                     camelcase
  443:3   warning  Combine this with the previous 'var' statement                                                                                  one-var
  443:3   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
  443:7   warning  Identifier 'curr_hour' is not in camel case                                                                                     camelcase
  444:8   warning  Identifier 'curr_hour' is not in camel case                                                                                     camelcase
  445:4   warning  Identifier 'curr_hour' is not in camel case                                                                                     camelcase
  445:22  warning  Identifier 'curr_hour' is not in camel case                                                                                     camelcase
  447:3   warning  Combine this with the previous 'var' statement                                                                                  one-var
  447:3   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
  447:7   warning  Identifier 'curr_min' is not in camel case                                                                                      camelcase
  448:8   warning  Identifier 'curr_min' is not in camel case                                                                                      camelcase
  449:4   warning  Identifier 'curr_min' is not in camel case                                                                                      camelcase
  449:21  warning  Identifier 'curr_min' is not in camel case                                                                                      camelcase
  451:3   warning  Combine this with the previous 'var' statement                                                                                  one-var
  451:3   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
  451:7   warning  Identifier 'curr_sec' is not in camel case                                                                                      camelcase
  452:8   warning  Identifier 'curr_sec' is not in camel case                                                                                      camelcase
  453:4   warning  Identifier 'curr_sec' is not in camel case                                                                                      camelcase
  453:21  warning  Identifier 'curr_sec' is not in camel case                                                                                      camelcase
  455:3   warning  Combine this with the previous 'var' statement                                                                                  one-var
  455:3   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
  456:4   warning  Identifier 'curr_year' is not in camel case                                                                                     camelcase
  457:4   warning  Identifier 'curr_month' is not in camel case                                                                                    camelcase
  458:4   warning  Identifier 'curr_date' is not in camel case                                                                                     camelcase
  459:4   warning  Identifier 'curr_hour' is not in camel case                                                                                     camelcase
  460:4   warning  Identifier 'curr_min' is not in camel case                                                                                      camelcase
  461:4   warning  Identifier 'curr_sec' is not in camel case                                                                                      camelcase
  466:2   warning  Unexpected dangling '_' in '_convertMWTimestampToISO'                                                                           no-underscore-dangle
  474:2   warning  Unexpected dangling '_' in '_convertISOToMWTimestamp'                                                                           no-underscore-dangle
  482:2   warning  Unexpected dangling '_' in '_convertMWTimestampToDate'                                                                          no-underscore-dangle
  495:2   warning  Missing JSDoc return description                                                                                                valid-jsdoc
  500:0   warning  The type 'Int' is undefined                                                                                                     jsdoc/no-undefined-types
  501:0   warning  The type 'Int' is undefined                                                                                                     jsdoc/no-undefined-types
  502:0   warning  The type 'Void' is undefined                                                                                                    jsdoc/no-undefined-types
  504:2   warning  Unexpected dangling '_' in '_toggleMessage'                                                                                     no-underscore-dangle
  504:46  warning  'height' is defined but never used                                                                                              no-unused-vars
  505:13  warning  'Ext' is not defined                                                                                                            no-undef
  516:2   warning  Missing JSDoc return description                                                                                                valid-jsdoc
  520:5   warning  Missing JSDoc parameter description for 'obj'                                                                                   valid-jsdoc
  523:2   warning  Unexpected dangling '_' in '_makeDataAttributeObject'                                                                           no-underscore-dangle
  525:9   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
  525:9   warning  Combine this with the previous 'var' statement                                                                                  one-var
  531:2   warning  Missing JSDoc return description                                                                                                valid-jsdoc
  536:5   warning  Missing JSDoc parameter description for 'obj'                                                                                   valid-jsdoc
  539:2   warning  Unexpected dangling '_' in '_unprefixDataAttributeObject'                                                                       no-underscore-dangle
  541:9   warning  Combine this with the previous 'var' statement                                                                                  one-var
  541:9   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
  543:9   warning  'startsWith' is restricted from being used. Unsupported method String.prototype.startsWith requires ES6                         no-restricted-properties
  551:2   warning  Missing JSDoc return description                                                                                                valid-jsdoc
  554:5   warning  Missing JSDoc parameter description for 'node'                                                                                  valid-jsdoc
  557:2   warning  Unexpected dangling '_' in '_makeAttributeObject'                                                                               no-underscore-dangle
  559:9   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
  559:9   warning  Combine this with the previous 'var' statement                                                                                  one-var
  566:2   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
  566:2   warning  Combine this with the previous 'var' statement                                                                                  one-var
  566:6   warning  Unexpected dangling '_' in '_tempAnchor'                                                                                        no-underscore-dangle
  568:2   warning  Missing JSDoc return description                                                                                                valid-jsdoc
  571:1   warning  This line has a length of 137. Maximum allowed is 100                                                                           max-len
  574:2   warning  Unexpected dangling '_' in '_getUrlParams'                                                                                      no-underscore-dangle
  590:11  warning  '__getUrlParams' was used before it was defined                                                                                 no-use-before-define
  596:1   warning  This line has a length of 119. Maximum allowed is 100                                                                           max-len
  597:2   warning  Unexpected dangling '_' in '__getUrlParams'                                                                                     no-underscore-dangle
  602:3   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
  602:3   warning  Combine this with the previous 'var' statement                                                                                  one-var
  605:9   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
  605:9   warning  Combine this with the previous 'var' statement                                                                                  one-var
  606:4   warning  Combine this with the previous 'var' statement                                                                                  one-var
  606:4   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
  608:1   warning  This line has a length of 176. Maximum allowed is 100                                                                           max-len
  618:1   warning  This line has a length of 123. Maximum allowed is 100                                                                           max-len
  619:1   warning  This line has a length of 135. Maximum allowed is 100                                                                           max-len
  622:2   warning  Unexpected dangling '_' in '_getUrlParam'                                                                                       no-underscore-dangle
  635:2   warning  Missing JSDoc @returns for function                                                                                             valid-jsdoc
  640:2   warning  Unexpected dangling '_' in '_addEntryToMultiSelect'                                                                             no-underscore-dangle
  644:3   warning  'Ext' is not defined                                                                                                            no-undef
  645:13  warning  Expected '===' and instead saw '=='                                                                                             eqeqeq
  646:5   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
  648:53  warning  Unexpected string concatenation of literals                                                                                     no-useless-concat
  666:2   warning  Missing JSDoc @returns for function                                                                                             valid-jsdoc
  671:2   warning  Unexpected dangling '_' in '_deleteEntryFromMultiSelect'                                                                        no-underscore-dangle
  675:49  warning  Unexpected string concatenation of literals                                                                                     no-useless-concat
  677:3   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
  677:3   warning  Combine this with the previous 'var' statement                                                                                  one-var
  685:2   warning  Unexpected dangling '_' in '_wikiGetlink'                                                                                       no-underscore-dangle
  690:3   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
  690:3   warning  Combine this with the previous 'var' statement                                                                                  one-var
  694:2   warning  Unexpected dangling '_' in '_auditCssSelectors'                                                                                 no-underscore-dangle
  695:19  warning  'rules' is assigned a value but never used                                                                                      no-unused-vars
  704:40  warning  'index' is already declared in the upper scope on line 703 column 29                                                            no-shadow
  714:3   warning  Unexpected console statement                                                                                                    no-console
  716:40  warning  'unmatched' is already declared in the upper scope on line 695 column 31                                                        no-shadow
  717:4   warning  Unexpected console statement                                                                                                    no-console
  728:5   warning  Missing JSDoc parameter type for 'string'                                                                                       valid-jsdoc
  728:0   warning  Missing JSDoc @param "string" type                                                                                              jsdoc/require-param-type
  728:0   warning  Expected @param names to be "subNamespace, baseNamespace". Got "string, object, subNamespace, baseNamespace"                    jsdoc/check-param-names
  728:5   warning  Expected JSDoc for 'subNamespace' but found 'string'                                                                            valid-jsdoc
  729:5   warning  Expected JSDoc for 'baseNamespace' but found 'object'                                                                           valid-jsdoc
  729:5   warning  Missing JSDoc parameter type for 'object'                                                                                       valid-jsdoc
  729:0   warning  Missing JSDoc @param "object" type                                                                                              jsdoc/require-param-type
  730:5   warning  Missing JSDoc parameter description for 'subNamespace'                                                                          valid-jsdoc
  730:0   warning  Missing JSDoc @param "subNamespace" type                                                                                        jsdoc/require-param-type
  730:5   warning  Missing JSDoc parameter type for 'subNamespace'                                                                                 valid-jsdoc
  731:5   warning  Missing JSDoc parameter description for 'baseNamespace'                                                                         valid-jsdoc
  731:0   warning  Missing JSDoc @param "baseNamespace" type                                                                                       jsdoc/require-param-type
  731:5   warning  Missing JSDoc parameter type for 'baseNamespace'                                                                                valid-jsdoc
  734:2   warning  Unexpected dangling '_' in '_registerNamespace'                                                                                 no-underscore-dangle
  746:2   warning  Missing JSDoc return type                                                                                                       valid-jsdoc
  747:5   warning  Expected JSDoc for 'callback' but found 'string'                                                                                valid-jsdoc
  747:0   warning  Expected @param names to be "callback, args, scope". Got "string, array, object, callback, args, scope, callback, args, scope"  jsdoc/check-param-names
  747:5   warning  Missing JSDoc parameter type for 'string'                                                                                       valid-jsdoc
  747:0   warning  Missing JSDoc @param "string" type                                                                                              jsdoc/require-param-type
  748:5   warning  Expected JSDoc for 'args' but found 'array'                                                                                     valid-jsdoc
  748:0   warning  Missing JSDoc @param "array" type                                                                                               jsdoc/require-param-type
  748:5   warning  Missing JSDoc parameter type for 'array'                                                                                        valid-jsdoc
  749:5   warning  Expected JSDoc for 'scope' but found 'object'                                                                                   valid-jsdoc
  749:5   warning  Missing JSDoc parameter type for 'object'                                                                                       valid-jsdoc
  749:0   warning  Missing JSDoc @param "object" type                                                                                              jsdoc/require-param-type
  750:0   warning  Missing JSDoc @param "callback" type                                                                                            jsdoc/require-param-type
  750:5   warning  Missing JSDoc parameter description for 'callback'                                                                              valid-jsdoc
  750:5   warning  Missing JSDoc parameter type for 'callback'                                                                                     valid-jsdoc
  751:5   warning  Missing JSDoc parameter description for 'args'                                                                                  valid-jsdoc
  751:5   warning  Missing JSDoc parameter type for 'args'                                                                                         valid-jsdoc
  751:0   warning  Missing JSDoc @param "args" type                                                                                                jsdoc/require-param-type
  752:0   warning  Missing JSDoc @param "scope" type                                                                                               jsdoc/require-param-type
  752:5   warning  Missing JSDoc parameter description for 'scope'                                                                                 valid-jsdoc
  752:5   warning  Missing JSDoc parameter type for 'scope'                                                                                        valid-jsdoc
  753:0   warning  Missing JSDoc @param "callback" type                                                                                            jsdoc/require-param-type
  753:5   warning  Missing JSDoc parameter type for 'callback'                                                                                     valid-jsdoc
  753:5   warning  Duplicate JSDoc parameter 'callback'                                                                                            valid-jsdoc
  753:5   warning  Missing JSDoc parameter description for 'callback'                                                                              valid-jsdoc
  754:5   warning  Duplicate JSDoc parameter 'args'                                                                                                valid-jsdoc
  754:5   warning  Missing JSDoc parameter description for 'args'                                                                                  valid-jsdoc
  754:5   warning  Missing JSDoc parameter type for 'args'                                                                                         valid-jsdoc
  754:0   warning  Missing JSDoc @param "args" type                                                                                                jsdoc/require-param-type
  755:0   warning  Missing JSDoc @param "scope" type                                                                                               jsdoc/require-param-type
  755:5   warning  Duplicate JSDoc parameter 'scope'                                                                                               valid-jsdoc
  755:5   warning  Missing JSDoc parameter description for 'scope'                                                                                 valid-jsdoc
  755:5   warning  Missing JSDoc parameter type for 'scope'                                                                                        valid-jsdoc
  756:0   warning  Missing JSDoc @return type                                                                                                      jsdoc/require-returns-type
  758:2   warning  Unexpected dangling '_' in '_runCallback'                                                                                       no-underscore-dangle
  761:9   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
  761:9   warning  Combine this with the previous 'var' statement                                                                                  one-var
  768:2   warning  Combine this with the previous 'var' statement                                                                                  one-var
  768:2   warning  All 'var' declarations must be at the top of the function scope                                                                 vars-on-top
  822:4   warning  'mediaWiki' is not defined                                                                                                      no-undef
  822:15  warning  'blueSpice' is not defined                                                                                                      no-undef
  822:26  warning  'jQuery' is not defined                                                                                                         no-undef

/src/repo/resources/bluespice/bluespice.wikiText.js
    1:25  warning  Shadowing of global property 'undefined'                                                             no-shadow-restricted-names
   19:1   warning  This line has a length of 111. Maximum allowed is 100                                                max-len
   23:4   warning  All 'var' declarations must be at the top of the function scope                                      vars-on-top
   30:4   warning  Combine this with the previous 'var' statement                                                       one-var
   30:4   warning  All 'var' declarations must be at the top of the function scope                                      vars-on-top
   38:10  warning  Combine this with the previous 'var' statement                                                       one-var
   38:10  warning  All 'var' declarations must be at the top of the function scope                                      vars-on-top
   91:2   warning  Mixed spaces and tabs                                                                                no-mixed-spaces-and-tabs
   91:4   warning  'wikiLinkFlags' is assigned a value but never used                                                   no-unused-vars
   95:1   warning  This line has a length of 130. Maximum allowed is 100                                                max-len
   97:2   warning  Mixed spaces and tabs                                                                                no-mixed-spaces-and-tabs
   97:4   warning  'wikiLinkProperties' is assigned a value but never used                                              no-unused-vars
  101:2   warning  Mixed spaces and tabs                                                                                no-mixed-spaces-and-tabs
  134:1   warning  This line has a length of 111. Maximum allowed is 100                                                max-len
  137:4   warning  All 'var' declarations must be at the top of the function scope                                      vars-on-top
  138:4   warning  'parseTitle' was used before it was defined                                                          no-use-before-define
  141:10  warning  Combine this with the previous 'var' statement                                                       one-var
  141:10  warning  All 'var' declarations must be at the top of the function scope                                      vars-on-top
  142:5   warning  All 'var' declarations must be at the top of the function scope                                      vars-on-top
  142:5   warning  Combine this with the previous 'var' statement                                                       one-var
  147:10  warning  'endsWith' is restricted from being used. Unsupported method String.prototype.endsWith requires ES6  no-restricted-properties
  148:1   warning  This line has a length of 105. Maximum allowed is 100                                                max-len
  148:6   warning  Combine this with the previous 'var' statement                                                       one-var
  148:6   warning  All 'var' declarations must be at the top of the function scope                                      vars-on-top
  150:6   warning  All 'var' declarations must be at the top of the function scope                                      vars-on-top
  150:6   warning  Combine this with the previous 'var' statement                                                       one-var
  197:5   warning  All 'var' declarations must be at the top of the function scope                                      vars-on-top
  197:5   warning  Combine this with the previous 'var' statement                                                       one-var
  204:5   warning  Combine this with the previous 'var' statement                                                       one-var
  204:5   warning  All 'var' declarations must be at the top of the function scope                                      vars-on-top
  235:4   warning  All 'var' declarations must be at the top of the function scope                                      vars-on-top
  240:5   warning  All 'var' declarations must be at the top of the function scope                                      vars-on-top
  240:5   warning  Combine this with the previous 'var' statement                                                       one-var
  266:10  warning  Combine this with the previous 'var' statement                                                       one-var
  266:10  warning  All 'var' declarations must be at the top of the function scope                                      vars-on-top
  274:5   warning  Combine this with the previous 'var' statement                                                       one-var
  274:5   warning  All 'var' declarations must be at the top of the function scope                                      vars-on-top
  293:6   warning  All 'var' declarations must be at the top of the function scope                                      vars-on-top
  293:6   warning  Combine this with the previous 'var' statement                                                       one-var
  453:7   warning  'me' is assigned a value but never used                                                              no-unused-vars
  464:4   warning  All 'var' declarations must be at the top of the function scope                                      vars-on-top
  467:10  warning  All 'var' declarations must be at the top of the function scope                                      vars-on-top
  467:10  warning  Combine this with the previous 'var' statement                                                       one-var
  484:10  warning  Combine this with the previous 'var' statement                                                       one-var
  484:10  warning  All 'var' declarations must be at the top of the function scope                                      vars-on-top
  485:5   warning  Combine this with the previous 'var' statement                                                       one-var
  485:5   warning  All 'var' declarations must be at the top of the function scope                                      vars-on-top
  493:25  warning  'keyOrCfg' is defined but never used                                                                 no-unused-vars
  493:35  warning  'value' is defined but never used                                                                    no-unused-vars
  498:31  warning  'cfg' is defined but never used                                                                      no-unused-vars
  498:36  warning  'title' is defined but never used                                                                    no-unused-vars
  500:4   warning  'mediaWiki' is not defined                                                                           no-undef
  500:15  warning  'blueSpice' is not defined                                                                           no-undef
  500:26  warning  'jQuery' is not defined                                                                              no-undef

/src/repo/resources/bluespice/bluespice.xhr.js
   2:1   warning  Global variable leak, declare the variable if it is intended to be local  no-implicit-globals
   2:1   warning  'BsXHRResponseStatus' is not defined                                      no-undef
   8:1   warning  Global variable leak, declare the variable if it is intended to be local  no-implicit-globals
   8:1   warning  'BsXHRResponse' is not defined                                            no-undef
  10:10  warning  'Ext' is not defined                                                      no-undef

✖ 1399 problems (0 errors, 1399 warnings)


$ ./node_modules/.bin/eslint i18n/extjs/ku-latn.json i18n/api/sr-el.json i18n/upload/hr.json resources/bluespice/bluespice.wikiText.js i18n/core/tcy.json i18n/validator/el.json i18n/core/hy.json i18n/extjs/bn.json i18n/core/roa-tara.json i18n/upload/sv.json i18n/installer/qqq.json i18n/extjs-portal/ar.json i18n/deferred/roa-tara.json i18n/installer/ru.json i18n/filerepo/inh.json i18n/core/ig.json i18n/credits/pt.json i18n/extjs/en-gb.json i18n/validator/nl.json i18n/credits/av.json i18n/filerepo/pl.json i18n/core/ne.json resources/bluespice/bluespice.deferredNotifications.js i18n/extjs/my.json i18n/extjs/rmf.json i18n/extjs/aeb-arab.json resources/bluespice.extjs/BS/form/field/ItemList.js i18n/core/bs.json i18n/diagnostics/id.json i18n/core/es.json i18n/ooui/zgh.json i18n/credits/inh.json i18n/credits/diq.json i18n/settings/pt.json i18n/core/nah.json i18n/core/qqq.json i18n/filerepo/got.json i18n/extjs/sms.json i18n/diagnostics/bg.json i18n/settings/uk.json i18n/core/eu.json resources/bluespice.extjs/BS/form/field/TitleCombo.js i18n/extjs-portal/fa.json i18n/filerepo/gl.json i18n/installer/lt.json i18n/extjs/ksh.json i18n/core/min.json i18n/diagnostics/es.json i18n/filerepo/sl.json i18n/api/it.json resources/bluespice.extjs/BS/portal/PortletConfig.js i18n/extjs/lfn.json i18n/upload/hy.json i18n/filerepo/fr.json i18n/extjs/vi.json i18n/settings/sr-ec.json i18n/installer/it.json i18n/extjs-portal/ta.json i18n/credits/zh-hant.json i18n/upload/fa.json i18n/diagnostics/sr-el.json i18n/credits/be-tarask.json i18n/validator/sl.json i18n/deferred/fa.json i18n/extjs-portal/hu.json i18n/api/ru.json i18n/api/diq.json resources/bluespice.extjs/BS/AlertDialog.js i18n/core/lki.json i18n/settings/be-tarask.json resources/bluespice.extjs/BS/store/ApiRecentChanges.js i18n/filerepo/ja.json i18n/api/pt.json i18n/filerepo/zh-hans.json i18n/validator/zh-hans.json i18n/validator/ug-arab.json i18n/upload/lv.json i18n/filerepo/az.json i18n/credits/ba.json i18n/settings/ast.json i18n/filerepo/sr-el.json i18n/extjs/ar.json i18n/settings/bn.json i18n/extjs/qqq.json i18n/ooui/fr.json i18n/deferred/te.json i18n/credits/ja.json i18n/credits/fi.json i18n/extjs/ig.json i18n/deferred/pt.json i18n/core/tt-cyrl.json i18n/deferred/eo.json resources/bluespice.extjs/BS/action/Base.js i18n/ooui/gl.json i18n/deferred/en.json i18n/extjs/kiu.json i18n/filerepo/it.json i18n/core/yi.json i18n/ooui/zh-hans.json i18n/deferred/atj.json i18n/validator/da.json i18n/validator/sco.json i18n/core/cv.json i18n/deferred/zgh.json i18n/extjs-portal/my.json i18n/ooui/pt-br.json i18n/core/krc.json i18n/validator/en.json i18n/extjs/lrc.json i18n/core/nds-nl.json i18n/diagnostics/br.json resources/bluespice.extjs/BS/form/action/MediaWikiApiCall.js i18n/filerepo/be-tarask.json i18n/ooui/it.json i18n/validator/fa.json i18n/api/de.json i18n/api/eu.json i18n/api/sr-ec.json i18n/validator/ba.json i18n/core/ur.json i18n/upload/zh-hans.json i18n/ooui/ko.json i18n/extjs/arz.json i18n/extjs/nl.json i18n/ooui/de-formal.json i18n/upload/ga.json i18n/extjs-portal/be-tarask.json i18n/api/gl.json i18n/installer/ja.json resources/bluespice.oojs/ui/widget/ObjectInputWidget.js i18n/extjs/br.json i18n/core/nb.json i18n/filerepo/sms.json i18n/core/sd.json i18n/settings/he.json i18n/extjs/kn.json i18n/installer/li.json i18n/extjs-portal/oc.json i18n/filerepo/kjp.json i18n/deferred/ko.json i18n/extjs/tay.json i18n/filerepo/qqq.json i18n/installer/zh-hant.json i18n/installer/lb.json i18n/core/ar.json i18n/diagnostics/qqq.json i18n/upload/mwl.json i18n/ooui/zh-hant.json i18n/core/af.json i18n/api/da.json i18n/credits/te.json i18n/extjs/da.json i18n/core/sl.json i18n/core/gl.json i18n/upload/nah.json i18n/core/vi.json i18n/core/bn.json i18n/upload/fr.json i18n/core/fi.json i18n/diagnostics/ast.json resources/bluespice.extjs/BS/dialog/UploadWarnings.js i18n/settings/nb.json resources/bluespice.extjs/BS/portal/ChartPortlet.js i18n/filerepo/lt.json i18n/extjs/zgh.json i18n/extjs-portal/ps.json i18n/api/uk.json i18n/ooui/nl.json i18n/validator/uk.json i18n/core/ku-latn.json i18n/settings/qqq.json i18n/api/bn.json i18n/core/fy.json i18n/core/am.json i18n/extjs-portal/qqq.json i18n/core/ka.json i18n/validator/ar.json i18n/api/be-tarask.json i18n/core/tay.json i18n/core/io.json i18n/diagnostics/nb.json i18n/upload/it.json i18n/upload/ckb.json i18n/installer/sr-ec.json i18n/api/ne.json resources/bluespice.extjs/BS/Window.js i18n/core/inh.json i18n/deferred/fr.json i18n/upload/lb.json i18n/extjs/fit.json i18n/core/diq.json i18n/ooui/de.json i18n/diagnostics/ar.json i18n/credits/ce.json i18n/core/lkt.json i18n/core/ti.json i18n/upload/sl.json i18n/credits/pl.json i18n/core/sr-ec.json resources/bluespice.extjs/BS/CRUDGridPanel.js i18n/extjs/om.json i18n/deferred/de.json i18n/ooui/sv.json i18n/settings/pt-br.json i18n/filerepo/ar.json i18n/extjs/ko.json i18n/validator/br.json i18n/credits/lt.json i18n/extjs-portal/ia.json i18n/filerepo/uk.json i18n/ooui/diq.json i18n/upload/vi.json i18n/api/el.json i18n/extjs/zh-hk.json resources/bluespice.extjs/BS/action/APICategoryOperation.js i18n/ooui/fi.json i18n/settings/da.json i18n/core/sms.json i18n/extjs/tt-cyrl.json i18n/extjs/bg.json i18n/deferred/ps.json i18n/ooui/lt.json i18n/extjs-portal/roa-tara.json i18n/ooui/roa-tara.json tests/phpunit/json/runJobsTriggerData.json i18n/filerepo/he.json i18n/validator/it.json resources/bluespice/bluespice.api.js i18n/extjs/lki.json i18n/core/ko.json i18n/credits/ko.json i18n/extjs-portal/ru.json resources/bluespice.extjs/BS/Panel.js i18n/extjs/be-tarask.json i18n/installer/pt.json i18n/extjs/nb.json i18n/credits/kjp.json i18n/diagnostics/hi.json i18n/filerepo/roa-tara.json i18n/credits/br.json i18n/filerepo/szy.json i18n/extjs/nah.json resources/bluespice.oojs/bluespice.ui.js i18n/validator/lb.json i18n/credits/ru.json composer.json i18n/extjs/af.json resources/bluespice.extjs/BS/action/APIAddCategories.js i18n/deferred/tly.json i18n/credits/en.json i18n/diagnostics/av.json i18n/settings/es.json i18n/validator/ast.json resources/bluespice.oojs/ui/widget/KeyObjectInputWidget.js i18n/deferred/zh-hant.json i18n/upload/ur.json i18n/api/ar.json resources/bluespice.extjs/BS/form/SimpleSelectBox.js resources/bluespice/bluespice.xhr.js i18n/diagnostics/sl.json i18n/filerepo/mr.json i18n/filerepo/ig.json i18n/core/pl.json i18n/core/ja.json i18n/diagnostics/gl.json i18n/extjs/tr.json i18n/extjs-portal/he.json i18n/upload/mr.json i18n/core/ca.json i18n/core/is.json i18n/deferred/ht.json i18n/validator/eo.json i18n/installer/ast.json i18n/credits/zh-hans.json i18n/credits/vi.json i18n/extjs/it.json i18n/deferred/uk.json resources/bluespice.extjs/BS/form/UserCombo.js i18n/api/lb.json i18n/extjs/inh.json i18n/core/de.json i18n/ooui/ja.json i18n/credits/hy.json i18n/core/ta.json i18n/upload/sco.json i18n/filerepo/kiu.json i18n/deferred/szy.json i18n/credits/kn.json resources/bluespice/bluespice.testsystem.js i18n/validator/sv.json i18n/deferred/ast.json i18n/diagnostics/be-tarask.json i18n/extjs-portal/fi.json i18n/upload/ig.json i18n/deferred/da.json i18n/diagnostics/hu.json i18n/diagnostics/ba.json i18n/extjs/tl.json i18n/extjs/ne.json i18n/extjs/fr.json i18n/api/jv.json i18n/extjs/hr.json i18n/filerepo/id.json i18n/extjs/lt.json i18n/extjs-portal/krc.json i18n/upload/kab.json i18n/ooui/qqq.json i18n/core/sv.json i18n/diagnostics/vi.json i18n/filerepo/zh-hk.json i18n/core/fit.json i18n/settings/id.json i18n/settings/mk.json i18n/diagnostics/ksh.json resources/bluespice.extjs/BS/ConfirmDialog.js i18n/upload/io.json resources/bluespice/bluespice.string.js resources/bluespice.oojs/ui/widget/KeyValueInputWidget.js i18n/api/qqq.json i18n/core/udm.json i18n/diagnostics/sv.json i18n/diagnostics/nl.json i18n/deferred/el.json i18n/settings/my.json i18n/installer/be-tarask.json i18n/deferred/mk.json i18n/upload/de-formal.json i18n/extjs/ro.json i18n/upload/ja.json i18n/upload/sms.json i18n/core/nds.json i18n/diagnostics/ko.json resources/bluespice.extjs/BS/portal/PortalDropZone.js i18n/deferred/pt-br.json i18n/core/bg.json i18n/extjs/pt-br.json i18n/credits/tt-cyrl.json i18n/extjs/sco.json i18n/api/zh-hant.json i18n/upload/eo.json i18n/extjs-portal/lb.json i18n/extjs-portal/sw.json i18n/core/ckb.json i18n/extjs/eml.json i18n/filerepo/lfn.json resources/bluespice.extjs/BS/dialog/BatchActions.js i18n/upload/hi.json i18n/credits/cv.json i18n/settings/tr.json i18n/settings/sv.json i18n/diagnostics/en.json i18n/extjs/hu.json resources/bluespice.extjs/BS/form/field/UserTag.js i18n/extjs-portal/ast.json i18n/credits/th.json i18n/extjs/udm.json i18n/ooui/ru.json i18n/credits/lb.json i18n/filerepo/tr.json i18n/upload/inh.json i18n/filerepo/es.json i18n/api/su.json i18n/core/tyv.json i18n/extjs-portal/tr.json i18n/installer/oc.json i18n/upload/da.json i18n/core/be-tarask.json i18n/core/jbo.json i18n/api/sl.json extension.json i18n/extjs/fa.json i18n/ooui/sw.json i18n/api/pl.json i18n/upload/gl.json i18n/extjs/azb.json resources/bluespice.extjs/BS/tree/Categories.js i18n/filerepo/tg-cyrl.json i18n/extjs/ur.json i18n/filerepo/sco.json i18n/ooui/es.json i18n/extjs-portal/lag.json i18n/extjs/cv.json i18n/api/sv.json i18n/extjs/shn.json i18n/core/crh-latn.json i18n/installer/es.json i18n/validator/de.json i18n/filerepo/pt.json i18n/filerepo/ast.json i18n/filerepo/ko.json i18n/core/bgn.json i18n/settings/sr-el.json i18n/deferred/br.json i18n/ooui/he.json i18n/extjs-portal/hy.json i18n/credits/szy.json i18n/extjs-portal/ba.json i18n/extjs/mk.json i18n/core/atj.json i18n/credits/pt-br.json resources/bluespice/bluespice.treepanel.js i18n/deferred/nb.json i18n/deferred/li.json i18n/core/kiu.json i18n/filerepo/atj.json i18n/upload/fi.json i18n/extjs/ca.json i18n/credits/eu.json i18n/credits/li.json i18n/upload/pt-br.json i18n/extjs-portal/li.json i18n/credits/nah.json i18n/validator/es.json i18n/extjs/ug-arab.json resources/bluespice.extjs/BS/action/APICopyPage.js i18n/validator/ne.json i18n/installer/diq.json i18n/installer/nb.json i18n/validator/ksh.json i18n/diagnostics/it.json resources/bluespice.extjs/BS/flyout/TwoColumnsBase.js i18n/installer/gl.json i18n/deferred/pnb.json resources/bluespice/bluespice.loadIndicator.js i18n/core/lzh.json i18n/settings/eo.json i18n/upload/ti.json resources/bluespice.extjs/BS/model/File.js i18n/upload/ast.json i18n/credits/lv.json i18n/upload/he.json i18n/core/kk-cyrl.json i18n/core/ba.json i18n/ooui/lb.json i18n/core/da.json i18n/validator/tr.json i18n/api/ast.json i18n/ooui/io.json i18n/upload/mt.json i18n/ooui/en.json i18n/extjs-portal/zh-hans.json i18n/settings/de.json i18n/upload/es.json resources/bluespice.oojs/ui/widget/StoreComboBoxInput.js i18n/deferred/tcy.json i18n/credits/bn.json i18n/credits/sk.json i18n/core/uz.json i18n/deferred/ku-latn.json i18n/core/smn.json resources/bluespice/bluespice.tooltip.js i18n/core/hyw.json i18n/extjs/ta.json i18n/filerepo/de.json i18n/extjs/te.json i18n/settings/fi.json i18n/api/mk.json i18n/extjs/hyw.json i18n/upload/szy.json i18n/diagnostics/sco.json i18n/extjs/ky.json i18n/credits/se.json i18n/extjs-portal/da.json i18n/credits/id.json i18n/extjs/roa-tara.json i18n/upload/th.json i18n/settings/ti.json i18n/extjs-portal/gl.json i18n/extjs-portal/nb.json i18n/settings/li.json i18n/extjs/bgn.json i18n/ooui/id.json i18n/validator/ia.json i18n/extjs/la.json i18n/diagnostics/he.json i18n/core/ro.json i18n/core/crh-cyrl.json i18n/ooui/nb.json i18n/filerepo/bgn.json i18n/core/vec.json i18n/deferred/ja.json i18n/filerepo/ce.json i18n/credits/nl.json i18n/upload/mk.json i18n/extjs/szy.json resources/bluespice.extjs/BS/action/APISetCategories.js i18n/credits/he.json package-lock.json resources/bluespice/bluespice.ping.js i18n/extjs/kk-cyrl.json i18n/validator/pl.json i18n/credits/lki.json i18n/deferred/th.json i18n/core/en.json i18n/installer/fr.json i18n/upload/uk.json i18n/ooui/sr-ec.json resources/bluespice.extjs/BS/flyout/TabbedDataViewBase.js i18n/core/sw.json i18n/core/pnb.json i18n/api/hu.json i18n/credits/sr-ec.json i18n/core/sr-el.json i18n/validator/ja.json i18n/installer/sv.json i18n/upload/ar.json i18n/core/pt-br.json i18n/extjs/crh-cyrl.json i18n/credits/sd.json i18n/diagnostics/eo.json i18n/settings/cs.json i18n/deferred/fi.json i18n/extjs-portal/mk.json i18n/core/uk.json i18n/ooui/sr-el.json resources/bluespice/bluespice.extensionManager.js i18n/diagnostics/pms.json i18n/filerepo/yue.json i18n/credits/gcr.json resources/bluespice.extjs/BS/form/NamespaceCombo.js i18n/diagnostics/fr.json i18n/core/sh.json i18n/ooui/ne.json resources/bluespice.extjs/BS/model/User.js i18n/filerepo/mt.json i18n/api/fr.json i18n/api/zh-hans.json i18n/extjs/diq.json i18n/extjs/be.json resources/bluespice.extjs/BS/model/Category.js i18n/extjs/cu.json resources/bluespice.extjs/BS/action/APIDeletePage.js resources/bluespice.extjs/BS/form/CategoryTree.js resources/bluespice/bluespice.html.formfields.sortable.js i18n/validator/fr.json i18n/filerepo/yo.json i18n/settings/gl.json i18n/extjs/uk.json i18n/settings/sl.json i18n/validator/roa-tara.json i18n/core/lag.json i18n/core/el.json i18n/extjs/nqo.json i18n/extjs/ia.json i18n/upload/eu.json i18n/settings/fit.json resources/bluespice.extjs/BS/dialog/Upload.js i18n/extjs-portal/pt.json i18n/upload/pl.json resources/bluespice/bluespice.js resources/bluespice.extjs/BS/portal/HTMLPortlet.js i18n/filerepo/ku-latn.json i18n/filerepo/hyw.json i18n/core/zgh.json resources/bluespice.extjs/BS/form/UploadPanel.js i18n/ooui/da.json i18n/installer/roa-tara.json i18n/installer/eo.json i18n/credits/ia.json i18n/extjs-portal/eo.json i18n/ooui/be-tarask.json i18n/extjs/rmc.json i18n/upload/bg.json i18n/api/pt-br.json i18n/api/bg.json i18n/extjs/pa.json i18n/diagnostics/pl.json i18n/credits/ta.json i18n/core/az.json i18n/api/tcy.json i18n/upload/smn.json i18n/installer/pl.json i18n/api/fi.json i18n/filerepo/oc.json i18n/extjs/ja.json i18n/credits/qqq.json i18n/deferred/diq.json i18n/filerepo/nb.json i18n/upload/diq.json i18n/core/tr.json i18n/extjs/ka.json i18n/extjs-portal/lv.json i18n/upload/pt.json i18n/ooui/ast.json i18n/core/cs.json i18n/api/nl.json i18n/extjs-portal/ksh.json i18n/filerepo/smn.json i18n/upload/ku-latn.json i18n/credits/de.json i18n/upload/ia.json i18n/filerepo/skr-arab.json i18n/settings/bg.json i18n/core/be.json i18n/deferred/sco.json resources/bluespice.oojs/ui/widget/UserPicker.js i18n/api/en.json i18n/validator/he.json i18n/ooui/bg.json i18n/extjs/crh-latn.json i18n/core/gcr.json i18n/validator/pt.json i18n/settings/dty.json i18n/credits/lfn.json i18n/upload/wuu.json i18n/extjs/se.json i18n/deferred/lfn.json i18n/core/ru.json i18n/deferred/sr-el.json i18n/deferred/sl.json i18n/installer/ba.json i18n/api/ba.json i18n/upload/en-gb.json i18n/deferred/aeb-arab.json i18n/diagnostics/mk.json i18n/extjs/zh-hans.json i18n/extjs/tcy.json i18n/extjs-portal/vi.json i18n/filerepo/su.json i18n/extjs/lb.json i18n/extjs/skr-arab.json i18n/extjs/si.json i18n/deferred/ti.json i18n/settings/it.json i18n/ooui/hr.json i18n/filerepo/li.json i18n/core/yua.json i18n/settings/zh-hans.json i18n/extjs/tly.json i18n/filerepo/fa.json i18n/extjs-portal/bg.json i18n/diagnostics/pt-br.json i18n/core/br.json i18n/core/rmf.json i18n/filerepo/te.json i18n/validator/pt-br.json i18n/deferred/hu.json i18n/installer/de.json i18n/filerepo/bn.json i18n/core/pt.json i18n/api/mr.json i18n/upload/zh-hant.json i18n/installer/tr.json i18n/diagnostics/fa.json i18n/extjs/bs.json i18n/extjs/tg-cyrl.json i18n/deferred/lb.json i18n/deferred/gl.json i18n/deferred/lt.json i18n/ooui/uk.json i18n/core/bto.json i18n/settings/hy.json i18n/filerepo/sv.json i18n/settings/ca.json i18n/deferred/cs.json i18n/extjs/mt.json i18n/upload/en.json i18n/upload/sr-ec.json i18n/credits/gl.json resources/bluespice.oojs/ui/widget/util/UserMenuOption.js resources/bluespice.extjs/BS/panel/BatchActions.js i18n/upload/el.json i18n/deferred/ca.json i18n/filerepo/eo.json i18n/deferred/qqq.json resources/bluespice.extjs/BS/portal/Portlet.js resources/bluespice.extjs/BS/store/ApiCategory.js i18n/extjs-portal/br.json i18n/diagnostics/ia.json i18n/extjs-portal/ko.json i18n/core/fr.json i18n/core/dty.json i18n/api/lt.json i18n/deferred/ru.json i18n/extjs/en.json i18n/extjs/es.json i18n/extjs/de-formal.json i18n/upload/tg-cyrl.json i18n/api/ja.json i18n/api/te.json i18n/diagnostics/el.json i18n/extjs/hy.json i18n/core/tg-cyrl.json i18n/extjs-portal/uk.json i18n/deferred/kjp.json i18n/diagnostics/mg.json i18n/extjs/smn.json Gruntfile.js resources/bluespice.extjs/BS/SimpleDialog.js i18n/extjs/eo.json i18n/filerepo/bg.json i18n/extjs/pl.json i18n/core/av.json i18n/installer/ksh.json i18n/deferred/de-formal.json i18n/settings/ar.json i18n/deferred/be-tarask.json i18n/filerepo/el.json i18n/extjs/su.json i18n/credits/mwl.json i18n/filerepo/ka.json i18n/diagnostics/pt.json i18n/installer/ar.json i18n/core/ce.json i18n/extjs-portal/rmf.json i18n/core/ast.json i18n/filerepo/io.json i18n/filerepo/tt-cyrl.json i18n/settings/el.json i18n/filerepo/diq.json i18n/upload/de.json i18n/deferred/ms.json i18n/extjs-portal/kn.json i18n/settings/te.json i18n/credits/pnb.json i18n/credits/hu.json i18n/core/kn.json i18n/credits/ast.json i18n/filerepo/mk.json i18n/settings/pl.json i18n/filerepo/zh-hant.json i18n/core/trv.json resources/bluespice/bluespice.util.js i18n/core/sco.json resources/bluespice/bluespice.alerts.js i18n/extjs/ast.json i18n/deferred/sr-ec.json i18n/extjs-portal/sr-el.json i18n/validator/vi.json i18n/filerepo/lb.json i18n/deferred/mt.json i18n/api/de-formal.json i18n/credits/sr-el.json i18n/upload/hyw.json i18n/core/so.json i18n/credits/ur.json i18n/extjs/atj.json i18n/credits/uk.json i18n/extjs/nds-nl.json i18n/api/lij.json i18n/extjs/cs.json i18n/upload/sr-el.json i18n/validator/hi.json resources/bluespice.extjs/BS/store/ApiGroup.js i18n/api/nb.json i18n/extjs/ru.json i18n/extjs-portal/eu.json i18n/credits/sco.json resources/bluespice.oojs/ui/widget/StoreApiBoundComboBoxInput.js i18n/deferred/tay.json i18n/extjs/lzh.json i18n/filerepo/eu.json i18n/extjs-portal/sr-ec.json i18n/api/fa.json i18n/extjs-portal/ja.json resources/bluespice.extjs/BS/portal/PortalPanel.js i18n/settings/skr-arab.json i18n/credits/io.json i18n/credits/fa.json i18n/extjs-portal/bgn.json i18n/ooui/wuu.json i18n/filerepo/da.json i18n/core/as.json i18n/settings/nl.json i18n/extjs-portal/es.json resources/bluespice.extjs/BS/form/field/NamespaceTag.js i18n/filerepo/pt-br.json i18n/extjs/yi.json i18n/core/mwl.json i18n/upload/nb.json i18n/extjs-portal/tcy.json i18n/upload/nl.json i18n/settings/ja.json i18n/credits/bg.json i18n/settings/fr.json i18n/core/lb.json resources/bluespice.extjs/BS/store/LocalNamespaces.js i18n/extjs/vec.json i18n/extjs-portal/zh-hant.json i18n/credits/mk.json i18n/core/tly.json i18n/extjs/sdh.json i18n/api/ko.json i18n/credits/el.json i18n/validator/sr-ec.json i18n/diagnostics/yi.json i18n/core/skr-arab.json i18n/deferred/id.json resources/bluespice.extjs/BS/portal/PortalColumn.js resources/bluespice.extjs/BS/model/Title.js i18n/credits/tr.json i18n/core/fa.json i18n/deferred/hyw.json i18n/filerepo/ru.json i18n/upload/roa-tara.json i18n/extjs-portal/sd.json i18n/extjs/gl.json i18n/validator/ko.json i18n/deferred/ksh.json i18n/upload/hu.json i18n/deferred/es.json i18n/extjs-portal/lt.json i18n/installer/fi.json i18n/extjs/pt.json i18n/upload/pnb.json i18n/credits/nb.json i18n/credits/ti.json i18n/extjs/ce.json resources/bluespice/bluespice.config.js i18n/filerepo/th.json i18n/upload/my.json i18n/settings/ckb.json i18n/ooui/th.json i18n/ooui/ar.json i18n/validator/ce.json i18n/credits/ar.json i18n/deferred/sv.json i18n/diagnostics/tr.json i18n/installer/mk.json resources/bluespice.extjs/bluespice.extjs.js resources/bluespice.extjs/BS/store/BSApi.js i18n/diagnostics/roa-tara.json i18n/core/id.json i18n/diagnostics/diq.json resources/bluespice.extjs/BS/store/ApiUser.js i18n/deferred/ne.json i18n/validator/bn.json i18n/deferred/nl.json i18n/ooui/eo.json i18n/filerepo/zgh.json i18n/settings/roa-tara.json i18n/extjs/sl.json resources/bluespice.extjs/BS/form/CategoryBoxSelect.js i18n/deferred/bn.json i18n/extjs/ckb.json i18n/extjs/he.json i18n/deferred/vec.json i18n/extjs/ti.json i18n/extjs-portal/cv.json i18n/core/oc.json i18n/credits/my.json i18n/core/ug-arab.json i18n/settings/lv.json i18n/settings/zh-hant.json i18n/credits/bgn.json i18n/settings/diq.json i18n/credits/sv.json i18n/ooui/bn.json i18n/diagnostics/lij.json i18n/extjs/fi.json i18n/ooui/mk.json i18n/extjs/bcl.json i18n/extjs-portal/id.json resources/bluespice.extjs/BS/model/Namespace.js i18n/ooui/skr-arab.json i18n/upload/lt.json i18n/upload/tly.json i18n/extjs/mn.json i18n/deferred/bs.json i18n/api/roa-tara.json i18n/core/cnh.json i18n/deferred/pl.json i18n/deferred/he.json i18n/extjs-portal/lki.json i18n/core/mk.json i18n/core/eo.json i18n/ooui/pl.json i18n/core/lt.json i18n/settings/lb.json i18n/core/mr.json i18n/installer/de-formal.json i18n/extjs/so.json i18n/upload/qqq.json i18n/settings/ru.json i18n/extjs-portal/it.json i18n/api/es.json i18n/extjs/kjp.json i18n/core/te.json i18n/extjs-portal/te.json i18n/extjs-portal/sv.json i18n/extjs-portal/diq.json i18n/filerepo/la.json i18n/settings/en.json i18n/extjs/oc.json package.json i18n/extjs/zh-hant.json i18n/core/csb.json i18n/extjs-portal/sco.json i18n/extjs/id.json i18n/core/olo.json i18n/installer/en.json resources/bluespice.extjs/BS/tree/WikiSubPages.js i18n/validator/zh-hant.json i18n/extjs/li.json i18n/extjs-portal/el.json i18n/upload/id.json i18n/filerepo/nds-nl.json i18n/ooui/hy.json i18n/installer/ko.json i18n/credits/ksh.json i18n/extjs/mr.json i18n/core/hu.json i18n/upload/got.json i18n/credits/es.json i18n/diagnostics/oc.json i18n/core/th.json i18n/filerepo/lv.json i18n/extjs-portal/ce.json i18n/extjs-portal/de.json i18n/upload/fit.json i18n/extjs/sr-ec.json resources/bluespice.extjs/BS/form/field/CategoryTag.js i18n/filerepo/nl.json i18n/extjs/el.json i18n/credits/lzh.json i18n/api/eo.json i18n/extjs/pnb.json i18n/core/tl.json i18n/deferred/bcl.json i18n/upload/tr.json i18n/installer/zh-hans.json i18n/core/kjp.json i18n/validator/qqq.json i18n/upload/be-tarask.json i18n/installer/pt-br.json i18n/filerepo/be.json resources/bluespice.extjs/BS/form/CategoryCombo.js resources/bluespice.extjs/BS/override/grid/column/Action.js i18n/core/lv.json i18n/filerepo/sw.json i18n/filerepo/br.json i18n/installer/hi.json i18n/installer/fa.json i18n/credits/de-formal.json i18n/credits/da.json resources/bluespice.extjs/BS/form/field/GroupTag.js i18n/core/he.json i18n/installer/lij.json i18n/validator/ru.json i18n/deferred/hy.json i18n/extjs-portal/io.json i18n/installer/el.json i18n/settings/ka.json i18n/core/my.json i18n/credits/yi.json i18n/extjs/ban.json i18n/validator/mk.json i18n/credits/azb.json i18n/ooui/tr.json i18n/credits/eo.json i18n/extjs-portal/pt-br.json i18n/deferred/my.json i18n/diagnostics/ja.json i18n/credits/tcy.json i18n/core/ps.json i18n/core/km.json i18n/extjs/sv.json i18n/extjs/sd.json i18n/deferred/ba.json i18n/deferred/it.json i18n/deferred/io.json i18n/core/zh-hant.json i18n/extjs/eu.json i18n/core/myv.json resources/bluespice.extjs/BS/PromptDialog.js i18n/deferred/bg.json i18n/diagnostics/lt.json i18n/diagnostics/zh-hans.json i18n/installer/bg.json i18n/extjs/xmf.json i18n/settings/io.json i18n/api/ksh.json i18n/upload/lfn.json i18n/core/zh-hans.json i18n/api/tr.json i18n/core/szy.json i18n/validator/sr-el.json i18n/credits/it.json resources/bluespice.oojs/ui/widget/JsonArrayInputWidget.js resources/bluespice.extjs/BS/dialog/PageExport.js i18n/credits/oc.json i18n/upload/li.json i18n/validator/cs.json i18n/validator/lt.json resources/bluespice.extjs/BS/portal/GridPortlet.js i18n/extjs/ba.json i18n/filerepo/sr-ec.json i18n/core/mo.json i18n/ooui/pt.json i18n/deferred/eu.json resources/bluespice.extjs/BS/portal/APIPortlet.js i18n/core/de-formal.json i18n/upload/bn.json i18n/extjs/bho.json i18n/settings/be.json i18n/core/nl.json i18n/deferred/ig.json i18n/core/ksh.json tests/phpunit/json/pages.json i18n/installer/nl.json i18n/extjs/kab.json i18n/ooui/te.json i18n/extjs/fy.json i18n/validator/gl.json i18n/core/ia.json i18n/extjs/io.json i18n/credits/km.json i18n/diagnostics/uk.json i18n/ooui/el.json i18n/deferred/zh-hans.json i18n/core/ary.json i18n/extjs/sr-el.json i18n/installer/mg.json i18n/extjs-portal/fr.json i18n/filerepo/my.json i18n/diagnostics/ce.json i18n/filerepo/fi.json i18n/credits/roa-tara.json i18n/validator/nb.json resources/bluespice.extjs/BS/CRUDPanel.js i18n/core/or.json i18n/credits/smn.json i18n/extjs/ht.json i18n/deferred/tr.json i18n/extjs-portal/en.json i18n/extjs-portal/fy.json i18n/credits/be.json i18n/deferred/ar.json i18n/installer/hu.json i18n/extjs/sh.json i18n/extjs/ps.json i18n/settings/ko.json resources/bluespice.extjs/BS/action/APIMovePage.js i18n/diagnostics/eu.json i18n/installer/uk.json i18n/core/qu.json tests/phpunit/json/users.json i18n/credits/sl.json i18n/core/it.json i18n/installer/sl.json i18n/filerepo/hy.json i18n/filerepo/pnb.json i18n/credits/fy.json i18n/extjs-portal/pl.json resources/bluespice/bluespice.html.formfields.multiselect.js i18n/installer/br.json i18n/extjs-portal/sl.json i18n/ooui/fa.json i18n/diagnostics/sr-ec.json resources/bluespice.extjs/BS/grid/FileRepo.js i18n/core/hi.json i18n/installer/pms.json i18n/extjs-portal/nds-nl.json i18n/extjs/lv.json resources/bluespice-logo/bluespice-logo.json i18n/extjs-portal/pnb.json i18n/diagnostics/li.json i18n/settings/fa.json i18n/settings/th.json i18n/credits/ps.json i18n/extjs/as.json i18n/api/br.json i18n/extjs/de.json resources/bluespice.extjs/BS/action/APIRemoveCategories.js i18n/upload/ko.json resources/bluespice/bluespice.html.formfields.namespacemultiselect.js i18n/core/lrc.json i18n/api/he.json i18n/credits/fr.json i18n/extjs-portal/nl.json i18n/extjs/hi.json i18n/deferred/ia.json i18n/extjs/krc.json i18n/upload/ru.json i18n/diagnostics/de.json i18n/diagnostics/zh-hant.json resources/bluespice.extjs/BS/action/APIEditPage.js i18n/settings/kjp.json i18n/core/zh-hk.json resources/bluespice.oojs/ui/widget/TitleComboBoxInput.js i18n/upload/te.json resources/bluespice.extjs/BS/panel/Upload.js i18n/api/hsn.json i18n/filerepo/nah.json i18n/filerepo/en.json i18n/core/ms.json i18n/upload/atj.json resources/bluespice.extjs/BS/form/field/GroupCombo.js resources/bluespice.extjs/bluespice.extjs.loadPlaceholder.js i18n/upload/yo.json i18n/diagnostics/ru.json i18n/installer/sr-el.json i18n/extjs/th.json -f json
[{"filePath":"/src/repo/Gruntfile.js","messages":[{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":5,"column":2,"nodeType":"VariableDeclaration","messageId":"top","endLine":5,"endColumn":53},{"ruleId":"compat/compat","severity":1,"message":"Object.assign() is not supported in Safari 5.1, iOS Safari 6.0-6.1, IE 11","line":20,"column":11,"nodeType":"MemberExpression","endLine":20,"endColumn":24}],"errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":"module.exports = function ( grunt ) {\n\tgrunt.loadNpmTasks( 'grunt-eslint' );\n\tgrunt.loadNpmTasks( 'grunt-banana-checker' );\n\n\tvar conf = grunt.file.readJSON( 'extension.json' );\n\tgrunt.initConfig( {\n\t\teslint: {\n\t\t\toptions: {\n\t\t\t\tcache: true\n\t\t\t},\n\t\t\tsrc: [\n\t\t\t\t'**/*.{js,json}',\n\t\t\t\t'!node_modules/**',\n\t\t\t\t'!vendor/**',\n\t\t\t\t'!resources/bluespice.extjs/Ext.ux/**',\n\t\t\t\t'!resources/extjs/**'\n\t\t\t]\n\t\t},\n\t\t// eslint-disable-next-line es/no-object-assign\n\t\tbanana: Object.assign(\n\t\t\tconf.MessagesDirs,\n\t\t\t{\n\t\t\t\toptions: {\n\t\t\t\t\trequireLowerCase: 'initial'\n\t\t\t\t}\n\t\t\t}\n\t\t)\n\t} );\n\n\tgrunt.registerTask( 'test', [ 'eslint', 'banana' ] );\n\tgrunt.registerTask( 'default', 'test' );\n};\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/composer.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/extension.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/ar.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/ast.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/ba.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/be-tarask.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/bg.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/bn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/da.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/de-formal.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/de.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/diq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/en.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/eo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/es.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/eu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/fa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/fi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/fr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/gl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/he.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/hsn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/hu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/it.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/ja.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/jv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/ko.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/ksh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/lb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/lij.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/lt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/mk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/mr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/nb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/ne.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/nl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/pl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/pt-br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/pt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/qqq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/roa-tara.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/ru.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/sl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/sr-ec.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/sr-el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/su.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/sv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/tcy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/te.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/tr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/uk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/zh-hans.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/api/zh-hant.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/af.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/am.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/ar.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/ary.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/as.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/ast.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/atj.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/av.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/az.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/ba.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/be-tarask.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/be.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/bg.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/bgn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/bn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/bs.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/bto.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/ca.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/ce.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/ckb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/cnh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/crh-cyrl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/crh-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/cs.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/csb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/cv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/da.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/de-formal.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/de.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/diq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/dty.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/en.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/eo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/es.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/eu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/fa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/fi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/fit.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/fr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/fy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/gcr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/gl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/he.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/hi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/hu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/hy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/hyw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/ia.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/id.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/ig.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/inh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/io.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/is.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/it.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/ja.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/jbo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/ka.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/kiu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/kjp.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/kk-cyrl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/km.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/kn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/ko.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/krc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/ksh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/ku-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/lag.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/lb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/lki.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/lkt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/lrc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/lt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/lv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/lzh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/min.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/mk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/mo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/mr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/ms.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/mwl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/my.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/myv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/nah.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/nb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/nds-nl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/nds.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/ne.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/nl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/oc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/olo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/or.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/pl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/pnb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/ps.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/pt-br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/pt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/qqq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/qu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/rmf.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/ro.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/roa-tara.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/ru.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/sco.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/sd.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/sh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/skr-arab.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/sl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/smn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/sms.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/so.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/sr-ec.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/sr-el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/sv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/sw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/szy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/ta.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/tay.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/tcy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/te.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/tg-cyrl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/th.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/ti.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/tl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/tly.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/tr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/trv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/tt-cyrl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/tyv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/udm.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/ug-arab.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/uk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/ur.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/uz.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/vec.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/vi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/yi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/yua.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/zgh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/zh-hans.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/zh-hant.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/core/zh-hk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/ar.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/ast.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/av.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/azb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/ba.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/be-tarask.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/be.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/bg.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/bgn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/bn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/ce.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/cv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/da.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/de-formal.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/de.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/diq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/en.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/eo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/es.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/eu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/fa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/fi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/fr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/fy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/gcr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/gl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/he.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/hu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/hy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/ia.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/id.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/inh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/io.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/it.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/ja.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/kjp.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/km.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/kn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/ko.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/ksh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/lb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/lfn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/li.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/lki.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/lt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/lv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/lzh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/mk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/mwl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/my.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/nah.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/nb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/nl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/oc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/pl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/pnb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/ps.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/pt-br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/pt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/qqq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/roa-tara.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/ru.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/sco.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/sd.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/se.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/sk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/sl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/smn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/sr-ec.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/sr-el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/sv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/szy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/ta.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/tcy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/te.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/th.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/ti.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/tr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/tt-cyrl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/uk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/ur.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/vi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/yi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/zh-hans.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/credits/zh-hant.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/aeb-arab.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/ar.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/ast.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/atj.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/ba.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/bcl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/be-tarask.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/bg.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/bn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/bs.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/ca.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/cs.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/da.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/de-formal.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/de.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/diq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/en.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/eo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/es.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/eu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/fa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/fi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/fr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/gl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/he.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/ht.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/hu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/hy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/hyw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/ia.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/id.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/ig.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/io.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/it.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/ja.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/kjp.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/ko.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/ksh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/ku-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/lb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/lfn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/li.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/lt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/mk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/ms.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/mt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/my.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/nb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/ne.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/nl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/pl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/pnb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/ps.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/pt-br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/pt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/qqq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/roa-tara.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/ru.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/sco.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/sl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/sr-ec.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/sr-el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/sv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/szy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/tay.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/tcy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/te.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/th.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/ti.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/tly.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/tr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/uk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/vec.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/zgh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/zh-hans.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/deferred/zh-hant.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/ar.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/ast.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/av.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/ba.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/be-tarask.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/bg.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/ce.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/de.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/diq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/en.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/eo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/es.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/eu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/fa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/fr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/gl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/he.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/hi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/hu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/ia.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/id.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/it.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/ja.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/ko.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/ksh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/li.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/lij.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/lt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/mg.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/mk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/nb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/nl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/oc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/pl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/pms.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/pt-br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/pt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/qqq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/roa-tara.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/ru.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/sco.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/sl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/sr-ec.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/sr-el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/sv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/tr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/uk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/vi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/yi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/zh-hans.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/diagnostics/zh-hant.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/ar.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/ast.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/ba.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/be-tarask.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/bg.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/bgn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/ce.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/cv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/da.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/de.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/diq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/en.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/eo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/es.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/eu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/fa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/fi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/fr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/fy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/gl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/he.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/hu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/hy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/ia.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/id.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/io.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/it.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/ja.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/kn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/ko.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/krc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/ksh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/lag.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/lb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/li.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/lki.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/lt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/lv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/mk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/my.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/nb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/nds-nl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/nl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/oc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/pl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/pnb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/ps.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/pt-br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/pt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/qqq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/rmf.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/roa-tara.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/ru.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/sco.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/sd.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/sl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/sr-ec.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/sr-el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/sv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/sw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/ta.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/tcy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/te.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/tr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/uk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/vi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/zh-hans.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs-portal/zh-hant.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/aeb-arab.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/af.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/ar.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/arz.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/as.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/ast.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/atj.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/azb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/ba.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/ban.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/bcl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/be-tarask.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/be.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/bg.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/bgn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/bho.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/bn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/bs.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/ca.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/ce.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/ckb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/crh-cyrl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/crh-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/cs.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/cu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/cv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/da.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/de-formal.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/de.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/diq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/eml.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/en-gb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/en.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/eo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/es.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/eu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/fa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/fi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/fit.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/fr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/fy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/gl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/he.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/hi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/hr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/ht.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/hu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/hy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/hyw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/ia.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/id.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/ig.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/inh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/io.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/it.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/ja.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/ka.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/kab.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/kiu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/kjp.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/kk-cyrl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/kn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/ko.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/krc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/ksh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/ku-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/ky.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/la.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/lb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/lfn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/li.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/lki.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/lrc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/lt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/lv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/lzh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/mk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/mn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/mr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/mt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/my.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/nah.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/nb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/nds-nl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/ne.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/nl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/nqo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/oc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/om.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/pa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/pl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/pnb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/ps.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/pt-br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/pt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/qqq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/rmc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/rmf.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/ro.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/roa-tara.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/ru.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/sco.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/sd.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/sdh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/se.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/sh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/shn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/si.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/skr-arab.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/sl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/smn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/sms.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/so.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/sr-ec.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/sr-el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/su.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/sv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/szy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/ta.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/tay.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/tcy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/te.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/tg-cyrl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/th.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/ti.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/tl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/tly.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/tr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/tt-cyrl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/udm.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/ug-arab.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/uk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/ur.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/vec.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/vi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/xmf.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/yi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/zgh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/zh-hans.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/zh-hant.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/extjs/zh-hk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/ar.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/ast.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/atj.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/az.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/be-tarask.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/be.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/bg.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/bgn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/bn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/ce.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/da.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/de.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/diq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/en.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/eo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/es.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/eu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/fa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/fi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/fr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/gl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/got.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/he.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/hy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/hyw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/id.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/ig.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/inh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/io.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/it.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/ja.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/ka.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/kiu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/kjp.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/ko.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/ku-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/la.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/lb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/lfn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/li.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/lt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/lv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/mk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/mr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/mt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/my.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/nah.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/nb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/nds-nl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/nl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/oc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/pl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/pnb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/pt-br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/pt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/qqq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/roa-tara.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/ru.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/sco.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/skr-arab.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/sl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/smn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/sms.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/sr-ec.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/sr-el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/su.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/sv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/sw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/szy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/te.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/tg-cyrl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/th.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/tr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/tt-cyrl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/uk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/yo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/yue.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/zgh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/zh-hans.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/zh-hant.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/filerepo/zh-hk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/ar.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/ast.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/ba.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/be-tarask.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/bg.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/de-formal.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/de.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/diq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/en.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/eo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/es.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/fa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/fi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/fr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/gl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/hi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/hu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/it.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/ja.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/ko.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/ksh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/lb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/li.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/lij.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/lt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/mg.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/mk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/nb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/nl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/oc.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/pl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/pms.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/pt-br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/pt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/qqq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/roa-tara.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/ru.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/sl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/sr-ec.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/sr-el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/sv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/tr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/uk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/zh-hans.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/installer/zh-hant.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/ar.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/ast.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/be-tarask.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/bg.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/bn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/da.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/de-formal.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/de.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/diq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/en.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/eo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/es.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/fa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/fi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/fr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/gl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/he.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/hr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/hy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/id.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/io.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/it.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/ja.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/ko.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/lb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/lt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/mk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/nb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/ne.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/nl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/pl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/pt-br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/pt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/qqq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/roa-tara.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/ru.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/skr-arab.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/sr-ec.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/sr-el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/sv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/sw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/te.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/th.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/tr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/uk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/wuu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/zgh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/zh-hans.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/ooui/zh-hant.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/ar.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/ast.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/be-tarask.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/be.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/bg.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/bn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/ca.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/ckb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/cs.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/da.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/de.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/diq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/dty.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/en.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/eo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/es.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/fa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/fi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/fit.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/fr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/gl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/he.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/hy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/id.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/io.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/it.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/ja.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/ka.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/kjp.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/ko.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/lb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/li.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/lv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/mk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/my.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/nb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/nl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/pl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/pt-br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/pt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/qqq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/roa-tara.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/ru.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/skr-arab.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/sl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/sr-ec.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/sr-el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/sv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/te.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/th.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/ti.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/tr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/uk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/zh-hans.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/settings/zh-hant.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/ar.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/ast.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/atj.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/be-tarask.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/bg.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/bn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/ckb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/da.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/de-formal.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/de.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/diq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/en-gb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/en.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/eo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/es.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/eu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/fa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/fi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/fit.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/fr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/ga.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/gl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/got.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/he.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/hi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/hr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/hu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/hy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/hyw.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/ia.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/id.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/ig.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/inh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/io.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/it.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/ja.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/kab.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/ko.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/ku-latn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/lb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/lfn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/li.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/lt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/lv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/mk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/mr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/mt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/mwl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/my.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/nah.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/nb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/nl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/pl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/pnb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/pt-br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/pt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/qqq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/roa-tara.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/ru.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/sco.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/sl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/smn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/sms.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/sr-ec.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/sr-el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/sv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/szy.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/te.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/tg-cyrl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/th.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/ti.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/tly.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/tr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/uk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/ur.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/vi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/wuu.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/yo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/zh-hans.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/upload/zh-hant.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/ar.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/ast.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/ba.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/bn.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/ce.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/cs.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/da.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/de.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/en.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/eo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/es.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/fa.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/fr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/gl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/he.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/hi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/ia.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/it.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/ja.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/ko.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/ksh.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/lb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/lt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/mk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/nb.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/ne.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/nl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/pl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/pt-br.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/pt.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/qqq.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/roa-tara.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/ru.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/sco.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/sl.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/sr-ec.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/sr-el.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/sv.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/tr.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/ug-arab.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/uk.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/vi.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/zh-hans.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/i18n/validator/zh-hant.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/package-lock.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/package.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice-logo/bluespice-logo.json","messages":[],"errorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/AlertDialog.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":11,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":11,"endColumn":24},{"ruleId":"mediawiki/msg-doc","severity":1,"message":"All possible message keys should be documented. See https://w.wiki/PRw for details.","line":13,"column":11,"nodeType":"CallExpression","endLine":13,"endColumn":37}],"errorCount":0,"warningCount":3,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.AlertDialog', {\n\textend: 'BS.SimpleDialog',\n\n\t// Custom Settings\n\ttext: 'setMe',\n\ttextMsg: null,\n\n\tafterInitComponent: function () {\n\t\tthis.callParent( arguments );\n\n\t\tvar text = this.text;\n\t\tif ( this.textMsg ) {\n\t\t\ttext = mw.message( this.textMsg ).plain();\n\t\t}\n\n\t\tthis.cntMain.add( {\n\t\t\thtml: text,\n\t\t\tborder: false,\n\t\t\tmargin: '0 0 5px 0'\n\t\t} );\n\n\t\tthis.buttons = [\n\t\t\tthis.btnOK\n\t\t];\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/CRUDGridPanel.js","messages":[{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"subpackage\".","line":9,"column":null,"nodeType":"Block","endLine":9,"endColumn":null},{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"filesource\".","line":12,"column":null,"nodeType":"Block","endLine":12,"endColumn":null},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":15,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":15,"endColumn":4},{"ruleId":"no-unused-vars","severity":1,"message":"'config' is assigned a value but never used.","line":22,"column":12,"nodeType":"Identifier","messageId":"unusedVar","endLine":22,"endColumn":18},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":48,"column":36,"nodeType":"Identifier","messageId":"undef","endLine":48,"endColumn":39},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":67,"column":15,"nodeType":"Identifier","messageId":"undef","endLine":67,"endColumn":18},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":68,"column":22,"nodeType":"Identifier","messageId":"undef","endLine":68,"endColumn":25},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":124,"column":3,"nodeType":"VariableDeclaration","messageId":"combine","endLine":133,"endColumn":7},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":124,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":133,"endColumn":7},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":124,"column":26,"nodeType":"Identifier","messageId":"undef","endLine":124,"endColumn":29},{"ruleId":"max-len","severity":1,"message":"This line has a length of 121. Maximum allowed is 100.","line":143,"column":1,"nodeType":"Program","messageId":"max","endLine":143,"endColumn":110},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":164,"column":36,"nodeType":"Identifier","messageId":"undef","endLine":164,"endColumn":39},{"ruleId":"no-unused-vars","severity":1,"message":"'opts' is defined but never used.","line":200,"column":56,"nodeType":"Identifier","messageId":"unusedVar","endLine":200,"endColumn":60},{"ruleId":"no-unused-vars","severity":1,"message":"'oSender' is defined but never used.","line":222,"column":32,"nodeType":"Identifier","messageId":"unusedVar","endLine":222,"endColumn":39},{"ruleId":"no-unused-vars","severity":1,"message":"'iRowIndex' is defined but never used.","line":222,"column":41,"nodeType":"Identifier","messageId":"unusedVar","endLine":222,"endColumn":50},{"ruleId":"no-unused-vars","severity":1,"message":"'oEvent' is defined but never used.","line":222,"column":52,"nodeType":"Identifier","messageId":"unusedVar","endLine":222,"endColumn":58},{"ruleId":"no-unused-vars","severity":1,"message":"'row' is defined but never used.","line":231,"column":75,"nodeType":"Identifier","messageId":"unusedVar","endLine":231,"endColumn":78},{"ruleId":"no-unused-vars","severity":1,"message":"'row' is defined but never used.","line":236,"column":77,"nodeType":"Identifier","messageId":"unusedVar","endLine":236,"endColumn":80},{"ruleId":"no-unused-vars","severity":1,"message":"'oButton' is defined but never used.","line":241,"column":28,"nodeType":"Identifier","messageId":"unusedVar","endLine":241,"endColumn":35},{"ruleId":"no-unused-vars","severity":1,"message":"'oEvent' is defined but never used.","line":241,"column":37,"nodeType":"Identifier","messageId":"unusedVar","endLine":241,"endColumn":43},{"ruleId":"no-unused-vars","severity":1,"message":"'oButton' is defined but never used.","line":245,"column":29,"nodeType":"Identifier","messageId":"unusedVar","endLine":245,"endColumn":36},{"ruleId":"no-unused-vars","severity":1,"message":"'oEvent' is defined but never used.","line":245,"column":38,"nodeType":"Identifier","messageId":"unusedVar","endLine":245,"endColumn":44},{"ruleId":"no-unused-vars","severity":1,"message":"'oButton' is defined but never used.","line":249,"column":31,"nodeType":"Identifier","messageId":"unusedVar","endLine":249,"endColumn":38},{"ruleId":"no-unused-vars","severity":1,"message":"'oEvent' is defined but never used.","line":249,"column":40,"nodeType":"Identifier","messageId":"unusedVar","endLine":249,"endColumn":46}],"errorCount":0,"warningCount":24,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/**\n * CRUDGridPanel\n *\n * Part of BlueSpice MediaWiki\n *\n * @author     Robert Vogel <vogel@hallowelt.com>\n * @author     Stephan Muggli <muggli@hallowelt.com>\n * @package    Bluespice_Extensions\n * @subpackage Foundation\n * @copyright  Copyright (C) 2016 Hallo Welt! GmbH, All rights reserved.\n * @license    http://www.gnu.org/copyleft/gpl.html GPL-3.0-only\n * @filesource\n */\n\nExt.define( 'BS.CRUDGridPanel', {\n\textend: 'BS.CRUDPanel',\n\n\t// Custom\n\tpageSize: 20,\n\n\tconstructor: function ( config ) {\n\t\tconfig = config || {};\n\t\tthis.colMainConf = {\n\t\t\tcolumns: [],\n\t\t\tactions: [] // Custom; Used for ActionColumn\n\t\t};\n\n\t\tthis.smMain = null;\n\t\tthis.bbMain = null;\n\t\tthis.colMain = null;\n\t\tthis.gpMainConf = {};\n\n\t\tthis.callParent( arguments );\n\t},\n\n\tmakeItems: function () {\n\t\treturn [\n\t\t\tthis.makeMainGrid()\n\t\t];\n\t},\n\n\tmakeMainStore: function () {\n\t\tthis.strMain.on( 'load', this.onStrMainLoadBase, this );\n\t\treturn this.strMain;\n\t},\n\n\tmakeBBar: function () {\n\t\tthis.bbMain = this.bbMain || new Ext.PagingToolbar( {\n\t\t\tstore: this.strMain,\n\t\t\tdisplayInfo: true// ,\n\t\t\t// displayMsg    : mw.message('bs-extjs-displayMsg').plain(),\n\t\t\t// emptyMsg      : mw.message('bs-extjs-emptyMsg').plain(),\n\t\t\t// beforePageText: mw.message('bs-extjs-beforePageText').plain(),\n\t\t\t// afterPageText : mw.message('bs-extjs-afterPageText').plain(),\n\t\t\t/* items: [\n\t\t\t\t'-',\n\t\t\t\tmw.message('bs-extjs-pageSize').plain()+':',\n\t\t\t\tthis.tfPageSize\n\t\t\t] */\n\t\t} );\n\n\t\treturn this.bbMain;\n\t},\n\n\tmakeMainGrid: function () {\n\t\tvar gridDefaultConf = this.makeGridDefaultConf(),\n\t\t\tgridConf = Ext.applyIf( this.gpMainConf, gridDefaultConf );\n\t\tthis.grdMain = new Ext.grid.GridPanel( gridConf );\n\t\tthis.grdMain.on( 'select', this.onGrdMainRowClick, this );\n\t\tthis.grdMain.on( 'selectionchange', this.onGrdMainSelectionChange, this );\n\n\t\treturn this.grdMain;\n\t},\n\n\tmakeGridDefaultConf: function () {\n\t\treturn {\n\t\t\tcls: 'bs-extjs-crud-grid',\n\t\t\tborder: false,\n\t\t\tenableHdMenu: false,\n\t\t\t// hideHeaders: true,\n\t\t\tloadMask: true,\n\t\t\tminHeight: 200,\n\t\t\tautoHeight: true,\n\t\t\t// region: 'center',\n\t\t\tstripeRows: true,\n\t\t\tautoExpandColumn: 'title', // ignored if viewConfig.forceFit == true\n\t\t\t// Complex\n\t\t\tviewConfig: {\n\t\t\t\t// forceFit: true,\n\t\t\t\tscrollOffset: 1\n\t\t\t},\n\t\t\tstore: this.makeMainStore(),\n\t\t\tcolumns: this.makeGridColumns(),\n\t\t\tselModel: this.makeSelModel(),\n\t\t\tfeatures: this.makeFeatures(),\n\t\t\tplugins: this.makeGridPlugins(),\n\t\t\tbbar: this.makeBBar()\n\t\t};\n\t},\n\n\tmakeGridPlugins: function () {\n\t\treturn [\n\t\t\t'gridfilters'\n\t\t];\n\t},\n\n\tmakeGridColumns: function () {\n\t\tthis.colActions = this.makeActionColumn( this.colMainConf.columns );\n\n\t\treturn {\n\t\t\titems: this.colMainConf.columns,\n\t\t\tdefaults: {\n\t\t\t\tflex: 1\n\t\t\t}\n\t\t};\n\t},\n\n\tmakeActionColumn: function ( cols ) {\n\t\tvar items = this.makeRowActions(),\n\t\t\twidth = items.length * 28; // A standard icon is 24px in width. We add some padding\n\t\tif ( width < 96 ) {\n\t\t\twidth = 96; // We want a minimal width so the header label is not being truncated\n\t\t}\n\t\tvar actionColumn = new Ext.grid.column.Action( {\n\t\t\theader: mw.message( 'bs-extjs-actions-column-header' ).plain(),\n\t\t\tflex: 0,\n\t\t\twidth: width,\n\t\t\tcls: 'bs-extjs-action-column',\n\t\t\titems: items,\n\t\t\tmenuDisabled: true,\n\t\t\thideable: false,\n\t\t\tsortable: false\n\t\t} );\n\n\t\tcols.push( actionColumn );\n\t\treturn actionColumn;\n\t},\n\n\tmakeRowActions: function () {\n\t\tif ( this.opPermitted( 'delete' ) ) {\n\t\t\tthis.colMainConf.actions.unshift( {\n\t\t\t\ticonCls: 'bs-extjs-actioncolumn-icon bs-icon-cross destructive',\n\t\t\t\tglyph: true, // Needed to have the \"BS.override.grid.column.Action\" render an <span> instead of an <img>,\n\t\t\t\ttooltip: mw.message( 'bs-extjs-delete' ).plain(),\n\t\t\t\thandler: this.onActionRemoveClick,\n\t\t\t\tscope: this\n\t\t\t} );\n\t\t}\n\n\t\tif ( this.opPermitted( 'update' ) ) {\n\t\t\tthis.colMainConf.actions.unshift( {\n\t\t\t\ticonCls: 'bs-extjs-actioncolumn-icon bs-icon-wrench progressive',\n\t\t\t\tglyph: true,\n\t\t\t\ttooltip: mw.message( 'bs-extjs-edit' ).plain(),\n\t\t\t\thandler: this.onActionEditClick,\n\t\t\t\tscope: this\n\t\t\t} );\n\t\t}\n\n\t\treturn this.colMainConf.actions;\n\t},\n\n\tmakeSelModel: function () {\n\t\tthis.smMain = this.smMain || new Ext.selection.RowModel( {\n\t\t\tmode: 'SINGLE'\n\t\t} );\n\t\t// TODO: Fix Pagesize\n\t\tthis.smMain.pageSize = this.pageSize;\n\t\treturn this.smMain;\n\t},\n\n\tmakeFeatures: function () {\n\t\treturn [];\n\t},\n\n\tgetSingleSelection: function () {\n\t\tvar selectedRecords = this.grdMain.getSelectionModel().getSelection();\n\t\tif ( selectedRecords.length > 0 ) {\n\t\t\treturn selectedRecords[ 0 ];\n\t\t}\n\t\treturn null;\n\t},\n\n\tonTfPageSizeKeyDown: function ( oSender, oEvent ) {\n\t\t// HINT: http://ssenblog.blogspot.de/2009/12/extjs-grid-dynamic-page-size.html\n\t\tif ( oEvent.getKey() !== 13 ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.bbMain.cursor = 0;\n\t\tthis.smMain.pageSize = parseInt( oSender.getValue() ); // TODO: Fix me\n\t\tthis.strMain.load( {\n\t\t\tparams: {\n\t\t\t\tstart: 0,\n\t\t\t\tlimit: parseInt( oSender.getValue() )\n\t\t\t}\n\t\t} );\n\t},\n\n\tonGrdMainSelectionChange: function ( sender, records, opts ) {\n\t\tif ( records && records.length > 0 ) {\n\t\t\tif ( this.btnEdit ) {\n\t\t\t\tthis.btnEdit.enable();\n\t\t\t}\n\t\t\tif ( this.btnRemove ) {\n\t\t\t\tthis.btnRemove.enable();\n\t\t\t}\n\t\t} else {\n\t\t\tif ( this.btnEdit ) {\n\t\t\t\tthis.btnEdit.disable();\n\t\t\t}\n\t\t\tif ( this.btnRemove ) {\n\t\t\t\tthis.btnRemove.disable();\n\t\t\t}\n\t\t}\n\t\tif ( records && records.length > 1 ) {\n\t\t\tif ( this.btnEdit ) {\n\t\t\t\tthis.btnEdit.disable();\n\t\t\t}\n\t\t}\n\t},\n\tonGrdMainRowClick: function ( oSender, iRowIndex, oEvent ) {},\n\tonStrMainLoadBase: function () {\n\t\tif ( !this.grdMain ) {\n\t\t\treturn;\n\t\t}\n\t\t// All selections have to be deselected otherwise double editing of the same row won't work\n\t\tthis.grdMain.getSelectionModel().deselectAll();\n\t},\n\n\tonActionEditClick: function ( view, rowIndex, colIndex, item, e, record, row ) {\n\t\tthis.grdMain.getSelectionModel().select( record );\n\t\tthis.onBtnEditClick( this.btnEdit, {} );\n\t},\n\n\tonActionRemoveClick: function ( view, rowIndex, colIndex, item, e, record, row ) {\n\t\tthis.grdMain.getSelectionModel().select( record );\n\t\tthis.onBtnRemoveClick( this.btnRemove, {} );\n\t},\n\n\tonBtnAddClick: function ( oButton, oEvent ) {\n\t\tthis.callParent( arguments );\n\t},\n\n\tonBtnEditClick: function ( oButton, oEvent ) {\n\t\tthis.callParent( arguments );\n\t},\n\n\tonBtnRemoveClick: function ( oButton, oEvent ) {\n\t\tthis.callParent( arguments );\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/CRUDPanel.js","messages":[{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"subpackage\".","line":9,"column":null,"nodeType":"Block","endLine":9,"endColumn":null},{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"filesource\".","line":12,"column":null,"nodeType":"Block","endLine":12,"endColumn":null},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":15,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":15,"endColumn":4},{"ruleId":"max-len","severity":1,"message":"This line has a length of 132. Maximum allowed is 100.","line":23,"column":1,"nodeType":"Program","messageId":"max","endLine":23,"endColumn":127},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":34,"column":27,"nodeType":"Identifier","messageId":"undef","endLine":34,"endColumn":30},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":44,"column":3,"nodeType":"Identifier","messageId":"undef","endLine":44,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":56,"column":14,"nodeType":"Identifier","messageId":"undef","endLine":56,"endColumn":17},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":65,"column":22,"nodeType":"Identifier","messageId":"undef","endLine":65,"endColumn":25},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":78,"column":23,"nodeType":"Identifier","messageId":"undef","endLine":78,"endColumn":26},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":92,"column":25,"nodeType":"Identifier","messageId":"undef","endLine":92,"endColumn":28},{"ruleId":"no-unused-vars","severity":1,"message":"'arguments' is defined but never used.","line":108,"column":33,"nodeType":"Identifier","messageId":"unusedVar","endLine":108,"endColumn":42},{"ruleId":"no-shadow-restricted-names","severity":1,"message":"Shadowing of global property 'arguments'.","line":108,"column":33,"nodeType":"Identifier","messageId":"shadowingRestrictedName","endLine":108,"endColumn":42},{"ruleId":"no-unused-vars","severity":1,"message":"'oButton' is defined but never used.","line":112,"column":28,"nodeType":"Identifier","messageId":"unusedVar","endLine":112,"endColumn":35},{"ruleId":"no-unused-vars","severity":1,"message":"'oEvent' is defined but never used.","line":112,"column":37,"nodeType":"Identifier","messageId":"unusedVar","endLine":112,"endColumn":43},{"ruleId":"no-unused-vars","severity":1,"message":"'oButton' is defined but never used.","line":116,"column":29,"nodeType":"Identifier","messageId":"unusedVar","endLine":116,"endColumn":36},{"ruleId":"no-unused-vars","severity":1,"message":"'oEvent' is defined but never used.","line":116,"column":38,"nodeType":"Identifier","messageId":"unusedVar","endLine":116,"endColumn":44},{"ruleId":"no-unused-vars","severity":1,"message":"'oButton' is defined but never used.","line":120,"column":31,"nodeType":"Identifier","messageId":"unusedVar","endLine":120,"endColumn":38},{"ruleId":"no-unused-vars","severity":1,"message":"'oEvent' is defined but never used.","line":120,"column":40,"nodeType":"Identifier","messageId":"unusedVar","endLine":120,"endColumn":46},{"ruleId":"valid-jsdoc","severity":1,"message":"Missing JSDoc return type.","line":132,"column":2,"nodeType":"Block","messageId":"missingReturnType","endLine":135,"endColumn":5},{"ruleId":"valid-jsdoc","severity":1,"message":"Missing JSDoc parameter description for 'operation'.","line":133,"column":5,"nodeType":"Block","messageId":"missingParamDesc","endLine":133,"endColumn":21},{"ruleId":"valid-jsdoc","severity":1,"message":"Missing JSDoc parameter type for 'operation'.","line":133,"column":5,"nodeType":"Block","messageId":"missingParamType","endLine":133,"endColumn":21},{"ruleId":"jsdoc/require-param-type","severity":1,"message":"Missing JSDoc @param \"operation\" type.","line":133,"column":null,"nodeType":"Block","endLine":133,"endColumn":null},{"ruleId":"jsdoc/require-returns-type","severity":1,"message":"Missing JSDoc @return type.","line":134,"column":null,"nodeType":"Block","endLine":134,"endColumn":null}],"errorCount":0,"warningCount":23,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/**\n * CRUDPanel\n *\n * Part of BlueSpice MediaWiki\n *\n * @author     Robert Vogel <vogel@hallowelt.com>\n * @author     Stephan Muggli <muggli@hallowelt.com>\n * @package    Bluespice_Extensions\n * @subpackage Foundation\n * @copyright  Copyright (C) 2016 Hallo Welt! GmbH, All rights reserved.\n * @license    http://www.gnu.org/copyleft/gpl.html GPL-3.0-only\n * @filesource\n */\n\nExt.define( 'BS.CRUDPanel', {\n\textend: 'Ext.Panel',\n\tborder: false,\n\thideBorder: true,\n\n\tcls: 'bs-crud-panel',\n\n\toperationPermissions: {\n\t\tcreate: true, // should be connected to mw.config.get('bsTaskAPIPermissions').extension_xyz.task1 = boolean in derived class\n\t\tupdate: true, // ...\n\t\tdelete: true // ...\n\t},\n\n\ttbarHeight: 32,\n\n\tconstructor: function ( config ) {\n\t\tconfig = config || {};\n\t\t// Custom Settings\n\t\tthis.currentData = {};\n\t\tif ( config.renderTo && Ext.isString( config.renderTo ) ) {\n\t\t\tconfig.id = config.id || config.renderTo + '-crud';\n\t\t}\n\t\tthis.callParent( arguments );\n\t},\n\n\tinitComponent: function () {\n\t\tthis.tbar = this.makeTbar();\n\t\tthis.items = this.makeItems();\n\n\t\t$( document ).trigger( 'BSCRUDPanelInitComponent', [ this ] );\n\n\t\tthis.afterInitComponent( arguments );\n\n\t\tthis.callParent( arguments );\n\t},\n\n\tmakeItems: function () {\n\t\treturn [];\n\t},\n\n\tmakeTbar: function () {\n\t\treturn new Ext.Toolbar( {\n\t\t\tcls: 'bs-crud-panel-toolbar',\n\t\t\titems: this.makeTbarItems()\n\t\t} );\n\t},\n\n\tmakeTbarItems: function () {\n\t\tvar arrItems = [];\n\t\tif ( this.opPermitted( 'create' ) ) {\n\t\t\tthis.btnAdd = new Ext.Button( {\n\t\t\t\tid: this.getId() + '-btn-add',\n\t\t\t\ticon: mw.config.get( 'wgScriptPath' ) + '/extensions/BlueSpiceFoundation/resources/bluespice/images/bs-btn_add.png',\n\t\t\t\ticonCls: 'btn' + this.tbarHeight,\n\t\t\t\ttooltip: mw.message( 'bs-extjs-add' ).plain(),\n\t\t\t\theight: 50,\n\t\t\t\twidth: 52\n\t\t\t} );\n\t\t\tthis.btnAdd.on( 'click', this.onBtnAddClick, this );\n\t\t\tarrItems.push( this.btnAdd );\n\t\t}\n\n\t\tif ( this.opPermitted( 'update' ) ) {\n\t\t\tthis.btnEdit = new Ext.Button( {\n\t\t\t\tid: this.getId() + '-btn-edit',\n\t\t\t\ticon: mw.config.get( 'wgScriptPath' ) + '/extensions/BlueSpiceFoundation/resources/bluespice/images/bs-btn_config.png',\n\t\t\t\ticonCls: 'btn' + this.tbarHeight,\n\t\t\t\ttooltip: mw.message( 'bs-extjs-edit' ).plain(),\n\t\t\t\theight: 50,\n\t\t\t\twidth: 52,\n\t\t\t\tdisabled: true\n\t\t\t} );\n\t\t\tthis.btnEdit.on( 'click', this.onBtnEditClick, this );\n\t\t\tarrItems.push( this.btnEdit );\n\t\t}\n\n\t\tif ( this.opPermitted( 'delete' ) ) {\n\t\t\tthis.btnRemove = new Ext.Button( {\n\t\t\t\tid: this.getId() + '-btn-remove',\n\t\t\t\ticon: mw.config.get( 'wgScriptPath' ) + '/extensions/BlueSpiceFoundation/resources/bluespice/images/bs-btn_delete.png',\n\t\t\t\ticonCls: 'btn' + this.tbarHeight,\n\t\t\t\ttooltip: mw.message( 'bs-extjs-remove' ).plain(),\n\t\t\t\theight: 50,\n\t\t\t\twidth: 52,\n\t\t\t\tdisabled: true\n\t\t\t} );\n\t\t\tthis.btnRemove.on( 'click', this.onBtnRemoveClick, this );\n\t\t\tarrItems.push( this.btnRemove );\n\t\t}\n\n\t\treturn arrItems;\n\t},\n\n\tafterInitComponent: function ( arguments ) {\n\t\t// This get's overridden by subclasses to add subcomponents\n\t},\n\n\tonBtnAddClick: function ( oButton, oEvent ) {\n\t\tthis.fireEvent( 'button-add', this, this.getData() );\n\t},\n\n\tonBtnEditClick: function ( oButton, oEvent ) {\n\t\tthis.fireEvent( 'button-edit', this, this.getData() );\n\t},\n\n\tonBtnRemoveClick: function ( oButton, oEvent ) {\n\t\tthis.fireEvent( 'button-delete', this, this.getData() );\n\t},\n\n\tgetData: function () {\n\t\treturn this.currentData;\n\t},\n\n\tsetData: function ( obj ) {\n\t\tthis.currentData = obj;\n\t},\n\n\t/**\n\t * @param operation\n\t * @return boolean if param exists, otherwise null\n\t */\n\topPermitted: function ( operation ) {\n\t\tif ( operation in this.operationPermissions ) {\n\t\t\treturn this.operationPermissions[ operation ];\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t},\n\n\tmakeId: function ( part ) {\n\t\treturn this.getId() + '-' + part;\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/ConfirmDialog.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4}],"errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.ConfirmDialog', {\n\textend: 'BS.AlertDialog',\n\n\tafterInitComponent: function () {\n\t\tthis.callParent( arguments );\n\n\t\tthis.btnOK.setText( mw.message( 'bs-extjs-yes' ).plain() );\n\t\tthis.btnCancel.setText( mw.message( 'bs-extjs-no' ).plain() );\n\t\tthis.buttons = [\n\t\t\tthis.btnOK,\n\t\t\tthis.btnCancel\n\t\t];\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/Panel.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4}],"errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.Panel', {\n\textend: 'Ext.Panel',\n\tlayout: 'border',\n\tfieldDefaults: {\n\t\tlabelAlign: 'right'\n\t},\n\tbodyPadding: 5,\n\n\tconstructor: function () {\n\t\t// Custom Settings\n\t\tthis.currentData = {};\n\t\tthis.callParent( arguments );\n\t},\n\n\tinitComponent: function () {\n\n\t\tthis.items = this.makeItems();\n\n\t\tthis.afterInitComponent( arguments );\n\n\t\tthis.callParent( arguments );\n\t},\n\n\tafterInitComponent: function () {\n\n\t},\n\n\tgetData: function () {\n\t\treturn this.currentData;\n\t},\n\n\tsetData: function ( obj ) {\n\t\tthis.currentData = obj;\n\t},\n\n\tmakeItems: function () {\n\t\treturn [];\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/PromptDialog.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":10,"column":19,"nodeType":"Identifier","messageId":"undef","endLine":10,"endColumn":22}],"errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.PromptDialog', {\n\textend: 'BS.ConfirmDialog',\n\n\tafterInitComponent: function () {\n\t\tthis.callParent( arguments );\n\n\t\tthis.btnOK.setText( mw.message( 'bs-extjs-ok' ).plain() );\n\t\tthis.btnCancel.setText( mw.message( 'bs-extjs-cancel' ).plain() );\n\n\t\tthis.tfPrompt = Ext.create( 'Ext.form.TextField', {\n\t\t\twidth: '100%'\n\t\t} );\n\n\t\tthis.cntMain.add( this.tfPrompt );\n\t\tthis.on( 'show', function () {\n\t\t\tthis.tfPrompt.focus();\n\t\t}, this );\n\n\t\tthis.tfPrompt.on( 'specialkey', function ( field, e ) {\n\t\t\tif ( e.getKey() === e.ENTER ) {\n\t\t\t\tthis.btnOK.fireEvent( 'click', this );\n\t\t\t}\n\t\t}, this );\n\t},\n\n\tbtnOKClicked: function () {\n\t\tvar value = this.tfPrompt.getValue();\n\t\tthis.fireEvent( 'ok', { value: value } );\n\t\tthis.close();\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/SimpleDialog.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"mediawiki/msg-doc","severity":1,"message":"All possible message keys should be documented. See https://w.wiki/PRw for details.","line":17,"column":19,"nodeType":"CallExpression","endLine":17,"endColumn":46},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":20,"column":18,"nodeType":"Identifier","messageId":"undef","endLine":20,"endColumn":21},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":29,"column":16,"nodeType":"Identifier","messageId":"undef","endLine":29,"endColumn":19},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":35,"column":20,"nodeType":"Identifier","messageId":"undef","endLine":35,"endColumn":23}],"errorCount":0,"warningCount":5,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.SimpleDialog', {\n\textend: 'Ext.Window',\n\trequires: [\n\t\t'Ext.Button'\n\t],\n\twidth: 300,\n\tminHeight: 100,\n\tmodal: true,\n\tcloseAction: 'destroy',\n\tbuttonAlign: 'center',\n\n\t// Custom Settings\n\tidPrefix: 'overrideMe',\n\n\tinitComponent: function () {\n\t\tif ( this.titleMsg ) {\n\t\t\tthis.setTitle( mw.message( this.titleMsg ).plain() );\n\t\t}\n\n\t\tthis.cntMain = Ext.create( 'Ext.Container', {\n\t\t\tid: this.idPrefix + '-cnt-main',\n\t\t\tpadding: 5\n\t\t} );\n\n\t\tthis.items = [\n\t\t\tthis.cntMain\n\t\t];\n\n\t\tthis.btnOK = Ext.create( 'Ext.Button', {\n\t\t\ttext: mw.message( 'bs-extjs-ok' ).plain(),\n\t\t\tid: this.idPrefix + '-btn-ok'\n\t\t} );\n\t\tthis.btnOK.on( 'click', this.btnOKClicked, this );\n\n\t\tthis.btnCancel = Ext.create( 'Ext.Button', {\n\t\t\ttext: mw.message( 'bs-extjs-cancel' ).plain(),\n\t\t\tid: this.idPrefix + '-btn-cancel'\n\t\t} );\n\t\tthis.btnCancel.on( 'click', this.btnCancelClicked, this );\n\n\t\tthis.afterInitComponent( arguments );\n\t\tthis.callParent( arguments );\n\t},\n\n\tafterInitComponent: function () {\n\n\t},\n\n\tbtnOKClicked: function () {\n\t\tthis.fireEvent( 'ok' );\n\t\tthis.close();\n\t},\n\n\tbtnCancelClicked: function () {\n\t\tthis.fireEvent( 'cancel' );\n\t\tthis.close();\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/Window.js","messages":[{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"subpackage\".","line":9,"column":null,"nodeType":"Block","endLine":9,"endColumn":null},{"ruleId":"jsdoc/check-tag-names","severity":1,"message":"Invalid JSDoc tag name \"filesource\".","line":12,"column":null,"nodeType":"Block","endLine":12,"endColumn":null},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":15,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":15,"endColumn":4},{"ruleId":"camelcase","severity":1,"message":"Identifier 'original_x' is not in camel case.","line":58,"column":9,"nodeType":"Identifier","messageId":"notCamelCase","endLine":58,"endColumn":19},{"ruleId":"camelcase","severity":1,"message":"Identifier 'original_y' is not in camel case.","line":61,"column":9,"nodeType":"Identifier","messageId":"notCamelCase","endLine":61,"endColumn":19},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":116,"column":16,"nodeType":"Identifier","messageId":"undef","endLine":116,"endColumn":19},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":123,"column":20,"nodeType":"Identifier","messageId":"undef","endLine":123,"endColumn":23},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":139,"column":8,"nodeType":"Identifier","messageId":"undef","endLine":139,"endColumn":11}],"errorCount":0,"warningCount":8,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/**\n * Window\n *\n * Part of BlueSpice MediaWiki\n *\n * @author     Robert Vogel <vogel@hallowelt.com>\n * @author     Stephan Muggli <muggli@hallowelt.com>\n * @package    Bluespice_Extensions\n * @subpackage Foundation\n * @copyright  Copyright (C) 2016 Hallo Welt! GmbH, All rights reserved.\n * @license    http://www.gnu.org/copyleft/gpl.html GPL-3.0-only\n * @filesource\n */\n\nExt.define( 'BS.Window', {\n\textend: 'Ext.Window',\n\trequires: [ 'Ext.Button', 'Ext.form.Label', 'Ext.toolbar.Toolbar' ],\n\t/*\n\t\tmixins: {\n\t\tmediaWiki: 'BS.mixins.MediaWiki'\n\t}, */\n\twidth: 450,\n\tminHeight: 120,\n\tcloseAction: 'hide',\n\tlayout: 'form',\n\ttitle: '',\n\n\tbodyPadding: 5,\n\n\tconstructor: function ( config ) {\n\t\tvar cfg = config || {};\n\t\tthis.fieldDefaults = cfg.fieldDefaults || {\n\t\t\tlabelAlign: 'right'\n\t\t};\n\n\t\t// Custom Settings\n\t\tthis.currentData = {};\n\t\tthis.callParent( arguments );\n\t},\n\n\tinitComponent: function () {\n\t\tthis.items = this.makeItems();\n\t\tthis.dockedItems = this.makeDockedItems();\n\n\t\tthis.afterInitComponent( arguments );\n\n\t\tthis.callParent( arguments );\n\t},\n\tafterInitComponent: function () {\n\n\t},\n\tshow: function () {\n\t\tthis.setLoading( false );\n\t\tthis.callParent( arguments );\n\n\t\t// (re)set position\n\t\tif ( !this.original_x ) {\n\t\t\tthis.original_x = this.getX();\n\t\t}\n\t\tif ( !this.original_y ) {\n\t\t\tthis.original_y = this.getY();\n\t\t}\n\t\tthis.setPosition( this.original_x, this.original_y, false );\n\t},\n\tonBtnOKClick: function () {\n\t\tthis.setLoading( true );\n\t\tif ( this.fireEvent( 'ok', this, this.getData() ) ) {\n\t\t\tthis.close();\n\t\t}\n\t},\n\tonBtnCancelClick: function () {\n\t\tthis.resetData();\n\t\tthis.fireEvent( 'cancel', this );\n\t\tthis.close();\n\t},\n\tshowLoadMask: function () {\n\t\tthis.getEl().mask(\n\t\t\tmw.message( 'bs-extjs-loading' ).plain()/* ,\n\t\t\t'x-mask-loading' */\n\t\t);\n\t},\n\thideLoadMask: function () {\n\t\tthis.getEl().unmask();\n\t},\n\t// TODO: Examine Ext.Class config mechanism\n\t// HINT: http://docs.sencha.com/extjs/4.2.1/#!/api/Ext.Class-cfg-config\n\tgetData: function () {\n\t\treturn this.currentData;\n\t},\n\tsetData: function ( obj ) {\n\t\tthis.currentData = obj;\n\t},\n\tresetData: function () {\n\t},\n\tsetTitle: function ( title ) {\n\t\tthis.title = title;\n\t\tthis.callParent( arguments );\n\t},\n\tmakeId: function ( part ) {\n\t\treturn this.getId() + '-' + part;\n\t},\n\n\t/*\n\tstatics: {\n\t\tinstances: {},\n\t\tgetInstance: function( key ) {\n\n\t\t}\n\t} */\n\n\tmakeItems: function () {\n\t\treturn [];\n\t},\n\n\tmakeButtons: function () {\n\t\tthis.btnOK = Ext.create( 'Ext.Button', {\n\t\t\ttext: mw.message( 'bs-extjs-ok' ).plain(),\n\t\t\tid: this.getId() + '-btn-ok',\n\t\t\tcls: 'bs-extjs-btn-ok'\n\t\t} );\n\t\tthis.btnOK.on( 'click', this.onBtnOKClick, this );\n\n\t\tthis.btnCancel = Ext.create( 'Ext.Button', {\n\t\t\ttext: mw.message( 'bs-extjs-cancel' ).plain(),\n\t\t\tid: this.getId() + '-btn-cancel',\n\t\t\tcls: 'bs-extjs-btn-cancel'\n\t\t} );\n\t\tthis.btnCancel.on( 'click', this.onBtnCancelClick, this );\n\n\t\treturn [\n\t\t\t'->',\n\t\t\tthis.btnOK,\n\t\t\tthis.btnCancel\n\t\t];\n\t},\n\n\tmakeDockedItems: function () {\n\t\treturn [\n\t\t\tnew Ext.toolbar.Toolbar( {\n\t\t\t\tdock: 'bottom',\n\t\t\t\tui: 'footer',\n\t\t\t\tdefaults: {\n\t\t\t\t\tminWidth: this.minButtonWidth\n\t\t\t\t},\n\t\t\t\titems: this.makeButtons()\n\t\t\t} )\n\t\t];\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/action/APIAddCategories.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4}],"errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.action.APIAddCategories', {\n\textend: 'BS.action.APICategoryOperation',\n\ttask: 'wikipage-addcategories',\n\n\tgetDescription: function () {\n\t\treturn mw.message( 'bs-deferred-action-apiaddcategories-description', this.pageTitle ).parse();\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/action/APICategoryOperation.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":9,"column":13,"nodeType":"Identifier","messageId":"undef","endLine":9,"endColumn":14},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":10,"column":23,"nodeType":"Identifier","messageId":"undef","endLine":10,"endColumn":25},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":12,"column":3,"nodeType":"VariableDeclaration","messageId":"combine","endLine":14,"endColumn":5},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":12,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":14,"endColumn":5},{"ruleId":"camelcase","severity":1,"message":"Identifier 'page_id' is not in camel case.","line":16,"column":8,"nodeType":"Identifier","messageId":"notCamelCase","endLine":16,"endColumn":15},{"ruleId":"camelcase","severity":1,"message":"Identifier 'page_title' is not in camel case.","line":18,"column":8,"nodeType":"Identifier","messageId":"notCamelCase","endLine":18,"endColumn":18},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":35,"column":3,"nodeType":"Identifier","messageId":"undef","endLine":35,"endColumn":5},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":44,"column":22,"nodeType":"Identifier","messageId":"undef","endLine":44,"endColumn":24},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":49,"column":24,"nodeType":"Identifier","messageId":"undef","endLine":49,"endColumn":26},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":52,"column":23,"nodeType":"Identifier","messageId":"undef","endLine":52,"endColumn":25},{"ruleId":"no-prototype-builtins","severity":1,"message":"Do not access Object.prototype method 'hasOwnProperty' from target object.","line":63,"column":12,"nodeType":"CallExpression","messageId":"prototypeBuildIn","endLine":63,"endColumn":26},{"ruleId":"no-prototype-builtins","severity":1,"message":"Do not access Object.prototype method 'hasOwnProperty' from target object.","line":68,"column":12,"nodeType":"CallExpression","messageId":"prototypeBuildIn","endLine":68,"endColumn":26}],"errorCount":0,"warningCount":13,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.action.APICategoryOperation', {\n\textend: 'BS.action.Base',\n\tcategories: [],\n\tpageTitle: '',\n\tpageId: -1,\n\ttask: '',\n\n\texecute: function () {\n\t\tvar dfd = $.Deferred();\n\t\tthis.actionStatus = BS.action.Base.STATUS_RUNNING;\n\n\t\tvar set = {\n\t\t\tcategories: this.categories\n\t\t};\n\t\tif ( this.pageId !== -1 ) {\n\t\t\tset.page_id = this.pageId;\n\t\t} else if ( this.pageTitle !== '' ) {\n\t\t\tset.page_title = this.pageTitle;\n\t\t}\n\n\t\tthis.doCategoryOperation( dfd, set );\n\n\t\treturn dfd.promise();\n\t},\n\n\tdoCategoryOperation: function ( dfd, taskData ) {\n\t\tvar me = this;\n\n\t\tif ( taskData.categories.length > 0 ) {\n\t\t\ttaskData.categories = taskData.categories.join( '|' );\n\t\t} else {\n\t\t\tdelete ( taskData.categories );\n\t\t}\n\n\t\tbs.api.tasks.exec(\n\t\t\t'wikipage',\n\t\t\tthis.task,\n\t\t\ttaskData,\n\t\t\t{\n\t\t\t\tuseService: true,\n\t\t\t\tcontext: this.getContextObject( taskData )\n\t\t\t}\n\t\t).fail( function ( response ) {\n\t\t\tme.actionStatus = BS.action.Base.STATUS_ERROR;\n\t\t\tdfd.reject( me, taskData, response );\n\t\t} )\n\t\t\t.done( function ( response ) {\n\t\t\t\tif ( !response.success ) {\n\t\t\t\t\tme.actionStatus = BS.action.Base.STATUS_ERROR;\n\t\t\t\t\tdfd.reject( me, taskData, response );\n\t\t\t\t}\n\t\t\t\tme.actionStatus = BS.action.Base.STATUS_DONE;\n\t\t\t\tdfd.resolve( me );\n\t\t\t} );\n\t},\n\n\tgetContextObject: function ( set ) {\n\t\tvar title, context = {\n\t\t\twgAction: 'edit',\n\t\t\twgCanonicalSpecialPageName: false,\n\t\t\twgRedirectedFrom: null\n\t\t};\n\t\tif ( set.hasOwnProperty( 'page_id' ) ) {\n\t\t\tcontext.wgArticleId = set.page_id;\n\t\t\treturn context;\n\t\t}\n\n\t\tif ( set.hasOwnProperty( 'page_title' ) ) {\n\t\t\ttitle = mw.Title.newFromText( set.page_title );\n\t\t}\n\n\t\tcontext.wgCanonicalNamespace = title.getNamespacePrefix().split( ':' ).shift();\n\t\tcontext.wgPageName = title.getPrefixedText();\n\t\tcontext.wgNamespaceNumber = title.getNamespaceId();\n\t\tcontext.wgRedirectedFrom = title.getPrefixedText();\n\t\tcontext.wgTitle = title.getName();\n\n\t\treturn context;\n\t},\n\n\tgetDescription: function () {\n\t\t// STUB\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/action/APICopyPage.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-mixed-spaces-and-tabs","severity":1,"message":"Mixed spaces and tabs.","line":10,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":10,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":10,"column":10,"nodeType":"Identifier","messageId":"undef","endLine":10,"endColumn":11},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":11,"column":23,"nodeType":"Identifier","messageId":"undef","endLine":11,"endColumn":25},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":12,"column":3,"nodeType":"VariableDeclaration","messageId":"combine","endLine":16,"endColumn":37},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":12,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":16,"endColumn":37},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":25,"column":23,"nodeType":"Identifier","messageId":"undef","endLine":25,"endColumn":25},{"ruleId":"no-unused-vars","severity":1,"message":"'jqXHR' is defined but never used.","line":28,"column":28,"nodeType":"Identifier","messageId":"unusedVar","endLine":28,"endColumn":33},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":32,"column":24,"nodeType":"Identifier","messageId":"undef","endLine":32,"endColumn":26},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":38,"column":5,"nodeType":"VariableDeclaration","messageId":"top","endLine":38,"endColumn":57},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":38,"column":5,"nodeType":"VariableDeclaration","messageId":"combine","endLine":38,"endColumn":57}],"errorCount":0,"warningCount":11,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.action.APICopyPage', {\n\textend: 'BS.action.APIEditPage',\n\n\t// Custom Settings\n\tsourceTitle: '',\n\ttargetTitle: '',\n\n\texecute: function () {\n\t\tvar me = this,\n\t\t dfd = $.Deferred();\n\t\tthis.actionStatus = BS.action.Base.STATUS_RUNNING;\n\t\tvar copy = {\n\t\t\t\tsourceTitle: me.sourceTitle,\n\t\t\t\ttargetTitle: me.targetTitle\n\t\t\t},\n\t\t\tgetCurrentTextAPI = new mw.Api();\n\t\tgetCurrentTextAPI.get( {\n\t\t\taction: 'query',\n\t\t\ttitles: this.sourceTitle,\n\t\t\tprop: 'revisions',\n\t\t\trvprop: 'content',\n\t\t\tindexpageids: ''\n\t\t} )\n\t\t\t.fail( function ( code, errResp ) {\n\t\t\t\tme.actionStatus = BS.action.Base.STATUS_ERROR;\n\t\t\t\tdfd.reject( me, copy, errResp );\n\t\t\t} )\n\t\t\t.done( function ( resp, jqXHR ) {\n\t\t\t\tvar pageId = resp.query.pageids[ 0 ],\n\t\t\t\t\tpageInfo = resp.query.pages[ pageId ];\n\t\t\t\tif ( pageInfo.missing || !pageInfo.revisions || !pageInfo.revisions[ 0 ] ) {\n\t\t\t\t\tme.actionStatus = BS.action.Base.STATUS_ERROR;\n\t\t\t\t\tdfd.reject( me, copy, resp );\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tme.pageTitle = me.targetTitle;\n\t\t\t\tme.pageContent = pageInfo.revisions[ 0 ][ '*' ];\n\t\t\t\tvar basePromise = me.superclass.execute.apply( me );\n\t\t\t\tbasePromise.fail( function () {\n\t\t\t\t\tdfd.reject.apply( dfd, arguments );\n\t\t\t\t} ).done( function () {\n\t\t\t\t\tdfd.resolve.apply( dfd, arguments );\n\t\t\t\t} );\n\t\t\t} );\n\n\t\treturn dfd.promise();\n\t},\n\n\tgetDescription: function () {\n\t\treturn mw.message( 'bs-deferred-action-apicopypage-description', this.sourceTitle, this.targetTitle ).parse();\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/action/APIDeletePage.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":8,"column":13,"nodeType":"Identifier","messageId":"undef","endLine":8,"endColumn":14},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":9,"column":23,"nodeType":"Identifier","messageId":"undef","endLine":9,"endColumn":25},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":24,"column":23,"nodeType":"Identifier","messageId":"undef","endLine":24,"endColumn":25},{"ruleId":"no-unused-vars","severity":1,"message":"'jqXHR' is defined but never used.","line":27,"column":28,"nodeType":"Identifier","messageId":"unusedVar","endLine":27,"endColumn":33},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":29,"column":24,"nodeType":"Identifier","messageId":"undef","endLine":29,"endColumn":26},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":34,"column":23,"nodeType":"Identifier","messageId":"undef","endLine":34,"endColumn":25}],"errorCount":0,"warningCount":7,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.action.APIDeletePage', {\n\textend: 'BS.action.Base',\n\n\t// Custom config\n\tpageTitle: '',\n\n\texecute: function () {\n\t\tvar dfd = $.Deferred();\n\t\tthis.actionStatus = BS.action.Base.STATUS_RUNNING;\n\n\t\tthis.doAPIDelete( dfd );\n\n\t\treturn dfd.promise();\n\t},\n\n\tdoAPIDelete: function ( dfd ) {\n\t\tvar me = this,\n\t\t\tdeletePageAPI = new mw.Api();\n\t\tdeletePageAPI.postWithToken( 'csrf', {\n\t\t\taction: 'delete',\n\t\t\ttitle: me.pageTitle\n\t\t} )\n\t\t\t.fail( function ( code, errResp ) {\n\t\t\t\tme.actionStatus = BS.action.Base.STATUS_ERROR;\n\t\t\t\tdfd.reject( me, errResp );\n\t\t\t} )\n\t\t\t.done( function ( resp, jqXHR ) {\n\t\t\t\tif ( resp.delete.title === undefined ) {\n\t\t\t\t\tme.actionStatus = BS.action.Base.STATUS_ERROR;\n\t\t\t\t\tdfd.reject( me, resp );\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tme.actionStatus = BS.action.Base.STATUS_DONE;\n\t\t\t\tdfd.resolve( me );\n\t\t\t} );\n\t},\n\n\tgetDescription: function () {\n\t\treturn mw.message( 'bs-deferred-action-apideletepage-description', this.pageTitle ).parse();\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/action/APIEditPage.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":9,"column":13,"nodeType":"Identifier","messageId":"undef","endLine":9,"endColumn":14},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":10,"column":23,"nodeType":"Identifier","messageId":"undef","endLine":10,"endColumn":25},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":12,"column":3,"nodeType":"VariableDeclaration","messageId":"combine","endLine":15,"endColumn":5},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":12,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":15,"endColumn":5},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":26,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":26,"endColumn":34},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":26,"column":3,"nodeType":"VariableDeclaration","messageId":"combine","endLine":26,"endColumn":34},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":34,"column":23,"nodeType":"Identifier","messageId":"undef","endLine":34,"endColumn":25},{"ruleId":"no-unused-vars","severity":1,"message":"'jqXHR' is defined but never used.","line":37,"column":28,"nodeType":"Identifier","messageId":"unusedVar","endLine":37,"endColumn":33},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":39,"column":24,"nodeType":"Identifier","messageId":"undef","endLine":39,"endColumn":26},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":45,"column":24,"nodeType":"Identifier","messageId":"undef","endLine":45,"endColumn":26},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":50,"column":23,"nodeType":"Identifier","messageId":"undef","endLine":50,"endColumn":25}],"errorCount":0,"warningCount":12,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.action.APIEditPage', {\n\textend: 'BS.action.Base',\n\n\t// Custom config\n\tpageTitle: '',\n\tpageContent: '',\n\n\texecute: function () {\n\t\tvar dfd = $.Deferred();\n\t\tthis.actionStatus = BS.action.Base.STATUS_RUNNING;\n\n\t\tvar edit = {\n\t\t\ttitle: this.pageTitle,\n\t\t\tcontent: this.pageContent\n\t\t};\n\n\t\tthis.doAPIEdit( dfd, edit );\n\n\t\treturn dfd.promise();\n\t},\n\n\tdoAPIEdit: function ( dfd, edit ) {\n\t\tvar me = this;\n\t\tthis.fireEvent( 'beforesaveedit', this, edit );\n\n\t\tvar editPageAPI = new mw.Api();\n\t\teditPageAPI.postWithToken( 'csrf', {\n\t\t\taction: 'edit',\n\t\t\ttitle: edit.title,\n\t\t\ttext: edit.content,\n\t\t\tcontinue: ''\n\t\t} )\n\t\t\t.fail( function ( code, errResp ) {\n\t\t\t\tme.actionStatus = BS.action.Base.STATUS_ERROR;\n\t\t\t\tdfd.reject( me, edit, errResp );\n\t\t\t} )\n\t\t\t.done( function ( resp, jqXHR ) {\n\t\t\t\tif ( !resp.edit.result || resp.edit.result.toLowerCase() !== 'success' ) {\n\t\t\t\t\tme.actionStatus = BS.action.Base.STATUS_ERROR;\n\t\t\t\t\tdfd.reject( me, edit, resp );\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif ( resp.edit.title === undefined ) {\n\t\t\t\t\tme.actionStatus = BS.action.Base.STATUS_ERROR;\n\t\t\t\t\tdfd.reject( me, edit, resp );\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tme.actionStatus = BS.action.Base.STATUS_DONE;\n\t\t\t\tdfd.resolve( me );\n\t\t\t} );\n\t},\n\n\tgetDescription: function () {\n\t\treturn mw.message( 'bs-deferred-action-apieditpage-description', this.pageTitle ).parse();\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/action/APIMovePage.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":11,"column":10,"nodeType":"Identifier","messageId":"undef","endLine":11,"endColumn":11},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":12,"column":23,"nodeType":"Identifier","messageId":"undef","endLine":12,"endColumn":25},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":13,"column":3,"nodeType":"VariableDeclaration","messageId":"combine","endLine":18,"endColumn":31},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":13,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":18,"endColumn":31},{"ruleId":"no-shadow","severity":1,"message":"'move' is already declared in the upper scope on line 13 column 7.","line":27,"column":22,"nodeType":"Identifier","messageId":"noShadow","endLine":27,"endColumn":26},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":28,"column":23,"nodeType":"Identifier","messageId":"undef","endLine":28,"endColumn":25},{"ruleId":"no-unused-vars","severity":1,"message":"'jqXHR' is defined but never used.","line":31,"column":28,"nodeType":"Identifier","messageId":"unusedVar","endLine":31,"endColumn":33},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":33,"column":24,"nodeType":"Identifier","messageId":"undef","endLine":33,"endColumn":26},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":38,"column":23,"nodeType":"Identifier","messageId":"undef","endLine":38,"endColumn":25}],"errorCount":0,"warningCount":10,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.action.APIMovePage', {\n\textend: 'BS.action.Base',\n\n\t// Custom config\n\tsourceTitle: '',\n\ttargetTitle: '',\n\treason: '',\n\n\texecute: function () {\n\t\tvar me = this,\n\t\t\tdfd = $.Deferred();\n\t\tthis.actionStatus = BS.action.Base.STATUS_RUNNING;\n\t\tvar move = {\n\t\t\t\tsource: me.sourceTitle,\n\t\t\t\ttarget: me.targetTitle,\n\t\t\t\treason: me.reason\n\t\t\t},\n\t\t\tmovePageAPI = new mw.Api();\n\t\tmovePageAPI.postWithToken( 'csrf', {\n\t\t\taction: 'move',\n\t\t\tfrom: this.sourceTitle,\n\t\t\tto: this.targetTitle,\n\t\t\treason: this.reason,\n\t\t\tmovetalk: '',\n\t\t\tnoredirect: ''\n\t\t} )\n\t\t\t.fail( function ( move, errResp ) {\n\t\t\t\tme.actionStatus = BS.action.Base.STATUS_ERROR;\n\t\t\t\tdfd.reject( me, move, errResp );\n\t\t\t} )\n\t\t\t.done( function ( resp, jqXHR ) {\n\t\t\t\tif ( !resp.move.from || !resp.move.to ) {\n\t\t\t\t\tme.actionStatus = BS.action.Base.STATUS_ERROR;\n\t\t\t\t\tdfd.reject( me, move, resp );\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tme.actionStatus = BS.action.Base.STATUS_DONE;\n\t\t\t\tdfd.resolve( me );\n\t\t\t} );\n\n\t\treturn dfd.promise();\n\t},\n\n\tgetDescription: function () {\n\t\treturn mw.message( 'bs-deferred-action-apimovepage-description', this.sourceTitle, this.targetTitle ).parse();\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/action/APIRemoveCategories.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4}],"errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.action.APIRemoveCategories', {\n\textend: 'BS.action.APICategoryOperation',\n\ttask: 'wikipage-removecategories',\n\n\tgetDescription: function () {\n\t\treturn mw.message( 'bs-deferred-action-apiremovecategories-description', this.pageTitle ).parse();\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/action/APISetCategories.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4}],"errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.action.APISetCategories', {\n\textend: 'BS.action.APICategoryOperation',\n\ttask: 'wikipage-setcategories',\n\n\tgetDescription: function () {\n\t\treturn mw.message( 'bs-deferred-action-apisetcategories-description', this.pageTitle ).parse();\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/action/Base.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"jsdoc/require-returns-check","severity":1,"message":"JSDoc @return declaration present but return expression not available in function.","line":12,"column":2,"nodeType":"Block","endLine":15,"endColumn":5},{"ruleId":"valid-jsdoc","severity":1,"message":"Missing JSDoc return type.","line":12,"column":2,"nodeType":"Block","messageId":"missingReturnType","endLine":15,"endColumn":5},{"ruleId":"jsdoc/require-returns-type","severity":1,"message":"Missing JSDoc @return type.","line":14,"column":null,"nodeType":"Block","endLine":14,"endColumn":null},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":21,"column":10,"nodeType":"Identifier","messageId":"undef","endLine":21,"endColumn":13},{"ruleId":"no-mixed-spaces-and-tabs","severity":1,"message":"Mixed spaces and tabs.","line":41,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":41,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":42,"column":19,"nodeType":"Identifier","messageId":"undef","endLine":42,"endColumn":21},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":44,"column":26,"nodeType":"Identifier","messageId":"undef","endLine":44,"endColumn":28},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":46,"column":26,"nodeType":"Identifier","messageId":"undef","endLine":46,"endColumn":28},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":48,"column":26,"nodeType":"Identifier","messageId":"undef","endLine":48,"endColumn":28}],"errorCount":0,"warningCount":10,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.action.Base', {\n\textend: 'Ext.mixin.Observable',\n\tstatics: {\n\t\tSTATUS_ERROR: -1,\n\t\tSTATUS_PENDING: 0,\n\t\tSTATUS_RUNNING: 1,\n\t\tSTATUS_DONE: 2\n\t},\n\n\tactionStatus: 0, // BS.action.Base.STATUS_PENDING\n\n\t/**\n\t *\n\t * @return jQuery.Promise\n\t */\n\texecute: function () {\n\n\t},\n\n\tgetDescription: function () {\n\t\treturn Ext.getClassName( this );\n\t},\n\n\tgetErrors: function () {\n\t\tvar errors = [];\n\t\tif ( this.actionErrors ) {\n\t\t\tthis.actionErrors.forEach( function ( msg ) {\n\t\t\t\terrors.push( { message: msg[ '*' ] } );\n\t\t\t} );\n\t\t}\n\t\treturn errors;\n\n\t},\n\n\tgetStatus: function () {\n\t\treturn this.actionStatus;\n\t},\n\n\tgetStatusText: function () {\n\t\tvar status = this.getStatus(),\n\t\t message = '';\n\t\tif ( status === BS.action.Base.STATUS_PENDING ) {\n\t\t\tmessage = mw.message( 'bs-deferred-action-status-pending' ).plain();\n\t\t} else if ( status === BS.action.Base.STATUS_RUNNING ) {\n\t\t\tmessage = mw.message( 'bs-deferred-action-status-running' ).plain();\n\t\t} else if ( status === BS.action.Base.STATUS_DONE ) {\n\t\t\tmessage = mw.message( 'bs-deferred-action-status-done' ).plain();\n\t\t} else if ( status === BS.action.Base.STATUS_ERROR ) {\n\t\t\tmessage = mw.message( 'bs-deferred-action-status-error' ).plain();\n\t\t}\n\n\t\treturn message;\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/dialog/BatchActions.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":12,"column":30,"nodeType":"Identifier","messageId":"undef","endLine":12,"endColumn":32}],"errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.dialog.BatchActions', {\n\textend: 'MWExt.Dialog',\n\trequires: [ 'BS.panel.BatchActions' ],\n\n\twidth: 600,\n\tautoHeight: true,\n\ttitle: mw.message( 'bs-deferred-batch-title' ).plain(),\n\tclosable: false,\n\tcurrentData: null,\n\n\tmakeItems: function () {\n\t\tthis.pnlBatchActions = new BS.panel.BatchActions();\n\t\tthis.pnlBatchActions.on( 'processcomplete', this.onProcessComplete, this );\n\n\t\treturn [\n\t\t\tthis.pnlBatchActions\n\t\t];\n\t},\n\n\tmakeButtons: function () {\n\t\tvar buttons = this.callParent( arguments );\n\t\tthis.btnCancel.hide();\n\t\treturn buttons;\n\t},\n\n\tsetData: function ( data ) {\n\t\tthis.currentData = data;\n\t\tthis.pnlBatchActions.setData( data );\n\t},\n\n\tgetData: function () {\n\t\treturn this.currentData;\n\t},\n\n\tonBtnOKClick: function () {\n\t\tif ( this.pnlBatchActions.isProcessComplete() ) {\n\t\t\tthis.callParent( arguments );\n\t\t} else {\n\t\t\tthis.startProcessing();\n\t\t}\n\t},\n\n\tonProcessComplete: function () {\n\t\tthis.btnOK.enable();\n\t},\n\n\tstartProcessing: function () {\n\t\tthis.btnOK.disable();\n\t\tthis.pnlBatchActions.startProcessing();\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/dialog/PageExport.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":18,"column":17,"nodeType":"Identifier","messageId":"undef","endLine":18,"endColumn":20},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":23,"column":19,"nodeType":"Identifier","messageId":"undef","endLine":23,"endColumn":22},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":43,"column":23,"nodeType":"Identifier","messageId":"undef","endLine":43,"endColumn":26},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":72,"column":3,"nodeType":"Identifier","messageId":"undef","endLine":72,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":82,"column":16,"nodeType":"Identifier","messageId":"undef","endLine":82,"endColumn":19},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":96,"column":18,"nodeType":"Identifier","messageId":"undef","endLine":96,"endColumn":21},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":124,"column":4,"nodeType":"Identifier","messageId":"undef","endLine":124,"endColumn":6},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":136,"column":4,"nodeType":"Identifier","messageId":"undef","endLine":136,"endColumn":6},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":147,"column":3,"nodeType":"VariableDeclaration","messageId":"combine","endLine":147,"endColumn":37},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":147,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":147,"endColumn":37},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":151,"column":4,"nodeType":"Identifier","messageId":"undef","endLine":151,"endColumn":6},{"ruleId":"no-unused-vars","severity":1,"message":"'response' is defined but never used.","line":161,"column":34,"nodeType":"Identifier","messageId":"unusedVar","endLine":161,"endColumn":42},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":163,"column":4,"nodeType":"VariableDeclaration","messageId":"top","endLine":163,"endColumn":70},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":163,"column":15,"nodeType":"Identifier","messageId":"undef","endLine":163,"endColumn":16},{"ruleId":"no-undef","severity":1,"message":"'linkHtml' is not defined.","line":168,"column":4,"nodeType":"Identifier","messageId":"undef","endLine":168,"endColumn":12},{"ruleId":"no-implicit-globals","severity":1,"message":"Global variable leak, declare the variable if it is intended to be local.","line":168,"column":4,"nodeType":"AssignmentExpression","messageId":"globalVariableLeak","endLine":168,"endColumn":47},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":168,"column":15,"nodeType":"Identifier","messageId":"undef","endLine":168,"endColumn":16},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":170,"column":4,"nodeType":"Identifier","messageId":"undef","endLine":170,"endColumn":6},{"ruleId":"no-undef","severity":1,"message":"'linkHtml' is not defined.","line":176,"column":7,"nodeType":"Identifier","messageId":"undef","endLine":176,"endColumn":15},{"ruleId":"mediawiki/msg-doc","severity":1,"message":"All possible message keys should be documented. See https://w.wiki/PRw for details.","line":185,"column":14,"nodeType":"CallExpression","endLine":185,"endColumn":49},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":194,"column":10,"nodeType":"Identifier","messageId":"undef","endLine":194,"endColumn":11},{"ruleId":"no-mixed-spaces-and-tabs","severity":1,"message":"Mixed spaces and tabs.","line":208,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":208,"endColumn":5},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":213,"column":5,"nodeType":"VariableDeclaration","messageId":"combine","endLine":213,"endColumn":37},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":213,"column":5,"nodeType":"VariableDeclaration","messageId":"top","endLine":213,"endColumn":37},{"ruleId":"no-shadow","severity":1,"message":"'response' is already declared in the upper scope on line 206 column 22.","line":217,"column":34,"nodeType":"Identifier","messageId":"noShadow","endLine":217,"endColumn":42},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":228,"column":10,"nodeType":"Identifier","messageId":"undef","endLine":228,"endColumn":11},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":258,"column":3,"nodeType":"Identifier","messageId":"undef","endLine":258,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":273,"column":3,"nodeType":"Identifier","messageId":"undef","endLine":273,"endColumn":4},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":280,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":285,"endColumn":5},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":280,"column":3,"nodeType":"VariableDeclaration","messageId":"combine","endLine":285,"endColumn":5}],"errorCount":0,"warningCount":31,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.dialog.PageExport', {\n\textend: 'MWExt.Dialog',\n\trequires: [],\n\twidth: 350,\n\ttitle: mw.message( 'bs-pagecollection-prefix' ).plain(),\n\tpages: [],\n\tprefixMessageKey: 'bs-pagecollection-prefix',\n\tnamespaceKey: 0,\n\tdefaultName: '',\n\ttargetTitle: null,\n\ttargetPageContent: '',\n\tformattedExportContent: '',\n\n\tafterInitComponent: function () {\n\t\tvar namespaceIds = mw.config.get( 'wgNamespaceIds' );\n\t\tthis.namespaceKey = namespaceIds.mediawiki;\n\n\t\tthis.tbName = Ext.create( 'Ext.form.field.Text', {\n\t\t\tfieldLabel: mw.message( 'bs-extjs-pageexport-list-name-label' ).plain(),\n\t\t\tlabelAlign: 'right',\n\t\t\tvalue: this.defaultName\n\t\t} );\n\t\tthis.rgFormat = Ext.create( 'Ext.form.RadioGroup', {\n\t\t\tvalue: 'plain',\n\t\t\tflex: 1,\n\t\t\titems: [\n\t\t\t\t{\n\t\t\t\t\tboxLabel: mw.message( 'bs-extjs-pageexport-list-format-plain-label' ).plain(),\n\t\t\t\t\tid: 'export-format-plain',\n\t\t\t\t\tname: 'export-format',\n\t\t\t\t\tinputValue: 'plain',\n\t\t\t\t\tchecked: true\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tboxLabel: mw.message( 'bs-extjs-pageexport-list-format-link-label' ).plain(),\n\t\t\t\t\tid: 'export-format-link',\n\t\t\t\t\tname: 'export-format',\n\t\t\t\t\tinputValue: 'link'\n\t\t\t\t}\n\t\t\t]\n\t\t} );\n\n\t\tthis.cbxOverwrite = Ext.create( 'Ext.form.field.Checkbox', {\n\t\t\tvalue: '0',\n\t\t\tfieldLabel: mw.message( 'bs-extjs-pageexport-overwrite-label' ).plain(),\n\t\t\tlabelAlign: 'right'\n\t\t} );\n\n\t\tthis.preparePages();\n\t\tthis.makePagesStore();\n\t\tthis.makePagesGrid();\n\n\t\tthis.items = [\n\t\t\tthis.tbName,\n\t\t\t{\n\t\t\t\txtype: 'fieldcontainer',\n\t\t\t\tfieldLabel: mw.message( 'bs-extjs-pageexport-list-format-label' ).plain(),\n\t\t\t\tlabelAlign: 'right',\n\t\t\t\tlayout: 'hbox',\n\t\t\t\titems: [\n\t\t\t\t\tthis.rgFormat\n\t\t\t\t]\n\t\t\t},\n\t\t\tthis.cbxOverwrite,\n\t\t\tthis.gdPages\n\t\t];\n\t\tthis.callParent( arguments );\n\t},\n\n\tpreparePages: function () {\n\t\tvar finalPages = [];\n\t\t$.each( this.pages, function ( idx, page ) {\n\t\t\tfinalPages.push( {\n\t\t\t\tincluded: true,\n\t\t\t\tpageTitle: page\n\t\t\t} );\n\t\t} );\n\t\tthis.pages = finalPages;\n\t},\n\n\tmakePagesStore: function () {\n\t\tthis.store = Ext.create( 'Ext.data.Store', {\n\t\t\tfields: [ 'included', 'pageTitle' ],\n\t\t\tdata: { pages: this.pages },\n\t\t\tproxy: {\n\t\t\t\ttype: 'memory',\n\t\t\t\treader: {\n\t\t\t\t\ttype: 'json',\n\t\t\t\t\trootProperty: 'pages'\n\t\t\t\t}\n\t\t\t}\n\t\t} );\n\t},\n\n\tmakePagesGrid: function () {\n\t\tthis.gdPages = Ext.create( 'Ext.grid.Panel', {\n\t\t\tstore: this.store,\n\t\t\theight: 500,\n\t\t\tscrollable: true,\n\t\t\tcolumns: [\n\t\t\t\t{\n\t\t\t\t\theader: '',\n\t\t\t\t\tdataIndex: 'included',\n\t\t\t\t\txtype: 'checkcolumn',\n\t\t\t\t\twidth: 40,\n\t\t\t\t\tresizeable: false,\n\t\t\t\t\tgroupable: false,\n\t\t\t\t\tsortable: false\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\theader: 'Page title',\n\t\t\t\t\tdataIndex: 'pageTitle',\n\t\t\t\t\twidth: 300\n\t\t\t\t}\n\t\t\t]\n\t\t} );\n\t},\n\n\tonBtnOKClick: function () {\n\t\tvar me = this;\n\n\t\tme.data = me.getData();\n\t\tif ( me.data.name === '' || me.data.pages.length === 0 ) {\n\t\t\tbs.util.alert(\n\t\t\t\t'bs-pageexport-alert-required',\n\t\t\t\t{\n\t\t\t\t\tlabelMsg: 'bs-extjs-pageexport-general-error',\n\t\t\t\t\ttext: mw.message( 'bs-extjs-pageexport-required-text' ).plain()\n\t\t\t\t}\n\t\t\t);\n\t\t\treturn;\n\t\t}\n\n\t\tme.setTargetTitle();\n\t\tif ( this.targetTitle === null ) {\n\t\t\tbs.util.alert(\n\t\t\t\t'bs-pageexport-alert-invalid-title',\n\t\t\t\t{\n\t\t\t\t\tlabelMsg: 'bs-extjs-pageexport-general-error',\n\t\t\t\t\ttext: mw.message( 'bs-extjs-pageexport-error-invalid-title' ).plain()\n\t\t\t\t}\n\t\t\t);\n\t\t\treturn;\n\t\t}\n\n\t\tme.setLoading( true );\n\t\tvar exportPromise = me.doExport();\n\n\t\texportPromise.fail( function ( code, errResponse ) {\n\t\t\tme.setLoading( false );\n\t\t\tbs.util.alert(\n\t\t\t\t'bs-pageexport-alert-fail',\n\t\t\t\t{\n\t\t\t\t\ttitleMsg: 'bs-extjs-pageexport-general-error',\n\t\t\t\t\ttext: errResponse.error.info\n\t\t\t\t}\n\t\t\t);\n\t\t\tme.close();\n\t\t} );\n\n\t\texportPromise.done( function ( response ) {\n\t\t\tme.setLoading( false );\n\t\t\tvar link = $( '<a></a>' ).attr( 'href', me.targetTitle.getUrl() );\n\t\t\tlink.attr( 'title', me.targetTitle.getPrefixedText() );\n\t\t\tlink.html( me.targetTitle.getPrefixedText() );\n\n\t\t\t// trick to get markup of anchor tag\n\t\t\tlinkHtml = $( '<div>' ).html( link ).html();\n\n\t\t\tbs.util.alert(\n\t\t\t\t'bs-pageexport-alert-success',\n\t\t\t\t{\n\t\t\t\t\ttitleMsg: 'bs-extjs-pageexport-success',\n\t\t\t\t\ttext: mw.message(\n\t\t\t\t\t\t'bs-extjs-pageexport-success-text',\n\t\t\t\t\t\tlinkHtml\n\t\t\t\t\t).plain()\n\t\t\t\t}\n\t\t\t);\n\t\t\tme.close();\n\t\t} );\n\t},\n\n\tsetTargetTitle: function () {\n\t\tvar text = mw.message( this.prefixMessageKey ).plain();\n\t\ttext += '/';\n\t\ttext += this.data.name;\n\t\tthis.targetTitle = mw.Title.newFromText( text, this.namespaceKey );\n\t},\n\n\tdoExport: function () {\n\t\tvar me = this,\n\t\t\tgetTargetPageInfoAPI = new mw.Api(),\n\t\t\tdfd = $.Deferred();\n\n\t\tgetTargetPageInfoAPI.get( {\n\t\t\taction: 'query',\n\t\t\ttitles: me.targetTitle.getPrefixedText(),\n\t\t\tprop: 'revisions',\n\t\t\trvprop: 'content',\n\t\t\tindexpageids: ''\n\t\t} )\n\t\t\t.fail( function ( code, errResp ) {\n\t\t\t\tdfd.reject( code, errResp );\n\t\t\t} )\n\t\t\t.done( function ( response ) {\n\t\t\t\tvar pageId = response.query.pageids[ 0 ],\n\t\t\t pageInfo = response.query.pages[ pageId ];\n\t\t\t\tif ( !pageInfo.missing && pageInfo.revisions && pageInfo.revisions[ 0 ] ) {\n\t\t\t\t\tme.targetPageContent = pageInfo.revisions[ 0 ][ '*' ];\n\t\t\t\t}\n\n\t\t\t\tvar savePromise = me.savePage();\n\t\t\t\tsavePromise.fail( function ( code, error ) {\n\t\t\t\t\tdfd.reject( code, error );\n\t\t\t\t} );\n\t\t\t\tsavePromise.done( function ( response ) {\n\t\t\t\t\tdfd.resolve( response );\n\t\t\t\t} );\n\t\t\t} );\n\n\t\treturn dfd.promise();\n\t},\n\n\tsavePage: function () {\n\t\tvar me = this,\n\t\t\tsavePageAPI = new mw.Api(),\n\t\t\tdfd = $.Deferred();\n\n\t\tme.formatExportContent();\n\n\t\tif ( me.data.overwrite === false ) {\n\t\t\tme.formattedExportContent =\n\t\t\t\tme.targetPageContent + '\\n' + me.formattedExportContent;\n\t\t}\n\n\t\tsavePageAPI.postWithToken( 'csrf', {\n\t\t\taction: 'edit',\n\t\t\ttitle: me.targetTitle.getPrefixedText(),\n\t\t\tsummary: mw.message( 'bs-extjs-pageexport-edit-summary-text' ).plain(),\n\t\t\ttext: me.formattedExportContent\n\t\t} ).done( function ( response ) {\n\t\t\tdfd.resolve( response );\n\t\t} ).fail( function ( code, err ) {\n\t\t\tdfd.reject( code, err );\n\t\t} );\n\n\t\treturn dfd.promise();\n\t},\n\n\tformatExportContent: function () {\n\t\tvar me = this;\n\t\tif ( me.data.pages.length === 0 ) {\n\t\t\treturn;\n\t\t}\n\t\tme.formattedExportContent = '';\n\n\t\t$.each( me.data.pages, function ( idx, page ) {\n\t\t\tvar exportLine = '* ';\n\t\t\tif ( me.data.link ) {\n\t\t\t\texportLine += '[[' + page + ']]\\n';\n\t\t\t} else {\n\t\t\t\texportLine += page + '\\n';\n\t\t\t}\n\t\t\tme.formattedExportContent += exportLine;\n\t\t} );\n\t},\n\n\tgetData: function () {\n\t\tvar me = this,\n\t\t\tpages = [],\n\t\t\trange = this.store.getRange();\n\t\t$.each( range, function ( idx, item ) {\n\t\t\tif ( item.data.included === false ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tpages.push( item.data.pageTitle );\n\t\t} );\n\n\t\tvar data = {\n\t\t\tpages: pages,\n\t\t\tlink: false,\n\t\t\toverwrite: false,\n\t\t\tname: me.tbName.getValue()\n\t\t};\n\n\t\tif ( me.rgFormat.getValue()[ 'export-format' ] === 'link' ) {\n\t\t\tdata.link = true;\n\t\t}\n\n\t\tif ( me.cbxOverwrite.getValue() ) {\n\t\t\tdata.overwrite = true;\n\t\t}\n\n\t\treturn data;\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/dialog/Upload.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":16,"column":21,"nodeType":"Identifier","messageId":"undef","endLine":16,"endColumn":23},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":16,"column":38,"nodeType":"Identifier","messageId":"undef","endLine":16,"endColumn":39}],"errorCount":0,"warningCount":3,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.dialog.Upload', {\n\textend: 'MWExt.Dialog',\n\trequires: [\n\t\t'BS.panel.Upload'\n\t],\n\tminHeight: 50,\n\tminWidth: 400,\n\tpadding: null,\n\ttitle: mw.message( 'bs-upload-uploaddialogtitle' ).plain(),\n\tlayout: 'fit',\n\n\t/* Component specific */\n\tuploadPanelCfg: {},\n\n\tafterInitComponent: function () {\n\t\tthis.upMain = new BS.panel.Upload( $.extend(\n\t\t\tthis.uploadPanelCfg,\n\t\t\t{\n\t\t\t\tid: this.getId() + '-upload-panel',\n\t\t\t\tallowedFileExtensions: this.allowedFileExtensions\n\t\t\t} ) );\n\t\tthis.upMain.on( 'upload-complete', this.onUpMainUploadComplete, this );\n\n\t\tthis.items = [\n\t\t\tthis.upMain\n\t\t];\n\n\t\tthis.callParent( arguments );\n\t},\n\n\tonBtnOKClick: function () {\n\t\tthis.upMain.uploadFile();\n\t},\n\n\tonUpMainUploadComplete: function ( panel, upload ) {\n\t\tthis.fireEvent( 'ok', this, upload );\n\t\tthis.close();\n\t},\n\n\tresetData: function () {\n\t\tthis.upMain.getForm().reset();\n\t\tthis.callParent( arguments );\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/dialog/UploadWarnings.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":52,"column":9,"nodeType":"VariableDeclaration","messageId":"top","endLine":52,"endColumn":20},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":53,"column":4,"nodeType":"VariableDeclaration","messageId":"top","endLine":53,"endColumn":53},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":53,"column":4,"nodeType":"VariableDeclaration","messageId":"combine","endLine":53,"endColumn":53},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":75,"column":23,"nodeType":"Identifier","messageId":"undef","endLine":75,"endColumn":26},{"ruleId":"no-mixed-spaces-and-tabs","severity":1,"message":"Mixed spaces and tabs.","line":95,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":95,"endColumn":4},{"ruleId":"no-mixed-spaces-and-tabs","severity":1,"message":"Mixed spaces and tabs.","line":96,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":96,"endColumn":4},{"ruleId":"no-mixed-spaces-and-tabs","severity":1,"message":"Mixed spaces and tabs.","line":105,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":105,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":108,"column":21,"nodeType":"Identifier","messageId":"undef","endLine":108,"endColumn":22},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":109,"column":10,"nodeType":"VariableDeclaration","messageId":"combine","endLine":109,"endColumn":15},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":109,"column":10,"nodeType":"VariableDeclaration","messageId":"top","endLine":109,"endColumn":15},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":113,"column":5,"nodeType":"VariableDeclaration","messageId":"top","endLine":113,"endColumn":30},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":113,"column":5,"nodeType":"VariableDeclaration","messageId":"combine","endLine":113,"endColumn":30},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":113,"column":17,"nodeType":"Identifier","messageId":"undef","endLine":113,"endColumn":18},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":116,"column":5,"nodeType":"VariableDeclaration","messageId":"combine","endLine":118,"endColumn":46},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":116,"column":5,"nodeType":"VariableDeclaration","messageId":"top","endLine":118,"endColumn":46},{"ruleId":"no-mixed-spaces-and-tabs","severity":1,"message":"Mixed spaces and tabs.","line":117,"column":4,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":117,"endColumn":6},{"ruleId":"no-mixed-spaces-and-tabs","severity":1,"message":"Mixed spaces and tabs.","line":118,"column":4,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":118,"endColumn":6}],"errorCount":0,"warningCount":18,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.dialog.UploadWarnings', {\n\textend: 'MWExt.Dialog',\n\tminHeight: 50,\n\tminWidth: 500,\n\tpadding: null,\n\ttitle: mw.message( 'bs-upload-uploadwarningdialog-title' ).plain(),\n\tcloseAction: 'destroy',\n\tcls: 'bs-extjs-dlg-upload-warning',\n\n\tapiUpload: {},\n\n\tafterInitComponent: function () {\n\t\tthis.items = [];\n\t\tthis.addIntro();\n\t\tthis.addWarnings();\n\t\tthis.addOutro();\n\n\t\tthis.callParent( arguments );\n\t},\n\n\taddIntro: function () {\n\t\tthis.items.push( {\n\t\t\tcls: 'intro',\n\t\t\thtml: mw.message( 'bs-upload-uploadwarningdialog-intro' ).plain()\n\t\t} );\n\t},\n\n\taddOutro: function () {\n\t\tthis.items.push( {\n\t\t\tcls: 'outro',\n\t\t\thtml: mw.message( 'bs-upload-uploadwarningdialog-outro' ).plain()\n\t\t} );\n\t},\n\n\t/**\n\t * Example:\n\t * this.apiUpload = {\n\t *   \"result\":\"Warning\",\n\t *   \"warnings\": {\n\t *     \"duplicate\": [\n\t *       \"000_BlueSpice-Chili.jpg\"\n\t *     ],\n\t *   \"exists\": \"BlueSpice-Chili.jpg\"\n\t *   },\n\t *   \"filekey\":\"14tu4hqpqdhs.1765v2.1.jpg\",\n\t *   \"sessionkey\":\"14tu4hqpqdhs.1765v2.1.jpg\"\n\t * }\n\t *\n\t * @return {undefined}\n\t */\n\taddWarnings: function () {\n\t\tfor ( var warning in this.apiUpload.warnings ) {\n\t\t\tvar warnVal = this.apiUpload.warnings[ warning ];\n\t\t\tif ( warning === 'exists' ) {\n\t\t\t\tthis.addExistsWarning( warnVal );\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif ( warning === 'duplicate' ) {\n\t\t\t\tthis.addDuplicateWarning( warnVal );\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tthis.addUnknownWarning( warnVal );\n\t\t}\n\t},\n\n\taddExistsWarning: function ( fileName ) {\n\t\tthis.items.push( {\n\t\t\tcls: 'warning',\n\t\t\thtml: mw.message( 'bs-upload-uploadwarningdialog-warning-exists', fileName ).plain()\n\t\t} );\n\t},\n\n\taddDuplicateWarning: function ( dups ) {\n\t\tthis.dupPanel = new Ext.Panel( {\n\t\t\tcls: 'warning',\n\t\t\titems: [ {\n\t\t\t\thtml: mw.message( 'bs-upload-uploadwarningdialog-warning-duplicate', dups.length ).text()\n\t\t\t} ]\n\t\t} );\n\n\t\tthis.items.push( this.dupPanel );\n\t\tthis.fetchDuplicates( dups );\n\t},\n\n\taddUnknownWarning: function ( warning ) {\n\t\tthis.items.push( {\n\t\t\tcls: 'warning',\n\t\t\thtml: mw.message( 'bs-upload-uploadwarningdialog-warning-unknown', warning ).plain()\n\t\t} );\n\t},\n\n\tfetchDuplicates: function ( dups ) {\n\t\tvar api = new mw.Api(),\n\t\t me = this,\n\t\t params = {\n\t\t\t\taction: 'query',\n\t\t\t\ttitles: 'File:' + dups.join( '|File:' ),\n\t\t\t\tprop: 'imageinfo',\n\t\t\t\tiiprop: 'url',\n\t\t\t\tiiurlwidth: 64,\n\t\t\t\tindexpageids: ''\n\t\t\t},\n\n\t\t item = '<a href=\"{0}\" data-bs-title=\"{1}\" target=\"_blank\"><img alt=\"{1}\" src=\"{2}\" width=\"64\" class=\"thumbimage\">{1}</a>';\n\n\t\tapi.get( params ).done( function ( response ) {\n\t\t\tvar $container = $( '<div>' );\n\t\t\tfor ( var i in response.query.pages ) {\n\t\t\t\tif ( i < 0 ) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tvar $item = $( '<div>' );\n\t\t\t\t$container.append( $item );\n\n\t\t\t\tvar href = response.query.pages[ i ].imageinfo[ 0 ].descriptionurl,\n\t\t\t\t src = response.query.pages[ i ].imageinfo[ 0 ].thumburl,\n\t\t\t\t title = response.query.pages[ i ].title;\n\n\t\t\t\t$item.append( item.format( href, title, src ) );\n\t\t\t}\n\t\t\tme.dupPanel.add( {\n\t\t\t\tautoScroll: true,\n\t\t\t\thtml: $container.html()\n\t\t\t} );\n\t\t} );\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/flyout/TabbedDataViewBase.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":19,"column":10,"nodeType":"Identifier","messageId":"undef","endLine":19,"endColumn":11},{"ruleId":"no-unused-vars","severity":1,"message":"'parentNode' is defined but never used.","line":29,"column":23,"nodeType":"Identifier","messageId":"unusedVar","endLine":29,"endColumn":33},{"ruleId":"no-unused-vars","severity":1,"message":"'containerIdx' is defined but never used.","line":29,"column":35,"nodeType":"Identifier","messageId":"unusedVar","endLine":29,"endColumn":47},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":31,"column":3,"nodeType":"Identifier","messageId":"undef","endLine":31,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":31,"column":55,"nodeType":"Identifier","messageId":"undef","endLine":31,"endColumn":56},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":34,"column":4,"nodeType":"VariableDeclaration","messageId":"top","endLine":35,"endColumn":50},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":34,"column":20,"nodeType":"Identifier","messageId":"undef","endLine":34,"endColumn":21},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":41,"column":3,"nodeType":"Identifier","messageId":"undef","endLine":41,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":41,"column":54,"nodeType":"Identifier","messageId":"undef","endLine":41,"endColumn":55},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":45,"column":9,"nodeType":"Identifier","messageId":"undef","endLine":45,"endColumn":10},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":70,"column":14,"nodeType":"Identifier","messageId":"undef","endLine":70,"endColumn":17},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":75,"column":17,"nodeType":"Identifier","messageId":"undef","endLine":75,"endColumn":20},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":81,"column":9,"nodeType":"Identifier","messageId":"undef","endLine":81,"endColumn":12},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":95,"column":14,"nodeType":"Identifier","messageId":"undef","endLine":95,"endColumn":17},{"ruleId":"valid-jsdoc","severity":1,"message":"Missing JSDoc return description.","line":167,"column":2,"nodeType":"Block","messageId":"missingReturnDesc","endLine":172,"endColumn":5},{"ruleId":"valid-jsdoc","severity":1,"message":"Missing JSDoc parameter description for 'values'.","line":170,"column":5,"nodeType":"Block","messageId":"missingParamDesc","endLine":170,"endColumn":27},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":185,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":185,"endColumn":75},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":185,"column":3,"nodeType":"VariableDeclaration","messageId":"combine","endLine":185,"endColumn":75},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":185,"column":58,"nodeType":"Identifier","messageId":"undef","endLine":185,"endColumn":59},{"ruleId":"no-unused-vars","severity":1,"message":"'values' is defined but never used.","line":197,"column":47,"nodeType":"Identifier","messageId":"unusedVar","endLine":197,"endColumn":53},{"ruleId":"no-unused-vars","severity":1,"message":"'values' is defined but never used.","line":213,"column":34,"nodeType":"Identifier","messageId":"unusedVar","endLine":213,"endColumn":40},{"ruleId":"no-unused-vars","severity":1,"message":"'values' is defined but never used.","line":217,"column":40,"nodeType":"Identifier","messageId":"unusedVar","endLine":217,"endColumn":46},{"ruleId":"no-tabs","severity":1,"message":"Unexpected tab character.","line":235,"column":2,"nodeType":"Program","messageId":"unexpectedTab","endLine":235,"endColumn":3},{"ruleId":"no-tabs","severity":1,"message":"Unexpected tab character.","line":236,"column":2,"nodeType":"Program","messageId":"unexpectedTab","endLine":236,"endColumn":4},{"ruleId":"no-tabs","severity":1,"message":"Unexpected tab character.","line":237,"column":2,"nodeType":"Program","messageId":"unexpectedTab","endLine":237,"endColumn":5},{"ruleId":"no-tabs","severity":1,"message":"Unexpected tab character.","line":238,"column":2,"nodeType":"Program","messageId":"unexpectedTab","endLine":238,"endColumn":4},{"ruleId":"no-tabs","severity":1,"message":"Unexpected tab character.","line":239,"column":2,"nodeType":"Program","messageId":"unexpectedTab","endLine":239,"endColumn":3},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":264,"column":25,"nodeType":"Identifier","messageId":"undef","endLine":264,"endColumn":28},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":272,"column":22,"nodeType":"Identifier","messageId":"undef","endLine":272,"endColumn":25},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":283,"column":26,"nodeType":"Identifier","messageId":"undef","endLine":283,"endColumn":29},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":291,"column":14,"nodeType":"Identifier","messageId":"undef","endLine":291,"endColumn":17},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":331,"column":4,"nodeType":"VariableDeclaration","messageId":"top","endLine":332,"endColumn":68},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":331,"column":4,"nodeType":"VariableDeclaration","messageId":"combine","endLine":332,"endColumn":68},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":331,"column":17,"nodeType":"Identifier","messageId":"undef","endLine":331,"endColumn":18},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":332,"column":30,"nodeType":"Identifier","messageId":"undef","endLine":332,"endColumn":31},{"ruleId":"valid-jsdoc","severity":1,"message":"Missing JSDoc return description.","line":337,"column":2,"nodeType":"Block","messageId":"missingReturnDesc","endLine":352,"endColumn":5},{"ruleId":"no-tabs","severity":1,"message":"Unexpected tab character.","line":341,"column":4,"nodeType":"Program","messageId":"unexpectedTab","endLine":341,"endColumn":6},{"ruleId":"no-tabs","severity":1,"message":"Unexpected tab character.","line":342,"column":4,"nodeType":"Program","messageId":"unexpectedTab","endLine":342,"endColumn":7},{"ruleId":"no-tabs","severity":1,"message":"Unexpected tab character.","line":343,"column":4,"nodeType":"Program","messageId":"unexpectedTab","endLine":343,"endColumn":6},{"ruleId":"no-tabs","severity":1,"message":"Unexpected tab character.","line":344,"column":4,"nodeType":"Program","messageId":"unexpectedTab","endLine":344,"endColumn":7},{"ruleId":"no-tabs","severity":1,"message":"Unexpected tab character.","line":345,"column":4,"nodeType":"Program","messageId":"unexpectedTab","endLine":345,"endColumn":6},{"ruleId":"no-tabs","severity":1,"message":"Unexpected tab character.","line":346,"column":4,"nodeType":"Program","messageId":"unexpectedTab","endLine":346,"endColumn":7},{"ruleId":"no-tabs","severity":1,"message":"Unexpected tab character.","line":347,"column":4,"nodeType":"Program","messageId":"unexpectedTab","endLine":347,"endColumn":6},{"ruleId":"no-tabs","severity":1,"message":"Unexpected tab character.","line":348,"column":4,"nodeType":"Program","messageId":"unexpectedTab","endLine":348,"endColumn":5},{"ruleId":"valid-jsdoc","severity":1,"message":"Missing JSDoc parameter description for 'record'.","line":350,"column":5,"nodeType":"Block","messageId":"missingParamDesc","endLine":350,"endColumn":27},{"ruleId":"jsdoc/no-undefined-types","severity":1,"message":"The type 'Ext' is undefined.","line":351,"column":null,"nodeType":"Block","endLine":351,"endColumn":null},{"ruleId":"no-unused-vars","severity":1,"message":"'record' is defined but never used.","line":353,"column":28,"nodeType":"Identifier","messageId":"unusedVar","endLine":353,"endColumn":34},{"ruleId":"valid-jsdoc","severity":1,"message":"Missing JSDoc return type.","line":357,"column":2,"nodeType":"Block","messageId":"missingReturnType","endLine":361,"endColumn":5},{"ruleId":"jsdoc/require-returns-type","severity":1,"message":"Missing JSDoc @return type.","line":360,"column":null,"nodeType":"Block","endLine":360,"endColumn":null},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":363,"column":14,"nodeType":"Identifier","messageId":"undef","endLine":363,"endColumn":16},{"ruleId":"jsdoc/no-undefined-types","severity":1,"message":"The type 'Ext' is undefined.","line":370,"column":null,"nodeType":"Block","endLine":370,"endColumn":null}],"errorCount":0,"warningCount":52,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.flyout.TabbedDataViewBase', {\n\textend: 'Ext.tab.Panel',\n\trequires: [ 'BS.store.BSApi', 'BS.model.Title' ],\n\tcls: 'bs-flyout-tabbed-data-view',\n\n\t/* component specific */\n\tcommonStore: null,\n\tcommonStoreApiAction: 'bs-wikipage-store',\n\tpageSize: 25,\n\tdefaultTab: '',\n\ttabIndexMap: {},\n\n\tconstructor: function ( cfg ) {\n\t\tcfg.height = cfg.height || this.calcDefaultHeight( cfg.renderTo );\n\t\tthis.callParent( arguments );\n\t},\n\n\tcalcDefaultHeight: function ( target ) {\n\t\treturn $( target ).height();\n\t},\n\n\tinitComponent: function () {\n\t\tthis.commonStore = this.makeCommonStore();\n\t\tthis.items = this.makeTabs();\n\n\t\treturn this.callParent( arguments );\n\t},\n\n\tonRender: function ( parentNode, containerIdx ) {\n\t\t// TODO: This can probably be done with ExtJS too\n\t\t$( this.getEl().dom ).on( 'click', '.menu-trigger', $.proxy( function ( e ) {\n\t\t\te.preventDefault();\n\n\t\t\tvar recordIdx = $( e.target ).parents( '.thumbnail' ).data( 'recordindex' ),\n\t\t\t\trecord = this.commonStore.getAt( recordIdx );\n\t\t\tthis.showItemMenu( record, e.target );\n\n\t\t\treturn false;\n\t\t}, this ) );\n\n\t\t$( this.getEl().dom ).on( 'click', '.thumb-add a', $.proxy( function ( e ) {\n\n\t\t\tthis.onThumbAddClicked();\n\n\t\t\tif ( $( e.target ).attr( 'href' ) === '#' ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}, this ) );\n\n\t\tif ( this.getInitialActiveTab() ) {\n\t\t\tthis.setActiveTab( this.getInitialActiveTab() );\n\t\t}\n\t\treturn this.callParent( arguments );\n\t},\n\n\tmakeTabs: function () {\n\t\tthis.tabDataView = this.makeDataViewPanel();\n\t\tthis.tabGrid = this.makeGridPanel();\n\n\t\tthis.tabIndexMap.dataviewpanel = this.tabDataView;\n\t\tthis.tabIndexMap.gridviewpanel = this.tabGrid;\n\n\t\treturn [\n\t\t\tthis.tabDataView,\n\t\t\tthis.tabGrid\n\t\t];\n\t},\n\n\tmakeDataViewPanel: function () {\n\t\treturn new Ext.panel.Panel( {\n\t\t\ticonCls: 'icon-thumbs',\n\t\t\ttitle: mw.message( 'bs-extjs-flyout-tab-thumbs-label' ).text(),\n\t\t\ttooltip: mw.message( 'bs-extjs-flyout-tab-thumbs-title' ).text(),\n\t\t\tcls: 'preview',\n\t\t\titems: [ new Ext.view.View( {\n\t\t\t\tstore: this.commonStore,\n\t\t\t\ttpl: this.makeDataViewPanelTemplate(),\n\t\t\t\titemSelector: '.storeitem'\n\t\t\t} ) ],\n\t\t\tdockedItems: [\n\t\t\t\tnew Ext.toolbar.Paging( {\n\t\t\t\t\tpageSize: this.pageSize,\n\t\t\t\t\tstore: this.commonStore,\n\t\t\t\t\tdock: 'bottom',\n\t\t\t\t\tdisplayInfo: true\n\t\t\t\t} )\n\t\t\t]\n\t\t} );\n\t},\n\n\tmakeDataViewPanelTemplate: function () {\n\t\tvar me = this,\n\t\t\taddIcon = this.makeDataViewAddIcon();\n\n\t\treturn new Ext.XTemplate(\n\t\t\taddIcon,\n\t\t\t'<tpl for=\".\">',\n\t\t\t'<div class=\"thumbnail storeitem <tpl if=\"this.hasMenu(values)\">has-actions</tpl>\">',\n\t\t\t'<div class=\"caption\">',\n\t\t\t'<span class=\"title\">',\n\t\t\t'<a style=\"display:block;\" <tpl if=\"!exists\">class=\"new\"</tpl> href=\"{[this.makeMainLinkUrl(values)]}\" title=\"Read\">{[this.makeThumbnailCaptionTitle(values)]}</a>',\n\t\t\t'</span>',\n\t\t\t'<a style=\"display:block;\" href=\"{[this.makeMainLinkUrl(values)]}\" title=\"Read\">',\n\t\t\t'<div class=\"image\">',\n\t\t\t'<img src=\"{[this.makeThumbnailImageSrc(values)]}\" title=\"{[this.makeThumbnailImageTitle(values)]}\" alt=\"{[this.makeThumbnailImageAlt(values)]}\" onload=\"$(this).parent().addClass( \\'loaded\\' );\">',\n\t\t\t'</div>',\n\t\t\t'<ul class=\"meta\">',\n\t\t\t'<tpl for=\"this.makeMetaItems(values)\">',\n\t\t\t'<li>{itemHtml}</li>',\n\t\t\t'</tpl>',\n\t\t\t'</ul>',\n\t\t\t'</a>',\n\t\t\t'</div>',\n\t\t\t'<tpl if=\"this.hasMenu(values)\">',\n\t\t\t'<div class=\"actions\">',\n\t\t\t'<a class=\"menu-trigger\" href=\"#\" title=\"{[this.makeToolsLinkTitle()]}\">{[this.makeToolsLinkText()]}</a>',\n\t\t\t'</div>',\n\t\t\t'</tpl>',\n\t\t\t'</div>',\n\t\t\t'</tpl>',\n\t\t\t'<div class=\"x-clear\"></div>',\n\t\t\t{\n\t\t\t\tdisableFormats: true,\n\t\t\t\tmakeToolsLinkText: function () {\n\t\t\t\t\treturn me.makeToolsLinkText();\n\t\t\t\t},\n\t\t\t\tmakeToolsLinkTitle: function () {\n\t\t\t\t\treturn me.makeToolsLinkTitle();\n\t\t\t\t},\n\t\t\t\tmakeMainLinkUrl: function ( values ) {\n\t\t\t\t\treturn me.makeDataViewItemLinkUrl( values );\n\t\t\t\t},\n\t\t\t\tmakeThumbnailImageSrc: function ( values ) {\n\t\t\t\t\treturn me.makeDataViewThumbnailImageSrc( values );\n\t\t\t\t},\n\t\t\t\tmakeThumbnailImageTitle: function ( values ) {\n\t\t\t\t\treturn me.makeDataViewThumbnailImageTitle( values );\n\t\t\t\t},\n\t\t\t\tmakeThumbnailImageAlt: function ( values ) {\n\t\t\t\t\treturn me.makeDataViewThumbnailImageAlt( values );\n\t\t\t\t},\n\t\t\t\tmakeThumbnailCaptionTitle: function ( values ) {\n\t\t\t\t\treturn me.makeDataViewThumbnailCaptionTitle( values );\n\t\t\t\t},\n\t\t\t\thasMenu: function ( values ) {\n\t\t\t\t\treturn me.dataViewItemHasMenu( values );\n\t\t\t\t},\n\t\t\t\tmakeMetaItems: function ( values ) {\n\t\t\t\t\treturn me.makeDataViewItemMetaItems( values );\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\t},\n\n\tmakeToolsLinkText: function () {\n\t\treturn mw.message( 'bs-extjs-tools-trigger-text' ).text();\n\t},\n\n\tmakeToolsLinkTitle: function () {\n\t\treturn mw.message( 'bs-extjs-tools-trigger-title' ).text();\n\t},\n\n\tmakeDataViewItemLinkUrl: function ( values ) {\n\t\treturn mw.util.getUrl( values.page_prefixedtext );\n\t},\n\n\t/**\n\t * E.g. <scriptpath>/dynamic_file.php?module=articlepreviewimage&width=160px&titletext=Main Page\n\t *\n\t * @param {Object} values\n\t * @return {string}\n\t */\n\tmakeDataViewThumbnailImageSrc: function ( values ) {\n\t\tvar query = {\n\t\t\t\tmodule: this.makeDataViewThumbImageModuleName(),\n\t\t\t\twidth: '320px',\n\t\t\t\ttitletext: this.makeDataViewThumbImageTitletextValue( values )\n\t\t\t},\n\t\t\trevid = this.makeDataViewThumbImageRevidValue( values );\n\t\tif ( revid > 0 ) {\n\t\t\tquery.revid = revid;\n\t\t}\n\n\t\t// TODO: Create and use abtraction for 'dynamic_file' in 'bs.util';\n\t\tvar url = mw.util.wikiScript( 'dynamic_file' ) + '?' + $.param( query );\n\t\treturn url;\n\t},\n\n\tmakeDataViewThumbImageModuleName: function () {\n\t\treturn 'articlepreviewimage';\n\t},\n\n\tmakeDataViewThumbImageTitletextValue: function ( values ) {\n\t\treturn values.prefixedText;\n\t},\n\n\tmakeDataViewThumbImageRevidValue: function ( values ) {\n\t\treturn 0;\n\t},\n\n\tmakeDataViewThumbnailImageTitle: function ( values ) {\n\t\treturn values.displayText;\n\t},\n\n\tmakeDataViewThumbnailImageAlt: function ( values ) {\n\t\treturn values.displayText;\n\t},\n\n\tmakeDataViewThumbnailCaptionTitle: function ( values ) {\n\t\treturn values.displayText;\n\t},\n\n\tdataViewItemHasMenu: function ( values ) {\n\t\treturn false;\n\t},\n\n\tmakeDataViewItemMetaItems: function ( values ) {\n\t\treturn [];\n\t},\n\n\tmakeDataViewAddIcon: function () {\n\t\tif ( this.showAddIcon() ) {\n\t\t\treturn this.makeAddIconHTML();\n\t\t}\n\t\treturn '';\n\t},\n\n\tshowAddIcon: function () {\n\t\treturn true;\n\t},\n\n\tmakeAddIconHTML: function () {\n\t\tvar html =\n'<div class=\"thumbnail thumb-add\">' +\n'\t<div class=\"caption first\">' +\n'\t\t<a href=\"' + this.makeAddIconHref() + '\" title=\"' + this.makeAddIconTooltip() + '\">' +\n'\t\t\t<span>' + this.makeAddIconLabel() + '</span>' +\n'\t\t</a>' +\n'\t</div>' +\n'</div>';\n\n\t\treturn html;\n\n\t},\n\n\tmakeAddIconHref: function () {\n\t\treturn '#';\n\t},\n\n\tmakeAddIconTooltip: function () {\n\t\treturn mw.message( 'bs-extjs-flyout-add-title' ).text();\n\t},\n\n\tmakeAddIconLabel: function () {\n\t\treturn mw.message( 'bs-extjs-flyout-add-label' ).text();\n\t},\n\n\tonThumbAddClicked: function () {\n\t\t// Should be implemented by subclass\n\t},\n\n\tmakeGridPanel: function () {\n\t\tvar dockedItems = [];\n\t\tdockedItems.push( new Ext.toolbar.Paging( {\n\t\t\tpageSize: this.pageSize,\n\t\t\tstore: this.commonStore,\n\t\t\tdock: 'bottom',\n\t\t\tdisplayInfo: true\n\t\t} ) );\n\n\t\tif ( this.showAddIcon() ) {\n\t\t\tthis.btnAdd = new Ext.Button( {\n\t\t\t\tid: this.getId() + '-btn-add',\n\t\t\t\ticonCls: 'btn32',\n\t\t\t\ttooltip: mw.message( 'bs-extjs-add' ).plain(),\n\t\t\t\theight: 50,\n\t\t\t\twidth: 52\n\t\t\t} );\n\t\t\tthis.btnAdd.on( 'click', function () {\n\t\t\t\tthis.onThumbAddClicked();\n\t\t\t}, this );\n\n\t\t\tdockedItems.push( new Ext.Toolbar( {\n\t\t\t\tdock: 'top',\n\t\t\t\titems: [\n\t\t\t\t\tthis.btnAdd\n\t\t\t\t]\n\t\t\t} ) );\n\t\t}\n\n\t\treturn new Ext.grid.Panel( {\n\t\t\ticonCls: 'icon-grid',\n\t\t\tcls: 'list',\n\t\t\ttitle: mw.message( 'bs-extjs-flyout-tab-grid-label' ).text(),\n\t\t\ttooltip: mw.message( 'bs-extjs-flyout-tab-grid-title' ).text(),\n\t\t\tstore: this.commonStore,\n\t\t\tcolumns: this.makeGridPanelColums(),\n\t\t\tdockedItems: dockedItems,\n\t\t\tplugins: this.makeGridPlugins(),\n\t\t\tfeatures: this.makeGridFeatures()\n\t\t} );\n\t},\n\n\tmakeGridFeatures: function () {\n\t\treturn [];\n\t},\n\n\tmakeGridPlugins: function () {\n\t\treturn [\n\t\t\t'gridfilters'\n\t\t];\n\t},\n\n\tmakeGridPanelColums: function () {\n\t\treturn [ {\n\t\t\ttext: 'Title',\n\t\t\tdataIndex: 'prefixed_text',\n\t\t\tflex: 1,\n\t\t\tfilter: {\n\t\t\t\ttype: 'string'\n\t\t\t},\n\t\t\trenderer: function ( value, metadata, record ) {\n\t\t\t\treturn record.get( 'page_link' );\n\t\t\t}\n\t\t} ];\n\t},\n\n\tshowItemMenu: function ( record, toolsTriggerEl ) {\n\t\tvar toolsMenu = this.makeTooleMenu( record );\n\t\tif ( toolsMenu ) {\n\t\t\tvar offset = $( toolsTriggerEl ).offset(),\n\t\t\t\tmarginTop = offset.top + $( toolsTriggerEl ).parent().height();\n\t\t\ttoolsMenu.showAt( offset.left, marginTop );\n\t\t}\n\t},\n\n\t/**\n\t * Must be implemented by a subclass if a menu should be available\n\t * E.g.\n\t * return new Ext.menu.Menu( {\n\t *\t\titems: [{\n\t *\t\t\ttext: 'regular item 1'\n\t *\t\t},{\n\t *\t\t\ttext: 'regular item 2'\n\t *\t\t},{\n\t *\t\t\ttext: 'regular item 3'\n\t *\t\t}]\n\t *\t} );\n\t *\n\t * @param {Object} record\n\t * @return {Ext.menu.Menu}\n\t */\n\tmakeTooleMenu: function ( record ) {\n\t\treturn null;\n\t},\n\n\t/**\n\t * This is just dummy data! Override in subclass!\n\t *\n\t * @return Ext.data.Store\n\t */\n\tmakeCommonStore: function () {\n\t\treturn new BS.store.BSApi( {\n\t\t\tmodel: 'BS.model.Title',\n\t\t\tapiAction: this.commonStoreApiAction\n\t\t} );\n\t},\n\n\t/**\n\t * @return {Ext.Component}|null\n\t */\n\tgetInitialActiveTab: function () {\n\t\tif ( !this.defaultTab || this.defaultTab === '' ) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn this.tabIndexMap[ this.defaultTab ] || null;\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/flyout/TwoColumnsBase.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"valid-jsdoc","severity":1,"message":"Missing JSDoc return description.","line":104,"column":2,"nodeType":"Block","messageId":"missingReturnDesc","endLine":111,"endColumn":5},{"ruleId":"max-len","severity":1,"message":"This line has a length of 111. Maximum allowed is 100.","line":137,"column":1,"nodeType":"Program","messageId":"max","endLine":137,"endColumn":94},{"ruleId":"max-len","severity":1,"message":"This line has a length of 133. Maximum allowed is 100.","line":138,"column":1,"nodeType":"Program","messageId":"max","endLine":138,"endColumn":116},{"ruleId":"max-len","severity":1,"message":"This line has a length of 144. Maximum allowed is 100.","line":139,"column":1,"nodeType":"Program","messageId":"max","endLine":139,"endColumn":127},{"ruleId":"valid-jsdoc","severity":1,"message":"Missing JSDoc return description.","line":156,"column":2,"nodeType":"Block","messageId":"missingReturnDesc","endLine":160,"endColumn":5}],"errorCount":0,"warningCount":6,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.flyout.TwoColumnsBase', {\n\textend: 'Ext.panel.Panel',\n\tmixin: [\n\t\t'Ext.mixin.Responsive'\n\t],\n\tplugins: 'responsive',\n\tresponsiveConfig: {\n\t\t'width < 1024': {\n\t\t\tlayout: {\n\t\t\t\ttype: 'vbox',\n\t\t\t\tvertical: true,\n\t\t\t\talign: 'stretch'\n\t\t\t}\n\t\t},\n\t\t'width >= 1024': {\n\t\t\tlayout: 'border',\n\t\t\theight: 600\n\t\t}\n\t},\n\tcls: 'bs-flyout-two-columns',\n\n\tinitComponent: function () {\n\t\tthis.items = [];\n\n\t\tthis.addTopPanel();\n\t\tthis.addCenterPanels();\n\t\tthis.addBottomPanel();\n\n\t\treturn this.callParent( arguments );\n\t},\n\n\taddTopPanel: function () {\n\t\tvar items = this.makeTopPanelItems();\n\t\tif ( items.length > 0 ) {\n\t\t\tthis.items.push( this.makeTopPanel( items ) );\n\t\t}\n\t},\n\n\tmakeTopPanel: function ( items ) {\n\t\treturn {\n\t\t\tregion: 'north',\n\t\t\tcls: 'panel-top',\n\t\t\titems: items\n\t\t};\n\t},\n\n\taddBottomPanel: function () {\n\t\tvar items = this.makeBottomPanelItems();\n\t\tif ( items.length > 0 ) {\n\t\t\tthis.items.push( this.makeBottomPanel( items ) );\n\t\t}\n\t},\n\n\tmakeBottomPanel: function ( items ) {\n\t\treturn {\n\t\t\tregion: 'south',\n\t\t\tcls: 'panel-bottom',\n\t\t\titems: items\n\t\t};\n\t},\n\n\taddCenterPanels: function () {\n\t\tvar centerOneItems = this.makeCenterOneItems(),\n\t\t\tcenterTwoItems = this.makeCenterTwoItems();\n\n\t\tif ( centerOneItems.length > 0 ) {\n\t\t\tthis.items.push( this.makeCenterOnePanel( centerOneItems ) );\n\t\t}\n\n\t\tif ( centerTwoItems.length > 0 ) {\n\t\t\tthis.items.push( this.makeCenterTwoPanel( centerTwoItems ) );\n\t\t}\n\t},\n\n\tmakeCenterOnePanel: function ( items ) {\n\t\treturn {\n\t\t\tregion: 'west',\n\t\t\tscrollable: 'y',\n\t\t\twidth: '40%',\n\t\t\tbodyPadding: 5,\n\t\t\tcls: 'panel-center-one',\n\t\t\titems: items\n\t\t};\n\t},\n\n\tmakeCenterTwoPanel: function ( items ) {\n\t\treturn {\n\t\t\tregion: 'center',\n\t\t\tscrollable: 'y',\n\t\t\tbodyPadding: 5,\n\t\t\tcls: 'panel-center-two',\n\t\t\titems: items\n\t\t};\n\t},\n\n\tmakeTopPanelItems: function () {\n\t\treturn [];\n\t},\n\n\tmakeBottomPanelItems: function () {\n\t\treturn [];\n\t},\n\n\t/**\n\t * HINT: It's intentional \"CenterOne\" and \"CenterTwo\", instead of \"Left\"\n\t * and \"Right\". This is to maybe add RTL support in future.\n\t *\n\t * Should be overwritten by subclass\n\t *\n\t * @return {Array}\n\t */\n\tmakeCenterOneItems: function () {\n\t\treturn [];\n\t/* DEMO\n\t\treturn [ {\n\t\t\ttitle: 'Some form',\n\t\t\txtype: 'form',\n\t\t\tbodyPadding: 10,\n\t\t\tfieldDefaults: {\n\t\t\t\tlabelAlign: 'right',\n\t\t\t},\n\t\t\titems: [ {\n\t\t\t\tfieldLabel: 'From',\n\t\t\t\txtype: 'datefield',\n\t\t\t\tvalue: new Date()\n\t\t\t}, {\n\t\t\t\tfieldLabel: 'To',\n\t\t\t\txtype: 'datefield',\n\t\t\t\tvalue: new Date( (new Date()).getTime() + 7 * 24 * 60 * 60 * 1000)\n\t\t\t}, {\n\t\t\t\t\txtype: 'checkboxgroup',\n\t\t\t\t\tfieldLabel: 'Some checkbox button group',\n\t\t\t\t\tlabelAlign: 'top',\n\t\t\t\t\tvertical: true,\n\t\t\t\t\tcolumns: 1,\n\t\t\t\t\titems: [\n\t\t\t\t\t\t{ boxLabel: 'Lorem ipsum dolor ist amet', name: 'rb', inputValue: '1', checked: true },\n\t\t\t\t\t\t{ boxLabel: 'Consectetuer adipiscing elit, aenean commodo ligula eget dolor.', name: 'rb', inputValue: '2' },\n\t\t\t\t\t\t{ boxLabel: 'Cum sociis natoque penatibus et magnis dis parturient montes', name: 'rb', inputValue: '3', checked: true }\n\t\t\t\t\t]\n\t\t\t}],\n\t\t\tbuttonAlign: 'center',\n\t\t\tbuttons: [ {\n\t\t\t\ttext: 'Save'\n\t\t\t}, {\n\t\t\t\ttext: 'Export'\n\t\t\t}, {\n\t\t\t\ttext: 'Delete'\n\t\t\t}, {\n\t\t\t\ttext: 'Cancel'\n\t\t\t} ]\n\t\t} ];\n\t*/\n\t},\n\n\t/**\n\t * Should be overwritten by subclass\n\t *\n\t * @return {Array}\n\t */\n\tmakeCenterTwoItems: function () {\n\t\treturn [];\n\t/* DEMO\n\t\treturn [ {\n\t\t\ttitle: 'Some other form',\n\t\t\txtype: 'form',\n\t\t\tbodyPadding: 10,\n\t\t\titems: [ {\n\t\t\t\txtype: 'fieldcontainer',\n\t\t\t\tlayout: 'hbox',\n\t\t\t\titems: [{\n\t\t\t\t\txtype: 'textfield',\n\t\t\t\t\temptyText: 'Enter something',\n\t\t\t\t\tflex: 3,\n\t\t\t\t\tpadding: '0 5 0 0'\n\t\t\t\t}, {\n\t\t\t\t\txtype: 'button',\n\t\t\t\t\tflex: 1,\n\t\t\t\t\ticonCls: 'bs-icon-upload',\n\t\t\t\t}, {\n\t\t\t\t\txtype: 'combobox',\n\t\t\t\t\tflex: 3,\n\t\t\t\t\tpadding: '0 0 0 5',\n\t\t\t\t\tqueryMode: 'local',\n\t\t\t\t\tdisplayField: 'name',\n\t\t\t\t\tvalueField: 'abbr',\n\t\t\t\t\temptyText: 'Select something',\n\t\t\t\t\tstore: {\n\t\t\t\t\t\tfields: ['abbr', 'name'],\n\t\t\t\t\t\tdata : [\n\t\t\t\t\t\t\t{\"abbr\":\"AL\", \"name\":\"Alabama\"},\n\t\t\t\t\t\t\t{\"abbr\":\"AK\", \"name\":\"Alaska\"},\n\t\t\t\t\t\t\t{\"abbr\":\"AZ\", \"name\":\"Arizona\"}\n\t\t\t\t\t\t]\n\t\t\t\t\t}\n\t\t\t\t}]\n\t\t\t}, {\n\t\t\t\txtype: 'checkboxfield',\n\t\t\t\tboxLabel: 'Public',\n\t\t\t\tinputValue: '1'\n\t\t\t}, {\n\t\t\t\txtype: 'combobox',\n\t\t\t\tflex: 1,\n\t\t\t\tqueryMode: 'local',\n\t\t\t\tdisplayField: 'name',\n\t\t\t\tvalueField: 'abbr',\n\t\t\t\temptyText: 'Select something',\n\t\t\t\tstore: {\n\t\t\t\t\tfields: ['abbr', 'name'],\n\t\t\t\t\tdata : [\n\t\t\t\t\t\t{\"abbr\":\"AL\", \"name\":\"Alabama\"},\n\t\t\t\t\t\t{\"abbr\":\"AK\", \"name\":\"Alaska\"},\n\t\t\t\t\t\t{\"abbr\":\"AZ\", \"name\":\"Arizona\"}\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t}]\n\t\t}, {\n\t\t\ttitle: 'Some grid',\n\t\t\txtype: 'gridpanel',\n\t\t\tbodyPadding: 10,\n\t\t\tcolumns: [\n\t\t\t\t{ text: 'Name', dataIndex: 'name' },\n\t\t\t\t{ text: 'Email', dataIndex: 'email', flex: 1 },\n\t\t\t\t{ text: 'Phone', dataIndex: 'phone' }\n\t\t\t],\n\t\t\tstore: {\n\t\t\t\tfields:[ 'name', 'email', 'phone'],\n\t\t\t\tdata: [\n\t\t\t\t\t{ name: 'Lisa', email: 'lisa@simpsons.com', phone: '555-111-1224' },\n\t\t\t\t\t{ name: 'Bart', email: 'bart@simpsons.com', phone: '555-222-1234' },\n\t\t\t\t\t{ name: 'Homer', email: 'homer@simpsons.com', phone: '555-222-1244' },\n\t\t\t\t\t{ name: 'Marge', email: 'marge@simpsons.com', phone: '555-222-1254' }\n\t\t\t\t]\n\t\t\t}\n\t\t} ];\n\t*/\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/form/CategoryBoxSelect.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4}],"errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.form.CategoryBoxSelect', {\n\textend: 'BS.form.field.CategoryTag'\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/form/CategoryCombo.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":18,"column":15,"nodeType":"Identifier","messageId":"undef","endLine":18,"endColumn":18},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":21,"column":10,"nodeType":"Identifier","messageId":"undef","endLine":21,"endColumn":12}],"errorCount":0,"warningCount":3,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.form.CategoryCombo', {\n\textend: 'Ext.form.field.ComboBox',\n\trequires: [ 'BS.model.Category' ],\n\ttriggerAction: 'all',\n\tdisplayField: 'text',\n\tvalueField: 'text',\n\tallowBlank: false,\n\tforceSelection: true,\n\tqueryMode: 'local',\n\temptyText: mw.message( 'bs-extjs-combo-box-default-placeholder' ).plain(),\n\n\tinitComponent: function () {\n\t\tthis.store = this.makeStore();\n\t\tthis.callParent( arguments );\n\t},\n\n\tmakeStore: function () {\n\t\tvar store = Ext.create( 'Ext.data.JsonStore', {\n\t\t\tproxy: {\n\t\t\t\ttype: 'ajax',\n\t\t\t\turl: bs.api.makeUrl( 'bs-category-store' ),\n\t\t\t\treader: {\n\t\t\t\t\ttype: 'json',\n\t\t\t\t\trootProperty: 'results',\n\t\t\t\t\tidProperty: 'cat_id'\n\t\t\t\t},\n\t\t\t\textraParams: {\n\t\t\t\t\tlimit: 9999\n\t\t\t\t}\n\t\t\t},\n\t\t\tmodel: 'BS.model.Category'\n\t\t} );\n\t\tstore.load();\n\n\t\treturn store;\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/form/CategoryTree.js","messages":[{"ruleId":"no-implicit-globals","severity":1,"message":"Global variable leak, declare the variable if it is intended to be local.","line":1,"column":1,"nodeType":"AssignmentExpression","messageId":"globalVariableLeak","endLine":211,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'BsCategoryChooser' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":18},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":21,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":24},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":33,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":36},{"ruleId":"no-undef","severity":1,"message":"'BsCategoryChooser' is not defined.","line":7,"column":3,"nodeType":"Identifier","messageId":"undef","endLine":7,"endColumn":20},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":9,"column":36,"nodeType":"Identifier","messageId":"undef","endLine":9,"endColumn":39},{"ruleId":"no-undef","severity":1,"message":"'BsCategoryChooser' is not defined.","line":18,"column":3,"nodeType":"Identifier","messageId":"undef","endLine":18,"endColumn":20},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":20,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":27,"endColumn":7},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":20,"column":26,"nodeType":"Identifier","messageId":"undef","endLine":20,"endColumn":29},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":30,"column":35,"nodeType":"Identifier","messageId":"undef","endLine":30,"endColumn":38},{"ruleId":"no-undef","severity":1,"message":"'stylepath' is not defined.","line":44,"column":13,"nodeType":"Identifier","messageId":"undef","endLine":44,"endColumn":22},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":57,"column":38,"nodeType":"Identifier","messageId":"undef","endLine":57,"endColumn":41},{"ruleId":"no-undef","severity":1,"message":"'BsCore' is not defined.","line":65,"column":13,"nodeType":"Identifier","messageId":"undef","endLine":65,"endColumn":19},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":78,"column":28,"nodeType":"Identifier","messageId":"undef","endLine":78,"endColumn":31},{"ruleId":"no-undef","severity":1,"message":"'BsCategoryChooserI18N' is not defined.","line":82,"column":21,"nodeType":"Identifier","messageId":"undef","endLine":82,"endColumn":42},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":87,"column":30,"nodeType":"Identifier","messageId":"undef","endLine":87,"endColumn":33},{"ruleId":"no-undef","severity":1,"message":"'BsCategoryChooserI18N' is not defined.","line":90,"column":21,"nodeType":"Identifier","messageId":"undef","endLine":90,"endColumn":42},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":95,"column":29,"nodeType":"Identifier","messageId":"undef","endLine":95,"endColumn":32},{"ruleId":"no-undef","severity":1,"message":"'BsCategoryChooserI18N' is not defined.","line":98,"column":10,"nodeType":"Identifier","messageId":"undef","endLine":98,"endColumn":31},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":102,"column":28,"nodeType":"Identifier","messageId":"undef","endLine":102,"endColumn":31},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":108,"column":31,"nodeType":"Identifier","messageId":"undef","endLine":108,"endColumn":34},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":118,"column":9,"nodeType":"Identifier","messageId":"undef","endLine":118,"endColumn":12},{"ruleId":"no-undef","severity":1,"message":"'BsCategoryChooserI18N' is not defined.","line":119,"column":12,"nodeType":"Identifier","messageId":"undef","endLine":119,"endColumn":33},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":127,"column":19,"nodeType":"Identifier","messageId":"undef","endLine":127,"endColumn":22},{"ruleId":"no-unused-vars","severity":1,"message":"'btn' is defined but never used.","line":146,"column":36,"nodeType":"Identifier","messageId":"unusedVar","endLine":146,"endColumn":39},{"ruleId":"no-unused-vars","severity":1,"message":"'event' is defined but never used.","line":146,"column":41,"nodeType":"Identifier","messageId":"unusedVar","endLine":146,"endColumn":46},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":151,"column":3,"nodeType":"VariableDeclaration","messageId":"combine","endLine":151,"endColumn":81},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":151,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":151,"endColumn":81},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":157,"column":3,"nodeType":"VariableDeclaration","messageId":"combine","endLine":161,"endColumn":85},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":157,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":161,"endColumn":85},{"ruleId":"no-mixed-spaces-and-tabs","severity":1,"message":"Mixed spaces and tabs.","line":158,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":158,"endColumn":4},{"ruleId":"new-cap","severity":1,"message":"A constructor name should not start with a lowercase letter.","line":161,"column":47,"nodeType":"NewExpression","messageId":"lower","endLine":161,"endColumn":57},{"ruleId":"no-unused-vars","severity":1,"message":"'noIdeaWhatThisParamIs' is defined but never used.","line":166,"column":49,"nodeType":"Identifier","messageId":"unusedVar","endLine":166,"endColumn":70},{"ruleId":"no-unused-vars","severity":1,"message":"'btn' is defined but never used.","line":166,"column":72,"nodeType":"Identifier","messageId":"unusedVar","endLine":166,"endColumn":75},{"ruleId":"no-unused-vars","severity":1,"message":"'event' is defined but never used.","line":166,"column":77,"nodeType":"Identifier","messageId":"unusedVar","endLine":166,"endColumn":82},{"ruleId":"no-unused-vars","severity":1,"message":"'event' is defined but never used.","line":170,"column":32,"nodeType":"Identifier","messageId":"unusedVar","endLine":170,"endColumn":37},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":178,"column":3,"nodeType":"VariableDeclaration","messageId":"combine","endLine":182,"endColumn":85},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":178,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":182,"endColumn":85},{"ruleId":"new-cap","severity":1,"message":"A constructor name should not start with a lowercase letter.","line":182,"column":47,"nodeType":"NewExpression","messageId":"lower","endLine":182,"endColumn":57},{"ruleId":"no-unused-vars","severity":1,"message":"'valueField' is defined but never used.","line":187,"column":23,"nodeType":"Identifier","messageId":"unusedVar","endLine":187,"endColumn":33},{"ruleId":"no-unused-vars","severity":1,"message":"'valueField' is defined but never used.","line":202,"column":26,"nodeType":"Identifier","messageId":"unusedVar","endLine":202,"endColumn":36},{"ruleId":"no-undef","severity":1,"message":"'setValue' is not defined.","line":206,"column":3,"nodeType":"Identifier","messageId":"undef","endLine":206,"endColumn":11},{"ruleId":"no-unused-vars","severity":1,"message":"'value' is defined but never used.","line":209,"column":28,"nodeType":"Identifier","messageId":"unusedVar","endLine":209,"endColumn":33}],"errorCount":0,"warningCount":43,"fixableErrorCount":0,"fixableWarningCount":0,"source":"BsCategoryChooser = Ext.extend( Ext.form.Field, {\n\twidth: 400,\n\theight: 300,\n\tcls: 'bs-form-categorychooser',\n\tdefaultAutoCreate: { tag: 'div' },\n\tinitComponent: function () {\n\t\tBsCategoryChooser.superclass.initComponent.call( this );\n\n\t\tthis.chosenCategoriesStore = new Ext.data.JsonStore( {\n\t\t\tfields: [\n\t\t\t\t{ name: 'text' }\n\t\t\t]\n\t\t} );\n\t},\n\n\t// private\n\tonRender: function ( ct, position ) {\n\t\tBsCategoryChooser.superclass.onRender.call( this, ct, position );\n\n\t\tvar fs = this.fs = new Ext.form.FieldSet( {\n\t\t\trenderTo: this.el,\n\t\t\ttitle: this.legend,\n\t\t\theight: this.height,\n\t\t\twidth: this.width,\n\t\t\tstyle: 'padding:0;',\n\t\t\ttbar: this.tbar\n\t\t} );\n\t\tfs.body.addClass( 'bs-catchooser' );\n\n\t\tthis.chosenCategoriesGrid = new Ext.grid.GridPanel( {\n\t\t\tborder: false,\n\t\t\theight: this.height - 2 * 65,\n\t\t\twidth: this.width / 2,\n\t\t\tstore: this.chosenCategoriesStore,\n\t\t\tcolumns: [\n\t\t\t\t{\n\t\t\t\t\tid: 'category',\n\t\t\t\t\tdataIndex: 'text'\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\txtype: 'actioncolumn',\n\t\t\t\t\twidth: 25,\n\t\t\t\t\titems: [ {\n\t\t\t\t\t\ticon: stylepath + '/bluespice/bs-delete.png', // Use a URL in the icon config\n\t\t\t\t\t\ttooltip: '',\n\t\t\t\t\t\thandler: this.removeCategoryClicked,\n\t\t\t\t\t\tscope: this\n\t\t\t\t\t} ]\n\t\t\t\t}\n\t\t\t],\n\t\t\tstripeRows: true,\n\t\t\tenableHdMenu: false,\n\t\t\thideHeaders: true,\n\t\t\tautoExpandColumn: 'category'\n\t\t} );\n\n\t\tthis.availableCategoriesTree = new Ext.tree.TreePanel( {\n\t\t\tborder: false,\n\t\t\tstore: this.store,\n\t\t\tcolumns: [ { header: 'Value', width: 1, dataIndex: this.displayField } ],\n\t\t\thideHeaders: true,\n\t\t\theight: this.height - 2 * 65,\n\t\t\twidth: this.width / 2,\n\t\t\tautoScroll: true,\n\t\t\tdataUrl: BsCore.buildRemoteString( 'InsertCategory', 'getCategory' ),\n\t\t\tsingleExpand: false,\n\t\t\troot: {\n\t\t\t\tnodeType: 'async',\n\t\t\t\ttext: 'root',\n\t\t\t\tdraggable: false,\n\t\t\t\tid: 'root',\n\t\t\t\texpanded: true\n\t\t\t},\n\t\t\trootVisible: false\n\t\t} );\n\t\tthis.availableCategoriesTree.addListener( 'dblclick', this.nodeClicked, this );\n\n\t\tthis.descTreePanel = new Ext.Panel( {\n\t\t\tcolspan: 2,\n\t\t\tborder: false,\n\t\t\tbodyCssClass: 'bs_description_class',\n\t\t\thtml: '<p><i>' + BsCategoryChooserI18N.descAddCategory + '</i></p>',\n\t\t\theight: 60,\n\t\t\twidth: this.width\n\t\t} );\n\n\t\tthis.descAddCategory = new Ext.Panel( {\n\t\t\tborder: false,\n\t\t\tbodyCssClass: 'bs_description_class',\n\t\t\thtml: '<p><i>' + BsCategoryChooserI18N.descTreePanel + '</i></p>',\n\t\t\theight: 60,\n\t\t\twidth: this.width / 2\n\t\t} );\n\n\t\tthis.btnAddCategory = new Ext.Button( {\n\t\t\txtype: 'button',\n\t\t\tid: 'bs-ic-new-category-button',\n\t\t\ttext: BsCategoryChooserI18N.textBtnAdd\n\t\t} );\n\t\tthis.btnAddCategory.addListener( 'click', this.btnAddCategoryClicked, this );\n\n\t\tthis.tfNewCategory = new Ext.form.TextField( {\n\t\t\txtype: 'textfield',\n\t\t\tid: 'bs-ic-new-category-textfield',\n\t\t\twidth: 100\n\t\t} );\n\n\t\tthis.panelAddCategory = new Ext.FormPanel( {\n\t\t\tborder: false,\n\t\t\theight: 60,\n\t\t\tlayout: 'table',\n\t\t\tlayoutConfig: {\n\t\t\t\tcolumns: 2\n\t\t\t},\n\t\t\tbodyCssClass: 'bs_description_class',\n\t\t\tpadding: 5,\n\t\t\titems: [\n\t\t\t\tnew Ext.form.Label( {\n\t\t\t\t\ttext: BsCategoryChooserI18N.labelAddCategory,\n\t\t\t\t\tcolspan: 2\n\t\t\t\t} ),\n\t\t\t\tthis.tfNewCategory,\n\t\t\t\tthis.btnAddCategory\n\t\t\t]\n\t\t} );\n\n\t\tthis.view = new Ext.Panel( {\n\t\t\tborder: false,\n\t\t\tlayout: 'table',\n\t\t\tlayoutConfig: {\n\t\t\t\tcolumns: 2\n\t\t\t},\n\t\t\titems: [\n\t\t\t\tthis.availableCategoriesTree,\n\t\t\t\tthis.chosenCategoriesGrid,\n\t\t\t\tthis.descAddCategory,\n\t\t\t\tthis.panelAddCategory,\n\t\t\t\tthis.descTreePanel\n\t\t\t]\n\t\t} );\n\n\t\tfs.add( this.view );\n\t\tfs.doLayout();\n\t},\n\n\tbtnAddCategoryClicked: function ( btn, event ) {\n\t\tvar textValue = this.tfNewCategory.getValue().replace( ' ', '_' );\n\t\tif ( textValue === '' ) {\n\t\t\treturn;\n\t\t}\n\t\tvar existingIndex = this.chosenCategoriesStore.findExact( 'text', textValue );\n\t\tif ( existingIndex !== -1 ) {\n\t\t\tthis.tfNewCategory.setValue( '' );\n\t\t\treturn; // Prevent duplicates\n\t\t}\n\n\t\tvar newIndex = this.chosenCategoriesStore.getCount(),\n\t\t newRecordData = {\n\t\t\t\ttext: textValue\n\t\t\t},\n\t\t\tnewRecord = new this.chosenCategoriesStore.recordType( newRecordData, newIndex );\n\t\tthis.chosenCategoriesStore.add( newRecord );\n\t\tthis.tfNewCategory.setValue( '' );\n\t},\n\n\tremoveCategoryClicked: function ( grid, index, noIdeaWhatThisParamIs, btn, event ) {\n\t\tthis.chosenCategoriesStore.removeAt( index );\n\t},\n\n\tnodeClicked: function ( node, event ) {\n\t\tvar existingIndex = this.chosenCategoriesStore.findExact(\n\t\t\t'text', node.attributes.text.replace( '_', ' ' )\n\t\t);\n\t\tif ( existingIndex !== -1 ) {\n\t\t\treturn; // Prevent duplicates\n\t\t}\n\n\t\tvar newIndex = this.chosenCategoriesStore.getCount(),\n\t\t\tnewRecordData = {\n\t\t\t\ttext: node.attributes.text\n\t\t\t},\n\t\t\tnewRecord = new this.chosenCategoriesStore.recordType( newRecordData, newIndex );\n\t\tthis.chosenCategoriesStore.add( newRecord );\n\t\tthis.availableCategoriesTree.getSelectionModel().clearSelections();\n\t},\n\n\tgetValue: function ( valueField ) {\n\t\treturn this.chosenCategoriesStore.getRange();\n\t},\n\n\tsetValue: function ( values ) {\n\t\tthis.chosenCategoriesStore.loadData( values );\n\t},\n\n\treset: function () {\n\t\tthis.setValue( '' );\n\t\tthis.tfNewCategory.setValue( '' );\n\t\tthis.availableCategoriesTree.getSelectionModel().clearSelections();\n\t\tthis.availableCategoriesTree.collapseAll();\n\t},\n\n\tgetRawValue: function ( valueField ) {\n\t},\n\n\tsetRawValue: function ( values ) {\n\t\tsetValue( values );\n\t},\n\n\tvalidateValue: function ( value ) {\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/form/NamespaceCombo.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":17,"column":16,"nodeType":"Identifier","messageId":"undef","endLine":17,"endColumn":18},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":29,"column":8,"nodeType":"Identifier","messageId":"undef","endLine":29,"endColumn":11},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":30,"column":4,"nodeType":"VariableDeclaration","messageId":"top","endLine":31,"endColumn":56},{"ruleId":"no-mixed-spaces-and-tabs","severity":1,"message":"Mixed spaces and tabs.","line":31,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":31,"endColumn":5}],"errorCount":0,"warningCount":5,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.form.NamespaceCombo', {\n\textend: 'Ext.form.ComboBox',\n\tdisplayField: 'namespace',\n\tlabelAlign: 'right',\n\tvalueField: 'id',\n\tqueryMode: 'local',\n\ttypeAhead: true,\n\ttriggerAction: 'all',\n\tfieldLabel: mw.message( 'bs-extjs-label-namespace' ).plain(),\n\temptyText: mw.message( 'bs-extjs-combo-box-default-placeholder' ).plain(),\n\n\t// Custom Settings\n\tincludeAll: false,\n\texcludeIds: [],\n\n\tinitComponent: function () {\n\t\tthis.store = bs.extjs.newLocalNamespacesStore( {\n\t\t\tincludeAll: this.includeAll,\n\t\t\texcludeIds: this.excludeIds\n\t\t} );\n\n\t\tthis.callParent( arguments );\n\t},\n\n\tsetValue: function ( value, doSelect ) {\n\t\t// In many cases we only know the namespace text and not the id. To make\n\t\t// the life of us developers easier this litte snippet tries to convert\n\t\t// from text to id.\n\t\tif ( Ext.isString( value ) ) {\n\t\t\tvar normText = value.toLowerCase().replace( ' ', '_' ),\n\t\t\t id = mw.config.get( 'wgNamespaceIds' )[ normText ];\n\t\t\tif ( id ) {\n\t\t\t\tvalue = id;\n\t\t\t}\n\t\t}\n\t\tthis.callParent( [ value, doSelect ] );\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/form/SimpleSelectBox.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":14,"column":16,"nodeType":"Identifier","messageId":"undef","endLine":14,"endColumn":19}],"errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.form.SimpleSelectBox', {\n\textend: 'Ext.form.field.ComboBox',\n\tqueryMode: 'local',\n\ttriggerAction: 'all',\n\tdisplayField: 'name',\n\tvalueField: 'value',\n\tallowBlank: false,\n\tforceSelection: true,\n\n\t// Custom settings\n\tbsData: {},\n\n\tinitComponent: function () {\n\t\tthis.store = Ext.create( 'Ext.data.JsonStore', {\n\t\t\tfields: [ this.displayField, this.valueField ],\n\t\t\tdata: this.bsData\n\t\t} );\n\t\tthis.callParent( arguments );\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/form/UploadPanel.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":10,"column":17,"nodeType":"Identifier","messageId":"undef","endLine":10,"endColumn":20},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":21,"column":19,"nodeType":"Identifier","messageId":"undef","endLine":21,"endColumn":22},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":28,"column":20,"nodeType":"Identifier","messageId":"undef","endLine":28,"endColumn":23},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":37,"column":4,"nodeType":"Identifier","messageId":"undef","endLine":37,"endColumn":7},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":45,"column":4,"nodeType":"VariableDeclaration","messageId":"top","endLine":56,"endColumn":6},{"ruleId":"no-unused-vars","severity":1,"message":"'btn' is defined but never used.","line":76,"column":30,"nodeType":"Identifier","messageId":"unusedVar","endLine":76,"endColumn":33},{"ruleId":"no-unused-vars","severity":1,"message":"'e' is defined but never used.","line":76,"column":35,"nodeType":"Identifier","messageId":"unusedVar","endLine":76,"endColumn":36},{"ruleId":"no-unused-vars","severity":1,"message":"'btn' is defined but never used.","line":79,"column":31,"nodeType":"Identifier","messageId":"unusedVar","endLine":79,"endColumn":34},{"ruleId":"no-unused-vars","severity":1,"message":"'e' is defined but never used.","line":79,"column":36,"nodeType":"Identifier","messageId":"unusedVar","endLine":79,"endColumn":37}],"errorCount":0,"warningCount":10,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.form.UploadPanel', {\n\textend: 'Ext.form.Panel',\n\tuploadFormName: 'name',\n\tuploadFieldLabel: 'FieldsLabel',\n\tuploadLabelWidth: 50,\n\tuploadResetButton: true,\n\tuploadButtonsInline: false,\n\tinitComponent: function () {\n\n\t\tthis.ffFile = Ext.create( 'Ext.form.field.File', {\n\t\t\txtype: 'filefield',\n\t\t\tname: this.uploadFormName,\n\t\t\tfieldLabel: this.uploadFieldLabel,\n\t\t\tlabelWidth: this.uploadLabelWidth,\n\t\t\tmsgTarget: 'side',\n\t\t\tallowBlank: false,\n\t\t\tanchor: '100%',\n\t\t\tbuttonText: mw.message( 'bs-extjs-browse' ).plain()\n\t\t} );\n\n\t\tthis.btnReset = Ext.create( 'Ext.button.Button', {\n\t\t\tid: 'bs-extjs-uploadCombo-' + this.uploadFormName + '-reset-btn',\n\t\t\ttext: mw.message( 'bs-extjs-reset' ).plain(),\n\t\t\thandler: this.onBtnResetClick,\n\t\t\tflex: 0.5,\n\t\t\tscope: this\n\t\t} );\n\t\tthis.btnUpload = Ext.create( 'Ext.button.Button', {\n\t\t\tid: 'bs-extjs-uploadCombo-' + this.uploadFormName + '-upload-btn',\n\t\t\ttext: mw.message( 'bs-extjs-upload' ).plain(),\n\t\t\thandler: this.onBtnUploadClick,\n\t\t\tflex: 0.5,\n\t\t\tscope: this\n\t\t} );\n\n\t\tthis.items = [\n\t\t\tExt.create( 'Ext.form.field.Hidden', {\n\t\t\t\tname: this.uploadFormName + '-hidden-field',\n\t\t\t\tid: 'bs-extjs-uploadCombo-' + this.uploadFormName + '-hidden-field'\n\t\t\t} )\n\t\t];\n\t\tif ( this.uploadButtonsInline ) {\n\t\t\tthis.ffFile.setMargin( '0 5 0 0' );\n\n\t\t\tvar fieldContainer = {\n\t\t\t\txtype: 'fieldcontainer',\n\t\t\t\tlayout: 'hbox',\n\t\t\t\tdefaults: {\n\t\t\t\t\tflex: 1,\n\t\t\t\t\thideLabel: true\n\t\t\t\t},\n\t\t\t\titems: [\n\t\t\t\t\tthis.ffFile,\n\t\t\t\t\tthis.btnUpload\n\t\t\t\t]\n\t\t\t};\n\t\t\tif ( this.uploadResetButton === true ) {\n\t\t\t\tfieldContainer.items.push( this.btnReset );\n\t\t\t\tthis.btnUpload.setMargin( '0 5 0 0' );\n\t\t\t}\n\n\t\t\tthis.items.unshift( fieldContainer );\n\t\t} else {\n\t\t\tthis.items.unshift( this.ffFile );\n\n\t\t\tthis.buttons = [];\n\t\t\tif ( this.uploadResetButton === true ) {\n\t\t\t\tthis.buttons.push( this.btnReset );\n\t\t\t}\n\t\t\tthis.buttons.push( this.btnUpload );\n\t\t\tthis.btnReset.disable();\n\t\t}\n\n\t\tthis.callParent( arguments );\n\t},\n\tonBtnResetClick: function ( btn, e ) {\n\t\tthis.fireEvent( 'reset', this );\n\t},\n\tonBtnUploadClick: function ( btn, e ) {\n\t\tvar form = this.getForm();\n\t\tthis.fireEvent( 'upload', this, form );\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/form/UserCombo.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":25,"column":17,"nodeType":"Identifier","messageId":"undef","endLine":25,"endColumn":20},{"ruleId":"no-unused-vars","severity":1,"message":"'store' is defined but never used.","line":58,"column":26,"nodeType":"Identifier","messageId":"unusedVar","endLine":58,"endColumn":31},{"ruleId":"no-unused-vars","severity":1,"message":"'records' is defined but never used.","line":58,"column":33,"nodeType":"Identifier","messageId":"unusedVar","endLine":58,"endColumn":40},{"ruleId":"no-unused-vars","severity":1,"message":"'successful' is defined but never used.","line":58,"column":42,"nodeType":"Identifier","messageId":"unusedVar","endLine":58,"endColumn":52},{"ruleId":"no-unused-vars","severity":1,"message":"'eOpts' is defined but never used.","line":58,"column":54,"nodeType":"Identifier","messageId":"unusedVar","endLine":58,"endColumn":59},{"ruleId":"camelcase","severity":1,"message":"Identifier 'user_id' is not in camel case.","line":67,"column":31,"nodeType":"Identifier","messageId":"notCamelCase","endLine":67,"endColumn":38},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":73,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":74,"endColumn":39},{"ruleId":"no-mixed-spaces-and-tabs","severity":1,"message":"Mixed spaces and tabs.","line":74,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":74,"endColumn":4},{"ruleId":"camelcase","severity":1,"message":"Identifier 'user_name' is not in camel case.","line":78,"column":33,"nodeType":"Identifier","messageId":"notCamelCase","endLine":78,"endColumn":42},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":83,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":84,"endColumn":39},{"ruleId":"no-mixed-spaces-and-tabs","severity":1,"message":"Mixed spaces and tabs.","line":84,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":84,"endColumn":4},{"ruleId":"camelcase","severity":1,"message":"Identifier 'user_id' is not in camel case.","line":95,"column":7,"nodeType":"Identifier","messageId":"notCamelCase","endLine":95,"endColumn":14}],"errorCount":0,"warningCount":13,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.form.UserCombo', {\n\textend: 'Ext.form.ComboBox',\n\trequires: [ 'BS.model.User' ],\n\tdisplayField: 'display_name',\n\tvalueField: 'user_id',\n\tlabelAlign: 'right',\n\tlabelMessage: mw.message( 'bs-extjs-label-user' ).plain(),\n\tforceSelection: true,\n\ttriggerAction: 'all',\n\tqueryMode: 'remote',\n\tminChars: 1,\n\ttypeAhead: true,\n\tanyMatch: true,\n\tstore: null,\n\textraParams: {},\n\tstoreFilters: [],\n\temptyText: mw.message( 'bs-extjs-combo-box-default-placeholder' ).plain(),\n\n\tdeferredSetValueConf: false,\n\n\tinitComponent: function () {\n\t\tthis.setFieldLabel( this.labelMessage );\n\n\t\tif ( !this.store ) {\n\t\t\tthis.store = Ext.create( 'BS.store.BSApi', {\n\t\t\t\tapiAction: 'bs-user-store',\n\t\t\t\tproxy: {\n\t\t\t\t\ttype: 'ajax',\n\t\t\t\t\turl: mw.util.wikiScript( 'api' ),\n\t\t\t\t\treader: {\n\t\t\t\t\t\ttype: 'json',\n\t\t\t\t\t\trootProperty: 'results',\n\t\t\t\t\t\tidProperty: 'user_id'\n\t\t\t\t\t},\n\t\t\t\t\textraParams: this.extraParams\n\t\t\t\t},\n\t\t\t\tfilters: this.storeFilters,\n\t\t\t\tmodel: 'BS.model.User',\n\t\t\t\t// autoLoad: true //We need to load manually to have the store\n\t\t\t\t// loading before rendering. This allows setting values at an early\n\t\t\t\t// time,\n\t\t\t\tsorters: [ {\n\t\t\t\t\tproperty: this.displayField,\n\t\t\t\t\tdirection: 'ASC'\n\t\t\t\t} ],\n\t\t\t\tsortOnLoad: true,\n\t\t\t\tremoteSort: true,\n\t\t\t\tremoteFilter: true\n\t\t\t} );\n\t\t}\n\t\tthis.store.load();\n\n\t\tthis.store.on( 'load', this.onStoreLoad, this );\n\n\t\tthis.callParent( arguments );\n\t},\n\n\tonStoreLoad: function ( store, records, successful, eOpts ) {\n\t\tif ( this.deferredSetValueConf ) {\n\t\t\tthis.deferredSetValueConf.callback.apply(\n\t\t\t\tthis, [ this.deferredSetValueConf.value ]\n\t\t\t);\n\t\t\tthis.deferredSetValueConf = false;\n\t\t}\n\t},\n\n\tsetValueByUserId: function ( user_id ) {\n\t\tif ( this.store.isLoading() ) {\n\t\t\tthis.deferSetValue( this.setValueByUserId, user_id );\n\t\t\treturn;\n\t\t}\n\t\t// TODO: store.findRecord()?\n\t\tvar index = this.store.find( 'user_id', user_id ),\n\t\t record = this.store.getAt( index );\n\t\tthis.setValue( record );\n\t},\n\n\tsetValueByUserName: function ( user_name ) {\n\t\tif ( this.store.isLoading() ) {\n\t\t\tthis.deferSetValue( this.setValueByUserName, user_name );\n\t\t\treturn;\n\t\t}\n\t\tvar index = this.store.find( 'user_name', user_name ),\n\t\t record = this.store.getAt( index );\n\t\tthis.setValue( record );\n\t},\n\n\tgetUserIdValue: function () {\n\t\treturn this.getValue();\n\t},\n\n\tgetUserNameValue: function () {},\n\n\tgetUserModel: function () {\n\t\tvar user_id = this.getValue();\n\t\treturn this.store.getById( user_id );\n\t},\n\n\tsetValue: function ( value ) {\n\t\tif ( this.store.isLoading() ) {\n\t\t\tthis.deferSetValue( this.setValue, value );\n\t\t\treturn;\n\t\t}\n\t\tthis.callParent( arguments );\n\t},\n\n\tdeferSetValue: function ( callback, value ) {\n\t\tthis.deferredSetValueConf = {\n\t\t\tcallback: callback,\n\t\t\tvalue: value\n\t\t};\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/form/action/MediaWikiApiCall.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4}],"errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.form.action.MediaWikiApiCall', {\n\textend: 'Ext.form.action.Submit',\n\tcreateCallback: function () {\n\t\tvar callbackCfg = this.callParent( arguments );\n\t\tcallbackCfg.success = this.success;\n\t\tcallbackCfg.failure = this.failure;\n\t\tcallbackCfg.scope = this.scope;\n\t\treturn callbackCfg;\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/form/field/CategoryTag.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":23,"column":4,"nodeType":"VariableDeclaration","messageId":"top","endLine":23,"endColumn":38},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":24,"column":28,"nodeType":"Identifier","messageId":"undef","endLine":24,"endColumn":31},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":25,"column":10,"nodeType":"Identifier","messageId":"undef","endLine":25,"endColumn":13},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":33,"column":16,"nodeType":"Identifier","messageId":"undef","endLine":33,"endColumn":19},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":36,"column":10,"nodeType":"Identifier","messageId":"undef","endLine":36,"endColumn":12},{"ruleId":"no-unused-vars","severity":1,"message":"'store' is defined but never used.","line":54,"column":26,"nodeType":"Identifier","messageId":"unusedVar","endLine":54,"endColumn":31},{"ruleId":"no-unused-vars","severity":1,"message":"'records' is defined but never used.","line":54,"column":33,"nodeType":"Identifier","messageId":"unusedVar","endLine":54,"endColumn":40},{"ruleId":"no-unused-vars","severity":1,"message":"'successful' is defined but never used.","line":54,"column":42,"nodeType":"Identifier","messageId":"unusedVar","endLine":54,"endColumn":52},{"ruleId":"no-unused-vars","severity":1,"message":"'eOpts' is defined but never used.","line":54,"column":54,"nodeType":"Identifier","messageId":"unusedVar","endLine":54,"endColumn":59},{"ruleId":"no-tabs","severity":1,"message":"Unexpected tab character.","line":56,"column":5,"nodeType":"Program","messageId":"unexpectedTab","endLine":56,"endColumn":7},{"ruleId":"no-tabs","severity":1,"message":"Unexpected tab character.","line":57,"column":5,"nodeType":"Program","messageId":"unexpectedTab","endLine":57,"endColumn":8},{"ruleId":"no-tabs","severity":1,"message":"Unexpected tab character.","line":58,"column":5,"nodeType":"Program","messageId":"unexpectedTab","endLine":58,"endColumn":9},{"ruleId":"no-tabs","severity":1,"message":"Unexpected tab character.","line":59,"column":5,"nodeType":"Program","messageId":"unexpectedTab","endLine":59,"endColumn":8},{"ruleId":"no-tabs","severity":1,"message":"Unexpected tab character.","line":60,"column":5,"nodeType":"Program","messageId":"unexpectedTab","endLine":60,"endColumn":8},{"ruleId":"no-tabs","severity":1,"message":"Unexpected tab character.","line":61,"column":5,"nodeType":"Program","messageId":"unexpectedTab","endLine":61,"endColumn":7},{"ruleId":"no-unused-vars","severity":1,"message":"'value' is defined but never used.","line":63,"column":23,"nodeType":"Identifier","messageId":"unusedVar","endLine":63,"endColumn":28},{"ruleId":"no-unused-vars","severity":1,"message":"'value' is defined but never used.","line":66,"column":23,"nodeType":"Identifier","messageId":"unusedVar","endLine":66,"endColumn":28},{"ruleId":"no-tabs","severity":1,"message":"Unexpected tab character.","line":67,"column":5,"nodeType":"Program","messageId":"unexpectedTab","endLine":67,"endColumn":7},{"ruleId":"no-tabs","severity":1,"message":"Unexpected tab character.","line":68,"column":5,"nodeType":"Program","messageId":"unexpectedTab","endLine":68,"endColumn":8},{"ruleId":"no-tabs","severity":1,"message":"Unexpected tab character.","line":69,"column":5,"nodeType":"Program","messageId":"unexpectedTab","endLine":69,"endColumn":8},{"ruleId":"no-tabs","severity":1,"message":"Unexpected tab character.","line":70,"column":5,"nodeType":"Program","messageId":"unexpectedTab","endLine":70,"endColumn":7},{"ruleId":"no-unused-vars","severity":1,"message":"'event' is defined but never used.","line":95,"column":30,"nodeType":"Identifier","messageId":"unusedVar","endLine":95,"endColumn":35},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":97,"column":3,"nodeType":"Identifier","messageId":"undef","endLine":97,"endColumn":6},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":103,"column":4,"nodeType":"VariableDeclaration","messageId":"top","endLine":103,"endColumn":48},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":103,"column":27,"nodeType":"Identifier","messageId":"undef","endLine":103,"endColumn":29},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":106,"column":22,"nodeType":"Identifier","messageId":"undef","endLine":106,"endColumn":25},{"ruleId":"no-unused-vars","severity":1,"message":"'item' is defined but never used.","line":126,"column":44,"nodeType":"Identifier","messageId":"unusedVar","endLine":126,"endColumn":48},{"ruleId":"no-unused-vars","severity":1,"message":"'index' is defined but never used.","line":126,"column":50,"nodeType":"Identifier","messageId":"unusedVar","endLine":126,"endColumn":55},{"ruleId":"no-unused-vars","severity":1,"message":"'e' is defined but never used.","line":126,"column":57,"nodeType":"Identifier","messageId":"unusedVar","endLine":126,"endColumn":58},{"ruleId":"no-unused-vars","severity":1,"message":"'eOpts' is defined but never used.","line":126,"column":60,"nodeType":"Identifier","messageId":"unusedVar","endLine":126,"endColumn":65},{"ruleId":"valid-jsdoc","severity":1,"message":"Missing JSDoc @returns for function.","line":142,"column":2,"nodeType":"Block","messageId":"missingReturn","endLine":146,"endColumn":5},{"ruleId":"max-len","severity":1,"message":"This line has a length of 111. Maximum allowed is 100.","line":143,"column":1,"nodeType":"Program","messageId":"max","endLine":143,"endColumn":109},{"ruleId":"max-len","severity":1,"message":"This line has a length of 113. Maximum allowed is 100.","line":144,"column":1,"nodeType":"Program","messageId":"max","endLine":144,"endColumn":111}],"errorCount":0,"warningCount":34,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.form.field.CategoryTag', {\n\textend: 'Ext.form.field.Tag',\n\trequires: [ 'BS.model.Category', 'BS.tree.Categories' ],\n\tdisplayField: 'text',\n\tvalueField: 'text',\n\tanchor: '95%',\n\tpinList: true,\n\ttriggerOnClick: true,\n\ttriggerAction: 'all',\n\tfilterPickList: true,\n\tforceSelection: false,\n\tcreateNewOnEnter: true,\n\temptyText: mw.message( 'bs-extjs-categoryboxselect-emptytext' ).plain(),\n\tdelimiter: '|',\n\n\tdeferredSetValueConf: false,\n\tshowTreeTrigger: true,\n\n\tconstructor: function ( cfg ) {\n\t\tthis.callParent( [ cfg ] );\n\n\t\tif ( this.showTreeTrigger ) {\n\t\t\tvar triggers = this.getTriggers();\n\t\t\ttriggers.showTree = new Ext.form.trigger.Trigger( {\n\t\t\t\tcls: Ext.baseCSSPrefix + 'form-search-trigger bs-form-tree-trigger',\n\t\t\t\thandler: this.showTree\n\t\t\t} );\n\t\t\tthis.setTriggers( triggers );\n\t\t}\n\t},\n\n\tinitComponent: function () {\n\t\tthis.store = Ext.create( 'Ext.data.JsonStore', {\n\t\t\tproxy: {\n\t\t\t\ttype: 'ajax',\n\t\t\t\turl: bs.api.makeUrl( 'bs-category-store' ),\n\t\t\t\treader: {\n\t\t\t\t\ttype: 'json',\n\t\t\t\t\trootProperty: 'results',\n\t\t\t\t\tidProperty: 'cat_id'\n\t\t\t\t},\n\t\t\t\textraParams: {\n\t\t\t\t\tlimit: 9999\n\t\t\t\t}\n\t\t\t},\n\t\t\tmodel: 'BS.model.Category'\n\t\t} );\n\t\tthis.store.load();\n\n\t\tthis.store.on( 'load', this.onStoreLoad, this );\n\n\t\tthis.callParent( arguments );\n\t},\n\tonStoreLoad: function ( store, records, successful, eOpts ) {\n\t\t// this.setValue( \"0, 1\" );\n\t\t//\t\tif( this.deferredSetValueConf ) {\n\t\t//\t\t\tthis.deferredSetValueConf.callback.apply(\n\t\t//\t\t\t\tthis, [this.deferredSetValueConf.value]\n\t\t//\t\t\t);\n\t\t//\t\t\tthis.deferredSetValueConf = false;\n\t\t//\t\t}\n\t},\n\taddValue: function ( value ) {\n\t\tthis.callParent( arguments );\n\t},\n\tsetValue: function ( value ) {\n\t\t//\t\tif( this.store.isLoading() ) {\n\t\t//\t\t\tthis.deferSetValue( this.setValue, value );\n\t\t//\t\t\treturn;\n\t\t//\t\t}\n\t\tthis.callParent( arguments );\n\t},\n\tsetValueByNames: function ( names ) {\n\t\tthis.setValue( names );\n\t\t/* if( this.store.isLoading() ) {\n\t\t\tthis.deferSetValue( this.setValueByNames, names );\n\t\t\treturn;\n\t\t}\n\t\tvar indexes = [];\n\t\tExt.each( names, function( name, idx ){\n\t\t\tvar index = this.store.find( 'cat_title', name );\n\t\t\tvar record = this.store.getAt( index );\n\t\t\tindexes.push( record.get( 'cat_id' ) );\n\t\t}, this );\n\n\t\tthis.setValue( indexes.join(',') + \"\" ); */\n\t},\n\tdeferSetValue: function ( callback, value ) {\n\t\tthis.deferredSetValueConf = {\n\t\t\tcallback: callback,\n\t\t\tvalue: value\n\t\t};\n\t},\n\n\tonTrigger2Click: function ( event ) {\n\t\t// lazy loading, as this trigger is optional\n\t\tExt.require( 'BS.tree.Categories', this.showTree, this );\n\t},\n\n\twdTree: null,\n\tshowTree: function () {\n\t\tif ( !this.wdTree ) {\n\t\t\tvar categoryTree = new BS.tree.Categories();\n\t\t\tcategoryTree.on( 'itemclick', this.onTreeItemClick, this );\n\n\t\t\tthis.wdTree = new Ext.Window( {\n\t\t\t\tmodal: true,\n\t\t\t\ttitle: mw.message( 'bs-extjs-categorytree-title' ).plain(),\n\t\t\t\tx: this.getX() + this.getWidth() + 10,\n\t\t\t\ty: this.getY() + 50,\n\t\t\t\tcloseAction: 'hide',\n\t\t\t\tautoScroll: true,\n\t\t\t\twidth: 250,\n\t\t\t\theight: 300,\n\t\t\t\titems: [\n\t\t\t\t\tcategoryTree\n\t\t\t\t]\n\t\t\t} );\n\n\t\t\tthis.wireUpWithContainerWindow();\n\t\t}\n\n\t\tthis.wdTree.show();\n\t},\n\n\tonTreeItemClick: function ( tree, record, item, index, e, eOpts ) {\n\t\tif ( mw.config.get( 'BSInsertCategoryWithParents' ) ) {\n\t\t\tthis.addValuesFromRecord( record );\n\t\t} else {\n\t\t\tthis.addValue( [ record.data.text ] );\n\t\t}\n\t},\n\n\taddValuesFromRecord: function ( record ) {\n\t\t// parentNode is null if there is no parent, internalId \"src\" is the root of the categories\n\t\tif ( record.parentNode && record.parentNode.internalId !== 'src' ) {\n\t\t\tthis.addValuesFromRecord( record.parentNode );\n\t\t}\n\t\tthis.addValue( [ record.data.text ] );\n\t},\n\n\t/**\n\t * This is a little bit tricky. If our CategoryBoxSelect field is within a window we need to close the tree\n\t * window when the parent window closes. As the CategoryBoxSelect is not necessarily in a window we need some\n\t * checks here\n\t */\n\twireUpWithContainerWindow: function () {\n\t\tvar parentWindow = this.up( 'window' );\n\t\tif ( !parentWindow ) {\n\t\t\treturn;\n\t\t}\n\n\t\tparentWindow.on( 'close', function () {\n\t\t\tthis.wdTree.close();\n\t\t}, this );\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/form/field/GroupCombo.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":19,"column":14,"nodeType":"Identifier","messageId":"undef","endLine":19,"endColumn":16}],"errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.form.field.GroupCombo', {\n\textend: 'Ext.form.field.ComboBox',\n\trequires: [ 'BS.store.ApiGroup' ],\n\ttriggerAction: 'all',\n\tdisplayField: 'displayname',\n\tvalueField: 'group_name',\n\tallowBlank: false,\n\tforceSelection: true,\n\tqueryMode: 'local',\n\tfieldLabel: mw.message( 'bs-extjs-label-group' ).plain(),\n\temptyText: mw.message( 'bs-extjs-combo-box-default-placeholder' ).plain(),\n\n\tinitComponent: function () {\n\t\tthis.store = this.makeStore();\n\t\tthis.callParent( arguments );\n\t},\n\n\tmakeStore: function () {\n\t\treturn new BS.store.ApiGroup();\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/form/field/GroupTag.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":13,"column":14,"nodeType":"Identifier","messageId":"undef","endLine":13,"endColumn":16}],"errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.form.field.GroupTag', {\n\textend: 'Ext.form.field.Tag',\n\trequires: [ 'BS.store.ApiGroup' ],\n\tdisplayField: 'displayname',\n\tvalueField: 'group_name',\n\n\tinitComponent: function () {\n\t\tthis.store = this.makeStore();\n\t\tthis.callParent( arguments );\n\t},\n\n\tmakeStore: function () {\n\t\treturn new BS.store.ApiGroup();\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/form/field/ItemList.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":42,"column":32,"nodeType":"Identifier","messageId":"undef","endLine":42,"endColumn":35},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":45,"column":31,"nodeType":"Identifier","messageId":"undef","endLine":45,"endColumn":33},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":50,"column":16,"nodeType":"Identifier","messageId":"undef","endLine":50,"endColumn":19},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":63,"column":16,"nodeType":"Identifier","messageId":"undef","endLine":63,"endColumn":18},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":73,"column":23,"nodeType":"Identifier","messageId":"undef","endLine":73,"endColumn":26},{"ruleId":"max-len","severity":1,"message":"This line has a length of 124. Maximum allowed is 100.","line":79,"column":1,"nodeType":"Program","messageId":"max","endLine":79,"endColumn":110},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":84,"column":15,"nodeType":"Identifier","messageId":"undef","endLine":84,"endColumn":18},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":85,"column":5,"nodeType":"Identifier","messageId":"undef","endLine":85,"endColumn":8},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":120,"column":14,"nodeType":"Identifier","messageId":"undef","endLine":120,"endColumn":17},{"ruleId":"new-cap","severity":1,"message":"A constructor name should not start with a lowercase letter.","line":120,"column":18,"nodeType":"NewExpression","messageId":"lower","endLine":120,"endColumn":24},{"ruleId":"no-unused-vars","severity":1,"message":"'eOpts' is defined but never used.","line":133,"column":49,"nodeType":"Identifier","messageId":"unusedVar","endLine":133,"endColumn":54},{"ruleId":"no-unused-vars","severity":1,"message":"'id' is defined but never used.","line":140,"column":29,"nodeType":"Identifier","messageId":"unusedVar","endLine":140,"endColumn":31},{"ruleId":"no-unused-vars","severity":1,"message":"'eOpts' is defined but never used.","line":158,"column":72,"nodeType":"Identifier","messageId":"unusedVar","endLine":158,"endColumn":77},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":160,"column":4,"nodeType":"VariableDeclaration","messageId":"top","endLine":160,"endColumn":63},{"ruleId":"no-unused-vars","severity":1,"message":"'colIndex' is defined but never used.","line":165,"column":44,"nodeType":"Identifier","messageId":"unusedVar","endLine":165,"endColumn":52},{"ruleId":"no-unused-vars","severity":1,"message":"'item' is defined but never used.","line":165,"column":54,"nodeType":"Identifier","messageId":"unusedVar","endLine":165,"endColumn":58},{"ruleId":"no-unused-vars","severity":1,"message":"'e' is defined but never used.","line":165,"column":60,"nodeType":"Identifier","messageId":"unusedVar","endLine":165,"endColumn":61},{"ruleId":"no-unused-vars","severity":1,"message":"'record' is defined but never used.","line":165,"column":63,"nodeType":"Identifier","messageId":"unusedVar","endLine":165,"endColumn":69},{"ruleId":"no-unused-vars","severity":1,"message":"'row' is defined but never used.","line":165,"column":71,"nodeType":"Identifier","messageId":"unusedVar","endLine":165,"endColumn":74},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":173,"column":9,"nodeType":"VariableDeclaration","messageId":"combine","endLine":173,"endColumn":18},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":173,"column":9,"nodeType":"VariableDeclaration","messageId":"top","endLine":173,"endColumn":18}],"errorCount":0,"warningCount":22,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.form.field.ItemList', {\n\textend: 'Ext.form.FieldContainer',\n\trequires: [ 'BS.store.BSApi' ],\n\talias: [ 'widget.bs-itemlist' ],\n\tbaseCls: 'bs-form-field-itemlist',\n\tmixins: {\n\t\tfield: 'Ext.form.field.Field'\n\t},\n\tlayout: 'anchor',\n\tcombineErrors: true,\n\tmsgTarget: 'side',\n\n\tapiStore: 'must-be-set',\n\tapiStoreConfig: {},\n\tapiFields: [],\n\tidProperty: 'id',\n\tinputDisplayField: 'text',\n\tlistDisplayField: 'anchor',\n\titemGridConfig: null,\n\tminChars: 4,\n\ttypeField: 'type',\n\temptyText: mw.message( 'bs-extjs-combo-box-default-placeholder' ).plain(),\n\n\tinitComponent: function () {\n\t\tthis.items = this.makeItems();\n\n\t\tthis.callParent();\n\t},\n\n\tmakeItems: function () {\n\n\t\tthis.cbItemChooser = this.makeItemChooser();\n\t\tthis.gdItems = this.makeItemGrid();\n\n\t\treturn [\n\t\t\tthis.cbItemChooser,\n\t\t\tthis.gdItems\n\t\t];\n\t},\n\n\tmakeItemChooser: function () {\n\t\tvar itemChooserStoreConfig = Ext.merge( {\n\t\t\t\tapiAction: this.apiStore,\n\t\t\t\textraParams: {\n\t\t\t\t\tcontext: JSON.stringify( bs.util.getCAIContext() )\n\t\t\t\t},\n\t\t\t\tfields: this.apiFields\n\t\t\t}, this.apiStoreConfig ),\n\t\t\tme = this,\n\t\t\tcombo = new Ext.form.field.ComboBox( {\n\t\t\t\temptyText: me.emptyText,\n\t\t\t\tanchor: '100%',\n\t\t\t\tdisplayField: this.inputDisplayField,\n\t\t\t\tminChars: this.minChars,\n\t\t\t\tid: this.id + '-combobox',\n\t\t\t\tlistConfig: {\n\t\t\t\t\tgetInnerTpl: function () {\n\t\t\t\t\t\treturn '{[\"<span class=\\'bs-icon-\"+values.' + me.typeField + '+\" bs-typeicon\\'></span>\"+values.' + me.inputDisplayField + ']}';\n\t\t\t\t\t}\n\t\t\t\t},\n\n\t\t\t\t/* TODO: Filter result to remove records that are already in the item list store */\n\t\t\t\tstore: new BS.store.BSApi( itemChooserStoreConfig )\n\t\t\t} );\n\n\t\tcombo.on( 'select', this.onItemChooserSelect, this );\n\n\t\treturn combo;\n\t},\n\n\tmakeItemGrid: function () {\n\n\t\tvar deleteCol = new Ext.grid.column.Action( {\n\t\t\t\twidth: 30,\n\t\t\t\tsortable: false,\n\t\t\t\tmenuDisabled: true,\n\t\t\t\titems: [ {\n\t\t\t\t\ticonCls: 'icon-cross3',\n\t\t\t\t\tglyph: true, // Needed to have the \"BS.override.grid.column.Action\" render an <span> instead of an <img>\n\t\t\t\t\tscope: this,\n\t\t\t\t\thandler: this.onRemoveClick\n\t\t\t\t} ]\n\t\t\t} ),\n\t\t\tgrid = new Ext.grid.Panel(\n\t\t\t\tExt.merge(\n\t\t\t\t\t{\n\t\t\t\t\t\thideHeaders: true,\n\t\t\t\t\t\tselModel: {\n\t\t\t\t\t\t\tmode: 'MULTI'\n\t\t\t\t\t\t},\n\t\t\t\t\t\tcolumns: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdataIndex: this.typeField,\n\t\t\t\t\t\t\t\twidth: 30,\n\t\t\t\t\t\t\t\trenderer: function ( value ) {\n\t\t\t\t\t\t\t\t\treturn mw.html.element( 'span', {\n\t\t\t\t\t\t\t\t\t\tclass: 'bs-icon-' + value\n\t\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdataIndex: this.listDisplayField,\n\t\t\t\t\t\t\t\tflex: 1\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tdeleteCol\n\t\t\t\t\t\t],\n\t\t\t\t\t\twidth: '100%',\n\t\t\t\t\t\tstore: this.makeItemGridStore()\n\t\t\t\t\t},\n\t\t\t\t\tthis.itemGridConfig\n\t\t\t\t)\n\t\t\t);\n\n\t\tgrid.on( 'cellkeydown', this.checkDelKey, this );\n\n\t\treturn grid;\n\t},\n\n\tmakeItemGridStore: function () {\n\t\treturn new Ext.create( 'Ext.data.Store', {\n\t\t\tfields: this.apiFields,\n\t\t\tdata: { items: [] },\n\t\t\tproxy: {\n\t\t\t\ttype: 'memory',\n\t\t\t\treader: {\n\t\t\t\t\ttype: 'json',\n\t\t\t\t\trootProperty: 'items'\n\t\t\t\t}\n\t\t\t}\n\t\t} );\n\t},\n\n\tonItemChooserSelect: function ( combo, record, eOpts ) {\n\t\tthis.addToList( record );\n\t\tcombo.clearValue();\n\t},\n\n\tmakeFindByIdFunction: function ( currentRecord ) {\n\t\tvar me = this;\n\t\treturn function ( record, id ) {\n\t\t\tif ( record.get( me.idProperty ) === currentRecord.get( me.idProperty ) ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\treturn false;\n\t\t};\n\t},\n\n\taddToList: function ( record ) {\n\t\tvar idx = this.gdItems.getStore().findBy(\n\t\t\tthis.makeFindByIdFunction( record )\n\t\t);\n\n\t\tif ( idx === -1 ) {\n\t\t\tthis.gdItems.getStore().add( record );\n\t\t}\n\t},\n\n\tcheckDelKey: function ( grid, td, cellIndex, record, tr, rowIndex, e, eOpts ) {\n\t\tif ( e.getKey() === e.DELETE ) {\n\t\t\tvar selectedRows = grid.getSelectionModel().getSelection();\n\t\t\tgrid.getStore().remove( selectedRows );\n\t\t}\n\t},\n\n\tonRemoveClick: function ( view, rowIndex, colIndex, item, e, record, row ) {\n\t\tview.getStore().removeAt( rowIndex );\n\t},\n\n\tgetValue: function () {\n\t\tvar records = this.gdItems.getStore().getRange(),\n\t\t\tdata = [];\n\n\t\tfor ( var i = 0; i < records.length; i++ ) {\n\t\t\tdata.push( records[ i ].data );\n\t\t}\n\t\treturn data;\n\t},\n\n\tsetValue: function ( data ) {\n\t\tdata = data || {};\n\t\tthis.gdItems.getStore().loadData( data );\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/form/field/NamespaceTag.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":19,"column":16,"nodeType":"Identifier","messageId":"undef","endLine":19,"endColumn":18}],"errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.form.field.NamespaceTag', {\n\textend: 'Ext.form.field.Tag',\n\tdisplayField: 'namespace',\n\tlabelAlign: 'right',\n\tvalueField: 'id',\n\tqueryMode: 'local',\n\ttypeAhead: true,\n\ttriggerAction: 'all',\n\tmultiSelect: true,\n\tcollapseOnSelect: true,\n\tfieldLabel: mw.message( 'bs-extjs-label-namespace' ).plain(),\n\temptyText: mw.message( 'bs-extjs-combo-box-default-placeholder' ).plain(),\n\tdelimiter: ', ',\n\t// Custom Settings\n\tincludeAll: false,\n\texcludeIds: [],\n\n\tinitComponent: function () {\n\t\tthis.store = bs.extjs.newLocalNamespacesStore( {\n\t\t\tincludeAll: this.includeAll,\n\t\t\texcludeIds: this.excludeIds\n\t\t} );\n\t\tthis.callParent( arguments );\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/form/field/TitleCombo.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-unused-vars","severity":1,"message":"'rowIndex' is defined but never used.","line":61,"column":36,"nodeType":"Identifier","messageId":"unusedVar","endLine":61,"endColumn":44},{"ruleId":"no-unused-vars","severity":1,"message":"'rowParams' is defined but never used.","line":61,"column":46,"nodeType":"Identifier","messageId":"unusedVar","endLine":61,"endColumn":55},{"ruleId":"no-unused-vars","severity":1,"message":"'store' is defined but never used.","line":61,"column":57,"nodeType":"Identifier","messageId":"unusedVar","endLine":61,"endColumn":62},{"ruleId":"no-prototype-builtins","severity":1,"message":"Do not access Object.prototype method 'hasOwnProperty' from target object.","line":82,"column":30,"nodeType":"CallExpression","messageId":"prototypeBuildIn","endLine":82,"endColumn":44},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":103,"column":17,"nodeType":"Identifier","messageId":"undef","endLine":103,"endColumn":19},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":105,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":120,"endColumn":8},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":105,"column":3,"nodeType":"VariableDeclaration","messageId":"combine","endLine":120,"endColumn":8},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":109,"column":16,"nodeType":"Identifier","messageId":"undef","endLine":109,"endColumn":18},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":113,"column":16,"nodeType":"Identifier","messageId":"undef","endLine":113,"endColumn":19},{"ruleId":"no-shadow","severity":1,"message":"'store' is already declared in the upper scope on line 109 column 4.","line":122,"column":38,"nodeType":"Identifier","messageId":"noShadow","endLine":122,"endColumn":43},{"ruleId":"no-unused-vars","severity":1,"message":"'eOpts' is defined but never used.","line":122,"column":56,"nodeType":"Identifier","messageId":"unusedVar","endLine":122,"endColumn":61},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":133,"column":27,"nodeType":"Identifier","messageId":"undef","endLine":133,"endColumn":29},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":147,"column":8,"nodeType":"Identifier","messageId":"undef","endLine":147,"endColumn":11},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":151,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":151,"endColumn":25},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":151,"column":3,"nodeType":"VariableDeclaration","messageId":"combine","endLine":151,"endColumn":25},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":152,"column":25,"nodeType":"Identifier","messageId":"undef","endLine":152,"endColumn":27},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":156,"column":16,"nodeType":"Identifier","messageId":"undef","endLine":156,"endColumn":19},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":159,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":159,"endColumn":52},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":159,"column":3,"nodeType":"VariableDeclaration","messageId":"combine","endLine":159,"endColumn":52}],"errorCount":0,"warningCount":20,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.form.field.TitleCombo', {\n\textend: 'MWExt.form.field.GridPicker',\n\trequires: [ 'BS.model.Title', 'BS.store.BSApi' ],\n\n\t// This is necessary to make the ComboBox return a Model\n\t// instance if input is less then 4 chars\n\tminChars: 1,\n\ttriggerAction: 'last',\n\temptyText: mw.message( 'bs-extjs-combo-box-default-placeholder' ).plain(),\n\n\tgridConfig: {\n\t\tborder: true,\n\t\thideHeaders: true,\n\t\tfeatures: [ {\n\t\t\tftype: 'grouping',\n\t\t\tgroupHeaderTpl: [\n\t\t\t\t'{name:this.formatName}',\n\t\t\t\t{\n\t\t\t\t\tformatName: function ( name ) {\n\t\t\t\t\t\tif ( name === 'namespace' ) {\n\t\t\t\t\t\t\treturn mw.message( 'bs-extjs-label-namespace' ).plain();\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ( name === 'wikipage' ) {\n\t\t\t\t\t\t\treturn mw.message( 'bs-extjs-label-page' ).plain();\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ( name === 'specialpage' ) {\n\t\t\t\t\t\t\treturn mw.message( 'bs-extjs-label-specialpage' ).plain();\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ( name === 'directsearch' ) {\n\t\t\t\t\t\t\treturn mw.message( 'bs-extjs-label-directsearch' ).plain();\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn name;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t],\n\t\t\tcollapsible: false\n\t\t} ],\n\t\tcolumns: [ {\n\t\t\tdataIndex: 'displayText',\n\t\t\trenderer: function ( value, meta, record ) {\n\t\t\t\tif ( record.get( 'type' ) === 'namespace' ) {\n\t\t\t\t\treturn value;\n\t\t\t\t}\n\t\t\t\tif ( record.get( 'type' ) === 'specialpage' ) {\n\t\t\t\t\treturn value;\n\t\t\t\t}\n\t\t\t\tif ( record.get( 'page_id' ) === 0 ) {\n\t\t\t\t\treturn value + ' <sup><span class=\"new-page-hint\">' + mw.message( 'bs-extjs-titlecombo-newpagehint' ).plain() + '</span></sup>';\n\t\t\t\t}\n\t\t\t\treturn value;\n\t\t\t},\n\t\t\tflex: 1\n\t\t} ],\n\t\tdockedItems: [ {\n\t\t\txtype: 'pagingtoolbar',\n\t\t\tstore: this.store,\n\t\t\tdock: 'bottom',\n\t\t\tdisplayInfo: true\n\t\t} ],\n\t\tviewConfig: {\n\t\t\tgetRowClass: function ( record, rowIndex, rowParams, store ) {\n\t\t\t\tvar cssClass = 'bs-model-title-type-namespace';\n\t\t\t\tif ( record.get( 'type' ) === 'namespace' ) {\n\t\t\t\t\treturn cssClass;\n\t\t\t\t}\n\t\t\t\tcssClass = 'bs-model-title-type-specialpage';\n\t\t\t\tif ( record.get( 'type' ) === 'specialpage' ) {\n\t\t\t\t\treturn cssClass;\n\t\t\t\t}\n\t\t\t\tcssClass = 'bs-model-title-type-title';\n\t\t\t\tif ( record.get( 'page_id' ) === 0 ) {\n\t\t\t\t\tcssClass += ' new';\n\t\t\t\t}\n\t\t\t\treturn cssClass;\n\t\t\t}\n\t\t}\n\t},\n\n\texcludeIds: false,\n\n\tconstructor: function ( conf ) {\n\t\tconf.forceSelection = conf.hasOwnProperty( 'forceSelection' ) ?\n\t\t\tconf.forceSelection : true;\n\n\t\t// May not be overridden\n\t\tconf.queryMode = 'remote';\n\t\tconf.displayField = 'displayText';\n\t\tconf.valueField = 'prefixedText';\n\t\tconf.typeAhead = true;\n\n\t\tthis.callParent( [ conf ] );\n\t},\n\n\tinitComponent: function () {\n\t\tthis.store = this.makeStore();\n\n\t\tthis.callParent( arguments );\n\t},\n\n\tmakeStore: function () {\n\t\tvar namespaces = mw.config.get( 'bsgTitleComboDefaultNamespaces', [] );\n\t\tif ( this.excludeIds !== false ) {\n\t\t\tnamespaces = bs.ns.filter.allBut( this.excludeIds );\n\t\t}\n\t\tvar options = {\n\t\t\t\treturnQuery: true,\n\t\t\t\tnamespaces: namespaces\n\t\t\t},\n\t\t\tstore = new BS.store.BSApi( {\n\t\t\t\tapiAction: 'bs-titlequery-store',\n\t\t\t\tproxy: {\n\t\t\t\t\textraParams: {\n\t\t\t\t\t\toptions: Ext.encode( options )\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tmodel: 'BS.model.Title',\n\t\t\t\tgroupField: 'type',\n\t\t\t\tremoteSort: true,\n\t\t\t\tautoLoad: true\n\t\t\t} );\n\n\t\tstore.on( 'beforeload', function ( store, operation, eOpts ) {\n\t\t\toperation.params = operation.params || {};\n\t\t\toperation.params.query = this.lastQuery;\n\t\t}, this );\n\n\t\treturn store;\n\t},\n\n\tgetValue: function () {\n\t\tvar value = this.callParent( arguments );\n\n\t\tif ( ( value instanceof BS.model.Title ) === false ) {\n\t\t\tvalue = this.findRecordByValue( value );\n\t\t}\n\n\t\treturn value;\n\t},\n\n\tsetValue: function ( value, doSelect, skipLoad ) {\n\t\tvar me = this;\n\n\t\tif ( !value || value === '' ) {\n\t\t\treturn me.callParent( [ value, doSelect ] );\n\t\t}\n\n\t\tif ( Ext.isArray( value ) ) {\n\t\t\tvalue = value[ 0 ];\n\t\t}\n\n\t\tvar textValue = value;\n\t\tif ( value instanceof BS.model.Title ) {\n\t\t\ttextValue = value.getPrefixedText();\n\t\t}\n\t\tif ( textValue ) {\n\t\t\ttextValue = Ext.String.trim( textValue );\n\t\t}\n\n\t\tvar record = this.findRecordByValue( textValue );\n\t\tif ( !record || !record.isModel ) {\n\t\t\tif ( ( skipLoad !== true ) ) {\n\t\t\t\t// We have to manually unset the value because otherwise we'd\n\t\t\t\t// run into an infinite loop as \"onload\"\n\t\t\t\t// Ext.form.field.Combobox tries to set the (old) value again!\n\t\t\t\tme.value = null;\n\t\t\t\tme.store.load( {\n\t\t\t\t\tparams: {\n\t\t\t\t\t\tquery: textValue\n\t\t\t\t\t},\n\t\t\t\t\tcallback: function () {\n\t\t\t\t\t\tif ( me.itemList ) {\n\t\t\t\t\t\t\tme.itemList.unmask();\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tme.setValue( textValue, doSelect, true );\n\t\t\t\t\t\tme.autoSize();\n\t\t\t\t\t\tme.lastQuery = textValue;\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\n\t\treturn me.callParent( [ value, doSelect ] );\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/form/field/UserTag.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":7,"column":20,"nodeType":"Identifier","messageId":"undef","endLine":7,"endColumn":22}],"errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.form.field.UserTag', {\n\textend: 'Ext.form.field.Tag',\n\trequires: [ 'BS.store.ApiUser' ],\n\tdisplayField: 'display_name',\n\tvalueField: 'user_name',\n\tinitComponent: function () {\n\t\tthis.store = new BS.store.ApiUser();\n\t\tthis.callParent( arguments );\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/grid/FileRepo.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":14,"column":20,"nodeType":"Identifier","messageId":"undef","endLine":14,"endColumn":22},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":35,"column":3,"nodeType":"Identifier","messageId":"undef","endLine":35,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":36,"column":3,"nodeType":"Identifier","messageId":"undef","endLine":36,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":42,"column":10,"nodeType":"Identifier","messageId":"undef","endLine":42,"endColumn":13},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":69,"column":4,"nodeType":"VariableDeclaration","messageId":"combine","endLine":69,"endColumn":48},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":69,"column":4,"nodeType":"VariableDeclaration","messageId":"top","endLine":69,"endColumn":48},{"ruleId":"no-unused-vars","severity":1,"message":"'sender' is defined but never used.","line":95,"column":29,"nodeType":"Identifier","messageId":"unusedVar","endLine":95,"endColumn":35},{"ruleId":"no-unused-vars","severity":1,"message":"'event' is defined but never used.","line":95,"column":37,"nodeType":"Identifier","messageId":"unusedVar","endLine":95,"endColumn":42},{"ruleId":"no-unused-vars","severity":1,"message":"'sender' is defined but never used.","line":99,"column":31,"nodeType":"Identifier","messageId":"unusedVar","endLine":99,"endColumn":37},{"ruleId":"no-unused-vars","severity":1,"message":"'event' is defined but never used.","line":99,"column":39,"nodeType":"Identifier","messageId":"unusedVar","endLine":99,"endColumn":44},{"ruleId":"no-unused-vars","severity":1,"message":"'sender' is defined but never used.","line":103,"column":31,"nodeType":"Identifier","messageId":"unusedVar","endLine":103,"endColumn":37},{"ruleId":"no-unused-vars","severity":1,"message":"'event' is defined but never used.","line":103,"column":39,"nodeType":"Identifier","messageId":"unusedVar","endLine":103,"endColumn":44},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":111,"column":23,"nodeType":"Identifier","messageId":"undef","endLine":111,"endColumn":26},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":120,"column":28,"nodeType":"Identifier","messageId":"undef","endLine":120,"endColumn":31},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":131,"column":23,"nodeType":"Identifier","messageId":"undef","endLine":131,"endColumn":26},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":141,"column":24,"nodeType":"Identifier","messageId":"undef","endLine":141,"endColumn":27},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":151,"column":26,"nodeType":"Identifier","messageId":"undef","endLine":151,"endColumn":29},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":161,"column":26,"nodeType":"Identifier","messageId":"undef","endLine":161,"endColumn":29},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":171,"column":27,"nodeType":"Identifier","messageId":"undef","endLine":171,"endColumn":30},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":180,"column":27,"nodeType":"Identifier","messageId":"undef","endLine":180,"endColumn":30},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":191,"column":27,"nodeType":"Identifier","messageId":"undef","endLine":191,"endColumn":30},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":201,"column":29,"nodeType":"Identifier","messageId":"undef","endLine":201,"endColumn":32},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":210,"column":22,"nodeType":"Identifier","messageId":"undef","endLine":210,"endColumn":25},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":221,"column":22,"nodeType":"Identifier","messageId":"undef","endLine":221,"endColumn":25},{"ruleId":"no-undef","severity":1,"message":"'MWExt' is not defined.","line":271,"column":23,"nodeType":"Identifier","messageId":"undef","endLine":271,"endColumn":28},{"ruleId":"no-unused-vars","severity":1,"message":"'newValue' is defined but never used.","line":278,"column":31,"nodeType":"Identifier","messageId":"unusedVar","endLine":278,"endColumn":39},{"ruleId":"no-unused-vars","severity":1,"message":"'oldValue' is defined but never used.","line":278,"column":41,"nodeType":"Identifier","messageId":"unusedVar","endLine":278,"endColumn":49},{"ruleId":"no-unused-vars","severity":1,"message":"'eOpts' is defined but never used.","line":278,"column":51,"nodeType":"Identifier","messageId":"unusedVar","endLine":278,"endColumn":56},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":285,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":287,"endColumn":5},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":295,"column":20,"nodeType":"Identifier","messageId":"undef","endLine":295,"endColumn":23},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":306,"column":25,"nodeType":"Identifier","messageId":"undef","endLine":306,"endColumn":28},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":313,"column":15,"nodeType":"Identifier","messageId":"undef","endLine":313,"endColumn":18},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":333,"column":8,"nodeType":"Identifier","messageId":"undef","endLine":333,"endColumn":11},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":345,"column":24,"nodeType":"Identifier","messageId":"undef","endLine":345,"endColumn":27},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":352,"column":24,"nodeType":"Identifier","messageId":"undef","endLine":352,"endColumn":26}],"errorCount":0,"warningCount":36,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.grid.FileRepo', {\n\textend: 'Ext.grid.Panel',\n\trequires: [\n\t\t'BS.store.BSApi', 'MWExt.form.field.Search', 'BS.model.File',\n\t\t'BS.dialog.Upload'\n\t],\n\tcls: 'bs-filerepo-grid',\n\tpageSize: 50,\n\n\t// Custom settings\n\tuploaderCfg: null,\n\n\tinitComponent: function () {\n\t\tthis.store = new BS.store.BSApi( {\n\t\t\tapiAction: 'bs-filebackend-store',\n\t\t\tmodel: 'BS.model.File',\n\t\t\tsorters: [ {\n\t\t\t\tproperty: 'file_timestamp',\n\t\t\t\tdirection: 'DESC'\n\t\t\t} ],\n\t\t\tproxy: {\n\t\t\t\textraParams: {\n\t\t\t\t\tlimit: this.pageSize\n\t\t\t\t}\n\t\t\t},\n\t\t\tpageSize: this.pageSize\n\t\t} );\n\n\t\tthis.features = this.makeFeatures();\n\t\tthis.plugins = this.makePlugins();\n\t\tthis.dockedItems = this.makeDockedItems();\n\t\tthis.columns = this.makeColumns();\n\t\tthis.items = [];\n\n\t\t$( document ).trigger( 'BSGridFileRepoInitComponent', [ this, this.items ] );\n\t\t$( document ).trigger( 'BS.grid.FileRepo.initComponent', [ this, this.items ] );\n\n\t\tthis.callParent( arguments );\n\t},\n\n\trenderFilesize: function ( val ) {\n\t\treturn Ext.util.Format.fileSize( val );\n\t},\n\n\trenderThumb: function ( value, meta, record ) {\n\t\tvar title = new mw.Title(\n\t\t\t\trecord.get( 'page_title' ),\n\t\t\t\trecord.get( 'page_namespace' )\n\t\t\t),\n\t\t\tattr = {\n\t\t\t\tstyle: 'background-image:url(' + value + '); display:block; height: 120px; background-position: center center; background-repeat: no-repeat;',\n\t\t\t\thref: record.get( 'file_url' ),\n\t\t\t\ttarget: '_blank',\n\t\t\t\tclass: 'bs-thumb-link',\n\t\t\t\t'data-bs-title': title.getPrefixedText()\n\t\t\t},\n\t\t\tattrImg = {\n\t\t\t\tsrc: record.get( 'file_thumbnail_url' ),\n\t\t\t\tstyle: 'max-height: 100%; max-width: 100%; width: auto; height: auto; position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto;',\n\t\t\t\t'data-file-width': record.get( 'file_width' ),\n\t\t\t\t'data-file-height': record.get( 'file_height' )\n\t\t\t},\n\t\t\t// is thumb an image or a fileicon?\n\t\t\tret = mw.html.element( 'a', attr ); // thumb is a fileicon\n\t\tif ( record.get( 'file_height' ) !== 0 ) {\n\t\t\t// thumb is an image\n\t\t\tattr.class = 'bs-thumb-link image';\n\t\t\tattr.style = 'display: block; height: 120px; width: 80px; position:relative';\n\t\t\tvar img = mw.html.element( 'img', attrImg );\n\t\t\tret = mw.html.element( 'a', attr, new mw.html.Raw( img ) );\n\t\t}\n\t\treturn ret;\n\t},\n\n\trenderBool: function ( value ) {\n\t\tif ( value === true ) {\n\t\t\treturn mw.message( 'bs-filerepo-yes' ).plain();\n\t\t} else {\n\t\t\treturn mw.message( 'bs-filerepo-no' ).plain();\n\t\t}\n\t},\n\n\trenderUser: function ( value, meta, record ) {\n\t\treturn record.get( 'file_user_link' );\n\t},\n\n\trenderCategories: function ( value, meta, record ) {\n\t\treturn record.get( 'page_categories_links' ).join( ', ' );\n\t},\n\n\trenderFileName: function ( value, meta, record ) {\n\t\treturn record.get( 'page_link' );\n\t},\n\n\tbtnUploadClick: function ( sender, event ) {\n\t\tthis.dlgUpload.show();\n\t},\n\n\tonUploadComplete: function ( sender, event ) {\n\t\tthis.store.reload();\n\t},\n\n\tonSelectPageSize: function ( sender, event ) {\n\t\tvar pageSize = this.cbPageSize.getValue();\n\t\tthis.store.pageSize = pageSize;\n\t\tthis.store.proxy.extraParams.limit = pageSize;\n\t\tthis.store.reload();\n\t},\n\n\tmakeColumns: function () {\n\t\tthis.colFileThumb = Ext.create( 'Ext.grid.column.Column', {\n\t\t\tsortable: false,\n\t\t\tfilterable: false,\n\t\t\tdataIndex: 'file_thumbnail_url',\n\t\t\trenderer: this.renderThumb,\n\t\t\twidth: 60,\n\t\t\theader: mw.message( 'bs-filerepo-headerfilethumbnail' ).plain()\n\t\t} );\n\n\t\tthis.colPageCategories = Ext.create( 'Ext.grid.column.Column', {\n\t\t\tsortable: true,\n\t\t\tfilter: {\n\t\t\t\ttype: 'string'\n\t\t\t},\n\t\t\tdataIndex: 'page_categories',\n\t\t\trenderer: this.renderCategories,\n\t\t\thidden: true,\n\t\t\theader: mw.message( 'bs-filerepo-headerpagecategories' ).plain()\n\t\t} );\n\n\t\tthis.colFileWidth = Ext.create( 'Ext.grid.column.Column', {\n\t\t\tsortable: true,\n\t\t\tfilter: {\n\t\t\t\ttype: 'numeric'\n\t\t\t},\n\t\t\tdataIndex: 'file_width',\n\t\t\thidden: true,\n\t\t\theader: mw.message( 'bs-filerepo-headerfilewidth' ).plain()\n\t\t} );\n\n\t\tthis.colFileHeight = Ext.create( 'Ext.grid.column.Column', {\n\t\t\tsortable: true,\n\t\t\tfilter: {\n\t\t\t\ttype: 'numeric'\n\t\t\t},\n\t\t\tdataIndex: 'file_height',\n\t\t\thidden: true,\n\t\t\theader: mw.message( 'bs-filerepo-headerfileheight' ).plain()\n\t\t} );\n\n\t\tthis.colFileMimetype = Ext.create( 'Ext.grid.column.Column', {\n\t\t\tsortable: true,\n\t\t\tfilter: {\n\t\t\t\ttype: 'string'\n\t\t\t},\n\t\t\tdataIndex: 'file_mimetype',\n\t\t\thidden: true,\n\t\t\theader: mw.message( 'bs-filerepo-headerfilemimetype' ).plain()\n\t\t} );\n\n\t\tthis.colFileUserText = Ext.create( 'Ext.grid.column.Column', {\n\t\t\tsortable: true,\n\t\t\tfilter: {\n\t\t\t\ttype: 'string'\n\t\t\t},\n\t\t\tdataIndex: 'file_user_display_text',\n\t\t\trenderer: this.renderUser,\n\t\t\theader: mw.message( 'bs-filerepo-headerfileusertext' ).plain()\n\t\t} );\n\n\t\tthis.colFileExtension = Ext.create( 'Ext.grid.column.Column', {\n\t\t\tsortable: true,\n\t\t\tfilter: {\n\t\t\t\ttype: 'string'\n\t\t\t},\n\t\t\tdataIndex: 'file_extension',\n\t\t\theader: mw.message( 'bs-filerepo-headerfileextension' ).plain()\n\t\t} );\n\n\t\tthis.colFileTimestamp = Ext.create( 'Ext.grid.column.Date', {\n\t\t\tsortable: true,\n\t\t\tfilter: {\n\t\t\t\ttype: 'date'\n\t\t\t},\n\t\t\tdateFormat: 'Y-m-d H:i:s',\n\t\t\tdataIndex: 'file_timestamp',\n\t\t\twidth: 100,\n\t\t\theader: mw.message( 'bs-filerepo-headerfiletimestamp' ).plain()\n\t\t} );\n\n\t\tthis.colFileMediaType = Ext.create( 'Ext.grid.column.Column', {\n\t\t\tsortable: true,\n\t\t\tfilter: {\n\t\t\t\ttype: 'string'\n\t\t\t},\n\t\t\tdataIndex: 'file_mediatype',\n\t\t\thidden: true,\n\t\t\theader: mw.message( 'bs-filerepo-headerfilemediatype' ).plain()\n\t\t} );\n\n\t\tthis.colFileDescription = Ext.create( 'Ext.grid.column.Column', {\n\t\t\tsortable: true,\n\t\t\tfilter: {\n\t\t\t\ttype: 'string'\n\t\t\t},\n\t\t\tdataIndex: 'file_description',\n\t\t\theader: mw.message( 'bs-filerepo-headerfiledescription' ).plain()\n\t\t} );\n\n\t\tthis.colFilename = Ext.create( 'Ext.grid.column.Column', {\n\t\t\theader: mw.message( 'bs-filerepo-headerfilename' ).plain(),\n\t\t\tsortable: true,\n\t\t\tfilter: {\n\t\t\t\ttype: 'string'\n\t\t\t},\n\t\t\tdataIndex: 'file_name',\n\t\t\tflex: 3,\n\t\t\trenderer: this.renderFileName\n\t\t} );\n\n\t\tthis.colFilesize = Ext.create( 'Ext.grid.column.Column', {\n\t\t\theader: mw.message( 'bs-filerepo-headerfilesize' ).plain(),\n\t\t\tsortable: true,\n\t\t\tfilter: {\n\t\t\t\ttype: 'numeric'\n\t\t\t},\n\t\t\tdataIndex: 'file_size',\n\t\t\trenderer: this.renderFilesize,\n\t\t\twidth: 100\n\t\t} );\n\n\t\treturn {\n\t\t\titems: [\n\t\t\t\tthis.colFileThumb,\n\t\t\t\tthis.colFilename,\n\t\t\t\tthis.colFilesize,\n\t\t\t\tthis.colFileUserText,\n\t\t\t\tthis.colFileDescription,\n\t\t\t\tthis.colPageCategories,\n\t\t\t\tthis.colFileExtension,\n\t\t\t\tthis.colFileMimetype,\n\t\t\t\tthis.colFileWidth,\n\t\t\t\tthis.colFileHeight,\n\t\t\t\tthis.colFileTimestamp,\n\t\t\t\tthis.colFileMediaType\n\t\t\t],\n\t\t\tdefaults: {\n\t\t\t\tflex: 1\n\t\t\t}\n\t\t};\n\t},\n\n\tmakeFeatures: function () {},\n\n\tmakePlugins: function () {\n\t\treturn [\n\t\t\t'gridfilters'\n\t\t];\n\t},\n\n\tmakeDockedItems: function () {\n\t\tvar items = [];\n\n\t\tthis.makeTopToolbar( items );\n\t\tthis.makePagingToolbar( items );\n\n\t\treturn items;\n\t},\n\n\tmakeTopToolbar: function ( items ) {\n\t\tthis.sfFilter = new MWExt.form.field.Search( {\n\t\t\tfieldLabel: mw.message( 'bs-filerepo-labelfilter' ).plain(),\n\t\t\tlabelAlign: 'right',\n\t\t\tflex: 3,\n\t\t\tstore: this.store,\n\t\t\tparamName: 'file_name',\n\t\t\tlisteners: {\n\t\t\t\tchange: function ( field, newValue, oldValue, eOpts ) {\n\t\t\t\t\tfield.onTrigger2Click();\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t} );\n\n\t\tvar toolBarItems = [\n\t\t\tthis.sfFilter\n\t\t];\n\n\t\tif ( this.uploaderCfg ) {\n\t\t\ttoolBarItems.push(\n\t\t\t\tthis.makeUploader( this.uploaderCfg )\n\t\t\t);\n\t\t}\n\n\t\tthis.tbTop = new Ext.toolbar.Toolbar( {\n\t\t\tdock: 'top',\n\t\t\titems: toolBarItems\n\t\t} );\n\n\t\titems.push(\n\t\t\tthis.tbTop\n\t\t);\n\t},\n\n\tmakePagingToolbar: function ( items ) {\n\t\tthis.cbPageSize = new Ext.form.ComboBox( {\n\t\t\tfieldLabel: mw.message( 'bs-filerepo-pagesize' ).plain(),\n\t\t\tlabelAlign: 'right',\n\t\t\tautoSelect: true,\n\t\t\tforceSelection: true,\n\t\t\ttriggerAction: 'all',\n\t\t\tmode: 'local',\n\t\t\tstore: new Ext.data.SimpleStore( {\n\t\t\t\tfields: [ 'text', 'value' ],\n\t\t\t\tdata: [\n\t\t\t\t\t[ '20', 20 ],\n\t\t\t\t\t[ '50', 50 ],\n\t\t\t\t\t[ '100', 100 ],\n\t\t\t\t\t[ '200', 200 ],\n\t\t\t\t\t[ '500', 500 ]\n\t\t\t\t]\n\t\t\t} ),\n\t\t\tvalue: this.pageSize,\n\t\t\tlabelWidth: 120,\n\t\t\tflex: 2,\n\t\t\tvalueField: 'value',\n\t\t\tdisplayField: 'text'\n\t\t} );\n\n\t\tthis.cbPageSize.on( 'select', this.onSelectPageSize, this );\n\n\t\titems.push(\n\t\t\tnew Ext.PagingToolbar( {\n\t\t\t\tdock: 'bottom',\n\t\t\t\tstore: this.store,\n\t\t\t\tdisplayInfo: true,\n\t\t\t\titems: [\n\t\t\t\t\tthis.cbPageSize\n\t\t\t\t]\n\t\t\t} )\n\t\t);\n\t},\n\n\tmakeUploader: function ( cfg ) {\n\t\tthis.btnUpload = new Ext.Button( {\n\t\t\ticonCls: 'bs-icon-upload',\n\t\t\ttooltip: mw.message( 'bs-filerepo-labelupload' ).plain()\n\t\t} );\n\n\t\tthis.btnUpload.on( 'click', this.btnUploadClick, this );\n\n\t\tthis.dlgUpload = new BS.dialog.Upload( {\n\t\t\tallowedFileExtensions: mw.config.get( 'bsFileExtensions' ).concat(\n\t\t\t\tmw.config.get( 'bsImageExtensions' )\n\t\t\t),\n\t\t\tuploadPanelCfg: cfg\n\t\t} );\n\n\t\tthis.dlgUpload.on( 'ok', this.onUploadComplete, this );\n\n\t\treturn this.btnUpload;\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/model/Category.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-tabs","severity":1,"message":"Unexpected tab character.","line":6,"column":5,"nodeType":"Program","messageId":"unexpectedTab","endLine":6,"endColumn":7},{"ruleId":"no-tabs","severity":1,"message":"Unexpected tab character.","line":7,"column":5,"nodeType":"Program","messageId":"unexpectedTab","endLine":7,"endColumn":7},{"ruleId":"no-tabs","severity":1,"message":"Unexpected tab character.","line":8,"column":5,"nodeType":"Program","messageId":"unexpectedTab","endLine":8,"endColumn":7},{"ruleId":"no-tabs","severity":1,"message":"Unexpected tab character.","line":9,"column":5,"nodeType":"Program","messageId":"unexpectedTab","endLine":9,"endColumn":7},{"ruleId":"no-tabs","severity":1,"message":"Unexpected tab character.","line":10,"column":5,"nodeType":"Program","messageId":"unexpectedTab","endLine":10,"endColumn":7}],"errorCount":0,"warningCount":6,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.model.Category', {\n\textend: 'Ext.data.Model',\n\n\tfields: [\n\t\t{ name: 'text', type: 'string' }\n\t\t//\t\t{ name: 'cat_title', type: 'string' },\n\t\t//\t\t{ name: 'cat_pages', type: 'int' },\n\t\t//\t\t{ name: 'cat_subcats', type: 'int' },\n\t\t//\t\t{ name: 'cat_files', type: 'int' },\n\t\t//\t\t{ name: 'prefixed_text', type: 'string' },\n\t]\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/model/File.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":6,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":6,"endColumn":4},{"ruleId":"no-mixed-spaces-and-tabs","severity":1,"message":"Mixed spaces and tabs.","line":41,"column":3,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":41,"endColumn":5},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":42,"column":10,"nodeType":"VariableDeclaration","messageId":"combine","endLine":42,"endColumn":19},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":42,"column":10,"nodeType":"VariableDeclaration","messageId":"top","endLine":42,"endColumn":19},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":43,"column":5,"nodeType":"VariableDeclaration","messageId":"combine","endLine":54,"endColumn":8},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":43,"column":5,"nodeType":"VariableDeclaration","messageId":"top","endLine":54,"endColumn":8},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":44,"column":38,"nodeType":"Identifier","messageId":"undef","endLine":44,"endColumn":40},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":85,"column":62,"nodeType":"Identifier","messageId":"undef","endLine":85,"endColumn":64}],"errorCount":0,"warningCount":8,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/**\n * This model is used to have a unified representation of all MediaWiki repo\n * files. The information is a combination of the page and the file table\n */\n\nExt.define( 'BS.model.File', {\n\textend: 'Ext.data.Model',\n\n\tidProperty: 'file_name',\n\n\tfields: [\n\t\t// Those are values we can gather from the MediaWiki 'page' table.\n\t\t{ name: 'page_id', type: 'int', defaultValue: 0 },\n\t\t{ name: 'page_title', type: 'string', defaultValue: '' },\n\t\t{ name: 'page_prefixed_text', type: 'string', defaultValue: '' },\n\t\t{ name: 'page_latest', type: 'date', defaultValue: '19700101000000', dateFormat: 'YmdHis' },\n\t\t{ name: 'page_namespace', type: 'int', defaultValue: -99 },\n\t\t{ name: 'page_is_redirect', type: 'bool', defaultValue: false },\n\t\t{ name: 'page_is_new', type: 'bool', defaultValue: true },\n\t\t{ name: 'page_touched', type: 'date', defaultValue: '19700101000000', dateFormat: 'YmdHis' },\n\t\t{ name: 'page_link', type: 'string', defaultValue: '', convert: function ( value, record ) {\n\t\t\t// This is not being calculated on the serverside for performance reasons\n\t\t\tvar title = new mw.Title( record.get( 'page_prefixed_text' ) );\n\t\t\treturn mw.html.element(\n\t\t\t\t'a',\n\t\t\t\t{\n\t\t\t\t\thref: title.getUrl(),\n\t\t\t\t\ttarget: '_blank',\n\t\t\t\t\t'data-bs-title': title.getPrefixedText(),\n\t\t\t\t\t'data-bs-filename': record.get( 'file_name' ),\n\t\t\t\t\t'data-bs-fileurl': record.get( 'file_url' )\n\t\t\t\t},\n\t\t\t\trecord.get( 'file_display_text' )\n\t\t\t);\n\t\t} },\n\t\t// Here come custom fields that are calculated on the server side\n\t\t{ name: 'page_categories', type: 'auto', defaultValue: [] },\n\t\t{ name: 'page_categories_links', type: 'auto', defaultValue: [], convert: function ( value, record ) {\n\t\t\t// This is not being calculated on the serverside for performance reasons\n\t\t\tvar categories = record.get( 'page_categories' ),\n\t\t\t categoryLinks = [];\n\t\t\tfor ( var i = 0; i < categories.length; i++ ) {\n\t\t\t\tvar category = categories[ i ],\n\t\t\t\t\ttitle = new mw.Title( category, bs.ns.NS_CATEGORY ),\n\t\t\t\t\ticon = mw.html.element( 'span', { class: 'bs-icon-tag' }, '' ),\n\t\t\t\t\tlink = mw.html.element(\n\t\t\t\t\t\t'a',\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\thref: title.getUrl(),\n\t\t\t\t\t\t\ttarget: '_blank',\n\t\t\t\t\t\t\t'data-bs-title': title.getPrefixedText()\n\t\t\t\t\t\t},\n\t\t\t\t\t\ttitle.getNameText()\n\t\t\t\t\t);\n\n\t\t\t\tcategoryLinks.push(\n\t\t\t\t\tmw.html.element( 'span', {}, new mw.html.Raw( icon + link ) )\n\t\t\t\t);\n\t\t\t}\n\n\t\t\treturn categoryLinks;\n\t\t} },\n\n\t\t// Those are values we can gather from the MediaWiki 'image' table.\n\t\t{ name: 'file_url', type: 'string', defaultValue: '' },\n\t\t{ name: 'file_name', type: 'string' },\n\t\t{ name: 'file_size', type: 'int', defaultValue: 0 },\n\t\t{ name: 'file_bits', type: 'int', defaultValue: 0 },\n\t\t{ name: 'file_user', type: 'int', defaultValue: 0 },\n\t\t{ name: 'file_width', type: 'int', defaultValue: 0 },\n\t\t{ name: 'file_height', type: 'int', defaultValue: 0 },\n\t\t{ name: 'file_mimetype', type: 'string', defaultValue: 'unknown/unknown' },\n\t\t{ name: 'file_user_text', type: 'string' },\n\t\t{ name: 'file_extension', type: 'string', defaultValue: '' },\n\t\t{ name: 'file_timestamp', type: 'date', defaultValue: '19700101000000', dateFormat: 'YmdHis' },\n\t\t{ name: 'file_mediatype', type: 'string', defaultValue: '' },\n\t\t{ name: 'file_description', type: 'string', defaultValue: '' },\n\t\t{ name: 'file_thumbnail_url', type: 'string', defaultValue: '' },\n\n\t\t// Here come custom fields that are calculated on the server side\n\t\t{ name: 'file_display_text', type: 'string', defaultValue: '' }, // TODO: Maybe fallback to 'file_name'\n\t\t{ name: 'file_user_display_text', type: 'string', defaultValue: '' },\n\t\t{ name: 'file_user_link', type: 'string', defaultValue: '', convert: function ( value, record ) {\n\t\t\t// This is not being calculated on the serverside for performance reasons\n\t\t\tvar title = new mw.Title( record.get( 'file_user_text' ), bs.ns.NS_USER ),\n\t\t\t\ticon = mw.html.element( 'span', { class: 'bs-icon-user' }, '' ),\n\t\t\t\tlink = mw.html.element(\n\t\t\t\t\t'a',\n\t\t\t\t\t{\n\t\t\t\t\t\thref: title.getUrl(),\n\t\t\t\t\t\ttarget: '_blank',\n\t\t\t\t\t\t'data-bs-title': title.getPrefixedText(),\n\t\t\t\t\t\t'data-bs-username': record.get( 'file_user_text' )\n\t\t\t\t\t},\n\t\t\t\t\trecord.get( 'file_user_display_text' )\n\t\t\t\t);\n\t\t\treturn mw.html.element( 'span', {}, new mw.html.Raw( icon + link ), '' );\n\t\t} }\n\t]\n\n\t// TODO: Implement getter\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/model/Namespace.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"valid-jsdoc","severity":1,"message":"Missing JSDoc return type.","line":34,"column":2,"nodeType":"Block","messageId":"missingReturnType","endLine":38,"endColumn":5},{"ruleId":"jsdoc/require-returns-type","severity":1,"message":"Missing JSDoc @return type.","line":37,"column":null,"nodeType":"Block","endLine":37,"endColumn":null}],"errorCount":0,"warningCount":3,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.model.Namespace', {\n\textend: 'Ext.data.Model',\n\n\tfields: [\n\t\t{ name: 'namespaceId', type: 'int' },\n\t\t{ name: 'namespaceName', type: 'string' },\n\t\t{ name: 'isNonincludable', type: 'bool' },\n\t\t{ name: 'namespaceContentModel', type: 'string' }\n\t],\n\t/*\n\tproxy: {\n\t\ttype: 'ajax',\n\t\turl: 'app/data/namespaces.json',\n\t\treader: {\n\t\t\tmodel: 'BS.model.Namespace',\n\t\t\ttype: 'json',\n\t\t\troot: 'namespaces',\n\t\t\tidProperty: 'namespaceId'\n\t\t}\n\t}, */\n\n\tgetNamespaceContentModel: function () {\n\t\treturn this.get( 'namespaceContentModel' );\n\t},\n\n\tisNonincludable: function () {\n\t\treturn this.get( 'isNonincludable' );\n\t},\n\n\tisSubject: function () {\n\t\treturn !this.isTalk();\n\t},\n\n\t/**\n\t * Is the current namespace a talk namespace?\n\t *\n\t * @return bool\n\t */\n\tisTalk: function () {\n\t\t// TODO: replace 0 with somethin similar to NS_MAIN\n\t\treturn this.get( 'namespaceId' ) > 0 && this.get( 'namespaceId' ) % 2;\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/model/Title.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":6,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":6,"endColumn":4},{"ruleId":"no-mixed-spaces-and-tabs","severity":1,"message":"Mixed spaces and tabs.","line":27,"column":2,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":27,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":50,"column":10,"nodeType":"Identifier","messageId":"undef","endLine":50,"endColumn":12}],"errorCount":0,"warningCount":3,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/**\n * This model is used to have a unified representation of all MediaWiki pages\n * one can link to. This includes SpecialPages.\n */\n\nExt.define( 'BS.model.Title', {\n\textend: 'Ext.data.Model',\n\n\t/**\n\t * We use the prefixedText because in MediaWiki only the combination of\n\t * namespace prefix and page title is really unique. The \"page_id\" can not\n\t * be used because titles that are not in the database yet (redlinks)\n\t * default their numeric id to '0', which may be ambiguous. There are also\n\t * \"SpecialPage\" titles wich may have their id set to '-1'\n\t */\n\tidProperty: 'prefixedText',\n\n\tfields: [\n\t\t// Those are values we can gather from the MediaWiki 'page' table.\n\t\t// Not every Title is managed in this table!\n\t\t{ name: 'page_id', type: 'int', defaultValue: 0 },\n\t\t{ name: 'page_namespace', type: 'int', defaultValue: -99 },\n\t\t{ name: 'page_title', type: 'string', defaultValue: '' },\n\n\t\t// Here come custom fields that are necessary for the usage within ExtJS\n\t\t{ name: 'prefixedText', type: 'string' }, // TODO:  Maybe calculate from page_namespace and page_title?\n\t\t                                          // http://docs.sencha.com/extjs/4.2.2/#!/api/Ext.data.Field\n\t\t{ name: 'displayText', type: 'string' },\n\t\t{ name: 'type', type: 'string' }, // 'wikipage', 'specialpage'(, 'interwiki'?)\n\t\t{ name: 'page_link', type: 'string' } // An anchor HTML fragment with all kinds of meta-data\n\t],\n\n\tgetPrefixedText: function () {\n\t\treturn this.get( 'prefixedText' );\n\t},\n\n\tgetLocalUrl: function () {\n\t\treturn mw.util.getUrl( this.getPrefixedText() );\n\t},\n\n\texists: function () {\n\t\treturn this.get( 'page_id' ) > 0;\n\t},\n\n\tgetNamespace: function () {\n\t\treturn this.get( 'page_namespace' );\n\t},\n\n\tgetNsText: function () {\n\t\treturn bs.util.getNamespaceText( this.getNamespace() );\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/model/User.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4}],"errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.model.User', {\n\textend: 'Ext.data.Model',\n\n\tfields: [\n\t\t{ name: 'user_id', type: 'int' },\n\t\t{ name: 'user_name', type: 'string' },\n\t\t{ name: 'user_real_name', type: 'string' },\n\t\t{ name: 'user_registration', type: 'date', defaultValue: '19700101000000', dateFormat: 'YmdHis' },\n\t\t{ name: 'user_editcount', type: 'int' },\n\t\t{ name: 'groups', type: 'auto', defaultValue: [] },\n\n\t\t// legacy fields\n\t\t{ name: 'display_name', type: 'string' },\n\t\t{ name: 'page_prefixed_text', type: 'string' }\n\t]\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/override/grid/column/Action.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":4,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":4,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":9,"column":13,"nodeType":"Identifier","messageId":"undef","endLine":9,"endColumn":16},{"ruleId":"max-len","severity":1,"message":"This line has a length of 117. Maximum allowed is 100.","line":16,"column":1,"nodeType":"Program","messageId":"max","endLine":16,"endColumn":112},{"ruleId":"max-len","severity":1,"message":"This line has a length of 115. Maximum allowed is 100.","line":17,"column":1,"nodeType":"Program","messageId":"max","endLine":17,"endColumn":110},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":19,"column":9,"nodeType":"Identifier","messageId":"undef","endLine":19,"endColumn":12},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":21,"column":29,"nodeType":"Identifier","messageId":"undef","endLine":21,"endColumn":32},{"ruleId":"max-len","severity":1,"message":"This line has a length of 150. Maximum allowed is 100.","line":25,"column":1,"nodeType":"Program","messageId":"max","endLine":25,"endColumn":142},{"ruleId":"max-len","severity":1,"message":"This line has a length of 137. Maximum allowed is 100.","line":26,"column":1,"nodeType":"Program","messageId":"max","endLine":26,"endColumn":129},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":27,"column":9,"nodeType":"Identifier","messageId":"undef","endLine":27,"endColumn":12},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":37,"column":20,"nodeType":"Identifier","messageId":"undef","endLine":37,"endColumn":23},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":38,"column":19,"nodeType":"Identifier","messageId":"undef","endLine":38,"endColumn":22},{"ruleId":"no-underscore-dangle","severity":1,"message":"Unexpected dangling '_' in '_glyphFontFamily'.","line":47,"column":24,"nodeType":"MemberExpression","messageId":"unexpectedUnderscore","endLine":47,"endColumn":44},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":47,"column":24,"nodeType":"Identifier","messageId":"undef","endLine":47,"endColumn":27},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":57,"column":14,"nodeType":"Identifier","messageId":"undef","endLine":57,"endColumn":17},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":61,"column":101,"nodeType":"Identifier","messageId":"undef","endLine":61,"endColumn":104},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":63,"column":8,"nodeType":"Identifier","messageId":"undef","endLine":63,"endColumn":11}],"errorCount":0,"warningCount":16,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/* FROM http://stackoverflow.com/questions/25573608/font-awesome-extjs-actioncolumn */\n/* FROM http://stackoverflow.com/questions/32688206/icomoon-glyph-on-group-grid-extjs-action-column-not-working */\n\nExt.define( 'BS.override.grid.column.Action', {\n\toverride: 'Ext.grid.column.Action',\n\t// overridden to implement\n\tdefaultRenderer: function ( v, cellValues, record, rowIdx, colIdx, store, view ) {\n\t\tvar me = this,\n\t\t\tprefix = Ext.baseCSSPrefix,\n\t\t\tscope = me.origScope || me,\n\t\t\titems = me.items,\n\t\t\tlen = items.length,\n\t\t\ti = 0,\n\t\t\titem, ret, disabled, tooltip, glyph, glyphParts, glyphFontFamily;\n\n\t\t// Allow a configured renderer to create initial value (And set the other values in the \"metadata\" argument!)\n\t\t// Assign a new variable here, since if we modify \"v\" it will also modify the arguments collection, meaning\n\t\t// we will pass an incorrect value to getClass/getTip\n\t\tret = Ext.isFunction( me.origRenderer ) ? me.origRenderer.apply( scope, arguments ) || '' : '';\n\n\t\tcellValues.tdCls += ' ' + Ext.baseCSSPrefix + 'action-col-cell';\n\t\tfor ( ; i < len; i++ ) {\n\t\t\titem = items[ i ];\n\n\t\t\tdisabled = item.disabled || ( item.isDisabled ? item.isDisabled.call( item.scope || scope, view, rowIdx, colIdx, item, record ) : false );\n\t\t\ttooltip = disabled ? null : ( item.tooltip || ( item.getTip ? item.getTip.apply( item.scope || scope, arguments ) : null ) );\n\t\t\tif ( Ext.isFunction( item.getGlyph ) ) {\n\t\t\t\tglyph = item.getGlyph.apply( item.scope || scope, arguments );\n\t\t\t} else {\n\t\t\t\tglyph = item.glyph;\n\t\t\t}\n\n\t\t\t// Only process the item action setup once.\n\t\t\tif ( !item.hasActionConfiguration ) {\n\t\t\t\t// Apply our documented default to all items\n\t\t\t\titem.stopSelection = me.stopSelection;\n\t\t\t\titem.disable = Ext.Function.bind( me.disableAction, me, [ i ], 0 );\n\t\t\t\titem.enable = Ext.Function.bind( me.enableAction, me, [ i ], 0 );\n\t\t\t\titem.hasActionConfiguration = true;\n\t\t\t}\n\t\t\tif ( glyph ) {\n\t\t\t\tif ( typeof glyph === 'string' ) {\n\t\t\t\t\tglyphParts = glyph.split( '@' );\n\t\t\t\t\tglyph = '&#' + glyphParts[ 0 ] + ';';\n\t\t\t\t\tglyphFontFamily = glyphParts[ 1 ];\n\t\t\t\t} else {\n\t\t\t\t\tglyphFontFamily = Ext._glyphFontFamily;\n\t\t\t\t}\n\t\t\t\tif ( typeof glyph === 'number' ) {\n\t\t\t\t\tglyph = '&#' + glyph + ';';\n\t\t\t\t}\n\t\t\t\tif ( typeof glyph === 'boolean' ) {\n\t\t\t\t\tglyph = '';\n\t\t\t\t}\n\n\t\t\t\tret += '<span role=\"button\" title=\"' + ( item.altText || me.altText ) + '\" class=\"' + prefix + 'action-col-icon ' + prefix + 'action-col-glyph ' + prefix + 'action-col-' + String( i ) + ' ' + ( disabled ? prefix + 'item-disabled' : ' ' ) +\n\t\t\t\t\t' ' + ( Ext.isFunction( item.getClass ) ? item.getClass.apply( item.scope || scope, arguments ) : ( item.iconCls || me.iconCls || '' ) ) + '\"' +\n\t\t\t\t\t' style=\"font-family:' + glyphFontFamily + '\"' +\n\t\t\t\t\t( tooltip ? ' data-qtip=\"' + tooltip + '\"' : '' ) + '>' + glyph + '</span>';\n\t\t\t} else {\n\t\t\t\tret += '<img role=\"button\" alt=\"' + ( item.altText || me.altText ) + '\" src=\"' + ( item.icon || Ext.BLANK_IMAGE_URL ) +\n\t\t\t\t\t'\" class=\"' + me.actionIconCls + ' ' + prefix + 'action-col-' + String( i ) + ' ' + ( disabled ? prefix + 'item-disabled' : ' ' ) +\n\t\t\t\t\t( Ext.isFunction( item.getClass ) ? item.getClass.apply( item.scope || scope, arguments ) : ( item.iconCls || me.iconCls || '' ) ) + '\"' +\n\t\t\t\t\t( tooltip ? ' data-qtip=\"' + tooltip + '\"' : '' ) + ' />';\n\t\t\t}\n\t\t}\n\t\treturn ret;\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/panel/BatchActions.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":5,"column":24,"nodeType":"Identifier","messageId":"undef","endLine":5,"endColumn":27},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":9,"column":24,"nodeType":"Identifier","messageId":"undef","endLine":9,"endColumn":27},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":29,"column":9,"nodeType":"Identifier","messageId":"undef","endLine":29,"endColumn":12},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":30,"column":22,"nodeType":"Identifier","messageId":"undef","endLine":30,"endColumn":25},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":36,"column":15,"nodeType":"Identifier","messageId":"undef","endLine":36,"endColumn":18},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":41,"column":24,"nodeType":"Identifier","messageId":"undef","endLine":41,"endColumn":27},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":64,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":64,"endColumn":22},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":65,"column":9,"nodeType":"VariableDeclaration","messageId":"combine","endLine":65,"endColumn":18},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":65,"column":9,"nodeType":"VariableDeclaration","messageId":"top","endLine":65,"endColumn":18},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":93,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":95,"endColumn":52},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":115,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":115,"endColumn":61}],"errorCount":0,"warningCount":12,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.panel.BatchActions', {\n\textend: 'Ext.Panel',\n\n\tinitComponent: function () {\n\t\tthis.pbActions = new Ext.ProgressBar( {\n\t\t\twidth: '100%'\n\t\t} );\n\n\t\tthis.gdActions = new Ext.grid.Panel( {\n\t\t\theight: 200,\n\t\t\tviewConfig: {\n\t\t\t\tmarkDirty: false\n\t\t\t},\n\t\t\tcolumns: {\n\t\t\t\titems: [\n\t\t\t\t\t{\n\t\t\t\t\t\ttext: mw.message( 'bs-deferred-batch-description' ).plain(),\n\t\t\t\t\t\tdataIndex: 'description',\n\t\t\t\t\t\tflex: 1\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\ttext: mw.message( 'bs-deferred-batch-status' ).plain(),\n\t\t\t\t\t\tdataIndex: 'state',\n\t\t\t\t\t\twidth: 120\n\t\t\t\t\t}\n\t\t\t\t]\n\t\t\t},\n\t\t\tplugins: [\n\t\t\t\tnew Ext.grid.plugin.RowExpander( {\n\t\t\t\t\trowBodyTpl: new Ext.XTemplate(\n\t\t\t\t\t\t'<tpl for=\"errors\">',\n\t\t\t\t\t\t'<p>{#} {message}</p>',\n\t\t\t\t\t\t'</tpl>' )\n\t\t\t\t} )\n\t\t\t],\n\t\t\tstore: new Ext.data.JsonStore( {\n\t\t\t\tfields: [ 'description', 'state', 'errors' ]\n\t\t\t} )\n\t\t} );\n\n\t\tthis.fsActions = new Ext.form.FieldSet( {\n\t\t\ttitle: mw.message( 'bs-deferred-batch-actions' ).plain(),\n\t\t\tcollapsible: true,\n\t\t\tcollapsed: true,\n\t\t\titems: [\n\t\t\t\tthis.gdActions\n\t\t\t]\n\t\t} );\n\n\t\tthis.items = [\n\t\t\t{\n\t\t\t\thtml: mw.message( 'bs-deferred-batch-progress-desc' ).plain()\n\t\t\t},\n\t\t\tthis.pbActions,\n\t\t\tthis.fsActions\n\t\t];\n\n\t\tthis.callParent( arguments );\n\t},\n\n\tcurrrentActions: [],\n\tsetData: function ( data ) {\n\t\tthis.currentActions = data;\n\t\tvar storeData = [];\n\t\tfor ( var i = 0; i < data.length; i++ ) {\n\t\t\tstoreData.push( {\n\t\t\t\tdescription: data[ i ].getDescription(),\n\t\t\t\tstate: data[ i ].getStatusText(),\n\t\t\t\terrors: []\n\t\t\t} );\n\t\t}\n\n\t\tthis.gdActions.getStore().loadData( storeData );\n\t\tthis.processComplete = false;\n\t\tthis.pbActions.updateProgress( 0, '0%' );\n\t},\n\n\tstartProcessing: function () {\n\t\tthis.fireEvent( 'processtart', this );\n\t\tthis.processAction( 0 );\n\t},\n\n\tprocessComplete: false,\n\tprocessAction: function ( index ) {\n\t\tif ( index >= this.currentActions.length ) { // End of chain\n\t\t\tthis.processComplete = true;\n\t\t\tthis.fireEvent( 'processcomplete', this );\n\t\t\treturn;\n\t\t}\n\t\tif ( !this.currentActions[ index ] ) {\n\t\t\treturn;\n\t\t}\n\t\tvar me = this,\n\t\t\tpromise = this.currentActions[ index ].execute(),\n\t\t\trecord = me.gdActions.getStore().getAt( index );\n\t\trecord.set( 'state', me.currentActions[ index ].getStatusText() );\n\t\trecord.set( 'errors', me.currentActions[ index ].getErrors() );\n\t\tpromise.done( function () {\n\t\t\tme.actionComplete( index, record );\n\t\t} )\n\t\t\t.fail( function () {\n\t\t\t\tme.fsActions.expand();\n\t\t\t\t// TODO: Show prompt and hold process? Or error report after process?\n\t\t\t\tme.actionComplete( index, record );\n\t\t\t} );\n\t},\n\n\tisProcessComplete: function () {\n\t\treturn this.processComplete;\n\t},\n\n\tactionComplete: function ( index, record ) {\n\t\trecord.set( 'state', this.currentActions[ index ].getStatusText() );\n\t\trecord.set( 'errors', this.currentActions[ index ].getErrors() );\n\t\tvar progress = ( index + 1 ) / this.currentActions.length;\n\t\tthis.fireEvent( 'actioncomplete', this, progress );\n\t\tthis.pbActions.updateProgress(\n\t\t\tprogress,\n\t\t\tMath.ceil( progress * 100 ) + '%'\n\t\t);\n\t\tthis.processAction( index + 1 );\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/panel/Upload.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":23,"column":21,"nodeType":"Identifier","messageId":"undef","endLine":23,"endColumn":24},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":37,"column":25,"nodeType":"Identifier","messageId":"undef","endLine":37,"endColumn":28},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\/.","line":41,"column":27,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":28,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1115,1116],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1115,1115],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\?.","line":41,"column":29,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":30,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1117,1118],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1117,1117],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\*.","line":41,"column":31,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":32,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1119,1120],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1119,1119],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\\".","line":41,"column":33,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":34,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1121,1122],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1121,1121],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\#.","line":41,"column":35,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":36,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1123,1124],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1123,1123],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\<.","line":41,"column":37,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":38,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1125,1126],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1125,1125],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\>.","line":41,"column":39,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":40,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1127,1128],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1127,1127],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\|.","line":41,"column":41,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":42,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1129,1130],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1129,1129],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\ö.","line":41,"column":43,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":44,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1131,1132],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1131,1131],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\ä.","line":41,"column":45,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":46,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1133,1134],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1133,1133],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\ü.","line":41,"column":47,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":48,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1135,1136],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1135,1135],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\Ö.","line":41,"column":49,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":50,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1137,1138],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1137,1137],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\Ä.","line":41,"column":51,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":52,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1139,1140],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1139,1139],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\Ü.","line":41,"column":53,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":54,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1141,1142],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1141,1141],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\á.","line":41,"column":55,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":56,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1143,1144],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1143,1143],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\à.","line":41,"column":57,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":58,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1145,1146],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1145,1145],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\â.","line":41,"column":59,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":60,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1147,1148],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1147,1147],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\é.","line":41,"column":61,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":62,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1149,1150],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1149,1149],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\è.","line":41,"column":63,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":64,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1151,1152],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1151,1151],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\ê.","line":41,"column":65,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":66,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1153,1154],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1153,1153],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\ú.","line":41,"column":67,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":68,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1155,1156],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1155,1155],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\ù.","line":41,"column":69,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":70,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1157,1158],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1157,1157],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\û.","line":41,"column":71,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":72,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1159,1160],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1159,1159],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\ó.","line":41,"column":73,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":74,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1161,1162],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1161,1161],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\ò.","line":41,"column":75,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":76,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1163,1164],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1163,1163],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\ô.","line":41,"column":77,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":78,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1165,1166],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1165,1165],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\Á.","line":41,"column":79,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":80,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1167,1168],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1167,1167],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\À.","line":41,"column":81,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":82,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1169,1170],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1169,1169],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\Â.","line":41,"column":83,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":84,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1171,1172],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1171,1171],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\É.","line":41,"column":85,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":86,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1173,1174],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1173,1173],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\È.","line":41,"column":87,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":88,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1175,1176],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1175,1175],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\Ê.","line":41,"column":89,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":90,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1177,1178],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1177,1177],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\Ú.","line":41,"column":91,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":92,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1179,1180],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1179,1179],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\Ù.","line":41,"column":93,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":94,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1181,1182],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1181,1181],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\Û.","line":41,"column":95,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":96,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1183,1184],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1183,1183],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\Ó.","line":41,"column":97,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":98,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1185,1186],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1185,1185],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\Ò.","line":41,"column":99,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":100,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1187,1188],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1187,1187],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\Ô.","line":41,"column":101,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":102,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1189,1190],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1189,1189],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\ß.","line":41,"column":103,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":41,"endColumn":104,"suggestions":[{"messageId":"removeEscape","fix":{"range":[1191,1192],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[1191,1191],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":47,"column":28,"nodeType":"Identifier","messageId":"undef","endLine":47,"endColumn":31},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":54,"column":28,"nodeType":"Identifier","messageId":"undef","endLine":54,"endColumn":30},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":60,"column":25,"nodeType":"Identifier","messageId":"undef","endLine":60,"endColumn":28},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":66,"column":13,"nodeType":"Identifier","messageId":"undef","endLine":66,"endColumn":16},{"ruleId":"no-mixed-spaces-and-tabs","severity":1,"message":"Mixed spaces and tabs.","line":68,"column":4,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":68,"endColumn":6},{"ruleId":"no-mixed-spaces-and-tabs","severity":1,"message":"Mixed spaces and tabs.","line":69,"column":4,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":69,"endColumn":6},{"ruleId":"no-mixed-spaces-and-tabs","severity":1,"message":"Mixed spaces and tabs.","line":70,"column":4,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":70,"endColumn":6},{"ruleId":"no-mixed-spaces-and-tabs","severity":1,"message":"Mixed spaces and tabs.","line":71,"column":4,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":71,"endColumn":6},{"ruleId":"no-mixed-spaces-and-tabs","severity":1,"message":"Mixed spaces and tabs.","line":72,"column":4,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":72,"endColumn":6},{"ruleId":"no-mixed-spaces-and-tabs","severity":1,"message":"Mixed spaces and tabs.","line":73,"column":4,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":73,"endColumn":6},{"ruleId":"no-mixed-spaces-and-tabs","severity":1,"message":"Mixed spaces and tabs.","line":74,"column":4,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":74,"endColumn":6},{"ruleId":"no-mixed-spaces-and-tabs","severity":1,"message":"Mixed spaces and tabs.","line":75,"column":4,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":75,"endColumn":6},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":88,"column":23,"nodeType":"Identifier","messageId":"undef","endLine":88,"endColumn":26},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":95,"column":26,"nodeType":"Identifier","messageId":"undef","endLine":95,"endColumn":29},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":102,"column":27,"nodeType":"Identifier","messageId":"undef","endLine":102,"endColumn":29},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":110,"column":24,"nodeType":"Identifier","messageId":"undef","endLine":110,"endColumn":27},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":127,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":133,"endColumn":5},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":135,"column":3,"nodeType":"Identifier","messageId":"undef","endLine":135,"endColumn":4},{"ruleId":"no-unused-vars","severity":1,"message":"'eOpts' is defined but never used.","line":144,"column":41,"nodeType":"Identifier","messageId":"unusedVar","endLine":144,"endColumn":46},{"ruleId":"no-useless-escape","severity":1,"message":"Unnecessary escape character: \\/.","line":146,"column":36,"nodeType":"Literal","messageId":"unnecessaryEscape","endLine":146,"endColumn":37,"suggestions":[{"messageId":"removeEscape","fix":{"range":[3880,3881],"text":""},"desc":"Remove the `\\`. This maintains the current functionality."},{"messageId":"escapeBackslash","fix":{"range":[3880,3880],"text":"\\"},"desc":"Replace the `\\` with `\\\\` to include the actual backslash character."}]},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":151,"column":4,"nodeType":"VariableDeclaration","messageId":"top","endLine":167,"endColumn":7},{"ruleId":"no-control-regex","severity":1,"message":"Unexpected control character(s) in regular expression: \\x00.","line":170,"column":27,"nodeType":"Literal","messageId":"unexpected","endLine":170,"endColumn":48},{"ruleId":"no-unused-vars","severity":1,"message":"'oldValue' is defined but never used.","line":181,"column":49,"nodeType":"Identifier","messageId":"unusedVar","endLine":181,"endColumn":57},{"ruleId":"no-unused-vars","severity":1,"message":"'eOpts' is defined but never used.","line":181,"column":59,"nodeType":"Identifier","messageId":"unusedVar","endLine":181,"endColumn":64},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":185,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":185,"endColumn":17},{"ruleId":"max-len","severity":1,"message":"This line has a length of 102. Maximum allowed is 100.","line":199,"column":1,"nodeType":"Program","messageId":"max","endLine":199,"endColumn":94},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":200,"column":4,"nodeType":"Identifier","messageId":"undef","endLine":200,"endColumn":6},{"ruleId":"no-unused-vars","severity":1,"message":"'ExtCmpId' is defined but never used.","line":218,"column":28,"nodeType":"Identifier","messageId":"unusedVar","endLine":218,"endColumn":36},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":224,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":224,"endColumn":56},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":229,"column":3,"nodeType":"VariableDeclaration","messageId":"combine","endLine":229,"endColumn":62},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":229,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":229,"endColumn":62},{"ruleId":"no-useless-call","severity":1,"message":"Unnecessary '.apply()'.","line":261,"column":6,"nodeType":"CallExpression","messageId":"unnecessaryCall","endLine":261,"endColumn":50},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":270,"column":4,"nodeType":"Identifier","messageId":"undef","endLine":270,"endColumn":7},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":290,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":290,"endColumn":38},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":290,"column":3,"nodeType":"VariableDeclaration","messageId":"combine","endLine":290,"endColumn":38},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":313,"column":3,"nodeType":"Identifier","messageId":"undef","endLine":313,"endColumn":5},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":331,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":334,"endColumn":27},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":336,"column":9,"nodeType":"VariableDeclaration","messageId":"combine","endLine":336,"endColumn":18},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":336,"column":9,"nodeType":"VariableDeclaration","messageId":"top","endLine":336,"endColumn":18},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":357,"column":3,"nodeType":"VariableDeclaration","messageId":"combine","endLine":357,"endColumn":44},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":357,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":357,"endColumn":44},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":362,"column":3,"nodeType":"VariableDeclaration","messageId":"combine","endLine":362,"endColumn":49},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":362,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":362,"endColumn":49},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":364,"column":3,"nodeType":"VariableDeclaration","messageId":"combine","endLine":364,"endColumn":70},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":364,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":364,"endColumn":70},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":365,"column":9,"nodeType":"VariableDeclaration","messageId":"top","endLine":365,"endColumn":18},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":365,"column":9,"nodeType":"VariableDeclaration","messageId":"combine","endLine":365,"endColumn":18},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":366,"column":4,"nodeType":"VariableDeclaration","messageId":"combine","endLine":370,"endColumn":8},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":366,"column":4,"nodeType":"VariableDeclaration","messageId":"top","endLine":370,"endColumn":8},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":366,"column":27,"nodeType":"Identifier","messageId":"undef","endLine":366,"endColumn":29},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":368,"column":34,"nodeType":"Identifier","messageId":"undef","endLine":368,"endColumn":36},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":387,"column":3,"nodeType":"Identifier","messageId":"undef","endLine":387,"endColumn":5},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":401,"column":21,"nodeType":"Identifier","messageId":"undef","endLine":401,"endColumn":23},{"ruleId":"no-unused-vars","severity":1,"message":"'sender' is defined but never used.","line":406,"column":32,"nodeType":"Identifier","messageId":"unusedVar","endLine":406,"endColumn":38},{"ruleId":"no-unused-vars","severity":1,"message":"'response' is defined but never used.","line":406,"column":40,"nodeType":"Identifier","messageId":"unusedVar","endLine":406,"endColumn":48}],"errorCount":0,"warningCount":97,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.panel.Upload', {\n\textend: 'Ext.form.Panel',\n\trequires: [\n\t\t'BS.store.BSApi', 'BS.form.CategoryBoxSelect',\n\t\t'BS.dialog.UploadWarnings'\n\t],\n\tfileUpload: true,\n\tlayout: {\n\t\ttype: 'vbox',\n\t\talign: 'stretch'\n\t},\n\n\t/* Component specific */\n\tdefaultFileNamePrefix: '',\n\tdefaultCategories: [],\n\tdefaultDescription: '',\n\timplicitFileNamePrefix: '',\n\timplicitCategories: [],\n\timplicitDescription: '',\n\n\tinitComponent: function () {\n\n\t\tthis.fuFile = new Ext.form.field.File( {\n\t\t\tfieldLabel: mw.message( 'bs-upload-uploadfilefieldlabel' ).plain(),\n\t\t\tbuttonText: mw.message( 'bs-upload-uploadbuttontext' ).plain(),\n\t\t\tid: this.getId() + '-file',\n\t\t\tname: 'file',\n\t\t\temptyText: mw.message( 'bs-upload-uploadfileemptytext' ).plain(),\n\t\t\tvalidator: this.validateFile,\n\t\t\tvalidateOnChange: true,\n\t\t\tclearOnSubmit: false,\n\t\t\tmsgTarget: 'under'\n\t\t} );\n\n\t\tthis.fuFile.on( 'change', this.fuFileChange, this );\n\n\t\tthis.tfFileName = new Ext.form.TextField( {\n\t\t\tfieldLabel: mw.message( 'bs-upload-uploaddestfilelabel' ).plain(),\n\t\t\tid: this.getId() + '-filename',\n\t\t\t/* jshint ignore:start */\n\t\t\tmaskRe: new RegExp( /[^\\/\\?\\*\\\"\\#\\<\\>\\|\\ö\\ä\\ü\\Ö\\Ä\\Ü\\á\\à\\â\\é\\è\\ê\\ú\\ù\\û\\ó\\ò\\ô\\Á\\À\\Â\\É\\È\\Ê\\Ú\\Ù\\Û\\Ó\\Ò\\Ô\\ß\\\\]/gmi )\n\t\t\t/* jshint ignore:end */\n\t\t} );\n\n\t\tthis.tfFileName.on( 'change', this.tfFileNameChange, this );\n\n\t\tthis.taDescription = new Ext.form.field.TextArea( {\n\t\t\tfieldLabel: mw.message( 'bs-upload-descfilelabel' ).plain(),\n\t\t\tid: this.getId() + '-description',\n\t\t\tvalue: '',\n\t\t\tsubmitValue: false\n\t\t} );\n\n\t\tthis.storeLicenses = new BS.store.BSApi( {\n\t\t\tapiAction: 'bs-upload-license-store',\n\t\t\tfields: [ 'text', 'value', 'indent' ],\n\t\t\tsubmitValue: false\n\t\t} );\n\n\t\tthis.cbLicenses = new Ext.form.ComboBox( {\n\t\t\tfieldLabel: mw.message( 'bs-upload-license' ).plain(),\n\t\t\tmode: 'local',\n\t\t\tstore: this.storeLicenses,\n\t\t\tvalueField: 'value',\n\t\t\tdisplayField: 'text',\n\t\t\ttpl: new Ext.XTemplate(\n\t\t\t\t'<ul class=\"x-list-plain\">',\n\t\t\t\t  '<tpl for=\".\">',\n\t\t\t\t    '<tpl if=\"this.hasValue(value) == false\">',\n\t\t\t\t      '<li role=\"option\" class=\"x-boundlist-item no-value\">{text}</li>',\n\t\t\t\t    '</tpl>',\n\t\t\t\t    '<tpl if=\"this.hasValue(value)\">',\n\t\t\t\t      '<li role=\"option\" class=\"x-boundlist-item indent-{indent}\">{text}</li>',\n\t\t\t\t    '</tpl>',\n\t\t\t\t  '</tpl>',\n\t\t\t\t'</ul>',\n\t\t\t\t{\n\t\t\t\t\tcompiled: true,\n\t\t\t\t\tdisableFormats: true,\n\t\t\t\t\t// member functions:\n\t\t\t\t\thasValue: function ( value ) {\n\t\t\t\t\t\treturn value !== '';\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t)\n\t\t} );\n\n\t\tthis.cbxWatch = new Ext.form.field.Checkbox( {\n\t\t\tboxLabel: mw.message( 'bs-upload-uploadwatchthislabel' ).plain(),\n\t\t\tid: this.getId() + 'watch_page',\n\t\t\tname: 'watchlist',\n\t\t\tinputValue: 'watch'\n\t\t} );\n\n\t\tthis.cbxWarnings = new Ext.form.field.Checkbox( {\n\t\t\tboxLabel: mw.message( 'bs-upload-uploadignorewarningslabel' ).plain(),\n\t\t\tid: this.getId() + 'ignorewarnings',\n\t\t\tchecked: true,\n\t\t\tname: 'ignorewarnings'\n\t\t} );\n\n\t\tthis.bsCategories = new BS.form.CategoryBoxSelect( {\n\t\t\tid: this.getId() + 'categories',\n\t\t\tfieldLabel: mw.message( 'bs-upload-categories' ).plain(),\n\t\t\tsubmitValue: false,\n\t\t\tshowTreeTrigger: true\n\t\t} );\n\t\tthis.bsCategories.setValue( this.defaultCategories );\n\n\t\tthis.fsDetails = new Ext.form.FieldSet( {\n\t\t\ttitle: mw.message( 'bs-upload-details' ).plain(),\n\t\t\tcollapsed: true,\n\t\t\tcollapsible: true,\n\t\t\tanchor: '98%',\n\t\t\tdefaults: {\n\t\t\t\tanchor: '100%',\n\t\t\t\tlabelAlign: 'right'\n\t\t\t}\n\t\t} );\n\n\t\tthis.panelItems = [\n\t\t\tthis.fuFile,\n\t\t\tthis.tfFileName,\n\t\t\tthis.fsDetails\n\t\t];\n\n\t\tvar detailsItems = [\n\t\t\tthis.bsCategories,\n\t\t\tthis.taDescription,\n\t\t\tthis.cbLicenses,\n\t\t\tthis.cbxWarnings,\n\t\t\tthis.cbxWatch\n\t\t];\n\n\t\t$( document ).trigger( 'BSUploadPanelInitComponent', [ this, this.panelItems, detailsItems ] );\n\n\t\tthis.fsDetails.add( detailsItems );\n\n\t\tthis.items = this.panelItems;\n\n\t\tthis.callParent( arguments );\n\t},\n\n\tfuFileChange: function ( field, value, eOpts ) {\n\t\t// Remove path info\n\t\tvalue = value.replace( /^.*?([^\\\\\\/:]*?\\.[a-z0-9]+)$/img, '$1' );\n\t\tvalue = this.defaultFileNamePrefix + value;\n\t\tvalue = value.replace( /\\s/g, '_' );\n\t\tif ( mw.config.get( 'bsIsWindows' ) ) {\n\t\t\t// replace non-ASCII\n\t\t\tvar matcher = /[öäüÖÄÜáàâéèêúùûóòôÁÀÂÉÈÊÚÙÛÓÒÔß]/g,\n\t\t\t\tdictionary = {\n\t\t\t\t\tä: 'ae', ö: 'oe', ü: 'ue',\n\t\t\t\t\tÄ: 'Ae', Ö: 'Oe', Ü: 'Ue',\n\t\t\t\t\tá: 'a', à: 'a', â: 'a',\n\t\t\t\t\té: 'e', è: 'e', ê: 'e',\n\t\t\t\t\tú: 'u', ù: 'u', û: 'u',\n\t\t\t\t\tó: 'o', ò: 'o', ô: 'o',\n\t\t\t\t\tÁ: 'A', À: 'A', Â: 'A',\n\t\t\t\t\tÉ: 'E', È: 'E', Ê: 'E',\n\t\t\t\t\tÚ: 'U', Ù: 'U', Û: 'U',\n\t\t\t\t\tÓ: 'O', Ò: 'O', Ô: 'O',\n\t\t\t\t\tß: 'ss'\n\t\t\t\t},\n\t\t\t\ttranslator = function ( match ) {\n\t\t\t\t\treturn dictionary[ match ] || match;\n\t\t\t\t};\n\n\t\t\tvalue = value.replace( matcher, translator );\n\t\t\tvalue = value.replace( /[^\\u0000-\\u007F]/gmi, '' ); // Replace remaining Non-ASCII\n\t\t}\n\t\t// apply value without 'C:\\fakepath\\' to file field as well\n\t\tfield.setRawValue( value );\n\n\t\tthis.tfFileName.setValue( value );\n\t\tthis.tfFileName.fireEvent( 'change', this.tfFileName, value );\n\n\t},\n\n\tuploadWarningAPI: null,\n\ttfFileNameChange: function ( sender, newValue, oldValue, eOpts ) {\n\t\tif ( this.uploadWarningAPI === null ) {\n\t\t\tthis.uploadWarningAPI = new mw.Api();\n\t\t}\n\t\tvar me = this;\n\t\tthis.uploadWarningAPI.abort();\n\t\tthis.uploadWarningAPI.get( {\n\t\t\taction: 'query',\n\t\t\tformat: 'json',\n\t\t\ttitles: 'File:' + newValue,\n\t\t\tprop: 'imageinfo',\n\t\t\tiiprop: 'uploadwarning',\n\t\t\tindexpageids: ''\n\t\t} ).done( function ( response ) {\n\t\t\t// file does not exist\n\t\t\tif ( response.query.pageids[ 0 ] === '-1' ) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\t// replacement warning, notify user and if user ignores, set ignore warnings automatically\n\t\t\tbs.util.alert(\n\t\t\t\tme.getId() + '-existswarning',\n\t\t\t\t{\n\t\t\t\t\ttitleMsg: 'bs-extjs-title-warning',\n\t\t\t\t\ttext: response.query.pages[ response.query.pageids[ 0 ] ]\n\t\t\t\t\t\t.imageinfo[ 0 ]\n\t\t\t\t\t\t.html\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tok: function () {\n\t\t\t\t\t\tme.cbxWarnings.setValue( true );\n\t\t\t\t\t},\n\t\t\t\t\tscope: me\n\t\t\t\t}\n\t\t\t);\n\t\t} );\n\t},\n\n\tcheckFileSize: function ( ExtCmpId ) {\n\t\t// No FileAPI? No love.\n\t\tif ( typeof window.FileReader === 'undefined' ) {\n\t\t\treturn true;\n\t\t}\n\n\t\tvar allowedSize = mw.config.get( 'bsMaxUploadSize' );\n\t\tif ( allowedSize === null ) {\n\t\t\treturn true;\n\t\t}\n\n\t\tvar filesize = this.fuFile.fileInputEl.dom.files[ 0 ].size;\n\t\tif ( filesize > allowedSize.php || filesize > allowedSize.mediawiki ) {\n\t\t\treturn false;\n\t\t}\n\t\treturn true;\n\t},\n\n\tuploadFile: function ( sessionKeyForReupload ) {\n\t\tvar params = {\n\t\t\t\tfilename: this.makeFileName(),\n\t\t\t\twatchlist: this.cbxWatch.getValue() ? 'watch' : 'nochange',\n\t\t\t\tignorewarnings: this.cbxWarnings.getValue(),\n\t\t\t\ttext: this.makeFilePageText()\n\t\t\t},\n\t\t\tme = this,\n\t\t\tapi = new mw.Api(),\n\t\t\tpromise = null;\n\n\t\tif ( sessionKeyForReupload ) {\n\t\t\tparams.action = 'upload';\n\t\t\tparams.filekey = sessionKeyForReupload;\n\t\t\tpromise = api.postWithEditToken( params );\n\t\t} else {\n\t\t\tpromise = api.upload( this.fuFile.fileInputEl.dom, params );\n\t\t}\n\n\t\tpromise.done( function () {\n\t\t\tme.onUploadSuccess.apply( me, arguments );\n\t\t} )\n\t\t\t.fail( function ( errorcode, response ) {\n\t\t\t/* When sending \"ignorewarnings\" MW API still calls \"fail\" */\n\t\t\t\tif ( response.upload.result === 'Success' ) {\n\t\t\t\t\tme.onUploadSuccess.apply( me, [ response ] );\n\t\t\t\t} else {\n\t\t\t\t\tme.onUploadFailure.apply( me, arguments );\n\t\t\t\t}\n\t\t\t} );\n\n\t\t// TODO: Better mask whole document?\n\t\tthis.getEl().mask(\n\t\t\tmw.message( 'bs-upload-upload-waitmessage' ).plain(),\n\t\t\tExt.baseCSSPrefix + 'mask-loading'\n\t\t);\n\t},\n\n\tonUploadSuccess: function ( response ) {\n\t\tvar me = this,\n\t\t\tpageText = this.makeFilePageText();\n\t\t/*\n\t\t * 'pageText' consists of chosen categories, chosen licence and provided\n\t\t * description text. If it is not empty - which means the user has set\n\t\t * at least one of those fields - we need to edit the file description\n\t\t * page after a successful upload. Because otherwise such things as\n\t\t * categories would not be persisted in case of a re-upload.\n\t\t */\n\t\tif ( pageText === '' ) {\n\t\t\tthis.fireEvent( 'upload-complete', me, response.upload );\n\t\t\tthis.resetDialog();\n\t\t\treturn;\n\t\t}\n\n\t\tvar filePageEditApi = new mw.Api();\n\t\tfilePageEditApi.postWithEditToken( {\n\t\t\taction: 'edit',\n\t\t\ttitle: 'File:' + response.upload.filename,\n\t\t\ttext: pageText\n\t\t} )\n\t\t\t.then( function () {\n\t\t\t\tme.fireEvent( 'upload-complete', me, response.upload );\n\t\t\t\tme.resetDialog();\n\t\t\t} );\n\n\t},\n\n\tonUploadFailure: function ( errorcode, response ) {\n\t\tvar upload = response.upload;\n\t\tif ( upload.error ) {\n\t\t\treturn this.handleError( upload );\n\t\t}\n\n\t\tif ( upload.warnings && !upload.imageinfo ) {\n\t\t\treturn this.handleWarnings( upload );\n\t\t}\n\n\t\tbs.util.alert(\n\t\t\tthis.getId() + '-error',\n\t\t\t{\n\t\t\t\ttitle: mw.message( 'bs-upload-error' ).plain(),\n\t\t\t\ttext: mw.message( 'bs-upload-error-long' ).plain()\n\t\t\t},\n\t\t\t{\n\t\t\t\tok: this.resetDialog,\n\t\t\t\tscope: this\n\t\t\t}\n\t\t);\n\t},\n\n\t// scope: \"this\" == fuFile\n\tvalidateFile: function ( value ) {\n\t\tif ( value === '' ) {\n\t\t\treturn true;\n\t\t}\n\t\tvar me = this.up( 'form' ),\n\t\t\tnameParts = value.split( '.' ),\n\t\t\tfileExtension = nameParts[ nameParts.length - 1 ].toLowerCase(),\n\t\t\textensionFound = false;\n\n\t\tfor ( var i = 0; i < me.allowedFileExtensions.length; i++ ) {\n\t\t\tif ( me.allowedFileExtensions[ i ].toLowerCase() === fileExtension.toLowerCase() ) {\n\t\t\t\textensionFound = true;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tif ( !extensionFound ) {\n\t\t\treturn mw.message( 'bs-upload-filetypenotsupported' ).plain();\n\t\t}\n\n\t\tif ( me.checkFileSize() === false ) {\n\t\t\treturn mw.message( 'largefileserver' ).plain();\n\t\t}\n\n\t\treturn true;\n\t},\n\n\tmakeFilePageText: function () {\n\t\tvar desc = this.implicitDescription;\n\t\tdesc += this.taDescription.getValue();\n\n\t\tvar license = this.cbLicenses.getValue();\n\t\tif ( license ) {\n\t\t\tdesc += license + '\\n';\n\t\t}\n\n\t\tvar categories = this.bsCategories.getValue();\n\t\tcategories = categories.concat( this.implicitCategories );\n\t\tvar formattedNamespaces = mw.config.get( 'wgFormattedNamespaces' );\n\t\tfor ( var i = 0; i < categories.length; i++ ) {\n\t\t\tvar categoryLink = new bs.wikiText.Link( {\n\t\t\t\ttitle: categories[ i ].ucFirst(),\n\t\t\t\tnsText: formattedNamespaces[ bs.ns.NS_CATEGORY ],\n\t\t\t\tlink: false // TODO: fix this in \"bs.wikiText.Link\"\n\t\t\t} );\n\t\t\tdesc += '\\n' + categoryLink.toString();\n\t\t}\n\n\t\treturn desc;\n\t},\n\n\thandleError: function ( upload ) {\n\t\tvar text = upload.error.info;\n\n\t\t// Mw API only renders un-localized windows-nonascii-filename\n\t\tif ( upload.error.invalidparameter === 'filename' ) {\n\t\t\tif ( upload.error.info === 'windows-nonascii-filename' ) {\n\t\t\t\ttext = mw.message( 'windows-nonascii-filename' ).plain();\n\t\t\t}\n\t\t}\n\n\t\tbs.util.alert(\n\t\t\tthis.getId() + '-error',\n\t\t\t{\n\t\t\t\ttitle: mw.message( 'bs-upload-error' ).plain(),\n\t\t\t\ttext: text\n\t\t\t},\n\t\t\t{\n\t\t\t\tok: this.resetDialog,\n\t\t\t\tscope: this\n\t\t\t}\n\t\t);\n\t},\n\n\thandleWarnings: function ( upload ) {\n\t\tvar warnDlg = new BS.dialog.UploadWarnings( {\n\t\t\tid: this.getId() + '-warning',\n\t\t\tapiUpload: upload\n\t\t} );\n\n\t\twarnDlg.on( 'ok', function ( sender, response ) {\n\t\t\tthis.cbxWarnings.setValue( true );\n\t\t\tthis.uploadFile( upload.filekey );\n\t\t}, this );\n\t\twarnDlg.on( 'cancel', function () {\n\t\t\tthis.getEl().unmask();\n\t\t}, this );\n\n\t\twarnDlg.show();\n\t},\n\n\tresetDialog: function () {\n\t\tthis.getEl().unmask();\n\t\tthis.getForm().reset(); // workaround for resetting fuFile field\n\t\tthis.fuFile.setRawValue( '' );\n\t},\n\n\tmakeFileName: function () {\n\t\tvar fileName =\n\t\t\tthis.implicitFileNamePrefix +\n\t\t\tthis.tfFileName.getValue();\n\n\t\treturn fileName;\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/portal/APIPortlet.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":11,"column":19,"nodeType":"Identifier","messageId":"undef","endLine":11,"endColumn":22},{"ruleId":"no-unused-vars","severity":1,"message":"'active' is defined but never used.","line":15,"column":44,"nodeType":"Identifier","messageId":"unusedVar","endLine":15,"endColumn":50},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":16,"column":24,"nodeType":"Identifier","messageId":"undef","endLine":16,"endColumn":27},{"ruleId":"no-unused-vars","severity":1,"message":"'oConfig' is defined but never used.","line":32,"column":29,"nodeType":"Identifier","messageId":"unusedVar","endLine":32,"endColumn":36},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":38,"column":3,"nodeType":"Identifier","messageId":"undef","endLine":38,"endColumn":5}],"errorCount":0,"warningCount":6,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.portal.APIPortlet', {\n\textend: 'BS.portal.Portlet',\n\theight: 300,\n\tbodyPadding: 5,\n\n\t// Custom Settings\n\tmodule: '',\n\ttask: '',\n\n\tinitComponent: function () {\n\t\tthis.cContent = Ext.create( 'Ext.Component', {\n\t\t\tloader: {\n\t\t\t\turl: '',\n\t\t\t\ttarget: this.cContent,\n\t\t\t\trenderer: function ( loader, response, active ) {\n\t\t\t\t\tvar responseObj = Ext.JSON.decode( response.responseText );\n\t\t\t\t\tloader.getTarget().update( responseObj.payload.html );\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t},\n\t\t\tautoScroll: true\n\t\t} );\n\n\t\tthis.loadContent();\n\n\t\tthis.items = [\n\t\t\tthis.cContent\n\t\t];\n\t\tthis.on( 'configchange', this.onConfigChange, this );\n\t\tthis.callParent( arguments );\n\t},\n\tonConfigChange: function ( oConfig ) {\n\t\tthis.loadContent();\n\t},\n\tloadContent: function () {\n\t\tvar me = this;\n\n\t\tbs.api.tasks.execSilent(\n\t\t\tme.module, me.task, me.makeData()\n\t\t).done( function ( response ) {\n\t\t\tme.cContent.update( response.payload.html );\n\t\t} );\n\t},\n\tmakeData: function () {\n\t\treturn {};\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/portal/ChartPortlet.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":10,"column":21,"nodeType":"Identifier","messageId":"undef","endLine":10,"endColumn":24},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":40,"column":11,"nodeType":"Identifier","messageId":"undef","endLine":40,"endColumn":14},{"ruleId":"max-len","severity":1,"message":"This line has a length of 144. Maximum allowed is 100.","line":47,"column":1,"nodeType":"Program","messageId":"max","endLine":47,"endColumn":124},{"ruleId":"max-len","severity":1,"message":"This line has a length of 141. Maximum allowed is 100.","line":48,"column":1,"nodeType":"Program","messageId":"max","endLine":48,"endColumn":121},{"ruleId":"no-mixed-spaces-and-tabs","severity":1,"message":"Mixed spaces and tabs.","line":94,"column":5,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":94,"endColumn":7}],"errorCount":0,"warningCount":6,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.portal.ChartPortlet', {\n\textend: 'BS.portal.Portlet',\n\tlayout: 'fit',\n\theight: 300,\n\n\tinitComponent: function () {\n\t\tthis.beforeInitCompontent();\n\t\tthis.ctMainConfig = this.ctMainConfig || this.makeDummyConfig();\n\n\t\tthis.ctMain = new Ext.chart.CartesianChart( {\n\t\t\ttheme: 'blue',\n\t\t\tlegend: {\n\t\t\t\tposition: 'bottom'\n\t\t\t},\n\t\t\tstore: this.makeStore(),\n\t\t\taxes: this.makeAxes(),\n\t\t\tseries: this.makeSeries()\n\t\t} );\n\n\t\tthis.items = [\n\t\t\tthis.ctMain\n\t\t];\n\n\t\tthis.callParent( arguments );\n\t},\n\n\tmakeStore: function () {\n\t\treturn this.ctMainConfig.store;\n\t},\n\tmakeAxes: function () {\n\t\treturn this.ctMainConfig.axes;\n\n\t},\n\tmakeSeries: function () {\n\t\treturn this.ctMainConfig.series;\n\t},\n\n\tmakeDummyConfig: function () {\n\t\treturn {\n\t\t\tstore: Ext.create( 'Ext.data.JsonStore', {\n\t\t\t\tfields: [ 'name', 'sp500', 'djia' ],\n\t\t\t\tdata: ( function () {\n\t\t\t\t\tvar data = [ { name: 0, djia: 10000, sp500: 1100 } ], i;\n\t\t\t\t\tfor ( i = 1; i < 50; i++ ) {\n\t\t\t\t\t\tdata.push( {\n\t\t\t\t\t\t\tname: i,\n\t\t\t\t\t\t\tsp500: data[ i - 1 ].sp500 + ( ( Math.floor( Math.random() * 2 ) % 2 ) ? -1 : 1 ) * Math.floor( Math.random() * 7 ),\n\t\t\t\t\t\t\tdjia: data[ i - 1 ].djia + ( ( Math.floor( Math.random() * 2 ) % 2 ) ? -1 : 1 ) * Math.floor( Math.random() * 7 )\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t\treturn data;\n\t\t\t\t}() )\n\t\t\t} ),\n\t\t\taxes: [ {\n\t\t\t\ttype: 'numeric',\n\t\t\t\tposition: 'left',\n\t\t\t\tfields: [ 'djia' ],\n\t\t\t\ttitle: 'Dow Jones Average',\n\t\t\t\tlabel: {\n\t\t\t\t\tfont: '11px Arial'\n\t\t\t\t}\n\t\t\t}, {\n\t\t\t\ttype: 'numeric',\n\t\t\t\tposition: 'right',\n\t\t\t\tgrid: false,\n\t\t\t\tfields: [ 'sp500' ],\n\t\t\t\ttitle: 'S&P 500',\n\t\t\t\tlabel: {\n\t\t\t\t\tfont: '11px Arial'\n\t\t\t\t}\n\t\t\t} ],\n\t\t\tseries: [ {\n\t\t\t\ttype: 'line',\n\t\t\t\tlineWidth: 1,\n\t\t\t\tshowMarkers: false,\n\t\t\t\tfill: true,\n\t\t\t\taxis: 'left',\n\t\t\t\txField: 'name',\n\t\t\t\tyField: 'djia',\n\t\t\t\tstyle: {\n\t\t\t\t\t'stroke-width': 1,\n\t\t\t\t\tstroke: 'rgb(148, 174, 10)'\n\n\t\t\t\t}\n\t\t\t}, {\n\t\t\t\ttype: 'line',\n\t\t\t\tlineWidth: 1,\n\t\t\t\tshowMarkers: false,\n\t\t\t\taxis: 'right',\n\t\t\t\txField: 'name',\n\t\t\t\tyField: 'sp500',\n\t\t\t\tstyle: {\n\t\t\t\t\t'stroke-width': 1,\n\t\t\t\t\t stroke: 'rgb(17, 95, 166)'\n\n\t\t\t\t}\n\t\t\t} ]\n\t\t};\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/portal/GridPortlet.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":9,"column":11,"nodeType":"Identifier","messageId":"undef","endLine":9,"endColumn":14},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":41,"column":17,"nodeType":"Identifier","messageId":"undef","endLine":41,"endColumn":20}],"errorCount":0,"warningCount":3,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.portal.GridPortlet', {\n\textend: 'BS.portal.Portlet',\n\theight: 300,\n\n\tinitComponent: function () {\n\n\t\t// Some simple fixtures\n\t\tthis.gdMainConfig = {\n\t\t\tstore: Ext.create( 'Ext.data.ArrayStore', {\n\t\t\t\tfields: [\n\t\t\t\t\t{ name: 'company' },\n\t\t\t\t\t{ name: 'change', type: 'float' }\n\t\t\t\t],\n\t\t\t\tdata: [\n\t\t\t\t\t[ '3m Co', 71.72 ],\n\t\t\t\t\t[ 'Alcoa Inc', 29.01 ],\n\t\t\t\t\t[ 'Altria Group Inc', -83.81 ],\n\t\t\t\t\t[ 'American Express Company', 52.55 ]\n\t\t\t\t]\n\t\t\t} ),\n\t\t\tcolumns: [ {\n\t\t\t\tid: 'company',\n\t\t\t\ttext: 'Company',\n\t\t\t\tflex: 1,\n\t\t\t\tsortable: true,\n\t\t\t\tdataIndex: 'company'\n\t\t\t}, {\n\t\t\t\ttext: 'Change',\n\t\t\t\twidth: 75,\n\t\t\t\tsortable: true,\n\t\t\t\trenderer: function ( val ) {\n\t\t\t\t\tvar color = val > 0 ? 'green' : 'red';\n\t\t\t\t\treturn '<span style=\"color:{0};\">{1}</span>'.format( color, val );\n\t\t\t\t},\n\t\t\t\tdataIndex: 'change'\n\t\t\t} ]\n\t\t};\n\n\t\tthis.beforeInitComponent();\n\n\t\tthis.gdMain = Ext.create( 'Ext.grid.Panel', {\n\t\t\theight: this.height,\n\t\t\tstore: this.gdMainConfig.store,\n\t\t\tstripeRows: true,\n\t\t\tcolumnLines: true,\n\t\t\tcolumns: this.gdMainConfig.columns\n\t\t} );\n\n\t\tthis.items = [\n\t\t\tthis.gdMain\n\t\t];\n\n\t\tthis.afterInitComponent();\n\n\t\tthis.callParent( arguments );\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/portal/HTMLPortlet.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":10,"column":19,"nodeType":"Identifier","messageId":"undef","endLine":10,"endColumn":22}],"errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.portal.HTMLPortlet', {\n\textend: 'BS.portal.Portlet',\n\theight: 300,\n\tbodyPadding: 5,\n\n\t// Custom Settings\n\tcontentUrl: '',\n\n\tinitComponent: function () {\n\t\tthis.cContent = Ext.create( 'Ext.Component', {\n\t\t\tloader: {\n\t\t\t\turl: ''\n\t\t\t},\n\t\t\tautoScroll: true\n\t\t} );\n\t\t// this.cContent.getLoader().on('beforeload', this.cContentBeforeLoad, this );\n\t\t// this.cContent.getLoader().on('load', this.cContentLoad, this );\n\t\tif ( this.contentUrl !== '' ) {\n\t\t\tthis.cContent.getLoader().load( {\n\t\t\t\turl: this.contentUrl\n\t\t\t} );\n\t\t}\n\n\t\tthis.items = [\n\t\t\tthis.cContent\n\t\t];\n\n\t\tthis.callParent( arguments );\n\t}/* ,\n\n\tcContentBeforeLoad: function( loader, options, eOpts ) {\n\t\tthis.setLoading(true);\n\t},\n\n\tcContentLoad: function( loader, response, options, eOpts ) {\n\t\tthis.setLoading(false);\n\t} */\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/portal/PortalColumn.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":6,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":6,"endColumn":4}],"errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/**\n * @class BS.portal.PortalColumn\n * @extends Ext.container.Container\n * A layout column class used internally be {@link BS.portal.PortalPanel}.\n */\nExt.define( 'BS.portal.PortalColumn', {\n\textend: 'Ext.container.Container',\n\talias: 'widget.portalcolumn',\n\n\trequires: [\n\t\t'Ext.layout.container.Anchor',\n\t\t'BS.portal.Portlet'\n\t],\n\n\tlayout: 'anchor',\n\tdefaultType: 'portlet',\n\tcls: 'x-portal-column'\n\n\t// This is a class so that it could be easily extended\n\t// if necessary to provide additional behavior.\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/portal/PortalDropZone.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":6,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":6,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":11,"column":3,"nodeType":"Identifier","messageId":"undef","endLine":11,"endColumn":6},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":12,"column":3,"nodeType":"Identifier","messageId":"undef","endLine":12,"endColumn":5},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":48,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":48,"endColumn":40},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":48,"column":3,"nodeType":"VariableDeclaration","messageId":"combine","endLine":48,"endColumn":40},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":60,"column":3,"nodeType":"VariableDeclaration","messageId":"combine","endLine":64,"endColumn":19},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":60,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":64,"endColumn":19},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":79,"column":3,"nodeType":"VariableDeclaration","messageId":"combine","endLine":84,"endColumn":21},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":79,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":84,"endColumn":21},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":100,"column":3,"nodeType":"VariableDeclaration","messageId":"combine","endLine":100,"endColumn":78},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":100,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":100,"endColumn":78},{"ruleId":"max-len","severity":1,"message":"This line has a length of 108. Maximum allowed is 100.","line":107,"column":1,"nodeType":"Program","messageId":"max","endLine":107,"endColumn":97},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":136,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":140,"endColumn":98},{"ruleId":"max-len","severity":1,"message":"This line has a length of 106. Maximum allowed is 100.","line":140,"column":1,"nodeType":"Program","messageId":"max","endLine":140,"endColumn":98},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":145,"column":4,"nodeType":"Identifier","messageId":"undef","endLine":145,"endColumn":7},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":158,"column":4,"nodeType":"Identifier","messageId":"undef","endLine":158,"endColumn":7},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":163,"column":4,"nodeType":"VariableDeclaration","messageId":"top","endLine":163,"endColumn":32},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":163,"column":4,"nodeType":"VariableDeclaration","messageId":"combine","endLine":163,"endColumn":32},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":165,"column":5,"nodeType":"VariableDeclaration","messageId":"top","endLine":165,"endColumn":34},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":165,"column":5,"nodeType":"VariableDeclaration","messageId":"combine","endLine":165,"endColumn":34},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":192,"column":3,"nodeType":"Identifier","messageId":"undef","endLine":192,"endColumn":6},{"ruleId":"no-undef","severity":1,"message":"'BS' is not defined.","line":193,"column":3,"nodeType":"Identifier","messageId":"undef","endLine":193,"endColumn":5}],"errorCount":0,"warningCount":22,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/**\n * @class BS.portal.PortalDropZone\n * @extends Ext.dd.DropTarget\n * Internal class that manages drag/drop for {@link BS.portal.PortalPanel}.\n */\nExt.define( 'BS.portal.PortalDropZone', {\n\textend: 'Ext.dd.DropTarget',\n\n\tconstructor: function ( portal, cfg ) {\n\t\tthis.portal = portal;\n\t\tExt.dd.ScrollManager.register( portal.body );\n\t\tBS.portal.PortalDropZone.superclass.constructor.call( this, portal.body, cfg );\n\t\tportal.body.ddScrollConfig = this.ddScrollConfig;\n\t},\n\n\tddScrollConfig: {\n\t\tvthresh: 50,\n\t\ththresh: -1,\n\t\tanimate: true,\n\t\tincrement: 200\n\t},\n\n\tcreateEvent: function ( dd, e, data, col, c, pos ) {\n\t\treturn {\n\t\t\tportal: this.portal,\n\t\t\tpanel: data.panel,\n\t\t\tcolumnIndex: col,\n\t\t\tcolumn: c,\n\t\t\tposition: pos,\n\t\t\tdata: data,\n\t\t\tsource: dd,\n\t\t\trawEvent: e,\n\t\t\tstatus: this.dropAllowed\n\t\t};\n\t},\n\n\tnotifyOver: function ( dd, e, data ) {\n\t\tvar xy = e.getXY(),\n\t\t\tportal = this.portal,\n\t\t\tproxy = dd.proxy;\n\n\t\t// case column widths\n\t\tif ( !this.grid ) {\n\t\t\tthis.grid = this.getGrid();\n\t\t}\n\n\t\t// handle case scroll where scrollbars appear during drag\n\t\tvar cw = portal.body.dom.clientWidth;\n\t\tif ( !this.lastCW ) {\n\t\t\t// set initial client width\n\t\t\tthis.lastCW = cw;\n\t\t} else if ( this.lastCW !== cw ) {\n\t\t\t// client width has changed, so refresh layout & grid calcs\n\t\t\tthis.lastCW = cw;\n\t\t\t// portal.doLayout();\n\t\t\tthis.grid = this.getGrid();\n\t\t}\n\n\t\t// determine column\n\t\tvar colIndex = 0,\n\t\t\tcolRight = 0,\n\t\t\tcols = this.grid.columnX,\n\t\t\tlen = cols.length,\n\t\t\tcmatch = false;\n\n\t\tfor ( len; colIndex < len; colIndex++ ) {\n\t\t\tcolRight = cols[ colIndex ].x + cols[ colIndex ].w;\n\t\t\tif ( xy[ 0 ] < colRight ) {\n\t\t\t\tcmatch = true;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\t// no match, fix last index\n\t\tif ( !cmatch ) {\n\t\t\tcolIndex--;\n\t\t}\n\n\t\t// find insert position\n\t\tvar overPortlet, pos = 0,\n\t\t\th = 0,\n\t\t\tmatch = false,\n\t\t\toverColumn = portal.items.getAt( colIndex ),\n\t\t\tportlets = overColumn.items.items,\n\t\t\toverSelf = false;\n\n\t\tlen = portlets.length;\n\n\t\tfor ( len; pos < len; pos++ ) {\n\t\t\toverPortlet = portlets[ pos ];\n\t\t\th = overPortlet.el.getHeight();\n\t\t\tif ( h === 0 ) {\n\t\t\t\toverSelf = true;\n\t\t\t} else if ( ( overPortlet.el.getY() + ( h / 2 ) ) > xy[ 1 ] ) {\n\t\t\t\tmatch = true;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\tpos = ( match && overPortlet ? pos : overColumn.items.getCount() ) + ( overSelf ? -1 : 0 );\n\t\tvar overEvent = this.createEvent( dd, e, data, colIndex, overColumn, pos );\n\n\t\tif ( portal.fireEvent( 'validatedrop', overEvent ) !== false && portal.fireEvent( 'beforedragover', overEvent ) !== false ) {\n\n\t\t\t// make sure proxy width is fluid in different width columns\n\t\t\tproxy.getProxy().setWidth( 'auto' );\n\t\t\tif ( overPortlet ) {\n\t\t\t\tdd.panelProxy.moveProxy( overPortlet.el.dom.parentNode, match ? overPortlet.el.dom : null );\n\t\t\t} else {\n\t\t\t\tdd.panelProxy.moveProxy( overColumn.el.dom, null );\n\t\t\t}\n\n\t\t\tthis.lastPos = {\n\t\t\t\tc: overColumn,\n\t\t\t\tcol: colIndex,\n\t\t\t\tp: overSelf || ( match && overPortlet ) ? pos : false\n\t\t\t};\n\t\t\tthis.scrollPos = portal.body.getScroll();\n\n\t\t\tportal.fireEvent( 'dragover', overEvent );\n\t\t\treturn overEvent.status;\n\t\t} else {\n\t\t\treturn overEvent.status;\n\t\t}\n\n\t},\n\n\tnotifyOut: function () {\n\t\tdelete this.grid;\n\t},\n\n\tnotifyDrop: function ( dd, e, data ) {\n\t\tdelete this.grid;\n\t\tif ( !this.lastPos ) {\n\t\t\treturn;\n\t\t}\n\t\tvar c = this.lastPos.c,\n\t\t\tcol = this.lastPos.col,\n\t\t\tpos = this.lastPos.p,\n\t\t\tpanel = dd.panel,\n\t\t\tdropEvent = this.createEvent( dd, e, data, col, c, pos !== false ? pos : c.items.getCount() );\n\n\t\tif ( this.portal.fireEvent( 'validatedrop', dropEvent ) !== false &&\n\t\t\tthis.portal.fireEvent( 'beforedrop', dropEvent ) !== false ) {\n\n\t\t\tExt.suspendLayouts();\n\n\t\t\t// make sure panel is visible prior to inserting so that the layout doesn't ignore it\n\t\t\tpanel.el.dom.style.display = '';\n\t\t\tdd.panelProxy.hide();\n\t\t\tdd.proxy.hide();\n\n\t\t\tif ( pos !== false ) {\n\t\t\t\tc.insert( pos, panel );\n\t\t\t} else {\n\t\t\t\tc.add( panel );\n\t\t\t}\n\n\t\t\tExt.resumeLayouts( true );\n\n\t\t\tthis.portal.fireEvent( 'drop', dropEvent );\n\n\t\t\t// scroll position is lost on drop, fix it\n\t\t\tvar st = this.scrollPos.top;\n\t\t\tif ( st ) {\n\t\t\t\tvar d = this.portal.body.dom;\n\t\t\t\tsetTimeout( function () {\n\t\t\t\t\td.scrollTop = st;\n\t\t\t\t},\n\t\t\t\t10 );\n\t\t\t}\n\t\t}\n\n\t\tdelete this.lastPos;\n\t\treturn true;\n\t},\n\n\t// internal cache of body and column coords\n\tgetGrid: function () {\n\t\tvar box = this.portal.body.getBox();\n\t\tbox.columnX = [];\n\t\tthis.portal.items.each( function ( c ) {\n\t\t\tbox.columnX.push( {\n\t\t\t\tx: c.el.getX(),\n\t\t\t\tw: c.el.getWidth()\n\t\t\t} );\n\t\t} );\n\t\treturn box;\n\t},\n\n\t// unregister the dropzone from ScrollManager\n\tunreg: function () {\n\t\tExt.dd.ScrollManager.unregister( this.portal.body );\n\t\tBS.portal.PortalDropZone.superclass.unreg.call( this );\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/portal/PortalPanel.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":6,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":6,"endColumn":4},{"ruleId":"no-unused-vars","severity":1,"message":"'me' is assigned a value but never used.","line":26,"column":7,"nodeType":"Identifier","messageId":"unusedVar","endLine":26,"endColumn":9},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":69,"column":13,"nodeType":"Identifier","messageId":"undef","endLine":69,"endColumn":16}],"errorCount":0,"warningCount":3,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/**\n * @class BS.portal.PortalPanel\n * @extends Ext.panel.Panel\n * A {@link Ext.panel.Panel Panel} class used for providing drag-drop-enabled portal layouts.\n */\nExt.define( 'BS.portal.PortalPanel', {\n\textend: 'Ext.panel.Panel',\n\talias: 'widget.portalpanel',\n\n\trequires: [\n\t\t'Ext.layout.container.Column',\n\n\t\t'BS.portal.PortalDropZone',\n\t\t'BS.portal.PortalColumn'\n\t],\n\n\tcls: 'x-portal',\n\tbodyCls: 'x-portal-body',\n\tdefaultType: 'portalcolumn',\n\tautoScroll: true,\n\n\t// manageHeight: false,\n\tminHeight: 300,\n\n\tinitComponent: function () {\n\t\tvar me = this;\n\n\t\t// Implement a Container beforeLayout call from the layout to this Container\n\t\tthis.layout = {\n\t\t\ttype: 'column'\n\t\t};\n\t\tthis.callParent();\n\n\t},\n\n\t// Set columnWidth, and set first and last column classes to allow exact CSS targeting.\n\tbeforeLayout: function () {\n\t\tvar items = this.layout.getLayoutItems(),\n\t\t\tlen = items.length,\n\t\t\tfirstAndLast = [ 'x-portal-column-first', 'x-portal-column-last' ],\n\t\t\ti, item, last;\n\n\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\titem = items[ i ];\n\t\t\titem.columnWidth = 1 / len;\n\t\t\tlast = ( i === len - 1 );\n\n\t\t\tif ( !i ) { // if (first)\n\t\t\t\tif ( last ) {\n\t\t\t\t\titem.addCls( firstAndLast );\n\t\t\t\t} else {\n\t\t\t\t\titem.addCls( 'x-portal-column-first' );\n\t\t\t\t\titem.removeCls( 'x-portal-column-last' );\n\t\t\t\t}\n\t\t\t} else if ( last ) {\n\t\t\t\titem.addCls( 'x-portal-column-last' );\n\t\t\t\titem.removeCls( 'x-portal-column-first' );\n\t\t\t} else {\n\t\t\t\titem.removeCls( firstAndLast );\n\t\t\t}\n\t\t}\n\n\t\treturn this.callParent( arguments );\n\t},\n\n\t// private\n\tinitEvents: function () {\n\t\tthis.callParent();\n\t\tthis.dd = Ext.create( 'BS.portal.PortalDropZone', this, this.dropConfig );\n\t},\n\n\t// private\n\tbeforeDestroy: function () {\n\t\tif ( this.dd ) {\n\t\t\tthis.dd.unreg();\n\t\t}\n\t\tthis.callParent();\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/portal/Portlet.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":6,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":6,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":27,"column":21,"nodeType":"Identifier","messageId":"undef","endLine":27,"endColumn":24},{"ruleId":"max-len","severity":1,"message":"This line has a length of 116. Maximum allowed is 100.","line":32,"column":1,"nodeType":"Program","messageId":"max","endLine":32,"endColumn":111},{"ruleId":"no-unused-vars","severity":1,"message":"'tool' is defined but never used.","line":48,"column":32,"nodeType":"Identifier","messageId":"unusedVar","endLine":48,"endColumn":36},{"ruleId":"no-unused-vars","severity":1,"message":"'event' is defined but never used.","line":48,"column":38,"nodeType":"Identifier","messageId":"unusedVar","endLine":48,"endColumn":43},{"ruleId":"no-unused-vars","severity":1,"message":"'eventOpts' is defined but never used.","line":48,"column":45,"nodeType":"Identifier","messageId":"unusedVar","endLine":48,"endColumn":54},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":50,"column":20,"nodeType":"Identifier","messageId":"undef","endLine":50,"endColumn":23}],"errorCount":0,"warningCount":7,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/**\n * @class BS.portal.Portlet\n * @extends Ext.panel.Panel\n * A {@link Ext.panel.Panel Panel} class that is managed by {@link BS.portal.PortalPanel}.\n */\nExt.define( 'BS.portal.Portlet', {\n\textend: 'Ext.panel.Panel',\n\talias: 'widget.portlet',\n\tlayout: 'fit',\n\tanchor: '100%',\n\tframe: true,\n\tclosable: true,\n\tcollapsible: true,\n\tanimCollapse: true,\n\tdraggable: {\n\t\tmoveOnDrag: false\n\t},\n\tcls: 'x-portlet',\n\ttitle: '',\n\n\t// Custom Settings\n\tportletConfigClass: 'BS.portal.PortletConfig',\n\tportletItemCount: 10,\n\tportletTimeSpan: 0,\n\n\tinitComponent: function () {\n\t\tthis.tlSettings = Ext.create( 'Ext.panel.Tool', {\n\t\t\ttype: 'gear'\n\t\t} );\n\t\tthis.tlSettings.on( 'click', this.onTlSettingsClick, this );\n\n\t\tthis.pcConfig = false; // The config component is instantiated ony if needed within the config tool callback\n\n\t\tthis.tools = this.tools || [];\n\t\tthis.tools.push( this.tlSettings );\n\n\t\tthis.afterInitComponent( arguments );\n\t\tthis.callParent( arguments );\n\t},\n\n\t// Allow subclasses to modify child component configs\n\tbeforeInitComponent: function () {\n\t},\n\t// Allow subclasses to change tools or contents\n\tafterInitComponent: function () {\n\t},\n\n\tonTlSettingsClick: function ( tool, event, eventOpts ) {\n\t\tif ( !this.pcConfig ) {\n\t\t\tthis.pcConfig = Ext.create( this.portletConfigClass, {\n\t\t\t\tportletToConfig: this\n\t\t\t} );\n\t\t}\n\t\tthis.pcConfig.show();\n\t},\n\n\t// Subclasses may add further config data to feed their child components\n\tgetPortletConfig: function () {\n\t\t// There is no method like Panel::getTitle()!\n\t\treturn {\n\t\t\ttitle: this.title,\n\t\t\theight: this.height || 0,\n\t\t\tportletItemCount: this.portletItemCount,\n\t\t\tportletTimeSpan: this.portletTimeSpan,\n\t\t\tcollapsed: this.getCollapsed()\n\t\t};\n\t},\n\n\t// Subclasses can use this to refresh their content!\n\tsetPortletConfig: function ( oConfig ) {\n\t\tthis.setTitle( oConfig.title );\n\t\tthis.setHeight( oConfig.height );\n\t\tthis.portletItemCount = oConfig.portletItemCount;\n\t\tthis.portletTimeSpan = oConfig.portletTimeSpan;\n\t\tthis.fireEvent( 'configchange', this, oConfig );\n\t},\n\t// Override Panel's default doClose to provide a custom fade out effect\n\t// when a portlet is removed from the portal\n\tdoClose: function () {\n\t\tif ( !this.closing ) {\n\t\t\tthis.closing = true;\n\t\t\tthis.el.animate( {\n\t\t\t\topacity: 0,\n\t\t\t\tcallback: function () {\n\t\t\t\t\tvar closeAction = this.closeAction;\n\t\t\t\t\tthis.closing = false;\n\t\t\t\t\tthis.fireEvent( 'close', this );\n\t\t\t\t\tthis[ closeAction ]();\n\t\t\t\t\tif ( closeAction === 'hide' ) {\n\t\t\t\t\t\tthis.el.setOpacity( 1 );\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tscope: this\n\t\t\t} );\n\t\t}\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/portal/PortletConfig.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":14,"column":18,"nodeType":"Identifier","messageId":"undef","endLine":14,"endColumn":21},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":18,"column":19,"nodeType":"Identifier","messageId":"undef","endLine":18,"endColumn":22},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":23,"column":18,"nodeType":"Identifier","messageId":"undef","endLine":23,"endColumn":21},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":28,"column":18,"nodeType":"Identifier","messageId":"undef","endLine":28,"endColumn":21},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":36,"column":21,"nodeType":"Identifier","messageId":"undef","endLine":36,"endColumn":24}],"errorCount":0,"warningCount":6,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.portal.PortletConfig', {\n\textend: 'BS.Window',\n\tmodal: true,\n\tdefaults: {\n\t\tlabelAlign: 'right'\n\t},\n\n\t// Custom Settings\n\tportletToConfig: null,\n\tshowItemCount: false,\n\tshowTimeSpan: false,\n\n\tafterInitComponent: function () {\n\t\tthis.tfTitle = Ext.create( 'Ext.form.TextField', {\n\t\t\tfieldLabel: mw.message( 'bs-extjs-portal-title' ).plain(),\n\t\t\tlabelAlign: 'right'\n\t\t} );\n\t\tthis.sfHeight = Ext.create( 'Ext.form.field.Number', {\n\t\t\tfieldLabel: mw.message( 'bs-extjs-portal-height' ).plain(),\n\t\t\tlabelAlign: 'right',\n\t\t\tstep: 10\n\t\t} );\n\t\tthis.sfCount = Ext.create( 'Ext.form.field.Number', {\n\t\t\tfieldLabel: mw.message( 'bs-extjs-portal-count' ).plain(),\n\t\t\tlabelAlign: 'right',\n\t\t\tstep: 10\n\t\t} );\n\t\tthis.strTime = Ext.create( 'Ext.data.Store', {\n\t\t\tfields: [ 'time', 'label' ],\n\t\t\tdata: [\n\t\t\t\t{ time: 7, label: mw.message( 'bs-extjs-portal-timespan-week' ).plain() },\n\t\t\t\t{ time: 30, label: mw.message( 'bs-extjs-portal-timespan-month' ).plain() },\n\t\t\t\t{ time: 0, label: mw.message( 'bs-extjs-portal-timespan-alltime' ).plain() }\n\t\t\t]\n\t\t} );\n\t\tthis.cbTimeSpan = Ext.create( 'Ext.form.ComboBox', {\n\t\t\tfieldLabel: mw.message( 'bs-extjs-portal-timespan' ).plain(),\n\t\t\tlabelAlign: 'right',\n\t\t\tstore: this.strTime,\n\t\t\tqueryMode: 'local',\n\t\t\tdisplayField: 'label',\n\t\t\tvalueField: 'time'\n\t\t} );\n\n\t\tthis.items = this.items || [];\n\t\tif ( this.showItemCount ) {\n\t\t\tthis.items.unshift( this.sfCount );\n\t\t}\n\t\tif ( this.showTimeSpan ) {\n\t\t\tthis.items.unshift( this.cbTimeSpan );\n\t\t}\n\n\t\tthis.items.unshift( this.sfHeight );\n\t\tthis.items.unshift( this.tfTitle );\n\t},\n\n\tonBtnOKClick: function () {\n\t\tthis.portletToConfig.setPortletConfig(\n\t\t\tthis.getConfigControlValues()\n\t\t);\n\t\tthis.callParent( arguments );\n\t},\n\n\tshow: function () {\n\t\tthis.callParent( arguments );\n\n\t\tthis.setConfigControlValues(\n\t\t\tthis.portletToConfig.getPortletConfig()\n\t\t);\n\t},\n\n\t// Can be overriden by subclasses to allow additional config data\n\tsetConfigControlValues: function ( cfg ) {\n\t\tthis.setTitle( mw.message( 'bs-extjs-portal-config' ).plain() + ' ' + cfg.title );\n\t\tthis.tfTitle.setValue( cfg.title );\n\t\tthis.sfHeight.setValue( cfg.height );\n\t\tthis.sfCount.setValue( cfg.portletItemCount );\n\t\tthis.cbTimeSpan.setValue( cfg.portletTimeSpan );\n\t},\n\n\t// Can be overriden by subclasses to allow additional config data\n\tgetConfigControlValues: function () {\n\t\treturn {\n\t\t\ttitle: this.tfTitle.getValue(),\n\t\t\theight: this.sfHeight.getValue(),\n\t\t\tportletItemCount: this.sfCount.getValue(),\n\t\t\tportletTimeSpan: this.cbTimeSpan.getValue()\n\t\t};\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/store/ApiCategory.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4}],"errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.store.ApiCategory', {\n\textend: 'BS.store.BSApi',\n\tapiAction: 'bs-category-store',\n\tfields: [\n\t\t'cat_id',\n\t\t'cat_title',\n\t\t'text',\n\t\t'cat_pages',\n\t\t'cat_subcats',\n\t\t'cat_files',\n\t\t'prefixed_text'\n\t]\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/store/ApiGroup.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4}],"errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.store.ApiGroup', {\n\textend: 'BS.store.BSApi',\n\tapiAction: 'bs-group-store',\n\tfields: [\n\t\t'group_name',\n\t\t'additional_group',\n\t\t'displayname'\n\t]\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/store/ApiRecentChanges.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4}],"errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.store.ApiRecentChanges', {\n\textend: 'BS.store.BSApi',\n\tapiAction: 'bs-recentchanges-store',\n\tfields: [\n\t\t'user_name',\n\t\t'user_display_name',\n\t\t'user_link',\n\t\t'page_prefixedtext',\n\t\t'page_namespace',\n\t\t'page_link',\n\t\t'raw_timestamp',\n\t\t'timestamp',\n\t\t'comment_text',\n\t\t'source',\n\t\t'diff_url',\n\t\t'diff_link',\n\t\t'hist_url',\n\t\t'hist_link',\n\t\t'cur_id',\n\t\t'last_oldid',\n\t\t'this_oldid',\n\t\t'exists'\n\t]\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/store/ApiUser.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4}],"errorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.store.ApiUser', {\n\textend: 'BS.store.BSApi',\n\tapiAction: 'bs-user-store',\n\tfields: [\n\t\t'user_id',\n\t\t'user_name',\n\t\t'user_real_name',\n\t\t'user_registration',\n\t\t'user_editcount',\n\t\t'groups', 'enabled',\n\t\t'page_link',\n\t\t'display_name',\n\t\t'page_prefixed_text'\n\t]\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/store/BSApi.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":6,"column":9,"nodeType":"Identifier","messageId":"undef","endLine":6,"endColumn":12},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":12,"column":31,"nodeType":"Identifier","messageId":"undef","endLine":12,"endColumn":33},{"ruleId":"jsdoc/require-returns-check","severity":1,"message":"JSDoc @return declaration present but return expression not available in function.","line":31,"column":2,"nodeType":"Block","endLine":40,"endColumn":5},{"ruleId":"valid-jsdoc","severity":1,"message":"Missing JSDoc return type.","line":31,"column":2,"nodeType":"Block","messageId":"missingReturnType","endLine":40,"endColumn":5},{"ruleId":"jsdoc/no-undefined-types","severity":1,"message":"The type 'BS' is undefined.","line":35,"column":null,"nodeType":"Block","endLine":35,"endColumn":null},{"ruleId":"valid-jsdoc","severity":1,"message":"Missing JSDoc parameter description for 'sender'.","line":35,"column":5,"nodeType":"Block","messageId":"missingParamDesc","endLine":35,"endColumn":35},{"ruleId":"valid-jsdoc","severity":1,"message":"Missing JSDoc parameter description for 'records'.","line":36,"column":5,"nodeType":"Block","messageId":"missingParamDesc","endLine":36,"endColumn":38},{"ruleId":"jsdoc/no-undefined-types","severity":1,"message":"The type 'Ext' is undefined.","line":36,"column":null,"nodeType":"Block","endLine":36,"endColumn":null},{"ruleId":"valid-jsdoc","severity":1,"message":"Missing JSDoc parameter description for 'successful'.","line":37,"column":5,"nodeType":"Block","messageId":"missingParamDesc","endLine":37,"endColumn":32},{"ruleId":"valid-jsdoc","severity":1,"message":"Missing JSDoc parameter description for 'eOpts'.","line":38,"column":5,"nodeType":"Block","messageId":"missingParamDesc","endLine":38,"endColumn":26},{"ruleId":"jsdoc/require-returns-type","severity":1,"message":"Missing JSDoc @return type.","line":39,"column":null,"nodeType":"Block","endLine":39,"endColumn":null},{"ruleId":"no-unused-vars","severity":1,"message":"'successful' is defined but never used.","line":41,"column":49,"nodeType":"Identifier","messageId":"unusedVar","endLine":41,"endColumn":59},{"ruleId":"no-unused-vars","severity":1,"message":"'eOpts' is defined but never used.","line":41,"column":61,"nodeType":"Identifier","messageId":"unusedVar","endLine":41,"endColumn":66},{"ruleId":"max-len","severity":1,"message":"This line has a length of 108. Maximum allowed is 100.","line":53,"column":1,"nodeType":"Program","messageId":"max","endLine":53,"endColumn":103}],"errorCount":0,"warningCount":15,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.store.BSApi', {\n\textend: 'Ext.data.JsonStore',\n\tapiAction: null,\n\n\tconstructor: function ( cfg ) {\n\t\tcfg = Ext.merge( {\n\t\t\tproxy: {\n\t\t\t\ttype: 'ajax',\n\t\t\t\turl: mw.util.wikiScript( 'api' ),\n\t\t\t\textraParams: {\n\t\t\t\t\tformat: 'json',\n\t\t\t\t\tcontext: JSON.stringify( bs.util.getCAIContext() )\n\t\t\t\t},\n\t\t\t\treader: {\n\t\t\t\t\ttype: 'json',\n\t\t\t\t\trootProperty: 'results',\n\t\t\t\t\tidProperty: 'id',\n\t\t\t\t\ttotalProperty: 'total'\n\t\t\t\t},\n\t\t\t\ttimeout: 30 * 60 * 1000 // 30 minutes\n\t\t\t},\n\t\t\tautoLoad: true,\n\t\t\tremoteSort: true,\n\t\t\tremoteFilter: true\n\t\t}, cfg );\n\t\tcfg.proxy.extraParams.action = cfg.apiAction || this.apiAction;\n\t\tthis.callParent( [ cfg ] );\n\t\tthis.on( 'load', this.checkForEmptyPage, this );\n\t},\n\n\t/**\n\t * Checks whether the current page is empty and loads previous one if\n\t * possible\n\t *\n\t * @param {BS.store.BSApi} sender\n\t * @param {Ext.data.Model[]} records\n\t * @param {boolean} successful\n\t * @param {Object} eOpts\n\t * @return void\n\t */\n\tcheckForEmptyPage: function ( sender, records, successful, eOpts ) {\n\t\t/**\n\t\t * ExtJS Grid/PagingToolbar: a user is on the last page of results\n\t\t * (bigger than \"1\") and deletes all entries from it.\n\t\t * When the store reloads with the old page info and sees an empty\n\t\t * result set it thinks there are no further results to display, even\n\t\t * if the 'totalProperty' says there are more. It just displays\n\t\t * \"0 entries\" to the user, leaving him without the change to select\n\t\t * a previous page.\n\t\t * Therefore we check for these circumstances and select a previous\n\t\t * page if possible\n\t\t */\n\t\tif ( records && records.length === 0 && sender.getTotalCount() !== 0 && sender.currentPage !== 1 ) {\n\t\t\tsender.loadPage( sender.currentPage - 1 );\n\t\t}\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/store/LocalNamespaces.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":27,"column":3,"nodeType":"VariableDeclaration","messageId":"combine","endLine":27,"endColumn":71},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":27,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":27,"endColumn":71},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":28,"column":9,"nodeType":"VariableDeclaration","messageId":"combine","endLine":28,"endColumn":15},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":28,"column":9,"nodeType":"VariableDeclaration","messageId":"top","endLine":28,"endColumn":15},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":32,"column":4,"nodeType":"VariableDeclaration","messageId":"combine","endLine":32,"endColumn":23},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":32,"column":4,"nodeType":"VariableDeclaration","messageId":"top","endLine":32,"endColumn":23}],"errorCount":0,"warningCount":7,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.store.LocalNamespaces', {\n\textend: 'Ext.data.Store',\n\tfields: [ 'id', 'namespace' ],\n\tdata: [],\n\tautoLoad: false,\n\n\t// Custom settings\n\tincludeAll: false,\n\texcludeIds: [],\n\n\tconstructor: function ( config ) {\n\t\tthis.includeAll = config.includeAll || this.includeAll;\n\t\tthis.excludeIds = config.excludeIds || this.excludeIds;\n\t\tconfig.data = config.data || this.getLocalNamespaces();\n\t\tthis.callParent( [ config ] );\n\t},\n\tgetLocalNamespaces: function () {\n\t\tvar namespaces = [];\n\n\t\tif ( this.includeAll ) {\n\t\t\tnamespaces.push( {\n\t\t\t\tid: -99,\n\t\t\t\tnamespace: mw.message( 'bs-extjs-allns' ).plain()\n\t\t\t} );\n\t\t}\n\n\t\tvar aFormattedNamespaces = mw.config.get( 'wgFormattedNamespaces' );\n\t\tfor ( var id in aFormattedNamespaces ) {\n\t\t\tif ( this.excludeIds.indexOf( +id ) !== -1 ) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tvar namespace = {};\n\t\t\tnamespace.id = +id;\n\t\t\tif ( namespace.id === 0 ) {\n\t\t\t\tnamespace.namespace = mw.message( 'bs-extjs-mainns' ).plain();\n\t\t\t} else {\n\t\t\t\tnamespace.namespace = mw.config.get( 'wgFormattedNamespaces' )[ id ];\n\t\t\t}\n\n\t\t\tnamespaces.push( namespace );\n\t\t}\n\n\t\treturn namespaces;\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/tree/Categories.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":9,"column":20,"nodeType":"Identifier","messageId":"undef","endLine":9,"endColumn":23},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":12,"column":10,"nodeType":"Identifier","messageId":"undef","endLine":12,"endColumn":12}],"errorCount":0,"warningCount":3,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.tree.Categories', {\n\textend: 'Ext.tree.Panel',\n\trequires: [ 'BS.model.Category' ],\n\tuseArrows: true,\n\trootVisible: false,\n\tdisplayField: 'text',\n\n\tinitComponent: function () {\n\t\tthis.store = new Ext.data.TreeStore( {\n\t\t\tproxy: {\n\t\t\t\ttype: 'ajax',\n\t\t\t\turl: bs.api.makeUrl( 'bs-category-treestore' )\n\t\t\t},\n\t\t\tdefaultRootProperty: 'results',\n\t\t\troot: {\n\t\t\t\ttext: 'Categories',\n\t\t\t\tid: 'src',\n\t\t\t\texpanded: true\n\t\t\t},\n\t\t\tmodel: 'BS.model.Category'\n\t\t} );\n\n\t\tthis.callParent( arguments );\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/BS/tree/WikiSubPages.js","messages":[{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":11,"column":20,"nodeType":"Identifier","messageId":"undef","endLine":11,"endColumn":23}],"errorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":0,"source":"Ext.define( 'BS.tree.WikiSubPages', {\n\textend: 'Ext.tree.Panel',\n\trequires: [ 'BS.model.Title' ],\n\trootVisible: false,\n\tuseArrows: true,\n\n\ttreeRootPath: '',\n\trenderLinks: false,\n\n\tinitComponent: function () {\n\t\tthis.store = new Ext.data.TreeStore( {\n\t\t\tproxy: {\n\t\t\t\ttype: 'ajax',\n\t\t\t\turl: mw.util.wikiScript( 'api' ),\n\t\t\t\textraParams: {\n\t\t\t\t\tformat: 'json',\n\t\t\t\t\taction: 'bs-wikisubpage-treestore'\n\t\t\t\t}\n\t\t\t},\n\t\t\troot: {\n\t\t\t\ttext: 'root',\n\t\t\t\tid: this.treeRootPath,\n\t\t\t\texpanded: true\n\t\t\t},\n\t\t\tfolderSort: true/* ,\n\t\t\tmodel: 'BS.model.Title' */\n\t\t} );\n\n\t\tif ( this.renderLinks ) {\n\t\t\tthis.columns = [ {\n\t\t\t\txtype: 'treecolumn',\n\t\t\t\tflex: 1,\n\t\t\t\tdataIndex: 'page_link'\n\t\t\t} ];\n\t\t}\n\n\t\tthis.callParent( arguments );\n\t}\n} );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/bluespice.extjs.js","messages":[{"ruleId":"no-unused-vars","severity":1,"message":"'$' is defined but never used.","line":1,"column":22,"nodeType":"Identifier","messageId":"unusedVar","endLine":1,"endColumn":23},{"ruleId":"no-unused-vars","severity":1,"message":"'d' is defined but never used.","line":1,"column":25,"nodeType":"Identifier","messageId":"unusedVar","endLine":1,"endColumn":26},{"ruleId":"no-unused-vars","severity":1,"message":"'undefined' is defined but never used.","line":1,"column":28,"nodeType":"Identifier","messageId":"unusedVar","endLine":1,"endColumn":37},{"ruleId":"no-shadow-restricted-names","severity":1,"message":"Shadowing of global property 'undefined'.","line":1,"column":28,"nodeType":"Identifier","messageId":"shadowingRestrictedName","endLine":1,"endColumn":37},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":4,"column":2,"nodeType":"Identifier","messageId":"undef","endLine":4,"endColumn":5},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":5,"column":2,"nodeType":"Identifier","messageId":"undef","endLine":5,"endColumn":5},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":9,"column":2,"nodeType":"Identifier","messageId":"undef","endLine":9,"endColumn":5},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":10,"column":2,"nodeType":"VariableDeclaration","messageId":"combine","endLine":11,"endColumn":40},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":10,"column":2,"nodeType":"VariableDeclaration","messageId":"top","endLine":11,"endColumn":40},{"ruleId":"no-mixed-spaces-and-tabs","severity":1,"message":"Mixed spaces and tabs.","line":11,"column":1,"nodeType":"Program","messageId":"mixedSpacesAndTabs","endLine":11,"endColumn":3},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":12,"column":8,"nodeType":"VariableDeclaration","messageId":"top","endLine":12,"endColumn":19},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":12,"column":8,"nodeType":"VariableDeclaration","messageId":"combine","endLine":12,"endColumn":19},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":15,"column":3,"nodeType":"Identifier","messageId":"undef","endLine":15,"endColumn":6},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":16,"column":3,"nodeType":"Identifier","messageId":"undef","endLine":16,"endColumn":6},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":20,"column":2,"nodeType":"Identifier","messageId":"undef","endLine":20,"endColumn":5},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":23,"column":2,"nodeType":"Identifier","messageId":"undef","endLine":23,"endColumn":5},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":23,"column":37,"nodeType":"Identifier","messageId":"undef","endLine":23,"endColumn":40},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":25,"column":2,"nodeType":"Identifier","messageId":"undef","endLine":25,"endColumn":5},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":25,"column":16,"nodeType":"Identifier","messageId":"undef","endLine":25,"endColumn":19},{"ruleId":"no-underscore-dangle","severity":1,"message":"Unexpected dangling '_' in '_lastRequest'.","line":27,"column":4,"nodeType":"MemberExpression","messageId":"unexpectedUnderscore","endLine":27,"endColumn":21},{"ruleId":"no-underscore-dangle","severity":1,"message":"Unexpected dangling '_' in '_lastRequest'.","line":28,"column":11,"nodeType":"MemberExpression","messageId":"unexpectedUnderscore","endLine":28,"endColumn":28},{"ruleId":"no-underscore-dangle","severity":1,"message":"Unexpected dangling '_' in '_lastRequest'.","line":32,"column":11,"nodeType":"MemberExpression","messageId":"unexpectedUnderscore","endLine":32,"endColumn":28},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":38,"column":2,"nodeType":"Identifier","messageId":"undef","endLine":38,"endColumn":5},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":38,"column":16,"nodeType":"Identifier","messageId":"undef","endLine":38,"endColumn":19},{"ruleId":"no-underscore-dangle","severity":1,"message":"Unexpected dangling '_' in '_newLocalNamespacesStore'.","line":46,"column":2,"nodeType":"FunctionDeclaration","messageId":"unexpectedUnderscore","endLine":48,"endColumn":3},{"ruleId":"no-undef","severity":1,"message":"'Ext' is not defined.","line":47,"column":10,"nodeType":"Identifier","messageId":"undef","endLine":47,"endColumn":13},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":50,"column":2,"nodeType":"VariableDeclaration","messageId":"combine","endLine":52,"endColumn":4},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":50,"column":2,"nodeType":"VariableDeclaration","messageId":"top","endLine":52,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'mediaWiki' is not defined.","line":55,"column":4,"nodeType":"Identifier","messageId":"undef","endLine":55,"endColumn":13},{"ruleId":"no-undef","severity":1,"message":"'blueSpice' is not defined.","line":55,"column":15,"nodeType":"Identifier","messageId":"undef","endLine":55,"endColumn":24},{"ruleId":"no-undef","severity":1,"message":"'jQuery' is not defined.","line":55,"column":26,"nodeType":"Identifier","messageId":"undef","endLine":55,"endColumn":32}],"errorCount":0,"warningCount":31,"fixableErrorCount":0,"fixableWarningCount":0,"source":"( function ( mw, bs, $, d, undefined ) {\n\tvar basePath = mw.config.get( 'wgExtensionAssetsPath' ) + '/BlueSpiceFoundation/resources/bluespice.extjs';\n\n\tExt.BLANK_IMAGE_URL = mw.config.get( 'wgScriptPath' ) + '/extensions/BlueSpiceFoundation/resources/bluespice.extjs/images/s.gif';\n\tExt.Loader.setConfig( {\n\t\tenabled: true,\n\t\tdisableCaching: mw.config.get( 'debug' )\n\t} );\n\tExt.Loader.setPath( 'BS', basePath + '/BS' );\n\tvar bsExtensionManagerAssetsPaths = mw.config.get( 'bsExtensionManagerAssetsPaths' ),\n\t extNamespace, unprefixedExtNamespace;\n\tfor ( var extName in bsExtensionManagerAssetsPaths ) {\n\t\textNamespace = 'BS.' + extName;\n\t\tunprefixedExtNamespace = 'BS.' + extName.replace( /^BlueSpice/g, '' );\n\t\tExt.Loader.setPath( extNamespace, bsExtensionManagerAssetsPaths[ extName ] + '/resources/' + extNamespace );\n\t\tExt.Loader.setPath( unprefixedExtNamespace, bsExtensionManagerAssetsPaths[ extName ] + '/resources/' + unprefixedExtNamespace );\n\t}\n\n\t// This allows us to place elements with special data attributes\n\tExt.QuickTips.init();\n\n\t// Allows to have stateful ExtJS components\n\tExt.state.Manager.setProvider( new Ext.state.LocalStorageProvider() );\n\n\tExt.override( Ext.data.proxy.Server, {\n\t\tbuildRequest: function () {\n\t\t\tthis._lastRequest = this.callParent( arguments );\n\t\t\treturn this._lastRequest;\n\t\t},\n\t\t_lastRequest: null,\n\t\tgetLastRequest: function () {\n\t\t\treturn this._lastRequest;\n\t\t}\n\t} );\n\n\t// CRUDGridPanel defines flex:1 for all columns.\n\t// no need for flex:1 for the selModel Checkbox\n\tExt.override( Ext.selection.CheckboxModel, {\n\t\tgetHeaderConfig: function () {\n\t\t\tvar obj = this.callParent( arguments );\n\t\t\tobj.flex = 0;\n\t\t\treturn obj;\n\t\t}\n\t} );\n\n\tfunction _newLocalNamespacesStore( cfg ) {\n\t\treturn Ext.create( 'BS.store.LocalNamespaces', cfg );\n\t}\n\n\tvar extjs = {\n\t\tnewLocalNamespacesStore: _newLocalNamespacesStore\n\t};\n\n\tbs.extjs = extjs;\n}( mediaWiki, blueSpice, jQuery, document ) );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.extjs/bluespice.extjs.loadPlaceholder.js","messages":[{"ruleId":"no-unused-vars","severity":1,"message":"'d' is defined but never used.","line":1,"column":25,"nodeType":"Identifier","messageId":"unusedVar","endLine":1,"endColumn":26},{"ruleId":"no-shadow-restricted-names","severity":1,"message":"Shadowing of global property 'undefined'.","line":1,"column":28,"nodeType":"Identifier","messageId":"shadowingRestrictedName","endLine":1,"endColumn":37},{"ruleId":"no-unused-vars","severity":1,"message":"'undefined' is defined but never used.","line":1,"column":28,"nodeType":"Identifier","messageId":"unusedVar","endLine":1,"endColumn":37},{"ruleId":"no-unused-vars","severity":1,"message":"'observer' is defined but never used.","line":24,"column":39,"nodeType":"Identifier","messageId":"unusedVar","endLine":24,"endColumn":47},{"ruleId":"no-shadow","severity":1,"message":"'observer' is already declared in the upper scope on line 4 column 31.","line":24,"column":39,"nodeType":"Identifier","messageId":"noShadow","endLine":24,"endColumn":47},{"ruleId":"compat/compat","severity":1,"message":"MutationObserver is not supported in Safari 5.1, iOS Safari 6.0-6.1","line":31,"column":14,"nodeType":"NewExpression","endLine":31,"endColumn":46},{"ruleId":"no-undef","severity":1,"message":"'mediaWiki' is not defined.","line":34,"column":4,"nodeType":"Identifier","messageId":"undef","endLine":34,"endColumn":13},{"ruleId":"no-undef","severity":1,"message":"'blueSpice' is not defined.","line":34,"column":15,"nodeType":"Identifier","messageId":"undef","endLine":34,"endColumn":24},{"ruleId":"no-undef","severity":1,"message":"'jQuery' is not defined.","line":34,"column":26,"nodeType":"Identifier","messageId":"undef","endLine":34,"endColumn":32}],"errorCount":0,"warningCount":9,"fixableErrorCount":0,"fixableWarningCount":0,"source":"( function ( mw, bs, $, d, undefined ) {\n\t// DOM ready\n\t$( function () {\n\t\tvar $cnt, config, callback, observer, i;\n\n\t\t$cnt = $( '.extjs-load-placeholder-cnt' );\n\n\t\t// Detect rendering of ExtJS component in the container\n\t\t// this is done in effort to make loading indicator automatic\n\t\t// without the need for each manager extension to call popPending()\n\t\tif ( $cnt.length === 0 ) {\n\t\t\treturn;\n\t\t}\n\t\tif ( $cnt.find( '.x-panel' ).length > 0 ) {\n\t\t\t// ExtJS component already rendered, stop loading right away\n\t\t\t// NOTE: This is a generic implementation, if extension is using some\n\t\t\t// non-standard components, its responsible for popping the loading indicator\n\t\t\treturn $cnt.find( '.placeholder-loader' ).remove();\n\t\t}\n\t\t// ExtJS component not rendered yet - watch for mutations\n\t\tconfig = {\n\t\t\tchildList: true\n\t\t};\n\t\tcallback = function ( mutationList, observer ) {\n\t\t\tfor ( i = 0; i < mutationList.length; i++ ) {\n\t\t\t\tif ( mutationList[ i ].type === 'childList' ) {\n\t\t\t\t\t$cnt.find( '.placeholder-loader' ).remove();\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t\tobserver = new MutationObserver( callback );\n\t\tobserver.observe( $cnt[ 0 ], config );\n\t} );\n}( mediaWiki, blueSpice, jQuery, document ) );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.oojs/bluespice.ui.js","messages":[{"ruleId":"no-implicit-globals","severity":1,"message":"Global variable leak, declare the variable if it is intended to be local.","line":1,"column":1,"nodeType":"AssignmentExpression","messageId":"globalVariableLeak","endLine":1,"endColumn":14},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":1,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":3},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":1,"column":6,"nodeType":"Identifier","messageId":"undef","endLine":1,"endColumn":8},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":2,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":2,"endColumn":3},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":2,"column":9,"nodeType":"Identifier","messageId":"undef","endLine":2,"endColumn":11},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":3,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":3,"endColumn":3},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":3,"column":15,"nodeType":"Identifier","messageId":"undef","endLine":3,"endColumn":17},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":4,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":4,"endColumn":3},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":4,"column":23,"nodeType":"Identifier","messageId":"undef","endLine":4,"endColumn":25},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":5,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":5,"endColumn":3},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":5,"column":16,"nodeType":"Identifier","messageId":"undef","endLine":5,"endColumn":18},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":6,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":6,"endColumn":3},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":6,"column":21,"nodeType":"Identifier","messageId":"undef","endLine":6,"endColumn":23}],"errorCount":0,"warningCount":13,"fixableErrorCount":0,"fixableWarningCount":0,"source":"bs = bs || {};\nbs.ui = bs.ui || {};\nbs.ui.mixin = bs.ui.mixin || {};\nbs.ui.mixin.element = bs.ui.mixin.element || {};\nbs.ui.widget = bs.ui.widget || {};\nbs.ui.widget.util = bs.ui.widget.util || {};\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.oojs/ui/widget/JsonArrayInputWidget.js","messages":[{"ruleId":"no-unused-vars","severity":1,"message":"'$' is defined but never used.","line":1,"column":22,"nodeType":"Identifier","messageId":"unusedVar","endLine":1,"endColumn":23},{"ruleId":"no-unused-vars","severity":1,"message":"'document' is defined but never used.","line":1,"column":25,"nodeType":"Identifier","messageId":"unusedVar","endLine":1,"endColumn":33},{"ruleId":"no-undef","severity":1,"message":"'mediaWiki' is not defined.","line":43,"column":4,"nodeType":"Identifier","messageId":"undef","endLine":43,"endColumn":13},{"ruleId":"no-undef","severity":1,"message":"'blueSpice' is not defined.","line":43,"column":15,"nodeType":"Identifier","messageId":"undef","endLine":43,"endColumn":24},{"ruleId":"no-undef","severity":1,"message":"'jQuery' is not defined.","line":43,"column":26,"nodeType":"Identifier","messageId":"undef","endLine":43,"endColumn":32}],"errorCount":0,"warningCount":5,"fixableErrorCount":0,"fixableWarningCount":0,"source":"( function ( mw, bs, $, document ) {\n\tbs.ui.widget.JsonArrayInputWidget = function ( cfg ) {\n\t\tthis.type = cfg.type || 'text';\n\t\tbs.ui.widget.JsonArrayInputWidget.parent.call( this, cfg );\n\n\t\tthis.$input.remove();\n\n\t\tif ( this.type === 'multiline' ) {\n\t\t\tthis.widget = new OO.ui.MultilineTextInputWidget( cfg );\n\t\t} else {\n\t\t\tthis.widget = new OO.ui.TextInputWidget( cfg );\n\t\t}\n\n\t\tthis.$element.addClass( 'bs-ooui-widget-jsonArrayInputWidget' );\n\t\tthis.$element.append( this.widget.$element );\n\t};\n\n\tOO.inheritClass( bs.ui.widget.JsonArrayInputWidget, OO.ui.InputWidget );\n\n\tbs.ui.widget.JsonArrayInputWidget.prototype.getValue = function () {\n\t\tvar val = this.widget.getValue();\n\t\tif ( !val ) {\n\t\t\tval = {};\n\t\t\treturn val;\n\t\t}\n\t\ttry {\n\t\t\tval = JSON.parse( val );\n\t\t} catch ( e ) {\n\t\t\tval = {};\n\t\t}\n\n\t\treturn val;\n\t};\n\n\tbs.ui.widget.JsonArrayInputWidget.prototype.setValue = function ( val ) {\n\t\tif ( !val ) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis.widget.setValue( JSON.stringify( val ) );\n\t};\n\n}( mediaWiki, blueSpice, jQuery, undefined ) );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.oojs/ui/widget/KeyObjectInputWidget.js","messages":[{"ruleId":"no-unused-vars","severity":1,"message":"'$' is defined but never used.","line":1,"column":22,"nodeType":"Identifier","messageId":"unusedVar","endLine":1,"endColumn":23},{"ruleId":"no-unused-vars","severity":1,"message":"'document' is defined but never used.","line":1,"column":25,"nodeType":"Identifier","messageId":"unusedVar","endLine":1,"endColumn":33},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":13,"column":9,"nodeType":"VariableDeclaration","messageId":"combine","endLine":13,"endColumn":16},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":13,"column":9,"nodeType":"VariableDeclaration","messageId":"top","endLine":13,"endColumn":16},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":14,"column":4,"nodeType":"VariableDeclaration","messageId":"combine","endLine":17,"endColumn":41},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":14,"column":4,"nodeType":"VariableDeclaration","messageId":"top","endLine":17,"endColumn":41},{"ruleId":"no-unused-vars","severity":1,"message":"'cfg' is defined but never used.","line":26,"column":86,"nodeType":"Identifier","messageId":"unusedVar","endLine":26,"endColumn":89},{"ruleId":"no-undef","severity":1,"message":"'mediaWiki' is not defined.","line":60,"column":4,"nodeType":"Identifier","messageId":"undef","endLine":60,"endColumn":13},{"ruleId":"no-undef","severity":1,"message":"'blueSpice' is not defined.","line":60,"column":15,"nodeType":"Identifier","messageId":"undef","endLine":60,"endColumn":24},{"ruleId":"no-undef","severity":1,"message":"'jQuery' is not defined.","line":60,"column":26,"nodeType":"Identifier","messageId":"undef","endLine":60,"endColumn":32}],"errorCount":0,"warningCount":10,"fixableErrorCount":0,"fixableWarningCount":0,"source":"( function ( mw, bs, $, document ) {\n\tbs.ui.widget.KeyObjectInputWidget = function ( cfg ) {\n\t\tthis.objectConfiguration = cfg.objectConfiguration || {};\n\t\tbs.ui.widget.KeyObjectInputWidget.parent.call( this, cfg );\n\n\t\tthis.$element.addClass( 'bs-ooui-widget-keyObjectInputWidget' );\n\t};\n\n\tOO.inheritClass( bs.ui.widget.KeyObjectInputWidget, bs.ui.widget.KeyValueInputWidget );\n\n\tbs.ui.widget.KeyObjectInputWidget.prototype.getValue = function () {\n\t\tvar value = {};\n\t\tfor ( var idx in this.addedWidgets ) {\n\t\t\tvar keyWidget = this.addedWidgets[ idx ].keyWidget,\n\t\t\t\tvalueWidget = this.addedWidgets[ idx ].valueWidget,\n\t\t\t\tkeyValue = keyWidget.getValue(),\n\t\t\t\tvalueValue = valueWidget.getValue();\n\n\t\t\tvalueValue = valueValue || keyValue;\n\t\t\tvalue[ keyValue ] = valueValue;\n\t\t}\n\n\t\treturn value;\n\t};\n\n\tbs.ui.widget.KeyObjectInputWidget.prototype.getValueLayout = function ( valueInput, cfg ) {\n\t\treturn new OO.ui.FieldsetLayout( {\n\t\t\titems: valueInput.getLayouts(),\n\t\t\tclasses: [ 'keyObjectInputWidget-value-layout' ]\n\t\t} );\n\t};\n\n\tbs.ui.widget.KeyObjectInputWidget.prototype.getDeleteButtonWidget = function () {\n\t\treturn new OO.ui.ButtonWidget( {\n\t\t\tframed: false,\n\t\t\ticon: 'close',\n\t\t\tclasses: [ 'bs-ooui-widget-keyObjectInputWidget-remove-btn' ]\n\t\t} );\n\t};\n\n\tbs.ui.widget.KeyObjectInputWidget.prototype.getAddButtonWidget = function () {\n\t\treturn new OO.ui.ButtonWidget( {\n\t\t\tframed: false,\n\t\t\ticon: 'check',\n\t\t\tflags: [\n\t\t\t\t'progressive'\n\t\t\t],\n\t\t\tlabel: mw.message( 'bs-ooui-key-value-input-widget-add-button-label' ).plain(),\n\t\t\tclasses: [ 'keyObjectInputWidget-addbutton' ]\n\t\t} );\n\t};\n\n\tbs.ui.widget.KeyObjectInputWidget.prototype.getValueInput = function ( cfg ) {\n\t\treturn new bs.ui.widget.ObjectInputWidget( {\n\t\t\tvalues: cfg.valueValue,\n\t\t\tinputs: this.objectConfiguration,\n\t\t\tclasses: [ 'bs-ooui-widget-keyValueInputWidget-value-input' ]\n\t\t} );\n\t};\n}( mediaWiki, blueSpice, jQuery, undefined ) );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.oojs/ui/widget/KeyValueInputWidget.js","messages":[{"ruleId":"no-unused-vars","severity":1,"message":"'document' is defined but never used.","line":1,"column":25,"nodeType":"Identifier","messageId":"unusedVar","endLine":1,"endColumn":33},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":47,"column":9,"nodeType":"VariableDeclaration","messageId":"combine","endLine":47,"endColumn":16},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":47,"column":9,"nodeType":"VariableDeclaration","messageId":"top","endLine":47,"endColumn":16},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":48,"column":4,"nodeType":"VariableDeclaration","messageId":"top","endLine":52,"endColumn":40},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":48,"column":4,"nodeType":"VariableDeclaration","messageId":"combine","endLine":52,"endColumn":40},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":59,"column":4,"nodeType":"VariableDeclaration","messageId":"top","endLine":59,"endColumn":52},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":59,"column":4,"nodeType":"VariableDeclaration","messageId":"combine","endLine":59,"endColumn":52},{"ruleId":"max-len","severity":1,"message":"This line has a length of 101. Maximum allowed is 100.","line":81,"column":1,"nodeType":"Program","messageId":"max","endLine":81,"endColumn":99},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":101,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":102,"endColumn":24},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":104,"column":9,"nodeType":"VariableDeclaration","messageId":"combine","endLine":104,"endColumn":18},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":104,"column":9,"nodeType":"VariableDeclaration","messageId":"top","endLine":104,"endColumn":18},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":146,"column":9,"nodeType":"VariableDeclaration","messageId":"combine","endLine":146,"endColumn":18},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":146,"column":9,"nodeType":"VariableDeclaration","messageId":"top","endLine":146,"endColumn":18},{"ruleId":"no-unused-vars","severity":1,"message":"'valid' is defined but never used.","line":160,"column":74,"nodeType":"Identifier","messageId":"unusedVar","endLine":160,"endColumn":79},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":169,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":169,"endColumn":32},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":228,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":228,"endColumn":53},{"ruleId":"no-unused-vars","severity":1,"message":"'e' is defined but never used.","line":249,"column":69,"nodeType":"Identifier","messageId":"unusedVar","endLine":249,"endColumn":70},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":253,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":254,"endColumn":54},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":259,"column":4,"nodeType":"VariableDeclaration","messageId":"top","endLine":265,"endColumn":44},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":304,"column":9,"nodeType":"VariableDeclaration","messageId":"top","endLine":304,"endColumn":16},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":304,"column":9,"nodeType":"VariableDeclaration","messageId":"combine","endLine":304,"endColumn":16},{"ruleId":"no-prototype-builtins","severity":1,"message":"Do not access Object.prototype method 'hasOwnProperty' from target object.","line":305,"column":28,"nodeType":"CallExpression","messageId":"prototypeBuildIn","endLine":305,"endColumn":42},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":308,"column":4,"nodeType":"VariableDeclaration","messageId":"top","endLine":311,"endColumn":41},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":308,"column":4,"nodeType":"VariableDeclaration","messageId":"combine","endLine":311,"endColumn":41},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":323,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":323,"endColumn":38},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":336,"column":9,"nodeType":"VariableDeclaration","messageId":"top","endLine":336,"endColumn":16},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":337,"column":4,"nodeType":"VariableDeclaration","messageId":"combine","endLine":337,"endColumn":43},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":337,"column":4,"nodeType":"VariableDeclaration","messageId":"top","endLine":337,"endColumn":43},{"ruleId":"no-undef","severity":1,"message":"'mediaWiki' is not defined.","line":346,"column":4,"nodeType":"Identifier","messageId":"undef","endLine":346,"endColumn":13},{"ruleId":"no-undef","severity":1,"message":"'blueSpice' is not defined.","line":346,"column":15,"nodeType":"Identifier","messageId":"undef","endLine":346,"endColumn":24},{"ruleId":"no-undef","severity":1,"message":"'jQuery' is not defined.","line":346,"column":26,"nodeType":"Identifier","messageId":"undef","endLine":346,"endColumn":32}],"errorCount":0,"warningCount":31,"fixableErrorCount":0,"fixableWarningCount":0,"source":"( function ( mw, bs, $, document ) {\n\tbs.ui.widget.KeyValueInputWidget = function ( cfg ) {\n\t\tbs.ui.widget.KeyValueInputWidget.parent.call( this, cfg );\n\n\t\tOO.EventEmitter.call( this );\n\n\t\tthis.labelOnlyOnFirst = cfg.labelOnlyOnFirst || true;\n\t\tthis.valueRequired = cfg.valueRequired || false;\n\t\tthis.keyLabel = cfg.keyLabel || mw.message( 'bs-ooui-key-value-input-widget-key-label' ).plain();\n\t\tthis.valueLabel = cfg.valueLabel || mw.message( 'bs-ooui-key-value-input-widget-value-label' ).plain();\n\t\tthis.addNewFormLabel = cfg.addNewFormLabel || mw.message( 'bs-ooui-key-value-input-widget-add-form-label' ).plain();\n\t\tthis.keyReadOnly = cfg.keyReadOnly || false;\n\t\tthis.allowAdditions = cfg.allowAdditions || false;\n\t\tthis.$separator = $( '<div>' ).addClass( 'bs-ooui-keyValueInputWidget-separator' );\n\n\t\tthis.$valueContainer = $( '<div>' ).addClass( 'bs-ooui-keyValueInputWidget-value-container' );\n\t\tthis.$element.addClass( 'bs-ooui-widget-keyValueInputWidget' );\n\n\t\tthis.addedWidgets = [];\n\t\tif ( cfg.value && !$.isEmptyObject( cfg.value ) ) {\n\t\t\tthis.setValue( cfg.value );\n\t\t} else {\n\t\t\tthis.setNoValueMessage();\n\t\t}\n\n\t\tthis.$element.append( this.$valueContainer );\n\n\t\tif ( this.allowAdditions ) {\n\t\t\tthis.addNewValueForm();\n\t\t}\n\t};\n\n\tOO.inheritClass( bs.ui.widget.KeyValueInputWidget, OO.ui.Widget );\n\tOO.mixinClass( bs.ui.widget.KeyValueInputWidget, OO.EventEmitter );\n\n\tbs.ui.widget.KeyValueInputWidget.prototype.setNoValueMessage = function () {\n\t\tthis.$valueContainer.append(\n\t\t\tnew OO.ui.LabelWidget( {\n\t\t\t\tlabel: mw.message( 'bs-ooui-key-value-input-widget-no-values-label' ).plain(),\n\t\t\t\tclasses: [ 'bs-ooui-keyValueInputWidget-no-value-label' ]\n\t\t\t} ).$element\n\t\t);\n\t};\n\n\tbs.ui.widget.KeyValueInputWidget.prototype.setValue = function ( values ) {\n\t\tvar first = true;\n\t\tfor ( var key in values ) {\n\t\t\tvar value = values[ key ],\n\t\t\t\tcfg = $.extend( {\n\t\t\t\t\tkeyValue: key,\n\t\t\t\t\tvalueValue: value\n\t\t\t\t}, this.getDefaultLayoutConfig() );\n\t\t\tif ( first ) {\n\t\t\t\tcfg.keyLabel = this.keyLabel;\n\t\t\t\tcfg.valueLabel = this.valueLabel;\n\t\t\t\tcfg.align = 'top';\n\t\t\t}\n\n\t\t\tvar deleteButton = this.getDeleteButtonWidget();\n\t\t\tcfg.deleteWidget = deleteButton;\n\n\t\t\tthis.addEntry( this.getLayouts( cfg ), deleteButton.$element );\n\t\t\tfirst = false;\n\t\t}\n\t};\n\n\tbs.ui.widget.KeyValueInputWidget.prototype.getDefaultLayoutConfig = function () {\n\t\tvar cfg = {\n\t\t\tkeyReadOnly: this.keyReadOnly,\n\t\t\taddToWidgets: true,\n\t\t\tvalueRequired: this.valueRequired\n\t\t};\n\t\tif ( this.labelOnlyOnFirst === false ) {\n\t\t\tcfg.keyLabel = this.keyLabel;\n\t\t\tcfg.valueLabel = this.valueLabel;\n\t\t\tcfg.align = 'top';\n\t\t}\n\t\treturn cfg;\n\t};\n\n\tbs.ui.widget.KeyValueInputWidget.prototype.addEntry = function ( layouts, deleteWidgetElement ) {\n\t\tvar $blockWrapper = $( '<div>' ).addClass( 'instance-block' );\n\t\tthis.$valueContainer.append( $blockWrapper.append( layouts ) );\n\t\tif ( deleteWidgetElement ) {\n\t\t\t$blockWrapper.append( deleteWidgetElement );\n\t\t}\n\t\tthis.$valueContainer.append( this.$separator.clone() );\n\t};\n\n\tbs.ui.widget.KeyValueInputWidget.prototype.getDeleteButtonWidget = function () {\n\t\tvar deleteButton = new OO.ui.ButtonWidget( {\n\t\t\tframed: false,\n\t\t\tindicator: 'clear'\n\t\t} );\n\t\tdeleteButton.$element.addClass( 'bs-ooui-widget-keyValueInputWidget-remove-btn' );\n\t\treturn deleteButton;\n\t};\n\n\tbs.ui.widget.KeyValueInputWidget.prototype.getLayouts = function ( cfg, form ) {\n\t\tform = form || {};\n\t\tvar layouts = form.layouts || this.getForm( cfg ).layouts,\n\t\t\tlayoutElements = [];\n\n\t\tfor ( var i = 0; i < layouts.length; i++ ) {\n\t\t\tlayoutElements.push( layouts[ i ].$element );\n\t\t}\n\n\t\treturn layoutElements;\n\t};\n\n\tbs.ui.widget.KeyValueInputWidget.prototype.getForm = function ( cfg ) {\n\t\tvar keyInput = this.getKeyInput( cfg ),\n\t\t\tvalueInput = this.getValueInput( cfg ),\n\t\t\tkeyLayout = this.getKeyLayout( keyInput, cfg ),\n\t\t\tvalueLayout = this.getValueLayout( valueInput, cfg );\n\n\t\tif ( cfg.addToWidgets ) {\n\t\t\tthis.addedWidgets.push( {\n\t\t\t\tkeyWidget: keyInput,\n\t\t\t\tvalueWidget: valueInput\n\t\t\t} );\n\n\t\t\tcfg.deleteWidget.$element.on( 'click', {\n\t\t\t\tkeyWidget: keyInput,\n\t\t\t\tdeleteWidget: cfg.deleteWidget\n\t\t\t}, this.onDeleteClick.bind( this ) );\n\t\t}\n\n\t\treturn {\n\t\t\tinputs: { key: keyInput, value: valueInput },\n\t\t\tlayouts: [ keyLayout, valueLayout ]\n\t\t};\n\t};\n\n\tbs.ui.widget.KeyValueInputWidget.prototype.getKeyLayout = function ( keyInput, cfg ) {\n\t\treturn new OO.ui.FieldLayout( keyInput, {\n\t\t\talign: cfg.align || 'left',\n\t\t\tlabel: cfg.keyLabel || ''\n\t\t} );\n\t};\n\n\tbs.ui.widget.KeyValueInputWidget.prototype.getValidity = function () {\n\t\tvar toCheck = [],\n\t\t\tdfd = $.Deferred();\n\n\t\tfor ( var i = 0; i < this.addedWidgets.length; i++ ) {\n\t\t\tif ( typeof this.addedWidgets[ i ].keyWidget.getValidity === 'function' ) {\n\t\t\t\ttoCheck.push( this.addedWidgets[ i ].keyWidget );\n\t\t\t}\n\t\t\tif ( typeof this.addedWidgets[ i ].valueWidget.getValidity === 'function' ) {\n\t\t\t\ttoCheck.push( this.addedWidgets[ i ].valueWidget );\n\t\t\t}\n\t\t}\n\n\t\tthis.doCheckValidity( toCheck, dfd );\n\n\t\treturn dfd.promise();\n\t};\n\n\tbs.ui.widget.KeyValueInputWidget.prototype.setValidityFlag = function ( valid ) {\n\t\t// NOOP since flags will be set already by internal validation\n\t};\n\n\tbs.ui.widget.KeyValueInputWidget.prototype.doCheckValidity = function ( inputs, dfd ) {\n\t\tif ( inputs.length === 0 ) {\n\t\t\treturn dfd.resolve();\n\t\t}\n\n\t\tvar current = inputs.shift();\n\t\tcurrent.getValidity().done( function () {\n\t\t\tthis.doCheckValidity( inputs, dfd );\n\t\t}.bind( this ) ).fail( function () {\n\t\t\tcurrent.setValidityFlag( false );\n\t\t\tdfd.reject();\n\t\t} );\n\t};\n\n\tbs.ui.widget.KeyValueInputWidget.prototype.getValueLayout = function ( valueInput, cfg ) {\n\t\treturn new OO.ui.FieldLayout( valueInput, {\n\t\t\talign: cfg.align || 'left',\n\t\t\tlabel: cfg.valueLabel || ''\n\t\t} );\n\t};\n\n\tbs.ui.widget.KeyValueInputWidget.prototype.getKeyInput = function ( cfg ) {\n\t\tvar keyInput = new OO.ui.TextInputWidget( {\n\t\t\tvalue: cfg.keyValue,\n\t\t\treadOnly: cfg.keyReadOnly,\n\t\t\trequired: !cfg.keyReadOnly,\n\t\t\tvalidity: !cfg.keyReadOnly ? 'non-empty' : false\n\t\t} );\n\t\tkeyInput.$element.addClass( 'bs-ooui-widget-keyValueInputWidget-key-input' );\n\n\t\treturn keyInput;\n\t};\n\n\tbs.ui.widget.KeyValueInputWidget.prototype.getValueInput = function ( cfg ) {\n\t\tvar valueInput = new OO.ui.TextInputWidget( {\n\t\t\tvalue: cfg.valueValue,\n\t\t\trequired: cfg.valueRequired,\n\t\t\tvalidity: cfg.valueRequired ? 'non-empty' : false\n\t\t} );\n\t\tvalueInput.$element.addClass( 'bs-ooui-widget-keyValueInputWidget-value-input' );\n\n\t\treturn valueInput;\n\t};\n\n\tbs.ui.widget.KeyValueInputWidget.prototype.addNewValueForm = function () {\n\t\tthis.$addContainer = $( '<div>' ).addClass( 'bs-ooui-widget-keyValueInputWidget-add-container' );\n\n\t\tif ( this.addNewFormLabel !== '' ) {\n\t\t\tthis.$addContainer.append( new OO.ui.LabelWidget( {\n\t\t\t\tlabel: this.addNewFormLabel\n\t\t\t} ).$element );\n\t\t}\n\n\t\tthis.addForm = this.getForm( {\n\t\t\tkeyClass: 'bs-ooui-widget-keyValueInputWidget-key-input',\n\t\t\tvalueClass: 'bs-ooui-widget-keyValueInputWidget-value-input',\n\t\t\tkeyLabel: this.keyLabel,\n\t\t\tvalueLabel: this.valueLabel,\n\t\t\talign: 'top',\n\t\t\tkeyReadOnly: false,\n\t\t\tvalueRequired: this.valueRequired,\n\t\t\taddToWidgets: false\n\t\t} );\n\n\t\tvar layouts = this.getLayouts( {}, this.addForm );\n\n\t\tthis.addButton = this.getAddButtonWidget();\n\t\tthis.addButton.$element.addClass( 'bs-ooui-widget-keyValueInputWidget-add-btn' );\n\t\tthis.addButton.on( 'click', this.onAddClick.bind( this ) );\n\n\t\tthis.$addContainer.append( layouts, this.addButton.$element );\n\t\tthis.$element.append( this.$addContainer );\n\t};\n\n\tbs.ui.widget.KeyValueInputWidget.prototype.getAddButtonWidget = function () {\n\t\treturn new OO.ui.ButtonWidget( {\n\t\t\tframed: false,\n\t\t\ticon: 'check',\n\t\t\tflags: [\n\t\t\t\t'progressive'\n\t\t\t],\n\t\t\ttitle: mw.message( 'bs-ooui-key-value-input-widget-add-button-label' ).plain()\n\t\t} );\n\t};\n\n\tbs.ui.widget.KeyValueInputWidget.prototype.onAddClick = function ( e ) {\n\t\tif ( !this.addForm ) {\n\t\t\treturn;\n\t\t}\n\t\tvar keyValue = this.addForm.inputs.key.getValue(),\n\t\t\tvalueValue = this.addForm.inputs.value.getValue();\n\n\t\tthis.validateAddNewForm().done( function () {\n\t\t\tvalueValue = valueValue || keyValue;\n\n\t\t\tvar deleteButton = this.getDeleteButtonWidget(),\n\t\t\t\tlayoutCfg = $.extend( {\n\t\t\t\t\tkeyValue: keyValue,\n\t\t\t\t\tvalueValue: valueValue,\n\t\t\t\t\tdeleteWidget: deleteButton\n\t\t\t\t}, this.getDefaultLayoutConfig() ),\n\t\t\t\tlayouts = this.getLayouts( layoutCfg );\n\n\t\t\tthis.addEntry( layouts, deleteButton.$element );\n\t\t\tthis.$element.find( '.bs-ooui-keyValueInputWidget-no-value-label' ).remove();\n\n\t\t\tthis.emit( 'change', this );\n\t\t\tthis.resetAddForm();\n\t\t}.bind( this ) );\n\t};\n\n\tbs.ui.widget.KeyValueInputWidget.prototype.validateAddNewForm = function () {\n\t\tvar dfd = $.Deferred(),\n\t\t\ttoCheck = [];\n\n\t\tif ( typeof this.addForm.inputs.key.getValidity === 'function' ) {\n\t\t\ttoCheck.push( this.addForm.inputs.key );\n\t\t}\n\t\tif ( typeof this.addForm.inputs.value.getValidity === 'function' ) {\n\t\t\ttoCheck.push( this.addForm.inputs.value );\n\t\t}\n\t\tthis.doCheckValidity( toCheck, dfd );\n\n\t\treturn dfd.promise();\n\t};\n\n\tbs.ui.widget.KeyValueInputWidget.prototype.resetAddForm = function () {\n\t\tthis.addForm.inputs.key.setValue( '' );\n\t\tthis.addForm.inputs.value.setValue( '' );\n\n\t\tif ( typeof this.addForm.inputs.key.setValidityFlag === 'function' ) {\n\t\t\tthis.addForm.inputs.key.setValidityFlag( true );\n\t\t}\n\t\tif ( typeof this.addForm.inputs.value.setValidityFlag === 'function' ) {\n\t\t\tthis.addForm.inputs.value.setValidityFlag( true );\n\t\t}\n\t};\n\n\tbs.ui.widget.KeyValueInputWidget.prototype.getValue = function () {\n\t\tvar value = {};\n\t\tfor ( var idx in this.addedWidgets ) {\n\t\t\tif ( !this.addedWidgets.hasOwnProperty( idx ) ) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tvar keyWidget = this.addedWidgets[ idx ].keyWidget,\n\t\t\t\tvalueWidget = this.addedWidgets[ idx ].valueWidget,\n\t\t\t\tkeyValue = keyWidget.getValue(),\n\t\t\t\tvalueValue = valueWidget.getValue();\n\n\t\t\tvalueValue = valueValue || keyValue;\n\t\t\tvalue[ keyValue ] = valueValue;\n\t\t}\n\n\t\treturn value;\n\t};\n\n\tbs.ui.widget.KeyValueInputWidget.prototype.onDeleteClick = function ( e ) {\n\t\te.data.deleteWidget.$element.remove();\n\t\tthis.removeFromAddedWidgets( e.data.keyWidget );\n\t\tvar currentValue = this.getValue();\n\t\tthis.addedWidgets = [];\n\t\tthis.$valueContainer.html( '' );\n\n\t\tif ( $.isEmptyObject( currentValue ) === false ) {\n\t\t\tthis.setValue( currentValue );\n\t\t} else {\n\t\t\tthis.setNoValueMessage();\n\t\t}\n\t\tthis.emit( 'change', this );\n\t};\n\n\tbs.ui.widget.KeyValueInputWidget.prototype.removeFromAddedWidgets = function ( keyWidget ) {\n\t\tfor ( var idx in this.addedWidgets ) {\n\t\t\tvar widgets = this.addedWidgets[ idx ];\n\t\t\tif ( widgets.keyWidget.$element.is( keyWidget.$element ) ) {\n\t\t\t\tthis.addedWidgets.splice( idx, 1 );\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t};\n\n}( mediaWiki, blueSpice, jQuery, undefined ) );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.oojs/ui/widget/ObjectInputWidget.js","messages":[{"ruleId":"no-unused-vars","severity":1,"message":"'document' is defined but never used.","line":1,"column":25,"nodeType":"Identifier","messageId":"unusedVar","endLine":1,"endColumn":33},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":17,"column":9,"nodeType":"VariableDeclaration","messageId":"top","endLine":17,"endColumn":16},{"ruleId":"no-prototype-builtins","severity":1,"message":"Do not access Object.prototype method 'hasOwnProperty' from target object.","line":18,"column":22,"nodeType":"CallExpression","messageId":"prototypeBuildIn","endLine":18,"endColumn":36},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":21,"column":4,"nodeType":"VariableDeclaration","messageId":"combine","endLine":21,"endColumn":35},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":21,"column":4,"nodeType":"VariableDeclaration","messageId":"top","endLine":21,"endColumn":35},{"ruleId":"max-len","severity":1,"message":"This line has a length of 102. Maximum allowed is 100.","line":30,"column":1,"nodeType":"Program","messageId":"max","endLine":30,"endColumn":88},{"ruleId":"no-prototype-builtins","severity":1,"message":"Do not access Object.prototype method 'hasOwnProperty' from target object.","line":39,"column":21,"nodeType":"CallExpression","messageId":"prototypeBuildIn","endLine":39,"endColumn":35},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":57,"column":9,"nodeType":"VariableDeclaration","messageId":"top","endLine":57,"endColumn":16},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":57,"column":9,"nodeType":"VariableDeclaration","messageId":"combine","endLine":57,"endColumn":16},{"ruleId":"no-prototype-builtins","severity":1,"message":"Do not access Object.prototype method 'hasOwnProperty' from target object.","line":58,"column":23,"nodeType":"CallExpression","messageId":"prototypeBuildIn","endLine":58,"endColumn":37},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":75,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":75,"endColumn":32},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":89,"column":9,"nodeType":"VariableDeclaration","messageId":"top","endLine":89,"endColumn":16},{"ruleId":"no-prototype-builtins","severity":1,"message":"Do not access Object.prototype method 'hasOwnProperty' from target object.","line":90,"column":23,"nodeType":"CallExpression","messageId":"prototypeBuildIn","endLine":90,"endColumn":37},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":103,"column":9,"nodeType":"VariableDeclaration","messageId":"top","endLine":103,"endColumn":16},{"ruleId":"no-prototype-builtins","severity":1,"message":"Do not access Object.prototype method 'hasOwnProperty' from target object.","line":104,"column":23,"nodeType":"CallExpression","messageId":"prototypeBuildIn","endLine":104,"endColumn":37},{"ruleId":"no-prototype-builtins","severity":1,"message":"Do not access Object.prototype method 'hasOwnProperty' from target object.","line":107,"column":47,"nodeType":"CallExpression","messageId":"prototypeBuildIn","endLine":107,"endColumn":61},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":138,"column":9,"nodeType":"VariableDeclaration","messageId":"top","endLine":138,"endColumn":16},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":138,"column":9,"nodeType":"VariableDeclaration","messageId":"combine","endLine":138,"endColumn":16},{"ruleId":"no-prototype-builtins","severity":1,"message":"Do not access Object.prototype method 'hasOwnProperty' from target object.","line":139,"column":23,"nodeType":"CallExpression","messageId":"prototypeBuildIn","endLine":139,"endColumn":37},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":142,"column":4,"nodeType":"VariableDeclaration","messageId":"combine","endLine":142,"endColumn":65},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":142,"column":4,"nodeType":"VariableDeclaration","messageId":"top","endLine":142,"endColumn":65},{"ruleId":"no-undef","severity":1,"message":"'mediaWiki' is not defined.","line":151,"column":4,"nodeType":"Identifier","messageId":"undef","endLine":151,"endColumn":13},{"ruleId":"no-undef","severity":1,"message":"'blueSpice' is not defined.","line":151,"column":15,"nodeType":"Identifier","messageId":"undef","endLine":151,"endColumn":24},{"ruleId":"no-undef","severity":1,"message":"'jQuery' is not defined.","line":151,"column":26,"nodeType":"Identifier","messageId":"undef","endLine":151,"endColumn":32}],"errorCount":0,"warningCount":24,"fixableErrorCount":0,"fixableWarningCount":0,"source":"( function ( mw, bs, $, document ) {\n\tbs.ui.widget.ObjectInputWidget = function ( cfg ) {\n\t\tthis.inputs = cfg.inputs || {};\n\t\tthis.values = cfg.values || {};\n\t\tthis.widgets = {};\n\t\tthis.layouts = [];\n\t\tbs.ui.widget.ObjectInputWidget.parent.call( this, cfg );\n\n\t\tthis.$input.remove();\n\t\tthis.createInputs();\n\t};\n\n\tOO.inheritClass( bs.ui.widget.ObjectInputWidget, OO.ui.InputWidget );\n\n\tbs.ui.widget.ObjectInputWidget.prototype.createInputs = function () {\n\n\t\tfor ( var key in this.inputs ) {\n\t\t\tif ( !this.inputs.hasOwnProperty( key ) ) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tvar input = this.inputs[ key ];\n\t\t\tswitch ( input.type ) {\n\t\t\t\tcase 'text':\n\t\t\t\t\tthis.widgets[ key ] = new OO.ui.TextInputWidget( input.widget || {} );\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'bool':\n\t\t\t\t\tthis.widgets[ key ] = new OO.ui.CheckboxInputWidget( input.widget || {} );\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'json':\n\t\t\t\t\tthis.widgets[ key ] = new bs.ui.widget.JsonArrayInputWidget( input.widget || {} );\n\t\t\t\t\tbreak;\n\t\t\t\tcase 'number':\n\t\t\t\t\tthis.widgets[ key ] = new OO.ui.NumberInputWidget( input.widget || {} );\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tif ( this.values.hasOwnProperty( key ) ) {\n\t\t\t\tthis.setWidgetValue( this.widgets[ key ], this.values[ key ] );\n\t\t\t}\n\t\t\tthis.layouts.push( new OO.ui.FieldLayout( this.widgets[ key ], {\n\t\t\t\tlabel: input.label || '',\n\t\t\t\talign: 'top'\n\t\t\t} ) );\n\t\t}\n\t};\n\n\tbs.ui.widget.ObjectInputWidget.prototype.getLayouts = function () {\n\t\treturn this.layouts;\n\t};\n\n\tbs.ui.widget.ObjectInputWidget.prototype.getValidity = function () {\n\t\tvar toCheck = [],\n\t\t\tdfd = $.Deferred();\n\n\t\tfor ( var key in this.widgets ) {\n\t\t\tif ( !this.widgets.hasOwnProperty( key ) ) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif ( typeof this.widgets[ key ].getValidity === 'function' ) {\n\t\t\t\ttoCheck.push( this.widgets[ key ] );\n\t\t\t}\n\t\t}\n\n\t\tthis.doCheckValidity( toCheck, dfd );\n\n\t\treturn dfd.promise();\n\t};\n\n\tbs.ui.widget.ObjectInputWidget.prototype.doCheckValidity = function ( inputs, dfd ) {\n\t\tif ( inputs.length === 0 ) {\n\t\t\treturn dfd.resolve();\n\t\t}\n\t\tvar current = inputs.shift();\n\t\tcurrent.getValidity().done( function () {\n\t\t\tthis.doCheckValidity( inputs, dfd );\n\t\t}.bind( this ) ).fail( function () {\n\t\t\tcurrent.setValidityFlag( false );\n\t\t\tdfd.reject();\n\t\t} );\n\t};\n\n\tbs.ui.widget.ObjectInputWidget.prototype.setValidityFlag = function ( valid ) {\n\t\tif ( !valid ) {\n\t\t\t// Will be handled by internal validation\n\t\t\treturn;\n\t\t}\n\t\tfor ( var key in this.widgets ) {\n\t\t\tif ( !this.widgets.hasOwnProperty( key ) ) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif ( typeof this.widgets[ key ].setValidityFlag === 'function' ) {\n\t\t\t\tthis.widgets[ key ].setValidityFlag( true );\n\t\t\t}\n\t\t}\n\t};\n\n\tbs.ui.widget.ObjectInputWidget.prototype.setValue = function ( value ) {\n\t\tif ( !value ) {\n\t\t\tvalue = '';\n\t\t}\n\t\tfor ( var key in this.widgets ) {\n\t\t\tif ( !this.widgets.hasOwnProperty( key ) ) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif ( $.type( value ) === 'object' && value.hasOwnProperty( key ) ) {\n\t\t\t\tthis.setWidgetValue( this.widgets[ key ], value[ key ] );\n\t\t\t} else {\n\t\t\t\tthis.setWidgetValue( this.widgets[ key ], '' );\n\t\t\t}\n\n\t\t}\n\n\t\treturn value;\n\t};\n\n\tbs.ui.widget.ObjectInputWidget.prototype.setWidgetValue = function ( widget, value ) {\n\n\t\tif ( widget instanceof OO.ui.CheckboxInputWidget ) {\n\t\t\twidget.setSelected( !!value );\n\t\t\treturn;\n\t\t}\n\n\t\twidget.setValue( value );\n\t};\n\n\tbs.ui.widget.ObjectInputWidget.prototype.getWidgetValue = function ( widget ) {\n\t\tif ( widget instanceof OO.ui.CheckboxInputWidget ) {\n\t\t\treturn !!widget.isSelected();\n\t\t}\n\n\t\treturn widget.getValue();\n\t};\n\n\tbs.ui.widget.ObjectInputWidget.prototype.getValue = function () {\n\t\tvar value = {};\n\t\tfor ( var key in this.widgets ) {\n\t\t\tif ( !this.widgets.hasOwnProperty( key ) ) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tvar widgetValue = this.getWidgetValue( this.widgets[ key ] );\n\t\t\tif ( widgetValue ) {\n\t\t\t\tvalue[ key ] = widgetValue;\n\t\t\t}\n\t\t}\n\n\t\treturn value;\n\t};\n\n}( mediaWiki, blueSpice, jQuery, undefined ) );\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.oojs/ui/widget/StoreApiBoundComboBoxInput.js","messages":[{"ruleId":"max-len","severity":1,"message":"This line has a length of 119. Maximum allowed is 100.","line":8,"column":1,"nodeType":"Program","messageId":"max","endLine":8,"endColumn":120},{"ruleId":"max-len","severity":1,"message":"This line has a length of 110. Maximum allowed is 100.","line":9,"column":1,"nodeType":"Program","messageId":"max","endLine":9,"endColumn":111},{"ruleId":"max-len","severity":1,"message":"This line has a length of 112. Maximum allowed is 100.","line":10,"column":1,"nodeType":"Program","messageId":"max","endLine":10,"endColumn":113},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":13,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":13,"endColumn":3},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":17,"column":2,"nodeType":"Identifier","messageId":"undef","endLine":17,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":21,"column":2,"nodeType":"Identifier","messageId":"undef","endLine":21,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":22,"column":2,"nodeType":"Identifier","messageId":"undef","endLine":22,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":29,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":29,"endColumn":3},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":31,"column":14,"nodeType":"Identifier","messageId":"undef","endLine":31,"endColumn":15},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":37,"column":2,"nodeType":"VariableDeclaration","messageId":"top","endLine":37,"endColumn":25},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":37,"column":2,"nodeType":"VariableDeclaration","messageId":"combine","endLine":37,"endColumn":25},{"ruleId":"no-unused-vars","severity":1,"message":"'jqXHR' is defined but never used.","line":42,"column":31,"nodeType":"Identifier","messageId":"unusedVar","endLine":42,"endColumn":36}],"errorCount":0,"warningCount":12,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/**\n * @class\n * @abstract\n * @extends OO.ui.ComboBoxInputWidget\n * @constructor\n * @param {Object} [cfg] Configuration options\n * @cfg {Object[]} [options=[]] Array of menu options in the format `{ data: …, label: … }`\n * @cfg {Object} [menu] Configuration options to pass to the {@link OO.ui.FloatingMenuSelectWidget menu select widget}.\n * @cfg {jQuery} [$overlay] Render the menu into a separate layer. This configuration is useful in cases where\n * the expanded menu is larger than its containing `<div>`. The specified overlay layer is usually on top of the\n * containing `<div>` and has a larger area. By default, the menu uses relative positioning.\n */\nbs.ui.widget.StoreApiBoundComboBoxInput = function ( cfg ) {\n\tcfg = cfg || {};\n\n\tthis.apiAction = cfg.apiAction || this.apiAction;\n\tbs.ui.widget.StoreComboBoxInput.call( this, cfg );\n};\n\nOO.inheritClass(\n\tbs.ui.widget.StoreApiBoundComboBoxInput,\n\tbs.ui.widget.StoreComboBoxInput\n);\n\n/**\n *\n * @inheritdoc\n */\nbs.ui.widget.StoreApiBoundComboBoxInput.prototype.getLookupRequest = function () {\n\tvar value = this.getValue(),\n\t\tdeferred = $.Deferred();\n\n\tif ( value === '' ) {\n\t\tdeferred.resolve( [] );\n\t}\n\n\tvar api = new mw.Api();\n\tapi.get( {\n\t\taction: this.apiAction,\n\t\tquery: value\n\t} )\n\t\t.done( function ( response, jqXHR ) {\n\t\t\tdeferred.resolve( response.results );\n\t\t} );\n\n\treturn deferred.promise( { abort: function () {} } );\n};\n","usedDeprecatedRules":[{"ruleId":"valid-jsdoc","replacedBy":[]}]},{"filePath":"/src/repo/resources/bluespice.oojs/ui/widget/StoreComboBoxInput.js","messages":[{"ruleId":"max-len","severity":1,"message":"This line has a length of 119. Maximum allowed is 100.","line":8,"column":1,"nodeType":"Program","messageId":"max","endLine":8,"endColumn":120},{"ruleId":"max-len","severity":1,"message":"This line has a length of 110. Maximum allowed is 100.","line":9,"column":1,"nodeType":"Program","messageId":"max","endLine":9,"endColumn":111},{"ruleId":"max-len","severity":1,"message":"This line has a length of 112. Maximum allowed is 100.","line":10,"column":1,"nodeType":"Program","messageId":"max","endLine":10,"endColumn":113},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":13,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":13,"endColumn":3},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":26,"column":18,"nodeType":"Identifier","messageId":"undef","endLine":26,"endColumn":20},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":27,"column":16,"nodeType":"Identifier","messageId":"undef","endLine":27,"endColumn":18},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":33,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":33,"endColumn":3},{"ruleId":"no-undef","severity":1,"message":"'$' is not defined.","line":35,"column":14,"nodeType":"Identifier","messageId":"undef","endLine":35,"endColumn":15},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":41,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":41,"endColumn":25},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":41,"column":3,"nodeType":"VariableDeclaration","messageId":"combine","endLine":41,"endColumn":25},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":42,"column":9,"nodeType":"VariableDeclaration","messageId":"top","endLine":42,"endColumn":18},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":42,"column":9,"nodeType":"VariableDeclaration","messageId":"combine","endLine":42,"endColumn":18},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":43,"column":4,"nodeType":"VariableDeclaration","messageId":"combine","endLine":43,"endColumn":37},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":43,"column":4,"nodeType":"VariableDeclaration","messageId":"top","endLine":43,"endColumn":37},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":60,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":60,"endColumn":3},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":62,"column":8,"nodeType":"VariableDeclaration","messageId":"top","endLine":62,"endColumn":17},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":62,"column":8,"nodeType":"VariableDeclaration","messageId":"combine","endLine":62,"endColumn":17},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":63,"column":3,"nodeType":"VariableDeclaration","messageId":"top","endLine":63,"endColumn":26},{"ruleId":"one-var","severity":1,"message":"Combine this with the previous 'var' statement.","line":63,"column":3,"nodeType":"VariableDeclaration","messageId":"combine","endLine":63,"endColumn":26},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":77,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":77,"endColumn":3},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":85,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":85,"endColumn":3},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":87,"column":2,"nodeType":"VariableDeclaration","messageId":"top","endLine":87,"endColumn":27},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":92,"column":2,"nodeType":"Identifier","messageId":"undef","endLine":92,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":105,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":105,"endColumn":3},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":109,"column":9,"nodeType":"Identifier","messageId":"undef","endLine":109,"endColumn":11},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":116,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":116,"endColumn":3},{"ruleId":"jsdoc/require-returns","severity":1,"message":"Missing JSDoc @return declaration.","line":120,"column":1,"nodeType":"Block","endLine":123,"endColumn":4},{"ruleId":"valid-jsdoc","severity":1,"message":"Missing JSDoc @returns for function.","line":120,"column":1,"nodeType":"Block","messageId":"missingReturn","endLine":123,"endColumn":4},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":124,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":124,"endColumn":3},{"ruleId":"vars-on-top","severity":1,"message":"All 'var' declarations must be at the top of the function scope.","line":128,"column":2,"nodeType":"VariableDeclaration","messageId":"top","endLine":128,"endColumn":37},{"ruleId":"valid-jsdoc","severity":1,"message":"Missing JSDoc @returns for function.","line":132,"column":1,"nodeType":"Block","messageId":"missingReturn","endLine":136,"endColumn":4},{"ruleId":"valid-jsdoc","severity":1,"message":"Missing JSDoc parameter description for 'data'.","line":135,"column":4,"nodeType":"Block","messageId":"missingParamDesc","endLine":135,"endColumn":26},{"ruleId":"no-undef","severity":1,"message":"'bs' is not defined.","line":137,"column":1,"nodeType":"Identifier","messageId":"undef","endLine":137,"endColumn":3}],"errorCount":0,"warningCount":33,"fixableErrorCount":0,"fixableWarningCount":0,"source":"/**\n * @class\n * @abstract\n * @extends OO.ui.ComboBoxInputWidget\n * @constructor\n * @param {Object} [cfg] Configuration options\n * @cfg {Object[]} [options=[]] Array of menu options in the format `{ data: …, label: … }`\n * @cfg {Object} [menu] Configuration options to pass to the {@link OO.ui.FloatingMenuSelectWidget menu select widget}.\n * @cfg {jQuery} [$overlay] Render the menu into a separate layer. This configuration is useful in cases where\n * the expanded menu is larger than its containing `<div>`. The specified overlay layer is usually on top of the\n * containing `<div>` and has a larger area. By default, the menu uses relative positioning.\n */\nbs.ui.widget.StoreComboBoxInput = function ( cfg ) {\n\tcfg = cfg || {};\n\n\tthis.selectedItem = null;\n\n\tthis.displayField = cfg.displayField || this.displayField;\n\tthis.valueField = cfg.valueField || '';\n\tthis.localData = cfg.localData || [];\n\n\tOO.ui.ComboBoxInputWidget.call( this, cfg );\n\tOO.ui.mixin.LookupElement.call( this, cfg );\n};\n\nOO.inheritClass( bs.ui.widget.StoreComboBoxInput, OO.ui.ComboBoxInputWidget );\nOO.mixinClass( bs.ui.widget.StoreComboBoxInput, OO.ui.mixin.LookupElement );\n\n/**\n *\n * @inheritdoc\n */\nbs.ui.widget.StoreComboBoxInput.prototype.getLookupRequest = function () {\n\tvar value = this.getValue(),\n\t\tdeferred = $.Deferred(),\n\t\tpromise = deferred.promise( { abort: function () {} } );\n\n\tif ( !value ) {\n\t\tdeferred.resolve( this.localData );\n\t} else {\n\t\tvar filteredData = [];\n\t\tfor ( var i