Class: Condenser::SassTransformer::Importer
- Inherits:
-
SassC::Importer
- Object
- SassC::Importer
- Condenser::SassTransformer::Importer
- Defined in:
- lib/condenser/transformers/sass_transformer/importer.rb
Instance Method Summary collapse
-
#extensions ⇒ Object
Allow .css files to be @imported.
- #imports(name, base) ⇒ Object
Instance Method Details
#extensions ⇒ Object
Allow .css files to be @imported
33 34 35 |
# File 'lib/condenser/transformers/sass_transformer/importer.rb', line 33 def extensions { '.sass' => :sass, '.scss' => :scss, '.css' => :scss } end |
#imports(name, base) ⇒ Object
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/condenser/transformers/sass_transformer/importer.rb', line 4 def imports(name, base) name = (name, base) env = [:condenser][:environment] accept = extensions.keys.map { |x| [:condenser][:environment].extensions[x] } [:asset][:process_dependencies] << [name, accept.map{ |i| [i] }] imports = [] env.resolve(name, accept: accept).sort_by(&:filename).each do |asset| next if asset.filename == [:filename] imports << Import.new(asset.filename, source: asset.source, source_map_path: nil) end if imports.empty? && env.npm_path package = File.join(env.npm_path, name, 'package.json') if File.exists?(package) package = JSON.parse(File.read(package)) if package['style'] imports << Import.new(name, source: File.read(File.join(env.npm_path, name, package['style'])), source_map_path: nil) end end end raise Condenser::FileNotFound, "couldn't find file '#{name}'" if imports.empty? imports end |