loco-rails 1.0.0 → 1.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (164) hide show
  1. checksums.yaml +4 -4
  2. data/lib/generators/loco/js_assets_structure/js_assets_structure_generator.rb +1 -1
  3. data/lib/loco/version.rb +1 -1
  4. data/test/dummy/bower.json +3 -3
  5. data/test/dummy/db/test.sqlite3 +0 -0
  6. data/test/dummy/log/development.log +914 -0
  7. data/test/dummy/log/test.log +14364 -0
  8. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/1-WO2UjmfLs4SpjVZdSJGGMzBEsVGyxycwsDwVEQj1k.cache +0 -0
  9. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/1lwmN4qs8MJAzC_yfG97s_SBsqDZ7S3tjAhKpSGRoPk.cache +0 -0
  10. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/2W9ni6toILqWfZF81i5tLooI3KkJgLMV2Um69h4tACE.cache +0 -0
  11. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/888aULOiH1o8nErYVbar7so8TSiHMnVRkCJVrsFow-8.cache +1 -0
  12. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/C2zMBdauRoyKtP5-Hbx-3FKU63Wir8HxxhnsEQjnye4.cache +1 -0
  13. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/KmN1A2cbnIa89JVXdNUnbxekW6XoG37uQ7TOrUmla6M.cache +1 -0
  14. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/N2LaSeSkH9O3-nDAwbgQ3fvF1RyzULzIdW9tRkCFdiE.cache +1 -0
  15. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/NMX4CbiSfseLfHWah6QjF3ka-_q8iZ35lDHxpx5HZBc.cache +1 -0
  16. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/O97vuogdZekuQD9891VkdZtj2Ah9a6j_9SdFgHpRZPk.cache +3 -0
  17. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/RgNfOjSuRN575tirFTi553UywDtiZquNSKAUN4t_37E.cache +2 -0
  18. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/URfsWTq0WfX5JFf50HidIK1kGXYILlI3krzHQOlpGFw.cache +2 -0
  19. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/UqKz2K55R9dWSo9wYoLdN5lxNUXJFqA_7eipeyHMqQc.cache +1 -0
  20. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/WspjnlaWGkNP36-eIBusMx-VcvbF81RZ3L495DxSNNg.cache +1 -0
  21. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/XUYO10EzvYAECtPUgdBF8rPWs9x6tndCxSwdhYWmDpQ.cache +1 -0
  22. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/ckF-gg5mdNyYLK2tDms9BdsP1vFw5VYxZ11u7l8vzfc.cache +0 -0
  23. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/cxoptH0sPRJzPLP351ISNHPjig_W2A_-5fLVnK3tFu0.cache +1 -0
  24. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/k5GkEt2yH5INFBgLUTsGEmzjRr5Ngh6FiXYfmbqh-Tg.cache +1 -0
  25. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/zIWnum7SG2OPux4uomf0kHpIZ5Nl1NfTAoHCdkHwZIY.cache +0 -0
  26. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/zgdP9EhEWd05XIYSWZx4uQKkuRklpRj6KiShg6HqIRo.cache +0 -0
  27. data/test/dummy/vendor/assets/bower_components/jquery/AUTHORS.txt +53 -24
  28. data/test/dummy/vendor/assets/bower_components/jquery/dist/core.js +481 -0
  29. data/test/dummy/vendor/assets/bower_components/jquery/dist/jquery.js +2706 -3647
  30. data/test/dummy/vendor/assets/bower_components/jquery/dist/jquery.min.js +4 -5
  31. data/test/dummy/vendor/assets/bower_components/jquery/dist/jquery.min.map +1 -1
  32. data/test/dummy/vendor/assets/bower_components/jquery/dist/jquery.slim.js +533 -444
  33. data/test/dummy/vendor/assets/bower_components/jquery/dist/jquery.slim.min.js +4 -4
  34. data/test/dummy/vendor/assets/bower_components/jquery/dist/jquery.slim.min.map +1 -1
  35. data/test/dummy/vendor/assets/bower_components/jquery/{sizzle → external/sizzle}/LICENSE.txt +0 -0
  36. data/test/dummy/vendor/assets/bower_components/jquery/{sizzle → external/sizzle}/dist/sizzle.js +154 -80
  37. data/test/dummy/vendor/assets/bower_components/jquery/external/sizzle/dist/sizzle.min.js +3 -0
  38. data/test/dummy/vendor/assets/bower_components/jquery/external/sizzle/dist/sizzle.min.map +1 -0
  39. data/test/dummy/vendor/assets/bower_components/jquery/src/ajax/jsonp.js +5 -3
  40. data/test/dummy/vendor/assets/bower_components/jquery/src/ajax/load.js +3 -11
  41. data/test/dummy/vendor/assets/bower_components/jquery/src/ajax/parseXML.js +9 -10
  42. data/test/dummy/vendor/assets/bower_components/jquery/src/ajax/script.js +26 -44
  43. data/test/dummy/vendor/assets/bower_components/jquery/src/ajax/var/location.js +2 -0
  44. data/test/dummy/vendor/assets/bower_components/jquery/src/ajax/var/nonce.js +2 -0
  45. data/test/dummy/vendor/assets/bower_components/jquery/src/ajax/var/rquery.js +2 -0
  46. data/test/dummy/vendor/assets/bower_components/jquery/src/ajax/xhr.js +138 -198
  47. data/test/dummy/vendor/assets/bower_components/jquery/src/ajax.js +104 -91
  48. data/test/dummy/vendor/assets/bower_components/jquery/src/attributes/attr.js +23 -167
  49. data/test/dummy/vendor/assets/bower_components/jquery/src/attributes/classes.js +18 -13
  50. data/test/dummy/vendor/assets/bower_components/jquery/src/attributes/prop.js +9 -37
  51. data/test/dummy/vendor/assets/bower_components/jquery/src/attributes/support.js +12 -49
  52. data/test/dummy/vendor/assets/bower_components/jquery/src/attributes/val.js +21 -28
  53. data/test/dummy/vendor/assets/bower_components/jquery/src/attributes.js +4 -2
  54. data/test/dummy/vendor/assets/bower_components/jquery/src/callbacks.js +5 -3
  55. data/test/dummy/vendor/assets/bower_components/jquery/src/core/DOMEval.js +2 -0
  56. data/test/dummy/vendor/assets/bower_components/jquery/src/core/access.js +8 -6
  57. data/test/dummy/vendor/assets/bower_components/jquery/src/core/init.js +13 -26
  58. data/test/dummy/vendor/assets/bower_components/jquery/src/core/parseHTML.js +32 -8
  59. data/test/dummy/vendor/assets/bower_components/jquery/src/core/ready-no-deferred.js +111 -0
  60. data/test/dummy/vendor/assets/bower_components/jquery/src/core/ready.js +32 -100
  61. data/test/dummy/vendor/assets/bower_components/jquery/src/core/readyException.js +13 -0
  62. data/test/dummy/vendor/assets/bower_components/jquery/src/core/support.js +3 -1
  63. data/test/dummy/vendor/assets/bower_components/jquery/src/core/var/rsingleTag.js +2 -1
  64. data/test/dummy/vendor/assets/bower_components/jquery/src/core.js +71 -119
  65. data/test/dummy/vendor/assets/bower_components/jquery/src/css/addGetHookIf.js +2 -0
  66. data/test/dummy/vendor/assets/bower_components/jquery/src/css/adjustCSS.js +8 -2
  67. data/test/dummy/vendor/assets/bower_components/jquery/src/css/curCSS.js +34 -112
  68. data/test/dummy/vendor/assets/bower_components/jquery/src/css/hiddenVisibleSelectors.js +7 -28
  69. data/test/dummy/vendor/assets/bower_components/jquery/src/css/showHide.js +69 -9
  70. data/test/dummy/vendor/assets/bower_components/jquery/src/css/support.js +48 -142
  71. data/test/dummy/vendor/assets/bower_components/jquery/src/css/var/cssExpand.js +2 -0
  72. data/test/dummy/vendor/assets/bower_components/jquery/src/css/var/getStyles.js +3 -1
  73. data/test/dummy/vendor/assets/bower_components/jquery/src/css/var/isHiddenWithinTree.js +34 -0
  74. data/test/dummy/vendor/assets/bower_components/jquery/src/css/var/rmargin.js +2 -0
  75. data/test/dummy/vendor/assets/bower_components/jquery/src/css/var/rnumnonpx.js +2 -0
  76. data/test/dummy/vendor/assets/bower_components/jquery/src/css/var/swap.js +2 -0
  77. data/test/dummy/vendor/assets/bower_components/jquery/src/css.js +71 -223
  78. data/test/dummy/vendor/assets/bower_components/jquery/src/data/Data.js +24 -63
  79. data/test/dummy/vendor/assets/bower_components/jquery/src/data/var/acceptData.js +11 -12
  80. data/test/dummy/vendor/assets/bower_components/jquery/src/data/var/dataPriv.js +2 -0
  81. data/test/dummy/vendor/assets/bower_components/jquery/src/data/var/dataUser.js +2 -0
  82. data/test/dummy/vendor/assets/bower_components/jquery/src/data.js +66 -247
  83. data/test/dummy/vendor/assets/bower_components/jquery/src/deferred/exceptionHook.js +4 -2
  84. data/test/dummy/vendor/assets/bower_components/jquery/src/deferred.js +290 -60
  85. data/test/dummy/vendor/assets/bower_components/jquery/src/deprecated.js +4 -8
  86. data/test/dummy/vendor/assets/bower_components/jquery/src/dimensions.js +9 -9
  87. data/test/dummy/vendor/assets/bower_components/jquery/src/effects/Tween.js +11 -9
  88. data/test/dummy/vendor/assets/bower_components/jquery/src/effects/animatedSelector.js +3 -1
  89. data/test/dummy/vendor/assets/bower_components/jquery/src/effects.js +183 -135
  90. data/test/dummy/vendor/assets/bower_components/jquery/src/event/ajax.js +2 -0
  91. data/test/dummy/vendor/assets/bower_components/jquery/src/event/alias.js +7 -3
  92. data/test/dummy/vendor/assets/bower_components/jquery/src/event/focusin.js +5 -3
  93. data/test/dummy/vendor/assets/bower_components/jquery/src/event/support.js +3 -20
  94. data/test/dummy/vendor/assets/bower_components/jquery/src/event/trigger.js +4 -18
  95. data/test/dummy/vendor/assets/bower_components/jquery/src/event.js +145 -553
  96. data/test/dummy/vendor/assets/bower_components/jquery/src/exports/amd.js +2 -0
  97. data/test/dummy/vendor/assets/bower_components/jquery/src/exports/global.js +10 -2
  98. data/test/dummy/vendor/assets/bower_components/jquery/src/jquery.js +4 -1
  99. data/test/dummy/vendor/assets/bower_components/jquery/src/manipulation/_evalUrl.js +2 -0
  100. data/test/dummy/vendor/assets/bower_components/jquery/src/manipulation/buildFragment.js +22 -75
  101. data/test/dummy/vendor/assets/bower_components/jquery/src/manipulation/getAll.js +9 -19
  102. data/test/dummy/vendor/assets/bower_components/jquery/src/manipulation/setGlobalEval.js +11 -8
  103. data/test/dummy/vendor/assets/bower_components/jquery/src/manipulation/support.js +13 -50
  104. data/test/dummy/vendor/assets/bower_components/jquery/src/manipulation/var/rcheckableType.js +2 -0
  105. data/test/dummy/vendor/assets/bower_components/jquery/src/manipulation/var/rscriptType.js +2 -0
  106. data/test/dummy/vendor/assets/bower_components/jquery/src/manipulation/var/rtagName.js +3 -1
  107. data/test/dummy/vendor/assets/bower_components/jquery/src/manipulation/wrapMap.js +11 -12
  108. data/test/dummy/vendor/assets/bower_components/jquery/src/manipulation.js +104 -203
  109. data/test/dummy/vendor/assets/bower_components/jquery/src/offset.js +64 -51
  110. data/test/dummy/vendor/assets/bower_components/jquery/src/queue/delay.js +3 -1
  111. data/test/dummy/vendor/assets/bower_components/jquery/src/queue.js +12 -11
  112. data/test/dummy/vendor/assets/bower_components/jquery/src/selector-native.js +29 -3
  113. data/test/dummy/vendor/assets/bower_components/jquery/src/selector-sizzle.js +5 -0
  114. data/test/dummy/vendor/assets/bower_components/jquery/src/selector.js +3 -1
  115. data/test/dummy/vendor/assets/bower_components/jquery/src/serialize.js +13 -12
  116. data/test/dummy/vendor/assets/bower_components/jquery/src/traversing/findFilter.js +9 -10
  117. data/test/dummy/vendor/assets/bower_components/jquery/src/traversing/var/dir.js +2 -0
  118. data/test/dummy/vendor/assets/bower_components/jquery/src/traversing/var/rneedsContext.js +2 -0
  119. data/test/dummy/vendor/assets/bower_components/jquery/src/traversing/var/siblings.js +2 -0
  120. data/test/dummy/vendor/assets/bower_components/jquery/src/traversing.js +36 -37
  121. data/test/dummy/vendor/assets/bower_components/jquery/src/var/ObjectFunctionString.js +7 -0
  122. data/test/dummy/vendor/assets/bower_components/jquery/src/var/arr.js +2 -0
  123. data/test/dummy/vendor/assets/bower_components/jquery/src/var/class2type.js +1 -0
  124. data/test/dummy/vendor/assets/bower_components/jquery/src/var/concat.js +5 -3
  125. data/test/dummy/vendor/assets/bower_components/jquery/src/var/document.js +2 -0
  126. data/test/dummy/vendor/assets/bower_components/jquery/src/var/documentElement.js +2 -0
  127. data/test/dummy/vendor/assets/bower_components/jquery/src/var/fnToString.js +7 -0
  128. data/test/dummy/vendor/assets/bower_components/jquery/src/var/getProto.js +5 -0
  129. data/test/dummy/vendor/assets/bower_components/jquery/src/var/hasOwn.js +2 -0
  130. data/test/dummy/vendor/assets/bower_components/jquery/src/var/indexOf.js +5 -3
  131. data/test/dummy/vendor/assets/bower_components/jquery/src/var/pnum.js +2 -0
  132. data/test/dummy/vendor/assets/bower_components/jquery/src/var/push.js +5 -3
  133. data/test/dummy/vendor/assets/bower_components/jquery/src/var/rcssNum.js +2 -0
  134. data/test/dummy/vendor/assets/bower_components/jquery/src/var/rnotwhite.js +2 -0
  135. data/test/dummy/vendor/assets/bower_components/jquery/src/var/slice.js +5 -3
  136. data/test/dummy/vendor/assets/bower_components/jquery/src/var/support.js +1 -0
  137. data/test/dummy/vendor/assets/bower_components/jquery/src/var/toString.js +2 -0
  138. data/test/dummy/vendor/assets/bower_components/jquery/src/wrap.js +14 -14
  139. data/test/dummy/vendor/assets/bower_components/lie/bower.json +1 -1
  140. data/test/dummy/vendor/assets/bower_components/lie/component.json +1 -1
  141. data/test/dummy/vendor/assets/bower_components/lie/dist/lie.js +80 -80
  142. data/test/dummy/vendor/assets/bower_components/lie/dist/lie.min.js +1 -1
  143. data/test/dummy/vendor/assets/bower_components/lie/dist/lie.polyfill.js +9 -9
  144. data/test/dummy/vendor/assets/bower_components/lie/dist/lie.polyfill.min.js +1 -1
  145. data/test/dummy/vendor/assets/bower_components/lie/lib/browser.js +253 -0
  146. data/test/dummy/vendor/assets/bower_components/lie/lib/index.js +5 -5
  147. data/test/dummy/vendor/assets/bower_components/lie/package.json +28 -19
  148. data/test/dummy/vendor/assets/bower_components/lie/src/index.js +278 -0
  149. metadata +62 -36
  150. data/test/dummy/vendor/assets/bower_components/jquery/sizzle/dist/sizzle.min.js +0 -3
  151. data/test/dummy/vendor/assets/bower_components/jquery/sizzle/dist/sizzle.min.map +0 -1
  152. data/test/dummy/vendor/assets/bower_components/jquery/src/ajax/parseJSON.js +0 -53
  153. data/test/dummy/vendor/assets/bower_components/jquery/src/css/defaultDisplay.js +0 -72
  154. data/test/dummy/vendor/assets/bower_components/jquery/src/css/var/isHidden.js +0 -16
  155. data/test/dummy/vendor/assets/bower_components/jquery/src/data/accepts.js +0 -20
  156. data/test/dummy/vendor/assets/bower_components/jquery/src/data/support.js +0 -23
  157. data/test/dummy/vendor/assets/bower_components/jquery/src/effects/support.js +0 -58
  158. data/test/dummy/vendor/assets/bower_components/jquery/src/intro.js +0 -44
  159. data/test/dummy/vendor/assets/bower_components/jquery/src/manipulation/createSafeFragment.js +0 -20
  160. data/test/dummy/vendor/assets/bower_components/jquery/src/manipulation/var/nodeNames.js +0 -5
  161. data/test/dummy/vendor/assets/bower_components/jquery/src/manipulation/var/rleadingWhitespace.js +0 -3
  162. data/test/dummy/vendor/assets/bower_components/jquery/src/outro.js +0 -2
  163. data/test/dummy/vendor/assets/bower_components/jquery/src/support.js +0 -63
  164. data/test/dummy/vendor/assets/bower_components/jquery/src/var/deletedIds.js +0 -3
@@ -13,18 +13,13 @@ define( [
13
13
  "./selector" // contains
14
14
  ], function( jQuery, access, document, documentElement, rnumnonpx, curCSS, addGetHookIf, support ) {
15
15
 
16
- // BuildExclude
17
- curCSS = curCSS.curCSS;
16
+ "use strict";
18
17
 
19
18
  /**
20
19
  * Gets a window from an element
21
20
  */
22
21
  function getWindow( elem ) {
23
- return jQuery.isWindow( elem ) ?
24
- elem :
25
- elem.nodeType === 9 ?
26
- elem.defaultView || elem.parentWindow :
27
- false;
22
+ return jQuery.isWindow( elem ) ? elem : elem.nodeType === 9 && elem.defaultView;
28
23
  }
29
24
 
30
25
  jQuery.offset = {
@@ -34,7 +29,7 @@ jQuery.offset = {
34
29
  curElem = jQuery( elem ),
35
30
  props = {};
36
31
 
37
- // set position first, in-case top/left are set even on static elem
32
+ // Set position first, in-case top/left are set even on static elem
38
33
  if ( position === "static" ) {
39
34
  elem.style.position = "relative";
40
35
  }
@@ -43,14 +38,15 @@ jQuery.offset = {
43
38
  curCSSTop = jQuery.css( elem, "top" );
44
39
  curCSSLeft = jQuery.css( elem, "left" );
45
40
  calculatePosition = ( position === "absolute" || position === "fixed" ) &&
46
- jQuery.inArray( "auto", [ curCSSTop, curCSSLeft ] ) > -1;
41
+ ( curCSSTop + curCSSLeft ).indexOf( "auto" ) > -1;
47
42
 
48
- // need to be able to calculate position if either top or left
49
- // is auto and position is either absolute or fixed
43
+ // Need to be able to calculate position if either
44
+ // top or left is auto and position is either absolute or fixed
50
45
  if ( calculatePosition ) {
51
46
  curPosition = curElem.position();
52
47
  curTop = curPosition.top;
53
48
  curLeft = curPosition.left;
49
+
54
50
  } else {
55
51
  curTop = parseFloat( curCSSTop ) || 0;
56
52
  curLeft = parseFloat( curCSSLeft ) || 0;
@@ -71,6 +67,7 @@ jQuery.offset = {
71
67
 
72
68
  if ( "using" in options ) {
73
69
  options.using.call( elem, props );
70
+
74
71
  } else {
75
72
  curElem.css( props );
76
73
  }
@@ -79,6 +76,8 @@ jQuery.offset = {
79
76
 
80
77
  jQuery.fn.extend( {
81
78
  offset: function( options ) {
79
+
80
+ // Preserve chaining for setter
82
81
  if ( arguments.length ) {
83
82
  return options === undefined ?
84
83
  this :
@@ -87,32 +86,36 @@ jQuery.fn.extend( {
87
86
  } );
88
87
  }
89
88
 
90
- var docElem, win,
91
- box = { top: 0, left: 0 },
92
- elem = this[ 0 ],
93
- doc = elem && elem.ownerDocument;
89
+ var docElem, win, rect, doc,
90
+ elem = this[ 0 ];
94
91
 
95
- if ( !doc ) {
92
+ if ( !elem ) {
96
93
  return;
97
94
  }
98
95
 
99
- docElem = doc.documentElement;
100
-
101
- // Make sure it's not a disconnected DOM node
102
- if ( !jQuery.contains( docElem, elem ) ) {
103
- return box;
96
+ // Support: IE <=11 only
97
+ // Running getBoundingClientRect on a
98
+ // disconnected node in IE throws an error
99
+ if ( !elem.getClientRects().length ) {
100
+ return { top: 0, left: 0 };
104
101
  }
105
102
 
106
- // If we don't have gBCR, just use 0,0 rather than error
107
- // BlackBerry 5, iOS 3 (original iPhone)
108
- if ( typeof elem.getBoundingClientRect !== "undefined" ) {
109
- box = elem.getBoundingClientRect();
103
+ rect = elem.getBoundingClientRect();
104
+
105
+ // Make sure element is not hidden (display: none)
106
+ if ( rect.width || rect.height ) {
107
+ doc = elem.ownerDocument;
108
+ win = getWindow( doc );
109
+ docElem = doc.documentElement;
110
+
111
+ return {
112
+ top: rect.top + win.pageYOffset - docElem.clientTop,
113
+ left: rect.left + win.pageXOffset - docElem.clientLeft
114
+ };
110
115
  }
111
- win = getWindow( doc );
112
- return {
113
- top: box.top + ( win.pageYOffset || docElem.scrollTop ) - ( docElem.clientTop || 0 ),
114
- left: box.left + ( win.pageXOffset || docElem.scrollLeft ) - ( docElem.clientLeft || 0 )
115
- };
116
+
117
+ // Return zeros for disconnected and hidden elements (gh-2310)
118
+ return rect;
116
119
  },
117
120
 
118
121
  position: function() {
@@ -121,15 +124,16 @@ jQuery.fn.extend( {
121
124
  }
122
125
 
123
126
  var offsetParent, offset,
124
- parentOffset = { top: 0, left: 0 },
125
- elem = this[ 0 ];
127
+ elem = this[ 0 ],
128
+ parentOffset = { top: 0, left: 0 };
126
129
 
127
130
  // Fixed elements are offset from window (parentOffset = {top:0, left: 0},
128
131
  // because it is its only offset parent
129
132
  if ( jQuery.css( elem, "position" ) === "fixed" ) {
130
133
 
131
- // we assume that getBoundingClientRect is available when computed position is fixed
134
+ // Assume getBoundingClientRect is there when computed position is fixed
132
135
  offset = elem.getBoundingClientRect();
136
+
133
137
  } else {
134
138
 
135
139
  // Get *real* offsetParent
@@ -142,27 +146,37 @@ jQuery.fn.extend( {
142
146
  }
143
147
 
144
148
  // Add offsetParent borders
145
- parentOffset.top += jQuery.css( offsetParent[ 0 ], "borderTopWidth", true );
146
- parentOffset.left += jQuery.css( offsetParent[ 0 ], "borderLeftWidth", true );
149
+ parentOffset = {
150
+ top: parentOffset.top + jQuery.css( offsetParent[ 0 ], "borderTopWidth", true ),
151
+ left: parentOffset.left + jQuery.css( offsetParent[ 0 ], "borderLeftWidth", true )
152
+ };
147
153
  }
148
154
 
149
155
  // Subtract parent offsets and element margins
150
- // note: when an element has margin: auto the offsetLeft and marginLeft
151
- // are the same in Safari causing offset.left to incorrectly be 0
152
156
  return {
153
- top: offset.top - parentOffset.top - jQuery.css( elem, "marginTop", true ),
157
+ top: offset.top - parentOffset.top - jQuery.css( elem, "marginTop", true ),
154
158
  left: offset.left - parentOffset.left - jQuery.css( elem, "marginLeft", true )
155
159
  };
156
160
  },
157
161
 
162
+ // This method will return documentElement in the following cases:
163
+ // 1) For the element inside the iframe without offsetParent, this method will return
164
+ // documentElement of the parent window
165
+ // 2) For the hidden or detached element
166
+ // 3) For body or html element, i.e. in case of the html node - it will return itself
167
+ //
168
+ // but those exceptions were never presented as a real life use-cases
169
+ // and might be considered as more preferable results.
170
+ //
171
+ // This logic, however, is not guaranteed and can change at any point in the future
158
172
  offsetParent: function() {
159
173
  return this.map( function() {
160
174
  var offsetParent = this.offsetParent;
161
175
 
162
- while ( offsetParent && ( !jQuery.nodeName( offsetParent, "html" ) &&
163
- jQuery.css( offsetParent, "position" ) === "static" ) ) {
176
+ while ( offsetParent && jQuery.css( offsetParent, "position" ) === "static" ) {
164
177
  offsetParent = offsetParent.offsetParent;
165
178
  }
179
+
166
180
  return offsetParent || documentElement;
167
181
  } );
168
182
  }
@@ -170,43 +184,42 @@ jQuery.fn.extend( {
170
184
 
171
185
  // Create scrollLeft and scrollTop methods
172
186
  jQuery.each( { scrollLeft: "pageXOffset", scrollTop: "pageYOffset" }, function( method, prop ) {
173
- var top = /Y/.test( prop );
187
+ var top = "pageYOffset" === prop;
174
188
 
175
189
  jQuery.fn[ method ] = function( val ) {
176
190
  return access( this, function( elem, method, val ) {
177
191
  var win = getWindow( elem );
178
192
 
179
193
  if ( val === undefined ) {
180
- return win ? ( prop in win ) ? win[ prop ] :
181
- win.document.documentElement[ method ] :
182
- elem[ method ];
194
+ return win ? win[ prop ] : elem[ method ];
183
195
  }
184
196
 
185
197
  if ( win ) {
186
198
  win.scrollTo(
187
- !top ? val : jQuery( win ).scrollLeft(),
188
- top ? val : jQuery( win ).scrollTop()
199
+ !top ? val : win.pageXOffset,
200
+ top ? val : win.pageYOffset
189
201
  );
190
202
 
191
203
  } else {
192
204
  elem[ method ] = val;
193
205
  }
194
- }, method, val, arguments.length, null );
206
+ }, method, val, arguments.length );
195
207
  };
196
208
  } );
197
209
 
198
- // Support: Safari<7-8+, Chrome<37-44+
210
+ // Support: Safari <=7 - 9.1, Chrome <=37 - 49
199
211
  // Add the top/left cssHooks using jQuery.fn.position
200
212
  // Webkit bug: https://bugs.webkit.org/show_bug.cgi?id=29084
201
- // getComputedStyle returns percent when specified for top/left/bottom/right
202
- // rather than make the css module depend on the offset module, we just check for it here
213
+ // Blink bug: https://bugs.chromium.org/p/chromium/issues/detail?id=589347
214
+ // getComputedStyle returns percent when specified for top/left/bottom/right;
215
+ // rather than make the css module depend on the offset module, just check for it here
203
216
  jQuery.each( [ "top", "left" ], function( i, prop ) {
204
217
  jQuery.cssHooks[ prop ] = addGetHookIf( support.pixelPosition,
205
218
  function( elem, computed ) {
206
219
  if ( computed ) {
207
220
  computed = curCSS( elem, prop );
208
221
 
209
- // if curCSS returns percentage, fallback to offset
222
+ // If curCSS returns percentage, fallback to offset
210
223
  return rnumnonpx.test( computed ) ?
211
224
  jQuery( elem ).position()[ prop ] + "px" :
212
225
  computed;
@@ -4,8 +4,10 @@ define( [
4
4
  "../effects" // Delay is optional because of this dependency
5
5
  ], function( jQuery ) {
6
6
 
7
+ "use strict";
8
+
7
9
  // Based off of the plugin by Clint Helfers, with permission.
8
- // http://web.archive.org/web/20100324014747/http://blindsignals.com/index.php/2009/07/jquery-delay/
10
+ // https://web.archive.org/web/20100324014747/http://blindsignals.com/index.php/2009/07/jquery-delay/
9
11
  jQuery.fn.delay = function( time, type ) {
10
12
  time = jQuery.fx ? jQuery.fx.speeds[ time ] || time : time;
11
13
  type = type || "fx";
@@ -1,8 +1,11 @@
1
1
  define( [
2
2
  "./core",
3
+ "./data/var/dataPriv",
3
4
  "./deferred",
4
5
  "./callbacks"
5
- ], function( jQuery ) {
6
+ ], function( jQuery, dataPriv ) {
7
+
8
+ "use strict";
6
9
 
7
10
  jQuery.extend( {
8
11
  queue: function( elem, type, data ) {
@@ -10,12 +13,12 @@ jQuery.extend( {
10
13
 
11
14
  if ( elem ) {
12
15
  type = ( type || "fx" ) + "queue";
13
- queue = jQuery._data( elem, type );
16
+ queue = dataPriv.get( elem, type );
14
17
 
15
18
  // Speed up dequeue by getting out quickly if this is just a lookup
16
19
  if ( data ) {
17
20
  if ( !queue || jQuery.isArray( data ) ) {
18
- queue = jQuery._data( elem, type, jQuery.makeArray( data ) );
21
+ queue = dataPriv.access( elem, type, jQuery.makeArray( data ) );
19
22
  } else {
20
23
  queue.push( data );
21
24
  }
@@ -49,7 +52,7 @@ jQuery.extend( {
49
52
  queue.unshift( "inprogress" );
50
53
  }
51
54
 
52
- // clear up the last queue stop function
55
+ // Clear up the last queue stop function
53
56
  delete hooks.stop;
54
57
  fn.call( elem, next, hooks );
55
58
  }
@@ -59,14 +62,12 @@ jQuery.extend( {
59
62
  }
60
63
  },
61
64
 
62
- // not intended for public consumption - generates a queueHooks object,
63
- // or returns the current one
65
+ // Not public - generate a queueHooks object, or return the current one
64
66
  _queueHooks: function( elem, type ) {
65
67
  var key = type + "queueHooks";
66
- return jQuery._data( elem, key ) || jQuery._data( elem, key, {
68
+ return dataPriv.get( elem, key ) || dataPriv.access( elem, key, {
67
69
  empty: jQuery.Callbacks( "once memory" ).add( function() {
68
- jQuery._removeData( elem, type + "queue" );
69
- jQuery._removeData( elem, key );
70
+ dataPriv.remove( elem, [ type + "queue", key ] );
70
71
  } )
71
72
  } );
72
73
  }
@@ -91,7 +92,7 @@ jQuery.fn.extend( {
91
92
  this.each( function() {
92
93
  var queue = jQuery.queue( this, type, data );
93
94
 
94
- // ensure a hooks for this queue
95
+ // Ensure a hooks for this queue
95
96
  jQuery._queueHooks( this, type );
96
97
 
97
98
  if ( type === "fx" && queue[ 0 ] !== "inprogress" ) {
@@ -129,7 +130,7 @@ jQuery.fn.extend( {
129
130
  type = type || "fx";
130
131
 
131
132
  while ( i-- ) {
132
- tmp = jQuery._data( elements[ i ], type + "queueHooks" );
133
+ tmp = dataPriv.get( elements[ i ], type + "queueHooks" );
133
134
  if ( tmp && tmp.empty ) {
134
135
  count++;
135
136
  tmp.empty.add( resolve );
@@ -6,6 +6,8 @@ define( [
6
6
  "./var/indexOf"
7
7
  ], function( jQuery, document, documentElement, hasOwn, indexOf ) {
8
8
 
9
+ "use strict";
10
+
9
11
  /*
10
12
  * Optional (non-Sizzle) selector module for custom builds.
11
13
  *
@@ -37,7 +39,26 @@ var hasDuplicate, sortInput,
37
39
  documentElement.webkitMatchesSelector ||
38
40
  documentElement.mozMatchesSelector ||
39
41
  documentElement.oMatchesSelector ||
40
- documentElement.msMatchesSelector;
42
+ documentElement.msMatchesSelector,
43
+
44
+ // CSS string/identifier serialization
45
+ // https://drafts.csswg.org/cssom/#common-serializing-idioms
46
+ rcssescape = /([\0-\x1f\x7f]|^-?\d)|^-$|[^\x80-\uFFFF\w-]/g,
47
+ fcssescape = function( ch, asCodePoint ) {
48
+ if ( asCodePoint ) {
49
+
50
+ // U+0000 NULL becomes U+FFFD REPLACEMENT CHARACTER
51
+ if ( ch === "\0" ) {
52
+ return "\uFFFD";
53
+ }
54
+
55
+ // Control characters and (dependent upon position) numbers get escaped as code points
56
+ return ch.slice( 0, -1 ) + "\\" + ch.charCodeAt( ch.length - 1 ).toString( 16 ) + " ";
57
+ }
58
+
59
+ // Other potentially-special ASCII characters get backslash-escaped
60
+ return "\\" + ch;
61
+ };
41
62
 
42
63
  function sortOrder( a, b ) {
43
64
 
@@ -110,7 +131,14 @@ function uniqueSort( results ) {
110
131
  return results;
111
132
  }
112
133
 
134
+ function escape( sel ) {
135
+ return ( sel + "" ).replace( rcssescape, fcssescape );
136
+ }
137
+
113
138
  jQuery.extend( {
139
+ uniqueSort: uniqueSort,
140
+ unique: uniqueSort,
141
+ escapeSelector: escape,
114
142
  find: function( selector, context, results, seed ) {
115
143
  var elem, nodeType,
116
144
  i = 0;
@@ -140,8 +168,6 @@ jQuery.extend( {
140
168
 
141
169
  return results;
142
170
  },
143
- uniqueSort: uniqueSort,
144
- unique: uniqueSort,
145
171
  text: function( elem ) {
146
172
  var node,
147
173
  ret = "",
@@ -3,12 +3,17 @@ define( [
3
3
  "../external/sizzle/dist/sizzle"
4
4
  ], function( jQuery, Sizzle ) {
5
5
 
6
+ "use strict";
7
+
6
8
  jQuery.find = Sizzle;
7
9
  jQuery.expr = Sizzle.selectors;
10
+
11
+ // Deprecated
8
12
  jQuery.expr[ ":" ] = jQuery.expr.pseudos;
9
13
  jQuery.uniqueSort = jQuery.unique = Sizzle.uniqueSort;
10
14
  jQuery.text = Sizzle.getText;
11
15
  jQuery.isXMLDoc = Sizzle.isXML;
12
16
  jQuery.contains = Sizzle.contains;
17
+ jQuery.escapeSelector = Sizzle.escape;
13
18
 
14
19
  } );
@@ -1 +1,3 @@
1
- define( [ "./selector-sizzle" ], function() {} );
1
+ define( [ "./selector-sizzle" ], function() {
2
+ "use strict";
3
+ } );
@@ -6,7 +6,9 @@ define( [
6
6
  "./attributes/prop"
7
7
  ], function( jQuery, rcheckableType ) {
8
8
 
9
- var r20 = /%20/g,
9
+ "use strict";
10
+
11
+ var
10
12
  rbracket = /\[\]$/,
11
13
  rCRLF = /\r?\n/g,
12
14
  rsubmitterTypes = /^(?:submit|button|image|reset|file)$/i,
@@ -55,17 +57,16 @@ function buildParams( prefix, obj, traditional, add ) {
55
57
  jQuery.param = function( a, traditional ) {
56
58
  var prefix,
57
59
  s = [],
58
- add = function( key, value ) {
60
+ add = function( key, valueOrFunction ) {
59
61
 
60
- // If value is a function, invoke it and return its value
61
- value = jQuery.isFunction( value ) ? value() : ( value == null ? "" : value );
62
- s[ s.length ] = encodeURIComponent( key ) + "=" + encodeURIComponent( value );
63
- };
62
+ // If value is a function, invoke it and use its return value
63
+ var value = jQuery.isFunction( valueOrFunction ) ?
64
+ valueOrFunction() :
65
+ valueOrFunction;
64
66
 
65
- // Set traditional to true for jQuery <= 1.3.2 behavior.
66
- if ( traditional === undefined ) {
67
- traditional = jQuery.ajaxSettings && jQuery.ajaxSettings.traditional;
68
- }
67
+ s[ s.length ] = encodeURIComponent( key ) + "=" +
68
+ encodeURIComponent( value == null ? "" : value );
69
+ };
69
70
 
70
71
  // If an array was passed in, assume that it is an array of form elements.
71
72
  if ( jQuery.isArray( a ) || ( a.jquery && !jQuery.isPlainObject( a ) ) ) {
@@ -85,7 +86,7 @@ jQuery.param = function( a, traditional ) {
85
86
  }
86
87
 
87
88
  // Return the resulting serialization
88
- return s.join( "&" ).replace( r20, "+" );
89
+ return s.join( "&" );
89
90
  };
90
91
 
91
92
  jQuery.fn.extend( {
@@ -102,7 +103,7 @@ jQuery.fn.extend( {
102
103
  .filter( function() {
103
104
  var type = this.type;
104
105
 
105
- // Use .is(":disabled") so that fieldset[disabled] works
106
+ // Use .is( ":disabled" ) so that fieldset[disabled] works
106
107
  return this.name && !jQuery( this ).is( ":disabled" ) &&
107
108
  rsubmittable.test( this.nodeName ) && !rsubmitterTypes.test( type ) &&
108
109
  ( this.checked || !rcheckableType.test( type ) );
@@ -5,13 +5,14 @@ define( [
5
5
  "../selector"
6
6
  ], function( jQuery, indexOf, rneedsContext ) {
7
7
 
8
+ "use strict";
9
+
8
10
  var risSimple = /^.[^:#\[\.,]*$/;
9
11
 
10
12
  // Implement the identical functionality for filter and not
11
13
  function winnow( elements, qualifier, not ) {
12
14
  if ( jQuery.isFunction( qualifier ) ) {
13
15
  return jQuery.grep( elements, function( elem, i ) {
14
- /* jshint -W018 */
15
16
  return !!qualifier.call( elem, i, elem ) !== not;
16
17
  } );
17
18
 
@@ -33,7 +34,7 @@ function winnow( elements, qualifier, not ) {
33
34
  }
34
35
 
35
36
  return jQuery.grep( elements, function( elem ) {
36
- return ( jQuery.inArray( elem, qualifier ) > -1 ) !== not;
37
+ return ( indexOf.call( qualifier, elem ) > -1 ) !== not && elem.nodeType === 1;
37
38
  } );
38
39
  }
39
40
 
@@ -53,10 +54,9 @@ jQuery.filter = function( expr, elems, not ) {
53
54
 
54
55
  jQuery.fn.extend( {
55
56
  find: function( selector ) {
56
- var i,
57
- ret = [],
58
- self = this,
59
- len = self.length;
57
+ var i, ret,
58
+ len = this.length,
59
+ self = this;
60
60
 
61
61
  if ( typeof selector !== "string" ) {
62
62
  return this.pushStack( jQuery( selector ).filter( function() {
@@ -68,14 +68,13 @@ jQuery.fn.extend( {
68
68
  } ) );
69
69
  }
70
70
 
71
+ ret = this.pushStack( [] );
72
+
71
73
  for ( i = 0; i < len; i++ ) {
72
74
  jQuery.find( selector, self[ i ], ret );
73
75
  }
74
76
 
75
- // Needed because $( selector, context ) becomes $( context ).find( selector )
76
- ret = this.pushStack( len > 1 ? jQuery.unique( ret ) : ret );
77
- ret.selector = this.selector ? this.selector + " " + selector : selector;
78
- return ret;
77
+ return len > 1 ? jQuery.uniqueSort( ret ) : ret;
79
78
  },
80
79
  filter: function( selector ) {
81
80
  return this.pushStack( winnow( this, selector || [], false ) );
@@ -2,6 +2,8 @@ define( [
2
2
  "../../core"
3
3
  ], function( jQuery ) {
4
4
 
5
+ "use strict";
6
+
5
7
  return function( elem, dir, until ) {
6
8
  var matched = [],
7
9
  truncate = until !== undefined;
@@ -2,5 +2,7 @@ define( [
2
2
  "../../core",
3
3
  "../../selector"
4
4
  ], function( jQuery ) {
5
+ "use strict";
6
+
5
7
  return jQuery.expr.match.needsContext;
6
8
  } );
@@ -1,5 +1,7 @@
1
1
  define( function() {
2
2
 
3
+ "use strict";
4
+
3
5
  return function( n, elem ) {
4
6
  var matched = [];
5
7