jquery-ui-middleman 4.1.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.
- checksums.yaml +7 -0
- data/.gitignore +2 -0
- data/.gitmodules +3 -0
- data/.travis.yml +2 -0
- data/Gemfile +3 -0
- data/History.md +115 -0
- data/License.txt +2 -0
- data/README.md +226 -0
- data/Rakefile +221 -0
- data/VERSIONS.md +27 -0
- data/app/assets/images/jquery-ui/animated-overlay.gif +0 -0
- data/app/assets/images/jquery-ui/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
- data/app/assets/images/jquery-ui/ui-bg_flat_75_ffffff_40x100.png +0 -0
- data/app/assets/images/jquery-ui/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
- data/app/assets/images/jquery-ui/ui-bg_glass_65_ffffff_1x400.png +0 -0
- data/app/assets/images/jquery-ui/ui-bg_glass_75_dadada_1x400.png +0 -0
- data/app/assets/images/jquery-ui/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
- data/app/assets/images/jquery-ui/ui-bg_glass_95_fef1ec_1x400.png +0 -0
- data/app/assets/images/jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
- data/app/assets/images/jquery-ui/ui-icons_222222_256x240.png +0 -0
- data/app/assets/images/jquery-ui/ui-icons_2e83ff_256x240.png +0 -0
- data/app/assets/images/jquery-ui/ui-icons_454545_256x240.png +0 -0
- data/app/assets/images/jquery-ui/ui-icons_888888_256x240.png +0 -0
- data/app/assets/images/jquery-ui/ui-icons_cd0a0a_256x240.png +0 -0
- data/app/assets/javascripts/jquery.ui.accordion.js +575 -0
- data/app/assets/javascripts/jquery.ui.all.js +34 -0
- data/app/assets/javascripts/jquery.ui.autocomplete.js +615 -0
- data/app/assets/javascripts/jquery.ui.button.js +422 -0
- data/app/assets/javascripts/jquery.ui.core.js +320 -0
- data/app/assets/javascripts/jquery.ui.datepicker-af.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-ar-DZ.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-ar.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-az.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-be.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-bg.js +24 -0
- data/app/assets/javascripts/jquery.ui.datepicker-bs.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-ca.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-cs.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-cy-GB.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-da.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-de.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-el.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-en-AU.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-en-GB.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-en-NZ.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-eo.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-es.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-et.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-eu.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-fa.js +59 -0
- data/app/assets/javascripts/jquery.ui.datepicker-fi.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-fo.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-fr-CA.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-fr-CH.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-fr.js +25 -0
- data/app/assets/javascripts/jquery.ui.datepicker-gl.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-he.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-hi.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-hr.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-hu.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-hy.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-id.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-is.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-it.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-ja.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-ka.js +21 -0
- data/app/assets/javascripts/jquery.ui.datepicker-kk.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-km.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-ko.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-ky.js +24 -0
- data/app/assets/javascripts/jquery.ui.datepicker-lb.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-lt.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-lv.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-mk.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-ml.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-ms.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-nb.js +22 -0
- data/app/assets/javascripts/jquery.ui.datepicker-nl-BE.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-nl.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-nn.js +22 -0
- data/app/assets/javascripts/jquery.ui.datepicker-no.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-pl.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-pt-BR.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-pt.js +22 -0
- data/app/assets/javascripts/jquery.ui.datepicker-rm.js +21 -0
- data/app/assets/javascripts/jquery.ui.datepicker-ro.js +26 -0
- data/app/assets/javascripts/jquery.ui.datepicker-ru.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-sk.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-sl.js +24 -0
- data/app/assets/javascripts/jquery.ui.datepicker-sq.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-sr-SR.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-sr.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-sv.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-ta.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-th.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-tj.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-tr.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-uk.js +24 -0
- data/app/assets/javascripts/jquery.ui.datepicker-vi.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-zh-CN.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-zh-HK.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker-zh-TW.js +23 -0
- data/app/assets/javascripts/jquery.ui.datepicker.js +2040 -0
- data/app/assets/javascripts/jquery.ui.dialog.js +815 -0
- data/app/assets/javascripts/jquery.ui.draggable.js +962 -0
- data/app/assets/javascripts/jquery.ui.droppable.js +377 -0
- data/app/assets/javascripts/jquery.ui.effect-blind.js +84 -0
- data/app/assets/javascripts/jquery.ui.effect-bounce.js +115 -0
- data/app/assets/javascripts/jquery.ui.effect-clip.js +69 -0
- data/app/assets/javascripts/jquery.ui.effect-drop.js +67 -0
- data/app/assets/javascripts/jquery.ui.effect-explode.js +99 -0
- data/app/assets/javascripts/jquery.ui.effect-fade.js +32 -0
- data/app/assets/javascripts/jquery.ui.effect-fold.js +78 -0
- data/app/assets/javascripts/jquery.ui.effect-highlight.js +52 -0
- data/app/assets/javascripts/jquery.ui.effect-pulsate.js +65 -0
- data/app/assets/javascripts/jquery.ui.effect-scale.js +320 -0
- data/app/assets/javascripts/jquery.ui.effect-shake.js +76 -0
- data/app/assets/javascripts/jquery.ui.effect-slide.js +66 -0
- data/app/assets/javascripts/jquery.ui.effect-transfer.js +49 -0
- data/app/assets/javascripts/jquery.ui.effect.all.js +14 -0
- data/app/assets/javascripts/jquery.ui.effect.js +1289 -0
- data/app/assets/javascripts/jquery.ui.menu.js +625 -0
- data/app/assets/javascripts/jquery.ui.mouse.js +172 -0
- data/app/assets/javascripts/jquery.ui.position.js +497 -0
- data/app/assets/javascripts/jquery.ui.progressbar.js +148 -0
- data/app/assets/javascripts/jquery.ui.resizable.js +972 -0
- data/app/assets/javascripts/jquery.ui.selectable.js +281 -0
- data/app/assets/javascripts/jquery.ui.slider.js +676 -0
- data/app/assets/javascripts/jquery.ui.sortable.js +1289 -0
- data/app/assets/javascripts/jquery.ui.spinner.js +497 -0
- data/app/assets/javascripts/jquery.ui.tabs.js +849 -0
- data/app/assets/javascripts/jquery.ui.tooltip.js +406 -0
- data/app/assets/javascripts/jquery.ui.widget.js +521 -0
- data/app/assets/stylesheets/jquery.ui.accordion.css.erb +42 -0
- data/app/assets/stylesheets/jquery.ui.all.css.erb +14 -0
- data/app/assets/stylesheets/jquery.ui.autocomplete.css.erb +21 -0
- data/app/assets/stylesheets/jquery.ui.base.css.erb +27 -0
- data/app/assets/stylesheets/jquery.ui.button.css.erb +118 -0
- data/app/assets/stylesheets/jquery.ui.core.css.erb +93 -0
- data/app/assets/stylesheets/jquery.ui.datepicker.css.erb +182 -0
- data/app/assets/stylesheets/jquery.ui.dialog.css.erb +75 -0
- data/app/assets/stylesheets/jquery.ui.menu.css.erb +83 -0
- data/app/assets/stylesheets/jquery.ui.progressbar.css.erb +32 -0
- data/app/assets/stylesheets/jquery.ui.resizable.css.erb +82 -0
- data/app/assets/stylesheets/jquery.ui.selectable.css.erb +19 -0
- data/app/assets/stylesheets/jquery.ui.slider.css.erb +77 -0
- data/app/assets/stylesheets/jquery.ui.spinner.css.erb +70 -0
- data/app/assets/stylesheets/jquery.ui.tabs.css.erb +56 -0
- data/app/assets/stylesheets/jquery.ui.theme.css.erb +409 -0
- data/app/assets/stylesheets/jquery.ui.tooltip.css.erb +23 -0
- data/lib/jquery-ui-middleman.rb +1 -0
- data/lib/jquery/ui/version.rb +6 -0
- metadata +209 -0
checksums.yaml
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
SHA1:
|
|
3
|
+
metadata.gz: 926ebd0ca7550e8732d55426f07c3b4167c56f85
|
|
4
|
+
data.tar.gz: 1d6fd588376245c4ba8f6568f4c5c56db8b00926
|
|
5
|
+
SHA512:
|
|
6
|
+
metadata.gz: c54465a94e0186bcff6bf5663c397620bd6f5e9815ae5cf0159fef87d55a366690c983f1b483050ecd03baef30d6ee56b965ee50b5b5eab9cf78a27be5473c3e
|
|
7
|
+
data.tar.gz: 1d71efbc3ac26cfe962e1714bd7a9edee3435dfa678b99e7e7350ac66d7ea0803006e79e0d65570aa01078271725b2f184667779442e89fa8966eae20daf998d
|
data/.gitignore
ADDED
data/.gitmodules
ADDED
data/.travis.yml
ADDED
data/Gemfile
ADDED
data/History.md
ADDED
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
# master
|
|
2
|
+
|
|
3
|
+
# 4.1.0
|
|
4
|
+
|
|
5
|
+
* Add Jquery::Ui::Rails::JQUERY_UI_VERSION constant
|
|
6
|
+
|
|
7
|
+
# 4.0.5
|
|
8
|
+
|
|
9
|
+
* Remove unused dependency on the `jquery-rails` gem. If you get an error
|
|
10
|
+
"couldn't find file 'jquery'", you may need to explicitly add `gem
|
|
11
|
+
'jquery-rails'` to your Gemfile.
|
|
12
|
+
|
|
13
|
+
# 4.0.4
|
|
14
|
+
|
|
15
|
+
* Include license in gemspec
|
|
16
|
+
|
|
17
|
+
# 4.0.3
|
|
18
|
+
|
|
19
|
+
* Upgrade to jQuery UI 1.10.3
|
|
20
|
+
|
|
21
|
+
# 4.0.2
|
|
22
|
+
|
|
23
|
+
* Rails 4 compatibility
|
|
24
|
+
|
|
25
|
+
# 4.0.1
|
|
26
|
+
|
|
27
|
+
* Add missing animated-overlay.gif asset and fix image path
|
|
28
|
+
|
|
29
|
+
# 4.0.0
|
|
30
|
+
|
|
31
|
+
* Upgrade to jQuery UI 1.10.0
|
|
32
|
+
|
|
33
|
+
* No more automatic `//= require jquery`
|
|
34
|
+
([#30](https://github.com/joliss/jquery-ui-rails/pull/30), original
|
|
35
|
+
discussion at [#17](https://github.com/joliss/jquery-ui-rails/pull/17)).
|
|
36
|
+
This means that you have to add `//= require jquery` to your application.js
|
|
37
|
+
file before you require any of the jQuery UI JavaScript modules.
|
|
38
|
+
|
|
39
|
+
# 3.0.1
|
|
40
|
+
|
|
41
|
+
* Fix stylesheet dependencies
|
|
42
|
+
|
|
43
|
+
# 3.0.0
|
|
44
|
+
|
|
45
|
+
* Upgrade to jQuery UI 1.9.2
|
|
46
|
+
* Switched from storing the map of file dependencies locally to leveraging
|
|
47
|
+
the grunt build system's .json files for determining file dependencies.
|
|
48
|
+
This simplifies the maintenance of this wrapper project, and allows us to
|
|
49
|
+
delete dependencies.js
|
|
50
|
+
* Renamed jquery.effects.all to jquery.ui.effect.all, to match the effects files
|
|
51
|
+
renamed in 1.9.2 (see [Renamed all effects files][1])
|
|
52
|
+
* Changed license to MIT only instead of MIT or GPL, to match jQuery UI's
|
|
53
|
+
license (see [commit][2])
|
|
54
|
+
|
|
55
|
+
[1]: http://jqueryui.com/upgrade-guide/1.9/#renamed-all-effects-files
|
|
56
|
+
[2]: https://github.com/jquery/jquery-ui/commit/485ca7192ac57d018b8ce4f03e7dec6e694a53b7
|
|
57
|
+
|
|
58
|
+
# 2.0.2
|
|
59
|
+
|
|
60
|
+
* Upgrade to jQuery UI 1.8.24
|
|
61
|
+
|
|
62
|
+
# 2.0.1
|
|
63
|
+
|
|
64
|
+
* Add draggable and resizable to the dependencies of dialog (#1)
|
|
65
|
+
|
|
66
|
+
# 2.0.0
|
|
67
|
+
|
|
68
|
+
* Do not require the main datepicker module from datepicker i18n modules.
|
|
69
|
+
Fixes Heroku precompilation timeouts. If you are using a datepicker i18n
|
|
70
|
+
module, be sure to also require jquery.ui.datepicker. (#9)
|
|
71
|
+
|
|
72
|
+
# 1.1.1
|
|
73
|
+
|
|
74
|
+
* Upgrade to jQuery UI 1.8.23
|
|
75
|
+
|
|
76
|
+
# 1.1.0
|
|
77
|
+
|
|
78
|
+
* Upgrade to jQuery UI 1.8.22
|
|
79
|
+
|
|
80
|
+
# 1.0.0
|
|
81
|
+
|
|
82
|
+
* No change. Bumping version to indicate that jquery-ui-rails is considered
|
|
83
|
+
stable, and that we are following semver.
|
|
84
|
+
|
|
85
|
+
# 0.5.0
|
|
86
|
+
|
|
87
|
+
* Upgrade to jQuery UI 1.8.21
|
|
88
|
+
|
|
89
|
+
# 0.4.1
|
|
90
|
+
|
|
91
|
+
* Add jquery.effects.all
|
|
92
|
+
|
|
93
|
+
# 0.4.0
|
|
94
|
+
|
|
95
|
+
* Upgrade to jQuery UI 1.8.20
|
|
96
|
+
|
|
97
|
+
# 0.3.0
|
|
98
|
+
|
|
99
|
+
* Upgrade to jQuery UI 1.8.19
|
|
100
|
+
|
|
101
|
+
# 0.2.2
|
|
102
|
+
|
|
103
|
+
* Protect copyright notices against minification with `/*! ... */`
|
|
104
|
+
|
|
105
|
+
# 0.2.1
|
|
106
|
+
|
|
107
|
+
* Upgrade to jQuery UI 1.8.18
|
|
108
|
+
|
|
109
|
+
# 0.2.0
|
|
110
|
+
|
|
111
|
+
* Upgrade to jQuery UI 1.8.17
|
|
112
|
+
|
|
113
|
+
# 0.1.0
|
|
114
|
+
|
|
115
|
+
* Initial release packaging jQuery UI 1.8.16
|
data/License.txt
ADDED
data/README.md
ADDED
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
# jquery-ui-middleman
|
|
2
|
+
|
|
3
|
+
This gem packages the jQuery UI 1.10.0 assets (JavaScripts, stylesheets, and
|
|
4
|
+
images) for middleman, this is a fork of [jquery-ui-rails](https://github.com/joliss/jquery-ui-rails)
|
|
5
|
+
|
|
6
|
+
See [VERSIONS.md](VERSIONS.md) to see which versions of jquery-ui-rails bundle
|
|
7
|
+
which versions of jQuery UI.
|
|
8
|
+
|
|
9
|
+
## Usage
|
|
10
|
+
|
|
11
|
+
In your Gemfile, add:
|
|
12
|
+
|
|
13
|
+
```ruby
|
|
14
|
+
gem 'jquery-ui-middleman'
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## Require Everything
|
|
18
|
+
|
|
19
|
+
To require all jQuery UI modules, add the following to your application.js:
|
|
20
|
+
|
|
21
|
+
```javascript
|
|
22
|
+
//= require jquery.ui.all
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
Also add the jQuery UI CSS to your application.css:
|
|
26
|
+
|
|
27
|
+
```css
|
|
28
|
+
/*
|
|
29
|
+
*= require jquery.ui.all
|
|
30
|
+
*/
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
All images required by jQuery UI are automatically served through the asset
|
|
34
|
+
pipeline, so you are good to go! For example, this code will add a
|
|
35
|
+
[datepicker](http://jqueryui.com/demos/datepicker/):
|
|
36
|
+
|
|
37
|
+
```javascript
|
|
38
|
+
$(function() {
|
|
39
|
+
$('.datepicker').datepicker();
|
|
40
|
+
});
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
## Require Specific Modules
|
|
44
|
+
|
|
45
|
+
The jQuery UI code weighs 51KB (minified + gzipped) and takes a while to
|
|
46
|
+
execute, so for production apps it's recommended to only include the modules
|
|
47
|
+
that your application actually uses. Dependencies are automatically resolved.
|
|
48
|
+
Simply pick one or more modules from the asset list below.
|
|
49
|
+
|
|
50
|
+
For example, if you only need the datepicker module, add this to your
|
|
51
|
+
application.js:
|
|
52
|
+
|
|
53
|
+
```javascript
|
|
54
|
+
//= require jquery.ui.datepicker
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
In your application.css, require the corresponding CSS module:
|
|
58
|
+
|
|
59
|
+
```css
|
|
60
|
+
/*
|
|
61
|
+
*= require jquery.ui.datepicker
|
|
62
|
+
*/
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
## JavaScript Assets
|
|
66
|
+
|
|
67
|
+
### UI Core
|
|
68
|
+
|
|
69
|
+
```javascript
|
|
70
|
+
//= require jquery.ui.core
|
|
71
|
+
//= require jquery.ui.widget
|
|
72
|
+
//= require jquery.ui.mouse
|
|
73
|
+
//= require jquery.ui.position
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
You usually do not need to require these directly, as they are pulled in by the
|
|
77
|
+
other JavaScript modules as needed.
|
|
78
|
+
|
|
79
|
+
### Interactions
|
|
80
|
+
|
|
81
|
+
```javascript
|
|
82
|
+
//= require jquery.ui.draggable
|
|
83
|
+
//= require jquery.ui.droppable
|
|
84
|
+
//= require jquery.ui.resizable
|
|
85
|
+
//= require jquery.ui.selectable
|
|
86
|
+
//= require jquery.ui.sortable
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
For `jquery.ui.resizable` and `jquery.ui.selectable`, remember to `require`
|
|
90
|
+
their matching CSS files in your application.css as well.
|
|
91
|
+
|
|
92
|
+
### Widgets
|
|
93
|
+
|
|
94
|
+
```javascript
|
|
95
|
+
//= require jquery.ui.accordion
|
|
96
|
+
//= require jquery.ui.autocomplete
|
|
97
|
+
//= require jquery.ui.button
|
|
98
|
+
//= require jquery.ui.datepicker
|
|
99
|
+
//= require jquery.ui.dialog
|
|
100
|
+
//= require jquery.ui.menu
|
|
101
|
+
//= require jquery.ui.progressbar
|
|
102
|
+
//= require jquery.ui.slider
|
|
103
|
+
//= require jquery.ui.spinner
|
|
104
|
+
//= require jquery.ui.tabs
|
|
105
|
+
//= require jquery.ui.tooltip
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
For all of these, remember to `require` their matching CSS files in your
|
|
109
|
+
application.css as well.
|
|
110
|
+
|
|
111
|
+
#### I18n
|
|
112
|
+
|
|
113
|
+
Datepicker has optional i18n modules for non-US locales, named
|
|
114
|
+
`jquery.ui.datepicker-xx[-YY]`
|
|
115
|
+
([list](https://github.com/joliss/jquery-ui-rails/tree/master/app/assets/javascripts)),
|
|
116
|
+
for example:
|
|
117
|
+
|
|
118
|
+
```javascript
|
|
119
|
+
//= require jquery.ui.datepicker
|
|
120
|
+
//= require jquery.ui.datepicker-pt-BR
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
Note that you still need to include the main datepicker module. It is not
|
|
124
|
+
required automatically [for performance
|
|
125
|
+
reasons](https://github.com/joliss/jquery-ui-rails/issues/9#issuecomment-6524987).
|
|
126
|
+
|
|
127
|
+
### Effects
|
|
128
|
+
|
|
129
|
+
```javascript
|
|
130
|
+
//= require jquery.ui.effect.all
|
|
131
|
+
//= require jquery.ui.effect
|
|
132
|
+
//= require jquery.ui.effect-blind
|
|
133
|
+
//= require jquery.ui.effect-bounce
|
|
134
|
+
//= require jquery.ui.effect-clip
|
|
135
|
+
//= require jquery.ui.effect-drop
|
|
136
|
+
//= require jquery.ui.effect-explode
|
|
137
|
+
//= require jquery.ui.effect-fade
|
|
138
|
+
//= require jquery.ui.effect-fold
|
|
139
|
+
//= require jquery.ui.effect-highlight
|
|
140
|
+
//= require jquery.ui.effect-pulsate
|
|
141
|
+
//= require jquery.ui.effect-scale
|
|
142
|
+
//= require jquery.ui.effect-shake
|
|
143
|
+
//= require jquery.ui.effect-slide
|
|
144
|
+
//= require jquery.ui.effect-transfer
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
## Stylesheet Assets
|
|
148
|
+
|
|
149
|
+
### UI Core
|
|
150
|
+
|
|
151
|
+
```css
|
|
152
|
+
/*
|
|
153
|
+
*= require jquery.ui.core
|
|
154
|
+
*= require jquery.ui.theme
|
|
155
|
+
*/
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
You might want to require these if you do not use any of the following modules,
|
|
159
|
+
but still want jQuery UI's basic theming CSS. Otherwise they are automatically
|
|
160
|
+
pulled in as dependencies.
|
|
161
|
+
|
|
162
|
+
### Interactions
|
|
163
|
+
|
|
164
|
+
```css
|
|
165
|
+
/*
|
|
166
|
+
*= require jquery.ui.resizable
|
|
167
|
+
*= require jquery.ui.selectable
|
|
168
|
+
*/
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
### Widgets
|
|
172
|
+
|
|
173
|
+
```css
|
|
174
|
+
/*
|
|
175
|
+
*= require jquery.ui.accordion
|
|
176
|
+
*= require jquery.ui.autocomplete
|
|
177
|
+
*= require jquery.ui.button
|
|
178
|
+
*= require jquery.ui.datepicker
|
|
179
|
+
*= require jquery.ui.dialog
|
|
180
|
+
*= require jquery.ui.menu
|
|
181
|
+
*= require jquery.ui.progressbar
|
|
182
|
+
*= require jquery.ui.slider
|
|
183
|
+
*= require jquery.ui.spinner
|
|
184
|
+
*= require jquery.ui.tabs
|
|
185
|
+
*= require jquery.ui.tooltip
|
|
186
|
+
*/
|
|
187
|
+
```
|
|
188
|
+
|
|
189
|
+
## Contributing
|
|
190
|
+
|
|
191
|
+
### Bug Reports
|
|
192
|
+
|
|
193
|
+
For bugs in jQuery UI itself, head to the [jQuery UI Development
|
|
194
|
+
Center](http://jqueryui.com/development).
|
|
195
|
+
|
|
196
|
+
For bugs in this gem distribution, use the GitHub issue tracker.
|
|
197
|
+
|
|
198
|
+
## Limitations
|
|
199
|
+
|
|
200
|
+
* Only the base theme (Smoothness) is included. Once it becomes possible to
|
|
201
|
+
[generate all theme
|
|
202
|
+
files](https://forum.jquery.com/topic/downloading-bundling-all-themes#14737000003080244)
|
|
203
|
+
from the jQuery UI sources, we can package all the other themes in the
|
|
204
|
+
[ThemeRoller](http://jqueryui.com/themeroller/) gallery.
|
|
205
|
+
|
|
206
|
+
Perhaps we can also add helper tasks to help developers generate assets for
|
|
207
|
+
their own custom themes or for third-party themes (like
|
|
208
|
+
[Selene](http://gravityonmars.github.com/Selene/)).
|
|
209
|
+
|
|
210
|
+
If you still want a different theme right now, you could probably download
|
|
211
|
+
a custom theme and require the theme CSS *after* requiring any other jQuery
|
|
212
|
+
UI CSS files you need, making sure to serve up the theme images correctly.
|
|
213
|
+
(This is arguably cumbersome, not officially supported by this gem, and
|
|
214
|
+
adds 1 KB overhead as both the base theme and the custom theme are served
|
|
215
|
+
up.)
|
|
216
|
+
|
|
217
|
+
* The `jquery.ui.all.js` file is named `jquery-ui.js` in the official
|
|
218
|
+
distribution. We should follow their naming. But jquery-rails provides a
|
|
219
|
+
`jquery-ui.js` asset as well, so until that is removed from the
|
|
220
|
+
jquery-rails gem (see issue
|
|
221
|
+
[#46](https://github.com/rails/jquery-rails/issues/46)), we cannot
|
|
222
|
+
distribute `jquery-ui.js` without risking conflicts.
|
|
223
|
+
|
|
224
|
+
To reduce confusion, as long as there is no `jquery-ui.js`, we also do not
|
|
225
|
+
distribute the official `jquery-ui-i18n.js` and `jquery-ui.css`. The latter
|
|
226
|
+
is available as `jquery.ui.all.css` however.
|
data/Rakefile
ADDED
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
require 'json'
|
|
2
|
+
require 'bundler/gem_tasks'
|
|
3
|
+
|
|
4
|
+
# returns the source filename for a given JSON build file
|
|
5
|
+
# (e.g., "ui.core.jquery.json" returns "jquery.ui.core.js")
|
|
6
|
+
def source_file_for_build_file(build_file)
|
|
7
|
+
"jquery.#{build_file.sub('.jquery.json', '')}.js"
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
# returns the source filename for a named file in the 'dependencies'
|
|
11
|
+
# array of a JSON build file
|
|
12
|
+
# (e.g., if the JSON build file contains
|
|
13
|
+
#
|
|
14
|
+
# "dependencies": {
|
|
15
|
+
# "jquery": ">=1.6",
|
|
16
|
+
# "ui.core": "1.9.2",
|
|
17
|
+
# "ui.widget": "1.9.2"
|
|
18
|
+
# },
|
|
19
|
+
#
|
|
20
|
+
# then "ui.widget" returns "jquery.ui.widget.js")
|
|
21
|
+
#
|
|
22
|
+
# The only exception is "jquery", which doesn't follow the
|
|
23
|
+
# same naming conventions so its a special case.
|
|
24
|
+
def source_file_for_dependency_entry(dep_entry)
|
|
25
|
+
# if the dependent file is jquery.js itself, return its filename
|
|
26
|
+
return "jquery.js" if dep_entry == 'jquery'
|
|
27
|
+
|
|
28
|
+
# otherwise, tack 'jquery.' on the front
|
|
29
|
+
"jquery.#{dep_entry}.js"
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
# return a Hash of dependency info, whose keys are jquery-ui
|
|
33
|
+
# source files and values are Arrays containing the source files
|
|
34
|
+
# they depend on
|
|
35
|
+
def map_dependencies
|
|
36
|
+
dependencies = {}
|
|
37
|
+
Dir.glob("jquery-ui/*.jquery.json").each do |build_file|
|
|
38
|
+
build_info = JSON.parse(File.read build_file)
|
|
39
|
+
source_file_name = source_file_for_build_file(File.basename(build_file))
|
|
40
|
+
|
|
41
|
+
deps = build_info['dependencies'].keys
|
|
42
|
+
|
|
43
|
+
# None of jquery.ui files should depend on jquery.js,
|
|
44
|
+
# so we remove 'jquery' from the list of dependencies for all files
|
|
45
|
+
deps.reject! {|d| d == "jquery" }
|
|
46
|
+
|
|
47
|
+
deps.map! {|d| source_file_for_dependency_entry d }
|
|
48
|
+
|
|
49
|
+
dependencies[source_file_name] = deps
|
|
50
|
+
end
|
|
51
|
+
dependencies
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
DEPENDENCY_HASH = map_dependencies
|
|
55
|
+
|
|
56
|
+
def version
|
|
57
|
+
JSON.load(File.read('jquery-ui/package.json'))['version']
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
task :submodule do
|
|
61
|
+
sh 'git submodule update --init' unless File.exist?('jquery-ui/README.md')
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
def get_js_dependencies(basename)
|
|
65
|
+
dependencies = DEPENDENCY_HASH[basename]
|
|
66
|
+
if dependencies.nil?
|
|
67
|
+
puts "Warning: No dependencies found for #{basename}"
|
|
68
|
+
dependencies = []
|
|
69
|
+
end
|
|
70
|
+
# Make sure we do not package assets with broken dependencies
|
|
71
|
+
dependencies.each do |dep|
|
|
72
|
+
unless File.exist?("jquery-ui/ui/#{dep}")
|
|
73
|
+
fail "#{basename}: missing #{dep}"
|
|
74
|
+
end
|
|
75
|
+
end
|
|
76
|
+
dependencies
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
def remove_js_extension(path)
|
|
80
|
+
path.chomp(".js")
|
|
81
|
+
end
|
|
82
|
+
|
|
83
|
+
def protect_copyright_notice(source_code)
|
|
84
|
+
# YUI does not minify comments starting with "/*!"
|
|
85
|
+
# The i18n files start with non-copyright comments, so we require a newline
|
|
86
|
+
# to avoid protecting those
|
|
87
|
+
source_code.gsub!(/\A\s*\/\*\r?\n/, "/*!\n")
|
|
88
|
+
end
|
|
89
|
+
|
|
90
|
+
desc "Remove the app directory"
|
|
91
|
+
task :clean do
|
|
92
|
+
rm_rf 'app'
|
|
93
|
+
end
|
|
94
|
+
|
|
95
|
+
desc "Generate the JavaScript assets"
|
|
96
|
+
task :javascripts => :submodule do
|
|
97
|
+
Rake.rake_output_message 'Generating javascripts'
|
|
98
|
+
|
|
99
|
+
target_dir = "app/assets/javascripts"
|
|
100
|
+
mkdir_p target_dir
|
|
101
|
+
|
|
102
|
+
Dir.glob("jquery-ui/ui/*.js").each do |path|
|
|
103
|
+
basename = File.basename(path)
|
|
104
|
+
dep_modules = get_js_dependencies(basename).map(&method(:remove_js_extension))
|
|
105
|
+
File.open("#{target_dir}/#{basename}", "w") do |out|
|
|
106
|
+
dep_modules.each do |mod|
|
|
107
|
+
out.write("//= require #{mod}\n")
|
|
108
|
+
end
|
|
109
|
+
out.write("\n") unless dep_modules.empty?
|
|
110
|
+
source_code = File.read(path)
|
|
111
|
+
source_code.gsub!('@VERSION', version)
|
|
112
|
+
protect_copyright_notice(source_code)
|
|
113
|
+
out.write(source_code)
|
|
114
|
+
end
|
|
115
|
+
end
|
|
116
|
+
|
|
117
|
+
# process the i18n files separately for performance, since they will not have dependencies
|
|
118
|
+
# https://github.com/joliss/jquery-ui-rails/issues/9
|
|
119
|
+
Dir.glob("jquery-ui/ui/i18n/*.js").each do |path|
|
|
120
|
+
basename = File.basename(path)
|
|
121
|
+
File.open("#{target_dir}/#{basename}", "w") do |out|
|
|
122
|
+
source_code = File.read(path)
|
|
123
|
+
source_code.gsub!('@VERSION', version)
|
|
124
|
+
protect_copyright_notice(source_code)
|
|
125
|
+
out.write(source_code)
|
|
126
|
+
end
|
|
127
|
+
end
|
|
128
|
+
|
|
129
|
+
File.open("#{target_dir}/jquery.ui.effect.all.js", "w") do |out|
|
|
130
|
+
Dir.glob("jquery-ui/ui/jquery.ui.effect*.js").sort.each do |path|
|
|
131
|
+
asset_name = remove_js_extension(File.basename(path))
|
|
132
|
+
out.write("//= require #{asset_name}\n")
|
|
133
|
+
end
|
|
134
|
+
end
|
|
135
|
+
File.open("#{target_dir}/jquery.ui.all.js", "w") do |out|
|
|
136
|
+
Dir.glob("jquery-ui/ui/*.js").sort.each do |path|
|
|
137
|
+
asset_name = remove_js_extension(File.basename(path))
|
|
138
|
+
out.write("//= require #{asset_name}\n")
|
|
139
|
+
end
|
|
140
|
+
end
|
|
141
|
+
end
|
|
142
|
+
|
|
143
|
+
desc "Generate the CSS assets"
|
|
144
|
+
task :stylesheets => :submodule do
|
|
145
|
+
Rake.rake_output_message 'Generating stylesheets'
|
|
146
|
+
|
|
147
|
+
target_dir = "app/assets/stylesheets"
|
|
148
|
+
mkdir_p target_dir
|
|
149
|
+
|
|
150
|
+
css_dir = "jquery-ui/themes/base"
|
|
151
|
+
Dir.glob("#{css_dir}/*.css").each do |path|
|
|
152
|
+
basename = File.basename(path)
|
|
153
|
+
source_code = File.read(path)
|
|
154
|
+
source_code.gsub!('@VERSION', version)
|
|
155
|
+
protect_copyright_notice(source_code)
|
|
156
|
+
extra_dependencies = []
|
|
157
|
+
# Is "theme" listed among the dependencies for the matching JS file?
|
|
158
|
+
unless basename =~ /\.(all|base|core)\./
|
|
159
|
+
dependencies = DEPENDENCY_HASH[basename.sub(/\.css/, '.js')]
|
|
160
|
+
if dependencies.nil?
|
|
161
|
+
puts "Warning: No matching JavaScript dependencies found for #{basename}"
|
|
162
|
+
extra_dependencies << 'jquery.ui.core'
|
|
163
|
+
else
|
|
164
|
+
dependencies.each do |dependency|
|
|
165
|
+
dependency = dependency.sub(/\.js$/, '')
|
|
166
|
+
dependent_stylesheet = "#{dependency}.css"
|
|
167
|
+
extra_dependencies << dependency if File.exists?("#{css_dir}/#{dependent_stylesheet}")
|
|
168
|
+
end
|
|
169
|
+
extra_dependencies << 'jquery.ui.theme'
|
|
170
|
+
end
|
|
171
|
+
end
|
|
172
|
+
extra_dependencies.reverse.each do |dep|
|
|
173
|
+
# Add after first comment block
|
|
174
|
+
source_code = source_code.sub(/\A((.*?\*\/\n)?)/m, "\\1/*\n *= require #{dep}\n */\n")
|
|
175
|
+
end
|
|
176
|
+
# Use "require" instead of @import
|
|
177
|
+
source_code.gsub!(/^@import (.*)$/) { |s|
|
|
178
|
+
m = s.match(/^@import (url\()?"(?<module>[-_.a-zA-Z]+)\.css"\)?;/) \
|
|
179
|
+
or fail "Cannot parse import: #{s}"
|
|
180
|
+
"/*\n *= require #{m['module']}\n */"
|
|
181
|
+
}
|
|
182
|
+
# Be cute: collapse multiple require comment blocks into one
|
|
183
|
+
source_code.gsub!(/^( \*= require .*)\n \*\/(\n+)\/\*\n(?= \*= require )/, '\1\2')
|
|
184
|
+
# Replace hard-coded image URLs with asset path helpers
|
|
185
|
+
source_code.gsub!(/url\("?images\/([-_.a-zA-Z0-9]+)"?\)/, 'url(<%= image_path("jquery-ui/\1") %>)')
|
|
186
|
+
File.open("#{target_dir}/#{basename}.erb", "w") do |out|
|
|
187
|
+
out.write(source_code)
|
|
188
|
+
end
|
|
189
|
+
end
|
|
190
|
+
end
|
|
191
|
+
|
|
192
|
+
desc "Generate the image assets"
|
|
193
|
+
task :images => :submodule do
|
|
194
|
+
Rake.rake_output_message 'Copying images'
|
|
195
|
+
|
|
196
|
+
target_dir = "app/assets/images/jquery-ui"
|
|
197
|
+
mkdir_p target_dir
|
|
198
|
+
|
|
199
|
+
FileUtils.cp(Dir.glob("jquery-ui/themes/base/images/*"), target_dir)
|
|
200
|
+
end
|
|
201
|
+
|
|
202
|
+
desc "Update Jquery::Ui::JQUERY_UI_VERSION"
|
|
203
|
+
task :version => :submodule do
|
|
204
|
+
Rake.rake_output_message "Setting Jquery::Ui::JQUERY_UI_VERSION = \"#{version}\""
|
|
205
|
+
|
|
206
|
+
versionRb = 'lib/jquery/ui/version.rb'
|
|
207
|
+
versionRbSource = File.read(versionRb)
|
|
208
|
+
versionDefinition = "JQUERY_UI_VERSION = \"#{version}\""
|
|
209
|
+
versionRbSource.sub! /JQUERY_UI_VERSION = "[^"]*"/, versionDefinition \
|
|
210
|
+
or fail "Could not find JQUERY_UI_VERSION in #{versionRb}"
|
|
211
|
+
File.open(versionRb, 'w') do |out|
|
|
212
|
+
out.write(versionRbSource)
|
|
213
|
+
end
|
|
214
|
+
end
|
|
215
|
+
|
|
216
|
+
desc "Clean and then generate everything (default)"
|
|
217
|
+
task :assets => [:clean, :javascripts, :stylesheets, :images, :version]
|
|
218
|
+
|
|
219
|
+
task :build => :assets
|
|
220
|
+
|
|
221
|
+
task :default => :assets
|