unpoly-rails 0.32.0 → 0.33.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of unpoly-rails might be problematic. Click here for more details.

Files changed (232) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +106 -76
  3. data/README.md +8 -5
  4. data/README_RAILS.md +1 -1
  5. data/design/test_rejected_promise.txt +5 -0
  6. data/dist/unpoly-bootstrap3.js +1 -1
  7. data/dist/unpoly-bootstrap3.min.js +1 -1
  8. data/dist/unpoly.js +814 -417
  9. data/dist/unpoly.min.js +3 -3
  10. data/lib/assets/javascripts/unpoly/{browser.js.coffee → browser.coffee} +15 -6
  11. data/lib/assets/javascripts/unpoly/{bus.js.coffee → bus.coffee} +13 -13
  12. data/lib/assets/javascripts/unpoly/dom/extract_cascade.coffee +73 -0
  13. data/lib/assets/javascripts/unpoly/dom/extract_plan.coffee +65 -0
  14. data/lib/assets/javascripts/unpoly/{flow.js.coffee → dom.coffee} +109 -114
  15. data/lib/assets/javascripts/unpoly/{navigation.js.coffee → feedback.coffee} +11 -11
  16. data/lib/assets/javascripts/unpoly/{form.js.coffee → form.coffee} +35 -24
  17. data/lib/assets/javascripts/unpoly/{history.js.coffee → history.coffee} +9 -10
  18. data/lib/assets/javascripts/unpoly/{layout.js.coffee → layout.coffee} +53 -21
  19. data/lib/assets/javascripts/unpoly/{link.js.coffee → link.coffee} +46 -40
  20. data/lib/assets/javascripts/unpoly/{log.js.coffee → log.coffee} +2 -2
  21. data/lib/assets/javascripts/unpoly/{modal.js.coffee → modal.coffee} +17 -14
  22. data/lib/assets/javascripts/unpoly/{motion.js.coffee → motion.coffee} +28 -31
  23. data/lib/assets/javascripts/unpoly/namespace.coffee.erb +10 -0
  24. data/lib/assets/javascripts/unpoly/{popup.js.coffee → popup.coffee} +22 -10
  25. data/lib/assets/javascripts/unpoly/{proxy.js.coffee → proxy.coffee} +34 -12
  26. data/lib/assets/javascripts/unpoly/{rails.js.coffee → rails.coffee} +0 -0
  27. data/lib/assets/javascripts/unpoly/{syntax.js.coffee → syntax.coffee} +32 -21
  28. data/lib/assets/javascripts/unpoly/{toast.js.coffee → toast.coffee} +0 -0
  29. data/lib/assets/javascripts/unpoly/{tooltip.js.coffee → tooltip.coffee} +2 -2
  30. data/lib/assets/javascripts/unpoly/{util.js.coffee → util.coffee} +122 -35
  31. data/lib/assets/javascripts/unpoly-bootstrap3/{form-ext.js.coffee → form-ext.coffee} +0 -0
  32. data/lib/assets/javascripts/unpoly-bootstrap3/{layout-ext.js.coffee → layout-ext.coffee} +0 -0
  33. data/lib/assets/javascripts/unpoly-bootstrap3/{modal-ext.js.coffee → modal-ext.coffee} +0 -0
  34. data/lib/assets/javascripts/unpoly-bootstrap3/{navigation-ext.js.coffee → navigation-ext.coffee} +1 -1
  35. data/lib/assets/javascripts/{unpoly-bootstrap3.js.coffee → unpoly-bootstrap3.coffee} +0 -0
  36. data/lib/assets/javascripts/unpoly.coffee +22 -0
  37. data/lib/assets/stylesheets/unpoly/{close.css.sass → close.sass} +0 -0
  38. data/lib/assets/stylesheets/unpoly/{flow.css.sass → flow.sass} +0 -0
  39. data/lib/assets/stylesheets/unpoly/{link.css.sass → link.sass} +0 -0
  40. data/lib/assets/stylesheets/unpoly/{modal.css.sass → modal.sass} +0 -0
  41. data/lib/assets/stylesheets/unpoly/{popup.css.sass → popup.sass} +0 -0
  42. data/lib/assets/stylesheets/unpoly/{toast.css.sass → toast.sass} +0 -0
  43. data/lib/assets/stylesheets/unpoly/{tooltip.css.sass → tooltip.sass} +0 -0
  44. data/lib/assets/stylesheets/unpoly-bootstrap3/{modal-ext.css.sass → modal-ext.sass} +0 -0
  45. data/lib/assets/stylesheets/{unpoly-bootstrap3.css.sass → unpoly-bootstrap3.sass} +0 -0
  46. data/lib/assets/stylesheets/{unpoly.css.sass → unpoly.sass} +0 -0
  47. data/lib/unpoly/rails/version.rb +1 -1
  48. data/package.json +1 -1
  49. data/spec_app/Gemfile.lock +11 -13
  50. data/spec_app/app/assets/javascripts/jasmine_specs.coffee +1 -1
  51. data/spec_app/app/assets/stylesheets/_helpers.sass +1 -1
  52. data/spec_app/config/initializers/assets.rb +1 -5
  53. data/spec_app/spec/javascripts/up/{flow_spec.js.coffee → dom_spec.js.coffee} +294 -44
  54. data/spec_app/spec/javascripts/up/{navigation_spec.js.coffee → feedback_spec.js.coffee} +2 -2
  55. data/spec_app/spec/javascripts/up/form_spec.js.coffee +1 -0
  56. data/spec_app/spec/javascripts/up/layout_spec.js.coffee +10 -0
  57. data/spec_app/spec/javascripts/up/link_spec.js.coffee +28 -0
  58. data/spec_app/spec/javascripts/up/modal_spec.js.coffee +46 -9
  59. data/spec_app/spec/javascripts/up/motion_spec.js.coffee +32 -2
  60. data/spec_app/spec/javascripts/up/popup_spec.js.coffee +5 -4
  61. data/spec_app/spec/javascripts/up/util_spec.js.coffee +75 -0
  62. data/spec_app/vendor/{assets/bower_components/jasmine-ajax → asset-libs/jasmine-ajax-3.3.1}/.bower.json +0 -0
  63. data/spec_app/vendor/asset-libs/jasmine-ajax-3.3.1/.gitignore +6 -0
  64. data/spec_app/vendor/asset-libs/jasmine-ajax-3.3.1/.npmignore +10 -0
  65. data/spec_app/vendor/asset-libs/jasmine-ajax-3.3.1/.pairs +6 -0
  66. data/spec_app/vendor/asset-libs/jasmine-ajax-3.3.1/.travis.yml +56 -0
  67. data/spec_app/vendor/{assets/bower_components/jasmine-ajax/lib/mock-ajax.js → asset-libs/jasmine-ajax-3.3.1/jasmine-ajax.js} +83 -26
  68. data/spec_app/vendor/{assets/bower_components/jasmine-fixture/dist → asset-libs/jasmine-fixture-1.3.4}/jasmine-fixture.js +13 -13
  69. data/spec_app/vendor/{assets/bower_components/jasmine-jquery → asset-libs/jasmine-jquery-2.1.1}/.bower.json +0 -0
  70. data/spec_app/vendor/{assets/bower_components/jasmine-jquery/lib → asset-libs/jasmine-jquery-2.1.1}/jasmine-jquery.js +0 -0
  71. data/spec_app/vendor/assets/{javascripts/.keep → .keep} +0 -0
  72. metadata +52 -203
  73. data/lib/assets/javascripts/unpoly/module.js.coffee.erb +0 -8
  74. data/lib/assets/javascripts/unpoly.js.coffee +0 -21
  75. data/spec_app/Bowerfile +0 -3
  76. data/spec_app/vendor/assets/.bowerrc +0 -3
  77. data/spec_app/vendor/assets/bower.json +0 -8
  78. data/spec_app/vendor/assets/bower_components/jasmine/.bower.json +0 -50
  79. data/spec_app/vendor/assets/bower_components/jasmine/CONTRIBUTING.md +0 -130
  80. data/spec_app/vendor/assets/bower_components/jasmine/GOALS_2.0.md +0 -64
  81. data/spec_app/vendor/assets/bower_components/jasmine/MANIFEST.in +0 -5
  82. data/spec_app/vendor/assets/bower_components/jasmine/MIT.LICENSE +0 -20
  83. data/spec_app/vendor/assets/bower_components/jasmine/README.md +0 -73
  84. data/spec_app/vendor/assets/bower_components/jasmine/RELEASE.md +0 -73
  85. data/spec_app/vendor/assets/bower_components/jasmine/bower.json +0 -41
  86. data/spec_app/vendor/assets/bower_components/jasmine/images/jasmine-horizontal.png +0 -0
  87. data/spec_app/vendor/assets/bower_components/jasmine/images/jasmine-horizontal.svg +0 -102
  88. data/spec_app/vendor/assets/bower_components/jasmine/images/jasmine_favicon.png +0 -0
  89. data/spec_app/vendor/assets/bower_components/jasmine/lib/console/console.js +0 -190
  90. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/boot.js +0 -143
  91. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/example/node_example/lib/jasmine_examples/Player.js +0 -24
  92. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/example/node_example/lib/jasmine_examples/Song.js +0 -9
  93. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/jasmine-html.js +0 -446
  94. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/jasmine.css +0 -58
  95. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/jasmine.js +0 -3298
  96. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/json2.js +0 -489
  97. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/node_boot.js +0 -41
  98. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core.js +0 -37
  99. data/spec_app/vendor/assets/bower_components/jasmine/package.json +0 -34
  100. data/spec_app/vendor/assets/bower_components/jasmine/requirements.txt +0 -1
  101. data/spec_app/vendor/assets/bower_components/jasmine-ajax/MIT.LICENSE +0 -20
  102. data/spec_app/vendor/assets/bower_components/jasmine-ajax/README.markdown +0 -289
  103. data/spec_app/vendor/assets/bower_components/jasmine-ajax/bower.json +0 -35
  104. data/spec_app/vendor/assets/bower_components/jasmine-ajax/package.json +0 -26
  105. data/spec_app/vendor/assets/bower_components/jasmine-ajax/release_notes/2.0.2.md +0 -50
  106. data/spec_app/vendor/assets/bower_components/jasmine-ajax/release_notes/2.99.md +0 -14
  107. data/spec_app/vendor/assets/bower_components/jasmine-ajax/release_notes/3.0.md +0 -28
  108. data/spec_app/vendor/assets/bower_components/jasmine-ajax/release_notes/3.1.0.md +0 -24
  109. data/spec_app/vendor/assets/bower_components/jasmine-ajax/release_notes/3.1.1.md +0 -23
  110. data/spec_app/vendor/assets/bower_components/jasmine-ajax/release_notes/3.2.0.md +0 -20
  111. data/spec_app/vendor/assets/bower_components/jasmine-fixture/.bower.json +0 -27
  112. data/spec_app/vendor/assets/bower_components/jasmine-fixture/.gitignore +0 -8
  113. data/spec_app/vendor/assets/bower_components/jasmine-fixture/.npmignore +0 -8
  114. data/spec_app/vendor/assets/bower_components/jasmine-fixture/LICENSE.txt +0 -24
  115. data/spec_app/vendor/assets/bower_components/jasmine-fixture/README.md +0 -118
  116. data/spec_app/vendor/assets/bower_components/jasmine-fixture/bower.json +0 -17
  117. data/spec_app/vendor/assets/bower_components/jasmine-fixture/dist/jasmine-fixture.min.js +0 -5
  118. data/spec_app/vendor/assets/bower_components/jasmine-fixture/spec-e2e/basic-usage-spec.coffee +0 -14
  119. data/spec_app/vendor/assets/bower_components/jasmine-fixture/spec-e2e/helpers/invariants.coffee +0 -17
  120. data/spec_app/vendor/assets/bower_components/jasmine-fixture/spec-e2e/helpers/spec-within-a-spec.coffee +0 -24
  121. data/spec_app/vendor/assets/bower_components/jasmine-fixture/spec-e2e/helpers/tmp-files.coffee +0 -8
  122. data/spec_app/vendor/assets/bower_components/jasmine-fixture/spec-e2e/support/jasmine1-testem-config.json +0 -11
  123. data/spec_app/vendor/assets/bower_components/jasmine-fixture/spec-e2e/support/jasmine2-testem-config.json +0 -11
  124. data/spec_app/vendor/assets/bower_components/jasmine-fixture/vendor/js/jquery-1.11.0.js +0 -10337
  125. data/spec_app/vendor/assets/bower_components/jasmine-fixture/vendor/js/jquery-1.8.3.js +0 -9472
  126. data/spec_app/vendor/assets/bower_components/jasmine-fixture/vendor/js/jquery-2.1.0.js +0 -9111
  127. data/spec_app/vendor/assets/bower_components/jasmine-jquery/CONTRIBUTING.md +0 -28
  128. data/spec_app/vendor/assets/bower_components/jasmine-jquery/Gruntfile.js +0 -49
  129. data/spec_app/vendor/assets/bower_components/jasmine-jquery/LICENSE +0 -20
  130. data/spec_app/vendor/assets/bower_components/jasmine-jquery/README.md +0 -367
  131. data/spec_app/vendor/assets/bower_components/jasmine-jquery/bower.json +0 -15
  132. data/spec_app/vendor/assets/bower_components/jasmine-jquery/package.json +0 -35
  133. data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/fixture_with_checkbox_with_checked.html +0 -6
  134. data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/fixture_with_javascript.html +0 -1
  135. data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/fixture_with_javascript_block.html +0 -1
  136. data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/javascripts/jasmine_javascript_click.js +0 -1
  137. data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/javascripts/jasmine_javascript_hover.js +0 -1
  138. data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/json/jasmine_json_test.json +0 -1
  139. data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/real_non_mocked_fixture.html +0 -1
  140. data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/real_non_mocked_fixture_style.css +0 -1
  141. data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/suites/jasmine-jquery-spec.js +0 -1842
  142. data/spec_app/vendor/assets/bower_components/jquery/.bower.json +0 -38
  143. data/spec_app/vendor/assets/bower_components/jquery/MIT-LICENSE.txt +0 -21
  144. data/spec_app/vendor/assets/bower_components/jquery/bower.json +0 -28
  145. data/spec_app/vendor/assets/bower_components/jquery/dist/jquery.js +0 -9210
  146. data/spec_app/vendor/assets/bower_components/jquery/dist/jquery.min.js +0 -5
  147. data/spec_app/vendor/assets/bower_components/jquery/dist/jquery.min.map +0 -1
  148. data/spec_app/vendor/assets/bower_components/jquery/src/ajax/jsonp.js +0 -89
  149. data/spec_app/vendor/assets/bower_components/jquery/src/ajax/load.js +0 -75
  150. data/spec_app/vendor/assets/bower_components/jquery/src/ajax/parseJSON.js +0 -13
  151. data/spec_app/vendor/assets/bower_components/jquery/src/ajax/parseXML.js +0 -28
  152. data/spec_app/vendor/assets/bower_components/jquery/src/ajax/script.js +0 -64
  153. data/spec_app/vendor/assets/bower_components/jquery/src/ajax/var/nonce.js +0 -5
  154. data/spec_app/vendor/assets/bower_components/jquery/src/ajax/var/rquery.js +0 -3
  155. data/spec_app/vendor/assets/bower_components/jquery/src/ajax/xhr.js +0 -136
  156. data/spec_app/vendor/assets/bower_components/jquery/src/ajax.js +0 -786
  157. data/spec_app/vendor/assets/bower_components/jquery/src/attributes/attr.js +0 -141
  158. data/spec_app/vendor/assets/bower_components/jquery/src/attributes/classes.js +0 -158
  159. data/spec_app/vendor/assets/bower_components/jquery/src/attributes/prop.js +0 -94
  160. data/spec_app/vendor/assets/bower_components/jquery/src/attributes/support.js +0 -35
  161. data/spec_app/vendor/assets/bower_components/jquery/src/attributes/val.js +0 -161
  162. data/spec_app/vendor/assets/bower_components/jquery/src/attributes.js +0 -11
  163. data/spec_app/vendor/assets/bower_components/jquery/src/callbacks.js +0 -205
  164. data/spec_app/vendor/assets/bower_components/jquery/src/core/access.js +0 -60
  165. data/spec_app/vendor/assets/bower_components/jquery/src/core/init.js +0 -123
  166. data/spec_app/vendor/assets/bower_components/jquery/src/core/parseHTML.js +0 -39
  167. data/spec_app/vendor/assets/bower_components/jquery/src/core/ready.js +0 -97
  168. data/spec_app/vendor/assets/bower_components/jquery/src/core/var/rsingleTag.js +0 -4
  169. data/spec_app/vendor/assets/bower_components/jquery/src/core.js +0 -502
  170. data/spec_app/vendor/assets/bower_components/jquery/src/css/addGetHookIf.js +0 -22
  171. data/spec_app/vendor/assets/bower_components/jquery/src/css/curCSS.js +0 -57
  172. data/spec_app/vendor/assets/bower_components/jquery/src/css/defaultDisplay.js +0 -70
  173. data/spec_app/vendor/assets/bower_components/jquery/src/css/hiddenVisibleSelectors.js +0 -15
  174. data/spec_app/vendor/assets/bower_components/jquery/src/css/support.js +0 -96
  175. data/spec_app/vendor/assets/bower_components/jquery/src/css/swap.js +0 -28
  176. data/spec_app/vendor/assets/bower_components/jquery/src/css/var/cssExpand.js +0 -3
  177. data/spec_app/vendor/assets/bower_components/jquery/src/css/var/getStyles.js +0 -12
  178. data/spec_app/vendor/assets/bower_components/jquery/src/css/var/isHidden.js +0 -13
  179. data/spec_app/vendor/assets/bower_components/jquery/src/css/var/rmargin.js +0 -3
  180. data/spec_app/vendor/assets/bower_components/jquery/src/css/var/rnumnonpx.js +0 -5
  181. data/spec_app/vendor/assets/bower_components/jquery/src/css.js +0 -450
  182. data/spec_app/vendor/assets/bower_components/jquery/src/data/Data.js +0 -181
  183. data/spec_app/vendor/assets/bower_components/jquery/src/data/accepts.js +0 -20
  184. data/spec_app/vendor/assets/bower_components/jquery/src/data/var/data_priv.js +0 -5
  185. data/spec_app/vendor/assets/bower_components/jquery/src/data/var/data_user.js +0 -5
  186. data/spec_app/vendor/assets/bower_components/jquery/src/data.js +0 -178
  187. data/spec_app/vendor/assets/bower_components/jquery/src/deferred.js +0 -149
  188. data/spec_app/vendor/assets/bower_components/jquery/src/deprecated.js +0 -13
  189. data/spec_app/vendor/assets/bower_components/jquery/src/dimensions.js +0 -50
  190. data/spec_app/vendor/assets/bower_components/jquery/src/effects/Tween.js +0 -114
  191. data/spec_app/vendor/assets/bower_components/jquery/src/effects/animatedSelector.js +0 -13
  192. data/spec_app/vendor/assets/bower_components/jquery/src/effects.js +0 -648
  193. data/spec_app/vendor/assets/bower_components/jquery/src/event/ajax.js +0 -13
  194. data/spec_app/vendor/assets/bower_components/jquery/src/event/alias.js +0 -39
  195. data/spec_app/vendor/assets/bower_components/jquery/src/event/support.js +0 -9
  196. data/spec_app/vendor/assets/bower_components/jquery/src/event.js +0 -868
  197. data/spec_app/vendor/assets/bower_components/jquery/src/exports/amd.js +0 -24
  198. data/spec_app/vendor/assets/bower_components/jquery/src/exports/global.js +0 -32
  199. data/spec_app/vendor/assets/bower_components/jquery/src/intro.js +0 -44
  200. data/spec_app/vendor/assets/bower_components/jquery/src/jquery.js +0 -37
  201. data/spec_app/vendor/assets/bower_components/jquery/src/manipulation/_evalUrl.js +0 -18
  202. data/spec_app/vendor/assets/bower_components/jquery/src/manipulation/support.js +0 -32
  203. data/spec_app/vendor/assets/bower_components/jquery/src/manipulation/var/rcheckableType.js +0 -3
  204. data/spec_app/vendor/assets/bower_components/jquery/src/manipulation.js +0 -580
  205. data/spec_app/vendor/assets/bower_components/jquery/src/offset.js +0 -207
  206. data/spec_app/vendor/assets/bower_components/jquery/src/outro.js +0 -1
  207. data/spec_app/vendor/assets/bower_components/jquery/src/queue/delay.js +0 -22
  208. data/spec_app/vendor/assets/bower_components/jquery/src/queue.js +0 -142
  209. data/spec_app/vendor/assets/bower_components/jquery/src/selector-native.js +0 -172
  210. data/spec_app/vendor/assets/bower_components/jquery/src/selector-sizzle.js +0 -14
  211. data/spec_app/vendor/assets/bower_components/jquery/src/selector.js +0 -1
  212. data/spec_app/vendor/assets/bower_components/jquery/src/serialize.js +0 -111
  213. data/spec_app/vendor/assets/bower_components/jquery/src/sizzle/dist/sizzle.js +0 -2067
  214. data/spec_app/vendor/assets/bower_components/jquery/src/sizzle/dist/sizzle.min.js +0 -3
  215. data/spec_app/vendor/assets/bower_components/jquery/src/sizzle/dist/sizzle.min.map +0 -1
  216. data/spec_app/vendor/assets/bower_components/jquery/src/traversing/findFilter.js +0 -100
  217. data/spec_app/vendor/assets/bower_components/jquery/src/traversing/var/rneedsContext.js +0 -6
  218. data/spec_app/vendor/assets/bower_components/jquery/src/traversing.js +0 -199
  219. data/spec_app/vendor/assets/bower_components/jquery/src/var/arr.js +0 -3
  220. data/spec_app/vendor/assets/bower_components/jquery/src/var/class2type.js +0 -4
  221. data/spec_app/vendor/assets/bower_components/jquery/src/var/concat.js +0 -5
  222. data/spec_app/vendor/assets/bower_components/jquery/src/var/hasOwn.js +0 -5
  223. data/spec_app/vendor/assets/bower_components/jquery/src/var/indexOf.js +0 -5
  224. data/spec_app/vendor/assets/bower_components/jquery/src/var/pnum.js +0 -3
  225. data/spec_app/vendor/assets/bower_components/jquery/src/var/push.js +0 -5
  226. data/spec_app/vendor/assets/bower_components/jquery/src/var/rnotwhite.js +0 -3
  227. data/spec_app/vendor/assets/bower_components/jquery/src/var/slice.js +0 -5
  228. data/spec_app/vendor/assets/bower_components/jquery/src/var/strundefined.js +0 -3
  229. data/spec_app/vendor/assets/bower_components/jquery/src/var/support.js +0 -4
  230. data/spec_app/vendor/assets/bower_components/jquery/src/var/toString.js +0 -5
  231. data/spec_app/vendor/assets/bower_components/jquery/src/wrap.js +0 -79
  232. data/spec_app/vendor/assets/stylesheets/.keep +0 -0
@@ -1,141 +0,0 @@
1
- define([
2
- "../core",
3
- "../var/rnotwhite",
4
- "../var/strundefined",
5
- "../core/access",
6
- "./support",
7
- "../selector"
8
- ], function( jQuery, rnotwhite, strundefined, access, support ) {
9
-
10
- var nodeHook, boolHook,
11
- attrHandle = jQuery.expr.attrHandle;
12
-
13
- jQuery.fn.extend({
14
- attr: function( name, value ) {
15
- return access( this, jQuery.attr, name, value, arguments.length > 1 );
16
- },
17
-
18
- removeAttr: function( name ) {
19
- return this.each(function() {
20
- jQuery.removeAttr( this, name );
21
- });
22
- }
23
- });
24
-
25
- jQuery.extend({
26
- attr: function( elem, name, value ) {
27
- var hooks, ret,
28
- nType = elem.nodeType;
29
-
30
- // don't get/set attributes on text, comment and attribute nodes
31
- if ( !elem || nType === 3 || nType === 8 || nType === 2 ) {
32
- return;
33
- }
34
-
35
- // Fallback to prop when attributes are not supported
36
- if ( typeof elem.getAttribute === strundefined ) {
37
- return jQuery.prop( elem, name, value );
38
- }
39
-
40
- // All attributes are lowercase
41
- // Grab necessary hook if one is defined
42
- if ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) {
43
- name = name.toLowerCase();
44
- hooks = jQuery.attrHooks[ name ] ||
45
- ( jQuery.expr.match.bool.test( name ) ? boolHook : nodeHook );
46
- }
47
-
48
- if ( value !== undefined ) {
49
-
50
- if ( value === null ) {
51
- jQuery.removeAttr( elem, name );
52
-
53
- } else if ( hooks && "set" in hooks && (ret = hooks.set( elem, value, name )) !== undefined ) {
54
- return ret;
55
-
56
- } else {
57
- elem.setAttribute( name, value + "" );
58
- return value;
59
- }
60
-
61
- } else if ( hooks && "get" in hooks && (ret = hooks.get( elem, name )) !== null ) {
62
- return ret;
63
-
64
- } else {
65
- ret = jQuery.find.attr( elem, name );
66
-
67
- // Non-existent attributes return null, we normalize to undefined
68
- return ret == null ?
69
- undefined :
70
- ret;
71
- }
72
- },
73
-
74
- removeAttr: function( elem, value ) {
75
- var name, propName,
76
- i = 0,
77
- attrNames = value && value.match( rnotwhite );
78
-
79
- if ( attrNames && elem.nodeType === 1 ) {
80
- while ( (name = attrNames[i++]) ) {
81
- propName = jQuery.propFix[ name ] || name;
82
-
83
- // Boolean attributes get special treatment (#10870)
84
- if ( jQuery.expr.match.bool.test( name ) ) {
85
- // Set corresponding property to false
86
- elem[ propName ] = false;
87
- }
88
-
89
- elem.removeAttribute( name );
90
- }
91
- }
92
- },
93
-
94
- attrHooks: {
95
- type: {
96
- set: function( elem, value ) {
97
- if ( !support.radioValue && value === "radio" &&
98
- jQuery.nodeName( elem, "input" ) ) {
99
- var val = elem.value;
100
- elem.setAttribute( "type", value );
101
- if ( val ) {
102
- elem.value = val;
103
- }
104
- return value;
105
- }
106
- }
107
- }
108
- }
109
- });
110
-
111
- // Hooks for boolean attributes
112
- boolHook = {
113
- set: function( elem, value, name ) {
114
- if ( value === false ) {
115
- // Remove boolean attributes when set to false
116
- jQuery.removeAttr( elem, name );
117
- } else {
118
- elem.setAttribute( name, name );
119
- }
120
- return name;
121
- }
122
- };
123
- jQuery.each( jQuery.expr.match.bool.source.match( /\w+/g ), function( i, name ) {
124
- var getter = attrHandle[ name ] || jQuery.find.attr;
125
-
126
- attrHandle[ name ] = function( elem, name, isXML ) {
127
- var ret, handle;
128
- if ( !isXML ) {
129
- // Avoid an infinite loop by temporarily removing this function from the getter
130
- handle = attrHandle[ name ];
131
- attrHandle[ name ] = ret;
132
- ret = getter( elem, name, isXML ) != null ?
133
- name.toLowerCase() :
134
- null;
135
- attrHandle[ name ] = handle;
136
- }
137
- return ret;
138
- };
139
- });
140
-
141
- });
@@ -1,158 +0,0 @@
1
- define([
2
- "../core",
3
- "../var/rnotwhite",
4
- "../var/strundefined",
5
- "../data/var/data_priv",
6
- "../core/init"
7
- ], function( jQuery, rnotwhite, strundefined, data_priv ) {
8
-
9
- var rclass = /[\t\r\n\f]/g;
10
-
11
- jQuery.fn.extend({
12
- addClass: function( value ) {
13
- var classes, elem, cur, clazz, j, finalValue,
14
- proceed = typeof value === "string" && value,
15
- i = 0,
16
- len = this.length;
17
-
18
- if ( jQuery.isFunction( value ) ) {
19
- return this.each(function( j ) {
20
- jQuery( this ).addClass( value.call( this, j, this.className ) );
21
- });
22
- }
23
-
24
- if ( proceed ) {
25
- // The disjunction here is for better compressibility (see removeClass)
26
- classes = ( value || "" ).match( rnotwhite ) || [];
27
-
28
- for ( ; i < len; i++ ) {
29
- elem = this[ i ];
30
- cur = elem.nodeType === 1 && ( elem.className ?
31
- ( " " + elem.className + " " ).replace( rclass, " " ) :
32
- " "
33
- );
34
-
35
- if ( cur ) {
36
- j = 0;
37
- while ( (clazz = classes[j++]) ) {
38
- if ( cur.indexOf( " " + clazz + " " ) < 0 ) {
39
- cur += clazz + " ";
40
- }
41
- }
42
-
43
- // only assign if different to avoid unneeded rendering.
44
- finalValue = jQuery.trim( cur );
45
- if ( elem.className !== finalValue ) {
46
- elem.className = finalValue;
47
- }
48
- }
49
- }
50
- }
51
-
52
- return this;
53
- },
54
-
55
- removeClass: function( value ) {
56
- var classes, elem, cur, clazz, j, finalValue,
57
- proceed = arguments.length === 0 || typeof value === "string" && value,
58
- i = 0,
59
- len = this.length;
60
-
61
- if ( jQuery.isFunction( value ) ) {
62
- return this.each(function( j ) {
63
- jQuery( this ).removeClass( value.call( this, j, this.className ) );
64
- });
65
- }
66
- if ( proceed ) {
67
- classes = ( value || "" ).match( rnotwhite ) || [];
68
-
69
- for ( ; i < len; i++ ) {
70
- elem = this[ i ];
71
- // This expression is here for better compressibility (see addClass)
72
- cur = elem.nodeType === 1 && ( elem.className ?
73
- ( " " + elem.className + " " ).replace( rclass, " " ) :
74
- ""
75
- );
76
-
77
- if ( cur ) {
78
- j = 0;
79
- while ( (clazz = classes[j++]) ) {
80
- // Remove *all* instances
81
- while ( cur.indexOf( " " + clazz + " " ) >= 0 ) {
82
- cur = cur.replace( " " + clazz + " ", " " );
83
- }
84
- }
85
-
86
- // Only assign if different to avoid unneeded rendering.
87
- finalValue = value ? jQuery.trim( cur ) : "";
88
- if ( elem.className !== finalValue ) {
89
- elem.className = finalValue;
90
- }
91
- }
92
- }
93
- }
94
-
95
- return this;
96
- },
97
-
98
- toggleClass: function( value, stateVal ) {
99
- var type = typeof value;
100
-
101
- if ( typeof stateVal === "boolean" && type === "string" ) {
102
- return stateVal ? this.addClass( value ) : this.removeClass( value );
103
- }
104
-
105
- if ( jQuery.isFunction( value ) ) {
106
- return this.each(function( i ) {
107
- jQuery( this ).toggleClass( value.call(this, i, this.className, stateVal), stateVal );
108
- });
109
- }
110
-
111
- return this.each(function() {
112
- if ( type === "string" ) {
113
- // Toggle individual class names
114
- var className,
115
- i = 0,
116
- self = jQuery( this ),
117
- classNames = value.match( rnotwhite ) || [];
118
-
119
- while ( (className = classNames[ i++ ]) ) {
120
- // Check each className given, space separated list
121
- if ( self.hasClass( className ) ) {
122
- self.removeClass( className );
123
- } else {
124
- self.addClass( className );
125
- }
126
- }
127
-
128
- // Toggle whole class name
129
- } else if ( type === strundefined || type === "boolean" ) {
130
- if ( this.className ) {
131
- // store className if set
132
- data_priv.set( this, "__className__", this.className );
133
- }
134
-
135
- // If the element has a class name or if we're passed `false`,
136
- // then remove the whole classname (if there was one, the above saved it).
137
- // Otherwise bring back whatever was previously saved (if anything),
138
- // falling back to the empty string if nothing was stored.
139
- this.className = this.className || value === false ? "" : data_priv.get( this, "__className__" ) || "";
140
- }
141
- });
142
- },
143
-
144
- hasClass: function( selector ) {
145
- var className = " " + selector + " ",
146
- i = 0,
147
- l = this.length;
148
- for ( ; i < l; i++ ) {
149
- if ( this[i].nodeType === 1 && (" " + this[i].className + " ").replace(rclass, " ").indexOf( className ) >= 0 ) {
150
- return true;
151
- }
152
- }
153
-
154
- return false;
155
- }
156
- });
157
-
158
- });
@@ -1,94 +0,0 @@
1
- define([
2
- "../core",
3
- "../core/access",
4
- "./support"
5
- ], function( jQuery, access, support ) {
6
-
7
- var rfocusable = /^(?:input|select|textarea|button)$/i;
8
-
9
- jQuery.fn.extend({
10
- prop: function( name, value ) {
11
- return access( this, jQuery.prop, name, value, arguments.length > 1 );
12
- },
13
-
14
- removeProp: function( name ) {
15
- return this.each(function() {
16
- delete this[ jQuery.propFix[ name ] || name ];
17
- });
18
- }
19
- });
20
-
21
- jQuery.extend({
22
- propFix: {
23
- "for": "htmlFor",
24
- "class": "className"
25
- },
26
-
27
- prop: function( elem, name, value ) {
28
- var ret, hooks, notxml,
29
- nType = elem.nodeType;
30
-
31
- // Don't get/set properties on text, comment and attribute nodes
32
- if ( !elem || nType === 3 || nType === 8 || nType === 2 ) {
33
- return;
34
- }
35
-
36
- notxml = nType !== 1 || !jQuery.isXMLDoc( elem );
37
-
38
- if ( notxml ) {
39
- // Fix name and attach hooks
40
- name = jQuery.propFix[ name ] || name;
41
- hooks = jQuery.propHooks[ name ];
42
- }
43
-
44
- if ( value !== undefined ) {
45
- return hooks && "set" in hooks && (ret = hooks.set( elem, value, name )) !== undefined ?
46
- ret :
47
- ( elem[ name ] = value );
48
-
49
- } else {
50
- return hooks && "get" in hooks && (ret = hooks.get( elem, name )) !== null ?
51
- ret :
52
- elem[ name ];
53
- }
54
- },
55
-
56
- propHooks: {
57
- tabIndex: {
58
- get: function( elem ) {
59
- return elem.hasAttribute( "tabindex" ) || rfocusable.test( elem.nodeName ) || elem.href ?
60
- elem.tabIndex :
61
- -1;
62
- }
63
- }
64
- }
65
- });
66
-
67
- if ( !support.optSelected ) {
68
- jQuery.propHooks.selected = {
69
- get: function( elem ) {
70
- var parent = elem.parentNode;
71
- if ( parent && parent.parentNode ) {
72
- parent.parentNode.selectedIndex;
73
- }
74
- return null;
75
- }
76
- };
77
- }
78
-
79
- jQuery.each([
80
- "tabIndex",
81
- "readOnly",
82
- "maxLength",
83
- "cellSpacing",
84
- "cellPadding",
85
- "rowSpan",
86
- "colSpan",
87
- "useMap",
88
- "frameBorder",
89
- "contentEditable"
90
- ], function() {
91
- jQuery.propFix[ this.toLowerCase() ] = this;
92
- });
93
-
94
- });
@@ -1,35 +0,0 @@
1
- define([
2
- "../var/support"
3
- ], function( support ) {
4
-
5
- (function() {
6
- var input = document.createElement( "input" ),
7
- select = document.createElement( "select" ),
8
- opt = select.appendChild( document.createElement( "option" ) );
9
-
10
- input.type = "checkbox";
11
-
12
- // Support: iOS<=5.1, Android<=4.2+
13
- // Default value for a checkbox should be "on"
14
- support.checkOn = input.value !== "";
15
-
16
- // Support: IE<=11+
17
- // Must access selectedIndex to make default options select
18
- support.optSelected = opt.selected;
19
-
20
- // Support: Android<=2.3
21
- // Options inside disabled selects are incorrectly marked as disabled
22
- select.disabled = true;
23
- support.optDisabled = !opt.disabled;
24
-
25
- // Support: IE<=11+
26
- // An input loses its value after becoming a radio
27
- input = document.createElement( "input" );
28
- input.value = "t";
29
- input.type = "radio";
30
- support.radioValue = input.value === "t";
31
- })();
32
-
33
- return support;
34
-
35
- });
@@ -1,161 +0,0 @@
1
- define([
2
- "../core",
3
- "./support",
4
- "../core/init"
5
- ], function( jQuery, support ) {
6
-
7
- var rreturn = /\r/g;
8
-
9
- jQuery.fn.extend({
10
- val: function( value ) {
11
- var hooks, ret, isFunction,
12
- elem = this[0];
13
-
14
- if ( !arguments.length ) {
15
- if ( elem ) {
16
- hooks = jQuery.valHooks[ elem.type ] || jQuery.valHooks[ elem.nodeName.toLowerCase() ];
17
-
18
- if ( hooks && "get" in hooks && (ret = hooks.get( elem, "value" )) !== undefined ) {
19
- return ret;
20
- }
21
-
22
- ret = elem.value;
23
-
24
- return typeof ret === "string" ?
25
- // Handle most common string cases
26
- ret.replace(rreturn, "") :
27
- // Handle cases where value is null/undef or number
28
- ret == null ? "" : ret;
29
- }
30
-
31
- return;
32
- }
33
-
34
- isFunction = jQuery.isFunction( value );
35
-
36
- return this.each(function( i ) {
37
- var val;
38
-
39
- if ( this.nodeType !== 1 ) {
40
- return;
41
- }
42
-
43
- if ( isFunction ) {
44
- val = value.call( this, i, jQuery( this ).val() );
45
- } else {
46
- val = value;
47
- }
48
-
49
- // Treat null/undefined as ""; convert numbers to string
50
- if ( val == null ) {
51
- val = "";
52
-
53
- } else if ( typeof val === "number" ) {
54
- val += "";
55
-
56
- } else if ( jQuery.isArray( val ) ) {
57
- val = jQuery.map( val, function( value ) {
58
- return value == null ? "" : value + "";
59
- });
60
- }
61
-
62
- hooks = jQuery.valHooks[ this.type ] || jQuery.valHooks[ this.nodeName.toLowerCase() ];
63
-
64
- // If set returns undefined, fall back to normal setting
65
- if ( !hooks || !("set" in hooks) || hooks.set( this, val, "value" ) === undefined ) {
66
- this.value = val;
67
- }
68
- });
69
- }
70
- });
71
-
72
- jQuery.extend({
73
- valHooks: {
74
- option: {
75
- get: function( elem ) {
76
- var val = jQuery.find.attr( elem, "value" );
77
- return val != null ?
78
- val :
79
- // Support: IE10-11+
80
- // option.text throws exceptions (#14686, #14858)
81
- jQuery.trim( jQuery.text( elem ) );
82
- }
83
- },
84
- select: {
85
- get: function( elem ) {
86
- var value, option,
87
- options = elem.options,
88
- index = elem.selectedIndex,
89
- one = elem.type === "select-one" || index < 0,
90
- values = one ? null : [],
91
- max = one ? index + 1 : options.length,
92
- i = index < 0 ?
93
- max :
94
- one ? index : 0;
95
-
96
- // Loop through all the selected options
97
- for ( ; i < max; i++ ) {
98
- option = options[ i ];
99
-
100
- // IE6-9 doesn't update selected after form reset (#2551)
101
- if ( ( option.selected || i === index ) &&
102
- // Don't return options that are disabled or in a disabled optgroup
103
- ( support.optDisabled ? !option.disabled : option.getAttribute( "disabled" ) === null ) &&
104
- ( !option.parentNode.disabled || !jQuery.nodeName( option.parentNode, "optgroup" ) ) ) {
105
-
106
- // Get the specific value for the option
107
- value = jQuery( option ).val();
108
-
109
- // We don't need an array for one selects
110
- if ( one ) {
111
- return value;
112
- }
113
-
114
- // Multi-Selects return an array
115
- values.push( value );
116
- }
117
- }
118
-
119
- return values;
120
- },
121
-
122
- set: function( elem, value ) {
123
- var optionSet, option,
124
- options = elem.options,
125
- values = jQuery.makeArray( value ),
126
- i = options.length;
127
-
128
- while ( i-- ) {
129
- option = options[ i ];
130
- if ( (option.selected = jQuery.inArray( option.value, values ) >= 0) ) {
131
- optionSet = true;
132
- }
133
- }
134
-
135
- // Force browsers to behave consistently when non-matching value is set
136
- if ( !optionSet ) {
137
- elem.selectedIndex = -1;
138
- }
139
- return values;
140
- }
141
- }
142
- }
143
- });
144
-
145
- // Radios and checkboxes getter/setter
146
- jQuery.each([ "radio", "checkbox" ], function() {
147
- jQuery.valHooks[ this ] = {
148
- set: function( elem, value ) {
149
- if ( jQuery.isArray( value ) ) {
150
- return ( elem.checked = jQuery.inArray( jQuery(elem).val(), value ) >= 0 );
151
- }
152
- }
153
- };
154
- if ( !support.checkOn ) {
155
- jQuery.valHooks[ this ].get = function( elem ) {
156
- return elem.getAttribute("value") === null ? "on" : elem.value;
157
- };
158
- }
159
- });
160
-
161
- });
@@ -1,11 +0,0 @@
1
- define([
2
- "./core",
3
- "./attributes/attr",
4
- "./attributes/prop",
5
- "./attributes/classes",
6
- "./attributes/val"
7
- ], function( jQuery ) {
8
-
9
- // Return jQuery for attributes-only inclusion
10
- return jQuery;
11
- });