From: jdlrobson Date: Tue, 14 Aug 2018 22:50:41 +0000 (-0700) Subject: Fix eslint warnings and switch to error code X-Git-Tag: 1.34.0-rc.0~4405^2 X-Git-Url: https://git.heureux-cyclage.org/?p=lhc%2Fweb%2Fwiklou.git;a=commitdiff_plain;h=160fc196fe43300843cc6cb68ad912051b7fb1d9 Fix eslint warnings and switch to error code Follow up to I4552191f639b1022cb085ef5eb4abda835c2d91c * Add eslint-ignores to various files * Correct various uses of isFunction, trim, map, grep where easy fix is available * Switch from eslint warning to error Bug: T200877 Change-Id: I8420db21e548772332e51769aa8ec92d5958715f --- diff --git a/.eslintrc.json b/.eslintrc.json index e24fa83491..da5d409765 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -12,7 +12,7 @@ }, "rules": { "no-restricted-properties": [ - 1, + 2, { "object": "$", "property": "map", diff --git a/resources/src/jquery/jquery.lengthLimit.js b/resources/src/jquery/jquery.lengthLimit.js index 186ad17787..3823395c6b 100644 --- a/resources/src/jquery/jquery.lengthLimit.js +++ b/resources/src/jquery/jquery.lengthLimit.js @@ -44,12 +44,12 @@ // If the first argument is the function, // set filterFn to the first argument's value and ignore the second argument. - if ( $.isFunction( limit ) ) { + if ( typeof limit === 'function' ) { filterFn = limit; limit = undefined; // Either way, verify it is a function so we don't have to call // isFunction again after this. - } else if ( !filterFn || !$.isFunction( filterFn ) ) { + } else if ( !filterFn || typeof filterFn !== 'function' ) { filterFn = undefined; } diff --git a/resources/src/jquery/jquery.suggestions.js b/resources/src/jquery/jquery.suggestions.js index 39c601f3a3..663950a604 100644 --- a/resources/src/jquery/jquery.suggestions.js +++ b/resources/src/jquery/jquery.suggestions.js @@ -116,7 +116,7 @@ if ( context.data.timerID !== null ) { clearTimeout( context.data.timerID ); } - if ( $.isFunction( context.config.cancel ) ) { + if ( typeof context.config.cancel === 'function' ) { context.config.cancel.call( context.data.$textbox ); } }, diff --git a/resources/src/mediawiki.confirmCloseWindow.js b/resources/src/mediawiki.confirmCloseWindow.js index ee3bac246c..4510b2c50f 100644 --- a/resources/src/mediawiki.confirmCloseWindow.js +++ b/resources/src/mediawiki.confirmCloseWindow.js @@ -47,7 +47,7 @@ showEventName += '.' + options.namespace; } - if ( $.isFunction( options.message ) ) { + if ( typeof options.message === 'function' ) { message = options.message(); } else { message = options.message; diff --git a/resources/src/mediawiki.htmlform/autocomplete.js b/resources/src/mediawiki.htmlform/autocomplete.js index 8157975560..2f62371980 100644 --- a/resources/src/mediawiki.htmlform/autocomplete.js +++ b/resources/src/mediawiki.htmlform/autocomplete.js @@ -12,7 +12,7 @@ fetch: function ( val ) { var $el = $( this ); $el.suggestions( 'suggestions', - $.grep( $el.data( 'autocomplete' ), function ( v ) { + $el.data( 'autocomplete' ).filter( function ( v ) { return v.indexOf( val ) === 0; } ) ); diff --git a/resources/src/mediawiki.inspect.js b/resources/src/mediawiki.inspect.js index b30a30e20e..cec537fa37 100644 --- a/resources/src/mediawiki.inspect.js +++ b/resources/src/mediawiki.inspect.js @@ -243,7 +243,7 @@ var module = mw.loader.moduleRegistry[ moduleName ]; // Grep module's JavaScript - if ( $.isFunction( module.script ) && pattern.test( module.script.toString() ) ) { + if ( typeof module.script === 'function' && pattern.test( module.script.toString() ) ) { return true; } diff --git a/resources/src/mediawiki.jqueryMsg/mediawiki.jqueryMsg.js b/resources/src/mediawiki.jqueryMsg/mediawiki.jqueryMsg.js index 437800a047..74fb7d68a4 100644 --- a/resources/src/mediawiki.jqueryMsg/mediawiki.jqueryMsg.js +++ b/resources/src/mediawiki.jqueryMsg/mediawiki.jqueryMsg.js @@ -1,3 +1,4 @@ +/* eslint-disable no-restricted-properties */ /*! * Experimental advanced wikitext parser-emitter. * See: https://www.mediawiki.org/wiki/Extension:UploadWizard/MessageParser for docs diff --git a/resources/src/mediawiki.legacy/protect.js b/resources/src/mediawiki.legacy/protect.js index b96bebcb1a..cb4edc128c 100644 --- a/resources/src/mediawiki.legacy/protect.js +++ b/resources/src/mediawiki.legacy/protect.js @@ -1,3 +1,4 @@ +/* eslint-disable no-restricted-properties */ ( function ( mw, $ ) { var ProtectionForm, reasonCodePointLimit = mw.config.get( 'wgCommentCodePointLimit' ), diff --git a/resources/src/mediawiki.searchSuggest/searchSuggest.js b/resources/src/mediawiki.searchSuggest/searchSuggest.js index e7859cf75a..bd94f29f55 100644 --- a/resources/src/mediawiki.searchSuggest/searchSuggest.js +++ b/resources/src/mediawiki.searchSuggest/searchSuggest.js @@ -1,3 +1,4 @@ +/* eslint-disable no-restricted-properties */ /*! * Add search suggestions to the search form. */ diff --git a/resources/src/mediawiki.special.apisandbox/apisandbox.js b/resources/src/mediawiki.special.apisandbox/apisandbox.js index 7c0d2324ab..52abb30264 100644 --- a/resources/src/mediawiki.special.apisandbox/apisandbox.js +++ b/resources/src/mediawiki.special.apisandbox/apisandbox.js @@ -1,3 +1,4 @@ +/* eslint-disable no-restricted-properties */ ( function ( $, mw, OO ) { 'use strict'; var ApiSandbox, Util, WidgetMethods, Validators, diff --git a/resources/src/mediawiki.userSuggest.js b/resources/src/mediawiki.userSuggest.js index 99e9dbe01b..43f0552b51 100644 --- a/resources/src/mediawiki.userSuggest.js +++ b/resources/src/mediawiki.userSuggest.js @@ -19,7 +19,7 @@ auprefix: userInput[ 0 ].toUpperCase() + userInput.slice( 1 ), aulimit: maxRows } ).done( function ( data ) { - var users = $.map( data.query.allusers, function ( userObj ) { + var users = data.query.allusers.map( function ( userObj ) { return userObj.name; } ); response( users ); diff --git a/resources/src/mediawiki.widgets.datetime/DateTimeFormatter.js b/resources/src/mediawiki.widgets.datetime/DateTimeFormatter.js index a7a3bd3087..038af953f0 100644 --- a/resources/src/mediawiki.widgets.datetime/DateTimeFormatter.js +++ b/resources/src/mediawiki.widgets.datetime/DateTimeFormatter.js @@ -1,3 +1,4 @@ +/* eslint-disable no-restricted-properties */ ( function ( $, mw ) { /** diff --git a/resources/src/mediawiki.widgets.datetime/DiscordianDateTimeFormatter.js b/resources/src/mediawiki.widgets.datetime/DiscordianDateTimeFormatter.js index 6db2d06269..926c9157fa 100644 --- a/resources/src/mediawiki.widgets.datetime/DiscordianDateTimeFormatter.js +++ b/resources/src/mediawiki.widgets.datetime/DiscordianDateTimeFormatter.js @@ -1,3 +1,4 @@ +/* eslint-disable no-restricted-properties */ ( function ( $, mw ) { /** diff --git a/resources/src/mediawiki.widgets.datetime/ProlepticGregorianDateTimeFormatter.js b/resources/src/mediawiki.widgets.datetime/ProlepticGregorianDateTimeFormatter.js index 0346cc1ea2..b0b7d60836 100644 --- a/resources/src/mediawiki.widgets.datetime/ProlepticGregorianDateTimeFormatter.js +++ b/resources/src/mediawiki.widgets.datetime/ProlepticGregorianDateTimeFormatter.js @@ -1,3 +1,4 @@ +/* eslint-disable no-restricted-properties */ ( function ( $, mw ) { /** diff --git a/resources/src/mediawiki.widgets/mw.widgets.NamespaceInputWidget.js b/resources/src/mediawiki.widgets/mw.widgets.NamespaceInputWidget.js index aa0c739f5e..08d5b87448 100644 --- a/resources/src/mediawiki.widgets/mw.widgets.NamespaceInputWidget.js +++ b/resources/src/mediawiki.widgets/mw.widgets.NamespaceInputWidget.js @@ -1,3 +1,4 @@ +/* eslint-disable no-restricted-properties */ /*! * MediaWiki Widgets - NamespaceInputWidget class. * diff --git a/resources/src/mediawiki.widgets/mw.widgets.TitleWidget.js b/resources/src/mediawiki.widgets/mw.widgets.TitleWidget.js index 6ee9595fce..44a7d61d9b 100644 --- a/resources/src/mediawiki.widgets/mw.widgets.TitleWidget.js +++ b/resources/src/mediawiki.widgets/mw.widgets.TitleWidget.js @@ -113,7 +113,7 @@ // Workaround T97096 by setting uselang=content uselang: 'content' } ).then( function ( data ) { - return $.map( data.query.interwikimap, function ( interwiki ) { + return data.query.interwikimap.map( function ( interwiki ) { return interwiki.prefix; } ); } ); diff --git a/tests/qunit/suites/resources/mediawiki/mediawiki.jqueryMsg.test.js b/tests/qunit/suites/resources/mediawiki/mediawiki.jqueryMsg.test.js index 50fd581b7f..e4cf4461d5 100644 --- a/tests/qunit/suites/resources/mediawiki/mediawiki.jqueryMsg.test.js +++ b/tests/qunit/suites/resources/mediawiki/mediawiki.jqueryMsg.test.js @@ -364,7 +364,7 @@ QUnit.test( 'Match PHP parser', function ( assert ) { var tasks; mw.messages.set( mw.libs.phpParserData.messages ); - tasks = $.map( mw.libs.phpParserData.tests, function ( test ) { + tasks = mw.libs.phpParserData.tests.map( function ( test ) { var done = assert.async(); return function ( next, abort ) { getMwLanguage( test.lang ) diff --git a/tests/qunit/suites/resources/mediawiki/mediawiki.user.test.js b/tests/qunit/suites/resources/mediawiki/mediawiki.user.test.js index 8a5e68a5c2..f0a354358d 100644 --- a/tests/qunit/suites/resources/mediawiki/mediawiki.user.test.js +++ b/tests/qunit/suites/resources/mediawiki/mediawiki.user.test.js @@ -1,4 +1,4 @@ -( function ( mw, $ ) { +( function ( mw ) { QUnit.module( 'mediawiki.user', QUnit.newMwEnvironment( { setup: function () { this.server = this.sandbox.useFakeServer(); @@ -69,7 +69,7 @@ result = mw.user.generateRandomSessionId(); assert.strictEqual( typeof result, 'string', 'type' ); - assert.strictEqual( $.trim( result ), result, 'no whitespace at beginning or end' ); + assert.strictEqual( result.trim(), result, 'no whitespace at beginning or end' ); assert.strictEqual( result.length, 16, 'size' ); result2 = mw.user.generateRandomSessionId(); @@ -90,7 +90,7 @@ result = mw.user.generateRandomSessionId(); assert.strictEqual( typeof result, 'string', 'type' ); - assert.strictEqual( $.trim( result ), result, 'no whitespace at beginning or end' ); + assert.strictEqual( result.trim(), result, 'no whitespace at beginning or end' ); assert.strictEqual( result.length, 16, 'size' ); result2 = mw.user.generateRandomSessionId(); @@ -109,7 +109,7 @@ var result = mw.user.sessionId(), result2 = mw.user.sessionId(); assert.strictEqual( typeof result, 'string', 'type' ); - assert.strictEqual( $.trim( result ), result, 'no leading or trailing whitespace' ); + assert.strictEqual( result.trim(), result, 'no leading or trailing whitespace' ); assert.strictEqual( result2, result, 'retained' ); } ); -}( mediaWiki, jQuery ) ); +}( mediaWiki ) );