Sha256: 939a0ad25fc39106ecf5f52331569fb8dcb31dffacb36441619a27a7867d1450
Contents?: true
Size: 832 Bytes
Versions: 2
Compression:
Stored size: 832 Bytes
Contents
require 'sprockets/autoload' require 'sprockets/sass_compressor' require 'base64' module Sprockets class SasscCompressor < SassCompressor def initialize(options = {}) @options = { syntax: :scss, style: :compressed, source_map_embed: true, source_map_file: '.' }.merge(options).freeze end def call(input) data = Autoload::SassC::Engine.new(input[:data], @options.merge(filename: 'filename')).render match_data = data.match(/(.*)\n\/\*# sourceMappingURL=data:application\/json;base64,(.+) \*\//m) css, map = match_data[1], Base64.decode64(match_data[2]) map = SourceMapUtils.combine_source_maps( input[:metadata][:map], SourceMapUtils.decode_json_source_map(map)["mappings"] ) { data: css, map: map } end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
sprockets-4.0.0.beta2 | lib/sprockets/sassc_compressor.rb |
sprockets-4.0.0.beta1 | lib/sprockets/sassc_compressor.rb |