13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
# File 'lib/livescript/rails/processor.rb', line 13
def self.call(input)
data = input[:data]
options = {
bare: true,
header: true,
}.merge(::Rails.application.config.assets.livescript || {})
options.merge!({
filename: input[:source_path] || input[:filename],
map: ENABLE_SOURCE_MAP ? 'linked-src' : 'none',
})
result = input[:cache].fetch([self.cache_key, data]) do
LiveScript.compile(data, options)
end
if ENABLE_SOURCE_MAP
map = Sprockets::SourceMapUtils.decode_vlq_mappings(result['map']['mappings'], sources: result['map']['sources'], names: result['map']['names'])
{
data: result['code'],
map: Sprockets::SourceMapUtils.combine_source_maps(input[:metadata][:map], map),
}
else
result
end
end
|