aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.eslintrc4
-rw-r--r--dist/.eslintrc1
-rw-r--r--package.json2
-rw-r--r--src/attributes/prop.js17
-rw-r--r--src/attributes/val.js26
-rw-r--r--src/core.js11
-rw-r--r--src/core/access.js15
-rw-r--r--src/css.js16
-rw-r--r--src/data.js34
-rw-r--r--src/effects.js11
-rw-r--r--src/event.js14
-rw-r--r--src/manipulation/getAll.js26
-rw-r--r--src/serialize.js18
-rw-r--r--src/traversing/findFilter.js12
-rw-r--r--test/.eslintrc1
15 files changed, 135 insertions, 73 deletions
diff --git a/.eslintrc b/.eslintrc
index bbf96f809..6dcb6353a 100644
--- a/.eslintrc
+++ b/.eslintrc
@@ -3,9 +3,5 @@
"root": true,
"env": {
"node": true
- },
- rules: {
- // Until https://github.com/jquery/eslint-config-jquery/issues/7 is resolved
- "no-unused-expressions": "error"
}
}
diff --git a/dist/.eslintrc b/dist/.eslintrc
index 22a970f8a..d21ae4d16 100644
--- a/dist/.eslintrc
+++ b/dist/.eslintrc
@@ -5,6 +5,7 @@
"no-multiple-empty-lines": "off",
// Because sizze is not compatible to jquery code style
+ "no-nested-ternary": "off",
"no-unused-expressions": "off",
"lines-around-comment": "off",
"space-in-parens": "off",
diff --git a/package.json b/package.json
index 6ef29dc0e..c5cdc6a3c 100644
--- a/package.json
+++ b/package.json
@@ -29,7 +29,7 @@
"commitplease": "2.3.1",
"core-js": "2.2.2",
"cross-spawn": "2.2.3",
- "eslint-config-jquery": "0.1.6",
+ "eslint-config-jquery": "1.0.0",
"grunt": "1.0.1",
"grunt-babel": "6.0.0",
"grunt-cli": "1.2.0",
diff --git a/src/attributes/prop.js b/src/attributes/prop.js
index b69177adf..49ac244df 100644
--- a/src/attributes/prop.js
+++ b/src/attributes/prop.js
@@ -66,12 +66,19 @@ jQuery.extend( {
// Use proper attribute retrieval(#12072)
var tabindex = jQuery.find.attr( elem, "tabindex" );
- return tabindex ?
- parseInt( tabindex, 10 ) :
+ if ( tabindex ) {
+ return parseInt( tabindex, 10 );
+ }
+
+ if (
rfocusable.test( elem.nodeName ) ||
- rclickable.test( elem.nodeName ) && elem.href ?
- 0 :
- -1;
+ rclickable.test( elem.nodeName ) &&
+ elem.href
+ ) {
+ return 0;
+ }
+
+ return -1;
}
}
},
diff --git a/src/attributes/val.js b/src/attributes/val.js
index 1ba42a5c8..e23aa9a21 100644
--- a/src/attributes/val.js
+++ b/src/attributes/val.js
@@ -28,13 +28,13 @@ jQuery.fn.extend( {
ret = elem.value;
- return typeof ret === "string" ?
-
- // Handle most common string cases
- ret.replace( rreturn, "" ) :
+ // Handle most common string cases
+ if ( typeof ret === "string" ) {
+ return ret.replace( rreturn, "" );
+ }
- // Handle cases where value is null/undef or number
- ret == null ? "" : ret;
+ // Handle cases where value is null/undef or number
+ return ret == null ? "" : ret;
}
return;
@@ -96,15 +96,19 @@ jQuery.extend( {
},
select: {
get: function( elem ) {
- var value, option,
+ var value, option, i,
options = elem.options,
index = elem.selectedIndex,
one = elem.type === "select-one",
values = one ? null : [],
- max = one ? index + 1 : options.length,
- i = index < 0 ?
- max :
- one ? index : 0;
+ max = one ? index + 1 : options.length;
+
+ if ( index < 0 ) {
+ i = max;
+
+ } else {
+ i = one ? index : 0;
+ }
// Loop through all the selected options
for ( ; i < max; i++ ) {
diff --git a/src/core.js b/src/core.js
index 5bdb2169c..68ba9a5c2 100644
--- a/src/core.js
+++ b/src/core.js
@@ -64,13 +64,14 @@ jQuery.fn = jQuery.prototype = {
// Get the Nth element in the matched element set OR
// Get the whole matched element set as a clean array
get: function( num ) {
- return num != null ?
- // Return just the one element from the set
- ( num < 0 ? this[ num + this.length ] : this[ num ] ) :
+ // Return all the elements in a clean array
+ if ( num == null ) {
+ return slice.call( this );
+ }
- // Return all the elements in a clean array
- slice.call( this );
+ // Return just the one element from the set
+ return num < 0 ? this[ num + this.length ] : this[ num ];
},
// Take an array of elements and push it onto the stack
diff --git a/src/core/access.js b/src/core/access.js
index 735c75711..86cdbc7e6 100644
--- a/src/core/access.js
+++ b/src/core/access.js
@@ -53,13 +53,16 @@ var access = function( elems, fn, key, value, chainable, emptyGet, raw ) {
}
}
- return chainable ?
- elems :
+ if ( chainable ) {
+ return elems;
+ }
+
+ // Gets
+ if ( bulk ) {
+ return fn.call( elems );
+ }
- // Gets
- bulk ?
- fn.call( elems ) :
- len ? fn( elems[ 0 ], key ) : emptyGet;
+ return len ? fn( elems[ 0 ], key ) : emptyGet;
};
return access;
diff --git a/src/css.js b/src/css.js
index 795ca2796..5e4451193 100644
--- a/src/css.js
+++ b/src/css.js
@@ -70,15 +70,17 @@ function setPositiveNumber( elem, value, subtract ) {
}
function augmentWidthOrHeight( elem, name, extra, isBorderBox, styles ) {
- var i = extra === ( isBorderBox ? "border" : "content" ) ?
-
- // If we already have the right measurement, avoid augmentation
- 4 :
+ var i,
+ val = 0;
- // Otherwise initialize for horizontal or vertical properties
- name === "width" ? 1 : 0,
+ // If we already have the right measurement, avoid augmentation
+ if ( extra === ( isBorderBox ? "border" : "content" ) ) {
+ i = 4;
- val = 0;
+ // Otherwise initialize for horizontal or vertical properties
+ } else {
+ i = name === "width" ? 1 : 0;
+ }
for ( ; i < 4; i += 2 ) {
diff --git a/src/data.js b/src/data.js
index 49964f7d5..087ce4eb7 100644
--- a/src/data.js
+++ b/src/data.js
@@ -20,6 +20,31 @@ define( [
var rbrace = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/,
rmultiDash = /[A-Z]/g;
+function getData( data ) {
+ if ( data === "true" ) {
+ return true;
+ }
+
+ if ( data === "false" ) {
+ return false;
+ }
+
+ if ( data === "null" ) {
+ return null;
+ }
+
+ // Only convert to a number if it doesn't change the string
+ if ( data === +data + "" ) {
+ return +data;
+ }
+
+ if ( rbrace.test( data ) ) {
+ return JSON.parse( data );
+ }
+
+ return data;
+}
+
function dataAttr( elem, key, data ) {
var name;
@@ -31,14 +56,7 @@ function dataAttr( elem, key, data ) {
if ( typeof data === "string" ) {
try {
- data = data === "true" ? true :
- data === "false" ? false :
- data === "null" ? null :
-
- // Only convert to a number if it doesn't change the string
- +data + "" === data ? +data :
- rbrace.test( data ) ? JSON.parse( data ) :
- data;
+ data = getData( data );
} catch ( e ) {}
// Make sure we set the data so it isn't changed later
diff --git a/src/effects.js b/src/effects.js
index cc21cfcfa..287ecfde1 100644
--- a/src/effects.js
+++ b/src/effects.js
@@ -453,9 +453,14 @@ jQuery.speed = function( speed, easing, fn ) {
opt.duration = 0;
} else {
- opt.duration = typeof opt.duration === "number" ?
- opt.duration : opt.duration in jQuery.fx.speeds ?
- jQuery.fx.speeds[ opt.duration ] : jQuery.fx.speeds._default;
+ if ( typeof opt.duration !== "number" ) {
+ if ( opt.duration in jQuery.fx.speeds ) {
+ opt.duration = jQuery.fx.speeds[ opt.duration ];
+
+ } else {
+ opt.duration = jQuery.fx.speeds._default;
+ }
+ }
}
// Normalize opt.queue - true/undefined/null -> "fx"
diff --git a/src/event.js b/src/event.js
index cf10953f0..b3fa59de5 100644
--- a/src/event.js
+++ b/src/event.js
@@ -633,7 +633,19 @@ jQuery.each( {
// Add which for click: 1 === left; 2 === middle; 3 === right
if ( !event.which && button !== undefined && rmouseEvent.test( event.type ) ) {
- return ( button & 1 ? 1 : ( button & 2 ? 3 : ( button & 4 ? 2 : 0 ) ) );
+ if ( button & 1 ) {
+ return 1;
+ }
+
+ if ( button & 2 ) {
+ return 3;
+ }
+
+ if ( button & 4 ) {
+ return 2;
+ }
+
+ return 0;
}
return event.which;
diff --git a/src/manipulation/getAll.js b/src/manipulation/getAll.js
index 85490d50e..f68e3219e 100644
--- a/src/manipulation/getAll.js
+++ b/src/manipulation/getAll.js
@@ -8,15 +8,23 @@ function getAll( context, tag ) {
// Support: IE <=9 - 11 only
// Use typeof to avoid zero-argument method invocation on host objects (#15151)
- var ret = typeof context.getElementsByTagName !== "undefined" ?
- context.getElementsByTagName( tag || "*" ) :
- typeof context.querySelectorAll !== "undefined" ?
- context.querySelectorAll( tag || "*" ) :
- [];
-
- return tag === undefined || tag && jQuery.nodeName( context, tag ) ?
- jQuery.merge( [ context ], ret ) :
- ret;
+ var ret;
+
+ if ( typeof context.getElementsByTagName !== "undefined" ) {
+ ret = context.getElementsByTagName( tag || "*" );
+
+ } else if ( typeof context.querySelectorAll !== "undefined" ) {
+ ret = context.querySelectorAll( tag || "*" );
+
+ } else {
+ ret = [];
+ }
+
+ if ( tag === undefined || tag && jQuery.nodeName( context, tag ) ) {
+ return jQuery.merge( [ context ], ret );
+ }
+
+ return ret;
}
return getAll;
diff --git a/src/serialize.js b/src/serialize.js
index 60d936251..35dcf04f9 100644
--- a/src/serialize.js
+++ b/src/serialize.js
@@ -111,13 +111,17 @@ jQuery.fn.extend( {
.map( function( i, elem ) {
var val = jQuery( this ).val();
- return val == null ?
- null :
- jQuery.isArray( val ) ?
- jQuery.map( val, function( val ) {
- return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) };
- } ) :
- { name: elem.name, value: val.replace( rCRLF, "\r\n" ) };
+ if ( val == null ) {
+ return null;
+ }
+
+ if ( jQuery.isArray( val ) ) {
+ return jQuery.map( val, function( val ) {
+ return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) };
+ } );
+ }
+
+ return { name: elem.name, value: val.replace( rCRLF, "\r\n" ) };
} ).get();
}
} );
diff --git a/src/traversing/findFilter.js b/src/traversing/findFilter.js
index c742fb5c3..92d6753b4 100644
--- a/src/traversing/findFilter.js
+++ b/src/traversing/findFilter.js
@@ -45,11 +45,13 @@ jQuery.filter = function( expr, elems, not ) {
expr = ":not(" + expr + ")";
}
- return elems.length === 1 && elem.nodeType === 1 ?
- jQuery.find.matchesSelector( elem, expr ) ? [ elem ] : [] :
- jQuery.find.matches( expr, jQuery.grep( elems, function( elem ) {
- return elem.nodeType === 1;
- } ) );
+ if ( elems.length === 1 && elem.nodeType === 1 ) {
+ return jQuery.find.matchesSelector( elem, expr ) ? [ elem ] : [];
+ }
+
+ return jQuery.find.matches( expr, jQuery.grep( elems, function( elem ) {
+ return elem.nodeType === 1;
+ } ) );
};
jQuery.fn.extend( {
diff --git a/test/.eslintrc b/test/.eslintrc
index 7887ec567..744de89ec 100644
--- a/test/.eslintrc
+++ b/test/.eslintrc
@@ -50,7 +50,6 @@
"brace-style": "off",
"key-spacing": "off",
"camelcase": "off",
- "dot-notaion": "off",
// Not really too much - waiting autofix features for these rules
"lines-around-comment": "off",