jquery-ui-rails 4.0.0 → 4.2.1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of jquery-ui-rails might be problematic. Click here for more details.

Files changed (149) hide show
  1. data/.travis.yml +0 -1
  2. data/Gemfile +1 -1
  3. data/History.md +44 -0
  4. data/README.md +16 -4
  5. data/Rakefile +39 -11
  6. data/VERSIONS.md +31 -0
  7. data/app/assets/images/jquery-ui/animated-overlay.gif +0 -0
  8. data/{vendor → app}/assets/images/jquery-ui/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  9. data/{vendor → app}/assets/images/jquery-ui/ui-bg_flat_75_ffffff_40x100.png +0 -0
  10. data/{vendor → app}/assets/images/jquery-ui/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  11. data/{vendor → app}/assets/images/jquery-ui/ui-bg_glass_65_ffffff_1x400.png +0 -0
  12. data/{vendor → app}/assets/images/jquery-ui/ui-bg_glass_75_dadada_1x400.png +0 -0
  13. data/{vendor → app}/assets/images/jquery-ui/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  14. data/{vendor → app}/assets/images/jquery-ui/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  15. data/{vendor → app}/assets/images/jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  16. data/{vendor → app}/assets/images/jquery-ui/ui-icons_222222_256x240.png +0 -0
  17. data/{vendor → app}/assets/images/jquery-ui/ui-icons_2e83ff_256x240.png +0 -0
  18. data/{vendor → app}/assets/images/jquery-ui/ui-icons_454545_256x240.png +0 -0
  19. data/{vendor → app}/assets/images/jquery-ui/ui-icons_888888_256x240.png +0 -0
  20. data/{vendor → app}/assets/images/jquery-ui/ui-icons_cd0a0a_256x240.png +0 -0
  21. data/{vendor → app}/assets/javascripts/jquery.ui.accordion.js +17 -18
  22. data/{vendor → app}/assets/javascripts/jquery.ui.all.js +0 -0
  23. data/{vendor → app}/assets/javascripts/jquery.ui.autocomplete.js +36 -44
  24. data/{vendor → app}/assets/javascripts/jquery.ui.button.js +23 -47
  25. data/{vendor → app}/assets/javascripts/jquery.ui.core.js +20 -24
  26. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-af.js +0 -0
  27. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-ar-DZ.js +0 -0
  28. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-ar.js +0 -0
  29. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-az.js +0 -0
  30. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-be.js +0 -0
  31. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-bg.js +0 -0
  32. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-bs.js +0 -0
  33. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-ca.js +0 -0
  34. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-cs.js +0 -0
  35. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-cy-GB.js +0 -0
  36. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-da.js +0 -0
  37. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-de.js +3 -3
  38. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-el.js +0 -0
  39. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-en-AU.js +0 -0
  40. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-en-GB.js +0 -0
  41. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-en-NZ.js +0 -0
  42. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-eo.js +0 -0
  43. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-es.js +7 -7
  44. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-et.js +0 -0
  45. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-eu.js +0 -0
  46. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-fa.js +0 -0
  47. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-fi.js +1 -1
  48. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-fo.js +0 -0
  49. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-fr-CA.js +0 -0
  50. data/app/assets/javascripts/jquery.ui.datepicker-fr-CH.js +23 -0
  51. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-fr.js +6 -6
  52. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-gl.js +0 -0
  53. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-he.js +0 -0
  54. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-hi.js +0 -0
  55. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-hr.js +0 -0
  56. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-hu.js +0 -0
  57. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-hy.js +0 -0
  58. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-id.js +0 -0
  59. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-is.js +1 -1
  60. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-it.js +0 -0
  61. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-ja.js +0 -0
  62. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-ka.js +0 -0
  63. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-kk.js +0 -0
  64. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-km.js +0 -0
  65. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-ko.js +0 -0
  66. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-ky.js +0 -0
  67. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-lb.js +0 -0
  68. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-lt.js +2 -2
  69. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-lv.js +4 -4
  70. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-mk.js +0 -0
  71. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-ml.js +0 -0
  72. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-ms.js +0 -0
  73. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-nb.js +0 -0
  74. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-nl-BE.js +0 -0
  75. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-nl.js +0 -0
  76. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-nn.js +0 -0
  77. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-no.js +0 -0
  78. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-pl.js +0 -0
  79. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-pt-BR.js +0 -0
  80. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-pt.js +1 -1
  81. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-rm.js +0 -0
  82. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-ro.js +0 -0
  83. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-ru.js +0 -0
  84. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-sk.js +3 -3
  85. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-sl.js +0 -0
  86. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-sq.js +0 -0
  87. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-sr-SR.js +1 -1
  88. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-sr.js +1 -1
  89. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-sv.js +0 -0
  90. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-ta.js +0 -0
  91. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-th.js +0 -0
  92. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-tj.js +0 -0
  93. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-tr.js +0 -0
  94. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-uk.js +0 -0
  95. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-vi.js +0 -0
  96. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-zh-CN.js +0 -0
  97. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-zh-HK.js +0 -0
  98. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker-zh-TW.js +0 -0
  99. data/{vendor → app}/assets/javascripts/jquery.ui.datepicker.js +28 -34
  100. data/{vendor → app}/assets/javascripts/jquery.ui.dialog.js +84 -28
  101. data/{vendor → app}/assets/javascripts/jquery.ui.draggable.js +96 -84
  102. data/{vendor → app}/assets/javascripts/jquery.ui.droppable.js +33 -15
  103. data/{vendor → app}/assets/javascripts/jquery.ui.effect-blind.js +2 -2
  104. data/{vendor → app}/assets/javascripts/jquery.ui.effect-bounce.js +2 -2
  105. data/{vendor → app}/assets/javascripts/jquery.ui.effect-clip.js +2 -2
  106. data/{vendor → app}/assets/javascripts/jquery.ui.effect-drop.js +2 -2
  107. data/{vendor → app}/assets/javascripts/jquery.ui.effect-explode.js +2 -2
  108. data/{vendor → app}/assets/javascripts/jquery.ui.effect-fade.js +2 -2
  109. data/{vendor → app}/assets/javascripts/jquery.ui.effect-fold.js +2 -2
  110. data/{vendor → app}/assets/javascripts/jquery.ui.effect-highlight.js +2 -2
  111. data/{vendor → app}/assets/javascripts/jquery.ui.effect-pulsate.js +2 -2
  112. data/{vendor → app}/assets/javascripts/jquery.ui.effect-scale.js +2 -2
  113. data/{vendor → app}/assets/javascripts/jquery.ui.effect-shake.js +2 -2
  114. data/{vendor → app}/assets/javascripts/jquery.ui.effect-slide.js +2 -2
  115. data/{vendor → app}/assets/javascripts/jquery.ui.effect-transfer.js +2 -2
  116. data/{vendor → app}/assets/javascripts/jquery.ui.effect.all.js +0 -0
  117. data/{vendor → app}/assets/javascripts/jquery.ui.effect.js +94 -73
  118. data/{vendor → app}/assets/javascripts/jquery.ui.menu.js +15 -9
  119. data/{vendor → app}/assets/javascripts/jquery.ui.mouse.js +3 -3
  120. data/{vendor → app}/assets/javascripts/jquery.ui.position.js +16 -12
  121. data/{vendor → app}/assets/javascripts/jquery.ui.progressbar.js +3 -3
  122. data/{vendor → app}/assets/javascripts/jquery.ui.resizable.js +20 -10
  123. data/{vendor → app}/assets/javascripts/jquery.ui.selectable.js +3 -3
  124. data/{vendor → app}/assets/javascripts/jquery.ui.slider.js +97 -70
  125. data/{vendor → app}/assets/javascripts/jquery.ui.sortable.js +81 -42
  126. data/{vendor → app}/assets/javascripts/jquery.ui.spinner.js +10 -5
  127. data/{vendor → app}/assets/javascripts/jquery.ui.tabs.js +8 -5
  128. data/{vendor → app}/assets/javascripts/jquery.ui.tooltip.js +3 -3
  129. data/{vendor → app}/assets/javascripts/jquery.ui.widget.js +5 -5
  130. data/{vendor → app}/assets/stylesheets/jquery.ui.accordion.css.erb +3 -3
  131. data/{vendor → app}/assets/stylesheets/jquery.ui.all.css.erb +3 -3
  132. data/{vendor → app}/assets/stylesheets/jquery.ui.autocomplete.css.erb +3 -3
  133. data/{vendor → app}/assets/stylesheets/jquery.ui.base.css.erb +3 -3
  134. data/{vendor → app}/assets/stylesheets/jquery.ui.button.css.erb +3 -3
  135. data/{vendor → app}/assets/stylesheets/jquery.ui.core.css.erb +4 -3
  136. data/{vendor → app}/assets/stylesheets/jquery.ui.datepicker.css.erb +3 -6
  137. data/{vendor → app}/assets/stylesheets/jquery.ui.dialog.css.erb +5 -4
  138. data/{vendor → app}/assets/stylesheets/jquery.ui.menu.css.erb +5 -3
  139. data/{vendor → app}/assets/stylesheets/jquery.ui.progressbar.css.erb +9 -4
  140. data/{vendor → app}/assets/stylesheets/jquery.ui.resizable.css.erb +2 -4
  141. data/{vendor → app}/assets/stylesheets/jquery.ui.selectable.css.erb +2 -4
  142. data/{vendor → app}/assets/stylesheets/jquery.ui.slider.css.erb +3 -3
  143. data/{vendor → app}/assets/stylesheets/jquery.ui.spinner.css.erb +5 -5
  144. data/{vendor → app}/assets/stylesheets/jquery.ui.tabs.css.erb +9 -10
  145. data/{vendor → app}/assets/stylesheets/jquery.ui.theme.css.erb +26 -5
  146. data/{vendor → app}/assets/stylesheets/jquery.ui.tooltip.css.erb +4 -2
  147. data/lib/jquery/ui/rails/version.rb +2 -1
  148. metadata +148 -161
  149. data/vendor/assets/javascripts/jquery.ui.datepicker-fr-CH.js +0 -23
data/.travis.yml CHANGED
@@ -1,3 +1,2 @@
1
1
  rvm:
2
- - 1.9.2
3
2
  - 1.9.3
data/Gemfile CHANGED
@@ -1,3 +1,3 @@
1
- source :rubygems
1
+ source 'https://rubygems.org'
2
2
 
3
3
  gemspec
data/History.md CHANGED
@@ -1,5 +1,49 @@
1
1
  # master
2
2
 
3
+ # 4.2.1
4
+
5
+ * Update to jQuery UI 1.10.4
6
+
7
+ # 4.2.0
8
+
9
+ * Bump Rails dependency to `>=3.2.16`
10
+ * Re-release 4.1.1 as 4.2.0
11
+
12
+ # 4.1.2
13
+
14
+ * Re-release 4.1.0 as 4.1.2; last version compatible with Rails 3.1
15
+
16
+ # 4.1.1
17
+
18
+ * Declare image dependencies using `//= depend_on_asset`, to stop the
19
+ Sprockets cache from going stale.
20
+
21
+ # 4.1.0
22
+
23
+ * Add Jquery::Ui::Rails::JQUERY_UI_VERSION constant
24
+
25
+ # 4.0.5
26
+
27
+ * Remove unused dependency on the `jquery-rails` gem. If you get an error
28
+ "couldn't find file 'jquery'", you may need to explicitly add `gem
29
+ 'jquery-rails'` to your Gemfile.
30
+
31
+ # 4.0.4
32
+
33
+ * Include license in gemspec
34
+
35
+ # 4.0.3
36
+
37
+ * Upgrade to jQuery UI 1.10.3
38
+
39
+ # 4.0.2
40
+
41
+ * Rails 4 compatibility
42
+
43
+ # 4.0.1
44
+
45
+ * Add missing animated-overlay.gif asset and fix image path
46
+
3
47
  # 4.0.0
4
48
 
5
49
  * Upgrade to jQuery UI 1.10.0
data/README.md CHANGED
@@ -1,13 +1,25 @@
1
1
  # jquery-ui-rails
2
2
 
3
- [![Build Status](https://secure.travis-ci.org/joliss/jquery-ui-rails.png?branch=master)](http://travis-ci.org/joliss/jquery-ui-rails) [![Dependency Status](https://gemnasium.com/joliss/jquery-ui-rails.png)](https://gemnasium.com/joliss/jquery-ui-rails)
3
+ [![Build Status](https://secure.travis-ci.org/joliss/jquery-ui-rails.png?branch=master)](http://travis-ci.org/joliss/jquery-ui-rails)
4
+ [![Dependency Status](https://gemnasium.com/joliss/jquery-ui-rails.png)](https://gemnasium.com/joliss/jquery-ui-rails)
4
5
 
5
- This gem packages the jQuery UI 1.10.0 assets (JavaScripts, stylesheets, and
6
- images) for the Rails 3.1+ [asset
6
+ This gem packages the jQuery UI assets (JavaScripts, stylesheets, and
7
+ images) for the Rails [asset
7
8
  pipeline](http://guides.rubyonrails.org/asset_pipeline.html), so you never have
8
9
  to download a custom package through the [web
9
10
  interface](http://jqueryui.com/download) again.
10
11
 
12
+ See [VERSIONS.md](VERSIONS.md) to see which versions of jquery-ui-rails bundle
13
+ which versions of jQuery UI.
14
+
15
+ Also check out the
16
+ [jquery-ui-sass-rails](https://github.com/jhilden/jquery-ui-sass-rails) gem,
17
+ which allows you to override theme variables with Sass.
18
+
19
+ *Note: As of version 4.0.5, jquery-ui-rails has dropped its unused dependency
20
+ on the `jquery-rails` gem. If you get an error "couldn't find file 'jquery'",
21
+ you may need to explicitly add `gem 'jquery-rails'` to your Gemfile.*
22
+
11
23
  ## Usage
12
24
 
13
25
  In your Gemfile, add:
@@ -114,7 +126,7 @@ application.css as well.
114
126
 
115
127
  Datepicker has optional i18n modules for non-US locales, named
116
128
  `jquery.ui.datepicker-xx[-YY]`
117
- ([list](https://github.com/joliss/jquery-ui-rails/tree/master/vendor/assets/javascripts)),
129
+ ([list](https://github.com/joliss/jquery-ui-rails/tree/master/app/assets/javascripts)),
118
130
  for example:
119
131
 
120
132
  ```javascript
data/Rakefile CHANGED
@@ -1,3 +1,4 @@
1
+ Encoding.default_external = "UTF-8" if defined?(Encoding)
1
2
  require 'json'
2
3
  require 'bundler/gem_tasks'
3
4
 
@@ -87,16 +88,25 @@ def protect_copyright_notice(source_code)
87
88
  source_code.gsub!(/\A\s*\/\*\r?\n/, "/*!\n")
88
89
  end
89
90
 
90
- desc "Remove the vendor directory"
91
+ def build_image_dependencies(source_code)
92
+ image_dependencies = Set.new source_code.scan(/url\("?images\/([-_.a-zA-Z0-9]+)"?\)/).map(&:first)
93
+ code = image_dependencies.inject("") do |acc, img|
94
+ acc += " *= depend_on_asset \"jquery-ui/#{img}\"\n"
95
+ end
96
+ end
97
+
98
+ desc "Remove the app directory"
91
99
  task :clean do
92
- rm_rf 'vendor'
100
+ rm_rf 'app'
93
101
  end
94
102
 
95
103
  desc "Generate the JavaScript assets"
96
104
  task :javascripts => :submodule do
97
- target_dir = "vendor/assets/javascripts"
98
- mkdir_p target_dir
99
105
  Rake.rake_output_message 'Generating javascripts'
106
+
107
+ target_dir = "app/assets/javascripts"
108
+ mkdir_p target_dir
109
+
100
110
  Dir.glob("jquery-ui/ui/*.js").each do |path|
101
111
  basename = File.basename(path)
102
112
  dep_modules = get_js_dependencies(basename).map(&method(:remove_js_extension))
@@ -140,10 +150,11 @@ end
140
150
 
141
151
  desc "Generate the CSS assets"
142
152
  task :stylesheets => :submodule do
143
- target_dir = "vendor/assets/stylesheets"
144
- mkdir_p target_dir
145
153
  Rake.rake_output_message 'Generating stylesheets'
146
154
 
155
+ target_dir = "app/assets/stylesheets"
156
+ mkdir_p target_dir
157
+
147
158
  css_dir = "jquery-ui/themes/base"
148
159
  Dir.glob("#{css_dir}/*.css").each do |path|
149
160
  basename = File.basename(path)
@@ -178,8 +189,9 @@ task :stylesheets => :submodule do
178
189
  }
179
190
  # Be cute: collapse multiple require comment blocks into one
180
191
  source_code.gsub!(/^( \*= require .*)\n \*\/(\n+)\/\*\n(?= \*= require )/, '\1\2')
192
+ source_code.gsub!(/\A(\/\*!.+?\*\/\s)/m, "\\1\n/*\n#{build_image_dependencies(source_code)} */\n\n") unless build_image_dependencies(source_code).empty?
181
193
  # Replace hard-coded image URLs with asset path helpers
182
- source_code.gsub!(/url\(images\/([-_.a-zA-Z0-9]+)\)/, 'url(<%= image_path("jquery-ui/\1") %>)')
194
+ source_code.gsub!(/url\("?images\/([-_.a-zA-Z0-9]+)"?\)/, 'url(<%= image_path("jquery-ui/\1") %>)')
183
195
  File.open("#{target_dir}/#{basename}.erb", "w") do |out|
184
196
  out.write(source_code)
185
197
  end
@@ -188,14 +200,30 @@ end
188
200
 
189
201
  desc "Generate the image assets"
190
202
  task :images => :submodule do
191
- target_dir = "vendor/assets/images/jquery-ui"
192
- mkdir_p target_dir
193
203
  Rake.rake_output_message 'Copying images'
194
- FileUtils.cp(Dir.glob("jquery-ui/themes/base/images/*.png"), target_dir)
204
+
205
+ target_dir = "app/assets/images/jquery-ui"
206
+ mkdir_p target_dir
207
+
208
+ FileUtils.cp(Dir.glob("jquery-ui/themes/base/images/*"), target_dir)
209
+ end
210
+
211
+ desc "Update Jquery::Ui::Rails::JQUERY_UI_VERSION"
212
+ task :version => :submodule do
213
+ Rake.rake_output_message "Setting Jquery::Ui::Rails::JQUERY_UI_VERSION = \"#{version}\""
214
+
215
+ versionRb = 'lib/jquery/ui/rails/version.rb'
216
+ versionRbSource = File.read(versionRb)
217
+ versionDefinition = "JQUERY_UI_VERSION = \"#{version}\""
218
+ versionRbSource.sub! /JQUERY_UI_VERSION = "[^"]*"/, versionDefinition \
219
+ or fail "Could not find JQUERY_UI_VERSION in #{versionRb}"
220
+ File.open(versionRb, 'w') do |out|
221
+ out.write(versionRbSource)
222
+ end
195
223
  end
196
224
 
197
225
  desc "Clean and then generate everything (default)"
198
- task :assets => [:clean, :javascripts, :stylesheets, :images]
226
+ task :assets => [:clean, :javascripts, :stylesheets, :images, :version]
199
227
 
200
228
  task :build => :assets
201
229
 
data/VERSIONS.md ADDED
@@ -0,0 +1,31 @@
1
+ # Bundled Versions
2
+
3
+ | Gem | jQuery UI |
4
+ |--------|-----------|
5
+ | 4.2.1 | 1.10.4 |
6
+ | 4.2.0 | 1.10.3 |
7
+ | 4.1.2 | 1.10.3 |
8
+ | 4.1.1 | 1.10.3 |
9
+ | 4.1.0 | 1.10.3 |
10
+ | 4.0.5 | 1.10.3 |
11
+ | 4.0.4 | 1.10.3 |
12
+ | 4.0.3 | 1.10.3 |
13
+ | 4.0.2 | 1.10.0 |
14
+ | 4.0.1 | 1.10.0 |
15
+ | 4.0.0 | 1.10.0 |
16
+ | 3.0.1 | 1.9.2 |
17
+ | 3.0.0 | 1.9.2 |
18
+ | 2.0.2 | 1.8.24 |
19
+ | 2.0.1 | 1.8.23 |
20
+ | 2.0.0 | 1.8.23 |
21
+ | 1.1.1 | 1.8.23 |
22
+ | 1.1.0 | 1.8.22 |
23
+ | 1.0.0 | 1.8.21 |
24
+ | 0.5.0 | 1.8.21 |
25
+ | 0.4.1 | 1.8.20 |
26
+ | 0.4.0 | 1.8.20 |
27
+ | 0.3.0 | 1.8.19 |
28
+ | 0.2.2 | 1.8.18 |
29
+ | 0.2.1 | 1.8.18 |
30
+ | 0.2.0 | 1.8.17 |
31
+ | 0.1.0 | 1.8.16 |
@@ -2,10 +2,10 @@
2
2
  //= require jquery.ui.widget
3
3
 
4
4
  /*!
5
- * jQuery UI Accordion 1.10.0
5
+ * jQuery UI Accordion 1.10.4
6
6
  * http://jqueryui.com
7
7
  *
8
- * Copyright 2013 jQuery Foundation and other contributors
8
+ * Copyright 2014 jQuery Foundation and other contributors
9
9
  * Released under the MIT license.
10
10
  * http://jquery.org/license
11
11
  *
@@ -27,7 +27,7 @@ showProps.height = showProps.paddingTop = showProps.paddingBottom =
27
27
  showProps.borderTopWidth = showProps.borderBottomWidth = "show";
28
28
 
29
29
  $.widget( "ui.accordion", {
30
- version: "1.10.0",
30
+ version: "1.10.4",
31
31
  options: {
32
32
  active: 0,
33
33
  animate: {},
@@ -68,6 +68,7 @@ $.widget( "ui.accordion", {
68
68
  _getCreateEventData: function() {
69
69
  return {
70
70
  header: this.active,
71
+ panel: !this.active.length ? $() : this.active.next(),
71
72
  content: !this.active.length ? $() : this.active.next()
72
73
  };
73
74
  },
@@ -104,6 +105,7 @@ $.widget( "ui.accordion", {
104
105
  this.headers
105
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" )
106
107
  .removeAttr( "role" )
108
+ .removeAttr( "aria-expanded" )
107
109
  .removeAttr( "aria-selected" )
108
110
  .removeAttr( "aria-controls" )
109
111
  .removeAttr( "tabIndex" )
@@ -118,7 +120,6 @@ $.widget( "ui.accordion", {
118
120
  contents = this.headers.next()
119
121
  .css( "display", "" )
120
122
  .removeAttr( "role" )
121
- .removeAttr( "aria-expanded" )
122
123
  .removeAttr( "aria-hidden" )
123
124
  .removeAttr( "aria-labelledby" )
124
125
  .removeClass( "ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content ui-accordion-content-active ui-state-disabled" )
@@ -169,7 +170,6 @@ $.widget( "ui.accordion", {
169
170
  },
170
171
 
171
172
  _keydown: function( event ) {
172
- /*jshint maxcomplexity:15*/
173
173
  if ( event.altKey || event.ctrlKey ) {
174
174
  return;
175
175
  }
@@ -223,7 +223,7 @@ $.widget( "ui.accordion", {
223
223
  options.active = false;
224
224
  this.active = $();
225
225
  // active false only when collapsible is true
226
- } if ( options.active === false ) {
226
+ } else if ( options.active === false ) {
227
227
  this._activate( 0 );
228
228
  // was active, but active panel is gone
229
229
  } else if ( this.active.length && !$.contains( this.element[ 0 ], this.active[ 0 ] ) ) {
@@ -265,8 +265,8 @@ $.widget( "ui.accordion", {
265
265
  (this.element.attr( "id" ) || ++uid);
266
266
 
267
267
  this.active = this._findActive( options.active )
268
- .addClass( "ui-accordion-header-active ui-state-active" )
269
- .toggleClass( "ui-corner-all ui-corner-top" );
268
+ .addClass( "ui-accordion-header-active ui-state-active ui-corner-top" )
269
+ .removeClass( "ui-corner-all" );
270
270
  this.active.next()
271
271
  .addClass( "ui-accordion-content-active" )
272
272
  .show();
@@ -296,11 +296,11 @@ $.widget( "ui.accordion", {
296
296
  .not( this.active )
297
297
  .attr({
298
298
  "aria-selected": "false",
299
+ "aria-expanded": "false",
299
300
  tabIndex: -1
300
301
  })
301
302
  .next()
302
303
  .attr({
303
- "aria-expanded": "false",
304
304
  "aria-hidden": "true"
305
305
  })
306
306
  .hide();
@@ -311,11 +311,11 @@ $.widget( "ui.accordion", {
311
311
  } else {
312
312
  this.active.attr({
313
313
  "aria-selected": "true",
314
+ "aria-expanded": "true",
314
315
  tabIndex: 0
315
316
  })
316
317
  .next()
317
318
  .attr({
318
- "aria-expanded": "true",
319
319
  "aria-hidden": "false"
320
320
  });
321
321
  }
@@ -470,7 +470,6 @@ $.widget( "ui.accordion", {
470
470
  }
471
471
 
472
472
  toHide.attr({
473
- "aria-expanded": "false",
474
473
  "aria-hidden": "true"
475
474
  });
476
475
  toHide.prev().attr( "aria-selected", "false" );
@@ -478,7 +477,10 @@ $.widget( "ui.accordion", {
478
477
  // if we're opening from collapsed state, remove the previous header from the tab order
479
478
  // if we're collapsing, then keep the collapsing header in the tab order
480
479
  if ( toShow.length && toHide.length ) {
481
- toHide.prev().attr( "tabIndex", -1 );
480
+ toHide.prev().attr({
481
+ "tabIndex": -1,
482
+ "aria-expanded": "false"
483
+ });
482
484
  } else if ( toShow.length ) {
483
485
  this.headers.filter(function() {
484
486
  return $( this ).attr( "tabIndex" ) === 0;
@@ -487,14 +489,12 @@ $.widget( "ui.accordion", {
487
489
  }
488
490
 
489
491
  toShow
490
- .attr({
491
- "aria-expanded": "true",
492
- "aria-hidden": "false"
493
- })
492
+ .attr( "aria-hidden", "false" )
494
493
  .prev()
495
494
  .attr({
496
495
  "aria-selected": "true",
497
- tabIndex: 0
496
+ tabIndex: 0,
497
+ "aria-expanded": "true"
498
498
  });
499
499
  },
500
500
 
@@ -566,7 +566,6 @@ $.widget( "ui.accordion", {
566
566
  if ( toHide.length ) {
567
567
  toHide.parent()[0].className = toHide.parent()[0].className;
568
568
  }
569
-
570
569
  this._trigger( "activate", null, data );
571
570
  }
572
571
  });
File without changes
@@ -4,10 +4,10 @@
4
4
  //= require jquery.ui.position
5
5
 
6
6
  /*!
7
- * jQuery UI Autocomplete 1.10.0
7
+ * jQuery UI Autocomplete 1.10.4
8
8
  * http://jqueryui.com
9
9
  *
10
- * Copyright 2013 jQuery Foundation and other contributors
10
+ * Copyright 2014 jQuery Foundation and other contributors
11
11
  * Released under the MIT license.
12
12
  * http://jquery.org/license
13
13
  *
@@ -21,11 +21,8 @@
21
21
  */
22
22
  (function( $, undefined ) {
23
23
 
24
- // used to prevent race conditions with remote data sources
25
- var requestIndex = 0;
26
-
27
24
  $.widget( "ui.autocomplete", {
28
- version: "1.10.0",
25
+ version: "1.10.4",
29
26
  defaultElement: "<input>",
30
27
  options: {
31
28
  appendTo: null,
@@ -49,6 +46,7 @@ $.widget( "ui.autocomplete", {
49
46
  select: null
50
47
  },
51
48
 
49
+ requestIndex: 0,
52
50
  pending: 0,
53
51
 
54
52
  _create: function() {
@@ -59,10 +57,21 @@ $.widget( "ui.autocomplete", {
59
57
  // so we use the suppressKeyPressRepeat flag to avoid handling keypress
60
58
  // events when we know the keydown event was used to modify the
61
59
  // search term. #7799
62
- var suppressKeyPress, suppressKeyPressRepeat, suppressInput;
63
-
64
- this.isMultiLine = this._isMultiLine();
65
- this.valueMethod = this.element[ this.element.is( "input,textarea" ) ? "val" : "text" ];
60
+ var suppressKeyPress, suppressKeyPressRepeat, suppressInput,
61
+ nodeName = this.element[0].nodeName.toLowerCase(),
62
+ isTextarea = nodeName === "textarea",
63
+ isInput = nodeName === "input";
64
+
65
+ this.isMultiLine =
66
+ // Textareas are always multi-line
67
+ isTextarea ? true :
68
+ // Inputs are always single-line, even if inside a contentEditable element
69
+ // IE also treats inputs as contentEditable
70
+ isInput ? false :
71
+ // All other element types are determined by whether or not they're contentEditable
72
+ this.element.prop( "isContentEditable" );
73
+
74
+ this.valueMethod = this.element[ isTextarea || isInput ? "val" : "text" ];
66
75
  this.isNewMenu = true;
67
76
 
68
77
  this.element
@@ -71,7 +80,6 @@ $.widget( "ui.autocomplete", {
71
80
 
72
81
  this._on( this.element, {
73
82
  keydown: function( event ) {
74
- /*jshint maxcomplexity:15*/
75
83
  if ( this.element.prop( "readOnly" ) ) {
76
84
  suppressKeyPress = true;
77
85
  suppressInput = true;
@@ -136,7 +144,9 @@ $.widget( "ui.autocomplete", {
136
144
  keypress: function( event ) {
137
145
  if ( suppressKeyPress ) {
138
146
  suppressKeyPress = false;
139
- event.preventDefault();
147
+ if ( !this.isMultiLine || this.menu.element.is( ":visible" ) ) {
148
+ event.preventDefault();
149
+ }
140
150
  return;
141
151
  }
142
152
  if ( suppressKeyPressRepeat ) {
@@ -186,15 +196,12 @@ $.widget( "ui.autocomplete", {
186
196
 
187
197
  this._initSource();
188
198
  this.menu = $( "<ul>" )
189
- .addClass( "ui-autocomplete" )
199
+ .addClass( "ui-autocomplete ui-front" )
190
200
  .appendTo( this._appendTo() )
191
201
  .menu({
192
- // custom key handling for now
193
- input: $(),
194
202
  // disable ARIA support, the live region takes care of that
195
203
  role: null
196
204
  })
197
- .zIndex( this.element.zIndex() + 1 )
198
205
  .hide()
199
206
  .data( "ui-menu" );
200
207
 
@@ -229,7 +236,8 @@ $.widget( "ui.autocomplete", {
229
236
  }
230
237
  },
231
238
  menufocus: function( event, ui ) {
232
- // #7024 - Prevent accidental activation of menu items in Firefox
239
+ // support: Firefox
240
+ // Prevent accidental activation of menu items in Firefox (#7024 #9118)
233
241
  if ( this.isNewMenu ) {
234
242
  this.isNewMenu = false;
235
243
  if ( event.originalEvent && /^mouse/.test( event.originalEvent.type ) ) {
@@ -292,7 +300,7 @@ $.widget( "ui.autocomplete", {
292
300
  "aria-live": "polite"
293
301
  })
294
302
  .addClass( "ui-helper-hidden-accessible" )
295
- .insertAfter( this.element );
303
+ .insertBefore( this.element );
296
304
 
297
305
  // turning off autocomplete prevents the browser from remembering the
298
306
  // value when navigating through history, so we re-enable autocomplete
@@ -346,20 +354,6 @@ $.widget( "ui.autocomplete", {
346
354
  return element;
347
355
  },
348
356
 
349
- _isMultiLine: function() {
350
- // Textareas are always multi-line
351
- if ( this.element.is( "textarea" ) ) {
352
- return true;
353
- }
354
- // Inputs are always single-line, even if inside a contentEditable element
355
- // IE also treats inputs as contentEditable
356
- if ( this.element.is( "input" ) ) {
357
- return false;
358
- }
359
- // All other element types are determined by whether or not they're contentEditable
360
- return this.element.prop( "isContentEditable" );
361
- },
362
-
363
357
  _initSource: function() {
364
358
  var array, url,
365
359
  that = this;
@@ -428,19 +422,18 @@ $.widget( "ui.autocomplete", {
428
422
  },
429
423
 
430
424
  _response: function() {
431
- var that = this,
432
- index = ++requestIndex;
425
+ var index = ++this.requestIndex;
433
426
 
434
- return function( content ) {
435
- if ( index === requestIndex ) {
436
- that.__response( content );
427
+ return $.proxy(function( content ) {
428
+ if ( index === this.requestIndex ) {
429
+ this.__response( content );
437
430
  }
438
431
 
439
- that.pending--;
440
- if ( !that.pending ) {
441
- that.element.removeClass( "ui-autocomplete-loading" );
432
+ this.pending--;
433
+ if ( !this.pending ) {
434
+ this.element.removeClass( "ui-autocomplete-loading" );
442
435
  }
443
- };
436
+ }, this );
444
437
  },
445
438
 
446
439
  __response: function( content ) {
@@ -497,10 +490,9 @@ $.widget( "ui.autocomplete", {
497
490
  },
498
491
 
499
492
  _suggest: function( items ) {
500
- var ul = this.menu.element
501
- .empty()
502
- .zIndex( this.element.zIndex() + 1 );
493
+ var ul = this.menu.element.empty();
503
494
  this._renderMenu( ul, items );
495
+ this.isNewMenu = true;
504
496
  this.menu.refresh();
505
497
 
506
498
  // size and position menu