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,205 +0,0 @@
1
- define([
2
- "./core",
3
- "./var/rnotwhite"
4
- ], function( jQuery, rnotwhite ) {
5
-
6
- // String to Object options format cache
7
- var optionsCache = {};
8
-
9
- // Convert String-formatted options into Object-formatted ones and store in cache
10
- function createOptions( options ) {
11
- var object = optionsCache[ options ] = {};
12
- jQuery.each( options.match( rnotwhite ) || [], function( _, flag ) {
13
- object[ flag ] = true;
14
- });
15
- return object;
16
- }
17
-
18
- /*
19
- * Create a callback list using the following parameters:
20
- *
21
- * options: an optional list of space-separated options that will change how
22
- * the callback list behaves or a more traditional option object
23
- *
24
- * By default a callback list will act like an event callback list and can be
25
- * "fired" multiple times.
26
- *
27
- * Possible options:
28
- *
29
- * once: will ensure the callback list can only be fired once (like a Deferred)
30
- *
31
- * memory: will keep track of previous values and will call any callback added
32
- * after the list has been fired right away with the latest "memorized"
33
- * values (like a Deferred)
34
- *
35
- * unique: will ensure a callback can only be added once (no duplicate in the list)
36
- *
37
- * stopOnFalse: interrupt callings when a callback returns false
38
- *
39
- */
40
- jQuery.Callbacks = function( options ) {
41
-
42
- // Convert options from String-formatted to Object-formatted if needed
43
- // (we check in cache first)
44
- options = typeof options === "string" ?
45
- ( optionsCache[ options ] || createOptions( options ) ) :
46
- jQuery.extend( {}, options );
47
-
48
- var // Last fire value (for non-forgettable lists)
49
- memory,
50
- // Flag to know if list was already fired
51
- fired,
52
- // Flag to know if list is currently firing
53
- firing,
54
- // First callback to fire (used internally by add and fireWith)
55
- firingStart,
56
- // End of the loop when firing
57
- firingLength,
58
- // Index of currently firing callback (modified by remove if needed)
59
- firingIndex,
60
- // Actual callback list
61
- list = [],
62
- // Stack of fire calls for repeatable lists
63
- stack = !options.once && [],
64
- // Fire callbacks
65
- fire = function( data ) {
66
- memory = options.memory && data;
67
- fired = true;
68
- firingIndex = firingStart || 0;
69
- firingStart = 0;
70
- firingLength = list.length;
71
- firing = true;
72
- for ( ; list && firingIndex < firingLength; firingIndex++ ) {
73
- if ( list[ firingIndex ].apply( data[ 0 ], data[ 1 ] ) === false && options.stopOnFalse ) {
74
- memory = false; // To prevent further calls using add
75
- break;
76
- }
77
- }
78
- firing = false;
79
- if ( list ) {
80
- if ( stack ) {
81
- if ( stack.length ) {
82
- fire( stack.shift() );
83
- }
84
- } else if ( memory ) {
85
- list = [];
86
- } else {
87
- self.disable();
88
- }
89
- }
90
- },
91
- // Actual Callbacks object
92
- self = {
93
- // Add a callback or a collection of callbacks to the list
94
- add: function() {
95
- if ( list ) {
96
- // First, we save the current length
97
- var start = list.length;
98
- (function add( args ) {
99
- jQuery.each( args, function( _, arg ) {
100
- var type = jQuery.type( arg );
101
- if ( type === "function" ) {
102
- if ( !options.unique || !self.has( arg ) ) {
103
- list.push( arg );
104
- }
105
- } else if ( arg && arg.length && type !== "string" ) {
106
- // Inspect recursively
107
- add( arg );
108
- }
109
- });
110
- })( arguments );
111
- // Do we need to add the callbacks to the
112
- // current firing batch?
113
- if ( firing ) {
114
- firingLength = list.length;
115
- // With memory, if we're not firing then
116
- // we should call right away
117
- } else if ( memory ) {
118
- firingStart = start;
119
- fire( memory );
120
- }
121
- }
122
- return this;
123
- },
124
- // Remove a callback from the list
125
- remove: function() {
126
- if ( list ) {
127
- jQuery.each( arguments, function( _, arg ) {
128
- var index;
129
- while ( ( index = jQuery.inArray( arg, list, index ) ) > -1 ) {
130
- list.splice( index, 1 );
131
- // Handle firing indexes
132
- if ( firing ) {
133
- if ( index <= firingLength ) {
134
- firingLength--;
135
- }
136
- if ( index <= firingIndex ) {
137
- firingIndex--;
138
- }
139
- }
140
- }
141
- });
142
- }
143
- return this;
144
- },
145
- // Check if a given callback is in the list.
146
- // If no argument is given, return whether or not list has callbacks attached.
147
- has: function( fn ) {
148
- return fn ? jQuery.inArray( fn, list ) > -1 : !!( list && list.length );
149
- },
150
- // Remove all callbacks from the list
151
- empty: function() {
152
- list = [];
153
- firingLength = 0;
154
- return this;
155
- },
156
- // Have the list do nothing anymore
157
- disable: function() {
158
- list = stack = memory = undefined;
159
- return this;
160
- },
161
- // Is it disabled?
162
- disabled: function() {
163
- return !list;
164
- },
165
- // Lock the list in its current state
166
- lock: function() {
167
- stack = undefined;
168
- if ( !memory ) {
169
- self.disable();
170
- }
171
- return this;
172
- },
173
- // Is it locked?
174
- locked: function() {
175
- return !stack;
176
- },
177
- // Call all callbacks with the given context and arguments
178
- fireWith: function( context, args ) {
179
- if ( list && ( !fired || stack ) ) {
180
- args = args || [];
181
- args = [ context, args.slice ? args.slice() : args ];
182
- if ( firing ) {
183
- stack.push( args );
184
- } else {
185
- fire( args );
186
- }
187
- }
188
- return this;
189
- },
190
- // Call all the callbacks with the given arguments
191
- fire: function() {
192
- self.fireWith( this, arguments );
193
- return this;
194
- },
195
- // To know if the callbacks have already been called at least once
196
- fired: function() {
197
- return !!fired;
198
- }
199
- };
200
-
201
- return self;
202
- };
203
-
204
- return jQuery;
205
- });
@@ -1,60 +0,0 @@
1
- define([
2
- "../core"
3
- ], function( jQuery ) {
4
-
5
- // Multifunctional method to get and set values of a collection
6
- // The value/s can optionally be executed if it's a function
7
- var access = jQuery.access = function( elems, fn, key, value, chainable, emptyGet, raw ) {
8
- var i = 0,
9
- len = elems.length,
10
- bulk = key == null;
11
-
12
- // Sets many values
13
- if ( jQuery.type( key ) === "object" ) {
14
- chainable = true;
15
- for ( i in key ) {
16
- jQuery.access( elems, fn, i, key[i], true, emptyGet, raw );
17
- }
18
-
19
- // Sets one value
20
- } else if ( value !== undefined ) {
21
- chainable = true;
22
-
23
- if ( !jQuery.isFunction( value ) ) {
24
- raw = true;
25
- }
26
-
27
- if ( bulk ) {
28
- // Bulk operations run against the entire set
29
- if ( raw ) {
30
- fn.call( elems, value );
31
- fn = null;
32
-
33
- // ...except when executing function values
34
- } else {
35
- bulk = fn;
36
- fn = function( elem, key, value ) {
37
- return bulk.call( jQuery( elem ), value );
38
- };
39
- }
40
- }
41
-
42
- if ( fn ) {
43
- for ( ; i < len; i++ ) {
44
- fn( elems[i], key, raw ? value : value.call( elems[i], i, fn( elems[i], key ) ) );
45
- }
46
- }
47
- }
48
-
49
- return chainable ?
50
- elems :
51
-
52
- // Gets
53
- bulk ?
54
- fn.call( elems ) :
55
- len ? fn( elems[0], key ) : emptyGet;
56
- };
57
-
58
- return access;
59
-
60
- });
@@ -1,123 +0,0 @@
1
- // Initialize a jQuery object
2
- define([
3
- "../core",
4
- "./var/rsingleTag",
5
- "../traversing/findFilter"
6
- ], function( jQuery, rsingleTag ) {
7
-
8
- // A central reference to the root jQuery(document)
9
- var rootjQuery,
10
-
11
- // A simple way to check for HTML strings
12
- // Prioritize #id over <tag> to avoid XSS via location.hash (#9521)
13
- // Strict HTML recognition (#11290: must start with <)
14
- rquickExpr = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/,
15
-
16
- init = jQuery.fn.init = function( selector, context ) {
17
- var match, elem;
18
-
19
- // HANDLE: $(""), $(null), $(undefined), $(false)
20
- if ( !selector ) {
21
- return this;
22
- }
23
-
24
- // Handle HTML strings
25
- if ( typeof selector === "string" ) {
26
- if ( selector[0] === "<" && selector[ selector.length - 1 ] === ">" && selector.length >= 3 ) {
27
- // Assume that strings that start and end with <> are HTML and skip the regex check
28
- match = [ null, selector, null ];
29
-
30
- } else {
31
- match = rquickExpr.exec( selector );
32
- }
33
-
34
- // Match html or make sure no context is specified for #id
35
- if ( match && (match[1] || !context) ) {
36
-
37
- // HANDLE: $(html) -> $(array)
38
- if ( match[1] ) {
39
- context = context instanceof jQuery ? context[0] : context;
40
-
41
- // Option to run scripts is true for back-compat
42
- // Intentionally let the error be thrown if parseHTML is not present
43
- jQuery.merge( this, jQuery.parseHTML(
44
- match[1],
45
- context && context.nodeType ? context.ownerDocument || context : document,
46
- true
47
- ) );
48
-
49
- // HANDLE: $(html, props)
50
- if ( rsingleTag.test( match[1] ) && jQuery.isPlainObject( context ) ) {
51
- for ( match in context ) {
52
- // Properties of context are called as methods if possible
53
- if ( jQuery.isFunction( this[ match ] ) ) {
54
- this[ match ]( context[ match ] );
55
-
56
- // ...and otherwise set as attributes
57
- } else {
58
- this.attr( match, context[ match ] );
59
- }
60
- }
61
- }
62
-
63
- return this;
64
-
65
- // HANDLE: $(#id)
66
- } else {
67
- elem = document.getElementById( match[2] );
68
-
69
- // Support: Blackberry 4.6
70
- // gEBID returns nodes no longer in the document (#6963)
71
- if ( elem && elem.parentNode ) {
72
- // Inject the element directly into the jQuery object
73
- this.length = 1;
74
- this[0] = elem;
75
- }
76
-
77
- this.context = document;
78
- this.selector = selector;
79
- return this;
80
- }
81
-
82
- // HANDLE: $(expr, $(...))
83
- } else if ( !context || context.jquery ) {
84
- return ( context || rootjQuery ).find( selector );
85
-
86
- // HANDLE: $(expr, context)
87
- // (which is just equivalent to: $(context).find(expr)
88
- } else {
89
- return this.constructor( context ).find( selector );
90
- }
91
-
92
- // HANDLE: $(DOMElement)
93
- } else if ( selector.nodeType ) {
94
- this.context = this[0] = selector;
95
- this.length = 1;
96
- return this;
97
-
98
- // HANDLE: $(function)
99
- // Shortcut for document ready
100
- } else if ( jQuery.isFunction( selector ) ) {
101
- return typeof rootjQuery.ready !== "undefined" ?
102
- rootjQuery.ready( selector ) :
103
- // Execute immediately if ready is not present
104
- selector( jQuery );
105
- }
106
-
107
- if ( selector.selector !== undefined ) {
108
- this.selector = selector.selector;
109
- this.context = selector.context;
110
- }
111
-
112
- return jQuery.makeArray( selector, this );
113
- };
114
-
115
- // Give the init function the jQuery prototype for later instantiation
116
- init.prototype = jQuery.fn;
117
-
118
- // Initialize central reference
119
- rootjQuery = jQuery( document );
120
-
121
- return init;
122
-
123
- });
@@ -1,39 +0,0 @@
1
- define([
2
- "../core",
3
- "./var/rsingleTag",
4
- "../manipulation" // buildFragment
5
- ], function( jQuery, rsingleTag ) {
6
-
7
- // data: string of html
8
- // context (optional): If specified, the fragment will be created in this context, defaults to document
9
- // keepScripts (optional): If true, will include scripts passed in the html string
10
- jQuery.parseHTML = function( data, context, keepScripts ) {
11
- if ( !data || typeof data !== "string" ) {
12
- return null;
13
- }
14
- if ( typeof context === "boolean" ) {
15
- keepScripts = context;
16
- context = false;
17
- }
18
- context = context || document;
19
-
20
- var parsed = rsingleTag.exec( data ),
21
- scripts = !keepScripts && [];
22
-
23
- // Single tag
24
- if ( parsed ) {
25
- return [ context.createElement( parsed[1] ) ];
26
- }
27
-
28
- parsed = jQuery.buildFragment( [ data ], context, scripts );
29
-
30
- if ( scripts && scripts.length ) {
31
- jQuery( scripts ).remove();
32
- }
33
-
34
- return jQuery.merge( [], parsed.childNodes );
35
- };
36
-
37
- return jQuery.parseHTML;
38
-
39
- });
@@ -1,97 +0,0 @@
1
- define([
2
- "../core",
3
- "../core/init",
4
- "../deferred"
5
- ], function( jQuery ) {
6
-
7
- // The deferred used on DOM ready
8
- var readyList;
9
-
10
- jQuery.fn.ready = function( fn ) {
11
- // Add the callback
12
- jQuery.ready.promise().done( fn );
13
-
14
- return this;
15
- };
16
-
17
- jQuery.extend({
18
- // Is the DOM ready to be used? Set to true once it occurs.
19
- isReady: false,
20
-
21
- // A counter to track how many items to wait for before
22
- // the ready event fires. See #6781
23
- readyWait: 1,
24
-
25
- // Hold (or release) the ready event
26
- holdReady: function( hold ) {
27
- if ( hold ) {
28
- jQuery.readyWait++;
29
- } else {
30
- jQuery.ready( true );
31
- }
32
- },
33
-
34
- // Handle when the DOM is ready
35
- ready: function( wait ) {
36
-
37
- // Abort if there are pending holds or we're already ready
38
- if ( wait === true ? --jQuery.readyWait : jQuery.isReady ) {
39
- return;
40
- }
41
-
42
- // Remember that the DOM is ready
43
- jQuery.isReady = true;
44
-
45
- // If a normal DOM Ready event fired, decrement, and wait if need be
46
- if ( wait !== true && --jQuery.readyWait > 0 ) {
47
- return;
48
- }
49
-
50
- // If there are functions bound, to execute
51
- readyList.resolveWith( document, [ jQuery ] );
52
-
53
- // Trigger any bound ready events
54
- if ( jQuery.fn.triggerHandler ) {
55
- jQuery( document ).triggerHandler( "ready" );
56
- jQuery( document ).off( "ready" );
57
- }
58
- }
59
- });
60
-
61
- /**
62
- * The ready event handler and self cleanup method
63
- */
64
- function completed() {
65
- document.removeEventListener( "DOMContentLoaded", completed, false );
66
- window.removeEventListener( "load", completed, false );
67
- jQuery.ready();
68
- }
69
-
70
- jQuery.ready.promise = function( obj ) {
71
- if ( !readyList ) {
72
-
73
- readyList = jQuery.Deferred();
74
-
75
- // Catch cases where $(document).ready() is called after the browser event has already occurred.
76
- // We once tried to use readyState "interactive" here, but it caused issues like the one
77
- // discovered by ChrisS here: http://bugs.jquery.com/ticket/12282#comment:15
78
- if ( document.readyState === "complete" ) {
79
- // Handle it asynchronously to allow scripts the opportunity to delay ready
80
- setTimeout( jQuery.ready );
81
-
82
- } else {
83
-
84
- // Use the handy event callback
85
- document.addEventListener( "DOMContentLoaded", completed, false );
86
-
87
- // A fallback to window.onload, that will always work
88
- window.addEventListener( "load", completed, false );
89
- }
90
- }
91
- return readyList.promise( obj );
92
- };
93
-
94
- // Kick off the DOM ready check even if the user does not
95
- jQuery.ready.promise();
96
-
97
- });
@@ -1,4 +0,0 @@
1
- define(function() {
2
- // Match a standalone tag
3
- return (/^<(\w+)\s*\/?>(?:<\/\1>|)$/);
4
- });