netsign-ios-checkboxes 0.1.2

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.
@@ -0,0 +1,7 @@
1
+ .DS_Store
2
+ pkg/*
3
+ *.gem
4
+ *.rbc
5
+ *.swp
6
+ .bundle
7
+ Gemfile.lock
@@ -0,0 +1,61 @@
1
+ # iOS Style Checkboxes for Rails 3.1
2
+
3
+
4
+ This gem provides an easy way of using [iOS style checkboxes](https://github.com/tdreyno/iphone-style-checkboxes).
5
+
6
+
7
+ ## Install
8
+
9
+ Please be sure to have [Rails Assets Pipeline](http://guides.rubyonrails.org/asset_pipeline.html) enabled.
10
+
11
+ Add the following to your `Gemfile`, preferably inside the assets group:
12
+
13
+ ```ruby
14
+ gem 'ios-checkboxes'
15
+ gem 'jquery' # This is required by ios-checkboxes
16
+ ```
17
+
18
+ Then as usually:
19
+
20
+ ```bash
21
+ $ bundle install
22
+ ```
23
+
24
+ ## Usage
25
+
26
+ After installation, all you need to do is to require `ios-checkboxes` inside JavaScript/CoffeeScript and CSS files.
27
+
28
+ Usually you would add this to your `app/assets/javascripts/application.js` file:
29
+
30
+ ```javascript
31
+ //= require ios-checkboxes
32
+ ```
33
+
34
+ This will also automatically require `jquery`.
35
+
36
+ And also update your `app/assets/javascripts/applications.css` to inlude `ios-checkboxes`
37
+
38
+ ```css
39
+ /*
40
+ *= require ios-checkboxes
41
+ *= require_self
42
+ */
43
+ ```
44
+
45
+ That's it. Now you can write stuff like `$(".on-off").iphoneStyle()`.
46
+
47
+ ## Development
48
+
49
+ - Source hosted at [GitHub](https://github.com/tdreyno/iphone-style-checkboxes). See `rails` directory.
50
+ - Report issues and feature requests to [GitHub Issues](https://github.com/tdreyno/iphone-style-checkboxes/issues)
51
+
52
+ To update the gem with the latest files do:
53
+
54
+ ```bash
55
+ cd rails
56
+ rake update
57
+ # Now go and update the version manually in lib/ios-checkboxes/version.rb
58
+ git add .
59
+ git commit -m 'update rails gem'
60
+ rake release
61
+ ```
@@ -0,0 +1,22 @@
1
+ require 'rake'
2
+ require 'bundler/gem_tasks'
3
+
4
+ desc "Update the gem with the latest files"
5
+ task :update do
6
+ # Copy the js file and require jQuery
7
+ js_content = File.read "../jquery/iphone-style-checkboxes.js"
8
+ f = File.new("vendor/assets/javascripts/ios-checkboxes.js", "w")
9
+ f.write("//= require jquery\n\n#{js_content}")
10
+ f.close
11
+
12
+ # Copy the images
13
+ cp_r "../images/", "vendor/assets/"
14
+
15
+ # Copy CSS and make sure it references the images via assets pipeline
16
+ css_content = File.read "../style.css"
17
+ pattern = /url\('images\/([^']+)'\)/
18
+ css_processed = css_content.gsub(pattern) {|m| "url('<%= image_path \"#{$1.sub(/\?.*/, '')}\" %>')" }
19
+ f2 = File.new("vendor/assets/stylesheets/ios-checkboxes.css.erb", "w")
20
+ f2.write(css_processed)
21
+ f2.close
22
+ end
@@ -0,0 +1,19 @@
1
+ # -*- encoding: utf-8 -*-
2
+ require File.expand_path('../lib/ios-checkboxes/version', __FILE__)
3
+
4
+ Gem::Specification.new do |s|
5
+ s.name = "netsign-ios-checkboxes"
6
+ s.version = IOSCheckboxes::VERSION
7
+ s.authors = ["Thomas Reynolds"]
8
+ s.email = ["me@tdreyno.com"]
9
+ s.homepage = "https://github.com/thermistor/iphone-style-checkboxes"
10
+ s.summary = %q{iOS-style Checkboxes}
11
+ s.description = %q{iOS-style Checkboxes for Rails asset pipeline. Customized specifically for Netsign requirements.}
12
+
13
+ s.rubyforge_project = "netsign-ios-checkboxes"
14
+ s.add_dependency "railties", "~> 3.1"
15
+
16
+ s.files = `git ls-files`.split("\n")
17
+
18
+ s.require_paths = ["lib"]
19
+ end
@@ -0,0 +1,6 @@
1
+ require "ios-checkboxes/version"
2
+
3
+ module IOSCheckboxes
4
+ class Engine < ::Rails::Engine
5
+ end
6
+ end
@@ -0,0 +1,3 @@
1
+ module IOSCheckboxes
2
+ VERSION = "0.1.2"
3
+ end
@@ -0,0 +1,283 @@
1
+ //= require jquery
2
+
3
+ (function() {
4
+ var iOSCheckbox,
5
+ __slice = Array.prototype.slice;
6
+
7
+ iOSCheckbox = (function() {
8
+
9
+ function iOSCheckbox(elem, options) {
10
+ var key, opts, value;
11
+ this.elem = $(elem);
12
+ opts = $.extend({}, iOSCheckbox.defaults, options);
13
+ for (key in opts) {
14
+ value = opts[key];
15
+ this[key] = value;
16
+ }
17
+ this.elem.data(this.dataName, this);
18
+ this.wrapCheckboxWithDivs();
19
+ this.attachEvents();
20
+ this.disableTextSelection();
21
+ if (this.resizeHandle) this.optionallyResize('handle');
22
+ if (this.resizeContainer) this.optionallyResize('container');
23
+ this.initialPosition();
24
+ }
25
+
26
+ iOSCheckbox.prototype.isDisabled = function() {
27
+ return this.elem.is(':disabled');
28
+ };
29
+
30
+ iOSCheckbox.prototype.wrapCheckboxWithDivs = function() {
31
+ this.elem.wrap("<div class='" + this.containerClass + "' />");
32
+ this.container = this.elem.parent();
33
+ this.offLabel = $("<label class='" + this.labelOffClass + "'>\n <span>" + this.uncheckedLabel + "</span>\n</label>").appendTo(this.container);
34
+ this.offSpan = this.offLabel.children('span');
35
+ this.onLabel = $("<label class='" + this.labelOnClass + "'>\n <span>" + this.checkedLabel + "</span>\n</label>").appendTo(this.container);
36
+ this.onSpan = this.onLabel.children('span');
37
+ return this.handle = $("<div class='" + this.handleClass + "'>\n <div class='" + this.handleRightClass + "'>\n <div class='" + this.handleCenterClass + "' />\n </div>\n</div>").appendTo(this.container);
38
+ };
39
+
40
+ iOSCheckbox.prototype.disableTextSelection = function() {
41
+ if ($.browser.msie) {
42
+ return $([this.handle, this.offLabel, this.onLabel, this.container]).attr("unselectable", "on");
43
+ }
44
+ };
45
+
46
+ iOSCheckbox.prototype._getDimension = function(elem, dimension) {
47
+ if ($.fn.actual != null) {
48
+ return elem.actual(dimension);
49
+ } else {
50
+ return elem[dimension]();
51
+ }
52
+ };
53
+
54
+ iOSCheckbox.prototype.optionallyResize = function(mode) {
55
+ var newWidth, offLabelWidth, onLabelWidth;
56
+ onLabelWidth = this._getDimension(this.onLabel, "width");
57
+ offLabelWidth = this._getDimension(this.offLabel, "width");
58
+ if (mode === "container") {
59
+ newWidth = onLabelWidth > offLabelWidth ? onLabelWidth : offLabelWidth;
60
+ newWidth += this._getDimension(this.handle, "width") + this.handleMargin;
61
+ return this.container.css({
62
+ width: newWidth
63
+ });
64
+ } else {
65
+ newWidth = onLabelWidth > offLabelWidth ? onLabelWidth : offLabelWidth;
66
+ return this.handle.css({
67
+ width: newWidth
68
+ });
69
+ }
70
+ };
71
+
72
+ iOSCheckbox.prototype.onMouseDown = function(event) {
73
+ var x;
74
+ event.preventDefault();
75
+ if (this.isDisabled()) return;
76
+ x = event.pageX || event.originalEvent.changedTouches[0].pageX;
77
+ iOSCheckbox.currentlyClicking = this.handle;
78
+ iOSCheckbox.dragStartPosition = x;
79
+ return iOSCheckbox.handleLeftOffset = parseInt(this.handle.css('left'), 10) || 0;
80
+ };
81
+
82
+ iOSCheckbox.prototype.onDragMove = function(event, x) {
83
+ var newWidth, p;
84
+ if (iOSCheckbox.currentlyClicking !== this.handle) return;
85
+ p = (x + iOSCheckbox.handleLeftOffset - iOSCheckbox.dragStartPosition) / this.rightSide;
86
+ if (p < 0) p = 0;
87
+ if (p > 1) p = 1;
88
+ newWidth = p * this.rightSide;
89
+ this.handle.css({
90
+ left: newWidth
91
+ });
92
+ this.onLabel.css({
93
+ width: newWidth + this.handleRadius
94
+ });
95
+ this.offSpan.css({
96
+ marginRight: -newWidth
97
+ });
98
+ return this.onSpan.css({
99
+ marginLeft: -(1 - p) * this.rightSide
100
+ });
101
+ };
102
+
103
+ iOSCheckbox.prototype.onDragEnd = function(event, x) {
104
+ var p;
105
+ if (iOSCheckbox.currentlyClicking !== this.handle) return;
106
+ if (this.isDisabled()) return;
107
+ if (iOSCheckbox.dragging) {
108
+ p = (x - iOSCheckbox.dragStartPosition) / this.rightSide;
109
+ this.elem.prop('checked', p >= 0.5);
110
+ } else {
111
+ this.elem.prop('checked', !this.elem.prop('checked'));
112
+ }
113
+ iOSCheckbox.currentlyClicking = null;
114
+ iOSCheckbox.dragging = null;
115
+ return this.elem.trigger('change');
116
+ };
117
+
118
+ iOSCheckbox.prototype.refresh = function() {
119
+ return this.didChange();
120
+ };
121
+
122
+ iOSCheckbox.prototype.didChange = function() {
123
+ var new_left;
124
+ if (typeof this.onChange === "function") {
125
+ this.onChange(this.elem, this.elem.prop('checked'));
126
+ }
127
+ if (this.isDisabled()) {
128
+ this.container.addClass(this.disabledClass);
129
+ return false;
130
+ } else {
131
+ this.container.removeClass(this.disabledClass);
132
+ }
133
+ new_left = this.elem.prop('checked') ? this.rightSide : 0;
134
+ this.handle.animate({
135
+ left: new_left
136
+ }, this.duration);
137
+ this.onLabel.animate({
138
+ width: new_left + this.handleRadius
139
+ }, this.duration);
140
+ this.offSpan.animate({
141
+ marginRight: -new_left
142
+ }, this.duration);
143
+ return this.onSpan.animate({
144
+ marginLeft: new_left - this.rightSide
145
+ }, this.duration);
146
+ };
147
+
148
+ iOSCheckbox.prototype.attachEvents = function() {
149
+ var localMouseMove, localMouseUp, self;
150
+ self = this;
151
+ localMouseMove = function(event) {
152
+ return self.onGlobalMove.apply(self, arguments);
153
+ };
154
+ localMouseUp = function(event) {
155
+ self.onGlobalUp.apply(self, arguments);
156
+ $(document).unbind('mousemove touchmove', localMouseMove);
157
+ return $(document).unbind('mouseup touchend', localMouseUp);
158
+ };
159
+ this.elem.change(function() {
160
+ return self.refresh();
161
+ });
162
+ return this.container.bind('mousedown touchstart', function(event) {
163
+ self.onMouseDown.apply(self, arguments);
164
+ $(document).bind('mousemove touchmove', localMouseMove);
165
+ return $(document).bind('mouseup touchend', localMouseUp);
166
+ });
167
+ };
168
+
169
+ iOSCheckbox.prototype.initialPosition = function() {
170
+ var containerWidth, offset;
171
+ containerWidth = this._getDimension(this.container, "width");
172
+ this.offLabel.css({
173
+ width: containerWidth - this.containerRadius
174
+ });
175
+ offset = this.containerRadius + 1;
176
+ if ($.browser.msie && $.browser.version < 7) offset -= 3;
177
+ this.rightSide = containerWidth - this._getDimension(this.handle, "width") - offset;
178
+ if (this.elem.is(':checked')) {
179
+ this.handle.css({
180
+ left: this.rightSide
181
+ });
182
+ this.onLabel.css({
183
+ width: this.rightSide + this.handleRadius
184
+ });
185
+ this.offSpan.css({
186
+ marginRight: -this.rightSide
187
+ });
188
+ } else {
189
+ this.onLabel.css({
190
+ width: 0
191
+ });
192
+ this.onSpan.css({
193
+ marginLeft: -this.rightSide
194
+ });
195
+ }
196
+ if (this.isDisabled()) return this.container.addClass(this.disabledClass);
197
+ };
198
+
199
+ iOSCheckbox.prototype.onGlobalMove = function(event) {
200
+ var x;
201
+ if (!(!this.isDisabled() && iOSCheckbox.currentlyClicking)) return;
202
+ event.preventDefault();
203
+ x = event.pageX || event.originalEvent.changedTouches[0].pageX;
204
+ if (!iOSCheckbox.dragging && (Math.abs(iOSCheckbox.dragStartPosition - x) > this.dragThreshold)) {
205
+ iOSCheckbox.dragging = true;
206
+ }
207
+ return this.onDragMove(event, x);
208
+ };
209
+
210
+ iOSCheckbox.prototype.onGlobalUp = function(event) {
211
+ var x;
212
+ if (!iOSCheckbox.currentlyClicking) return;
213
+ event.preventDefault();
214
+ x = event.pageX || event.originalEvent.changedTouches[0].pageX;
215
+ this.onDragEnd(event, x);
216
+ return false;
217
+ };
218
+
219
+ iOSCheckbox.defaults = {
220
+ duration: 200,
221
+ checkedLabel: 'ON',
222
+ uncheckedLabel: 'OFF',
223
+ resizeHandle: true,
224
+ resizeContainer: true,
225
+ disabledClass: 'iPhoneCheckDisabled',
226
+ containerClass: 'iPhoneCheckContainer',
227
+ labelOnClass: 'iPhoneCheckLabelOn',
228
+ labelOffClass: 'iPhoneCheckLabelOff',
229
+ handleClass: 'iPhoneCheckHandle',
230
+ handleCenterClass: 'iPhoneCheckHandleCenter',
231
+ handleRightClass: 'iPhoneCheckHandleRight',
232
+ dragThreshold: 5,
233
+ handleMargin: 15,
234
+ handleRadius: 4,
235
+ containerRadius: 5,
236
+ dataName: "iphoneStyle",
237
+ onChange: function() {}
238
+ };
239
+
240
+ return iOSCheckbox;
241
+
242
+ })();
243
+
244
+ $.iphoneStyle = this.iOSCheckbox = iOSCheckbox;
245
+
246
+ $.fn.iphoneStyle = function() {
247
+ var args, checkbox, dataName, existingControl, method, params, _i, _len, _ref, _ref2, _ref3, _ref4;
248
+ args = 1 <= arguments.length ? __slice.call(arguments, 0) : [];
249
+ dataName = (_ref = (_ref2 = args[0]) != null ? _ref2.dataName : void 0) != null ? _ref : iOSCheckbox.defaults.dataName;
250
+ _ref3 = this.filter(':checkbox');
251
+ for (_i = 0, _len = _ref3.length; _i < _len; _i++) {
252
+ checkbox = _ref3[_i];
253
+ existingControl = $(checkbox).data(dataName);
254
+ if (existingControl != null) {
255
+ method = args[0], params = 2 <= args.length ? __slice.call(args, 1) : [];
256
+ if ((_ref4 = existingControl[method]) != null) {
257
+ _ref4.apply(existingControl, params);
258
+ }
259
+ } else {
260
+ new iOSCheckbox(checkbox, args[0]);
261
+ }
262
+ }
263
+ return this;
264
+ };
265
+
266
+ $.fn.iOSCheckbox = function(options) {
267
+ var opts;
268
+ if (options == null) options = {};
269
+ opts = $.extend({}, options, {
270
+ resizeHandle: false,
271
+ disabledClass: 'iOSCheckDisabled',
272
+ containerClass: 'iOSCheckContainer',
273
+ labelOnClass: 'iOSCheckLabelOn',
274
+ labelOffClass: 'iOSCheckLabelOff',
275
+ handleClass: 'iOSCheckHandle',
276
+ handleCenterClass: 'iOSCheckHandleCenter',
277
+ handleRightClass: 'iOSCheckHandleRight',
278
+ dataName: 'iOSCheckbox'
279
+ });
280
+ return this.iphoneStyle(opts);
281
+ };
282
+
283
+ }).call(this);
@@ -0,0 +1,145 @@
1
+ .iPhoneCheckContainer {
2
+ position: relative;
3
+ height: 27px;
4
+ cursor: pointer;
5
+ overflow: hidden; }
6
+ .iPhoneCheckContainer input {
7
+ position: absolute;
8
+ top: 5px;
9
+ left: 30px;
10
+ filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
11
+ opacity: 0; }
12
+ .iPhoneCheckContainer label {
13
+ white-space: nowrap;
14
+ font-size: 17px;
15
+ line-height: 17px;
16
+ font-weight: bold;
17
+ font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
18
+ cursor: pointer;
19
+ display: block;
20
+ height: 27px;
21
+ position: absolute;
22
+ width: auto;
23
+ top: 0;
24
+ padding-top: 5px;
25
+ overflow: hidden; }
26
+ .iPhoneCheckContainer, .iPhoneCheckContainer label {
27
+ user-select: none;
28
+ -moz-user-select: none;
29
+ -khtml-user-select: none; }
30
+
31
+ .iPhoneCheckDisabled {
32
+ filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=50);
33
+ opacity: 0.5; }
34
+
35
+ label.iPhoneCheckLabelOn {
36
+ color: white;
37
+ background: url('<%= image_path "iphone-style-checkboxes/on.png" %>') no-repeat;
38
+ text-shadow: 0px 0px 2px rgba(0, 0, 0, 0.6);
39
+ left: 0;
40
+ padding-top: 5px; }
41
+ label.iPhoneCheckLabelOn span {
42
+ padding-left: 8px; }
43
+ label.iPhoneCheckLabelOff {
44
+ color: #8b8b8b;
45
+ background: url('<%= image_path "iphone-style-checkboxes/off.png" %>') no-repeat right 0;
46
+ text-shadow: 0px 0px 2px rgba(255, 255, 255, 0.6);
47
+ text-align: right;
48
+ right: 0; }
49
+ label.iPhoneCheckLabelOff span {
50
+ padding-right: 8px; }
51
+
52
+ .iPhoneCheckHandle {
53
+ display: block;
54
+ height: 27px;
55
+ cursor: pointer;
56
+ position: absolute;
57
+ top: 0;
58
+ left: 0;
59
+ width: 0;
60
+ background: url('<%= image_path "iphone-style-checkboxes/slider_left.png" %>') no-repeat;
61
+ padding-left: 3px; }
62
+
63
+ .iPhoneCheckHandleRight {
64
+ height: 100%;
65
+ width: 100%;
66
+ padding-right: 3px;
67
+ background: url('<%= image_path "iphone-style-checkboxes/slider_right.png" %>') no-repeat right 0; }
68
+
69
+ .iPhoneCheckHandleCenter {
70
+ height: 100%;
71
+ width: 100%;
72
+ background: url('<%= image_path "iphone-style-checkboxes/slider_center.png" %>'); }
73
+
74
+ .iOSCheckContainer {
75
+ position: relative;
76
+ height: 27px;
77
+ cursor: pointer;
78
+ overflow: hidden; }
79
+ .iOSCheckContainer input {
80
+ position: absolute;
81
+ top: 5px;
82
+ left: 30px;
83
+ filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
84
+ opacity: 0; }
85
+ .iOSCheckContainer label {
86
+ white-space: nowrap;
87
+ font-size: 17px;
88
+ line-height: 17px;
89
+ font-weight: bold;
90
+ font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
91
+ cursor: pointer;
92
+ display: block;
93
+ height: 27px;
94
+ position: absolute;
95
+ width: auto;
96
+ top: 0;
97
+ padding-top: 5px;
98
+ overflow: hidden; }
99
+ .iOSCheckContainer, .iOSCheckContainer label {
100
+ user-select: none;
101
+ -moz-user-select: none;
102
+ -khtml-user-select: none; }
103
+
104
+ .iOSCheckDisabled {
105
+ filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=50);
106
+ opacity: 0.5; }
107
+
108
+ label.iOSCheckLabelOn {
109
+ color: white;
110
+ background: url('<%= image_path "ios-style-checkboxes/on.png" %>') no-repeat;
111
+ text-shadow: 0px 0px 2px rgba(0, 0, 0, 0.6);
112
+ left: 0;
113
+ padding-top: 5px; }
114
+ label.iOSCheckLabelOn span {
115
+ padding-left: 8px; }
116
+ label.iOSCheckLabelOff {
117
+ color: #8b8b8b;
118
+ background: url('<%= image_path "ios-style-checkboxes/off.png" %>') no-repeat right 0;
119
+ text-shadow: 0px 0px 2px rgba(255, 255, 255, 0.6);
120
+ text-align: right;
121
+ right: 0; }
122
+ label.iOSCheckLabelOff span {
123
+ padding-right: 8px; }
124
+
125
+ .iOSCheckHandle {
126
+ display: block;
127
+ height: 27px;
128
+ cursor: pointer;
129
+ position: absolute;
130
+ top: 0;
131
+ left: 0;
132
+ width: 0;
133
+ background: url('<%= image_path "ios-style-checkboxes/slider_left.png" %>') no-repeat;
134
+ padding-left: 3px; }
135
+
136
+ .iOSCheckHandleRight {
137
+ height: 100%;
138
+ width: 100%;
139
+ padding-right: 3px;
140
+ background: url('<%= image_path "ios-style-checkboxes/slider_right.png" %>') no-repeat right 0; }
141
+
142
+ .iOSCheckHandleCenter {
143
+ height: 100%;
144
+ width: 100%;
145
+ background: url('<%= image_path "ios-style-checkboxes/slider_center.png" %>'); }
metadata ADDED
@@ -0,0 +1,77 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: netsign-ios-checkboxes
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.2
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Thomas Reynolds
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2012-01-25 00:00:00.000000000Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: railties
16
+ requirement: &70297727383340 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ~>
20
+ - !ruby/object:Gem::Version
21
+ version: '3.1'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: *70297727383340
25
+ description: iOS-style Checkboxes for Rails asset pipeline. Customized specifically
26
+ for Netsign requirements.
27
+ email:
28
+ - me@tdreyno.com
29
+ executables: []
30
+ extensions: []
31
+ extra_rdoc_files: []
32
+ files:
33
+ - .gitignore
34
+ - README.md
35
+ - Rakefile
36
+ - ios-checkboxes.gemspec
37
+ - lib/ios-checkboxes.rb
38
+ - lib/ios-checkboxes/version.rb
39
+ - vendor/assets/images/ios-style-checkboxes/off.png
40
+ - vendor/assets/images/ios-style-checkboxes/on.png
41
+ - vendor/assets/images/ios-style-checkboxes/slider.png
42
+ - vendor/assets/images/ios-style-checkboxes/slider_center.png
43
+ - vendor/assets/images/ios-style-checkboxes/slider_left.png
44
+ - vendor/assets/images/ios-style-checkboxes/slider_right.png
45
+ - vendor/assets/images/iphone-style-checkboxes/off.png
46
+ - vendor/assets/images/iphone-style-checkboxes/on.png
47
+ - vendor/assets/images/iphone-style-checkboxes/slider.png
48
+ - vendor/assets/images/iphone-style-checkboxes/slider_center.png
49
+ - vendor/assets/images/iphone-style-checkboxes/slider_left.png
50
+ - vendor/assets/images/iphone-style-checkboxes/slider_right.png
51
+ - vendor/assets/javascripts/ios-checkboxes.js
52
+ - vendor/assets/stylesheets/ios-checkboxes.css.erb
53
+ homepage: https://github.com/thermistor/iphone-style-checkboxes
54
+ licenses: []
55
+ post_install_message:
56
+ rdoc_options: []
57
+ require_paths:
58
+ - lib
59
+ required_ruby_version: !ruby/object:Gem::Requirement
60
+ none: false
61
+ requirements:
62
+ - - ! '>='
63
+ - !ruby/object:Gem::Version
64
+ version: '0'
65
+ required_rubygems_version: !ruby/object:Gem::Requirement
66
+ none: false
67
+ requirements:
68
+ - - ! '>='
69
+ - !ruby/object:Gem::Version
70
+ version: '0'
71
+ requirements: []
72
+ rubyforge_project: netsign-ios-checkboxes
73
+ rubygems_version: 1.8.15
74
+ signing_key:
75
+ specification_version: 3
76
+ summary: iOS-style Checkboxes
77
+ test_files: []