lib/pieces/server.rb in pieces-0.5.1 vs lib/pieces/server.rb in pieces-0.6.0

- old
+ new

@@ -1,9 +1,7 @@ require 'rack' -require 'listen' require 'sprockets' -require 'pieces/listener' module Pieces class Server < Rack::Server def self.start(config = {}) new(Config.new(config)).start @@ -14,32 +12,41 @@ def initialize(config) @config = config super({}) end - def start - Pieces::Listener.new(config).listen - super - end - def sprockets_env Sprockets::Environment.new(config.path).tap do |env| env.append_path 'app/assets/javascripts' env.append_path 'app/assets/stylesheets' + env.append_path 'vendor/assets/stylesheets' + env.append_path 'vendor/assets/javascripts' + env.append_path 'app/assets' env.append_path 'app/views' + env.append_path 'app/views' + + if defined? ::Sass + ::Sass.load_paths.each { |path| env.append_path(path) } + env.css_compressor = :scss + end + + if defined? ::Uglifier + env.js_compressor = :uglify + end end end def app urls = files_to_serve(config.path) build_path = "#{config.path}/build" assets_app = sprockets_env + config.env = sprockets_env + app = App.new(config) Rack::Builder.app do use Rack::Reloader - map('/assets') { run assets_app } unless defined? ::Rails - use Rack::Static, urls: [''], root: build_path, index: 'index.html' - run Proc.new { |env| [404, {}, ['Not found']] } + map('/assets') { run assets_app } + run app end end private