class Inesita::Server
Attributes
assets_app[R]
Public Class Methods
new(opts = {})
click to toggle source
# File lib/inesita/server.rb, line 13 def initialize(opts = {}) setup_dirs(opts) setup_env(opts) @setup_sprockets = opts.delete(:setup_sprockets) || './.sprockets.rb' @assets_app = create_assets_app @app = create_app Inesita.assets_code = assets_code end
Public Instance Methods
assets_code()
click to toggle source
# File lib/inesita/server.rb, line 33 def assets_code assets_prefix = @dist ? '' : Config::ASSETS_PREFIX %( <link rel="stylesheet" type="text/css" href="#{assets_prefix}/stylesheet.css"> #{Opal::Sprockets.javascript_include_tag('application', sprockets: @assets_app, prefix: assets_prefix, debug: !@dist)} ) end
call(env)
click to toggle source
# File lib/inesita/server.rb, line 87 def call(env) @app.call(env) end
create_app()
click to toggle source
# File lib/inesita/server.rb, line 41 def create_app assets_app = @assets_app static_dir = @static_dir Rack::Builder.new do use Rack::Static, :urls => [static_dir] use Rack::Rewrite do rewrite(/^(?!#{Config::ASSETS_PREFIX}).*/, Config::ASSETS_PREFIX) end map Config::ASSETS_PREFIX do run assets_app end end end
create_assets_app()
click to toggle source
# File lib/inesita/server.rb, line 58 def create_assets_app Opal::Sprockets::Server.new do |s| s.append_path @app_dir if @dist s.append_path @app_dist_dir else s.append_path @app_dev_dir end Opal.paths.each do |p| s.append_path p end RailsAssets.load_paths.each do |p| s.append_path p end if defined?(RailsAssets) s.sprockets.context_class.class_eval do include SprocketsContext end setup_sprockets(@setup_sprockets, s.sprockets) end.sprockets end
setup_dirs(opts)
click to toggle source
# File lib/inesita/server.rb, line 26 def setup_dirs(opts) @static_dir = opts[:static_dir] || Config::STATIC_DIR @app_dir = opts[:app_dir] || Config::APP_DIR @app_dist_dir = opts[:app_dist_dir] || Config::APP_DIST_DIR @app_dev_dir = opts[:app_dev_dir] || Config::APP_DEV_DIR end
setup_env(opts)
click to toggle source
# File lib/inesita/server.rb, line 22 def setup_env(opts) @dist = opts[:dist] || false end
setup_sprockets(dir, sprockets)
click to toggle source
# File lib/inesita/server.rb, line 83 def setup_sprockets(dir, sprockets) self.instance_eval(File.read(dir)) if File.exists?(dir) end