utopia-project 0.20.0 → 0.20.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bb20d4e30052d026d73a9d81d0aa4834756c0f0ab6b8bd352ba51e3cabadabf3
4
- data.tar.gz: d1503c89cf8383adca84b0c47a91a7d224fbde80e2aa7363c9bb7cd5958b95f4
3
+ metadata.gz: d692adff15f4dd5711632f3bfa8a8a92a2c058aab5cd54d196dbf97f6d1a0f48
4
+ data.tar.gz: 04be5590c564880e2ee7914db3de30c5929d839a4bda61e403a9341da34cd121
5
5
  SHA512:
6
- metadata.gz: 46c2fed2d33cbd886057eb31c86b540dd8d66abce8a09bf80dfde36dcc1cc6fe3cfc6d7c140d05c4b30aabfd523cdbc78b6998133e0fc7cc5f5ef92e88fae5d1
7
- data.tar.gz: 20eb201ef1cca0e746e25da9f2db3210881ebf2709131831f672f2e0daa66f53009a9b656c3eb638a2391a8cfb8eec095bf7bbdbefcd25a897b1cd187d3f7d71
6
+ metadata.gz: aea08b0eb773a62fb522e356bc3899b920c00ac4de5ba7261a651c668e894f0d0fadf97798e8d989b28765d7808e5d10ba3f68abec8f8c5d598e8577dddc4733
7
+ data.tar.gz: 935b0f4dfd424637e1bf8989150b943f7fe137890d721b3e0331cb7c364a58a78a480801840f210df5d69ae075e728c49754e887fa58c17efeeb18f33e0f0eab
checksums.yaml.gz.sig CHANGED
Binary file
@@ -55,9 +55,11 @@ module Utopia
55
55
  if header.first_child.to_plaintext.include?(name)
56
56
  # Now subsequent children:
57
57
  current = header.next
58
- while current.type != :header and following = current.next
58
+
59
+ # Delete everything in the section until we encounter another header:
60
+ while current && current.type != :header
59
61
  current.delete
60
- current = following
62
+ current = current.next
61
63
  end
62
64
 
63
65
  return yield(header)
@@ -22,6 +22,6 @@
22
22
 
23
23
  module Utopia
24
24
  module Project
25
- VERSION = "0.20.0"
25
+ VERSION = "0.20.1"
26
26
  end
27
27
  end
@@ -1,15 +1,15 @@
1
1
  /*!
2
- * jQuery JavaScript Library v3.5.1
2
+ * jQuery JavaScript Library v3.6.0
3
3
  * https://jquery.com/
4
4
  *
5
5
  * Includes Sizzle.js
6
6
  * https://sizzlejs.com/
7
7
  *
8
- * Copyright JS Foundation and other contributors
8
+ * Copyright OpenJS Foundation and other contributors
9
9
  * Released under the MIT license
10
10
  * https://jquery.org/license
11
11
  *
12
- * Date: 2020-05-04T22:49Z
12
+ * Date: 2021-03-02T17:08Z
13
13
  */
14
14
  ( function( global, factory ) {
15
15
 
@@ -76,12 +76,16 @@ var support = {};
76
76
 
77
77
  var isFunction = function isFunction( obj ) {
78
78
 
79
- // Support: Chrome <=57, Firefox <=52
80
- // In some browsers, typeof returns "function" for HTML <object> elements
81
- // (i.e., `typeof document.createElement( "object" ) === "function"`).
82
- // We don't want to classify *any* DOM node as a function.
83
- return typeof obj === "function" && typeof obj.nodeType !== "number";
84
- };
79
+ // Support: Chrome <=57, Firefox <=52
80
+ // In some browsers, typeof returns "function" for HTML <object> elements
81
+ // (i.e., `typeof document.createElement( "object" ) === "function"`).
82
+ // We don't want to classify *any* DOM node as a function.
83
+ // Support: QtWeb <=3.8.5, WebKit <=534.34, wkhtmltopdf tool <=0.12.5
84
+ // Plus for old WebKit, typeof returns "function" for HTML collections
85
+ // (e.g., `typeof document.getElementsByTagName("div") === "function"`). (gh-4756)
86
+ return typeof obj === "function" && typeof obj.nodeType !== "number" &&
87
+ typeof obj.item !== "function";
88
+ };
85
89
 
86
90
 
87
91
  var isWindow = function isWindow( obj ) {
@@ -147,7 +151,7 @@ function toType( obj ) {
147
151
 
148
152
 
149
153
  var
150
- version = "3.5.1",
154
+ version = "3.6.0",
151
155
 
152
156
  // Define a local copy of jQuery
153
157
  jQuery = function( selector, context ) {
@@ -401,7 +405,7 @@ jQuery.extend( {
401
405
  if ( isArrayLike( Object( arr ) ) ) {
402
406
  jQuery.merge( ret,
403
407
  typeof arr === "string" ?
404
- [ arr ] : arr
408
+ [ arr ] : arr
405
409
  );
406
410
  } else {
407
411
  push.call( ret, arr );
@@ -496,9 +500,9 @@ if ( typeof Symbol === "function" ) {
496
500
 
497
501
  // Populate the class2type map
498
502
  jQuery.each( "Boolean Number String Function Array Date RegExp Object Error Symbol".split( " " ),
499
- function( _i, name ) {
500
- class2type[ "[object " + name + "]" ] = name.toLowerCase();
501
- } );
503
+ function( _i, name ) {
504
+ class2type[ "[object " + name + "]" ] = name.toLowerCase();
505
+ } );
502
506
 
503
507
  function isArrayLike( obj ) {
504
508
 
@@ -518,14 +522,14 @@ function isArrayLike( obj ) {
518
522
  }
519
523
  var Sizzle =
520
524
  /*!
521
- * Sizzle CSS Selector Engine v2.3.5
525
+ * Sizzle CSS Selector Engine v2.3.6
522
526
  * https://sizzlejs.com/
523
527
  *
524
528
  * Copyright JS Foundation and other contributors
525
529
  * Released under the MIT license
526
530
  * https://js.foundation/
527
531
  *
528
- * Date: 2020-03-14
532
+ * Date: 2021-02-16
529
533
  */
530
534
  ( function( window ) {
531
535
  var i,
@@ -1108,8 +1112,8 @@ support = Sizzle.support = {};
1108
1112
  * @returns {Boolean} True iff elem is a non-HTML XML node
1109
1113
  */
1110
1114
  isXML = Sizzle.isXML = function( elem ) {
1111
- var namespace = elem.namespaceURI,
1112
- docElem = ( elem.ownerDocument || elem ).documentElement;
1115
+ var namespace = elem && elem.namespaceURI,
1116
+ docElem = elem && ( elem.ownerDocument || elem ).documentElement;
1113
1117
 
1114
1118
  // Support: IE <=8
1115
1119
  // Assume HTML when documentElement doesn't yet exist, such as inside loading iframes
@@ -3024,9 +3028,9 @@ var rneedsContext = jQuery.expr.match.needsContext;
3024
3028
 
3025
3029
  function nodeName( elem, name ) {
3026
3030
 
3027
- return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase();
3031
+ return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase();
3028
3032
 
3029
- };
3033
+ }
3030
3034
  var rsingleTag = ( /^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i );
3031
3035
 
3032
3036
 
@@ -3997,8 +4001,8 @@ jQuery.extend( {
3997
4001
  resolveContexts = Array( i ),
3998
4002
  resolveValues = slice.call( arguments ),
3999
4003
 
4000
- // the master Deferred
4001
- master = jQuery.Deferred(),
4004
+ // the primary Deferred
4005
+ primary = jQuery.Deferred(),
4002
4006
 
4003
4007
  // subordinate callback factory
4004
4008
  updateFunc = function( i ) {
@@ -4006,30 +4010,30 @@ jQuery.extend( {
4006
4010
  resolveContexts[ i ] = this;
4007
4011
  resolveValues[ i ] = arguments.length > 1 ? slice.call( arguments ) : value;
4008
4012
  if ( !( --remaining ) ) {
4009
- master.resolveWith( resolveContexts, resolveValues );
4013
+ primary.resolveWith( resolveContexts, resolveValues );
4010
4014
  }
4011
4015
  };
4012
4016
  };
4013
4017
 
4014
4018
  // Single- and empty arguments are adopted like Promise.resolve
4015
4019
  if ( remaining <= 1 ) {
4016
- adoptValue( singleValue, master.done( updateFunc( i ) ).resolve, master.reject,
4020
+ adoptValue( singleValue, primary.done( updateFunc( i ) ).resolve, primary.reject,
4017
4021
  !remaining );
4018
4022
 
4019
4023
  // Use .then() to unwrap secondary thenables (cf. gh-3000)
4020
- if ( master.state() === "pending" ||
4024
+ if ( primary.state() === "pending" ||
4021
4025
  isFunction( resolveValues[ i ] && resolveValues[ i ].then ) ) {
4022
4026
 
4023
- return master.then();
4027
+ return primary.then();
4024
4028
  }
4025
4029
  }
4026
4030
 
4027
4031
  // Multiple arguments are aggregated like Promise.all array elements
4028
4032
  while ( i-- ) {
4029
- adoptValue( resolveValues[ i ], updateFunc( i ), master.reject );
4033
+ adoptValue( resolveValues[ i ], updateFunc( i ), primary.reject );
4030
4034
  }
4031
4035
 
4032
- return master.promise();
4036
+ return primary.promise();
4033
4037
  }
4034
4038
  } );
4035
4039
 
@@ -4180,8 +4184,8 @@ var access = function( elems, fn, key, value, chainable, emptyGet, raw ) {
4180
4184
  for ( ; i < len; i++ ) {
4181
4185
  fn(
4182
4186
  elems[ i ], key, raw ?
4183
- value :
4184
- value.call( elems[ i ], i, fn( elems[ i ], key ) )
4187
+ value :
4188
+ value.call( elems[ i ], i, fn( elems[ i ], key ) )
4185
4189
  );
4186
4190
  }
4187
4191
  }
@@ -5089,10 +5093,7 @@ function buildFragment( elems, context, scripts, selection, ignored ) {
5089
5093
  }
5090
5094
 
5091
5095
 
5092
- var
5093
- rkeyEvent = /^key/,
5094
- rmouseEvent = /^(?:mouse|pointer|contextmenu|drag|drop)|click/,
5095
- rtypenamespace = /^([^.]*)(?:\.(.+)|)/;
5096
+ var rtypenamespace = /^([^.]*)(?:\.(.+)|)/;
5096
5097
 
5097
5098
  function returnTrue() {
5098
5099
  return true;
@@ -5387,8 +5388,8 @@ jQuery.event = {
5387
5388
  event = jQuery.event.fix( nativeEvent ),
5388
5389
 
5389
5390
  handlers = (
5390
- dataPriv.get( this, "events" ) || Object.create( null )
5391
- )[ event.type ] || [],
5391
+ dataPriv.get( this, "events" ) || Object.create( null )
5392
+ )[ event.type ] || [],
5392
5393
  special = jQuery.event.special[ event.type ] || {};
5393
5394
 
5394
5395
  // Use the fix-ed jQuery.Event rather than the (read-only) native event
@@ -5512,12 +5513,12 @@ jQuery.event = {
5512
5513
  get: isFunction( hook ) ?
5513
5514
  function() {
5514
5515
  if ( this.originalEvent ) {
5515
- return hook( this.originalEvent );
5516
+ return hook( this.originalEvent );
5516
5517
  }
5517
5518
  } :
5518
5519
  function() {
5519
5520
  if ( this.originalEvent ) {
5520
- return this.originalEvent[ name ];
5521
+ return this.originalEvent[ name ];
5521
5522
  }
5522
5523
  },
5523
5524
 
@@ -5656,7 +5657,13 @@ function leverageNative( el, type, expectSync ) {
5656
5657
  // Cancel the outer synthetic event
5657
5658
  event.stopImmediatePropagation();
5658
5659
  event.preventDefault();
5659
- return result.value;
5660
+
5661
+ // Support: Chrome 86+
5662
+ // In Chrome, if an element having a focusout handler is blurred by
5663
+ // clicking outside of it, it invokes the handler synchronously. If
5664
+ // that handler calls `.remove()` on the element, the data is cleared,
5665
+ // leaving `result` undefined. We need to guard against this.
5666
+ return result && result.value;
5660
5667
  }
5661
5668
 
5662
5669
  // If this is an inner synthetic event for an event with a bubbling surrogate
@@ -5821,34 +5828,7 @@ jQuery.each( {
5821
5828
  targetTouches: true,
5822
5829
  toElement: true,
5823
5830
  touches: true,
5824
-
5825
- which: function( event ) {
5826
- var button = event.button;
5827
-
5828
- // Add which for key events
5829
- if ( event.which == null && rkeyEvent.test( event.type ) ) {
5830
- return event.charCode != null ? event.charCode : event.keyCode;
5831
- }
5832
-
5833
- // Add which for click: 1 === left; 2 === middle; 3 === right
5834
- if ( !event.which && button !== undefined && rmouseEvent.test( event.type ) ) {
5835
- if ( button & 1 ) {
5836
- return 1;
5837
- }
5838
-
5839
- if ( button & 2 ) {
5840
- return 3;
5841
- }
5842
-
5843
- if ( button & 4 ) {
5844
- return 2;
5845
- }
5846
-
5847
- return 0;
5848
- }
5849
-
5850
- return event.which;
5851
- }
5831
+ which: true
5852
5832
  }, jQuery.event.addProp );
5853
5833
 
5854
5834
  jQuery.each( { focus: "focusin", blur: "focusout" }, function( type, delegateType ) {
@@ -5874,6 +5854,12 @@ jQuery.each( { focus: "focusin", blur: "focusout" }, function( type, delegateTyp
5874
5854
  return true;
5875
5855
  },
5876
5856
 
5857
+ // Suppress native focus or blur as it's already being fired
5858
+ // in leverageNative.
5859
+ _default: function() {
5860
+ return true;
5861
+ },
5862
+
5877
5863
  delegateType: delegateType
5878
5864
  };
5879
5865
  } );
@@ -6541,6 +6527,10 @@ var rboxStyle = new RegExp( cssExpand.join( "|" ), "i" );
6541
6527
  // set in CSS while `offset*` properties report correct values.
6542
6528
  // Behavior in IE 9 is more subtle than in newer versions & it passes
6543
6529
  // some versions of this test; make sure not to make it pass there!
6530
+ //
6531
+ // Support: Firefox 70+
6532
+ // Only Firefox includes border widths
6533
+ // in computed dimensions. (gh-4529)
6544
6534
  reliableTrDimensions: function() {
6545
6535
  var table, tr, trChild, trStyle;
6546
6536
  if ( reliableTrDimensionsVal == null ) {
@@ -6548,17 +6538,32 @@ var rboxStyle = new RegExp( cssExpand.join( "|" ), "i" );
6548
6538
  tr = document.createElement( "tr" );
6549
6539
  trChild = document.createElement( "div" );
6550
6540
 
6551
- table.style.cssText = "position:absolute;left:-11111px";
6541
+ table.style.cssText = "position:absolute;left:-11111px;border-collapse:separate";
6542
+ tr.style.cssText = "border:1px solid";
6543
+
6544
+ // Support: Chrome 86+
6545
+ // Height set through cssText does not get applied.
6546
+ // Computed height then comes back as 0.
6552
6547
  tr.style.height = "1px";
6553
6548
  trChild.style.height = "9px";
6554
6549
 
6550
+ // Support: Android 8 Chrome 86+
6551
+ // In our bodyBackground.html iframe,
6552
+ // display for all div elements is set to "inline",
6553
+ // which causes a problem only in Android 8 Chrome 86.
6554
+ // Ensuring the div is display: block
6555
+ // gets around this issue.
6556
+ trChild.style.display = "block";
6557
+
6555
6558
  documentElement
6556
6559
  .appendChild( table )
6557
6560
  .appendChild( tr )
6558
6561
  .appendChild( trChild );
6559
6562
 
6560
6563
  trStyle = window.getComputedStyle( tr );
6561
- reliableTrDimensionsVal = parseInt( trStyle.height ) > 3;
6564
+ reliableTrDimensionsVal = ( parseInt( trStyle.height, 10 ) +
6565
+ parseInt( trStyle.borderTopWidth, 10 ) +
6566
+ parseInt( trStyle.borderBottomWidth, 10 ) ) === tr.offsetHeight;
6562
6567
 
6563
6568
  documentElement.removeChild( table );
6564
6569
  }
@@ -7022,10 +7027,10 @@ jQuery.each( [ "height", "width" ], function( _i, dimension ) {
7022
7027
  // Running getBoundingClientRect on a disconnected node
7023
7028
  // in IE throws an error.
7024
7029
  ( !elem.getClientRects().length || !elem.getBoundingClientRect().width ) ?
7025
- swap( elem, cssShow, function() {
7026
- return getWidthOrHeight( elem, dimension, extra );
7027
- } ) :
7028
- getWidthOrHeight( elem, dimension, extra );
7030
+ swap( elem, cssShow, function() {
7031
+ return getWidthOrHeight( elem, dimension, extra );
7032
+ } ) :
7033
+ getWidthOrHeight( elem, dimension, extra );
7029
7034
  }
7030
7035
  },
7031
7036
 
@@ -7084,7 +7089,7 @@ jQuery.cssHooks.marginLeft = addGetHookIf( support.reliableMarginLeft,
7084
7089
  swap( elem, { marginLeft: 0 }, function() {
7085
7090
  return elem.getBoundingClientRect().left;
7086
7091
  } )
7087
- ) + "px";
7092
+ ) + "px";
7088
7093
  }
7089
7094
  }
7090
7095
  );
@@ -7223,7 +7228,7 @@ Tween.propHooks = {
7223
7228
  if ( jQuery.fx.step[ tween.prop ] ) {
7224
7229
  jQuery.fx.step[ tween.prop ]( tween );
7225
7230
  } else if ( tween.elem.nodeType === 1 && (
7226
- jQuery.cssHooks[ tween.prop ] ||
7231
+ jQuery.cssHooks[ tween.prop ] ||
7227
7232
  tween.elem.style[ finalPropName( tween.prop ) ] != null ) ) {
7228
7233
  jQuery.style( tween.elem, tween.prop, tween.now + tween.unit );
7229
7234
  } else {
@@ -7468,7 +7473,7 @@ function defaultPrefilter( elem, props, opts ) {
7468
7473
 
7469
7474
  anim.done( function() {
7470
7475
 
7471
- /* eslint-enable no-loop-func */
7476
+ /* eslint-enable no-loop-func */
7472
7477
 
7473
7478
  // The final step of a "hide" animation is actually hiding the element
7474
7479
  if ( !hidden ) {
@@ -7588,7 +7593,7 @@ function Animation( elem, properties, options ) {
7588
7593
  tweens: [],
7589
7594
  createTween: function( prop, end ) {
7590
7595
  var tween = jQuery.Tween( elem, animation.opts, prop, end,
7591
- animation.opts.specialEasing[ prop ] || animation.opts.easing );
7596
+ animation.opts.specialEasing[ prop ] || animation.opts.easing );
7592
7597
  animation.tweens.push( tween );
7593
7598
  return tween;
7594
7599
  },
@@ -7761,7 +7766,8 @@ jQuery.fn.extend( {
7761
7766
  anim.stop( true );
7762
7767
  }
7763
7768
  };
7764
- doAnimation.finish = doAnimation;
7769
+
7770
+ doAnimation.finish = doAnimation;
7765
7771
 
7766
7772
  return empty || optall.queue === false ?
7767
7773
  this.each( doAnimation ) :
@@ -8401,8 +8407,8 @@ jQuery.fn.extend( {
8401
8407
  if ( this.setAttribute ) {
8402
8408
  this.setAttribute( "class",
8403
8409
  className || value === false ?
8404
- "" :
8405
- dataPriv.get( this, "__className__" ) || ""
8410
+ "" :
8411
+ dataPriv.get( this, "__className__" ) || ""
8406
8412
  );
8407
8413
  }
8408
8414
  }
@@ -8417,7 +8423,7 @@ jQuery.fn.extend( {
8417
8423
  while ( ( elem = this[ i++ ] ) ) {
8418
8424
  if ( elem.nodeType === 1 &&
8419
8425
  ( " " + stripAndCollapse( getClass( elem ) ) + " " ).indexOf( className ) > -1 ) {
8420
- return true;
8426
+ return true;
8421
8427
  }
8422
8428
  }
8423
8429
 
@@ -8707,9 +8713,7 @@ jQuery.extend( jQuery.event, {
8707
8713
  special.bindType || type;
8708
8714
 
8709
8715
  // jQuery handler
8710
- handle = (
8711
- dataPriv.get( cur, "events" ) || Object.create( null )
8712
- )[ event.type ] &&
8716
+ handle = ( dataPriv.get( cur, "events" ) || Object.create( null ) )[ event.type ] &&
8713
8717
  dataPriv.get( cur, "handle" );
8714
8718
  if ( handle ) {
8715
8719
  handle.apply( cur, data );
@@ -8856,7 +8860,7 @@ var rquery = ( /\?/ );
8856
8860
 
8857
8861
  // Cross-browser xml parsing
8858
8862
  jQuery.parseXML = function( data ) {
8859
- var xml;
8863
+ var xml, parserErrorElem;
8860
8864
  if ( !data || typeof data !== "string" ) {
8861
8865
  return null;
8862
8866
  }
@@ -8865,12 +8869,17 @@ jQuery.parseXML = function( data ) {
8865
8869
  // IE throws on parseFromString with invalid input.
8866
8870
  try {
8867
8871
  xml = ( new window.DOMParser() ).parseFromString( data, "text/xml" );
8868
- } catch ( e ) {
8869
- xml = undefined;
8870
- }
8872
+ } catch ( e ) {}
8871
8873
 
8872
- if ( !xml || xml.getElementsByTagName( "parsererror" ).length ) {
8873
- jQuery.error( "Invalid XML: " + data );
8874
+ parserErrorElem = xml && xml.getElementsByTagName( "parsererror" )[ 0 ];
8875
+ if ( !xml || parserErrorElem ) {
8876
+ jQuery.error( "Invalid XML: " + (
8877
+ parserErrorElem ?
8878
+ jQuery.map( parserErrorElem.childNodes, function( el ) {
8879
+ return el.textContent;
8880
+ } ).join( "\n" ) :
8881
+ data
8882
+ ) );
8874
8883
  }
8875
8884
  return xml;
8876
8885
  };
@@ -8971,16 +8980,14 @@ jQuery.fn.extend( {
8971
8980
  // Can add propHook for "elements" to filter or add form elements
8972
8981
  var elements = jQuery.prop( this, "elements" );
8973
8982
  return elements ? jQuery.makeArray( elements ) : this;
8974
- } )
8975
- .filter( function() {
8983
+ } ).filter( function() {
8976
8984
  var type = this.type;
8977
8985
 
8978
8986
  // Use .is( ":disabled" ) so that fieldset[disabled] works
8979
8987
  return this.name && !jQuery( this ).is( ":disabled" ) &&
8980
8988
  rsubmittable.test( this.nodeName ) && !rsubmitterTypes.test( type ) &&
8981
8989
  ( this.checked || !rcheckableType.test( type ) );
8982
- } )
8983
- .map( function( _i, elem ) {
8990
+ } ).map( function( _i, elem ) {
8984
8991
  var val = jQuery( this ).val();
8985
8992
 
8986
8993
  if ( val == null ) {
@@ -9033,7 +9040,8 @@ var
9033
9040
 
9034
9041
  // Anchor tag for parsing the document origin
9035
9042
  originAnchor = document.createElement( "a" );
9036
- originAnchor.href = location.href;
9043
+
9044
+ originAnchor.href = location.href;
9037
9045
 
9038
9046
  // Base "constructor" for jQuery.ajaxPrefilter and jQuery.ajaxTransport
9039
9047
  function addToPrefiltersOrTransports( structure ) {
@@ -9414,8 +9422,8 @@ jQuery.extend( {
9414
9422
  // Context for global events is callbackContext if it is a DOM node or jQuery collection
9415
9423
  globalEventContext = s.context &&
9416
9424
  ( callbackContext.nodeType || callbackContext.jquery ) ?
9417
- jQuery( callbackContext ) :
9418
- jQuery.event,
9425
+ jQuery( callbackContext ) :
9426
+ jQuery.event,
9419
9427
 
9420
9428
  // Deferreds
9421
9429
  deferred = jQuery.Deferred(),
@@ -9727,8 +9735,10 @@ jQuery.extend( {
9727
9735
  response = ajaxHandleResponses( s, jqXHR, responses );
9728
9736
  }
9729
9737
 
9730
- // Use a noop converter for missing script
9731
- if ( !isSuccess && jQuery.inArray( "script", s.dataTypes ) > -1 ) {
9738
+ // Use a noop converter for missing script but not if jsonp
9739
+ if ( !isSuccess &&
9740
+ jQuery.inArray( "script", s.dataTypes ) > -1 &&
9741
+ jQuery.inArray( "json", s.dataTypes ) < 0 ) {
9732
9742
  s.converters[ "text script" ] = function() {};
9733
9743
  }
9734
9744
 
@@ -10466,12 +10476,6 @@ jQuery.offset = {
10466
10476
  options.using.call( elem, props );
10467
10477
 
10468
10478
  } else {
10469
- if ( typeof props.top === "number" ) {
10470
- props.top += "px";
10471
- }
10472
- if ( typeof props.left === "number" ) {
10473
- props.left += "px";
10474
- }
10475
10479
  curElem.css( props );
10476
10480
  }
10477
10481
  }
@@ -10640,8 +10644,11 @@ jQuery.each( [ "top", "left" ], function( _i, prop ) {
10640
10644
 
10641
10645
  // Create innerHeight, innerWidth, height, width, outerHeight and outerWidth methods
10642
10646
  jQuery.each( { Height: "height", Width: "width" }, function( name, type ) {
10643
- jQuery.each( { padding: "inner" + name, content: type, "": "outer" + name },
10644
- function( defaultExtra, funcName ) {
10647
+ jQuery.each( {
10648
+ padding: "inner" + name,
10649
+ content: type,
10650
+ "": "outer" + name
10651
+ }, function( defaultExtra, funcName ) {
10645
10652
 
10646
10653
  // Margin is only for outerHeight, outerWidth
10647
10654
  jQuery.fn[ funcName ] = function( margin, value ) {
@@ -10726,7 +10733,8 @@ jQuery.fn.extend( {
10726
10733
  }
10727
10734
  } );
10728
10735
 
10729
- jQuery.each( ( "blur focus focusin focusout resize scroll click dblclick " +
10736
+ jQuery.each(
10737
+ ( "blur focus focusin focusout resize scroll click dblclick " +
10730
10738
  "mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " +
10731
10739
  "change select submit keydown keypress keyup contextmenu" ).split( " " ),
10732
10740
  function( _i, name ) {
@@ -10737,7 +10745,8 @@ jQuery.each( ( "blur focus focusin focusout resize scroll click dblclick " +
10737
10745
  this.on( name, null, data, fn ) :
10738
10746
  this.trigger( name );
10739
10747
  };
10740
- } );
10748
+ }
10749
+ );
10741
10750
 
10742
10751
 
10743
10752