Class: JsDuck::Assets
- Inherits:
-
Object
- Object
- JsDuck::Assets
- Defined in:
- lib/jsduck/assets.rb
Overview
Binds together: Welcome page, Categories, Images, Guides, Videos, Examples.
Often we need to pass guides/videos/examples/… to several classes. Having all these assets together in here, means we just need to pass one value instead of 3 or more.
Instance Attribute Summary collapse
-
#categories ⇒ Object
readonly
Returns the value of attribute categories.
-
#examples ⇒ Object
readonly
Returns the value of attribute examples.
-
#guides ⇒ Object
readonly
Returns the value of attribute guides.
-
#images ⇒ Object
readonly
Returns the value of attribute images.
-
#news ⇒ Object
readonly
Returns the value of attribute news.
-
#videos ⇒ Object
readonly
Returns the value of attribute videos.
-
#welcome ⇒ Object
readonly
Returns the value of attribute welcome.
Instance Method Summary collapse
-
#initialize(relations, opts) ⇒ Assets
constructor
A new instance of Assets.
-
#write ⇒ Object
Writes out the assets that can be written out separately: guides, images.
Constructor Details
#initialize(relations, opts) ⇒ Assets
Returns a new instance of Assets.
28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/jsduck/assets.rb', line 28 def initialize(relations, opts) @relations = relations @opts = opts doc_formatter = Format::Doc.new(@relations, @opts) @images = Img::DirSet.new(@opts.images, "images") @welcome = Welcome.create(@opts.welcome, doc_formatter) @guides = Guides.create(@opts.guides, doc_formatter, @opts) @videos = Videos.create(@opts.videos) @examples = Examples.create(@opts.examples, @opts) @categories = Categories::Factory.create(@opts.categories, doc_formatter, @relations) @news = News.create(@relations, doc_formatter, @opts) end |
Instance Attribute Details
#categories ⇒ Object (readonly)
Returns the value of attribute categories.
25 26 27 |
# File 'lib/jsduck/assets.rb', line 25 def categories @categories end |
#examples ⇒ Object (readonly)
Returns the value of attribute examples.
24 25 26 |
# File 'lib/jsduck/assets.rb', line 24 def examples @examples end |
#guides ⇒ Object (readonly)
Returns the value of attribute guides.
22 23 24 |
# File 'lib/jsduck/assets.rb', line 22 def guides @guides end |
#images ⇒ Object (readonly)
Returns the value of attribute images.
20 21 22 |
# File 'lib/jsduck/assets.rb', line 20 def images @images end |
#news ⇒ Object (readonly)
Returns the value of attribute news.
26 27 28 |
# File 'lib/jsduck/assets.rb', line 26 def news @news end |
#videos ⇒ Object (readonly)
Returns the value of attribute videos.
23 24 25 |
# File 'lib/jsduck/assets.rb', line 23 def videos @videos end |
#welcome ⇒ Object (readonly)
Returns the value of attribute welcome.
21 22 23 |
# File 'lib/jsduck/assets.rb', line 21 def welcome @welcome end |
Instance Method Details
#write ⇒ Object
Writes out the assets that can be written out separately: guides, images.
Welcome page and categories are written in JsDuck::IndexHtml
47 48 49 50 |
# File 'lib/jsduck/assets.rb', line 47 def write @guides.write(@opts.output+"/guides") Img::Writer.copy(@images.all_used, @opts.output+"/images") end |