Class: Opal::Connect::RakeTask
- Inherits:
-
Object
- Object
- Opal::Connect::RakeTask
- Includes:
- Rake::DSL
- Defined in:
- lib/opal/connect/rake_task.rb
Instance Method Summary collapse
-
#initialize(name = 'webpack', opts = {}) ⇒ RakeTask
constructor
A new instance of RakeTask.
- #initialize_connect ⇒ Object
Constructor Details
#initialize(name = 'webpack', opts = {}) ⇒ RakeTask
Returns a new instance of RakeTask.
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
# File 'lib/opal/connect/rake_task.rb', line 6 def initialize(name = 'webpack', opts = {}) namespace name do desc "Start webpack" task :run do envs = initialize_connect exec(envs, 'webpack --progress --watch') end desc "Build webpack" task :build do envs = initialize_connect exec(envs, 'webpack --progress') end end end |
Instance Method Details
#initialize_connect ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/opal/connect/rake_task.rb', line 22 def initialize_connect return unless defined? Opal.append_path Opal::Connect.write_entry_file(self) code = Opal::Connect::STUBS.map { |stub| "require '#{stub}'" }.join(";") stubs = Opal::Config.stubbed_files.to_a Opal::Connect.write_file(:opal, code, Opal::VERSION, stubs) ENV.to_h.merge({ BUNDLE_BIN: true, CONNECT_STUBS: "#{Opal::Connect.stubbed_files.join(',')},opal-connect,opal-jquery,opal-rspec", OPAL_LOAD_PATH: Opal.paths.join(":"), OPAL_USE_BUNDLER: true }).inject({}) { |env, (k, v)| env[k.to_s] = v.to_s; env } end |