提交 896950a6 编写于 作者: J Javan Makhmali 提交者: Jon Moss

Add task to create precompiled action_cable.js and reorganize to accommodate

上级 96355e87
require 'rake/testtask'
require 'pathname'
require 'sprockets'
require 'coffee-script'
require 'action_cable'
dir = File.dirname(__FILE__)
......@@ -11,3 +15,28 @@ Rake::TestTask.new do |t|
t.verbose = true
t.ruby_opts = ["--dev"] if defined?(JRUBY_VERSION)
end
namespace :assets do
desc "Compile dist/action_cable.js"
task :compile do
asset_mapping = { "source.js" => "action_cable.js" }
root_path = Pathname.new(dir)
load_path = root_path.join("lib/assets/javascripts/action_cable")
compile_path = root_path.join("tmp/sprockets")
compile_path.rmtree if compile_path.exist?
compile_path.mkpath
environment = Sprockets::Environment.new
environment.append_path(load_path)
manifest = Sprockets::Manifest.new(environment.index, compile_path)
manifest.compile(asset_mapping.keys)
asset_mapping.each do |logical_path, dist_path|
fingerprint_path = manifest.assets[logical_path]
FileUtils.cp(compile_path.join(fingerprint_path), load_path.join("dist/#{dist_path}"))
end
end
end
......@@ -24,9 +24,12 @@
s.add_dependency 'nio4r', '~> 1.2'
s.add_dependency 'websocket-driver', '~> 0.6.1'
s.add_development_dependency 'em-hiredis', '~> 0.3.0'
s.add_development_dependency 'coffee-script', '~> 2.4.1'
s.add_development_dependency 'coffee-script-source', '~> 1.10.0'
s.add_development_dependency 'em-hiredis', '~> 0.3.0'
s.add_development_dependency 'mocha'
s.add_development_dependency 'pg'
s.add_development_dependency 'puma'
s.add_development_dependency 'redis', '~> 3.0'
s.add_development_dependency 'redis', '~> 3.0'
s.add_development_dependency 'sprockets', '~> 3.5.2'
end
#= require action_cable/connection
#= require action_cable/connection_monitor
#= require action_cable/subscriptions
#= require action_cable/subscription
#= require ./connection
#= require ./connection_monitor
#= require ./subscriptions
#= require ./subscription
# The ActionCable.Consumer establishes the connection to a server-side Ruby Connection object. Once established,
# the ActionCable.ConnectionMonitor will ensure that its properly maintained through heartbeats and checking for stale updates.
......
#= require_self
#= require action_cable/consumer
#= require ./consumer
@ActionCable =
INTERNAL: <%= ActionCable::INTERNAL.to_json %>
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册