Fomafix has uploaded a new change for review. ( 
https://gerrit.wikimedia.org/r/379772 )

Change subject: Use native ES5 Array prototypes methods instead of jQuery
......................................................................

Use native ES5 Array prototypes methods instead of jQuery

Replace
* $.each( array, function ( index, value ) { ... } ) by
  array.forEach( function ( value ) { ... } )

* $.grep( array, function ( value ) { ... } ) by
  array.filter( function ( value ) { ... } )

* $.map( array, function ( value ) { ... } ) by
  array.map( function ( value ) { ... } )

Change-Id: I985ddf710e13c9ae788245349e2791571aeec97e
---
M resources/src/jquery/jquery.accessKeyLabel.js
M resources/src/jquery/jquery.color.js
M resources/src/jquery/jquery.localize.js
M resources/src/jquery/jquery.tablesorter.js
M resources/src/mediawiki.language/mediawiki.language.months.js
M resources/src/mediawiki.legacy/wikibits.js
M resources/src/mediawiki.special/mediawiki.special.apisandbox.js
M resources/src/mediawiki.special/mediawiki.special.import.js
M resources/src/mediawiki/api.js
M resources/src/mediawiki/mediawiki.inspect.js
M resources/src/mediawiki/mediawiki.js
11 files changed, 23 insertions(+), 23 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/core 
refs/changes/72/379772/1

diff --git a/resources/src/jquery/jquery.accessKeyLabel.js 
b/resources/src/jquery/jquery.accessKeyLabel.js
index 4f900a4..91b7035 100644
--- a/resources/src/jquery/jquery.accessKeyLabel.js
+++ b/resources/src/jquery/jquery.accessKeyLabel.js
@@ -137,7 +137,7 @@
                }
 
                parts = ( mw.msg( 'word-separator' ) + mw.msg( 'brackets' ) 
).split( '$1' );
-               regexp = new RegExp( $.map( parts, mw.RegExp.escape ).join( 
'.*?' ) + '$' );
+               regexp = new RegExp( parts.map( mw.RegExp.escape ).join( '.*?' 
) + '$' );
                newTitle = oldTitle.replace( regexp, '' );
                accessKeyLabel = getAccessKeyLabel( element );
 
diff --git a/resources/src/jquery/jquery.color.js 
b/resources/src/jquery/jquery.color.js
index 847afd4..894cf86 100644
--- a/resources/src/jquery/jquery.color.js
+++ b/resources/src/jquery/jquery.color.js
@@ -28,7 +28,7 @@
        }
 
        // We override the animation for all of these color styles
-       $.each( [
+       [
                'backgroundColor',
                'borderBottomColor',
                'borderLeftColor',
@@ -36,7 +36,7 @@
                'borderTopColor',
                'color',
                'outlineColor'
-       ], function ( i, attr ) {
+       ].forEach( function ( attr ) {
                $.fx.step[ attr ] = function ( fx ) {
                        if ( !fx.colorInit ) {
                                fx.start = getColor( fx.elem, attr );
diff --git a/resources/src/jquery/jquery.localize.js 
b/resources/src/jquery/jquery.localize.js
index 05b3891..b1bf0f4 100644
--- a/resources/src/jquery/jquery.localize.js
+++ b/resources/src/jquery/jquery.localize.js
@@ -137,7 +137,7 @@
                // Attributes
                // Note: there's no way to prevent escaping of values being 
injected into attributes, this is
                // on purpose, not a design flaw.
-               $.each( attributes, function ( i, attr ) {
+               attributes.forEach( function ( attr ) {
                        var msgAttr = attr + '-msg';
                        $target.find( '[' + msgAttr + ']' ).each( function () {
                                var $el = $( this );
diff --git a/resources/src/jquery/jquery.tablesorter.js 
b/resources/src/jquery/jquery.tablesorter.js
index ecd376a..cac103e 100644
--- a/resources/src/jquery/jquery.tablesorter.js
+++ b/resources/src/jquery/jquery.tablesorter.js
@@ -77,7 +77,7 @@
                if ( node.tagName.toLowerCase() === 'img' ) {
                        return $node.attr( 'alt' ) || ''; // handle undefined 
alt
                }
-               return $.map( $.makeArray( node.childNodes ), function ( elem ) 
{
+               return $.makeArray( node.childNodes ).map( function ( elem ) {
                        if ( elem.nodeType === Node.ELEMENT_NODE ) {
                                return getElementSortKey( elem );
                        }
diff --git a/resources/src/mediawiki.language/mediawiki.language.months.js 
b/resources/src/mediawiki.language/mediawiki.language.months.js
index 5a1a5cb..77a59d3 100644
--- a/resources/src/mediawiki.language/mediawiki.language.months.js
+++ b/resources/src/mediawiki.language/mediawiki.language.months.js
@@ -21,8 +21,8 @@
                        'sep', 'oct', 'nov', 'dec'
                ];
 
-       // Function suitable for passing to jQuery.map
-       // Can't use mw.msg directly because jQuery.map passes element index as 
second argument
+       // Function suitable for passing to Array.prototype.map
+       // Can't use mw.msg directly because Array.prototype.map passes element 
index as second argument
        function mwMsgMapper( key ) {
                return mw.msg( key );
        }
@@ -48,9 +48,9 @@
                        genitive: monthGenMessages,
                        abbrev: monthAbbrevMessages
                },
-               names: $.map( monthMessages, mwMsgMapper ),
-               genitive: $.map( monthGenMessages, mwMsgMapper ),
-               abbrev: $.map( monthAbbrevMessages, mwMsgMapper )
+               names: monthMessages.map( mwMsgMapper ),
+               genitive: monthGenMessages.map( mwMsgMapper ),
+               abbrev: monthAbbrevMessages.map( mwMsgMapper )
        };
 
 }( mediaWiki, jQuery ) );
diff --git a/resources/src/mediawiki.legacy/wikibits.js 
b/resources/src/mediawiki.legacy/wikibits.js
index bd1b918..f5bdfd8 100644
--- a/resources/src/mediawiki.legacy/wikibits.js
+++ b/resources/src/mediawiki.legacy/wikibits.js
@@ -96,7 +96,7 @@
         *
         * @deprecated since 1.26
         */
-       $.each( [ 'write', 'writeln' ], function ( idx, method ) {
+       [ 'write', 'writeln' ].forEach( function ( method ) {
                mw.log.deprecate( document, method, function () {
                        $( 'body' ).append( $.parseHTML( 
Array.prototype.join.call( arguments, '' ) ) );
                }, 'Use jQuery or mw.loader.load instead.', 'document.' + 
method );
diff --git a/resources/src/mediawiki.special/mediawiki.special.apisandbox.js 
b/resources/src/mediawiki.special/mediawiki.special.apisandbox.js
index 9e8d4f4..7029116 100644
--- a/resources/src/mediawiki.special/mediawiki.special.apisandbox.js
+++ b/resources/src/mediawiki.special/mediawiki.special.apisandbox.js
@@ -194,7 +194,7 @@
                        multi: function () {
                                var map = this.paramInfo.submodules,
                                        v = this.isDisabled() ? this.paramInfo[ 
'default' ] : this.getApiValue();
-                               return v === undefined || v === '' ? [] : 
$.map( String( v ).split( '|' ), function ( v ) {
+                               return v === undefined || v === '' ? [] : 
String( v ).split( '|' ).map( function ( v ) {
                                        return { value: v, path: map[ v ] };
                                } );
                        }
@@ -488,7 +488,7 @@
                                                throw new Error( 'Unknown 
parameter type ' + pi.type );
                                        }
 
-                                       items = $.map( pi.type, function ( v ) {
+                                       items = pi.type.map( function ( v ) {
                                                var config = {
                                                        data: String( v ),
                                                        label: String( v ),
diff --git a/resources/src/mediawiki.special/mediawiki.special.import.js 
b/resources/src/mediawiki.special/mediawiki.special.import.js
index 3357461..2cb96af 100644
--- a/resources/src/mediawiki.special/mediawiki.special.import.js
+++ b/resources/src/mediawiki.special/mediawiki.special.import.js
@@ -11,7 +11,7 @@
                        option, options;
 
                if ( $selected.attr( 'data-subprojects' ) ) {
-                       options = $.map( $selected.attr( 'data-subprojects' 
).split( ' ' ), function ( el ) {
+                       options = $selected.attr( 'data-subprojects' ).split( ' 
' ).map( function ( el ) {
                                option = document.createElement( 'option' );
                                option.appendChild( document.createTextNode( el 
) );
                                option.setAttribute( 'value', el );
diff --git a/resources/src/mediawiki/api.js b/resources/src/mediawiki/api.js
index b4639ab..f178698 100644
--- a/resources/src/mediawiki/api.js
+++ b/resources/src/mediawiki/api.js
@@ -114,7 +114,7 @@
                 * @method
                 */
                abort: function () {
-                       $.each( this.requests, function ( index, request ) {
+                       this.requests.forEach( function ( request ) {
                                if ( request ) {
                                        request.abort();
                                }
diff --git a/resources/src/mediawiki/mediawiki.inspect.js 
b/resources/src/mediawiki/mediawiki.inspect.js
index 9332773..006ca1f 100644
--- a/resources/src/mediawiki/mediawiki.inspect.js
+++ b/resources/src/mediawiki/mediawiki.inspect.js
@@ -47,7 +47,7 @@
                        var modules = inspect.getLoadedModules(),
                                graph = {};
 
-                       $.each( modules, function ( moduleIndex, moduleName ) {
+                       modules.forEach( function ( moduleName ) {
                                var dependencies = mw.loader.moduleRegistry[ 
moduleName ].dependencies || [];
 
                                if ( !hasOwn.call( graph, moduleName ) ) {
@@ -164,7 +164,7 @@
                 * @return {Array} List of module names
                 */
                getLoadedModules: function () {
-                       return $.grep( mw.loader.getModuleNames(), function ( 
module ) {
+                       return mw.loader.getModuleNames().filter( function ( 
module ) {
                                return mw.loader.getState( module ) === 'ready';
                        } );
                },
@@ -206,7 +206,7 @@
                                Array.prototype.slice.call( arguments ) :
                                $.map( inspect.reports, function ( v, k ) { 
return k; } );
 
-                       $.each( reports, function ( index, name ) {
+                       reports.forEach( function ( name ) {
                                inspect.dumpTable( inspect.reports[ name ]() );
                        } );
                },
@@ -224,7 +224,7 @@
                         */
                        size: function () {
                                // Map each module to a descriptor object.
-                               var modules = $.map( 
inspect.getLoadedModules(), function ( module ) {
+                               var modules = inspect.getLoadedModules().map( 
function ( module ) {
                                        return {
                                                name: module,
                                                size: inspect.getModuleSize( 
module )
@@ -235,7 +235,7 @@
                                sortByProperty( modules, 'size', true );
 
                                // Convert size to human-readable string.
-                               $.each( modules, function ( i, module ) {
+                               modules.forEach( function ( module ) {
                                        module.sizeInBytes = module.size;
                                        module.size = humanSize( module.size );
                                } );
@@ -252,7 +252,7 @@
                        css: function () {
                                var modules = [];
 
-                               $.each( inspect.getLoadedModules(), function ( 
index, name ) {
+                               inspect.getLoadedModules().forEach( function ( 
name ) {
                                        var css, stats, module = 
mw.loader.moduleRegistry[ name ];
 
                                        try {
@@ -306,7 +306,7 @@
                                pattern = new RegExp( mw.RegExp.escape( pattern 
), 'g' );
                        }
 
-                       return $.grep( inspect.getLoadedModules(), function ( 
moduleName ) {
+                       return inspect.getLoadedModules().filter( function ( 
moduleName ) {
                                var module = mw.loader.moduleRegistry[ 
moduleName ];
 
                                // Grep module's JavaScript
diff --git a/resources/src/mediawiki/mediawiki.js 
b/resources/src/mediawiki/mediawiki.js
index 506d60a..aae292d 100644
--- a/resources/src/mediawiki/mediawiki.js
+++ b/resources/src/mediawiki/mediawiki.js
@@ -1474,7 +1474,7 @@
                                        } );
                                }
 
-                               $.each( dependencies, function ( idx, module ) {
+                               dependencies.forEach( function ( module ) {
                                        var state = mw.loader.getState( module 
);
                                        // Only queue modules that are still in 
the initial 'registered' state
                                        // (not ones already loading, ready or 
error).

-- 
To view, visit https://gerrit.wikimedia.org/r/379772
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I985ddf710e13c9ae788245349e2791571aeec97e
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/core
Gerrit-Branch: master
Gerrit-Owner: Fomafix <foma...@googlemail.com>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to