class WebpackDriver::Configuration

Constants

ROOT

Attributes

cmd_line_flags[RW]
compile_script[RW]
directory[RW]
environment[W]
file[RW]
logger[RW]
output_path[RW]
port[RW]
process[R]
tmp_directory[RW]

Public Class Methods

new(options = {}) click to toggle source
# File lib/webpack_driver/configuration.rb, line 25
def initialize(options = {})
    options.each { |k, v| send("#{k}=", v) }
    @file = Pathname.new(file) unless file.nil?
    @directory ||= Pathname.getwd
    @output_path ||= @directory.join('public', 'assets')
    @tmp_directory ||= @directory.join('tmp')
    @generated = Generated.new([], config: self)
    @generated.invoke_all
end

Public Instance Methods

environment() click to toggle source
# File lib/webpack_driver/configuration.rb, line 51
def environment
    @environment ||= { NODE_ENV: 'development' }
end
flags() click to toggle source
# File lib/webpack_driver/configuration.rb, line 55
def flags
    opts = ['--config', @generated.path.to_s]
    opts += ['--port', port] if port
    opts += cmd_line_flags if cmd_line_flags
    opts
end
gem_root() click to toggle source
# File lib/webpack_driver/configuration.rb, line 47
def gem_root
    ROOT
end
generate!() click to toggle source
# File lib/webpack_driver/configuration.rb, line 39
def generate!
    Example.new([], config: self).invoke_all
end
launch(development:) click to toggle source
# File lib/webpack_driver/configuration.rb, line 66
def launch(development:)
    raise "Already launched" unless @process.nil?
    @process = development ? DevServer.new(self) : Compile.new(self)
end
manifest_file() click to toggle source
# File lib/webpack_driver/configuration.rb, line 35
def manifest_file
    output_path.join('manifiest.json')
end
present?() click to toggle source
# File lib/webpack_driver/configuration.rb, line 43
def present?
    file.exist?
end