Method: SourceMapServer#call

Defined in:
lib/volt/server/rack/source_map_server.rb

#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