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
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d773b2af12e832d7e2181a1df6d423e80efac985
4
- data.tar.gz: c5edb394c1cba8008299c76039ccbb817a582ecc
3
+ metadata.gz: eff167c9b219c6ff6e513dcddaad4f69a000a2d1
4
+ data.tar.gz: e60d7f41c8d7b36d9156dddfe691f78927469341
5
5
  SHA512:
6
- metadata.gz: c53329553146e3b4cdb9c70534e323ffe236b744260191ab615f637ee1838ebdaa5d45784e386382cddd74a5c23cd4e05a1e0eed0fd7307c006530c474d84b14
7
- data.tar.gz: 842425dd5b9dfc1053213ad42caf5264588c46d5a51ed1d416c085790657ebf7ef72924ed142dbb747a868684af163db5b6bac4d8d841bb86e92853702ce199d
6
+ metadata.gz: cff124d22a03502c85c1cf487c18abf1530771216eea237c183c37a0cf7b4f42b0fca3032b36c0af179765d8ea8054512e41f61c71d171483f61ea3acde85c6a
7
+ data.tar.gz: 9174013d3562bd2bad0507907b17b831c707a1f87a2dcf2832858cc8706e9d736faaa02157e9a1ea54c37a717b0502402b73b62e71c8ff165fb3764e926b44a1
data/CHANGELOG.md CHANGED
@@ -2,33 +2,63 @@ Changelog
2
2
  =========
3
3
 
4
4
  All notable changes to this project will be documented in this file.
5
+
5
6
  This project mostly adheres to [Semantic Versioning](http://semver.org/).
6
7
 
7
8
 
8
- Unreleased
9
- ----------
9
+ 0.33.0
10
+ ------
10
11
 
11
12
  ### Compatible changes
12
13
 
14
+ - When a fragment updates cannot find the requested element, you can now define a fallback selector to use instead.
15
+
16
+ A `{ fallback }` option has been added to all Javascript functions that update fragments, like [`up.replace()`](/up.replace).
17
+
18
+ Also an `[up-fallback]` attribute has been added to all CSS selectors that update fragments, like for [`a[up-target]`](/a-up-target).
19
+
20
+ You can also define fallbacks globally using the [`up.dom.config`](/up.dom.config) property.
21
+ - Unpoly no longer crashes when a request fails due to a timeout or network problem. In such cases, async functions (like [`up.replace()`](/up.replace)) will leave the page unchanged and reject the returned promise.
22
+ - Functions that make a request (like [`up.replace()`](/up.replace) or like [`up.ajax()`](/up.ajax)) now accept a new option `{ timeout }`.
23
+ - [Modals](/up.modal) no longer create an `.up-modal` element when the server returns a non-200 status and the `{ failTarget }` is replaced instead
24
+ - [Popups](/up.popup) no longer create an `.up-popup` element when the server returns a non-200 status and the `{ failTarget }` is replaced instead
25
+ - Improve performance when updating fragments without transitions
26
+ - When updating the `body` element with a transition, that transition is now silently ignored instead of throwing an error.
27
+ - [`up.util.resolvedPromise()`](/up.util.resolvedPromise) now accepts arguments which will become the resolution values.
28
+ - [`up.util.resolvedDeferred()`](/up.util.resolvedDeferred) now accepts arguments which will become the resolution values.
29
+ - New utility method [`up.util.rejectedPromise()`](/up.util.rejectedPromise).
30
+ - [`up.first()`](/up.first) has new option `{ origin }`. You can use it provide a second element or selector that can be referenced as `&` in the first selector:
31
+
32
+ $input = $('input.email');
33
+ up.first('.field:has(&)', $input); // returns the .field containing $input
34
+ - Fix a bug where the document title wasn't restored when the user uses the back button
35
+ - When [revealing a page fragment](/up.reveal), Unpoly will include the element's top and bottom margin in the area that should be revealed.
36
+
13
37
 
14
38
  ### Breaking changes
15
39
 
40
+ - [`up.replace()`](/up.replace) now returns a rejected promise if the server returns a non-200 status code.
41
+ - `up.util.merge()` has been replaced by [`up.util.assign()`](/up.util.assign), which no longer makes exceptions for `null` and `undefined` property values. This behaves like [`Object.assign`](https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/assign).
42
+ - The `up.flow` module has been renamed to [`up.dom`](/up.dom).
43
+ - The `up.navigation` module has been renamed to [`up.feedback`](/up.feedback).
44
+ - Functions that measure position, dimensions or margin now return floats instead of rounded integers.
16
45
 
17
- Unreleased
18
- ----------
46
+
47
+ 0.32.0
48
+ ------
19
49
 
20
50
  ### Compatible changes
21
51
 
22
52
  - Fix a bug where morphing an [`[up-keep]`](/up-keep) element with a destructor would throw an error.
23
53
  - Fix a bug where an [`[up-keep]`](/up-keep) element would lose its jQuery event handlers when it was kept.
24
54
  - Fix a bug where [`up.log.disable()`](/up.log.disable) did not persist through page reloads.
25
- - Fix a bug where [`up.reveal`](/up.reveal) would scroll too far if the viewport has a `padding-top`.
26
- - Fix a bug where [`up.reveal`](/up.reveal) would not scroll to an element at the bottom edge of the visible area
55
+ - Fix a bug where [`up.reveal()`](/up.reveal) would scroll too far if the viewport has a `padding-top`.
56
+ - Fix a bug where [`up.reveal()`](/up.reveal) would not scroll to an element at the bottom edge of the visible area
27
57
  if [`up.layout.config.snap`](/up.layout.config) is set.
28
58
  - Several features have been promoted from experimental API to stable API:
29
59
  - [`[up-drawer]`](/up-drawer)
30
- - [`up.syntax.data`](/up.syntax.data)
31
- - [`up.extract`](/up.extract)
60
+ - [`up.syntax.data()`](/up.syntax.data)
61
+ - [`up.extract()`](/up.extract)
32
62
  - When [targeting](/up-target) an URL with a #hash, the viewport will now scroll to the first row of an element
33
63
  with that ID, rather than scrolling as little as possible.
34
64
 
@@ -62,7 +92,7 @@ Unreleased
62
92
 
63
93
  ### Breaking changes
64
94
 
65
- - The [`up.modal.flavor`](/up.modal.flavor) function was deprecated. Set values on the
95
+ - The [`up.modal.flavor()`](/up.modal.flavor) function was deprecated. Set values on the
66
96
  [`up.modal.flavors`](/up.modal.flavors) property instead.
67
97
 
68
98
 
@@ -71,9 +101,9 @@ Unreleased
71
101
 
72
102
  ### Compatible changes
73
103
 
74
- - Fix [`up.observe`](/up.observe) not honoring `{ delay }` option
104
+ - Fix [`up.observe()`](/up.observe) not honoring `{ delay }` option
75
105
  - Fix [`[up-observe]`](/up-observe) not honoring `[up-delay]` modifier
76
- - Fix many issues with concurrency and slow server responses for [`up.observe`](/up.observe) and [`[up-observe]`](/up-observe)
106
+ - Fix many issues with concurrency and slow server responses for [`up.observe()`](/up.observe) and [`[up-observe]`](/up-observe)
77
107
 
78
108
 
79
109
 
@@ -92,9 +122,9 @@ Unreleased
92
122
 
93
123
  ### Compatible changes
94
124
 
95
- - [`up.popup.attach`](/up.popup.attach) now has a `{ html }` option. This allows you to extract popup contents
125
+ - [`up.popup.attach()`](/up.popup.attach) now has a `{ html }` option. This allows you to extract popup contents
96
126
  from a HTML string without making a network request.
97
- - [`up.tooltip.attach`](/up.tooltip.attach) now has a `{ text }` option which automatically escapes the given string.
127
+ - [`up.tooltip.attach()`](/up.tooltip.attach) now has a `{ text }` option which automatically escapes the given string.
98
128
  - Fix a bug on Firefox where the page width would jump by the scrollbar width when opening a modal.
99
129
  - Fix a bug where modals would close when following a link to a cached destination.
100
130
 
@@ -108,7 +138,7 @@ Unreleased
108
138
 
109
139
  ### Compatible changes
110
140
 
111
- - [`up.tooltip.attach`](/up.tooltip.attach) now has a `{ text }` option which automatically escapes the given string.
141
+ - [`up.tooltip.attach()`](/up.tooltip.attach) now has a `{ text }` option which automatically escapes the given string.
112
142
  - Fix a bug where Unpoly would hang when parsing a page with a `<head>` but without a `<title>`
113
143
 
114
144
 
@@ -120,8 +150,8 @@ Unreleased
120
150
  - The error notification is now easier to read and can be closed.
121
151
  - When a target selector was not found in the response, the error notification now offers a link to re-request the response for inspection.
122
152
  - [Compilers](/up.compiler) can now return an array of functions that will *all* be called when the element is destroyed.
123
- - [`up.observe`](/up.observe) now works on checkboxes and radio buttons.
124
- - [`up.observe`](/up.observe) can now be called with multiple form fields, or any container that contains form fields.
153
+ - [`up.observe()`](/up.observe) now works on checkboxes and radio buttons.
154
+ - [`up.observe()`](/up.observe) can now be called with multiple form fields, or any container that contains form fields.
125
155
  - When opening a [modal](/up.modal) you can now pass an option `{ closable: false }` or set an `up-closable='false'` attribute
126
156
  This lets you disable the default methods to close a modal (close button, clicking on the backdrop, pressing ESC).
127
157
  You can also configure this globally by setting [`up.modal.config.closable`](/up.modal.config).
@@ -131,7 +161,7 @@ Unreleased
131
161
 
132
162
  ### Breaking changes
133
163
 
134
- - `up.error` has been renamed to [`up.fail`](/up.fail) in order to prevent confusion with [`up.log.error`](/up.log.error).
164
+ - `up.error()` has been renamed to [`up.fail()`](/up.fail) in order to prevent confusion with [`up.log.error()`](/up.log.error).
135
165
 
136
166
 
137
167
  0.27.3
@@ -147,8 +177,8 @@ Unreleased
147
177
 
148
178
  ### Breaking changes
149
179
 
150
- - The `{ url }` option for [`up.destroy`](/up.destroy) has been renamed to `{ history }` to be more
151
- in line with [`up.replace`](/up.replace).
180
+ - The `{ url }` option for [`up.destroy()`](/up.destroy) has been renamed to `{ history }` to be more
181
+ in line with [`up.replace()`](/up.replace).
152
182
 
153
183
 
154
184
  0.27.2
@@ -189,19 +219,19 @@ Unreleased
189
219
 
190
220
  ### Compatible changes
191
221
 
192
- - Calling [`up.log.enable`](/up.log.enable) will now keep logging enabled for the remainder of this
222
+ - Calling [`up.log.enable()`](/up.log.enable) will now keep logging enabled for the remainder of this
193
223
  browser session (and persist through page reloads).
194
224
  - Added experimental events to observe history changes: [`up:history:push`](/up:history:push) (preventable), [`up:history:pushed`](/up:history:pushed) and [`up:history:restored`](/up:history:restored)
195
225
  - Fix a bug where prepending or appending multiple elements with `:before` / `:after` pseudo-classes
196
226
  would not work correctly in tables.
197
- - Fix a bug where calling [`up.animate`](/up.animate) with `{ duration: 0 }` would return a promise
227
+ - Fix a bug where calling [`up.animate()`](/up.animate) with `{ duration: 0 }` would return a promise
198
228
  that never resolved.
199
229
  - A click on the page body now closes the popup on `mousedown` instead of `click`.
200
230
  This fixes the case where an `[up-instant]` link removes its parent and thus a `click` event never bubbles up to the body.
201
231
  - When opening a modal, elements behind the dialog can now be moved correctly when scrollbars have custom styles on `::-webkit-scrollbar`.
202
232
  To take advantage of this, make sure to also style scrollbars on elements with an [`[up-viewport]`](/up-viewport) attribute.
203
233
  - Fix a bug where [`up.tooltip.config`](/up.tooltip.config) was not publicly acccessible.
204
- - Fix a bug where [`up.tooltip.isOpen`](/up.tooltip.isOpen) was not publicly acccessible.
234
+ - Fix a bug where [`up.tooltip.isOpen()`](/up.tooltip.isOpen) was not publicly acccessible.
205
235
  - New [tooltip configuration options](/up.tooltip.config): `config.openDuration`, `config.closeDuration`, `config.openEasing`, `config.closeEasing`
206
236
  - Opening/closing many tooltips concurrently now behaves deterministically.
207
237
  - Opening/closing many popups concurrently now behaves deterministically.
@@ -250,7 +280,7 @@ Unreleased
250
280
  - New configuration options in [`up.log.config`](/up.log.config): `up.log.config.enabled`, `up.log.config.collapse` and
251
281
  `up.log.config.prefix`.
252
282
  - Improve formatting of error messages.
253
- - New experimental utility function [`up.util.escapeHtml`](/up.util.escapeHtml).
283
+ - New experimental utility function [`up.util.escapeHtml()`](/up.util.escapeHtml).
254
284
  - If an error is thrown before the document is ready, Unpoly now waits until the document is ready before showing the red error box.
255
285
 
256
286
 
@@ -269,7 +299,7 @@ Unreleased
269
299
 
270
300
  ### Compatible changes
271
301
 
272
- - Fix a bug where [`up.ajax`](/up.ajax) would incorrectly re-use form responses even if the form data differed
302
+ - Fix a bug where [`up.ajax()`](/up.ajax) would incorrectly re-use form responses even if the form data differed
273
303
  - Fix a bug with the [`up-observe`](/up-observe) UJS attribute throwing an error when used
274
304
  - Fix a bug where if multiple compilers with [destructors](/up.compiler#cleaning-up-after-yourself)
275
305
  are applied to the same element and the element is removed, only the last destructor was called.
@@ -281,11 +311,11 @@ Unreleased
281
311
  ### Compatible changes
282
312
 
283
313
  - New modal default [`up.modal.config.sticky`](/up.modal.config)
284
- - New experimental function [`up.modal.flavor`](/up.modal.flavor) to register modal variants (like drawers).
314
+ - New experimental function [`up.modal.flavor()`](/up.modal.flavor) to register modal variants (like drawers).
285
315
  - Fix a bug where [compilers](/up.compiler) and [macros](/up.macro) with higher priorities were executed last (instead of first like it says in the docs).
286
316
  - Fix a bug that would occur if two compiled elements, that were nested within each other, would raise an error if the outer element was destroyed and both compilers have destructor functions.
287
317
  - Fix a bug where replacing the `body` tag would raise an error if any element in the old `<body>` had a destructor function.
288
- - The promise returned by [`up.replace`](/up.replace) now waits for transitions to complete before resolving
318
+ - The promise returned by [`up.replace()`](/up.replace) now waits for transitions to complete before resolving
289
319
  - Fix a bug where an error would be shown when opening a modal while another modal was still loading
290
320
  - Fix a bug where two popups would be shown when opening a popup while another popup was still loading
291
321
  - New options for [up.popup.config](/up.popup.config):
@@ -319,9 +349,9 @@ Unreleased
319
349
 
320
350
  ### Compatible changes
321
351
 
322
- - New function [`up.modal.extract`](/up.modal.extract) to open a modal from an
352
+ - New function [`up.modal.extract()`](/up.modal.extract) to open a modal from an
323
353
  existing HTML string.
324
- - [`up.ajax`](/up.ajax) now also accepts the URL as a first string argument.
354
+ - [`up.ajax()`](/up.ajax) now also accepts the URL as a first string argument.
325
355
  - [Expanded](/up.expand) links to modals or popups now get a pointer cursor via CSS
326
356
  - New options for [up.modal.config](/up.modal.config):
327
357
  - `up.modal.config.openDuration`
@@ -331,9 +361,9 @@ Unreleased
331
361
  - `up.modal.config.backdropOpenAnimation`
332
362
  - `up.modal.config.backdropCloseAnimation`
333
363
  - Also see the breaking changes regarding modal structure below.
334
- - Calling [`up.motion.finish`](/up.motion.finish) without arguments will now
364
+ - Calling [`up.motion.finish()`](/up.motion.finish) without arguments will now
335
365
  complete all animations and transitions on the screen.
336
- - Fix a bug where [`up.motion.finish`](/up.motion.finish) would not cancel CSS transitions that were still in progress.
366
+ - Fix a bug where [`up.motion.finish()`](/up.motion.finish) would not cancel CSS transitions that were still in progress.
337
367
  - Fix a bug where [`up-active`](/up-active) classes where not removed from links when the destination
338
368
  was already [preloaded](/up.preload).
339
369
 
@@ -363,7 +393,7 @@ Unreleased
363
393
  They might change again in the future.
364
394
  - The modal will now take over the document's scrollbars after the open animation has finished.
365
395
  In earlier versions the modal took over as soon as the animation had started.
366
- - Calling [`up.motion.finish`](/up.motion.finish) with an element will now also
396
+ - Calling [`up.motion.finish()`](/up.motion.finish) with an element will now also
367
397
  complete animations/transitions on children of the given element.
368
398
 
369
399
 
@@ -374,9 +404,9 @@ Unreleased
374
404
 
375
405
  - [Animations](/up.motion) `move-to-*` and `move-from-*` now use CSS transforms instead of manipulating the
376
406
  bounding box margins.
377
- - Fix [`up.util.trim`](/up.util.trim) not working properly.
378
- - [`up.morph`](/up.morph) no longer throws an error if called without an `options` object
379
- - Custom transitions can now call [`up.morph`](/up.morph) to refer to other transitions
407
+ - Fix [`up.util.trim()`](/up.util.trim) not working properly.
408
+ - [`up.morph()`](/up.morph) no longer throws an error if called without an `options` object
409
+ - Custom transitions can now call [`up.morph()`](/up.morph) to refer to other transitions
380
410
  - Fix a bug where following a link to a [preloaded](/up-preload) destination would keep the
381
411
  link marked with a [up-active](/up-active) class forever.
382
412
 
@@ -408,7 +438,7 @@ Unreleased
408
438
  - Fix a bug where a link would be followed multiple times if the link's
409
439
  click area was expanded using [`[up-expand]`](/up-expand) and if the
410
440
  link also had an [`up-dash`](/up-dash) attribute.
411
- - [`up.destroy`](/up.destroy) now returns a resolved deferred if the given selector or jQuery collection does not exist
441
+ - [`up.destroy()`](/up.destroy) now returns a resolved deferred if the given selector or jQuery collection does not exist
412
442
 
413
443
 
414
444
  0.22.0
@@ -434,8 +464,8 @@ Unreleased
434
464
 
435
465
  ### Compatible changes
436
466
 
437
- - New function `up.macro`. This registers a [compiler](/up.compiler) that is run before all other compilers.
438
- - [`up.compiler`](/up.compiler) has a new options `{ priority }`. Compilers with higher priorities are run first.
467
+ - New function `up.macro()`. This registers a [compiler](/up.compiler) that is run before all other compilers.
468
+ - [`up.compiler()`](/up.compiler) has a new options `{ priority }`. Compilers with higher priorities are run first.
439
469
  - Fix a bug where trying to apply another transition on an element could throw a *Maximum call stack exceeded*
440
470
  error if the element was already transitioning.
441
471
 
@@ -448,7 +478,7 @@ Unreleased
448
478
  ------
449
479
 
450
480
  - The project has been renamed to *Unpoly*.
451
- - All functions remain in the `up` namespace, so e.g. `up.replace` is still called `up.replace`.
481
+ - All functions remain in the `up` namespace, so e.g. `up.replace()` is still called `up.replace()`.
452
482
  - All UJS functionality remains unchanged, so e.g. `up-target` is still called `up-target`.
453
483
  - The Bower package has been renamed to `unpoly`.
454
484
  - The Ruby gem for the Rails bindings has been renamed to `unpoly-rails`.
@@ -470,12 +500,12 @@ Unreleased
470
500
  ### Compatible changes
471
501
 
472
502
  - Elements can now be persisted during page updates using the [`up-keep`](/up-keep) attribute.
473
- - `up.proxy.ajax` is now available as [`up.ajax`](/up.ajax).
474
- - `up.ajax` can now handle nested objects as `{ data }` option (used to pass form parameters).
503
+ - `up.proxy.ajax()` is now available as [`up.ajax()`](/up.ajax).
504
+ - `up.ajax()` can now handle nested objects as `{ data }` option (used to pass form parameters).
475
505
 
476
506
  ### Breaking changes
477
507
 
478
- - `up.implant` has been renamed to [`up.extract`](/up.extract).
508
+ - `up.implant()` has been renamed to [`up.extract()`](/up.extract).
479
509
 
480
510
 
481
511
  0.18.1
@@ -494,7 +524,7 @@ Unreleased
494
524
  - New UJS attribute [`[up-toggle]`](/up-toggle) to show or hide part of a form if certain options are selected or boxes are checked.
495
525
  - Links can now have an optional `up-confirm` attribute. This opens a confirmation dialog with the given message
496
526
  before the link is followed or the modal/popup is opened.
497
- - New function [`up.off`](/up.off). This unregisters an event listener previously bound with [`up.on`](/up.on).
527
+ - New function [`up.off()`](/up.off). This unregisters an event listener previously bound with [`up.on()`](/up.on).
498
528
  - If a container contains more than one link, you can now set the value of the [`up-expand`](/up-expand)
499
529
  attribute to a CSS selector to define which link should be expanded.
500
530
  - You can now configure a list of idempotent HTTP methods in [`up.proxy.config.safeMethods`](/up.proxy.config).
@@ -502,13 +532,13 @@ Unreleased
502
532
  cache after a non-idempotent request.
503
533
  - Loading modals and popups will now open if there is a fragment update between the modal/popup's
504
534
  request and response.
505
- - [`up.follow`](/up.follow) and [`up.replace`](/up.replace) now have an option `{ failTarget }`.
535
+ - [`up.follow()`](/up.follow) and [`up.replace()`](/up.replace) now have an option `{ failTarget }`.
506
536
  Use it to define the selector to replace if the server responds with a non-200 status code.
507
537
  - [`[up-target]`](/a-up-target) and [`up-follow`](/a-up-follow) now have a modifying attribute `up-fail-target`.
508
538
  Use it to define the selector to replace if the server responds with a non-200 status code.
509
- - New utility method [`up.util.reject`](/up.util.reject)
510
- - New utility method [`up.util.only`](/up.util.only)
511
- - New utility method [`up.util.except`](/up.util.except)
539
+ - New utility method [`up.util.reject()`](/up.util.reject)
540
+ - New utility method [`up.util.only()`](/up.util.only)
541
+ - New utility method [`up.util.except()`](/up.util.except)
512
542
  - Fix a bug where modals could no longer be opened on some browsers
513
543
 
514
544
  ### Breaking changes
@@ -539,7 +569,7 @@ Unreleased
539
569
 
540
570
  ### Breaking changes
541
571
 
542
- - When [`up.observe`](/up.observe) is used with a delay of zero, the callback is invoked instantly (instead of
572
+ - When [`up.observe()`](/up.observe) is used with a delay of zero, the callback is invoked instantly (instead of
543
573
  being invoked in the next animation frame).
544
574
 
545
575
 
@@ -557,7 +587,7 @@ Unreleased
557
587
  - Allow to disable animations globally with `up.motion.enabled = false`.
558
588
  This can be useful in full-stack integration tests like a Selenium test suite.
559
589
  - New function [`up.motion.isEnabled`](/up.motion.isEnabled) to check if animations will be performed.
560
- - [`up.popup.attach`](/up.popup.attach) now throws a helpful error when trying to attach a popup to a non-existing element
590
+ - [`up.popup.attach()`](/up.popup.attach) now throws a helpful error when trying to attach a popup to a non-existing element
561
591
  - New option [`up.modal.config.history`](/up.modal.config) to configure if modals change the browser URL (defaults to `true`)
562
592
  - New option [`up.popup.config.history`](/up.popup.config) to configure if popup change the browser URL (defaults to `false`).
563
593
  - Fix CSS for popups with a position of `"bottom-left"`.
@@ -585,26 +615,26 @@ Unreleased
585
615
 
586
616
  ### Compatible changes
587
617
 
588
- - New function [`up.autosubmit`](/up.autosubmit) and selector [`[up-autosubmit]`](/up-autosubmit) to
618
+ - New function [`up.autosubmit()`](/up.autosubmit) and selector [`[up-autosubmit]`](/up-autosubmit) to
589
619
  observe a form or field and submit the form when a value changes.
590
- - [`up.observe`](/up.observe) and [`[up-observe]`](/up-observe) can now be applied
620
+ - [`up.observe()`](/up.observe) and [`[up-observe]`](/up-observe) can now be applied
591
621
  to `<form>` tags. The callback is run when any field in the form changes.
592
- - New function [`up.browser.canPushState`](/up.browser.canPushState) to detect
622
+ - New function [`up.browser.canPushState()`](/up.browser.canPushState) to detect
593
623
  if the browser supports `history.pushState`.
594
- - New function [`up.browser.canCssTransition`](/up.browser.canCssTransition) to
624
+ - New function [`up.browser.canCssTransition()`](/up.browser.canCssTransition) to
595
625
  detect if the browser supports animation with CSS transitions.
596
- - New function [`up.browser.canInputEvent`](/up.browser.canInputEvent) to
626
+ - New function [`up.browser.canInputEvent()`](/up.browser.canInputEvent) to
597
627
  detect if the browser supports the `input` event.
598
- - Allow to [configure a default delay](/up.form.config) for [`up.observe`](/up.observe).
628
+ - Allow to [configure a default delay](/up.form.config) for [`up.observe()`](/up.observe).
599
629
  - [Popups](/up.popup) now have events [`up:popup:open`](/up:popup:open),
600
630
  [`up:popup:opened`](/up:popup:opened), [`up:popup:close`](/up:popup:close)
601
631
  and [`up:popup:closed`](/up:popup:closed).
602
- - The destructor returned by [`up.observe`](/up.observe) now properly unregisters
632
+ - The destructor returned by [`up.observe()`](/up.observe) now properly unregisters
603
633
  event listeners.
604
634
 
605
635
  ### Breaking changes
606
636
 
607
- - [`up.observe`](/up.observe) now takes the callback function as a last argument.
637
+ - [`up.observe()`](/up.observe) now takes the callback function as a last argument.
608
638
  The callback can now longer be passed as a `.change` option.
609
639
 
610
640
 
@@ -673,8 +703,8 @@ Refactored internals. No API changes.
673
703
 
674
704
  ### Breaking changes
675
705
 
676
- - `up.bus.emit` is now [`up.emit`](http://unpoly.com/up.emit/)
677
- - When `up.first` finds no match, return `undefined` instead of `null`.
706
+ - `up.bus.emit()` is now [`up.emit()`](http://unpoly.com/up.emit/)
707
+ - When `up.first()` finds no match, return `undefined` instead of `null`.
678
708
 
679
709
 
680
710
  0.12.1
@@ -682,7 +712,7 @@ Refactored internals. No API changes.
682
712
 
683
713
  ### Compatible changes
684
714
 
685
- - `up.on` now returns a function that unbinds the events when called
715
+ - `up.on()` now returns a function that unbinds the events when called
686
716
  - Fixed a bug where restoring previous scroll positions was not worked
687
717
  in situations where the same operation would also reveal the replaced element.
688
718
  - Various bugfixes
@@ -721,11 +751,11 @@ Refactored internals. No API changes.
721
751
  up.on('up:fragment:inserted', function(event, $fragment) {
722
752
  ...
723
753
  };
724
- - Renamed `up.ready` to `up.hello`. This will emit an `up:event:inserted` event for the given element,
754
+ - Renamed `up.ready()` to `up.hello()`. This will emit an `up:event:inserted` event for the given element,
725
755
  causing it to be compiled etc.
726
- - `up.popup.open` has been renamed to `up.popup.attach`.
727
- - `up.modal.open` has been split into two methods `up.modal.visit(url)` and `up.modal.follow($link)`.
728
- - `up.tooltip.open` has been renamed to `up.tooltip.attach`.
756
+ - `up.popup.open()` has been renamed to `up.popup.attach()`.
757
+ - `up.modal.open()` has been split into two methods `up.modal.visit(url)` and `up.modal.follow($link)`.
758
+ - `up.tooltip.open()` has been renamed to `up.tooltip.attach()`.
729
759
  - Tooltips now escape HTML by default; To use HTML content, use an `[up-tooltip-html]` attribute instead.
730
760
  - Module configurations are now simple properties like `up.layout.config` instead of methods like `up.layout.defaults(...)`.
731
761
 
@@ -744,7 +774,7 @@ Refactored internals. No API changes.
744
774
  ### Compatible changes
745
775
 
746
776
  - Fix a bug where browsers without CSS animation support would crash after an animation call
747
- - Expose `up.error` as public API. This prints an error message to the error console and throws a new `Error` with that message.
777
+ - Expose `up.error()` as public API. This prints an error message to the error console and throws a new `Error` with that message.
748
778
  - Fix a million bugs related to compatibility with IE9 and IE10
749
779
 
750
780
 
@@ -754,13 +784,13 @@ Refactored internals. No API changes.
754
784
  ### Compatible changes
755
785
 
756
786
  - Rework the scrolling implementation so we don't need to scroll elements to the top before replacing them.
757
- - `up.ajax` now only caches responses with a status code of `200 OK`
787
+ - `up.ajax()` now only caches responses with a status code of `200 OK`
758
788
  - When a link with an `[up-close]` attribute is clicked, the link's default action will only be prevented
759
789
  if the link was actually within a modal or popup.
760
790
  - When revealing an element, Up will now compute the correct element position if there are
761
791
  additional positioning contexts between the viewport and the element
762
- - New option "top" for `up.reveal`: Whether to scroll the viewport so that the first element row aligns with
763
- the top edge of the viewport. Without this option, `up.reveal` scrolls as little as possible.
792
+ - New option "top" for `up.reveal()`: Whether to scroll the viewport so that the first element row aligns with
793
+ the top edge of the viewport. Without this option, `up.reveal()` scrolls as little as possible.
764
794
  - Allow to animate scrolling when the `document` is the viewport.
765
795
  - New `up.layout` setting `fixedRight` that contains selectors for elements that are anchored to
766
796
  the right edge of the screen. When opening a modal, these elements will be prevented from jumping
@@ -810,15 +840,15 @@ Refactored internals. No API changes.
810
840
  ### Breaking changes
811
841
 
812
842
  - While following links and submitting forms will still reveal elements by default,
813
- direct calls of [`up.replace`](/up.replace) no longer do.
843
+ direct calls of [`up.replace()`](/up.replace) no longer do.
814
844
  This behavior can be activated using the `{ reveal: true }` option.
815
845
 
816
846
  ### Compatible changes
817
847
 
818
848
  - Options to control scrolling and cache use for
819
- [`up.submit`](/up.submit),
820
- [`up.follow`](/up.follow),
821
- [`up.visit`](/up.visit),
849
+ [`up.submit()`](/up.submit),
850
+ [`up.follow()`](/up.follow),
851
+ [`up.visit()`](/up.visit),
822
852
  [`form[up-target]`](/form-up-target) and
823
853
  [`a[up-target]`](/a-up-target).
824
854
 
@@ -828,7 +858,7 @@ Refactored internals. No API changes.
828
858
 
829
859
  ### Breaking changes
830
860
 
831
- - [`up.reveal`](/up.reveal) now only reveals the first 150 pixels of an element.
861
+ - [`up.reveal()`](/up.reveal) now only reveals the first 150 pixels of an element.
832
862
 
833
863
 
834
864
  0.10.0
@@ -866,7 +896,7 @@ Refactored internals. No API changes.
866
896
  - Elements are now being [revealed](/up.reveal) within their viewport before they are updated
867
897
  - Elements that are prepended or appended using `:before` or `:after` pseudo-selectors are now scrolled into view after insertion.
868
898
  - New option `up.layout.defaults('snap')` lets you define a number of pixels under which Unpoly will snap to the top edge of the viewport when revealing an element
869
- - You can now make [`up.reveal`](/up.reveal) aware of fixed navigation bars blocking the viewport by setting new options `up.layout.defaults('fixedTop')` and `up.layout.defaults('fixedBottom')`.
899
+ - You can now make [`up.reveal()`](/up.reveal) aware of fixed navigation bars blocking the viewport by setting new options `up.layout.defaults('fixedTop')` and `up.layout.defaults('fixedBottom')`.
870
900
 
871
901
 
872
902
  0.8.2
@@ -874,7 +904,7 @@ Refactored internals. No API changes.
874
904
 
875
905
  ### Compatible changes
876
906
 
877
- - [`up.reveal`](/up.reveal) can now reveal content in modals and containers with `overflow-y: scroll`.
907
+ - [`up.reveal()`](/up.reveal) can now reveal content in modals and containers with `overflow-y: scroll`.
878
908
  - Changing the default configuration of an Unpoly module now raises an error if a config key is unknown.
879
909
  - Links linking to `"#"` are now never marked as `.up-current`.
880
910
 
@@ -1006,7 +1036,7 @@ Refactored internals. No API changes.
1006
1036
 
1007
1037
  ### Breaking changes
1008
1038
 
1009
- - Rename method `up.awaken` to `up.compiler`
1039
+ - Rename method `up.awaken()` to `up.compiler()`
1010
1040
 
1011
1041
 
1012
1042
  0.6.2
@@ -1014,7 +1044,7 @@ Refactored internals. No API changes.
1014
1044
 
1015
1045
  ### Compatible changes
1016
1046
 
1017
- - Option to have a custom HTTP method for `up.follow`
1047
+ - Option to have a custom HTTP method for `up.follow()`
1018
1048
  - No longer preloads links with unsafe HTTP methods
1019
1049
 
1020
1050
 
data/README.md CHANGED
@@ -59,15 +59,18 @@ We are currently feeding four release channels:
59
59
 
60
60
  We always release to all channel simultaneously.
61
61
 
62
- To make a new release:
62
+ To prepare a new version:
63
63
 
64
64
  1. Edit `lib/unpoly/rails/version.rb` and bump the version number. Use [semantic versioning](http://semver.org/).
65
65
  2. Add an entry to `CHANGELOG.md`
66
66
  3. Commit and push the version bump and `CHANGELOG.md`
67
- 4. From the project root, type `rake publish:build`. This will output minified JS and CSS files to the `dist` folder. It also updates the `package.json` for npm.
68
- 5. Commit and push the generated files. There is a rake task `rake publish:commit` that helps with this.
69
- 6. From the project root, type `rake publish:release`. This will publish a new gem version to Rubygems.org.
70
- 7. It will also push a tag for this version, which Bower requires for its own versioning scheme. Finally it publishes to npm.
67
+
68
+ Now we can release a new version. **This requires your to be logged into Rubygems and npm**:
69
+
70
+ 1. From the project root, type `rake publish:build`. This will output minified JS and CSS files to the `dist` folder. It also updates the `package.json` for npm.
71
+ 2. Commit and push the generated files. There is a rake task `rake publish:commit` that helps with this.
72
+ 3. From the project root, type `rake publish:release`. This will publish a new gem version to Rubygems.org.
73
+ 4. It will also push a tag for this version, which Bower requires for its own versioning scheme. Finally it publishes to npm.
71
74
 
72
75
  Always remember to build, commit and push build artifacts before calling `rake publish:release` so the Git tag points to the correct commit.
73
76
 
data/README_RAILS.md CHANGED
@@ -82,7 +82,7 @@ What you still need to do manually
82
82
 
83
83
  ### Failed form submissions must return a non-200 status code
84
84
 
85
- Unpoly lets you submit forms via AJAX by using the [`form[up-target]`](http://unpoly.com/form-up-target) selector or [`up.submit`](http://unpoly.com/up.submit) function.
85
+ Unpoly lets you submit forms via AJAX by using the [`form[up-target]`](http://unpoly.com/form-up-target) selector or [`up.submit()`](http://unpoly.com/up.submit) function.
86
86
 
87
87
  For Unpoly to be able to detect a failed form submission, the form must be re-rendered with a non-200 HTTP status code. We recommend to use either 400 (bad request) or 422 (unprocessable entity).
88
88
 
@@ -0,0 +1,5 @@
1
+ it "returns a rejected promise if the selector can't be found on the current page", (done) ->
2
+ html = '<div class="foo-bar">text</div>'
3
+ up.extract('.foo-bar', html).fail (error) ->
4
+ expect(error).toEqual(/Could not find selector ".foo-bar"/i)
5
+ done()
@@ -19,7 +19,7 @@
19
19
 
20
20
  }).call(this);
21
21
  (function() {
22
- up.navigation.config.currentClasses.push('active');
22
+ up.feedback.config.currentClasses.push('active');
23
23
 
24
24
  }).call(this);
25
25
  (function() {
@@ -1 +1 @@
1
- (function(){up.form.config.validateTargets.unshift(".form-group:has(&)")}).call(this),function(){up.layout.config.fixedTop.push(".navbar-fixed-top"),up.layout.config.fixedBottom.push(".navbar-fixed-bottom"),up.layout.config.anchoredRight.push(".navbar-fixed-top"),up.layout.config.anchoredRight.push(".navbar-fixed-bottom"),up.layout.config.anchoredRight.push(".footer")}.call(this),function(){up.modal.config.template='<div class="up-modal">\n <div class="up-modal-backdrop"></div>\n <div class="up-modal-viewport">\n <div class="up-modal-dialog modal-dialog">\n <div class="up-modal-content modal-content"></div>\n </div>\n </div>\n</div>'}.call(this),function(){up.navigation.config.currentClasses.push("active")}.call(this),function(){}.call(this);
1
+ (function(){up.form.config.validateTargets.unshift(".form-group:has(&)")}).call(this),function(){up.layout.config.fixedTop.push(".navbar-fixed-top"),up.layout.config.fixedBottom.push(".navbar-fixed-bottom"),up.layout.config.anchoredRight.push(".navbar-fixed-top"),up.layout.config.anchoredRight.push(".navbar-fixed-bottom"),up.layout.config.anchoredRight.push(".footer")}.call(this),function(){up.modal.config.template='<div class="up-modal">\n <div class="up-modal-backdrop"></div>\n <div class="up-modal-viewport">\n <div class="up-modal-dialog modal-dialog">\n <div class="up-modal-content modal-content"></div>\n </div>\n </div>\n</div>'}.call(this),function(){up.feedback.config.currentClasses.push("active")}.call(this),function(){}.call(this);