jquery-ui-rails 4.2.1 → 8.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (291) hide show
  1. checksums.yaml +7 -0
  2. data/.travis.yml +1 -1
  3. data/History.md +45 -2
  4. data/README.md +100 -83
  5. data/Rakefile +82 -49
  6. data/VERSIONS.md +10 -0
  7. data/app/assets/images/jquery-ui/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  8. data/app/assets/images/jquery-ui/ui-icons_444444_256x240.png +0 -0
  9. data/app/assets/images/jquery-ui/ui-icons_555555_256x240.png +0 -0
  10. data/app/assets/images/jquery-ui/ui-icons_777620_256x240.png +0 -0
  11. data/app/assets/images/jquery-ui/ui-icons_777777_256x240.png +0 -0
  12. data/app/assets/images/jquery-ui/ui-icons_cc0000_256x240.png +0 -0
  13. data/app/assets/images/jquery-ui/ui-icons_ffffff_256x240.png +0 -0
  14. data/app/assets/javascripts/jquery-ui/data.js +39 -0
  15. data/app/assets/javascripts/jquery-ui/disable-selection.js +51 -0
  16. data/app/assets/javascripts/jquery-ui/effect.all.js +15 -0
  17. data/app/assets/javascripts/jquery-ui/effect.js +954 -0
  18. data/app/assets/javascripts/jquery-ui/effects/effect-blind.js +76 -0
  19. data/app/assets/javascripts/jquery-ui/effects/effect-bounce.js +116 -0
  20. data/app/assets/javascripts/jquery-ui/effects/effect-clip.js +71 -0
  21. data/app/assets/javascripts/jquery-ui/effects/effect-drop.js +75 -0
  22. data/app/assets/javascripts/jquery-ui/effects/effect-explode.js +117 -0
  23. data/app/assets/javascripts/jquery-ui/effects/effect-fade.js +53 -0
  24. data/app/assets/javascripts/jquery-ui/effects/effect-fold.js +95 -0
  25. data/app/assets/javascripts/jquery-ui/effects/effect-highlight.js +63 -0
  26. data/app/assets/javascripts/jquery-ui/effects/effect-puff.js +49 -0
  27. data/app/assets/javascripts/jquery-ui/effects/effect-pulsate.js +70 -0
  28. data/app/assets/javascripts/jquery-ui/effects/effect-scale.js +63 -0
  29. data/app/assets/javascripts/jquery-ui/effects/effect-shake.js +80 -0
  30. data/app/assets/javascripts/jquery-ui/effects/effect-size.js +199 -0
  31. data/app/assets/javascripts/jquery-ui/effects/effect-slide.js +82 -0
  32. data/app/assets/javascripts/jquery-ui/effects/effect-transfer.js +46 -0
  33. data/app/assets/javascripts/jquery-ui/focusable.js +79 -0
  34. data/app/assets/javascripts/jquery-ui/form-reset-mixin.js +81 -0
  35. data/app/assets/javascripts/jquery-ui/i18n/datepicker-af.js +40 -0
  36. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ar-DZ.js +42 -0
  37. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ar.js +42 -0
  38. data/app/assets/javascripts/jquery-ui/i18n/datepicker-az.js +40 -0
  39. data/app/assets/javascripts/jquery-ui/i18n/datepicker-be.js +40 -0
  40. data/app/assets/javascripts/jquery-ui/i18n/datepicker-bg.js +41 -0
  41. data/app/assets/javascripts/jquery-ui/i18n/datepicker-bs.js +40 -0
  42. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ca.js +40 -0
  43. data/app/assets/javascripts/jquery-ui/i18n/datepicker-cs.js +40 -0
  44. data/app/assets/javascripts/jquery-ui/i18n/datepicker-cy-GB.js +48 -0
  45. data/app/assets/javascripts/jquery-ui/i18n/datepicker-da.js +40 -0
  46. data/app/assets/javascripts/jquery-ui/i18n/datepicker-de-AT.js +41 -0
  47. data/app/assets/javascripts/jquery-ui/i18n/datepicker-de.js +40 -0
  48. data/app/assets/javascripts/jquery-ui/i18n/datepicker-el.js +40 -0
  49. data/app/assets/javascripts/jquery-ui/i18n/datepicker-en-AU.js +40 -0
  50. data/app/assets/javascripts/jquery-ui/i18n/datepicker-en-GB.js +40 -0
  51. data/app/assets/javascripts/jquery-ui/i18n/datepicker-en-NZ.js +40 -0
  52. data/app/assets/javascripts/jquery-ui/i18n/datepicker-eo.js +40 -0
  53. data/app/assets/javascripts/jquery-ui/i18n/datepicker-es.js +40 -0
  54. data/app/assets/javascripts/jquery-ui/i18n/datepicker-et.js +48 -0
  55. data/app/assets/javascripts/jquery-ui/i18n/datepicker-eu.js +39 -0
  56. data/app/assets/javascripts/jquery-ui/i18n/datepicker-fa.js +76 -0
  57. data/app/assets/javascripts/jquery-ui/i18n/datepicker-fi.js +40 -0
  58. data/app/assets/javascripts/jquery-ui/i18n/datepicker-fo.js +48 -0
  59. data/app/assets/javascripts/jquery-ui/i18n/datepicker-fr-CA.js +40 -0
  60. data/app/assets/javascripts/jquery-ui/i18n/datepicker-fr-CH.js +40 -0
  61. data/app/assets/javascripts/jquery-ui/i18n/datepicker-fr.js +42 -0
  62. data/app/assets/javascripts/jquery-ui/i18n/datepicker-gl.js +40 -0
  63. data/app/assets/javascripts/jquery-ui/i18n/datepicker-he.js +40 -0
  64. data/app/assets/javascripts/jquery-ui/i18n/datepicker-hi.js +40 -0
  65. data/app/assets/javascripts/jquery-ui/i18n/datepicker-hr.js +40 -0
  66. data/app/assets/javascripts/jquery-ui/i18n/datepicker-hu.js +39 -0
  67. data/app/assets/javascripts/jquery-ui/i18n/datepicker-hy.js +40 -0
  68. data/app/assets/javascripts/jquery-ui/i18n/datepicker-id.js +41 -0
  69. data/app/assets/javascripts/jquery-ui/i18n/datepicker-is.js +48 -0
  70. data/app/assets/javascripts/jquery-ui/i18n/datepicker-it-CH.js +40 -0
  71. data/app/assets/javascripts/jquery-ui/i18n/datepicker-it.js +40 -0
  72. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ja.js +40 -0
  73. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ka.js +51 -0
  74. data/app/assets/javascripts/jquery-ui/i18n/datepicker-kk.js +40 -0
  75. data/app/assets/javascripts/jquery-ui/i18n/datepicker-km.js +40 -0
  76. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ko.js +40 -0
  77. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ky.js +41 -0
  78. data/app/assets/javascripts/jquery-ui/i18n/datepicker-lb.js +48 -0
  79. data/app/assets/javascripts/jquery-ui/i18n/datepicker-lt.js +48 -0
  80. data/app/assets/javascripts/jquery-ui/i18n/datepicker-lv.js +48 -0
  81. data/app/assets/javascripts/jquery-ui/i18n/datepicker-mk.js +40 -0
  82. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ml.js +40 -0
  83. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ms.js +40 -0
  84. data/app/assets/javascripts/jquery-ui/i18n/datepicker-nb.js +52 -0
  85. data/app/assets/javascripts/jquery-ui/i18n/datepicker-nl-BE.js +40 -0
  86. data/app/assets/javascripts/jquery-ui/i18n/datepicker-nl.js +40 -0
  87. data/app/assets/javascripts/jquery-ui/i18n/datepicker-nn.js +52 -0
  88. data/app/assets/javascripts/jquery-ui/i18n/datepicker-no.js +53 -0
  89. data/app/assets/javascripts/jquery-ui/i18n/datepicker-pl.js +40 -0
  90. data/app/assets/javascripts/jquery-ui/i18n/datepicker-pt-BR.js +48 -0
  91. data/app/assets/javascripts/jquery-ui/i18n/datepicker-pt.js +47 -0
  92. data/app/assets/javascripts/jquery-ui/i18n/datepicker-rm.js +64 -0
  93. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ro.js +43 -0
  94. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ru.js +40 -0
  95. data/app/assets/javascripts/jquery-ui/i18n/datepicker-sk.js +40 -0
  96. data/app/assets/javascripts/jquery-ui/i18n/datepicker-sl.js +41 -0
  97. data/app/assets/javascripts/jquery-ui/i18n/datepicker-sq.js +40 -0
  98. data/app/assets/javascripts/jquery-ui/i18n/datepicker-sr-SR.js +40 -0
  99. data/app/assets/javascripts/jquery-ui/i18n/datepicker-sr.js +40 -0
  100. data/app/assets/javascripts/jquery-ui/i18n/datepicker-sv.js +40 -0
  101. data/app/assets/javascripts/jquery-ui/i18n/datepicker-ta.js +56 -0
  102. data/app/assets/javascripts/jquery-ui/i18n/datepicker-th.js +40 -0
  103. data/app/assets/javascripts/jquery-ui/i18n/datepicker-tj.js +40 -0
  104. data/app/assets/javascripts/jquery-ui/i18n/datepicker-tr.js +40 -0
  105. data/app/assets/javascripts/jquery-ui/i18n/datepicker-uk.js +41 -0
  106. data/app/assets/javascripts/jquery-ui/i18n/datepicker-vi.js +40 -0
  107. data/app/assets/javascripts/jquery-ui/i18n/datepicker-zh-CN.js +40 -0
  108. data/app/assets/javascripts/jquery-ui/i18n/datepicker-zh-HK.js +40 -0
  109. data/app/assets/javascripts/jquery-ui/i18n/datepicker-zh-TW.js +40 -0
  110. data/app/assets/javascripts/jquery-ui/jquery-patch.js +58 -0
  111. data/app/assets/javascripts/jquery-ui/jquery-var-for-color.js +24 -0
  112. data/app/assets/javascripts/jquery-ui/keycode.js +51 -0
  113. data/app/assets/javascripts/jquery-ui/labels.js +70 -0
  114. data/app/assets/javascripts/jquery-ui/plugin.js +49 -0
  115. data/app/assets/javascripts/{jquery.ui.position.js → jquery-ui/position.js} +123 -111
  116. data/app/assets/javascripts/jquery-ui/scroll-parent.js +50 -0
  117. data/app/assets/javascripts/jquery-ui/tabbable.js +41 -0
  118. data/app/assets/javascripts/jquery-ui/unique-id.js +54 -0
  119. data/app/assets/javascripts/jquery-ui/vendor/jquery-color/jquery.color.js +691 -0
  120. data/app/assets/javascripts/jquery-ui/version.js +20 -0
  121. data/app/assets/javascripts/jquery-ui/widget.js +761 -0
  122. data/app/assets/javascripts/{jquery.ui.accordion.js → jquery-ui/widgets/accordion.js} +263 -209
  123. data/app/assets/javascripts/{jquery.ui.autocomplete.js → jquery-ui/widgets/autocomplete.js} +177 -142
  124. data/app/assets/javascripts/jquery-ui/widgets/button.js +454 -0
  125. data/app/assets/javascripts/jquery-ui/widgets/checkboxradio.js +294 -0
  126. data/app/assets/javascripts/jquery-ui/widgets/controlgroup.js +304 -0
  127. data/app/assets/javascripts/jquery-ui/widgets/datepicker.js +2240 -0
  128. data/app/assets/javascripts/jquery-ui/widgets/dialog.js +957 -0
  129. data/app/assets/javascripts/jquery-ui/widgets/draggable.js +1264 -0
  130. data/app/assets/javascripts/jquery-ui/widgets/droppable.js +508 -0
  131. data/app/assets/javascripts/{jquery.ui.menu.js → jquery-ui/widgets/menu.js} +276 -189
  132. data/app/assets/javascripts/jquery-ui/widgets/mouse.js +226 -0
  133. data/app/assets/javascripts/jquery-ui/widgets/progressbar.js +184 -0
  134. data/app/assets/javascripts/jquery-ui/widgets/resizable.js +1281 -0
  135. data/app/assets/javascripts/jquery-ui/widgets/selectable.js +321 -0
  136. data/app/assets/javascripts/jquery-ui/widgets/selectmenu.js +675 -0
  137. data/app/assets/javascripts/{jquery.ui.slider.js → jquery-ui/widgets/slider.js} +256 -176
  138. data/app/assets/javascripts/jquery-ui/widgets/sortable.js +1614 -0
  139. data/app/assets/javascripts/{jquery.ui.spinner.js → jquery-ui/widgets/spinner.js} +200 -137
  140. data/app/assets/javascripts/{jquery.ui.tabs.js → jquery-ui/widgets/tabs.js} +322 -277
  141. data/app/assets/javascripts/jquery-ui/widgets/tooltip.js +528 -0
  142. data/app/assets/javascripts/jquery-ui.js +52 -0
  143. data/app/assets/stylesheets/jquery-ui/accordion.css +26 -0
  144. data/app/assets/stylesheets/jquery-ui/all.css +14 -0
  145. data/app/assets/stylesheets/jquery-ui/autocomplete.css +19 -0
  146. data/app/assets/stylesheets/jquery-ui/base.css +32 -0
  147. data/app/assets/stylesheets/jquery-ui/button.css +80 -0
  148. data/app/assets/stylesheets/jquery-ui/checkboxradio.css +37 -0
  149. data/app/assets/stylesheets/jquery-ui/controlgroup.css +65 -0
  150. data/app/assets/stylesheets/{jquery.ui.core.css.erb → jquery-ui/core.css} +15 -12
  151. data/app/assets/stylesheets/{jquery.ui.datepicker.css.erb → jquery-ui/datepicker.css} +17 -8
  152. data/app/assets/stylesheets/{jquery.ui.dialog.css.erb → jquery-ui/dialog.css} +43 -15
  153. data/app/assets/stylesheets/jquery-ui/draggable.css +14 -0
  154. data/app/assets/stylesheets/jquery-ui/menu.css +65 -0
  155. data/app/assets/stylesheets/jquery-ui/progressbar.css +30 -0
  156. data/app/assets/stylesheets/{jquery.ui.resizable.css.erb → jquery-ui/resizable.css} +6 -6
  157. data/app/assets/stylesheets/jquery-ui/selectable.css +19 -0
  158. data/app/assets/stylesheets/jquery-ui/selectmenu.css +53 -0
  159. data/app/assets/stylesheets/{jquery.ui.slider.css.erb → jquery-ui/slider.css} +8 -14
  160. data/app/assets/stylesheets/jquery-ui/sortable.css +14 -0
  161. data/app/assets/stylesheets/{jquery.ui.spinner.css.erb → jquery-ui/spinner.css} +12 -27
  162. data/app/assets/stylesheets/{jquery.ui.tabs.css.erb → jquery-ui/tabs.css} +6 -7
  163. data/app/assets/stylesheets/{jquery.ui.theme.css.erb → jquery-ui/theme.css.erb} +121 -102
  164. data/app/assets/stylesheets/jquery-ui/tooltip.css +22 -0
  165. data/app/assets/stylesheets/jquery-ui.css +1 -0
  166. data/lib/jquery/ui/rails/version.rb +2 -2
  167. metadata +178 -169
  168. data/app/assets/images/jquery-ui/animated-overlay.gif +0 -0
  169. data/app/assets/images/jquery-ui/ui-bg_flat_75_ffffff_40x100.png +0 -0
  170. data/app/assets/images/jquery-ui/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  171. data/app/assets/images/jquery-ui/ui-bg_glass_65_ffffff_1x400.png +0 -0
  172. data/app/assets/images/jquery-ui/ui-bg_glass_75_dadada_1x400.png +0 -0
  173. data/app/assets/images/jquery-ui/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  174. data/app/assets/images/jquery-ui/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  175. data/app/assets/images/jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  176. data/app/assets/images/jquery-ui/ui-icons_222222_256x240.png +0 -0
  177. data/app/assets/images/jquery-ui/ui-icons_2e83ff_256x240.png +0 -0
  178. data/app/assets/images/jquery-ui/ui-icons_454545_256x240.png +0 -0
  179. data/app/assets/images/jquery-ui/ui-icons_888888_256x240.png +0 -0
  180. data/app/assets/images/jquery-ui/ui-icons_cd0a0a_256x240.png +0 -0
  181. data/app/assets/javascripts/jquery.ui.all.js +0 -34
  182. data/app/assets/javascripts/jquery.ui.button.js +0 -398
  183. data/app/assets/javascripts/jquery.ui.core.js +0 -320
  184. data/app/assets/javascripts/jquery.ui.datepicker-af.js +0 -23
  185. data/app/assets/javascripts/jquery.ui.datepicker-ar-DZ.js +0 -23
  186. data/app/assets/javascripts/jquery.ui.datepicker-ar.js +0 -23
  187. data/app/assets/javascripts/jquery.ui.datepicker-az.js +0 -23
  188. data/app/assets/javascripts/jquery.ui.datepicker-be.js +0 -23
  189. data/app/assets/javascripts/jquery.ui.datepicker-bg.js +0 -24
  190. data/app/assets/javascripts/jquery.ui.datepicker-bs.js +0 -23
  191. data/app/assets/javascripts/jquery.ui.datepicker-ca.js +0 -23
  192. data/app/assets/javascripts/jquery.ui.datepicker-cs.js +0 -23
  193. data/app/assets/javascripts/jquery.ui.datepicker-cy-GB.js +0 -23
  194. data/app/assets/javascripts/jquery.ui.datepicker-da.js +0 -23
  195. data/app/assets/javascripts/jquery.ui.datepicker-de.js +0 -23
  196. data/app/assets/javascripts/jquery.ui.datepicker-el.js +0 -23
  197. data/app/assets/javascripts/jquery.ui.datepicker-en-AU.js +0 -23
  198. data/app/assets/javascripts/jquery.ui.datepicker-en-GB.js +0 -23
  199. data/app/assets/javascripts/jquery.ui.datepicker-en-NZ.js +0 -23
  200. data/app/assets/javascripts/jquery.ui.datepicker-eo.js +0 -23
  201. data/app/assets/javascripts/jquery.ui.datepicker-es.js +0 -23
  202. data/app/assets/javascripts/jquery.ui.datepicker-et.js +0 -23
  203. data/app/assets/javascripts/jquery.ui.datepicker-eu.js +0 -23
  204. data/app/assets/javascripts/jquery.ui.datepicker-fa.js +0 -59
  205. data/app/assets/javascripts/jquery.ui.datepicker-fi.js +0 -23
  206. data/app/assets/javascripts/jquery.ui.datepicker-fo.js +0 -23
  207. data/app/assets/javascripts/jquery.ui.datepicker-fr-CA.js +0 -23
  208. data/app/assets/javascripts/jquery.ui.datepicker-fr-CH.js +0 -23
  209. data/app/assets/javascripts/jquery.ui.datepicker-fr.js +0 -25
  210. data/app/assets/javascripts/jquery.ui.datepicker-gl.js +0 -23
  211. data/app/assets/javascripts/jquery.ui.datepicker-he.js +0 -23
  212. data/app/assets/javascripts/jquery.ui.datepicker-hi.js +0 -23
  213. data/app/assets/javascripts/jquery.ui.datepicker-hr.js +0 -23
  214. data/app/assets/javascripts/jquery.ui.datepicker-hu.js +0 -23
  215. data/app/assets/javascripts/jquery.ui.datepicker-hy.js +0 -23
  216. data/app/assets/javascripts/jquery.ui.datepicker-id.js +0 -23
  217. data/app/assets/javascripts/jquery.ui.datepicker-is.js +0 -23
  218. data/app/assets/javascripts/jquery.ui.datepicker-it.js +0 -23
  219. data/app/assets/javascripts/jquery.ui.datepicker-ja.js +0 -23
  220. data/app/assets/javascripts/jquery.ui.datepicker-ka.js +0 -21
  221. data/app/assets/javascripts/jquery.ui.datepicker-kk.js +0 -23
  222. data/app/assets/javascripts/jquery.ui.datepicker-km.js +0 -23
  223. data/app/assets/javascripts/jquery.ui.datepicker-ko.js +0 -23
  224. data/app/assets/javascripts/jquery.ui.datepicker-ky.js +0 -24
  225. data/app/assets/javascripts/jquery.ui.datepicker-lb.js +0 -23
  226. data/app/assets/javascripts/jquery.ui.datepicker-lt.js +0 -23
  227. data/app/assets/javascripts/jquery.ui.datepicker-lv.js +0 -23
  228. data/app/assets/javascripts/jquery.ui.datepicker-mk.js +0 -23
  229. data/app/assets/javascripts/jquery.ui.datepicker-ml.js +0 -23
  230. data/app/assets/javascripts/jquery.ui.datepicker-ms.js +0 -23
  231. data/app/assets/javascripts/jquery.ui.datepicker-nb.js +0 -22
  232. data/app/assets/javascripts/jquery.ui.datepicker-nl-BE.js +0 -23
  233. data/app/assets/javascripts/jquery.ui.datepicker-nl.js +0 -23
  234. data/app/assets/javascripts/jquery.ui.datepicker-nn.js +0 -22
  235. data/app/assets/javascripts/jquery.ui.datepicker-no.js +0 -23
  236. data/app/assets/javascripts/jquery.ui.datepicker-pl.js +0 -23
  237. data/app/assets/javascripts/jquery.ui.datepicker-pt-BR.js +0 -23
  238. data/app/assets/javascripts/jquery.ui.datepicker-pt.js +0 -22
  239. data/app/assets/javascripts/jquery.ui.datepicker-rm.js +0 -21
  240. data/app/assets/javascripts/jquery.ui.datepicker-ro.js +0 -26
  241. data/app/assets/javascripts/jquery.ui.datepicker-ru.js +0 -23
  242. data/app/assets/javascripts/jquery.ui.datepicker-sk.js +0 -23
  243. data/app/assets/javascripts/jquery.ui.datepicker-sl.js +0 -24
  244. data/app/assets/javascripts/jquery.ui.datepicker-sq.js +0 -23
  245. data/app/assets/javascripts/jquery.ui.datepicker-sr-SR.js +0 -23
  246. data/app/assets/javascripts/jquery.ui.datepicker-sr.js +0 -23
  247. data/app/assets/javascripts/jquery.ui.datepicker-sv.js +0 -23
  248. data/app/assets/javascripts/jquery.ui.datepicker-ta.js +0 -23
  249. data/app/assets/javascripts/jquery.ui.datepicker-th.js +0 -23
  250. data/app/assets/javascripts/jquery.ui.datepicker-tj.js +0 -23
  251. data/app/assets/javascripts/jquery.ui.datepicker-tr.js +0 -23
  252. data/app/assets/javascripts/jquery.ui.datepicker-uk.js +0 -24
  253. data/app/assets/javascripts/jquery.ui.datepicker-vi.js +0 -23
  254. data/app/assets/javascripts/jquery.ui.datepicker-zh-CN.js +0 -23
  255. data/app/assets/javascripts/jquery.ui.datepicker-zh-HK.js +0 -23
  256. data/app/assets/javascripts/jquery.ui.datepicker-zh-TW.js +0 -23
  257. data/app/assets/javascripts/jquery.ui.datepicker.js +0 -2040
  258. data/app/assets/javascripts/jquery.ui.dialog.js +0 -830
  259. data/app/assets/javascripts/jquery.ui.draggable.js +0 -962
  260. data/app/assets/javascripts/jquery.ui.droppable.js +0 -394
  261. data/app/assets/javascripts/jquery.ui.effect-blind.js +0 -84
  262. data/app/assets/javascripts/jquery.ui.effect-bounce.js +0 -115
  263. data/app/assets/javascripts/jquery.ui.effect-clip.js +0 -69
  264. data/app/assets/javascripts/jquery.ui.effect-drop.js +0 -67
  265. data/app/assets/javascripts/jquery.ui.effect-explode.js +0 -99
  266. data/app/assets/javascripts/jquery.ui.effect-fade.js +0 -32
  267. data/app/assets/javascripts/jquery.ui.effect-fold.js +0 -78
  268. data/app/assets/javascripts/jquery.ui.effect-highlight.js +0 -52
  269. data/app/assets/javascripts/jquery.ui.effect-pulsate.js +0 -65
  270. data/app/assets/javascripts/jquery.ui.effect-scale.js +0 -320
  271. data/app/assets/javascripts/jquery.ui.effect-shake.js +0 -76
  272. data/app/assets/javascripts/jquery.ui.effect-slide.js +0 -66
  273. data/app/assets/javascripts/jquery.ui.effect-transfer.js +0 -49
  274. data/app/assets/javascripts/jquery.ui.effect.all.js +0 -14
  275. data/app/assets/javascripts/jquery.ui.effect.js +0 -1289
  276. data/app/assets/javascripts/jquery.ui.mouse.js +0 -172
  277. data/app/assets/javascripts/jquery.ui.progressbar.js +0 -148
  278. data/app/assets/javascripts/jquery.ui.resizable.js +0 -982
  279. data/app/assets/javascripts/jquery.ui.selectable.js +0 -281
  280. data/app/assets/javascripts/jquery.ui.sortable.js +0 -1293
  281. data/app/assets/javascripts/jquery.ui.tooltip.js +0 -406
  282. data/app/assets/javascripts/jquery.ui.widget.js +0 -521
  283. data/app/assets/stylesheets/jquery.ui.accordion.css.erb +0 -42
  284. data/app/assets/stylesheets/jquery.ui.all.css.erb +0 -14
  285. data/app/assets/stylesheets/jquery.ui.autocomplete.css.erb +0 -21
  286. data/app/assets/stylesheets/jquery.ui.base.css.erb +0 -27
  287. data/app/assets/stylesheets/jquery.ui.button.css.erb +0 -118
  288. data/app/assets/stylesheets/jquery.ui.menu.css.erb +0 -83
  289. data/app/assets/stylesheets/jquery.ui.progressbar.css.erb +0 -37
  290. data/app/assets/stylesheets/jquery.ui.selectable.css.erb +0 -17
  291. data/app/assets/stylesheets/jquery.ui.tooltip.css.erb +0 -25
@@ -1,63 +1,115 @@
1
- //= require jquery.ui.core
2
- //= require jquery.ui.widget
1
+ //= require jquery-ui/version
2
+ //= require jquery-ui/keycode
3
+ //= require jquery-ui/unique-id
4
+ //= require jquery-ui/widget
3
5
 
4
6
  /*!
5
- * jQuery UI Accordion 1.10.4
6
- * http://jqueryui.com
7
+ * jQuery UI Accordion 1.14.1
8
+ * https://jqueryui.com
7
9
  *
8
- * Copyright 2014 jQuery Foundation and other contributors
10
+ * Copyright OpenJS Foundation and other contributors
9
11
  * Released under the MIT license.
10
- * http://jquery.org/license
11
- *
12
- * http://api.jqueryui.com/accordion/
13
- *
14
- * Depends:
15
- * jquery.ui.core.js
16
- * jquery.ui.widget.js
12
+ * https://jquery.org/license
17
13
  */
18
- (function( $, undefined ) {
19
14
 
20
- var uid = 0,
21
- hideProps = {},
22
- showProps = {};
23
-
24
- hideProps.height = hideProps.paddingTop = hideProps.paddingBottom =
25
- hideProps.borderTopWidth = hideProps.borderBottomWidth = "hide";
26
- showProps.height = showProps.paddingTop = showProps.paddingBottom =
27
- showProps.borderTopWidth = showProps.borderBottomWidth = "show";
15
+ //>>label: Accordion
16
+ //>>group: Widgets
17
+ /* eslint-disable max-len */
18
+ //>>description: Displays collapsible content panels for presenting information in a limited amount of space.
19
+ /* eslint-enable max-len */
20
+ //>>docs: https://api.jqueryui.com/accordion/
21
+ //>>demos: https://jqueryui.com/accordion/
22
+ //>>css.structure: ../../themes/base/core.css
23
+ //>>css.structure: ../../themes/base/accordion.css
24
+ //>>css.theme: ../../themes/base/theme.css
25
+
26
+ ( function( factory ) {
27
+ "use strict";
28
+
29
+ if ( typeof define === "function" && define.amd ) {
30
+
31
+ // AMD. Register as an anonymous module.
32
+ define( [
33
+ "jquery",
34
+ "../version",
35
+ "../keycode",
36
+ "../unique-id",
37
+ "../widget"
38
+ ], factory );
39
+ } else {
40
+
41
+ // Browser globals
42
+ factory( jQuery );
43
+ }
44
+ } )( function( $ ) {
45
+ "use strict";
28
46
 
29
- $.widget( "ui.accordion", {
30
- version: "1.10.4",
47
+ return $.widget( "ui.accordion", {
48
+ version: "1.14.1",
31
49
  options: {
32
50
  active: 0,
33
51
  animate: {},
52
+ classes: {
53
+ "ui-accordion-header": "ui-corner-top",
54
+ "ui-accordion-header-collapsed": "ui-corner-all",
55
+ "ui-accordion-content": "ui-corner-bottom"
56
+ },
34
57
  collapsible: false,
35
58
  event: "click",
36
- header: "> li > :first-child,> :not(li):even",
59
+ header: function( elem ) {
60
+ return elem
61
+ .find( "> li > :first-child" )
62
+ .add(
63
+ elem.find( "> :not(li)" )
64
+
65
+ // Support: jQuery <3.5 only
66
+ // We could use `.even()` but that's unavailable in older jQuery.
67
+ .filter( function( i ) {
68
+ return i % 2 === 0;
69
+ } )
70
+ );
71
+ },
37
72
  heightStyle: "auto",
38
73
  icons: {
39
74
  activeHeader: "ui-icon-triangle-1-s",
40
75
  header: "ui-icon-triangle-1-e"
41
76
  },
42
77
 
43
- // callbacks
78
+ // Callbacks
44
79
  activate: null,
45
80
  beforeActivate: null
46
81
  },
47
82
 
83
+ hideProps: {
84
+ borderTopWidth: "hide",
85
+ borderBottomWidth: "hide",
86
+ paddingTop: "hide",
87
+ paddingBottom: "hide",
88
+ height: "hide"
89
+ },
90
+
91
+ showProps: {
92
+ borderTopWidth: "show",
93
+ borderBottomWidth: "show",
94
+ paddingTop: "show",
95
+ paddingBottom: "show",
96
+ height: "show"
97
+ },
98
+
48
99
  _create: function() {
49
100
  var options = this.options;
101
+
50
102
  this.prevShow = this.prevHide = $();
51
- this.element.addClass( "ui-accordion ui-widget ui-helper-reset" )
52
- // ARIA
53
- .attr( "role", "tablist" );
103
+ this._addClass( "ui-accordion", "ui-widget ui-helper-reset" );
104
+ this.element.attr( "role", "tablist" );
54
105
 
55
- // don't allow collapsible: false and active: false / null
56
- if ( !options.collapsible && (options.active === false || options.active == null) ) {
106
+ // Don't allow collapsible: false and active: false / null
107
+ if ( !options.collapsible && ( options.active === false || options.active == null ) ) {
57
108
  options.active = 0;
58
109
  }
59
110
 
60
111
  this._processPanels();
112
+
61
113
  // handle negative values
62
114
  if ( options.active < 0 ) {
63
115
  options.active += this.headers.length;
@@ -68,66 +120,49 @@ $.widget( "ui.accordion", {
68
120
  _getCreateEventData: function() {
69
121
  return {
70
122
  header: this.active,
71
- panel: !this.active.length ? $() : this.active.next(),
72
- content: !this.active.length ? $() : this.active.next()
123
+ panel: !this.active.length ? $() : this.active.next()
73
124
  };
74
125
  },
75
126
 
76
127
  _createIcons: function() {
77
- var icons = this.options.icons;
128
+ var icon, children,
129
+ icons = this.options.icons;
130
+
78
131
  if ( icons ) {
79
- $( "<span>" )
80
- .addClass( "ui-accordion-header-icon ui-icon " + icons.header )
81
- .prependTo( this.headers );
82
- this.active.children( ".ui-accordion-header-icon" )
83
- .removeClass( icons.header )
84
- .addClass( icons.activeHeader );
85
- this.headers.addClass( "ui-accordion-icons" );
132
+ icon = $( "<span>" );
133
+ this._addClass( icon, "ui-accordion-header-icon", "ui-icon " + icons.header );
134
+ icon.prependTo( this.headers );
135
+ children = this.active.children( ".ui-accordion-header-icon" );
136
+ this._removeClass( children, icons.header )
137
+ ._addClass( children, null, icons.activeHeader )
138
+ ._addClass( this.headers, "ui-accordion-icons" );
86
139
  }
87
140
  },
88
141
 
89
142
  _destroyIcons: function() {
90
- this.headers
91
- .removeClass( "ui-accordion-icons" )
92
- .children( ".ui-accordion-header-icon" )
93
- .remove();
143
+ this._removeClass( this.headers, "ui-accordion-icons" );
144
+ this.headers.children( ".ui-accordion-header-icon" ).remove();
94
145
  },
95
146
 
96
147
  _destroy: function() {
97
148
  var contents;
98
149
 
99
- // clean up main element
100
- this.element
101
- .removeClass( "ui-accordion ui-widget ui-helper-reset" )
102
- .removeAttr( "role" );
150
+ // Clean up main element
151
+ this.element.removeAttr( "role" );
103
152
 
104
- // clean up headers
153
+ // Clean up headers
105
154
  this.headers
106
- .removeClass( "ui-accordion-header ui-accordion-header-active ui-helper-reset ui-state-default ui-corner-all ui-state-active ui-state-disabled ui-corner-top" )
107
- .removeAttr( "role" )
108
- .removeAttr( "aria-expanded" )
109
- .removeAttr( "aria-selected" )
110
- .removeAttr( "aria-controls" )
111
- .removeAttr( "tabIndex" )
112
- .each(function() {
113
- if ( /^ui-accordion/.test( this.id ) ) {
114
- this.removeAttribute( "id" );
115
- }
116
- });
155
+ .removeAttr( "role aria-expanded aria-selected aria-controls tabIndex" )
156
+ .removeUniqueId();
157
+
117
158
  this._destroyIcons();
118
159
 
119
- // clean up content panels
160
+ // Clean up content panels
120
161
  contents = this.headers.next()
121
162
  .css( "display", "" )
122
- .removeAttr( "role" )
123
- .removeAttr( "aria-hidden" )
124
- .removeAttr( "aria-labelledby" )
125
- .removeClass( "ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content ui-accordion-content-active ui-state-disabled" )
126
- .each(function() {
127
- if ( /^ui-accordion/.test( this.id ) ) {
128
- this.removeAttribute( "id" );
129
- }
130
- });
163
+ .removeAttr( "role aria-hidden aria-labelledby" )
164
+ .removeUniqueId();
165
+
131
166
  if ( this.options.heightStyle !== "content" ) {
132
167
  contents.css( "height", "" );
133
168
  }
@@ -135,6 +170,7 @@ $.widget( "ui.accordion", {
135
170
 
136
171
  _setOption: function( key, value ) {
137
172
  if ( key === "active" ) {
173
+
138
174
  // _activate() will handle invalid values and update this.options
139
175
  this._activate( value );
140
176
  return;
@@ -149,7 +185,7 @@ $.widget( "ui.accordion", {
149
185
 
150
186
  this._super( key, value );
151
187
 
152
- // setting collapsible: false while collapsed; open first panel
188
+ // Setting collapsible: false while collapsed; open first panel
153
189
  if ( key === "collapsible" && !value && this.options.active === false ) {
154
190
  this._activate( 0 );
155
191
  }
@@ -160,13 +196,13 @@ $.widget( "ui.accordion", {
160
196
  this._createIcons();
161
197
  }
162
198
  }
199
+ },
163
200
 
164
- // #5332 - opacity doesn't cascade to positioned elements in IE
165
- // so we need to add the disabled class to the headers and panels
166
- if ( key === "disabled" ) {
167
- this.headers.add( this.headers.next() )
168
- .toggleClass( "ui-state-disabled", !!value );
169
- }
201
+ _setOptionDisabled: function( value ) {
202
+ this._super( value );
203
+
204
+ this.element.attr( "aria-disabled", value );
205
+ this._toggleClass( null, "ui-state-disabled", !!value );
170
206
  },
171
207
 
172
208
  _keydown: function( event ) {
@@ -180,37 +216,37 @@ $.widget( "ui.accordion", {
180
216
  toFocus = false;
181
217
 
182
218
  switch ( event.keyCode ) {
183
- case keyCode.RIGHT:
184
- case keyCode.DOWN:
185
- toFocus = this.headers[ ( currentIndex + 1 ) % length ];
186
- break;
187
- case keyCode.LEFT:
188
- case keyCode.UP:
189
- toFocus = this.headers[ ( currentIndex - 1 + length ) % length ];
190
- break;
191
- case keyCode.SPACE:
192
- case keyCode.ENTER:
193
- this._eventHandler( event );
194
- break;
195
- case keyCode.HOME:
196
- toFocus = this.headers[ 0 ];
197
- break;
198
- case keyCode.END:
199
- toFocus = this.headers[ length - 1 ];
200
- break;
219
+ case keyCode.RIGHT:
220
+ case keyCode.DOWN:
221
+ toFocus = this.headers[ ( currentIndex + 1 ) % length ];
222
+ break;
223
+ case keyCode.LEFT:
224
+ case keyCode.UP:
225
+ toFocus = this.headers[ ( currentIndex - 1 + length ) % length ];
226
+ break;
227
+ case keyCode.SPACE:
228
+ case keyCode.ENTER:
229
+ this._eventHandler( event );
230
+ break;
231
+ case keyCode.HOME:
232
+ toFocus = this.headers[ 0 ];
233
+ break;
234
+ case keyCode.END:
235
+ toFocus = this.headers[ length - 1 ];
236
+ break;
201
237
  }
202
238
 
203
239
  if ( toFocus ) {
204
240
  $( event.target ).attr( "tabIndex", -1 );
205
241
  $( toFocus ).attr( "tabIndex", 0 );
206
- toFocus.focus();
242
+ $( toFocus ).trigger( "focus" );
207
243
  event.preventDefault();
208
244
  }
209
245
  },
210
246
 
211
- _panelKeyDown : function( event ) {
247
+ _panelKeyDown: function( event ) {
212
248
  if ( event.keyCode === $.ui.keyCode.UP && event.ctrlKey ) {
213
- $( event.currentTarget ).prev().focus();
249
+ $( event.currentTarget ).prev().trigger( "focus" );
214
250
  }
215
251
  },
216
252
 
@@ -218,25 +254,32 @@ $.widget( "ui.accordion", {
218
254
  var options = this.options;
219
255
  this._processPanels();
220
256
 
221
- // was collapsed or no panel
222
- if ( ( options.active === false && options.collapsible === true ) || !this.headers.length ) {
257
+ // Was collapsed or no panel
258
+ if ( ( options.active === false && options.collapsible === true ) ||
259
+ !this.headers.length ) {
223
260
  options.active = false;
224
261
  this.active = $();
262
+
225
263
  // active false only when collapsible is true
226
264
  } else if ( options.active === false ) {
227
265
  this._activate( 0 );
266
+
228
267
  // was active, but active panel is gone
229
268
  } else if ( this.active.length && !$.contains( this.element[ 0 ], this.active[ 0 ] ) ) {
269
+
230
270
  // all remaining panel are disabled
231
- if ( this.headers.length === this.headers.find(".ui-state-disabled").length ) {
271
+ if ( this.headers.length === this.headers.find( ".ui-state-disabled" ).length ) {
232
272
  options.active = false;
233
273
  this.active = $();
274
+
234
275
  // activate previous panel
235
276
  } else {
236
277
  this._activate( Math.max( 0, options.active - 1 ) );
237
278
  }
279
+
238
280
  // was active, active panel still exists
239
281
  } else {
282
+
240
283
  // make sure active index is correct
241
284
  options.active = this.headers.index( this.active );
242
285
  }
@@ -247,77 +290,78 @@ $.widget( "ui.accordion", {
247
290
  },
248
291
 
249
292
  _processPanels: function() {
250
- this.headers = this.element.find( this.options.header )
251
- .addClass( "ui-accordion-header ui-helper-reset ui-state-default ui-corner-all" );
293
+ var prevHeaders = this.headers,
294
+ prevPanels = this.panels;
295
+
296
+ if ( typeof this.options.header === "function" ) {
297
+ this.headers = this.options.header( this.element );
298
+ } else {
299
+ this.headers = this.element.find( this.options.header );
300
+ }
301
+ this._addClass( this.headers, "ui-accordion-header ui-accordion-header-collapsed",
302
+ "ui-state-default" );
252
303
 
253
- this.headers.next()
254
- .addClass( "ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom" )
255
- .filter(":not(.ui-accordion-content-active)")
256
- .hide();
304
+ this.panels = this.headers.next().filter( ":not(.ui-accordion-content-active)" ).hide();
305
+ this._addClass( this.panels, "ui-accordion-content", "ui-helper-reset ui-widget-content" );
306
+
307
+ // Avoid memory leaks (#10056)
308
+ if ( prevPanels ) {
309
+ this._off( prevHeaders.not( this.headers ) );
310
+ this._off( prevPanels.not( this.panels ) );
311
+ }
257
312
  },
258
313
 
259
314
  _refresh: function() {
260
315
  var maxHeight,
261
316
  options = this.options,
262
317
  heightStyle = options.heightStyle,
263
- parent = this.element.parent(),
264
- accordionId = this.accordionId = "ui-accordion-" +
265
- (this.element.attr( "id" ) || ++uid);
318
+ parent = this.element.parent();
266
319
 
267
- this.active = this._findActive( options.active )
268
- .addClass( "ui-accordion-header-active ui-state-active ui-corner-top" )
269
- .removeClass( "ui-corner-all" );
270
- this.active.next()
271
- .addClass( "ui-accordion-content-active" )
272
- .show();
320
+ this.active = this._findActive( options.active );
321
+ this._addClass( this.active, "ui-accordion-header-active", "ui-state-active" )
322
+ ._removeClass( this.active, "ui-accordion-header-collapsed" );
323
+ this._addClass( this.active.next(), "ui-accordion-content-active" );
324
+ this.active.next().show();
273
325
 
274
326
  this.headers
275
327
  .attr( "role", "tab" )
276
- .each(function( i ) {
328
+ .each( function() {
277
329
  var header = $( this ),
278
- headerId = header.attr( "id" ),
330
+ headerId = header.uniqueId().attr( "id" ),
279
331
  panel = header.next(),
280
- panelId = panel.attr( "id" );
281
- if ( !headerId ) {
282
- headerId = accordionId + "-header-" + i;
283
- header.attr( "id", headerId );
284
- }
285
- if ( !panelId ) {
286
- panelId = accordionId + "-panel-" + i;
287
- panel.attr( "id", panelId );
288
- }
332
+ panelId = panel.uniqueId().attr( "id" );
289
333
  header.attr( "aria-controls", panelId );
290
334
  panel.attr( "aria-labelledby", headerId );
291
- })
335
+ } )
292
336
  .next()
293
337
  .attr( "role", "tabpanel" );
294
338
 
295
339
  this.headers
296
340
  .not( this.active )
297
- .attr({
298
- "aria-selected": "false",
299
- "aria-expanded": "false",
300
- tabIndex: -1
301
- })
302
- .next()
303
- .attr({
304
- "aria-hidden": "true"
305
- })
306
- .hide();
341
+ .attr( {
342
+ "aria-selected": "false",
343
+ "aria-expanded": "false",
344
+ tabIndex: -1
345
+ } )
346
+ .next()
347
+ .attr( {
348
+ "aria-hidden": "true"
349
+ } )
350
+ .hide();
307
351
 
308
- // make sure at least one header is in the tab order
352
+ // Make sure at least one header is in the tab order
309
353
  if ( !this.active.length ) {
310
354
  this.headers.eq( 0 ).attr( "tabIndex", 0 );
311
355
  } else {
312
- this.active.attr({
356
+ this.active.attr( {
313
357
  "aria-selected": "true",
314
358
  "aria-expanded": "true",
315
359
  tabIndex: 0
316
- })
317
- .next()
318
- .attr({
319
- "aria-hidden": "false"
320
- });
360
+ } )
361
+ .next()
362
+ .attr( {
363
+ "aria-hidden": "false"
364
+ } );
321
365
  }
322
366
 
323
367
  this._createIcons();
@@ -326,7 +370,7 @@ $.widget( "ui.accordion", {
326
370
 
327
371
  if ( heightStyle === "fill" ) {
328
372
  maxHeight = parent.height();
329
- this.element.siblings( ":visible" ).each(function() {
373
+ this.element.siblings( ":visible" ).each( function() {
330
374
  var elem = $( this ),
331
375
  position = elem.css( "position" );
332
376
 
@@ -334,24 +378,31 @@ $.widget( "ui.accordion", {
334
378
  return;
335
379
  }
336
380
  maxHeight -= elem.outerHeight( true );
337
- });
381
+ } );
338
382
 
339
- this.headers.each(function() {
383
+ this.headers.each( function() {
340
384
  maxHeight -= $( this ).outerHeight( true );
341
- });
385
+ } );
342
386
 
343
387
  this.headers.next()
344
- .each(function() {
388
+ .each( function() {
345
389
  $( this ).height( Math.max( 0, maxHeight -
346
390
  $( this ).innerHeight() + $( this ).height() ) );
347
- })
391
+ } )
348
392
  .css( "overflow", "auto" );
349
393
  } else if ( heightStyle === "auto" ) {
350
394
  maxHeight = 0;
351
395
  this.headers.next()
352
- .each(function() {
396
+ .each( function() {
397
+ var isVisible = $( this ).is( ":visible" );
398
+ if ( !isVisible ) {
399
+ $( this ).show();
400
+ }
353
401
  maxHeight = Math.max( maxHeight, $( this ).css( "height", "" ).height() );
354
- })
402
+ if ( !isVisible ) {
403
+ $( this ).hide();
404
+ }
405
+ } )
355
406
  .height( maxHeight );
356
407
  }
357
408
  },
@@ -359,19 +410,19 @@ $.widget( "ui.accordion", {
359
410
  _activate: function( index ) {
360
411
  var active = this._findActive( index )[ 0 ];
361
412
 
362
- // trying to activate the already active panel
413
+ // Trying to activate the already active panel
363
414
  if ( active === this.active[ 0 ] ) {
364
415
  return;
365
416
  }
366
417
 
367
- // trying to collapse, simulate a click on the currently active header
418
+ // Trying to collapse, simulate a click on the currently active header
368
419
  active = active || this.active[ 0 ];
369
420
 
370
- this._eventHandler({
421
+ this._eventHandler( {
371
422
  target: active,
372
423
  currentTarget: active,
373
424
  preventDefault: $.noop
374
- });
425
+ } );
375
426
  },
376
427
 
377
428
  _findActive: function( selector ) {
@@ -383,20 +434,21 @@ $.widget( "ui.accordion", {
383
434
  keydown: "_keydown"
384
435
  };
385
436
  if ( event ) {
386
- $.each( event.split(" "), function( index, eventName ) {
437
+ $.each( event.split( " " ), function( index, eventName ) {
387
438
  events[ eventName ] = "_eventHandler";
388
- });
439
+ } );
389
440
  }
390
441
 
391
442
  this._off( this.headers.add( this.headers.next() ) );
392
443
  this._on( this.headers, events );
393
- this._on( this.headers.next(), { keydown: "_panelKeyDown" });
444
+ this._on( this.headers.next(), { keydown: "_panelKeyDown" } );
394
445
  this._hoverable( this.headers );
395
446
  this._focusable( this.headers );
396
447
  },
397
448
 
398
449
  _eventHandler: function( event ) {
399
- var options = this.options,
450
+ var activeChildren, clickedChildren,
451
+ options = this.options,
400
452
  active = this.active,
401
453
  clicked = $( event.currentTarget ),
402
454
  clickedIsActive = clicked[ 0 ] === active[ 0 ],
@@ -413,8 +465,10 @@ $.widget( "ui.accordion", {
413
465
  event.preventDefault();
414
466
 
415
467
  if (
468
+
416
469
  // click on active header, but not collapsible
417
470
  ( clickedIsActive && !options.collapsible ) ||
471
+
418
472
  // allow canceling activation
419
473
  ( this._trigger( "beforeActivate", event, eventData ) === false ) ) {
420
474
  return;
@@ -422,33 +476,30 @@ $.widget( "ui.accordion", {
422
476
 
423
477
  options.active = collapsing ? false : this.headers.index( clicked );
424
478
 
425
- // when the call to ._toggle() comes after the class changes
479
+ // When the call to ._toggle() comes after the class changes
426
480
  // it causes a very odd bug in IE 8 (see #6720)
427
481
  this.active = clickedIsActive ? $() : clicked;
428
482
  this._toggle( eventData );
429
483
 
430
- // switch classes
484
+ // Switch classes
431
485
  // corner classes on the previously active header stay after the animation
432
- active.removeClass( "ui-accordion-header-active ui-state-active" );
486
+ this._removeClass( active, "ui-accordion-header-active", "ui-state-active" );
433
487
  if ( options.icons ) {
434
- active.children( ".ui-accordion-header-icon" )
435
- .removeClass( options.icons.activeHeader )
436
- .addClass( options.icons.header );
488
+ activeChildren = active.children( ".ui-accordion-header-icon" );
489
+ this._removeClass( activeChildren, null, options.icons.activeHeader )
490
+ ._addClass( activeChildren, null, options.icons.header );
437
491
  }
438
492
 
439
493
  if ( !clickedIsActive ) {
440
- clicked
441
- .removeClass( "ui-corner-all" )
442
- .addClass( "ui-accordion-header-active ui-state-active ui-corner-top" );
494
+ this._removeClass( clicked, "ui-accordion-header-collapsed" )
495
+ ._addClass( clicked, "ui-accordion-header-active", "ui-state-active" );
443
496
  if ( options.icons ) {
444
- clicked.children( ".ui-accordion-header-icon" )
445
- .removeClass( options.icons.header )
446
- .addClass( options.icons.activeHeader );
497
+ clickedChildren = clicked.children( ".ui-accordion-header-icon" );
498
+ this._removeClass( clickedChildren, null, options.icons.header )
499
+ ._addClass( clickedChildren, null, options.icons.activeHeader );
447
500
  }
448
501
 
449
- clicked
450
- .next()
451
- .addClass( "ui-accordion-content-active" );
502
+ this._addClass( clicked.next(), "ui-accordion-content-active" );
452
503
  }
453
504
  },
454
505
 
@@ -456,7 +507,7 @@ $.widget( "ui.accordion", {
456
507
  var toShow = data.newPanel,
457
508
  toHide = this.prevShow.length ? this.prevShow : data.oldPanel;
458
509
 
459
- // handle activating a panel during the animation for another activation
510
+ // Handle activating a panel during the animation for another activation
460
511
  this.prevShow.add( this.prevHide ).stop( true, true );
461
512
  this.prevShow = toShow;
462
513
  this.prevHide = toHide;
@@ -469,39 +520,44 @@ $.widget( "ui.accordion", {
469
520
  this._toggleComplete( data );
470
521
  }
471
522
 
472
- toHide.attr({
523
+ toHide.attr( {
473
524
  "aria-hidden": "true"
474
- });
475
- toHide.prev().attr( "aria-selected", "false" );
525
+ } );
526
+ toHide.prev().attr( {
527
+ "aria-selected": "false",
528
+ "aria-expanded": "false"
529
+ } );
530
+
476
531
  // if we're switching panels, remove the old header from the tab order
477
532
  // if we're opening from collapsed state, remove the previous header from the tab order
478
533
  // if we're collapsing, then keep the collapsing header in the tab order
479
534
  if ( toShow.length && toHide.length ) {
480
- toHide.prev().attr({
535
+ toHide.prev().attr( {
481
536
  "tabIndex": -1,
482
537
  "aria-expanded": "false"
483
- });
538
+ } );
484
539
  } else if ( toShow.length ) {
485
- this.headers.filter(function() {
486
- return $( this ).attr( "tabIndex" ) === 0;
487
- })
488
- .attr( "tabIndex", -1 );
540
+ this.headers.filter( function() {
541
+ return parseInt( $( this ).attr( "tabIndex" ), 10 ) === 0;
542
+ } )
543
+ .attr( "tabIndex", -1 );
489
544
  }
490
545
 
491
546
  toShow
492
547
  .attr( "aria-hidden", "false" )
493
548
  .prev()
494
- .attr({
549
+ .attr( {
495
550
  "aria-selected": "true",
496
- tabIndex: 0,
497
- "aria-expanded": "true"
498
- });
551
+ "aria-expanded": "true",
552
+ tabIndex: 0
553
+ } );
499
554
  },
500
555
 
501
556
  _animate: function( toShow, toHide, data ) {
502
557
  var total, easing, duration,
503
558
  that = this,
504
559
  adjust = 0,
560
+ boxSizing = toShow.css( "box-sizing" ),
505
561
  down = toShow.length &&
506
562
  ( !toHide.length || ( toShow.index() < toHide.index() ) ),
507
563
  animate = this.options.animate || {},
@@ -516,58 +572,56 @@ $.widget( "ui.accordion", {
516
572
  if ( typeof options === "string" ) {
517
573
  easing = options;
518
574
  }
575
+
519
576
  // fall back from options to animation in case of partial down settings
520
577
  easing = easing || options.easing || animate.easing;
521
578
  duration = duration || options.duration || animate.duration;
522
579
 
523
580
  if ( !toHide.length ) {
524
- return toShow.animate( showProps, duration, easing, complete );
581
+ return toShow.animate( this.showProps, duration, easing, complete );
525
582
  }
526
583
  if ( !toShow.length ) {
527
- return toHide.animate( hideProps, duration, easing, complete );
584
+ return toHide.animate( this.hideProps, duration, easing, complete );
528
585
  }
529
586
 
530
587
  total = toShow.show().outerHeight();
531
- toHide.animate( hideProps, {
588
+ toHide.animate( this.hideProps, {
532
589
  duration: duration,
533
590
  easing: easing,
534
591
  step: function( now, fx ) {
535
592
  fx.now = Math.round( now );
536
593
  }
537
- });
594
+ } );
538
595
  toShow
539
596
  .hide()
540
- .animate( showProps, {
597
+ .animate( this.showProps, {
541
598
  duration: duration,
542
599
  easing: easing,
543
600
  complete: complete,
544
601
  step: function( now, fx ) {
545
602
  fx.now = Math.round( now );
546
603
  if ( fx.prop !== "height" ) {
547
- adjust += fx.now;
604
+ if ( boxSizing === "content-box" ) {
605
+ adjust += fx.now;
606
+ }
548
607
  } else if ( that.options.heightStyle !== "content" ) {
549
608
  fx.now = Math.round( total - toHide.outerHeight() - adjust );
550
609
  adjust = 0;
551
610
  }
552
611
  }
553
- });
612
+ } );
554
613
  },
555
614
 
556
615
  _toggleComplete: function( data ) {
557
- var toHide = data.oldPanel;
616
+ var toHide = data.oldPanel,
617
+ prev = toHide.prev();
558
618
 
559
- toHide
560
- .removeClass( "ui-accordion-content-active" )
561
- .prev()
562
- .removeClass( "ui-corner-top" )
563
- .addClass( "ui-corner-all" );
619
+ this._removeClass( toHide, "ui-accordion-content-active" );
620
+ this._removeClass( prev, "ui-accordion-header-active" )
621
+ ._addClass( prev, "ui-accordion-header-collapsed" );
564
622
 
565
- // Work around for rendering bug in IE (#5421)
566
- if ( toHide.length ) {
567
- toHide.parent()[0].className = toHide.parent()[0].className;
568
- }
569
623
  this._trigger( "activate", null, data );
570
624
  }
571
- });
625
+ } );
572
626
 
573
- })( jQuery );
627
+ } );