jenkins-bot has submitted this change and it was merged.
Change subject: Update linting tools, config, and fix subsequent failures
......................................................................
Update linting tools, config, and fix subsequent failures
Change-Id: I41e080915441367b3a2ab2de7d7a096872a2f2e8
---
M .jscsrc
M .jshintrc
M package.json
M resources/js/ext.uls.displaysettings.js
M resources/js/ext.uls.ime.js
M resources/js/ext.uls.init.js
M resources/js/ext.uls.inputsettings.js
7 files changed, 151 insertions(+), 132 deletions(-)
Approvals:
Nikerabbit: Looks good to me, approved
jenkins-bot: Verified
diff --git a/.jscsrc b/.jscsrc
index c48c059..1959eea 100644
--- a/.jscsrc
+++ b/.jscsrc
@@ -1,4 +1,21 @@
{
"preset": "wikimedia",
- "requireCamelCaseOrUpperCaseIdentifiers": null
+
+ "jsDoc": {
+ "checkAnnotations": {
+ "preset": "jsduck5",
+ "extra": {
+ "this": true,
+ "source": true,
+ "see": true
+ }
+ },
+ "checkTypes": "strictNativeCase",
+ "checkParamNames": true,
+ "checkRedundantAccess": true,
+ "checkRedundantReturns": true,
+ "requireNewlineAfterDescription": true,
+ "requireParamTypes": true,
+ "requireReturnTypes": true
+ }
}
diff --git a/.jshintrc b/.jshintrc
index 317d4e2..93a54e8 100644
--- a/.jshintrc
+++ b/.jshintrc
@@ -1,32 +1,25 @@
{
-
- "camelcase": false,
- "curly": true,
+ // Enforcing
+ "bitwise": true,
"eqeqeq": true,
- "immed": true,
- "latedef": true,
- "newcap": true,
+ "freeze": true,
+ "latedef": "nofunc",
+ "futurehostile": true,
"noarg": true,
- "noempty": true,
"nonew": true,
- "quotmark": "single",
- "trailing": true,
"undef": true,
"unused": true,
- "bitwise": true,
- "forin": false,
- "regexp": false,
- "strict": true,
- "laxbreak": true,
- "smarttabs": true,
- "multistr": true,
- "browser": true,
- "onevar": true,
+ "strict": false,
- "predef": [
- "mediaWiki",
- "jQuery",
- "QUnit"
- ]
+ // Relaxing
+
+ // Environment
+ "browser": true,
+ "jquery": true,
+
+ "globals": {
+ "mediaWiki": false,
+ "QUnit": false
+ }
}
diff --git a/package.json b/package.json
index 611c585..a9b014e 100644
--- a/package.json
+++ b/package.json
@@ -5,10 +5,10 @@
},
"devDependencies": {
"grunt": "0.4.5",
+ "grunt-banana-checker": "0.4.0",
"grunt-cli": "0.1.13",
- "grunt-contrib-jshint": "0.11.3",
- "grunt-jscs": "2.5.0",
- "grunt-jsonlint": "1.0.7",
- "grunt-banana-checker": "0.4.0"
+ "grunt-contrib-jshint": "1.0.0",
+ "grunt-jscs": "2.8.0",
+ "grunt-jsonlint": "1.0.7"
}
}
diff --git a/resources/js/ext.uls.displaysettings.js
b/resources/js/ext.uls.displaysettings.js
index 555bfd1..880050b 100644
--- a/resources/js/ext.uls.displaysettings.js
+++ b/resources/js/ext.uls.displaysettings.js
@@ -20,80 +20,86 @@
( function ( $, mw ) {
'use strict';
- var template = '<div class="uls-display-settings">'
+ var template = '<div class="uls-display-settings">' +
- + '<div class="row">' // Tab switcher buttons
- + '<div class="twelve columns
uls-display-settings-tab-switcher">'
- + '<div class="uls-button-group mw-ui-button-group">'
- + '<button id="uls-display-settings-language-tab"
class="mw-ui-button mw-ui-pressed" '
- + 'data-i18n="ext-uls-display-settings-language-tab"></button>'
- + '<button id="uls-display-settings-fonts-tab"
class="mw-ui-button" data-i18n="ext-uls-display-settings-fonts-tab"></button>'
- + '</div>'
- + '</div>'
- + '</div>'
+ // Tab switcher buttons
+ '<div class="row">' +
+ '<div class="twelve columns
uls-display-settings-tab-switcher">' +
+ '<div class="uls-button-group mw-ui-button-group">' +
+ '<button id="uls-display-settings-language-tab"
class="mw-ui-button mw-ui-pressed" ' +
+ 'data-i18n="ext-uls-display-settings-language-tab"></button>' +
+ '<button id="uls-display-settings-fonts-tab"
class="mw-ui-button" data-i18n="ext-uls-display-settings-fonts-tab"></button>' +
+ '</div>' +
+ '</div>' +
+ '</div>' +
- + '<div class="ext-uls-sub-panel
uls-display-settings-language-tab">' // Begin display language sub-panel
+ // Begin display language sub-panel
+ '<div class="ext-uls-sub-panel
uls-display-settings-language-tab">' +
// "Display language", title above the buttons row
- + '<div class="row">'
- + '<div class="eleven columns">'
- + '<h4 data-i18n="ext-uls-display-settings-ui-language"></h4>'
- + '</div>'
- + '</div>'
+ '<div class="row">' +
+ '<div class="eleven columns">' +
+ '<h4 data-i18n="ext-uls-display-settings-ui-language"></h4>' +
+ '</div>' +
+ '</div>' +
// UI languages buttons row
- + '<div class="row">'
- + '<div class="uls-ui-languages eleven columns">'
- + '<p data-i18n="ext-uls-language-buttons-help"></p>'
- + '</div>'
- + '</div>'
+ '<div class="row">' +
+ '<div class="uls-ui-languages eleven columns">' +
+ '<p data-i18n="ext-uls-language-buttons-help"></p>' +
+ '</div>' +
+ '</div>' +
- + '</div>' // End display language section
+ // End display language section
+ '</div>' +
- + '<div class="ext-uls-sub-panel uls-display-settings-fonts-tab
hide">' // Begin font settings section, hidden by default
+ // Begin font settings section, hidden by default
+ '<div class="ext-uls-sub-panel uls-display-settings-fonts-tab
hide">' +
// "Font settings" title
- + '<div class="row">'
- + '<div class="twelve columns">'
- + '<h4 data-i18n="ext-uls-display-settings-font-settings"></h4>'
- + '</div>'
- + '</div>'
+ '<div class="row">' +
+ '<div class="twelve columns">' +
+ '<h4 data-i18n="ext-uls-display-settings-font-settings"></h4>' +
+ '</div>' +
+ '</div>' +
- + '<div id="uls-display-settings-font-selectors"
class="uls-display-settings-font-selectors">'
+ '<div id="uls-display-settings-font-selectors"
class="uls-display-settings-font-selectors">' +
// Menus font selection dropdown with label
- + '<div class="row uls-font-item uls-content-fonts">'
- + '<div class="six columns">'
- + '<label class="uls-font-label"
id="content-font-selector-label"></label>'
- + '</div>'
- + '<select id="content-font-selector" class="four columns end
uls-font-select"></select>'
- + '</div>'
+ '<div class="row uls-font-item uls-content-fonts">' +
+ '<div class="six columns">' +
+ '<label class="uls-font-label"
id="content-font-selector-label"></label>' +
+ '</div>' +
+ '<select id="content-font-selector" class="four columns end
uls-font-select"></select>' +
+ '</div>' +
// Content font selection dropdown with label
- + '<div class="row uls-font-item uls-ui-fonts">'
- + '<div class="six columns">'
- + '<label class="uls-font-label"
id="ui-font-selector-label"></label>'
- + '</div>'
- + '<select id="ui-font-selector" class="four columns end
uls-font-select"></select>'
- + '</div>'
+ '<div class="row uls-font-item uls-ui-fonts">' +
+ '<div class="six columns">' +
+ '<label class="uls-font-label"
id="ui-font-selector-label"></label>' +
+ '</div>' +
+ '<select id="ui-font-selector" class="four columns end
uls-font-select"></select>' +
+ '</div>' +
- + '</div>' // End font selectors
+ // End font selectors
+ '</div>' +
// Webfonts enabling checkbox with label
- + '<div class="row">'
- + '<div class="eleven columns">'
- + '<div class="mw-ui-checkbox">'
- + '<input type="checkbox" id="webfonts-enable-checkbox" />'
- + '<label class="checkbox" for="webfonts-enable-checkbox" >'
- + '<strong
data-i18n="ext-uls-webfonts-settings-title"></strong> '
- + '<span data-i18n="ext-uls-webfonts-settings-info"></span> '
- + '<a target="_blank"
href="https://www.mediawiki.org/wiki/Universal_Language_Selector/WebFonts"
data-i18n="ext-uls-webfonts-settings-info-link"></a>'
- + '</label>'
- + '</div>'
- + '</div>'
- + '</div>'
+ '<div class="row">' +
+ '<div class="eleven columns">' +
+ '<div class="mw-ui-checkbox">' +
+ '<input type="checkbox" id="webfonts-enable-checkbox" />' +
+ '<label class="checkbox" for="webfonts-enable-checkbox" >' +
+ '<strong data-i18n="ext-uls-webfonts-settings-title"></strong>
' +
+ '<span data-i18n="ext-uls-webfonts-settings-info"></span> ' +
+ '<a target="_blank"
href="https://www.mediawiki.org/wiki/Universal_Language_Selector/WebFonts"
data-i18n="ext-uls-webfonts-settings-info-link"></a>' +
+ '</label>' +
+ '</div>' +
+ '</div>' +
+ '</div>' +
- + '</div>'; // End font settings section
+ // End font settings section
+ '</div>';
function DisplaySettings( $parent ) {
this.nameI18n = 'ext-uls-display-settings-title-short';
diff --git a/resources/js/ext.uls.ime.js b/resources/js/ext.uls.ime.js
index 4c59488..8871346 100644
--- a/resources/js/ext.uls.ime.js
+++ b/resources/js/ext.uls.ime.js
@@ -106,6 +106,30 @@
}
};
+ function imeNotification() {
+ var notificationMsg = ( mw.config.get( 'wgULSPosition' ) ===
'personal' ) ?
+
'ext-uls-input-disable-notification-info-personal' :
+
'ext-uls-input-disable-notification-info-interlanguage',
+ $notification = $( '<div>' )
+ .addClass( 'uls-ime-notification-bubble' )
+ .append(
+ $( '<div>' )
+ .attr( 'data-i18n',
'ext-uls-input-disable-notification' ),
+ $( '<div>' )
+ .addClass( 'link' )
+ .attr( 'data-i18n',
'ext-uls-input-disable-notification-undo' )
+ .on( 'click', function () {
+
$.ime.preferences.enable();
+ $.ime.preferences.save(
function () {
+ mw.ime.setup();
+ } );
+ } ),
+ $( '<div>' ).attr( 'data-i18n',
notificationMsg )
+ );
+
+ mw.notify( $notification.i18n() );
+ }
+
// Add a 'more settings' link that takes to input settings of ULS
customHelpLink = function () {
var $disableInputToolsLink, $moreSettingsLink,
@@ -297,28 +321,4 @@
} );
}
};
-
- function imeNotification() {
- var notificationMsg = ( mw.config.get( 'wgULSPosition' ) ===
'personal' ) ?
-
'ext-uls-input-disable-notification-info-personal' :
-
'ext-uls-input-disable-notification-info-interlanguage',
- $notification = $( '<div>' )
- .addClass( 'uls-ime-notification-bubble' )
- .append(
- $( '<div>' )
- .attr( 'data-i18n',
'ext-uls-input-disable-notification' ),
- $( '<div>' )
- .addClass( 'link' )
- .attr( 'data-i18n',
'ext-uls-input-disable-notification-undo' )
- .on( 'click', function () {
-
$.ime.preferences.enable();
- $.ime.preferences.save(
function () {
- mw.ime.setup();
- } );
- } ),
- $( '<div>' ).attr( 'data-i18n',
notificationMsg )
- );
-
- mw.notify( $notification.i18n() );
- }
}( jQuery, mediaWiki ) );
diff --git a/resources/js/ext.uls.init.js b/resources/js/ext.uls.init.js
index db29524..40ef11f 100644
--- a/resources/js/ext.uls.init.js
+++ b/resources/js/ext.uls.init.js
@@ -107,7 +107,9 @@
};
mw.uls.getCountryCode = function () {
+ // jscs:disable requireCamelCaseOrUpperCaseIdentifiers
return window.Geo && ( window.Geo.country ||
window.Geo.country_code );
+ // jscs:enable requireCamelCaseOrUpperCaseIdentifiers
};
mw.uls.getAcceptLanguageList = function () {
diff --git a/resources/js/ext.uls.inputsettings.js
b/resources/js/ext.uls.inputsettings.js
index 2a47444..dd2a298 100644
--- a/resources/js/ext.uls.inputsettings.js
+++ b/resources/js/ext.uls.inputsettings.js
@@ -20,40 +20,41 @@
( function ( $, mw ) {
'use strict';
- var template = '<div class="uls-input-settings">'
- + '<div class="row">' // Top "Display settings" title
- + '<div class="twelve columns">'
- + '<h3 data-i18n="ext-uls-input-settings-title"></h3>'
- + '</div>'
- + '</div>'
+ var template = '<div class="uls-input-settings">' +
+ // Top "Display settings" title
+ '<div class="row">' +
+ '<div class="twelve columns">' +
+ '<h3 data-i18n="ext-uls-input-settings-title"></h3>' +
+ '</div>' +
+ '</div>' +
// "Language for ime", title above the buttons row
- + '<div class="row enabled-only
uls-input-settings-languages-title">'
- + '<div class="eleven columns">'
- + '<h4 data-i18n="ext-uls-input-settings-ui-language"></h4>'
- + '</div>'
- + '</div>'
+ '<div class="row enabled-only
uls-input-settings-languages-title">' +
+ '<div class="eleven columns">' +
+ '<h4 data-i18n="ext-uls-input-settings-ui-language"></h4>' +
+ '</div>' +
+ '</div>' +
// UI languages buttons row
- + '<div class="row enabled-only">'
- + '<div class="uls-ui-languages eleven columns"></div>'
- + '</div>'
+ '<div class="row enabled-only">' +
+ '<div class="uls-ui-languages eleven columns"></div>' +
+ '</div>' +
// Web IMEs enabling chechbox with label
- + '<div class="row enabled-only">'
- + '<div class="eleven columns
uls-input-settings-inputmethods-list">'
+ '<div class="row enabled-only">' +
+ '<div class="eleven columns
uls-input-settings-inputmethods-list">' +
// "Input settings for language xyz" title
- + '<h4 class="ext-uls-input-settings-imes-title"></h4>'
- + '</div>'
- + '</div>'
+ '<h4 class="ext-uls-input-settings-imes-title"></h4>' +
+ '</div>' +
+ '</div>' +
// Disable IME system button
- + '<div class="row">'
- + '<div class="eleven columns
uls-input-settings-disable-info"></div>'
- + '<div class="ten columns uls-input-settings-toggle">'
- + '<button class="active mw-ui-constructive mw-ui-button
uls-input-toggle-button"></button>'
- + '</div>'
- + '</div>';
+ '<div class="row">' +
+ '<div class="eleven columns
uls-input-settings-disable-info"></div>' +
+ '<div class="ten columns uls-input-settings-toggle">' +
+ '<button class="active mw-ui-constructive mw-ui-button
uls-input-toggle-button"></button>' +
+ '</div>' +
+ '</div>';
function InputSettings( $parent ) {
this.nameI18n = 'ext-uls-input-settings-title-short';
--
To view, visit https://gerrit.wikimedia.org/r/283215
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I41e080915441367b3a2ab2de7d7a096872a2f2e8
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/UniversalLanguageSelector
Gerrit-Branch: master
Gerrit-Owner: Esanders <[email protected]>
Gerrit-Reviewer: Jforrester <[email protected]>
Gerrit-Reviewer: Nikerabbit <[email protected]>
Gerrit-Reviewer: jenkins-bot <>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits