lazybox 1.0.2 → 1.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/README.md +59 -34
- data/app/assets/javascripts/lazybox.js.coffee +15 -29
- data/app/assets/javascripts/lazybox.js.js +96 -0
- data/app/assets/stylesheets/lazybox.css.scss +51 -35
- data/lib/lazybox.rb +19 -0
- data/lib/lazybox/version.rb +1 -1
- metadata +13 -17
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 14ba4ad8d9f02ddba95764fc533c30d8fad8d2da
|
4
|
+
data.tar.gz: 3df0f542f3d540f5143bc602aa4d84d16b856350
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 4e79db94d9770028368d53b3533a3b58866da7c52b99f0cdf3f4215760b7aede668bfc2ebe9ed189864d67bd34de00f2afee46d8caa13b9973e8df184dbd92cc
|
7
|
+
data.tar.gz: 9f6fa44ffb06c4c6b77a124f080667572862198a62427c1ed8fcab842a775ce2a1734fc849526df74cdb8e6e8098012bc258eb61e11d101ab7f2a3574d4ccc99
|
data/README.md
CHANGED
@@ -12,6 +12,11 @@ LazyBox implemented using only css and jquery without images.
|
|
12
12
|
This is high perfomance modal dialogs. All unpacked files take only 5 kb.
|
13
13
|
This is simplest solution for popup windows and custom confirmation dialogs.
|
14
14
|
|
15
|
+
Upgrade to 1.1.0
|
16
|
+
-
|
17
|
+
|
18
|
+
After you upgrate the lazybox to 1.1.0 version you should add `render_lazybox` helper to your layout.
|
19
|
+
|
15
20
|
Installing
|
16
21
|
----------
|
17
22
|
|
@@ -23,10 +28,46 @@ gem 'lazybox'
|
|
23
28
|
|
24
29
|
Then run `bundle install` to update your application's bundle.
|
25
30
|
|
31
|
+
Add to your layout helper `render_lazybox`:
|
32
|
+
|
33
|
+
```slim
|
34
|
+
...
|
35
|
+
render_lazybox
|
36
|
+
body
|
37
|
+
html
|
38
|
+
```
|
39
|
+
|
26
40
|
Include in your `application.css`:
|
27
41
|
|
28
|
-
```
|
29
|
-
|
42
|
+
```scss
|
43
|
+
@include 'lazybox';
|
44
|
+
```
|
45
|
+
|
46
|
+
There are a lot of variables you can customise:
|
47
|
+
|
48
|
+
```scss
|
49
|
+
$lazy-transition: .3s;
|
50
|
+
$lazy-z-index: 1000;
|
51
|
+
$lazy-overlay: rgba(black, .7);
|
52
|
+
$lazy-bg: white;
|
53
|
+
$lazy-border: 1px solid #ccc;
|
54
|
+
$lazy-shadow: 0 1px 5px #333;
|
55
|
+
$lazy-padding: 20px;
|
56
|
+
$lazy-start: scale(.7);
|
57
|
+
$lazy-end: scale(1);
|
58
|
+
$lazy-close: '×';
|
59
|
+
```
|
60
|
+
|
61
|
+
Use `$lazy-start` and `$lazy-end` to contol the animation, `$lazy-close` to set close image.
|
62
|
+
|
63
|
+
You should set the variable before you include the `lazybox`
|
64
|
+
|
65
|
+
```scss
|
66
|
+
$lazy-start: rotate(180);
|
67
|
+
$lazy-end: rotate(0);
|
68
|
+
$lazy-close: url(url-to-image);
|
69
|
+
|
70
|
+
@include 'lazybox';
|
30
71
|
```
|
31
72
|
|
32
73
|
And in `application.js`:
|
@@ -90,7 +131,7 @@ $.lazybox.settings = {cancelClass: "button gray", submitClass: 'button gray', ov
|
|
90
131
|
or instance settings
|
91
132
|
|
92
133
|
```javascript
|
93
|
-
$.lazybox("<div>It works!</div>",{
|
134
|
+
$.lazybox("<div>It works!</div>",{modal: true, close: false})
|
94
135
|
```
|
95
136
|
|
96
137
|
###Images
|
@@ -104,7 +145,7 @@ Include in your `app/assets/javascripts/application.js`:
|
|
104
145
|
$(document).ready(function() {
|
105
146
|
$('a[rel*=lazybox]').lazybox();
|
106
147
|
// or with options
|
107
|
-
$('a[rel*=lazybox]').lazybox({
|
148
|
+
$('a[rel*=lazybox]').lazybox({esc: true, close: true, modal: true, klass: 'class'});
|
108
149
|
});
|
109
150
|
```
|
110
151
|
|
@@ -117,33 +158,6 @@ If there are more than one link to image you can click on image in the lazybox t
|
|
117
158
|
= image_tag image2.url, height: 100
|
118
159
|
```
|
119
160
|
|
120
|
-
Custom close image
|
121
|
-
------------------
|
122
|
-
|
123
|
-
Set 'closeImg' option to true.
|
124
|
-
|
125
|
-
`application.js`:
|
126
|
-
|
127
|
-
```javascript
|
128
|
-
$(document).ready(function() {
|
129
|
-
$('.images a').lazybox({closeImg: true});
|
130
|
-
});
|
131
|
-
```
|
132
|
-
|
133
|
-
Style your close:
|
134
|
-
|
135
|
-
`application.css`
|
136
|
-
|
137
|
-
```css
|
138
|
-
#lazybox_close.img {
|
139
|
-
background: url('close.png') no-repeat;
|
140
|
-
width: 32px;
|
141
|
-
height: 32px;
|
142
|
-
top: -17px;
|
143
|
-
right: -17px;
|
144
|
-
}
|
145
|
-
```
|
146
|
-
|
147
161
|
We can use lazybox with `turbolinks` to show page loading spinner:
|
148
162
|
|
149
163
|
```coffeescript
|
@@ -174,14 +188,25 @@ Turbolinks spinner
|
|
174
188
|
}
|
175
189
|
```
|
176
190
|
|
191
|
+
Display on page load
|
192
|
+
-
|
193
|
+
|
194
|
+
You can show lazybox with some content on page load. To do this you should `content_for` helper:
|
195
|
+
|
196
|
+
`index.haml`
|
197
|
+
|
198
|
+
```haml
|
199
|
+
content_for :lazybox do
|
200
|
+
This text appears on page load
|
201
|
+
```
|
202
|
+
|
203
|
+
|
177
204
|
Options
|
178
205
|
-------
|
179
206
|
|
180
207
|
esc: true|false //default true. Close lazybox on esc press
|
181
208
|
close: true|false //default true. Show close lazybox button
|
182
209
|
modal: true|false //default true. Close lazybox on overlay click
|
183
|
-
closeImg: true|false //default false. Use image for close link
|
184
|
-
onTop: true|false //default false. Show lazybox on top instead of on center. It will use slide animation instead of fade.
|
185
210
|
klass: 'class' Set class for lazybox. <div id='lazybox' class='class'>...</div>
|
186
211
|
//confirmation options
|
187
212
|
cancelText: //default 'Cancel'. Cancel button text
|
@@ -198,7 +223,7 @@ Events
|
|
198
223
|
Browser Compatibility
|
199
224
|
---------------------
|
200
225
|
|
201
|
-
|
226
|
+
IE9 +
|
202
227
|
Chrome
|
203
228
|
Firefox
|
204
229
|
Opera
|
@@ -3,15 +3,12 @@
|
|
3
3
|
esc: true
|
4
4
|
close: true
|
5
5
|
modal: false
|
6
|
-
|
6
|
+
klass: ''
|
7
7
|
cancelText: 'Cancel'
|
8
8
|
cancelClass: 'btn'
|
9
9
|
submitText: 'Ok'
|
10
10
|
submitClass: 'btn'
|
11
11
|
|
12
|
-
html = "<div id='lazy_overlay'><div id='lazybox'><a id='lazy_close' href=''></a><div id='lazy_body'></div></div></div>"
|
13
|
-
box = overlay = close = null
|
14
|
-
|
15
12
|
$.lazybox = (html, options) -> $.lazybox.show(html, options)
|
16
13
|
|
17
14
|
$.extend $.lazybox,
|
@@ -20,23 +17,22 @@
|
|
20
17
|
show: (content, options) ->
|
21
18
|
options = init(options)
|
22
19
|
$('#lazy_body').html(content)
|
23
|
-
|
24
|
-
close.addClass('visible') if options.close && !box.hasClass('visible')
|
20
|
+
$('#lazy_overlay').addClass('active')
|
25
21
|
|
26
|
-
close: ->
|
22
|
+
close: -> $('#lazy_overlay').removeClass()
|
27
23
|
|
28
24
|
confirm: (element) ->
|
29
25
|
options = $.extend defaults, $.lazybox.settings
|
30
26
|
message = element.data('confirm')
|
31
|
-
return true
|
27
|
+
return true unless message
|
32
28
|
$.lazybox.show('<p>'+message+'</p><div class="lazy_buttons"></div>', { klass: 'confirm' })
|
33
29
|
element.clone().attr('class', options.submitClass).removeAttr('data-confirm').text(options.submitText).appendTo('.lazy_buttons')
|
34
30
|
$('.lazy_buttons').append(' ')
|
35
|
-
$('<
|
31
|
+
$('<button>', { text: options.cancelText, 'class': 'cancel ' + options.cancelClass }).appendTo('.lazy_buttons')
|
36
32
|
return false
|
37
33
|
|
38
34
|
$.fn.lazybox = (options) ->
|
39
|
-
$(document).on 'click',
|
35
|
+
$(document).on 'click', @.selector, (e) ->
|
40
36
|
a = $(e.currentTarget)
|
41
37
|
href = a.attr('href')
|
42
38
|
imagesRegexp = new RegExp('\\.(png|jpg|jpeg|gif)(\\?.*)?$', 'i')
|
@@ -53,25 +49,15 @@
|
|
53
49
|
|
54
50
|
init = (options) ->
|
55
51
|
options = $.extend {}, defaults, $.lazybox.settings, options
|
56
|
-
$('
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
if options.closeImg then close.addClass('img') else close.removeClass('img')
|
64
|
-
else
|
65
|
-
close.removeClass()
|
66
|
-
if options.modal
|
67
|
-
overlay.unbind()
|
68
|
-
else
|
69
|
-
overlay.bind 'click', (e) ->
|
70
|
-
$.lazybox.close() if e.target == @
|
71
|
-
$(document).keyup (e) -> $.lazybox.close() if e.keyCode == 27 and options.esc
|
72
|
-
box.on 'click', '#lazy_close, .lazy_buttons a.cancel', (e) ->
|
73
|
-
$.lazybox.close()
|
74
|
-
e.preventDefault()
|
52
|
+
$('#lazybox').attr('class', options.klass)
|
53
|
+
$('#lazy_close').toggleClass('visible', options.close)
|
54
|
+
$('#lazy_overlay').one 'click', $.lazybox.close unless options.modal
|
55
|
+
$(document).on 'keyup.lazy', (e) ->
|
56
|
+
if e.keyCode == 27 and options.esc
|
57
|
+
$.lazybox.close()
|
58
|
+
$(document).off('keyup.lazy')
|
75
59
|
return options
|
76
60
|
|
77
61
|
) jQuery
|
62
|
+
|
63
|
+
$(document).on 'click', '#lazy_close, .lazy_buttons .cancel', $.lazybox.close
|
@@ -0,0 +1,96 @@
|
|
1
|
+
// Generated by CoffeeScript 1.4.0
|
2
|
+
(function() {
|
3
|
+
|
4
|
+
(function($) {
|
5
|
+
var defaults, init;
|
6
|
+
defaults = {
|
7
|
+
esc: true,
|
8
|
+
close: true,
|
9
|
+
modal: false,
|
10
|
+
klass: '',
|
11
|
+
cancelText: 'Cancel',
|
12
|
+
cancelClass: 'btn',
|
13
|
+
submitText: 'Ok',
|
14
|
+
submitClass: 'btn'
|
15
|
+
};
|
16
|
+
$.lazybox = function(html, options) {
|
17
|
+
return $.lazybox.show(html, options);
|
18
|
+
};
|
19
|
+
$.extend($.lazybox, {
|
20
|
+
settings: $.extend({}, defaults),
|
21
|
+
show: function(content, options) {
|
22
|
+
options = init(options);
|
23
|
+
$('#lazy_body').html(content);
|
24
|
+
return $('#lazy_overlay').addClass('active');
|
25
|
+
},
|
26
|
+
close: function() {
|
27
|
+
return $('#lazy_overlay').removeClass();
|
28
|
+
},
|
29
|
+
confirm: function(element) {
|
30
|
+
var message, options;
|
31
|
+
options = $.extend(defaults, $.lazybox.settings);
|
32
|
+
message = element.data('confirm');
|
33
|
+
if (!message) {
|
34
|
+
return true;
|
35
|
+
}
|
36
|
+
$.lazybox.show('<p>' + message + '</p><div class="lazy_buttons"></div>', {
|
37
|
+
klass: 'confirm'
|
38
|
+
});
|
39
|
+
element.clone().attr('class', options.submitClass).removeAttr('data-confirm').text(options.submitText).appendTo('.lazy_buttons');
|
40
|
+
$('.lazy_buttons').append(' ');
|
41
|
+
$('<button>', {
|
42
|
+
text: options.cancelText,
|
43
|
+
'class': 'cancel ' + options.cancelClass
|
44
|
+
}).appendTo('.lazy_buttons');
|
45
|
+
return false;
|
46
|
+
}
|
47
|
+
});
|
48
|
+
$.fn.lazybox = function(options) {
|
49
|
+
return $(document).on('click', this.selector, function(e) {
|
50
|
+
var a, href, imagesRegexp, img;
|
51
|
+
a = $(e.currentTarget);
|
52
|
+
href = a.attr('href');
|
53
|
+
imagesRegexp = new RegExp('\\.(png|jpg|jpeg|gif)(\\?.*)?$', 'i');
|
54
|
+
e.preventDefault();
|
55
|
+
if (href.match(imagesRegexp)) {
|
56
|
+
img = new Image();
|
57
|
+
img.onload = function(element) {
|
58
|
+
return $.lazybox.show(img, options);
|
59
|
+
};
|
60
|
+
return $(img).attr({
|
61
|
+
'class': 'lazy-img',
|
62
|
+
src: href
|
63
|
+
});
|
64
|
+
} else {
|
65
|
+
return $.ajax({
|
66
|
+
url: href,
|
67
|
+
success: function(data) {
|
68
|
+
return $.lazybox.show(data, options);
|
69
|
+
},
|
70
|
+
error: function() {
|
71
|
+
return $.lazybox.close();
|
72
|
+
}
|
73
|
+
});
|
74
|
+
}
|
75
|
+
});
|
76
|
+
};
|
77
|
+
return init = function(options) {
|
78
|
+
options = $.extend({}, defaults, $.lazybox.settings, options);
|
79
|
+
$('#lazybox').attr('class', options.klass);
|
80
|
+
$('#lazy_close').toggleClass('visible', options.close);
|
81
|
+
if (!options.modal) {
|
82
|
+
$('#lazy_overlay').one('click', $.lazybox.close);
|
83
|
+
}
|
84
|
+
$(document).on('keyup.lazy', function(e) {
|
85
|
+
if (e.keyCode === 27 && options.esc) {
|
86
|
+
$.lazybox.close();
|
87
|
+
return $(document).off('keyup.lazy');
|
88
|
+
}
|
89
|
+
});
|
90
|
+
return options;
|
91
|
+
};
|
92
|
+
})(jQuery);
|
93
|
+
|
94
|
+
$(document).on('click', '#lazy_close, .lazy_buttons .cancel', $.lazybox.close);
|
95
|
+
|
96
|
+
}).call(this);
|
@@ -1,61 +1,77 @@
|
|
1
|
-
$
|
2
|
-
$
|
3
|
-
$lazy-
|
1
|
+
$lazy-transition: .3s !default;
|
2
|
+
$lazy-z-index: 1000 !default;
|
3
|
+
$lazy-overlay: rgba(black, .7) !default;
|
4
|
+
$lazy-bg: white !default;
|
5
|
+
$lazy-border: 1px solid #ccc !default;
|
6
|
+
$lazy-shadow: 0 1px 5px #333 !default;
|
7
|
+
$lazy-padding: 20px !default;
|
8
|
+
$lazy-start: scale(.7) !default;
|
9
|
+
$lazy-end: scale(1) !default;
|
10
|
+
$lazy-close: '×' !default;
|
4
11
|
|
5
12
|
#lazy_overlay {
|
6
13
|
visibility: hidden;
|
7
14
|
z-index: $lazy-z-index;
|
8
|
-
background:
|
9
|
-
bottom:
|
10
|
-
left:
|
15
|
+
background: $lazy-overlay;
|
16
|
+
bottom: 0;
|
17
|
+
left: 0;
|
11
18
|
position: fixed;
|
12
|
-
right:
|
13
|
-
top:
|
19
|
+
right: 0;
|
20
|
+
top: 0;
|
14
21
|
opacity: 0;
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
justify-content: center;
|
25
|
-
&.top { align-items: flex-start; }
|
26
|
-
&.top #lazybox {
|
27
|
-
border-top-right-radius: 0;
|
28
|
-
border-top-left-radius: 0;
|
22
|
+
transition: opacity $lazy-transition, visibility $lazy-transition;
|
23
|
+
&.active {
|
24
|
+
visibility: visible;
|
25
|
+
opacity: 1;
|
26
|
+
+ #lazybox {
|
27
|
+
visibility: visible;
|
28
|
+
transform: translate(-50%, -50%) $lazy-end;
|
29
|
+
opacity: 1;
|
30
|
+
}
|
29
31
|
}
|
30
32
|
}
|
31
33
|
|
32
34
|
#lazybox {
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
35
|
+
visibility: hidden;
|
36
|
+
opacity: 0;
|
37
|
+
top: 50%;
|
38
|
+
left: 50%;
|
39
|
+
transform: translate(-50%, -50%) $lazy-start;
|
40
|
+
background-color: $lazy-bg;
|
41
|
+
border: $lazy-border;
|
42
|
+
box-shadow: $lazy-shadow;
|
43
|
+
padding: $lazy-padding;
|
44
|
+
position: fixed;
|
45
|
+
box-sizing: border-box;
|
46
|
+
z-index: $lazy-z-index + 1;
|
47
|
+
overflow: auto;
|
48
|
+
max-height: 100vh;
|
49
|
+
max-width: 100vw;
|
50
|
+
transition: opacity $lazy-transition ease-in-out, transform $lazy-transition ease-in-out, visibility $lazy-transition;
|
39
51
|
&.confirm { max-width: 300px; }
|
40
52
|
.lazy_buttons { margin-top: 15px; text-align: right; }
|
41
53
|
.lazy-img { display: block; }
|
42
|
-
#
|
54
|
+
#lazy_body {
|
55
|
+
position: relative;
|
56
|
+
}
|
43
57
|
}
|
44
58
|
|
45
|
-
|
59
|
+
#lazy_close {
|
60
|
+
border: none;
|
46
61
|
background: transparent;
|
47
62
|
color: gray;
|
48
63
|
cursor: pointer;
|
49
64
|
display: none;
|
50
65
|
font: bold 26px/100% Arial, Helvetica, sans-serif;
|
51
|
-
height: 25px;
|
52
66
|
position: absolute;
|
53
|
-
right:
|
67
|
+
right: 5px;
|
54
68
|
text-align: center;
|
55
69
|
top: 0;
|
56
|
-
|
57
|
-
|
58
|
-
|
70
|
+
padding: 0;
|
71
|
+
margin: 0;
|
72
|
+
transition: color .3s;
|
73
|
+
&:after { content: $lazy-close; }
|
59
74
|
&:hover { color: black; }
|
60
75
|
&.visible { display: block; }
|
76
|
+
&:focus { outline: none; }
|
61
77
|
}
|
data/lib/lazybox.rb
CHANGED
@@ -1,4 +1,23 @@
|
|
1
1
|
module Lazybox
|
2
|
+
|
2
3
|
class Engine < Rails::Engine
|
3
4
|
end
|
5
|
+
|
6
|
+
module Helper
|
7
|
+
|
8
|
+
def render_lazybox
|
9
|
+
content_tag(:div, '', id: :lazy_overlay, class: ('active' if content_for(:lazybox))) +
|
10
|
+
content_tag(:div, id: :lazybox) do
|
11
|
+
button_tag('', id: :lazy_close, class: :visible) +
|
12
|
+
content_tag(:div, id: :lazy_body) do
|
13
|
+
content_for(:lazybox)
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
ActiveSupport.on_load(:action_view) do
|
22
|
+
include Lazybox::Helper
|
4
23
|
end
|
data/lib/lazybox/version.rb
CHANGED
metadata
CHANGED
@@ -1,30 +1,27 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lazybox
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0
|
5
|
-
prerelease:
|
4
|
+
version: 1.1.0
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Alex Galushka
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date: 2014-
|
11
|
+
date: 2014-12-12 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: jquery-rails
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
|
-
- -
|
17
|
+
- - ">="
|
20
18
|
- !ruby/object:Gem::Version
|
21
19
|
version: '0'
|
22
20
|
type: :development
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
|
-
- -
|
24
|
+
- - ">="
|
28
25
|
- !ruby/object:Gem::Version
|
29
26
|
version: '0'
|
30
27
|
description: Lazybox is a jQuery-based, lightbox that can display entire remote pages,
|
@@ -37,33 +34,32 @@ extensions: []
|
|
37
34
|
extra_rdoc_files: []
|
38
35
|
files:
|
39
36
|
- README.md
|
40
|
-
- lib/lazybox/version.rb
|
41
|
-
- lib/lazybox.rb
|
42
|
-
- app/assets/stylesheets/lazybox.css.scss
|
43
37
|
- app/assets/javascripts/lazybox.js.coffee
|
38
|
+
- app/assets/javascripts/lazybox.js.js
|
39
|
+
- app/assets/stylesheets/lazybox.css.scss
|
40
|
+
- lib/lazybox.rb
|
41
|
+
- lib/lazybox/version.rb
|
44
42
|
homepage: https://github.com/galulex/lazybox
|
45
43
|
licenses: []
|
44
|
+
metadata: {}
|
46
45
|
post_install_message:
|
47
46
|
rdoc_options: []
|
48
47
|
require_paths:
|
49
48
|
- lib
|
50
49
|
required_ruby_version: !ruby/object:Gem::Requirement
|
51
|
-
none: false
|
52
50
|
requirements:
|
53
|
-
- -
|
51
|
+
- - ">="
|
54
52
|
- !ruby/object:Gem::Version
|
55
53
|
version: '0'
|
56
54
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
55
|
requirements:
|
59
|
-
- -
|
56
|
+
- - ">="
|
60
57
|
- !ruby/object:Gem::Version
|
61
58
|
version: '0'
|
62
59
|
requirements: []
|
63
60
|
rubyforge_project:
|
64
|
-
rubygems_version:
|
61
|
+
rubygems_version: 2.2.2
|
65
62
|
signing_key:
|
66
|
-
specification_version:
|
63
|
+
specification_version: 4
|
67
64
|
summary: Use LazyBox for popup windows with Rails
|
68
65
|
test_files: []
|
69
|
-
has_rdoc:
|