paint-rails 0.5.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (397) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +14 -0
  3. data/.gitmodules +3 -0
  4. data/Gemfile +4 -0
  5. data/LICENSE.txt +22 -0
  6. data/README.md +31 -0
  7. data/Rakefile +32 -0
  8. data/lib/paint-rails/version.rb +5 -0
  9. data/lib/paint-rails.rb +8 -0
  10. data/paint-rails.gemspec +21 -0
  11. data/vendor/assets/images/favicon.ico +0 -0
  12. data/vendor/assets/images/logo.png +0 -0
  13. data/vendor/assets/stylesheets/bower_components/fastclick/.bower.json +23 -0
  14. data/vendor/assets/stylesheets/bower_components/fastclick/LICENSE +22 -0
  15. data/vendor/assets/stylesheets/bower_components/fastclick/README.md +140 -0
  16. data/vendor/assets/stylesheets/bower_components/fastclick/bower.json +12 -0
  17. data/vendor/assets/stylesheets/bower_components/fastclick/lib/fastclick.js +841 -0
  18. data/vendor/assets/stylesheets/bower_components/fontawesome/.bower.json +36 -0
  19. data/vendor/assets/stylesheets/bower_components/fontawesome/.gitignore +32 -0
  20. data/vendor/assets/stylesheets/bower_components/fontawesome/.npmignore +42 -0
  21. data/vendor/assets/stylesheets/bower_components/fontawesome/bower.json +23 -0
  22. data/vendor/assets/stylesheets/bower_components/fontawesome/css/font-awesome.css +1672 -0
  23. data/vendor/assets/stylesheets/bower_components/fontawesome/css/font-awesome.min.css +4 -0
  24. data/vendor/assets/stylesheets/bower_components/fontawesome/fonts/FontAwesome.otf +0 -0
  25. data/vendor/assets/stylesheets/bower_components/fontawesome/fonts/fontawesome-webfont.eot +0 -0
  26. data/vendor/assets/stylesheets/bower_components/fontawesome/fonts/fontawesome-webfont.svg +520 -0
  27. data/vendor/assets/stylesheets/bower_components/fontawesome/fonts/fontawesome-webfont.ttf +0 -0
  28. data/vendor/assets/stylesheets/bower_components/fontawesome/fonts/fontawesome-webfont.woff +0 -0
  29. data/vendor/assets/stylesheets/bower_components/fontawesome/less/bordered-pulled.less +16 -0
  30. data/vendor/assets/stylesheets/bower_components/fontawesome/less/core.less +11 -0
  31. data/vendor/assets/stylesheets/bower_components/fontawesome/less/extras.less +2 -0
  32. data/vendor/assets/stylesheets/bower_components/fontawesome/less/fixed-width.less +6 -0
  33. data/vendor/assets/stylesheets/bower_components/fontawesome/less/font-awesome.less +17 -0
  34. data/vendor/assets/stylesheets/bower_components/fontawesome/less/icons.less +552 -0
  35. data/vendor/assets/stylesheets/bower_components/fontawesome/less/larger.less +13 -0
  36. data/vendor/assets/stylesheets/bower_components/fontawesome/less/list.less +19 -0
  37. data/vendor/assets/stylesheets/bower_components/fontawesome/less/mixins.less +25 -0
  38. data/vendor/assets/stylesheets/bower_components/fontawesome/less/path.less +14 -0
  39. data/vendor/assets/stylesheets/bower_components/fontawesome/less/rotated-flipped.less +20 -0
  40. data/vendor/assets/stylesheets/bower_components/fontawesome/less/spinning.less +29 -0
  41. data/vendor/assets/stylesheets/bower_components/fontawesome/less/stacked.less +20 -0
  42. data/vendor/assets/stylesheets/bower_components/fontawesome/less/variables.less +561 -0
  43. data/vendor/assets/stylesheets/bower_components/fontawesome/scss/_bordered-pulled.scss +16 -0
  44. data/vendor/assets/stylesheets/bower_components/fontawesome/scss/_core.scss +11 -0
  45. data/vendor/assets/stylesheets/bower_components/fontawesome/scss/_extras.scss +44 -0
  46. data/vendor/assets/stylesheets/bower_components/fontawesome/scss/_fixed-width.scss +6 -0
  47. data/vendor/assets/stylesheets/bower_components/fontawesome/scss/_icons.scss +552 -0
  48. data/vendor/assets/stylesheets/bower_components/fontawesome/scss/_larger.scss +13 -0
  49. data/vendor/assets/stylesheets/bower_components/fontawesome/scss/_list.scss +19 -0
  50. data/vendor/assets/stylesheets/bower_components/fontawesome/scss/_mixins.scss +25 -0
  51. data/vendor/assets/stylesheets/bower_components/fontawesome/scss/_path.scss +14 -0
  52. data/vendor/assets/stylesheets/bower_components/fontawesome/scss/_rotated-flipped.scss +20 -0
  53. data/vendor/assets/stylesheets/bower_components/fontawesome/scss/_spinning.scss +29 -0
  54. data/vendor/assets/stylesheets/bower_components/fontawesome/scss/_stacked.scss +20 -0
  55. data/vendor/assets/stylesheets/bower_components/fontawesome/scss/_variables.scss +561 -0
  56. data/vendor/assets/stylesheets/bower_components/fontawesome/scss/font-awesome.scss +17 -0
  57. data/vendor/assets/stylesheets/bower_components/foundation/.bower.json +32 -0
  58. data/vendor/assets/stylesheets/bower_components/foundation/bower.json +23 -0
  59. data/vendor/assets/stylesheets/bower_components/foundation/css/foundation.css +6138 -0
  60. data/vendor/assets/stylesheets/bower_components/foundation/css/normalize.css +357 -0
  61. data/vendor/assets/stylesheets/bower_components/foundation/js/foundation/foundation.abide.js +314 -0
  62. data/vendor/assets/stylesheets/bower_components/foundation/js/foundation/foundation.accordion.js +66 -0
  63. data/vendor/assets/stylesheets/bower_components/foundation/js/foundation/foundation.alert.js +43 -0
  64. data/vendor/assets/stylesheets/bower_components/foundation/js/foundation/foundation.clearing.js +558 -0
  65. data/vendor/assets/stylesheets/bower_components/foundation/js/foundation/foundation.dropdown.js +326 -0
  66. data/vendor/assets/stylesheets/bower_components/foundation/js/foundation/foundation.equalizer.js +74 -0
  67. data/vendor/assets/stylesheets/bower_components/foundation/js/foundation/foundation.interchange.js +344 -0
  68. data/vendor/assets/stylesheets/bower_components/foundation/js/foundation/foundation.joyride.js +917 -0
  69. data/vendor/assets/stylesheets/bower_components/foundation/js/foundation/foundation.js +625 -0
  70. data/vendor/assets/stylesheets/bower_components/foundation/js/foundation/foundation.magellan.js +189 -0
  71. data/vendor/assets/stylesheets/bower_components/foundation/js/foundation/foundation.offcanvas.js +152 -0
  72. data/vendor/assets/stylesheets/bower_components/foundation/js/foundation/foundation.orbit.js +472 -0
  73. data/vendor/assets/stylesheets/bower_components/foundation/js/foundation/foundation.reveal.js +444 -0
  74. data/vendor/assets/stylesheets/bower_components/foundation/js/foundation/foundation.slider.js +239 -0
  75. data/vendor/assets/stylesheets/bower_components/foundation/js/foundation/foundation.tab.js +217 -0
  76. data/vendor/assets/stylesheets/bower_components/foundation/js/foundation/foundation.tooltip.js +300 -0
  77. data/vendor/assets/stylesheets/bower_components/foundation/js/foundation/foundation.topbar.js +445 -0
  78. data/vendor/assets/stylesheets/bower_components/foundation/js/foundation.js +5741 -0
  79. data/vendor/assets/stylesheets/bower_components/foundation/js/foundation.min.js +4 -0
  80. data/vendor/assets/stylesheets/bower_components/foundation/js/vendor/fastclick.js +9 -0
  81. data/vendor/assets/stylesheets/bower_components/foundation/js/vendor/jquery.cookie.js +8 -0
  82. data/vendor/assets/stylesheets/bower_components/foundation/js/vendor/jquery.js +26 -0
  83. data/vendor/assets/stylesheets/bower_components/foundation/js/vendor/modernizr.js +8 -0
  84. data/vendor/assets/stylesheets/bower_components/foundation/js/vendor/placeholder.js +2 -0
  85. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/_functions.scss +102 -0
  86. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/_settings.scss +1441 -0
  87. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_accordion.scss +157 -0
  88. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_alert-boxes.scss +128 -0
  89. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_block-grid.scss +132 -0
  90. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_breadcrumbs.scss +132 -0
  91. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_button-groups.scss +197 -0
  92. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_buttons.scss +259 -0
  93. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_clearing.scss +247 -0
  94. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_dropdown-buttons.scss +130 -0
  95. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_dropdown.scss +262 -0
  96. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_flex-video.scss +51 -0
  97. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_forms.scss +585 -0
  98. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_global.scss +460 -0
  99. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_grid.scss +275 -0
  100. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_icon-bar.scss +293 -0
  101. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_inline-lists.scss +57 -0
  102. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_joyride.scss +222 -0
  103. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_keystrokes.scss +61 -0
  104. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_labels.scss +106 -0
  105. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_magellan.scss +34 -0
  106. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_offcanvas.scss +513 -0
  107. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_orbit.scss +368 -0
  108. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_pagination.scss +162 -0
  109. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_panels.scss +95 -0
  110. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_pricing-tables.scss +150 -0
  111. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_progress-bars.scss +79 -0
  112. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_range-slider.scss +168 -0
  113. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_reveal.scss +222 -0
  114. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_side-nav.scss +116 -0
  115. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_split-buttons.scss +191 -0
  116. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_sub-nav.scss +123 -0
  117. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_switches.scss +230 -0
  118. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_tables.scss +135 -0
  119. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_tabs.scss +123 -0
  120. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_thumbs.scss +66 -0
  121. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_toolbar.scss +70 -0
  122. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_tooltips.scss +142 -0
  123. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_top-bar.scss +685 -0
  124. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_type.scss +525 -0
  125. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation/components/_visibility.scss +408 -0
  126. data/vendor/assets/stylesheets/bower_components/foundation/scss/foundation.scss +45 -0
  127. data/vendor/assets/stylesheets/bower_components/foundation/scss/normalize.scss +427 -0
  128. data/vendor/assets/stylesheets/bower_components/jquery/.bower.json +37 -0
  129. data/vendor/assets/stylesheets/bower_components/jquery/MIT-LICENSE.txt +21 -0
  130. data/vendor/assets/stylesheets/bower_components/jquery/bower.json +27 -0
  131. data/vendor/assets/stylesheets/bower_components/jquery/dist/jquery.js +9205 -0
  132. data/vendor/assets/stylesheets/bower_components/jquery/dist/jquery.min.js +5 -0
  133. data/vendor/assets/stylesheets/bower_components/jquery/dist/jquery.min.map +1 -0
  134. data/vendor/assets/stylesheets/bower_components/jquery/src/ajax/jsonp.js +89 -0
  135. data/vendor/assets/stylesheets/bower_components/jquery/src/ajax/load.js +75 -0
  136. data/vendor/assets/stylesheets/bower_components/jquery/src/ajax/parseJSON.js +13 -0
  137. data/vendor/assets/stylesheets/bower_components/jquery/src/ajax/parseXML.js +28 -0
  138. data/vendor/assets/stylesheets/bower_components/jquery/src/ajax/script.js +64 -0
  139. data/vendor/assets/stylesheets/bower_components/jquery/src/ajax/var/nonce.js +5 -0
  140. data/vendor/assets/stylesheets/bower_components/jquery/src/ajax/var/rquery.js +3 -0
  141. data/vendor/assets/stylesheets/bower_components/jquery/src/ajax/xhr.js +136 -0
  142. data/vendor/assets/stylesheets/bower_components/jquery/src/ajax.js +786 -0
  143. data/vendor/assets/stylesheets/bower_components/jquery/src/attributes/attr.js +141 -0
  144. data/vendor/assets/stylesheets/bower_components/jquery/src/attributes/classes.js +158 -0
  145. data/vendor/assets/stylesheets/bower_components/jquery/src/attributes/prop.js +94 -0
  146. data/vendor/assets/stylesheets/bower_components/jquery/src/attributes/support.js +35 -0
  147. data/vendor/assets/stylesheets/bower_components/jquery/src/attributes/val.js +161 -0
  148. data/vendor/assets/stylesheets/bower_components/jquery/src/attributes.js +11 -0
  149. data/vendor/assets/stylesheets/bower_components/jquery/src/callbacks.js +205 -0
  150. data/vendor/assets/stylesheets/bower_components/jquery/src/core/access.js +60 -0
  151. data/vendor/assets/stylesheets/bower_components/jquery/src/core/init.js +123 -0
  152. data/vendor/assets/stylesheets/bower_components/jquery/src/core/parseHTML.js +39 -0
  153. data/vendor/assets/stylesheets/bower_components/jquery/src/core/ready.js +97 -0
  154. data/vendor/assets/stylesheets/bower_components/jquery/src/core/var/rsingleTag.js +4 -0
  155. data/vendor/assets/stylesheets/bower_components/jquery/src/core.js +497 -0
  156. data/vendor/assets/stylesheets/bower_components/jquery/src/css/addGetHookIf.js +22 -0
  157. data/vendor/assets/stylesheets/bower_components/jquery/src/css/curCSS.js +57 -0
  158. data/vendor/assets/stylesheets/bower_components/jquery/src/css/defaultDisplay.js +70 -0
  159. data/vendor/assets/stylesheets/bower_components/jquery/src/css/hiddenVisibleSelectors.js +15 -0
  160. data/vendor/assets/stylesheets/bower_components/jquery/src/css/support.js +96 -0
  161. data/vendor/assets/stylesheets/bower_components/jquery/src/css/swap.js +28 -0
  162. data/vendor/assets/stylesheets/bower_components/jquery/src/css/var/cssExpand.js +3 -0
  163. data/vendor/assets/stylesheets/bower_components/jquery/src/css/var/getStyles.js +12 -0
  164. data/vendor/assets/stylesheets/bower_components/jquery/src/css/var/isHidden.js +13 -0
  165. data/vendor/assets/stylesheets/bower_components/jquery/src/css/var/rmargin.js +3 -0
  166. data/vendor/assets/stylesheets/bower_components/jquery/src/css/var/rnumnonpx.js +5 -0
  167. data/vendor/assets/stylesheets/bower_components/jquery/src/css.js +450 -0
  168. data/vendor/assets/stylesheets/bower_components/jquery/src/data/Data.js +181 -0
  169. data/vendor/assets/stylesheets/bower_components/jquery/src/data/accepts.js +20 -0
  170. data/vendor/assets/stylesheets/bower_components/jquery/src/data/var/data_priv.js +5 -0
  171. data/vendor/assets/stylesheets/bower_components/jquery/src/data/var/data_user.js +5 -0
  172. data/vendor/assets/stylesheets/bower_components/jquery/src/data.js +178 -0
  173. data/vendor/assets/stylesheets/bower_components/jquery/src/deferred.js +149 -0
  174. data/vendor/assets/stylesheets/bower_components/jquery/src/deprecated.js +13 -0
  175. data/vendor/assets/stylesheets/bower_components/jquery/src/dimensions.js +50 -0
  176. data/vendor/assets/stylesheets/bower_components/jquery/src/effects/Tween.js +114 -0
  177. data/vendor/assets/stylesheets/bower_components/jquery/src/effects/animatedSelector.js +13 -0
  178. data/vendor/assets/stylesheets/bower_components/jquery/src/effects.js +648 -0
  179. data/vendor/assets/stylesheets/bower_components/jquery/src/event/ajax.js +13 -0
  180. data/vendor/assets/stylesheets/bower_components/jquery/src/event/alias.js +39 -0
  181. data/vendor/assets/stylesheets/bower_components/jquery/src/event/support.js +9 -0
  182. data/vendor/assets/stylesheets/bower_components/jquery/src/event.js +868 -0
  183. data/vendor/assets/stylesheets/bower_components/jquery/src/exports/amd.js +24 -0
  184. data/vendor/assets/stylesheets/bower_components/jquery/src/exports/global.js +32 -0
  185. data/vendor/assets/stylesheets/bower_components/jquery/src/intro.js +44 -0
  186. data/vendor/assets/stylesheets/bower_components/jquery/src/jquery.js +37 -0
  187. data/vendor/assets/stylesheets/bower_components/jquery/src/manipulation/_evalUrl.js +18 -0
  188. data/vendor/assets/stylesheets/bower_components/jquery/src/manipulation/support.js +32 -0
  189. data/vendor/assets/stylesheets/bower_components/jquery/src/manipulation/var/rcheckableType.js +3 -0
  190. data/vendor/assets/stylesheets/bower_components/jquery/src/manipulation.js +580 -0
  191. data/vendor/assets/stylesheets/bower_components/jquery/src/offset.js +207 -0
  192. data/vendor/assets/stylesheets/bower_components/jquery/src/outro.js +1 -0
  193. data/vendor/assets/stylesheets/bower_components/jquery/src/queue/delay.js +22 -0
  194. data/vendor/assets/stylesheets/bower_components/jquery/src/queue.js +142 -0
  195. data/vendor/assets/stylesheets/bower_components/jquery/src/selector-native.js +172 -0
  196. data/vendor/assets/stylesheets/bower_components/jquery/src/selector-sizzle.js +14 -0
  197. data/vendor/assets/stylesheets/bower_components/jquery/src/selector.js +1 -0
  198. data/vendor/assets/stylesheets/bower_components/jquery/src/serialize.js +111 -0
  199. data/vendor/assets/stylesheets/bower_components/jquery/src/sizzle/dist/sizzle.js +2067 -0
  200. data/vendor/assets/stylesheets/bower_components/jquery/src/sizzle/dist/sizzle.min.js +3 -0
  201. data/vendor/assets/stylesheets/bower_components/jquery/src/sizzle/dist/sizzle.min.map +1 -0
  202. data/vendor/assets/stylesheets/bower_components/jquery/src/traversing/findFilter.js +100 -0
  203. data/vendor/assets/stylesheets/bower_components/jquery/src/traversing/var/rneedsContext.js +6 -0
  204. data/vendor/assets/stylesheets/bower_components/jquery/src/traversing.js +199 -0
  205. data/vendor/assets/stylesheets/bower_components/jquery/src/var/arr.js +3 -0
  206. data/vendor/assets/stylesheets/bower_components/jquery/src/var/class2type.js +4 -0
  207. data/vendor/assets/stylesheets/bower_components/jquery/src/var/concat.js +5 -0
  208. data/vendor/assets/stylesheets/bower_components/jquery/src/var/hasOwn.js +5 -0
  209. data/vendor/assets/stylesheets/bower_components/jquery/src/var/indexOf.js +5 -0
  210. data/vendor/assets/stylesheets/bower_components/jquery/src/var/pnum.js +3 -0
  211. data/vendor/assets/stylesheets/bower_components/jquery/src/var/push.js +5 -0
  212. data/vendor/assets/stylesheets/bower_components/jquery/src/var/rnotwhite.js +3 -0
  213. data/vendor/assets/stylesheets/bower_components/jquery/src/var/slice.js +5 -0
  214. data/vendor/assets/stylesheets/bower_components/jquery/src/var/strundefined.js +3 -0
  215. data/vendor/assets/stylesheets/bower_components/jquery/src/var/support.js +4 -0
  216. data/vendor/assets/stylesheets/bower_components/jquery/src/var/toString.js +5 -0
  217. data/vendor/assets/stylesheets/bower_components/jquery/src/wrap.js +79 -0
  218. data/vendor/assets/stylesheets/bower_components/jquery-placeholder/.bower.json +33 -0
  219. data/vendor/assets/stylesheets/bower_components/jquery-placeholder/bower.json +21 -0
  220. data/vendor/assets/stylesheets/bower_components/jquery-placeholder/jquery.placeholder.js +192 -0
  221. data/vendor/assets/stylesheets/bower_components/jquery.cookie/.bower.json +28 -0
  222. data/vendor/assets/stylesheets/bower_components/jquery.cookie/bower.json +18 -0
  223. data/vendor/assets/stylesheets/bower_components/jquery.cookie/jquery.cookie.js +117 -0
  224. data/vendor/assets/stylesheets/bower_components/modernizr/.bower.json +14 -0
  225. data/vendor/assets/stylesheets/bower_components/modernizr/.editorconfig +10 -0
  226. data/vendor/assets/stylesheets/bower_components/modernizr/.gitignore +2 -0
  227. data/vendor/assets/stylesheets/bower_components/modernizr/.travis.yml +6 -0
  228. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/a-download.js +8 -0
  229. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/audio-audiodata-api.js +4 -0
  230. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/audio-webaudio-api.js +4 -0
  231. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/battery-api.js +8 -0
  232. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/battery-level.js +11 -0
  233. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/blob-constructor.js +10 -0
  234. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/canvas-todataurl-type.js +28 -0
  235. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/contenteditable.js +9 -0
  236. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/contentsecuritypolicy.js +10 -0
  237. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/contextmenu.js +11 -0
  238. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/cookies.js +15 -0
  239. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/cors.js +3 -0
  240. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-backgroundposition-shorthand.js +19 -0
  241. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-backgroundposition-xy.js +15 -0
  242. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-backgroundrepeat.js +31 -0
  243. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-backgroundsizecover.js +10 -0
  244. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-boxsizing.js +9 -0
  245. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-calc.js +12 -0
  246. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-cubicbezierrange.js +8 -0
  247. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-displayrunin.js +18 -0
  248. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-displaytable.js +27 -0
  249. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-filters.js +7 -0
  250. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-hyphens.js +205 -0
  251. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-lastchild.js +11 -0
  252. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-mask.js +12 -0
  253. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-mediaqueries.js +3 -0
  254. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-objectfit.js +6 -0
  255. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-overflow-scrolling.js +9 -0
  256. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-pointerevents.js +25 -0
  257. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-positionsticky.js +13 -0
  258. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-regions.js +55 -0
  259. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-remunit.js +19 -0
  260. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-resize.js +8 -0
  261. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-scrollbars.js +19 -0
  262. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-shapes.js +4 -0
  263. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-subpixelfont.js +23 -0
  264. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-supports.js +6 -0
  265. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-userselect.js +10 -0
  266. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-vhunit.js +14 -0
  267. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-vmaxunit.js +14 -0
  268. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-vminunit.js +14 -0
  269. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/css-vwunit.js +14 -0
  270. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/custom-protocol-handler.js +10 -0
  271. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/dart.js +6 -0
  272. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/dataview-api.js +4 -0
  273. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/dom-classlist.js +4 -0
  274. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/dom-createElement-attrs.js +11 -0
  275. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/dom-dataset.js +9 -0
  276. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/dom-microdata.js +4 -0
  277. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/elem-datalist.js +12 -0
  278. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/elem-details.js +25 -0
  279. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/elem-output.js +4 -0
  280. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/elem-progress-meter.js +11 -0
  281. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/elem-ruby.js +53 -0
  282. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/elem-time.js +4 -0
  283. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/elem-track.js +11 -0
  284. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/emoji.js +11 -0
  285. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/es5-strictmode.js +7 -0
  286. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/event-deviceorientation-motion.js +11 -0
  287. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/exif-orientation.js +32 -0
  288. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/file-api.js +12 -0
  289. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/file-filesystem.js +9 -0
  290. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/forms-fileinput.js +13 -0
  291. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/forms-formattribute.js +29 -0
  292. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/forms-inputnumber-l10n.js +32 -0
  293. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/forms-placeholder.js +10 -0
  294. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/forms-speechinput.js +19 -0
  295. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/forms-validation.js +62 -0
  296. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/fullscreen-api.js +10 -0
  297. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/gamepad.js +12 -0
  298. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/getusermedia.js +5 -0
  299. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/ie8compat.js +12 -0
  300. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/iframe-sandbox.js +5 -0
  301. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/iframe-seamless.js +5 -0
  302. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/iframe-srcdoc.js +5 -0
  303. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/img-apng.js +26 -0
  304. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/img-webp.js +20 -0
  305. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/json.js +7 -0
  306. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/lists-reversed.js +6 -0
  307. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/mathml.js +23 -0
  308. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/network-connection.js +22 -0
  309. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/network-eventsource.js +5 -0
  310. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/network-xhr2.js +13 -0
  311. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/notification.js +10 -0
  312. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/performance.js +5 -0
  313. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/pointerlock-api.js +4 -0
  314. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/quota-management-api.js +11 -0
  315. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/requestanimationframe.js +7 -0
  316. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/script-async.js +3 -0
  317. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/script-defer.js +3 -0
  318. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/style-scoped.js +6 -0
  319. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/svg-filters.js +13 -0
  320. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/unicode.js +32 -0
  321. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/url-data-uri.js +26 -0
  322. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/userdata.js +7 -0
  323. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/vibration.js +4 -0
  324. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/web-intents.js +6 -0
  325. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/webgl-extensions.js +42 -0
  326. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/websockets-binary.js +20 -0
  327. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/window-framed.js +8 -0
  328. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/workers-blobworkers.js +66 -0
  329. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/workers-dataworkers.js +34 -0
  330. data/vendor/assets/stylesheets/bower_components/modernizr/feature-detects/workers-sharedworkers.js +3 -0
  331. data/vendor/assets/stylesheets/bower_components/modernizr/grunt.js +69 -0
  332. data/vendor/assets/stylesheets/bower_components/modernizr/media/Modernizr 2 Logo.ai +292 -1
  333. data/vendor/assets/stylesheets/bower_components/modernizr/media/Modernizr 2 Logo.eps +0 -0
  334. data/vendor/assets/stylesheets/bower_components/modernizr/media/Modernizr 2 Logo.pdf +292 -1
  335. data/vendor/assets/stylesheets/bower_components/modernizr/media/Modernizr 2 Logo.png +0 -0
  336. data/vendor/assets/stylesheets/bower_components/modernizr/media/Modernizr 2 Logo.svg +35 -0
  337. data/vendor/assets/stylesheets/bower_components/modernizr/modernizr.js +1406 -0
  338. data/vendor/assets/stylesheets/bower_components/modernizr/readme.md +28 -0
  339. data/vendor/assets/stylesheets/bower_components/modernizr/test/basic.html +65 -0
  340. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse.html +1451 -0
  341. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/Windsong-webfont.eot +0 -0
  342. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/Windsong-webfont.otf +0 -0
  343. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/Windsong-webfont.svg +147 -0
  344. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/Windsong-webfont.ttf +0 -0
  345. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/Windsong-webfont.woff +0 -0
  346. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/alpha.png +0 -0
  347. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/apng_test.png +0 -0
  348. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/before-after.png +0 -0
  349. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/form_validation.html +15 -0
  350. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/ga.js +43 -0
  351. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/green5x5.png +0 -0
  352. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/hashchange.html +16 -0
  353. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/jquery.min.js +18 -0
  354. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/mathml.html +120 -0
  355. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/mathml_ref.png +0 -0
  356. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/modernizr-1.7.min.js +2 -0
  357. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/png_alpha_result.png +0 -0
  358. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/pushstate.html +40 -0
  359. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/red30x30.png +0 -0
  360. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/ruby.png +0 -0
  361. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/stroked-text.png +0 -0
  362. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/style.css +168 -0
  363. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/svg-html-blur.png +0 -0
  364. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/svg-img.svg +5 -0
  365. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/svg-img.svg.1 +5 -0
  366. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/svg_blur.png +0 -0
  367. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/table.png +0 -0
  368. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/text-shadow1.png +0 -0
  369. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/text-shadow2.png +0 -0
  370. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/windsong_font.png +0 -0
  371. data/vendor/assets/stylesheets/bower_components/modernizr/test/caniuse_files/xhtml.html +14 -0
  372. data/vendor/assets/stylesheets/bower_components/modernizr/test/index.html +104 -0
  373. data/vendor/assets/stylesheets/bower_components/modernizr/test/js/basic.html +65 -0
  374. data/vendor/assets/stylesheets/bower_components/modernizr/test/js/dumpdata.js +75 -0
  375. data/vendor/assets/stylesheets/bower_components/modernizr/test/js/lib/detect-global.js +153 -0
  376. data/vendor/assets/stylesheets/bower_components/modernizr/test/js/lib/jquery-1.7b2.js +9279 -0
  377. data/vendor/assets/stylesheets/bower_components/modernizr/test/js/lib/jsonselect.js +279 -0
  378. data/vendor/assets/stylesheets/bower_components/modernizr/test/js/lib/polyfills.js +96 -0
  379. data/vendor/assets/stylesheets/bower_components/modernizr/test/js/lib/uaparser.js +215 -0
  380. data/vendor/assets/stylesheets/bower_components/modernizr/test/js/setup.js +44 -0
  381. data/vendor/assets/stylesheets/bower_components/modernizr/test/js/unit-caniuse.js +191 -0
  382. data/vendor/assets/stylesheets/bower_components/modernizr/test/js/unit.js +669 -0
  383. data/vendor/assets/stylesheets/bower_components/modernizr/test/qunit/qunit.css +231 -0
  384. data/vendor/assets/stylesheets/bower_components/modernizr/test/qunit/qunit.js +1932 -0
  385. data/vendor/assets/stylesheets/bower_components/modernizr/test/qunit/run-qunit.js +72 -0
  386. data/vendor/assets/stylesheets/components/_button.scss +61 -0
  387. data/vendor/assets/stylesheets/components/_dropdown.scss +27 -0
  388. data/vendor/assets/stylesheets/components/_grid.scss +37 -0
  389. data/vendor/assets/stylesheets/components/_heading.scss +17 -0
  390. data/vendor/assets/stylesheets/components/_icon.scss +4 -0
  391. data/vendor/assets/stylesheets/components/_label.scss +3 -0
  392. data/vendor/assets/stylesheets/components/_layout.scss +263 -0
  393. data/vendor/assets/stylesheets/components/_progress-bar.scss +14 -0
  394. data/vendor/assets/stylesheets/globals/_mixins.scss +5 -0
  395. data/vendor/assets/stylesheets/globals/_settings.scss +64 -0
  396. data/vendor/assets/stylesheets/paint.scss +20 -0
  397. metadata +481 -0
@@ -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
+ });