upjs-rails 0.1.0 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (409) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -1
  3. data/Gemfile +8 -0
  4. data/Gemfile.lock +42 -0
  5. data/{LICENSE.txt → LICENSE} +1 -1
  6. data/Rakefile +38 -0
  7. data/dist/up.css +70 -0
  8. data/dist/up.js +2552 -0
  9. data/dist/up.min.css +1 -0
  10. data/dist/up.min.js +1 -0
  11. data/doc/theme/Gruntfile.js +25 -0
  12. data/doc/theme/README.md +29 -0
  13. data/doc/theme/api/.keep +0 -0
  14. data/doc/theme/assets/css/external-small.png +0 -0
  15. data/doc/theme/assets/css/logo.png +0 -0
  16. data/doc/theme/assets/css/main.css +859 -0
  17. data/doc/theme/assets/css/main.less +897 -0
  18. data/doc/theme/assets/favicon.png +0 -0
  19. data/doc/theme/assets/img/bgscreen.png +0 -0
  20. data/doc/theme/assets/img/spinner.gif +0 -0
  21. data/doc/theme/assets/index.html +10 -0
  22. data/doc/theme/assets/js/api-filter.js +52 -0
  23. data/doc/theme/assets/js/api-list.js +251 -0
  24. data/doc/theme/assets/js/api-search.js +98 -0
  25. data/doc/theme/assets/js/apidocs.js +369 -0
  26. data/doc/theme/assets/js/yui-prettify.js +17 -0
  27. data/doc/theme/assets/vendor/prettify/CHANGES.html +130 -0
  28. data/doc/theme/assets/vendor/prettify/COPYING +202 -0
  29. data/doc/theme/assets/vendor/prettify/README.html +203 -0
  30. data/doc/theme/assets/vendor/prettify/prettify-min.css +1 -0
  31. data/doc/theme/assets/vendor/prettify/prettify-min.js +1 -0
  32. data/doc/theme/layouts/main.handlebars +54 -0
  33. data/doc/theme/layouts/xhr.handlebars +7 -0
  34. data/doc/theme/package.json +53 -0
  35. data/doc/theme/partials/attrs.handlebars +141 -0
  36. data/doc/theme/partials/classes.handlebars +210 -0
  37. data/doc/theme/partials/events.handlebars +145 -0
  38. data/doc/theme/partials/exampleurl.handlebars +8 -0
  39. data/doc/theme/partials/files.handlebars +7 -0
  40. data/doc/theme/partials/index.handlebars +18 -0
  41. data/doc/theme/partials/method.handlebars +201 -0
  42. data/doc/theme/partials/module.handlebars +92 -0
  43. data/doc/theme/partials/options.handlebars +23 -0
  44. data/doc/theme/partials/props.handlebars +128 -0
  45. data/doc/theme/partials/sidebar.handlebars +27 -0
  46. data/doc/theme/theme.json +4 -0
  47. data/doc/yuidoc-helpers.js +0 -0
  48. data/doc/yuidoc.json +15 -0
  49. data/lib/assets/javascripts/up/browser.js.coffee +11 -0
  50. data/lib/assets/javascripts/up/bus.js.coffee +37 -9
  51. data/lib/assets/javascripts/up/flow.js.coffee +131 -58
  52. data/lib/assets/javascripts/up/form.js.coffee +70 -35
  53. data/lib/assets/javascripts/up/history.js.coffee +31 -9
  54. data/lib/assets/javascripts/up/link.js.coffee +122 -27
  55. data/lib/assets/javascripts/up/magic.js.coffee +87 -21
  56. data/lib/assets/javascripts/up/marker.js.coffee +37 -0
  57. data/lib/assets/javascripts/up/modal.js.coffee +183 -42
  58. data/lib/assets/javascripts/up/motion.js.coffee +65 -43
  59. data/lib/assets/javascripts/up/navigation.js.coffee +29 -11
  60. data/lib/assets/javascripts/up/popup.js.coffee +104 -29
  61. data/lib/assets/javascripts/up/tooltip.js.coffee +93 -0
  62. data/lib/assets/javascripts/up/util.js.coffee +139 -14
  63. data/lib/assets/javascripts/up.js.coffee +19 -0
  64. data/lib/assets/stylesheets/up/close.css.sass +2 -0
  65. data/lib/assets/stylesheets/up/modal.css.sass +23 -26
  66. data/lib/assets/stylesheets/up/popup.css.sass +4 -0
  67. data/lib/assets/stylesheets/up/tooltip.css.sass +17 -0
  68. data/lib/assets/stylesheets/{up/index.css → up.css} +0 -0
  69. data/lib/upjs/rails/version.rb +1 -1
  70. data/spec_app/Bowerfile +3 -0
  71. data/spec_app/Gemfile +6 -0
  72. data/spec_app/Gemfile.lock +11 -1
  73. data/spec_app/app/assets/javascripts/application.js +3 -0
  74. data/spec_app/config/initializers/bower_rails.rb +16 -0
  75. data/spec_app/config/routes.rb +1 -0
  76. data/spec_app/spec/javascripts/helpers/index.js.coffee +1 -0
  77. data/spec_app/spec/javascripts/helpers/reset_path.js.coffee +7 -0
  78. data/spec_app/spec/javascripts/helpers/reset_up.js.coffee +4 -0
  79. data/spec_app/spec/javascripts/support/jasmine.yml +50 -0
  80. data/spec_app/spec/javascripts/up/flow_spec.js.coffee +75 -0
  81. data/spec_app/spec/javascripts/up/marker_spec.js.coffee +14 -0
  82. data/spec_app/spec/javascripts/up/navigation_spec.js.coffee +27 -0
  83. data/spec_app/spec/javascripts/up/util_spec.js.coffee +27 -0
  84. data/spec_app/vendor/assets/.bowerrc +3 -0
  85. data/spec_app/vendor/assets/bower.json +8 -0
  86. data/spec_app/vendor/assets/bower_components/jasmine/.bower.json +14 -0
  87. data/spec_app/vendor/assets/bower_components/jasmine/.gitignore +24 -0
  88. data/spec_app/vendor/assets/bower_components/jasmine/.gitmodules +3 -0
  89. data/spec_app/vendor/assets/bower_components/jasmine/.jshintrc +9 -0
  90. data/spec_app/vendor/assets/bower_components/jasmine/.npmignore +21 -0
  91. data/spec_app/vendor/assets/bower_components/jasmine/.rspec +1 -0
  92. data/spec_app/vendor/assets/bower_components/jasmine/.travis.yml +51 -0
  93. data/spec_app/vendor/assets/bower_components/jasmine/CONTRIBUTING.md +121 -0
  94. data/spec_app/vendor/assets/bower_components/jasmine/GOALS_2.0.md +64 -0
  95. data/spec_app/vendor/assets/bower_components/jasmine/Gemfile +12 -0
  96. data/spec_app/vendor/assets/bower_components/jasmine/Gruntfile.js +53 -0
  97. data/spec_app/vendor/assets/bower_components/jasmine/MANIFEST.in +5 -0
  98. data/spec_app/vendor/assets/bower_components/jasmine/MIT.LICENSE +20 -0
  99. data/spec_app/vendor/assets/bower_components/jasmine/README.md +64 -0
  100. data/spec_app/vendor/assets/bower_components/jasmine/RELEASE.md +63 -0
  101. data/spec_app/vendor/assets/bower_components/jasmine/Rakefile +18 -0
  102. data/spec_app/vendor/assets/bower_components/jasmine/dist/jasmine-standalone-1.0.0.zip +0 -0
  103. data/spec_app/vendor/assets/bower_components/jasmine/dist/jasmine-standalone-1.1.0.zip +0 -0
  104. data/spec_app/vendor/assets/bower_components/jasmine/dist/jasmine-standalone-1.2.0.zip +0 -0
  105. data/spec_app/vendor/assets/bower_components/jasmine/dist/jasmine-standalone-1.3.0.zip +0 -0
  106. data/spec_app/vendor/assets/bower_components/jasmine/dist/jasmine-standalone-1.3.1.zip +0 -0
  107. data/spec_app/vendor/assets/bower_components/jasmine/dist/jasmine-standalone-2.0.0.zip +0 -0
  108. data/spec_app/vendor/assets/bower_components/jasmine/dist/jasmine-standalone-2.0.1.zip +0 -0
  109. data/spec_app/vendor/assets/bower_components/jasmine/dist/jasmine-standalone-2.0.2.zip +0 -0
  110. data/spec_app/vendor/assets/bower_components/jasmine/dist/jasmine-standalone-2.0.3.zip +0 -0
  111. data/spec_app/vendor/assets/bower_components/jasmine/grunt/config/compass.js +10 -0
  112. data/spec_app/vendor/assets/bower_components/jasmine/grunt/config/compress.js +66 -0
  113. data/spec_app/vendor/assets/bower_components/jasmine/grunt/config/concat.js +61 -0
  114. data/spec_app/vendor/assets/bower_components/jasmine/grunt/config/jshint.js +11 -0
  115. data/spec_app/vendor/assets/bower_components/jasmine/grunt/tasks/build_standalone.js +31 -0
  116. data/spec_app/vendor/assets/bower_components/jasmine/grunt/tasks/version.js +14 -0
  117. data/spec_app/vendor/assets/bower_components/jasmine/grunt/templates/SpecRunner.html.jst +26 -0
  118. data/spec_app/vendor/assets/bower_components/jasmine/grunt/templates/licenseBanner.js.jst +22 -0
  119. data/spec_app/vendor/assets/bower_components/jasmine/grunt/templates/version.rb.jst +9 -0
  120. data/spec_app/vendor/assets/bower_components/jasmine/images/__init__.py +0 -0
  121. data/spec_app/vendor/assets/bower_components/jasmine/images/jasmine-horizontal.png +0 -0
  122. data/spec_app/vendor/assets/bower_components/jasmine/images/jasmine-horizontal.svg +102 -0
  123. data/spec_app/vendor/assets/bower_components/jasmine/images/jasmine_favicon.png +0 -0
  124. data/spec_app/vendor/assets/bower_components/jasmine/jasmine-core.gemspec +23 -0
  125. data/spec_app/vendor/assets/bower_components/jasmine/lib/console/console.js +166 -0
  126. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/__init__.py +1 -0
  127. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/boot/boot.js +120 -0
  128. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/boot/node_boot.js +19 -0
  129. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/boot.js +142 -0
  130. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/core.py +60 -0
  131. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/example/node_example/spec/PlayerSpec.js +60 -0
  132. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/example/node_example/spec/SpecHelper.js +15 -0
  133. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/example/node_example/src/Player.js +24 -0
  134. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/example/node_example/src/Song.js +9 -0
  135. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/example/spec/PlayerSpec.js +58 -0
  136. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/example/spec/SpecHelper.js +15 -0
  137. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/example/src/Player.js +22 -0
  138. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/example/src/Song.js +7 -0
  139. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/jasmine-html.js +390 -0
  140. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/jasmine.css +61 -0
  141. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/jasmine.js +2593 -0
  142. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/json2.js +478 -0
  143. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/node_boot.js +41 -0
  144. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core/version.rb +9 -0
  145. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core.js +39 -0
  146. data/spec_app/vendor/assets/bower_components/jasmine/lib/jasmine-core.rb +53 -0
  147. data/spec_app/vendor/assets/bower_components/jasmine/package.json +23 -0
  148. data/spec_app/vendor/assets/bower_components/jasmine/release_notes/2.0.1.md +70 -0
  149. data/spec_app/vendor/assets/bower_components/jasmine/release_notes/2.0.2.md +25 -0
  150. data/spec_app/vendor/assets/bower_components/jasmine/release_notes/20.md +179 -0
  151. data/spec_app/vendor/assets/bower_components/jasmine/requirements.txt +1 -0
  152. data/spec_app/vendor/assets/bower_components/jasmine/setup.py +47 -0
  153. data/spec_app/vendor/assets/bower_components/jasmine/spec/console/ConsoleReporterSpec.js +239 -0
  154. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/AnySpec.js +46 -0
  155. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/CallTrackerSpec.js +105 -0
  156. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/ClockSpec.js +445 -0
  157. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/DelayedFunctionSchedulerSpec.js +246 -0
  158. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/EnvSpec.js +85 -0
  159. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/ExceptionFormatterSpec.js +63 -0
  160. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/ExceptionsSpec.js +68 -0
  161. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/ExpectationResultSpec.js +61 -0
  162. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/ExpectationSpec.js +427 -0
  163. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/JsApiReporterSpec.js +214 -0
  164. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/MockDateSpec.js +199 -0
  165. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/ObjectContainingSpec.js +70 -0
  166. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/PrettyPrintSpec.js +156 -0
  167. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/QueueRunnerSpec.js +271 -0
  168. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/ReportDispatcherSpec.js +40 -0
  169. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/SpecSpec.js +260 -0
  170. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/SpySpec.js +67 -0
  171. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/SpyStrategySpec.js +111 -0
  172. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/SuiteSpec.js +216 -0
  173. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/TimerSpec.js +31 -0
  174. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/UtilSpec.js +28 -0
  175. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/integration/CustomMatchersSpec.js +149 -0
  176. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/integration/EnvSpec.js +506 -0
  177. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/integration/SpecRunningSpec.js +306 -0
  178. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/matchersUtilSpec.js +239 -0
  179. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeCloseToSpec.js +51 -0
  180. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeDefinedSpec.js +18 -0
  181. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeFalsySpec.js +38 -0
  182. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeGreaterThanSpec.js +20 -0
  183. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeLessThanSpec.js +20 -0
  184. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeNaNSpec.js +37 -0
  185. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeNullSpec.js +17 -0
  186. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeSpec.js +17 -0
  187. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeTruthySpec.js +38 -0
  188. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toBeUndefinedSpec.js +18 -0
  189. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toContainSpec.js +26 -0
  190. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toEqualSpec.js +28 -0
  191. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toHaveBeenCalledSpec.js +47 -0
  192. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toHaveBeenCalledWithSpec.js +66 -0
  193. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toMatchSpec.js +34 -0
  194. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toThrowErrorSpec.js +280 -0
  195. data/spec_app/vendor/assets/bower_components/jasmine/spec/core/matchers/toThrowSpec.js +99 -0
  196. data/spec_app/vendor/assets/bower_components/jasmine/spec/helpers/BrowserFlags.js +23 -0
  197. data/spec_app/vendor/assets/bower_components/jasmine/spec/helpers/defineJasmineUnderTest.js +7 -0
  198. data/spec_app/vendor/assets/bower_components/jasmine/spec/helpers/nodeDefineJasmineUnderTest.js +33 -0
  199. data/spec_app/vendor/assets/bower_components/jasmine/spec/html/HtmlReporterSpec.js +616 -0
  200. data/spec_app/vendor/assets/bower_components/jasmine/spec/html/HtmlSpecFilterSpec.js +18 -0
  201. data/spec_app/vendor/assets/bower_components/jasmine/spec/html/MatchersHtmlSpec.js +37 -0
  202. data/spec_app/vendor/assets/bower_components/jasmine/spec/html/PrettyPrintHtmlSpec.js +15 -0
  203. data/spec_app/vendor/assets/bower_components/jasmine/spec/html/QueryStringSpec.js +43 -0
  204. data/spec_app/vendor/assets/bower_components/jasmine/spec/html/ResultsNodeSpec.js +62 -0
  205. data/spec_app/vendor/assets/bower_components/jasmine/spec/javascripts/support/jasmine_selenium_runner.yml +16 -0
  206. data/spec_app/vendor/assets/bower_components/jasmine/spec/performance/large_object_test.js +36 -0
  207. data/spec_app/vendor/assets/bower_components/jasmine/spec/performance/performance_test.js +10 -0
  208. data/spec_app/vendor/assets/bower_components/jasmine/spec/support/jasmine-performance.json +9 -0
  209. data/spec_app/vendor/assets/bower_components/jasmine/spec/support/jasmine-performance.yml +9 -0
  210. data/spec_app/vendor/assets/bower_components/jasmine/spec/support/jasmine.json +10 -0
  211. data/spec_app/vendor/assets/bower_components/jasmine/spec/support/jasmine.yml +25 -0
  212. data/spec_app/vendor/assets/bower_components/jasmine/src/console/ConsoleReporter.js +131 -0
  213. data/spec_app/vendor/assets/bower_components/jasmine/src/console/requireConsole.js +12 -0
  214. data/spec_app/vendor/assets/bower_components/jasmine/src/core/Any.js +36 -0
  215. data/spec_app/vendor/assets/bower_components/jasmine/src/core/CallTracker.js +50 -0
  216. data/spec_app/vendor/assets/bower_components/jasmine/src/core/Clock.js +113 -0
  217. data/spec_app/vendor/assets/bower_components/jasmine/src/core/DelayedFunctionScheduler.js +145 -0
  218. data/spec_app/vendor/assets/bower_components/jasmine/src/core/Env.js +341 -0
  219. data/spec_app/vendor/assets/bower_components/jasmine/src/core/ExceptionFormatter.js +29 -0
  220. data/spec_app/vendor/assets/bower_components/jasmine/src/core/Expectation.js +107 -0
  221. data/spec_app/vendor/assets/bower_components/jasmine/src/core/ExpectationResult.js +45 -0
  222. data/spec_app/vendor/assets/bower_components/jasmine/src/core/JsApiReporter.js +73 -0
  223. data/spec_app/vendor/assets/bower_components/jasmine/src/core/MockDate.js +81 -0
  224. data/spec_app/vendor/assets/bower_components/jasmine/src/core/ObjectContaining.js +34 -0
  225. data/spec_app/vendor/assets/bower_components/jasmine/src/core/PrettyPrinter.js +137 -0
  226. data/spec_app/vendor/assets/bower_components/jasmine/src/core/QueueRunner.js +92 -0
  227. data/spec_app/vendor/assets/bower_components/jasmine/src/core/ReportDispatcher.js +35 -0
  228. data/spec_app/vendor/assets/bower_components/jasmine/src/core/Spec.js +126 -0
  229. data/spec_app/vendor/assets/bower_components/jasmine/src/core/SpyStrategy.js +51 -0
  230. data/spec_app/vendor/assets/bower_components/jasmine/src/core/Suite.js +92 -0
  231. data/spec_app/vendor/assets/bower_components/jasmine/src/core/Timer.js +22 -0
  232. data/spec_app/vendor/assets/bower_components/jasmine/src/core/base.js +102 -0
  233. data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/matchersUtil.js +181 -0
  234. data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/requireMatchers.js +29 -0
  235. data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBe.js +13 -0
  236. data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBeCloseTo.js +18 -0
  237. data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBeDefined.js +13 -0
  238. data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBeFalsy.js +13 -0
  239. data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBeGreaterThan.js +15 -0
  240. data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBeLessThan.js +14 -0
  241. data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBeNaN.js +22 -0
  242. data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBeNull.js +14 -0
  243. data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBeTruthy.js +14 -0
  244. data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toBeUndefined.js +14 -0
  245. data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toContain.js +16 -0
  246. data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toEqual.js +20 -0
  247. data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toHaveBeenCalled.js +28 -0
  248. data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toHaveBeenCalledWith.js +33 -0
  249. data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toMatch.js +16 -0
  250. data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toThrow.js +46 -0
  251. data/spec_app/vendor/assets/bower_components/jasmine/src/core/matchers/toThrowError.js +156 -0
  252. data/spec_app/vendor/assets/bower_components/jasmine/src/core/requireCore.js +39 -0
  253. data/spec_app/vendor/assets/bower_components/jasmine/src/core/requireInterface.js +59 -0
  254. data/spec_app/vendor/assets/bower_components/jasmine/src/core/util.js +44 -0
  255. data/spec_app/vendor/assets/bower_components/jasmine/src/html/HtmlReporter.js +280 -0
  256. data/spec_app/vendor/assets/bower_components/jasmine/src/html/HtmlSpecFilter.js +12 -0
  257. data/spec_app/vendor/assets/bower_components/jasmine/src/html/QueryString.js +47 -0
  258. data/spec_app/vendor/assets/bower_components/jasmine/src/html/ResultsNode.js +19 -0
  259. data/spec_app/vendor/assets/bower_components/jasmine/src/html/_HTMLReporter.scss +355 -0
  260. data/spec_app/vendor/assets/bower_components/jasmine/src/html/jasmine.scss +1 -0
  261. data/spec_app/vendor/assets/bower_components/jasmine/src/html/requireHtml.js +6 -0
  262. data/spec_app/vendor/assets/bower_components/jasmine/src/templates/example_project_jasmine_tags.html.erb +3 -0
  263. data/spec_app/vendor/assets/bower_components/jasmine/src/templates/version.js.erb +7 -0
  264. data/spec_app/vendor/assets/bower_components/jasmine/src/templates/version.rb.erb +6 -0
  265. data/spec_app/vendor/assets/bower_components/jasmine/src/version.js +3 -0
  266. data/spec_app/vendor/assets/bower_components/jasmine/travis-core-script.sh +14 -0
  267. data/spec_app/vendor/assets/bower_components/jasmine/travis-docs-script.sh +5 -0
  268. data/spec_app/vendor/assets/bower_components/jasmine/travis-node-script.sh +6 -0
  269. data/spec_app/vendor/assets/bower_components/jasmine-ajax/.bower.json +45 -0
  270. data/spec_app/vendor/assets/bower_components/jasmine-ajax/Gruntfile.js +63 -0
  271. data/spec_app/vendor/assets/bower_components/jasmine-ajax/MIT.LICENSE +20 -0
  272. data/spec_app/vendor/assets/bower_components/jasmine-ajax/README.markdown +216 -0
  273. data/spec_app/vendor/assets/bower_components/jasmine-ajax/bower.json +36 -0
  274. data/spec_app/vendor/assets/bower_components/jasmine-ajax/lib/mock-ajax.js +542 -0
  275. data/spec_app/vendor/assets/bower_components/jasmine-ajax/package.json +21 -0
  276. data/spec_app/vendor/assets/bower_components/jasmine-ajax/src/boot.js +11 -0
  277. data/spec_app/vendor/assets/bower_components/jasmine-ajax/src/fakeRequest.js +262 -0
  278. data/spec_app/vendor/assets/bower_components/jasmine-ajax/src/mockAjax.js +45 -0
  279. data/spec_app/vendor/assets/bower_components/jasmine-ajax/src/paramParser.js +56 -0
  280. data/spec_app/vendor/assets/bower_components/jasmine-ajax/src/requestStub.js +42 -0
  281. data/spec_app/vendor/assets/bower_components/jasmine-ajax/src/requestTracker.js +51 -0
  282. data/spec_app/vendor/assets/bower_components/jasmine-ajax/src/requireAjax.js +44 -0
  283. data/spec_app/vendor/assets/bower_components/jasmine-ajax/src/stubTracker.js +24 -0
  284. data/spec_app/vendor/assets/bower_components/jasmine-fixture/.bower.json +27 -0
  285. data/spec_app/vendor/assets/bower_components/jasmine-fixture/.gitignore +8 -0
  286. data/spec_app/vendor/assets/bower_components/jasmine-fixture/.npmignore +8 -0
  287. data/spec_app/vendor/assets/bower_components/jasmine-fixture/LICENSE.txt +24 -0
  288. data/spec_app/vendor/assets/bower_components/jasmine-fixture/README.md +118 -0
  289. data/spec_app/vendor/assets/bower_components/jasmine-fixture/bower.json +17 -0
  290. data/spec_app/vendor/assets/bower_components/jasmine-fixture/dist/jasmine-fixture.js +433 -0
  291. data/spec_app/vendor/assets/bower_components/jasmine-fixture/dist/jasmine-fixture.min.js +5 -0
  292. data/spec_app/vendor/assets/bower_components/jasmine-fixture/spec-e2e/basic-usage-spec.coffee +14 -0
  293. data/spec_app/vendor/assets/bower_components/jasmine-fixture/spec-e2e/helpers/invariants.coffee +17 -0
  294. data/spec_app/vendor/assets/bower_components/jasmine-fixture/spec-e2e/helpers/spec-within-a-spec.coffee +24 -0
  295. data/spec_app/vendor/assets/bower_components/jasmine-fixture/spec-e2e/helpers/tmp-files.coffee +8 -0
  296. data/spec_app/vendor/assets/bower_components/jasmine-fixture/spec-e2e/support/jasmine1-testem-config.json +11 -0
  297. data/spec_app/vendor/assets/bower_components/jasmine-fixture/spec-e2e/support/jasmine2-testem-config.json +11 -0
  298. data/spec_app/vendor/assets/bower_components/jasmine-fixture/vendor/js/jquery-1.11.0.js +10337 -0
  299. data/spec_app/vendor/assets/bower_components/jasmine-fixture/vendor/js/jquery-1.8.3.js +9472 -0
  300. data/spec_app/vendor/assets/bower_components/jasmine-fixture/vendor/js/jquery-2.1.0.js +9111 -0
  301. data/spec_app/vendor/assets/bower_components/jasmine-jquery/.bower.json +26 -0
  302. data/spec_app/vendor/assets/bower_components/jasmine-jquery/CONTRIBUTING.md +28 -0
  303. data/spec_app/vendor/assets/bower_components/jasmine-jquery/Gruntfile.js +33 -0
  304. data/spec_app/vendor/assets/bower_components/jasmine-jquery/MIT.LICENSE +20 -0
  305. data/spec_app/vendor/assets/bower_components/jasmine-jquery/README.md +362 -0
  306. data/spec_app/vendor/assets/bower_components/jasmine-jquery/bower.json +16 -0
  307. data/spec_app/vendor/assets/bower_components/jasmine-jquery/lib/jasmine-jquery.js +813 -0
  308. data/spec_app/vendor/assets/bower_components/jasmine-jquery/package.json +26 -0
  309. data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/fixture_with_javascript.html +1 -0
  310. data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/fixture_with_javascript_block.html +1 -0
  311. data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/javascripts/jasmine_javascript_click.js +1 -0
  312. data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/javascripts/jasmine_javascript_hover.js +1 -0
  313. data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/json/jasmine_json_test.json +1 -0
  314. data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/real_non_mocked_fixture.html +1 -0
  315. data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/fixtures/real_non_mocked_fixture_style.css +1 -0
  316. data/spec_app/vendor/assets/bower_components/jasmine-jquery/spec/suites/jasmine-jquery-spec.js +1782 -0
  317. data/spec_app/vendor/assets/bower_components/jquery/.bower.json +37 -0
  318. data/spec_app/vendor/assets/bower_components/jquery/MIT-LICENSE.txt +21 -0
  319. data/spec_app/vendor/assets/bower_components/jquery/bower.json +27 -0
  320. data/spec_app/vendor/assets/bower_components/jquery/dist/jquery.js +9205 -0
  321. data/spec_app/vendor/assets/bower_components/jquery/dist/jquery.min.js +5 -0
  322. data/spec_app/vendor/assets/bower_components/jquery/dist/jquery.min.map +1 -0
  323. data/spec_app/vendor/assets/bower_components/jquery/src/ajax/jsonp.js +89 -0
  324. data/spec_app/vendor/assets/bower_components/jquery/src/ajax/load.js +75 -0
  325. data/spec_app/vendor/assets/bower_components/jquery/src/ajax/parseJSON.js +13 -0
  326. data/spec_app/vendor/assets/bower_components/jquery/src/ajax/parseXML.js +28 -0
  327. data/spec_app/vendor/assets/bower_components/jquery/src/ajax/script.js +64 -0
  328. data/spec_app/vendor/assets/bower_components/jquery/src/ajax/var/nonce.js +5 -0
  329. data/spec_app/vendor/assets/bower_components/jquery/src/ajax/var/rquery.js +3 -0
  330. data/spec_app/vendor/assets/bower_components/jquery/src/ajax/xhr.js +136 -0
  331. data/spec_app/vendor/assets/bower_components/jquery/src/ajax.js +786 -0
  332. data/spec_app/vendor/assets/bower_components/jquery/src/attributes/attr.js +141 -0
  333. data/spec_app/vendor/assets/bower_components/jquery/src/attributes/classes.js +158 -0
  334. data/spec_app/vendor/assets/bower_components/jquery/src/attributes/prop.js +94 -0
  335. data/spec_app/vendor/assets/bower_components/jquery/src/attributes/support.js +35 -0
  336. data/spec_app/vendor/assets/bower_components/jquery/src/attributes/val.js +161 -0
  337. data/spec_app/vendor/assets/bower_components/jquery/src/attributes.js +11 -0
  338. data/spec_app/vendor/assets/bower_components/jquery/src/callbacks.js +205 -0
  339. data/spec_app/vendor/assets/bower_components/jquery/src/core/access.js +60 -0
  340. data/spec_app/vendor/assets/bower_components/jquery/src/core/init.js +123 -0
  341. data/spec_app/vendor/assets/bower_components/jquery/src/core/parseHTML.js +39 -0
  342. data/spec_app/vendor/assets/bower_components/jquery/src/core/ready.js +97 -0
  343. data/spec_app/vendor/assets/bower_components/jquery/src/core/var/rsingleTag.js +4 -0
  344. data/spec_app/vendor/assets/bower_components/jquery/src/core.js +497 -0
  345. data/spec_app/vendor/assets/bower_components/jquery/src/css/addGetHookIf.js +22 -0
  346. data/spec_app/vendor/assets/bower_components/jquery/src/css/curCSS.js +57 -0
  347. data/spec_app/vendor/assets/bower_components/jquery/src/css/defaultDisplay.js +70 -0
  348. data/spec_app/vendor/assets/bower_components/jquery/src/css/hiddenVisibleSelectors.js +15 -0
  349. data/spec_app/vendor/assets/bower_components/jquery/src/css/support.js +96 -0
  350. data/spec_app/vendor/assets/bower_components/jquery/src/css/swap.js +28 -0
  351. data/spec_app/vendor/assets/bower_components/jquery/src/css/var/cssExpand.js +3 -0
  352. data/spec_app/vendor/assets/bower_components/jquery/src/css/var/getStyles.js +12 -0
  353. data/spec_app/vendor/assets/bower_components/jquery/src/css/var/isHidden.js +13 -0
  354. data/spec_app/vendor/assets/bower_components/jquery/src/css/var/rmargin.js +3 -0
  355. data/spec_app/vendor/assets/bower_components/jquery/src/css/var/rnumnonpx.js +5 -0
  356. data/spec_app/vendor/assets/bower_components/jquery/src/css.js +450 -0
  357. data/spec_app/vendor/assets/bower_components/jquery/src/data/Data.js +181 -0
  358. data/spec_app/vendor/assets/bower_components/jquery/src/data/accepts.js +20 -0
  359. data/spec_app/vendor/assets/bower_components/jquery/src/data/var/data_priv.js +5 -0
  360. data/spec_app/vendor/assets/bower_components/jquery/src/data/var/data_user.js +5 -0
  361. data/spec_app/vendor/assets/bower_components/jquery/src/data.js +178 -0
  362. data/spec_app/vendor/assets/bower_components/jquery/src/deferred.js +149 -0
  363. data/spec_app/vendor/assets/bower_components/jquery/src/deprecated.js +13 -0
  364. data/spec_app/vendor/assets/bower_components/jquery/src/dimensions.js +50 -0
  365. data/spec_app/vendor/assets/bower_components/jquery/src/effects/Tween.js +114 -0
  366. data/spec_app/vendor/assets/bower_components/jquery/src/effects/animatedSelector.js +13 -0
  367. data/spec_app/vendor/assets/bower_components/jquery/src/effects.js +648 -0
  368. data/spec_app/vendor/assets/bower_components/jquery/src/event/ajax.js +13 -0
  369. data/spec_app/vendor/assets/bower_components/jquery/src/event/alias.js +39 -0
  370. data/spec_app/vendor/assets/bower_components/jquery/src/event/support.js +9 -0
  371. data/spec_app/vendor/assets/bower_components/jquery/src/event.js +868 -0
  372. data/spec_app/vendor/assets/bower_components/jquery/src/exports/amd.js +24 -0
  373. data/spec_app/vendor/assets/bower_components/jquery/src/exports/global.js +32 -0
  374. data/spec_app/vendor/assets/bower_components/jquery/src/intro.js +44 -0
  375. data/spec_app/vendor/assets/bower_components/jquery/src/jquery.js +37 -0
  376. data/spec_app/vendor/assets/bower_components/jquery/src/manipulation/_evalUrl.js +18 -0
  377. data/spec_app/vendor/assets/bower_components/jquery/src/manipulation/support.js +32 -0
  378. data/spec_app/vendor/assets/bower_components/jquery/src/manipulation/var/rcheckableType.js +3 -0
  379. data/spec_app/vendor/assets/bower_components/jquery/src/manipulation.js +580 -0
  380. data/spec_app/vendor/assets/bower_components/jquery/src/offset.js +207 -0
  381. data/spec_app/vendor/assets/bower_components/jquery/src/outro.js +1 -0
  382. data/spec_app/vendor/assets/bower_components/jquery/src/queue/delay.js +22 -0
  383. data/spec_app/vendor/assets/bower_components/jquery/src/queue.js +142 -0
  384. data/spec_app/vendor/assets/bower_components/jquery/src/selector-native.js +172 -0
  385. data/spec_app/vendor/assets/bower_components/jquery/src/selector-sizzle.js +14 -0
  386. data/spec_app/vendor/assets/bower_components/jquery/src/selector.js +1 -0
  387. data/spec_app/vendor/assets/bower_components/jquery/src/serialize.js +111 -0
  388. data/spec_app/vendor/assets/bower_components/jquery/src/sizzle/dist/sizzle.js +2067 -0
  389. data/spec_app/vendor/assets/bower_components/jquery/src/sizzle/dist/sizzle.min.js +3 -0
  390. data/spec_app/vendor/assets/bower_components/jquery/src/sizzle/dist/sizzle.min.map +1 -0
  391. data/spec_app/vendor/assets/bower_components/jquery/src/traversing/findFilter.js +100 -0
  392. data/spec_app/vendor/assets/bower_components/jquery/src/traversing/var/rneedsContext.js +6 -0
  393. data/spec_app/vendor/assets/bower_components/jquery/src/traversing.js +199 -0
  394. data/spec_app/vendor/assets/bower_components/jquery/src/var/arr.js +3 -0
  395. data/spec_app/vendor/assets/bower_components/jquery/src/var/class2type.js +4 -0
  396. data/spec_app/vendor/assets/bower_components/jquery/src/var/concat.js +5 -0
  397. data/spec_app/vendor/assets/bower_components/jquery/src/var/hasOwn.js +5 -0
  398. data/spec_app/vendor/assets/bower_components/jquery/src/var/indexOf.js +5 -0
  399. data/spec_app/vendor/assets/bower_components/jquery/src/var/pnum.js +3 -0
  400. data/spec_app/vendor/assets/bower_components/jquery/src/var/push.js +5 -0
  401. data/spec_app/vendor/assets/bower_components/jquery/src/var/rnotwhite.js +3 -0
  402. data/spec_app/vendor/assets/bower_components/jquery/src/var/slice.js +5 -0
  403. data/spec_app/vendor/assets/bower_components/jquery/src/var/strundefined.js +3 -0
  404. data/spec_app/vendor/assets/bower_components/jquery/src/var/support.js +4 -0
  405. data/spec_app/vendor/assets/bower_components/jquery/src/var/toString.js +5 -0
  406. data/spec_app/vendor/assets/bower_components/jquery/src/wrap.js +79 -0
  407. metadata +386 -6
  408. data/lib/assets/javascripts/up/index.js +0 -13
  409. data/spec_app/app/assets/stylesheets/blocks/field_with_errors.css.sass +0 -5
@@ -0,0 +1,786 @@
1
+ define([
2
+ "./core",
3
+ "./var/rnotwhite",
4
+ "./ajax/var/nonce",
5
+ "./ajax/var/rquery",
6
+ "./core/init",
7
+ "./ajax/parseJSON",
8
+ "./ajax/parseXML",
9
+ "./deferred"
10
+ ], function( jQuery, rnotwhite, nonce, rquery ) {
11
+
12
+ var
13
+ rhash = /#.*$/,
14
+ rts = /([?&])_=[^&]*/,
15
+ rheaders = /^(.*?):[ \t]*([^\r\n]*)$/mg,
16
+ // #7653, #8125, #8152: local protocol detection
17
+ rlocalProtocol = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/,
18
+ rnoContent = /^(?:GET|HEAD)$/,
19
+ rprotocol = /^\/\//,
20
+ rurl = /^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,
21
+
22
+ /* Prefilters
23
+ * 1) They are useful to introduce custom dataTypes (see ajax/jsonp.js for an example)
24
+ * 2) These are called:
25
+ * - BEFORE asking for a transport
26
+ * - AFTER param serialization (s.data is a string if s.processData is true)
27
+ * 3) key is the dataType
28
+ * 4) the catchall symbol "*" can be used
29
+ * 5) execution will start with transport dataType and THEN continue down to "*" if needed
30
+ */
31
+ prefilters = {},
32
+
33
+ /* Transports bindings
34
+ * 1) key is the dataType
35
+ * 2) the catchall symbol "*" can be used
36
+ * 3) selection will start with transport dataType and THEN go to "*" if needed
37
+ */
38
+ transports = {},
39
+
40
+ // Avoid comment-prolog char sequence (#10098); must appease lint and evade compression
41
+ allTypes = "*/".concat( "*" ),
42
+
43
+ // Document location
44
+ ajaxLocation = window.location.href,
45
+
46
+ // Segment location into parts
47
+ ajaxLocParts = rurl.exec( ajaxLocation.toLowerCase() ) || [];
48
+
49
+ // Base "constructor" for jQuery.ajaxPrefilter and jQuery.ajaxTransport
50
+ function addToPrefiltersOrTransports( structure ) {
51
+
52
+ // dataTypeExpression is optional and defaults to "*"
53
+ return function( dataTypeExpression, func ) {
54
+
55
+ if ( typeof dataTypeExpression !== "string" ) {
56
+ func = dataTypeExpression;
57
+ dataTypeExpression = "*";
58
+ }
59
+
60
+ var dataType,
61
+ i = 0,
62
+ dataTypes = dataTypeExpression.toLowerCase().match( rnotwhite ) || [];
63
+
64
+ if ( jQuery.isFunction( func ) ) {
65
+ // For each dataType in the dataTypeExpression
66
+ while ( (dataType = dataTypes[i++]) ) {
67
+ // Prepend if requested
68
+ if ( dataType[0] === "+" ) {
69
+ dataType = dataType.slice( 1 ) || "*";
70
+ (structure[ dataType ] = structure[ dataType ] || []).unshift( func );
71
+
72
+ // Otherwise append
73
+ } else {
74
+ (structure[ dataType ] = structure[ dataType ] || []).push( func );
75
+ }
76
+ }
77
+ }
78
+ };
79
+ }
80
+
81
+ // Base inspection function for prefilters and transports
82
+ function inspectPrefiltersOrTransports( structure, options, originalOptions, jqXHR ) {
83
+
84
+ var inspected = {},
85
+ seekingTransport = ( structure === transports );
86
+
87
+ function inspect( dataType ) {
88
+ var selected;
89
+ inspected[ dataType ] = true;
90
+ jQuery.each( structure[ dataType ] || [], function( _, prefilterOrFactory ) {
91
+ var dataTypeOrTransport = prefilterOrFactory( options, originalOptions, jqXHR );
92
+ if ( typeof dataTypeOrTransport === "string" && !seekingTransport && !inspected[ dataTypeOrTransport ] ) {
93
+ options.dataTypes.unshift( dataTypeOrTransport );
94
+ inspect( dataTypeOrTransport );
95
+ return false;
96
+ } else if ( seekingTransport ) {
97
+ return !( selected = dataTypeOrTransport );
98
+ }
99
+ });
100
+ return selected;
101
+ }
102
+
103
+ return inspect( options.dataTypes[ 0 ] ) || !inspected[ "*" ] && inspect( "*" );
104
+ }
105
+
106
+ // A special extend for ajax options
107
+ // that takes "flat" options (not to be deep extended)
108
+ // Fixes #9887
109
+ function ajaxExtend( target, src ) {
110
+ var key, deep,
111
+ flatOptions = jQuery.ajaxSettings.flatOptions || {};
112
+
113
+ for ( key in src ) {
114
+ if ( src[ key ] !== undefined ) {
115
+ ( flatOptions[ key ] ? target : ( deep || (deep = {}) ) )[ key ] = src[ key ];
116
+ }
117
+ }
118
+ if ( deep ) {
119
+ jQuery.extend( true, target, deep );
120
+ }
121
+
122
+ return target;
123
+ }
124
+
125
+ /* Handles responses to an ajax request:
126
+ * - finds the right dataType (mediates between content-type and expected dataType)
127
+ * - returns the corresponding response
128
+ */
129
+ function ajaxHandleResponses( s, jqXHR, responses ) {
130
+
131
+ var ct, type, finalDataType, firstDataType,
132
+ contents = s.contents,
133
+ dataTypes = s.dataTypes;
134
+
135
+ // Remove auto dataType and get content-type in the process
136
+ while ( dataTypes[ 0 ] === "*" ) {
137
+ dataTypes.shift();
138
+ if ( ct === undefined ) {
139
+ ct = s.mimeType || jqXHR.getResponseHeader("Content-Type");
140
+ }
141
+ }
142
+
143
+ // Check if we're dealing with a known content-type
144
+ if ( ct ) {
145
+ for ( type in contents ) {
146
+ if ( contents[ type ] && contents[ type ].test( ct ) ) {
147
+ dataTypes.unshift( type );
148
+ break;
149
+ }
150
+ }
151
+ }
152
+
153
+ // Check to see if we have a response for the expected dataType
154
+ if ( dataTypes[ 0 ] in responses ) {
155
+ finalDataType = dataTypes[ 0 ];
156
+ } else {
157
+ // Try convertible dataTypes
158
+ for ( type in responses ) {
159
+ if ( !dataTypes[ 0 ] || s.converters[ type + " " + dataTypes[0] ] ) {
160
+ finalDataType = type;
161
+ break;
162
+ }
163
+ if ( !firstDataType ) {
164
+ firstDataType = type;
165
+ }
166
+ }
167
+ // Or just use first one
168
+ finalDataType = finalDataType || firstDataType;
169
+ }
170
+
171
+ // If we found a dataType
172
+ // We add the dataType to the list if needed
173
+ // and return the corresponding response
174
+ if ( finalDataType ) {
175
+ if ( finalDataType !== dataTypes[ 0 ] ) {
176
+ dataTypes.unshift( finalDataType );
177
+ }
178
+ return responses[ finalDataType ];
179
+ }
180
+ }
181
+
182
+ /* Chain conversions given the request and the original response
183
+ * Also sets the responseXXX fields on the jqXHR instance
184
+ */
185
+ function ajaxConvert( s, response, jqXHR, isSuccess ) {
186
+ var conv2, current, conv, tmp, prev,
187
+ converters = {},
188
+ // Work with a copy of dataTypes in case we need to modify it for conversion
189
+ dataTypes = s.dataTypes.slice();
190
+
191
+ // Create converters map with lowercased keys
192
+ if ( dataTypes[ 1 ] ) {
193
+ for ( conv in s.converters ) {
194
+ converters[ conv.toLowerCase() ] = s.converters[ conv ];
195
+ }
196
+ }
197
+
198
+ current = dataTypes.shift();
199
+
200
+ // Convert to each sequential dataType
201
+ while ( current ) {
202
+
203
+ if ( s.responseFields[ current ] ) {
204
+ jqXHR[ s.responseFields[ current ] ] = response;
205
+ }
206
+
207
+ // Apply the dataFilter if provided
208
+ if ( !prev && isSuccess && s.dataFilter ) {
209
+ response = s.dataFilter( response, s.dataType );
210
+ }
211
+
212
+ prev = current;
213
+ current = dataTypes.shift();
214
+
215
+ if ( current ) {
216
+
217
+ // There's only work to do if current dataType is non-auto
218
+ if ( current === "*" ) {
219
+
220
+ current = prev;
221
+
222
+ // Convert response if prev dataType is non-auto and differs from current
223
+ } else if ( prev !== "*" && prev !== current ) {
224
+
225
+ // Seek a direct converter
226
+ conv = converters[ prev + " " + current ] || converters[ "* " + current ];
227
+
228
+ // If none found, seek a pair
229
+ if ( !conv ) {
230
+ for ( conv2 in converters ) {
231
+
232
+ // If conv2 outputs current
233
+ tmp = conv2.split( " " );
234
+ if ( tmp[ 1 ] === current ) {
235
+
236
+ // If prev can be converted to accepted input
237
+ conv = converters[ prev + " " + tmp[ 0 ] ] ||
238
+ converters[ "* " + tmp[ 0 ] ];
239
+ if ( conv ) {
240
+ // Condense equivalence converters
241
+ if ( conv === true ) {
242
+ conv = converters[ conv2 ];
243
+
244
+ // Otherwise, insert the intermediate dataType
245
+ } else if ( converters[ conv2 ] !== true ) {
246
+ current = tmp[ 0 ];
247
+ dataTypes.unshift( tmp[ 1 ] );
248
+ }
249
+ break;
250
+ }
251
+ }
252
+ }
253
+ }
254
+
255
+ // Apply converter (if not an equivalence)
256
+ if ( conv !== true ) {
257
+
258
+ // Unless errors are allowed to bubble, catch and return them
259
+ if ( conv && s[ "throws" ] ) {
260
+ response = conv( response );
261
+ } else {
262
+ try {
263
+ response = conv( response );
264
+ } catch ( e ) {
265
+ return { state: "parsererror", error: conv ? e : "No conversion from " + prev + " to " + current };
266
+ }
267
+ }
268
+ }
269
+ }
270
+ }
271
+ }
272
+
273
+ return { state: "success", data: response };
274
+ }
275
+
276
+ jQuery.extend({
277
+
278
+ // Counter for holding the number of active queries
279
+ active: 0,
280
+
281
+ // Last-Modified header cache for next request
282
+ lastModified: {},
283
+ etag: {},
284
+
285
+ ajaxSettings: {
286
+ url: ajaxLocation,
287
+ type: "GET",
288
+ isLocal: rlocalProtocol.test( ajaxLocParts[ 1 ] ),
289
+ global: true,
290
+ processData: true,
291
+ async: true,
292
+ contentType: "application/x-www-form-urlencoded; charset=UTF-8",
293
+ /*
294
+ timeout: 0,
295
+ data: null,
296
+ dataType: null,
297
+ username: null,
298
+ password: null,
299
+ cache: null,
300
+ throws: false,
301
+ traditional: false,
302
+ headers: {},
303
+ */
304
+
305
+ accepts: {
306
+ "*": allTypes,
307
+ text: "text/plain",
308
+ html: "text/html",
309
+ xml: "application/xml, text/xml",
310
+ json: "application/json, text/javascript"
311
+ },
312
+
313
+ contents: {
314
+ xml: /xml/,
315
+ html: /html/,
316
+ json: /json/
317
+ },
318
+
319
+ responseFields: {
320
+ xml: "responseXML",
321
+ text: "responseText",
322
+ json: "responseJSON"
323
+ },
324
+
325
+ // Data converters
326
+ // Keys separate source (or catchall "*") and destination types with a single space
327
+ converters: {
328
+
329
+ // Convert anything to text
330
+ "* text": String,
331
+
332
+ // Text to html (true = no transformation)
333
+ "text html": true,
334
+
335
+ // Evaluate text as a json expression
336
+ "text json": jQuery.parseJSON,
337
+
338
+ // Parse text as xml
339
+ "text xml": jQuery.parseXML
340
+ },
341
+
342
+ // For options that shouldn't be deep extended:
343
+ // you can add your own custom options here if
344
+ // and when you create one that shouldn't be
345
+ // deep extended (see ajaxExtend)
346
+ flatOptions: {
347
+ url: true,
348
+ context: true
349
+ }
350
+ },
351
+
352
+ // Creates a full fledged settings object into target
353
+ // with both ajaxSettings and settings fields.
354
+ // If target is omitted, writes into ajaxSettings.
355
+ ajaxSetup: function( target, settings ) {
356
+ return settings ?
357
+
358
+ // Building a settings object
359
+ ajaxExtend( ajaxExtend( target, jQuery.ajaxSettings ), settings ) :
360
+
361
+ // Extending ajaxSettings
362
+ ajaxExtend( jQuery.ajaxSettings, target );
363
+ },
364
+
365
+ ajaxPrefilter: addToPrefiltersOrTransports( prefilters ),
366
+ ajaxTransport: addToPrefiltersOrTransports( transports ),
367
+
368
+ // Main method
369
+ ajax: function( url, options ) {
370
+
371
+ // If url is an object, simulate pre-1.5 signature
372
+ if ( typeof url === "object" ) {
373
+ options = url;
374
+ url = undefined;
375
+ }
376
+
377
+ // Force options to be an object
378
+ options = options || {};
379
+
380
+ var transport,
381
+ // URL without anti-cache param
382
+ cacheURL,
383
+ // Response headers
384
+ responseHeadersString,
385
+ responseHeaders,
386
+ // timeout handle
387
+ timeoutTimer,
388
+ // Cross-domain detection vars
389
+ parts,
390
+ // To know if global events are to be dispatched
391
+ fireGlobals,
392
+ // Loop variable
393
+ i,
394
+ // Create the final options object
395
+ s = jQuery.ajaxSetup( {}, options ),
396
+ // Callbacks context
397
+ callbackContext = s.context || s,
398
+ // Context for global events is callbackContext if it is a DOM node or jQuery collection
399
+ globalEventContext = s.context && ( callbackContext.nodeType || callbackContext.jquery ) ?
400
+ jQuery( callbackContext ) :
401
+ jQuery.event,
402
+ // Deferreds
403
+ deferred = jQuery.Deferred(),
404
+ completeDeferred = jQuery.Callbacks("once memory"),
405
+ // Status-dependent callbacks
406
+ statusCode = s.statusCode || {},
407
+ // Headers (they are sent all at once)
408
+ requestHeaders = {},
409
+ requestHeadersNames = {},
410
+ // The jqXHR state
411
+ state = 0,
412
+ // Default abort message
413
+ strAbort = "canceled",
414
+ // Fake xhr
415
+ jqXHR = {
416
+ readyState: 0,
417
+
418
+ // Builds headers hashtable if needed
419
+ getResponseHeader: function( key ) {
420
+ var match;
421
+ if ( state === 2 ) {
422
+ if ( !responseHeaders ) {
423
+ responseHeaders = {};
424
+ while ( (match = rheaders.exec( responseHeadersString )) ) {
425
+ responseHeaders[ match[1].toLowerCase() ] = match[ 2 ];
426
+ }
427
+ }
428
+ match = responseHeaders[ key.toLowerCase() ];
429
+ }
430
+ return match == null ? null : match;
431
+ },
432
+
433
+ // Raw string
434
+ getAllResponseHeaders: function() {
435
+ return state === 2 ? responseHeadersString : null;
436
+ },
437
+
438
+ // Caches the header
439
+ setRequestHeader: function( name, value ) {
440
+ var lname = name.toLowerCase();
441
+ if ( !state ) {
442
+ name = requestHeadersNames[ lname ] = requestHeadersNames[ lname ] || name;
443
+ requestHeaders[ name ] = value;
444
+ }
445
+ return this;
446
+ },
447
+
448
+ // Overrides response content-type header
449
+ overrideMimeType: function( type ) {
450
+ if ( !state ) {
451
+ s.mimeType = type;
452
+ }
453
+ return this;
454
+ },
455
+
456
+ // Status-dependent callbacks
457
+ statusCode: function( map ) {
458
+ var code;
459
+ if ( map ) {
460
+ if ( state < 2 ) {
461
+ for ( code in map ) {
462
+ // Lazy-add the new callback in a way that preserves old ones
463
+ statusCode[ code ] = [ statusCode[ code ], map[ code ] ];
464
+ }
465
+ } else {
466
+ // Execute the appropriate callbacks
467
+ jqXHR.always( map[ jqXHR.status ] );
468
+ }
469
+ }
470
+ return this;
471
+ },
472
+
473
+ // Cancel the request
474
+ abort: function( statusText ) {
475
+ var finalText = statusText || strAbort;
476
+ if ( transport ) {
477
+ transport.abort( finalText );
478
+ }
479
+ done( 0, finalText );
480
+ return this;
481
+ }
482
+ };
483
+
484
+ // Attach deferreds
485
+ deferred.promise( jqXHR ).complete = completeDeferred.add;
486
+ jqXHR.success = jqXHR.done;
487
+ jqXHR.error = jqXHR.fail;
488
+
489
+ // Remove hash character (#7531: and string promotion)
490
+ // Add protocol if not provided (prefilters might expect it)
491
+ // Handle falsy url in the settings object (#10093: consistency with old signature)
492
+ // We also use the url parameter if available
493
+ s.url = ( ( url || s.url || ajaxLocation ) + "" ).replace( rhash, "" )
494
+ .replace( rprotocol, ajaxLocParts[ 1 ] + "//" );
495
+
496
+ // Alias method option to type as per ticket #12004
497
+ s.type = options.method || options.type || s.method || s.type;
498
+
499
+ // Extract dataTypes list
500
+ s.dataTypes = jQuery.trim( s.dataType || "*" ).toLowerCase().match( rnotwhite ) || [ "" ];
501
+
502
+ // A cross-domain request is in order when we have a protocol:host:port mismatch
503
+ if ( s.crossDomain == null ) {
504
+ parts = rurl.exec( s.url.toLowerCase() );
505
+ s.crossDomain = !!( parts &&
506
+ ( parts[ 1 ] !== ajaxLocParts[ 1 ] || parts[ 2 ] !== ajaxLocParts[ 2 ] ||
507
+ ( parts[ 3 ] || ( parts[ 1 ] === "http:" ? "80" : "443" ) ) !==
508
+ ( ajaxLocParts[ 3 ] || ( ajaxLocParts[ 1 ] === "http:" ? "80" : "443" ) ) )
509
+ );
510
+ }
511
+
512
+ // Convert data if not already a string
513
+ if ( s.data && s.processData && typeof s.data !== "string" ) {
514
+ s.data = jQuery.param( s.data, s.traditional );
515
+ }
516
+
517
+ // Apply prefilters
518
+ inspectPrefiltersOrTransports( prefilters, s, options, jqXHR );
519
+
520
+ // If request was aborted inside a prefilter, stop there
521
+ if ( state === 2 ) {
522
+ return jqXHR;
523
+ }
524
+
525
+ // We can fire global events as of now if asked to
526
+ // Don't fire events if jQuery.event is undefined in an AMD-usage scenario (#15118)
527
+ fireGlobals = jQuery.event && s.global;
528
+
529
+ // Watch for a new set of requests
530
+ if ( fireGlobals && jQuery.active++ === 0 ) {
531
+ jQuery.event.trigger("ajaxStart");
532
+ }
533
+
534
+ // Uppercase the type
535
+ s.type = s.type.toUpperCase();
536
+
537
+ // Determine if request has content
538
+ s.hasContent = !rnoContent.test( s.type );
539
+
540
+ // Save the URL in case we're toying with the If-Modified-Since
541
+ // and/or If-None-Match header later on
542
+ cacheURL = s.url;
543
+
544
+ // More options handling for requests with no content
545
+ if ( !s.hasContent ) {
546
+
547
+ // If data is available, append data to url
548
+ if ( s.data ) {
549
+ cacheURL = ( s.url += ( rquery.test( cacheURL ) ? "&" : "?" ) + s.data );
550
+ // #9682: remove data so that it's not used in an eventual retry
551
+ delete s.data;
552
+ }
553
+
554
+ // Add anti-cache in url if needed
555
+ if ( s.cache === false ) {
556
+ s.url = rts.test( cacheURL ) ?
557
+
558
+ // If there is already a '_' parameter, set its value
559
+ cacheURL.replace( rts, "$1_=" + nonce++ ) :
560
+
561
+ // Otherwise add one to the end
562
+ cacheURL + ( rquery.test( cacheURL ) ? "&" : "?" ) + "_=" + nonce++;
563
+ }
564
+ }
565
+
566
+ // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.
567
+ if ( s.ifModified ) {
568
+ if ( jQuery.lastModified[ cacheURL ] ) {
569
+ jqXHR.setRequestHeader( "If-Modified-Since", jQuery.lastModified[ cacheURL ] );
570
+ }
571
+ if ( jQuery.etag[ cacheURL ] ) {
572
+ jqXHR.setRequestHeader( "If-None-Match", jQuery.etag[ cacheURL ] );
573
+ }
574
+ }
575
+
576
+ // Set the correct header, if data is being sent
577
+ if ( s.data && s.hasContent && s.contentType !== false || options.contentType ) {
578
+ jqXHR.setRequestHeader( "Content-Type", s.contentType );
579
+ }
580
+
581
+ // Set the Accepts header for the server, depending on the dataType
582
+ jqXHR.setRequestHeader(
583
+ "Accept",
584
+ s.dataTypes[ 0 ] && s.accepts[ s.dataTypes[0] ] ?
585
+ s.accepts[ s.dataTypes[0] ] + ( s.dataTypes[ 0 ] !== "*" ? ", " + allTypes + "; q=0.01" : "" ) :
586
+ s.accepts[ "*" ]
587
+ );
588
+
589
+ // Check for headers option
590
+ for ( i in s.headers ) {
591
+ jqXHR.setRequestHeader( i, s.headers[ i ] );
592
+ }
593
+
594
+ // Allow custom headers/mimetypes and early abort
595
+ if ( s.beforeSend && ( s.beforeSend.call( callbackContext, jqXHR, s ) === false || state === 2 ) ) {
596
+ // Abort if not done already and return
597
+ return jqXHR.abort();
598
+ }
599
+
600
+ // Aborting is no longer a cancellation
601
+ strAbort = "abort";
602
+
603
+ // Install callbacks on deferreds
604
+ for ( i in { success: 1, error: 1, complete: 1 } ) {
605
+ jqXHR[ i ]( s[ i ] );
606
+ }
607
+
608
+ // Get transport
609
+ transport = inspectPrefiltersOrTransports( transports, s, options, jqXHR );
610
+
611
+ // If no transport, we auto-abort
612
+ if ( !transport ) {
613
+ done( -1, "No Transport" );
614
+ } else {
615
+ jqXHR.readyState = 1;
616
+
617
+ // Send global event
618
+ if ( fireGlobals ) {
619
+ globalEventContext.trigger( "ajaxSend", [ jqXHR, s ] );
620
+ }
621
+ // Timeout
622
+ if ( s.async && s.timeout > 0 ) {
623
+ timeoutTimer = setTimeout(function() {
624
+ jqXHR.abort("timeout");
625
+ }, s.timeout );
626
+ }
627
+
628
+ try {
629
+ state = 1;
630
+ transport.send( requestHeaders, done );
631
+ } catch ( e ) {
632
+ // Propagate exception as error if not done
633
+ if ( state < 2 ) {
634
+ done( -1, e );
635
+ // Simply rethrow otherwise
636
+ } else {
637
+ throw e;
638
+ }
639
+ }
640
+ }
641
+
642
+ // Callback for when everything is done
643
+ function done( status, nativeStatusText, responses, headers ) {
644
+ var isSuccess, success, error, response, modified,
645
+ statusText = nativeStatusText;
646
+
647
+ // Called once
648
+ if ( state === 2 ) {
649
+ return;
650
+ }
651
+
652
+ // State is "done" now
653
+ state = 2;
654
+
655
+ // Clear timeout if it exists
656
+ if ( timeoutTimer ) {
657
+ clearTimeout( timeoutTimer );
658
+ }
659
+
660
+ // Dereference transport for early garbage collection
661
+ // (no matter how long the jqXHR object will be used)
662
+ transport = undefined;
663
+
664
+ // Cache response headers
665
+ responseHeadersString = headers || "";
666
+
667
+ // Set readyState
668
+ jqXHR.readyState = status > 0 ? 4 : 0;
669
+
670
+ // Determine if successful
671
+ isSuccess = status >= 200 && status < 300 || status === 304;
672
+
673
+ // Get response data
674
+ if ( responses ) {
675
+ response = ajaxHandleResponses( s, jqXHR, responses );
676
+ }
677
+
678
+ // Convert no matter what (that way responseXXX fields are always set)
679
+ response = ajaxConvert( s, response, jqXHR, isSuccess );
680
+
681
+ // If successful, handle type chaining
682
+ if ( isSuccess ) {
683
+
684
+ // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.
685
+ if ( s.ifModified ) {
686
+ modified = jqXHR.getResponseHeader("Last-Modified");
687
+ if ( modified ) {
688
+ jQuery.lastModified[ cacheURL ] = modified;
689
+ }
690
+ modified = jqXHR.getResponseHeader("etag");
691
+ if ( modified ) {
692
+ jQuery.etag[ cacheURL ] = modified;
693
+ }
694
+ }
695
+
696
+ // if no content
697
+ if ( status === 204 || s.type === "HEAD" ) {
698
+ statusText = "nocontent";
699
+
700
+ // if not modified
701
+ } else if ( status === 304 ) {
702
+ statusText = "notmodified";
703
+
704
+ // If we have data, let's convert it
705
+ } else {
706
+ statusText = response.state;
707
+ success = response.data;
708
+ error = response.error;
709
+ isSuccess = !error;
710
+ }
711
+ } else {
712
+ // Extract error from statusText and normalize for non-aborts
713
+ error = statusText;
714
+ if ( status || !statusText ) {
715
+ statusText = "error";
716
+ if ( status < 0 ) {
717
+ status = 0;
718
+ }
719
+ }
720
+ }
721
+
722
+ // Set data for the fake xhr object
723
+ jqXHR.status = status;
724
+ jqXHR.statusText = ( nativeStatusText || statusText ) + "";
725
+
726
+ // Success/Error
727
+ if ( isSuccess ) {
728
+ deferred.resolveWith( callbackContext, [ success, statusText, jqXHR ] );
729
+ } else {
730
+ deferred.rejectWith( callbackContext, [ jqXHR, statusText, error ] );
731
+ }
732
+
733
+ // Status-dependent callbacks
734
+ jqXHR.statusCode( statusCode );
735
+ statusCode = undefined;
736
+
737
+ if ( fireGlobals ) {
738
+ globalEventContext.trigger( isSuccess ? "ajaxSuccess" : "ajaxError",
739
+ [ jqXHR, s, isSuccess ? success : error ] );
740
+ }
741
+
742
+ // Complete
743
+ completeDeferred.fireWith( callbackContext, [ jqXHR, statusText ] );
744
+
745
+ if ( fireGlobals ) {
746
+ globalEventContext.trigger( "ajaxComplete", [ jqXHR, s ] );
747
+ // Handle the global AJAX counter
748
+ if ( !( --jQuery.active ) ) {
749
+ jQuery.event.trigger("ajaxStop");
750
+ }
751
+ }
752
+ }
753
+
754
+ return jqXHR;
755
+ },
756
+
757
+ getJSON: function( url, data, callback ) {
758
+ return jQuery.get( url, data, callback, "json" );
759
+ },
760
+
761
+ getScript: function( url, callback ) {
762
+ return jQuery.get( url, undefined, callback, "script" );
763
+ }
764
+ });
765
+
766
+ jQuery.each( [ "get", "post" ], function( i, method ) {
767
+ jQuery[ method ] = function( url, data, callback, type ) {
768
+ // Shift arguments if data argument was omitted
769
+ if ( jQuery.isFunction( data ) ) {
770
+ type = type || callback;
771
+ callback = data;
772
+ data = undefined;
773
+ }
774
+
775
+ return jQuery.ajax({
776
+ url: url,
777
+ type: method,
778
+ dataType: type,
779
+ data: data,
780
+ success: callback
781
+ });
782
+ };
783
+ });
784
+
785
+ return jQuery;
786
+ });