class Webpacker::DevServer

def defaults

def defaults
  config.send(:defaults)[:dev_server] || {}
end

def env_prefix

def env_prefix
  config.dev_server.fetch(:env_prefix, DEFAULT_ENV_PREFIX)
end

def fetch(key)

def fetch(key)
  ENV["#{env_prefix}_#{key.upcase}"] || config.dev_server.fetch(key, defaults[key])
end

def host

def host
  fetch(:host)
end

def host_with_port

def host_with_port
  "#{host}:#{port}"
end

def https?

def https?
  case fetch(:https)
  when true, "true"
    true
  else
    false
  end
end

def initialize(config)

def initialize(config)
  @config = config
end

def port

def port
  fetch(:port)
end

def pretty?

def pretty?
  fetch(:pretty)
end

def protocol

def protocol
  https? ? "https" : "http"
end

def running?

def running?
  if config.dev_server.present?
    Socket.tcp(host, port, connect_timeout: connect_timeout).close
    true
  else
    false
  end
rescue
  false
end