Sha256: d596a752d20b92c3b5c63cd009194ad56a41bb51a205de6513e2231914415e2e
Contents?: true
Size: 1.89 KB
Versions: 2
Compression:
Stored size: 1.89 KB
Contents
require 'logger' require 'pathname' require_relative 'configuration/generated' require_relative 'configuration/example' module WebpackDriver class Configuration attr_accessor :port attr_accessor :logger attr_accessor :compile_script attr_accessor :tmp_directory attr_accessor :cmd_line_flags attr_accessor :output_path attr_writer :environment attr_accessor :file attr_accessor :directory attr_accessor :logger attr_reader :process ROOT = Pathname.new(__FILE__).dirname.join('..', '..') 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') if file.exist? @generated = Generated.new([], config: self) @generated.invoke_all end end def manifest_file output_path.join('manifiest.json') end def generate! Example.new([], config: self).invoke_all end def present? file.exist? end def gem_root ROOT end def environment @environment ||= { NODE_ENV: 'development' } end def flags opts = ['--config', @generated.path.to_s] opts += ['--port', port] if port opts += cmd_line_flags if cmd_line_flags opts end def logger @logger ||= Logger.new(STDOUT) end def launch(development:) raise "Already launched" unless @process.nil? logger.info "Startint" @process = development ? DevServer.new(self) : Compile.new(self) end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
webpack_driver-0.3.1 | lib/webpack_driver/configuration.rb |
webpack_driver-0.3.0 | lib/webpack_driver/configuration.rb |