Method: QEDProject::Project#collect_libraries

Defined in:
lib/qedproject/project.rb

#collect_librariesObject



52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
# File 'lib/qedproject/project.rb', line 52

def collect_libraries
  
  self.css_assets = []
  self.js_assets = []
  self.sorted_libs = []
  
  self.libs.each do |requested_library|
    raise QEDProject::BadLibraryError, "#{requested_library} is not a valid library" unless QEDProject::Libraries::Base.libs.include? requested_library
    library = QEDProject::Libraries::Base.libs[requested_library]   
    
    if library.respond_to? :dependencies
      dependencies = library.dependencies
      dependencies.each do |d|
        unless self.sorted_libs.include?(d)
          self.sorted_libs << d
        end
      end
    end
    
    unless self.sorted_libs.include?(requested_library)
      self.sorted_libs << requested_library
    end
  end
  
  self.sorted_libs.each do |lib|
    library = QEDProject::Libraries::Base.libs[lib]   
    self.js_assets += library.js_files if library.respond_to?(:js_files)
    self.css_assets += library.css_files if library.respond_to?(:css_files)
  end
  
end