Module: AssetPackager

Defined in:
lib/asset_packager/view_helper.rb,
lib/asset_packager/asset_packager.rb

Defined Under Namespace

Modules: ViewHelper

Class Method Summary collapse

Class Method Details

.add(yaml_file_path, asset_path) ⇒ Object



13
14
15
16
17
# File 'lib/asset_packager/asset_packager.rb', line 13

def add yaml_file_path, asset_path
  definition = YAML.load File.read(yaml_file_path)
  definition.must_be.a Hash
  self.definitions[asset_path] = definition
end

.build_allObject



19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/asset_packager/asset_packager.rb', line 19

def build_all
  definitions.each do |path, package_types|
    package_types.each do |type, package|
      package.each do |name, files|
        build = self.send "build_#{type}", path, name, files
        dir = "#{public_root}/#{type}"
        FileUtils.mkdir_p dir unless File.exist? dir
        fname = public_root + filename_for_builded_package(type, name)
        File.open(fname, "w"){|f| f.write(build)}
      end
    end
  end
end

.definitionsObject



49
50
51
# File 'lib/asset_packager/asset_packager.rb', line 49

def definitions
  @definitions ||= {}
end

.delete_allObject



33
34
35
36
37
38
39
40
41
42
# File 'lib/asset_packager/asset_packager.rb', line 33

def delete_all
  definitions.each do |path, package_types|
    package_types.each do |type, package|
      package.each do |name, files|
        fname = public_root + filename_for_builded_package(type, name)
        File.delete fname if File.exist? fname
      end
    end
  end
end

.filename_for_builded_package(type, package) ⇒ Object



44
45
46
47
# File 'lib/asset_packager/asset_packager.rb', line 44

def filename_for_builded_package type, package
  type = type.to_s
  "/#{type}/#{package}_packaged.#{AssetPackager.resources_extensions[type]}"
end

.merge_environmentsObject



53
54
55
# File 'lib/asset_packager/asset_packager.rb', line 53

def merge_environments
  @merge_environments ||= ["production"]
end

.merged_javascripts(*package_names) ⇒ Object



5
6
7
# File 'lib/asset_packager/asset_packager.rb', line 5

def merged_javascripts *package_names
  merged_packages 'javascripts', package_names
end

.merged_stylesheets(*package_names) ⇒ Object



9
10
11
# File 'lib/asset_packager/asset_packager.rb', line 9

def merged_stylesheets *package_names
  merged_packages 'stylesheets', package_names
end