Class: LuxAssets::Asset
- Inherits:
-
Object
- Object
- LuxAssets::Asset
- Defined in:
- lib/lux_assets/asset.rb
Instance Method Summary collapse
- #compile ⇒ Object
- #css? ⇒ Boolean
- #files ⇒ Object
-
#initialize(ext, name) ⇒ Asset
constructor
A new instance of Asset.
- #js? ⇒ Boolean
Constructor Details
#initialize(ext, name) ⇒ Asset
Returns a new instance of Asset.
7 8 9 10 11 12 13 |
# File 'lib/lux_assets/asset.rb', line 7 def initialize ext, name raise ArgumentError.new('name not deinfed') if name.empty? @ext = ext.to_sym == :js ? :js : :css @name = name.to_s @files = LuxAssets.to_h[@ext][@name] @target = "#{@ext}/#{@name}" end |
Instance Method Details
#compile ⇒ Object
23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/lux_assets/asset.rb', line 23 def compile @data = [] LuxAssets::Cli.die "No files found for [#{@ext}/#{@name}]" unless @files[0] for file in @files if file.is_a?(Proc) @data.push file.call else @data.push LuxAssets.compile file, production: true end end send 'compile_%s' % @ext @asset_file end |
#css? ⇒ Boolean
19 20 21 |
# File 'lib/lux_assets/asset.rb', line 19 def css? @ext == :css end |
#files ⇒ Object
41 42 43 |
# File 'lib/lux_assets/asset.rb', line 41 def files @files end |
#js? ⇒ Boolean
15 16 17 |
# File 'lib/lux_assets/asset.rb', line 15 def js? @ext == :js end |