Class: Ichiban::AssetCompiler

Inherits:
Object
  • Object
show all
Defined in:
lib/ichiban/asset_compiler.rb

Instance Method Summary collapse

Constructor Details

#initialize(file) ⇒ AssetCompiler

Returns a new instance of AssetCompiler.



3
4
5
# File 'lib/ichiban/asset_compiler.rb', line 3

def initialize(file)
  @file = file
end

Instance Method Details

#compileObject



7
8
9
10
11
12
13
14
15
16
17
18
19
# File 'lib/ichiban/asset_compiler.rb', line 7

def compile
  dir = File.dirname @file.dest
  unless File.directory? dir
    FileUtils.mkdir_p dir
  end
  case @file
  when Ichiban::SCSSFile
    Sass.compile_file @file.abs, @file.dest, load_paths: [File.join(Ichiban.project_root, 'assets/css')]
  else
    FileUtils.cp @file.abs, @file.dest
  end
  Ichiban.logger.compilation(@file.abs, @file.dest)
end