videojs_rails 4.6.1 → 4.6.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.
checksums.yaml CHANGED
@@ -1,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- YWRiNDk4MmMzNDNjM2I0OGNhMmVjZmJmMTY2ZWUyN2ZjMmNjNmEzYw==
5
- data.tar.gz: !binary |-
6
- YjdmMTEzNmNjNmQ0OGRjYjU2NTU2MzQ2NDMwMjlhZDY5ZmRkMzg2MA==
2
+ SHA1:
3
+ metadata.gz: 0819bb260798350cd1325898f1189b7e242922c6
4
+ data.tar.gz: 751aec8a3168a22203e457ef86a59c30d90bba36
7
5
  SHA512:
8
- metadata.gz: !binary |-
9
- MGE0ZjBiYzEwZDJkMWNmZDY5YjFmOGFjMmYwOWUwMjE0ZWMwMzhiODgwMjYx
10
- MDYwMzQ1Nzc4MDU2Y2I4YWZkNWIyZDJhMzk1M2Q1ZmVhN2M3Y2NiNGUwYjE0
11
- NzlmNDA0NzhkYWU1MzI5MTU0Nzc4MGQyZDgxNjE4N2RiOWQyM2U=
12
- data.tar.gz: !binary |-
13
- YjRmOTA2YjRlMjYwYmM4NGE5NjQ3Y2NjYzQwNGI0M2U4ZDBhZDEwYzAwMGVl
14
- NGVmNTQ0YmMzMzhjOWJkODQxMGM4NzE0MDgyMzU2ZjIzY2M2NGJkMDdjY2Jm
15
- MTUyMDJlOGExNGE4Zjc3YjU5NTY5MzE0MTJiMjBkOGExNGJkODE=
6
+ metadata.gz: 6e0360175c5797559db8b7454612bf1656b1ba58fd0c6baf81b114dd374cc1f61f2cff7674b3c2e365dfb00463ea494ff7c42fb45cfff72be59620edb9a5a60d
7
+ data.tar.gz: 4cc0ebffb1130e849161679e4d6b21d4087e89ef80489a8e20c095ff51e45048b18b657b804a5f9ea2c5f498da0d7cd1f86dfe1996c06093833866574d1dee86
data/Rakefile CHANGED
@@ -1 +1,77 @@
1
1
  require 'bundler/gem_tasks'
2
+
3
+ # Build the version of video.js and tag us to match
4
+
5
+ VIDEO_JS_RAILS_HOME = File.expand_path(File.dirname(__FILE__))
6
+ VIDEO_JS_HOME = File.expand_path('../video.js', VIDEO_JS_RAILS_HOME)
7
+
8
+ VIDEO_JS_RAKE_USAGE = "Usage: rake videojs:update TAG=v4.12.5"
9
+
10
+ namespace :videojs do
11
+ task :update => [:build, :commit]
12
+
13
+ task :build do
14
+ tag = ENV['TAG'] or abort VIDEO_JS_RAKE_USAGE
15
+ Dir.chdir(VIDEO_JS_HOME) do
16
+ puts "* Building video.js #{tag} using grunt"
17
+ unless ENV['NOBUILD']
18
+ sh "git checkout -q master"
19
+ sh "git pull -q"
20
+ sh "git checkout -q #{tag}"
21
+ sh "grunt"
22
+ end
23
+
24
+ # Copy files into our Rails structure
25
+ puts
26
+ puts "* Copying files to vendor/assets"
27
+ sh "cp #{VIDEO_JS_HOME}/dist/video-js/font/* #{VIDEO_JS_RAILS_HOME}/vendor/assets/fonts/"
28
+ sh "cp #{VIDEO_JS_HOME}/dist/video-js/video-js.css #{VIDEO_JS_RAILS_HOME}/vendor/assets/stylesheets/"
29
+ sh "cp #{VIDEO_JS_HOME}/dist/video-js/video-js.swf #{VIDEO_JS_RAILS_HOME}/vendor/assets/javascripts/"
30
+ sh "cp #{VIDEO_JS_HOME}/dist/video-js/video.dev.js #{VIDEO_JS_RAILS_HOME}/vendor/assets/javascripts/"
31
+
32
+ # Now, perform some asset_path and other substitutions
33
+ puts
34
+ puts "* Updating videojs-css.erb for Rails asset pipeline"
35
+ css = "#{VIDEO_JS_RAILS_HOME}/vendor/assets/stylesheets/video-js.css"
36
+ File.open("#{css}.erb", 'w') do |out|
37
+ File.foreach(css) do |line|
38
+ # Handle fonts => url('<%= asset_path('vjs.woff') %>') format('woff')
39
+ out <<
40
+ line.gsub(/url\(('*)font\/(vjs[^\)]+)\)(\s+format[^\)]+\))?/, 'url(<%= asset_path(\1\2) %>)\3')
41
+ end
42
+ end
43
+ sh "rm -f #{css}"
44
+
45
+ puts
46
+ puts "* Updating video.js.erb for Rails asset pipeline"
47
+ jsdev = "#{VIDEO_JS_RAILS_HOME}/vendor/assets/javascripts/video.dev.js"
48
+ jserb = "#{VIDEO_JS_RAILS_HOME}/vendor/assets/javascripts/video.js.erb"
49
+ File.open(jserb, 'w') do |out|
50
+ File.foreach(jsdev) do |line|
51
+ # Handle swf => asset_path('video-js.swf')
52
+ out <<
53
+ line.sub(/(videojs\.options\['flash'\]\['swf'\]\s*=\s*).*/, %q(\1"<%= asset_path('video-js.swf') %>";))
54
+ end
55
+ end
56
+ sh "rm -f #{jsdev}"
57
+ sh "rm -f #{VIDEO_JS_RAILS_HOME}/vendor/assets/javascripts/video.js"
58
+ end
59
+ end
60
+
61
+ task :commit do
62
+ tag = ENV['TAG'] or abort VIDEO_JS_RAKE_USAGE
63
+
64
+ # Update the gem version
65
+ version_file = "#{VIDEO_JS_RAILS_HOME}/lib/videojs_rails/version.rb"
66
+ lines = File.read(version_file)
67
+ File.open(version_file, 'w') do |out|
68
+ version_num = tag.sub(/^v/,'') # lose the "v" from the tag
69
+ puts "* Setting gem version = #{version_num}"
70
+ out << lines.sub(/(VERSION\s*=\s*)\S+/, "\\1'#{version_num}'")
71
+ end
72
+
73
+ sh "git add ."
74
+ sh "git commit -m 'Update to video.js #{tag}'"
75
+ puts "* Done. Now run 'rake release' to push to rubygems."
76
+ end
77
+ end
@@ -1,16 +1,33 @@
1
- <div class="video-js-box">
2
- <video id="<%=@options[:id]%>" class="<%= @options[:classes] %> video-js vjs-default-skin" controls preload="auto" width="<%=@options[:width]%>" height="<%=@options[:height]%>" poster="<%= @options[:poster] %>" data-setup="{}">
3
- <% if @options[:sources] %>
4
- <%- @options[:sources].each do |type, source| %>
5
- <source src="<%= source %>" type='video/<%= type %>' />
6
- <%- end %>
7
- <%- end %>
1
+ <%= content_tag(:video,
2
+ id: options[:id],
3
+ class: "#{ options[:classes] } vide-js vjs-default-skin",
4
+ controls: options[:controls],
5
+ loop: options[:loop],
6
+ autoplay: options[:autoplay],
7
+ preload: options[:preload],
8
+ width: options[:width],
9
+ height: options[:height],
10
+ poster: options[:poster],
11
+ 'data-setup' => options[:setup]) do
12
+ if options[:sources]
13
+ options[:sources].each do |type, source|
14
+ concat tag(:source, src: source, type: "video/#{ type }")
15
+ end
16
+ end
8
17
 
9
- <%# TODO: Add some function to change ISO country code to name %>
10
- <% if @options[:captions] %>
11
- <%- @options[:captions].each do |lang, caption| %>
12
- <track kind="captions" src="<%= caption %>" srclang="<%= lang %>" label="<%= lang %>"></track>
13
- <%- end %>
14
- <%- end %>
15
- </video>
16
- </div>
18
+ if options[:captions]
19
+ options[:captions].each do |lang, caption|
20
+ if caption.is_a?(Hash)
21
+ caption_src = caption[:src]
22
+ caption_label = caption[:label]
23
+ else
24
+ caption_src = caption
25
+ end
26
+
27
+ concat tag(:track, kind: :captions, src: caption_src, srclang: lang, label: caption_label, default: (options[:default_caption_language].present? && options[:default_caption_language].to_sym == lang.to_sym))
28
+ end
29
+ end
30
+
31
+ concat content_tag(:p, class: 'vjs-no-js') { yield }
32
+ end
33
+ %>
@@ -1,3 +1,3 @@
1
1
  module VideojsRails
2
- VERSION = "4.6.1"
2
+ VERSION = '4.6.2'
3
3
  end
@@ -1,9 +1,12 @@
1
1
  module VideojsRails
2
2
  module ViewHelpers
3
- def videojs_rails(*options)
4
- @options = options.extract_options!
5
- render "videojs_rails/videojs_rails"
3
+ def videojs_rails(*options, &blk)
4
+ default_options = {
5
+ controls: true,
6
+ preload: "auto"
7
+ }
8
+ options = default_options.merge(options.extract_options!)
9
+ render partial: 'videojs_rails/videojs_rails', locals: { options: options }, &blk
6
10
  end
7
11
  end
8
12
  end
9
-
data/readme.md CHANGED
@@ -1,4 +1,6 @@
1
- # VideoJS for Asset Pipeline
1
+ # VideoJS for Rails Asset Pipeline
2
+
3
+ Supports Rails 3.x and 4.x
2
4
 
3
5
  ## Installation
4
6
 
@@ -30,51 +32,99 @@ And that resource to application.css file
30
32
  */
31
33
  ```
32
34
 
33
- _currently skins are not implemented (after migrate to 4.1 version)_
34
-
35
35
  And to production.rb add this line
36
36
 
37
37
  ```ruby
38
38
  config.assets.precompile += %w( video-js.swf vjs.eot vjs.svg vjs.ttf vjs.woff )
39
39
  ```
40
40
 
41
+ In Rails > 4.1
42
+ Add this line to config/initializers/assets.rb
43
+
44
+ ```ruby
45
+ Rails.application.config.assets.precompile += %w( video-js.swf vjs.eot vjs.svg vjs.ttf vjs.woff )
46
+ ```
47
+
41
48
  ## Usage
42
49
 
43
50
  ```erb
44
- <%= videojs_rails sources: { mp4: "http://domain.com/path/to/video.mp4", webm: "http://another.com/path/to/video.webm" }, width:"400" %>
51
+ <%= videojs_rails sources: { mp4: "http://domain.com/path/to/video.mp4", webm: "http://another.com/path/to/video.webm"}, setup: "{}", controls: false, width:"400" %>
52
+ ```
53
+
54
+ If you want add a callback if user don't support JavaScript use block with displayed html code:
55
+
56
+ ```erb
57
+ <%= videojs_rails sources: { mp4: "http://domain.com/path/to/video.mp4", webm: "http://another.com/path/to/video.webm" }, width:"400" do %>
58
+ Please enable <b>JavaScript</b> to see this content.
59
+ <%- end %>
45
60
  ```
46
61
 
47
62
  ## Captions
48
63
 
49
- This is currently experimental function.
64
+ This is currently an experimental function.
50
65
 
51
66
  ```erb
52
- <%= videojs_rails sources: { mp4: "http://domain.com/path/to/video.mp4" }, width:"400", captions: { en: "http://domain.com/path/to/captions.vvt" } %>
67
+ <%= videojs_rails sources: { mp4: "http://domain.com/path/to/video.mp4" }, width:"400", captions: { en: { src: "http://domain.com/path/to/captions.vvt", label: "English" }, default_caption_language: :en } %>
53
68
  ```
54
69
 
70
+ ## Turbolinks
71
+
72
+ Some of you might want to use VideoJS with Turbolinks. [andrkrn](https://github.com/andrkrn) provided CoffeeScript that he use:
73
+
74
+ ```coffeescript
75
+ change = ->
76
+ for player in document.getElementsByClassName 'video-js'
77
+ video = videojs('example_video')
78
+
79
+ before_change = ->
80
+ for player in document.getElementsByClassName 'video-js'
81
+ video = videojs('example_video')
82
+ video.dispose()
83
+
84
+ $(document).on('page:before-change', before_change)
85
+ $(document).on('page:change', change)
86
+ ```
55
87
 
56
88
  ## Resources
57
89
  http://videojs.com/
58
90
  http://videojs.com/#getting-started
59
91
 
60
92
 
61
- ## Update from video.js release
93
+ ## Updating this gem to the latest video.js release
94
+
95
+ ### Clone this repository
96
+
97
+ git clone https://github.com/seanbehan/videojs_rails.git
98
+
99
+ ### Clone video.js repository
62
100
 
63
- ### Generate video.js distribution files
101
+ git clone https://github.com/videojs/video.js.git
64
102
 
65
- * Checkout release tag e.g. `git checkout v4.6.1`.
66
- * Run the build i.e. `grunt`.
67
103
 
68
- ### Copy video.js files into videojs_rails
104
+ ### Run the rake videojs:update task with the tag
69
105
 
70
- $ cp $VIDEO_JS_HOME/dist/video-js/video-js.swf $VIDEO_JS_RAILS_HOME/vendor/assets/flash/
71
- $ cp $VIDEO_JS_HOME/dist/video-js/font/* $VIDEO_JS_RAILS_HOME/vendor/assets/fonts/
72
- $ cp $VIDEO_JS_HOME/dist/video-js/video.dev.js $VIDEO_JS_RAILS_HOME/vendor/assets/javascripts/video.js.erb
73
- $ cp $VIDEO_JS_HOME/dist/video-js/video-js.css $VIDEO_JS_RAILS_HOME/vendor/assets/stylesheets/video-js.css.erb
106
+ TAG=v4.12.5
107
+ rake videojs:update
74
108
 
75
- ### Update video.js files with ERB from previous version of videojs_rails
109
+ Note: The build will fail if you don't have `grunt` installed. To install it:
76
110
 
77
- The following files need to be modified to use the Rails `asset_path` helper e.g. for the location of the Flash player SWF file and for the location of the various font files:
111
+ cd ../video.js
112
+ npm install -g grunt
113
+
114
+ ### Make sure everything is added to git
115
+
116
+ git add .
117
+ git ci -m "Update to $TAG"
118
+
119
+ ### Push to rubygems
78
120
 
79
121
  * $VIDEO_JS_RAILS_HOME/vendor/assets/javascripts/video.js.erb
80
122
  * $VIDEO_JS_RAILS_HOME/vendor/assets/stylesheets/video-js.css.erb
123
+
124
+ Alternatively, you can set the Flash player SWF file in your web view with the `videojs.options.flash.swf` command:
125
+ ```
126
+ <script>
127
+ videojs.options.flash.swf = "http://example.com/path/to/video-js.swf"
128
+ </script>
129
+ ```
130
+ As the instructions here suggests: https://github.com/videojs/video.js/blob/stable/docs/guides/setup.md#self-hosted
Binary file
@@ -111,7 +111,7 @@ vjs.options = {
111
111
  // Set CDN Version of swf
112
112
  // The added (+) blocks the replace from changing this 4.6 string
113
113
  if (vjs.CDN_VERSION !== 'GENERATED'+'_CDN_VSN') {
114
- videojs.options['flash']['swf'] = vjs.ACCESS_PROTOCOL + 'vjs.zencdn.net/'+vjs.CDN_VERSION+'/video-js.swf';
114
+ videojs.options['flash']['swf'] = "<%= asset_path('video-js.swf') %>";
115
115
  }
116
116
 
117
117
  /**
@@ -3205,20 +3205,6 @@ vjs.Player = vjs.Component.extend({
3205
3205
  // see enableTouchActivity in Component
3206
3206
  options.reportTouchActivity = false;
3207
3207
 
3208
- // Make sure the event listeners are the first things to happen when
3209
- // the player is ready. See #1208
3210
- // If not, the tech might fire events before the listeners are attached.
3211
- this.ready(function(){
3212
- this.on('loadstart', this.onLoadStart);
3213
- this.on('ended', this.onEnded);
3214
- this.on('play', this.onPlay);
3215
- this.on('firstplay', this.onFirstPlay);
3216
- this.on('pause', this.onPause);
3217
- this.on('progress', this.onProgress);
3218
- this.on('durationchange', this.onDurationChange);
3219
- this.on('fullscreenchange', this.onFullscreenChange);
3220
- });
3221
-
3222
3208
  // Run base component initializing with new options.
3223
3209
  // Builds the element through createEl()
3224
3210
  // Inits and embeds any child components in opts
@@ -3377,6 +3363,22 @@ vjs.Player.prototype.createEl = function(){
3377
3363
  }
3378
3364
  vjs.insertFirst(tag, el); // Breaks iPhone, fixed in HTML5 setup.
3379
3365
 
3366
+ // The event listeners need to be added before the children are added
3367
+ // in the component init because the tech (loaded with mediaLoader) may
3368
+ // fire events, like loadstart, that these events need to capture.
3369
+ // Long term it might be better to expose a way to do this in component.init
3370
+ // like component.initEventListeners() that runs between el creation and
3371
+ // adding children
3372
+ this.el_ = el;
3373
+ this.on('loadstart', this.onLoadStart);
3374
+ this.on('ended', this.onEnded);
3375
+ this.on('play', this.onPlay);
3376
+ this.on('firstplay', this.onFirstPlay);
3377
+ this.on('pause', this.onPause);
3378
+ this.on('progress', this.onProgress);
3379
+ this.on('durationchange', this.onDurationChange);
3380
+ this.on('fullscreenchange', this.onFullscreenChange);
3381
+
3380
3382
  return el;
3381
3383
  };
3382
3384
 
@@ -3555,30 +3557,44 @@ vjs.Player.prototype.stopTrackingCurrentTime = function(){
3555
3557
  * @event loadstart
3556
3558
  */
3557
3559
  vjs.Player.prototype.onLoadStart = function() {
3558
- // remove any first play listeners that weren't triggered from a previous video.
3559
- this.off('play', initFirstPlay);
3560
- this.one('play', initFirstPlay);
3560
+ // TODO: Update to use `emptied` event instead. See #1277.
3561
3561
 
3562
- if (this.error()) {
3563
- this.error(null);
3564
- }
3562
+ // reset the error state
3563
+ this.error(null);
3565
3564
 
3566
- vjs.removeClass(this.el_, 'vjs-has-started');
3565
+ // If it's already playing we want to trigger a firstplay event now.
3566
+ // The firstplay event relies on both the play and loadstart events
3567
+ // which can happen in any order for a new source
3568
+ if (!this.paused()) {
3569
+ this.trigger('firstplay');
3570
+ } else {
3571
+ // reset the hasStarted state
3572
+ this.hasStarted(false);
3573
+ this.one('play', function(){
3574
+ this.hasStarted(true);
3575
+ });
3576
+ }
3567
3577
  };
3568
3578
 
3569
- // Need to create this outside the scope of onLoadStart so it
3570
- // can be added and removed (to avoid piling first play listeners).
3571
- function initFirstPlay(e) {
3572
- var fpEvent = { type: 'firstplay', target: this.el_ };
3573
- // Using vjs.trigger so we can check if default was prevented
3574
- var keepGoing = vjs.trigger(this.el_, fpEvent);
3579
+ vjs.Player.prototype.hasStarted_ = false;
3575
3580
 
3576
- if (!keepGoing) {
3577
- e.preventDefault();
3578
- e.stopPropagation();
3579
- e.stopImmediatePropagation();
3581
+ vjs.Player.prototype.hasStarted = function(hasStarted){
3582
+ if (hasStarted !== undefined) {
3583
+ // only update if this is a new value
3584
+ if (this.hasStarted_ !== hasStarted) {
3585
+ this.hasStarted_ = hasStarted;
3586
+ if (hasStarted) {
3587
+ this.addClass('vjs-has-started');
3588
+ // trigger the firstplay event if this newly has played
3589
+ this.trigger('firstplay');
3590
+ } else {
3591
+ this.removeClass('vjs-has-started');
3592
+ }
3593
+ }
3594
+ return this;
3580
3595
  }
3581
- }
3596
+ return this.hasStarted_;
3597
+ };
3582
3598
 
3583
3599
  /**
3584
3600
  * Fired when the player has initial duration and dimension information
@@ -5907,10 +5923,7 @@ vjs.Html5 = vjs.MediaTechController.extend({
5907
5923
  // If the element source is already set, we may have missed the loadstart event, and want to trigger it.
5908
5924
  // We don't want to set the source again and interrupt playback.
5909
5925
  if (source && this.el_.currentSrc === source.src && this.el_.networkState > 0) {
5910
- // wait for the player to be ready so the player listeners are attached
5911
- player.ready(function(){
5912
- player.trigger('loadstart');
5913
- });
5926
+ player.trigger('loadstart');
5914
5927
  // Otherwise set the source if one was provided.
5915
5928
  } else if (source) {
5916
5929
  this.el_.src = source.src;
@@ -8042,5 +8055,3 @@ vjs.autoSetupTimeout(1);
8042
8055
  vjs.plugin = function(name, init){
8043
8056
  vjs.Player.prototype[name] = init;
8044
8057
  };
8045
-
8046
- videojs.options.flash.swf = "<%= asset_path( "video-js.swf") %>";
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  Video.js Default Styles (http://videojs.com)
3
- Version 4.6.1
3
+ Version 4.6.2
4
4
  Create your own skin at http://designer.videojs.com
5
5
  */
6
6
  /* SKIN
@@ -20,10 +20,8 @@ The control icons are from a custom font. Each icon corresponds to a character
20
20
  */
21
21
  @font-face {
22
22
  font-family: 'VideoJS';
23
- src: url('<%= asset_path('vjs.eot') %>');
24
- src: url('<%= asset_path('vjs.eot?#iefix') %>') format('embedded-opentype'),
25
- url('<%= asset_path('vjs.woff') %>') format('woff'),
26
- url('<%= asset_path('vjs.ttf') %>') format('truetype');
23
+ src: url(<%= asset_path('vjs.eot') %>);
24
+ src: url(<%= asset_path('vjs.eot?#iefix') %>) format('embedded-opentype'), url(<%= asset_path('vjs.woff') %>) format('woff'), url(<%= asset_path('vjs.ttf') %>) format('truetype');
27
25
  font-weight: normal;
28
26
  font-style: normal;
29
27
  }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: videojs_rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.6.1
4
+ version: 4.6.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sean Behan
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-06-10 00:00:00.000000000 Z
11
+ date: 2015-07-12 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: HTML5 VideoJS plugin
14
14
  email:
@@ -17,7 +17,7 @@ executables: []
17
17
  extensions: []
18
18
  extra_rdoc_files: []
19
19
  files:
20
- - .gitignore
20
+ - ".gitignore"
21
21
  - Gemfile
22
22
  - Rakefile
23
23
  - app/views/videojs_rails/_videojs_rails.html.erb
@@ -32,6 +32,7 @@ files:
32
32
  - vendor/assets/fonts/vjs.svg
33
33
  - vendor/assets/fonts/vjs.ttf
34
34
  - vendor/assets/fonts/vjs.woff
35
+ - vendor/assets/javascripts/video-js.swf
35
36
  - vendor/assets/javascripts/video.js.erb
36
37
  - vendor/assets/stylesheets/video-js.css.erb
37
38
  - videojs_rails.gemspec
@@ -44,19 +45,18 @@ require_paths:
44
45
  - lib
45
46
  required_ruby_version: !ruby/object:Gem::Requirement
46
47
  requirements:
47
- - - ! '>='
48
+ - - ">="
48
49
  - !ruby/object:Gem::Version
49
50
  version: '0'
50
51
  required_rubygems_version: !ruby/object:Gem::Requirement
51
52
  requirements:
52
- - - ! '>='
53
+ - - ">="
53
54
  - !ruby/object:Gem::Version
54
55
  version: '0'
55
56
  requirements: []
56
57
  rubyforge_project: videojs_rails
57
- rubygems_version: 2.2.2
58
+ rubygems_version: 2.4.5
58
59
  signing_key:
59
60
  specification_version: 4
60
61
  summary: VideoJS plugin for Rails 3.1 Asset Pipeline
61
62
  test_files: []
62
- has_rdoc: