Class: SourceMapServer
- Defined in:
- lib/volt/server/rack/source_map_server.rb
Instance Attribute Summary collapse
- #prefix ⇒ Object
-
#sprockets ⇒ Object
readonly
Returns the value of attribute sprockets.
Instance Method Summary collapse
- #call(env) ⇒ Object
-
#initialize(sprockets) ⇒ SourceMapServer
constructor
A new instance of SourceMapServer.
- #inspect ⇒ Object
Constructor Details
#initialize(sprockets) ⇒ SourceMapServer
Returns a new instance of SourceMapServer.
2 3 4 |
# File 'lib/volt/server/rack/source_map_server.rb', line 2 def initialize sprockets @sprockets = sprockets end |
Instance Attribute Details
#prefix ⇒ Object
10 11 12 |
# File 'lib/volt/server/rack/source_map_server.rb', line 10 def prefix @prefix ||= '/__opal_source_maps__' end |
#sprockets ⇒ Object (readonly)
Returns the value of attribute sprockets.
6 7 8 |
# File 'lib/volt/server/rack/source_map_server.rb', line 6 def sprockets @sprockets end |
Instance Method Details
#call(env) ⇒ Object
18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/volt/server/rack/source_map_server.rb', line 18 def call(env) path_info = env['PATH_INFO'] if path_info =~ /\.js\.map$/ path = env['PATH_INFO'].gsub(/^\/|\.js\.map$/, '') asset = sprockets[path] return [404, {}, []] if asset.nil? return [200, {"Content-Type" => "text/json"}, [$OPAL_SOURCE_MAPS[asset.pathname].to_s]] else return [200, {"Content-Type" => "text/text"}, [File.read(sprockets.resolve(path_info))]] end end |
#inspect ⇒ Object
14 15 16 |
# File 'lib/volt/server/rack/source_map_server.rb', line 14 def inspect "#<#{self.class}:#{object_id}>" end |